vimはhjklな変態的キーバインドから敬遠されがちだと思うけど強力なプラグインがあってこそ、やめられないとまらないわけであって、ここではプラグインの導入方法や管理方法を記載します。
ノーマルなプラグイン導入
プラグインファイルをダウンロードしてくる
ダウンロードしたプラグインファイル一式を runtimepathで指定されたディレクトリ以下に放り込む
- 通常は
$HOME/.vim
。runtimepathは以下のviコマンドで確認できる。
helpを見てみると、以下ディレクトリ(優先順)がデフォルト設定されている。(vim74-kaoriya-win64で確認)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| :help runtimepath
# => 以下抜粋
'runtimepath' 'rtp' 文字列 (既定値:
Unix: "$HOME/.vim,
$VIM/vimfiles,
$VIMRUNTIME,
$VIM/vimfiles/after,
$HOME/.vim/after"
DOS, MS-Win系, OS/2: "$HOME/vimfiles,
$VIM/vimfiles,
$VIMRUNTIME,
$VIM/vimfiles/after,
$HOME/vimfiles/after"
Macintosh: "$VIM:vimfiles,
$VIMRUNTIME,
$VIM:vimfiles:after"
)
|
プラグインによるプラグインパッケージ管理
上述したプラグイン導入を続けていくと、$HOME/.vim/
以下が散らかっていくことが容易に想像できるでしょう。散らかるだけで実害がなければ良いのですが、あるプラグインだけ削除したいときなどに難易度高くて困ります。
そこで、プラグインの相互独立性を担保しながら管理できるプラグインを導入します。
代表的なプラグインパッケージ管理プラグインは、以下です。
|
プラグイン名 |
概要 |
|
pathogen |
~/.vim/bundle/<プラグイン名>/ 以下の各ディレクトリも ~/.vim/ 直下と同じように読み込むようにするプラグイン。これにより、~/.vim/bundle/ 以下にプラグインごとに別のディレクトリを切って管理をすることができるようになる。 |
|
vundle |
Vundle は Rails 3 で採用されている、Gem 管理システム Bundler に影響を受けたプラグイン管理システム。自分で ~/.vim/bundle git cloneなどで放り込まなくても、vimコマンドでプラグイン追加が可能。 |
|
neobundle |
Vundleにインスパイアされたプラグイン管理システム。Vundleの改良版。 |
上記よりNeoBundleを選びたいと思います。
NeoBundleインストールと設定
1. NeoBundleをセットアップする
- githubから最新NeoBundleのソースを clone する。ここでは、runtimepathを
~./.vim/
とします。
1
2
| $ mkdir -p ~/.vim/bundle
$ git clone git://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim
|
2. NeoBundleを設定する
~/.vimrc
にNeoBundleの設定を加える。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
| " ----------------------------------------------------------------------------------------
" neobundle
" ----------------------------------------------------------------------------------------
set nocompatible " Be iMproved
if has('vim_starting')
set runtimepath+=~/.vim/bundle/neobundle.vim/
endif
call neobundle#rc(expand('~/.vim/bundle/'))
" Let NeoBundle manage NeoBundle
NeoBundleFetch 'Shougo/neobundle.vim'
" Recommended to install
" After install, turn shell ~/.vim/bundle/vimproc, (n,g)make -f your_machines_makefile
NeoBundle 'Shougo/vimproc', {
\ 'build' : {
\ 'windows' : 'make -f make_mingw32.mak',
\ 'cygwin' : 'make -f make_cygwin.mak',
\ 'mac' : 'make -f make_mac.mak',
\ 'unix' : 'make -f make_unix.mak',
\ },
\ }
filetype plugin indent on " Required!
" Brief help
" :NeoBundleList - list configured bundles
" :NeoBundleInstall(!) - install(update) bundles
" :NeoBundleClean(!) - confirm(or auto-approve) removal of unused bundles
" Installation check.
NeoBundleCheck
|
3. プラグインの取得
~/.vimrc
にインストールするプラグインを列挙する。(以下は例)
- 保存したあと、vim を起動し
:NeoBundleInstall
を実行するとプラグインがインストールされる。プラグインファイルは、.vim/bundle/
以下にプラグイン別に保存される。もちろん各プラグインの設定は個別に .vimrc
へ記述する必要がある。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| " GitHubリポジトリにあるプラグインを利用する
" --> NeoBundle 'USER/REPOSITORY-NAME'
NeoBundle 'Shougo/neocomplcache'
NeoBundle 'Shougo/neosnippet'
NeoBundle 'Shougo/unite.vim'
NeoBundle 'thinca/vim-quickrun'
NeoBundle 'davidoc/taskpaper.vim'
NeoBundle 'itchyny/lightline.vim'
NeoBundle 'altercation/vim-colors-solarized'
"GitHub以外のGitリポジトリにあるプラグインを利用する
NeoBundle 'git://git.wincent.com/command-t.git'
" vim-scripts リポジトリにあるプラグインを利用する
NeoBundle 'surround.vim'
"Git以外のリポジトリにあるプラグインを利用する
NeoBundle 'http://svn.macports.org/repository/macports/contrib/mpvim/'
NeoBundle 'https://bitbucket.org/ns9tks/vim-fuzzyfinder'
|
- プラグインをアンインストールしたい場合は、
.vimrc
から当該プラグインの記述を消し、:NeoBundleClean
を実行する。
おすすめプラグイン