I did some tests on Ubuntu 20.04, in the Gnome terminal and in the browser (e.g. Jupyter in Chrome or Firefox) and Juno. It appears that
- some fonts work well in the terminal but not in the browser
- some work well in the browser but cannot be selected in the Gnome terminal
Here’s a summary, testing for support of combining hat character on greek letters, such as "θ̂ " (obtained with \theta\hat
).
Font | Version (head/name) | Gnome Terminal | Browser/Juno | Open license |
---|---|---|---|---|
Bitstream Vera Sans Mono | 2.000/1.10 | |||
Cascadia Code | 2005.150 | |||
Consolas | 1.000 | |||
Cousine | 1.220 | |||
DejaVu Sans Mono | 2.370 | |||
Fira Code | 4.000 | |||
Go Mono | 2.008 | |||
Hack | 3.003 | |||
Inconsolata | 3.001 | |||
Iosevka | 1.000/3.0.1 | |||
JetBrains Mono | 1.000/1.0.3 | |||
Latin Modern Mono | 2.004 | N/A | ||
Liberation Mono | 2.100/2.1.0 | |||
Linux Libertine Mono O | 5.100/5.1.7 | N/A | ||
Menlo | 6.100/6.1d5e14 | |||
Monaco | 2.000/5.1d1e1 | |||
Nimbus Mono PS | 1.000 | |||
Noto Mono | 1.000 | |||
Noto Sans Mono | 2.002 | N/A | ||
SF Mono | 0.000/15.0d5e1 | |||
TeX Gyre Cursor | 2.004 | N/A | ||
Ubuntu Mono | 0.800 |
So on my system at least, the winners are Fira Code and SF Mono (edit: and Iosevka). They’re the only fonts that work both in the terminal and in Jupyter and Juno. I find SF Mono a bit nicer but the license seems to be very restrictive (though I couldn’t find any licensing information in the dmg file downloaded from Apple’s website).
Now I can write
Edit: It looks like some font files have conflicting metadata between the “head” and “name” tables (fontRevision and Version fields respectively). I’ve put both versions when they don’t agree.