1

我在 PHP 中使用了“GNU gettext”,它通过使用 poedit 做得很好我能够提取 PO 文件格式

但是当我在我的 HTML“脚本”标签中为我的 javascript 尝试同样的事情时,我没有更多地工作,我看不到任何 javascript 支持。

poedit 支持几乎所有语言,除了 javascript 或者我正在这样做 任何人都可以以错误的方式提供 javascript 的工作示例?!我使用 poedit 跟踪了近 20 种语言的所有示例,除 javascript 外,所有示例均有效

来自 GNU gettext 的所有工作示例

gettext-0.19.7.ta​​r.gz

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

gettext-0.19.7\gettext-tools\examples

这是 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";
    ?>
4

2 回答 2

2

Poedit 和xgettext对 JavaScript 的支持已经有一段时间了。您的问题是您将代码嵌入到 HTML 文件中,因此它不会被识别为 JavaScript 文件(并且xgettextPoedit 使用的 不支持其他语言的嵌入内容)。

只需将您的 JavaScript 代码放在一个单独的.js文件中即可。

请注意,JavaScript 代码在客户端运行,因此您还需要在 JavaScript中加载翻译。考虑到您在 PHP 代码中只有一些(可能是很小的)JS 片段,对您来说更好的解决方案可能是使用 PHP 生成该 JS 代码——即在 PHP/服务器端进行翻译。

于 2016-02-16T09:16:47.770 回答
1

假设您在节点环境中工作,您可以使用这个npm 包来处理这些文件。我认为浏览器不可能。

于 2016-02-16T01:37:54.777 回答