侧边栏中文显示方块不是编码问题,而是sublime text侧边栏渲染机制独立于编辑区,仅认.sublime-theme文件中显式配置的"sidebar_label"类字体;必须新建sidebar-fix.sublime-theme文件,在packages/user目录下定义该类并指定系统已安装的中文字体,且需彻底重启软件方可生效。

侧边栏中文显示方块不是编码问题
Sublime Text 的侧边栏(sidebar)和编辑区用的是两套完全独立的渲染机制。你改 default_encoding、装 ConvertToUTF8 插件、甚至把文件存成 UTF-8-BOM,对侧边栏里的中文名毫无作用。它根本不读文件内容,只渲染路径字符串——而这个渲染过程只认 .sublime-theme 文件里明确写的 sidebar_label 类配置。
必须手动创建 sidebar-fix.sublime-theme
全局设置里的 "font_face": "Microsoft Yahei" 只影响编辑区、标签页、状态栏,对侧边栏无效。真正起作用的只有 theme 文件中带 "class": "sidebar_label" 的那一项。
- 菜单 Preferences → Browse Packages…,进入
Packages/User/目录 - 新建文件,命名为
sidebar-fix.sublime-theme - 内容严格按 JSON 格式写,最小有效配置如下:
[{
"class": "sidebar_label",
"font.face": "Noto Sans CJK SC",
"font.size": 13,
"line_height": 1.35
}, {
"class": "sidebar_container",
"content_margin": [8, 4, 8, 4]
}]
注意:"class" 值必须小写、全拼、无空格;font.face 必须是系统真实安装的字体名(Windows 用 Microsoft Yahei 或 SimHei,macOS 用 PingFang SC,Linux 用 Noto Sans CJK SC);JSON 末尾不能多逗号,引号必须闭合。
Settings – User 中启用该 theme 并彻底重启
在 Preferences → Settings – User 中加一行:
"theme": "sidebar-fix.sublime-theme"
改完后必须执行完全退出再重开(Cmd+Q 或 Ctrl+Q),Ctrl+R 或菜单里“Reload Project”都不重载 theme。
- 验证方式:打开一个含中文路径的文件夹,看侧边栏文件名是否正常
- 如果还是方块,先确认系统真有那个字体(macOS 打开“字体册”,Windows 进
C:\Windows\Fonts,Linux 运行fc-list | grep -i cjk) - 别信网上说的
dpi_scale设为 1.0 能“修复”——这只是缩放整个 UI,侧边栏字变小了,但乱码没解决
Linux 用户额外三步绕不开
即使 theme 写对、字体也装了,Linux 下仍常卡在底层依赖上:
- 没装中文字体包:Ubuntu/Debian 运行
sudo apt install fonts-noto-cjk;Arch 系用sudo pacman -S noto-fonts-cjk - 输入法前端缺失:需安装
fcitx5-frontend-gtk3和fcitx5-frontend-qt5,否则 GTK/Qt 主题下字体渲染可能不完整 -
IMESupport插件旧版失效:Package Control 里的原版不兼容新 Sublime,得手动下载魔改版放进Packages/IMESupport/并卸载原插件
theme 配置本身极简,但生效链条很长——从 JSON 语法、字体名拼写、系统字体存在性,到 Linux 底层渲染栈,任何一环断掉都会静默失败,且 Sublime 不报错也不提示。











