Re: What's cooking in git.git (Feb 2011, #06; Sun, 27)
- From
Jakub Narebski <jnareb@gmail.com>
- Date
- Mar 2, 2011, 10:32 UTC
- Message-ID
- <m3k4gh7r0m.fsf@localhost.localdomain>
- In-Reply-To
- <AANLkTi=+iBR3OBZ=4fi_g=JMQKi=47F47hRsWxK=RbMv@mail.gmail.com>
Piotr Krukowiecki <piotr.krukowiecki@gmail.com> writes:
> On Wed, Mar 2, 2011 at 6:24 AM, Junio C Hamano <gitster@pobox.com> wrote: >> Jeff King <peff@peff.net> writes:
Show 11 quoted lines
>>> - Nit: you nicely use "%d commit%s" to handle the single/plural case >>> in the warning message, but then you "them" later on. It needs >>> (1 < lost) ? "them" : "it". >> >> I actually don't like playing games like that, especially when i18n topic >> is in flight. Among the languages I know rules reasonably well, two has >> the rule that a countable noun is spelled differently depending on the >> number of that thing is one or more, and one spells the noun the same way >> regardless of the number. Who knows if git needs to be translated into a >> language whose noun changes its shape three-way, depending on the number >> being one, two, or more?
Well, one of such languages with spelling depending in number of things is Russian, for which we have translation for git-gui, so I guess somebody would add one for git itself.
> For gettex this is described at > http://www.gnu.org/software/gettext/manual/gettext.html#Plural-forms
Which includes example for Polish language:
1 file = 1 plik
2,3,4 files = 2,3,4 pliki
5-21 files = 5-21 plików
22-24 files = 22-24 pliki
25-31 files = 25-31 plików
and so on [...]
Three forms, special case for one and some numbers ending in 2, 3, or 4
The header entry would look like this: Plural-Forms: nplurals=3; \
plural=n==1 ? 0 : \
n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;Languages with this property include:
Slavic family
Polish> Don't know how it's handled in shell scripts or perl or whatever other > language (which does not use gettext?)
Both shell scripts and Perl scripts would use gettext: gettext.sh for shell, Locale::Messages for Perl (we need lower level than Text::Domain, and Locale::Maketext is first no longer recommended, and second does not use gettext at least by default).
-- Jakub Narebski Poland ShadeHawk on #git