SVN::Webでシンタックスハイライト
SVN::WebっていうPerlで書かれたSubversionフロントエンドがあります。基本的にTracのBrowse Sourceのところを切り出しただけな感じですが(ほんとはもっといろいろできるかもしれないけど知らない)、Tracがシンタックスハイライトされるのに対してSVN::Webではされません。
というわけで作ってみた。
たぶん既に誰かやってるだろうけどまあ気にしない。Text::VimColorというモジュールを使いました。
ソースおよび実際に動作している様子は以下で。
MIME判定のところはTracのソースからぱくったりした。
http://onot.in/svnweb/tktsh/view/SVN-Web-View-VimColor/trunk/lib/SVN/Web/View/VimColor.pm
テンプレの変更とかCSSの追加とか必須。
ちなみにText::VimColor絡みで2つ躓いた。
FastCGIだと動かない
CatalystでText::VimColorを使う - masaki@catalyst - Catalystグループを試してみたんだけど依然として直らなかったので放置。よくわかんない。なので今はCGIで動いてる。そもそも実際にVIMを起動してるのがどうかという気もする。
あとhttp://rt.cpan.org/Public/Bug/Display.html?id=27950というのがあって、これはSyntax::Highlight::Engine::Kateを使ってハイライトするみたいです。Kateっていうエディターがあるらしい。