git - 如何在 git 中定义 ESC 字符?

标签 git escaping opensuse

我想在 git 输出中使用着色,例如:

git log --decorate --color

当我发出这个命令时,我得到的输出看起来像 ESC[1;32m,其中 ESC 是反色的。
这在我看来是一个有效的转义序列,除了必须发送 \033 而不是字符 ES C.
当我发出 ls 命令时,我根据权限对文件进行着色。 所以这些功能没有问题。

是否有必须设置为 ESC 字符值的环境变量? 还是我看错方向了?
我正在运行 openSUSE 11.1

最佳答案

看起来您的终端(或任何处理输出的程序)不理解这一点,并将 ESC 显示为 \033 的占位符。如果您使用 less 来显示输出,那么它需要 -R 参数。

我正在使用配置 core.pager=less -XRMSI,它在这里工作正常(也是一个 openSUSE,虽然我不确定是哪个版本)。 (在更改之前,使用 git config -l 查看您当前的配置,并记住旧值。您可能还想阅读有关可用开关的 less 文档。)

关于git - 如何在 git 中定义 ESC 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4959498/

相关文章:

scripting - 在批处理脚本中转义双引号

MySQL 无法启动?

postgresql - Bucardo 显示错误的 postgres 版本

git - 为 git-repo 创建默认 list

git - 从 svn 移动到 git 时保留所有历史记录

node.js - 无法强制将文件提交到 Heroku

bash - 如何获取我的 git 本地存储库的每个分支的信息

python - Python 中的原始字符串和正则表达式

php - is_numeric() 是否消除了对数字数据的 mysql_real_escape_string() 的需要? PHP

linux - 没有名为 'tensorflow.python.platform' 的模块