OS Manuals

/opt/chainguard/fontmake/bin/glyphs2ufo

Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)

From fontmake 3.12.2-r1 (os), captured 2026-11-05 by running glyphs2ufo --help (exit 0). permalink

usage: python -m glyphsLib glyphs2ufo [-h] [--version] [-m OUTPUT_DIR] [-d DESIGNSPACE_PATH]
                                      [-n INSTANCE_DIR] [--ufo-module UFO_MODULE] [--minimal]
                                      [--no-preserve-glyphsapp-metadata] [--propagate-anchors |
                                      --no-propagate-anchors] [--generate-GDEF |
                                      --no-generate-GDEF] [-N] [--create-background-layers]
                                      [--no-store-editor-state]
                                      [--write-public-skip-export-glyphs] [--expand-includes]
                                      [--glyph-data GLYPHDATA]
                                      GLYPHS_FILE

positional arguments:
  GLYPHS_FILE           Glyphs file to convert.

options:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  -m, --output-dir OUTPUT_DIR
                        Output directory of masters. (default: directory of Glyphs file)
  -d, --designspace-path DESIGNSPACE_PATH
                        Output path of designspace file. (default: directory of Glyphs file)
  -n, --instance-dir INSTANCE_DIR
                        Output directory of instances. (default: output_dir/instance_ufos). This
                        sets the file path for instances inside the designspace file.
  --ufo-module UFO_MODULE
                        Select the default library for writing UFOs. Choose between: ufoLib2,
                        defcon (default: ufoLib2)

Roundtripping between Glyphs and UFOs:
  --minimal             Create minimal UFO files with only data needed for building fonts.
  --no-preserve-glyphsapp-metadata
                        Skip preserving Glyphs metadata in master UFOs and designspace file, which
                        would be used to minimize differences when roundtripping between Glyphs
                        and UFOs.
  --propagate-anchors   Copy anchors from underlying components to actual glyph (Glyphs would do
                        this implicitly upon export). By default, if this option is not explicitly
                        used, glyphs2ufo checks the 'Propagate Anchors' font custom parameter and
                        if unset or set to 1 (true) then the anchors get propagated. Pass this
                        option to enable this overriding the parameter.
  --no-propagate-anchors
                        Disable anchor propagation regardless of any custom parameter.
  --generate-GDEF       Write GDEF categories into the UFO's `public.openTypeCatgeories` lib key.
  --no-generate-GDEF    Skip writing GDEF categories into the UFO's `public.openTypeCatgeories`
                        lib key (default behavior, for backward compatibility).
  -N, --normalize-ufos  Normalize UFOs with ufonormalizer, which avoids differences due to
                        spacing, reordering of keys, etc.
  --create-background-layers
                        Create background layers for all glyphs unless present, this can help in a
                        workflow with multiple tools that may create background layers
                        automatically.
  --no-store-editor-state
                        Skip storing editor state in the UFO, like which glyphs are open in which
                        tab (DisplayStrings).
  --write-public-skip-export-glyphs
                        Store the glyph export flag in the `public.skipExportGlyphs` list instead
                        of the glyph-level 'com.schriftgestaltung.Glyphs.Export' lib key.
  --expand-includes     Expand include statements in the .glyphs features and inline them in the
                        exported UFO features.fea.

Glyph data:
  --glyph-data GLYPHDATA
                        Custom GlyphData XML file with glyph info (production name, script,
                        category, subCategory, etc.). Can be used more than once.
Options (18)
OptionDescriptionSource
-h, --helpshow this help message and exithelp
--versionshow program's version number and exithelp
-m, --output-dir OUTPUT_DIROutput directory of masters.help
-d, --designspace-path DESIGNSPACE_PATHOutput path of designspace file.help
-n, --instance-dir INSTANCE_DIROutput directory of instances.help
--ufo-module UFO_MODULESelect the default library for writing UFOs.help
--minimalCreate minimal UFO files with only data needed for building fonts.help
--no-preserve-glyphsapp-metadataSkip preserving Glyphs metadata in master UFOs and designspace file, which would be used to minimize differences when roundtripping between Glyphs and UFOs.help
--propagate-anchorsCopy anchors from underlying components to actual glyph (Glyphs would do this implicitly upon export).help
--no-propagate-anchorsDisable anchor propagation regardless of any custom parameter.help
--generate-GDEFWrite GDEF categories into the UFO's `public.openTypeCatgeories` lib key.help
--no-generate-GDEFSkip writing GDEF categories into the UFO's `public.openTypeCatgeories` lib key (default behavior, for backward compatibility).help
-N, --normalize-ufosNormalize UFOs with ufonormalizer, which avoids differences due to spacing, reordering of keys, etc.help
--create-background-layersCreate background layers for all glyphs unless present, this can help in a workflow with multiple tools that may create background layers automatically.help
--no-store-editor-stateSkip storing editor state in the UFO, like which glyphs are open in which tab (DisplayStrings).help
--write-public-skip-export-glyphsStore the glyph export flag in the `public.skipExportGlyphs` list instead of the glyph-level 'com.schriftgestaltung.Glyphs.Export' lib key.help
--expand-includesExpand include statements in the .glyphs features and inline them in the exported UFO features.fea.help
--glyph-data GLYPHDATACustom GlyphData XML file with glyph info (production name, script, category, subCategory, etc.).help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.