X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/5b166c668eeba6da9e7d73e25e7fd4faeecd1db1..86a6750572ee3fa30d006a4edce6d5c188726a17:/word.plp?ds=sidebyside
diff --git a/word.plp b/word.plp
index d594370..508fd06 100644
--- a/word.plp
+++ b/word.plp
@@ -1,6 +1,8 @@
<(common.inc.plp)><:
-my $wordlist = 'wordlist.inc.pl';
+my $wordlist = 'wordlist.en.inc.pl';
+my $limit = $get{v} // (exists $get{v} ? 4 : 3);
+
Html({
title => 'words cheat sheet',
version => '1.0',
@@ -12,26 +14,32 @@ Html({
raw => <<'EOT',
';
+}
:>
Words
@@ -65,30 +78,20 @@ Zie ook dieren.
<:
-my %table = do 'wordlist.inc.pl' or die $@ // $!;
+my $table = do $wordlist or die $@ // $!;
sub showimg {
my ($name) = @_;
- my ($img) = $name =~ /^([\w -]+)/;
+ my ($imgname) = $name =~ /^([\w -]+)/;
$name =~ s/\w{4} [^aoeuiyc\W] [rl]?+ \K (?= [^aoeuiy\W] [rl]? [aoeuiy] \w)//gx;
$name =~ s{/(.*)}{ ($1)}g;
my $hidden = $name =~ s/\?$//;
my $alt = $name;
$name = "$name
" if $name =~ s/\?$//;
+ $name = "$name";
- if ($img and -e ($img = "data/word/$img.jpg")) {
- my $alt = -l $img && readlink($img) =~ s/\.jpg$//r;
- if ($alt) {
- $name .= " ($alt)";
- }
- else {
- $alt = $name;
- }
- $name = "$name";
- $name .= sprintf '
', $img, $alt;
- }
- elsif ($hidden) {
- $name = "$name?";
+ if ($imgname and -e ($img = "data/word/en/$imgname.jpg")) {
+ $name .= sprintf '
', $img, $imgname;
}
return sprintf '%s', $hidden && !exists $get{v} && ' hidden', $name;
}
@@ -96,8 +99,13 @@ sub showimg {
sub printimgs {
say '';
for my $row (@_) {
- printf '- ', defined $table->{$row} && ' class="parent"';
- print showimg($row);
+ my ($level, $mark, $title) = split /([a-z]*):/, $row, 2;
+ my @type;
+ push @type, 'parent' if defined $table->{$row};
+ push @type, 'large' if $mark;
+ push @type, 'level'.($level || 0);
+ printf '
- ', @type ? sprintf ' class="%s"', join ' ', @type : '';
+ print showimg($title) if $level <= $limit;
printimgs(@{$_}) for $table->{$row} // ();
print '
';
}