-- শুরু ০১-০৫-২০১৮ local U = mw.ustring.char  local m = {}  m.Adlm = { 	names = { "Adlam" }, 	characters = "𞤀-𞥟", 	direction = "rtl", } m.Afak = { 	names = { "Afaka" }, 	characters = "", } m.Aghb = { 	names = { "Caucasian Albanian" }, 	characters = "𐔰-𐕣𐕯", } m.Ahom = { 	names = { "Ahom", "Tai Ahom" }, 	characters = "𑜀-𑜿", } m.Arab = { 	names = { "Arabic" }, 	characters = "؀-ۿݐ-ݿࢠ-ࣿﭐ-﷽ﹰ-ﻼ", 	direction = "rtl", } m.Armi = { 	names = { "Imperial Aramaic" }, 	characters = "𐡀-𐡟", 	direction = "rtl", } m.Armn = { 	names = { "Armenian" }, 	characters = "Ա-֏ﬓ-ﬗ", } m.Avst = { 	names = { "Avestan" }, 	characters = "𐬀-𐬿", 	direction = "rtl", } m.Bali = { 	names = { "Balinese" }, 	characters = "ᬀ-᭼", } m.Bamu = { 	names = { "Bamum" }, 	characters = "ꚠ-꛷𖠀-𖨸", } m.Bass = { 	names = { "Bassa Vah" }, 	characters = "𖫐-𖫵", } m.Batk = { 	names = { "Batak" }, 	characters = "ᯀ-᯿", } m.Beng = { 	names = { "Bengali" }, 	characters = "ঁ-৺" } m.Blis = { 	names = { "Blissymbols" }, 	characters = "", } m.Bopo = { 	names = { "Bopomofo" }, 	characters = "ㄅ-ㄭㆠ-ㆺ", } m.Brah = { 	names = { "Brahmi" }, 	characters = "𑀀-𑁯", } m.Brai = { 	names = { "Braille" }, 	characters = "⠀-⣿", } m.Bugi = { 	names = { "Buginese" }, 	characters = "ᨀ-᨟", } m.Buhd = { 	names = { "Buhid" }, 	characters = "ᝀ-ᝓ", } m.Cakm = { 	names = { "Chakma" }, 	characters = "𑄀-𑅃", } m.Cans = { 	names = { "Unified Canadian Aboriginal Syllabics" }, 	characters = "᐀-ᙿ", } m.Cari = { 	names = { "Carian" }, 	characters = "𐊠-𐋐", } m.Cham = { 	names = { "Cham" }, 	characters = "ꨀ-꩟", } m.Cher = { 	names = { "Cherokee" }, 	characters = "Ꭰ-Ᏼꭰ-ꮿ", } m.Cirt = { 	names = { "Cirth" }, 	characters = "", } m.Copt = { 	names = { "Coptic" }, 	characters = "Ϣ-ϯⲀ-⳿𐋡-𐋻", } m.Cprt = { 	names = { "Cypriot" }, 	characters = "𐠀-𐠿", 	direction = "rtl", } m.Cyrl = { 	names = { "Cyrillic" }, 	characters = "Ѐ-џѢѣѪѫѬѭѲѳѴѵҊ-ԧꚀ-ꚗ", } m.Cyrs = { 	names = { "Cyrillic (Old Church Slavonic variant)" }, 	characters = "Ѐ-ԧꙀ-ꚗ", } m.Deva = { 	names = { "Devanagari", "Nagari" }, 	characters = "ऀ-ॿ꣠-ꣻ", } m.Dsrt = { 	names = { "Deseret", "Mormon" }, 	characters = "𐐀-𐑏", } m.Dupl = { 	names = { "Duployan shorthand", "Duployan stenography" }, 	characters = "𛰀-𛲟", } m.Egyd = { 	names = { "Egyptian demotic" }, 	characters = "", } m.Egyh = { 	names = { "Egyptian hieratic" }, 	characters = "", } m.Egyp = { 	names = { "Egyptian hieroglyphs" }, 	characters = "𓀀-𓐮", } m.Elba = { 	names = { "Elbasan" }, 	characters = "𐔀-𐔧", } m.Ethi = { 	names = { "Ethiopic", "Geʻez", "Ge'ez" }, 	characters = "ሀ-᎙ⶀ-ⷞꬁ-ꬮ", } m.Geok = { 	names = { "Khutsuri (Asomtavruli and Nuskhuri)" }, 	characters = "Ⴀ-Ⴭⴀ-ⴭ", -- Ⴀ-Ⴭ is Asomtavruli, ⴀ-ⴭ is Nuskhuri } m.Geor = { 	names = { "Georgian (Mkhedruli)" }, 	characters = "Ⴀ-ჼ", -- technically only the range [ა-ჿ] is Mkhedruli } m.Glag = { 	names = { "Glagolitic" }, 	characters = "Ⰰ-ⱞ", } m.Goth = { 	names = { "Gothic" }, 	characters = "𐌰-𐍊", } m.Gran = { 	names = { "Grantha" }, 	characters = "𑌁-𑍴", } m.Grek = { 	names = { "Greek" }, 	characters = "ἀ-῾Ͱ-Ͽ", } m.Gujr = { 	names = { "Gujarati" }, 	characters = "ઁ-૱", } m.Guru = { 	names = { "Gurmukhi" }, 	characters = "ਁ-ੵ", } m.Hang = { 	names = { "Hangul", "Hangŭl", "Hangeul" }, 	characters = "ᄀ-ᇿ가-힣ㄱ-ㆎ", } m.Hani = { 	names = { "Han", "Hanzi", "Kanji", "Hanja" }, 	characters = "一-鿌㐀-䶵　-〿𠀀-𬺯！-￮", } m.Hano = { 	names = { "Hanunoo", "Hanunóo" }, 	characters = "", } m.Hatr = { 	names = { "Hatran" }, 	characters = "𐣠-𐣿", } m.Hebr = { 	names = { "Hebrew" }, 	characters = U(0x0590) .. "-" .. U(0x05FF) .. U(0xFB1D) .. "-" .. U(0xFB4F), 	direction = "rtl", } m.Hira = { 	names = { "Hiragana" }, 	characters = "ぁ-ゟ", } m.Hluw = { 	names = { "Anatolian Hieroglyphs", "Luwian Hieroglyphs", "Hittite Hieroglyphs" }, 	characters = "𔐀-𔙆", } m.Hmng = { 	names = { "Pahawh Hmong" }, 	characters = "𖬀-𖮏", } m.Hrkt = { 	names = { "Japanese syllabaries (alias for Hiragana + Katakana)" }, 	characters = "", } m.Hung = { 	names = { "Old Hungarian", "Hungarian Runic" }, 	characters = "𐲀-𐲲", } m.Inds = { 	names = { "Indus", "Harappan" }, 	characters = "", } m.Ital = { 	names = { "Old Italic (Etruscan, Oscan, etc.)" }, 	characters = "𐌀-𐌣", } m.Java = { 	names = { "Javanese" }, 	characters = "ꦀ-꧟", } m.Jurc = { 	names = { "Jurchen" }, 	characters = "", } m.Kali = { 	names = { "Kayah Li" }, 	characters = "꤀-꤯", } m.Kana = { 	names = { "Katakana" }, 	characters = "゠-ヿㇰ-ㇿ", } m.Khar = { 	names = { "Kharoshthi" }, 	characters = "𐨀-𐩘", 	direction = "rtl", } m.Khmr = { 	names = { "Khmer" }, 	characters = "ក-៹", } m.Khoj = { 	names = { "Khojki" }, 	characters = "𑈀-𑈽", } m.Knda = { 	names = { "Kannada" }, 	characters = "ಂ-ೲ", } m.Kpel = { 	names = { "Kpelle" }, 	characters = "", } m.Kthi = { 	names = { "Kaithi" }, 	characters = "𑂀-𑃁", } m.Lana = { 	names = { "Tai Tham", "Lanna" }, 	characters = "ᨠ-᪭", } m.Laoo = { 	names = { "Lao" }, 	characters = "ກ-ໟ", } m.Latg = { 	names = { "Latin (Gaelic variant)" }, 	characters = "", } m.Latn = { 	names = { "Latin" }, 	characters = "0-9A-Za-z¡-\205\175Ḁ-ỿ", } m.Lepc = { 	names = { "Lepcha", "Róng" }, 	characters = "ᰀ-ᱏ", } m.Limb = { 	names = { "Limbu" }, 	characters = "ᤀ-᥏", } m.Lina = { 	names = { "Linear A" }, 	characters = "𐘀-𐝧", } m.Linb = { 	names = { "Linear B" }, 	characters = "𐀀-𐃺", } m.Lisu = { 	names = { "Lisu", "Fraser" }, 	characters = "ꓐ-꓿", } m.Loma = { 	names = { "Loma" }, 	characters = "", } m.Lyci = { 	names = { "Lycian" }, 	characters = "𐊀-𐊜", } m.Lydi = { 	names = { "Lydian" }, 	characters = "𐤠-𐤿", } m.Mahj = { 	names = { "Mahajani" }, 	characters = "𑅶-𑅐", } m.Mand = { 	names = { "Mandaic", "Mandaean" }, 	characters = "ࡀ-࡞", 	direction = "rtl", } m.Mani = { 	names = { "Manichaean" }, 	characters = "𐫀-𐫶", 	direction = "rtl", } m.Maya = { 	names = { "Mayan hieroglyphs" }, 	characters = "", } m.Mend = { 	names = { "Mende Kikakui" }, 	characters = "𞠀-𞣖", 	direction = "rtl", } m.Merc = { 	names = { "Meroitic Cursive" }, 	characters = "𐦠-𐦿", } m.Mero = { 	names = { "Meroitic Hieroglyphs" }, 	characters = "𐦀-𐦟", } m.Mlym = { 	names = { "Malayalam" }, 	characters = "ം-ൿ", } m.Modi = { 	names = { "Modi", "Moḍī" }, 	characters = "𑘀-𑙙", } m.Mong = { 	names = { "Mongolian" }, 	characters = "᠀-ᢪ", } m.Moon = { 	names = { "Moon", "Moon code", "Moon script", "Moon type" }, 	characters = "", } m.Mroo = { 	names = { "Mro", "Mru" }, 	characters = "𖩀-𖩯", } m.Mtei = { 	names = { "Meitei Mayek", "Meithei", "Meetei" }, 	characters = "ꯀ-꯿ꫠ-꫿", } m.Mult = { 	names = { "Multani" }, 	characters = "𑊀-𑊩", } m.Mymr = { 	names = { "Myanmar", "Burmese" }, 	characters = "က-႟ꩠ-ꩿꧠ-ꧾ", } m.Narb = { 	names = { "Old North Arabian", "Ancient North Arabian" }, 	characters = "𐪀-𐪟", } m.Nbat = { 	names = { "Nabataean" }, 	characters = "𐢀-𐢯", 	direction = "rtl", } m.Nkgb = { 	names = { "Nakhi Geba", "'Na-'Khi ²Ggŏ-¹baw", "Naxi Geba" }, 	characters = "", } m.Nkoo = { 	names = { "N’Ko", "N'Ko" }, 	characters = "߀-ߺ", 	direction = "rtl", } m.Nshu = { 	names = { "Nüshu" }, 	characters = "", } m.Ogam = { 	names = { "Ogham" }, 	characters = " -᚜", } m.Olck = { 	names = { "Ol Chiki", "Ol Cemet'", "Ol", "Santali" }, 	characters = "᱐-᱿", } m.Orkh = { 	names = { "Old Turkic", "Orkhon Runic" }, 	characters = "𐰀-𐱈", 	direction = "rtl", } m.Orya = { 	names = { "Oriya" }, 	characters = "ଁ-୷", } m.Osma = { 	names = { "Osmanya" }, 	characters = "𐒀-𐒩", } m.Palm = { 	names = { "Palmyrene" }, 	characters = "𐡠-𐡿", } m.Pauc = { 	names = { "Pau Cin Hau" }, 	characters = "𑫀-𑫸", } m.Perm = { 	names = { "Old Permic" }, 	characters = "𐍐-𐍺", } m.Phag = { 	names = { "Phags-pa" }, 	characters = "ꡀ-꡷", } m.Phli = { 	names = { "Inscriptional Pahlavi" }, 	characters = "𐭠-𐭿", 	direction = "rtl", } m.Phlp = { 	names = { "Psalter Pahlavi" }, 	characters = "𐮀-𐮯", 	direction = "rtl", } m.Phlv = { 	names = { "Book Pahlavi" }, 	characters = "", 	direction = "rtl", } m.Phnx = { 	names = { "Phoenician" }, 	characters = "𐤀-𐤟", 	direction = "rtl", } m.Plrd = { 	names = { "Miao", "Pollard" }, 	characters = "𖼀-𖾟", } m.Prti = { 	names = { "Inscriptional Parthian" }, 	characters = "𐭀-𐭟", 	direction = "rtl", } m.Rjng = { 	names = { "Rejang", "Redjang", "Kaganga" }, 	characters = "ꤰ-꥟", } m.Roro = { 	names = { "Rongorongo" }, 	characters = "", } m.Runr = { 	names = { "Runic" }, 	characters = "ᚠ-ᛰ", } m.Samr = { 	names = { "Samaritan" }, 	characters = "ࠀ-࠾", 	direction = "rtl", } m.Sara = { 	names = { "Sarati" }, 	characters = "", } m.Sarb = { 	names = { "Old South Arabian" }, 	characters = "𐩠-𐩿", 	direction = "rtl", } m.Saur = { 	names = { "Saurashtra" }, 	characters = "ꢀ-꣙", } m.Sgnw = { 	names = { "SignWriting" }, 	characters = "𝠀-𝪯", } m.Shaw = { 	names = { "Shavian", "Shaw" }, 	characters = "𐑐-𐑿", } m.Shrd = { 	names = { "Sharada", "Śāradā" }, 	characters = "𑆀-𑇙", } m.Sidd = { 	names = { "Siddham", "Siddhaṃ", "Siddhamātṛkā" }, 	characters = "𑖀-𑗝", } m.Sind = { 	names = { "Khudawadi", "Sindhi" }, 	characters = "𑊰-𑋹", } m.Sinh = { 	names = { "Sinhalese" }, 	characters = "ං-෴", } m.Sora = { 	names = { "Sora Sompeng" }, 	characters = "𑃐-𑃹", } m.Sund = { 	names = { "Sundanese" }, 	characters = "ᮀ-ᮿ", } m.Sylo = { 	names = { "Syloti Nagri" }, 	characters = "܀-ݏ", } m.Syrc = { 	names = { "Syriac" }, 	characters = "܀-ݏ", 	direction = "rtl", } m.Syre = { 	names = { "Syriac (Estrangelo variant)" }, 	characters = "", } m.Syrj = { 	names = { "Syriac (Western variant)" }, 	characters = "", } m.Syrn = { 	names = { "Syriac (Eastern variant)" }, 	characters = "", } m.Tagb = { 	names = { "Tagbanwa" }, 	characters = "ᝠ-ᝳ", } m.Takr = { 	names = { "Takri", "Ṭākrī", "Ṭāṅkrī" }, 	characters = "𑚀-𑛉", } m.Tale = { 	names = { "Tai Le" }, 	characters = "ᥐ-ᥴ", } m.Talu = { 	names = { "New Tai Lue" }, 	characters = "", } m.Taml = { 	names = { "Tamil" }, 	characters = "ஂ-௺", } m.Tang = { 	names = { "Tangut" }, 	characters = "", } m.Tavt = { 	names = { "Tai Viet" }, 	characters = "ꪀ-꫟", } m.Telu = { 	names = { "Telugu" }, 	characters = "ఁ-౿", } m.Teng = { 	names = { "Tengwar" }, 	characters = "", } m.Tfng = { 	names = { "Tifinagh", "Berber" }, 	characters = "ⴰ-⵿", } m.Tglg = { 	names = { "Tagalog", "Baybayin", "Alibata" }, 	characters = "ᜀ-᜔", } m.Thaa = { 	names = { "Thaana" }, 	characters = "ހ-ޱ", 	direction = "rtl", } m.Thai = { 	names = { "Thai" }, 	characters = "ก-๛", } m.Tibt = { 	names = { "Tibetan" }, 	characters = "ༀ-࿚", } m.Tirh = { 	names = { "Tirhuta" }, 	characters = "𑒀-𑓙", } m.Ugar = { 	names = { "Ugaritic" }, 	characters = "𐎀-𐎟", } m.Vaii = { 	names = { "Vai" }, 	characters = "ꔀ-ꘫ", } m.Visp = { 	names = { "Visible Speech" }, 	characters = "", } m.Wara = { 	names = { "Warang Citi", "Varang Kshiti" }, 	characters = "𑢠-𑣿", } m.Wole = { 	names = { "Woleai" }, 	characters = "", } m.Xpeo = { 	names = { "Old Persian" }, 	characters = "𐎠-𐏕", } m.Xsux = { 	names = { "Sumero-Akkadian cuneiform" }, 	characters = "𒀀-𒍮𒐀-𒑳", } m.Yiii = { 	names = { "Yi" }, 	characters = "ꀀ-꓆", } m.Zinh = { 	names = { "Code for inherited script" }, 	characters = "", } m.Zmth = { 	names = { "Mathematical notation" }, 	characters = "ℵ∀-⋿⟀-⟯⦀-⧿⨀-⫿𝐀-𝟿", } m.Zsym = { 	names = { "Symbols" }, 	characters = "─-➿←⇿⌀-⏳🌀-🛅", } m.Zxxx = { 	names = { "Code for unwritten documents" }, 	characters = "", } m.Zyyy = { 	names = { "Code for undetermined script" }, 	characters = "", } m.Zzzz = { 	names = { "Code for uncoded script" }, }  -- Scripts defined in terms of other scripts m.Aran = { 	names = { "Arabic (Nastaliq variant)" }, 	characters = m.Arab.characters, } m.Kore = { 	names = { "Korean (alias for Hangul + Han)" }, 	characters = m.Hang.characters..m.Hani.characters, } m.Hans = { 	names = { "Han (Simplified variant)" }, 	characters = m.Hani.characters, } m.Hant = { 	names = { "Han (Traditional variant)" }, 	characters = m.Hani.characters, } m.Jpan = { 	names = { "Japanese (alias for Han + Hiragana + Katakana)" }, 	characters = m.Hira.characters..m.Kana.characters..m.Hani.characters, } m.Latf = { 	names = { "Latin (Fraktur variant)" }, 	characters = m.Latn.characters, }  return m