git.shiar.nl
/
sheet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
font: numbered fonts; os groups in include
[sheet.git]
/
browser.plp
diff --git
a/browser.plp
b/browser.plp
index d8ebf86e318ce8e85bddc26e43f7734d6842db35..652f6a957f6b6afee45b739ad6abe0bcbe51f46b 100644
(file)
--- a/
browser.plp
+++ b/
browser.plp
@@
-2,6
+2,7
@@
use 5.010;
use utf8;
use List::Util qw(sum max first);
use 5.010;
use utf8;
use List::Util qw(sum max first);
+no if $] >= 5.018, warnings => 'experimental::smartmatch';
Html({
title => 'browser compatibility cheat sheet',
Html({
title => 'browser compatibility cheat sheet',
@@
-21,7
+22,7
@@
Html({
say "<h1>Browser compatibility</h1>\n";
say "<h1>Browser compatibility</h1>\n";
-my $caniuse = do 'data/browser/support.inc.pl' or die $
! || $@
;
+my $caniuse = do 'data/browser/support.inc.pl' or die $
@ || $!
;
$_->{verrelease} = {
# mark last three (future) versions as unreleased, ensure current isn't
map {
$_->{verrelease} = {
# mark last three (future) versions as unreleased, ensure current isn't
map {
@@
-57,7
+58,9
@@
my %DSTATS = (
x => sub {
join(' ',
'requires prefix',
x => sub {
join(' ',
'requires prefix',
- (map "-$_-", $caniuse->{agents}->{$_[0]}->{prefix} // ()),
+ map {"-$_-"}
+ ($caniuse->{agents}->{$_[0]}->{prefix_exceptions} // {})->{$_[1]}
+ // $caniuse->{agents}->{$_[0]}->{prefix} // (),
);
},
);
);
},
);
@@
-98,7
+101,7
@@
given ($get{usage} // 'wm') {
'identifier must be alphanumeric name or <q>0</q>';
}
$canihas = do "data/browser/usage-$_.inc.pl" or do {
'identifier must be alphanumeric name or <q>0</q>';
}
$canihas = do "data/browser/usage-$_.inc.pl" or do {
- printf "<p>Browser usage data not found: <em>%s</em>", $
! || $@
;
+ printf "<p>Browser usage data not found: <em>%s</em>", $
@ || $!
;
break;
};
$usage = $_;
break;
};
$usage = $_;
@@
-268,8
+271,9
@@
sub featurescore {
if ($canihas) {
while (my ($browser, $versions) = each %$row) {
ref $versions eq 'HASH' or next;
if ($canihas) {
while (my ($browser, $versions) = each %$row) {
ref $versions eq 'HASH' or next;
- while (my ($version, $_) = each %$versions) {
- $rank += ($canihas->{$browser}->{$version} || .001) * $PSTATS{$_};
+ while (my ($version, $status) = each %$versions) {
+ $status =~ s/\h\#\d+//;
+ $rank += ($canihas->{$browser}->{$version} || .001) * $PSTATS{$status};
}
}
return $rank;
}
}
return $rank;
@@
-296,6
+300,7
@@
sub featurescore {
sub formatnotes {
my @html = @_;
for (@html) {
sub formatnotes {
my @html = @_;
for (@html) {
+ s/\r\n?/\n/g; # windows returns
s/\h* $//gmx; # trailing whitespace
s/(?<= [^.\n]) $/./gmx; # consistently end each line by a period
Entity($_);
s/\h* $//gmx; # trailing whitespace
s/(?<= [^.\n]) $/./gmx; # consistently end each line by a period
Entity($_);
@@
-385,7
+390,7
@@
sub saybrowsercols {
# prepare version hover details
my $title = sprintf('%.1f%% %s', $usage * $usagepct, join(', ',
# prepare version hover details
my $title = sprintf('%.1f%% %s', $usage * $usagepct, join(', ',
- map { ref $_ eq 'CODE' ? $_->($browser) : $_ }
+ map { ref $_ eq 'CODE' ? $_->($browser
, $span[0]->[0]
) : $_ }
map { $DSTATS{$_} // () }
map { split / /, $_ }
$prev
map { $DSTATS{$_} // () }
map { split / /, $_ }
$prev