Windows ボックスで Vim を実行していますが、pc_lint の使用を Vim に統合したいと考えています。Vim 内から lint を実行する方法はわかりましたが、出力を Vim に取得する方法と、理想的には出力を解析して、エラー メッセージを介して正しいコード行にジャンプできるようにする方法がわかりません。
これを行うプラグインを知っている人はいますか?見つかりませんでした。
この Vim 初心者へのアドバイスはありますか?
乾杯、アンドリュー
私はあなたが:redir
コマンドを望んでいると信じています。
適切な説明については、このリンクを参照してください: http://vim.wikia.com/wiki/Capture_ex_command_output
実は、もっと簡単な方法は次のとおりです。
:r ! command
これにより、コマンドの結果が現在のバッファーに読み込まれます。
OK、私はそれを働かせました。
EFM 設定が正しく機能していませんでした。
私の pc_lint 設定ファイルには、次の設定があります。
-"format=%(%f %l %C %) %t %n: %m"
そして、私のvimrcファイルには次の設定があります:
set efm=%f\ \ %l\ \ %c\ \ %m
私のvimrcには次のスクリプトもあります
" map f4 to run lint
map <f4> :call LintProject()<cr>
"use windows default shell
set shell=cmd.exe
function! LintProject()
new "open a new buffer
exec 'silent r! lint-nt c:\lint\vim\std.lnt *.c -b'
exe "normal ggdd" "remove blank line at the top of the file
caddb "add content of the buffer to the quickfix window
close "close the buffer
copen "open quickfix window
endfunction
これで、通常どおりクイックフィックス ウィンドウ内を移動できます。Enter キーを押すと、エラーのあるファイルに移動します。
素晴らしい!!!