【问题标题】:Keybindings not working from VSCode integrated terminal键绑定在 VSCode 集成终端中不起作用
【发布时间】:2021-10-22 03:57:46
【问题描述】:

我正在尝试将 vscode 命令 workbench.action.navigateLeftworkbench.action.navigateRight 分别映射到 alt+ialt+o。通过对keybindings.json 进行以下更改,这非常简单:

{
  "key": "alt+o",
  "command": "workbench.action.navigateRight"
},
{
  "key": "alt+i",
  "command": "workbench.action.navigateLeft"
},

当我在编辑器的上下文中时,这非常有效,但当我的注意力集中在集成终端上时,它就不起作用了。我已经在settings.json 中将这两个命令添加到terminal.integrated.commandsToSkipShell,但这似乎没有效果。当我在集成终端中按 alt+ialt+o 时,什么也没有发生。

"terminal.integrated.commandsToSkipShell": [
  "workbench.action.navigateLeft",
  "workbench.action.navigateRight"
]

我在使用 bash 作为 shell 的 linux 系统上。似乎 bash 可能在 vscode 有机会解释它们之前捕获了我的击键,但我不知道如何验证这种情况是否发生或如何更改它。任何帮助将不胜感激。

【问题讨论】:

  • 我建议你为它打开一个 Github 问题,因为设置 commandsToSkipShell 必须有效,但它不起作用。

标签: bash visual-studio-code vscode-settings


【解决方案1】:

问题最终出在我的 settings.json 文件中的不同设置上。我将terminal.integrated.sendKeyBindingsToShell 设置为true,这会在vscode 接收到一些命令之前拦截它们。

鉴于该设置的描述,这是有道理的。将此值设置为 false(或从我的 settings.json 文件中删除,默认为 false)导致我的键绑定按预期工作。

【讨论】:

    猜你喜欢
    • 2021-11-29
    • 2016-12-08
    • 1970-01-01
    • 1970-01-01
    • 2019-06-12
    • 1970-01-01
    • 1970-01-01
    • 2021-10-13
    • 1970-01-01
    相关资源
    最近更新 更多