I don’t really understand what you are trying to do. You speak about the cpsp feature and also about kerning between upper and lowercase.
There cpsp is not kerning. It adds space to single glyphs.
Can you demonstrate with some screenshots what you are trying to do.
Also not sure why you would want to do this. If all combos get the same value, you can better use the @Uppercase class, which already is all caps, no need to seek out all kerning groups. And then add the same value between all @Uppercase letters, which is exactly what cpsp does by default. I would take that code and adjust the values for each instance with the Replace Feature parameter. That should achieve the same result as adding the same kerning to all cap pairs.
Alright, that makes sense, of course. How do I do that? Sorry for the uninformed question, but I don’t understand where I would write the respective code. I am seeking to add the respective kerning without using the cpsp feature, which is not turned on by default. Am I missing something?
I would add a feature called
kern and add it there. It will be added as a separate lookup. See the Contextual Kerning tutorial for implementation details.
Hi Rainer, I hate to re-bump this thread again, but I just wanted to say a huge thank you for your help. The kern feature is exactly what I was looking for and it all works perfectly now. Thank you so much! May your days be well-hinted and bless you with bug-free interpolations.
Solution, in case anybody is looking for the exact code:
In your Features tab, add the
kern feature. Write
pos @Uppercase 30 @Uppercase; (or whatever else you’d like to add as extra kerning).
Since you probably want to add different kerning per weight, for every instance, add the custom parameter Replace Feature. In it, you write
kern; pos @Uppercase 20 @Uppercase;
(again, adding whatever kerning value you want).