在 Vim 中搜索和替换后取消选择匹配的字符串

问题描述 投票:0回答:5

我有一个文件(LaTeX),其中包含我想注释掉的行。
我在目视选择相关块后使用的正则表达式是

:s/^/%/g
,效果很好。然而,vim 然后会突出显示替换中使用的正则表达式第一部分的每个匹配项(突出显示每行开头的第一个字符)。

如果我进行另一次搜索或另一次搜索和替换,选择会发生变化,但我无法弄清楚如何在不进行“无用”搜索的情况下将其关闭。

如果我搜索空格,这会特别烦人(因为在文本文件中突出显示每个“

”在视觉上很烦人)。

搜索替换完成后如何取消选择匹配的字符串?

vim
5个回答
18
投票

:nohlsearch
将停止突出显示它,但将其保留为活动搜索模式。 (它将开始在
n
等上突出显示)

:let @/=""
将清除搜索模式寄存器(这样
n
等将不起作用)。

我在 Vim 中看到的一个常见的事情是

map <Leader><Space> :noh<CR>
;结果是(假设默认引导符,反斜杠)\Space 将停止突出显示当前匹配项。


9
投票

只需搜索页面上没有的字符串:

/poop 

5
投票

:nohlsearch
将从当前搜索中删除突出显示。突出显示将在您下次搜索时返回。

:set nohlsearch
将禁用当前 vim 会话的突出显示。

如果您想完全禁用突出显示,请将

:set nohlsearch
添加到您的
.vimrc


0
投票

我知道这是不久前的事,但我不想重新映射,所以我一直在做的是 / tab 因为我使用空格,但如果你不使用空格,你可以做相反的事情。如果您同时使用两者,请停止


-1
投票

将其添加到您的 vimrc 中,完成后 - 在我的情况下按 <,> + Enter 停止突出显示

     map <silent> <leader><cr> :noh<cr>
© www.soinside.com 2019 - 2024. All rights reserved.