在使用 GNU Autotools 的项目中,是否有启动 xgettext 的任务?
摘要:
我有一个使用 GNU Autotools 的项目。我有一个罐子文件。我需要更新它。有没有一个神奇的“make”任务为我运行 xgettext(我很懒?)
详细版本:
嗨,
我正在尝试使用 GNU autotools 和 gettext 设置一个项目。
我试图遵循“惰性”路径(即只编写configure.ac、Makefile.am 等,并让工具尽可能为我生成其余部分)。
我在我的包上使用过一次 gettextize ,所以我创建了一个 package.pot 文件,并派生了一个 fr.po 文件(我正在尝试翻译成法语)。
我从未设法翻译我的代码,但我发现这可能是因为代码不在正确的位置。翻译后的字符串位于 lib 而不是 main 中,并且文档非常不清楚在这种情况下我必须做什么。如果我的 main 调用 lib 中的函数,并且 lib 中的函数正在使用 _()。在这种情况下我应该使用 dgettext 的 gettext 吗?我的库只是出于组织目的而放在这里,因此我可以使用相同的域(整个应用程序只有一个 package.pot 文件)。
因此,为了尝试更简单的方法,我将字符串移至主字符串(目前它实际上只是一个 hello world)。所以我至少需要更新 package.pot 文件,以意识到字符串位置发生了变化,需要吗?在这种情况下,我会手动使用 xgettext (痛苦地将所有有趣的 cpp 文件的列表传递给它,当我有多个文件时,这将是一件痛苦的事情),或者是否有一个“做任何”任务,我需要可以跑吗?
这可能看起来很愚蠢,但我一直没能找到它。
另外,有关查找为什么我的代码未翻译的任何帮助(http://www.gnu.org/software/gettext/FAQ.html#integrating_noop)欢迎!
谢谢
PH
Summary :
I have a project using GNU Autotools. I have a pot file. I need to update it. Is there a magical "make" task that run xgettext for me (I'm lazy ?)
Verbose version :
Hi
I am trying to setup a project using GNU autotools and gettext.
I'm trying to follow the 'lazy' path (that is, only writing configure.ac, Makefile.am, and such, and let tools generate the rest for me as much as possible).
I used gettextize once on my package, so I got a package.pot file created, and I derived a fr.po file (I'm trying to translate in french).
I never managed to get my code translated, but I figured out it might be because the code was not in the proper place. The translated string is in a lib instead of a main, and the documentation is quite unclear about what I must do in this case. If my main call a function in a lib, and the function from the lib is using _(). Should I use gettext of dgettext in this case ? My lib is just here for organisation purpose, so I'm okay with using the same domain (only one package.pot file for the whole app).
So, to try something simpler, I moved my string to the main (it's really just a hello world, for the moment). So I need to update the package.pot file, at least, to realize that the string position changed, need I ? In this case, would I use xgettext manually (painfully passing it the list of all interesting cpp files, which will be a pain in the ass when I have more than one file), or is there a 'make whatever' task somewhere that I can run ?
This may look stupid, but I've not been able to find it.
Also, any help on finding why my code is not translated, (anything not in http://www.gnu.org/software/gettext/FAQ.html#integrating_noop) is welcome !
Thanks
PH
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好吧,事实证明:
所以这是一件愚蠢的事情。
Ok, it turns out that :
So it was something stupid.