跳转到主要内容

与专业译者合作

Rosetta 会生成机器翻译,但有些项目需要人工审核——例如合规内容、品牌敏感文案或高风险的 UI。XLIFF 工作流允许你导出翻译以供专业审核,并无缝导入回项目中。

什么是 XLIFF?

XLIFF(XML 本地化交换文件格式)是翻译工具的行业标准交换格式。所有专业的 CAT(计算机辅助翻译)工具都支持它:

  • memoQ — 导入 XLIFF,在上下文中审核,导出审核后的文件
  • SDL Trados Studio — 原生支持 XLIFF
  • Phrase (Memsource) — 为译者团队上传 XLIFF 任务
  • Smartling — XLIFF 导入流水线
  • OmegaT — 支持 XLIFF 的免费/开源 CAT 工具

为了实现最大的工具兼容性,Rosetta 生成的是 XLIFF 1.2(普遍支持的版本),而不是 2.0+ 版本。

工作流

第 1 步:生成机器翻译

首先运行 sync 以获取基准机器翻译:

i18n-rosetta sync

第 2 步:导出 XLIFF

将源语言 + 目标语言对导出为 XLIFF:

i18n-rosetta xliff export --locale fr

这会写入 .rosetta/xliff/fr.xliff,其中包含:

  • 每个源键及其英文值
  • 当前的机器翻译(如果有)作为 <target>
  • 未翻译的键标记为 state="new"
<trans-unit id="hero.title" xml:space="preserve">
<source>Welcome to our platform</source>
<target state="translated">Bienvenue sur notre plateforme</target>
</trans-unit>

第 3 步:发送给译者

.xliff 文件发送给你的译者,或将其上传到你的 CAT 平台。译者可以并排看到源语言和目标语言,并且可以:

  • 编辑机器翻译
  • 补充缺失的翻译
  • 标记质量问题
  • 应用他们自己的翻译记忆库和术语库

第 4 步:导入审核后的文件

当译者返回审核后的 .xliff 时,将其导入:

# Preview what will change
i18n-rosetta xliff import .rosetta/xliff/fr.xliff --dry

# Apply changes
i18n-rosetta xliff import .rosetta/xliff/fr.xliff

输出:

✓ Imported 142 translations for fr
Updated: 23 (changed from existing)
Added: 0 (new keys)
Unchanged: 119
Written to: locales/fr.json

第 5 步:填补空白

如果在导出 XLIFF 后添加了新键,请运行 sync 来翻译它们:

i18n-rosetta sync

Rosetta 只会翻译仍然缺失的键——从 XLIFF 导入的已审核翻译将被保留。

提示

导出自定义路径

# Export to a specific directory
i18n-rosetta xliff export --locale ja --out ./for-review/

# Export with a specific filename
i18n-rosetta xliff export --locale de --out ./review/german.xliff

多个区域设置

分别导出每个区域设置:

for locale in fr de ja ko; do
i18n-rosetta xliff export --locale $locale
done

版本控制

.rosetta/xliff/ 添加到 .gitignore 中——XLIFF 文件是临时产物,而不是项目源文件:

.rosetta/xliff/

何时使用 XLIFF 与仅使用 sync

场景建议
内部应用,90%+ 的质量即可接受仅使用 sync — 机器翻译就足够了
面向用户的营销文案导出 XLIFF 供人工审核
法律/合规内容导出 XLIFF — 需要人工审核
50+ 个区域设置,时间紧迫先运行 sync,仅为前 5 个区域设置导出 XLIFF
译者已经在使用 CAT 工具XLIFF 是自然的交接格式

另请参阅