5 款适合程序员的开源字体

编程字体有些在普通字体中没有的特点,这五种字体你可以看看。

-- Andrew Lekashman

什么是最好的编程字体呢?首先,你需要考虑到字体被设计出来的初衷可能并不相同。当选择一款用于休闲阅读的字体时,读者希望该字体的字母能够顺滑地衔接,提供一种轻松愉悦的体验。一款标准字体的每个字符,类似于拼图的一块,它需要被仔细的设计,从而与整个字体的其他部分融合在一起。

然而,在编写代码时,通常来说对字体的要求更具功能性。这也是为什么大多数程序员在选择时更偏爱使用固定宽度的等宽字体。选择一款带有容易分辨的数字和标点的字体在美学上令人愉悦;但它是否拥有满足你需求的版权许可也是非常重要的。

某些功能使得字体更适合编程。首先要清楚是什么使得等宽字体看上去井然有序。这里,让我们对比一下字母 w 和字母 i。当选择一款字体时,重要的是要考虑字母本身及周围的空白。在纸质的书籍和报纸中,有效地利用空间是极为重要的,为瘦小的 i 分配较小的空间,为宽大的字母 w 分配较大的空间是有意义的。

然而在终端中,你没有这些限制。每个字符享有相等的空间将非常有用。这么做的首要好处是你可以随意扫过一段代码来“估测”代码的长度。第二个好处是能够轻松地对齐字符和标点,高亮在视觉上更加明显。另外打印纸张上的等宽字体比均衡字体更加容易通过 OCR 识别。

在本篇文章中,我们将探索 5 款卓越的开源字体,使用它们来编程和写代码都非常理想。

1、Firacode:最佳整套编程字体

FiraCode, Andrew Lekashman

在我们列表上的首款字体是 FiraCode ,一款真正符合甚至超越了其职责的编程字体。FiraCode 是 Fira 的扩展,而后者是由 Mozilla 委托设计的开源字体族。使得 FiraCode 与众不同的原因是它修改了在代码中常使用的一些符号的组合或连字,使得它看上去更具可读性。这款字体有几种不同的风格,特别是还包含 Retina 选项。你可以在它的 GitHub 主页中找到它被使用到多种编程语言中的例子。

FiraCode 与 Fira Mono 的对比, Nikita Prokopov ,源自 Git

2、Inconsolata:优雅且由卓越设计者创造

Inconsolata, Andrew Lekashman

Inconsolata 是最为漂亮的等宽字体之一。从 2006 年开始它便一直是一款开源和可免费获取的字体。它的创造者 Raph Levien 在设计 Inconsolata 时秉承的一个基本原则是:等宽字体并不应该那么糟糕。使得 Inconsolata 如此优秀的两个原因是:对于 0 和 o 这两个字符它们有很大的不同,另外它还特别地设计了标点符号。

3、DejaVu Sans Mono:许多 Linux 发行版的标准配置,庞大的字形覆盖率

DejaVu Sans Mono, Andrew Lekashman

受在 GNOME 中使用的带有版权和闭源的 Vera 字体的启发, DejaVu Sans Mono 是一个非常受欢迎的编程字体,几乎在每个现代的 Linux 发行版中都带有它。在 Book Variant 风格下 DejaVu 拥有惊人的 3310 个字形,相比于一般的字体,它们含有 100 个左右的字形。在工作中你将不会出现缺少某些字符的情况,它覆盖了 Unicode 的绝大部分,并且一直在活跃地增长着。

4、Source Code Pro:优雅、可读性强,由 Adobe 中一个小巧但天才的团队打造

Source Code Pro, Andrew Lekashman

由 Paul Hunt 和 Teo Tuominen 设计, Source Code Pro 是 由 Adobe 创造的 ,成为了它的首款开源字体。Source Code Pro 值得注意的地方在于它极具可读性,且对于容易混淆的字符和标点,它有着非常好的区分度。Source Code Pro 也是一个字体族,有 7 中不同的风格:Extralight、Light、Regular、Medium、Semibold、Bold 和 Black,每种风格都还有斜体变体。

潜在易混淆的字符之间的区别, Paul D. Hunt 源自 Adobe Typekit 博客。

在计算机领域中有特别含义的特殊元字符, Paul D. Hunt 源自 Adobe Typekit

5、Noto Mono:巨量的语言覆盖率,由 Google 中的一个大团队打造

Noto Mono, Andrew Lekashman

在我们列表上的最后一款字体是 Noto Mono ,这是 Google 打造的庞大 Note 字体族中的等宽版本。尽管它并不是专为编程所设计,但它在 209 种语言(包括 emoji 颜文字!)中都可以使用,并且一直在维护和更新。该项目非常庞大,是 Google 宣称 “组织全世界信息” 的使命的延续。假如你想更多地了解它,可以查看这个绝妙的 关于这些字体的视频 。

选择合适的字体

无论你选择那个字体,你都有可能在每天中花费数小时面对它,所以请确保它在审美和哲学层面上与你产生共鸣。选择正确的开源字体是确保你拥有最佳生产环境的一个重要部分。这些字体都是很棒的选择,每个都具有让它脱颖而出的功能强大的特性。

via: https://opensource.com/article/17/11/how-select-open-source-programming-font

作者: Andrew Lekashman 译者: FSSlc 校对: wxy

本文由 LCTT 原创编译, Linux中国 荣誉推出

点击“了解更多”可访问文内链接

2021 年 6 种最佳编程字体:VSCode 中你用哪种?

作为开发人员,我们每天大部分时间都在电脑屏幕前编写代码。

眼睛疲劳(也称为视疲劳)可能是一个严重的问题,在默认的 VSCode 设置中会连续使用数小时。虽然开箱即用的 VSCode 设置无论如何都不错,但如果你花一点时间配置设置(不仅是字体,还有主题),你的眼睛可能会感谢你。

如果你想知道我在 VSCode 中使用了什么主题、字体和扩展,我在这里写了一篇相关的文章[1]

在本文中,我将分享你可以专门用于编码的最佳字体。虽然主观,但我已经列出了免费和付费字体的列表,这些字体使易读性成为高优先级(字体看起来也很漂亮的加分项)。

1:MonoLisa - 字体跟随功能

MonoLisa 具有一些独特的技术,可以提高易读性并使长时间观看时视觉上更加愉悦。

这是我个人最喜欢用于编程的字体。我在 2020 年初发现了这种字体,并在购买许可证之前在 CodePen 上使用了一段时间,这样我就可以在 VSCode 和我的个人网站上使用它。

贵吗?是的。但我相信这种字体的细微差异使观看体验大大改善。

在这里查看 MonoLisa[2]

MonoLisa Font

2:JetBrains Mono——开发者的字体

JetBrains 为开发人员提供了一整套代码编辑器,他们也有自己的等宽字体。JetBrains Mono 因其高增长和特定于代码的连字(ligatures)而从许多其他字体中脱颖而出。

在我购买 MonoLisa 之前,我使用的是 JetBrains Mono。它简单而美丽,而且免费!

在这里查看 JetBrains Mono[3]

JetBrains Mono Font

3:Fira Code - 带有编程连字的免费等宽字体

Fira Code 是许多开发人员肯定会喜欢的经典字体,它是 Nikita Prokopov 的免费字体。

Fira Code 与 ASCII 兼容,并带有许多连字,使代码更易于阅读。

在这里查看 Fira Code[4]

Fira Code Font

4:Source Code 专业版

它在开发者社区非常流行并且可以免费下载!

在这里查看 Source Code Pro[5]

Source Code Pro Font

5:Droid Sans Mono——一种开源的无衬线字体

Droid Sans Mono 是 Steve Matteson[6] 为 Android 生态系统发布的一种字体。

许多开发人员都喜欢这种字体,但是区分 O 和 0 有点困难,因为字体没有斜线零(slashed zero)或点零(dotted zero)。

幸运的是,GitHub 用户 AlbertoDorado[7] 更改了字体并发布了一个带有点划线零的版本[8]

Droid Sans Mono Font

6:Monoid——开源编码字体

Monoid 是开发人员喜爱的另一种流行的等宽字体。

它的大孔径和短的上升部和下降部使这种字体从其他字体中脱颖而出。

Monoid 还支持连字并包含一个很酷的小功能,你可以直接在代码中看到 Font Awesome 图标。

在这里查看 Monoid[9]

Monoid Font

结论

对你在代码编辑器中使用的字体进行如此多的思考似乎有点过头了。每种字体的差异可能看起来很小,但总的来说,每种字体都是独一无二的,并提供不同的好处。

你喜欢使用哪种字体?

原文链接:https://braydoncoyer.dev/blog/6-best-fonts-for-programming-in-2021/

参考资料

[1]

这里写了一篇相关的文章: https://braydoncoyer.dev/blog/my-vscode-toolbox-2020/

[2]

MonoLisa: https://www.monolisa.dev/

[3]

JetBrains Mono: https://www.jetbrains.com/lp/mono/

[4]

Fira Code: https://github.com/tonsky/FiraCode

[5]

Source Code Pro: https://github.com/adobe-fonts/source-code-pro

[6]

Steve Matteson: https://www.myfonts.com/person/Steve_Matteson/

[7]

AlbertoDorado: https://github.com/AlbertoDorado

[8]

发布了一个带有点划线零的版本: https://github.com/AlbertoDorado/droid-sans-mono-zeromod

[9]

Monoid: https://larsenwork.com/monoid/

相关问答

10个效果最佳的编程字体-OSCHINA-中文开源技术交流社区

编写程序时,对字体的选择虽然不是最重要的,但也是必不可少的。一个好的字体选择势必会让你事半功倍!10.CourierCouriernew是Courier的变形,由于可以轻易的对...

大家编程都用什么字体?-OSCHINA-中文开源技术交流社区

CourierNew控!+2^10+1024javer默认字体,改了感觉很奇怪,不习惯yaheimonohybirdnimbussans强烈推荐:Monaco,传说中最好的编程字体。回复@...

程序员编程看起来最舒服的字体(英文的和中文的)、字号、颜色和背景色是什么?

10.Courier基本上所有的系统都自带了此种字体,有时候它又以CourierNew的名字出现。不幸的是很多终端和编辑器都默认使用此种字体,虽然这不会影响使用,但这...

CAD怎么编程多线字体?

鼠标左键双击字体,就可以了。鼠标左键双击字体,就可以了。

新手学习编程最好学哪种计算机语言?

以上,就是w3cschool为各位对编程有兴趣的同学,做了一个简单粗犷的编程语言介绍,虽然不严谨,不过希望对你有所启发。最后说下,w3cschool上有边学边玩的教程...

什么编程语言简单易学,不需要记英语的?

外行眼里的常用编程语言对比前端(可见部分代码编写/UI)*Html超文本标记语言(标准通用标记语言下的一个应用,外语缩写HTML),是迄今为止网络上应用最为广...

plc怎么设置注释字体大小?

1.打开PLC编程软件,并打开需要编辑的程序。2.选择需要设置注释的字体,并右键点击注释框。3.在弹出的菜单中选择“样式”或“格式”选项,然后选择“字体”...

雕刻机字体雕刻怎么编程?

雕刻机进行字体雕刻编程的一般步骤如下:1.设计阶段:•使用专业设计软件(如文泰、CorelDRAW、AutoCAD等)创建或导入所需的文本内容,选择或设计特定的字体...

双轴机械手编程文字怎么加?

要在双轴机械手编程中添加文字,需要使用编程语言中对应的指令来实现。通常情况下,可以使用特定的文本输出指令将需要显示的文字以文本的形式输出到控制台或显...

如何简单设置msgbox提示的字体?

你好,要设置msgbox提示的字体,您可以使用下面的代码:```DimmyFontAsNewFont("Arial",12)'自定义字体和大小MsgBo...