VSCode分屏仅Split Editor和Split Editor in Group两种可靠方式;前者为独立副本(滚动不同步),后者为同一文件实例(滚动同步),需通过右键或Ctrl+K Ctrl+方向键实现。

分屏显示代码的两种可靠方式
VSCode 原生支持分屏,但「怎么开」和「开对不对」常被搞混。最稳的方式只有两个:Split Editor(左右/上下并排)和Split Editor in Group(同组内多标签分屏)。别用拖拽标签这种不稳定的交互——它容易误创建新窗口或丢失布局。
推荐操作:
- 快捷键
Ctrl+\(Windows/Linux)或Cmd+\(macOS):当前编辑器左右分屏,重复按可切为上下 - 右键编辑器标签 → 选择
Split Right或Split Down - 命令面板(
Ctrl+Shift+P)输入View: Split Editor,选方向
同步滚动必须手动开启,且仅限同一文件
VSCode 默认不会同步滚动,即使你把同一个文件在两个面板里打开——它会各自记住滚动位置。要同步,得用「克隆」而非「重复打开」。
正确做法:
- 右键当前编辑器标签 →
Split Editor in Group(不是Split Right) - 或快捷键
Ctrl+K Ctrl+Right(Windows/Linux)/Cmd+K Cmd+Right(macOS) - 此时两个面板显示的是同一文件实例,滚动任一端,另一端实时跟随
注意:Split Editor(普通分屏)打开的是两个独立副本,滚动不同步;只有 Split Editor in Group 才共享视图状态。
常见失效场景和绕过方法
同步滚动突然不工作?大概率掉进了这几个坑:
- 打开了两个不同路径下的同名文件(比如
src/index.ts和dist/index.ts),VSCode 当作不同文件处理,无法同步 - 其中一个面板被切换到了预览模式(单击未保存文件时出现的临时标签),预览标签不参与同步
- 启用了某些扩展(如
Auto Close Tag或旧版EditorConfig)干扰了编辑器组绑定,可尝试禁用后测试
临时补救:用 Ctrl+K Ctrl+↑/↓ 强制将两个编辑器归入同一组,再检查是否为克隆关系。
横向对比:为什么不用「Compare Side-by-Side」
File: Compare Active File With... 看起来像分屏,但它本质是只读 diff 视图,不能编辑、不共享光标、不响应同步滚动指令。如果你需要边看边改、边滚边调,这个功能完全不适用。
真正需要同步编辑+滚动时,唯一正路就是 Split Editor in Group。其他路径要么功能残缺,要么行为不可控。
同步滚动本身不耗资源,但若文件超大(>10MB)或启用了语法高亮插件较多,偶尔会出现微小延迟——这不是 bug,是 VSCode 渲染机制决定的,不必强求毫秒级响应。











