When generating an OpenType font that only contains uppercase letters, is there some clever trick to avoid redundant information/data?
1) If one makes the font without glyphs in the lowercase slots, the user will get "missing glyphs" when typing without Caps Lock on - not good.
2) If one copies the uppercase glyphs to the lowercase slots, one have to take care to make the kerning work between the sets - effectively doubling the outline data and quadrupling the kerning data. I don't like this redundancy and would prefer to avoid it. But as I use class-kerning anyway this is probably the solution I'll end up using...
3) One could use the uppercase glyphs as composites in the lowercase slots, but this may perhaps create problems (I don't think I've ever encountered a font with composites in the basic ASCII set - so I guess this is not good...). This would still need 4 times the kerning pairs, but at least the outline data will not be double.
4) In OpenType one could use glyph substitution to map all lowercase input to the uppercase letters. This would still require the lowercase glyphs to be present, but they could just be empty. But what OpenType feature should then be used to make this switch? - it would have to be always-on...
So... have anyone found a clever way to make an uppercase-only OpenType font?
What is your preferred method?