Sublime字体配置无效需确认三件事:改的是用户设置而非默认设置、font_face值与系统字体全名完全一致、字体已正确安装并被系统识别。

编辑区字体改完没反应?先确认这三件事
Sublime 不会报错,但填错一个字符就静默失效。最常见原因不是配置写错了,是根本没改对地方或系统没认出字体名。
- 必须改 Preferences → Settings 右侧的「用户设置」,左侧 Default 是只读的,改了也会被升级覆盖
-
font_face值必须和系统字体册里注册的**全名完全一致**:Windows 写"Fira Code",macOS 写"SF Mono",Linux 写"DejaVu Sans Mono";写成"FiraCode-Regular.ttf"或"monaco"都无效 - 字体必须已由系统安装并识别:Windows 右键选“为所有用户安装”,macOS 在“字体册”App 中搜索确认全名(注意空格、连字符、“Regular”后缀),Linux 运行
fc-cache -fv刷新缓存
侧边栏字体为什么死活不变?它根本不读 font_face
你改了 font_face 发现代码区变了,但左侧文件树还是小得费眼——这不是配置没生效,是 Sublime 根本就没设计让侧边栏读这个字段。它走的是 UI 主题渲染路径,和编辑器正文完全两套系统。
- 侧边栏、标签页、状态栏字体必须通过修改当前启用的
.sublime-theme文件实现 - 用
PackageResourceViewer插件打开主题资源,搜索"class": "sidebar_label",在其 rule 里加"font.face": "Fira Code"和"font.size": 13 - 改完必须完全退出 Sublime(macOS 要从菜单栏选「退出」,不是关窗口)再重开,否则缓存不刷新
- ST4.4277+ 支持
ui_font_size全局缩放 UI,旧版只能硬改主题
连字(ligatures)怎么开才真有效?三重条件缺一不可
输入 !=、=>、&& 看不到合并效果?不是插件问题,是底层支持链断了。
- 字体文件本身必须含连字表:推荐用 Fira Code ≥ v6.2、Cascadia Code 或 JetBrains Mono 完整版;Consolas、Courier New 这类老字体即使加了
["liga"]也无效 - Sublime 配置要配对:
"font_face": "Fira Code"+"font_options": ["liga"],少一个都不行 - ST 版本必须 ≥ 4.4143(Build 4143+),旧版连字支持极不稳定,部分符号可能渲染失败
- 验证方式:直接输入
!= == => && ||,别依赖插件提示;若没变化,优先重装字体而非反复调配置
中英文混排显示方块?单字体方案在这里行不通
纯英文编程字体(如 Fira Code、Source Code Pro)通常不含中文字符,强行设为 font_face 会导致中文注释/字符串显示为方框。
- 必须用双字体 fallback 方案:
"font_face": "Fira Code, PingFang SC, Microsoft YaHei"(macOS)、"Fira Code, Microsoft YaHei"(Windows) - 中文字体也要尽量选等宽变体,否则缩进错乱、括号不对齐;Windows 推荐
YaHei Consolas Hybrid,macOS 用SF Mono搭配PingFang SC - 禁用
subpixel_antialias:它在 macOS 上会让某些中文字体更模糊,反而降低可读性
真正卡住人的从来不是“怎么写配置”,而是“为什么写了没反应”。编辑区、侧边栏、UI 缩放、连字、中英混排——每一块都走独立路径,且任一环节出错都无提示。动手前先确认系统字体名、ST 版本、主题类型,比盲目贴配置有用得多。


















