ဝိက်ရှေန်နရဳ mnwwiktionary https://mnw.wiktionary.org/wiki/%E1%80%9D%E1%80%AD%E1%80%80%E1%80%BA%E1%80%9B%E1%80%BE%E1%80%B1%E1%80%94%E1%80%BA%E1%80%94%E1%80%9B%E1%80%B3:%E1%80%99%E1%80%AF%E1%80%80%E1%80%BA%E1%80%9C%E1%80%AD%E1%80%80%E1%80%BA%E1%80%90%E1%80%99%E1%80%BA MediaWiki 1.47.0-wmf.22 case-sensitive မဳဒဳယာ တၟေင် ဓရီုကျာ ညးလွပ် ညးလွပ် ဓရီုကျာ ဝိက်ရှေန်နရဳ ဝိက်ရှေန်နရဳ ဓရီုကျာ ဝှာင် ဝှာင် ဓရီုကျာ မဳဒဳယာဝဳကဳ မဳဒဳယာဝဳကဳ ဓရီုကျာ ထာမ်ပလိက် ထာမ်ပလိက် ဓရီုကျာ ရီု ရီု ဓရီုကျာ ကဏ္ဍ ကဏ္ဍ ဓရီုကျာ အဆက်လက္ကရဴ အဆက်လက္ကရဴ ဓရီုကျာ ကာရန် ကာရန် ဓရီုကျာ အဘိဓာန် အဘိဓာန် ဓရီုကျာ ဗီုပြၚ်သိုၚ်တၟိ ဗီုပြၚ်သိုၚ်တၟိ ဓရီုကျာ TimedText TimedText talk မဝ်ဂျူ မဝ်ဂျူ ဓရီုကျာ Event Event talk မဝ်ဂျူ:etymology languages/data 828 723 402256 401890 2026-10-01T05:39:49Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402256 Scribunto text/plain 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"] = { "Medieval Tashelhit", 34152, "shi", } -- Tuareg lects m["thv"] = { "Tamahaq", 56703, "tmh", } m["ttq"] = { "ထာဝါလပ်မေတ်", 56390, "tmh", } m["taq"] = { "Tamasheq", 4670066, "tmh", } m["thz"] = { "Tayert", 56388, "tmh", } m["thv-ght"] = { "Ghat", 47012900, "thv", } -------------------------------------------------------------------------------------- -- Cushitic varieties -- -------------------------------------------------------------------------------------- -- Oromo varieties m["hae"] = { "Harar Oromo", 5330355, "om", aliases = {"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", } m["egy-mid"] = { "အဳဂျေပ်လဒေါဝ်", 657330, "egy", aliases = {"Classical Egyptian"}, } m["egy-nmi"] = { "Neo-Middle Egyptian", 123735278, "egy", aliases = {"Égyptien de tradition", "Traditional Egyptian"}, } m["egy-lat"] = { "အဳဂျေပ်လဇုဲ", 1852329, "egy", } ----------------------------------------------------- -- Coptic varieties -- ----------------------------------------------------- m["cop-akh"] = { "Akhmimic Coptic", 125176464, "cop", aliases = {"Akhmimic"}, } m["cop-boh"] = { "Bohairic Coptic", 890733, "cop", aliases = {"Bohairic", "Memphitic Coptic", "Memphitic"}, } m["cop-ggg"] = { "Coptic Dialect G", nil, "cop", aliases = {"Dialect G", "Mansuric Coptic", "Mansuric"}, } m["cop-jjj"] = { "Coptic Dialect J", nil, "cop", } m["cop-kkk"] = { "Coptic Dialect K", nil, "cop", } m["cop-ppp"] = { "Coptic Dialect P", nil, "cop", aliases = {"Proto-Theban Coptic", "Palaeo-Theban Coptic"}, } m["cop-fay"] = { "Fayyumic Coptic", 1399115, "cop", aliases = {"Fayyumic", "Faiyumic Coptic", "Faiyumic", "Fayumic Coptic", "Fayumic", "Bashmuric Coptic", "Bashmuric"}, } m["cop-her"] = { "Hermopolitan Coptic", nil, "cop", aliases = {"Hermopolitan", "Coptic Dialect H", "Ashmuninic", "Ashmuninic Coptic"}, } m["cop-lyc"] = { "Lycopolitan Coptic", nil, "cop", aliases = { "Lycopolitan", "Assiutic Coptic", "Asyutic Coptic", "Assiutic", "Asyutic", "Lyco-Diospolitan Coptic", "Lyco-Diospolitan", "Subakhmimic Coptic", "Subakhmimic" }, } m["cop-old"] = { "Old Coptic", 115518040, "cop", } m["cop-oxy"] = { "Oxyrhynchite Coptic", nil, "cop", aliases = {"Oxyrhynchite", "Mesokemic Coptic", "Mesokemic", "Middle Egyptian Coptic"}, } m["cop-ply"] = { "Proto-Lycopolitan Coptic", nil, "cop", aliases = {"Coptic Dialect i", "Proto-Lyco-Diospolitan Coptic"}, } m["cop-sah"] = { "Sahidic Coptic", 2645851, "cop", aliases = {"Sahidic", "Saidic Coptic", "Saidic", "Thebaic Coptic", "Thebaic"}, } -------------------------------------------------------------------------------------- -- Semitic varieties -- -------------------------------------------------------------------------------------- ----------------------------------------------------- -- Akkadian varieties -- ----------------------------------------------------- m["akk-old"] = { "Old Akkadian", nil, "akk", } m["akk-obb"] = { "Old Babylonian", nil, "akk", } m["akk-oas"] = { "Old Assyrian", nil, "akk", } m["akk-mbb"] = { "Middle Babylonian", nil, "akk", } m["akk-mas"] = { "Middle Assyrian", nil, "akk", } m["akk-nbb"] = { "Neo-Babylonian", nil, "akk", } m["akk-nas"] = { "Neo-Assyrian", nil, "akk", } m["akk-lbb"] = { "Late Babylonian", nil, "akk", } m["akk-stb"] = { "Standard Babylonian", nil, "akk", } ----------------------------------------------------- -- Arabic varieties -- ----------------------------------------------------- m["jrb"] = { "Judeo-Arabic", 37733, "ar", pseudo_families = "qfa-jew", } m["apc-leb"] = { "Lebanese North Levantine Arabic", 1516642, "apc", aliases = {"Lebanese Arabic"}, } m["apc-sle"] = { "South Lebanese North Levantine Arabic", 14206590, "apc", aliases = {"South Lebanese Arabic"}, } m["apc-nle"] = { "North Lebanese North Levantine Arabic", 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"] = { "Biblical Aramaic", 843235, "arc", family = "sem-are", } m["arc-cpa"] = { "Christian Palestinian Aramaic", 60790119, "arc", family = "sem-arw", aliases = {"Melkite Aramaic", "Palestinian Syriac", "Syropalestinian Aramaic"}, } m["arc-imp"] = { "Imperial Aramaic", 7079491, "arc", aliases = {"Official Aramaic"}, } m["arc-hat"] = { "Hatran Aramaic", 3832926, "arc", family = "sem-are", } m["arc-jla"] = { "Jewish Literary Aramaic", 105952842, "arc", pseudo_families = "qfa-jew", } m["arc-nab"] = { "Nabataean Aramaic", 36178, "arc", } m["arc-old"] = { "Old Aramaic", 3398392, "arc", } m["arc-pal"] = { "Palmyrene Aramaic", 1510113, "arc", family = "sem-arw", } m["tmr"] = { "Jewish Babylonian Aramaic", 33407, "arc", family = "sem-ase", pseudo_families = "qfa-jew", } m["jpa"] = { "Jewish Palestinian Aramaic", 948909, "arc", family = "sem-arw", aliases = {"Galilean Aramaic"}, pseudo_families = "qfa-jew", } ----------------------------------------------------- -- Hebrew varieties -- ----------------------------------------------------- m["hbo"] = { "Biblical Hebrew", 1982248, "he", aliases = {"Classical Hebrew"}, } m["he-mis"] = { "Mishnaic Hebrew", 1649362, "he", ancestors = "hbo", } m["he-med"] = { "Medieval Hebrew", 2712572, "he", ancestors = "he-mis", } m["he-IL"] = { "Israeli Hebrew", 8141, "he", } ---------------------------------------------------------------------------------------------------------------------- -- Ainu varieties -- ---------------------------------------------------------------------------------------------------------------------- m["ain-hok"] = { "Hokkaido Ainu", 20968488, "ain", aliases = {"Hokkaidō Ainu"}, } m["ain-kur"] = { "Kuril Ainu", 20967012, "ain", } m["ain-sak"] = { "Sakhalin Ainu", 20747371, "ain", } ---------------------------------------------------------------------------------------------------------------------- -- American indigenous varieties -- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------- -- Inuit varieties -- ----------------------------------------------------- m["esi"] = { "North Alaskan Inupiatun", nil, "ik" } m["esk"] = { "Northwest Alaskan Inupiatun", 25559714, "ik" } ----------------------------------------------------- -- Iroquoian varieties -- ----------------------------------------------------- m["iro-ohu"] = { "Old Wendat", nil, "wdt", } m["iro-omo"] = { "Old Mohawk", nil, "moh", } m["iro-oon"] = { "Old Onondaga", nil, "ono", } ----------------------------------------------------- -- Tupi-Guarani varieties -- ----------------------------------------------------- -- Old Tupi varieties m["tpw-lga"] = { "Língua Geral Amazônica", 18275323, "tpw", aliases = {"Língua Geral"}, } m["tpw-lgp"] = { "Língua Geral Paulista", 2669239, "tpw", } ---------------------------------------------------------------------------------------------------------------------- -- Austroasiatic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Khmer varieties m["okz-ang"] = { "ခမေန်တြေံ အာန်ခေါဝ်ရဳယာန်", nil, "okz", wikipedia_article = "Khmer language#Historical periods", } m["okz-pre"] = { "ခမေန်တြေံ ကၠာ-အာန်ခေါဝ်ရဳယာန်", nil, "okz", wikipedia_article = "Khmer language#Historical periods", } -- 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' "Old Malay", nil, "ms", } m["ms-cla"] = { "Classical Malay", nil, "ms", ancestors = "ms-old", } m["pse-bsm"] = { "Besemah", nil, "pse", } m["bew-kot"] = { "Betawi Kota", nil, "bew", aliases = {"Urban Betawi"}, -- in Jakarta } -- Philippine varieties m["xnn"] = { "Northern Kankanaey", 12953609, "kne", aliases = {"Northern Kankanay", "Northern Kankana-ey"}, } m["tl-old"] = { "Old Tagalog", 12967437, "tl", } m["tl-cls"] = { "Classical Tagalog", nil, "tl", } ---------------------------------------------------------------------------------------------------------------------- -- Caucasian varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Kartvelian varieties m["ka-mid"] = { "Middle Georgian", nil, "ka", ancestors = "oge", } ---------------------------------------------------------------------------------------------------------------------- -- Dravidian varieties -- ---------------------------------------------------------------------------------------------------------------------- m["ta-mid"] = { "Middle Tamil", 20987434, "ta", } m["kn-hav"] = { "Havigannada", 24276369, "kn", } m["kn-kun"] = { "Kundagannada", 6444255, "kn", } ---------------------------------------------------------------------------------------------------------------------- -- Indo-European varieties -- ---------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -- Albanian varieties -- -------------------------------------------------------------------------------------- m["aln"] = { "Gheg Albanian", 181037, "sq", aliases = {"Gheg"}, } m["aae"] = { "Arbëresh Albanian", 1075302, "als", aliases = {"Arbëreshë", "Arbëresh"}, } m["aat"] = { "Arvanitika Albanian", 29347, "als", aliases = {"Arvanitika"}, } m["als"] = { "Tosk Albanian", 180937, "sq", aliases = {"Tosk"}, } -------------------------------------------------------------------------------------- -- Armenian varieties -- -------------------------------------------------------------------------------------- m["hyw"] = { "Western Armenian", 180945, "hy", } m["hye"] = { "Eastern Armenian", 181059, "hy", } -------------------------------------------------------------------------------------- -- Balto-Slavic varieties -- -------------------------------------------------------------------------------------- ------------------------------------------------------------------------- -- Baltic varieties -- ------------------------------------------------------------------------- m["bat-pro"] = { "ဗေါဝ်တေတ်-အခိုက်ကၞာ", 1703347, "ine-bsl-pro", } m["bat-dni"] = { "Dnieper Baltic", 4163178, "bat-pro", family = "bat", aliases = {"Dniepr Baltic", "Dnieper-Oka Baltic", "Dniepr-Oka Baltic"}, } m["bat-gol"] = { "Golyad", 4142855, "bat-dni", aliases = {"Eastern Galindian", "East Galindian"}, } ------------------------------------------------------------------------- -- Slavic varieties -- ------------------------------------------------------------------------- ----------------------------------------------------- -- Bulgarian varieties -- ----------------------------------------------------- m["cu-bgm"] = { "ဗူလ်ဂရဳယာန် လဒေါဝ်", 12294897, "cu", ancestors = "cu" } ----------------------------------------------------- -- Church Slavonic varieties -- ----------------------------------------------------- -- Old Moscow Church Slavonic deleted as it seems not distinct enough from Russian (Synodal) Church Slavonic. m["zls-chs-ru"] = { "Russian Church Slavonic", 21662400, "zls-chs", aliases = {"Synodal Church Slavonic", "New Moscow Church Slavonic", "Novomoskovsk Church Slavonic"}, } m["zls-chs-uk"] = { "Ukrainian Church Slavonic", 12153548, "zls-chs", aliases = {"Rusyn Church Slavonic", "Belarusian Church Slavonic"}, } --[=[ -- Not sure about these yet. m["zls-chs-bg"] = { "Bulgarian Church Slavonic", nil, "zls-chs", } m["zls-chs-cs"] = { "Czech Church Slavonic", nil, "zls-chs", } m["zls-chs-hr"] = { "Croatian Church Slavonic", nil, "zls-chs", } m["zls-chs-mk"] = { "Macedonian Church Slavonic", nil, "zls-chs", } m["zls-chs-ro"] = { "Romanian Church Slavonic", nil, "zls-chs", } m["zls-chs-sr"] = { "Serbian Church Slavonic", nil, "zls-chs", } ]=] ----------------------------------------------------- -- Czech varieties -- ----------------------------------------------------- m["cs-ear"] = { "Early Modern Czech", nil, "cs", ancestors = "zlw-ocs" } ----------------------------------------------------- -- East Slavic varieties -- ----------------------------------------------------- m["zle-ops"] = { "Old Pskovian", 4167885, "zle-ono", } m["zle-mru"] = { "ရုသျှာ လဒေါဝ်", 35228, "ru", "Cyrs", ancestors = "orv", translit = "ru-translit", strip_diacritics = { Cyrs = { remove_diacritics = c.grave .. c.acute .. c.diaer, }, }, } m["zle-mbe"] = { "Middle Belarusian", 13211, "zle-ort", ancestors = "zle-ort", } m["zle-muk"] = { "ယူကရိန် လဒေါဝ်", 13211, "zle-ort", ancestors = "zle-ort", } m["uk-CA"] = { "Canadian Ukrainian", 4161010, "uk", } m["crp-cpr-kya"] = { "Kyakhta Chinese Pidgin Russian", 1062960, "crp-cpr", } ----------------------------------------------------- -- Polish varieties -- ----------------------------------------------------- m["zlw-mpl"] = { "ပဝ်လာန် လဒေါဝ်", 402878, "pl", ancestors = "zlw-opl", strip_diacritics = { remove_diacritics = c.acute, remove_exceptions = {"Ć", "ć", "Ń", "ń", "Ó", "ó", "Ś", "ś", "Ź", "ź"}, }, } m["pl-gre"] = { "Greater Polish", 4106789, "pl", } m["pl-les"] = { "Lesser Polish", 361709, "pl", } m["pl-mas"] = { "Masovian Polish", 4274559, "pl", } m["pl-gor"] = { "Goral", 452889, "pl", } ----------------------------------------------------- -- Serbo-Croatian varieties -- ----------------------------------------------------- m["ckm"] = { "Chakavian Serbo-Croatian", 337565, "sh", aliases = {"Čakavian"}, } m["kjv"] = { "Kajkavian Serbo-Croatian", 838165, "sh", } m["sh-tor"] = { -- Linguist code srp-tor "Torlakian Serbo-Croatian", 1078803, "sh", aliases = {"Torlak"}, } -------------------------------------------------------------------------------------- -- Celtic varieties -- -------------------------------------------------------------------------------------- ----------------------------------------------------- -- Brythonic varieties -- ----------------------------------------------------- m["bry-ear"] = { "Early Brythonic", nil, "cel-bry-pro", } m["bry-lat"] = { "Late Brythonic", nil, "cel-bry-pro", } ----------------------------------------------------- -- Gaulish varieties -- ----------------------------------------------------- m["xcg"] = { "Cisalpine Gaulish", 3832927, "cel-gau", } m["xtg"] = { "Transalpine Gaulish", 29977, "cel-gau", } ----------------------------------------------------- -- Welsh varieties -- ----------------------------------------------------- m["cy-nor"] = { "North Wales Welsh", 13127692, "cy", aliases = {"North Walian Welsh", "Northern Welsh"}, } m["cy-sou"] = { "South Wales Welsh", 13127689, "cy", aliases = {"South Walian Welsh", "Southern Welsh"}, } -------------------------------------------------------------------------------------- -- Germanic varieties -- -------------------------------------------------------------------------------------- -- Proto-West Germanic varieties m["frk"] = { "Frankish", 10860505, "gmw-pro", family = "gmw-frk", aliases = {"Old Frankish"}, } m["gem-sue"] = { "Suevic", 134600275, "gmw-pro", aliases = {"Suebian"}, } m["gmw-afr-pro"] = { "Proto-Anglo-Frisian", 134603379, "gmw-nsg-pro", family = "gmw-afr", } m["gmw-nsg-pro"] = { "Proto-North Sea Germanic", 134603374, "gmw-pro", family = "gmw-nsg", aliases = {"Proto-Ingvaeonic"}, } ----------------------------------------------------- -- Dutch varieties -- ----------------------------------------------------- m["nl-BE"] = { "Belgian Dutch", 34147, "nl", aliases = {"Flemish", "Flemish Dutch", "Southern Dutch"}, } ----------------------------------------------------- -- English and Scots varieties -- ----------------------------------------------------- -- English varieties m["en-AU"] = { "Australian English", 44679, "en", } m["en-GB"] = { "British English", 7979, "en", } m["en-GB-SCT"] = { "Scottish English", 1553250, "en-GB", } m["en-GB-WLS"] = { "Welsh English", 2363292, "en-GB", } m["en-IM"] = { "Manx English", 6753295, "en-GB", } m["en-aae"] = { "Australian Aboriginal English", 783347, "en-AU", } m["en-ear"] = { "Early Modern English", 1472196, "en", ancestors = "enm", aliases = {"Early New English"}, } m["en-geo"] = { "Geordie", 653421, "en", ancestors = "enm-nor", } m["en-IE"] = { -- FIXME: "IE" doesn't cover Northern Ireland "Irish English", 665624, "en", } m["en-uls"] = { "Ulster English", 6840826, "en-IE", } m["en-GB-NIR"] = { "Northern Irish English", 6840826, -- actually the code for Ulster English "en-uls", } m["en-NNN"] = { -- NA = Namibia; NNN is NATO 3-letter code for North America "North American English", 7053766, "en", ietf_subtag = "en-021" -- 021 = UN M49 code for "Northern America" (i.e. North America wihout Central America or the Caribbean) } m["en-US"] = { "American English", 7976, "en-NNN", } m["en-NZ"] = { "New Zealand English", 44661, "en" } m["en-ZA"] = { "South African English", 1156228, "en" } m["en-US-CA"] = { "California English", 1026812, "en-US", } m["en-CA"] = { "Canadian English", 44676, "en-US", } m["en-HK"] = { "Hong Kong English", 1068863, "en", } m["en-IN"] = { "Indian English", 1348800, "en", } m["pld"] = { "Polari", 1359130, "en", } -- Scots varieties m["sco-ins"] = { "Insular Scots", 16919205, "sco", } m["sco-uls"] = { "Ulster Scots", 201966, "sco", } m["sco-nor"] = { "Northern Scots", 16928150, "sco", } m["sco-sou"] = { "Southern Scots", 7570457, "sco", aliases = {"South Scots", "Borders Scots"}, } -- Middle English varieties m["enm-esc"] = { -- Part of Middle English until it developed into Middle Scots. "Early Scots", 5326738, "enm", ancestors = "enm-nor", aliases = {"Old Scots", "Scottish Middle English"}, } m["enm-emi"] = { "East Midland Middle English", 134238810, "enm", ancestors = "ang-ang", -- Technically ang-mer, but attested Mercian is mostly WM IIRC } m["enm-ken"] = { "Kentish Middle English", 134238532, "enm", ancestors = "ang-ken", } m["enm-nor"] = { "Northern Middle English", 134238541, "enm", ancestors = "ang-nor", } m["enm-sou"] = { "Southern Middle English", 134238528, "enm", ancestors = "ang-wsx", } m["enm-wmi"] = { "West Midland Middle English", 134238824, "enm", ancestors = "ang-mer", } -- Old English varieties -- Includes both Mercian and Northumbrian. m["ang-ang"] = { "Anglian Old English", 121142917, "ang", } m["ang-ken"] = { "Kentish Old English", 11687485, "ang", } m["ang-mer"] = { "Mercian Old English", 602072, "ang-ang", } m["ang-nor"] = { "Northumbrian Old English", 1798915, "ang-ang", } m["ang-wsx"] = { "West Saxon Old English", 2658603, "ang", } ----------------------------------------------------- -- High German varieties -- ----------------------------------------------------- -- (modern) German varieties m["de-AT"] = { "Austrian German", 306626, "de", } m["de-AT-vie"] = { "Viennese German", 56474, "de-AT", } m["de-CH"] = { "Switzerland German", 1366643, "de", aliases = {"Schweizer Hochdeutsch", "Swiss Standard German", "Swiss High German"}, } m["de-bal"] = { "Baltic German", 15785413, "de", } m["de-ear"] = { "Early New High German", 1472199, "de", ancestors = "gmh", aliases = {"Early Modern High German"}, } m["ksh"] = { "Kölsch", 4624, "gmw-cfr", } m["pfl"] = { "Palatine German", 23014, "gmw-rfr", aliases = {"Pfälzisch", "Pälzisch", "Palatinate German"}, } m["sli"] = { "Silesian East Central German", 152965, "gmw-ecg", aliases = {"Silesian"}, } m["sxu"] = { "Upper Saxon German", 699284, "gmw-ecg", } -- Old High German varieties m["lng"] = { "Lombardic", 35972, "goh", } -- Alemannic German varieties m["gsw-low"] = { "Low Alemannic German", 503724, "gsw", } m["gsw-FR-als"] = { "Alsatian Alemannic German", 8786, "gsw-low", } m["gsw-hig"] = { "High Alemannic German", 503728, "gsw", } m["gsw-hst"] = { "Highest Alemannic German", 687538, "gsw", } m["wae"] = { "Walser German", 680517, "gsw-hst", } ----------------------------------------------------- -- Low German varieties -- ----------------------------------------------------- m["nds-de"] = { "German Low German", 25433, "nds", ietf_subtag = "nds-DE", -- should we make this the actual code? wikimedia_codes = "nds", } m["nds-nl"] = { "Dutch Low Saxon", 516137, "nds", ietf_subtag = "nds-NL", -- should we make this the actual code? wikimedia_codes = "nds-nl", } m["act"] = { "Achterhoeks", 153627, "nds-nl", aliases = {"Achterhoek", "Achterhooks"}, } m["drt"] = { "Drents", 2736709, "nds-nl", aliases = {"Drèents", "Dreins", "Dreints", "Drints"}, } m["frs"] = { "East Frisian Low German", 149208, "nds-de", aliases = {"East Frisian", "East Frisian Low Saxon"}, } m["gos"] = { "Gronings", 508854, "nds-nl", aliases = {"Grunnegs", "Grönnegs"}, } m["nds-lpr"] = { "Low Prussian", 33982, "nds-de", } m["sdz"] = { "Sallands", 3436668, "nds-nl", aliases = {"Sallaans", "Sallaands"}, } m["stl"] = { "Stellingwerfs", 506010, "nds-nl", aliases = {"Stellingwarfs"}, } m["twd"] = { "Twents", 497363, "nds-nl", aliases = {"Tweants"}, } m["vel"] = { "Veluws", 2484810, "nds-nl", } m["wep"] = { "Westphalian", 505655, "nds-de", aliases = {"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"] = { "Greenlandic Norse", 855236, "non-own", } m["non-oen"] = { "Old East Norse", 10498031, "non", ancestors = "non", } m["non-own"] = { "Old West Norse", 2377483, "non", ancestors = "non", } ----------------------------------------------------- -- Old Swedish varieties -- ----------------------------------------------------- m["gmq-osw-lat"] = { "Late Old Swedish", 10723594, "gmq-osw", ancestors = "gmq-osw", } -------------------------------------------------------------------------------------- -- Greek varieties -- -------------------------------------------------------------------------------------- m["qsb-grc"] = { "Pre-Greek", 965052, "und", family = "qfa-sub", } m["grc-aeo"] = { "Aeolic Greek", 406373, "grc", aliases = {"Lesbic Greek", "Lesbian Greek", "Aeolian Greek"}, } m["grc-arc"] = { "Arcadian Greek", nil, "grc-arp", } m["grc-arp"] = { "Arcadocypriot Greek", 499602, "grc", } m["grc-att"] = { "Attic Greek", 506588, "grc", } m["grc-boi"] = { "Boeotian Greek", 406373, "grc-aeo", } m["grc-cyp"] = { "Cypriot Ancient Greek", -- to distinguish from Cypriot Greek below nil, "grc-arp", } m["grc-dor"] = { "Doric Greek", 285494, "grc", } m["grc-ela"] = { "Elean Greek", nil, "grc", } m["grc-epi"] = { "Epic Greek", 990062, "grc", aliases = {"Homeric Greek"}, } m["grc-ion"] = { "Ionic Greek", 504165, "grc", } m["grc-koi"] = { "ဂရေတ် ခါဝ်အိန်", 107358, "grc", ancestors = "grc-att", aliases = {"Hellenistic Greek"}, } m["grc-kre"] = { "Cretan Ancient Greek", -- to distinguish from Cretan Greek below nil, "grc-dor", } m["grc-opl"] = { "Opuntian Locrian", nil, "grc", } m["grc-ozl"] = { "Ozolian Locrian", nil, "grc", } m["grc-pam"] = { "Pamphylian Greek", 2271793, "grc", } m["grc-ths"] = { "Thessalian Greek", 406373, "grc-aeo", } m["gkm"] = { "ဂရေတ် ဗေတ်သေန်ထေၚ်", 36387, "grc", ancestors = "grc-koi", aliases = {"Medieval Greek"}, } m["el-cyp"] = { "Cypriot Greek", 245899, "el", aliases = {"Cypriotic Greek"}, } m["el-pap"] = { "Paphian Greek", nil, "el", } m["el-crt"] = { "Cretan Greek", 588306, "el", } 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"] = { "Proto-New Indo-Aryan", nil, "pra", } m["inc-ash-pro"] = { "Proto-Middle Indo-Aryan", nil, "inc-ash", } m["inc-mit"] = { "Mitanni", 1986700, "inc-pro", } m["bra-old"] = { "Old Braj", nil, "bra", } -- Apabhramsas m["inc-aav"] = { "အဝဟတာ", nil, "inc-apa", aliases = {"Abahattha"}, } m["inc-asa"] = { "သဥူရေသဳနဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-agu"] = { "ဂူဂျာရာ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-aka"] = { "ခေပ်သမဳရဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-ama"] = { "မဟာရာတ်သပ်ထရဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-ata"] = { "တာကာ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-avr"] = { "ဝရာခါဒါ အာပ်ပါပရာမ်သာ", 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"] = { "Kathiyawadi", nil, "gu", aliases = {"Kathiyawadi Gujarati", "Kathiawadi"}, } m["gu-lda"] = { "Lisan ud-Dawat Gujarati", nil, "gu", aliases = {"Lisan ud-Dawat", "LDA"}, } -- Hindi varieties m["hi-mum"] = { "Bombay Hindi", 3543151, "hi", aliases = {"Mumbai Hindi", "Bambaiyya Hindi"}, } m["hi-mid"] = { "Middle Hindi", nil, "inc-ohi", ancestors = "inc-ohi", } -- Konkani varieties m["kok-mid"] = { "Middle Konkani", nil, "kok", aliases = {"Medieval Konkani"}, } m["kok-old"] = { "Old Konkani", nil, "kok", aliases = {"Early Konkani"}, } -- Prakrits m["pra-ard"] = { "အာတ်ဓၟဂါတ်ဒဳ ပရာကရေတ်", 35217, "pra", aliases = {"Ardhamagadhi"}, } m["pra-hel"] = { "ဟေဠူ ပရာကရေတ်", 15080869, "pra", aliases = {"Elu", "Elu Prakrit", "Helu"}, } m["pra-kha"] = { "ခါဿာ ပရာကရေတ်", nil, "pra", aliases = {"Khasa"}, } m["pra-mag"] = { "မဂ္ဂဒိ ပရာကရေတ်", -- Not to be confused with Magahi (mag) 2652214, "pra", aliases = {"Magadhi"}, } m["pra-mah"] = { "မဟာရာတ်ထရဳ ပရာကရေတ်", 2586773, "pra", aliases = {"Maharashtri Prakrit", "Maharastri", "Maharashtri"}, } m["pra-pai"] = { "ပါအေတ်သာသဳ ပရာကရေတ်", 2995607, "pra-sau", aliases = {"Paisaci", "Paisachi"}, ancestors = "pra-sau" } m["pra-sau"] = { "သောရာသေနဳ ပရာကရေတ်", 2452885, "pra", aliases = {"Sauraseni", "Shauraseni"}, } m["pra-ava"] = { "အဗါန်တဳ", nil, "pra", aliases = {"Avanti Prakrit"}, } m["pra-pra"] = { "ပရာသဳယျာ", nil, "pra", aliases = {"Pracya Prakrit"}, } m["pra-bah"] = { "ပါလိကဳ", nil, "pra", aliases = {"Bahliki Prakrit"}, } m["pra-dak"] = { "ထေတ်သဳနတာယျ", nil, "pra", aliases = {"Daksinatya Prakrit"}, } m["pra-sak"] = { "သာကာရဳ", nil, "pra", aliases = {"Sakari Prakrit"}, } m["pra-can"] = { "ခေန်ဒါလဳ", nil, "pra", aliases = {"Candali Prakrit"}, } m["pra-sab"] = { "သာဗါရဳ", nil, "pra", aliases = {"Sabari Prakrit"}, } m["pra-abh"] = { "အဖိရဳ", nil, "pra", aliases = {"Abhiri Prakrit"}, } m["pra-dra"] = { "ဒရာမဳလဳ", nil, "pra", aliases = {"Dramili Prakrit"}, } m["pra-odr"] = { "အဝ်ဒရဳ", nil, "pra", aliases = {"Odri Prakrit"}, } -- Punjabi varieties m["pnb"] = { "Western Punjabi", 58635, "pa", "pa-Arab", } -- Sanskrit varieties m["vsn"] = { "Vedic Sanskrit", 36858, "sa", } m["cls"] = { "Classical Sanskrit", 9333703, "sa", } m["sa-bhs"] = { "Buddhist Hybrid Sanskrit", 248758, "sa", } m["sa-bra"] = { "Brahmanic Sanskrit", 139822891, "vsn", } m["sa-epi"] = { "Epic Sanskrit", 56702805, "cls", } m["sa-neo"] = { "New Sanskrit", nil, "sa", } m["sa-rig"] = { "Rigvedic Sanskrit", 139822680, "vsn", } -- Sinhalese varieties m["si-med"] = { "Medieval Sinhalese", nil, "si", aliases = {"Medieval Sinhala"}, } ------------------------------------------------------------------------- -- Iranian varieties -- ------------------------------------------------------------------------- m["qsb-bma"] = { "the BMAC substrate", 133187435, "und", family = "qfa-sub", aliases = {"the Bactria-Margiana substrate", "the Bactria-Margiana Archaeological Complex substrate"}, } -- Historical and current Iranian dialects m["ae-old"] = { "Old Avestan", 29572, "ae", aliases = {"Gathic Avestan"}, } m["ae-yng"] = { "Younger Avestan", 29572, "ae-old", aliases = {"Young Avestan"}, } m["bcc"] = { "Southern Balochi", 33049, "bal", aliases = {"Southern Baluchi"}, } m["bgp"] = { "Eastern Balochi", 33049, "bal", aliases = {"Eastern Baluchi"}, } m["bgn"] = { "Western Balochi", 33049, "bal", aliases = {"Western Baluchi"}, } m["bsg-ban"] = { "Bandari", nil, "bsg", } m["bsg-hor"] = { "Hormozi", nil, "bsg", } m["bsg-min"] = { "Minabi", nil, "bsg", } m["kho-old"] = { "Old Khotanese", nil, "kho", } m["kho-lat"] = { "Late Khotanese", nil, "kho-old", } m["peo-ear"] = { "Early Old Persian", nil, "peo", } m["peo-lat"] = { "Late Old Persian", nil, "peo", } m["pal-ear"] = { "Early Middle Persian", nil, "pal", } m["pal-lat"] = { "Late Middle Persian", nil, "pal", ancestors = "pal-ear", } m["ps-nwe"] = { "Northwestern Pashto", nil, "ps", } m["ps-cgi"] = { "Central Ghilzay", nil, "ps-nwe", } m["ps-mah"] = { "Mahsudi", nil, "ps-nwe", } m["ps-nea"] = { "Northeastern Pashto", nil, "ps", } m["ps-afr"] = { "Afridi", nil, "ps-nea", } m["ps-bng"] = { "Bangash", nil, "ps-nea", } m["ps-xat"] = { "Khatak", nil, "ps-nea", } m["ps-pes"] = { "Peshawari", nil, "ps-nea", } m["ps-sea"] = { "Southeastern Pashto", nil, "ps", } 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"] = { "Southwestern Pashto", nil, "ps", } m["ps-kan"] = { "Kandahari", nil, "ps-swe", } m["ps-jad"] = { "Jadrani", nil, "ps", ancestors = "ira-pat-pro" } m["xme-azr"] = { "Old Azari", nil, "xme-ott", aliases = {"Old Azeri", "Azari", "Azeri", "Āḏarī", "Adari", "Adhari"}, } m["xme-ttc-cen"] = { "Central Tati", nil, "xme-ott", } m["xme-ttc-eas"] = { "Eastern Tati", nil, "xme-ott", } m["xme-ttc-nor"] = { "Northern Tati", nil, "xme-ott", } m["xme-ttc-sou"] = { "Southern Tati", nil, "xme-ott", } m["xme-ttc-wes"] = { "Western Tati", nil, "xme-ott", } m["xmn"] = { "Manichaean Middle Persian", nil, "pal-lat", } m["fa-ear"] = { "Early New Persian", 127413796, "fa", ancestors = "pal-lat", translit = "fa-cls-translit", } m["fa-cls"] = { "Classical Persian", 9168, "fa", ancestors = "fa-ear", translit = "fa-cls-translit", } m["fa-ira"] = { "Iranian Persian", 3513637, "fa", aliases = {"Modern Persian", "Western Persian"}, translit = "fa-ira-translit", } m["prs"] = { "Dari", 178440, "fa", aliases = {"Dari Persian", "Central Persian", "Eastern Persian", "Afghan Persian"}, translit = "fa-cls-translit", } m["haz"] = { "Hazaragi", 33398, "prs", translit = "fa-cls-translit", } m["os-dig"] = { "Digor Ossetian", 3027861, "os", aliases = {"Digoron", "Digor"}, } m["os-iro"] = { "Iron Ossetian", nil, "os", aliases = {"Iron"}, } m["sog-ear"] = { "Early Sogdian", nil, "sog", } m["sog-lat"] = { "Late Sogdian", nil, "sog-ear", } m["ro-MD"] = { "Moldovan", 36392, "ro", aliases = {"Moldavian"}, } m["oru-kan"] = { "Kaniguram", 6363164, "oru", } m["oru-log"] = { "Logar", nil, "oru", } m["oos"] = { "Old Ossetic", 65455882, "xln", } m["oos-ear"] = { "Early Old Ossetic", nil, "oos", } m["oos-lat"] = { "Late Old Ossetic", nil, "oos", } m["rdb-jir"] = { "Jirofti", nil, "rdb", } m["rdb-kah"] = { "Kahnuji", nil, "rdb", } -- 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 Esmaili", nil, "fay", } m["fay-gav"] = { "Gavkoshaki", nil, "fay", } m["fay-kho"] = { "Khollari", nil, "fay", } m["fay-kon"] = { "Kondazi", nil, "fay", } m["fay-kzo"] = { "Old Kazeruni", nil, "fay", } m["fay-mas"] = { "Masarami", nil, "fay", } m["fay-pap"] = { "Papuni", nil, "fay", } m["fay-sam"] = { "Samghani", nil, "fay", } m["fay-shr"] = { "Shirazi", nil, "fay", } m["fay-sho"] = { "Old Shirazi", nil, "fay", } m["fay-kar"] = { "Khargi", nil, "fay", } m["fay-sor"] = { "Sorkhi", nil, "fay", } -- Talysh lects m["tly-cen"] = { "Central Talysh", nil, "tly", } 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"] = { "Northern Talysh", nil, "tly", } m["tly-aze"] = { "Azerbaijani Talysh", nil, "tly-nor", } m["tly-anb"] = { "Anbarani", nil, "tly-nor", } m["tly-sou"] = { "Southern Talysh", nil, "tly", } m["tly-fum"] = { "Fumani", nil, "tly-sou", } m["tly-msu"] = { "Masulei", nil, "tly-sou", } 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"] = { "Ashtiani", 3436590, "xme-taf", } 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"] = { "Jowshaqani", nil, "xme-ker", } 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"] = { "Zoroastrian Dari", 32389, "xme-ker", aliases = {"Behdināni", "Gabri", "Gavrŭni", "Gabrōni"}, } m["xme-krm"] = { "Kermani", nil, "xme-ker", } m["xme-yaz"] = { "Yazdi", nil, "xme-ker", } 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"] = { "Takestani", nil, "tks", } m["tks-cal"] = { "Chali Tati", nil, "tks", aliases = {"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"] = { "Roshani", 2597566, "sgh-rsx", aliases = {"Rushani", "Rōšāni"}, } m["sgh-xgb"] = { "Khughni-Bajui", nil, "sgh", } 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"] = { "Kamviri", 1193495, "bsh", aliases = {"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" }, } m["itc-lan"] = { "Lanuvian", 16890829, "itc-ola", aliases = {"Lanuvine"}, } m["itc-pra"] = { "Praenestine", 16889772, "itc-ola", aliases = {"Praenestinian"}, } m["la-cla"] = { "လပ်တေန်ဝၚ်ဂန္ထ", 253854, "la", } m["la-vul"] = { "လပ်တေန်အရိုၚ်", 37560, "la-cla", } m["la-afr"] = { "African Romance", 162064, "roa-pro", } m["la-lat"] = { "လပ်တေန်လဇုဲ", 1503113, "la", ancestors = "la-cla", } m["la-med"] = { "လပ်တေန် ခေတ်လဒေါဝ်", 1163234, "la", ancestors = "la-lat", } m["la-eme"] = { "လပ်တေန်ခေတ်လဒေါဝ်ဗွဲမပြဟ်", nil, "la-med", } m["la-ecc"] = { "သာသနာခရေတ်လပ်တေန်", 1247932, "la", aliases = {"Church Latin", "Liturgical Latin"}, ancestors = "la-lat", } m["la-ren"] = { "လပ်တေန်ခေတ်ကလေၚ်ပလေဝ်ပ္တိုန်တၟိ", 499083, "la", ancestors = "la-med", } m["la-new"] = { "လပ်တေန်တၟိ", 1248221, "la", aliases = {"Modern Latin"}, ancestors = "la-ren", } m["la-con"] = { "လပ်တေန်ခေတ်ပြိုၚ်ပ္ကာန်", 1246397, "la-new", } ------------------------------------------------------------------------- -- Miscellaneous Italic varieties -- ------------------------------------------------------------------------- m["xfa-cap"] = { "Capenate", 133182969, "xfa", } m["osc-luc"] = { "Lucanian", 3265025, "osc", } m["osc-sam"] = { "Samnite", 133184287, "osc", } ------------------------------------------------------------------------- -- Romance varieties -- ------------------------------------------------------------------------- m["roa-pro"] = { "Proto-Romance", 3408029, "la-lat", ancestors = "la-vul", } ----------------------------------------------------- -- Catalan varieties -- ----------------------------------------------------- m["ca-val"] = { "Valencian", 32641, "ca", } ----------------------------------------------------- -- Franco-Provençal varieties -- ----------------------------------------------------- m["frp-old"] = { "Old Franco-Provençal", nil, "frp", } ----------------------------------------------------- -- French and derived creole varieties -- ----------------------------------------------------- m["fro-nor"] = { "Old Northern French", 2044917, "fro", aliases = {"Old Norman", "Old Norman French"}, } m["fro-pic"] = { "Picard Old French", nil, "fro", } m["xno"] = { "အာန်ဂဝ်-နဝ်မာန်", 35214, "fro-nor", } m["xno-law"] = { "Law French", 2044323, "xno", } m["zrp"] = { "Zarphatic", 36994, "fro", aliases = {"Judeo-French"}, pseudo_families = "qfa-jew", } m["fr-CA"] = { "Canadian French", 1450506, "fr", } m["fr-CH"] = { "Swiss French", 1480152, "fr", } m["fr-aca"] = { "Acadian French", 415109, "fr", } m["fr-lou"] = { "Louisiana French", 3083213, "fr", } m["fr-mis"] = { "Missouri French", 3083210, "fr", } m["frc"] = { "Cajun French", 880301, "fr-lou", } m["ht-sdm"] = { "Saint Dominican Creole French", nil, "ht", ancestors = "fr", } -- Norman varieties m["nrf-grn"] = { "Guernsey Norman", 56428, "nrf", aliases = {"Guernsey"}, } m["nrf-jer"] = { "Jersey Norman", 56430, "nrf", aliases = {"Jersey"}, } ----------------------------------------------------- -- Gallo-Italic varieties -- ----------------------------------------------------- m["egl-old"] = { "Old Emilian", nil, "egl", } m["lij-old"] = { "လဳဂူရဳယာန်တြေံ", nil, "lij", aliases = {"Old Genoese"}, } m["lmo-old"] = { "လောန်ဗါတ်တြေံ", 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"] = { "Old Italian", nil, "it", } m["it-CH"] = { "Switzerland Italian", 672147, "it", } -- Other Italo-Romance varieties m["nap-old"] = { "Old Neapolitan", nil, "nap", } m["scn-old"] = { "Old Sicilian", nil, "scn", } ----------------------------------------------------- -- Occitan varieties -- ----------------------------------------------------- m["oc-auv"] = { "Auvergnat", 35359, "oc", aliases = {"Auvernhat", "Auvergnese"}, } m["oc-gas"] = { "ဂေါသ်သကာန်", 35735, "oc", } -- standardized dialect of Gascon m["oc-ara"] = { "Aranese", 10196, "oc-gas", } m["oc-lan"] = { "လာမ်ဂဝေအ်ဒံက်ဃှေန်", 942602, "oc", aliases = {"Lengadocian"}, } m["oc-lim"] = { "လိမူသေန်", 427614, "oc", } m["oc-pro"] = { "ဖရဝ်ဗေန်သော", 241243, "oc", aliases = {"Provencal"}, } m["oc-pro-old"] = { "ဖရဝ်ဗေန်သောတြေံ", 2779185, "pro", } m["oc-viv"] = { "ဝဳဝါရုဝ်-အောဖှာၚ်", 1649613, "oc", } m["oc-jud"] = { "Shuadit", 56472, "oc", aliases = { "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"] = { "Brazilian Portuguese", 750553, "pt", } m["pt-PT"] = { "European Portuguese", 922399, "pt", } -- 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"] = { "Logudorese", 777974, "sc", aliases = {"Logudorese Sardinian"}, } m["sc-nuo"] = { "Nuorese", nil, "sc-src", aliases = {"Nuorese Sardinian"}, } m["sc-sro"] = { "Campidanese", 35348, "sc", aliases = {"Campidanese Sardinian"}, } ----------------------------------------------------- -- Spanish varieties -- ----------------------------------------------------- m["es-ear"] = { "Early Modern Spanish", 5364419, "es", } m["es-AR"] = { "Rioplatense Spanish", 509780, "es", } m["es-BO"] = { "Bolivian Spanish", 510730, "es", } m["es-CL"] = { "Chilean Spanish", 857295, "es", } m["es-CO"] = { "Colombian Spanish", 1115875, "es", } m["es-CU"] = { "Cuban Spanish", 824909, "es", } m["es-MX"] = { "Mexican Spanish", 616620, "es", } m["es-PE"] = { "Peruvian Spanish", 736236, "es", } m["es-PH"] = { "Philippine Spanish", 22091406, "es", } m["es-US"] = { "United States Spanish", 2301077, "es", aliases = {"US Spanish"}, } --use label "US Spanish" to put Spanish terms in this category m["es-PR"] = { "Puerto Rican Spanish", 7258609, "es", } m["es-VE"] = { "Venezuelan Spanish", 840017, "es", } m["es-lun"] = { "Lunfardo", 1401612, "es", } ---------------------------------------------------------------------------------------------------------------------- -- Japonic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Japanese varieties m["ja-mid"] = { "ဂျပါန် လဒေါဝ်", 6841474, "ojp", ancestors = "ojp", } m["ja-mid-ear"] = { "Early Middle Japanese", 182695, "ja-mid", } m["ja-mid-lat"] = { "ဂျပါန်တြေံခေတ်လဇုဲ", 1816184, "ja-mid", ancestors = "ja-mid-ear", } m["ja-ear"] = { "Early Modern Japanese", 5326692, "ja", ancestors = "ja-mid-lat", } m["ojp-eas"] = { "Eastern Old Japanese", 65247957, "ojp", } m["ja-cla"] = { "Classical Japanese", 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", } ---------------------------------------------------------------------------------------------------------------------- -- Koreanic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Korean varieties m["oko-lat"] = { "ကိုဝ်ရဳယျာတြေံခေတ်လဇုဲ", nil, "oko", } m["okm-ear"] = { "Early Middle Korean", nil, "okm", } m["ko-cen"] = { "Central Korean", nil, "ko", } m["ko-gyg"] = { "Gyeonggi Korean", 485492, "ko-cen", aliases = {"Seoul Korean"}, } m["ko-chu"] = { "Chungcheong Korean", 625800, "ko-cen", aliases = {"Hoseo Korean"}, } m["ko-hwa"] = { "Hwanghae Korean", 16183706, "ko-cen", } m["ko-gan"] = { "Gangwon Korean", 11260444, "ko-cen", aliases = {"Yeongdong Korean"}, } m["ko-gys"] = { "Gyeongsang Korean", 488002, "ko", aliases = {"Southeastern Korean"}, } m["ko-jeo"] = { "Jeolla Korean", 11250166, "ko", aliases = {"Southwestern Korean"}, } m["ko-pyo"] = { "Pyongan Korean", 7263142, "ko", aliases = {"Northwestern Korean"}, } m["ko-ham"] = { "Hamgyong Korean", 860702, "ko", aliases = {"Northeastern Korean"}, } m["ko-yuk"] = { "Yukjin Korean", 16171275, "ko", aliases = {"Yukchin Korean", "Ryukjin Korean", "Ryukchin Korean"}, } ---------------------------------------------------------------------------------------------------------------------- -- Mongolic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["xng-ear"] = { "Early Middle Mongol", nil, "xng", } m["xng-lat"] = { "Late Middle Mongol", nil, "xng", ancestors = "xng-ear", } m["mn-kha"] = { "Khalkha Mongolian", 6399808, "mn", aliases = {"Khalkha"}, } m["mn-ord"] = { "Ordos Mongolian", 716904, "mn", aliases = {"Ordos"}, } m["mn-cha"] = { "Chakhar Mongolian", 907425, "mn", aliases = {"Chakhar"}, } m["mn-khr"] = { "Khorchin Mongolian", 3196210, "mn", aliases = {"Khorchin"}, } ---------------------------------------------------------------------------------------------------------------------- -- Niger-Congo varieties -- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------- -- Akan varieties -- ----------------------------------------------------- m["tw"] = { "Twi Akan", 36850, "ak", aliases = {"Twi"}, } m["abr"] = { "Abron", 34831, "tw", aliases = {"Brong", "Bono", "Bono Twi"}, } m["tw-asa"] = { "Asante Twi", 19261685, "tw", aliases = {"Asante", "Ashanti", "Ashante"}, } m["tw-aku"] = { "Akuapem Twi", 31150449, "tw", aliases = {"Akuapem", "Akuapim", "Akwapem Twi", "Akwapi"}, } m["fat"] = { "Fante Akan", 35570, "ak", aliases = {"Fante", "Fanti", "Fantse", "Mfantse"}, } m["wss"] = { "Wasa", 36914, "ak", } -- creole m["alv-kro"] = { "Kromanti", 1093206, "crp-mar", } ----------------------------------------------------- -- Bantu varieties -- ----------------------------------------------------- m["bnt-cmn"] = { "Common Bantu", nil, "bnt-pro", } 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"] = { "Maasina Fulfulde", 3915322, "ff", } m["fue"] = { -- no enwiki entry as of yet but frwiki and pmswiki have one "Borgu Fulfulde", 12952426, "ff", } m["fuh"] = { -- no enwiki entry as of yet but frwiki and pmswiki have one "Western Niger Fulfulde", 12952430, "ff", } m["fuq"] = { -- no enwiki entry as of yet but frwiki, hrwiki and pmswiki have one "Central-Eastern Niger Fulfulde", 12628799, "ff", } m["fuv"] = { -- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki and swwiki have one "Nigerian Fulfulde", 36129, "ff", } m["fub"] = { -- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki, ptwiki, swwiki and yowiki have one "Adamawa Fulfulde", 34776, "ff", } m["fui"] = { -- no enwiki entry as of yet but pmswiki and swwiki have one "Bagirmi Fulfulde", 11003859, "ff", } ---------------------------------------------------------------------------------------------------------------------- -- Papuan varieties -- ---------------------------------------------------------------------------------------------------------------------- m["kze"] = { "Kosena", 12952663, "auy", } m["ont"] = { "Ontenu", 3352827, "gaj", aliases = {"Ontena"}, } ---------------------------------------------------------------------------------------------------------------------- -- Salishan varieties -- ---------------------------------------------------------------------------------------------------------------------- m["lut-nor"] = { "Northern Lushootseed", nil, "lut", aliases = {"Northern Puget Sound Salish"}, } m["slh"] = { "Southern Lushootseed", 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", } ----------------------------------------------------- -- Chinese varieties -- ----------------------------------------------------- ------------- Old Chinese, Middle Chinese ------------- m["och-ear"] = { "Early Old Chinese", nil, "och", } m["och-lat"] = { "Late Old Chinese", nil, "och", } m["ltc-ear"] = { "Early Middle Chinese", nil, "ltc", } m["ltc-lat"] = { "Late Middle Chinese", nil, "ltc", } ------------- Classical/Literary varieties ------------- -- FIXME: Temporary. m["lzh-shi"] = { "Traditional Chinese poetry", 1759242, "lzh", } -- FIXME: Temporary. m["lzh-cii"] = { "Ci", 1091366, "lzh", } -- FIXME: Temporary. m["lzh-yue"] = { "Classical Cantonese", nil, "lzh", } -- FIXME: Temporary. m["lzh-cmn"] = { "Classical Mandarin", nil, "lzh", } -- FIXME: Temporary. m["lzh-tai"] = { "Classical Taishanese", nil, "lzh", } -- FIXME: Temporary. m["lzh-cmn-TW"] = { "Classical Taiwanese Mandarin", nil, "lzh-cmn", } -- FIXME: Temporary. m["lzh-VI"] = { "Vietnamese Classical Chinese", 17034227, "lzh", } -- FIXME: Temporary. m["lzh-KO"] = { "Korean Classical Chinese", 10496257, "lzh", ietf_subtag = "lzh-KR" -- KR = South Korea, as there is no code for Korea as a whole } -- FIXME: Temporary. m["lzh-lit"] = { "Literary Chinese", nil, "lzh", } -- FIXME: Temporary. FIXME: Do we need this? How does it differ from Old Chinese? m["lzh-pre"] = { "Pre-Classical Chinese", nil, "lzh", } ------------- Written Vernacular varieties ------------- -- FIXME: Temporary. m["cmn-wvc"] = { "Written vernacular Mandarin", 783605, "cmn", } -- FIXME: Temporary. FIXME: How does this differ from "Literary Cantonese"? m["yue-wvc"] = { "Written vernacular Cantonese", nil, "yue", } -- FIXME: Temporary. m["zhx-tai-wvc"] = { "Written vernacular Taishanese", nil, "zhx-tai", } ------------- 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"] = { "Beijing Mandarin", 1147606, "cmn-bec", } -- FIXME: Temporary. m["cmn-bec"] = { "Beijingic Mandarin", 2169652, "cmn", } -- FIXME: Temporary. NOTE: The Linguist List uses the code cmn-zho. m["cmn-cep"] = { "Central Plains Mandarin", 3048775, "cmn", aliases = {"Zhongyuan Mandarin"}, } m["cmn-ear"] = { "Early Mandarin", 837169, "cmn", ancestors = "ltc", } -- FIXME: Temporary. m["cmn-gua"] = { "Guanzhong Mandarin", 3431648, "cmn-cep", } -- FIXME: Temporary. Appears to be a subdialect of Guiliu Mandarin, which in turn is a subdialect of Southwestern Mandarin. m["cmn-gui"] = { "Guilin Mandarin", 11111636, "cmn-sow", } m["cmn-jhu"] = { "Jianghuai Mandarin", 2128953, "cmn", aliases = {"Lower Yangtze Mandarin"}, } -- FIXME: Temporary. m["cmn-lan"] = { "Lanyin Mandarin", 662754, "cmn", } -- FIXME: Temporary. m["cmn-MY"] = { "Malaysian Mandarin", 13646143, "cmn", } -- FIXME: Temporary. m["cmn-nan"] = { "Nanjing Mandarin", 2681098, "cmn-jhu", } -- FIXME: Temporary. m["cmn-noe"] = { "Northeastern Mandarin", 1064504, "cmn", } -- FIXME: Temporary. m["cmn-PH"] = { "Philippine Mandarin", 7185155, "cmn", } -- FIXME: Temporary. m["cmn-SG"] = { "Singapore Mandarin", 1048980, "cmn", } -- FIXME: Temporary. m["cmn-sow"] = { "Southwestern Mandarin", 2609239, "cmn", } -- FIXME: Temporary. Appears to be a subdialect of Jilu Mandarin. m["cmn-tia"] = { "Tianjin Mandarin", 7800220, "cmn", } -- 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"] = { "Taiwanese Mandarin", 262828, "cmn", } -- 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"] = { "Wuhan Mandarin", 11124731, "cmn-sow", aliases = {"Wuhanese"}, } -- FIXME: Temporary. Appears to be a subdialect of Lanyin Mandarin. m["cmn-xin"] = { "Xining Mandarin", nil, "cmn-lan", } -- FIXME: Temporary. m["cmn-yan"] = { "Yangzhou Mandarin", nil, "cmn-jhu", } ------------- Cantonese varieties ------------- -- FIXME: Temporary. m["yue-gua"] = { "Guangzhou Cantonese", nil, "yue", } -- FIXME: Temporary. Given the codes yue-yue or yue-can in the Linguist List. m["yue-HK"] = { "Hong Kong Cantonese", 5894342, "yue", } -- FIXME: Temporary. FIXME: How does this differ from "Written vernacular Cantonese"? m["yue-lit"] = { "Literary Cantonese", 2472605, "yue", } ------------- Wu varieties ------------- m["wuu-han"] = { "Hangzhounese", 5648144, "wuu", } m["wuu-nin"] = { "Ningbonese", 3972199, "wuu", } -- FIXME: Temporary. m["wuu-nor"] = { "Northern Wu", 7675988, "wuu", aliases = {"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"] = { "Shadi Wu", 6112340, "wuu-nor", } m["wuu-sha"] = { "Shanghainese", 36718, "wuu-nor", } m["wuu-suz"] = { "Suzhounese", 831744, "wuu-nor", } -- FIXME: Temporary. May be converted into a full language and/or split. m["wuu-wen"] = { "Wenzhounese", 710218, "wuu", } ------------- Xiang varieties ------------- m["hsn-lou"] = { "Loudi Xiang", 10943823, "hsn-old", } m["hsn-hya"] = { "Hengyang Xiang", 20689035, "hsn-hzh", } m["hsn-hzh"] = { "Hengzhou Xiang", nil, "hsn", } m["hsn-new"] = { "New Xiang", 7012696, "hsn", aliases = {"Chang-Yi"}, } m["hsn-old"] = { "Old Xiang", 7085453, "hsn", aliases = {"Lou-Shao"}, } ------------- Hakka varieties ------------- -- FIXME: Temporary. m["hak-dab"] = { "Dabu Hakka", 19855566, "hak", -- formerly hak-TW but seems to be spoken primary in Dabu County in Guangdong } -- FIXME: Temporary. m["hak-eam"] = { "Early Modern Hakka", nil, "hak", } -- FIXME: Temporary. m["hak-hai"] = { "Hailu Hakka", 17038519, "hak", -- often considered a Taiwanese lect but also spoken in [[Shanwei]], [[Guangdong]] } -- FIXME: Temporary. m["hak-HK"] = { "Hong Kong Hakka", 2675834, "hak", } -- FIXME: Temporary. m["hak-hui"] = { "Huiyang Hakka", 16873881, "hak", } -- FIXME: Temporary. m["hak-hui-MY"] = { "Malaysian Huiyang Hakka", nil, "hak-hui", } -- FIXME: Temporary. Similar to and possibly the parent of Sixian Hakka in Taiwan. m["hak-mei"] = { "Meixian Hakka", 839295, "hak", aliases = {"Moiyan Hakka", "Meizhou Hakka"}, } -- FIXME: Temporary. m["hak-six"] = { "Sixian Hakka", 9668261, "hak-TW", } -- FIXME: Temporary. m["hak-TW"] = { "Taiwanese Hakka", 2391532, "hak", } -- FIXME: Temporary. m["hak-zha"] = { "Zhao'an Hakka", 6703311, "hak", aliases = {"Zhangzhou Hakka"}, } -- Southern Min varieties -- m["nan-anx"] = { "Anxi Hokkien", 97064149, "nan-qua", } m["nan-cha"] = { "Changtai Hokkien", nil, "nan-zha", } m["nan-hou"] = { "Houlu Min", 19855492, "nan-dat", } m["nan-hui"] = { "Hui'an Hokkien", 16241797, "nan-qua", } m["nan-jin"] = { "Jinjiang Hokkien", 11089375, "nan-qua", } m["nan-kin"] = { "Kinmenese Hokkien", 56278342, "nan-xia", aliases = {"Kinmen Hokkien"}, } m["nan-med"] = { "Medan Hokkien", 6805114, "nan-zha", } m["nan-pen"] = { "Penang Hokkien", 11120689, "nan-zha", } m["nan-hbl-PH"] = { "Philippine Hokkien", 3236692, "nan-qua", } m["nan-qia"] = { "Qianlu Min", 19842517, "nan-dat", } m["nan-qua"] = { "Quanzhou Hokkien", 2251677, "nan-hbl", aliases = {"Chinchew", "Choanchew"}, } -- FIXME: Temporary? Derived from both Quanzhou and Zhangzhou Hokkien. m["nan-hbl-SG"] = { "Singapore Hokkien", 3846528, "nan-hbl", } m["nan-spm"] = { "Southern Malaysian Hokkien", 7570322, "nan-qua", aliases = {"Southern Malaysia Hokkien", "Southern Peninsular Malaysian Hokkien", "Southern Peninsular Malaysia Hokkien"} } m["nan-hbl-TW"] = { "Taiwanese Hokkien", 36778, "nan-hbl", } m["nan-ton"] = { "Tong'an Hokkien", nil, "nan-xia", } m["nan-xia"] = { "Xiamen Hokkien", 68744, "nan-hbl", aliases = {"Amoy", "Amoyese", "Amoynese", "Xiamenese"}, } m["nan-yon"] = { "Yongchun Hokkien", 65118728, "nan-qua", } m["nan-zha"] = { "Zhangzhou Hokkien", 8070492, "nan-hbl", aliases = {"Changchew", "Chiangchew", "Changchow"}, } m["nan-zho"] = { "Zhao'an Hokkien", 65118728, "nan-zha", aliases = {"Zhao'an", "Chawan", "Chawan Hokkien"}, } m["nan-zhp"] = { "Zhangping Hokkien", 15937822, "nan-zha", } ------------- Other Min varieties ------------- -- FIXME: Temporary. Affiliation within Min uncertain; some combination of Eastern and Southern. m["zhx-zho"] = { "Zhongshan Min", 8070958, "zh", } ------------- Other Chinese varieties ------------- -- FIXME: Temporary. Affiliation within Chinese uncertain; possibly Yue. m["zhx-dan"] = { "Danzhou Chinese", 2578935, "zh", } ------------- Chinese romanization varieties ------------- -- [[Wiktionary:Information desk/2022/June#Etymology Coding Issue]] -- [[Wiktionary:Grease pit/2022/June#Transliteration Systems in Etymologies 2]] m["cmn-pinyin"] = { "Hanyu Pinyin", 42222, "cmn", aliases = {"Pinyin"}, } m["cmn-tongyong"] = { "Tongyong Pinyin", 700739, "cmn", } m["cmn-wadegiles"] = { "Wade–Giles", 208442, "cmn", aliases = {"Wade-Giles", "Wade Giles"}, } m["zh-postal"] = { "Postal Romanization", 151868, "zh", } -- Chinese cyrillization m["cmn-palladius"] = { "Palladius", 1234239, "cmn", aliases = {"Palladius system"}, } ----------------------------------------------------- -- Tibetic varieties -- ----------------------------------------------------- m["adx"] = { "Amdo Tibetan", 56509, "bo", } m["kbg"] = { "Khamba", 12952626, "bo", } m["khg"] = { "Khams Tibetan", 56601, "bo", } m["tsk"] = { "Tseku", 11159532, "bo", } ---------------------------------------------------------------------------------------------------------------------- -- Tai-Kadai varieties -- ---------------------------------------------------------------------------------------------------------------------- m["th-old"] = { "သေံတြေံ", nil, "tai-swe-pro", wikipedia_article = "Thai language#Old Thai", } m["th-suk"] = { "သူခိုဝ်ထိုၚ် သေံတြေံ", -- 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"] = { "အယုဒ္ဓယ သေံတြေံ", -- 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"] = { "Shangsi Zhuang", 13216, "za", } ---------------------------------------------------------------------------------------------------------------------- -- Turkic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["trk-cmn-pro"] = { "Proto-Common Turkic", 1126028, "trk-pro", } m["trk-ogr-pro"] = { "Proto-Oghur", 1422731, "trk-pro", family = "trk-ogr", } m["trk-bul-pro"] = { "Proto-Bulgar", nil, "trk-ogr-pro", } m["trk-ogz-pro"] = { "Proto-Oghuz", 494600, "trk-pro", family = "trk-ogz", aliases = {"Southwestern Common Turkic"}, } m["crh-dbj"] = { "Dobrujan Tatar", 12811566, "crh", aliases = {"Romanian Tatar"}, } m["cv-ana"] = { "Anatri Chuvash", nil, "cv", aliases = {"Anatri", "Lower Chuvash"}, } m["cv-mid"] = { "Middle Chuvash", nil, "cv", ancestors = "cv-old", } m["cv-old"] = { "Old Chuvash", nil, "cv", ancestors = "xbo-vol", } m["cv-vir"] = { "Viryal Chuvash", 4278332, "cv", aliases = {"Viryal", "Upper Chuvash"}, } m["kjh-fyu"] = { "Fuyu Kyrgyz", 2598963, "kjh", aliases = {"Fuyu Kirgiz", "Fuyu Kirghiz", "Manchurian Kyrgyz", "Manchurian Kirgiz", "Manchurian Kirghiz"}, } m["klj-arg"] = { "Arghu", 33455, "klj", ancestors = "trk-cmn-pro", } m["otk-kir"] = { "Old Kirghiz", 83142, "otk", aliases = {"Yenisei Turkic", "Yenisei Kyrgyz"}, } m["otk-ork"] = { "Orkhon Turkic", 31295480, "otk", } m["qwm-cum"] = { "Cuman", 1075050, "qwm", aliases = {"Kuman", "Polovtsian", "Polovcian"}, } m["qwm-arm"] = { "Armeno-Kipchak", 2027503, "qwm", ancestors = "qwm-cum", aliases = {"Xıpçaχ tili", "Tatarça"}, } m["qwm-mam"] = { "Mamluk-Kipchak", 4279942, "qwm", aliases = {"Mameluk-Kipchak"}, } m["az-cls"] = { "Classical Azerbaijani", nil, "az", aliases = {"Classical Azeri"}, } m["qxq"] = { "Qashqai", 13192, "az", aliases = {"Qaşqay", "Qashqayi", "Kashkai", "Kashkay"}, } m["tr-CY"] = { "Cypriot Turkish", 7917392, "tr", } m["uz-afg"] = { -- NOTE: has ISO 639-3 code uzs assigned to it. "Afghan Uzbek", 1066787, "uz", aliases = {"Southern Uzbek"}, translit = "uz-afg-translit", } m["xbo-dan"] = { "Danube Bulgar", nil, "xbo", } m["xbo-vol"] = { "Volga Bulgar", nil, "xbo", } ---------------------------------------------------------------------------------------------------------------------- -- Uralic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["fiu-pro"] = { "ဖေန်နဝ်-ဥူဂရေတ်-အခိုက်ကၞာ", 79890, "urj-pro", } m["urj-fpr-pro"] = { "ဖေန်နဝ်-ပဵုမေတ်-အခိုက်ကၞာ", nil, "urj-pro", } m["krl-nor"] = { "North Karelian", 125501196, "krl", } m["krl-sou"] = { "South Karelian", 129812730, "krl", } m["mns-eas"] = { "Eastern Mansi", 30311755, "mns-cen", } m["mns-wes"] = { "Western Mansi", 30311756, "mns-cen", } ---------------------------------------------------------------------------------------------------------------------- -- 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"] = { "taxonomic name", 522190, "mul", } ----------------------------------------------------- -- Elamite varieties -- ----------------------------------------------------- m["elx-old"] = { "Old Elamite", nil, "elx", } m["elx-mid"] = { "Middle Elamite", nil, "elx", } m["elx-neo"] = { "Neo-Elamite", nil, "elx", } m["elx-ach"] = { "Achaemenid Elamite", nil, "elx", } ----------------------------------------------------- -- Substrates -- ----------------------------------------------------- -- Pre-Roman substrates m["qsb-ibe"] = { "Paleo-Hispanic", 246801, "und", family = "qfa-sub", aliases = {"Palaeo-Hispanic", "Paleohispanic", "Palaeohispanic", "Paleo-Iberian", "Palaeo-Iberian"}, } m["qsb-bal"] = { "Paleo-Balkan", 1815070, "und", family = "qfa-sub", aliases = {"Palaeo-Balkan", "Paleobalkan", "Palaeobalkan"}, } m["xaq"] = { "Aquitanian", 500522, "euq-pro", family = "euq", } return require("Module:languages").finalizeData(m, "language", true) eqd00had3b3sxs6ulnmw3i5v821818t 402262 402256 2026-10-01T05:46:33Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402262 Scribunto text/plain 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"] = { "Medieval Tashelhit", 34152, "shi", } -- Tuareg lects m["thv"] = { "Tamahaq", 56703, "tmh", } m["ttq"] = { "ထာဝါလပ်မေတ်", 56390, "tmh", } m["taq"] = { "Tamasheq", 4670066, "tmh", } m["thz"] = { "ထေယျုက်", 56388, "tmh", } m["thv-ght"] = { "Ghat", 47012900, "thv", } -------------------------------------------------------------------------------------- -- Cushitic varieties -- -------------------------------------------------------------------------------------- -- Oromo varieties m["hae"] = { "Harar Oromo", 5330355, "om", aliases = {"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", } m["egy-mid"] = { "အဳဂျေပ်လဒေါဝ်", 657330, "egy", aliases = {"Classical Egyptian"}, } m["egy-nmi"] = { "Neo-Middle Egyptian", 123735278, "egy", aliases = {"Égyptien de tradition", "Traditional Egyptian"}, } m["egy-lat"] = { "အဳဂျေပ်လဇုဲ", 1852329, "egy", } ----------------------------------------------------- -- Coptic varieties -- ----------------------------------------------------- m["cop-akh"] = { "Akhmimic Coptic", 125176464, "cop", aliases = {"Akhmimic"}, } m["cop-boh"] = { "Bohairic Coptic", 890733, "cop", aliases = {"Bohairic", "Memphitic Coptic", "Memphitic"}, } m["cop-ggg"] = { "Coptic Dialect G", nil, "cop", aliases = {"Dialect G", "Mansuric Coptic", "Mansuric"}, } m["cop-jjj"] = { "Coptic Dialect J", nil, "cop", } m["cop-kkk"] = { "Coptic Dialect K", nil, "cop", } m["cop-ppp"] = { "Coptic Dialect P", nil, "cop", aliases = {"Proto-Theban Coptic", "Palaeo-Theban Coptic"}, } m["cop-fay"] = { "Fayyumic Coptic", 1399115, "cop", aliases = {"Fayyumic", "Faiyumic Coptic", "Faiyumic", "Fayumic Coptic", "Fayumic", "Bashmuric Coptic", "Bashmuric"}, } m["cop-her"] = { "Hermopolitan Coptic", nil, "cop", aliases = {"Hermopolitan", "Coptic Dialect H", "Ashmuninic", "Ashmuninic Coptic"}, } m["cop-lyc"] = { "Lycopolitan Coptic", nil, "cop", aliases = { "Lycopolitan", "Assiutic Coptic", "Asyutic Coptic", "Assiutic", "Asyutic", "Lyco-Diospolitan Coptic", "Lyco-Diospolitan", "Subakhmimic Coptic", "Subakhmimic" }, } m["cop-old"] = { "Old Coptic", 115518040, "cop", } m["cop-oxy"] = { "Oxyrhynchite Coptic", nil, "cop", aliases = {"Oxyrhynchite", "Mesokemic Coptic", "Mesokemic", "Middle Egyptian Coptic"}, } m["cop-ply"] = { "Proto-Lycopolitan Coptic", nil, "cop", aliases = {"Coptic Dialect i", "Proto-Lyco-Diospolitan Coptic"}, } m["cop-sah"] = { "Sahidic Coptic", 2645851, "cop", aliases = {"Sahidic", "Saidic Coptic", "Saidic", "Thebaic Coptic", "Thebaic"}, } -------------------------------------------------------------------------------------- -- Semitic varieties -- -------------------------------------------------------------------------------------- ----------------------------------------------------- -- Akkadian varieties -- ----------------------------------------------------- m["akk-old"] = { "Old Akkadian", nil, "akk", } m["akk-obb"] = { "Old Babylonian", nil, "akk", } m["akk-oas"] = { "Old Assyrian", nil, "akk", } m["akk-mbb"] = { "Middle Babylonian", nil, "akk", } m["akk-mas"] = { "Middle Assyrian", nil, "akk", } m["akk-nbb"] = { "Neo-Babylonian", nil, "akk", } m["akk-nas"] = { "Neo-Assyrian", nil, "akk", } m["akk-lbb"] = { "Late Babylonian", nil, "akk", } m["akk-stb"] = { "Standard Babylonian", nil, "akk", } ----------------------------------------------------- -- Arabic varieties -- ----------------------------------------------------- m["jrb"] = { "Judeo-Arabic", 37733, "ar", pseudo_families = "qfa-jew", } m["apc-leb"] = { "Lebanese North Levantine Arabic", 1516642, "apc", aliases = {"Lebanese Arabic"}, } m["apc-sle"] = { "South Lebanese North Levantine Arabic", 14206590, "apc", aliases = {"South Lebanese Arabic"}, } m["apc-nle"] = { "North Lebanese North Levantine Arabic", 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"] = { "Biblical Aramaic", 843235, "arc", family = "sem-are", } m["arc-cpa"] = { "Christian Palestinian Aramaic", 60790119, "arc", family = "sem-arw", aliases = {"Melkite Aramaic", "Palestinian Syriac", "Syropalestinian Aramaic"}, } m["arc-imp"] = { "Imperial Aramaic", 7079491, "arc", aliases = {"Official Aramaic"}, } m["arc-hat"] = { "Hatran Aramaic", 3832926, "arc", family = "sem-are", } m["arc-jla"] = { "Jewish Literary Aramaic", 105952842, "arc", pseudo_families = "qfa-jew", } m["arc-nab"] = { "Nabataean Aramaic", 36178, "arc", } m["arc-old"] = { "Old Aramaic", 3398392, "arc", } m["arc-pal"] = { "Palmyrene Aramaic", 1510113, "arc", family = "sem-arw", } m["tmr"] = { "Jewish Babylonian Aramaic", 33407, "arc", family = "sem-ase", pseudo_families = "qfa-jew", } m["jpa"] = { "Jewish Palestinian Aramaic", 948909, "arc", family = "sem-arw", aliases = {"Galilean Aramaic"}, pseudo_families = "qfa-jew", } ----------------------------------------------------- -- Hebrew varieties -- ----------------------------------------------------- m["hbo"] = { "Biblical Hebrew", 1982248, "he", aliases = {"Classical Hebrew"}, } m["he-mis"] = { "Mishnaic Hebrew", 1649362, "he", ancestors = "hbo", } m["he-med"] = { "Medieval Hebrew", 2712572, "he", ancestors = "he-mis", } m["he-IL"] = { "Israeli Hebrew", 8141, "he", } ---------------------------------------------------------------------------------------------------------------------- -- Ainu varieties -- ---------------------------------------------------------------------------------------------------------------------- m["ain-hok"] = { "Hokkaido Ainu", 20968488, "ain", aliases = {"Hokkaidō Ainu"}, } m["ain-kur"] = { "Kuril Ainu", 20967012, "ain", } m["ain-sak"] = { "Sakhalin Ainu", 20747371, "ain", } ---------------------------------------------------------------------------------------------------------------------- -- American indigenous varieties -- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------- -- Inuit varieties -- ----------------------------------------------------- m["esi"] = { "North Alaskan Inupiatun", nil, "ik" } m["esk"] = { "Northwest Alaskan Inupiatun", 25559714, "ik" } ----------------------------------------------------- -- Iroquoian varieties -- ----------------------------------------------------- m["iro-ohu"] = { "Old Wendat", nil, "wdt", } m["iro-omo"] = { "Old Mohawk", nil, "moh", } m["iro-oon"] = { "Old Onondaga", nil, "ono", } ----------------------------------------------------- -- Tupi-Guarani varieties -- ----------------------------------------------------- -- Old Tupi varieties m["tpw-lga"] = { "Língua Geral Amazônica", 18275323, "tpw", aliases = {"Língua Geral"}, } m["tpw-lgp"] = { "Língua Geral Paulista", 2669239, "tpw", } ---------------------------------------------------------------------------------------------------------------------- -- Austroasiatic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Khmer varieties m["okz-ang"] = { "ခမေန်တြေံ အာန်ခေါဝ်ရဳယာန်", nil, "okz", wikipedia_article = "Khmer language#Historical periods", } m["okz-pre"] = { "ခမေန်တြေံ ကၠာ-အာန်ခေါဝ်ရဳယာန်", nil, "okz", wikipedia_article = "Khmer language#Historical periods", } -- 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' "Old Malay", nil, "ms", } m["ms-cla"] = { "Classical Malay", nil, "ms", ancestors = "ms-old", } m["pse-bsm"] = { "Besemah", nil, "pse", } m["bew-kot"] = { "Betawi Kota", nil, "bew", aliases = {"Urban Betawi"}, -- in Jakarta } -- Philippine varieties m["xnn"] = { "Northern Kankanaey", 12953609, "kne", aliases = {"Northern Kankanay", "Northern Kankana-ey"}, } m["tl-old"] = { "Old Tagalog", 12967437, "tl", } m["tl-cls"] = { "Classical Tagalog", nil, "tl", } ---------------------------------------------------------------------------------------------------------------------- -- Caucasian varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Kartvelian varieties m["ka-mid"] = { "Middle Georgian", nil, "ka", ancestors = "oge", } ---------------------------------------------------------------------------------------------------------------------- -- Dravidian varieties -- ---------------------------------------------------------------------------------------------------------------------- m["ta-mid"] = { "Middle Tamil", 20987434, "ta", } m["kn-hav"] = { "Havigannada", 24276369, "kn", } m["kn-kun"] = { "Kundagannada", 6444255, "kn", } ---------------------------------------------------------------------------------------------------------------------- -- Indo-European varieties -- ---------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -- Albanian varieties -- -------------------------------------------------------------------------------------- m["aln"] = { "Gheg Albanian", 181037, "sq", aliases = {"Gheg"}, } m["aae"] = { "Arbëresh Albanian", 1075302, "als", aliases = {"Arbëreshë", "Arbëresh"}, } m["aat"] = { "Arvanitika Albanian", 29347, "als", aliases = {"Arvanitika"}, } m["als"] = { "Tosk Albanian", 180937, "sq", aliases = {"Tosk"}, } -------------------------------------------------------------------------------------- -- Armenian varieties -- -------------------------------------------------------------------------------------- m["hyw"] = { "Western Armenian", 180945, "hy", } m["hye"] = { "Eastern Armenian", 181059, "hy", } -------------------------------------------------------------------------------------- -- Balto-Slavic varieties -- -------------------------------------------------------------------------------------- ------------------------------------------------------------------------- -- Baltic varieties -- ------------------------------------------------------------------------- m["bat-pro"] = { "ဗေါဝ်တေတ်-အခိုက်ကၞာ", 1703347, "ine-bsl-pro", } m["bat-dni"] = { "Dnieper Baltic", 4163178, "bat-pro", family = "bat", aliases = {"Dniepr Baltic", "Dnieper-Oka Baltic", "Dniepr-Oka Baltic"}, } m["bat-gol"] = { "Golyad", 4142855, "bat-dni", aliases = {"Eastern Galindian", "East Galindian"}, } ------------------------------------------------------------------------- -- Slavic varieties -- ------------------------------------------------------------------------- ----------------------------------------------------- -- Bulgarian varieties -- ----------------------------------------------------- m["cu-bgm"] = { "ဗူလ်ဂရဳယာန် လဒေါဝ်", 12294897, "cu", ancestors = "cu" } ----------------------------------------------------- -- Church Slavonic varieties -- ----------------------------------------------------- -- Old Moscow Church Slavonic deleted as it seems not distinct enough from Russian (Synodal) Church Slavonic. m["zls-chs-ru"] = { "Russian Church Slavonic", 21662400, "zls-chs", aliases = {"Synodal Church Slavonic", "New Moscow Church Slavonic", "Novomoskovsk Church Slavonic"}, } m["zls-chs-uk"] = { "Ukrainian Church Slavonic", 12153548, "zls-chs", aliases = {"Rusyn Church Slavonic", "Belarusian Church Slavonic"}, } --[=[ -- Not sure about these yet. m["zls-chs-bg"] = { "Bulgarian Church Slavonic", nil, "zls-chs", } m["zls-chs-cs"] = { "Czech Church Slavonic", nil, "zls-chs", } m["zls-chs-hr"] = { "Croatian Church Slavonic", nil, "zls-chs", } m["zls-chs-mk"] = { "Macedonian Church Slavonic", nil, "zls-chs", } m["zls-chs-ro"] = { "Romanian Church Slavonic", nil, "zls-chs", } m["zls-chs-sr"] = { "Serbian Church Slavonic", nil, "zls-chs", } ]=] ----------------------------------------------------- -- Czech varieties -- ----------------------------------------------------- m["cs-ear"] = { "Early Modern Czech", nil, "cs", ancestors = "zlw-ocs" } ----------------------------------------------------- -- East Slavic varieties -- ----------------------------------------------------- m["zle-ops"] = { "Old Pskovian", 4167885, "zle-ono", } m["zle-mru"] = { "ရုသျှာ လဒေါဝ်", 35228, "ru", "Cyrs", ancestors = "orv", translit = "ru-translit", strip_diacritics = { Cyrs = { remove_diacritics = c.grave .. c.acute .. c.diaer, }, }, } m["zle-mbe"] = { "Middle Belarusian", 13211, "zle-ort", ancestors = "zle-ort", } m["zle-muk"] = { "ယူကရိန် လဒေါဝ်", 13211, "zle-ort", ancestors = "zle-ort", } m["uk-CA"] = { "Canadian Ukrainian", 4161010, "uk", } m["crp-cpr-kya"] = { "Kyakhta Chinese Pidgin Russian", 1062960, "crp-cpr", } ----------------------------------------------------- -- Polish varieties -- ----------------------------------------------------- m["zlw-mpl"] = { "ပဝ်လာန် လဒေါဝ်", 402878, "pl", ancestors = "zlw-opl", strip_diacritics = { remove_diacritics = c.acute, remove_exceptions = {"Ć", "ć", "Ń", "ń", "Ó", "ó", "Ś", "ś", "Ź", "ź"}, }, } m["pl-gre"] = { "Greater Polish", 4106789, "pl", } m["pl-les"] = { "Lesser Polish", 361709, "pl", } m["pl-mas"] = { "Masovian Polish", 4274559, "pl", } m["pl-gor"] = { "Goral", 452889, "pl", } ----------------------------------------------------- -- Serbo-Croatian varieties -- ----------------------------------------------------- m["ckm"] = { "Chakavian Serbo-Croatian", 337565, "sh", aliases = {"Čakavian"}, } m["kjv"] = { "Kajkavian Serbo-Croatian", 838165, "sh", } m["sh-tor"] = { -- Linguist code srp-tor "Torlakian Serbo-Croatian", 1078803, "sh", aliases = {"Torlak"}, } -------------------------------------------------------------------------------------- -- Celtic varieties -- -------------------------------------------------------------------------------------- ----------------------------------------------------- -- Brythonic varieties -- ----------------------------------------------------- m["bry-ear"] = { "Early Brythonic", nil, "cel-bry-pro", } m["bry-lat"] = { "Late Brythonic", nil, "cel-bry-pro", } ----------------------------------------------------- -- Gaulish varieties -- ----------------------------------------------------- m["xcg"] = { "Cisalpine Gaulish", 3832927, "cel-gau", } m["xtg"] = { "Transalpine Gaulish", 29977, "cel-gau", } ----------------------------------------------------- -- Welsh varieties -- ----------------------------------------------------- m["cy-nor"] = { "North Wales Welsh", 13127692, "cy", aliases = {"North Walian Welsh", "Northern Welsh"}, } m["cy-sou"] = { "South Wales Welsh", 13127689, "cy", aliases = {"South Walian Welsh", "Southern Welsh"}, } -------------------------------------------------------------------------------------- -- Germanic varieties -- -------------------------------------------------------------------------------------- -- Proto-West Germanic varieties m["frk"] = { "Frankish", 10860505, "gmw-pro", family = "gmw-frk", aliases = {"Old Frankish"}, } m["gem-sue"] = { "Suevic", 134600275, "gmw-pro", aliases = {"Suebian"}, } m["gmw-afr-pro"] = { "Proto-Anglo-Frisian", 134603379, "gmw-nsg-pro", family = "gmw-afr", } m["gmw-nsg-pro"] = { "Proto-North Sea Germanic", 134603374, "gmw-pro", family = "gmw-nsg", aliases = {"Proto-Ingvaeonic"}, } ----------------------------------------------------- -- Dutch varieties -- ----------------------------------------------------- m["nl-BE"] = { "Belgian Dutch", 34147, "nl", aliases = {"Flemish", "Flemish Dutch", "Southern Dutch"}, } ----------------------------------------------------- -- English and Scots varieties -- ----------------------------------------------------- -- English varieties m["en-AU"] = { "Australian English", 44679, "en", } m["en-GB"] = { "British English", 7979, "en", } m["en-GB-SCT"] = { "Scottish English", 1553250, "en-GB", } m["en-GB-WLS"] = { "Welsh English", 2363292, "en-GB", } m["en-IM"] = { "Manx English", 6753295, "en-GB", } m["en-aae"] = { "Australian Aboriginal English", 783347, "en-AU", } m["en-ear"] = { "Early Modern English", 1472196, "en", ancestors = "enm", aliases = {"Early New English"}, } m["en-geo"] = { "Geordie", 653421, "en", ancestors = "enm-nor", } m["en-IE"] = { -- FIXME: "IE" doesn't cover Northern Ireland "Irish English", 665624, "en", } m["en-uls"] = { "Ulster English", 6840826, "en-IE", } m["en-GB-NIR"] = { "Northern Irish English", 6840826, -- actually the code for Ulster English "en-uls", } m["en-NNN"] = { -- NA = Namibia; NNN is NATO 3-letter code for North America "North American English", 7053766, "en", ietf_subtag = "en-021" -- 021 = UN M49 code for "Northern America" (i.e. North America wihout Central America or the Caribbean) } m["en-US"] = { "American English", 7976, "en-NNN", } m["en-NZ"] = { "New Zealand English", 44661, "en" } m["en-ZA"] = { "South African English", 1156228, "en" } m["en-US-CA"] = { "California English", 1026812, "en-US", } m["en-CA"] = { "Canadian English", 44676, "en-US", } m["en-HK"] = { "Hong Kong English", 1068863, "en", } m["en-IN"] = { "Indian English", 1348800, "en", } m["pld"] = { "Polari", 1359130, "en", } -- Scots varieties m["sco-ins"] = { "Insular Scots", 16919205, "sco", } m["sco-uls"] = { "Ulster Scots", 201966, "sco", } m["sco-nor"] = { "Northern Scots", 16928150, "sco", } m["sco-sou"] = { "Southern Scots", 7570457, "sco", aliases = {"South Scots", "Borders Scots"}, } -- Middle English varieties m["enm-esc"] = { -- Part of Middle English until it developed into Middle Scots. "Early Scots", 5326738, "enm", ancestors = "enm-nor", aliases = {"Old Scots", "Scottish Middle English"}, } m["enm-emi"] = { "East Midland Middle English", 134238810, "enm", ancestors = "ang-ang", -- Technically ang-mer, but attested Mercian is mostly WM IIRC } m["enm-ken"] = { "Kentish Middle English", 134238532, "enm", ancestors = "ang-ken", } m["enm-nor"] = { "Northern Middle English", 134238541, "enm", ancestors = "ang-nor", } m["enm-sou"] = { "Southern Middle English", 134238528, "enm", ancestors = "ang-wsx", } m["enm-wmi"] = { "West Midland Middle English", 134238824, "enm", ancestors = "ang-mer", } -- Old English varieties -- Includes both Mercian and Northumbrian. m["ang-ang"] = { "Anglian Old English", 121142917, "ang", } m["ang-ken"] = { "Kentish Old English", 11687485, "ang", } m["ang-mer"] = { "Mercian Old English", 602072, "ang-ang", } m["ang-nor"] = { "Northumbrian Old English", 1798915, "ang-ang", } m["ang-wsx"] = { "West Saxon Old English", 2658603, "ang", } ----------------------------------------------------- -- High German varieties -- ----------------------------------------------------- -- (modern) German varieties m["de-AT"] = { "Austrian German", 306626, "de", } m["de-AT-vie"] = { "Viennese German", 56474, "de-AT", } m["de-CH"] = { "Switzerland German", 1366643, "de", aliases = {"Schweizer Hochdeutsch", "Swiss Standard German", "Swiss High German"}, } m["de-bal"] = { "Baltic German", 15785413, "de", } m["de-ear"] = { "Early New High German", 1472199, "de", ancestors = "gmh", aliases = {"Early Modern High German"}, } m["ksh"] = { "Kölsch", 4624, "gmw-cfr", } m["pfl"] = { "Palatine German", 23014, "gmw-rfr", aliases = {"Pfälzisch", "Pälzisch", "Palatinate German"}, } m["sli"] = { "Silesian East Central German", 152965, "gmw-ecg", aliases = {"Silesian"}, } m["sxu"] = { "Upper Saxon German", 699284, "gmw-ecg", } -- Old High German varieties m["lng"] = { "Lombardic", 35972, "goh", } -- Alemannic German varieties m["gsw-low"] = { "Low Alemannic German", 503724, "gsw", } m["gsw-FR-als"] = { "Alsatian Alemannic German", 8786, "gsw-low", } m["gsw-hig"] = { "High Alemannic German", 503728, "gsw", } m["gsw-hst"] = { "Highest Alemannic German", 687538, "gsw", } m["wae"] = { "Walser German", 680517, "gsw-hst", } ----------------------------------------------------- -- Low German varieties -- ----------------------------------------------------- m["nds-de"] = { "German Low German", 25433, "nds", ietf_subtag = "nds-DE", -- should we make this the actual code? wikimedia_codes = "nds", } m["nds-nl"] = { "Dutch Low Saxon", 516137, "nds", ietf_subtag = "nds-NL", -- should we make this the actual code? wikimedia_codes = "nds-nl", } m["act"] = { "Achterhoeks", 153627, "nds-nl", aliases = {"Achterhoek", "Achterhooks"}, } m["drt"] = { "Drents", 2736709, "nds-nl", aliases = {"Drèents", "Dreins", "Dreints", "Drints"}, } m["frs"] = { "East Frisian Low German", 149208, "nds-de", aliases = {"East Frisian", "East Frisian Low Saxon"}, } m["gos"] = { "Gronings", 508854, "nds-nl", aliases = {"Grunnegs", "Grönnegs"}, } m["nds-lpr"] = { "Low Prussian", 33982, "nds-de", } m["sdz"] = { "Sallands", 3436668, "nds-nl", aliases = {"Sallaans", "Sallaands"}, } m["stl"] = { "Stellingwerfs", 506010, "nds-nl", aliases = {"Stellingwarfs"}, } m["twd"] = { "Twents", 497363, "nds-nl", aliases = {"Tweants"}, } m["vel"] = { "Veluws", 2484810, "nds-nl", } m["wep"] = { "Westphalian", 505655, "nds-de", aliases = {"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"] = { "Greenlandic Norse", 855236, "non-own", } m["non-oen"] = { "Old East Norse", 10498031, "non", ancestors = "non", } m["non-own"] = { "Old West Norse", 2377483, "non", ancestors = "non", } ----------------------------------------------------- -- Old Swedish varieties -- ----------------------------------------------------- m["gmq-osw-lat"] = { "Late Old Swedish", 10723594, "gmq-osw", ancestors = "gmq-osw", } -------------------------------------------------------------------------------------- -- Greek varieties -- -------------------------------------------------------------------------------------- m["qsb-grc"] = { "Pre-Greek", 965052, "und", family = "qfa-sub", } m["grc-aeo"] = { "Aeolic Greek", 406373, "grc", aliases = {"Lesbic Greek", "Lesbian Greek", "Aeolian Greek"}, } m["grc-arc"] = { "Arcadian Greek", nil, "grc-arp", } m["grc-arp"] = { "Arcadocypriot Greek", 499602, "grc", } m["grc-att"] = { "Attic Greek", 506588, "grc", } m["grc-boi"] = { "Boeotian Greek", 406373, "grc-aeo", } m["grc-cyp"] = { "Cypriot Ancient Greek", -- to distinguish from Cypriot Greek below nil, "grc-arp", } m["grc-dor"] = { "Doric Greek", 285494, "grc", } m["grc-ela"] = { "Elean Greek", nil, "grc", } m["grc-epi"] = { "Epic Greek", 990062, "grc", aliases = {"Homeric Greek"}, } m["grc-ion"] = { "Ionic Greek", 504165, "grc", } m["grc-koi"] = { "ဂရေတ် ခါဝ်အိန်", 107358, "grc", ancestors = "grc-att", aliases = {"Hellenistic Greek"}, } m["grc-kre"] = { "Cretan Ancient Greek", -- to distinguish from Cretan Greek below nil, "grc-dor", } m["grc-opl"] = { "Opuntian Locrian", nil, "grc", } m["grc-ozl"] = { "Ozolian Locrian", nil, "grc", } m["grc-pam"] = { "Pamphylian Greek", 2271793, "grc", } m["grc-ths"] = { "Thessalian Greek", 406373, "grc-aeo", } m["gkm"] = { "ဂရေတ် ဗေတ်သေန်ထေၚ်", 36387, "grc", ancestors = "grc-koi", aliases = {"Medieval Greek"}, } m["el-cyp"] = { "Cypriot Greek", 245899, "el", aliases = {"Cypriotic Greek"}, } m["el-pap"] = { "Paphian Greek", nil, "el", } m["el-crt"] = { "Cretan Greek", 588306, "el", } 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"] = { "Proto-New Indo-Aryan", nil, "pra", } m["inc-ash-pro"] = { "Proto-Middle Indo-Aryan", nil, "inc-ash", } m["inc-mit"] = { "Mitanni", 1986700, "inc-pro", } m["bra-old"] = { "Old Braj", nil, "bra", } -- Apabhramsas m["inc-aav"] = { "အဝဟတာ", nil, "inc-apa", aliases = {"Abahattha"}, } m["inc-asa"] = { "သဥူရေသဳနဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-agu"] = { "ဂူဂျာရာ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-aka"] = { "ခေပ်သမဳရဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-ama"] = { "မဟာရာတ်သပ်ထရဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-ata"] = { "တာကာ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-avr"] = { "ဝရာခါဒါ အာပ်ပါပရာမ်သာ", 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"] = { "Kathiyawadi", nil, "gu", aliases = {"Kathiyawadi Gujarati", "Kathiawadi"}, } m["gu-lda"] = { "Lisan ud-Dawat Gujarati", nil, "gu", aliases = {"Lisan ud-Dawat", "LDA"}, } -- Hindi varieties m["hi-mum"] = { "Bombay Hindi", 3543151, "hi", aliases = {"Mumbai Hindi", "Bambaiyya Hindi"}, } m["hi-mid"] = { "Middle Hindi", nil, "inc-ohi", ancestors = "inc-ohi", } -- Konkani varieties m["kok-mid"] = { "Middle Konkani", nil, "kok", aliases = {"Medieval Konkani"}, } m["kok-old"] = { "Old Konkani", nil, "kok", aliases = {"Early Konkani"}, } -- Prakrits m["pra-ard"] = { "အာတ်ဓၟဂါတ်ဒဳ ပရာကရေတ်", 35217, "pra", aliases = {"Ardhamagadhi"}, } m["pra-hel"] = { "ဟေဠူ ပရာကရေတ်", 15080869, "pra", aliases = {"Elu", "Elu Prakrit", "Helu"}, } m["pra-kha"] = { "ခါဿာ ပရာကရေတ်", nil, "pra", aliases = {"Khasa"}, } m["pra-mag"] = { "မဂ္ဂဒိ ပရာကရေတ်", -- Not to be confused with Magahi (mag) 2652214, "pra", aliases = {"Magadhi"}, } m["pra-mah"] = { "မဟာရာတ်ထရဳ ပရာကရေတ်", 2586773, "pra", aliases = {"Maharashtri Prakrit", "Maharastri", "Maharashtri"}, } m["pra-pai"] = { "ပါအေတ်သာသဳ ပရာကရေတ်", 2995607, "pra-sau", aliases = {"Paisaci", "Paisachi"}, ancestors = "pra-sau" } m["pra-sau"] = { "သောရာသေနဳ ပရာကရေတ်", 2452885, "pra", aliases = {"Sauraseni", "Shauraseni"}, } m["pra-ava"] = { "အဗါန်တဳ", nil, "pra", aliases = {"Avanti Prakrit"}, } m["pra-pra"] = { "ပရာသဳယျာ", nil, "pra", aliases = {"Pracya Prakrit"}, } m["pra-bah"] = { "ပါလိကဳ", nil, "pra", aliases = {"Bahliki Prakrit"}, } m["pra-dak"] = { "ထေတ်သဳနတာယျ", nil, "pra", aliases = {"Daksinatya Prakrit"}, } m["pra-sak"] = { "သာကာရဳ", nil, "pra", aliases = {"Sakari Prakrit"}, } m["pra-can"] = { "ခေန်ဒါလဳ", nil, "pra", aliases = {"Candali Prakrit"}, } m["pra-sab"] = { "သာဗါရဳ", nil, "pra", aliases = {"Sabari Prakrit"}, } m["pra-abh"] = { "အဖိရဳ", nil, "pra", aliases = {"Abhiri Prakrit"}, } m["pra-dra"] = { "ဒရာမဳလဳ", nil, "pra", aliases = {"Dramili Prakrit"}, } m["pra-odr"] = { "အဝ်ဒရဳ", nil, "pra", aliases = {"Odri Prakrit"}, } -- Punjabi varieties m["pnb"] = { "Western Punjabi", 58635, "pa", "pa-Arab", } -- Sanskrit varieties m["vsn"] = { "Vedic Sanskrit", 36858, "sa", } m["cls"] = { "Classical Sanskrit", 9333703, "sa", } m["sa-bhs"] = { "Buddhist Hybrid Sanskrit", 248758, "sa", } m["sa-bra"] = { "Brahmanic Sanskrit", 139822891, "vsn", } m["sa-epi"] = { "Epic Sanskrit", 56702805, "cls", } m["sa-neo"] = { "New Sanskrit", nil, "sa", } m["sa-rig"] = { "Rigvedic Sanskrit", 139822680, "vsn", } -- Sinhalese varieties m["si-med"] = { "Medieval Sinhalese", nil, "si", aliases = {"Medieval Sinhala"}, } ------------------------------------------------------------------------- -- Iranian varieties -- ------------------------------------------------------------------------- m["qsb-bma"] = { "the BMAC substrate", 133187435, "und", family = "qfa-sub", aliases = {"the Bactria-Margiana substrate", "the Bactria-Margiana Archaeological Complex substrate"}, } -- Historical and current Iranian dialects m["ae-old"] = { "Old Avestan", 29572, "ae", aliases = {"Gathic Avestan"}, } m["ae-yng"] = { "Younger Avestan", 29572, "ae-old", aliases = {"Young Avestan"}, } m["bcc"] = { "Southern Balochi", 33049, "bal", aliases = {"Southern Baluchi"}, } m["bgp"] = { "Eastern Balochi", 33049, "bal", aliases = {"Eastern Baluchi"}, } m["bgn"] = { "Western Balochi", 33049, "bal", aliases = {"Western Baluchi"}, } m["bsg-ban"] = { "Bandari", nil, "bsg", } m["bsg-hor"] = { "Hormozi", nil, "bsg", } m["bsg-min"] = { "Minabi", nil, "bsg", } m["kho-old"] = { "Old Khotanese", nil, "kho", } m["kho-lat"] = { "Late Khotanese", nil, "kho-old", } m["peo-ear"] = { "Early Old Persian", nil, "peo", } m["peo-lat"] = { "Late Old Persian", nil, "peo", } m["pal-ear"] = { "Early Middle Persian", nil, "pal", } m["pal-lat"] = { "Late Middle Persian", nil, "pal", ancestors = "pal-ear", } m["ps-nwe"] = { "Northwestern Pashto", nil, "ps", } m["ps-cgi"] = { "Central Ghilzay", nil, "ps-nwe", } m["ps-mah"] = { "Mahsudi", nil, "ps-nwe", } m["ps-nea"] = { "Northeastern Pashto", nil, "ps", } m["ps-afr"] = { "Afridi", nil, "ps-nea", } m["ps-bng"] = { "Bangash", nil, "ps-nea", } m["ps-xat"] = { "Khatak", nil, "ps-nea", } m["ps-pes"] = { "Peshawari", nil, "ps-nea", } m["ps-sea"] = { "Southeastern Pashto", nil, "ps", } 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"] = { "Southwestern Pashto", nil, "ps", } m["ps-kan"] = { "Kandahari", nil, "ps-swe", } m["ps-jad"] = { "Jadrani", nil, "ps", ancestors = "ira-pat-pro" } m["xme-azr"] = { "Old Azari", nil, "xme-ott", aliases = {"Old Azeri", "Azari", "Azeri", "Āḏarī", "Adari", "Adhari"}, } m["xme-ttc-cen"] = { "Central Tati", nil, "xme-ott", } m["xme-ttc-eas"] = { "Eastern Tati", nil, "xme-ott", } m["xme-ttc-nor"] = { "Northern Tati", nil, "xme-ott", } m["xme-ttc-sou"] = { "Southern Tati", nil, "xme-ott", } m["xme-ttc-wes"] = { "Western Tati", nil, "xme-ott", } m["xmn"] = { "Manichaean Middle Persian", nil, "pal-lat", } m["fa-ear"] = { "Early New Persian", 127413796, "fa", ancestors = "pal-lat", translit = "fa-cls-translit", } m["fa-cls"] = { "Classical Persian", 9168, "fa", ancestors = "fa-ear", translit = "fa-cls-translit", } m["fa-ira"] = { "Iranian Persian", 3513637, "fa", aliases = {"Modern Persian", "Western Persian"}, translit = "fa-ira-translit", } m["prs"] = { "Dari", 178440, "fa", aliases = {"Dari Persian", "Central Persian", "Eastern Persian", "Afghan Persian"}, translit = "fa-cls-translit", } m["haz"] = { "Hazaragi", 33398, "prs", translit = "fa-cls-translit", } m["os-dig"] = { "Digor Ossetian", 3027861, "os", aliases = {"Digoron", "Digor"}, } m["os-iro"] = { "Iron Ossetian", nil, "os", aliases = {"Iron"}, } m["sog-ear"] = { "Early Sogdian", nil, "sog", } m["sog-lat"] = { "Late Sogdian", nil, "sog-ear", } m["ro-MD"] = { "Moldovan", 36392, "ro", aliases = {"Moldavian"}, } m["oru-kan"] = { "Kaniguram", 6363164, "oru", } m["oru-log"] = { "Logar", nil, "oru", } m["oos"] = { "Old Ossetic", 65455882, "xln", } m["oos-ear"] = { "Early Old Ossetic", nil, "oos", } m["oos-lat"] = { "Late Old Ossetic", nil, "oos", } m["rdb-jir"] = { "Jirofti", nil, "rdb", } m["rdb-kah"] = { "Kahnuji", nil, "rdb", } -- 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 Esmaili", nil, "fay", } m["fay-gav"] = { "Gavkoshaki", nil, "fay", } m["fay-kho"] = { "Khollari", nil, "fay", } m["fay-kon"] = { "Kondazi", nil, "fay", } m["fay-kzo"] = { "Old Kazeruni", nil, "fay", } m["fay-mas"] = { "Masarami", nil, "fay", } m["fay-pap"] = { "Papuni", nil, "fay", } m["fay-sam"] = { "Samghani", nil, "fay", } m["fay-shr"] = { "Shirazi", nil, "fay", } m["fay-sho"] = { "Old Shirazi", nil, "fay", } m["fay-kar"] = { "Khargi", nil, "fay", } m["fay-sor"] = { "Sorkhi", nil, "fay", } -- Talysh lects m["tly-cen"] = { "Central Talysh", nil, "tly", } 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"] = { "Northern Talysh", nil, "tly", } m["tly-aze"] = { "Azerbaijani Talysh", nil, "tly-nor", } m["tly-anb"] = { "Anbarani", nil, "tly-nor", } m["tly-sou"] = { "Southern Talysh", nil, "tly", } m["tly-fum"] = { "Fumani", nil, "tly-sou", } m["tly-msu"] = { "Masulei", nil, "tly-sou", } 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"] = { "Ashtiani", 3436590, "xme-taf", } 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"] = { "Jowshaqani", nil, "xme-ker", } 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"] = { "Zoroastrian Dari", 32389, "xme-ker", aliases = {"Behdināni", "Gabri", "Gavrŭni", "Gabrōni"}, } m["xme-krm"] = { "Kermani", nil, "xme-ker", } m["xme-yaz"] = { "Yazdi", nil, "xme-ker", } 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"] = { "Takestani", nil, "tks", } m["tks-cal"] = { "Chali Tati", nil, "tks", aliases = {"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"] = { "Roshani", 2597566, "sgh-rsx", aliases = {"Rushani", "Rōšāni"}, } m["sgh-xgb"] = { "Khughni-Bajui", nil, "sgh", } 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"] = { "Kamviri", 1193495, "bsh", aliases = {"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" }, } m["itc-lan"] = { "Lanuvian", 16890829, "itc-ola", aliases = {"Lanuvine"}, } m["itc-pra"] = { "Praenestine", 16889772, "itc-ola", aliases = {"Praenestinian"}, } m["la-cla"] = { "လပ်တေန်ဝၚ်ဂန္ထ", 253854, "la", } m["la-vul"] = { "လပ်တေန်အရိုၚ်", 37560, "la-cla", } m["la-afr"] = { "African Romance", 162064, "roa-pro", } m["la-lat"] = { "လပ်တေန်လဇုဲ", 1503113, "la", ancestors = "la-cla", } m["la-med"] = { "လပ်တေန် ခေတ်လဒေါဝ်", 1163234, "la", ancestors = "la-lat", } m["la-eme"] = { "လပ်တေန်ခေတ်လဒေါဝ်ဗွဲမပြဟ်", nil, "la-med", } m["la-ecc"] = { "သာသနာခရေတ်လပ်တေန်", 1247932, "la", aliases = {"Church Latin", "Liturgical Latin"}, ancestors = "la-lat", } m["la-ren"] = { "လပ်တေန်ခေတ်ကလေၚ်ပလေဝ်ပ္တိုန်တၟိ", 499083, "la", ancestors = "la-med", } m["la-new"] = { "လပ်တေန်တၟိ", 1248221, "la", aliases = {"Modern Latin"}, ancestors = "la-ren", } m["la-con"] = { "လပ်တေန်ခေတ်ပြိုၚ်ပ္ကာန်", 1246397, "la-new", } ------------------------------------------------------------------------- -- Miscellaneous Italic varieties -- ------------------------------------------------------------------------- m["xfa-cap"] = { "Capenate", 133182969, "xfa", } m["osc-luc"] = { "Lucanian", 3265025, "osc", } m["osc-sam"] = { "Samnite", 133184287, "osc", } ------------------------------------------------------------------------- -- Romance varieties -- ------------------------------------------------------------------------- m["roa-pro"] = { "Proto-Romance", 3408029, "la-lat", ancestors = "la-vul", } ----------------------------------------------------- -- Catalan varieties -- ----------------------------------------------------- m["ca-val"] = { "Valencian", 32641, "ca", } ----------------------------------------------------- -- Franco-Provençal varieties -- ----------------------------------------------------- m["frp-old"] = { "Old Franco-Provençal", nil, "frp", } ----------------------------------------------------- -- French and derived creole varieties -- ----------------------------------------------------- m["fro-nor"] = { "Old Northern French", 2044917, "fro", aliases = {"Old Norman", "Old Norman French"}, } m["fro-pic"] = { "Picard Old French", nil, "fro", } m["xno"] = { "အာန်ဂဝ်-နဝ်မာန်", 35214, "fro-nor", } m["xno-law"] = { "Law French", 2044323, "xno", } m["zrp"] = { "Zarphatic", 36994, "fro", aliases = {"Judeo-French"}, pseudo_families = "qfa-jew", } m["fr-CA"] = { "Canadian French", 1450506, "fr", } m["fr-CH"] = { "Swiss French", 1480152, "fr", } m["fr-aca"] = { "Acadian French", 415109, "fr", } m["fr-lou"] = { "Louisiana French", 3083213, "fr", } m["fr-mis"] = { "Missouri French", 3083210, "fr", } m["frc"] = { "Cajun French", 880301, "fr-lou", } m["ht-sdm"] = { "Saint Dominican Creole French", nil, "ht", ancestors = "fr", } -- Norman varieties m["nrf-grn"] = { "Guernsey Norman", 56428, "nrf", aliases = {"Guernsey"}, } m["nrf-jer"] = { "Jersey Norman", 56430, "nrf", aliases = {"Jersey"}, } ----------------------------------------------------- -- Gallo-Italic varieties -- ----------------------------------------------------- m["egl-old"] = { "Old Emilian", nil, "egl", } m["lij-old"] = { "လဳဂူရဳယာန်တြေံ", nil, "lij", aliases = {"Old Genoese"}, } m["lmo-old"] = { "လောန်ဗါတ်တြေံ", 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"] = { "Old Italian", nil, "it", } m["it-CH"] = { "Switzerland Italian", 672147, "it", } -- Other Italo-Romance varieties m["nap-old"] = { "Old Neapolitan", nil, "nap", } m["scn-old"] = { "Old Sicilian", nil, "scn", } ----------------------------------------------------- -- Occitan varieties -- ----------------------------------------------------- m["oc-auv"] = { "Auvergnat", 35359, "oc", aliases = {"Auvernhat", "Auvergnese"}, } m["oc-gas"] = { "ဂေါသ်သကာန်", 35735, "oc", } -- standardized dialect of Gascon m["oc-ara"] = { "Aranese", 10196, "oc-gas", } m["oc-lan"] = { "လာမ်ဂဝေအ်ဒံက်ဃှေန်", 942602, "oc", aliases = {"Lengadocian"}, } m["oc-lim"] = { "လိမူသေန်", 427614, "oc", } m["oc-pro"] = { "ဖရဝ်ဗေန်သော", 241243, "oc", aliases = {"Provencal"}, } m["oc-pro-old"] = { "ဖရဝ်ဗေန်သောတြေံ", 2779185, "pro", } m["oc-viv"] = { "ဝဳဝါရုဝ်-အောဖှာၚ်", 1649613, "oc", } m["oc-jud"] = { "Shuadit", 56472, "oc", aliases = { "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"] = { "Brazilian Portuguese", 750553, "pt", } m["pt-PT"] = { "European Portuguese", 922399, "pt", } -- 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"] = { "Logudorese", 777974, "sc", aliases = {"Logudorese Sardinian"}, } m["sc-nuo"] = { "Nuorese", nil, "sc-src", aliases = {"Nuorese Sardinian"}, } m["sc-sro"] = { "Campidanese", 35348, "sc", aliases = {"Campidanese Sardinian"}, } ----------------------------------------------------- -- Spanish varieties -- ----------------------------------------------------- m["es-ear"] = { "Early Modern Spanish", 5364419, "es", } m["es-AR"] = { "Rioplatense Spanish", 509780, "es", } m["es-BO"] = { "Bolivian Spanish", 510730, "es", } m["es-CL"] = { "Chilean Spanish", 857295, "es", } m["es-CO"] = { "Colombian Spanish", 1115875, "es", } m["es-CU"] = { "Cuban Spanish", 824909, "es", } m["es-MX"] = { "Mexican Spanish", 616620, "es", } m["es-PE"] = { "Peruvian Spanish", 736236, "es", } m["es-PH"] = { "Philippine Spanish", 22091406, "es", } m["es-US"] = { "United States Spanish", 2301077, "es", aliases = {"US Spanish"}, } --use label "US Spanish" to put Spanish terms in this category m["es-PR"] = { "Puerto Rican Spanish", 7258609, "es", } m["es-VE"] = { "Venezuelan Spanish", 840017, "es", } m["es-lun"] = { "Lunfardo", 1401612, "es", } ---------------------------------------------------------------------------------------------------------------------- -- Japonic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Japanese varieties m["ja-mid"] = { "ဂျပါန် လဒေါဝ်", 6841474, "ojp", ancestors = "ojp", } m["ja-mid-ear"] = { "Early Middle Japanese", 182695, "ja-mid", } m["ja-mid-lat"] = { "ဂျပါန်တြေံခေတ်လဇုဲ", 1816184, "ja-mid", ancestors = "ja-mid-ear", } m["ja-ear"] = { "Early Modern Japanese", 5326692, "ja", ancestors = "ja-mid-lat", } m["ojp-eas"] = { "Eastern Old Japanese", 65247957, "ojp", } m["ja-cla"] = { "Classical Japanese", 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", } ---------------------------------------------------------------------------------------------------------------------- -- Koreanic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Korean varieties m["oko-lat"] = { "ကိုဝ်ရဳယျာတြေံခေတ်လဇုဲ", nil, "oko", } m["okm-ear"] = { "Early Middle Korean", nil, "okm", } m["ko-cen"] = { "Central Korean", nil, "ko", } m["ko-gyg"] = { "Gyeonggi Korean", 485492, "ko-cen", aliases = {"Seoul Korean"}, } m["ko-chu"] = { "Chungcheong Korean", 625800, "ko-cen", aliases = {"Hoseo Korean"}, } m["ko-hwa"] = { "Hwanghae Korean", 16183706, "ko-cen", } m["ko-gan"] = { "Gangwon Korean", 11260444, "ko-cen", aliases = {"Yeongdong Korean"}, } m["ko-gys"] = { "Gyeongsang Korean", 488002, "ko", aliases = {"Southeastern Korean"}, } m["ko-jeo"] = { "Jeolla Korean", 11250166, "ko", aliases = {"Southwestern Korean"}, } m["ko-pyo"] = { "Pyongan Korean", 7263142, "ko", aliases = {"Northwestern Korean"}, } m["ko-ham"] = { "Hamgyong Korean", 860702, "ko", aliases = {"Northeastern Korean"}, } m["ko-yuk"] = { "Yukjin Korean", 16171275, "ko", aliases = {"Yukchin Korean", "Ryukjin Korean", "Ryukchin Korean"}, } ---------------------------------------------------------------------------------------------------------------------- -- Mongolic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["xng-ear"] = { "Early Middle Mongol", nil, "xng", } m["xng-lat"] = { "Late Middle Mongol", nil, "xng", ancestors = "xng-ear", } m["mn-kha"] = { "Khalkha Mongolian", 6399808, "mn", aliases = {"Khalkha"}, } m["mn-ord"] = { "Ordos Mongolian", 716904, "mn", aliases = {"Ordos"}, } m["mn-cha"] = { "Chakhar Mongolian", 907425, "mn", aliases = {"Chakhar"}, } m["mn-khr"] = { "Khorchin Mongolian", 3196210, "mn", aliases = {"Khorchin"}, } ---------------------------------------------------------------------------------------------------------------------- -- Niger-Congo varieties -- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------- -- Akan varieties -- ----------------------------------------------------- m["tw"] = { "Twi Akan", 36850, "ak", aliases = {"Twi"}, } m["abr"] = { "Abron", 34831, "tw", aliases = {"Brong", "Bono", "Bono Twi"}, } m["tw-asa"] = { "Asante Twi", 19261685, "tw", aliases = {"Asante", "Ashanti", "Ashante"}, } m["tw-aku"] = { "Akuapem Twi", 31150449, "tw", aliases = {"Akuapem", "Akuapim", "Akwapem Twi", "Akwapi"}, } m["fat"] = { "Fante Akan", 35570, "ak", aliases = {"Fante", "Fanti", "Fantse", "Mfantse"}, } m["wss"] = { "Wasa", 36914, "ak", } -- creole m["alv-kro"] = { "Kromanti", 1093206, "crp-mar", } ----------------------------------------------------- -- Bantu varieties -- ----------------------------------------------------- m["bnt-cmn"] = { "Common Bantu", nil, "bnt-pro", } 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"] = { "Maasina Fulfulde", 3915322, "ff", } m["fue"] = { -- no enwiki entry as of yet but frwiki and pmswiki have one "Borgu Fulfulde", 12952426, "ff", } m["fuh"] = { -- no enwiki entry as of yet but frwiki and pmswiki have one "Western Niger Fulfulde", 12952430, "ff", } m["fuq"] = { -- no enwiki entry as of yet but frwiki, hrwiki and pmswiki have one "Central-Eastern Niger Fulfulde", 12628799, "ff", } m["fuv"] = { -- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki and swwiki have one "Nigerian Fulfulde", 36129, "ff", } m["fub"] = { -- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki, ptwiki, swwiki and yowiki have one "Adamawa Fulfulde", 34776, "ff", } m["fui"] = { -- no enwiki entry as of yet but pmswiki and swwiki have one "Bagirmi Fulfulde", 11003859, "ff", } ---------------------------------------------------------------------------------------------------------------------- -- Papuan varieties -- ---------------------------------------------------------------------------------------------------------------------- m["kze"] = { "Kosena", 12952663, "auy", } m["ont"] = { "Ontenu", 3352827, "gaj", aliases = {"Ontena"}, } ---------------------------------------------------------------------------------------------------------------------- -- Salishan varieties -- ---------------------------------------------------------------------------------------------------------------------- m["lut-nor"] = { "Northern Lushootseed", nil, "lut", aliases = {"Northern Puget Sound Salish"}, } m["slh"] = { "Southern Lushootseed", 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", } ----------------------------------------------------- -- Chinese varieties -- ----------------------------------------------------- ------------- Old Chinese, Middle Chinese ------------- m["och-ear"] = { "Early Old Chinese", nil, "och", } m["och-lat"] = { "Late Old Chinese", nil, "och", } m["ltc-ear"] = { "Early Middle Chinese", nil, "ltc", } m["ltc-lat"] = { "Late Middle Chinese", nil, "ltc", } ------------- Classical/Literary varieties ------------- -- FIXME: Temporary. m["lzh-shi"] = { "Traditional Chinese poetry", 1759242, "lzh", } -- FIXME: Temporary. m["lzh-cii"] = { "Ci", 1091366, "lzh", } -- FIXME: Temporary. m["lzh-yue"] = { "Classical Cantonese", nil, "lzh", } -- FIXME: Temporary. m["lzh-cmn"] = { "Classical Mandarin", nil, "lzh", } -- FIXME: Temporary. m["lzh-tai"] = { "Classical Taishanese", nil, "lzh", } -- FIXME: Temporary. m["lzh-cmn-TW"] = { "Classical Taiwanese Mandarin", nil, "lzh-cmn", } -- FIXME: Temporary. m["lzh-VI"] = { "Vietnamese Classical Chinese", 17034227, "lzh", } -- FIXME: Temporary. m["lzh-KO"] = { "Korean Classical Chinese", 10496257, "lzh", ietf_subtag = "lzh-KR" -- KR = South Korea, as there is no code for Korea as a whole } -- FIXME: Temporary. m["lzh-lit"] = { "Literary Chinese", nil, "lzh", } -- FIXME: Temporary. FIXME: Do we need this? How does it differ from Old Chinese? m["lzh-pre"] = { "Pre-Classical Chinese", nil, "lzh", } ------------- Written Vernacular varieties ------------- -- FIXME: Temporary. m["cmn-wvc"] = { "Written vernacular Mandarin", 783605, "cmn", } -- FIXME: Temporary. FIXME: How does this differ from "Literary Cantonese"? m["yue-wvc"] = { "Written vernacular Cantonese", nil, "yue", } -- FIXME: Temporary. m["zhx-tai-wvc"] = { "Written vernacular Taishanese", nil, "zhx-tai", } ------------- 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"] = { "Beijing Mandarin", 1147606, "cmn-bec", } -- FIXME: Temporary. m["cmn-bec"] = { "Beijingic Mandarin", 2169652, "cmn", } -- FIXME: Temporary. NOTE: The Linguist List uses the code cmn-zho. m["cmn-cep"] = { "Central Plains Mandarin", 3048775, "cmn", aliases = {"Zhongyuan Mandarin"}, } m["cmn-ear"] = { "Early Mandarin", 837169, "cmn", ancestors = "ltc", } -- FIXME: Temporary. m["cmn-gua"] = { "Guanzhong Mandarin", 3431648, "cmn-cep", } -- FIXME: Temporary. Appears to be a subdialect of Guiliu Mandarin, which in turn is a subdialect of Southwestern Mandarin. m["cmn-gui"] = { "Guilin Mandarin", 11111636, "cmn-sow", } m["cmn-jhu"] = { "Jianghuai Mandarin", 2128953, "cmn", aliases = {"Lower Yangtze Mandarin"}, } -- FIXME: Temporary. m["cmn-lan"] = { "Lanyin Mandarin", 662754, "cmn", } -- FIXME: Temporary. m["cmn-MY"] = { "Malaysian Mandarin", 13646143, "cmn", } -- FIXME: Temporary. m["cmn-nan"] = { "Nanjing Mandarin", 2681098, "cmn-jhu", } -- FIXME: Temporary. m["cmn-noe"] = { "Northeastern Mandarin", 1064504, "cmn", } -- FIXME: Temporary. m["cmn-PH"] = { "Philippine Mandarin", 7185155, "cmn", } -- FIXME: Temporary. m["cmn-SG"] = { "Singapore Mandarin", 1048980, "cmn", } -- FIXME: Temporary. m["cmn-sow"] = { "Southwestern Mandarin", 2609239, "cmn", } -- FIXME: Temporary. Appears to be a subdialect of Jilu Mandarin. m["cmn-tia"] = { "Tianjin Mandarin", 7800220, "cmn", } -- 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"] = { "Taiwanese Mandarin", 262828, "cmn", } -- 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"] = { "Wuhan Mandarin", 11124731, "cmn-sow", aliases = {"Wuhanese"}, } -- FIXME: Temporary. Appears to be a subdialect of Lanyin Mandarin. m["cmn-xin"] = { "Xining Mandarin", nil, "cmn-lan", } -- FIXME: Temporary. m["cmn-yan"] = { "Yangzhou Mandarin", nil, "cmn-jhu", } ------------- Cantonese varieties ------------- -- FIXME: Temporary. m["yue-gua"] = { "Guangzhou Cantonese", nil, "yue", } -- FIXME: Temporary. Given the codes yue-yue or yue-can in the Linguist List. m["yue-HK"] = { "Hong Kong Cantonese", 5894342, "yue", } -- FIXME: Temporary. FIXME: How does this differ from "Written vernacular Cantonese"? m["yue-lit"] = { "Literary Cantonese", 2472605, "yue", } ------------- Wu varieties ------------- m["wuu-han"] = { "Hangzhounese", 5648144, "wuu", } m["wuu-nin"] = { "Ningbonese", 3972199, "wuu", } -- FIXME: Temporary. m["wuu-nor"] = { "Northern Wu", 7675988, "wuu", aliases = {"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"] = { "Shadi Wu", 6112340, "wuu-nor", } m["wuu-sha"] = { "Shanghainese", 36718, "wuu-nor", } m["wuu-suz"] = { "Suzhounese", 831744, "wuu-nor", } -- FIXME: Temporary. May be converted into a full language and/or split. m["wuu-wen"] = { "Wenzhounese", 710218, "wuu", } ------------- Xiang varieties ------------- m["hsn-lou"] = { "Loudi Xiang", 10943823, "hsn-old", } m["hsn-hya"] = { "Hengyang Xiang", 20689035, "hsn-hzh", } m["hsn-hzh"] = { "Hengzhou Xiang", nil, "hsn", } m["hsn-new"] = { "New Xiang", 7012696, "hsn", aliases = {"Chang-Yi"}, } m["hsn-old"] = { "Old Xiang", 7085453, "hsn", aliases = {"Lou-Shao"}, } ------------- Hakka varieties ------------- -- FIXME: Temporary. m["hak-dab"] = { "Dabu Hakka", 19855566, "hak", -- formerly hak-TW but seems to be spoken primary in Dabu County in Guangdong } -- FIXME: Temporary. m["hak-eam"] = { "Early Modern Hakka", nil, "hak", } -- FIXME: Temporary. m["hak-hai"] = { "Hailu Hakka", 17038519, "hak", -- often considered a Taiwanese lect but also spoken in [[Shanwei]], [[Guangdong]] } -- FIXME: Temporary. m["hak-HK"] = { "Hong Kong Hakka", 2675834, "hak", } -- FIXME: Temporary. m["hak-hui"] = { "Huiyang Hakka", 16873881, "hak", } -- FIXME: Temporary. m["hak-hui-MY"] = { "Malaysian Huiyang Hakka", nil, "hak-hui", } -- FIXME: Temporary. Similar to and possibly the parent of Sixian Hakka in Taiwan. m["hak-mei"] = { "Meixian Hakka", 839295, "hak", aliases = {"Moiyan Hakka", "Meizhou Hakka"}, } -- FIXME: Temporary. m["hak-six"] = { "Sixian Hakka", 9668261, "hak-TW", } -- FIXME: Temporary. m["hak-TW"] = { "Taiwanese Hakka", 2391532, "hak", } -- FIXME: Temporary. m["hak-zha"] = { "Zhao'an Hakka", 6703311, "hak", aliases = {"Zhangzhou Hakka"}, } -- Southern Min varieties -- m["nan-anx"] = { "Anxi Hokkien", 97064149, "nan-qua", } m["nan-cha"] = { "Changtai Hokkien", nil, "nan-zha", } m["nan-hou"] = { "Houlu Min", 19855492, "nan-dat", } m["nan-hui"] = { "Hui'an Hokkien", 16241797, "nan-qua", } m["nan-jin"] = { "Jinjiang Hokkien", 11089375, "nan-qua", } m["nan-kin"] = { "Kinmenese Hokkien", 56278342, "nan-xia", aliases = {"Kinmen Hokkien"}, } m["nan-med"] = { "Medan Hokkien", 6805114, "nan-zha", } m["nan-pen"] = { "Penang Hokkien", 11120689, "nan-zha", } m["nan-hbl-PH"] = { "Philippine Hokkien", 3236692, "nan-qua", } m["nan-qia"] = { "Qianlu Min", 19842517, "nan-dat", } m["nan-qua"] = { "Quanzhou Hokkien", 2251677, "nan-hbl", aliases = {"Chinchew", "Choanchew"}, } -- FIXME: Temporary? Derived from both Quanzhou and Zhangzhou Hokkien. m["nan-hbl-SG"] = { "Singapore Hokkien", 3846528, "nan-hbl", } m["nan-spm"] = { "Southern Malaysian Hokkien", 7570322, "nan-qua", aliases = {"Southern Malaysia Hokkien", "Southern Peninsular Malaysian Hokkien", "Southern Peninsular Malaysia Hokkien"} } m["nan-hbl-TW"] = { "Taiwanese Hokkien", 36778, "nan-hbl", } m["nan-ton"] = { "Tong'an Hokkien", nil, "nan-xia", } m["nan-xia"] = { "Xiamen Hokkien", 68744, "nan-hbl", aliases = {"Amoy", "Amoyese", "Amoynese", "Xiamenese"}, } m["nan-yon"] = { "Yongchun Hokkien", 65118728, "nan-qua", } m["nan-zha"] = { "Zhangzhou Hokkien", 8070492, "nan-hbl", aliases = {"Changchew", "Chiangchew", "Changchow"}, } m["nan-zho"] = { "Zhao'an Hokkien", 65118728, "nan-zha", aliases = {"Zhao'an", "Chawan", "Chawan Hokkien"}, } m["nan-zhp"] = { "Zhangping Hokkien", 15937822, "nan-zha", } ------------- Other Min varieties ------------- -- FIXME: Temporary. Affiliation within Min uncertain; some combination of Eastern and Southern. m["zhx-zho"] = { "Zhongshan Min", 8070958, "zh", } ------------- Other Chinese varieties ------------- -- FIXME: Temporary. Affiliation within Chinese uncertain; possibly Yue. m["zhx-dan"] = { "Danzhou Chinese", 2578935, "zh", } ------------- Chinese romanization varieties ------------- -- [[Wiktionary:Information desk/2022/June#Etymology Coding Issue]] -- [[Wiktionary:Grease pit/2022/June#Transliteration Systems in Etymologies 2]] m["cmn-pinyin"] = { "Hanyu Pinyin", 42222, "cmn", aliases = {"Pinyin"}, } m["cmn-tongyong"] = { "Tongyong Pinyin", 700739, "cmn", } m["cmn-wadegiles"] = { "Wade–Giles", 208442, "cmn", aliases = {"Wade-Giles", "Wade Giles"}, } m["zh-postal"] = { "Postal Romanization", 151868, "zh", } -- Chinese cyrillization m["cmn-palladius"] = { "Palladius", 1234239, "cmn", aliases = {"Palladius system"}, } ----------------------------------------------------- -- Tibetic varieties -- ----------------------------------------------------- m["adx"] = { "Amdo Tibetan", 56509, "bo", } m["kbg"] = { "Khamba", 12952626, "bo", } m["khg"] = { "Khams Tibetan", 56601, "bo", } m["tsk"] = { "Tseku", 11159532, "bo", } ---------------------------------------------------------------------------------------------------------------------- -- Tai-Kadai varieties -- ---------------------------------------------------------------------------------------------------------------------- m["th-old"] = { "သေံတြေံ", nil, "tai-swe-pro", wikipedia_article = "Thai language#Old Thai", } m["th-suk"] = { "သူခိုဝ်ထိုၚ် သေံတြေံ", -- 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"] = { "အယုဒ္ဓယ သေံတြေံ", -- 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"] = { "Shangsi Zhuang", 13216, "za", } ---------------------------------------------------------------------------------------------------------------------- -- Turkic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["trk-cmn-pro"] = { "Proto-Common Turkic", 1126028, "trk-pro", } m["trk-ogr-pro"] = { "Proto-Oghur", 1422731, "trk-pro", family = "trk-ogr", } m["trk-bul-pro"] = { "Proto-Bulgar", nil, "trk-ogr-pro", } m["trk-ogz-pro"] = { "Proto-Oghuz", 494600, "trk-pro", family = "trk-ogz", aliases = {"Southwestern Common Turkic"}, } m["crh-dbj"] = { "Dobrujan Tatar", 12811566, "crh", aliases = {"Romanian Tatar"}, } m["cv-ana"] = { "Anatri Chuvash", nil, "cv", aliases = {"Anatri", "Lower Chuvash"}, } m["cv-mid"] = { "Middle Chuvash", nil, "cv", ancestors = "cv-old", } m["cv-old"] = { "Old Chuvash", nil, "cv", ancestors = "xbo-vol", } m["cv-vir"] = { "Viryal Chuvash", 4278332, "cv", aliases = {"Viryal", "Upper Chuvash"}, } m["kjh-fyu"] = { "Fuyu Kyrgyz", 2598963, "kjh", aliases = {"Fuyu Kirgiz", "Fuyu Kirghiz", "Manchurian Kyrgyz", "Manchurian Kirgiz", "Manchurian Kirghiz"}, } m["klj-arg"] = { "Arghu", 33455, "klj", ancestors = "trk-cmn-pro", } m["otk-kir"] = { "Old Kirghiz", 83142, "otk", aliases = {"Yenisei Turkic", "Yenisei Kyrgyz"}, } m["otk-ork"] = { "Orkhon Turkic", 31295480, "otk", } m["qwm-cum"] = { "Cuman", 1075050, "qwm", aliases = {"Kuman", "Polovtsian", "Polovcian"}, } m["qwm-arm"] = { "Armeno-Kipchak", 2027503, "qwm", ancestors = "qwm-cum", aliases = {"Xıpçaχ tili", "Tatarça"}, } m["qwm-mam"] = { "Mamluk-Kipchak", 4279942, "qwm", aliases = {"Mameluk-Kipchak"}, } m["az-cls"] = { "Classical Azerbaijani", nil, "az", aliases = {"Classical Azeri"}, } m["qxq"] = { "Qashqai", 13192, "az", aliases = {"Qaşqay", "Qashqayi", "Kashkai", "Kashkay"}, } m["tr-CY"] = { "Cypriot Turkish", 7917392, "tr", } m["uz-afg"] = { -- NOTE: has ISO 639-3 code uzs assigned to it. "Afghan Uzbek", 1066787, "uz", aliases = {"Southern Uzbek"}, translit = "uz-afg-translit", } m["xbo-dan"] = { "Danube Bulgar", nil, "xbo", } m["xbo-vol"] = { "Volga Bulgar", nil, "xbo", } ---------------------------------------------------------------------------------------------------------------------- -- Uralic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["fiu-pro"] = { "ဖေန်နဝ်-ဥူဂရေတ်-အခိုက်ကၞာ", 79890, "urj-pro", } m["urj-fpr-pro"] = { "ဖေန်နဝ်-ပဵုမေတ်-အခိုက်ကၞာ", nil, "urj-pro", } m["krl-nor"] = { "North Karelian", 125501196, "krl", } m["krl-sou"] = { "South Karelian", 129812730, "krl", } m["mns-eas"] = { "Eastern Mansi", 30311755, "mns-cen", } m["mns-wes"] = { "Western Mansi", 30311756, "mns-cen", } ---------------------------------------------------------------------------------------------------------------------- -- 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"] = { "taxonomic name", 522190, "mul", } ----------------------------------------------------- -- Elamite varieties -- ----------------------------------------------------- m["elx-old"] = { "Old Elamite", nil, "elx", } m["elx-mid"] = { "Middle Elamite", nil, "elx", } m["elx-neo"] = { "Neo-Elamite", nil, "elx", } m["elx-ach"] = { "Achaemenid Elamite", nil, "elx", } ----------------------------------------------------- -- Substrates -- ----------------------------------------------------- -- Pre-Roman substrates m["qsb-ibe"] = { "Paleo-Hispanic", 246801, "und", family = "qfa-sub", aliases = {"Palaeo-Hispanic", "Paleohispanic", "Palaeohispanic", "Paleo-Iberian", "Palaeo-Iberian"}, } m["qsb-bal"] = { "Paleo-Balkan", 1815070, "und", family = "qfa-sub", aliases = {"Palaeo-Balkan", "Paleobalkan", "Palaeobalkan"}, } m["xaq"] = { "Aquitanian", 500522, "euq-pro", family = "euq", } return require("Module:languages").finalizeData(m, "language", true) 9uheqvyyc715jluhekguy3t6fc6aff9 402265 402262 2026-10-01T05:51:44Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402265 Scribunto text/plain 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", } -- Tuareg lects m["thv"] = { "Tamahaq", 56703, "tmh", } m["ttq"] = { "ထာဝါလပ်မေတ်", 56390, "tmh", } m["taq"] = { "Tamasheq", 4670066, "tmh", } m["thz"] = { "ထေယျုက်", 56388, "tmh", } m["thv-ght"] = { "Ghat", 47012900, "thv", } -------------------------------------------------------------------------------------- -- Cushitic varieties -- -------------------------------------------------------------------------------------- -- Oromo varieties m["hae"] = { "Harar Oromo", 5330355, "om", aliases = {"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", } m["egy-mid"] = { "အဳဂျေပ်လဒေါဝ်", 657330, "egy", aliases = {"Classical Egyptian"}, } m["egy-nmi"] = { "Neo-Middle Egyptian", 123735278, "egy", aliases = {"Égyptien de tradition", "Traditional Egyptian"}, } m["egy-lat"] = { "အဳဂျေပ်လဇုဲ", 1852329, "egy", } ----------------------------------------------------- -- Coptic varieties -- ----------------------------------------------------- m["cop-akh"] = { "Akhmimic Coptic", 125176464, "cop", aliases = {"Akhmimic"}, } m["cop-boh"] = { "Bohairic Coptic", 890733, "cop", aliases = {"Bohairic", "Memphitic Coptic", "Memphitic"}, } m["cop-ggg"] = { "Coptic Dialect G", nil, "cop", aliases = {"Dialect G", "Mansuric Coptic", "Mansuric"}, } m["cop-jjj"] = { "Coptic Dialect J", nil, "cop", } m["cop-kkk"] = { "Coptic Dialect K", nil, "cop", } m["cop-ppp"] = { "Coptic Dialect P", nil, "cop", aliases = {"Proto-Theban Coptic", "Palaeo-Theban Coptic"}, } m["cop-fay"] = { "Fayyumic Coptic", 1399115, "cop", aliases = {"Fayyumic", "Faiyumic Coptic", "Faiyumic", "Fayumic Coptic", "Fayumic", "Bashmuric Coptic", "Bashmuric"}, } m["cop-her"] = { "Hermopolitan Coptic", nil, "cop", aliases = {"Hermopolitan", "Coptic Dialect H", "Ashmuninic", "Ashmuninic Coptic"}, } m["cop-lyc"] = { "Lycopolitan Coptic", nil, "cop", aliases = { "Lycopolitan", "Assiutic Coptic", "Asyutic Coptic", "Assiutic", "Asyutic", "Lyco-Diospolitan Coptic", "Lyco-Diospolitan", "Subakhmimic Coptic", "Subakhmimic" }, } m["cop-old"] = { "Old Coptic", 115518040, "cop", } m["cop-oxy"] = { "Oxyrhynchite Coptic", nil, "cop", aliases = {"Oxyrhynchite", "Mesokemic Coptic", "Mesokemic", "Middle Egyptian Coptic"}, } m["cop-ply"] = { "Proto-Lycopolitan Coptic", nil, "cop", aliases = {"Coptic Dialect i", "Proto-Lyco-Diospolitan Coptic"}, } m["cop-sah"] = { "Sahidic Coptic", 2645851, "cop", aliases = {"Sahidic", "Saidic Coptic", "Saidic", "Thebaic Coptic", "Thebaic"}, } -------------------------------------------------------------------------------------- -- Semitic varieties -- -------------------------------------------------------------------------------------- ----------------------------------------------------- -- Akkadian varieties -- ----------------------------------------------------- m["akk-old"] = { "Old Akkadian", nil, "akk", } m["akk-obb"] = { "Old Babylonian", nil, "akk", } m["akk-oas"] = { "Old Assyrian", nil, "akk", } m["akk-mbb"] = { "Middle Babylonian", nil, "akk", } m["akk-mas"] = { "Middle Assyrian", nil, "akk", } m["akk-nbb"] = { "Neo-Babylonian", nil, "akk", } m["akk-nas"] = { "Neo-Assyrian", nil, "akk", } m["akk-lbb"] = { "Late Babylonian", nil, "akk", } m["akk-stb"] = { "Standard Babylonian", nil, "akk", } ----------------------------------------------------- -- Arabic varieties -- ----------------------------------------------------- m["jrb"] = { "Judeo-Arabic", 37733, "ar", pseudo_families = "qfa-jew", } m["apc-leb"] = { "Lebanese North Levantine Arabic", 1516642, "apc", aliases = {"Lebanese Arabic"}, } m["apc-sle"] = { "South Lebanese North Levantine Arabic", 14206590, "apc", aliases = {"South Lebanese Arabic"}, } m["apc-nle"] = { "North Lebanese North Levantine Arabic", 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"] = { "Biblical Aramaic", 843235, "arc", family = "sem-are", } m["arc-cpa"] = { "Christian Palestinian Aramaic", 60790119, "arc", family = "sem-arw", aliases = {"Melkite Aramaic", "Palestinian Syriac", "Syropalestinian Aramaic"}, } m["arc-imp"] = { "Imperial Aramaic", 7079491, "arc", aliases = {"Official Aramaic"}, } m["arc-hat"] = { "Hatran Aramaic", 3832926, "arc", family = "sem-are", } m["arc-jla"] = { "Jewish Literary Aramaic", 105952842, "arc", pseudo_families = "qfa-jew", } m["arc-nab"] = { "Nabataean Aramaic", 36178, "arc", } m["arc-old"] = { "Old Aramaic", 3398392, "arc", } m["arc-pal"] = { "Palmyrene Aramaic", 1510113, "arc", family = "sem-arw", } m["tmr"] = { "Jewish Babylonian Aramaic", 33407, "arc", family = "sem-ase", pseudo_families = "qfa-jew", } m["jpa"] = { "Jewish Palestinian Aramaic", 948909, "arc", family = "sem-arw", aliases = {"Galilean Aramaic"}, pseudo_families = "qfa-jew", } ----------------------------------------------------- -- Hebrew varieties -- ----------------------------------------------------- m["hbo"] = { "Biblical Hebrew", 1982248, "he", aliases = {"Classical Hebrew"}, } m["he-mis"] = { "Mishnaic Hebrew", 1649362, "he", ancestors = "hbo", } m["he-med"] = { "Medieval Hebrew", 2712572, "he", ancestors = "he-mis", } m["he-IL"] = { "Israeli Hebrew", 8141, "he", } ---------------------------------------------------------------------------------------------------------------------- -- Ainu varieties -- ---------------------------------------------------------------------------------------------------------------------- m["ain-hok"] = { "Hokkaido Ainu", 20968488, "ain", aliases = {"Hokkaidō Ainu"}, } m["ain-kur"] = { "Kuril Ainu", 20967012, "ain", } m["ain-sak"] = { "Sakhalin Ainu", 20747371, "ain", } ---------------------------------------------------------------------------------------------------------------------- -- American indigenous varieties -- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------- -- Inuit varieties -- ----------------------------------------------------- m["esi"] = { "North Alaskan Inupiatun", nil, "ik" } m["esk"] = { "Northwest Alaskan Inupiatun", 25559714, "ik" } ----------------------------------------------------- -- Iroquoian varieties -- ----------------------------------------------------- m["iro-ohu"] = { "Old Wendat", nil, "wdt", } m["iro-omo"] = { "Old Mohawk", nil, "moh", } m["iro-oon"] = { "Old Onondaga", nil, "ono", } ----------------------------------------------------- -- Tupi-Guarani varieties -- ----------------------------------------------------- -- Old Tupi varieties m["tpw-lga"] = { "Língua Geral Amazônica", 18275323, "tpw", aliases = {"Língua Geral"}, } m["tpw-lgp"] = { "Língua Geral Paulista", 2669239, "tpw", } ---------------------------------------------------------------------------------------------------------------------- -- Austroasiatic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Khmer varieties m["okz-ang"] = { "ခမေန်တြေံ အာန်ခေါဝ်ရဳယာန်", nil, "okz", wikipedia_article = "Khmer language#Historical periods", } m["okz-pre"] = { "ခမေန်တြေံ ကၠာ-အာန်ခေါဝ်ရဳယာန်", nil, "okz", wikipedia_article = "Khmer language#Historical periods", } -- 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' "Old Malay", nil, "ms", } m["ms-cla"] = { "Classical Malay", nil, "ms", ancestors = "ms-old", } m["pse-bsm"] = { "Besemah", nil, "pse", } m["bew-kot"] = { "Betawi Kota", nil, "bew", aliases = {"Urban Betawi"}, -- in Jakarta } -- Philippine varieties m["xnn"] = { "Northern Kankanaey", 12953609, "kne", aliases = {"Northern Kankanay", "Northern Kankana-ey"}, } m["tl-old"] = { "Old Tagalog", 12967437, "tl", } m["tl-cls"] = { "Classical Tagalog", nil, "tl", } ---------------------------------------------------------------------------------------------------------------------- -- Caucasian varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Kartvelian varieties m["ka-mid"] = { "Middle Georgian", nil, "ka", ancestors = "oge", } ---------------------------------------------------------------------------------------------------------------------- -- Dravidian varieties -- ---------------------------------------------------------------------------------------------------------------------- m["ta-mid"] = { "Middle Tamil", 20987434, "ta", } m["kn-hav"] = { "Havigannada", 24276369, "kn", } m["kn-kun"] = { "Kundagannada", 6444255, "kn", } ---------------------------------------------------------------------------------------------------------------------- -- Indo-European varieties -- ---------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -- Albanian varieties -- -------------------------------------------------------------------------------------- m["aln"] = { "Gheg Albanian", 181037, "sq", aliases = {"Gheg"}, } m["aae"] = { "Arbëresh Albanian", 1075302, "als", aliases = {"Arbëreshë", "Arbëresh"}, } m["aat"] = { "Arvanitika Albanian", 29347, "als", aliases = {"Arvanitika"}, } m["als"] = { "Tosk Albanian", 180937, "sq", aliases = {"Tosk"}, } -------------------------------------------------------------------------------------- -- Armenian varieties -- -------------------------------------------------------------------------------------- m["hyw"] = { "Western Armenian", 180945, "hy", } m["hye"] = { "Eastern Armenian", 181059, "hy", } -------------------------------------------------------------------------------------- -- Balto-Slavic varieties -- -------------------------------------------------------------------------------------- ------------------------------------------------------------------------- -- Baltic varieties -- ------------------------------------------------------------------------- m["bat-pro"] = { "ဗေါဝ်တေတ်-အခိုက်ကၞာ", 1703347, "ine-bsl-pro", } m["bat-dni"] = { "Dnieper Baltic", 4163178, "bat-pro", family = "bat", aliases = {"Dniepr Baltic", "Dnieper-Oka Baltic", "Dniepr-Oka Baltic"}, } m["bat-gol"] = { "Golyad", 4142855, "bat-dni", aliases = {"Eastern Galindian", "East Galindian"}, } ------------------------------------------------------------------------- -- Slavic varieties -- ------------------------------------------------------------------------- ----------------------------------------------------- -- Bulgarian varieties -- ----------------------------------------------------- m["cu-bgm"] = { "ဗူလ်ဂရဳယာန် လဒေါဝ်", 12294897, "cu", ancestors = "cu" } ----------------------------------------------------- -- Church Slavonic varieties -- ----------------------------------------------------- -- Old Moscow Church Slavonic deleted as it seems not distinct enough from Russian (Synodal) Church Slavonic. m["zls-chs-ru"] = { "Russian Church Slavonic", 21662400, "zls-chs", aliases = {"Synodal Church Slavonic", "New Moscow Church Slavonic", "Novomoskovsk Church Slavonic"}, } m["zls-chs-uk"] = { "Ukrainian Church Slavonic", 12153548, "zls-chs", aliases = {"Rusyn Church Slavonic", "Belarusian Church Slavonic"}, } --[=[ -- Not sure about these yet. m["zls-chs-bg"] = { "Bulgarian Church Slavonic", nil, "zls-chs", } m["zls-chs-cs"] = { "Czech Church Slavonic", nil, "zls-chs", } m["zls-chs-hr"] = { "Croatian Church Slavonic", nil, "zls-chs", } m["zls-chs-mk"] = { "Macedonian Church Slavonic", nil, "zls-chs", } m["zls-chs-ro"] = { "Romanian Church Slavonic", nil, "zls-chs", } m["zls-chs-sr"] = { "Serbian Church Slavonic", nil, "zls-chs", } ]=] ----------------------------------------------------- -- Czech varieties -- ----------------------------------------------------- m["cs-ear"] = { "Early Modern Czech", nil, "cs", ancestors = "zlw-ocs" } ----------------------------------------------------- -- East Slavic varieties -- ----------------------------------------------------- m["zle-ops"] = { "Old Pskovian", 4167885, "zle-ono", } m["zle-mru"] = { "ရုသျှာ လဒေါဝ်", 35228, "ru", "Cyrs", ancestors = "orv", translit = "ru-translit", strip_diacritics = { Cyrs = { remove_diacritics = c.grave .. c.acute .. c.diaer, }, }, } m["zle-mbe"] = { "Middle Belarusian", 13211, "zle-ort", ancestors = "zle-ort", } m["zle-muk"] = { "ယူကရိန် လဒေါဝ်", 13211, "zle-ort", ancestors = "zle-ort", } m["uk-CA"] = { "Canadian Ukrainian", 4161010, "uk", } m["crp-cpr-kya"] = { "Kyakhta Chinese Pidgin Russian", 1062960, "crp-cpr", } ----------------------------------------------------- -- Polish varieties -- ----------------------------------------------------- m["zlw-mpl"] = { "ပဝ်လာန် လဒေါဝ်", 402878, "pl", ancestors = "zlw-opl", strip_diacritics = { remove_diacritics = c.acute, remove_exceptions = {"Ć", "ć", "Ń", "ń", "Ó", "ó", "Ś", "ś", "Ź", "ź"}, }, } m["pl-gre"] = { "Greater Polish", 4106789, "pl", } m["pl-les"] = { "Lesser Polish", 361709, "pl", } m["pl-mas"] = { "Masovian Polish", 4274559, "pl", } m["pl-gor"] = { "Goral", 452889, "pl", } ----------------------------------------------------- -- Serbo-Croatian varieties -- ----------------------------------------------------- m["ckm"] = { "Chakavian Serbo-Croatian", 337565, "sh", aliases = {"Čakavian"}, } m["kjv"] = { "Kajkavian Serbo-Croatian", 838165, "sh", } m["sh-tor"] = { -- Linguist code srp-tor "Torlakian Serbo-Croatian", 1078803, "sh", aliases = {"Torlak"}, } -------------------------------------------------------------------------------------- -- Celtic varieties -- -------------------------------------------------------------------------------------- ----------------------------------------------------- -- Brythonic varieties -- ----------------------------------------------------- m["bry-ear"] = { "Early Brythonic", nil, "cel-bry-pro", } m["bry-lat"] = { "Late Brythonic", nil, "cel-bry-pro", } ----------------------------------------------------- -- Gaulish varieties -- ----------------------------------------------------- m["xcg"] = { "Cisalpine Gaulish", 3832927, "cel-gau", } m["xtg"] = { "Transalpine Gaulish", 29977, "cel-gau", } ----------------------------------------------------- -- Welsh varieties -- ----------------------------------------------------- m["cy-nor"] = { "North Wales Welsh", 13127692, "cy", aliases = {"North Walian Welsh", "Northern Welsh"}, } m["cy-sou"] = { "South Wales Welsh", 13127689, "cy", aliases = {"South Walian Welsh", "Southern Welsh"}, } -------------------------------------------------------------------------------------- -- Germanic varieties -- -------------------------------------------------------------------------------------- -- Proto-West Germanic varieties m["frk"] = { "Frankish", 10860505, "gmw-pro", family = "gmw-frk", aliases = {"Old Frankish"}, } m["gem-sue"] = { "Suevic", 134600275, "gmw-pro", aliases = {"Suebian"}, } m["gmw-afr-pro"] = { "Proto-Anglo-Frisian", 134603379, "gmw-nsg-pro", family = "gmw-afr", } m["gmw-nsg-pro"] = { "Proto-North Sea Germanic", 134603374, "gmw-pro", family = "gmw-nsg", aliases = {"Proto-Ingvaeonic"}, } ----------------------------------------------------- -- Dutch varieties -- ----------------------------------------------------- m["nl-BE"] = { "Belgian Dutch", 34147, "nl", aliases = {"Flemish", "Flemish Dutch", "Southern Dutch"}, } ----------------------------------------------------- -- English and Scots varieties -- ----------------------------------------------------- -- English varieties m["en-AU"] = { "Australian English", 44679, "en", } m["en-GB"] = { "British English", 7979, "en", } m["en-GB-SCT"] = { "Scottish English", 1553250, "en-GB", } m["en-GB-WLS"] = { "Welsh English", 2363292, "en-GB", } m["en-IM"] = { "Manx English", 6753295, "en-GB", } m["en-aae"] = { "Australian Aboriginal English", 783347, "en-AU", } m["en-ear"] = { "Early Modern English", 1472196, "en", ancestors = "enm", aliases = {"Early New English"}, } m["en-geo"] = { "Geordie", 653421, "en", ancestors = "enm-nor", } m["en-IE"] = { -- FIXME: "IE" doesn't cover Northern Ireland "Irish English", 665624, "en", } m["en-uls"] = { "Ulster English", 6840826, "en-IE", } m["en-GB-NIR"] = { "Northern Irish English", 6840826, -- actually the code for Ulster English "en-uls", } m["en-NNN"] = { -- NA = Namibia; NNN is NATO 3-letter code for North America "North American English", 7053766, "en", ietf_subtag = "en-021" -- 021 = UN M49 code for "Northern America" (i.e. North America wihout Central America or the Caribbean) } m["en-US"] = { "American English", 7976, "en-NNN", } m["en-NZ"] = { "New Zealand English", 44661, "en" } m["en-ZA"] = { "South African English", 1156228, "en" } m["en-US-CA"] = { "California English", 1026812, "en-US", } m["en-CA"] = { "Canadian English", 44676, "en-US", } m["en-HK"] = { "Hong Kong English", 1068863, "en", } m["en-IN"] = { "Indian English", 1348800, "en", } m["pld"] = { "Polari", 1359130, "en", } -- Scots varieties m["sco-ins"] = { "Insular Scots", 16919205, "sco", } m["sco-uls"] = { "Ulster Scots", 201966, "sco", } m["sco-nor"] = { "Northern Scots", 16928150, "sco", } m["sco-sou"] = { "Southern Scots", 7570457, "sco", aliases = {"South Scots", "Borders Scots"}, } -- Middle English varieties m["enm-esc"] = { -- Part of Middle English until it developed into Middle Scots. "Early Scots", 5326738, "enm", ancestors = "enm-nor", aliases = {"Old Scots", "Scottish Middle English"}, } m["enm-emi"] = { "East Midland Middle English", 134238810, "enm", ancestors = "ang-ang", -- Technically ang-mer, but attested Mercian is mostly WM IIRC } m["enm-ken"] = { "Kentish Middle English", 134238532, "enm", ancestors = "ang-ken", } m["enm-nor"] = { "Northern Middle English", 134238541, "enm", ancestors = "ang-nor", } m["enm-sou"] = { "Southern Middle English", 134238528, "enm", ancestors = "ang-wsx", } m["enm-wmi"] = { "West Midland Middle English", 134238824, "enm", ancestors = "ang-mer", } -- Old English varieties -- Includes both Mercian and Northumbrian. m["ang-ang"] = { "Anglian Old English", 121142917, "ang", } m["ang-ken"] = { "Kentish Old English", 11687485, "ang", } m["ang-mer"] = { "Mercian Old English", 602072, "ang-ang", } m["ang-nor"] = { "Northumbrian Old English", 1798915, "ang-ang", } m["ang-wsx"] = { "West Saxon Old English", 2658603, "ang", } ----------------------------------------------------- -- High German varieties -- ----------------------------------------------------- -- (modern) German varieties m["de-AT"] = { "Austrian German", 306626, "de", } m["de-AT-vie"] = { "Viennese German", 56474, "de-AT", } m["de-CH"] = { "Switzerland German", 1366643, "de", aliases = {"Schweizer Hochdeutsch", "Swiss Standard German", "Swiss High German"}, } m["de-bal"] = { "Baltic German", 15785413, "de", } m["de-ear"] = { "Early New High German", 1472199, "de", ancestors = "gmh", aliases = {"Early Modern High German"}, } m["ksh"] = { "Kölsch", 4624, "gmw-cfr", } m["pfl"] = { "Palatine German", 23014, "gmw-rfr", aliases = {"Pfälzisch", "Pälzisch", "Palatinate German"}, } m["sli"] = { "Silesian East Central German", 152965, "gmw-ecg", aliases = {"Silesian"}, } m["sxu"] = { "Upper Saxon German", 699284, "gmw-ecg", } -- Old High German varieties m["lng"] = { "Lombardic", 35972, "goh", } -- Alemannic German varieties m["gsw-low"] = { "Low Alemannic German", 503724, "gsw", } m["gsw-FR-als"] = { "Alsatian Alemannic German", 8786, "gsw-low", } m["gsw-hig"] = { "High Alemannic German", 503728, "gsw", } m["gsw-hst"] = { "Highest Alemannic German", 687538, "gsw", } m["wae"] = { "Walser German", 680517, "gsw-hst", } ----------------------------------------------------- -- Low German varieties -- ----------------------------------------------------- m["nds-de"] = { "German Low German", 25433, "nds", ietf_subtag = "nds-DE", -- should we make this the actual code? wikimedia_codes = "nds", } m["nds-nl"] = { "Dutch Low Saxon", 516137, "nds", ietf_subtag = "nds-NL", -- should we make this the actual code? wikimedia_codes = "nds-nl", } m["act"] = { "Achterhoeks", 153627, "nds-nl", aliases = {"Achterhoek", "Achterhooks"}, } m["drt"] = { "Drents", 2736709, "nds-nl", aliases = {"Drèents", "Dreins", "Dreints", "Drints"}, } m["frs"] = { "East Frisian Low German", 149208, "nds-de", aliases = {"East Frisian", "East Frisian Low Saxon"}, } m["gos"] = { "Gronings", 508854, "nds-nl", aliases = {"Grunnegs", "Grönnegs"}, } m["nds-lpr"] = { "Low Prussian", 33982, "nds-de", } m["sdz"] = { "Sallands", 3436668, "nds-nl", aliases = {"Sallaans", "Sallaands"}, } m["stl"] = { "Stellingwerfs", 506010, "nds-nl", aliases = {"Stellingwarfs"}, } m["twd"] = { "Twents", 497363, "nds-nl", aliases = {"Tweants"}, } m["vel"] = { "Veluws", 2484810, "nds-nl", } m["wep"] = { "Westphalian", 505655, "nds-de", aliases = {"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"] = { "Greenlandic Norse", 855236, "non-own", } m["non-oen"] = { "Old East Norse", 10498031, "non", ancestors = "non", } m["non-own"] = { "Old West Norse", 2377483, "non", ancestors = "non", } ----------------------------------------------------- -- Old Swedish varieties -- ----------------------------------------------------- m["gmq-osw-lat"] = { "Late Old Swedish", 10723594, "gmq-osw", ancestors = "gmq-osw", } -------------------------------------------------------------------------------------- -- Greek varieties -- -------------------------------------------------------------------------------------- m["qsb-grc"] = { "Pre-Greek", 965052, "und", family = "qfa-sub", } m["grc-aeo"] = { "Aeolic Greek", 406373, "grc", aliases = {"Lesbic Greek", "Lesbian Greek", "Aeolian Greek"}, } m["grc-arc"] = { "Arcadian Greek", nil, "grc-arp", } m["grc-arp"] = { "Arcadocypriot Greek", 499602, "grc", } m["grc-att"] = { "Attic Greek", 506588, "grc", } m["grc-boi"] = { "Boeotian Greek", 406373, "grc-aeo", } m["grc-cyp"] = { "Cypriot Ancient Greek", -- to distinguish from Cypriot Greek below nil, "grc-arp", } m["grc-dor"] = { "Doric Greek", 285494, "grc", } m["grc-ela"] = { "Elean Greek", nil, "grc", } m["grc-epi"] = { "Epic Greek", 990062, "grc", aliases = {"Homeric Greek"}, } m["grc-ion"] = { "Ionic Greek", 504165, "grc", } m["grc-koi"] = { "ဂရေတ် ခါဝ်အိန်", 107358, "grc", ancestors = "grc-att", aliases = {"Hellenistic Greek"}, } m["grc-kre"] = { "Cretan Ancient Greek", -- to distinguish from Cretan Greek below nil, "grc-dor", } m["grc-opl"] = { "Opuntian Locrian", nil, "grc", } m["grc-ozl"] = { "Ozolian Locrian", nil, "grc", } m["grc-pam"] = { "Pamphylian Greek", 2271793, "grc", } m["grc-ths"] = { "Thessalian Greek", 406373, "grc-aeo", } m["gkm"] = { "ဂရေတ် ဗေတ်သေန်ထေၚ်", 36387, "grc", ancestors = "grc-koi", aliases = {"Medieval Greek"}, } m["el-cyp"] = { "Cypriot Greek", 245899, "el", aliases = {"Cypriotic Greek"}, } m["el-pap"] = { "Paphian Greek", nil, "el", } m["el-crt"] = { "Cretan Greek", 588306, "el", } 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"] = { "Proto-New Indo-Aryan", nil, "pra", } m["inc-ash-pro"] = { "Proto-Middle Indo-Aryan", nil, "inc-ash", } m["inc-mit"] = { "Mitanni", 1986700, "inc-pro", } m["bra-old"] = { "Old Braj", nil, "bra", } -- Apabhramsas m["inc-aav"] = { "အဝဟတာ", nil, "inc-apa", aliases = {"Abahattha"}, } m["inc-asa"] = { "သဥူရေသဳနဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-agu"] = { "ဂူဂျာရာ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-aka"] = { "ခေပ်သမဳရဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-ama"] = { "မဟာရာတ်သပ်ထရဳ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-ata"] = { "တာကာ အာပ်ပါပရာမ်သာ", nil, "inc-apa", } m["inc-avr"] = { "ဝရာခါဒါ အာပ်ပါပရာမ်သာ", 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"] = { "Kathiyawadi", nil, "gu", aliases = {"Kathiyawadi Gujarati", "Kathiawadi"}, } m["gu-lda"] = { "Lisan ud-Dawat Gujarati", nil, "gu", aliases = {"Lisan ud-Dawat", "LDA"}, } -- Hindi varieties m["hi-mum"] = { "Bombay Hindi", 3543151, "hi", aliases = {"Mumbai Hindi", "Bambaiyya Hindi"}, } m["hi-mid"] = { "Middle Hindi", nil, "inc-ohi", ancestors = "inc-ohi", } -- Konkani varieties m["kok-mid"] = { "Middle Konkani", nil, "kok", aliases = {"Medieval Konkani"}, } m["kok-old"] = { "Old Konkani", nil, "kok", aliases = {"Early Konkani"}, } -- Prakrits m["pra-ard"] = { "အာတ်ဓၟဂါတ်ဒဳ ပရာကရေတ်", 35217, "pra", aliases = {"Ardhamagadhi"}, } m["pra-hel"] = { "ဟေဠူ ပရာကရေတ်", 15080869, "pra", aliases = {"Elu", "Elu Prakrit", "Helu"}, } m["pra-kha"] = { "ခါဿာ ပရာကရေတ်", nil, "pra", aliases = {"Khasa"}, } m["pra-mag"] = { "မဂ္ဂဒိ ပရာကရေတ်", -- Not to be confused with Magahi (mag) 2652214, "pra", aliases = {"Magadhi"}, } m["pra-mah"] = { "မဟာရာတ်ထရဳ ပရာကရေတ်", 2586773, "pra", aliases = {"Maharashtri Prakrit", "Maharastri", "Maharashtri"}, } m["pra-pai"] = { "ပါအေတ်သာသဳ ပရာကရေတ်", 2995607, "pra-sau", aliases = {"Paisaci", "Paisachi"}, ancestors = "pra-sau" } m["pra-sau"] = { "သောရာသေနဳ ပရာကရေတ်", 2452885, "pra", aliases = {"Sauraseni", "Shauraseni"}, } m["pra-ava"] = { "အဗါန်တဳ", nil, "pra", aliases = {"Avanti Prakrit"}, } m["pra-pra"] = { "ပရာသဳယျာ", nil, "pra", aliases = {"Pracya Prakrit"}, } m["pra-bah"] = { "ပါလိကဳ", nil, "pra", aliases = {"Bahliki Prakrit"}, } m["pra-dak"] = { "ထေတ်သဳနတာယျ", nil, "pra", aliases = {"Daksinatya Prakrit"}, } m["pra-sak"] = { "သာကာရဳ", nil, "pra", aliases = {"Sakari Prakrit"}, } m["pra-can"] = { "ခေန်ဒါလဳ", nil, "pra", aliases = {"Candali Prakrit"}, } m["pra-sab"] = { "သာဗါရဳ", nil, "pra", aliases = {"Sabari Prakrit"}, } m["pra-abh"] = { "အဖိရဳ", nil, "pra", aliases = {"Abhiri Prakrit"}, } m["pra-dra"] = { "ဒရာမဳလဳ", nil, "pra", aliases = {"Dramili Prakrit"}, } m["pra-odr"] = { "အဝ်ဒရဳ", nil, "pra", aliases = {"Odri Prakrit"}, } -- Punjabi varieties m["pnb"] = { "Western Punjabi", 58635, "pa", "pa-Arab", } -- Sanskrit varieties m["vsn"] = { "Vedic Sanskrit", 36858, "sa", } m["cls"] = { "Classical Sanskrit", 9333703, "sa", } m["sa-bhs"] = { "Buddhist Hybrid Sanskrit", 248758, "sa", } m["sa-bra"] = { "Brahmanic Sanskrit", 139822891, "vsn", } m["sa-epi"] = { "Epic Sanskrit", 56702805, "cls", } m["sa-neo"] = { "New Sanskrit", nil, "sa", } m["sa-rig"] = { "Rigvedic Sanskrit", 139822680, "vsn", } -- Sinhalese varieties m["si-med"] = { "Medieval Sinhalese", nil, "si", aliases = {"Medieval Sinhala"}, } ------------------------------------------------------------------------- -- Iranian varieties -- ------------------------------------------------------------------------- m["qsb-bma"] = { "the BMAC substrate", 133187435, "und", family = "qfa-sub", aliases = {"the Bactria-Margiana substrate", "the Bactria-Margiana Archaeological Complex substrate"}, } -- Historical and current Iranian dialects m["ae-old"] = { "Old Avestan", 29572, "ae", aliases = {"Gathic Avestan"}, } m["ae-yng"] = { "Younger Avestan", 29572, "ae-old", aliases = {"Young Avestan"}, } m["bcc"] = { "Southern Balochi", 33049, "bal", aliases = {"Southern Baluchi"}, } m["bgp"] = { "Eastern Balochi", 33049, "bal", aliases = {"Eastern Baluchi"}, } m["bgn"] = { "Western Balochi", 33049, "bal", aliases = {"Western Baluchi"}, } m["bsg-ban"] = { "Bandari", nil, "bsg", } m["bsg-hor"] = { "Hormozi", nil, "bsg", } m["bsg-min"] = { "Minabi", nil, "bsg", } m["kho-old"] = { "Old Khotanese", nil, "kho", } m["kho-lat"] = { "Late Khotanese", nil, "kho-old", } m["peo-ear"] = { "Early Old Persian", nil, "peo", } m["peo-lat"] = { "Late Old Persian", nil, "peo", } m["pal-ear"] = { "Early Middle Persian", nil, "pal", } m["pal-lat"] = { "Late Middle Persian", nil, "pal", ancestors = "pal-ear", } m["ps-nwe"] = { "Northwestern Pashto", nil, "ps", } m["ps-cgi"] = { "Central Ghilzay", nil, "ps-nwe", } m["ps-mah"] = { "Mahsudi", nil, "ps-nwe", } m["ps-nea"] = { "Northeastern Pashto", nil, "ps", } m["ps-afr"] = { "Afridi", nil, "ps-nea", } m["ps-bng"] = { "Bangash", nil, "ps-nea", } m["ps-xat"] = { "Khatak", nil, "ps-nea", } m["ps-pes"] = { "Peshawari", nil, "ps-nea", } m["ps-sea"] = { "Southeastern Pashto", nil, "ps", } 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"] = { "Southwestern Pashto", nil, "ps", } m["ps-kan"] = { "Kandahari", nil, "ps-swe", } m["ps-jad"] = { "Jadrani", nil, "ps", ancestors = "ira-pat-pro" } m["xme-azr"] = { "Old Azari", nil, "xme-ott", aliases = {"Old Azeri", "Azari", "Azeri", "Āḏarī", "Adari", "Adhari"}, } m["xme-ttc-cen"] = { "Central Tati", nil, "xme-ott", } m["xme-ttc-eas"] = { "Eastern Tati", nil, "xme-ott", } m["xme-ttc-nor"] = { "Northern Tati", nil, "xme-ott", } m["xme-ttc-sou"] = { "Southern Tati", nil, "xme-ott", } m["xme-ttc-wes"] = { "Western Tati", nil, "xme-ott", } m["xmn"] = { "Manichaean Middle Persian", nil, "pal-lat", } m["fa-ear"] = { "Early New Persian", 127413796, "fa", ancestors = "pal-lat", translit = "fa-cls-translit", } m["fa-cls"] = { "Classical Persian", 9168, "fa", ancestors = "fa-ear", translit = "fa-cls-translit", } m["fa-ira"] = { "Iranian Persian", 3513637, "fa", aliases = {"Modern Persian", "Western Persian"}, translit = "fa-ira-translit", } m["prs"] = { "Dari", 178440, "fa", aliases = {"Dari Persian", "Central Persian", "Eastern Persian", "Afghan Persian"}, translit = "fa-cls-translit", } m["haz"] = { "Hazaragi", 33398, "prs", translit = "fa-cls-translit", } m["os-dig"] = { "Digor Ossetian", 3027861, "os", aliases = {"Digoron", "Digor"}, } m["os-iro"] = { "Iron Ossetian", nil, "os", aliases = {"Iron"}, } m["sog-ear"] = { "Early Sogdian", nil, "sog", } m["sog-lat"] = { "Late Sogdian", nil, "sog-ear", } m["ro-MD"] = { "Moldovan", 36392, "ro", aliases = {"Moldavian"}, } m["oru-kan"] = { "Kaniguram", 6363164, "oru", } m["oru-log"] = { "Logar", nil, "oru", } m["oos"] = { "Old Ossetic", 65455882, "xln", } m["oos-ear"] = { "Early Old Ossetic", nil, "oos", } m["oos-lat"] = { "Late Old Ossetic", nil, "oos", } m["rdb-jir"] = { "Jirofti", nil, "rdb", } m["rdb-kah"] = { "Kahnuji", nil, "rdb", } -- 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 Esmaili", nil, "fay", } m["fay-gav"] = { "Gavkoshaki", nil, "fay", } m["fay-kho"] = { "Khollari", nil, "fay", } m["fay-kon"] = { "Kondazi", nil, "fay", } m["fay-kzo"] = { "Old Kazeruni", nil, "fay", } m["fay-mas"] = { "Masarami", nil, "fay", } m["fay-pap"] = { "Papuni", nil, "fay", } m["fay-sam"] = { "Samghani", nil, "fay", } m["fay-shr"] = { "Shirazi", nil, "fay", } m["fay-sho"] = { "Old Shirazi", nil, "fay", } m["fay-kar"] = { "Khargi", nil, "fay", } m["fay-sor"] = { "Sorkhi", nil, "fay", } -- Talysh lects m["tly-cen"] = { "Central Talysh", nil, "tly", } 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"] = { "Northern Talysh", nil, "tly", } m["tly-aze"] = { "Azerbaijani Talysh", nil, "tly-nor", } m["tly-anb"] = { "Anbarani", nil, "tly-nor", } m["tly-sou"] = { "Southern Talysh", nil, "tly", } m["tly-fum"] = { "Fumani", nil, "tly-sou", } m["tly-msu"] = { "Masulei", nil, "tly-sou", } 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"] = { "Ashtiani", 3436590, "xme-taf", } 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"] = { "Jowshaqani", nil, "xme-ker", } 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"] = { "Zoroastrian Dari", 32389, "xme-ker", aliases = {"Behdināni", "Gabri", "Gavrŭni", "Gabrōni"}, } m["xme-krm"] = { "Kermani", nil, "xme-ker", } m["xme-yaz"] = { "Yazdi", nil, "xme-ker", } 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"] = { "Takestani", nil, "tks", } m["tks-cal"] = { "Chali Tati", nil, "tks", aliases = {"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"] = { "Roshani", 2597566, "sgh-rsx", aliases = {"Rushani", "Rōšāni"}, } m["sgh-xgb"] = { "Khughni-Bajui", nil, "sgh", } 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"] = { "Kamviri", 1193495, "bsh", aliases = {"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" }, } m["itc-lan"] = { "Lanuvian", 16890829, "itc-ola", aliases = {"Lanuvine"}, } m["itc-pra"] = { "Praenestine", 16889772, "itc-ola", aliases = {"Praenestinian"}, } m["la-cla"] = { "လပ်တေန်ဝၚ်ဂန္ထ", 253854, "la", } m["la-vul"] = { "လပ်တေန်အရိုၚ်", 37560, "la-cla", } m["la-afr"] = { "African Romance", 162064, "roa-pro", } m["la-lat"] = { "လပ်တေန်လဇုဲ", 1503113, "la", ancestors = "la-cla", } m["la-med"] = { "လပ်တေန် ခေတ်လဒေါဝ်", 1163234, "la", ancestors = "la-lat", } m["la-eme"] = { "လပ်တေန်ခေတ်လဒေါဝ်ဗွဲမပြဟ်", nil, "la-med", } m["la-ecc"] = { "သာသနာခရေတ်လပ်တေန်", 1247932, "la", aliases = {"Church Latin", "Liturgical Latin"}, ancestors = "la-lat", } m["la-ren"] = { "လပ်တေန်ခေတ်ကလေၚ်ပလေဝ်ပ္တိုန်တၟိ", 499083, "la", ancestors = "la-med", } m["la-new"] = { "လပ်တေန်တၟိ", 1248221, "la", aliases = {"Modern Latin"}, ancestors = "la-ren", } m["la-con"] = { "လပ်တေန်ခေတ်ပြိုၚ်ပ္ကာန်", 1246397, "la-new", } ------------------------------------------------------------------------- -- Miscellaneous Italic varieties -- ------------------------------------------------------------------------- m["xfa-cap"] = { "Capenate", 133182969, "xfa", } m["osc-luc"] = { "Lucanian", 3265025, "osc", } m["osc-sam"] = { "Samnite", 133184287, "osc", } ------------------------------------------------------------------------- -- Romance varieties -- ------------------------------------------------------------------------- m["roa-pro"] = { "Proto-Romance", 3408029, "la-lat", ancestors = "la-vul", } ----------------------------------------------------- -- Catalan varieties -- ----------------------------------------------------- m["ca-val"] = { "Valencian", 32641, "ca", } ----------------------------------------------------- -- Franco-Provençal varieties -- ----------------------------------------------------- m["frp-old"] = { "Old Franco-Provençal", nil, "frp", } ----------------------------------------------------- -- French and derived creole varieties -- ----------------------------------------------------- m["fro-nor"] = { "Old Northern French", 2044917, "fro", aliases = {"Old Norman", "Old Norman French"}, } m["fro-pic"] = { "Picard Old French", nil, "fro", } m["xno"] = { "အာန်ဂဝ်-နဝ်မာန်", 35214, "fro-nor", } m["xno-law"] = { "Law French", 2044323, "xno", } m["zrp"] = { "Zarphatic", 36994, "fro", aliases = {"Judeo-French"}, pseudo_families = "qfa-jew", } m["fr-CA"] = { "Canadian French", 1450506, "fr", } m["fr-CH"] = { "Swiss French", 1480152, "fr", } m["fr-aca"] = { "Acadian French", 415109, "fr", } m["fr-lou"] = { "Louisiana French", 3083213, "fr", } m["fr-mis"] = { "Missouri French", 3083210, "fr", } m["frc"] = { "Cajun French", 880301, "fr-lou", } m["ht-sdm"] = { "Saint Dominican Creole French", nil, "ht", ancestors = "fr", } -- Norman varieties m["nrf-grn"] = { "Guernsey Norman", 56428, "nrf", aliases = {"Guernsey"}, } m["nrf-jer"] = { "Jersey Norman", 56430, "nrf", aliases = {"Jersey"}, } ----------------------------------------------------- -- Gallo-Italic varieties -- ----------------------------------------------------- m["egl-old"] = { "Old Emilian", nil, "egl", } m["lij-old"] = { "လဳဂူရဳယာန်တြေံ", nil, "lij", aliases = {"Old Genoese"}, } m["lmo-old"] = { "လောန်ဗါတ်တြေံ", 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"] = { "Old Italian", nil, "it", } m["it-CH"] = { "Switzerland Italian", 672147, "it", } -- Other Italo-Romance varieties m["nap-old"] = { "Old Neapolitan", nil, "nap", } m["scn-old"] = { "Old Sicilian", nil, "scn", } ----------------------------------------------------- -- Occitan varieties -- ----------------------------------------------------- m["oc-auv"] = { "Auvergnat", 35359, "oc", aliases = {"Auvernhat", "Auvergnese"}, } m["oc-gas"] = { "ဂေါသ်သကာန်", 35735, "oc", } -- standardized dialect of Gascon m["oc-ara"] = { "Aranese", 10196, "oc-gas", } m["oc-lan"] = { "လာမ်ဂဝေအ်ဒံက်ဃှေန်", 942602, "oc", aliases = {"Lengadocian"}, } m["oc-lim"] = { "လိမူသေန်", 427614, "oc", } m["oc-pro"] = { "ဖရဝ်ဗေန်သော", 241243, "oc", aliases = {"Provencal"}, } m["oc-pro-old"] = { "ဖရဝ်ဗေန်သောတြေံ", 2779185, "pro", } m["oc-viv"] = { "ဝဳဝါရုဝ်-အောဖှာၚ်", 1649613, "oc", } m["oc-jud"] = { "Shuadit", 56472, "oc", aliases = { "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"] = { "Brazilian Portuguese", 750553, "pt", } m["pt-PT"] = { "European Portuguese", 922399, "pt", } -- 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"] = { "Logudorese", 777974, "sc", aliases = {"Logudorese Sardinian"}, } m["sc-nuo"] = { "Nuorese", nil, "sc-src", aliases = {"Nuorese Sardinian"}, } m["sc-sro"] = { "Campidanese", 35348, "sc", aliases = {"Campidanese Sardinian"}, } ----------------------------------------------------- -- Spanish varieties -- ----------------------------------------------------- m["es-ear"] = { "Early Modern Spanish", 5364419, "es", } m["es-AR"] = { "Rioplatense Spanish", 509780, "es", } m["es-BO"] = { "Bolivian Spanish", 510730, "es", } m["es-CL"] = { "Chilean Spanish", 857295, "es", } m["es-CO"] = { "Colombian Spanish", 1115875, "es", } m["es-CU"] = { "Cuban Spanish", 824909, "es", } m["es-MX"] = { "Mexican Spanish", 616620, "es", } m["es-PE"] = { "Peruvian Spanish", 736236, "es", } m["es-PH"] = { "Philippine Spanish", 22091406, "es", } m["es-US"] = { "United States Spanish", 2301077, "es", aliases = {"US Spanish"}, } --use label "US Spanish" to put Spanish terms in this category m["es-PR"] = { "Puerto Rican Spanish", 7258609, "es", } m["es-VE"] = { "Venezuelan Spanish", 840017, "es", } m["es-lun"] = { "Lunfardo", 1401612, "es", } ---------------------------------------------------------------------------------------------------------------------- -- Japonic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Japanese varieties m["ja-mid"] = { "ဂျပါန် လဒေါဝ်", 6841474, "ojp", ancestors = "ojp", } m["ja-mid-ear"] = { "Early Middle Japanese", 182695, "ja-mid", } m["ja-mid-lat"] = { "ဂျပါန်တြေံခေတ်လဇုဲ", 1816184, "ja-mid", ancestors = "ja-mid-ear", } m["ja-ear"] = { "Early Modern Japanese", 5326692, "ja", ancestors = "ja-mid-lat", } m["ojp-eas"] = { "Eastern Old Japanese", 65247957, "ojp", } m["ja-cla"] = { "Classical Japanese", 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", } ---------------------------------------------------------------------------------------------------------------------- -- Koreanic varieties -- ---------------------------------------------------------------------------------------------------------------------- -- Korean varieties m["oko-lat"] = { "ကိုဝ်ရဳယျာတြေံခေတ်လဇုဲ", nil, "oko", } m["okm-ear"] = { "Early Middle Korean", nil, "okm", } m["ko-cen"] = { "Central Korean", nil, "ko", } m["ko-gyg"] = { "Gyeonggi Korean", 485492, "ko-cen", aliases = {"Seoul Korean"}, } m["ko-chu"] = { "Chungcheong Korean", 625800, "ko-cen", aliases = {"Hoseo Korean"}, } m["ko-hwa"] = { "Hwanghae Korean", 16183706, "ko-cen", } m["ko-gan"] = { "Gangwon Korean", 11260444, "ko-cen", aliases = {"Yeongdong Korean"}, } m["ko-gys"] = { "Gyeongsang Korean", 488002, "ko", aliases = {"Southeastern Korean"}, } m["ko-jeo"] = { "Jeolla Korean", 11250166, "ko", aliases = {"Southwestern Korean"}, } m["ko-pyo"] = { "Pyongan Korean", 7263142, "ko", aliases = {"Northwestern Korean"}, } m["ko-ham"] = { "Hamgyong Korean", 860702, "ko", aliases = {"Northeastern Korean"}, } m["ko-yuk"] = { "Yukjin Korean", 16171275, "ko", aliases = {"Yukchin Korean", "Ryukjin Korean", "Ryukchin Korean"}, } ---------------------------------------------------------------------------------------------------------------------- -- Mongolic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["xng-ear"] = { "Early Middle Mongol", nil, "xng", } m["xng-lat"] = { "Late Middle Mongol", nil, "xng", ancestors = "xng-ear", } m["mn-kha"] = { "Khalkha Mongolian", 6399808, "mn", aliases = {"Khalkha"}, } m["mn-ord"] = { "Ordos Mongolian", 716904, "mn", aliases = {"Ordos"}, } m["mn-cha"] = { "Chakhar Mongolian", 907425, "mn", aliases = {"Chakhar"}, } m["mn-khr"] = { "Khorchin Mongolian", 3196210, "mn", aliases = {"Khorchin"}, } ---------------------------------------------------------------------------------------------------------------------- -- Niger-Congo varieties -- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------- -- Akan varieties -- ----------------------------------------------------- m["tw"] = { "Twi Akan", 36850, "ak", aliases = {"Twi"}, } m["abr"] = { "Abron", 34831, "tw", aliases = {"Brong", "Bono", "Bono Twi"}, } m["tw-asa"] = { "Asante Twi", 19261685, "tw", aliases = {"Asante", "Ashanti", "Ashante"}, } m["tw-aku"] = { "Akuapem Twi", 31150449, "tw", aliases = {"Akuapem", "Akuapim", "Akwapem Twi", "Akwapi"}, } m["fat"] = { "Fante Akan", 35570, "ak", aliases = {"Fante", "Fanti", "Fantse", "Mfantse"}, } m["wss"] = { "Wasa", 36914, "ak", } -- creole m["alv-kro"] = { "Kromanti", 1093206, "crp-mar", } ----------------------------------------------------- -- Bantu varieties -- ----------------------------------------------------- m["bnt-cmn"] = { "Common Bantu", nil, "bnt-pro", } 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"] = { "Maasina Fulfulde", 3915322, "ff", } m["fue"] = { -- no enwiki entry as of yet but frwiki and pmswiki have one "Borgu Fulfulde", 12952426, "ff", } m["fuh"] = { -- no enwiki entry as of yet but frwiki and pmswiki have one "Western Niger Fulfulde", 12952430, "ff", } m["fuq"] = { -- no enwiki entry as of yet but frwiki, hrwiki and pmswiki have one "Central-Eastern Niger Fulfulde", 12628799, "ff", } m["fuv"] = { -- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki and swwiki have one "Nigerian Fulfulde", 36129, "ff", } m["fub"] = { -- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki, ptwiki, swwiki and yowiki have one "Adamawa Fulfulde", 34776, "ff", } m["fui"] = { -- no enwiki entry as of yet but pmswiki and swwiki have one "Bagirmi Fulfulde", 11003859, "ff", } ---------------------------------------------------------------------------------------------------------------------- -- Papuan varieties -- ---------------------------------------------------------------------------------------------------------------------- m["kze"] = { "Kosena", 12952663, "auy", } m["ont"] = { "Ontenu", 3352827, "gaj", aliases = {"Ontena"}, } ---------------------------------------------------------------------------------------------------------------------- -- Salishan varieties -- ---------------------------------------------------------------------------------------------------------------------- m["lut-nor"] = { "Northern Lushootseed", nil, "lut", aliases = {"Northern Puget Sound Salish"}, } m["slh"] = { "Southern Lushootseed", 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", } ----------------------------------------------------- -- Chinese varieties -- ----------------------------------------------------- ------------- Old Chinese, Middle Chinese ------------- m["och-ear"] = { "Early Old Chinese", nil, "och", } m["och-lat"] = { "Late Old Chinese", nil, "och", } m["ltc-ear"] = { "Early Middle Chinese", nil, "ltc", } m["ltc-lat"] = { "Late Middle Chinese", nil, "ltc", } ------------- Classical/Literary varieties ------------- -- FIXME: Temporary. m["lzh-shi"] = { "Traditional Chinese poetry", 1759242, "lzh", } -- FIXME: Temporary. m["lzh-cii"] = { "Ci", 1091366, "lzh", } -- FIXME: Temporary. m["lzh-yue"] = { "Classical Cantonese", nil, "lzh", } -- FIXME: Temporary. m["lzh-cmn"] = { "Classical Mandarin", nil, "lzh", } -- FIXME: Temporary. m["lzh-tai"] = { "Classical Taishanese", nil, "lzh", } -- FIXME: Temporary. m["lzh-cmn-TW"] = { "Classical Taiwanese Mandarin", nil, "lzh-cmn", } -- FIXME: Temporary. m["lzh-VI"] = { "Vietnamese Classical Chinese", 17034227, "lzh", } -- FIXME: Temporary. m["lzh-KO"] = { "Korean Classical Chinese", 10496257, "lzh", ietf_subtag = "lzh-KR" -- KR = South Korea, as there is no code for Korea as a whole } -- FIXME: Temporary. m["lzh-lit"] = { "Literary Chinese", nil, "lzh", } -- FIXME: Temporary. FIXME: Do we need this? How does it differ from Old Chinese? m["lzh-pre"] = { "Pre-Classical Chinese", nil, "lzh", } ------------- Written Vernacular varieties ------------- -- FIXME: Temporary. m["cmn-wvc"] = { "Written vernacular Mandarin", 783605, "cmn", } -- FIXME: Temporary. FIXME: How does this differ from "Literary Cantonese"? m["yue-wvc"] = { "Written vernacular Cantonese", nil, "yue", } -- FIXME: Temporary. m["zhx-tai-wvc"] = { "Written vernacular Taishanese", nil, "zhx-tai", } ------------- 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"] = { "Beijing Mandarin", 1147606, "cmn-bec", } -- FIXME: Temporary. m["cmn-bec"] = { "Beijingic Mandarin", 2169652, "cmn", } -- FIXME: Temporary. NOTE: The Linguist List uses the code cmn-zho. m["cmn-cep"] = { "Central Plains Mandarin", 3048775, "cmn", aliases = {"Zhongyuan Mandarin"}, } m["cmn-ear"] = { "Early Mandarin", 837169, "cmn", ancestors = "ltc", } -- FIXME: Temporary. m["cmn-gua"] = { "Guanzhong Mandarin", 3431648, "cmn-cep", } -- FIXME: Temporary. Appears to be a subdialect of Guiliu Mandarin, which in turn is a subdialect of Southwestern Mandarin. m["cmn-gui"] = { "Guilin Mandarin", 11111636, "cmn-sow", } m["cmn-jhu"] = { "Jianghuai Mandarin", 2128953, "cmn", aliases = {"Lower Yangtze Mandarin"}, } -- FIXME: Temporary. m["cmn-lan"] = { "Lanyin Mandarin", 662754, "cmn", } -- FIXME: Temporary. m["cmn-MY"] = { "Malaysian Mandarin", 13646143, "cmn", } -- FIXME: Temporary. m["cmn-nan"] = { "Nanjing Mandarin", 2681098, "cmn-jhu", } -- FIXME: Temporary. m["cmn-noe"] = { "Northeastern Mandarin", 1064504, "cmn", } -- FIXME: Temporary. m["cmn-PH"] = { "Philippine Mandarin", 7185155, "cmn", } -- FIXME: Temporary. m["cmn-SG"] = { "Singapore Mandarin", 1048980, "cmn", } -- FIXME: Temporary. m["cmn-sow"] = { "Southwestern Mandarin", 2609239, "cmn", } -- FIXME: Temporary. Appears to be a subdialect of Jilu Mandarin. m["cmn-tia"] = { "Tianjin Mandarin", 7800220, "cmn", } -- 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"] = { "Taiwanese Mandarin", 262828, "cmn", } -- 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"] = { "Wuhan Mandarin", 11124731, "cmn-sow", aliases = {"Wuhanese"}, } -- FIXME: Temporary. Appears to be a subdialect of Lanyin Mandarin. m["cmn-xin"] = { "Xining Mandarin", nil, "cmn-lan", } -- FIXME: Temporary. m["cmn-yan"] = { "Yangzhou Mandarin", nil, "cmn-jhu", } ------------- Cantonese varieties ------------- -- FIXME: Temporary. m["yue-gua"] = { "Guangzhou Cantonese", nil, "yue", } -- FIXME: Temporary. Given the codes yue-yue or yue-can in the Linguist List. m["yue-HK"] = { "Hong Kong Cantonese", 5894342, "yue", } -- FIXME: Temporary. FIXME: How does this differ from "Written vernacular Cantonese"? m["yue-lit"] = { "Literary Cantonese", 2472605, "yue", } ------------- Wu varieties ------------- m["wuu-han"] = { "Hangzhounese", 5648144, "wuu", } m["wuu-nin"] = { "Ningbonese", 3972199, "wuu", } -- FIXME: Temporary. m["wuu-nor"] = { "Northern Wu", 7675988, "wuu", aliases = {"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"] = { "Shadi Wu", 6112340, "wuu-nor", } m["wuu-sha"] = { "Shanghainese", 36718, "wuu-nor", } m["wuu-suz"] = { "Suzhounese", 831744, "wuu-nor", } -- FIXME: Temporary. May be converted into a full language and/or split. m["wuu-wen"] = { "Wenzhounese", 710218, "wuu", } ------------- Xiang varieties ------------- m["hsn-lou"] = { "Loudi Xiang", 10943823, "hsn-old", } m["hsn-hya"] = { "Hengyang Xiang", 20689035, "hsn-hzh", } m["hsn-hzh"] = { "Hengzhou Xiang", nil, "hsn", } m["hsn-new"] = { "New Xiang", 7012696, "hsn", aliases = {"Chang-Yi"}, } m["hsn-old"] = { "Old Xiang", 7085453, "hsn", aliases = {"Lou-Shao"}, } ------------- Hakka varieties ------------- -- FIXME: Temporary. m["hak-dab"] = { "Dabu Hakka", 19855566, "hak", -- formerly hak-TW but seems to be spoken primary in Dabu County in Guangdong } -- FIXME: Temporary. m["hak-eam"] = { "Early Modern Hakka", nil, "hak", } -- FIXME: Temporary. m["hak-hai"] = { "Hailu Hakka", 17038519, "hak", -- often considered a Taiwanese lect but also spoken in [[Shanwei]], [[Guangdong]] } -- FIXME: Temporary. m["hak-HK"] = { "Hong Kong Hakka", 2675834, "hak", } -- FIXME: Temporary. m["hak-hui"] = { "Huiyang Hakka", 16873881, "hak", } -- FIXME: Temporary. m["hak-hui-MY"] = { "Malaysian Huiyang Hakka", nil, "hak-hui", } -- FIXME: Temporary. Similar to and possibly the parent of Sixian Hakka in Taiwan. m["hak-mei"] = { "Meixian Hakka", 839295, "hak", aliases = {"Moiyan Hakka", "Meizhou Hakka"}, } -- FIXME: Temporary. m["hak-six"] = { "Sixian Hakka", 9668261, "hak-TW", } -- FIXME: Temporary. m["hak-TW"] = { "Taiwanese Hakka", 2391532, "hak", } -- FIXME: Temporary. m["hak-zha"] = { "Zhao'an Hakka", 6703311, "hak", aliases = {"Zhangzhou Hakka"}, } -- Southern Min varieties -- m["nan-anx"] = { "Anxi Hokkien", 97064149, "nan-qua", } m["nan-cha"] = { "Changtai Hokkien", nil, "nan-zha", } m["nan-hou"] = { "Houlu Min", 19855492, "nan-dat", } m["nan-hui"] = { "Hui'an Hokkien", 16241797, "nan-qua", } m["nan-jin"] = { "Jinjiang Hokkien", 11089375, "nan-qua", } m["nan-kin"] = { "Kinmenese Hokkien", 56278342, "nan-xia", aliases = {"Kinmen Hokkien"}, } m["nan-med"] = { "Medan Hokkien", 6805114, "nan-zha", } m["nan-pen"] = { "Penang Hokkien", 11120689, "nan-zha", } m["nan-hbl-PH"] = { "Philippine Hokkien", 3236692, "nan-qua", } m["nan-qia"] = { "Qianlu Min", 19842517, "nan-dat", } m["nan-qua"] = { "Quanzhou Hokkien", 2251677, "nan-hbl", aliases = {"Chinchew", "Choanchew"}, } -- FIXME: Temporary? Derived from both Quanzhou and Zhangzhou Hokkien. m["nan-hbl-SG"] = { "Singapore Hokkien", 3846528, "nan-hbl", } m["nan-spm"] = { "Southern Malaysian Hokkien", 7570322, "nan-qua", aliases = {"Southern Malaysia Hokkien", "Southern Peninsular Malaysian Hokkien", "Southern Peninsular Malaysia Hokkien"} } m["nan-hbl-TW"] = { "Taiwanese Hokkien", 36778, "nan-hbl", } m["nan-ton"] = { "Tong'an Hokkien", nil, "nan-xia", } m["nan-xia"] = { "Xiamen Hokkien", 68744, "nan-hbl", aliases = {"Amoy", "Amoyese", "Amoynese", "Xiamenese"}, } m["nan-yon"] = { "Yongchun Hokkien", 65118728, "nan-qua", } m["nan-zha"] = { "Zhangzhou Hokkien", 8070492, "nan-hbl", aliases = {"Changchew", "Chiangchew", "Changchow"}, } m["nan-zho"] = { "Zhao'an Hokkien", 65118728, "nan-zha", aliases = {"Zhao'an", "Chawan", "Chawan Hokkien"}, } m["nan-zhp"] = { "Zhangping Hokkien", 15937822, "nan-zha", } ------------- Other Min varieties ------------- -- FIXME: Temporary. Affiliation within Min uncertain; some combination of Eastern and Southern. m["zhx-zho"] = { "Zhongshan Min", 8070958, "zh", } ------------- Other Chinese varieties ------------- -- FIXME: Temporary. Affiliation within Chinese uncertain; possibly Yue. m["zhx-dan"] = { "Danzhou Chinese", 2578935, "zh", } ------------- Chinese romanization varieties ------------- -- [[Wiktionary:Information desk/2022/June#Etymology Coding Issue]] -- [[Wiktionary:Grease pit/2022/June#Transliteration Systems in Etymologies 2]] m["cmn-pinyin"] = { "Hanyu Pinyin", 42222, "cmn", aliases = {"Pinyin"}, } m["cmn-tongyong"] = { "Tongyong Pinyin", 700739, "cmn", } m["cmn-wadegiles"] = { "Wade–Giles", 208442, "cmn", aliases = {"Wade-Giles", "Wade Giles"}, } m["zh-postal"] = { "Postal Romanization", 151868, "zh", } -- Chinese cyrillization m["cmn-palladius"] = { "Palladius", 1234239, "cmn", aliases = {"Palladius system"}, } ----------------------------------------------------- -- Tibetic varieties -- ----------------------------------------------------- m["adx"] = { "Amdo Tibetan", 56509, "bo", } m["kbg"] = { "Khamba", 12952626, "bo", } m["khg"] = { "Khams Tibetan", 56601, "bo", } m["tsk"] = { "Tseku", 11159532, "bo", } ---------------------------------------------------------------------------------------------------------------------- -- Tai-Kadai varieties -- ---------------------------------------------------------------------------------------------------------------------- m["th-old"] = { "သေံတြေံ", nil, "tai-swe-pro", wikipedia_article = "Thai language#Old Thai", } m["th-suk"] = { "သူခိုဝ်ထိုၚ် သေံတြေံ", -- 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"] = { "အယုဒ္ဓယ သေံတြေံ", -- 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"] = { "Shangsi Zhuang", 13216, "za", } ---------------------------------------------------------------------------------------------------------------------- -- Turkic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["trk-cmn-pro"] = { "Proto-Common Turkic", 1126028, "trk-pro", } m["trk-ogr-pro"] = { "Proto-Oghur", 1422731, "trk-pro", family = "trk-ogr", } m["trk-bul-pro"] = { "Proto-Bulgar", nil, "trk-ogr-pro", } m["trk-ogz-pro"] = { "Proto-Oghuz", 494600, "trk-pro", family = "trk-ogz", aliases = {"Southwestern Common Turkic"}, } m["crh-dbj"] = { "Dobrujan Tatar", 12811566, "crh", aliases = {"Romanian Tatar"}, } m["cv-ana"] = { "Anatri Chuvash", nil, "cv", aliases = {"Anatri", "Lower Chuvash"}, } m["cv-mid"] = { "Middle Chuvash", nil, "cv", ancestors = "cv-old", } m["cv-old"] = { "Old Chuvash", nil, "cv", ancestors = "xbo-vol", } m["cv-vir"] = { "Viryal Chuvash", 4278332, "cv", aliases = {"Viryal", "Upper Chuvash"}, } m["kjh-fyu"] = { "Fuyu Kyrgyz", 2598963, "kjh", aliases = {"Fuyu Kirgiz", "Fuyu Kirghiz", "Manchurian Kyrgyz", "Manchurian Kirgiz", "Manchurian Kirghiz"}, } m["klj-arg"] = { "Arghu", 33455, "klj", ancestors = "trk-cmn-pro", } m["otk-kir"] = { "Old Kirghiz", 83142, "otk", aliases = {"Yenisei Turkic", "Yenisei Kyrgyz"}, } m["otk-ork"] = { "Orkhon Turkic", 31295480, "otk", } m["qwm-cum"] = { "Cuman", 1075050, "qwm", aliases = {"Kuman", "Polovtsian", "Polovcian"}, } m["qwm-arm"] = { "Armeno-Kipchak", 2027503, "qwm", ancestors = "qwm-cum", aliases = {"Xıpçaχ tili", "Tatarça"}, } m["qwm-mam"] = { "Mamluk-Kipchak", 4279942, "qwm", aliases = {"Mameluk-Kipchak"}, } m["az-cls"] = { "Classical Azerbaijani", nil, "az", aliases = {"Classical Azeri"}, } m["qxq"] = { "Qashqai", 13192, "az", aliases = {"Qaşqay", "Qashqayi", "Kashkai", "Kashkay"}, } m["tr-CY"] = { "Cypriot Turkish", 7917392, "tr", } m["uz-afg"] = { -- NOTE: has ISO 639-3 code uzs assigned to it. "Afghan Uzbek", 1066787, "uz", aliases = {"Southern Uzbek"}, translit = "uz-afg-translit", } m["xbo-dan"] = { "Danube Bulgar", nil, "xbo", } m["xbo-vol"] = { "Volga Bulgar", nil, "xbo", } ---------------------------------------------------------------------------------------------------------------------- -- Uralic varieties -- ---------------------------------------------------------------------------------------------------------------------- m["fiu-pro"] = { "ဖေန်နဝ်-ဥူဂရေတ်-အခိုက်ကၞာ", 79890, "urj-pro", } m["urj-fpr-pro"] = { "ဖေန်နဝ်-ပဵုမေတ်-အခိုက်ကၞာ", nil, "urj-pro", } m["krl-nor"] = { "North Karelian", 125501196, "krl", } m["krl-sou"] = { "South Karelian", 129812730, "krl", } m["mns-eas"] = { "Eastern Mansi", 30311755, "mns-cen", } m["mns-wes"] = { "Western Mansi", 30311756, "mns-cen", } ---------------------------------------------------------------------------------------------------------------------- -- 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"] = { "taxonomic name", 522190, "mul", } ----------------------------------------------------- -- Elamite varieties -- ----------------------------------------------------- m["elx-old"] = { "Old Elamite", nil, "elx", } m["elx-mid"] = { "Middle Elamite", nil, "elx", } m["elx-neo"] = { "Neo-Elamite", nil, "elx", } m["elx-ach"] = { "Achaemenid Elamite", nil, "elx", } ----------------------------------------------------- -- Substrates -- ----------------------------------------------------- -- Pre-Roman substrates m["qsb-ibe"] = { "Paleo-Hispanic", 246801, "und", family = "qfa-sub", aliases = {"Palaeo-Hispanic", "Paleohispanic", "Palaeohispanic", "Paleo-Iberian", "Palaeo-Iberian"}, } m["qsb-bal"] = { "Paleo-Balkan", 1815070, "und", family = "qfa-sub", aliases = {"Palaeo-Balkan", "Paleobalkan", "Palaeobalkan"}, } m["xaq"] = { "Aquitanian", 500522, "euq-pro", family = "euq", } return require("Module:languages").finalizeData(m, "language", true) gw5930k1fyeztbhu11ibycsdfx2zqet မဝ်ဂျူ:etymology languages/code to canonical name 828 52683 402258 300273 2026-10-01T05:40:38Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402258 Scribunto text/plain return { ["aae"] = "Arbëresh Albanian", ["aat"] = "Arvanitika Albanian", ["act"] = "Achterhoeks", ["adx"] = "Amdo Tibetan", ["ae-old"] = "အဗါတ်သတေန်တြေံ", ["ae-yng"] = "အဗါတ်သတေန်အဝဲဍောတ်", ["ain-hok"] = "Hokkaido Ainu", ["ain-kur"] = "Kuril Ainu", ["ain-sak"] = "Sakhalin Ainu", ["akk-lbb"] = "Late Babylonian", ["akk-mas"] = "Middle Assyrian", ["akk-mbb"] = "Middle Babylonian", ["akk-nas"] = "Neo-Assyrian", ["akk-nbb"] = "Neo-Babylonian", ["akk-oas"] = "Old Assyrian", ["akk-obb"] = "Old Babylonian", ["akk-old"] = "Old Akkadian", ["akk-stb"] = "Standard Babylonian", ["aln"] = "Gheg Albanian", ["als"] = "Tosk Albanian", ["alv-kro"] = "Kromanti", ["ang-ang"] = "Anglian Old English", ["ang-ken"] = "Kentish Old English", ["ang-mer"] = "Mercian Old English", ["ang-nor"] = "Northumbrian Old English", ["arc-bib"] = "Biblical Aramaic", ["arc-cpa"] = "Christian Palestinian Aramaic", ["arc-hat"] = "အာရမေအဳ ဟာက်ထရာန်", ["arc-imp"] = "Imperial Aramaic", ["arc-jla"] = "Jewish Literary Aramaic", ["arc-nab"] = "Nabataean Aramaic", ["arc-old"] = "Old Aramaic", ["arc-pal"] = "အာရမေအဳ ပါန်မာဲရေန်", ["atn"] = "Ashtiani", ["az-cls"] = "Classical Azerbaijani", ["bat-pro"] = "ဗေါဝ်တေတ်-အခိုက်ကၞာ", ["bcc"] = "Southern Balochi", ["bew-kot"] = "Betawi Kota", ["bew-ora"] = "Betawi Ora", ["bew-udi"] = "Betawi Udik", ["bgn"] = "Western Balochi", ["bgp"] = "Eastern Balochi", ["bnt-cmn"] = "ဗါန်တူ ပံၚ်ကောံ", ["bra-old"] = "Old Braj", ["bry-ear"] = "Early Brythonic", ["bry-lat"] = "Late Brythonic", ["bsg-ban"] = "Bandari", ["bsg-hor"] = "Hormozi", ["bsg-min"] = "Minabi", ["bsh-kat"] = "ကာတဳဝဳရဳ", ["bsh-mum"] = "Mumviri", ["ca-val"] = "Valencian", ["ckm"] = "Chakavian Serbo-Croatian", ["cmn-MY"] = "Malaysian Mandarin", ["cmn-PH"] = "Philippine Mandarin", ["cmn-SG"] = "Singapore Mandarin", ["cmn-TW"] = "Taiwanese Mandarin", ["cmn-bec"] = "Beijingic Mandarin", ["cmn-bei"] = "Beijing Mandarin", ["cmn-cep"] = "Central Plains Mandarin", ["cmn-ear"] = "Early Mandarin", ["cmn-gua"] = "Guanzhong Mandarin", ["cmn-gui"] = "Guilin Mandarin", ["cmn-jhu"] = "Jianghuai Mandarin", ["cmn-lan"] = "Lanyin Mandarin", ["cmn-nan"] = "Nanjing Mandarin", ["cmn-noe"] = "Northeastern Mandarin", ["cmn-palladius"] = "Palladius", ["cmn-pinyin"] = "ဟာန်ယူ ဖှေန်အိန်", ["cmn-sow"] = "Southwestern Mandarin", ["cmn-tia"] = "Tianjin Mandarin", ["cmn-tongyong"] = "Tongyong Pinyin", ["cmn-wadegiles"] = "ဝေအ်–ဂျာယ်", ["cmn-wuh"] = "Wuhan Mandarin", ["cmn-wvc"] = "Written vernacular Mandarin", ["cmn-xin"] = "Xining Mandarin", ["cmn-yan"] = "Yangzhou Mandarin", ["cop-akh"] = "ကေအ်ပတေတ် အာပ်မေန်မေတ်", ["cop-boh"] = "ကေအ်ပတေတ် ဗဝ်ဟာဲရေတ်", ["cop-fay"] = "Fayyumic Coptic", ["cop-ggg"] = "Coptic Dialect G", ["cop-her"] = "Hermopolitan Coptic", ["cop-jjj"] = "Coptic Dialect J", ["cop-kkk"] = "Coptic Dialect K", ["cop-lyc"] = "Lycopolitan Coptic", ["cop-old"] = "Old Coptic", ["cop-oxy"] = "Oxyrhynchite Coptic", ["cop-ply"] = "Proto-Lycopolitan Coptic", ["cop-ppp"] = "Coptic Dialect P", ["cop-sah"] = "ကေအ်ပတေတ် သာဟေတ်ဒေတ်", ["crh-dbj"] = "Dobrujan Tatar", ["cs-ear"] = "Early Modern Czech", ["cu-bgm"] = "Middle Bulgarian", ["cv-ana"] = "Anatri", ["cv-mid"] = "Middle Chuvash", ["cv-old"] = "Old Chuvash", ["cv-vir"] = "Viryal", ["de-AT"] = "Austrian German", ["de-AT-vie"] = "Viennese German", ["de-CH"] = "Switzerland German", ["de-bal"] = "Baltic German", ["drt"] = "Drents", ["dv-add"] = "Addu Dhivehi", ["dv-huv"] = "Huvadhu Dhivehi", ["dv-mul"] = "Mulaku Dhivehi", ["egy-lat"] = "Late Egyptian", ["egy-mid"] = "Middle Egyptian", ["egy-nmi"] = "Neo-Middle Egyptian", ["egy-old"] = "Old Egyptian", ["el-crt"] = "Cretan Greek", ["el-cyp"] = "Cypriot Greek", ["el-kal"] = "Kaliarda", ["el-kth"] = "Katharevousa", ["el-pap"] = "Paphian Greek", ["elx-ach"] = "Achaemenid Elamite", ["elx-mid"] = "Middle Elamite", ["elx-neo"] = "Neo-Elamite", ["elx-old"] = "Old Elamite", ["en-AU"] = "Australian English", ["en-CA"] = "Canadian English", ["en-GB"] = "British English", ["en-GB-NIR"] = "Northern Irish English", ["en-GB-SCT"] = "Scottish English", ["en-GB-WLS"] = "Welsh English", ["en-HK"] = "Hong Kong English", ["en-IE"] = "Irish English", ["en-IM"] = "Manx English", ["en-IN"] = "Indian English", ["en-NNN"] = "North American English", ["en-US"] = "American English", ["en-US-CA"] = "California English", ["en-aae"] = "Australian Aboriginal English", ["en-ear"] = "Early Modern English", ["en-geo"] = "Geordie English", ["en-uls"] = "Ulster English", ["enm-esc"] = "Early Scots", ["enm-nor"] = "Northern Middle English", ["es-AR"] = "Rioplatense Spanish", ["es-CO"] = "Colombian Spanish", ["es-CU"] = "Cuban Spanish", ["es-MX"] = "Mexican Spanish", ["es-PE"] = "Peruvian Spanish", ["es-PR"] = "Puerto Rican Spanish", ["es-US"] = "United States Spanish", ["es-VE"] = "Venezuelan Spanish", ["es-ear"] = "Early Modern Spanish", ["es-lun"] = "Lunfardo", ["esi"] = "North Alaskan Inupiatun", ["esk"] = "Northwest Alaskan Inupiatun", ["fa-cls"] = "ပါရှေန်ဝၚ်ဂန္ထ", ["fa-ear"] = "Early New Persian", ["fa-ira"] = "ပါရှေန် အဳရာန်", ["fat"] = "Fante Akan", ["fay-bsh"] = "Bushehri", ["fay-bur"] = "Burenjani", ["fay-dav"] = "Davani", ["fay-dsh"] = "Dashtaki", ["fay-eze"] = "Emamzada Esma’ili", ["fay-gav"] = "Gavkoshaki", ["fay-kar"] = "Khargi", ["fay-kho"] = "Khollari", ["fay-kon"] = "Kondazi", ["fay-kzo"] = "Old Kazeruni", ["fay-mas"] = "Masarami", ["fay-pap"] = "Papuni", ["fay-sam"] = "Samghani", ["fay-sho"] = "Old Shirazi", ["fay-shr"] = "Shirazi", ["fay-sor"] = "Sorkhi", ["ffm"] = "Maasina Fulfulde", ["fiu-pro"] = "ဖေန်နဝ်-ဥူဂရေတ်-အခိုက်ကၞာ", ["fr-CA"] = "Canadian French", ["fr-CH"] = "Swiss French", ["fr-aca"] = "Acadian French", ["fr-lou"] = "Louisiana French", ["fr-mis"] = "Missouri French", ["frc"] = "Cajun French", ["frk"] = "ပြၚ်ဂေတ်တြေံ", ["fro-nor"] = "နဝ်မာံတြေံ", ["fro-pic"] = "Picard Old French", ["frs"] = "East Frisian Low German", ["fub"] = "Adamawa Fulfulde", ["fuc"] = "Pulaar", ["fue"] = "Borgu Fulfulde", ["fuf"] = "Pular", ["fuh"] = "Western Niger Fulfulde", ["fui"] = "Bagirmi Fulfulde", ["fuq"] = "Central-Eastern Niger Fulfulde", ["fuv"] = "Nigerian Fulfulde", ["gax"] = "Borana", ["gbz"] = "Zoroastrian Dari", ["gem-sue"] = "Suevic", ["gkm"] = "ဂရေတ် ၜါန်သေန်တိုၚ်", ["gmq-osw-lat"] = "Late Old Swedish", ["gos"] = "Gronings", ["grc-aeo"] = "ဂရေတ် ဗဳယိုဝ်ဃှေန်", ["grc-arc"] = "Arcadian Greek", ["grc-arp"] = "Arcadocypriot Greek", ["grc-att"] = "ဂရေတ် အာတ်ဒေတ်", ["grc-boi"] = "Boeotian Greek", ["grc-dor"] = "ဂရေတ် ဒေါန်ရေက်", ["grc-ela"] = "Elean Greek", ["grc-epc"] = "Epic Greek", ["grc-ion"] = "Ionic Greek", ["grc-koi"] = "ဂရေတ် ခါဝ်အိန်", ["grc-kre"] = "Cretan Ancient Greek", ["grc-opl"] = "Opuntian Locrian", ["grc-ozl"] = "Ozolian Locrian", ["grc-pam"] = "Pamphylian Greek", ["grc-ths"] = "Thessalian Greek", ["gsw-FR-als"] = "Alsatian Alemannic German", ["gsw-hig"] = "High Alemannic German", ["gsw-hst"] = "Highest Alemannic German", ["gsw-low"] = "Low Alemannic German", ["gu-kat"] = "Kathiyawadi", ["gu-lda"] = "Lisan ud-Dawat Gujarati", ["gzi"] = "Gazi", ["hae"] = "Harar Oromo", ["hak-TW"] = "Taiwanese Hakka", ["hak-dab"] = "Dabu Hakka", ["hak-eam"] = "Early Modern Hakka", ["hak-hai"] = "Hailu Hakka", ["hak-hui"] = "Huiyang Hakka", ["hak-hui-MY"] = "Malaysian Huiyang Hakka", ["hak-mei"] = "Meixian Hakka", ["hak-six"] = "Sixian Hakka", ["hak-zha"] = "Zhao'an Hakka", ["haz"] = "Hazaragi", ["hbo"] = "ဟဳဘရဝ် ပြကိုဟ်သၠပတ်", ["he-IL"] = "ဟဳဘရဝ် အေတ်သဝါလဳ", ["he-med"] = "ဟဳဘရဝ် ခေတ်လဒေါဝ်", ["he-mis"] = "ဟဳဘရဝ် မေတ်ချနာအေတ်", ["hi-mid"] = "Middle Hindi", ["hi-mum"] = "Bombay Hindi", ["hsn-hya"] = "Hengyang Xiang", ["hsn-hzh"] = "Hengzhou Xiang", ["hsn-lou"] = "Loudi Xiang", ["hsn-new"] = "New Xiang", ["hsn-old"] = "Old Xiang", ["ht-sdm"] = "Saint Dominican Creole French", ["inc-aav"] = "Avahattha", ["inc-agu"] = "Gurjara Apabhramsa", ["inc-aka"] = "Kasmiri Apabhramsa", ["inc-ama"] = "Maharastri Apabhramsa", ["inc-asa"] = "Sauraseni Apabhramsa", ["inc-ata"] = "Takka Apabhramsa", ["inc-avr"] = "Vracada Apabhramsa", ["inc-mit"] = "Mitanni", ["iro-ohu"] = "Old Wendat", ["iro-omo"] = "Old Mohawk", ["iro-oon"] = "Old Onondaga", ["it-CH"] = "Switzerland Italian", ["itc-ola"] = "Old Latin", ["ja-ear"] = "Early Modern Japanese", ["ja-mid"] = "Middle Japanese", ["ja-mid-ear"] = "Early Middle Japanese", ["ja-mid-lat"] = "Late Middle Japanese", ["jpa"] = "Jewish Palestinian Aramaic", ["jrb"] = "အာရဗဳ-ဇူဒိအဝ်", ["ka-mid"] = "Middle Georgian", ["kbg"] = "Khamba", ["kfm"] = "Khunsari", ["khg"] = "Khams Tibetan", ["kho-lat"] = "ခဝ်တာန်နေတ်ဇြဳလဇုဲ", ["kho-old"] = "ခဝ်တာန်နေတ်ဇြဳတြေံ", ["kjh-fyu"] = "Fuyu Kyrgyz", ["kjv"] = "Kajkavian Serbo-Croatian", ["klj-arg"] = "Arghu", ["kn-hav"] = "ဟာတ်ဝဳကာန်နာဒါ", ["kn-kun"] = "ခုန်ဒါကာန်နာဒါ", ["ko-cen"] = "Central Korean", ["ko-chu"] = "Chungcheong Korean", ["ko-gan"] = "Gangwon Korean", ["ko-gyg"] = "Gyeonggi Korean", ["ko-gys"] = "Gyeongsang Korean", ["ko-ham"] = "Hamgyong Korean", ["ko-hwa"] = "Hwanghae Korean", ["ko-jeo"] = "Jeolla Korean", ["ko-pyo"] = "Pyongan Korean", ["ko-yuk"] = "Yukjin Korean", ["kok-mid"] = "Middle Konkani", ["kok-old"] = "Old Konkani", ["ksh"] = "ခေါဝ်အ်", ["la-cla"] = "Classical Latin", ["la-con"] = "Contemporary Latin", ["la-ecc"] = "Ecclesiastical Latin", ["la-eme"] = "Early Medieval Latin", ["la-lat"] = "လပ်တေန်လဇုဲ", ["la-med"] = "လပ်တေန် ခေတ်လဒေါဝ်", ["la-new"] = "New Latin", ["la-ren"] = "Renaissance Latin", ["la-vul"] = "လပ်တေန်အရိုၚ်", ["lng"] = "လီုဗါဒေါတ်", ["ltc-ear"] = "Early Middle Chinese", ["ltc-lat"] = "Late Middle Chinese", ["lzh-KO"] = "Korean Classical Chinese", ["lzh-VI"] = "Vietnamese Classical Chinese", ["lzh-cii"] = "Ci", ["lzh-cmn"] = "Classical Mandarin", ["lzh-cmn-TW"] = "Classical Taiwanese Mandarin", ["lzh-lit"] = "Literary Chinese", ["lzh-pre"] = "Pre-Classical Chinese", ["lzh-tai"] = "Classical Taishanese", ["lzh-yue"] = "Classical Cantonese", ["mis-idn"] = "Idiom Neutral", ["mis-tdl"] = "Turduli", ["mis-tdt"] = "Turdetani", ["mis-xnu"] = "Xiongnu", ["mn-cha"] = "Chakhar Mongolian", ["mn-kha"] = "Khalkha Mongolian", ["mn-khr"] = "Khorchin Mongolian", ["mn-ord"] = "Ordos Mongolian", ["mns-eas"] = "မာန်သဳ လ္ပာ်ဖာဗၟံက်-အခိုက်ကၞာ", ["mns-wes"] = "မာန်သဳ လ္ပာ်ဖာပလိုတ်-အခိုက်ကၞာ", ["ms-cla"] = "မလေဝ် ဝၚ်ဂန္တ", ["ms-old"] = "မလေဝ်တြေံ", ["mul-tax"] = "taxonomic name", ["nan-anx"] = "Anxi Hokkien", ["nan-cha"] = "Changtai Hokkien", ["nan-hbl-PH"] = "Philippine Hokkien", ["nan-hbl-SG"] = "Singapore Hokkien", ["nan-hbl-TW"] = "Taiwanese Hokkien", ["nan-hou"] = "Houlu Min", ["nan-hui"] = "Hui'an Hokkien", ["nan-jin"] = "Jinjiang Hokkien", ["nan-kin"] = "Kinmenese Hokkien", ["nan-med"] = "Medan Hokkien", ["nan-pen"] = "Penang Hokkien", ["nan-qia"] = "Qianlu Min", ["nan-qua"] = "Quanzhou Hokkien", ["nan-spm"] = "Southern Malaysian Hokkien", ["nan-ton"] = "Tong'an Hokkien", ["nan-xia"] = "Xiamen Hokkien", ["nan-yon"] = "Yongchun Hokkien", ["nan-zha"] = "Zhangzhou Hokkien", ["nan-zho"] = "Zhao'an Hokkien", ["nan-zhp"] = "Zhangping Hokkien", ["ncb-cam"] = "Camorta", ["ncb-kat"] = "Katchal", ["ncb-nan"] = "Nancowry", ["nds-lpr"] = "Low Prussian", ["nl-BE"] = "Belgian Dutch", ["non-grn"] = "Greenlandic Norse", ["non-oen"] = "Old East Norse", ["non-own"] = "Old West Norse", ["nrf-grn"] = "Guernsey Norman", ["nrf-jer"] = "Jersey Norman", ["ntz"] = "Natanzi", ["nyq"] = "Nayini", ["oc-ara"] = "Aranese", ["oc-auv"] = "Auvergnat", ["oc-gas"] = "ဂေါသ်သကာန်", ["oc-jud"] = "Shuadit", ["oc-lan"] = "လာမ်ဂဝေအ်ဒံက်ဃှေန်", ["oc-lim"] = "လိမူသေန်", ["oc-pro"] = "Provençal", ["oc-pro-old"] = "Old Provençal", ["oc-viv"] = "Vivaro-Alpine", ["och-ear"] = "Early Old Chinese", ["och-lat"] = "Late Old Chinese", ["ojp-eas"] = "Eastern Old Japanese", ["okm-ear"] = "Early Middle Korean", ["oko-lat"] = "Late Old Korean", ["okz-ang"] = "ခမေန်တြေံ အာန်ခေါဝ်ရဳယာန်", ["okz-pre"] = "ခမေန်တြေံ ကၠာ-အာန်ခေါဝ်ရဳယာန်", ["oos-ear"] = "Early Old Ossetic", ["oos-lat"] = "Late Old Ossetic", ["orc"] = "Orma", ["oru-kan"] = "Kaniguram", ["oru-log"] = "Logar", ["os-dig"] = "ဒိကိုဝ်", ["os-iro"] = "အာဲရာန်", ["osc-luc"] = "Lucanian", ["osc-sam"] = "Samnite", ["otk-kir"] = "Old Kirghiz", ["pal-ear"] = "Early Middle Persian", ["pal-lat"] = "Late Middle Persian", ["peo-ear"] = "Early Old Persian", ["peo-lat"] = "Late Old Persian", ["pfl"] = "Palatine German", ["pl-gor"] = "Goral", ["pl-gre"] = "Greater Polish", ["pl-les"] = "Lesser Polish", ["pl-mas"] = "Masovian Polish", ["pld"] = "Polari", ["pnb"] = "Western Panjabi", ["pra-abh"] = "Abhiri", ["pra-ard"] = "Ardhamagadhi Prakrit", ["pra-ava"] = "Avanti", ["pra-bah"] = "Bahliki", ["pra-can"] = "Candali", ["pra-dak"] = "Daksinatya", ["pra-dra"] = "Dramili", ["pra-hel"] = "Helu Prakrit", ["pra-kha"] = "ခါဿာ ပရာကရေတ်", ["pra-mag"] = "Magadhi Prakrit", ["pra-mah"] = "မဟာရာတ်ထရဳ ပရာကရေတ်", ["pra-odr"] = "Odri", ["pra-pai"] = "Paisaci Prakrit", ["pra-pra"] = "Pracya", ["pra-sab"] = "Sabari", ["pra-sak"] = "Sakari", ["pra-sau"] = "သောရာသေနဳ ပရာကရေတ်", ["prs"] = "ဒါရဳ", ["ps-afr"] = "Afridi", ["ps-ban"] = "Bannu", ["ps-bng"] = "Bangash", ["ps-cgi"] = "Central Ghilzay", ["ps-jad"] = "Jadrani", ["ps-kak"] = "Kakari", ["ps-kan"] = "Kandahari", ["ps-mah"] = "Mahsudi", ["ps-nea"] = "Northeastern Pashto", ["ps-nwe"] = "Northwestern Pashto", ["ps-pes"] = "Peshawari", ["ps-sea"] = "Southeastern Pashto", ["ps-ser"] = "Sher", ["ps-swe"] = "Southwestern Pashto", ["ps-waz"] = "Waziri", ["ps-xat"] = "Khatak", ["pse-bsm"] = "Besemah", ["pt-BR"] = "Brazilian Portuguese", ["pt-PT"] = "European Portuguese", ["qsb-bal"] = "Paleo-Balkan", ["qsb-bma"] = "ဗါတ်တဳရဳယျာ–မာဂျဳယျာနာ အပၠဴ", ["qsb-grc"] = "ဂရေတ်-ဖှဳ", ["qsb-ibe"] = "a pre-Roman substrate of Iberia", ["qsb-pyg"] = "a substrate language originally spoken by the Pygmies", ["qwm-arm"] = "ခေတ်ချေသ်-အာမဳနဝ်", ["qwm-mam"] = "ခေတ်ချေသ်-မါန်ဋ္ဌူ", ["qxq"] = "Qashqai", ["rdb-jir"] = "Jirofti", ["rdb-kah"] = "Kahnuji", ["roa-oit"] = "အဳတလဳတြေံ", ["rw-kin"] = "ခေါန်ယျာဝါန်ဒါ", ["rw-run"] = "Kirundi", ["sa-bhs"] = "Buddhist Hybrid Sanskrit", ["sa-bra"] = "Brahmanic Sanskrit", ["sa-cls"] = "Classical Sanskrit", ["sa-neo"] = "New Sanskrit", ["sa-ved"] = "Vedic Sanskrit", ["sc-nuo"] = "Nuorese", ["sc-src"] = "Logudorese", ["sc-sro"] = "Campidanese", ["sco-ins"] = "Insular Scots", ["sco-nor"] = "Northern Scots", ["sco-sou"] = "South Scots", ["sco-uls"] = "Ulster Scots", ["sdz"] = "Sallands", ["sgh-baj"] = "Bajui", ["sgh-bar"] = "Bartangi", ["sgh-bro"] = "Bartangi-Oroshori", ["sgh-oro"] = "Oroshori", ["sgh-ros"] = "Roshani", ["sgh-rsx"] = "Roshani-Khufi", ["sgh-xgb"] = "Khughni-Bajui", ["sgh-xuf"] = "Khufi", ["sgh-xug"] = "Khughni", ["sh-tor"] = "Torlakian Serbo-Croatian", ["si-med"] = "Medieval Sinhalese", ["sli"] = "Silesian East Central German", ["sog-ear"] = "Early Sogdian", ["sog-lat"] = "Late Sogdian", ["soj"] = "Soi", ["ssn"] = "Waata", ["stl"] = "Stellingwerfs", ["sxu"] = "Upper Saxon German", ["ta-mid"] = "တမဳလ်အဒေါဝ်", ["tai-shz"] = "Shangsi Zhuang", ["taq"] = "Tamasheq", ["tbq-pro"] = "Proto-Tibeto-Burman", ["th-new"] = "Hacked Thai", ["thv"] = "Tamahaq", ["thz"] = "Tayert", ["tks-cal"] = "Chali Tati", ["tks-dan"] = "Danesfani", ["tks-ebr"] = "Ebrahimabadi", ["tks-esf"] = "Esfarvarini", ["tks-sag"] = "Sagzabadi", ["tks-tak"] = "Takestani", ["tks-xia"] = "Khiaraji", ["tks-xoz"] = "Khoznini", ["tl-cls"] = "Classical Tagalog", ["tl-old"] = "Old Tagalog", ["tly-anb"] = "Anbarani", ["tly-asa"] = "Asalemi", ["tly-aze"] = "Azerbaijani Talysh", ["tly-cen"] = "Central Talysh", ["tly-fum"] = "Fumani", ["tly-kar"] = "Karganrudi", ["tly-msa"] = "Masali", ["tly-msu"] = "Masulei", ["tly-nor"] = "Northern Talysh", ["tly-san"] = "Shandarmani", ["tly-sou"] = "Southern Talysh", ["tly-tal"] = "Taleshdulabi", ["tly-tul"] = "Tularudi", ["tmh-ght"] = "Ghat", ["tmr"] = "Jewish Babylonian Aramaic", ["tr-CY"] = "Cypriot Turkish", ["trk-cmn"] = "တာခ်ကေတ် သာမည", ["trk-ogz-pro"] = "အဝ်ဂေါတ်-အခိုက်ကၞာ", ["tsk"] = "Tseku", ["ttq"] = "ထာဝါလပ်မေတ်", ["tw"] = "Twi Akan", ["tw-abr"] = "Bono Twi", ["tw-aku"] = "Akuapem Twi", ["tw-asa"] = "Asante Twi", ["twd"] = "Twents", ["urj-fpr-pro"] = "ဖေန်နဝ်-ပဵုမေတ်-အခိုက်ကၞာ", ["vaf"] = "Vafsi", ["vel"] = "Veluws", ["wae"] = "Walser German", ["wep"] = "Westphalian", ["woy"] = "Weyto", ["wuu-chm"] = "Shadi Wu", ["wuu-han"] = "Hangzhounese", ["wuu-nin"] = "Ningbonese", ["wuu-nor"] = "Northern Wu", ["wuu-sha"] = "Shanghainese", ["wuu-suz"] = "Suzhounese", ["wuu-wen"] = "Wenzhounese", ["xcg"] = "Cisalpine Gaulish", ["xme-aby"] = "Abyanehi", ["xme-abz"] = "Abuzeydabadi", ["xme-amo"] = "Amorehi", ["xme-ana"] = "Anaraki", ["xme-ard"] = "Ardestani", ["xme-azr"] = "Old Azari", ["xme-bdr"] = "Badrudi", ["xme-bid"] = "Bidhandi", ["xme-bij"] = "Bijagani", ["xme-bor"] = "Borujerdi", ["xme-cim"] = "Chimehi", ["xme-del"] = "Delijani", ["xme-far"] = "Farizandi", ["xme-ham"] = "Hamadani", ["xme-han"] = "Hanjani", ["xme-isf"] = "Isfahani", ["xme-jow"] = "Jowshaqani", ["xme-kaf"] = "Kafroni", ["xme-kah"] = "Kahaki", ["xme-kas"] = "Kashani", ["xme-kes"] = "Kesehi", ["xme-kom"] = "Komjani", ["xme-krm"] = "Kermani", ["xme-mah"] = "Mahallati", ["xme-mey"] = "Meymehi", ["xme-nar"] = "Naraqi", ["xme-nas"] = "Nashalji", ["xme-nus"] = "Nushabadi", ["xme-qal"] = "Qalhari", ["xme-qoh"] = "Qohrudi", ["xme-sed"] = "Sedehi", ["xme-tar"] = "Tari", ["xme-trh"] = "Tarehi", ["xme-ttc-cen"] = "Central Tati", ["xme-ttc-eas"] = "Eastern Tati", ["xme-ttc-nor"] = "Northern Tati", ["xme-ttc-sou"] = "Southern Tati", ["xme-ttc-wes"] = "Western Tati", ["xme-val"] = "Valujerdi", ["xme-var"] = "Varani", ["xme-von"] = "Vonishuni", ["xme-vrz"] = "Varzenehi", ["xme-xur"] = "Khuri", ["xme-yar"] = "Yarandi", ["xme-yaz"] = "Yazdi", ["xme-zef"] = "Zefrehi", ["xme-zor"] = "Zori", ["xmn"] = "ပါရှေန်မနဳချေန်အဒေါဝ်", ["xng-ear"] = "Early Middle Mongol", ["xng-lat"] = "Late Middle Mongol", ["xno"] = "အာန်ဂလဝ်-နဝ်မာန်", ["xno-law"] = "Law French", ["xtg"] = "Transalpine Gaulish", ["xum-her"] = "Hernician", ["xvi"] = "ကာမ်ဝဳရဳ", ["yue-HK"] = "Hong Kong Cantonese", ["yue-gua"] = "Guangzhou Cantonese", ["yue-lit"] = "Literary Cantonese", ["yue-wvc"] = "Written vernacular Cantonese", ["zh-postal"] = "Postal Romanization", ["zhx-dan"] = "Danzhou Chinese", ["zhx-tai-wvc"] = "Written vernacular Taishanese", ["zhx-zho"] = "Zhongshan Min", ["zle-mru"] = "Middle Russian", ["zle-obe"] = "Old Belarusian", ["zle-ops"] = "Old Pskovian", ["zle-ouk"] = "Old Ukrainian", ["zlw-mpl"] = "Middle Polish", } j91d7td5o13j2hhk2s78lyc4ndf2yov 402260 402258 2026-10-01T05:45:50Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402260 Scribunto text/plain return { ["aae"] = "Arbëresh Albanian", ["aat"] = "Arvanitika Albanian", ["act"] = "Achterhoeks", ["adx"] = "Amdo Tibetan", ["ae-old"] = "အဗါတ်သတေန်တြေံ", ["ae-yng"] = "အဗါတ်သတေန်အဝဲဍောတ်", ["ain-hok"] = "Hokkaido Ainu", ["ain-kur"] = "Kuril Ainu", ["ain-sak"] = "Sakhalin Ainu", ["akk-lbb"] = "Late Babylonian", ["akk-mas"] = "Middle Assyrian", ["akk-mbb"] = "Middle Babylonian", ["akk-nas"] = "Neo-Assyrian", ["akk-nbb"] = "Neo-Babylonian", ["akk-oas"] = "Old Assyrian", ["akk-obb"] = "Old Babylonian", ["akk-old"] = "Old Akkadian", ["akk-stb"] = "Standard Babylonian", ["aln"] = "Gheg Albanian", ["als"] = "Tosk Albanian", ["alv-kro"] = "Kromanti", ["ang-ang"] = "Anglian Old English", ["ang-ken"] = "Kentish Old English", ["ang-mer"] = "Mercian Old English", ["ang-nor"] = "Northumbrian Old English", ["arc-bib"] = "Biblical Aramaic", ["arc-cpa"] = "Christian Palestinian Aramaic", ["arc-hat"] = "အာရမေအဳ ဟာက်ထရာန်", ["arc-imp"] = "Imperial Aramaic", ["arc-jla"] = "Jewish Literary Aramaic", ["arc-nab"] = "Nabataean Aramaic", ["arc-old"] = "Old Aramaic", ["arc-pal"] = "အာရမေအဳ ပါန်မာဲရေန်", ["atn"] = "Ashtiani", ["az-cls"] = "Classical Azerbaijani", ["bat-pro"] = "ဗေါဝ်တေတ်-အခိုက်ကၞာ", ["bcc"] = "Southern Balochi", ["bew-kot"] = "Betawi Kota", ["bew-ora"] = "Betawi Ora", ["bew-udi"] = "Betawi Udik", ["bgn"] = "Western Balochi", ["bgp"] = "Eastern Balochi", ["bnt-cmn"] = "ဗါန်တူ ပံၚ်ကောံ", ["bra-old"] = "Old Braj", ["bry-ear"] = "Early Brythonic", ["bry-lat"] = "Late Brythonic", ["bsg-ban"] = "Bandari", ["bsg-hor"] = "Hormozi", ["bsg-min"] = "Minabi", ["bsh-kat"] = "ကာတဳဝဳရဳ", ["bsh-mum"] = "Mumviri", ["ca-val"] = "Valencian", ["ckm"] = "Chakavian Serbo-Croatian", ["cmn-MY"] = "Malaysian Mandarin", ["cmn-PH"] = "Philippine Mandarin", ["cmn-SG"] = "Singapore Mandarin", ["cmn-TW"] = "Taiwanese Mandarin", ["cmn-bec"] = "Beijingic Mandarin", ["cmn-bei"] = "Beijing Mandarin", ["cmn-cep"] = "Central Plains Mandarin", ["cmn-ear"] = "Early Mandarin", ["cmn-gua"] = "Guanzhong Mandarin", ["cmn-gui"] = "Guilin Mandarin", ["cmn-jhu"] = "Jianghuai Mandarin", ["cmn-lan"] = "Lanyin Mandarin", ["cmn-nan"] = "Nanjing Mandarin", ["cmn-noe"] = "Northeastern Mandarin", ["cmn-palladius"] = "Palladius", ["cmn-pinyin"] = "ဟာန်ယူ ဖှေန်အိန်", ["cmn-sow"] = "Southwestern Mandarin", ["cmn-tia"] = "Tianjin Mandarin", ["cmn-tongyong"] = "Tongyong Pinyin", ["cmn-wadegiles"] = "ဝေအ်–ဂျာယ်", ["cmn-wuh"] = "Wuhan Mandarin", ["cmn-wvc"] = "Written vernacular Mandarin", ["cmn-xin"] = "Xining Mandarin", ["cmn-yan"] = "Yangzhou Mandarin", ["cop-akh"] = "ကေအ်ပတေတ် အာပ်မေန်မေတ်", ["cop-boh"] = "ကေအ်ပတေတ် ဗဝ်ဟာဲရေတ်", ["cop-fay"] = "Fayyumic Coptic", ["cop-ggg"] = "Coptic Dialect G", ["cop-her"] = "Hermopolitan Coptic", ["cop-jjj"] = "Coptic Dialect J", ["cop-kkk"] = "Coptic Dialect K", ["cop-lyc"] = "Lycopolitan Coptic", ["cop-old"] = "Old Coptic", ["cop-oxy"] = "Oxyrhynchite Coptic", ["cop-ply"] = "Proto-Lycopolitan Coptic", ["cop-ppp"] = "Coptic Dialect P", ["cop-sah"] = "ကေအ်ပတေတ် သာဟေတ်ဒေတ်", ["crh-dbj"] = "Dobrujan Tatar", ["cs-ear"] = "Early Modern Czech", ["cu-bgm"] = "Middle Bulgarian", ["cv-ana"] = "Anatri", ["cv-mid"] = "Middle Chuvash", ["cv-old"] = "Old Chuvash", ["cv-vir"] = "Viryal", ["de-AT"] = "Austrian German", ["de-AT-vie"] = "Viennese German", ["de-CH"] = "Switzerland German", ["de-bal"] = "Baltic German", ["drt"] = "Drents", ["dv-add"] = "Addu Dhivehi", ["dv-huv"] = "Huvadhu Dhivehi", ["dv-mul"] = "Mulaku Dhivehi", ["egy-lat"] = "Late Egyptian", ["egy-mid"] = "Middle Egyptian", ["egy-nmi"] = "Neo-Middle Egyptian", ["egy-old"] = "Old Egyptian", ["el-crt"] = "Cretan Greek", ["el-cyp"] = "Cypriot Greek", ["el-kal"] = "Kaliarda", ["el-kth"] = "Katharevousa", ["el-pap"] = "Paphian Greek", ["elx-ach"] = "Achaemenid Elamite", ["elx-mid"] = "Middle Elamite", ["elx-neo"] = "Neo-Elamite", ["elx-old"] = "Old Elamite", ["en-AU"] = "Australian English", ["en-CA"] = "Canadian English", ["en-GB"] = "British English", ["en-GB-NIR"] = "Northern Irish English", ["en-GB-SCT"] = "Scottish English", ["en-GB-WLS"] = "Welsh English", ["en-HK"] = "Hong Kong English", ["en-IE"] = "Irish English", ["en-IM"] = "Manx English", ["en-IN"] = "Indian English", ["en-NNN"] = "North American English", ["en-US"] = "American English", ["en-US-CA"] = "California English", ["en-aae"] = "Australian Aboriginal English", ["en-ear"] = "Early Modern English", ["en-geo"] = "Geordie English", ["en-uls"] = "Ulster English", ["enm-esc"] = "Early Scots", ["enm-nor"] = "Northern Middle English", ["es-AR"] = "Rioplatense Spanish", ["es-CO"] = "Colombian Spanish", ["es-CU"] = "Cuban Spanish", ["es-MX"] = "Mexican Spanish", ["es-PE"] = "Peruvian Spanish", ["es-PR"] = "Puerto Rican Spanish", ["es-US"] = "United States Spanish", ["es-VE"] = "Venezuelan Spanish", ["es-ear"] = "Early Modern Spanish", ["es-lun"] = "Lunfardo", ["esi"] = "North Alaskan Inupiatun", ["esk"] = "Northwest Alaskan Inupiatun", ["fa-cls"] = "ပါရှေန်ဝၚ်ဂန္ထ", ["fa-ear"] = "Early New Persian", ["fa-ira"] = "ပါရှေန် အဳရာန်", ["fat"] = "Fante Akan", ["fay-bsh"] = "Bushehri", ["fay-bur"] = "Burenjani", ["fay-dav"] = "Davani", ["fay-dsh"] = "Dashtaki", ["fay-eze"] = "Emamzada Esma’ili", ["fay-gav"] = "Gavkoshaki", ["fay-kar"] = "Khargi", ["fay-kho"] = "Khollari", ["fay-kon"] = "Kondazi", ["fay-kzo"] = "Old Kazeruni", ["fay-mas"] = "Masarami", ["fay-pap"] = "Papuni", ["fay-sam"] = "Samghani", ["fay-sho"] = "Old Shirazi", ["fay-shr"] = "Shirazi", ["fay-sor"] = "Sorkhi", ["ffm"] = "Maasina Fulfulde", ["fiu-pro"] = "ဖေန်နဝ်-ဥူဂရေတ်-အခိုက်ကၞာ", ["fr-CA"] = "Canadian French", ["fr-CH"] = "Swiss French", ["fr-aca"] = "Acadian French", ["fr-lou"] = "Louisiana French", ["fr-mis"] = "Missouri French", ["frc"] = "Cajun French", ["frk"] = "ပြၚ်ဂေတ်တြေံ", ["fro-nor"] = "နဝ်မာံတြေံ", ["fro-pic"] = "Picard Old French", ["frs"] = "East Frisian Low German", ["fub"] = "Adamawa Fulfulde", ["fuc"] = "Pulaar", ["fue"] = "Borgu Fulfulde", ["fuf"] = "Pular", ["fuh"] = "Western Niger Fulfulde", ["fui"] = "Bagirmi Fulfulde", ["fuq"] = "Central-Eastern Niger Fulfulde", ["fuv"] = "Nigerian Fulfulde", ["gax"] = "Borana", ["gbz"] = "Zoroastrian Dari", ["gem-sue"] = "Suevic", ["gkm"] = "ဂရေတ် ၜါန်သေန်တိုၚ်", ["gmq-osw-lat"] = "Late Old Swedish", ["gos"] = "Gronings", ["grc-aeo"] = "ဂရေတ် ဗဳယိုဝ်ဃှေန်", ["grc-arc"] = "Arcadian Greek", ["grc-arp"] = "Arcadocypriot Greek", ["grc-att"] = "ဂရေတ် အာတ်ဒေတ်", ["grc-boi"] = "Boeotian Greek", ["grc-dor"] = "ဂရေတ် ဒေါန်ရေက်", ["grc-ela"] = "Elean Greek", ["grc-epc"] = "Epic Greek", ["grc-ion"] = "Ionic Greek", ["grc-koi"] = "ဂရေတ် ခါဝ်အိန်", ["grc-kre"] = "Cretan Ancient Greek", ["grc-opl"] = "Opuntian Locrian", ["grc-ozl"] = "Ozolian Locrian", ["grc-pam"] = "Pamphylian Greek", ["grc-ths"] = "Thessalian Greek", ["gsw-FR-als"] = "Alsatian Alemannic German", ["gsw-hig"] = "High Alemannic German", ["gsw-hst"] = "Highest Alemannic German", ["gsw-low"] = "Low Alemannic German", ["gu-kat"] = "Kathiyawadi", ["gu-lda"] = "Lisan ud-Dawat Gujarati", ["gzi"] = "Gazi", ["hae"] = "Harar Oromo", ["hak-TW"] = "Taiwanese Hakka", ["hak-dab"] = "Dabu Hakka", ["hak-eam"] = "Early Modern Hakka", ["hak-hai"] = "Hailu Hakka", ["hak-hui"] = "Huiyang Hakka", ["hak-hui-MY"] = "Malaysian Huiyang Hakka", ["hak-mei"] = "Meixian Hakka", ["hak-six"] = "Sixian Hakka", ["hak-zha"] = "Zhao'an Hakka", ["haz"] = "Hazaragi", ["hbo"] = "ဟဳဘရဝ် ပြကိုဟ်သၠပတ်", ["he-IL"] = "ဟဳဘရဝ် အေတ်သဝါလဳ", ["he-med"] = "ဟဳဘရဝ် ခေတ်လဒေါဝ်", ["he-mis"] = "ဟဳဘရဝ် မေတ်ချနာအေတ်", ["hi-mid"] = "Middle Hindi", ["hi-mum"] = "Bombay Hindi", ["hsn-hya"] = "Hengyang Xiang", ["hsn-hzh"] = "Hengzhou Xiang", ["hsn-lou"] = "Loudi Xiang", ["hsn-new"] = "New Xiang", ["hsn-old"] = "Old Xiang", ["ht-sdm"] = "Saint Dominican Creole French", ["inc-aav"] = "Avahattha", ["inc-agu"] = "Gurjara Apabhramsa", ["inc-aka"] = "Kasmiri Apabhramsa", ["inc-ama"] = "Maharastri Apabhramsa", ["inc-asa"] = "Sauraseni Apabhramsa", ["inc-ata"] = "Takka Apabhramsa", ["inc-avr"] = "Vracada Apabhramsa", ["inc-mit"] = "Mitanni", ["iro-ohu"] = "Old Wendat", ["iro-omo"] = "Old Mohawk", ["iro-oon"] = "Old Onondaga", ["it-CH"] = "Switzerland Italian", ["itc-ola"] = "Old Latin", ["ja-ear"] = "Early Modern Japanese", ["ja-mid"] = "Middle Japanese", ["ja-mid-ear"] = "Early Middle Japanese", ["ja-mid-lat"] = "Late Middle Japanese", ["jpa"] = "Jewish Palestinian Aramaic", ["jrb"] = "အာရဗဳ-ဇူဒိအဝ်", ["ka-mid"] = "Middle Georgian", ["kbg"] = "Khamba", ["kfm"] = "Khunsari", ["khg"] = "Khams Tibetan", ["kho-lat"] = "ခဝ်တာန်နေတ်ဇြဳလဇုဲ", ["kho-old"] = "ခဝ်တာန်နေတ်ဇြဳတြေံ", ["kjh-fyu"] = "Fuyu Kyrgyz", ["kjv"] = "Kajkavian Serbo-Croatian", ["klj-arg"] = "Arghu", ["kn-hav"] = "ဟာတ်ဝဳကာန်နာဒါ", ["kn-kun"] = "ခုန်ဒါကာန်နာဒါ", ["ko-cen"] = "Central Korean", ["ko-chu"] = "Chungcheong Korean", ["ko-gan"] = "Gangwon Korean", ["ko-gyg"] = "Gyeonggi Korean", ["ko-gys"] = "Gyeongsang Korean", ["ko-ham"] = "Hamgyong Korean", ["ko-hwa"] = "Hwanghae Korean", ["ko-jeo"] = "Jeolla Korean", ["ko-pyo"] = "Pyongan Korean", ["ko-yuk"] = "Yukjin Korean", ["kok-mid"] = "Middle Konkani", ["kok-old"] = "Old Konkani", ["ksh"] = "ခေါဝ်အ်", ["la-cla"] = "Classical Latin", ["la-con"] = "Contemporary Latin", ["la-ecc"] = "Ecclesiastical Latin", ["la-eme"] = "Early Medieval Latin", ["la-lat"] = "လပ်တေန်လဇုဲ", ["la-med"] = "လပ်တေန် ခေတ်လဒေါဝ်", ["la-new"] = "New Latin", ["la-ren"] = "Renaissance Latin", ["la-vul"] = "လပ်တေန်အရိုၚ်", ["lng"] = "လီုဗါဒေါတ်", ["ltc-ear"] = "Early Middle Chinese", ["ltc-lat"] = "Late Middle Chinese", ["lzh-KO"] = "Korean Classical Chinese", ["lzh-VI"] = "Vietnamese Classical Chinese", ["lzh-cii"] = "Ci", ["lzh-cmn"] = "Classical Mandarin", ["lzh-cmn-TW"] = "Classical Taiwanese Mandarin", ["lzh-lit"] = "Literary Chinese", ["lzh-pre"] = "Pre-Classical Chinese", ["lzh-tai"] = "Classical Taishanese", ["lzh-yue"] = "Classical Cantonese", ["mis-idn"] = "Idiom Neutral", ["mis-tdl"] = "Turduli", ["mis-tdt"] = "Turdetani", ["mis-xnu"] = "Xiongnu", ["mn-cha"] = "Chakhar Mongolian", ["mn-kha"] = "Khalkha Mongolian", ["mn-khr"] = "Khorchin Mongolian", ["mn-ord"] = "Ordos Mongolian", ["mns-eas"] = "မာန်သဳ လ္ပာ်ဖာဗၟံက်-အခိုက်ကၞာ", ["mns-wes"] = "မာန်သဳ လ္ပာ်ဖာပလိုတ်-အခိုက်ကၞာ", ["ms-cla"] = "မလေဝ် ဝၚ်ဂန္တ", ["ms-old"] = "မလေဝ်တြေံ", ["mul-tax"] = "taxonomic name", ["nan-anx"] = "Anxi Hokkien", ["nan-cha"] = "Changtai Hokkien", ["nan-hbl-PH"] = "Philippine Hokkien", ["nan-hbl-SG"] = "Singapore Hokkien", ["nan-hbl-TW"] = "Taiwanese Hokkien", ["nan-hou"] = "Houlu Min", ["nan-hui"] = "Hui'an Hokkien", ["nan-jin"] = "Jinjiang Hokkien", ["nan-kin"] = "Kinmenese Hokkien", ["nan-med"] = "Medan Hokkien", ["nan-pen"] = "Penang Hokkien", ["nan-qia"] = "Qianlu Min", ["nan-qua"] = "Quanzhou Hokkien", ["nan-spm"] = "Southern Malaysian Hokkien", ["nan-ton"] = "Tong'an Hokkien", ["nan-xia"] = "Xiamen Hokkien", ["nan-yon"] = "Yongchun Hokkien", ["nan-zha"] = "Zhangzhou Hokkien", ["nan-zho"] = "Zhao'an Hokkien", ["nan-zhp"] = "Zhangping Hokkien", ["ncb-cam"] = "Camorta", ["ncb-kat"] = "Katchal", ["ncb-nan"] = "Nancowry", ["nds-lpr"] = "Low Prussian", ["nl-BE"] = "Belgian Dutch", ["non-grn"] = "Greenlandic Norse", ["non-oen"] = "Old East Norse", ["non-own"] = "Old West Norse", ["nrf-grn"] = "Guernsey Norman", ["nrf-jer"] = "Jersey Norman", ["ntz"] = "Natanzi", ["nyq"] = "Nayini", ["oc-ara"] = "Aranese", ["oc-auv"] = "Auvergnat", ["oc-gas"] = "ဂေါသ်သကာန်", ["oc-jud"] = "Shuadit", ["oc-lan"] = "လာမ်ဂဝေအ်ဒံက်ဃှေန်", ["oc-lim"] = "လိမူသေန်", ["oc-pro"] = "Provençal", ["oc-pro-old"] = "Old Provençal", ["oc-viv"] = "Vivaro-Alpine", ["och-ear"] = "Early Old Chinese", ["och-lat"] = "Late Old Chinese", ["ojp-eas"] = "Eastern Old Japanese", ["okm-ear"] = "Early Middle Korean", ["oko-lat"] = "Late Old Korean", ["okz-ang"] = "ခမေန်တြေံ အာန်ခေါဝ်ရဳယာန်", ["okz-pre"] = "ခမေန်တြေံ ကၠာ-အာန်ခေါဝ်ရဳယာန်", ["oos-ear"] = "Early Old Ossetic", ["oos-lat"] = "Late Old Ossetic", ["orc"] = "Orma", ["oru-kan"] = "Kaniguram", ["oru-log"] = "Logar", ["os-dig"] = "ဒိကိုဝ်", ["os-iro"] = "အာဲရာန်", ["osc-luc"] = "Lucanian", ["osc-sam"] = "Samnite", ["otk-kir"] = "Old Kirghiz", ["pal-ear"] = "Early Middle Persian", ["pal-lat"] = "Late Middle Persian", ["peo-ear"] = "Early Old Persian", ["peo-lat"] = "Late Old Persian", ["pfl"] = "Palatine German", ["pl-gor"] = "Goral", ["pl-gre"] = "Greater Polish", ["pl-les"] = "Lesser Polish", ["pl-mas"] = "Masovian Polish", ["pld"] = "Polari", ["pnb"] = "Western Panjabi", ["pra-abh"] = "Abhiri", ["pra-ard"] = "Ardhamagadhi Prakrit", ["pra-ava"] = "Avanti", ["pra-bah"] = "Bahliki", ["pra-can"] = "Candali", ["pra-dak"] = "Daksinatya", ["pra-dra"] = "Dramili", ["pra-hel"] = "Helu Prakrit", ["pra-kha"] = "ခါဿာ ပရာကရေတ်", ["pra-mag"] = "Magadhi Prakrit", ["pra-mah"] = "မဟာရာတ်ထရဳ ပရာကရေတ်", ["pra-odr"] = "Odri", ["pra-pai"] = "Paisaci Prakrit", ["pra-pra"] = "Pracya", ["pra-sab"] = "Sabari", ["pra-sak"] = "Sakari", ["pra-sau"] = "သောရာသေနဳ ပရာကရေတ်", ["prs"] = "ဒါရဳ", ["ps-afr"] = "Afridi", ["ps-ban"] = "Bannu", ["ps-bng"] = "Bangash", ["ps-cgi"] = "Central Ghilzay", ["ps-jad"] = "Jadrani", ["ps-kak"] = "Kakari", ["ps-kan"] = "Kandahari", ["ps-mah"] = "Mahsudi", ["ps-nea"] = "Northeastern Pashto", ["ps-nwe"] = "Northwestern Pashto", ["ps-pes"] = "Peshawari", ["ps-sea"] = "Southeastern Pashto", ["ps-ser"] = "Sher", ["ps-swe"] = "Southwestern Pashto", ["ps-waz"] = "Waziri", ["ps-xat"] = "Khatak", ["pse-bsm"] = "Besemah", ["pt-BR"] = "Brazilian Portuguese", ["pt-PT"] = "European Portuguese", ["qsb-bal"] = "Paleo-Balkan", ["qsb-bma"] = "ဗါတ်တဳရဳယျာ–မာဂျဳယျာနာ အပၠဴ", ["qsb-grc"] = "ဂရေတ်-ဖှဳ", ["qsb-ibe"] = "a pre-Roman substrate of Iberia", ["qsb-pyg"] = "a substrate language originally spoken by the Pygmies", ["qwm-arm"] = "ခေတ်ချေသ်-အာမဳနဝ်", ["qwm-mam"] = "ခေတ်ချေသ်-မါန်ဋ္ဌူ", ["qxq"] = "Qashqai", ["rdb-jir"] = "Jirofti", ["rdb-kah"] = "Kahnuji", ["roa-oit"] = "အဳတလဳတြေံ", ["rw-kin"] = "ခေါန်ယျာဝါန်ဒါ", ["rw-run"] = "Kirundi", ["sa-bhs"] = "Buddhist Hybrid Sanskrit", ["sa-bra"] = "Brahmanic Sanskrit", ["sa-cls"] = "Classical Sanskrit", ["sa-neo"] = "New Sanskrit", ["sa-ved"] = "Vedic Sanskrit", ["sc-nuo"] = "Nuorese", ["sc-src"] = "Logudorese", ["sc-sro"] = "Campidanese", ["sco-ins"] = "Insular Scots", ["sco-nor"] = "Northern Scots", ["sco-sou"] = "South Scots", ["sco-uls"] = "Ulster Scots", ["sdz"] = "Sallands", ["sgh-baj"] = "Bajui", ["sgh-bar"] = "Bartangi", ["sgh-bro"] = "Bartangi-Oroshori", ["sgh-oro"] = "Oroshori", ["sgh-ros"] = "Roshani", ["sgh-rsx"] = "Roshani-Khufi", ["sgh-xgb"] = "Khughni-Bajui", ["sgh-xuf"] = "Khufi", ["sgh-xug"] = "Khughni", ["sh-tor"] = "Torlakian Serbo-Croatian", ["si-med"] = "Medieval Sinhalese", ["sli"] = "Silesian East Central German", ["sog-ear"] = "Early Sogdian", ["sog-lat"] = "Late Sogdian", ["soj"] = "Soi", ["ssn"] = "Waata", ["stl"] = "Stellingwerfs", ["sxu"] = "Upper Saxon German", ["ta-mid"] = "တမဳလ်အဒေါဝ်", ["tai-shz"] = "Shangsi Zhuang", ["taq"] = "Tamasheq", ["tbq-pro"] = "Proto-Tibeto-Burman", ["th-new"] = "Hacked Thai", ["thv"] = "Tamahaq", ["thz"] = "ထေယျုက်", ["tks-cal"] = "Chali Tati", ["tks-dan"] = "Danesfani", ["tks-ebr"] = "Ebrahimabadi", ["tks-esf"] = "Esfarvarini", ["tks-sag"] = "Sagzabadi", ["tks-tak"] = "Takestani", ["tks-xia"] = "Khiaraji", ["tks-xoz"] = "Khoznini", ["tl-cls"] = "Classical Tagalog", ["tl-old"] = "Old Tagalog", ["tly-anb"] = "Anbarani", ["tly-asa"] = "Asalemi", ["tly-aze"] = "Azerbaijani Talysh", ["tly-cen"] = "Central Talysh", ["tly-fum"] = "Fumani", ["tly-kar"] = "Karganrudi", ["tly-msa"] = "Masali", ["tly-msu"] = "Masulei", ["tly-nor"] = "Northern Talysh", ["tly-san"] = "Shandarmani", ["tly-sou"] = "Southern Talysh", ["tly-tal"] = "Taleshdulabi", ["tly-tul"] = "Tularudi", ["tmh-ght"] = "Ghat", ["tmr"] = "Jewish Babylonian Aramaic", ["tr-CY"] = "Cypriot Turkish", ["trk-cmn"] = "တာခ်ကေတ် သာမည", ["trk-ogz-pro"] = "အဝ်ဂေါတ်-အခိုက်ကၞာ", ["tsk"] = "Tseku", ["ttq"] = "ထာဝါလပ်မေတ်", ["tw"] = "Twi Akan", ["tw-abr"] = "Bono Twi", ["tw-aku"] = "Akuapem Twi", ["tw-asa"] = "Asante Twi", ["twd"] = "Twents", ["urj-fpr-pro"] = "ဖေန်နဝ်-ပဵုမေတ်-အခိုက်ကၞာ", ["vaf"] = "Vafsi", ["vel"] = "Veluws", ["wae"] = "Walser German", ["wep"] = "Westphalian", ["woy"] = "Weyto", ["wuu-chm"] = "Shadi Wu", ["wuu-han"] = "Hangzhounese", ["wuu-nin"] = "Ningbonese", ["wuu-nor"] = "Northern Wu", ["wuu-sha"] = "Shanghainese", ["wuu-suz"] = "Suzhounese", ["wuu-wen"] = "Wenzhounese", ["xcg"] = "Cisalpine Gaulish", ["xme-aby"] = "Abyanehi", ["xme-abz"] = "Abuzeydabadi", ["xme-amo"] = "Amorehi", ["xme-ana"] = "Anaraki", ["xme-ard"] = "Ardestani", ["xme-azr"] = "Old Azari", ["xme-bdr"] = "Badrudi", ["xme-bid"] = "Bidhandi", ["xme-bij"] = "Bijagani", ["xme-bor"] = "Borujerdi", ["xme-cim"] = "Chimehi", ["xme-del"] = "Delijani", ["xme-far"] = "Farizandi", ["xme-ham"] = "Hamadani", ["xme-han"] = "Hanjani", ["xme-isf"] = "Isfahani", ["xme-jow"] = "Jowshaqani", ["xme-kaf"] = "Kafroni", ["xme-kah"] = "Kahaki", ["xme-kas"] = "Kashani", ["xme-kes"] = "Kesehi", ["xme-kom"] = "Komjani", ["xme-krm"] = "Kermani", ["xme-mah"] = "Mahallati", ["xme-mey"] = "Meymehi", ["xme-nar"] = "Naraqi", ["xme-nas"] = "Nashalji", ["xme-nus"] = "Nushabadi", ["xme-qal"] = "Qalhari", ["xme-qoh"] = "Qohrudi", ["xme-sed"] = "Sedehi", ["xme-tar"] = "Tari", ["xme-trh"] = "Tarehi", ["xme-ttc-cen"] = "Central Tati", ["xme-ttc-eas"] = "Eastern Tati", ["xme-ttc-nor"] = "Northern Tati", ["xme-ttc-sou"] = "Southern Tati", ["xme-ttc-wes"] = "Western Tati", ["xme-val"] = "Valujerdi", ["xme-var"] = "Varani", ["xme-von"] = "Vonishuni", ["xme-vrz"] = "Varzenehi", ["xme-xur"] = "Khuri", ["xme-yar"] = "Yarandi", ["xme-yaz"] = "Yazdi", ["xme-zef"] = "Zefrehi", ["xme-zor"] = "Zori", ["xmn"] = "ပါရှေန်မနဳချေန်အဒေါဝ်", ["xng-ear"] = "Early Middle Mongol", ["xng-lat"] = "Late Middle Mongol", ["xno"] = "အာန်ဂလဝ်-နဝ်မာန်", ["xno-law"] = "Law French", ["xtg"] = "Transalpine Gaulish", ["xum-her"] = "Hernician", ["xvi"] = "ကာမ်ဝဳရဳ", ["yue-HK"] = "Hong Kong Cantonese", ["yue-gua"] = "Guangzhou Cantonese", ["yue-lit"] = "Literary Cantonese", ["yue-wvc"] = "Written vernacular Cantonese", ["zh-postal"] = "Postal Romanization", ["zhx-dan"] = "Danzhou Chinese", ["zhx-tai-wvc"] = "Written vernacular Taishanese", ["zhx-zho"] = "Zhongshan Min", ["zle-mru"] = "Middle Russian", ["zle-obe"] = "Old Belarusian", ["zle-ops"] = "Old Pskovian", ["zle-ouk"] = "Old Ukrainian", ["zlw-mpl"] = "Middle Polish", } atzwnp0dgxp4lwd557aajknc17u2xrw မဝ်ဂျူ:etymology languages/canonical names 828 52684 402257 401891 2026-10-01T05:40:13Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402257 Scribunto text/plain return { ["Abhiri"] = "pra-abh", ["Abuzeydabadi"] = "xme-abz", ["Abyanehi"] = "xme-aby", ["Acadian French"] = "fr-aca", ["Achaemenid Elamite"] = "elx-ach", ["Achterhoeks"] = "act", ["Adamawa Fulfulde"] = "fub", ["Addu Dhivehi"] = "dv-add", ["Aeolic Greek"] = "grc-aeo", ["Afghan Uzbek"] = "uz-afg", ["African Romance"] = "la-afr", ["Afridi"] = "ps-afr", ["Akhmimic Coptic"] = "cop-akh", ["Akuapem Twi"] = "tw-aku", ["Alsatian Alemannic German"] = "gsw-FR-als", ["Amdo Tibetan"] = "adx", ["American English"] = "en-US", ["Amorehi"] = "xme-amo", ["Anaraki"] = "xme-ana", ["Anatri Chuvash"] = "cv-ana", ["Anbarani"] = "tly-anb", ["Angkorian Old Khmer"] = "okz-ang", ["Anglian Old English"] = "ang-ang", ["အာန်ဂဝ်-နဝ်မာန်"] = "xno", ["Anxi Hokkien"] = "nan-anx", ["Aranese"] = "oc-ara", ["Arbëresh Albanian"] = "aae", ["Arcadian Greek"] = "grc-arc", ["Arcadocypriot Greek"] = "grc-arp", ["Ardestani"] = "xme-ard", ["Ardhamagadhi Prakrit"] = "pra-ard", ["Arghu"] = "klj-arg", ["Armeno-Kipchak"] = "qwm-arm", ["Arvanitika Albanian"] = "aat", ["Asalemi"] = "tly-asa", ["Asante Twi"] = "tw-asa", ["Ashtiani"] = "atn", ["Attic Greek"] = "grc-att", ["Australian Aboriginal English"] = "en-aae", ["Australian English"] = "en-AU", ["Austrian German"] = "de-AT", ["Auvergnat"] = "oc-auv", ["Avahattha"] = "inc-aav", ["Avanti"] = "pra-ava", ["Ayutthaya Old Thai"] = "th-ayu", ["Azerbaijani Talysh"] = "tly-aze", ["Badrudi"] = "xme-bdr", ["Bagirmi Fulfulde"] = "fui", ["Bahliki"] = "pra-bah", ["Bajui"] = "sgh-baj", ["Baltic German"] = "de-bal", ["Bandari"] = "bsg-ban", ["Bangash"] = "ps-bng", ["Bannu"] = "ps-ban", ["Barpetia Kamrupi Assamese"] = "as-bkm", ["Bartangi"] = "sgh-bar", ["Bartangi-Oroshori"] = "sgh-bro", ["Beijing Mandarin"] = "cmn-bei", ["Beijingic Mandarin"] = "cmn-bec", ["Belgian Dutch"] = "nl-BE", ["Besemah"] = "pse-bsm", ["Betawi Kota"] = "bew-kot", ["Biblical Aramaic"] = "arc-bib", ["Biblical Hebrew"] = "hbo", ["Bidhandi"] = "xme-bid", ["Bijagani"] = "xme-bij", ["Boeotian Greek"] = "grc-boi", ["Bohairic Coptic"] = "cop-boh", ["Bolivian Spanish"] = "es-BO", ["Bombay Hindi"] = "hi-mum", ["Bono Twi"] = "tw-abr", ["Borana"] = "gax", ["Borgu Fulfulde"] = "fue", ["Borujerdi"] = "xme-bor", ["Brahmanic Sanskrit"] = "sa-bra", ["Brazilian Portuguese"] = "pt-BR", ["British English"] = "en-GB", ["Buddhist Hybrid Sanskrit"] = "sa-bhs", ["Burenjani"] = "fay-bur", ["Bushehri"] = "fay-bsh", ["ဂရေတ် ဗေတ်သေန်ထေၚ်"] = "gkm", ["Cajun French"] = "frc", ["California English"] = "en-US-CA", ["Camorta"] = "ncb-cam", ["Campidanese"] = "sc-sro", ["Canadian English"] = "en-CA", ["Canadian French"] = "fr-CA", ["Canadian Ukrainian"] = "uk-CA", ["Candali"] = "pra-can", ["Capenate"] = "xfa-cap", ["Central Ghilzay"] = "ps-cgi", ["Central Korean"] = "ko-cen", ["Central Plains Mandarin"] = "cmn-cep", ["Central Talysh"] = "tly-cen", ["Central Tati"] = "xme-ttc-cen", ["Central-Eastern Niger Fulfulde"] = "fuq", ["Chakavian Serbo-Croatian"] = "ckm", ["Chakhar Mongolian"] = "mn-cha", ["Chali Tati"] = "tks-cal", ["Changtai Hokkien"] = "nan-cha", ["Chilean Spanish"] = "es-CL", ["Chimehi"] = "xme-cim", ["Christian Palestinian Aramaic"] = "arc-cpa", ["Chungcheong Korean"] = "ko-chu", ["Ci"] = "lzh-cii", ["Cisalpine Gaulish"] = "xcg", ["Classical Azerbaijani"] = "az-cls", ["Classical Cantonese"] = "lzh-yue", ["Classical Japanese"] = "ja-cla", ["Classical Latin"] = "la-cla", ["Classical Malay"] = "ms-cla", ["Classical Mandarin"] = "lzh-cmn", ["Classical Persian"] = "fa-cls", ["Classical Sanskrit"] = "cls", ["Classical Tagalog"] = "tl-cls", ["Classical Taishanese"] = "lzh-tai", ["Classical Taiwanese Mandarin"] = "lzh-cmn-TW", ["Colombian Spanish"] = "es-CO", ["Common Bantu"] = "bnt-cmn", ["Contemporary Latin"] = "la-con", ["Coptic Dialect G"] = "cop-ggg", ["Coptic Dialect J"] = "cop-jjj", ["Coptic Dialect K"] = "cop-kkk", ["Coptic Dialect P"] = "cop-ppp", ["Cretan Ancient Greek"] = "grc-kre", ["Cretan Greek"] = "el-crt", ["Cuban Spanish"] = "es-CU", ["Cuman"] = "qwm-cum", ["Cypriot Greek"] = "el-cyp", ["Cypriot Turkish"] = "tr-CY", ["Dabu Hakka"] = "hak-dab", ["Daksinatya"] = "pra-dak", ["Danesfani"] = "tks-dan", ["Danube Bulgar"] = "xbo-dan", ["Danzhou Chinese"] = "zhx-dan", ["Dari"] = "prs", ["Dashtaki"] = "fay-dsh", ["Davani"] = "fay-dav", ["Delijani"] = "xme-del", ["Dhakaiya Vaṅga Bengali"] = "bn-dvn", ["Digor Ossetian"] = "os-dig", ["Dnieper Baltic"] = "bat-dni", ["Dobrujan Tatar"] = "crh-dbj", ["Doric Greek"] = "grc-dor", ["Dramili"] = "pra-dra", ["Drents"] = "drt", ["Early Brythonic"] = "bry-ear", ["Early Mandarin"] = "cmn-ear", ["Early Medieval Latin"] = "la-eme", ["Early Middle Chinese"] = "ltc-ear", ["Early Middle Japanese"] = "ja-mid-ear", ["Early Middle Korean"] = "okm-ear", ["Early Middle Mongol"] = "xng-ear", ["Early Middle Persian"] = "pal-ear", ["Early Modern Czech"] = "cs-ear", ["Early Modern English"] = "en-ear", ["Early Modern Hakka"] = "hak-eam", ["Early Modern Japanese"] = "ja-ear", ["Early Modern Spanish"] = "es-ear", ["Early New High German"] = "de-ear", ["Early New Persian"] = "fa-ear", ["Early Old Chinese"] = "och-ear", ["Early Old Ossetic"] = "oos-ear", ["Early Old Persian"] = "peo-ear", ["Early Scots"] = "enm-esc", ["Early Sogdian"] = "sog-ear", ["East Frisian Low German"] = "frs", ["East Midland Middle English"] = "enm-emi", ["Eastern Balochi"] = "bgp", ["Eastern Mansi"] = "mns-eas", ["Eastern Old Japanese"] = "ojp-eas", ["Eastern Tati"] = "xme-ttc-eas", ["Ebrahimabadi"] = "tks-ebr", ["Ecclesiastical Latin"] = "la-ecc", ["Elean Greek"] = "grc-ela", ["Emamzada Esmaili"] = "fay-eze", ["Epic Greek"] = "grc-epc", ["Esfarvarini"] = "tks-esf", ["European Portuguese"] = "pt-PT", ["Fante Akan"] = "fat", ["Farizandi"] = "xme-far", ["Fayyumic Coptic"] = "cop-fay", ["Frankish"] = "frk", ["Fumani"] = "tly-fum", ["Fuyu Kyrgyz"] = "kjh-fyu", ["Gangwon Korean"] = "ko-gan", ["Gascon"] = "oc-gas", ["Gavkoshaki"] = "fay-gav", ["Gazi"] = "gzi", ["Geordie"] = "en-geo", ["Ghat"] = "thv-ght", ["Gheg Albanian"] = "aln", ["Golyad"] = "bat-gol", ["Goral"] = "pl-gor", ["Greater Polish"] = "pl-gre", ["Greenlandic Norse"] = "non-grn", ["Gronings"] = "gos", ["Guangzhou Cantonese"] = "yue-gua", ["Guanzhong Mandarin"] = "cmn-gua", ["Guernsey Norman"] = "nrf-grn", ["Guilin Mandarin"] = "cmn-gui", ["Gurjara Apabhramsa"] = "inc-agu", ["Gyeonggi Korean"] = "ko-gyg", ["Gyeongsang Korean"] = "ko-gys", ["Hailu Hakka"] = "hak-hai", ["Hamadani"] = "xme-ham", ["Hamgyong Korean"] = "ko-ham", ["Hangzhounese"] = "wuu-han", ["Hanjani"] = "xme-han", ["Hanyu Pinyin"] = "cmn-pinyin", ["Harar Oromo"] = "hae", ["Hatran Aramaic"] = "arc-hat", ["Havigannada"] = "kn-hav", ["Hazaragi"] = "haz", ["Helu Prakrit"] = "pra-hel", ["Hengyang Xiang"] = "hsn-hya", ["Hengzhou Xiang"] = "hsn-hzh", ["Hermopolitan Coptic"] = "cop-her", ["High Alemannic German"] = "gsw-hig", ["Highest Alemannic German"] = "gsw-hst", ["Hokkaido Ainu"] = "ain-hok", ["Hong Kong Cantonese"] = "yue-HK", ["Hong Kong English"] = "en-HK", ["Hong Kong Hakka"] = "hak-HK", ["Hormozi"] = "bsg-hor", ["Houlu Min"] = "nan-hou", ["Hui'an Hokkien"] = "nan-hui", ["Huiyang Hakka"] = "hak-hui", ["Huvadhu Dhivehi"] = "dv-huv", ["Hwanghae Korean"] = "ko-hwa", ["Imperial Aramaic"] = "arc-imp", ["Indian English"] = "en-IN", ["Insular Scots"] = "sco-ins", ["Ionic Greek"] = "grc-ion", ["Iranian Persian"] = "fa-ira", ["Irish English"] = "en-IE", ["Iron Ossetian"] = "os-iro", ["Isfahani"] = "xme-isf", ["Israeli Hebrew"] = "he-IL", ["Jadrani"] = "ps-jad", ["Jeolla Korean"] = "ko-jeo", ["Jersey Norman"] = "nrf-jer", ["Jewish Babylonian Aramaic"] = "tmr", ["Jewish Literary Aramaic"] = "arc-jla", ["Jewish Palestinian Aramaic"] = "jpa", ["Jianghuai Mandarin"] = "cmn-jhu", ["Jinjiang Hokkien"] = "nan-jin", ["Jirofti"] = "rdb-jir", ["Jowshaqani"] = "xme-jow", ["Judeo-Arabic"] = "jrb", ["Kafroni"] = "xme-kaf", ["Kahaki"] = "xme-kah", ["Kahnuji"] = "rdb-kah", ["Kajkavian Serbo-Croatian"] = "kjv", ["Kakari"] = "ps-kak", ["Kaliarda"] = "el-kal", ["Kamviri"] = "xvi", ["Kandahari"] = "ps-kan", ["Kaniguram"] = "oru-kan", ["Karganrudi"] = "tly-kar", ["Kashani"] = "xme-kas", ["Kasmiri Apabhramsa"] = "inc-aka", ["Katchal"] = "ncb-kat", ["Katharevousa"] = "el-kth", ["Kathiyawadi"] = "gu-kat", ["Kativiri"] = "bsh-kat", ["Kentish Middle English"] = "enm-ken", ["Kentish Old English"] = "ang-ken", ["Kermani"] = "xme-krm", ["Kesehi"] = "xme-kes", ["Khalkha Mongolian"] = "mn-kha", ["Khamba"] = "kbg", ["Khams Tibetan"] = "khg", ["Khargi"] = "fay-kar", ["Khasa Prakrit"] = "pra-kha", ["Khatak"] = "ps-xat", ["Khiaraji"] = "tks-xia", ["Khollari"] = "fay-kho", ["Khorchin Mongolian"] = "mn-khr", ["Khoznini"] = "tks-xoz", ["Khufi"] = "sgh-xuf", ["Khughni"] = "sgh-xug", ["Khughni-Bajui"] = "sgh-xgb", ["Khunsari"] = "kfm", ["Khuri"] = "xme-xur", ["Kinmenese Hokkien"] = "nan-kin", ["Kinyarwanda"] = "rw-kin", ["Kirundi"] = "rw-run", ["ဂရေတ် ခါဝ်အိန်"] = "grc-koi", ["Komjani"] = "xme-kom", ["Kondazi"] = "fay-kon", ["Korean Classical Chinese"] = "lzh-KO", ["Kromanti"] = "alv-kro", ["Kundagannada"] = "kn-kun", ["Kuril Ainu"] = "ain-kur", ["Kölsch"] = "ksh", ["Languedocien"] = "oc-lan", ["Lanuvian"] = "itc-lan", ["Lanyin Mandarin"] = "cmn-lan", ["Late Babylonian"] = "akk-lbb", ["Late Brythonic"] = "bry-lat", ["Late Egyptian"] = "egy-lat", ["Late Khotanese"] = "kho-lat", ["Late Latin"] = "la-lat", ["Late Middle Chinese"] = "ltc-lat", ["Late Middle Japanese"] = "ja-mid-lat", ["Late Middle Mongol"] = "xng-lat", ["Late Middle Persian"] = "pal-lat", ["Late Old Chinese"] = "och-lat", ["Late Old Korean"] = "oko-lat", ["Late Old Ossetic"] = "oos-lat", ["Late Old Persian"] = "peo-lat", ["Late Old Swedish"] = "gmq-osw-lat", ["Late Sogdian"] = "sog-lat", ["Law French"] = "xno-law", ["Lesser Polish"] = "pl-les", ["Limousin"] = "oc-lim", ["Lisan ud-Dawat Gujarati"] = "gu-lda", ["Literary Cantonese"] = "yue-lit", ["Literary Chinese"] = "lzh-lit", ["Logar"] = "oru-log", ["Logudorese"] = "sc-src", ["Lombardic"] = "lng", ["Loudi Xiang"] = "hsn-lou", ["Louisiana French"] = "fr-lou", ["Low Alemannic German"] = "gsw-low", ["Low Prussian"] = "nds-lpr", ["Lucanian"] = "osc-luc", ["Lunfardo"] = "es-lun", ["Lycopolitan Coptic"] = "cop-lyc", ["Língua Geral Amazônica"] = "tpw-lga", ["Maasina Fulfulde"] = "ffm", ["Magadhi Prakrit"] = "pra-mag", ["Mahallati"] = "xme-mah", ["Maharastri Apabhramsa"] = "inc-ama", ["Maharastri Prakrit"] = "pra-mah", ["Mahsudi"] = "ps-mah", ["Malaysian Huiyang Hakka"] = "hak-hui-MY", ["Malaysian Mandarin"] = "cmn-MY", ["Mamluk-Kipchak"] = "qwm-mam", ["Manichaean Middle Persian"] = "xmn", ["Manx English"] = "en-IM", ["Masali"] = "tly-msa", ["Masarami"] = "fay-mas", ["Masovian Polish"] = "pl-mas", ["Masulei"] = "tly-msu", ["Medan Hokkien"] = "nan-med", ["Medieval Hebrew"] = "he-med", ["Medieval Latin"] = "la-med", ["Medieval Sinhalese"] = "si-med", ["Medieval Tashelhit"] = "shi-med", ["Meixian Hakka"] = "hak-mei", ["Mercian Old English"] = "ang-mer", ["Mexican Spanish"] = "es-MX", ["Meymehi"] = "xme-mey", ["Middle Assyrian"] = "akk-mas", ["Middle Babylonian"] = "akk-mbb", ["Middle Belarusian"] = "zle-mbe", ["Middle Bulgarian"] = "cu-bgm", ["Middle Chuvash"] = "cv-mid", ["Middle Egyptian"] = "egy-mid", ["Middle Elamite"] = "elx-mid", ["Middle Georgian"] = "ka-mid", ["Middle Hindi"] = "hi-mid", ["Middle Japanese"] = "ja-mid", ["Middle Konkani"] = "kok-mid", ["Middle Polish"] = "zlw-mpl", ["Middle Russian"] = "zle-mru", ["Middle Tamil"] = "ta-mid", ["Middle Ukrainian"] = "zle-muk", ["Minabi"] = "bsg-min", ["Mishnaic Hebrew"] = "he-mis", ["Missouri French"] = "fr-mis", ["Mitanni"] = "inc-mit", ["Moldovan"] = "ro-MD", ["Mulaku Dhivehi"] = "dv-mul", ["Mumviri"] = "bsh-mum", ["Nabataean Aramaic"] = "arc-nab", ["Nalbaria Kamrupi Assamese"] = "as-nkm", ["Nancowry"] = "ncb-nan", ["Nanjing Mandarin"] = "cmn-nan", ["Naraqi"] = "xme-nar", ["Nashalji"] = "xme-nas", ["Natanzi"] = "ntz", ["Nayini"] = "nyq", ["Neo-Assyrian"] = "akk-nas", ["Neo-Babylonian"] = "akk-nbb", ["Neo-Elamite"] = "elx-neo", ["Neo-Middle Egyptian"] = "egy-nmi", ["New Latin"] = "la-new", ["New Sanskrit"] = "sa-neo", ["New Xiang"] = "hsn-new", ["New Zealand English"] = "en-NZ", ["Nigerian Fulfulde"] = "fuv", ["Ningbonese"] = "wuu-nin", ["Noakhailla Vaṅga Bengali"] = "bn-nvn", ["North Alaskan Inupiatun"] = "esi", ["North American English"] = "en-NNN", ["North Karelian"] = "krl-nor", ["Northeastern Mandarin"] = "cmn-noe", ["Northeastern Pashto"] = "ps-nea", ["Northern Irish English"] = "en-GB-NIR", ["Northern Middle English"] = "enm-nor", ["Northern Scots"] = "sco-nor", ["Northern Talysh"] = "tly-nor", ["Northern Tati"] = "xme-ttc-nor", ["Northern Wu"] = "wuu-nor", ["Northumbrian Old English"] = "ang-nor", ["Northwest Alaskan Inupiatun"] = "esk", ["Northwestern Pashto"] = "ps-nwe", ["Nuorese"] = "sc-nuo", ["Nushabadi"] = "xme-nus", ["Odri"] = "pra-odr", ["Old Akkadian"] = "akk-old", ["Old Aramaic"] = "arc-old", ["Old Assyrian"] = "akk-oas", ["Old Avestan"] = "ae-old", ["Old Azari"] = "xme-azr", ["Old Babylonian"] = "akk-obb", ["Old Braj"] = "bra-old", ["Old Chuvash"] = "cv-old", ["Old Coptic"] = "cop-old", ["Old East Norse"] = "non-oen", ["Old Egyptian"] = "egy-old", ["Old Elamite"] = "elx-old", ["Old Italian"] = "roa-oit", ["Old Kazeruni"] = "fay-kzo", ["Old Khotanese"] = "kho-old", ["Old Kirghiz"] = "otk-kir", ["Old Konkani"] = "kok-old", ["Old Latin"] = "itc-ola", ["Old Malay"] = "ms-old", ["Old Mohawk"] = "iro-omo", ["Old Northern French"] = "fro-nor", ["Old Onondaga"] = "iro-oon", ["Old Ossetic"] = "oos", ["Old Provençal"] = "oc-pro-old", ["Old Pskovian"] = "zle-ops", ["Old Shirazi"] = "fay-sho", ["Old Tagalog"] = "tl-old", ["Old Thai"] = "th-old", ["Old Wendat"] = "iro-ohu", ["Old West Norse"] = "non-own", ["Old Xiang"] = "hsn-old", ["Opuntian Locrian"] = "grc-opl", ["Ordos Mongolian"] = "mn-ord", ["Orkhon Turkic"] = "otk-ork", ["Orma"] = "orc", ["Oroshori"] = "sgh-oro", ["Oxyrhynchite Coptic"] = "cop-oxy", ["Ozolian Locrian"] = "grc-ozl", ["Paisaci Prakrit"] = "pra-pai", ["Palasbaria Kamrupi Assamese"] = "as-pkm", ["Palatine German"] = "pfl", ["Paleo-Balkan"] = "qsb-bal", ["Paleo-Hispanic"] = "qsb-ibe", ["Palladius"] = "cmn-palladius", ["Palmyrene Aramaic"] = "arc-pal", ["Pamphylian Greek"] = "grc-pam", ["Paphian Greek"] = "el-pap", ["Papuni"] = "fay-pap", ["Penang Hokkien"] = "nan-pen", ["Peruvian Spanish"] = "es-PE", ["Peshawari"] = "ps-pes", ["Philippine Hokkien"] = "nan-hbl-PH", ["Philippine Mandarin"] = "cmn-PH", ["Philippine Spanish"] = "es-PH", ["Picard Old French"] = "fro-pic", ["Polari"] = "pld", ["Postal Romanization"] = "zh-postal", ["Pracya"] = "pra-pra", ["Praenestine"] = "itc-pra", ["Pre-Angkorian Old Khmer"] = "okz-pre", ["Pre-Classical Chinese"] = "lzh-pre", ["Pre-Greek"] = "qsb-grc", ["Proto-Anglo-Frisian"] = "gmw-afr-pro", ["Proto-Arinic"] = "qfa-yrn-pro", ["Proto-Baltic"] = "bat-pro", ["Proto-Bulgar"] = "trk-bul-pro", ["Proto-Common Turkic"] = "trk-cmn-pro", ["Proto-Finno-Permic"] = "urj-fpr-pro", ["Proto-Finno-Ugric"] = "fiu-pro", ["Proto-Ketic"] = "qfa-yke-pro", ["Proto-Kottic"] = "qfa-yko-pro", ["Proto-Lycopolitan Coptic"] = "cop-ply", ["Proto-North Sea Germanic"] = "gmw-nsg-pro", ["Proto-Oghur"] = "trk-ogr-pro", ["Proto-Oghuz"] = "trk-ogz-pro", ["Proto-Pumpokolic"] = "qfa-ypm-pro", ["Proto-Romance"] = "roa-pro", ["Proto-Tibeto-Burman"] = "tbq-pro", ["Provençal"] = "oc-pro", ["Puerto Rican Spanish"] = "es-PR", ["Pulaar"] = "fuc", ["Pular"] = "fuf", ["Pyongan Korean"] = "ko-pyo", ["Qalhari"] = "xme-qal", ["Qashqai"] = "qxq", ["Qianlu Min"] = "nan-qia", ["Qohrudi"] = "xme-qoh", ["Quanzhou Hokkien"] = "nan-qua", ["Renaissance Latin"] = "la-ren", ["Rioplatense Spanish"] = "es-AR", ["Roshani"] = "sgh-ros", ["Roshani-Khufi"] = "sgh-rsx", ["Russian Church Slavonic"] = "zls-chs-ru", ["Sabari"] = "pra-sab", ["Sagzabadi"] = "tks-sag", ["Sahidic Coptic"] = "cop-sah", ["Saint Dominican Creole French"] = "ht-sdm", ["Sakari"] = "pra-sak", ["Sakhalin Ainu"] = "ain-sak", ["Sallands"] = "sdz", ["Samghani"] = "fay-sam", ["Samnite"] = "osc-sam", ["Sauraseni Apabhramsa"] = "inc-asa", ["Sauraseni Prakrit"] = "pra-sau", ["Scottish English"] = "en-GB-SCT", ["Sedehi"] = "xme-sed", ["Shadi Wu"] = "wuu-chm", ["Shandarmani"] = "tly-san", ["Shanghainese"] = "wuu-sha", ["Shangsi Zhuang"] = "tai-shz", ["Sher"] = "ps-ser", ["Shirazi"] = "fay-shr", ["Shuadit"] = "oc-jud", ["Silesian East Central German"] = "sli", ["Singapore Hokkien"] = "nan-hbl-SG", ["Singapore Mandarin"] = "cmn-SG", ["Sixian Hakka"] = "hak-six", ["Soi"] = "soj", ["Sorkhi"] = "fay-sor", ["South African English"] = "en-ZA", ["South Karelian"] = "krl-sou", ["Southeastern Pashto"] = "ps-sea", ["Southern Balochi"] = "bcc", ["Southern Malaysian Hokkien"] = "nan-spm", ["Southern Middle English"] = "enm-sou", ["Southern Scots"] = "sco-sou", ["Southern Talysh"] = "tly-sou", ["Southern Tati"] = "xme-ttc-sou", ["Southwestern Mandarin"] = "cmn-sow", ["Southwestern Pashto"] = "ps-swe", ["Standard Babylonian"] = "akk-stb", ["Stellingwerfs"] = "stl", ["Suevic"] = "gem-sue", ["Sukhothai Old Thai"] = "th-suk", ["Suzhounese"] = "wuu-suz", ["Swiss French"] = "fr-CH", ["Switzerland German"] = "de-CH", ["Switzerland Italian"] = "it-CH", ["Taiwanese Hakka"] = "hak-TW", ["Taiwanese Hokkien"] = "nan-hbl-TW", ["Taiwanese Mandarin"] = "cmn-TW", ["Takestani"] = "tks-tak", ["Takka Apabhramsa"] = "inc-ata", ["Taleshdulabi"] = "tly-tal", ["Tamahaq"] = "thv", ["Tamasheq"] = "taq", ["Tarehi"] = "xme-trh", ["Tari"] = "xme-tar", ["ထာဝါလပ်မေတ်"] = "ttq", ["Tayert"] = "thz", ["Thessalian Greek"] = "grc-ths", ["Tianjin Mandarin"] = "cmn-tia", ["Tong'an Hokkien"] = "nan-ton", ["Tongyong Pinyin"] = "cmn-tongyong", ["Torlakian Serbo-Croatian"] = "sh-tor", ["Tosk Albanian"] = "als", ["Traditional Chinese poetry"] = "lzh-shi", ["Transalpine Gaulish"] = "xtg", ["Tseku"] = "tsk", ["Tularudi"] = "tly-tul", ["Twents"] = "twd", ["Twi Akan"] = "tw", ["Ukrainian Church Slavonic"] = "zls-chs-uk", ["Ulster English"] = "en-uls", ["Ulster Scots"] = "sco-uls", ["United States Spanish"] = "es-US", ["Upper Saxon German"] = "sxu", ["Vafsi"] = "vaf", ["Valencian"] = "ca-val", ["Valujerdi"] = "xme-val", ["Varani"] = "xme-var", ["Varzenehi"] = "xme-vrz", ["Vedic Sanskrit"] = "vsn", ["Veluws"] = "vel", ["Venezuelan Spanish"] = "es-VE", ["Viennese German"] = "de-AT-vie", ["Vietnamese Classical Chinese"] = "lzh-VI", ["Viryal Chuvash"] = "cv-vir", ["Vivaro-Alpine"] = "oc-viv", ["Volga Bulgar"] = "xbo-vol", ["Vonishuni"] = "xme-von", ["Vracada Apabhramsa"] = "inc-avr", ["Vulgar Latin"] = "la-vul", ["Waata"] = "ssn", ["Wade–Giles"] = "cmn-wadegiles", ["Walser German"] = "wae", ["Waziri"] = "ps-waz", ["Welsh English"] = "en-GB-WLS", ["Wenzhounese"] = "wuu-wen", ["West Midland Middle English"] = "enm-wmi", ["West Saxon Old English"] = "ang-wsx", ["Western Balochi"] = "bgn", ["Western Mansi"] = "mns-wes", ["Western Niger Fulfulde"] = "fuh", ["Western Panjabi"] = "pnb", ["Western Tati"] = "xme-ttc-wes", ["Westphalian"] = "wep", ["Written vernacular Cantonese"] = "yue-wvc", ["Written vernacular Mandarin"] = "cmn-wvc", ["Written vernacular Taishanese"] = "zhx-tai-wvc", ["Wuhan Mandarin"] = "cmn-wuh", ["Xiamen Hokkien"] = "nan-xia", ["Xining Mandarin"] = "cmn-xin", ["Yangzhou Mandarin"] = "cmn-yan", ["Yarandi"] = "xme-yar", ["Yazdi"] = "xme-yaz", ["Yongchun Hokkien"] = "nan-yon", ["Younger Avestan"] = "ae-yng", ["Yukjin Korean"] = "ko-yuk", ["Zarphatic"] = "zrp", ["Zefrehi"] = "xme-zef", ["Zhangping Hokkien"] = "nan-zhp", ["Zhangzhou Hokkien"] = "nan-zha", ["Zhao'an Hakka"] = "hak-zha", ["Zhao'an Hokkien"] = "nan-zho", ["Zhongshan Min"] = "zhx-zho", ["Zori"] = "xme-zor", ["Zoroastrian Dari"] = "gbz", ["taxonomic name"] = "mul-tax", ["the BMAC substrate"] = "qsb-bma", } 7k417zjr6nyqtl7rxnuqlblmbasi0h3 402261 402257 2026-10-01T05:46:12Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402261 Scribunto text/plain return { ["Abhiri"] = "pra-abh", ["Abuzeydabadi"] = "xme-abz", ["Abyanehi"] = "xme-aby", ["Acadian French"] = "fr-aca", ["Achaemenid Elamite"] = "elx-ach", ["Achterhoeks"] = "act", ["Adamawa Fulfulde"] = "fub", ["Addu Dhivehi"] = "dv-add", ["Aeolic Greek"] = "grc-aeo", ["Afghan Uzbek"] = "uz-afg", ["African Romance"] = "la-afr", ["Afridi"] = "ps-afr", ["Akhmimic Coptic"] = "cop-akh", ["Akuapem Twi"] = "tw-aku", ["Alsatian Alemannic German"] = "gsw-FR-als", ["Amdo Tibetan"] = "adx", ["American English"] = "en-US", ["Amorehi"] = "xme-amo", ["Anaraki"] = "xme-ana", ["Anatri Chuvash"] = "cv-ana", ["Anbarani"] = "tly-anb", ["Angkorian Old Khmer"] = "okz-ang", ["Anglian Old English"] = "ang-ang", ["အာန်ဂဝ်-နဝ်မာန်"] = "xno", ["Anxi Hokkien"] = "nan-anx", ["Aranese"] = "oc-ara", ["Arbëresh Albanian"] = "aae", ["Arcadian Greek"] = "grc-arc", ["Arcadocypriot Greek"] = "grc-arp", ["Ardestani"] = "xme-ard", ["Ardhamagadhi Prakrit"] = "pra-ard", ["Arghu"] = "klj-arg", ["Armeno-Kipchak"] = "qwm-arm", ["Arvanitika Albanian"] = "aat", ["Asalemi"] = "tly-asa", ["Asante Twi"] = "tw-asa", ["Ashtiani"] = "atn", ["Attic Greek"] = "grc-att", ["Australian Aboriginal English"] = "en-aae", ["Australian English"] = "en-AU", ["Austrian German"] = "de-AT", ["Auvergnat"] = "oc-auv", ["Avahattha"] = "inc-aav", ["Avanti"] = "pra-ava", ["Ayutthaya Old Thai"] = "th-ayu", ["Azerbaijani Talysh"] = "tly-aze", ["Badrudi"] = "xme-bdr", ["Bagirmi Fulfulde"] = "fui", ["Bahliki"] = "pra-bah", ["Bajui"] = "sgh-baj", ["Baltic German"] = "de-bal", ["Bandari"] = "bsg-ban", ["Bangash"] = "ps-bng", ["Bannu"] = "ps-ban", ["Barpetia Kamrupi Assamese"] = "as-bkm", ["Bartangi"] = "sgh-bar", ["Bartangi-Oroshori"] = "sgh-bro", ["Beijing Mandarin"] = "cmn-bei", ["Beijingic Mandarin"] = "cmn-bec", ["Belgian Dutch"] = "nl-BE", ["Besemah"] = "pse-bsm", ["Betawi Kota"] = "bew-kot", ["Biblical Aramaic"] = "arc-bib", ["Biblical Hebrew"] = "hbo", ["Bidhandi"] = "xme-bid", ["Bijagani"] = "xme-bij", ["Boeotian Greek"] = "grc-boi", ["Bohairic Coptic"] = "cop-boh", ["Bolivian Spanish"] = "es-BO", ["Bombay Hindi"] = "hi-mum", ["Bono Twi"] = "tw-abr", ["Borana"] = "gax", ["Borgu Fulfulde"] = "fue", ["Borujerdi"] = "xme-bor", ["Brahmanic Sanskrit"] = "sa-bra", ["Brazilian Portuguese"] = "pt-BR", ["British English"] = "en-GB", ["Buddhist Hybrid Sanskrit"] = "sa-bhs", ["Burenjani"] = "fay-bur", ["Bushehri"] = "fay-bsh", ["ဂရေတ် ဗေတ်သေန်ထေၚ်"] = "gkm", ["Cajun French"] = "frc", ["California English"] = "en-US-CA", ["Camorta"] = "ncb-cam", ["Campidanese"] = "sc-sro", ["Canadian English"] = "en-CA", ["Canadian French"] = "fr-CA", ["Canadian Ukrainian"] = "uk-CA", ["Candali"] = "pra-can", ["Capenate"] = "xfa-cap", ["Central Ghilzay"] = "ps-cgi", ["Central Korean"] = "ko-cen", ["Central Plains Mandarin"] = "cmn-cep", ["Central Talysh"] = "tly-cen", ["Central Tati"] = "xme-ttc-cen", ["Central-Eastern Niger Fulfulde"] = "fuq", ["Chakavian Serbo-Croatian"] = "ckm", ["Chakhar Mongolian"] = "mn-cha", ["Chali Tati"] = "tks-cal", ["Changtai Hokkien"] = "nan-cha", ["Chilean Spanish"] = "es-CL", ["Chimehi"] = "xme-cim", ["Christian Palestinian Aramaic"] = "arc-cpa", ["Chungcheong Korean"] = "ko-chu", ["Ci"] = "lzh-cii", ["Cisalpine Gaulish"] = "xcg", ["Classical Azerbaijani"] = "az-cls", ["Classical Cantonese"] = "lzh-yue", ["Classical Japanese"] = "ja-cla", ["Classical Latin"] = "la-cla", ["Classical Malay"] = "ms-cla", ["Classical Mandarin"] = "lzh-cmn", ["Classical Persian"] = "fa-cls", ["Classical Sanskrit"] = "cls", ["Classical Tagalog"] = "tl-cls", ["Classical Taishanese"] = "lzh-tai", ["Classical Taiwanese Mandarin"] = "lzh-cmn-TW", ["Colombian Spanish"] = "es-CO", ["Common Bantu"] = "bnt-cmn", ["Contemporary Latin"] = "la-con", ["Coptic Dialect G"] = "cop-ggg", ["Coptic Dialect J"] = "cop-jjj", ["Coptic Dialect K"] = "cop-kkk", ["Coptic Dialect P"] = "cop-ppp", ["Cretan Ancient Greek"] = "grc-kre", ["Cretan Greek"] = "el-crt", ["Cuban Spanish"] = "es-CU", ["Cuman"] = "qwm-cum", ["Cypriot Greek"] = "el-cyp", ["Cypriot Turkish"] = "tr-CY", ["Dabu Hakka"] = "hak-dab", ["Daksinatya"] = "pra-dak", ["Danesfani"] = "tks-dan", ["Danube Bulgar"] = "xbo-dan", ["Danzhou Chinese"] = "zhx-dan", ["Dari"] = "prs", ["Dashtaki"] = "fay-dsh", ["Davani"] = "fay-dav", ["Delijani"] = "xme-del", ["Dhakaiya Vaṅga Bengali"] = "bn-dvn", ["Digor Ossetian"] = "os-dig", ["Dnieper Baltic"] = "bat-dni", ["Dobrujan Tatar"] = "crh-dbj", ["Doric Greek"] = "grc-dor", ["Dramili"] = "pra-dra", ["Drents"] = "drt", ["Early Brythonic"] = "bry-ear", ["Early Mandarin"] = "cmn-ear", ["Early Medieval Latin"] = "la-eme", ["Early Middle Chinese"] = "ltc-ear", ["Early Middle Japanese"] = "ja-mid-ear", ["Early Middle Korean"] = "okm-ear", ["Early Middle Mongol"] = "xng-ear", ["Early Middle Persian"] = "pal-ear", ["Early Modern Czech"] = "cs-ear", ["Early Modern English"] = "en-ear", ["Early Modern Hakka"] = "hak-eam", ["Early Modern Japanese"] = "ja-ear", ["Early Modern Spanish"] = "es-ear", ["Early New High German"] = "de-ear", ["Early New Persian"] = "fa-ear", ["Early Old Chinese"] = "och-ear", ["Early Old Ossetic"] = "oos-ear", ["Early Old Persian"] = "peo-ear", ["Early Scots"] = "enm-esc", ["Early Sogdian"] = "sog-ear", ["East Frisian Low German"] = "frs", ["East Midland Middle English"] = "enm-emi", ["Eastern Balochi"] = "bgp", ["Eastern Mansi"] = "mns-eas", ["Eastern Old Japanese"] = "ojp-eas", ["Eastern Tati"] = "xme-ttc-eas", ["Ebrahimabadi"] = "tks-ebr", ["Ecclesiastical Latin"] = "la-ecc", ["Elean Greek"] = "grc-ela", ["Emamzada Esmaili"] = "fay-eze", ["Epic Greek"] = "grc-epc", ["Esfarvarini"] = "tks-esf", ["European Portuguese"] = "pt-PT", ["Fante Akan"] = "fat", ["Farizandi"] = "xme-far", ["Fayyumic Coptic"] = "cop-fay", ["Frankish"] = "frk", ["Fumani"] = "tly-fum", ["Fuyu Kyrgyz"] = "kjh-fyu", ["Gangwon Korean"] = "ko-gan", ["Gascon"] = "oc-gas", ["Gavkoshaki"] = "fay-gav", ["Gazi"] = "gzi", ["Geordie"] = "en-geo", ["Ghat"] = "thv-ght", ["Gheg Albanian"] = "aln", ["Golyad"] = "bat-gol", ["Goral"] = "pl-gor", ["Greater Polish"] = "pl-gre", ["Greenlandic Norse"] = "non-grn", ["Gronings"] = "gos", ["Guangzhou Cantonese"] = "yue-gua", ["Guanzhong Mandarin"] = "cmn-gua", ["Guernsey Norman"] = "nrf-grn", ["Guilin Mandarin"] = "cmn-gui", ["Gurjara Apabhramsa"] = "inc-agu", ["Gyeonggi Korean"] = "ko-gyg", ["Gyeongsang Korean"] = "ko-gys", ["Hailu Hakka"] = "hak-hai", ["Hamadani"] = "xme-ham", ["Hamgyong Korean"] = "ko-ham", ["Hangzhounese"] = "wuu-han", ["Hanjani"] = "xme-han", ["Hanyu Pinyin"] = "cmn-pinyin", ["Harar Oromo"] = "hae", ["Hatran Aramaic"] = "arc-hat", ["Havigannada"] = "kn-hav", ["Hazaragi"] = "haz", ["Helu Prakrit"] = "pra-hel", ["Hengyang Xiang"] = "hsn-hya", ["Hengzhou Xiang"] = "hsn-hzh", ["Hermopolitan Coptic"] = "cop-her", ["High Alemannic German"] = "gsw-hig", ["Highest Alemannic German"] = "gsw-hst", ["Hokkaido Ainu"] = "ain-hok", ["Hong Kong Cantonese"] = "yue-HK", ["Hong Kong English"] = "en-HK", ["Hong Kong Hakka"] = "hak-HK", ["Hormozi"] = "bsg-hor", ["Houlu Min"] = "nan-hou", ["Hui'an Hokkien"] = "nan-hui", ["Huiyang Hakka"] = "hak-hui", ["Huvadhu Dhivehi"] = "dv-huv", ["Hwanghae Korean"] = "ko-hwa", ["Imperial Aramaic"] = "arc-imp", ["Indian English"] = "en-IN", ["Insular Scots"] = "sco-ins", ["Ionic Greek"] = "grc-ion", ["Iranian Persian"] = "fa-ira", ["Irish English"] = "en-IE", ["Iron Ossetian"] = "os-iro", ["Isfahani"] = "xme-isf", ["Israeli Hebrew"] = "he-IL", ["Jadrani"] = "ps-jad", ["Jeolla Korean"] = "ko-jeo", ["Jersey Norman"] = "nrf-jer", ["Jewish Babylonian Aramaic"] = "tmr", ["Jewish Literary Aramaic"] = "arc-jla", ["Jewish Palestinian Aramaic"] = "jpa", ["Jianghuai Mandarin"] = "cmn-jhu", ["Jinjiang Hokkien"] = "nan-jin", ["Jirofti"] = "rdb-jir", ["Jowshaqani"] = "xme-jow", ["Judeo-Arabic"] = "jrb", ["Kafroni"] = "xme-kaf", ["Kahaki"] = "xme-kah", ["Kahnuji"] = "rdb-kah", ["Kajkavian Serbo-Croatian"] = "kjv", ["Kakari"] = "ps-kak", ["Kaliarda"] = "el-kal", ["Kamviri"] = "xvi", ["Kandahari"] = "ps-kan", ["Kaniguram"] = "oru-kan", ["Karganrudi"] = "tly-kar", ["Kashani"] = "xme-kas", ["Kasmiri Apabhramsa"] = "inc-aka", ["Katchal"] = "ncb-kat", ["Katharevousa"] = "el-kth", ["Kathiyawadi"] = "gu-kat", ["Kativiri"] = "bsh-kat", ["Kentish Middle English"] = "enm-ken", ["Kentish Old English"] = "ang-ken", ["Kermani"] = "xme-krm", ["Kesehi"] = "xme-kes", ["Khalkha Mongolian"] = "mn-kha", ["Khamba"] = "kbg", ["Khams Tibetan"] = "khg", ["Khargi"] = "fay-kar", ["Khasa Prakrit"] = "pra-kha", ["Khatak"] = "ps-xat", ["Khiaraji"] = "tks-xia", ["Khollari"] = "fay-kho", ["Khorchin Mongolian"] = "mn-khr", ["Khoznini"] = "tks-xoz", ["Khufi"] = "sgh-xuf", ["Khughni"] = "sgh-xug", ["Khughni-Bajui"] = "sgh-xgb", ["Khunsari"] = "kfm", ["Khuri"] = "xme-xur", ["Kinmenese Hokkien"] = "nan-kin", ["Kinyarwanda"] = "rw-kin", ["Kirundi"] = "rw-run", ["ဂရေတ် ခါဝ်အိန်"] = "grc-koi", ["Komjani"] = "xme-kom", ["Kondazi"] = "fay-kon", ["Korean Classical Chinese"] = "lzh-KO", ["Kromanti"] = "alv-kro", ["Kundagannada"] = "kn-kun", ["Kuril Ainu"] = "ain-kur", ["Kölsch"] = "ksh", ["Languedocien"] = "oc-lan", ["Lanuvian"] = "itc-lan", ["Lanyin Mandarin"] = "cmn-lan", ["Late Babylonian"] = "akk-lbb", ["Late Brythonic"] = "bry-lat", ["Late Egyptian"] = "egy-lat", ["Late Khotanese"] = "kho-lat", ["Late Latin"] = "la-lat", ["Late Middle Chinese"] = "ltc-lat", ["Late Middle Japanese"] = "ja-mid-lat", ["Late Middle Mongol"] = "xng-lat", ["Late Middle Persian"] = "pal-lat", ["Late Old Chinese"] = "och-lat", ["Late Old Korean"] = "oko-lat", ["Late Old Ossetic"] = "oos-lat", ["Late Old Persian"] = "peo-lat", ["Late Old Swedish"] = "gmq-osw-lat", ["Late Sogdian"] = "sog-lat", ["Law French"] = "xno-law", ["Lesser Polish"] = "pl-les", ["Limousin"] = "oc-lim", ["Lisan ud-Dawat Gujarati"] = "gu-lda", ["Literary Cantonese"] = "yue-lit", ["Literary Chinese"] = "lzh-lit", ["Logar"] = "oru-log", ["Logudorese"] = "sc-src", ["Lombardic"] = "lng", ["Loudi Xiang"] = "hsn-lou", ["Louisiana French"] = "fr-lou", ["Low Alemannic German"] = "gsw-low", ["Low Prussian"] = "nds-lpr", ["Lucanian"] = "osc-luc", ["Lunfardo"] = "es-lun", ["Lycopolitan Coptic"] = "cop-lyc", ["Língua Geral Amazônica"] = "tpw-lga", ["Maasina Fulfulde"] = "ffm", ["Magadhi Prakrit"] = "pra-mag", ["Mahallati"] = "xme-mah", ["Maharastri Apabhramsa"] = "inc-ama", ["Maharastri Prakrit"] = "pra-mah", ["Mahsudi"] = "ps-mah", ["Malaysian Huiyang Hakka"] = "hak-hui-MY", ["Malaysian Mandarin"] = "cmn-MY", ["Mamluk-Kipchak"] = "qwm-mam", ["Manichaean Middle Persian"] = "xmn", ["Manx English"] = "en-IM", ["Masali"] = "tly-msa", ["Masarami"] = "fay-mas", ["Masovian Polish"] = "pl-mas", ["Masulei"] = "tly-msu", ["Medan Hokkien"] = "nan-med", ["Medieval Hebrew"] = "he-med", ["Medieval Latin"] = "la-med", ["Medieval Sinhalese"] = "si-med", ["Medieval Tashelhit"] = "shi-med", ["Meixian Hakka"] = "hak-mei", ["Mercian Old English"] = "ang-mer", ["Mexican Spanish"] = "es-MX", ["Meymehi"] = "xme-mey", ["Middle Assyrian"] = "akk-mas", ["Middle Babylonian"] = "akk-mbb", ["Middle Belarusian"] = "zle-mbe", ["Middle Bulgarian"] = "cu-bgm", ["Middle Chuvash"] = "cv-mid", ["Middle Egyptian"] = "egy-mid", ["Middle Elamite"] = "elx-mid", ["Middle Georgian"] = "ka-mid", ["Middle Hindi"] = "hi-mid", ["Middle Japanese"] = "ja-mid", ["Middle Konkani"] = "kok-mid", ["Middle Polish"] = "zlw-mpl", ["Middle Russian"] = "zle-mru", ["Middle Tamil"] = "ta-mid", ["Middle Ukrainian"] = "zle-muk", ["Minabi"] = "bsg-min", ["Mishnaic Hebrew"] = "he-mis", ["Missouri French"] = "fr-mis", ["Mitanni"] = "inc-mit", ["Moldovan"] = "ro-MD", ["Mulaku Dhivehi"] = "dv-mul", ["Mumviri"] = "bsh-mum", ["Nabataean Aramaic"] = "arc-nab", ["Nalbaria Kamrupi Assamese"] = "as-nkm", ["Nancowry"] = "ncb-nan", ["Nanjing Mandarin"] = "cmn-nan", ["Naraqi"] = "xme-nar", ["Nashalji"] = "xme-nas", ["Natanzi"] = "ntz", ["Nayini"] = "nyq", ["Neo-Assyrian"] = "akk-nas", ["Neo-Babylonian"] = "akk-nbb", ["Neo-Elamite"] = "elx-neo", ["Neo-Middle Egyptian"] = "egy-nmi", ["New Latin"] = "la-new", ["New Sanskrit"] = "sa-neo", ["New Xiang"] = "hsn-new", ["New Zealand English"] = "en-NZ", ["Nigerian Fulfulde"] = "fuv", ["Ningbonese"] = "wuu-nin", ["Noakhailla Vaṅga Bengali"] = "bn-nvn", ["North Alaskan Inupiatun"] = "esi", ["North American English"] = "en-NNN", ["North Karelian"] = "krl-nor", ["Northeastern Mandarin"] = "cmn-noe", ["Northeastern Pashto"] = "ps-nea", ["Northern Irish English"] = "en-GB-NIR", ["Northern Middle English"] = "enm-nor", ["Northern Scots"] = "sco-nor", ["Northern Talysh"] = "tly-nor", ["Northern Tati"] = "xme-ttc-nor", ["Northern Wu"] = "wuu-nor", ["Northumbrian Old English"] = "ang-nor", ["Northwest Alaskan Inupiatun"] = "esk", ["Northwestern Pashto"] = "ps-nwe", ["Nuorese"] = "sc-nuo", ["Nushabadi"] = "xme-nus", ["Odri"] = "pra-odr", ["Old Akkadian"] = "akk-old", ["Old Aramaic"] = "arc-old", ["Old Assyrian"] = "akk-oas", ["Old Avestan"] = "ae-old", ["Old Azari"] = "xme-azr", ["Old Babylonian"] = "akk-obb", ["Old Braj"] = "bra-old", ["Old Chuvash"] = "cv-old", ["Old Coptic"] = "cop-old", ["Old East Norse"] = "non-oen", ["Old Egyptian"] = "egy-old", ["Old Elamite"] = "elx-old", ["Old Italian"] = "roa-oit", ["Old Kazeruni"] = "fay-kzo", ["Old Khotanese"] = "kho-old", ["Old Kirghiz"] = "otk-kir", ["Old Konkani"] = "kok-old", ["Old Latin"] = "itc-ola", ["Old Malay"] = "ms-old", ["Old Mohawk"] = "iro-omo", ["Old Northern French"] = "fro-nor", ["Old Onondaga"] = "iro-oon", ["Old Ossetic"] = "oos", ["Old Provençal"] = "oc-pro-old", ["Old Pskovian"] = "zle-ops", ["Old Shirazi"] = "fay-sho", ["Old Tagalog"] = "tl-old", ["Old Thai"] = "th-old", ["Old Wendat"] = "iro-ohu", ["Old West Norse"] = "non-own", ["Old Xiang"] = "hsn-old", ["Opuntian Locrian"] = "grc-opl", ["Ordos Mongolian"] = "mn-ord", ["Orkhon Turkic"] = "otk-ork", ["Orma"] = "orc", ["Oroshori"] = "sgh-oro", ["Oxyrhynchite Coptic"] = "cop-oxy", ["Ozolian Locrian"] = "grc-ozl", ["Paisaci Prakrit"] = "pra-pai", ["Palasbaria Kamrupi Assamese"] = "as-pkm", ["Palatine German"] = "pfl", ["Paleo-Balkan"] = "qsb-bal", ["Paleo-Hispanic"] = "qsb-ibe", ["Palladius"] = "cmn-palladius", ["Palmyrene Aramaic"] = "arc-pal", ["Pamphylian Greek"] = "grc-pam", ["Paphian Greek"] = "el-pap", ["Papuni"] = "fay-pap", ["Penang Hokkien"] = "nan-pen", ["Peruvian Spanish"] = "es-PE", ["Peshawari"] = "ps-pes", ["Philippine Hokkien"] = "nan-hbl-PH", ["Philippine Mandarin"] = "cmn-PH", ["Philippine Spanish"] = "es-PH", ["Picard Old French"] = "fro-pic", ["Polari"] = "pld", ["Postal Romanization"] = "zh-postal", ["Pracya"] = "pra-pra", ["Praenestine"] = "itc-pra", ["Pre-Angkorian Old Khmer"] = "okz-pre", ["Pre-Classical Chinese"] = "lzh-pre", ["Pre-Greek"] = "qsb-grc", ["Proto-Anglo-Frisian"] = "gmw-afr-pro", ["Proto-Arinic"] = "qfa-yrn-pro", ["Proto-Baltic"] = "bat-pro", ["Proto-Bulgar"] = "trk-bul-pro", ["Proto-Common Turkic"] = "trk-cmn-pro", ["Proto-Finno-Permic"] = "urj-fpr-pro", ["Proto-Finno-Ugric"] = "fiu-pro", ["Proto-Ketic"] = "qfa-yke-pro", ["Proto-Kottic"] = "qfa-yko-pro", ["Proto-Lycopolitan Coptic"] = "cop-ply", ["Proto-North Sea Germanic"] = "gmw-nsg-pro", ["Proto-Oghur"] = "trk-ogr-pro", ["Proto-Oghuz"] = "trk-ogz-pro", ["Proto-Pumpokolic"] = "qfa-ypm-pro", ["Proto-Romance"] = "roa-pro", ["Proto-Tibeto-Burman"] = "tbq-pro", ["Provençal"] = "oc-pro", ["Puerto Rican Spanish"] = "es-PR", ["Pulaar"] = "fuc", ["Pular"] = "fuf", ["Pyongan Korean"] = "ko-pyo", ["Qalhari"] = "xme-qal", ["Qashqai"] = "qxq", ["Qianlu Min"] = "nan-qia", ["Qohrudi"] = "xme-qoh", ["Quanzhou Hokkien"] = "nan-qua", ["Renaissance Latin"] = "la-ren", ["Rioplatense Spanish"] = "es-AR", ["Roshani"] = "sgh-ros", ["Roshani-Khufi"] = "sgh-rsx", ["Russian Church Slavonic"] = "zls-chs-ru", ["Sabari"] = "pra-sab", ["Sagzabadi"] = "tks-sag", ["Sahidic Coptic"] = "cop-sah", ["Saint Dominican Creole French"] = "ht-sdm", ["Sakari"] = "pra-sak", ["Sakhalin Ainu"] = "ain-sak", ["Sallands"] = "sdz", ["Samghani"] = "fay-sam", ["Samnite"] = "osc-sam", ["Sauraseni Apabhramsa"] = "inc-asa", ["Sauraseni Prakrit"] = "pra-sau", ["Scottish English"] = "en-GB-SCT", ["Sedehi"] = "xme-sed", ["Shadi Wu"] = "wuu-chm", ["Shandarmani"] = "tly-san", ["Shanghainese"] = "wuu-sha", ["Shangsi Zhuang"] = "tai-shz", ["Sher"] = "ps-ser", ["Shirazi"] = "fay-shr", ["Shuadit"] = "oc-jud", ["Silesian East Central German"] = "sli", ["Singapore Hokkien"] = "nan-hbl-SG", ["Singapore Mandarin"] = "cmn-SG", ["Sixian Hakka"] = "hak-six", ["Soi"] = "soj", ["Sorkhi"] = "fay-sor", ["South African English"] = "en-ZA", ["South Karelian"] = "krl-sou", ["Southeastern Pashto"] = "ps-sea", ["Southern Balochi"] = "bcc", ["Southern Malaysian Hokkien"] = "nan-spm", ["Southern Middle English"] = "enm-sou", ["Southern Scots"] = "sco-sou", ["Southern Talysh"] = "tly-sou", ["Southern Tati"] = "xme-ttc-sou", ["Southwestern Mandarin"] = "cmn-sow", ["Southwestern Pashto"] = "ps-swe", ["Standard Babylonian"] = "akk-stb", ["Stellingwerfs"] = "stl", ["Suevic"] = "gem-sue", ["Sukhothai Old Thai"] = "th-suk", ["Suzhounese"] = "wuu-suz", ["Swiss French"] = "fr-CH", ["Switzerland German"] = "de-CH", ["Switzerland Italian"] = "it-CH", ["Taiwanese Hakka"] = "hak-TW", ["Taiwanese Hokkien"] = "nan-hbl-TW", ["Taiwanese Mandarin"] = "cmn-TW", ["Takestani"] = "tks-tak", ["Takka Apabhramsa"] = "inc-ata", ["Taleshdulabi"] = "tly-tal", ["Tamahaq"] = "thv", ["Tamasheq"] = "taq", ["Tarehi"] = "xme-trh", ["Tari"] = "xme-tar", ["ထာဝါလပ်မေတ်"] = "ttq", ["ထေယျုက်"] = "thz", ["Thessalian Greek"] = "grc-ths", ["Tianjin Mandarin"] = "cmn-tia", ["Tong'an Hokkien"] = "nan-ton", ["Tongyong Pinyin"] = "cmn-tongyong", ["Torlakian Serbo-Croatian"] = "sh-tor", ["Tosk Albanian"] = "als", ["Traditional Chinese poetry"] = "lzh-shi", ["Transalpine Gaulish"] = "xtg", ["Tseku"] = "tsk", ["Tularudi"] = "tly-tul", ["Twents"] = "twd", ["Twi Akan"] = "tw", ["Ukrainian Church Slavonic"] = "zls-chs-uk", ["Ulster English"] = "en-uls", ["Ulster Scots"] = "sco-uls", ["United States Spanish"] = "es-US", ["Upper Saxon German"] = "sxu", ["Vafsi"] = "vaf", ["Valencian"] = "ca-val", ["Valujerdi"] = "xme-val", ["Varani"] = "xme-var", ["Varzenehi"] = "xme-vrz", ["Vedic Sanskrit"] = "vsn", ["Veluws"] = "vel", ["Venezuelan Spanish"] = "es-VE", ["Viennese German"] = "de-AT-vie", ["Vietnamese Classical Chinese"] = "lzh-VI", ["Viryal Chuvash"] = "cv-vir", ["Vivaro-Alpine"] = "oc-viv", ["Volga Bulgar"] = "xbo-vol", ["Vonishuni"] = "xme-von", ["Vracada Apabhramsa"] = "inc-avr", ["Vulgar Latin"] = "la-vul", ["Waata"] = "ssn", ["Wade–Giles"] = "cmn-wadegiles", ["Walser German"] = "wae", ["Waziri"] = "ps-waz", ["Welsh English"] = "en-GB-WLS", ["Wenzhounese"] = "wuu-wen", ["West Midland Middle English"] = "enm-wmi", ["West Saxon Old English"] = "ang-wsx", ["Western Balochi"] = "bgn", ["Western Mansi"] = "mns-wes", ["Western Niger Fulfulde"] = "fuh", ["Western Panjabi"] = "pnb", ["Western Tati"] = "xme-ttc-wes", ["Westphalian"] = "wep", ["Written vernacular Cantonese"] = "yue-wvc", ["Written vernacular Mandarin"] = "cmn-wvc", ["Written vernacular Taishanese"] = "zhx-tai-wvc", ["Wuhan Mandarin"] = "cmn-wuh", ["Xiamen Hokkien"] = "nan-xia", ["Xining Mandarin"] = "cmn-xin", ["Yangzhou Mandarin"] = "cmn-yan", ["Yarandi"] = "xme-yar", ["Yazdi"] = "xme-yaz", ["Yongchun Hokkien"] = "nan-yon", ["Younger Avestan"] = "ae-yng", ["Yukjin Korean"] = "ko-yuk", ["Zarphatic"] = "zrp", ["Zefrehi"] = "xme-zef", ["Zhangping Hokkien"] = "nan-zhp", ["Zhangzhou Hokkien"] = "nan-zha", ["Zhao'an Hakka"] = "hak-zha", ["Zhao'an Hokkien"] = "nan-zho", ["Zhongshan Min"] = "zhx-zho", ["Zori"] = "xme-zor", ["Zoroastrian Dari"] = "gbz", ["taxonomic name"] = "mul-tax", ["the BMAC substrate"] = "qsb-bma", } 30gds3rt2nd3gcgugmne4pzkviizpxg 402264 402261 2026-10-01T05:51:19Z Intobesa.bot 1035 Bot: ပွမကၠာဲစုတ်ယၟုနူဘာသာအၚ်္ဂလိက် 402264 Scribunto text/plain return { ["Abhiri"] = "pra-abh", ["Abuzeydabadi"] = "xme-abz", ["Abyanehi"] = "xme-aby", ["Acadian French"] = "fr-aca", ["Achaemenid Elamite"] = "elx-ach", ["Achterhoeks"] = "act", ["Adamawa Fulfulde"] = "fub", ["Addu Dhivehi"] = "dv-add", ["Aeolic Greek"] = "grc-aeo", ["Afghan Uzbek"] = "uz-afg", ["African Romance"] = "la-afr", ["Afridi"] = "ps-afr", ["Akhmimic Coptic"] = "cop-akh", ["Akuapem Twi"] = "tw-aku", ["Alsatian Alemannic German"] = "gsw-FR-als", ["Amdo Tibetan"] = "adx", ["American English"] = "en-US", ["Amorehi"] = "xme-amo", ["Anaraki"] = "xme-ana", ["Anatri Chuvash"] = "cv-ana", ["Anbarani"] = "tly-anb", ["Angkorian Old Khmer"] = "okz-ang", ["Anglian Old English"] = "ang-ang", ["အာန်ဂဝ်-နဝ်မာန်"] = "xno", ["Anxi Hokkien"] = "nan-anx", ["Aranese"] = "oc-ara", ["Arbëresh Albanian"] = "aae", ["Arcadian Greek"] = "grc-arc", ["Arcadocypriot Greek"] = "grc-arp", ["Ardestani"] = "xme-ard", ["Ardhamagadhi Prakrit"] = "pra-ard", ["Arghu"] = "klj-arg", ["Armeno-Kipchak"] = "qwm-arm", ["Arvanitika Albanian"] = "aat", ["Asalemi"] = "tly-asa", ["Asante Twi"] = "tw-asa", ["Ashtiani"] = "atn", ["Attic Greek"] = "grc-att", ["Australian Aboriginal English"] = "en-aae", ["Australian English"] = "en-AU", ["Austrian German"] = "de-AT", ["Auvergnat"] = "oc-auv", ["Avahattha"] = "inc-aav", ["Avanti"] = "pra-ava", ["Ayutthaya Old Thai"] = "th-ayu", ["Azerbaijani Talysh"] = "tly-aze", ["Badrudi"] = "xme-bdr", ["Bagirmi Fulfulde"] = "fui", ["Bahliki"] = "pra-bah", ["Bajui"] = "sgh-baj", ["Baltic German"] = "de-bal", ["Bandari"] = "bsg-ban", ["Bangash"] = "ps-bng", ["Bannu"] = "ps-ban", ["Barpetia Kamrupi Assamese"] = "as-bkm", ["Bartangi"] = "sgh-bar", ["Bartangi-Oroshori"] = "sgh-bro", ["Beijing Mandarin"] = "cmn-bei", ["Beijingic Mandarin"] = "cmn-bec", ["Belgian Dutch"] = "nl-BE", ["Besemah"] = "pse-bsm", ["Betawi Kota"] = "bew-kot", ["Biblical Aramaic"] = "arc-bib", ["Biblical Hebrew"] = "hbo", ["Bidhandi"] = "xme-bid", ["Bijagani"] = "xme-bij", ["Boeotian Greek"] = "grc-boi", ["Bohairic Coptic"] = "cop-boh", ["Bolivian Spanish"] = "es-BO", ["Bombay Hindi"] = "hi-mum", ["Bono Twi"] = "tw-abr", ["Borana"] = "gax", ["Borgu Fulfulde"] = "fue", ["Borujerdi"] = "xme-bor", ["Brahmanic Sanskrit"] = "sa-bra", ["Brazilian Portuguese"] = "pt-BR", ["British English"] = "en-GB", ["Buddhist Hybrid Sanskrit"] = "sa-bhs", ["Burenjani"] = "fay-bur", ["Bushehri"] = "fay-bsh", ["ဂရေတ် ဗေတ်သေန်ထေၚ်"] = "gkm", ["Cajun French"] = "frc", ["California English"] = "en-US-CA", ["Camorta"] = "ncb-cam", ["Campidanese"] = "sc-sro", ["Canadian English"] = "en-CA", ["Canadian French"] = "fr-CA", ["Canadian Ukrainian"] = "uk-CA", ["Candali"] = "pra-can", ["Capenate"] = "xfa-cap", ["Central Ghilzay"] = "ps-cgi", ["Central Korean"] = "ko-cen", ["Central Plains Mandarin"] = "cmn-cep", ["Central Talysh"] = "tly-cen", ["Central Tati"] = "xme-ttc-cen", ["Central-Eastern Niger Fulfulde"] = "fuq", ["Chakavian Serbo-Croatian"] = "ckm", ["Chakhar Mongolian"] = "mn-cha", ["Chali Tati"] = "tks-cal", ["Changtai Hokkien"] = "nan-cha", ["Chilean Spanish"] = "es-CL", ["Chimehi"] = "xme-cim", ["Christian Palestinian Aramaic"] = "arc-cpa", ["Chungcheong Korean"] = "ko-chu", ["Ci"] = "lzh-cii", ["Cisalpine Gaulish"] = "xcg", ["Classical Azerbaijani"] = "az-cls", ["Classical Cantonese"] = "lzh-yue", ["Classical Japanese"] = "ja-cla", ["Classical Latin"] = "la-cla", ["Classical Malay"] = "ms-cla", ["Classical Mandarin"] = "lzh-cmn", ["Classical Persian"] = "fa-cls", ["Classical Sanskrit"] = "cls", ["Classical Tagalog"] = "tl-cls", ["Classical Taishanese"] = "lzh-tai", ["Classical Taiwanese Mandarin"] = "lzh-cmn-TW", ["Colombian Spanish"] = "es-CO", ["Common Bantu"] = "bnt-cmn", ["Contemporary Latin"] = "la-con", ["Coptic Dialect G"] = "cop-ggg", ["Coptic Dialect J"] = "cop-jjj", ["Coptic Dialect K"] = "cop-kkk", ["Coptic Dialect P"] = "cop-ppp", ["Cretan Ancient Greek"] = "grc-kre", ["Cretan Greek"] = "el-crt", ["Cuban Spanish"] = "es-CU", ["Cuman"] = "qwm-cum", ["Cypriot Greek"] = "el-cyp", ["Cypriot Turkish"] = "tr-CY", ["Dabu Hakka"] = "hak-dab", ["Daksinatya"] = "pra-dak", ["Danesfani"] = "tks-dan", ["Danube Bulgar"] = "xbo-dan", ["Danzhou Chinese"] = "zhx-dan", ["Dari"] = "prs", ["Dashtaki"] = "fay-dsh", ["Davani"] = "fay-dav", ["Delijani"] = "xme-del", ["Dhakaiya Vaṅga Bengali"] = "bn-dvn", ["Digor Ossetian"] = "os-dig", ["Dnieper Baltic"] = "bat-dni", ["Dobrujan Tatar"] = "crh-dbj", ["Doric Greek"] = "grc-dor", ["Dramili"] = "pra-dra", ["Drents"] = "drt", ["Early Brythonic"] = "bry-ear", ["Early Mandarin"] = "cmn-ear", ["Early Medieval Latin"] = "la-eme", ["Early Middle Chinese"] = "ltc-ear", ["Early Middle Japanese"] = "ja-mid-ear", ["Early Middle Korean"] = "okm-ear", ["Early Middle Mongol"] = "xng-ear", ["Early Middle Persian"] = "pal-ear", ["Early Modern Czech"] = "cs-ear", ["Early Modern English"] = "en-ear", ["Early Modern Hakka"] = "hak-eam", ["Early Modern Japanese"] = "ja-ear", ["Early Modern Spanish"] = "es-ear", ["Early New High German"] = "de-ear", ["Early New Persian"] = "fa-ear", ["Early Old Chinese"] = "och-ear", ["Early Old Ossetic"] = "oos-ear", ["Early Old Persian"] = "peo-ear", ["Early Scots"] = "enm-esc", ["Early Sogdian"] = "sog-ear", ["East Frisian Low German"] = "frs", ["East Midland Middle English"] = "enm-emi", ["Eastern Balochi"] = "bgp", ["Eastern Mansi"] = "mns-eas", ["Eastern Old Japanese"] = "ojp-eas", ["Eastern Tati"] = "xme-ttc-eas", ["Ebrahimabadi"] = "tks-ebr", ["Ecclesiastical Latin"] = "la-ecc", ["Elean Greek"] = "grc-ela", ["Emamzada Esmaili"] = "fay-eze", ["Epic Greek"] = "grc-epc", ["Esfarvarini"] = "tks-esf", ["European Portuguese"] = "pt-PT", ["Fante Akan"] = "fat", ["Farizandi"] = "xme-far", ["Fayyumic Coptic"] = "cop-fay", ["Frankish"] = "frk", ["Fumani"] = "tly-fum", ["Fuyu Kyrgyz"] = "kjh-fyu", ["Gangwon Korean"] = "ko-gan", ["Gascon"] = "oc-gas", ["Gavkoshaki"] = "fay-gav", ["Gazi"] = "gzi", ["Geordie"] = "en-geo", ["Ghat"] = "thv-ght", ["Gheg Albanian"] = "aln", ["Golyad"] = "bat-gol", ["Goral"] = "pl-gor", ["Greater Polish"] = "pl-gre", ["Greenlandic Norse"] = "non-grn", ["Gronings"] = "gos", ["Guangzhou Cantonese"] = "yue-gua", ["Guanzhong Mandarin"] = "cmn-gua", ["Guernsey Norman"] = "nrf-grn", ["Guilin Mandarin"] = "cmn-gui", ["Gurjara Apabhramsa"] = "inc-agu", ["Gyeonggi Korean"] = "ko-gyg", ["Gyeongsang Korean"] = "ko-gys", ["Hailu Hakka"] = "hak-hai", ["Hamadani"] = "xme-ham", ["Hamgyong Korean"] = "ko-ham", ["Hangzhounese"] = "wuu-han", ["Hanjani"] = "xme-han", ["Hanyu Pinyin"] = "cmn-pinyin", ["Harar Oromo"] = "hae", ["Hatran Aramaic"] = "arc-hat", ["Havigannada"] = "kn-hav", ["Hazaragi"] = "haz", ["Helu Prakrit"] = "pra-hel", ["Hengyang Xiang"] = "hsn-hya", ["Hengzhou Xiang"] = "hsn-hzh", ["Hermopolitan Coptic"] = "cop-her", ["High Alemannic German"] = "gsw-hig", ["Highest Alemannic German"] = "gsw-hst", ["Hokkaido Ainu"] = "ain-hok", ["Hong Kong Cantonese"] = "yue-HK", ["Hong Kong English"] = "en-HK", ["Hong Kong Hakka"] = "hak-HK", ["Hormozi"] = "bsg-hor", ["Houlu Min"] = "nan-hou", ["Hui'an Hokkien"] = "nan-hui", ["Huiyang Hakka"] = "hak-hui", ["Huvadhu Dhivehi"] = "dv-huv", ["Hwanghae Korean"] = "ko-hwa", ["Imperial Aramaic"] = "arc-imp", ["Indian English"] = "en-IN", ["Insular Scots"] = "sco-ins", ["Ionic Greek"] = "grc-ion", ["Iranian Persian"] = "fa-ira", ["Irish English"] = "en-IE", ["Iron Ossetian"] = "os-iro", ["Isfahani"] = "xme-isf", ["Israeli Hebrew"] = "he-IL", ["Jadrani"] = "ps-jad", ["Jeolla Korean"] = "ko-jeo", ["Jersey Norman"] = "nrf-jer", ["Jewish Babylonian Aramaic"] = "tmr", ["Jewish Literary Aramaic"] = "arc-jla", ["Jewish Palestinian Aramaic"] = "jpa", ["Jianghuai Mandarin"] = "cmn-jhu", ["Jinjiang Hokkien"] = "nan-jin", ["Jirofti"] = "rdb-jir", ["Jowshaqani"] = "xme-jow", ["Judeo-Arabic"] = "jrb", ["Kafroni"] = "xme-kaf", ["Kahaki"] = "xme-kah", ["Kahnuji"] = "rdb-kah", ["Kajkavian Serbo-Croatian"] = "kjv", ["Kakari"] = "ps-kak", ["Kaliarda"] = "el-kal", ["Kamviri"] = "xvi", ["Kandahari"] = "ps-kan", ["Kaniguram"] = "oru-kan", ["Karganrudi"] = "tly-kar", ["Kashani"] = "xme-kas", ["Kasmiri Apabhramsa"] = "inc-aka", ["Katchal"] = "ncb-kat", ["Katharevousa"] = "el-kth", ["Kathiyawadi"] = "gu-kat", ["Kativiri"] = "bsh-kat", ["Kentish Middle English"] = "enm-ken", ["Kentish Old English"] = "ang-ken", ["Kermani"] = "xme-krm", ["Kesehi"] = "xme-kes", ["Khalkha Mongolian"] = "mn-kha", ["Khamba"] = "kbg", ["Khams Tibetan"] = "khg", ["Khargi"] = "fay-kar", ["Khasa Prakrit"] = "pra-kha", ["Khatak"] = "ps-xat", ["Khiaraji"] = "tks-xia", ["Khollari"] = "fay-kho", ["Khorchin Mongolian"] = "mn-khr", ["Khoznini"] = "tks-xoz", ["Khufi"] = "sgh-xuf", ["Khughni"] = "sgh-xug", ["Khughni-Bajui"] = "sgh-xgb", ["Khunsari"] = "kfm", ["Khuri"] = "xme-xur", ["Kinmenese Hokkien"] = "nan-kin", ["Kinyarwanda"] = "rw-kin", ["Kirundi"] = "rw-run", ["ဂရေတ် ခါဝ်အိန်"] = "grc-koi", ["Komjani"] = "xme-kom", ["Kondazi"] = "fay-kon", ["Korean Classical Chinese"] = "lzh-KO", ["Kromanti"] = "alv-kro", ["Kundagannada"] = "kn-kun", ["Kuril Ainu"] = "ain-kur", ["Kölsch"] = "ksh", ["Languedocien"] = "oc-lan", ["Lanuvian"] = "itc-lan", ["Lanyin Mandarin"] = "cmn-lan", ["Late Babylonian"] = "akk-lbb", ["Late Brythonic"] = "bry-lat", ["Late Egyptian"] = "egy-lat", ["Late Khotanese"] = "kho-lat", ["Late Latin"] = "la-lat", ["Late Middle Chinese"] = "ltc-lat", ["Late Middle Japanese"] = "ja-mid-lat", ["Late Middle Mongol"] = "xng-lat", ["Late Middle Persian"] = "pal-lat", ["Late Old Chinese"] = "och-lat", ["Late Old Korean"] = "oko-lat", ["Late Old Ossetic"] = "oos-lat", ["Late Old Persian"] = "peo-lat", ["Late Old Swedish"] = "gmq-osw-lat", ["Late Sogdian"] = "sog-lat", ["Law French"] = "xno-law", ["Lesser Polish"] = "pl-les", ["Limousin"] = "oc-lim", ["Lisan ud-Dawat Gujarati"] = "gu-lda", ["Literary Cantonese"] = "yue-lit", ["Literary Chinese"] = "lzh-lit", ["Logar"] = "oru-log", ["Logudorese"] = "sc-src", ["Lombardic"] = "lng", ["Loudi Xiang"] = "hsn-lou", ["Louisiana French"] = "fr-lou", ["Low Alemannic German"] = "gsw-low", ["Low Prussian"] = "nds-lpr", ["Lucanian"] = "osc-luc", ["Lunfardo"] = "es-lun", ["Lycopolitan Coptic"] = "cop-lyc", ["Língua Geral Amazônica"] = "tpw-lga", ["Maasina Fulfulde"] = "ffm", ["Magadhi Prakrit"] = "pra-mag", ["Mahallati"] = "xme-mah", ["Maharastri Apabhramsa"] = "inc-ama", ["Maharastri Prakrit"] = "pra-mah", ["Mahsudi"] = "ps-mah", ["Malaysian Huiyang Hakka"] = "hak-hui-MY", ["Malaysian Mandarin"] = "cmn-MY", ["Mamluk-Kipchak"] = "qwm-mam", ["Manichaean Middle Persian"] = "xmn", ["Manx English"] = "en-IM", ["Masali"] = "tly-msa", ["Masarami"] = "fay-mas", ["Masovian Polish"] = "pl-mas", ["Masulei"] = "tly-msu", ["Medan Hokkien"] = "nan-med", ["Medieval Hebrew"] = "he-med", ["Medieval Latin"] = "la-med", ["Medieval Sinhalese"] = "si-med", ["ထေယျုက်"] = "shi-med", ["Meixian Hakka"] = "hak-mei", ["Mercian Old English"] = "ang-mer", ["Mexican Spanish"] = "es-MX", ["Meymehi"] = "xme-mey", ["Middle Assyrian"] = "akk-mas", ["Middle Babylonian"] = "akk-mbb", ["Middle Belarusian"] = "zle-mbe", ["Middle Bulgarian"] = "cu-bgm", ["Middle Chuvash"] = "cv-mid", ["Middle Egyptian"] = "egy-mid", ["Middle Elamite"] = "elx-mid", ["Middle Georgian"] = "ka-mid", ["Middle Hindi"] = "hi-mid", ["Middle Japanese"] = "ja-mid", ["Middle Konkani"] = "kok-mid", ["Middle Polish"] = "zlw-mpl", ["Middle Russian"] = "zle-mru", ["Middle Tamil"] = "ta-mid", ["Middle Ukrainian"] = "zle-muk", ["Minabi"] = "bsg-min", ["Mishnaic Hebrew"] = "he-mis", ["Missouri French"] = "fr-mis", ["Mitanni"] = "inc-mit", ["Moldovan"] = "ro-MD", ["Mulaku Dhivehi"] = "dv-mul", ["Mumviri"] = "bsh-mum", ["Nabataean Aramaic"] = "arc-nab", ["Nalbaria Kamrupi Assamese"] = "as-nkm", ["Nancowry"] = "ncb-nan", ["Nanjing Mandarin"] = "cmn-nan", ["Naraqi"] = "xme-nar", ["Nashalji"] = "xme-nas", ["Natanzi"] = "ntz", ["Nayini"] = "nyq", ["Neo-Assyrian"] = "akk-nas", ["Neo-Babylonian"] = "akk-nbb", ["Neo-Elamite"] = "elx-neo", ["Neo-Middle Egyptian"] = "egy-nmi", ["New Latin"] = "la-new", ["New Sanskrit"] = "sa-neo", ["New Xiang"] = "hsn-new", ["New Zealand English"] = "en-NZ", ["Nigerian Fulfulde"] = "fuv", ["Ningbonese"] = "wuu-nin", ["Noakhailla Vaṅga Bengali"] = "bn-nvn", ["North Alaskan Inupiatun"] = "esi", ["North American English"] = "en-NNN", ["North Karelian"] = "krl-nor", ["Northeastern Mandarin"] = "cmn-noe", ["Northeastern Pashto"] = "ps-nea", ["Northern Irish English"] = "en-GB-NIR", ["Northern Middle English"] = "enm-nor", ["Northern Scots"] = "sco-nor", ["Northern Talysh"] = "tly-nor", ["Northern Tati"] = "xme-ttc-nor", ["Northern Wu"] = "wuu-nor", ["Northumbrian Old English"] = "ang-nor", ["Northwest Alaskan Inupiatun"] = "esk", ["Northwestern Pashto"] = "ps-nwe", ["Nuorese"] = "sc-nuo", ["Nushabadi"] = "xme-nus", ["Odri"] = "pra-odr", ["Old Akkadian"] = "akk-old", ["Old Aramaic"] = "arc-old", ["Old Assyrian"] = "akk-oas", ["Old Avestan"] = "ae-old", ["Old Azari"] = "xme-azr", ["Old Babylonian"] = "akk-obb", ["Old Braj"] = "bra-old", ["Old Chuvash"] = "cv-old", ["Old Coptic"] = "cop-old", ["Old East Norse"] = "non-oen", ["Old Egyptian"] = "egy-old", ["Old Elamite"] = "elx-old", ["Old Italian"] = "roa-oit", ["Old Kazeruni"] = "fay-kzo", ["Old Khotanese"] = "kho-old", ["Old Kirghiz"] = "otk-kir", ["Old Konkani"] = "kok-old", ["Old Latin"] = "itc-ola", ["Old Malay"] = "ms-old", ["Old Mohawk"] = "iro-omo", ["Old Northern French"] = "fro-nor", ["Old Onondaga"] = "iro-oon", ["Old Ossetic"] = "oos", ["Old Provençal"] = "oc-pro-old", ["Old Pskovian"] = "zle-ops", ["Old Shirazi"] = "fay-sho", ["Old Tagalog"] = "tl-old", ["Old Thai"] = "th-old", ["Old Wendat"] = "iro-ohu", ["Old West Norse"] = "non-own", ["Old Xiang"] = "hsn-old", ["Opuntian Locrian"] = "grc-opl", ["Ordos Mongolian"] = "mn-ord", ["Orkhon Turkic"] = "otk-ork", ["Orma"] = "orc", ["Oroshori"] = "sgh-oro", ["Oxyrhynchite Coptic"] = "cop-oxy", ["Ozolian Locrian"] = "grc-ozl", ["Paisaci Prakrit"] = "pra-pai", ["Palasbaria Kamrupi Assamese"] = "as-pkm", ["Palatine German"] = "pfl", ["Paleo-Balkan"] = "qsb-bal", ["Paleo-Hispanic"] = "qsb-ibe", ["Palladius"] = "cmn-palladius", ["Palmyrene Aramaic"] = "arc-pal", ["Pamphylian Greek"] = "grc-pam", ["Paphian Greek"] = "el-pap", ["Papuni"] = "fay-pap", ["Penang Hokkien"] = "nan-pen", ["Peruvian Spanish"] = "es-PE", ["Peshawari"] = "ps-pes", ["Philippine Hokkien"] = "nan-hbl-PH", ["Philippine Mandarin"] = "cmn-PH", ["Philippine Spanish"] = "es-PH", ["Picard Old French"] = "fro-pic", ["Polari"] = "pld", ["Postal Romanization"] = "zh-postal", ["Pracya"] = "pra-pra", ["Praenestine"] = "itc-pra", ["Pre-Angkorian Old Khmer"] = "okz-pre", ["Pre-Classical Chinese"] = "lzh-pre", ["Pre-Greek"] = "qsb-grc", ["Proto-Anglo-Frisian"] = "gmw-afr-pro", ["Proto-Arinic"] = "qfa-yrn-pro", ["Proto-Baltic"] = "bat-pro", ["Proto-Bulgar"] = "trk-bul-pro", ["Proto-Common Turkic"] = "trk-cmn-pro", ["Proto-Finno-Permic"] = "urj-fpr-pro", ["Proto-Finno-Ugric"] = "fiu-pro", ["Proto-Ketic"] = "qfa-yke-pro", ["Proto-Kottic"] = "qfa-yko-pro", ["Proto-Lycopolitan Coptic"] = "cop-ply", ["Proto-North Sea Germanic"] = "gmw-nsg-pro", ["Proto-Oghur"] = "trk-ogr-pro", ["Proto-Oghuz"] = "trk-ogz-pro", ["Proto-Pumpokolic"] = "qfa-ypm-pro", ["Proto-Romance"] = "roa-pro", ["Proto-Tibeto-Burman"] = "tbq-pro", ["Provençal"] = "oc-pro", ["Puerto Rican Spanish"] = "es-PR", ["Pulaar"] = "fuc", ["Pular"] = "fuf", ["Pyongan Korean"] = "ko-pyo", ["Qalhari"] = "xme-qal", ["Qashqai"] = "qxq", ["Qianlu Min"] = "nan-qia", ["Qohrudi"] = "xme-qoh", ["Quanzhou Hokkien"] = "nan-qua", ["Renaissance Latin"] = "la-ren", ["Rioplatense Spanish"] = "es-AR", ["Roshani"] = "sgh-ros", ["Roshani-Khufi"] = "sgh-rsx", ["Russian Church Slavonic"] = "zls-chs-ru", ["Sabari"] = "pra-sab", ["Sagzabadi"] = "tks-sag", ["Sahidic Coptic"] = "cop-sah", ["Saint Dominican Creole French"] = "ht-sdm", ["Sakari"] = "pra-sak", ["Sakhalin Ainu"] = "ain-sak", ["Sallands"] = "sdz", ["Samghani"] = "fay-sam", ["Samnite"] = "osc-sam", ["Sauraseni Apabhramsa"] = "inc-asa", ["Sauraseni Prakrit"] = "pra-sau", ["Scottish English"] = "en-GB-SCT", ["Sedehi"] = "xme-sed", ["Shadi Wu"] = "wuu-chm", ["Shandarmani"] = "tly-san", ["Shanghainese"] = "wuu-sha", ["Shangsi Zhuang"] = "tai-shz", ["Sher"] = "ps-ser", ["Shirazi"] = "fay-shr", ["Shuadit"] = "oc-jud", ["Silesian East Central German"] = "sli", ["Singapore Hokkien"] = "nan-hbl-SG", ["Singapore Mandarin"] = "cmn-SG", ["Sixian Hakka"] = "hak-six", ["Soi"] = "soj", ["Sorkhi"] = "fay-sor", ["South African English"] = "en-ZA", ["South Karelian"] = "krl-sou", ["Southeastern Pashto"] = "ps-sea", ["Southern Balochi"] = "bcc", ["Southern Malaysian Hokkien"] = "nan-spm", ["Southern Middle English"] = "enm-sou", ["Southern Scots"] = "sco-sou", ["Southern Talysh"] = "tly-sou", ["Southern Tati"] = "xme-ttc-sou", ["Southwestern Mandarin"] = "cmn-sow", ["Southwestern Pashto"] = "ps-swe", ["Standard Babylonian"] = "akk-stb", ["Stellingwerfs"] = "stl", ["Suevic"] = "gem-sue", ["Sukhothai Old Thai"] = "th-suk", ["Suzhounese"] = "wuu-suz", ["Swiss French"] = "fr-CH", ["Switzerland German"] = "de-CH", ["Switzerland Italian"] = "it-CH", ["Taiwanese Hakka"] = "hak-TW", ["Taiwanese Hokkien"] = "nan-hbl-TW", ["Taiwanese Mandarin"] = "cmn-TW", ["Takestani"] = "tks-tak", ["Takka Apabhramsa"] = "inc-ata", ["Taleshdulabi"] = "tly-tal", ["Tamahaq"] = "thv", ["Tamasheq"] = "taq", ["Tarehi"] = "xme-trh", ["Tari"] = "xme-tar", ["ထာဝါလပ်မေတ်"] = "ttq", ["ထေယျုက်"] = "thz", ["Thessalian Greek"] = "grc-ths", ["Tianjin Mandarin"] = "cmn-tia", ["Tong'an Hokkien"] = "nan-ton", ["Tongyong Pinyin"] = "cmn-tongyong", ["Torlakian Serbo-Croatian"] = "sh-tor", ["Tosk Albanian"] = "als", ["Traditional Chinese poetry"] = "lzh-shi", ["Transalpine Gaulish"] = "xtg", ["Tseku"] = "tsk", ["Tularudi"] = "tly-tul", ["Twents"] = "twd", ["Twi Akan"] = "tw", ["Ukrainian Church Slavonic"] = "zls-chs-uk", ["Ulster English"] = "en-uls", ["Ulster Scots"] = "sco-uls", ["United States Spanish"] = "es-US", ["Upper Saxon German"] = "sxu", ["Vafsi"] = "vaf", ["Valencian"] = "ca-val", ["Valujerdi"] = "xme-val", ["Varani"] = "xme-var", ["Varzenehi"] = "xme-vrz", ["Vedic Sanskrit"] = "vsn", ["Veluws"] = "vel", ["Venezuelan Spanish"] = "es-VE", ["Viennese German"] = "de-AT-vie", ["Vietnamese Classical Chinese"] = "lzh-VI", ["Viryal Chuvash"] = "cv-vir", ["Vivaro-Alpine"] = "oc-viv", ["Volga Bulgar"] = "xbo-vol", ["Vonishuni"] = "xme-von", ["Vracada Apabhramsa"] = "inc-avr", ["Vulgar Latin"] = "la-vul", ["Waata"] = "ssn", ["Wade–Giles"] = "cmn-wadegiles", ["Walser German"] = "wae", ["Waziri"] = "ps-waz", ["Welsh English"] = "en-GB-WLS", ["Wenzhounese"] = "wuu-wen", ["West Midland Middle English"] = "enm-wmi", ["West Saxon Old English"] = "ang-wsx", ["Western Balochi"] = "bgn", ["Western Mansi"] = "mns-wes", ["Western Niger Fulfulde"] = "fuh", ["Western Panjabi"] = "pnb", ["Western Tati"] = "xme-ttc-wes", ["Westphalian"] = "wep", ["Written vernacular Cantonese"] = "yue-wvc", ["Written vernacular Mandarin"] = "cmn-wvc", ["Written vernacular Taishanese"] = "zhx-tai-wvc", ["Wuhan Mandarin"] = "cmn-wuh", ["Xiamen Hokkien"] = "nan-xia", ["Xining Mandarin"] = "cmn-xin", ["Yangzhou Mandarin"] = "cmn-yan", ["Yarandi"] = "xme-yar", ["Yazdi"] = "xme-yaz", ["Yongchun Hokkien"] = "nan-yon", ["Younger Avestan"] = "ae-yng", ["Yukjin Korean"] = "ko-yuk", ["Zarphatic"] = "zrp", ["Zefrehi"] = "xme-zef", ["Zhangping Hokkien"] = "nan-zhp", ["Zhangzhou Hokkien"] = "nan-zha", ["Zhao'an Hakka"] = "hak-zha", ["Zhao'an Hokkien"] = "nan-zho", ["Zhongshan Min"] = "zhx-zho", ["Zori"] = "xme-zor", ["Zoroastrian Dari"] = "gbz", ["taxonomic name"] = "mul-tax", ["the BMAC substrate"] = "qsb-bma", } a8ciyu7mjdjfkfr2h6q2b88zs4sq5ae မဝ်ဂျူ:Latn-Tfng-translit 828 66484 402268 86858 2026-10-01T05:58:11Z 咽頭べさ 33 402268 Scribunto text/plain local export = {} local tt = {} tt["Latn"] = { ["common"] = { ["'"] = "", ["a"] = "ⴰ", ["ā"] = "ⴰⴰ", ["b"] = "ⴱ", ["ḇ"] = "ⴲ", ["ǧ"] = "ⴵ", ["g"] = "ⴳ", ["d"] = "ⴷ", ["ḏ"] = "ⴸ", ["ḍ"] = "ⴹ", ["ḏ̣"] = "ⴺ", ["e"] = "ⴻ", ["f"] = "ⴼ", ["k"] = "ⴽ", ["h"] = "ⵀ", ["ḥ"] = "ⵃ", ["ɛ"] = "ⵄ", ["x"] = "ⵅ", ["q"] = "ⵇ", ["i"] = "ⵉ", ["j"] = "ⵊ", ["l"] = "ⵍ", ["m"] = "ⵎ", ["n"] = "ⵏ", ["p"] = "ⵒ", ["u"] = "ⵓ", ["r"] = "ⵔ", ["ř"] = "ⵔ", ["ṛ"] = "ⵕ", ["ɣ"] = "ⵖ", ["s"] = "ⵙ", ["ṣ"] = "ⵚ", ["t"] = "ⵜ", ["ṯ"] = "ⵝ", ["š"] = "ⵛ", ["c"] = "ⵛ", ["č"] = "ⵞ", ["ṭ"] = "ⵟ", ["v"] = "ⵠ", ["w"] = "ⵡ", ["y"] = "ⵢ", ["z"] = "ⵣ", ["ẓ"] = "ⵥ", ["o"] = "ⵧ", ["ʷ"] = "ⵯ", ["."] = "⵰", }, ["tmh"] = {["b"] = "ⵀ", ["w"] = "ⵓ"}, ["thv"] = {["b"] = "ⵀ", ["w"] = "ⵓ"}, ["taq"] = {["b"] = "ⵀ", ["w"] = "ⵓ"}, ["ttq"] = {["b"] = "ⵀ", ["w"] = "ⵓ"}, ["thz"] = {["b"] = "ⵀ", ["w"] = "wⵓ", ["ɣ"] = "ⵘ"} } function export.tr(text, lang, sc) if not sc then sc = require("Module:languages").getByCode(lang or "ber"):findBestScript(text):getCode() end if sc == "Latn" then text = mw.ustring.lower(text) if tt[sc][lang] then text = mw.ustring.gsub(text, '.', tt[sc][lang]) end text = mw.ustring.gsub(text, '.', tt[sc]["common"]) else text = nil end return text end return export o68f0gazfgid00ckdtxh94tlmrcsupv မဝ်ဂျူ:en-utilities 828 79704 402277 381149 2026-10-01T06:44:35Z 咽頭べさ 33 402277 Scribunto text/plain local export = {} local add_suffix -- Defined below. local find = string.find local is_regular_plural -- Defined below. local match = string.match local remove_possessive -- Defined below. local reverse = string.reverse local sub = string.sub local toNFD = mw.ustring.toNFD local ugsub = mw.ustring.gsub local ulower = mw.ustring.lower local umatch = mw.ustring.match local usub = mw.ustring.sub local uupper = mw.ustring.upper local vowels = "aæᴀᴁɐɑɒ@eᴇǝⱻəɛɘɜɞɤiıɪɨᵻoøœᴏɶɔᴐɵuᴜʉᵾɯꟺʊʋʌyʏ" local hyphens = "%-‐‑‒–—" --[==[ Loaders for objects, which load data (or some other object) into some variable, which can then be accessed as "foo or get_foo()", where the function get_foo sets the object to "foo" and then returns it. This ensures they are only loaded when needed, and avoids the need to check for the existence of the object each time, since once "foo" has been set, "get_foo" will not be called again.]==] local diacritics local function get_diacritics() diacritics, get_diacritics = mw.loadData("Module:headword/data").page.comb_chars.diacritics_all .. "+", nil return diacritics end -- Normalize a string, so that case and diacritics are ignored. By default, "gu" -- and "qu" are normalized to "g" and "q", because they behave like consonants -- under certain conditions (e.g. final "y" does not usually have the plural -- "ies" after a vowel, but it's regular for "quy" to become "quies". The flag -- `not_gu` prevents this happening to "gu", and is needed because terms ending -- "-guy" are almost always compounds of "guy" (→ "guys"). local function normalize(str, followed_by, not_gu) if not followed_by then followed_by = "" end str = ugsub(toNFD(str) .. followed_by, "([" .. (not_gu and "" or "Gg") .. "Qq])u([".. vowels .. "])", "%1%2") return ulower(ugsub(sub(str, 1, #str - #followed_by), diacritics or get_diacritics(), "")) end local function epenthetic_e_default(stem) return sub(stem, -1) ~= "e" end local function epenthetic_e_for_s(stem, term) -- If the stem is different, it must be from "y" → "i". if stem ~= term then return true end local final if match(stem, "^[^\128-\255]*$") then final = sub(stem, -1) else stem = ugsub(toNFD(stem), diacritics or get_diacritics(), "") final = usub(stem, -1) end -- Epenthetic "e" is added after a sibilant or sibilant-affricate. The vast -- majority of these are spelled "s", "x", "z", "ch" and "sh", but "dg" -- (→ "dge") and "ß" (→ "ss") can be found in obsolete spellings, "shh" in -- onomatopoeia, and "zh", "dj", "jj" (and more) in loanwords. return ( final == "g" and sub(stem, -2, -2) == "d" or final == "h" and match(stem, "[csz]h+$") or final == "j" and umatch(stem, "[^" .. vowels .. "]j$") or final == "s" or final == "u" and umatch(stem, "%f[%w']u$") or final == "x" or final == "z" or final == "ß" ) end function export.remove_possessive(stem) return match(stem, "^(.*)'s$") or match(stem, "^(.*s)'$") or stem end remove_possessive = export.remove_possessive local suffixes = {} suffixes["'s"] = { truncated = function(stem) return sub(stem, -1) == "s" and "'" or "'s" end, } suffixes["s.plural"] = { final_y_is_i = true, epenthetic_e = epenthetic_e_for_s, modifies_possessive = true, } suffixes["s.verb"] = { final_y_is_i = true, final_consonant_is_doubled = true, epenthetic_e = epenthetic_e_for_s } suffixes["ing"] = { final_consonant_is_doubled = true, remove_silent_e = true, } suffixes["d"] = { final_y_is_i = true, final_consonant_is_doubled = true, epenthetic_e = epenthetic_e_default, } suffixes["dst"] = suffixes["d"] suffixes["st.verb"] = suffixes["d"] suffixes["th"] = suffixes["d"] suffixes["n"] = { final_y_is_i = true, final_y_is_i_after_vowel = true, final_guy_is_gui = true, final_consonant_is_doubled = true, -- No epenthetic "e" after an "e", or an "i", "r" or "w" preceded by a vowel. epenthetic_e = function(stem) return not ( sub(stem, -1) == "e" or umatch(normalize(stem), "[" .. vowels .. "][irw]$") ) end, } suffixes["r"] = { final_y_is_i = true, final_ey_is_i = true, final_guy_is_gui = true, final_consonant_is_doubled = true, epenthetic_e = epenthetic_e_default } suffixes["st.superlative"] = suffixes["r"] -- Returns the stem used for suffixes that sometimes convert final "y" into "i", -- such as "-es" ("-ies"), e.g. "penny" → "penni" ("pennies"). If -- `final_ey_is_i` is true, final "ey" may also be converted, e.g. "plaguey" → -- "plagui"; this is needed for "-er" ("-ier") and "-est" ("-iest"). If `not_gu` -- is true, then normalize() will be called with the `not_gu` flag (see there -- for more info); this is true in most cases. local function convert_final_y_to_i(str, not_gu, final_ey_is_i, final_y_is_i_after_vowel) local final3 = usub(str, -3) -- Special case: treat "eey" as "ee" + "y" (e.g. "treey" → "treeiest"). -- "oey" and "uey" are usually vowel + "ey", but examples of "oe" + "y" and -- "ue" = "y" do also exist: compare "go" → "goey" → "goier" with "doe" → -- "doey" → "doeier"; "flu" → "fluey" → "fluiest" and "flue" → "fluey" → -- "flueiest" form a theoretically possible minimal pair. if final3 == "eey" then return sub(str, 1, -2) .. "i" end local final2 = usub(str, -2) -- If `final_ey_is_i` is true, treat final "-ey" can also be reduced. if final_ey_is_i and final2 == "ey" then -- Remove "ey" to get the base stem. local base_stem = sub(str, 1, -3) -- Special case: allow final "-ey" ("potato-ey" → "potato-iest"). if umatch(final3, "[" .. hyphens .. "]ey") then return base_stem .. "i" end -- Final "ey" becomes "i" iff the term is polysyllabic (e.g. not -- "grey"). "ey" is common if the base stem ends in a vowel ("echo → -- "echoey"), so the presence of a vowel anywhere in the base stem is -- sufficient to deem it polysyllabic. ("echoey" → "echo" → "echoiest", -- "beigey" → "beig" → "beigiest", but "grey" → "gr" → "greyest"). The -- first "y" in "-yey" can be treated as a vowel as long as it's -- preceded by something ("clayey" → "clay" → "clayiest", "cryey" → -- "cry" → "cryiest", but "*yey" → "*y" → "*yeyest"), so it needs to be -- treated as a special case. local normalized = normalize(base_stem, "ey") if sub(normalized, -1) == "y" then if umatch(normalized, "[%w@][yY]$") then return base_stem .. "i" end elseif umatch(normalized, "[" .. vowels .. "%d]%w*$") then return base_stem .. "i" end -- Special cases: -- Final "quy" ("soliloquy" → "soliloquies"). -- Final "guy" iff `not_gu` is false ("roguy" → "roguiest"). -- Final "y" after a vowel iff `final_y_is_i_after_vowel` is true ("slay" → -- "slain"). -- Final "-y" ("bro-y" → "bro-iest"), accounting for hyphen variation. elseif umatch(final2, "[" .. hyphens .. "]y") then -- Replace final "y" with "i". return sub(str, 1, -2) .. "i" -- Otherwise, final "y" becomes "i" iff it's not preceded by a vowel -- ("shy" → "shiest", "horsy" → "horsies", but "day" → "days", "coy" → -- "coyest"). else -- Remove "y" to get the base stem. local base_stem = sub(str, 1, -2) if umatch(normalize(base_stem, "y", not_gu), "[^%s%p" .. (final_y_is_i_after_vowel and "" or vowels) .. "]$") then return base_stem .. "i" end end return str end local function double_final_consonant(str, final) local initial = umatch(normalize(sub(str, 1, -2), final), "^.*%f[^%z%s" .. hyphens .. "…]([%l%p]*)[" .. vowels .. "]$") return initial and ( initial == "" or initial == "y" or match(initial, "^.[\128-\191]*$") and umatch(initial, "[^" .. vowels .. "]") or umatch(initial, "^[^" .. vowels .. "]*%f[^%l]$") ) and (str .. final) or str end local function remove_silent_e(str) local final2 = sub(str, -2) if final2 == "ie" then -- Replace "ie" with "y", unless it follows another "y" (e.g. -- "spulyie" → "spulyieing"). return ugsub(str, "([^yY%s%p])ie$", "%1y") end local base_stem = sub(str, 1, -2) -- Silent "e" occurs after "u" or a consonant (cluster) preceded by a vowel. return ( final2 == "ue" or umatch(normalize(base_stem, "e"), "[" .. vowels .. "][^" .. vowels .. "]+$") ) and base_stem or str end function export.add_suffix(term, suffix, pos) local data, possessive = suffixes[suffix] -- If modifies_possessive is set, check for and remove any possessive -- suffix, which will be re-added again at the end. if data.modifies_possessive then local new = remove_possessive(term) if new ~= term then term, possessive = new, true end end suffix = match(suffix, "^([^.]*)") local final, stem = sub(term, -1) -- Proper nouns don't have a final "y" changed to "i" (e.g. "the Gettys", -- "the public Ivys"). if data.final_y_is_i and final == "y" and pos ~= "proper noun" then stem = convert_final_y_to_i(term, not data.final_guy_is_gui, data.final_ey_is_i, data.final_y_is_i_after_vowel) elseif data.remove_silent_e and final == "e" then stem = remove_silent_e(term) else stem = term end local epenthetic_e = data.epenthetic_e if epenthetic_e and epenthetic_e(stem, term) then suffix = "e" .. suffix end if ( data.final_consonant_is_doubled and match(final, "^[bcdfgjklmnpqrstvz]$") and -- Only double regular consonants. umatch(suffix, "^[" .. vowels .. "]") ) then stem = double_final_consonant(term, final) end local truncated = data.truncated if truncated then suffix = truncated(stem) end local output = stem .. suffix -- Re-add the possessive suffix, if applicable. if possessive then output = add_suffix(output, "'s", pos) end return output end add_suffix = export.add_suffix --[==[ Pluralize a word in a smart fashion, according to normal English rules. # If the word ends in a consonant or "qu" + "-y", replace "-y" with "-ies". # If the word ends in "s", "x", "z", "ch", "sh" or "zh", add "-es". # Otherwise, add "-s". This handles links correctly: # If a piped link, change the second part appropriately. # If a non-piped link and rule #1 above applies, convert to a piped link with the second part containing the plural. # If a non-piped link and rules #2 or #3 above apply, add the plural outside the link. ]==] function export.pluralize(str) -- Treat as a link if a "[[" is present and the string ends with "]]". if not (find(str, "[[", 1, true) and sub(str, -2) == "]]") then return add_suffix(str, "s.plural") end -- Find the last "[[" (in case there is more than one) by reversing -- the string. local str_rev = reverse(str) local open = find(str_rev, "[[", 3, true) -- If the last "[[" is followed by a "]]" which isn't at the end, -- then the final "]]" is just plaintext (e.g. "[[foo]]bar]]"). local bad_close = find(str_rev, "]]", 3, true) -- Note: the bad "]]" will have a lower index than the last "[[" in -- the reversed string. if bad_close and bad_close < open then return add_suffix(str, "s.plural") end open = #str - open + 2 -- Get the target and display text by searching from just after "[[". local target, display = match(str, "([^|]*)|?(.*)%]%]$", open) display = add_suffix(display ~= "" and display or target, "s.plural") -- If the link target is a substring of the display text, then -- use a trail (e.g. "[[foo]]" → "[[foo]]s", since "foo" is a substring -- of "foos"). local index, trail = find(display, target, 1, true) if index == 1 then return sub(str, 1, open - 1) .. target .. "]]" .. sub(display, trail + 1) end -- Otherwise, return a piped link. return sub(str, 1, open - 1) .. target .. "|" .. display .. "]]" end --[==[ Returns true if `plural` is an expected, regular plural of `term`. The optional parameter `pos` can be used to specify the part of speech, which is necessary because proper nouns do not change a {"-y"} suffix to {"-ies"} (e.g. {"Abby"} → {"Abbys"}). By default, `pos` is set to {"noun"}. In addition to {"proper noun"}, it can also take the special value {"noun+"}, which means that the function will first attempt the check with the {"noun"} setting, and will then attempt it with the {"proper noun"} setting iff the term begins with a capital letter. ]==] function export.is_regular_plural(plural, term, pos) local init_plural, init_term, try_as_proper_noun = plural, term if pos == "noun+" then pos, try_as_proper_noun = "နာမ်", true end -- Ignore any final punctuation that occurs in both forms, which is common -- in abbreviations (e.g. "abbr." → "abbrs."). local final_punc = umatch(term, "%p*$") local final_punc_len = #final_punc if sub(plural, -final_punc_len) == final_punc then term = sub(term, 1, -final_punc_len - 1) plural = sub(plural, 1, -final_punc_len - 1) end if plural == add_suffix(term, "s.plural", pos) then return true end local final = sub(term, -1) if ( -- Doubled final consonants in "s" and "z". final == "s" and plural == term .. "ses" or -- e.g. "busses" final == "z" and plural == term .. "zes" or -- e.g. "quizzes" -- convert_final_y_to_i() without the `not_gu` flag set, to catch -- "-guy" → "-guies", but not "day" → "daies". final == "y" and plural == convert_final_y_to_i(term) .. "es" or -- Capitalized terms like "$DEITY" → "$DEITIES (should we treat this as regular?) final == "Y" and ulower(plural) == convert_final_y_to_i(ulower(term)) .. "es" ) then return true elseif try_as_proper_noun then local init = umatch(init_term, "^[^%w%s]*(%w)") return init and uupper(init) == init and ulower(init) ~= init and is_regular_plural(init_plural, init_term, "proper noun") or false end return false end is_regular_plural = export.is_regular_plural do local function do_singularize(str) local sing = match(str, "^(.-)ies$") if sing then return sing .. "y" end -- Handle cases like "[[parish]]es" return match(str, "^(.-[cs]h%]*)es$") or -- not -zhes -- Handle cases like "[[box]]es" match(str, "^(.-x%]*)es$") or -- not -ses or -zes -- Handle regular plurals match(str, "^(.-)s$") or -- Otherwise, return input str end local function collapse_link(link, linktext) if link == linktext then return "[[" .. link .. "]]" end return "[[" .. link .. "|" .. linktext .. "]]" end --[==[ Singularize a word in a smart fashion, according to normal English rules. Works analogously to {pluralize()}. '''NOTE''': This doesn't always work as well as {pluralize()}. Beware. It will mishandle cases like "passes" -> "passe", "eyries" -> "eyry". # If word ends in -ies, replace -ies with -y. # If the word ends in -xes, -shes, -ches, remove -es. [Does not affect -ses, cf. "houses", "impasses".] # Otherwise, remove -s. This handles links correctly: # If a piped link, change the second part appropriately. Collapse the link to a simple link if both parts end up the same. # If a non-piped link, singularize the link. # A link like "[[parish]]es" will be handled correctly because the code that checks for -shes etc. allows ] characters between the 'sh' etc. and final -es. ]==] function export.singularize(str) if type(str) == "table" then -- allow calling from a template str = str.args[1] end -- Check for a link. This pattern matches both piped and unpiped links. -- If the link is not piped, the second capture (linktext) will be empty. local beginning, link, linktext = match(str, "^(.*)%[%[([^|%]]+)%|?(.-)%]%]$") if not link then return do_singularize(str) elseif linktext ~= "" then return beginning .. collapse_link(link, do_singularize(linktext)) end return beginning .. "[[" .. do_singularize(link) .. "]]" end end --[==[ Return the appropriate indefinite article to prefix to `str`. Correctly handles links and capitalized text. Does not correctly handle words like [[union]], [[uniform]] and [[university]] that take "a" despite beginning with a 'u'. The returned article will have its first letter capitalized if `ucfirst` is specified, otherwise lowercase. ]==] function export.get_indefinite_article(str, ucfirst) str = str or "" -- If there's a link at the beginning, examine the first letter of the -- link text. This pattern matches both piped and unpiped links. -- If the link is not piped, the second capture (linktext) will be empty. local link, linktext = match(str, "^%[%[([^|%]]+)%|?(.-)%]%]") if match(link and (linktext ~= "" and linktext or link) or str, "^()[AEIOUaeiou]") then return ucfirst and "An" or "an" end return ucfirst and "A" or "a" end get_indefinite_article = export.get_indefinite_article --[==[ Prefix `text` with the appropriate indefinite article to prefix to `text`. Correctly handles links and capitalized text. Does not correctly handle words like [[union]], [[uniform]] and [[university]] that take "a" despite beginning with a 'u'. The returned article will have its first letter capitalized if `ucfirst` is specified, otherwise lowercase. ]==] function export.add_indefinite_article(text, ucfirst) return get_indefinite_article(text, ucfirst) .. " " .. text end export.vowels = vowels export.vowel = "[" .. vowels .. "]" return export ng10j0jex61jkqxjx29lqls371m39e4 မဝ်ဂျူ:ber-headword 828 117729 402252 381428 2026-10-01T05:26:35Z 咽頭べさ 33 402252 Scribunto text/plain local export = {} local pos_functions = {} local M = require("Module:module loader").init { require = { headword_utilities = "Module:headword utilities", languages = "Module:languages", scripts = "Module:scripts", links = "Module:links", en_utilities = "Module:en-utilities", latn_tfng_translit = "Module:Latn-Tfng-translit", shi_latn_arab_translit = "Module:shi-Latn-Arab-translit", rif_verb_form = "Module:rif-verb form", gho_verb_form = "Module:gho-verb form", }, } local force_cat = false local main_script = {tzm = "Tfng", zgh = "Tfng"} local auto_tifinagh = {rif = true, shi = true, sjs = true} local auto_arabic = {shi = true} local verb_form_modules = {rif = "rif_verb_form", gho = "gho_verb_form"} local valid_genders = {"m", "f", "mf", "mfbysense", "p", "?"} local gender_default = { nouns = "?", ["နာမ်မကိတ်ညဳ"] = "?", numerals = "?", pronouns = "?", ["နာမ်ထၜိုန်ပကောံ"] = "m", ["နာမ်ကိုန်ဨကဝုစ်"] = "f", } local pos_category_for = { ["နာမ်ထၜိုန်ပကောံ"] = "နာမ်", ["နာမ်ကိုန်ဨကဝုစ်"] = "နာမ်", } local function main_script_code(lang) local code = main_script[lang:getCode()] if code then return code end local script_codes = lang:getScriptCodes() for _, script_code in ipairs(script_codes) do if script_code == "Latn" then return script_code end end return script_codes[1] end local function validate_genders(data, genders, gender_type) data:validate_genders(genders, valid_genders, {gender_type = gender_type, no_augment = true}) end local function without_lang(frame) local args = {} for key, value in pairs(frame.args) do if key ~= "lang" then args[key] = value end end return { args = args, getParent = function() return frame:getParent() end, } end local function insert_spelling(data, terms, script_code, form) local sc = M.scripts.getByCode(script_code) local genders = {} for _, gender in ipairs(data.genders or {}) do table.insert(genders, gender.spec) end for _, termobj in ipairs(terms) do termobj.sc = sc termobj.accel = { form = form, lemma = data.pagename, pos = M.en_utilities.singularize(data.orig_poscat), target = termobj.term, gender = genders[1] and table.concat(genders, ",") or nil, } end data:insert_inflection(terms,"ခ္ဍံက်လိက်" .. sc:getCanonicalName()) end local function add_other_script_spellings(data, args) if data.sc:getCode() ~= "Latn" then return end local pagename = M.links.remove_links(data.pagename) if auto_tifinagh[data.langcode] and not args.notfng then insert_spelling(data, {{term = M.latn_tfng_translit.tr(pagename, data.langcode, "Latn")}}, "Tfng", "တဳဖှဳနာတ်ဂ်") end if auto_arabic[data.langcode] and not args.noarab then local terms = data:parse_inflection("ar") if not terms[1] then terms = {{term = M.shi_latn_arab_translit.tr(pagename, data.langcode, "Latn")}} end insert_spelling(data, terms, "Arab", "အာရဗဳ") end end function export.show(frame) local code = frame.args.lang or error("Specify the language code in lang=, e.g. {{#invoke:ber-headword|show|lang=rif}}") local props = { lang = M.languages.getByCode(code, "lang"), frame = without_lang(frame), pos_functions = pos_functions, include_tr = true, force_cat = force_cat, infls = { {"g", type = "လိၚ်ဂမၠိုၚ်", default = function(data) return gender_default[data.orig_poscat] end, validate = function(data, genders) validate_genders(data, genders) end, }, }, augment_params = function(data, params) if auto_tifinagh[code] then params.notfng = {type = "boolean"} end if auto_arabic[code] then params.noarab = {type = "boolean"} params.ar = true end local pos = pos_functions[data.orig_poscat] if pos and pos.augment_params then pos.augment_params(data, params) end end, augment_headdata = function(data) data.pos_category = pos_category_for[data.pos_category] or data.pos_category if data.var == nil and data.orig_poscat ~= "အက္ခရ်" then data.var = data.sc:getCode() ~= main_script_code(data.lang) end data.inflections.enable_auto_translit = data.sc:getCode() == "Tfng" end, } local headword = M.headword_utilities.process_headword(props) if props.definition then return headword .. "\n# " .. props.definition end return headword end pos_functions["head"] = { infls = function(data) local pos = pos_functions[data.orig_poscat] return pos and pos.infls or {} end, func = function(data, args) local pos = pos_functions[data.orig_poscat] if pos and pos.func then pos.func(data, args) end add_other_script_spellings(data, args) end, } local function form(param, label, default_gender) return {param, label = label, include_mods = {"g"}, process_after_parse = function(data, terms) for _, termobj in ipairs(terms) do if default_gender and not termobj.genders and termobj.term ~= "-" then termobj.genders = {{spec = default_gender}} end validate_genders(data, termobj.genders, param) end return terms end, } end local function annex_label(label) if type(label) == "function" then return function(data, terms) return label(data, terms) .. " ကဆံၚ်အလံၚ်ပရေၚ်မပံၚ်ကောံ" end end return label .. " ကဆံၚ်အလံၚ်ပရေၚ်မပံၚ်ကောံ" end local function annexed(param, label) return {form(param, label), form(param .. "ပံၚ်ကောံ", annex_label(label))} end local function plural(label) local infl = form("pl", label) local process_terms = infl.process_after_parse infl.process_after_parse = function(data, terms) if terms[1].term == "?" then if terms[2] then error("Can't specify explicit plurals along with '?' for unknown/uncertain plural") end -- data:insert_category("nouns with unknown or uncertain plurals") return nil, true end return process_terms(data, terms) end return {infl, form("ပရေၚ်စဳရေၚ်ပြုပြေၚ်လဝ်", annex_label(label))} end local function infl_list(items) local infls = {} for _, item in ipairs(items) do if type(item[1]) == "table" then for _, infl in ipairs(item) do table.insert(infls, infl) end else table.insert(infls, item) end end return infls end local annex = form("ပံၚ်ကောံ", "ကဆံၚ်အလံၚ်ပရေၚ်မပံၚ်ကောံ") local function noun_infls() return infl_list { annex, annexed("d", "ၜါလ္ပာ်"), plural("ကိုန်ဗဟုဝစ်"), annexed("dim", "လဟုတ်စှ်ေ"), annexed("aug", "ပရေၚ်မဖပေၚ်တိုန်"), annexed("f", "မညဳညတ်သၟတ်တးကဵုလိၚ်ဗြဴ"), annexed("m", "မညဳညတ်သၟတ်တးကဵုပုလ္လိၚ်"), } end pos_functions["နာမ်"] = { infls = noun_infls(), } pos_functions["နာမ်မကိတ်ညဳ"] = { infls = noun_infls(), } local function collective_singulative(label, cat, other_param, other_label, other_gender) return { infls = infl_list { {fixed_label = label, cat = cat}, form(other_param, other_label, other_gender), annex, plural("ကိုန်ဗဟုဝစ်"), annexed("dim", "လဟုတ်စှ်ေ"), }, } end pos_functions["နာမ်ထၜိုန်ပကောံ"] = collective_singulative("ထၜိုန်ပကောံ", "နာမ်ထၜိုန်ပကောံ", "sing", "နာမ်ကိုန်ဨကဝုစ်", "f") pos_functions["နာမ်ကိုန်ဨကဝုစ်"] = collective_singulative("ကိုန်ဨကဝုစ်", "နာမ်ကိုန်ဨကဝုစ်", "coll", "ထၜိုန်ပကောံ", "m") pos_functions["နာမဝိသေသန"] = { infls = infl_list { annex, annexed("f", "ဣတ္တိလိၚ်"), annexed("pl", "ကိုန်ဗဟုဝစ်ပုလ္လိၚ်"), annexed("fpl", "ကိုန်ဗဟုဝစ်ဣတ္တိလိၚ်"), annexed("cpl", "ကိုန်ဗဟုဝစ်သာမည"), annexed("dim", "လဟုတ်စှ်ေ"), }, } local function participle_plural_label(data) return data.langcode == "gho" and "ကိုန်ဗဟုဝစ်" or "ကိုန်ဗဟုဝစ်ပုလ္လိၚ်" end local function participles() return { infls = infl_list { annex, annexed("f", "ဣတ္တိလိၚ်"), annexed("pl", participle_plural_label), annexed("fpl", "ကိုန်ဗဟုဝစ်ဣတ္တိလိၚ်"), annexed("cpl", "ကိုန်ဗဟုဝစ်သာမည"), }, } end pos_functions["လုပ်ကၠောန်စွံလဝ်နကဵုမစိုပ်တရဴ"] = participles() pos_functions["လုပ်ကၠောန်စွံလဝ်နကဵုဟွံတဝ်စၞေဟ်"] = participles() pos_functions["ကြိယာဝိသေသန"] = { infls = infl_list { annex, form("d", "ၜါလ္ပာ်"), }, } pos_functions["ဂၞန်သၚ်္ချာ"] = { infls = infl_list { {cat = "ဂၞန်သၚ်္ချာအဓိက"}, annex, annexed("f", "ဣတ္တိလိၚ်"), plural("ကိုန်ဗဟုဝစ်"), }, } pos_functions["ပစ္စဲ"] = { infls = infl_list { annexed("f", "ဣတ္တိလိၚ်"), plural("ကိုန်ဗဟုဝစ်"), }, } pos_functions["ပစ္စဲ"] = { infls = infl_list { annex, annexed("f", "ဣတ္တိလိၚ်"), }, } pos_functions["သဗ္ဗနာမ်"] = { infls = infl_list { annex, plural("ကိုန်ဗဟုဝစ်"), annexed("f", "ဣတ္တိလိၚ်"), }, } pos_functions["ကြိယာ"] = { infls = { form("aorist", "ပရေၚ်အတိက်"), form("pret", "ကာလအတိက်"), form("negpret", "မကယျာန်ပါဲပရေၚ်ဟွံဍိုက်ပေၚ်"), form("cont", "မဟၟဲဍိုက်ပေၚ်"), form("vn", "နာမ်ပါၚ်တိုက်"), form("ap", "လုပ်ကၠောန်စွံလဝ်ဗွဲမပြဟ်"), form("pp", "လုပ်ကၠောန်စွံလဝ်ဟွံတဝ်စၞေဟ်"), }, } pos_functions["ဗီုပြၚ်ကြိယာ"] = { augment_params = function(data, params) if verb_form_modules[data.langcode] then params[2] = {sublist = "comma without whitespace"} for _, param in ipairs {"slots", "noslots", "conjid", "noconjid", "t"} do params[param] = true end end end, func = function(data, args) if args[2] then data.process_props.data.definition = M[verb_form_modules[data.langcode]].definition_line { pagename = data.pagename, lemmas = args[2], slots = args.slots, noslots = args.noslots, conjid = args.conjid, noconjid = args.noconjid, gloss = args.t, } end end, } return export i6uu8dtd11gqyya9fj0vv1w5x3dt278 402273 402252 2026-10-01T06:34:06Z 咽頭べさ 33 402273 Scribunto text/plain local export = {} local pos_functions = {} local M = require("Module:module loader").init { require = { headword_utilities = "Module:headword utilities", languages = "Module:languages", scripts = "Module:scripts", links = "Module:links", en_utilities = "Module:en-utilities", latn_tfng_translit = "Module:Latn-Tfng-translit", shi_latn_arab_translit = "Module:shi-Latn-Arab-translit", rif_verb_form = "Module:rif-verb form", gho_verb_form = "Module:gho-verb form", }, } local force_cat = false local main_script = {tzm = "Tfng", zgh = "Tfng"} local auto_tifinagh = {rif = true, shi = true, sjs = true} local auto_arabic = {shi = true} local verb_form_modules = {rif = "rif_verb_form", gho = "gho_verb_form"} local valid_genders = {"m", "f", "mf", "mfbysense", "p", "?"} local gender_default = { nouns = "?", ["နာမ်မကိတ်ညဳ"] = "?", numerals = "?", pronouns = "?", ["နာမ်ထၜိုန်ပကောံ"] = "m", ["နာမ်ကိုန်ဨကဝုစ်"] = "f", } local pos_category_for = { ["နာမ်ထၜိုန်ပကောံ"] = "နာမ်", ["နာမ်ကိုန်ဨကဝုစ်"] = "နာမ်", } local function main_script_code(lang) local code = main_script[lang:getCode()] if code then return code end local script_codes = lang:getScriptCodes() for _, script_code in ipairs(script_codes) do if script_code == "Latn" then return script_code end end return script_codes[1] end local function validate_genders(data, genders, gender_type) data:validate_genders(genders, valid_genders, {gender_type = gender_type, no_augment = true}) end local function without_lang(frame) local args = {} for key, value in pairs(frame.args) do if key ~= "lang" then args[key] = value end end return { args = args, getParent = function() return frame:getParent() end, } end local function insert_spelling(data, terms, script_code, form) local sc = M.scripts.getByCode(script_code) local genders = {} for _, gender in ipairs(data.genders or {}) do table.insert(genders, gender.spec) end for _, termobj in ipairs(terms) do termobj.sc = sc termobj.accel = { form = form, lemma = data.pagename, pos = M.en_utilities.singularize(data.orig_poscat), target = termobj.term, gender = genders[1] and table.concat(genders, ",") or nil, } end data:insert_inflection(terms,"ခ္ဍံက်လိက်" .. sc:getCanonicalName()) end local function add_other_script_spellings(data, args) if data.sc:getCode() ~= "Latn" then return end local pagename = M.links.remove_links(data.pagename) if auto_tifinagh[data.langcode] and not args.notfng then insert_spelling(data, {{term = M.latn_tfng_translit.tr(pagename, data.langcode, "Latn")}}, "Tfng", "တဳဖှဳနာတ်ဂ်") end if auto_arabic[data.langcode] and not args.noarab then local terms = data:parse_inflection("ar") if not terms[1] then terms = {{term = M.shi_latn_arab_translit.tr(pagename, data.langcode, "Latn")}} end insert_spelling(data, terms, "Arab", "အာရဗဳ") end end function export.show(frame) local code = frame.args.lang or error("Specify the language code in lang=, e.g. {{#invoke:ber-headword|show|lang=rif}}") local props = { lang = M.languages.getByCode(code, "lang"), frame = without_lang(frame), pos_functions = pos_functions, include_tr = true, force_cat = force_cat, infls = { {"g", type = "လိၚ်ဂမၠိုၚ်", default = function(data) return gender_default[data.orig_poscat] end, validate = function(data, genders) validate_genders(data, genders) end, }, }, augment_params = function(data, params) if auto_tifinagh[code] then params.notfng = {type = "boolean"} end if auto_arabic[code] then params.noarab = {type = "boolean"} params.ar = true end local pos = pos_functions[data.orig_poscat] if pos and pos.augment_params then pos.augment_params(data, params) end end, augment_headdata = function(data) data.pos_category = pos_category_for[data.pos_category] or data.pos_category if data.var == nil and data.orig_poscat ~= "အက္ခရ်" then data.var = data.sc:getCode() ~= main_script_code(data.lang) end data.inflections.enable_auto_translit = data.sc:getCode() == "Tfng" end, } local headword = M.headword_utilities.process_headword(props) if props.definition then return headword .. "\n# " .. props.definition end return headword end pos_functions["head"] = { infls = function(data) local pos = pos_functions[data.orig_poscat] return pos and pos.infls or {} end, func = function(data, args) local pos = pos_functions[data.orig_poscat] if pos and pos.func then pos.func(data, args) end add_other_script_spellings(data, args) end, } local function form(param, label, default_gender) return {param, label = label, include_mods = {"g"}, process_after_parse = function(data, terms) for _, termobj in ipairs(terms) do if default_gender and not termobj.genders and termobj.term ~= "-" then termobj.genders = {{spec = default_gender}} end validate_genders(data, termobj.genders, param) end return terms end, } end local function annex_label(label) if type(label) == "function" then return function(data, terms) return label(data, terms) .. " ကဆံၚ်အလံၚ်ပရေၚ်မပံၚ်ကောံ" end end return label .. " ကဆံၚ်အလံၚ်ပရေၚ်မပံၚ်ကောံ" end local function annexed(param, label) return {form(param, label), form(param .. "annex", annex_label(label))} end local function plural(label) local infl = form("pl", label) local process_terms = infl.process_after_parse infl.process_after_parse = function(data, terms) if terms[1].term == "?" then if terms[2] then error("Can't specify explicit plurals along with '?' for unknown/uncertain plural") end -- data:insert_category("nouns with unknown or uncertain plurals") return nil, true end return process_terms(data, terms) end return {infl, form("ပရေၚ်စဳရေၚ်ပြုပြေၚ်လဝ်", annex_label(label))} end local function infl_list(items) local infls = {} for _, item in ipairs(items) do if type(item[1]) == "table" then for _, infl in ipairs(item) do table.insert(infls, infl) end else table.insert(infls, item) end end return infls end local annex = form("annex", "ကဆံၚ်အလံၚ်ပရေၚ်မပံၚ်ကောံ") local function noun_infls() return infl_list { annex, annexed("d", "ၜါလ္ပာ်"), plural("ကိုန်ဗဟုဝစ်"), annexed("dim", "လဟုတ်စှ်ေ"), annexed("aug", "ပရေၚ်မဖပေၚ်တိုန်"), annexed("f", "မညဳညတ်သၟတ်တးကဵုလိၚ်ဗြဴ"), annexed("m", "မညဳညတ်သၟတ်တးကဵုပုလ္လိၚ်"), } end pos_functions["နာမ်"] = { infls = noun_infls(), } pos_functions["နာမ်မကိတ်ညဳ"] = { infls = noun_infls(), } local function collective_singulative(label, cat, other_param, other_label, other_gender) return { infls = infl_list { {fixed_label = label, cat = cat}, form(other_param, other_label, other_gender), annex, plural("ကိုန်ဗဟုဝစ်"), annexed("dim", "လဟုတ်စှ်ေ"), }, } end pos_functions["နာမ်ထၜိုန်ပကောံ"] = collective_singulative("ထၜိုန်ပကောံ", "နာမ်ထၜိုန်ပကောံ", "sing", "နာမ်ကိုန်ဨကဝုစ်", "f") pos_functions["နာမ်ကိုန်ဨကဝုစ်"] = collective_singulative("ကိုန်ဨကဝုစ်", "နာမ်ကိုန်ဨကဝုစ်", "coll", "ထၜိုန်ပကောံ", "m") pos_functions["နာမဝိသေသန"] = { infls = infl_list { annex, annexed("f", "ဣတ္တိလိၚ်"), annexed("pl", "ကိုန်ဗဟုဝစ်ပုလ္လိၚ်"), annexed("fpl", "ကိုန်ဗဟုဝစ်ဣတ္တိလိၚ်"), annexed("cpl", "ကိုန်ဗဟုဝစ်သာမည"), annexed("dim", "လဟုတ်စှ်ေ"), }, } local function participle_plural_label(data) return data.langcode == "gho" and "ကိုန်ဗဟုဝစ်" or "ကိုန်ဗဟုဝစ်ပုလ္လိၚ်" end local function participles() return { infls = infl_list { annex, annexed("f", "ဣတ္တိလိၚ်"), annexed("pl", participle_plural_label), annexed("fpl", "ကိုန်ဗဟုဝစ်ဣတ္တိလိၚ်"), annexed("cpl", "ကိုန်ဗဟုဝစ်သာမည"), }, } end pos_functions["လုပ်ကၠောန်စွံလဝ်နကဵုမစိုပ်တရဴ"] = participles() pos_functions["လုပ်ကၠောန်စွံလဝ်နကဵုဟွံတဝ်စၞေဟ်"] = participles() pos_functions["ကြိယာဝိသေသန"] = { infls = infl_list { annex, form("d", "ၜါလ္ပာ်"), }, } pos_functions["ဂၞန်သၚ်္ချာ"] = { infls = infl_list { {cat = "ဂၞန်သၚ်္ချာအဓိက"}, annex, annexed("f", "ဣတ္တိလိၚ်"), plural("ကိုန်ဗဟုဝစ်"), }, } pos_functions["ပစ္စဲ"] = { infls = infl_list { annexed("f", "ဣတ္တိလိၚ်"), plural("ကိုန်ဗဟုဝစ်"), }, } pos_functions["ပစ္စဲ"] = { infls = infl_list { annex, annexed("f", "ဣတ္တိလိၚ်"), }, } pos_functions["သဗ္ဗနာမ်"] = { infls = infl_list { annex, plural("ကိုန်ဗဟုဝစ်"), annexed("f", "ဣတ္တိလိၚ်"), }, } pos_functions["ကြိယာ"] = { infls = { form("aorist", "ပရေၚ်အတိက်"), form("pret", "ကာလအတိက်"), form("negpret", "မကယျာန်ပါဲပရေၚ်ဟွံဍိုက်ပေၚ်"), form("cont", "မဟၟဲဍိုက်ပေၚ်"), form("vn", "နာမ်ပါၚ်တိုက်"), form("ap", "လုပ်ကၠောန်စွံလဝ်ဗွဲမပြဟ်"), form("pp", "လုပ်ကၠောန်စွံလဝ်ဟွံတဝ်စၞေဟ်"), }, } pos_functions["ဗီုပြၚ်ကြိယာ"] = { augment_params = function(data, params) if verb_form_modules[data.langcode] then params[2] = {sublist = "comma without whitespace"} for _, param in ipairs {"slots", "noslots", "conjid", "noconjid", "t"} do params[param] = true end end end, func = function(data, args) if args[2] then data.process_props.data.definition = M[verb_form_modules[data.langcode]].definition_line { pagename = data.pagename, lemmas = args[2], slots = args.slots, noslots = args.noslots, conjid = args.conjid, noconjid = args.noconjid, gloss = args.t, } end end, } return export dkwn3zacrnwn1nlktkx0uqgyg6sz9q6 မဝ်ဂျူ:labels/data/lang/shi 828 218158 402266 298450 2026-10-01T05:53:04Z 咽頭べさ 33 402266 Scribunto text/plain local labels = {} labels["Medieval"] = { aliases = {"shi-med", "Medieval Tashelhit"}, display = "တာသျာယ်ဟေတ်ခေတ်လဒေါဝ်", regional_categories = "တာသျာယ်ဟေတ်", } return require("Module:labels").finalize_data(labels) 7j7nci7uthvbnzot1n5sg0x022b88m7 မဝ်ဂျူ:labels/data/lang/tmh 828 218163 402259 298455 2026-10-01T05:43:05Z 咽頭べさ 33 402259 Scribunto text/plain local labels = {} labels["Tamahaq"] = { aliases = {"Tahaggart"}, Wikipedia = "Tamahaq language", regional_categories = true, } labels["Tamasheq"] = { aliases = {"Tamashek", "Tadghaq"}, Wikipedia = "Tamasheq language", regional_categories = true, } labels["Tayert"] = { aliases = {"Tayart", "Tayirt", "Air", "Air Tamajaq"}, Wikipedia = "Air Tamajeq language", regional_categories = true, } labels["Tawellemmet"] = { aliases = {"Tawallammat", "Iwellemmeden"}, Wikipedia = "en:Tawellemmet language", display = "ထာဝါလပ်မေတ်", regional_categories = "ထာဝါလပ်မေတ်", } labels["Ghat"] = { regional_categories = true, } return require("Module:labels").finalize_data(labels) fszch4khpve1cdbelithwn924sail28 402263 402259 2026-10-01T05:47:30Z 咽頭べさ 33 402263 Scribunto text/plain local labels = {} labels["Tamahaq"] = { aliases = {"Tahaggart"}, Wikipedia = "Tamahaq language", regional_categories = true, } labels["Tamasheq"] = { aliases = {"Tamashek", "Tadghaq"}, Wikipedia = "Tamasheq language", regional_categories = true, } labels["Tayert"] = { aliases = {"Tayart", "Tayirt", "Air", "Air Tamajaq"}, Wikipedia = "en:Air Tamajeq language", display = "ထေယျုက်", regional_categories = "ထေယျုက်", } labels["Tawellemmet"] = { aliases = {"Tawallammat", "Iwellemmeden"}, Wikipedia = "en:Tawellemmet language", display = "ထာဝါလပ်မေတ်", regional_categories = "ထာဝါလပ်မေတ်", } labels["Ghat"] = { regional_categories = true, } return require("Module:labels").finalize_data(labels) 4w9wiwji7uie5l2vjgswkc3szymbeyq ကဏ္ဍ:မဝ်ဂျူထေတ်သေရေတ်ဂမၠိုၚ် 14 299388 402253 2026-10-01T05:29:26Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်] » '''..." 402253 wikitext text/x-wiki [[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်] » '''မဝ်ဂျူဂမၠိုၚ်''' :[[:ကဏ္ဍ:မဝ်ဂျူဂမၠိုၚ်|မဝ်ဂျူ]]ဘာသာထေတ်သေရေတ်၊ မနွံကဵုလုပ်အဝေါၚ်ကုဒ် Lua နကဵုမကၠောန်ဗဒှ် ကဵု မစဳရေၚ်ယဵုဒုၚ်သ္ပမာန်ဂမၠိုၚ်။ [[ကဏ္ဍ:ဘာသာထေတ်သေရေတ်]][[ကဏ္ဍ:မဝ်ဂျူဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]] od00zt5p2luqik6up3w5yt9rgb2znk5 ကဏ္ဍ:ဘာသာထေတ်သေရေတ် 14 299389 402254 2026-10-01T05:30:20Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[ကဏ္ဍ:အရေဝ်ဘာသာ|ထ]][[ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|ထ]]" 402254 wikitext text/x-wiki [[ကဏ္ဍ:အရေဝ်ဘာသာ|ထ]][[ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|ထ]] p4n9dtk9uncqnyo75jtja2mkk8bmt55 afagan 0 299390 402255 2026-10-01T05:34:42Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "==ဂၠဳသဳယျာန်== ===ကြိယာ=== {{head|gl|verb form}} # {{gl-verb form of|afacer}} # {{gl-verb form of|afagar}} ==ထေတ်သေရေတ်== ===နိရုတ်=== ဝေါဟာကၠုၚ်နူ {{der|tez|shi-med|اڢچَن|tr=afgan}}၊ သီုကဵု {{bor|tez|thz,ttq|afăgan}}။ ===နာမ်=== {{tez-head|noun|g=m}} # ပူဂဵု၊ တြုံ။" 402255 wikitext text/x-wiki ==ဂၠဳသဳယျာန်== ===ကြိယာ=== {{head|gl|verb form}} # {{gl-verb form of|afacer}} # {{gl-verb form of|afagar}} ==ထေတ်သေရေတ်== ===နိရုတ်=== ဝေါဟာကၠုၚ်နူ {{der|tez|shi-med|اڢچَن|tr=afgan}}၊ သီုကဵု {{bor|tez|thz,ttq|afăgan}}။ ===နာမ်=== {{tez-head|noun|g=m}} # ပူဂဵု၊ တြုံ။ 43qxk6jqrp94ra5dws1b25rd8gjpn7o ထာမ်ပလိက်:tez-head 10 299391 402267 2026-10-01T05:54:35Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "{{#invoke:ber-headword|show|lang=tez}}<!-- --><noinclude>{{documentation}}</noinclude>" 402267 wikitext text/x-wiki {{#invoke:ber-headword|show|lang=tez}}<!-- --><noinclude>{{documentation}}</noinclude> h1t9qm2pk3oh8jwrbptjxpp7qkc4y0t မဝ်ဂျူ:rif-verb form 828 299392 402269 2026-10-01T06:00:25Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "-- Based on ar-inflections by Ben Wing local export = {} local M = require("Module:module loader").init({ require = { template_parser = "Module:template parser", rif_conj = "Module:rif-conj", ber_headword = "Module:ber-headword", form_of = "Module:form of", languages = "Module:languages", }, }) local lang_code = "rif" local lang_obj local function get_lang() if not lang_obj then lang_obj = M.language..." 402269 Scribunto text/plain -- Based on ar-inflections by Ben Wing local export = {} local M = require("Module:module loader").init({ require = { template_parser = "Module:template parser", rif_conj = "Module:rif-conj", ber_headword = "Module:ber-headword", form_of = "Module:form of", languages = "Module:languages", }, }) local lang_code = "rif" local lang_obj local function get_lang() if not lang_obj then lang_obj = M.languages.getByCode(lang_code) end return lang_obj end local all_slots = {} local slot_tags = {} for _, pair in ipairs(M.rif_conj.slot_list) do local slot, accel = pair[1], pair[2] table.insert(all_slots, slot) local tags = {} for tag in accel:gmatch("[^|]+") do table.insert(tags, tag) end slot_tags[slot] = tags end local function split_comma(s) if not s or s == "" then return nil end local t = {} for part in s:gmatch("[^,]+") do table.insert(t, (part:match("^%s*(.-)%s*$"))) end return t end local function list_to_set(list) if not list then return nil end local s = {} for _, v in ipairs(list) do s[v] = true end return s end local function find_conjugations(lemma, conjid, noconjid) local title = mw.title.new(lemma) if not title then return nil, "Bad lemma" end local content = title:getContent() if not content then return nil, "No content" end local found_conjs = {} for template in M.template_parser.find_templates(content) do if template:get_name() == "rif-conj" then local args = template:get_arguments() if not (conjid and args.id ~= conjid) and not (noconjid and args.id == noconjid) then table.insert(found_conjs, args) end end end if #found_conjs > 0 then return found_conjs, nil end return nil, "Could not find any rif-conj matching id=" .. (conjid or "nil") end local function citation_lemma(data, conj_lemma) local from_forms = M.rif_conj.citation_lemma_from_forms(data.forms, data.aorist) if from_forms and from_forms ~= "" then return from_forms end return conj_lemma end local function build_inflection_line(matches, user_gloss) local by_lemma = {} local lemma_seen = {} for _, match in ipairs(matches) do local lf = citation_lemma(match.lemma, match.conj_lemma) if lf and lf ~= "" then local gloss = user_gloss if (not gloss or gloss == "") and match.lemma.t and match.lemma.t ~= "" then gloss = match.lemma.t end if not lemma_seen[lf] then table.insert(by_lemma, {lemma_form = lf, gloss = gloss, tag_sets = {}, tag_set_keys = {}}) lemma_seen[lf] = #by_lemma end local entry = by_lemma[lemma_seen[lf]] local key = table.concat(match.tags, "|") local found = false for _, k in ipairs(entry.tag_set_keys) do if k == key then found = true; break end end if not found then table.insert(entry.tag_sets, match.tags) table.insert(entry.tag_set_keys, key) end end end local lang = get_lang() local parts = {} for _, lem in ipairs(by_lemma) do local flat_tags = {} for i, tag_set in ipairs(lem.tag_sets) do if i > 1 then table.insert(flat_tags, ";") end for _, tag in ipairs(tag_set) do table.insert(flat_tags, tag) end end table.insert(parts, M.form_of.tagged_inflections({ lang = lang, tags = flat_tags, lemmas = { { lang = lang, term = lem.lemma_form } }, lemma_face = "term", t = (lem.gloss and lem.gloss ~= "") and lem.gloss or nil, })) end if #parts == 0 then return nil end return table.concat(parts, "\n# ") end local function definition(opts) local slot_filter = list_to_set(split_comma(opts.slots)) local slot_neg_filter = list_to_set(split_comma(opts.noslots)) local matches = {} for _, conj_lemma in ipairs(opts.lemmas) do local conj_args_list, err = find_conjugations(conj_lemma, opts.conjid, opts.noconjid) if err then error(err) end for _, conj_args in ipairs(conj_args_list) do local data = M.rif_conj.get_forms(M.rif_conj.process_conj_args(conj_args)) for _, slot in ipairs(all_slots) do if (not slot_filter or slot_filter[slot]) and (not slot_neg_filter or not slot_neg_filter[slot]) then for _, formobj in ipairs(data.forms[slot] or {}) do if formobj.form == opts.pagename then table.insert(matches, { tags = slot_tags[slot] or {slot}, lemma = data, conj_lemma = conj_lemma, }) end end end end end end if #matches == 0 then error("'" .. opts.pagename .. "' does not match any form of [[" .. table.concat(opts.lemmas, "]], [[") .. "]]") end return build_inflection_line(matches, opts.gloss) end function export.definition_line(opts) local lemmas = {} for index = 1, math.max(#opts.lemmas, 1) do local lemma = opts.lemmas[index] or "" if lemma == "" or lemma:sub(1, 1) == "+" then error("Give the lemmas comma-separated and without +, e.g. mɣar") end table.insert(lemmas, lemma) end return definition { pagename = opts.pagename, lemmas = lemmas, slots = opts.slots, noslots = opts.noslots, conjid = opts.conjid, noconjid = opts.noconjid, gloss = opts.gloss, } end function export.verb_form(frame) local pargs = {} for k, v in pairs(frame:getParent().args) do pargs[k] = v end for k, v in pairs(frame.args) do if pargs[k] == nil then pargs[k] = v end end local is_template_example = mw.title.getCurrentTitle().fullText == "Template:rif-verb form" if is_template_example and (not pargs[1] or pargs[1] == "") then pargs[1] = "+mɣar" end local working_pagename = is_template_example and "yemɣar" or pargs.pagename or mw.title.getCurrentTitle().text local arg1 = pargs[1] or "" if arg1:sub(1, 1) ~= "+" then error("Direct conjugation spec not yet supported; use +lemma syntax.") end local line = definition { pagename = working_pagename, lemmas = { arg1:sub(2) }, slots = pargs.slots, noslots = pargs.noslots, conjid = pargs.conjid, noconjid = pargs.noconjid, gloss = pargs.t or pargs.gloss, } local headword_line = M.ber_headword.show_impl("verb forms", lang_code, {}) return headword_line .. "\n" .. (line and ("# " .. line) or "") end return export njkk3orlzc83sd4yk4rm08ymky50e9b မဝ်ဂျူ:rif-conj 828 299393 402270 2026-10-01T06:15:32Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "local export = {} local M = require("Module:module loader").init({ require = { iut = "Module:inflection utilities", languages = "Module:languages", string_utilities = "Module:string utilities", parameters = "Module:parameters", JSON = "Module:JSON", inflection_table = "Module:inflection-table", }, lazy = { ustring = function() return mw.ustring end, }, }) local VOWEL_CHARS = "aeiu" local DENTAL_CHA..." 402270 Scribunto text/plain local export = {} local M = require("Module:module loader").init({ require = { iut = "Module:inflection utilities", languages = "Module:languages", string_utilities = "Module:string utilities", parameters = "Module:parameters", JSON = "Module:JSON", inflection_table = "Module:inflection-table", }, lazy = { ustring = function() return mw.ustring end, }, }) local VOWEL_CHARS = "aeiu" local DENTAL_CHARS = "tdṭḍ" local SIBILANT_CHARS = "szṣẓ" local function char_in_class(character_class, character) return character ~= nil and M.ustring.find(character_class, character, 1, true) ~= nil end local function split_into_characters(text) local result = {} for _, codepoint in ipairs({ M.ustring.codepoint(text, 1, M.ustring.len(text)) }) do table.insert(result, M.ustring.char(codepoint)) end return result end local function is_vowel(character) return char_in_class(VOWEL_CHARS, character and M.ustring.lower(character)) end local function is_geminate(first, second) if not first or not second then return false end if first == second then return true end return (char_in_class(DENTAL_CHARS, first) and char_in_class(DENTAL_CHARS, second)) or (char_in_class(SIBILANT_CHARS, first) and char_in_class(SIBILANT_CHARS, second)) end local function strip_schwas(stem) local characters = split_into_characters(stem) local char_count = #characters local ends_with_e_between_consonants = (char_count >= 3 and characters[char_count - 2] == "e" and not is_vowel(characters[char_count - 1]) and not is_vowel(characters[char_count])) local result = {} for char_index, character in ipairs(characters) do local keep = false if character == "e" then if ends_with_e_between_consonants and char_index == char_count - 2 then keep = true elseif char_index > 1 and char_index < char_count then local char_before = characters[char_index - 1] local char_after = characters[char_index + 1] if not is_vowel(char_before) and not is_vowel(char_after) and (is_geminate(char_before, char_after) or char_after == "ǧ" or char_after == "č") then keep = true end end else keep = true end if keep then table.insert(result, character) end end local result_len = #result if result_len >= 4 then local first_pair_first = result[result_len - 3] local first_pair_second = result[result_len - 2] local second_pair_first = result[result_len - 1] local second_pair_second = result[result_len] if first_pair_first == second_pair_first and first_pair_second == second_pair_second and not is_vowel(first_pair_first) and not is_vowel(first_pair_second) then table.insert(result, result_len - 2, "e") end end return table.concat(result) end local function insert_schwas(word, protect_suffix_len, prefix_len) protect_suffix_len = protect_suffix_len or 0 prefix_len = prefix_len or 0 local characters = split_into_characters(word) local char_count = #characters local index = char_count - 1 while index >= 1 do local protected_from_index = char_count - protect_suffix_len + 1 if index >= protected_from_index then index = index - 1 else local char_at_index = characters[index] local char_after_index = characters[index + 1] if not is_vowel(char_at_index) and not is_vowel(char_after_index) then if char_after_index == "ʷ" then index = index - 1 elseif is_geminate(char_at_index, char_after_index) and index ~= prefix_len and index + 1 < protected_from_index then index = index - 1 elseif char_at_index == "r" and (not characters[index - 1] or characters[index - 1] ~= "r") and (index + 1 < protected_from_index) then index = index - 1 else local lookahead_index = index + 2 local next_is_geminate = false if lookahead_index <= char_count and is_geminate(char_after_index, characters[lookahead_index]) then next_is_geminate = true; lookahead_index = lookahead_index + 1 elseif char_after_index == "ǧ" or char_after_index == "č" then next_is_geminate = true end while lookahead_index <= char_count do if lookahead_index < char_count and characters[lookahead_index] and characters[lookahead_index + 1] and is_geminate(characters[lookahead_index], characters[lookahead_index + 1]) then lookahead_index = lookahead_index + 2 elseif characters[lookahead_index] == "ǧ" or characters[lookahead_index] == "č" then lookahead_index = lookahead_index + 1 elseif characters[lookahead_index] == "ʷ" then lookahead_index = lookahead_index + 1 else break end end local char_at_lookahead = characters[lookahead_index] local char_before_index = characters[index - 1] local creates_open_syllable = char_at_lookahead and is_vowel(char_at_lookahead) and not next_is_geminate local is_redup_echo = char_at_lookahead and (char_at_index == char_at_lookahead) and (index >= 3 and characters[index - 2] == char_after_index) if char_before_index and is_vowel(char_before_index) and (next_is_geminate or is_redup_echo) and (char_at_index ~= "ǧ" and char_at_index ~= "č") and (index + 1 < protected_from_index) then index = index - 1 elseif creates_open_syllable then index = index - 1 else table.insert(characters, index + 1, "e") char_count = char_count + 1; index = char_count - 1 end end else index = index - 1 end end end return table.concat(characters) end local function finalize(word, noglide) if M.ustring.len(word) > 1 and M.ustring.sub(word, 1, 1) == "e" then word = M.ustring.sub(word, 2) end if not noglide then local word_len = M.ustring.len(word) if word_len >= 2 then local last_two = M.ustring.sub(word, word_len - 1, word_len) if last_two == "ew" then return M.ustring.sub(word, 1, word_len - 2) .. "u" elseif last_two == "ey" then return M.ustring.sub(word, 1, word_len - 2) .. "i" end end end return word end local function expand_stem(stem, has_suffix) if M.ustring.find(stem, "i/a", 1, true) then if has_suffix then return (M.ustring.gsub(stem, "i/a", "i")) else return (M.ustring.gsub(stem, "i/a", "a")) end end return stem end local function final_schwa_glide(stem) local stem_len = M.ustring.len(stem) if stem_len < 2 then return nil end local last_char = M.ustring.sub(stem, stem_len, stem_len) local prev_char = M.ustring.sub(stem, stem_len - 1, stem_len - 1) if prev_char == "e" and (last_char == "w" or last_char == "y") then return last_char end return nil end local function vocalize_final_glide(word) local word_len = M.ustring.len(word) if word_len < 1 then return word end local last_char = M.ustring.sub(word, word_len, word_len) if last_char == "w" then return M.ustring.sub(word, 1, word_len - 1) .. "u" elseif last_char == "y" then return M.ustring.sub(word, 1, word_len - 1) .. "i" end return word end local slot_list = { { "aorist_sg1", "1|s|aor" }, { "aorist_sg2", "2|s|aor" }, { "aorist_sg3m", "3|m|s|aor" }, { "aorist_sg3f", "3|f|s|aor" }, { "aorist_pl1", "1|p|aor" }, { "aorist_pl2m", "2|m|p|aor" }, { "aorist_pl2f", "2|f|p|aor" }, { "aorist_pl3m", "3|m|p|aor" }, { "aorist_pl3f", "3|f|p|aor" }, { "aorist_participle", "aor|part" }, { "aorist_imp_sg", "s|aor|imp" }, { "aorist_imp_plm", "m|p|aor|imp" }, { "aorist_imp_plf", "f|p|aor|imp" }, { "perfective_sg1", "1|s|pfv" }, { "perfective_sg2", "2|s|pfv" }, { "perfective_sg3m", "3|m|s|pfv" }, { "perfective_sg3f", "3|f|s|pfv" }, { "perfective_pl1", "1|p|pfv" }, { "perfective_pl2m", "2|m|p|pfv" }, { "perfective_pl2f", "2|f|p|pfv" }, { "perfective_pl3m", "3|m|p|pfv" }, { "perfective_pl3f", "3|f|p|pfv" }, { "perfective_participle", "pfv|part" }, { "neg_perfective_sg1", "1|s|neg|pfv" }, { "neg_perfective_sg2", "2|s|neg|pfv" }, { "neg_perfective_sg3m", "3|m|s|neg|pfv" }, { "neg_perfective_sg3f", "3|f|s|neg|pfv" }, { "neg_perfective_pl1", "1|p|neg|pfv" }, { "neg_perfective_pl2m", "2|m|p|neg|pfv" }, { "neg_perfective_pl2f", "2|f|p|neg|pfv" }, { "neg_perfective_pl3m", "3|m|p|neg|pfv" }, { "neg_perfective_pl3f", "3|f|p|neg|pfv" }, { "neg_perfective_participle", "neg|pfv|part" }, { "imperfective_sg1", "1|s|impfv" }, { "imperfective_sg2", "2|s|impfv" }, { "imperfective_sg3m", "3|m|s|impfv" }, { "imperfective_sg3f", "3|f|s|impfv" }, { "imperfective_pl1", "1|p|impfv" }, { "imperfective_pl2m", "2|m|p|impfv" }, { "imperfective_pl2f", "2|f|p|impfv" }, { "imperfective_pl3m", "3|m|p|impfv" }, { "imperfective_pl3f", "3|f|p|impfv" }, { "imperfective_participle", "impfv|part" }, { "imperfective_imp_sg", "s|impfv|imp" }, { "imperfective_imp_plm", "m|p|impfv|imp" }, { "imperfective_imp_plf", "f|p|impfv|imp" }, { "neg_imperfective_sg1", "1|s|neg|impfv" }, { "neg_imperfective_sg2", "2|s|neg|impfv" }, { "neg_imperfective_sg3m", "3|m|s|neg|impfv" }, { "neg_imperfective_sg3f", "3|f|s|neg|impfv" }, { "neg_imperfective_pl1", "1|p|neg|impfv" }, { "neg_imperfective_pl2m", "2|m|p|neg|impfv" }, { "neg_imperfective_pl2f", "2|f|p|neg|impfv" }, { "neg_imperfective_pl3m", "3|m|p|neg|impfv" }, { "neg_imperfective_pl3f", "3|f|p|neg|impfv" }, { "neg_imperfective_participle", "neg|impfv|part" }, { "inj_m", "m|inj" }, { "inj_f", "f|inj" }, } local conj_params = { [1] = { template_default = "mɣar" }, [2] = {}, [3] = {}, [4] = {}, [5] = {}, aorist = { alias_of = 1 }, perfective = { alias_of = 2 }, neg_perfective = { alias_of = 3 }, imperfective = { alias_of = 4 }, neg_imperfective = { alias_of = 5 }, aorist_imp = {}, imperfective_imp = {}, t = true, id = true, pagename = true, noglide = { type = "boolean" }, json = { type = "boolean" }, } function export.process_conj_args(args) return M.parameters.process(args, conj_params) end local person_affixes = { sg1 = { prefix = "", suffix = "ɣ" }, sg2 = { prefix = "t", suffix = "d" }, sg3m = { prefix = "y", suffix = "" }, sg3f = { prefix = "t", suffix = "" }, pl1 = { prefix = "n", suffix = "" }, pl2m = { prefix = "t", suffix = "m" }, pl2f = { prefix = "t", suffix = "nt" }, pl3m = { prefix = "", suffix = "n" }, pl3f = { prefix = "", suffix = "nt" }, } local function conjugate(stem, person_key, noglide) local person = person_affixes[person_key] stem = expand_stem(stem, M.ustring.len(person.suffix) > 0) if person_key == "sg1" or person_key == "sg2" then local stem_len = M.ustring.len(stem) if M.ustring.sub(stem, stem_len, stem_len) == "a" then stem = M.ustring.sub(stem, 1, stem_len - 1) .. "i" end end local final_glide = final_schwa_glide(stem) local skeleton = strip_schwas(stem) local prefix = person.prefix local suffix = person.suffix local suffix_len = M.ustring.len(suffix) local prefix_len = M.ustring.len(prefix) local stem_chars = split_into_characters(stem) local stem_char_count = #stem_chars local ends_with_e_between_consonants = (stem_char_count >= 3 and stem_chars[stem_char_count - 2] == "e" and not is_vowel(stem_chars[stem_char_count - 1]) and not is_vowel(stem_chars[stem_char_count])) local protect_suffix_len = suffix_len if ends_with_e_between_consonants and suffix_len == 0 then protect_suffix_len = 2 end local prefixed_form = prefix .. skeleton .. suffix local with_schwas = insert_schwas(prefixed_form, protect_suffix_len, prefix_len) if person.prefix == "y" then local after_prefix = M.ustring.sub(with_schwas, prefix_len + 1) if M.ustring.len(after_prefix) > 0 then local after_prefix_chars = split_into_characters(after_prefix) if not is_vowel(after_prefix_chars[1]) then with_schwas = "i" .. after_prefix end end end local result = finalize(with_schwas, noglide) if final_glide and suffix == "" and not noglide then result = vocalize_final_glide(result) end return result end local function participle(stem, noglide) stem = expand_stem(stem, true) local skeleton = strip_schwas(stem) local participle_form = "y" .. skeleton .. "n" local with_schwas = insert_schwas(participle_form, 1, 1) if M.ustring.sub(with_schwas, 1, 1) == "y" then local after_prefix = M.ustring.sub(with_schwas, 2) if M.ustring.len(after_prefix) > 0 then local after_prefix_chars = split_into_characters(after_prefix) if not is_vowel(after_prefix_chars[1]) then with_schwas = "i" .. after_prefix end end end return finalize(with_schwas, noglide) end local function imperative_singular(stem, noglide) local final_glide = final_schwa_glide(stem) stem = expand_stem(stem, false) local skeleton = strip_schwas(stem) local stem_chars = split_into_characters(stem) local stem_char_count = #stem_chars local ends_with_e_between_consonants = (stem_char_count >= 3 and stem_chars[stem_char_count - 2] == "e" and not is_vowel(stem_chars[stem_char_count - 1]) and not is_vowel(stem_chars[stem_char_count])) local protect_suffix_len = ends_with_e_between_consonants and 2 or 0 local result = finalize(insert_schwas(skeleton, protect_suffix_len, 0), noglide) if final_glide and not noglide then result = vocalize_final_glide(result) end return result end local function imperative_plural_masculine(stem, noglide) stem = expand_stem(stem, true) local skeleton = strip_schwas(stem) return finalize(insert_schwas(skeleton .. "t", 1, 0), noglide), finalize(insert_schwas(skeleton .. "m", 1, 0), noglide) end local function imperative_plural_feminine(stem, noglide) stem = expand_stem(stem, true) local skeleton = strip_schwas(stem) return finalize(insert_schwas(skeleton .. "nt", 2, 0), noglide) end local function injunctive(stem, noglide) stem = expand_stem(stem, true) local skeleton = strip_schwas(stem) return finalize(insert_schwas("n" .. skeleton .. "t", 1, 1), noglide), finalize(insert_schwas("n" .. skeleton .. "nt", 2, 1), noglide) end function export.citation_lemma_from_forms(forms, fallback) if fallback and fallback ~= "" then return fallback end end function export.get_forms(args) local aorist_stem = args[1] or "" local perfective_stem = args[2] or "" local neg_perfective_stem = args[3] or "" local imperfective_stem = args[4] or "" local neg_imperfective_stem = args[5] or "" local aorist_imp_stem = args.aorist_imp or "" local imperfective_imp_stem = args.imperfective_imp or "" local noglide = args.noglide local stems = { { name = "aorist", stem = aorist_stem }, { name = "perfective", stem = perfective_stem }, { name = "neg_perfective", stem = neg_perfective_stem }, { name = "imperfective", stem = imperfective_stem }, { name = "neg_imperfective", stem = neg_imperfective_stem }, } local person_keys = { "sg1", "sg2", "sg3m", "sg3f", "pl1", "pl2m", "pl2f", "pl3m", "pl3f" } local forms = {} for _, stem_entry in ipairs(stems) do if stem_entry.stem ~= "" then for _, person_key in ipairs(person_keys) do M.iut.insert_form(forms, stem_entry.name .. "_" .. person_key, { form = conjugate(stem_entry.stem, person_key, noglide) }) end M.iut.insert_form(forms, stem_entry.name .. "_participle", { form = participle(stem_entry.stem, noglide) }) end end for _, aspect_name in ipairs({ "aorist", "imperfective" }) do local stem = (aspect_name == "aorist") and aorist_stem or imperfective_stem local imp_stem = stem local skip_imperative = false if aspect_name == "aorist" then if aorist_imp_stem == "-" then skip_imperative = true elseif aorist_imp_stem ~= "" then imp_stem = aorist_imp_stem end else if imperfective_imp_stem == "-" then skip_imperative = true elseif imperfective_imp_stem ~= "" then imp_stem = imperfective_imp_stem end end if stem ~= "" then if not skip_imperative then M.iut.insert_form(forms, aspect_name .. "_imp_sg", { form = imperative_singular(imp_stem, noglide) }) local imp_pl_masc_first, imp_pl_masc_second = imperative_plural_masculine(imp_stem, noglide) local imp_pl_masc_slot = aspect_name .. "_imp_plm" M.iut.insert_form(forms, imp_pl_masc_slot, { form = imp_pl_masc_second }) M.iut.insert_form(forms, imp_pl_masc_slot, { form = imp_pl_masc_first }) M.iut.insert_form(forms, aspect_name .. "_imp_plf", { form = imperative_plural_feminine(imp_stem, noglide) }) end if aspect_name == "aorist" then local injunctive_masc, injunctive_fem = injunctive(stem, noglide) M.iut.insert_form(forms, "inj_m", { form = injunctive_masc }) M.iut.insert_form(forms, "inj_f", { form = injunctive_fem }) end end end return { aorist = aorist_stem, lemma = export.citation_lemma_from_forms(forms, aorist_stem), id = args.id, t = args.t, forms = forms, } end local function get_accel_lemma_form(forms, args) return export.citation_lemma_from_forms(forms, args.pagename or mw.title.getCurrentTitle().text) or args.pagename or mw.title.getCurrentTitle().text end local function show_conjugation_forms(forms, args) local lang = M.languages.getByCode("rif") local pagename = args.pagename or mw.title.getCurrentTitle().text local lemma_form = get_accel_lemma_form(forms, args) local verb_accel_spec = "verb-form-+" .. pagename M.iut.show_forms(forms, { lang = lang, lemmas = { { form = lemma_form } }, slot_list = slot_list, transform_accel_obj = function(_slot, _form_object, accel_object) if accel_object then accel_object.form = verb_accel_spec end return accel_object end, }) end -- Make the conjugation table. Called from export.show(). local function make_table(forms) local frame = mw.getCurrentFrame() local function table_top() return M.inflection_table.make_top{ title = "-", palette = "red", } end local function table_bottom() return M.inflection_table.make_bottom{} end local participle_rows = [=[ ! colspan="2" class="outer" | ! class="outer" | အဝ်ရေတ် ! class="outer" | မဍိုက်ပေၚ် ! class="outer" | ကယျာန်ပါဲမဍိုက်ပေၚ် ! class="outer" | မဍိုက်ပေၚ် ! class="outer" | ကယျာန်ပါဲဟွံဍိုက်ပေၚ် |- ! colspan="2" class="outer" | လုပ်ကၠောန်စွံလဝ် | {aorist_participle} | {perfective_participle} | {neg_perfective_participle} | {imperfective_participle} | {neg_imperfective_participle} ]=] local main_rows = [=[ |- ! colspan="2" class="outer" | ! colspan="3" class="outer" | ကိုန်ဨကဝုစ် ! class="separator" rowspan="999" | ! colspan="3" class="outer" | ကိုန်ဗဟုဝစ် |- ! colspan="2" class="outer" | ! 1<sup>st</sup> person ! 2<sup>nd</sup> person ! 3<sup>rd</sup> person ! 1<sup>st</sup> person ! 2<sup>nd</sup> person ! 3<sup>rd</sup> person |- ! rowspan="2" class="outer" | အဝ်ရေတ် ! {\op}{\op}g|m{\cl}{\cl} | rowspan="2" | {aorist_sg1} | rowspan="2" | {aorist_sg2} | {aorist_sg3m} | rowspan="2" | {aorist_pl1} | {aorist_pl2m} | {aorist_pl3m} |- ! {\op}{\op}g|f{\cl}{\cl} | {aorist_sg3f} | {aorist_pl2f} | {aorist_pl3f} |- ! rowspan="2" class="outer" | မဍိုက်ပေၚ် ! {\op}{\op}g|m{\cl}{\cl} | rowspan="2" | {perfective_sg1} | rowspan="2" | {perfective_sg2} | {perfective_sg3m} | rowspan="2" | {perfective_pl1} | {perfective_pl2m} | {perfective_pl3m} |- ! {\op}{\op}g|f{\cl}{\cl} | {perfective_sg3f} | {perfective_pl2f} | {perfective_pl3f} |- ! rowspan="2" class="outer" | ကယျာန်ပါဲမဍိုက်ပေၚ် ! {\op}{\op}g|m{\cl}{\cl} | rowspan="2" | {neg_perfective_sg1} | rowspan="2" | {neg_perfective_sg2} | {neg_perfective_sg3m} | rowspan="2" | {neg_perfective_pl1} | {neg_perfective_pl2m} | {neg_perfective_pl3m} |- ! {\op}{\op}g|f{\cl}{\cl} | {neg_perfective_sg3f} | {neg_perfective_pl2f} | {neg_perfective_pl3f} |- ! rowspan="2" class="outer" | ဟွံဍိုက်ပေၚ် ! {\op}{\op}g|m{\cl}{\cl} | rowspan="2" | {imperfective_sg1} | rowspan="2" | {imperfective_sg2} | {imperfective_sg3m} | rowspan="2" | {imperfective_pl1} | {imperfective_pl2m} | {imperfective_pl3m} |- ! {\op}{\op}g|f{\cl}{\cl} | {imperfective_sg3f} | {imperfective_pl2f} | {imperfective_pl3f} |- ! rowspan="2" class="outer" | ကယျာန်ပါဲဟွံဍိုက်ပေၚ် ! {\op}{\op}g|m{\cl}{\cl} | rowspan="2" | {neg_imperfective_sg1} | rowspan="2" | {neg_imperfective_sg2} | {neg_imperfective_sg3m} | rowspan="2" | {neg_imperfective_pl1} | {neg_imperfective_pl2m} | {neg_imperfective_pl3m} |- ! {\op}{\op}g|f{\cl}{\cl} | {neg_imperfective_sg3f} | {neg_imperfective_pl2f} | {neg_imperfective_pl3f} |- ! class="separator" colspan="999" | |- ! rowspan="2" class="outer" | အဝ်ရေတ်အပ္ဍဲအသံ ! {\op}{\op}g|m{\cl}{\cl} | class="secondary" rowspan="2" | | rowspan="2" | {aorist_imp_sg} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | {aorist_imp_plm} | class="secondary" rowspan="2" | |- ! {\op}{\op}g|f{\cl}{\cl} | {aorist_imp_plf} |- ! rowspan="2" class="outer" | ပရေၚ်အသံဆက်တုဲဆက်ပၠန် ! {\op}{\op}g|m{\cl}{\cl} | class="secondary" rowspan="2" | | rowspan="2" | {imperfective_imp_sg} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | {imperfective_imp_plm} | class="secondary" rowspan="2" | |- ! {\op}{\op}g|f{\cl}{\cl} | {imperfective_imp_plf} |- ! class="separator" colspan="999" | |- ! rowspan="2" class="outer" | ပရေၚ်အသံ ! {\op}{\op}g|m{\cl}{\cl} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | {inj_m} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | |- ! {\op}{\op}g|f{\cl}{\cl} | {inj_f} ]=] return table_top() .. M.string_utilities.format(participle_rows, forms) .. table_bottom() .. table_top() .. M.string_utilities.format(main_rows, forms) .. table_bottom() end -- Entry point for {{rif-conj}}. Template-callable function to conjugate a verb and -- generate a displayable table, or JSON when |json=1| (for bot use). function export.show(frame) local parent_args = frame:getParent().args if parent_args[1] == nil and frame.args[1] ~= nil then parent_args = frame.args end local args = export.process_conj_args(parent_args) local data = export.get_forms(args) if args.json then return M.JSON.toJSON(data) end show_conjugation_forms(data.forms, args) return frame:preprocess( "{{inflection-box-top|title=သမ္ဗန္ဓဆေၚ်စပ်ကဵု {{m-self|rif|{{PAGENAME}}}}|flow=vertical|category=conjugation}}\n" .. make_table(data.forms) .. "\n{{inflection-box-bottom}}" ) end export.slot_list = slot_list return export ffct3t87pietx57dunn1c5efg54ngj0 မဝ်ဂျူ:gho-verb form 828 299394 402271 2026-10-01T06:17:17Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "local export = {} local M = require("Module:module loader").init({ require = { template_parser = "Module:template parser", gho_conj = "Module:gho-conj", form_of = "Module:form of", ber_headword = "Module:ber-headword", languages = "Module:languages", }, }) local lang_code = "gho" local lang_obj local function get_lang() if not lang_obj then lang_obj = M.languages.getByCode(lan..." 402271 Scribunto text/plain local export = {} local M = require("Module:module loader").init({ require = { template_parser = "Module:template parser", gho_conj = "Module:gho-conj", form_of = "Module:form of", ber_headword = "Module:ber-headword", languages = "Module:languages", }, }) local lang_code = "gho" local lang_obj local function get_lang() if not lang_obj then lang_obj = M.languages.getByCode(lang_code) end return lang_obj end local conj_template = "gho-conj" local slot_tags_cache = setmetatable({}, { __mode = "k" }) local function slot_tags_for(slot_list) local cached = slot_tags_cache[slot_list] if cached then return cached end local slot_tags = {} for _, pair in ipairs(slot_list) do local tags = {} for tag in pair[2]:gmatch("[^|]+") do table.insert(tags, tag) end slot_tags[pair[1]] = tags end slot_tags_cache[slot_list] = slot_tags return slot_tags end local function split_comma(text) if not text or text == "" then return nil end local list = {} for part in text:gmatch("[^,]+") do table.insert(list, (part:match("^%s*(.-)%s*$"))) end return list end local function list_to_set(list) if not list then return nil end local set = {} for _, value in ipairs(list) do set[value] = true end return set end local function find_conjugations(lemma, conjid, noconjid) local title = mw.title.new(lemma) if not title then return nil, "Bad lemma" end local content = title:getContent() if not content then return nil, ("[[%s]] has no content"):format(lemma) end local found = {} for template in M.template_parser.find_templates(content) do if template:get_name() == conj_template then local args = template:get_arguments() if not (conjid and args.id ~= conjid) and not (noconjid and args.id == noconjid) then args.pagename = lemma table.insert(found, args) end end end if #found > 0 then return found, nil end return nil, ("Could not find any {{%s}} on [[%s]]%s") :format(conj_template, lemma, conjid and (" with id=" .. conjid) or "") end local function build_inflection_line(matches, user_gloss) local by_lemma, lemma_seen = {}, {} for _, match in ipairs(matches) do local lemma_form = match.lemma ~= "" and match.lemma or match.conj_lemma if lemma_form and lemma_form ~= "" then if not lemma_seen[lemma_form] then table.insert(by_lemma, { form = lemma_form, gloss = user_gloss or match.t, tag_sets = {}, seen = {} }) lemma_seen[lemma_form] = #by_lemma end local entry = by_lemma[lemma_seen[lemma_form]] local key = table.concat(match.tags, "|") if not entry.seen[key] then entry.seen[key] = true table.insert(entry.tag_sets, match.tags) end end end local lang = get_lang() local parts = {} for _, entry in ipairs(by_lemma) do local tags = {} for i, tag_set in ipairs(entry.tag_sets) do if i > 1 then table.insert(tags, ";") end for _, tag in ipairs(tag_set) do table.insert(tags, tag) end end table.insert(parts, M.form_of.tagged_inflections({ lang = lang, tags = tags, lemmas = { { lang = lang, term = entry.form } }, lemma_face = "term", POS = "verb", t = (entry.gloss and entry.gloss ~= "") and entry.gloss or nil, })) end if #parts == 0 then return nil end return table.concat(parts, "\n# ") end local function definition(opts) local only = list_to_set(split_comma(opts.slots)) local avoid = list_to_set(split_comma(opts.noslots)) local matches = {} local conjugations = {} for _, conj_lemma in ipairs(opts.lemmas) do local found, err = find_conjugations(conj_lemma, opts.conjid, opts.noconjid) if err then error(err) end for _, conj_args in ipairs(found) do table.insert(conjugations, { args = conj_args, lemma = conj_lemma }) end end for _, entry in ipairs(conjugations) do local conj_args, conj_lemma = entry.args, entry.lemma local data = M.gho_conj.get_forms(M.gho_conj.process_conj_args(conj_args)) local slot_tags = slot_tags_for(data.slot_list) for _, pair in ipairs(data.slot_list) do local slot = pair[1] if (not only or only[slot]) and not (avoid and avoid[slot]) then for _, formobj in ipairs(data.forms[slot] or {}) do if formobj.form == opts.pagename then table.insert(matches, { tags = slot_tags[slot] or { slot }, lemma = data.lemma or "", conj_lemma = conj_lemma, t = data.t, }) end end end end end if #matches == 0 then error(("'%s' is not a form of [[%s]]") :format(opts.pagename, table.concat(opts.lemmas, "]], [["))) end return build_inflection_line(matches, opts.gloss) end function export.definition_line(opts) local lemmas = {} for index = 1, math.max(#opts.lemmas, 1) do local lemma = opts.lemmas[index] or "" if lemma == "" or lemma:sub(1, 1) == "+" then error("Give the lemmas comma-separated and without +, e.g. ẓer") end table.insert(lemmas, lemma) end return definition { pagename = opts.pagename, lemmas = lemmas, slots = opts.slots, noslots = opts.noslots, conjid = opts.conjid, noconjid = opts.noconjid, gloss = opts.gloss, } end function export.verb_form(frame) local args = {} for key, value in pairs(frame:getParent().args) do args[key] = value end for key, value in pairs(frame.args) do if args[key] == nil then args[key] = value end end local pagename = args.pagename or mw.title.getCurrentTitle().text local lemmas = {} for index = 1, math.max(#args, 1) do local head = args[index] or "" if head:sub(1, 1) ~= "+" then error("Give each lemma as +LEMMA, e.g. {{gho-verb form|+ẓer}}") end table.insert(lemmas, head:sub(2)) end local line = definition { pagename = pagename, lemmas = lemmas, slots = args.slots, noslots = args.noslots, conjid = args.conjid, noconjid = args.noconjid, gloss = args.t or args.gloss, } local headword = M.ber_headword.show_impl("verb forms", lang_code, {}) return headword .. "\n# " .. line end return export rxs7mfnz9stwyr5iwgdugk41fo1w222 မဝ်ဂျူ:gho-conj 828 299395 402272 2026-10-01T06:27:48Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "--[=[ Conjugation of Ghomara verbs. Called as {{gho-conj|PARADIGM[:STEM][.FIELD[:VALUE]]…}}. Angle brackets around the spec are accepted but carry nothing: the lemma comes from the page name, so there is no lemma text for them to delimit. ber:ttaddu Berber paradigm, imperfective stem ttaddu ber:ssuṭus.caus ... forced causative ar:u Arabic paradigm, hollow/defecti..." 402272 Scribunto text/plain --[=[ Conjugation of Ghomara verbs. Called as {{gho-conj|PARADIGM[:STEM][.FIELD[:VALUE]]…}}. Angle brackets around the spec are accepted but carry nothing: the lemma comes from the page name, so there is no lemma text for them to delimit. ber:ttaddu Berber paradigm, imperfective stem ttaddu ber:ssuṭus.caus ... forced causative ar:u Arabic paradigm, hollow/defective vowel u ar:ktub Arabic paradigm, imperfect stem (no prefix) ar:- ... imperfect suppressed ber:ttaddu.imp:bdu imperative stem, .imp:a:b for alternatives, .imp:- suppresses ber:x.perfective_sg3m:y slot override; SLOT+SLOT2, SLOT:V1:V2, SLOT:- ber:x.addnote[SLOTS][n] footnote named slots ber:x[rare] footnote the slots that stem feeds ber:x.[rare] footnote every form |json=1| returns the analysis instead of the table, for bot use. ]=] local export = {} local M = require("Module:module loader").init({ require = { template_parser = "Module:template parser", iut = "Module:inflection utilities", languages = "Module:languages", links = "Module:links", string_utilities = "Module:string utilities", parameters = "Module:parameters", JSON = "Module:JSON", put = "Module:parse utilities", utilities = "Module:utilities", inflection_table = "Module:inflection-table", gender_and_number = "Module:gender and number", }, lazy = { ustring = function() return mw.ustring end, }, }) -- Set true to make categories show up outside the main namespace, for checking -- them from a /testcases page. local force_cat = false --[==[ Shared: accents and page probing ]==] local accent_pairs = { { "ḏ̣", "ḍ" }, { "ḏ", "d" }, { "ḷ", "l" }, { "ṛ", "r" }, { "p̣", "p" }, { "ḵ", "k" }, { "ḡ", "g" }, { "ṯ", "t" }, { "ḇ", "b" }, } local function strip_accents(stem) for _, pair in ipairs(accent_pairs) do stem = stem:gsub(pair[1], pair[2]) end return stem end -- The accented respelling from {{gho-IPA}} and whether {{causative of|gho}} is -- present. Memoised per page. local page_facts_cache = {} local function page_facts(pagename) local cached = page_facts_cache[pagename] if cached then return cached end local facts = { ipa = nil, ipa_all = nil, causative = false } local title = mw.title.new(pagename) local content = title and title:getContent() if content then for template in M.template_parser.find_templates(content) do local template_name = template:get_name() if template_name == "gho-IPA" then -- {{gho-IPA|bnu|ḇnu}} gives two accented stems, both of which -- conjugate. The scan stops at the first gap: |1=a|2=b|4=c is -- two, not three. if facts.ipa == nil then local args = template:get_arguments() local val = args[1] if val and val ~= "" then facts.ipa = val facts.ipa_all = { val } local index = 2 while args[index] and args[index] ~= "" do table.insert(facts.ipa_all, args[index]) index = index + 1 end end end elseif template_name == "causative of" then if not facts.causative and template:get_arguments()[1] == "gho" then facts.causative = true end end end end page_facts_cache[pagename] = facts return facts end --[==[ Shared: character classes ]==] local vowel_chars = "aeiu" local dental_chars = "tdṭḍčǧ" local sibilant_chars = "szṣẓ" local function char_in_class(character_class, character) return character ~= nil and M.ustring.find(character_class, character, 1, true) ~= nil end -- Splits into graphemes, not codepoints: ḏ̣ and p̣ are a base letter plus U+0323, -- with no precomposed form. local function split_into_characters(text) local result = {} for _, codepoint in ipairs({ M.ustring.codepoint(text, 1, M.ustring.len(text)) }) do local character = M.ustring.char(codepoint) if codepoint >= 0x0300 and codepoint <= 0x036F and #result > 0 then result[#result] = result[#result] .. character else table.insert(result, character) end end return result end -- Length in graphemes, the unit insert_schwas and hyphenate index by. local function grapheme_len(text) return #split_into_characters(text) end local function is_vowel(character) return char_in_class(vowel_chars, character and M.ustring.lower(character)) end local function stem_has_vowel(stem) for i = 1, M.ustring.len(stem) do if is_vowel(M.ustring.sub(stem, i, i)) then return true end end return false end local function is_geminate(first, second) if not first or not second then return false end if first == second then return true end return (char_in_class(dental_chars, first) and char_in_class(dental_chars, second)) or (char_in_class(sibilant_chars, first) and char_in_class(sibilant_chars, second)) end local function should_pair_as_geminate(first, second, char_after_second) if not is_geminate(first, second) then return false end if first ~= second and second == char_after_second then return false end return true end -- ǧ and č are geminates in themselves: each fills a consonant slot alone -- rather than pairing with what follows, and counts as a cluster where the -- schwa rules ask whether one is there. local function is_inherent_geminate(character) return character == "ǧ" or character == "č" end local function get_consonant_slots(skeleton) local characters = split_into_characters(skeleton) local char_count = #characters local slots = {} local i = 1 while i <= char_count do local character = characters[i] if character == "e" or is_vowel(character) then i = i + 1 elseif character == "ʷ" then if #slots > 0 then slots[#slots] = slots[#slots] .. "ʷ" end i = i + 1 elseif is_inherent_geminate(character) then table.insert(slots, character) i = i + 1 else local next_character = characters[i + 1] if next_character and should_pair_as_geminate(character, next_character, characters[i + 2]) then table.insert(slots, character .. next_character) i = i + 2 else table.insert(slots, character) i = i + 1 end end end return slots end local function four_consonant_skip_index(skeleton, prefix_len) if stem_has_vowel(skeleton) then return nil end local slots = get_consonant_slots(skeleton) if #slots ~= 4 then return nil end for _, slot in ipairs(slots) do if M.ustring.len(slot) > 1 or is_inherent_geminate(slot) then return nil end end local characters = split_into_characters(skeleton) local char_count = #characters local slot_count, after_c2 = 0, nil local index = 1 while index <= char_count do local character = characters[index] if character == "e" or is_vowel(character) then index = index + 1 elseif character == "ʷ" then index = index + 1 if slot_count == 2 then after_c2 = index - 1 end elseif is_inherent_geminate(character) then slot_count = slot_count + 1 index = index + 1 if slot_count == 2 then after_c2 = index - 1 end else local next_character = characters[index + 1] if next_character and should_pair_as_geminate(character, next_character, characters[index + 2]) then slot_count = slot_count + 1 index = index + 2 else slot_count = slot_count + 1 index = index + 1 end if slot_count == 2 then after_c2 = index - 1 end end end return after_c2 and (prefix_len + after_c2) or nil end --[==[ Shared: schwa phonology ]==] local function strip_schwas(stem) local characters = split_into_characters(stem) local char_count = #characters local effective_char_count = char_count if characters[effective_char_count] == "ʷ" then effective_char_count = effective_char_count - 1 end local ends_with_e_between_consonants = (effective_char_count >= 3 and characters[effective_char_count - 2] == "e" and not is_vowel(characters[effective_char_count - 1]) and not is_vowel(characters[effective_char_count])) local result = {} for char_index, character in ipairs(characters) do local keep = false if character == "e" then if ends_with_e_between_consonants and char_index == effective_char_count - 2 then keep = true elseif char_index > 1 and char_index < char_count then local char_before = characters[char_index - 1] local char_after = characters[char_index + 1] if not is_vowel(char_before) and not is_vowel(char_after) and is_inherent_geminate(char_after) then keep = true end end else keep = true end if keep then table.insert(result, character) end end local result_len = #result if result_len >= 4 then local first_pair_first = result[result_len - 3] local first_pair_second = result[result_len - 2] local second_pair_first = result[result_len - 1] local second_pair_second = result[result_len] if first_pair_first == second_pair_first and first_pair_second == second_pair_second and not is_vowel(first_pair_first) and not is_vowel(first_pair_second) then table.insert(result, result_len - 2, "e") end end return table.concat(result) end local function has_geminate_echo(stem) local slots = get_consonant_slots(strip_schwas(stem)) for i = 1, #slots - 1 do if M.ustring.len(slots[i]) == 2 and M.ustring.sub(slots[i], 1, 1) == slots[i + 1] then return true end end return false end -- Walks the word right to left inserting the epenthetic vowel, restarting after -- every insertion. `epenthetic_vowel` defaults to "e"; the Arabic engine passes -- "u"/"i" for geminate cC verbs. local function insert_schwas(word, protect_suffix_len, prefix_len, stem_len, vowelless_stem, epenthetic_vowel, skip_index, only_allow_index) protect_suffix_len = protect_suffix_len or 0 prefix_len = prefix_len or 0 stem_len = stem_len or 0 vowelless_stem = vowelless_stem or false epenthetic_vowel = epenthetic_vowel or "e" local characters = split_into_characters(word) local char_count = #characters local index = char_count - 1 local stem_start = prefix_len + 1 local stem_end = prefix_len + stem_len while index >= 1 do local protected_from_index = char_count - protect_suffix_len + 1 if index >= protected_from_index then index = index - 1 else local char_at_index = characters[index] local char_after_index = characters[index + 1] if not is_vowel(char_at_index) and not is_vowel(char_after_index) then if char_after_index == "ʷ" then index = index - 1 elseif (should_pair_as_geminate(char_at_index, char_after_index, characters[index + 2]) or is_inherent_geminate(char_after_index)) and index ~= prefix_len and index + 1 < protected_from_index then index = index - 1 else local lookahead_index = index + 2 local next_is_geminate = false if lookahead_index <= char_count and should_pair_as_geminate(char_after_index, characters[lookahead_index], characters[lookahead_index + 1]) then next_is_geminate = true; lookahead_index = lookahead_index + 1 elseif is_inherent_geminate(char_after_index) then next_is_geminate = true end while lookahead_index <= char_count do if lookahead_index < char_count and characters[lookahead_index] and characters[lookahead_index + 1] and should_pair_as_geminate(characters[lookahead_index], characters[lookahead_index + 1], characters[lookahead_index + 2]) then lookahead_index = lookahead_index + 2 elseif is_inherent_geminate(characters[lookahead_index]) then lookahead_index = lookahead_index + 1 elseif characters[lookahead_index] == "ʷ" then lookahead_index = lookahead_index + 1 else break end end local char_at_lookahead = characters[lookahead_index] local creates_open_syllable = char_at_lookahead and is_vowel(char_at_lookahead) and not next_is_geminate local is_redup_echo = char_at_lookahead and (char_at_index == char_at_lookahead) and (index >= 3 and characters[index - 2] == char_after_index) local char_before_index = index > 1 and characters[index - 1] or nil -- A geminate alone does not license dropping the schwa before -- it: berrem keeps its e and gives iberrem. Only a reduplicated -- echo does. if char_before_index and is_vowel(char_before_index) and is_redup_echo and (not is_inherent_geminate(char_at_index)) and (index + 1 < protected_from_index) then index = index - 1 elseif creates_open_syllable then index = index - 1 else if only_allow_index and index >= stem_start and index ~= only_allow_index then index = index - 1 elseif skip_index and index == skip_index then index = index - 1 elseif vowelless_stem and index >= stem_start and index + 1 <= stem_end then index = index - 1 else table.insert(characters, index + 1, epenthetic_vowel) char_count = char_count + 1 if index < stem_start then stem_start = stem_start + 1 stem_end = stem_end + 1 elseif index < stem_end then stem_end = stem_end + 1 end index = char_count - 1 end end end else index = index - 1 end end end -- Two schwas either side of one consonant is one syllable too many: the -- second goes, so tceḵcam gives ccekcmex and not cckecmex. An inherent -- geminate or a labialised consonant does not count as that consonant, and -- a combining mark belongs to the letter it sits on. local function is_combining(character) if not character then return false end local codepoint = M.ustring.codepoint(character) return codepoint >= 0x0300 and codepoint <= 0x036F end local at = 1 while at <= char_count - 2 do local removed = false if characters[at] == "e" then local consonant = characters[at + 1] local next_index = at + 2 while next_index <= char_count and is_combining(characters[next_index]) do next_index = next_index + 1 end if next_index <= char_count and characters[next_index] == "e" and next_index + 1 <= char_count and not is_vowel(characters[next_index + 1]) and not is_inherent_geminate(consonant) and consonant ~= "ʷ" and not is_vowel(consonant) then table.remove(characters, next_index) char_count = char_count - 1 if next_index < stem_start then stem_start = stem_start - 1 stem_end = stem_end - 1 elseif next_index < stem_end then stem_end = stem_end - 1 end removed = true end end if not removed then at = at + 1 end end -- Three genuinely identical consonants in a row never surfaces (qeṣṣeṣ + -- -et would otherwise give qeṣṣṣet): drop the third one. Exact character -- match only -- an accented consonant is never identical to its plain -- counterpart here. This only fires on whatever the passes above -- actually produced: a form where a schwa already splits the run apart -- (qeṣṣeṣ itself, i-qeṣṣeṣ, ...) has no run of 3 left by this point and -- is left untouched. local at3 = 1 while at3 <= char_count - 2 do if characters[at3] ~= "" and characters[at3] == characters[at3 + 1] and characters[at3] == characters[at3 + 2] then table.remove(characters, at3 + 2) char_count = char_count - 1 if at3 + 2 < stem_start then stem_start = stem_start - 1 stem_end = stem_end - 1 elseif at3 + 2 < stem_end then stem_end = stem_end - 1 end else at3 = at3 + 1 end end return table.concat(characters), stem_start, stem_end end local function finalize(word) if M.ustring.len(word) > 1 and M.ustring.sub(word, 1, 1) == "e" then word = M.ustring.sub(word, 2) end local word_len = M.ustring.len(word) if word_len >= 2 then local last_two = M.ustring.sub(word, word_len - 1, word_len) if last_two == "ew" then return M.ustring.sub(word, 1, word_len - 2) .. "u" elseif last_two == "ey" then return M.ustring.sub(word, 1, word_len - 2) .. "i" end end return word end local function finalize_part(part, is_first, is_last) if is_first and M.ustring.len(part) > 1 and M.ustring.sub(part, 1, 1) == "e" then part = M.ustring.sub(part, 2) end if is_last then local part_len = M.ustring.len(part) if part_len >= 2 then local last_two = M.ustring.sub(part, part_len - 1, part_len) if last_two == "ew" then part = M.ustring.sub(part, 1, part_len - 2) .. "u" elseif last_two == "ey" then part = M.ustring.sub(part, 1, part_len - 2) .. "i" end end end return part end -- `stem_start` and `stem_end` are grapheme offsets from insert_schwas. local function hyphenate(word, prefix_len, stem_start, stem_end) local characters = split_into_characters(word) local function slice(from, to) local parts = {} for i = from, to or #characters do if characters[i] then table.insert(parts, characters[i]) end end return table.concat(parts) end if characters[stem_end + 1] == "ʷ" then stem_end = stem_end + 1 end local prefix = prefix_len > 0 and slice(1, stem_start - 1) or "" local root = slice(stem_start, stem_end) local suffix = slice(stem_end + 1) local parts = {} if prefix ~= "" then table.insert(parts, finalize_part(prefix, true, false)) end table.insert(parts, finalize_part(root, prefix == "", suffix == "")) if suffix ~= "" then table.insert(parts, finalize_part(suffix, false, true)) end return table.concat(parts, "-") end --[==[ Form tables ]==] -- Ghomara stores two spellings per form: the accented one for the accelerator, -- and the accent-stripped one for the link. local function insert_form_pair(forms, slot, value, hyphenated_value, footnotes) M.iut.insert_form(forms, slot, { form = strip_accents(value), accented_form = hyphenated_value or value, footnotes = footnotes, }) end -- Footnote lists are shared between form objects; each addition builds a new -- list rather than modifying one in place. local function add_footnotes(forms, slot, footnotes) if not footnotes or not forms[slot] then return end for _, formobj in ipairs(forms[slot]) do local combined = {} for _, footnote in ipairs(formobj.footnotes or {}) do table.insert(combined, footnote) end for _, footnote in ipairs(footnotes) do local seen = false for _, existing in ipairs(combined) do if existing == footnote then seen = true break end end if not seen then table.insert(combined, footnote) end end formobj.footnotes = combined end end --[==[ Row formatting ]==] -- Gender labels for the m/f row headers, equivalent to {{g|m}} and {{g|f}}. local gender_label_replacements local function get_gender_label_replacements() if not gender_label_replacements then -- format_genders returns text and categories; only the text is used. local masculine = M.gender_and_number.format_genders{ "m" } local feminine = M.gender_and_number.format_genders{ "f" } gender_label_replacements = { ["{g_m}"] = masculine, ["{g_f}"] = feminine } end return gender_label_replacements end -- Row templates are constant, so each is prepared with the gender labels once -- per #invoke; only the forms vary per call. gsub, not format(), which would -- reject the slot placeholders this pass has to leave alone. local prepared_rows = {} local function format_rows(rows, forms) local prepared = prepared_rows[rows] if not prepared then prepared = (rows:gsub("{g_[mf]}", get_gender_label_replacements())) prepared_rows[rows] = prepared end return M.string_utilities.format(prepared, forms) end local table_helpers = { format_rows = format_rows, make_top = function(args) return M.inflection_table.make_top(args) end, make_bottom = function(args) return M.inflection_table.make_bottom(args) end, } -- .imp:STEM replaces the stem the imperative is built on; .imp:- suppresses it. -- `suppressed` is what to fall back on when the spec says nothing: the Arabic -- imperative is built on the imperfect stem and so inherits its suppression, -- while the Berber one is built on the aorist and has nothing to inherit. -- .imp: may name several stems, .imp:ndu:nda, when the imperative has -- alternative forms. Returns the stems to build imperatives on. local function imperative_from(default_stem, overrides, suppressed) if overrides[1] == "-" then return {}, true end if #overrides > 0 then return overrides, false end return { default_stem }, suppressed end --[==[ The paradigms ]==] -- Each paradigm exposes: -- code, label, category, appendix descriptive/dispatch metadata -- slot_list {slot, accelerator tag spec} pairs -- derive(context) -> forms, info -- citation_lemma_from_forms(forms, fallback) -- make_table(forms, notes, helpers) -> wikitext -- `context` is { pagename, accented, stem, imp, caus }, where `stem` is the -- spec's stem override and `imp` its list of imperative stems. `info` is { class, class_desc, -- stem_slot_prefix }: the inflection class, its display form, and the slot -- prefix a stem footnote attaches to (nil meaning every slot). local PARADIGMS = {} local person_keys = { "sg1", "sg2", "sg3m", "sg3f", "pl1", "pl2", "pl3" } -- Arabic-morphology verb "forms" (measures) whose citation spelling starts -- with a fixed augment permanently fused to the root, so the augment's own -- internal boundaries -- and the boundary between the augment and the root -- -- never take a schwa the way an ordinary root's consonant clusters do. -- Declared as {{gho-conj|ar:VII}} etc. Value is the augment's length in -- consonants: VII is n- (nbheṭ), VIII is a t- infixed after C1 (rtɛeb), -- X is st- (steɛjeb) -- VIII and X differ in where the augment sits -- morphologically, but behave identically for schwa placement. local AR_AUGMENT_CLASSES = { VII = 1, VIII = 2, X = 2 } do --[==[ Arabic morphology ]==] local function bare_consonant_skeleton(stem) local characters = split_into_characters(stem) local result = {} for _, character in ipairs(characters) do if character ~= "e" then table.insert(result, character) end end return table.concat(result) end local function is_cC_verb(skeleton) local bare = bare_consonant_skeleton(skeleton) if stem_has_vowel(bare) then return false end local slots = get_consonant_slots(bare) if #slots ~= 2 then return false end return M.ustring.len(slots[2]) >= 2 end local function is_cac_verb(stem) local characters = split_into_characters(stem) local char_count = #characters local slots = {} local vowel_count = 0 local vowel_position = nil local i = 1 while i <= char_count do local character = characters[i] local lowered = M.ustring.lower(character) if character == "e" then i = i + 1 elseif lowered == "a" or lowered == "i" or lowered == "u" then vowel_count = vowel_count + 1 if lowered ~= "a" then return false end vowel_position = #slots i = i + 1 elseif character == "ʷ" then i = i + 1 elseif is_inherent_geminate(character) then table.insert(slots, character) i = i + 1 else local next_character = characters[i + 1] if next_character and should_pair_as_geminate(character, next_character, characters[i + 2]) then return false end table.insert(slots, character) i = i + 1 end end return vowel_count == 1 and #slots == 2 and vowel_position == 1 end local function cac_with_vowel(stem, new_vowel) local characters = split_into_characters(stem) for i, character in ipairs(characters) do if M.ustring.lower(character) == "a" then characters[i] = new_vowel break end end return table.concat(characters) end local function is_final_a_verb(stem) local stem_len = M.ustring.len(stem) if stem_len < 1 then return false end return M.ustring.lower(M.ustring.sub(stem, stem_len, stem_len)) == "a" end local function final_a_with_vowel(stem, new_vowel) local stem_len = M.ustring.len(stem) return M.ustring.sub(stem, 1, stem_len - 1) .. new_vowel end local function dental_for(preceding_char) if is_vowel(preceding_char) then return "ṯ" else return "t" end end local function apply_dental(suffix, preceding_char) local d = dental_for(preceding_char) return (suffix:gsub("^t", d)) end local function augment_schwa_indices(augment_len, prefix_len, has_suffix) if not augment_len then return nil, nil end if has_suffix then return nil, prefix_len + 2 end return prefix_len + 1, nil end local function perfect_direct(stem, suffix, insert_i) if insert_i then local realized = apply_dental(suffix, "i") local result = stem .. "i" .. realized local hyph = realized ~= "" and (stem .. "i-" .. realized) or (stem .. "i") return result, hyph end local stem_last = M.ustring.sub(stem, M.ustring.len(stem), M.ustring.len(stem)) local realized = apply_dental(suffix, stem_last) local result = stem .. realized local hyph = realized ~= "" and (stem .. "-" .. realized) or stem return result, hyph end local function perfect_recompute(stem, suffix, protect_len, augment_len) if suffix == "" and has_geminate_echo(stem) then return finalize(stem), finalize(stem) end local skeleton = strip_schwas(stem) if is_cC_verb(skeleton) then skeleton = bare_consonant_skeleton(skeleton) end local stem_len = grapheme_len(skeleton) local vowelless = not stem_has_vowel(stem) local word = skeleton .. suffix local skip_index, only_allow_index if augment_len then skip_index, only_allow_index = augment_schwa_indices(augment_len, 0, suffix ~= "") else skip_index = four_consonant_skip_index(skeleton, 0) end local raw, ss, se = insert_schwas(word, protect_len, 0, stem_len, vowelless, nil, skip_index, only_allow_index) local result = finalize(raw) local hyph = hyphenate(raw, 0, ss, se) return result, hyph end -- sg2 and pl2 return two variants as (form, hyphenated, form, hyphenated), -- via locals: a call in a non-final position of a return list is truncated. local function conjugate_perfect(stem, person_key, vowel_override, augment_len) local is_hollow = vowel_override ~= nil and is_cac_verb(stem) local is_final_a = is_final_a_verb(stem) local direct_stem = stem if is_hollow then direct_stem = cac_with_vowel(stem, vowel_override) elseif is_final_a then direct_stem = final_a_with_vowel(stem, "i") end local stem_last = M.ustring.sub(direct_stem, M.ustring.len(direct_stem), M.ustring.len(direct_stem)) local skeleton = strip_schwas(stem) local skeleton_last = M.ustring.sub(skeleton, M.ustring.len(skeleton), M.ustring.len(skeleton)) local after_vowel = is_vowel(skeleton_last) local is_geminated = is_cC_verb(skeleton) if person_key == "sg1" then if is_geminated then return perfect_direct(direct_stem, "t", true) end return perfect_direct(direct_stem, apply_dental("t", stem_last)) elseif person_key == "sg2" then if is_geminated then local plain, plain_hyph = perfect_direct(direct_stem, "t", true) local with_i, with_i_hyph = perfect_direct(direct_stem, "ti", true) return plain, plain_hyph, with_i, with_i_hyph end local d = dental_for(stem_last) local plain, plain_hyph = perfect_direct(direct_stem, d) local with_i, with_i_hyph = perfect_direct(direct_stem, d .. "i") return plain, plain_hyph, with_i, with_i_hyph elseif person_key == "sg3m" then return perfect_recompute(stem, "", 0, augment_len) elseif person_key == "sg3f" then if after_vowel then return perfect_recompute(stem, "ṯ", 1, augment_len) else return perfect_recompute(stem, "eṯ", 1, augment_len) end elseif person_key == "pl1" then if is_geminated then return perfect_direct(direct_stem, "na", true) end return perfect_direct(direct_stem, "na") elseif person_key == "pl2" then if is_geminated then local long, long_hyph = perfect_direct(direct_stem, "tum", true) local short, short_hyph = perfect_direct(direct_stem, "tu", true) return long, long_hyph, short, short_hyph end local d = dental_for(stem_last) local long, long_hyph = perfect_direct(direct_stem, d .. "um") local short, short_hyph = perfect_direct(direct_stem, d .. "u") return long, long_hyph, short, short_hyph elseif person_key == "pl3" then local suffix = after_vowel and "w" or "u" local protect = M.ustring.len(suffix) return perfect_recompute(stem, suffix, protect, augment_len) end end local function fixed_prefix(person_key) if person_key == "sg1" or person_key == "pl1" then return "n" elseif person_key == "sg2" or person_key == "sg3f" or person_key == "pl2" then return "d" end return nil end local function conjugate_imperfect(stem, person_key, vowel_override, augment_len) if vowel_override ~= nil then if is_cac_verb(stem) then stem = cac_with_vowel(stem, vowel_override) elseif is_final_a_verb(stem) then stem = final_a_with_vowel(stem, vowel_override) end end local has_suffix = (person_key == "pl1" or person_key == "pl2" or person_key == "pl3") local is_3rd = (person_key == "sg3m" or person_key == "pl3") if not has_suffix and has_geminate_echo(stem) then local prefix = is_3rd and (is_vowel(M.ustring.sub(stem, 1, 1)) and "y" or "i") or fixed_prefix(person_key) return finalize(prefix .. stem), prefix .. "-" .. stem end local skeleton = strip_schwas(stem) local is_geminated = is_cC_verb(skeleton) local epenthetic_vowel = "e" if is_geminated then skeleton = bare_consonant_skeleton(skeleton) epenthetic_vowel = vowel_override or "u" end local stem_len = grapheme_len(skeleton) local vowelless = not stem_has_vowel(stem) local suffix, protect_len if has_suffix then local sk_last = M.ustring.sub(skeleton, M.ustring.len(skeleton), M.ustring.len(skeleton)) suffix = is_vowel(sk_last) and "w" or "u" protect_len = M.ustring.len(suffix) else suffix = "" protect_len = 0 end local prefix, prefix_len, raw, ss, se if is_3rd then -- Vowel-initial stems take y-; i- would put two vowels together. -- Everything else takes i-, whether or not a schwa follows: bɣa -- gives ibɣi, not yebɣi. prefix = is_vowel(M.ustring.sub(skeleton, 1, 1)) and "y" or "i" prefix_len = M.ustring.len(prefix) local word = prefix .. skeleton .. suffix local skip_index, only_allow_index if augment_len then skip_index, only_allow_index = augment_schwa_indices(augment_len, prefix_len, has_suffix) else skip_index = four_consonant_skip_index(skeleton, prefix_len) end raw, ss, se = insert_schwas(word, protect_len, prefix_len, stem_len, vowelless, epenthetic_vowel, skip_index, only_allow_index) else prefix = fixed_prefix(person_key) prefix_len = M.ustring.len(prefix) local word = prefix .. skeleton .. suffix local skip_index, only_allow_index if augment_len then skip_index, only_allow_index = augment_schwa_indices(augment_len, prefix_len, has_suffix) else skip_index = four_consonant_skip_index(skeleton, prefix_len) end raw, ss, se = insert_schwas(word, protect_len, prefix_len, stem_len, vowelless, epenthetic_vowel, skip_index, only_allow_index) end local result = finalize(raw) local hyph = hyphenate(raw, prefix_len, ss, se) return result, hyph end local function imperative_singular(stem, vowel_override, augment_len) if vowel_override ~= nil then if is_cac_verb(stem) then stem = cac_with_vowel(stem, vowel_override) elseif is_final_a_verb(stem) then stem = final_a_with_vowel(stem, vowel_override) end end if has_geminate_echo(stem) then return finalize(stem), finalize(stem) end local skeleton = strip_schwas(stem) local is_geminated = is_cC_verb(skeleton) local epenthetic_vowel = "e" if is_geminated then skeleton = bare_consonant_skeleton(skeleton) epenthetic_vowel = vowel_override or "u" end local stem_len = grapheme_len(skeleton) local vowelless = not stem_has_vowel(stem) local skip_index, only_allow_index if augment_len then skip_index, only_allow_index = augment_schwa_indices(augment_len, 0, false) else skip_index = four_consonant_skip_index(skeleton, 0) end local raw, ss, se = insert_schwas(skeleton, 0, 0, stem_len, vowelless, epenthetic_vowel, skip_index, only_allow_index) local result = finalize(raw) local hyph = hyphenate(raw, 0, ss, se) return result, hyph end local function imperative_plural(stem, vowel_override, augment_len) if vowel_override ~= nil then if is_cac_verb(stem) then stem = cac_with_vowel(stem, vowel_override) elseif is_final_a_verb(stem) then stem = final_a_with_vowel(stem, vowel_override) end end local skeleton = strip_schwas(stem) local is_geminated = is_cC_verb(skeleton) local epenthetic_vowel = "e" if is_geminated then skeleton = bare_consonant_skeleton(skeleton) epenthetic_vowel = vowel_override or "u" end local stem_len = grapheme_len(skeleton) local vowelless = not stem_has_vowel(stem) local sk_last = M.ustring.sub(skeleton, M.ustring.len(skeleton), M.ustring.len(skeleton)) local suffix = is_vowel(sk_last) and "w" or "u" local protect_len = M.ustring.len(suffix) local word = skeleton .. suffix local skip_index, only_allow_index if augment_len then skip_index, only_allow_index = augment_schwa_indices(augment_len, 0, true) else skip_index = four_consonant_skip_index(skeleton, 0) end local raw, ss, se = insert_schwas(word, protect_len, 0, stem_len, vowelless, epenthetic_vowel, skip_index, only_allow_index) local result = finalize(raw) local hyph = hyphenate(raw, 0, ss, se) return result, hyph end local slot_list = { { "perfect_sg1", "1|s|perf" }, { "perfect_sg2", "2|s|perf" }, { "perfect_sg3m", "3|m|s|perf" }, { "perfect_sg3f", "3|f|s|perf" }, { "perfect_pl1", "1|p|perf" }, { "perfect_pl2", "2|p|perf" }, { "perfect_pl3", "3|p|perf" }, { "imperfect_sg1", "1|s|impf" }, { "imperfect_sg2", "2|s|impf" }, { "imperfect_sg3m", "3|m|s|impf" }, { "imperfect_sg3f", "3|f|s|impf" }, { "imperfect_pl1", "1|p|impf" }, { "imperfect_pl2", "2|p|impf" }, { "imperfect_pl3", "3|p|impf" }, { "imperative_sg", "s|imp" }, { "imperative_pl", "p|imp" }, } local function insert_perfect_forms(forms, stem, person_key, vowel_override, augment_len) if person_key == "sg2" or person_key == "pl2" then local r1, h1, r2, h2 = conjugate_perfect(stem, person_key, vowel_override, augment_len) insert_form_pair(forms, "perfect_" .. person_key, r1, h1) insert_form_pair(forms, "perfect_" .. person_key, r2, h2) else insert_form_pair(forms, "perfect_" .. person_key, conjugate_perfect(stem, person_key, vowel_override, augment_len)) end end -- Ordered; first match wins. These carry no derive: the branching on -- hollow, defective and geminate is inside the stem builders above. Here to -- name the classes in one place. local verb_classes = { { name = "geminate", matches = function(_h, _d, geminate) return geminate end }, { name = "hollow", matches = function(hollow) return hollow end }, { name = "final-a", matches = function(_h, defective) return defective end }, { name = "sound", matches = function() return true end }, } local function derive(context) local accented_perfect = context.accented local param_1 = context.head or "" local accented_imperative = context.imp or {} local augment_len = context.augment_class and AR_AUGMENT_CLASSES[context.augment_class] or nil local is_hollow = is_cac_verb(accented_perfect) local is_defective = is_final_a_verb(accented_perfect) local is_geminate = is_cC_verb(strip_schwas(accented_perfect)) local vowel_override = nil local imperfect_override = param_1 -- On hollow and final-a verbs the stem slot holds either the vowel of the -- paradigm or an imperfect stem; on a geminate it holds the vowel that -- breaks the cluster in the imperfect, u unless the verb says otherwise. -- Only a bare a/i/u is the vowel. if (is_hollow or is_defective or is_geminate) and (param_1 == "a" or param_1 == "i" or param_1 == "u") then vowel_override = param_1 imperfect_override = "" end local accented_imperfect local skip_imperfect = false if imperfect_override == "-" then skip_imperfect = true accented_imperfect = "" elseif imperfect_override ~= "" then accented_imperfect = imperfect_override else accented_imperfect = accented_perfect end local forms = {} for _, person_key in ipairs(person_keys) do insert_perfect_forms(forms, accented_perfect, person_key, vowel_override, augment_len) end if accented_imperfect ~= "" and not skip_imperfect then for _, person_key in ipairs(person_keys) do insert_form_pair(forms, "imperfect_" .. person_key, conjugate_imperfect(accented_imperfect, person_key, vowel_override, augment_len)) end end local imp_stems, skip_imperative = imperative_from(accented_imperfect, accented_imperative, skip_imperfect) if not skip_imperative then for _, imp_stem in ipairs(imp_stems) do if imp_stem ~= "" then insert_form_pair(forms, "imperative_sg", imperative_singular(imp_stem, vowel_override, augment_len)) insert_form_pair(forms, "imperative_pl", imperative_plural(imp_stem, vowel_override, augment_len)) end end end local class = "sound" for _, candidate in ipairs(verb_classes) do if candidate.matches(is_hollow, is_defective, is_geminate) then class = candidate.name break end end -- A vowel override colours the whole paradigm, an imperfect stem only -- the imperfect; stem footnotes follow the same split. return forms, { class = class, stem_slot_prefix = vowel_override == nil and "imperfect_" or nil, } end local function citation_lemma_from_forms(forms, fallback) local perfect_sg3m = forms.perfect_sg3m if perfect_sg3m and perfect_sg3m[1] and perfect_sg3m[1].form ~= "" then return perfect_sg3m[1].form end if fallback and fallback ~= "" then return fallback end end local main_rows = [=[ |- ! colspan="2" class="outer" | ! colspan="3" class="outer" | ကိုန်ဨကဝုစ် ! class="separator" rowspan="999" | ! colspan="3" class="outer" | ကိုန်ဗဟုဝစ် |- ! colspan="2" class="outer" | ! 1<sup>st</sup> person ! 2<sup>nd</sup> person ! 3<sup>rd</sup> person ! 1<sup>st</sup> person ! 2<sup>nd</sup> person ! 3<sup>rd</sup> person |- ! rowspan="2" class="outer" | မဍိုက်ပေၚ် ! {g_m} | rowspan="2" | {perfect_sg1} | rowspan="2" | {perfect_sg2} | {perfect_sg3m} | rowspan="2" | {perfect_pl1} | rowspan="2" | {perfect_pl2} | rowspan="2" | {perfect_pl3} |- ! {g_f} | {perfect_sg3f} |- ! rowspan="2" class="outer" | ဟွံဍိုက်ပေၚ် ! {g_m} | rowspan="2" | {imperfect_sg1} | rowspan="2" | {imperfect_sg2} | {imperfect_sg3m} | rowspan="2" | {imperfect_pl1} | rowspan="2" | {imperfect_pl2} | rowspan="2" | {imperfect_pl3} |- ! {g_f} | {imperfect_sg3f} |- ! class="separator" colspan="999" | |- ! rowspan="2" class="outer" | ပါဲဗလေတ်ဟွံဗၠး ! {g_m} | class="secondary" rowspan="2" | | rowspan="2" | {imperative_sg} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | rowspan="2" | {imperative_pl} | class="secondary" rowspan="2" | |- ! {g_f} ]=] local function make_table(forms, notes, helpers) return helpers.make_top{ title = "-", palette = "red" } .. helpers.format_rows(main_rows, forms) .. helpers.make_bottom{ notes = notes } end PARADIGMS.ar = { code = "ar", label = "Arabic-morphology", category = " ", appendix = ":en:Appendix:Ghomara verbs#Arabic-morphology verbs", slot_list = slot_list, derive = derive, citation_lemma_from_forms = citation_lemma_from_forms, make_table = make_table, } end do --[==[ Berber morphology ]==] local function replace_all_vowel(stem, from_vowel, to_vowel) return (M.ustring.gsub(stem, from_vowel, to_vowel)) end local function has_full_vowel(stem) for _, character in ipairs(split_into_characters(stem)) do local lowered = M.ustring.lower(character) if lowered == "a" or lowered == "i" or lowered == "u" then return true end end return false end local function is_cc_verb(aorist_stem) return not has_full_vowel(aorist_stem) and #get_consonant_slots(aorist_stem) == 2 end local function is_C_verb(aorist_stem) return not has_full_vowel(aorist_stem) and #get_consonant_slots(aorist_stem) == 1 end local function strip_labialization(stem) return (M.ustring.gsub(stem, "ʷ", "")) end local function final_schwa_glide(stem) local stem_len = M.ustring.len(stem) if stem_len < 2 then return nil end local last_char = M.ustring.sub(stem, stem_len, stem_len) local prev_char = M.ustring.sub(stem, stem_len - 1, stem_len - 1) if prev_char == "e" and (last_char == "w" or last_char == "y") then return last_char end return nil end local function citation_schwa_before_final_slot(stem) local characters = split_into_characters(stem) local char_count = #characters local last_e_seen = false local slot_count = 0 local i = 1 while i <= char_count do local character = characters[i] if character == "e" then last_e_seen = true i = i + 1 elseif is_vowel(character) then last_e_seen = false i = i + 1 elseif character == "ʷ" then i = i + 1 elseif is_inherent_geminate(character) then slot_count = slot_count + 1 if slot_count == 2 then return last_e_seen end last_e_seen = false i = i + 1 else local next_character = characters[i + 1] if next_character and should_pair_as_geminate(character, next_character, characters[i + 2]) then slot_count = slot_count + 1 if slot_count == 2 then return last_e_seen end last_e_seen = false i = i + 2 else slot_count = slot_count + 1 if slot_count == 2 then return last_e_seen end last_e_seen = false i = i + 1 end end end return false end local function perfective_stem_data_by_type(aorist_stem, verb_type) if verb_type == 3 then local stem = strip_labialization(aorist_stem) return { unsuffixed_stem = stem, suffixed_stem = stem, dual_participle = true } end local slots = get_consonant_slots(aorist_stem) local bare_parts = {} for _, slot in ipairs(slots) do table.insert(bare_parts, strip_labialization(slot)) end local bare = table.concat(bare_parts) local with_a = bare .. "a" local unsuffixed_bare = bare local keeps_schwa = final_schwa_glide(aorist_stem) or citation_schwa_before_final_slot(aorist_stem) if keeps_schwa then bare_parts[#bare_parts] = "e" .. bare_parts[#bare_parts] unsuffixed_bare = table.concat(bare_parts) end if verb_type == 1 then return { unsuffixed_stem = with_a, suffixed_stem = with_a, dual_participle = false } else return { unsuffixed_stem = unsuffixed_bare, suffixed_stem = with_a, dual_participle = false } end end local function shape_slots(stem) local characters = split_into_characters(stem) local char_count = #characters local slots = {} local i = 1 while i <= char_count do local character = characters[i] local lowered = M.ustring.lower(character) if character == "e" then i = i + 1 elseif lowered == "a" or lowered == "i" or lowered == "u" then table.insert(slots, { kind = "vowel", text = lowered }) i = i + 1 elseif character == "ʷ" then if #slots > 0 then slots[#slots].text = slots[#slots].text .. "ʷ" end i = i + 1 elseif is_inherent_geminate(character) then table.insert(slots, { kind = "cons", text = character }) i = i + 1 else local next_character = characters[i + 1] if next_character and should_pair_as_geminate(character, next_character, characters[i + 2]) then table.insert(slots, { kind = "cons", text = character .. next_character }) i = i + 2 else table.insert(slots, { kind = "cons", text = character }) i = i + 1 end end end return slots end local function shape_pattern_string(slots) local parts = {} for _, slot in ipairs(slots) do if slot.kind == "vowel" then table.insert(parts, slot.text) elseif M.ustring.len(slot.text:gsub("ʷ", "")) > 1 then table.insert(parts, "C") else table.insert(parts, "c") end end return table.concat(parts) end local function shape_matches(aorist_stem, pattern) return shape_pattern_string(shape_slots(aorist_stem)) == pattern end local function swap_vowel_slot_to_a(aorist_stem, vowel_index) local characters = split_into_characters(aorist_stem) local seen_vowels = 0 for i, character in ipairs(characters) do local lowered = M.ustring.lower(character) if lowered == "a" or lowered == "i" or lowered == "u" then seen_vowels = seen_vowels + 1 if seen_vowels == vowel_index then characters[i] = "a" end end end return table.concat(characters) end local function swap_middle_vowel_to_a(aorist_stem) return swap_vowel_slot_to_a(aorist_stem, 1) end local function swapped_middle_vowel_perfective(aorist_stem) return { swap_middle_vowel_to_a(aorist_stem) } end local function caci_perfective_stems(aorist_stem) return { swap_vowel_slot_to_a(aorist_stem, 2) } end local function ss_causative_perfective_stems(aorist_stem) if M.ustring.find(aorist_stem, "u", 1, true) or M.ustring.find(aorist_stem, "i", 1, true) then local swapped = replace_all_vowel(aorist_stem, "u", "a") swapped = replace_all_vowel(swapped, "i", "a") return { swapped } end return nil end local function first_vowel_or_schwa(stem) for _, character in ipairs(split_into_characters(stem)) do local lowered = M.ustring.lower(character) if lowered == "a" or lowered == "e" or lowered == "i" or lowered == "u" then return lowered end end return nil end local function is_causative_initial_u(stem, is_causative) return is_causative == true and first_vowel_or_schwa(stem) == "u" end local function causative_echo_stem(stem) local characters = split_into_characters(stem) for i = #characters, 1, -1 do if characters[i] == "e" then characters[i] = "u" break end end return table.concat(characters) end local aorist_unsuffixed_persons = { sg3m = true, sg3f = true, pl1 = true } local function expand_stem(stem, has_suffix) if M.ustring.find(stem, "i/a", 1, true) then if has_suffix then return (M.ustring.gsub(stem, "i/a", "i")) else return (M.ustring.gsub(stem, "i/a", "a")) end end return stem end local function vocalize_final_glide(word) local word_len = M.ustring.len(word) if word_len < 1 then return word end local last_char = M.ustring.sub(word, word_len, word_len) if last_char == "w" then return M.ustring.sub(word, 1, word_len - 1) .. "u" elseif last_char == "y" then return M.ustring.sub(word, 1, word_len - 1) .. "i" end return word end local slot_list = { { "aorist_sg1", "1|s|aor" }, { "aorist_sg2", "2|s|aor" }, { "aorist_sg3m", "3|m|s|aor" }, { "aorist_sg3f", "3|f|s|aor" }, { "aorist_pl1", "1|p|aor" }, { "aorist_pl2", "2|p|aor" }, { "aorist_pl3", "3|p|aor" }, { "aorist_participle", "aor|part" }, { "imperative_sg", "s|imp" }, { "imperative_pl", "p|imp" }, { "perfective_sg1", "1|s|pfv" }, { "perfective_sg2", "2|s|pfv" }, { "perfective_sg3m", "3|m|s|pfv" }, { "perfective_sg3f", "3|f|s|pfv" }, { "perfective_pl1", "1|p|pfv" }, { "perfective_pl2", "2|p|pfv" }, { "perfective_pl3", "3|p|pfv" }, { "perfective_participle", "pfv|part" }, { "imperfective_sg1", "1|s|impfv" }, { "imperfective_sg2", "2|s|impfv" }, { "imperfective_sg3m", "3|m|s|impfv" }, { "imperfective_sg3f", "3|f|s|impfv" }, { "imperfective_pl1", "1|p|impfv" }, { "imperfective_pl2", "2|p|impfv" }, { "imperfective_pl3", "3|p|impfv" }, { "imperfective_participle", "impfv|part" }, { "inj", "inj" }, } local person_affixes = { sg1 = { prefix = "", suffix = "x" }, sg2 = { prefix = "t", suffix = "t" }, sg3m = { prefix = "y", suffix = "" }, sg3f = { prefix = "t", suffix = "" }, pl1 = { prefix = "n", suffix = "" }, pl2 = { prefix = "t", suffix = "m" }, pl3 = { prefix = "", suffix = "n" }, } local function conjugate(stem, person_key) local person = person_affixes[person_key] stem = expand_stem(stem, M.ustring.len(person.suffix) > 0) local final_glide = final_schwa_glide(stem) local skeleton = strip_schwas(stem) local prefix = person.prefix if person_key == "sg3m" then local first_char = M.ustring.sub(skeleton, 1, 1) if is_vowel(first_char) then prefix = "y" else prefix = "i" end end local suffix = person.suffix if suffix == "" and has_geminate_echo(stem) then local result = finalize(prefix .. stem) local hyphenated = prefix .. "-" .. stem if final_glide then result = vocalize_final_glide(result) hyphenated = vocalize_final_glide(hyphenated) end return result, hyphenated end local suffix_len = M.ustring.len(suffix) local prefix_len = M.ustring.len(prefix) local stem_chars = split_into_characters(stem) local stem_char_count = #stem_chars local effective_stem_char_count = stem_char_count if stem_chars[effective_stem_char_count] == "ʷ" then effective_stem_char_count = effective_stem_char_count - 1 end local ends_with_e_between_consonants = (effective_stem_char_count >= 3 and stem_chars[effective_stem_char_count - 2] == "e" and not is_vowel(stem_chars[effective_stem_char_count - 1]) and not is_vowel(stem_chars[effective_stem_char_count])) local protect_suffix_len = suffix_len if ends_with_e_between_consonants and suffix_len == 0 then protect_suffix_len = 2 end local prefixed_form = prefix .. skeleton .. suffix local stem_len = grapheme_len(skeleton) local has_vowel = stem_has_vowel(stem) local vowelless_stem = not has_vowel local with_schwas, stem_start, stem_end = insert_schwas(prefixed_form, protect_suffix_len, prefix_len, stem_len, vowelless_stem, nil, four_consonant_skip_index(skeleton, prefix_len)) local result = finalize(with_schwas) local hyphenated = hyphenate(with_schwas, prefix_len, stem_start, stem_end) if final_glide and suffix == "" then result = vocalize_final_glide(result) hyphenated = vocalize_final_glide(hyphenated) end return result, hyphenated end local function participle(stem) stem = expand_stem(stem, true) local skeleton = strip_schwas(stem) local first_char = M.ustring.sub(skeleton, 1, 1) local prefix = is_vowel(first_char) and "y" or "i" local participle_form = prefix .. skeleton .. "n" local stem_len = grapheme_len(skeleton) local has_vowel = stem_has_vowel(stem) local vowelless_stem = not has_vowel local with_schwas, stem_start, stem_end = insert_schwas(participle_form, 1, 1, stem_len, vowelless_stem, nil, four_consonant_skip_index(skeleton, 1)) return finalize(with_schwas), hyphenate(with_schwas, 1, stem_start, stem_end) end local function participle_dual(stem) stem = expand_stem(stem, true) local skeleton = strip_schwas(stem) local first_char = M.ustring.sub(skeleton, 1, 1) local prefix = is_vowel(first_char) and "y" or "i" local stem_len = grapheme_len(skeleton) local has_vowel = stem_has_vowel(stem) local vowelless_stem = not has_vowel local en_raw, en_start, en_end = insert_schwas(prefix .. skeleton .. "en", 2, 1, stem_len, vowelless_stem, nil, four_consonant_skip_index(skeleton, 1)) local an_raw, an_start, an_end = insert_schwas(prefix .. skeleton .. "an", 2, 1, stem_len, vowelless_stem, nil, four_consonant_skip_index(skeleton, 1)) local with_en, with_en_hyph = finalize(en_raw), hyphenate(en_raw, 1, en_start, en_end) local with_an, with_an_hyph = finalize(an_raw), hyphenate(an_raw, 1, an_start, an_end) return with_en, with_en_hyph, with_an, with_an_hyph end local function imperative_singular(stem) local final_glide = final_schwa_glide(stem) stem = expand_stem(stem, false) if has_geminate_echo(stem) then local result = finalize(stem) local hyphenated = finalize(stem) if final_glide then result = vocalize_final_glide(result) hyphenated = vocalize_final_glide(hyphenated) end return result, hyphenated end local skeleton = strip_schwas(stem) local stem_chars = split_into_characters(stem) local stem_char_count = #stem_chars local effective_stem_char_count = stem_char_count if stem_chars[effective_stem_char_count] == "ʷ" then effective_stem_char_count = effective_stem_char_count - 1 end local ends_with_e_between_consonants = (effective_stem_char_count >= 3 and stem_chars[effective_stem_char_count - 2] == "e" and not is_vowel(stem_chars[effective_stem_char_count - 1]) and not is_vowel(stem_chars[effective_stem_char_count])) local protect_suffix_len = ends_with_e_between_consonants and 2 or 0 local stem_len = grapheme_len(skeleton) local has_vowel = stem_has_vowel(stem) local vowelless_stem = not has_vowel local raw, stem_start, stem_end = insert_schwas(skeleton, protect_suffix_len, 0, stem_len, vowelless_stem, nil, four_consonant_skip_index(skeleton, 0)) local result = finalize(raw) local hyphenated = hyphenate(raw, 0, stem_start, stem_end) if final_glide then result = vocalize_final_glide(result) hyphenated = vocalize_final_glide(hyphenated) end return result, hyphenated end local function assimilate_before_suffix(skeleton) local len = M.ustring.len(skeleton) if len == 0 then return skeleton end local last = M.ustring.sub(skeleton, len, len) if last == "i" then return M.ustring.sub(skeleton, 1, len - 1) .. "y" elseif last == "u" then return M.ustring.sub(skeleton, 1, len - 1) .. "w" elseif last == "a" then return M.ustring.sub(skeleton, 1, len - 1) end return skeleton end -- Builds the -awet and -at variants. The imperative plural and the -- injunctive differ only in the n- prefix. local function suffixed_pair(stem, prefix) stem = expand_stem(stem, true) local skeleton = strip_schwas(stem) local vowelless_stem = not stem_has_vowel(stem) local assimilated = assimilate_before_suffix(skeleton) local prefix_len = M.ustring.len(prefix) local stem_len = grapheme_len(assimilated) local awet_raw, awet_start, awet_end = insert_schwas(prefix .. assimilated .. "awet", 4, prefix_len, stem_len, vowelless_stem, nil, four_consonant_skip_index(assimilated, prefix_len)) local at_raw, at_start, at_end = insert_schwas(prefix .. assimilated .. "at", 2, prefix_len, stem_len, vowelless_stem, nil, four_consonant_skip_index(assimilated, prefix_len)) local with_awet, with_awet_hyph = finalize(awet_raw), hyphenate(awet_raw, prefix_len, awet_start, awet_end) local with_at, with_at_hyph = finalize(at_raw), hyphenate(at_raw, prefix_len, at_start, at_end) with_awet_hyph = with_awet_hyph:gsub("t$", "ṯ") with_at_hyph = with_at_hyph:gsub("t$", "ṯ") return with_awet, with_awet_hyph, with_at, with_at_hyph end local function imperative_plural(stem) return suffixed_pair(stem, "") end local function injunctive(stem) return suffixed_pair(stem, "n") end local function insert_perfective_forms_by_type(forms, aorist_stem, verb_types, person_keys) for _, verb_type in ipairs(verb_types) do local stem_data = perfective_stem_data_by_type(aorist_stem, verb_type) for _, person_key in ipairs(person_keys) do local has_suffix = person_affixes[person_key].suffix ~= "" local stem = has_suffix and stem_data.suffixed_stem or stem_data.unsuffixed_stem insert_form_pair(forms, "perfective_" .. person_key, conjugate(stem, person_key)) end if stem_data.dual_participle then local with_en, with_en_hyph, with_an, with_an_hyph = participle_dual(stem_data.unsuffixed_stem) insert_form_pair(forms, "perfective_participle", with_en, with_en_hyph) insert_form_pair(forms, "perfective_participle", with_an, with_an_hyph) else insert_form_pair(forms, "perfective_participle", participle(stem_data.suffixed_stem)) end end end local function insert_literal_perfective_forms(forms, stems, person_keys) for _, stem in ipairs(stems) do local delabialized_stem = strip_labialization(stem) for _, person_key in ipairs(person_keys) do insert_form_pair(forms, "perfective_" .. person_key, conjugate(delabialized_stem, person_key)) end insert_form_pair(forms, "perfective_participle", participle(delabialized_stem)) end end -- Ordered; first match wins. One block per class: what it matches and what -- perfective it builds. local verb_classes = {} table.insert(verb_classes, { name = "ss-causative", matches = function(aorist_stem, is_causative) return is_causative == true end, -- A causative with u or i swaps them for a; with neither, the -- perfective is the aorist unchanged. derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, ss_causative_perfective_stems(aorist_stem) or { aorist_stem }, person_keys) end, }) do local function is_a_initial_verb(aorist_stem) return M.ustring.sub(aorist_stem, 1, 1) == "a" end -- The a becomes u. A verb that keeps it, or varies, says so with .perf:. local function a_initial_perfective_stems(aorist_stem) return { "u" .. M.ustring.sub(aorist_stem, 2) } end table.insert(verb_classes, { name = "a-initial", matches = function(aorist_stem) return is_a_initial_verb(aorist_stem) end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, a_initial_perfective_stems(aorist_stem), person_keys) end, }) end table.insert(verb_classes, { name = "cic", matches = function(aorist_stem) return shape_matches(aorist_stem, "cic") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, swapped_middle_vowel_perfective(aorist_stem), person_keys) end, }) do local function cicc_perfective_stems(aorist_stem) return { aorist_stem } end table.insert(verb_classes, { name = "cicc", matches = function(aorist_stem) return shape_matches(aorist_stem, "cicc") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, cicc_perfective_stems(aorist_stem), person_keys) end, }) end do local function ccic_perfective_stems(aorist_stem) return { aorist_stem } end table.insert(verb_classes, { name = "ccic", matches = function(aorist_stem) return shape_matches(aorist_stem, "ccic") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, ccic_perfective_stems(aorist_stem), person_keys) end, }) end do local function cuc_perfective_stems(aorist_stem) return { swap_middle_vowel_to_a(aorist_stem), aorist_stem } end table.insert(verb_classes, { name = "cuc", matches = function(aorist_stem) return shape_matches(aorist_stem, "cuc") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, cuc_perfective_stems(aorist_stem), person_keys) end, }) end do local function ccuc_perfective_stems(aorist_stem) return { aorist_stem } end table.insert(verb_classes, { -- Matches the geminate-initial shape Cuc, despite the name. name = "ccuc", matches = function(aorist_stem) return shape_matches(aorist_stem, "Cuc") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, ccuc_perfective_stems(aorist_stem), person_keys) end, }) end table.insert(verb_classes, { name = "ccu", matches = function(aorist_stem) return shape_matches(aorist_stem, "ccu") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, swapped_middle_vowel_perfective(aorist_stem), person_keys) end, }) do local function cu_perfective_stems(aorist_stem) return { swap_middle_vowel_to_a(aorist_stem) } end table.insert(verb_classes, { name = "Cu", matches = function(aorist_stem) return shape_matches(aorist_stem, "Cu") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, cu_perfective_stems(aorist_stem), person_keys) end, }) end do local function cci_geminate_perfective_stems(aorist_stem) return { swap_middle_vowel_to_a(aorist_stem) } end table.insert(verb_classes, { name = "cCi", matches = function(aorist_stem) return shape_matches(aorist_stem, "cCi") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, cci_geminate_perfective_stems(aorist_stem), person_keys) end, }) end do local function cci_perfective_stems(aorist_stem) return { aorist_stem } end table.insert(verb_classes, { name = "cci", matches = function(aorist_stem) return shape_matches(aorist_stem, "cci") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, cci_perfective_stems(aorist_stem), person_keys) end, }) end table.insert(verb_classes, { name = "caci", matches = function(aorist_stem) return shape_matches(aorist_stem, "caci") end, derive = function(aorist_stem, person_keys, forms) insert_literal_perfective_forms(forms, caci_perfective_stems(aorist_stem), person_keys) end, }) table.insert(verb_classes, { -- nes is type 2 and meḏ type 3 on the same skeleton, so the shape -- cannot pick: a cc verb joins this class only once .type: says -- which. A C shape defaults to type 2. name = "cc/C", matches = function(aorist_stem, _is_causative, stated_types) if is_cc_verb(aorist_stem) then return stated_types ~= nil and #stated_types > 0 end return is_C_verb(aorist_stem) end, derive = function(aorist_stem, person_keys, forms, stated_types) local verb_types = stated_types if not verb_types or #verb_types == 0 then verb_types = { 2 } end insert_perfective_forms_by_type(forms, aorist_stem, verb_types, person_keys) end, }) local function derive(context) local accented_aorist = context.accented local accented_imperfective = context.head or "" local accented_imperative = context.imp or {} local is_causative = context.caus or page_facts(context.pagename).causative local forms = {} local stated_perfective = context.perf local matched_class = nil for _, class in ipairs(verb_classes) do if class.matches(accented_aorist, is_causative, context.types) then matched_class = class break end end if stated_perfective then -- .perf: replaces the class's perfective derivation, not the class: -- the table and the category still come from the match. insert_literal_perfective_forms(forms, stated_perfective, person_keys) elseif matched_class then matched_class.derive(accented_aorist, person_keys, forms, context.types) else local delabialized_stem = strip_labialization(accented_aorist) for _, person_key in ipairs(person_keys) do insert_form_pair(forms, "perfective_" .. person_key, conjugate(delabialized_stem, person_key)) end insert_form_pair(forms, "perfective_participle", participle(delabialized_stem)) end local stems = { { name = "aorist", stem = accented_aorist }, { name = "imperfective", stem = accented_imperfective }, } for _, stem_entry in ipairs(stems) do if stem_entry.stem ~= "" then local use_echo = stem_entry.name == "aorist" and is_causative_initial_u(stem_entry.stem, is_causative) local echo_stem = use_echo and causative_echo_stem(stem_entry.stem) or nil for _, person_key in ipairs(person_keys) do local stem_for_person = stem_entry.stem if use_echo and aorist_unsuffixed_persons[person_key] then stem_for_person = echo_stem end insert_form_pair(forms, stem_entry.name .. "_" .. person_key, conjugate(stem_for_person, person_key)) end insert_form_pair(forms, stem_entry.name .. "_participle", participle(stem_entry.stem)) end end local imp_stems, skip_imperative = imperative_from(accented_aorist, accented_imperative, false) if accented_aorist ~= "" and not skip_imperative then for _, imp_stem in ipairs(imp_stems) do insert_form_pair(forms, "imperative_sg", imperative_singular(imp_stem)) local imp_pl_awet, imp_pl_awet_hyph, imp_pl_at, imp_pl_at_hyph = imperative_plural(imp_stem) insert_form_pair(forms, "imperative_pl", imp_pl_awet, imp_pl_awet_hyph) insert_form_pair(forms, "imperative_pl", imp_pl_at, imp_pl_at_hyph) end end if accented_aorist ~= "" then local inj_awet, inj_awet_hyph, inj_at, inj_at_hyph = injunctive(accented_aorist) insert_form_pair(forms, "inj", inj_awet, inj_awet_hyph) insert_form_pair(forms, "inj", inj_at, inj_at_hyph) end local class = matched_class and matched_class.name or "default" local class_desc = class if matched_class and matched_class.name == "cc/C" then local types = context.types if types and #types > 0 then class_desc = ("cc/C type %s"):format(table.concat(types, ", ")) end end return forms, { class = class, class_desc = class_desc, stem_slot_prefix = "imperfective_", } end -- The imperative singular is the citation form, but only where the module -- derived it. A verb whose imperative is suppletive states it, and stating -- it is not evidence about the lemma: ddu takes ndu and stays ddu. local function citation_lemma_from_forms(forms, fallback, imperative_stated) local imperative_sg = forms.imperative_sg if not imperative_stated and imperative_sg and imperative_sg[1] and imperative_sg[1].form ~= "" then return imperative_sg[1].form end if fallback and fallback ~= "" then return fallback end end local participle_rows = [=[ ! colspan="2" class="outer" | ! class="outer" | အဝ်ရေတ် ! class="outer" | မဍိုက်ပေၚ် ! class="outer" | ဟွံဍိုက်ပေၚ် |- ! colspan="2" class="outer" | လုပ်ကၠောန်စွံလဝ် | {aorist_participle} | {perfective_participle} | {imperfective_participle} ]=] local main_rows = [=[ |- ! colspan="2" class="outer" | ! colspan="3" class="outer" | ကိုန်ဨကဝုစ် ! class="separator" rowspan="999" | ! colspan="3" class="outer" | ကိုန်ဗဟုဝစ် |- ! colspan="2" class="outer" | ! 1<sup>st</sup> person ! 2<sup>nd</sup> person ! 3<sup>rd</sup> person ! 1<sup>st</sup> person ! 2<sup>nd</sup> person ! 3<sup>rd</sup> person |- ! rowspan="2" class="outer" | အဝ်ရေတ် ! {g_m} | rowspan="2" | {aorist_sg1} | rowspan="2" | {aorist_sg2} | {aorist_sg3m} | rowspan="2" | {aorist_pl1} | rowspan="2" | {aorist_pl2} | rowspan="2" | {aorist_pl3} |- ! {g_f} | {aorist_sg3f} |- ! rowspan="2" class="outer" | မဍိုက်ပေၚ် ! {g_m} | rowspan="2" | {perfective_sg1} | rowspan="2" | {perfective_sg2} | {perfective_sg3m} | rowspan="2" | {perfective_pl1} | rowspan="2" | {perfective_pl2} | rowspan="2" | {perfective_pl3} |- ! {g_f} | {perfective_sg3f} |- ! rowspan="2" class="outer" | ဟွံဍိုက်ပေၚ် ! {g_m} | rowspan="2" | {imperfective_sg1} | rowspan="2" | {imperfective_sg2} | {imperfective_sg3m} | rowspan="2" | {imperfective_pl1} | rowspan="2" | {imperfective_pl2} | rowspan="2" | {imperfective_pl3} |- ! {g_f} | {imperfective_sg3f} |- ! class="separator" colspan="999" | |- ! rowspan="2" class="outer" | ပါဲဗလေတ်ဟွံဗၠး ! {g_m} | class="secondary" rowspan="2" | | rowspan="2" | {imperative_sg} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | rowspan="2" | {imperative_pl} | class="secondary" rowspan="2" | |- ! {g_f} |- ! class="separator" colspan="999" | |- ! rowspan="2" class="outer" | ပရေၚ်အသံ ! {g_m} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | | rowspan="2" | {inj} | class="secondary" rowspan="2" | | class="secondary" rowspan="2" | |- ! {g_f} ]=] local function make_table(forms, notes, helpers) local function table_top() return helpers.make_top{ title = "-", palette = "red" } end return table_top() .. helpers.format_rows(participle_rows, forms) .. helpers.make_bottom{} .. table_top() .. helpers.format_rows(main_rows, forms) .. helpers.make_bottom{ notes = notes } end PARADIGMS.ber = { code = "ber", label = "Berber-morphology", category = " ", appendix = ":en:Appendix:Ghomara verbs#Berber-morphology verbs", slot_list = slot_list, derive = derive, citation_lemma_from_forms = citation_lemma_from_forms, make_table = make_table, } end --[==[ The spec's named fields `where` is the text of the error a field gets on a verb it does not apply to; `applies` decides. Rejected outright, as Module:parameters rejects an unknown parameter. `applies` takes the paradigm code and the class. The class is not known until an engine has derived, so a field that turns on it is checked in the second pass, in get_forms. ]==] local INDICATORS = { ["imp"] = { value = true, where = "any verb; the imperative is otherwise built from the stem", applies = function() return true end }, -- Where a verb's class cannot derive its perfective stem, the spec says it. ["perf"] = { value = true, where = "a Berber-morphology verb", applies = function(code) return code == "ber" end }, ["type"] = { value = true, where = "a Berber-morphology verb of cc or C shape", applies = function(code) return code == "ber" end }, ["caus"] = { flag = true, where = "a Berber-morphology verb", -- Arabic has no causative stem for the flag to force. applies = function(code) return code == "ber" end }, } --[==[ Spec parsing ]==] local ESCAPED_COMMA = "\1" local ESCAPED_PERIOD = "\2" local function split_groups(segments, splitchar) for i, segment in ipairs(segments) do segment = segment:gsub("\\,", ESCAPED_COMMA) segments[i] = segment:gsub("\\%.", ESCAPED_PERIOD) end local groups = M.put.split_alternating_runs_and_strip_spaces(segments, splitchar) for _, group in ipairs(groups) do for i, segment in ipairs(group) do segment = segment:gsub(ESCAPED_COMMA, ",") group[i] = segment:gsub(ESCAPED_PERIOD, ".") end end return groups end -- Bracketed footnotes trailing a group, e.g. the {"[rare]", ""} in -- {"ttaddu", "[rare]", ""}. local function fetch_footnotes(group, parse_err) local footnotes for i = 2, #group - 1, 2 do if group[i + 1] ~= "" then parse_err("Extraneous text after bracketed footnotes: '" .. table.concat(group) .. "'") end footnotes = footnotes or {} table.insert(footnotes, group[i]) end return footnotes end local function slot_set_for(paradigm) if not paradigm.slot_set then local slots = {} for _, pair in ipairs(paradigm.slot_list) do slots[pair[1]] = true end paradigm.slot_set = slots end return paradigm.slot_set end local function slot_list_for_err(paradigm) local names = {} for _, pair in ipairs(paradigm.slot_list) do table.insert(names, "'" .. pair[1] .. "'") end return table.concat(names, ", ") end -- SLOT[+SLOT2]:VALUE[:VALUE2], each value optionally carrying footnotes. A -- single value of "-" deletes the slot. local function parse_override(group, paradigm, parse_err) local colon_groups = M.put.split_alternating_runs_and_strip_spaces(group, ":") if colon_groups[1][2] then parse_err(("Footnotes not allowed directly on slot override '%s'; put them on the value after the colon") :format(colon_groups[1][1])) end if not colon_groups[2] then parse_err(("Slot override '%s' needs a value"):format(colon_groups[1][1])) end local slots = {} local valid = slot_set_for(paradigm) for slot in colon_groups[1][1]:gmatch("[^+]+") do if not valid[slot] then parse_err(("Unrecognized slot '%s' in override; %s has %s") :format(slot, paradigm.code, slot_list_for_err(paradigm))) end table.insert(slots, slot) end local specs = {} for i = 2, #colon_groups do local value = colon_groups[i][1] if value == "" then parse_err(("Empty value in slot override '%s'"):format(table.concat(group))) end table.insert(specs, { form = value, footnotes = fetch_footnotes(colon_groups[i], parse_err) }) end return slots, specs end local function parse_spec(spec, pagename) if type(spec) ~= "string" or spec == "" then error("Missing inflection spec as the first parameter") end -- Angle brackets are optional: there is no lemma text for them to delimit, -- since the lemma comes from the page name. local inner = spec if spec:find("^<") or spec:find(">$") then inner = spec:match("^<(.*)>$") if not inner then error("Unbalanced angle brackets in inflection spec: " .. spec) end end local function parse_err(msg) error(msg .. ": <" .. inner .. ">") end local groups = split_groups(M.put.parse_balanced_segment_run(inner, "[", "]"), "%.") if not groups[1] or groups[1][1] == "" and not groups[1][2] then parse_err("Empty inflection spec") end local head_group = M.put.split_alternating_runs_and_strip_spaces(groups[1], ":") local code = head_group[1][1] if head_group[1][2] then parse_err(("Footnotes not allowed on the paradigm '%s'; put them on the head or use addnote"):format(code)) end -- Several stems are written the way slot overrides write their variants, -- <ber:ttuṯu:ttiṯu>, and each carries its own footnotes. local heads = {} for index = 2, #head_group do local value = head_group[index][1] if value == "" then parse_err("Empty head value") end table.insert(heads, { form = value, footnotes = fetch_footnotes(head_group[index], parse_err), }) end -- {{gho-conj|ar:VII}} etc.: the augment class is written where a stem -- override normally goes, but it isn't one -- it never feeds a stem, only -- schwa placement. Recognized only as the first head and only when it -- carries no footnotes of its own (a footnoted "VII" is presumably an -- actual, if unlikely, stem spelling someone means literally). local augment_class = nil if code == "ar" and heads[1] and not heads[1].footnotes and AR_AUGMENT_CLASSES[heads[1].form] then augment_class = heads[1].form table.remove(heads, 1) end local parsed = { code = code, heads = heads, -- What wants a single head reads the first stem. head = heads[1] and heads[1].form or "", head_footnotes = heads[1] and heads[1].footnotes or nil, augment_class = augment_class, fields = {}, field_values = {}, seen_fields = {}, overrides = {}, addnotes = {}, footnotes = nil, } -- Fields first, paradigm second: slot names can only be validated once the -- paradigm is known. local deferred = {} for i = 2, #groups do local group = groups[i] local part = group[1] local name = part:match("^([^:]+)") or part local indicator = INDICATORS[name] if part == "" then -- A bare [footnote] group: applies to every form. if not group[2] then parse_err("Blank field; only allowed carrying footnotes") end parsed.footnotes = fetch_footnotes(group, parse_err) elseif part == "addnote" then table.insert(deferred, { kind = "addnote", group = group }) elseif indicator and indicator.flag and part == name then if group[2] then parse_err(("Footnotes not allowed on '%s'"):format(part)) end parsed.fields[name] = true table.insert(parsed.seen_fields, name) elseif indicator and indicator.value and part:find(":") then local colon_groups = M.put.split_alternating_runs_and_strip_spaces(group, ":") -- A field may state variants the way an override does, .perf:a:b. local values = {} for index = 2, #colon_groups do if colon_groups[index][2] then parse_err(("Footnotes not allowed on '%s'; use addnote or a slot override"):format(name)) end local value = colon_groups[index][1] if value == "" then parse_err(("Field '%s' needs a value"):format(name)) end table.insert(values, value) end if #values > 1 then for _, value in ipairs(values) do if value == "-" then parse_err(("Field '%s' cannot combine - with another value"):format(name)) end end end parsed.fields[name] = values[1] parsed.field_values[name] = values table.insert(parsed.seen_fields, name) elseif table.concat(group):find(":") then -- Whole group, not `part`: a footnote on the slot name pushes the -- colon into a later segment. table.insert(deferred, { kind = "override", group = group }) else parse_err(("Unrecognized field '%s'"):format(table.concat(group))) end end local paradigm = PARADIGMS[code] if not paradigm then local names = {} for name in pairs(PARADIGMS) do table.insert(names, "'" .. name .. "'") end table.sort(names) parse_err(("Unrecognized paradigm '%s'; expected %s"):format(code, table.concat(names, ", "))) end parsed.paradigm = paradigm -- A field that means nothing to this paradigm is an error, not a no-op. for _, name in ipairs(parsed.seen_fields) do local indicator = INDICATORS[name] if indicator.applies and not indicator.applies(code, nil) then parse_err(("'%s' applies to %s; '%s' is %s") :format(name, indicator.where, pagename, paradigm.label)) end end for _, item in ipairs(deferred) do if item.kind == "override" then local slots, specs = parse_override(item.group, paradigm, parse_err) for _, slot in ipairs(slots) do parsed.overrides[slot] = specs end else local spec_and_footnotes = fetch_footnotes(item.group, parse_err) if not spec_and_footnotes or #spec_and_footnotes < 2 then parse_err("addnote should be of the form addnote[SLOT,SLOT2][FOOTNOTE][FOOTNOTE...]") end local slot_spec = table.remove(spec_and_footnotes, 1):match("^%[(.*)%]$") local slots = {} local valid = slot_set_for(paradigm) for raw_slot in slot_spec:gmatch("[^,]+") do local slot = raw_slot:match("^%s*(.-)%s*$") if not valid[slot] then parse_err(("Unrecognized slot '%s' in addnote; %s has %s") :format(slot, paradigm.code, slot_list_for_err(paradigm))) end table.insert(slots, slot) end table.insert(parsed.addnotes, { slots = slots, footnotes = spec_and_footnotes }) end end return parsed end --[==[ Entry points ]==] local conj_params = { [1] = {}, t = true, id = true, pagename = true, json = { type = "boolean" }, } local lang local function get_lang() if not lang then lang = M.languages.getByCode("gho") end return lang end function export.process_conj_args(args) return M.parameters.process(args, conj_params) end -- The accented spelling comes from {{gho-IPA}} on the page, falling back to the -- page name; the link spelling is that with the accents stripped. local function context_for(pagename, parsed, accented, head) return { pagename = pagename, accented = accented, accented_stem = accented, stem = strip_accents(accented), head = head, imp = parsed.field_values.imp or {}, caus = parsed.fields.caus or false, perf = parsed.field_values.perf, augment_class = parsed.augment_class, types = parsed.fields.type and (function() local list = {} for part in parsed.fields.type:gmatch("[^,]+") do table.insert(list, tonumber(part:match("^%s*(.-)%s*$"))) end return list end)() or nil, } end -- Every (accented stem, head) pair: two spellings and two stems is four. local VARIANT_LIMIT = 8 local function variants_for(pagename, parsed, parse_err) local accented = page_facts(pagename).ipa_all if not accented or #accented == 0 then accented = { pagename } end local heads = {} for _, head in ipairs(parsed.heads) do table.insert(heads, head) end -- No head at all still conjugates: the engines read "" as "not given". if #heads == 0 then heads = { { form = "" } } end if #accented * #heads > VARIANT_LIMIT then parse_err(("%d accented spellings and %d stems is %d conjugations; %d is the limit") :format(#accented, #heads, #accented * #heads, VARIANT_LIMIT)) end local pairs_out = {} for _, one in ipairs(accented) do for _, head in ipairs(heads) do table.insert(pairs_out, { accented = one, head = head }) end end return pairs_out end -- One form table out of several. Grouping is on the accent-stripped spelling, -- so bnu and ḇnu are one form carrying two respellings rather than two -- identical-looking rows; the pipe between them is what the accelerator reads. -- Footnotes are unioned, since a variant may be marked rare. local function merge_variant_forms(tables) if #tables == 1 then return tables[1] end local merged = {} for _, forms in pairs(tables) do for slot, formobjs in pairs(forms) do for _, formobj in ipairs(formobjs) do local existing for _, candidate in ipairs(merged[slot] or {}) do if candidate.form == formobj.form then existing = candidate break end end if existing then local accented = formobj.accented_form or formobj.form local seen = false for spelling in existing.accented_form:gmatch("[^|]+") do if spelling == accented then seen = true break end end if not seen then existing.accented_form = existing.accented_form .. "|" .. accented end if formobj.footnotes then add_footnotes({ [slot] = { existing } }, slot, formobj.footnotes) end else merged[slot] = merged[slot] or {} table.insert(merged[slot], { form = formobj.form, accented_form = formobj.accented_form or formobj.form, footnotes = formobj.footnotes, }) end end end end return merged end function export.get_forms(args) local pagename = args.pagename or mw.title.getCurrentTitle().text local parsed = parse_spec(args[1], pagename) local paradigm = parsed.paradigm local function parse_err(msg) error(msg .. ": <" .. tostring(args[1]) .. ">") end -- The first variant names the class, the stem and the accented stem. local derived, info = {}, nil for _, variant in ipairs(variants_for(pagename, parsed, parse_err)) do local variant_forms, variant_info = paradigm.derive(context_for(pagename, parsed, variant.accented, variant.head.form)) if variant.head.footnotes then for _, pair in ipairs(paradigm.slot_list) do local prefix = (variant_info or {}).stem_slot_prefix if not prefix or pair[1]:sub(1, #prefix) == prefix then add_footnotes(variant_forms, pair[1], variant.head.footnotes) end end end table.insert(derived, variant_forms) info = info or variant_info end local forms = merge_variant_forms(derived) info = info or {} -- The class exists only now, so the fields that turn on it are checked here. for _, name in ipairs(parsed.seen_fields) do local indicator = INDICATORS[name] if indicator.applies and not indicator.applies(parsed.code, info.class) then error(("'%s' applies to %s; '%s' is %s"):format( name, indicator.where, pagename, info.class_desc or info.class or paradigm.label)) end end -- Slot overrides replace the derived forms outright; "-" deletes the slot. for slot, specs in pairs(parsed.overrides) do forms[slot] = nil for _, spec in ipairs(specs) do if spec.form ~= "-" then insert_form_pair(forms, slot, spec.form, nil, spec.footnotes) end end end for _, pair in ipairs(paradigm.slot_list) do local slot = pair[1] if parsed.footnotes then add_footnotes(forms, slot, parsed.footnotes) end end for _, addnote in ipairs(parsed.addnotes) do for _, slot in ipairs(addnote.slots) do add_footnotes(forms, slot, addnote.footnotes) end end -- The first variant's spelling, matching the class reported above. local first = variants_for(pagename, parsed, error)[1] local context = context_for(pagename, parsed, first.accented, first.head.form) return { paradigm = paradigm.code, slot_list = paradigm.slot_list, class = info.class, class_desc = info.class_desc or info.class, stem = context.stem, accented_stem = context.accented_stem or context.stem, lemma = paradigm.citation_lemma_from_forms(forms, context.stem, (parsed.fields.imp ~= nil) or (parsed.overrides.imperative_sg ~= nil)), id = args.id, t = args.t, forms = forms, } end -- |json=1| output: the data table minus slot_list, which is a property of the -- paradigm rather than of this word. local function json_payload(data) return { paradigm = data.paradigm, class = data.class, stem = data.stem, accented_stem = data.accented_stem, lemma = data.lemma, id = data.id, t = data.t, forms = data.forms, } end local function show_forms(data, args) local pagename = args.pagename or mw.title.getCurrentTitle().text M.iut.show_forms(data.forms, { lang = get_lang(), lemmas = { { form = data.lemma or pagename } }, slot_list = data.slot_list, transform_accel_obj = function(_slot, form_object, accel_object) if accel_object then accel_object.form = "verb-form-ipa(" .. (form_object.accented_form or form_object.form) .. ")-+" .. pagename end return accel_object end, }) end local function categories_for(data) return { PARADIGMS[data.paradigm].category } end function export.show(frame) local parent_args = frame:getParent().args if parent_args[1] == nil and frame.args[1] ~= nil then parent_args = frame.args end local args = export.process_conj_args(parent_args) local data = export.get_forms(args) if args.json then return M.JSON.toJSON(json_payload(data)) end local paradigm = PARADIGMS[data.paradigm] local pagename = args.pagename or mw.title.getCurrentTitle().text show_forms(data, args) local label = paradigm.appendix and ("[[" .. paradigm.appendix .. "|" .. paradigm.label .. "]]") or paradigm.label local box_title = "Conjugation of " .. M.links.full_link({ lang = get_lang(), term = pagename, show_decorations = true, }, "term", false) .. " (" .. label .. ")" return M.inflection_table.make_box_top{ title = box_title, flow = "vertical", category = "conjugation", } .. "\n" .. paradigm.make_table(data.forms, data.forms.footnote, table_helpers) .. "\n" .. M.inflection_table.make_bottom{} .. M.utilities.format_categories(categories_for(data), get_lang(), nil, nil, force_cat) end return export fspde0wjiumth4xqqp7w4tapflx1caq ထာမ်ပလိက်:tez-head/documentation 10 299396 402274 2026-10-01T06:35:09Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "{{documentation subpage}} {{uses lua|Module:ber-headword}} This template makes the headword line for Tetserret entries. Put the part of speech in {{para|1}}; the other parameters you can use depend on it. ==Parameters== ;{{para|1|req=1}} : The part of speech, singular or plural, spelled out or abbreviated: {{cd|n}} for noun, {{cd|v}} for verb, {{cd|adj}} for adjective. [[Template:head#Part of speech]] lists the abbre..." 402274 wikitext text/x-wiki {{documentation subpage}} {{uses lua|Module:ber-headword}} This template makes the headword line for Tetserret entries. Put the part of speech in {{para|1}}; the other parameters you can use depend on it. ==Parameters== ;{{para|1|req=1}} : The part of speech, singular or plural, spelled out or abbreviated: {{cd|n}} for noun, {{cd|v}} for verb, {{cd|adj}} for adjective. [[Template:head#Part of speech]] lists the abbreviations. ;{{para|head}} : The headword, if it differs from the page name. Separate several headwords with commas, with no space after the comma. Each can take a transliteration with {{cd|<tr:...>}}. ;{{para|tr}} : The transliteration of a headword that is not in Latin script. ;{{para|g}} : The gender: <code>m</code>, <code>f</code>, <code>mf</code>, <code>mfbysense</code> or <code>p</code> (plural only), several separated by commas. Without it, nouns, proper nouns, numerals and pronouns show <code>?</code>, collective nouns show <code>m</code> and singulative nouns show <code>f</code>. ;{{para|id}}, {{para|sort}}, {{para|cat}}, {{para|nolink}}, {{para|var}} : These work as in [[Module:headword utilities]]. {{para|cat}} takes categories without the language name, separated by commas. Form parameters such as {{para|pl}} take one or more forms, separated by commas with no space after the comma. A form can carry inline modifiers: {{cd|<tr:...>}} for a transliteration, {{cd|<g:...>}} for a gender, {{cd|<q:...>}} and {{cd|<qq:...>}} for a qualifier before or after it, {{cd|<l:...>}} and {{cd|<ll:...>}} for labels before or after it, and {{cd|<ref:...>}} for references. To put a comma with no space after it inside a form, write <code>\,</code>. Most forms also have an annexed-state parameter, which is the form's name followed by <code>annex</code>. {{para|plannex}} gives the annexed state of the plural, and {{para|annex}} by itself gives the annexed state of the headword. ==Parts of speech with extra parameters== {| class="wikitable" ! {{para|1}} !! Parameters |- | <code>noun</code>, <code>proper noun</code> || {{para|annex}}, {{para|d}} dual, {{para|pl}} plural (<code>-</code> if there is none, <code>-</code> followed by forms for "usually no plural", <code>?</code> if it is unknown), {{para|dim}} diminutive, {{para|aug}} augmentative, {{para|f}} female equivalent, {{para|m}} male equivalent, each with its annexed state ({{para|dannex}}, {{para|plannex}} and so on) |- | <code>collective noun</code> || {{para|sing}} singulative, feminine unless {{cd|<g:...>}} gives another gender; {{para|annex}}, {{para|pl}}, {{para|plannex}}, {{para|dim}}, {{para|dimannex}} |- | <code>singulative noun</code> || {{para|coll}} collective, masculine unless {{cd|<g:...>}} gives another gender; {{para|annex}}, {{para|pl}}, {{para|plannex}}, {{para|dim}}, {{para|dimannex}} |- | <code>adjective</code> || {{para|annex}}, {{para|f}} feminine, {{para|pl}} masculine plural, {{para|fpl}} feminine plural, {{para|cpl}} common plural, {{para|dim}} diminutive, each with its annexed state |- | <code>active participle</code>, <code>passive participle</code> || {{para|annex}}, {{para|f}} feminine, {{para|pl}} masculine plural, {{para|fpl}} feminine plural, {{para|cpl}} common plural, each with its annexed state |- | <code>adverb</code> || {{para|annex}}, {{para|d}} dual |- | <code>numeral</code>, <code>particle</code> || {{para|annex}}, {{para|f}} feminine, {{para|fannex}} |- | <code>pronoun</code> || {{para|annex}}, {{para|pl}} plural, {{para|plannex}}, {{para|f}} feminine, {{para|fannex}} |- | <code>verb</code> || {{para|aorist}}, {{para|pret}} perfective, {{para|negpret}} negative perfective, {{para|cont}} imperfective, {{para|vn}} verbal noun, {{para|ap}} active participle, {{para|pp}} passive participle |} Other parts of speech, such as <code>letter</code>, <code>noun form</code>, <code>preposition</code> and <code>conjunction</code>, take only the parameters listed above the table. ==Examples== {{demo|<nowiki>{{tez-head|noun|pagename=afagan}}</nowiki>}} {{tcat|headword}} sd709m3rnq3g4jgft973l5s939p0sc3 ကဏ္ဍ:ထာမ်ပလိက်ထေတ်သေရေတ်လာၚ်က္ဍိုပ်မအရေဝ်ဂမၠိုၚ် 14 299397 402275 2026-10-01T06:37:41Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[ကဏ္ဍ:ထာမ်ပလိက်ထေတ်သေရေတ်ဂမၠိုၚ်]][[ကဏ္ဍ:လာၚ်က္ဍိုပ်မအရေဝ်ဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]]" 402275 wikitext text/x-wiki [[ကဏ္ဍ:ထာမ်ပလိက်ထေတ်သေရေတ်ဂမၠိုၚ်]][[ကဏ္ဍ:လာၚ်က္ဍိုပ်မအရေဝ်ဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]] cit771lk2vxtyy3v5pagwqecqdfiuub ကဏ္ဍ:ထာမ်ပလိက်ထေတ်သေရေတ်ဂမၠိုၚ် 14 299398 402276 2026-10-01T06:38:42Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[ကဏ္ဍ:ဘာသာထေတ်သေရေတ်]][[ကဏ္ဍ:ထာမ်ပလိက်ဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]]" 402276 wikitext text/x-wiki [[ကဏ္ဍ:ဘာသာထေတ်သေရေတ်]][[ကဏ္ဍ:ထာမ်ပလိက်ဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]] sc0s78kouveonbimcmzmr1e1h1jhlq3 ကဏ္ဍ:နာမ်ထေတ်သေရေတ်ဂမၠိုၚ် 14 299399 402278 2026-10-01T07:01:26Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » :..." 402278 wikitext text/x-wiki [[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » [[:ကဏ္ဍ:ဝေါဟာအဓိကထေတ်သေရေတ်ဂမၠိုၚ်|ဝေါဟာတံသ္ဇိုၚ်]] » '''နာမ်ဂမၠိုၚ်''' :ဝေါဟာထေတ်သေရေတ်ပွမစၞောန်ထ္ၜးပူဂဵုအတေံ၊ မက္တဵုဒှ်ဂမၠိုၚ်၊ ဌာန်ဒတန်ဂမၠိုၚ်၊ ဥပပါတ်ဂမၠိုၚ်၊ ကဆံၚ်ဂုန်သတ္တိ ဝါ ကိုန်စဳရေၚ်ဂမၠိုၚ်။ [[ကဏ္ဍ:ဘာသာထေတ်သေရေတ်]][[ကဏ္ဍ:နာမ်ဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]] cj3syefts8vzy8n5s4qeb2sapvdlci3 ကဏ္ဍ:ဝေါဟာအဓိကထေတ်သေရေတ်ဂမၠိုၚ် 14 299400 402279 2026-10-01T07:03:09Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » '''..." 402279 wikitext text/x-wiki [[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » '''ဝေါဟာတံသ္ဇိုၚ်ဂမၠိုၚ်''' :ဝေါဟာတံသ္ဇိုၚ်ဘာသာထေတ်သေရေတ်၊ ကဏ္ဍနူကဵုမပါ်ပရံဒကုတ်မဆေၚ်စပ်ကဵုမအရေဝ်ဝေါဟာ။ [[ကဏ္ဍ:ဘာသာထေတ်သေရေတ်]][[ကဏ္ဍ:ဝေါဟာအဓိကဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]] e0jv1h4irk6cvp6kp68jdg43yqxun1l ကဏ္ဍ:နာမ်ပုလ္လိၚ်ထေတ်သေရေတ်ဂမၠိုၚ် 14 299401 402280 2026-10-01T07:06:31Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » :..." 402280 wikitext text/x-wiki [[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » [[:ကဏ္ဍ:ဝေါဟာအဓိကထေတ်သေရေတ်ဂမၠိုၚ်|ဝေါဟာတံသ္ဇိုၚ်]] » [[:ကဏ္ဍ:နာမ်ထေတ်သေရေတ်ဂမၠိုၚ်|နာမ်ဂမၠိုၚ်]] » [[:ကဏ္ဍ:နာမ်ထေတ်သေရေတ်ဗက်အလိုက်လိၚ်ဂမၠိုၚ်|ဗက်အလိုက်လိၚ်ဂမၠိုၚ်]] »'''ပုလ္လိၚ်ဂမၠိုၚ်''' :နာမ်ထေတ်သေရေတ်မဆေၚ်စပ်ကဵုလိၚ်တြုံ၊ ဥပမာ ဆေၚ်စပ်ကဵုကဏ္ဍလုပ်အဝေါၚ်လိၚ်အတေံ (အကြာတၞဟ်ခြာအရာမွဲမွဲအဂှ်) မက္တဵုဒှ်ပုလ္လိၚ်ဂမၠိုၚ်။ [[ကဏ္ဍ:နာမ်ထေတ်သေရေတ်ဗက်အလိုက်လိၚ်ဂမၠိုၚ်|ပ]][[ကဏ္ဍ:နာမ်ပုလ္လိၚ်ဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]] 5j4f08ejtw7bu4xflb2iq57n9zo8iwi ကဏ္ဍ:နာမ်ထေတ်သေရေတ်ဗက်အလိုက်လိၚ်ဂမၠိုၚ် 14 299402 402281 2026-10-01T07:08:15Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "[[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » :..." 402281 wikitext text/x-wiki [[:ကဏ္ဍ:ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်|ဒၞာဲလုပ်အဝေါၚ်ကဵုပၟိက်]] » [[:ကဏ္ဍ:အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်|အရေဝ်ဘာသာအိုတ်သီုဂမၠိုၚ်]] » [[:ကဏ္ဍ:ဘာသာထေတ်သေရေတ်|ထေတ်သေရေတ်]] » [[:ကဏ္ဍ:ဝေါဟာအဓိကထေတ်သေရေတ်ဂမၠိုၚ်|ဝေါဟာတံသ္ဇိုၚ်]] » [[:ကဏ္ဍ:နာမ်ထေတ်သေရေတ်ဂမၠိုၚ်|နာမ်ဂမၠိုၚ်]] »'''ဗက်အလိုက်လိၚ်ဂမၠိုၚ်''' :နာမ်ထေတ်သေရေတ်မဂကောံလဝ်နူကဵုဆေၚ်စပ်ကဵုလိၚ်ပွမတုဲဒှ်နကဵုအတေံ။ [[ကဏ္ဍ:နာမ်ထေတ်သေရေတ်ဂမၠိုၚ်]][[ကဏ္ဍ:နာမ်နူကဵုလိၚ်ဗက်အလိုက်အရေဝ်ဘာသာဂမၠိုၚ်|ထ]] 6dscqf6mbwtg0oscjuts5zufssf15ui afacer 0 299403 402282 2026-10-01T07:19:17Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "==အေက်သတဝ်ရေန်== ===ဗွဟ်ရမ္သာၚ်=== {{ast-pr}} ===ကြိယာ=== {{head|ast|verb}} # သကဵုဆက်တောဲစုတ်၊ သကဵုဂတ်တိုန်။ # သကဵုမရပ်စပ်ကေတ်နကဵု။ ==ဂၠဳသဳယျာန်== ===နိရုတ်=== ဝေါဟာကၠုၚ်နူ {{inh|gl|roa-opt|afazer}} ===..." 402282 wikitext text/x-wiki ==အေက်သတဝ်ရေန်== ===ဗွဟ်ရမ္သာၚ်=== {{ast-pr}} ===ကြိယာ=== {{head|ast|verb}} # သကဵုဆက်တောဲစုတ်၊ သကဵုဂတ်တိုန်။ # သကဵုမရပ်စပ်ကေတ်နကဵု။ ==ဂၠဳသဳယျာန်== ===နိရုတ်=== ဝေါဟာကၠုၚ်နူ {{inh|gl|roa-opt|afazer}} ===ဗွဟ်ရမ္သာၚ်=== * {{IPA|gl|[afaˈθeɾ]|[afaˈseɾ]|q2=western}} ===ကြိယာ=== {{gl-verb}} # သကဵုကေၚ်မံၚ်၊ ပြုပြေၚ်မကလိတ်ကလောတ်၊ သကဵုမရပ်စပ်ကေတ်နကဵု။ #: {{syn|gl|acostumar|adaptar|axeitar}} # သကဵုဒးရး။ # သကဵုဂတ်တိုန်။ ====သမ္ဗန္ဓ==== {{gl-conj}} d7keygpqfzy0ukf00pfxru7uvg2ddsn ထာမ်ပလိက်:gl-conj 10 299404 402283 2026-10-01T07:20:15Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "{{#invoke:gl-verb|show}}<noinclude>{{documentation}}</noinclude>" 402283 wikitext text/x-wiki {{#invoke:gl-verb|show}}<noinclude>{{documentation}}</noinclude> 4sgddmd1v7bad1qkgoagxitqn3mq8vd ထာမ်ပလိက်:gl-conj/documentation 10 299405 402284 2026-10-01T07:24:50Z 咽頭べさ 33 ခၞံကၠောန်လဝ် မုက်လိက် နကု "{{documentation subpage}} This template generates a navigation box for [[:ကဏ္ဍ:ကြိယာဂၠဳသဳယျာန်ဂမၠိုၚ်|Galician verb]] conjugation entries. The actual work is done by [[Module:gl-verb]]. ==Usage== This template should be added to all Galician verb entries. The template should be placed within the Galician language section, immediately following the '''Conjugation'''..." 402284 wikitext text/x-wiki {{documentation subpage}} This template generates a navigation box for [[:ကဏ္ဍ:ကြိယာဂၠဳသဳယျာန်ဂမၠိုၚ်|Galician verb]] conjugation entries. The actual work is done by [[Module:gl-verb]]. ==Usage== This template should be added to all Galician verb entries. The template should be placed within the Galician language section, immediately following the '''Conjugation''' L4 language header. As with other Wiktionary navigation box templates, '''please do not use <code>subst:</code>'''. ===Parameters=== The template uses one unnamed parameter to specify any information not automatically inferrable from the infinitive form. ==Examples== '''( 1 )''' {{m|gl|cantar||to sing}} :<code><nowiki>{{gl-conj}}</nowiki></code> {{gl-conj|pagename=cantar}} '''NOTE:''' For most verbs, no parameters are needed. ---- '''( 2 )''' {{m|gl|ser||to be}} :<code><nowiki>{{gl-conj}}</nowiki></code> {{gl-conj|pagename=ser}} '''NOTE:''' The module knows how to handle all irregular verbs automatically, including prefixed derivatives such as {{m|gl|desfacer}} (from {{m|gl|facer}}) and {{m|gl|abster}} (from {{m|gl|ter}}). ---- '''( 3 )''' {{m|gl|desfacer||to undo}} :<code><nowiki>{{gl-conj}}</nowiki></code> {{gl-conj|pagename=desfacer}} '''NOTE:''' Example of a prefixed verb handled automatically. ---- '''( 4 )''' {{m|gl|continuar||to continue}} :<code><nowiki>{{gl-conj}}</nowiki></code> {{gl-conj|pagename=continuar}} '''NOTE:''' The alternation between ''-uar'' and stressed ''-úo'' is predictable, hence automatic. ---- '''( 5 )''' {{m|gl|conseguir||to get, to manage}} :<code><nowiki>{{gl-conj|<i-e>}}</nowiki></code> {{gl-conj|<i-e>|pagename=conseguir}} '''NOTE:''' The vowel alternation between ''conseguir'', ''consigo'' and ''consegue'' is unpredictable, hence a vowel alternation indicator <code><i-e></code> must be given. In general, indicators are contained between angle brackets, and if more than one must be given, they are separated by periods/full stops (a <code>.</code> symbol). Note however that the consonant alternation between ''-g-'' and ''-gu-'' is predictable, hence automatic. ---- '''( 6 )''' {{m|gl|espiar||to spy; to peek}} :<code><nowiki>{{gl-conj|<í>}}</nowiki></code> {{gl-conj|<í>|pagename=espiar}} '''NOTE:''' Unlike for verbs in ''-uar'', the alternation between ''i'' and ''í'' in verbs in ''-iar'' (e.g. ''espiar'' vs. ''eu espío'') is unpredictable and occurs only in some verbs (contrast {{m|gl|odiar||to hate}} with ''eu odio''), so must be given explicitly using <code><í></code>. ---- '''( 7 )''' {{m|gl|axuizar||to indict; to judge}} :<code><nowiki>{{gl-conj|<í>}}</nowiki></code> {{gl-conj|<í>|pagename=axuizar}} '''NOTE:''' The same indicator <code><í></code> is also used when the alternation between ''i'' and ''í'' occurs within the stem (''axuizar'' vs. ''eu axuízo''). Note that the consonant alternation between ''-z-'' and ''-c-'' is predictable, hence automatic. ---- '''( 8 )''' {{m|gl|amiudar||to frequent}} :<code><nowiki>{{gl-conj|<ú>}}</nowiki></code> {{gl-conj|<ú>|pagename=amiudar}} '''NOTE:''' This is the parallel situation to {{m|gl|axuizar}} with a ''u''-''ú'' alternation occurring within the stem (''amiudar'' vs. ''eu amiúdo''). ---- '''( 9 )''' {{m|gl|abolir||to abolish}} :<code><nowiki>{{gl-conj|<no_pres_stressed>}}</nowiki></code> {{gl-conj|<no_pres_stressed>|pagename=abolir}} '''NOTE:''' This verb is defective, missing all stem-stressed forms in the present indicative and imperative (as well as the entire present subjunctive). This is specified using the indicator <code><no_pres_stressed></code>. ---- '''( 10 )''' {{m|gl|concernir||to concern, to be of interest to}} :<code><nowiki>{{gl-conj|<i.only3sp>}}</nowiki></code> {{gl-conj|<i.only3sp>|pagename=concernir}} '''NOTE:''' This verb occurs only in the third person (singular and plural) and has an alternation between ''i'' in all stressed forms and ''e'' in all unstressed forms. The latter is specified using the indicator <code><nowiki><i></nowiki></code> and the former using <code><only3sp></code>. When multiple indicators occur, separate them by a period/full stop (<code>.</code>). ---- '''( 11 )''' {{m|gl|chover a cántaros||to [[rain cats and dogs]]}} :<code><nowiki>{{gl-conj|chover<only3s> [[a]] [[cántaro]]s}}</nowiki></code> {{gl-conj|chover<only3s> [[a]] [[cántaro]]s}} '''NOTE:''' Full support is available for multiword expressions. Put the angle-bracket spec after the verb or verbs needing to be conjugated. Remaining text is passed through unaltered, and can include links, as shown. Here, the indicator <code>only3s</code> specifies an impersonal ("only third-singular") verb. ---- '''( 12 )''' {{m|gl|dar de comer||to [[feed]]|lit=to give to eat}} :<code><nowiki>{{gl-conj}}</nowiki></code> {{gl-conj|pagename=dar de comer}} '''NOTE:''' In a multiword expression where no indicators are needed and all words can be linked directly, {{para|1}} can be omitted. This is equivalent to placing <code><></code> after the first word, and all remaining words are automatically linked. ---- '''( 13 )''' {{m|gl|arrepentirse||to [[regret]], to [[repent]]}} :<code><nowiki>{{gl-conj|<i>}}</nowiki></code> {{gl-conj|<i>|pagename=arrepentirse}} '''NOTE:''' Support exists for reflexive verbs. Nothing special needs to be done. Here, the <code><nowiki><i></nowiki></code> indicator specifies that stressed ''e'' becomes ''i'' (''eu arrepíntome'', ''el arrepíntese''). ---- '''( 14 )''' {{m|gl|rever||to go stale, to turn sour}} :<code><nowiki>{{gl-conj|<no_built_in>}}</nowiki></code> {{gl-conj|<no_built_in>|pagename=rever}} '''NOTE:''' The verb {{m|gl|rever}} has two different meanings and two conjugations, one following the regular ''-er'' conjugation and the other ("to see again") following the conjugation of {{m|gl|ver||to see}}. The default here is to use the irregular conjugation; to disable this and use the regular conjugation, use <code><no_built_in></code>. ---- '''( 15 )''' {{m|gl|bendicir||to bless}} :<code><nowiki>{{gl-conj|((<>,<no_built_in>))}}</nowiki></code> {{gl-conj|((<>,<no_built_in>))|pagename=bendicir}} '''NOTE:''' The verb {{m|gl|bendicir}} has two conjugations, one following the regular ''-ir'' conjugation and the other following the conjugation of {{m|gl|dicir||to say}}. As with {{m|gl|rever}} above, the default is to use the irregular conjugation. Here, we use the syntax <code>((<var>infl1</var>,<var>infl2</var>))</code> to request two different conjugations, in this case one regular and one irregular. <includeonly> [[ကဏ္ဍ:ထာမ်ပလိက်ဂၠဳသဳယျာန်အပြံၚ်အလှာဲပ္တဝ်ထ္ၜးပမာဏကြိယာဂမၠိုၚ်|*]] </includeonly> ful72hwmi7beyx6adfxxkcucmi7kxmi