2

我在 Win7 上使用 Vim/Cream 和 Cream (v7.3.107) 提供的 Vim 二进制文件,并安装了 Vundle,并且在我运行 :BundleInstall 后插件工作正常。但是在退出并重新启动后,插件在我再次运行 BundleInstall 之前不起作用。这是正常的吗?我认为 BundleInstall 是一次性命令(用于更新时除外)。这是我在 vimrc 中的摘录(实际上是 cream-user.vim,这是 Cream 喜欢的):

set nocompatible
filetype off
set runtimepath+=$HOME/vimfiles/bundle/vundle/
call vundle#rc()

Bundle 'gmarik/vundle'

" Your bundles go here:
"
" ORIGINAL REPOS ON GITHUB
Bundle '907th/vim-auto-save'

.

但是,当我运行 :AutoSaveToggle (vim-auto-save 命令)时,出现以下错误:

E492: Not an editor command: AutoSaveToggle

.

正在调用 cream-user.vim 文件(它在脚本名中列出):

83: C:\Users\<MyUserName>\.cream\cream-user.vim
[...]
85: C:\Users\<MyUserName>\.vim\bundle\vundle\autoload\vundle.vim
86: C:\Users\<MyUserName>\.vim\bundle\vundle\autoload\vundle\config.vim

.

...并且 Vundle 本身已安装,因为它的命令有效,特别是 :BundleList,它在已安装的捆绑包中列出了 vim-auto-save:

" My Bundles
Bundle 'gmarik/vundle'
Bundle '907th/vim-auto-save'

重新运行 BundleInstall 后,插件开始工作,我注意到 scriptnames 现在包含额外的文件:

125: C:\Users\<MyUserName>\.vim\bundle\vundle\autoload\vundle\installer.vim
126: C:\Users\<MyUserName>\.vim\bundle\vundle\autoload\vundle\scripts.vim
127: C:\Users\<MyUserName>\.vim\bundle\vim-auto-save\plugin\AutoSave.vim

将 :BundleInstall 放入 .vimrc 看起来也不正确,因为它会打开一个缓冲区(可以解决,但仍然......)。我是 Vim 的新手,所以我不确定出了什么问题,可能是我的一些简单的事情,比如我不清楚如何适当地调用 vundle。有想法该怎么解决这个吗?

4

3 回答 3

2

第一:你是对的,:BundleInstall不是每次启动需要。我猜您看到的行为与 Cream 自定义有关;它可能会'runtimepath'自乱阵脚,因此会干扰 Vundle。

如果您只是选择 Cream 来轻松安装 Vim(尽管您的 7.3.107 已经过时了),那么还有一个“仅 Vim”安装程序。此外,还可以从http://www.vim.org/download.php获得 Vim 7.4 安装程序。

如果您确实需要 Cream(不建议这样做;特别是如果您正在使用插件编程/自定义 Vim),我会打开 Vundle 项目的问题,寻求 Cream 的帮助/支持。

于 2013-12-18T19:40:31.510 回答
2

我对 MacVim 也有类似的问题。对我来说,问题是我没有足够严格地遵循说明。我只是假设我可以将 Vundle 行放在我的 .gvimrc 中。这是错误的!根据说明,解决方案是将这些行放在 .vimrc 文件中。操作顺序很重要,这可能对 Cream 很重要。

于 2014-10-24T05:30:12.623 回答
-1

我在这个错误报告中找到了解决这个问题的方法:https ://github.com/gmarik/Vundle.vim/issues/430

在 cream-user.vim 文件的最后,添加:

call vundle#config#require(g:bundles)

这会导致插件在启动时加载而不显示 Vundle\Installer 缓冲区。

于 2014-10-28T00:52:24.107 回答