Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VIM:对文件替换使用增量搜索_Vim_Replace - Fatal编程技术网

VIM:对文件替换使用增量搜索

VIM:对文件替换使用增量搜索,vim,replace,Vim,Replace,我知道,incsearch设置控制在键入时如何在vim中突出显示搜索。我希望在使用replace命令(:%s/foo/bar/)时进行相同的增量搜索和高亮显示。最简单的方法是像普通方法一样进行搜索,使用'incsearch'帮助确保模式与您想要的匹配。一旦你确定了,你可以 在:%s//bar/中省略搜索模式。当没有指定的搜索模式时,将使用/寄存器的当前值,这将是您刚才进行的搜索 使用Ctrl+r/(请参见:help c_Ctrl-r)或Ctrl+rCtrl+o/(如果搜索包含控制字符,如^H)

我知道,
incsearch
设置控制在键入时如何在vim中突出显示搜索。我希望在使用replace命令(
:%s/foo/bar/
)时进行相同的增量搜索和高亮显示。

最简单的方法是像普通方法一样进行搜索,使用
'incsearch'
帮助确保模式与您想要的匹配。一旦你确定了,你可以

  • :%s//bar/
    中省略搜索模式。当没有指定的搜索模式时,将使用
    /
    寄存器的当前值,这将是您刚才进行的搜索
  • 使用Ctrl+r/(请参见
    :help c_Ctrl-r
    )或Ctrl+rCtrl+o/(如果搜索包含控制字符,如
    ^H
    )将搜索模式插入到
    :s
    命令中。如果您希望对模式进行一些最终调整,或者希望将其包含在命令历史记录中,以便即使在执行另一次搜索后也可以重用它,则此选项非常有用

您可以在命令末尾添加
c
,如下所示:

:%s/foo/bar/c
它将遍历
foo
的所有实例,并在将其更改为
bar
之前请求您确认(这就是
c
的含义)


但这并不完全是你想要的。

酷,我不知道第二种可能性。仍然想知道
incsearch
是否/为什么不可能只应用于
:%s
。。。这是有道理的!警告:如果搜索模式中有控制字符,请使用
CTRL-R CTRL-O/
而不是
CTRL-R/
@Benoit更安全,谢谢您的提示。我不知道。