less -R não está exibindo cores

0

Estou no OSSierra, usando iterm2.

Eu tenho um pequeno projeto que faz uma análise simples do markdown em golang que então imprime certas linhas em cores para o terminal link . Estou usando essa biblioteca para o link

Tudo parece ótimo quando eu executo meu programa sozinho, mas eu quero ser capaz de canalizá-lo para less -R e obter minha saída colorida em um pager para que seja mais fácil visualizar arquivos longos ...

Eu perco toda a cor quando tento canalizar para less , deve haver algum problema com os códigos de cor subjacentes, mas não sei o suficiente sobre isso para desvendar o problema ...

Alguma idéia?

    
por deltaskelta 26.09.2017 / 04:25

1 resposta

2

Alguns programas podem detectar se eles escrevem em um pipe ou arquivo regular, ou no terminal (tty); eles produzem uma saída colorida apenas neste último caso.

Exemplo: ls faz algo parecido com ls --color=auto . Você pode forçar a cor em ls --color=always .

Você deve ver o que acontece quando canaliza sua ferramenta para less (sem -R nem -r ). Existem códigos? Compare com ls --color=auto | less e ls --color=always | less .

Se não houver códigos, talvez você possa forçar a ferramenta a gerá-los mesmo quando usado em um pipe (equivalente à opção --color=always de ls ). Verifique a documentação da ferramenta, se disponível.

    
por 26.09.2017 / 11:56