我真的很喜欢Vim的incsearch功能。

例如,如果在正常模式下,我键入:

:%s/potato/

/>
我能否在文件中突出显示所有potato,就像我编写时用incsearch突出显示它们一样?
/potato




使用正则表达式已经对我有很大帮助。当我写这篇文章时,一个非常非常好的地方是:

:%s/potato/banana/


它将用potato替换banana,并突出显示它们-也许是替代品应该使用其他颜色。在我按Enter之前,它不会“提交”更改。)

我现在正在使用neovim,以防万一。

评论

你是说搜索吗? hlsearch应该可以正常工作,如果我输入:%s / potato / \ 0 /来替换马铃薯,那么我看到所有匹配项都突出显示了。

确实,我的意思是搜寻。替换为我的问题,谢谢。
它可能不是犹太洁食,但:/ pattern 可以正常工作,然后添加%s和replace字符串。然后,它们会再次优化搜索并使用CTR-R /粘贴到:%s /
的搜索部分
附加到@jjaderberg::%s / potato / carrot / c将使您跳过(“确认”)替换(添加g替换同一行上的所有实例),并使用hlsearch提前看到它们。 br />

#1 楼

经过一番搜索,我发现了这个NeoVim问题,该问题又被该PR关闭,这使我进入了inccommand设置。将此添加到我的配置文件中:

set inccommand=nosplit


使NeoVim的行为几乎完全符合我在问题中的要求。我没有找到与常规Vim相当的东西,但我并没有非常积极地寻找它。

评论


在您的情境中,为了研究替代品(成为懒惰的Vimmer并缓慢地采用新事物),我可能会搜索具有普通渐进式搜索上限的马铃薯(/ potato),然后用空搜索代替:%s // banana。但是我不知道在其他方面将它与设置inccommand = nosplit相比如何。

– jjaderberg
17年2月2日,下午1:48

谢谢!我不知道“空搜索技巧”。当我在服务器上运行vim时,我会尽力记住它

–kikito
17年2月2日,11:39

@jjaderberg顺便说一句,我非常喜欢inccommand设置,以至于我制作了一个在工作中显示的asciinema,以防它激发您尝试Neovim:asciinema.org/a/3lzlyzn23c52wwp9mk644ft20

–kikito
17年2月2日在11:41

@jjaderberg我认为这是值得回答的。

–丰富
17年2月3日,9:43

不幸的是,与腹水的联系现在已经消失了。

– sjy
19-10-26在2:40