ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

D2Coding Nerd Font 使用指南:面向韩语开发者的连字编码字体补丁版

D2Coding Nerd Font 使用指南:面向韩语开发者的连字编码字体补丁版 开发工具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点击查看免费下载导读D2Coding 是 NAVER 出品的韩语编程字体本仓库以连字ligature变体为基础对其进行补丁处理在保留原字体连字与等宽特性的前提下注入 3600 图标字形。本文以 patched-fonts/D2Coding/README.md 为骨架结合仓库源码与配置完整讲解该字体的命名由来SIL OFL Reserved Font Name 机制、内置图标集清单、NF / NFM / NFP 三种变体的选择策略以及直接下载补丁版与使用 font-patcher 自行补丁两条获取路径并给出 Linux / macOS / Windows 下的安装命令帮助你快速在终端、编辑器中获得带图标的韩语编码体验。字体概述D2Coding是专为韩语使用者设计的编码字体其字形针对韩文Hangul的阅读与书写习惯做了优化。本仓库收录的是带连字ligature的变体源码版本为1.3.2对应上游文件D2Coding-Ver1.3.2-20180524-ligature.ttf。在仓库中该字体的相关资源分布如下补丁完成后的成品字体目录patched-fonts/D2Coding/内含字体说明 README未打补丁的原始字体src/unpatched-fonts/D2Coding/含 Regular 与 Bold 两个带连字 ttf、OFL.txt 许可证与 config.cfg 补丁配置字体元数据登记bin/scripts/lib/fonts.json从 bin/scripts/lib/fonts.json 的登记项可以看到官方对该字体的定义字段值含义unpatchedNameD2Coding上游字族名称patchedNameD2KodingLigature补丁后的字族名称见下文命名说明version1.3.2上游版本号licenseIdOFL-1.1-RFN采用 SIL Open Font License 1.1且包含保留字体名RFNRFNtrue该字体存在 Reserved Font Name 限制isMonospacedtrue属于等宽字体folderNameD2Coding仓库中的目录名caskNamed2codingHomebrew Cask 中的名称为什么叫 D2KodingLigature 而不是 D2Coding这是本文档中最关键也最容易被忽略的一个问题补丁后的字体为什么不沿用 D2Coding 这个名字答案是为了遵守SIL Open Font LicenseOFL中的Reserved Font Name保留字体名机制。该机制规定No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users.也就是说任何对字体的修改版本在没有获得版权所有者书面许可的情况下都不得使用保留字体名。由于 Nerd Fonts 补丁会向原字体中注入大量图标字形本质上构成对 D2Coding 的修改版本因此补丁后字体的主名称被改为D2KodingLigature保留了 D2 Koding 的字形同时呼应 Ligature 连字特性而不是直接命名为 D2Coding。该机制设计的核心目的可以归纳为避免冲突Avoid collisions防止不同修改版本共用同一名称导致用户混淆保护作者Protect authors避免修改版字体的缺陷被误记到原作者名下最小化支持负担Minimize support原版权所有者无需为第三方修改版提供技术支援鼓励衍生Encourage derivatives在明确命名的前提下允许社区放心地二次开发。这一限制在 bin/scripts/lib/fonts.json 中以RFN: true、licenseId: OFL-1.1-RFN被显式记录补丁流程据此自动采用D2KodingLigature作为成品字族名。如果你在使用补丁后的字体时发现系统字体列表中显示的是D2KodingLigature Nerd Font这正是该机制生效的结果而非版本错误。补丁内置的图标集D2Coding 补丁版注入的图标并非来自单一来源而是聚合了 14 个上游图标项目。下表完整列出各图标集的名称、上游项目、版本与许可证信息来自 patched-fonts/D2Coding/README.md图标集名称上游项目版本许可证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这些图标集的 SVG 源文件即存放在仓库的 src/glyphs/ 与 src/svgs/ 目录中font-patcher 在补丁时按图标集逐组注入并可通过命令行参数按需裁剪见下文自行补丁。选择哪个变体NF / NFM / NFPTL;DR 速查补丁完成后同一字族会生成三套命名后缀选择原则如下如果你的环境限制使用等宽字体例如多数终端请选择名称带Nerd Font Mono简称NFM的字体如果你希望图标更大通常是普通字母宽度的 1.5 倍左右请选择不带Mono的Nerd Font简称NF。多数终端支持这种变体但效果因终端而异如果你在比例字体proportional环境中工作如 GUI 界面元素、演示文稿编辑等请选择带Nerd Font Propo简称NFP的字体。连字Ligatures说明补丁后的字体默认保留连字特性。需要注意的历史行为Nerd Fontsv2.0.0及之前Nerd Font Mono变体不含连字自v2.1.0起这一限制已被取消Nerd Font Mono也保留连字。因此如果你使用的终端本身支持连字渲染但又不想看到连字效果通常可以在终端自身的设置中关闭连字而无需更换字体。原理详解当你把字族如 D2Coding和字重如 Bold、Regular确定后还需要在上述三种变体间做最终选择。这一设计的原因是图标字形注入后默认占用与普通字母相同的宽度单位Nerd Font变体会让图标加宽以提升辨识度代价是破坏严格等宽Nerd Font Mono则强制所有字形包括图标保持同一宽度以适配等宽终端的光标对齐Nerd Font Propo则按比例宽度排列适合非等宽排版场景。获取方式下载成品 与 自行补丁Option 1直接下载已补丁的字体推荐给大多数用户对于稳定版本可以直接从项目的 release 页面下载 D2Coding 补丁版压缩包D2Coding.zip全量包D2Coding.tar.xz体积更小的压缩格式下载解压后即可在系统字体目录中安装D2KodingLigature Nerd Font系列字体文件。Option 2使用 font-patcher 自行补丁如果你需要不包含全部图标例如为了缩小字体体积或其他自定义变体可以基于仓库内的原始字体自行补丁原始字体位于 src/unpatched-fonts/D2Coding/D2Coding-Ver1.3.2-20180524-ligature.ttfRegular 连字版D2CodingBold-Ver1.3.2-20180524-ligature.ttfBold 连字版使用仓库根目录的 font-patcher 脚本执行补丁并通过参数选择要注入的图标集、变体类型等。仓库为 D2Coding 提供了专门的补丁配置 src/unpatched-fonts/D2Coding/config.cfg其内容为[Config] commandline: --xavgcharwidth 500这意味着官方在补丁 D2Coding 时会附加--xavgcharwidth 500参数。该参数的作用在 font-patcher 的源码中有明确注释调整 OS/2 表中的xAvgCharWidth字段用于兼容 notepad 等旧应用以及非拉丁字体。其取值规则为不传默认从源字体复制该值0按 OS/2 version 2 规范从字体自行计算500或其他具体数值直接设置为该值。font-patcher 还会对参数做合法性校验不接受负数且最大值不能超过 16384否则脚本会以错误码退出。对于韩文等包含宽字形的非拉丁字体手动指定一个合理的平均字符宽度此处为 500可显著改善其在旧版文本应用中的对齐表现。安装方法补丁版字体下载或生成后可通过仓库自带的安装脚本一键安装到系统中。Linux / macOSinstall.sh安装单个字体将FontName替换为字体目录名./install.sh D2Coding安装全部字体注意体积很大按需使用./install.shWindows PowerShellinstall.ps1./install.ps1 D2CodingPowerShell 脚本还支持一次安装多个字体及预演模式./install.ps1 D2Coding ./install.ps1 FiraCode, Hack ./install.ps1 DejaVuSansMono -WhatIf完整的安装说明见仓库根目录 readme.md。需要注意的是当前仓库的安装脚本依赖对仓库的浅克隆且新版本字体可能已不在仓库内请以 release 页面提供的成品压缩包为准。补充字体回退Fallback策略如果你的编辑器或终端在没有安装上述补丁字体的情况下显示图标为方框豆腐块还可以利用系统的字体回退机制大多数系统在当前字体缺少某字形时会自动从其他字体中查找替代字形。此时可以额外安装仓库的 10-nerd-font-symbols.confFontconfig 配置或专用 Symbols 字体让图标字形由回退字体补足而不必强制整个界面改用补丁字体。小结D2Coding Nerd Font 是韩语编码字体 聚合图标的组合产物上游 D2Coding 1.3.2 提供面向韩文优化的字形与连字补丁流程按 SIL OFL 的 Reserved Font Name 机制将其改名为D2KodingLigature并注入 14 套开源图标集。日常使用只需记住终端选NFM、要更大图标选NF、比例排版选NFP官方默认配置通过--xavgcharwidth 500优化了非拉丁字体的平均字宽兼容性。无论是直接下载 release 压缩包还是基于 font-patcher 自定义补丁都能快速获得一套可用的韩语开发字体环境。赞分享开发工具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点击查看免费下载相关推荐Perfetto 实战 FAQ命令行打开 Trace、JSON 兼容性、多进程/多 Trace 合并全解析Perfetto 实战 FAQ命令行打开 Trace、JSON 兼容性、多进程/多 Trace 合并全解析 Perfetto 是一个生产级的客户端侧 trac开发工具CLInerd-fonts 中的 Fira Code编程连字字体打补丁全指南nerd fonts 中的 Fira Code编程连字字体打补丁全指南 导读 本文以 nerd fonts 仓库中 patched fonts/FiraCod开发工具CLIfirst-contributions 分支清理指南合并后正确删除本地与远程分支first contributions 分支清理指南合并后正确删除本地与远程分支 本指南针对 first contributions 新手贡献流程的收尾环节开发工具CLI上一篇Vibe-Trading 中的 GTJA Alpha 191开源移植的版权边界、算子替换与无前视纯度契约下一篇深入解读 ClickHouse v20.5.1.3833-prestable 版本发布说明并行 FINAL、PostgreSQL 协议与字典 direct 布局创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表