Am 22.06.19 um 11:36 schrieb Dimitriy Ryazantcev:
> Signed-off-by: Dimitriy Ryazantcev <dimitriy.ryazant...@gmail.com>
> ---
>  progress.c |  4 +++-
>  strbuf.c   | 16 ++++++++++++----
>  2 files changed, 15 insertions(+), 5 deletions(-)
> 
> diff --git a/progress.c b/progress.c
> index a2e8cf64a8..61d8cf5d04 100644
> --- a/progress.c
> +++ b/progress.c
> @@ -151,7 +151,9 @@ static void throughput_string(struct strbuf *buf, 
> uint64_t total,
>       strbuf_humanise_bytes(buf, total);
>       strbuf_addstr(buf, " | ");
>       strbuf_humanise_bytes(buf, rate * 1024);
> -     strbuf_addstr(buf, "/s");
> +     strbuf_addstr(buf, "/");
> +     /* TRANSLATORS: IEC 80000-13:2008, subclause 13-12.b: second */
> +     strbuf_addstr(buf, _("s"));
>  }
>  
>  void display_throughput(struct progress *progress, uint64_t total)
> diff --git a/strbuf.c b/strbuf.c
> index 0e18b259ce..0a3ebc3749 100644
> --- a/strbuf.c
> +++ b/strbuf.c
> @@ -814,20 +814,28 @@ void strbuf_addstr_urlencode(struct strbuf *sb, const 
> char *s,
>  void strbuf_humanise_bytes(struct strbuf *buf, off_t bytes)
>  {
>       if (bytes > 1 << 30) {
> -             strbuf_addf(buf, "%u.%2.2u GiB",
> +             strbuf_addf(buf, "%u.%2.2u ",
>                           (unsigned)(bytes >> 30),
>                           (unsigned)(bytes & ((1 << 30) - 1)) / 10737419);
> +             /* TRANSLATORS: ISO/IEC 80000-13:2008, clause 4: gibi */
> +             strbuf_addstr(buf, _("Gi"));
>       } else if (bytes > 1 << 20) {
>               unsigned x = bytes + 5243;  /* for rounding */
> -             strbuf_addf(buf, "%u.%2.2u MiB",
> +             strbuf_addf(buf, "%u.%2.2u ",
>                           x >> 20, ((x & ((1 << 20) - 1)) * 100) >> 20);
> +             /* TRANSLATORS: ISO/IEC 80000-13:2008, clause 4: mebi */
> +             strbuf_addstr(buf, _("Mi"));
>       } else if (bytes > 1 << 10) {
>               unsigned x = bytes + 5;  /* for rounding */
> -             strbuf_addf(buf, "%u.%2.2u KiB",
> +             strbuf_addf(buf, "%u.%2.2u ",
>                           x >> 10, ((x & ((1 << 10) - 1)) * 100) >> 10);
> +             /* TRANSLATORS: ISO/IEC 80000-13:2008, clause 4: kibi */
> +             strbuf_addstr(buf, _("Ki"));
>       } else {
> -             strbuf_addf(buf, "%u bytes", (unsigned)bytes);
> +             strbuf_addf(buf, "%u ", (unsigned)bytes);
>       }
> +     /* TRANSLATORS: ISO/IEC 80000-13:2008, subclause 13-9.c: byte */
> +     strbuf_addstr(buf, _("B"));
>  }
>  
>  void strbuf_add_absolute_path(struct strbuf *sb, const char *path)
> 

All of the prefixes are in ISO/IEC, i.e., standardized. Why do they have
to be translated?

Isn't the way of presentation of magnitudes with a unit also
standardized, and should not need to be translated?

-- Hannes

Reply via email to