Vimperator の設定をプロファイル毎に使いわけよう! - Vimperator Advent Calendar 2012 二日目

Vimperator Advent Calendar 2012 二日目担当、日本目光会の anekos です。
今日は、Firefox / Vimperator 使い込みのために、プロファイル毎に Vimperator の設定を分ける方法を紹介します。

(以下、Windows ユーザの方は、「.vimperatorrc」を「_vimperatorrc」に、「.vimperator/」を「vimperator」に置き換えて読んでください。

まずはじめに。

今使っている設定ファイルはどこかに退避しておきましょう。
(ただし、「.vimperator/info」 ディレクトリだけはそのままにしておきましょう。)


そして、以下のファイルを
https://raw.github.com/vimpr/vimperator-rc/master/anekos/.vimperatorrc_for_root
現在の .vimperatorrc の代わりに設置します。
(ファイル名を .vimperatorrc にするのをお忘れなく)


これが、ローダーとなり、プロファイル毎の設定を自動的に読んでくれます。

プロファイル用のディレクトリの作成

.vimperatorrc のあるディレクトリに、.vimperator/ ディレクトリがあるはずなので、 そこを開きます。
そして、プロファイル名のディレクトリを作成します。
これが、プロファイル毎の設定を設定するディレクトリになります。
(デフォルトのプロファイル名は「default」のはずです)


そして、今作成したディレクトリに、先程退避した設定ファイル郡を移動します。
つまり、プロファイル毎のディレクトリが、「~/.vimperator/default」だとしたら今までの「.vimperatorrc」ファイルは「~/.vimperator/default/.vimperatorrc」に設置することになります。


他のプロファイルにも対応したい場合は、同様にプロファイル毎のディレクトリを増やすだけで出来ます。

その他、このローダーのメリット

このローダーは、通常の「.vimperatorrc」だけでなく他の rc も自動的に読んでくれるようになっています。


具体的には、以下のファイルを読みに行きます。

.vimperatorrc
.vimperatorrc.local
.vimperatorrc.js
.vimperatorrc.local.js
.vimperatorrc.after
.vimperatorrc.local.after
.vimperatorrc.after.js
.vimperatorrc.local.after.js

*.js は、見た通り JavaScript 用で、:js コマンドなどを使わずにそのまま JavaScript を書くことができます。


after がつくものは、読み込みのタイミングが違い、プラグインなどがロードされたあとに、読み込まれます。
つまり、プラグインのコマンドなどをそのまま書くことができます。
(通常の、rc では、rc の読み込み段階ではプラグインが読み込まれていないので、プラグインが追加するコマンドやオプションは書いてもエラーになってしまいます。)
逆に、 let のオプション設定は、ここに書いてはいけません。通常の rc に書きましょう。


local のつくものは、つかないものと別に代わりはありません。
なので、作れなくても良いでしょう。
これは、Vimperator の設定ファイルを公開したいが公開したくない内容もある、という場合に使います。
(仕事用の URL を含むコマンドや設定があるなど)

全プロファイル共用の設定

そういうものがある場合は、別途どこかに共通設定ファイルを書いておき、
:so コマンドで読み込んでやると良いでしょう。

おぼおおおおおおお

わからなかったら、vimperator 関連のコミュニティや Twitter で聞きましょう。

https://twitter.com/anekos/
http://lingr.com/room/vimperator