frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

GitHub Monaspace Case Study

https://lettermatic.com/custom/monaspace-case-study
52•homebrewer•2h ago

Comments

rezmason•1h ago
Were fonts always able to do "texture healing"? Has no one tried this before?
fontain•1h ago
“Texture healing works by finding each pair of adjacent characters where one wants more space, and one has too much. Narrow characters are swapped for ones that cede some of their whitespace, and wider characters are swapped for ones that extend to the very edge of their box. This swapping is powered by an OpenType feature called “contextual alternates,” which is widely supported by both operating systems and browser engines.

Contextual alternates are normally used for certain scripts, like Arabic, where the shape of each glyph depends on the surrounding glyphs. And they are also used for cursive handwriting fonts where the stroke of the “pen” might have different connection points across letters. Texture healing is a novel application of this technology to code.”

dhosek•1h ago
Always able to do it? Yes. Even before OpenType alternates, the extended ligature support in TeX 3.x would have also allowed for this sort of thing.

Why has no one tried it before? Because (a) nobody thought of it and (2) OpenType alternates, while they’ve been around for a while, have not always been supported in the sorts of programs that use monospace fonts (code editors and terminals)

micampe•41m ago
There have been other attempts; Commit Mono uses a slightly different approach: https://commitmono.com/ (don’t know which came first)
layer8•14m ago
It really only makes sense on high-DPI displays (or large font sizes), which didn’t used to be that wide-spread.

Conversely, nobody seems to be doing pixel-based hinting anymore, which is why all newer fonts tend to look terrible at small font sizes on lower-DPI displays.

keeganpoppen•1h ago
i do think that the type designers did incredible work with monaspace… i used to be an Operator-exclusive kind of guy (rip hoefler x frere-jones), but i genuinely think they did enough to completely displace it from my font lexicon, which is no mean feat.
keeganpoppen•1h ago
i do prefer neon and argon to the rest, though i see the place for all of them to exist
satvikpendem•15m ago
I usually stick with Apple's SF Pro Mono but I'll have to try out this font.
evanjrowley•1h ago
I like the way the problem of "m" is solved by Ubuntu Mono: https://fonts.google.com/specimen/Ubuntu+Mono

It's what I landed on after completing the Coding Font game submitted to HN yesterday: https://news.ycombinator.com/item?id=47575403

endunless•1h ago
I do like these fonts, but DJR had this idea with the (excellent) Input family of fonts years ago:

https://input.djr.com/

A bit weird to not mention that.

Unfortunately until editors start supporting this (and I’m not sure what would motivate them to), these remain great ideas only.

sheiyei•52m ago
Input's method seems to be fundamentally very different to this. Monaspace keeps the grid intact and only changes the characters visually (situationally overlaps wide letters to neighbouring narrow characters' spaces). Input just pretends to be monospace in its aesthetics, I don't really understand what's supposed to be special with that.
endunless•23m ago
Fair points on the technical implementation.

I more meant the idea of using different fonts in the same buffer to represent different kinds of text.

actionfromafar•47m ago
Which editors?
endunless•15m ago
Given GitHub is owned by Microsoft, I think VS Code supporting mixing fonts in a buffer would be a good start!
exceptione•1h ago
Very useful to mix and match various fonts based on semantics. I have a problem with Radon's l though, to me it reads like chumiZy and xenoZith. I don't understand how this could have slipped through, I can't be the only one being constantly confused.
sheiyei•48m ago
I feel like that font is a real bad apple. The other ones are decent and I like the "texture healing" (but not its name)
ben_pfaff•46m ago
I decided to try using proportional fonts for coding starting a year or two back. It worked out well and I stuck with it, because proportional text is easier for me to read on the whole, and because it allowed more characters to fit comfortably on each line on average. I did find after a while that occasionally the lack of alignment between characters on two subsequent lines was a problem, but then I configured my editor so that it showed comments and text strings in a monospace font and that fixed the problem for me.
sombragris•38m ago
When I saw the Monaspace family linked in a HN frontpage some time ago, I installed the whole family, and now my terminal font is Monaspace Neon. I also type my LaTeX code in Monaspace Argon. They won me over Iosevka.