xgettext无法扫描复数形式。

4

我使用Poedit进行gettext i18n,效果很好。我使用的是ZF2框架,其中有视图辅助功能来集成翻译。其中一个是translate,另一个是translatePlural

用法:

<?php echo $this->translate('Welcome') ?>
<?php echo $this->translatePlural('Item', 'Items', $number) ?>

在Poedit中,我添加了关键字translatetranslatePlural。正常的翻译工作得很好,但对于复数形式,只有“Item”被找到(而不是“Items”)。仅用于测试目的,我用ngettext()替换了$this->translatePlural()调用,但结果相同。我的结论是:(我的版本的)Poedit无法扫描复数形式。
我应该输入什么关键字才能让Poedit也扫描第二个字符串?
1个回答

10

在进一步搜索后,我偶然发现了语法[function]:1,2。这对我很有帮助。现在我将这两个函数标识为Poedit的关键字,如下所示:

translate
translatePlural:1,2

现在我的第二个参数已被扫描。


这正是我所需要的。请注意,为了使两者都起作用,您可以在同一函数调用中多次使用“--keyword”参数。 - Mike

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接