2

在德语中有正式(“Sie”)和非正式(“Du”)形式。我想将一些软件翻译成非正式的德语,特别是使用 transiflex 的 woocommerce,但只能使用其语言环境代码添加新语言。

似乎只有 de_DE 作为语言环境。最好区分这两种形式,难道不应该有另一个区域设置代码仅用于非正式形式吗?

4

3 回答 3

4

一般Gettext 使用@ 来区分语言变体。所以在这种情况下它可能是de_DE@informal。这样,Gettext 将正确处理区域设置并回退到de_DE(与建议de_DE-x-informal的不会以这种方式回退的情况相反,因为 Gettext 将DE-x-informal视为国家代码)。

您可以在https://www.gnu.org/software/gettext/manual/html_node/Locale-Names.html找到更多关于语言环境命名的信息

于 2015-03-11T10:05:06.507 回答
2

既然您询问了 WooCommerce,那么解释 WordPress 如何处理它的当前状态可能最相关:

最好的方法是使用Michal 所写的语言环境变体,但 WordPress 有其独特的转折,并且不使用变体语法。相反,他们在文件名中添加了第三个组件,但两者都没有 -x-informalde_DE.mo是 WordPress 中的非正式(也是后备,因为它缺少任何进一步的规范)变体,并且de_DE_formal.mo包含正式变体。

于 2016-12-06T16:28:59.487 回答
1

BCP 47 (当前为 RFC 5646)中定义的语言标签没有为德语的非正式和正式变体指定任何代码。尝试注册此类代码可能是不现实的,因此您将仅限于私人使用子标签,例如 de-x-formal 与 de-x-informal。您的软件是否可以以任何方式处理这些问题是另一个问题。

在实用方面。“Sie”与“Du”(或“du”)的选择几乎不是语言变体问题。标准德语使用这两个代词以单数形式称呼一个人,这取决于表达的风格和与被称呼的人的关系。在极端情况下,我们可以说在指令或用户界面中一般针对用户的上下文中选择“Sie”与“Du”是一个语言变体问题。但在实际方面,只要下定决心。

于 2015-02-04T19:31:45.187 回答