googlefonts / googlefonts/fontmake
what should we do: empty GPOS/GSUB tables handling differences between Glyphs.app and fontmake
- Dominant language
- Python
- Stars
- 888
- Forks
- 97
- Avg merge
- 4d 52m
- Merged PRs (30d)
- 1
Description
Now that we are working on single weight existing script conversions that include OpenType tables, we’ve encountered a new situation where Glyphs app. and pipeline handle things differently.
It has to do with empty GPOS/GSUB tables.
When we developed the SOW 12 TTF fonts, it was decided that if a font had a functional GSUB table, but no requirement for a GPOS, then an empty GPOS would be included. The reverse was also true about empty GSUBs.
In such a TTF, if there was an empty GPOS table it was truly empty, in that there were no features/lookups mentioned, just the script of the font.
It seems that a truly empty GPOS table won't work for OTFs produced via pipeline. When generating an OTF from a Glyphs file (with either FontWorker style OpenType or internal OpenType) via Pipeline, an empty GPOS table produces an error message in the log and no OTF is made. It appears the empty GPOS needs to have a feature and a lookup for pipeline to work.
A similar situation exists for an empty GSUB table. Pipeline requires there to be some feature and lookup present in the table.
Our question is how you want to handle fonts that have an empty GPOS or GSUB table? Is this something that can be fixed in pipeline? Or, are there some ‘dummy’ entries you want us to put in empty tables as a work around to this pipeline expectation?
Contributor guide
Assessment
This issue has not been assessed yet.