假设我有十行,并且我想将文本添加到这些行中出现的某个单词之前?它不必位于行的开头。
来自:
sdfsd foo sdfsd
sfsd foo fsdf
sdfsdf foo sdfsdf
至:
sdfsd bar(foo sdfsd
sfsd bar(foo fsdf
sdfsdf bar(foo sdfsdf
是否也可以不仅在 bar(
前面加上 bar(
),而且实际上用 bar(foo)
包围 foo
?
我还想要一种将 //
注释附加到多行的快速方法(C 风格注释)。
我使用 Vim/GVim 7.2。
最佳答案
转到第一个foo
,按Ctrl-v进入可视 block 模式并按下,直到所有带有foo
的行已标记。然后按 Shift-i 在( block 的)开头插入。完成后按 Esc,插入的字符将添加到标记 block 左侧的每一行。
要在末尾插入,请再次按 Ctrl-v,向上/向下移动以标记所有受影响的行,然后按 End 或$ 将选择范围扩展到行尾。现在,您可以按 Shift-a 在所有行的末尾追加,就像之前使用 Shift-i一样kbd>.
视觉选择也可以通过普通的移动命令来完成。因此,要在 C 中注释整个 block ,您可以移动到左大括号并输入 Ctrl-v % Shift -i // Esc。
关于vim - 如何在 Vim 中将文本插入多行中间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1174274/