filediffs插件需通过package control安装,仅支持已保存、路径不同、编码统一的两个文件对比;未存盘、同文件、编码或换行符不一致会导致静默失败或乱码。

FileDiffs 插件能让你在 Sublime Text 里直接对比两个文件,但不是装上就自动可用——它对文件状态、编码、路径都有明确要求,不满足就会静默失败或显示乱码。
Package Control 装不上 FileDiffs?先验证 Package Control 本身是否正常
如果输入 Package Control: Install Package 后提示 command not found,说明 Package Control 没装好或已损坏。
- 按
Ctrl+`(Windows/Linux)或Cmd+`(macOS)打开控制台 - 粘贴官方安装代码(来自 https://packagecontrol.io/installation),回车执行
- 重启 Sublime,再试一次命令面板搜索
- 确认安装成功后,搜索框里必须**严格输入
FileDiffs(带 s,大小写敏感)**,别输成FileDiff或filediffs
右键没出现 FileDiffs 菜单项?检查文件是否“真打开”
FileDiffs 只作用于已加载进编辑器缓冲区的文件,不支持侧边栏未打开的文件直比。
- 两个文件都必须已保存,状态栏显示完整路径(如
/project/src/main.js),不能是Untitled - 不能是同一文件的两个标签页(比如分屏看同一个
index.css) - 侧边栏多选后右键无响应?可能是路径含中文或空格,临时移到纯英文路径下测试
- 装完插件无需重启,但右键菜单只在满足上述条件的标签页上才出现
对比结果全是乱码或错位行?编码和换行符不一致是主因
FileDiffs 不做编码转换,它比的是 Sublime 当前加载的文本流。一个 UTF-8 with BOM,一个 GBK,一个 CRLF,一个 LF,都会导致差异误报甚至崩溃。
- 逐个打开待比文件,右下角点编码名 → 选
Reopen with Encoding → UTF-8 - 再点右下角换行符标识 → 选
Convert Line Endings → Unix (LF) - 统一保存后再对比
- 仍乱码?在
Preferences → Package Settings → FileDiffs → Settings中加配置:"diff_tool": "git"(需系统已装 Git 并加入 PATH)
想一键并排看差异?默认不提供,得手动拆分视图
FileDiffs 默认输出是单标签页 diff 文本(类似 git diff 输出),不是左右并排视图。
- 先用
Ctrl+K, Ctrl+2(Win/Linux)或Cmd+K, Cmd+2(macOS)把窗口拆成左右两栏 - 分别在左右栏打开两个目标文件
- 在左栏右键 →
FileDiffs: Compare Current File with Other File - 生成的 diff 标签页会出现在当前栏,拖到右栏即可并排观察
- 快捷键可配:
{"keys": ["ctrl+shift+d"], "command": "file_diff_menu"}加到用户键绑定里











