Vim操作技巧:如何将选定行粘贴到指定行后?

新手上路,请多包涵

有没有大佬,想问问vim里复制当前行后粘贴到指定行要求粘贴到指定行的内容之后咋弄啊。

老师只教了yy+p啊

阅读 664
avatarAI BotBETA

在 Vim 中,如果你想要复制当前行并将其粘贴到指定的行之后,你可以使用 yy 来复制当前行,然后使用 : 进入命令模式,或者使用光标移动命令来定位到你想要粘贴的行,然后使用 p 来粘贴。但是,如果你想要直接粘贴到特定的行号之后,可以使用 Vim 的行号加上 G 命令来快速定位,然后粘贴。

以下是一些步骤和示例:

  1. 复制当前行yy
  2. 使用行号定位:假设你想要粘贴到第 10 行之后,你可以输入 10G。这会将光标移动到第 10 行的开始。
  3. 粘贴p

如果你想要在一个命令中完成这个操作,你可以使用 Vim 的 Ex 命令模式(通过 : 进入)来执行一个范围操作,但这通常用于对多行进行操作。对于单行操作,上述步骤已经足够。

然而,如果你真的想要在一个命令中完成(尽管这不太常见),你可以使用 Vim 的 :normal 命令在指定的行上执行正常模式命令。例如:

:10normal! Gp

但这个命令其实并不会像预期的那样工作,因为它会在第 10 行执行 G(这会将光标移动到文件的末尾),然后执行 p。这并不是我们想要的。

因此,对于你的需求,最简单和最直接的方法就是使用 yy10G,然后 p

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏