highlight我的.vimrc文件中有几个命令。在Vim 7.3中,这些在Vim启动后立即生效。在更新到Vim 7.4之后,情况不再如此。Vim最初使用其默认突出显示。当我.vimrc通过执行再次加载时source ~/.vimrc,突出显示了我想要的效果。
您应该能够使用以下步骤来重现此问题:
复制
.vimrc文件。替换
~/.vimrc为仅包含行的文件highlight Type ctermfg=28 cterm=bold。运行
vim dummy.c在256色终端(例如GNOME终端)。键入
int到缓冲区。本int应出现在常规字体并淡绿色,这不是我想要的。输入
:source ~/.vimrc。现在,int应当以粗体显示,并以深绿色显示。
根据如何控制/配置vim颜色一文,只需将highlight命令放入即可.vimrc。文章说您应该放在命令syntax enable后面highlight,但这没有任何区别。
我的第一个解决方法是在每个highlight命令之前.vimrc加上autocmd VimEnter *。这适用于某些文件类型,但不适用于其他文件类型(C文件为示例)。
这种行为的原因是什么?如何highlight在启动Vim时执行命令,以使它们在整个Vim会话期间对所有缓冲区生效?
set compatible在的开头添加时.vimrc,语法突出显示将按预期工作。因此,这似乎确实是该漏洞的实际表现。
highlight命令之前添加了autocmd ColorScheme *,这是错误报告中提出的解决方法。它仍然不起作用。☹