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
Posted at 04:19 in | WriteBacks (0) | Edit