Substitution between 2 glyphs having unicode?

Is it “bad” to code a calt substitution between a glyph having an unicode value (private area) with another also having another unicode value (also in private area)?

It’s for decorative elements

This is known as a character substitution as opposed to a glyph substitution. Some features are even expected to do that (sups can do it for instance), but the example you cite seems unnecessary. If it is an ornament, why not use ornm (suffix and feature)? What exactly are you trying to do?

I have some special stand-alone swashes that can be combined to letters (10 variants for UC + 12 for LC).
The user will have to pick the ones she/he needs from the glyph panel.
I had to map them as private area because otherwise some strange things happened when copying & pasting text from an Adobe app to another, or changing font name (my font will be splitted into several sub-families, according to its optical sizes).
I need substitutions only because some of these swashes are very similar but intended to be used with UC or LC only (in brief, terminals have slightly different size), or can connect with lowercases with / without stems (n/m/x Versus b/h/l)
I’ve written some substitutions to let the swashes adapt automatically when the user types.

Changing the unicode is not a good idea when the codes have a semantic meaning. That is not the case here so it is not a problem.

Thanks for your help! :slight_smile: I hope you’ll see what’s about soon :wink: