@@ -26,6 +26,22 @@ Fira Code是一种免费的等宽字体,包含常用的编程语言中多种
26
26
27
27
Fira Code 是个人的空闲时间进行的项目,缺乏资金但有大量的 [ 功能请求积压] ( https://github.com/tonsky/FiraCode/issues ) 。如果你也热爱这个项目, 请考虑通过 [ GitHub Sponsors] ( https://github.com/sponsors/tonsky ) 或 [ Patreon] ( https://patreon.com/tonsky ) 来支持它的发展。任何帮助都很重要!
28
28
29
+ 非常感谢:
30
+
31
+ <table >
32
+ <td align =" center " >
33
+ <a href="https://workos.com/?utm_campaign=github_repo&utm_medium=referral&utm_content=firacode&utm_source=github">
34
+ <div>
35
+ <img src="https://user-images.githubusercontent.com/629429/151508669-efb4c3b3-8fe3-45eb-8e47-e9510b5f0af1.svg" width="290" alt="WorkOS">
36
+ </div>
37
+ <b>Your app, enterprise-ready.</b>
38
+ <div>
39
+ <sub>Start selling to enterprise customers with just a few lines of code. Add Single Sign-On (and more) in minutes instead of months.</sup>
40
+ </div>
41
+ </a>
42
+ </td >
43
+ </table >
44
+
29
45
### 字体里都有哪些特征?
30
46
31
47
左侧:Fira Code中呈现的连字。右侧:没有连字的相同字符序列。
@@ -48,7 +64,7 @@ Fira Code 带有各种各样的箭头,更棒的是,您可以随心所欲地
48
64
49
65
<img src =" ./extras/ligature_variants.png " width =" 754 " >
50
66
51
- 作为一种编程字体,Fira Code 对 ASCII/框绘图、电力线和其他形式的控制台 UI 具有出色的支持:
67
+ 作为一种编程字体,Fira Code 对 ASCII/框绘图、powerline和其他形式的控制台 UI 具有出色的支持:
52
68
53
69
<img src =" ./extras/console.png " width =" 754 " >
54
70
@@ -63,6 +79,7 @@ Fira Code 是第一个提供专用字形来渲染进度条的编程字体:
63
79
我们希望更多的编程字体能够采用这个约定并发布自己的版本。
64
80
65
81
Unicode 覆盖使 Fira Code 成为数学写作的绝佳选择:
82
+
66
83
<img src =" ./extras/math.png " width =" 754 " >
67
84
68
85
### 它看起来怎样?
@@ -72,27 +89,29 @@ Unicode 覆盖使 Fira Code 成为数学写作的绝佳选择:
72
89
73
90
### 编辑器兼容性列表
74
91
75
- | 支持 | 不支持 |
92
+ | 支持 | 不支持 |
76
93
| -------| ----------------|
77
94
| ** Abricotine** | ** Arduino IDE** |
78
95
| ** Android Studio** (2.3+, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/IntelliJ-products-instructions ) ) | ** Adobe Dreamweaver** |
79
96
| ** Anjuta** (除非在 EOF) | ** Delphi IDE** |
80
- | ** AppCode** (2016.2+, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/IntelliJ-products-instructions ) ) | Standalone ** Emacs** ([ 解决方法] ( https://github.com/tonsky/FiraCode/wiki/Emacs-instructions ) ) |
81
- | ** Atom** 1.1 或更新版本 ([ 说明] ( https://github.com/tonsky/FiraCode/wiki/Atom-instructions ) ) | ** Godot ** ( [ 问题 ] ( https://github.com/godotengine/godot/issues/9961 ) ) |
82
- | ** BBEdit/TextWrangler** (仅限 v. 11, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/BBEdit-instructions ) ) | ** IDLE ** |
83
- | ** Brackets** (使用 [ 此插件] ( https://github.com/polo2ro/firacode-in-brackets ) ) | ** KDevelop 4 ** |
84
- | ** Chocolat** | ** Monkey Studio IDE ** |
85
- | ** CLion** (2016.2+, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/IntelliJ-products-instructions ) ) | ** UltraEdit ** |
97
+ | ** AppCode** (2016.2+, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/IntelliJ-products-instructions ) ) | Standalone ** Emacs** ([ 解决方法] ( https://github.com/tonsky/FiraCode/wiki/Emacs-instructions ) ) | ** IDLE ** |
98
+ | ** Atom** 1.1 或更新版本 ([ 说明] ( https://github.com/tonsky/FiraCode/wiki/Atom-instructions ) ) | ** KDevelop 4 ** |
99
+ | ** BBEdit/TextWrangler** (仅限 v. 11, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/BBEdit-instructions ) ) | ** Monkey Studio IDE ** |
100
+ | ** Brackets** (使用 [ 此插件] ( https://github.com/polo2ro/firacode-in-brackets ) ) |
101
+ | ** Chocolat** | ** UltraEdit ** |
102
+ | ** CLion** (2016.2+, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/IntelliJ-products-instructions ) ) |
86
103
| ** Cloud9** ([ 说明] ( https://github.com/tonsky/FiraCode/wiki/Cloud9-Instructions ) ) |
87
104
| ** Coda 2** |
88
105
| ** CodeLite** |
89
106
| ** CodeRunner** |
107
+ | ** Comma** (在 首选项 > 编辑器 > 字体 中) |
90
108
| ** CotEditor** |
91
109
| ** Eclipse** |
92
110
| ** elementary Code** |
93
111
| ** Geany** (1.37+) |
94
112
| ** gEdit / Pluma** |
95
113
| ** GNOME Builder** |
114
+ | ** Godot** |
96
115
| ** GoormIDE** ([ 说明] ( https://github.com/tonsky/FiraCode/wiki/GoormIDE-Instructions ) ) |
97
116
| ** gVim** ([ Windows] ( https://github.com/tonsky/FiraCode/issues/462 ) , [ GTK] ( https://vimhelp.org/options.txt.html#%27guiligatures%27 ) ) |
98
117
| ** IntelliJ IDEA** (2016.2+, [ 说明] ( https://github.com/tonsky/FiraCode/wiki/IntelliJ-products-instructions ) ) |
@@ -126,6 +145,7 @@ Unicode 覆盖使 Fira Code 成为数学写作的绝佳选择:
126
145
| ** SublimeText** (3146+) |
127
146
| ** Spyder IDE** (仅适用于 Qt5) |
128
147
| ** SuperCollider 3** |
148
+ | ** TeXShop** |
129
149
| ** TextAdept** (Linux, macOS) |
130
150
| ** TextEdit** |
131
151
| ** TextMate 2** |
@@ -140,12 +160,25 @@ Unicode 覆盖使 Fira Code 成为数学写作的绝佳选择:
140
160
141
161
### 终端兼容性列表
142
162
143
- | 平台 | 支持 | 不支持 |
144
- | ----------------| -------| --------------|
145
- | macOS | Hyper (参见 [ #3607 ] ( https://github.com/vercel/hyper/issues/3607 ) )<br >iTerm 2<br >Kitty<br >Terminal.app<br >ZOC | Alacritty |
146
- | Windows | Hyper (参见 [ #3607 ] ( https://github.com/vercel/hyper/issues/3607 ) )<br >Mintty<br >Token2Shell<br >Windows Terminal | Alacritty<br >Cmder<br >ConEmu<br >PuTTY<br >Windows Console<br >ZOC |
147
- | Linux | Hyper (参见 [ #3607 ] ( https://github.com/vercel/hyper/issues/3607 ) )<br >Kitty<br >Konsole<br >QTerminal<br >Termux<br >st ([ 补丁] ( https://st.suckless.org/patches/ligatures/ ) ) | Alacritty<br >GNOME Terminal<br >libvte-based terminals ([ 缺陷报告] ( https://bugzilla.gnome.org/show_bug.cgi?id=584160 ) ): <ul ><li >gtkterm<li >guake<li >LXTerminal<li > sakura<li >Terminator<li >xfce4-terminal</ul >mate-terminal<br >rxvt<br >terminology<br >xterm
148
- | ChromeOS | crosh ([ 说明] ( https://github.com/tonsky/FiraCode/wiki/ChromeOS-Terminal ) ) | |
163
+ | 支持 | 不支持 |
164
+ | -------| --------------|
165
+ | crosh ([ 说明] ( https://github.com/tonsky/FiraCode/wiki/ChromeOS-Terminal ) ) | Alacritty |
166
+ | Hyper (参见 [ #3607 ] ( https://github.com/vercel/hyper/issues/3607 ) ) | Cmder |
167
+ | iTerm 2 | ConEmu |
168
+ | Kitty | GNOME Terminal |
169
+ | Konsole | gtkterm ([ 需求] ( https://gitlab.gnome.org/GNOME/vte/-/issues/1661 ) ) |
170
+ | Mintty | guake ([ 需求] ( https://gitlab.gnome.org/GNOME/vte/-/issues/1661 ) ) |
171
+ | QTerminal | LXTerminal ([ 需求] ( https://gitlab.gnome.org/GNOME/vte/-/issues/1661 ) ) |
172
+ | st ([ 补丁] ( https://st.suckless.org/patches/ligatures/ ) ) | mate-terminal |
173
+ | Terminal.app | PuTTY |
174
+ | Termux | rxvt |
175
+ | Token2Shell | sakura ([ 需求] ( https://gitlab.gnome.org/GNOME/vte/-/issues/1661 ) ) |
176
+ | Wez’s terminal | Terminator ([ 需求] ( https://gitlab.gnome.org/GNOME/vte/-/issues/1661 ) ) |
177
+ | Windows Terminal | terminology |
178
+ | ZOC (macOS) | Windows Console |
179
+ | | xfce4-terminal ([ 需求] ( https://gitlab.gnome.org/GNOME/vte/-/issues/1661 ) ) |
180
+ | | xterm |
181
+ | | ZOC (Windows) |
149
182
150
183
### 浏览器支持
151
184
@@ -209,13 +242,13 @@ code { font-family: 'Fira Code', monospace; }
209
242
如果您想更改 FiraCode.glyphs 并自己构建 OTF / TTF / WOFF 文件,这是我在 macOS 上使用的设置:
210
243
211
244
``` bash
212
- # install all required build tools
245
+ # 安装所有编译需要的工具
213
246
./script/bootstrap_macos.sh
214
247
215
- # build the font files
248
+ # 编译字体文件
216
249
./script/build.sh
217
250
218
- # install OTFs to ~/Library/Fonts
251
+ # 将otf文件安装到 ~/Library/Fonts
219
252
cp distr/otf/* .otf ~ /Library/Fonts
220
253
```
221
254
@@ -229,6 +262,20 @@ make
229
262
make package
230
263
```
231
264
265
+ 如果你想要* 永久开启* 某个特定的文体集或者字符变种,但你的编辑器有可能不允许你单独开启它们,你可以将你想要的功能作为一个用逗号分隔的列表,通过 ` -f / --features ` 标志来加入到编译脚本中。<br >默认:无。
266
+
267
+ 要分隔不同的字体版本的话,你可以用 ` -n / --family-name ` 标志来指定你所需的字体系列名称。特殊值 'features' 将在默认的系列名称后面添加一个有序的、空格分隔的列表,列表内为已经启用的功能。<br >默认:"Fira Code"
268
+
269
+ 你也可以用 ` -w / --weights ` 选项来限制将要被编译的字体的重量。<br >默认:"Light,Regular,Retina,Medium,SemiBold,Bold"
270
+
271
+ ``` bash
272
+ # 在你本地的shell中
273
+ ./script/build.sh --features " ss02,ss08,ss10,cv03,cv07,cv14" --family-name " Fira Code straight" --weights " Regular,Bold"
274
+
275
+ # 或者通过一个docker容器 (创建系列名为:'Fira Code cv01 cv02 cv06 cv31 onum ss01 ss03 ss04 zero')
276
+ docker run --rm -v " ${PWD} " :/opt tonsky/firacode:latest ./script/build.sh -f " cv01,cv02,cv06,ss01,zero,onum,ss03,ss04,cv31" -n " features"
277
+ ```
278
+
232
279
### 制作人员
233
280
234
281
- 作者: Nikita Prokopov [ @nikitonsky ] ( https://twitter.com/nikitonsky )
0 commit comments