カラースキーム自動変更プラギン作った

仕事でテキストやソースをゴニョゴニョする時にどうしてもサーバを直接触らないといけないってことがありまして、
その際にどこをいじってるかが一目で判ると安心して作業ができるでしょう。
まぁ普通に思いつくのがカラースキームで、これが自動で切り替わってくれたらなーと思いプラギンを作ってみました。

saihoooooooo / vim-auto-colorscheme

使い方としては.vimrcにバッファ名に対する正規表現とそれに対応するカラースキームを二次元リスト形式で用意しておきます。
またデフォルトのカラースキームも書いておく必要があります。
こんな感じ。

let g:auto_colorscheme_default = 'default'
let g:auto_colorscheme_config = [
\     ['^\\\\win-file-server\\', 'desert'],
\     ['^/Users/ore/works/myproject/trunk/', 'blue'],
\     ['^/Users/ore/works/myproject/', 'evening'],
\ ]

これでバッファを切り替える度にカラースキームが自動で切り替わってくれます。
イベントはBufEnterを利用しています。

注意としてはカラースキームはグローバル設定なのでウィンドウ毎に保持してくれません。
一つのタブ内にカラースキーム設定の違うバッファを複数開いちゃうとウィンドウ移動するだけでポケモンフラッシュが発生してしまいます。
まぁここはどうしょうもないかな。

あと本当はデフォルトのカラースキームを設定に書くのは邪魔臭いのでやめたかったんですが、
.vimrcに書かれたカラースキームの設定より後でプラギンが読み込まれるようなのでColorschemeイベントをキャッチすることもできず諦めました。
なんかいいやり方があれば教えて下さい。

準備は整ったので、あとは良い感じのカラースキームを探さねば。