Can I make the ICU validation less stringent or disable it entirely?


The problem I have is that some strings need to contain some variables, but only in some languages and not others. For example, in Slavic languages, verbs in past tense that relate to a person change based on the gender of that person, so there needs to be a variable for that. In most other languages, however, no such variable is needed. I tried different approaches, the latest one being to just add {gender, select, other {blah blah}} to English, but this doesn’t work:

Omitting the variable from the English string works when importing files form Git, but doesn’t work when a translator tries to submit such a string from the UI:

(see next posts for screenshots because I’m a “new user” and can’t upload more than one image per post for some reason)

The setting is there, so tantalizing yet disabled:

(see next posts for screenshots because I’m a “new user” and can’t upload more than one image per post for some reason)

But I don’t want to disable ICU syntax validation entirely. Ideally, there would be something intermediate, where it would validate the syntax but not the structure. Like how I also have my own extension for inflecting people’s names but Crowdin obviously can’t know that so considers it an error.

Second screenshot:

Third screenshot:

So, uh, okay, I resolved this myself.

I removed the disabled attribute from the corresponding <select> in QA settings, selected “Warning” and saved the settings. It worked and now allows me to save strings with “wrong” ICU syntax :upside_down_face:

edit: nope, it doesn’t actually save that translation

Hi @grishka Super :slight_smile: glad that all works now

It pretends to work but actually doesn’t. The string isn’t actually saved after I click “save anyway”, so my feature request is still valid.

Hi @grishka,

Thank you for your suggestion! We have already created an improvement task on the matter to allow users to switch the ICU settings from Error to Warning, so you will be able to save such translations as in your example.

(internal task number for support team only CN-45904)

1 Like


Hey we just ran into a similar issue with pluralisation. We want to create ICU structures that are slightly different from the source language, but we get the same error as describe din this thread.

However, when we look at the settings we can not turn of the ICU syntax validation, not can we change the level (we see the dropdown and checkbox, but both are disabled).

Also, would this fully disable ICU validation? I would still want crowdin to ensure that the stored translation is valid ICU, but allow (possibly with a warning) that the structure is different.

Is this feature still being rolled out? Or is there something else we should do?

Hi, @bert.goethals!

Would you mind sending the link to your project and all of the additional info to the

We would appreciate it if you could include the screenshots of the issue too.