Angular i18m xliffmerge覆盖翻译

时间:2018-09-07 07:33:52

标签: angular internationalization

我的反式部队看起来像这样:

<trans-unit id="afd1971b15e59ed7edc553893ed4894124f58d4f" datatype="html">
        <source>{VAR_SELECT, select, action {action} other {
          <x id="INTERPOLATION" equiv-text="{{actionMessages[0].action}}"/> } }
        </source>
        <target state="final">{VAR_SELECT, select, action {action} other {
          <x id="INTERPOLATION" equiv-text="{{actionMessages[0].action}}"/> } }
        </target>
        <context-group purpose="location">
          <context context-type="sourcefile">app/devices/list/custom/simplepack/simplepack.component.ts</context>
          <context context-type="linenumber">12</context>
        </context-group>
        <context-group purpose="location">
          <context context-type="sourcefile">app/devices/list/custom/simpleleak/simpleleak.component.ts</context>
          <context context-type="linenumber">12</context>
        </context-group>
        <note priority="1" from="description">Last action</note>
        <note priority="1" from="meaning">Simple Pack</note>
      </trans-unit>

如果我翻译目标部分并为操作{action}添加翻译,如下所示:

<target state="final">{VAR_SELECT, select, {Short press} double_press {Double press} long_press {Long press} other {
     <x id="INTERPOLATION" equiv-text="{{actionMessages[0].action}}"/> } }
</target>

下一个带有xliffmerge的摘录将我的翻译重新设置为源代码。我发现如果源中没有其他{...}部分,则它可以按预期工作。它也仅在默认英语语言下发生。其他语言文件也可以。我不想将所有可能的动作保留在代码中,也不需要{other}部分来显示未翻译的字符串。

这非常烦人,因为我必须在每次翻译时都对其进行修复。任何想法?

0 个答案:

没有答案