Skip to main content

Translit russian cyrillic and slugify phrases

Project description

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

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

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

Соответствие интуитивное, но несколько пояснений сделать нужно:

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

Примеры:

  • авдотья - avdotya;
  • авдотьи - avdothi;
  • отъявленный - otqavlennyy;
  • бактерицидные - baktericidnye;
  • вьюга - vyuga;
  • юг - yug;
  • эра - qra;
  • эон - qon;
  • мэон - mqhon;
  • цирк - cirk;
  • жюри - juri;
  • щебетать - whebetath;
  • парашют - parawut;
  • аллофон - allofon;
  • съезд - sqezd;
  • метр - metr;
  • мэтр - mqtr;
  • лук - luk;
  • люк - lhuk;
  • клык - klyk;
  • клик - klik;
  • клён - klhon;
  • клон - klon;
  • раса - rasa;
  • ряса - rhasa;
  • пот - pot;
  • под - pod;
  • топ - top;
  • топь - toph;
  • йод - yod;
  • яд - yad;
  • чёрт - chort;
  • чьорт - chyort;
  • ыфкуиль - yyfkuilh
  • подыграть - podygrath;
  • вожжи - vojji;
  • жужжать - jujjath;
  • объём - obqom;
  • бельё - belyo;
  • подъезд - podqezd;
  • отребье - otrebye;
  • выемка - vyemka;
  • гальюн - galyun;
  • веет - veet;
  • веешь - veew;
  • епархия - yeparxiya;
  • ералаш - eralaw;
  • красивые - krasivye;
  • коммерсантъ - kommersant;
  • тэер - tqher;
  • гэй - gqy;
  • гей - gey;
  • МЭИ - MQI.
  • чей - chey;
  • чьи - chyi;
  • каньон - kanyon;

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

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

from ayum.translit import to_latin, slugify

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

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

# 3
print(slugify('Объёмом 5 литров')) # prints 'obqomom-5-litrov'

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.7.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

translit_ru-1.7-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for translit_ru-1.7.tar.gz
Algorithm Hash digest
SHA256 df7af76b50ce2d6de569bc9f296cad67b963804acd437d74d437987bb18aec96
MD5 55d97d1340e32bc3711f0ee279c75ea6
BLAKE2b-256 d0bdeffd708f7b2a56f594084ee103500d6213d131d197952c2faf64b7371ad3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for translit_ru-1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 6cc1b7bd1d28c443b8b93a1fcf4ea3e0c8657f7ae63889ca966f9e5972c64adb
MD5 a05f4c568f6dc769ea67226a55c533e8
BLAKE2b-256 6c4bc13d7e1b3e34e087da281ac2f6601a87fa52a22bc1701c44beb335133666

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