rainbow (lolcat) colour palette
authorMischa POSLAWSKY <perl@shiar.org>
Sat, 12 Nov 2022 23:43:16 +0000 (00:43 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Fri, 18 Nov 2022 00:25:46 +0000 (01:25 +0100)
barcat
t/t1933-lolcat.in [new symlink]
t/t1933-lolcat_-c_--spark_--palette=rainbow.out [new file with mode: 0644]

diff --git a/barcat b/barcat
index 253ec8685c81d922d87c5d189af3770e4f160628..54141ee247a58f552644cf2d536eb4eaa0647d8e 100755 (executable)
--- a/barcat
+++ b/barcat
@@ -64,6 +64,16 @@ GetOptions(\%opt,
                        )],
                        whites => [qw( 1;30 0;37 1;37 )],
                        greys  => [map {"38;5;$_"} 0, 232..255, 15],
+                       rainbow=> [map {"38;5;$_"}
+                               196, # r
+                               (map { 196 + $_*6   } 0..4), # +g
+                               (map { 226 - $_*6*6 } 0..4), # -r
+                               (map {  46 + $_     } 0..4), # +b
+                               (map {  51 - $_*6   } 0..4), # -g
+                               (map {  21 + $_*6*6 } 0..4), # +r
+                               (map { 201 - $_     } 0..4), # -b
+                               196,
+                       ],
                }->{$_[1]} // [ split /[^0-9;]/, $_[1] ];
        },
        'stat|s!',
@@ -657,6 +667,10 @@ Sparkline graphics of simple input given as inline parameters:
 
     barcat -_ 3 1 4 1 5 0 9 2 4
 
+Misusing the spark functionality to draw a lolcat line:
+
+    seq $(tput cols) | barcat --spark --indicator=- --palette=rainbow
+
 =head1 AUTHOR
 
 Mischa POSLAWSKY <perl@shiar.org>
diff --git a/t/t1933-lolcat.in b/t/t1933-lolcat.in
new file mode 120000 (symlink)
index 0000000..e52ee82
--- /dev/null
@@ -0,0 +1 @@
+t1920-colorwave_uncolored.in
\ No newline at end of file
diff --git a/t/t1933-lolcat_-c_--spark_--palette=rainbow.out b/t/t1933-lolcat_-c_--spark_--palette=rainbow.out
new file mode 100644 (file)
index 0000000..140e11c
--- /dev/null
@@ -0,0 +1 @@
+\e[38;5;196m█\e[38;5;197m█\e[38;5;197m█\e[38;5;198m█\e[38;5;199m█\e[38;5;201m▇\e[38;5;129m▇\e[38;5;57m▆\e[38;5;27m▆\e[38;5;39m▅\e[38;5;51m▅\e[38;5;48m▄\e[38;5;46m▃\e[38;5;118m▃\e[38;5;190m▂\e[38;5;220m▂\e[38;5;208m▁\e[38;5;202m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;202m▁\e[38;5;208m▁\e[38;5;220m▂\e[38;5;190m▂\e[38;5;118m▃\e[38;5;46m▃\e[38;5;48m▄\e[38;5;50m▄\e[38;5;39m▅\e[38;5;27m▆\e[38;5;57m▆\e[38;5;129m▇\e[38;5;201m▇\e[38;5;199m█\e[38;5;198m█\e[38;5;197m█\e[38;5;197m█\e[38;5;196m█\e[38;5;197m█\e[38;5;197m█\e[38;5;198m█\e[38;5;199m█\e[38;5;201m▇\e[38;5;129m▇\e[38;5;57m▆\e[38;5;27m▆\e[38;5;39m▅\e[38;5;51m▅\e[38;5;48m▄\e[38;5;46m▃\e[38;5;118m▃\e[38;5;190m▂\e[38;5;220m▂\e[38;5;208m▁\e[38;5;202m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;196m▁\e[38;5;202m▁\e[38;5;208m▁\e[38;5;220m▂\e[38;5;190m▂\e[38;5;118m▃\e[38;5;46m▃\e[38;5;48m▄\e[38;5;50m▄\e[38;5;39m▅\e[38;5;27m▆\e[38;5;57m▆\e[38;5;129m▇\e[38;5;201m▇\e[38;5;199m█\e[38;5;198m█\e[38;5;197m█\e[38;5;197m█\e[0m