GNU Enscript es un pretty-printer de ascii a postscript. Enscript permite formatear correctamente un fichero de texto antes de imprimirlo, pero lo más interesante es que también tiene resaltado de sintaxis. Como ejemplo, esta es la línea que uso para convertir C/C++ a un postscript.

enscript -Ecpp -T4 --color -fCourier8 -C *.cpp *.h -o output.ps

  • -Ecpp, indica el formato del fichero (cpp = C++)
  • -T4, hace que los tabs se representen como 4 espacios
  • –color, colorea la sintaxis (si no se pone resalta usando negrita únicamente)
  • -fCourier8, indica la fuente a utilizar
  • -C, escribe los número de línea
  • -o output.ps, para indicar el nombre del fichero a generar
    • Ni que decir que enscript tiene soporte para resaltado de varios lenguajes y otras tantas opciones más (ver man). 😀