X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/1fce3b7a43db2a10c3dbab2b3bc89dc7a90c3bad..cfb20729b17e1190ba1e9b10e13096a5e52c059d:/browser.plp diff --git a/browser.plp b/browser.plp index 27dcb1b..eee6096 100644 --- a/browser.plp +++ b/browser.plp @@ -1,7 +1,7 @@ <(common.inc.plp)><: use 5.010; use utf8; -use List::Util qw(sum max); +use List::Util qw(sum max first); Html({ title => 'browser compatibility cheat sheet', @@ -91,6 +91,20 @@ given ($get{usage} // 'wm') { $ref .= " $_" for $canihas->{-date} || (); print "\nwith $ref browser usage statistics"; } +if ($usage) { + # first() does not work inside given >:( + while (my ($browser, $row) = each %$canihas) { + my $verlist = $versions{$browser} or next; + my %supported = map { $_ => 1 } @$verlist; + $row->{$_} //= undef for @$verlist; # ensure stable keys during iteration + while (my ($version, $usage) = each %$row) { + next if defined $supported{$version}; + $_ = paddedver($_) for $version; + my $next = first { paddedver($_) ge $version } @$verlist; # or next + $row->{$next} += $usage; + } + } +} :>.