1

我最近在使用 vim 彩色显示时遇到问题。在 vim 7.2 版上,它运行良好,但自从我更新到 vim 7.3 后,大多数颜色方案的默认加载并不是:colorscheme <name>在 vim 加载后发出命令时它们看起来的样子。
例如,这就是我放入colorscheme default.vimrc 时 vim 的外观在此处输入图像描述

虽然这是我在vim 启动 colorscheme default 后键入时的样子。在此处输入图像描述

所有浅色主题也是如此。
是否有解决方法,也许主题文件中的一些更改会做。新版7.3和旧版7.2在色彩显示上有区别吗?

4

3 回答 3

3

我完全改变了这个答案

我做了一些研究(我也有一些配色方案的问题,最近开始在 MS Windows 中使用它)。
对于默认安装中的配色方案,我认为唯一的问题是default因为这不是设置background(从这里我使用缩写形式bg),只使用set bg&. 那就是“猜测”背景应该是什么。GUI在和之后加载,在此之前“猜测”是不正确的。 请参阅 VIM 手册.vimrc.gvimrc
Options

当使用: :set background& 将 'background' 设置为默认值时,Vim 会猜测该值。在 GUI 中这应该可以正常工作,在其他情况下,Vim 可能无法猜出正确的值。

启动 GUI 时,'background' 的默认值将是“light”。当 .gvimrc 中没有设置该值,并且 Vim 检测到背景实际上很暗时,'background' 设置为 "dark"。但这仅在读取 .gvimrc 文件后才会发生(因为需要打开窗口才能找到实际的背景颜色)。为了解决这个问题,通过在 .gvimrc 文件中放置一个 ":gui" 命令来强制打开 GUI 窗口,在使用 'background' 的值之前(例如,在 ":syntax on" 之前)。

这应该是根据以下的解决方案:

gui  " Before your line with syntax on
syntax on

.vimrcgvimrc中,都没有关系(如果你不将它用于不同的环境)。
如果您不想更改加载顺序,可以试试这个

autocmd GuiEnter * set background&

两者都对我有用。

但如果这没有帮助,我认为一定有一些插件把它搞砸了。
为了清楚起见;set background=dark没有背景设置为深色,它告诉 vim 为深色背景调整颜色。

没有关于环境问题的信息,或者使用了哪些插件。所以这里是某种猜测。

于 2013-02-15T01:09:52.753 回答
0

我不知道是什么原因造成的,但作为一种解决方法,您可以将:colorscheme <name>命令放入您的~/.gvimrc(对于 GVIM),或者在您的~/.vimrc:

autocmd VimEnter * colorscheme <name>
于 2013-02-15T12:24:56.260 回答
0

我有同样的问题。推杆有set background=light帮助。但我也注意到顺序很重要,我的意思是 _vimrc 文件中的 commandset backgroung=light应该在 command 之后colorscheme default

于 2013-05-19T20:29:17.767 回答