vim有哪些插件管理程序?都有些什么特点?

vim-plug / pathogen / Vundle

vim-plug

Minimalist Vim Plugin Manager

vim-plug ,一个极简主义Vim插件管理器,Vundle的完美替代品。

特点:

  • 部署简单:只有一个文件。不需要代码范例。
  • 使用简单:语法简洁、直观。
  • 超快的异步、并行安装或更新插件。
  • 创建浅克隆来最大化的减小磁盘空间和下载时间。
  • 按需加载插件使Vim启动速度更快。
  • 可以查看和回滚更新。
  • 支持git branch/tag/commit。
  • 支持更新回滚。
  • 支持Post-update 钩子。
  • 支持外部管理的插件。

一位博主用相同的Vim配置测试了分别使用vim-plug 、Vundle 、pathogen和NeoBundle(已停止开发、替换为Dein.vim)作为插件管理器时的Vim启动时间, 测试结果表明开启了按需加载插件功能(On-demand loading / Lazy loading)的vim-plug所需的启动时间最短,只需135ms。[1]

vim-plug安装:

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

vim-plug使用:

在.vimrc添加如下语句:

call plug#begin('~/.vim/plugged')

" Shorthand notation; fetches https://github.com/junegunn/vim-easy-align
Plug ‘junegunn/vim-easy-align’

" On-demand loading
Plug ‘scrooloose/nerdtree’, { ‘on’: ‘NERDTreeToggle’ }
Plug ‘tpope/vim-fireplace’, { ‘for’: ‘clojure’ }

" Using a non-default branch
Plug ‘rdnetto/YCM-Generator’, { ‘branch’: ‘stable’ }

" Initialize plugin system
call plug#end()

然后在vim执行:PlugInstall安装插件

pathogen

manage your runtimepath

pathogen是这几个插件中最简洁的, 加载插件只需要一条函数调用,而其他几个插件管理器 在声明使用插件时至少需要调用和插件数量相等的指令。

优点:

  • 最简洁
  • 自动从目录加载插件
  • 为插件生成help tags

缺点:

  • 不支持按需加载插件
  • 需要手动安装、更新、卸载插件

pathogen 安装:

mkdir -p ~/.vim/autoload ~/.vim/bundle && 
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim

pathogen 使用:

在.vimrc文件中 filetype plugin indent on 之前的任何地方添加:

call pathogen#infect()

以安装NERDTree插件为例:

进入~/.vim/bundle/目录,执行:

git clone http://github.com/scrooloose/nerdtree.git

下载完成后,看到目录~/.vim/bundle/下多出一个显得nerdtree目录,即表明NERDTree插件安装完成。

如要卸载NERDTree插件,只需将nerdtree目录删除即可。

Vundle

优点:

Vundle 的优点 vim-plug都有?[2]

缺点:

  • 不支持按需加载插件,Vim启动耗时长
  • 不支持异步加载插件

Vundle 安装:

git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

Vundle 使用:

在.vimrc添加:

set nocompatible              " be iMproved, required
filetype off " required

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()

" let Vundle manage Vundle, required
Plugin ‘gmarik/Vundle.vim’

" plugin on GitHub repo
Plugin ‘tpope/vim-fugitive’

" more Plugin commands
" …
call vundle#end() " required
filetype plugin indent on " required

然后在vim执行:PluginInstall安装插件


最后,我用vim-plug,省心~


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值