MediaWiki  1.28.1
Names.php
Go to the documentation of this file.
1 <?php
25 
47 class Names {
48  public static $names = [
49  'aa' => 'Qafár af', # Afar
50  'ab' => 'Аҧсшәа', # Abkhaz
51  'ace' => 'Acèh', # Aceh
52  'ady' => 'адыгабзэ', # Adyghe
53  'ady-cyrl' => 'адыгабзэ', # Adyghe
54  'aeb' => 'تونسي/Tûnsî', # Tunisian Arabic (multiple scripts - defaults to Arabic)
55  'aeb-arab' => 'تونسي', # Tunisian Arabic (Arabic Script)
56  'aeb-latn' => 'Tûnsî', # Tunisian Arabic (Latin Script)
57  'af' => 'Afrikaans', # Afrikaans
58  'ak' => 'Akan', # Akan
59  'aln' => 'Gegë', # Gheg Albanian
60  'als' => 'Alemannisch', # Alemannic -- not a valid code, for compatibility. See gsw.
61  'am' => 'አማርኛ', # Amharic
62  'an' => 'aragonés', # Aragonese
63  'ang' => 'Ænglisc', # Old English, bug 23283
64  'anp' => 'अङ्गिका', # Angika
65  'ar' => 'العربية', # Arabic
66  'arc' => 'ܐܪܡܝܐ', # Aramaic
67  'arn' => 'mapudungun', # Mapuche, Mapudungu, Araucanian (Araucano)
68  'arq' => 'جازايرية', # Algerian Spoken Arabic
69  'ary' => 'Maġribi', # Moroccan Spoken Arabic
70  'arz' => 'مصرى', # Egyptian Spoken Arabic
71  'as' => 'অসমীয়া', # Assamese
72  'ase' => 'American sign language', # American sign language
73  'ast' => 'asturianu', # Asturian
74  'av' => 'авар', # Avar
75  'avk' => 'Kotava', # Kotava
76  'awa' => 'अवधी', # Awadhi
77  'ay' => 'Aymar aru', # Aymara
78  'az' => 'azərbaycanca', # Azerbaijani
79  'azb' => 'تۆرکجه', # South Azerbaijani
80  'ba' => 'башҡортса', # Bashkir
81  'ban' => 'Basa Bali', # Balinese
82  'bar' => 'Boarisch', # Bavarian (Austro-Bavarian and South Tyrolean)
83  'bat-smg' => 'žemaitėška', # Samogitian (deprecated code, 'sgs' in ISO 693-3 since 2010-06-30 )
84  'bbc' => 'Batak Toba', # Batak Toba (falls back to bbc-latn)
85  'bbc-latn' => 'Batak Toba', # Batak Toba
86  'bcc' => 'جهلسری بلوچی', # Southern Balochi
87  'bcl' => 'Bikol Central', # Bikol: Central Bicolano language
88  'be' => 'беларуская', # Belarusian normative
89  'be-tarask' => "беларуская (тарашкевіца)\xE2\x80\x8E", # Belarusian in Taraskievica orthography
90  'be-x-old' => "беларуская (тарашкевіца)\xE2\x80\x8E", # (be-tarask compat)
91  'bg' => 'български', # Bulgarian
92  'bgn' => 'روچ کپتین بلوچی', # Western Balochi
93  'bh' => 'भोजपुरी', # Bihari macro language. Falls back to Bhojpuri (bho)
94  'bho' => 'भोजपुरी', # Bhojpuri
95  'bi' => 'Bislama', # Bislama
96  'bjn' => 'Bahasa Banjar', # Banjarese
97  'bm' => 'bamanankan', # Bambara
98  'bn' => 'বাংলা', # Bengali
99  'bo' => 'བོད་ཡིག', # Tibetan
100  'bpy' => 'বিষ্ণুপ্রিয়া মণিপুরী', # Bishnupriya Manipuri
101  'bqi' => 'بختیاری', # Bakthiari
102  'br' => 'brezhoneg', # Breton
103  'brh' => 'Bráhuí', # Brahui
104  'bs' => 'bosanski', # Bosnian
105  'bto' => 'Iriga Bicolano', # Rinconada Bikol
106  'bug' => 'ᨅᨔ ᨕᨘᨁᨗ', # Buginese
107  'bxr' => 'буряад', # Buryat (Russia)
108  'ca' => 'català', # Catalan
109  'cbk-zam' => 'Chavacano de Zamboanga', # Zamboanga Chavacano
110  'cdo' => 'Mìng-dĕ̤ng-ngṳ̄', # Min Dong
111  'ce' => 'нохчийн', # Chechen
112  'ceb' => 'Cebuano', # Cebuano
113  'ch' => 'Chamoru', # Chamorro
114  'cho' => 'Choctaw', # Choctaw
115  'chr' => 'ᏣᎳᎩ', # Cherokee
116  'chy' => 'Tsetsêhestâhese', # Cheyenne
117  'ckb' => 'کوردیی ناوەندی', # Central Kurdish
118  'co' => 'corsu', # Corsican
119  'cps' => 'Capiceño', # Capiznon
120  'cr' => 'Nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ', # Cree
121  'crh' => 'qırımtatarca', # Crimean Tatar (multiple scripts - defaults to Latin)
122  'crh-latn' => "qırımtatarca (Latin)\xE2\x80\x8E", # Crimean Tatar (Latin)
123  'crh-cyrl' => "къырымтатарджа (Кирилл)\xE2\x80\x8E", # Crimean Tatar (Cyrillic)
124  'cs' => 'čeština', # Czech
125  'csb' => 'kaszëbsczi', # Cassubian
126  'cu' => 'словѣньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ', # Old Church Slavonic (ancient language)
127  'cv' => 'Чӑвашла', # Chuvash
128  'cy' => 'Cymraeg', # Welsh
129  'da' => 'dansk', # Danish
130  'de' => 'Deutsch', # German ("Du")
131  'de-at' => 'Österreichisches Deutsch', # Austrian German
132  'de-ch' => 'Schweizer Hochdeutsch', # Swiss Standard German
133  'de-formal' => "Deutsch (Sie-Form)\xE2\x80\x8E", # German - formal address ("Sie")
134  'diq' => 'Zazaki', # Zazaki
135  'dsb' => 'dolnoserbski', # Lower Sorbian
136  'dtp' => 'Dusun Bundu-liwan', # Central Dusun
137  'dty' => 'डोटेली', # Doteli
138  'dv' => 'ދިވެހިބަސް', # Dhivehi
139  'dz' => 'ཇོང་ཁ', # Dzongkha (Bhutan)
140  'ee' => 'eʋegbe', # Éwé
141  'egl' => 'Emiliàn', # Emilian
142  'el' => 'Ελληνικά', # Greek
143  'eml' => 'emiliàn e rumagnòl', # Emiliano-Romagnolo / Sammarinese
144  'en' => 'English', # English
145  'en-ca' => 'Canadian English', # Canadian English
146  'en-gb' => 'British English', # British English
147  'eo' => 'Esperanto', # Esperanto
148  'es' => 'español', # Spanish
149  'et' => 'eesti', # Estonian
150  'eu' => 'euskara', # Basque
151  'ext' => 'estremeñu', # Extremaduran
152  'fa' => 'فارسی', # Persian
153  'ff' => 'Fulfulde', # Fulfulde, Maasina
154  'fi' => 'suomi', # Finnish
155  'fit' => 'meänkieli', # Tornedalen Finnish
156  'fiu-vro' => 'Võro', # Võro (deprecated code, 'vro' in ISO 639-3 since 2009-01-16)
157  'fj' => 'Na Vosa Vakaviti', # Fijian
158  'fo' => 'føroyskt', # Faroese
159  'fr' => 'français', # French
160  'frc' => 'français cadien', # Cajun French
161  'frp' => 'arpetan', # Franco-Provençal/Arpitan
162  'frr' => 'Nordfriisk', # North Frisian
163  'fur' => 'furlan', # Friulian
164  'fy' => 'Frysk', # Frisian
165  'ga' => 'Gaeilge', # Irish
166  'gag' => 'Gagauz', # Gagauz
167  'gan' => '贛語', # Gan (multiple scripts - defaults to Traditional)
168  'gan-hans' => "赣语(简体)\xE2\x80\x8E", # Gan (Simplified Han)
169  'gan-hant' => "贛語(繁體)\xE2\x80\x8E", # Gan (Traditional Han)
170  'gd' => 'Gàidhlig', # Scots Gaelic
171  'gl' => 'galego', # Galician
172  'glk' => 'گیلکی', # Gilaki
173  'gn' => 'Avañe\'ẽ', # Guaraní, Paraguayan
174  'gom' => 'गोंयची कोंकणी / Gõychi Konknni', # Goan Konkani
175  'gom-deva' => 'गोंयची कोंकणी', # Goan Konkani (Devanagari script)
176  'gom-latn' => 'Gõychi Konknni', # Goan Konkani (Latin script)
177  'got' => '𐌲𐌿𐍄𐌹𐍃𐌺', # Gothic
178  'grc' => 'Ἀρχαία ἑλληνικὴ', # Ancient Greek
179  'gsw' => 'Alemannisch', # Alemannic
180  'gu' => 'ગુજરાતી', # Gujarati
181  'gv' => 'Gaelg', # Manx
182  'ha' => 'Hausa', # Hausa
183  'hak' => '客家語/Hak-kâ-ngî', # Hakka
184  'haw' => 'Hawaiʻi', # Hawaiian
185  'he' => 'עברית', # Hebrew
186  'hi' => 'हिन्दी', # Hindi
187  'hif' => 'Fiji Hindi', # Fijian Hindi (multiple scripts - defaults to Latin)
188  'hif-latn' => 'Fiji Hindi', # Fiji Hindi (latin)
189  'hil' => 'Ilonggo', # Hiligaynon
190  'ho' => 'Hiri Motu', # Hiri Motu
191  'hr' => 'hrvatski', # Croatian
192  'hrx' => 'Hunsrik', # Riograndenser Hunsrückisch
193  'hsb' => 'hornjoserbsce', # Upper Sorbian
194  'ht' => 'Kreyòl ayisyen', # Haitian Creole French
195  'hu' => 'magyar', # Hungarian
196  'hy' => 'Հայերեն', # Armenian
197  'hz' => 'Otsiherero', # Herero
198  'ia' => 'interlingua', # Interlingua (IALA)
199  'id' => 'Bahasa Indonesia', # Indonesian
200  'ie' => 'Interlingue', # Interlingue (Occidental)
201  'ig' => 'Igbo', # Igbo
202  'ii' => 'ꆇꉙ', # Sichuan Yi
203  'ik' => 'Iñupiak', # Inupiak (Inupiatun, Northwest Alaska / Inupiatun, North Alaskan)
204  'ike-cans' => 'ᐃᓄᒃᑎᑐᑦ', # Inuktitut, Eastern Canadian (Unified Canadian Aboriginal Syllabics)
205  'ike-latn' => 'inuktitut', # Inuktitut, Eastern Canadian (Latin script)
206  'ilo' => 'Ilokano', # Ilokano
207  'inh' => 'ГӀалгӀай', # Ingush
208  'io' => 'Ido', # Ido
209  'is' => 'íslenska', # Icelandic
210  'it' => 'italiano', # Italian
211  'iu' => 'ᐃᓄᒃᑎᑐᑦ/inuktitut', # Inuktitut (macro language, see ike/ikt, falls back to ike-cans)
212  'ja' => '日本語', # Japanese
213  'jam' => 'Patois', # Jamaican Creole English
214  'jbo' => 'la .lojban.', # Lojban
215  'jut' => 'jysk', # Jutish / Jutlandic
216  'jv' => 'Basa Jawa', # Javanese
217  'ka' => 'ქართული', # Georgian
218  'kaa' => 'Qaraqalpaqsha', # Karakalpak
219  'kab' => 'Taqbaylit', # Kabyle
220  'kbd' => 'Адыгэбзэ', # Kabardian
221  'kbd-cyrl' => 'Адыгэбзэ', # Kabardian (Cyrillic)
222  'kg' => 'Kongo', # Kongo, (FIXME!) should probaly be KiKongo or KiKoongo
223  'khw' => 'کھوار', # Khowar
224  'ki' => 'Gĩkũyũ', # Gikuyu
225  'kiu' => 'Kırmancki', # Kirmanjki
226  'kj' => 'Kwanyama', # Kwanyama
227  'kk' => 'қазақша', # Kazakh (multiple scripts - defaults to Cyrillic)
228  'kk-arab' => "قازاقشا (تٴوتە)\xE2\x80\x8F", # Kazakh Arabic
229  'kk-cyrl' => "қазақша (кирил)\xE2\x80\x8E", # Kazakh Cyrillic
230  'kk-latn' => "qazaqşa (latın)\xE2\x80\x8E", # Kazakh Latin
231  'kk-cn' => "قازاقشا (جۇنگو)\xE2\x80\x8F", # Kazakh (China)
232  'kk-kz' => "қазақша (Қазақстан)\xE2\x80\x8E", # Kazakh (Kazakhstan)
233  'kk-tr' => "qazaqşa (Türkïya)\xE2\x80\x8E", # Kazakh (Turkey)
234  'kl' => 'kalaallisut', # Inuktitut, Greenlandic/Greenlandic/Kalaallisut (kal)
235  'km' => 'ភាសាខ្មែរ', # Khmer, Central
236  'kn' => 'ಕನ್ನಡ', # Kannada
237  'ko' => '한국어', # Korean
238  'ko-kp' => '한국어 (조선)', # Korean (DPRK)
239  'koi' => 'Перем Коми', # Komi-Permyak
240  'kr' => 'Kanuri', # Kanuri, Central
241  'krc' => 'къарачай-малкъар', # Karachay-Balkar
242  'kri' => 'Krio', # Krio
243  'krj' => 'Kinaray-a', # Kinaray-a
244  'ks' => 'कॉशुर / کٲشُر', # Kashmiri (multiple scripts - defaults to Perso-Arabic)
245  'ks-arab' => 'کٲشُر', # Kashmiri (Perso-Arabic script)
246  'ks-deva' => 'कॉशुर', # Kashmiri (Devanagari script)
247  'ksh' => 'Ripoarisch', # Ripuarian
248  'ku' => 'Kurdî', # Kurdish (multiple scripts - defaults to Latin)
249  'ku-latn' => "Kurdî (latînî)\xE2\x80\x8E", # Northern Kurdish (Latin script)
250  'ku-arab' => "كوردي (عەرەبی)\xE2\x80\x8F", # Northern Kurdish (Arabic script) (falls back to ckb)
251  'kv' => 'коми', # Komi-Zyrian (Cyrillic is common script but also written in Latin script)
252  'kw' => 'kernowek', # Cornish
253  'ky' => 'Кыргызча', # Kirghiz
254  'la' => 'Latina', # Latin
255  'lad' => 'Ladino', # Ladino
256  'lb' => 'Lëtzebuergesch', # Luxemburguish
257  'lbe' => 'лакку', # Lak
258  'lez' => 'лезги', # Lezgi
259  'lfn' => 'Lingua Franca Nova', # Lingua Franca Nova
260  'lg' => 'Luganda', # Ganda
261  'li' => 'Limburgs', # Limburgian
262  'lij' => 'Ligure', # Ligurian
263  'liv' => 'Līvõ kēļ', # Livonian
264  'lki' => 'لەکی‎', # Laki
265  'lmo' => 'lumbaart', # Lombard
266  'ln' => 'lingála', # Lingala
267  'lo' => 'ລາວ', # Laotian
268  'lrc' => 'لۊری شومالی', # Northern Luri
269  'loz' => 'Silozi', # Lozi
270  'lt' => 'lietuvių', # Lithuanian
271  'ltg' => 'latgaļu', # Latgalian
272  'lus' => 'Mizo ţawng', # Mizo/Lushai
273  'luz' => 'لئری دوٙمینی', # Southern Luri
274  'lv' => 'latviešu', # Latvian
275  'lzh' => '文言', # Literary Chinese, bug 8217
276  'lzz' => 'Lazuri', # Laz
277  'mai' => 'मैथिली', # Maithili
278  'map-bms' => 'Basa Banyumasan', # Banyumasan
279  'mdf' => 'мокшень', # Moksha
280  'mg' => 'Malagasy', # Malagasy
281  'mh' => 'Ebon', # Marshallese
282  'mhr' => 'олык марий', # Eastern Mari
283  'mi' => 'Māori', # Maori
284  'min' => 'Baso Minangkabau', # Minangkabau
285  'mk' => 'македонски', # Macedonian
286  'ml' => 'മലയാളം', # Malayalam
287  'mn' => 'монгол', # Halh Mongolian (Cyrillic) (ISO 639-3: khk)
288  'mo' => 'молдовеняскэ', # Moldovan, deprecated
289  'mr' => 'मराठी', # Marathi
290  'mrj' => 'кырык мары', # Hill Mari
291  'ms' => 'Bahasa Melayu', # Malay
292  'mt' => 'Malti', # Maltese
293  'mus' => 'Mvskoke', # Muskogee/Creek
294  'mwl' => 'Mirandés', # Mirandese
295  'my' => 'မြန်မာဘာသာ', # Burmese
296  'myv' => 'эрзянь', # Erzya
297  'mzn' => 'مازِرونی', # Mazanderani
298  'na' => 'Dorerin Naoero', # Nauruan
299  'nah' => 'Nāhuatl', # Nahuatl (not in ISO 639-3)
300  'nan' => 'Bân-lâm-gú', # Min-nan, bug 8217
301  'nap' => 'Napulitano', # Neapolitan, bug 43793
302  'nb' => 'norsk bokmål', # Norwegian (Bokmal)
303  'nds' => 'Plattdüütsch', # Low German ''or'' Low Saxon
304  'nds-nl' => 'Nedersaksies', # aka Nedersaksisch: Dutch Low Saxon
305  'ne' => 'नेपाली', # Nepali
306  'new' => 'नेपाल भाषा', # Newar / Nepal Bhasha
307  'ng' => 'Oshiwambo', # Ndonga
308  'niu' => 'Niuē', # Niuean
309  'nl' => 'Nederlands', # Dutch
310  'nl-informal' => "Nederlands (informeel)\xE2\x80\x8E", # Dutch (informal address ("je"))
311  'nn' => 'norsk nynorsk', # Norwegian (Nynorsk)
312  'no' => 'norsk bokmål', # Norwegian (falls back to nb).
313  'nov' => 'Novial', # Novial
314  'nrm' => 'Nouormand', # Norman
315  'nso' => 'Sesotho sa Leboa', # Northern Sotho
316  'nv' => 'Diné bizaad', # Navajo
317  'ny' => 'Chi-Chewa', # Chichewa
318  'oc' => 'occitan', # Occitan
319  'olo' => 'Livvinkarjala', # Livvi-Karelian
320  'om' => 'Oromoo', # Oromo
321  'or' => 'ଓଡ଼ିଆ', # Oriya
322  'os' => 'Ирон', # Ossetic, bug 29091
323  'pa' => 'ਪੰਜਾਬੀ', # Eastern Punjabi (Gurmukhi script) (pan)
324  'pag' => 'Pangasinan', # Pangasinan
325  'pam' => 'Kapampangan', # Pampanga
326  'pap' => 'Papiamentu', # Papiamentu
327  'pcd' => 'Picard', # Picard
328  'pdc' => 'Deitsch', # Pennsylvania German
329  'pdt' => 'Plautdietsch', # Plautdietsch/Mennonite Low German
330  'pfl' => 'Pälzisch', # Palatinate German
331  'pi' => 'पालि', # Pali
332  'pih' => 'Norfuk / Pitkern', # Norfuk/Pitcairn/Norfolk
333  'pl' => 'polski', # Polish
334  'pms' => 'Piemontèis', # Piedmontese
335  'pnb' => 'پنجابی', # Western Punjabi
336  'pnt' => 'Ποντιακά', # Pontic/Pontic Greek
337  'prg' => 'Prūsiskan', # Prussian
338  'ps' => 'پښتو', # Pashto
339  'pt' => 'português', # Portuguese
340  'pt-br' => 'português do Brasil', # Brazilian Portuguese
341  'qu' => 'Runa Simi', # Southern Quechua
342  'qug' => 'Runa shimi', # Kichwa/Northern Quechua (temporarily used until Kichwa has its own)
343  'rgn' => 'Rumagnôl', # Romagnol
344  'rif' => 'Tarifit', # Tarifit
345  'rm' => 'rumantsch', # Raeto-Romance
346  'rmy' => 'Romani', # Vlax Romany
347  'rn' => 'Kirundi', # Rundi/Kirundi/Urundi
348  'ro' => 'română', # Romanian
349  'roa-rup' => 'armãneashti', # Aromanian (deprecated code, 'rup' exists in ISO 693-3)
350  'roa-tara' => 'tarandíne', # Tarantino
351  'ru' => 'русский', # Russian
352  'rue' => 'русиньскый', # Rusyn
353  'rup' => 'armãneashti', # Aromanian
354  'ruq' => 'Vlăheşte', # Megleno-Romanian (multiple scripts - defaults to Latin)
355  'ruq-cyrl' => 'Влахесте', # Megleno-Romanian (Cyrillic script)
356  # 'ruq-grek' => 'Βλαεστε', # Megleno-Romanian (Greek script)
357  'ruq-latn' => 'Vlăheşte', # Megleno-Romanian (Latin script)
358  'rw' => 'Kinyarwanda', # Kinyarwanda, should possibly be Kinyarwandi
359  'sa' => 'संस्कृतम्', # Sanskrit
360  'sah' => 'саха тыла', # Sakha
361  'sat' => 'Santali', # Santali
362  'sc' => 'sardu', # Sardinian
363  'scn' => 'sicilianu', # Sicilian
364  'sco' => 'Scots', # Scots
365  'sd' => 'سنڌي', # Sindhi
366  'sdc' => 'Sassaresu', # Sassarese
367  'sdh' => 'کوردی خوارگ', # Southern Kurdish
368  'se' => 'sámegiella', # Northern Sami
369  'sei' => 'Cmique Itom', # Seri
370  'ses' => 'Koyraboro Senni', # Koyraboro Senni
371  'sg' => 'Sängö', # Sango/Sangho
372  'sgs' => 'žemaitėška', # Samogitian
373  'sh' => 'srpskohrvatski / српскохрватски', # Serbocroatian
374  'shi' => 'Tašlḥiyt/ⵜⴰⵛⵍⵃⵉⵜ', # Tachelhit (multiple scripts - defaults to Latin)
375  'shi-tfng' => 'ⵜⴰⵛⵍⵃⵉⵜ', # Tachelhit (Tifinagh script)
376  'shi-latn' => 'Tašlḥiyt', # Tachelhit (Latin script)
377  'shn' => 'ၽႃႇသႃႇတႆး ', # Shan
378  'si' => 'සිංහල', # Sinhalese
379  'simple' => 'Simple English', # Simple English
380  'sk' => 'slovenčina', # Slovak
381  'sl' => 'slovenščina', # Slovenian
382  'sli' => 'Schläsch', # Lower Selisian
383  'sm' => 'Gagana Samoa', # Samoan
384  'sma' => 'Åarjelsaemien', # Southern Sami
385  'sn' => 'chiShona', # Shona
386  'so' => 'Soomaaliga', # Somali
387  'sq' => 'shqip', # Albanian
388  'sr' => 'српски / srpski', # Serbian (multiple scripts - defaults to Cyrillic)
389  'sr-ec' => "српски (ћирилица)\xE2\x80\x8E", # Serbian Cyrillic ekavian
390  'sr-el' => "srpski (latinica)\xE2\x80\x8E", # Serbian Latin ekavian
391  'srn' => 'Sranantongo', # Sranan Tongo
392  'ss' => 'SiSwati', # Swati
393  'st' => 'Sesotho', # Southern Sotho
394  'stq' => 'Seeltersk', # Saterland Frisian
395  'su' => 'Basa Sunda', # Sundanese
396  'sv' => 'svenska', # Swedish
397  'sw' => 'Kiswahili', # Swahili
398  'szl' => 'ślůnski', # Silesian
399  'ta' => 'தமிழ்', # Tamil
400  'tcy' => 'ತುಳು', # Tulu
401  'te' => 'తెలుగు', # Telugu
402  'tet' => 'tetun', # Tetun
403  'tg' => 'тоҷикӣ', # Tajiki (falls back to tg-cyrl)
404  'tg-cyrl' => 'тоҷикӣ', # Tajiki (Cyrllic script) (default)
405  'tg-latn' => 'tojikī', # Tajiki (Latin script)
406  'th' => 'ไทย', # Thai
407  'ti' => 'ትግርኛ', # Tigrinya
408  'tk' => 'Türkmençe', # Turkmen
409  'tl' => 'Tagalog', # Tagalog
410  'tly' => 'толышә зывон', # Talysh
411  'tn' => 'Setswana', # Setswana
412  'to' => 'lea faka-Tonga', # Tonga (Tonga Islands)
413  'tokipona' => 'Toki Pona', # Toki Pona
414  'tpi' => 'Tok Pisin', # Tok Pisin
415  'tr' => 'Türkçe', # Turkish
416  'tru' => 'Ṫuroyo', # Turoyo
417  'ts' => 'Xitsonga', # Tsonga
418  'tt' => 'татарча/tatarça', # Tatar (multiple scripts - defaults to Cyrillic)
419  'tt-cyrl' => 'татарча', # Tatar (Cyrillic script) (default)
420  'tt-latn' => 'tatarça', # Tatar (Latin script)
421  'tum' => 'chiTumbuka', # Tumbuka
422  'tw' => 'Twi', # Twi, (FIXME!)
423  'ty' => 'reo tahiti', # Tahitian
424  'tyv' => 'тыва дыл', # Tyvan
425  'tzm' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ', # Tamazight
426  'udm' => 'удмурт', # Udmurt
427  'ug' => 'ئۇيغۇرچە / Uyghurche', # Uyghur (multiple scripts - defaults to Arabic)
428  'ug-arab' => 'ئۇيغۇرچە', # Uyghur (Arabic script) (default)
429  'ug-latn' => 'Uyghurche', # Uyghur (Latin script)
430  'uk' => 'українська', # Ukrainian
431  'ur' => 'اردو', # Urdu
432  'uz' => 'oʻzbekcha/ўзбекча', # Uzbek (multiple scripts - defaults to Latin)
433  'uz-cyrl' => 'ўзбекча', # Uzbek Cyrillic
434  'uz-latn' => 'oʻzbekcha', # Uzbek Latin (default)
435  've' => 'Tshivenda', # Venda
436  'vec' => 'vèneto', # Venetian
437  'vep' => 'vepsän kel’', # Veps
438  'vi' => 'Tiếng Việt', # Vietnamese
439  'vls' => 'West-Vlams', # West Flemish
440  'vmf' => 'Mainfränkisch', # Upper Franconian, Main-Franconian
441  'vo' => 'Volapük', # Volapük
442  'vot' => 'Vaďďa', # Vod/Votian
443  'vro' => 'Võro', # Võro
444  'wa' => 'walon', # Walloon
445  'war' => 'Winaray', # Waray-Waray
446  'wo' => 'Wolof', # Wolof
447  'wuu' => '吴语', # Wu Chinese
448  'xal' => 'хальмг', # Kalmyk-Oirat
449  'xh' => 'isiXhosa', # Xhosan
450  'xmf' => 'მარგალური', # Mingrelian
451  'yi' => 'ייִדיש', # Yiddish
452  'yo' => 'Yorùbá', # Yoruba
453  'yue' => '粵語', # Cantonese
454  'za' => 'Vahcuengh', # Zhuang
455  'zea' => 'Zeêuws', # Zeeuws/Zeaws
456  'zh' => '中文', # (Zhōng Wén) - Chinese
457  'zh-classical' => '文言', # Classical Chinese/Literary Chinese -- (see bug 8217)
458  'zh-cn' => "中文(中国大陆)\xE2\x80\x8E", # Chinese (PRC)
459  'zh-hans' => "中文(简体)\xE2\x80\x8E", # Mandarin Chinese (Simplified Chinese script) (cmn-hans)
460  'zh-hant' => "中文(繁體)\xE2\x80\x8E", # Mandarin Chinese (Traditional Chinese script) (cmn-hant)
461  'zh-hk' => "中文(香港)\xE2\x80\x8E", # Chinese (Hong Kong)
462  'zh-min-nan' => 'Bân-lâm-gú', # Min-nan -- (see bug 8217)
463  'zh-mo' => "中文(澳門)\xE2\x80\x8E", # Chinese (Macau)
464  'zh-my' => "中文(马来西亚)\xE2\x80\x8E", # Chinese (Malaysia)
465  'zh-sg' => "中文(新加坡)\xE2\x80\x8E", # Chinese (Singapore)
466  'zh-tw' => "中文(台灣)\xE2\x80\x8E", # Chinese (Taiwan)
467  'zh-yue' => '粵語', # Cantonese -- (see bug 8217)
468  'zu' => 'isiZulu' # Zulu
469  ];
470 }
you don t have to do a grep find to see where the $wgReverseTitle variable is used
Definition: hooks.txt:117
We use the convention $dbr for read and $dbw for write to help you keep track of whether the database object is a the world will explode Or to be a subsequent write query which succeeded on the master may fail when replicated to the slave due to a unique key collision Replication on the slave will stop and it may take hours to repair the database and get it back online Setting read_only in my cnf on the slave will avoid this but given the dire we prefer to have as many checks as possible We provide a but the wrapper functions like please read the documentation for except in special pages derived from QueryPage It s a common pitfall for new developers to submit code containing SQL queries which examine huge numbers of rows Remember that COUNT * is(N), counting rows in atable is like counting beans in a bucket.------------------------------------------------------------------------Replication------------------------------------------------------------------------The largest installation of MediaWiki, Wikimedia, uses a large set ofslave MySQL servers replicating writes made to a master MySQL server.Itis important to understand the issues associated with this setup if youwant to write code destined for Wikipedia.It's often the case that the best algorithm to use for a given taskdepends on whether or not replication is in use.Due to our unabashedWikipedia-centrism, we often just use the replication-friendly version, but if you like, you can use wfGetLB() ->getServerCount() > 1 tocheck to see if replication is in use.===Lag===Lag primarily occurs when large write queries are sent to the master.Writes on the master are executed in parallel, but they are executed inserial when they are replicated to the slaves.The master writes thequery to the binlog when the transaction is committed.The slaves pollthe binlog and start executing the query as soon as it appears.They canservice reads while they are performing a write query, but will not readanything more from the binlog and thus will perform no more writes.Thismeans that if the write query runs for a long time, the slaves will lagbehind the master for the time it takes for the write query to complete.Lag can be exacerbated by high read load.MediaWiki's load balancer willstop sending reads to a slave when it is lagged by more than 30 seconds.If the load ratios are set incorrectly, or if there is too much loadgenerally, this may lead to a slave permanently hovering around 30seconds lag.If all slaves are lagged by more than 30 seconds, MediaWiki will stopwriting to the database.All edits and other write operations will berefused, with an error returned to the user.This gives the slaves achance to catch up.Before we had this mechanism, the slaves wouldregularly lag by several minutes, making review of recent editsdifficult.In addition to this, MediaWiki attempts to ensure that the user seesevents occurring on the wiki in chronological order.A few seconds of lagcan be tolerated, as long as the user sees a consistent picture fromsubsequent requests.This is done by saving the master binlog positionin the session, and then at the start of each request, waiting for theslave to catch up to that position before doing any reads from it.Ifthis wait times out, reads are allowed anyway, but the request isconsidered to be in"lagged slave mode".Lagged slave mode can bechecked by calling wfGetLB() ->getLaggedSlaveMode().The onlypractical consequence at present is a warning displayed in the pagefooter.===Lag avoidance===To avoid excessive lag, queries which write large numbers of rows shouldbe split up, generally to write one row at a time.Multi-row INSERT...SELECT queries are the worst offenders should be avoided altogether.Instead do the select first and then the insert.===Working with lag===Despite our best efforts, it's not practical to guarantee a low-lagenvironment.Lag will usually be less than one second, but mayoccasionally be up to 30 seconds.For scalability, it's very importantto keep load on the master low, so simply sending all your queries tothe master is not the answer.So when you have a genuine need forup-to-date data, the following approach is advised:1) Do a quick query to the master for a sequence number or timestamp 2) Run the full query on the slave and check if it matches the data you gotfrom the master 3) If it doesn't, run the full query on the masterTo avoid swamping the master every time the slaves lag, use of thisapproach should be kept to a minimum.In most cases you should just readfrom the slave and let the user deal with the delay.------------------------------------------------------------------------Lock contention------------------------------------------------------------------------Due to the high write rate on Wikipedia(and some other wikis), MediaWiki developers need to be very careful to structure their writesto avoid long-lasting locks.By default, MediaWiki opens a transactionat the first query, and commits it before the output is sent.Locks willbe held from the time when the query is done until the commit.So youcan reduce lock time by doing as much processing as possible before youdo your write queries.Often this approach is not good enough, and it becomes necessary toenclose small groups of queries in their own transaction.Use thefollowing syntax:$dbw=wfGetDB(DB_MASTER
Language names in their own languages (language autonyms).
Definition: Names.php:47
null for the local wiki Added in
Definition: hooks.txt:1555
The package scripts
Definition: README.txt:1
and(b) You must cause any modified files to carry prominent notices stating that You changed the files
Some information about database access in MediaWiki By Tim January Database layout For information about the MediaWiki database such as a description of the tables and their please see
Definition: database.txt:2
this hook is for auditing only RecentChangesLinked and Watchlist RecentChangesLinked and Watchlist e g Watchlist removed from all revisions and log entries to which it was applied This gives extensions a chance to take it off their books as the deletion has already been partly carried out by this point or something similar the user will be unable to create the tag set and then return false from the hook function Ensure you consume the ChangeTagAfterDelete hook to carry out custom deletion actions as context called by AbstractContent::getParserOutput May be used to override the normal model specific rendering of page content as context as context the output can only depend on parameters provided to this hook not on global state indicating whether full HTML should be generated If generation of HTML may be but other information should still be present in the ParserOutput object to manipulate or replace but no entry for that model exists in $wgContentHandlers if desired whether it is OK to use $contentModel on $title Handler functions that modify $ok should generally return false to prevent further hooks from further modifying $ok inclusive false for true for descending in case the handler function wants to provide a converted Content object Note that $result getContentModel() must return $toModel. 'CustomEditor'$rcid is used in generating this variable which contains information about the new such as the revision s whether the revision was marked as a minor edit or not
Definition: hooks.txt:1156
injection txt This is an overview of how MediaWiki makes use of dependency injection The design described here grew from the discussion of RFC T384 The term dependency this means that anything an object needs to operate should be injected from the the object itself should only know narrow no concrete implementation of the logic it relies on The requirement to inject everything typically results in an architecture that based on two main types of and essentially stateless service objects that use other service objects to operate on the value objects As of the beginning MediaWiki is only starting to use the DI approach Much of the code still relies on global state or direct resulting in a highly cyclical dependency which acts as the top level factory for services in MediaWiki which can be used to gain access to default instances of various services MediaWikiServices however also allows new services to be defined and default services to be redefined Services are defined or redefined by providing a callback the instantiator that will return a new instance of the service When it will create an instance of MediaWikiServices and populate it with the services defined in the files listed by thereby bootstrapping the DI framework Per $wgServiceWiringFiles lists includes ServiceWiring php
Definition: injection.txt:35
and how to run hooks for an and one after Each event has a preferably in CamelCase For ArticleDelete hook A clump of code and data that should be run when an event happens This can be either a function and a chunk of or an object and a method hook function The function part of a third party developers and local administrators to define code that will be run at certain points in the mainline code
Definition: hooks.txt:23