I'm posting this as an Answer, even though it is strictly a Comment about the MS Word 2010 part of your question. It is too long to fit in a comment. I've also just added some notes on another approach (at the end of the post).
I would experiment a little with using VBA to create/modify your shortcuts, using a subset of the possible characters to begin with (e.g. perhaps Greek letters and relevant diacritics).
What you would be aiming for (using your notation) would be to have the single autocorrect text \~\'\omega\iotaUD insert the single U+1FA7 character, and so on.
The basic VBA is straightforward -
Autocorrect.Entries.Add Name:="\~\'\omega\iotaUD", Value:=&H1FA7
(you would need a little more to deal with the case where you wanted to replace the definitions). I suppose I would opt to put the character first and the diacritics afterwards, e.g. \omega\~\'\iotaUD, but it would be up to you to define a set of conventions that you could work with.
Using VBA looping, and some information from the Unicode tables it would be fairly easy to create autocorrects for every possible combination, e.g.
"greek letter (both cases)"
"greek letter (both cases)" + \~
"greek letter (both cases)" + \'
"greek letter (both cases)" + \iotaUD
"greek letter (both cases)" + \~ + \'
"greek letter (both cases)" + \~ + \iotaUD
"greek letter (both cases)" + \' + \iotaUD
"greek letter (both cases)" + \~ + \' + \iotaUD
Or you could perhaps narrow this to cover only those letters to which these accents are applicable.
But this immediately raises a number of questions/points, including
- Is there a limit to the number of autocorrects that Word lets can
define?
- Is there a practical limit to the number of autocorrects that Word
lets you define? (e.g. perhaps everything slows down when you have
1000 or 10000)
- The number of character + diacritic combinations is potentially
enormous. Which do you really need?
and perhaps one way of pinning the problem down and reducing the number:
- Do you only want autocorrects for those characters where a composite
exists in the Unicode tables (smaller problem), or
- do you want the autocorrects to insert the composite where one
exists, and the relevant set of decomposed characters where one does
not? (potentially vast problem)
Don't assume from the above that creating a suitable piece of VBA would be easy. Anyone writing such code would have to decide which combinations could be set up using patterns that exist in the Unicode tables, and which would have to be done using "brute force" enumeration. That is why I would start by trying to define a subset of the problem.
Another approach would be to define your "autocorrect" strings, but not actually as autocorrects. The idea would be to type the autocorrects, then press a key that would run a macro that would parse the text you entered and work out which character(s) you wanted to use. With a bit of care, you would be able to enter the strings corresponding to multiple characters so that you only had to press your special key once, rather than for each "complete" character. You would still need to consider some of the points/questions I listed above.