+xterm_clipboardでvimをコンパイルする

Linuxのterminalでvimを使うとき、他のアプリケーションとの間でコピー&ペーストをしたければ、vim+xterm_clipboardになるようにコンパイルしないといけない。Ubuntuに入っているvimは最初から+xterm_clipboardらしい。

自分のvimがどうなっているかはvimのコマンドラインで次のように打てば確認できる。

:version

xterm_clipboardの前に+がついていれば問題なし。-がついていたらコンパイルし直す。

vimの最新版の取り方はThe Vim Mercurial repositoryに書いてある。

$ hg clone https://vim.googlecode.com/hg/ vim73

+xterm_clipboardになるようにvimをコンパイルするためには、次の3つのライブラリが必要。これまた大体のUbuntuでは最初から入っているらしい。

libx11-dev
libxt-dev
libgtk2.0-dev

ここまでできたらconfigureする。

$ cd vim73
$ ./configure --with-features=normal --enable-gui=gtk2 --with-x --enable-multibyte

configureするときは色々オプションを付けられる。僕は他にも--enable-rubyinterpとか--enable-luainterpをつけてる。

configureのログを確認したければsrc/auto/config.logを見ればいい。X11がheaderに入ったかどうかを手っ取り早く確認したければconfig.hをgrepすればいい、とstackoverflowで見た(→Compile vim with clipboard and xterm)。

$ grep X11 src/auto/config.h
#define HAVE_X11 1
#define HAVE_X11_SUNKEYSYM_H 1
/* #undef HAVE_X11_XPM_H */
/* #undef HAVE_X11_XMU_EDITRES_H */
#define HAVE_X11_SM_SMLIB_H 1

headerの中でHAVE_X11がdefineされていればok。コンパイルしてインストールする。

$ make
$ make install

【補足】

configureとか何度もしていて、意図した通りにconfigureできていなかったらキャッシュを消してみるといいかも。

$ rm src/auto/config.cache