prose 0.0.1 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +5 -5
  2. data/lib/prose.rb +41 -19
  3. data/lib/prose/prose.yaml +390 -141
  4. metadata +7 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 09b137dde0e95e9308ecdc067bf4fd562a9b1526
4
- data.tar.gz: 8cf9634b26218339d84eb677dfaea9432fdd9c36
2
+ SHA256:
3
+ metadata.gz: f802de09cd18bac9c0de3d7858b9fcee414022b71673aefa7163f3e44e91cb94
4
+ data.tar.gz: e2448e31f525824f29d013afe489d2307a8f27a19c865bcd6cc24267bacbc74d
5
5
  SHA512:
6
- metadata.gz: be87ec95d9bc12c36caa5d69d2192f88b9f02ed041f97fb186142c71e5a9d1f371d9ec60980ee520f8e928339182706e467aafbdbec6112c2cce433e20f74c03
7
- data.tar.gz: 220d5d89073e35e652d91e89d6a71845166d5679c5ac35777af0f80713c56d727be5a6516eb33c89515a2c095142c0945f22282b61b1fb04cb20806a4af15197
6
+ metadata.gz: aa9ca1ee7fd2baa9b72fe6d5b5d3e5f6397bda4cc6c6a0fb8d78199542efae258cca946ee5114bcb936a5647d789f5a44603d510f9530e4a46186c7e7579b907
7
+ data.tar.gz: adcb37ec8542fa31fdd82d1e8b690adbec9119cdb94e992b3d5b6051a7d36c35f1238fd0a077c19805621ed83a5c0197d41011ccc691426c5650aaa90d0f5a74
@@ -1,35 +1,57 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: true
3
+
2
4
  require 'yaml'
3
5
 
6
+ # Ruby string class
4
7
  class String
8
+ CHAR_CODES ||= YAML::load( File.open( "#{File.expand_path File.dirname(__FILE__)}/prose/prose.yaml" ) )
5
9
 
6
- def prose?
7
- find_languages_in(self)
10
+ def prose
11
+ find_origins_in(self)
8
12
  end
9
13
 
10
- private
14
+ CHAR_CODES['languages'].each do |language, ranges|
15
+ method_name = "#{language}?"
11
16
 
17
+ define_method(method_name) do
18
+ chars.map { |char| char_belongs_to_language?(char, ranges) }.include? true
19
+ end
12
20
 
13
- def unicode_ranges
14
- @ranges ||= YAML::load( File.open( "#{File.expand_path File.dirname(__FILE__)}/prose/prose.yaml" ) )
21
+ define_method("pure_#{method_name}") do
22
+ chars.map { |char| char_belongs_to_language?(char, ranges) }.uniq == [true]
23
+ end
15
24
  end
16
25
 
17
- def language_of letter
18
- result = []
19
- int_ordinal = letter.ord
20
- unicode_ranges.keys.each do |key|
21
- min, max = key.split("-")
22
- result << unicode_ranges[key] if (min.to_i(16) < int_ordinal) and (max.to_i(16) > int_ordinal)
23
- end
24
- return result
26
+ def char_in_range?(ordinal, range)
27
+ min_range, max_range = range.split('-')
28
+
29
+ (min_range.to_i(16) < ordinal) && (max_range.to_i(16) > ordinal)
30
+ end
31
+
32
+ def char_belongs_to_language?(char, language_ranges)
33
+ return true if char == ' '
34
+
35
+ language_ranges.map { |range| char_in_range?(char.ord, range) }.include? true
25
36
  end
26
37
 
27
- def find_languages_in word
28
- result = []
29
- word.split('').each do |letter|
30
- result += language_of(letter) if not letter == " "
38
+ def percentage_of(language)
39
+ total_languages = find_origins_in(self)
40
+
41
+ occurance_of_language = total_languages.count(language).to_f
42
+
43
+ ((occurance_of_language / total_languages.count.to_f) * 100.0).to_i
44
+ end
45
+
46
+ def languages_of(letter)
47
+ ranges = CHAR_CODES['ranges']
48
+
49
+ ranges.keys.map do |key|
50
+ ranges[key] if char_in_range?(letter.ord, key)
31
51
  end
32
- return result.uniq
33
52
  end
34
53
 
35
- end
54
+ def find_origins_in(word)
55
+ word.chars.map { |letter| languages_of(letter) unless letter.empty? }.flatten.compact.uniq
56
+ end
57
+ end
@@ -1,141 +1,390 @@
1
- 0590-05FF: hebrew
2
- FB00–FB4F: hebrew
3
- 00D00-0D7F: malayalam
4
- 0530-058F: armenian
5
- 2C80-2CFF: coptic
6
- 10800-1083F: cypriot
7
- 0400-04FF: cyrillic
8
- 0500-052F: cyrillic
9
- 2DE0-2DFF: cyrillic
10
- A640-A69F: cyrillic
11
- 10A0-10FF: georgian
12
- 2D00-2D2F: georgian
13
- 2C00-2C5F: glagolithic
14
- 10330-1034F: gothic
15
- 0370-03FF: greek
16
- 1F00-1FFF: greek
17
- 0000-007F: latin
18
- 0080-00FF: latin
19
- 0100-017F: latin
20
- 0180-024F: latin
21
- 2C60-2C7F: latin
22
- A720-A7FF: latin
23
- 1E00-1EFF: latin
24
- FB00-FB4F: latin
25
- FB00-FB4F: latin
26
- FF00-FFEF: latin
27
- 1680-169F: ogham
28
- 10300-1032F: old_italics
29
- 101D0-101FF: phaistos
30
- 16A0-16FF: runic
31
- 10450-1047F: shavian
32
- A6A0-A6FF: bamum
33
- 16800-16A3F: bamum
34
- 13000-1342F: egyptian_hieroglyphs
35
- 1200-137F: ethiopic
36
- 1380-139F: ethiopic
37
- 2D80-2DDF: ethiopic
38
- AB00-AB2F: ethiopic
39
- 109A0-109FF: meroitic_cursive
40
- 10980-1099F: meroitic_hieroglyphs
41
- 07C0-07FF: nko
42
- 10480-104AF: osmanya
43
- 2D30-2D7F: tifinagh
44
- A500-A63F: vai
45
- 0600-06FF: arabic
46
- 0750-077F: arabic
47
- 08A0-08FF: arabic
48
- FB50-FDFF: arabic
49
- FE70-FEFF: arabic
50
- 10840-1085F: aramic
51
- 10B00-10B3F: avestan
52
- 102A0-102DF: carian
53
- 12000-123FF: cuniform
54
- 12400-1247F: cuniform_numbers_punctuation
55
- 10280-1029F: lycian
56
- 1800-18AF: mongolian
57
- 0F00-0FFF: tibetan
58
- 0980-09FF: bengali_assamese
59
- 0A80-0AFF: gujarati
60
- 0C80-0CFF: kannada
61
- 0B00-0B7F: oriya
62
- 0B80-0BFF: tamil
63
- 0C00-0C7F: telugu
64
- 11000-1107F: brahmi
65
- 0900-097F: devanagari
66
- A8E0-A8FF: devanagari
67
- 103A0-103DF: old_persian
68
- 10380-1039F: ugaritic
69
- 10920-1093F: lydian
70
- 0840-085F: mandaic
71
- 10A60-10A7F: old_south_arabian
72
- 10B60-10B7F: pahlavi
73
- 10B40-10B5F: parthian
74
- 10900-1091F: phoenician
75
- 0800-083F: samaritan
76
- 0700-074F: syriac
77
- 10C00-10C4F: old_turkic
78
- A840-A87F: phags_pa
79
- 11100-1114F: chakma
80
- 0A00-0A7F: gurmukhi
81
- 11080-110CF: kaithi
82
- 10A00-10A5F: kharoshthi
83
- 1C00-1C4F: lepcha
84
- 1900-194F: limbu
85
- ABC0-ABFF: meetei_mayek
86
- AAE0-AAFF: meetei_mayek
87
- 1C50-1C7F: ol_chiki
88
- A880-A8DF: saurashtra
89
- 11180-111DF: sharada
90
- 0D80-0DFF: sinhala
91
- 110D0-110FF: sora_sompeng
92
- A800-A82F: syloti_nagri
93
- 11680-116CF: takri
94
- 0780-07BF: thaana
95
- 1CD0-1CFF: vedic
96
- 1B00-1B7F: balinese
97
- 1BC0-1BFF: batak
98
- 1A00-1A1F: buginese
99
- AA00-AA5F: cham
100
- A980-A9DF: javanese
101
- A900-A92F: kayah_li
102
- 1780-17FF: khmer
103
- 19E0-19FF: khmer
104
- 0E80-0EFF: lao
105
- 1000-109F: myanmar
106
- AA60-AA7F: myanmar
107
- 1980-19DF: new_tai_lue
108
- A930-A95F: rejang
109
- 1B80-1BBF: sudanese
110
- 1CC0-1CCF: sudanese
111
- 1950-197F: tai_le
112
- 1A20-1AAF: tai_tham
113
- AA80-AADF: tai_viet
114
- 0E00-0E7F: thai
115
- 1740-175F: buhid
116
- 1720-173F: hanunoo
117
- 1700-171F: tagalog
118
- 1760-177F: tagbanwa
119
- 3100-312F: bopomofo
120
- 31A0-31BF: bopomofo
121
- 1100-11FF: hangul_jamo
122
- A960-A97F: hangul_jamo
123
- D7B0-D7FF: hangul_jamo
124
- 3130-318F: hangul_jamo
125
- FF00-FFEF: hangul_jamo
126
- AC00-D7AF: hangul
127
- 3040-309F: hiragana
128
- 30A0-30FF: katakana
129
- 31F0-31FF: katakana
130
- FF00-FFEF: katakana
131
- 1B000-1B0FF: kana
132
- 3190-319F: kanbun
133
- A4D0-A4FF: lisu
134
- 16F00-16F9F: miao
135
- A000-A48F: yi
136
- A490-A4CF: yi
137
- 13A0-13FF: cherokee
138
- 10400-1044F: deseret
139
- 1400-167F: united_canadian_aborginal
140
- 18B0-18FF: united_canadian_aborginal
141
- #0000-007F: ASCII
1
+ languages:
2
+ CJK:
3
+ - 4E00–9FD5
4
+ hebrew:
5
+ - 0590-05FF
6
+ - FB00–FB4F
7
+ malayalam:
8
+ - 00D00-0D7F
9
+ armenian:
10
+ - 0530-058F
11
+ coptic:
12
+ - 2C80-2CFF
13
+ cypriot:
14
+ - 10800-1083F
15
+ cyrillic:
16
+ - 0400-04FF
17
+ - 0500-052F
18
+ - 2DE0-2DFF
19
+ - A640-A69F
20
+ georgian:
21
+ - 10A0-10FF
22
+ - 2D00-2D2F
23
+ glagolithic:
24
+ - 2C00-2C5F
25
+ gothic:
26
+ - 10330-1034F
27
+ greek:
28
+ - 0370-03FF
29
+ - 1F00-1FFF
30
+ latin:
31
+ - 0000-007F
32
+ - 0080-00FF
33
+ - 0100-017F
34
+ - 0180-024F
35
+ - 2C60-2C7F
36
+ - A720-A7FF
37
+ - 1E00-1EFF
38
+ - FB00-FB4F
39
+ - FB00-FB4F
40
+ - FF00-FFEF
41
+ ogham:
42
+ - 1680-169F
43
+ old_italics:
44
+ - 10300-1032F
45
+ phaistos:
46
+ - 101D0-101FF
47
+ runic:
48
+ - 16A0-16FF
49
+ shavian:
50
+ - 10450-1047F
51
+ bamum:
52
+ - A6A0-A6FF
53
+ - 16800-16A3F
54
+ egyptian_hieroglyphs:
55
+ - 13000-1342F
56
+ ethiopic:
57
+ - 1200-137F
58
+ - 1380-139F
59
+ - 2D80-2DDF
60
+ - AB00-AB2F
61
+ meroitic_cursive:
62
+ - 109A0-109FF
63
+ meroitic_hieroglyphs:
64
+ - 10980-1099F
65
+ nko:
66
+ - 07C0-07FF
67
+ osmanya:
68
+ - 10480-104AF
69
+ tifinagh:
70
+ - 2D30-2D7F
71
+ vai:
72
+ - A500-A63F
73
+ arabic:
74
+ - 0600-06FF
75
+ - 0750-077F
76
+ - 08A0-08FF
77
+ - FB50-FDFF
78
+ - FE70-FEFF
79
+ aramic:
80
+ - 10840-1085F
81
+ avestan:
82
+ - 10B00-10B3F
83
+ carian:
84
+ - 102A0-102DF
85
+ cuniform:
86
+ - 12000-123FF
87
+ cuniform_numbers_punctuation:
88
+ - 12400-1247F
89
+ lycian:
90
+ - 10280-1029F
91
+ mongolian:
92
+ - 1800-18AF
93
+ tibetan:
94
+ - 0F00-0FFF
95
+ bengali_assamese:
96
+ - 0980-09FF
97
+ gujarati:
98
+ - 0A80-0AFF
99
+ kannada:
100
+ - 0C80-0CFF
101
+ oriya:
102
+ - 0B00-0B7F
103
+ tamil:
104
+ - 0B80-0BFF
105
+ telugu:
106
+ - 0C00-0C7F
107
+ brahmi:
108
+ - 11000-1107F
109
+ devanagari:
110
+ - 0900-097F
111
+ - A8E0-A8FF
112
+ old_persian:
113
+ - 103A0-103DF
114
+ ugaritic:
115
+ - 10380-1039F
116
+ lydian:
117
+ - 10920-1093F
118
+ mandaic:
119
+ - 0840-085F
120
+ old_south_arabian:
121
+ - 10A60-10A7F
122
+ pahlavi:
123
+ - 10B60-10B7F
124
+ parthian:
125
+ - 10B40-10B5F
126
+ phoenician:
127
+ - 10900-1091F
128
+ samaritan:
129
+ - 0800-083F
130
+ syriac:
131
+ - 0700-074F
132
+ old_turkic:
133
+ - 10C00-10C4F
134
+ phags_pa:
135
+ - A840-A87F
136
+ chakma:
137
+ - 11100-1114F
138
+ gurmukhi:
139
+ - 0A00-0A7F
140
+ kaithi:
141
+ - 11080-110CF
142
+ kharoshthi:
143
+ - 10A00-10A5F
144
+ lepcha:
145
+ - 1C00-1C4F
146
+ limbu:
147
+ - 1900-194F
148
+ meetei_mayek:
149
+ - ABC0-ABFF
150
+ - AAE0-AAFF
151
+ ol_chiki:
152
+ - 1C50-1C7F
153
+ saurashtra:
154
+ - A880-A8DF
155
+ sharada:
156
+ - 11180-111DF
157
+ sinhala:
158
+ - 0D80-0DFF
159
+ sora_sompeng:
160
+ - 110D0-110FF
161
+ syloti_nagri:
162
+ - A800-A82F
163
+ takri:
164
+ - 11680-116CF
165
+ thaana:
166
+ - 0780-07BF
167
+ vedic:
168
+ - 1CD0-1CFF
169
+ balinese:
170
+ - 1B00-1B7F
171
+ batak:
172
+ - 1BC0-1BFF
173
+ buginese:
174
+ - 1A00-1A1F
175
+ cham:
176
+ - AA00-AA5F
177
+ javanese:
178
+ - A980-A9DF
179
+ kayah_li:
180
+ - A900-A92F
181
+ khmer:
182
+ - 1780-17FF
183
+ - 19E0-19FF
184
+ lao:
185
+ - 0E80-0EFF
186
+ myanmar:
187
+ - 1000-109F
188
+ - AA60-AA7F
189
+ new_tai_lue:
190
+ - 1980-19DF
191
+ rejang:
192
+ - A930-A95F
193
+ sudanese:
194
+ - 1B80-1BBF
195
+ - 1CC0-1CCF
196
+ tai_le:
197
+ - 1950-197F
198
+ tai_tham:
199
+ - 1A20-1AAF
200
+ tai_viet:
201
+ - AA80-AADF
202
+ thai:
203
+ - 0E00-0E7F
204
+ buhid:
205
+ - 1740-175F
206
+ hanunoo:
207
+ - 1720-173F
208
+ tagalog:
209
+ - 1700-171F
210
+ tagbanwa:
211
+ - 1760-177F
212
+ bopomofo:
213
+ - 3100-312F
214
+ - 31A0-31BF
215
+ hangul_jamo:
216
+ - 1100-11FF
217
+ - A960-A97F
218
+ - D7B0-D7FF
219
+ - 3130-318F
220
+ - FF00-FFEF
221
+ hangul:
222
+ - AC00-D7AF
223
+ hiragana:
224
+ - 3040-309F
225
+ katakana:
226
+ - 30A0-30FF
227
+ - 31F0-31FF
228
+ - FF00-FFEF
229
+ kana:
230
+ - 1B000-1B0FF
231
+ kanbun:
232
+ - 3190-319F
233
+ lisu:
234
+ - A4D0-A4FF
235
+ miao:
236
+ - 16F00-16F9F
237
+ yi:
238
+ - A000-A48F
239
+ - A490-A4CF
240
+ cherokee:
241
+ - 13A0-13FF
242
+ deseret:
243
+ - 10400-1044F
244
+ united_canadian_aborginal:
245
+ - 1400-167F
246
+ - 18B0-18FF
247
+
248
+ # Reverse of languages data
249
+ ranges:
250
+ 4E00–9FD5: CJK
251
+ 0590-05FF: hebrew
252
+ FB00–FB4F: hebrew
253
+ 00D00-0D7F: malayalam
254
+ 0530-058F: armenian
255
+ 2C80-2CFF: coptic
256
+ 10800-1083F: cypriot
257
+ 0400-04FF: cyrillic
258
+ 0500-052F: cyrillic
259
+ 2DE0-2DFF: cyrillic
260
+ A640-A69F: cyrillic
261
+ 10A0-10FF: georgian
262
+ 2D00-2D2F: georgian
263
+ 2C00-2C5F: glagolithic
264
+ 10330-1034F: gothic
265
+ 0370-03FF: greek
266
+ 1F00-1FFF: greek
267
+ 0000-007F: latin
268
+ 0080-00FF: latin
269
+ 0100-017F: latin
270
+ 0180-024F: latin
271
+ 2C60-2C7F: latin
272
+ A720-A7FF: latin
273
+ 1E00-1EFF: latin
274
+ FB00-FB4F: latin
275
+ FB00-FB4F: latin
276
+ FF00-FFEF: latin
277
+ 1680-169F: ogham
278
+ 10300-1032F: old_italics
279
+ 101D0-101FF: phaistos
280
+ 16A0-16FF: runic
281
+ 10450-1047F: shavian
282
+ A6A0-A6FF: bamum
283
+ 16800-16A3F: bamum
284
+ 13000-1342F: egyptian_hieroglyphs
285
+ 1200-137F: ethiopic
286
+ 1380-139F: ethiopic
287
+ 2D80-2DDF: ethiopic
288
+ AB00-AB2F: ethiopic
289
+ 109A0-109FF: meroitic_cursive
290
+ 10980-1099F: meroitic_hieroglyphs
291
+ 07C0-07FF: nko
292
+ 10480-104AF: osmanya
293
+ 2D30-2D7F: tifinagh
294
+ A500-A63F: vai
295
+ 0600-06FF: arabic
296
+ 0750-077F: arabic
297
+ 08A0-08FF: arabic
298
+ FB50-FDFF: arabic
299
+ FE70-FEFF: arabic
300
+ 10840-1085F: aramic
301
+ 10B00-10B3F: avestan
302
+ 102A0-102DF: carian
303
+ 12000-123FF: cuniform
304
+ 12400-1247F: cuniform_numbers_punctuation
305
+ 10280-1029F: lycian
306
+ 1800-18AF: mongolian
307
+ 0F00-0FFF: tibetan
308
+ 0980-09FF: bengali_assamese
309
+ 0A80-0AFF: gujarati
310
+ 0C80-0CFF: kannada
311
+ 0B00-0B7F: oriya
312
+ 0B80-0BFF: tamil
313
+ 0C00-0C7F: telugu
314
+ 11000-1107F: brahmi
315
+ 0900-097F: devanagari
316
+ A8E0-A8FF: devanagari
317
+ 103A0-103DF: old_persian
318
+ 10380-1039F: ugaritic
319
+ 10920-1093F: lydian
320
+ 0840-085F: mandaic
321
+ 10A60-10A7F: old_south_arabian
322
+ 10B60-10B7F: pahlavi
323
+ 10B40-10B5F: parthian
324
+ 10900-1091F: phoenician
325
+ 0800-083F: samaritan
326
+ 0700-074F: syriac
327
+ 10C00-10C4F: old_turkic
328
+ A840-A87F: phags_pa
329
+ 11100-1114F: chakma
330
+ 0A00-0A7F: gurmukhi
331
+ 11080-110CF: kaithi
332
+ 10A00-10A5F: kharoshthi
333
+ 1C00-1C4F: lepcha
334
+ 1900-194F: limbu
335
+ ABC0-ABFF: meetei_mayek
336
+ AAE0-AAFF: meetei_mayek
337
+ 1C50-1C7F: ol_chiki
338
+ A880-A8DF: saurashtra
339
+ 11180-111DF: sharada
340
+ 0D80-0DFF: sinhala
341
+ 110D0-110FF: sora_sompeng
342
+ A800-A82F: syloti_nagri
343
+ 11680-116CF: takri
344
+ 0780-07BF: thaana
345
+ 1CD0-1CFF: vedic
346
+ 1B00-1B7F: balinese
347
+ 1BC0-1BFF: batak
348
+ 1A00-1A1F: buginese
349
+ AA00-AA5F: cham
350
+ A980-A9DF: javanese
351
+ A900-A92F: kayah_li
352
+ 1780-17FF: khmer
353
+ 19E0-19FF: khmer
354
+ 0E80-0EFF: lao
355
+ 1000-109F: myanmar
356
+ AA60-AA7F: myanmar
357
+ 1980-19DF: new_tai_lue
358
+ A930-A95F: rejang
359
+ 1B80-1BBF: sudanese
360
+ 1CC0-1CCF: sudanese
361
+ 1950-197F: tai_le
362
+ 1A20-1AAF: tai_tham
363
+ AA80-AADF: tai_viet
364
+ 0E00-0E7F: thai
365
+ 1740-175F: buhid
366
+ 1720-173F: hanunoo
367
+ 1700-171F: tagalog
368
+ 1760-177F: tagbanwa
369
+ 3100-312F: bopomofo
370
+ 31A0-31BF: bopomofo
371
+ 1100-11FF: hangul_jamo
372
+ A960-A97F: hangul_jamo
373
+ D7B0-D7FF: hangul_jamo
374
+ 3130-318F: hangul_jamo
375
+ FF00-FFEF: hangul_jamo
376
+ AC00-D7AF: hangul
377
+ 3040-309F: hiragana
378
+ 30A0-30FF: katakana
379
+ 31F0-31FF: katakana
380
+ FF00-FFEF: katakana
381
+ 1B000-1B0FF: kana
382
+ 3190-319F: kanbun
383
+ A4D0-A4FF: lisu
384
+ 16F00-16F9F: miao
385
+ A000-A48F: yi
386
+ A490-A4CF: yi
387
+ 13A0-13FF: cherokee
388
+ 10400-1044F: deseret
389
+ 1400-167F: united_canadian_aborginal
390
+ 18B0-18FF: united_canadian_aborginal
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prose
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Edwin Rozario
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-01 00:00:00.000000000 Z
11
+ date: 2014-08-18 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description: Identifies language of alphabets in a string
13
+ description: Language detector
14
14
  email:
15
15
  - rozarioed@gmail.com
16
16
  executables: []
@@ -28,18 +28,17 @@ require_paths:
28
28
  - lib
29
29
  required_ruby_version: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  required_rubygems_version: !ruby/object:Gem::Requirement
35
35
  requirements:
36
- - - '>='
36
+ - - ">="
37
37
  - !ruby/object:Gem::Version
38
38
  version: '0'
39
39
  requirements: []
40
- rubyforge_project:
41
- rubygems_version: 2.2.0
40
+ rubygems_version: 3.0.3
42
41
  signing_key:
43
42
  specification_version: 4
44
- summary: Identify language string
43
+ summary: Language detector
45
44
  test_files: []