Puis-je get less de ne pas monochrome sa sortie?
Par exemple, la sortie de git diff
est colorée, mais git diff | less
git diff | less
n'est pas.
Utilisation:
git diff --color=always | less -r
--color=always
est --color=always
là pour dire à git
de sortir les codes de colors même si la sortie est un tube (pas un tty). Et -r
est là pour dire less
d'interpréter ces codes de couleur et d'autres séquences d'échappement. Utilisez -R
pour les codes de colors ANSI uniquement.
Une autre option serait d'activer les colors et d'utiliser 'less -r' comme votre pager.
git config --global color.ui true git config --global core.pager 'less -r'
Cela se traduit par
[color] ui = true [core] pager = less -r
dans votre ~ / .gitconfig
Pour plus d'informations, consultez le livre Pro Git .
Utilisez l' --raw-control-chars
-r
( --raw-control-chars
) à less, ou aussi -R
(uniquement les séquences d'échappement ANSI).
J'ai un alias pour cela dans ~/.bashrc
alias rless='less -r'
Également tree
a une option pour forcer les colors sur:
tree -C | less -r
Et ainsi de suite pour ls
:
ls -lR --color | less -r
Juste pour append une autre version sur "use less -r":
utilisez la variable d'environnement LESS avec la valeur r (ou ajoutez r à ce qu'elle est déjà)
par exemple, comme je l'utilise dans mon .bashrc
export LESS=-Xr
(Le X arrête l'écran de se dégager quand il sort less)