universally-challenged compiler plugin

ひょんなことから $VIMRUNTIME/compiler を覗いてみて tidy.vim ( HTML Tidy 用 ) とか perl.vim ( perl 用 ) を見つけてちょいと試してみたんだけど結論として ( そのままでは ) 使えなかった。

  • tidy.vim
    • tidy の version の違いによる option の設定はこっちのが細かくていいんだけど -raw 指定してないので non-alphabetical な文書に対して使い物にならん。あと error か warning か info かの情報を落としてしまっているのでちょっとダメな気も。
  • 両方
    • 'makeprg' に target file に裸の % が指定されているので環境によっては必ず失敗する。まぁその環境って具体的に言うと 'shell' をいじってない win32 なんだけど。 cmd.exe は実行 file やその引数が空白文字を含むと double quotation で括られてなきゃいけないんだけど裸の % は展開されてももちろん裸なわけなのでたとえば "Documents and Settings" 以下 ( My Document の default ) で作業してたりすると「んな file はねぇよ」と怒られる。
    • というかそもそも論として 'makeprg' は「 make するための program 」を指定するための option なので target file まで指定してしまうのはおかしいはず。なんだけど :help 'makeprg' に以下のように書かれててあーここからおかしいのかと思った。

This option may contain '%' and '#' characters, which are expanded to the current and alternate file name. |:_%| |:_#|

(訳)この option は現在もしくは代替 buffer の file 名に展開される '%' や '#' を含んでもよい。 |:_%| と |:_#| を参照。

で、 maintainer に patch 投げるのもめんどくせーのでやっぱり自前で書いたのを使うことに。てか気が向いたら誰かやってよ。

余談だけど tidy.vim の maintainer の名前どっかで見たことあるなと思ったら vimp commiter の Doug Kearns 氏だった。狭い世間だなぁ。