使用 poswap (translate-toolkit) brakes 输出编码

Using poswap (translate-toolkit) brakes output encoding

我正在尝试使用 poswap from Translate Toolkit

我的输入文件是 he.po(希伯来语),我的输出文件是 ar.po(阿拉伯语)

以下命令 poswap he.po ar.po 的结果是一个新的 ar.po 文件,其中源代码为希伯来文,翻译为阿拉伯文。

但是, 当我使用 poedit 打开文件时,所有源字符串编码都不符合。绝对不是 utf-8 了..

以前有没有人注意到这种行为?

我以前遇到过这个问题。 如果您使用文本编辑器打开 ar.po 文件,您会看到文件 headers.

之间存在差异

那是因为 poswap 也没有转换 poedit header。

要解决此问题,只需使用任何文件编辑器打开 ar.po 文件并将以下内容添加到顶部:

msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: ar\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

注意 "Language: ar\n" 行。

这将确保 po 文件具有正确的 headers。

祝你好运!