文件导入设置

.PO - gettext (TMS)

文本由 Phrase Language AI 从英语机器翻译而得。

PO gettext 是一种国际化和本地化 (i18n) 系统,通常用于在类Unix操作系统上编写多语言程序。

在识别相同源时,QA check 仅考虑上下文键。

有效的 .PO 文件是双语的,其中 msgid 包含源文本,而 msgstr 包含目标文本。

示例:

#: src/name.c:36
msgid "我的名字是 %s.\n"
msgstr "我叫 %s.\n"

文件类型

  • .PO

支持的占位符格式

  • c-format

  • objc-format

  • sh格式

  • python-format

  • python-brace-format

  • elisp-format

  • librep-format

  • scheme-format

  • smalltalk-format

  • java-format

  • csharp-format

  • awk格式,

  • object-pascal-format

  • ycp-format

  • tcl-format

  • perl-format

  • perl-brace-format

  • php格式,

  • gcc-internal-format

  • gfc-internal-format

  • qt-format

  • qt-plural-format

  • kde-format

  • boost-format

  • lua-format

  • javascript-format

导入选项

  • 解析 ICU 信息

    ICU 信息会自动转换为标签。当一个句段包含内联元素时,该句段的 ICU 解析将被跳过。没有内联元素的句段将正常解析。

    重要

    标签 相关的问题是导出错误的常见原因。在导出文件之前,通过运行 质量保证 检查,始终确保标签和格式正确。

  • 导出多行字符串

    默认选中,并通过在导出的 .PO 文件中添加实际换行符来改善对带有 \n 标签的 .PO 文件的处理。

  • 句段 PO

    将使用 断句规则 来对源和目标元素中的文本进行分段。

  • 使用 HTML 子过滤器 

    导入文件中包含的 HTML 标签。在这种情况下,标签可用于 .HTML 文件导入设置。

  • 转换为 Phrase TMS 标签 

    应用 正则表达式 将指定文本转换为标签。

  • 覆盖 PO 头部

    如果启用,PO 文件头中的 语言复数形式 条目将被作业的目标语言值覆盖。如果原始 PO 文件中不存在 复数形式,则在完成的文件中为目标构建。

  • 将上下文键设置为

    选择附加的上下文键信息,这些信息将附加到msgstr并保存为上下文到TM

  • 导入句段规则

    根据模糊或非模糊设置确认。

  • 导出属性映射

    根据模糊或非模糊状态设置导出属性。

复数形式

PO Gettext允许对复数形式进行本地化。

PO GNU Gettext仅支持带有整数的复数形式。不支持诸如1.5分的十进制数字形式。

  • 原始文件必须包含msgid_plural字符串以及单数msgid

  • 文件头中定义的复数规则规范(公式)用于生成复数形式。如果没有这样的规范,将使用基于目标语言的标准Unicode CLDR复数规则进行作业导入。

  • 文件必须与句段键上下文一起导入,以便正确使用复数功能。

  • 目标区域和句段的复数形式将作为句段的上下文键使用,并保存到TM中,

  • 如果原始文件中存在字符串msgctxt,则将其添加到句段的上下文键中并保存到TM。它也将在上下文注释窗口中显示。如果msgctxt为空,则仅使用并保存msgstr关键字。

示例 1.PO Gettext文件中的未指定复数

如果导入到德语和阿拉伯语,德语目标文件将只有两种复数形式,而阿拉伯语目标文件将有六种。每种目标语言将自动使用正确的复数规则,工作将以特定语言的复数形式导入。

msgid ""
msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#:ui/gui/409
msgctxt "GUI|安装"
msgid "%d _存储设备已选择"
msgid_plural "%d _存储设备已选择" 

示例 2.为捷克语在头部指定的复数规则

即使导入到德语或阿拉伯语,此文件也将始终具有3种复数形式。

msgid ""
msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1 ?0 : n>=2 && n<=4 ?1 : 2);\n""语言: cs\n"
#:ui/gui/409
msgctxt "GUI|安装"
msgid "%d _存储设备已选择"
msgid_plural "%d _storage devices selected" msgstr[0] ""msgstr[1] ""msgstr[2] "" 

这篇文章有帮助吗?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.