(common.inc.plp)><:
$Request ||= 'altgr/windows';
my $mode = lc $Request;
my $include = "keyboard/$mode.eng";
if (-e (my $page = "keyboard/$Request/index.inc.plp")) {
Include $page;
exit;
}
my $info = eval { Data($include) } || {};
warn "error in $include: ", @{$@} if ref $@;
$mode = $info->{title} // $mode;
my $showkeys //= !exists $get{keys} ? undef :
($get{keys} ne '0' && ($get{keys} || 'always'));
my @keystyle = (
'',
'',
!$showkeys ? '' :
$showkeys eq 'ghost' ? '' : (),
'',
);
if ($Request =~ /^altgr/ and open my $cssinc, '<', 'keyboard/altgr.css') {
local $/;
my $data = readline $cssinc;
push @keystyle, "";
}
Html({
title => "\L$mode\E keyboard cheat sheet",
version => $info->{version} || '0.1',
canonical => -e "$Request.plp" ? "/$Request" : undef, # historic shorthand
description => $info->{description} //
["Keyboard cheat sheet for the default controls of $mode."],
keywords => [@{ $info->{keywords} // [] }, qw'
sheet cheat reference overview keyboard control commands shortkey
'],
image => $info->{image},
stylesheet => [qw( light dark circus mono red )],
data => ["$include.inc.pl"],
raw => \@keystyle,
});
%{$info} or Abort(
"Requested keyboard $mode
not available",
'404 request not found',
);
say "
$_
" for $info->{intro} // (); say "