Maple Mono 上手手册:等宽连字与终端图标
【免费下载链接】maple-fontMaple Mono: Open source monospace font with round corner, ligatures and Nerd-Font icons for IDE and terminal, fine-grained customization options. 带连字和控制台图标的圆角等宽字体,中英文宽度完美2:1,细粒度的自定义选项项目地址: https://gitcode.com/GitHub_Trending/ma/maple-font
Maple Mono 是一款开源等宽字体,内置可变字重、连字与 Nerd-Font 终端图标。它替 IDE 和终端解决中英文错位、图标缺字、符号难辨三个问题。中英文宽度严格 2:1,连字覆盖 100+ 组合。
痛点与解法:混排错位、终端缺图标
写代码时最常撞上三个卡点:
- 中英文混排差一格,整列代码歪掉
- 终端图标显示成半框,或占两格宽度
==、->挤在一起,肉眼要逐个拆
CN 版把中文字宽固定为英文字宽的 2 倍,混排和 Markdown 表格直接对齐;NF 版把 Nerd-Font 图标打进字体文件,终端不缺字;100+ 连字在calt特性下自动生效。
🚀 上手路径:包管理器、手动、源码构建
包管理器(推荐)
官方包已打好 TTF 与 Nerd-Font 图标,装完即用,后续升级也省心。
Windows(Scoop):
scoop bucket add nerd-fonts scoop install Maple-Mono-NF-CNmacOS / Linux(Homebrew):
brew install --cask font-maple-mono-nf-cnArch Linux:
paru -S ttf-maplemono-nf-cn-unhinted手动安装:解压进字体目录
- 从项目 Releases 下载字体包并解压
- 把 TTF 复制进系统字体目录
- Windows:
C:\Windows\Fonts - macOS:
~/Library/Fonts - Linux:
~/.local/share/fonts
- Windows:
- 重启编辑器或终端使字体生效
源码构建:本地 build.py
想改宽度、图标或固化特性时用这条路径:
git clone https://gitcode.com/GitHub_Trending/ma/maple-font --depth 1 -b variable cd maple-font pip install -r requirements.txt python build.py --cn--cn默认关闭,需要中日文版本才加;没有 Python 环境也可以直接用仓库的Dockerfile构建。
⚙️ 核心能力拆解
连字系统:让=>和!==一眼可辨
开启连字即启用calt特性,常见映射:
| 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|
-> | → | => | ⇒ |
<= | ≤ | >= | ≥ |
== | ≡ | != | ≠ |
{{/}} | ⎧ / ⎫ | [TODO] | 圆角标签 |
不想要紧凑连字?ss01、ss02提供分离版==、<=;完整清单见 特性文档。
可变字重:一个文件从 100 到 800
| 字重 | thin / extralight | light / regular | medium / semibold | bold / extrabold |
|---|---|---|---|---|
| 数值 | 100 / 200 | 300 / 400 | 500 / 600 | 700 / 800 |
可变字体只有一个文件(wght轴),字重连续可调,斜体也带细粒度字形。CN 版暂不支持可变格式,选静态包即可。
Nerd-Font 图标:终端图标不缺字
图标由 font-patcher 直接打进字体文件,包名后缀区分内容:
| 后缀 | 内容 |
|---|---|
| 无 | 纯字体 |
-NF | 加终端图标 |
-CN | 加中日文字形 |
-NF-CN | 图标 + 中日文 |
图标默认与字符同宽,想固定或可变宽度见下文调优。
中英文 2:1 等宽:混排表格不错位
中文 1 字 = 英文 2 字符宽度,注释和 Markdown 表格混排时列位稳定。CN 版基于 Resource Han Rounded,覆盖简中、繁中与日文字形。
🎛️ 调优与进阶:宽度、图标、特性冻结
改config.json或给build.py传参,命令行优先于配置文件。
字形宽度:default / narrow / slim 三档,对应 600 / 550 / 500 字宽
python build.py --width slimNerd-Font 图标宽度:固定图标宽度为 1 字符,避免图标挤乱对齐
{ "nerd_font": { "mono": true } }中文间距:收窄 CN/JP 字间距,代价是字体不再被识别为等宽
python build.py --cn --cn-narrow特性冻结:把 cvXX / ssXX / zero 固化进默认字形,不再依赖编辑器配置
python build.py --feat zero,cv01,ss07普通预设:--normal接近 JetBrains Mono 观感,含带斜线的 0
python build.py --normal如果以上都不对,去读 特性文档。
❓ 高频疑问
连字不生效怎么排查
VSCode 必须在settings.json显式加"editor.fontLigatures": "'calt'",否则连字全部不触发。>>/>>>与上下文强关联,部分 IDE 里失效,改成"'calt', 'ss07'"强制开启:
{ "editor.fontFamily": "Maple Mono NF CN, monospace", "editor.fontLigatures": "'calt', 'cv01', 'ss05'" }hinted 和 unhinted 怎么选
1080P 及以下屏幕选带 hint 的包(文件名含-AutoHint或无-unhinted后缀),否则字符粗细不均。MacBook 等高分屏反过来,用 unhinted,hinted 会让文字发虚。
JetBrains 里 cvXX / ssXX 不生效
JetBrains 系列不支持 OpenType 特性,只能启用连字。想固化某个特性就本地重构建,例如python build.py --feat cv01,ss07,装构建产物。
0 和 O 分不清
在 VSCode 的editor.fontLigatures里追加'zero',即可显示带点的 0。不想每次配,就在构建时--feat zero直接固化。
中文字符间距太大
构建时加--cn-narrow收窄中文间距,注意这会让字体失去等宽识别。只想微调字形大小不改宽度,用--cn-scale-factor 1.1。
收尾行动
等宽、连字、图标,一体可定制。去 Releases 拉一份最新的 NF-CN 包,替换你现在的编辑器字体试试。
- 许可证:OFL.txt,SIL Open Font License 1.1,允许商用与再分发
- 贡献入口:README.md 的 Development 章节,构建与设计问题可在仓库提 Issue
【免费下载链接】maple-fontMaple Mono: Open source monospace font with round corner, ligatures and Nerd-Font icons for IDE and terminal, fine-grained customization options. 带连字和控制台图标的圆角等宽字体,中英文宽度完美2:1,细粒度的自定义选项项目地址: https://gitcode.com/GitHub_Trending/ma/maple-font
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考