Duas respostas:
Um pequeno: você deseja usar o script vim AnsiEsc.vim . Ele ocultará as seqüências de escape ANSI reais no seu arquivo e usará o realce da sintaxe para colorir o texto adequadamente. O problema de usar isso em um pager é que você precisará fazer com que o vim reconheça quando usá-lo. Não tenho certeza se você pode simplesmente carregá-lo sempre ou se ele entrará em conflito com outros arquivos de sintaxe. Você terá que experimentar com isso.
Uma resposta longa: o melhor que você pode esperar é uma solução parcial não portátil. Menos na verdade não entende as seqüências de escape do terminal, uma vez que elas são em grande parte dependentes do terminal, mas menos podem reconhecê-las (um subconjunto delas) e saberão transmiti-las ao terminal, se você usar o -r
(ou-R
). O terminal interpreta as seqüências de escape e altera os atributos do texto (cor, negrito, sublinhado ...). O Vim, sendo um editor e não um pager, não passa apenas caracteres de controle brutos para o terminal. Ele precisa exibi-los de alguma forma, para que você possa editá-los. Você pode usar outros recursos do vim, como ocultação e destaque de sintaxe para ocultar as seqüências e usá-los para definir cores do texto; no entanto, ele sempre manipulará apenas um subconjunto das sequências de terminais e provavelmente não funcionará em alguns terminais. .
Este é realmente apenas um dos muitos problemas que você encontrará ao tentar usar um editor de texto como pager.