【发布时间】:2014-10-26 10:41:38
【问题描述】:
我使用 Pathogen 在启动时加载我的插件。
有时我使用Neocomplete 插件,有时使用YouCompleteMe 插件,有时使用Supertab 来完成单词,有时我根本不使用完成器。
如果这些插件都加载到 Pathogen 中,它们就不能一起工作。
这就是为什么我决定在 vimrc 的末尾创建一个小菜单的原因,我可以在其中选择要使用的完成程序(我要使用的完成程序是我在病原体中禁用的完成程序)。我可以用快捷键启动它。
列表 g:PATHO 包含要在病原体中禁用的插件:
如果我选择使用 Supertab --> 从 g:PATHO 中删除 Supertab,保存 g:PATHO 并重新加载 vimrc。
如果我选择使用 Neocomplete --> 从 g:PATHO 中删除 Neocomplete,保存 g:PATHO 并重新加载 vimrc。
如果我选择使用 Youcompleteme --> 从 g:PATHO 中删除 Youcompleteme,保存 g:PATHO 并重新加载 vimrc。
这是我的 _vimrc 开头的内容
if !exists("g:PATHO")
let g:PATHO = ['YouCompleteMe','neocomplete.vim','supertab']
endif
let g:pathogen_disabled = g:PATHO
在我的 _vimrc 下面我有这个命令可以将全局变量保存在我的 viminfo 文件中:
set viminfo+=!
(感谢 Ingo Karkat)
g:PATHO 是用 viminfo 写的,但是当我重新加载 vimrc 时,找不到变量 g:PATHO,因为在 _vimrc 的开头还没有读取 viminfo。
viminfo 什么时候在 _vimrc 中读取?
如何让病原体在 vimrc 启动时读取 g:PATHO?
(希望我说清楚了)
【问题讨论】: