我已经开始通过 ConEmu 在 Windows/WSL 上使用 Neovim。除了一个非常大的缺陷之外,这一切都非常令人惊讶:
当我将内容粘贴到 Neovim 并且之前忘记进入插入模式时,Neovim 会将输入注册为键盘敲击并将它们作为命令执行。不用说,这可能会变得非常丑陋,非常快。
为了清楚起见,一个人为的例子:我需要从我的浏览器中复制一些文本。有问题的文本是“sp”(是的,这完全是愚蠢的,但请耐心等待)。当我将其粘贴到 ConEmu (CTRL-V) 中时,终端将输入传输到 Neovim,Neovim 将其解析为命令,因为它处于正常模式。在这个例子中,Neovim 将用p替换当时光标处的任何字符。
Vim for Windows 已经解决了这个问题,并且会在不改变模式的情况下粘贴内容(纯 Linux 环境如何处理这个问题?)。该解决方案的问题在于它依赖于 Windows 文件系统,与 apt-get/Ubuntu/WSL 以及其他烦恼相比,它更难调整/维护。
所以,最初我想我会尝试让 Neovim 检测输入是否直接来自键盘而不是任何其他来源,如果是,则切换到插入模式并从那里处理它。但坦率地说,我不确定这是否可能(尤其是通过 WSL)。我还尝试添加一个快捷方式,使 Neovim 在 CTRL-V 上进入插入模式,希望先触发然后正确粘贴内容。
也许我需要另一个终端而不是 ConEmu?
无论如何,我没有想法,希望你们能帮助。