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

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

默认字体

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

  MacOS Windows 10 Ubuntu
Sublime Text Menlo Consolas Monospace
Atom Menlo Consolas DejaVu Sans Mono
IntelliJ Idea Menlo Monospace DejaVu Sans Mono
Eclipse Monaco Consolas Monospace
Visual Studio Consolas
Visual Studio Code Menlo Consolas Droid Sans Mono
XCode Menlo
Notepad++ Courier New
Spacemacs Source Code Pro Source Code Pro Source Code Pro

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

我找到了一些编辑器在线文档。另一些编辑器,我都安装后查看其实际用了哪种字体。一些程序遵从操作系统或运行时的字体选择,也可能列出一个通用的字体,通常叫做类似 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。在优秀的编程字体中,区分这些相似的字符应该很容易。在做编程字体评估时,要对比下面这些组字符:

组1: 零和字母 O O, o, 0
组2: 壹、小写字母 l 和大写字母 L 1 I i L l
组3: 伍、小写字母 s 和大写字母 S 5 S s
组4: 贰、小写字母 z 和大写字母 Z 2 Z z
组5: 圆括号、方括号和大括号 ( { [ ] } )

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

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

许可证和可用性

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

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

其他字体

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

-----------------------------------------------------------------------------

很多年前, 哥就闲得蛋痛的折腾编程字体了, 然后自己搞了一种编程字体, 使用至今 , 可以说是俺集成了大部分编程字体的有点, 精细制作的了, 嘻嘻...喜欢的下载:

CSDN收点积分,谢谢兄弟们:

https://download.csdn.net/download/hsc456/6465493

没有积分的去百度网盘下载, 我是不是很好的好人呐, 嘻嘻:

链接: https://pan.baidu.com/s/1QwwepiKpwF70fVGCtZhRCw

提取码: h2gc

截图如下所示:

你在用哪种编程字体?相关推荐

  1. python用哪种字体比较好_你在用哪种编程字体?

    原标题:你在用哪种编程字体? 本文由 伯乐在线- 七桃我就走翻译.未经许可,禁止转载! 英文出处:MATT NEDRICH.欢迎加入翻译组. 哪种字体最适合编程?在本文中,我们将看看各式编辑器所使用的 ...

  2. 如果你看烦了常用编程字体,不如试试这一种

    在搬砖过程中,你可能会看烦了常用字体.或者觉得它们都不好看: 像我就喜欢纤细.柔和的字体,不喜欢那种加大加粗的感觉: 接下来我要介绍的mplus-fonts字体,简称m+字体,它就蛮符合我的需求. m ...

  3. 推荐9款最佳的编程字体

    气泡星云 (NGC 7635) (© NASA)  1.Consolas  Consolas是一套等宽字体的字型,属无衬线字体,由Lucas de Groot设计,这套字型使用了微软的ClearTyp ...

  4. Mac电脑如何给IDEA配置IDEA 公司发行的适合程序员编程字体

    Mac电脑如何给IDEA配置IDEA 公司发行的适合程序员编程字体 JetBrains今天推出了一种新字体,即JetBrains Mono,它是专为开发人员设计的. JetBrains Mono介绍和 ...

  5. 【字体】写代码编程字体展示推荐

    写代码编程字体展示推荐 零.适合写代码编程的字体 什么样的字体适合写代码用?一般来讲,写代码的字体要求字母的宽度一致.轮廓清晰美观.l1i,0oO易于分辨.清晰易分辨的标点等,甚至有强迫症的还要中文与 ...

  6. 真香!JetBrains 推出编程字体 Mono,开源免费可商用

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 局长 来源 | oschina.net/new ...

  7. IDEA JetBrains 推出 Mono 编程字体真牛逼,更适合程序开发人员!

    >>号外:关注"Java精选"公众号,菜单栏->聚合->干货分享,回复关键词领取视频资料.开源项目. Intellij IDEA 公司 JetBrains  ...

  8. 最佳编程字体推荐,该给你的代码换个炫酷的字体了

    Consolas Consolas是一套等宽的字体,属无衬线字体,由Lucas de Groot设计.这个字体使用了微软的ClearType 字体平滑技术,并随同Windows Vista.Offic ...

  9. JetBrains 发布新款编程字体,提高编程效率、开源免费可商用!

    上一篇:这300G的Java资料是我师傅当年给我的,免费分享给大家(已修复) 下一篇:昨天分享资料不小心把百度网盘深处的秘密泄露了(已修复) 来源:公众号SegmentFault 作为一名「代码操纵者 ...

最新文章

  1. GC分析工具使用-gceacy分析堆栈
  2. 配置文件http://www.cnblogs.com/Jevon-ran/p/7112007.html
  3. 安卓2.2都有哪些键盘快捷指令?
  4. linux 管道和重定向
  5. 测试GPU的材质填充率
  6. 【Pytorch神经网络理论篇】 22 自编码神经网络:概述+变分+条件变分自编码神经网络
  7. html字体阴影怎么设置6,css怎么设置字体阴影
  8. Springboot+Spring-Security+JWT 实现用户登录和权限认证
  9. vue3.0项目服务器部署
  10. sql etl_使用SQL TRY函数进行ETL优化
  11. 【剑指offer】连续子数组的最大和(未完待续。。。)
  12. linux内核程序运行在哪里,linux内核 – 设备驱动程序代码在哪里执行?内核空间还是用户空间?...
  13. 《SEM长尾搜索营销策略解密》一一2.3 一个长尾周期倒下来,还有千千万万个站起来...
  14. r软件读取oracle数据文件,科学网—R软件之读写数据文件 - 刘永辉的博文
  15. 呼叫中心来电弹屏功能怎么样
  16. 常见中文停用词表整理
  17. 2017年的6个大数据发展趋势
  18. linux怎么把dos改成unix_如何将文本文件在 Unix和DOS格式之间转换
  19. Java用户注册服务器发送短信验证码功能实现
  20. 浪潮官网服务器型号,浪潮服务器有哪些型号,哪位了解?

热门文章

  1. 【Beetl笔记整理二】定义变量
  2. TRY HACK ME | INTERNAL「渗透测试挑战02」
  3. [USACO 4.2.2] The Perfect Stall 完美的牛栏
  4. 5福最多多少钱_2018支付宝集5福攻略介绍 一天内集齐不是没可能
  5. 树莓派网线连接电脑查询不到ip的解决方法
  6. (BAT批处理)批量文件夹重命名,要求是在原文件夹名前加上英文字母前缀aa
  7. python方差膨胀因子_讲讲共线性问题
  8. Mysql全站最全笔记,从入门到资深!
  9. 蔬菜类别二级计算机,国家标准:蔬菜分类.doc
  10. 马萨诸塞大学阿姆赫斯特分校计算机科学专业,UMass Amherst的CS「马萨诸塞大学安姆斯特分校计算机科学学系」...