✏️

Google Colab に最適な等幅フォントを見つけ、設定する

2024/06/26に公開4

弊学のプログラミングでは,Google Colabolatory を利用しますが,環境によってはブラウザの設定を変えなければならなかったりします.

読み(書き)間違いをしたり,想定環境とは違うことで出力が変わることを悩んで,無為に時間を過ごしたくないですから,今日は等幅フォントを見て,好みのフォントを見つけてみましょう.

フォント

日本語非対応と書かれたフォントは,日本語を含まないため,何か別の書体にフォールバックされます.その場合,日本語非対応と明記します.

プリインストールされたフォント

MS ゴシック (Windows, (macOS))

言わずと知れたフォントです.全角の等幅日本語を持ちます.ほとんどの端末にインストールされているため,互換性の問題が発生しにくいと筆者は勝手に思っています.英語版 Windows はわかりません.

macOS ユーザは,Microsoft Office をインストールすることで利用できます.

Osaka (macOS)

Osaka フォントは, macOS 版 Google Chrome でデフォルトに指定されている等幅フォントですが,デフォルトで 「プロポーショナルフォント」 になります.実は,"Osaka" は,プロポーショナルフォントと等幅フォントの両方を持っていますが,Google Chrome では複数の書体があるフォントの特定のウエイトや属性を選択することがユーザ側からはできず,"Osaka" を指定するだけではプロポーショナルフォントになってしまいます.

どうしても "Osaka" を使いたければ,このページが参考になります。

Consolas (macOS, Windows)

Windows 版 Visual Studio Code デフォルトのフォントです.

Menlo (macOS)

macOS に古くから存在するいい感じの書体です.

Courier New (macOS, Windows)

Regular ウェイトでも線が細いのが特徴です.印刷時に読みやすいかも.

無料でダウンロードできるフォント

JetBrains Mono, UDEV Gothic

ダウンロード - JetBrains Mono

ダウンロード - UDEV Gothic

JetBrains Mono は,有名 IDE メーカー "JetBrains" の開発者向けフォントです.私は愛用しています.おすすめのフォントです.

ただ,JetBrains Mono は日本語フォントを含まないため,フォントを複数指定できないブラウザやエディタには UDEV Gothic を推奨します.UDEV Gothic は JetBrains Mono と,ユニバーサルデザインフォントである BIZ UD ゴシックを合成し調整されており,より初学者にとって利用しやすいと思います.

Source Hans Mono

CJK Type Blog

Adobe が開発した,プログラマ向け無料フォントです.CJK (多言語対応)しているのが特徴で,中国語や韓国語を用いてプログラミングする場合は選択肢の一つになるでしょう.Adobe らしく日本語にも手を抜いていない読みやすい書体です.

IBM Plex Mono

IBM Plex Mono - Google Fonts

IBM が開発したフォントです.IBM Plex Sans というプロポーショナルフォントがあり,それを等幅対応したものになります.JetBrains Mono と同様に,IBX Plex Mono は日本語非対応であるため,IBX Plex Sans JP と合成したフォントが公開されています(リンク).

ブラウザのフォント設定の変更方法

Google Colabolatory はブラウザで実行するため、フォントの設定はブラウザに依存します。

Google Chrome

  1. 上の「ケバブメニュー」(縦三点リーダー)から設定に移動
  2. 「デザイン」→「フォント」→「フォントをカスタマイズ」
  3. 「固定幅フォント」のプルダウンメニューで適切なフォントを選択

Firefox

  1. 上の「ハンバーガーメニュー」(三)から「設定」を開く
  2. 「一般」→「フォント」から,詳細設定を開く
  3. 「等幅 (Monospace)」を適切なフォントに変更する

おわりに

プログラミングでよく typo してそれに気付けない人は,もしかしたらフォントが自分にあっておらず,読みにくいのかも知れません.教育の分野では,教科書をユニバーサルデザインフォントに変更しただけで,ロービジョンの児童が内容を把握できるようになった事例も存在します(リンク).

あくまでもフォントの好みはその人の特性なので,自分にあったフォントを見つけることが大事です.typo でコーディングを嫌いになる前に,一度フォントを変えてみてください.

追伸

あなたの好きな開発者向け等幅フォントをこっそり教えてください。追加します。

参考

この記事の作成にあたって、広島市立大学の「プログラミングⅠ(2024年度; 担当教諭(敬称略): 梶山朋子, 小林真)」を参考にしています(シラバス)。

Discussion

KusaReMKNKusaReMKN

更紗ゴシックもまた良いフォントです。このフォントは OFL-1.1 で提供されるフリーなフォントで、長らく Version 0 のまま開発と提供が進められていましたが、先日とうとう Version 1 になりました。当該レポジトリの ReadMe にも記載がある通り、Inter 若しくは Iosevka と Source Han Sans を組み合わせたフォントです。Inter が組み合わされているものは通常の文書に利用しても見栄え良く仕上がり、リガチャが有効にされているものは開発体験を向上するかもしれません。

ささくらりささくらり

大変良いフォントの紹介をしていただき、ありがとうございます。
リガチャについては、初学者を混乱させてしまうのかどうかという意味で、この記事では紹介しないことにしましたが、やはり知ることができた方が嬉しいと思いますか?

KusaReMKNKusaReMKN

うーん、右も左もわからないようなプログラミング初心者向けということになると、リガチャは少し都合が悪そうです。例えば、>= を視覚的に区別できなくなることは本末転倒で、初心者にとっては解決の難しい問題になり得ます。他方、更紗ゴシックのリガチャは、先に述べたように「より数学記号的な見た目」を提供してくれます。これによって、プログラミング言語による記法の違和感を軽減できるかもしれません。プログラミングの基礎的な部分を押さえた上で、リガチャが有効にされているフォントを選択したほうが良いのかもしれませんね。