当我
搜索
/\vSEARCHTERM
Vim从光标位置向下开始搜索,它将环绕到顶部。然而,当搜索&更换使用
:%s/\vBEFORE/AFTER/gc
Vim从文件的顶部开始。
有没有办法让Vim搜索&从光标位置开始替换并在到达结束时绕回到顶部?
使用两步替换来实现行为并不难:
:,$s/BEFORE/AFTER/gc|1,''-&&
首先,从每个行开始执行替换命令
当前一个文件结束。然后,that:substitute命令是
重复相同的搜索模式,替换字符串和标志,
使用:&命令。然而,后者执行替换
在从文件的第一行到行的行的范围上
前一个上下文标记已设置,减1。自第一个
:substitute命令用于存储光标位置
替换,由”寻址的行是行的
在运行替换命令之前的当前一个。
注意,第二个命令(在|符号后面)不需要任何当第一个的模式或标志改变时改变。