立陶宛名词翻译与iOS中的数字相结合

时间:2018-06-17 16:31:08

标签: ios localization

当我尝试将现有iOS应用程序翻译成立陶宛语时,出现了一个重要问题。我知道Apple翻译系统是如何工作的,特别是对于像英语或匈牙利语这样的语言。但我如何将立陶宛名词与我不知道的数字结合起来。

立陶宛语语与数字一起使用的单词“įvykis”(事件):

Lithuanian                  English
0 įvykių                    0 events
1 įvykis                    1 event
2 - 9 įvykiai               2 - 9 events
10 - 20 įvykių              10 - 20 events
21 įvykis                   21 events
22 -29 įvykiai              22 - 29 events
30 įvykių                   30 events
the same logic continuous
as of 21

有关立陶宛名词变数的更多信息,请参阅此Wikipedia article

我的问题是,立陶宛语的“Localizable.stringsdict”必须填写哪些关键值?对于英语,此文件如下所示:

Localization.stringdict for English

对于立陶宛语,同一文件看起来像这样:

Localization.stringdict for Lithuanian

最后一张表中的那些条目只是部分正确。有谁知道我必须使用哪些键才能将我的表映射到stringsdict表?哪些关键字/关键字是必要的?

1 个答案:

答案 0 :(得分:1)

stringsdict文件中,您只能拥有密钥zeroonetwofewmany和{{ 1}}。这就是你真正需要的。 iOS有自己的数据(基于Unicode标准的信息),根据实际数字告诉它使用哪些密钥。

(现已归档的)Internationalization and Localization Guide,特别是Handling Noun Plurals and Units Of Measure章节中介绍了这一点,其中详细介绍了Appendix C中的other文件。

您还可以从Unicode找到特定于语言的规则。向下滚动到Lithianian,您将看到有关如何使用给定数字类别的内置规则。

简而言之,您希望立陶宛语中的“活动”以下内容:

stringsdict

iOS会知道将one - %d įvykis few - %d įvykiai other - %d įvykių 用于1,21,31,41等。它会知道使用one 2~9,22~29等。它会知道使用few代表0,10~20,30等