菜单

编辑器和终端兼容性

相关源文件

本页面提供了关于哪些编辑器和终端与 Fira Code 兼容以及如何正确配置它们以显示编程连字(ligatures)的详细信息。有关在桌面操作系统上安装 Fira Code 的信息,请参阅 桌面安装。有关 Web 字体使用,请参阅 Web 字体使用

兼容性概述

Fira Code 的连字功能需要应用程序正确渲染文本。并非所有编辑器和终端都原生支持连字,有些需要特定配置才能启用此功能。

上图说明了 Fira Code 字体兼容性如何依赖于应用程序对 OpenType 上下文替代('calt' 特性)的支持。完全支持意味着应用程序无需额外配置即可正确渲染所有连字。部分支持可能需要特定设置来启用连字。

来源:README.md74-171

编辑器兼容性

兼容的编辑器

Fira Code 已测试并与以下编辑器兼容

类别编辑器
集成开发环境 (IDE)Android Studio (2.3+), AppCode (2016.2+), CLion (2016.2+), IntelliJ IDEA (2016.2+), PhpStorm (2016.2+), PyCharm (2016.2+), RubyMine (2016.2+), WebStorm (2016.2+), Rider
文本编辑器Atom (1.1+), BBEdit (14.6+), Brackets, CodeRunner, CotEditor, Eclipse, Geany (1.37+), gEdit/Pluma, Notepad (Windows), Notepad++, Sublime Text (3146+), TextMate 2, Visual Studio (2015+), Visual Studio Code
终端编辑器MacVim (7.4+), gVim, NeoVim-gtk, VimR
其他Abricotine, elementary Code, GoormIDE, KDevelop 5+, Komodo, LightTable, QtCreator, RStudio, Xcode (8.0+)

不兼容的编辑器

以下编辑器不支持 Fira Code 连字

  • Adobe Dreamweaver
  • Delphi IDE
  • 独立 Emacs (尽管有解决方法)
  • IDLE
  • KDevelop 4
  • Monkey Studio IDE
  • UltraEdit (Windows)

Visual Studio Code

  1. 打开设置 (Ctrl+, 或 Cmd+,)
  2. 搜索“Font Family”,然后输入 Fira Code
  3. 搜索“Font Ligatures”,然后启用该设置

要指定特定的字体粗细,请使用类似 Fira Code Light (Windows) 或 FiraCode-Light (macOS) 的语法。

IntelliJ 产品 (IntelliJ IDEA, WebStorm, PyCharm 等)

  1. 转到 Settings → Editor → Font
  2. 选择 Fira Code 作为“Primary font”
  3. 勾选“Enable Font Ligatures”

如果您选择了颜色方案

  1. 转到 Settings → Editor → Color Scheme → Color Scheme Font
  2. 勾选“Enable Font Ligatures”
  3. 选择 Fira Code 作为“Primary font”

Atom

  1. 打开 Preferences (Ctrl+, 或 Cmd+,)
  2. 转到“Editor”标签页
  3. 在“Font Family”字段中,输入 Fira Code

Atom 1.9 及更高版本默认启用连字。

Sublime Text

  1. 打开 Preferences → Settings
  2. 在 "ignored_packages" 之前添加以下内容

来源:distr/README.txt126-552 README.md74-146

终端兼容性

兼容的终端

以下终端已确认与 Fira Code 连字兼容

  • crosh (Chrome OS 终端)
  • Ghostty
  • Hyper
  • iTerm 2
  • Kitty
  • Konsole
  • Mintty
  • QTerminal
  • st (带连字补丁)
  • Tabby
  • Terminal.app (macOS)
  • Termux
  • Token2Shell
  • Wez's terminal
  • Windows 终端
  • ZOC (macOS)

不兼容的终端

以下终端不支持 Fira Code 连字

  • Alacritty
  • Asbru Connection Manager
  • Cmder
  • ConEmu
  • GNOME Terminal
  • gtkterm
  • guake
  • LXTerminal
  • mate-terminal
  • PuTTY
  • rxvt
  • sakura
  • SecureCRT
  • Terminator
  • terminology
  • Tilix
  • Windows Console
  • xfce4-terminal
  • xterm
  • ZOC (Windows)

许多基于 VTE(GNOME 的虚拟终端模拟器库)的终端不支持连字。GNOME GitLab 存储库中有一个关于此限制的进行中的问题。

来源:README.md148-171

配置特定终端

iTerm2 (macOS)

iTerm2 内置了对连字的支持。要启用

  1. 打开 Preferences
  2. 转到 Profiles → Text
  3. 勾选“Use ligatures”
  4. 将 Font 设置为“Fira Code”

Windows 终端

Windows Terminal 默认支持连字。要配置

  1. 打开 Settings (Ctrl+,)
  2. 找到要修改的配置文件
  3. 在“Appearance”下,将“Font face”设置为“Fira Code”
  4. 确保“Font features”包含“calt”或留空(因为它是默认启用的)

Kitty

Kitty 终端对连字支持极佳。在 kitty.conf 中进行配置

font_family Fira Code
font_features FiraCode-Regular +liga +calt

Chrome OS Terminal (crosh)

  1. 在终端中按 Ctrl+Shift+P
  2. 选择“Preferences”
  3. 在“Text”下,将字体更改为“Fira Code”
  4. 如果“Enable font ligatures”选项可用,则勾选它

来源:distr/README.txt452-509 README.md148-171

故障排除连字显示问题

如果您在使用支持的应用程序时遇到连字渲染问题,请尝试以下故障排除步骤

常见问题与解决方案

  1. 在选择下拉列表中找不到字体

    • 验证 Fira Code 是否已正确安装在您的系统中
    • 尝试重新启动应用程序
    • 检查字体名称是否输入正确(例如,“Fira Code” vs “FiraCode”)
  2. 配置正确但连字未显示

    • 确保您使用的是支持的应用程序版本
    • 验证字体大小是否足够大(某些连字在非常小的尺寸下可能无法渲染)
    • 尝试不同的字体粗细(Regular 经过最多测试)
    • 清除字体缓存(方法因操作系统而异)
  3. 部分连字可以工作,但有些则不行

    • 这可能是由于某些编辑器实现不完整所致
    • 检查特定的连字字符是否受 Fira Code 支持
    • 某些编辑器可能需要额外配置才能支持某些连字组合
  4. 使用连字时编辑器变慢

    • 考虑禁用大文件的连字
    • 检查您的编辑器是否具有与字体渲染相关的性能设置
    • 更新您的显卡驱动程序
  5. Emacs 特定问题

    • 对于独立 Emacs,请参阅 distr/README.txt172-307 文件中提到的解决方法
    • 不同的方法包括使用 prettify-symbols、组合字符表或 font-lock 关键字

来源:README.md557-560 distr/README.txt557-560

不支持环境下的替代方案

对于 Fira Code 连字不支持的环境

  1. 对于 Emacs 用户:存在多种解决方法,包括

    • 在 Emacs Mac port 中使用组合模式
    • 使用 prettify-symbols 和 Fira Code Symbol 字体
    • 使用组合字符表配置
    • 使用 font-lock 关键字
  2. 对于没有连字支持的终端:

    • 考虑使用带有终端集成的图形编辑器
    • 某些终端可能有分支或补丁添加了连字支持(例如 st 的连字补丁)
  3. 对于基于 Web 的编辑器:

    • 如果嵌入在浏览器中,连字支持取决于浏览器和 CSS 设置
    • 确保使用了适当的 CSS:font-variant-ligatures: contextual;

来源:distr/README.txt172-307 README.md172-200