On Sat, Jun 22, 2019 at 2:18 AM Junio C Hamano <gits...@pobox.com> wrote:
>
> Dimitriy Ryazantcev <dimitriy.ryazant...@gmail.com> writes:
>
> > Signed-off-by: Dimitriy Ryazantcev <dimitriy.ryazant...@gmail.com>
> > ---
> >  progress.c | 3 ++-
> >  strbuf.c   | 8 ++++----
> >  2 files changed, 6 insertions(+), 5 deletions(-)
> >
> > diff --git a/progress.c b/progress.c
> > index a2e8cf64a8..3d47c06495 100644
> > --- a/progress.c
> > +++ b/progress.c
> > @@ -151,7 +151,8 @@ 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");
> > +     /* TRANSLATORS: per second */
> > +     strbuf_addstr(buf, _("/s"));
> >  }
>
> Hpmh, if it is OK to assume that in all human languages it is OK to
> express the reate as <number> followed by translated "per second",
> without allowing the order from getting changed, then ...

Probably not (but I don't know any language that is not ok with this).
I would just add strbuf_humanise_rate() that prints "GiB/s",
"MiB/s"... Then we probably should print "bytes/second". This will
print "bytes/s" which looks just weird.

> >       if (bytes > 1 << 30) {
> > -             strbuf_addf(buf, "%u.%2.2u GiB",
> > +             strbuf_addf(buf, _("%u.%2.2u GiB"),
> >                           (unsigned)(bytes >> 30),
> >                           (unsigned)(bytes & ((1 << 30) - 1)) / 10737419);
>
> wouldn't it make more sense to split GiB, MiB, KiB and "bytes" units
> out of these messages, and ask only these unit names, without the
> %u.%2.2u number formats, to get translated by the localization team?

That assumes all languages will print the unit after the number. I
guess that is ok and it helps share code if we add
strbuf_humanise_rate() above because only the unit part changes.
-- 
Duy

Reply via email to