Intel One Mono Typeface
github.com
github.com
Installing is easy, and doesn't take much space, you set your editor and try it out.
There's no lock-in, switching back takes zero effort.
So I'm always keen to give them a go, some stick, some don't.
For what it's worth I'm in the no-ligature group. I want to see => not some ligature. But again that's subjective and there's room for all at the table.
And before anyone asks: No, this isn't a meme. Yes, I'm 300% serious.
Liberation Mono. Metrics that match Courier New, very legible at all font sizes, easy on the eyes and consistent, wide character support, free, none of that ligatures stuff (personal preference). https://en.m.wikipedia.org/wiki/Liberation_fonts
Some might also like Cousine as an alternative, a version called FiraCousine also supports ligatures for those who want them. https://en.m.wikipedia.org/wiki/Croscore_fonts
Here's an example of some fonts, for anyone curious: https://i.imgur.com/jYA6jt3.png
Some fonts like Arial are bad at this, capital "I" and lowercase "L" look the same. Calibri and Liberation sans both have slight differences, but not enough to not be confusing. Some fonts like Open Sans have crossbars on capital "I", which solves this problem. But that's not the only solution, fonts like PT Sans have a different looking lowercase "L" which is different enough not to cause confusion. Then again, technically you could also run into issues with the vertical line symbol "|".
Also, PT Mono is a nice font, but has issues with a small full stop symbol at smaller sizes (not as pronounced as Liberation Mono, annoying): https://en.wikipedia.org/wiki/PT_Fonts
Don't know why, it is of course not logical, but it is.
You usually sees it as the default monospace typeface in an old windows environment, probably with no anti-aliasing and with low resolution screen. That combination is an eyesore.
Courier New in an modern environment, with modern text rendering and anti-aliasing on high res screen is actually not bad at all.
Use Consolas, or Droid Mono, Lucida Console, almost anything.
Courier is so thin and terrible. Combine that with the default color scheme of most Linux terminals...ugh.
Maximize that terminal window on a 16:9 display when connected to a device that only gives 80 characters wide output as the final mail in the coffin.
https://quoteunquoteapps.com/courierprime/
It's slightly thicker to more closely match what Courier from a typewriter actually looked like on a page with the ink bleed -- Courier New was modeled after the typewriter forms, not the result on the page, which to me has always been a massive error.
And Prime has beautiful, actual italics.
"To this day I haven't seen a monospaced font that I like more than Courier New", surely.
What is your quantitative measure for this, and what are the values of the other fonts you've tried?
But maybe it's the intent of the designer to have each glyph have the same width, not each "character", so the glyph LESS-THAN OR EQUAL TO (≤, https://www.compart.com/en/unicode/U+2264) would be the same width as < or =: it's ultimately up to the application/typesetting engine to decide whether or to substitute the character string "<=" as "≤", and to see if the font _has_ that character and how to render it to the screen.
I suppose you could have the typesetting engine choose to somehow read the two characters, note that there's a ligature substitution, and "fit" the ligature glyph into a two-character space (say, padding the glyph or horizontally stretching it), but I doubt that would be very pleasing.
But ultimately what gets displayed is up to the typesetting engine: it can choose to use or not use ligatures; it can choose the spacing between glyphs; whether to "fake" certain styles (such as italics), text justification — all sorts of behavior. Good typesetting is available in many more applications today than it was, say, 25 years ago. There was all kinds of janky behavior going on, both from the engines not using information in the fonts when it was available, and faking it or overriding it as well.
It appears to be because of `font-variant-ligatures: common-ligatures` being set on body.
Exactly.
https://fonts.google.com/specimen/Overpass+Mono?preview.text...
It's been fixed in Red Hat Mono.
Another example of form over function, to the utter detriment of function, IMHO.
https://github.com/tonsky/FiraCode https://news.ycombinator.com/item?id=10764527
But I think it's different: it uses double-width characters for two-character ligatures, so this doesn't break alignment.
I use the Homebrew package manager on macOS to install fonts. Probably works the same way when running Homebrew on Linux.
How I install one of my favorite fonts:
brew install font-meslo-lg-nerd-fontThe way you put this is funny, because your => renders as a ligature for anyone with a ligature font as their default font in their browser (me).
1. Crossbars on the capital “i” 2. A zero that’s distinguishable from an O
"Bland" is actually good; when reading source code, you should be able to pay no attention to the font, and concentrate on the text.
I like how quotes, asterisk, circumflex, etc are large and legible.
I really dislike the curly braces in this font. Fonts with this stye of curly braces are a dealbreaker for me.
Good thing they are many others.
https://www.ibm.com/plex/ https://github.com/IBM/plex
On another note, are there any notable examples of AI-generated mono-spaced programmer fonts?
I still find it fascinating that there are so many different typefaces with such subtle differences in them, but since I'm looking at characters in the screen the entire day, these characters better be beautiful and pleasing.
I'm not gonna lie, every time I swap fonts on my desktop I keep remembering that one scene from American Psycho [0]. Maybe I should touch some grass.
Let's see Paul Allen's font.
If you love neo-grotesques, you can't do much better than Neue Haas Grotesk or Atlas Grotesk [2]. Both are by CommercialType, both cost a pretty penny, but both are absolutely amazing.
I fully agree with you about wanting beautiful and pleasing characters though. It's my gift to myself for being paperfree. If I'm going to read on screen instead of printed, I want the best possible experience. 32" 4K display, professional fonts, nice software for writing in etc.
Given that most of the gear in the business world is laptop-shaped, requiring two DisplayPort cables is just not going to fly. What do you mean, "get that expensive USB-C to dual DisplayPort dongle from Sonnet"? I thought DP1.4 was perfectly capable of driving an 8K monitor over a single cable, heck, that's what my old Dell Precision 7520 laptop is supposed to be able to do.
[1] https://commercialtype.com/news/atlas_grotesk_typewriter
Eventually I just gave up and found a usable website to actually view and sample the font: https://fonts.google.com/specimen/IBM+Plex+Mono
Luckily, the font is much better than the website!
I like the font, though, not as much as Source Code Pro Nerd ExtraLight.
If the O and the 0 are so similar that you need a decoration, then it's wrong.
If a decoration is absolutely necessary, then I prefer a slash. A big, meaty slash. Not one that is confined inside the zero.
That's a very important point of difference!
People that aren't blind, but don't have perfect eyesight often fall into a forgotten middle ground!
Glasses don't cure everything!
Source: Have a son with eyesight issues who complains that even with the best glasses money can buy, struggles to read information posters in his classroom and so on!
your complaint may feel well-intentioned, but taken at face value you have told a parent that their enthusiasm over things like companies caring about groups of people that often get lost, that their child falls into, that has led to their child struggling, after all that, that their way of communicating, of expressing themselves, is so burdensome that it drove you to check into their previous comments to make sure it wasn’t a troll, and then offer your “constructive criticism.” without acknowledging anything about their comment beyond the punctuation.
was it worth it?
I used the medium style for two hours at pretty small font-size (8pt) on a light background. And i must say i kind of liked it so far. The greater line height and letter spacing looks good on smaller sizes. On greater font-sizes the letters getting to much "personality" and the font start to feel out of bounds. It is as easy to read as my preferred font but in smaller sizes. Which is appreciated. Not sure if really want to switch, though.
In my opinion, the pinnacle of FOSS monospace typefaces is JetBrains Mono.
Digital font designers have to start out by choosing something called the em-height. This is a nonsense holdover from print days, and is especially infuriating because no one agrees on a standard em-height. Therefore, fonts look different despite being set to the same size. Here is a great rant on this: [1]
Lucida Console has a large x-height, which is generally considered helpful in small-size legibility. But it has that in common with both Consolas and Jetbrains Mono.
For me, I can use Consolas, Lucida Console and Jetbrains Mono all down to Size 10 in Git Bash on a shitty 13" 1080p laptop screen. Hence my comment that the ClearType hinting is glorious.
fira mono forever! :p
It's quite beautiful and has a DIN feel to it[2].
It's been around forever and maintenance was recently discontinued.
Intel produces and awful lot of software; they clearly are hardware-first, not hardware only.
Even the ones that don't have a display may have printing on them, from part numbers and serial numbers to instructions and warnings.
Did Papyrus represent the Avatar brand?
DID PAPYRUS?!
As iconic a moment as the creation of the first sans serif font [2].
[1] https://www.youtube.com/watch?v=jVhlJNJopOQ
[2] "The earliest printing typefaces which omitted serifs were not intended to render contemporary texts, but to represent inscriptions in Ancient Greek and Etruscan. Thus, Thomas Dempster's De Etruria regali libri VII (1723), used special types intended for the representation of Etruscan epigraphy, and in c. 1745, the Caslon foundry made Etruscan types for pamphlets written by Etruscan scholar John Swinton." https://en.wikipedia.org/wiki/Sans-serif#:~:text=The%20earli....
This thread made me finally look up its origins which are a bit interesting.
https://ew.com/tv/2017/12/19/snl-writer-julio-torres-avatar-...
It’s interesting that they had high-powered readability consultation and a lot of real-world tests with visually impaired developers and still ended up with low x heights. I had heard higher x heights were preferred for readability.
Think something like Verdana (invented for low-res computer displays) vs Garamond (staple for a long time and not just because it looks pretty.)
Ultimately I found that anything descended from or inspired by comic sans ended up a little too busy for my eyes.
Below are fonts are designed to minimize the effects of dyslexia.
https://www.k-type.com/fonts/lexie-readable/
[1] https://www.cis.upenn.edu/~sweirich/icfp-plmw15/slides/peyto...
Three story 'a' and four story 'g' drive me nuts. They seem overwrought, esp for monospaced coding fonts.
Individual preferences are weird.
I've used Recursive Mono Casual for all my coding for years now and I love it. ( https://www.recursive.design )
The italics are nicely distinctive from the normal font. Everything super legible.
You nailed it - the reason I've stuck with this font for so long is that I really appreciate the beauty of a proper x-height more than I prefer the supposed readability advantages of tall coding fonts. As long a font gets the basic features right (tails on Iilt etc characters, dot in the 0) I've never struggled with reading in monospace for hours on end.
Is that likely to cause problems, do you think? You don’t generally need to read one of those characters on their own, they’ll be in context next to other characters. As long as you easily distinguish, say:
v0 V0
"v" "V"
If those are clear then I think it’ll be fine. And the relatively low x-height should help.
It's unusual, but I'd bet it feels nice to work with after getting used to it.
1) The braces are completely horrible
2) What kind of person thinks that making the fullstop massive and putting it in the middle of the line like a dot product sign is good?
3) Where even is the backtick?
4) For all their talk of legibility, lowercase l and 1 are very similar looking to my eyes.
A lawyer.
Scanning dense legalese and/or contract language becomes quite a bit easier if you have an easy visual cue where the current (tortured) sentence will end. It provides a decent estimate for the upper bound for how much context and/or state you need to keep in your head to process a given statement.
I get to review technical and security parts of contracts at work and can see the value for such a font in that particular case.
The "@" looks thinner than the other chars.
The "%" has its fraction slash cut in 2 non aligned non rectilinear parts (and not coherent with their "‰" and "‱").
(Also, the "€" looks weird to me, maybe because the horizontal lines are of the same length ? But that's probably less important in a coding context)
Not just that, why is the backtick unconditionally combining with the previous letter? If you type "a`" it will always print "à" for me, even combining with letters like "t", seems like a ligature table bug or something. Just randomly saw that when looking at a markdown file
> ... legally blind developers provided feedback at each stage of design.
This makes me curious.
The {} look visually jarring to me. I don't know that I'd want to look at those all day long.
The rest of the font looks good too! I love a good coding monospace that fully distinguishes all the characters.
Edit: issue seems to be disussed here: https://github.com/intel/intel-one-mono/issues/3
This font has the worst clarity and legibility I've ever experienced. If you try to read code using this font, you'll break your eyes. You have to make a conscious effort to read every word. It gets tiresome really quickly.
- fira code: https://github.com/tonsky/FiraCode
- jetbrains mono: https://www.jetbrains.com/lp/mono/
And I have tried a lot. Everything else feels weirdly stretched or cramped or not legible enough etc.
Note they have different versions of the zero to cater to different tastes. The dot, the slash, the negative slash and the just figure it out it's slightly less round than a capital O are all available. They also have a ligatured version for people who are into that.
In another lifetime I coudn't imagine using anything other than Consolas/Inconsolata.
It was quite line-width dense, almost like boldening (but not: I checked and the boldface was quite distinct) which I like: some people go for thin lines and they look great but they don't always aide comprehension.
If you do decide to give it a try, I hope your editor makes it easy to configure (since they really run the gamut) and that you have another typeface to enjoy!
https://fonts.google.com/noto/specimen/Noto+Sans+Mono
On Mac (my primary desktop), I use San Francisco ("system-ui") with a couple alt stylistic sets ("High legibility" and "One storey a") as the default browser font, overriding both browser defaults and most other common "default" faces (serif and sans) via an extensive collection of @font-face directives.
Didn't care about that at all until about 2020, but can't imagine using a coding font without those features today.
Edit: I just noticed they doubled those up at the end. Nice touch
To the parent, not snark, but the font is open source. You can add those ligatures!
I’m far from an expert, though; I’ve just gotten so used to having ligatures over the past few years that I now find it uncomfortable not to have them.
They're usually grouped into features: standard ligatures (liga), discretionary ligatures (dlig), historical ligatures (hlig), contextual ligatures (clig), and so on. OpenType fonts can also provide stylistic sets, which might swap out some glyphs with alternatives.
Here's another company font: https://github.com/polarsys/b612
Looks like Comic Mono is the trial version. (https://dtinth.github.io/comic-mono-font/)
[1] https://www.intc.com/news-events/press-releases/detail/1615/...