我是个字体控,所以一旦需要选择字体,我常常会盯上半天,我对字体很挑剔,最近,当我发现一个朋友在Terminal和编辑器中使用一种非标准的字体(这种字体实在令人发指,我都不愿提起它的名字)时,我整个人都差点崩溃了,我这才认识到是时候写一篇文章讲讲编程字体了。
下面我会介绍10个具有良好可读性的等宽字体,许多字体当前的主流操作系统都已经内置了,有些则可以从网络免费下载,只有一个例外,很不错的Consolas字体,它是随同一款商业软件一起发布的。
关于反锯齿的一点说明
在不久之前,我们还需要从小号等宽字体或是锯齿之间做出选择,但是现在,当前的操作系统已经可以很好的处理反锯齿的工作,这让等宽字体在大字号下表现也非常出色,现在已经不是1990s了,是时候让你疲惫的双眼享受下大字体带来的快感了。
如果你对反锯齿功能在编码时的表现存有疑虑,让我们看看BBEdit——这个已经发布数年的不带反锯齿的Monaco 9作为默认字体的编辑器——也已经取得了飞跃,这个app现在以一个来自Ascender的带有特殊版本协议的Consolas字体作为默认字体,并默认支持反锯齿。Panic也在他们非常有名的Coda程序中包含了一个特殊的反锯齿字体(Panic Sans,实际上应该是Deja Vu Sans Mono的某个 版本)。
除非特别说明,下面我会使用15像素作为默认字号来展示他们在开启反锯齿之后的大字体表现。
10. Courier
几乎所有系统都会搭载某个版本的Courier字体(有时是Courier New),并且不幸的是,许多系统都会讲它设为terminal和编辑窗口的默认字体,这个字体其实还行,只是有那么点枯燥乏味,缺乏一些必要的风格,只要你还有别的选择——幸运的是,你有——我就不推荐使用这个字体,如果你决意要用,那么请开启反锯齿并把字体调大。

图 1 Courier New
9. Andale Mono
比Courier家族好点,Andale Mono也可以归入系统默认字体系列,如果你的系统没有这个字体,你应该不会想去下载或是使用它,这个字体的尺寸设计不太好,并且对我来说,字母也有点太宽。

图 2 Andale Mono
8. MonacoMonaco自从system 6之后就被包含进了Mac系统,并一直作为默认的等宽字体,这是个可靠且管用的字体,尤其是在小号字体且关闭反锯齿时尤其出色,在我的眼睛可以盯着9号字体一小时而不感疲倦的日子里,我非常喜欢这个字体,但那样的日子早已离我远去,这个字体在9号或是10号尺寸(图4)下很好看,但是对于大尺寸并打开反锯齿之后则显得不那么闪亮。
就我所知,你只能在Mac上使用Monaco,并且没有替代,所以请接着看。

图 3 Monaco

图 4 Monaco 9-point, without anti-aliasing
7. Profont
Profont是一个和Monaco类似的位图字体,支持Mac,Windows,Linux(Mac上还有一个修改版叫做ProFontX),这可能是最好的小字号字体,如果你的系统不是Mac并且你想要一个小自豪字体,那么Profont就是再好不过的选择了。
Profont在9号关闭反锯齿功能时表现最佳

图 5 Profont 9号, 没有反锯齿
6. Monofur
Monofur是个很特别的等宽字体,它在任何字号下都有很不错的反锯齿表现,这个字体很有趣,它有一个和Sun的OPEN LOOK窗口管理器(可以追溯到上实际80年代晚期)很类似的外观,如果你想尝试一点特别的东西,那么试试这个字体,但是确保你开启了反锯齿功能,即使是在小字号下。

图 6 Monofur
5. Proggy
Proggy是一个很受Windows用户喜爱的等宽字体,当然它在mac上的表现也不错,这个字体只能在小字号且关闭反锯齿的情况下使用。

图 7 Proggy Clean 15号(是的, 15-point), 没有反锯齿
4. Droid Sans Mono
Droid字体家族(可以在这里下载)是个非常棒的针对像是Android这样的小屏幕的手持设备设计的字体家族,并且采用Apache协议授权。
Droid Sans Mono是个非常棒的编程字体,这个字体非常有灵气,并且在我列出的这些等宽字体中别具一格,要说瑕疵的花,唯一的瑕疵就是没有中间带划线的0.

图 8 Droid Sans Mono
3. Deja Vu Sans Mono
Deja Vu字体家族是我最喜欢的免费字体家族,它是基于非常出色的Vera字体家族。Deja Vu字体已经对字母做了很大的变动,但是依然保持这同Vera一样的外观和感觉。
这是我过去多年都在使用的一个字体,它在任何字号下的反锯齿表现都很不错。
Panic在他们的Coda应用中捆绑了一个叫做“Panic Sans”的字体,其实是基于这个字体的,Gruber通过Email说当他将Panic Sans和Vera做比较时,它注意到Panic有更加明快的标点符号,并且看起来他们也对一些字符做了改进。

图 9 Deja Vu Sans Mono
2. Consolas
Consolas是在我安装了微软的Office之后无意间同微软添加到我的系统中的其它字体一块出现在我的眼前的。
这个字体是由Luc(as) de Groot为微软的ClearType字体家族(这里有一篇带有各个微软字体的样例的非常棒的帖子),Consolas是一个商业字体,但是微软的许多产品都捆绑了它,所以很有可能你的系统已经有了这个字体。
如果你使用Consolas,请记得一定打开反锯齿,因为没有反锯齿它的表现会非常糟糕。
很不幸它不是免费的,如果不考虑这个,它是绝对的首选。

图 10 Consolas
1. Inconsolata
Inconsolata是我最喜欢的等宽字体,并且它是免费的,在找到它之后,我很快就放弃了Deja Vu Sans Mono作为我的编程字体,我在所有地方都用它,从终端窗口到代码编辑器,它有一个令人叹为观止,无出其右的风格,并且它在大字号和小字号下的表现同样梦幻,我在幻灯片的代码片段中使用这个字体,同时在PeepCode的Screencasts中,我的终端和TextMate窗口使用的也是这个字体。
Inconsolate设计在开启反锯齿时使用,但是令人难以置信的是在小字号下关闭反锯齿也很不错,非常感谢Raph Levien创造这个字体,并且可以免费使用。

图 11 Inconsolata
更新: 这篇文章我是09年写的,这段时间情况已经发生了一点变化,作为这篇帖子的后续,我又写了好些贴介绍其它替代的编程字体,比如这篇介绍Anonymous Pro的。
---------------
本文翻译自“Top 10 Programming Fonts”,作者:Dan Benjamin
| anyShare分享到: | |
| |

Pingback: 10个编程首选字体(转发自黑客志) | 流星天空 | 博客赚钱与中国网游