keyboard: move ?keys code and styling from common include
authorMischa POSLAWSKY <perl@shiar.org>
Fri, 15 Dec 2023 22:59:26 +0000 (23:59 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Tue, 19 Dec 2023 23:54:11 +0000 (00:54 +0100)
common.inc.plp
keyboard.plp

index d282f091ca452598092ca2b7034c691f5d57ccbb..2976cbe37cd07615b1f9073d9fc332b403e19e24 100644 (file)
@@ -50,8 +50,6 @@ BEGIN {
 our $Request //= decode_utf8($ENV{PATH_INFO} =~ s{^/}{}r);
 
 our $style;
-our $showkeys //= !exists $get{keys} ? undef :
-       ($get{keys} ne '0' && ($get{keys} || 'always'));
 
 $header{content_type} = 'text/html; charset=utf-8';
 
@@ -149,15 +147,6 @@ sub Html {
                '<link rel="stylesheet" type="text/css" media="monochrome" href="/mono.css?1.11" title="light">',
        );
 
-       # optional amends
-       push @{ $meta->{raw} }, (
-               '<!--[if lte IE 6]><style> .help dl.legend dt {margin:0 0 1px} </style><![endif]-->',
-               '<!--[if lte IE 7]><style> .help dl.legend dd {float:none} </style><![endif]-->',
-               !$showkeys ? '<style> .no {visibility:hidden} </style>' :
-               $showkeys eq 'ghost' ? '<style> .no, .alias {opacity:.5} </style>' : (),
-               '<script type="text/javascript" src="/keys.js?1.6" async></script>',
-       ) if $meta->{keys};
-
        my ($file) = $ENV{SCRIPT_FILENAME} =~ m{ ([^/]+) \.plp$ }x;
 
        PLP_START {
index 8bbe8f7dcdbea9eec86eeb73d142ce3c914d4c98..4a49ebba91a52e64ddc6420a86bfce8d8193d727 100644 (file)
@@ -7,6 +7,16 @@ 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 = (
+       '<!--[if lte IE 6]><style> .help dl.legend dt {margin:0 0 1px} </style><![endif]-->',
+       '<!--[if lte IE 7]><style> .help dl.legend dd {float:none} </style><![endif]-->',
+       !$showkeys ? '<style> .no {visibility:hidden} </style>' :
+       $showkeys eq 'ghost' ? '<style> .no, .alias {opacity:.5} </style>' : (),
+       '<script type="text/javascript" src="/keys.js?1.6" async></script>',
+);
+
 Html({
        title => "\L$mode\E keyboard cheat sheet",
        version => $info->{version} || '0.1',
@@ -16,8 +26,8 @@ Html({
                sheet cheat reference overview keyboard control commands shortkey
        '],
        stylesheet => [qw( light dark circus mono red )],
-       keys => 1,
        data => ["$include.inc.pl"],
+       raw => \@keystyle,
 });
 
 %{$info} or Abort(