Source of cli.plp

<(common.inc.plp)><:

Html({
	title => 'cli cheat sheet',
	version => '1.0',
	description => [],
	keywords => [qw'
	'],
	data => ['data/cli.inc.pl'],
});

my $cmd = Data('data/cli');
:>
<h1>CLI options</h1>

<style>
	tbody td {font-size:70%}
</style>
<:
sub showoption {
	my ($info, $char, $span) = @_;
	my ($alias, $help) = @{ $info // [] };
	printf '<td class="l%s"', $info ? 5 : 1;
	print ' rowspan="2"' if $span;
	print '>';
	$info or return;
	my ($title) = $alias =~ m{--([\w-]+=?)}
		or return print $char;
	$title =~ s/-\K/<wbr>/g;
	$title =~ s/deref\Kerence/./;
	print $title;
}

my @colchars = ('a'..'z', '?');
print '<table class="ccmap"><col>';
print qq'<colgroup span="$_">' for scalar @colchars;
#say '</colgroup><col>';
for my $section (qw{thead tfoot}) {
	print "<$section><tr><th>↳";
	print '<th>', EscapeHTML($_) for @colchars;
	say '';
}
print '<tbody>';
for my $name (sort keys %$cmd) {
	my $row = $cmd->{$name};
	print '<tr><th rowspan="2">', $name;
	showoption($row->{$_}, $_, !$row->{uc $_}) for @colchars;
	print "\n\t<tr>";
	$row->{$_} and showoption($row->{$_}, $_) for map {uc} @colchars;
}
say '</table>';
:>

<div class="legend">
	<table class="glyphs"><tr>
	<td class="X l5">supported
	<td class="X l1">unsupported
	<td class="X l0 ex">alias
	</table>
</div>