Agregar código de programación en LaTex / LyX

Agregar código de programación en LaTex / LyX

Tal vez estoy siendo tonto, pero no puedo encontrar ninguna manera sensata de simplemente pegar mi código (python) en látex sin perder toda la información de sangría (algo importante para Python).

¿Alguien tiene alguna idea brillante? No me preocupa el resaltado de sintaxis; ¡Todo lo que quiero es recuperar mi tecla de tabulación!

Respuesta1

Mi ambiente favorito para esto.acuñado. Lo uso para ingresar archivos fuente completos como:

\inputminted[linenos,fontsize=\scriptsize]{python}{script.py}

También puedes usarlo sin ingresar un archivo y, lo que es más importante, definir cuánta sangríaengulleuna vez pegado:

\newminted{python}{gobble=4,linenos,fontsize=\scriptsize}
\begin{pythoncode}
    print('I am a Python script')
\end{pythoncode}

De esa manera, su LaTeX seguirá teniendo una buena sangría, pero su código textual no. Esto también proporciona resaltado de sintaxis, algo que sé que mencionaste que no te interesaba. Simplemente no definas el idioma.

Respuesta2

Querrá utilizar el entorno textual:http://web.mit.edu/vogt/www/latex/ltx-79.html

Si el problema es inmediatamente al pegarlo... ¿estás usando un IDE para crear el documento? Intente simplemente abrir el archivo en un editor de texto sin formato como gedit o notepad.

Respuesta3

Yo elegiría minted, como sugirió Fideli, pero es bueno estar al tanto deel listingspaquete, que es una solución de látex puro al problema.

mintedse deriva depigmentos, un resaltador de código fuente escrito en Python. mintedViene con un puente de látex, basado en \write18, yel texmentspaqueteproporciona uno para pigmentos. Que yo sepa , no hay ninguna desventaja en mintedcomparación con Pygments: tal vez los dos se fusionen en algún momento.

Respuesta4

Para LyX, consulteeste(importa un documento secundario utilizando el formato "listado").

información relacionada