Feature idea: all-master actions

I really like how Glyphs treats the masters independently, as opposed to FL, where most things are strictly linked. However, sometimes I find it would be handy to use certain functions in an all-master fashion, i.e. applying an editing step to all masters.

Some things I can think of:

• All-master copy & paste (like in FL). Would be handy when assembling glyphs from existing contour elements. If single master is all-master-pasted, multiply it. If multiple masters are single-master-pasted, ignore all but the first.

• Add component to all masters. Almost everytime I add a component to a glyph I want to do that in all masters. This could be a checkbox (which should be on by defailt imho).

• Setting sidebearing dependencies. Now that they are master-independent (which is good), I find it a bit tedious to set them in all masters when they are the same. Maybe with a special syntax such as ==n instead of =n.

• Adding and removing nodes. Typically, when your masters are alreasy compatible, you would want to add or remove nodes in all masters, obviously, to maintain compatibility. In UI terms, this could be a special command (such as a modifier key when adding or removing nodes) or, even better, some kind of “compatibility lock” that would link the nodes when activated.

• Scaling or Transformations etc might be handy (via checkbox).

These are just some ideas based on what I noticed while working on my projects, maybe there are other functions that should be all-masterized?

The idea about treating the current master exclusively is that nothing should happen without the user being able to see it.

Some of the things you request can be done with simple Python scripts. Perhaps you want to look into Copy Layer to Layer.py and Fill up empty Layers.py in my GitHub repository. Look in the Masters subfolder:

https://github.com/mekkablue/Glyphs-Scripts

BTW: You can simply copy/paste components between masters, like Cmd-1-A-C, then Cmd-2-V, 3-V, 4-V etc.

The fill up empty layers script doesn’t copy over metrics though? is that possible?

Edit: I was trying to duplicate a master to then edit from but I found a workaround instead, where I

  1. Duplicated the .glyphs file
  2. Delete all masters except the the one I want to duplicate
  3. Then went back to my working file and "Add"ed the masters from the duplicated .glyphs file.

I have another, but related, problem with multiple master editing: When I try to recreate a Bold letter from existing Bold “body parts”, they will often no longer be associated with the correct parts in the Regular weight. Correct Path Direction doesn’t help because it’s the order of the pieces, rather than the order of the nodes, which causes the mismatch.

Perhaps “Correct Path Direction” could sort the different paths of a glyphs into canonical order too, as it does the nodes within each path?

I am having some ideas regarding this also.

What about two checkboxes in Preferences:

  1. Treat masters individually (Glyphs)
  2. Treat master as linked glyphs (FontLab)

Possible to switch on and off anytime.

Just an idea.

There where some actions that would change all masters. It was confusing because you could not see the changes made the the other masters so I removed it.

It actually does this. It might not work if you have a lot pieces that vary in size. But in most cases it works. You have to run the command for all masters...

I know this conversation starts some time ago… but the feature for multilayer editing would still be great.

Im looking for:
–All-master copy & paste / copy & replace
–All-master Transformation and Scaling

Is there a possibility with the new version or some new scripts besides the Mekkablue-Masters?

The transformation panel only works on the current, but bounding box transformations (moving and scaling) do work on all active layers (eye symbol in the Layers palette) with the Select All Layers tool.