【Vim】errormarker.vim + Project::Libs で構文チェック

errormarker.vim を使うとコンパイル(Perl なら構文チェック)時のエラーを目立たせてくれるので便利だ。設定方法は以下のリンクを参照。

ErrorMarker.vimでプロジェクトのlibディレクトリを自動的に@INCに追加する – Cside::Tech
http://d.hatena.ne.jp/Cside/20111226/p1
errormarker.vim を使って flymake っぽくするやつを試してみた – ◆F99a.q8oVEの日記
http://d.hatena.ne.jp/f99aq/20080814/1218783740

で、設定してみたのだがうまくいかない…… help compiler などで調べてみると、b:current_compiler という変数が鍵だった。最終的な設定はこんな感じ。

let b:current_compiler='perl'
setl mp=$HOME/.vim/vimparse.pl\ -c\ %\ $*
if !exists('g:perl_flyquickfixmake')
    let g:perl_flyquickfixmake = 1
    au BufWritePost *.pm,*.pl,*.t silent make
endif

1 行目がないとせっかくの errormarker.vim が働かないのでした。なんでだろう?