【发布时间】:2020-11-11 13:23:12
【问题描述】:
最近我开始探索VIM,并且知道daw 命令,它不仅在下一个单词之前删除,而且还完全删除当前单词。
从逻辑上讲,dae 命令会在单词结尾之前删除,但突然间,它只是清除了文件……那么,有什么问题?
【问题讨论】:
标签: visual-studio-code vscodevim
最近我开始探索VIM,并且知道daw 命令,它不仅在下一个单词之前删除,而且还完全删除当前单词。
从逻辑上讲,dae 命令会在单词结尾之前删除,但突然间,它只是清除了文件……那么,有什么问题?
【问题讨论】:
标签: visual-studio-code vscodevim
在vscodevim 中,运动ae 指的是整个缓冲区,因此dae 将删除它。
请注意,这与“真正的”Vim 无关,这不是一个有效的命令。我会使用 Gd1G 在 Vim 中产生相同的效果:
G 转到最后一行;d1G 从那里删除到第一行。虽然毫无疑问还有其他方式,但 Vim 以各种不同的方式做事,如果不是多产的话,那就什么都不是 :-)
【讨论】:
让我们仔细看看你在做什么:
daw -> 删除一个单词。删除 word 类型的对象,包括空格。 (有diw -> Delete inner word,不删除空格)。这个对象可以在:h text-objects中找到
现在你尝试用同样的动作 e 是单词的结尾。词尾不是文本对象,而是位置。这就是a 和i 不能用于de 的原因。
在 vim 中 dae 无效。不知道 vs code 是做什么用的。
【讨论】: