I like how the GNU coreutils seem to have done. They use real, 1024-byte kilobytes by default, but print only the abbreviation of the prefix so it's just 10K or 200M and people can pretend it stands for some other silly word if they want.

You can use `--si` for fake, 1000-byte kilobytes - trying it it seems weird that these are reported with a lowercase 'k' but 'M' and so on remain uppercase.

. . . it seems weird that these are reported with a lowercase 'k' but 'M' and so on remain uppercase.

For SI units, the abbreviations are defined, so a lowercase k for kilo and uppercase M for mega is correct. Lower case m is milli, c is centi, d is deci. Uppercase G is giga, T is tera and so on.

https://en.wikipedia.org/wiki/International_System_of_Units#...

Of course! I was being silly and just thinking of "k" for the smaller one and "K" for the bigger one.

Upper-K is for Kelvin, so can't be mixed in as a prefix in case someone decides to commit physics crimes and talk about temperature-mass (Kkg).

Not true. Several SI prefixes already overlap with units. m is both metre and milli-. T is tesla and tera-. c is a prefix of candela (cd) but also centi-. (G is gauss (cgs unit, not mks/SI) and giga-.)

Just throw some Joules on top there and it'll be alright

[flagged]