が「.log」ファイルの場合、ファイル内のキーワード「dog」を含むすべての行を赤で表示し、ファイル内のキーワード「cat」を含むすべての行を黄色で表示します。これは、vim で「.log」ファイルを開くと自動的に行われます。これを行う方法はありますか?
質問する
273 次
1 に答える
3
まず、色をハイライト グループとして定義します。
:hi Dogs ctermbg=red guibg=red
:hi Cats ctermbg=yellow guibg=yellow
:match
コマンドまたはmatchadd()
関数を使用して (ウィンドウ ローカルの) ハイライトを追加できます。キーワードを含む行全体を照合すると、すべてが強調表示されます。ログファイル用に:autocmd
インストールされます(ファイルパターンをハードコーディングする代わりに、 Vimのファイルタイプ検出を使用することをお勧めします)。
:autocmd BufWinEnter *.log call matchadd('Dogs', '^.*dog.*$') | call matchadd('Cats', '^.*cat.*$')
の利点は:match
、構文の強調表示を妨げないことです (これは代替手段です)。欠点は、同じウィンドウでログ以外のバッファーを表示すると、強調表示が持続することです。(autocmd を追加することでこれを修正できますが、簡単ではありません。)
于 2013-10-18T16:05:00.940 に答える