2 ms·
From the little Ukrainian I know, I do know that they have 3 forms for the word year ("рік" pronounced r-ee-k). There is one that matches the English singular "
by 317070 11mo ago
From the little Ukrainian I know, I do know that they have 3 forms for the word year ("рік" pronounced r-ee-k). There is one that matches the English singular "рік" (but you'd also use it for e.g. 21 years), and there is one "роки" which is used for quantities 2, 3 and 4 (but also 22, 23 and 24) and another plural form "років" for the other quantities. [0]
So, the few lines of the localisation you posted don't work for Ukrainian and most other Slavic languages.
And that is the issue! Languages differ a lot in ways that are hard to catch in code. And it is the issue leading to for instance "blob(s)" in localised applications, as a lot of languages don't even have a plural, such as Mandarin.
[0] https://translate.google.com/?sl=en&tl=uk&text=1%20year%20old%2C%202%20years%20old%2C%205%20years%20old%2C%2021%20years%20old%2C%2022%20years%20old%2C%2025%20years%20old&op=translate https://translate.google.com/?sl=en&tl=uk&text=1%20year%20ol...
- ChrisMarshallNY 11mo agoLike I said, not perfect, but you might want to look more closely. Note that the only format placeholder is an integer. You can use whatever words you want, around that integer. If you have a singular, then you use one of the singular tokens (no integer). I found this to be the most flexible approach.
- angiolillo 11mo agoIf you're curious about the rules for various languages, I find https://cldr.unicode.org/index/cldr-spec/plural-rules https://cldr.unicode.org/index/cldr-spec/plural-rules to be a helpful refence.
- ChrisMarshallNY 11mo agoThat's useful! Thanks! Looks like, if I wanted to be pedantic, I'd have to add a separate one for 2.