Visual Studio Code有一个热键组合来将当前窗口分割为2或3个窗格:

"key": "ctrl + \",               "command": "workbench.action.splitEditor"

不幸的是,我无法在没有鼠标的情况下在这些窗格之间切换。我以前用F6的习惯也不管用了。

Visual Studio代码编辑器是否支持它?


https://code.visualstudio.com/docs/customization/keybindings#_editorwindow-management

Windows操作系统:Ctrl+1、Ctrl+2、Ctrl+3。

Mac: Cmd+1, Cmd+2和Cmd+3。

窗格之间没有循环切换,类似于Ctrl+制表符对文件的切换。


使用F6在编辑器组之间循环

窗格之间有一个圆形开关。它叫做“编辑组之间的循环”。

开箱即用,它是未分配的。我们可以把它赋给F6。

打开Visual Studio代码。 进入文件>首选项>键盘快捷方式。 将以下条目添加到keybindings.json中。 您不必重新启动代码。它已经起作用了。

keybindings.json

// Place your key bindings in this file to overwrite the defaults
[
    {
        "key": "f6", 
        "command": "workbench.action.navigateEditorGroups" 
    }
]

另外

或者,使用开箱窗口管理热键。

Ctrl +1聚焦到左编辑器组 Ctrl +2聚焦到侧边编辑器组 Ctrl +3聚焦到右编辑组 Ctrl+ K Ctrl+左聚焦到左边的编辑器组 Ctrl+ K Ctrl+右聚焦到右边的编辑器组


对于Mac用户和最新的VS Code 1.17:

在窗格之间切换- Cmd+[1,2,3…],其中1,2,3为窗格号 在所有打开的文件之间循环:

前进- Cmd+Shift+] 倒数- Cmd+Shift+[


如果您习惯在vim(和/或tmux)中工作,并希望使用ctrl+hjkl四处移动

将这些添加到keybindings.json中

[
    {
        "key": "ctrl+h",
        "command": "workbench.action.navigateLeft"
    },
    {
        "key": "ctrl+l",
        "command": "workbench.action.navigateRight"
    },
    {
        "key": "ctrl+k",
        "command": "workbench.action.navigateUp"
    },
    {
        "key": "ctrl+j",
        "command": "workbench.action.navigateDown"
    }
]

Alt+←和Alt+→在Windows上可以开箱即用。它只会在分屏窗格之间切换,不会重新激活窗格内的非活动文件。


是的,有一个热键之间切换分裂的“编辑器”窗口窗格,如果这是你的意思。

但它必须进行配置。这是因为允许循环编辑器窗格(又名编辑器组)的命令没有默认的键盘映射/绑定。打开“键盘快捷键”菜单选项,搜索workbench.action.navigateEditorGroups。单击+图标添加/分配键绑定。我将其映射为Alt+Q,因为在qwerty键盘上,“Q”就在Tab键旁边。考虑到Alt+Tab在打开的操作系统Windows中循环,这似乎是很自然的。


另一种方法是使用Ctrl + PageUp/PageDow在窗格之间切换。


你要找的是workbench.action.terminal.focusNextPane:

{ 
  "key": "alt+down",
  "command": "workbench.action.terminal.focusNextPane",
  "when": "terminalFocus"
},
{ 
  "key": "alt+right",
  "command": "workbench.action.terminal.focusNextPane",
  "when": "terminalFocus"
},

显然,最好的答案是顶部答案上的隐藏注释。不知道为什么没有答案:

CMD + SHIFT + [

and

CMD + SHIFT +]

我不确定为什么有人会使用cmd + 1或其变体。


如果你指的是编辑组,这就是。


cmd + option +左/右箭头为我工作。


尝试Option+Tab按顺序切换,Cmd+按数字切换,shift+ Cmd+[(或])在跨编辑器的制表符之间切换


如果以上方法都不适合你,你想要一个简单的ctrl-h绑定到左边的窗格,ctrl-l绑定到右边的窗格,然后这样做:

打开键盘快捷键(Ctrl-k, Ctrl-s) 搜索firstEditorGroup并将workbench.action.focusFirstEditorGroup的键绑定更改为ctrl -h 再次搜索secondEditorGroup并将workbench.action.focusSecondEditorGroup的键绑定更改为ctrl -h

如果您只有两个编辑器窗格,这是一个简单的设置。


在MacOS版本(1.54.3)上,命令View:在编辑器组之间导航对我来说很有效。


默认情况下,Ctrl+Tab在当前组中的编辑器之间循环,但不在组之间循环。我们可以简单地扩展默认快捷方式来获得我们想要的行为。VS Code用户指南告诉我们需要在keybindings.json中添加什么:

[
  {
    "key": "ctrl+tab",
    "command": "workbench.action.quickOpenPreviousRecentlyUsedEditor",
    "when": "!inEditorsPicker"
  },
  {
    "key": "ctrl+shift+tab",
    "command": "workbench.action.quickOpenLeastRecentlyUsedEditor",
    "when": "!inEditorsPicker"
  }
]

这将修改Ctrl+Tab遍历所有打开的编辑器,而不仅仅是当前组中的编辑器。

虽然它不能直接在组之间切换,但我更喜欢这个解决方案,因为它将两种类型的导航(在组之间移动,在编辑器之间移动)结合到一个简单的快捷方式中,并且已经在我的肌肉记忆中了。


我最近发现了这个键绑定,它可以在组中的分裂窗格之间切换焦点。

"workbench.action.focusOtherSideEditor"

在Mac:

Move Editor Left    ⌘K←     workbench.action.moveEditorLeftInGroup
Move Editor Right   ⌘K→     workbench.action.moveEditorRightInGroup

你需要的是: 查看:聚焦下一个编辑器组

我为这个快捷键定义了ctrl+H ! 这是所有!

此外,这个键绑定也可以:

workbench.action.navigateEditorGroups