最稳安装方式是通过package control,手动克隆仅适用于修改源码;filediffs只对比已打开文件的缓冲区内容,不支持侧边栏未打开文件直接对比。

用 Package Control 安装最稳,别手抖去 git clone
FileDiffs 插件官方推荐且最可靠的安装方式就是通过 Package Control——它自动处理路径、依赖和后续更新。手动克隆仓库(比如 git clone https://gitcode.com/gh_mirrors/su/sublimeFileDiffs)只适合你要改源码的极少数情况;否则极易因 Packages 目录位置识别错误导致插件不加载,连菜单都出不来。
- 按
Ctrl+Shift+P(windows/linux)或Cmd+Shift+P(macos)打开命令面板 - 输入并选择
Package Control: Install Package - 等几秒后搜索框出现,输入
FileDiffs,回车安装 - 装完无需重启,立刻可用
对比两个文件前,必须先「打开」它们
FileDiffs 本身**不支持直接对比侧边栏里两个未打开的文件**——这是高频误解。它只对比已加载进 Sublime 缓冲区的内容(即已打开的标签页、选中文本或剪贴板),不是文件系统层面的路径比对。
- 正确做法:先双击侧边栏打开两个文件 → 标签页右键 → 选
FileDiffs: Compare - 快捷键更高效:在用户快捷键文件(
Preferences → Key Bindings – User)中加一行:{ "keys": ["ctrl+shift+d"], "command": "file_diff_menu" }按
Ctrl+Shift+D弹出菜单,再选目标(如“vs 另一个已打开文件”) - 如果侧边栏 Ctrl/Cmd 多选两个文件后右键没反应,大概率是路径含中文或空格——FileDiffs 调用 shell 时会静默失败。临时解法:把项目移到
C:/dev/或/home/user/project这类纯英文路径下
想侧边栏点两下就对比?得靠 SideBarEnhancements 配合
要实现“侧边栏选中两个文件 → 右键 → Diff with each other”,单靠 FileDiffs 不行,必须额外装 SideBarEnhancements 插件。它底层仍是调用 FileDiffs,所以编码一致性至关重要。
- 装好
SideBarEnhancements后,侧边栏按住Ctrl(Win/Linux)或Cmd(macOS)点击选中两个文件 → 右键 →Diff with each other - 若一个文件是
UTF-8 with bom,另一个是纯UTF-8,会直接报UnicodeDecodeError且无任何提示——务必统一保存为相同编码(推荐全用无 BOM 的 UTF-8) - 该操作不支持混合编码格式(如 GBK vs UTF-8),也不会自动转码,失败就是静默失败
配外部对比工具前,先确认你真需要它
FileDiffs 内置的行级差异高亮够用大部分场景;只有当你需要三路合并、图形化操作或 Git 集成时,才值得配 Meld、Beyond Compare 等外部工具。配置错路径或参数,反而让对比功能整体失效。
- 进入
Preferences → Package Settings → FileDiffs → Settings – User - 填入类似这样的配置(以 Meld 为例):
{ "cmd": ["meld", "$file1", "$file2"] }注意
$file1和$file2是占位符,不能写死路径 - Linux/macOS 下确保
meld命令在$PATH中;Windows 下需写完整路径,如"C:Program FilesMeldMeld.exe" - 配完不用重启,但第一次调用可能卡顿——因为要启动外部进程,小文件看不出差别,大文件(>10MB)建议慎用
FileDiffs 的核心限制始终是「缓冲区优先」:它不碰磁盘文件,只比内存里的内容。所有看似奇怪的行为——比如侧边栏双选无效、编码报错无声、外部工具打不开——几乎都源于这个前提。理解这点,比记十个快捷键更重要。