在 VScode 中无法进入 REPL 粘贴模式?修复键盘快捷键冲突即可。 [BPI-Leaf-S3 & ESP32S3]

VScode是个好工具,只是令我哭笑不得的是它基本上把我想到的和想不到的键盘快捷方式基本都占用殆尽了。

在VScode的终端中使用MicroPython的mpremote工具中,当我想要使用键盘快捷键 ctrl+E 进入REPL的粘贴模式时,却发现被VScode占用了。

  1. 为了解除冲突,需要在VScode的File(文件) > Preferences(首选项) > Keyboard Shortcuts(键盘快捷键)中进行设置,或使用快捷键ctrl+shift+P后在弹出的搜索栏输入open keyboard shortcuts,进入此选项。

  2. 在搜索栏输入 ctrl E查找其相关项目,发现占用项目的命令为Go to File

  3. 右键占用此快捷键的项目,左键点击 Change When Expression 项,输入!terminalFocus,回车键确定,此条件使此命令在terminal终端中不生效。
    20220907180050

  4. 在VScode的终端中使用mpremote工具进入开发板的REPL中,使用快捷键ctrl+E即可正常进入REPL的粘贴模式。

  5. 也可使用快捷键ctrl+shift+P后在弹出的搜索栏输入open keyboard shortcuts(JSON),编辑此文件,加入如下代码:

[
    {
        "key": "ctrl+e",
        "command": "workbench.action.quickOpen",
        "when": "!terminalFocus"
    },
    {
        "key": "ctrl+e",
        "command": "-workbench.action.quickOpen"
    }
]