Estou postando isso como uma resposta, mesmo que seja estritamente um Comentário sobre a parte do MS Word 2010 da sua pergunta. É muito longo para caber em um comentário. Eu também adicionei algumas notas em outra abordagem (no final do post).
Eu experimentaria um pouco com o uso do VBA para criar / modificar seus atalhos, usando um subconjunto dos possíveis caracteres (por exemplo, letras gregas e diacríticos relevantes).
O que você estaria mirando (usando sua notação) seria ter o único texto de autocorreção \ ~ \ '\ omega \ iotaUD inserir o caractere U + 1FA7 único, e assim por diante.
O VBA básico é simples -
Autocorrect.Entries.Add Name:="\~\'\omega\iotaUD", Value:=&H1FA7
(você precisaria de um pouco mais para lidar com o caso em que você queria substituir as definições). Eu suponho que eu optaria por colocar o personagem em primeiro lugar e os diacríticos depois, por exemplo \ omega \ ~ \ '\ iotaUD, mas cabe a você definir um conjunto de convenções com as quais você poderia trabalhar.
Usando o loop VBA e algumas informações das tabelas Unicode, seria bastante fácil criar correções automáticas para todas as combinações possíveis, por exemplo,
"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
Ou talvez você possa restringir isso apenas para as letras às quais esses sotaques são aplicáveis.
Mas isso imediatamente levanta várias questões / pontos, incluindo
- Existe um limite para o número de correções automáticas permitidas pelo Word? define?
- Existe um limite prático para o número de correções automáticas que o Word deixa você definir? (por exemplo, talvez tudo desacelere quando você tem 1000 ou 10000)
- O número de combinações de caracteres + diacríticos é potencialmente enorme. Qual você realmente precisa?
e talvez uma maneira de reduzir o problema e reduzir o número:
- Você só deseja autocorreções para os caracteres em que um composto existe nas tabelas Unicode (problema menor) ou
- você deseja que as correções automáticas insiram o composto onde existe, e o conjunto relevante de caracteres decompostos, onde um faz não? (problema potencialmente vasto)
Não presuma do que foi dito acima que criar uma parte adequada do VBA seria fácil. Qualquer um que escrever tal código teria que decidir quais combinações poderiam ser configuradas usando padrões que existem nas tabelas Unicode e quais teriam que ser feitas usando a enumeração de "força bruta". É por isso que eu começaria tentando definir um subconjunto do problema.
Outra abordagem seria definir as cadeias de caracteres "autocorreção", mas não como autocorreções. A ideia seria digitar as correções automáticas, depois pressionar uma tecla que executaria uma macro que analisaria o texto digitado e descobriria qual (is) caractere (s) você desejava usar. Com um pouco de cuidado, você poderia inserir as strings correspondentes a vários caracteres, de modo que você só precisasse pressionar uma tecla especial uma vez, em vez de cada caractere "completo". Você ainda precisa considerar alguns dos pontos / perguntas que listei acima.