ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Gohufont Nerd Font 指南:11/14 像素级终端字体的补丁与图标融合实战

Gohufont Nerd Font 指南:11/14 像素级终端字体的补丁与图标融合实战 开发工具CLI【免费下载链接】nerd-fontsIconic font aggregator, collection, patcher. 3,600 icons, 50 patched fonts: Hack, Source Code Pro, more. Glyph collections: Font Awesome, Material Design Icons, Octicons, more项目地址https://gitcode.com/GitHub_Trending/ne/nerd-fonts点击查看免费下载Gohufont 是一款专为编程与终端场景设计的位图衍生字体以 11 像素与 14 像素两种点阵高度著称。本文以仓库中 patched-fonts/Gohu/README.md 为主线完整介绍 Gohufont 的背景、Nerd Fonts 对源字体的预处理修正、注入的 14 套图标集、NF/NFM/NFP 三种变体的选择逻辑以及通过发行包或 font-patcher 自行补丁的两种实战路径帮助你准确选型并落地使用。Gohufont 简介为编程与终端而生的点阵字体Gohufont 由 Hugo Chargois 于 2010 年创作定位是用于编程和终端使用的字体A font for programming and terminal use。它的核心特点是从位图bitmap字体自动描边automatically traced转换为 TrueType 格式并提供11 像素与14 像素两种高度的点阵字形11px 版本字形更紧凑适合在高密度屏幕上获得更小的字号观感14px 版本字形更舒展、更清晰是 Gohufont 最广为人知的形态也是 Nerd Fonts 预处理修正的重点对象。该字体由 Guilherme Maeda 转换为 TrueType上游 gohufont-ttf 项目字体本身遵循 WTFPLDO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE v2许可证见 src/unpatched-fonts/Gohu/COPYING-LICENSE可自由复制、修改与再分发。在 Nerd Fonts 仓库中Gohufont 的源字体未补丁存放于 src/unpatched-fonts/Gohu已补丁字体存放于 patched-fonts/Gohu。仓库目录结构四个子家族 × 三种变体已补丁字体按上游点阵尺寸与字符集划分为四个子目录每个子目录内都包含三种 Nerd Fonts 变体共 12 个 TTF 文件子目录对应源字体说明11/src/unpatched-fonts/Gohu/11/gohufont-11.ttf11px 高度的基础版本14/src/unpatched-fonts/Gohu/14/gohufont-14.ttf14px 高度含 Nerd Fonts 的问号修正uni-11/src/unpatched-fonts/Gohu/uni-11/gohufont-uni-11.ttf11px 的 Unicode 扩展版本uni-14/src/unpatched-fonts/Gohu/uni-14/gohufont-uni-14.ttf14px 的 Unicode 扩展版本以11/子目录为例patched-fonts/Gohu/11 下产出GohuFont11NerdFont-Regular.ttf—— 标准 Nerd Font双宽度图标GohuFont11NerdFontMono-Regular.ttf—— Nerd Font Mono等宽图标与文字同宽GohuFont11NerdFontPropo-Regular.ttf—— Nerd Font Propo比例字宽图标不加悬伸。其中 *uni-系列**是上游覆盖更广 Unicode 字符集拉丁扩展等的变体适合需要更多西文字符覆盖的编程场景。当前补丁版本基线为1.33见 src/unpatched-fonts/Gohu/README.md。预处理源字体Nerd Fonts 修正 gohufont-14 的错误问号这是 Gohufont 在 Nerd Fonts 中特有的预处理步骤。README 明确指出Nerd Fonts corrects the wrong question mark in gohufont-14.Nerd Fonts 修正了 gohufont-14 中错误的问号。仓库中保留了完整的修正工具链可以复现这一修复过程第一步用 fontTools 的ttx把 TTF 转成可读写的 XML 文本格式。src/unpatched-fonts/Gohu/fix_gohufont_14.sh 展示了完整流程#!/usr/bin/env bash set -e cd 14 ttx gohufont-14.ttf patch gohufont-14.patch mv gohufont-14.ttf gohufont-14_orig.tt_ ttx gohufont-14.ttx rm gohufont-14.ttx即ttx反编译 → 应用补丁 → 备份原始字体为gohufont-14_orig.tt_→ 重新编译回 TTF。第二步应用补丁。问题根源与修复细节记录在 src/unpatched-fonts/Gohu/14/gohufont-14.patch原始字体中0x3F半角问号?被错误地映射到了字形question#1——该字形实际绘制的是倒问号¿U00BF 反转问号的轮廓xMin146, yMin1, xMax1024, yMax1464补丁将该字形改名为inverted并把0x3F重新映射到真正的question字形同时在0xBF码位补上inverted映射map code0xbf nameinverted/!-- INVERTED QUESTION MARK --并删除 post 表中多余的 psName 映射。最终效果14px 版本中半角问号?与倒问号¿各归其位这也是该字体在 src/unpatched-fonts/Gohu/14 中同时存在gohufont-14.ttf修正版与gohufont-14_orig.tt_原始备份的原因。从源码结构看这是目前仓库内唯一对该上游字体做的预处理修正。注入的图标集14 套字形全家桶补丁后的 Gohufont 注入了与 Nerd Fonts 其他字体一致的图标集合。以下为 README 中记录的完整清单上游、版本与许可证一一对应图标集名称上游项目版本许可证Codiconsmicrosoft/vscode-codicons0.0.45CC BY 4.0Deviconsdevicons/devicon2.17.0MITextraglyphssource-foundry/Hack-MITFont AwesomeFortAwesome/Font-Awesome6.5.1CC BY 4.0Font Awesome ExtensionAndreLZGava/font-awesome-extension0.0.3MITFont Logoslukas-w/font-logos1.3.0unlicensedMaterialDesignTemplarian/MaterialDesign-FontOct 6, 2022Apache 2.0Octiconsprimer/octicons18.3.0MITSeti and originaljesseweed/seti-ui0.8.1MITPomiconsgabrielelana/pomicons1.001OFL 1.1 RFNPowerline Extraryanoasis/powerline-extra-symbols1.200MITPowerline Symbolspowerline/powerline1.000 (ca 2013)MITPower Symbols IECjloughry/UnicodeFeb 2015MITWeather Iconserikflowers/weather-icons2.0.10 (1.100)OFL 1.1覆盖了文件类型图标Font Awesome、Seti、Devicons、版本控制Octicons、Font Logos、Powerline 分隔符Powerline Symbols / Extra、状态/电源符号Power Symbols IEC、天气图标与代码编辑器图标Codicons等常用语义足以支撑大多数开发工具链与终端提示符场景。各图标集的实际字形 SVG 源文件与命名映射可进一步查阅 src/glyphs 与 glyphnames.json。如何选择字体家族NF / NFM / NFP补丁字体统一提供三条选择路径README 给出了明确的决策规则受限等宽场景终端等必须使用等宽字体选择名称带Nerd Font Mono简称NFM的变体希望图标更大通常是普通字母宽度的约 1.5 倍选择不带Mono的Nerd Font简称NF大多数终端支持但视终端而定ymmv比例排版场景GUI 元素、演示文稿编辑等选择Nerd Font Propo简称NFP。对应到本仓库即 Gohu 各子目录中的三种命名后缀变体文件命名示例图标宽度典型场景NFGohuFont14NerdFont-Regular.ttf双宽度约 1.5 字符宽支持宽图标的终端、状态栏NFMGohuFont14NerdFontMono-Regular.ttf单宽度与文字同宽严格等宽的终端、编辑器NFPGohuFont14NerdFontPropo-Regular.ttf比例宽度无悬伸overhangGUI、文档、演示连字Ligatures说明Nerd Fonts 补丁字体通常保留上游原有的连字在v2.0.0时代Nerd Font Mono系列不含连字自v2.1.0起这一限制已被移除如果你使用支持连字的终端但不想要连字通常可以在终端设置中关闭连字功能。获取方式一下载已补丁的字体选择发行版稳定版本时从 Nerd Fonts 的release 页面获取对应的 Gohu 字体包有两种打包格式Gohu.zip—— 常规打包Gohu.tar.xz—— 体积更小更省流量与磁盘。若追求最新开发特性也可以直接使用本仓库 patched-fonts/Gohu 下的开发版本文件。获取方式二用 font-patcher 自行补丁如果你需要对字形做定制例如为缩小字体体积而只注入部分图标集可以使用仓库根目录的 font-patcher 脚本对任意字体进行补丁。其基础用法与常用参数均可从font-patcher --help查看源码见 font-patcher参数作用font位置参数要补丁的字体文件路径如gohufont-14.ttf--complete/-c添加全部可用字形完整补丁--mono/-s生成等宽字体已有与新增字形均为单宽度隐含--single-width-glyphs--variable-width-glyphs不调整前进宽度、不加悬伸即 Nerd Font Propo 语义--single-width-glyphs将字形生成为单宽度而非默认的双宽度--fontawesome仅添加 Font Awesome 字形--material/--mdi仅添加 Material Design Icons--octicons仅添加 Octicons--codicons仅添加 Codicons--powerline仅添加 Powerline 字形--powerlineextra仅添加 Powerline Extra--powersymbols仅添加 IEC 电源符号--weather仅添加天气图标--pomicons仅添加 Pomicons--fontlogos仅添加 Font Logos--fontawesomeext仅添加 Font Awesome Extension--braille添加盲文字形可选控制风格rectangle / circle / gapless--adjust-line-height/-l调整行高使 Powerline 分隔符更居中--outputdir/-out指定补丁后字体输出目录--extension/-ext指定输出字体格式如 ttf、otf--careful检测到已有字形时不覆盖--quiet/-q静默模式不输出详细日志--makegroups使用备选命名方法命名补丁字体默认 1可选 -1~6典型完整补丁命令与 src/archive-font-patcher-readme.md 中记录的用法一致fontforge --script ./font-patcher --complete /path/to/gohufont-14.ttf例如只想注入 Powerline 符号以保持 Gohu 点阵字体的小体积可运行fontforge --script ./font-patcher --powerline --mono /path/to/gohufont-14.ttf说明font-patcher为 Python 脚本需通过 FontForge 执行--mono与--variable-width-glyphs分别对应 README 中 NFM 与 NFP 的宽度语义补丁产物的命名也会自动带上对应后缀。安装建议获取或补丁出 TTF 后可借助仓库根目录提供的跨平台安装脚本快速安装Linux/macOS./install.shWindowsPowerShell./install.ps1。也可以手动将 TTF 文件复制到系统字体目录并在终端/编辑器中启用 GohuFont如GohuFont14 Nerd Font Mono作为等宽字体。许可证说明Gohufont 本体含修正后的 11px / 14px / uni 版本遵循WTFPL v2见 src/unpatched-fonts/Gohu/COPYING-LICENSE注入的 14 套图标集分别遵循各自上游许可证见上文图标集表格使用时请留意表格中列出的 CC BY 4.0、MIT、Apache 2.0、OFL 1.1 等条款。综合来看Gohufont Nerd Font 是小像素点阵 现代图标符号结合的实用方案12 个已补丁文件覆盖 11/14 像素与 uni 扩展四个家族 × 三种宽度变体配合仓库自带的问号修正工具链与可定制的 font-patcher无论是严格等宽的终端场景还是需要大图标与比例字宽的 GUI 场景都能找到对应配置。赞分享开发工具CLI【免费下载链接】nerd-fontsIconic font aggregator, collection, patcher. 3,600 icons, 50 patched fonts: Hack, Source Code Pro, more. Glyph collections: Font Awesome, Material Design Icons, Octicons, more项目地址https://gitcode.com/GitHub_Trending/ne/nerd-fonts点击查看免费下载相关推荐Nerd Fonts Gohufont uni-11 补丁字体完全指南11 像素点阵编程字体的图标化与安装选择Nerd Fonts Gohufont uni 11 补丁字体完全指南11 像素点阵编程字体的图标化与安装选择 本文聚焦 Nerd Fonts 仓库中的 Go开发工具CLIDeparture Mono Nerd Font像素风等宽字体的图标补丁与安装实战指南Departure Mono Nerd Font像素风等宽字体的图标补丁与安装实战指南 输出文章 Departure Mono Nerd Font像素风等开发工具CLIGohu Nerd Font uni-14 完全指南14 像素位图编程字体的图标化改造与实战使用Gohu Nerd Font uni 14 完全指南14 像素位图编程字体的图标化改造与实战使用 导读 本篇技术指南以 Nerd Fonts 仓库中 patc开发工具CLI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表