Glyphs, my Beloved

Glyphs and I have become good friends over the past few years. I started using it in spring 2020. Just a month before I tried to design a typeface in Illustrator and FontForge. And while that got me a font-file as a result, I really struggled creating letters with those two programs.

When I finally switched to Glyphs (because it was mandatory for the type design course I was visiting) it all became so much easier. Since then Glyphs became a steady companion. I used it at home—working on fonts while listening to the online-seminars—and while traveling with the often belated german public transport (More time to work on the designs!).

The program is pretty complex and I only know a fraction of what it can do. But, I learned a thing or two. Some of those things are pretty obscure and niche. But since figuring those out often took time and research, I thought I could share them here.

Glyphs Support

The first thing I want to mention is the excellent documentation and forum of glyphsapp.com. The documentation provides great tutorials to get you started and improve your design process. The devs are very active on the forum. I asked several pretty niche questions and they were always really quick to help. And they really know their stuff! And they are also really friendly. So, I recommend the forums if you ever run into an issue with the app.

Testing Fonts

While working on a typeface you often need to export new versions to test them in your design application of choice. If you just install the font the regular way you will run into a problem. Fonts with the same name will get cached by the system. This means, that font updates might not show up immediately but only after a while. This is of course not really helpful if you want to test your designs. On the Glyphs website they describe how to find the Adobe Fonts folder. This one is pretty handy when you’re using Adobe. Any font in this folder will work within (most) of the Adobe Suite. And since it is not directly installed, any update to the file will show up instantly in your designs. It works basically like the fonts folder in a packaged InDesign file.

Since I stopped using Adobe, I couldn’t rely on this approach anymore. I still wanted to see my font updates directly in my designs. There are several ways to achieve this though. I switched to the Affinity Suite for my designing layouts. They process font access differently. Not entirely sure how, but it doesn’t work with just pasting a folder named “Fonts” inside the project folder. I found two ways to work around this issue. First is a script by Nico Hagenburger. It renames the font automatically when exporting and deletes the old font-file. This mitigates the cache issue the native font administration has.

The other possibility is to use an app called fontBase. It is free software that temporary installs fonts by simply (de)activating them in the app. You can even set up folders for the app to track, to keep the fonts you’re using in a centralized place. What I like about both alternatives is, that your updated font files are available for the whole system. Meaning you can use your design for pages, numbers, mail, … you name it. I personally prefer fontBase, as I find it easier and faster for managing fonts. I’ve set up a font folder that I not only export my type designs to, but also drag any font into that I need for a project. I then just need to activate them in fontBase (as it updates what files are in the folder constantly). This way I don’t need to install fonts to use them and I got a nice tool at my hands to keep my font collection managable.

Export to Folder

For the most time I just export my font directly to the font folder mentioned before. But since I started this foundry, this approach reached its limits. When I upload a font here, it contains .otf, .ttf, and .woff2 files. And especially with a super family like “Fritzi” and its more than dozen weights this becomes very tedious. You see, whenever I make small changes I would need to export all the fonts into one folder. From there I need to move the three corresponding files to subfolders for each weight, and click “yes” for overwriting the existing files. Very tedious, indeed. It became such a burden, that I started dreading the need to update the files.

So, to the forums I went. And after some back and forth I was handed a piece of information/code that was able to solve this pain in one fell-swoop. In the font info pop-up just add “Export Folder” under the custom parameters. Now the customizable part, that is a bit tricky, as I wasn’t able to find a documentation on the variables. But to be fair: They are exactly the same names as the item description. Of course you can just add a fixed folder name. But we are here for something dynamic! For that put each folder variable inside three braces. First word is always lowercase. If there is a second word, add it without a space and make the first letter uppercase. In my case I wanted to export like this: Font Family › Weight Class/Axis. The code to achieve this looked like this: {{{familyName}}} {{{name}}}

From there you just select the parent folder on export and it creates all the fitting subfolders. If the subfolder already exists, it puts the matching weight in there. So, if you have already prepared folders (in my case with a EULA PDF) they will not get deleted. What is also great about this setup is, that you can just untick the checkbox during development to exported everything into one folder—just like you’re used to.

In case it doesn’t work you might have to switch on “Show cutting edge versions” under Glyphs › Settings › Updates. But I think it is already available in the latest stable version. If you’re interested in the whole conversation this is the forum thread.

Exporting Trial and Variable Fonts

The first few times I created a trial font I made a copy, deleted all glyphs I didn’t want to provide, clean up the font-feature tab (in part by hand, because of the now the missing glyphs), and exported everything. For “Fritzi” I did that for for four weights. It was no fun and it was not scalable. Because whenever I made updates to the font, I needed to repeat this process for the trial font. So off to the forum I went. There I learned about a number of neath little features. Namely: “Remove Glyphs,” “Export Glyphs,” and “Remove Features.” You can find those under Exports › Custom Parameters. Then you need to specify a list of glyphs or features. I think every line gets counted as a glyph. Which means adding all glyphs in one line wont work. On the flip-side this means you can type out specific glyph names, like “a.ss01.” Numbers need to be written as their glyph name as well. Meaning “zero, one, two, ….” I use those features in two ways: First for setting up additional instances for trial versions, second to test variable fonts. While developing variable fonts you can’t test them, if not all glyphs over every master align. If you would added “ẞ” to your Regular weight, but not yet to your Light one, you get an error message that prevents the variable font from being exported. For these cases I work with “Remove Glyphs”—to exclude the letters that cause issues. For the trial fonts I define the glyphs I want to include via “Export Glyphs.”

write kern table

add weigth through exports (axes parameter: weight), export, import back for starting point for a new weight