【问题标题】:Symfony ICU translation trailing newline after the translated messageSymfony ICU 翻译在翻译后的消息后尾随换行符
【发布时间】:2019-09-02 08:27:36
【问题描述】:

我使用新的 ICU 消息格式遵循了 how to translate messages 上的 Symfony 官方文档。

messages+intl-icu.pl.yaml 文件中,我有以下条目:

pages:
  show:
    ratings_title: Opinie
    ratings_count: >
      {count, plural,
        =0    {brak opinii}
        one   {jedna opinia}
        few   {# opinie}
        other {# opinii}
      }

消耗如下:

<div>
    <h1>{{ 'pages.show.ratings_title'|trans }}</h1>
    <sub>({{ 'pages.show.ratings_count|trans({'count': count}) }})</sub>
</div>

结果:

<div>
    <h1>Opinie</h1>
    <sub>(brak opinii
)</sub>
</div>

虽然预期的输出应该是:

<div>
    <h1>Opinie</h1>
    <sub>(brak opinii)</sub>
</div>

所以我的问题是:如何删除翻译后的换行符?

【问题讨论】:

  • 感谢您的反对。我已将此通知 Symfony 开发人员,因此他们决定更新官方文档。

标签: symfony internationalization symfony4


【解决方案1】:

好的,这仅仅是因为 YAML 文件配置错误。为了在 multi-line string 中去除 YAML 的尾随换行符,我应该将翻译条目编写如下:

pages:
  show:
    ratings_title: Opinie
    ratings_count: >-
      {count, plural,
        =0    {brak opinii}
        one   {jedna opinia}
        few   {# opinie}
        other {# opinii}
      }

注意使用&gt;- 而不是&gt;

【讨论】:

    猜你喜欢
    • 2017-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    相关资源
    最近更新 更多