自分はプログラミングをするくせにフォントにはけっこう無頓着で、だいたいデフォルトのまま使っていることが多いです。
最近になってEmacsのフォント設定が完全におかしいというか無効なフォントをしていたことに気づき、なにを指定したら
いいのかなと思って少し調べてみました。
前提としては、Ubuntu Linux 24.04 LTSで使います。
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.3 LTS
Release: 24.04
Codename: noble
$ uname -srvmpio
Linux 6.8.0-88-generic
選択肢的にはこのあたりがありそうです。
JetBrains Mono: A free and open source typeface for developers | JetBrains: Developer Tools for Professionals and Teams
GitHub - yuru7/HackGen: Hack と源柔ゴシックを合成したプログラミングフォント 白源 (はくげん/HackGen)
GitHub - yuru7/PlemolJP: IBM Plex Mono と IBM Plex Sans JP を合成したプログラミングフォント PlemolJP (プレモル ジェイピー)
GitHub - yuru7/udev-gothic: UDEV Gothic は、ユニバーサルデザインフォントのBIZ UDゴシックと、 開発者向けフォントの JetBrains Mono を合成した、プログラミング向けフォントです。
プログラミング用フォント Ricty Diminished
GitHub - microsoft/cascadia-code: This is a fun, new monospaced font that includes programming ligatures and is designed to enhance the modern look and feel of the Windows Terminal.
RictyおよびRicty Diminishedが人気だったようですが、今は開発が終了しているようです。
個人的にはaptでインストールできるものがよく、Windows Terminalで使われているCascadia Codeが使えそうだったので
こちらをインストールしてみました。
$ sudo apt install fonts-cascadia-code
GitHub - microsoft/cascadia-code: This is a fun, new monospaced font that includes programming ligatures and is designed to enhance the modern look and feel of the Windows Terminal.
fonts-cascadia-code package : Ubuntu
$ apt show fonts-cascadia-code
Package: fonts-cascadia-code
Version: 2102.03-1
Priority: optional
Section: universe/fonts
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Fonts Task Force <pkg-fonts-devel@lists.alioth.debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 1,561 kB
Homepage: https://github.com/microsoft/cascadia-code
Download-Size: 149 kB
APT-Manual-Installed: yes
APT-Sources: http://jp.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
Description: monospaced font designed to enhance appearance of Windows Terminal
Cascadia Code is a monospaced font shipped by Microsoft. It includes
programming ligatures and is intended for use in terminal applications
as well as text editors.
Cascadia Codeではリガチャ(合字)に対応しているCascadia Codeと、リガチャを含まないCascadia Monoの2つがあります。
個人的にはまずはCascadia Monoかなと。
Emacsに導入してみたら、見た目がとても変わりました(笑)。
その他、インストールされているフォントを調べるのに使ったコマンド。
$ fc-list
Ubuntu Manpage: fc-list - list available fonts
絞り込みも可能。
$ fc-list 'Ubuntu Sans Mono'
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono:style=ExtraLight
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono:style=SemiBold
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono-Italic[wght].ttf: Ubuntu Sans Mono:style=SemiBold Italic
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono:style=Thin
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono-Italic[wght].ttf: Ubuntu Sans Mono:style=Bold Italic
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono-Italic[wght].ttf: Ubuntu Sans Mono:style=Medium Italic
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono:style=Medium
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono:style=Bold
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono-Italic[wght].ttf: Ubuntu Sans Mono
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono-Italic[wght].ttf: Ubuntu Sans Mono:style=Italic
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono:style=Regular
/usr/share/fonts/truetype/ubuntu/UbuntuSansMono[wght].ttf: Ubuntu Sans Mono:style=Light
GNOME Terminalで使っているフォント。ええ、デフォルトのままです(笑)。
$ gsettings get org.gnome.desktop.interface monospace-font-name
'Ubuntu Sans Mono 13'
こちらはCascadia Monoにしなくてもいいかなと思いました。