- 开发工具
- 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
导读
本指南围绕 Nerd Fonts 仓库中 AdwaitaMono 补丁字体 展开,系统介绍 Adwaita Mono——GNOME 48+ 桌面环境的默认等宽字体——在打上 Nerd Fonts 图标补丁后的全部使用要点:三种变体(Nerd Font / Mono / Propo)如何选择、14 套内置图标集的构成与版本、连字行为,以及下载已补丁字体或使用 font-patcher 自行打补丁两条获取路径。阅读完你将能准确判断"该用哪个变体装进终端",并能基于当前仓库完成安装与定制。
Adwaita Mono:GNOME 桌面默认等宽字体的来龙去脉
Adwaita Mono 是GNOME 48+ 的默认等宽字体。它并非从零设计,而是对 Iosevka 字体的定制化修改,目标是让等宽场景与 Adwaita Sans 视觉风格协调统一;而 Adwaita Sans 本身又是 Inter 字体的一种变体,其核心差异化在于对小写字母 L(l)做了消歧处理,避免与数字 1、大写 I 混淆。
当前仓库中的 Adwaita Mono 上游版本为34.1(见 fonts.json 中"version": "34.1"的声明)。字体源文件与许可证由 GNOME 官方 GitLab 实例提供,Nerd Fonts 仓库仅负责对其进行图标补丁化:
- 未打补丁的原始字体存放在 src/unpatched-fonts/AdwaitaMono/,包含
AdwaitaMono-Regular.ttf、AdwaitaMono-Bold.ttf、AdwaitaMono-Italic.ttf、AdwaitaMono-BoldItalic.ttf四个字重/样式文件; - 打补丁后的成品位于 patched-fonts/AdwaitaMono/。
在 fonts.json 的元数据中,Adwaita Mono 被标记为"isMonospaced": true(等宽字体)、"licenseId": "OFL-1.1-no-RFN"(SIL Open Font License 1.1,且不允许 Reserved Font Name 声明,对应主仓库表格中 *RFN 一栏的 "NO"),"description": "The monospace typeface for GNOME"。主 readme.md 的 Patched Fonts 表格同样将其版本列为 34.1。
三种字体变体:Nerd Font / Mono / Propo 该怎么选
Nerd Fonts 的补丁过程会对每个源字体生成三个变体,AdwaitaMono 也不例外。理解三者的差异是正确安装的前提。
TL;DR 速查
- 终端等强制等宽场景:选择带
Nerd Font Mono(缩写NFM)的变体。它严格保持每个字形占一个字符宽度的等宽特性,是终端、命令行工具、代码编辑器的安全之选; - 希望图标更大更醒目:选择不带
Mono的Nerd Font(缩写NF)变体。此时图标宽度约为普通字母的 1.5 倍,视觉冲击力更强,多数现代终端都能支持,但实际效果因终端而异(ymmv); - 比例字体场景(GUI 界面元素、幻灯片/演示文稿等):选择带
Nerd Font Propo(缩写NFP)的变体。"Propo" 即 proportional(比例)的缩写,图标按比例宽度排布,适合非等宽排版环境。
变体在仓库中的体现
这三个变体的区分可以直接从仓库文件命名中验证。以 install.sh 的安装逻辑为例,脚本通过文件名匹配筛选变体:
- 变体
M:find_filter="-name '*NerdFontMono*'"(只取 Mono 变体) - 变体
P:find_filter="-name '*NerdFontPropo*'"(只取 Propo 变体) - 默认:
-not -name '*NerdFontMono*' -and -not -name '*NerdFontPropo*' -and -name '*NerdFont*'(排除两类,取纯 Nerd Font 变体)
安装后的字族名称对应为:AdwaitaMono Nerd Font、AdwaitaMono Nerd Font Mono、AdwaitaMono Nerd Font Propo。请以该名称在终端或编辑器的字体设置中检索。
图标集构成:AdwaitaMono 内置了哪些图标
Nerd Fonts 的核心价值在于将多套业界常用图标字体合并注入到等宽字体中。AdwaitaMono 补丁版包含以下 14 套图标集(上游版本与许可证来自 patched-fonts/AdwaitaMono/README.md 的 Icon sets 表格):
| 图标集名称 | 上游项目 | 版本 | 许可证 |
|---|---|---|---|
| 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/svgs/,字形数据与名称映射分别维护在 glyphnames.json 中。正因为注入了 Material Design Icons、Font Awesome、Octicons 等主流图标集,开发者才能在 Vim、tmux、shell 提示符(Powerline 风格)、文件管理器预览等场景中直接输出对应的图标字形。
连字支持:补丁后是否保留连字
Adwaita Mono 源于 Iosevka,Iosevka 本身以丰富的编程连字(ligature)著称。补丁后的行为规则如下:
- 连字通常会被保留在补丁字体中。font-patcher 只做字形合并,不会主动破坏源字体的连字规则;
- 历史上 Nerd Fontsv2.0.0 的
Nerd Font Mono变体曾不包含连字,这一限制自v2.1.0 起已移除。也就是说,只要使用 v2.1.0 及更新版本的补丁字体,Mono 变体同样保留连字; - 如果你的终端支持连字渲染、但个人不希望看到连字效果,通常可以在终端自身的设置中显式关闭连字功能,无需更换字体。
两条获取路径:下载成品 or 自行打补丁
方案一:直接下载已补丁字体
最省事的做法是从仓库的 Release 页面获取稳定版本。AdwaitaMono 提供了两种封装格式,均位于最新 Release 的下载资源中:
AdwaitaMono.zip(通用压缩包)AdwaitaMono.tar.xz(体积更小)
下载解压后,将字体文件安装到系统字体目录(Linux 通常为~/.local/share/fonts或/usr/share/fonts),然后运行fc-cache -f刷新字体缓存即可在终端中看到。
方案二:使用 font-patcher 自行打补丁
如果你需要裁剪图标集以缩小字体体积、或要定制源字体未提供的字重/样式变体,可以基于仓库中的 font-patcher 脚本自行处理:
# 以 Adwaita Mono 原字体为例,生成带全部图标集的补丁字体 font-patcher -c AdwaitaMono-Regular.ttf # 也可以只注入部分图标集(--only)以控制最终文件大小 font-patcher --only "Font Awesome" AdwaitaMono-Regular.ttffont-patcher 支持通过--mono、--proportional等参数控制输出变体类型,以及--only/--exclude精确指定注入哪些图标集。可用的全部命令行参数可在仓库根目录的 font-patcher 脚本与 src/config.sample.cfg 配置样例中查阅。打补丁所需的源字体正是 src/unpatched-fonts/AdwaitaMono/ 目录下的四个.ttf文件。
在 Linux 上一键安装所有补丁字体
仓库提供了跨平台的安装脚本,也可按需只安装 AdwaitaMono。以 install.sh 为例,其支持通过环境变量或参数选择字体目录与变体:
# 仅安装 AdwaitaMono 的默认 Nerd Font 变体 ./install.sh AdwaitaMono # 指定变体:M 为 Mono、P 为 Propo ./install.sh -M AdwaitaMono # 安装 AdwaitaMono Nerd Font Mono ./install.sh -P AdwaitaMono # 安装 AdwaitaMono Nerd Font Propo脚本内部正是通过前面介绍的find_filter规则按文件名筛选出对应变体的字体文件,再复制到系统字体目录并刷新缓存。Windows 用户可参考同目录的 install.ps1;在浏览器中通过 CSS 使用图标字体的方式,可参见 css/nerd-fonts-generated.css。
小结
Adwaita Mono 作为 GNOME 48+ 的默认等宽字体,经由 Nerd Fonts 补丁后兼具 Iosevka 血统的字形风格与 14 套主流图标集的完整字形覆盖。选择变体时记住一句话:终端用 Mono,大图标用 NF,比例排版用 Propo。下载成品或基于 font-patcher 自行定制,两条路径在当前仓库中都有完整的实现支撑(元数据见 fonts.json,源字体见 src/unpatched-fonts/AdwaitaMono/),可随时落地使用。
- 开发工具
- 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
相关推荐
Annotation Mono Nerd Font 使用指南:手写风等宽字体与图标融合实战
Annotation Mono Nerd Font 使用指南:手写风等宽字体与图标融合实战 Annotation Mono Nerd Font 是 Nerd F
开发工具CLIDeparture Mono Nerd Font:像素风等宽字体的图标补丁与安装实战指南
Departure Mono Nerd Font:像素风等宽字体的图标补丁与安装实战指南 <输出文章 Departure Mono Nerd Font:像素风等
开发工具CLINerd Fonts 中的 Aurulent Sans Mono:无衬线等宽字体的图标化改造、变体选择与自助补丁指南
Nerd Fonts 中的 Aurulent Sans Mono:无衬线等宽字体的图标化改造、变体选择与自助补丁指南 本指南以仓库中 AurulentSansM
开发工具CLI
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考