Menu

vim との連携方法

Anonymous
2012-08-17
2012-08-17
  • Anonymous

    Anonymous - 2012-08-17

    スクリーンショットにある様に、vimエディタと連携させたいのですが、どこかに方法が書かれていないでしょうか?
    vimのこの機能を使えというヒントでも構いません。

    宜しくお願いします。。

     
    • Yutaka Yanoh

      Yutaka Yanoh - 2012-08-17

      お問い合わせありがとうございます。

      AdLint の解析コマンドは、gcc などのコンパイラと同じようなフォーマットで stderr に警告メッセージを出力できます。

      % make verbose-all
      

      とした時には、stdout に進捗表示を出力する代わりに、警告メッセージの stderr への出力が抑止されます。

      % make all
      

      とすれば、進捗表示が無い代わりに、通常のビルド時と同じように stderr へ警告メッセージが出力されます。

      したがって、Vim に AdLint での解析を通常のビルド処理だと勘違いさせることで連携可能です。

      具体的には、Vim を起動して下記の手順を試して見てください。

      1. makeprg 値の確認

      :set makeprg? の結果がお使いの make コマンドを示していることを確認してください。

      2. カレントディレクトリの確認

      :pwd でカレントディレクトリが解析対象プロジェクトの adlint ディレクトリであることを確認してください。
      異なるディレクトリにいる場合は、:cd <パス> でカレントディレクトリを移動できます。

      3. 解析を実行

      :make コマンドで Vim から make コマンドを起動します。
      以前に解析済みの場合は、:make clean all として解析結果を削除してから再解析してください。

      4. 解析結果の確認

      解析が完了すると、Vim 画面の下部に Quickfix バッファが開くはずです。開かない場合は、:copen を実行してください。
      最初の警告メッセージがハイライトされ、画面上部のバッファには該当ソースの該当位置にカーソルが移動した状態になるはずです。

      次の警告に移動する場合は、:cn コマンド、前の警告に戻る場合は、:cp コマンドを実行してください。
      また、Quickfix バッファ内で Enter を押すと、カーソル行の警告に該当するソースへジャンプできます。

      参考情報

      さらに詳しい情報については、Vim のヘルプを :help quickfix でご参照いただけます。

       

      Last edit: Yutaka Yanoh 2012-08-17

Anonymous
Anonymous

Add attachments
Cancel