2008-03-01
Vimから実行したコマンドの実行結果
「v:shell_error」には、Vimから実行したコマンドの戻り値が入るみたい。
ファイルタイプがRubyのとき、保存時に構文チェックをするVimスクリプト。構文誤りがあったときだけメッセージを出します。
autocmd BufWritePost * :call RubySyntaxCheck()
fun! RubySyntaxCheck()
if &ft == "ruby"
let syntax_check_result = system("/usr/bin/ruby -c " . expand("%"))
if v:shell_error != 0
echomsg syntax_check_result
endif
unlet syntax_check_result
endif
endfun