Corretto – Font Post-Processing for Glyphs

Basics

Basic Operation and Automatic Fixes

When you have the Corretto plugin installed, it will get called whenever you export a font from Glyphs. It will then check for any Custom Parameters using a special prefix (de.kutilek.corretto...), which are used to configure Corretto’s operation.

Some fixes are applied automatically based on the specific Glyphs build you use.

Global Activation

On the first run, Corretto should activate itself and show a notification that it is active. If you want to disable Corretto globally, you can do so by entering and running this command in the Macro Panel:

disable_corretto()

Likewise, if you want to activate Corretto again, enter and run this command in the Macro Panel:

enable_corretto()

If the notification at Glyphs launch is not shown, check if you have allowed notifications for Glyphs in your system settings.

Global Configuration File

There’s a global configuration file that specifies which functions of Corretto will be called, and in which order they are called.

This file will be saved at ~/Library/Application Support/Glyphs 3/global.correttoconfig.yaml when Corretto first is run.

You can customize this file and change the order of plugins, but be aware that there may be implications, e.g. the Save plugin should come after any plugins that modify the font file, or any changes will not be saved.

Configuration Hierarchy

The Custom Parameters that control Corretto can be added in the Font Info at the Font or the Export level.

Export level parameters will take precedence over Font level parameters, for each defined Export.

There are currently no Corretto parameters that might apply to the Masters level.

Per-File Activation

Corretto will only postprocess fonts exported from a Glyphs source if the parameter de.kutilek.corretto.active is present and active in that source file. It must be added to each Font or Export that should be postprocessed. If all Exports are to be postprocessed, adding the parameter to the Font is enough.

Example (you can copy and paste this code into the Font Info):

{
  customParameters = (
    {
      name = de.kutilek.corretto.active;
      value = "1";
    }
  );
}

In addition, Corretto must be enabled globally as described above.