Symfony 3:XLIFF具有相同的源和目标?

时间:2017-05-29 23:44:20

标签: symfony translation xliff

我正在尝试使用Symfony 3进行翻译。我已经阅读了所有文档,但我对如何处理默认语言感到困惑。例如,我知道这是我将用于法语的XLIFF文件

<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file source-language="en" target-language="fr" datatype="plaintext" original="file.ext">
    <body>
        <trans-unit id="symfony_is_great">
            <source>Symfony is great</source>
            <target>J'aime Symfony</target>
        </trans-unit>
    </body>
</file>

但我该怎么办英语?我只是像这样复制源和目标中的消息吗?

<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" target-language="en" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="symfony_is_great">
                <source>Symfony is great</source>
                <target>Symfony is great</target>
            </trans-unit>
        </body>
    </file>
</xliff>

我觉得我需要将两次完全相同的文字放在一起似乎很奇怪?或者我错过了什么?

1 个答案:

答案 0 :(得分:2)

建议不要将原始文本用作源消息。 相反,您应该使用抽象和规范化的密钥。

  • 与消息相反,密钥永远不会随时间而变化,因此如果密钥更改,您不必修改所有模板。

  • 密钥提供上下文(例如:product.form.title,product.form.description ...)。

  • 开发人员不再关心文本。

请参阅symfony最佳做法:http://symfony.com/doc/current/best_practices/i18n.html#translation-keys