cyrillic 0.2.0 → 0.3.0

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.
data/lib/cyrillic/iso9.rb CHANGED
@@ -1,261 +1,265 @@
1
- module Iso9
1
+ # frozen_string_literal: true
2
2
 
3
- CHARACTER_TABLE = {
4
- "А" => "A",
5
- "Ӓ" => "Ä",
6
- "Ӓ̄" => "Ạ̈",
7
- "Ӑ" => "Ă",
8
- "А̄" => "Ā",
9
- "Ӕ" => "Æ",
10
- "А́" => "Á",
11
- "А̊" => "Å",
12
- "Б" => "B",
13
- "В" => "V",
14
- "Г" => "G",
15
- "Ѓ" => "Ǵ",
16
- "Ғ" => "Ġ",
17
- "Ҕ" => "Ğ",
18
- "Һ" => "",
19
- "Д" => "D",
20
- "Ђ" => "Đ",
21
- "Е" => "E",
22
- "Ӗ" => "Ĕ",
23
- "Ё" => "Ë",
24
- "Є" => "Ê",
25
- "Ж" => "Ž",
26
- "Җ" => "Ž̦",
27
- "Ӝ" => "",
28
- "Ӂ" => "",
29
- "З" => "Z",
30
- "Ӟ" => "Z̈",
31
- "Ӡ" => "Ź",
32
- "Ѕ" => "",
33
- "И" => "I",
34
- "Ӣ" => "Ī",
35
- "И́" => "Í",
36
- "Ӥ" => "Î",
37
- "Й" => "J",
38
- "І" => "Ì",
39
- "Ї" => "Ï",
40
- "І̄" => "Ǐ",
41
- "Ј" => "",
42
- "Ј̵" => "",
43
- "К" => "K",
44
- "Ќ" => "",
45
- "Ӄ" => "",
46
- "Ҝ" => "",
47
- "Ҡ" => "Ǩ",
48
- "Ҟ" => "K̄",
49
- "Қ" => "",
50
- "К̨" => "K̀",
51
- "Ԛ" => "Q",
52
- "Л" => "L",
53
- "Љ" => "",
54
- "Ԡ" => "L̦",
55
- "М" => "M",
56
- "Н" => "N",
57
- "Њ" => "",
58
- "Ң" => "N̦",
59
- "Ӊ" => "",
60
- "Ҥ" => "",
61
- "Ԋ" => "Ǹ",
62
- "Ԣ" => "Ń",
63
- "Ӈ" => "Ň",
64
- "Н̄" => "",
65
- "О" => "O",
66
- "Ӧ" => "Ö",
67
- "Ө" => "Ô",
68
- "Ӫ" => "Ő",
69
- "Ӧ̄" => "Ọ̈",
70
- "Ҩ" => "Ò",
71
- "О́" => "Ó",
72
- "О̄" => "Ō",
73
- "Œ" => "Œ",
74
- "П" => "P",
75
- "Ҧ" => "",
76
- "Ԥ" => "P̀",
77
- "Р" => "R",
78
- "С" => "S",
79
- "Ҫ" => "Ș",
80
- "С̀" => "S̀",
81
- "Т" => "T",
82
- "Ћ" => "Ć",
83
- "Ԏ" => "T̀",
84
- "Т̌" => "Ť",
85
- "Ҭ" => "Ț",
86
- "У" => "U",
87
- "Ӱ" => "Ü",
88
- "Ӯ" => "Ū",
89
- "Ў" => "Ŭ",
90
- "Ӳ" => "Ű",
91
- "У́" => "Ú",
92
- "Ӱ̄" => "Ụ̈",
93
- "Ү" => "Ù",
94
- "Ұ" => "",
95
- "Ӱ̄" => "Ụ̄",
96
- "Ԝ" => "W",
97
- "Ф" => "F",
98
- "Х" => "H",
99
- "Ҳ" => "H̦",
100
- "Ц" => "C",
101
- "Ҵ" => "C̄",
102
- "Џ" => "",
103
- "Ч" => "Č",
104
- "Ҷ" => "",
105
- "Ӌ" => "C̣",
106
- "Ӵ" => "C̈",
107
- "Ҹ" => "Ĉ",
108
- "Ч̀" => "",
109
- "Ҽ" => "C̆",
110
- "Ҿ" => "C̨̆",
111
- "Ш" => "Š",
112
- "Щ" => "Ŝ",
113
- "Ъ" => "ʺ",
114
- "Ы" => "Y",
115
- "Ӹ" => "Ÿ",
116
- "Ы̄" => "Ȳ",
117
- "Ь" => "ʹ",
118
- "Э" => "È",
119
- "Ә" => "",
120
- "Ӛ" => "À",
121
- "Ю" => "Û",
122
- "Ю̄" => "Û̄",
123
- "Я" => "Â",
124
- "Ґ" => "",
125
- "Ѣ" => "Ě",
126
- "Ѫ" => "Ǎ",
127
- "Ѳ" => "",
128
- "Ѵ" => "",
129
- "Ӏ" => "",
130
- "ʼ" => "`",
131
- "ˮ" => "¨",
3
+ module Cyrillic
4
+ module Iso9
5
+ CHARACTER_TABLE = {
6
+ "А" => "A",
7
+ "Ӓ" => "Ä",
8
+ "Ӓ̄" => "Ạ̈",
9
+ "Ӑ" => "Ă",
10
+ "А̄" => "Ā",
11
+ "Ӕ" => "Æ",
12
+ "А́" => "Á",
13
+ "А̊" => "Å",
14
+ "Б" => "B",
15
+ "В" => "V",
16
+ "Г" => "G",
17
+ "Ѓ" => "Ǵ",
18
+ "Ғ" => "Ġ",
19
+ "Ҕ" => "Ğ",
20
+ "Һ" => "",
21
+ "Д" => "D",
22
+ "Ђ" => "Đ",
23
+ "Е" => "E",
24
+ "Ӗ" => "Ĕ",
25
+ "Ё" => "Ë",
26
+ "Є" => "Ê",
27
+ "Ж" => "Ž",
28
+ "Җ" => "Ž̦",
29
+ "Ӝ" => "Z̄",
30
+ "Ӂ" => "Z̆",
31
+ "З" => "Z",
32
+ "Ӟ" => "",
33
+ "Ӡ" => "Ź",
34
+ "Ѕ" => "",
35
+ "И" => "I",
36
+ "Ӣ" => "Ī",
37
+ "И́" => "Í",
38
+ "Ӥ" => "Î",
39
+ "Й" => "J",
40
+ "І" => "Ì",
41
+ "Ї" => "Ï",
42
+ "І̄" => "Ǐ",
43
+ "Ј" => "",
44
+ "Ј̵" => "",
45
+ "К" => "K",
46
+ "Ќ" => "",
47
+ "Ӄ" => "",
48
+ "Ҝ" => "K̂",
49
+ "Ҡ" => "Ǩ",
50
+ "Ҟ" => "K̄",
51
+ "Қ" => "",
52
+ "К̨" => "",
53
+ "Ԛ" => "Q",
54
+ "Л" => "L",
55
+ "Љ" => "",
56
+ "Ԡ" => "",
57
+ "М" => "M",
58
+ "Н" => "N",
59
+ "Њ" => "",
60
+ "Ң" => "",
61
+ "Ӊ" => "",
62
+ "Ҥ" => "",
63
+ "Ԋ" => "Ǹ",
64
+ "Ԣ" => "Ń",
65
+ "Ӈ" => "Ň",
66
+ "Н̄" => "",
67
+ "О" => "O",
68
+ "Ӧ" => "Ö",
69
+ "Ө" => "Ô",
70
+ "Ӫ" => "Ő",
71
+ "Ӧ̄" => "Ọ̈",
72
+ "Ҩ" => "Ò",
73
+ "О́" => "Ó",
74
+ "О̄" => "Ō",
75
+ "Œ" => "Œ",
76
+ "П" => "P",
77
+ "Ҧ" => "",
78
+ "Ԥ" => "",
79
+ "Р" => "R",
80
+ "С" => "S",
81
+ "Ҫ" => "Ș",
82
+ "С̀" => "",
83
+ "Т" => "T",
84
+ "Ћ" => "Ć",
85
+ "Ԏ" => "",
86
+ "Т̌" => "Ť",
87
+ "Ҭ" => "Ț",
88
+ "У" => "U",
89
+ "Ӱ" => "Ü",
90
+ "Ӯ" => "Ū",
91
+ "Ў" => "Ŭ",
92
+ "Ӳ" => "Ű",
93
+ "У́" => "Ú",
94
+ "Ү" => "Ù",
95
+ "Ұ" => "",
96
+ "Ӱ̄" => "Ụ̄",
97
+ "Ԝ" => "W",
98
+ "Ф" => "F",
99
+ "Х" => "H",
100
+ "Ҳ" => "",
101
+ "Ц" => "C",
102
+ "Ҵ" => "",
103
+ "Џ" => "",
104
+ "Ч" => "Č",
105
+ "Ҷ" => "C̦",
106
+ "Ӌ" => "C̣",
107
+ "Ӵ" => "",
108
+ "Ҹ" => "Ĉ",
109
+ "Ч̀" => "C̀",
110
+ "Ҽ" => "C̆",
111
+ "Ҿ" => "C̨̆",
112
+ "Ш" => "Š",
113
+ "Щ" => "Ŝ",
114
+ "Ъ" => "ʺ",
115
+ "Ы" => "Y",
116
+ "Ӹ" => "Ÿ",
117
+ "Ы̄" => "Ȳ",
118
+ "Ь" => "ʹ",
119
+ "Э" => "È",
120
+ "Ә" => "",
121
+ "Ӛ" => "À",
122
+ "Ю" => "Û",
123
+ "Ю̄" => "Û̄",
124
+ "Я" => "Â",
125
+ "Ґ" => "",
126
+ "Ѣ" => "Ě",
127
+ "Ѫ" => "Ǎ",
128
+ "Ѳ" => "",
129
+ "Ѵ" => "",
130
+ "Ӏ" => "",
131
+ "ʼ" => "`",
132
+ "ˮ" => "¨",
132
133
 
133
- "а" => "a",
134
- "ӓ" => "ä",
135
- "ӓ̄" => "ạ̈",
136
- "ӑ" => "ă",
137
- "а̄" => "ā",
138
- "ӕ" => "æ",
139
- "а́" => "á",
140
- "а̊" => "å",
141
- "б" => "b",
142
- "в" => "v",
143
- "г" => "g",
144
- "ѓ" => "ǵ",
145
- "ғ" => "ġ",
146
- "ҕ" => "ğ",
147
- "һ" => "ḥ",
148
- "д" => "d",
149
- "ђ" => "đ",
150
- "е" => "e",
151
- "ӗ" => "ĕ",
152
- "ё" => "ë",
153
- "є" => "ê",
154
- "ж" => "ž",
155
- "җ" => "ž̦",
156
- "ӝ" => "z̄",
157
- "ӂ" => "z̆",
158
- "з" => "z",
159
- "ӟ" => "z̈",
160
- "ӡ" => "ź",
161
- "ѕ" => "ẑ",
162
- "и" => "i",
163
- "ӣ" => "ī",
164
- "и́" => "í",
165
- "ӥ" => "î",
166
- "й" => "j",
167
- "і" => "ì",
168
- "ї" => "ï",
169
- "і̄" => "ǐ",
170
- "ј" => "ǰ",
171
- "ј̵" => "j́",
172
- "к" => "k",
173
- "ќ" => "ḱ",
174
- "ӄ" => "ḳ",
175
- "ҝ" => "k̂",
176
- "ҡ" => "ǩ",
177
- "ҟ" => "k̄",
178
- "қ" => "k̦",
179
- "к̨" => "k̀",
180
- "ԛ" => "q",
181
- "л" => "l",
182
- "љ" => "l̂",
183
- "ԡ" => "l̦",
184
- "м" => "m",
185
- "н" => "n",
186
- "њ" => "n̂",
187
- "ң" => "n̦",
188
- "ӊ" => "ṇ",
189
- "ҥ" => "ṅ",
190
- "ԋ" => "ǹ",
191
- "ԣ" => "ń",
192
- "ӈ" => "ň",
193
- "н̄" => "n̄",
194
- "о" => "o",
195
- "ӧ" => "ö",
196
- "ө" => "ô",
197
- "ӫ" => "ő",
198
- "ӧ̄" => "ọ̈",
199
- "ҩ" => "ò",
200
- "о́" => "ó",
201
- "о̄" => "ō",
202
- "œ" => "œ",
203
- "п" => "p",
204
- "ҧ" => "ṕ",
205
- "ԥ" => "p̀",
206
- "р" => "r",
207
- "с" => "s",
208
- "ҫ" => "ș",
209
- "с̀" => "s̀",
210
- "т" => "t",
211
- "ћ" => "ć",
212
- "ԏ" => "t̀",
213
- "т̌" => "ť",
214
- "ҭ" => "ț",
215
- "у" => "u",
216
- "ӱ" => "ü",
217
- "ӯ" => "ū",
218
- "ў" => "ŭ",
219
- "ӳ" => "ű",
220
- "у́" => "ú",
221
- "ӱ̄" => "ụ̈",
222
- "ү" => "ù",
223
- "ұ" => "",
224
- "ӱ̄" => "ụ̄",
225
- "ԝ" => "w",
226
- "ф" => "f",
227
- "х" => "h",
228
- "ҳ" => "",
229
- "ц" => "c",
230
- "ҵ" => "",
231
- "џ" => "",
232
- "ч" => "č",
233
- "ҷ" => "c̦",
234
- "ӌ" => "c̣",
235
- "ӵ" => "",
236
- "ҹ" => "ĉ",
237
- "ч̀" => "c̀",
238
- "ҽ" => "c̆",
239
- "ҿ" => "c̨̆",
240
- "ш" => "š",
241
- "щ" => "ŝ",
242
- "ъ" => "ʺ",
243
- "ы" => "y",
244
- "ӹ" => "ÿ",
245
- "ы̄" => "ȳ",
246
- "ь" => "ʹ",
247
- "э" => "è",
248
- "ә" => "",
249
- "ӛ" => "à",
250
- "ю" => "û",
251
- "ю̄" => "û̄",
252
- "я" => "â",
253
- "ґ" => "",
254
- "ѣ" => "ě",
255
- "ѫ" => "ǎ",
256
- "ѳ" => "",
257
- "ѵ" => "",
258
- "ӏ" => "‡"
259
- }
134
+ "а" => "a",
135
+ "ӓ" => "ä",
136
+ "ӓ̄" => "ạ̈",
137
+ "ӑ" => "ă",
138
+ "а̄" => "ā",
139
+ "ӕ" => "æ",
140
+ "а́" => "á",
141
+ "а̊" => "å",
142
+ "б" => "b",
143
+ "в" => "v",
144
+ "г" => "g",
145
+ "ѓ" => "ǵ",
146
+ "ғ" => "ġ",
147
+ "ҕ" => "ğ",
148
+ "һ" => "ḥ",
149
+ "д" => "d",
150
+ "ђ" => "đ",
151
+ "е" => "e",
152
+ "ӗ" => "ĕ",
153
+ "ё" => "ë",
154
+ "є" => "ê",
155
+ "ж" => "ž",
156
+ "җ" => "ž̦",
157
+ "ӝ" => "z̄",
158
+ "ӂ" => "z̆",
159
+ "з" => "z",
160
+ "ӟ" => "z̈",
161
+ "ӡ" => "ź",
162
+ "ѕ" => "ẑ",
163
+ "и" => "i",
164
+ "ӣ" => "ī",
165
+ "и́" => "í",
166
+ "ӥ" => "î",
167
+ "й" => "j",
168
+ "і" => "ì",
169
+ "ї" => "ï",
170
+ "і̄" => "ǐ",
171
+ "ј" => "ǰ",
172
+ "ј̵" => "j́",
173
+ "к" => "k",
174
+ "ќ" => "ḱ",
175
+ "ӄ" => "ḳ",
176
+ "ҝ" => "k̂",
177
+ "ҡ" => "ǩ",
178
+ "ҟ" => "k̄",
179
+ "қ" => "k̦",
180
+ "к̨" => "k̀",
181
+ "ԛ" => "q",
182
+ "л" => "l",
183
+ "љ" => "l̂",
184
+ "ԡ" => "l̦",
185
+ "м" => "m",
186
+ "н" => "n",
187
+ "њ" => "n̂",
188
+ "ң" => "n̦",
189
+ "ӊ" => "ṇ",
190
+ "ҥ" => "ṅ",
191
+ "ԋ" => "ǹ",
192
+ "ԣ" => "ń",
193
+ "ӈ" => "ň",
194
+ "н̄" => "n̄",
195
+ "о" => "o",
196
+ "ӧ" => "ö",
197
+ "ө" => "ô",
198
+ "ӫ" => "ő",
199
+ "ӧ̄" => "ọ̈",
200
+ "ҩ" => "ò",
201
+ "о́" => "ó",
202
+ "о̄" => "ō",
203
+ "œ" => "œ",
204
+ "п" => "p",
205
+ "ҧ" => "ṕ",
206
+ "ԥ" => "p̀",
207
+ "р" => "r",
208
+ "с" => "s",
209
+ "ҫ" => "ș",
210
+ "с̀" => "s̀",
211
+ "т" => "t",
212
+ "ћ" => "ć",
213
+ "ԏ" => "t̀",
214
+ "т̌" => "ť",
215
+ "ҭ" => "ț",
216
+ "у" => "u",
217
+ "ӱ" => "ü",
218
+ "ӯ" => "ū",
219
+ "ў" => "ŭ",
220
+ "ӳ" => "ű",
221
+ "у́" => "ú",
222
+ "ү" => "ù",
223
+ "ұ" => "",
224
+ "ӱ̄" => "ụ̄",
225
+ "ԝ" => "w",
226
+ "ф" => "f",
227
+ "х" => "h",
228
+ "ҳ" => "h̦",
229
+ "ц" => "c",
230
+ "ҵ" => "c̄",
231
+ "џ" => "",
232
+ "ч" => "č",
233
+ "ҷ" => "",
234
+ "ӌ" => "c̣",
235
+ "ӵ" => "c̈",
236
+ "ҹ" => "ĉ",
237
+ "ч̀" => "",
238
+ "ҽ" => "c̆",
239
+ "ҿ" => "c̨̆",
240
+ "ш" => "š",
241
+ "щ" => "ŝ",
242
+ "ъ" => "ʺ",
243
+ "ы" => "y",
244
+ "ӹ" => "ÿ",
245
+ "ы̄" => "ȳ",
246
+ "ь" => "ʹ",
247
+ "э" => "è",
248
+ "ә" => "",
249
+ "ӛ" => "à",
250
+ "ю" => "û",
251
+ "ю̄" => "û̄",
252
+ "я" => "â",
253
+ "ґ" => "",
254
+ "ѣ" => "ě",
255
+ "ѫ" => "ǎ",
256
+ "ѳ" => "",
257
+ "ѵ" => "",
258
+ "ӏ" => ""
259
+ }.freeze
260
260
 
261
+ REGEXP = Regexp.union(CHARACTER_TABLE.keys).freeze
262
+ end
261
263
  end
264
+
265
+ Iso9 = Cyrillic::Iso9 unless defined?(Iso9)
@@ -1,8 +1,13 @@
1
- module Mongolian
1
+ # frozen_string_literal: true
2
2
 
3
- k = %w(А Б В Г Д Е Ё Ж З И Й К Л М Н О Ө П Р С Т У Ү Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я а б в г д е ё ж з и й к л м н о ө п р с т у ү ф х ц ч ш щ ъ ы ь э ю я)
4
- v = %w(A B V G D Ye Yo J Z I I K L M N O O P R S T U U F Kh Ts Ch Sh Sh I Y I E Yu Ya a b v g d ye yo j z i i k l m n o o p r s t u u f kh ts ch sh sh i y i e yu ya)
5
-
6
- CHARACTER_TABLE = Hash[k.zip(v)]
3
+ module Cyrillic
4
+ module Mongolian
5
+ k = %w[А Б В Г Д Е Ё Ж З И Й К Л М Н О Ө П Р С Т У Ү Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я а б в г д е ё ж з и й к л м н о ө п р с т у ү ф х ц ч ш щ ъ ы ь э ю я].freeze
6
+ v = %w[A B V G D Ye Yo J Z I I K L M N O O P R S T U U F Kh Ts Ch Sh Sh I Y I E Yu Ya a b v g d ye yo j z i i k l m n o o p r s t u u f kh ts ch sh sh i y i e yu ya].freeze
7
7
 
8
+ CHARACTER_TABLE = k.zip(v).to_h.freeze
9
+ REGEXP = Regexp.union(CHARACTER_TABLE.keys).freeze
10
+ end
8
11
  end
12
+
13
+ Mongolian = Cyrillic::Mongolian unless defined?(Mongolian)