TIM Labs

Vim Version Manager で複数のバージョンの Vim を簡単に管理する

| コメント(0) | トラックバック(0)

問題

ある程度 Vim を常用していると、それなりの頻度で以下のような問題に遭遇します:

  • HEAD を追いかけていたら手ひどいミスに遭遇した。少し昔のパッチレベルにまで巻き戻したい。
  • 最近のバージョンに更新したらプラグインの動作が変わった。どのパッチレベルで問題が起きたか調べたい。
  • そもそも最近のバージョンに更新するのが何だか面倒。
  • 複数のバージョンを並行して利用できるようにしたい。

しかしこのようなことを手動で管理するのは面倒です。 どうにかしてこのような作業を簡単に行えないものでしょうか。

解決

Vim Version Manager (以下 VVM)を使います。

インストールの手順は以下の通りです:

  1. 以下のコマンドを実行します:

    curl https://raw.github.com/kana/vim-version-manager/master/bin/vvm | python - setup
    
  2. お使いのシェルの設定ファイル(bash なら ~/.bash_login 等)に以下の行を追加します:

    test -f ~/.vvm/etc/login && source ~/.vvm/etc/login
    

一度インストールしてしまえば、以下のような感じで使うことができます:

$ vvm install vimorg--v7-3-254  # オリジナルのバージョン7.3.254を取得してインストールする。
$ vvm install vimorg--v7-3-232  # オリジナルのバージョン7.3.232を取得してインストールする。
$ vvm install macvim--v7.3-53  # MacVimのバージョン7.3.53を取得してインストールする。

$ vvm use vimorg--v7-3-254  # オリジナルのバージョン7.3.254を使う。
$ vvm use macvim--v7.3-53  # MacVimのバージョン7.3.53を使う。
$ vvm use system  # システムに標準でインストールされているVimを使う。

$ vvm rebuild vimorg--v7-3-254 --enable-multibyte  # configureし直してリビルドする。

また、VVM 自身やインストールされる Vim は全て ~/.vvm 直下に格納されるので、 嫌気が差した場合は rm -rf ~/.vvm で綺麗さっぱりお別れすることもできます。

これでパッチの多い日も安心です。やりましたね。

補足

  • コンセプトそのものは RVM からの流用です。 Ruby で便利に使っているものの、Vim にはそれに対応するものがないのでちゃちゃっとでっちあげました。
  • しかし、何分急造なので色々と粗いです。ご意見ご感想ご pull requests は常時受け付けております。
  • 次回は Emacs 編です。

トラックバック(0)

トラックバックURL: http://labs.timedia.co.jp/mt/mt-tb.cgi/254

コメントする

このブログ記事について

このページは、kanaが2011年9月 1日 00:00に書いたブログ記事です。

ひとつ前のブログ記事は「Mercurial でマージをなかったことにする」です。

次のブログ記事は「Mercurial でセントラルリポジトリのマルチプルヘッドを禁止する」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。