Welsh count plurals issue

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.

Doesnt this related to this request?

I’d suggest you writting someone from Crowdin team or raise this as a feature request Feature requests and ideas | Crowdin

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.

I’ve had a response from Crowdin support, but there is some misunderstanding.

For clarity, here is another example.

Welsh has six plural forms, but Crowdin currently gives seven forms, adding ‘=1’, which seems a duplicate of ‘one’.

However, if I remove the ‘=1’, the system does not save the translation, even though it has the correct six plural forms of Welsh.

Hello @Cymrodor, hope you’re doing just great.

I’ve just replied to you via email, and, in short, all stings have =1 form in the source.

You’re welcome to share the screen record of this issue with me, so I can double-check.

Please do it in our email conversation or here within a direct message (click on my profile picture, and there’ll be a button “message”).

For future users with a similar problem:

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”.

Thanks @camilapedraza for clarifying this is an issue with the [English] source code. Let’s hope Google’s AOSP devs get the message.