2016-01-12 24 views
1

我正在嘗試合併兩個PO文件。合併兩個PO文件並覆蓋匹配的轉換規則

我有一個base.po文件,它具有一般翻譯。

我有一個extra.po,它有額外的翻譯,我想添加到基本文件或覆蓋翻譯,如果有匹配的翻譯ID。

我一直在使用msgmerge嘗試:

$ msgmerge extra.po base.po -o merge.po 

但這注釋掉與匹配ID的任何翻譯。

看着msgmerge documentation,看起來好像沒有任何選項可以實現這種行爲。

我希望能夠擁有多個額外的翻譯文件(extra1.po,extra2.po等),以便我可以將它們與基本翻譯文件合併並在不同的上下文中使用它們。

有誰知道如何做我試圖做的?

回答

2

原來我需要用msgcat代替。

以下命令將創建一個PO文件merge.po,其中包含來自extra.po的所有翻譯並從base.po添加任何其他翻譯。

--use-first選項指定,如果有兩個文件之間的匹配翻譯的ID,從extra.po選擇翻譯。

$ msgcat extra.po base.po -o merge.po --use-first