4 ms·
> Fonts can include "ligatures", which let font designers special-case specific combinations of letters ... but the feature has been (ab)used for many other thi
by sublinear 1y ago
> Fonts can include "ligatures", which let font designers special-case specific combinations of letters ... but the feature has been (ab)used for many other things
Same reason to not use ligatures in your IDE, terminal, etc.
Did that trend finally die off?
- deleted 1y ago[deleted]
- nine_k 1y agoLigatures that give slightly stylized rendering to stuff like <!-- or even replace a >= with a ≥ in your source code view are much less prone to exploitation than a "ligature" that replaces a 18-letter sequence with the word "Google" in your browser's address bar. It's like comparing the hazardousness levels of a safety pin and of a chainsaw.
- jasonthorsness 1y agoMy great fear is they will become so popular that the option to disable them will be forgotten. I can’t stand the ligatures that noticeably change and merge the glyphs.
- wbl 1y agoHave you ever read a book typeset without them? Imagine a dot in fig where the loop of the f conflicts.
- jasonthorsness 1y agoThose historical use cases are fine and important, the problem ones are the ones in monospace fonts that change <= to ≤ and that sort of thing, or even crazier abuses like shown here.
- toast0 1y agoI like the dotted i in fig, thank you. Not a big fan of underlines that don't cross descendeds either.
- kstrauser 1y agoFortunately, no. They’re increasingly well supported for the user base who think they look nice… like me. I love the way my code looks in Berkeley Mono on any modern editor version. Seeing `>=` render similar to `≥` makes me smile. It’s a tiny visual tweak that doesn’t even cause anything to move on the screen, because that font’s ligatures are the same width as the characters they replace. I see no downside to it for me.
- layer8 1y agoPersonally, I find an extra-wide “≥” more ugly and jarring than “>=“. If anything, I would prefer programming languages to understand the actual Unicode “≥”, and people learning how type that (Compose key, dedicated IDE support, or whatever). It would be nice for more people to appreciate that the characters one can type aren’t limited to the symbols printed on the keyboard.
- kstrauser 1y agoEvery editor and language I use is fine with Unicode in files, but I don’t know if that’s true for everyone I collaborate with. Sure, I can type all those symbols, but can they? Does a screen reader pronounce them reasonably? Do they render correctly in GitHub’s web source code viewers? Will I ever get as fast typing composed characters as just pressing `>=`? Does everyone use a font that supports those codepoints? I don’t know. Probably, but who can tell? I tend to limit non-ASCII text to inside quoted strings and use exclusively ASCII-compatible codes for all identifiers. But the great part about ligatures is that I can use fonts that support them and enable them in my editors because I think they look pretty. Anyone who doesn’t like their appearance can just not use them. We can both have editors that look nice to ourselves without making the other’s editors look worse. How often can we say that?
- AStonesThrow 1y ago> Does a screen reader pronounce them reasonably? I've been pushing the limits of emoji/Unicode recognition where I try to input it in an app or while communicating with others, and see what happens. It's especially fun to use Emoji in the "favorite lists" for rideshare apps. In particular, each of my Favorite Waymo Destinations is accompanied by 3-5 Emoji which identify the unique spot or its category. The really amusing part is that the Waymo car itself verbally reads off the destination when it gets underway. So the Emojis are translated into English and rattled off uncritically, but accurately, including incidentals like which skin-tones were chosen. It makes me giggle; I haven't found any unpronounceable glyphs yet!
- immibis 1y agoLigatures should not be used in monospaced fonts, for obvious reasons.
- jefftk 1y agoI would be ok with the equivalent of the "fi" ligature, where two letters would be drawn slightly differently when next to each other.
- immibis 1y agoWhy? Monospaced characters fit in their separate cells.
- Hasnep 1y agoIf the ligature takes up the same horizontal space as the characters it represents, then I don't see why not.
- underrun 1y agohard disagree. i use monospace fonts with ligatures for programming. primarily i get things like -> rendered as a full arrow or == connected or ... as an actual ellipsis. it's subtle but it's nice. I've also seen nice use of ligature for markdown formatting. the idea that ligatures shouldn't be used with monospace fonts would also break monospace in multiple languages as some languages require ligatures to display single characters correctly.