プログラマーのフォント選び

プログラマーのためのフォント講座。常識といえば常識なんだけど、知らない人にとってはまったくの盲点だったりするかもしれません。知っておくべきことはたった一つだけです。

必ず等幅フォントを選ぶこと

フォントには以下の2種類があります。

  1. 等幅フォント
  2. プロポーショナルフォント

サンプルとして「ARISAKA-等幅」と「メイリオ」を用意しました。さっそく見比べてみましょう。

「ARISAKA-等幅」フォント


等幅フォントとは文字の幅が一定のフォントを指します。半角数字や半角アルファベットの文字幅がどの文字も必ず同じ幅になっています。そして全角文字(2バイト文字)の文字幅は半角文字のキッチリ2倍になります。

Windows Vista標準のプロポーショナルフォント、「メイリオ


プロポーショナルフォントとは、「文章」を美しく見せるためのフォントです。普通、一般人は文字の幅を意識することってないのですが、文字にはそれぞれ特徴があるのです。いろんな文字を横一列に並べたときに、可読性が高くなるように調整されているフォントがプロポーショナルフォントになります。


コーディング用のフォントは必ず等幅フォントを選ばなければいけません。プロポーショナルフォントがダメな理由は以下の通り。

  1. 「i」や「j」などの半角文字は異常に文字幅が狭く、可読性が低い
  2. 半角20文字の適当な文章を2行書き、見比べると行幅が全然ちがうという自体が発生する


メイリオの「i」と「j」という文字を見てください。エラい狭いことになってます。また、この画像で利用しているエディタ(NetBeans)は半角80文字目で青い縦線が引かれる設定になっているのですが、プロポーショナルフォントだとぶっとんだ位置に線がきてますね。

まとめ

コーディング用のフォントを探すときは「等幅フォント」を探しましょう。


ちなみに余談ですが、2ch発祥のAA(アスキーアート)はプロポーショナルフォントでしか正しく表示されません。そしてプロポーショナルフォントでもプロポーショナルっぷりがフォントごとに異なるため、例えばメイリオでは正しく表示できなかったりします。Hatenaには「aa記法」があるので、ブラウザの環境とわず正しくAAを表示してくれて便利ですよね。

j;;;;;j,. ---一、 `  ―--‐、_ li;;;;;;   
 {;;;;;;ゝ T辷iフ i    f'辷jァ  !i;;;;;  MSゴシックで十分だ…
  ヾ;;;ハ    ノ       .::!lリ;;r゙   
   `Z;i   〈.,_..,.      ノ;;;;;;;;  
   ,;ぇハ、 、_,.ー-、_',.    ,f゙: Y;;f.  そんなふうに考えていた時期が 
   ~''戈ヽ   `二´    r'´:::. `!    俺にもありました。