CentOS 5.5 に Vim 7.2 をインストール


CentOS の最新版となるリリース 5.5 が出ていたのでインストールしてみた。インストール自体はさくっと終了した(この辺参照。)のだが、Vim のバージョンが古いせいか、愛しの FuzzyFinder プラグインが使えない!

$ vim
/home/delphinus/.vim/plugin/fuf.vim の処理中にエラーが検出されました:
行   11:
FuzzyFinder does not support this version of vim (700).
続けるにはENTERを押すかコマンドを入力してください

しょうがないので最新版をソースからもってきてインストールしてみた。これには以下のサイトが非常に参考になった。

オデの日記@WEB系: vimインストールで’os_unix.c:45:30 error: selinux/selinux.h: No such file or directory’というエラーが出る
http://koexuka.blogspot.com/2009/05/vimosunixc4540-error-selinuxselinuxh-no.html

必要なファイルの準備

# ソースのダウンロード
$ wget ftp://ftp.jp.vim.org/pub/vim/unix/vim-7.2.tar.bz2
$ wget ftp://ftp.jp.vim.org/pub/vim/extra/vim-7.2-extra.tar.gz
$ wget ftp://ftp.jp.vim.org/pub/vim/extra/vim-7.2-lang.tar.gz
# パッチのダウンロード
$ mkdir patches
$ cd patches
$ wget ftp://ftp.jp.vim.org/pub/vim/patches/7.2/7.2.001-100.gz
$ wget ftp://ftp.jp.vim.org/pub/vim/patches/7.2/7.2.101-200.gz
$ wget ftp://ftp.jp.vim.org/pub/vim/patches/7.2/7.2.201-300.gz
$ wget ftp://ftp.jp.vim.org/pub/vim/patches/7.2/7.2.301-400.gz
$ curl -O ftp://ftp.jp.vim.org/pub/vim/patches/7.2/7.2.[401-444]
# 予め解凍しておいた香り屋版パッチも入れておく
$ cp ~/vim-kaoriya-w32j/patches/kaoriya-hg.diff .
$ cd ..

最後は香り屋版 Vim に含まれるパッチだ。別に入れなくてもいいのだが、お好みで。

$ tar jxvf vim-7.2.tar.bz2
$ tar zxvf vim-7.2-extra.tar.gz
$ tar zxvf vim-7.2-lang.tar.gz
$ cd patches
$ gunzip *gz
$ cd ../vim72
$ for i in `ls ../patches/7.2.*`; do patch -p0 < $i; done
$ patch -p1 < ../patches/kaoriya-hg.diff

見たまんまである。次はいよいよコンパイル

コンパイルとインストール

$ cd src
$ ./configure --enable-multibyte --with-features=huge --disable-selinux
$ make
$ sudo make install

今回インストールした CentOS には X は含まれておらず、また、SELinux も無効にしてある。それが理由か否か最初はmake できなかったのだが、上に挙げたサイトにある通り、--disable-selinux オプションをつけたことでうまく行った。

100617-0001.png

無事起動して、FuzzyFinder プラグインを使っているところ。画面下部に不自然な空白があるような気もするが、使うに差し支えないので気にしないことにする。ヘルプをよくよく読むと、この空白はプレビュー領域じゃないか! 全然使ってなかったorz ちなみにプレビュー領域の広さは let g:fuf_previewHeight = 5 等と指定して変更するようだ。

おまけ : FuzzyFinder プラグイン

vimに欠かせない3つのプラグイン | tech.kayac.com – KAYAC engineers’ blog
http://tech.kayac.com/archive/vim-3-plugin.html

上記の 3 つの中でも、Vim 使いなら FuzzyFinder プラグインは便利すぎて感動すること必至。始めは色々設定に凝ったのだが、僕には結局次の 2 行だけで十分だったみたいだ。

noremap <C-P> :FufBuffer!<CR>
noremap <C-N> :FufFile!<CR>

コメントを残す