2011-11-08 74 views
9

我了解ICU的本地化部分 - 日期,时间和货币格式,排序规则等。当涉及到消息翻译时,我看到人们声称ICU不提供消息功能翻译 - 检查例如this SOF questionICU资源包是否适用于消息翻译资源

然而,检查ICU文档时,我们发现,它提供的资源包和文档似乎暗示要使用他们的信息翻译:

PHP intl documentation例如:

本地化软件产品通常需要取决于当前区域设置定制的数据集合,例如:消息,标签,格式设置模式 。 ICU资源机制允许定义应用程序可以在地区基础上加载的 资源组,而 以统一的与地区无关的方式访问它们。

这里的文档:http://userguide.icu-project.org/locale/resources 描述类似于key-value存储功能,具有可以编译成二进制格式的文本来源。

我的问题是ICU资源包(包括访问功能和存储格式)是否用于消息翻译 - 或者它是其目的的一部分 - 例如像gettext和.po文件。如果有的话,是否有任何资源或教程讨论这种用法。

或者改写:在其设计目标中,ICU意味着与单独的消息翻译工具结合使用,还是努力提供这样的功能本身,还是两种选择都是可能的。

+0

巴塞尔,有人说,如果听者不明白,那么通信失败,不管说话人的意图。考虑到这一点,我很想知道你是如何得出结论的。您链接到的ICU页面显示了很多ICU格式的消息示例,例如:'optionMessage {“无法识别的命令行选项:”}“ - 是否应添加一些措辞以使其更清楚? –

+2

这不是抹黑 - 我们都知道写文档很烂。该文件总体罗嗦。 “概览”部分对主题 - 酸性测试没有任何意见:如果概览被取出并单独阅读,是否解释了基本概念。作者深入研究了细节,而没有首先说明细节适合哪些细节 - 这是一种令人赞叹的风格。例如 - 有一个,它在XLIFF部分。让读者想知道这是否与使用XLIFF工具相关。总的来说,读者必须做大量的思考,试图理解其含义。一本要检查的书:'不要做出想法'。 –

+0

感谢您对http://amzn.to/12h3N –

回答

6

是的ICU资源包旨在用于检索消息。对于另一个SOF问题的答案在ICU方面是不正确的。您提供的链接是正确的,并且还提到将ICU资源包格式转换为XLIFF格式。 ICU还提供catgets()风格包装http://icu-project.org/apiref/icu4c/ucat_8h.html

ICU不会阻止您使用单独的邮件检索工具,但它肯定意味着只有一个,并且以这种方式使用。

-Steven,ICU项目

编辑 ICU目前不/官方有一个xgettext像提取设施。也许这是区分的一些来源?

编辑2更多细节:http://userguide.icu-project.org/locale/localizing