Modul:Lang/data
Izgled
Dokumentaciju za ovaj modul možete napraviti na stranici Modul:Lang/data/dok
--[[--------------------------< 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"] = {"valencijanski"},
["cu"] = {"crkvenoslavenski"}, -- 2nd IANA name;
["de-at"] = {"austrijski njemački"}, -- these code-region and code-variant tags to match en.wiki article names
["de-ch"] = {"švicarski njemački"},
["en-au"] = {"australijski engleski"},
["en-ca"] = {"kanadski engleski"},
["en-emodeng"] = {"rani moderni engleski"},
["en-gb"] = {"britanski engleski"},
["en-ie"] = {"irski engleski"},
["en-in"] = {"indijski engleski"},
["en-nz"] = {"novozelandski engleski"},
["en-us"] = {"američki engleski"},
["en-za"] = {"južnoafrički engleski"},
["fy"] = {"zapadnofrizijski"}, -- Western Frisian
["mo"] = {"moldavijski"}, -- Moldavian (deprecated code); to match en.wiki article title
["oc-provenc"] = {"provansalski"},
["ps"] = {"paštunski"}, -- Pushto
["tw-asante"] = {"asantski"},
-- these ISO 639-1 language-name overrides imported from Module:Language/data/wp_languages
--<begin do-not-edit except to comment out>--
["av"] = {"avarski"}, -- Avaric
["bo"] = {"tibetanski"}, -- Tibetan
["bs"] = {"bosanski"}, -- Bosnian
["el"] = {"grčki"}, -- Modern Greek
-- ["en-SA"] = {"južnoafrički engleski"}, -- English; no; SA is not South Africa it Saudi Arabia; ZA is South Africa
["ff"] = {"fulski"}, -- Fulah
["hr"] = {"hrvatski"}, -- Croatian
["ht"] = {"haićanski kreolski"}, -- Haitian
["hz"] = {"Herero"}, -- Herero
["ii"] = {"Nuosu"}, -- Sichuan Yi
["ki"] = {"Kikuju"}, -- Kikuyu
["kl"] = {"grenlandksi"}, -- Kalaallisut
["ky"] = {"kirgiski"}, -- Kirghiz
["lg"] = {"Luganda"}, -- Ganda
["li"] = {"limburški"}, -- Limburgan
["mi"] = {"maorski"}, -- Maori
["na"] = {"nauruski"}, -- Nauru
["nb"] = {"Bokmål"}, -- Norwegian Bokmål
["nd"] = {"sjeverni ndebelski"}, -- North Ndebele
["nn"] = {"Nynorsk"}, -- Norwegian Nynorsk
["nr"] = {"južni ndebelski"}, -- South Ndebele
["ny"] = {"Čeva"}, -- Nyanja
["oj"] = {"Odžibve"}, -- Ojibwa
["or"] = {"Odija"}, -- Oriya
["pa"] = {"pandžapski"}, -- Panjabi
["rn"] = {"Kirundi"}, -- Rundi
["sl"] = {"slovenski"}, -- Slovenian
["sr"] = {"srpski"}, -- Serbian
["ss"] = {"Svazi"}, -- Swati
["st"] = {"Sotho"}, -- Southern Sotho
["to"] = {"tonganski"}, -- Tonga
--<end do-not-edit except to comment out>--
------------------------------< I S O _ 6 3 9 - 2, - 3, - 5 >----------------------------------------------
["arc"] = {"aramejski"}, -- Official Aramaic (700-300 BCE), Imperial Aramaic (700-300 BCE);
["art"] = {"izgrađeno"}, -- 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"] = {"burjatski"}, -- Buriat; this is a macro language; these four use wp preferred transliteration;
["bxm"] = {"mongolski burjatski"}, -- Mongolia Buriat; these three all redirect to Buryat
["bxr"] = {"ruski burjatski"}, -- Russia Buriat;
["bxu"] = {"kineski burjatski"}, -- China Buriat;
["byr"] = {"Hipma"}, -- Baruya, Yipma
["egy"] = {"antički egipatski"}, -- Egyptian (Ancient); distinguish from contemporary arz: Egyptian Arabic
["ems"] = {"alutički"}, -- Pacific Gulf Yupik; to match en.wiki article title
["frr"] = {"sjevernofrizijski"}, -- Northern Frisian
["frs"] = {"istočnofrizijski donjosaksonski"}, -- Eastern Frisian
["ilo"] = {"ilokanski"}, -- Iloko; to match en.wiki article title
["jam"] = {"jamajčanski kreolski"}, -- Jamaican Creole engleski
["mhr"] = {"istočnomarijski"}, -- Eastern Mari
["mid"] = {"neomandejski"}, -- Mandaic
["mla"] = {"Tamambo"}, -- Malo
['mte'] = {"Mono-Alu"}, -- Mono (Solomon Islands)
["nan-tw"] = {"tajvanski Hokkien"}, -- make room for IANA / 639-3 nan Min Nan Chinese; match en.wiki article title
["nrf"] = {"normandijski"}, -- not quite a collective - IANA name: Jèrriais; categorizes to Norman-language text
["nzi"] = {"Nzema"}, -- Nzima; to match en.wiki article title
["orv"] = {"staroruski"}, -- Old Russian
["pfl"] = {"falački"}, -- Pfaelzisch; to match en.wiki article
["pms"] = {"pijemontski"}, -- Piemontese; to match en.wiki article title
["pnb"] = {"zapadnopandžapski"}, -- Western Panjabi; dab added to override import from ~/wp languages and distinguish pnb from pa in reverse look up tag_from_name()
["stq"] = {"saterlandski frizijski"}, -- Saterfriesisch
["und"] = {"neutvrđen"}, -- capitalization to match existing category
["wrg"] = {"Warrongo"}, -- Warungu
["xal-ru"] = {"kalmički"}, -- 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"] = {"ačenski"}, -- Achinese
["aec"] = {"Sa'idi arapski"}, -- Saidi Arabic
["akl"] = {"Aklanon"}, -- Aklanon
["alt"] = {"altajski"}, -- Southern Altai
["apm"] = {"Mescalero-Chiricahua"}, -- Mescalero-Chiricahua Apache
["bal"] = {"belučki"}, -- Baluchi
["bcl"] = {"srednjobikolski"}, -- Central Bikol
["bin"] = {"Edo"}, -- Bini
["bpy"] = {"bišnuprijski manipurski"}, -- Bishnupriya
["chg"] = {"čagatajski"}, -- Chagatai
["ckb"] = {"srednjokurdski"}, -- Central Kurdish
["cnu"] = {"Chenoua"}, -- Chenoua
["coc"] = {"Cocopah"}, -- Cocopa
["diq"] = {"Zazaki"}, -- Dimli
["fit"] = {"tornedalski finski"}, -- Tornedalen Finnish
["fkv"] = {"kvenski"}, -- Kven Finnish
["frk"] = {"starofranački"}, -- Frankish
["gez"] = {"Ge'ez"}, -- Geez
["gju"] = {"gudžarski"}, -- Gujari
["gsw"] = {"alemanski"}, -- Swiss German
["gul"] = {"Gullah"}, -- Sea Island Creole English
["hak"] = {"Hakka"}, -- Hakka Chinese
["hbo"] = {"biblijski hebrejski"}, -- Ancient Hebrew
["hnd"] = {"Hindko"}, -- Southern Hindko
-- ["ikt"] = {"Inuvialuk"}, -- Inuinnaqtun
["kaa"] = {"karakalpački"}, -- Kara-Kalpak
["khb"] = {"Tai Lü"}, -- Lü
["kmr"] = {"sjevernokurdski"}, -- Northern Kurdish
["kpo"] = {"Kposo"}, -- Ikposo
["krj"] = {"kinerajski"}, -- Kinaray-A
["ktz"] = {"Juǀ'hoan"}, -- Juǀʼhoan
["lez"] = {"lezginski"}, -- Lezghian
["liv"] = {"livonski"}, -- Liv
["lng"] = {"langobardski"}, -- Langobardic
["mia"] = {"Miami-Illinois"}, -- Miami
["miq"] = {"Miskito"}, -- Mískito
["mix"] = {"mikstečki"}, -- Mixtepec Mixtec
["mni"] = {"manipurski"}, -- Manipuri
["mrj"] = {"gornjomarijski"}, -- Western Mari
["mww"] = {"Hmong"}, -- Hmong Daw
["nds-nl"] = {"nizozemski donjosaksonski"}, -- Low German
["new"] = {"nevarski"}, -- Newari
["nso"] = {"sjeverni Sotho"}, -- Pedi
["nwc"] = {"staronevarski"}, -- Classical Newari
["ood"] = {"O'odham"}, -- Tohono O'odham
["otk"] = {"staroturkijski"}, -- Old Turkish
["pal"] = {"srednjoperzijski"}, -- Pahlavi
["pam"] = {"kapampanganski"}, -- Pampanga
["phr"] = {"Pahari-Pothwari"}, -- Pahari-Potwari
["pka"] = {"Jain Prakrit"}, -- Ardhamāgadhī Prākrit
-- ["pnb"] = {"pandžapski"}, -- Western Panjabi
["psu"] = {"Shauraseni Prākrit"}, -- Sauraseni Prākrit
["rap"] = {"rapanujski"}, -- Rapanui
["rar"] = {"rarotonški"}, -- Rarotongan
["rmu"] = {"skandinavskoromski"}, -- Tavringer Romani
["rom"] = {"romski"}, -- Romany
["rup"] = {"arumunski"}, -- Macedo-Romanian
["ryu"] = {"okinavski"}, -- Central Okinawan
["sdc"] = {"sasarski"}, -- Sassarese Sardinian
["sdn"] = {"galurski"}, -- Gallurese Sardinian
["shp"] = {"Shipibo-Conibo"}, -- Shipibo-Conibo
["src"] = {"logudorski"}, -- Logudorese Sardinian
["sro"] = {"kampidanski"}, -- Campidanese Sardinian
["tkl"] = {"tokelauski"}, -- Tokelau
["tvl"] = {"tuvaluski"}, -- Tuvalu
["tyv"] = {"tuvinski"}, -- Tuvinian
["vls"] = {"zapadnoflamanski"}, -- Vlaams
["wep"] = {"vestfalski"}, -- Westphalien
["xal"] = {"Oirat"}, -- Kalmyk
["xcl"] = {"staroarmenski"}, -- Classical Armenian
["yua"] = {"jukatanski"}, -- 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"] = {"protokeltski"}, -- cel in IANA is Celtic languages
["gem-x-proto"] = {"protogermanski"}, -- gem in IANA is Germanic languages
["gmw-x-ecg"] = {"Istočnosrednjonjemački"},
["grc-x-aeolic"] = {"eolski grčki"}, -- these grc-x-... codes are preferred alternates to the non-standard catchall code grc-gre
["grc-x-attic"] = {"atički grčki"},
["grc-x-biblical"] = {"biblijski grčki"},
["grc-x-byzant"] = {"bizantski grčki"},
["grc-x-classic"] = {"starogrčki"},
["grc-x-doric"] = {"dorski grčki"},
["grc-x-hellen"] = {"helenistički grčki"},
["grc-x-ionic"] = {"jonski grčki"},
["grc-x-koine"] = {"Koinē grčki"},
["grc-x-medieval"] = {"srednjovjekovni grčki"},
["grc-x-patris"] = {"patristički grčki"},
["grk-x-proto"] = {"pragrčki"}, -- grk in IANA is Greek languages
["iir-x-proto"] = {"praindoiranski"}, -- iir in IANA is Indo-Iranian Languages
["ine-x-proto"] = {"praindoevropski"},
["ira-x-proto"] = {"prairanski"}, -- ira in IANA is Iranian languages
["itc-x-proto"] = {"praitalski"}, -- itc in IANA is Italic languages
["ksh-x-colog"] = {"kelnski"}, -- en.wiki article is Colognian; ksh (Kölsch) redirects there
["la-x-medieval"] = {"srednjovjekovni latinski"},
["mis-x-ripuar"] = {"ripuarijski"}, -- replaces improper use of ksh in wp_languages
["sem-x-proto"] = {"prasemitski"},
["sla-x-proto"] = {"praslavenski"}, -- 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"] = {"Ligurski jezik"}, -- Ligurian; see Template_talk:Lang#Ligurian_dab
['mnh'] = {"Mono jezik (Kongo)"}, -- Mono (Democratic Republic of Congo); see Template_talk:Lang#Mono_languages
['mnr'] = {"Mono jezik (Kalifornija)"}, -- Mono (USA)
['mru'] = {"Mono jezik (Kamerun)"}, -- Mono (Cameroon)
["xlg"] = {"Antički ligurski jezik"}, -- 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'] = 'Akademija transliteracije hebrejskog jezika',
},
['ala'] = {
['default'] = 'Američko bibliotečko udruženje – transliteracija Kongresne biblioteke',
},
['ala-lc'] = {
['default'] = 'Američko bibliotečko udruženje – transliteracija Kongresne biblioteke',
},
['batr'] = {
['default'] = 'Pravila transliteracije arapskog jezika Bikdash',
},
['bgn/pcgn'] = {
['default'] = 'Odbor za geografska imena / Stalni komitet za transliteraciju geografskih imena',
},
['din'] = {
['ar'] = 'DIN 31635 arapski',
['fa'] = 'DIN 31635 arapski',
['ku'] = 'DIN 31635 arapski',
['ps'] = 'DIN 31635 arapski',
['tg'] = 'DIN 31635 arapski',
['ug'] = 'DIN 31635 arapski',
['ur'] = 'DIN 31635 arapski',
['arab'] = 'DIN 31635 arapski',
['default'] = 'DIN transliteracija',
},
['eae'] = {
['default'] = 'Encyclopaedia Aethiopica transliteracija',
},
['hepburn'] = {
['default'] = 'Hepburnova transliteracija',
},
['hunterian'] = {
['default'] = 'Hunterovska transliteracija',
},
['iast'] = {
['default'] = 'Međunarodna abeceda sanskrtske transliteracije',
},
['iso'] = { -- when a transliteration standard is supplied
['ab'] = 'ISO 9 ćirilica',
['ba'] = 'ISO 9 ćirilica',
['be'] = 'ISO 9 ćirilica',
['bg'] = 'ISO 9 ćirilica',
['kk'] = 'ISO 9 ćirilica',
['ky'] = 'ISO 9 ćirilica',
['mn'] = 'ISO 9 ćirilica',
['ru'] = 'ISO 9 ćirilica',
['tg'] = 'ISO 9 ćirilica',
['uk'] = 'ISO 9 ćirilica',
['bua'] = 'ISO 9 ćirilica',
['sah'] = 'ISO 9 ćirilica',
['tut'] = 'ISO 9 ćirilica',
['xal'] = 'ISO 9 ćirilica',
['cyrl'] = 'ISO 9 ćirilica',
['ar'] = 'ISO 233 arapski',
['ku'] = 'ISO 233 arapski',
['ps'] = 'ISO 233 arapski',
['ug'] = 'ISO 233 arapski',
['ur'] = 'ISO 233 arapski',
['arab'] = 'ISO 233 arapski',
['he'] = 'ISO 259 hebrejski',
['yi'] = 'ISO 259 hebrejski',
['hebr'] = 'ISO 259 hebrejski',
['el'] = 'ISO 843 grčki',
['grc'] = 'ISO 843 grčki',
['ja'] = 'ISO 3602 japanski',
['hira'] = 'ISO 3602 japanski',
['hrkt'] = 'ISO 3602 japanski',
['jpan'] = 'ISO 3602 japanski',
['kana'] = 'ISO 3602 japanski',
['zh'] = 'ISO 7098 kineski',
['chi'] = 'ISO 7098 kineski',
['pny'] = 'ISO 7098 kineski',
['zho'] = 'ISO 7098 kineski',
-- ['han'] = 'ISO 7098 kineski', -- unicode alias of Hani? doesn't belong here? should be Hani?
['hans'] = 'ISO 7098 kineski',
['hant'] = 'ISO 7098 kineski',
['ka'] = 'ISO 9984 gruzijski',
['kat'] = 'ISO 9984 gruzijski',
['arm'] = 'ISO 9985 armenski',
['hy'] = 'ISO 9985 armenski',
['th'] = 'ISO 11940 tajlandski',
['tha'] = 'ISO 11940 tajlandski',
['ko'] = 'ISO 11941 korejski',
['kor'] = 'ISO 11941 korejski',
['awa'] = 'ISO 15919 indijski',
['bho'] = 'ISO 15919 indijski',
['bn'] = 'ISO 15919 indijski',
['bra'] = 'ISO 15919 indijski',
['doi'] = 'ISO 15919 indijski',
['dra'] = 'ISO 15919 indijski',
['gon'] = 'ISO 15919 indijski',
['gu'] = 'ISO 15919 indijski',
['hi'] = 'ISO 15919 indijski',
['inc'] = 'ISO 15919 indijski',
['kn'] = 'ISO 15919 indijski',
['kok'] = 'ISO 15919 indijski',
['ks'] = 'ISO 15919 indijski',
['mag'] = 'ISO 15919 indijski',
['mai'] = 'ISO 15919 indijski',
['ml'] = 'ISO 15919 indijski',
['mr'] = 'ISO 15919 indijski',
['ne'] = 'ISO 15919 indijski',
['new'] = 'ISO 15919 indijski',
['or'] = 'ISO 15919 indijski',
['pa'] = 'ISO 15919 indijski',
['raj'] = 'ISO 15919 indijski',
['sa'] = 'ISO 15919 indijski',
['sat'] = 'ISO 15919 indijski',
['sd'] = 'ISO 15919 indijski',
['si'] = 'ISO 15919 indijski',
['ta'] = 'ISO 15919 indijski',
['tcy'] = 'ISO 15919 indijski',
['te'] = 'ISO 15919 indijski',
['beng'] = 'ISO 15919 indijski',
['brah'] = 'ISO 15919 indijski',
['deva'] = 'ISO 15919 indijski',
['gujr'] = 'ISO 15919 indijski',
['guru'] = 'ISO 15919 indijski',
['knda'] = 'ISO 15919 indijski',
['mlym'] = 'ISO 15919 indijski',
['orya'] = 'ISO 15919 indijski',
['sinh'] = 'ISO 15919 indijski',
['taml'] = 'ISO 15919 indijski',
['telu'] = 'ISO 15919 indijski',
['default'] = 'ISO transliteracija',
},
['jyutping'] = {
['default'] = 'Jyutping transliteracija',
},
['mr'] = {
['default'] = 'McCune–Reischauer transliteracija',
},
['nihon-shiki'] = {
['default'] = 'Nihon-shiki transliteracija',
},
['no_std'] = { -- when no transliteration standard is supplied
['akk'] = 'Semitska transliteracija',
['sem'] = 'Semitska transliteracija',
['phnx'] = 'Semitska transliteracija',
['xsux'] = 'Klinasta transliteracija',
},
['pinyin'] = {
['default'] = 'Pinjin transliteracija',
},
['rr'] = {
['default'] = 'Revidirana romanizacija korejske transliteracije',
},
['rtgs'] = {
['default'] = 'Kraljevski tajlandski opći sistem transkripcije',
},
['satts'] = {
['default'] = 'Standardni arapski tehnički transliteracijski sistem transliteracije',
},
['scientific'] = {
['default'] = 'naučna transliteracija',
},
['ukrainian'] = {
['default'] = 'Ukrajinski nacionalni sistem romanizacije',
},
['ungegn'] = {
['default'] = 'Grupa stručnjaka Ujedinjenih nacija za transliteraciju geografskih imena',
},
['wadegile'] = {
['default'] = 'Wade-Giles transliteracija',
},
['wehr'] = {
['default'] = 'Transliteracija Hansa Wehra',
},
};
return
{
article_name = article_name,
lang_name_table = lang_name_table,
override = override,
rtl_scripts = rtl_scripts,
translit_title_table = translit_title_table,
};