我读到这b就像eie的反面b做了 e 做的事情,但倒退了。
所以如果我点击de一个单词并且光标在单词的第一个字母上,它会删除整个单词。那太棒了!
但是如果我点击db一个单词并且光标在单词的最后一个字母上,它会删除整个单词,除了光标所在的字母!
我知道我可以在使用时只移动一个角色,b但我想保持一致。也许有人可以启发我为什么会有这样的b行为。
我读到这b就像eie的反面b做了 e 做的事情,但倒退了。
所以如果我点击de一个单词并且光标在单词的第一个字母上,它会删除整个单词。那太棒了!
但是如果我点击db一个单词并且光标在单词的最后一个字母上,它会删除整个单词,除了光标所在的字母!
我知道我可以在使用时只移动一个角色,b但我想保持一致。也许有人可以启发我为什么会有这样的b行为。
b不是相反的e,asb是排他的议案,whilee是包容的。从:help e
& :help b
:
e
转发到单词[count]
inclusive的末尾。不会停在空行中。
b
[count]
话倒退。 独家议案。
从:help exclusive
:
角色动作要么是包容性的,要么是排斥性的。当包含时,动作的开始和结束位置包含在操作中。独占时,不包括缓冲区末尾的最后一个字符。线性运动总是包括开始和结束位置。
vim 光标是一个非常恶心的东西,设计不佳,模仿终端的块光标。光标位置实际上是在块的开始/左侧,所以如果块“打开”并且你k
实际上是从to删除。bark
dbr
b
幸运的是,您可以将光标更改为合理的值
您应该看一下:help text-objects
:它允许您将命令应用于智能对象,例如单词、句子或段落。
要擦除一个单词,无论光标的位置如何,都应该使用diw.
删除一个字daw。
删除光标下的单词和左边的空格,将光标留在前一个单词的末尾。这是一个可重复的变化。在 VIM 中,你可以重复.
$ | 然后没有e
daw| 然后有s
. | 然后e
最终v
用于在向后运动中使用视觉模式。
" Backward motion, inclusive the current cursor.
onoremap b vb
onoremap F vF
onoremap T vT
这按预期工作,并且足以满足我的典型用途。相关文章: https ://jdhao.github.io/2019/05/18/nvim_exclusive_inclusive_motion/