|
Professor Seleznov
|
На Хабре уже были подобные игры с системами письма (например, вот и вот), поэтому не вижу проблемы, чтобы добавить очередной вариант, коих и так уже много. Критерии Мои хотелки для этой игры:
- Максимум латинских букв
- Минимум кириллических
- Минимум диакритических знаков
- Минимум диграфов и триграфов или ещё чего похуже
Соответствия - что получилось Тут просто таблица с соответствиями кириллицы и моей поделки. Соответствие получилось один к одному, что должно упрощать использование. Часть букв заменить вообще не получилось без жертв, поэтому я их оставил как есть. В группу "+" вошли те буквы, которые являются чисто латинскими, либо образованы путём добавления к латинской букве какого-либо диакритического знака. В группу "-" вошли те, которые заменить не получилось. Справа подсчитаны чисто латинские буквы из базового набора из 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 в изменённой версии. Процентное изменение, если честно, вообще не впечатляет.

Но разница в почти 100 страниц чисто на словах звучит не так уж и плохо. Правда, неоптимизированный шрифт немного портит картинку, всё же для чистоты правильнее было бы добавить кернинг, чтобы выборочно поправить межбуквенные расстояния, которые местами не самые естественные из-за смешивания двух принципиально разных алфавитов, и прочие типографские красивости вроде лигатур (мне тут видится убирание точки над i, чтобы iĭ выглядело попроще в немоноширинном шрифте), но это уже чересчур... По занимаемому месту на диске вышло 13.8 MB и 11.8 MB ввиду кодировки UTF-8, в которой латиница кодируется одним байтом, а кириллица кодируется двумя. И вот ещё примеры панграм со всеми буквами обоих алфавитов в разных шрифтах:
 И для шрифта Хабра:
- Съешь же ещё этих мягких французских булок, да выпей чаю.
- Sъeшь je exё эtih mяgkih francuzskih bulok, da vypeĭ чaю.
На этом всё.
-Источник
|