From: Paul Eggert Date: Tue, 16 Nov 2004 07:53:08 +0000 (+0000) Subject: (human_readable): Support human_space_before_unit. X-Git-Tag: v5.3.0~397 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7ce1f197f36e1064d4f411ee8ae7f2f70ddb1255;p=thirdparty%2Fcoreutils.git (human_readable): Support human_space_before_unit. --- diff --git a/lib/human.c b/lib/human.c index f024c73ea0..4960876dd4 100644 --- a/lib/human.c +++ b/lib/human.c @@ -158,6 +158,9 @@ group_number (char *number, size_t numberlen, so on. Numbers smaller than the power aren't modified. human_autoscale is normally used together with human_SI. + If (OPTS & human_space_before_unit), use a space to separate the + number from any suffix that is appended as described below. + If (OPTS & human_SI), append an SI prefix indicating which power is being used. If in addition (OPTS & human_B), append "B" (if base 1000) or "iB" (if base 1024) to the SI prefix. When ((OPTS & @@ -384,6 +387,9 @@ human_readable (uintmax_t n, char *buf, int opts, break; } + if ((exponent | (opts & human_B)) && (opts & human_space_before_unit)) + *psuffix++ = ' '; + if (exponent) *psuffix++ = (! (opts & human_base_1024) && exponent == 1 ? 'k'