So I have font 1 which uses custom names, as well as ‘Glyphs friendly’ names to match my custom user GlyphData.xml. I have a second font which I want to make match font 1. I create a new list filter based on font 1. As I view font 2, I see lots of glyphs that are “missing” which are probably already there, but just need to have their glyph info updated. However I can’t grab that list of missing characters. The ‘copy’ command does not work in the list filter. I thought I could generate these glyphs and then copy the names, but I get errors saying the Unicodes already exist. Can we get an update to allow copying of the list filter? In lieu of that, any ideas on how I can proceed rather than a lot of laborious manual typing of glyph names?
When you edit the filter, you can copy the contents. Then, cancel out of the edit window.
To edit a filter, either double-click the filter name OR select “Edit a Custom Filter” from the gear icon in the lower left after selecting the filter name.
Hope that helps.
You need to have some matching in place that connects the names from font 1 to the names of font 2.
In Glyphs 2 there is a new feature in the GlyphData file called ‘altNames’. It can hold comma separated glyph names. Add that to your custom glyph data and update glyph info.
And just updating glyph info in font 2 might do the trick, at least for the encoded glyphs.
Lots of these issues I’m having are related to working with legacy data. I can’t just update glyph info on font 2, because it will change other glyphs in ways I don’t want. It will also cause conflicts with some Unicodes. What I want is to grab the names of JUST the glyphs which are missing in my filter list. Opening and copying the entire filter doesn’t help.
Adding the ‘altNames’ is all well and good, but in order to get that list of names to add, I need to perform this copy operation. I think I’m about to just take a screen capture of the list of glyphs to ‘generate’, and then manually re-key them, which seems kinda silly.
Problem solved in a round about way. It required me deleting the Unicodes from a copy of font 2 so I could perform a “Generate glyphs” on the entire list without getting conflicts. Deleting the Unicodes required me to search and destroy on the file directly in a text editor, since apparently the Unicode is read only via the scripting interface.
The python wrapper is only part of the story. You can use the underlying objectC methods.
for l in Font.selectedLayers:
print l.parent.setUnicode_(None)
A bit outdated documentation of the core API can be downloaded here
I’m working on an update.
But editing the file directly is not a bad idea, either.