为什么vim不能识别vimrc中的插件命令,但它会在运行时识别它?

时间:2014-01-24 01:04:28

标签: vim vim-plugin pathogen

我已经安装了病原体vim-gitgutter plugin。 我可以从vim内部输入:GitGutterLineHighlightsEnable并打开线条高亮显示,很棒。

但我希望在启动时自动启用行高亮显示,因此我将命令添加到~/.vimrc。但是当我启动vim时,我得到“E492:不是编辑器命令:GitGutterLineHighlightsEnable”。一旦vim启动,我就可以运行命令了。

我的vimrc看起来像这样:

execute pathogen#infect()
colorscheme railscasts

  .. snip tabs and colors etc ..

GitGutterLineHighlightsEnable
hi GitGutterAddLine guibg=#222F22
hi GitGutterChangeLine guibg=#222239
hi GitGutterDeleteLine guibg=#2F2222

3 个答案:

答案 0 :(得分:6)

使用

let g:gitgutter_highlight_lines = 1

而不是

GitGutterLineHighlightsEnable

答案 1 :(得分:4)

想出来。

.vimrc在加载插件之前执行。从this related question开始,我将命令更改为:

autocmd VimEnter * GitGutterLineHighlightsEnable

这在vim启动后执行命令。

答案 2 :(得分:3)

正如您自己决定的那样,插件将在.vimrc之后处理。

如果您不喜欢使用VimEnter autocmd,可以执行的操作是将〜/ .vim / after / plugin目录中的文件放入加载插件后应该运行的任何命令。