Custom Smart Filter Query

Hi all :sun_with_face:
I’m working on a typeface that has a stylistic alternate vor every character. For an easier overview I created a smart filter that contains all non-ss01 characters and one that contains all ss01 characters. Now I’m wondering if there’s a way to create a smart filter that contains all characters that don’t have an alternate yet. Basically smart filter A minus smart filter B

Any ideas on how this could be achieved?

Thank yoouuuuuu and hugs
Raoul

That is currently not possible.

Better write a script.

I would if I wasn’t too dumb for that :face_holding_back_tears: I’ll keep you posted on my crappy workaround. Wish me luck!

Paste this into the Macro Window and run it (didn’t test, am writing from mobile):

missing_ss01 = []
for glyph in Font.glyphs:
    if ".ss01" in glyph.name:
        continue
    if glyph.name + ".ss01" in Font.glyphs:
        continue
    missing_ss01.append(glyph.name)

Font.newTab("/" + "/".join(missing_ss01))

This is also possible in a beautiful one-liner, if you prefer:

Font.newTab("/" + "/".join([glyph.name for glyph in [glyph for glyph in Font.glyphs if ".ss01" not in glyph.name and glyph.name + ".ss01" not in Font.glyphs]]))

Hope this helps.

2 Likes

wowie! that works indeed! thank you :^)