我的vimrc中有以下行
colorscheme solarized
这显然设置了日晒色彩。我的实际.vimrc肯定比这长,我还指定了更多的solarized选项。但是,使用此最小vimrc文件可以证明我面临的问题。
当我打开vim(版本7.3)时,它以带有日晒颜色方案的黑色背景开始。当我:source ~/.vimrc
再次获取vimrc时,它会转移到浅色背景。之后我可以多次获取vimrc并且背景仍然很亮。
除了这可能是曝光的错误这一事实之外,我无法理解当在vim中获取时,相同的vimrc如何产生不同的行为。
我希望能找到关于如何调试它的指示。
更新:
@ jim-stewart发表评论后,我做了一些更彻底的调试。
在我的.vimrc
和solarized.vim
中添加了回音语句。
我发现当我.vimrc
运行时,solarized.vim
来源且正确无误
调色板(在我的情况下为elseif g:solarized_termcolors !=
256 && &t_Co >= 16
)已设置。
然后.vimrc
到达终点(执行其他命令,如果有的话)和
那么solarized.vim
会再来一次,但是
这次调色板被错误地设置为(if(has("gui_running") &&
(g:solarized_degrade == 0))
)。我在这个if
语句中检查了变量
并且它们具有正确的值,不应设置此调色板。
我不知道为什么solarized.vim
来源两次也是如此
错了第二次。一旦我进入vim和invode
:echo g:colors_name
然后它会生成E121
错误并告诉我
变量未设置。
现在,如果我进入vim
,我可以从:colorscheme solarized
内部获得
根据{{1}}更正曝光的主题。此外,background
会返回:echo
g:colors_name
。