我注意到.zshrc
中的颜色方案设置不会影响终端窗口的背景颜色,因此我决定为OSX终端加载单独的预设颜色方案。作为回报,这改变了.zshrc
颜色方案之前的样子。 Vim也有自己的颜色方案,似乎受到OSX终端的影响。
我很好奇是否有任何通用方法来改变所有三方的配色方案。如果没有,请帮助我理解 OSX终端, vim 和 zsh
中颜色方案的相互作用答案 0 :(得分:3)
<强>终端强>
Terminal.app允许您在其首选项中更改其默认调色板。这些颜色由shell和您在其中运行的程序引用,使用标准名称(如“blue”)或0到15之间的数字。更改终端模拟器的调色板显然会改变shell的外观以及在其中运行的程序
<强> ZSH 强>
某些zsh主题使用xterm调色板中的颜色编号(16-255)。可以改变那个调色板,但这种做法并不常见,我没有听说过这样做的zsh主题(这并不意味着它不存在于野外)所以假设那些颜色是相对安全的各终端都是一样的。您对终端仿真器的默认ANSI调色板的更改不应影响此类主题。
另一方面,一些zsh主题使用标准颜色名称,如“绿色”或“红色”,它们对应于终端仿真器首选项中定义的16种ANSI颜色。由于您更改了这些颜色,因此期望您的zsh主题看起来不同是合乎逻辑的。
<强>的Vim 强>
写得好的Vim colorschemes通常能够在8/16色环境或256色环境中工作。要使用的颜色代码集由终端仿真器TERM
中的Vim确定:
TERM colors
xterm 8
screen 8
xterm-256color 256
screen-256color 256
在8/16色环境中使用256色ready readymeme将无法正常工作,因为只能正确使用数字0到15。
在256色环境中使用256色准备好的colorscheme可能会提供一致的体验,并且不受默认ANSI调色板中的更改的影响。
无论使用256色环境还是8/16环境,使用8色准备色系都可能会产生相同的效果。但是,这些colorschemes完全依赖于默认的ANSI颜色,因此如果更改终端仿真器的设置,它们的外观会有所不同。
<强>结论吗
鉴于以下内容:
TERM
设置为8/16颜色值你应该能够通过调整Terminal.app首选项中的ANSI调色板来实现一致的外观和感觉。