canonical / Ubuntu-Sans-fonts

Other
54 stars 4 forks source link

Glyphs in the GDEF mark class must be non-spacing. #25

Open glenda-tn opened 2 years ago

glenda-tn commented 2 years ago

The following non-mark characters (spacing marks) should not be in the GDEF mark glyph class:

The above code points are all defined as spacing marks in Unicode. To use as non-spacing marks, create a duplicate component set on zero width.

guidoferreyra commented 1 year ago

All the anchors were removed from the listed glyph so it will be not longer added to GDEF. I still need to remove the anchor from /tonos.cap but I don’t want to overwrite any changes being made now.

djrrb commented 1 year ago

feel free to make change, i can dive in tomorrow morning

guidoferreyra commented 1 year ago

Done 4c27e63

glenda-tn commented 1 year ago

⚠️ WARN The following spacing glyphs may be in the GDEF mark glyph class by mistake:

glenda-tn commented 1 year ago

These have reappeared: 🔥 FAIL The following non-mark characters should not be in the GDEF mark glyph class:

djrrb commented 1 year ago

@guidoferreyra could you perhaps help me with this? I thought these could be spaced and have anchors, and would be set to zero width on build? sorry for the confusion.

guidoferreyra commented 1 year ago

The glyph list posted by Glenda are polytonic greek diacritics which are not considered non-spacing and should not be on the GDEF mark class. To prevent fontmake to add it to the GDEF is needed to remove the anchors from it which might not be possible if the anchors are being used to align diacriticis on composite glyphs.

glenda-tn commented 1 year ago

A solution is to add duplicate glyph components, unencoded, and classify the duplicate as a mark. Note the dupe would be on zero width while the encoded glyph remains spacing. The substitution takes place in `ccmp' very early in processing. I used this solution many times in the past.

glenda-tn commented 1 year ago

From Unicode 15, Chapter 7

Screen Shot 2023-06-28 at 3 10 06 PM
djrrb commented 1 year ago

Following up on this: Adding duplicates as suggested above increases the complexity of the font, and we are hesitant to do something that creates mores issues than it solves. Since this is a fontbakery WARN and not a FAIL, we will let this stand unless otherwise requested.