summaryrefslogtreecommitdiff
path: root/misc/tools/postprocess_instance_ufo.py
diff options
context:
space:
mode:
Diffstat (limited to 'misc/tools/postprocess_instance_ufo.py')
-rw-r--r--misc/tools/postprocess_instance_ufo.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/misc/tools/postprocess_instance_ufo.py b/misc/tools/postprocess_instance_ufo.py
new file mode 100644
index 000000000..26d29aa96
--- /dev/null
+++ b/misc/tools/postprocess_instance_ufo.py
@@ -0,0 +1,28 @@
+import sys
+import defcon
+
+def ufo_set_wws(ufo):
+ # Fix missing WWS entries for Display fonts:
+ # See https://github.com/googlefonts/glyphsLib/issues/820
+ subfamily = ufo.info.styleName
+ if subfamily.find("Display") == -1:
+ return
+ subfamily = subfamily[len("Display"):].strip()
+ if subfamily == "":
+ # "Display" -> "Regular"
+ subfamily = "Regular"
+ ufo.info.openTypeNameWWSFamilyName = "Inter Display"
+ ufo.info.openTypeNameWWSSubfamilyName = subfamily
+
+
+def main(argv):
+ ufo_file = argv[1]
+ if ufo_file.find("Display") == -1:
+ return # skip fonts of "default" family
+ ufo = defcon.Font(ufo_file)
+ ufo_set_wws(ufo)
+ ufo.save(ufo_file)
+
+
+if __name__ == '__main__':
+ main(sys.argv)