我的反式部队看起来像这样:
<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}部分来显示未翻译的字符串。
这非常烦人,因为我必须在每次翻译时都对其进行修复。任何想法?