Deselecting matching strings after search-and-replace in Vim
Solution 1
:nohlsearch
will stop highlighting it but keep it as the active search pattern. (It will start being highlighted on n
etc.)
:let @/=""
will clear the search pattern register (so that n
etc. won't work).
A common thing I've seen in Vim is map <Leader><Space> :noh<CR>
; this has the result that (assuming the default leader, backslash) \Space will stop highlighting the current match.
Solution 2
Just search for a string that is not on the page:
/poop
Solution 3
:nohlsearch
will remove highlighting from the current search. Highlighting will return on your next search.
:set nohlsearch
will disable highlighting for your current vim session.
If you want to disable highlighting completely, add :set nohlsearch
to your .vimrc
simont
Updated on July 27, 2022Comments
-
simont 10 months
I've got a file (LaTeX) which contains lines I wish to comment out.
The regex that I use after visually-selecting the relevant block is:s/^/%/g
, which works fine. However, vim then highlights every matching occurrence of the first part of the regular expression used in the replace, (highlights the first character on the beginning of every line).The selection changes if I do another search, or another search-and-replace, but I can't work out how to turn it off without doing a 'useless' search.
It's particularly annoying if I search for whitespace (because having every '
' highlighted in a text file is visually annoying).
How do I de-select the matching strings after the search-and-replace has been completed?
-
Chris Morgan about 11 yearsIt might be worth while emphasising the difference between
:nohlsearch
and:set nohlsearch
... it's easy to not quite notice. -
Tim Pote about 11 yearsIt might be worth noting that, if you decide to go with a key mapping, you might want to set your mapping to toggle highlighting (with
:set hlsearch!
) instead of simply disabling it. -
Chris Morgan about 11 years@TimPote: the mapping is typically done with
:noh
, not'nohls'
. Thus as soon as you search for something new, it'll start highlighting again. -
jpaugh almost 8 yearsThis does answer the question in the easiest way; but in practice, @ChrisMorgan's answer is much simpler when you're talking about tens of searches per editing session.
-
Wilson Freitas about 7 yearsYes, this does answer the question. I've been using this solution for years because it is easy to remember and it works.
-
RajeshM over 4 yearsThis is what I do too. Just came here to see if there's something built into vim for this..