Я использую исполняемый файл xgettext.exe в Poedit в Windows для записи 2 PO-файлов, которые затем объединяются с помощью команды msgcat.exe .
Командные строки:
{PATH_OF_XGETTEXT}\xgettext --language=awk --no-location --force-po -i -kLocalize -w 999 --no-wrap -f awk_files.input -o output_awk.po --from-code=ISO-8859-1
{PATH_OF_XGETTEXT}\xgettext --language=C++ --no-location --force-po -i -kLocalize -w 999 --no-wrap -f cpp_h_files.input -o output_cpp_h.po --from-code=ISO-8859-1
{PATH_OF_MSGCAT}\msgcat -o combined.po output_cpp_h.po output_awk.po
Однако я получаю сообщение об ошибке при попытке выполнить третью команду:
присутствует кодировка "CHARSET" не является именем переносимой кодировки
Это видно из моих PO-файлов, заголовки содержат следующую строку "Content-Type: text/plain; charset=CHARSET\n"
.Не имеет значения, если я использую --from-code=UTF-8
или ISO-8859-1
charset
, значение никогда не меняется.В настоящее время я должен изменить его вручную в каждом заголовке файла или сделать это с помощью файлового ввода-вывода. Возможно ли исправить это, используя только утилиты GNU ?