如何管理 Vim 插件

13

我想知道你是如何管理你的vim插件的。

就目前而言,使用vim的最大乐趣之一就是可以轻松地尝试许多有趣的新插件,只需将其下载并解压缩到~/.vim下即可。但如果你经常尝试太多插件,可能会遇到键映射冲突、不兼容脚本版本、不同插件之间的依赖等问题......

然后你可能想要删除一些插件,类似于将vim回滚到一个良好状态。但是,回滚可能非常痛苦。因为有些“巨型”插件(像perl-support这样的很棒的插件)由许多分散在不同目录中的vim脚本组成。要删除单个巨型插件将会很麻烦,更不用说一次性删除多个插件了。

总之,我正在寻找管理vim插件的好方法。

8个回答

9
我在git中有我的vim目录。
所有具有上游公共git存储库的插件都作为git子模块位于~/.vim/plugins-git/中。我的vimrc将runtimepath设置为包括~/.vim/plugin-git/中的目录,因此插件可以保持自包含并且可以非常容易地更新到最新的git提交。
我的其余插件位于~/.vim/plugin/中。
一个使这种设置更加容易的脚本是pathogen.vim。 pathogen.vim为您设置了所有runtimepath条目,因此您不必这样做。 这值得一试。 我不使用pathogen,因为通过在我的vimrc中明确设置路径,如果存在冲突或不兼容性,我可以快速禁用插件,就像您提到的那样。

4

Vundle绝对值得一提,因为它使得vim插件管理变得非常简单。

 1. git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
 2. open up your vimrc
 3. Add your plugins (Bundle '<link to plugin>') <-- look at the example vimrc on Vundle github page
 4. :BundleInstall

我认为Vundle的灵感来源于tpope的Pathogen插件。


1

我喜欢vim-addon-manager,因为它允许我通过将插件添加或移除到活动插件列表中来激活或停用插件,从而方便测试新插件。


0

我在Github上对我的vimconfig目录进行版本控制。因此,如果我添加了一个插件,我会进行新的提交。如果我想要删除它,我会还原这个提交。

之后,我将.vimrc文件和我的目录中的.vim目录链接到这个目录中。


0

我专门通过Vimballs安装插件。这样我也可以在不同的安装中保持插件的最新状态。

我喜欢vimballs的原因是我可以直接看到文件来自哪里。否则我可能会使用git之类的工具。


0
我主要在Windows上工作,因此可能与Linux、Unix等有所不同,但如果你使用 help vimfiles ,你会发现vim有一种加载文件的顺序。首先是$ HOME目录中的文件(WinXP计算机上的文档和设置用户名下的某个位置),然后是$ VIM目录(vim所在的实际目录)等等...
因此,我将vim放在一个包含“稳定”内容的目录中。每当我想尝试新插件时,我将其放入“文档和设置...”文件夹中,并在$ VIM目录中加载它。这样,如果我不喜欢它,就可以轻松删除新插件。如果我喜欢它,并且它与我已经拥有的插件相容,则放在$ VIM目录中。
(这可能按照我的方式没有意义,但它有效...也许 :))

0

在我的情况下,pathogen插件使得管理插件变得更加容易,我使用它与Mercurial一起。对于vimball风格的插件:

    :usevimball ~/.vim/bundle/bundle-dir-name-here
    see :h :usevimball

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接