From: Ian Jackson Date: Sat, 28 Mar 2020 21:36:01 +0000 (+0000) Subject: quacks-ingredients: wip Base vs Witches vs Both X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=commitdiff_plain;h=4cf336ec8769a245df0938c73d926066c0551d3d quacks-ingredients: wip Base vs Witches vs Both Signed-off-by: Ian Jackson --- diff --git a/quacks-ingredients-counts b/quacks-ingredients-counts index 3e49a95..15e6bd8 100755 --- a/quacks-ingredients-counts +++ b/quacks-ingredients-counts @@ -5,8 +5,11 @@ use strict; use Data::Dumper; use POSIX; +our $which = shift @ARGV; + sub xdata ($) { my ($cb) = @_; + return unless $which eq 'Base'; foreach my $count (qw(1 2 3)) { foreach my $nspots (qw(1 2 3 4)) { $_ = $cb->($count,$nspots)."\t".$_; @@ -27,14 +30,25 @@ foreach my $nspots (qw(1 2 3 4)) { $_=; chomp or die; xdata sub { my ($xcount,$xnspots) = @_; - $xnspots == $nspots and $xcount; + $xnspots == $nspots and "$xcount+0"; }; my @l = split /\t/, $_; - foreach my $i (0..$#names) { $count{$names[$i]}{$nspots} = $l[$i] || 0; } + foreach my $i (0..$#names) { + $_ = $l[$i] || '0+0'; + $_ ||= 0; + m/\+/; + + $count{$names[$i]}{$nspots} = + $which eq 'Both' ? $` + $' : + $which eq 'Base' ? $` : + $which eq 'Witches' ? $' : + die "$which ?"; + } } $_ = Dumper(\%count); s{^}{// }mg; +#print STDERR; our $name; our $total_count; @@ -89,7 +103,7 @@ STDOUT->error and die $!; __DATA__ White Green Blue Red Yellow Purple Black Orange -20 15 14 12 13 15 18 20 -8 10 10 8 6 -4 - 13 10 10 10 +20+6 15+10 14+8 12+6 13+6 15+8 18+8 20+12 +8+3 10+5 10+5 8+5 6+5 +4+2 + 13+5 10+5 10+5 10+5 diff --git a/quacks-ingredients-update-levels b/quacks-ingredients-update-levels index f0dbd4b..ed81826 100755 --- a/quacks-ingredients-update-levels +++ b/quacks-ingredients-update-levels @@ -20,7 +20,7 @@ cat >$f.tmp <>$f.tmp +./quacks-ingredients-counts Base >>$f.tmp mv -f $f.tmp $f egrep '^// [A-Za-z]' $f | sort