插件vim-plug有如下优点
· 轻量级、单个文件且支持一些直观的安装选项。
· 支持并行插件加载(要求Vim编译带有Python或Ruby支持,这几乎已经是现代Vim的标配)。
· 支持大多数插件的延迟加载,即只为特定命令或文件类型触发必要的插件。
1.安装vim-plug的方式非常简单
· 下载插件文件。
· 保存为$HOME/.vim/autoload/plug.vim。
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
2.修改.vimrc文件,加入vim-plug初始化的代码,如下所示。
" 使用vim-plug管理插件
call plug#begin()
call plug#end()
3.在这两行之间加入一些插件,其中的地址格式为GitHub地址的最后两部分(<用户名>/<仓库>,比如https://github.com/scrooloose/nerdtree记为scrooloose/nerdtree),用于唯一标识插件,如下所示。
" 使用vim-plug管理插件
call plug#begin()
Plug 'scrooloose/nerdtree'
Plug 'tpope/vim-vinegar'
Plug 'ctrlpvim/ctrlp.vim'
Plug 'mileszs/ack.vim'
Plug 'easymotion/vim-easymotion'
call plug#end()
4.保存.vimrc文件,然后重载(命令为:w | source $MYVIMRC)或重启Vim,以使这些修改生效。执行:PlugInstall来安装这些插件。然后上面提到的插件将会自动从GitHub上下载下来。
vim-plug有两个主要的命令。
· :PlugUpdate用于更新所有已安装的插件。
· :PlugClean用于删除.vimrc中已经移除的插件。如果不执行:PlugClean,则没有激活的插件(.vimrc中删除或注释掉的那些Plug...行)将仍然保存在文件系统中。
注意:
运行 :PlugUpdate将更新vim-plug所管理的插件,但不包括它自己。
如果想要更新vim-plug,需要运行:PlugUpgrade命令,然后重载.vimrc文件(执行:source $MYVIMRC或重启Vim)。
延迟加载是一种避免插件拖延Vim运行速度的有效技术,这一点可通过Plug指令的可选参数来实现。比如,如果想要在:NERDTreeToggle命令执行时再加载NERDTree,可以使用on参数,示例如下。
Plug 'scrooloose/nerdtree', { 'on', 'NERDTreeToggle' }
如果只想对特定文件类型加载某个插件,可以使用for参数,如下所示。
Plug 'junegunn/goto.vim' { 'for': 'markdown' }
由于vim-plug采用单文件安装方式,因此它的帮助文档并未安装到Vim中。如果想要用:helpvim-plug来查看文档,则需要将Plug 'junegunn/ vim-plug'添加到插件安装列表中,然后运行:PlugInstall命令。