我想在git输出中使用着色,例如:
git log --decorate --color
当我发出此命令时,我的输出看起来像ESC[1;32m
,其中ESC
是反色的。
除非必须发送\033
而不是字符E
,S
和C
,否则我认为这是一个有效的转义序列。
当我发出ls
命令时,我会根据权限对文件进行着色。
所以这些能力没有错。
是否有必须设置为ESC char值的环境变量? 还是我看错了方向? 我正在运行openSUSE 11.1
答案 0 :(得分:9)
您的终端(或处理输出的任何程序)看起来都不明白这一点,并将ESC
显示为\033
的占位符。如果您使用less
来显示输出,那么它需要-R
参数。
我正在使用配置core.pager=less -XRMSI
,它在这里工作正常(也是一个openSUSE,虽然我不确定是哪个版本)。 (在更改之前,请使用git config -l
查找当前配置,并记住旧值。另外,您可能需要阅读有关可用开关的less
文档。)