KaoriYa-Vimをコンパイル

以前、UbuntuでKaoriYa-Vimをコンパイル - 四角革命前夜というものを書きました。
で、最近Vimを更新してなかったし、そろそろコンパイルし直すかなーとパッチを見てみたら分割されていたり、パッチのリポジトリができていたり……
なんとか試行錯誤して、たぶんKaoriYa-VimであろうVimコンパイルできたので、ここにメモしておきます。

必要なもの

MQを使用するため、~/.hgrcには

[extensions]
mq =

を記述する必要があります。

リポジトリのクローン

本家Vimリポジトリをクローンしてきます。また、パッチのリポジトリも一緒に含めてコンパイルするために以下のコマンドを実行します。

$ hg qclone https://vim.googlecode.com/hg ./vim -p https://bitbucket.org/koron/vim-kaoriya-patches

こうすると、Vimリポジトリを./vimに、./vim/.hg/patchesにvim-kaoriya-patchesのパッチが配置されます。
パッチリポジトリ(?)を./vimに含めてクローンという感じになります。

パッチリポジトリをupdate

パッチリポジトリのupdateをします。Gitで言うcheckoutです。

$ hg log --mq | less

を見ると、Vim 7.3.1314の次に対応しているバージョンが7.4aなので、私のような弱小Vimmerは7.3系の最終を使った方が良いはず。
というわけで7.3.1314をコンパイルするため、チェンジセットa425d47にします。

$ hg update a425 --mq

Vimリポジトリをupdate

Vim本体の方もバージョンを合わせます。

$ hg tags | less

を見ると、v7-3-1314というタグがあるので、パッチリポジトリのときと同じようにupdateします。

$ hg update v7-3-1314

ついでに一応ブランチを切っておきました。まあ特に必要もないかと。前回の名残りというか。

$ hg branch kaoriya-7.3.1314

パッチ一覧

$ hg qseries

とすると、パッチの一覧が表示できます。

$ hg qguard -l

とすると、-no_kaoriyaとか+experimentalとかパッチの一覧とともに表示されると思います。
+experimentalなパッチも適用したい、という場合は多分以下のコマンドを実行すれば良いのではないかと。

$ hg qguard +experimental

まあ、名前の通りなので私は付けませんでしたが……

パッチの適用

$ hg qpush -a

で全てのパッチを適用します。ただし、上記のコマンドを実行していない場合は+experimentalなパッチは適用されないです。
この状態で

$ hg qseries

を見てみると、先ほどと表示が異なっている事がわかるかと。

コンパイル

あとはこのパッチが適用された状態で

$ ./configure # (options...)
$ make clean all install

とかをすると良いのではないでしょうか。


Mercurialを久しぶりに使いましたし、使っていた当時もMQはほとんど使った事なかったので勉強になりました。
でもやっぱり情報少なくて結構苦労したかも……
ともあれ、これでまた快適Vimライフを送れると思います。みなさんもお試しあれ。