题
我在文件中搜索“nurple”。我找到了,太好了但现在,每次出现的“nurple”都会以黄底黑字呈现。永远。
永远,也就是说,直到我搜索我知道不会找到的东西,例如“asdhfalsdflajdflakjdf”,这样它就会清除以前的搜索突出显示。
当我完成搜索后,我不能直接按一下魔法键来取消突出显示吗?
解决方案
只需将其放入您的 .vimrc 中即可
" <Ctrl-l> redraws the screen and removes any search highlighting.
nnoremap <silent> <C-l> :nohl<CR><C-l>
其他提示
:noh
(nohighlight 的缩写)就可以了。
/lkjasdf
一直比 :noh
为我。
" Make double-<Esc> clear search highlights
nnoremap <silent> <Esc><Esc> <Esc>:nohlsearch<CR><Esc>
那么我更喜欢这个:
map <F12> :set hls!<CR>
imap <F12> <ESC>:set hls!<CR>a
vmap <F12> <ESC>:set hls!<CR>gv
为什么?因为它 切换 开关:如果高亮显示,则按 F12 将其关闭。反之亦然。HTH。
将以下行添加到您的末尾 .vimrc
完全防止突出显示:
set nohlsearch
*:noh* *:nohlsearch* :noh[lsearch] Stop the highlighting for the 'hlsearch' option. It is automatically turned back on when using a search command, or setting the 'hlsearch' option. This command doesn't work in an autocommand, because the highlighting state is saved and restored when executing autocommands |autocmd-searchpat|. Same thing for when invoking a user function.
我发现它就在下面 :help #
, ,我一直点击它,它突出显示当前页面上的所有单词,就像当前页面一样。
我经常搜索,发现映射下划线键以删除搜索突出显示很有用:
nnoremap <silent> _ :nohl<CR>
我认为最好的答案是有一个领导捷径:
<leader>c :nohl<CR>
现在,每当您的文档中充满了突出显示的术语时,您只需点击 , + C (我将我的领导者映射为逗号)。它工作完美。
我认为这个答案在“Vim 清除上次搜索突出显示“ 更好:
:let @/ = ""
我的 .vimrc 中有这个:
nnoremap ; :set invhlsearch<CR>
这边走, ; 将切换搜索突出显示。通常情况下, ; 键重复最新的 t/T/f/F 命令,但我从未真正使用过该功能。我发现此设置更有用,因为我可以非常快速地打开和关闭搜索突出显示,并且可以轻松地一目了然地了解我的搜索结果在哪里。
有 hlsearch
和 nohlsearch
. :help hlsearch
将提供更多信息。
如果你想绑定 F12 要打开/关闭它,您可以使用以下命令:
map <F12> :nohlsearch<CR>
imap <F12> <ESC>:nohlsearch<CR>i
vmap <F12> <ESC>:nohlsearch<CR>gv
另外,如果您想要一个工具并确保下次搜索时重新激活突出显示,您可以使用此功能
nmap <F12> :set hls!<CR>
nnoremap / :set hls<CR>/
我将以下映射添加到我的 ~/.vimrc
map e/ /sdfdskfxxxxy
在 ESC 模式下,我按 e/