Python highlighting en LaTeX

4 comments
Bueno hace dias estaba con este problema de poder  presentar de manera adecuada, el codigo para la  presentación final de la tesis, y sacar las copias que sean necesarias para la entrega, y listo asi que me la pase investigando hasta que di con Pythonhighlight  el cual me permite colorear por asi decirlo, código en Python, es verdad que existe el paquete  listings que si logra trabajar con lstlisting nos permite trabajar con varios códigos los cuales son:

ABAP (R/2 4.3, R/2 5.0, R/3 3.1, R/3 4.6C, R/3 6.10), ACSL Ada (83, 95), Algol (60, 68), Ant, Assembler (x86masm), Awk (gnu, POSIX), bash, Basic (Visual), C (ANSI, Handel, Objective, Sharp), C++ (ANSI, GNU, ISO, Visual), Caml (light, Objective), Clean, Cobol (1974, 1985, ibm), Comal 80, csh, Delphi, Eiffel, Elan, erlang, Euphoria, Fortran (77, 90, 95), GCL, Gnuplot, Haskell, HTML, IDL (empty, CORBA), inform, Java (empty, AspectJ), JVMIS, ksh, Lisp (empty, Auto), Logo, make (empty, gnu), Mathematica (1.0, 3.0), Matlab, Mercury, MetaPost, Miranda, Mizar, ML, Modula-2, MuPAD, NASTRAN, Oberon-2, OCL (decorative, OMG), Octave, Oz, Pascal (Borland6, Standard, XSC), Perl,PHP, PL/I,Plasm, POV,Prolog, Promela,Python, R,Reduce, Rexx,RSL, Ruby, S (empty, PLUS), SAS, Scilab, sh, SHELXL, Simula (67, CII, DEC, IBM), SQL, tcl (empty, tk), TeX (AlLaTeX, common, LaTeX, plain, primitive), VBScript, Verilog, VHDL (empty, AMS), VRML (97), XML, XSLT.
Pero bueno no necesito todo eso ¬¬ ademas, no entiendo porque pero no puedo hacer dar el paquete bien jejeje, lo que hacemos para poder usar PythonHighlight es descargarlo para usar solo código Python, luego abrimos una terminal y ejecutamos lo siguiente:


snifer@snifer:~$ sudo mkdir /usr/share/texmf/tex/latex/pythonhighlight


Luego realizamos la copia del archivo Descargado en la carpeta creada:


snifer@snifer:~/Descargas$ sudo cp pythonhighlight.sty /usr/share/texmf/tex/latex/pythonhighlight
Ahora lo que toca es re-configurar LaTeX para que tenga constancia del nuevo paquete para eso usamos el siguiente comando:

snifer@snifer:$ sudo texhash 
Y listo ya lo tenemos instalado, para usar hacemos lo siguiente incluir el paquete para que se pueda hacer uso de el.


Para hacer uso de el  ponemos entre \begin{python y \end{python el código que queremos resaltar.



Luego de compilar nos da el siguiente resultado.


Mas elegante verdad, por si quieren ver el código de LaTeX aqui lo pueden descargar.

Bueno luego de esto note algo importante que en el desarrollo del documento hago uso de algunas parte de codigo que toca especificar como por ejemplo:


Los métodos __init__ pueden tomar cualquier cantidad de argumentos, e igual que las funciones, éstos pueden definirse con valores por defecto, haciéndoles opcionales para quien invoca. 
Lo que me toca resaltar es __init__ usamos de la siguiente manera anteponiendo al codigo de Python que deseamos resaltar \pyth{} teniendo como resultado:

Uso de pyth{}
Bueno eso es todo espero les agrade, esta entrada y a seguir trabajando con LaTeX.

4 comentarios

  1. You have the package minted, which made the same thing ;-)

    (don't speak spean, sorry)

    ResponderEliminar
  2. Unfortunately not :) I have not installed any of the extra packages.

    (Do not worry about the language) 3:

    ResponderEliminar
  3. Gracias por compartir esto!
    seguro que también lo ocupo en mi tesis :)

    Saludos

    ResponderEliminar
  4. De nada Rodolfo un gusto tener en el blog :P

    ResponderEliminar