状态栏不显示编码格式需检查encoding_status插件是否启用;手动切换编码应通过命令面板选择Convert to UTF-8等操作,而非Save As;GBK乱码文件须先Reopen with Encoding再转换;UTF-8-BOM需用Save with Encoding设置。

状态栏不显示编码格式?检查是否启用了 encoding_status 插件
Sublime Text 默认开启 encoding_status 插件,但若状态栏没显示编码(如 UTF-8、GBK),大概率是该插件被手动禁用或损坏。它不属于第三方插件,而是 Sublime 自带的内置插件,路径在 Packages/Default/encoding_status.py。
确认方式:打开 Preferences → Package Settings → Default → Encoding Status,如果菜单存在且可点击,说明插件正常;若整个菜单项缺失,需重置默认包:
- 关闭 Sublime
- 删除或重命名
Packages/Default文件夹(备份后再操作) - 重启 Sublime,它会自动恢复默认包
手动切换编码后状态栏没更新?别用 Save As 强制改后缀
常见错误是:用 File → Save As 把文件另存为 .txt 后再选编码——这不会改变当前视图的编码声明,状态栏仍显示原编码,且可能造成乱码。
正确做法是通过命令面板触发真实编码转换:
-
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)呼出命令面板 - 输入
Convert to UTF-8、Reopen with Encoding或Set Encoding -
Reopen with Encoding:仅重新解析当前内容(不改文件存储编码) -
Convert to UTF-8等:修改内容并按新编码写入磁盘(会改变文件实际字节)
注意:Set Encoding 只是告诉 Sublime “请按此编码显示”,不转换字节,适合临时查看乱码文件,但保存后仍按原编码写入。
GBK / GB2312 文件打开就乱码?优先用 Reopen with Encoding
中文 Windows 环境下大量旧文本是 GBK 编码,但 Sublime 默认以 UTF-8 解析,一打开就是乱码。此时不能直接点 Save,否则会把乱码内容按 UTF-8 保存,彻底毁掉原文。
安全流程如下:
- 打开乱码文件 →
Ctrl+Shift+P→ 输入Reopen with Encoding - 选择
GB2312或GBK(Sublime 中二者基本等价) - 确认显示正常 → 再执行
Convert to UTF-8(如需转为通用编码)→Save
如果 Reopen with Encoding 列表里没有 GBK,说明未启用对应解码器,需安装 ChineseTweak 或手动在 Packages/User/Preferences.sublime-settings 中添加:
"fallback_encoding": "GBK"
想让所有新文件默认用 UTF-8-BOM?别改全局 encoding 设置
有人在 Preferences → Settings 里加 "default_encoding": "UTF-8-BOM",结果新建文件状态栏显示 UTF-8-BOM,但保存时仍无 BOM —— 因为 Sublime 的 default_encoding 仅控制“新建空文件”的初始声明,不控制写入行为。
真正生效的方式只有两种:
- 用插件:安装
ConvertToUTF8(支持自动识别并添加 BOM) - 手动操作:新建文件 →
Save→ 状态栏右键编码名 →Save with Encoding → UTF-8 with BOM
注意:UTF-8 with BOM 是 Sublime 的专用选项,和纯 UTF-8 不兼容,某些工具(如 Python 解释器、Git diff)会把它当异常编码处理。除非明确需要(如对接老旧 Windows API),否则不建议设为默认。










