Hello ICU Support Team,
I am a Java developer working with ICU4J in one of my private code bases, and I recently encountered a potential issue when testing pluralization rules for the Czech language.
Here is a minimal reproducible example:
PluralRules czechRules = PluralRules.forLocale(Locale.forLanguageTag("cs"));
System.out.println("for cs 3 -> " + czechRules.select(3));
System.out.println("for cs 3.38 -> " + czechRules.select(3.38));
PluralRules cZRules = PluralRules.forLocale(Locale.forLanguageTag("cs_CZ"));
System.out.println("for cs_CZ 3 -> " + cZRules.select(3));
System.out.println("for cs_CZ 3.38 -> " + cZRules.select(3.38));
Observed output:
for cs 3 -> few
for cs 3.38 -> many
for cs_CZ 3 -> other
for cs_CZ 3.38 -> other
Expectation:
From my understanding, cs
should be the parent of cs_CZ
, and unless specified otherwise in the CLDR data, PluralRules.forLocale(Locale.forLanguageTag("cs_CZ"))
should inherit the same rules as cs
.
Could you please confirm whether this is expected behavior or a potential bug?
Additionally, I would like to request access to the ICU JIRA so I can file this issue directly and potentially contribute a fix. While I’m not yet certain of the complexity, I am happy to investigate the ICU4J source code and submit a pull request if it’s a suitable candidate.
My details for JIRA access:
Name: Suraj Muraleedharan
Email: sur...@gmail.com
GitHub Username: surajcm
Thank you for your assistance, and I look forward to your guidance.
Best regards,
Suraj Muraleedharan