scite-context-theme.lua /size: 4248 b    last modification: 2021-10-28 13:49
1local info = {
2    version   = 1.002,
3    comment   = "theme for scintilla lpeg lexer for context/metafun",
4    author    = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
5    copyright = "PRAGMA ADE / ConTeXt Development Team",
6    license   = "see context related readme files",
7}
8
9if not lexers or not lexers.initialized then
10
11    local font_name = 'Dejavu Sans Mono'
12    local font_size = '14'
13
14    local colors = {
15        red       = { 0x7F, 0x00, 0x00 },
16        green     = { 0x00, 0x7F, 0x00 },
17        blue      = { 0x00, 0x00, 0x7F },
18        cyan      = { 0x00, 0x7F, 0x7F },
19        magenta   = { 0x7F, 0x00, 0x7F },
20        yellow    = { 0x7F, 0x7F, 0x00 },
21        orange    = { 0xB0, 0x7F, 0x00 },
22        --
23        white     = { 0xFF },
24        light     = { 0xCF },
25        grey      = { 0x80 },
26        dark      = { 0x4F },
27        black     = { 0x00 },
28        --
29        selection = { 0xF7 },
30        logpanel  = { 0xE7 },
31        textpanel = { 0xCF },
32        linepanel = { 0xA7 },
33        tippanel  = { 0x44 },
34        --
35        right     = { 0x00, 0x00, 0xFF },
36        wrong     = { 0xFF, 0x00, 0x00 },
37    }
38
39    local styles = {
40
41        ["mainspace"]    = { },
42        ["whitespace"]   = { },
43     -- ["default"]      = { font = font_name, size = font_size, fore = colors.black, back = colors.textpanel },
44     -- ["default"]      = { font = font_name, size = font_size, fore = colors.black },
45        ["default"]      = { font = font_name, size = font_size, fore = colors.black },
46        ["number"]       = { fore = colors.cyan },
47        ["comment"]      = { fore = colors.yellow },
48        ["keyword"]      = { fore = colors.blue, bold = true },
49        ["string"]       = { fore = colors.magenta },
50     -- ["preproc"]      = { fore = colors.yellow, bold = true },
51        ["error"]        = { fore = colors.red },
52        ["label"]        = { fore = colors.red, bold = true  },
53
54        ["nothing"]      = { },
55        ["class"]        = { fore = colors.black, bold = true },
56        ["function"]     = { fore = colors.black, bold = true },
57        ["constant"]     = { fore = colors.cyan, bold = true },
58        ["operator"]     = { fore = colors.blue },
59        ["regex"]        = { fore = colors.magenta },
60        ["preprocessor"] = { fore = colors.yellow, bold = true },
61        ["tag"]          = { fore = colors.cyan },
62        ["type"]         = { fore = colors.blue },
63        ["variable"]     = { fore = colors.black },
64        ["identifier"]   = { },
65
66        ["linenumber"]   = { back = colors.linepanel },
67        ["bracelight"]   = { fore = colors.orange, bold = true },
68        ["bracebad"]     = { fore = colors.orange, bold = true },
69        ["controlchar"]  = { },
70        ["indentguide"]  = { fore = colors.linepanel, back = colors.white },
71        ["calltip"]      = { fore = colors.white, back = colors.tippanel },
72
73        ["invisible"]    = { back = colors.orange },
74        ["quote"]        = { fore = colors.blue, bold = true },
75        ["special"]      = { fore = colors.blue },
76        ["extra"]        = { fore = colors.yellow },
77        ["embedded"]     = { fore = colors.black, bold = true },
78        ["char"]         = { fore = colors.magenta },
79        ["reserved"]     = { fore = colors.magenta, bold = true },
80        ["definition"]   = { fore = colors.black, bold = true },
81        ["okay"]         = { fore = colors.dark },
82        ["warning"]      = { fore = colors.orange },
83        ["standout"]     = { fore = colors.orange, bold = true },
84        ["command"]      = { fore = colors.green, bold = true },
85        ["internal"]     = { fore = colors.orange, bold = true },
86        ["preamble"]     = { fore = colors.yellow },
87        ["grouping"]     = { fore = colors.red  },
88        ["primitive"]    = { fore = colors.blue, bold = true },
89        ["plain"]        = { fore = colors.dark, bold = true },
90        ["user"]         = { fore = colors.green },
91        ["data"]         = { fore = colors.cyan, bold = true },
92
93        -- equal to default:
94
95        ["text"]         = { font = font_name, size = font_size, fore = colors.black, back = colors.textpanel },
96        ["text"]         = { font = font_name, size = font_size, fore = colors.black },
97
98    }
99
100    return styles
101
102end
103