如何评价字体Sarasa Gothic(更纱黑体)?

最好能从需求、设计思想、使用情境来评价一下。 和一些出现稍早的以编程为目标的字体,例如 Inconsolata, Fira Code 相比,有哪些长处…
关注者
166
被浏览
453,224

15 个回答

对于写代码的人来讲,本来想尝试一下的,结果有一个小瑕疵,导致用不起来。编程字体选择,我觉得有几个标准:

  • 辨识度:不要有混淆,易混淆字符要有明显的区别。
  • 抗疲劳:同样的尺寸,笔画尽量舒展,不要挤在一起看着累。
  • 更好的间距控制:同样大小的字体,同屏让我看到更多内容,却不会嫌太挤。

至于美观,各人审美不同,对于效率党来讲,排着上面三条之后。那么 Sarasa 的问题在哪里呢?其他都还好,但是最后一条间距控制,很要命。

先来看我最常用的 Inconsolata 全屏化的样子:

Inconsolata NerdFont 11 号字体

使用 Inconsolata 11 号字体,足够清晰,有辨识度,同时间距控制很好,编辑器全屏化后,一共可以显示:211x48 个字符,却不会显得很挤,看不清楚,这让我最大可以同时阅读 48 行源代码,同屏看到的东西更多,开发更有效率。

再看 Sarasa 11号全屏化的样子(发现问题没?):

Sarasa Mono 11 号字体

同样使用 Sarasa mono 11号字体,美观我不评价,辨识度这些都还好,同屏却只能显示 211x38 个字符,也就是说全屏看代码最多只能同时看 38 行,这对比上面的 Inconsolata ,整整少了 10 行内容,我觉得实在是太浪费了。

这是我 Sarasa Mono 的设置:

如果我的设置有问题,欢迎 @Belleve 指正。

二者都是 GVim,都用 Direct2D 绘制,绘制参数相同。那么矢量字体是可以随意设置长和宽的,对吧?话虽如此,但真的强制设置一下高度 8.5,宽度 5.5,重量 300:

Sarasa Mono:高 8.5,宽 5.5,重 300

这样刚好强制达到了 Inconsolata 的 211x48 个字符的水平,但是放大点对比就非常明显了:

Inconsolata 11号:全屏 211x48 个字符 (点击放大查看)

Inconsolata 在 211x48 个字符的情况下,每个字符辨识度任然很高,笔画清晰且舒展,并且字符间有着舒适的间距,而 Sarasa 强制设置成 211x48 的放大样子:

Sarasa Mono h8.5 w5.5 W300:全屏 211x48 个字符(点击放大查看)

可以发现同样全屏强制成 211x48 个字符的情况下,也就是每个字符占用同样大小的一小块屏幕面积的时候,Sarasa 对比上面的 Inconsolata 显得又矮又小,全部缩在一起了,感觉实际尺寸比 Inconsolata 小了两号一样,几乎到了看不清楚的地步,调高重量也无济于事。

可以对比两种字体最下面一行 s:name 的地方,Inconsolata 每个笔画清晰可见,Sarasa 的 M 字母,笔画都糊在一起了,再看上方 has('win64') 的字母 w,Inconsolata 的 w 字母比 Sarasa 的 w 字母舒展很多,看起来不累。

综上,目前 Sarasa 的行间距控制不如 Inconsolata,处于效率考虑,并不适合编写代码使用。希望这方面能够在未来版本中得到改进。


--

所以我还是继续用 Inconsolata 吧,目前在辨识度和间距控制上,没有任何一款字体超过它的。


--

补充:评论区说 GVim 可以设置 :set linespace=-2 不改字号强行修改行间距,我试了一下:

我把 linespace 设置到了 -3,有一些缓解,但是还是没有 inconsolata 紧凑,同时箭头标注处的字母 g 的下半部分,会出现被下一行遮挡的情况。设置成 -2 的话,帮助又没那么大。

再,GVim 能够让你调整的地方很多,但你换个其他软件,比如终端软件,这个 linespace 是没法调整的,行间距问题,归根结底还是得靠字体本身解决。


--

更纱黑体本身是由 Inter(之前的版本是 Noto Sans)/ Iosevka 和思源黑体的汉字部分合并而来的,谈不上什么设计思想,只是方便使用而已。