Open main menu
Home
Random
Recent changes
Special pages
Community portal
Settings
About Consumerium development wiki
Disclaimers
Consumerium development wiki
Search
User menu
Talk
Contributions
Log in
Editing
Module:Lang/data
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
--[[--------------------------< L A N G _ N A M E _ T A B L E >------------------------------------------------ primary table of tables that decode: lang -> language tags and names script -> ISO 15924 script tags region -> ISO 3166 region tags variant -> iana registered variant tags suppressed -> map of scripts tags and their associated language tags all of these data come from separate modules that are derived from the IANA language-subtag-registry file key_to_lower() avoids the metatable trap and sets all keys in the subtables to lowercase. Many language codes have multiple associated names; Module:lang is only concerned with the first name so key_to_lower() only fetches the first name. TODO: instead of returning: ["key"] = {"name"} where each table has only one name, return ["key"] = "name" requires changes in Module:Lang. ]] local function key_to_lower (module, src_type) local out = {}; local source = (('var_sup' == src_type) and require (module)) or mw.loadData (module); -- fetch data from this module; require() avoids metatable trap for variant data if 'var_sup' == src_type then for k, v in pairs (source) do out[k:lower()] = v; -- for variant, everything is needed end elseif 'lang' == src_type and source.active then -- for ~/iana_languages (active) for k, v in pairs (source.active) do out[k:lower()] = {v[1]}; -- ignore multiple names; take first name only end elseif 'lang_dep' == src_type and source.deprecated then -- for ~/iana_languages (deprecated) for k, v in pairs (source.deprecated) do out[k:lower()] = {v[1]}; -- ignore multiple names; take first name only end else -- here for all other sources for k, v in pairs (source) do out[k:lower()] = {v[1]}; -- ignore multiple names; take first name only end end return out; end local lang_name_table = { lang = key_to_lower ('Module:Language/data/iana languages', 'lang'), lang_dep = key_to_lower ('Module:Language/data/iana languages', 'lang_dep'), script = key_to_lower ('Module:Language/data/iana scripts'), -- script keys are capitalized; set to lower region = key_to_lower ('Module:Language/data/iana regions'), -- region keys are uppercase; set to lower variant = key_to_lower ('Module:Language/data/iana variants', 'var_sup'), suppressed = key_to_lower ('Module:Language/data/iana suppressed scripts', 'var_sup'), -- script keys are capitalized; set to lower } --[[--------------------------< O V E R R I D E >-------------------------------------------------------------- Language codes and names in this table override the BCP47 names in lang_name_table. indexes in this table shall always be lower case ]] local override = { ------------------------------< I S O _ 6 3 9 - 1 >------------------------------------------------------------ ["ca-valencia"] = {"Valencian"}, ["cu"] = {"Church Slavonic"}, -- 2nd IANA name; ["de-at"] = {"Austrian German"}, -- these code-region and code-variant tags to match en.wiki article names ["de-ch"] = {"Swiss Standard German"}, ["en-au"] = {"Australian English"}, ["en-ca"] = {"Canadian English"}, ["en-emodeng"] = {"Early Modern English"}, ["en-gb"] = {"British English"}, ["en-ie"] = {"Irish English"}, ["en-in"] = {"Indian English"}, ["en-nz"] = {"New Zealand English"}, ["en-us"] = {"American English"}, ["en-za"] = {"South African English"}, ["fy"] = {"West Frisian"}, -- Western Frisian ["mo"] = {"Moldovan"}, -- Moldavian (deprecated code); to match en.wiki article title ["oc-provenc"] = {"Provençal"}, ["ps"] = {"Pashto"}, -- Pushto ["tw-asante"] = {"Asante Twi"}, -- these ISO 639-1 language-name overrides imported from Module:Language/data/wp_languages --<begin do-not-edit except to comment out>-- ["av"] = {"Avar"}, -- Avaric ["bo"] = {"Standard Tibetan"}, -- Tibetan ["el"] = {"Greek"}, -- Modern Greek -- ["en-SA"] = {"South African English"}, -- English; no; SA is not South Africa it Saudi Arabia; ZA is South Africa ["ff"] = {"Fula"}, -- Fulah ["ht"] = {"Haitian Creole"}, -- Haitian ["hz"] = {"Otjiherero"}, -- Herero ["ii"] = {"Yi"}, -- Sichuan Yi ["ki"] = {"Gikuyu"}, -- Kikuyu ["kl"] = {"Greenlandic"}, -- Kalaallisut ["ky"] = {"Kyrgyz"}, -- Kirghiz ["lg"] = {"Luganda"}, -- Ganda ["li"] = {"Limburgish"}, -- Limburgan ["mi"] = {"Māori"}, -- Maori ["na"] = {"Nauruan"}, -- Nauru ["nb"] = {"Bokmål"}, -- Norwegian Bokmål ["nd"] = {"Northern Ndebele"}, -- North Ndebele ["nn"] = {"Nynorsk"}, -- Norwegian Nynorsk ["nr"] = {"Southern Ndebele"}, -- South Ndebele ["ny"] = {"Chichewa"}, -- Nyanja ["oj"] = {"Ojibwe"}, -- Ojibwa ["or"] = {"Odia"}, -- Oriya ["pa"] = {"Punjabi"}, -- Panjabi ["rn"] = {"Kirundi"}, -- Rundi ["sl"] = {"Slovene"}, -- Slovenian ["ss"] = {"Swazi"}, -- Swati ["st"] = {"Sotho"}, -- Southern Sotho ["to"] = {"Tongan"}, -- Tonga --<end do-not-edit except to comment out>-- ------------------------------< I S O _ 6 3 9 - 2, - 3, - 5 >---------------------------------------------- ["arc"] = {"Aramaic"}, -- Official Aramaic (700-300 BCE), Imperial Aramaic (700-300 BCE); ["art"] = {"constructed"}, -- to match en.wiki article; lowercase for category name ["bhd"] = {"Bhadarwahi"}, -- Bhadrawahi; to match en.wiki article title ["bla"] = {"Blackfoot"}, -- Siksika; to match en.wiki article title ["bua"] = {"Buryat"}, -- Buriat; this is a macro language; these four use wp preferred transliteration; ["bxm"] = {"Mongolian Buryat"}, -- Mongolia Buriat; these three all redirect to Buryat ["bxr"] = {"Russian Buryat"}, -- Russia Buriat; ["bxu"] = {"Chinese Buryat"}, -- China Buriat; ["byr"] = {"Yipma"}, -- Baruya, Yipma ["egy"] = {"Ancient Egyptian"}, -- Egyptian (Ancient); distinguish from contemporary arz: Egyptian Arabic ["frr"] = {"North Frisian"}, -- Northern Frisian ["frs"] = {"East Frisian Low Saxon"}, -- Eastern Frisian ["ilo"] = {"Ilocano"}, -- Iloko; to match en.wiki article title ["jam"] = {"Jamaican Patois"}, -- Jamaican Creole English ["mhr"] = {"Meadow Mari"}, -- Eastern Mari ["mid"] = {"Modern Mandaic"}, -- Mandaic ["mla"] = {"Tamambo"}, -- Malo ['mte'] = {"Mono-Alu"}, -- Mono (Solomon Islands) ["nan-tw"] = {"Taiwanese Hokkien"}, -- make room for IANA / 639-3 nan Min Nan Chinese; match en.wiki article title ["nrf"] = {"Norman"}, -- not quite a collective - IANA name: Jèrriais; categorizes to Norman-language text ["nzi"] = {"Nzema"}, -- Nzima; to match en.wiki article title ["orv"] = {"Old East Slavic"}, -- Old Russian ["pfl"] = {"Palatine German"}, -- Pfaelzisch; to match en.wiki article ["pms"] = {"Piedmontese"}, -- Piemontese; to match en.wiki article title ["pnb"] = {"Punjabi (Western)"}, -- Western Panjabi; dab added to override import from ~/wp languages and distinguish pnb from pa in reverse look up tag_from_name() ["stq"] = {"Saterland Frisian"}, -- Saterfriesisch ["und"] = {"undetermined"}, -- capitalization to match existing category ["wrg"] = {"Warrongo"}, -- Warungu ["xal-ru"] = {"Kalmyk"}, -- to match en.wiki article title ["xgf"] = {"Tongva"}, -- ISO 639-3 is Gabrielino-Fernandeño -- these ISO 639-2, -3 language-name overrides imported from Module:Language/data/wp_languages --<begin do-not-edit except to comment out>-- ["ace"] = {"Acehnese"}, -- Achinese ["aec"] = {"Sa'idi Arabic"}, -- Saidi Arabic ["akl"] = {"Aklan"}, -- Aklanon ["alt"] = {"Altay"}, -- Southern Altai ["apm"] = {"Mescalero-Chiricahua"}, -- Mescalero-Chiricahua Apache ["bal"] = {"Balochi"}, -- Baluchi ["bcl"] = {"Central Bicolano"}, -- Central Bikol ["bin"] = {"Edo"}, -- Bini ["bpy"] = {"Bishnupriya Manipuri"}, -- Bishnupriya ["chg"] = {"Chagatay"}, -- Chagatai ["ckb"] = {"Sorani Kurdish"}, -- Central Kurdish ["cnu"] = {"Shenwa"}, -- Chenoua ["coc"] = {"Cocopah"}, -- Cocopa ["diq"] = {"Zazaki"}, -- Dimli ["fit"] = {"Meänkieli"}, -- Tornedalen Finnish ["fkv"] = {"Kven"}, -- Kven Finnish ["frk"] = {"Old Frankish"}, -- Frankish ["gez"] = {"Ge'ez"}, -- Geez ["gju"] = {"Gujari"}, -- Gujari ["gsw"] = {"Alemannic German"}, -- Swiss German ["gul"] = {"Gullah"}, -- Sea Island Creole English ["hak"] = {"Hakka"}, -- Hakka Chinese ["hbo"] = {"Biblical Hebrew"}, -- Ancient Hebrew ["hnd"] = {"Hindko"}, -- Southern Hindko -- ["ikt"] = {"Inuvialuk"}, -- Inuinnaqtun ["kaa"] = {"Karakalpak"}, -- Kara-Kalpak ["khb"] = {"Tai Lü"}, -- Lü ["kmr"] = {"Kurmanji Kurdish"}, -- Northern Kurdish ["kpo"] = {"Kposo"}, -- Ikposo ["krj"] = {"Kinaray-a"}, -- Kinaray-A ["ktz"] = {"Juǀ'hoan"}, -- Juǀʼhoan ["lez"] = {"Lezgian"}, -- Lezghian ["liv"] = {"Livonian"}, -- Liv ["lng"] = {"Lombardic"}, -- Langobardic ["mia"] = {"Miami-Illinois"}, -- Miami ["miq"] = {"Miskito"}, -- Mískito ["mix"] = {"Mixtec"}, -- Mixtepec Mixtec ["mni"] = {"Meitei"}, -- Manipuri ["mrj"] = {"Hill Mari"}, -- Western Mari ["mww"] = {"White Hmong"}, -- Hmong Daw ["nds-nl"] = {"Dutch Low Saxon"}, -- Low German ["new"] = {"Nepal Bhasa"}, -- Newari ["nso"] = {"Northern Sotho"}, -- Pedi ["nwc"] = {"Classical Nepal Bhasa"}, -- Classical Newari ["ood"] = {"O'odham"}, -- Tohono O'odham ["otk"] = {"Old Turkic"}, -- Old Turkish ["pal"] = {"Middle Persian"}, -- Pahlavi ["pam"] = {"Kapampangan"}, -- Pampanga ["phr"] = {"Potwari"}, -- Pahari-Potwari ["pka"] = {"Jain Prakrit"}, -- Ardhamāgadhī Prākrit -- ["pnb"] = {"Punjabi"}, -- Western Panjabi ["psu"] = {"Shauraseni"}, -- Sauraseni Prākrit ["rap"] = {"Rapa Nui"}, -- Rapanui ["rar"] = {"Cook Islands Māori"}, -- Rarotongan ["rmu"] = {"Scandoromani"}, -- Tavringer Romani ["rom"] = {"Romani"}, -- Romany ["rup"] = {"Aromanian"}, -- Macedo-Romanian ["ryu"] = {"Okinawan"}, -- Central Okinawan ["sdc"] = {"Sassarese"}, -- Sassarese Sardinian ["sdn"] = {"Gallurese"}, -- Gallurese Sardinian ["shp"] = {"Shipibo"}, -- Shipibo-Conibo ["src"] = {"Logudorese"}, -- Logudorese Sardinian ["sro"] = {"Campidanese"}, -- Campidanese Sardinian ["tkl"] = {"Tokelauan"}, -- Tokelau ["tvl"] = {"Tuvaluan"}, -- Tuvalu ["tyv"] = {"Tuvan"}, -- Tuvinian ["vls"] = {"West Flemish"}, -- Vlaams ["wep"] = {"Westphalian"}, -- Westphalien ["xal"] = {"Oirat"}, -- Kalmyk ["xcl"] = {"Old Armenian"}, -- Classical Armenian ["yua"] = {"Yucatec Maya"}, -- Yucateco --<end do-not-edit except to comment out>-- ------------------------------< P R I V A T E _ U S E _ T A G S >---------------------------------------------- ["cel-x-proto"] = {"Proto-Celtic"}, -- cel in IANA is Celtic languages ["gem-x-proto"] = {"Proto-Germanic"}, -- gem in IANA is Germanic languages ["gmw-x-ecg"] = {"East Central German"}, ["grc-x-aeolic"] = {"Aeolic Greek"}, -- these grc-x-... codes are preferred alternates to the non-standard catchall code grc-gre ["grc-x-attic"] = {"Attic Greek"}, ["grc-x-biblical"] = {"Biblical Greek"}, ["grc-x-byzant"] = {"Byzantine Greek"}, ["grc-x-classic"] = {"Classical Greek"}, ["grc-x-doric"] = {"Doric Greek"}, ["grc-x-hellen"] = {"Hellenistic Greek"}, ["grc-x-ionic"] = {"Ionic Greek"}, ["grc-x-koine"] = {"Koinē Greek"}, ["grc-x-medieval"] = {"Medieval Greek"}, ["grc-x-patris"] = {"Patristic Greek"}, ["grk-x-proto"] = {"Proto-Greek"}, -- grk in IANA is Greek languages ["iir-x-proto"] = {"Proto-Indo-Iranian"}, -- iir in IANA is Indo-Iranian Languages ["ine-x-proto"] = {"Proto-Indo-European"}, ["ira-x-proto"] = {"Proto-Iranian"}, -- ira in IANA is Iranian languages ["itc-x-proto"] = {"Proto-Italic"}, -- itc in IANA is Italic languages ["ksh-x-colog"] = {"Colognian"}, -- en.wiki article is Colognian; ksh (Kölsch) redirects there ["mis-x-ripuar"] = {"Ripuarian"}, -- replaces improper use of ksh in wp_languages ["sem-x-proto"] = {"Proto-Semitic"}, ["sla-x-proto"] = {"Proto-Slavic"}, -- sla in IANA is Slavic languages ["yuf-x-hav"] = {"Havasupai"}, -- IANA name for these three is Havasupai-Walapai-Yavapai ["yuf-x-wal"] = {"Walapai"}, ["yuf-x-yav"] = {"Yavapai"}, } --[[--------------------------< A R T I C L E _ L I N K >------------------------------------------------------ for those rare occasions when article titles don't fit with the normal '<language name>-language', this table maps language code to article title. Use of this table should be avoided and the use of redirects preferred as that is the long-standing method of handling article names that don't fit with the normal pattern ]] local article_name = { ["lij"] = {"Ligurian (Romance language)"}, -- Ligurian; see Template_talk:Lang#Ligurian_dab ['mnh'] = {"Mono language (Congo)"}, -- Mono (Democratic Republic of Congo); see Template_talk:Lang#Mono_languages ['mnr'] = {"Mono language (California)"}, -- Mono (USA) ['mru'] = {"Mono language (Cameroon)"}, -- Mono (Cameroon) ["xlg"] = {"Ligurian (ancient language)"}, -- see Template_talk:Lang#Ligurian_dab } --[=[-------------------------< R T L _ S C R I P T S >-------------------------------------------------------- ISO 15924 scripts that are written right-to-left. Data in this table taken from [[ISO 15924#List of codes]] last update to this list: 2017-12-24 ]=] local rtl_scripts = { 'adlm', 'arab', 'aran', 'armi', 'avst', 'cprt', 'egyd', 'egyh', 'hatr', 'hebr', 'hung', 'inds', 'khar', 'lydi', 'mand', 'mani', 'mend', 'merc', 'mero', 'narb', 'nbat', 'nkoo', 'orkh', 'palm', 'phli', 'phlp', 'phlv', 'phnx', 'prti', 'rohg', 'samr', 'sarb', 'sogd', 'sogo', 'syrc', 'syre', 'syrj', 'syrn', 'thaa', 'wole', }; --[[--------------------------< T R A N S L I T _ T I T L E S >------------------------------------------------ This is a table of tables of transliteration standards and the language codes or language scripts that apply to those standards. This table is used to create the tool-tip text associated with the transliterated text displayed by some of the {{lang-??}} templates. These tables are more-or-less copied directly from {{transl}}. The standard 'NO_STD' is a construct to allow for the cases when no |std= parameter value is provided. ]] local translit_title_table = { ['ahl'] = { ['default'] = 'Academy of the Hebrew Language transliteration', }, ['ala'] = { ['default'] = 'American Library Association – Library of Congress transliteration', }, ['ala-lc'] = { ['default'] = 'American Library Association – Library of Congress transliteration', }, ['batr'] = { ['default'] = 'Bikdash Arabic Transliteration Rules', }, ['bgn/pcgn'] = { ['default'] = 'Board on Geographic Names / Permanent Committee on Geographical Names transliteration', }, ['din'] = { ['ar'] = 'DIN 31635 Arabic', ['fa'] = 'DIN 31635 Arabic', ['ku'] = 'DIN 31635 Arabic', ['ps'] = 'DIN 31635 Arabic', ['tg'] = 'DIN 31635 Arabic', ['ug'] = 'DIN 31635 Arabic', ['ur'] = 'DIN 31635 Arabic', ['arab'] = 'DIN 31635 Arabic', ['default'] = 'DIN transliteration', }, ['eae'] = { ['default'] = 'Encyclopaedia Aethiopica transliteration', }, ['hepburn'] = { ['default'] = 'Hepburn transliteration', }, ['hunterian'] = { ['default'] = 'Hunterian transliteration', }, ['iast'] = { ['default'] = 'International Alphabet of Sanskrit transliteration', }, ['iso'] = { -- when a transliteration standard is supplied ['ab'] = 'ISO 9 Cyrillic', ['ba'] = 'ISO 9 Cyrillic', ['be'] = 'ISO 9 Cyrillic', ['bg'] = 'ISO 9 Cyrillic', ['kk'] = 'ISO 9 Cyrillic', ['ky'] = 'ISO 9 Cyrillic', ['mn'] = 'ISO 9 Cyrillic', ['ru'] = 'ISO 9 Cyrillic', ['tg'] = 'ISO 9 Cyrillic', ['uk'] = 'ISO 9 Cyrillic', ['bua'] = 'ISO 9 Cyrillic', ['sah'] = 'ISO 9 Cyrillic', ['tut'] = 'ISO 9 Cyrillic', ['xal'] = 'ISO 9 Cyrillic', ['cyrl'] = 'ISO 9 Cyrillic', ['ar'] = 'ISO 233 Arabic', ['ku'] = 'ISO 233 Arabic', ['ps'] = 'ISO 233 Arabic', ['ug'] = 'ISO 233 Arabic', ['ur'] = 'ISO 233 Arabic', ['arab'] = 'ISO 233 Arabic', ['he'] = 'ISO 259 Hebrew', ['yi'] = 'ISO 259 Hebrew', ['hebr'] = 'ISO 259 Hebrew', ['el'] = 'ISO 843 Greek', ['grc'] = 'ISO 843 Greek', ['ja'] = 'ISO 3602 Japanese', ['hira'] = 'ISO 3602 Japanese', ['hrkt'] = 'ISO 3602 Japanese', ['jpan'] = 'ISO 3602 Japanese', ['kana'] = 'ISO 3602 Japanese', ['zh'] = 'ISO 7098 Chinese', ['chi'] = 'ISO 7098 Chinese', ['pny'] = 'ISO 7098 Chinese', ['zho'] = 'ISO 7098 Chinese', -- ['han'] = 'ISO 7098 Chinese', -- unicode alias of Hani? doesn't belong here? should be Hani? ['hans'] = 'ISO 7098 Chinese', ['hant'] = 'ISO 7098 Chinese', ['ka'] = 'ISO 9984 Georgian', ['kat'] = 'ISO 9984 Georgian', ['arm'] = 'ISO 9985 Armenian', ['hy'] = 'ISO 9985 Armenian', ['th'] = 'ISO 11940 Thai', ['tha'] = 'ISO 11940 Thai', ['ko'] = 'ISO 11941 Korean', ['kor'] = 'ISO 11941 Korean', ['awa'] = 'ISO 15919 Indic', ['bho'] = 'ISO 15919 Indic', ['bn'] = 'ISO 15919 Indic', ['bra'] = 'ISO 15919 Indic', ['doi'] = 'ISO 15919 Indic', ['dra'] = 'ISO 15919 Indic', ['gon'] = 'ISO 15919 Indic', ['gu'] = 'ISO 15919 Indic', ['hi'] = 'ISO 15919 Indic', ['inc'] = 'ISO 15919 Indic', ['kn'] = 'ISO 15919 Indic', ['kok'] = 'ISO 15919 Indic', ['ks'] = 'ISO 15919 Indic', ['mag'] = 'ISO 15919 Indic', ['mai'] = 'ISO 15919 Indic', ['ml'] = 'ISO 15919 Indic', ['mr'] = 'ISO 15919 Indic', ['ne'] = 'ISO 15919 Indic', ['new'] = 'ISO 15919 Indic', ['or'] = 'ISO 15919 Indic', ['pa'] = 'ISO 15919 Indic', ['raj'] = 'ISO 15919 Indic', ['sa'] = 'ISO 15919 Indic', ['sat'] = 'ISO 15919 Indic', ['sd'] = 'ISO 15919 Indic', ['si'] = 'ISO 15919 Indic', ['ta'] = 'ISO 15919 Indic', ['tcy'] = 'ISO 15919 Indic', ['te'] = 'ISO 15919 Indic', ['beng'] = 'ISO 15919 Indic', ['brah'] = 'ISO 15919 Indic', ['deva'] = 'ISO 15919 Indic', ['gujr'] = 'ISO 15919 Indic', ['guru'] = 'ISO 15919 Indic', ['knda'] = 'ISO 15919 Indic', ['mlym'] = 'ISO 15919 Indic', ['orya'] = 'ISO 15919 Indic', ['sinh'] = 'ISO 15919 Indic', ['taml'] = 'ISO 15919 Indic', ['telu'] = 'ISO 15919 Indic', ['default'] = 'ISO transliteration', }, ['jyutping'] = { ['default'] = 'Jyutping transliteration', }, ['mr'] = { ['default'] = 'McCune–Reischauer transliteration', }, ['nihon-shiki'] = { ['default'] = 'Nihon-shiki transliteration', }, ['no_std'] = { -- when no transliteration standard is supplied ['akk'] = 'Semitic transliteration', ['sem'] = 'Semitic transliteration', ['phnx'] = 'Semitic transliteration', ['xsux'] = 'Cuneiform transliteration', }, ['pinyin'] = { ['default'] = 'Pinyin transliteration', }, ['rr'] = { ['default'] = 'Revised Romanization of Korean transliteration', }, ['rtgs'] = { ['default'] = 'Royal Thai General System of Transcription', }, ['satts'] = { ['default'] = 'Standard Arabic Technical Transliteration System transliteration', }, ['ungegn'] = { ['default'] = 'United Nations Group of Experts on Geographical Names transliteration', }, ['wadegile'] = { ['default'] = 'Wade–Giles transliteration', }, ['wehr'] = { ['default'] = 'Hans Wehr transliteration', }, }; return { article_name = article_name, lang_name_table = lang_name_table, override = override, rtl_scripts = rtl_scripts, translit_title_table = translit_title_table, };
Summary:
Please note that all contributions to Consumerium development wiki are considered to be released under the GNU Free Documentation License 1.3 or later (see
Consumerium:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:
Cancel
Editing help
(opens in new window)