Очередная латиница для русского языка

от автора

На Хабре уже были подобные игры с системами письма (например, вот и вот), поэтому не вижу проблемы, чтобы добавить очередной вариант, коих и так уже много.

Критерии

Мои хотелки для этой игры:

  • Максимум латинских букв

  • Минимум кириллических

  • Минимум диакритических знаков

  • Минимум диграфов и триграфов или ещё чего похуже

Соответствия — что получилось

Тут просто таблица с соответствиями кириллицы и моей поделки. Соответствие получилось один к одному, что должно упрощать использование. Часть букв заменить вообще не получилось без жертв, поэтому я их оставил как есть.

В группу «+» вошли те буквы, которые являются чисто латинскими, либо образованы путём добавления к латинской букве какого-либо диакритического знака. В группу «-» вошли те, которые заменить не получилось. Справа подсчитаны чисто латинские буквы из базового набора из 26 букв.

а = a   |   +1    1б = b   |   +2    2в = v   |   +3    3г = g   |   +4    4д = d   |   +5    5е = e   |   +6    6ё = ё   |   +7ж = j   |   +8    7з = z   |   +9    8и = i   |   +10   9й = ĭ   |   +11к = k   |   +12   10л = l   |   +13   11м = m   |   +14   12н = n   |   +15   13о = o   |   +16   14п = p   |   +17   15р = r   |   +18   16с = s   |   +19   17т = t   |   +20   18у = u   |   +21   19ф = f   |   +22   20х = h   |   +23   21ц = c   |   +24   22ч = ч   |   -1ш = ш   |   -2щ = x   |   +25   23ъ = ъ   |   -3ы = y   |   +26   24ь = ь   |   -4э = э   |   -5ю = ю   |   -6я = я   |   -7Исключения:1-q, 2-w

В итоге Q и W не вошли в состав вообще, так как Q по сути дублирует K, а звука для W в русском вообще нет.

Самыми странными заменами получились: ё = ё, й = ĭ, щ = x

Думаю, с диакритическими знаками всё должно быть понятно — они просто остались на своих же местах в той же форме, то есть это умлаут и кратка (бревис).

А вот щ = x надо дополнительно прояснить: оно получилось близким к некоторым китайским словам из английского (то есть «Xiaomi», «Xi Jinping» и прочие довольно редкие слова с иксом), а также (вот тут уже помогали LLM, поисковики и несколько видео с Ютуба по произношениям) к пиньиню и языкам Пиренейского полуострова, то есть это испанский, португальский и другие языки с меньшим числом носителей, к мальтийскому языку (географически — островная страна южнее Сицилии и Италии). Икс оказался очень многозначным.

В целом получилось примерно 80% латиницы (с учётом двух букв с диакритикой) и 20% кириллицы.

Примеры и сравнения

Для примера взял «Войну и мир» в формате .fb2 (текстовый XML-подобный формат для книг) с Флибусты и прогнал через скрипт для замены букв.

Python
mapping = {    'а': 'a',    'б': 'b',    'в': 'v',    'г': 'g',    'д': 'd',    'е': 'e',    'ё': 'ё',    'ж': 'j',    'з': 'z',    'и': 'i',    'й': 'ĭ',    'к': 'k',    'л': 'l',    'м': 'm',    'н': 'n',    'о': 'o',    'п': 'p',    'р': 'r',    'с': 's',    'т': 't',    'у': 'u',    'ф': 'f',    'х': 'h',    'ц': 'c',    'ч': 'ч',    'ш': 'ш',    'щ': 'x',    'ъ': 'ъ',    'ы': 'y',    'ь': 'ь',    'э': 'э',    'ю': 'ю',    'я': 'я',}mapping.update({    k.upper(): v.upper()    for k, v in mapping.items()})def translit(text):    return ''.join(mapping.get(ch, ch) for ch in text)with open('input.txt', 'r', encoding='utf-8') as f:    text = f.read()result = translit(text)with open('output.txt', 'w', encoding='utf-8') as f:    f.write(result)

И вот начала одного из томов, которые плюс-минус одинаково расположены, так как вот эти заголовки постоянно едут и не начинаются с начала страниц (видимо, проблема самого файла книги) даже в оригинале.

Кириллица | "Химерица"-гибрид

Кириллица | «Химерица»-гибрид

Тихий ужас, но, возможно, специально разработанный шрифт с оптимизацией под такой гибрид мог бы чуть-чуть улучшить восприятие, особенно по части точек и диакритики над ĭ, i, j.

По занимаемому числу страниц вышло 1196 в оригинале и 1103 в изменённой версии. Процентное изменение, если честно, вообще не впечатляет.

\frac{1103}{1196}\cdot100\% \approx 92.22\%

Но разница в почти 100 страниц чисто на словах звучит не так уж и плохо. Правда, неоптимизированный шрифт немного портит картинку, всё же для чистоты правильнее было бы добавить кернинг, чтобы выборочно поправить межбуквенные расстояния, которые местами не самые естественные из-за смешивания двух принципиально разных алфавитов, и прочие типографские красивости вроде лигатур (мне тут видится убирание точки над i, чтобы выглядело попроще в немоноширинном шрифте), но это уже чересчур…

По занимаемому месту на диске вышло 13.8 MB и 11.8 MB ввиду кодировки UTF-8, в которой латиница кодируется одним байтом, а кириллица кодируется двумя.

И вот ещё примеры панграм со всеми буквами обоих алфавитов в разных шрифтах:

И для шрифта Хабра:

  • Съешь же ещё этих мягких французских булок, да выпей чаю.

  • Sъeшь je exё эtih mяgkih francuzskih bulok, da vypeĭ чaю.

На этом всё.

Вот кому-то делать не…

ссылка на оригинал статьи https://habr.com/ru/articles/1036964/