支持文件类型 (Strings)

.XLIFF - XML Localization Interchange File Format (Strings)

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

文件扩展名 

.xlf、.xliff

API 扩展 

xlf

导入 

导出 

复数形式支持 

描述支持 

格式选项 

enclose_in_cdata

include_translation_state

indent_size

indent_style

ignore_source_translations

ignore_target_translations

export_key_id_as_resname

export_key_name_hash_as_extradata

override_file_language

strip_placeholder_delimiters

delimit_placeholders

是翻译行业使用最广泛的文件格式。它可视为原文/源语文件的镜像,将原文/源语内容分解为存储在 tags 中的各个句段(例如“”<trans-unit><seg-原文/源语>)。 

XLIFF 基于 XML,以有效性和格式良好等基本 XML 惯例为主题。始终在翻译前完成健全性检查,将文件扩展名从.xliff (.xlf)更改为.xml,并在网络浏览器中打开。如果文件有效,则呈现组织良好的文档结构,如果无效,则无法呈现或出现 Error 信息。

XLIFF 已随 XLIFF 2.0 更新。它类似于广泛使用的XLIFF,但是一种不同的文件格式,通常与XLIFF不兼容。

Xcode 可以将 Localizable Strings 打包为行业标准的 XLIFF 格式,用 phrase 发送进行本地化。

格式选项

标识符 

enclose_in_cdata

类型 

布尔值

上传 

下载 

默认 

false

说明 

包含 CDATA 中包含 html tags 的翻译。如果禁用,不支持的 HTML 实体将被替换为其解码值。例如:

  • &pound; 替换为 £

  • &trade; 替换为

标识符 

include_translation_state

类型 

布尔值

上传 

下载 

默认 

false

说明 

包括译文区域中的翻译状态。每个 <译文> 标签都将获得一个状态属性,可以是:新建已注销、已翻译

标识符

indent_size

类型 

整数

上传 

下载 

默认 

4

说明 

指定缩进字符数

标识符

indent_style

类型 

字符串

上传 

下载 

默认 

空间

说明 

指定缩进字符。允许值为空间=%和选项卡

标识符 

ignore_source_translations

类型 

布尔值

上传 

下载 

默认 

false

说明 

上传时忽略文件中的原文/源语翻译(避免意外更新原文/源语语言)

标识符 

ignore_target_translations

类型 

布尔值

上传 

下载 

默认 

false

说明 

上传时忽略文件中的译文(避免意外更新原文/源语语言)

标识符 

export_key_id_as_resname

类型 

布尔值

上传 

下载 

默认 

false

说明 

将键 ID 导出为“resname”属性。

标识符 

export_key_name_hash_as_extradata

类型 

布尔值

上传 

下载 

默认 

false

说明 

将键名哈希值导出为extradata属性。

标识符 

override_file_language

类型 

布尔值

上传 

下载 

默认 

false

说明 

这种文件格式通常在文件本身中包含语言信息。使用此选项用您指定的语言覆盖语言。

标识符 

strip_placeholder_delimiters

类型 

布尔值

上传 

下载 

默认 

false

说明 

从翻译中删除 <ph> tags

标识符 

delimit_placeholders

类型 

布尔值

上传 

下载 

默认 

false

说明 

<ph> tags 包装翻译占位符。必须在项目设置中定义了有效的“占位符符样式”。

代码示例

<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
  <file original="global" datatype="plaintext" source-language="de-DE" target-language="en-GB">
    <body>
      <trans-unit id="boolean_key">
        <source xml:lang="de-DE">--- true
</原文/源语>
        <target xml:lang="en-GB">--- true
</target>
      </trans-unit>
      <trans-unit id="empty_string_translation">
        <source xml:lang="de-DE"/>
        <target xml:lang="en-GB"/>
      </trans-unit>
      <trans-unit id="key_with_description">
        <原文/源语 xml:lang="de-DE">Schau dir das mal an!Dieser Schlüssel hat eine Beschreibung!</原文/源语>
        <译文 xml:lang="en-GB">查看!This key has a description!(至少在某些格式下)</译文>
        <note>这是键的惊人描述!</note>
      </trans-unit>
      <trans-unit id="key_with_line-break">
        <source xml:lang="de-DE">Diese Übersetzung hat
einen Zeilenumbruch.</source>
        <译文 xml:lang="en-GB">此译文包含
换行符。</译文>
      </trans-unit>
      <trans-unit id="nested.deeply.key">
        <原文/源语 xml:lang="de-DE">原文/源语>
        <译文 xml:lang="en-GB">我是一个深度嵌套的键。</译文>
      </trans-unit>
      <trans-unit id="nested.key">
        <原文/源语 xml:lang="de-DE">原文/源语>
        译文 xml:lang="en-GB"键嵌套在命名空间内。</译文>
      </trans-unit>
      <trans-unit id="null_translation">
        <source xml:lang="de-DE"/>
        <target xml:lang="en-GB"/>
      </trans-unit>
      <trans-unit id="sample_collection">
        <source xml:lang="de-DE">---
- erstes 项目
- zweites 条目
</原文/源语>
        <target xml:lang="en-GB">---
- 第一项
- 第二项
- 第三项
</target>
      </trans-unit>
      <trans-unit id="simple_key">
        <原文/源语 xml:lang="de-DE">Einfacher Schlüssel, einfache Nachricht, so einfach</原文/源语>
        <译文 xml:lang="en-GB">简单的键,简单的信息,如此简单。</译文>
      </trans-unit>
      <trans-unit id="unverified_key">
        <source xml:lang="de-DE">Diese Übersetzung ist noch nicht bestätigt und wartet drauf!</source>
        <译文 xml:lang="en-GB">此翻译尚未验证并等待。"此翻译尚未验证并等待。(在某些格式中,我们也导出此状态)</译文>
      </trans-unit>
    </body>
  </file>
</xliff>

复数形式

使用以下语法导出复数键:

<trans-unit id="plural_key">
  <source xml:lang="en">{"one":"one chair","other":"{nrOfChairs} chairs","zero":"no chairs"}</source>
  <译文 xml:lang="de">{"one"":"ein Stuhl","other"":"{nrOfchairs} Stühle","zero"":"keine Stühle"}</译文>
</trans-unit>
这篇文章有帮助吗?

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.