之前的一篇文章就曾经提到字体的历史,这篇文章着重在推荐几款我个人认为非常适合编程这个环境的字体。

在选择一款字体之前,先要了解几个术语

  • monospace font 等宽字体,每一个字符宽度占用都是一样的
  • Sans-serif font 无衬线字体
  • Serif font 衬线字体
  • font weight 字重,字体的粗细程度,常见的字重有 Light, Regular, Medium, Bold 等等

在选择一款编程字体的时候我会考虑以下几个点:

  • 能否区分,数字 0 以及大小写 oO
  • 能否区分,数字 1 以及大写字母 I 以及小写字母 l
  • 个人喜欢等宽的字体,并且可以兼容终端,IDE 和各种操作系统

综合上面的考虑,我个人使用 Fira Code 作为终端,IntelliJ IDEA,VSCode 的编程字体已经很多年了。

另外 JetBrains 推出的 JetBrains Mono 字体也是一个不错的选择。

推荐一个盲测字体对比的网站

通过两两对比,最后选出你最喜欢的编程字体。

Azeret Mono

通过上面的对比,最后选择出来的我个人喜欢的字体。

Source Code Pro

Source Code Pro 是由 Adobe 公司设计的开源字体,使用很长一段时间的字体,中规中矩,字体很容易识别,非常适合日常编码使用。

source code pro

Noto Sans

Noto 字体是 Google 开发的一款开源字体,使用场景非常广泛的一个字体,当然用来做 Coding 也不是不行,不过也一样,比较中规中矩。

noto sans

Ubuntu Mono

又一个等宽字体,在 Ubuntu 上看久了 Ubuntu Mono ,真实对比一下其他字体之后发现 Ubuntu Mono 字体胖胖的,所以字间距看起来很舒服。

Inconsolata

DescriptionInconsolata is an open-source font created by Raph Levien and released under the SIL Open Font License. It is a humanist monospaced font designed for source code listing, terminal emulators, and similar uses.

inconsolata

Fira Code

个人使用的编程字体 Fira Code,用了很多年了。

为 Programming 设计的等宽字体。该字体为 Programming 做了非常多的特殊设计,比如大于等于,不等于等等。

这款字体区别与其他字体的另一个典型特点就是 @, &r 的区别。

fira code font

Nerd Fonts

Hasklig

Fantasque Sans Mono

更多编程字体预览:

  • https://coding-fonts.netlify.app/
  • https://www.programmingfonts.org/#pt
  • https://github.com/subframe7536/Maple-font
  • https://rubjo.github.io/victor-mono/
  • https://github.com/TakWolf/fusion-pixel-font
  • https://www.ibm.com/plex/
  • https://github.com/be5invis/Sarasa-Gothic

reference