Перекодировка одной из версий нестандартного транслита с помощью RussKey

Инструкции

Как оно работает

Инструкции

RussKey "из коробки" не умеет перекодировать никакой транслит, кроме наиболее общепринятой версии. Но его можно перенастроить. Это делается так:

  1. Ставим RussKey, если ещё не (это можно сделать, зайдя на страницу https://russkey.mozdev.org)

  2. В адресной строке вводим about:config. Появляется окно тонкой настройки параметров браузера.

  3. В строке Filter: вводим "russkey", нажимаем Enter

  4. Теперь перед нами только параметры RussKey. Наводим курсор на параметр "russkey.TranslitMapCharCodes.1", делаем двойной клик. В появившемся окне удаляем текущее значение параметра и вместо него помещаем:

  5. В строку "russkey.TranslitMapRegExpCodes.1" вместо исходного содержимого таким же образом помещаем строку:

  6. Перезапускаем браузер.

Как оно работает

Необязательные подробности. Принципы составления конфигурационных строчек следующие (см. http://russkey.mozdev.org/transliteration-mappings.html).

Строка "russkey.TranslitMapCharCodes.1" содержит коды букв, для которых можно задать однозначное соответствие "латинская-русская". Для поддержки "альтернативного" транслита оттуда надо убрать, например, "х", "ц", "ы" и "з".

Строка "russkey.TranslitMapRegExpCodes.1" содержит регулярные выражения, которыми обрабатывается текст после прямой транслитерации "буква в букву". Она устроена по следующему принципу:

Вначале идёт образец, который необходимо заменить, затем, через запятую, опции регулярного выражения ("g" — глобальный поиск, "i" — игнорирование регистра), затем знак равенства и после него то, на что образец заменяется (десятичный код соответствующего символа в Unicode); разные выражения разделяются дефисами. Так, строка, содержащая перекодирование "zh" в "ж" и "z" в "з", будет выглядеть следующим образом:

zh,g=1078-z,g=1079

Регулярные выражения применяются в том порядке, в котором они следуют в строке, так что выражение для "ж" должно идти раньше выражения для "з".