寻找最美的编程字体,编程常用的14个常用字体介绍,最清楚,显示等宽的字体

编程软件学习 网友投稿 2022-11-05 22:56 6537 0

写代码要选那些字母宽度一致的;轮廓清晰规则的;l,1,i易于分辨,0,o,O易于分辨;能清晰分辨标点符号的字体才是最好的,比如MONACO字体等


对于很多编程人员来说,有些字体写出来的代码,不仅看起来赏心悦目,而且写代码的时候非常方便。但是很多程序员都是使用编辑器所默认的字体,这样写出来的代码,不仅千篇一律,而且枯燥无味。下面我们就来看看,究竟哪些字体写出来的代码更美观,哪些字体更适合写代码!

字母的宽度一致

或称为等宽字体,由于代码文件是普通文本,不带样式的,所以宽度一致易于排列和对齐,能迅速找到位置,提高可读性。

印刷术中这种等宽字体称之为monospaced字体,他是字体中的一个大分类(family),如常见的Courier和Courier New。由于考虑到现在的多语言环境,在不同的系统中,要将这个字体在不同字符集下映射到不同的具体字体上去,比如,一般我们的系统都会把中文的映射到“宋体”上。

轮廓清晰规则

只有清晰和规则的外形才能迅速分辨不同的字符,并且在长时间的阅读下不容易感觉到疲劳

在这里要说的是,西方人和东方人在对字体大小上的不同,我认识一些老外,写程序的时候喜欢使用10px的字体来显示代码,而且使用的屏幕分辨率还很高,这是因为他们的文字是字母文字,每个字母的细节少,使用小字体可以在一个屏幕上显示更多内容。所以使用具有清晰和规则的字体,在字体较小的情况下,依然能在屏幕上快速分辨。

l,1,i易于分辨,0,o,O易于分辨

前三个是小写L,数字1和小写I, 后三个是数字0,小写o和大写O,这几个字母在代码中常容易混淆。

例如,C风格的代码中,长整型数字要在数字后加后缀L来表示,像“111111111111L”,一般我们推荐都是使用大写的“L”目的就是为了防止混淆,而如果字体中这3中字母可以很容易分辨,那么即使我们误打成了小写l,也不会混淆。

清晰易分辨的标点

标点在代码中也占了非常重要的部分,如果一个字体不能很好区分逗号“,”和句号“. ”,“:”和“;”,那么不能说是一个好字体,同样,“`”“’”也最好能是配对的形式,这在某些编程中常常用到。

选择哪种字体


美之 DejaVu Sans Mono

最早接触 Windows 使用 Fixedsys、Courier、Courier New 甚至宋体作为程序员字体,后来发现了 Bitstream Vera Sans Mono 的大写字母 L 的小写形式居然如此易于辨认且如此优雅,惊为天人,从此成为这个字体的铁粉,再后来使用 Linux 后换到 Bitstream Vera Sans Mono 的扩充版本 DejaVu Sans Mono,这一用就是十余年,非常满意,再也难以接受包含了长的像数字 1 的字母 L 小写形式的字体,哪怕它的其它字符非常漂亮:



程序员字体的自我修养

一个适合编程以及终端使用的程序员字体除了美观大方、渲染丝滑,更重要的是区分度,否则调试半天发现是眼花看错了,岂不是郁闷的紧!

有如下几组容易混淆的字符:

  • a 和 o:小写字母 a 和小写字母 o;

  • o O 0 Q C G:小写和大写字母 O,数字 0,大写字母 Q,大写字母 C,大写字母 G;

  • i I l | 1:小写字母 i,大写字母 I,大写字母 L 的小写,竖线,数字 1。在最新版 macOS 中默认的 UI 字体下,这几个字符比较难区分;

  • g 9 q:小写字母 g,数字 9,小写字母 q;

各个字体为了提升辨识度,会做一些特别的设计:

  1. 小写字母 a 的开口,与小写字母 o 显著区分。


2. dotted zero 和 slashed zero 与字母 O 显著区分,Q 的长尾巴与字母 O 显著区分。



3. macOS 的 San Francisco Display 在 I 和 L 区分上简直醉了,Mono 版本的 1 和 L 也很像。Hack 的区分度很高,Source Code Pro 的小写字母 i 尤其有区分度。



4. g 9 q 三个字符的区分一般人都不会有问题,但 Source Code Pro 还是采用古典风格的小写字母 g 以进一步增加区分度。



盘点最佳程序员字体

适合程序员使用的优秀字体很多,下面只提及包含 DejaVu 风格字母 L 小写形式的矢量字体。

  1. 1、水果家的贵族:Meslo (Monaco免费版)Monaco、Menlo、

macOS 的默认固定宽度无衬线字体最早是 Monaco,MONACO这款字体的功效,相信不要小编介绍,很多程序员都很爱用。从上面图可以看到它的小写字母 a 不大妙,有个 Monaco 粉丝基于它做了个略带手写体风格的变体 Fantasque Sans Mono,把正体的 小写字母 a 改成开口 a 了,但是斜体的没改 ️。

后来 macOS 在 DejaVu Sans Mono 的基础上造出了 Menlo,作为新的默认固定宽度无衬线字体,有粉丝基于它做了个 Meslo 字体免费分发给大家用(奇怪没版权问题么?)。Menlo 非常优秀,不愧继承了 Bitstream Vera 和 DejaVu 一脉,macOS 上 Terminal.app 的默认字体就是 Menlo,Visual Studio Code for macOS 的默认字体是“Menlo, Monaco, Courier New, Monospace",但据说 XCode 用的 Apple 家私房货 San Francisco Mono。

DejaVu Sans Mono 有点不足的是小写字母 i 跟数字 1 有点像,另外数字零采用了 dotted zero 而非更醒目的 slashed zero,Menlo 采用了 slashed zero,但是维持了小写字母 i 的设计

Meslo 字体效果

Meslo-字体下载: http://d.178d.com/f/31382964-717968587-929b8c

meslol-font.jpg


Monaco字体效果

Monaco-font.jpg


Menlo 的字体效果


Menlo-font.jpg

Meslo-字体下载: http://d.178d.com/f/31382964-717968587-929b8c

Monaco-字体下载: http://d.178d.com/f/31382964-717968192-226940

Menlo.字体下载: http://d.178d.com/f/31382964-719189220-dc857b


2. 贵族中的王者:Hack

Hack 字体也是基于 DejaVu Sans Mono,字如其名,为程序员编码而设计。它的数字零采用了纵向的 slashed zero,更利于显示器清晰渲染,小写字母 i 仿照了小写字母 L 的设计,底部向右弯,明显的跟数字 1 区分开来,且沿袭了字母 L 小写形式的优雅。

Hack的字体效果

Hack-字体下载: http://d.178d.com/f/31382964-719189833-4b3637

hack-font.jpg

Hack字体效果


3. 贵族中的将军:Code New Roman

Code New Roman 吸取了 Bitstream Vera Sans 和 Monaco 的设计,几近完美,可惜的是小写字母 a 学了 Monaco,跟小写字母 o 有点像。

Code New Roman字体效果

Code New Roman字体下载 :http://d.178d.com/f/31382964-719252037-d2e322 

Code New Roman


4. 名门闺秀:Source Code Pro

Adobe 给穷人免费贡献了高质量的思源系列字体:Source Sans Pro,Source Code Pro,Source Serif Pro,Source Han Sans,Source Han Serif,Source Han Mono,这些字体后来被 Google 的 Noto 字体套件吸收了,虽然 Adobe 家的 Flash 人人喊打,但 Adobe 这个字体贡献值得传颂千古。Source Code Pro 也接近完美,但可惜其斜体版的小写字母 a 跟小写字母 o 有点像。

有粉丝做了个支持连字(ligature)的增强版 Hasklig,喜欢玩 Haskell 的同学可以试试。还有个粉丝做了个增强版 Office Code Pro,没把小写字母 a 修一下,倒是把小写字母 i 搞成跟数字 1 比较像了,大概是个对 DejaVu Sans Mono 很有爱的同学。

Source Code Pro 字体效果

SourceCodePro-字体下载: http://d.178d.com/f/31382964-719190293-00f4bf

spro-font.jpg
Source Code Pro


5. 豪门子弟:Ubuntu Mono

跟很多大公司打造自己的品牌字体做法类似,著名 Linux 发行商 Canonical 也请人做了一套 Ubuntu 字体作为 Ubuntu Linux 的默认西文字体,其中的 Ubuntu Mono 很适合程序员使用。这个字体很新潮很漂亮,接近完美,不足的一点是斜体的小写字母 a 跟小写字母 o 有点像——不同人的审美观真是差别大啊。

这个字体也有粉丝修改版 Bront Ubuntu Mono,改了他看不顺眼的字符。

Ubuntu Mono字体效果

UbuntuMono-字体下载: http://d.178d.com/f/31382964-719186246-38588d

upnono-font.jpg
Ubuntu Mono


6. 微软字体

如果不介意小写字母 i 跟数字 1 有点像(其实我看了很多年 DejaVu 也没今天这么矫情过 ️),或者想要连字效果,那么还有一些值得一试的微软字体:

宋体

所有的中文Windows系统都自带宋体,而且宋体同时又是一个中文字体,涵盖了几乎所有的字符,在某些特殊场合,需要同时出现中文和英文的代码时,会考虑直接使用宋体。宋体由于主要照顾中文字符,而中文字符是等宽的,所以在考虑英文字符的时候,也考虑为等宽的,宽度为中文字符的一半。但是宋体的点阵英文字体并不美观,由于有衬线,导致在屏幕上小字号时的可读性较低。“0”和“O”以及“l”和“1”的区分不是很完美。

Courier New

这个字体也是每个 Windows都会带的,字体很好看,除了o O 0的区别,也是很多人在编程中使用的。

Courier New字体效果

courier new-font.jpg

Consolas

微软新开发的字体,Vista、Office2007、Visual Studio 2005中包含它。既然是MS出品,则肯定在ClearType下效果最佳。不过官方网站的安装包很累赘,还需要先安装.net framework 3.5。

Consolas字体效果 

consola-.zip: http://d.178d.com/f/31382964-717968175-9fc475

consolas-font.jpg

  • Cascadia Code,微软给新鲜出炉的 Windows Terminal 打造的字体,免费送给大家用。这个字体非常漂亮,还支持连字,微软大大的良心!

CascadiaCode-221106.rar: http://d.178d.com/f/31382964-719194371-fcced2 

Cascadia Code


  • 6. 谷歌专用字体

  • Go Mono,Google 专门给 Go 语言设计的字体,这大概是编程语言史上的首次待遇。总感觉看多了有重影,不是啥原因

Go Mono 字体效果

Go-Mono-字体下载: http://d.178d.com/f/31382964-719192467-6a077e

gomono-font.jpg
Go Mono


  • 7、Mononoki,给编程以及代码审查设计的字体,很漂亮

Mononoki字体效果

Mononoki字体下载 :http://d.178d.com/f/31382964-719194226-f4d872 

Mononoki


  • 8、Fira Code,在 Mozilla 的 Fira Mono 基础上增加了连字支持,有大量粉丝,大概是最著名的支持连字的程序员字体了。

Fira Code字体效果

Fira Code字体下载 : http://d.178d.com/f/31382964-719193780-2f436b

Firacode-font.jpg

  • 9、Monoid,号称在低分辨率屏幕以 12px 显示依然能如位图字体那般犀利的程序员字体,支持连字,实测确实效果非常好,强烈推荐。

Monoid字体效果

Monoid字体下载 :  http://d.178d.com/f/31382964-719194051-a9e992 

Monoid-font.jpg
Monoid


  • 10、Victor Mono,带手写体风格的斜体样子,喜欢手写体的朋友可以有,漂亮!

Victor Mono字体效果

Victor Mono字体下载 http://d.178d.com/f/31382964-719186443-ca549e 

victnono-font.jpg
Victor Mono


10、等距程序员字体-Inconsolata


Inconsolata - my current monospaced font, and the most Mac-like you can get on Windows (including Monaco, IMHO)

Inconsolata-我当前的等宽字体,并且在Windows上(包括Monaco,恕我直言)可以找到与Mac类似的字体

Inconsolata字体效果

Inconsolata字体下载 : http://d.178d.com/f/31382964-717968189-03d6f4 

Inconsolata-font.jpg


11、DejaVu Sans Mono(Bitstream Vera Sans Mono)

最后我要向大家推荐Bitstream Vera Sans Mono,以及他的衍生字体DejaVu Sans Mono——DejaVu扩展了一些Unicode中的字符。

这也是很多开发者推荐的字体,除了完全满足上面说的所有条件之外,又是TTF字体,基本字形是无衬线的,适合屏幕阅读,最重要的还是开源的字体!

DejaVu Sans Mono(Bitstream Vera Sans Mono)字体效果

DejaVu Sans Mono(Bitstream Vera Sans Mono)字体下载 http://d.178d.com/f/31382964-717968311-731e69 

deja-font.jpg





字体安装

上面介绍字体的主页都有下载链接,手动下载安装并不难,但一个个的收集总是有点繁琐,惊喜的是有铁粉收集了大部分字体到一个项目里,提供了各种方便的安装方式,包括 macOS 下的 Homebrew。