NeoBundle 是一个基于 Vundle 的项目,如同 Vundle,它们都可以安装和升级插件。然而 NeoBundle 的说明文件上明确指出:NeoBundle 不是一个稳定的插件管理器,如果你想要一个稳定的,请选择 Vundle。最新的 release-note 上也有警告可能会造成兼容性问题这是一个开发者写的注解,说明这个管理器还不能让人放心使用。
所以,我们为什么要使用 NeoBundle?它都不能保证稳定运行!好吧,它还是有可取之处的。Vundle 只支持 Git 这种版本控制系统,而 NeoBundle 可以支持 Subversion 和 Mercurial。另一个原因是如果你不想插件升级时破坏你的 Vim 生态环境,你可以锁住 NeoBundle,让它只使用某个插件的固定版本。
另外,NeoBundle 创建者,Shougo Matsuishita(LCTT:名字看着像日本人),正在将它的命令接口添加到其他插件项目,以便减少他们的命令使用量。现在 NeoBundle 支持3种插件:unite.vim,Vim 使用的文件和缓存管理器;vimshell.vim,Vim 使用的脚本程序;vimproc.vim,运行于 vimshell.vim 中,用于对异步事件的支持。上面说的都是特殊案例,缺少英文文档,所以用户希望有人能完善它们。在正式使用它们之前,我们需要把注意力先集中在一些基本操作上。
安装并初始化 NeoBundle
NeoBundle 支持 Vim 7.2.051 或更高版本,需要 git 和 cURL(用于下载文件)。你可以手动下载 NeoBundle,也可以使用 cURL 下载它在 GitHub 上的库。在你的 home 目录下使用如下命令,可以将 NeoBundle 插件下载到 .vim/bundle/neobundle.vim 目录里,然后 NeoBundle 就能管理它自己了。
curl https://raw.githubusercontent.com/Shougo/neobundle.vim/master/bin/install.sh | sh
你还需要修改 .vimrc 文件。NeoBundle 的 GitHub 主页提供一个 .vimrc 范本,但是直接使用这个范本,NeoBundle 需要你安装5个可能不需要插件。如果不需要它们,你可以使用下面的最小配置:
if has(‘vim_starting’)
set nocompatible
set runtimepath+=~/.vim/bundle/neobundle.vim/
call neobundle#begin(expand(‘~/.vim/bundle/’))
NeoBundleFetch‘Shougo/neobundle.vim’
call neobundle#end()
filetype plugin indent on
上述配置的作用是:启动 NeoBundle 并且像其他插件一样升级自己。NeoBundle 默认从 GitHub 下载并升级,如果你正好在使用 GitHub,你只需要为这个插件指定维护者的用户名和路径。在上面的配置中,NeoBundleFetch 只需要指定为Shougo/neobundle.vim,而不是完整的 GitHub 路径。如果你想使用其他网站,比如是 Subversion 或 Mecurial 的网站,你就需要添加完整的 URL。
如果你想安装其他插件,你可以使用下面的命令:
curl -k https://github.com/[项目维护者]/[插件路径] 》 ~/.vim/bundle/[插件路径]
举个例子:你想安装 vim-abolish,一个超级 NB 的文本搜索和替换插件,就使用下面的命令:
curl -k https://github.com/tpope/vim-abolish 》 ~/.vim/bundle/abolish
如果要让它自动升级,在 NeoBundleFetch 那行下面添加一行:
NeoBundle‘tpope/vim-abolish’
再介绍一个小技巧:你可以为插件指定一个分支或版本号。什么意思?NeoBundle 只会使用这个插件的某个分支或版本,而忽略其版本更新。如果你使用的某个插件处于高速开发过程,你就可以使用这个技巧,避免用到有 bug 的插件版本。举个例子:
NeoBundle‘Shougo/vimshell’,{‘rev’:‘3787e5’}
还有一个技巧:在 .vimtc 文件内添加一行关于NeoBundleCheck的属性。NeoBundle 会根据配置检查没安装的插件,并提示你安装它们。你也可以使用命令:NeoBundleInstall(LCTT:这是要在 Vim 编辑器的命令模式下输入)来安装或升级插件。
NeoBundle 用法
很多 NeoBundle 命令用起来和 Vundle 类似,但命令的名字不一样。下面是 NeoBundle 命令的用法:
:NeoBundleUpdate:安装或升级插件,如果你手动把一个插件的目录删除了,这个命令会重新安装这个插件。在这个命令后面加上插件名称,就只升级一个插件;不加参数,会将所有己安装但没被记录在案的插件给记录下来。:NeoBundleInstall 命令效果相同。
:NeoBundle {REPOSITORY URI} [[REVISION}] [,OPTIONS}]]:将一个插件锁定到固定版本,防止胡乱升级。
:NeoBundleList:列出所有未初始化的插件。
:NeoBundleClean:进入交互界面,删除插件。
这些命令在配合 unite.vim (LCTT:就是上面举过的32个例子之一)使用时,效果会稍微有些出入。你可以使用:help neobundle命令了解更多信息。
是否使用 NeoBundle,自己决定
NeoBundle 是强大的工具,正处于高速开发状态。任何处于这种状态的项目,都会被帖上有前途和不稳定两个标签,看你自己怎么选。如果你想要最新的稳定版本的插件,NeoBundle 能够把 Vundle 和 Pathogen 甩出几条街。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)然而在线帮助文档已经给出警告,它不是个稳定的产品,不及时更新版本可能造成一些插件运行出错。最后,你需要在 .vimrc 文件为你的 Neoundle 和其他插件指定一个稳定的版本。记住这警告,然后你可以在使用这些尖端技术产品时游刃有余。
上面就是Linux安装使用NeoBundle 的方法介绍了,但是NeoBundle 目前还不够稳定,存在一些问题,所以使用NeoBundle 的时候可能会出现一些问题。