iTerm 中的主题在 vim 中更改颜色
Themes in iTerm change colours in vim
iTerm等终端如何处理主题?
我的问题的背景是这样的;
我在 vim 中设置了一个主题,这改变了我的 js 代码中的语法突出显示。当我在 iTerm 中更改主题时,vim 中的颜色会发生变化!
我想有一个更好的主意,这样我就可以控制这些设置,而不是满足于偶然发现一个恰好有效的组合。
为什么更改终端主题会更改 vim 中的颜色?我怎样才能避免这种影响?
Vim 将使用终端仿真器设置的所谓 "ANSI" 颜色来显示 0-15
范围内的任何颜色,因此只要您操作这些 "ANSI" 颜色。这是基本原则;神志清醒,无计可施。
如果您不希望 Vim 颜色继承自终端模拟器的调色板,您需要使用 0-15
范围之外的颜色。从那里,你基本上有两个解决方案......
将 TERM
设置为 xterm-256color
并选择专为 256 色设计的配色方案。
正确设计的“256color”配色方案仅使用 16-255
范围内的颜色,因此它们不受终端模拟器调色板的任何更改影响。
告诉 Vim 在带有 set termguicolors
的终端中使用 "GUI" 颜色,并选择为 GUI Vim.[=16 设计的漂亮配色方案=]
您将需要 Vim 和 iTerm 的最新版本才能使用此方法,因此它不是很便携,但这对 您[=33= 来说可能是也可能不是问题].
iTerm等终端如何处理主题? 我的问题的背景是这样的; 我在 vim 中设置了一个主题,这改变了我的 js 代码中的语法突出显示。当我在 iTerm 中更改主题时,vim 中的颜色会发生变化! 我想有一个更好的主意,这样我就可以控制这些设置,而不是满足于偶然发现一个恰好有效的组合。 为什么更改终端主题会更改 vim 中的颜色?我怎样才能避免这种影响?
Vim 将使用终端仿真器设置的所谓 "ANSI" 颜色来显示 0-15
范围内的任何颜色,因此只要您操作这些 "ANSI" 颜色。这是基本原则;神志清醒,无计可施。
如果您不希望 Vim 颜色继承自终端模拟器的调色板,您需要使用 0-15
范围之外的颜色。从那里,你基本上有两个解决方案......
将
TERM
设置为xterm-256color
并选择专为 256 色设计的配色方案。正确设计的“256color”配色方案仅使用
16-255
范围内的颜色,因此它们不受终端模拟器调色板的任何更改影响。告诉 Vim 在带有
set termguicolors
的终端中使用 "GUI" 颜色,并选择为 GUI Vim.[=16 设计的漂亮配色方案=]您将需要 Vim 和 iTerm 的最新版本才能使用此方法,因此它不是很便携,但这对 您[=33= 来说可能是也可能不是问题].