1

我正在将 gettext 用于大型 PHP 项目。我已经成功设置了所有内容,输入了一些翻译(两种语言)以测试翻译是否有效并开始编码。我什至不时使用 poEdit 更新翻译。

现在,没有明显的原因,当我尝试从源更新目录时,我在 poEdit 中收到此错误:

Updating the catalog failed. Click on 'More>>' for details.

当我单击Details >>时,我会收到详细消息:

08:52:19: Entries in the catalog are probably incorrect.
08:52:19: Updating the catalog failed. Click on 'More>>' for details.

按照 Internet 上的建议,我尝试更改路径(基本路径和项目路径),但无济于事(没有任何变化)。请注意,它并没有说明找不到来源 - 只是它失败了。我还验证了两个 .po 文件:

msgfmt -o /dev/null -v -c messages.po

我正在运行 poEdit 1.4.2-5(在 Debian 上)。

任何想法如何获得详细的错误信息?(或摆脱问题?;)

4

3 回答 3

4

我终于通过运行解决了这个问题:

find /path/to/project/ -name '*.php' -exec xgettext --from-code=UTF-8 -o messages.pot '{}' ';'

然后我修复了错误消息(读取子目录的权限被拒绝),一切都恢复正常了。希望它可以帮助某人。

于 2012-03-20T09:34:03.237 回答
1

我在 Mac 上使用 PoEdit 并且遇到了同样的问题。只是通过排除所有 JS 文件来修复它。就我而言,一些缩小的 js 文件会导致错误。刚刚被排除在外,我们开始吧……它有效。也许会有所帮助。

于 2018-02-27T11:36:46.447 回答
0

在遇到同样的错误后,我从我的 git 存储库中检查了 .pot 文件的先前版本,并在更新目录时使用了它。

于 2017-03-14T17:52:43.423 回答