New Features in Glyphs 2.6

Welcome to Glyphs 2.6, which first and foremost is a free maintenance update for macOS 10.14 Mojave. And as part of that, we are thrilled to present to you Glyphs—in Dark Mode:

Antonia by Typejockeys

Isn’t it a beauty?

But I suppose you know us already well enough that you can guess we did a little more than just that. We added many, many improvements, fixes, enhancements, accelerations and whatnot. Read on for a little overview of what’s new in the latest version of Glyphs.

Speed, Speed, Speed

Oh boy, have we put the pedal to the metal… We were able to restructure the way both Edit and Font views are drawn on the screen. Now, screen drawing makes full use of the latest and greatest graphics capabilities in macOS, so you should see a significant performance increase when scrolling through the Font tab, or with a lot of text in an Edit tab. The same is true for a number of batch edits. And if your machine has a lot of processor cores, well, put on your seat belt and see for yourself.

Selecting Segments

Small addition, big change in your workflow: You can now select outline segments. Click, boom, it’s that easy. No modifier keys, no nothing, just click on it:

And of course, you can Shift-click to add or remove segments from your selection.

Variable Fonts

We debuted it at ATypI Antwerp earlier this year: you can now make color variable fonts with Glyphs! Even Brace layers are supported, haha. Believe it or not, this is (an animated GIF of) a font:

What do you have to do to achieve it?

  1. In Font Info > Masters, set up the color palette like you would for a CPAL/COLR font.
  2. Create ‘normal’ black and white variable glyphs, with brace layers and everything you need for the various parts you want to move (in the Pong example, the background, ball and bats)
  3. In a new glyph, insert them as components, but on different Color layers.
  4. Drag the Color layers in the right order, and you’re done. Ta-daa!

We renamed the custom parameter Variation Font Origin to the more consistent Variable Font Origin. The old name should still work, but please update your files accordingly anyway. Plus, we added two new parameters:

  • Variable Font File Name (or the equivalent variableFileName) lets you set the file name of the exported font.
  • variableStyleName sets the default style name of your variable font. This makes most sense if you do not have any instances set. If you do not set anything, it will default to ‘Regular’.

    Edit view

    To make the glyph names more legible, we are now using a variant of the system font with more legible shapes for characters that can easily be mistaken for others, like the uppercase I, the lowercase l and the zero. Especially in Font view, but also in the kerning panel and the grey info box in Edit view, this will help you spot typos:

    You can now paste or drag image data into Edit view, and as soon as you press Cmd-S for saving, Glyphs will generate a corresponding image file in a subfolder called Images next to the .glyphs file. Glyphs is smart enough to use unique file names, so images do not get overwritten.

    • The Select Glyphs window (the one you see, e.g., when you insert a glyph with Cmd-F) is resizable now.
    • Global guides now also show in Brace and Bracket layers.
    • Fixed: when a glyph is duplicated in Edit view, the production name is not duplicated anymore.
    • Glyphs with too many nodes will trigger a warning dialog.
    • Better display of invalid PostScript hints. It was sometimes hard to select way-off hints, and delete them. Not anymore.

    OpenType Features

    In File > Font Info > Features, all features (provided you do not mistype the feature tag, of course) are listed with their proper full plain-English name now, as described on the Microsoft Typography page:

    And again, many small things were improved under the hood. Handling of some features has been improved, including aalt, for instance. Many language- or script-specific automatic feature code snippets have been added and improved. See above for more details.

    Oh, and we managed to improve the automatic generation of the mark positioning features, and thus were able to prevent most cases of subtable overflows. If you can still trigger an overflow with one of your files, we are very interested in taking a look at the file. Bring ’em on.

    Import and Export

    We have completely rephrased the text of what we call the import validation dialog. Yes, the one that appears when you open a font file containing components whose alignment is not explicitly specified, most likely old .glyphs files:

    We hope it is much clearer now. Thank you for everyone who gave us good feedback in the forum, especially Dave, Norbert and Toshi!

    Speaking of which, import validation will now happen on all imported files, including UFO and TTF. Yeah, I know it can be a pretty pesky dialog, but it is necessary for preventing – or fixing – unwanted component shifts, and thus keeping you in control.

    As you can see in the screenshot, the import validation dialog will now indicate the exact layers on which shifts will happen. And, more importantly, it will preselect component shifts that are medium (10+ units) and big (100+ units). Assuming that small shifts are errors in need of correcting, and bigger shifts are more likely to be intentional, you can now go through the dialog really quickly.

    Do we have more import/export improvements? You bet. here’s a quick rundown:

    • Improved copying and pasting outlines between Glyphs and Affinity Designer. If you are a convert, you can finally drop Illustrator now.
    • Glyphs will now happily import many compiled fonts at once. As many as you can throw at it.
    • When you import an existing compiled OpenType font, Glyphs now does a much better job reverse-engineering the feature code for contextual substitutions.
    • Generally, importing OpenType feature code has been improved. Any glitches you encountered previously should now be things of the past.
    • largely improved .designspace file import, especially the import of kerning.
    • Glyphs now both reads ad writes display strings to UFO files. This enables you to keep your sample texts when you have to commit to a UFO workflow.

    Scripting and Extending

    After you press the Install Modules button in Glyphs > Preferences > Addons > Modules, you will now see a checkmark once installation is complete. Better than just waiting for the spinning beachball to stop spinning, eh?

    Oh, if you do Python stuff and have not had a look at recently, please stop by again. Why? The documentation got an update and a little reformatting, all links should work now as expected.

    • We added an Update button to the vanilla warning dialog, so you can update right away, and don’t have to go digging in the Preferences.
    • You can now access GSFont.axes and GSFontMaster.axes.
    • Do you have a plug-in of yours listed in Window > Plugin Manager? You can now insert links in the description texts. HTML and Markdown are supported.
    • Added Variable Font and UFO support to the Python export function: font.export(Format=VARIABLE/UFO) and instance.generate(Format=UFO). Have fun.
    • Improved handling of callbacks in reporter plug-ins.

    … and a few more improvements and bug fixes in the Python wrapper. Thanks to all script and plug-in coders who provide us with valuable feedback!

    Hidden Preferences

    Some cool new geeky stuff can be triggered with a little Python magic:

    Glyphs.defaults["TTPreviewAlsoShowOffCurveIndexes"] = True
    Glyphs.defaults["GSShowVersionNumberInDockIcon"] = True
    Glyphs.defaults["GSFontViewDarkMode"] = False

    And to get rid of them again, either use the same code with False instead of True (and vice versa). Or use the new mekkablue script App > Set Hidden App Preferences. Or, simply delete the defaults, like this:

    del Glyphs.defaults["TTPreviewAlsoShowOffCurveIndexes"]
    del Glyphs.defaults["GSShowVersionNumberInDockIcon"]
    del Glyphs.defaults["GSFontViewDarkMode"]

    But what do these settings do, you ask? Fair enough, here is a quick rundown of what they do:

    • TTPreviewAlsoShowOffCurveIndexes (off by default): shows all TT point indexes, including off-curves. See above.
    • GSShowVersionNumberInDockIcon (off by default): shows the version number in the Dock icon. Useful when you find yourself switching between app versions a lot. I think it compliments GSShowVersionNumberInTitleBar (introduced in 2.5) really well:


    • GSFontViewDarkMode (on by default): if set to False, disables dark mode for the glyph grid in Font view. Useful for those among you who like Mojave Dark Mode, but want to keep all their glyphs black on white. This is what it looks like: Antonia by Typejockeys

    Small Things and Big Thanks

    As always, many small details have been improved, tiny bugs squished, potential causes for rare crashes fixed. Each one of them, by itself, perhaps too small to mention in a separate paragraph, but in total making for a better experience using the software on a daily basis.

    To give you just one example, we improved undoing (Cmd-Z) in many situations, e.g., after Filter > Fix Compatibility, after decomposing nested components, after changing OpenType classes and prefixes in File > Font Info > Features, and after changing zones and stems in File > Font Info > Masters.

    Or here is another one I love, because it helps us spot mistakes much quicker. After entering a URL in one of the respective fields in File > Font Info > Font, Glyphs will validate the entry and display a warning:

    And we cannot state this enough: As much as Glyphs is a small business that puts bread on the table for half a dozen hard-working people, it has also become a community. And yes, that means you, the Glyphs users. Without your insights, suggestions, input, feedback, bug and crash reports, Glyphs would not be what it is today. Therefore, a big thank you for all your contributions, e-mails, personal conversations, and active participations in one of the industry’s most active web forums.

    So, thank you, and keep it coming, please.

    Sample Font in Mojave Dark Mode screenshots: Antonia, an upcoming Typejockeys release.