aboutsummaryrefslogtreecommitdiff
path: root/lib/progressbar
diff options
context:
space:
mode:
Diffstat (limited to 'lib/progressbar')
-rw-r--r--lib/progressbar/init.nom16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/progressbar/init.nom b/lib/progressbar/init.nom
new file mode 100644
index 0000000..a7ff5aa
--- /dev/null
+++ b/lib/progressbar/init.nom
@@ -0,0 +1,16 @@
+# A progress bar
+
+externally ($x / $w progress bar) means:
+ $x = ($x clamped between 0 and $w)
+ $bits = [" ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█"]
+ $middle =
+ "" if ($x == $w) else
+ $bits.(1 + (floor ((#$bits) * ($x mod 1))))
+
+ return ("
+ \027[32;40m\($bits, last, rep (floor $x))\$middle\
+ ..\(" ", rep ($w - ((floor $x) + 1)))\027[0m
+ ")
+
+externally ($w wide $ progress bar) means
+ ($ * $w) / $w progress bar