I used an old vfb as the basis for a new typeface; the old typeface had small caps, the new one doesn't. I assume that's why, when I add standard OT feature code and try to compile, I get an error message with a long string of "missing" .sc glyphs and, at the end, this line:
[FATAL] invalid token (text was " ")
I long ago made a fresh encoding file for the font which contains no small caps; I've updated and reloaded this many times. Additionally, there are other sets of glyphs (for instance, oldstyle figures) that existed in the old typeface and don't in the new project, and FL isn't complaining that
they're missing.
I've got a client waiting for this. Many thanks in advance to anyone who can help me get it unstuck.
Comments
Thanks, James and Pablo.
James, I followed your instructions and was able to create new OT features in the clean new vfb with no difficulty. But all the composites in the new vfb I made are decomposed, which is a problem. Am I doing this wrong?
Jackson: Sorry to be dense, but I'm not sure what you mean by 'groups'. Kerning/metrics/OT classes? Shape groups? I'm not using shape groups, that I know of.
And thank you: your suggestion worked. I'd previously updated the kerning classes and checked them for ringers, but there was still one monster OT class left, and I guess it had funny stuff in it. Dumping everything worked.
FWIW, everyone, I found that I could fix this problem by simply running Clean Up Classes in the Metrics panel. Less drastic than dumping your classes, and equally effective. Though the real takeaway seems to be: don't build new fonts on old vfbs. (And maybe: don't work in FontLab.)
1. Open old font.
2. Create new (empty) font.
3. In old font, find and select all glyphs with 0 components.
4. Copy.
5. Switch to new font, right-click in the font window and choose "Append Glyphs" from the popup menu.
6. Switch back to old font, find and select all glyphs with more than 0 components.
7. Repeat steps 4 and 5.
You should now have a new font with the composites intact. (I tested this on a font containing 1062 glyphs, 633 of them composites, and it all worked.)
Anyway, glad you were able to solve the problem without resorting to this.