Você pode usar o pacote, e2ansi , que fornece suporte para destaque de sintaxe para pagers como moree less.
O pacote usa a mãe de todos os editores de texto, o Emacs , para executar o realce da sintaxe. Como um bônus adicional, todas as outras conversões normalmente executadas pelo Emacs - como descompactar arquivos - também são executadas.
Exemplo
A seguir, o resultado da exibição de um arquivo usando lesse
e2ansi:

Configuração
O pacote fornece uma ferramenta de linha de comando e2ansi-catque inicia o Emacs no modo em lote, abre arquivos, destaca a sintaxe e renderiza o resultado usando sequências ANSI.
Você pode integrar isso lessconfigurando as seguintes variáveis como, por exemplo (a localização do seu arquivo init pode variar):
export "LESSOPEN=||-/usr/local/emacs --batch -Q -l ~/.emacs -l bin/e2ansi-cat %s"
export "LESS=-r"
alias "more=less -X -E"
Na configuração acima, lessrestaura o conteúdo original da janela do terminal e moresimplesmente gera novo conteúdo após o prompt.
Nota: Se você usar uma versão antiga less, ela poderá não suportar
||a -sintaxe ou , nesse caso, poderá ser necessário usá-la simplesmente
LESSOPEN=|/usr/local/emacs ....
Usando lessem tubos
O caractere "-" LESSOPENindica que o filtro de entrada também deve ser usado ao inserir texto no canal less. Nesse caso, o Emacs pode confiar apenas no próprio texto (e não no nome de um arquivo). Felizmente, o Emacs fornece um sistema para isso. Além disso, o arquivo de arquivo fornecido
e2ansi-magic.elconfigura tipos de arquivo adicionais. Por exemplo:

Por que usar o Emacs?
- O Emacs tem suporte para praticamente todas as linguagens de programação e formatos de texto estruturado. Na maioria dos casos, o suporte de destaque de sintaxe é excelente.
- Você pode adicionar facilmente suporte para mais idiomas e formatos ou modificar pacotes existentes para atender às suas necessidades.
- O Emacs suporta temas de cores. Ao usar
e2ansi, as cores do tema são preservadas ao exibir um arquivo less. Você pode escolher um tema de cores adequado de várias fontes ou criar seu próprio.
- Se você usar o Emacs como seu editor de escolha, obterá o mesmo destaque no editor ao exibir um arquivo usando
less(menos limitações no formato de sequência ANSI e na janela do terminal).
lessaproveitará os recursos do Emacs que executam a conversão automática, por exemplo, descompactando arquivos. De fato, você pode ensinar o Emacs a realizar qualquer tipo de conversão, como converter automaticamente um arquivo binário em formato legível por humanos, usando uma ferramenta externa.
- Você pode visualizar arquivos localizados em outras máquinas usando a sintaxe do Emacs para acesso remoto como
/USER@HOST:FILENAME.
Links Úteis
e2ansié distribuído no Melpa e pode ser instalado usando o sistema de pacotes Emacs padrão
e2ansiestá hospedado no GitHub
- A
e2ansipágina no Emacs Wiki
- A casa de
less.
Notas do sistema operacional
No MS Windows, o console não suporta nativamente sequências ANSI. Felizmente, o lessaplicativo é capaz de renderizá-los. Não conheço nenhuma distribuição binária contemporânea do lessMS Windows e os arquivos de compilação fornecidos são difíceis de usar. Felizmente, é fácil criar lessusando o CMake , consulte este texto para obter detalhes.
OS X distribui uma versão antiga do less. Felizmente, é fácil criar uma versão moderna diretamente da fonte.