Sublime Text中Fira Code无效是因为font_face值与系统注册全名不一致或未刷新缓存;需确认Windows用"FiraCode-Regular"、macOS查字体册全名、Linux用fc-list验证,配置后必须完全退出并重启。

装了 Fira Code 字体却在 Sublime Text 里看不到效果?不是字体没装对,就是配置写错了——Sublime 不认文件名、不认显示名,只认系统注册的全名,而且大小写、空格、连字符全部敏感。
怎么确认系统里真正装好了 Fira Code
Sublime 不会扫描 .ttf 文件,也不读取字体管理器里的“显示名称”。它只查操作系统注册的 Full Name(完整名称),这个名称可能和你双击安装时看到的名字完全不同。
- Windows:打开「设置 → 字体」,搜索
FiraCode,点进详情看「完整名称」字段,常见值是FiraCode-Regular或Fira Code(注意有无空格) - macOS:打开「字体册」→ 找到 Fira Code → 右键「显示简介」→ 查「全名」,不是「版权」或「样式」;有些版本注册为
FiraCode-Retina - Linux:终端运行
fc-list : family | grep -i fira,输出中带引号的才是真实 family name,例如"Fira Code"或"FiraCode-Regular"
装完别急着开 Sublime,先刷新字体缓存:fc-cache -fv(Linux/macOS),Windows 则需重启字体服务或直接重启系统。
用户设置里 font_face 怎么写才生效
必须写在 Preferences → Settings 右侧(Settings – User)面板,JSON 格式要严格合法。错一个字母、多一个逗号、引号漏掉,整个配置就静默失效。
-
font_face是字符串,必须加双引号,值必须和系统注册的全名完全一致,比如"FiraCode-Regular"(推荐)或"Fira Code"(空格易出错) -
font_size是纯数字,单位是 px,常用12–16;高分屏建议从14起试 - 别写成
font-face、fontface、FontFace,这些全无效 - 保存后无需重启,编辑区会立即刷新字体
正确示例:
{
"font_face": "FiraCode-Regular",
"font_size": 14
}
为什么连字(ligatures)还是不显示
连字不是装了字体就自动开的。Sublime 从 Build 4126+ 才通过 font_options 有限支持,且依赖字体变体名、渲染选项、甚至系统底层配合。
- 确保用了支持连字的变体名,比如
"FiraCode-Regular",而不是笼统的"Fira Code" - 加这行配置:
"font_options": ["liga", "subpixel_antialias"];macOS 上若连字糊,可换"gray_antialias" - 改完必须完全退出 Sublime(不只是关窗口),再重开——这是最容易漏的一步
- 验证方法:新建文件,输入
!= == => --> /*,看到合并符号(如 ≠、⇒、→、/*)才算成功
注意:某些插件(如 BracketHighlighter、TrailingSpaces)依赖单字符边界,开启连字后可能出现光标偏移或匹配异常,这不是 bug,是连字改变了视觉字符宽度。
侧边栏、标签页等 UI 字体能一起改吗
不能靠 font_face 和 font_size 统一改。Sublime 的 UI 字体由主题(theme)控制,修改需要编辑 .sublime-theme 文件,且改完必须重启编辑器。
更稳妥的做法是换一个已适配 Fira Code 的 UI 主题(比如 Adaptive.sublime-theme 或第三方主题),或者干脆接受默认 UI 字体——毕竟编辑区才是主力战场,UI 字体影响远小于代码可读性。
真正卡住人的,从来不是“怎么配”,而是“配什么名”和“配完要不要重启”。系统注册名不对、漏刷新缓存、改了默认设置没动用户设置、连字开了但没重开编辑器——这四点占了 90% 的失败案例。


















