metadata {
authority_id: bas id: 2017-oss language: iso-639-2:rus source_script: Cyrl destination_script: Latn name: Streamlined Romanization of Russian Cyrillic (Optimized Streamlined System) url: https://www.researchgate.net/publication/318402098 creation_date: 2017-07 description: | The streamlined approach to transliteration was initiated by the author with the development of the Streamlined System for the Romanization of Bulgarian, which was eventually codified by the Transliteration Act of 2009 (ДВ 2009) of the Bulgarian Parliament. The four purposes of the system below are in order of priority: 1. ensure a plausible phonetic approximation of Russian words by English speaking users, including those having no knowledge of the Russian language and no available additional explanations; 2. the system should allow for the retrieval of the original Cyrillic spellings as much as feasible; 3. transliterated Russian words should fit an English language environment i.e. not be perceived as too ‘un-English’; and 4. transliterated word forms should be streamlined and simple. (Ivanov 2003, Ivanov et al. 2010) notes: - Typical for the streamlined approach is its non-use of diacritics, its use of Latin y for rendering only Cyrillic й rather than both й and ы, its non-use of Latin j, as well as its use of Latin h rather than kh for Cyrillic х.
}
tests {
test "Эх, тройка! птица тройка, кто тебя выдумал? знать, у бойкого народа ты могла только родиться, в той земле, что не любит шутить, а ровнем-гладнем разметнулась на полсвета, да и ступай считать версты, пока не зарябит тебе в очи. И не хитрый, кажись, дорожный снаряд, не железным схвачен винтом, а наскоро живьём с одним топором да долотом снарядил и собрал тебя ярославский расторопный мужик. Не в немецких ботфортах ямщик: борода да рукавицы, и сидит чёрт знает на чём; а привстал, да замахнулся, да затянул песню — кони вихрем, спицы в колесах смешались в один гладкий круг, только дрогнула дорога, да вскрикнул в испуге остановившийся пешеход — и вон она понеслась, понеслась, понеслась!\nН.В. Гоголь", "`Eh, troyka! ptitsa troyka, kto tebya v`idumal? znat', u boykogo naroda t`i mogla tol'ko rodit'sya, v toy zemle, chto ne lyubit shutit', a rovnem-gladnem razmetnulas' na polsveta, da i stupay schitat' verst`i, poka ne zaryabit tebe v ochi. I ne hitr`iy, kazhis', dorozhn`iy snaryad, ne zhelezn`im shvachen vintom, a naskoro zhivy``em s odnim toporom da dolotom snaryadil i sobral tebya yaroslavskiy rastoropn`iy muzhik. Ne v nemetskih botfortah yamshchik: boroda da rukavits`i, i sidit ch``ert znaet na ch``em; a privstal, da zamahnulsya, da zatyanul pesnyu — koni vihrem, spits`i v kolesah smeshalis' v odin gladkiy krug, tol'ko drognula doroga, da vskriknul v ispuge ostanovivshiysya peshehod — i von ona poneslas', poneslas', poneslas'!\nN.V. Gogol'" test "ЁЖ Ёж ёж", "``EZH ``Ezh ``ezh" test "Цветущий сад", "Tsvetushchiy sad" test "Чувство юмора", "Chuvstvo yumora" test "Широкий выбор", "Shirokiy v`ibor" test "Все подъезды заблокированны", "Vse pod\"ezd`i zablokirovann`i" test "Ожерелье", "Ozherelye" test "Ручьи", "Ruchyi" test "Каньон", "Kanyon" test "Бельэтаж", "Bely`etazh"
}
stage {
# RULES sub "\u042c", "Y", after: any("ЕеЁёИиОоЭэ") # Ь (before Е, Ё, И, O, Э) sub "\u044c", "y", after: any("ЕеЁёИиОоЭэ") # ь (before Е, Ё, И, O, Э) # CHARACTERS parallel { # "\u0027": "" # ' sub "А", "A" # А sub "Б", "B" # Б sub "В", "V" # В sub "Г", "G" # Г sub "Д", "D" # Д sub "Ё", "``E" # Ё sub "Е", "E" # Е sub "Ж", "Zh" # Ж sub "Ж", "ZH", before: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ж", "ZH", after: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "З", "Z" # З sub "Э", "`E" # Э sub "И", "I" # И sub "Й", "Y" # Й sub "К", "K" # К sub "Л", "L" # Л sub "М", "M" # М sub "Н", "N" # Н sub "О", "O" # О sub "П", "P" # П sub "Р", "R" # Р sub "С", "S" # С sub "Т", "T" # Т sub "У", "U" # У sub "Ф", "F" # Ф sub "Х", "H" # Х sub "Ц", "Ts" # Ц sub "Ц", "TS", before: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ц", "TS", after: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ч", "Ch" # Ч sub "Ч", "CH", before: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ч", "CH", after: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ш", "Sh" # Ш sub "Ш", "SH", before: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ш", "SH", after: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Щ", "Shch" # Щ sub "Щ", "SHCH", before: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Щ", "SHCH", after: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ы", "`I" # Ы sub "Я", "Ya" # Я sub "Я", "YA", before: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Я", "YA", after: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ю", "Yu" # Ю sub "Ю", "YU", before: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') sub "Ю", "YU", after: any('AБBГДЕЁЖЗИЙКЛМНОПРСТУЎФХЦЧШЩЪЫЬЭЮЯІ') # Ь (before Е, Ё, И, O, Э) # "\u042c\u0401": "Y``e" # Ё # "\u042c\u0415": "Ye" # Е # "\u042c\u0418": "Yi" # И # "\u042c\u041E": "Yo" # O # "\u042c\u0417": "Y`e" # Э # Ь (otherwise) -> ' (or none) sub "Ь", "'" # Ъ -> " (or none) sub "Ъ", "\"" sub "а", "a" # а sub "б", "b" # б sub "в", "v" # в sub "г", "g" # г sub "д", "d" # д sub "ё", "``e" # ё sub "е", "e" # e sub "ж", "zh" # ж sub "з", "z" # з sub "э", "`e" # э sub "и", "i" # и sub "й", "y" # й sub "к", "k" # к sub "л", "l" # л sub "м", "m" # м sub "н", "n" # н sub "о", "o" # о sub "п", "p" # п sub "р", "r" # р sub "с", "s" # с sub "т", "t" # т sub "у", "u" # у sub "ф", "f" # ф sub "х", "h" # х sub "ц", "ts" # ц sub "ч", "ch" # ч sub "ш", "sh" # ш sub "щ", "shch" # щ sub "ы", "`i" # ы sub "я", "ya" # я sub "ю", "yu" # ю # ь (before е, ё, и, o, э) # "\u044c\u0435": "ye" # ё # "\u044c\u0451": "y``e" # e # "\u044c\u0438": "yi" # и # "\u044c\u006f": "yo" # o # "\u044c\u044d": "y`e" # э # ь (otherwise) -> ' (or none) sub "ь", "'" # ъ -> " (or none) sub "ъ", "\"" }
}