我试图合并两个PO文件。
我有一个base.po
文件,其中包含一般翻译。
我有一个extra.po
,它有额外的翻译,我想添加到基本文件中或覆盖翻译,如果有匹配的翻译ID。
我已尝试使用msgmerge
:
$ msgmerge extra.po base.po -o merge.po
但是这会注释掉任何具有匹配ID的翻译。
查看msgmerge
documentation,看起来没有任何选项可以影响此行为。
我希望能够拥有多个额外的翻译文件(extra1.po
,extra2.po
等),这样我就可以将它们与基本翻译文件合并,并在不同的上下文中使用它们
有谁知道我该怎么做?
答案 0 :(得分:3)
原来我需要使用msgcat
代替。
以下命令会创建一个PO文件merge.po
,其中包含extra.po
的所有翻译,并添加base.po
的所有其他翻译。
--use-first
选项指定如果两个文件之间存在匹配的翻译ID,则从extra.po
选择翻译。
$ msgcat extra.po base.po -o merge.po --use-first