在 emacs 中,每当我想删除几行文本时,我只需使用 Ck 直到所有文本都消失。然而,在 vim 中,这似乎有点复杂。我知道我可以d$
删除到行末并dd
删除我所在的整行,但我如何删除所有的下一个线?
答案1
像这样:
:+1d
答案2
假设:您希望最终回到您开始的那条线。
我的答案:jddk
- j(向下移动)
- dd(删除当前行)
- k(向上移动)
试试吧——它很快!事实上,它二击键次数少于当前接受的答案,因为:
- 您无需按住
[Shift]
':' 即可输入冒号 '+' 字符,并且 - 你不需要
[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
删除当前行,然后继续按(或按住).
(句点)重复该命令。