每次启动 Vim 时都需要 BundleInstall(对于 Vundle)吗?



我在Win7上使用Vim/Cream和Cream提供的Vim二进制文件(v7.3.107),并且已经安装了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'

.

但是,当我运行:自动保存切换(一个 vim 自动保存命令)时,我收到以下错误:

E492: Not an editor command: AutoSaveToggle

.

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

83: C:Users<MyUserName>.creamcream-user.vim
[...]
85: C:Users<MyUserName>.vimbundlevundleautoloadvundle.vim
86: C:Users<MyUserName>.vimbundlevundleautoloadvundleconfig.vim

.

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

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

重新运行 BundleInstall 后,插件开始工作,我确实注意到脚本名称现在包含额外的文件:

125: C:Users<MyUserName>.vimbundlevundleautoloadvundleinstaller.vim
126: C:Users<MyUserName>.vimbundlevundleautoloadvundlescripts.vim
127: C:Users<MyUserName>.vimbundlevim-auto-savepluginAutoSave.vim

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

首先:你是对的,不是每次发射都需要:BundleInstall。我想您看到的行为与奶油自定义有关;它可能会弄乱'runtimepath'本身,因此会干扰 Vundle。

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

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

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

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

在 cream-user.vim 文件的末尾,添加:

call vundle#config#require(g:bundles)

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

最新更新