We need a modifier to generate valid uids
With current modifiers it is quite hard to write a macro that will generate a valid uid from a random name.
The modifier a will remove non-ascii characters but not spaces and quotes.
The idea is to add a «mode» parameter to the a modifier, defaulting to ascii, and with an alternate uid mode, which removes everything that is not allowed in an uid, depending on strict mode configuration.
It should remove spaces, quotes, accents, and convert to lowercase as well, so that only one modifier is needed for simple uid generation.
%a[uid]|sn% instead of %alp|sn%