grep
Vim で使用する場合、quickfix の結果を色付けするにはどうすればよいですか?
私が試してみました:
set grepprg=grep\ --color=always\ -n\ $*\ /dev/null
しかし、それは機能していません。
私は cygwin で Vim 7.4 を使用しており、Linux Mint 15 でも試しました。助けてください、ありがとう。
を使用すると、出力が端末ではない場合でも、常にANSI カラー シーケンス(のようなもの) を--color=always
出力するように grep に指示します。^[[32;40m
残念ながら、Vim はこれらのシーケンスを理解できません。独自の (正規表現ベースの)構文の強調表示があります。
AnsiEsc.vimプラグインは前者を後者に変換できますが、ここでは役に立たないと思います。(簡単に試してみましたが、期待どおりに機能しませんでした)。
渡された引数を にフィードするカスタム:Grep
コマンドを作成:grep
し、クイックフィックス ウィンドウの適切な構文強調表示を定義できます。grep
問題は、と Vimの正規表現方言が異なることです。を使用することで、その問題を回避できます:vimgrep
。
実際、最も簡単な解決策は、最初に Vim 内でパターンを検索することです。
/pattern
次に、実際の grep を実行します。
:vimgrep // file1 file2
を使用:set hlsearch
すると、一致するものが自動的に強調表示されます (他のものを検索しない限り、クイックフィックス ウィンドウを含むすべてのウィンドウで)。