unmodified should avoid value alignment
authorMischa POSLAWSKY <perl@shiar.org>
Mon, 9 Sep 2019 17:19:04 +0000 (19:19 +0200)
committerMischa POSLAWSKY <perl@shiar.org>
Mon, 9 Sep 2019 22:37:53 +0000 (00:37 +0200)
barcat

diff --git a/barcat b/barcat
index 442559c804a05ac433f2e473c48cc4c19b3e2d37..a4ed12faa8b248923be9990d22b8962d67764a66 100755 (executable)
--- a/barcat
+++ b/barcat
@@ -63,6 +63,7 @@ $opt{trim}   *= $opt{width} / 100 if $opt{trimpct};
 $opt{units}   = [split //, ' kMGTPEZYyzafpnμm'] if $opt{'human-readable'};
 $opt{anchor} //= qr/\A/;
 $opt{'value-length'} = 6 if $opt{units};
+$opt{'value-length'} = 1 if $opt{unmodified};
 
 my (@lines, @values, @order);
 
@@ -93,6 +94,7 @@ while (readline) {
        push @order, $1 if length $1;
        if (defined $opt{trim} and defined $1) {
                my $trimpos = abs $opt{trim};
+               $trimpos -= length $1 if $opt{unmodified};
                if ($trimpos <= 1) {
                        $_ = substr $_, 0, 1;
                }
@@ -315,7 +317,7 @@ Total statistics after all data.
 
 =item -u, --unmodified
 
-Do not strip leading whitespace.
+Do not reformat values, keeping leading whitespace.
 Keep original value alignment, which may be significant in some programs.
 
 =item --value-length=<size>