是否有扩展或配置可以让 VScode 使用单个四个热键在分割终端和分割编辑器窗格之间导航?

是否有扩展或配置可以让 VScode 使用单个四个热键在分割终端和分割编辑器窗格之间导航?

我有 vi 背景,并且我习惯使用类似CtrlW+的东西CtrlH/J/K/L在编辑器界面中的“窗格”中导航,包括集成终端和文本编辑器。

我有以下配置,它让我非常接近:

// settings.json
"terminal.integrated.commandsToSkipShell": [
   "workbench.action.focusRightGroup",
   "workbench.action.focusLeftGroup",
   "workbench.action.focusAboveGroup",
   "workbench.action.focusBelowGroup"
],
// keybindings.json
// ### Mimic some vi-bindings when in a terminal
{
   "key": "ctrl+w ctrl+l",
   "command": "workbench.action.focusRightGroup",
   "when": "terminalFocus"
},
{
   "key": "ctrl+w ctrl+h",
   "command": "workbench.action.focusLeftGroup",
   "when": "terminalFocus"
},
{
   "key": "ctrl+w ctrl+k",
   "command": "workbench.action.focusAboveGroup",
   "when": "terminalFocus"
},
{
   "key": "ctrl+w ctrl+j",
   "command": "workbench.action.focusBelowGroup",
   "when": "terminalFocus"
},
// ...

在大多数情况下,这都是“有效的”——我可以使用CtrlW+CtrlH/J/K/L在平移之间向左/向下/向上/向右移动,也可以使用它来“向下”(“向右”,如果你的术语在侧边栏中)移动到集成终端抽屉中,然后再“向上”(“向左”)退出集成终端抽屉进入编辑器。

然而,我不能做的是移动“左”/“右”(“上”/“下”)之间多种的,分割窗格集成终端 - 使用这些命令只需将我带回到编辑器窗格。我目前必须在终端是使用内置workbench.action.terminal.focusNext命令(]在 macOS 上)。

有什么方法可以让我统一这些吗?通过覆盖左/右或者设置时使用向上/向下键terminalFocus,调用terminal.focusNext而不是workbench.action.focusLeftGroup或其他……但这很脆弱,并且仅在分离终端确实是从左到右组织的(当终端位于侧边栏时情况并非如此。)

相关内容