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

[ot] Keep substituted Default_Ignorables #2886

Merged
merged 1 commit into from
Mar 4, 2021
Merged

[ot] Keep substituted Default_Ignorables #2886

merged 1 commit into from
Mar 4, 2021

Conversation

khaledhosny
Copy link
Collaborator

Don’t replace Default_Ignorables with zero-width space if they are substituted or multiplied, not just when ligated.

After this change, HarfBuzz output matches that of Uniscribe and CoreText for the new tests.

Fixes #2883

!_hb_glyph_info_ligated (info);
!_hb_glyph_info_substituted (info) &&
!_hb_glyph_info_ligated (info) &&
!_hb_glyph_info_multiplied (info);
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I’m not entirely sure the last two checks are actually needed, in my limited tests whenever _hb_glyph_info_ligated() or _hb_glyph_info_multiplied() return true, _hb_glyph_info_substituted() return true as well (but the reverse is not true).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct. Let's do that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM otherwise.

Don’t replace Default_Ignorables with zero-width space if they are
substituted or multiplied, not just when ligated.

After this change, HarfBuzz output matches that of Uniscribe and
CoreText for the new tests.

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

Successfully merging this pull request may close these issues.

Substituting ZWJ
2 participants