Regular and Italic instances missing from macOS font menus (Variable Font, two files, wght only)

I’m exporting two variable fonts (Roman + Italic) from separate .glyphs files of the same family using the Better VF Export plugin. Both files have only a wght axis.

The problem: In macOS apps like TextEdit and Pages, every instance shows up except Regular and Italic. The font has only two masters (Thin and Black), neither of which is anywhere near a Regular weight. Because the Variable Font Origin is set to the lightest master, the name table ends up with “Extralight” baked into nameID 1, 4, and 17.

I managed to get Regular and Italic to appear by post-processing with fonttools — rebasing the fvar default to wght=400, fixing the name table, and rebuilding the STAT table. All instances now show. However, style linking is still broken:

Regular    → B → Bold (back and forth) ✓
Regular    → I → Extralight Italic → I → Extralight
Italic     → B → Bold Italic (back and forth) ✓
Italic     → I → Extralight
Extralight → B → Bold → B → Regular
Light      → I → Extralight Italic → I → Extralight
Medium     → I → Medium Italic (back and forth) ✓
Bold       → I → Bold Italic (back and forth) ✓

So Bold ↔ Regular and the heavier weights (Medium, Bold, Extrabold) correctly link to their italic counterparts. But the italic button on Regular, Light, and Extralight all collapse to Extralight Italic, and Extralight doesn’t bold to Extrabold as you’d expect.

InDesign and Figma on Mac show all instances correctly, grouped by Roman then Italic.

On Windows in Notepad, all styles appear but without the “Italic” label — each weight name shows up twice (Extralight, Extralight, Light, Light, Regular, Regular, …). The Bold and Italic buttons do work correctly though.

I’ve tried both with and without an ital axis declared in the STAT table of each file. I’ve read through the plugin documentation and searched the forum extensively but can’t crack it.

My question: What is the correct way to set up two variable fonts (Roman + Italic, wght axis only) so that all instances appear in macOS font menus with proper style linking — especially when the VF origin isn’t at a Regular weight? Is there something I should be configuring differently in Glyphs itself so the export is correct without post-processing?


  1. The Italic’s Axis Value for the ital axis should be: ital; 1=Italic. STyle linking should only ever be entered from the normal axis position towards the non-normal, never the other way around.
  2. Don’t use Font Name for variable fonts, but rather variationsPostScriptNamePrefix a.k.a. Variable PostScript Name Prefix. It is the PS Name part before the hyphen, and it must be unique per file, so ASCII only, but no spaces and no hyphens. Glyphs will then correctly calculate the PS Name. The OTVAR Maker script will help you with this.
1 Like

Oh? I can’t do:

MyFontVF-Regular
MyFontVF-Italic

?

I do this and it makes roman and italic instances of a VF appear under the same family name. I haven’t encountered any issues. What’s the reasoning behind having a different prefix per file?