fc2ブログ

ぼちぼち散歩

errormarker.vimでflymakeるために調べてやってみた

errormarker.vim で flymake(Emacsの) る - 8時40分が超えられない - subtechを見て自分もやってみようかと思ったけど,そもそもVimのmakeやcompilerの使い方が分かってなかったのでちょっとだけ調べてみた.あとflymakeがあんまりよく分かっていない.ファイル保存時にsyntaxエラーをハイライトしてくれたらflymakeできてることになってるのだろうか?

まず,errormarker.vimの中身をのぞいてみたところ,QuickFixCmdPost(makeのあと?),getqflist()して,その情報から:signしているみたい.要するに,QuickFixの情報を元にハイライトやらしてるということ.

で,:makeした後に出てくるQuickFixの内容は,makeprg,shellpipe,errorfileとかに設定されたコマンドの実行結果をerrorformatでパースした結果のようだ.

そして,Vimにはデフォルトでいくつかの言語についてはmakeprgやらerrorformatやらの設定が$VIMRUNTIME/compilerに用意されていて,.vim/compilerとかに追加することもできて,例えばPHPの場合は:compiler phpとかで設定できるようになっている.

というわけで,PHPでflymakeしようと思ったら,.vim/ftplugin/php/flyquickfixmake.vimに以下のように書いておけばよい.Rubyの場合は,

sudo gem install vim-ruby
ruby vim-ruby-install.rb

してから.JavaScriptは,

sudo port install javascript-lint

してから,やってみたらそれっぽくなった.

JavaScriptも.vim/compiler/javascript.vimあたりに設定を分離すれば,全て同じような感じになるので,もっと簡単に設定書けそうな気もする.というか,QuickFixの仕組みとerrormaker.vimがよくできているので,最終的にはVimはautocmd BufWritePost * silent make %と書けばflymakeになるよ!ということにならないだろうか?あんまりよく分かってないのであれだけど(^-^;)

スポンサーサイト



2008/07/30 19:38 | Vim | トラックバック(0) | コメント(0)

ページの先頭へ

コメント

コメントの投稿


トラックバック

トラックバックURL
http://relaxedcolumn.blog8.fc2.com/tb.php/126-875cbef5

トップページへ