介绍
FiraCode是一款优秀的编程专用连体等宽字体,这是笔者使用次数最多的字体,因为我喜欢它的连体性质,让代码看起来更优雅更符合人类对于字体的认知,在Github上这款字体已经收获40+K Stars,足以说明其受欢迎程度,当然优秀是其受欢迎的原因!
Github
https://github.com/tonsky/FiraCode
一般字体的问题
我们在考虑载体会在意以下几个点:
- 相似的特征是区分的,比如 0|O,1|I
- 字体样式(线宽,字符宽度/高度)是否易于阅读
- 安装方式
- 分辨率支持
- 是否开源、免费
程序员使用很多符号,通常用几个字符编码。对于人的大脑,序列等->,<=或者:=是单独的逻辑标记,即使它们需要两个或三个字符在屏幕上。眼睛花费了非零的能量来扫描,解析并将多个字符合并为一个逻辑字符。理想情况下,所有编程语言都应使用面向操作员的完整Unicode符号进行设计,但事实并非如此。
Fira Code是Fira Mono字体的扩展,其中包含一组用于常见编程多字符组合的连字。这只是字体渲染功能:基础代码保持ASCII兼容。这有助于更快地阅读和理解代码。对于..或//这样的频繁序列,连字允许我们校正间距。
代码效果预览
下面展示一些Fira Code在不同变成语言的效果体验(来源于Github):
- Ruby
- Go语言
- JavaScript
- PHP
- liveScript
- clojure
终端和编辑器支持
下面的图片展示了其支持和不支持的终端:
以下是支持和不支持的编辑器(左边是支持的编辑器,右边相反):
Web浏览器支持
<!-- HTML --> <link rel="stylesheet" href="FiraCode@1.207/distr/fira_code.css"> /* CSS */ @import url(FiraCode@1.207/distr/fira_code.css); /* Specify in CSS */ font-family: 'Fira Code', monospace;
以下是浏览器支持情况:
- IE 10+, Edge: enable with font-feature-settings: "calt" 1;
- Firefox
- Safari
- Chromium-based browsers (Chrome, Opera)
- ACE
- CodeMirror (enable with font-variant-ligatures: contextual;)
样式集设置
通过样式集,可以按功能访问字体的其他可选部分。在Fira Code中,它们允许你启用/禁用替代字符变体。Fira Code v2支持以下样式集(只有在编辑器支持的情况下,才能启用样式集):
如何设置样式集,可以参考Github上对于各个编辑器的介绍!
编辑器预览
以下是笔者使用的IDE或者编辑器的使用预览效果,字体已经放大:
- VSCode
- IDE家族
总结
笔者使用过几款字体,各有各的优点,FiraCode是其中使用最多的字体,其他字体如Input、Source Code Pro、Anonymous Pro、Ubuntu Mono、Menlo、Consolas、Hack也是比较优秀的,有关这些字体的简单了解可参考下文: