metadata {
authority_id: bas id: 2017-bss language: iso-639-2:rus source_script: Cyrl destination_script: Latn name: Streamlined Romanization of Russian Cyrillic (Basic 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ты могла только родиться, в той земле, что не любит шутить, а\nровнем-гладнем разметнулась на полсвета, да и ступай считать версты, пока\nне зарябит тебе в очи. И не хитрый, кажись, дорожный снаряд, не\nжелезным схвачен винтом, а наскоро живьём с одним топором да долотом\nснарядил и собрал тебя ярославский расторопный мужик. Не в немецких\nботфортах ямщик: борода да рукавицы, и сидит чёрт знает на чём; а\nпривстал, да замахнулся, да затянул песню — кони вихрем, спицы в\nколесах смешались в один гладкий круг, только дрогнула дорога, да вскрикнул\nв испуге остановившийся пешеход — и вон она понеслась, понеслась,\nпонеслась!\n\nН.В. Гоголь", "Eh, troyka! ptitsa troyka, kto tebya vidumal? znat, u boykogo naroda\nti mogla tolko roditsya, v toy zemle, chto ne lyubit shutit, a\nrovnem-gladnem razmetnulas na polsveta, da i stupay schitat versti, poka\nne zaryabit tebe v ochi. I ne hitriy, kazhis, dorozhniy snaryad, ne\nzheleznim shvachen vintom, a naskoro zhivyem s odnim toporom da dolotom\nsnaryadil i sobral tebya yaroslavskiy rastoropniy muzhik. Ne v nemetskih\nbotfortah yamshchik: boroda da rukavitsi, i sidit chert znaet na chem; a\nprivstal, da zamahnulsya, da zatyanul pesnyu — koni vihrem, spitsi v\nkolesah smeshalis v odin gladkiy krug, tolko drognula doroga, da vskriknul\nv ispuge ostanovivshiysya peshehod — i von ona poneslas, poneslas,\nponeslas!\n\nN.V. Gogol" test "ЁЖ Ёж ёж", "EZH Ezh ezh" test "Цветущий сад", "Tsvetushchiy sad" test "Чувство юмора", "Chuvstvo yumora" test "Широкий выбор", "Shirokiy vibor" test "Все подъезды заблокированны", "Vse podezdi zablokirovanni" test "Ожерелье", "Ozherelye" test "Ручьи", "Ruchyi" test "Каньон", "Kanyon" test "Бельэтаж", "Belyetazh"
}
dependency “posix”, import: true
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": "YE" # Ё # "\u042c\u0415": "YE" # Е # "\u042c\u0418": "YI" # И # "\u042c\u041E": "YO" # O # "\u042c\u0417": "YE" # Э # Ь (otherwise) -> (none) sub "Ь", "" # Ъ -> (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": "ye" # е # "\u044c\u0438": "yi" # и # "\u044c\u006f": "yo" # o # "\u044c\u044d": "ye" # э # ь (otherwise) -> (none) sub "ь", "" # ъ -> (none) sub "ъ", "" }
}