从命令模式直接在vim中删除特定行

4
如果我在vim的命令模式下,能否在不先跳转到该行的情况下删除特定的行?
比如我想删除第10行,可以执行以下操作:
:10
dd

但这是两个命令,我能用一个命令吗?

请参考以下链接:https://dev59.com/AGoy5IYBdhLWcg3wg-cm。似乎没有办法在不跳转到该行的情况下删除特定行号,但至少删除和跳转可以合并为一个命令。 - Tyler D
2
“:h deleting” 展示了许多删除的方式,包括直接回答你问题的方法。 - romainl
3个回答

7

我认为你想执行的是:<数字>d。例如,:10d应删除第10行。

要回到起点,可以按ctrl+o


2

0
另一种方式是这样的:
:10|:normal dd

让我们来分解一下:

  • | 让你链接命令
  • :10 是前往第10行的命令
  • :normal dd 让你在正常模式下模拟按键(在您的情况下只需使用dd,但您也可以使用:normal jdd向下移动然后删除)

来源: 学习 Vim 脚本编程的艰难之路


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接