我的光标在 Vim 中位于单词的最后一个字符上。在不移动光标的情况下,是否有任何简洁的方法可以删除当前单词及其之前的单词?
据我所知,删除当前的word 就是使用diw
。使用db
会保留光标下的字符(恰好是最后一个字符)。
答案1
我会选择2dbx
或vbbd
。或者v5bd
如果有 5 个单词需要删除。
我更喜欢vbbd
这样,因为我喜欢对我要做的事情有一些视觉线索,而且感觉更清晰一些。
答案2
向后移动操作(如db
)从光标前面的边界开始生效。
可能最简单的方法是类似这样的xd2b
——首先处理光标下的字符。
通常,我更喜欢在删除整个单词时使用Bdw
(或wdB
),因为这样不会在单词所在位置留下双倍空格。显然,这取决于您操作的上下文以及您还想实现的目标。
答案3
d2vb
是一个选项。添加的v
修改动作也会删除光标下的字符。
细节:
Vim 区分了包容性动作和排他性动作。
v
切换动作的“包容性”或“排他性”。 有关切换相反方向(包容性 => 排他性)的示例,请尝试使用e
:
dve
请参阅
:help
inclusive 以了解解释。直到现在,您还认为这只是深奥的废话!不是吗?不是吗?!(至少,每当我阅读帮助中的那部分时,我的眼睛都会呆滞…… :)