分享

你在用哪种编程字体?

 无聊斋话 2016-08-07


英文:MATT NEDRICH

译文:伯乐在线专栏作者 - 七桃我就走

链接:http://blog./104090/

点击 → 了解如何加入专栏作者


哪种字体最适合编程?在本文中,我们将看看各式编辑器所使用的默认字体,考察其他的编程字体以及探讨在评估编程字体时,希望得到什么。



程序员喜欢定制自己的开发环境。他们会安装酷酷的主题,顺手的插件。不过,通常这并不包括定制字体。事实上,我猜很多程序员都不知道正使用的编辑器中的字体。忽略字体未必是件坏事,因为大多默认字体都相当棒。不过, 如果你每天使用一种编辑器 8 到 10 小时,为什么不更进一步来了解下有哪些字体可选呢?


默认字体


首先,让我们看看一些编辑器和集成开发环境(IDEs)中的默认字体。




为了制作上表,我花费了比预计要更长的时间。找出特定编辑器的默认字体是

一件异常困难的事情。


我找到了一些编辑器在线文档。另一些编辑器,我都安装后查看其实际用了哪种字体。一些程序遵从操作系统或运行时的字体选择,也可能列出一个通用的字体,通常叫做类似 Monospace 。这种情况在 Linux 中更为普遍。像 Vim 或者 Emacs 这类可以运行在终端中的编辑器,它们使用终端环境中的字体,所以很难把它们加到这个表格中。


从上表来看,Menlo 和 Consolas 是大赢家。如果你使用 Mac 系统,那么你可能在用 Menlo。类似地,如果你用 Windows 系统,那么你可能在用 Consolas。下面是这两种字体的样子:




正如你所见,尽管有着一些细微的差异:即 f 的尾巴、l 的衬线、0 的宽度以及 * 的大小,在 Menlo中会宽些 — 它们是非常相似的。


想要指出 Linux 系统中的默认字体,那就更加困难,因为它们随着不同的发行版而变化。甚至在 Ubuntu 内,还存在着相当一部分的变种。一些编辑器使用操作系统默认的等宽字体。不管怎样,下面是 DejaVu Sans Mono 的样子:



注意,字符零的中间是一个圆点,而不是在 Menlo 和 Consolas 中使用的斜线。


为了进一步对比,来看下 Courier New 和 Source Code Pro (同样出现在上表中)的样子:




对比并评估字体


现在,我们已经看过了一些常见的默认字体。你可能正想了解如何去评估和对比字体。虽然字体偏好是非常主观的,但一个好的编程字体仍有一些重要的可量化的特征。


等宽的


好的编程字体应该是等宽的。不言而喻,所有的编辑器和集成开发环境默认都使用了某种等宽字体。所谓“等宽”既是每个字符在屏幕上占据着相同的水平空间。这会让文本在源代码中准确地对齐。在本文中所有提及的字体都是等宽的。


字符易于区分


有几组看起来很像的字符,比如零和字母 O、数字 1 和字母 L。在优秀的编程字体中,区分这些相似的字符应该很容易。在做编程字体评估时,要对比下面这些组字符:




让我们看看上文列出的流行字体,是如何处理这些字符的:



以上这些字体中,Courier New 显然是最差的。它在数字 0 中没有使用斜线或者点,它的数字 1 与小写字母 L 看起来几乎一样。Consolas 也有看起来相似的数字 1 和小写字母 L。剩下的字体在区分相似字符方面做的都不错。


许可证和可用性


不是所有字体在所有操作系统上可用 — 同时也不是所有字体是免费的。例如,在 Windows 上可以找到 Consolas,但如果你想在 Mac 中使用它,就必须付款购买了。通常情况下,如果你安装了微软的其他软件,比如 Office,Consolas 会随之安装上。相似地,MacOS 自带了 Menlo,在其他操作系统(例如 Windows),中就难以获得。


如果你大多时间使用同一种操作系统,这可能不是什么大问题。然而,如果你同时使用 MacOS、Windows 和 Linux。最好去了解下哪种字体可以在这些操作系统中同时使用。


其他字体


在上文列出的默认字体之外,还有许多字体可供选择。下面是几个经常被讨论和提及的非默认字体:





编程字体小汇总,总会有你喜欢的那一款!


如果你正在使用一种非默认字体并偏爱它,我很有兴趣了解是哪种字体。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多