VSCode分屏依赖编辑器组而非标签页:垂直分屏用Ctrl+\(Win/Linux)或Cmd+\(macOS),水平分屏用Ctrl+Shift+\或Cmd+Shift+\;同步滚动需执行Toggle Editor Group Synchronization命令且两面板须属同一组;布局不自动保存,需启用restoreViewState并保存工作区。

VSCode 分屏不是“拖着标签页拉出来”就完事,真正起作用的是编辑器组(Editor Group)——所有看似失效、错位、不同步的问题,根源都在没分清「组」和「标签页」。
Ctrl+\ 是垂直分屏,Ctrl+Shift+\ 才是水平分屏
很多人按 Ctrl+\ 没反应,或拉出的不是左右而是上下,其实是误用了快捷键。VSCode 默认只认一个方向:垂直分屏用 Ctrl+\(Windows/Linux)或 Cmd+\(macOS);水平分屏必须用 Ctrl+Shift+\(Windows/Linux)或 Cmd+Shift+\(macOS)。
- 快捷键只对当前聚焦的编辑器组生效,比如你有三列,光标在中间列,按
Ctrl+\会在中列再劈一列,不是全局重排 - 资源管理器里右键文件 →
Open to the Side,本质等价于先聚焦左列再按Ctrl+\code>,但更防手滑</li> <li>拖拽标签页到边缘失败?大概率是窗口宽度<200px,或缩放比例太高导致高亮区太窄,别硬试,改用快捷键或右键菜单</li> </ul> <H3>同步滚动必须用 Toggle Editor Group Synchronization 命令</H3> <p>右键顶部空白处点 Synced Scrolling 或设置里加 <code>"editor.synchroScroll": true
都无效——前者是 UI 假开关,后者字段早已被移除。真正在起作用的是命令面板里的Toggle Editor Group Synchronization。- 执行该命令前,两个面板必须属于同一编辑器组(即由
Ctrl+\code> 或右键 <code>Split Right创建),不能是一边编辑器一边终端 - 预览模式(单击未保存文件名产生的临时标签)会破坏同步,需双击标签将其固定
- Alt/Option + 滚轮可临时绕过同步,松手即恢复,比反复开关命令快得多
三列布局不能靠拖拽,得用两次 Ctrl+\
鼠标拖文件到右侧边缘,VSCode 只会替换右列内容,不会新增第三列。要稳定出三列,必须分两步:
Ctrl+\出双列 → 点一下右列任意标签使其聚焦 → 再按一次Ctrl+\。- 三列时,
Ctrl+1/Ctrl+2/Ctrl+3分别对应左/中/右列,切换后打开的文件才落在目标列 - 已打开的文件想挪列?右键其标签 →
Move Editor into Group→ 选第 1/2/3 组,比拖拽精准 - 关掉一列后剩下两列不自动撑满?正常行为,VSCode 不重排尺寸,想恢复均分请先
Ctrl+1再Ctrl+\
分屏布局不保存,关掉 VSCode 就丢
默认情况下,VSCode 不记住你开了几列、每个文件在哪组、滚动到哪行。重启后全回到单列单标签,这不是 bug,是设计如此。
- 想固化布局,必须手动保存工作区:
File > Save Workspace As,并确保设置中有"workbench.editor.restoreViewState": true - 终端、调试控制台、GitLens 等插件都绑定在当前活动组,三列时它们可能被挤到看不见,要用鼠标拖动编辑器与终端之间的分隔线来腾空间
- 误关了整个组?
Ctrl+K Ctrl+W关的是组,Ctrl+W关的是当前 tab,别混用
最常被忽略的其实是
workbench.editor.enablePreview这个开关——开着它,点文件只是预览,根本进不了编辑器组,分屏自然永远“失败”。关掉它,才能让每个文件真正落地为可分屏、可同步、可移动的实体。 - 执行该命令前,两个面板必须属于同一编辑器组(即由


















