Cómo usar pythontex con LyX
Normalmente uso LyX para escribir mis documentos/apuntes. Hace unos años descubrí un paquete de LaTeX muy interesante ya que permite introducir código Python en mis documentos elaborados con LyX/LaTeX, se trata de pythontex.
En este primer artículo sobre el tema solo voy a explicar (entendiendo que se está trabajando con Linux/Ubuntu y que se tienen los paquetes necesarios instalados, en concreto tanto LyX como los paquetes texlive-extra-utils, texlive-lang-spanish y python3-pygments) la forma de poder usarlo directamente desde LyX sin tener que hacer el proceso que se explica en la documentación del paquete para compilar un documento desde la línea de comandos.
Para ello vamos a usar pythontex-wrapper, que se puede descargar de
https://github.com/mghansen256/pythontex-wrapper
El fichero que necesitamos es
pythontex-wrapper.sh
Una vez descargado lo ponemos en
~/bin
y le damos permisos de ejecución (se puede hacer como se comenta abajo o en modo gráfico):
cd bin chmod +x pythontex-wrapper.sh
En mi caso he tenido que modificarlo (para que no me dé la lata con otros paquetes que uso) en las líneas:
#cambio latexcommand="pdflatex --shell-escape" #latexcommand="pdflatex" #pythontexcommand="pythontex3" pythontexcommand="pythontex --interpreter python:python3"
En LyX, debemos cambiar el convertidor usado para compilar usando pdflatex. Lo podemos hacer en modo gráfico desde el menú:
Herramientas Preferencias Gestión de Archivos Convertidores
el texto a escribir en el campo convertidor es (adecuando la entrada a tu $HOME de usuario):
/home/tu_nombre/bin/pythontex-wrapper.sh $$i
pulsamos sobre el botón Modificar y finalmente sobre el botón Aceptar.
Ya tenemos nuestro LyX preparado, hagamos una primera prueba de que todo funciona bien, creamos un archivo nuevo e introducimos en el preámbulo (Documento Configuración Preámbulo LaTeX
\usepackage{pythontex} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc}
optamos también, en ese mismo apartado de configuración, por seleccionar como Idioma
Esa configuración la podemos establecer como predeterminada.
Añadamos (con Control+L) o desde el botón correspondiente un recuadro de LaTeX con el texto:
\begin{pycode} print("Hola Mundo") \end{pycode}
y compilemos nuestro documento. Debemos un obtener un pdf que de salida nos muestre el texto:
Hola mundo
En la próxima entrega veremos qué su potencial es enorme con algún ejercicio de matemáticas más interesante.