Используете как предварительно составленные, так и комбинирующие диакритические знаки в Keyman 10?
Я пытаюсь сделать клавиатуру, которая может добавить большое количество диакритических знаков.
Я хотел бы, чтобы он создавал предварительно составленные символы, когда это возможно, но в противном случае добавляю объединяющий диакритический знак как можно лучше.
Структуры, которые я пытался: 1.
store(BaseVowels) 'aeiouAEIOU'
store(Breve) 'ăĕĭŏŭĂĔĬŎŬ'
+ [ CTRL K_9 ] > context use(BreveAbove)
group (BreveAbove)
any(BaseVowels) > index(Breve, 1)
'g' > 'ğ'
'G' > 'Ğ'
NOMATCH > U+0306
2.
store(BaseVowels) 'aeiouAEIOU'
store(Breve) 'ăĕĭŏŭĂĔĬŎŬ'
+ [ CTRL K_9 ] > context use(BreveAbove)
group (BreveAbove)
context > U+0306
any(BaseVowels) > index(Breve, 1)
U+0306 'g' > 'ğ'
U+0306 'G' > 'Ğ'
3.
store(BaseVowels) 'aeiouAEIOU'
store(Breve) 'ăĕĭŏŭĂĔĬŎŬ'
store(VirtualKeys) 'Has Virtual Key Combinations'
store(Combining) 'Has Combing Diacritics'
+ [ CTRL K_9 ] > context use(BreveAbove)
group (BreveAbove)
any(BaseVowels) > index(Breve, 1)
'g' > 'ğ'
'G' > 'Ğ'
NOMATCH > context use(CombiningDiacritics)
group (CombiningDiacritics)
any(VirtualKeys) > index(Combining, 1)
Очевидно, они не работают. "nomatch" не предназначен для вывода и не передает контекст. "Контекст" не может быть использован таким образом. И виртуальный ключ не будет первым символом в контексте, так что нет. 3 не работает несколькими способами.
Но есть ли команды, которые я мог бы использовать? Или другая структура? Операторы "If" предназначены только для переменных констант в Keyman.
Я потерялся.