The Canva translation process supports a subset of ICU MessageFormat
syntax. For more information about ICU, see the official FormatJS documentation.
ICU basics
This section describes the supported ICU syntax, with recommendations and examples.
Interpolation
When passing in dynamic values, use interpolation.
Don't use concatenation to pass in dynamic values. This is because languages will reorder words in various ways. For more information, see this blog post.
Pluralization
Formatting numbers, dates, and time
When passing number, date, or time values, make sure you use the correct ICU argument so that the values are formatted in a way that respects the user's locale.
Numbers
Dates
Time
Select
Unsupported syntax
More information
- Overview of the localization process: Localization overview
- How to use the recommended workflow: Recommended workflow
- How to localize an existing app: Migrate an existing app
- Review the localization design guidelines: Localization