¿Cuál es la forma correcta de controlar la separación de números del texto/código utilizando el paquete de listados?

¿Cuál es la forma correcta de controlar la separación de números del texto/código utilizando el paquete de listados?

Estoy intentando controlar el espacio entre los números de línea y mi código con el paquete de listados. A continuación se muestra el código que estoy usando:

\begin{figure*} [!ht]
\centering
    \lstset{showstringspaces=false, 
        tabsize=1, 
        breaklines=true,
        basicstyle=\footnotesize,
        numbers=left,
        showspaces=false,
        extendedchars=false,
        numberstyle=\scriptsize,
        numbersep=0pt}
    \begin{lstlisting}
    INPORT::[name] => [rec.comp.] @ [rec. port]
    OUTPORT::[name] <= [orig.comp.] @ [out port]
    [PRIMITIVE]::[name]<=[rec.port2]<-[orig.comp1.]@[out port1] [rec.port2]<-[orig.comp2.]@[out port2]...
    LUT[n] [logic_func]::[name]<=[rec.port2]<-[orig.comp1.]@[out port1] [rec.port2]<-[orig.comp2.]@[out port2]...
    \end{lstlisting}
    \caption{single line component netlist of the tiny circuit example.}
    \label{fig:netlistSyntax}
\end{figure*}

El resultado que obtengo es el siguiente:

ingrese la descripción de la imagen aquí

No estoy satisfecho con el espacio entre el código y los números y estoy intentando cambiarlo cambiando elnumerosepEl parámetro, como dice en la documentación del paquete, "es la distancia entre el número y el listado". Incluso cuando uso '0pt' no obtengo el código ni los números cercanos.

¿Que me estoy perdiendo aqui?

Respuesta1

lstlistingEs un ambiente tipo textual, y fundamentalmente se preservan los espacios. Tu código comienza con cuatro espacios y estás viendo esos cuatro espacios.

Si configura showspaces=truesu \lstset(actualmente lo tiene configurado en false), esto se vuelve obvio.

Apéndice

Para quitar los espacios puedes agregar

gobble=4

hacia \lstset.

También hay un paquete llamado lstautogobbleque proporciona una opción llamada autogobble. Con esta opción, los espacios en blanco iniciales se eliminan automáticamente.

información relacionada