【问题标题】:twig translations work partially which syntax to use is not clear树枝翻译部分工作尚不清楚使用哪种语法
【发布时间】:2013-12-29 07:40:53
【问题描述】:
{# this dont work  #}
{% trans %}Hello%name%!{% endtrans %}
{# this dont work  #}
{% trans with {'%name%':name} %}Hello%name%!{% endtrans %}

查了一下,发现翻译有空格问题
我在 Hello
Symfony2+Twig, variable in translation return "A message must be a simple text"
Symfony2 twig translate variable values in {% trans %} tag
How to translate with pluralization in Twig?

之后删除了空格

这行得通

{{ 'Hello' | trans }} {{ name }}

<?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="191">
     <source>Hello</source>
     <target>Ciao</target>
     </trans-unit>
   </body>
 </file>
</xliff>

所以必须使用过滤器?

我正在使用 Symfony v2.4 + twig v1.15
有人可以澄清一下吗?

TIA

【问题讨论】:

  • 为什么要去掉空格?请向我们展示您的消息文件
  • @WouterJ 以上所有代码都在一个 html.twig 中,所以它可以部分工作。我没有包括 $twig->addExtension(new Twig_Extensions_Extension_I18n());不知道在哪里添加。 envrionment.php 可能并将包含更改为此 $this->addExtension(new Twig_Extensions_Extension_I18n()) ?

标签: symfony twig translation


【解决方案1】:

没有&lt;source&gt;Hello%name%&lt;/source&gt;的翻译是无法翻译的

改成这样:

 {{ 'Hello'|trans({'%name%':'some name'}) }}

 <trans-unit id="191">
 <source>Hello</source>
 <target>Ciao %name%!</target>
 </trans-unit>

这应该输出"Ciao some name!"

【讨论】:

  • 谢谢它有效.. 你和著名的足球运动员有关系吗.. 开个玩笑;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-23
  • 2015-03-08
  • 2014-05-23
相关资源
最近更新 更多