微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何删除vim中当前行下面的行?

是否有命令删除直接在当前行下面的一行(或几行)?
目前我做的是:
jdd然后。根据需要重复。
一个命令,将所有这些组合?

更新:我想有这样的命令的原因是,我不喜欢离开当前位置,但可以删除下面的行。

delete ex命令将很好地工作。
:+,$d

这将删除从当前1的所有行,直到结束($)

删除接下来的2行,以下范围将工作,1,2或速记,2

:+,+2d

因为@ib提到:delete或:d命令会将光标移动到删除文本旁边的行的开始处。 (即使使用nostartofline集)。为了克服这个问题,我们可以发出“normal mode命令。 “将跳回到最后一个跳转之前的精确位置,在本例中为:d命令。我们的命令是现在

:,2denter“

或作为一个ex命令

:+,+2d|norm! ``

为了使这更容易,我们将这一切包装在一个命令:

command! -count=1 -register D :+,+<count>d <reg><bar>norm! ``

现在删除以下3行:

:3D

这个命令也可以采用{reg} like:delete和:yank do。所以删除接下来的4行到寄存器a将是:

:4D a

了解更多信息

:h :d
:h :command
:h :command-register
:h :command-count
:h ``

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐