use Shiar_Sheet::Colour '1.05';
+{
+ default => [qw( ansi xkcd ansi88 )],
+ more => [qw( ansi mirc legacy ansi256 )],
+ ansi => [qw( cga xterm tango app html cgarne )],
+ legacy => [qw( c64 msx2 mac2 risc arnegame cpc )],
+
html => {
title => 'HTML keywords (inherited by CSSā„2.1 and SVG), mostly identical to X11',
href => 'http://www.w3.org/TR/css3-color/#html4',
ansiorder => [ 0,2,5,9,6,4,3,15 , 11,10,13,7,14,8,12,1 ],
hueorder => [ 2,8,7,5,3,6,4,9 , 10,13,14,0,11,12,15,1 ],
},
+
+ msx => [qw( msx1 msx2 arnejmp )],
msx1 => {
name => 'MSX',
list => [ map {
)],
parent => 'msx1',
},
+
arnegame => {
href => 'http://androidarts.com/palette/16pal.htm',
title => 'Generic 16 color game palette v20 by Arne Niklas Jansson',
my @termlist;
push @termlist, split /\W+/, $ENV{PATH_INFO} || 'default';
-my %termgroup = (
- default => [qw( ansi xkcd ansi88 )],
- more => [qw( ansi mirc legacy ansi256 )],
- msx => [qw( msx1 msx2 arnejmp )],
- ansi => [qw( cga xterm tango app html cgarne )],
- legacy => [qw( c64 msx2 mac2 risc arnegame cpc )],
-);
-@{$_} = map { $termgroup{$_} ? @{ $termgroup{$_} } : $_ } @{$_}
- for values %termgroup, \@termlist;
-
:>
<h1>Terminal colours</h1>
as implemented by various systems and programs.
<:
print
- "@termlist" ne "@{ $termgroup{default} }" ? 'Additional palettes are included as specified.' :
+ "@termlist" ne 'default' ? 'Additional palettes are included as specified.' :
'Also see <a href="/termcol/more">8-bit legacy hardware</a> palettes.';
:>
</p>
sub coltable {
my ($term) = @_;
my $info = $palettes->{$term};
+
+ if (ref $info eq 'ARRAY') {
+ coltable($_) for @{$info};
+ }
+
ref $info eq 'HASH' or next;
my $caption = $info->{name} // $term;