gettext - 加载本地目录

问题描述:

在开发和翻译应用程序时,如果gettext将使用本地po/目录中找到的目录,因此不必每次都调用make installgettext - 加载本地目录

有没有办法做到这一点?

其中的一个问题是命名约定:gettext查找的目录文件中,看起来像/usr/share/locale/LL/LC_MESSAGES/package.mo(其中,LL为两个字母的语言代码),而通常在开发树二进制目录驻留在po/LL.gmo一个层次。

如果gettext将使用在本地po/dir中找到的目录,那么每次都不需要调用make install,这可能会很不错。有没有办法做到这一点?

如果我正确地理解你的想法,这听起来像gettext能够做到这一点(即改变翻译路径变量)如果你按照规定的方法来进行设置。 ..

翻译应存储在具有固定结构的路径中。 首先,我们将有一个根据您的喜好命名的根文件夹(对于 示例“languages”)。在内部,我们必须为每个 目标语言创建一个文件夹,其名称必须符合ISO 3166标准。所以, 意大利语翻译的有效名称可以是“it_IT”(意大利语为 意大利语),“it_CH”(瑞士语意大利语),“en_US”(美国英语), 等。在具有语言代码的文件夹中,我们必须有一个名为“LC_MESSAGES”的文件夹 ,最后,我们将存储翻译文件 。

From Here(有包含在该链接的脚本例示出一种方法来执行此任务)

变化“语言”在以上描述以“PO “,这可能会做你想要的?

+0

我认为在开发源代码中模仿二进制目录的层次结构将不会与gettext附带的automake宏兼容,并将'* .po'文件编译为* .mo'文件。 – Guy 2014-10-17 06:51:50