【发布时间】:2011-09-07 23:58:47
【问题描述】:
我经常在列中有文本,需要替换一些东西而不破坏同一行上的类似内容......一个简单的例子如下:
假设我已经用 vim 可视块模式将文本高亮显示为灰色,并且想将 80 替换为 81;但是,我只希望在突出显示的可视块内进行替换。
我已经尝试过 Cntlv : s/80/81/g;但是,这会替换视觉块内部和外部的文本。 (根据 Randy 的反馈,这是因为 : s 是逐行命令)。
我知道我可以在这个特定实例中使用逐行可视块替换(Shiftv : s/80\.1/81.1/g);但是,我正在尝试为无法在非逐行可视块中替换的问题找到一个通用的解决方案(这不是可视块模式应该帮助解决的那种问题吗?)。像: s/80/81/gc 这样需要确认的答案不是我想要的。
为了清楚起见,我将重申这个问题:如何使用 vim 的可视块模式突出显示将 80 替换为 81?
【问题讨论】:
-
仅供参考...对于那些在 MS Windows 下使用
gvim的人,可视块模式是<cntl-q>,因为<cntl-v>粘贴复制缓冲区