【问题标题】:What is the "When" and "Command" for ctrl-P panels?ctrl-P 面板的“时间”和“命令”是什么?
【发布时间】:2018-07-31 03:41:32
【问题描述】:

我正在尝试创建自己的快捷键来充当 Visual Studio Code 中的箭头键。

当我点击“ctrl-p”时,它会弹出一个我可以导航的窗口。但是,当我使用我设置为的特殊键绑定时

{
    "key": "alt+i",
    "command": "cursorUp",
    "when": "textInputFocus"
}

它不会像按向上箭头那样向上移动到下一个选项。

我猜这是由于在打开该窗口时使用了错误的命令或错误的“何时”来触发键盘映射。

通常在 Atom 中我只使用键绑定解析器,但 have that yet 不会出现 Visual Studio Code。

在 Visual Studio Code 中的“ctrl-p”面板等面板中导航的正确命令和“何时”是什么?

【问题讨论】:

    标签: visual-studio-code keyboard-shortcuts keymapping


    【解决方案1】:

    当您单击 Ctrl-P 时,您处于文件选择器中,因此您需要一个命令来上下移动文件选择器。花了一点时间,因为我认为只要搜索 UpArrow 绑定就会很明显。但它没有。

    再次查看 Ctrl-P 绑定的内容,发现另一个命令也绑定到 Ctrl-Pworkbench.action.quickOpenNavigateNextInFilePicker 所以试试:

      {
        "key": "alt+i",
        "command": "workbench.action.quickOpenNavigateNextInFilePicker",
        "when": "inFilesPicker && inQuickOpen"
      },
      {
        "key": "ctrl+p",
        "command": "-workbench.action.quickOpenNavigateNextInFilePicker",
        "when": "inFilesPicker && inQuickOpen"
      },
      {
        "key": "alt+j",
        "command": "workbench.action.quickOpenNavigatePreviousInFilePicker",
        "when": "inFilesPicker && inQuickOpen"
      },
      {
        "key": "ctrl+shift+p",
        "command": "-workbench.action.quickOpenNavigatePreviousInFilePicker",
        "when": "inFilesPicker && inQuickOpen"
      }
    

    现在选择 Alt-IAlt-J 恰好避免了通常的 Alt 键触发菜单栏打开项,如 Alt-D 将打开Debug 菜单。如果您想要使用冲突的 Alt-Something,您可以使用以下命令禁用菜单栏 Alt 行为:

    // 如果启用,主菜单可以通过 Alt 键快捷键打开。禁用助记符允许将这些 Alt 键快捷键绑定到编辑器命令。

    "window.enableMenuBarMnemonics": false
    

    【讨论】:

    • 这非常适合选择(谢谢!),但是当我释放“alt”键时,它实际上选择了文件。 (与按“ctrl-p”相比,它会选择下一个项目,但不会选择它。)有没有办法让释放 alt 键不会触发菜单作为选择?
    • 嗯,你是对的。我不能不这样做 - 我稍后会调查它。
    猜你喜欢
    • 2021-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-15
    • 2018-08-15
    • 2017-06-18
    • 2020-10-17
    • 1970-01-01
    相关资源
    最近更新 更多