如何快速删除VIM中从光标位置开始的行?

如何快速删除VIM中从光标位置开始的行?,vim,Vim,我希望能够从VIM中光标的位置开始,删除我所处的行的其余部分。是否有一个简单的命令来执行此操作 为了帮助说明,这是在命令之前 The quick brown dog jumps over the lazy fox. ^ |----- Cursor is here. 这是在命令之后 The q ^ |----- Cursor is here. (编辑以包含评论员的精彩补充:) D或其等效的D$将删除该行的其余部分,并使您处于命令模式C或C$将删除该行的其

我希望能够从VIM中光标的位置开始,删除我所处的行的其余部分。是否有一个简单的命令来执行此操作

为了帮助说明,这是在命令之前

The quick brown dog jumps over the lazy fox.
     ^
     |----- Cursor is here.
这是在命令之后

The q
     ^
     |----- Cursor is here.
(编辑以包含评论员的精彩补充:)

D
或其等效的
D$
将删除该行的其余部分,并使您处于命令模式
C
C$
将删除该行的其余部分并将您置于插入模式,新文本将追加到该行


这是vitutor和vimtutor的一部分,对vim初学者来说是非常好的“读物”。

在命令模式下执行
d$
使用d。有关更多信息,请参阅。

您可能也对C感兴趣,它还将删除像d一样的行尾,但除此之外,它会将您置于光标位置的插入模式。

按ESC键首先进入
命令模式。然后按Shift+D


这是一个非常古老的问题,但由于VIM仍然相关,因此应该澄清一些问题

截至2018年10月,这里的每一个回答和评论都提到了通常被称为“削减”的行动,因此使用其中任何一个都将取代VIM的未命名登记薄中的任何内容。此注册表通常被视为默认的复制/粘贴剪贴板,因此,如果您要删除行的其余部分,然后将某个内容粘贴到同一位置,则这些答案都不会起到预期的作用,因为刚刚删除的内容将随后粘贴到之前拖动的内容的位置

OP上下文中真正的delete命令是
“\u D
(或者
”\u C
,如果需要插入模式),这会将删除的内容发送到黑洞寄存器中,由
“\u
指定,在那里它将不会再打扰任何人(尽管您仍然可以使用
u
撤消此操作)

这就是说,上次拖动的内容都存储在0寄存器中,即使它在未命名寄存器中被替换,也可以使用
“0p
粘贴


了解更多关于和的信息,获得更多VIM乐趣

D
dd
删除该行并将其复制到寄存器。您可以使用
Vx
,它只删除该行并保持在正常模式

该死,我觉得这很简单,我在想一些结合
d
的东西。我想在这里发布问题会更快,也会让其他在阅读手册之前默认在线搜索的人受益。或者
C
,这是将光标移到指定位置的唯一“真正”方法,尽管这会使您处于插入模式。@Anthony:还有一个“
d
,后面跟一些东西”-
D
的等效命令,其中“something”是
$
运动:
D$
。如果您想以插入模式结束,请使用
C
(或
C$
)我意识到这个解决方案已经得到了回答,但我正在用VIM搜索删除整行的方法,并发现了这个问题。结果证明,我正在寻找的选项是来自命令模式的
dd
。我希望这能帮助其他偶然发现这一点的人。
D
是一个更快的解决方案。dd对我来说很好