从我之前关于gettext的问题来看,使用PHP的gettext扩展而不是其他语言翻译方法的最大好处之一是,让其他人用一个名为Poedit的程序制作翻译文件非常容易。
现在我有gettext工作在我的应用程序,但我还没有作出任何翻译文件,我发现一个演示文件在网上和测试与它,以符合我的应用程序与gettext虽然。
现在我玩了一下poedit,我可能是错的,希望有人能澄清一些问题。
1.据我所知,poedit阅读了你的php代码,并找到了所有可用的地方做翻译,这是正确的吗?
1.如果上面的描述是正确的,那么在没有访问应用程序的情况下,如何让人工翻译人员使用poedit进行翻译呢?
或者简单地说,有没有可能用poedit制作一个翻译文件,而不需要它访问你的php代码?
3条答案
按热度按时间htzpubme1#
一个有趣的文章,你可能首先阅读,为一些信息:Localizing a WordPress Plugin Using poEdit。它是WordPress,意思是PHP--所以基本思想对于您的应用程序应该是可以的。
基本上:
这另一篇文章,关于WordPress太,似乎表明,我猜对了:尤其是这句话:
让. po文件可供下载(或者选择将其包含在插件存档中)。翻译人员将使用此文件构建一个. mo文件,该文件将由
load_plugin_textdomain()
函数使用。oyxsuwqo2#
不,poEdit不会读取所有的源代码,可以使用gettext实用程序“xgettext”来读取。
基本上,xgettext将生成一个.po文件。
翻译人员将使用POEdit处理该.po文件。
翻译完成后,您将把.po编译成一个.mo,应用将使用它来查找翻译。
如果你已经在某个unixy系统上安装了gettext,可以试试bash中的“info gettext”。
xkrw2x1b3#
PoEdit实际上使用
xgettext
,您可以在 Settings/Parsers 选项卡上正确设置它。顺便发一个**.pot文件,是一个 .po模板 ,这样译者就可以翻译,设置语言,翻译团队等。
不幸的是,我看不到从源代码创建.pot文件的选项,但是
poedit
可以读取(当然,它与.po相同)。创建完自己的.po后,就可以拥有.mo了!