- 开发工具
- CLI
【免费下载链接】nerd-fonts
Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts: Hack, Source Code Pro, more. Glyph collections: Font Awesome, Material Design Icons, Octicons, & more
导读
本文以 patched-fonts/Overpass/Non-Mono/Regular/README.md 为骨架,系统讲解 Nerd Fonts 仓库中Overpass补丁字体家族:它由 Red Hat 出品的开源 web 字体 Overpass 3.0.5 打补丁而来,融入了 15 套图标集的 3600+ 图标,并针对等宽使用场景做了特殊的连字(ligature)处理。读完本文,你将掌握Nerd Font(NF)、Nerd Font Mono(NFM)、Nerd Font Propo(NFP)三种变体的区别与选型方法,了解该字体在仓库中的目录结构与来源版本,并能用仓库自带 font-patcher 自行定制补丁字体。
Overpass 补丁字体是什么
Overpass 是一款开源(open source)web 字体家族,由 Red Hat 设计并发布(上游项目主页见 src/unpatched-fonts/Overpass/README.md 指向的 RedHatOfficial/Overpass)。它在 Nerd Fonts 仓库中被补丁(patched)为内置丰富图标字形的变体,仓库元数据 fonts.json 给出的关键信息如下:
- unpatchedName / patchedName:
Overpass(打补丁前后均保留同一字族名) - version:
3.0.5 - licenseId:
OFL-1.1-no-RFN or LGPL-2.1-only - description:An open source font family inspired by Highway Gothic(受公路标牌字体 Highway Gothic 启发的开源字体家族)
- isMonospaced:true(在字体元数据层面按等宽字体标注)
- RFN:false(未声明 Reserved Font Name,见 src/readme-rfn-addendum.md)
主项目总览 readme.md 的字体清单中也收录了该家族(Overpass Nerd Font,版本 3.0.5),其补丁字体目录为 patched-fonts/Overpass。
连字处理:fi、fl、ldot被移除
关联文档特别注明:fi、fl、ldot连字被移除,因为它们只映射到一个 advance width(单一前进宽度)。这背后有仓库源码配置的支撑:在补丁源字体目录 src/unpatched-fonts/Overpass/Non-Mono/config.cfg 中,命令行参数为:
[Config] commandline: --removeligatures --makegroups 2 abort-mono-patch: True [Subtables] ligatures: [ "Ligature Substitution lookup 20 subtable", "'liga' Standard Ligatures in Latin lookup 18 subtable" ]Mono 变体的配置 src/unpatched-fonts/Overpass/Mono/config.cfg 同样以--removeligatures --makegroups 2打补丁。也就是说,打补丁流程会显式调用--removeligatures移除指定的标准连字子表,以保证补丁后字体的等宽布局不被连字破坏——这正是文档中"移除原因"的源码级解释。
仓库目录结构:从源字体到补丁字体
Overpass 在仓库中有完整的"源字体 → 补丁字体"两级目录:
- 源字体(未打补丁):src/unpatched-fonts/Overpass 下设
Mono/与Non-Mono/两个分支:Mono/提供Bold、Light、Regular、Semi-Bold4 个字重;Non-Mono/提供Bold、Bold-Italic、Extra-Bold、Extra-Bold-Italic、Extra-Light、Extra-Light-Italic、Heavy、Heavy-Italic、Italic、Light、Light-Italic、Regular、Semi-Bold、Semi-Bold-Italic、Thin、Thin-Italic共 16 个字重/样式;- 两个分支各带一份
config.cfg(打补丁参数)与LICENSE.md(许可文本),文件清单见 src/unpatched-fonts/fontfilenames。
- 补丁字体(可直接安装):patched-fonts/Overpass 同样分为
Mono/与Non-Mono/:Non-Mono/每个字重目录内提供OverpassNerdFont-*.otf(即Nerd Font,无 Mono 后缀)与OverpassNerdFontPropo-*.otf(Nerd Font Propo)两份文件;Mono/每个字重目录内提供OverpassMNerdFont-*.otf(Nerd Font)、OverpassMNerdFontMono-*.otf(Nerd Font Mono)、OverpassMNerdFontPropo-*.otf(Nerd Font Propo)三份文件;- 每个字重目录均附带
README.md(即本文所依据的说明)与LICENSE.md。
由此可看到命名规律:非等宽分支不提供 Mono 变体(因其本身是比例字体,补丁配置中也以abort-mono-patch: True跳过 Mono 处理),只有等宽 Overpass Mono 源字体才生成完整的三种变体。
三分钟选型:NF、NFM、NFP 到底选哪个
关联文档的 "Which font?" 部分给出了核心选型原则,这也是整个 Nerd Fonts 项目通用的规则(同见模板 src/readme-per-directory-addendum.md):
| 使用场景 | 选择 | 缩写 | 图标宽度 |
|---|---|---|---|
| 终端等受等宽限制的环境 | Nerd Font Mono | NFM | 固定等宽,图标占固定列宽 |
| 想要更大图标(约 1.5 个普通字母宽) | Nerd Font(不带 Mono) | NF | 图标更宽,多数终端支持,但效果因人而异(ymmv) |
| 比例(proportional)场景:GUI 元素、演示文稿等 | Nerd Font Propo | NFP | 比例宽度 |
连字(Ligatures)说明
- 补丁字体中连字通常被保留;
- Nerd Fonts
v2.0.0时代,Nerd Font Mono字体不含连字,该限制自v2.1.0起已取消; - 如果你的终端支持连字但你不想要,通常可以在终端设置里直接关闭连字功能(无需更换字体)。
两条落地路线
路线一:直接下载已打补丁的字体
- 稳定版:从项目的 release 页面下载对应字体的打包文件,Overpass 的包名为:
Overpass.zipOverpass.tar.xz(体积更小)
- 开发版(未发版的最新构建):直接使用仓库 patched-fonts/Overpass 目录下的
.otf文件。
路线二:自行打补丁
- 使用仓库根目录的 font-patcher 脚本对源字体打补丁,可通过参数裁剪图标集(例如不包含全部符号,以获得更小的字体文件),具体参数可运行
./font-patcher --help查看。
注:关联文档中引用上游与 release 页的外部链接(GitHub 等)不在本文内展开;如需排障,可参考仓库中对应 FAQ 相关内容。
补丁字体家族内容:15 套图标集与许可
Overpass 补丁字体内置了以下 15 套图标集(表格完整继承自关联文档,upstream 链接仅作来源标识,不在此展开为跳转):
| Icon set name | 来源 | 版本 | 许可证 |
|---|---|---|---|
| Codicons | microsoft/vscode-codicons | 0.0.45 | CC BY 4.0 |
| Devicons | devicons/devicon | 2.17.0 | MIT |
| extraglyphs | source-foundry/Hack | - | MIT |
| Font Awesome | FortAwesome/Font-Awesome | 6.5.1 | CC BY 4.0 |
| Font Awesome Extension | AndreLZGava/font-awesome-extension | 0.0.3 | MIT |
| Font Logos | lukas-w/font-logos | 1.3.0 | unlicensed |
| MaterialDesign | Templarian/MaterialDesign-Font | Oct 6, 2022 | Apache 2.0 |
| Octicons | primer/octicons | 18.3.0 | MIT |
| Seti and original | jesseweed/seti-ui | 0.8.1 | MIT |
| Pomicons | gabrielelana/pomicons | 1.001 | OFL 1.1 RFN |
| Powerline Extra | ryanoasis/powerline-extra-symbols | 1.200 | MIT |
| Powerline Symbols | powerline/powerline | 1.000 (ca 2013) | MIT |
| Power Symbols IEC | jloughry/Unicode | Feb 2015 | MIT |
| Weather Icons | erikflowers/weather-icons | 2.0.10 (1.100) | OFL 1.1 |
这些图标集的 SVG 源文件与字形构建配置位于 src/glyphs(94 个 SVG 与生成脚本)和 src/svgs,可进一步查看图标如何被注入字体。相关名称映射见 glyphnames.json。
许可与再分发注意点
Overpass 字体采用双许可:SIL Open Font License 1.1 与 LGPL 2.1,版权归 Red Hat, Inc.(见 patched-fonts/Overpass/Non-Mono/Regular/LICENSE.md)。要点:
- OFL 允许自由使用、研究、修改与再分发字体,但不得单独售卖字体本身;衍生作品必须沿用同一许可,且不能使用 Reserved Font Name(Overpass 未声明 RFN,见 fonts.json);
- 使用该字体创建的文档不受 OFL 约束;
- Nerd Fonts 项目采用 RFC(Renamed Font Concept,即重命名衍生字体)方式发布补丁字体,具体机制可参阅 src/readme-rfn-addendum.md。
安装与使用建议
- 安装字体:将选定的
.otf文件(如 patched-fonts/Overpass/Non-Mono/Regular/OverpassNerdFont-Regular.otf)安装到系统字体目录(Linux 通常为~/.local/share/fonts或/usr/share/fonts),然后刷新字体缓存(如fc-cache -f); - 在终端启用:在终端/编辑器设置中,将字体族选为
Overpass Nerd Font、OverpassM Nerd Font Mono或对应 Propo 变体(Windows Terminal、VS Code、Alacritty、iTerm2 等均支持); - 等宽场景优先 NFM:终端行列对齐依赖等宽,请优先选择
Nerd Font Mono变体; - 自定补丁:如需只保留部分图标以缩小体积,用 font-patcher 自行补丁是官方推荐路径(可参考 src/config.sample.cfg 了解参数配置格式)。
小结
Overpass Nerd Font 是 Nerd Fonts 生态中一款受 Highway Gothic 启发的开源字体补丁家族:源字体版本 3.0.5,内置 15 套图标集,针对等宽场景通过--removeligatures处理连字并跳过非等宽字体的 Mono 补丁。选择时遵循"终端用 NFM、大图标用 NF、比例界面用 NFP"即可快速定位,需要自定义时则可直接使用仓库的 font-patcher 脚本。相关目录与配置均可从 patched-fonts/Overpass 与 src/unpatched-fonts/Overpass 深入探索。
- 开发工具
- CLI
【免费下载链接】nerd-fonts
Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts: Hack, Source Code Pro, more. Glyph collections: Font Awesome, Material Design Icons, Octicons, & more
相关推荐
Go Mono Nerd Font 补丁字体全指南:Bold-Italic 变体的选择、获取与自行补丁
Go Mono Nerd Font 补丁字体全指南:Bold Italic 变体的选择、获取与自行补丁 本文以 Nerd Fonts 仓库中 Go Mono/B
开发工具CLINerd Fonts iMWriting(iA Writer)补丁字体完全指南:字体家族选择、图标合成与自行补丁实战
Nerd Fonts iMWriting(iA Writer)补丁字体完全指南:字体家族选择、图标合成与自行补丁实战 本指南以仓库内 patched fonts
开发工具CLIDistilly 人物蒸馏实战指南:把同事、亲友与名人的经验与表达方式,蒸馏为可复用的 Agent Skill
Distilly 人物蒸馏实战指南:把同事、亲友与名人的经验与表达方式,蒸馏为可复用的 Agent Skill 导读 :Distilly 是 Agent 工作流
开发工具CLI
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考