vim可视化块搜索/替换仅替换行上的第一次出现

时间:2012-12-03 07:45:21

标签: regex vim replace

我正在以可视模式尝试以下命令,尝试在文本块上进行全局查找/替换

  

: '<,' > S /红/绿/克

文字看起来像这样

  红色红色,蓝色,红色,红色,红色,蓝色

结果

  

绿红红蓝红红红蓝

而不是我期望的 g 开关:

  绿色绿色绿色蓝色绿色绿色绿色蓝色

知道导致这种行为的原因是什么?如果是默认行为,我如何使 g 真正真正全球?

由于

2 个答案:

答案 0 :(得分:8)

你可能:set gdefault;这颠倒了g替换标志的含义。您可以通过:verbose set gdefault?查看设置的位置,并通过:set nogdefault暂时将其关闭,但您可能希望找到设置的位置并将其从中删除。

答案 1 :(得分:0)

我在我的vim中尝试了这个并得到了正确的结果:

green green green blue green green green blue

您的.vimrc中可能存在更改默认行为的内容。你想把它附加到这个帖子吗?