不能。Sublimerge 要求两个文件必须已保存到磁盘,不支持未保存的缓冲区,否则静默失败;比对前需确认状态栏无“*”星号、右键在侧边栏文件图标上操作。

Sublimerge 能不能直接对比未保存的文件?
不能。Sublimerge 明确要求两个文件都必须已保存到磁盘,不支持 unsaved buffer(未保存的临时缓冲区)。你右键选中侧边栏里的文件、点 Sublimerge: Compare With,如果其中一个是刚新建还没 Ctrl+S 的标签页,它会静默失败,不报错也不弹窗——你只会发现没反应。
- 实操建议:对比前先确认两个文件状态栏右下角显示编码(如
UTF-8)且无「*」星号;有星号就说明没保存 - 常见错误现象:
Sublimerge: No files selected报错,90% 是因为你在编辑区空白处或标签页上右键,而不是在侧边栏的文件图标上右键 - 为什么这样设计:Sublimerge 底层要读取文件路径并调用 diff 引擎,未保存内容没有真实路径,无法定位源数据
比对文件夹时卡死或假死怎么办?
Sublimerge 是目前唯一能右键直接比对两个文件夹的 Sublime 插件,但性能敏感——尤其遇到含大量二进制文件(.png、.zip)、超千级文件数或深度嵌套目录时,界面容易卡顿甚至无响应。
- 实操建议:比对前先关掉右下角齿轮图标里的
Ignore whitespace和Ignore case,这两项开启后会逐字符比对,大幅拖慢渲染 - 使用场景:适合比对配置目录(如
conf/vsconf.prod/)或小规模源码结构变更;别用来比node_modules或build/ - 兼容性影响:Sublime Text 4 下部分用户反馈出现
AttributeError: 'NoneType' object has no attribute 'view',多见于插件旧版,建议从官网下载最新 release,而非通过 Package Control 安装过时包
右键菜单里找不到 Sublimerge 选项?
装完插件不重启 Sublime Text,右键菜单就不会刷新出 Sublimerge 条目——这不是安装失败,是 Sublime 的插件加载机制决定的:多数 UI 集成(包括右键菜单、命令面板注册)需重启生效。
- 实操建议:安装后务必完全退出 Sublime(Windows/macOS/Linux 均需关掉所有窗口+进程),再重新打开
- 常见错误现象:命令面板能搜到
Sublimerge: Compare Files,但右键侧边栏没菜单——这说明插件逻辑已加载,只是 UI 元素未挂载 - 参数差异:Alt 拖拽触发对比(把一个文件拖进另一个已打开文件的 tab 区域并按住
Alt)无需重启即可用,但仅限已打开的文件;右键和命令面板方式才依赖重启
Sublimerge 合并后要不要手动保存?
要。Sublimerge 的合并(Merge)视图是只读预览,哪怕你点击左侧箭头把改动“复制过去”,也只是临时写入当前视图,不会自动保存到原始文件。改完必须手动 Ctrl+S,否则关闭标签页就丢弃所有操作。
- 实操建议:合并前先备份原文件,或确保 Git 已跟踪该文件,避免误覆盖后无法回退
- 为什么这样做:Sublimerge 的 Merge 功能本质是三路 diff 渲染器,不是文件系统写入器;它的设计目标是“安全预览”,而非“一键落地”
- 容易被忽略的地方:免费版 Sublimerge 支持文件/文件夹比对,但交互式合并(Merge)和 Git 集成属于付费功能;如果你点了
Sublimerge: Merge却弹出购买提示,说明你正在用免费版触发了高级模块

















