-<section>
-<h2>88-colour space</h2>
-<:
-for my $r (0 .. 3) {
- print '<table>';
- for my $g (0 .. 3) {
- print '<tr>';
- for my $b (0 .. 3) {
- my $index = $r*4*4 + $g*4 + $b + 16;
- print colcell($index, map {(0, 139, 205, 255)[$_]} $r, $g, $b);
+ if (my $mapinfo = $info->{rgbmap}) {
+ print '<table class="color mapped">'."\n";
+ printf "<caption>%s</caption>\n", $caption;
+ print coltable_hsv(@{$mapinfo});
+ print "</table>\n\n";
+ }
+
+ if (my $colours = $info->{list}) {
+ if (my $reorder = $info->{ansiorder} and $get{v}) {
+ $colours = [ map { $colours->[$_] =~ s/:|$/:$_/r } @{$reorder} ];
+ }
+
+ print '<table class=color>', "\n";
+ printf "<caption>%s</caption>\n", $caption;
+ for my $num (0 .. $#{$colours}) {
+ my ($rgb, $name) = split /:/, $colours->[$num], 3;
+ $name //= $num;
+ $name = [ $name, [] ] if $term =~ /^msx/ and !$num;
+ $name = [ $name, ['#333'] ] if $term eq 'xkcd';
+ print '<tr>', colcell($name, $rgb);