diff options
Diffstat (limited to 'context/data/scite/scite-ctx.lua')
-rw-r--r-- | context/data/scite/scite-ctx.lua | 388 |
1 files changed, 388 insertions, 0 deletions
diff --git a/context/data/scite/scite-ctx.lua b/context/data/scite/scite-ctx.lua index 546cac411..6bfe2cdd8 100644 --- a/context/data/scite/scite-ctx.lua +++ b/context/data/scite/scite-ctx.lua @@ -879,3 +879,391 @@ if not lpeg then end end + +local lists = { -- taken from sort-lan.lua + en = { + "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", + "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", + "u", "v", "w", "x", "y", "z", + + "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", + "U", "V", "W", "X", "Y", "Z", + }, + nl = { + "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", + "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", + "u", "v", "w", "x", "y", "z", + + "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", + "U", "V", "W", "X", "Y", "Z", + }, + fr = { + "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", + "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", + "u", "v", "w", "x", "y", "z", + + "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", + "U", "V", "W", "X", "Y", "Z", + }, + de = { + "a", "ä", "b", "c", "d", "e", "f", "g", "h", "i", + "j", "k", "l", "m", "n", "o", "ö", "p", "q", "r", + "s", "ß", "t", "u", "ü", "v", "w", "x", "y", "z", + + "A", "Ä", "B", "C", "D", "E", "F", "G", "H", "I", + "J", "K", "L", "M", "N", "O", "Ö", "P", "Q", "R", + "S", "SS", "T", "U", "Ü", "V", "W", "X", "Y", "Z", + }, + fi = { -- finish + "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", + "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", + "u", "v", "w", "x", "y", "z", "å", "ä", "ö", + + "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", + "U", "V", "W", "X", "Y", "Z", "Å", "Ä", "Ö", + }, + sl = { -- slovenian + "a", "b", "c", "č", "ć", "d", "đ", "e", "f", "g", "h", "i", + "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "š", "t", + "u", "v", "w", "x", "y", "z", "ž", + + "A", "B", "C", "Č", "Ć", "D", "Đ", "E", "F", "G", "H", "I", + "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "Š", "T", + "U", "V", "W", "X", "Y", "Z", "Ž", + }, + ru = { -- rusian + "а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", + "і", "й", "к", "л", "м", "н", "о", "п", "р", "с", + "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ы", + "ь", "ѣ", "э", "ю", "я", "ѳ", "ѵ", + + "А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "И", + "І", "Й", "К", "Л", "М", "Н", "О", "П", "Р", "С", + "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", + "Ь", "Ѣ", "Э", "Ю", "Я", "Ѳ", "Ѵ", + }, + uk = { -- ukraninuan + "а", "б", "в", "г", "ґ", "д", "е", "є", "ж", "з", "и", "і", + "ї", "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", + "ф", "х", "ц", "ч", "ш", "щ", "ь", "ю", "я", + + "А", "Б", "В", "Г", "Ґ", "Д", "Е", "Є", "Ж", "З", "И", "І", + "Ї", "Й", "К", "Л", "М", "Н", "О", "П", "Р", "С", "Т", "У", + "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ь", "Ю", "Я", + }, + be = { -- belarusia + "а", "б", "в", "г", "д", "е", "ё", "ж", "з", "і", + "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", + "у", "ў", "ф", "х", "ц", "ч", "ш", "ы", "ь", "э", + "ю", "я", + + "А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "І", + "Й", "К", "Л", "М", "Н", "О", "П", "Р", "С", "Т", + "У", "Ў", "Ф", "Х", "Ц", "Ч", "Ш", "Ы", "Ь", "Э", + "Ю", "Я", + }, + bg = { -- bulgarian + "а", "б", "в", "г", "д", "е", "ж", "з","и", "й", + "к", "a", "л", "a", "м", "н", "о", "п", "р", "с", + "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ь", + "ю", "я", + + "А", "Б", "В", "Г", "Д", "Е", "Ж", "З","И", "Й", + "К", "A", "Л", "A", "М", "Н", "О", "П", "Р", "С", + "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ь", + "Ю", "Я", + }, + pl = { -- polish + "a", "ą", "b", "c", "ć", "d", "e", "ę", "f", "g", + "h", "i", "j", "k", "l", "ł", "m", "n", "ń", "o", + "ó", "p", "q", "r", "s", "ś", "t", "u", "v", "w", + "x", "y", "z", "ź", "ż", + + "A", "Ą", "B", "C", "Ć", "D", "E", "Ę", "F", "G", + "H", "I", "J", "K", "L", "Ł", "M", "N", "Ń", "O", + "Ó", "P", "Q", "R", "S", "Ś", "T", "U", "V", "W", + "X", "Y", "Z", "Ź", "Ż", + }, + cz = { -- czech + "a", "á", "b", "c", "č", "d", "ď", "e", "é", "ě", + "f", "g", "h", "i", "í", "j", "k", "l", "m", + "n", "ň", "o", "ó", "p", "q", "r", "ř", "s", "š", + "t", "ť", "u", "ú", "ů", "v", "w", "x", "y", "ý", + "z", "ž", + + "A", "Á", "B", "C", "Č", "D", "Ď", "E", "É", "Ě", + "F", "G", "H", "I", "Í", "J", "K", "L", "M", + "N", "Ň", "O", "Ó", "P", "Q", "R", "Ř", "S", "Š", + "T", "Ť", "U", "Ú", "Ů", "V", "W", "X", "Y", "Ý", + "Z", "Ž", + }, + sk = { -- slovak + "a", "á", "ä", "b", "c", "č", "d", "ď", + "e", "é", "f", "g", "h", ch, "i", "í", "j", "k", + "l", "ĺ", "ľ", "m", "n", "ň", "o", "ó", "ô", "p", + "q", "r", "ŕ", "s", "š", "t", "ť", "u", "ú", "v", + "w", "x", "y", "ý", "z", "ž", + + "A", "Á", "Ä", "B", "C", "Č", "D", "Ď", + "E", "É", "F", "G", "H", "I", "Í", "J", "K", + "L", "Ĺ", "Ľ", "M", "N", "Ň", "O", "Ó", "Ô", "P", + "Q", "R", "Ŕ", "S", "Š", "T", "Ť", "U", "Ú", "V", + "W", "X", "Y", "Ý", "Z", "Ž", + }, + hr = { -- croatian + "a", "b", "c", "č", "ć", "d", "đ", "e", "f", + "g", "h", "i", "j", "k", "l", "m", "n", + "o", "p", "r", "s", "š", "t", "u", "v", "z", "ž", + + "A", "B", "C", "Č", "Ć", "D", "Đ", "E", "F", + "G", "H", "I", "J", "K", "L", "M", "N", + "O", "P", "R", "S", "Š", "T", "U", "V", "Z", "Ž", + }, + sr = { -- serbian + "а", "б", "в", "г", "д", "ђ", "е", "ж", "з", "и", + "ј", "к", "л", "љ", "м", "н", "њ", "о", "п", "р", + "с", "т", "ћ", "у", "ф", "х", "ц", "ч", "џ", "ш", + + "А", "Б", "В", "Г", "Д", "Ђ", "Е", "Ж", "З", "И", + "Ј", "К", "Л", "Љ", "М", "Н", "Њ", "О", "П", "Р", + "С", "Т", "Ћ", "У", "Ф", "Х", "Ц", "Ч", "Џ", "Ш", + }, + no = { -- norwegian + "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", + "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", + "u", "v", "w", "x", "y", "z", "æ", "ø", "å", + + "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", + "U", "V", "W", "X", "Y", "Z", "Æ", "Ø", "Å", + }, + da = { --danish + "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", + "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", + "u", "v", "w", "x", "y", "z", "æ", "ø", "å", + + "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", + "U", "V", "W", "X", "Y", "Z", "Æ", "Ø", "Å", + }, + sv = { -- swedish + "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", + "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", + "u", "v", "w", "x", "y", "z", "å", "ä", "ö", + + "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", + "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", + "U", "V", "W", "X", "Y", "Z", "Å", "Ä", "Ö", + }, + is = { -- islandic + "a", "á", "b", "d", "ð", "e", "é", "f", "g", "h", + "i", "í", "j", "k", "l", "m", "n", "o", "ó", "p", + "r", "s", "t", "u", "ú", "v", "x", "y", "ý", "þ", + "æ", "ö", + + "A", "Á", "B", "D", "Ð", "E", "É", "F", "G", "H", + "I", "Í", "J", "K", "L", "M", "N", "O", "Ó", "P", + "R", "S", "T", "U", "Ú", "V", "X", "Y", "Ý", "Þ", + "Æ", "Ö", + }, + -- gr = { -- greek + -- "α", "ά", "ὰ", "ᾶ", "ᾳ", "ἀ", "ἁ", "ἄ", "ἂ", "ἆ", + -- "ἁ", "ἅ", "ἃ", "ἇ", "ᾁ", "ᾴ", "ᾲ", "ᾷ", "ᾄ", "ᾂ", + -- "ᾅ", "ᾃ", "ᾆ", "ᾇ", "β", "γ", "δ", "ε", "έ", "ὲ", + -- "ἐ", "ἔ", "ἒ", "ἑ", "ἕ", "ἓ", "ζ", "η", "η", "ή", + -- "ὴ", "ῆ", "ῃ", "ἠ", "ἤ", "ἢ", "ἦ", "ᾐ", "ἡ", "ἥ", + -- "ἣ", "ἧ", "ᾑ", "ῄ", "ῂ", "ῇ", "ᾔ", "ᾒ", "ᾕ", "ᾓ", + -- "ᾖ", "ᾗ", "θ", "ι", "ί", "ὶ", "ῖ", "ἰ", "ἴ", "ἲ", + -- "ἶ", "ἱ", "ἵ", "ἳ", "ἷ", "ϊ", "ΐ", "ῒ", "ῗ", "κ", + -- "λ", "μ", "ν", "ξ", "ο", "ό", "ὸ", "ὀ", "ὄ", "ὂ", + -- "ὁ", "ὅ", "ὃ", "π", "ρ", "ῤ", "ῥ", "σ", "ς", "τ", + -- "υ", "ύ", "ὺ", "ῦ", "ὐ", "ὔ", "ὒ", "ὖ", "ὑ", "ὕ", + -- "ὓ", "ὗ", "ϋ", "ΰ", "ῢ", "ῧ", "φ", "χ", "ψ", "ω", + -- "ώ", "ὼ", "ῶ", "ῳ", "ὠ", "ὤ", "ὢ", "ὦ", "ᾠ", "ὡ", + -- "ὥ", "ὣ", "ὧ", "ᾡ", "ῴ", "ῲ", "ῷ", "ᾤ", "ᾢ", "ᾥ", + -- "ᾣ", "ᾦ", "ᾧ", + -- + -- "Α", "Ά", "Ὰ", "Α͂", "Ἀ", "Ἁ", "Ἄ", "Ἂ", "Ἆ", + -- "Ἁ", "Ἅ", "Ἃ", "Ἇ", + -- "Β", "Γ", "Δ", "Ε", "Έ", "Ὲ", + -- "Ἐ", "Ἔ", "Ἒ", "Ἑ", "Ἕ", "Ἓ", "Ζ", "Η", "Η", "Ή", + -- "Ὴ", "Η͂", "Ἠ", "Ἤ", "Ἢ", "Ἦ", "Ἡ", "Ἥ", + -- "Ἣ", "Ἧ", + -- "Θ", "Ι", "Ί", "Ὶ", "Ι͂", "Ἰ", "Ἴ", "Ἲ", + -- "Ἶ", "Ἱ", "Ἵ", "Ἳ", "Ἷ", "Ϊ", "Ϊ́", "Ϊ̀", "Ϊ͂", "Κ", + -- "Λ", "Μ", "Ν", "Ξ", "Ο", "Ό", "Ὸ", "Ὀ", "Ὄ", "Ὂ", + -- "Ὁ", "Ὅ", "Ὃ", "Π", "Ρ", "Ρ̓", "Ῥ", "Σ", "Σ", "Τ", + -- "Υ", "Ύ", "Ὺ", "Υ͂", "Υ̓", "Υ̓́", "Υ̓̀", "Υ̓͂", "Ὑ", "Ὕ", + -- "Ὓ", "Ὗ", "Ϋ", "Ϋ́", "Ϋ̀", "Ϋ͂", "Φ", "Χ", "Ψ", "Ω", + -- "Ώ", "Ὼ", "Ω͂", "Ὠ", "Ὤ", "Ὢ", "Ὦ", "Ὡ", + -- "Ὥ", "Ὣ", "Ὧ", + -- }, + gr = { -- greek + "α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", + "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "ς", "τ", "υ", + "φ", "χ", "ψ", "ω", + + "Α", "Β", "Γ", "Δ", "Ε", "Ζ", "Η", "Θ", "Ι", "Κ", + "Λ", "Μ", "Ν", "Ξ", "Ο", "Π", "Ρ", "Σ", "Τ", "Υ", + "Χ", "Ψ", "Ω", + }, + la = { -- latin + "a", "ā", "ă", "b", "c", "d", "e", "ē", "ĕ", "f", + "g", "h", "i", "ī", "ĭ", "j", "k", "l", "m", "n", + "o", "ō", "ŏ", "p", "q", "r", "s", "t", "u", "ū", + "ŭ", "v", "w", "x", "y", "ȳ", "y̆", "z", "æ", + + "A", "Ā", "Ă", "B", "C", "D", "E", "Ē", "Ĕ", "F", + "G", "H", "I", "Ī", "Ĭ", "J", "K", "L", "M", "N", + "O", "Ō", "Ŏ", "P", "Q", "R", "S", "T", "U", "Ū", + "Ŭ", "V", "W", "X", "Y", "Ȳ", "Y̆", "Z", "Æ", + }, + it = { -- italian + "a", "á", "b", "c", "d", "e", "é", "è", "f", "g", + "h", "i", "í", "ì", "j", "k", "l", "m", "n", "o", + "ó", "ò", "p", "q", "r", "s", "t", "u", "ú", "ù", + "v", "w", "x", "y", "z", + + "A", "Á", "B", "C", "D", "E", "É", "È", "F", "G", + "H", "I", "Í", "Ì", "J", "K", "L", "M", "N", "O", + "Ó", "Ò", "P", "Q", "R", "S", "T", "U", "Ú", "Ù", + "V", "W", "X", "Y", "Z", + }, + ro = { -- romanian + "a", "ă", "â", "b", "c", "d", "e", "f", "g", "h", + "i", "î", "j", "k", "l", "m", "n", "o", "p", "q", + "r", "s", "ș", "t", "ț", "u", "v", "w", "x", "y", + "z", + + "A", "Ă", "Â", "B", "C", "D", "E", "F", "G", "H", + "I", "Î", "J", "K", "L", "M", "N", "O", "P", "Q", + "R", "S", "Ș", "T", "Ț", "U", "V", "W", "X", "Y", + "Z", + }, + es = { -- spanish + "a", "á", "b", "c", "d", "e", "é", "f", "g", "h", + "i", "í", "j", "k", "l", "m", "n", "ñ", "o", "ó", + "p", "q", "r", "s", "t", "u", "ú", "ü", "v", "w", + "x", "y", "z", + + "A", "Á", "B", "C", "D", "E", "É", "F", "G", "H", + "I", "Í", "J", "K", "L", "M", "N", "Ñ", "O", "Ó", + "P", "Q", "R", "S", "T", "U", "Ú", "Ü", "V", "W", + "X", "Y", "Z", + }, + pt = { -- portuguese + "a", "á", "â", "ã", "à", "b", "c", "ç", "d", "e", + "é", "ê", "f", "g", "h", "i", "í", "j", "k", "l", + "m", "n", "o", "ó", "ô", "õ", "p", "q", "r", "s", + "t", "u", "ú", "ü", "v", "w", "x", "y", "z", + + "A", "Á", "Â", "Ã", "À", "B", "C", "Ç", "D", "E", + "É", "Ê", "F", "G", "H", "I", "Í", "J", "K", "L", + "M", "N", "O", "Ó", "Ô", "Õ", "P", "Q", "R", "S", + "T", "U", "Ú", "Ü", "V", "W", "X", "Y", "Z", + }, + lt = { -- lithuanian + "a", "ą", "b", "c", ch, "č", "d", "e", "ę", "ė", + "f", "g", "h", "i", "į", "y", "j", "k", "l", "m", + "n", "o", "p", "r", "s", "š", "t", "u", "ų", "ū", + "v", "z", "ž", + + "A", "Ą", "B", "C", CH, "Č", "D", "E", "Ę", "Ė", + "F", "G", "H", "I", "Į", "Y", "J", "K", "L", "M", + "N", "O", "P", "R", "S", "Š", "T", "U", "Ų", "Ū", + "V", "Z", "Ž", + }, + lv = { -- latvian + "a", "ā", "b", "c", "č", "d", "e", "ē", "f", "g", + "ģ", "h", "i", "ī", "j", "k", "ķ", "l", "ļ", "m", + "n", "ņ", "o", "ō", "p", "r", "ŗ", "s", "š", "t", + "u", "ū", "v", "z", "ž", + + "A", "Ā", "B", "C", "Č", "D", "E", "Ē", "F", "G", + "Ģ", "H", "I", "Ī", "J", "K", "Ķ", "L", "Ļ", "M", + "N", "Ņ", "O", "Ō", "P", "R", "Ŗ", "S", "Š", "T", + "U", "Ū", "V", "Z", "Ž", + }, + hu = { -- hungarian + "a", "á", "b", "c", "d", "e", "é", + "f", "g", "h", "i", "í", "j", "k", "l", + "m", "n", "o", "ó", "ö", "ő", "p", "q", "r", + "s", "t", "u", "ú", "ü", "ű", "v", "w", + "x", "y", "z", + + "A", "Á", "B", "C", "D", "E", "É", + "F", "G", "H", "I", "Í", "J", "K", "L", + "M", "N", "O", "Ó", "Ö", "Ő", "P", "Q", "R", + "S", "T", "U", "Ú", "Ü", "Ű", "V", "W", + "X", "Y", "Z", + }, + et = { -- estonian + "a", "b", "d", "e", "f", "g", "h", "i", "j", "k", + "l", "m", "n", "o", "p", "r", "s", "š", "z", "ž", + "t", "u", "v", "w", "õ", "ä", "ö", "ü", "x", "y", + + "A", "B", "D", "E", "F", "G", "H", "I", "J", "K", + "L", "M", "N", "O", "P", "R", "S", "Š", "Z", "Ž", + "T", "U", "V", "W", "Õ", "Ä", "Ö", "Ü", "X", "Y", + }, + -- jp = { -- japanese + -- "あ", "い", "う", "え", "お", "か", "き", "く", "け", "こ", + -- "さ", "し", "す", "せ", "そ", "た", "ち", "つ", "て", "と", + -- "な", "に", "ぬ", "ね", "の", "は", "ひ", "ふ", "へ", "ほ", + -- "ま", "み", "む", "め", "も", "や", "ゆ", "よ", + -- "ら", "り", "る", "れ", "ろ", "わ", "ゐ", "ゑ", "を", "ん", + -- }, +} + +local enabled = false +local language = "en" +local selector = { } + +for k, v in next, lists do + selector[#selector+1] = k +end + +table.sort(selector) + +local function make_strip() + local alphabet = lists[language] or lists.en + local selector = "(hide)(" .. table.concat(selector,")(") .. ")" + local alphabet = "(" .. language .. ":)(" .. table.concat(alphabet,")(") .. ")" + scite.StripShow(selector .. "\n" .. alphabet) + enabled = true +end + +local function hide_strip() + scite.StripShow("") + enabled = false +end + +local function process_strip(control) + local value = scite.StripValue(control) + if value == "hide" then + hide_strip() + elseif lists[value] then + language = value + make_strip() + elseif value == language .. ":" then + -- ignore + else + local char = value + trace("inserted character: " .. char .. "\n") + editor:insert(editor.CurrentPos,char) + end +end + +function toggle_strip() + if enabled then + hide_strip() + OnStrip = function() end + else + make_strip() + OnStrip = process_strip + end +end |