Я хочу написать Translit.net, но на автогорячую клавишу. Так что я успешно сделал часть, где у меня есть только одна буква:
:*:a::а
:*:b::б
:*:v::в
:*:g::г
:*:d::д
...
Но теперь у меня проблема с переводом shh в щ и другими переводами «два в один». Когда я начинаю печатать шш, я получаю схх обратно, но я хочу получить щ. Что я мог сделать?
Моя текущая идея: когда я нажимаю клавишу, она должна записывать букву и добавлять непереведенную букву в массив из 3 элементов и проверять, создают ли элементы массива shh ,ch , sh или любая другая комбинация, превышающая единицу. Тогда я мог бы удалить последние 3 или 2 набранные буквы и отправить русское письмо, что мне нужно. Может кто знает более простой способ. Я хочу, чтобы мой скрипт работал точно так же, как на той странице, которую я опубликовал. Мне бы тоже помогло решение на C или C# вместо AutoHotkey.