为什么 iTerm2 以彩色打印 Pytest 结果?
Why is iTerm2 printing Pytest results in color?
我正在尝试使用 Pytest --color=yes
选项并意识到我的终端正在打印彩色结果,即使它没有被设置。
这是为什么?
我的终端设置是这样的:
- OS: MacOS
- iTerm2 build 3.4.15
- iTerm2 报告终端类型属性设置为:xterm-256color
- 默认 shell 是 zsh (oh-my-zsh)
- 不确定是否还有其他问题...
我的猜测是它与 oh-my-zsh 有关,但我不确定是什么、在哪里以及如何。
我得到这个问题是因为我试图创建 SublimeText 构建系统,它将以颜色打印结果,但没有成功(不包括使用 SublimeANSI 插件,它有一些怪癖)。
所以,重申一下这个问题:我很困惑为什么我的终端应用程序以彩色打印 Pytest 结果,即使没有为 Pytest 设置 --color=yes
。
如果我们查看 Pytest terminal source,我们会在 color
选项中看到以下内容:
group._addoption(
"--color",
metavar="color",
action="store",
dest="color",
default="auto",
choices=["yes", "no", "auto"],
help="color terminal output (yes/no/auto).",
)
所以默认设置为auto
。
您的 zsh/oh-my-zsh 允许使用颜色,因此无需您自己传递选项即可显示。
我正在尝试使用 Pytest --color=yes
选项并意识到我的终端正在打印彩色结果,即使它没有被设置。
这是为什么?
我的终端设置是这样的:
- OS: MacOS
- iTerm2 build 3.4.15
- iTerm2 报告终端类型属性设置为:xterm-256color
- 默认 shell 是 zsh (oh-my-zsh)
- 不确定是否还有其他问题...
我的猜测是它与 oh-my-zsh 有关,但我不确定是什么、在哪里以及如何。
我得到这个问题是因为我试图创建 SublimeText 构建系统,它将以颜色打印结果,但没有成功(不包括使用 SublimeANSI 插件,它有一些怪癖)。
所以,重申一下这个问题:我很困惑为什么我的终端应用程序以彩色打印 Pytest 结果,即使没有为 Pytest 设置 --color=yes
。
如果我们查看 Pytest terminal source,我们会在 color
选项中看到以下内容:
group._addoption(
"--color",
metavar="color",
action="store",
dest="color",
default="auto",
choices=["yes", "no", "auto"],
help="color terminal output (yes/no/auto).",
)
所以默认设置为auto
。
您的 zsh/oh-my-zsh 允许使用颜色,因此无需您自己传递选项即可显示。