Tenho o prazer de anunciar um novo pacote, e2ansi , que fornece
suporte de destaque de sintaxe para pagers como more e less .
O pacote usa a mãe de todos os editores de texto, Emacs , para
Realize o destaque real da sintaxe. Como um bônus adicional, todos os outros
conversões normalmente executadas pelo Emacs - como arquivos descompactadores -
também é executado.
Exemplo
O seguinte é o resultado da visualização de um arquivo usando less e
e2ansi :

Configuração
Opacoteforneceumaferramentadelinhadecomandoe2ansi-catqueiniciaEmacsnomodobatch,abrearquivos,sintaxedestacá-loseprocessaoresultadousandosequênciasANSI.
Vocêpodeintegrarissoemlessdefinindoasseguintesvariáveispara,porexemplo(alocalizaçãodoseuarquivoinitpodevariar):
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, less restaura o terminal original
conteúdo da janela, enquanto que more simplesmente gera novo conteúdo após o
prompt.
Nota: Se você usar uma versão antiga de less , talvez não ofereça suporte ao
|| ou a sintaxe - , caso em que você pode precisar usar
LESSOPEN=|/usr/local/emacs ... .
Usando less em tubos
O caractere "-" em LESSOPEN indica que o filtro de entrada deve
também pode ser usado ao enviar o texto para less . Neste caso, o Emacs pode
depende apenas do próprio texto (e não do nome do arquivo). Felizmente, o Emacs
fornece um sistema para isso. Além disso, o arquivo de arquivo fornecido
e2ansi-magic.el configura tipos de arquivos adicionais. Por exemplo:

PorqueusaroEmacs?
- OEmacssuportapraticamentetodasaslinguagensdeprogramaçãoeformatosdetextoestruturados.Namaioriadoscasos,odestaquedasintaxeosuporteéexcelente.
- Vocêpodeadicionarsuporteamaisidiomaseformatosoumodificarpacotesexistentesparaatenderàssuasnecessidades.
- OEmacssuportatemasdecores.Aousar
e2ansi,ascoresnoOtemaépreservadoaovisualizarumarquivoemless.Vocêpodeescolherumtemadecoresadequadodeváriasfontesoucrieoseupróprio. - SevocêusaoEmacscomoseueditordeescolha,teráomesmodestacandonoeditorcomovocêobtémaovisualizarumarquivousando
less(menoslimitaçõesnoformatodesequênciaANSIenoterminaljanela). lessaproveitaráosrecursosdoEmacsqueexecutamautomaticamenteconversão,porexemplo,descompactandoarquivos.Naverdade,vocêpodeensinarEmacspararealizarqualquertipodeconversãocomoconverterautomaticamenteumarquivobinárioparaoformatolegívelporhumanosusandoumaferramentaexterna.- VocêpodevisualizararquivoslocalizadosemoutrasmáquinasusandoasintaxedoEmacsparaacessoremotocomo
/USER@HOST:FILENAME.
Linksúteis
e2ansiédistribuídono Melpa e pode ser instalado usando
o sistema de pacotes padrão do Emacs
-
e2ansi está hospedado em GitHub
- A página
e2ansi no Wiki do Emacs
- A casa de
less .
Notas do sistema operacional
-
No MS Windows, o console não suporta nativamente seqüências ANSI.
Felizmente, o aplicativo less é capaz de renderizá-los. Eu
Não estou ciente de qualquer distribuição binária contemporânea de less para
MS Windows e os arquivos de compilação fornecidos são difíceis de usar. Felizmente,
é fácil criar less usando o CMake , veja este texto para
detalhes.
-
OS X distribui uma versão antiga de less . Felizmente, é
fácil de construir uma versão moderna diretamente da fonte.