💮

ついに来た!Xcodeに日本語コメントを入れても行がズレないSonoma標準フォント BIZ UDゴシック

2023/09/27に公開

はじめに

macOS Sonomaで新しく採用された日本語フォント「BIZ UDゴシック / 明朝」はXcode使用者にとって重要な次の2点を満たしています。

  • 等幅(ただし、日←→英では異なります)
  • 日本語を使用しても行の縦がずれない

これを試したレポートをしていきたいと思います。

環境

macOS Sonoma
Xcode 15

行の縦がずれるって何?

Xcodeを初期設定のフォント名のままで使うと次のようになります(ただしサイズは大きくしてある)。

日本語の行の縦幅が他に比べて高いです。行番号の61の上下が他に比べて空いています。画像だとわからないですが日本語を入力した瞬間に行の高さが変化して煩わしい挙動になります。

使用する

BIZ UDゴシックを使用した様子です。

コメントのみに使用

コメント以外の部分はSF Monoで、コメントにBIZ UDゴシックを使用しています。コメント内で行の高さが変わらないことがわかると思います。(まあ、/を2個入れた時点で少しずれますが..)

ソースコード全体に使用

等幅になっていることがわかると思います。

行の縦幅が狭くなっているのはBIZ UDゴシックのサイズが狭いからです。

フォントについて

  • BIZ UDゴシック
  • BIZ UD明朝

は株式会社モリサワによるフォントです。

感想

初めに書いたように等幅フォントで全てのアルファベットの幅が等しくなってます。

アルファベットの縦方向は、小文字は大文字の半分以上で見やすく(大小で差を付けるオシャレ系フォントに比べて)、また、gjpqyなどの下に飛び出る部分はほんの少しなのでスペースを有効利用します。

アルファベットの幅は日本語のちょうど半分という仕様です。日本語が正方形でアルファベットは縦に長いデザインになっています。多くの縦線があるMやmやWやwなどですこし窮屈になります。横の表示文字数を稼ぎたい人にはいいかもしれません。

明朝体の漢字は縦線と横線の太さの違いがあまりないので自然に見えます。

Xcodeの仕組み(ただし、15分くらい観察した結論)

  1. Xcodeの設定のフォントのところで、「Plain Text」に設定したフォントにより、行の高さの基本が決まる。
  2. その基本の高さを超えたものが出てきたらその行は高さが伸びる

注意:観測した結論なので漏れている例外があるかもしれません。

なぜBIZ UDゴシックは高さがずれないのか

BIZ UDゴシックの高さは小さめだから。

SF Monoの16とBIZ UDゴシックの16はBIZ UDゴシックの方が高さが小さい。
なので

  • 「Plain Text」にSF Monoの16
  • 「Comment」にBIZ UDゴシックの16

とすると、行間はSF Monoの16の値に統一され、その中でコメントに日本語を入れても行間は変わらない。

Discussion