Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[USE] Symbol cluster now enabled for many scripts that don't need it #1179

Open
NorbertLindenberg opened this issue Oct 16, 2024 · 4 comments

Comments

@NorbertLindenberg
Copy link

Description

The update to the USE documentation dated 09/15/2024 includes some changes that enable the symbol cluster for many additional scripts, which seems undesirable. The symbol cluster was originally intended for Balinese musical symbols and is probably still only useful for that particular use case. The additional scripts are: Dogra, Grantha, Kaithi, Khojki, Khudawadi, Mahajani, Sharada, Takri, Tibetan, and Tirhuta. The change will be visible in documentation such as Encoding orders of Brahmic scripts.

The changes causing this are that the marks of the Balinese musical symbols are now lumped into the USE class CONS_MOD rather than being kept in the previously used SYM_MOD class, and that the definition of the symbol cluster now uses CONS_MOD rather than SYM_MOD. This enables the symbol cluster for any script that has both symbols and consonant modifiers.

Page URL

https://learn.microsoft.com/en-us/typography/script-development/use

Content source URL

https://github.com/MicrosoftDocs/typography/blob/live/typographydocs/script-development/use.md

@xadxura
Copy link
Collaborator

xadxura commented Oct 16, 2024

Thank you, @NorbertLindenberg, is there a specific harm that arises from this change? The Microsoft implementation has always been this way, so the spec change was to align to current practice rather than risk a take-back by having the code restrict to only Balinese symbols + modifiers.

@NorbertLindenberg
Copy link
Author

"Specific harm" would be exaggerated. However, the two most popular USE implementations, HarfBuzz and CoreText, don't seem to allow CONS_MOD as part of the symbol cluster, so the risk of removing that undocumented extension from the Microsoft implementation can't have been that big. I don't know if the owners of the other implementations are planning to update them to enable this extension. This creates a something difficult situation for me when I try to help developers of fonts, keyboards, etc. to understand what the USE allows for their respective scripts.

@dscorbett
Copy link

HarfBuzz already allows a symbol cluster to end like any other cluster, including with CONS_MOD characters. This change would affect HarfBuzz only in that non-symbol clusters would be allowed to include SYM_MOD characters, which seems fine.

@NorbertLindenberg
Copy link
Author

I stand corrected: The dotted circles I saw with HarfBuzz may have been the result of font fallback. And looking at the source code, it seems HarfBuzz is indeed excessively permissive. CoreText, however, does insert dotted circles even without font fallback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants