backend/compat_checker_data.py
Rama master · réplica de lectura del repositorio original.
"""Language-code data sets used by compat_checker.
Extracted from compat_checker.py to keep the checker module focused on
logic rather than large static data blocks. All sets are module-level
constants with no dependencies beyond the Python standard library.
"""
# ---------------------------------------------------------------------------
# Common ISO 639 language codes (hardcoded reasonable subset).
# _ISO_639_1 — two-letter codes (en, de, pt, ...)
# _ISO_639_2 — three-letter codes (eng, deu, por, ...)
# ---------------------------------------------------------------------------
_ISO_639_1 = {
"aa",
"ab",
"af",
"am",
"an",
"ar",
"as",
"az",
"ba",
"be",
"bg",
"bn",
"bo",
"br",
"bs",
"ca",
"ce",
"co",
"cs",
"cy",
"da",
"de",
"el",
"en",
"eo",
"es",
"et",
"eu",
"fa",
"fi",
"fo",
"fr",
"fy",
"ga",
"gd",
"gl",
"gu",
"ha",
"he",
"hi",
"hr",
"hu",
"hy",
"id",
"is",
"it",
"ja",
"jv",
"ka",
"kk",
"km",
"kn",
"ko",
"ku",
"ky",
"la",
"lb",
"lo",
"lt",
"lv",
"mg",
"mi",
"mk",
"ml",
"mn",
"mr",
"ms",
"mt",
"my",
"nb",
"ne",
"nl",
"nn",
"no",
"pa",
"pl",
"ps",
"pt",
"rm",
"ro",
"ru",
"rw",
"sa",
"sd",
"si",
"sk",
"sl",
"so",
"sq",
"sr",
"sv",
"sw",
"ta",
"te",
"tg",
"th",
"ti",
"tk",
"tl",
"tr",
"tt",
"ug",
"uk",
"ur",
"uz",
"vi",
"wo",
"yi",
"zh",
"zu",
}
_ISO_639_2 = {
"aar",
"abk",
"afr",
"aka",
"amh",
"ara",
"arg",
"asm",
"aze",
"bak",
"bel",
"ben",
"bih",
"bos",
"bre",
"bul",
"cat",
"ces",
"chi",
"cos",
"cze",
"dan",
"deu",
"dut",
"ell",
"eng",
"epo",
"est",
"eus",
"fas",
"fin",
"fra",
"fre",
"fry",
"geo",
"ger",
"gla",
"gle",
"glg",
"gre",
"guj",
"hat",
"hau",
"hbs",
"heb",
"hin",
"hrv",
"hun",
"hye",
"ice",
"iku",
"ind",
"isl",
"ita",
"jav",
"jpn",
"kal",
"kan",
"kat",
"kaz",
"khm",
"kin",
"kor",
"kur",
"lao",
"lat",
"lav",
"lit",
"ltz",
"mac",
"mal",
"mar",
"mkd",
"mlg",
"mlt",
"mon",
"mri",
"msa",
"may",
"mya",
"nep",
"nld",
"nno",
"nob",
"nor",
"pan",
"per",
"pol",
"por",
"pus",
"que",
"roh",
"ron",
"rum",
"run",
"rus",
"san",
"sin",
"slk",
"slo",
"slv",
"snd",
"som",
"spa",
"sqi",
"srp",
"swa",
"swe",
"tam",
"tel",
"tgk",
"tha",
"tir",
"tur",
"tuk",
"uig",
"ukr",
"urd",
"uzb",
"vie",
"vol",
"wel",
"wol",
"yid",
"yor",
"zho",
"zul",
}
# ---------------------------------------------------------------------------
# English names for common languages — Kodi accepts these as substitutes for
# ISO 639 codes in subtitle filenames (e.g. "Movie.English.srt").
# ---------------------------------------------------------------------------
_LANGUAGE_NAMES = {
"afrikaans",
"albanian",
"arabic",
"armenian",
"azerbaijani",
"basque",
"belarusian",
"bengali",
"bosnian",
"breton",
"bulgarian",
"catalan",
"chinese",
"croatian",
"czech",
"danish",
"dutch",
"english",
"esperanto",
"estonian",
"finnish",
"french",
"galician",
"georgian",
"german",
"greek",
"hebrew",
"hindi",
"hungarian",
"icelandic",
"indonesian",
"irish",
"italian",
"japanese",
"kazakh",
"korean",
"kurdish",
"latvian",
"lithuanian",
"luxembourgish",
"macedonian",
"malay",
"malayalam",
"maltese",
"mongolian",
"nepali",
"norwegian",
"persian",
"polish",
"portuguese",
"romanian",
"russian",
"serbian",
"slovak",
"slovenian",
"spanish",
"swahili",
"swedish",
"tamil",
"telugu",
"thai",
"turkish",
"ukrainian",
"urdu",
"uzbek",
"vietnamese",
"welsh",
}