Fira Code 连字需同时满足字体安装、编辑器配置正确、连字开关开启三条件;VSCode 中须设 editor.fontLigatures 为 true,且字体名须与系统注册名一致,官方字体文件才含完整连字特性表。

Fira Code 的连字(ligatures)不会自动生效,必须同时满足「字体已安装」「编辑器/终端配置正确」「连字开关开启」三个条件,缺一不可。
为什么装了 Fira Code 字体却看不到 => 变成箭头?
常见现象是输入 =>、!= 或 === 后仍显示为普通字符,没有连字效果。根本原因不是字体没装好,而是 VSCode 没启用连字渲染机制。
-
editor.fontLigatures必须设为true,仅设置editor.fontFamily不够 - 字体名称必须与系统注册名完全一致——Windows 上通常是
"Fira Code",macOS 可能是"FiraCode-Retina"或"Fira Code",可用「字体册」或「字体管理器」确认准确名称 - 某些旧版 VSCode(
- 如果使用了主题插件(如 One Monokai),个别主题会覆盖字体设置,需检查是否被工作区设置或扩展干扰
terminal.integrated.fontFamily 和 editor.fontFamily 要分开配
VSCode 编辑器区域和集成终端用的是两套独立字体配置,很多人只改了 editor.fontFamily,结果终端里 ls -l 或 git log 依然用默认字体,连字全失效。
- 编辑器连字靠:
"editor.fontFamily": "'Fira Code'", "editor.fontLigatures": true - 终端连字靠:
"terminal.integrated.fontFamily": "Fira Code"—— 注意这里不需要fontLigatures字段,终端连字由字体本身和终端渲染引擎决定 - 远程开发(Remote-SSH / WSL)时,
terminal.integrated.fontFamily配置只起提示作用,真正生效的是远程系统是否安装了 Fira Code;本地装了没用 - 终端中若出现字符重叠或光标错位,大概率是字体未正确安装或字号/字符间距不匹配,可加
"terminal.integrated.letterSpacing": 0.5微调
连字不是万能的,有些场景它反而会干扰
连字提升可读性,但也会在特定上下文中造成混淆,尤其是涉及字符串字面量、正则表达式或文档注释时。
- 例如:
"a=>b"(字符串内)或/==>/(正则)可能被错误连字,导致语法高亮异常或调试困惑 - VSCode 默认只对代码 token 应用连字,但部分语言扩展(如某些 Markdown 预览插件)可能误触发,此时可在对应语言设置中关闭:
"[markdown]": { "editor.fontLigatures": false } - 团队协作时,若他人未启用连字,同一行代码在不同人屏幕上显示不同(比如
!==显示为 ≢ 或原样),可能引发 PR 评审歧义 - 性能上无明显损耗,但老旧 GPU 或虚拟机环境偶有渲染延迟,可临时禁用测试是否为连字引起
最容易被忽略的一点:连字效果依赖于字体文件是否包含完整的 OpenType liga 和 calt 特性表。从非官方渠道下载的精简版 Fira Code(比如某些“优化版” TTF)可能删掉了连字数据,看起来像 Fira Code,但 => 就是变不成 ⇒ —— 建议始终从 GitHub 官方仓库 下载 FiraCode-Regular.ttf 或 FiraCode-Bold.ttf。











