I request fixing a bug that forces Welsh localisations to include a redundant ‘=1’ plurals rule.
Where the source English is, for example,
{count, plural,
=1 {# account}
other {# accounts}
}
Copying the source creates
{count, plural,
zero {}
one {# accounts}
two {# accounts}
few {# accounts}
many {# accounts}=1 {# account}
other {# accounts}
}
Here, ‘one’ and ‘=1’ are duplicates of the same rule. Not only is the ‘=1’ rule redundant here, but also for some reason Crowdin does not allow us to save the plural strings without including the ‘=1’ rule.
In the example above, it would suffice to save in the Welsh localization,
{count, plural,
zero {dim cyfrifon}
two {# gyfrif}
few {# chyfrif}
many {# chyfrif}
other {# cyfrif}
}
but there seems to be a bug that does not allow us to save this unless we also include a ‘=1’ rule, which isn’t needed.
Don’t think someone from community have an access to Crowdin database and can modify duplicates rules. I also think that Welsh is quite popular and this thing was definetelly reported in past, but as it is kept until today, then there is a reason for this. Probably not to break any import of export or so.
This is the result of not having proper usage of CLDR/ICU plural forms in the source.
English ALWAYS needs the base pair: “one” and “other”. Devs often confuse “one” with “=1”. They are NOT the same thing. “one” is a plural category that often applies to the number 1 but not only. “=1” is an override for that rule and exclusively applies when the count === 1. This doesn’t mean you still don’t need your “one” category in your english source. Because the “=1” is a customization added by the devs, it’s normal that crowdin won’t let you save a translation that does not include it. It’s like any other placeholder. It needs to be in the target to pass basic QA tests.
ALWAYS use at least “one” and “other” in english. If you also want to add an override for “=1” case, then add it in ADDITION to “one” (doesn’t matter if it’s redundant. there’s a reason for this). If you use “one” and “other” appropriately, you won’t have this issue. If you understand and use overrides like “=1” appropriately, then you will definitely want them to be present in translations too.
If you don’t understand how “one” and “=1” are different I suggest checking how the “one” category works in languages like icelandic (spoiler alert, it’s also used for 21, 31, 41, etc.). Don’t break the basic CLDR functionality by getting rid of “one” in your source in favor of “=1”.