Pergunta

Comecei a usar o sistema de tradução do Symfony2.

Tudo funciona muito bem.

No entanto, tenho uma pergunta sobre as melhores práticas quando se trata de fazer referência à string de origem/destino de um arquivo de visualização twig.

Dado isto:

<?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="1">
            <source>Short String</source>
            <target>Short String</target>
        </trans-unit>

        <trans-unit id="2">
            <source>Some really long string for example a paragraph about some random thing that is likely to change in the future</source>
            <target>Some really long string for example a paragraph about some random thing that is likely to change in the future</target>
        </trans-unit>       

    </body>
    </file>
</xliff>

Não há problemas em usar como:

{% trans_default_domain 'messages' %}

<h3>{{ 'Multicoin Cryptocurrency Online Wallet' | trans }}</h3>

<p>{{ 'Some really long string for example a paragraph about some random thing that is likely to change in the future' | trans }}</p>

Eu sei que você pode na seção de fontes usar referências curtas de fontes como:

<trans-unit id="2">
            <source>page.long.paragraph</source>
            <target>Some really long string for example a paragraph about some random thing that is likely to change in the future</target>
</trans-unit> 

O que torna a parte do galho muito mais limpa:

{% trans_default_domain 'messages' %}

<h3>{{ 'Multicoin Cryptocurrency Online Wallet' | trans }}</h3>

<p>{{ 'page.long.paragraph' | trans }}</p>

A questão é se eu quiser fornecer o arquivo de tradução original para um tradutor traduzir para outro idioma, seria muito melhor ter toda a string que precisa ser traduzida no campo.No entanto, isso torna o código do twig um tanto desarrumado.Existe outra maneira de referenciar a string de traduções no twig sem ter que usar toda a string de origem?

Foi útil?

Solução

Não, você só tem 2 opções:Mensagens reais ou mensagens de palavras-chave.

E sim, mensagens de palavras-chave não funcionam tão facilmente se você estiver adicionando um novo idioma.E o Xliff não tem um bom suporte para isso.Essa é a razão pela qual você vê as mensagens reais sendo usadas ao usar arquivos Xliff.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top