X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/d8fb15b3d9a345d0c936e036b47a7a0708ffbb74..b1a099f695f80243c53d97c448c98053dcc6effb:/codec.plp
diff --git a/codec.plp b/codec.plp
index b2c3407..f13b93a 100644
--- a/codec.plp
+++ b/codec.plp
@@ -4,43 +4,48 @@ my ($page, @feat) = split m{/+}, $Request || 'image';
$page !~ /\W/ or Html(), Abort('Invalid codec type request', 400);
@feat or @feat = 'default';
my $title = "$page codecs";
+my $info = eval { Data("codec-$page") };
+if ($@) {
+ $info = {};
+}
Html({
title => "$title cheat sheet",
- version => '1.0',
- description => [
- ],
- keywords => [qw'
- codec encoder encoding decode file format type mime
- feature comparison support benchmark compression
- image audio video
- '],
+ version => '1.1',
+ description => $info->{intro},
+ keywords => [@{ $info->{keywords} // [] }, qw' feature comparison support benchmark '],
stylesheet => [qw'light circus dark red'],
- data => [qw'codec.inc.pl'],
+ data => ["codec-$page.inc.pl"],
raw => '',
});
-my $info = do "codec-$page.inc.pl";
-$info and %{$info} > 1
- or Abort("Requested codec type $page
not available", '404 request not found', $@ // $!);
+%{$info}
+ or Abort("Requested codec type $page
not available", '404 request not found');
say "
$_
" for $info->{intro} // (); my %BOOLSCORE = (y => [5, 'â'], n => [1, 'â'], 0 => [0, 'n/a']); :>feature <: my @codecs = sort { $info->{codec}->{$a}->{available} <=> $info->{codec}->{$b}->{available} } keys $info->{codec}->%*; +my @codeccols = @{$info->{codec}}{@codecs}; -print ' | ', $_->{name} for @{$info->{codec}}{@codecs}; -print "\n | ||
---|---|---|---|
', $_->{available} for @{$info->{codec}}{@codecs};
+{
+ print '';
+say "\t", ' | ', $_->{name} for @codeccols;
+print ' | ', $_->{available} for @codeccols;
say ' | |