视觉选择当前搜索结果


9

我已经hlsearch设置好了,但是有时它会让我觉得我在视觉上选择了搜索词,并且可以点击c更改它。

搜索的字词可能不是一个简单的字母,单词,甚至是行数-无论如何,我不想计数。

有没有办法vh(或ch说)h在当前突出显示停止之前在哪里运行?

Answers:


14

您可以gn为此使用运动,它选择下一个搜索到的元素。

您可以这样使用它:

/foo<CR>
gn            -> select the next "foo"
sbar<Esc>     -> (optional) substitute it with "bar"

奖励:要.重复搜索和更改,请使用a c在一个命令中完成所有操作:

/foo<CR>
cgnbar<Esc>
...           -> find and change the 3 next foo

1
太棒了!谢谢。(像我这样的人错过了为什么.要重复整个动作,而无法使它重复工作-请仔细阅读- c首先!不能要求更好。)
OJFord

3
请注意,您还可以gN用来直观地选择上一个匹配项。
statox

这和按n进入下一个搜索结果之间有什么区别?
user1717828 '16

它也会进行更改,因此您无需重复n.(下次发生,请重复修改),只需按.(重复修改,即“更改下一次发生”)即可
nobe4

确实,当.调用时gn,原始的foo已经消失了,因此Vim搜索下一个foo。无论如何(以及更多),这样gnn也会做到。但是,和一样n,请注意,这仅在bar不包含时才有效foo
joeytwiddle
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.