Thanks for the list. Ever since I heard about it (back then it still had the old name Cosmic Sans Neue Mono) I have been using Fantasque Sans Mono. It seems odd to most people looking at my editor, but I‘ve never enjoyed reading code more. Even using it with a user script on GitHub
I’ve been using Go Mono for about a year now I think, and it’s been a real treat. I feel like ligatures are more of a personal opinion thing than a legibility thing, but I really like them.
Nice writeup. I have an unnatural amount of interest in font choice, but I find it very hard to move away from macOS’ Monaco in the terminal and Hack elsewhere.
Redistributing a MacOS font would violate the license and maybe your principles, but you might feel differently about copying them from a Mac you own to another personal machine.
Very nice! Since i can relate being coding font freak, what is your (OP’s) stance on bitmap fonts? For now on Windows I am amazed by Cascadia Code, looks really nice in Emacs (in VS2019 not so much). On Linux I am rocking bitmap fonts, Terminus and CtrlD.
Hey, thanks for the feedback! I like the esthetics of bitmap fonts—I used Terminus for a few years—but as I’ve aged and my monitors’ resolutions have increase, I find it more and more difficult to use bitmap fonts. Many of them are designed to be used at small sizes (10, 12, 14 points) and they’re too hard for me to read.
Yes, I noticed this earlier. You can compare the fonts easily using this website.
Personally, I like LuxiMono more than Go Mono, precisely of the changes to the “g” and “l” glyphs. LuxiMono could use the slashed “0”, though. Currently, I’m still using Inconsolata, because the font runs much narrower than LuxiMono or GoMono which allows me to keep more Emacs buffers readable side-by-side.
Good old Computer Modern Mono/Latin Modern Mono (LaTeX standard monospace font) is also a cool option. It’s a serif font and runs as narrow as Inconsolata. But the default line spacing is way too high, so I find I don’t have enough lines visible at once. There’s lots of space between the lines. If anyone knows how to persuade Emacs to decrease the line spacing (not the entire font size, just the line spacing!), please enlighten me. I was unable to find out how to do that (which is quite rare with Emacs).
There’s lots of space between the lines. If anyone knows how to persuade Emacs to decrease the line spacing (not the entire font size, just the line spacing!), please enlighten me. I was unable to find out how to do that (which is quite rare with Emacs).
Unfortunately that is not possible. You can increase the line height by changing local buffer variable line-spacing, but the minimum is limited to the largest height on a line.
The height of the line contents is the maximum height of any character or image on that display line, including the final newline if there is one. (A display line that is continued doesn’t include a final newline.) That is the default line height, if you do nothing to specify a greater height.
…
However, no matter what you specify, the actual line height can never be less than the default.
Wow cool. That could be indeed a solution. It’s appearently restricted to OTF and TTF fonts and the CM family is a PostScript Type 1 font, but after some conversion it could work out.
I was going to recommend Luxi Mono (non-Courier serif monospace font), but someone else already mentioned it. For an obscure choice, there’s Clear, which comes in your X11 distribution. It has this… clean quality about it, but is highly size-dependent.
edit:
One other one I like is Ohlfs which came with NeXTSTEP, but I don’t think made the cut to Mac OS. The version of it on NS looks like it’s in some proprietary format, eh.
Input Mono is mentioned, but I’d like to mention that I’m using Input Sans (proportional) for most of my coding lately. I’m not generally a big fan of proportional fonts for coding, but this one has only light variation in font width, and it works really well. Something about it just looks nicer than the Mono font in the same family. It does break ASCII-art type things like org-mode tables, unfortunately.
Thanks for the list. Ever since I heard about it (back then it still had the old name Cosmic Sans Neue Mono) I have been using Fantasque Sans Mono. It seems odd to most people looking at my editor, but I‘ve never enjoyed reading code more. Even using it with a user script on GitHub
This is a fun list :)
I’ve been using Go Mono for about a year now I think, and it’s been a real treat. I feel like ligatures are more of a personal opinion thing than a legibility thing, but I really like them.
When Go Mono came out I switched and never back. Sublime.
Was on iosevka term slab (another serif font), but I’m digging go mono.
Much larger list I made with screenshots and links:
http://charlesleifer.com/blog/monospace-font-favorites/
Hope you find it interesting.
This is really good, thank you for sharing!
Thanks, it’s very informative and useful.
What font is used for the code examples at the top of the article?
Nice writeup. I have an unnatural amount of interest in font choice, but I find it very hard to move away from macOS’ Monaco in the terminal and Hack elsewhere.
Redistributing a MacOS font would violate the license and maybe your principles, but you might feel differently about copying them from a Mac you own to another personal machine.
SF Mono is excellent.
I want to add the Spleen font to the list. Started as a OLED font for OpenBSD.
Announcement.
I am using IBM Plex for my Desktop and editors/terminals (have used Fantasque Sans Mono before).
Update: typo
Very nice! Since i can relate being coding font freak, what is your (OP’s) stance on bitmap fonts? For now on Windows I am amazed by Cascadia Code, looks really nice in Emacs (in VS2019 not so much). On Linux I am rocking bitmap fonts, Terminus and CtrlD.
Hey, thanks for the feedback! I like the esthetics of bitmap fonts—I used Terminus for a few years—but as I’ve aged and my monitors’ resolutions have increase, I find it more and more difficult to use bitmap fonts. Many of them are designed to be used at small sizes (10, 12, 14 points) and they’re too hard for me to read.
With a high-res monitor I’m a huge fan of Lexi Mono, that rarely ever gets mentioned: https://66.media.tumblr.com/2e9001dcef1be7e60315fe235e5f75c0/tumblr_nh3yotvqXm1u3kmw2o1_r1_1280.png
It never gets mentioned anymore since Go Mono superseded it. Compared to Luxi Mono, it boasts a singlestory
g
, curvedl
, and a slashed0
.Yes, I noticed this earlier. You can compare the fonts easily using this website.
Personally, I like LuxiMono more than Go Mono, precisely of the changes to the “g” and “l” glyphs. LuxiMono could use the slashed “0”, though. Currently, I’m still using Inconsolata, because the font runs much narrower than LuxiMono or GoMono which allows me to keep more Emacs buffers readable side-by-side.
Good old Computer Modern Mono/Latin Modern Mono (LaTeX standard monospace font) is also a cool option. It’s a serif font and runs as narrow as Inconsolata. But the default line spacing is way too high, so I find I don’t have enough lines visible at once. There’s lots of space between the lines. If anyone knows how to persuade Emacs to decrease the line spacing (not the entire font size, just the line spacing!), please enlighten me. I was unable to find out how to do that (which is quite rare with Emacs).
Unfortunately that is not possible. You can increase the line height by changing local buffer variable
line-spacing
, but the minimum is limited to the largest height on a line.From
(info "(elisp) Line Height")
:Thanks. Ah, too bad, so CM Mono is not going be useful for me anytime soon…
Maybe font-line can help?
Wow cool. That could be indeed a solution. It’s appearently restricted to OTF and TTF fonts and the CM family is a PostScript Type 1 font, but after some conversion it could work out.
I did not at first see the resemblance, but side-by-side it is obvious. Thanks! This is good!
I’m a huge fan of https://fonts.google.com/specimen/VT323 - I use it everywhere!
I use Camingo Code (Inconsolata for a long time before that - Consolas before that). I try a lot of these but end up going back to Camingo Code.
I like Go Mono somewhat but find it reminds me (probably because of the slab serifs) of Courier. I think it would be nice for printing source code.
i like profont iix: https://tobiasjung.name/profont/
I was going to recommend Luxi Mono (non-Courier serif monospace font), but someone else already mentioned it. For an obscure choice, there’s Clear, which comes in your X11 distribution. It has this… clean quality about it, but is highly size-dependent.
edit:
One other one I like is Ohlfs which came with NeXTSTEP, but I don’t think made the cut to Mac OS. The version of it on NS looks like it’s in some proprietary format, eh.
And also the font used on IBM terminals!
Input Mono is mentioned, but I’d like to mention that I’m using Input Sans (proportional) for most of my coding lately. I’m not generally a big fan of proportional fonts for coding, but this one has only light variation in font width, and it works really well. Something about it just looks nicer than the Mono font in the same family. It does break ASCII-art type things like org-mode tables, unfortunately.
I’m currently on hermit.
Switched from mononoki.