2015年11月23日 星期一

Vundle: Vim's plugin manager

之前安裝Vim的plugin都是透過Vim的官網下載,
這樣有個問題,就是如果plugin有更新,
你可能不知道,需要留心追蹤,
而如果安裝的plugin一多,
要一個一個追蹤與更新想必是一件相當累人的工作。
所以,Vim的plugin manager就應運而生,
有一個比較早期plugin manager名為pathogen
而網路上的評價比較好的則是Vundle
由於剛進入Vim plugin manager的世界,沒有包袱的我當然就是往Vundle邁進啦!
首先當然是安裝Vundle:
Debian有一個名為Vim-pathogen的套件,不過沒有Vunble,
但可以透過Vundle的GitHub上的文件一步一步來安裝,
首先,必須先安裝git:
Debian/Ubuntu:

apt-get install git


Fedora (22+):

dnf install git

接著下載並至於指定位置:

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



之後在~/.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()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')

" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'

" The following are examples of different formats supported.
" Keep Plugin commands between vundle#begin/end.

" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required



再來,進入Vim並在normal mode中輸入:

:PluginInstall

或者,不進入Vim,直接在command-line下輸入:


vim +PluginInstall +qall

就會把Vundle的環境架好。

完成了Vundle的安裝與設置,接下來就是來安裝一些常用的plugins。
只要在上述~/.vimrccall vundle#begin()call vundle#end()之間,
插入像是:

Plugin 'scrooloose/nerdtree'

其中,引號內的字串表示:


此plugin在GitHub上的帳號/plugin的名稱

如果plugin沒有在GitHub上面,也可以有其他對應方式:

Plugin 'tpope/vim-fugitive'
" plugin from http://vim-scripts.org/vim/scripts.html
Plugin 'L9'
" Git plugin not hosted on GitHub
Plugin 'git://git.wincent.com/command-t.git'
" git repos on your local machine (i.e. when working on your own plugin)
Plugin 'file:///home/gmarik/path/to/plugin'
" The sparkup vim script is in a subdirectory of this repo called vim.
" Pass the path to set the runtimepath properly.
Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
" Avoid a name conflict with L9
Plugin 'user/L9', {'name': 'newL9'}

之後進入Vim的normal mode輸入:


:PluginInstall

就會幫你把NerdTree這個好用的plugin給裝好了!

常用的Vundle指令除了:PluginInstall,還有:

:PluginList " 列出所有plugin :PluginInstall " 安裝plugin :PluginUpdate " 更新plugin :PluginClean " 清除未使用套件 :PluginSearch xxx " 搜尋plugin xxx

想要移除plugin,只要在~/.vimrc中移除該套件(Plugin xxx/xxx),

接著,在Vim normal mode下輸入:

:PluginClean

就可以移除該plugin了!

注意

最新版的的Vundle安裝plugin時是在~/.vimrc裡加入:

Plugin 'xxx/xxx'

而之前版本是使用:


Bundle 'xxx/xxx'

不過目前(2015/10)最新版可以向下相容。


參考資料:
Vundle
Arch Linux - 為 Vim 安裝套件管理工具 : Vundle ( Install Vundle for Vim on Arch Linux )

沒有留言:

張貼留言