### Clone and Install Fontmake from Source Source: https://github.com/googlefonts/fontmake/blob/main/README.md Clone the fontmake repository and install it using pip. This is the standard method for developers to get the latest version. ```bash git clone https://github.com/googlefonts/fontmake cd fontmake pip install . ``` -------------------------------- ### Install fontmake Source: https://github.com/googlefonts/fontmake/blob/main/README.md Install fontmake using pip. Ensure you have Python 3.10 or later. ```bash pip3 install fontmake ``` -------------------------------- ### Install Fontmake from Source in Editable Mode Source: https://github.com/googlefonts/fontmake/blob/main/README.md Install fontmake from a local source checkout using the --editable option. This allows for quick testing of source code changes without re-installation. ```bash pip install -e . ``` -------------------------------- ### Specify Output File Formats Source: https://github.com/googlefonts/fontmake/blob/main/README.md Use the '-o' flag to specify one or more output file formats. For example, '-o otf ttf' creates both OTF and TTF binaries. ```bash fontmake -o otf ttf ``` -------------------------------- ### Create and Push Git Tag for New Version Source: https://github.com/googlefonts/fontmake/blob/main/README.md Steps to create an annotated Git tag for a new version and push it to the origin. This is part of the release process for a new version. ```bash git tag -a v3.1.1 git push origin v3.1.1 ``` -------------------------------- ### Specify Input Source Files Source: https://github.com/googlefonts/fontmake/blob/main/README.md Use flags to specify the input source file format. Mutually exclusive options include -g for Glyphs, -u for UFO(Z), and -m for Designspace. ```bash fontmake -g filename.glyphs ``` ```bash fontmake -u filename.ufo ``` ```bash fontmake -m filename.designspace ``` -------------------------------- ### Set Output Directory Source: https://github.com/googlefonts/fontmake/blob/main/README.md Use the '--output-dir' option to specify a custom directory for all output files, overriding the default per-format directories. ```bash fontmake --output-dir ``` -------------------------------- ### Set Specific Output Path Source: https://github.com/googlefonts/fontmake/blob/main/README.md Use '--output-path' to write a single binary output file to a specific filename. This is only valid when generating a single binary. ```bash fontmake --output-path ``` -------------------------------- ### Upgrade fontmake Source: https://github.com/googlefonts/fontmake/blob/main/README.md Upgrade fontmake and its dependencies to the latest available release using pip. ```bash pip3 install -U fontmake ``` -------------------------------- ### Interpolate Static Instances Source: https://github.com/googlefonts/fontmake/blob/main/README.md Use the '-i' flag to interpolate and generate static instances from defined instances in your Glyphs file. These are placed in instance directories. ```bash fontmake -i ``` -------------------------------- ### Define a filter in UFO lib.plist Source: https://github.com/googlefonts/fontmake/blob/main/USAGE.md Add a filter entry to the UFO lib.plist to execute a specific filter class during the preprocessing step. ```xml com.github.googlei18n.ufo2ft.filters name eraseOpenCorners namespace glyphsLib.filters pre ``` -------------------------------- ### Use Positional Arguments with Options Source: https://github.com/googlefonts/fontmake/blob/main/README.md When options that take arguments precede positional arguments, use the '--' separator to ensure all following arguments are treated as non-options. ```bash fontmake -i -- MyFont.designspace ``` -------------------------------- ### Flatten Components Source: https://github.com/googlefonts/fontmake/blob/main/README.md Use the '-f' flag to flatten components, decomposing nested components to a single level. This is recommended for compatibility with certain rendering environments. ```bash fontmake -f ``` -------------------------------- ### Configure KernFeatureWriter Mode Source: https://github.com/googlefonts/fontmake/blob/main/USAGE.md Use this lib key to set the 'mode' option for the KernFeatureWriter to 'append'. This adds generated kerning rules to the end of an existing 'kern' feature. ```xml com.github.googlei18n.ufo2ft.featureWriters class KernFeatureWriter options mode append ``` -------------------------------- ### Compile Variable Font from Glyphs Source: https://github.com/googlefonts/fontmake/blob/main/README.md Compile a variable font from a Glyphs source file. The '-o variable' flag specifies the output format. ```bash fontmake MyFont.glyphs -o variable ``` -------------------------------- ### Configure Transformations Filter in UFO Lib Source: https://github.com/googlefonts/fontmake/blob/main/USAGE.md Use this XML structure in the UFO lib to apply scaling and translation transformations to specific glyphs. ```xml com.github.googlei18n.ufo2ft.filters name transformations kwargs OffsetX 0 OffsetY 150 ScaleX 75 ScaleY 75 include A B ``` -------------------------------- ### Infer Input Format from Positional Arguments Source: https://github.com/googlefonts/fontmake/blob/main/README.md fontmake can infer the input source format from the file extension when provided as positional arguments without a flag. ```bash fontmake MyFont.designspace ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.