plural form for Czech

Asked by Kamil Páral

I am administrator of Czech Translators Team. Current plural expression for czech language in Rosetta is:

n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2

We would need to change it to

(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0

Which is also plural form of upstream Gnome czech translations. As a matter of fact, we have the same need as our slovak friends
https://answers.launchpad.net/rosetta/+question/18387

Where can I change the expression, or can someone else update it? Thanks.

And one more question, will all previous translations be evaluated in the future according to the old or the new plural expression? I hope it will evaluate according to the new one, without need of any changes to the old translations. That would be great.

Question information

Language:
English Edit question
Status:
Solved
For:
Launchpad itself Edit question
Assignee:
No assignee Edit question
Solved by:
Kamil Páral
Solved:
Last query:
Last reply:
Revision history for this message
Данило Шеган (danilo) said :
#1

I've fixed it now: https://translations.edge.launchpad.net/+languages/cs

Any old translations will be evaluated according to the new formula, as soon as a new language pack is built (you may need to wait another month for that, since you are barely late for the last one which entered testing a couple days back).

Revision history for this message
Kamil Páral (kamil.paral) said :
#2

Well, I am really sorry, it seems I have mistaken the corresponding final numbers. I suppose it should be like this

(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2

I am not sure if that matters, I suppose it does because of compatibility with the old translations.

Revision history for this message
Данило Шеган (danilo) said :
#3

Too late now, we can't change it anymore.

Just kidding, fixed it now :)

Also, it does matter, because order of plural form translations might be mixed, and it would be totally broken.

Revision history for this message
Kamil Páral (kamil.paral) said :
#4

Thank you.