tools: preserve make errors, ignore empty output
[sheet.git] / perl.plp
index ff3054e679b8575e87d8ecaebaf1fc560cceae89..a5ef991145750b9fbcb617837a58b5e481059a3a 100644 (file)
--- a/perl.plp
+++ b/perl.plp
@@ -2,7 +2,7 @@
 
 Html({
        title => 'perl version cheat sheet',
-       version => '1.1',
+       version => '1.2',
        keywords => [qw'
                perl version feature features comparison
                sheet cheat overview summary
@@ -24,10 +24,10 @@ Depending on desired compatibility you'll want to support a minimum of
 my $info = do 'perl.inc.pl' or die $@ // $!;
 for my $vernum (reverse sort keys %{$info}) {
        my $verrow = $info->{$vernum};
-       $verrow->{unstable} and next unless exists $get{v};
+       defined $verrow->{unstable} and next unless exists $get{v};
 
-       print '<div class="section">'."\n";
-       printf '<h2>%vd <small>%s</small></h2><dl>'."\n", $vernum, $verrow->{release};
+       say '<div class="section">';
+       say sprintf '<h2>%vd <small>%s</small></h2><dl>', $vernum, $verrow->{release};
        for (@{ $verrow->{new} }) {
                my ($topic, $desc, $attr) = @{$_};
                if ($attr) {
@@ -52,10 +52,10 @@ for my $vernum (reverse sort keys %{$info}) {
                        }
                        $desc .= sprintf ' <em class="ex">(%s)</em>', $title;
                }
-               printf '<dt>%s<dd>%s'."\n", $topic, $desc || '<br/>';
+               say sprintf '<dt>%s<dd>%s', $topic, $desc || '<br/>';
        }
-       printf '<dt>Unicode</dt><dd>v%s'."\n", $_ for $verrow->{unicode} || ();
-       print "</dl>\n";
-       print "</div>\n\n";
+       say sprintf '<dt>Unicode</dt><dd>v%s', $_ for $verrow->{unicode} || ();
+       say '</dl>';
+       say "</div>\n";
 }