每种语言都有其独特的单数和复数短语语法形式。
例如:
这对本地化提出了挑战。
支持对复数敏感的字符串进行翻译,包括基数和序数复数形式。这些字符串必须根据译文语言的复数规则,使用复数形式进行翻译。这些复数形式必须在原文/源语文件中定义。
例如:
-
英语字符串 There are %d% items left,其中 %d% 代表除 1 以外的任何数字。
-
在捷克语中,这需要以两种方式进行翻译。
第一种用于数字 2、3 或 4(即 few),第二种用于数字 0、5 及以上(即 other)。
PO (gettext) 文件通常使用复数形式以及 ICU messages。
有关复数规则的更多信息,请参阅 CLDR plural rules。
处理复数形式
支持多种本地化文件格式,并以不同方式处理复数值。每种 format 都介绍了最常见的方法。
复数形式的数量会根据 Unicode rules 自动处理。这意味着某些语言最多有 6 种形式,而其他语言只有几种。当向项目添加 locale 并提供 ISO 代码时,该语言对应的正确复数类别会自动显示在 Strings Editor<3> 中以供翻译。导出时,复数键会转换为译文平台所需的正确语法。
复数形式在 窗口的 选项卡中处理。
在创建或编辑键时,可以通过启用复数形式将 键 设置为复数。要在项目的 选项卡中按键启用复数形式,请按照以下步骤操作:
-
在项目页面中,选择 更多/键。
显示 选项卡。
-
点击所需键的齿轮
图标。
显示 窗口。
-
点击 选项卡并选择 。
显示 下拉菜单。
-
在 和 复数类型之间进行选择。
重要
更改复数类型会清除现有的翻译。
-
点击保存。
如果所用格式(例如,使用 gettext 时)有要求,请确保提供 。
复数类型也会在每个键的 编辑器 侧边栏的 部分中显示并可编辑。