titulos - titulo en latex
¿Cómo forzar el ajuste de línea en el paquete de listados? (4)
Tengo un problema con el paquete de listados en latex. Necesito incorporar un código fuente del siguiente documento XML http://www.sparxsystems.com.au/downloads/profiles/EP_Extensions.xml en el apéndice de mi tesis de maestría. El problema es que, independientemente de las opciones que pase al paquete, no puedo encajar en la página. Las líneas en el listado son demasiado largas, y el paquete de listados no las envuelve, lo que parece extraño ... ¿Qué combinación de opciones hará el truco?
En este momento utilizo la siguiente instrucción lstset:
/lstset{
breakindent=0em,
language=XML,
basicstyle=/footnotesize,
numbers=left,
numberstyle=/footnotesize,
stepnumber=2,
numbersep=5pt,
backgroundcolor=/color{white},
showspaces=false,
showstringspaces=false,
showtabs=false,
frame=single,
tabsize=2,
captionpos=b,
breaklines=true,
breakatwhitespace=true,
breakautoindent=true,
escapeinside={/%*}{*)},
linewidth=/textwidth
}
Que, sin otras opciones establecidas, y combinado con el siguiente comando:
/lstinputlisting{EP_Extensions.xml}
Muestra la fuente del archivo dado a la siguiente salida:
Acabo de tener este problema...
breaklines
funcionaron para mí, aunque es necesario establecerlo en verdadero; el valor predeterminado es falso:
/lstinputlisting[style=Python,
caption=My Class,
label={mine.py},
breaklines=true,
]{../python/mine.py}
es más o menos lo que usé
No es una gran respuesta, pero una idea es envolver el código fuente antes de incluirlo. Si estás en Linux, puedes usar el comando fold para esto. Claramente, esto funciona mejor si el texto está en una fuente de ancho fijo, lo que recomendaría en cualquier caso para las listas de códigos.
Tuve este problema y esta página ocupa un lugar destacado en google, así que aquí estaba la solución para mí:
Tuve la siguiente inclusión: /usepackage[none]{hyphenat}
que causa el problema descrito anteriormente. Lo estaba usando para solucionar el problema de que el látex rompiera líneas en medio de una palabra, lo que parece muy estúpido en algunas circunstancias.
Después de mucho buscar una alternativa a esta solución, no encontré nada adecuado y me conformé con líneas correctamente rotas, pero con guiones mal colocados.
Un seguimiento a la respuesta de Aaron . Estaba usando basicstyle=/ttfamily
para mis anuncios. Por lo tanto, pude permitir el rompimiento de líneas cambiando
/usepackage[none]{hyphenat}
a
/usepackage[htt]{hyphenat}
% ^^^
Los documentos de hyphenat
describen que la opción htt
"habilita la separación de ... tipografía de texto mediante /texttt
o /ttfamily
". En mi caso de uso, no vi ninguna separación de palabras en mis listas, pero sí la rompí.