Module:scripts/data: Difference between revisions

No edit summary
No edit summary
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
--[=[
--[=[
    This is imported from Wiktionary - it'll be updated for this wiki - the data is left currently as examples.
When adding new scripts to this file, please don't forget to add
When adding new scripts to this file, please don't forget to add
style definitons for the script in [[MediaWiki:Common.css]].
style definitons for the script in [[MediaWiki:Common.css]].
]=]
]=]
local concat = table.concat
local concat = table.concat
local insert = table.insert
local insert = table.insert
Line 13: Line 10:
local select = select
local select = select
local sort = table.sort
local sort = table.sort
local u = require("Module:string utilities").char
 
-- Loaded on demand, as it may not be needed (depending on the data).
local function u(...)
u = require("Module:string utilities").char
return u(...)
end


------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
Line 66: Line 68:
end
end
end
end
sc.characters = concat(chars)
sc.characters = mw.ustring.gsub(concat(chars), "([%[%]])", "%%1")  
ranges.n = #ranges
ranges.n = #ranges
return sc
return sc
Line 91: Line 93:


local m = {}
local m = {}
--Constructed languages
m["Ayer"] = {
"Tahano Hikamu",
"abugida",
characters = "A-Za-z*ñÑʔəƏꜷꜶ¯ˀ¨ʰʲː[]&+0-9¹²",
character_category = false,
}
m["Roka"] = {
"Rokadong Curakjang",
"abugida",
characters = "A-Za-z*[]{}'\"0-9",
character_category = false,
}


--Natural languages
--Natural languages
Line 112: Line 98:
m["Adlm"] = process_ranges{
m["Adlm"] = process_ranges{
"Adlam",
"Adlam",
19606346,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 126: Line 113:
m["Afak"] = {
m["Afak"] = {
"Afaka",
"Afaka",
382019,
"syllabary",
"syllabary",
-- Not in Unicode
-- Not in Unicode
Line 132: Line 120:
m["Aghb"] = process_ranges{
m["Aghb"] = process_ranges{
"Caucasian Albanian",
"Caucasian Albanian",
2495716,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 141: Line 130:
m["Ahom"] = process_ranges{
m["Ahom"] = process_ranges{
"Ahom",
"Ahom",
2839633,
"abugida",
"abugida",
ranges = {
ranges = {
Line 151: Line 141:
m["Arab"] = process_ranges{
m["Arab"] = process_ranges{
"Arabic",
"Arabic",
"abjad", -- more precisely, impure abjad
1828555,
"abjad", -- more precisely, impure abjad
varieties = {"Jawi", {"Nastaliq", "Nastaleeq"}},
varieties = {"Jawi", {"Nastaliq", "Nastaleeq"}},
ranges = {
ranges = {
Line 158: Line 149:
0x0870, 0x088E,
0x0870, 0x088E,
0x0890, 0x0891,
0x0890, 0x0891,
0x0898, 0x08E1,
0x0897, 0x08E1,
0x08E3, 0x08FF,
0x08E3, 0x08FF,
0xFB50, 0xFBC2,
0xFB50, 0xFBC2,
Line 169: Line 160:
0x102E0, 0x102FB,
0x102E0, 0x102FB,
0x10E60, 0x10E7E,
0x10E60, 0x10E7E,
0x10EFD, 0x10EFF,
0x10EC2, 0x10EC4,
0x10EFC, 0x10EFF,
0x1EE00, 0x1EE03,
0x1EE00, 0x1EE03,
0x1EE05, 0x1EE1F,
0x1EE05, 0x1EE1F,
Line 214: Line 206:
m["fa-Arab"] = {
m["fa-Arab"] = {
"Arabic",
"Arabic",
m["Arab"][2],
744068,
m["Arab"][3],
ranges = m["Arab"].ranges,
ranges = m["Arab"].ranges,
characters = m["Arab"].characters,
characters = m["Arab"].characters,
Line 225: Line 218:
m["kk-Arab"] = {
m["kk-Arab"] = {
"Arabic",
"Arabic",
m["Arab"][2],
90681452,
m["Arab"][3],
ranges = m["Arab"].ranges,
ranges = m["Arab"].ranges,
characters = m["Arab"].characters,
characters = m["Arab"].characters,
Line 241: Line 235:
m["pa-Arab"] = {
m["pa-Arab"] = {
"Shahmukhi",
"Shahmukhi",
m["Arab"][2],
133800,
m["Arab"][3],
ranges = m["Arab"].ranges,
ranges = m["Arab"].ranges,
characters = m["Arab"].characters,
characters = m["Arab"].characters,
Line 260: Line 255:
m["Armi"] = process_ranges{
m["Armi"] = process_ranges{
"Imperial Aramaic",
"Imperial Aramaic",
26978,
"abjad",
"abjad",
ranges = {
ranges = {
Line 270: Line 266:
m["Armn"] = process_ranges{
m["Armn"] = process_ranges{
"Armenian",
"Armenian",
11932,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 282: Line 279:
m["Avst"] = process_ranges{
m["Avst"] = process_ranges{
"Avestan",
"Avestan",
790681,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 292: Line 290:
m["pal-Avst"] = {
m["pal-Avst"] = {
"Pazend",
"Pazend",
m["Avst"][2],
4925073,
m["Avst"][3],
ranges = m["Avst"].ranges,
ranges = m["Avst"].ranges,
characters = m["Avst"].characters,
characters = m["Avst"].characters,
Line 301: Line 300:
m["Bali"] = process_ranges{
m["Bali"] = process_ranges{
"Balinese",
"Balinese",
804984,
"abugida",
"abugida",
ranges = {
ranges = {
0x1B00, 0x1B4C,
0x1B00, 0x1B4C,
0x1B50, 0x1B7E,
0x1B4E, 0x1B7F,
},
},
}
}
Line 310: Line 310:
m["Bamu"] = process_ranges{
m["Bamu"] = process_ranges{
"Bamum",
"Bamum",
806024,
"syllabary",
"syllabary",
ranges = {
ranges = {
Line 319: Line 320:
m["Bass"] = process_ranges{
m["Bass"] = process_ranges{
"Bassa",
"Bassa",
810458,
"alphabet",
"alphabet",
aliases = {"Bassa Vah", "Vah"},
aliases = {"Bassa Vah", "Vah"},
Line 329: Line 331:
m["Batk"] = process_ranges{
m["Batk"] = process_ranges{
"Batak",
"Batak",
51592,
"abugida",
"abugida",
ranges = {
ranges = {
Line 338: Line 341:
m["Beng"] = process_ranges{
m["Beng"] = process_ranges{
"Bengali",
"Bengali",
756802,
"abugida",
"abugida",
ranges = {
ranges = {
Line 376: Line 380:
m["as-Beng"] = process_ranges{
m["as-Beng"] = process_ranges{
"Assamese",
"Assamese",
m["Beng"][2],
191272,
otherNames = {"Bengali-Assamese", "Eastern Nagari"},
m["Beng"][3],
otherNames = {"Eastern Nagari"},
ranges = {
ranges = {
0x0951, 0x0952,
0x0951, 0x0952,
Line 411: Line 416:
m["Bhks"] = process_ranges{
m["Bhks"] = process_ranges{
"Bhaiksuki",
"Bhaiksuki",
17017839,
"abugida",
"abugida",
ranges = {
ranges = {
Line 421: Line 427:


m["Blis"] = {
m["Blis"] = {
"Blissymbols",
"Blissymbolic",
609817,
"logography",
"logography",
aliases = {"Blissymbolics"},
aliases = {"Blissymbols"},
-- Not in Unicode
-- Not in Unicode
}
}
Line 429: Line 436:
m["Bopo"] = process_ranges{
m["Bopo"] = process_ranges{
"Zhuyin",
"Zhuyin",
198269,
"semisyllabary",
"semisyllabary",
aliases = {"Zhuyin Fuhao", "Bopomofo"},
aliases = {"Zhuyin Fuhao", "Bopomofo"},
Line 449: Line 457:
m["Brah"] = process_ranges{
m["Brah"] = process_ranges{
"Brahmi",
"Brahmi",
185083,
"abugida",
"abugida",
ranges = {
ranges = {
Line 463: Line 472:
m["Brai"] = process_ranges{
m["Brai"] = process_ranges{
"Braille",
"Braille",
79894,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 471: Line 481:
m["Bugi"] = process_ranges{
m["Bugi"] = process_ranges{
"Lontara",
"Lontara",
1074947,
"abugida",
"abugida",
aliases = {"Buginese"},
aliases = {"Buginese"},
Line 482: Line 493:
m["Buhd"] = process_ranges{
m["Buhd"] = process_ranges{
"Buhid",
"Buhid",
1002969,
"abugida",
"abugida",
ranges = {
ranges = {
Line 492: Line 504:
m["Cakm"] = process_ranges{
m["Cakm"] = process_ranges{
"Chakma",
"Chakma",
1059328,
"abugida",
"abugida",
ranges = {
ranges = {
Line 502: Line 515:


m["Cans"] = process_ranges{
m["Cans"] = process_ranges{
"Canadian syllabics",
"Canadian syllabic",
2479183,
"abugida",
"abugida",
ranges = {
ranges = {
Line 513: Line 527:
m["Cari"] = process_ranges{
m["Cari"] = process_ranges{
"Carian",
"Carian",
1094567,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 521: Line 536:
m["Cham"] = process_ranges{
m["Cham"] = process_ranges{
"Cham",
"Cham",
1060381,
"abugida",
"abugida",
ranges = {
ranges = {
Line 532: Line 548:
m["Cher"] = process_ranges{
m["Cher"] = process_ranges{
"Cherokee",
"Cherokee",
26549,
"syllabary",
"syllabary",
ranges = {
ranges = {
Line 542: Line 559:
m["Chis"] = {
m["Chis"] = {
"Chisoi",
"Chisoi",
123173777,
"abugida",
"abugida",
-- Not in Unicode
-- Not in Unicode
Line 547: Line 565:


m["Chrs"] = process_ranges{
m["Chrs"] = process_ranges{
"Chorasmian",
"Khwarezmian",
72386710,
"abjad",
"abjad",
aliases = {"Chorasmian"},
ranges = {
ranges = {
0x10FB0, 0x10FCB,
0x10FB0, 0x10FCB,
Line 557: Line 577:
m["Copt"] = process_ranges{
m["Copt"] = process_ranges{
"Coptic",
"Coptic",
321083,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 569: Line 590:
m["Cpmn"] = process_ranges{
m["Cpmn"] = process_ranges{
"Cypro-Minoan",
"Cypro-Minoan",
1751985,
"syllabary",
"syllabary",
aliases = {"Cypro Minoan"},
aliases = {"Cypro Minoan"},
Line 579: Line 601:
m["Cprt"] = process_ranges{
m["Cprt"] = process_ranges{
"Cypriot",
"Cypriot",
1757689,
"syllabary",
"syllabary",
ranges = {
ranges = {
Line 596: Line 619:
m["Cyrl"] = process_ranges{
m["Cyrl"] = process_ranges{
"Cyrillic",
"Cyrillic",
8209,
"alphabet",
"alphabet",
ranges = {
ranges = {
0x0400, 0x052F,
0x0400, 0x052F,
0x1C80, 0x1C88,
0x1C80, 0x1C8A,
0x1D2B, 0x1D2B,
0x1D2B, 0x1D2B,
0x1D78, 0x1D78,
0x1D78, 0x1D78,
Line 615: Line 639:
m["Cyrs"] = {
m["Cyrs"] = {
"Old Cyrillic",
"Old Cyrillic",
m["Cyrl"][2],
442244,
m["Cyrl"][3],
aliases = {"Early Cyrillic"},
aliases = {"Early Cyrillic"},
ranges = m["Cyrl"].ranges,
ranges = m["Cyrl"].ranges,
Line 629: Line 654:
m["Deva"] = process_ranges{
m["Deva"] = process_ranges{
"Devanagari",
"Devanagari",
38592,
"abugida",
"abugida",
ranges = {
ranges = {
Line 647: Line 673:
m["Diak"] = process_ranges{
m["Diak"] = process_ranges{
"Dhives Akuru",
"Dhives Akuru",
3307073,
"abugida",
"abugida",
aliases = {"Dhivehi Akuru", "Dives Akuru", "Divehi Akuru"},
aliases = {"Dhivehi Akuru", "Dives Akuru", "Divehi Akuru"},
Line 663: Line 690:
m["Dogr"] = process_ranges{
m["Dogr"] = process_ranges{
"Dogra",
"Dogra",
72402987,
"abugida",
"abugida",
ranges = {
ranges = {
Line 673: Line 701:
m["Dsrt"] = process_ranges{
m["Dsrt"] = process_ranges{
"Deseret",
"Deseret",
1200582,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 682: Line 711:
m["Dupl"] = process_ranges{
m["Dupl"] = process_ranges{
"Duployan",
"Duployan",
5316025,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 694: Line 724:
m["Egyd"] = {
m["Egyd"] = {
"Demotic",
"Demotic",
188519,
"abjad, logography",
"abjad, logography",
-- Not in Unicode
-- Not in Unicode
Line 700: Line 731:
m["Egyh"] = {
m["Egyh"] = {
"Hieratic",
"Hieratic",
208111,
"abjad, logography",
"abjad, logography",
-- Unified with Egyptian hieroglyphic in Unicode
-- Unified with Egyptian hieroglyphic in Unicode
Line 706: Line 738:
m["Egyp"] = process_ranges{
m["Egyp"] = process_ranges{
"Egyptian hieroglyphic",
"Egyptian hieroglyphic",
132659,
"abjad, logography",
"abjad, logography",
ranges = {
ranges = {
0x13000, 0x13455,
0x13000, 0x13455,
0x13460, 0x143FA,
},
},
varieties = {"Hieratic"},
varieties = {"Hieratic"},
Line 720: Line 754:
m["Elba"] = process_ranges{
m["Elba"] = process_ranges{
"Elbasan",
"Elbasan",
1036714,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 728: Line 763:
m["Elym"] = process_ranges{
m["Elym"] = process_ranges{
"Elymaic",
"Elymaic",
60744423,
"abjad",
"abjad",
ranges = {
ranges = {
Line 737: Line 773:
m["Ethi"] = process_ranges{
m["Ethi"] = process_ranges{
"Ethiopic",
"Ethiopic",
257634,
"abugida",
"abugida",
aliases = {"Ge'ez"},
aliases = {"Ge'ez", "Geʽez"},
ranges = {
ranges = {
0x1200, 0x1248,
0x1200, 0x1248,
Line 779: Line 816:
}
}


m["Gara"] = {
m["Gara"] = process_ranges{
"Garay",
"Garay",
3095302,
"alphabet",
"alphabet",
capitalized = true,
capitalized = true,
direction = "rtl",
direction = "rtl",
-- Not in Unicode
ranges = {
0x060C, 0x060C,
0x061B, 0x061B,
0x061F, 0x061F,
0x10D40, 0x10D65,
0x10D69, 0x10D85,
0x10D8E, 0x10D8F,
},
}
}


m["Geok"] = process_ranges{
m["Geok"] = process_ranges{
"Khutsuri",
"Khutsuri",
1090055,
"alphabet",
"alphabet",
ranges = { -- Ⴀ-Ⴭ is Asomtavruli, ⴀ-ⴭ is Nuskhuri
ranges = { -- Ⴀ-Ⴭ is Asomtavruli, ⴀ-ⴭ is Nuskhuri
Line 805: Line 851:
m["Geor"] = process_ranges{
m["Geor"] = process_ranges{
"Georgian",
"Georgian",
3317411,
"alphabet",
"alphabet",
ranges = { -- ა-ჿ is lowercase Mkhedruli; Ა-Ჿ is uppercase Mkhedruli (Mtavruli)
ranges = { -- ა-ჿ is lowercase Mkhedruli; Ა-Ჿ is uppercase Mkhedruli (Mtavruli)
0x0589, 0x0589,
0x10D0, 0x10FF,
0x10D0, 0x10FF,
0x1C90, 0x1CBA,
0x1C90, 0x1CBA,
Line 817: Line 865:
m["Glag"] = process_ranges{
m["Glag"] = process_ranges{
"Glagolitic",
"Glagolitic",
145625,
"alphabet",
"alphabet",
ranges = {
ranges = {
0x0484, 0x0484,
0x0484, 0x0484,
0x0487, 0x0487,
0x0487, 0x0487,
0x0589, 0x0589,
0x10FB, 0x10FB,
0x2C00, 0x2C5F,
0x2C00, 0x2C5F,
0x2E43, 0x2E43,
0x2E43, 0x2E43,
Line 835: Line 886:
m["Gong"] = process_ranges{
m["Gong"] = process_ranges{
"Gunjala Gondi",
"Gunjala Gondi",
18125340,
"abugida",
"abugida",
ranges = {
ranges = {
Line 849: Line 901:
m["Gonm"] = process_ranges{
m["Gonm"] = process_ranges{
"Masaram Gondi",
"Masaram Gondi",
16977603,
"abugida",
"abugida",
ranges = {
ranges = {
Line 864: Line 917:
m["Goth"] = process_ranges{
m["Goth"] = process_ranges{
"Gothic",
"Gothic",
467784,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 873: Line 927:
m["Gran"] = process_ranges{
m["Gran"] = process_ranges{
"Grantha",
"Grantha",
1119274,
"abugida",
"abugida",
ranges = {
ranges = {
Line 905: Line 960:
m["Grek"] = process_ranges{
m["Grek"] = process_ranges{
"Greek",
"Greek",
8216,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 933: Line 989:
m["Polyt"] = process_ranges{
m["Polyt"] = process_ranges{
"Greek",
"Greek",
m["Grek"][2],
1475332,
m["Grek"][3],
ranges = union(m["Grek"].ranges, {
ranges = union(m["Grek"].ranges, {
0x1F00, 0x1F15,
0x1F00, 0x1F15,
Line 959: Line 1,016:
m["Gujr"] = process_ranges{
m["Gujr"] = process_ranges{
"Gujarati",
"Gujarati",
733944,
"abugida",
"abugida",
ranges = {
ranges = {
Line 985: Line 1,043:
}
}


m["Gukh"] = {
m["Gukh"] = process_ranges{
"Khema",
"Khema",
110064239,
"abugida",
"abugida",
aliases = {"Gurung Khema", "Khema Phri", "Khema Lipi"},
aliases = {"Gurung Khema", "Khema Phri", "Khema Lipi"},
-- Not in Unicode
ranges = {
0x0965, 0x0965,
0x16100, 0x16139,
},
}
}


m["Guru"] = process_ranges{
m["Guru"] = process_ranges{
"Gurmukhi",
"Gurmukhi",
689894,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,024: Line 1,087:
m["Hang"] = process_ranges{
m["Hang"] = process_ranges{
"Hangul",
"Hangul",
8222,
"syllabary",
"syllabary",
aliases = {"Hangeul"},
aliases = {"Hangeul"},
Line 1,053: Line 1,117:
m["Hani"] = process_ranges{
m["Hani"] = process_ranges{
"Han",
"Han",
8201,
"logography",
"logography",
ranges = {
ranges = {
Line 1,066: Line 1,131:
0x3037, 0x303F,
0x3037, 0x303F,
0x3190, 0x319F,
0x3190, 0x319F,
0x31C0, 0x31E3,
0x31C0, 0x31E5,
0x31EF, 0x31EF,
0x31EF, 0x31EF,
0x3220, 0x3247,
0x3220, 0x3247,
Line 1,103: Line 1,168:
m["Hans"] = {
m["Hans"] = {
"Simplified Han",
"Simplified Han",
m["Hani"][2],
185614,
m["Hani"][3],
ranges = m["Hani"].ranges,
ranges = m["Hani"].ranges,
characters = m["Hani"].characters,
characters = m["Hani"].characters,
Line 1,112: Line 1,178:
m["Hant"] = {
m["Hant"] = {
"Traditional Han",
"Traditional Han",
m["Hani"][2],
178528,
m["Hani"][3],
ranges = m["Hani"].ranges,
ranges = m["Hani"].ranges,
characters = m["Hani"].characters,
characters = m["Hani"].characters,
Line 1,121: Line 1,188:
m["Hano"] = process_ranges{
m["Hano"] = process_ranges{
"Hanunoo",
"Hanunoo",
1584045,
"abugida",
"abugida",
aliases = {"Hanunó'o", "Hanuno'o"},
ranges = {
ranges = {
0x1720, 0x1736,
0x1720, 0x1736,
Line 1,129: Line 1,198:
m["Hatr"] = process_ranges{
m["Hatr"] = process_ranges{
"Hatran",
"Hatran",
20813038,
"abjad",
"abjad",
ranges = {
ranges = {
Line 1,140: Line 1,210:
m["Hebr"] = process_ranges{
m["Hebr"] = process_ranges{
"Hebrew",
"Hebrew",
"abjad", -- more precisely, impure abjad
33513,
"abjad", -- more precisely, impure abjad
ranges = {
ranges = {
0x0591, 0x05C7,
0x0591, 0x05C7,
Line 1,158: Line 1,229:
m["Hira"] = process_ranges{
m["Hira"] = process_ranges{
"Hiragana",
"Hiragana",
48332,
"syllabary",
"syllabary",
ranges = {
ranges = {
Line 1,183: Line 1,255:


m["Hluw"] = process_ranges{
m["Hluw"] = process_ranges{
"Anatolian Hieroglyphs",
"Anatolian hieroglyphic",
521323,
"logography, syllabary",
"logography, syllabary",
ranges = {
ranges = {
Line 1,193: Line 1,266:
m["Hmng"] = process_ranges{
m["Hmng"] = process_ranges{
"Pahawh Hmong",
"Pahawh Hmong",
365954,
"semisyllabary",
"semisyllabary",
aliases = {"Hmong"},
aliases = {"Hmong"},
Line 1,206: Line 1,280:
m["Hmnp"] = process_ranges{
m["Hmnp"] = process_ranges{
"Nyiakeng Puachue Hmong",
"Nyiakeng Puachue Hmong",
33712499,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 1,217: Line 1,292:
m["Hung"] = process_ranges{
m["Hung"] = process_ranges{
"Old Hungarian",
"Old Hungarian",
446224,
"alphabet",
"alphabet",
aliases = {"Hungarian runic"},
aliases = {"Hungarian runic"},
Line 1,230: Line 1,306:
m["Ibrnn"] = {
m["Ibrnn"] = {
"Northeastern Iberian",
"Northeastern Iberian",
1113155,
"semisyllabary",
"semisyllabary",
ietf_subtag = "Zzzz",
ietf_subtag = "Zzzz",
Line 1,237: Line 1,314:
m["Ibrns"] = {
m["Ibrns"] = {
"Southeastern Iberian",
"Southeastern Iberian",
2305351,
"semisyllabary",
"semisyllabary",
ietf_subtag = "Zzzz",
ietf_subtag = "Zzzz",
Line 1,245: Line 1,323:
-- To be used to avoid any formatting or link processing
-- To be used to avoid any formatting or link processing
"Image-rendered",
"Image-rendered",
478798,
-- This should not have any characters listed
-- This should not have any characters listed
ietf_subtag = "Zyyy",
ietf_subtag = "Zyyy",
translit = false,
translit = false,
character_category = false,
character_category = false, -- none
}
}


m["Inds"] = {
m["Inds"] = {
"Indus",
"Indus",
601388,
aliases = {"Harappan", "Indus Valley"},
aliases = {"Harappan", "Indus Valley"},
}
}
Line 1,258: Line 1,338:
m["Ipach"] = {
m["Ipach"] = {
"International Phonetic Alphabet",
"International Phonetic Alphabet",
21204,
aliases = {"IPA"},
aliases = {"IPA"},
ietf_subtag = "Latn",
ietf_subtag = "Latn",
Line 1,264: Line 1,345:
m["Ital"] = process_ranges{
m["Ital"] = process_ranges{
"Old Italic",
"Old Italic",
4891256,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 1,273: Line 1,355:
m["Java"] = process_ranges{
m["Java"] = process_ranges{
"Javanese",
"Javanese",
879704,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,283: Line 1,366:
m["Jurc"] = {
m["Jurc"] = {
"Jurchen",
"Jurchen",
912240,
"logography",
"logography",
spaces = false,
spaces = false,
Line 1,289: Line 1,373:
m["Kali"] = process_ranges{
m["Kali"] = process_ranges{
"Kayah Li",
"Kayah Li",
4919239,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,297: Line 1,382:
m["Kana"] = process_ranges{
m["Kana"] = process_ranges{
"Katakana",
"Katakana",
82946,
"syllabary",
"syllabary",
ranges = {
ranges = {
Line 1,325: Line 1,411:
m["Kawi"] = process_ranges{
m["Kawi"] = process_ranges{
"Kawi",
"Kawi",
975802,
"abugida",
"abugida",
ranges = {
ranges = {
0x11F00, 0x11F10,
0x11F00, 0x11F10,
0x11F12, 0x11F3A,
0x11F12, 0x11F3A,
0x11F3E, 0x11F59,
0x11F3E, 0x11F5A,
},
},
}
}
Line 1,335: Line 1,422:
m["Khar"] = process_ranges{
m["Khar"] = process_ranges{
"Kharoshthi",
"Kharoshthi",
1161266,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,351: Line 1,439:
m["Khmr"] = process_ranges{
m["Khmr"] = process_ranges{
"Khmer",
"Khmer",
1054190,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,367: Line 1,456:
m["Khoj"] = process_ranges{
m["Khoj"] = process_ranges{
"Khojki",
"Khojki",
1740656,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,378: Line 1,468:
to = {"𑈇", "𑈁", "𑈅", "𑈇", "𑈇", "𑈃", "𑈲", "𑈳", "𑈂"}
to = {"𑈇", "𑈁", "𑈅", "𑈇", "𑈇", "𑈃", "𑈲", "𑈳", "𑈂"}
},
},
}
m["Khomt"] = {
"Khom Thai",
13023788,
"abugida",
-- Not in Unicode
}
}


m["Kitl"] = {
m["Kitl"] = {
"Khitan Large",
"Khitan large",
6401797,
"logography",
"logography",
spaces = false,
spaces = false,
Line 1,387: Line 1,485:


m["Kits"] = process_ranges{
m["Kits"] = process_ranges{
"Khitan Small",
"Khitan small",
6401800,
"logography, syllabary",
"logography, syllabary",
ranges = {
ranges = {
0x16FE4, 0x16FE4,
0x16FE4, 0x16FE4,
0x18B00, 0x18CD5,
0x18B00, 0x18CD5,
0x18CFF, 0x18CFF,
},
},
spaces = false,
spaces = false,
Line 1,398: Line 1,498:
m["Knda"] = process_ranges{
m["Knda"] = process_ranges{
"Kannada",
"Kannada",
839666,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,416: Line 1,517:
0x0CF1, 0x0CF3,
0x0CF1, 0x0CF3,
0x1CD0, 0x1CD0,
0x1CD0, 0x1CD0,
0x1CD2, 0x1CD2,
0x1CD2, 0x1CD3,
0x1CDA, 0x1CDA,
0x1CDA, 0x1CDA,
0x1CF2, 0x1CF2,
0x1CF2, 0x1CF2,
Line 1,430: Line 1,531:
m["Kpel"] = {
m["Kpel"] = {
"Kpelle",
"Kpelle",
1586299,
"syllabary",
"syllabary",
-- Not in Unicode
-- Not in Unicode
}
}


m["Krai"] = {
m["Krai"] = process_ranges{
"Kirat Rai",
"Kirat Rai",
123173834,
"abugida",
"abugida",
aliases = {"Rai", "Khambu Rai", "Rai Barṇamālā", "Kirat Khambu Rai"},
aliases = {"Rai", "Khambu Rai", "Rai Barṇamālā", "Kirat Khambu Rai"},
-- Not in Unicode
ranges = {
0x16D40, 0x16D79,
},
}
}


m["Kthi"] = process_ranges{
m["Kthi"] = process_ranges{
"Kaithi",
"Kaithi",
1253814,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,450: Line 1,556:
0x110CD, 0x110CD,
0x110CD, 0x110CD,
},
},
}
m["Kulit"] = {
"Kulitan",
6443044,
"abugida",
-- Not in Unicode
}
}


m["Lana"] = process_ranges{
m["Lana"] = process_ranges{
"Tai Tham",
"Tai Tham",
1314503,
"abugida",
"abugida",
aliases = {"Tham", "Tua Mueang", "Lanna"},
aliases = {"Tham", "Tua Mueang", "Lanna"},
Line 1,468: Line 1,582:
m["Laoo"] = process_ranges{
m["Laoo"] = process_ranges{
"Lao",
"Lao",
1815229,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,487: Line 1,602:
m["Latn"] = process_ranges{
m["Latn"] = process_ranges{
"Latin",
"Latin",
8229,
"alphabet",
"alphabet",
aliases = {"Roman"},
aliases = {"Roman"},
Line 1,508: Line 1,624:
0x1D6B, 0x1D77,
0x1D6B, 0x1D77,
0x1D79, 0x1DBE,
0x1D79, 0x1DBE,
0x1DF8, 0x1DF8,
0x1E00, 0x1EFF,
0x1E00, 0x1EFF,
0x202F, 0x202F,
0x202F, 0x202F,
Line 1,523: Line 1,640:
0xA700, 0xA707,
0xA700, 0xA707,
0xA722, 0xA787,
0xA722, 0xA787,
0xA78B, 0xA7CA,
0xA78B, 0xA7CD,
0xA7D0, 0xA7D1,
0xA7D0, 0xA7D1,
0xA7D3, 0xA7D3,
0xA7D3, 0xA7D3,
0xA7D5, 0xA7D9,
0xA7D5, 0xA7DC,
0xA7F2, 0xA7FF,
0xA7F2, 0xA7FF,
0xA92E, 0xA92E,
0xA92E, 0xA92E,
Line 1,548: Line 1,665:
m["Latf"] = {
m["Latf"] = {
"Fraktur",
"Fraktur",
m["Latn"][2],
148443,
m["Latn"][3],
ranges = m["Latn"].ranges,
ranges = m["Latn"].ranges,
characters = m["Latn"].characters,
characters = m["Latn"].characters,
Line 1,559: Line 1,677:
m["Latg"] = {
m["Latg"] = {
"Gaelic",
"Gaelic",
m["Latn"][2],
1432616,
m["Latn"][3],
ranges = m["Latn"].ranges,
ranges = m["Latn"].ranges,
characters = m["Latn"].characters,
characters = m["Latn"].characters,
Line 1,570: Line 1,689:
m["pjt-Latn"] = {
m["pjt-Latn"] = {
"Latin",
"Latin",
m["Latn"][2],
nil,
m["Latn"][3],
ranges = m["Latn"].ranges,
ranges = m["Latn"].ranges,
characters = m["Latn"].characters,
characters = m["Latn"].characters,
Line 1,580: Line 1,700:
m["Leke"] = {
m["Leke"] = {
"Leke",
"Leke",
19572613,
"abugida",
"abugida",
-- Not in Unicode
-- Not in Unicode
Line 1,586: Line 1,707:
m["Lepc"] = process_ranges{
m["Lepc"] = process_ranges{
"Lepcha",
"Lepcha",
1481626,
"abugida",
"abugida",
aliases = {"Róng"},
ranges = {
ranges = {
0x1C00, 0x1C37,
0x1C00, 0x1C37,
Line 1,596: Line 1,719:
m["Limb"] = process_ranges{
m["Limb"] = process_ranges{
"Limbu",
"Limbu",
933796,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,609: Line 1,733:
m["Lina"] = process_ranges{
m["Lina"] = process_ranges{
"Linear A",
"Linear A",
30972,
ranges = {
ranges = {
0x10107, 0x10133,
0x10107, 0x10133,
Line 1,619: Line 1,744:
m["Linb"] = process_ranges{
m["Linb"] = process_ranges{
"Linear B",
"Linear B",
190102,
ranges = {
ranges = {
0x10000, 0x1000B,
0x10000, 0x1000B,
Line 1,635: Line 1,761:
m["Lisu"] = process_ranges{
m["Lisu"] = process_ranges{
"Fraser",
"Fraser",
1194621,
"alphabet",
"alphabet",
aliases = {"Old Lisu", "Lisu"},
aliases = {"Old Lisu", "Lisu"},
ranges = {
ranges = {
0x300A, 0x300B,
0xA4D0, 0xA4FF,
0xA4D0, 0xA4FF,
0x11FB0, 0x11FB0,
0x11FB0, 0x11FB0,
Line 1,649: Line 1,777:
m["Loma"] = {
m["Loma"] = {
"Loma",
"Loma",
13023816,
"syllabary",
"syllabary",
-- Not in Unicode
-- Not in Unicode
Line 1,655: Line 1,784:
m["Lyci"] = process_ranges{
m["Lyci"] = process_ranges{
"Lycian",
"Lycian",
913587,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 1,663: Line 1,793:
m["Lydi"] = process_ranges{
m["Lydi"] = process_ranges{
"Lydian",
"Lydian",
4261300,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 1,673: Line 1,804:
m["Mahj"] = process_ranges{
m["Mahj"] = process_ranges{
"Mahajani",
"Mahajani",
6732850,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,683: Line 1,815:
m["Maka"] = process_ranges{
m["Maka"] = process_ranges{
"Makasar",
"Makasar",
72947229,
"abugida",
"abugida",
aliases = {"Old Makasar"},
aliases = {"Old Makasar"},
Line 1,692: Line 1,825:
m["Mand"] = process_ranges{
m["Mand"] = process_ranges{
"Mandaic",
"Mandaic",
1812130,
aliases = {"Mandaean"},
aliases = {"Mandaean"},
ranges = {
ranges = {
Line 1,703: Line 1,837:
m["Mani"] = process_ranges{
m["Mani"] = process_ranges{
"Manichaean",
"Manichaean",
3544702,
"abjad",
"abjad",
ranges = {
ranges = {
Line 1,714: Line 1,849:
m["Marc"] = process_ranges{
m["Marc"] = process_ranges{
"Marchen",
"Marchen",
72403709,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,724: Line 1,860:
m["Maya"] = process_ranges{
m["Maya"] = process_ranges{
"Maya",
"Maya",
211248,
aliases = {"Maya hieroglyphic", "Mayan", "Mayan hieroglyphic"},
aliases = {"Maya hieroglyphic", "Mayan", "Mayan hieroglyphic"},
ranges = {
ranges = {
Line 1,732: Line 1,869:
m["Medf"] = process_ranges{
m["Medf"] = process_ranges{
"Medefaidrin",
"Medefaidrin",
1519764,
aliases = {"Oberi Okaime", "Oberi Ɔkaimɛ"},
aliases = {"Oberi Okaime", "Oberi Ɔkaimɛ"},
ranges = {
ranges = {
Line 1,741: Line 1,879:
m["Mend"] = process_ranges{
m["Mend"] = process_ranges{
"Mende",
"Mende",
951069,
aliases = {"Mende Kikakui"},
aliases = {"Mende Kikakui"},
ranges = {
ranges = {
Line 1,751: Line 1,890:
m["Merc"] = process_ranges{
m["Merc"] = process_ranges{
"Meroitic cursive",
"Meroitic cursive",
73028124,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,762: Line 1,902:
m["Mero"] = process_ranges{
m["Mero"] = process_ranges{
"Meroitic hieroglyphic",
"Meroitic hieroglyphic",
73028623,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,767: Line 1,908:
},
},
direction = "rtl",
direction = "rtl",
wikipedia_article = "Meroitic hieroglyphs",
}
}


m["Mlym"] = process_ranges{
m["Mlym"] = process_ranges{
"Malayalam",
"Malayalam",
1164129,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,794: Line 1,937:
m["Modi"] = process_ranges{
m["Modi"] = process_ranges{
"Modi",
"Modi",
1703713,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,808: Line 1,952:
m["Mong"] = process_ranges{
m["Mong"] = process_ranges{
"Mongolian",
"Mongolian",
1055705,
"alphabet",
"alphabet",
aliases = {"Mongol bichig", "Hudum Mongol bichig"},
aliases = {"Mongol bichig", "Hudum Mongol bichig"},
Line 1,820: Line 1,965:
0x200C, 0x200D,
0x200C, 0x200D,
0x202F, 0x202F,
0x202F, 0x202F,
0x3001, 0x3002,
0x3008, 0x300B,
0x11660, 0x11668,
0x11660, 0x11668,
},
},
Line 1,827: Line 1,974:
m["mnc-Mong"] = process_ranges{
m["mnc-Mong"] = process_ranges{
"Manchu",
"Manchu",
m["Mong"][2],
122888,
m["Mong"][3],
ranges = {
ranges = {
0x1801, 0x1801,
0x1801, 0x1801,
Line 1,857: Line 2,005:
m["sjo-Mong"] = process_ranges{
m["sjo-Mong"] = process_ranges{
"Xibe",
"Xibe",
m["Mong"][2],
113624153,
m["Mong"][3],
aliases = {"Sibe"},
aliases = {"Sibe"},
ranges = {
ranges = {
Line 1,880: Line 2,029:
m["xwo-Mong"] = process_ranges{
m["xwo-Mong"] = process_ranges{
"Clear Script",
"Clear Script",
m["Mong"][2],
529085,
m["Mong"][3],
aliases = {"Todo", "Todo bichig"},
aliases = {"Todo", "Todo bichig"},
ranges = {
ranges = {
Line 1,908: Line 2,058:
m["Moon"] = {
m["Moon"] = {
"Moon",
"Moon",
918391,
"alphabet",
"alphabet",
aliases = {"Moon System of Embossed Reading", "Moon type", "Moon writing", "Moon alphabet", "Moon code"},
aliases = {"Moon System of Embossed Reading", "Moon type", "Moon writing", "Moon alphabet", "Moon code"},
Line 1,915: Line 2,066:
m["Morse"] = {
m["Morse"] = {
"Morse code",
"Morse code",
79897,
ietf_subtag = "Zsym",
ietf_subtag = "Zsym",
}
}


m["Mroo"] = process_ranges{
m["Mroo"] = process_ranges{
"Mro",
"Mru",
75919253,
aliases = {"Mro", "Mrung"},
ranges = {
ranges = {
0x16A40, 0x16A5E,
0x16A40, 0x16A5E,
Line 1,929: Line 2,083:
m["Mtei"] = process_ranges{
m["Mtei"] = process_ranges{
"Meitei Mayek",
"Meitei Mayek",
2981413,
"abugida",
"abugida",
aliases = {"Meetei Mayek", "Manipuri"},
aliases = {"Meetei Mayek", "Manipuri"},
Line 1,940: Line 2,095:
m["Mult"] = process_ranges{
m["Mult"] = process_ranges{
"Multani",
"Multani",
17047906,
"abugida",
"abugida",
ranges = {
ranges = {
Line 1,952: Line 2,108:


m["Music"] = process_ranges{
m["Music"] = process_ranges{
"Musical notation",
"musical notation",
233861,
"pictography",
"pictography",
ranges = {
ranges = {
Line 1,965: Line 2,122:
m["Mymr"] = process_ranges{
m["Mymr"] = process_ranges{
"Burmese",
"Burmese",
43887939,
"abugida",
"abugida",
aliases = {"Myanmar"},
aliases = {"Myanmar"},
Line 1,972: Line 2,130:
0xA9E0, 0xA9FE,
0xA9E0, 0xA9FE,
0xAA60, 0xAA7F,
0xAA60, 0xAA7F,
0x116D0, 0x116E3,
},
},
spaces = false,
spaces = false,
Line 1,977: Line 2,136:


m["Nagm"] = process_ranges{
m["Nagm"] = process_ranges{
"Nag Mundari",
"Mundari Bani",
106917274,
"alphabet",
"alphabet",
aliases = {"Nag Mundari"},
ranges = {
ranges = {
0x1E4D0, 0x1E4F9,
0x1E4D0, 0x1E4F9,
Line 1,986: Line 2,147:
m["Nand"] = process_ranges{
m["Nand"] = process_ranges{
"Nandinagari",
"Nandinagari",
6963324,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,001: Line 2,163:


m["Narb"] = process_ranges{
m["Narb"] = process_ranges{
"Old North Arabian",
"Ancient North Arabian",
1472213,
"abjad",
"abjad",
aliases = {"Old North Arabian"},
ranges = {
ranges = {
0x10A80, 0x10A9F,
0x10A80, 0x10A9F,
Line 2,011: Line 2,175:
m["Nbat"] = process_ranges{
m["Nbat"] = process_ranges{
"Nabataean",
"Nabataean",
855624,
"abjad",
"abjad",
aliases = {"Nabatean"},
aliases = {"Nabatean"},
Line 2,022: Line 2,187:
m["Newa"] = process_ranges{
m["Newa"] = process_ranges{
"Newa",
"Newa",
7237292,
"abugida",
"abugida",
aliases = {"Newar", "Newari", "Prachalit Nepal"},
aliases = {"Newar", "Newari", "Prachalit Nepal"},
Line 2,032: Line 2,198:
m["Nkdb"] = {
m["Nkdb"] = {
"Dongba",
"Dongba",
1190953,
"pictography",
"pictography",
aliases = {"Naxi Dongba", "Nakhi Dongba", "Tomba", "Tompa", "Mo-so"},
aliases = {"Naxi Dongba", "Nakhi Dongba", "Tomba", "Tompa", "Mo-so"},
Line 2,040: Line 2,207:
m["Nkgb"] = {
m["Nkgb"] = {
"Geba",
"Geba",
731189,
"syllabary",
"syllabary",
aliases = {"Nakhi Geba", "Naxi Geba"},
aliases = {"Nakhi Geba", "Naxi Geba"},
Line 2,048: Line 2,216:
m["Nkoo"] = process_ranges{
m["Nkoo"] = process_ranges{
"N'Ko",
"N'Ko",
1062587,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 2,061: Line 2,230:


m["None"] = {
m["None"] = {
"Unspecified", -- renders as 'unspecified script'
"unspecified",
nil,
-- This should not have any characters listed
-- This should not have any characters listed
ietf_subtag = "Zyyy",
ietf_subtag = "Zyyy",
translit = false,
translit = false,
character_category = false,
character_category = false, -- none
}
}


m["Nshu"] = process_ranges{
m["Nshu"] = process_ranges{
"Nüshu",
"Nüshu",
56436,
"syllabary",
"syllabary",
aliases = {"Nushu"},
aliases = {"Nushu"},
Line 2,081: Line 2,252:
m["Ogam"] = process_ranges{
m["Ogam"] = process_ranges{
"Ogham",
"Ogham",
184661,
ranges = {
ranges = {
0x1680, 0x169C,
0x1680, 0x169C,
Line 2,088: Line 2,260:
m["Olck"] = process_ranges{
m["Olck"] = process_ranges{
"Ol Chiki",
"Ol Chiki",
201688,
aliases = {"Ol Chemetʼ", "Ol", "Santali"},
aliases = {"Ol Chemetʼ", "Ol", "Santali"},
ranges = {
ranges = {
Line 2,094: Line 2,267:
}
}


m["Onao"] = {
m["Onao"] = process_ranges{
"Ol Onal",
"Ol Onal",
108607084,
"alphabet",
"alphabet",
-- Not in Unicode
ranges = {
0x0964, 0x0965,
0x1E5D0, 0x1E5FA,
0x1E5FF, 0x1E5FF,
},
}
}


m["Orkh"] = process_ranges{
m["Orkh"] = process_ranges{
"Orkhon runes",
"Old Turkic",
aliases = {"Old Turkic"},
5058305,
aliases = {"Orkhon runic"},
ranges = {
ranges = {
0x10C00, 0x10C48,
0x10C00, 0x10C48,
Line 2,111: Line 2,290:
m["Orya"] = process_ranges{
m["Orya"] = process_ranges{
"Odia",
"Odia",
1760127,
"abugida",
"abugida",
aliases = {"Oriya"},
aliases = {"Oriya"},
Line 2,141: Line 2,321:
m["Osge"] = process_ranges{
m["Osge"] = process_ranges{
"Osage",
"Osage",
7105529,
ranges = {
ranges = {
0x104B0, 0x104D3,
0x104B0, 0x104D3,
Line 2,150: Line 2,331:
m["Osma"] = process_ranges{
m["Osma"] = process_ranges{
"Osmanya",
"Osmanya",
1377866,
ranges = {
ranges = {
0x10480, 0x1049D,
0x10480, 0x1049D,
Line 2,158: Line 2,340:
m["Ougr"] = process_ranges{
m["Ougr"] = process_ranges{
"Old Uyghur",
"Old Uyghur",
1998938,
"abjad, alphabet",
"abjad, alphabet",
ranges = {
ranges = {
Line 2,170: Line 2,353:
m["Palm"] = process_ranges{
m["Palm"] = process_ranges{
"Palmyrene",
"Palmyrene",
17538100,
ranges = {
ranges = {
0x10860, 0x1087F,
0x10860, 0x1087F,
Line 2,178: Line 2,362:
m["Pauc"] = process_ranges{
m["Pauc"] = process_ranges{
"Pau Cin Hau",
"Pau Cin Hau",
25339852,
ranges = {
ranges = {
0x11AC0, 0x11AF8,
0x11AC0, 0x11AF8,
},
},
}
m["Pcun"] = {
"Proto-Cuneiform",
1650699,
"pictography",
-- Not in Unicode
}
m["Pelm"] = {
"Proto-Elamite",
56305763,
"pictography",
-- Not in Unicode
}
}


m["Perm"] = process_ranges{
m["Perm"] = process_ranges{
"Old Permic",
"Old Permic",
147899,
ranges = {
ranges = {
0x0483, 0x0483,
0x0483, 0x0483,
Line 2,193: Line 2,393:
m["Phag"] = process_ranges{
m["Phag"] = process_ranges{
"Phags-pa",
"Phags-pa",
822836,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,207: Line 2,408:
m["Phli"] = process_ranges{
m["Phli"] = process_ranges{
"Inscriptional Pahlavi",
"Inscriptional Pahlavi",
24089793,
"abjad",
"abjad",
ranges = {
ranges = {
Line 2,217: Line 2,419:
m["Phlp"] = process_ranges{
m["Phlp"] = process_ranges{
"Psalter Pahlavi",
"Psalter Pahlavi",
7253954,
"abjad",
"abjad",
ranges = {
ranges = {
Line 2,229: Line 2,432:
m["Phlv"] = {
m["Phlv"] = {
"Book Pahlavi",
"Book Pahlavi",
72403118,
"abjad",
"abjad",
direction = "rtl",
direction = "rtl",
Line 2,236: Line 2,440:
m["Phnx"] = process_ranges{
m["Phnx"] = process_ranges{
"Phoenician",
"Phoenician",
26752,
"abjad",
"abjad",
ranges = {
ranges = {
Line 2,246: Line 2,451:
m["Plrd"] = process_ranges{
m["Plrd"] = process_ranges{
"Pollard",
"Pollard",
601734,
"abugida",
"abugida",
aliases = {"Miao"},
aliases = {"Miao"},
Line 2,257: Line 2,463:
m["Prti"] = process_ranges{
m["Prti"] = process_ranges{
"Inscriptional Parthian",
"Inscriptional Parthian",
13023804,
ranges = {
ranges = {
0x10B40, 0x10B55,
0x10B40, 0x10B55,
Line 2,262: Line 2,469:
},
},
direction = "rtl",
direction = "rtl",
}
m["Psin"] = {
"Proto-Sinaitic",
1065250,
"abjad",
direction = "rtl",
-- Not in Unicode
}
}


m["Ranj"] = {
m["Ranj"] = {
"Ranjana",
"Ranjana",
2385276,
"abugida",
"abugida",
-- Not in Unicode
-- Not in Unicode
Line 2,272: Line 2,488:
m["Rjng"] = process_ranges{
m["Rjng"] = process_ranges{
"Rejang",
"Rejang",
2007960,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,281: Line 2,498:
m["Rohg"] = process_ranges{
m["Rohg"] = process_ranges{
"Hanifi Rohingya",
"Hanifi Rohingya",
21028705,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 2,296: Line 2,514:
m["Roro"] = {
m["Roro"] = {
"Rongorongo",
"Rongorongo",
209764,
-- Not in Unicode
-- Not in Unicode
}
}
Line 2,301: Line 2,520:
m["Rumin"] = process_ranges{
m["Rumin"] = process_ranges{
"Rumi numerals",
"Rumi numerals",
nil,
ranges = {
ranges = {
0x10E60, 0x10E7E,
0x10E60, 0x10E7E,
},
},
ietf_subtag = "Arab",
ietf_subtag = "Arab",
character_category = "Rumi numerals",
}
}


m["Runr"] = process_ranges{
m["Runr"] = process_ranges{
"Runic",
"Runic",
82996,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 2,319: Line 2,539:
m["Samr"] = process_ranges{
m["Samr"] = process_ranges{
"Samaritan",
"Samaritan",
1550930,
"abjad",
"abjad",
ranges = {
ranges = {
Line 2,328: Line 2,549:


m["Sarb"] = process_ranges{
m["Sarb"] = process_ranges{
"Old South Arabian",
"Ancient South Arabian",
446074,
"abjad",
"abjad",
aliases = {"Old South Arabian"},
ranges = {
ranges = {
0x10A60, 0x10A7F,
0x10A60, 0x10A7F,
Line 2,338: Line 2,561:
m["Saur"] = process_ranges{
m["Saur"] = process_ranges{
"Saurashtra",
"Saurashtra",
3535165,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,347: Line 2,571:
m["Semap"] = {
m["Semap"] = {
"flag semaphore",
"flag semaphore",
250796,
"pictography",
"pictography",
ietf_subtag = "Zsym",
ietf_subtag = "Zsym",
Line 2,353: Line 2,578:
m["Sgnw"] = process_ranges{
m["Sgnw"] = process_ranges{
"SignWriting",
"SignWriting",
1497335,
"pictography",
"pictography",
aliases = {"Sutton SignWriting"},
aliases = {"Sutton SignWriting"},
Line 2,365: Line 2,591:
m["Shaw"] = process_ranges{
m["Shaw"] = process_ranges{
"Shavian",
"Shavian",
1970098,
aliases = {"Shaw"},
aliases = {"Shaw"},
ranges = {
ranges = {
Line 2,373: Line 2,600:
m["Shrd"] = process_ranges{
m["Shrd"] = process_ranges{
"Sharada",
"Sharada",
2047117,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,388: Line 2,616:
m["Shui"] = {
m["Shui"] = {
"Sui",
"Sui",
752854,
"logography",
"logography",
spaces = false,
spaces = false,
Line 2,395: Line 2,624:
m["Sidd"] = process_ranges{
m["Sidd"] = process_ranges{
"Siddham",
"Siddham",
250379,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,404: Line 2,634:
m["Sidt"] = {
m["Sidt"] = {
"Sidetic",
"Sidetic",
36659,
"alphabet",
"alphabet",
direction = "rtl",
direction = "rtl",
Line 2,410: Line 2,641:


m["Sind"] = process_ranges{
m["Sind"] = process_ranges{
"Khudawadi",
"Khudabadi",
6402810,
"abugida",
"abugida",
aliases = {"Khudabadi"},
aliases = {"Khudawadi"},
ranges = {
ranges = {
0x0964, 0x0965,
0x0964, 0x0965,
Line 2,427: Line 2,659:
m["Sinh"] = process_ranges{
m["Sinh"] = process_ranges{
"Sinhalese",
"Sinhalese",
1574992,
"abugida",
"abugida",
aliases = {"Sinhala"},
aliases = {"Sinhala"},
Line 2,454: Line 2,687:
m["Sogd"] = process_ranges{
m["Sogd"] = process_ranges{
"Sogdian",
"Sogdian",
578359,
"abjad",
"abjad",
ranges = {
ranges = {
Line 2,464: Line 2,698:
m["Sogo"] = process_ranges{
m["Sogo"] = process_ranges{
"Old Sogdian",
"Old Sogdian",
72403254,
"abjad",
"abjad",
ranges = {
ranges = {
Line 2,473: Line 2,708:
m["Sora"] = process_ranges{
m["Sora"] = process_ranges{
"Sorang Sompeng",
"Sorang Sompeng",
7563292,
aliases = {"Sora Sompeng"},
aliases = {"Sora Sompeng"},
ranges = {
ranges = {
Line 2,482: Line 2,718:
m["Soyo"] = process_ranges{
m["Soyo"] = process_ranges{
"Soyombo",
"Soyombo",
8009382,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,490: Line 2,727:
m["Sund"] = process_ranges{
m["Sund"] = process_ranges{
"Sundanese",
"Sundanese",
51589,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,497: Line 2,735:
}
}


m["Sunu"] = {
m["Sunu"] = process_ranges{
"Sunuwar",
"Sunuwar",
109984965,
"alphabet",
"alphabet",
-- Not in Unicode
ranges = {
0x11BC0, 0x11BE1,
0x11BF0, 0x11BF9,
},
}
}


m["Sylo"] = process_ranges{
m["Sylo"] = process_ranges{
"Syloti Nagri",
"Sylheti Nagri",
144128,
"abugida",
"abugida",
aliases = {"Sylheti Nagari"},
aliases = {"Sylheti Nāgarī", "Syloti Nagri"},
ranges = {
ranges = {
0x0964, 0x0965,
0x0964, 0x0965,
Line 2,516: Line 2,759:
m["Syrc"] = process_ranges{
m["Syrc"] = process_ranges{
"Syriac",
"Syriac",
"abjad", -- more precisely, impure abjad
26567,
"abjad", -- more precisely, impure abjad
ranges = {
ranges = {
0x060C, 0x060C,
0x060C, 0x060C,
Line 2,538: Line 2,782:
m["Tagb"] = process_ranges{
m["Tagb"] = process_ranges{
"Tagbanwa",
"Tagbanwa",
977444,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,549: Line 2,794:
m["Takr"] = process_ranges{
m["Takr"] = process_ranges{
"Takri",
"Takri",
759202,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,564: Line 2,810:
m["Tale"] = process_ranges{
m["Tale"] = process_ranges{
"Tai Nüa",
"Tai Nüa",
2566326,
"abugida",
"abugida",
aliases = {"Tai Nuea", "New Tai Nüa", "New Tai Nuea", "Dehong Dai", "Tai Dehong", "Tai Le"},
aliases = {"Tai Nuea", "New Tai Nüa", "New Tai Nuea", "Dehong Dai", "Tai Dehong", "Tai Le"},
Line 2,576: Line 2,823:
m["Talu"] = process_ranges{
m["Talu"] = process_ranges{
"New Tai Lue",
"New Tai Lue",
3498863,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,588: Line 2,836:
m["Taml"] = process_ranges{
m["Taml"] = process_ranges{
"Tamil",
"Tamil",
26803,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,624: Line 2,873:
m["Tang"] = process_ranges{
m["Tang"] = process_ranges{
"Tangut",
"Tangut",
1373610,
"logography, syllabary",
"logography, syllabary",
ranges = {
ranges = {
0x31EF, 0x31EF,
0x16FE0, 0x16FE0,
0x16FE0, 0x16FE0,
0x17000, 0x187F7,
0x17000, 0x187F7,
Line 2,636: Line 2,887:
m["Tavt"] = process_ranges{
m["Tavt"] = process_ranges{
"Tai Viet",
"Tai Viet",
11818517,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,646: Line 2,898:
m["Tayo"] = {
m["Tayo"] = {
"Lai Tay",
"Lai Tay",
16306701,
"abugida",
"abugida",
aliases = {"Tai Yo"},
aliases = {"Tai Yo"},
Line 2,654: Line 2,907:
m["Telu"] = process_ranges{
m["Telu"] = process_ranges{
"Telugu",
"Telugu",
570450,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,682: Line 2,936:
m["Teng"] = {
m["Teng"] = {
"Tengwar",
"Tengwar",
473725,
}
}


m["Tfng"] = process_ranges{
m["Tfng"] = process_ranges{
"Tifinagh",
"Tifinagh",
208503,
"abjad, alphabet",
"abjad, alphabet",
ranges = {
ranges = {
Line 2,697: Line 2,953:
m["Tglg"] = process_ranges{
m["Tglg"] = process_ranges{
"Baybayin",
"Baybayin",
812124,
"abugida",
"abugida",
aliases = {"Tagalog"},
aliases = {"Tagalog"},
Line 2,708: Line 2,965:
m["Thaa"] = process_ranges{
m["Thaa"] = process_ranges{
"Thaana",
"Thaana",
877906,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,723: Line 2,981:
m["Thai"] = process_ranges{
m["Thai"] = process_ranges{
"Thai",
"Thai",
236376,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,733: Line 2,992:
m["Tibt"] = process_ranges{
m["Tibt"] = process_ranges{
"Tibetan",
"Tibetan",
46861,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,742: Line 3,002:
0x0FCE, 0x0FD4,
0x0FCE, 0x0FD4,
0x0FD9, 0x0FDA,
0x0FD9, 0x0FDA,
0x3008, 0x300B,
},
},
normalizationFixes = handle_normalization_fixes{
normalizationFixes = handle_normalization_fixes{
Line 2,752: Line 3,013:
m["sit-tam-Tibt"] = {
m["sit-tam-Tibt"] = {
"Tamyig",
"Tamyig",
m["Tibt"][2],
109875213,
m["Tibt"][3],
ranges = m["Tibt"].ranges,
ranges = m["Tibt"].ranges,
characters = m["Tibt"].characters,
characters = m["Tibt"].characters,
Line 2,761: Line 3,023:
m["Tirh"] = process_ranges{
m["Tirh"] = process_ranges{
"Tirhuta",
"Tirhuta",
1765752,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,778: Line 3,041:
m["Tnsa"] = process_ranges{
m["Tnsa"] = process_ranges{
"Tangsa",
"Tangsa",
105576311,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 2,785: Line 3,049:
}
}


m["Todr"] = {
m["Todr"] = process_ranges{
"Todhri",
"Todhri",
10274731,
"alphabet",
"alphabet",
direction = "rtl",
direction = "rtl",
-- Not in Unicode
ranges = {
0x105C0, 0x105F3,
},
}
}


m["Tols"] = {
m["Tols"] = {
"Tolong Siki",
"Tolong Siki",
4459822,
"alphabet",
"alphabet",
-- Not in Unicode
-- Not in Unicode
Line 2,800: Line 3,068:
m["Toto"] = process_ranges{
m["Toto"] = process_ranges{
"Toto",
"Toto",
104837516,
"abugida",
"abugida",
ranges = {
ranges = {
Line 2,806: Line 3,075:
}
}


m["Tutg"] = {
m["Tutg"] = process_ranges{
"Tigalari",
"Tigalari",
2604990,
"abugida",
"abugida",
aliases = {"Tulu"},
aliases = {"Tulu"},
-- Not in Unicode
ranges = {
}
0x1CF2, 0x1CF2,
0x1CF4, 0x1CF4,
0xA8F1, 0xA8F1,
0x11380, 0x11389,
0x1138B, 0x1138B,
0x1138E, 0x1138E,
0x11390, 0x113B5,
0x113B7, 0x113C0,
0x113C2, 0x113C2,
0x113C5, 0x113C5,
0x113C7, 0x113CA,
0x113CC, 0x113D5,
0x113D7, 0x113D8,
0x113E1, 0x113E2,
},
}


m["Ugar"] = process_ranges{
m["Ugar"] = process_ranges{
"Ugaritic",
"Ugaritic",
332652,
"abjad",
"abjad",
ranges = {
ranges = {
Line 2,824: Line 3,110:
m["Vaii"] = process_ranges{
m["Vaii"] = process_ranges{
"Vai",
"Vai",
523078,
"syllabary",
"syllabary",
ranges = {
ranges = {
Line 2,832: Line 3,119:
m["Visp"] = {
m["Visp"] = {
"Visible Speech",
"Visible Speech",
1303365,
"alphabet",
"alphabet",
-- Not in Unicode
-- Not in Unicode
Line 2,838: Line 3,126:
m["Vith"] = process_ranges{
m["Vith"] = process_ranges{
"Vithkuqi",
"Vithkuqi",
3301993,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 2,854: Line 3,143:
m["Wara"] = process_ranges{
m["Wara"] = process_ranges{
"Varang Kshiti",
"Varang Kshiti",
79199,
aliases = {"Warang Citi"},
aliases = {"Warang Citi"},
ranges = {
ranges = {
Line 2,864: Line 3,154:
m["Wcho"] = process_ranges{
m["Wcho"] = process_ranges{
"Wancho",
"Wancho",
33713728,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 2,873: Line 3,164:
m["Wole"] = {
m["Wole"] = {
"Woleai",
"Woleai",
6643710,
"syllabary",
"syllabary",
-- Not in Unicode
-- Not in Unicode
Line 2,879: Line 3,171:
m["Xpeo"] = process_ranges{
m["Xpeo"] = process_ranges{
"Old Persian",
"Old Persian",
1471822,
ranges = {
ranges = {
0x103A0, 0x103C3,
0x103A0, 0x103C3,
Line 2,887: Line 3,180:
m["Xsux"] = process_ranges{
m["Xsux"] = process_ranges{
"Cuneiform",
"Cuneiform",
401,
aliases = {"Sumero-Akkadian Cuneiform"},
aliases = {"Sumero-Akkadian Cuneiform"},
ranges = {
ranges = {
Line 2,898: Line 3,192:
m["Yezi"] = process_ranges{
m["Yezi"] = process_ranges{
"Yezidi",
"Yezidi",
13175481,
"alphabet",
"alphabet",
ranges = {
ranges = {
Line 2,913: Line 3,208:
m["Yiii"] = process_ranges{
m["Yiii"] = process_ranges{
"Yi",
"Yi",
1197646,
"syllabary",
"syllabary",
ranges = {
ranges = {
Line 2,927: Line 3,223:
m["Zanb"] = process_ranges{
m["Zanb"] = process_ranges{
"Zanabazar Square",
"Zanabazar Square",
50809208,
"abugida",
ranges = {
ranges = {
0x11A00, 0x11A47,
0x11A00, 0x11A47,
Line 2,934: Line 3,232:
m["Zmth"] = process_ranges{
m["Zmth"] = process_ranges{
"mathematical notation",
"mathematical notation",
1140046,
ranges = {
ranges = {
0x00AC, 0x00AC,
0x00AC, 0x00AC,
Line 3,071: Line 3,370:
},
},
translit = false,
translit = false,
character_category = "Mathematical notation symbols", -- ?
}
}


m["Zsym"] = process_ranges{
m["Zsym"] = process_ranges{
"symbol",
"symbolic",
80071,
"pictography",
"pictography",
ranges = {
ranges = {
Line 3,170: Line 3,469:
m["Zyyy"] = {
m["Zyyy"] = {
"undetermined",
"undetermined",
104839687,
-- This should not have any characters listed, probably
-- This should not have any characters listed, probably
translit = false,
translit = false,
Line 3,177: Line 3,477:
m["Zzzz"] = {
m["Zzzz"] = {
"uncoded",
"uncoded",
104839675,
-- This should not have any characters listed
-- This should not have any characters listed
translit = false,
translit = false,
Line 3,186: Line 3,487:
m["Hrkt"] = process_ranges{
m["Hrkt"] = process_ranges{
"Kana",
"Kana",
187659,
"syllabary",
"syllabary",
aliases = {"Japanese syllabaries"},
aliases = {"Japanese syllabaries"},
Line 3,197: Line 3,499:
m["Jpan"] = process_ranges{
m["Jpan"] = process_ranges{
"Japanese",
"Japanese",
190502,
"logography, syllabary",
"logography, syllabary",
ranges = union(
ranges = union(
Line 3,209: Line 3,512:
m["Kore"] = process_ranges{
m["Kore"] = process_ranges{
"Korean",
"Korean",
711797,
"logography, syllabary",
"logography, syllabary",
ranges = union(
ranges = union(
Line 3,217: Line 3,521:
}
}


return m
--Constructed languages
m["Ayer"] = process_ranges{
"Tahano Hikamu",
nil,
"abugida",
ranges = {
0x0041, 0x005A,
0x0061, 0x007A,
0x002A, 0x002A,
0x00F1, 0x00F1,
0x00D1, 0x00D1,
0x0294, 0x0294,
0x0259, 0x0259,
0x018F, 0x018F,
0xA736, 0xA737,
0x0026, 0x0026,
0x002B, 0x002D,
0x005B, 0x005B,
0x005D, 0x005D,
0x00A8, 0x00A8,
0x00AF, 0x00AF,
0x00B2, 0x00B2,
0x00B9, 0x00B9,
0x02B0, 0x2B2,
0x02C0, 0x02C0,
0x02D0, 0x02D0,
},
character_category = false,
}
 
m["Jovl"] = process_ranges{
"Jovlish",
nil,
"alphabet",
ranges = {
0x0041, 0x005A,
0x0061, 0x007A,
0x00AA, 0x00AA,
0x00BA, 0x00BA,
0x00C0, 0x00D6,
0x00D8, 0x00F6,
0x00F8, 0x02B8,
0x022B, 0x022B,
0x02C0, 0x02C1,
0x02E0, 0x02E4,
0x0363, 0x036F,
0x039E, 0x039E,
0x03A8, 0x03A8,
0x03BE, 0x03BE,
0x03C8, 0x03C8,
0x0485, 0x0486,
0x0951, 0x0952,
0x10FB, 0x10FB,
0x1D00, 0x1D25,
0x1D2C, 0x1D5C,
0x1D62, 0x1D65,
0x1D6B, 0x1D77,
0x1D79, 0x1DBE,
0x1DF8, 0x1DF8,
0x1E00, 0x1EFF,
0x202F, 0x202F,
0x2071, 0x2071,
0x207F, 0x207F,
0x2090, 0x209C,
0x20F0, 0x20F0,
0x2100, 0x2125,
0x2128, 0x2128,
0x212A, 0x2134,
0x2139, 0x213B,
0x2141, 0x214E,
0x2160, 0x2188,
0x2C60, 0x2C7F,
0xA700, 0xA707,
0xA722, 0xA787,
0xA78B, 0xA7CD,
0xA7D0, 0xA7D1,
0xA7D3, 0xA7D3,
0xA7D5, 0xA7DC,
0xA7F2, 0xA7FF,
0xA92E, 0xA92E,
0xAB30, 0xAB5A,
0xAB5C, 0xAB64,
0xAB66, 0xAB69,
0xFB00, 0xFB06,
0xFF21, 0xFF3A,
0xFF41, 0xFF5A,
0x10780, 0x10785,
0x10787, 0x107B0,
0x107B2, 0x107BA,
0x1DF00, 0x1DF1E,
0x1DF25, 0x1DF2A,
},
character_category = false,
}
 
m["Gthv"] = process_ranges{
"Gothevian",
nil,
"alphabet",
ranges = {
    0x0041, 0x005A,
    0x0061, 0x007A,
    0x00C1, 0x00C4,
    0x00C8, 0x00CB,
    0x00CD, 0x00CD,
    0x00CF, 0x00CF,
    0x00D2, 0x00D4,
    0x00D6, 0x00D6,
    0x00DA, 0x00DC,
    0x00DD, 0x00DD,
    0x00E1, 0x00E4,
    0x00E8, 0x00EB,
    0x00ED, 0x00ED,
    0x00EF, 0x00EF,
    0x00F2, 0x00F4,
    0x00F6, 0x00F6,
    0x00FA, 0x00FC,
    0x00FD, 0x00FD,
    0x00FF, 0x00FF,
    0x0110, 0x0111,
    0x0160, 0x0161,
    0x0178, 0x0178,
    0x017D, 0x017E,
    0x0186, 0x0186,
    0x0190, 0x0190,
    0x0195, 0x0195,
    0x01F6, 0x01F6,
    0x0254, 0x0254,
    0x025B, 0x025B,
    0x0398, 0x0398,
    0x039E, 0x039E,
    0x03A8, 0x03A8,
    0x03B8, 0x03B8,
    0x03BE, 0x03BE,
    0x03C8, 0x03C8,
},
character_category = false,
}
 
m["Roka"] = process_ranges{
"Rokadong Curakjang",
nil,
"abugida",
ranges = {
0x0041, 0x005A,
0x0061, 0x007A,
0x0022, 0x0022,
0x0027, 0x0027,
0x002A, 0x002A,
0x002D, 0x002D,
0x005B, 0x005D,
0x007B, 0x007B,
0x007D, 0x007D
},
character_category = false,
}
m["Rsnold"] = process_ranges{
"Old Raysian",
nil,
"alphabet",
ranges = {
0x0041, 0x007A
},
character_category = false,
}
m["Pann"] = process_ranges{
"Pannonian",
nil,
"alphabet",
ranges = {
0x0041, 0x005A,
0x0061, 0x007A,
0x1D9C, 0x1D9D,
0x1D47, 0x1D4B,
0x02E1, 0x02E3,
0x0410, 0x044F,
0x0404, 0x0454,
0x04AE, 0x04B1,
0x0250, 0x0254,
0x0265, 0x0278,
0x028C, 0x028D,
0x0224, 0x0225,
0x01BA, 0x01BE,
0x019A, 0x01A3,
0x012D, 0x0131,
0xA793, 0xA794
},
character_category = false,
}
 
m["Teul"] = process_ranges{
"Teulgi",
nil,
"alphabet",
ranges = m["Latn"].ranges,
characters = m["Latn"].characters,
character_category = false,
}
 
m["Tugv"] = process_ranges{
"Tuġvut",
nil,
"alphabet",
ranges = m["Latn"].ranges,
characters = m["Latn"].characters,
character_category = false,
}
 
m["Ucrn"] = process_ranges{
"Draconian",
nil,
"alphabet",
ranges = {
    0x0020, 0x0021,
    0x0023, 0x0023,
    0x0027, 0x0027,
    0x0030, 0x0034,
    0x0040, 0x0040,
    0x0047, 0x0048,
    0x004B, 0x004B,
    0x0050, 0x0050,
    0x0058, 0x0058,
    0x0066, 0x0067,
    0x0069, 0x006A,
    0x006F, 0x0072,
    0x0079, 0x0079,
    0x010D, 0x010D,
    0x014B, 0x014B,
    0x01A9, 0x01A9,
    0x01E7, 0x01E7,
    0x0238, 0x0238,
    0x024F, 0x024F,
    0x1EFA, 0x1EFB,
};
character_category = false,
}
 
return require("Module:languages").finalizeData(m, "script")