2

基本的に、Vim が検索を強調表示する方法は私を不快にさせます。基本的に検索を行い、次に /asdf と入力するか、vimrc に次のようなショートカットを作成する必要があります。

nn <silent> <leader><space> :noh<CR>

それは私が持っているものです。しかし、それはまだあまりにも多くの精神的な仕事です。基本的に、検索を行うときは (現在のように) 強調表示を有効にしたいのですが、(n/N を使用して) 検索を繰り返す以外のことを行う場合は、強調表示をオフにします。それが基本的に私のワークフローなので、自動化できないかと思っています。また、検索して n/N 以外のことを行い (強調表示をオフにする必要があります)、n/N をもう一度押すと、再度有効になります。

何か案は?

4

2 に答える 2

3

それは難しいです。ひとつのアイデアは

:autocmd CursorHold * call feedkeys(":noh\<CR>")

(は関数や autocmds では効果がないfeedkeys()ため、使用する必要が:nohlsearchあります。) これにより、カーソルを数秒間停止するたびに強調表示がクリアされます。InsertEnterまたは などの他のトリガーを追加できますCursorHoldI

CursorMoved検索とn/Nジャンプも同様に行われるため、機能しないのは です。これらのコマンドをオーバーロードし、ジャンプ後にカーソル位置を保存し、位置が異なる場合にのみ強調表示をクリアするように autocmd を変更する必要があります。

私がすること: 私はにEnterマッピングしました:nohlsearch。すばやく簡単にアクセスできます。

于 2013-02-01T20:25:28.037 に答える
0

次の方法でオンまたはオフにできます。

:set hls

また

:set nohls

私はにF7マッピングしましたset hls!

noremap <F7>    :set hls!<CR>
于 2013-02-01T20:31:52.870 に答える