问题:
重新加载时.vimrc,一些亮点组被搞砸了。这取决于您拥有的插件以及您使用的配色方案。我注意到有些highlight links坏了,有些highlight groups被清除了。
受影响的亮点组
在我的特定设置中,我注意到损坏hi links或清除groups:
重新加载后注意受影响的区域:(
重新加载意味着保存修改的文件。:wa在本例中使用)

解决方案
不幸的是,我尝试过的列出的答案或任何选项组合不会hi在重新加载后保留或恢复组。重新加载后手动运行可以colorscheme <your-coloscheme>修复所有问题,但使用Vimscript它时不会。
希望有人会分享这个烦人的小问题的正确解决方案。
丑陋的黑客
重新加载 vimrc:
在对我的 vim 配置文件进行任何更改时,我都会执行reload.vim:
.vimrc:
" .....
augroup reload_vimrc " {
autocmd!
autocmd BufWritePost ~/.vim/*.vim,~/.vim/vimrc source ~/.vim/reload.vim
augroup END " }
reload.vim:恢复断开的链接和清除的组
我们要做的是hi在采购后恢复组vimrc。
要找到受影响区域的正确值,例如对于SignColumn,请键入:
:hi SignColumn,在发生任何重新加载之前。
结果是(xxx预览在哪里):

您必须为每个受影响的hi.
在以下片段中,我最初修复SignColumn以匹配我的solarized颜色方案。
然后我修复了一些GitGutter颜色问题:
例如,GitGutterAdd链接到GitGutterAddDefault哪个被保留,但从GitGutterAddDefault到DiffAdd被破坏,所以我重新安装那个。依此类推。
重载.vim:
source ~/.vim/vimrc
hi SignColumn ctermfg=12 ctermbg=0 guifg=Cyan guibg=Grey
" GitGutterAdd -> GitGutterAddDefault (preserved)
hi link GitGutterAddDefault DiffAdd
" GitGutterChange -> GitGutterChangeDefault (preserved)
hi GitGutterChangeDefault ctermfg=3 ctermbg=0 guifg=#bbbb00
" GitGutterDelete -> GitGutterDeleteDefault (preserved)
hi GitGutterDeleteDefault ctermfg=1 ctermbg=0 guifg=#ff2222
" GitGutterChangeDelete -> GitGutterChangeDefault (preserved)
" (which we already fixed above)
" Powerline highlight groups
" (see this attached Gist for solution)
一切正常:

这个有点棘手,但原理是一样的。powerline所有以开头的高亮组Pl_。但其中一些可能还不存在。例如,如果您还没有进入visual模式,那么视觉模式的相应组将不会被填充。因此,输入insert、visual和normal模式来填充组,然后复制它们。hl您可以在命令输出的底部找到它们。然后,将它们粘贴到您的文件中reload.vim并将它们调整为合法hl命令。
这听起来像是很多工作,但事实并非如此。这是一个完整的要点reload.vim,以及一些gifs指导您完成的要点。