V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JJYing
V2EX  ›  程序员

新时代编程字体推荐

  JJYing ·
jjying · 2015-09-02 16:28:43 +08:00 · 23828 次点击
这是一个创建于 3130 天前的主题,其中的信息可能已经有所发展或是发生改变。

以前如果你搜「最佳编程字体」,得到的推荐离不开这么几个: 熟悉 Mac 的用 Monaco 、特别怀旧的用 Courier 、喜欢 Windows 的用 Consolas ,最多再来一个 DejaVu 或者 Andale Mono 。但如今各种编程用的字体已经如雨后春笋般冒出来了,比如昨天就看到一款叫做 Hack 的新编程字体,除此之外现在还有很多其他新鲜的选择:

1. M+

先推荐 M+,他其实已经不新了,从整个家族第一款点阵字追溯起来有超过十年历史。不过长期的更新让 M+ 有了比较完整的字体家族,等宽版本有两个字宽,窄字宽包含 5 种字重,宽字宽包含 7 种字重,其中窄字宽的版本特别合适每行代码内容都特别长的情况,同时因为作者来自我们东面的邻国,所以对日文支持很好,编程环境用得到日文那就很适合 M+ 了。
M+ 1M Regular, 12pt
M+
* M+ 官网: http://mplus-fonts.osdn.jp/
* Wikipedia 上的介绍页面: https://en.wikipedia.org/wiki/M%2B_FONTS
* M+ 的 Typekit 页面: https://typekit.com/foundries/m-fonts

2. Input

比起 M+, Input 同样相当有诚意,整个家族的可选范围更加恐怖,自带衬线体、无衬线体、等宽体三个版本,每个版本都包含了 7 个字重, 4 个字宽,总有一款适合你。简单做一下乘法计算你就会发现这是整整 84 个不同选择,除此之外 Input 的自定义程度也很高, a 、 g 、 i 、 0 等字母和数字都有多种选择以适应所有人的需要。因为实在是太丰富,所以为了照顾选择犹豫症的朋友 Input 直接提供了一个预览页面方便大家自定义后直接下载。
Input Regular, 11pt
input
* Input 官网: http://input.fontbureau.com/

3. Fira Code

这年头如果没个自家的正文字体,都不好意思叫大厂了, Adobe 有 Source , Intel 有 Clear Sans , Apple 有 San Francisco , Google 有 Roboto ,而 Mozilla 主推的字体系列是 Fira ,今天介绍的这个 Fira Code 是基于 Fira Mono 等宽字体的的一个扩展,主要特点是加入了编程连字特性( ligatures ),何为连字?传统西方文字排印的一个特性,比如「 f 」和「 i 」放在一起的时候两个字母容易粘连,那设计者就会专门设计一个连字字符来替代原来单独的「 f 」和「 i 」的连字:
ligatures
OpenType 格式的字体可以支持连字,任意指定当某几个特定字符一起出现时替换为设计过的连字字符。很多编程字体包括 Fira Code 就是利用了这个特性来对编程中的常用符号进行优化,比如把输入的「!=」直接显示成「≠」或者把「>=」变成「≥ 」等等,以此来提高代码的可读性,听着还挺厉害的对吧,不过请先把脱掉的裤子穿回去,因为支持这个连字属性的编辑器并不多,不可用的编辑器包括但不限于 SublimeText 、 XCode 、 Emacs 、 Eclipse ……好了,我也不列下去了,我没有一一去测试过,反正能不能用要看天命了~
Fira Code, 11pt
fira-code
* Fira Code 主页: https://github.com/tonsky/FiraCode
* 原版 Fira Mono 及 Fira Sans 主页: http://mozilla.github.io/Fira/

4. PragmataPro

跟楼上那个一样,这款编程专用字体也有很多连字,除此之外另一个碉堡了的特性是作者从 9 到 48px 为这个字体做了每个字号大小的点阵字,所以如果你很倾向于使用像素位图字体的话一定会喜欢。不过……那个谁谁谁,还是先别把裤子给穿起来,因为我还没说完……这个字体收费来着,完整版 59 欧,简易版 19 欧。
没有买这个字体,大家就看看官方的图感受一下吧~
pragmatapro
* PragmataPro 官网: http://www.fsd.it/fonts/pragmatapro.htm#.VeQKsNOqqko

5. Monoid

那有没有一款既在小尺寸下做过点阵字,又支持各种编程连字,同时还免费呢?在这个 open 为王的时代,显然也是有的,那就是 Monoid ,虽然小尺寸只优化了 12px 版本,但是看在人家完全免费并且开源,就尝试一下吧~整体感觉跟 M+ 的窄体比较像,非常紧凑,但可读性很棒,同时作者提供了一个 Retina 版本专供高分辨率显示器。
Monoid Regular, 9pt
monoid
* Monoid 官网: http://larsenwork.com/monoid/

6. Courier Prime Code

那份熟悉的味道,来自新世纪的翻新,一听 Courier 这个名字就知道是跟上面几个字体完全不同的画风,源自打字机的 Courier 是个典型的 Slab Serif 字体,在我们的电脑上服役了好多年之后有人出了翻新版 Courier Prime ,同时也给他配备了去掉粗壮衬线的 Courier Prime Sans 和 Courier Prime Code 。只保留骨架的 Courier Prime Code 和 Fira 略像,不过 X 高度更高、字宽更壮硕、字怀更宽阔,如果你特别钟意这种不在乎屏幕横向空间、充分外扩的霸气,那就选他了~
courier-prime-code
* Courier Prime 官网: http://quoteunquoteapps.com/courierprime/

7. 其他

文章标题没有取成「十大编程字体」之类的就是因为接下来我也不打算详细介绍骗字啦~大家自己看看吧~

前面提到过的新品 Hack : http://sourcefoundry.org/hack/
hack

一款旧作 Envy Code R : http://damieng.com/blog/2008/05/26/envy-code-r-preview-7-coding-font-released
envy

大师 Mark Simonson 的 Anonymous Pro : http://www.marksimonson.com/fonts/view/anonymous-pro
anonymous

8. 最后

安利到现在也许你想问:那 JJ 童鞋你自己用哪一款编程字体来着?我只能很诚实地告诉你,其实我自己根本不喜欢等宽字体,哪怕增加一些纠错的难度和时间也要把编辑器里常用字体设成 Source Sans Pro ,哈哈哈哈,是不是想打我的心都有了,请先别下手……因为广受好评的 Source 系列字体显然有等宽的版本: Source Code Pro ,七个字重,常规和斜体,良心之作,童叟无欺~
source-code
* Source Code Pro : https://github.com/adobe-fonts/source-code-pro

57 条回复    2022-03-23 00:22:50 +08:00
kikyous
    1
kikyous  
   2015-09-02 16:32:17 +08:00
嗯,在 mvim 里面用的 source code pro
mjoseph
    2
mjoseph  
   2015-09-02 17:24:00 +08:00
卧槽。。。鸡鸡硬大神竟然也上 v2ex
razrlele
    3
razrlele  
   2015-09-02 17:30:03 +08:00 via iPhone
大神难得在 V 站发个帖。。。图全没显示出来。。。摸摸头。。。
gkiwi
    4
gkiwi  
   2015-09-02 17:31:36 +08:00
@JJYing 赞一下。不过,帖子里面图是不是都只用了一张。。。
predator
    5
predator  
   2015-09-02 17:32:56 +08:00
Pragmata Pro 的引号和分号特别难受
FrankFang128
    6
FrankFang128  
   2015-09-02 17:41:20 +08:00 via Android
M plus 1m 不错
从 Source Code Pro 转过去的
hedaors
    7
hedaors  
   2015-09-02 17:51:51 +08:00   ❤️ 1
我还是喜欢 PT Mono
flowfire
    8
flowfire  
   2015-09-02 18:17:23 +08:00
没有中文字体好烦啊。。。
tinkerer
    9
tinkerer  
   2015-09-02 18:26:55 +08:00 via iPhone
(●—●) 我就看看
sinux
    10
sinux  
   2015-09-02 18:27:53 +08:00
都这么丑, mono 好看多了
cszhiyue
    11
cszhiyue  
   2015-09-02 19:40:07 +08:00
Nausicaa
    12
Nausicaa  
   2015-09-02 19:40:33 +08:00
@JJYing 是以前 themex 的那个 jjying 么,依稀记得十几年前用过你做的图标包~
zerh925
    13
zerh925  
   2015-09-02 19:45:03 +08:00 via iPhone
@Nausicaa themex 还有字体区的 mayi
icylogic
    14
icylogic  
   2015-09-02 19:46:01 +08:00 via Android
推荐一个没怎么见人推荐的字体 Anonymous Pro
http://www.marksimonson.com/fonts/view/anonymous-pro
NovemberEleven
    15
NovemberEleven  
   2015-09-02 20:04:17 +08:00
其实跟显示器也有很大关系。
aggron
    16
aggron  
   2015-09-02 21:22:30 +08:00 via iPhone
一直用 Ubuntu mono
lightening
    17
lightening  
   2015-09-02 21:31:22 +08:00
支持 Comic Sans!
skxs067
    18
skxs067  
   2015-09-02 21:35:45 +08:00
[值得推荐的优秀编程字体 /代码等宽字体收集]( http://www.iplaysoft.com/programming-fonts-collection.html )
cxshun
    19
cxshun  
   2015-09-02 21:37:43 +08:00
mac 上用 mono , ubuntu 上用 source code pro , windows 就用 consolas ,感觉这几款都不错。
wezzard
    20
wezzard  
   2015-09-02 21:47:31 +08:00
Menlo for thousand years.
Menng
    21
Menng  
   2015-09-02 21:52:56 +08:00
@gkiwi 看零啊
Menng
    22
Menng  
   2015-09-02 21:55:15 +08:00
都用 Monaco
merito
    23
merito  
   2015-09-02 21:56:44 +08:00
一直在用 Menlo
erik0
    24
erik0  
   2015-09-02 21:59:34 +08:00
先收藏了,有空再折腾
exoticknight
    25
exoticknight  
   2015-09-02 22:10:55 +08:00
之前用 source code pro ,现在就用 Consolas + 雅黑混合字体
yopming
    26
yopming  
   2015-09-02 22:12:36 +08:00
PragmataPro 大爱
dorentus
    27
dorentus  
   2015-09-02 22:26:57 +08:00
支持 ligature 的那几个看起来挺不错的

我搜了一下, http://www.openradar.appspot.com/17702962 这里面有人发了一个 Xcode 插件,让 Xcode 支持 ligature 的: https://github.com/robertvojta/LigatureXcodePlugin

实际效果是这样:

//i.v2ex.co/aDjTy3Q2l.png
dorentus
    28
dorentus  
   2015-09-02 22:27:23 +08:00
lissome
    29
lissome  
   2015-09-02 22:58:01 +08:00
还是喜欢 Monaco
SoloCompany
    30
SoloCompany  
   2015-09-02 23:09:01 +08:00
只用过 1 , 2
很多等宽的字体都满足不了 Unicode 兼容的问题,当然了主要是汉字不等宽的问题
chenwen
    31
chenwen  
   2015-09-02 23:13:09 +08:00
hack 应该是借鉴了很多 ubuntu mono 字体吧,就自己而言,选择字体还是会根据实际的环境。
cluries
    32
cluries  
   2015-09-02 23:16:30 +08:00
尝试过各种后,回到了 Courier New.
SolidZORO
    33
SolidZORO  
   2015-09-02 23:25:08 +08:00
sublime text 默認什麼字體就用什麼。 windows 與 mac 均完美。
karloku
    34
karloku  
   2015-09-02 23:41:04 +08:00
看了一圈还是不如 inconsolata 舒服...
ehs2013
    35
ehs2013  
   2015-09-03 00:18:49 +08:00
Consolas Monaco 原生字体永远是最好的
just44
    36
just44  
   2015-09-03 00:21:56 +08:00 via iPhone
说实话推荐的好像都不怎么好看啊。。。
libo26
    37
libo26  
   2015-09-03 00:39:13 +08:00
Consolas
branchzero
    38
branchzero  
   2015-09-03 00:44:55 +08:00
第一个字体看着好有爱啊,换上试试看。
z742364692
    39
z742364692  
   2015-09-03 01:04:26 +08:00 via Android
最近看到一个开元的 hack
0xfan
    40
0xfan  
   2015-09-03 09:11:25 +08:00
Monaco or Consolas
laincat
    41
laincat  
   2015-09-03 09:37:05 +08:00
在 简书 看到这个文章。。。
nullizer
    42
nullizer  
   2015-09-03 09:58:45 +08:00
其实 Roboto 也有一个新出的等宽字体 Roboto Mono
BB9z
    43
BB9z  
   2015-09-03 10:11:27 +08:00
XHei mono
xiaohanqing
    44
xiaohanqing  
   2015-09-03 10:26:47 +08:00
在用 input
Khlieb
    45
Khlieb  
   2015-09-03 10:59:26 +08:00 via Android
FreeMono
MayLava
    46
MayLava  
   2015-09-03 11:08:30 +08:00
谢推荐 M+。正在使用 M+1mn 。
llhhss
    47
llhhss  
   2015-09-03 11:51:38 +08:00
居然没有 Inconsolata
Twinkle
    48
Twinkle  
   2015-09-03 12:01:43 +08:00
MacBook 用 Menlo
Linux 下在用一款叫 Meslo 的仿 Menlo 字体...
ruchee
    49
ruchee  
   2015-09-03 13:16:56 +08:00
好几年 Monaco 未换过,那个 Hack 可以试试
ShadowStar
    50
ShadowStar  
   2015-09-03 14:02:40 +08:00
Monaco 的问题是,只有常规体,没有斜体和粗体
angelface
    51
angelface  
   2015-09-03 17:21:08 +08:00
我还是觉得 Monaco 好,这些字体太难看了。
XadillaX
    52
XadillaX  
   2015-09-04 10:07:13 +08:00
推荐 Fantasque Sans Mono ,我喜欢它骚气的“ v ”。

并且我已经用了一年多了。
JJYing
    53
JJYing  
OP
   2015-09-06 11:34:46 +08:00
@XadillaX 我搜了一下看了一眼,果然好骚气
ebony0319
    54
ebony0319  
   2016-02-24 10:23:04 +08:00
收藏贴
aerostone
    55
aerostone  
   2016-03-28 23:16:00 +08:00
翻出来了, mark 一下
ceres
    56
ceres  
   2017-12-02 17:15:18 +08:00
我不会告诉你们我都是自己做字体,找个喜欢的字体作底料,把不喜欢的部分修改掉,打磨到完美状态。
font forge,你值得拥有。
ooops
    57
ooops  
   2022-03-23 00:22:50 +08:00 via Android
PragmataPro 完整可不是 59 欧
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2146 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 33ms · UTC 16:14 · PVG 00:14 · LAX 09:14 · JFK 12:14
Developed with CodeLauncher
♥ Do have faith in what you're doing.