Sublime Text 不支持多窗口同步滚动,仅单窗口双栏布局通过 scroll_follow 可实现逻辑行对齐滚动;Compare Files 插件生成只读 diff 视图,支持跳转但不联动滚动;插件无法实现跨窗口同步,推荐用专业 diff 工具。

Sublime Text 多窗口无法同步滚动?根本没这个功能
Sublime Text 原生不支持「多窗口同步滚动」——这不是设置没开对,而是它压根没实现。你看到的所谓“同步”,通常是误把「双栏布局(View → Layout → Columns: 2)」当成了两个独立窗口。真开两个 subl 进程窗口,滚动完全隔离,连插件都救不了。
用双栏(Columns)替代多窗口做对比才靠谱
文件对比场景下,真正可用、稳定、原生支持滚动联动的是「单窗口多列布局」。只要两文件在同一个 Sublime 窗口的不同列中打开,启用 scroll_follow 后就能做到视觉对齐滚动:
-
View → Layout → Columns: 2(或快捷键Alt+Shift+2) - 分别在左右列中打开要对比的两个文件(拖入或
Ctrl+P搜索) - 确保右键菜单中
Scroll Follow已勾选(它只对同窗口多列生效) - 手动滚动任一列,另一列会自动对齐到相同行号位置(非像素级,是逻辑行匹配)
注意:scroll_follow 在三列及以上布局中行为不可靠,建议严格用两列。
想看差异高亮?别手翻,用内置 Compare Files 插件
Sublime 自带的 Compare Files 功能(需选中两个标签页后右键)能生成差异视图,但它不修改原文件,也不联动滚动。关键点:
- 必须先用
Ctrl+Click或Cmd+Click选中两个文件标签页(不能是同一文件的两个副本) - 右键 →
Compare Files,会新建一个只读的 diff 标签页,显示+/-行和颜色块 - 这个 diff 视图里没有滚动同步,但你能直接点击跳转到源文件对应位置(点击左侧行号旁的箭头图标)
- 如果需要持续对比,建议用外部工具:命令行跑
diff -u a.py b.py,或安装GitGutter插件看当前文件与 Git HEAD 的行级差异
强行多窗口同步?插件也无解,别浪费时间
搜到的 SyncScroll 或 MultiEditUtils 类插件,目标是多光标/多选区同步,不是跨窗口滚动。尝试 hook 窗口事件的第三方方案,在 Sublime 4 的异步 UI 架构下基本失效,且容易引发崩溃或卡死。真实项目中遇到需要频繁比对多个文件的场景,应该:
- 回归双栏 +
scroll_follow(适合结构相似、行数接近的文件) - 用
vimdiff/meld/vscode --diff做专业对比(它们才是为这设计的) - 如果必须用 Sublime 处理大量 diff,搭配
SideBarEnhancements右键快速调用系统 diff 工具更可靠
记住:Sublime 的强项是快速编辑单文件,不是可视化差异分析。把工具用在刀刃上,比折腾同步滚动实在得多。










