Script to sync Automatic Alignment of components between masters

Background

After turning instance into master using “Instance as Master” option, all the components of created master will have Automatic Alignment turned off, regardless of its state in a masters involved in interpolation. Here’s the script to (re)sync Automatic Alignment for components between selected master and specified master.

Usage

  1. Select the master where Automatic Alignment of components need to be synced with reference master.
  2. Default reference master is “Regular”. If you need to change it, specify the name of the reference master in a script.
  3. Run a script.

Steps the script takes

  • Goes through all the glyphs and checks if they have components.
  • Compares the Automatic Alignment status of each component between the selected master and the reference master. If it’s different, it will be synced.
1 Like

I tried it with one of my fonts and the alignment was correct after “Instance as Master”. Could you send me a file that shows the problem?

Sent on email.
And here’s the screenshot how the automatic alignment of components looks like for me.

Condensed (and any other) master:

Condensed Black master, created with Instance as Master:

There is a bug that disables the alignment. I’m working on it.

2 Likes

Any updates on this? Which version do I need to use to have this fixed? I am currently on 3.3.1 (3343).

if it is not fixed yet, you can also do this:
choose a Master with correct alignment, select all glyphs and run the mekkablue script »sync components across masters«

thanks. but this would mean I would need to find the unaligned glyphs first (which had been aligned in the first place…)

The only thing you need is to know what the master has correctly automatically aligned components. Let’s say, it is Regular, so it is your reference. Then:

Using mekkablue script – you need to select the reference (Regular) master. Run the script. As result, the automatical alignment of components in all the other masters will be synced to components in reference (Regular) master.

Using my script from the first message – you need to select one master where you not sure that components are aligned correctly. And if your reference is not Regular, then specify the reference master name in the line 7 of the script. Run the script. As result, the automatical alignment of components in only the selected master will be synced to the reference master (Regular or whatever you specify in the line 7).

The difference is that my script operates with one master at a time.