iso639 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
data/.travis.yml ADDED
@@ -0,0 +1,8 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.3
5
+ - jruby-18mode
6
+ - jruby-19mode
7
+ - rbx-18mode
8
+ - rbx-19mode
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in iso639.gemspec
4
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2012 Ryan McGeary
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,98 @@
1
+ # iso639 [![Build Status](https://travis-ci.org/rmm5t/iso639.png?branch=master)](https://travis-ci.org/rmm5t/iso639)
2
+
3
+ The iso639 gem provides convenience methods for looking up ISO-639-1 or
4
+ ISO-639-2 language codes by their english name, 2-char, or 3-char counterpart
5
+
6
+ ## Installation
7
+
8
+ Add this line to your application's Gemfile:
9
+
10
+ ```ruby
11
+ gem "iso639"
12
+ ```
13
+
14
+ And then execute:
15
+
16
+ ```bash
17
+ $ bundle
18
+ ```
19
+
20
+ Or install it yourself as:
21
+
22
+ ```bash
23
+ $ gem install iso639
24
+ ```
25
+
26
+ ## Usage
27
+
28
+ ```ruby
29
+ require "iso639"
30
+
31
+ # Lookup by alpha-2 codes
32
+ Iso639["en"] # => #<Iso639::Language:...>
33
+ Iso639["en"].alpha2 # => "en"
34
+ Iso639["en"].alpha3 # => "eng"
35
+ Iso639["en"].alpha3_bibliographic # => "eng"
36
+ Iso639["en"].alpha3_terminology # => nil
37
+ Iso639["en"].name # => "English"
38
+ Iso639["en"].english_name # => "English"
39
+ Iso639["en"].french_name # => "anglais"
40
+
41
+ # Lookup by alpha-3-bibliographic codes
42
+ Iso639["fre"] # => #<Iso639::Language:...>
43
+ Iso639["fre"].alpha2 # => "fr"
44
+ Iso639["fre"].alpha3 # => "fre"
45
+ Iso639["fre"].alpha3_bibliographic # => "fre"
46
+ Iso639["fre"].alpha3_terminology # => "fra"
47
+ Iso639["fre"].name # => "French"
48
+ Iso639["fre"].english_name # => "French"
49
+ Iso639["fre"].french_name # => "français"
50
+
51
+ # Lookup by alpha-3-terminology codes
52
+ Iso639["fra"] # => #<Iso639::Language:...>
53
+ Iso639["fra"].alpha2 # => "fr"
54
+ Iso639["fra"].alpha3 # => "fre"
55
+ Iso639["fra"].alpha3_bibliographic # => "fre"
56
+ Iso639["fra"].alpha3_terminology # => "fra"
57
+ Iso639["fra"].name # => "French"
58
+ Iso639["fra"].english_name # => "French"
59
+ Iso639["fra"].french_name # => "français"
60
+
61
+ # Lookup by name
62
+ Iso639["German"] # => #<Iso639::Language:...>
63
+ Iso639["German"].alpha2 # => "de"
64
+ Iso639["German"].alpha3 # => "ger"
65
+ Iso639["German"].alpha3_bibliographic # => "ger"
66
+ Iso639["German"].alpha3_terminology # => "deu"
67
+ Iso639["German"].name # => "German"
68
+ Iso639["German"].english_name # => "German"
69
+ Iso639["German"].french_name # => "allemand"
70
+
71
+ # Retrieve alpha-2 codes
72
+ Iso639["English"].alpha2 # => "en"
73
+ Iso639["fre"].alpha2 # => "fr"
74
+ Iso639["deu"].alpha2 # => "de"
75
+ Iso639["pl"].alpha2 # => "pl"
76
+
77
+ # Retrieve alpha-3 codes
78
+ Iso639["english"].alpha3 # => "eng"
79
+ Iso639["fr"].alpha3 # => "fre"
80
+ Iso639["ger"].alpha3 # => "ger"
81
+
82
+ # Retrieve names
83
+ Iso639["eng"].name # => "English"
84
+ Iso639["fr"].name # => "French"
85
+ Iso639["de"].name # => "German"
86
+ Iso639["deu"].name # => "German"
87
+ Iso639["ger"].name # => "German"
88
+ Iso639["german"].name # => "German"
89
+ Iso639["GeRmAn"].name # => "German"
90
+ ```
91
+
92
+ ## Contributing
93
+
94
+ 1. Fork it
95
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
96
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
97
+ 4. Push to the branch (`git push origin my-new-feature`)
98
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,10 @@
1
+ require "rake/testtask"
2
+ require "bundler/gem_tasks"
3
+
4
+ desc "Default: run unit tests."
5
+ task :default => :test
6
+
7
+ Rake::TestTask.new do |t|
8
+ t.libs << "lib" << "test"
9
+ t.pattern = "test/**/*_test.rb"
10
+ end
data/iso639.gemspec ADDED
@@ -0,0 +1,23 @@
1
+ # -*- encoding: utf-8 -*-
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'iso639/version'
5
+
6
+ Gem::Specification.new do |gem|
7
+ gem.name = "iso639"
8
+ gem.version = Iso639::VERSION
9
+ gem.authors = ["Ryan McGeary"]
10
+ gem.email = ["ryan@mcgeary.org"]
11
+ gem.description = %q{ISO 639-1 and ISO 639-2 lookups by name, alpha-2 code, or alpha-3 code}
12
+ gem.summary = gem.description
13
+ gem.homepage = "https://github.com/rmm5t/iso639"
14
+
15
+ gem.files = `git ls-files`.split($/)
16
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
17
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
+ gem.require_paths = ["lib"]
19
+
20
+ gem.add_development_dependency "minitest", "~> 4.3"
21
+ gem.add_development_dependency "minitest-emoji", "~> 1.0"
22
+ gem.add_development_dependency "rake", "~> 10.0"
23
+ end
data/lib/iso639.rb ADDED
@@ -0,0 +1,80 @@
1
+ require "iso639/version"
2
+ require "iso639/insensitive_hash"
3
+
4
+ # Public: Various methods useful for performing ISO-639 language code lookup
5
+ # either given their ISO-639-1 or ISO-639-2 character code value or from human
6
+ # input.
7
+ #
8
+ # Examples
9
+ #
10
+ # Iso639["en"] # => #<Iso639::Language:...>
11
+ # Iso639["en"].alpha2 # => "en"
12
+ # Iso639["en"].alpha3 # => "eng"
13
+ # Iso639["en"].alpha3_bibliographic # => "eng"
14
+ # Iso639["en"].alpha3_terminology # => nil
15
+ # Iso639["en"].name # => "English"
16
+ # Iso639["en"].english_name # => "English"
17
+ # Iso639["en"].french_name # => "anglais"
18
+ #
19
+ # Iso639["German"] # => #<Iso639::Language:...>
20
+ # Iso639["German"].alpha2 # => "de"
21
+ # Iso639["German"].alpha3 # => "ger"
22
+ # Iso639["German"].alpha3_bibliographic # => "ger"
23
+ # Iso639["German"].alpha3_terminology # => "deu"
24
+ # Iso639["German"].name # => "German"
25
+ # Iso639["German"].english_name # => "German"
26
+ # Iso639["German"].french_name # => "allemand"
27
+ module Iso639
28
+ class Language
29
+ attr_reader :alpha3_bibliographic, :alpha3_terminology, :alpha2, :english_name, :french_name
30
+ alias_method :alpha3, :alpha3_bibliographic
31
+ alias_method :name, :english_name
32
+
33
+ # Public: Initialize a Language.
34
+ #
35
+ # alpha3_bibliographic - A String representing the alpha-3 bibliographic code
36
+ # alpha3_terminology - A String representing the alpha-3 terminology code
37
+ # alpha2 - A String representing the alpha-2 code
38
+ # english_name - A String representing the English name
39
+ # french_name - A String representing the French name
40
+ def initialize(alpha3_bibliographic, alpha3_terminology, alpha2, english_name, french_name)
41
+ @alpha3_bibliographic = strip_to_nil(alpha3_bibliographic)
42
+ @alpha3_terminology = strip_to_nil(alpha3_terminology)
43
+ @alpha2 = strip_to_nil(alpha2)
44
+ @english_name = strip_to_nil(english_name)
45
+ @french_name = strip_to_nil(french_name)
46
+ end
47
+
48
+ private
49
+
50
+ def strip_to_nil(val)
51
+ val = val.strip if val
52
+ return val unless val.nil? || val.empty?
53
+ end
54
+ end
55
+
56
+ LanguagesByAlpha2 = InsensitiveHash.new
57
+ LanguagesByAlpha3Bibliographic = LanguagesByAlpha3 = InsensitiveHash.new
58
+ LanguagesByAlpha3Terminology = InsensitiveHash.new
59
+ LanguagesByEnglishName = LanguagesByName = InsensitiveHash.new
60
+ LanguagesByFrenchName = InsensitiveHash.new
61
+
62
+ iso639_file = File.expand_path(File.join("..", "iso639", "ISO-639-2_utf-8.txt"), __FILE__)
63
+ File.readlines(iso639_file, mode: "r:UTF-8").each do |line|
64
+ lang = Language.new *line.split("|")
65
+ LanguagesByAlpha2[lang.alpha2.downcase.strip] = lang if lang.alpha2
66
+ LanguagesByAlpha3[lang.alpha3.downcase.strip] = lang if lang.alpha3
67
+ LanguagesByAlpha3Terminology[lang.alpha3_terminology.downcase.strip] = lang if lang.alpha3_terminology
68
+ LanguagesByName[lang.name.downcase.strip] = lang if lang.name
69
+ LanguagesByFrenchName[lang.french_name.downcase.strip] = lang if lang.french_name
70
+ end
71
+
72
+ def self.[](alpha_code_or_name)
73
+ lookup = alpha_code_or_name.to_s.downcase.strip
74
+ LanguagesByAlpha2[lookup] ||
75
+ LanguagesByAlpha3Bibliographic[lookup] ||
76
+ LanguagesByAlpha3Terminology[lookup] ||
77
+ LanguagesByEnglishName[lookup] ||
78
+ LanguagesByFrenchName[lookup]
79
+ end
80
+ end
@@ -0,0 +1,485 @@
1
+ aar||aa|Afar|afar
2
+ abk||ab|Abkhazian|abkhaze
3
+ ace|||Achinese|aceh
4
+ ach|||Acoli|acoli
5
+ ada|||Adangme|adangme
6
+ ady|||Adyghe; Adygei|adyghé
7
+ afa|||Afro-Asiatic languages|afro-asiatiques, langues
8
+ afh|||Afrihili|afrihili
9
+ afr||af|Afrikaans|afrikaans
10
+ ain|||Ainu|aïnou
11
+ aka||ak|Akan|akan
12
+ akk|||Akkadian|akkadien
13
+ alb|sqi|sq|Albanian|albanais
14
+ ale|||Aleut|aléoute
15
+ alg|||Algonquian languages|algonquines, langues
16
+ alt|||Southern Altai|altai du Sud
17
+ amh||am|Amharic|amharique
18
+ ang|||English, Old (ca.450-1100)|anglo-saxon (ca.450-1100)
19
+ anp|||Angika|angika
20
+ apa|||Apache languages|apaches, langues
21
+ ara||ar|Arabic|arabe
22
+ arc|||Official Aramaic (700-300 BCE); Imperial Aramaic (700-300 BCE)|araméen d'empire (700-300 BCE)
23
+ arg||an|Aragonese|aragonais
24
+ arm|hye|hy|Armenian|arménien
25
+ arn|||Mapudungun; Mapuche|mapudungun; mapuche; mapuce
26
+ arp|||Arapaho|arapaho
27
+ art|||Artificial languages|artificielles, langues
28
+ arw|||Arawak|arawak
29
+ asm||as|Assamese|assamais
30
+ ast|||Asturian; Bable; Leonese; Asturleonese|asturien; bable; léonais; asturoléonais
31
+ ath|||Athapascan languages|athapascanes, langues
32
+ aus|||Australian languages|australiennes, langues
33
+ ava||av|Avaric|avar
34
+ ave||ae|Avestan|avestique
35
+ awa|||Awadhi|awadhi
36
+ aym||ay|Aymara|aymara
37
+ aze||az|Azerbaijani|azéri
38
+ bad|||Banda languages|banda, langues
39
+ bai|||Bamileke languages|bamiléké, langues
40
+ bak||ba|Bashkir|bachkir
41
+ bal|||Baluchi|baloutchi
42
+ bam||bm|Bambara|bambara
43
+ ban|||Balinese|balinais
44
+ baq|eus|eu|Basque|basque
45
+ bas|||Basa|basa
46
+ bat|||Baltic languages|baltes, langues
47
+ bej|||Beja; Bedawiyet|bedja
48
+ bel||be|Belarusian|biélorusse
49
+ bem|||Bemba|bemba
50
+ ben||bn|Bengali|bengali
51
+ ber|||Berber languages|berbères, langues
52
+ bho|||Bhojpuri|bhojpuri
53
+ bih||bh|Bihari languages|langues biharis
54
+ bik|||Bikol|bikol
55
+ bin|||Bini; Edo|bini; edo
56
+ bis||bi|Bislama|bichlamar
57
+ bla|||Siksika|blackfoot
58
+ bnt|||Bantu (Other)|bantoues, autres langues
59
+ bos||bs|Bosnian|bosniaque
60
+ bra|||Braj|braj
61
+ bre||br|Breton|breton
62
+ btk|||Batak languages|batak, langues
63
+ bua|||Buriat|bouriate
64
+ bug|||Buginese|bugi
65
+ bul||bg|Bulgarian|bulgare
66
+ bur|mya|my|Burmese|birman
67
+ byn|||Blin; Bilin|blin; bilen
68
+ cad|||Caddo|caddo
69
+ cai|||Central American Indian languages|amérindiennes de L'Amérique centrale, langues
70
+ car|||Galibi Carib|karib; galibi; carib
71
+ cat||ca|Catalan; Valencian|catalan; valencien
72
+ cau|||Caucasian languages|caucasiennes, langues
73
+ ceb|||Cebuano|cebuano
74
+ cel|||Celtic languages|celtiques, langues; celtes, langues
75
+ cha||ch|Chamorro|chamorro
76
+ chb|||Chibcha|chibcha
77
+ che||ce|Chechen|tchétchène
78
+ chg|||Chagatai|djaghataï
79
+ chi|zho|zh|Chinese|chinois
80
+ chk|||Chuukese|chuuk
81
+ chm|||Mari|mari
82
+ chn|||Chinook jargon|chinook, jargon
83
+ cho|||Choctaw|choctaw
84
+ chp|||Chipewyan; Dene Suline|chipewyan
85
+ chr|||Cherokee|cherokee
86
+ chu||cu|Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic|slavon d'église; vieux slave; slavon liturgique; vieux bulgare
87
+ chv||cv|Chuvash|tchouvache
88
+ chy|||Cheyenne|cheyenne
89
+ cmc|||Chamic languages|chames, langues
90
+ cop|||Coptic|copte
91
+ cor||kw|Cornish|cornique
92
+ cos||co|Corsican|corse
93
+ cpe|||Creoles and pidgins, English based|créoles et pidgins basés sur l'anglais
94
+ cpf|||Creoles and pidgins, French-based |créoles et pidgins basés sur le français
95
+ cpp|||Creoles and pidgins, Portuguese-based |créoles et pidgins basés sur le portugais
96
+ cre||cr|Cree|cree
97
+ crh|||Crimean Tatar; Crimean Turkish|tatar de Crimé
98
+ crp|||Creoles and pidgins |créoles et pidgins
99
+ csb|||Kashubian|kachoube
100
+ cus|||Cushitic languages|couchitiques, langues
101
+ cze|ces|cs|Czech|tchèque
102
+ dak|||Dakota|dakota
103
+ dan||da|Danish|danois
104
+ dar|||Dargwa|dargwa
105
+ day|||Land Dayak languages|dayak, langues
106
+ del|||Delaware|delaware
107
+ den|||Slave (Athapascan)|esclave (athapascan)
108
+ dgr|||Dogrib|dogrib
109
+ din|||Dinka|dinka
110
+ div||dv|Divehi; Dhivehi; Maldivian|maldivien
111
+ doi|||Dogri|dogri
112
+ dra|||Dravidian languages|dravidiennes, langues
113
+ dsb|||Lower Sorbian|bas-sorabe
114
+ dua|||Duala|douala
115
+ dum|||Dutch, Middle (ca.1050-1350)|néerlandais moyen (ca. 1050-1350)
116
+ dut|nld|nl|Dutch; Flemish|néerlandais; flamand
117
+ dyu|||Dyula|dioula
118
+ dzo||dz|Dzongkha|dzongkha
119
+ efi|||Efik|efik
120
+ egy|||Egyptian (Ancient)|égyptien
121
+ eka|||Ekajuk|ekajuk
122
+ elx|||Elamite|élamite
123
+ eng||en|English|anglais
124
+ enm|||English, Middle (1100-1500)|anglais moyen (1100-1500)
125
+ epo||eo|Esperanto|espéranto
126
+ est||et|Estonian|estonien
127
+ ewe||ee|Ewe|éwé
128
+ ewo|||Ewondo|éwondo
129
+ fan|||Fang|fang
130
+ fao||fo|Faroese|féroïen
131
+ fat|||Fanti|fanti
132
+ fij||fj|Fijian|fidjien
133
+ fil|||Filipino; Pilipino|filipino; pilipino
134
+ fin||fi|Finnish|finnois
135
+ fiu|||Finno-Ugrian languages|finno-ougriennes, langues
136
+ fon|||Fon|fon
137
+ fre|fra|fr|French|français
138
+ frm|||French, Middle (ca.1400-1600)|français moyen (1400-1600)
139
+ fro|||French, Old (842-ca.1400)|français ancien (842-ca.1400)
140
+ frr|||Northern Frisian|frison septentrional
141
+ frs|||Eastern Frisian|frison oriental
142
+ fry||fy|Western Frisian|frison occidental
143
+ ful||ff|Fulah|peul
144
+ fur|||Friulian|frioulan
145
+ gaa|||Ga|ga
146
+ gay|||Gayo|gayo
147
+ gba|||Gbaya|gbaya
148
+ gem|||Germanic languages|germaniques, langues
149
+ geo|kat|ka|Georgian|géorgien
150
+ ger|deu|de|German|allemand
151
+ gez|||Geez|guèze
152
+ gil|||Gilbertese|kiribati
153
+ gla||gd|Gaelic; Scottish Gaelic|gaélique; gaélique écossais
154
+ gle||ga|Irish|irlandais
155
+ glg||gl|Galician|galicien
156
+ glv||gv|Manx|manx; mannois
157
+ gmh|||German, Middle High (ca.1050-1500)|allemand, moyen haut (ca. 1050-1500)
158
+ goh|||German, Old High (ca.750-1050)|allemand, vieux haut (ca. 750-1050)
159
+ gon|||Gondi|gond
160
+ gor|||Gorontalo|gorontalo
161
+ got|||Gothic|gothique
162
+ grb|||Grebo|grebo
163
+ grc|||Greek, Ancient (to 1453)|grec ancien (jusqu'à 1453)
164
+ gre|ell|el|Greek, Modern (1453-)|grec moderne (après 1453)
165
+ grn||gn|Guarani|guarani
166
+ gsw|||Swiss German; Alemannic; Alsatian|suisse alémanique; alémanique; alsacien
167
+ guj||gu|Gujarati|goudjrati
168
+ gwi|||Gwich'in|gwich'in
169
+ hai|||Haida|haida
170
+ hat||ht|Haitian; Haitian Creole|haïtien; créole haïtien
171
+ hau||ha|Hausa|haoussa
172
+ haw|||Hawaiian|hawaïen
173
+ heb||he|Hebrew|hébreu
174
+ her||hz|Herero|herero
175
+ hil|||Hiligaynon|hiligaynon
176
+ him|||Himachali languages; Western Pahari languages|langues himachalis; langues paharis occidentales
177
+ hin||hi|Hindi|hindi
178
+ hit|||Hittite|hittite
179
+ hmn|||Hmong; Mong|hmong
180
+ hmo||ho|Hiri Motu|hiri motu
181
+ hrv||hr|Croatian|croate
182
+ hsb|||Upper Sorbian|haut-sorabe
183
+ hun||hu|Hungarian|hongrois
184
+ hup|||Hupa|hupa
185
+ iba|||Iban|iban
186
+ ibo||ig|Igbo|igbo
187
+ ice|isl|is|Icelandic|islandais
188
+ ido||io|Ido|ido
189
+ iii||ii|Sichuan Yi; Nuosu|yi de Sichuan
190
+ ijo|||Ijo languages|ijo, langues
191
+ iku||iu|Inuktitut|inuktitut
192
+ ile||ie|Interlingue; Occidental|interlingue
193
+ ilo|||Iloko|ilocano
194
+ ina||ia|Interlingua (International Auxiliary Language Association)|interlingua (langue auxiliaire internationale)
195
+ inc|||Indic languages|indo-aryennes, langues
196
+ ind||id|Indonesian|indonésien
197
+ ine|||Indo-European languages|indo-européennes, langues
198
+ inh|||Ingush|ingouche
199
+ ipk||ik|Inupiaq|inupiaq
200
+ ira|||Iranian languages|iraniennes, langues
201
+ iro|||Iroquoian languages|iroquoises, langues
202
+ ita||it|Italian|italien
203
+ jav||jv|Javanese|javanais
204
+ jbo|||Lojban|lojban
205
+ jpn||ja|Japanese|japonais
206
+ jpr|||Judeo-Persian|judéo-persan
207
+ jrb|||Judeo-Arabic|judéo-arabe
208
+ kaa|||Kara-Kalpak|karakalpak
209
+ kab|||Kabyle|kabyle
210
+ kac|||Kachin; Jingpho|kachin; jingpho
211
+ kal||kl|Kalaallisut; Greenlandic|groenlandais
212
+ kam|||Kamba|kamba
213
+ kan||kn|Kannada|kannada
214
+ kar|||Karen languages|karen, langues
215
+ kas||ks|Kashmiri|kashmiri
216
+ kau||kr|Kanuri|kanouri
217
+ kaw|||Kawi|kawi
218
+ kaz||kk|Kazakh|kazakh
219
+ kbd|||Kabardian|kabardien
220
+ kha|||Khasi|khasi
221
+ khi|||Khoisan languages|khoïsan, langues
222
+ khm||km|Central Khmer|khmer central
223
+ kho|||Khotanese; Sakan|khotanais; sakan
224
+ kik||ki|Kikuyu; Gikuyu|kikuyu
225
+ kin||rw|Kinyarwanda|rwanda
226
+ kir||ky|Kirghiz; Kyrgyz|kirghiz
227
+ kmb|||Kimbundu|kimbundu
228
+ kok|||Konkani|konkani
229
+ kom||kv|Komi|kom
230
+ kon||kg|Kongo|kongo
231
+ kor||ko|Korean|coréen
232
+ kos|||Kosraean|kosrae
233
+ kpe|||Kpelle|kpellé
234
+ krc|||Karachay-Balkar|karatchai balkar
235
+ krl|||Karelian|carélien
236
+ kro|||Kru languages|krou, langues
237
+ kru|||Kurukh|kurukh
238
+ kua||kj|Kuanyama; Kwanyama|kuanyama; kwanyama
239
+ kum|||Kumyk|koumyk
240
+ kur||ku|Kurdish|kurde
241
+ kut|||Kutenai|kutenai
242
+ lad|||Ladino|judéo-espagnol
243
+ lah|||Lahnda|lahnda
244
+ lam|||Lamba|lamba
245
+ lao||lo|Lao|lao
246
+ lat||la|Latin|latin
247
+ lav||lv|Latvian|letton
248
+ lez|||Lezghian|lezghien
249
+ lim||li|Limburgan; Limburger; Limburgish|limbourgeois
250
+ lin||ln|Lingala|lingala
251
+ lit||lt|Lithuanian|lituanien
252
+ lol|||Mongo|mongo
253
+ loz|||Lozi|lozi
254
+ ltz||lb|Luxembourgish; Letzeburgesch|luxembourgeois
255
+ lua|||Luba-Lulua|luba-lulua
256
+ lub||lu|Luba-Katanga|luba-katanga
257
+ lug||lg|Ganda|ganda
258
+ lui|||Luiseno|luiseno
259
+ lun|||Lunda|lunda
260
+ luo|||Luo (Kenya and Tanzania)|luo (Kenya et Tanzanie)
261
+ lus|||Lushai|lushai
262
+ mac|mkd|mk|Macedonian|macédonien
263
+ mad|||Madurese|madourais
264
+ mag|||Magahi|magahi
265
+ mah||mh|Marshallese|marshall
266
+ mai|||Maithili|maithili
267
+ mak|||Makasar|makassar
268
+ mal||ml|Malayalam|malayalam
269
+ man|||Mandingo|mandingue
270
+ mao|mri|mi|Maori|maori
271
+ map|||Austronesian languages|austronésiennes, langues
272
+ mar||mr|Marathi|marathe
273
+ mas|||Masai|massaï
274
+ may|msa|ms|Malay|malais
275
+ mdf|||Moksha|moksa
276
+ mdr|||Mandar|mandar
277
+ men|||Mende|mendé
278
+ mga|||Irish, Middle (900-1200)|irlandais moyen (900-1200)
279
+ mic|||Mi'kmaq; Micmac|mi'kmaq; micmac
280
+ min|||Minangkabau|minangkabau
281
+ mis|||Uncoded languages|langues non codées
282
+ mkh|||Mon-Khmer languages|môn-khmer, langues
283
+ mlg||mg|Malagasy|malgache
284
+ mlt||mt|Maltese|maltais
285
+ mnc|||Manchu|mandchou
286
+ mni|||Manipuri|manipuri
287
+ mno|||Manobo languages|manobo, langues
288
+ moh|||Mohawk|mohawk
289
+ mon||mn|Mongolian|mongol
290
+ mos|||Mossi|moré
291
+ mul|||Multiple languages|multilingue
292
+ mun|||Munda languages|mounda, langues
293
+ mus|||Creek|muskogee
294
+ mwl|||Mirandese|mirandais
295
+ mwr|||Marwari|marvari
296
+ myn|||Mayan languages|maya, langues
297
+ myv|||Erzya|erza
298
+ nah|||Nahuatl languages|nahuatl, langues
299
+ nai|||North American Indian languages|nord-amérindiennes, langues
300
+ nap|||Neapolitan|napolitain
301
+ nau||na|Nauru|nauruan
302
+ nav||nv|Navajo; Navaho|navaho
303
+ nbl||nr|Ndebele, South; South Ndebele|ndébélé du Sud
304
+ nde||nd|Ndebele, North; North Ndebele|ndébélé du Nord
305
+ ndo||ng|Ndonga|ndonga
306
+ nds|||Low German; Low Saxon; German, Low; Saxon, Low|bas allemand; bas saxon; allemand, bas; saxon, bas
307
+ nep||ne|Nepali|népalais
308
+ new|||Nepal Bhasa; Newari|nepal bhasa; newari
309
+ nia|||Nias|nias
310
+ nic|||Niger-Kordofanian languages|nigéro-kordofaniennes, langues
311
+ niu|||Niuean|niué
312
+ nno||nn|Norwegian Nynorsk; Nynorsk, Norwegian|norvégien nynorsk; nynorsk, norvégien
313
+ nob||nb|Bokmål, Norwegian; Norwegian Bokmål|norvégien bokmål
314
+ nog|||Nogai|nogaï; nogay
315
+ non|||Norse, Old|norrois, vieux
316
+ nor||no|Norwegian|norvégien
317
+ nqo|||N'Ko|n'ko
318
+ nso|||Pedi; Sepedi; Northern Sotho|pedi; sepedi; sotho du Nord
319
+ nub|||Nubian languages|nubiennes, langues
320
+ nwc|||Classical Newari; Old Newari; Classical Nepal Bhasa|newari classique
321
+ nya||ny|Chichewa; Chewa; Nyanja|chichewa; chewa; nyanja
322
+ nym|||Nyamwezi|nyamwezi
323
+ nyn|||Nyankole|nyankolé
324
+ nyo|||Nyoro|nyoro
325
+ nzi|||Nzima|nzema
326
+ oci||oc|Occitan (post 1500); Provençal|occitan (après 1500); provençal
327
+ oji||oj|Ojibwa|ojibwa
328
+ ori||or|Oriya|oriya
329
+ orm||om|Oromo|galla
330
+ osa|||Osage|osage
331
+ oss||os|Ossetian; Ossetic|ossète
332
+ ota|||Turkish, Ottoman (1500-1928)|turc ottoman (1500-1928)
333
+ oto|||Otomian languages|otomi, langues
334
+ paa|||Papuan languages|papoues, langues
335
+ pag|||Pangasinan|pangasinan
336
+ pal|||Pahlavi|pahlavi
337
+ pam|||Pampanga; Kapampangan|pampangan
338
+ pan||pa|Panjabi; Punjabi|pendjabi
339
+ pap|||Papiamento|papiamento
340
+ pau|||Palauan|palau
341
+ peo|||Persian, Old (ca.600-400 B.C.)|perse, vieux (ca. 600-400 av. J.-C.)
342
+ per|fas|fa|Persian|persan
343
+ phi|||Philippine languages|philippines, langues
344
+ phn|||Phoenician|phénicien
345
+ pli||pi|Pali|pali
346
+ pol||pl|Polish|polonais
347
+ pon|||Pohnpeian|pohnpei
348
+ por||pt|Portuguese|portugais
349
+ pra|||Prakrit languages|prâkrit, langues
350
+ pro|||Provençal, Old (to 1500)|provençal ancien (jusqu'à 1500)
351
+ pus||ps|Pushto; Pashto|pachto
352
+ qaa-qtz|||Reserved for local use|réservée à l'usage local
353
+ que||qu|Quechua|quechua
354
+ raj|||Rajasthani|rajasthani
355
+ rap|||Rapanui|rapanui
356
+ rar|||Rarotongan; Cook Islands Maori|rarotonga; maori des îles Cook
357
+ roa|||Romance languages|romanes, langues
358
+ roh||rm|Romansh|romanche
359
+ rom|||Romany|tsigane
360
+ rum|ron|ro|Romanian; Moldavian; Moldovan|roumain; moldave
361
+ run||rn|Rundi|rundi
362
+ rup|||Aromanian; Arumanian; Macedo-Romanian|aroumain; macédo-roumain
363
+ rus||ru|Russian|russe
364
+ sad|||Sandawe|sandawe
365
+ sag||sg|Sango|sango
366
+ sah|||Yakut|iakoute
367
+ sai|||South American Indian (Other)|indiennes d'Amérique du Sud, autres langues
368
+ sal|||Salishan languages|salishennes, langues
369
+ sam|||Samaritan Aramaic|samaritain
370
+ san||sa|Sanskrit|sanskrit
371
+ sas|||Sasak|sasak
372
+ sat|||Santali|santal
373
+ scn|||Sicilian|sicilien
374
+ sco|||Scots|écossais
375
+ sel|||Selkup|selkoupe
376
+ sem|||Semitic languages|sémitiques, langues
377
+ sga|||Irish, Old (to 900)|irlandais ancien (jusqu'à 900)
378
+ sgn|||Sign Languages|langues des signes
379
+ shn|||Shan|chan
380
+ sid|||Sidamo|sidamo
381
+ sin||si|Sinhala; Sinhalese|singhalais
382
+ sio|||Siouan languages|sioux, langues
383
+ sit|||Sino-Tibetan languages|sino-tibétaines, langues
384
+ sla|||Slavic languages|slaves, langues
385
+ slo|slk|sk|Slovak|slovaque
386
+ slv||sl|Slovenian|slovène
387
+ sma|||Southern Sami|sami du Sud
388
+ sme||se|Northern Sami|sami du Nord
389
+ smi|||Sami languages|sames, langues
390
+ smj|||Lule Sami|sami de Lule
391
+ smn|||Inari Sami|sami d'Inari
392
+ smo||sm|Samoan|samoan
393
+ sms|||Skolt Sami|sami skolt
394
+ sna||sn|Shona|shona
395
+ snd||sd|Sindhi|sindhi
396
+ snk|||Soninke|soninké
397
+ sog|||Sogdian|sogdien
398
+ som||so|Somali|somali
399
+ son|||Songhai languages|songhai, langues
400
+ sot||st|Sotho, Southern|sotho du Sud
401
+ spa||es|Spanish; Castilian|espagnol; castillan
402
+ srd||sc|Sardinian|sarde
403
+ srn|||Sranan Tongo|sranan tongo
404
+ srp||sr|Serbian|serbe
405
+ srr|||Serer|sérère
406
+ ssa|||Nilo-Saharan languages|nilo-sahariennes, langues
407
+ ssw||ss|Swati|swati
408
+ suk|||Sukuma|sukuma
409
+ sun||su|Sundanese|soundanais
410
+ sus|||Susu|soussou
411
+ sux|||Sumerian|sumérien
412
+ swa||sw|Swahili|swahili
413
+ swe||sv|Swedish|suédois
414
+ syc|||Classical Syriac|syriaque classique
415
+ syr|||Syriac|syriaque
416
+ tah||ty|Tahitian|tahitien
417
+ tai|||Tai languages|tai, langues
418
+ tam||ta|Tamil|tamoul
419
+ tat||tt|Tatar|tatar
420
+ tel||te|Telugu|télougou
421
+ tem|||Timne|temne
422
+ ter|||Tereno|tereno
423
+ tet|||Tetum|tetum
424
+ tgk||tg|Tajik|tadjik
425
+ tgl||tl|Tagalog|tagalog
426
+ tha||th|Thai|thaï
427
+ tib|bod|bo|Tibetan|tibétain
428
+ tig|||Tigre|tigré
429
+ tir||ti|Tigrinya|tigrigna
430
+ tiv|||Tiv|tiv
431
+ tkl|||Tokelau|tokelau
432
+ tlh|||Klingon; tlhIngan-Hol|klingon
433
+ tli|||Tlingit|tlingit
434
+ tmh|||Tamashek|tamacheq
435
+ tog|||Tonga (Nyasa)|tonga (Nyasa)
436
+ ton||to|Tonga (Tonga Islands)|tongan (Îles Tonga)
437
+ tpi|||Tok Pisin|tok pisin
438
+ tsi|||Tsimshian|tsimshian
439
+ tsn||tn|Tswana|tswana
440
+ tso||ts|Tsonga|tsonga
441
+ tuk||tk|Turkmen|turkmène
442
+ tum|||Tumbuka|tumbuka
443
+ tup|||Tupi languages|tupi, langues
444
+ tur||tr|Turkish|turc
445
+ tut|||Altaic languages|altaïques, langues
446
+ tvl|||Tuvalu|tuvalu
447
+ twi||tw|Twi|twi
448
+ tyv|||Tuvinian|touva
449
+ udm|||Udmurt|oudmourte
450
+ uga|||Ugaritic|ougaritique
451
+ uig||ug|Uighur; Uyghur|ouïgour
452
+ ukr||uk|Ukrainian|ukrainien
453
+ umb|||Umbundu|umbundu
454
+ und|||Undetermined|indéterminée
455
+ urd||ur|Urdu|ourdou
456
+ uzb||uz|Uzbek|ouszbek
457
+ vai|||Vai|vaï
458
+ ven||ve|Venda|venda
459
+ vie||vi|Vietnamese|vietnamien
460
+ vol||vo|Volapük|volapük
461
+ vot|||Votic|vote
462
+ wak|||Wakashan languages|wakashanes, langues
463
+ wal|||Walamo|walamo
464
+ war|||Waray|waray
465
+ was|||Washo|washo
466
+ wel|cym|cy|Welsh|gallois
467
+ wen|||Sorbian languages|sorabes, langues
468
+ wln||wa|Walloon|wallon
469
+ wol||wo|Wolof|wolof
470
+ xal|||Kalmyk; Oirat|kalmouk; oïrat
471
+ xho||xh|Xhosa|xhosa
472
+ yao|||Yao|yao
473
+ yap|||Yapese|yapois
474
+ yid||yi|Yiddish|yiddish
475
+ yor||yo|Yoruba|yoruba
476
+ ypk|||Yupik languages|yupik, langues
477
+ zap|||Zapotec|zapotèque
478
+ zbl|||Blissymbols; Blissymbolics; Bliss|symboles Bliss; Bliss
479
+ zen|||Zenaga|zenaga
480
+ zha||za|Zhuang; Chuang|zhuang; chuang
481
+ znd|||Zande languages|zandé, langues
482
+ zul||zu|Zulu|zoulou
483
+ zun|||Zuni|zuni
484
+ zxx|||No linguistic content; Not applicable|pas de contenu linguistique; non applicable
485
+ zza|||Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki|zaza; dimili; dimli; kirdki; kirmanjki; zazaki
@@ -0,0 +1,11 @@
1
+ module Iso639
2
+ class InsensitiveHash < Hash # :nodoc:
3
+ def [](key)
4
+ key.respond_to?(:downcase) ? super(key.downcase) : super(key)
5
+ end
6
+
7
+ def []=(key, value)
8
+ key.respond_to?(:downcase) ? super(key.downcase, value) : super(key, value)
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,3 @@
1
+ module Iso639
2
+ VERSION = "1.0.0"
3
+ end
@@ -0,0 +1,14 @@
1
+ require "test_helper"
2
+
3
+ describe Iso639::InsensitiveHash do
4
+ it "should returns results ignore case" do
5
+ hash = Iso639::InsensitiveHash.new
6
+ hash["foo"] = "one thing"
7
+ hash["Bar"] = "another thing"
8
+ hash["BAZ"] = "last thing"
9
+
10
+ assert_equal hash["foo"], hash["FOO"]
11
+ assert_equal hash["BAR"], hash["bar"]
12
+ assert_equal hash["Baz"], hash["baz"]
13
+ end
14
+ end
@@ -0,0 +1,84 @@
1
+ # -*- coding: utf-8 -*-
2
+ require "test_helper"
3
+
4
+ describe Iso639::LanguagesByAlpha2 do
5
+ it "should return valid languages by alpha-2 code" do
6
+ assert_equal "en", Iso639::LanguagesByAlpha2["EN"].alpha2
7
+ assert_equal "fre", Iso639::LanguagesByAlpha2["fr"].alpha3
8
+ assert_equal "German", Iso639::LanguagesByAlpha2["de"].name
9
+ end
10
+
11
+ it "should return nil for unknown codes" do
12
+ assert_nil Iso639::LanguagesByAlpha2["xx"]
13
+ assert_nil Iso639::LanguagesByAlpha2["eng"]
14
+ assert_nil Iso639::LanguagesByAlpha2["English"]
15
+ end
16
+ end
17
+
18
+ describe Iso639::LanguagesByAlpha3Bibliographic do
19
+ it "should return valid languages by alpha-3 bibliographic code" do
20
+ assert_equal "en", Iso639::LanguagesByAlpha3Bibliographic["ENG"].alpha2
21
+ assert_equal "en", Iso639::LanguagesByAlpha3["eng"].alpha2
22
+ assert_equal "fre", Iso639::LanguagesByAlpha3["fre"].alpha3
23
+ assert_equal "German", Iso639::LanguagesByAlpha3["ger"].name
24
+ end
25
+
26
+ it "should return nil for unknown codes" do
27
+ assert_nil Iso639::LanguagesByAlpha3["xxx"]
28
+ assert_nil Iso639::LanguagesByAlpha3["en"]
29
+ assert_nil Iso639::LanguagesByAlpha3["English"]
30
+ end
31
+ end
32
+
33
+ describe Iso639::LanguagesByAlpha3Terminology do
34
+ it "should return valid languages by alpha-3 terminology code" do
35
+ assert_equal "fre", Iso639::LanguagesByAlpha3Terminology["fra"].alpha3
36
+ assert_equal "German", Iso639::LanguagesByAlpha3Terminology["DEU"].name
37
+ end
38
+
39
+ it "should return nil for unknown codes" do
40
+ assert_nil Iso639::LanguagesByAlpha3Terminology["xxx"]
41
+ assert_nil Iso639::LanguagesByAlpha3Terminology["en"]
42
+ assert_nil Iso639::LanguagesByAlpha3Terminology["eng"]
43
+ assert_nil Iso639::LanguagesByAlpha3Terminology["English"]
44
+ end
45
+ end
46
+
47
+ describe Iso639::LanguagesByEnglishName do
48
+ it "should return valid languages by name" do
49
+ assert_equal "en", Iso639::LanguagesByName["ENGLISH"].alpha2
50
+ assert_equal "fre", Iso639::LanguagesByName["French"].alpha3
51
+ assert_equal "German", Iso639::LanguagesByName["German"].name
52
+ assert_equal "German", Iso639::LanguagesByName["german"].name
53
+ end
54
+
55
+ it "should return nil for unknown codes" do
56
+ assert_nil Iso639::LanguagesByName["xxxxxx"]
57
+ assert_nil Iso639::LanguagesByName["en"]
58
+ assert_nil Iso639::LanguagesByName["eng"]
59
+ end
60
+ end
61
+
62
+ describe Iso639::LanguagesByFrenchName do
63
+ it "should return valid languages by name" do
64
+ assert_equal "fre", Iso639::LanguagesByFrenchName["français"].alpha3
65
+ assert_equal "German", Iso639::LanguagesByFrenchName["allemand"].name
66
+ end
67
+
68
+ it "should return nil for unknown codes" do
69
+ assert_nil Iso639::LanguagesByFrenchName["xxxxxx"]
70
+ assert_nil Iso639::LanguagesByFrenchName["an"]
71
+ assert_nil Iso639::LanguagesByFrenchName["English"]
72
+ end
73
+ end
74
+
75
+ describe Iso639 do
76
+ it "should return valid langauge by alpha-2, alpha-3, or name" do
77
+ assert_equal "en", Iso639["en"].alpha2
78
+ assert_equal "en", Iso639["EN"].alpha2
79
+ assert_equal "fr", Iso639["fre"].alpha2
80
+ assert_equal "fr", Iso639["fra"].alpha2
81
+ assert_equal "fr", Iso639["FRENCH"].alpha2
82
+ assert_equal "fr", Iso639["français"].alpha2
83
+ end
84
+ end
@@ -0,0 +1,46 @@
1
+ # -*- coding: utf-8 -*-
2
+ require "test_helper"
3
+
4
+ describe Iso639::Language do
5
+ it "should respond to char codes and names" do
6
+ lang = Iso639::Language.new "eng", "", "en", "English", "anglais"
7
+ assert lang.respond_to? :alpha3_bibliographic
8
+ assert lang.respond_to? :alpha3_terminology
9
+ assert lang.respond_to? :alpha3
10
+ assert lang.respond_to? :alpha2
11
+ assert lang.respond_to? :english_name
12
+ assert lang.respond_to? :french_name
13
+ assert lang.respond_to? :name
14
+ end
15
+
16
+ it "should assign the proper accessor from the constructor" do
17
+ lang = Iso639::Language.new "fre", "fra", "fr", "French", "français"
18
+ assert_equal "fre", lang.alpha3_bibliographic
19
+ assert_equal "fre", lang.alpha3
20
+ assert_equal "fra", lang.alpha3_terminology
21
+ assert_equal "fr", lang.alpha2
22
+ assert_equal "French", lang.english_name
23
+ assert_equal "French", lang.name
24
+ assert_equal "français", lang.french_name
25
+ end
26
+
27
+ it "should resolve blank values to nil" do
28
+ lang = Iso639::Language.new "", "", "", "", ""
29
+ assert_nil lang.alpha3_bibliographic
30
+ assert_nil lang.alpha3_terminology
31
+ assert_nil lang.alpha2
32
+ assert_nil lang.english_name
33
+ assert_nil lang.french_name
34
+ end
35
+
36
+ it "should not be mutable" do
37
+ lang = Iso639::Language.new("eng", nil, "en", "English", "anglais").freeze
38
+ begin
39
+ lang.name = "British English"
40
+ lang.alpha2 = "br"
41
+ assert false
42
+ rescue NoMethodError
43
+ assert true
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,11 @@
1
+ require "minitest/autorun"
2
+ require "minitest/emoji"
3
+ require "iso639"
4
+
5
+ # Borrowed from https://gist.github.com/4369168
6
+ MiniTest::Emoji::DEFAULT.merge!(
7
+ '.' => "\u{1f49A} ",
8
+ 'F' => "\u{1f494} ",
9
+ 'E' => "\u{1f480} ",
10
+ 'S' => "\u{1f49B} "
11
+ )
metadata ADDED
@@ -0,0 +1,112 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: iso639
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 1.0.0
6
+ platform: ruby
7
+ authors:
8
+ - Ryan McGeary
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-12-24 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '4.3'
20
+ none: false
21
+ name: minitest
22
+ type: :development
23
+ prerelease: false
24
+ requirement: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ~>
27
+ - !ruby/object:Gem::Version
28
+ version: '4.3'
29
+ none: false
30
+ - !ruby/object:Gem::Dependency
31
+ version_requirements: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ~>
34
+ - !ruby/object:Gem::Version
35
+ version: '1.0'
36
+ none: false
37
+ name: minitest-emoji
38
+ type: :development
39
+ prerelease: false
40
+ requirement: !ruby/object:Gem::Requirement
41
+ requirements:
42
+ - - ~>
43
+ - !ruby/object:Gem::Version
44
+ version: '1.0'
45
+ none: false
46
+ - !ruby/object:Gem::Dependency
47
+ version_requirements: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ~>
50
+ - !ruby/object:Gem::Version
51
+ version: '10.0'
52
+ none: false
53
+ name: rake
54
+ type: :development
55
+ prerelease: false
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ~>
59
+ - !ruby/object:Gem::Version
60
+ version: '10.0'
61
+ none: false
62
+ description: ISO 639-1 and ISO 639-2 lookups by name, alpha-2 code, or alpha-3 code
63
+ email:
64
+ - ryan@mcgeary.org
65
+ executables: []
66
+ extensions: []
67
+ extra_rdoc_files: []
68
+ files:
69
+ - .gitignore
70
+ - .travis.yml
71
+ - Gemfile
72
+ - LICENSE.txt
73
+ - README.md
74
+ - Rakefile
75
+ - iso639.gemspec
76
+ - lib/iso639.rb
77
+ - lib/iso639/ISO-639-2_utf-8.txt
78
+ - lib/iso639/insensitive_hash.rb
79
+ - lib/iso639/version.rb
80
+ - test/insensitive_hash_test.rb
81
+ - test/iso639_test.rb
82
+ - test/language_test.rb
83
+ - test/test_helper.rb
84
+ homepage: https://github.com/rmm5t/iso639
85
+ licenses: []
86
+ post_install_message:
87
+ rdoc_options: []
88
+ require_paths:
89
+ - lib
90
+ required_ruby_version: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - ! '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ none: false
96
+ required_rubygems_version: !ruby/object:Gem::Requirement
97
+ requirements:
98
+ - - ! '>='
99
+ - !ruby/object:Gem::Version
100
+ version: '0'
101
+ none: false
102
+ requirements: []
103
+ rubyforge_project:
104
+ rubygems_version: 1.8.23
105
+ signing_key:
106
+ specification_version: 3
107
+ summary: ISO 639-1 and ISO 639-2 lookups by name, alpha-2 code, or alpha-3 code
108
+ test_files:
109
+ - test/insensitive_hash_test.rb
110
+ - test/iso639_test.rb
111
+ - test/language_test.rb
112
+ - test/test_helper.rb