如何在 vim 中删除下一行?

如何在 vim 中删除下一行?

在 emacs 中,每当我想删除几行文本时,我只需使用 Ck 直到所有文本都消失。然而,在 vim 中,这似乎有点复杂。我知道我可以d$删除到行末并dd删除我所在的整行,但我如何删除所有的下一个线?

答案1

像这样:

:+1d

答案2

假设:您希望最终回到您开始的那条线。

我的答案:jddk

  • j(向下移动)
  • dd(删除当前行)
  • k(向上移动)

试试吧——它很快!事实上,它击键次数少于当前接受的答案,因为:

  1. 您无需按住[Shift]':' 即可输入冒号 '+' 字符,并且
  2. 你不需要[Enter]在序列末尾隐含,因为jddk输入全部视觉模式而不是命令模式

另外,jddk全部主行键盘。

我花了很长时间使用小时, 日, 辰, 辰vi在我使用的终端仿真软件开始支持箭头键之前,它就已经可以导航了。(我说的是大约 20 年前 ;-)

答案3

我强烈建议阅读 stack overflow 中的这个答案,它获得了超过 500 个赞同: https://stackoverflow.com/questions/1218390/what-is-your-most-productive-shortcut-with-vim/1220118#1220118 ——答案很长,但有助于理解为什么 vim 如此强大......

答案4

如果您想要删除连续的多行,您可以使用dd删除当前行,然后继续按(或按住).(句点)重复该命令。

相关内容