VS Code快捷方式聚焦集成终端

VS Code shortcut to focus integrated terminal

更新:此问题已在更高版本的 VS Code 中修复(已测试 1.41.1)control + ` 适用于打开和聚焦事件

集成终端显示时如何对焦?

https://code.visualstudio.com/shortcuts/keyboard-shortcuts-macos.pdf

有显示集成终端的快捷方式。但如果它已经打开,那将隐藏终端。如果在编辑器上打字时有一个快捷方式可以专注于终端,那就太好了。

我猜显示你正在使用的终端的快捷方式是CMD+J,它只会show/hide终端面板.如果你想在显示时专注于终端,你可以使用 CTRL+ `

您正在寻找的是 Terminal: Focus Terminal 命令。默认情况下,它未分配给快捷方式,但您可以使用键盘快捷方式首选项轻松完成此操作。

您也可以通过按 F1 并键入 Focus Terminal.

Command Palette 调用它

请记住,此命令还将创建一个新的集成终端 window(如果尚未激活的话)。

要访问键盘快捷键首选项,请按 F1 激活命令面板,然后键入 open keyboard shortcuts。要为命令分配新的快捷方式,请按行左侧可见的 + 符号。弹出窗口将出现在您应该记录所需密钥的位置。

虽然接受的答案是最好的,但有一种方法可以在不修改设置的情况下在终端中聚焦。

如果已经可见,按 CTRL + ` 两次将首先关闭终端控制台,然后重新打开并在其中获得焦点。

如果终端没有已经显示,我按Ctrl+J

如果显示终端 ,我按 Ctrl+J 两次。

我已将以下内容添加到我的 keybindings.json 文件中:

{ 
    "key": "ctrl+`",        
    "command": "workbench.action.terminal.focus",
    "when": "editorFocus"
},
{ 
    "key": "ctrl+`",        
    "command": "workbench.action.terminal.focus",
    "when": "explorerViewletFocus"
}

这涵盖了我的大多数情况:当我的资源管理器获得焦点或当编辑器获得焦点时,相同的键绑定将集中在现有终端上而不切换它。

您可以在 VSCode KeyBindings 文档中找到所有可用的 when 子句。

这与 workbench.action.terminal.toggleTerminal.

已在全球范围内使用的相同键绑定不冲突

@ringo-de-smet

您分享的 keybindings.json 在 @code 1.25.1 中对我不起作用。我只需要稍微改变一下:

{
  "key": "cmd+y",
  "command": "workbench.action.terminal.focus",
  "when": "editorFocus"
},
{
  "key": "cmd+y",
  "command": "workbench.action.focusActiveEditorGroup",
  "when": "terminalFocus"
}

我最近也想改一下这个热键绑定
这是我在 mac:

上所做的

1 打开键盘快捷键编辑器
使用热键:cmd + K + cmd + S
或视觉方式:代码 -> 首选项 -> 键盘快捷方式

2 次搜索
查看:切换集成终端

3 次编辑
更改为您最喜欢的绑定