Почему こんにちは — «конничива», а не «конничиха»: три ловушки транслитерации японского
Перевести японскую азбуку в кириллицу кажется простой задачей: берёшь таблицу «знак → слог» по системе Поливанова и заменяешь посимвольно. Такой конвертер легко написать за вечер, и он ошибётся уже на первом слове, которое знают все, — на приветствии. Разберём три ловушки на примере японских приветствий.
Наивная версия
const KANA = { こ: 'ко', ん: 'н', に: 'ни', ち: 'ти', は: 'ха', ば: 'ба', /* … */ }; const naive = kana => [...kana].map(ch => KANA[ch] ?? ch).join(''); naive('こんにちは'); // 'коннитиха' naive('こんばんは'); // 'конбанха' Обе строки неправильные. По Поливанову правильно «коннитива» и «комбанва» (в обиходе первое чаще пишут как «конничива» — к этому вернёмся ниже).
Ловушка 1: は как частица читается «ва»
こんにちは исторически — это 今日は, «что касается сегодняшнего дня…»: начало фразы, от которой осталось только приветствие. Последний は здесь — тематическая частица, а частица は всегда читается «ва». То же с へ (частица направления читается «э») и を («о»).
Проблема в том, что по одной кане частицу не отличить от обычного слога: は в はし (хаси, палочки) читается «ха». Для отдельных устойчивых фраз хватает словаря исключений, а для произвольного текста нужен морфологический анализатор — например, kuromoji.js, — который размечает は как частицу (助詞).
Ловушка 2: ん перед б, п, м — это «м»
В японском ん уподобляется следующему согласному, и в кириллической записи это отражают: こんばんは — «комбанва», せんぱい — «сэмпай», しんぶん — «симбун». Это правило, к счастью, однозначное и делается регуляркой: после посимвольной замены «н» перед «м», «б», «п» может появиться только из ん.
Ловушка 3: долгие гласные и редуцированное «у»
おはよう — это «охайо:», с долгим «о», а не «охайоу». А в ございます и です по Поливанову пишут «годзаимасу», «дэсу», хотя в речи «у» почти не слышно — говорят «годзаимас», «дэс». Сюда же относится вечный спор «ти или чи»: по Поливанову ち — «ти», и строгая запись приветствия — «коннитива», но в обиходе привычнее «конничива». Для учебного приложения стоит решить заранее, что вы показываете: строгую систему или привычное написание и звучание — и придерживаться этого везде.
Версия получше
// Устойчивые фразы — словарём: частицу は по кане не распознать const PHRASES = { 'こんにちは': 'коннитива', 'こんばんは': 'комбанва', }; function toCyrillic(kana) { if (PHRASES[kana]) return PHRASES[kana]; return naive(kana).replace(/н(?=[мбп])/g, 'м'); // ん перед м/б/п } Таблица для naive должна быть полной поливановской: ち — «ти», し — «си», つ — «цу», じ — «дзи», а у слогов с маленькими ゃゅょ свои значения. Это большая таблица, но она хотя бы механическая — в отличие от частиц.
Итог
- Посимвольная таблица не знает, где в тексте частица: は, へ, を в роли частиц читаются «ва», «э», «о».
- ん перед б, п, м пишется как «м» — это правило легко автоматизировать.
- Долгие гласные и редукцию «у» нужно обрабатывать осознанно, а не случайно.
Если вы не пишете конвертер, а просто учите приветствия, их удобнее слушать, чем читать: таблица с чтением и аудио собрана в разделе здравствуйте по-японски на Japanese Zen.