Internationalization poedit和xml文件
如何配置poedit从xml文件中提取字符串 我在.xml中有Zend Framework导航项,如下所示:Internationalization poedit和xml文件,internationalization,translation,gettext,poedit,xgettext,Internationalization,Translation,Gettext,Poedit,Xgettext,如何配置poedit从xml文件中提取字符串 我在.xml中有Zend Framework导航项,如下所示: <entry-i> <label>Text to translate</label> <params> ... <params> <entry-i> 要翻译的文本 ... 我希望poedit只读取来自s的消息。看起来poedit还不支持XML 我创建了一个小php脚本,将标
<entry-i>
<label>Text to translate</label>
<params>
...
<params>
<entry-i>
要翻译的文本
...
我希望poedit只读取来自
s的消息。看起来poedit还不支持XML
我创建了一个小php脚本,将标签提取到.php文件中,
哪个诗人能理解
$xml = simplexml_load_file("../application/configs/navigation.xml")
or die("Error: Cannot open XML file");
echo '<?';
foreach($xml->xpath('//label') as $label){
echo 'echo _("'.$label.'");'. PHP_EOL;
}
$xml=simplexml\u加载文件(“../application/configs/navigation.xml”)
或死亡(“错误:无法打开XML文件”);
echo'我也一直在寻找解决方案,我刚刚让它开始工作
在Poedit(我有1.4.2)中,添加具有以下属性的新解析器(Edit>Preferences
):
- 语言:
XML
- 以分号分隔的扩展名列表(例如.cpp;.h):
*.xml
- 解析器命令:
xgettext--force po-o%o%C%K%F-L glade
- 关键字列表中的项目:
-k%k
- 输入文件列表中的项目:
%f
- 源代码字符集:
--源代码=%c
在翻译项目中,将标签
和标题
添加到关键字列表并更新目录。对于在windows上遇到Poedit配置问题的任何人,特别是如果您收到一条错误消息说glade和expat不可用,将提供的xgettext.exe替换为gnuwin32项目中的当前xgettext.exe:
您需要下载二进制文件和依赖项。但是,只需提取二进制xgettext.exe和相关文件(只需运行它,它就会告诉您缺少什么)它工作得很好!!我在Windows7中使用Poedit1.4.6发现了“glade不受支持”的问题,但我通过下载最新的gnuwin32二进制文件和依赖项修复了这个问题,正如user496209所说。不要下载complett包,因为PoEdit自带了自己的gettext库,所以只需加载二进制文件和依赖项,并将请求的文件替换到PoEdit文件夹中即可。上述滥用Glade提取器解析非Glade XML文件的建议是错误的。它永远不会工作得很好(举个例子:这里有一些评论)。当然,在2010年,这总比什么都没有好
从gettext 0.19.7开始(从1.8.7开始与Poedit捆绑),有一个更好的方法:现在gettext中内置了对自定义XML文件的支持
从自定义XML文件提取字符串的最佳方法是
添加一个带有扩展名的自定义提取器,指定标准的gettext调用,不带-L glade
位
为您的文件格式
将它们放在Poedit安装中的其他.its
和.loc
文件的位置
很抱歉,这对我不起作用,我已经完成了说明,但是我无法打开XML文件。您好,有没有办法使用此配置转换属性title=“Text to translate”?谢谢,我还想知道是否可以解析XML属性?有什么想法吗?感谢Poedit 1.6或更高版本不再需要此功能。当前版本构建时启用了xgettext
中的所有内容。