X-Git-Url: http://git.shiar.nl/barcat.git/blobdiff_plain/8ad843b82944ba03a821aafd4ca738a379cd4206..v1.03-19-g0938debbad:/barcat?ds=sidebyside diff --git a/barcat b/barcat index 785df75..c9b36ca 100755 --- a/barcat +++ b/barcat @@ -102,8 +102,8 @@ state $nr = $opt{hidemin} ? $opt{hidemin} - 1 : 0; @lines > $nr or return unless $opt{hidemin}; @order = sort { $b <=> $a } grep { length } @values; -my $maxval = $opt{hidemax} ? max @values[0 .. $opt{hidemax} - 1] : $order[0]; -my $minval = min $order[-1], 0; +my $maxval = ($opt{hidemax} ? max grep { length } @values[0 .. $opt{hidemax} - 1] : $order[0]) // 0; +my $minval = min $order[-1] // (), 0; my $lenval = $opt{'value-length'} // max map { length } @order; my $len = defined $opt{trim} && $opt{trim} <= 0 ? -$opt{trim} + 1 : max map { length $values[$_] && length $lines[$_] } @@ -171,6 +171,11 @@ while ($nr <= $#lines) { show_lines(); if ($opt{stat}) { + if ($opt{hidemin} or $opt{hidemax}) { + $opt{hidemin} ||= 1; + $opt{hidemax} ||= @lines; + printf '%s of ', sum(@values[$opt{hidemin} - 1 .. $opt{hidemax} - 1]) // 0; + } my $total = sum @order; printf '%s total', $total; printf ' in %d values', scalar @values;