Browser Ligature Issue
July of 2025, nearly 2 years after the original release, a friend of mine Kiàn-tiong hit me up, asking to put the font in a the Taigi compatible fonts list, and brought up one peculiar issue - vowel o͘ bumps into the next glyph
The Bumping Problem
The vowel " o͘ "(o with a dot above right) bumps into the next glyph. Weird thing is, i already have a special ligature made for o+combining_dot_above_right. Supposedly o + combining_dot_above_right results in my ligature, and then the other combining mark would sit on top of that ligature, now this indeed happened in Fontforge and Notepad(win11), but apparently not in browsers when i checked Bulletproof :( what the hell man
Turning off the "mark positioning" feature revealed the trickery at hand:
Turns out, browsers(at least Firefox and Chrome on Win11) prioritizes existing unicode glyphs
Consider the following combinations:
o + combining_grave => ò U+00F2, uppercase U+00D2
o + combining_dot_above_right => o͘ no code point, custom ligature
Both worked fine, now consider this combination:
o + combining_dot_above_right + combining_grave =>
I thought : o͘ (custom ligature applied first) + combining_grave (then gpos mark rules apply)
This happened in Notepad and in Fontforge
What happend in the browser : ò (U+00F2) + combining_dot_above_right
The browser noticed that one of the diacritics, grave, has an existing glyph with o, it then combined these two, before even starting to evaluate my ligature rules. Resulting in my triple ligature for "o + combining_dot_above_right + combining_grave" never matching
If you want to know how to resolve this problem, i also wrote a Substack going into the details , the first half is basically exact copy, just skip to "Solution"
Conclusion
Fuck browser
-sincerely, CIOSAI
Leave a comment
Log in with itch.io to leave a comment.