iuliia 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/iiulia.gemspec +13 -2
- data/lib/iuliia/version.rb +1 -1
- data/lib/schemas/LICENSE +21 -0
- data/lib/schemas/README.md +71 -0
- data/lib/schemas/ala_lc.json +49 -0
- data/lib/schemas/ala_lc_alt.json +49 -0
- data/lib/schemas/bgn_pcgn.json +147 -0
- data/lib/schemas/bgn_pcgn_alt.json +106 -0
- data/lib/schemas/bs_2979.json +55 -0
- data/lib/schemas/bs_2979_alt.json +49 -0
- data/lib/schemas/gost_16876.json +49 -0
- data/lib/schemas/gost_16876_alt.json +49 -0
- data/lib/schemas/gost_52290.json +92 -0
- data/lib/schemas/gost_52535.json +50 -0
- data/lib/schemas/gost_7034.json +62 -0
- data/lib/schemas/gost_779.json +50 -0
- data/lib/schemas/gost_779_alt.json +54 -0
- data/lib/schemas/icao_doc_9303.json +57 -0
- data/lib/schemas/iso_9_1954.json +49 -0
- data/lib/schemas/iso_9_1968.json +49 -0
- data/lib/schemas/iso_9_1968_alt.json +49 -0
- data/lib/schemas/mosmetro.json +102 -0
- data/lib/schemas/mvd_310.json +52 -0
- data/lib/schemas/mvd_310_fr.json +66 -0
- data/lib/schemas/mvd_782.json +96 -0
- data/lib/schemas/schema.jsd +62 -0
- data/lib/schemas/scientific.json +49 -0
- data/lib/schemas/telegram.json +49 -0
- data/lib/schemas/ungegn_1987.json +53 -0
- data/lib/schemas/wikipedia.json +95 -0
- data/lib/schemas/yandex_maps.json +58 -0
- data/lib/schemas/yandex_money.json +52 -0
- metadata +61 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5e2122232ec200955705f47e7049e2fa604b824f448bb1bebfc06e9eb899ec90
|
4
|
+
data.tar.gz: d3356ecdb05bd91e02660c5581f9dcfb1e150262321a078748afa34202c199ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: be4c6621c2034d8c3d99816d5aa5377c6bbfdf940638d9cb6cb1748929a1c89ad46c2ee9f1bec67465920382991672bcdadd2e1ad4fab15a6a5d59d065cfb304
|
7
|
+
data.tar.gz: a8b88552673e1ebde933b6a66e3d2eea91bc77fa2b46ce6f469ca5ab37d0ee806f5a908fa788d4ba20fb9e5a5d9f468c846947861b3b9c7a72afe2ff39313a12
|
data/iiulia.gemspec
CHANGED
@@ -24,11 +24,20 @@ Gem::Specification.new do |spec|
|
|
24
24
|
raise 'RubyGems 2.0 or newer is required to protect against public gem pushes.'
|
25
25
|
end
|
26
26
|
|
27
|
-
# Specify which files should be added to the gem when it is released.
|
28
|
-
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
29
27
|
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
30
28
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features|priv)/}) }
|
31
29
|
end
|
30
|
+
|
31
|
+
gem_dir = "#{__dir__}/"
|
32
|
+
`git submodule --quiet foreach pwd`.split($OUTPUT_RECORD_SEPARATOR).each do |submodule_path|
|
33
|
+
Dir.chdir(submodule_path) do
|
34
|
+
submodule_relative_path = submodule_path.sub gem_dir, ''
|
35
|
+
`git ls-files`.split($OUTPUT_RECORD_SEPARATOR).each do |filename|
|
36
|
+
spec.files << "#{submodule_relative_path}/#{filename}"
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
32
41
|
spec.bindir = 'exe'
|
33
42
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
34
43
|
spec.require_paths = ['lib']
|
@@ -37,6 +46,8 @@ Gem::Specification.new do |spec|
|
|
37
46
|
spec.add_development_dependency 'rake'
|
38
47
|
spec.add_development_dependency 'rspec'
|
39
48
|
spec.add_development_dependency 'rubocop'
|
49
|
+
spec.add_development_dependency 'rubocop-rake'
|
50
|
+
spec.add_development_dependency 'rubocop-rspec'
|
40
51
|
|
41
52
|
spec.add_dependency 'json'
|
42
53
|
end
|
data/lib/iuliia/version.rb
CHANGED
data/lib/schemas/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2020 Anton Zhiyanov
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# `Iuliia`
|
2
|
+
|
3
|
+
> Transliterate Cyrillic → Latin in every possible way
|
4
|
+
|
5
|
+
Transliteration means representing Cyrillic data (mainly names and geographic locations) with Latin letters. It is used for international passports, visas, green cards, driving licenses, mail and goods delivery etc.
|
6
|
+
|
7
|
+
`Iuliia` makes transliteration easy as calling `iuliia.translate()` in your favorite programming language.
|
8
|
+
|
9
|
+
Why use `Iuliia`:
|
10
|
+
|
11
|
+
- 20 transliteration schemas (rule sets), including all main international and Russian standards.
|
12
|
+
- Correctly implements not only the base mapping, but all the special rules for letter combinations and word endings (AFAIK, Iuliia is the only library which does so).
|
13
|
+
- Simple API and zero third-party dependencies.
|
14
|
+
|
15
|
+
## Supported schemas
|
16
|
+
|
17
|
+
Actual schemas:
|
18
|
+
|
19
|
+
- ALA-LC: [ala_lc.json](ala_lc.json) and [ala_lc_alt.json](ala_lc_alt.json)
|
20
|
+
- BGN/PCGN: [bgn_pcgn.json](bgn_pcgn.json) and [bgn_pcgn_alt.json](bgn_pcgn_alt.json)
|
21
|
+
- BS 2979:1958: [bs_2979.json](bs_2979.json) and [bs_2979_alt.json](bs_2979_alt.json)
|
22
|
+
- GOST R 52290-2004: [gost_52290.json](gost_52290.json)
|
23
|
+
- GOST R 7.0.34-2014: [gost_7034.json](gost_7034.json)
|
24
|
+
- ICAO DOC 9303: [icao_doc_9303.json](icao_doc_9303.json)
|
25
|
+
- ISO 9:1995 aka GOST 7.79-2000: [gost_779.json](gost_779.json) and [gost_779_alt.json](gost_779_alt.json)
|
26
|
+
- UNGEGN 1987 V/18: [ungegn_1987.json](ungegn_1987.json)
|
27
|
+
- Moscow Metro map: [mosmetro.json](mosmetro.json)
|
28
|
+
- Scientific: [scientific.json](scientific.json)
|
29
|
+
- Telegram: [telegram.json](telegram.json)
|
30
|
+
- Wikipedia: [wikipedia.json](wikipedia.json)
|
31
|
+
- Yandex.Maps: [yandex_maps.json](yandex_maps.json)
|
32
|
+
- Yandex.Money: [yandex_money.json](yandex_money.json)
|
33
|
+
|
34
|
+
And deprecated ones:
|
35
|
+
|
36
|
+
- GOST 16876-71: [gost_16876.json](gost_16876.json) and [gost_16876_alt.json](gost_16876_alt.json)
|
37
|
+
- GOST R 52535.1-2006: [gost_52535.json](gost_52535.json)
|
38
|
+
- ISO/R 9:1954: [iso_9_1954.json](iso_9_1954.json)
|
39
|
+
- ISO/R 9:1968: [iso_9_1968.json](iso_9_1968.json) and [iso_9_1968_alt.json](iso_9_1968_alt.json)
|
40
|
+
- MVD 310-1997: [mvd_310.json](mvd_310.json) and [mvd_310_fr.json](mvd_310_fr.json)
|
41
|
+
- MVD 782-2000: [mvd_782.json](mvd_782.json)
|
42
|
+
|
43
|
+
For schema details and other information, see <https://dangry.ru/iuliia> (in Russian).
|
44
|
+
|
45
|
+
## Supported languages
|
46
|
+
|
47
|
+
- [C#](https://github.com/belianin/iuliia-cs)
|
48
|
+
- [Go](https://github.com/mehanizm/iuliia-go)
|
49
|
+
- [Java](https://github.com/massita99/iuliia-java) (Gson)
|
50
|
+
- [Java](https://github.com/homyakin/iuliia-java) (Jackson)
|
51
|
+
- [JavaScript](https://github.com/nalgeon/iuliia-js)
|
52
|
+
- [PHP](https://github.com/perevoshchikov/iuliia-php)
|
53
|
+
- **[Python](https://github.com/nalgeon/iuliia-py) ✨**
|
54
|
+
- [Ruby](https://github.com/adnikiforov/iuliia-rb)
|
55
|
+
- [Rust](https://github.com/massita99/iuliia-rust)
|
56
|
+
- [Swift](https://github.com/petertretyakov/Iuliia)
|
57
|
+
|
58
|
+
This repo contains schema descriptions. It is not intended to be used directly. If you want to add another schema — send a PR! See [schema.jsd](schema.jsd) for JSON Schema definition and [wikipedia.json](wikipedia.json) as a reference.
|
59
|
+
|
60
|
+
## Issues and limitations
|
61
|
+
|
62
|
+
In general:
|
63
|
+
|
64
|
+
- Only Russian subset of Cyrillic is supported.
|
65
|
+
- Does not support composite Unicode characters (e.g., `Ё`, but not `Ё`).
|
66
|
+
|
67
|
+
Schema-specific:
|
68
|
+
|
69
|
+
- _BS 2979:1958_. This schema defines two alternative translations for `Ы`: `Ы` → `Ȳ` (used by the Oxford University Press) and `Ы` → `UI` (used by the British Library). `iuliia` uses `Ы` → `Ȳ`.
|
70
|
+
- _GOST R 7.0.34-2014_. This schema defines alternatives for many letters, but does not specify when to use which. Therefore, `iuliia` uses the first of suggested translations for each such letter.
|
71
|
+
- _MVD-310_. This schema defines "`С` between two vowels → `SS`" rule. There is no such rule in other schemas, and MVD-310 itself is deprecated, so I decided to ignore this specific rule for the sake of code simplicity.
|
@@ -0,0 +1,49 @@
|
|
1
|
+
{
|
2
|
+
"name": "ala_lc",
|
3
|
+
"description": "ALA-LC transliteration schema.",
|
4
|
+
"url": "https://dangry.ru/iuliia/ala-lc/",
|
5
|
+
"mapping": {
|
6
|
+
"а": "a",
|
7
|
+
"б": "b",
|
8
|
+
"в": "v",
|
9
|
+
"г": "g",
|
10
|
+
"д": "d",
|
11
|
+
"е": "e",
|
12
|
+
"ё": "ё",
|
13
|
+
"ж": "zh",
|
14
|
+
"з": "z",
|
15
|
+
"и": "i",
|
16
|
+
"й": "ĭ",
|
17
|
+
"к": "k",
|
18
|
+
"л": "l",
|
19
|
+
"м": "m",
|
20
|
+
"н": "n",
|
21
|
+
"о": "o",
|
22
|
+
"п": "p",
|
23
|
+
"р": "r",
|
24
|
+
"с": "s",
|
25
|
+
"т": "t",
|
26
|
+
"у": "u",
|
27
|
+
"ф": "f",
|
28
|
+
"х": "kh",
|
29
|
+
"ц": "t͡s",
|
30
|
+
"ч": "ch",
|
31
|
+
"ш": "sh",
|
32
|
+
"щ": "shch",
|
33
|
+
"ъ": "ʺ",
|
34
|
+
"ы": "y",
|
35
|
+
"ь": "ʹ",
|
36
|
+
"э": "ė",
|
37
|
+
"ю": "i͡u",
|
38
|
+
"я": "i͡a"
|
39
|
+
},
|
40
|
+
"prev_mapping": null,
|
41
|
+
"next_mapping": null,
|
42
|
+
"ending_mapping": null,
|
43
|
+
"samples": [
|
44
|
+
[
|
45
|
+
"Юлия, съешь ещё этих мягких французских булок из Йошкар-Олы, да выпей алтайского чаю",
|
46
|
+
"I͡ulii͡a, sʺeshʹ eshchё ėtikh mi͡agkikh frant͡suzskikh bulok iz Ĭoshkar-Oly, da vypeĭ altaĭskogo chai͡u"
|
47
|
+
]
|
48
|
+
]
|
49
|
+
}
|
@@ -0,0 +1,49 @@
|
|
1
|
+
{
|
2
|
+
"name": "ala_lc_alt",
|
3
|
+
"description": "ALA-LC transliteration schema.",
|
4
|
+
"url": "https://dangry.ru/iuliia/ala-lc/",
|
5
|
+
"mapping": {
|
6
|
+
"а": "a",
|
7
|
+
"б": "b",
|
8
|
+
"в": "v",
|
9
|
+
"г": "g",
|
10
|
+
"д": "d",
|
11
|
+
"е": "e",
|
12
|
+
"ё": "e",
|
13
|
+
"ж": "zh",
|
14
|
+
"з": "z",
|
15
|
+
"и": "i",
|
16
|
+
"й": "i",
|
17
|
+
"к": "k",
|
18
|
+
"л": "l",
|
19
|
+
"м": "m",
|
20
|
+
"н": "n",
|
21
|
+
"о": "o",
|
22
|
+
"п": "p",
|
23
|
+
"р": "r",
|
24
|
+
"с": "s",
|
25
|
+
"т": "t",
|
26
|
+
"у": "u",
|
27
|
+
"ф": "f",
|
28
|
+
"х": "kh",
|
29
|
+
"ц": "ts",
|
30
|
+
"ч": "ch",
|
31
|
+
"ш": "sh",
|
32
|
+
"щ": "shch",
|
33
|
+
"ъ": "\"",
|
34
|
+
"ы": "y",
|
35
|
+
"ь": "'",
|
36
|
+
"э": "e",
|
37
|
+
"ю": "iu",
|
38
|
+
"я": "ia"
|
39
|
+
},
|
40
|
+
"prev_mapping": null,
|
41
|
+
"next_mapping": null,
|
42
|
+
"ending_mapping": null,
|
43
|
+
"samples": [
|
44
|
+
[
|
45
|
+
"Юлия, съешь ещё этих мягких французских булок из Йошкар-Олы, да выпей алтайского чаю",
|
46
|
+
"Iuliia, s\"esh' eshche etikh miagkikh frantsuzskikh bulok iz Ioshkar-Oly, da vypei altaiskogo chaiu"
|
47
|
+
]
|
48
|
+
]
|
49
|
+
}
|
@@ -0,0 +1,147 @@
|
|
1
|
+
{
|
2
|
+
"name": "bgn_pcgn",
|
3
|
+
"description": "BGN/PCGN transliteration schema",
|
4
|
+
"url": "https://dangry.ru/iuliia/bgn-pcgn/",
|
5
|
+
"mapping": {
|
6
|
+
"а": "a",
|
7
|
+
"б": "b",
|
8
|
+
"в": "v",
|
9
|
+
"г": "g",
|
10
|
+
"д": "d",
|
11
|
+
"е": "e",
|
12
|
+
"ё": "ё",
|
13
|
+
"ж": "zh",
|
14
|
+
"з": "z",
|
15
|
+
"и": "i",
|
16
|
+
"й": "y",
|
17
|
+
"к": "k",
|
18
|
+
"л": "l",
|
19
|
+
"м": "m",
|
20
|
+
"н": "n",
|
21
|
+
"о": "o",
|
22
|
+
"п": "p",
|
23
|
+
"р": "r",
|
24
|
+
"с": "s",
|
25
|
+
"т": "t",
|
26
|
+
"у": "u",
|
27
|
+
"ф": "f",
|
28
|
+
"х": "kh",
|
29
|
+
"ц": "ts",
|
30
|
+
"ч": "ch",
|
31
|
+
"ш": "sh",
|
32
|
+
"щ": "shch",
|
33
|
+
"ъ": "”",
|
34
|
+
"ы": "y",
|
35
|
+
"ь": "’",
|
36
|
+
"э": "e",
|
37
|
+
"ю": "yu",
|
38
|
+
"я": "ya"
|
39
|
+
},
|
40
|
+
"prev_mapping": {
|
41
|
+
"е": "ye",
|
42
|
+
"ае": "ye",
|
43
|
+
"ее": "ye",
|
44
|
+
"ёе": "ye",
|
45
|
+
"ие": "ye",
|
46
|
+
"йе": "ye",
|
47
|
+
"ое": "ye",
|
48
|
+
"уе": "ye",
|
49
|
+
"ъе": "ye",
|
50
|
+
"ые": "ye",
|
51
|
+
"ье": "ye",
|
52
|
+
"эе": "ye",
|
53
|
+
"юе": "ye",
|
54
|
+
"яе": "ye",
|
55
|
+
"ё": "yё",
|
56
|
+
"аё": "yё",
|
57
|
+
"её": "yё",
|
58
|
+
"ёё": "yё",
|
59
|
+
"иё": "yё",
|
60
|
+
"йё": "yё",
|
61
|
+
"оё": "yё",
|
62
|
+
"уё": "yё",
|
63
|
+
"ъё": "yё",
|
64
|
+
"ыё": "yё",
|
65
|
+
"ьё": "yё",
|
66
|
+
"эё": "yё",
|
67
|
+
"юё": "yё",
|
68
|
+
"яё": "yё",
|
69
|
+
"аы": "·y",
|
70
|
+
"еы": "·y",
|
71
|
+
"ёы": "·y",
|
72
|
+
"иы": "·y",
|
73
|
+
"оы": "·y",
|
74
|
+
"уы": "·y",
|
75
|
+
"ыы": "·y",
|
76
|
+
"эы": "·y",
|
77
|
+
"юы": "·y",
|
78
|
+
"яы": "·y",
|
79
|
+
"бэ": "·e",
|
80
|
+
"вэ": "·e",
|
81
|
+
"гэ": "·e",
|
82
|
+
"дэ": "·e",
|
83
|
+
"жэ": "·e",
|
84
|
+
"зэ": "·e",
|
85
|
+
"кэ": "·e",
|
86
|
+
"лэ": "·e",
|
87
|
+
"мэ": "·e",
|
88
|
+
"нэ": "·e",
|
89
|
+
"пэ": "·e",
|
90
|
+
"рэ": "·e",
|
91
|
+
"сэ": "·e",
|
92
|
+
"тэ": "·e",
|
93
|
+
"фэ": "·e",
|
94
|
+
"хэ": "·e",
|
95
|
+
"цэ": "·e",
|
96
|
+
"чэ": "·e",
|
97
|
+
"шэ": "·e",
|
98
|
+
"щэ": "·e"
|
99
|
+
},
|
100
|
+
"next_mapping": {
|
101
|
+
"йа": "y·",
|
102
|
+
"йу": "y·",
|
103
|
+
"йы": "y·",
|
104
|
+
"йэ": "y·",
|
105
|
+
"ыа": "y·",
|
106
|
+
"ыу": "y·",
|
107
|
+
"ыы": "y·",
|
108
|
+
"ыэ": "y·",
|
109
|
+
"тс": "t·",
|
110
|
+
"шч": "sh·"
|
111
|
+
},
|
112
|
+
"ending_mapping": null,
|
113
|
+
"samples": [
|
114
|
+
[
|
115
|
+
"Юлия, съешь ещё этих мягких французских булок из Йошкар-Олы, да выпей алтайского чаю",
|
116
|
+
"Yuliya, s”yesh’ yeshchё etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly, da vypey altayskogo chayu"
|
117
|
+
],
|
118
|
+
[
|
119
|
+
"Россия, город Йошкар-Ола, улица Яна Крастыня",
|
120
|
+
"Rossiya, gorod Yoshkar-Ola, ulitsa Yana Krastynya"
|
121
|
+
],
|
122
|
+
["Елизово", "Yelizovo"],
|
123
|
+
["Чапаевск", "Chapayevsk"],
|
124
|
+
["Мейеровка", "Meyyerovka"],
|
125
|
+
["Юрьев объезд", "Yur’yev ob”yezd"],
|
126
|
+
["Белкино", "Belkino"],
|
127
|
+
["Ёдва", "Yёdva"],
|
128
|
+
["Змииёвка", "Zmiiyёvka"],
|
129
|
+
["Айёган", "Ayyёgan"],
|
130
|
+
["Воробьёво", "Vorob’yёvo"],
|
131
|
+
["Кебанъёль", "Keban”yёl’"],
|
132
|
+
["Озёрный", "Ozёrnyy"],
|
133
|
+
["Тыайа", "Ty·ay·a"],
|
134
|
+
["Сайылык", "Say·ylyk"],
|
135
|
+
["Ойусардах", "Oy·usardakh"],
|
136
|
+
["Йошкар-Ола", "Yoshkar-Ola"],
|
137
|
+
["Бийск", "Biysk"],
|
138
|
+
["Тыэкан", "Ty·ekan"],
|
139
|
+
["Суык-Су", "Su·yk-Su"],
|
140
|
+
["Тында", "Tynda"],
|
141
|
+
["Улан-Удэ", "Ulan-Ud·e"],
|
142
|
+
["Электрогорск", "Elektrogorsk"],
|
143
|
+
["Руэм", "Ruem"],
|
144
|
+
["Вяртсиля", "Vyart·silya"],
|
145
|
+
["Ташчишма", "Tash·chishma"]
|
146
|
+
]
|
147
|
+
}
|
@@ -0,0 +1,106 @@
|
|
1
|
+
{
|
2
|
+
"name": "bgn_pcgn_alt",
|
3
|
+
"description": "BGN/PCGN transliteration schema",
|
4
|
+
"url": "https://dangry.ru/iuliia/bgn-pcgn/",
|
5
|
+
"mapping": {
|
6
|
+
"а": "a",
|
7
|
+
"б": "b",
|
8
|
+
"в": "v",
|
9
|
+
"г": "g",
|
10
|
+
"д": "d",
|
11
|
+
"е": "e",
|
12
|
+
"ё": "ё",
|
13
|
+
"ж": "zh",
|
14
|
+
"з": "z",
|
15
|
+
"и": "i",
|
16
|
+
"й": "y",
|
17
|
+
"к": "k",
|
18
|
+
"л": "l",
|
19
|
+
"м": "m",
|
20
|
+
"н": "n",
|
21
|
+
"о": "o",
|
22
|
+
"п": "p",
|
23
|
+
"р": "r",
|
24
|
+
"с": "s",
|
25
|
+
"т": "t",
|
26
|
+
"у": "u",
|
27
|
+
"ф": "f",
|
28
|
+
"х": "kh",
|
29
|
+
"ц": "ts",
|
30
|
+
"ч": "ch",
|
31
|
+
"ш": "sh",
|
32
|
+
"щ": "shch",
|
33
|
+
"ъ": "”",
|
34
|
+
"ы": "y",
|
35
|
+
"ь": "’",
|
36
|
+
"э": "e",
|
37
|
+
"ю": "yu",
|
38
|
+
"я": "ya"
|
39
|
+
},
|
40
|
+
"prev_mapping": {
|
41
|
+
"е": "ye",
|
42
|
+
"ае": "ye",
|
43
|
+
"ее": "ye",
|
44
|
+
"ёе": "ye",
|
45
|
+
"ие": "ye",
|
46
|
+
"йе": "ye",
|
47
|
+
"ое": "ye",
|
48
|
+
"уе": "ye",
|
49
|
+
"ъе": "ye",
|
50
|
+
"ые": "ye",
|
51
|
+
"ье": "ye",
|
52
|
+
"эе": "ye",
|
53
|
+
"юе": "ye",
|
54
|
+
"яе": "ye",
|
55
|
+
"ё": "yё",
|
56
|
+
"аё": "yё",
|
57
|
+
"её": "yё",
|
58
|
+
"ёё": "yё",
|
59
|
+
"иё": "yё",
|
60
|
+
"йё": "yё",
|
61
|
+
"оё": "yё",
|
62
|
+
"уё": "yё",
|
63
|
+
"ъё": "yё",
|
64
|
+
"ыё": "yё",
|
65
|
+
"ьё": "yё",
|
66
|
+
"эё": "yё",
|
67
|
+
"юё": "yё",
|
68
|
+
"яё": "yё"
|
69
|
+
},
|
70
|
+
"next_mapping": null,
|
71
|
+
"ending_mapping": null,
|
72
|
+
"samples": [
|
73
|
+
[
|
74
|
+
"Юлия, съешь ещё этих мягких французских булок из Йошкар-Олы, да выпей алтайского чаю",
|
75
|
+
"Yuliya, s”yesh’ yeshchё etikh myagkikh frantsuzskikh bulok iz Yoshkar-Oly, da vypey altayskogo chayu"
|
76
|
+
],
|
77
|
+
[
|
78
|
+
"Россия, город Йошкар-Ола, улица Яна Крастыня",
|
79
|
+
"Rossiya, gorod Yoshkar-Ola, ulitsa Yana Krastynya"
|
80
|
+
],
|
81
|
+
["Елизово", "Yelizovo"],
|
82
|
+
["Чапаевск", "Chapayevsk"],
|
83
|
+
["Мейеровка", "Meyyerovka"],
|
84
|
+
["Юрьев объезд", "Yur’yev ob”yezd"],
|
85
|
+
["Белкино", "Belkino"],
|
86
|
+
["Ёдва", "Yёdva"],
|
87
|
+
["Змииёвка", "Zmiiyёvka"],
|
88
|
+
["Айёган", "Ayyёgan"],
|
89
|
+
["Воробьёво", "Vorob’yёvo"],
|
90
|
+
["Кебанъёль", "Keban”yёl’"],
|
91
|
+
["Озёрный", "Ozёrnyy"],
|
92
|
+
["Тыайа", "Tyaya"],
|
93
|
+
["Сайылык", "Sayylyk"],
|
94
|
+
["Ойусардах", "Oyusardakh"],
|
95
|
+
["Йошкар-Ола", "Yoshkar-Ola"],
|
96
|
+
["Бийск", "Biysk"],
|
97
|
+
["Тыэкан", "Tyekan"],
|
98
|
+
["Суык-Су", "Suyk-Su"],
|
99
|
+
["Тында", "Tynda"],
|
100
|
+
["Улан-Удэ", "Ulan-Ude"],
|
101
|
+
["Электрогорск", "Elektrogorsk"],
|
102
|
+
["Руэм", "Ruem"],
|
103
|
+
["Вяртсиля", "Vyartsilya"],
|
104
|
+
["Ташчишма", "Tashchishma"]
|
105
|
+
]
|
106
|
+
}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
{
|
2
|
+
"name": "bs_2979",
|
3
|
+
"description": "British Standard 2979:1958 transliteration schema",
|
4
|
+
"url": "https://dangry.ru/iuliia/bs-2979/",
|
5
|
+
"comments": [
|
6
|
+
"This schema defines two alternative translations for `Ы`:",
|
7
|
+
" - `Ы` → `Ȳ` (used by the Oxford University Press)",
|
8
|
+
" - `Ы` → `UI` (used by the British Library).",
|
9
|
+
"`iuliia` uses `Ы` → `Ȳ`."
|
10
|
+
],
|
11
|
+
"mapping": {
|
12
|
+
"а": "a",
|
13
|
+
"б": "b",
|
14
|
+
"в": "v",
|
15
|
+
"г": "g",
|
16
|
+
"д": "d",
|
17
|
+
"е": "e",
|
18
|
+
"ё": "ё",
|
19
|
+
"ж": "zh",
|
20
|
+
"з": "z",
|
21
|
+
"и": "i",
|
22
|
+
"й": "ĭ",
|
23
|
+
"к": "k",
|
24
|
+
"л": "l",
|
25
|
+
"м": "m",
|
26
|
+
"н": "n",
|
27
|
+
"о": "o",
|
28
|
+
"п": "p",
|
29
|
+
"р": "r",
|
30
|
+
"с": "s",
|
31
|
+
"т": "t",
|
32
|
+
"у": "u",
|
33
|
+
"ф": "f",
|
34
|
+
"х": "kh",
|
35
|
+
"ц": "ts",
|
36
|
+
"ч": "ch",
|
37
|
+
"ш": "sh",
|
38
|
+
"щ": "shch",
|
39
|
+
"ъ": "ʺ",
|
40
|
+
"ы": "ȳ",
|
41
|
+
"ь": "ʹ",
|
42
|
+
"э": "é",
|
43
|
+
"ю": "yu",
|
44
|
+
"я": "ya"
|
45
|
+
},
|
46
|
+
"prev_mapping": null,
|
47
|
+
"next_mapping": null,
|
48
|
+
"ending_mapping": { "ий": "y", "ый": "y" },
|
49
|
+
"samples": [
|
50
|
+
[
|
51
|
+
"Юлия, съешь ещё этих мягких французских булок из Йошкар-Олы, да выпей алтайского чаю",
|
52
|
+
"Yuliya, sʺeshʹ eshchё étikh myagkikh frantsuzskikh bulok iz Ĭoshkar-Olȳ, da vȳpeĭ altaĭskogo chayu"
|
53
|
+
]
|
54
|
+
]
|
55
|
+
}
|
@@ -0,0 +1,49 @@
|
|
1
|
+
{
|
2
|
+
"name": "bs_2979_alt",
|
3
|
+
"description": "British Standard 2979:1958 transliteration schema",
|
4
|
+
"url": "https://dangry.ru/iuliia/bs-2979/",
|
5
|
+
"mapping": {
|
6
|
+
"а": "a",
|
7
|
+
"б": "b",
|
8
|
+
"в": "v",
|
9
|
+
"г": "g",
|
10
|
+
"д": "d",
|
11
|
+
"е": "e",
|
12
|
+
"ё": "e",
|
13
|
+
"ж": "zh",
|
14
|
+
"з": "z",
|
15
|
+
"и": "i",
|
16
|
+
"й": "i",
|
17
|
+
"к": "k",
|
18
|
+
"л": "l",
|
19
|
+
"м": "m",
|
20
|
+
"н": "n",
|
21
|
+
"о": "o",
|
22
|
+
"п": "p",
|
23
|
+
"р": "r",
|
24
|
+
"с": "s",
|
25
|
+
"т": "t",
|
26
|
+
"у": "u",
|
27
|
+
"ф": "f",
|
28
|
+
"х": "kh",
|
29
|
+
"ц": "ts",
|
30
|
+
"ч": "ch",
|
31
|
+
"ш": "sh",
|
32
|
+
"щ": "shch",
|
33
|
+
"ъ": "\"",
|
34
|
+
"ы": "y",
|
35
|
+
"ь": "'",
|
36
|
+
"э": "e",
|
37
|
+
"ю": "yu",
|
38
|
+
"я": "ya"
|
39
|
+
},
|
40
|
+
"prev_mapping": null,
|
41
|
+
"next_mapping": null,
|
42
|
+
"ending_mapping": { "ий": "y", "ый": "y" },
|
43
|
+
"samples": [
|
44
|
+
[
|
45
|
+
"Юлия, съешь ещё этих мягких французских булок из Йошкар-Олы, да выпей алтайского чаю",
|
46
|
+
"Yuliya, s\"esh' eshche etikh myagkikh frantsuzskikh bulok iz Ioshkar-Oly, da vypei altaiskogo chayu"
|
47
|
+
]
|
48
|
+
]
|
49
|
+
}
|
@@ -0,0 +1,49 @@
|
|
1
|
+
{
|
2
|
+
"name": "gost_16876",
|
3
|
+
"description": "GOST 16876-71 (aka GOST 1983) transliteration schema",
|
4
|
+
"url": "https://dangry.ru/iuliia/gost-16876/",
|
5
|
+
"mapping": {
|
6
|
+
"а": "a",
|
7
|
+
"б": "b",
|
8
|
+
"в": "v",
|
9
|
+
"г": "g",
|
10
|
+
"д": "d",
|
11
|
+
"е": "e",
|
12
|
+
"ё": "ё",
|
13
|
+
"ж": "ž",
|
14
|
+
"з": "z",
|
15
|
+
"и": "i",
|
16
|
+
"й": "j",
|
17
|
+
"к": "k",
|
18
|
+
"л": "l",
|
19
|
+
"м": "m",
|
20
|
+
"н": "n",
|
21
|
+
"о": "o",
|
22
|
+
"п": "p",
|
23
|
+
"р": "r",
|
24
|
+
"с": "s",
|
25
|
+
"т": "t",
|
26
|
+
"у": "u",
|
27
|
+
"ф": "f",
|
28
|
+
"х": "h",
|
29
|
+
"ц": "c",
|
30
|
+
"ч": "č",
|
31
|
+
"ш": "š",
|
32
|
+
"щ": "ŝ",
|
33
|
+
"ъ": "ʺ",
|
34
|
+
"ы": "y",
|
35
|
+
"ь": "ʹ",
|
36
|
+
"э": "è",
|
37
|
+
"ю": "û",
|
38
|
+
"я": "â"
|
39
|
+
},
|
40
|
+
"prev_mapping": null,
|
41
|
+
"next_mapping": null,
|
42
|
+
"ending_mapping": null,
|
43
|
+
"samples": [
|
44
|
+
[
|
45
|
+
"Юлия, съешь ещё этих мягких французских булок из Йошкар-Олы, да выпей алтайского чаю",
|
46
|
+
"Ûliâ, sʺešʹ eŝё ètih mâgkih francuzskih bulok iz Joškar-Oly, da vypej altajskogo čaû"
|
47
|
+
]
|
48
|
+
]
|
49
|
+
}
|