Making kerning the same for .001, .002 etc. versions

So, I made a font that works great. Then I made another font, that is the ‘italic’ version of that font.

They both work great, except for one issue. The italic version is much more complex. And I have a couple of issues to sort out:

1) Metrics
This italic version has 123 glyhs. So, changing them individually will be a pain!
I copied and pasted them from regular version. Most take their LSB and RSB from standard reference glyphs. I then added some components but do not want to change the original spacing. This means they are now spaced perfectly, but all have the ‘!’ sign. Doing ‘update metrics’ would absolutely ruin the spacing, making the spacing too much. How can I make their current values become fixed as they are? Thereby eliminating the danger of any accidental metric updating?

2) Kerning
So, some kerning issues…
First to explain what I did. In regular version, some glyphs have .ss01 versions. So also in italic version. But I needed to make italic version do some fancy tricks, on regular and .ss01 glyphs alike. So to perform this different kind of operation, I made .001, .002, and .003 versions of all glyphs. Then I made those sets into classes. Then I made code in calt so it knows when to use which class.

Now, I later saw on the calt tutorials that it says to use .ss01 etc. - it doesn’t seem to mention you can do this also with .001 etc. It does work great actually! But, this might be the root of my kerning issues? The problem is, the .001 etc. versions don’t retain their kerning!

For example, say for AB, B kerns 100. But B.001 doesn’t have any kern to A, nor to A.001 etc. - this is bad. What I want is the B.001, B.002, and B.003 to all kern to A, A.001, A.002, and A.003 in exactly the same way.

That is to say, I want all versions of B to kern to all version of A in the same way that B kerns to A.

How can I do this?

Many thanks!

Please read the Kerning tutorial. What you want is called group kerning.

1 Like

If you don’t like the metrics updates, you should remove the metrics keys.
But if you set a proper italic angle, the metrics keys might work again.

And next time you start with a italic from the upright, duplicate the whole .glyphs file, change the file and family name and start working. Or use Past me special (Edit menu > hold down the option key > Paste special.

1 Like

Thanks Mekkablue. I have indeed been using group kerning. For example, A is kerning group A, and many are in that group. The problem is, I have 123 glyphs and it would be a pain to go through each one manually to add all these .001 etc. versions to the groups; and potentially miss some, etc.

If I have to do that, sure, I will. I just thought there might be another way to transfer those attributes. Or perhaps even a little code I could write perhaps? Something that would convey this kind of meaning:
Make kerning treat all .001, .002 etc. versions identically as to default version of their glyphs.

Thanks GeorgSeifert! How do I do that? And will that preserve the current settings? Here’s an example of the kind of situation I have:
57 !

I do not use any italic angle. I also do not use glyphs like A, B etc. I use things like A and B in examples I wrote here to keep things simple for the purpose of smooth communication, but actually my font is non-Western and I am using italic to do something quite different than it was designed for. It makes the input system a lot easier, giving easy access to another variable.

Ah. Yes in fact I did do that. Though I also created some more glyphs later in the regular version, and simply copied and pasted them into the new one before making the appropriate alterations to the glyphs.

What is the difference in what happens in this case, paste vs. paste special?

Thanks very much guys!

You only need groups for glyphs that should share the kerning. So select all that should have the same kerning in font view and edit the groups in the Info box in the lower left.

Select all glyphs in font view and add a space character, hit enter, and remove the space again. That should remove the keys for all selected glyphs.

(123 glyphs is a rather low number for a font :wink: Most latin fonts have 3 or 4 times the glyphs and other languages easily reach 2000–30.000)

1 Like

OK I’ll try to do this manually as you recommend.

Does ‘add a space character’ mean add a new glyph, which would be a space? I have two already so that would be space.003 - is that ok?


It means, press the space bar to overwrite what is in the field.