X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/24b8d5b432e2db690c5a8a812d75519447a09a52..3f2e8ba4921b56a70b889858772731fb92ef9847:/perl.plp diff --git a/perl.plp b/perl.plp index eee43cf..9591ad7 100644 --- a/perl.plp +++ b/perl.plp @@ -2,7 +2,7 @@ Html({ title => 'perl version cheat sheet', - version => 'v1.0', + version => '1.1', keywords => [qw' perl version feature features comparison sheet cheat overview summary @@ -12,16 +12,43 @@ Html({ }); :> -

Perl cheat sheets

+

Perl release summary

+ +

The most significant features introduced for recent versions of the Perl scripting language. +Depending on desired compatibility you'll want to support a minimum of +v5.8 or +v5.14. +

<: 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}; + print '
'."\n"; - printf '

%vd %s

'."\n", $vernum, $verrow->{release}; - printf '
%s
%s', Entity(@{$_}), '
' for @{ $verrow->{new} }; - printf '
Unicode
v%s', $_ for $verrow->{unicode} || (); + printf '

%vd %s

'."\n", $vernum, $verrow->{release}; + for (@{ $verrow->{new} }) { + if (defined (my $experimental = $_->[2])) { + my $title = 'experimental'; + my $class = ' class="ex"'; + if (ref \$experimental eq 'VSTRING') { + my $dropped = $experimental =~ s/^\0// + and (exists $get{v} or next); + $title = sprintf('%s %vd', + $dropped ? 'removed in ' : "$title until", + $experimental, + ); + $experimental = $_->[3]; # optional additional class + } + if ($experimental) { + $class .= sprintf ' title="%s"', $experimental; + } + $_->[1] .= qq{ ($title)}; + } + printf '
%s
%s'."\n", @{$_}, '
' + } + printf '
Unicode
v%s'."\n", $_ for $verrow->{unicode} || (); print "
\n"; print "
\n\n"; }