首页 > 解决方案 > Vim delete word 有时会进入插入模式?

问题描述

看似随机,当我按下dw删除一个单词时,它将进入插入模式而不是停留在正常模式。我无法弄清楚这个开关背后的逻辑,它变得非常烦人

我首先在 VS Code Vim 扩展上注意到了这一点。然后我去了 Vim 本身,发现它也在做这个异常。这也适用于多个键盘和多台计算机。

请注意,我安装 vanilla Vim 是通过 Git for Windows,通过 cmder。

这有什么押韵或理由吗?如果是这样,它是什么以及它为什么这样做?

编辑:原来我实际上是在打cw而不是dw. 感谢 mMontu 帮助我解决了我的心理问题。哈哈

tl; dr:没有错,只是一个EBKAC错误。

标签: vimvisual-studio-code

解决方案


正如评论中所指出的,这是在完全不同的编辑器上发生的。我的猜测是您(或您的键盘)正在插入其他命令。

您可以保持recording打开状态,当您再次注意到问题时,您可以检查发送到 vim 的键:

qa -> start recording on register a
<use vim until the issue happens>
q   -> stop recording
:register a   -> list the keys recorded

另一种选择是将所有键入的密钥保存在一个单独的文件中(如果需要很长时间才能重现问题,这可能会更好:

vim -w script file.txt ...

:help -w有关此方法的更多详细信息,请参见:help 26.4.

值得尝试在没有任何设置或插件的情况下重现该问题,

vim -u NONE -U NONE -N -i NONE

,如 中所述:help faq-2.5。在 Windows 上,您需要打开 cmd.exe 并输入类似<path to executable>/vim.exe -u NONE -U NONE -N -i NONE(或 gVim.exe)的内容。

您还提到从 Git 安装 Vim。如果一切都失败了,请检查Vim 网站上提供的二进制文件是否也会发生这种情况。


推荐阅读