Open codepointless opened 2 months ago
I can review the behaviour in the Text fonts, which use contextual ccmp feature substitutions to display dotless variants.
The Math font is more complicated: the various math alphanumeric styles get dotless versions using a specific dtls feature in the MATH layout, but this will only occur within equations i.e. specific math zones. And the positioning of marks within math layout also use different mechanisms than in regular text fonts, so the GPOS anchors for positioning of marks you see in the text fonts are not used in the math layout, hence the difference between j́ in your tests.
The Unicode standard (see section ‘Diacritics on i and j’ on page 293 and figure 7-2) prescribes, that all characters with the Soft_Dotted property lose the dot when receiving any combining marks above. PropList.txt provides the complete list of Soft_Dotted characters, of which 13 are presented in STIX Two Text: Latin letters and letter-like symbols
ijįɨʝʲḭịⁱⅈⅉ
and Cyrillic lettersіј
. Only Latin i and j lose their dot with diacritics above: the stringíj́į́ɨ́ʝ́ʲ́і́ј́ḭ́ị́ⁱ́ⅈ́ⅉ́
renders like this:STIX Two Math contains even more characters with the Soft_Dotted property:
ijįɨʝʲḭịⁱⅈⅉ𝐢𝐣𝑖𝑗𝒊𝒋𝒾𝒿𝓲𝓳𝔦𝔧𝕚𝕛𝖎𝖏𝗂𝗃𝗶𝗷𝘪𝘫𝙞𝙟𝚒𝚓
, and again only Latin i and j lose the dot (and even then,j́
looks very bad): I don’t know if the ‘Math’ font is supposed to support diacritics, but it’s still strange that two characters handle the Soft_Dotted property and others don’t.