プログラミング用フォントについて調べたので、そのメモ
2024/09/08: Cascadia Codeを最新バージョンに合わせて記載の見直し
Apple社製が提供する「SF Mono」
San Francisco
というシステムフォント用のバリエーションの一つTerminal.app
、Xcode
のデフォルトフォントアプリケーションに内蔵されているので、他のアプリケーション(
iTerm2
とか)のフォント一覧には表示されない。0(ゼロ)には斜線が入ってO(オー)と区別し易いデザイン
一方で、l(エル)と1(いち)は、他のプログラミングフォントほど極端な差をつけていない
グリフに漢字などは含まず、含まれていないグリフはシステムフォントが利用される
グリフ数は1628(イタリック系は1324)
プログラミング系記号の合字(リガチャ)対応や、Powerline対応フォントは含まれていない
Microsoft社が提供する「Cascadia Code」
Windows Terminal用にリリースされたフォント
SIL OPEN FONT LICENSE
というライセンスで配布されていて、他のアプリケーションや、OSからも利用可能0(ゼロ)は斜線が入ってO(オー)と区別し易く、l(エル)はセリフの向きを変えて区別し易くデザインされている
グリフに漢字などは含まず、含まれていないグリフはOSのシステムフォントが利用される
プログラミング系記号の合字(リガチャ)対応の
Cascadia Code
と、対応しないCascadia Mono
の2種類があるGitHubからダウンロードできるバージョンには、更にPowerline対応版(フォント名の後ろにPLがつく)と、NerdFont対応版(フォント名の後ろにNFがつく)が含まれる
その他
Source Code Pro
Adobeがリリースしているプログラミング用フォント
デザインの背景は以下のブログエントリが詳しい(READMEに全然フォントの特徴が書いてない!)
グリフに漢字などは含まず、含まれていないグリフはOSのシステムフォントが利用される
ライセンスは、
SIL OPEN FONT LICENSE
プログラミング系記号の合字(リガチャ)対応は無いが、Powerline対応フォントが含まれている(ただし、基本の7文字のみ...拡張は含まない)
Source Han Code JP
Source Code Proと、漢字も含む「源の角ゴシック」を合成したフォント、つまり漢字も含む
半角文字と全角文字の幅の比率が1:2ではなく2:3になっているところが特徴
ライセンスは、
SIL OPEN FONT LICENSE
Monaspace
5種類の書体ですべて幅を揃えてので、重ね合わせて、組み合わせで利用できる
隣り合う文字の組み合わせによってmやiといった文字の幅を変えることで読みやすさを向上させている(Text Healing)
グリフに漢字などは含まず、含まれていないグリフはOSのシステムフォントが利用される
ライセンスは、
SIL OPEN FONT LICENSE
プログラミング系記号の合字(リガチャ)対応(ただし、スタイルとして、dlogを指定しないといけないので、VS code以外のたいていのエディタや、ターミナルソフトでは有効にできない)
Powerline対応は無し
Powerline対応フォントについて
UNICODEの私用領域(つまり外字)の領域に、コーディング用に見栄えをよくするための記号(ブランチなど)を追加したもの
個々のフォントが対応していなくても、iTerm2
は独自のグリフを提供している(ただし、フォントによっては見栄えが合わない場合もある)
合字(リガチャ)について
同じ合字(リガチャ)対応のフォントでも合字が、スタイルにdlog
を指定した時に有効になるのか、calt
を指定した時に有効になるかはフォントのデザイン次第。
たいていcaltはデフォルトで有効、dlogはデフォルトで無効