是否有热键在分割窗口窗格之间切换?

bia*_*lix 152 hotkeys visual-studio-code

Visual Studio Code具有热键组合,可将当前窗口拆分为2或3个窗格:

"key": "ctrl + \",               "command": "workbench.action.splitEditor"
Run Code Online (Sandbox Code Playgroud)

不幸的是,我找不到在没有鼠标的情况下在这些窗格之间切换的方法.我习惯使用的习惯F6也不起作用.

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

bia*_*lix 178

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

它是Ctrl+ 1,Ctrl+ 2Ctrl+ 3.

窗格之间没有圆形切换,类似于Ctrl+ tabs对文件的作用.

  • 实际上有一个键绑定循环打开文件.根据这篇[文章](https://kaushalsubedi.com/blog/2015/11/08/visual-studio-code-key-bindings-to-make-it-work-like-tab-based-editor/) ,它是"CMD + SHIFT + ["和"CMD + SHIFT +]" (10认同)
  • 正如我偶然发现的那样,这些键也适用于 Chrome 标签页 (3认同)
  • 注意:对于 Mac,Ctrl 不起作用。代替 Ctrl 的键是 Cmd (3认同)
  • 这不是真的,正如 Shaun Luttin 下面所示,您正在寻找的操作是“workbench.action.navigateEditorGroups”(可以通过搜索在键盘快捷键中找到或在关联的 json 中找到) (3认同)
  • 在我的版本(1.46)中,`Ctrl + Shift + [ / ]` 似乎映射到代码折叠和展开。我从未更改过默认值。这是否意味着他们更改了默认值? (2认同)

Dan*_*son 146

如果您习惯于在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"
    }
]
Run Code Online (Sandbox Code Playgroud)

  • 不能赞成这一点.谢谢!!这正是我所寻找的. (13认同)
  • 谢谢你!如果它对任何人有帮助,我刚刚发现它破坏了 VsCodeVim 的 `Ctrl`+`x` 行完成(可能还有其他事情)所以在插入模式下禁用这些快捷方式感觉很明智:`"when": "vim.mode != '插入'"` (6认同)
  • 给这个家伙加薪 (5认同)
  • 如果您想弄清楚如何实际编辑`keybindings.json`-请在此处查看有用的文档:https://code.visualstudio.com/docs/getstarted/keybindings#_advanced-customization (5认同)
  • 这次真是万分感谢。我已经在没有任何运气的情况下搜索了键绑定。似乎“焦点”和“导航”这两个术语并没有被一致使用。 (2认同)
  • @EmilioBool 足够有趣,这个建议不会让一个人(至少对我来说)像“workbench.action.terminal.focusNextPane”那样在左/右终端之间循环。然而,它允许在“代码”和终端窗格之间上下循环。 (2认同)

Sha*_*tin 60

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

窗格之间有一个圆形开关.它被称为"编辑组之间的循环".

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

  1. 打开Visual Studio代码.
  2. 转到文件>首选项>键盘快捷键.
  3. 添加以下条目keybindings.json.
  4. 您不必重新启动代码.它已经有效了.

keybindings.json

// Place your key bindings in this file to overwrite the defaults
[
    {
        "key": "f6", 
        "command": "workbench.action.navigateEditorGroups" 
    }
]
Run Code Online (Sandbox Code Playgroud)

另外

或者,使用开箱即用的窗口管理热键.

  • Ctrl+ 1专注于左编辑组
  • Ctrl+ 2专注于Side Editor Group
  • Ctrl+ 3专注于右编辑组
  • Ctrl+ K Ctrl+ Left聚焦左侧的编辑组
  • Ctrl+ K Ctrl+ Right专注于右侧的编辑组

  • 哇,谢谢你,我无意中找到了我一直在寻找的东西。Ctrl + K + Left(注意左侧没有 Ctrl)执行“查看:向左移动编辑器组”(workbench.action.moveActiveEditorGroupLeft)。谢谢你! (3认同)
  • 终于有真正的答案了!!!在页面底部! (2认同)

dem*_*isx 20

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

  1. 在窗格之间切换 - Cmd+ [1,2,3...],1,2,3窗格编号在哪里
  2. 在所有打开的文件之间循环:
    • 前进 - Cmd+Shift+]
    • 向后 - Cmd+Shift+[

  • 哦,天哪,骑自行车时无法区分编辑器窗格和选项卡:| (2认同)

Tam*_*nyi 15

Alt+ Alt+ 在Windows上开箱即用.它只会在分屏窗格之间切换,并且不会重新激活窗格内的非活动文件.

  • 在 1.52+ 版本中不起作用。改为使用 Ctrl+PgUp/PgDown (2认同)

Val*_*kus 11

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


dex*_*tto 11

如果你的意思是编辑组,这里是。

在此处输入图片说明

  • 是的!我很高兴现在有了这个,不再有鼠标了! (2认同)

Nit*_*P M 7

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

"workbench.action.focusOtherSideEditor"
Run Code Online (Sandbox Code Playgroud)

  • 通过额外的支持信息可以改进您的答案。请[编辑]添加更多详细信息,例如引文或文档,以便其他人可以确认您的答案是正确的。您可以[在帮助中心](/help/how-to-answer)找到有关如何写出好的答案的更多信息。 (2认同)

Mar*_*aso 5

是的,有一个热键可以在拆分的“编辑器”窗口窗格之间切换,如果这就是您的意思的话。

不过必须要配置。这是因为允许循环通过编辑器窗格(又名编辑器组)的命令没有默认的键盘映射/绑定。打开“键盘快捷键”菜单选项并搜索 workbench.action.navigateEditorGroups 。单击 + 图标以添加/分配键绑定。我将它映射到 Alt+Q,因为在 qwerty 键盘上,'q' 就在 Tab 键旁边。鉴于 Alt+Tab 在打开的 OS Windows 中循环,这似乎很自然。


小智 5

您正在寻找的是option workbench.action.terminal.focusNextPane

{ 
  "key": "alt+down",
  "command": "workbench.action.terminal.focusNextPane",
  "when": "terminalFocus"
},
{ 
  "key": "alt+right",
  "command": "workbench.action.terminal.focusNextPane",
  "when": "terminalFocus"
},
Run Code Online (Sandbox Code Playgroud)


Cha*_*ker 5

显然,最佳答案是顶部答案的隐藏评论。不知道为什么没有答案:

CMD + SHIFT + [

CMD + SHIFT + ]

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

  • 您可以使用“cmd + 1”或其其他变体(“2”、“3”、“4”等),因为这就是大多数选项卡式应用程序的工作方式。`CMD + SHIFT + ]` 将所有窗格视为同一窗口上的同级选项卡。 (2认同)

lan*_*319 5

cmd+ option+Left/Right Arrows为我工作。