Module:Lang/data

Revision as of 12:23, 6 January 2018 by Admin (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

local lang_data = {};


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

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

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

local override = { -- ISO 639-1 codes ["de-at"] = {"Austrian German"}, -- these code-region and code-variant to match en.wiki article names ["de-ch"] = {"Swiss German"}, ["en-au"] = {"Australian English"}, ["en-ca"] = {"Canadian English"}, ["en-emodeng"] = {"Early Modern English"}, ["en-gb"] = {"British English"}, ["en-ie"] = {"Irish English"}, ["en-nz"] = {"New Zealand English"}, ["en-us"] = {"American English"}, ["en-za"] = {"South African English"}, ['fy'] = {'West Frisian'}, -- IANA name is Western Frisian ['ps'] = {'Pashto'}, -- IANA name is Pushto ["sr-Cyrl"] = {"Serbian"}, -- override wp_languages {"Serbian Cyrillic"}; to achieve this, use |label=

-- ISO 639-2, -3 codes ['arc'] = {'Aramaic'}, -- to match en.wiki article title ["bat"] = {"Baltic"}, -- ISO 639-2 collective ["cel"] = {"Celtic languages"}, -- ISO 639-2 collective; override wp_languages improper redefinition ('Proto-Celtic'); use cel-x-proto instead ["chu"] = {"Church Slavonic"}, -- to match en.wiki article title ["egy"] = {"Ancient Egyptian"}, -- IANA name is Egyptian (Ancient); distinguish from contemporary arz: Egyptian Arabic ["fan"] = {"Fang"}, -- IANA name is Fang (Equatorial Guinea); disambiguation from fak: Fang (Camaroon) ['frr'] = {'North Frisian'}, -- IANA name is Northern Frisian ['frs'] = {'East Frisian Low Saxon'}, -- IANA name is Eastern Frisian ["gem"] = {"Germanic languages"}, -- ISO 639-2 collective; override wp_languages improper redefinition ('Proto-Germanic'); use gem-x-proto instead ['jam'] = {'Jamaican Patois'}, -- IANA name is Jamaican Creole English ['mhr'] = {'Meadow Mari'}, -- IANA name is Eastern Mari ['mid'] = {'Modern Mandaic'}, -- IANA name is Mandaic ['mla'] = {'Tamambo'}, -- wp_languages name is Medieval Latin; IANA and ISO 639-1 name is Malo ['nrf'] = {'Norman'}, -- not quite a collective - IANA name: Jèrriais; categorizes to Norman-language text ['roa'] = {'Romance'}, -- collective; overrides roa (Jèrriais) in the wp language table; IANA name is "Romance languages" ['sem'] = {'other Semitic'}, -- ISO 639-2 collective; this text used to fit pre-existing: Category:Articles containing other Semitic-language text ['stq'] = {'Saterland Frisian'}, -- IANA name is Saterfriesisch ["tmr"] = {"Jewish Babylonian Aramaic"}, -- ISO 639-3 name is Jewish Babylonian Aramaic (ca. 200-1200 CE) ['und'] = {'undetermined'}, -- capitalization to match existing category ['wrg'] = {'Warrongo'}, -- IANA name is Warungu ["xal-ru"] = {"Kalmyk"}, -- to match en.wiki article title

-- private use codes ["cel-x-proto"] = {"Proto-Celtic"}, -- cel in IANA is Celtic languages ["gem-x-proto"] = {"Proto-Germanic"}, -- gem in IANA is Germanic languages ['grc-x-aeolic'] = {'Aeolic Greek'}, -- these grc-x-... codes are preferred alternates to the non-standard catchall code grc-gre ['grc-x-attic'] = {'Attic Greek'}, ['grc-x-biblical'] = {'Biblical Greek'}, ['grc-x-byzant'] = {'Byzantine Greek'}, ['grc-x-classic'] = {'Classical Greek'}, ['grc-x-doric'] = {'Doric Greek'}, ['grc-x-hellen'] = {'Hellenistic Greek'}, ['grc-x-ionic'] = {'Ionic Greek'}, ['grc-x-koine'] = {'Koinē Greek'}, ['grc-x-medieval'] = {'Medieval Greek'}, ['grc-x-patris'] = {'Patristic Greek'}, ['yuf-x-hav'] = {'Havasupai'}, -- IANA name for these three is Havasupai-Walapai-Yavapai ['yuf-x-wal'] = {'Walapai'}, ['yuf-x-yav'] = {'Yavapai'}, }


--[=[-------------------------< R T L _ S C R I P T S >--------------------------------------------------------

ISO 15924 scripts that are written right-to-left. Data in this table taken from ISO 15924#List of codes

last update to this list: 2017-12-24

]=]

local rtl_scripts = { 'adlm', 'arab', 'aran', 'armi', 'avst', 'cprt', 'egyd', 'egyh', 'hatr', 'hebr', 'hung', 'inds', 'khar', 'lydi', 'mand', 'mani', 'mend', 'merc', 'mero', 'narb', 'nbat', 'nkoo', 'orkh', 'palm', 'phli', 'phlp', 'phlv', 'phnx', 'prti', 'rohg', 'samr', 'sarb', 'sogd', 'sogo', 'syrc', 'syre', 'syrj', 'syrn', 'thaa', 'wole', };

local is_rtl_script = require("Module:Table").listToSet(rtl_scripts)


--[[--------------------------< T R A N S L I T T I T L E S >------------------------------------------------

This is a table of tables of transliteration standards and the language codes or language scripts that apply to those standards. This table is used to create the tool-tip text associated with the transliterated text displayed by some of the Template:Lang-?? templates.

These tables are more-or-less copied directly from {{{2}}}. The standard 'NO_STD' is a construct to allow for the cases when no |std= parameter value is provided.

]]

local translit_title_table = { ['ISO'] = { -- when a transliteration standard is supplied ['ab'] = 'ISO 9 Cyrillic', ['ba'] = 'ISO 9 Cyrillic', ['be'] = 'ISO 9 Cyrillic', ['bg'] = 'ISO 9 Cyrillic', ['kk'] = 'ISO 9 Cyrillic', ['ky'] = 'ISO 9 Cyrillic', ['mn'] = 'ISO 9 Cyrillic', ['ru'] = 'ISO 9 Cyrillic', ['tg'] = 'ISO 9 Cyrillic', ['uk'] = 'ISO 9 Cyrillic', ['bua'] = 'ISO 9 Cyrillic', ['sah'] = 'ISO 9 Cyrillic', ['tut'] = 'ISO 9 Cyrillic', ['xal'] = 'ISO 9 Cyrillic', ['cyrl'] = 'ISO 9 Cyrillic',

['ar'] = 'ISO 233 Arabic', ['ku'] = 'ISO 233 Arabic', ['ps'] = 'ISO 233 Arabic', ['ug'] = 'ISO 233 Arabic', ['ur'] = 'ISO 233 Arabic', ['arab'] = 'ISO 233 Arabic',

['he'] = 'ISO 259 Hebrew', ['yi'] = 'ISO 259 Hebrew', ['hebr'] = 'ISO 259 Hebrew',

['el'] = 'ISO 843 Greek', ['grc'] = 'ISO 843 Greek',

['ja'] = 'ISO 3602 Japanese', ['hira'] = 'ISO 3602 Japanese', ['hrkt'] = 'ISO 3602 Japanese', ['jpan'] = 'ISO 3602 Japanese', ['kana'] = 'ISO 3602 Japanese',

['zh'] = 'ISO 7098 Chinese', ['chi'] = 'ISO 7098 Chinese', ['pny'] = 'ISO 7098 Chinese', ['zho'] = 'ISO 7098 Chinese', -- ['han'] = 'ISO 7098 Chinese', -- unicode alias of Hani? doesn't belong here? should be Hani? ['hans'] = 'ISO 7098 Chinese', ['hant'] = 'ISO 7098 Chinese',

['ka'] = 'ISO 9984 Georgian', ['kat'] = 'ISO 9984 Georgian',

['arm'] = 'ISO 9985 Armenian', ['hy'] = 'ISO 9985 Armenian',

['th'] = 'ISO 11940 Thai', ['tha'] = 'ISO 11940 Thai',

['ko'] = 'ISO 11941 Korean', ['kor'] = 'ISO 11941 Korean',

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

['default'] = 'ISO transliteration', },

['DIN'] = { ['ar'] = 'DIN 31635 Arabic', ['fa'] = 'DIN 31635 Arabic', ['ku'] = 'DIN 31635 Arabic', ['ps'] = 'DIN 31635 Arabic', ['tg'] = 'DIN 31635 Arabic', ['ug'] = 'DIN 31635 Arabic', ['ur'] = 'DIN 31635 Arabic', ['arab'] = 'DIN 31635 Arabic',

['default'] = 'DIN transliteration', },

['IAST'] = { ['default'] = 'International Alphabet of Sanskrit Transliteration', },

['ALA'] = { ['default'] = 'American Library Association – Library of Congress transliteration', },

['ALA-LC'] = { ['default'] = 'American Library Association – Library of Congress transliteration', },

['NO_STD'] = { -- when no transliteration standard is supplied ['akk'] = 'Semitic transliteration', ['sem'] = 'Semitic transliteration', ['phnx'] = 'Semitic transliteration', ['xsux'] = 'Cuneiform transliteration', }, };


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