Skip to main content

Translit russian cyrillic and slugify phrases

Project description

Латинизация русской кириллицы

Используется следующее соответствие:

  • аa;
  • бb;
  • вv;
  • гg;
  • дd;
  • еye, если йотирована и стоит после разделительных знаков;
  • еe, во всех остальных случаях;
  • ёyo, если йотирована (в начале слов, после гласных и разделительных знаков);
  • ёo, если не йотирована и стоит после непарных твердых согласных;
  • ёho, во всех остальных случаях;
  • жj;
  • зz;
  • иhi, если стоит после э (чтобы отличить от ы);
  • иi, во всех остальных случаях;
  • йy;
  • кk;
  • лl;
  • мm;
  • нn;
  • оo;
  • пp;
  • рr;
  • сs;
  • тt;
  • уu;
  • фf;
  • хx;
  • цc;
  • чch;
  • шw;
  • щwh;
  • ъq, если стоит перед йотированными гласными, кроме е (тогда ъе переходит в yq) или й, в других случаях не требуется;
  • ыi, если стоит после непарной твердой согласной;
  • ыqi, во всех остальных случаях;
  • ьh, если согласная перед ней требует смягчения, которого бы не было без неё (за ней не стоит латинская y или смягчающие i, e);
  • эqe, если стоит перед йотированными гласными или й;
  • эe, если следует за непарной твердой согласной;
  • эq, во всех остальных случаях;
  • юyu, если йотирована (в начале слов, после гласных и разделительных знаков);
  • юu, если не йотирована и при этом стоит после непарных твердых согласных;
  • юhu, во всех остальных случаях;
  • яya, если йотирована (в начале слов, после гласных и разделительных знаков);
  • яa, если не йотирована и стоит после непарных твердых согласных;
  • яha, во всех остальных случаях.

Хотя соответствие алгоритмическое, но в некоторых случаях их следует применять фонематически, применяя следующие правила:

  • Буква y смягчает предыдущую согласную. В таких случаях, если стоит разделительный ъ, то он обозначается q перед y. В остальных случаях смягчение обозначается на письме либо буквой h, либо следующей за ней смягчающей гласной e или i. Если, хотя стоит разделяющий ъ, орфоэпикой русского языка допускается смягченное произношение как в объём, то возможно опускание q.
  • Буквосочетание ьо после л или н, встречающееся в заимствованных словах, которое произносится с йотирование передается как yo (см. предыдущее правило).
  • Если на письме в заимствованных словах предполагается смягчение согласной, которое не происходит, это можно отражать отходом при латинизации от кириллического написания. Но, в основном, рекомендуется сохранять буквенное соответствие с кириллическим написанием, так как часто одной из норм является смягченное произношение. Например, допускаются два варианта произношения: со смягченной согласной перед е и с несмягчённой в слове бактерицидный.
  • В словах веешь, смеешь, вошь и подобных, там где мягкий знак не несёт орфоэпической функции он не транслитерируется, иначе проставление h меняло бы букву, например, с ш (w) на щ (wh).
  • В словах с ъ на конце, имитирующих старую орфографию, твёрдый знак опускается.

Примеры:

  • авдотья - avdotya;
  • отъявленный - otqyavlennqiy;
  • бактерицидный - baktericidnqiy;
  • вьюга - vyuga;
  • юг - yug;
  • эра - qra;
  • цирк - cirk;
  • жюри - juri;
  • щебетать - whebetath;
  • парашют - parawut;
  • аллофон - allofon;
  • съезд - syqzd;
  • метр - metr;
  • мэтр - mqtr;
  • лук - luk;
  • люк - lhuk;
  • клык - klqik;
  • клик - klik;
  • клён - klhon;
  • клон - klon;
  • раса - rasa;
  • ряса - rhasa;
  • пот - pot;
  • под - pod;
  • топ - top;
  • топь - toph;
  • йод - yod;
  • яд - yad;
  • подыграть - podqigrath;
  • вожжи - vojji;
  • жужжать - jujjath;
  • объём - obyom;
  • выемка - vqiemka;
  • гальюн - galyun;
  • веет - veet;
  • веешь - veew;
  • епархия - yeparxiya;
  • ералаш - eralaw;
  • красивые - krasivqie;
  • коммерсантъ - kommersant;
  • тэер - tqeer;
  • гэй - gqey;
  • МЭИ - MQHI.

Примеры использования кода:

При латинизации выполняется нормализация юникода, делать её вручную не нужно. См. пример 2.

from ayum.translit import to_latin

# 1
print(to_latin('Объёмом 5 литров')) # prints 'Оbyomom 5 litrov'

# 2
print(to_latin('\u0435\u0308')) # prints 'yo'
print(to_latin('\u0451'))       # prints 'yo'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

translit_ru-1.4.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

translit_ru-1.4-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file translit_ru-1.4.tar.gz.

File metadata

  • Download URL: translit_ru-1.4.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.0

File hashes

Hashes for translit_ru-1.4.tar.gz
Algorithm Hash digest
SHA256 11973478a1132738fc2c7d86d9eb75d897eb1aa1ac14846150865fa07699fb21
MD5 82e81e1af51cf2ec95bf981d630f9d41
BLAKE2b-256 b5b56e703077b821dc526a4446b17b683b33d9af836899b02e9462683f52813c

See more details on using hashes here.

File details

Details for the file translit_ru-1.4-py3-none-any.whl.

File metadata

  • Download URL: translit_ru-1.4-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.0

File hashes

Hashes for translit_ru-1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 87fcf5734232d7b9e7b2a4bb89a8da258160b1f3db3e673df0a5d8672eaabf84
MD5 e31999f77efec79a86cf5658cff54771
BLAKE2b-256 9f27e9dfa62e83b13e03483712bafb56503a6c4a94497f321d7eab38749da4e0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page