コードを読みやすいフォント探し
はじめに
コードを書くときに便利な日本語対応の等幅[1]フォントについて調べたのでメモしておきます。
等幅フォント(または固定幅フォント)とは読んで字のごとく文字の幅が等しいフォントで、対義語は可変幅(プロポーショナル)フォントです。等幅フォントだと1111でも9999でも同じ幅で表示されるので、脱字に気付きやすくなります。
等幅フォントのなかでも0(ゼロ)とO(オー)、1(イチ),とl(エル)、一(イチ)とー(長音)などを見間違えないように工夫したフォントを使えば誤字に気付きやすくなります。
以下では日本語に対応している等幅フォントの中で気になったもののみ列記しています。
基本の日本語フォント
これらのフォントを基に後述のフォントが作成されています。
IPAフォント
ライセンスが独特で再配布などに制限が有るので注意。
M+ FONTS
作者:coz(森下 浩司)様
歴史はIPAフォントよりも古く、今でも広く使われているすごいフォント。
源ノ角ゴシック/明朝/等幅 または Noto Fonts
なかでも Source Han Mono または Source Han Code JP はコード向きですが、半角文字と全角文字の幅の比率が2:3で有ることで話題になりました。
派生フォント
源真ゴシック / 源柔ゴシック
作者:自家製フォント工房様
源真ゴシックは源ノ角ゴシックをもとに作成されたフォントで、源柔ゴシックは角が丸くなっています。
Nasu フォント
作者:itouhiro様
源真ゴシックをもとに判別しやすいように一部の文字を改変したフォント
MigMix / Migu
作者:itouhiro様
M+ FONTS と IPAフォント を合成してつくられたフォント。
Migu の方はコード向きに文字に少し改変が加えられています。
こちらもIPAフォントライセンスに従いますので注意してください。
Mgen+
作者:自家製フォント工房様
M+ FONTS と 源ノ角ゴシック からつくられたフォント。
IPAフォントを使用していないため、ライセンスによる制限は MigMix / Migu よりも緩いようです。
HackGen / PlemolJP / Firge
作者:tawara様
HackGen は英文フォント Hack と源柔ゴシックをもとに作られたフォント。
こちらの特徴は半角幅:全角幅が1:2のフォントと3:5のフォントが用意されていることです。
同じ作者様によって
IBM Plex Mono と IBM Plex Sans JP からつくられた PlemolJP
Fira Mono と源真ゴシックからつくられた Firge
などのフォントが作成されています。
比較
例文を表示しました。WindowsとMacに両方に入っているBIZ UDフォントも並べています。
個人の好みとして、ゼロは中に点が打たれているものよりも斜線が入っているものの方が好みです。
この中だと好みなのはNasuフォントですが、少し気になるのがウムラウト付き文字の扱いです。ウムラウト付き文字も半角幅で表示して欲しいのですが、半角幅で表示されるものと全角幅で表示されるものが有りますね。そうするとMgen+がいいかなと思いましたが、実はtawara様が作成されたフォントにはconsole版というものが有りまして、console版だとウムラウト付き文字も半角で表示してくれます。
フランス語でもconsole版なら大丈夫。
Très bien! (フランス語わからんけど)
(まぁドイツ語やフランス語でコードを書く人は少ないでしょうけど、それをいったらコード中に日本語で長文を書くことがないような気も…。)
おわりに
Firge console, Mgen+, Nasuを試してみます。
筆者は
『プログラミング向き』とされているフォントは文字が不自然に強調されていて読みづらく感じるという方もいますし、可変幅フォントでコードを書く方もいます。等幅にこだわらず好きなフォントでコードを書いたほうが捗るかもしれません。固定観念を捨ててさまざまなフォントを試すのも一興かと。
-
とうふくって読みたい派。 ↩︎
Discussion