【问题标题】:Why does `dae` command delete everything in a file?为什么`dae`命令会删除文件中的所有内容?
【发布时间】:2020-11-11 13:23:12
【问题描述】:

最近我开始探索VIM,并且知道daw 命令,它不仅在下一个单词之前删除,而且还完全删除当前单词。 从逻辑上讲,dae 命令会在单词结尾之前删除,但突然间,它只是清除了文件……那么,有什么问题?

【问题讨论】:

    标签: visual-studio-code vscodevim


    【解决方案1】:

    vscodevim 中,运动ae 指的是整个缓冲区,因此dae 将删除它。

    请注意,这与“真正的”Vim 无关,这不是一个有效的命令。我会使用 Gd1G 在 Vim 中产生相同的效果:

    • G 转到最后一行;
    • d1G 从那里删除到第一行。

    虽然毫无疑问还有其他方式,但 Vim 以各种不同的方式做事,如果不是多产的话,那就什么都不是 :-)

    【讨论】:

      【解决方案2】:

      让我们仔细看看你在做什么:

      daw -> 删除一个单词。删除 word 类型的对象,包括空格。 (有diw -> Delete inner word,不删除空格)。这个对象可以在:h text-objects中找到

      现在你尝试用同样的动作 e 是单词的结尾。词尾不是文本对象,而是位置。这就是ai 不能用于de 的原因。

      在 vim 中 dae 无效。不知道 vs code 是做什么用的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-07-27
        • 1970-01-01
        • 2020-09-06
        • 1970-01-01
        • 1970-01-01
        • 2019-01-18
        • 1970-01-01
        相关资源
        最近更新 更多