本文目录导读:

开源项目的翻译记忆库(Translation Memory,简称TM)复用通常涉及文件格式转换、对齐工具的使用以及集成到翻译工作流中,以下是具体步骤和方法:
获取与识别翻译记忆库格式
开源项目的TM通常以以下格式存在:
- TMX(Translation Memory eXchange):最通用的标准格式,几乎支持所有CAT工具。
- XLIFF(XML Localisation Interchange File Format):广泛用于交换本地化数据,也包含记忆库内容。
- PO/MO(Gettext):开源软件(尤其是GNU项目)常用,字符串与翻译一一对应(可视为简易TM)。
- TS/JSON/YAML:常见于前端或配置文件的本地化,可通过工具转换为TM。
如何获取:
- 从项目仓库的
/locale或/i18n目录下载。 - 从翻译平台(如Crowdin、Transifex、Weblate)导出TMX文件。
- 从开源项目的CI/CD构建产物中提取(例如
.mo文件)。
格式转换与清洗
多数场景下需要将原始格式转换为标准TMX,再导入CAT工具。
常用工具:
- Okapi Framework(开源Java工具集):支持多种格式互转(PO→TMX、YAML→TMX等)。
- Translators Without Borders TMX Parser:处理非标准TMX。
- Python脚本:使用
tmxtools库或lxml自定义转换。
示例:将PO文件转为TMX
# 使用Poedit导出或命令转换 po2tmx project.po > project.tmx
清洗注意事项:
- 去除重复项(去重脚本)。
- 合并不同工具产生的乱码(例如BOM、多余换行)。
- 处理占位符(如
%s、{0}),统一变量标记。
导入CAT工具
将TMX文件导入主流的CAT(计算机辅助翻译)工具中复用:
| CAT工具 | 导入路径 | 备注 |
|---|---|---|
| OmegaT | 直接放至/tm文件夹 |
自动加载 |
| memoQ | 文件 → 导入 → 翻译记忆库 | 支持增量更新 |
| Trados Studio | 记忆库视图 → 导入TMX | 可合并或替换现有库 |
| MateCat | 创建项目时选择“上传翻译记忆库” | 在线工具 |
对齐现有文本(无源TM时)
如果只有双语文件(如旧版本译文+原文),需进行句子对齐:
- LF Aligner:免费,自动处理PDF/HTML/TXT对齐,输出TMX。
- Xbench Align:支持双语DOCX、XLSX对齐。
- 哈工大开源LIX:适合中英科技文本对齐。
集成到自动化工作流
对于持续本地化的开源项目,建议将TM复用与CI/CD结合:
- Weblate / Zanata:这些平台自带TM存储,可直接共享。
- GitHub Action:使用
translate-toolkit的tm2po或po2tmx在PR中自动合并TM。 - 版本控制:将TMX文件放入项目
.github或/tm目录,配合脚本按需更新。
质量评估与优化
- 阈值筛选:仅复用匹配度≥80%的片段(OmegaT中设置
fuzzy threshold)。 - 术语/占位符验证:检查变量名(如
%1$s)是否在不同语言中顺序一致。 - 上下文适配:使用XLIFF的
context-group注解,减少误匹配。
法律与版权注意
- 开源项目TM通常遵循项目许可(如MIT、GPL),复用前确认无需额外授权。
- 涉及敏感数据(如用户隐私)不应纳入共享TM。
总结建议
- 小项目:手动下载项目PO文件,用
po2tmx转换后直接导入OmegaT。 - 中大型项目:使用Weblate等平台集中管理TM,每次构建自动同步。
- 复杂环境:通过Okapi Pipeline进行格式清洗+合并,再导入memoQ或Trados。
进一步帮助:若需要具体格式的转换脚本或特定工具教程,请提供项目开发语言与现有文件列表。