¿Alguien conoce una forma sencilla de producir el PostScript correspondiente a una versión resaltada de sintaxis de un archivo de origen que se puede canalizar directamente a una impresora PostScript?
Como probablemente sugiere la redacción de la pregunta anterior, estoy buscando algo que pueda ejecutar desde la línea de comandos. Estoy pensando en una interacción como:
% syntax_highlight <SOURCE_FILE> | lp
…con interruptores de línea de comandos según sea necesario, etc.
Lo mejor que he encontrado hasta ahora es una utilidad de Unix llamada highlight
, pero tiene problemas. Lo más grave es que no tiene una opción para generar PostScript directamente. (Desde highlight
admite la salida LaTeX, traté de unir un script que automatizaría el proceso de generación del archivo PostScript a través de *.tex => *.dvi => *.ps, pero la apariencia visual del resultado final es horrible, mucho peor. de lo que es para el archivo HTML que highlight
genera para la misma entrada de código fuente).
¡Gracias!
Respuesta aceptada:
Puedes usar vim.
vim -c hardcopy -c quit /path/to/file
Esto imprimirá el archivo y se cerrará inmediatamente. De forma predeterminada, vim imprime con resaltado de sintaxis.
Si necesita imprimir desde la salida estándar de algún comando, puede hacer esto:
cat some_file.c | vim -c hardcopy -c 'quit!' -
Si desea guardar el .ps para más tarde, puede hacerlo agregando la redirección al comando de copia impresa, así:
vim -c 'hardcopy > /path/to/saved.ps' -c 'quit' /path/to/file
Vim le permite configurar muchas opciones relacionadas con la impresión, por lo que es posible que desee ver la documentación si desea modificarla. Por supuesto, también hay muchas opciones de resaltado de sintaxis.