Извлечь javascript gettext в Poedit?

Я использовал «GNU gettext» с PHP, и он проделал большую работу, используя poedit, я смог извлечь формат файла PO.

но когда я попробовал то же самое для моего javascript внутри моего тега HTML «script», я не работал еще больше, я не вижу никакой поддержки javascript.

poedit поддерживает почти все языки, кроме javascript, или я делаю это неправильно. Кто-нибудь может предоставить рабочий пример для javascript?! я следовал всем примерам почти на 20 языках, используя poedit, и все работало, кроме javascript

все рабочие примеры из GNU gettext, найденные в

gettext-0.19.7.tar.gz

http://ftp.gnu.org/gnu/gettext/

gettext-0.19.7\gettext-tools\примеры

это пример php, который работает, мне нужно сделать то же самое для javascript

    #!@PHP@ -q
    <?
      // Example for use of GNU gettext.
      // This file is in the public domain.
      //
      // Source code of the PHP program.

      setlocale (LC_ALL, "");
      textdomain ("hello-php");
      bindtextdomain ("hello-php", "@localedir@");

      echo _("Hello, world!");
      echo "\n";
      echo printf (_("This program is running as process number %d."),posix_getpid());
      echo "\n";
    ?>

person mr chon    schedule 15.02.2016    source источник


Ответы (2)


И Poedit, и xgettext уже некоторое время поддерживают JavaScript. Ваша проблема в том, что вы встраиваете код в файл HTML, поэтому он не распознается как файл JavaScript (и xgettext, который использует Poedit, не поддерживает встроенный контент на других языках).

Просто поместите свой код JavaScript в отдельный файл .js.

Обратите внимание, что код JavaScript выполняется на стороне клиента, поэтому вам также необходимо загружать переводы в JavaScript. Лучшее решение для вас, учитывая, что у вас есть только некоторые (предположительно небольшие) фрагменты JS внутри PHP-кода, может состоять в том, чтобы сгенерировать этот JS-код с помощью PHP, то есть выполнить перевод на стороне PHP/сервера.

person Václav Slavík    schedule 16.02.2016

Вы можете использовать этот пакет npm для работы с этими файлами, если вы работаете с узла окружающая обстановка. Я не думаю, что это возможно из браузера.

person BeaverusIV    schedule 16.02.2016
comment
gettext-parser — это среда выполнения gettext, которая делает только одну вещь: загружает файлы PO/MO — об этом даже говорится в первом предложении на связанной странице. Он вообще не выполняет извлечение строк, о чем этот вопрос. - person Václav Slavík; 16.02.2016