
Estou no OSSierra, usando o iterm2.
Eu tenho um pequeno projeto que faz uma análise simples de markdown em golang, que então imprime certas linhas coloridas no terminalhttps://github.com/deltaskelta/readme. Estou usando esta biblioteca para coreshttps://github.com/fatih/color
Tudo parece ótimo quando executo meu programa sozinho, mas quero poder canalizá-lo less -R
e obter minha saída colorida em um pager para que seja mais fácil visualizar arquivos longos...
Perco toda a cor quando tento canalizar para less
, deve haver algum problema com os códigos de cores subjacentes, mas não sei o suficiente sobre isso para resolver o problema ...
Alguma ideia?
Responder1
Alguns programas podem detectar se gravam em um pipe ou arquivo normal, ou em um terminal (tty); eles produzem resultados coloridos apenas neste último caso.
Exemplo: ls
faz algo assim com ls --color=auto
. Você pode forçar a cor por ls --color=always
.
Você deve ver o que acontece quando você canaliza sua ferramenta less
(sem -R
nem -r
). Existe algum código? Compare com ls --color=auto | less
e ls --color=always | less
.
Se não houver códigos, talvez você possaforçaa ferramenta para gerá-los mesmo quando usada em um pipe (equivalente à --color=always
opção de ls
). Verifique a documentação da ferramenta, se disponível.