Instance management suggestion

Simple idea: I would find it helpful to see whether an instance is checked as active in the list of instances, rather than having to click on each instance to check its status. This could be done by moving the ‘is active’ checkbox onto the instance name in the list.

Then it would also be nice to have a ‘check all’ / ‘uncheck all’ option. Especially when I’m testing fonts, I want to only generate a subset of instances, so being able to fairly quickly edit the set of active instances would be helpful.

[Another way to manage the latter use case would be the ability to define instance sets.]

1 Like

You can check and uncheck all simply by selecting all instances and clicking on the checkbox. Same is true for all other controls.

Status of instance is shown with the sample letter. Inactive instances are greyed out. Is this not the case for you?

One of the things I’m enjoying about exploring Glyphs is realising that you’ve often thought of the things I have thought of, just not in the same way.

Still think it would be useful to be able to quickly click checkboxes up and down the list rather than having to select instance, move mouse to checkbox, move back, select another instance, etc.

Context here is that I have 270 instances. :grimacing:

Cmd-A. Click one checkbox. Done.

Yes, checking all or checking none is easy. What I’d like is a minimum effort way to check some.

What I do in that case is to fist select all, then cmd+click the one I need (to deselect them) abd then uncheck the active-box for the remaining ones. This is only ver few actions more.

1 Like

You can also select one instance. Then, Shift-click another to select the ones in between the previous selection and including the one you selected. Then, use Command-click to add others to the selection and maybe do another Shift-click to select a range. Hope that makes sense.

Is the number so high because these split up into different file types, like WOFF, CFF and TT? If so, I would consider using .glyphsProject files. You can copy and paste instances between the Font Info window and the Project window.

It’s high because 3 axes: one with nine named instances, one with five named instances, and one with six named instances. So 270 i just the outcome of interaction of those axes. Some of the test environments within which we need to examine the design are not variable font savvy, so a lot of static instances need to get generated as test sets, but in some cases we only want to test a portion of the design space.

I’ll take a look at the project file mechanism to see if this might be useful in this regard. Thanks, Rainer.

Idea: instance selection find/select tool

Thinking more about ways to make working with large numbers of instances easier, it occurs to me that having a tool that would enable searching in instance names and data would be useful, with the capability to e.g select all the instances whose names contain ‘ExtraLight’, or select all the instances whose interpolation Weight value is 315.

2 Likes

Badass project, respect, John. I think this is a good idea, and I’ll file it as feature request. (No guarantees at this moment though, still need to discuss internally.)

if len(masterFont.instances) > 0:
	for instance in masterFont.instances:
		if "ExtraLight" in instance.name:
			instance.active = True
		else:
			instance.active = False

You probably do not need the if line. The loop does not execute if the collection is empty.

You don’t need to check if there are any instances. It will just not do anything anyway.
And just as a small exercise:

for instance in masterFont.instances:
	instance.active = "ExtraLight" in instance.name

And if you run that in the Macro panel, you there are two preset variables: Font and Layer. They contain the current font and current layer.

1 Like

I guess my coding style shows that I learned programming with languages where you learn the hard way to be always certain that the data you look at really exists.

1 Like

And in most python scripts that is a very valid way to do things.

I do have an instance management suggestion too.

If you select an instance, then you can edit its custom parameters. If you select 2 or more, then the parameter field is blank. Would it not be nice if I could see and edit those custom parameters that the selected instances have in common. For example “Keep Glyph” lists.

1 Like

Being able to edit custom parameters for more than one selected instance is on the list for some time. And we are working to fix it right now.