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

GDEF table does not include the bracket glyphs; no mark/mkmk generated #578

Closed
anthrotype opened this issue Jan 29, 2020 · 0 comments · Fixed by #581
Closed

GDEF table does not include the bracket glyphs; no mark/mkmk generated #578

anthrotype opened this issue Jan 29, 2020 · 0 comments · Fixed by #581

Comments

@anthrotype
Copy link
Member

when converting from .glyphs to UFO, glyphsLib generates a GDEF GlyphClassDef table (with Base, Mark, Ligature glyphs) based on the GlyphData.xml properties.
Now, ufo2ft uses a GDEF table (if present in the UFO features.fea) when generating mark and mkmk features. If a GDEF table definition is present in features.fea, then it only considers as bases/marks/ligatures the glyphs that are listed in the GDEF; those that aren't are simply excluded from the mark and mkmk lookups.

The problem is that, even if bracket layers contain some anchors (and the user expects these anchors to be used for generating mark/mkmk), glyphsLib is not considering these when auto-generating the GDEF table definition. This is because it generates this GDEF before it actually converts the bracket layers to standalone UFO glyphs. As it generates the GDEF, the bracket "glyphs" are not there yet, so they are not considered; by the time it has applied the bracket layers (copying them over to standalone glyphs), it is too late for them to be included in GDEF.

We need to reorder the logic here and make sure that GDEF contains the newly added bracket glyphs.

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 a pull request may close this issue.

1 participant