程序员福利!!!
今天为大家带来一个专为程序员写程序设计的字体 —— Fira Code
Fira 是 Mozilla 公司(火狐浏览器她爹)主推的字体系列。Fira Code 是其中的一员,专为写程序而生。出来具有等宽等基本属性外,还加入了编程连字特性(ligatures)。
Fira Code 就是利用这个特性对编程中的常用符号进行优化,比如把输入的「!=」直接显示成「≠」或者把「>=」变成「≥ 」等等,以此来提高代码的可读性。
Fira Code 字体包含极其丰富的箭头符号。更棒的是:你可以自由调整箭头长度,并随心组合起始段、中间段与末端段的样式!
Fira Code 不仅仅专注于连字设计,还对标点符号及高频字母组合进行了细致的微调优化。
Fira Code 提供了多种字符变体(cv01、cv02等)、风格集(ss01、ss02等)及其他字体特性(zero、onum、calt等),以便用户根据个人偏好自由选择。
某些连字可以通过样式集/字符变体进行调整或启用:
作为一款编程字体,Fira Code 对 ASCII、Powerline 以及其他形式的控制台界面提供了出色的支持:
Fira Code 还是首款为进度条显示提供专用字形设计的编程字体:
Fira Code 还提供对数学字符的支持:
访问此网站:https://github.com/tonsky/FiraCode
找到 Fira_Code_X.X.zip 这个图片,单击它。
单击这个地址可以下载 v6.2 版的 Fira Code -> Download Fire Code v6.2
下载好后,解压它,打开解压后得到的文件夹。
打开 /variable_ttf 文件夹 -> 双击 FiraCode-VF.ttf -> 「安装」。
使用以下命令安装:
目前有以下编辑器、浏览器可以完美支持 Fira Code:
介绍一下在 VS Code 中如何配置(因为VS Code 是我主要使用的编辑器,别的不是很熟悉)
打开 VS Code。
「Code」 -> 「首选项」 -> 「设置」-> 修改「Editor: Font Family」为:
别的 IDE 可以参考 -> https://github.com/tonsky/FiraCode/wiki
可以将 Fira Code 设为 Chrome 的 monospace,即等宽字体。
这里设置的 monospace 的优先级取决于网站的 CSS 的声明。
打开 Chrome。点击右上角的「┇」->「设置」。
「外观」->「自定义字体」。
「等宽固定字体」选择 Fira Code。
IE 10+, Edge Legacy: enable with font-feature-settings: "calt";
Firefox
Safari
Chromium-based browsers (Chrome, Opera)
ACE
CodeMirror (enable with font-variant-ligatures: contextual;)
brew install --cask font-fira-code'Fira Code', Menlo, Monaco, 'Courier New', monospace/* CSS */
@import url(https://cdn.jsdelivr.net/npm/firacode@6.2.0/distr/fira_code.css);/* Specify in CSS */
code { font-family: 'Fira Code', monospace; }
@supports (font-variation-settings: normal) {
code { font-family: 'Fira Code VF', monospace; }
}<!-- HTML -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/firacode@6.2.0/distr/fira_code.css">| Works | Doesn’t work |
|---|---|
| crosh (instructions) | Alacritty |
| Ghostty | Asbru Connection Manager |
| Hyper (see #3607) | Cmder |
| iTerm 2 | ConEmu |
| Kitty | GNOME Terminal (ticket) |
| Konsole | gtkterm (ticket) |
| Mintty | guake (ticket) |
| QTerminal | LXTerminal (ticket) |
| st (patch) | mate-terminal |
| Tabby | PuTTY |
| Terminal.app | rxvt |
| Termux | sakura (ticket) |
| Token2Shell | SecureCRT |
| Wez’s terminal | Terminator (ticket) |
| Windows Terminal | terminology |
| ZOC (macOS) | Tilix |
| Windows Console | |
| xfce4-terminal (ticket) | |
| xterm | |
| ZOC (Windows) | |
| Works | Doesn’t work |
|---|---|
| Arduino IDE (2.0+,same instructions as vscode) | Adobe Dreamweaver |
| Abricotine | Delphi IDE |
| Android Studio (2.3+, instructions) | Standalone Emacs (workaround) |
| Anjuta (unless at the EOF) | IDLE |
| AppCode (2016.2+, instructions) | KDevelop 4 |
| Atom 1.1 or newer (instructions) | Monkey Studio IDE |
| BBEdit (14.6+ instructions) | UltraEdit (Windows) |
| Brackets (with this plugin) | |
| Chocolat | |
| CLion (2016.2+, instructions) | |
| Cloud9 (instructions) | |
| Coda 2 | |
| CodeLite | |
| CodeRunner | |
| Comma (Under: Preferences > Editor > Font) | |
| CotEditor | |
| Eclipse | |
| EditPad | |
| elementary Code | |
| Geany (1.37+) | |
| gEdit / Pluma | |
| GNOME Builder | |
| Godot | |
| GoormIDE (instructions) | |
| gVim (Windows, GTK) | |
| IntelliJ IDEA (2016.2+, instructions) | |
| Kate, KWrite | |
| KDevelop 5+ | |
| Komodo | |
| Leafpad | |
| LibreOffice | |
| LightTable (instructions) | |
| LINQPad | |
| MacVim 7.4 or newer (instructions) | |
| Mancy | |
| MATLAB (instructions) | |
| Meld | |
| Mousepad | |
| NeoVim-gtk | |
| NetBeans | |
| Notepad (Windows) | |
| Notepad++ (instructions) | |
| Notepad3 (instructions) | |
| Nova | |
| PhpStorm (2016.2+, instructions) | |
| PyCharm (2016.2+, instructions) | |
| QOwnNotes (21.16.6+) | |
| QtCreator | |
| Rider | |
| RStudio (instructions) | |
| RubyMine (2016.2+, instructions) | |
| Scratch | |
| Scribus (1.5.3+) | |
| SublimeText (3146+) | |
| Spyder IDE (only with Qt5) | |
| SuperCollider 3 | |
| TeXShop | |
| TextAdept (Linux, macOS) | |
| TextEdit | |
| TextMate 2 | |
| UltraEdit (UEX) (Linux) | |
| VimR (instructions) | |
| Visual Studio (2015+, instructions) | |
| Visual Studio Code (instructions) | |
| WebStorm (2016.2+, instructions) | |
| Xamarin Studio/Monodevelop | |
| Xcode (8.0+, otherwise with plugin) | |
| Xi | |
| Probably work: Smultron, Vico | Under question: Code::Blocks IDE |
Zheng Junyi
9/16/2017