Necesito resaltar el código fuente en LaTeX. El paquetelistings
parece ser la mejor opción para la mayoría de los casos de uso y para mí lo era, hasta ahora.
Sin embargo, ahora necesito más flexibilidad. En general, lo que estoy buscando es un verdadero lexer. En particular, necesito (para una definición de idioma propia) definir (¡y resaltar!) Estilos de números propios. listings
no permite resaltar números en el código. Sin embargo, necesito producir algo como esto:
listings
tampoco puede hacer frente a delimitadores arbitrarios para cadenas. Considere el siguiente código válido de Ruby:
s = %q!this is a string.!
Aquí, !
puede ser reemplazado por casi cualquier delimitador.
(Eso listings
no puede manejar Unicode también es bastante molesto, pero ese es otro problema).
Idealmente, estoy buscando una extensión listings
que me permita proporcionar reglas de lexing más complejas. Pero salvo eso, también estoy buscando alternativas viables.
Otros hilos han sugerido usar Pygments que pueden producir resultados de LaTeX. Incluso hay un paquete texments
para facilitar la transición.
Sin embargo, esto carece de características. En particular, estoy interesado en la listings
numeración de líneas de estilo, referencias de línea de código fuente y la posibilidad de incrustar LaTeX en el código fuente (opciones texcl
y mathescape
en listings
).
Como ejemplo, aquí hay un tipo de código fuente con el listings
que se muestran algunas de las cosas que un reemplazo también debe proporcionar:
["Adición lateral" modificada de Bit Twiddling Hacks]