This seems like the spot where the partial ligatures are drawn: searchfox.org/mozilla-centra. It is then called here: searchfox.org/mozilla-centra
My code comprehension is pretty bad (especially with C++), but it doesn't seem to be using the caret positions.
Conversation
At any rate, while I think Firefox's approach is kind of cute, my boss has kind of convinced me that a better solution is to force a ligature break when there's is a change to the inline style. So both Chrome and Firefox are probably doing it wrong. 😅
2
1
safari!
1
1
This is how you do it! 🙌
1
Ah yeah, seems like the same thing. The style change breaks the glyph substitution for myanmar, which you can read more about here here:
1
1
Although in linking that doc, Safari is probably using Core Text – which *might* use an alternate standard for shaping Myanmar. Can't remember the specifics though. Regardless, the relevant bit is that scripts like this do glyph substitutions, and Safari is breaking those.
2
1
Myanmar rendering is hurting my brain next level 😂
1
1
Yeah. My colleagues had to implement shaping for scripts like it in Allsorts (see github.com/yeslogic/allso) and their brains hurt as well afterwards. Not sure if we do Myanmar yet, however.
2
hard to know what's also actually a bug or a feature in these cases, for me anyhow - chrome's behaviour re: my original example is broken in that intent failed (f[iretr]uck is funny, fi[retr]uck is annoying), firefox's is cute, safari seems optimal. but beyond english? no idea :D
1
1
Replying to
Yeah it's challenging! Not sure how to handle your specific use case. :(
Fwiw, here's somebody who disagrees with Safari's approach to splitting cursive text: github.com/w3c/alreq/issu. They most likely has more first-hand experience in using these languages - I highly recommend their unicode apps r12a.github.io!
1
1
oooo these links are great! r12a.github.io/scripts/sample just this link would have saved me so much time over the years 😂
1
1
Show replies

