зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1738422 - Part 5: Update language tag mappings. r=platform-i18n-reviewers,dminor
Update language tag mappings by running `./make_intl_data.py langtags core.zip`. The direct invocation `./make_intl_data.py langtags` doesn't work, because "https://unicode.org/Public/cldr/40/core.zip" was incorrectly generated and contains another "core.zip" file within "core.zip". Depends on D129926 Differential Revision: https://phabricator.services.mozilla.com/D129927
This commit is contained in:
Родитель
365533a053
Коммит
1c1c5bd5f9
|
@ -1,6 +1,6 @@
|
|||
// Generated by make_intl_data.py. DO NOT EDIT.
|
||||
// Version: CLDR-39
|
||||
// URL: https://unicode.org/Public/cldr/39/core.zip
|
||||
// Version: CLDR-40
|
||||
// URL: https://unicode.org/Public/cldr/40/core.zip
|
||||
|
||||
#include "mozilla/Assertions.h"
|
||||
#include "mozilla/Span.h"
|
||||
|
@ -99,8 +99,8 @@ static bool IsCanonicallyCasedTransformType(mozilla::Span<const char> type) {
|
|||
#endif
|
||||
|
||||
// Mappings from language subtags to preferred values.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::languageMapping(LanguageSubtag& language) {
|
||||
MOZ_ASSERT(IsStructurallyValidLanguageTag(language.span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedLanguageTag(language.span()));
|
||||
|
@ -121,91 +121,91 @@ bool mozilla::intl::Locale::languageMapping(LanguageSubtag& language) {
|
|||
}
|
||||
|
||||
if (language.length() == 3) {
|
||||
static const char languages[401][4] = {
|
||||
static const char languages[404][4] = {
|
||||
"aam", "aar", "abk", "adp", "afr", "agp", "ais", "aju", "aka", "alb",
|
||||
"als", "amh", "ara", "arb", "arg", "arm", "asd", "asm", "aue", "ava",
|
||||
"ave", "aym", "ayr", "ayx", "aze", "azj", "bak", "bam", "baq", "baz",
|
||||
"bcc", "bcl", "bel", "ben", "bgm", "bhk", "bih", "bis", "bjd", "bjq",
|
||||
"bkb", "bod", "bos", "bre", "btb", "bul", "bur", "bxk", "bxr", "cat",
|
||||
"ccq", "ces", "cha", "che", "chi", "chu", "chv", "cjr", "cka", "cld",
|
||||
"cmk", "cmn", "cor", "cos", "coy", "cqu", "cre", "cwd", "cym", "cze",
|
||||
"daf", "dan", "dap", "deu", "dgo", "dhd", "dik", "diq", "dit", "div",
|
||||
"djl", "dkl", "drh", "drr", "dud", "duj", "dut", "dwl", "dzo", "ekk",
|
||||
"ell", "elp", "emk", "eng", "epo", "esk", "est", "eus", "ewe", "fao",
|
||||
"fas", "fat", "fij", "fin", "fra", "fre", "fry", "fuc", "ful", "gav",
|
||||
"gaz", "gbc", "gbo", "geo", "ger", "gfx", "ggn", "ggo", "ggr", "gio",
|
||||
"gla", "gle", "glg", "gli", "glv", "gno", "gre", "grn", "gti", "gug",
|
||||
"guj", "guv", "gya", "hat", "hau", "hdn", "hea", "heb", "her", "him",
|
||||
"hin", "hmo", "hrr", "hrv", "hun", "hye", "ibi", "ibo", "ice", "ido",
|
||||
"iii", "ike", "iku", "ile", "ill", "ilw", "ina", "ind", "ipk", "isl",
|
||||
"ita", "izi", "jar", "jav", "jeg", "jpn", "kal", "kan", "kas", "kat",
|
||||
"kau", "kaz", "kdv", "kgc", "kgd", "kgh", "khk", "khm", "kik", "kin",
|
||||
"kir", "kmr", "knc", "kng", "knn", "koj", "kom", "kon", "kor", "kpp",
|
||||
"kpv", "krm", "ktr", "kua", "kur", "kvs", "kwq", "kxe", "kxl", "kzh",
|
||||
"kzj", "kzt", "lao", "lat", "lav", "lbk", "leg", "lii", "lim", "lin",
|
||||
"lit", "llo", "lmm", "ltz", "lub", "lug", "lvs", "mac", "mah", "mal",
|
||||
"mao", "mar", "may", "meg", "mgx", "mhr", "mkd", "mlg", "mlt", "mnk",
|
||||
"mnt", "mof", "mol", "mon", "mri", "msa", "mst", "mup", "mwd", "mwj",
|
||||
"mya", "myd", "myt", "nad", "nau", "nav", "nbf", "nbl", "nbx", "ncp",
|
||||
"nde", "ndo", "nep", "nld", "nln", "nlr", "nno", "nns", "nnx", "nob",
|
||||
"noo", "nor", "npi", "nts", "nxu", "nya", "oci", "ojg", "oji", "ori",
|
||||
"orm", "ory", "oss", "oun", "pan", "pbu", "pcr", "per", "pes", "pli",
|
||||
"plt", "pmc", "pmu", "pnb", "pol", "por", "ppa", "ppr", "pry", "pus",
|
||||
"puz", "que", "quz", "rmr", "rmy", "roh", "ron", "rum", "run", "rus",
|
||||
"sag", "san", "sap", "sca", "scc", "scr", "sgl", "sin", "skk", "slk",
|
||||
"slo", "slv", "sme", "smo", "sna", "snd", "som", "sot", "spa", "spy",
|
||||
"sqi", "src", "srd", "srp", "ssw", "sul", "sum", "sun", "swa", "swe",
|
||||
"swh", "tah", "tam", "tat", "tdu", "tel", "tgg", "tgk", "tgl", "tha",
|
||||
"thc", "thw", "thx", "tib", "tid", "tie", "tir", "tkk", "tlw", "tmp",
|
||||
"tne", "ton", "tsf", "tsn", "tso", "ttq", "tuk", "tur", "twi", "uig",
|
||||
"ukr", "umu", "unp", "uok", "urd", "uzb", "uzn", "ven", "vie", "vol",
|
||||
"wel", "wgw", "wit", "wiw", "wln", "wol", "xba", "xho", "xia", "xkh",
|
||||
"xpe", "xrq", "xsj", "xsl", "ybd", "ydd", "yen", "yid", "yiy", "yma",
|
||||
"ymt", "yor", "yos", "yuu", "zai", "zha", "zho", "zir", "zsm", "zul",
|
||||
"zyb",
|
||||
"bcc", "bcl", "bel", "ben", "bgm", "bhk", "bic", "bih", "bis", "bjd",
|
||||
"bjq", "bkb", "blg", "bod", "bos", "bre", "btb", "bul", "bur", "bxk",
|
||||
"bxr", "cat", "ccq", "ces", "cha", "che", "chi", "chu", "chv", "cjr",
|
||||
"cka", "cld", "cmk", "cmn", "cor", "cos", "coy", "cqu", "cre", "cwd",
|
||||
"cym", "cze", "daf", "dan", "dap", "deu", "dgo", "dhd", "dik", "diq",
|
||||
"dit", "div", "djl", "dkl", "drh", "drr", "dud", "duj", "dut", "dwl",
|
||||
"dzo", "ekk", "ell", "elp", "emk", "eng", "epo", "esk", "est", "eus",
|
||||
"ewe", "fao", "fas", "fat", "fij", "fin", "fra", "fre", "fry", "fuc",
|
||||
"ful", "gav", "gaz", "gbc", "gbo", "geo", "ger", "gfx", "ggn", "ggo",
|
||||
"ggr", "gio", "gla", "gle", "glg", "gli", "glv", "gno", "gre", "grn",
|
||||
"gti", "gug", "guj", "guv", "gya", "hat", "hau", "hdn", "hea", "heb",
|
||||
"her", "him", "hin", "hmo", "hrr", "hrv", "hun", "hye", "ibi", "ibo",
|
||||
"ice", "ido", "iii", "ike", "iku", "ile", "ill", "ilw", "ina", "ind",
|
||||
"ipk", "isl", "ita", "izi", "jar", "jav", "jeg", "jpn", "kal", "kan",
|
||||
"kas", "kat", "kau", "kaz", "kdv", "kgc", "kgd", "kgh", "khk", "khm",
|
||||
"kik", "kin", "kir", "kmr", "knc", "kng", "knn", "koj", "kom", "kon",
|
||||
"kor", "kpp", "kpv", "krm", "ktr", "kua", "kur", "kvs", "kwq", "kxe",
|
||||
"kxl", "kzh", "kzj", "kzt", "lao", "lat", "lav", "lbk", "leg", "lii",
|
||||
"lim", "lin", "lit", "llo", "lmm", "ltz", "lub", "lug", "lvs", "mac",
|
||||
"mah", "mal", "mao", "mar", "may", "meg", "mgx", "mhr", "mkd", "mlg",
|
||||
"mlt", "mnk", "mnt", "mof", "mol", "mon", "mri", "msa", "mst", "mup",
|
||||
"mwd", "mwj", "mya", "myd", "myt", "nad", "nau", "nav", "nbf", "nbl",
|
||||
"nbx", "ncp", "nde", "ndo", "nep", "nld", "nln", "nlr", "nno", "nns",
|
||||
"nnx", "nob", "noo", "nor", "npi", "nts", "nxu", "nya", "oci", "ojg",
|
||||
"oji", "ori", "orm", "ory", "oss", "oun", "pan", "pat", "pbu", "pcr",
|
||||
"per", "pes", "pli", "plt", "pmc", "pmu", "pnb", "pol", "por", "ppa",
|
||||
"ppr", "pry", "pus", "puz", "que", "quz", "rmr", "rmy", "roh", "ron",
|
||||
"rum", "run", "rus", "sag", "san", "sap", "sca", "scc", "scr", "sgl",
|
||||
"sin", "skk", "slk", "slo", "slv", "sme", "smo", "sna", "snd", "som",
|
||||
"sot", "spa", "spy", "sqi", "src", "srd", "srp", "ssw", "sul", "sum",
|
||||
"sun", "swa", "swe", "swh", "tah", "tam", "tat", "tdu", "tel", "tgg",
|
||||
"tgk", "tgl", "tha", "thc", "thw", "thx", "tib", "tid", "tie", "tir",
|
||||
"tkk", "tlw", "tmp", "tne", "ton", "tsf", "tsn", "tso", "ttq", "tuk",
|
||||
"tur", "twi", "uig", "ukr", "umu", "unp", "uok", "urd", "uzb", "uzn",
|
||||
"ven", "vie", "vol", "wel", "wgw", "wit", "wiw", "wln", "wol", "xba",
|
||||
"xho", "xia", "xkh", "xpe", "xrq", "xsj", "xsl", "ybd", "ydd", "yen",
|
||||
"yid", "yiy", "yma", "ymt", "yor", "yos", "yuu", "zai", "zha", "zho",
|
||||
"zir", "zsm", "zul", "zyb",
|
||||
};
|
||||
static const char* aliases[401] = {
|
||||
static const char* aliases[404] = {
|
||||
"aas", "aa", "ab", "dz", "af", "apf", "ami", "jrb", "ak", "sq",
|
||||
"sq", "am", "ar", "ar", "an", "hy", "snz", "as", "ktz", "av",
|
||||
"ae", "ay", "ay", "nun", "az", "az", "ba", "bm", "eu", "nvo",
|
||||
"bal", "bik", "be", "bn", "bcg", "fbl", "bho", "bi", "drl", "bzc",
|
||||
"ebk", "bo", "bs", "br", "beb", "bg", "my", "luy", "bua", "ca",
|
||||
"rki", "cs", "ch", "ce", "zh", "cu", "cv", "mom", "cmr", "syr",
|
||||
"xch", "zh", "kw", "co", "pij", "quh", "cr", "cr", "cy", "cs",
|
||||
"dnj", "da", "njz", "de", "doi", "mwr", "din", "zza", "dif", "dv",
|
||||
"dze", "aqd", "mn", "kzk", "uth", "dwu", "nl", "dbt", "dz", "et",
|
||||
"el", "amq", "man", "en", "eo", "ik", "et", "eu", "ee", "fo",
|
||||
"fa", "ak", "fj", "fi", "fr", "fr", "fy", "ff", "ff", "dev",
|
||||
"om", "wny", "grb", "ka", "de", "vaj", "gvr", "esg", "gtu", "aou",
|
||||
"gd", "ga", "gl", "kzk", "gv", "gon", "el", "gn", "nyc", "gn",
|
||||
"gu", "duz", "gba", "ht", "ha", "hai", "hmn", "he", "hz", "srx",
|
||||
"hi", "ho", "jal", "hr", "hu", "hy", "opa", "ig", "is", "io",
|
||||
"ii", "iu", "iu", "ie", "ilm", "gal", "ia", "id", "ik", "is",
|
||||
"it", "eza", "jgk", "jv", "oyb", "ja", "kl", "kn", "ks", "ka",
|
||||
"kr", "kk", "zkd", "tdf", "ncq", "kml", "mn", "km", "ki", "rw",
|
||||
"ky", "ku", "kr", "kg", "kok", "kwv", "kv", "kg", "ko", "jkm",
|
||||
"kv", "bmf", "dtp", "kj", "ku", "gdj", "yam", "tvd", "kru", "dgl",
|
||||
"dtp", "dtp", "lo", "la", "lv", "bnc", "enl", "raq", "li", "ln",
|
||||
"lt", "ngt", "rmx", "lb", "lu", "lg", "lv", "mk", "mh", "ml",
|
||||
"mi", "mr", "ms", "cir", "jbk", "chm", "mk", "mg", "mt", "man",
|
||||
"wnn", "xnt", "ro", "mn", "mi", "ms", "mry", "raj", "dmw", "vaj",
|
||||
"my", "aog", "mry", "xny", "na", "nv", "nru", "nr", "ekc", "kdz",
|
||||
"nd", "ng", "ne", "nl", "azd", "nrk", "nn", "nbr", "ngv", "nb",
|
||||
"dtd", "no", "ne", "pij", "bpp", "ny", "oc", "oj", "oj", "or",
|
||||
"om", "or", "os", "vaj", "pa", "ps", "adx", "fa", "fa", "pi",
|
||||
"mg", "huw", "phr", "lah", "pl", "pt", "bfy", "lcq", "prt", "ps",
|
||||
"pub", "qu", "qu", "emx", "rom", "rm", "ro", "ro", "rn", "ru",
|
||||
"sg", "sa", "aqt", "hle", "sr", "hr", "isk", "si", "oyb", "sk",
|
||||
"sk", "sl", "se", "sm", "sn", "sd", "so", "st", "es", "kln",
|
||||
"sq", "sc", "sc", "sr", "ss", "sgd", "ulw", "su", "sw", "sv",
|
||||
"sw", "ty", "ta", "tt", "dtp", "te", "bjp", "tg", "fil", "th",
|
||||
"tpo", "ola", "oyb", "bo", "itd", "ras", "ti", "twm", "weo", "tyj",
|
||||
"kak", "to", "taj", "tn", "ts", "tmh", "tk", "tr", "ak", "ug",
|
||||
"uk", "del", "wro", "ema", "ur", "uz", "uz", "ve", "vi", "vo",
|
||||
"cy", "wgb", "nol", "nwo", "wa", "wo", "cax", "xh", "acn", "waw",
|
||||
"kpe", "dmw", "suj", "den", "rki", "yi", "ynq", "yi", "yrm", "lrr",
|
||||
"mtm", "yo", "zom", "yug", "zap", "za", "zh", "scv", "ms", "zu",
|
||||
"za",
|
||||
"bal", "bik", "be", "bn", "bcg", "fbl", "bir", "bho", "bi", "drl",
|
||||
"bzc", "ebk", "iba", "bo", "bs", "br", "beb", "bg", "my", "luy",
|
||||
"bua", "ca", "rki", "cs", "ch", "ce", "zh", "cu", "cv", "mom",
|
||||
"cmr", "syr", "xch", "zh", "kw", "co", "pij", "quh", "cr", "cr",
|
||||
"cy", "cs", "dnj", "da", "njz", "de", "doi", "mwr", "din", "zza",
|
||||
"dif", "dv", "dze", "aqd", "mn", "kzk", "uth", "dwu", "nl", "dbt",
|
||||
"dz", "et", "el", "amq", "man", "en", "eo", "ik", "et", "eu",
|
||||
"ee", "fo", "fa", "ak", "fj", "fi", "fr", "fr", "fy", "ff",
|
||||
"ff", "dev", "om", "wny", "grb", "ka", "de", "vaj", "gvr", "esg",
|
||||
"gtu", "aou", "gd", "ga", "gl", "kzk", "gv", "gon", "el", "gn",
|
||||
"nyc", "gn", "gu", "duz", "gba", "ht", "ha", "hai", "hmn", "he",
|
||||
"hz", "srx", "hi", "ho", "jal", "hr", "hu", "hy", "opa", "ig",
|
||||
"is", "io", "ii", "iu", "iu", "ie", "ilm", "gal", "ia", "id",
|
||||
"ik", "is", "it", "eza", "jgk", "jv", "oyb", "ja", "kl", "kn",
|
||||
"ks", "ka", "kr", "kk", "zkd", "tdf", "ncq", "kml", "mn", "km",
|
||||
"ki", "rw", "ky", "ku", "kr", "kg", "kok", "kwv", "kv", "kg",
|
||||
"ko", "jkm", "kv", "bmf", "dtp", "kj", "ku", "gdj", "yam", "tvd",
|
||||
"kru", "dgl", "dtp", "dtp", "lo", "la", "lv", "bnc", "enl", "raq",
|
||||
"li", "ln", "lt", "ngt", "rmx", "lb", "lu", "lg", "lv", "mk",
|
||||
"mh", "ml", "mi", "mr", "ms", "cir", "jbk", "chm", "mk", "mg",
|
||||
"mt", "man", "wnn", "xnt", "ro", "mn", "mi", "ms", "mry", "raj",
|
||||
"dmw", "vaj", "my", "aog", "mry", "xny", "na", "nv", "nru", "nr",
|
||||
"ekc", "kdz", "nd", "ng", "ne", "nl", "azd", "nrk", "nn", "nbr",
|
||||
"ngv", "nb", "dtd", "no", "ne", "pij", "bpp", "ny", "oc", "oj",
|
||||
"oj", "or", "om", "or", "os", "vaj", "pa", "kxr", "ps", "adx",
|
||||
"fa", "fa", "pi", "mg", "huw", "phr", "lah", "pl", "pt", "bfy",
|
||||
"lcq", "prt", "ps", "pub", "qu", "qu", "emx", "rom", "rm", "ro",
|
||||
"ro", "rn", "ru", "sg", "sa", "aqt", "hle", "sr", "hr", "isk",
|
||||
"si", "oyb", "sk", "sk", "sl", "se", "sm", "sn", "sd", "so",
|
||||
"st", "es", "kln", "sq", "sc", "sc", "sr", "ss", "sgd", "ulw",
|
||||
"su", "sw", "sv", "sw", "ty", "ta", "tt", "dtp", "te", "bjp",
|
||||
"tg", "fil", "th", "tpo", "ola", "oyb", "bo", "itd", "ras", "ti",
|
||||
"twm", "weo", "tyj", "kak", "to", "taj", "tn", "ts", "tmh", "tk",
|
||||
"tr", "ak", "ug", "uk", "del", "wro", "ema", "ur", "uz", "uz",
|
||||
"ve", "vi", "vo", "cy", "wgb", "nol", "nwo", "wa", "wo", "cax",
|
||||
"xh", "acn", "waw", "kpe", "dmw", "suj", "den", "rki", "yi", "ynq",
|
||||
"yi", "yrm", "lrr", "mtm", "yo", "zom", "yug", "zap", "za", "zh",
|
||||
"scv", "ms", "zu", "za",
|
||||
};
|
||||
|
||||
if (const char* replacement = SearchReplacement(languages, aliases, language)) {
|
||||
|
@ -219,8 +219,8 @@ bool mozilla::intl::Locale::languageMapping(LanguageSubtag& language) {
|
|||
}
|
||||
|
||||
// Language subtags with complex mappings.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::complexLanguageMapping(const LanguageSubtag& language) {
|
||||
MOZ_ASSERT(IsStructurallyValidLanguageTag(language.span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedLanguageTag(language.span()));
|
||||
|
@ -241,8 +241,8 @@ bool mozilla::intl::Locale::complexLanguageMapping(const LanguageSubtag& languag
|
|||
}
|
||||
|
||||
// Mappings from script subtags to preferred values.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::scriptMapping(ScriptSubtag& script) {
|
||||
MOZ_ASSERT(IsStructurallyValidScriptTag(script.span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedScriptTag(script.span()));
|
||||
|
@ -257,8 +257,8 @@ bool mozilla::intl::Locale::scriptMapping(ScriptSubtag& script) {
|
|||
}
|
||||
|
||||
// Mappings from region subtags to preferred values.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::regionMapping(RegionSubtag& region) {
|
||||
MOZ_ASSERT(IsStructurallyValidRegionTag(region.span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedRegionTag(region.span()));
|
||||
|
@ -283,69 +283,69 @@ bool mozilla::intl::Locale::regionMapping(RegionSubtag& region) {
|
|||
}
|
||||
|
||||
{
|
||||
static const char regions[300][4] = {
|
||||
static const char regions[299][4] = {
|
||||
"004", "008", "010", "012", "016", "020", "024", "028", "031", "032",
|
||||
"036", "040", "044", "048", "050", "051", "052", "056", "060", "062",
|
||||
"064", "068", "070", "072", "074", "076", "084", "086", "090", "092",
|
||||
"096", "100", "104", "108", "112", "116", "120", "124", "132", "136",
|
||||
"140", "144", "148", "152", "156", "158", "162", "166", "170", "174",
|
||||
"175", "178", "180", "184", "188", "191", "192", "196", "203", "204",
|
||||
"208", "212", "214", "218", "222", "226", "230", "231", "232", "233",
|
||||
"234", "238", "239", "242", "246", "248", "249", "250", "254", "258",
|
||||
"260", "262", "266", "268", "270", "275", "276", "278", "280", "288",
|
||||
"292", "296", "300", "304", "308", "312", "316", "320", "324", "328",
|
||||
"332", "334", "336", "340", "344", "348", "352", "356", "360", "364",
|
||||
"368", "372", "376", "380", "384", "388", "392", "398", "400", "404",
|
||||
"408", "410", "414", "417", "418", "422", "426", "428", "430", "434",
|
||||
"438", "440", "442", "446", "450", "454", "458", "462", "466", "470",
|
||||
"474", "478", "480", "484", "492", "496", "498", "499", "500", "504",
|
||||
"508", "512", "516", "520", "524", "528", "531", "533", "534", "535",
|
||||
"540", "548", "554", "558", "562", "566", "570", "574", "578", "580",
|
||||
"581", "583", "584", "585", "586", "591", "598", "600", "604", "608",
|
||||
"612", "616", "620", "624", "626", "630", "634", "638", "642", "643",
|
||||
"646", "652", "654", "659", "660", "662", "663", "666", "670", "674",
|
||||
"678", "682", "686", "688", "690", "694", "702", "703", "704", "705",
|
||||
"706", "710", "716", "720", "724", "728", "729", "732", "736", "740",
|
||||
"744", "748", "752", "756", "760", "762", "764", "768", "772", "776",
|
||||
"780", "784", "788", "792", "795", "796", "798", "800", "804", "807",
|
||||
"818", "826", "830", "831", "832", "833", "834", "840", "850", "854",
|
||||
"858", "860", "862", "876", "882", "886", "887", "891", "894", "958",
|
||||
"959", "960", "962", "963", "964", "965", "966", "967", "968", "969",
|
||||
"970", "971", "972", "973", "974", "975", "976", "977", "978", "979",
|
||||
"980", "981", "982", "983", "984", "985", "986", "987", "988", "989",
|
||||
"990", "991", "992", "993", "994", "995", "996", "997", "998", "999",
|
||||
"036", "040", "044", "048", "050", "051", "052", "056", "060", "064",
|
||||
"068", "070", "072", "074", "076", "084", "086", "090", "092", "096",
|
||||
"100", "104", "108", "112", "116", "120", "124", "132", "136", "140",
|
||||
"144", "148", "152", "156", "158", "162", "166", "170", "174", "175",
|
||||
"178", "180", "184", "188", "191", "192", "196", "203", "204", "208",
|
||||
"212", "214", "218", "222", "226", "230", "231", "232", "233", "234",
|
||||
"238", "239", "242", "246", "248", "249", "250", "254", "258", "260",
|
||||
"262", "266", "268", "270", "275", "276", "278", "280", "288", "292",
|
||||
"296", "300", "304", "308", "312", "316", "320", "324", "328", "332",
|
||||
"334", "336", "340", "344", "348", "352", "356", "360", "364", "368",
|
||||
"372", "376", "380", "384", "388", "392", "398", "400", "404", "408",
|
||||
"410", "414", "417", "418", "422", "426", "428", "430", "434", "438",
|
||||
"440", "442", "446", "450", "454", "458", "462", "466", "470", "474",
|
||||
"478", "480", "484", "492", "496", "498", "499", "500", "504", "508",
|
||||
"512", "516", "520", "524", "528", "531", "533", "534", "535", "540",
|
||||
"548", "554", "558", "562", "566", "570", "574", "578", "580", "581",
|
||||
"583", "584", "585", "586", "591", "598", "600", "604", "608", "612",
|
||||
"616", "620", "624", "626", "630", "634", "638", "642", "643", "646",
|
||||
"652", "654", "659", "660", "662", "663", "666", "670", "674", "678",
|
||||
"682", "686", "688", "690", "694", "702", "703", "704", "705", "706",
|
||||
"710", "716", "720", "724", "728", "729", "732", "736", "740", "744",
|
||||
"748", "752", "756", "760", "762", "764", "768", "772", "776", "780",
|
||||
"784", "788", "792", "795", "796", "798", "800", "804", "807", "818",
|
||||
"826", "830", "831", "832", "833", "834", "840", "850", "854", "858",
|
||||
"860", "862", "876", "882", "886", "887", "891", "894", "958", "959",
|
||||
"960", "962", "963", "964", "965", "966", "967", "968", "969", "970",
|
||||
"971", "972", "973", "974", "975", "976", "977", "978", "979", "980",
|
||||
"981", "982", "983", "984", "985", "986", "987", "988", "989", "990",
|
||||
"991", "992", "993", "994", "995", "996", "997", "998", "999",
|
||||
};
|
||||
static const char* aliases[300] = {
|
||||
static const char* aliases[299] = {
|
||||
"AF", "AL", "AQ", "DZ", "AS", "AD", "AO", "AG", "AZ", "AR",
|
||||
"AU", "AT", "BS", "BH", "BD", "AM", "BB", "BE", "BM", "034",
|
||||
"BT", "BO", "BA", "BW", "BV", "BR", "BZ", "IO", "SB", "VG",
|
||||
"BN", "BG", "MM", "BI", "BY", "KH", "CM", "CA", "CV", "KY",
|
||||
"CF", "LK", "TD", "CL", "CN", "TW", "CX", "CC", "CO", "KM",
|
||||
"YT", "CG", "CD", "CK", "CR", "HR", "CU", "CY", "CZ", "BJ",
|
||||
"DK", "DM", "DO", "EC", "SV", "GQ", "ET", "ET", "ER", "EE",
|
||||
"FO", "FK", "GS", "FJ", "FI", "AX", "FR", "FR", "GF", "PF",
|
||||
"TF", "DJ", "GA", "GE", "GM", "PS", "DE", "DE", "DE", "GH",
|
||||
"GI", "KI", "GR", "GL", "GD", "GP", "GU", "GT", "GN", "GY",
|
||||
"HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR",
|
||||
"IQ", "IE", "IL", "IT", "CI", "JM", "JP", "KZ", "JO", "KE",
|
||||
"KP", "KR", "KW", "KG", "LA", "LB", "LS", "LV", "LR", "LY",
|
||||
"LI", "LT", "LU", "MO", "MG", "MW", "MY", "MV", "ML", "MT",
|
||||
"MQ", "MR", "MU", "MX", "MC", "MN", "MD", "ME", "MS", "MA",
|
||||
"MZ", "OM", "NA", "NR", "NP", "NL", "CW", "AW", "SX", "BQ",
|
||||
"NC", "VU", "NZ", "NI", "NE", "NG", "NU", "NF", "NO", "MP",
|
||||
"UM", "FM", "MH", "PW", "PK", "PA", "PG", "PY", "PE", "PH",
|
||||
"PN", "PL", "PT", "GW", "TL", "PR", "QA", "RE", "RO", "RU",
|
||||
"RW", "BL", "SH", "KN", "AI", "LC", "MF", "PM", "VC", "SM",
|
||||
"ST", "SA", "SN", "RS", "SC", "SL", "SG", "SK", "VN", "SI",
|
||||
"SO", "ZA", "ZW", "YE", "ES", "SS", "SD", "EH", "SD", "SR",
|
||||
"SJ", "SZ", "SE", "CH", "SY", "TJ", "TH", "TG", "TK", "TO",
|
||||
"TT", "AE", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "MK",
|
||||
"EG", "GB", "JE", "GG", "JE", "IM", "TZ", "US", "VI", "BF",
|
||||
"UY", "UZ", "VE", "WF", "WS", "YE", "YE", "RS", "ZM", "AA",
|
||||
"QM", "QN", "QP", "QQ", "QR", "QS", "QT", "EU", "QV", "QW",
|
||||
"QX", "QY", "QZ", "XA", "XB", "XC", "XD", "XE", "XF", "XG",
|
||||
"XH", "XI", "XJ", "XK", "XL", "XM", "XN", "XO", "XP", "XQ",
|
||||
"XR", "XS", "XT", "XU", "XV", "XW", "XX", "XY", "XZ", "ZZ",
|
||||
"AU", "AT", "BS", "BH", "BD", "AM", "BB", "BE", "BM", "BT",
|
||||
"BO", "BA", "BW", "BV", "BR", "BZ", "IO", "SB", "VG", "BN",
|
||||
"BG", "MM", "BI", "BY", "KH", "CM", "CA", "CV", "KY", "CF",
|
||||
"LK", "TD", "CL", "CN", "TW", "CX", "CC", "CO", "KM", "YT",
|
||||
"CG", "CD", "CK", "CR", "HR", "CU", "CY", "CZ", "BJ", "DK",
|
||||
"DM", "DO", "EC", "SV", "GQ", "ET", "ET", "ER", "EE", "FO",
|
||||
"FK", "GS", "FJ", "FI", "AX", "FR", "FR", "GF", "PF", "TF",
|
||||
"DJ", "GA", "GE", "GM", "PS", "DE", "DE", "DE", "GH", "GI",
|
||||
"KI", "GR", "GL", "GD", "GP", "GU", "GT", "GN", "GY", "HT",
|
||||
"HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ",
|
||||
"IE", "IL", "IT", "CI", "JM", "JP", "KZ", "JO", "KE", "KP",
|
||||
"KR", "KW", "KG", "LA", "LB", "LS", "LV", "LR", "LY", "LI",
|
||||
"LT", "LU", "MO", "MG", "MW", "MY", "MV", "ML", "MT", "MQ",
|
||||
"MR", "MU", "MX", "MC", "MN", "MD", "ME", "MS", "MA", "MZ",
|
||||
"OM", "NA", "NR", "NP", "NL", "CW", "AW", "SX", "BQ", "NC",
|
||||
"VU", "NZ", "NI", "NE", "NG", "NU", "NF", "NO", "MP", "UM",
|
||||
"FM", "MH", "PW", "PK", "PA", "PG", "PY", "PE", "PH", "PN",
|
||||
"PL", "PT", "GW", "TL", "PR", "QA", "RE", "RO", "RU", "RW",
|
||||
"BL", "SH", "KN", "AI", "LC", "MF", "PM", "VC", "SM", "ST",
|
||||
"SA", "SN", "RS", "SC", "SL", "SG", "SK", "VN", "SI", "SO",
|
||||
"ZA", "ZW", "YE", "ES", "SS", "SD", "EH", "SD", "SR", "SJ",
|
||||
"SZ", "SE", "CH", "SY", "TJ", "TH", "TG", "TK", "TO", "TT",
|
||||
"AE", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "MK", "EG",
|
||||
"GB", "JE", "GG", "JE", "IM", "TZ", "US", "VI", "BF", "UY",
|
||||
"UZ", "VE", "WF", "WS", "YE", "YE", "RS", "ZM", "AA", "QM",
|
||||
"QN", "QP", "QQ", "QR", "QS", "QT", "EU", "QV", "QW", "QX",
|
||||
"QY", "QZ", "XA", "XB", "XC", "XD", "XE", "XF", "XG", "XH",
|
||||
"XI", "XJ", "XK", "XL", "XM", "XN", "XO", "XP", "XQ", "XR",
|
||||
"XS", "XT", "XU", "XV", "XW", "XX", "XY", "XZ", "ZZ",
|
||||
};
|
||||
|
||||
if (const char* replacement = SearchReplacement(regions, aliases, region)) {
|
||||
|
@ -357,8 +357,8 @@ bool mozilla::intl::Locale::regionMapping(RegionSubtag& region) {
|
|||
}
|
||||
|
||||
// Region subtags with complex mappings.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::complexRegionMapping(const RegionSubtag& region) {
|
||||
MOZ_ASSERT(IsStructurallyValidRegionTag(region.span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedRegionTag(region.span()));
|
||||
|
@ -371,8 +371,8 @@ bool mozilla::intl::Locale::complexRegionMapping(const RegionSubtag& region) {
|
|||
}
|
||||
|
||||
{
|
||||
static const char regions[8][4] = {
|
||||
"172", "200", "530", "532", "536", "582", "810", "890",
|
||||
static const char regions[9][4] = {
|
||||
"062", "172", "200", "530", "532", "536", "582", "810", "890",
|
||||
};
|
||||
|
||||
return HasReplacement(regions, region);
|
||||
|
@ -380,8 +380,8 @@ bool mozilla::intl::Locale::complexRegionMapping(const RegionSubtag& region) {
|
|||
}
|
||||
|
||||
// Language subtags with complex mappings.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
void mozilla::intl::Locale::performComplexLanguageMappings() {
|
||||
MOZ_ASSERT(IsStructurallyValidLanguageTag(language().span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedLanguageTag(language().span()));
|
||||
|
@ -416,15 +416,24 @@ void mozilla::intl::Locale::performComplexLanguageMappings() {
|
|||
}
|
||||
|
||||
// Region subtags with complex mappings.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
void mozilla::intl::Locale::performComplexRegionMappings() {
|
||||
MOZ_ASSERT(IsStructurallyValidLanguageTag(language().span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedLanguageTag(language().span()));
|
||||
MOZ_ASSERT(IsStructurallyValidRegionTag(region().span()));
|
||||
MOZ_ASSERT(IsCanonicallyCasedRegionTag(region().span()));
|
||||
|
||||
if (region().equalTo("172")) {
|
||||
if (region().equalTo("062")) {
|
||||
if (language().equalTo("oui") ||
|
||||
(language().equalTo("und") && script().equalTo("Ougr"))) {
|
||||
setRegion("143");
|
||||
}
|
||||
else {
|
||||
setRegion("034");
|
||||
}
|
||||
}
|
||||
else if (region().equalTo("172")) {
|
||||
if (language().equalTo("hy") ||
|
||||
(language().equalTo("und") && script().equalTo("Armn"))) {
|
||||
setRegion("AM");
|
||||
|
@ -634,8 +643,8 @@ static bool IsLessThan(const T& a, const U& b) {
|
|||
}
|
||||
|
||||
// Mappings from variant subtags to preferred values.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::performVariantMappings() {
|
||||
// The variant subtags need to be sorted for binary search.
|
||||
MOZ_ASSERT(std::is_sorted(variants_.begin(), variants_.end(),
|
||||
|
@ -698,8 +707,8 @@ bool mozilla::intl::Locale::performVariantMappings() {
|
|||
}
|
||||
|
||||
// Canonicalize legacy locale identifiers.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::updateLegacyMappings() {
|
||||
// We're mapping legacy tags to non-legacy form here.
|
||||
// Other tags remain unchanged.
|
||||
|
@ -856,8 +865,8 @@ bool mozilla::intl::Locale::updateLegacyMappings() {
|
|||
}
|
||||
|
||||
// Mappings from legacy sign languages.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
bool mozilla::intl::Locale::signLanguageMapping(LanguageSubtag& language,
|
||||
const RegionSubtag& region) {
|
||||
MOZ_ASSERT(language.equalTo("sgn"));
|
||||
|
@ -1048,19 +1057,19 @@ const char* mozilla::intl::Locale::replaceUnicodeExtensionType(
|
|||
return SearchUnicodeReplacement(types, aliases, type);
|
||||
}
|
||||
else if (IsUnicodeKey(key, "tz")) {
|
||||
static const char* types[28] = {
|
||||
static const char* types[29] = {
|
||||
"aqams" , "cnckg" , "cnhrb" , "cnkhg" , "cuba" , "egypt" ,
|
||||
"eire" , "est" , "gmt0" , "hongkong", "hst" , "iceland" ,
|
||||
"iran" , "israel" , "jamaica" , "japan" , "libya" , "mst" ,
|
||||
"navajo" , "poland" , "portugal", "prc" , "roc" , "rok" ,
|
||||
"turkey" , "uct" , "usnavajo", "zulu" ,
|
||||
"eire" , "est" , "gaza" , "gmt0" , "hongkong", "hst" ,
|
||||
"iceland" , "iran" , "israel" , "jamaica" , "japan" , "libya" ,
|
||||
"mst" , "navajo" , "poland" , "portugal", "prc" , "roc" ,
|
||||
"rok" , "turkey" , "uct" , "usnavajo", "zulu" ,
|
||||
};
|
||||
static const char* aliases[28] = {
|
||||
static const char* aliases[29] = {
|
||||
"nzakl" , "cnsha" , "cnsha" , "cnurc" , "cuhav" , "egcai" ,
|
||||
"iedub" , "utcw05" , "gmt" , "hkhkg" , "utcw10" , "isrey" ,
|
||||
"irthr" , "jeruslm" , "jmkin" , "jptyo" , "lytip" , "utcw07" ,
|
||||
"usden" , "plwaw" , "ptlis" , "cnsha" , "twtpe" , "krsel" ,
|
||||
"trist" , "utc" , "usden" , "utc" ,
|
||||
"iedub" , "utcw05" , "gazastrp", "gmt" , "hkhkg" , "utcw10" ,
|
||||
"isrey" , "irthr" , "jeruslm" , "jmkin" , "jptyo" , "lytip" ,
|
||||
"utcw07" , "usden" , "plwaw" , "ptlis" , "cnsha" , "twtpe" ,
|
||||
"krsel" , "trist" , "utc" , "usden" , "utc" ,
|
||||
};
|
||||
return SearchUnicodeReplacement(types, aliases, type);
|
||||
}
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
// Generated by make_intl_data.py. DO NOT EDIT.
|
||||
|
||||
// Extracted from likelySubtags.xml.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
var maxLikelySubtags = {
|
||||
"aa": "aa-Latn-ET",
|
||||
"aai": "aai-Latn-ZZ",
|
||||
|
@ -168,6 +168,7 @@ var maxLikelySubtags = {
|
|||
"bkq": "bkq-Latn-ZZ",
|
||||
"bku": "bku-Latn-PH",
|
||||
"bkv": "bkv-Latn-ZZ",
|
||||
"blg": "iba-Latn-MY",
|
||||
"blt": "blt-Tavt-VN",
|
||||
"bm": "bm-Latn-ML",
|
||||
"bmh": "bmh-Latn-ZZ",
|
||||
|
@ -479,7 +480,7 @@ var maxLikelySubtags = {
|
|||
"hmt": "hmt-Latn-ZZ",
|
||||
"hnd": "hnd-Arab-PK",
|
||||
"hne": "hne-Deva-IN",
|
||||
"hnj": "hnj-Hmng-LA",
|
||||
"hnj": "hnj-Hmnp-US",
|
||||
"hnn": "hnn-Latn-PH",
|
||||
"hno": "hno-Arab-PK",
|
||||
"ho": "ho-Latn-PG",
|
||||
|
@ -569,7 +570,7 @@ var maxLikelySubtags = {
|
|||
"kcl": "kcl-Latn-ZZ",
|
||||
"kct": "kct-Latn-ZZ",
|
||||
"kde": "kde-Latn-TZ",
|
||||
"kdh": "kdh-Arab-TG",
|
||||
"kdh": "kdh-Latn-TG",
|
||||
"kdl": "kdl-Latn-ZZ",
|
||||
"kdt": "kdt-Thai-TH",
|
||||
"kea": "kea-Latn-CV",
|
||||
|
@ -937,6 +938,7 @@ var maxLikelySubtags = {
|
|||
"nsn": "nsn-Latn-ZZ",
|
||||
"nso": "nso-Latn-ZA",
|
||||
"nss": "nss-Latn-ZZ",
|
||||
"nst": "nst-Tnsa-IN",
|
||||
"ntm": "ntm-Latn-ZZ",
|
||||
"ntr": "ntr-Latn-ZZ",
|
||||
"nui": "nui-Latn-ZZ",
|
||||
|
@ -968,6 +970,7 @@ var maxLikelySubtags = {
|
|||
"osa": "osa-Osge-US",
|
||||
"ota": "ota-Arab-ZZ",
|
||||
"otk": "otk-Orkh-MN",
|
||||
"oui": "oui-Ougr-143",
|
||||
"ozm": "ozm-Latn-ZZ",
|
||||
"pa": "pa-Guru-IN",
|
||||
"pa-Arab": "pa-Arab-PK",
|
||||
|
@ -1022,7 +1025,7 @@ var maxLikelySubtags = {
|
|||
"rel": "rel-Latn-ZZ",
|
||||
"res": "res-Latn-ZZ",
|
||||
"rgn": "rgn-Latn-IT",
|
||||
"rhg": "rhg-Arab-MM",
|
||||
"rhg": "rhg-Rohg-MM",
|
||||
"ria": "ria-Latn-IN",
|
||||
"rif": "rif-Tfng-MA",
|
||||
"rif-NL": "rif-Latn-NL",
|
||||
|
@ -1246,6 +1249,7 @@ var maxLikelySubtags = {
|
|||
"twh": "twh-Latn-ZZ",
|
||||
"twq": "twq-Latn-NE",
|
||||
"txg": "txg-Tang-CN",
|
||||
"txo": "txo-Toto-IN",
|
||||
"ty": "ty-Latn-PF",
|
||||
"tya": "tya-Latn-ZZ",
|
||||
"tyv": "tyv-Cyrl-RU",
|
||||
|
@ -1378,6 +1382,8 @@ var maxLikelySubtags = {
|
|||
"und-Cher": "chr-Cher-US",
|
||||
"und-Chrs": "xco-Chrs-UZ",
|
||||
"und-Copt": "cop-Copt-EG",
|
||||
"und-Cpmn": "und-Cpmn-CY",
|
||||
"und-Cpmn-CY": "und-Cpmn-CY",
|
||||
"und-Cprt": "grc-Cprt-CY",
|
||||
"und-Cyrl": "ru-Cyrl-RU",
|
||||
"und-Cyrl-AL": "mk-Cyrl-AL",
|
||||
|
@ -1462,7 +1468,7 @@ var maxLikelySubtags = {
|
|||
"und-Hira": "ja-Hira-JP",
|
||||
"und-Hluw": "hlu-Hluw-TR",
|
||||
"und-Hmng": "hnj-Hmng-LA",
|
||||
"und-Hmnp": "mww-Hmnp-US",
|
||||
"und-Hmnp": "hnj-Hmnp-US",
|
||||
"und-Hung": "hu-Hung-HU",
|
||||
"und-IC": "es-Latn-IC",
|
||||
"und-ID": "id-Latn-ID",
|
||||
|
@ -1589,6 +1595,7 @@ var maxLikelySubtags = {
|
|||
"und-Orya": "or-Orya-IN",
|
||||
"und-Osge": "osa-Osge-US",
|
||||
"und-Osma": "so-Osma-SO",
|
||||
"und-Ougr": "oui-Ougr-143",
|
||||
"und-PA": "es-Latn-PA",
|
||||
"und-PE": "es-Latn-PE",
|
||||
"und-PF": "fr-Latn-PF",
|
||||
|
@ -1682,6 +1689,8 @@ var maxLikelySubtags = {
|
|||
"und-Thai-LA": "kdt-Thai-LA",
|
||||
"und-Tibt": "bo-Tibt-CN",
|
||||
"und-Tirh": "mai-Tirh-IN",
|
||||
"und-Tnsa": "nst-Tnsa-IN",
|
||||
"und-Toto": "txo-Toto-IN",
|
||||
"und-UA": "uk-Cyrl-UA",
|
||||
"und-UG": "sw-Latn-UG",
|
||||
"und-UY": "es-Latn-UY",
|
||||
|
@ -1692,6 +1701,7 @@ var maxLikelySubtags = {
|
|||
"und-VN": "vi-Latn-VN",
|
||||
"und-VU": "bi-Latn-VU",
|
||||
"und-Vaii": "vai-Vaii-LR",
|
||||
"und-Vith": "sq-Vith-AL",
|
||||
"und-WF": "fr-Latn-WF",
|
||||
"und-WS": "sm-Latn-WS",
|
||||
"und-Wara": "hoc-Wara-IN",
|
||||
|
@ -1864,8 +1874,8 @@ var maxLikelySubtags = {
|
|||
};
|
||||
|
||||
// Extracted from likelySubtags.xml.
|
||||
// Derived from CLDR Supplemental Data, version 39.
|
||||
// https://unicode.org/Public/cldr/39/core.zip
|
||||
// Derived from CLDR Supplemental Data, version 40.
|
||||
// https://unicode.org/Public/cldr/40/core.zip
|
||||
var minLikelySubtags = {
|
||||
"aa-Latn-DJ": "aa-DJ",
|
||||
"aa-Latn-ET": "aa",
|
||||
|
@ -2449,7 +2459,8 @@ var minLikelySubtags = {
|
|||
"hmt-Latn-ZZ": "hmt",
|
||||
"hnd-Arab-PK": "hnd",
|
||||
"hne-Deva-IN": "hne",
|
||||
"hnj-Hmng-LA": "hnj",
|
||||
"hnj-Hmng-LA": "hnj-Hmng-LA",
|
||||
"hnj-Hmnp-US": "hnj",
|
||||
"hnn-Hano-PH": "hnn-Hano",
|
||||
"hnn-Latn-PH": "hnn",
|
||||
"hno-Arab-PK": "hno",
|
||||
|
@ -2542,7 +2553,7 @@ var minLikelySubtags = {
|
|||
"kcl-Latn-ZZ": "kcl",
|
||||
"kct-Latn-ZZ": "kct",
|
||||
"kde-Latn-TZ": "kde",
|
||||
"kdh-Arab-TG": "kdh",
|
||||
"kdh-Latn-TG": "kdh",
|
||||
"kdl-Latn-ZZ": "kdl",
|
||||
"kdt-Thai-KH": "kdt-KH",
|
||||
"kdt-Thai-LA": "kdt-LA",
|
||||
|
@ -2923,6 +2934,7 @@ var minLikelySubtags = {
|
|||
"nsn-Latn-ZZ": "nsn",
|
||||
"nso-Latn-ZA": "nso",
|
||||
"nss-Latn-ZZ": "nss",
|
||||
"nst-Tnsa-IN": "nst",
|
||||
"ntm-Latn-ZZ": "ntm",
|
||||
"ntr-Latn-ZZ": "ntr",
|
||||
"nui-Latn-ZZ": "nui",
|
||||
|
@ -2954,6 +2966,7 @@ var minLikelySubtags = {
|
|||
"osa-Osge-US": "osa",
|
||||
"ota-Arab-ZZ": "ota",
|
||||
"otk-Orkh-MN": "otk",
|
||||
"oui-Ougr-143": "oui",
|
||||
"ozm-Latn-ZZ": "ozm",
|
||||
"pa-Arab-PK": "pa-PK",
|
||||
"pa-Guru-IN": "pa",
|
||||
|
@ -3018,8 +3031,8 @@ var minLikelySubtags = {
|
|||
"rel-Latn-ZZ": "rel",
|
||||
"res-Latn-ZZ": "res",
|
||||
"rgn-Latn-IT": "rgn",
|
||||
"rhg-Arab-MM": "rhg",
|
||||
"rhg-Rohg-MM": "rhg-Rohg",
|
||||
"rhg-Arab-MM": "rhg-Arab",
|
||||
"rhg-Rohg-MM": "rhg",
|
||||
"ria-Latn-IN": "ria",
|
||||
"rif-Latn-NL": "rif-NL",
|
||||
"rif-Tfng-MA": "rif",
|
||||
|
@ -3135,6 +3148,7 @@ var minLikelySubtags = {
|
|||
"sq-Latn-AL": "sq",
|
||||
"sq-Latn-MK": "sq-MK",
|
||||
"sq-Latn-XK": "sq-XK",
|
||||
"sq-Vith-AL": "sq-Vith",
|
||||
"sr-Cyrl-BA": "sr-BA",
|
||||
"sr-Cyrl-RS": "sr",
|
||||
"sr-Cyrl-XK": "sr-XK",
|
||||
|
@ -3266,6 +3280,7 @@ var minLikelySubtags = {
|
|||
"twh-Latn-ZZ": "twh",
|
||||
"twq-Latn-NE": "twq",
|
||||
"txg-Tang-CN": "txg",
|
||||
"txo-Toto-IN": "txo",
|
||||
"ty-Latn-PF": "ty",
|
||||
"tya-Latn-ZZ": "tya",
|
||||
"tyv-Cyrl-RU": "tyv",
|
||||
|
@ -3282,6 +3297,7 @@ var minLikelySubtags = {
|
|||
"uk-Cyrl-UA": "uk",
|
||||
"uli-Latn-FM": "uli",
|
||||
"umb-Latn-AO": "umb",
|
||||
"und-Cpmn-CY": "und-Cpmn",
|
||||
"und-Latn-AQ": "und-AQ",
|
||||
"und-Latn-BV": "und-BV",
|
||||
"und-Latn-CP": "und-CP",
|
||||
|
|
Загрузка…
Ссылка в новой задаче