Live data from Hacker News

MonoLisa – A font designed for developers

monolisa.dev

181–190 of 294 posts

Re: MonoLisa – A font designed for developers

#181
post #168

Earlier quoted context omitted.

Serious (if goofy:) ) question: How do I not use them? My understanding is that if the font has ligatures then the way to not use them is to use a different font (which is fine - there's a lot of fonts out there :) ). Is that the only way, or is there a way to disable ligatures but keep the rest of the font? Can you disable only some of the ligatures? TIA!

In JetBrain products: Preferences -> Editor -> Font -> Enable ligatures So you can turn them off even in fonts that have them, but most fonts have separate versions with and without anyway.

For VS Code see (1) and to selectively disable them (2).

For Atom see (3).

There does not appear to be a way to disable them in Visual Studio.

(1) https://stacksjar.com/post/use-of-font-ligatures-in-vs-code

(2) https://marketplace.visualstudio.com/items?itemName=Coenraad...

(3) https://github.com/tonsky/FiraCode/issues/633

Re: MonoLisa – A font designed for developers

#182
post #161
post #131

Earlier quoted context omitted.

I mean... The existence of ligatures is almost by definition strictly aesthetic. And on that measure, it either brings you a smile to notice that f and i, for example, are joined; or you didn't even notice it. That is, I won't claim they help readability. But they do make me smile, and don't seem to hurt. (I'm assuming they disappear on copy operations. Mac OS' habit of replacing -- with a longer dash is painful when…

There's a third option: "What is that?" When I'm reading fiction, I generally don't mind ligatures. I find them oppressively obscurantist in any situation where I want to know clearly and distinctly what each character is -- i.e. code and science/math/engineering.

I'd wager that the vast majority of the time, you just don't notice them.

About the only time they are easily visible is in large type, when they really shouldn't be used.

It's kind of like right justified text. Done well, it shouldn't be noticed how it was done.

Re: MonoLisa – A font designed for developers

#184
post #140

Earlier quoted context omitted.

Please stop it with the diatribes about ligatures. If you don't like them, don't use them. It's that simple. Other people do like them, and will continue to use and enjoy them.

Serious (if goofy:) ) question: How do I not use them? My understanding is that if the font has ligatures then the way to not use them is to use a different font (which is fine - there's a lot of fonts out there :) ). Is that the only way, or is there a way to disable ligatures but keep the rest of the font? Can you disable only some of the ligatures? TIA!

Some fonts also just have different variants with and without ligatures, for example Cascadia Code/Mono: https://github.com/microsoft/cascadia-code

Re: MonoLisa – A font designed for developers

#185
post #180

Earlier quoted context omitted.

A ligature is more functional than not using one. They obscure the code for about 5 seconds the first time you see them, and then never again. After those 5 seconds, you register a new semantic symbol in the brain. It is objectively easier for your brain to parse a single arrow symbol than it is to parse => in a monospace font. For the latter, you are scanning two symbols and only after seeing them both can your brai…

If your programming language wants to use an ⇒ symbol there's a perfectly good codepoint for that already. I don't want complexity to be hiding in my font where I would never even think to look for it. (For example imagine searching the documentation to understand a use of ⇒ and finding it doesn't exist in your programming language)

My programming language doesn't want to use it; I do. If you would "never even think" to realize that ⇒ in your editor is actually =>, after having installed a programming ligature font where that is always advertised, that's on you. And any developer should already be well aware that no common language uses symbols beyond ASCII, so seeing ⇒ should be clear enough already that it's a ligature. I really think this 'confusion' argument is made up and has never actually occurred for more than 5 seconds.

Semantically, the language would like to use a ⇒, because it's representing the idea of an arrow. It's only due to keyboard constraints that it has use use =>. Parsers (and our brain is also a parser) would be much easier to implement if meaning didn't have to derive from symbol combinations like =>, !==, <!--. The input interface is limited to ascii to represent meaning, but our eyes don't need to be.

Re: MonoLisa – A font designed for developers

#186
post #180

Earlier quoted context omitted.

If your programming language wants to use an ⇒ symbol there's a perfectly good codepoint for that already. I don't want complexity to be hiding in my font where I would never even think to look for it. (For example imagine searching the documentation to understand a use of ⇒ and finding it doesn't exist in your programming language)

My programming language doesn't want to use it; I do. If you would "never even think" to realize that ⇒ in your editor is actually =>, after having installed a programming ligature font where that is always advertised, that's on you. And any developer should already be well aware that no common language uses symbols beyond ASCII, so seeing ⇒ should be clear enough already that it's a ligature. I really think this 'co…

> If you would "never even think" to realize that ⇒ in your editor is actually =>, after having installed a programming ligature font where that is always advertised, that's on you.

Sounds like we agree that a font that does this should never be a default. I don't think customized environments to the extent that one developer sees a different view of the code from another are a good idea (partly because I think reviewing and pair-programming are very valuable), but I guess if you want to set up something like that it's fine as long as you're not pushing it on anyone else.

> And any developer should already be well aware that no common language uses symbols beyond ASCII, so seeing ⇒ should be clear enough already that it's a ligature.

I've been using ⇒ in Scala for over a decade, shrug.

Re: MonoLisa – A font designed for developers

#187

Earlier quoted context omitted.

A ligature is more functional than not using one. They obscure the code for about 5 seconds the first time you see them, and then never again. After those 5 seconds, you register a new semantic symbol in the brain. It is objectively easier for your brain to parse a single arrow symbol than it is to parse => in a monospace font. For the latter, you are scanning two symbols and only after seeing them both can your brai…

If this wasn't a discussion about monospace fonts, I might be inclined to agree with you. However, I kinda agree with the detractors here; ligatures objectively defeat the purpose of equally-spaced characters. The purpose of monospace fonts is to provide definitive clarity where sans and serif fonts fail to do so. In the world of programming, maintaining that consistency is essential. Having one symbol span several s…

Monospace fonts are used mainly because vertical alignment is desirable, and because characters such as ! and . are too narrow to easily read in proportional fonts. Monospace, then, improves clarity. Turning a => into a ⇒ does not affect the vertical alignment nor make anything too narrow to read. It just turns a combination of symbols into its semantic meaning. It allows you to parse a meaningful glyph rather than using a hacky workaround to represent meaning via ascii. This is also the point of emojis: (-_-) is fine, but most people find to be more clear as to the meaning. Nobody is getting confused about what these ligatures mean. They installed the fonts and selected the fonts in their IDE; they have already been coding; they are not going to see ⇒ where a => used to be and have a brain meltdown.

Re: MonoLisa – A font designed for developers

#188
post #24

Unfortunately not available to compare on https://www.programmingfonts.org/ While I'm here: Victor Mono has been my programming font of choice for a while now: https://rubjo.github.io/victor-mono/ Oh, look at that, the Victor Mono homepage has a font comparison slider that allows you to compare it to MonoLisa! MonoLisa advertises that it's wider than other monospace fonts, and you can really see that in the compariso…

I don't know why anyone would even bother to even go beyond the first item on the list. Such beauty, such elegant geometry, such timeless classic lines. Truly an elegant font for a more civilized time. https://www.programmingfonts.org/#font3270 BTW, I'm also a huge fan of Luxi Mono, but I edit it and add a dot in the middle of the zero to make it different from the O. I like it because it reminds me a bit of the Sun…

[deleted]

Re: MonoLisa – A font designed for developers

#190

Please stop it with the "coding ligatures" already. They are not helpful and only serve to obscure the code being written. This has got to be one of my least favourite trends in programming aesthetics these days. For a font claiming to "follow function" to devote so much effort to sacrificing function for the _vogue du jour_ is especially rich.

Just for the record: completely disagree with you, and will never again in my career use a coding font that doesn't support ligatures.

So, YMMV.

Post reply on HN