5款开源字体,非常适合编程

编程字体具有您在常规字体中找不到的某些功能;这里有五种字体可供考虑。
1042 位读者喜欢这个。
5 trends in open source documentation

Internet Archive Book Images。由 Opensource.com 修改。CC BY-SA 4.0

什么是最好的编程字体?首先,您需要考虑到并非所有字体都是相同的。在为休闲阅读选择字体时,读者期望字母流畅地相互连接,从而带来轻松愉快的体验。标准字体的单个字符类似于旨在与整个字体中的每个其他部分仔细啮合的拼图。

但是,在编写代码时,您对字体的要求通常在本质上更具功能性。这就是为什么大多数程序员在可以选择的情况下,更喜欢使用等宽字体和固定宽度的字母。选择一种具有可区分的数字和标点符号、美观且版权许可符合您需求的字体也很重要。

某些功能使字体最适合编程。首先,需要详细定义是什么使字体成为等宽字体。以字母“w”与字母“i”的比较为例。当您处理字体时,重要的是要考虑字母周围的空白以及字母本身。在物理书籍和报纸的世界中,有效利用空间通常至关重要,因此将较小的宽度分配给细“i”而不是宽“w”是有道理的。

某些功能使字体最适合编程。
然而,在终端内部,您很幸运没有这样的限制,并且对于每个字符共享相同的空间可能非常有用。主要的功能优势在于,您可以通过随意浏览文本块来有效地“猜测”代码的长度。次要好处包括轻松对齐字符和标点符号的能力,突出显示在视觉上更加明显,并且对于印刷纸张上的光学字符识别,等宽字体比比例字体更有效。

在本文中,我们将探讨五种出色的开源字体选项,这些选项非常适合编程和编写代码。

1. Firacode:最佳整体编程字体

FiraCode example

opensource.com

我们列表中的第一种字体是 FiraCode,这是一种真正超越职责的编程字体。FiraCode 是 Fira 的扩展,Fira 是 Mozilla 委托开发的开源字体系列。FiraCode 的不同之处在于,它修改了代码中常用的符号组合或连字,使其非常易读。这个字体系列有多种样式,值得注意的是包括 Retina 选项。您可以在其 GitHub 页面上找到它如何应用于多种编程语言的示例。

FiraCode compared to Fira Mono

opensource.com

2. Inconsolata:优雅且由杰出的设计师创建

Inconsolata example

opensource.com

Inconsolata 是最漂亮的等宽字体之一。自 2006 年以来,它一直作为开源且免费的选择而存在。创作者 Raph Levien 在设计 Inconsolata 时,心中只有一个基本理念:“等宽字体不必很糟糕。”Inconsolata 有两个突出的特点:0 和 O 之间极其清晰的区别,以及定义明确的标点符号。

3. DejaVu Sans Mono:许多 Linux 发行版的标准配置,以及巨大的字形覆盖范围

DejaVu Sans Mono example

opensource.com

DejaVu Sans Mono 受 GNOME 中使用的受版权保护的闭源 Vera 字体系列的启发,是一种极其流行的编程字体,几乎与每个现代 Linux 发行版捆绑在一起。DejaVu 在 Book Variant 下包含惊人的 3,310 个字形,而标准字体通常轻松地停留在 100 个字形左右。您将不乏可用的字符,它对 Unicode 具有巨大的覆盖范围,并且一直在积极增长。

4. Source Code Pro:优雅且易读,由 Adobe 的一个小而有才华的团队创建

Source Code Pro example

opensource.com

Source Code Pro 由 Paul Hunt 和 Teo Tuominen 设计,是 Adobe 制作 的首批开源字体之一。Source Code Pro 的显着之处在于它非常易读,并且在可能混淆的字符和标点符号之间具有出色的区分度。Source Code Pro 也是一个字体系列,包含七种不同的样式:Extralight、Light、Regular、Medium、Semibold、Bold 和 Black,以及每种样式的斜体变体。

Differentiating potentially confusable characters

opensource.com

Metacharacters with special meaning in computer languages

opensource.com

5. Noto Mono:巨大的语言覆盖范围,由 Google 的一个大型团队创建

Noto Mono example

opensource.com

我们列表中的最后一种字体是 Noto Mono,它是 Google 庞大的 Noto 字体系列的等宽版本。虽然 Noto Mono 并非专门为编程而设计,但它支持 209 种语言(包括表情符号!),并且受到积极支持和更新。该项目规模庞大,是 Google 组织世界信息的既定使命的延伸。如果您想了解更多信息,请查看这段关于字体的精彩 视频

选择合适的字体

无论您选择哪种字体,您很可能每天都会沉浸在其中数小时,因此请确保它在美学和哲学层面上与您产生共鸣。选择合适的开源字体是确保您拥有最佳生产力环境的重要组成部分。这些字体中的任何一种都是绝佳的选择,并且每个选项都具有强大的功能集,使其在其他字体中脱颖而出。

Andrew Lekashman Profile Picture
我是 Andrew Lekashman,担任 Input Club 的业务主管,Input Club 是一家发明开源键盘技术的产品开发实验室。我们的最新产品 WhiteFox 可在 https://kono.store 预订

11 条评论

我喜欢 Source Code Pro,并且已经使用了一段时间。我发现字母和数字真的很容易看到和区分。我在我的 GNOME 终端程序中专门使用 Source Code Pro。

我最近又回到了 VGA 字体进行编程。我从小在 GUI 之前的“控制台”上编程计算机,所以 VGA “复古”对我来说真的很舒服。我甚至修改了我的 Gedit 主题,使其看起来像一个老式的 DOS 编辑器。我设置字体大小,以便如果编辑器占据我屏幕的一半,我可以获得大约 80 列。这对我来说似乎是合适的尺寸;不太大,也不太小。

VGA 字体
https://int10h.org/oldschool-pc-fonts/fontlist/

Gedit 主题
http://opensource-usability.blogspot.com/2017/04/a-throwback-theme-for-…

多么棒的话题。我现在就要开始使用其中的一些字体。感谢您整理这篇文章。

仅从您的示例来看,我会说 DejaVu Sans 和 Source Code Pro 的可读性大致相同。Firacode 的 & 符号和 @ 符号看起来很奇怪。Inconsolata 显示了区分小写字母 L 和数字 1 的问题。Noto Mono 显示了小写字母 L 的问题,以及字母 O 和数字零之间的麻烦。这些是字体的大问题,因为您通常没有通常的语言上下文来帮助决定这些字符。

我同意,但我更喜欢 DejaVu Sans 而不是 SourceCode Pro,因为后者的宽度对我来说太宽了,这使得行看起来非常长。
Hack(下面提到)是一个不错的替代方案。

而 FiraCode 用字形替换 ===、!= 等?哎呀!
我真的希望这不会成为一种趋势...

回复 作者:Greg P

我用过 Source Code Pro,但后来切换到 Hack,从那以后我几乎专门使用它。

https://github.com/source-foundry/Hack

很棒的文章!谢谢,我以前不知道。

我喜欢 r_ansi,我认为它是 truetype,我在 Windows 上用于 Putty 和记事本

很棒的文章!您的文章非常翔实且独特。感谢您分享这篇文章。

Creative Commons License本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.