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
Release history Release notifications | RSS feed
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)
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11973478a1132738fc2c7d86d9eb75d897eb1aa1ac14846150865fa07699fb21 |
|
MD5 | 82e81e1af51cf2ec95bf981d630f9d41 |
|
BLAKE2b-256 | b5b56e703077b821dc526a4446b17b683b33d9af836899b02e9462683f52813c |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87fcf5734232d7b9e7b2a4bb89a8da258160b1f3db3e673df0a5d8672eaabf84 |
|
MD5 | e31999f77efec79a86cf5658cff54771 |
|
BLAKE2b-256 | 9f27e9dfa62e83b13e03483712bafb56503a6c4a94497f321d7eab38749da4e0 |