Vim 不同运动的d{motion}规则

Vim 不同运动的d{motion}规则,vim,Vim,鉴于: d3w导致 %导致 i、 例如,运动%将光标移动到上,并将其自身删除 那么,为什么d{motion}有两种不同的效果呢?这两种情况都是一致的特殊情况,有没有一条一般规则?是的,这是有逻辑的。在Vim中,一些运动(如w)是包含的,而其他运动(如%)是包含的。这将确定动作是否会影响运动的最后一个角色 实际上,您可以通过使用操作符来覆盖运动的独占或包含状态。请注意,v在此处用作操作符,而不是像用作普通模式命令时那样启动视觉模式!因此,dv3w或d3vw将删除到第三个单词的开头,包括它所在的字符

鉴于:

d3w导致

%导致

i、 例如,运动%将光标移动到上,并将其自身删除


那么,为什么d{motion}有两种不同的效果呢?这两种情况都是一致的特殊情况,有没有一条一般规则?

是的,这是有逻辑的。在Vim中,一些运动(如w)是包含的,而其他运动(如%)是包含的。这将确定动作是否会影响运动的最后一个角色

实际上,您可以通过使用操作符来覆盖运动的独占或包含状态。请注意,v在此处用作操作符,而不是像用作普通模式命令时那样启动视觉模式!因此,dv3w或d3vw将删除到第三个单词的开头,包括它所在的字符,而dv%将删除到下一个匹配的括号

在某种程度上,视觉模式有点类似,因为视觉选择在默认情况下是包含的,所以v3wd的行为类似于dv3w。尽管此选项可以覆盖

见:

:救命 :帮助% :help exclusive与:help inclusive相同 :救命啊 :帮助“选择”
是的,这是有道理的。在Vim中,一些运动(如w)是包含的,而其他运动(如%)是包含的。这将确定动作是否会影响运动的最后一个角色

实际上,您可以通过使用操作符来覆盖运动的独占或包含状态。请注意,v在此处用作操作符,而不是像用作普通模式命令时那样启动视觉模式!因此,dv3w或d3vw将删除到第三个单词的开头,包括它所在的字符,而dv%将删除到下一个匹配的括号

在某种程度上,视觉模式有点类似,因为视觉选择在默认情况下是包含的,所以v3wd的行为类似于dv3w。尽管此选项可以覆盖

见:

:救命 :帮助% :help exclusive与:help inclusive相同 :救命啊 :帮助“选择”
所以,如果我理解正确的话,v操作符翻转了通常的行为,但这需要我们知道通常的行为是包含的还是独占的。有没有一种方法可以强制包容或排斥?是的,这是正确的。嗯,视觉模式通常强制包含,除非触摸了“选择”选项。。。但一旦你习惯了动作的工作方式,就不难猜出它是排他性的还是包容性的。“帮助”也总是非常明确地说明运动是包含的还是独占的。因此,如果我理解正确,v操作符会翻转通常的行为,但这需要知道通常的行为是包含的还是独占的。有没有一种方法可以强制包容或排斥?是的,这是正确的。嗯,视觉模式通常强制包含,除非触摸了“选择”选项。。。但一旦你习惯了动作的工作方式,就不难猜出它是排他性的还是包容性的。“帮助”也总是非常明确地说明运动是包含的还是独占的。
for (int i = 0; i < 10; i++){
   _   <---Cursor position
for (int i = 0; i < 10; i++){
         _   <---Cursor position
fori = 0; i < 10; i++){
   _   <---Cursor position
for (int i = 0; i < 10; i++){
   _   <---Cursor position
for (int i = 0; i < 10; i++){
                           _   <---Cursor position
for{
   _   <---Cursor position