VIM検索ハイライトを削除


13

検索を行った後、それぞれのクエリのすべての一致が強調表示されたままになり、面倒です。これは、それぞれのファイルを閉じた後でも発生します(通常の動作?)。これを削除する方法は?

回答:


15

コマンド:nohlsearchが必要ですが、毎回入力する必要はありません。これを〜/ .vimrcに入れてください:

nnoremap <silent> <leader>n :nohlsearch<CR>

その後、リーダー(デフォルトでは\)を入力しn、一致をクリアします。使用する必要はありませんn。必要に応じて、別のものを選択してください。

必要に応じて、リーダーをより快適なものに再マップすることもできます。コンマを使用します:

let mapleader = ","

(マッピングのに検索をクリアします。)


4
私はただ:nohを実行します。これは、vimが私の意味を知るのに十分です。:)
sml

@scottlまあ(すべてのコマンドにショートカットがあることを思い出してください)、私はまだ頻繁に使用するコマンドをマップしたいです。
テレマコス

10

/qiw772723euzファイルにないものを「検索」するだけです。ハッキーな回避策、私は知っている、私も実際のソリューションに興味がある:)


それはひどいですが、素晴らしく迅速で汚い「解決策」:)
マティアスクル

4

上記の@Telemachusの回答と同様に、@ David WinslowによるSO でのこの回答に関するコメントは、のトグルをマッピングすることを提案しましたhlsearch。以下をマップします。

nmap <silent> <leader>n :set hlsearch!<CR>

nを押すと、ヒットするたびにハイライト検索のオンとオフが切り替わります。


3

私の設定では、コマンドモードでEnterキーを押すだけで、強調表示された検索語をクリアしています。これがその設定方法です。

set hlsearch    " highlight all matched terms
" Pressing return clears highlighted search
:nnoremap <CR> :nohlsearch<CR>/<BS>

補足として、色のスキームに関係なく、検索一致が非常に明確に強調表示されるようにするため、黄色の背景に黒のテキストを付けます。

" When highlighting search terms, make sure text is contrasting color
:highlight Search ctermbg=yellow ctermfg=black
" Do the same for gvim
:highlight Search guibg=yellow guifg=black

0

私はわずかに異なる解決策を持っています。私にとっては、それをなくすために押すことは自然なことだと感じて<esc>います。ただし、それは機能しません。へのマッピング<esc>:nohは厄介な副作用があるため、これもオプションではありません。<Leader>n同様のマッピングは、このような些細な作業のために私にとって直感的ではありません。ただし、<esc>2回押すと、私は一緒に暮らすことができます:

nnoremap <silent> <esc><esc> :nohlsearch<CR>

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.