All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jiang Xin <worldhello.net@gmail.com>
To: "Jean-Noël AVILA" <jn.avila@free.fr>
Cc: "Junio C Hamano" <gitster@pobox.com>,
	"Alexander Shopov" <ash@kambanaria.org>,
	"Alex Henrie" <alexhenrie24@gmail.com>,
	"Ralf Thielow" <ralf.thielow@gmail.com>,
	"Marco Paolone" <marcopaolone@gmail.com>,
	"Changwoo Ryu" <cwryu@debian.org>,
	"Marco Sousa" <marcomsousa@gmail.com>,
	"Dimitriy Ryazantcev" <DJm00n@mail.ru>,
	"Peter Krefting" <peter@softwolves.pp.se>,
	"Trần Ngọc Quân" <vnwildman@gmail.com>,
	"Nelson Martell" <nelson6e65@gmail.com>,
	"Brian Gesiak" <modocache@gmail.com>,
	"Git List" <git@vger.kernel.org>
Subject: Re: [L10N] Kickoff of translation for Git 2.10.0 round 1
Date: Sun, 21 Aug 2016 23:45:52 +0800	[thread overview]
Message-ID: <CANYiYbEPOttPvixCrv2+nh_OEehE_fi8yrpdzbQ-axG4nqbsZg@mail.gmail.com> (raw)
In-Reply-To: <4016813.pOBvC7ZxlR@cayenne>

2016-08-21 2:38 GMT+08:00 Jean-Noël AVILA <jn.avila@free.fr>:
> On samedi 20 août 2016 11:03:00 CEST Junio C Hamano wrote:
>> Jean-Noël AVILA <jn.avila@free.fr> writes:
>> > 1.  In config.c, the changes to the function die_bad_number tried to
>> > flatten the translated strings (no message building logic). I think it
>> > went too far, and the reason of the failure can be factorized so that we
>> > don't have to retranslate each time. I might be wrong on this one, but I
>> > have no example of language where we would need differentiated error
>> > reasons.
>>
>> I do not have a strong opinion on this one.  I think it is an
>> attempt to avoid language-lego.
>
> No problem with the changes for blob, files, command line. It's just about
> dividing by two the number of strings to translate by factorizing "out of
> range" and "invalid unit", which are invariable anyway.

I agree with you.  It maybe not a good solution to expanded string "reason"
in commit 1b8132d:

    -       const char *reason = errno == ERANGE ?
    -                            "out of range" :
    -                            "invalid unit";


>> > 3. git-rebase--interactive, in this_nth_commit_message and
>> > skip_nth_commit_message are not localizable,
>>
>> As the "TRANSLATORS" comment alludes to, "This is the Nth thing" can
>> be rephrased to "This is the thing N" or "This is the thing #N"
>> easily, and if that form without ordinal is acceptable for many
>> languages, we should say that it is also OK in C-locale without
>> translation.  So I agree that the recent change was pointless (even
>> though the result may be localizable).
>>
>> In an ideal world, I would imagine that this would be done by using
>> Q_("This is the first thing", "This is the thing #%d", nth) aka
>> ngettext, but
>>
>>     (1) I haven't seen ngettext used from shell scripts; and
>>
> There's a use_ngettext macro
>
>>     (2) I do not think po files are set up to express "for this
>>         message, this language has 4 variants and here are the local
>>         rules to decide which one to use depending on the number,
>>         but the rules apply only to this message".  The Plural-Forms
>>         rule [*1*] seems to be global to a .po file, unfortunately.
>>
>
>
>> so I do not think we cannot do it with ngettext().
>>
>
> Let's cut it like this : first ten are literally translated, the following ones
> fall back to a general rule. All languages are treated equally. With more than
> 10 squashed commit, you no longer really care if the numbering is pedantically
> correct.


It's boring to translate all these 30 messages, I prefer #N like:

    gettext "The commit message #\${n} will be skipped:"
    gettext "This is the commit message #\${n}:"


-- 
Jiang Xin

  reply	other threads:[~2016-08-21 15:46 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-15 15:04 [L10N] Kickoff of translation for Git 2.10.0 round 1 Jiang Xin
2016-08-20 16:01 ` Jean-Noël AVILA
2016-08-20 18:03   ` Junio C Hamano
2016-08-20 18:38     ` Jean-Noël AVILA
2016-08-21 15:45       ` Jiang Xin [this message]
2016-08-23 15:58       ` Junio C Hamano
2016-08-23 18:16         ` Jean-Noël AVILA
2016-08-21 14:50     ` [PATCH 1/3] i18n: fix typos for translation Jean-Noel Avila
2016-08-21 14:50       ` [PATCH 2/3] i18n: fix git rebase interactive commit messages Jean-Noel Avila
2016-08-21 14:50       ` [PATCH 3/3] i18n: simplify numeric error reporting Jean-Noel Avila
2016-08-24 15:48         ` Junio C Hamano
2016-08-23 16:06       ` [PATCH 1/3] i18n: fix typos for translation Junio C Hamano
2016-08-24 15:44         ` Junio C Hamano
2016-08-24 15:45         ` Junio C Hamano
2016-08-25  5:24   ` [L10N] Kickoff of translation for Git 2.10.0 round 1 Alex Henrie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CANYiYbEPOttPvixCrv2+nh_OEehE_fi8yrpdzbQ-axG4nqbsZg@mail.gmail.com \
    --to=worldhello.net@gmail.com \
    --cc=DJm00n@mail.ru \
    --cc=alexhenrie24@gmail.com \
    --cc=ash@kambanaria.org \
    --cc=cwryu@debian.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jn.avila@free.fr \
    --cc=marcomsousa@gmail.com \
    --cc=marcopaolone@gmail.com \
    --cc=modocache@gmail.com \
    --cc=nelson6e65@gmail.com \
    --cc=peter@softwolves.pp.se \
    --cc=ralf.thielow@gmail.com \
    --cc=vnwildman@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.