有人知道在Visual Studio Code中切换编辑器和集成终端的快捷键(Mac和Linux)吗?


当前回答

根据键盘布局的不同(QWERTY/QWERTZ/AZERTA等)

要找到你的快捷键,按Ctrl+Shift+P,然后转到首选项:键盘快捷键。

从那里搜索视图:切换终端

其他回答

虽然VS Code有很多模式切换和导航快捷方式,但没有一个专门用于“从编辑器移动到终端,然后再返回”。但是,您可以通过重载键和使用when子句来组合这两个步骤。


解决方案

您可以通过向键绑定添加适当的设置来实现所需的效果。json文件。以下是必需的步骤:

打开命令面板(Ctrl+Shift+P Windows/Linux或⇧⌘P Mac)。 输入“首选项:打开键盘快捷键(JSON)”并按Enter。 将以下条目添加到键绑定中。json文件:

// Toggle between terminal and editor focus
{
    "key":     "ctrl+`",
    "command": "workbench.action.terminal.focus"
},
{
    "key":     "ctrl+`",
    "command": "workbench.action.focusActiveEditorGroup",
    "when":    "terminalFocus"
}

使用这些快捷键,您可以使用相同的击键在编辑器和集成终端之间集中注意力。


NOTE

这里建议的组合键现在作为默认值内置到VSCode中(从1.72.2开始,可能更早)。在尝试添加它之前,看看ctrl + '是否有效。

NOTE

在现代版本的VS Code(截至2022年)中,默认键盘快捷键(JSON)文件是只读的,所以这就是为什么对于自定义设置,你需要编辑一个单独的专用文件keybindings.json。

更多信息可以在Visual Studio官方文档页面上找到:

Visual Studio Code的键绑定:高级定制

通常,VS Code使用ctrl+j打开终端,所以我创建了一个键绑定来切换与ctrl+k组合,如下在keybindings.json:

[    
    {
        "key": "ctrl+k",
        "command": "workbench.action.terminal.focus"
    },
    {
        "key": "ctrl+k",
        "command": "workbench.action.focusActiveEditorGroup",
        "when": "terminalFocus"
    }
]

Ctrl + J作品;但也显示/隐藏控制台。

cmd+J表示mac

适用于任何键盘布局的简单WINDOWS解决方案(可能适用于其他操作系统,但未经测试)

我使用芬兰键盘,所以上面没有一个工作,但这应该适用于所有的键盘。

终端焦点:将鼠标悬停在集成终端的终端文本上。聚焦终端的快捷方式将会弹出-例如,我说CTRL+ö。 编辑器焦点:如上所述,使用CTRL+1。

我把我的配置如下,因为我发现ctrl+ '有点难按。

{
  "key": "ctrl+k",
  "command": "workbench.action.focusActiveEditorGroup",
  "when": "terminalFocus"
},
{
  "key": "ctrl+j",
  "command": "workbench.action.terminal.focus",
  "when": "!terminalFocus"
}

我还配置了以下内容,以便在编辑器组之间移动。

{
  "key": "ctrl+h",
  "command": "workbench.action.focusPreviousGroup",
  "when": "!terminalFocus"
},
{
  "key": "ctrl+l",
  "command": "workbench.action.focusNextGroup",
  "when": "!terminalFocus"
}

顺便说一下,我在Mac上从系统首选项=>键盘=>修改器键配置了Caps Lock。