状态栏不显示编码是因为show_encoding未启用,需在settings–user中设为true;它仅反映当前解码方式而非文件真实编码,新建文件、二进制文件或ascii/无bom utf-8文件均不显示。

状态栏显示编码但不显示?先开 show_encoding
Sublime Text 默认不显示编码,不是坏了,是开关没打开。直接在 Preferences → Settings – User 里加这一行:"show_encoding": true
保存后新打开的文件立刻生效;已打开的文件可能需切换 Tab 或重开一次才刷新。
别写 show_encoding_on_status_bar——这是 v3.2 以前的废弃字段,2026 年所有主流版本都忽略它。
状态栏显示的 UTF-8 或 Western (Windows 1252) 是什么?
它只表示 Sublime “此刻用什么编码去解字节”,不是文件真实编码,也不等于磁盘内容的原始编码。
常见误判场景:
• 实际是 GBK 的中文文件(无 BOM),Sublime 会当成 Western (Windows 1252) 解,状态栏就显示这个,满屏方块
• 新建未保存文件永远显示 UTF-8,但它根本还没写入任何字节
• 点击状态栏编码名只是临时换种方式读内存,不改磁盘内容
乱码了怎么快速验证真实编码?用 Reopen with Encoding
别猜,直接试。快捷键 Ctrl+Shift+P(Win/Linux)或 Cmd+Shift+P(macOS),输入 Reopen with Encoding 回车,从列表选常见项:
• 中文乱码优先试 Chinese (GBK)、GB2312、UTF-8、UTF-8 with BOM
• 如果列表里没有 Chinese (GBK),说明没加载对应解码器:在用户设置里加 "fallback_encoding": "Chinese (GBK)",重启再试
• 每次切换后看中文是否立刻变正常;更乱就换下一个——这步不改文件,安全可逆
确认编码后怎么真正转存?必须用 Save with Encoding
看到中文正常 ≠ 文件已转好。要真正改磁盘内容,得走另一条路:
• 菜单 File → Save with Encoding → 选目标编码(如 UTF-8)
• 别点 Convert to UTF-8(老插件遗留项):它只改内存,不自动保存,容易误以为已完成
• 若选的编码不支持当前字符(比如用 Western (ISO 8859-1) 存中文),Sublime 会弹警告并中止
• 保存后建议用 xxd 文件名 | head -n1 检查是否含 ef bb bf(BOM),Python/Git 常因这个报错
最麻烦的其实是混合编码文件——复制粘贴进来的几行来自不同源头,单次切换解决不了。这种得靠十六进制工具定位异常字节段,或者逐段手动重建。











