summaryrefslogtreecommitdiff
path: root/activity/formats/ansi.lua
diff options
context:
space:
mode:
Diffstat (limited to 'activity/formats/ansi.lua')
-rw-r--r--activity/formats/ansi.lua58
1 files changed, 58 insertions, 0 deletions
diff --git a/activity/formats/ansi.lua b/activity/formats/ansi.lua
new file mode 100644
index 0000000..dae5bcb
--- /dev/null
+++ b/activity/formats/ansi.lua
@@ -0,0 +1,58 @@
+local ansi = {}
+
+
+function ansi.start_document (_)
+ return ""
+end
+
+
+function ansi.end_document ()
+ return ""
+end
+
+
+function ansi.start_table ()
+ return ""
+end
+
+
+function ansi.end_table ()
+ return ""
+end
+
+
+function ansi.start_row ()
+ return ""
+end
+
+
+function ansi.end_row ()
+ return "\n"
+end
+
+
+function ansi.label (name)
+ return ("%5s "):format(name)
+end
+
+
+function ansi.spot ()
+ return " "
+end
+
+
+local colours = {
+ [0] = "238",
+ "22",
+ "28",
+ "34",
+ "46",
+}
+
+
+function ansi.cell (level)
+ return ("\27[38;5;%dm"):format(colours[level]) .. "◼" .. "\27[0m"
+end
+
+
+return ansi