帮助我解决这个问题,我依靠你!
我已将翻译文件拆分为两个文件。
nav.fr.xlf& body.fr.xlf
两者都具有相同的结构:
<?xml version="1.0"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file source-language="en" datatype="plaintext" original="file.ext">
<body>
<trans-unit id="1">
<source>Hello</source>
<target>Salut</target>
</trans-unit>
</body>
</file>
</xliff>
第二个是相同的,(反式单位的id相同) 在一个twig文件中我有这个
{% trans_default_domain "body" %}
在第二个:
{% trans_default_domain "nav" %}
只有一个翻译目录,它工作正常,但两者都有:我有这个错误
CRITICAL - Uncaught PHP Exception Twig_Error_Runtime: "An exception has been thrown during the rendering of a template ("[ERROR 1871] Element '{urn:oasis:names:tc:xliff:document:1.2}b': This element is not expected. Expected is one of ( {urn:oasis:names:tc:xliff:document:1.2}g, {urn:oasis:names:tc:xliff:document:1.2}bpt, {urn:oasis:names:tc:xliff:document:1.2}ept, {urn:oasis:names:tc:xliff:document:1.2}ph, {urn:oasis:names:tc:xliff:document:1.2}it, {urn:oasis:names:tc:xliff:document:1.2}mrk, {urn:oasis:names:tc:xliff:document:1.2}x, {urn:oasis:names:tc:xliff:document:1.2}bx, {urn:oasis:names:tc:xliff:document:1.2}ex ). (in /usr/share/nginx/www/gitneargood/web/ - line 212, column 0) [ERROR 1871] Element '{urn:oasis:names:tc:xliff:document:1.2}b': This element is not expected. Expected is one of ( {urn:oasis:names:tc:xliff:document:1.2}g, {urn:oasis:names:tc:xliff:document:1.2}bpt, {urn:oasis:names:tc:xliff:document:1.2}ept, {urn:oasis:names:tc:xliff:document:1.2}ph, {urn:oasis:names:tc:xliff:document:1.2}it, {urn:oasis:names:tc:xliff:document:1.2}mrk, {urn:oasis:names:tc:xliff:document:1.2}x, {urn:oasis:names:tc:xliff:document:1.2}bx, {urn:oasis:names:tc:xliff:document:1.2}ex ). (in /usr/share/nginx/www/gitneargood/web/ - line 213, column 0)") in "ngNrBundle:Welcome:nav.html.twig" at line 40." at app/cache/prod/classes.php line 5131
Context: {"exception":"Object(Twig_Error_Runtime)"}
请帮我解决一下
答案 0 :(得分:2)
我的问题已经解决,我们不应该在翻译源/目标中使用html标签
编辑:
当然,Xlf文件是XML文件,插入html标签会破坏语法。
你可以做的是替换&lt;与<
和&gt;使用>
并在树枝中使用原始过滤器。
类似的东西:
'<strong>Hello</strong>'|trans|raw