From 36a3338ff2d0fd1420f53c20c38824e0d3014801 Mon Sep 17 00:00:00 2001 From: rhiannon morris Date: Tue, 21 Nov 2023 23:23:00 +0100 Subject: [PATCH] add --subdirs --- bin/make-sizes | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/bin/make-sizes b/bin/make-sizes index 0afa3d3..f75f23e 100755 --- a/bin/make-sizes +++ b/bin/make-sizes @@ -22,6 +22,8 @@ unit sub MAIN( Bool :v(:$verbose) = False, #| out dir, default ./out IO(Str) :o(:$outdir) = 'out'.IO, + #| use a subdirectory for each site + Bool :d(:$subdirs) = False, #| defaults to all *.png & *.jpg files in the current dir *@files, ); @@ -49,7 +51,10 @@ for @files { die "$_ is not a regular file" unless .f; } # running imagemagick (and oxipng sometimes) 🪄 sub convert($in, $name, $size, $format) { - my $out = $outdir.child($in.basename).extension("$name.$format"); + my $out = $subdirs + ?? $outdir.child($name).child($in.basename).extension("$format") + !! $outdir.child($in.basename).extension("$name.$format"); + cmd , $out.dirname; cmd , $in, '-resize', $size, '-quality', $quality, $out; cmd , $out if $format == png; } @@ -76,7 +81,6 @@ sub parallel(@vals, &f) { @tasks».result; } -cmd , $outdir; my @todo = @files X @sites; parallel @todo, -> ($file, % (:$name, :$format, :$size)) {