如何在git中定义ESC字符?

发布于 2024-10-16 23:55:53 字数 371 浏览 5 评论 0原文

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

git log --decorate --color

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

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

I want to use coloring in git output, e.g.:

git log --decorate --color

When I issue this command I get output looking like ESC[1;32m where ESC is in reversed color.
This looks to me as a valid escape sequence, except that the \033 must be sent and not the characters E, S and C.
When I issue an ls command, I get coloring of the files according to the rights.
So nothing wrong with the capabilities.

Is there an environment variable that must be set to the value of the ESC char?
Or am I looking in the wrong direction?
I am running openSUSE 11.1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

千仐 2024-10-23 23:55:54

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

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

Looks like your terminal (or any program handling the output) did not understand this, and showed ESC as a placeholder for the \033. If you are using less to show the output, then it needs the -R parameter.

I'm using the configuration core.pager=less -XRMSI, and it works fine here (also an openSUSE, though I'm not sure which version). (Before changing, look up your current configuration with git config -l, and remember the old value. Also you may want to read the less documentation about the usable switches.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文