跳转到内容

模組:Etymology languages/data

維基詞典,自由的多語言詞典

在"incategory ..."過濾器後添加搜索文字:

該模塊包含了語言代碼之定義和元數據。欲見其他相關資訊,請參見附录:語言列表

此模塊不得直接用於其他模塊或模板。資料與數據應通過Module:languages獲取。

必填值

表中的每個項目必須包含以下索引字段:

1
該語言的「規範」名稱,舊版模塊中寫作canonicalName。這是維基詞典詞條和分類名稱中使用的名字。
2
該語言在維基數據的ID(以Q開頭)。這取代了舊的wikipedia_article屬性。若該語言在維基數據沒有對應的實體,可將其設為nil

選填值

3
該語言所屬的語系,請參見Wiktionary:語系

屬性 entry_namesort_key 用於替換文本;它們替換或刪除某些字符或字符集。其工作原理相似,且都是可選的。它們都可以是表,sort_key 可以是一個模塊的名稱,該模塊接收一個條目名並生成一個排序鍵(用於在類別頁面上對條目進行排序)。

if sort_key is the name of a module, the module must contain a sortkey-generating function that is named makeSortKey. This function must take the arguments text, lang, sc, where text is the page name (or other text in the language), lang is the language code (not the language object), and sc is the script code (not the script object). The returned value should always be a string, or there will be a module error in the Language:makeSortKey() function.

If either one is a table, it must contain two tables inside it: one named from and one named to. These two tables are organised pairwise: each element in from is a pattern to identify which characters in the term to replace, while the corresponding element in to defines what to replace them with.

If the replacement is not present or if it is false or nil, it defaults to an empty replacement, meaning that the matching characters are removed altogether. This means that the from list can be longer than the to list, and an empty replacement will be assumed for any elements in from that have no counterpart in to.

The tables can contain literal characters, or the patterns (a type of regular expressions) that are used by the standard Scribunto mw.ustring.gsub function. See the Scribunto reference manual for more information.

At the top of the module, there is a list of combining characters with names. These are provided for convenience and readability, as combining characters generally do not display properly inside the module code (although they do not affect the actual operation of the module).

entry_name
Defines replacements to create the entry name from the displayed form of a term. This can be used to remove certain diacritical marks according to the customs or standard practice of the language. For example, it is used to remove accent marks from Russian words (ру́сскийрусский), or macrons from Latin or Old English words (ōsos), as these are not used in the normal written form of these languages. This is used by makeEntryName in Module:languages.
sort_key
Defines replacements to create a category sort key from the page name. The purpose is to remove any characters that are ignored in sorting, and to replace similar characters with identical ones if the sorting rules for that language do not distinguish them. For example, in German, the characters "ä" and "a" are considered equivalent for sorting, and are both treated as "a". The page name is converted to lowercase before applying the replacements, so you should not add uppercase letters to the "from" lists. This is used by makeSortKey in Module:languages.

These are other optional values:

otherNames
該語言除了標準名稱外的所有名稱的表格。該表格不僅應包括該語言的同義詞,而且應包括指歸入同一類別的語言變體的名稱。例如,雖然佛蘭芒語不是荷蘭語的同義詞,但佛蘭芒語被認為是荷蘭語的「一部分」,因此該名稱被列入荷蘭語其中。
type
語言的類型(會影響它在Wiktionary上的處理方式)。可用的值包括:
  • regular-這個值是默認值,所以不需要特別指定。這表示該語言的詞彙符合Wiktionary:收录标准,因此被允許放在主命名空間中。該語言可能也有重構的詞彙,則這些詞彙應被放在重構(Reconstructed)命名空間中,且必須在前面加「*」表示重構。(註:中文維基詞典暫無 Reconstructed 空間。)
  • reconstructed - 此語言不符合Wiktionary:收录标准,因此只允許在重構命名空間中使用。這類語言中的所有詞彙都是重建得到的,必須在前面加上「*」。
  • appendix-constructed - 這種語言已經通過驗證,但不符合對重構語言的額外要求(Wiktionary:收录标准#構建語言)。因此,其詞彙必須放在附錄(Appendix)命名空間中;又因為它們不是透過重建得到的,因此不應該在鏈接中加上「*」前綴。
scripts
A list of script codes, see Wiktionary:Scripts. These represent all the scripts (writing systems) that this language uses in the real world, as well as the ones that Wiktionary uses. The scripts that are used most often on Wiktionary should be first in the list, as this will speed up script detection.
Many templates and modules detect the script of text in a particular language using the findBestScript function in Module:scripts. This function goes down the list of scripts and counts how many characters in the text belong to each script. If all the characters belong to one script, that script will be returned; otherwise, the script with the most characters will be returned. Thus, script detection will be faster if the most frequently used scripts are first in the list.
translit_module
The name of a module that is used to generate transliterations of terms, without the Module: prefix. This module must export a function named tr that is defined as follows:
tr(text, lang, sc)
The three parameters are the text to be transliterated, the language code, and the script code. The function can ignore the language and script codes, but they are provided for cases when a language has more than one script, or when a single function is used to transliterate multiple languages sharing the same script.
ancestors
A table listing the language codes of the direct ancestors of this language. For example, the ancestor of English is listed as enm (Middle English); ang (Old English, the ancestor of Middle English), gem-pro (Proto-Germanic, the ancestor of Old English), and ine-pro (Proto-Indo-European, the ancestor of Proto-Germanic) are not listed.
For most languages, only one ancestor code should be given, but multiple ancestors can be listed for pidgins, creoles and mixed languages.
The ancestor language table should not be included if the language's direct ancestor is the proto-language of the family to which the language belongs. In such a case, if the family code has been provided, Module:languages will automatically add the proto-language as the language's ancestor. For example, Proto-Germanic (gem-pro) belongs to the Indo-European (ine) family, and its direct ancestor is Proto-Indo-European (ine-pro). Because Proto-Indo-European is the proto-language of the Indo-European languages, Proto-Germanic does not need an ancestors table; Proto-Indo-European will be automatically returned as its ancestor by the getAncestors function.
wikimedia_codes
A table listing the Wikimedia language codes that this language maps to. This is used to translate Wiktionary codes to Wikimedia codes, which are usually the same but there are a few languages where it is different. The language codes must be valid Wikimedia codes (as determined by the wiki software), and if they are not defined in one of the language data modules, they must be defined in Module:wikimedia languages/data.
wikipedia_article
The name of the Wikipedia article for the language. Should normally only be supplied if the Wikidata id cannot be used.

local m_langdata = require("Module:languages/data")

-- Loaded on demand, as it may not be needed (depending on the data).
local function u(...)
	u = require("Module:string utilities").char
	return u(...)
end

local c = m_langdata.chars
local p = m_langdata.puaChars
local s = m_langdata.shared

local m = {}

----------------------------------------------------------------------------------------------------------------------
--                                                Afroasiatic varieties                                             --
----------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------
--                                    Berber varieties                              --
--------------------------------------------------------------------------------------

m["shi-med"] = {
	"中世紀施盧赫語",
	34152,
	"shi",
	aliases = {"Medieval Tashelhit"},
}

-- Tuareg lects

m["thv"] = {
	"Tamahaq",
	56703,
	"tmh",
}

m["ttq"] = {
	"Tawellemmet",
	56390,
	"tmh",
}

m["taq"] = {
	"塔馬舍克語",
	4670066,
	"tmh",
	aliases = {"Tamasheq"},
}

m["thz"] = {
	"Tayert",
	56388,
	"tmh",
}

m["thv-ght"] = {
	"Ghat",
	47012900,
	"thv",
}

--------------------------------------------------------------------------------------
--                                   Cushitic varieties                             --
--------------------------------------------------------------------------------------

-- Oromo varieties

m["hae"] = {
	"哈勒爾奧羅莫語",
	5330355,
	"om",
	aliases = {"Harar Oromo", "Eastern Oromo"},
}

m["gax"] = {
	"Borana",
	2910610,
	"om",
	aliases = {"Southern Oromo"},
}

m["orc"] = {
	"Orma",
	2919128,
	"om",
}

m["ssn"] = {
	"Waata",
	3501553,
	"om",
}

--------------------------------------------------------------------------------------
--                                   Egyptian varieties                             --
--------------------------------------------------------------------------------------

-----------------------------------------------------
--           Ancient Egyptian varieties            --
-----------------------------------------------------

m["egy-old"] = {
	"上古埃及語",
	447117,
	"egy",
	aliases = {"Old Egyptian"},
}

m["egy-mid"] = {
	"中古埃及語",
	657330,
	"egy",
	aliases = {"Middle Egyptian", "Classical Egyptian"},
}

m["egy-nmi"] = {
	"新中古埃及語",
	123735278,
	"egy",
	aliases = {"Neo-Middle Egyptian", "Égyptien de tradition", "Traditional Egyptian"},
}

m["egy-lat"] = {
	"晚期埃及語",
	1852329,
	"egy",
	aliases = {"Late Egyptian"},
}

-----------------------------------------------------
--                 Coptic varieties                --
-----------------------------------------------------

m["cop-akh"] = {
	"艾赫米姆科普特語",
	125176464,
	"cop",
	aliases = {"Akhmimic Coptic", "Akhmimic"},
}

m["cop-boh"] = {
	"布海拉科普特語",
	890733,
	"cop",
	aliases = {"Bohairic Coptic", "Bohairic", "Memphitic Coptic", "Memphitic"},
}

m["cop-ggg"] = {
	"科普特語方言G",
	nil,
	"cop",
	aliases = {"Coptic Dialect G", "Dialect G", "Mansuric Coptic", "Mansuric"},
}

m["cop-jjj"] = {
	"科普特語方言J",
	nil,
	"cop",
	aliases = {"Coptic Dialect J"},
}

m["cop-kkk"] = {
	"科普特語方言K",
	nil,
	"cop",
	aliases = {"Coptic Dialect K"},
}

m["cop-ppp"] = {
	"科普特語方言P",
	nil,
	"cop",
	aliases = {"Coptic Dialect P", "Proto-Theban Coptic", "Palaeo-Theban Coptic"},
}

m["cop-fay"] = {
	"法尤姆科普特語",
	1399115,
	"cop",
	aliases = {"Fayyumic Coptic", "Fayyumic", "Faiyumic Coptic", "Faiyumic", "Fayumic Coptic", "Fayumic",
		"Bashmuric Coptic", "Bashmuric"},
}

m["cop-her"] = {
	"赫爾莫波利斯科普特語",
	nil,
	"cop",
	aliases = {"Hermopolitan Coptic", "Hermopolitan", "Coptic Dialect H", "Ashmuninic", "Ashmuninic Coptic"},
}

m["cop-lyc"] = {
	"利科波利斯科普特語",
	nil,
	"cop",
	aliases = {"Lycopolitan Coptic", 
		"Lycopolitan",
		"Assiutic Coptic", "Asyutic Coptic", "Assiutic", "Asyutic",
		"Lyco-Diospolitan Coptic", "Lyco-Diospolitan",
		"Subakhmimic Coptic", "Subakhmimic"
	},
}

m["cop-old"] = {
	"古科普特語",
	115518040,
	"cop",
	aliases = {"Old Coptic"},
}

m["cop-oxy"] = {
	"俄克喜林庫斯科普特語",
	nil,
	"cop",
	aliases = {"Oxyrhynchite Coptic", "Oxyrhynchite", "Mesokemic Coptic", "Mesokemic", "Middle Egyptian Coptic"},
}

m["cop-ply"] = {
	"原始利科波利斯科普特語",
	nil,
	"cop",
	aliases = {"Proto-Lycopolitan Coptic", "Coptic Dialect i", "Proto-Lyco-Diospolitan Coptic"},
}

m["cop-sah"] = {
	"薩伊迪科普特語",
	2645851,
	"cop",
	aliases = {"Sahidic Coptic", "Sahidic", "Saidic Coptic", "Saidic", "Thebaic Coptic", "Thebaic"},
}

--------------------------------------------------------------------------------------
--                                   Semitic varieties                              --
--------------------------------------------------------------------------------------

-----------------------------------------------------
--                Akkadian varieties               --
-----------------------------------------------------

m["akk-old"] = {
	"古阿卡德語",
	nil,
	"akk",
	aliases = {"Old Akkadian"},
}

m["akk-obb"] = {
	"古巴比倫語",
	nil,
	"akk",
	aliases = {"Old Babylonian"},
}

m["akk-oas"] = {
	"古亞述語",
	nil,
	"akk",
	aliases = {"Old Assyrian"},
}

m["akk-mbb"] = {
	"中古巴比倫語",
	nil,
	"akk",
	aliases = {"Middle Babylonian"},
}

m["akk-mas"] = {
	"中古亞述語",
	nil,
	"akk",
	aliases = {"Middle Assyrian"},
}

m["akk-nbb"] = {
	"新巴比倫語",
	nil,
	"akk",
	aliases = {"Neo-Babylonian"},
}

m["akk-nas"] = {
	"新亞述語",
	nil,
	"akk",
	aliases = {"Neo-Assyrian"},
}

m["akk-lbb"] = {
	"晚期巴比倫語",
	nil,
	"akk",
	aliases = {"Late Babylonian"},
}

m["akk-stb"] = {
	"標準巴比倫語",
	nil,
	"akk",
	aliases = {"Standard Babylonian"},
}

-----------------------------------------------------
--                 Arabic varieties                --
-----------------------------------------------------

m["jrb"] = {
	"猶太阿拉伯語",
	37733,
	"ar",
	pseudo_families = "qfa-jew",
	aliases = {"Judeo-Arabic"},
}

m["apc-leb"] = {
	"黎巴嫩北黎凡特阿拉伯語",
	1516642,
	"apc",
	aliases = {"Lebanese Arabic"},
}

m["apc-sle"] = {
	"南黎巴嫩北黎凡特阿拉伯語",
	14206590,
	"apc",
	aliases = {"South Lebanese Arabic"},
}

m["apc-nle"] = {
	"北黎巴嫩北黎凡特阿拉伯語",
	nil,
	"apc",
	aliases = {"North Lebanese Arabic"},
}

m["apc-syr"] = {
	"Syrian North Levantine Arabic",
	2143071,
	"apc",
	aliases = {"Syrian Arabic"},
}

m["apc-ale"] = {
	"Aleppine North Levantine Arabic",
	7056921,
	"apc-syr",
	aliases = {"Aleppo Arabic", "Aleppine Arabic"},
}

m["apc-dam"] = {
	"Damascene North Levantine Arabic",
	12237466,
	"apc-syr",
	aliases = {"Damascus Arabic", "Damascene Arabic"},
}

m["acm-khu"] = {
	"Khuzestani Arabic",
	1040944,
	"acm",
}

-----------------------------------------------------
--                Aramaic varieties                --
-----------------------------------------------------

m["arc-bib"] = {
	"聖經亞拉姆語",
	843235,
	"arc",
	family = "sem-are",
	aliases = {"Biblical Aramaic"},
}

m["arc-cpa"] = {
	"基督教巴勒斯坦亞拉姆語",
	60790119,
	"arc",
	family = "sem-arw",
	aliases = {"Christian Palestinian Aramaic", "Melkite Aramaic", "Palestinian Syriac", "Syropalestinian Aramaic"},
}

m["arc-imp"] = {
	"帝國亞拉姆語",
	7079491,
	"arc",
	aliases = {"Imperial Aramaic", "Official Aramaic"},
}

m["arc-hat"] = {
	"哈特拉亞拉姆語",
	3832926,
	"arc",
	family = "sem-are",
	aliases = {"Hatran Aramaic"},
}

m["arc-jla"] = {
	"猶太書面亞拉姆語",
	105952842,
	"arc",
	pseudo_families = "qfa-jew",
	aliases = {"Jewish Literary Aramaic"},
}

m["arc-nab"] = {
	"納巴泰亞拉姆語",
	36178,
	"arc",
	aliases = {"Nabataean Aramaic"},
}

m["arc-old"] = {
	"古亞拉姆語",
	3398392,
	"arc",
	aliases = {"Old Aramaic"},
}

m["arc-pal"] = {
	"帕邁拉亞拉姆語",
	1510113,
	"arc",
	family = "sem-arw",
	aliases = {"Palmyrene Aramaic"},
}

m["tmr"] = {
	"猶太巴比倫亞拉姆語",
	33407,
	"arc",
	family = "sem-ase",
	pseudo_families = "qfa-jew",
	aliases = {"Jewish Babylonian Aramaic"},
}

m["jpa"] = {
	"猶太巴勒斯坦亞拉姆語",
	948909,
	"arc",
	family = "sem-arw",
	aliases = {"Jewish Palestinian Aramaic", "Galilean Aramaic"},
	pseudo_families = "qfa-jew",
}

-----------------------------------------------------
--                 Hebrew varieties                --
-----------------------------------------------------

m["hbo"] = {
	"聖經希伯來語",
	1982248,
	"he",
	aliases = {"Biblical Hebrew", "Classical Hebrew"},
}

m["he-mis"] = {
	"米書拿猶太語",
	1649362,
	"he",
	ancestors = "hbo",
	aliases = {"Mishnaic Hebrew"},
}

m["he-med"] = {
	"中世紀希伯來語",
	2712572,
	"he",
	ancestors = "he-mis",
	aliases = {"Medieval Hebrew"},
}

m["he-IL"] = {
	"現代以色列希伯來語",
	8141,
	"he",
	aliases = {"Israeli Hebrew"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                  Ainu varieties                                                  --
----------------------------------------------------------------------------------------------------------------------

m["ain-hok"] = {
	"北海道阿伊努語",
	20968488,
	"ain",
	aliases = {"Hokkaido Ainu", "Hokkaidō Ainu"},
}

m["ain-kur"] = {
	"千島群島阿伊努語",
	20967012,
	"ain",
	aliases = {"Kuril Ainu"},
}

m["ain-sak"] = {
	"樺太阿伊努語",
	20747371,
	"ain",
	aliases = {"Sakhalin Ainu"},
}

----------------------------------------------------------------------------------------------------------------------
--                                          American indigenous varieties                                           --
----------------------------------------------------------------------------------------------------------------------

-----------------------------------------------------
--                 Inuit varieties                 --
-----------------------------------------------------

m["esi"] = {
	"北阿拉斯加因紐皮雅特語",
	nil,
	"ik",
	aliases = {"North Alaskan Inupiatun"},
}

m["esk"] = {
	"西北阿拉斯加因紐皮雅特語",
	25559714,
	"ik",
	aliases = {"Northwest Alaskan Inupiatun"},
}

-----------------------------------------------------
--               Iroquoian varieties               --
-----------------------------------------------------

m["iro-ohu"] = {
	"古溫達特語",
	nil,
	"wdt",
	aliases = {"Old Wendat"},
}

m["iro-omo"] = {
	"古莫霍克語",
	nil,
	"moh",
	aliases = {"Old Mohawk"},
}

m["iro-oon"] = {
	"古奧農達加語",
	nil,
	"ono",
	aliases = {"Old Onondaga"},
}

-----------------------------------------------------
--               Tupi-Guarani varieties            --
-----------------------------------------------------

-- Old Tupi varieties

m["tpw-lga"] = {
	"亞馬遜通用語",
	18275323,
	"tpw",
	aliases = {"Língua Geral Amazônica", "Língua Geral"},
}

m["tpw-lgp"] = {
	"Língua Geral Paulista",
	2669239,
	"tpw",
}

----------------------------------------------------------------------------------------------------------------------
--                                             Austroasiatic varieties                                              --
----------------------------------------------------------------------------------------------------------------------

-- Khmer varieties

m["okz-ang"] = {
	"吳哥古高棉語",
	nil,
	"okz",
	wikipedia_article = "高棉語#歷史",
	aliases = {"Angkorian Old Khmer"},
}

m["okz-pre"] = {
	"前吳哥古高棉語",
	nil,
	"okz",
	wikipedia_article = "高棉語#歷史",
	aliases = {"Pre-Angkorian Old Khmer"},
}

-- Central Nicobarese varieties

m["ncb-cam"] = {
	"Camorta",
	5026908,
	"ncb",
	aliases = {"Kamorta"},
}

m["ncb-kat"] = {
	"Katchal",
	17064263,
	"ncb",
	aliases = {"Tehnu"},
}

m["ncb-nan"] = {
	"Nancowry",
	6962504,
	"ncb",
	aliases = {"Nankwari"},
}

----------------------------------------------------------------------------------------------------------------------
--                                              Austronesian varieties                                              --
----------------------------------------------------------------------------------------------------------------------

-- Malay and related varieties

m["ms-old"] = { -- this has the ISO code 'omy'
	"古馬來語",
	nil,
	"ms",
	aliases = {"Old Malay"},
}

m["ms-cla"] = {
	"古典馬來語",
	nil,
	"ms",
	ancestors = "ms-old",
	aliases = {"Classical Malay"},
}

m["pse-bsm"] = {
	"Besemah",
	nil,
	"pse",
}

m["bew-kot"] = {
	"伯塔維科塔語",
	nil,
	"bew",
	aliases = {"Betawi Kota", "Urban Betawi"}, -- in Jakarta
}

-- Philippine varieties

m["xnn"] = {
	"北坎卡奈語",
	12953609,
	"kne",
	aliases = {"Northern Kankanay", "Northern Kankana-ey"},
}

m["tl-old"] = {
	"古他加祿語",
	12967437,
	"tl",
	aliases = {"Old Tagalog"},
}

m["tl-cls"] = {
	"古典他加祿語",
	nil,
	"tl",
	aliases = {"Classical Tagalog"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                Caucasian varieties                                               --
----------------------------------------------------------------------------------------------------------------------

-- Kartvelian varieties

m["ka-mid"] = {
	"中古格魯吉亞語",
	nil,
	"ka",
	ancestors = "oge",
	aliases = {"Middle Georgian"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                Dravidian varieties                                               --
----------------------------------------------------------------------------------------------------------------------

m["ta-mid"] = {
	"中古泰米爾語",
	20987434,
	"ta",
	aliases = {"Middle Tamil"},
}

m["kn-hav"] = {
	"Havigannada",
	24276369,
	"kn",
}

m["kn-kun"] = {
	"Kundagannada",
	6444255,
	"kn",
}

----------------------------------------------------------------------------------------------------------------------
--                                             Indo-European varieties                                              --
----------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------
--                                  Albanian varieties                              --
--------------------------------------------------------------------------------------

m["aln"] = {
	"蓋格阿爾巴尼亞語",
	181037,
	"sq",
	aliases = {"Gheg Albanian", "Gheg"},
}

m["aae"] = {
	"阿爾伯雷什阿爾巴尼亞語",
	1075302,
	"als",
	aliases = {"Arbëresh Albanian", "Arbëreshë", "Arbëresh"},
}

m["aat"] = {
	"阿爾瓦尼蒂卡阿爾巴尼亞語",
	29347,
	"als",
	aliases = {"Arvanitika Albanian", "Arvanitika"},
}

m["als"] = {
	"托斯克阿爾巴尼亞語",
	180937,
	"sq",
	aliases = {"Tosk Albanian", "Tosk"},
}

--------------------------------------------------------------------------------------
--                                  Armenian varieties                              --
--------------------------------------------------------------------------------------

m["hyw"] = {
	"西亞美尼亞語",
	180945,
	"hy",
	aliases = {"Western Armenian"},
}

m["hye"] = {
	"東亞美尼亞語",
	181059,
	"hy",
	aliases = {"Eastern Armenian"},
}

--------------------------------------------------------------------------------------
--                                Balto-Slavic varieties                            --
--------------------------------------------------------------------------------------

-------------------------------------------------------------------------
--                            Baltic varieties                         --
-------------------------------------------------------------------------

m["bat-pro"] = {
	"原始波羅的語",
	1703347,
	"ine-bsl-pro",
	aliases = {"Proto-Baltic"},
}

m["bat-dni"] = {
	"聶伯波羅的語",
	4163178,
	"bat-pro",
	family = "bat",
	aliases = {"Dnieper Baltic", "Dniepr Baltic", "Dnieper-Oka Baltic", "Dniepr-Oka Baltic"},
}

m["bat-gol"] = {
	"戈利亞德語",
	4142855,
	"bat-dni",
	aliases = {"Golyad", "Eastern Galindian", "East Galindian"},
}

-------------------------------------------------------------------------
--                            Slavic varieties                         --
-------------------------------------------------------------------------

-----------------------------------------------------
--               Bulgarian varieties               --
-----------------------------------------------------

m["cu-bgm"] = {
	"中古保加利亞語",
	12294897,
	"cu",
	ancestors = "cu",
	aliases = {"Middle Bulgarian"},
}

-----------------------------------------------------
--             Church Slavonic varieties           --
-----------------------------------------------------

-- Old Moscow Church Slavonic deleted as it seems not distinct enough from Russian (Synodal) Church Slavonic.

m["zls-chs-ru"] = {
	"俄羅斯教會斯拉夫語",
	21662400,
	"zls-chs",
	aliases = {"Russian Church Slavonic", "Synodal Church Slavonic", "New Moscow Church Slavonic", "Novomoskovsk Church Slavonic"},
}

m["zls-chs-uk"] = {
	"烏克蘭教會斯拉夫語",
	12153548,
	"zls-chs",
	aliases = {"Ukrainian Church Slavonic", "Rusyn Church Slavonic", "Belarusian Church Slavonic"},
}

--[=[

-- Not sure about these yet.

m["zls-chs-bg"] = {
	"保加利亞教會斯拉夫語",
	nil,
	"zls-chs",
	aliases = {"Bulgarian Church Slavonic"},
}

m["zls-chs-cs"] = {
	"捷克教會斯拉夫語",
	nil,
	"zls-chs",
	aliases = {"Czech Church Slavonic"},
}

m["zls-chs-hr"] = {
	"克羅地亞教會斯拉夫語",
	nil,
	"zls-chs",
	aliases = {"Croatian Church Slavonic"},
}

m["zls-chs-mk"] = {
	"馬其頓教會斯拉夫語",
	nil,
	"zls-chs",
	aliases = {"Macedonian Church Slavonic"},
}

m["zls-chs-ro"] = {
	"羅馬尼亞教會斯拉夫語",
	nil,
	"zls-chs",
	aliases = {"Romanian Church Slavonic"},
}

m["zls-chs-sr"] = {
	"塞爾維亞教會斯拉夫語",
	nil,
	"zls-chs",
	aliases = {"Serbian Church Slavonic"},
}

]=]

-----------------------------------------------------
--                  Czech varieties                --
-----------------------------------------------------

m["cs-ear"] = {
	"早期現代捷克語",
	nil,
	"cs",
	ancestors = "zlw-ocs",
	aliases = {"Early Modern Czech"},
}

-----------------------------------------------------
--              East Slavic varieties              --
-----------------------------------------------------

m["zle-ops"] = {
	"古普斯科夫語",
	4167885,
	"zle-ono",
	aliases = {"Old Pskovian"},
}

m["zle-mru"] = {
	"中古俄語",
	35228,
	"ru",
	"Cyrs",
	ancestors = "orv",
	translit = "ru-translit",
	strip_diacritics = {
		Cyrs = {
			remove_diacritics = c.grave .. c.acute .. c.diaer,
		},
	aliases = {"Middle Russian"},
	},

}

m["zle-mbe"] = {
	"中古白俄羅斯語",
	13211,
	"zle-ort",
	aliases = {"Middle Belarusian"},
}

m["zle-muk"] = {
	"中古烏克蘭語",
	13211,
	"zle-ort",
	aliases = {"Middle Ukrainian"},
}

m["uk-CA"] = {
	"加拿大烏克蘭語",
	4161010,
	"uk",
	aliases = {"Canadian Ukrainian"},
}

-----------------------------------------------------
--                  Polish varieties               --
-----------------------------------------------------

m["zlw-mpl"] = {
	"中古波蘭語",
	402878,
	"pl",
	ancestors = "zlw-opl",
	strip_diacritics = {
		remove_diacritics = c.acute,
		remove_exceptions = {"Ć", "ć", "Ń", "ń", "Ó", "ó", "Ś", "ś", "Ź", "ź"},
	},
	aliases = {"Middle Polish"},
}

m["pl-gre"] = {
	"大波蘭語",
	4106789,
	"pl",
	aliases = {"Greater Polish"},
}

m["pl-les"] = {
	"小波蘭語",
	361709,
	"pl",
	aliases = {"Lesser Polish"},
}

m["pl-mas"] = {
	"馬佐夫舍波蘭語",
	4274559,
	"pl",
	aliases = {"Masovian Polish"},
}

m["pl-gor"] = {
	"Goral",
	452889,
	"pl",
}

-----------------------------------------------------
--              Serbo-Croatian varieties           --
-----------------------------------------------------

m["ckm"] = {
	"查方言",
	337565,
	"sh",
	aliases = {"Chakavian Serbo-Croatian", "Čakavian"},
}

m["kjv"] = {
	"卡伊方言",
	838165,
	"sh",
	aliases = {"Kajkavian Serbo-Croatian"},
}

m["sh-tor"] = { -- Linguist code srp-tor
	"托爾拉庫方言",
	1078803,
	"sh",
	aliases = {"Torlakian Serbo-Croatian", "Torlak"},
}

--------------------------------------------------------------------------------------
--                                   Celtic varieties                               --
--------------------------------------------------------------------------------------

-----------------------------------------------------
--                Brythonic varieties              --
-----------------------------------------------------

m["bry-ear"] = {
	"早期布立吞語",
	nil,
	"cel-bry-pro",
	aliases = {"Early Brythonic"},
}

m["bry-lat"] = {
	"晚期布立吞語",
	nil,
	"cel-bry-pro",
	aliases = {"Late Brythonic"},
}

-----------------------------------------------------
--                 Gaulish varieties               --
-----------------------------------------------------

m["xcg"] = {
	"山南高盧語",
	3832927,
	"cel-gau",
	aliases = {"Cisalpine Gaulish"},
}

m["xtg"] = {
	"山北高盧語",
	29977,
	"cel-gau",
	aliases = {"Transalpine Gaulish"},
}

-----------------------------------------------------
--                  Welsh varieties                --
-----------------------------------------------------

m["cy-nor"] = {
	"北威爾士威爾士語",
	13127692,
	"cy",
	aliases = {"North Walian Welsh", "Northern Welsh"},
}

m["cy-sou"] = {
	"南威爾士威爾士語",
	13127689,
	"cy",
	aliases = {"South Walian Welsh", "Southern Welsh"},
}

--------------------------------------------------------------------------------------
--                                  Germanic varieties                              --
--------------------------------------------------------------------------------------

-- Proto-West Germanic varieties

m["frk"] = {
	"古法蘭克語",
	10860505,
	"gmw-pro",
	family = "gmw-frk",
	aliases = {"Frankish", "Old Frankish"},
}

m["gem-sue"] = {
	"蘇維匯語",
	134600275,
	"gmw-pro",
	aliases = {"Suevic", "Suebian"},
}

m["gmw-afr-pro"] = {
	"原始盎格魯-弗里斯蘭語",
	134603379,
	"gmw-nsg-pro",
	family = "gmw-afr",
	aliases = {"Proto-Anglo-Frisian"},
}

m["gmw-nsg-pro"] = {
	"原始北海日耳曼語",
	134603374,
	"gmw-pro",
	family = "gmw-nsg",
	aliases = {"Proto-North Sea Germanic", "Proto-Ingvaeonic"},
}

-----------------------------------------------------
--                  Dutch varieties                --
-----------------------------------------------------

m["nl-BE"] = {
	"比利時荷蘭語",
	34147,
	"nl",
	aliases = {"Belgian Dutch", "Flemish", "Flemish Dutch", "Southern Dutch"},
}

-----------------------------------------------------
--            English and Scots varieties          --
-----------------------------------------------------

-- English varieties

m["en-AU"] = {
	"澳大利亞英語",
	44679,
	"en",
	aliases = {"Australian English"},
}

m["en-GB"] = {
	"英國英語",
	7979,
	"en",
	aliases = {"British English"},
}

m["en-GB-SCT"] = {
	"蘇格蘭英語",
	44676,
	"en-GB",
	aliases = {"Scottish English"},
}

m["en-GB-WLS"] = {
	"威爾士英語",
	44676,
	"en-GB",
	aliases = {"Welsh English"},
}

m["en-IM"] = {
	"曼島英語",
	6753295,
	"en-GB",
	aliases = {"Manx English"},
}

m["en-aae"] = {
	"澳大利亞原住民英語",
	783347,
	"en-AU",
	aliases = {"Australian Aboriginal English"},
}

m["en-ear"] = {
	"近代英語",
	1472196,
	"en",
	ancestors = "enm",
	aliases = {"Early Modern English", "Early New English"},
}

m["en-geo"] = {
	"喬迪英語",
	653421,
	"en",
	ancestors = "enm-nor",
	aliases = {"Geordie"},
}

m["en-IE"] = { -- FIXME: "IE" doesn't cover Northern Ireland
	"愛爾蘭英語",
	665624,
	"en",
	aliases = {"Irish English"},
}

m["en-uls"] = {
	"阿爾斯特英語",
	6840826,
	"en-IE",
	aliases = {"Ulster English"},
}

m["en-GB-NIR"] = {
	"北愛爾蘭英語",
	6840826, -- actually the code for Ulster English
	"en-uls",
	aliases = {"Northern Irish English"},
}

m["en-NNN"] = { -- NA = Namibia; NNN is NATO 3-letter code for North America
	"北美英語",
	7053766,
	"en",
	ietf_subtag = "en-021", -- 021 = UN M49 code for "Northern America" (i.e. North America wihout Central America or the Caribbean)
	aliases = {"North American English"},
}

m["en-US"] = {
	"美國英語",
	7976,
	"en-NNN",
	aliases = {"American English"},
}

m["en-NZ"] = {
	"新西蘭英語",
	44661,
	"en",
	aliases = {"New Zealand English"},
}

m["en-ZA"] = {
	"南非英語",
	1156228,
	"en",
	aliases = {"South African English"},
}

m["en-US-CA"] = {
	"加利福尼亞英語",
	1026812,
	"en-US",
	aliases = {"California English"},
}

m["en-CA"] = {
	"加拿大英語",
	44676,
	"en-US",
	aliases = {"Canadian English"},
}

m["en-HK"] = {
	"香港英語",
	1068863,
	"en",
	aliases = {"Hong Kong English"},
}

m["en-IN"] = {
	"印度英語",
	1348800,
	"en",
	aliases = {"Indian English"},
}

m["pld"] = {
	"波拉里語",
	1359130,
	"en",
	aliases = {"Polari"},
}

-- Scots varieties

m["sco-ins"] = {
	"島嶼蘇格蘭語",
	16919205,
	"sco",
	aliases = {"Insular Scots"},
}

m["sco-uls"] = {
	"阿爾斯特蘇格蘭語",
	201966,
	"sco",
	aliases = {"Ulster Scots"},
}

m["sco-nor"] = {
	"北部蘇格蘭語",
	16928150,
	"sco",
	aliases = {"Northern Scots"},
}

m["sco-sou"] = {
	"南部蘇格蘭語",
	7570457,
	"sco",
	aliases = {"Southern Scots", "South Scots", "Borders Scots"},
}

-- Middle English varieties

m["enm-esc"] = { -- Part of Middle English until it developed into Middle Scots.
	"早期蘇格蘭語",
	5326738,
	"enm",
	ancestors = "enm-nor",
	aliases = {"Early Scots", "Old Scots", "Scottish Middle English"},
}

m["enm-emi"] = {
	"東密德蘭中古英語",
	134238810,
	"enm",
	ancestors = "ang-ang", -- Technically ang-mer, but attested Mercian is mostly WM IIRC
	aliases = {"East Midland Middle English"},
}

m["enm-ken"] = {
	"肯特中古英語",
	134238532,
	"enm",
	ancestors = "ang-ken",
	aliases = {"Kentish Middle English"},
}

m["enm-nor"] = {
	"北部中古英語",
	134238541,
	"enm",
	ancestors = "ang-nor",
	aliases = {"Northern Middle English"},
}

m["enm-sou"] = {
	"南部中古英語",
	134238528,
	"enm",
	ancestors = "ang-wsx",
	aliases = {"Southern Middle English"},
}

m["enm-wmi"] = {
	"西密德蘭中古英語",
	134238824,
	"enm",
	ancestors = "ang-mer",
	aliases = {"West Midland Middle English"},
}

-- Old English varieties

-- Includes both Mercian and Northumbrian.
m["ang-ang"] = {
	"盎格利亞古英語",
	121142917,
	"ang",
	aliases = {"Anglian Old English"},
}

m["ang-ken"] = {
	"肯特古英語",
	11687485,
	"ang",
	aliases = {"Kentish Old English"},
}

m["ang-mer"] = {
	"麥西亞古英語",
	602072,
	"ang-ang",
	aliases = {"Mercian Old English"},
}

m["ang-nor"] = {
	"諾森布里亞古英語",
	1798915,
	"ang-ang",
	aliases = {"Northumbrian Old English"},
}

m["ang-wsx"] = {
	"西薩克森古英語",
	2658603,
	"ang",
	aliases = {"West Saxon Old English"},
}

-----------------------------------------------------
--              High German varieties              --
-----------------------------------------------------

-- (modern) German varieties

m["de-AT"] = {
	"奧地利德語",
	306626,
	"de",
	aliases = {"Austrian German"},
}

m["de-AT-vie"] = {
	"維也納德語",
	56474,
	"de-AT",
	aliases = {"Viennese German"},
}

m["de-CH"] = {
	"瑞士德語",
	1366643,
	"de",
	aliases = {"Switzerland German", "Schweizer Hochdeutsch", "Swiss Standard German", "Swiss High German"},
}

m["de-bal"] = {
	"波羅的德語",
	15785413,
	"de",
	aliases = {"Baltic German"},
}

m["de-ear"] = {
	"早期新高地德語",
	1472199,
	"de",
	ancestors = "gmh",
	aliases = {"Early New High German", "Early Modern High German"},
}

m["ksh"] = {
	"科隆語",
	4624,
	"gmw-cfr",
	aliases = {"Kölsch"},
}

m["pfl"] = {
	"普法爾茨德語",
	23014,
	"gmw-rfr",
	aliases = {"Palatine German", "Pfälzisch", "Pälzisch", "Palatinate German"},
}

m["sli"] = {
	"西里西亞德語",
	152965,
	"gmw-ecg",
	aliases = {"Silesian East Central German", "Silesian"},
}

m["sxu"] = {
	"上薩克森德語",
	699284,
	"gmw-ecg",
	aliases = {"Upper Saxon German"},
}

-- Old High German varieties

m["lng"] = {
	"古倫巴底語",
	35972,
	"goh",
	aliases = {"Lombardic"},
}

-- Alemannic German varieties

m["gsw-low"] = {
	"低地阿勒曼尼語",
	503724,
	"gsw",
	aliases = {"Low Alemannic German"},
}

m["gsw-FR-als"] = {
	"阿爾薩斯阿勒曼尼語",
	8786,
	"gsw-low",
	aliases = {"Alsatian Alemannic German"},
}

m["gsw-hig"] = {
	"高地阿勒曼尼語",
	503728,
	"gsw",
	aliases = {"High Alemannic German"},
}

m["gsw-hst"] = {
	"至高阿勒曼尼語",
	687538,
	"gsw",
	aliases = {"Highest Alemannic German"},
}

m["wae"] = {
	"瓦爾瑟德語",
	680517,
	"gsw-hst",
	aliases = {"Walser German"},
}

-----------------------------------------------------
--               Low German varieties              --
-----------------------------------------------------

m["nds-de"] = {
	"德國低地薩克森語",
	25433,
	"nds",
	ietf_subtag = "nds-DE", -- should we make this the actual code?
	wikimedia_codes = "nds",
}

m["nds-nl"] = {
	"荷蘭低地薩克森語",
	516137,
	"nds",
	ietf_subtag = "nds-NL", -- should we make this the actual code?
	wikimedia_codes = "nds-nl",
}

m["act"] = {
	"阿赫特胡克語",
	153627,
	"nds-nl",
	aliases = {"Achterhoeks", "Achterhoek", "Achterhooks"},
}

m["drt"] = {
	"德倫特語",
	2736709,
	"nds-nl",
	aliases = {"Drents", "Drèents", "Dreins", "Dreints", "Drints"},
}

m["frs"] = {
	"東弗里斯蘭低地德語",
	149208,
	"nds-de",
	aliases = {"East Frisian Low German", "East Frisian", "East Frisian Low Saxon"},
}

m["gos"] = {
	"格羅寧根語",
	508854,
	"nds-nl",
	aliases = {"Gronings", "Grunnegs", "Grönnegs"},
}

m["nds-lpr"] = {
	"低地普魯士語",
	33982,
	"nds-de",
	aliases = {"Low Prussian"},
}

m["sdz"] = {
	"薩蘭語",
	3436668,
	"nds-nl",
	aliases = {"Sallands", "Sallaans", "Sallaands"},
}

m["stl"] = {
	"斯泰靈韋夫語",
	506010,
	"nds-nl",
	aliases = {"Stellingwerfs", "Stellingwarfs"},
}

m["twd"] = {
	"特文特語",
	497363,
	"nds-nl",
	aliases = {"Twents", "Tweants"},
}

m["vel"] = {
	"費呂沃語",
	2484810,
	"nds-nl",
	aliases = {"Veluws"},
}

m["wep"] = {
	"威斯特法倫語",
	505655,
	"nds-de",
	aliases = {"Westphalian", "Westfalish", "Westphalien"},
}

-----------------------------------------------------
--              North Frisian varieties            --
-----------------------------------------------------

m["frr-ins"] = {
	"Insular North Frisian",
	110629610,
	"frr",
}

m["frr-fam"] = {
	"Föhr-Amrum North Frisian",
	110629601,
	"frr-ins",
}

m["frr-foh"] = {
	"Föhr North Frisian",
	28185,
	"frr-fam",
	aliases = {"Föhr Frisian", "Fering",
			   "Ferring", -- Glottolog
			  },
	varieties = {"Aasdring", "Weesdring"},
}

m["frr-amr"] = {
	"Amrum North Frisian",
	28192,
	"frr-fam",
	aliases = {"Amrum Frisian", "Amrum", "Öömrang"},
}

m["frr-hel"] = {
	"Heligoland North Frisian",
	28086,
	"frr-ins",
	aliases = {"Heligoland Frisian", "Halunder", "Heligolandic Frisian", "Heligolandic North Frisian",
			   "Helgoland Frisian", "Helgoland North Frisian", "Helgoland"},
}

m["frr-syl"] = {
	"Sylt North Frisian",
	28181,
	"frr-ins",
	aliases = {"Sylt Frisian", "Söl'ring",
			   "Sölreng", -- Glottolog
			  },
}

m["frr-mai"] = {
	"Mainland North Frisian",
	110629626,
	"frr",
}

m["frr-hal"] = {
	"Halligen North Frisian",
	28177,
	"frr-mai",
	aliases = {"Halligen Frisian", "Halifreesk", "Hallingen Frisian", "Hallingen North Frisian",
			   "Hallingen", -- Glottolog
			  },
}

m["frr-moo"] = {
	"Mooring North Frisian",
	28187,
	"frr-mai",
	aliases = {"Bökingharde North Frisian", "Bökingharde Frisian", "Böökinghiirder frasch",
			   "Mooring", "Moring",
			  },
	varieties = {{"East Mooring", "Ostermooring"}, {"West Mooring", "Westermooring"}},
}

m["frr-kar"] = {
	"Karrharde North Frisian",
	28191,
	"frr-mai",
	aliases = {"Karrharde Frisian", "Karrharder",
			  },
}

m["frr-goe"] = {
	-- Technically this refers to three adjacent dialects (Northern, Central and Southern), the latter of which went
	-- extinct in 1980-1981. As a result, Glottolog speaks of "Norder-Mittelgoesharde", referring to the remaining two.
	"Goesharde North Frisian",
	28183,
	"frr-mai",
	aliases = {"Norder-Mittelgoesharde North Frisian", "Norder-Mittelgoesharde Frisian", "Norder-Mittelgoesharde",
			   "Goesharde Frisian", "Goesharde", "Gooshiirder",
			  },
}

m["frr-wie"] = {
	"Wiedingharde North Frisian",
	28171,
	"frr-mai",
	aliases = {"Wiedingharde Frisian", "Wiedingharde", "Wiringhiirder freesk",
			  },
}

-----------------------------------------------------
--               Old Norse varieties               --
-----------------------------------------------------

m["non-grn"] = {
	"格陵蘭諾爾斯語",
	855236,
	"non-own",
	aliases = {"Greenlandic Norse"},
}

m["non-oen"] = {
	"古東諾爾斯語",
	10498031,
	"non",
	ancestors = "non",
	aliases = {"Old East Norse"},
}

m["non-own"] = {
	"古西諾爾斯語",
	2377483,
	"non",
	ancestors = "non",
	aliases = {"Old West Norse"},
}

-----------------------------------------------------
--               Old Swedish varieties             --
-----------------------------------------------------

m["gmq-osw-lat"] = {
	"晚期古瑞典語",
	10723594,
	"gmq-osw",
	ancestors = "gmq-osw",
	aliases = {"Late Old Swedish"},
}

--------------------------------------------------------------------------------------
--                                    Greek varieties                               --
--------------------------------------------------------------------------------------

m["qsb-grc"] = {
	"前希臘時期的底層語言",
	965052,
	"und",
	family = "qfa-sub",
	aliases = {"Pre-Greek"},
}

m["grc-aeo"] = {
	"伊歐里斯希臘語",
	406373,
	"grc",
	aliases = {"Aeolic Greek", "Lesbic Greek", "Lesbian Greek", "Aeolian Greek"},
}

m["grc-arc"] = {
	"阿卡迪亞希臘語",
	nil,
	"grc-arp",
	aliases = {"Arcadian Greek"},
}

m["grc-arp"] = {
	"阿卡迪亞-塞浦路斯希臘語",
	499602,
	"grc",
	aliases = {"Arcadocypriot Greek"},
}

m["grc-att"] = {
	"阿提卡希臘語",
	506588,
	"grc",
	aliases = {"Attic Greek"},
}

m["grc-boi"] = {
	"維奧蒂亞希臘語",
	406373,
	"grc-aeo",
	aliases = {"Boeotian Greek"},
}

m["grc-dor"] = {
	"多利亞希臘語",
	285494,
	"grc",
	aliases = {"Doric Greek"},
}

m["grc-ela"] = {
	"厄利斯希臘語",
	nil,
	"grc",
	aliases = {"Elean Greek"},
}

m["grc-epc"] = {
	"史詩希臘語",
	990062,
	"grc",
	aliases = {"Epic Greek", "Homeric Greek"},
}

m["grc-ion"] = {
	"愛奧尼亞希臘語",
	504165,
	"grc",
	aliases = {"Ionic Greek"},
}

m["grc-koi"] = {
	"通用希臘語",
	107358,
	"grc",
	ancestors = "grc-att",
	aliases = {"Koine Greek", "Hellenistic Greek"},
}

m["grc-kre"] = {
	"克里特古希臘語", -- to distinguish from Cretan Greek below
	nil,
	"grc-dor",
	aliases = {"Cretan Ancient Greek"},
}

m["grc-opl"] = {
	"俄浦斯洛克里斯語",
	nil,
	"grc",
	aliases = {"Opuntian Locrian"},
}

m["grc-ozl"] = {
	"俄佐萊洛克里斯語",
	nil,
	"grc",
	aliases = {"Ozolian Locrian"},
}

m["grc-pam"] = {
	"潘菲利亞希臘語",
	2271793,
	"grc",
	aliases = {"Pamphylian Greek"},
}

m["grc-ths"] = {
	"色薩利希臘語",
	406373,
	"grc-aeo",
	aliases = {"Thessalian Greek"},
}

m["gkm"] = {
	"中古希臘語",
	36387,
	"grc",
	ancestors = "grc-koi",
	aliases = {"Byzantine Greek", "Medieval Greek"},
}

m["el-cyp"] = {
	"塞浦路斯希臘語",
	245899,
	"el",
	aliases = {"Cypriot Greek", "Cypriotic Greek"},
}

m["el-pap"] = {
	"帕福斯希臘語",
	nil,
	"el",
	aliases = {"Paphian Greek"},
}

m["el-crt"] = {
	"克里特希臘語",
	588306,
	"el",
	aliases = {"Cretan Greek"},
}

m["el-kth"] = {
	"Katharevousa",
	35961,
	"el",
	"Polyt",
	ancestors = "gkm",
	aliases = {"Katharevousa Greek"},
	-- Polyt display_text, strip_diacritics, sort_key in [[Module:scripts/data]]
}

m["el-kal"] = {
	"Kaliarda",
	12878658,
	"el",
}

--------------------------------------------------------------------------------------
--                                Indo-Iranian varieties                            --
--------------------------------------------------------------------------------------

-------------------------------------------------------------------------
--                          Indo-Aryan varieties                       --
-------------------------------------------------------------------------

-- reconstructed intermediate stages
m["pra-pro"] = {
	"原始新印度-雅利安語",
	nil,
	"pra",
	aliases = {"Proto-New Indo-Aryan"},
}

m["inc-ash-pro"] = {
	"原始中印度-雅利安語",
	nil,
	"inc-ash",
	aliases = {"Proto-Middle Indo-Aryan"},
}

m["inc-mit"] = {
	"米坦尼語",
	1986700,
	"inc-pro",
	aliases = {"Mitanni"},
}

m["bra-old"] = {
	"古布拉傑語",
	nil,
	"bra",
	aliases = {"Old Braj"},
}

-- Apabhramsas

m["inc-aav"] = {
	"Avahattha",
	nil,
	"inc-apa",
	aliases = {"Abahattha"},
}

m["inc-asa"] = {
	"索拉塞尼阿帕布拉姆沙語",
	nil,
	"inc-apa",
	aliases = {"Sauraseni Apabhramsa"},
}

m["inc-agu"] = {
	"古爾扎爾阿帕布拉姆沙語",
	nil,
	"inc-apa",
	aliases = {"Gurjara Apabhramsa"},
}

m["inc-aka"] = {
	"克什米爾阿帕布拉姆沙語",
	nil,
	"inc-apa",
	aliases = {"Kasmiri Apabhramsa"},
}

m["inc-ama"] = {
	"馬哈拉施特拉阿帕布拉姆沙語",
	nil,
	"inc-apa",
	aliases = {"Maharastri Apabhramsa"},
}

m["inc-ata"] = {
	"Takka Apabhramsa",
	nil,
	"inc-apa",
}

m["inc-avr"] = {
	"Vracada Apabhramsa",
	nil,
	"inc-apa",
}

-- Assamese varieties
m["as-bkm"] = {
	"Barpetia Kamrupi Assamese",
	30642960,
	"as",
}

m["as-nkm"] = {
	"Nalbaria Kamrupi Assamese",
	85787678,
	"as",
}

m["as-pkm"] = {
	"Palasbaria Kamrupi Assamese",
	nil,
	"as",
}

-- Bengali varieties

m["bn-dvn"] = {
	"Dhakaiya Vaṅga Bengali",
	48726851,
	"bn", -- Eastern Bengali variety
}

m["bn-nvn"] = {
	"Noakhailla Vaṅga Bengali",
	107548681,
	"bn", -- Eastern Bengali variety
}

-- Dhivehi varieties

m["dv-old"] = {
	"Old Dhivehi",
	117790875,
	"dv",
}

m["dv-mul"] = {
	"Mulaku Dhivehi",
	nil,
	"dv",
	aliases = {"Mulaku Divehi", "Mulaku Bas"},
}

m["dv-huv"] = {
	"Huvadhu Dhivehi",
	nil,
	"dv",
	aliases = {"Huvadhu Divehi", "Huvadhu Bas"},
}

m["dv-add"] = {
	"Addu Dhivehi",
	nil,
	"dv",
	aliases = {"Addu Divehi", "Addu Bas"},
}

-- Gujarati varieties

m["gu-kat"] = {
	"卡提阿瓦語",
	nil,
	"gu",
	aliases = {"Kathiyawadi", "Kathiyawadi Gujarati", "Kathiawadi"},
}

m["gu-lda"] = {
	"Lisan ud-Dawat Gujarati",
	nil,
	"gu",
	aliases = {"Lisan ud-Dawat", "LDA"},
}

-- Hindi varieties

m["hi-mum"] = {
	"孟買印地語",
	3543151,
	"hi",
	aliases = {"Bombay Hindi", "Mumbai Hindi", "Bambaiyya Hindi"},
}

m["hi-mid"] = {
	"中古印地語",
	nil,
	"inc-ohi",
	ancestors = "inc-ohi",
	aliases = {"Middle Hindi"},
}

-- Konkani varieties

m["kok-mid"] = {
	"中古孔卡尼語",
	nil,
	"kok",
	aliases = {"Middle Konkani", "Medieval Konkani"},
}

m["kok-old"] = {
	"古孔卡尼語",
	nil,
	"kok",
	aliases = {"Old Konkani", "Early Konkani"},
}

-- Prakrits

m["pra-ard"] = {
	"Ardhamagadhi Prakrit",
	35217,
	"pra",
	aliases = {"Ardhamagadhi"},
}

m["pra-hel"] = {
	"赫魯普拉克里特語",
	15080869,
	"pra",
	aliases = {"Helu Prakrit", "Elu", "Elu Prakrit", "Helu"},
}

m["pra-kha"] = {
	"卡薩普拉克里特語",
	nil,
	"pra",
	aliases = {"Khasa Prakrit", "Khasa"},
}

m["pra-mag"] = {
	"摩揭陀普拉克里特語", -- Not to be confused with Magahi (mag)
	2652214,
	"pra",
	aliases = {"Magadhi Prakrit", "Magadhi"},
}

m["pra-mah"] = {
	"馬哈拉施特拉普拉克里特語",
	2586773,
	"pra",
	aliases = {"Maharastri Prakrit", "Maharashtri Prakrit", "Maharastri", "Maharashtri"},
}

m["pra-pai"] = {
	"白夏基普拉克里特語",
	2995607,
	"pra-sau",
	aliases = {"Paisaci Prakrit", "Paisaci", "Paisachi"},
	ancestors = "pra-sau"
}

m["pra-sau"] = {
	"首羅犀那語",
	2452885,
	"pra",
	aliases = {"Sauraseni Prakrit", "Sauraseni", "Shauraseni"},
}

m["pra-ava"] = {
	"Avanti",
	nil,
	"pra",
	aliases = {"Avanti Prakrit"},
}

m["pra-pra"] = {
	"Pracya",
	nil,
	"pra",
	aliases = {"Pracya Prakrit"},
}

m["pra-bah"] = {
	"Bahliki",
	nil,
	"pra",
	aliases = {"Bahliki Prakrit"},
}

m["pra-dak"] = {
	"Daksinatya",
	nil,
	"pra",
	aliases = {"Daksinatya Prakrit"},
}

m["pra-sak"] = {
	"Sakari",
	nil,
	"pra",
	aliases = {"Sakari Prakrit"},
}

m["pra-can"] = {
	"Candali",
	nil,
	"pra",
	aliases = {"Candali Prakrit"},
}

m["pra-sab"] = {
	"Sabari",
	nil,
	"pra",
	aliases = {"Sabari Prakrit"},
}

m["pra-abh"] = {
	"Abhiri",
	nil,
	"pra",
	aliases = {"Abhiri Prakrit"},
}

m["pra-dra"] = {
	"Dramili",
	nil,
	"pra",
	aliases = {"Dramili Prakrit"},
}

m["pra-odr"] = {
	"Odri",
	nil,
	"pra",
	aliases = {"Odri Prakrit"},
}

-- Punjabi varieties

m["pnb"] = {
	"西旁遮普語",
	58635,
	"pa",
	"pa-Arab",
	aliases = {"Western Punjabi"},
}

-- Sanskrit varieties

m["vsn"] = {
	"吠陀梵語",
	36858,
	"sa",
	aliases = {"Vedic Sanskrit"},
}	

m["cls"] = {
	"古典梵語",
	11059,
	"sa",
	aliases = {"Classical Sanskrit"},
}

m["sa-bhs"] = {
	"佛教混合梵語",
	248758,
	"sa",
	aliases = {"Buddhist Hybrid Sanskrit"},
}

m["sa-bra"] = {
	"婆羅米梵語",
	36858,
	"sa",
	aliases = {"Brahmanic Sanskrit"},
}

m["sa-neo"] = {
	"新梵語",
	11059,
	"sa",
	aliases = {"New Sanskrit"},
}

-- Sinhalese varieties

m["si-med"] = {
	"中世紀僧加羅語",
	nil,
	"si",
	aliases = {"Medieval Sinhalese", "Medieval Sinhala"},
}

-------------------------------------------------------------------------
--                           Iranian varieties                         --
-------------------------------------------------------------------------

m["qsb-bma"] = {
	"巴克特里亞·馬爾吉亞納文明體的底層語言",
	133187435,
	"und",
	family = "qfa-sub",
	aliases = {"the BMAC substrate", "the Bactria-Margiana substrate", "the Bactria-Margiana Archaeological Complex substrate"},
}

-- Historical and current Iranian dialects

m["ae-old"] = {
	"古阿維斯陀語",
	29572,
	"ae",
	aliases = {"Old Avestan", "Gathic Avestan"},
}

m["ae-yng"] = {
	"Younger Avestan",
	29572,
	"ae-old",
	aliases = {"Young Avestan"},
}

m["bcc"] = {
	"南俾路支語",
	33049,
	"bal",
	aliases = {"Southern Balochi", "Southern Baluchi"},
}

m["bgp"] = {
	"東俾路支語",
	33049,
	"bal",
	aliases = {"Eastern Balochi", "Eastern Baluchi"},
}

m["bgn"] = {
	"西俾路支語",
	33049,
	"bal",
	aliases = {"Western Balochi", "Western Baluchi"},
}

m["bsg-ban"] = {
	"Bandari",
	nil,
	"bsg",
}

m["bsg-hor"] = {
	"霍爾木茲語",
	nil,
	"bsg",
	aliases = {"Hormozi"},
}

m["bsg-min"] = {
	"Minabi",
	nil,
	"bsg",
}

m["kho-old"] = {
	"古和田語",
	nil,
	"kho",
	aliases = {"Old Khotanese"},
}

m["kho-lat"] = {
	"晚期和田語",
	nil,
	"kho-old",
	aliases = {"Late Khotanese"},
}

m["peo-ear"] = {
	"早期古波斯語",
	nil,
	"peo",
	aliases = {"Early Old Persian"},
}

m["peo-lat"] = {
	"晚期古波斯語",
	nil,
	"peo",
	aliases = {"Late Old Persian"},
}

m["pal-ear"] = {
	"早期中古波斯語",
	nil,
	"pal",
	aliases = {"Early Middle Persian"},
}

m["pal-lat"] = {
	"晚期中古波斯語",
	nil,
	"pal",
	ancestors = "pal-ear",
	aliases = {"Late Middle Persian"},
}

m["ps-nwe"] = {
	"西北普什圖語",
	nil,
	"ps",
	aliases = {"Northwestern Pashto"},
}

m["ps-cgi"] = {
	"中吉爾吉語",
	nil,
	"ps-nwe",
	aliases = {"Central Ghilzay"},
}

m["ps-mah"] = {
	"Mahsudi",
	nil,
	"ps-nwe",
}

m["ps-nea"] = {
	"東北普什圖語",
	nil,
	"ps",
	aliases = {"Northeastern Pashto"},
}

m["ps-afr"] = {
	"Afridi",
	nil,
	"ps-nea",
}

m["ps-bng"] = {
	"Bangash",
	nil,
	"ps-nea",
}

m["ps-xat"] = {
	"Khatak",
	nil,
	"ps-nea",
}

m["ps-pes"] = {
	"白沙瓦語",
	nil,
	"ps-nea",
	aliases = {"Peshawari"},
}

m["ps-sea"] = {
	"東南普什圖語",
	nil,
	"ps",
	aliases = {"Southeastern Pashto"},
}

m["ps-ban"] = {
	"Bannu",
	nil,
	"ps-sea",
}

m["ps-kak"] = {
	"Kakari",
	nil,
	"ps-sea",
}

m["ps-ser"] = {
	"Sher",
	nil,
	"ps-sea",
}

m["ps-waz"] = {
	"Waziri",
	12274473,
	"ps-sea",
}

m["ps-swe"] = {
	"西南普什圖語",
	nil,
	"ps",
	aliases = {"Southwestern Pashto"},
}

m["ps-kan"] = {
	"坎大哈語",
	nil,
	"ps-swe",
	aliases = {"Kandahari"},
}

m["ps-jad"] = {
	"Jadrani",
	nil,
	"ps",
	ancestors = "ira-pat-pro"
}

m["xme-azr"] = {
	"古阿塞拜疆語",
	nil,
	"xme-ott",
	aliases = {"Old Azari", "Old Azeri", "Azari", "Azeri", "Āḏarī", "Adari", "Adhari"},
}

m["xme-ttc-cen"] = {
	"中塔蒂語",
	nil,
	"xme-ott",
	aliases = {"Central Tati"},
}

m["xme-ttc-eas"] = {
	"東塔蒂語",
	nil,
	"xme-ott",
	aliases = {"Eastern Tati"},
}

m["xme-ttc-nor"] = {
	"北塔蒂語",
	nil,
	"xme-ott",
	aliases = {"Northern Tati"},
}

m["xme-ttc-sou"] = {
	"南塔蒂語",
	nil,
	"xme-ott",
	aliases = {"Southern Tati"},
}

m["xme-ttc-wes"] = {
	"西塔蒂語",
	nil,
	"xme-ott",
	aliases = {"Western Tati"},
}

m["xmn"] = {
	"摩尼中古波斯語",
	nil,
	"pal-lat",
	aliases = {"Manichaean Middle Persian"},
}

m["fa-ear"] = {
	"早期新波斯語",
	127413796,
	"fa",
	ancestors = "pal-lat",
	translit = "fa-cls-translit",
	aliases = {"Early New Persian"},
}

m["fa-cls"] = {
	"古典波斯語",
	9168,
	"fa",
	ancestors = "fa-ear",
	translit = "fa-cls-translit",
	aliases = {"Classical Persian"},
}

m["fa-ira"] = {
	"伊朗波斯語",
	3513637,
	"fa",
	aliases = {"Iranian Persian", "Modern Persian", "Western Persian"},
	translit = "fa-ira-translit",
}

m["prs"] = {
	"達利語",
	178440,
	"fa",
	aliases = {"Dari", "Dari Persian", "Central Persian", "Eastern Persian", "Afghan Persian"},
	translit = "fa-cls-translit",
}

m["haz"] = {
	"哈扎拉吉語",
	33398,
	"prs",
	translit = "fa-cls-translit",
	aliases = {"Hazaragi"},
}

m["os-dig"] = {
	"迪戈爾奧塞梯語",
	3027861,
	"os",
	aliases = {"Digor Ossetian", "Digoron", "Digor"},
}

m["os-iro"] = {
	"伊隆奧塞梯語",
	nil,
	"os",
	aliases = {"Iron Ossetian", "Iron"},
}

m["sog-ear"] = {
	"早期粟特語",
	nil,
	"sog",
	aliases = {"Early Sogdian"},
}

m["sog-lat"] = {
	"晚期粟特語",
	nil,
	"sog-ear",
	aliases = {"Late Sogdian"},
}

m["ro-MD"] = {
	"摩爾多瓦語",
	36392,
	"ro",
	aliases = {"Moldovan", "Moldavian"},
}

m["oru-kan"] = {
	"卡尼古拉姆語",
	6363164,
	"oru",
	aliases = {"Kaniguram"},
}

m["oru-log"] = {
	"洛加爾語",
	nil,
	"oru",
	aliases = {"Logar"},
}

m["oos"] = {
	"古奧塞梯語",
	65455882,
	"xln",
	aliases = {"Old Ossetic"},
}

m["oos-ear"] = {
	"早期古奧塞梯語",
	nil,
	"oos",
	aliases = {"Early Old Ossetic"},
}

m["oos-lat"] = {
	"晚期古奧塞梯語",
	nil,
	"oos",
	aliases = {"Late Old Ossetic"},
}

m["rdb-jir"] = {
	"吉羅夫特語",
	nil,
	"rdb",
	aliases = {"Jirofti"},
}

m["rdb-kah"] = {
	"卡赫努季語",
	nil,
	"rdb",
	aliases = {"Kahnuji"},
}

-- Southwestern Fars lects

m["fay-bur"] = {
	"Burenjani",
	nil,
	"fay",
}

m["fay-bsh"] = {
	"Bushehri",
	nil,
	"fay",
}

m["fay-dsh"] = {
	"Dashtaki",
	nil,
	"fay",
}

m["fay-dav"] = {
	"Davani",
	5228140,
	"fay",
}

m["fay-eze"] = {
	"Emamzada Esma’ili",
	nil,
	"fay",
	aliases = {"Emamzada Esmaili"},
}

m["fay-gav"] = {
	"Gavkoshaki",
	nil,
	"fay",
}

m["fay-kho"] = {
	"Khollari",
	nil,
	"fay",
}

m["fay-kon"] = {
	"Kondazi",
	nil,
	"fay",
}

m["fay-kzo"] = {
	"古卡澤倫語",
	nil,
	"fay",
	aliases = {"Old Kazeruni"},
}

m["fay-mas"] = {
	"Masarami",
	nil,
	"fay",
}

m["fay-pap"] = {
	"Papuni",
	nil,
	"fay",
}

m["fay-sam"] = {
	"Samghani",
	nil,
	"fay",
}

m["fay-shr"] = {
	"設拉子語",
	nil,
	"fay",
	aliases = {"Shirazi"},
}

m["fay-sho"] = {
	"古設拉子語",
	nil,
	"fay",
	aliases = {"Old Shirazi"},
}

m["fay-kar"] = {
	"Khargi",
	nil,
	"fay",
}

m["fay-sor"] = {
	"Sorkhi",
	nil,
	"fay",
}

-- Talysh lects

m["tly-cen"] = {
	"中部塔利什語",
	nil,
	"tly",
	aliases = {"Central Talysh"},
}

m["tly-asa"] = {
	"Asalemi",
	nil,
	"tly-cen",
}

m["tly-kar"] = {
	"Karganrudi",
	nil,
	"tly-cen",
}

m["tly-tul"] = {
	"Tularudi",
	nil,
	"tly-cen",
}

m["tly-tal"] = {
	"Taleshdulabi",
	nil,
	"tly-cen",
}

m["tly-nor"] = {
	"北部塔利什語",
	nil,
	"tly",
	aliases = {"Northern Talysh"},
}

m["tly-aze"] = {
	"阿塞拜疆塔利什語",
	nil,
	"tly-nor",
	aliases = {"Azerbaijani Talysh"},
}

m["tly-anb"] = {
	"Anbarani",
	nil,
	"tly-nor",
}

m["tly-sou"] = {
	"南部塔利什語",
	nil,
	"tly",
	aliases = {"Southern Talysh"},
}

m["tly-fum"] = {
	"Fumani",
	nil,
	"tly-sou",
}

m["tly-msu"] = {
	"馬蘇萊語",
	nil,
	"tly-sou",
	aliases = {"Masulei"},
}

m["tly-msa"] = {
	"Masali",
	nil,
	"tly-sou",
}

m["tly-san"] = {
	"Shandarmani",
	nil,
	"tly-sou",
}

-- Tafreshi lects

m["xme-amo"] = {
	"Amorehi",
	nil,
	"xme-taf",
}

m["atn"] = {
	"阿什蒂亞尼語",
	3436590,
	"xme-taf",
	aliases = {"Ashtiani"},
}

m["xme-bor"] = {
	"Borujerdi",
	nil,
	"xme-taf",
}

m["xme-ham"] = {
	"Hamadani",
	6302426,
	"xme-taf",
}

m["xme-kah"] = {
	"Kahaki",
	nil,
	"xme-taf",
}

m["vaf"] = {
	"Vafsi",
	32611,
	"xme-taf",
}

-- Kermanic lects

m["kfm"] = {
	"Khunsari",
	6403030,
	"xme-ker",
}

m["xme-mah"] = {
	"Mahallati",
	nil,
	"xme-ker",
}

m["xme-von"] = {
	"Vonishuni",
	nil,
	"xme-ker",
}

m["xme-bdr"] = {
	"Badrudi",
	nil,
	"xme-ker",
}

m["xme-del"] = {
	"Delijani",
	nil,
	"xme-ker",
}

m["xme-kas"] = {
	"Kashani",
	nil,
	"xme-ker",
}

m["xme-kes"] = {
	"Kesehi",
	nil,
	"xme-ker",
}

m["xme-mey"] = {
	"Meymehi",
	nil,
	"xme-ker",
}

m["ntz"] = {
	"Natanzi",
	6968399,
	"xme-ker",
}

m["xme-abz"] = {
	"Abuzeydabadi",
	nil,
	"xme-ker",
}

m["xme-aby"] = {
	"Abyanehi",
	nil,
	"xme-ker",
}

m["xme-far"] = {
	"Farizandi",
	nil,
	"xme-ker",
}

m["xme-jow"] = {
	"喬沙喀尼語",
	nil,
	"xme-ker",
	aliases = {"Jowshaqani"},
}

m["xme-nas"] = {
	"Nashalji",
	nil,
	"xme-ker",
}

m["xme-qoh"] = {
	"Qohrudi",
	nil,
	"xme-ker",
}

m["xme-yar"] = {
	"Yarandi",
	nil,
	"xme-ker",
}

m["soj"] = {
	"Soi",
	7930463,
	"xme-ker",
	aliases = {"Sohi"},
}

m["xme-tar"] = {
	"Tari",
	nil,
	"xme-ker",
}

m["gzi"] = {
	"Gazi",
	5529130,
	"xme-ker",
}

m["xme-sed"] = {
	"Sedehi",
	nil,
	"xme-ker",
}

m["xme-ard"] = {
	"Ardestani",
	nil,
	"xme-ker",
}

m["xme-zef"] = {
	"Zefrehi",
	nil,
	"xme-ker",
}

m["xme-isf"] = {
	"Isfahani",
	nil,
	"xme-ker",
}

m["xme-kaf"] = {
	"Kafroni",
	nil,
	"xme-ker",
}

m["xme-vrz"] = {
	"Varzenehi",
	nil,
	"xme-ker",
}

m["xme-xur"] = {
	"Khuri",
	nil,
	"xme-ker",
}

m["nyq"] = {
	"Nayini",
	6983146,
	"xme-ker",
}

m["xme-ana"] = {
	"Anaraki",
	nil,
	"xme-ker",
}

m["gbz"] = {
	"瑣羅亞斯德達利語",
	32389,
	"xme-ker",
	aliases = {"Zoroastrian Dari", "Behdināni", "Gabri", "Gavrŭni", "Gabrōni"},
}

m["xme-krm"] = {
	"Kermani",
	nil,
	"xme-ker",
}

m["xme-yaz"] = {
	"亞茲迪語",
	nil,
	"xme-ker",
	aliases = {"Yazdi"},
}

m["xme-bid"] = {
	"Bidhandi",
	nil,
	"xme-ker",
}

m["xme-bij"] = {
	"Bijagani",
	nil,
	"xme-ker",
}

m["xme-cim"] = {
	"Chimehi",
	nil,
	"xme-ker",
}

m["xme-han"] = {
	"Hanjani",
	nil,
	"xme-ker",
}

m["xme-kom"] = {
	"Komjani",
	nil,
	"xme-ker",
}

m["xme-nar"] = {
	"Naraqi",
	nil,
	"xme-ker",
}

m["xme-nus"] = {
	"Nushabadi",
	nil,
	"xme-ker",
}

m["xme-qal"] = {
	"Qalhari",
	nil,
	"xme-ker",
}

m["xme-trh"] = {
	"Tarehi",
	nil,
	"xme-ker",
}

m["xme-val"] = {
	"Valujerdi",
	nil,
	"xme-ker",
}

m["xme-var"] = {
	"Varani",
	nil,
	"xme-ker",
}

m["xme-zor"] = {
	"Zori",
	nil,
	"xme-ker",
}

-- Ramandi lects

m["tks-ebr"] = {
	"Ebrahimabadi",
	nil,
	"tks",
}

m["tks-sag"] = {
	"Sagzabadi",
	nil,
	"tks",
}

m["tks-esf"] = {
	"Esfarvarini",
	nil,
	"tks",
}

m["tks-tak"] = {
	"塔克斯坦語",
	nil,
	"tks",
	aliases = {"Takestani"},
}

m["tks-cal"] = {
	"Chali",
	nil,
	"tks",
	aliases = {"Chali Tati", "Chāli"},
}

m["tks-dan"] = {
	"Danesfani",
	nil,
	"tks",
}

m["tks-xia"] = {
	"Khiaraji",
	nil,
	"tks",
}

m["tks-xoz"] = {
	"Khoznini",
	nil,
	"tks",
}

-- Shughni dialects

m["sgh-bro"] = {
	"Bartangi-Oroshori",
	nil,
	"sgh",
}

m["sgh-bar"] = {
	"Bartangi",
	nil,
	"sgh-bro",
}

m["sgh-oro"] = {
	"Oroshori",
	nil,
	"sgh-bro",
	aliases = {"Roshorvi"},
}

m["sgh-rsx"] = {
	"Roshani-Khufi",
	nil,
	"sgh",
}

m["sgh-xuf"] = {
	"Khufi",
	2562249,
	"sgh-rsx",
	aliases = {"Xufi", "Xūfī"},
}

m["sgh-ros"] = {
	"羅沙尼語",
	2597566,
	"sgh-rsx",
	aliases = {"Roshani", "Rushani", "Rōšāni"},
}

m["sgh-xgb"] = {
	"Shughni-Bajui",
	nil,
	"sgh",
	aliases = {"Khughni-Bajui"},
}

m["sgh-xug"] = {
	"Khughni",
	nil,
	"sgh-xgb",
}

m["sgh-baj"] = {
	"Bajui",
	nil,
	"sgh-xgb",
}

-------------------------------------------------------------------------
--                          Nuristani varieties                        --
-------------------------------------------------------------------------

m["bsh-kat"] = {
	"Kativiri",
	2605045,
	"bsh",
	aliases = {"Katə́viri"},
}

m["xvi"] = {
	"坎維利方言",
	1193495,
	"bsh",
	aliases = {"Kamviri", "Kamvíri"},
}

m["bsh-mum"] = {
	"Mumviri",
	nil,
	"bsh",
	aliases = {"Mumvíri"},
}

--------------------------------------------------------------------------------------
--                                   Italic varieties                               --
--------------------------------------------------------------------------------------

-------------------------------------------------------------------------
--                             Latin varieties                         --
-------------------------------------------------------------------------

-- Latin varieties by period

m["itc-ola"] = {
	"古拉丁語",
	12289,
	"la",
	"Latn, Ital",
	translit = {
		Ital = "Ital-translit"
	},
	aliases = {"Old Latin"},
}

m["itc-lan"] = {
	"拉努維亞語",
	16890829,
	"itc-ola",
	aliases = {"Lanuvian", "Lanuvine"},
}

m["itc-pra"] = {
	"普萊奈斯特語",
	16889772,
	"itc-ola",
	aliases = {"Praenestine", "Praenestinian"},
}

m["la-cla"] = {
	"古典拉丁語",
	253854,
	"la",
	aliases = {"Classical Latin"},
}

m["la-vul"] = {
	"通俗拉丁語",
	37560,
	"la-cla",
	aliases = {"Vulgar Latin"},
}

m["la-afr"] = {
	"非洲羅曼語",
	162064,
	"roa-pro",
	aliases = {"African Romance"},
}

m["la-lat"] = {
	"晚期拉丁語",
	1503113,
	"la",
	ancestors = "la-cla",
	aliases = {"Late Latin"},
}

m["la-med"] = {
	"中世紀拉丁語",
	1163234,
	"la",
	ancestors = "la-lat",
	aliases = {"Medieval Latin"},
}

m["la-eme"] = {
	"早期中世紀拉丁語",
	nil,
	"la-med",
	aliases = {"Early Medieval Latin"},
}

m["la-ecc"] = {
	"教會拉丁語",
	1247932,
	"la",
	aliases = {"Ecclesiastical Latin", "Church Latin", "Liturgical Latin"},
	ancestors = "la-lat",
}

m["la-ren"] = {
	"文藝復興拉丁語",
	499083,
	"la",
	ancestors = "la-med",
	aliases = {"Renaissance Latin"},
}

m["la-new"] = {
	"新拉丁語",
	1248221,
	"la",
	aliases = {"New Latin", "Modern Latin"},
	ancestors = "la-ren",
}

m["la-con"] = {
	"現代拉丁語",
	1246397,
	"la-new",
	aliases = {"Contemporary Latin"},
}

-------------------------------------------------------------------------
--                    Miscellaneous Italic varieties                   --
-------------------------------------------------------------------------

m["xfa-cap"] = {
	"卡佩納語",
	133182969,
	"xfa",
	aliases = {"Capenate"},
}

m["osc-luc"] = {
	"盧卡尼亞語",
	3265025,
	"osc",
	aliases = {"Lucanian"},
}

m["osc-sam"] = {
	"薩莫奈語",
	133184287,
	"osc",
	aliases = {"Samnite"},
}

-------------------------------------------------------------------------
--                            Romance varieties                        --
-------------------------------------------------------------------------

m["roa-pro"] = {
	"原始羅曼語",
	3408029,
	"la-lat",
	ancestors = "la-vul",
	aliases = {"Proto-Romance"},
}

-----------------------------------------------------
--                Catalan varieties                --
-----------------------------------------------------

m["ca-val"] = {
	"瓦倫西亞語",
	32641,
	"ca",
	aliases = {"Valencian"},
}

-----------------------------------------------------
--           Franco-Provençal varieties            --
-----------------------------------------------------

m["frp-old"] = {
	"Old Franco-Provençal",
	nil,
	"frp",
}

-----------------------------------------------------
--        French and derived creole varieties      --
-----------------------------------------------------

m["fro-nor"] = {
	"古諾曼語",
	2044917,
	"fro",
	aliases = {"Old Northern French", "Old Norman", "Old Norman French"},
}

m["fro-pic"] = {
	"庇卡底古法語",
	nil,
	"fro",
	aliases = {"Picard Old French"},
}

m["xno"] = {
	"盎格魯-諾曼語",
	35214,
	"fro-nor",
	aliases = {"Anglo-Norman"},
}

m["xno-law"] = {
	"法律法語",
	2044323,
	"xno",
	aliases = {"Law French"},
}

m["zrp"] = {
	"撒勒法語",
	36994,
	"fro",
	aliases = {"Zarphatic", "Judeo-French"},
	pseudo_families = "qfa-jew",
}

m["fr-CA"] = {
	"加拿大法語",
	1450506,
	"fr",
	aliases = {"Canadian French"},
}

m["fr-CH"] = {
	"瑞士法語",
	1480152,
	"fr",
	aliases = {"Swiss French"},
}

m["fr-aca"] = {
	"阿卡迪亞法語",
	415109,
	"fr",
	aliases = {"Acadian French"},
}

m["fr-lou"] = {
	"路易斯安納法語",
	3083213,
	"fr",
	aliases = {"Louisiana French"},
}

m["fr-mis"] = {
	"密蘇里法語",
	3083210,
	"fr",
	aliases = {"Missouri French"},
}

m["frc"] = {
	"卡郡法語",
	880301,
	"fr-lou",
	aliases = {"Cajun French"},
}

m["ht-sdm"] = {
	"聖多明戈克里奧爾法語",
	nil,
	"ht",
	ancestors = "fr",
	aliases = {"Saint Dominican Creole French"},
}

-- Norman varieties

m["nrf-grn"] = {
	"根西諾曼語",
	56428,
	"nrf",
	aliases = {"Guernsey Norman", "Guernsey"},
}

m["nrf-jer"] = {
	"澤西諾曼語",
	56430,
	"nrf",
	aliases = {"Jersey Norman", "Jersey"},
}

-----------------------------------------------------
--             Gallo-Italic varieties              --
-----------------------------------------------------

m["egl-old"] = {
	"Old Emilian",
	nil,
	"egl",
}

m["lij-old"] = {
	"Old Ligurian",
	nil,
	"lij",
	aliases = {"Old Genoese"},
}

m["lmo-old"] = {
	"Old Lombard",
	97165320,
	"lmo",
}

m["pms-old"] = {
	"Old Piedmontese",
	nil,
	"pms",
	aliases = {"Old Piemontese"},
}

m["vec-old"] = {
	"Old Venetan",
	nil,
	"vec",
	aliases = {"Old Venetian"},
}

m["rgn-old"] = {
	"Old Romagnol",
	nil,
	"rgn",
}

-----------------------------------------------------
--             Italo-Romance varieties             --
-----------------------------------------------------

-- Italian varieties

m["roa-oit"] = {
	"古意大利語",
	nil,
	"it",
	aliases = {"Old Italian"},
}

m["it-CH"] = {
	"瑞士意大利語",
	672147,
	"it",
	aliases = {"Switzerland Italian"},
}

-- Other Italo-Romance varieties

m["nap-old"] = {
	"Old Neapolitan",
	nil,
	"nap",
}

m["scn-old"] = {
	"Old Sicilian",
	nil,
	"scn",
}

-----------------------------------------------------
--                Occitan varieties                --
-----------------------------------------------------

m["oc-auv"] = {
	"奧弗涅方言",
	35359,
	"oc",
	aliases = {"Auvergnat", "Auvernhat", "Auvergnese"},
}

m["oc-gas"] = {
	"加斯科涅方言",
	35735,
	"oc",
	aliases = {"Gascon"},
}

-- standardized dialect of Gascon
m["oc-ara"] = {
	"阿蘭尼方言",
	10196,
	"oc-gas",
	aliases = {"Aranese"},
}

m["oc-lan"] = {
	"朗格多克方言",
	942602,
	"oc",
	aliases = {"Languedocien", "Lengadocian"},
}

m["oc-lim"] = {
	"利穆贊方言",
	427614,
	"oc",
	aliases = {"Limousin"},
}

m["oc-pro"] = {
	"普羅旺斯方言",
	241243,
	"oc",
	aliases = {"Provençal", "Provencal"},
}

m["oc-pro-old"] = {
	"古普羅旺斯語",
	2779185,
	"pro",
	aliases = {"Old Provençal"},
}

m["oc-viv"] = {
	"維瓦賴-阿爾卑斯方言",
	1649613,
	"oc",
	aliases = {"Vivaro-Alpine"},
}

m["oc-jud"] = {
	"舒亞迪方言",
	56472,
	"oc",
	aliases = {"Shuadit", 
		"Chouhadite", "Chouhadit", "Chouadite", "Chouadit", "Shuhadit",
		"Judeo-Occitan", "Judæo-Occitan", "Judaeo-Occitan",
		"Judeo-Provençal", "Judæo-Provençal", "Judaeo-Provençal",
		"Judeo-Provencal", "Judaeo-Provencal",
		"Judeo-Comtadin", "Judæo-Comtadin", "Judaeo-Comtadin",
	},
	pseudo_families = "qfa-jew",
}

-----------------------------------------------------
--     Portuguese and derived creole varieties     --
-----------------------------------------------------

-- Portuguese

m["pt-BR"] = {
	"巴西葡萄牙語",
	750553,
	"pt",
	aliases = {"Brazilian Portuguese"},
}

m["pt-PT"] = {
	"歐洲葡萄牙語",
	922399,
	"pt",
	aliases = {"European Portuguese"},
}

-- Kabuverdianu (Cape Verde Creole, Cape Verdean Creole)

m["kea-bar"] = {
	"Barlavento Kabuverdianu",
	2217638,
	"kea",
	aliases = {"Barlavento", "Barlavento Creole", "Sampadjudu"},
}

m["kea-bvi"] = {
	"Boa Vista Kabuverdianu",
	16501837,
	"kea-bar",
	aliases = {"Boa Vista Creole"},
}

m["kea-sal"] = {
	"Sal Kabuverdianu",
	18707467,
	"kea-bar",
	aliases = {"Sal Creole"},
}

m["kea-saa"] = {
	"Santo Antão Kabuverdianu",
	18707472,
	"kea-bar",
	aliases = {"Santo Antão Creole"},
}

m["kea-sni"] = {
	"São Nicolau Kabuverdianu",
	18707549,
	"kea-bar",
	aliases = {"São Nicolau Creole"},
}

m["kea-svi"] = {
	"São Vicente Kabuverdianu",
	18707550,
	"kea-bar",
	aliases = {"São Vicente Creole"},
}

m["kea-sot"] = {
	"Sotavento Kabuverdianu",
	10261559,
	"kea",
	aliases = {"Sotavento", "Sotavento Creole", "Badiu"},
}

m["kea-bra"] = {
	"Brava Kabuverdianu",
	18670181,
	"kea-sot",
	aliases = {"Brava Creole"},
}

m["kea-fog"] = {
	"Fogo Kabuverdianu",
	18706861,
	"kea-sot",
	aliases = {"Fogo Creole"},
}

m["kea-mai"] = {
	"Maio Kabuverdianu",
	18707286,
	"kea-sot",
	aliases = {"Maio Creole"},
}

m["kea-san"] = {
	"Santiago Kabuverdianu",
	35117,
	"kea-sot",
	aliases = {"Santiago Creole"},
}

m["kea-alu"] = {
	"ALUPEC Kabuverdianu",
	375704,
	"kea",
	aliases = {"ALUPEC", "Alfabeto Unificado para a Escrita do Cabo-Verdiano"},
}

-----------------------------------------------------
--            Rhaeto-Romance varieties             --
-----------------------------------------------------

-- Friulian varieties

m["fur-old"] = {
	"Old Friulian",
	nil,
	"fur",
}

-- Ladin varieties

m["lld-amp"] = {
	"Ampezan Ladin",
	25617466,
	"lld",
	aliases = {"Anpezan", "Ampezan", "Ampezzan", "Ampezzano"},
}

m["lld-bad"] = {
	"Badiot Ladin",
	3706562,
	"lld",
	aliases = {"Badiot", "Badioto", "Badiotto"},
}

m["lld-cad"] = {
	"Cadorino Ladin",
	3706570,
	"lld",
	aliases = {"Cadorino"},
}

m["lld-fas"] = {
	"Fascian Ladin",
	742627,
	"lld",
	aliases = {"Fascian", "Fassano"},
}

m["lld-fod"] = {
	"Fodom Ladin",
	3706605,
	"lld",
	aliases = {"Fodom", "Livinallese"},
}

m["lld-for"] = {
	"Fornes Ladin",
	5470374,
	"lld",
	aliases = {"Fornes"},
}

m["lld-ghe"] = {
	"Gherdëina Ladin",
	3706597,
	"lld",
	aliases = {"Gherdëina", "Gardenese", "Val Gardena"},
}

m["lld-non"] = {
	"Nones Ladin",
	1055027,
	"lld",
	aliases = {"Nones", "Noneso"},
}

-- Romansh varieties

m["rm-old"] = {
	"Old Romansh",
	nil,
	"rm",
}

m["rm-put"] = {
	"Puter Romansh",
	688309,
	"rm",
	aliases = {"Puter", "Putèr", "Upper Engadine", "rm-puter"},
}

m["rm-srm"] = {
	"Surmiran Romansh",
	690216,
	"rm",
	aliases = {"Surmiran", "rm-surmiran",
			   "Surmiran-Albula", -- Glottolog
			  },
}

m["rm-srs"] = {
	"Sursilvan Romansh",
	688348,
	"rm",
	aliases = {"Sursilvan", "rm-sursilv"},
}

m["rm-sut"] = {
	"Sutsilvan Romansh",
	688272,
	"rm",
	aliases = {"Sutsilvan", "rm-sutsilv"},
	varieties = {"Scharans Sutsilvan"}, -- per Glottolog
}

m["rm-val"] = {
	"Vallader Romansh",
	690226,
	"rm",
	aliases = {"Vallader", "Putèr", "Lower Engadine", "rm-vallader"},
}

m["rm-gri"] = {
	"Rumantsch Grischun",
	688873,
	"rm",
	aliases = {"rm-rumgr"},
}

-----------------------------------------------------
--               Sardinian varieties               --
-----------------------------------------------------

m["sc-old"] = {
	"Old Sardinian",
	nil,
	"sc",
}

m["sc-src"] = {
	"洛古多羅方言",
	777974,
	"sc",
	aliases = {"Logudorese", "Logudorese Sardinian"},
}

m["sc-nuo"] = {
	"努奧羅方言",
	nil,
	"sc-src",
	aliases = {"Nuorese", "Nuorese Sardinian"},
}

m["sc-sro"] = {
	"坎皮達諾方言",
	35348,
	"sc",
	aliases = {"Campidanese", "Campidanese Sardinian"},
}

-----------------------------------------------------
--                 Spanish varieties               --
-----------------------------------------------------

m["es-ear"] = {
	"早期現代西班牙語",
	5364419,
	"es",
	aliases = {"Early Modern Spanish"},
}

m["es-AR"] = {
	"拉普拉塔河西班牙語",
	509780,
	"es",
	aliases = {"Rioplatense Spanish"},
}

m["es-BO"] = {
	"玻利維亞西班牙語",
	510730,
	"es",
	aliases = {"Bolivian Spanish"},
}

m["es-CL"] = {
	"智利西班牙語",
	857295,
	"es",
	aliases = {"Chilean Spanish"},
}

m["es-CO"] = {
	"哥倫比亞西班牙語",
	1115875,
	"es",
	aliases = {"Colombian Spanish"},
}

m["es-CU"] = {
	"古巴西班牙語",
	824909,
	"es",
	aliases = {"Cuban Spanish"},
}

m["es-MX"] = {
	"墨西哥西班牙語",
	616620,
	"es",
	aliases = {"Mexican Spanish"},
}

m["es-PE"] = {
	"秘魯西班牙語",
	736236,
	"es",
	aliases = {"Peruvian Spanish"},
}

m["es-PH"] = {
	"菲律賓西班牙語",
	22091406,
	"es",
	aliases = {"Philippine Spanish"},
}

m["es-US"] = {
	"美國班牙語",
	2301077,
	"es",
	aliases = {"United States Spanish", "US Spanish"},
}
--use label "US Spanish" to put Spanish terms in this category

m["es-PR"] = {
	"波多黎各西班牙語",
	7258609,
	"es",
	aliases = {"Puerto Rican Spanish"},
}

m["es-VE"] = {
	"委內瑞拉西班牙語",
	840017,
	"es",
	aliases = {"Venezuelan Spanish"},
}

m["es-lun"] = {
	"Lunfardo",
	1401612,
	"es",
}

----------------------------------------------------------------------------------------------------------------------
--                                                 Japonic varieties                                                --
----------------------------------------------------------------------------------------------------------------------

-- Japanese varieties

m["ja-mid"] = {
	"中期日語",
	6841474,
	"ojp",
	ancestors = "ojp",
	aliases = {"Middle Japanese"},
}

m["ja-mid-ear"] = {
	"中古日語",
	182695,
	"ja-mid",
	aliases = {"Early Middle Japanese"},
}

m["ja-mid-lat"] = {
	"中世日語",
	1816184,
	"ja-mid",
	ancestors = "ja-mid-ear",
	aliases = {"Late Middle Japanese"},
}

m["ja-ear"] = {
	"近世日語",
	5326692,
	"ja",
	ancestors = "ja-mid-lat",
	aliases = {"Early Modern Japanese"},
}

m["ojp-eas"] = {
	"上代東國方言",
	65247957,
	"ojp",
	aliases = {"Eastern Old Japanese"},
}

m["ja-cla"] = {
	"古典日語",
	1332057,
	"ja",
	-- FIXME: This is redundant because Classical Japanese is considered a child of (Modern) Japanese, which has ja-mid-ear
	-- (as well as ja-mid-lat) as ancestors. However, the intent here is that the *direct* ancestor of ja-cla is ja-mid-ear
	-- and ja-mid-lat is not an ancestor. Need to rethink ancestor handling.
	-- ancestors = "ja-mid-ear",
	aliases = {"Classical Japanese"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                Koreanic varieties                                                --
----------------------------------------------------------------------------------------------------------------------

-- Korean varieties

m["oko-lat"] = {
	"古朝鮮語",
	nil,
	"oko",
	aliases = {"Late Old Korean"},
}

m["okm-ear"] = {
	"中世朝鮮語",
	nil,
	"okm",
	aliases = {"Early Middle Korean"},
}

m["ko-cen"] = {
	"中部方言",
	nil,
	"ko",
	aliases = {"Central Korean"},
}

m["ko-gyg"] = {
	"京畿道方言",
	485492,
	"ko-cen",
	aliases = {"Gyeonggi Korean", "Seoul Korean"},
}

m["ko-chu"] = {
	"忠清方言",
	625800,
	"ko-cen",
	aliases = {"Chungcheong Korean", "Hoseo Korean"},
}

m["ko-hwa"] = {
	"黃海方言",
	16183706,
	"ko-cen",
	aliases = {"Hwanghae Korean"},
}

m["ko-gan"] = {
	"江原方言",
	11260444,
	"ko-cen",
	aliases = {"Gangwon Korean", "Yeongdong Korean"},
}

m["ko-gys"] = {
	"慶尚方言",
	488002,
	"ko",
	aliases = {"Gyeongsang Korean", "Southeastern Korean"},
}

m["ko-jeo"] = {
	"全羅方言",
	11250166,
	"ko",
	aliases = {"Jeolla Korean", "Southwestern Korean"},
}

m["ko-pyo"] = {
	"平安方言",
	7263142,
	"ko",
	aliases = {"Pyongan Korean", "Northwestern Korean"},
}

m["ko-ham"] = {
	"咸鏡方言",
	860702,
	"ko",
	aliases = {"Hamgyong Korean", "Northeastern Korean"},
}

m["ko-yuk"] = {
	"六鎮方言",
	16171275,
	"ko",
	aliases = {"Yukjin Korean", "Yukchin Korean", "Ryukjin Korean", "Ryukchin Korean"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                Mongolic varieties                                                --
----------------------------------------------------------------------------------------------------------------------

m["xng-ear"] = {
	"早期中古蒙古語",
	nil,
	"xng",
	aliases = {"Early Middle Mongol"},
}

m["xng-lat"] = {
	"晚期中古蒙古語",
	nil,
	"xng",
	ancestors = "xng-ear",
	aliases = {"Late Middle Mongol"},
}

m["mn-kha"] = {
	"喀爾喀蒙古語",
	6399808,
	"mn",
	aliases = {"Khalkha Mongolian", "Khalkha"},
}

m["mn-ord"] = {
	"鄂爾多斯蒙古語",
	716904,
	"mn",
	aliases = {"Ordos Mongolian", "Ordos"},
}

m["mn-cha"] = {
	"察哈爾蒙古語",
	907425,
	"mn",
	aliases = {"Chakhar Mongolian", "Chakhar"},
}

m["mn-khr"] = {
	"科爾沁蒙古語",
	3196210,
	"mn",
	aliases = {"Khorchin Mongolian", "Khorchin"},
}

----------------------------------------------------------------------------------------------------------------------
--                                               Niger-Congo varieties                                              --
----------------------------------------------------------------------------------------------------------------------

-----------------------------------------------------
--                  Akan varieties                 --
-----------------------------------------------------

m["tw"] = {
	"契維阿坎語",
	36850,
	"ak",
	aliases = {"Twi Akan", "Twi"},
}

m["abr"] = {
	"Abron",
	34831,
	"tw",
	aliases = {"Brong", "Bono", "Bono Twi"},
}

m["tw-asa"] = {
	"阿散蒂契維語",
	19261685,
	"tw",
	aliases = {"Asante Twi", "Asante", "Ashanti", "Ashante"},
}

m["tw-aku"] = {
	"阿夸佩姆契維語",
	31150449,
	"tw",
	aliases = {"Akuapem Twi", "Akuapem", "Akuapim", "Akwapem Twi", "Akwapi"},
}

m["fat"] = {
	"芳蒂阿坎語",
	35570,
	"ak",
	aliases = {"Fante Akan", "Fante", "Fanti", "Fantse", "Mfantse"},
}

m["wss"] = {
	"Wasa",
	36914,
	"ak",
}

-- creole

m["alv-kro"] = {
	"克羅曼蒂語",
	1093206,
	"crp-mar",
	aliases = {"Kromanti"},
}

-----------------------------------------------------
--                 Bantu varieties                 --
-----------------------------------------------------

m["bnt-cmn"] = {
	"共同班圖語",
	nil,
	"bnt-pro",
	aliases = {"Common Bantu"},
}

m["xh-bha"] = {
	"Bhaca",
	4900493,
	"xh",
	aliases = {"isiBhaca", "IsiBhaca"},
}

-- Rwanda-Rundi varieties

m["rw-kin"] = {
	"Kinyarwanda",
	33573,
	"rw",
	aliases = {"Rwanda"},
}

m["rw-run"] = {
	"Kirundi",
	33583,
	"rw",
	aliases = {"Rundi"},
}

-----------------------------------------------------
--                   Fula varieties                --
-----------------------------------------------------

m["fuc"] = {
	"Pulaar",
	1420205,
	"ff",
}

m["fuf"] = {
	"Pular",
	3915357,
	"ff",
}

m["ffm"] = {
	"馬西納富拉語",
	3915322,
	"ff",
	aliases = {"Maasina Fulfulde"},
}

m["fue"] = {
	-- no enwiki entry as of yet but frwiki and pmswiki have one
	"博爾古富拉語",
	12952426,
	"ff",
	aliases = {"Borgu Fulfulde"},
}

m["fuh"] = {
	-- no enwiki entry as of yet but frwiki and pmswiki have one
	"西尼日爾富拉語",
	12952430,
	"ff",
	aliases = {"Western Niger Fulfulde"},
}

m["fuq"] = {
	-- no enwiki entry as of yet but frwiki, hrwiki and pmswiki have one
	"中東部尼日爾富拉語",
	12628799,
	"ff",
	aliases = {"Central-Eastern Niger Fulfulde"},
}

m["fuv"] = {
	-- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki and swwiki have one
	"尼日利亞富拉語",
	36129,
	"ff",
	aliases = {"Nigerian Fulfulde"},
}

m["fub"] = {
	-- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki, ptwiki, swwiki and yowiki have one
	"阿達馬瓦富拉語",
	34776,
	"ff",
	aliases = {"Adamawa Fulfulde"},
}

m["fui"] = {
	-- no enwiki entry as of yet but pmswiki and swwiki have one
	"巴吉爾米富拉語",
	11003859,
	"ff",
	aliases = {"Bagirmi Fulfulde"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                  Papuan varieties                                                --
----------------------------------------------------------------------------------------------------------------------

m["kze"] = {
	"Kosena",
	12952663,
	"auy",
}

m["ont"] = {
	"Ontenu",
	3352827,
	"gaj",
	aliases = {"Ontena"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                Salishan varieties                                               --
----------------------------------------------------------------------------------------------------------------------

m["lut-nor"] = {
	"北盧紹錫德語",
	nil,
	"lut",
	aliases = {"Northern Puget Sound Salish"},
}

m["slh"] = {
	"南盧紹錫德語",
	7997684,
	"lut",
	aliases = {"Southern Puget Sound Salish", "Twulshootseed", "Whulshootseed"},
}

m["ska"] = {
	"Skagit",
	12642471,
	"lut-nor",
}

m["sno"] = {
	"Snohomish",
	25559662,
	"lut-nor",
}

----------------------------------------------------------------------------------------------------------------------
--                                              Sino-Tibetan varieties                                              --
----------------------------------------------------------------------------------------------------------------------

m["tbq-pro"] = {
	"原始藏緬語",
	7251864,
	"sit-pro",
	aliases = {"Proto-Tibeto-Burman"},
}

-----------------------------------------------------
--                Chinese varieties                --
-----------------------------------------------------

------------- Old Chinese, Middle Chinese -------------

m["och-ear"] = {
	"早期上古漢語",
	nil,
	"och",
	aliases = {"Early Old Chinese"},
}

m["och-lat"] = {
	"晚期上古漢語",
	nil,
	"och",
	aliases = {"Late Old Chinese"},
}

m["ltc-ear"] = {
	"早期中古漢語",
	nil,
	"ltc",
	aliases = {"Early Middle Chinese"},
}

m["ltc-lat"] = {
	"晚期中古漢語",
	nil,
	"ltc",
	aliases = {"Late Middle Chinese"},
}

------------- Classical/Literary varieties -------------

-- FIXME: Temporary.
m["lzh-shi"] = {
	"詩",
	1759242,
	"lzh",
	aliases = {"Traditional Chinese poetry"},
}

-- FIXME: Temporary.
m["lzh-cii"] = {
	"詞",
	1091366,
	"lzh",
	aliases = {"Ci"},
}

-- FIXME: Temporary.
m["lzh-yue"] = {
	"廣東漢文",
	nil,
	"lzh",
	aliases = {"Classical Cantonese"},
}

-- FIXME: Temporary.
m["lzh-cmn"] = {
	"官話漢文",
	nil,
	"lzh",
	aliases = {"Classical Mandarin"},
}

-- FIXME: Temporary.
m["lzh-tai"] = {
	"臺山漢文",
	nil,
	"lzh",
	aliases = {"Classical Taishanese"},
}

-- FIXME: Temporary.
m["lzh-cmn-TW"] = {
	"臺灣漢文",
	nil,
	"lzh-cmn",
	aliases = {"Classical Taiwanese Mandarin"},
}

-- FIXME: Temporary.
m["lzh-VI"] = {
	"越南漢文",
	17034227,
	"lzh",
	aliases = {"Vietnamese Classical Chinese"},
}

-- FIXME: Temporary.
m["lzh-KO"] = {
	"朝鮮漢文",
	10496257,
	"lzh",
	ietf_subtag = "lzh-KR", -- KR = South Korea, as there is no code for Korea as a whole
	aliases = {"Korean Classical Chinese"},
}

-- FIXME: Temporary.
m["lzh-lit"] = {
	"漢文",
	nil,
	"lzh",
	aliases = {"Literary Chinese"},
}

-- FIXME: Temporary. FIXME: Do we need this? How does it differ from Old Chinese?
m["lzh-pre"] = {
	"前古典漢語",
	nil,
	"lzh",
	aliases = {"Pre-Classical Chinese"},
}

------------- Written Vernacular varieties -------------

-- FIXME: Temporary.
m["cmn-wvc"] = {
	"官話白話文",
	783605,
	"cmn",
	aliases = {"Written vernacular Mandarin"},
}

-- FIXME: Temporary. FIXME: How does this differ from "Literary Cantonese"?
m["yue-wvc"] = {
	"廣東話白話文",
	nil,
	"yue",
	aliases = {"Written vernacular Cantonese"},
}

-- FIXME: Temporary.
m["zhx-tai-wvc"] = {
	"台山話白話文",
	nil,
	"zhx-tai",
	aliases = {"Written vernacular Taishanese"},
}

------------- Mandarin varieties -------------

-- FIXME: Temporary. NOTE: The Linguist List assigns the "w:Beijing dialect" (Wikidata 1147606) the code "cmn-bej" and
-- the larger "w:Beijing Mandarin (division of Mandarin)" dialect group (Wikidata 2169652; what we call "Beijingic
-- Mandarin", after Glottolog) the code "cmn-bei".
m["cmn-bei"] = {
	"北京話",
	1147606,
	"cmn-bec",
	aliases = {"Beijing Mandarin"},
}

-- FIXME: Temporary.
m["cmn-bec"] = {
	"北京官話",
	2169652,
	"cmn",
	aliases = {"Beijingic Mandarin"},
}

-- FIXME: Temporary. NOTE: The Linguist List uses the code cmn-zho.
m["cmn-cep"] = {
	"中原官話",
	3048775,
	"cmn",
	aliases = {"Central Plains Mandarin", "Zhongyuan Mandarin"},
}

m["cmn-ear"] = {
	"早期官話",
	837169,
	"cmn",
	ancestors = "ltc",
	aliases = {"Early Mandarin"},
}

-- FIXME: Temporary.
m["cmn-gua"] = {
	"關中話",
	3431648,
	"cmn-cep",
	aliases = {"Guanzhong Mandarin"},
}

-- FIXME: Temporary. Appears to be a subdialect of Guiliu Mandarin, which in turn is a subdialect of Southwestern Mandarin.
m["cmn-gui"] = {
	"桂林話",
	11111636,
	"cmn-sow",
	aliases = {"Guilin Mandarin"},
}

m["cmn-jhu"] = {
	"江淮官話",
	2128953,
	"cmn",
	aliases = {"Jianghuai Mandarin", "Lower Yangtze Mandarin"},
}

-- FIXME: Temporary.
m["cmn-lan"] = {
	"蘭銀官話",
	662754,
	"cmn",
	aliases = {"Lanyin Mandarin"},
}

-- FIXME: Temporary.
m["cmn-MY"] = {
	"馬來西亞華語",
	13646143,
	"cmn",
	aliases = {"Malaysian Mandarin"},
}

-- FIXME: Temporary.
m["cmn-nan"] = {
	"南京話",
	2681098,
	"cmn-jhu",
	aliases = {"Nanjing Mandarin"},
}

-- FIXME: Temporary.
m["cmn-noe"] = {
	"東北官話",
	1064504,
	"cmn",
	aliases = {"Northeastern Mandarin"},
}

-- FIXME: Temporary.
m["cmn-PH"] = {
	"菲律賓華語",
	7185155,
	"cmn",
	aliases = {"Philippine Mandarin"},
}

-- FIXME: Temporary.
m["cmn-SG"] = {
	"新加坡華語",
	1048980,
	"cmn",
	aliases = {"Singapore Mandarin"},
}

-- FIXME: Temporary.
m["cmn-sow"] = {
	"西南官話",
	2609239,
	"cmn",
	aliases = {"Southwestern Mandarin"},
}

-- FIXME: Temporary. Appears to be a subdialect of Jilu Mandarin.
m["cmn-tia"] = {
	"天津話",
	7800220,
	"cmn",
	aliases = {"Tianjin Mandarin"},
}

-- FIXME: Temporary. NOTE: Wikidata also has Q4380827 "Taiwanese Mandarin", defined as "rare dialect of Standard Chinese
-- (Mandarin) used in Taiwan, which is strongly influenced by Taiwanese Hokkien; mostly used by elderlies" and having no
-- English Wikipedia article (but see w:zh:臺灣國語).
m["cmn-TW"] = {
	"臺灣華語",
	262828,
	"cmn",
	aliases = {"Taiwanese Mandarin"},
}

-- FIXME: Temporary. Appears to be a subdialect of Wu-Tian Mandarin, in turn a subdialect of Southwestern Mandarin.
-- Given the code cmn-xwu in the Linguist List.
m["cmn-wuh"] = {
	"武漢話",
	11124731,
	"cmn-sow",
	aliases = {"Wuhan Mandarin", "Wuhanese"},
}

-- FIXME: Temporary. Appears to be a subdialect of Lanyin Mandarin.
m["cmn-xin"] = {
	"西寧話",
	nil,
	"cmn-lan",
	aliases = {"Xining Mandarin"},
}

-- FIXME: Temporary.
m["cmn-yan"] = {
	"揚州話",
	nil,
	"cmn-jhu",
	aliases = {"Yangzhou Mandarin"},
}

------------- Cantonese varieties -------------

-- FIXME: Temporary.
m["yue-gua"] = {
	"廣州話",
	nil,
	"yue",
	aliases = {"Guangzhou Cantonese"},
}

-- FIXME: Temporary. Given the codes yue-yue or yue-can in the Linguist List.
m["yue-HK"] = {
	"香港話",
	5894342,
	"yue",
	aliases = {"Hong Kong Cantonese"},
}

-- FIXME: Temporary. FIXME: How does this differ from "Written vernacular Cantonese"?
m["yue-lit"] = {
	"粵語白話文",
	2472605,
	"yue",
	aliases = {"Literary Cantonese"},
}

------------- Wu varieties -------------

m["wuu-han"] = {
	"杭州話",
	5648144,
	"wuu",
	aliases = {"Hangzhounese"},
}

m["wuu-nin"] = {
	"寧波話",
	3972199,
	"wuu",
	aliases = {"Ningbonese"},
}

-- FIXME: Temporary.
m["wuu-nor"] = {
	"太湖片",
	7675988,
	"wuu",
	aliases = {"Northern Wu", "Taihu Wu"},
}

-- FIXME: Temporary? Subvariety of Taihu Wu. NOTE: "chm" stands for Chongming, the main dialect, to avoid a conflict
-- with Shanghainese.
m["wuu-chm"] = {
	"沙地話",
	6112340,
	"wuu-nor",
	aliases = {"Shadi Wu"},
}

m["wuu-sha"] = {
	"上海話",
	36718,
	"wuu-nor",
	aliases = {"Shanghainese"},
}

m["wuu-suz"] = {
	"蘇州話",
	831744,
	"wuu-nor",
	aliases = {"Suzhounese"},
}

-- FIXME: Temporary. May be converted into a full language and/or split.
m["wuu-wen"] = {
	"溫州話",
	710218,
	"wuu",
	aliases = {"Wenzhounese"},
}

------------- Xiang varieties -------------

m["hsn-lou"] = {
	"婁底話",
	10943823,
	"hsn-old",
	aliases = {"Loudi Xiang"},
}

m["hsn-hya"] = {
	"衡陽話",
	20689035,
	"hsn-hzh",
	aliases = {"Hengyang Xiang"},
}

m["hsn-hzh"] = {
	"衡州話",
	nil,
	"hsn",
	aliases = {"Hengzhou Xiang"},
}

m["hsn-new"] = {
	"新湘語",
	7012696,
	"hsn",
	aliases = {"New Xiang", "Chang-Yi"},
}

m["hsn-old"] = {
	"老湘語",
	7085453,
	"hsn",
	aliases = {"Old Xiang", "Lou-Shao"},
}

------------- Hakka varieties -------------

-- FIXME: Temporary.
m["hak-dab"] = {
	"大埔話",
	19855566,
	"hak", -- formerly hak-TW but seems to be spoken primary in Dabu County in Guangdong
	aliases = {"Dabu Hakka"},
}

-- FIXME: Temporary.
m["hak-eam"] = {
	"早期現代客家語",
	nil,
	"hak",
	aliases = {"Early Modern Hakka"},
}

-- FIXME: Temporary.
m["hak-hai"] = {
	"海陸客語",
	17038519,
	"hak", -- often considered a Taiwanese lect but also spoken in [[Shanwei]], [[Guangdong]]
	aliases = {"Hailu Hakka"},
}

-- FIXME: Temporary.
m["hak-HK"] = {
	"香港客家語",
	2675834,
	"hak",
	aliases = {"Hong Kong Hakka"},
}

-- FIXME: Temporary.
m["hak-hui"] = {
	"惠陽話",
	16873881,
	"hak",
	aliases = {"Huiyang Hakka"},
}

-- FIXME: Temporary.
m["hak-hui-MY"] = {
	"馬來西亞惠陽話",
	nil,
	"hak-hui",
	aliases = {"Malaysian Huiyang Hakka"},
}

-- FIXME: Temporary. Similar to and possibly the parent of Sixian Hakka in Taiwan.
m["hak-mei"] = {
	"梅縣話",
	839295,
	"hak",
	aliases = {"Meixian Hakka", "Moiyan Hakka", "Meizhou Hakka"},
}

-- FIXME: Temporary.
m["hak-six"] = {
	"四縣話",
	9668261,
	"hak-TW",
	aliases = {"Sixian Hakka"},
}

-- FIXME: Temporary.
m["hak-TW"] = {
	"臺灣客家語",
	2391532,
	"hak",
	aliases = {"Taiwanese Hakka"},
}

-- FIXME: Temporary.
m["hak-zha"] = {
	"詔安客家語",
	6703311,
	"hak",
	aliases = {"Zhao'an Hakka", "Zhangzhou Hakka"},
}

-- Southern Min varieties --

m["nan-anx"] = {
	"安溪話",
	97064149,
	"nan-qua",
	aliases = {"Anxi Hokkien"},
}

m["nan-cha"] = {
	"長泰話",
	nil,
	"nan-zha",
	aliases = {"Changtai Hokkien"},
}

m["nan-hou"] = {
	"後路話",
	19855492,
	"nan-dat",
	aliases = {"Houlu Min"},
}

m["nan-hui"] = {
	"惠安話",
	16241797,
	"nan-qua",
	aliases = {"Hui'an Hokkien"},
}

m["nan-jin"] = {
	"晉江話",
	11089375,
	"nan-qua",
	aliases = {"Jinjiang Hokkien"},
}

m["nan-kin"] = {
	"金門話",
	56278342,
	"nan-xia",
	aliases = {"Kinmenese Hokkien", "Kinmen Hokkien"},
}

m["nan-med"] = {
	"棉蘭福建話",
	6805114,
	"nan-zha",
	aliases = {"Medan Hokkien"},
}

m["nan-pen"] = {
	"庇能福建話",
	11120689,
	"nan-zha",
	aliases = {"Penang Hokkien"},
}

m["nan-hbl-PH"] = {
	"咱人話",
	3236692,
	"nan-qua",
	aliases = {"Philippine Hokkien"},
}

m["nan-qia"] = {
	"前路話",
	19842517,
	"nan-dat",
	aliases = {"Qianlu Min"},
}

m["nan-qua"] = {
	"泉州話",
	2251677,
	"nan-hbl",
	aliases = {"Quanzhou Hokkien", "Chinchew", "Choanchew"},
}

-- FIXME: Temporary? Derived from both Quanzhou and Zhangzhou Hokkien.
m["nan-hbl-SG"] = {
	"新加坡福建話",
	3846528,
	"nan-hbl",
	aliases = {"Singapore Hokkien"},
}

m["nan-spm"] = {
	"南馬福建話",
	7570322,
	"nan-qua",
	aliases = {"Southern Malaysian Hokkien", "Southern Malaysia Hokkien", "Southern Peninsular Malaysian Hokkien", "Southern Peninsular Malaysia Hokkien"}
}

m["nan-hbl-TW"] = {
	"臺灣話",
	36778,
	"nan-hbl",
	aliases = {"Taiwanese Hokkien"},
}

m["nan-ton"] = {
	"同安話",
	nil,
	"nan-xia",
	aliases = {"Tong'an Hokkien"},
}

m["nan-xia"] = {
	"廈門話",
	68744,
	"nan-hbl",
	aliases = {"Xiamen Hokkien", "Amoy", "Amoyese", "Amoynese", "Xiamenese"},
}

m["nan-yon"] = {
	"永春話",
	65118728,
	"nan-qua",
	aliases = {"Yongchun Hokkien"},
}

m["nan-zha"] = {
	"漳州話",
	8070492,
	"nan-hbl",
	aliases = {"Zhangzhou Hokkien", "Changchew", "Chiangchew", "Changchow"},
}

m["nan-zho"] = {
	"詔安泉漳話",
	65118728,
	"nan-zha",
	aliases = {"Zhao'an Hokkien", "Zhao'an", "Chawan", "Chawan Hokkien"},
}

m["nan-zhp"] = {
	"漳平話",
	15937822,
	"nan-zha",
	aliases = {"Zhangping Hokkien"},
}

------------- Other Min varieties -------------

-- FIXME: Temporary. Affiliation within Min uncertain; some combination of Eastern and Southern.
m["zhx-zho"] = {
	"中山閩語",
	8070958,
	"zh",
	aliases = {"Zhongshan Min"},
}

------------- Other Chinese varieties -------------

-- FIXME: Temporary. Affiliation within Chinese uncertain; possibly Yue.
m["zhx-dan"] = {
	"儋州話",
	2578935,
	"zh",
	aliases = {"Danzhou Chinese"},
}

------------- Chinese romanization varieties -------------

-- [[Wiktionary:Information desk/2022/June#Etymology Coding Issue]]
-- [[Wiktionary:Grease pit/2022/June#Transliteration Systems in Etymologies 2]]

m["cmn-pinyin"] = {
	"漢語拼音",
	42222,
	"cmn",
	aliases = {"Hanyu Pinyin", "Pinyin"},
}

m["cmn-tongyong"] = {
	"通用拼音",
	700739,
	"cmn",
	aliases = {"Tongyong Pinyin"},
}

m["cmn-wadegiles"] = {
	"威妥瑪拼音",
	208442,
	"cmn",
	aliases = {"Wade–Giles", "Wade-Giles", "Wade Giles"},
}

m["zh-postal"] = {
	"郵政式拼音",
	151868,
	"zh",
	aliases = {"Postal Romanization"},
}

-- Chinese cyrillization

m["cmn-palladius"] = {
	"巴拉第系統",
	1234239,
	"cmn",
	aliases = {"Palladius", "Palladius system"},
}

-----------------------------------------------------
--                Tibetic varieties                --
-----------------------------------------------------

m["adx"] = {
	"安多藏語",
	56509,
	"bo",
	aliases = {"Amdo Tibetan"},
}

m["kbg"] = {
	"康巴語",
	12952626,
	"bo",
	aliases = {"Khamba"},
}

m["khg"] = {
	"康藏語",
	56601,
	"bo",
	aliases = {"Khams Tibetan"},
}

m["tsk"] = {
	"Tseku",
	11159532,
	"bo",
}

----------------------------------------------------------------------------------------------------------------------
--                                                  Tai-Kadai varieties                                             --
----------------------------------------------------------------------------------------------------------------------

m["th-old"] = {
	"Old Thai",
	nil,
	"tai-swe-pro",
	wikipedia_article = "高棉語#歷史",
}

m["th-suk"] = {
	"Sukhothai Old Thai", -- 1238-1438. Cannot use "Sukhothai Thai" as Sukhothai is the current city and "Sukhothai Thai" is a lect.
	nil,
	"th-old",
	aliases = {"Sukhothai Siamese"},
	wikipedia_article = "Thai language#Old Thai",
}

m["th-ayu"] = {
	"Ayutthaya Old Thai", -- 1351-1767. Cannot use "Ayutthaya Thai" as Ayutthaya is the current city.
	nil,
	"th-old",
	aliases = {"Ayutthaya Siamese"},
	wikipedia_article = "Thai language#Old Thai",
}

--[[
m["th-new"] = {
	"Hacked Thai", -- temporary for testing new translit/display methods
	nil,
	"th",
	translit = "User:Benwing2/th-scraping-translit",
	display_text = "User:Benwing2/th-scraping-translit",
	strip_diacritics = "User:Benwing2/th-scraping-translit",
	preprocess_links = "User:Benwing2/th-scraping-translit",
}
]]

m["tai-shz"] = {
	"上思壯語",
	13216,
	"za",
	aliases = {"Shangsi Zhuang"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                 Turkic varieties                                                 --
----------------------------------------------------------------------------------------------------------------------

m["trk-cmn-pro"] = {
	"原始共同突厥語",
	1126028,
	"trk-pro",
	aliases = {"Proto-Common Turkic"},
}

m["trk-ogr-pro"] = {
	"原始烏古爾語",
	1422731,
	"trk-pro",
	family = "trk-ogr",
	aliases = {"Proto-Oghur"},
}

m["trk-bul-pro"] = {
	"原始保加爾語",
	nil,
	"trk-ogr-pro",
	aliases = {"Proto-Bulgar"},
}

m["trk-ogz-pro"] = {
	"原始烏古斯語",
	494600,
	"trk-pro",
	family = "trk-ogz",
	aliases = {"Proto-Oghuz", "Southwestern Common Turkic"},
}

m["crh-dbj"] = {
	"多布羅加韃靼語",
	12811566,
	"crh",
	aliases = {"Dobrujan Tatar", "Romanian Tatar"},
}

m["cv-ana"] = {
	"Anatri",
	nil,
	"cv",
	aliases = {"Anatri Chuvash", "Anatri", "Lower Chuvash"},
}

m["cv-mid"] = {
	"中古楚瓦什語",
	nil,
	"cv",
	ancestors = "cv-old",
	aliases = {"Middle Chuvash"},
}

m["cv-old"] = {
	"古楚瓦什語",
	nil,
	"cv",
	ancestors = "xbo-vol",
	aliases = {"Old Chuvash"},
}

m["cv-vir"] = {
	"Viryal",
	4278332,
	"cv",
	aliases = {"Viryal Chuvash", "Viryal", "Upper Chuvash"},
}

m["kjh-fyu"] = {
	"富裕吉爾吉斯語",
	2598963,
	"kjh",
	aliases = {"Fuyu Kyrgyz", "Fuyu Kirgiz", "Fuyu Kirghiz", "Manchurian Kyrgyz", "Manchurian Kirgiz", "Manchurian Kirghiz"},
}

m["klj-arg"] = {
	"阿爾古語",
	33455,
	"klj",
	ancestors = "trk-cmn-pro",
	aliases = {"Arghu"},
}

m["otk-kir"] = {
	"古吉爾吉斯語",
	83142,
	"otk",
	aliases = {"Old Kirghiz", "Yenisei Turkic", "Yenisei Kyrgyz"},
}

m["otk-ork"] = {
	"鄂爾渾突厥語",
	31295480,
	"otk",
	aliases = {"Orkhon Turkic"},
}

m["qwm-cum"] = {
	"庫曼語",
	1075050,
	"qwm",
	aliases = {"Cuman", "Kuman", "Polovtsian", "Polovcian"},
}

m["qwm-arm"] = {
	"亞美尼亞-欽察語",
	2027503,
	"qwm",
	ancestors = "qwm-cum",
	aliases = {"Armeno-Kipchak", "Xıpçaχ tili", "Tatarça"},
}

m["qwm-mam"] = {
	"馬穆魯克-欽察語",
	4279942,
	"qwm",
	aliases = {"Mamluk-Kipchak", "Mameluk-Kipchak"},
}

m["az-cls"] = {
	"古典阿塞拜疆語",
	nil,
	"az",
	aliases = {"Classical Azerbaijani", "Classical Azeri"},
}

m["qxq"] = {
	"Qashqai",
	13192,
	"az",
	aliases = {"Qaşqay", "Qashqayi", "Kashkai", "Kashkay"},
}

m["tr-CY"] = {
	"塞浦路斯土耳其語",
	7917392,
	"tr",
	aliases = {"Cypriot Turkish"},
}

m["uz-afg"] = {
	-- NOTE: has ISO 639-3 code uzs assigned to it.
	"阿富汗烏茲別克語",
	1066787,
	"uz",
	aliases = {"Afghan Uzbek", "Southern Uzbek"},
	translit = "uz-afg-translit",
}

m["xbo-dan"] = {
	"多瑙河保加爾語",
	nil,
	"xbo",
	aliases = {"Danube Bulgar"},
}

m["xbo-vol"] = {
	"伏爾加河保加爾語",
	nil,
	"xbo",
	aliases = {"Volga Bulgar"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                 Uralic varieties                                                 --
----------------------------------------------------------------------------------------------------------------------

m["fiu-pro"] = {
	"原始芬蘭-烏戈爾語",
	79890,
	"urj-pro",
	aliases = {"Proto-Finno-Ugric"},
}

m["urj-fpr-pro"] = {
	"原始芬蘭-彼爾姆語",
	nil,
	"urj-pro",
	aliases = {"Proto-Finno-Permic"},
}

m["krl-nor"] = {
	"北卡累利阿語",
	125501196,
	"krl",
	aliases = {"North Karelian"},
}

m["krl-sou"] = {
	"南卡累利阿語",
	129812730,
	"krl",
	aliases = {"South Karelian"},
}

m["mns-eas"] = {
	"東曼西語",
	30311755,
	"mns-cen",
	aliases = {"Eastern Mansi"},
}

m["mns-wes"] = {
	"西曼西語",
	30311756,
	"mns-cen",
	aliases = {"Western Mansi"},
}

----------------------------------------------------------------------------------------------------------------------
--                                                Yeneseian varieties                                               --
----------------------------------------------------------------------------------------------------------------------

m["qfa-yke-pro"] = {
	"Proto-Ketic",
	nil,
	"qfa-yen-pro",
	family = "qfa-yke",
}

m["qfa-yko-pro"] = {
	"Proto-Kottic",
	nil,
	"qfa-yen-pro",
	family = "qfa-yko",
}

m["qfa-yrn-pro"] = {
	"Proto-Arinic",
	nil,
	"qfa-yen-pro",
	family = "qfa-yrn",
}

m["qfa-ypm-pro"] = {
	"Proto-Pumpokolic",
	nil,
	"qfa-yen-pro",
	family = "qfa-ypm",
}

----------------------------------------------------------------------------------------------------------------------
--                                              Miscellaneous varieties                                             --
----------------------------------------------------------------------------------------------------------------------

m["mul-tax"] = {
	"分類學名稱",
	522190,
	"mul",
	aliases = {"taxonomic name"},
}

-----------------------------------------------------
--                Elamite varieties                --
-----------------------------------------------------

m["elx-old"] = {
	"上古埃蘭語",
	nil,
	"elx",
	aliases = {"Old Elamite"},
}

m["elx-mid"] = {
	"中古埃蘭語",
	nil,
	"elx",
	aliases = {"Middle Elamite"},
}

m["elx-neo"] = {
	"新埃蘭語",
	nil,
	"elx",
	aliases = {"Neo-Elamite"},
}

m["elx-ach"] = {
	"阿契美尼德埃蘭語",
	nil,
	"elx",
	aliases = {"Achaemenid Elamite"},
}

-----------------------------------------------------
--                     Substrates                  --
-----------------------------------------------------

-- Pre-Roman substrates

m["qsb-ibe"] = {
	"羅馬佔領前的伊比利亞底層語言",
	246801,
	"und",
	family = "qfa-sub",
	aliases = {"Paleo-Hispanic", "Palaeo-Hispanic", "Paleohispanic", "Palaeohispanic", "Paleo-Iberian", "Palaeo-Iberian"},
}

m["qsb-bal"] = {
	"羅馬佔領前的巴爾幹底層語言",
	1815070,
	"und",
	family = "qfa-sub",
	aliases = {"Paleo-Balkan", "Palaeo-Balkan", "Paleobalkan", "Palaeobalkan"},
}

m["xaq"] = {
	"Aquitanian",
	500522,
	"euq-pro",
	family = "euq",
}

return require("Module:languages").finalizeData(m, "language", true)