Julia → Iuliia. Tudo sobre transliteração

Transliteração


Transliteração é uma tradução latina de palavras cirílicas ( Anna → Anna , Samara → Samara ). É usado em passaportes, carteiras de motorista, entrega internacional, catálogos de bibliotecas e muitos outros processos internacionais.


Aconteceu que recentemente mergulhei neste tópico, e na Wikipedia ele é pouco divulgado. Portanto, vou lhe dizer o que é (spoiler - se você acha que a transliteração é ruim, é realmente pior).


E, claro, como esse é o Habr - vou oferecer bibliotecas de código aberto para resolver o problema.


Índice:



Quem é culpado


O Translit é uma situação de livro didático "temos 14 padrões ruins, vamos criar outro". Ao longo do século XX, pessoas respeitáveis ​​e respeitáveis ​​criaram novos e novos padrões de transliteração.


Como os padrões são multiplicados
Como os padrões se multiplicam // xkcd


  , . ,   → Iuliia  , ,   ICAO Doc 9303 [1] — Machine Readable Travel Documents.


, , . - ,    Ljogkijj ( 16876-71[2]) — .


Zato naši kosmičeskie korabli borozdili prostory vselennoj.

 21    : ICO Doc 9303 ( → Iuliia)  ISO 9:1995 ( → Ûliâ),    7.79-2000[3]. ,  .


  «»,       [4],   Yuliya.   ,  .


Yuliya, syesh yeshchyo etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly, da vypey altayskogo chayu.

,   (   ).    yeshchyo. ,     —  E → YE, → SHCH   → YO   .


     .    — [5], [6]. - → SCH.   → Yurii,   → Usole,  .   !


( ). , ISO, , , . — [7].


  .   20  ,   (,    ).   14  . «»,   xkcd.


,    — , id  .   ?  :       .
Habr, chto ty delaesh, ahaha, prekrati

      « », ,   . , .


 — « »,     Iuliia → . ,   ,    ,   .

—  ,  .   DaryaRodionova — « »[8].

.


( )


/.   ICAO Doc 9303 — . , : ,   . -310[9] .


import iuliia

source = " "
iuliia.translate(source, schema=iuliia.ICAO_DOC_9303)
# Iuliia Shcheglova

(cyr–lat).  7.79-2000 (aka ISO 9:1995).    .


import iuliia

source = ",        -"

iuliia.translate(source, schema=iuliia.GOST_779)
# Ûliâ, sʺešʹ eŝ ètih mâgkih francuzskih bulok iz Joškar-Oly

iuliia.translate(source, schema=iuliia.GOST_779_ALT)
# Yuliya, s``esh` eshhyo `tix myagkix franczuzskix bulok iz Joshkar-Oly`

. ,    .


import iuliia

source = " "
iuliia.translate(source, schema=iuliia.MOSMETRO)
# Yuliya Scheglova

. .     .


import iuliia

source = ",  -,   "
iuliia.translate(source, schema=iuliia.WIKIPEDIA)
# Rossiya, gorod Yoshkar-Ola, ulitsa Yana Krastynya

( )


,   [10].   ,  ,   ,  . , , . JavaScript, Python Go,  —  .


  .


7.79-2000


, ISO 9:1995. , . .


,        -,
   
↓ ↓ ↓
Ûliâ, sʺešʹ eŝ ètih mâgkih francuzskih bulok iz Joškar-Oly,
da vypej altajskogo čaû

Yuliya, s``esh` eshhyo `tix myagkix franczuzskix bulok iz Joshkar-Oly`,
da vy`pej altajskogo chayu

52290-2004


. , . .


,        -,
   
↓ ↓ ↓
Yuliya, syesh' eshche etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly,
da vypey altayskogo chayu

7.0.34-2014


. . . : , .


,        -,
   
↓ ↓ ↓
Yuliya, s''esh' eshhyo etix myagkix francuzskix bulok iz Joshkar-Oly,
da vypej altajskogo chayu

Yuliya, sesh eshhyo etikh myagkikh francuzskikh bulok iz Yoshkar-Oly,
da vypey altayskogo chayu


. , .


,        -,
   
↓ ↓ ↓
Iuliia, sesh esce etih miagkih francuzskih bulok iz Ioshkar-Oly,
da vypei altaiskogo chaiu

ICAO DOC 9303


. , — . . .


,        -,
   
↓ ↓ ↓
Iuliia, sieesh eshche etikh miagkikh frantsuzskikh bulok iz Ioshkar-Oly,
da vypei altaiskogo chaiu

UNGEGN 1987 V/18


. 16876-71. , .


,        -,
   
↓ ↓ ↓
Julija, sʺešʹ ešč ètih mjagkih francuzskih bulok iz Joškar-Oly,
da vypej altajskogo čaju

BGN/PCGN


. , - .


,        -,
   
↓ ↓ ↓
Yuliya, s”yesh’ yeshch etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly,
da vypey altayskogo chayu

ALA-LC


. . .


,        -,
   
↓ ↓ ↓
I͡ulii͡a, sʺeshʹ eshch ėtikh mi͡agkikh frant͡suzskikh bulok iz Ĭoshkar-Oly,
da vypeĭ altaĭskogo chai͡u

Iuliia, s"esh' eshche etikh miagkikh frantsuzskikh bulok iz Ioshkar-Oly,
da vypei altaiskogo chaiu

BS 2979:1958


. Oxford University Press. , .


,        -,
   
↓ ↓ ↓
Yuliya, sʺeshʹ eshch étikh myagkikh frantsuzskikh bulok iz Ĭoshkar-Olȳ,
da vȳpeĭ altaĭskogo chayu

Yuliya, s"esh' eshche etikh myagkikh frantsuzskikh bulok iz Ioshkar-Oly,
da vypei altaiskogo chayu


. . 16876-71. , .


,        -,
   
↓ ↓ ↓
Julija, sʺešʹ ešč ètix mjagkix francuzskix bulok iz Joškar-Oly,
da vypej altajskogo čaju


, . BGN/PCGN . , .


,        -,
   
↓ ↓ ↓
Yuliya, syesh yeshchyo etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly,
da vypey altayskogo chayu


, . , . , .


,        -,
   
↓ ↓ ↓
Yuliya, syesh esche etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly,
da vypey altayskogo chayu

.


. .


,        -,
   
↓ ↓ ↓
Yuliya, sesh esche etikh myagkikh frantsuzskikh bulok iz Ioshkar-Oly,
da vypei altaiskogo chayu

.


. ..


,        -,
   
↓ ↓ ↓
Yuliya, syesh eschyo etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly,
da vypey altayskogo chayu


    —    (N+1) , «»    .


    . ,   — ,     .


mehanizm Python, JavaScript Go.     ,     ツ


UPD !



(Python):


import iuliia

# list all supported schemas
for schema_name in iuliia.Schemas.names():
    print(schema_name)

# transliterate using specified schema
source = " "
iuliia.translate(source, schema=iuliia.ICAO_DOC_9303)
# "Iuliia Shcheglova"

# or pick schema by name
schema = iuliia.Schemas.get("wikipedia")
iuliia.translate(source, schema)
# "Yuliya Shcheglova"

Go:


import iuliia "github.com/mehanizm/iuliia-go"

func main() {
    translated, err := iuliia.Wikipedia.Translate(" ")
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(translated)
}

>> 'Yuliya Shcheglova'

 JSON,   . - —  , ツ


    —      ? ?




Links de texto:


  1. ICAO Doc 9303
  2. GOST 16876-71
  3. GOST 7.79-2000, também conhecido como ISO 9: 1995
  4. Diagrama da Wikipedia
  5. Esquema Yandex.Money
  6. Esquema Yandex.Map
  7. Circuito Mosmetro
  8. Como escrever seu próprio transliterador
  9. MIA 310
  10. Guia Completo de Transliteração

All Articles