
昨天晚上,盯着屏幕写代码(其实是在改Bug)改到眼睛发酸的时候。
我突然产生了一种强烈的厌倦感。
不是对代码厌倦,是对着那个看了好几年的JetBrains Mono厌倦了。

虽然它是很好,很经典,很标准。
但在那个深夜,我看着屏幕上冷冰冰的、棱角分明的字母,心里只有一个想法:
我想换个口味。
我想找个看起来“软”一点,“甜”一点,但又不能失去极客范儿的东西。
于是,我又不务正业地去Github上逛了一圈。
结果,还真让我挖到了一个宝藏。
一个叫 Maple Mono 的开源字体项目。

截止到我写这篇文章的时候,它已经有了 21600+ 的Star。
说实话,第一眼看到这个名字的时候,我就被戳了一下。
Maple,枫树。
听起来就有一种糖浆流淌下来的丝滑感。
下载下来体验了半个小时后,我毫不犹豫地把我所有编辑器的字体,全换成了它。

今天,必须给你们安利一下。
我们常见的编程字体,像Fira Code或者Source Code Pro,都在追求一种极致的“工业感”。
横平竖直,像钢筋混凝土一样。

但Maple Mono不一样。
它最大的特点,就是 圆润。

作者非常用心地把每一个字母的边角都做了圆角处理。
你看那个 a,那个 g,还有那个 0。

它保留了代码字体的清晰度,但去掉那种刺眼的锐利感。
看起来,就像是刚刚打磨好的鹅卵石,或者是快要融化的软糖。
这就是我说的,“枫糖味”。
除了圆润,作者还在很多字符的设计上,夹带了“私货”。
比如这个 @ 符号,还有这个 $ 和 &。

它没有用那种传统的写法,而是用了一种更接近手写体、更有设计感的线条。
还有它的斜体。
如果你在VS Code里开启了斜体注释,你会发现,它不是简单地把字歪过来。
而是真的像手写一样,有着连笔和独特的结构。

当然,光好看是没用的,毕竟是拿来干活的家伙事。
Maple Mono真正让我决定留下的,是它对中文环境的非常友好。
写代码或者写Markdown文档的朋友,一定遇到过一个让人抓狂的瞬间:
中英文混排的时候,表格对不齐。
因为绝大多数编程字体,并没有专门为中文做优化,导致一个中文字符的宽度,往往不是两个英文字符的宽度。
稍微多打几个汉字,排版就乱了。
那种感觉,就像是吃面条的时候吃到一半发现没盐了,很难受。
但Maple Mono,完美解决了这个问题。
它参考了“资源圆体”,实现了 中英文 2:1 的完美对齐。
两个英文字符的宽度,严格等于一个中文字符。

不管是写代码注释,还是在Markdown里画表格,那个竖线,直得就像我此时此刻正直的人格。
舒服。
真的太舒服了。

作为一个现代的编程字体,Ligatures(连字)功能自然是标配。
就是当你打出 != 或者 -> 或者 === 的时候,字体会自动把它们变成一个更符合逻辑的符号。
Maple Mono在这里做得非常激进且丰富。

甚至,它还支持 Nerd Font。
经常折腾终端美化、或者用Neovim的朋友应该知道这意味着什么。
你不需要再去满世界找补丁,也不用自己去给字体打补丁。
Maple Mono直接提供了内置Nerd Font图标的版本。

下载,安装,完事。
对于懒人来说,这就是最高的礼遇。
如果上面的这些还不能满足你。
作者还非常硬核地提供了“定制化构建”。
V7版本之后,这玩意甚至支持了 可变字体。
你可以自己调节字体的粗细,不再局限于Regular或者Bold。

甚至,如果你不喜欢它那个特别的 @,或者你不喜欢连字。
你完全可以通过配置文件,或者作者提供的在线工具,手搓一个只属于你的Maple Mono。
想要什么样的手感,你自己说了算。
写在最后
其实,折腾字体这事儿,挺玄学的。
它不能帮你自动写代码,也不能帮你把Bug变没,更不能帮你涨工资。
但是。
它是我们这些数字游民,每天面对时间最长的东西。
可能一天要有8到10个小时,我们都在盯着这些字符看。
换一个字体,就像是给住了很久的房子,换了一套舒服的床单,或者摆上了一盆新开的花。
它改变不了房子的面积,但它能改变你住在里面的心情。
Maple Mono 就是这样一个存在。
它是一个开发者,为了让自己(和大家)看着更开心,一点一点打磨出来的作品。
开源,免费,且充满诚意。
如果你也看腻了手里的字体,不妨去试一试。
也许,这一点点微小的改变,能让你今晚的加班,变得没那么难熬呢?
GitHub 项目地址:https://github.com/subframe7536/Maple-font
今天的分享到此结束,感谢大家抽空阅读,我们下期再见,Respect!
