6

我想在 Vim中添加[](到行首和行)尾。http

为此,我使用以下 g 命令:

g/^htt/norm I[](

现在,我现在想在Esc里面按键g并放A). 我怎样才能做到这一点?

4

3 回答 3

15

您可以Esc使用ctrl+v后跟esc.

ctrl+v将按字面意思插入下一个非数字。

注意:您可能必须使用ctrl+ q,具体取决于您的系统。(很好的助记符是引用)

有关更多信息,请参阅帮助

:h c_Ctrl-V
于 2012-12-10T14:24:39.550 回答
13

为了能够:normal按顺序使用两个命令,您必须将它们包装在:execute. 当您使用双引号时,您可以将 Escape 写为\<Esc>,如下所示:

:g/^htt/exe "norm I[](\<Esc>" | norm A)

笔记:

  • 除非您需要应用映射,否则:normal!首选使用 (with the bang),因为它更健壮。
  • 你也可以:substitute在这里使用。
于 2012-12-10T10:12:10.510 回答
1

这更容易做到:s

:%s/^htt.*/[](&)/
于 2012-12-10T10:52:05.897 回答