File Coverage

blib/lib/Wikibase/Datatype/Languages.pm
Criterion Covered Total %
statement 16 16 100.0
branch n/a
condition n/a
subroutine 6 6 100.0
pod 1 1 100.0
total 23 23 100.0


line stmt bran cond sub pod time code
1             package Wikibase::Datatype::Languages;
2              
3 249     249   235400 use base qw(Exporter);
  249         760  
  249         33958  
4 249     249   1982 use strict;
  249         842  
  249         5831  
5 249     249   2769 use utf8;
  249         646  
  249         2381  
6 249     249   6171 use warnings;
  249         720  
  249         7696  
7              
8 249     249   2946 use Readonly;
  249         8925  
  249         391143  
9              
10             # Constants.
11             Readonly::Array our @EXPORT => qw(all_language_codes);
12             Readonly::Hash our %LANGUAGES => (
13              
14             # Special codes.
15             'mul' => 'multiple languages', # Q20923490
16             'mis' => 'language without a specific language code', # Q22283016
17             'und' => 'undetermined language', # Q22282914
18             'zxx' => 'no linguistic content', # Q22282939
19              
20             # Codes in https://doc.wikimedia.org/mediawiki-core/master/php/Names_8php_source.html
21             # Updated 2023-04-22 in https://github.com/wikimedia/mediawiki/blob/dc1465a85944dfd7b98333d9061e0ba61e4af2da/includes/languages/data/Names.php
22             'aa' => 'Qafár af', # Afar
23             'ab' => 'аԥсшәа', # Abkhaz
24             'abs' => 'bahasa ambon', # Ambonese Malay, T193566
25             'ace' => 'Acèh', # Aceh
26             'acm' => 'عراقي', # Iraqi (Mesopotamian) Arabic
27             'ady' => 'адыгабзэ', # Adyghe
28             'ady-cyrl' => 'адыгабзэ', # Adyghe
29             'aeb' => 'تونسي / Tûnsî', # Tunisian Arabic (multiple scripts - defaults to Arabic)
30             'aeb-arab' => 'تونسي', # Tunisian Arabic (Arabic Script)
31             'aeb-latn' => 'Tûnsî', # Tunisian Arabic (Latin Script)
32             'af' => 'Afrikaans', # Afrikaans
33             'ak' => 'Akan', # Akan
34             'aln' => 'Gegë', # Gheg Albanian
35             'als' => 'Alemannisch', # Alemannic -- not a valid code, for compatibility. See gsw.
36             'alt' => 'алтай тил', # Altai, T254854
37             'am' => 'አማርኛ', # Amharic
38             'ami' => 'Pangcah', # Amis
39             'an' => 'aragonés', # Aragonese
40             'ang' => 'Ænglisc', # Old English, T25283
41             'ann' => 'Obolo', # Obolo
42             'anp' => 'अंगिका', # Angika
43             'ar' => 'العربية', # Arabic
44             'arc' => 'ܐܪܡܝܐ', # Aramaic
45             'arn' => 'mapudungun', # Mapuche, Mapudungu, Araucanian (Araucano)
46             'arq' => 'جازايرية', # Algerian Spoken Arabic
47             'ary' => 'الدارجة', # Moroccan Spoken Arabic
48             'arz' => 'مصرى', # Egyptian Spoken Arabic
49             'as' => 'অসমীয়া', # Assamese
50             'ase' => 'American sign language', # American sign language
51             'ast' => 'asturianu', # Asturian
52             'atj' => 'Atikamekw', # Atikamekw
53             'av' => 'авар', # Avar
54             'avk' => 'Kotava', # Kotava
55             'awa' => 'अवधी', # Awadhi
56             'ay' => 'Aymar aru', # Aymara
57             'az' => 'azərbaycanca', # Azerbaijani
58             'azb' => 'تۆرکجه', # South Azerbaijani
59             'ba' => 'башҡортса', # Bashkir
60             'ban' => 'Basa Bali', # Balinese (Latin script)
61             'ban-bali' => 'ᬩᬲᬩᬮᬶ', # Balinese (Balinese script)
62             'bar' => 'Boarisch', # Bavarian (Austro-Bavarian and South Tyrolean)
63             'bat-smg' => 'žemaitėška', # Samogitian (deprecated code, 'sgs' in ISO 639-3 since 2010-06-30 )
64             'bbc' => 'Batak Toba', # Batak Toba (falls back to bbc-latn)
65             'bbc-latn' => 'Batak Toba', # Batak Toba
66             'bcc' => 'جهلسری بلوچی', # Southern Balochi
67             'bci' => 'wawle', # Baoulé
68             'bcl' => 'Bikol Central', # Bikol: Central Bicolano language
69             'be' => 'беларуская', # Belarusian normative
70             'be-tarask' => 'беларуская (тарашкевіца)', # Belarusian in Taraskievica orthography
71             'be-x-old' => 'беларуская (тарашкевіца)', # (be-tarask compat)
72             'bg' => 'български', # Bulgarian
73             'bgn' => 'روچ کپتین بلوچی', # Western Balochi
74             'bh' => 'भोजपुरी', # Bihari macro language. Falls back to Bhojpuri (bho)
75             'bho' => 'भोजपुरी', # Bhojpuri
76             'bi' => 'Bislama', # Bislama
77             'bjn' => 'Banjar', # Banjarese
78             'blk' => 'ပအိုဝ်ႏဘာႏသာႏ', # Pa'O
79             'bm' => 'bamanankan', # Bambara
80             'bn' => 'বাংলা', # Bengali
81             'bo' => 'བོད་ཡིག', # Tibetan
82             'bpy' => 'বিষ্ণুপ্রিয়া মণিপুরী', # Bishnupriya Manipuri
83             'bqi' => 'بختیاری', # Bakthiari
84             'br' => 'brezhoneg', # Breton
85             'brh' => 'Bráhuí', # Brahui
86             'bs' => 'bosanski', # Bosnian
87             'btm' => 'Batak Mandailing', # Batak Mandailing
88             'bto' => 'Iriga Bicolano', # Rinconada Bikol
89             'bug' => 'ᨅᨔ ᨕᨘᨁᨗ', # Buginese
90             'bxr' => 'буряад', # Buryat (Russia)
91             'ca' => 'català', # Catalan
92             'cbk-zam' => 'Chavacano de Zamboanga', # Zamboanga Chavacano, T124657
93             'cdo' => '閩東語 / Mìng-dĕ̤ng-ngṳ̄', # Min-dong (multiple scripts - defaults to Latin)
94             'ce' => 'нохчийн', # Chechen
95             'ceb' => 'Cebuano', # Cebuano
96             'ch' => 'Chamoru', # Chamorro
97             'cho' => 'Chahta Anumpa', # Choctaw
98             'chr' => 'ᏣᎳᎩ', # Cherokee
99             'chy' => 'Tsetsêhestâhese', # Cheyenne
100             'ckb' => 'کوردی', # Central Kurdish
101             'co' => 'corsu', # Corsican
102             'cps' => 'Capiceño', # Capiznon
103             'cr' => 'Nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ', # Cree
104             'crh' => 'qırımtatarca', # Crimean Tatar (multiple scripts - defaults to Latin)
105             'crh-cyrl' => 'къырымтатарджа (Кирилл)', # Crimean Tatar (Cyrillic)
106             'crh-latn' => 'qırımtatarca (Latin)', # Crimean Tatar (Latin)
107             'cs' => 'čeština', # Czech
108             'csb' => 'kaszëbsczi', # Cassubian
109             'cu' => 'словѣньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ', # Old Church Slavonic (ancient language)
110             'cv' => 'чӑвашла', # Chuvash
111             'cy' => 'Cymraeg', # Welsh
112             'da' => 'dansk', # Danish
113             'dag' => 'dagbanli', # Dagbani
114             'de' => 'Deutsch', # German ("Du")
115             'de-at' => 'Österreichisches Deutsch', # Austrian German
116             'de-ch' => 'Schweizer Hochdeutsch', # Swiss Standard German
117             'de-formal' => 'Deutsch (Sie-Form)', # German - formal address ("Sie")
118             'dga' => 'Dagaare', # Southern Dagaare
119             'din' => 'Thuɔŋjäŋ', # Dinka
120             'diq' => 'Zazaki', # Zazaki
121             'dsb' => 'dolnoserbski', # Lower Sorbian
122             'dtp' => 'Dusun Bundu-liwan', # Central Dusun
123             'dty' => 'डोटेली', # Doteli
124             'dv' => 'ދިވެހިބަސް', # Dhivehi
125             'dz' => 'ཇོང་ཁ', # Dzongkha (Bhutan)
126             'ee' => 'eʋegbe', # Éwé
127             'egl' => 'Emiliàn', # Emilian
128             'el' => 'Ελληνικά', # Greek
129             'eml' => 'emiliàn e rumagnòl', # Emiliano-Romagnolo / Sammarinese
130             'en' => 'English', # English
131             'en-ca' => 'Canadian English', # Canadian English
132             'en-gb' => 'British English', # British English
133             'en-x-piglatin' => 'Igpay Atinlay', # Pig Latin, for variant development
134             'eo' => 'Esperanto', # Esperanto
135             'es' => 'español', # Spanish
136             'es-419' => 'español de América Latina', # Spanish for the Latin America and Caribbean region
137             'es-formal' => 'español (formal)', # Spanish formal address
138             'et' => 'eesti', # Estonian
139             'eu' => 'euskara', # Basque
140             'ext' => 'estremeñu', # Extremaduran
141             'fa' => 'فارسی', # Persian
142             'fat' => 'mfantse', # Fante
143             'ff' => 'Fulfulde', # Fulfulde, Maasina
144             'fi' => 'suomi', # Finnish
145             'fit' => 'meänkieli', # Tornedalen Finnish
146             'fiu-vro' => 'võro', # Võro (deprecated code, 'vro' in ISO 639-3 since 2009-01-16)
147             'fj' => 'Na Vosa Vakaviti', # Fijian
148             'fo' => 'føroyskt', # Faroese
149             'fon' => 'fɔ̀ngbè', # Fon
150             'fr' => 'français', # French
151             'frc' => 'français cadien', # Cajun French
152             'frp' => 'arpetan', # Franco-Provençal/Arpitan
153             'frr' => 'Nordfriisk', # North Frisian
154             'fur' => 'furlan', # Friulian
155             'fy' => 'Frysk', # Frisian
156             'ga' => 'Gaeilge', # Irish
157             'gaa' => 'Ga', # Ga
158             'gag' => 'Gagauz', # Gagauz
159             'gan' => '贛語', # Gan (multiple scripts - defaults to Traditional Han)
160             'gan-hans' => '赣语(简体)', # Gan (Simplified Han)
161             'gan-hant' => '贛語(繁體)', # Gan (Traditional Han)
162             'gcr' => 'kriyòl gwiyannen', # Guianan Creole
163             'gd' => 'Gàidhlig', # Scots Gaelic
164             'gl' => 'galego', # Galician
165             'gld' => 'на̄ни', # Nanai
166             'glk' => 'گیلکی', # Gilaki
167             'gn' => 'Avañe\'ẽ', # Guaraní, Paraguayan
168             'gom' => 'गोंयची कोंकणी / Gõychi Konknni', # Goan Konkani
169             'gom-deva' => 'गोंयची कोंकणी', # Goan Konkani (Devanagari script)
170             'gom-latn' => 'Gõychi Konknni', # Goan Konkani (Latin script)
171             'gor' => 'Bahasa Hulontalo', # Gorontalo
172             'got' => '𐌲𐌿𐍄𐌹𐍃𐌺', # Gothic
173             'gpe' => 'Ghanaian Pidgin', # Ghanaian Pidgin
174             'grc' => 'Ἀρχαία ἑλληνικὴ', # Ancient Greek
175             'gsw' => 'Alemannisch', # Alemannic
176             'gu' => 'ગુજરાતી', # Gujarati
177             'guc' => 'wayuunaiki', # Wayuu
178             'gur' => 'farefare', # Farefare
179             'guw' => 'gungbe', # Gun
180             'gv' => 'Gaelg', # Manx
181             'ha' => 'Hausa', # Hausa
182             'hak' => '客家語/Hak-kâ-ngî', # Hakka
183             'haw' => 'Hawaiʻi', # Hawaiian
184             'he' => 'עברית', # Hebrew
185             'hi' => 'हिन्दी', # Hindi
186             'hif' => 'Fiji Hindi', # Fijian Hindi (multiple scripts - defaults to Latin)
187             'hif-latn' => 'Fiji Hindi', # Fiji Hindi (Latin script)
188             'hil' => 'Ilonggo', # Hiligaynon
189             'hno' => 'ہندکو', # Hindko
190             'ho' => 'Hiri Motu', # Hiri Motu
191             'hr' => 'hrvatski', # Croatian
192             'hrx' => 'Hunsrik', # Riograndenser Hunsrückisch
193             'hsb' => 'hornjoserbsce', # Upper Sorbian
194             'hsn' => '湘语', # Xiang Chinese
195             'ht' => 'Kreyòl ayisyen', # Haitian Creole French
196             'hu' => 'magyar', # Hungarian
197             'hu-formal' => 'magyar (formal)', # Hungarian formal address
198             'hy' => 'հայերեն', # Armenian, T202611
199             'hyw' => 'Արեւմտահայերէն', # Western Armenian, T201276, T219975
200             'hz' => 'Otsiherero', # Herero
201             'ia' => 'interlingua', # Interlingua (IALA)
202             'id' => 'Bahasa Indonesia', # Indonesian
203             'ie' => 'Interlingue', # Interlingue (Occidental)
204             'ig' => 'Igbo', # Igbo
205             'igl' => 'Igala', # Igala
206             'ii' => 'ꆇꉙ', # Sichuan Yi
207             'ik' => 'Iñupiatun', # Inupiaq
208             'ike-cans' => 'ᐃᓄᒃᑎᑐᑦ', # Inuktitut, Eastern Canadian (Unified Canadian Aboriginal Syllabics)
209             'ike-latn' => 'inuktitut', # Inuktitut, Eastern Canadian (Latin script)
210             'ilo' => 'Ilokano', # Ilokano
211             'inh' => 'гӀалгӀай', # Ingush
212             'io' => 'Ido', # Ido
213             'is' => 'íslenska', # Icelandic
214             'it' => 'italiano', # Italian
215             'iu' => 'ᐃᓄᒃᑎᑐᑦ / inuktitut', # Inuktitut (macro language, see ike/ikt, falls back to ike-cans)
216             'ja' => '日本語', # Japanese
217             'jam' => 'Patois', # Jamaican Creole English
218             'jbo' => 'la .lojban.', # Lojban
219             'jut' => 'jysk', # Jutish / Jutlandic
220             'jv' => 'Jawa', # Javanese
221             'ka' => 'ქართული', # Georgian
222             'kaa' => 'Qaraqalpaqsha', # Karakalpak
223             'kab' => 'Taqbaylit', # Kabyle
224             'kbd' => 'адыгэбзэ', # Kabardian
225             'kbd-cyrl' => 'адыгэбзэ', # Kabardian (Cyrillic)
226             'kbp' => 'Kabɩyɛ', # Kabiyè
227             'kcg' => 'Tyap', # Tyap
228             'kea' => 'kabuverdianu', # Cape Verdean Creole
229             'kg' => 'Kongo', # Kongo, (FIXME!) should probably be KiKongo or KiKoongo
230             'khw' => 'کھوار', # Khowar
231             'ki' => 'Gĩkũyũ', # Gikuyu
232             'kiu' => 'Kırmancki', # Kirmanjki
233             'kj' => 'Kwanyama', # Kwanyama
234             'kjh' => 'хакас', # Khakas
235             'kjp' => 'ဖၠုံလိက်', # Eastern Pwo (multiple scripts - defaults to Burmese script)
236             'kk' => 'қазақша', # Kazakh (multiple scripts - defaults to Cyrillic)
237             'kk-arab' => 'قازاقشا (تٴوتە)', # Kazakh Arabic
238             'kk-cn' => 'قازاقشا (جۇنگو)', # Kazakh (China)
239             'kk-cyrl' => 'қазақша (кирил)', # Kazakh Cyrillic
240             'kk-kz' => 'қазақша (Қазақстан)', # Kazakh (Kazakhstan)
241             'kk-latn' => 'qazaqşa (latın)', # Kazakh Latin
242             'kk-tr' => 'qazaqşa (Türkïya)', # Kazakh (Turkey)
243             'kl' => 'kalaallisut', # Inuktitut, Greenlandic/Greenlandic/Kalaallisut (kal)
244             'km' => 'ភាសាខ្មែរ', # Khmer, Central
245             'kn' => 'ಕನ್ನಡ', # Kannada
246             'ko' => '한국어', # Korean
247             'ko-kp' => '조선말', # Korean (DPRK), T190324
248             'koi' => 'перем коми', # Komi-Permyak
249             'kr' => 'kanuri', # Kanuri
250             'krc' => 'къарачай-малкъар', # Karachay-Balkar
251             'kri' => 'Krio', # Krio
252             'krj' => 'Kinaray-a', # Kinaray-a
253             'krl' => 'karjal', # Karelian
254             'ks' => 'कॉशुर / کٲشُر', # Kashmiri (multiple scripts - defaults to Perso-Arabic)
255             'ks-arab' => 'کٲشُر', # Kashmiri (Perso-Arabic script)
256             'ks-deva' => 'कॉशुर', # Kashmiri (Devanagari script)
257             'ksh' => 'Ripoarisch', # Ripuarian
258             'ksw' => 'စှီၤ', # S'gaw Karen
259             'ku' => 'kurdî', # Kurdish (multiple scripts - defaults to Latin)
260             'ku-arab' => 'كوردي (عەرەبی)', # Northern Kurdish (Arabic script) (falls back to ckb)
261             'ku-latn' => 'kurdî (latînî)', # Northern Kurdish (Latin script)
262             'kum' => 'къумукъ', # Kumyk (Cyrillic, 'kum-latn' for Latin script)
263             'kus' => 'Kʋsaal', # Kusaal
264             'kv' => 'коми', # Komi-Zyrian (Cyrillic is common script but also written in Latin script)
265             'kw' => 'kernowek', # Cornish
266             'ky' => 'кыргызча', # Kirghiz
267             'la' => 'Latina', # Latin
268             'lad' => 'Ladino', # Ladino
269             'lb' => 'Lëtzebuergesch', # Luxembourgish
270             'lbe' => 'лакку', # Lak
271             'lez' => 'лезги', # Lezgi
272             'lfn' => 'Lingua Franca Nova', # Lingua Franca Nova
273             'lg' => 'Luganda', # Ganda
274             'li' => 'Limburgs', # Limburgian
275             'lij' => 'Ligure', # Ligurian
276             'liv' => 'Līvõ kēļ', # Livonian
277             'lki' => 'لەکی', # Laki
278             'lld' => 'Ladin', # Ladin
279             'lmo' => 'lombard', # Lombard - T283423
280             'ln' => 'lingála', # Lingala
281             'lo' => 'ລາວ', # Laotian
282             'loz' => 'Silozi', # Lozi
283             'lrc' => 'لۊری شومالی', # Northern Luri
284             'lt' => 'lietuvių', # Lithuanian
285             'ltg' => 'latgaļu', # Latgalian
286             'lus' => 'Mizo ţawng', # Mizo/Lushai
287             'luz' => 'لئری دوٙمینی', # Southern Luri
288             'lv' => 'latviešu', # Latvian
289             'lzh' => '文言', # Literary Chinese, T10217
290             'lzz' => 'Lazuri', # Laz
291             'mad' => 'Madhurâ', # Madurese, T264582
292             'mag' => 'मगही', # Magahi
293             'mai' => 'मैथिली', # Maithili
294             'map-bms' => 'Basa Banyumasan', # Banyumasan ('jv-x-bms')
295             'mdf' => 'мокшень', # Moksha
296             'mg' => 'Malagasy', # Malagasy
297             'mh' => 'Ebon', # Marshallese
298             'mhr' => 'олык марий', # Eastern Mari
299             'mi' => 'Māori', # Maori
300             'min' => 'Minangkabau', # Minangkabau
301             'mk' => 'македонски', # Macedonian
302             'ml' => 'മലയാളം', # Malayalam
303             'mn' => 'монгол', # Halh Mongolian (Cyrillic) (ISO 639-3: khk)
304             'mni' => 'ꯃꯤꯇꯩ ꯂꯣꯟ', # Manipuri/Meitei
305             'mnw' => 'ဘာသာ မန်', # Mon, T201583
306             'mo' => 'молдовеняскэ', # Moldovan, deprecated (ISO 639-2: ro-Cyrl-MD)
307             'mos' => 'moore', # Mooré
308             'mr' => 'मराठी', # Marathi
309             'mrh' => 'Mara', # Mara
310             'mrj' => 'кырык мары', # Hill Mari
311             'ms' => 'Bahasa Melayu', # Malay
312             'ms-arab' => 'بهاس ملايو', # Malay (Arabic Jawi script)
313             'mt' => 'Malti', # Maltese
314             'mus' => 'Mvskoke', # Muskogee/Creek
315             'mwl' => 'Mirandés', # Mirandese
316             'my' => 'မြန်မာဘာသာ', # Burmese
317             'myv' => 'эрзянь', # Erzya
318             'mzn' => 'مازِرونی', # Mazanderani
319             'na' => 'Dorerin Naoero', # Nauruan
320             'nah' => 'Nāhuatl', # Nahuatl (added to ISO 639-3 on 2006-10-31)
321             'nan' => 'Bân-lâm-gú', # Min-nan, T10217
322             'nap' => 'Napulitano', # Neapolitan, T45793
323             'nb' => 'norsk bokmål', # Norwegian (Bokmal)
324             'nds' => 'Plattdüütsch', # Low German ''or'' Low Saxon
325             'nds-nl' => 'Nedersaksies', # aka Nedersaksisch: Dutch Low Saxon
326             'ne' => 'नेपाली', # Nepali
327             'new' => 'नेपाल भाषा', # Newar / Nepal Bhasha
328             'ng' => 'Oshiwambo', # Ndonga
329             'nia' => 'Li Niha', # Nias, T263968
330             'niu' => 'Niuē', # Niuean
331             'nl' => 'Nederlands', # Dutch
332             'nl-informal' => 'Nederlands (informeel)', # Dutch (informal address ("je"))
333             'nmz' => 'nawdm', # Nawdm
334             'nn' => 'norsk nynorsk', # Norwegian (Nynorsk)
335             'no' => 'norsk', # Norwegian macro language (falls back to nb).
336             'nod' => 'ᨣᩤᩴᨾᩮᩬᩥᨦ', # Northern Thai
337             'nog' => 'ногайша', # Nogai
338             'nov' => 'Novial', # Novial
339             'nqo' => 'ߒߞߏ', # N'Ko
340             'nrm' => 'Nouormand', # Norman (invalid code; 'nrf' in ISO 639 since 2014)
341             'nso' => 'Sesotho sa Leboa', # Northern Sotho
342             'nv' => 'Diné bizaad', # Navajo
343             'ny' => 'Chi-Chewa', # Chichewa
344             'nyn' => 'runyankore', # Nkore
345             'nys' => 'Nyunga', # Nyungar
346             'oc' => 'occitan', # Occitan
347             'ojb' => 'Ojibwemowin', # Ojibwe
348             'olo' => 'livvinkarjala', # Livvi-Karelian
349             'om' => 'Oromoo', # Oromo
350             'or' => 'ଓଡ଼ିଆ', # Oriya
351             'os' => 'ирон', # Ossetic, T31091
352             'pa' => 'ਪੰਜਾਬੀ', # Eastern Punjabi (Gurmukhi script) (pan)
353             'pag' => 'Pangasinan', # Pangasinan
354             'pam' => 'Kapampangan', # Pampanga
355             'pap' => 'Papiamentu', # Papiamentu
356             'pcd' => 'Picard', # Picard
357             'pcm' => 'Naijá', # Nigerian Pidgin
358             'pdc' => 'Deitsch', # Pennsylvania German
359             'pdt' => 'Plautdietsch', # Plautdietsch/Mennonite Low German
360             'pfl' => 'Pälzisch', # Palatinate German
361             'pi' => 'पालि', # Pali
362             'pih' => 'Norfuk / Pitkern', # Norfuk/Pitcairn/Norfolk
363             'pl' => 'polski', # Polish
364             'pms' => 'Piemontèis', # Piedmontese
365             'pnb' => 'پنجابی', # Western Punjabi
366             'pnt' => 'Ποντιακά', # Pontic/Pontic Greek
367             'prg' => 'prūsiskan', # Prussian
368             'ps' => 'پښتو', # Pashto
369             'pt' => 'português', # Portuguese
370             'pt-br' => 'português do Brasil', # Brazilian Portuguese
371             'pwn' => 'pinayuanan', # Paiwan
372             'qu' => 'Runa Simi', # Southern Quechua
373             'qug' => 'Runa shimi', # Kichwa/Northern Quechua (temporarily used until Kichwa has its own)
374             'rgn' => 'Rumagnôl', # Romagnol
375             'rif' => 'Tarifit', # Tarifit
376             'rki' => 'ရခိုင်', # Arakanese
377             'rm' => 'rumantsch', # Raeto-Romance
378             'rmc' => 'romaňi čhib', # Carpathian Romany
379             'rmy' => 'romani čhib', # Vlax Romany
380             'rn' => 'ikirundi', # Rundi (Kirundi)
381             'ro' => 'română', # Romanian
382             'roa-rup' => 'armãneashti', # Aromanian (deprecated code, 'rup' exists in ISO 639-3)
383             'roa-tara' => 'tarandíne', # Tarantino ('nap-x-tara')
384             'rsk' => 'руски', # Pannonian Rusyn
385             'ru' => 'русский', # Russian
386             'rue' => 'русиньскый', # Rusyn
387             'rup' => 'armãneashti', # Aromanian
388             'ruq' => 'Vlăheşte', # Megleno-Romanian (multiple scripts - defaults to Latin)
389             'ruq-cyrl' => 'Влахесте', # Megleno-Romanian (Cyrillic script)
390             # 'ruq-grek' => 'Βλαεστε', # Megleno-Romanian (Greek script)
391             'ruq-latn' => 'Vlăheşte', # Megleno-Romanian (Latin script)
392             'rw' => 'Ikinyarwanda', # Kinyarwanda
393             'ryu' => 'うちなーぐち', # Okinawan
394             'sa' => 'संस्कृतम्', # Sanskrit
395             'sah' => 'саха тыла', # Sakha
396             'sat' => 'ᱥᱟᱱᱛᱟᱲᱤ', # Santali
397             'sc' => 'sardu', # Sardinian
398             'scn' => 'sicilianu', # Sicilian
399             'sco' => 'Scots', # Scots
400             'sd' => 'سنڌي', # Sindhi
401             'sdc' => 'Sassaresu', # Sassarese
402             'sdh' => 'کوردی خوارگ', # Southern Kurdish
403             'se' => 'davvisámegiella', # Northern Sami
404             'se-fi' => 'davvisámegiella (Suoma bealde)', # Northern Sami (Finland)
405             'se-no' => 'davvisámegiella (Norgga bealde)', # Northern Sami (Norway)
406             'se-se' => 'davvisámegiella (Ruoŧa bealde)', # Northern Sami (Sweden)
407             'sei' => 'Cmique Itom', # Seri
408             'ses' => 'Koyraboro Senni', # Koyraboro Senni
409             'sg' => 'Sängö', # Sango/Sangho
410             'sgs' => 'žemaitėška', # Samogitian
411             'sh' => 'srpskohrvatski / српскохрватски', # Serbo-Croatian (multiple scripts - defaults to Latin)
412             'sh-cyrl' => 'српскохрватски (ћирилица)', # Serbo-Croatian (Cyrillic script)
413             'sh-latn' => 'srpskohrvatski (latinica)', # Serbo-Croatian (Latin script) (default)
414             'shi' => 'Taclḥit', # Tachelhit, Shilha (multiple scripts - defaults to Latin)
415             'shi-latn' => 'Taclḥit', # Tachelhit (Latin script)
416             'shi-tfng' => 'ⵜⴰⵛⵍⵃⵉⵜ', # Tachelhit (Tifinagh script)
417             'shn' => 'ၽႃႇသႃႇတႆး ', # Shan
418             'shy' => 'tacawit', # Shawiya (Multiple scripts - defaults to Latin)
419             'shy-latn' => 'tacawit', # Shawiya (Latin script) - T194047
420             'si' => 'සිංහල', # Sinhalese
421             'simple' => 'Simple English', # Simple English
422             'sjd' => 'кӣллт са̄мь кӣлл', # Kildin Sami
423             'sje' => 'bidumsámegiella', # Pite Sami
424             'sk' => 'slovenčina', # Slovak
425             'skr' => 'سرائیکی', # Saraiki (multiple scripts - defaults to Arabic)
426             'skr-arab' => 'سرائیکی', # Saraiki (Arabic script)
427             'sl' => 'slovenščina', # Slovenian
428             'sli' => 'Schläsch', # Lower Selisian
429             'sm' => 'Gagana Samoa', # Samoan
430             'sma' => 'åarjelsaemien', # Southern Sami
431             'smn' => 'anarâškielâ', # Inari Sami
432             'sms' => 'nuõrttsääʹmǩiõll', # Skolt Sami
433             'sn' => 'chiShona', # Shona
434             'so' => 'Soomaaliga', # Somali
435             'sq' => 'shqip', # Albanian
436             'sr' => 'српски / srpski', # Serbian (multiple scripts - defaults to Cyrillic)
437             'sr-ec' => 'српски (ћирилица)', # Serbian Cyrillic ekavian
438             'sr-el' => 'srpski (latinica)', # Serbian Latin ekavian
439             'srn' => 'Sranantongo', # Sranan Tongo
440             'sro' => 'sardu campidanesu', # Campidanese Sardinian
441             'ss' => 'SiSwati', # Swati
442             'st' => 'Sesotho', # Southern Sotho
443             'stq' => 'Seeltersk', # Saterland Frisian
444             'sty' => 'себертатар', # Siberian Tatar
445             'su' => 'Sunda', # Sundanese
446             'sv' => 'svenska', # Swedish
447             'sw' => 'Kiswahili', # Swahili
448             'syl' => 'ꠍꠤꠟꠐꠤ', # Sylheti
449             'szl' => 'ślůnski', # Silesian
450             'szy' => 'Sakizaya', # Sakizaya - T174601
451             'ta' => 'தமிழ்', # Tamil
452             'tay' => 'Tayal', # Atayal
453             'tcy' => 'ತುಳು', # Tulu
454             'tdd' => 'ᥖᥭᥰᥖᥬᥳᥑᥨᥒᥰ', # Tai Nüa
455             'te' => 'తెలుగు', # Telugu
456             'tet' => 'tetun', # Tetun
457             'tg' => 'тоҷикӣ', # Tajiki (falls back to tg-cyrl)
458             'tg-cyrl' => 'тоҷикӣ', # Tajiki (Cyrllic script) (default)
459             'tg-latn' => 'tojikī', # Tajiki (Latin script)
460             'th' => 'ไทย', # Thai
461             'ti' => 'ትግርኛ', # Tigrinya
462             'tk' => 'Türkmençe', # Turkmen
463             'tl' => 'Tagalog', # Tagalog
464             'tly' => 'tolışi', # Talysh
465             'tly-cyrl' => 'толыши', # Talysh (Cyrillic)
466             'tn' => 'Setswana', # Setswana
467             'to' => 'lea faka-Tonga', # Tonga (Tonga Islands)
468             'tok' => 'toki pona', # Toki Pona
469             'tpi' => 'Tok Pisin', # Tok Pisin
470             'tr' => 'Türkçe', # Turkish
471             'tru' => 'Ṫuroyo', # Turoyo
472             'trv' => 'Seediq', # Taroko
473             'ts' => 'Xitsonga', # Tsonga
474             'tt' => 'татарча / tatarça', # Tatar (multiple scripts - defaults to Cyrillic)
475             'tt-cyrl' => 'татарча', # Tatar (Cyrillic script) (default)
476             'tt-latn' => 'tatarça', # Tatar (Latin script)
477             'tum' => 'chiTumbuka', # Tumbuka
478             'tw' => 'Twi', # Twi
479             'ty' => 'reo tahiti', # Tahitian
480             'tyv' => 'тыва дыл', # Tyvan
481             'tzm' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ', # Tamazight
482             'udm' => 'удмурт', # Udmurt
483             'ug' => 'ئۇيغۇرچە / Uyghurche', # Uyghur (multiple scripts - defaults to Arabic)
484             'ug-arab' => 'ئۇيغۇرچە', # Uyghur (Arabic script) (default)
485             'ug-latn' => 'Uyghurche', # Uyghur (Latin script)
486             'uk' => 'українська', # Ukrainian
487             'ur' => 'اردو', # Urdu
488             'uz' => 'oʻzbekcha / ўзбекча', # Uzbek (multiple scripts - defaults to Latin)
489             'uz-cyrl' => 'ўзбекча', # Uzbek Cyrillic
490             'uz-latn' => 'oʻzbekcha', # Uzbek Latin (default)
491             've' => 'Tshivenda', # Venda
492             'vec' => 'vèneto', # Venetian
493             'vep' => 'vepsän kel’', # Veps
494             'vi' => 'Tiếng Việt', # Vietnamese
495             'vls' => 'West-Vlams', # West Flemish
496             'vmf' => 'Mainfränkisch', # Upper Franconian, Main-Franconian
497             'vmw' => 'emakhuwa', # Makhuwa
498             'vo' => 'Volapük', # Volapük
499             'vot' => 'Vaďďa', # Vod/Votian
500             'vro' => 'võro', # Võro
501             'wa' => 'walon', # Walloon
502             'wal' => 'wolaytta', # Wolaytta
503             'war' => 'Winaray', # Waray-Waray
504             'wls' => 'Fakaʻuvea', # Wallisian
505             'wo' => 'Wolof', # Wolof
506             'wuu' => '吴语', # Wu Chinese
507             'xal' => 'хальмг', # Kalmyk-Oirat
508             'xh' => 'isiXhosa', # Xhosan
509             'xmf' => 'მარგალური', # Mingrelian
510             'xsy' => 'saisiyat', # SaiSiyat - T216479
511             'yi' => 'ייִדיש', # Yiddish
512             'yo' => 'Yorùbá', # Yoruba
513             'yrl' => 'Nhẽẽgatú', # Nheengatu
514             'yue' => '粵語', # Cantonese (multiple scripts - defaults to Traditional Han)
515             'za' => 'Vahcuengh', # Zhuang
516             'zea' => 'Zeêuws', # Zeeuws / Zeaws
517             'zgh' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ', # Moroccan Amazigh (multiple scripts - defaults to Neo-Tifinagh)
518             'zh' => '中文', # (Zhōng Wén) - Chinese
519             'zh-classical' => '文言', # Classical Chinese/Literary Chinese -- (see T10217)
520             'zh-cn' => '中文(中国大陆)', # Chinese (PRC)
521             'zh-hans' => '中文(简体)', # Mandarin Chinese (Simplified Chinese script) (cmn-hans)
522             'zh-hant' => '中文(繁體)', # Mandarin Chinese (Traditional Chinese script) (cmn-hant)
523             'zh-hk' => '中文(香港)', # Chinese (Hong Kong)
524             'zh-min-nan' => 'Bân-lâm-gú', # Min-nan -- (see T10217)
525             'zh-mo' => '中文(澳門)', # Chinese (Macau)
526             'zh-my' => '中文(马来西亚)', # Chinese (Malaysia)
527             'zh-sg' => '中文(新加坡)', # Chinese (Singapore)
528             'zh-tw' => '中文(臺灣)', # Chinese (Taiwan)
529             'zh-yue' => '粵語', # Cantonese -- (see T10217)
530             'zu' => 'isiZulu', # Zulu
531              
532             # Codes from https://github.com/wikimedia/mediawiki-extensions-Wikibase/blob/master/lib/includes/WikibaseContentLanguages.php
533             # TODO Native names.
534             # Updated 2023-04-22 from https://github.com/wikimedia/mediawiki-extensions-Wikibase/blob/master/lib/includes/WikibaseContentLanguages.php
535             'agq' => 'Aghem', # Aghem - T288335
536             'bag' => 'Tuki', # Tuki - T263946
537             'bas' => 'Basaa', # Basaa - T263946
538             'bax' => 'Bamum', # Bamum - T263946
539             'bbj' => "Ghomála'", # Ghomála' - T263946
540             'bfd' => 'Bafut', # Bafut - T263946
541             'bkc' => 'Baka', # Baka - T263946
542             'bkh' => 'Bakoko', # Bakoko - T263946
543             'bkm' => 'Kom', # Kom - T263946
544             'bqz' => "Mka'a", # Mka'a - T263946
545             'byv' => 'Medumba', # Medumba - T263946
546             'cak' => 'Cakchiquel', # Cakchiquel - T278854
547             'cnh' => 'Chin', # Chin - T263946
548             'dua' => 'Duala', # Duala - T263946
549             'en-us' => 'American English', # American English - T154589
550             'eto' => 'Eton', # Eton - T263946
551             'etu' => 'Ejagham', # Ejagham - T263946
552             'ewo' => 'Ewondo', # Ewondo - T263946
553             'fkv' => 'Finnish (Kven)', # Finnish (Kven) - T167259
554             'fmp' => "Fe'fe'", # Fe'fe' - T263946
555             'gya' => 'Gbaya', # Gbaya - T263946
556             'isu' => 'Isu', # Isu - T263946
557             'kea' => 'Kabuverdianu', # Kabuverdianu - T127435
558             'ker' => 'Kera', # Kera - T263946
559             'ksf' => 'Bafia', # Bafia - T263946
560             'lem' => 'Nomaande', # Nomaande - T263946
561             'lns' => "Lamnso'", # Lamnso' - T263946
562             'mcn' => 'Masana', # Masana - T293884
563             'mcp' => 'Maka', # Maka - T263946
564             'mua' => 'Mundang', # Mundang - T263946
565             'nan-hani' => 'Min Nan Chinese', # Min Nan Chinese - T180771
566             'nge' => 'Ngémba', # Ngémba - T263946
567             'nla' => 'Ngombala', # Ngombala - T263946
568             'nmg' => 'Kwasio', # Kwasio - T263946
569             'nnh' => 'Ngiemboon', # Ngiemboon - T263946
570             'nnz' => "Nda'nda'", # Nda'nda' - T263946
571             'nod' => 'Thai (Northern)', # Thai (Northern) - T93880
572             'osa-latn' => 'Osage', # Osage - T265297
573             'ota' => 'Turkish, Ottoman (1500–1928)', # Turkish, Ottoman (1500–1928) - T59342
574             'pap-aw' => 'Papiamento', # Papiamento - T275682
575             'quc' => 'K’iche’', # K’iche’ - T278851
576             'rmf' => 'Romani, Kalo Finnish', # Romani, Kalo Finnish - T226701
577             'rwr' => 'Marwari', # Marwari - T61905
578             'ryu' => 'Okinawan, Central', # Okinawan, Central - T271215
579             'sjd' => 'Sami, Kildin', # Sami, Kildin - T226701
580             'sje' => 'Sami, Pite', # Sami, Pite - T146707
581             'sju' => 'Sami, Ume', # Sami, Ume - T226701
582             'smj' => 'Lule Sámi', # Lule Sámi - T146707
583             'sms' => 'Skolt Sami', # Skolt Sami - T220118, T223544
584             'srq' => 'Sirionó', # Sirionó - T113408
585             'tvu' => 'Tunen', # Tunen - T263946
586             'vut' => 'Vute', # Vute - T263946
587             'wes' => 'Pidgin (Cameroon)', # Pidgin (Cameroon) - T263946
588             'wya' => 'Wyandot', # Wyandot - T283364
589             'yas' => 'Nugunu', # Nugunu - T263946
590             'yat' => 'Yambeta', # Yambeta - T263946
591             'yav' => 'Yangben', # Yangben - T263946
592             'ybb' => 'Yemba', # Yemba - T263946
593             );
594              
595             our $VERSION = 0.29;
596              
597             sub all_language_codes {
598 118     118 1 588 return keys %LANGUAGES;
599             }
600              
601             __END__
602              
603             =pod
604              
605             =encoding utf8
606              
607             =head1 NAME
608              
609             Wikibase::Datatype::Languages - Wikibase datatype languages.
610              
611             =head1 SYNOPSIS
612              
613             use Wikibase::Datatype::Languages qw(all_language_codes);
614              
615             my @language_codes = all_language_codes();
616              
617             =head1 DESCRIPTION
618              
619             Language codes used for multilingual information in Wikibase::Datatype objects.
620              
621             It's imported from L<https://doc.wikimedia.org/mediawiki-core/master/php/Names_8php_source.html>
622             and from L<https://github.com/wikimedia/mediawiki-extensions-Wikibase/blob/master/lib/includes/WikibaseContentLanguages.php> (2023-04-22).
623              
624             =head1 SUBROUTINES
625              
626             =head2 C<all_language_codes>
627              
628             my @language_codes = all_language_codes();
629              
630             Get language codes used in MediaWiki.
631              
632             Returns array with codes.
633              
634             =head1 EXAMPLE
635              
636             =for comment filename=all_language_codes.pl
637              
638             use strict;
639             use warnings;
640              
641             use Wikibase::Datatype::Languages qw(all_language_codes);
642              
643             my @language_codes = sort { $a cmp $b } all_language_codes();
644              
645             # Print out.
646             print join "\n", @language_codes;
647             print "\n";
648              
649             # Output:
650             # aa
651             # ab
652             # abs
653             # ace
654             # ady
655             # ady-cyrl
656             # aeb
657             # aeb-arab
658             # aeb-latn
659             # af
660             # ak
661             # aln
662             # als
663             # alt
664             # am
665             # ami
666             # an
667             # ang
668             # anp
669             # ar
670             # arc
671             # arn
672             # arq
673             # ary
674             # arz
675             # as
676             # ase
677             # ast
678             # atj
679             # av
680             # avk
681             # awa
682             # ay
683             # az
684             # azb
685             # ba
686             # ban
687             # ban-bali
688             # bar
689             # bat-smg
690             # bbc
691             # bbc-latn
692             # bcc
693             # bci
694             # bcl
695             # be
696             # be-tarask
697             # be-x-old
698             # bg
699             # bgn
700             # bh
701             # bho
702             # bi
703             # bjn
704             # blk
705             # bm
706             # bn
707             # bo
708             # bpy
709             # bqi
710             # br
711             # brh
712             # bs
713             # btm
714             # bto
715             # bug
716             # bxr
717             # ca
718             # cbk-zam
719             # cdo
720             # ce
721             # ceb
722             # ch
723             # cho
724             # chr
725             # chy
726             # ckb
727             # co
728             # cps
729             # cr
730             # crh
731             # crh-cyrl
732             # crh-latn
733             # cs
734             # csb
735             # cu
736             # cv
737             # cy
738             # da
739             # dag
740             # de
741             # de-at
742             # de-ch
743             # de-formal
744             # din
745             # diq
746             # dsb
747             # dtp
748             # dty
749             # dv
750             # dz
751             # ee
752             # egl
753             # el
754             # eml
755             # en
756             # en-ca
757             # en-gb
758             # eo
759             # es
760             # es-419
761             # es-formal
762             # et
763             # eu
764             # ext
765             # fa
766             # fat
767             # ff
768             # fi
769             # fit
770             # fiu-vro
771             # fj
772             # fo
773             # fon
774             # fr
775             # frc
776             # frp
777             # frr
778             # fur
779             # fy
780             # ga
781             # gaa
782             # gag
783             # gan
784             # gan-hans
785             # gan-hant
786             # gcr
787             # gd
788             # gl
789             # gld
790             # glk
791             # gn
792             # gom
793             # gom-deva
794             # gom-latn
795             # gor
796             # got
797             # gpe
798             # grc
799             # gsw
800             # gu
801             # guc
802             # gur
803             # guw
804             # gv
805             # ha
806             # hak
807             # haw
808             # he
809             # hi
810             # hif
811             # hif-latn
812             # hil
813             # ho
814             # hr
815             # hrx
816             # hsb
817             # hsn
818             # ht
819             # hu
820             # hu-formal
821             # hy
822             # hyw
823             # hz
824             # ia
825             # id
826             # ie
827             # ig
828             # ii
829             # ik
830             # ike-cans
831             # ike-latn
832             # ilo
833             # inh
834             # io
835             # is
836             # it
837             # iu
838             # ja
839             # jam
840             # jbo
841             # jut
842             # jv
843             # ka
844             # kaa
845             # kab
846             # kbd
847             # kbd-cyrl
848             # kbp
849             # kcg
850             # kea
851             # kg
852             # khw
853             # ki
854             # kiu
855             # kj
856             # kjp
857             # kk
858             # kk-arab
859             # kk-cn
860             # kk-cyrl
861             # kk-kz
862             # kk-latn
863             # kk-tr
864             # kl
865             # km
866             # kn
867             # ko
868             # ko-kp
869             # koi
870             # kr
871             # krc
872             # kri
873             # krj
874             # krl
875             # ks
876             # ks-arab
877             # ks-deva
878             # ksh
879             # ksw
880             # ku
881             # ku-arab
882             # ku-latn
883             # kum
884             # kv
885             # kw
886             # ky
887             # la
888             # lad
889             # lb
890             # lbe
891             # lez
892             # lfn
893             # lg
894             # li
895             # lij
896             # liv
897             # lki
898             # lld
899             # lmo
900             # ln
901             # lo
902             # loz
903             # lrc
904             # lt
905             # ltg
906             # lus
907             # luz
908             # lv
909             # lzh
910             # lzz
911             # mad
912             # mag
913             # mai
914             # map-bms
915             # mdf
916             # mg
917             # mh
918             # mhr
919             # mi
920             # min
921             # mis
922             # mk
923             # ml
924             # mn
925             # mni
926             # mnw
927             # mo
928             # mos
929             # mr
930             # mrh
931             # mrj
932             # ms
933             # ms-arab
934             # mt
935             # mul
936             # mus
937             # mwl
938             # my
939             # myv
940             # mzn
941             # na
942             # nah
943             # nan
944             # nap
945             # nb
946             # nds
947             # nds-nl
948             # ne
949             # new
950             # ng
951             # nia
952             # niu
953             # nl
954             # nl-informal
955             # nmz
956             # nn
957             # no
958             # nod
959             # nov
960             # nqo
961             # nrm
962             # nso
963             # nv
964             # ny
965             # nyn
966             # nys
967             # oc
968             # ojb
969             # olo
970             # om
971             # or
972             # os
973             # pa
974             # pag
975             # pam
976             # pap
977             # pcd
978             # pcm
979             # pdc
980             # pdt
981             # pfl
982             # pi
983             # pih
984             # pl
985             # pms
986             # pnb
987             # pnt
988             # prg
989             # ps
990             # pt
991             # pt-br
992             # pwn
993             # qu
994             # qug
995             # rgn
996             # rif
997             # rm
998             # rmc
999             # rmy
1000             # rn
1001             # ro
1002             # roa-rup
1003             # roa-tara
1004             # rsk
1005             # ru
1006             # rue
1007             # rup
1008             # ruq
1009             # ruq-cyrl
1010             # ruq-latn
1011             # rw
1012             # ryu
1013             # sa
1014             # sah
1015             # sat
1016             # sc
1017             # scn
1018             # sco
1019             # sd
1020             # sdc
1021             # sdh
1022             # se
1023             # se-fi
1024             # se-no
1025             # se-se
1026             # sei
1027             # ses
1028             # sg
1029             # sgs
1030             # sh
1031             # shi
1032             # shi-latn
1033             # shi-tfng
1034             # shn
1035             # shy
1036             # shy-latn
1037             # si
1038             # simple
1039             # sjd
1040             # sje
1041             # sk
1042             # skr
1043             # skr-arab
1044             # sl
1045             # sli
1046             # sm
1047             # sma
1048             # smn
1049             # sms
1050             # sn
1051             # so
1052             # sq
1053             # sr
1054             # sr-ec
1055             # sr-el
1056             # srn
1057             # sro
1058             # ss
1059             # st
1060             # stq
1061             # sty
1062             # su
1063             # sv
1064             # sw
1065             # syl
1066             # szl
1067             # szy
1068             # ta
1069             # tay
1070             # tcy
1071             # tdd
1072             # te
1073             # tet
1074             # tg
1075             # tg-cyrl
1076             # tg-latn
1077             # th
1078             # ti
1079             # tk
1080             # tl
1081             # tly
1082             # tly-cyrl
1083             # tn
1084             # to
1085             # tpi
1086             # tr
1087             # tru
1088             # trv
1089             # ts
1090             # tt
1091             # tt-cyrl
1092             # tt-latn
1093             # tum
1094             # tw
1095             # ty
1096             # tyv
1097             # tzm
1098             # udm
1099             # ug
1100             # ug-arab
1101             # ug-latn
1102             # uk
1103             # und
1104             # ur
1105             # uz
1106             # uz-cyrl
1107             # uz-latn
1108             # ve
1109             # vec
1110             # vep
1111             # vi
1112             # vls
1113             # vmf
1114             # vmw
1115             # vo
1116             # vot
1117             # vro
1118             # wa
1119             # war
1120             # wls
1121             # wo
1122             # wuu
1123             # xal
1124             # xh
1125             # xmf
1126             # xsy
1127             # yi
1128             # yo
1129             # yrl
1130             # yue
1131             # za
1132             # zea
1133             # zgh
1134             # zh
1135             # zh-classical
1136             # zh-cn
1137             # zh-hans
1138             # zh-hant
1139             # zh-hk
1140             # zh-min-nan
1141             # zh-mo
1142             # zh-my
1143             # zh-sg
1144             # zh-tw
1145             # zh-yue
1146             # zu
1147             # zxx
1148              
1149             =head1 DEPENDENCIES
1150              
1151             L<Exporter>,
1152             L<Readonly>.
1153              
1154             =head1 REPOSITORY
1155              
1156             L<https://github.com/michal-josef-spacek/Wikibase-Datatype>
1157              
1158             =head1 AUTHOR
1159              
1160             Michal Josef Špaček L<mailto:skim@cpan.org>
1161              
1162             L<http://skim.cz>
1163              
1164             =head1 LICENSE AND COPYRIGHT
1165              
1166             © 2020-2023 Michal Josef Špaček
1167              
1168             BSD 2-Clause License
1169              
1170             =head1 VERSION
1171              
1172             0.29
1173              
1174             =cut