Skip to content

A code-centric font combining Fira Code & Source Han Mono. 是一款以代码为核心的字体,融合了最新的Fira Code字形与改良版Source Han Mono字形。

License

Notifications You must be signed in to change notification settings

hunterhogan/Integrated_code_fire_font

Repository files navigation

Integrated Code 火

Integrated Code 火 is a code-centric font combining Fira Code and Source Han Mono. The duospaced Source™ Han Mono glyphs are twice the width of the monospaced Fira Code glyphs, so you can have consistent alignment.

(机器翻译) Integrated Code 火是一款以代码为核心设计的字体,融合了Fira CodeSource Han Mono的特性。其双倍间距的Source™ Han Mono字符宽度是等宽Fira Code字符的两倍,从而实现统一的代码对齐效果。

Download Integrated Code 火 简化字

Download the compiled fonts from the latest release. The compiled fonts are not in the repository source code.

最新版本下载编译后的字体。编译后的字体不在仓库源代码中。

Why?

You want a Western and Han mono-/duospaced programming font with ligatures and consistent alignment.

Some alternative programming fonts

The website "Programming Fonts" has previews of hundreds of fonts.

With only Western glyphs

  • Fira Code is my favorite code-centric font.
  • As of 2026 February 13, the last compiled version was released on 2021 December 6, and I have more recently compiled versions in my fork of Fira Code.

With CJK / Han / Unihan glyphs

Font genealogy

"Fira" "Source" "Source Han" "Noto"
Fira Mono Source Sans Source Han Sans ↔️ Noto Sans CJK
⬇️ ⬇️ ⬇️ ⬇️
Fira Code Source Code Pro ➡️ Source Han Code JP Noto Sans Mono CJK
⬇️ ↘️ ⬇️
Fira Code HH Source Han Mono
           ↘️                      ↙️
               Integrated Code 火

Working with the files in the repository

The repository is optimized to work with Visual Studio Code, but that is not required.

  1. Clone or fork the repository. (Visual Studio Code instructions.)

  2. Install the Python packages in a virtual environment with "uv"; from the folder with the repository, run:

    uv sync

Tips to make life easier

  1. In the names of files and fonts, to avoid confusion, don't use these characters as separators: - (hyphen), – (en dash), — (em dash), or similar characters. For some readers, they can be ambiguous due to 一, which is an ideograph representing "1".
  2. When preparing files, only make changes in the "workbench" directory. Never change files in directories with glyph and metadata information unless you intend the change to be permanent and universal.

Comparison of weight names

Integrated Code 火 Fira Code Source Han Mono
- - ExtraLight
Light Light Light
Regular Regular Regular
Retina Retina Normal
Medium Medium Medium
SemiBold SemiBold Bold
Bold Bold Heavy

简化字

Run go.py.

The future?

  1. You contribute to the project?
  2. Improve configuration management.
  3. Improve and generalize flow.
  4. Weights:
    1. Fira Code has six different weights.
    2. Source Han Mono has seven different weights.
    3. Monospaced Noto Sans CJK has two different weights.
    4. Replace English-language weight names with weight values. "Regular", for example, may become "400".
  5. Investigate: some monospaced glyphs in Noto Sans CJK are updated replacements for the glyphs in Source Han Mono.
  6. Investigate: some monospaced glyphs in Source Han Code JP are updated replacements for the glyphs in Source Han Mono.
  7. Improve font file "packaging", such as:
    1. One file instead of six.
    2. Smaller total size.
  8. Create and use a Vendor ID.
  9. Create versions for other languages and writing systems.
    1. If this project were to have a well-designed process for compiling a code-centric font with Latin and simplified Chinese glyphs, it would be relatively easy to expand the process to some other languages and writing systems.
    2. There seem to be tens of thousands of compatible glyphs in Source Han Mono, Source Han Code JP, and Noto Sans CJK.
    3. I strongly oppose forcing all writing systems to use Latin characters as the name of the writing system.
  10. Create one file: updated pan-CJK with Fira Code.

Potential font collections

A tentative list of font collections and names:

Font name Language Writing system(s)
Integrated Code 火 日本 Japanese 漢字, ひらがな, カタカナ Kanji, Hiragana, Katakana
Integrated Code 火 한국인 Hangugeo Korean 한글, 漢字 Hangul, Hanja
Integrated Code 火 简化字 Mandarin and "爱国文" 简化字 Simplified Chinese characters
Integrated Code 火 台灣 Mandarin 正體字 Straight Traditional Chinese characters
Integrated Code 火 香港 Yue/Cantonese 繁體字 Complicated Traditional Chinese characters

Legal stuff

CC-BY-NC-4.0

Commentary

  • Adobe writing "and/or" in their trademark notice is stupid.
  • The Mozilla Corporation has probably abandoned the Fira Mono trademark.

My recovery

Static Badge YouTube Channel Subscribers

About

A code-centric font combining Fira Code & Source Han Mono. 是一款以代码为核心的字体,融合了最新的Fira Code字形与改良版Source Han Mono字形。

Topics

Resources

License

Stars

Watchers

Forks

Languages