Você pode usar o vim.
vim -c hardcopy -c quit /path/to/file
Isto imprimirá o arquivo e sairá imediatamente. Por padrão, o vim imprime com realce de sintaxe.
Se você precisar imprimir a partir do stdout de algum comando, você pode fazer isso:
cat some_file.c | vim -c hardcopy -c 'quit!' -
Se você quiser salvar o .ps para mais tarde, você pode fazer isso adicionando redirecionamento ao comando de cópia impressa, da seguinte forma:
vim -c 'hardcopy > /path/to/saved.ps' -c 'quit' /path/to/file
O Vim permite que você defina muitas opções relacionadas à impressão, portanto, talvez você queira a documentação se quero ajustá-lo. Claro, existem muitas opções de realce de sintaxe também.