mirror of https://github.com/tc39/test262.git
Update language tag canonicalisation per UTS35
Main changes: - "cmn" is now canonicalised to "zh" - "und-x-" is prepended before grandfathered tags without modern replacements - "und-" is prepended before privateuse-only language tags
This commit is contained in:
parent
51d1abadce
commit
94053978bc
|
@ -30,12 +30,12 @@ var canonicalizedTags = {
|
|||
"de": "de",
|
||||
"DE-de": "de-DE",
|
||||
"de-DE": "de-DE",
|
||||
"cmn": "cmn",
|
||||
"CMN-hANS": "cmn-Hans",
|
||||
"cmn-hans-cn": "cmn-Hans-CN",
|
||||
"cmn": "zh",
|
||||
"CMN-hANS": "zh-Hans",
|
||||
"cmn-hans-cn": "zh-Hans-CN",
|
||||
"es-419": "es-419",
|
||||
"es-419-u-nu-latn": "es-419-u-nu-latn",
|
||||
"cmn-hans-cn-u-ca-t-ca-x-t-u": "cmn-Hans-CN-t-ca-u-ca-x-t-u",
|
||||
"cmn-hans-cn-u-ca-t-ca-x-t-u": "zh-Hans-CN-t-ca-u-ca-x-t-u",
|
||||
"de-gregory-u-ca-gregory": "de-gregory-u-ca-gregory",
|
||||
"no-nyn": "nn",
|
||||
"i-klingon": "tlh",
|
||||
|
@ -45,7 +45,7 @@ var canonicalizedTags = {
|
|||
"zh-hak-CN": "hak-CN",
|
||||
"sgn-ils": "ils",
|
||||
"in": "id",
|
||||
"x-foo": "x-foo",
|
||||
"x-foo": "und-x-foo",
|
||||
"sr-cyrl-ekavsk": "sr-Cyrl-ekavsk",
|
||||
"en-ca-newfound": "en-CA-newfound",
|
||||
"sl-rozaj-biske-1994": "sl-rozaj-biske-1994",
|
||||
|
|
|
@ -16,7 +16,7 @@ const regularGrandfathered = [
|
|||
},
|
||||
{
|
||||
tag: "zh-guoyu",
|
||||
canonical: "cmn",
|
||||
canonical: "zh",
|
||||
},
|
||||
{
|
||||
tag: "zh-hakka",
|
||||
|
|
|
@ -43,12 +43,12 @@ var canonicalizedTags = {
|
|||
"en-gb-oed": "en-GB-oxendict",
|
||||
"i-ami": "ami",
|
||||
"i-bnn": "bnn",
|
||||
"i-default": "i-default",
|
||||
"i-enochian": "i-enochian",
|
||||
"i-default": "und-x-i-default",
|
||||
"i-enochian": "und-x-i-enochian",
|
||||
"i-hak": "hak",
|
||||
"i-klingon": "tlh",
|
||||
"i-lux": "lb",
|
||||
"i-mingo": "i-mingo",
|
||||
"i-mingo": "und-x-i-mingo",
|
||||
"i-navajo": "nv",
|
||||
"i-pwn": "pwn",
|
||||
"i-tao": "tao",
|
||||
|
@ -60,12 +60,12 @@ var canonicalizedTags = {
|
|||
|
||||
// Regular tags.
|
||||
"art-lojban": "jbo",
|
||||
"cel-gaulish": "cel-gaulish",
|
||||
"cel-gaulish": "und-x-cel-gaulish",
|
||||
"no-bok": "nb",
|
||||
"no-nyn": "nn",
|
||||
"zh-guoyu": "cmn",
|
||||
"zh-guoyu": "zh",
|
||||
"zh-hakka": "hak",
|
||||
"zh-min": "zh-min",
|
||||
"zh-min": "und-x-zh-min",
|
||||
"zh-min-nan": "nan",
|
||||
"zh-xiang": "hsn",
|
||||
};
|
||||
|
|
|
@ -13,13 +13,13 @@ includes: [compareArray.js]
|
|||
|
||||
var weirdCases =
|
||||
[
|
||||
"x-u-foo",
|
||||
"en-x-u-foo",
|
||||
"en-a-bar-x-u-foo",
|
||||
"en-x-u-foo-a-bar",
|
||||
"en-a-bar-u-baz-x-u-foo",
|
||||
{locale: "x-u-foo", canonical: "und-x-u-foo"},
|
||||
{locale: "en-x-u-foo"},
|
||||
{locale: "en-a-bar-x-u-foo"},
|
||||
{locale: "en-x-u-foo-a-bar"},
|
||||
{locale: "en-a-bar-u-baz-x-u-foo"},
|
||||
];
|
||||
|
||||
weirdCases.forEach(function (weird) {
|
||||
assert(compareArray(Intl.getCanonicalLocales(weird), [weird]));
|
||||
weirdCases.forEach(function ({locale, canonical = locale}) {
|
||||
assert(compareArray(Intl.getCanonicalLocales(locale), [canonical]));
|
||||
});
|
||||
|
|
|
@ -13,13 +13,13 @@ var canonicalizedTags = {
|
|||
"de": ["de"],
|
||||
"de-DE": ["de-DE", "de"],
|
||||
"DE-de": ["de-DE", "de"],
|
||||
"cmn": ["cmn"],
|
||||
"CMN-hANS": ["cmn-Hans", "cmn"],
|
||||
"cmn-hans-cn": ["cmn-Hans-CN", "cmn-Hans", "cmn"],
|
||||
"cmn": ["zh"],
|
||||
"CMN-hANS": ["zh-Hans", "zh"],
|
||||
"cmn-hans-cn": ["zh-Hans-CN", "zh-Hans", "zh"],
|
||||
"es-419": ["es-419", "es"],
|
||||
"es-419-u-nu-latn": ["es-419-u-nu-latn", "es-419", "es", "es-u-nu-latn"],
|
||||
// -u-ca is incomplete, so it will not show up in resolvedOptions().locale
|
||||
"cmn-hans-cn-u-ca-t-ca-x-t-u": ["cmn-Hans-CN-t-ca-u-ca-x-t-u", "cmn-Hans-CN-t-ca-x-t-u", "cmn-Hans-CN-t-ca-x-t", "cmn-Hans-CN-t-ca", "cmn-Hans-CN", "cmn-Hans", "cmn"],
|
||||
"cmn-hans-cn-u-ca-t-ca-x-t-u": ["zh-Hans-CN-t-ca-u-ca-x-t-u", "zh-Hans-CN-t-ca-x-t-u", "zh-Hans-CN-t-ca-x-t", "zh-Hans-CN-t-ca", "zh-Hans-CN", "zh-Hans", "zh"],
|
||||
"de-gregory-u-ca-gregory": ["de-gregory-u-ca-gregory", "de-gregory", "de-u-ca-gregory", "de"],
|
||||
"no-nyn": ["nn"],
|
||||
"i-klingon": ["tlh"],
|
||||
|
|
Loading…
Reference in New Issue