Skip to content

Instantly share code, notes, and snippets.

@ChMat
Created March 22, 2019 09:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ChMat/dbf12ff115eedf8aa9a4b621c126e6dd to your computer and use it in GitHub Desktop.
Save ChMat/dbf12ff115eedf8aa9a4b621c126e6dd to your computer and use it in GitHub Desktop.
Traduire un fichier XLIFF (instructions)

Traduire un fichier XLIFF

Les fichiers contenus dans le dossier /translations peuvent être dupliqués et renommés en remplaçant le code de la langue (juste avant l'extension) par le code de la nouvelle langue. Les fichiers sont extraits au format XLIFF, un standard connu dans le secteur de la traduction.

Un segment dans un fichier XLIFF

Un segment de traduction ressemble à ceci :

    <unit id="yDh13bR" name="Offres d'aide ">
      <notes>
        <note category="file-source" priority="1">templates/admin/index.html.twig:4</note>
      </notes>
      <segment>
        <source>Offres d'aide </source>
        <target>Offres d'aide </target>
      </segment>
    </unit>

Les <notes>

Les notes entre <notes> et </notes> contextualisent le segment ou donnent des informations utiles.

La source dans <source>

Le texte entre <source> et </source> ne doit pas être modifié. C'est le texte-source de la traduction.

La cible dans <target>

C'est entre les deux balises <target> et </target> que le traducteur doit écrire la traduction.

Placeholders

Certaines phrases sont adaptées avec des données spécifiques avant d'être affichées. Par exemple, pour afficher le nom de l'utilisateur ou d'autres infos. Pour cela, le segment peut contenir des placeholders entre deux signes %, comme dans l'exemple ci-dessous.

Le placeholder doit être recopié tel quel. Il ne doit pas être traduit.

<segment>
    <source>Bonjour %prenom%, merci de ton intérêt !</source>
    <target>Bonjour %prenom%, merci de ton intérêt !</target>
</segment>

Code HTML

Si la source contient du code HTML, celui-ci doit être recopié tel quel.

<segment>
    <source>Ce mail est envoyé depuis la &lt;a href="%url%"&gt;&lt;em&gt;plateforme&lt;/em&gt;&lt;/a&gt;.</source>
    <target>This email was sent from the &lt;a href="%url%"&gt;&lt;em&gt;platform&lt;/em&gt;&lt;/a&gt;.</target>
</segment>

Gestion du pluriel

Dans certains cas, une même phrase peut être écrite différemment pour tenir compte des pluriels. Le segment contient alors plusieurs tournures séparées par le caractère pipe | et chaque tournure commence par une expression qui indique dans quel cas elle est utilisée.

<source>{0} Aucune offre d'aide trouvée|[1,Inf[ Nombre d'offre d'aide trouvées : %count%</source>

Les expressions peuvent être adaptées dans la cible en fonction des règles de pluralisation propres à la langue cible. Pour plus d'informations sur la syntaxe de ces expressions, consulter la documentation de Symfony sur la pluralisation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment