## Re: [gaim-i18n] Re: [Gaim-devel] Re: [gaim-i18n] Freeze

 Re: [gaim-i18n] Re: [Gaim-devel] Re: [gaim-i18n] Freeze From: Danilo Segan - 2004-11-30 12:06:45 ```=D0=94=D0=B0=D0=BD=D0=B0=D1=81 =D1=83 1:23, Ethan Blanton =D0=BD=D0=B0=D0= =BF=D0=B8=D1=81=D0=B0: > Sean Egan spake unto us the following wisdom: >> On Mon, 29 Nov 2004 17:41:21 -0600, Tim Ringenbach = wrote: >> > I didn't use ngettext here because the value will never be one. I've >> > only used %d's at all in case it changes again, so I can change it >> > without needing to retranslate, and I'm not sure what the exact value = is >> > yet actually, but it's at least 10 megabytes. But I seriously doubt it >> > will ever be one again. >>=20 >> Some languages have more than just "one" and "more than one." (a >> special case for "two" is the most common). >>=20 >> I doubt that any language has a special case for 10, though. I'm not >> positive, but it probably doesn't hurt to be safe. > > For what it's worth, Russian has different cases for 1, 2-4, and 5+. > That doesn't make it to 10, but... To clear things up a bit, since I think Russian is exactly the same as Serbian here. Serbian has three forms: 1. numbers ending with 1, but not with 11 (eg. 1, 21, 101, 371, ...) 2. numbers ending with 2, 3, 4 but not with 12, 13, 14 (2, 34, 103) 3. all other numbers (5, 11, 14, 25, 257, ...) So you can grasp it easier, the simplest explanation here is that plural forms go with the word flow, taking into account that one and two/three/four are exceptions. We read something like "twenty and=20 one cat" (instead of English "twenty-one cats"), so "one" affects the following word, not entire number. "Eleven", otoh, is not special (since it's not "ten and one" :). Thus, if this value is going to change, it's easier for you to use ngettext here no matter whether it's static or not. Alternative would be to put the current value in a translators' comment which will appear in a PO file (just put the regular C comment in the line above this string; something like /* translators: %d is 10 */ would do =E2=80=94 otherwise, a guideline for them how to find out this value, even if it means looking into source code, would be appropriate). Cheers, Danilo ```