为什么vim颜色方案在gvim和普通终端之间有所不同?

Igo*_*rra 12 vim color-scheme

为什么vim颜色方案在gvim和普通终端之间有所不同?例如,这个展示的许多方案都在普通终端中工作.我将所有新方案保存到~/.vim/colors/并设置为:colorscheme cool

有办法解决这个问题吗?

Mik*_*ton 10

终端窗口(例如xterm)通常限于2**8种颜色.另一方面,GUI术语可以具有与图形窗口桌面一样多的颜色.

许多vim配色方案都是为GUI或终端设计的; 如果它们是为GUI设计的,那么它们不太可能默认显示在终端中.

如果需要将GUI方案转换为终端(256色),则可以使用CSApprox插件.

  • 绝对[CSApprox"让gvim-only colorschemes在终端vim中透明地工作"](http://www.vim.org/scripts/script.php?script_id=2390)是一个很好的解决方案.- THX (2认同)

rom*_*inl 9

目前的两个答案非常好.你的投票应该归Mike所有,因为没有完美的解决方法.

Vim colorschemes通常分别为GUI和CLI指定颜色.某些colorhemes不为CLI定义任何内容,也不为使用X11颜色定义任何颜色.

这些X11颜色(标记为0-255)已经或多或少地标准化了很长一段时间,并且只适用于支持256色的终端仿真器.在其他功能较弱的终端仿真器中,会跳过较高的数字,并且您的颜色会混乱.

GUI Vim也可以使用这256种颜色加上您可能想要的任何颜色,只要它用十六进制表示法(#00d6e3)指定即可.

由于GUI colorschemes可以使用数千种颜色,而CLI colorschemes只能使用256种颜色,因此CLI使用的值只能是GUI使用的值的近似值.这就是为什么CLI Vim看起来不像GUI Vim,即使您使用的是现代终端仿真器.

如果你选择的颜色方案坚持使用X11系列以外的颜色,你将永远不会有CLI Vim和GUI Vim看起来一样.

同步GUI和CLI Vim的颜色的唯一方法我看到的是使用X11颜色来愚蠢的GUI colorscheme .