Kerning between Garay Letters and Arabic Punctuation not exported

I am working on a Garay font with kerning set up between Arabic punctuation (question-ar, semicolon-ar, comma-ar) and the Garay numbers and Garay letters. The kerning between the Arabic punctuation and Garay numbers export but not the kerning between the Arabic punctuation and Garay letters. I reviewed the features.fea file to confirm the values are not present for the letters but are present for the numbers. Let me know if you need a glyphs file to test with.

I am using the v.3417 but the behavior is the same in v.3414 and v.3343.

Thanks.

Did you kern in RTL mode?

Kerning between scripts is not applied by the layout engine. So no point exporting it.

I did kern it in RTL mode. The kerning between the numbers and punctuation work in TextEdit, FWIW.

Ah, different script. Not a variant of Arabic. Yes. What Georg said. No GPOS between different scripts. Does Garay not have punctuation of its own?

You could get away by declaring the punctuation as not belonging to any script.

Thanks. Garay only has its own hyphen but the rest of the punctuation is shared with Arabic or Latin. If I recall correctly, Ned once told me that TextEdit doesn’t do script segmentation which is probably why I see the kerning with the numbers working there.

To clarify, when you say “declaring the punctuation as not belonging to any script,” do you mean clearing out the script field in the Unicode properties section?

I don’t thing that would work. The script segmentation is done by Unicode property in the layout engine. Even subscribed glyphs will keep the original script. You could try by assigning “arabic” as script for the Garay letters (for debugging purposes) to get all the kerning pairs. And if it works in the apps you need it to work, I’ll add an exception.

Ok, I did some testing per your recommendation and I am getting mixed results.

Making everything Arabic does work in TextEdit, Pages and FontGoggles (with segmentation). It does not work in Office. That being said Office and Windows doesn’t yet properly support Unicode 16.0 additions in the production releases so the RTL behavior is broken. I have to force it with formatting characters. I will have to try again with some Insider builds, though I wouldn’t be surprised if it doesn’t work there as there are known issues with Arabic punctuation.

I looked up the Unicode Character Data for Arabic comma, semicolon and question mark and it turns out they are script neutral. So I tried Rainer’s original idea of removing the script assignment from these. This ends up working in the same applications as making everything Arabic.

It makes me think it might be good to not have a script assignment for these three characters by default since a number of scripts use Arabic punctuation.

The assigned script in Glyphs only influences the way the feature code is written. But not the behavior in the layout engine.

That is what I was thinking. Since kerning between Arabic punctuation and other scripts works in some environments then it would be good to write those GPOS entries be default so scripts like Garay, Adlam, Nko, etc will get kerning applied in places it does work.

Would the single-lookup parameter help here? Not sure what it does for RTL kerning though. Can you send me the file?

I just emailed you the file.