summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2022-04-08 20:33:32 +0100
committerPaul Buetow <paul@buetow.org>2022-04-08 20:33:32 +0100
commit6f6df3de8f04c6aefe92c0c75492d1e1ff043bc6 (patch)
tree9a03f7bff00e700a9a77c299fa8509c4a2b36067
parent04a90e4eea589ff049561afe61dde18d000186f1 (diff)
more
-rwxr-xr-xkatana.raku19
1 files changed, 9 insertions, 10 deletions
diff --git a/katana.raku b/katana.raku
index c7e5630..6d5b104 100755
--- a/katana.raku
+++ b/katana.raku
@@ -3,9 +3,7 @@
sub prefix:<❱>(*@args) {
say "❱ {@args}";
my $proc = run @args, :out, :err;
- for $proc.out.slurp(:close), $proc.err.slurp(:close) {
- .say if .chars > 0;
- }
+ .say if .chars > 0 for $proc.out.slurp(:close), $proc.err.slurp(:close);
}
sub prefix:<⁉>(*@args) { ❱ @args unless @args[*-1].IO.f }
@@ -31,7 +29,7 @@ class Image {
⁉ [|<convert -auto-orient -geometry>, $thumb-geometry, $!source, $thumb];
my $blur = "$!dist-dir/blur/{$!filename}";
- ⁉ [|<convert -flip -geometry>, $thumb-geometry/2, '-blur', $bg-blur, $!source, $blur];
+ ⁉ [|<convert -flip -geometry>, $thumb-geometry/4, '-blur', $bg-blur, $thumb, $blur];
my $large = "$!dist-dir/large/{$!filename}";
⁉ ['cp', $!source, $large];
@@ -41,13 +39,13 @@ class Image {
method large_tag { "<img class='large' src='./large/{$!filename}' />" }
}
-sub make-mr-proper(:$dist-dir) {
- ❱ |<rm -r -f>, $dist-dir if $dist-dir.IO.d;
+sub ensure-directories(Str :$dist-dir) {
+ mkdir $dist-dir unless $dist-dir.IO.d;
+ mkdir $_ unless .IO.d for $dist-dir <<~>> </large /blur /thumb>;
}
-sub ensure-directories(:$dist-dir) {
- mkdir $dist-dir unless $dist-dir.IO.d;
- .IO.d or mkdir $_ for $dist-dir <<~>> </large /blur /thumb>;
+sub make-mr-proper(Str :$dist-dir) {
+ ❱ ['rm', '-rf', $dist-dir] if $dist-dir.IO.d;
}
multi MAIN(
@@ -61,8 +59,9 @@ multi MAIN(
) {
my @images = dir($in-dir, test => { "$in-dir/$_".IO.f })
- .map: { Image.new: source => $_, :$dist-dir };
+ .map: { new Image: source => $_, :$dist-dir };
@images = @images.pick: * if $randomize;
+ say "Found {@images.elems} images";
make-mr-proper :$dist-dir if $mr-proper;
ensure-directories :$dist-dir;