Merge pull request #55 from amire80/langdb_aliases_cleanup
Add basic support for redirects
This commit is contained in:
136
data/langdb.yaml
136
data/langdb.yaml
@@ -2,11 +2,10 @@ languages:
|
|||||||
aa: [Latn, [AF], Qafár af]
|
aa: [Latn, [AF], Qafár af]
|
||||||
ab: [Cyrl, [EU], Аҧсшәа]
|
ab: [Cyrl, [EU], Аҧсшәа]
|
||||||
ace: [Latn, [AS, PA], Acèh]
|
ace: [Latn, [AS, PA], Acèh]
|
||||||
ady-cyrl: [Cyrl, [EU], Адыгэбзэ]
|
# FIXME: alias
|
||||||
ady-latn: [Latn, [EU], Adygabze]
|
ady: [Cyrl, [EU, ME], Адыгэбзэ]
|
||||||
# XXX multiple script
|
ady-cyrl: [Cyrl, [EU, ME], Адыгэбзэ]
|
||||||
# ady: [[Cyrl, Latn], [EU], [Адыгэбзэ, Adygabze]]
|
ady-latn: [Latn, [EU, ME], Adygabze]
|
||||||
ady: [Cyrl, [EU], Адыгэбзэ]
|
|
||||||
aeb: [Arab, [AF], زَوُن]
|
aeb: [Arab, [AF], زَوُن]
|
||||||
af: [Latn, [AF], Afrikaans]
|
af: [Latn, [AF], Afrikaans]
|
||||||
ahr: [Deva, [AS], अहिराणी]
|
ahr: [Deva, [AS], अहिराणी]
|
||||||
@@ -30,8 +29,12 @@ languages:
|
|||||||
av: [Cyrl, [EU], авар]
|
av: [Cyrl, [EU], авар]
|
||||||
avk: [Latn, [WW], Kotava]
|
avk: [Latn, [WW], Kotava]
|
||||||
ay: [Latn, [AM], Aymar aru]
|
ay: [Latn, [AM], Aymar aru]
|
||||||
# also Arab, and in the past - Cyrl
|
# Latin is the default in Azerbaijani Wikipedia
|
||||||
|
# FIXME: alias
|
||||||
az: [Latn, [EU, ME], azərbaycanca]
|
az: [Latn, [EU, ME], azərbaycanca]
|
||||||
|
az-latn: [Latn, [EU, ME], azərbaycanca]
|
||||||
|
az-arab: [Arab, [EU, ME], آذربايجانجا]
|
||||||
|
az-cyrl: [Latn, [EU, ME], азәрбајҹанҹа]
|
||||||
ba: [Cyrl, [EU], башҡортса]
|
ba: [Cyrl, [EU], башҡортса]
|
||||||
bar: [Latn, [EU], Boarisch]
|
bar: [Latn, [EU], Boarisch]
|
||||||
bbc-latn: [Latn, [AS], Batak Toba]
|
bbc-latn: [Latn, [AS], Batak Toba]
|
||||||
@@ -39,13 +42,14 @@ languages:
|
|||||||
bbc: [Batk, [AS], Batak Toba/Batak autonym unknown]
|
bbc: [Batk, [AS], Batak Toba/Batak autonym unknown]
|
||||||
bcc: [Arab, [AS, ME], بلوچی مکرانی]
|
bcc: [Arab, [AS, ME], بلوچی مکرانی]
|
||||||
bcl: [Latn, [AS], Bikol Central]
|
bcl: [Latn, [AS], Bikol Central]
|
||||||
# FIXME: which is the correct code?
|
# FIXME: alias
|
||||||
be-tarask: [Cyrl, [EU], беларуская (тарашкевіца)]
|
be-tarask: [Cyrl, [EU], беларуская (тарашкевіца)]
|
||||||
be-x-old: [Cyrl, [EU], беларуская (тарашкевіца)]
|
be-x-old: [Cyrl, [EU], беларуская (тарашкевіца)]
|
||||||
be: [Cyrl, [EU], беларуская]
|
be: [Cyrl, [EU], беларуская]
|
||||||
bew: [Latn, [AS], Bahasa Betawi]
|
bew: [Latn, [AS], Bahasa Betawi]
|
||||||
bfq: [Taml, [AS], படகா]
|
bfq: [Taml, [AS], படகா]
|
||||||
bg: [Cyrl, [EU], български]
|
bg: [Cyrl, [EU], български]
|
||||||
|
# FIXME - currently says Bhojpuri, but it's a macrolanguage.
|
||||||
bh: [Deva, [AS], भोजपुरी]
|
bh: [Deva, [AS], भोजपुरी]
|
||||||
bho: [Deva, [AS], भोजपुरी]
|
bho: [Deva, [AS], भोजपुरी]
|
||||||
bi: [Latn, [PA], Bislama]
|
bi: [Latn, [PA], Bislama]
|
||||||
@@ -73,17 +77,14 @@ languages:
|
|||||||
ckb: [Arab, [ME], کوردی]
|
ckb: [Arab, [ME], کوردی]
|
||||||
co: [Latn, [EU], corsu]
|
co: [Latn, [EU], corsu]
|
||||||
cps: [Latn, [AS], Capiceño]
|
cps: [Latn, [AS], Capiceño]
|
||||||
|
# FIXME: alias
|
||||||
|
cr: [Cans, [AM], ᓀᐦᐃᔭᐍᐏᐣ]
|
||||||
cr-cans: [Cans, [AM], ᓀᐦᐃᔭᐍᐏᐣ]
|
cr-cans: [Cans, [AM], ᓀᐦᐃᔭᐍᐏᐣ]
|
||||||
cr-latn: [Latn, [AM], Nēhiyawēwin]
|
cr-latn: [Latn, [AM], Nēhiyawēwin]
|
||||||
# XXX multiple script
|
# FIXME: alias
|
||||||
# cr: [[Latn, Cans], [AM], [Nēhiyawēwin, ᓀᐦᐃᔭᐍᐏᐣ]]
|
crh: [Latn, [EU], qırımtatarca]
|
||||||
cr: [Cans, [AM], Nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ]
|
crh-cyrl: [Cyrl, [EU], къырымтатарджа]
|
||||||
crh-cyrl: [Cyrl, [EU], къырымтатарджа (Кирилл)]
|
crh-latn: [Latn, [EU], qırımtatarca]
|
||||||
crh-latn: [Latn, [EU], qırımtatarca (Latin)]
|
|
||||||
# XXX multiple script
|
|
||||||
# Latn is default in Wikipedia, Cyrl is common IRL
|
|
||||||
# crh: [[Cyrl, Latn], [EU], [къырымтатарджа, qırımtatarca]]
|
|
||||||
crh: [Latn, [EU], къырымтатарджа / qırımtatarca]
|
|
||||||
cs: [Latn, [EU], česky]
|
cs: [Latn, [EU], česky]
|
||||||
csb: [Latn, [EU], kaszëbsczi]
|
csb: [Latn, [EU], kaszëbsczi]
|
||||||
# FIXME: what script?
|
# FIXME: what script?
|
||||||
@@ -106,7 +107,6 @@ languages:
|
|||||||
eml: [Latn, [EU], emiliàn e rumagnòl]
|
eml: [Latn, [EU], emiliàn e rumagnòl]
|
||||||
en-ca: [Latn, [AM], Canadian English]
|
en-ca: [Latn, [AM], Canadian English]
|
||||||
en-gb: [Latn, [EU, AS, PA], British English]
|
en-gb: [Latn, [EU, AS, PA], British English]
|
||||||
# world?
|
|
||||||
en: [Latn, [EU, AM, AF, ME, AS, PA, WW], English]
|
en: [Latn, [EU, AM, AF, ME, AS, PA, WW], English]
|
||||||
eo: [Latn, [WW], Esperanto]
|
eo: [Latn, [WW], Esperanto]
|
||||||
es-419: [Latn, [AM], español de America Latina]
|
es-419: [Latn, [AM], español de America Latina]
|
||||||
@@ -133,6 +133,7 @@ languages:
|
|||||||
ga: [Latn, [EU], Gaeilge]
|
ga: [Latn, [EU], Gaeilge]
|
||||||
gag: [Latn, [EU], Gagauz]
|
gag: [Latn, [EU], Gagauz]
|
||||||
gah: [Latn, [AS], Alekano]
|
gah: [Latn, [AS], Alekano]
|
||||||
|
# FIXME: alias
|
||||||
gan-hans: [Hans, [AS], 赣语(简体)]
|
gan-hans: [Hans, [AS], 赣语(简体)]
|
||||||
gan-hant: [Hant, [AS], 贛語(繁體)]
|
gan-hant: [Hant, [AS], 贛語(繁體)]
|
||||||
gan: [Hant, [AS], 贛語]
|
gan: [Hant, [AS], 贛語]
|
||||||
@@ -142,12 +143,10 @@ languages:
|
|||||||
gl: [Latn, [EU], galego]
|
gl: [Latn, [EU], galego]
|
||||||
glk: [Arab, [ME], گیلکی]
|
glk: [Arab, [ME], گیلکی]
|
||||||
gn: [Latn, [AM], "Avañe'ẽ"]
|
gn: [Latn, [AM], "Avañe'ẽ"]
|
||||||
|
# FIXME: alias
|
||||||
|
gom: [Deva, [AS], कोंकणी]
|
||||||
gom-deva: [Deva, [AS], कोंकणी]
|
gom-deva: [Deva, [AS], कोंकणी]
|
||||||
gom-latn: [Latn, [AS], Konknni]
|
gom-latn: [Latn, [AS], Konknni]
|
||||||
# XXX multiple script
|
|
||||||
# gom: [[Deva, Latn], [AS], [कोंकणी, Konknni]]
|
|
||||||
gom: [Deva, [AS], कोंकणी / Konknni]
|
|
||||||
# hmph?..
|
|
||||||
got: [Goth, [EU], 𐌲𐌿𐍄𐌹𐍃𐌺]
|
got: [Goth, [EU], 𐌲𐌿𐍄𐌹𐍃𐌺]
|
||||||
grc: [Grek, [EU], Ἀρχαία ἑλληνικὴ]
|
grc: [Grek, [EU], Ἀρχαία ἑλληνικὴ]
|
||||||
gsw: [Latn, [EU], Alemannisch]
|
gsw: [Latn, [EU], Alemannisch]
|
||||||
@@ -155,19 +154,18 @@ languages:
|
|||||||
guc: [Latn, [AM], Wayúu]
|
guc: [Latn, [AM], Wayúu]
|
||||||
gur: [Latn, [AF], Gurenɛ]
|
gur: [Latn, [AF], Gurenɛ]
|
||||||
gv: [Latn, [EU], Gaelg]
|
gv: [Latn, [EU], Gaelg]
|
||||||
|
# FIXME: alias
|
||||||
ha-arab: [Arab, [AF], هَوُسَ]
|
ha-arab: [Arab, [AF], هَوُسَ]
|
||||||
ha-latn: [Latn, [AF], Hausa]
|
ha-latn: [Latn, [AF], Hausa]
|
||||||
ha: [Latn, [AF], Hausa]
|
ha: [Latn, [AF], Hausa]
|
||||||
hak: [Latn, [AS], Hak-kâ-fa]
|
hak: [Latn, [AS], Hak-kâ-fa]
|
||||||
haw: [Latn, [AM, PA], Hawai`i]
|
haw: [Latn, [AM, PA], Hawai`i]
|
||||||
he: [Hebr, [ME], עברית]
|
he: [Hebr, [ME], עברית]
|
||||||
# Or maybe world?
|
|
||||||
hi: [Deva, [AS], हिन्दी]
|
hi: [Deva, [AS], हिन्दी]
|
||||||
|
# FIXME: alias
|
||||||
|
hif: [Latn, [PA, AS], Fiji Hindi]
|
||||||
hif-deva: [Deva, [AS], फ़ीजी हिन्दी]
|
hif-deva: [Deva, [AS], फ़ीजी हिन्दी]
|
||||||
hif-latn: [Latn, [PA, AS], Fiji Hindi]
|
hif-latn: [Latn, [PA, AS], Fiji Hindi]
|
||||||
# XXX multiple script
|
|
||||||
# hif: [[Deva, Latn], [PA, AS], [फ़ीजी हिन्दी, Fiji Hindi]]
|
|
||||||
hif: [Latn, [PA, AS], फ़ीजी हिन्दी / Fiji Hindi]
|
|
||||||
hil: [Latn, [AS], Ilonggo]
|
hil: [Latn, [AS], Ilonggo]
|
||||||
hne: [Deva, [AS], छत्तीसगढ़ी]
|
hne: [Deva, [AS], छत्तीसगढ़ी]
|
||||||
ho: [Latn, [PA], Hiri Motu]
|
ho: [Latn, [PA], Hiri Motu]
|
||||||
@@ -194,13 +192,14 @@ languages:
|
|||||||
is: [Latn, [EU], íslenska]
|
is: [Latn, [EU], íslenska]
|
||||||
it: [Latn, [EU], italiano]
|
it: [Latn, [EU], italiano]
|
||||||
# For variants ike-* is used
|
# For variants ike-* is used
|
||||||
iu: [Cans, [AM], ᐃᓄᒃᑎᑐᑦ/inuktitut]
|
iu: [Cans, [AM], ᐃᓄᒃᑎᑐᑦ]
|
||||||
ja: [Jpan, [AS], 日本語]
|
ja: [Jpan, [AS], 日本語]
|
||||||
jam: [Latn, [AM], Patois]
|
jam: [Latn, [AM], Patois]
|
||||||
jbo: [Latn, [WW], Lojban]
|
jbo: [Latn, [WW], Lojban]
|
||||||
jut: [Latn, [EU], jysk]
|
jut: [Latn, [EU], jysk]
|
||||||
# also in the Javanese script (Java), but the Wikipedia is in Latn
|
|
||||||
jv: [Latn, [AS, PA], Basa Jawa]
|
jv: [Latn, [AS, PA], Basa Jawa]
|
||||||
|
# For support in webfonts.
|
||||||
|
jv-java: [Java, [AS, PA], ꦧꦱꦗꦮ]
|
||||||
ka: [Geor, [EU], ქართული]
|
ka: [Geor, [EU], ქართული]
|
||||||
kaa: [Latn, [AS], Qaraqalpaqsha]
|
kaa: [Latn, [AS], Qaraqalpaqsha]
|
||||||
# Can also be Tfng, but the Wikipedia is mostly Latn
|
# Can also be Tfng, but the Wikipedia is mostly Latn
|
||||||
@@ -215,15 +214,14 @@ languages:
|
|||||||
ki: [Latn, [AF], Gĩkũyũ]
|
ki: [Latn, [AF], Gĩkũyũ]
|
||||||
kiu: [Latn, [EU, ME], Kırmancki]
|
kiu: [Latn, [EU, ME], Kırmancki]
|
||||||
kj: [Latn, [AF], Kwanyama]
|
kj: [Latn, [AF], Kwanyama]
|
||||||
|
# FIXME: alias
|
||||||
|
kk: [Cyrl, [EU, AS], қазақша]
|
||||||
kk-arab: [Arab, [EU, AS], قازاقشا (تٴوتە)]
|
kk-arab: [Arab, [EU, AS], قازاقشا (تٴوتە)]
|
||||||
kk-cn: [Arab, [EU, AS, ME], قازاقشا (جۇنگو)]
|
kk-cn: [Arab, [EU, AS, ME], قازاقشا (جۇنگو)]
|
||||||
kk-cyrl: [Cyrl, [EU, AS], қазақша (кирил)]
|
kk-cyrl: [Cyrl, [EU, AS], қазақша]
|
||||||
kk-kz: [Cyrl, [EU, AS], қазақша (Қазақстан)]
|
kk-kz: [Cyrl, [EU, AS], қазақша (Қазақстан)]
|
||||||
kk-latn: [Latn, [EU, AS, ME], qazaqşa (latın)]
|
kk-latn: [Latn, [EU, AS, ME], qazaqşa]
|
||||||
kk-tr: [Latn, [EU, AS, ME], qazaqşa (Türkïya)]
|
kk-tr: [Latn, [EU, AS, ME], qazaqşa (Türkïya)]
|
||||||
# XXX multiple script
|
|
||||||
# kk: [[Arab, Cyrl, Latn] [EU, AS], [قازاقشا, қазақша, qazaqşa]]
|
|
||||||
kk: [Cyrl, [EU, AS], қазақша / قازاقشا / qazaqşa]
|
|
||||||
kl: [Latn, [AM, EU], kalaallisut]
|
kl: [Latn, [AM, EU], kalaallisut]
|
||||||
km: [Khmr, [AS], ភាសាខ្មែរ]
|
km: [Khmr, [AS], ភាសាខ្មែរ]
|
||||||
kn: [Knda, [AS], ಕನ್ನಡ]
|
kn: [Knda, [AS], ಕನ್ನಡ]
|
||||||
@@ -239,25 +237,22 @@ languages:
|
|||||||
krl: [Latn, [EU], Karjala]
|
krl: [Latn, [EU], Karjala]
|
||||||
ks-arab: [Arab, [AS], کٲشُر]
|
ks-arab: [Arab, [AS], کٲشُر]
|
||||||
ks-deva: [Deva, [AS], कॉशुर]
|
ks-deva: [Deva, [AS], कॉशुर]
|
||||||
# XXX multiple script
|
# FIXME: alias
|
||||||
# Arab is first here just because it's the current default in the Wikipedia. Deva may be needed, too.
|
ks: [Arab, [AS], کٲشُر]
|
||||||
# ks: [[Deva, Arab], [AS], [कॉशुर, کٲشُر]]
|
|
||||||
ks: [Arab, [AS], कॉशुर / کٲشُر]
|
|
||||||
ksf: [Latn, [AF], Bafia]
|
ksf: [Latn, [AF], Bafia]
|
||||||
ksh: [Latn, [EU], Ripoarisch]
|
ksh: [Latn, [EU], Ripoarisch]
|
||||||
ku-arab: [Arab, [EU, ME], كوردي (عەرەبی)]
|
# FIXME: alias
|
||||||
ku-latn: [Latn, [EU, ME], Kurdî (latînî)]
|
ku: [Latn, [EU, ME], Kurdî]
|
||||||
# XXX multiple script
|
ku-arab: [Arab, [EU, ME], كوردي]
|
||||||
# ku: [[Arab, Latn], [EU, ME], [كوردي , Kurdî]]
|
ku-latn: [Latn, [EU, ME], Kurdî]
|
||||||
ku: [Latn, [EU, ME], كوردي / Kurdî]
|
|
||||||
kv: [Cyrl, [EU], коми]
|
kv: [Cyrl, [EU], коми]
|
||||||
kw: [Latn, [EU], kernowek]
|
kw: [Latn, [EU], kernowek]
|
||||||
ky: [Cyrl, [AS], Кыргызча]
|
ky: [Cyrl, [AS], Кыргызча]
|
||||||
la: [Latn, [EU], Latina]
|
la: [Latn, [EU], Latina]
|
||||||
# Most identified with Turkey, Bulgaria, Greece, Spain and Israel,
|
# FIXME: alias
|
||||||
# but also spoken in Latin America and elsewhere.
|
|
||||||
# Wikipedia is mostly in Latn, but also in Hebr. (Comparable to az.)
|
|
||||||
lad: [Latn, [ME, EU, AM], Ladino]
|
lad: [Latn, [ME, EU, AM], Ladino]
|
||||||
|
lad-latn: [Latn, [ME, EU, AM], Ladino]
|
||||||
|
lad-hebr: [Hebr, [ME, EU, AM], לאדינו]
|
||||||
lb: [Latn, [EU], Lëtzebuergesch]
|
lb: [Latn, [EU], Lëtzebuergesch]
|
||||||
lbe: [Cyrl, [EU], лакку]
|
lbe: [Cyrl, [EU], лакку]
|
||||||
lez: [Cyrl, [EU], лезги]
|
lez: [Cyrl, [EU], лезги]
|
||||||
@@ -333,7 +328,8 @@ languages:
|
|||||||
om: [Latn, [AF], Oromoo]
|
om: [Latn, [AF], Oromoo]
|
||||||
or: [Orya, [AS], ଓଡ଼ିଆ]
|
or: [Orya, [AS], ଓଡ଼ିଆ]
|
||||||
os: [Cyrl, [EU], Ирон]
|
os: [Cyrl, [EU], Ирон]
|
||||||
pa: [Guru, [AS], ਪੰਜਾਬੀ]
|
pa: [pa-guru]
|
||||||
|
pa-guru: [Guru, [AS], ਪੰਜਾਬੀ]
|
||||||
pag: [Latn, [AS], Pangasinan]
|
pag: [Latn, [AS], Pangasinan]
|
||||||
pam: [Latn, [AS], Kapampangan]
|
pam: [Latn, [AS], Kapampangan]
|
||||||
pap: [Latn, [AM], Papiamentu]
|
pap: [Latn, [AM], Papiamentu]
|
||||||
@@ -354,7 +350,6 @@ languages:
|
|||||||
pru: [Latn, [EU], Prūsiskan]
|
pru: [Latn, [EU], Prūsiskan]
|
||||||
ps: [Arab, [AS, ME], پښتو]
|
ps: [Arab, [AS, ME], پښتو]
|
||||||
pt-br: [Latn, [AM], português do Brasil]
|
pt-br: [Latn, [AM], português do Brasil]
|
||||||
# world?
|
|
||||||
pt: [Latn, [EU, AM, AS, PA, AF, WW], português]
|
pt: [Latn, [EU, AM, AS, PA, AF, WW], português]
|
||||||
qu: [Latn, [AM], Runa Simi]
|
qu: [Latn, [AM], Runa Simi]
|
||||||
qug: [Latn, [AM], Runa shimi]
|
qug: [Latn, [AM], Runa shimi]
|
||||||
@@ -397,13 +392,11 @@ languages:
|
|||||||
sgs: [Latn, [EU], žemaitėška]
|
sgs: [Latn, [EU], žemaitėška]
|
||||||
sh-cyrl: [Cyrl, [EU], српскохрватски]
|
sh-cyrl: [Cyrl, [EU], српскохрватски]
|
||||||
sh-latn: [Latn, [EU], srpskohrvatski]
|
sh-latn: [Latn, [EU], srpskohrvatski]
|
||||||
# XXX multiple script
|
# FIXME: alias
|
||||||
# sh: [[Latn, Cyrl], [EU], [srpskohrvatski, српскохрватски]]
|
sh: [Latn, [EU], srpskohrvatski]
|
||||||
sh: [Latn, [EU], srpskohrvatski / српскохрватски]
|
|
||||||
shi-latn: [Latn, [AF], Tašlḥiyt]
|
shi-latn: [Latn, [AF], Tašlḥiyt]
|
||||||
shi-tfng: [Tfng, [AF], ⵜⴰⵛⵍⵃⵉⵜ]
|
shi-tfng: [Tfng, [AF], ⵜⴰⵛⵍⵃⵉⵜ]
|
||||||
# XXX multiple script
|
# FIXME: which one to pick and alias?
|
||||||
# shi: [[Latn, Tfng], [AF], [Tašlḥiyt, ⵜⴰⵛⵍⵃⵉⵜ]]
|
|
||||||
shi: [Latn, [AF], Tašlḥiyt / ⵜⴰⵛⵍⵃⵉⵜ]
|
shi: [Latn, [AF], Tašlḥiyt / ⵜⴰⵛⵍⵃⵉⵜ]
|
||||||
shn: [Mymr, [AS], လိၵ်ႈတႆး]
|
shn: [Mymr, [AS], လိၵ်ႈတႆး]
|
||||||
si: [Sinh, [AS], සිංහල]
|
si: [Sinh, [AS], සිංහල]
|
||||||
@@ -421,11 +414,12 @@ languages:
|
|||||||
sn: [Latn, [AF], chiShona]
|
sn: [Latn, [AF], chiShona]
|
||||||
so: [Latn, [AF], Soomaaliga]
|
so: [Latn, [AF], Soomaaliga]
|
||||||
sq: [Latn, [EU], shqip]
|
sq: [Latn, [EU], shqip]
|
||||||
sr-ec: [Cyrl, [EU], српски (ћирилица)]
|
# FIXME: do we need the double name here?
|
||||||
sr-el: [Latn, [EU], srpski (latinica)]
|
sr: [Cyrl, [EU], српски]
|
||||||
# XXX multiple script
|
sr-ec: [sr-cyrl]
|
||||||
# sr: [[Cyrl, Latn], [EU], [српски, srpski]]
|
sr-cyrl: [Cyrl, [EU], српски]
|
||||||
sr: [Cyrl, [EU], српски / srpski]
|
sr-el: [sr-latn]
|
||||||
|
sr-latn: [Latn, [EU], srpski]
|
||||||
srn: [Latn, [AM, EU], Sranantongo]
|
srn: [Latn, [AM, EU], Sranantongo]
|
||||||
ss: [Latn, [AF], SiSwati]
|
ss: [Latn, [AF], SiSwati]
|
||||||
st: [Latn, [AF], Sesotho]
|
st: [Latn, [AF], Sesotho]
|
||||||
@@ -461,9 +455,10 @@ languages:
|
|||||||
tsd: [Grek, [EU], Τσακωνικά]
|
tsd: [Grek, [EU], Τσακωνικά]
|
||||||
tt-cyrl: [Cyrl, [EU], татарча]
|
tt-cyrl: [Cyrl, [EU], татарча]
|
||||||
tt-latn: [Latn, [EU], tatarça]
|
tt-latn: [Latn, [EU], tatarça]
|
||||||
# XXX multiple script
|
# FIXME: alias
|
||||||
# tt: [[Cyrl, Latn] [EU], [татарча, tatarça]]
|
tt: [Cyrl, [EU], татарча]
|
||||||
tt: [Cyrl, [EU], татарча / tatarça]
|
tt-cyrl: [Cyrl, [EU], татарча]
|
||||||
|
tt-latn: [Latn, [EU], tatarça]
|
||||||
ttt: [Cyrl, [AS], Tati]
|
ttt: [Cyrl, [AS], Tati]
|
||||||
tum: [Latn, [AF], chiTumbuka]
|
tum: [Latn, [AF], chiTumbuka]
|
||||||
tw: [Latn, [AF], Twi]
|
tw: [Latn, [AF], Twi]
|
||||||
@@ -472,11 +467,10 @@ languages:
|
|||||||
tyv: [Cyrl, [AS], тыва дыл]
|
tyv: [Cyrl, [AS], тыва дыл]
|
||||||
tzm: [Tfng, [AF], ⵜⴰⵎⴰⵣⵉⵖⵜ]
|
tzm: [Tfng, [AF], ⵜⴰⵎⴰⵣⵉⵖⵜ]
|
||||||
udm: [Cyrl, [EU], удмурт]
|
udm: [Cyrl, [EU], удмурт]
|
||||||
ug-arab: [Arab, [AS], ئۇيغۇرچە]
|
# FIXME: alias
|
||||||
ug-latn: [Latn, [AS], Uyghurche]
|
ug: [Arab, [AS], ئۇيغۇرچە ]
|
||||||
# XXX multiple script
|
ug-arab: [Arab, [AS], ئۇيغۇرچە ]
|
||||||
# ug: [[Arab, Latn], [AS], [ئۇيغۇرچە, Uyghurche]]
|
ug-latn: [Latn, [AS], Uyghurche ]
|
||||||
ug: [Arab, [AS], ئۇيغۇرچە / Uyghurche ]
|
|
||||||
uk: [Cyrl, [EU], українська]
|
uk: [Cyrl, [EU], українська]
|
||||||
ur: [Arab, [AS, ME], اردو]
|
ur: [Arab, [AS, ME], اردو]
|
||||||
uz: [Latn, [AS], oʻzbekcha]
|
uz: [Latn, [AS], oʻzbekcha]
|
||||||
@@ -507,6 +501,8 @@ languages:
|
|||||||
yue: [Hant, [AS], 粵語]
|
yue: [Hant, [AS], 粵語]
|
||||||
za: [Latn, [AS], Vahcuengh]
|
za: [Latn, [AS], Vahcuengh]
|
||||||
zea: [Latn, [EU], Zeêuws]
|
zea: [Latn, [EU], Zeêuws]
|
||||||
|
# world? (may apply to many varieties of Chinese)
|
||||||
|
zh: [Hans, [AS], 中文]
|
||||||
zh-classical: [Hant, [AS], 文言]
|
zh-classical: [Hant, [AS], 文言]
|
||||||
zh-cn: [Hans, [AS], 中文(中国大陆)]
|
zh-cn: [Hans, [AS], 中文(中国大陆)]
|
||||||
zh-hans: [Hans, [AS], 中文(简体)]
|
zh-hans: [Hans, [AS], 中文(简体)]
|
||||||
@@ -518,17 +514,21 @@ languages:
|
|||||||
zh-sg: [Hans, [AS], 中文(新加坡)]
|
zh-sg: [Hans, [AS], 中文(新加坡)]
|
||||||
zh-tw: [Hant, [AS], 中文(台灣)]
|
zh-tw: [Hant, [AS], 中文(台灣)]
|
||||||
zh-yue: [Hans, [AS], 粵語]
|
zh-yue: [Hans, [AS], 粵語]
|
||||||
zh: [Hans, [AS], 中文]
|
|
||||||
zu: [Latn, [AF], isiZulu]
|
zu: [Latn, [AF], isiZulu]
|
||||||
|
|
||||||
|
# All the supported scripts, grouped logically.
|
||||||
|
#
|
||||||
# The codes are taken from http://unicode.org/iso15924/iso15924-codes.html .
|
# The codes are taken from http://unicode.org/iso15924/iso15924-codes.html .
|
||||||
#
|
#
|
||||||
# The classification is roughly based on http://www.unicode.org/charts/
|
# The classification is roughly based on http://www.unicode.org/charts/
|
||||||
# with some practical corrections.
|
# with some practical corrections.
|
||||||
# The order of the groups affects display. It was suggested by Pau to distance
|
#
|
||||||
# the largest groups from one another to improve discoverability.
|
# The order of the groups affects display. Pau Giner suggested the order;
|
||||||
scriptgroups:
|
# the rationale of the order is to distance the largest groups from
|
||||||
|
# one another to improve discoverability.
|
||||||
|
#
|
||||||
# The group name "Other" is reserved.
|
# The group name "Other" is reserved.
|
||||||
|
scriptgroups:
|
||||||
# It's hard to find a better place for Goth except the Latin group.
|
# It's hard to find a better place for Goth except the Latin group.
|
||||||
Latin: [Latn, Goth]
|
Latin: [Latn, Goth]
|
||||||
# Greek is probalby different enough from Latin and Cyrillic, but user testing
|
# Greek is probalby different enough from Latin and Cyrillic, but user testing
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -18,28 +18,44 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
( function ( $ ) {
|
( function ( $ ) {
|
||||||
"use strict";
|
'use strict';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Log deprecated functions
|
* Log deprecated functions
|
||||||
*/
|
*/
|
||||||
function deprecated( oldFunc, newFunc ) {
|
function deprecated( oldFunc, newFunc ) {
|
||||||
if ( window.console && window.console.log ) {
|
if ( window.console && window.console.log ) {
|
||||||
window.console.log( oldFunc + " is deprecated. Please use " + newFunc );
|
window.console.log( oldFunc + ' is deprecated. Please use ' + newFunc );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Is this language a redirect to another language?
|
||||||
|
* @param string language code
|
||||||
|
* @return Target language code if it's a redirect or false if it's not
|
||||||
|
*/
|
||||||
|
$.uls.data.isRedirect = function( language ) {
|
||||||
|
return ( $.uls.data.languages[language] !== undefined &&
|
||||||
|
$.uls.data.languages[language].length === 1 ) ? $.uls.data.languages[language][0] : false;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the script of the language.
|
* Returns the script of the language.
|
||||||
* @param string language code
|
* @param string language code
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
$.uls.data.getScript = function( language ) {
|
$.uls.data.getScript = function( language ) {
|
||||||
|
var target = $.uls.data.isRedirect( language );
|
||||||
|
|
||||||
|
if ( target ) {
|
||||||
|
return $.uls.data.getScript( target );
|
||||||
|
}
|
||||||
|
|
||||||
return $.uls.data.languages[language][0];
|
return $.uls.data.languages[language][0];
|
||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.script = function( language ) { // deprecated
|
$.uls.data.script = function( language ) { // deprecated
|
||||||
deprecated( "script", "getScript" );
|
deprecated( 'script', 'getScript' );
|
||||||
return $.uls.data.getScript( language );
|
return $.uls.data.getScript( language );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -49,11 +65,17 @@
|
|||||||
* @return array|string 'UNKNOWN'
|
* @return array|string 'UNKNOWN'
|
||||||
*/
|
*/
|
||||||
$.uls.data.getRegions = function( language ) {
|
$.uls.data.getRegions = function( language ) {
|
||||||
|
var target = $.uls.data.isRedirect( language );
|
||||||
|
|
||||||
|
if ( target ) {
|
||||||
|
return $.uls.data.getRegions( target );
|
||||||
|
}
|
||||||
|
|
||||||
return ( $.uls.data.languages[language] && $.uls.data.languages[language][1] ) || 'UNKNOWN';
|
return ( $.uls.data.languages[language] && $.uls.data.languages[language][1] ) || 'UNKNOWN';
|
||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.regions = function( language ) { // deprecated
|
$.uls.data.regions = function( language ) { // deprecated
|
||||||
deprecated( "regions", "getRegions" );
|
deprecated( 'regions', 'getRegions' );
|
||||||
return $.uls.data.getRegions( language );
|
return $.uls.data.getRegions( language );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -63,11 +85,17 @@
|
|||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
$.uls.data.getAutonym = function( language ) {
|
$.uls.data.getAutonym = function( language ) {
|
||||||
|
var target = $.uls.data.isRedirect( language );
|
||||||
|
|
||||||
|
if ( target ) {
|
||||||
|
return $.uls.data.getAutonym( target );
|
||||||
|
}
|
||||||
|
|
||||||
return ( $.uls.data.languages[language] && $.uls.data.languages[language][2] ) || language;
|
return ( $.uls.data.languages[language] && $.uls.data.languages[language][2] ) || language;
|
||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.autonym = function( language ) { // deprecated
|
$.uls.data.autonym = function( language ) { // deprecated
|
||||||
deprecated( "autonym", "getAutonym" );
|
deprecated( 'autonym', 'getAutonym' );
|
||||||
return $.uls.data.getAutonym( language );
|
return $.uls.data.getAutonym( language );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -79,6 +107,10 @@
|
|||||||
var autonymsByCode = {};
|
var autonymsByCode = {};
|
||||||
|
|
||||||
for ( var language in $.uls.data.languages ) {
|
for ( var language in $.uls.data.languages ) {
|
||||||
|
if ( $.uls.data.isRedirect( language ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
autonymsByCode[language] = $.uls.data.getAutonym( language );
|
autonymsByCode[language] = $.uls.data.getAutonym( language );
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -86,7 +118,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.autonyms = function() { // deprecated
|
$.uls.data.autonyms = function() { // deprecated
|
||||||
deprecated( "autonyms", "getAutonyms" );
|
deprecated( 'autonyms', 'getAutonyms' );
|
||||||
return $.uls.data.getAutonyms();
|
return $.uls.data.getAutonyms();
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -105,7 +137,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.allRegions = function() { // deprecated
|
$.uls.data.allRegions = function() { // deprecated
|
||||||
deprecated( "allRegions", "getAllRegions" );
|
deprecated( 'allRegions', 'getAllRegions' );
|
||||||
return $.uls.data.getAllRegions();
|
return $.uls.data.getAllRegions();
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -119,7 +151,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesInScript = function( script ) { // deprecated
|
$.uls.data.languagesInScript = function( script ) { // deprecated
|
||||||
deprecated( "languagesInScript", "getLanguagesInScript" );
|
deprecated( 'languagesInScript', 'getLanguagesInScript' );
|
||||||
return $.uls.data.getLanguagesInScript( script );
|
return $.uls.data.getLanguagesInScript( script );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -132,6 +164,10 @@
|
|||||||
var languagesInScripts = [];
|
var languagesInScripts = [];
|
||||||
|
|
||||||
for ( var language in $.uls.data.languages ) {
|
for ( var language in $.uls.data.languages ) {
|
||||||
|
if ( $.uls.data.isRedirect( language ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
for ( var i = 0; i < scripts.length; i++ ) {
|
for ( var i = 0; i < scripts.length; i++ ) {
|
||||||
if ( scripts[i] === $.uls.data.getScript( language ) ) {
|
if ( scripts[i] === $.uls.data.getScript( language ) ) {
|
||||||
languagesInScripts.push( language );
|
languagesInScripts.push( language );
|
||||||
@@ -144,7 +180,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesInScripts = function( scripts ) { // deprecated
|
$.uls.data.languagesInScripts = function( scripts ) { // deprecated
|
||||||
deprecated( "languagesInScripts", "getLanguagesInScripts" );
|
deprecated( 'languagesInScripts', 'getLanguagesInScripts' );
|
||||||
return $.uls.data.getLanguagesInScripts( scripts );
|
return $.uls.data.getLanguagesInScripts( scripts );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -158,7 +194,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesInRegion = function( region ) { // deprecated
|
$.uls.data.languagesInRegion = function( region ) { // deprecated
|
||||||
deprecated( "languagesInRegion", "getLanguagesInRegion" );
|
deprecated( 'languagesInRegion', 'getLanguagesInRegion' );
|
||||||
return $.uls.data.getLanguagesInRegion( region );
|
return $.uls.data.getLanguagesInRegion( region );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -171,6 +207,10 @@
|
|||||||
var languagesInRegions = [];
|
var languagesInRegions = [];
|
||||||
|
|
||||||
for ( var language in $.uls.data.languages ) {
|
for ( var language in $.uls.data.languages ) {
|
||||||
|
if ( $.uls.data.isRedirect( language ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
for ( var i = 0; i < regions.length; i++ ) {
|
for ( var i = 0; i < regions.length; i++ ) {
|
||||||
if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
|
if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
|
||||||
languagesInRegions.push( language );
|
languagesInRegions.push( language );
|
||||||
@@ -183,7 +223,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesInRegions = function( regions ) { // deprecated
|
$.uls.data.languagesInRegions = function( regions ) { // deprecated
|
||||||
deprecated( "languagesInRegions", "getLanguagesInRegions" );
|
deprecated( 'languagesInRegions', 'getLanguagesInRegions' );
|
||||||
return $.uls.data.getLanguagesInRegions( regions );
|
return $.uls.data.getLanguagesInRegions( regions );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -197,7 +237,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesInRegionGroup = function( groupNum ) { // deprecated
|
$.uls.data.languagesInRegionGroup = function( groupNum ) { // deprecated
|
||||||
deprecated( "languagesInRegionGroup", "getLanguagesInRegionGroup" );
|
deprecated( 'languagesInRegionGroup', 'getLanguagesInRegionGroup' );
|
||||||
return $.uls.data.getLanguagesInRegionGroup( groupNum );
|
return $.uls.data.getLanguagesInRegionGroup( groupNum );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -211,6 +251,10 @@
|
|||||||
var languagesByScriptInRegion = {};
|
var languagesByScriptInRegion = {};
|
||||||
|
|
||||||
for ( var language in $.uls.data.languages ) {
|
for ( var language in $.uls.data.languages ) {
|
||||||
|
if ( $.uls.data.isRedirect( language ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if ( $.inArray( region, $.uls.data.getRegions( language ) ) !== -1 ) {
|
if ( $.inArray( region, $.uls.data.getRegions( language ) ) !== -1 ) {
|
||||||
var script = $.uls.data.getScript( language );
|
var script = $.uls.data.getScript( language );
|
||||||
if ( languagesByScriptInRegion[script] === undefined ) {
|
if ( languagesByScriptInRegion[script] === undefined ) {
|
||||||
@@ -224,7 +268,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesByScriptInRegion = function( region ) { // deprecated
|
$.uls.data.languagesByScriptInRegion = function( region ) { // deprecated
|
||||||
deprecated( "languagesByScriptInRegion", "getLanguagesByScriptInRegion" );
|
deprecated( 'languagesByScriptInRegion', 'getLanguagesByScriptInRegion' );
|
||||||
return $.uls.data.getLanguagesByScriptInRegion( region );
|
return $.uls.data.getLanguagesByScriptInRegion( region );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -239,7 +283,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesByScriptGroupInRegion = function( region ) { // deprecated
|
$.uls.data.languagesByScriptGroupInRegion = function( region ) { // deprecated
|
||||||
deprecated( "languagesByScriptGroupInRegion", "getLanguagesByScriptGroupInRegion" );
|
deprecated( 'languagesByScriptGroupInRegion', 'getLanguagesByScriptGroupInRegion' );
|
||||||
return $.uls.data.getLanguagesByScriptGroupInRegion( region );
|
return $.uls.data.getLanguagesByScriptGroupInRegion( region );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -253,7 +297,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.allLanguagesByScriptGroup = function() { // deprecated
|
$.uls.data.allLanguagesByScriptGroup = function() { // deprecated
|
||||||
deprecated( "allLanguagesByScriptGroup", "getAllLanguagesByScriptGroup" );
|
deprecated( 'allLanguagesByScriptGroup', 'getAllLanguagesByScriptGroup' );
|
||||||
return $.uls.data.getAllLanguagesByScriptGroup();
|
return $.uls.data.getAllLanguagesByScriptGroup();
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -285,7 +329,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesByScriptGroup = function( languages ) { // deprecated
|
$.uls.data.languagesByScriptGroup = function( languages ) { // deprecated
|
||||||
deprecated( "languagesByScriptGroup", "getLanguagesByScriptGroup" );
|
deprecated( 'languagesByScriptGroup', 'getLanguagesByScriptGroup' );
|
||||||
return $.uls.data.getLanguagesByScriptGroup( languages );
|
return $.uls.data.getLanguagesByScriptGroup( languages );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -299,12 +343,18 @@
|
|||||||
var languagesByScriptGroupInRegions = {};
|
var languagesByScriptGroupInRegions = {};
|
||||||
|
|
||||||
for ( var language in $.uls.data.languages ) {
|
for ( var language in $.uls.data.languages ) {
|
||||||
|
if ( $.uls.data.isRedirect( language ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
for ( var i = 0; i < regions.length; i++ ) {
|
for ( var i = 0; i < regions.length; i++ ) {
|
||||||
if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
|
if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
|
||||||
var scriptGroup = $.uls.data.getScriptGroupOfLanguage( language );
|
var scriptGroup = $.uls.data.getScriptGroupOfLanguage( language );
|
||||||
|
|
||||||
if ( languagesByScriptGroupInRegions[scriptGroup] === undefined ) {
|
if ( languagesByScriptGroupInRegions[scriptGroup] === undefined ) {
|
||||||
languagesByScriptGroupInRegions[scriptGroup] = [];
|
languagesByScriptGroupInRegions[scriptGroup] = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
languagesByScriptGroupInRegions[scriptGroup].push( language );
|
languagesByScriptGroupInRegions[scriptGroup].push( language );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -315,7 +365,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesByScriptGroupInRegions = function( regions ) { // deprecated
|
$.uls.data.languagesByScriptGroupInRegions = function( regions ) { // deprecated
|
||||||
deprecated( "languagesByScriptGroupInRegions", "getLanguagesByScriptGroupInRegions" );
|
deprecated( 'languagesByScriptGroupInRegions', 'getLanguagesByScriptGroupInRegions' );
|
||||||
return $.uls.data.getLanguagesByScriptGroupInRegions( regions );
|
return $.uls.data.getLanguagesByScriptGroupInRegions( regions );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -331,13 +381,19 @@
|
|||||||
|
|
||||||
for ( region in $.uls.data.regiongroups ) {
|
for ( region in $.uls.data.regiongroups ) {
|
||||||
regionGroup = $.uls.data.regiongroups[region];
|
regionGroup = $.uls.data.regiongroups[region];
|
||||||
|
|
||||||
if ( allLanguagesByRegionAndScript[regionGroup] === undefined ) {
|
if ( allLanguagesByRegionAndScript[regionGroup] === undefined ) {
|
||||||
allLanguagesByRegionAndScript[regionGroup] = {};
|
allLanguagesByRegionAndScript[regionGroup] = {};
|
||||||
}
|
}
|
||||||
|
|
||||||
allLanguagesByRegionAndScript[regionGroup][region] = {};
|
allLanguagesByRegionAndScript[regionGroup][region] = {};
|
||||||
}
|
}
|
||||||
|
|
||||||
for ( var language in $.uls.data.languages ) {
|
for ( var language in $.uls.data.languages ) {
|
||||||
|
if ( $.uls.data.isRedirect( language ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
var script = $.uls.data.getScript( language );
|
var script = $.uls.data.getScript( language );
|
||||||
var scriptGroup = $.uls.data.getGroupOfScript( script );
|
var scriptGroup = $.uls.data.getGroupOfScript( script );
|
||||||
var regions = $.uls.data.getRegions( language );
|
var regions = $.uls.data.getRegions( language );
|
||||||
@@ -362,7 +418,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.allLanguagesByRegionAndScript = function() { // deprecated
|
$.uls.data.allLanguagesByRegionAndScript = function() { // deprecated
|
||||||
deprecated( "allLanguagesByRegionAndScript", "getAllLanguagesByRegionAndScript" );
|
deprecated( 'allLanguagesByRegionAndScript', 'getAllLanguagesByRegionAndScript' );
|
||||||
return $.uls.data.getAllLanguagesByRegionAndScript();
|
return $.uls.data.getAllLanguagesByRegionAndScript();
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -384,7 +440,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.regionsInGroup = function( groupNum ) { // deprecated
|
$.uls.data.regionsInGroup = function( groupNum ) { // deprecated
|
||||||
deprecated( "regionsInGroup", "getRegionsInGroup" );
|
deprecated( 'regionsInGroup', 'getRegionsInGroup' );
|
||||||
return $.uls.data.getRegionsInGroup( groupNum );
|
return $.uls.data.getRegionsInGroup( groupNum );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -405,7 +461,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.groupOfScript = function( script ) { // deprecated
|
$.uls.data.groupOfScript = function( script ) { // deprecated
|
||||||
deprecated( "groupOfScript", "getGroupOfScript" );
|
deprecated( 'groupOfScript', 'getGroupOfScript' );
|
||||||
return $.uls.data.getGroupOfScript( script );
|
return $.uls.data.getGroupOfScript( script );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -419,7 +475,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.scriptGroupOfLanguage = function( language ) { // deprecated
|
$.uls.data.scriptGroupOfLanguage = function( language ) { // deprecated
|
||||||
deprecated( "scriptGroupOfLanguage", "getScriptGroupOfLanguage" );
|
deprecated( 'scriptGroupOfLanguage', 'getScriptGroupOfLanguage' );
|
||||||
return $.uls.data.getScriptGroupOfLanguage( language );
|
return $.uls.data.getScriptGroupOfLanguage( language );
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -462,7 +518,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
$.uls.data.languagesInTerritory = function( territory ) { // deprecated
|
$.uls.data.languagesInTerritory = function( territory ) { // deprecated
|
||||||
deprecated( "languagesInTerritory", "getLanguagesInTerritory" );
|
deprecated( 'languagesInTerritory', 'getLanguagesInTerritory' );
|
||||||
return $.uls.data.getLanguagesInTerritory( territory );
|
return $.uls.data.getLanguagesInTerritory( territory );
|
||||||
};
|
};
|
||||||
} ( jQuery ) );
|
} ( jQuery ) );
|
||||||
|
|||||||
@@ -34,6 +34,23 @@
|
|||||||
return result;
|
return result;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Runs over all languages and checks that all redirects have a valid target.
|
||||||
|
*/
|
||||||
|
var badRedirects = function () {
|
||||||
|
var result = [];
|
||||||
|
|
||||||
|
for ( var language in $.uls.data.languages ) {
|
||||||
|
var target = $.uls.data.isRedirect( language );
|
||||||
|
|
||||||
|
if ( target && !$.uls.data.languages[target] ) {
|
||||||
|
result.push( language );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Runs over all script codes mentioned in langdb and checks whether
|
* Runs over all script codes mentioned in langdb and checks whether
|
||||||
* they have something that looks like an autonym.
|
* they have something that looks like an autonym.
|
||||||
@@ -54,13 +71,18 @@
|
|||||||
assert.ok( $.fn.uls, "$.fn.uls is defined" );
|
assert.ok( $.fn.uls, "$.fn.uls is defined" );
|
||||||
} );
|
} );
|
||||||
|
|
||||||
test( "-- $.uls.data testing", 27, function ( assert ) {
|
test( "-- $.uls.data testing", 40, function ( assert ) {
|
||||||
|
|
||||||
assert.strictEqual( $.uls.data.getAutonyms()['he'], 'עברית', 'Correct autonym is returned for Hebrew using getAutonyms().' );
|
assert.strictEqual( $.uls.data.isRedirect( 'sr-ec' ), 'sr-cyrl', "'sr-ec' is a redirect to 'sr-cyrl'" );
|
||||||
|
var autonyms = $.uls.data.getAutonyms();
|
||||||
|
assert.strictEqual( autonyms['he'], 'עברית', 'Correct autonym is returned for Hebrew using getAutonyms().' );
|
||||||
|
assert.strictEqual( autonyms['pa'], undefined, "Language 'pa' is not listed in autonyms, because it's a redirect" );
|
||||||
|
assert.strictEqual( autonyms['pa-guru'], 'ਪੰਜਾਬੀ', "Language 'pa-guru' has the correct autonym" );
|
||||||
|
|
||||||
// This test assumes that we don't want any scripts to be in the 'Other'
|
// This test assumes that we don't want any scripts to be in the 'Other'
|
||||||
// group. Actually, this may become wrong some day.
|
// group. Actually, this may become wrong some day.
|
||||||
assert.deepEqual( orphanScripts(), [], 'All scripts belong to script groups.' );
|
assert.deepEqual( orphanScripts(), [], 'All scripts belong to script groups.' );
|
||||||
|
assert.deepEqual( badRedirects(), [], 'All redirects have valid targets.' );
|
||||||
assert.deepEqual( languagesWithoutAutonym(), [], 'All languages have autonyms.' );
|
assert.deepEqual( languagesWithoutAutonym(), [], 'All languages have autonyms.' );
|
||||||
|
|
||||||
assert.strictEqual(
|
assert.strictEqual(
|
||||||
@@ -84,20 +106,27 @@
|
|||||||
assert.deepEqual( allLanguagesByRegionAndScript['4']['AS']['SouthEastAsian']['Bugi'], [
|
assert.deepEqual( allLanguagesByRegionAndScript['4']['AS']['SouthEastAsian']['Bugi'], [
|
||||||
'bug'
|
'bug'
|
||||||
], 'All languages in the Buginese script in Asia were selected' );
|
], 'All languages in the Buginese script in Asia were selected' );
|
||||||
|
assert.deepEqual( allLanguagesByRegionAndScript['4']['AS']['SouthAsian']['Guru'], [
|
||||||
|
'pa-guru'
|
||||||
|
], 'Only language pa-guru appears as a language in script Guru in SouthAsian languages in Asia' );
|
||||||
|
|
||||||
|
var languagesInEU = $.uls.data.getLanguagesInRegion( 'EU' );
|
||||||
|
assert.strictEqual( $.inArray( 'sr-ec', languagesInEU ), -1, "Language 'sr-ec' doesn't appear in languages of region EU, because it's a redirect" );
|
||||||
|
assert.ok( $.inArray( 'sr-cyrl', languagesInEU ) > -1, "Language 'sr-cyrl' appears in languages of region EU, because it's not a redirect" );
|
||||||
|
|
||||||
assert.deepEqual( $.uls.data.getLanguagesInRegion( "PA" ),
|
assert.deepEqual( $.uls.data.getLanguagesInRegion( "PA" ),
|
||||||
[
|
[
|
||||||
"ace", "bi", "ch", "en-gb", "en", "fj", "haw", "hif-latn", "hif", "ho", "jv",
|
"ace", "bi", "ch", "en-gb", "en", "fj", "haw", "hif", "hif-latn", "ho", "jv", "jv-java",
|
||||||
"mh", "mi", "na", "niu", "pih", "pis", "pt", "rtm", "sm", "tet",
|
"mh", "mi", "na", "niu", "pih", "pis", "pt", "rtm", "sm", "tet",
|
||||||
"to", "tpi", "ty", "wls"
|
"to", "tpi", "ty", "wls"
|
||||||
],
|
],
|
||||||
"languages of region PA are selected correctly" );
|
"languages of region PA are selected correctly" );
|
||||||
assert.deepEqual( $.uls.data.getLanguagesInRegions( ["AM", "WW"] ),
|
assert.deepEqual( $.uls.data.getLanguagesInRegions( ["AM", "WW"] ),
|
||||||
[
|
[
|
||||||
"akz", "arn", "aro", "ase", "avk", "ay", "cho", "chr", "chy", "cr-cans", "cr-latn",
|
"akz", "arn", "aro", "ase", "avk", "ay", "cho", "chr", "chy", "cr", "cr-cans", "cr-latn",
|
||||||
"cr", "en-ca", "en", "eo", "es-419", "es-formal", "es", "esu", "fr", "gcf", "gn",
|
"en-ca", "en", "eo", "es-419", "es-formal", "es", "esu", "fr", "gcf", "gn",
|
||||||
"guc", "haw", "ht", "ia", "ie", "ik", "ike-cans", "ike-latn", "io", "iu", "jam",
|
"guc", "haw", "ht", "ia", "ie", "ik", "ike-cans", "ike-latn", "io", "iu", "jam",
|
||||||
"jbo", "kgp", "kl", "lad", "lfn", "mfe", "mic", "mus", "nah", "nl-informal", "nl",
|
"jbo", "kgp", "kl", "lad", "lad-latn", "lad-hebr", "lfn", "mfe", "mic", "mus", "nah", "nl-informal", "nl",
|
||||||
"nov", "nv", "pap", "pdc", "pdt", "ppl", "pt-br", "pt", "qu", "qug", "rap", "sei",
|
"nov", "nv", "pap", "pdc", "pdt", "ppl", "pt-br", "pt", "qu", "qug", "rap", "sei",
|
||||||
"simple", "srn", "tokipona", "vo", "yi", "yrl", "yua"
|
"simple", "srn", "tokipona", "vo", "yi", "yrl", "yua"
|
||||||
],
|
],
|
||||||
@@ -107,6 +136,10 @@
|
|||||||
assert.deepEqual( $.uls.data.getLanguagesInScript( 'Knda' ), [
|
assert.deepEqual( $.uls.data.getLanguagesInScript( 'Knda' ), [
|
||||||
"kn", "tcy"
|
"kn", "tcy"
|
||||||
], "languages in script Knda are selected correctly" );
|
], "languages in script Knda are selected correctly" );
|
||||||
|
assert.deepEqual( $.uls.data.getLanguagesInScript( 'Guru' ),
|
||||||
|
["pa-guru"],
|
||||||
|
"'pa-guru' is written in script Guru, and 'pa' is skipped as a redirect"
|
||||||
|
);
|
||||||
assert.deepEqual( $.uls.data.getLanguagesInScripts( ['Geor', 'Armn'] ),
|
assert.deepEqual( $.uls.data.getLanguagesInScripts( ['Geor', 'Armn'] ),
|
||||||
["hy", "ka", "xmf"],
|
["hy", "ka", "xmf"],
|
||||||
"languages in scripts Geor and Armn are selected correctly"
|
"languages in scripts Geor and Armn are selected correctly"
|
||||||
@@ -124,15 +157,26 @@
|
|||||||
|
|
||||||
var languagesByScriptInAM = $.uls.data.getLanguagesByScriptInRegion( "AM" );
|
var languagesByScriptInAM = $.uls.data.getLanguagesByScriptInRegion( "AM" );
|
||||||
assert.deepEqual( languagesByScriptInAM['Cans'], [
|
assert.deepEqual( languagesByScriptInAM['Cans'], [
|
||||||
"cr-cans", "cr", "ike-cans", "iu"
|
"cr", "cr-cans", "ike-cans", "iu"
|
||||||
], "correct languages in Cans in AM selected" );
|
], "correct languages in Cans in AM selected" );
|
||||||
|
|
||||||
assert.strictEqual( $.uls.data.getAutonym( 'pa' ), 'ਪੰਜਾਬੀ', 'Correct autonym of the Punjabi language was selected' );
|
var languagesByScriptInEU = $.uls.data.getLanguagesByScriptInRegion( "EU" );
|
||||||
|
assert.strictEqual( $.inArray( 'sr-el', languagesByScriptInEU['Latn'] ), -1,
|
||||||
|
"Language 'sr-el' doesn't appear as a Latin-script language in EU, because it's a redirect" );
|
||||||
|
assert.ok( $.inArray( 'sr-latn', languagesByScriptInEU['Latn'] ) > -1,
|
||||||
|
"Language 'sr-latn' appears as a Latin-script language in EU, because it's not a redirect" );
|
||||||
|
|
||||||
|
assert.strictEqual( $.uls.data.getAutonym( 'pa' ), 'ਪੰਜਾਬੀ', 'Correct autonym of the Punjabi language was selected using code pa.' );
|
||||||
|
assert.strictEqual( $.uls.data.getAutonym( 'pa-guru' ), 'ਪੰਜਾਬੀ', 'Correct autonym of the Punjabi language was selected using code pa.' );
|
||||||
|
|
||||||
var languagesByScriptGroupInEMEA = $.uls.data.getLanguagesByScriptGroupInRegions( $.uls.data.getRegionsInGroup( 3 ) );
|
var languagesByScriptGroupInEMEA = $.uls.data.getLanguagesByScriptGroupInRegions( $.uls.data.getRegionsInGroup( 3 ) );
|
||||||
assert.deepEqual( languagesByScriptGroupInEMEA['WestCaucasian'], [
|
assert.deepEqual( languagesByScriptGroupInEMEA['WestCaucasian'], [
|
||||||
'hy', 'ka', 'xmf'
|
'hy', 'ka', 'xmf'
|
||||||
], 'Correct languages in WestCaucasian script group in EMEA selected' );
|
], 'Correct languages in WestCaucasian script group in EMEA selected' );
|
||||||
|
assert.strictEqual( $.inArray( 'sr-ec', languagesByScriptGroupInEMEA['Cyrillic'] ), -1,
|
||||||
|
"Language 'sr-ec' doesn't appear as a Cyrillic-scriptgroup language in EMEA, because it's a redirect" );
|
||||||
|
assert.ok( $.inArray( 'sr-cyrl', languagesByScriptGroupInEMEA['Cyrillic'] ) > -1,
|
||||||
|
"Language 'sr-cyrl' appears as a Cyrillic-scriptgroup language in EMEA, because it's not a redirect" );
|
||||||
|
|
||||||
var allLanguagesByScriptGroup = $.uls.data.getAllLanguagesByScriptGroup();
|
var allLanguagesByScriptGroup = $.uls.data.getAllLanguagesByScriptGroup();
|
||||||
assert.deepEqual( allLanguagesByScriptGroup['Greek'], [
|
assert.deepEqual( allLanguagesByScriptGroup['Greek'], [
|
||||||
|
|||||||
Reference in New Issue
Block a user