首页 > 解决方案 > 立陶宛语名词翻译与iOS中的数字一起使用

问题描述

当我尝试将现有的 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 文章

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

Localization.stringdict 英语

对于立陶宛语,相同的文件如下所示:

立陶宛语 Localization.stringdict

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

标签: ioslocalization

解决方案


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

这在(现已存档的)国际化和本地化指南中进行了介绍,特别是处理名词复数和计量单位一章,其中详细介绍了附录 Cstringsdict中的文件。

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

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

one - %d įvykis
few - %d įvykiai
other - %d įvykių

iOS 会知道one用于 1、21、31、41 等。它会知道few用于 2~9、22~29 等。它会知道other用于 0、10~20、30 等。


推荐阅读