googlefonts / googlefonts/glyphsLib

difference between "Keep Glyphs" vs "Export Glyphs" custom params?

Open
#295 11 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
201
Forks
56
Avg merge
17m
Merged PRs (30d)
1

Description

fontmake currently uses a combination of "com.schriftgestaltung.Glyphs.Export" (bool, inside the GLIF lib) and "com.schriftgestaltung.Keep Glyphs" (list of strings, in the global UFO lib) in order to determine the list of final glyphs to keep in the generated font (currently using the fonttools subsetter after the fact, but I'd like to change this, anyway that's another issue..).

https://github.com/googlei18n/fontmake/blob/6cdf44ea38d17f9bb14fa65c1c9bc6ea82e3b89b/Lib/fontmake/font_project.py#L300-L304

In the Glyphs handbook I see two very similar custom parameters and I can't understand what is the difference between the two.

Can anyone please enlighten me? Thanks

/cc @schriftgestalt @moyogo @belluzj

```
Keep Glyphs (list) List of glyphs that will be kept in the exported
font. All other glyphs will be discarded, and kerning and
automatic feature code will be updated accordingly. Works as
the opposite of the Remove Glyphs parameter, useful for
webfont subsetting in order to achieve smaller file sizes.
Remove Glyphs and Keep Glyphs are mutually exclusive.

Export Glyphs (list) Exports all glyphs listed, regardless of whether
the glyph was set to export or not.
```

Contributor guide

Open the contributing guide

Research direction

Read the linked fontmake/font_project.py lines around 300-304 and compare their handling of “Keep Glyphs” and “Export Glyphs” with the corresponding Glyphs handbook definitions. Confirm the semantic difference and document how glyphsLib or fontmake should represent or apply each parameter; done means the distinction is clear and consistent with the documented behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.