ICU 消息语法

Crowdin Enterprise supports ICU Message syntax, which is used to help express the subtleties of language-specific spelling, grammar, and formatting in translations.

Strings formatted in the ICU Message syntax can have different types of replacements called arguments.
Each argument is enclosed in curly brackets and refers to a value in the input data. Arguments of the following types are supported in Crowdin Enterprise: number, date, time, select, and plural.

ICU Message Syntax in the Editor

ICU syntax arguments are always highlighted in the Editor, so you know which part of the string shouldn’t be translated. 更改翻译中参数的位置以遵循目标语言中的自然词序。 还有预览模式,这将使您能看到翻译将如何在界面中显示,以确保所有可翻译元素都被翻译。

编辑器中的 ICU 语法标志


Plural type is used to handle plural category variations, as each language has its own set of plural categories (for example, English has “one” and “other”, while Ukrainian has “one”, “few”, “many”, and “other”).


  • zero
  • one(单数)
  • two(双数)
  • few(数个)
  • many(如果他们有一个单独的类,也用作分数)
  • other(要求一般复数形式,如果语言只有单一形式也使用)

In the Editor, you don’t have to manually add or delete plural categories to the translations you are making. Just click Copy Source, and the source string will be copied to the translation field with the number of plural categories right for the current target language.

Read more about Language Plural Rules.


Select Ordinal

The purpose of the select ordinal type is to choose output based on the ordinal pluralization rules (1st, 2nd, 3rd, etc.) of the current target language. It is very similar to the plural type, except the value is mapped to an ordinal plural category.

Select Ordinal type


Select type is mostly used to represent the right gender-based inflections in the message.

Select type


The purpose of the number type is to display different number values such as percentage, currency, and decimal numbers independently from the locale conventions for those. This enables adjustment of the message output to the number formats used in different locales. ICU Number Skeletons are also supported.

Number type


Date and time types show date and time values according to the formats preferred in the specified locales. These types can also have a style – extra information on how the value will be formatted. The following four styles can be used: short, medium, long, and full.

Date, Time types


Syntax error detection significantly reduces confusion when translating strings with ICU Message syntax, as the platform automatically detects potential translation errors. If a syntax error is found, you’ll see a notice with a suggestion of what of what needs to be fixed.

Syntax error detected