Magnolia Tech

いつもコードのことばかり考えている人のために。

プログラミング用フォントを選ぶための覚え書き

プログラミング用フォントについて調べたので、そのメモ だいぶ書き換えた

macOS

SF Mono

  • Terminal.appXcodeのデフォルトフォント

    アプリケーションに内蔵されているので、他のアプリケーション(iTerm2とか)のフォント一覧には表示されない。

  • 0(ゼロ)には斜線が入ってO(オー)と区別し易いデザイン

    一方で、l(エル)と1(いち)は、他のプログラミングフォントほど極端な差をつけていない

  • グリフに漢字などは含まず、含まれていないグリフはシステムフォントが利用される(日本語が優先される環境であればヒラギノ書体)

    グリフ数は1628(イタリック系は1324)

  • プログラミング系記号の合字(リガチャ)対応や、Powerline対応フォントは含まれていない

Windows

Cascadia Code

  • Windows Terminal用にリリースされたフォント

  • SIL OPEN FONT LICENSEというライセンスで配布されていて、他のアプリケーションや、OSからも利用可能

    github.com

  • 0(ゼロ)は斜線が入ってO(オー)と区別し易く、l(エル)はセリフの向きを変えて区別し易くデザインされている

  • グリフに漢字などは含まず、含まれていないグリフはOSのシステムフォントが利用される

  • プログラミング系記号の合字(リガチャ)対応のCascadia Codeと、対応しないCascadia Monoの2種類がある

  • GitHubからダウンロードできるバージョンには、更にPowerline対応版(フォント名の後ろにPLがつく)が含まれる

  • アーカイブの中に、フォーマットごとに色々な種類のファイルが有るが、「otf」=>「static」に含まれるファイルをインストール


その他

Source Code Pro

  • Adobeがリリースしているプログラミング用フォント

    github.com

  • デザインの背景は以下のブログエントリが詳しい(READMEに全然フォントの特徴が書いてない!)

  • blog.typekit.com

  • グリフに漢字などは含まず、含まれていないグリフはOSのシステムフォントが利用される

  • ライセンスは、SIL OPEN FONT LICENSE

  • プログラミング系記号の合字(リガチャ)対応は無いけど、Powerline対応フォントが含まれている(ただし、基本の7文字のみ...拡張は含まない)

  • インストール用のアーカイブはフォントフォーマットごとに別れている...OTFで始まるものをインストール

Source Han Code JP

  • Source Code Proと、漢字も含む「源の角ゴシック」を合成したフォント、つまり漢字も含む

    github.com

  • 半角文字と全角文字の幅の比率が1:2ではなく2:3になっているところが特徴

    ccjktype.fonts.adobe.com

  • ライセンスは、SIL OPEN FONT LICENSE

  • インストール用のアーカイブは一つにまとまっている

Monaspace

  • GitHub社から発表されたばかりの等幅フォント

    github.com

  • 5種類の書体ですべて幅を揃えてので、重ね合わせて、組み合わせで利用できる

  • 隣り合う文字の組み合わせによってmやiといった文字の幅を変えることで読みやすさを向上させている(Text Healing)

  • グリフに漢字などは含まず、含まれていないグリフはOSのシステムフォントが利用される

  • ライセンスは、SIL OPEN FONT LICENSE

  • プログラミング系記号の合字(リガチャ)対応(ただし、スタイルとして、dlogを指定しないといけないので、VS code以外のたいていのエディタや、ターミナルソフトでは有効にできない)

  • Powerline対応は無し

  • インストールは、「fonts」=>「otf」に含まれるファイルをインストール


合字(リガチャ)について

同じ合字(リガチャ)対応のフォントでも合字が、スタイルにdlogを指定した時に有効になるのか、caltを指定した時に有効になるかはフォントのデザイン次第。

たいていcaltはデフォルトで有効、dlogはデフォルトで無効