diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2019-02-11 18:49:00 -0800 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2019-02-11 18:49:04 -0800 |
| commit | 30a7473d106caafedec53d65aa03fdc92f17d372 (patch) | |
| tree | 0bb7a85105da114d0488e1395d1b86290c8168c3 /colors.moon | |
| parent | c5f8a1b0b391439648d21565d9088b9639a0a913 (diff) | |
Added color files.
Diffstat (limited to 'colors.moon')
| -rw-r--r-- | colors.moon | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/colors.moon b/colors.moon new file mode 100644 index 0000000..b20e894 --- /dev/null +++ b/colors.moon @@ -0,0 +1,27 @@ +if COLOR_ENABLED + codes = { + normal:0, reset:0, bright:1, bold:1, dim:2, italic:3 + underscore:4, "slow blink":5, "fast blink":6, reverse:7, inverse:7 + inverted:7, hidden:8, strikethrough: 9, + -- There's some other codes, but they're not currently implemented + black:30, red:31, green:32, yellow:33, blue:34, magenta:35 + cyan:36, white:37, on_black:40, on_red:41, on_green:42 + on_yellow:43, on_blue:44, on_magenta:45, on_cyan:46 + on_white:47 + } + inverses = { + [0]:0, [1]:22, [2]:22, [3]:23, [4]:24, [5]:25, [6]:25, [7]:27, [8]:28, [9]: 29, + [30]:39, [31]:39, [32]:39, [33]:39, [34]:39, [35]:39, [36]:39, [37]:39, [38]:39, + [40]:49, [41]:49, [42]:49, [43]:49, [44]:49, [45]:49, [46]:49, [47]:49, [48]:49, + } + return (colors, s)-> + colors = colors\gsub "on (%a+)", => codes['on_'..@] + colors = colors\gsub "(%a+)", => codes[@] + colors = colors\gsub " ", ";" + colorize = "\x1b["..colors..'m' + reset = colorize\gsub("%d+", (c)-> inverses[tonumber(c)]) + return s and (colorize..s..reset) or colorize + +else + return (colors, s)-> (s or '') + |
