模块:Lang/data

求闻百科,共笔求闻

该模块包含Module:Lang使用的各种支持表格:

  • override – this table provides language name data used in the creation of categories and, for the 模板链接:{{lang-??}} templates, the language name annotation.
  • rtl_scripts – a list of ISO 15924 scripts that are written right-to-left; data taken from the table at ISO 15924#List of codes
  • translit_title_table – a table of tables that is used in the creation of the title= attribute of the <i>...</i> tags that wrap transliterated text; data adapted from 模板链接:{{transl}}
上述文档内容嵌入自Module:Lang/data/doc编辑 | 历史
编者可以在本模块的沙盒创建 | 镜像和测试样例创建页面进行实验。
请将模块自身所属的分类添加在文档中。本模块的子页面
--[[--------------------------< L A N G _ N A M E _ T A B L E >------------------------------------------------

primary table of tables that decode:
	lang -> language tags and namesodule:Language/data/iana language
	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
	}

local lang_data = {};


--[[--------------------------< O V E R R I D E >--------------------------------------------------------------

Language codes and names in this table override the BCP47 names in Module:Language/name/data.

code indexes in this table shall always be lower case
]]

local override = {
	--显示中文及查找目录所用,必须使用简体中文
	--ISO-639-1
	["aa"] = {"阿法尔语"},														-- Afar
	["ab"] = {"阿布哈兹语"},										            -- Abkhazian
	["ae"] = {"阿维斯陀语"},													-- Avestan
	["af"] = {"南非语"},														-- Afrikaans
	["ak"] = {"阿坎语"},														-- Akan
	["am"] = {"阿姆哈拉语"},													-- Amharic
	["an"] = {"阿拉贡语"},														-- Aragonese
    ["ar"] = {"阿拉伯语"},
    ["as"] = {"阿萨姆语"},
	["av"] = {"阿瓦尔语"},														-- Avaric
    ["ay"] = {"艾马拉语"},														-- Aymara
    ["az"] = {"阿塞拜疆语"},													-- Azerbaijani
    ["ba"] = {"巴什基尔语"},													-- Bashkir
    ["be"] = {"白俄罗斯语"},													-- 
    ["bg"] = {"保加利亚语"},													-- 
	["bh"] = {"比哈尔语"},														-- Bihari languages; collective
    ["bi"] = {"比斯拉马语"},
    ["bm"] = {"班巴拉语"},														-- Bambara, Bamanankan
    ["bn"] = {"孟加拉语"},
	["bo"] = {"标准藏语"},														-- Tibetan
	["br"] = {"布列塔尼语"},													-- Brezhoneg
    ["bs"] = {"波斯尼亚语"},
    ["ca"] = {"加泰罗尼亚语"},
    ["ce"] = {"车臣语"},
    ["ch"] = {"查莫罗语"},
    ["co"] = {"科西嘉语"},
    ["cr"] = {"克里语"},
    ["cs"] = {"捷克语"},
	["cu"] = {"古教会斯拉夫语"},												-- Church Slavic, Church Slavonic, Old Bulgarian, Old Church Slavonic, Old Slavonic'
    ["cv"] = {"楚瓦什语"},
    ["cy"] = {"威尔士语"},
    ["da"] = {"丹麦语"},
    ["de"] = {"德语"},
	["de-AT"] = {"奥地利德语"},
	["dv"] = {"迪维西语"},
	["dz"] = {"不丹语"},
	["ee"] = {"埃维语"},
	["el"] = {"现代希腊语"},														-- Modern Greek (1453-)
	["en"] = {"英语"},
	["en-AU"] = {"澳洲英语"},
	["en-CA"] = {"加拿大英语"},
	["en-GB"] = {"英国英语"},
	["en-IE"] = {"爱尔兰英语"},
	["en-NZ"] = {"新西兰英语"},
	["en-SA"] = {"南非英语"},
	["en-US"] = {"美国英语"},
	["eo"] = {"世界语"},
    ["es"] = {"西班牙语"},
    ["et"] = {"爱沙尼亚语"},
    ["eu"] = {"巴斯克语"},
    ["fa"] = {"波斯语"},
	["ff"] = {"富拉语"},														   -- Fulah
	["fi"] = {"芬兰语"},
	["fj"] = {"斐济语"},
	["fo"] = {"法罗语"},
	["fr"] = {"法语"},
	["fy"] = {"弗里斯兰语"},														-- Frisian
    ["ga"] = {"爱尔兰语"},
    ["gd"] = {"苏格兰盖尔语"},
    ["gl"] = {"加利西亚语"},
    ["gn"] = {"瓜拉尼语"},
    ["gu"] = {"古吉拉特语"},
    ["gv"] = {"马恩语"},
    ["ha"] = {"豪萨语"},
    ["he"] = {"希伯来语"},
    ["hi"] = {"印地语"},	
    ["ho"] = {"希里莫图语"},
    ["hr"] = {"克罗地亚语"},
	["ht"] = {"海地克里奥尔语"},												-- Haitian, Haitian Creole
    ["hu"] = {"匈牙利语"},	
    ["hy"] = {"亚美尼亚语"},	
	["hz"] = {"赫雷罗语"},													-- Herero
	["ia"] = {"因特语"},												    	-- Interlingua (International Auxiliary Language Association)
    ["id"] = {"印尼语"},
    ["ie"] = {"西方国际语"},
    ["ig"] = {"伊博语"},													    -- Igbo
	["ii"] = {"彝语北部方言"},													-- Sichuan Yi, Nuosu
	["ik"] = {"因纽皮雅特语"},	
	["io"] = {"伊多语"},	
	["is"] = {"冰岛语"},	
	["it"] = {"意大利语"},	
	["iu"] = {"伊努克提图特语"},
	["ja"] = {"日语"},
	["jv"] = {"爪哇语"},
	["ka"] = {"格鲁吉亚语"},
	["kg"] = {"刚果语"},
	["ki"] = {"基库尤语"},														-- Kikuyu, Gikuyu
	["kj"] = {"宽亚玛语"},														-- Kwanyama, Oshikwanyama
	["kk"] = {"哈萨克语"},														-- Kazakh; same, delete?
	["kl"] = {"格陵兰语"},														-- Kalaallisut, Greenlandic
	["km"] = {"高棉语"},														-- Central Khmer
	["kn"] = {"卡纳达语"},														-- Kannaḍa
	["ko"] = {"朝鲜语"},															-- Korean
	["ks"] = {"克什米尔语"},													-- Kashmiri
	["ku"] = {"库尔德语"},														-- Kurdish
	["kv"] = {"科米语"},														-- Komi
	["kw"] = {"康瓦尔语"},														-- Cornish, Kernowek
	["ky"] = {"吉尔吉斯语"},													-- Kirghiz, Kyrgyz
    ["la"] = {"拉丁语"},
    ["lb"] = {"卢森堡语"},
	["lg"] = {"卢干达语"},														-- Ganda
	["li"] = {"林堡语"},														-- Limburgan, Limburger, Limburgish
	["ln"] = {"林格拉语"},		
	["lo"] = {"老挝语"},
	["lt"] = {"立陶宛语"},
	["lu"] = {"卢巴卡丹加语"},
	["lv"] = {"拉脱维亚语"},
	["mg"] = {"马达加斯加语"},
	["mh"] = {"马绍尔语"},
	["mi"] = {"毛利语"},														-- Maori
    ["mk"] = {"马其顿语"},
    ["ml"] = {"马拉雅拉姆语"},
    ["mn"] = {"蒙古语"},
    ["mo"] = {"摩尔多瓦语"},
    ["mr"] = {"马拉地语"},														-- Marathi
	["ms"] = {"马来语"},														-- Malay (macrolanguage)
    ["mt"] = {"马尔他语"},
    ["my"] = {"缅甸语"},
	["na"] = {"瑙鲁语"},														-- Nauru
	["nb"] = {"书面挪威语"},													-- Norwegian Bokmål
	["nd"] = {"北恩德贝莱语"},													-- North Ndebele
	["ne"] = {"尼泊尔语"},														-- Nepali (macrolanguage)
	["ng"] = {"恩敦加语"},
    ["nl"] = {"荷兰语"},
	["nn"] = {"新挪威语"},														-- Norwegian Nynorsk
    ["no"] = {"挪威语"},	
	["nr"] = {"北恩德贝莱语"},													-- South Ndebele <not found in Chinese Wikipedia>
	["nv"] = {"纳瓦霍语"},	
	["ny"] = {"齐切瓦语"},														-- Nyanja, Chewa, Chichewa
	["oc"] = {"奥克语"},														-- Occitan (post 1500)
	["oj"] = {"奥吉布瓦语"},													-- Ojibwa
	["om"] = {"奥罗莫语"},
	["or"] = {"奥里亚语"},														-- Oriya (macrolanguage), Odia (macrolanguage)
    ["os"] = {"奥塞梯语"},
	["pa"] = {"旁遮普语"},														-- Panjabi, Punjabi
	["pi"] = {"巴利语"},														-- Pali; same, delete?
	["pl"] = {"波兰语"},
    ["ps"] = {"普什图语"},
    ["pt"] = {"葡萄牙语"},
    ["qu"] = {"克丘亚语"},
    ["rm"] = {"罗曼什语"},														-- Romansh
	["rn"] = {"基隆迪语"},														-- Rundi
	["ro"] = {"罗马尼亚语"},													-- Romanian, Moldavian, Moldovan; same as first in IANA list, delete?
	["ru"] = {"俄语"},		
	["rw"] = {"卢旺达语"},														-- Kinyarwanda; same, delete?
    ["sa"] = {"梵语"},
    ["sc"] = {"萨丁尼亚语"},
    ["sd"] = {"信德语"},
    ["se"] = {"北萨米语"},
    ["sg"] = {"桑戈语"},
    ["sh"] = {"塞尔维亚-克罗地亚语"},
	["si"] = {"僧伽罗语"},														-- Sinhala, Sinhalese
    ["sk"] = {"斯洛伐克语"},
    ["sl"] = {"斯洛文尼亚语"},													-- Slovenian
    ["sm"] = {"萨摩亚语"},
    ["sn"] = {"修纳语"},
    ["so"] = {"索马里语"},
    ["sq"] = {"阿尔巴尼亚语"},
    ["sr"] = {"塞尔维亚语"},
	["sr-Cyrl"] = {"塞尔维亚语西里尔字母"},										-- sr = Serbian; Cyrillic is the alphabet
	["ss"] = {"斯威士语"},														-- Swati
	["st"] = {"塞索托语"},														-- Southern Sotho
	["su"] = {"巽他语"},
    ["sv"] = {"瑞典语"},	
	["sw"] = {"斯瓦希里语"},													-- Swahili (macrolanguage)
    ["ta"] = {"泰米尔语"},
    ["te"] = {"泰卢固语"},
    ["tg"] = {"塔吉克语"},
    ["th"] = {"泰语"},
    ["ti"] = {"提格雷尼亚语"},
    ["tk"] = {"土库曼语"},
    ["tl"] = {"他加禄语"},
    ["tn"] = {"茨瓦纳语"},
    ["to"] = {"汤加语"},
    ["tr"] = {"土耳其语"},
	["ts"] = {"聪加语"},														-- Tsonga, Xitsonga
	["tt"] = {"鞑靼语"},														-- Tatar	
	["tw"] = {"契维语"},	
	["ty"] = {"塔希提语"},
	["ug"] = {"维吾尔语"},
	["uk"] = {"乌克兰语"},
	["ur"] = {"乌尔都语"},
	["uz"] = {"乌兹别克语"},
	["ve"] = {"文达语"},
    ["vi"] = {"越南语"},
    ["vo"] = {"沃拉普克语"},
    ["wa"] = {"瓦隆语"},	
    ["wo"] = {"沃洛夫语"},	
    ["xh"] = {"科萨语"},	
    ["yi"] = {"意第绪语"},	
    ["yo"] = {"约鲁巴语"},	
	["za"] = {"壮语"},															-- Zhuang, Chuang; ; same as first in IANA list, delete?
	["zh"] = {"中文"},	
	["zu"] = {"祖鲁语"},	
	
-- ISO 639-2 codes
	["ber"] = {"柏柏尔语"},														-- Berber languages
	["cel"] = {"原始凯尔特语"},													-- Celtic languages
	["ceb"] = {"宿雾语"},
    ["cop"] = {"科普特语"},														-- Coptic languages
    ["fil"] = {"菲律宾语"},
	["gem"] = {"原始日耳曼语"},													-- Germanic languages
	["jbo"] = {"逻辑语"},													    -- Lojban
	["myn"] = {"玛雅语系"},														-- Mayan languages
	["nah"] = {"纳瓦特尔语"},													-- Nahuatl languages
	["pra"] = {"普拉克里特诸语言"},												-- Prakrit languages
--	["roa"] = {"泽西语"},														-- Romance languages
	["sal"] = {"萨利希语系"},													-- Salishan languages
	["sla"]= {"斯拉夫语族"},													-- Slavic languages
	["son"] = {"桑海语族"},														-- Songhai languages
	["sux"] = {"苏美语"},	
    ["uk"] = {"乌克兰语"},
	["wen"] = {"索布语"},														-- Sorbian languages


-- ISO 639-3 codes
	["abk"] = {"阿布哈兹语"},														-- not in IANA; see code ab
	["ace"] = {"亚齐语"},														-- Achinese
	["ady"] = {"阿迪格语"},														-- Adyghe language
	["aec"] = {"Sa'idi Arabic"},												-- Saidi Arabic
	["ain"] = {"阿伊努语"},															-- Ainu (Japan)
	["akk"] = {"阿卡德语"},	
	["akl"] = {"阿克兰语"},														-- Aklanon
	["alr"] = {"阿留特语"},
	["alt"] = {"阿尔泰语"},														-- Southern Altai
	["ami"] = {"阿美语"},														-- Amis, Pangcah
	["ams"] = {"南奄美大岛语"},
--	["ang"] = {"古英语"},														-- Old English (ca. 450-1100)
	["apm"] = {"Mescalero-Chiricahua"},											-- Mescalero-Chiricahua Apache
	["arc"] = {"亚拉姆语"},
	["arq"] = {"阿尔及利亚阿拉伯语"},
	["arz"] = {"埃及阿拉伯语"},													-- Egyptian Arabic
	["ast"] = {"阿斯图里亚斯语"},												-- Asturian
	["atb"] = {"载瓦语"},
	["bal"] = {"俾路支语"},														-- Baluchi
	["bar"] = {"巴伐利亚语"},													-- Bavarian
	["bcl"] = {"中比科尔语"},													-- Central Bikol
	["bft"] = {"巴尔蒂语"},														-- Balti
	["bho"] = {"博杰普尔语"},													-- Bhojpuri
	["bin"] = {"埃多语"},														-- Bini, Edo
	["bnn"] = {"布农语"},														-- Bunun
	["bpy"] = {"比什奴普莱利亚-曼尼浦尔语"},									-- Bishnupriya, Bishnupriya Manipuri
	["brh"] = {"布拉灰语"},									-- 
	["brx"] = {"博多语"},														-- Bodo (India)
	["byq"] = {"巴赛语"},														-- Basay
	["chg"] = {"察合台突厥语"},													-- Chagatai
	["chm"] = {"Mari"},															-- Mari (Russia)
	["ckb"] = {"中库尔德语"},													-- Sorani Kurdish, Central Kurdish
    ["ckt"] = {"楚科奇语"},
    ["ckv"] = {"噶玛兰语"},														-- Kbalan, Kavalan
    ["cnr"] = {"蒙特内哥罗语"},													-- Montenegrin
	["cnu"] = {"Shenwa"},														-- Chenoua
	["coc"] = {"Cocopah"},														-- Cocopa
	["crh"] = {"克里米亚鞑靼语"},												-- Crimean Tatar, Qırımtatar
	["csu"] = {"卡舒比语"},														-- 
	["deu"] = {"早期德语"},														-- not in IANA; see code de
	["din"] = {"丁卡语"},														-- 
	["diq"] = {"扎扎其语"},														-- Dimli (individual language)
	["dng"] = {"东干语"},														-- Dungan
	["dru"] = {"鲁凯语"},														-- Drekay, Rukai
	["duu"] = {"独龙语"},														-- Drung
	["dsb"] = {"下索布语"},														-- Lower Sorbian, dolnoserbšćina
	["egy"] = {"埃及语"},														-- Egyptian (Ancient)
	["ell"] = {"现代希腊语"},													-- not in IANA; see code el
	["enm"] = {"中古英语"},														-- Middle English (1100-1500)
	["fit"] = {"梅安语"},														-- Tornedalen Finnish
	["fkv"] = {"克文语"},														-- Kven Finnish
	["fos"] = {"西拉雅语"},														-- Siraya
	["frk"] = {"古法兰克语"},													-- Frankish
	["frm"] = {"中古法语"},														-- Middle French (ca. 1400-1600)
	["fro"] = {"古法语"},														-- Old French (842-ca. 1400)
	["frr"] = {"北弗里斯兰语"},													-- North Frisian, Frasch, Fresk, Freesk, Friisk
	["fry"] = {"西菲士兰语"},													-- not in IANA; see code fy
	["gez"] = {"吉兹语"},														-- Geez
	["gju"] = {"古吉尔语 "},													-- Gujari
	["gmh"] = {"中古高地德语"},													-- Middle High German (ca. 1050-1500)
	["goh"] = {"古高地德语"},													-- Old High German (ca. 750-1050)
	["got"] = {"哥德语"},														-- Gothic, Gutisk
	["grc"] = {"古希腊语"},														-- Ancient Greek (to 1453)
	["gsw"] = {"阿勒曼尼语"},													-- Swiss German, Alemannic, Alsatian
	["gul"] = {"Gullah"},														-- Sea Island Creole English
	["hak"] = {"客家语"},														-- Hakka Chinese
	["hbo"] = {"圣经希伯来语"},													-- Ancient Hebrew
	["hbs"] = {"塞尔维亚-克罗埃西亚语"},										-- Serbo-Croatian
	["hnd"] = {"Hindko"},														-- Southern Hindko
	["hoc"] = {"霍语"},															-- Ho, Bihar Ho, Lanka Kol
	["ikt"] = {"Inuvialuk"},													-- Inuinnaqtun, Western Canadian Inuktitut
	["ilo"] = {"伊洛卡诺语"},													-- Iloko
	["inh"] = {"印古什语"},														-- Ingush
	["kaa"] = {"Karakalpak"},													-- Kara-Kalpak
	["kae"] = {"凯达格兰语"},													-- 
	["kan"] = {"康纳达语"},														-- Kannada
	["khb"] = {"傣仂语"},														-- Tai Lue, Tai Lɯ, Tai Lü, Thai Lue, Tai Le
	["kmr"] = {"北库德语"},														-- Northern Kurdish
	["knn"] = {"孔卡尼语"},														-- Konkani (individual language)
	["kok"] = {"孔卡尼语"},														-- Konkani (macrolanguage)
	["kpo"] = {"科普索语"},														-- Kposo, Ikposo
    ["kpy"] = {"科里亚克语"},
	["krj"] = {"Kinaray-a"},													-- Kinaray-A
	["ksh"] = {"利普里安语"},													-- Ripuarian, Kölsch;  --ksh is the code of Colognian, but ksh.wiki is the Ripuarian Wikipedia
	["ksw"] = {"斯高克伦语"},													-- S'gaw Karen
	["ktz"] = {"Juǀ'hoan"},														-- Ju/'hoan, Juǀʼhoan, Juǀʼhoansi
	["kzg"] = {"喜界语"},														-- Kikai	
	["lbj"] = {"拉达克语"},														-- Ladakhi
	["lez"] = {"列兹金语"},														-- Lezgian, Lezghian
	["lij"] = {"利古里亚语"},
	["liv"] = {"立窝尼亚语"},													-- Livonian, Liv
	["lng"] = {"伦巴底语"},														-- Lombardic, Langobardic
	["lzz"] = {"拉兹语"},														--Laz
	["maz"] = {"马索维亚语"},													-- Central Mazahua
	["mag"] = {"摩揭陀语"},														-- Magahi
	["mdf"] = {"莫克沙语"},														-- Moksha
	["mga"] = {"中古爱尔兰语"},													-- Middle Irish (900-1200)
	["mhr"] = {"Mari"},															-- Eastern Mari
	["mia"] = {"Miami-Illinois"},												-- Miami
	["miq"] = {"Miskito"},														-- Mískito
	["mix"] = {"Mixtec"},														-- Mixtepec Mixtec
	["mjw"] = {"卡尔比语"},														-- Karbi
--	["mla"] = {"中世纪拉丁语"},												-- Malo; clearly a misuse of code mla;
	["mni"] = {"曼尼普尔语"},													-- Manipuri, Meitei
	["mol"] = {"摩尔多瓦语", "摩尔达维亚语"},									-- Moldavian, Moldovan (639-3, both retired)
	["mrj"] = {"山地马里语"},													-- Western Mari
	["mww"] = {"白苗话"},														-- Hmong Daw
	["mzn"] = {"马赞德兰语"},													-- Mazanderani
	["nan"] = {"闽南语"},														-- Min Nan Chinese
	["naq"] = {"科伊科伊语"},														-- Khoekhoe, Nama (Namibia); same as first in IANA list, delete?
--	["naz"] = {"North Azeri"},													-- Coatepec Nahuatl; clearly a misuse of code naz
	["nci"] = {"古典纳瓦特尔语"},												-- Classical Nahuatl; same, delete?
	["nds"] = {"低地德语"},														-- Low German, Low Saxon, Plattdeutsch, Plattdüütsch
	["nds-nl"] = {"低萨克森荷兰语"},											-- Dutch Low Saxon, Low German, Low Saxon; as spoken in the Netherlands; see code nsd
	["new"] = {"尼瓦尔语"},														-- Newari, Nepal Bhasa
	["non"] = {"古诺斯语"},	
	["nod"] = {"北部泰语"},														-- Northern Thai, Lanna, Kam Mueang
	["nrf"] = {"泽西语"},														-- Jèrriais
--	["nrm"] = {"诺曼语"},														-- Narom; clearly a misuse of code nrm
--	["nsd"] = {"低萨克森荷兰语"},												-- Dutch Low Saxon, Southern Nisu; how can this be right? typo related to code nds-nl?
	["nso"] = {"北索托语"},														-- Pedi, Northern Sotho, Sepedi
	["nwc"] = {"古典尼瓦尔语"},													-- Classical Newari, Classical Nepal Bhasa, Old Newari
	["oci"] = {"普罗旺斯语"},													-- oc
	["okn"] = {"冲永良部语"},													-- Okinoerabu dialect cluster, Shimamuni	
	["oko"] = {"新罗语"},
	["ood"] = {"O'odham"},														-- Tohono O'odham
	["ota"] = {"鄂图曼土耳其语"},												-- Ottoman Turkish (1500-1928)
	["otk"] = {"古突厥语"},														-- Old Turkish
	["oty"] = {"古泰米尔语"},		
	["owl"] = {"古威尔斯语"},													-- Old Welsh
	["pal"] = {"中古波斯语"},												-- Pahlavi
	["pam"] = {"邦板牙语"},													-- Pampanga, Kapampangan
	["pcd"] = {"皮卡第语"},
	["peo"] = {"古波斯语"},													-- Old Persian (ca. 600-400 B.C.)
	["phr"] = {"Potwari"},														-- Pahari-Potwari
	["phn"] = {"腓尼基语"},		                                                -- Phoenician
	["pka"] = {"普拉克里特诸语言"},													-- Ardhamāgadhī Prākrit
	["pms"] = {"皮埃蒙特语"},
	["pnb"] = {"旁遮普语"},														-- Western Panjabi
	["prs"] = {"达利语"},
	["psu"] = {"索拉塞那语"},													-- Sauraseni Prākrit
	["ppu"] = {"拍瀑拉语", "洪雅语"},											-- Papura, Hoany
	["pwn"] = {"排湾语"},														-- Pinayuanan, Paiwan
	["pyu"] = {"卑南语"},														-- Pinuyumayan, Puyuma
	["rap"] = {"拉帕努伊语"},														-- Rapanui
	["rar"] = {"库克群岛毛利语"},												-- Rarotongan, Cook Islands Maori
	["rmu"] = {"Scandoromani"},													-- Tavringer Romani
	["rom"] = {"罗姆语"},														-- Romany
	["rup"] = {"阿罗蒙语"},														-- Macedo-Romanian, Aromanian, Arumanian
	["rus"] = {"俄语"},															-- not in IANA; see code ru
	["rut"] = {"鲁图尔语"},														-- Rutul
	["ryn"] = {"北奄美大岛语"},
	["rys"] = {"八重山语"},														-- Yaeyama
	["ryu"] = {"冲绳语"},														-- Central Okinawan
	["sah"] = {"雅库特语"},														-- Yakut 又译作萨哈语
	["sco"] = {"低地苏格兰语"},													-- Scots, Lowland Scots
	["scn"] = {"西西里语"},
	["sdc"] = {"萨沙里语"},														-- Sassarese Sardinian
	["sdn"] = {"Gallurese"},													-- Gallurese Sardinian
	["sga"] = {"古爱尔兰语"},													-- Old Irish (to 900)
	["sgs"] = {"萨莫吉提亚语"},													-- Samogitian dialect, Žemaitiu ruoda
	["shn"] = {"掸语"},															-- Shan
	["shp"] = {"Shipibo"},														-- Shipibo-Conibo
	["sip"] = {"锡金语"},														-- Sikkimese 
	["smn"] = {"伊纳里萨米语"},
	["sms"] = {"斯科尔特萨米语"},												-- Skolt Sami
	["skr"] = {"Saraiki"},														-- Saraiki, Seraiki; same as first in IANA list, delete?
	["src"] = {"劳古多罗方言"},													-- Logudorese Sardinian
	["sro"] = {"坎皮达诺方言"},													-- Campidanese Sardinian
	["sxr"] = {"拉阿鲁哇语"},													-- Hla'alua, Saaroa
	["szy"] = {"撒奇莱雅语"},													-- Sakizaya
	["tab"] = {"塔巴萨兰语"},													-- Tabasaran
	["tao"] = {"达悟语"},														-- Cizicizing No Tao、Ireriak No Tao, Yami
	["tay"] = {"泰雅语"},														-- Atayal, Tayal
	["tcy"] = {"图陆语"},														-- Tulu, Tulu bāse
	["tkl"] = {"托克劳语"},														-- Tokelau
	["tkn"] = {"德之岛语"},														-- Tokunoshima
	["tmh"] = {"图阿雷格语"},													-- Tamashek
	["tpi"] = {"巴布亚皮钦语"},													-- Tok Pisin
	["trv"] = {"德路固语", "太鲁阁语"},											-- Truku, Sejiq Truku
	["tsu"] = {"邹语"},															-- Cou, Tsou
	["tvl"] = {"吐瓦鲁语"},														-- Tuvalu
	["tyv"] = {"图瓦语"},														-- Tuvinian
	["uby"] = {"尤比克语"},														-- Ubykh
	["uun"] = {"巴宰语"},														-- Pazeh, Kulon (龟仑语) is its dialect
	["vls"] = {"西弗拉芒方言"},													-- Vlaams
	["vec"] = {"威尼斯语"},												
	["war"] = {"瓦瑞语"},														-- Waray (Philippines)
	["wep"] = {"西伐利亚语"},                                                   -- Westphalien
	["wo"] = {"沃洛夫语"},                                                      -- Wolof
	["xal"] = {"卫拉特语", "瓦剌语"},											-- Kalmyk, Oirat
	["xal-RU"] = {"卡尔梅克卫拉特语"},											-- Kalmyk Oirat
	["xcl"] = {"古典亚美尼亚语"},												-- Classical Armenian
	["xct"] = {"近古藏语"},														-- Classical Tibetan
	["xmf"] = {"明格列尔语"},													-- Mingrelian 
	["xnb"] = {"卡那卡那富语"},													-- Kanakanavu
	["xpp"] = {"百济语"},														-- Baekje
	["xpu"] = {"布匿语"},														-- Punic
	["xsr"] = {"夏尔巴语"},														-- Sherpa
	["xsy"] = {"赛夏语"},														-- Saisiyat
	["xug"] = {"国头语"},														-- Kunigami 
	["xwo"] = {"书面瓦剌语"},													-- Written Oirat
	["yoi"] = {"与那国语"},														-- Yonaguni 
	["yox"] = {"与论语"},														-- Yoron
	["yua"] = {"犹加敦马雅语"},													-- Yucateco, Yucatec Maya
	["yue"] = {"粤语"},
    ["zea"] = {"西兰语"},														-- Zeêuw, Zealandic
    ["zkg"] = {"高句丽语"},
    ["zne"] = {"赞德语"},														-- Zande

-- non-standard codes
	["bat-smg"] = {"萨莫吉提亚语"},												-- bat = Baltic languages (639-2); dialect of Lithuanian has it's own IANA code sgs; bat-smg
	["be-x-old "] = {"白俄罗斯语 (旧正写法)"},								-- be = Belarusian; x-old = private use tag; be-x-old.wikipedia.wikimirror.org; space char in index may indicate that this code not used
	["cbk-zam"] = {"查瓦卡诺语"},												-- cbk = Chavacano; zam = Zamboangueño? zam is not an IANA-registered extlang; cbk-zam.wikipedia.wikimirror.org
--	["cg"] = {"Montenegrin", "sr-ME"},											-- IANA / ISO 639-3 code is cnr
	["en-emodeng"] = {"近代英语"},									-- emodeng is not an IANA-registered variant
	["fiu-vro"] = {"佛罗语"},														-- fiu = Finno-Ugrian languages (639-2); vro = Võro (639-3); fiu-vro.wikipedia.wikimirror.org
	["gkm"] = {"中世纪希腊语", "grc"},
	["grc-gre"] = {"希腊语", "grc"},												-- grc = Ancient Greek (to 1453); gre not an IANA-registered code; used by Template:lang-grc-gre
	["hbs-Cyrl"] = {"塞尔维亚-克罗埃西亚语", "hbs"},
	["hbs-Latn"] = {"塞尔维亚-克罗埃西亚语", "hbs"},
	["map-bms"] = {"Banyumasan"},												-- dialect of Javanese; map = Austronesian languages (639-2); bms is an IANA registered code not related to Javanese; map-bms.wikipedia.wikimirror.org
	["roa-rup"] = {"阿罗马尼亚语"},												-- roa = Romance languages (639-2); rup = Macedo-Romanian, Aromanian, Arumanian (639-3); roa-rup.wikipedia.wikimirror.org
	["roa-tara"] = {"塔伦蒂诺语"},												-- roa = Romance languages (639-2); tara is not an IANA registered script; roa-tara.wikipedia.wikimirror.org
	["simple"] = {"简单英语"},													-- simple is not an IANA registered variant; simple.wikipedia.wikimirror.org
	["zh-classical"] = {"文言文"},												-- zh = Chinese; classical is not an IANA-registered variant; zh-classical.wikipedia.wikimirror.org
	["zh-min-nan"] = {"闽南语"},												-- zh-min-nan = Minnan, Hokkien, Amoy, Taiwanese, Southern Min, Southern Fujian, Hoklo, Southern Fukien, Ho-lo; granfathered in IANA, nan preferred; zh-min-nan.wikipedia.wikimirror.org
	["zh-yue"] = {"粤语"},

	["grc-x-aeolic"] = {"伊欧里斯希腊语"},										-- these grc-x-... codes are preferred alternates to the non-standard catchall code grc-gre
	["grc-x-attic"] = {"阿提卡希腊语"},
	["grc-x-biblical"] = {"圣经希腊语"},
	["grc-x-byzant"] = {"拜占庭希腊语"},
	["grc-x-classic"] = {"古典希腊语"},
	["grc-x-doric"] = {"多利亚希腊语"},
	["grc-x-hellen"] = {"希利尼话"},
	["grc-x-ionic"] = {"爱奥尼亚希腊语"},
	["grc-x-koine"] = {"通用希腊语"},
	["grc-x-medieval"] = {"中古希腊语"},
	["grc-x-patris"] = {"教父希腊语"},
	["grk-x-proto"] = {"原始希腊语"},											-- grk in IANA is Greek languages
--	["iir-x-proto"] = {"原始印度-伊朗语"},									-- iir in IANA is Indo-Iranian Languages
--	["ira-x-proto"] = {"原始伊朗语"},										-- ira in IANA is Iranian languages
--	["itc-x-proto"] = {"原始义大利语"},											-- itc in IANA is Italic languages
--	["sla-x-proto"] = {"原始斯拉夫语"},											-- 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'("xx语"或"xx语"), 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 = {

	}

--[=[-------------------------< 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',
		},

	['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',

		['bn'] = 'ISO 15919 Indic',
		['dra'] = 'ISO 15919 Indic',
		['gu'] = 'ISO 15919 Indic',
		['hi'] = 'ISO 15919 Indic',
		['inc'] = 'ISO 15919 Indic',
		['kn'] = 'ISO 15919 Indic',
		['ml'] = 'ISO 15919 Indic',
		['mr'] = 'ISO 15919 Indic',
		['sa'] = 'ISO 15919 Indic',
		['ta'] = 'ISO 15919 Indic',
		['te'] = 'ISO 15919 Indic',
		['beng'] = 'ISO 15919 Indic',
		['brah'] = 'ISO 15919 Indic',
		['deva'] = 'ISO 15919 Indic',

		['default'] = 'ISO 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',
		},

	['satts'] = {
		['default'] = 'Standard Arabic Technical Transliteration System transliteration',
		},

	['ungegn'] = {
		['default'] = 'United Nations Group of Experts on Geographical Names transliteration',
		},

	['wehr'] = {
		['default'] = 'Hans Wehr transliteration',
		},
	};

return
	{
	article_name = article_name,
	lang_name_table = lang_name_table,
	override = override,
	rtl_scripts = rtl_scripts,
	is_rtl_script = is_rtl_script,
	translit_title_table = translit_title_table,
	};