Re: [L10N] Kickoff of translation for Git 2.10.0 round 1
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 20, 2016, 18:03 UTC
- Message-ID
- <xmqqy43rxqqz.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <9262712.D6TC1VHfMN@cayenne>
Jean-Noël AVILA <jn.avila@free.fr> writes:
Show 5 quoted lines
> 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.
> 2. in sequencer.c, there is a mistake in the original string to translate > "Cannot revert during a another revert"
This should be corrected. Thanks for spotting.
> 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
(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().
[Reference]
*1* https://www.gnu.org/savannah-checkouts/gnu/gettext/manual/html_node/Plural-forms.html