Localiser des extensions est facile.
Ajouter des messages
En dessous addons-l10n/en/
, créer un ficher nommé ADDONID.json
, ADDONID est l’ID de l’addons (the folder name). Écrivez le message que vous voulez traduire ici:
{
"ADDONID/meow": "Meow",
"ADDONID/cats": "{nombre, pluriel, un {1 chat} autre {# chats}}",
"ADDONID/eat": "J'ai envie de manger {nourriture}!",
"ADDONID/salmon": "salmon",
"ADDONID/sardine": "sardine",
"ADDONID/move-steps": {
"string": "bouger {nombre} pas",
"developer_comment": "Veuillez traduire ceci pour qu'il corresponde à la traduction officielle de Scratch pour le bloc."
}
}
Espaces réservés
Parfois, les messages doivent contenir des éléments générés dynamiquement. Par exemple, le nombre de chats ou l’entrée. Pour gérer cela, vous pouvez utiliser des espaces réservés comme {nom de l'espace réservé}
. Le nom de l’espace réservé ne doit contenir que des lettres (pas de chiffres).
Pluriels
Et si l’espace réservé est un nombre ? Nous pouvons utiliser des pluriels comme {placeholderName, plural, one {quand il y a une chose} other {quand il y a # choses}}
. Si l’espace réservé est 1, il s’affichera “quand il y a une chose”, sinon il dira “quand il y a des choses (de l’espace réservé)".
Commentaires développeurs
Transifex affichera le commentaire du développeur lorsqu’un traducteur aura sélectionné la chaîne spécifiée. Ces commentaires sont généralement utilisés pour demander une traduction particulière de la chaîne ou pour fournir des informations supplémentaires pour les langues qui ne font pas la différence entre les caractères majuscules et minuscules.
Utiliser les traductions
Changez la première ligne de votre script utilisateur à partir de quelque chose comme :
exporter par défaut async fonction ({ addon, console}) {
à:
exporter par défaut async fonction ({ addon, console}) {
Le msg
ajouté est la fonction que vous utilisez pour obtenir des traductions. Par exemple, text = "Meow"
peut maintenant être text = msg("meow")
. L’ID de l’addon et la barre oblique sont omis.
Espaces Réservés
Vous pouvez fournir des valeurs d’espace réservé :
cat = msg("cats", {number: 1}) // shows "1 chats"
cats = msg("cats", {number: 3}) // shows "3 chats"
hungry = msg("eat", {food: "cod"}) // shows "Je veux manger!"
Vous pouvez également “imbriquer” des messages :
hungry2 = msg("eat", {food: msg("salmon")}) // shows "I want to eat salmon!"
Sécurité
If you are writing raw HTML, msg
should be replaced with safer version of safeMsg
.
Commentaires
Assurez-vous de suivre le code de conduite. Vous pouvez voir cette section de commentaires sur les discussions GitHub, ainsi que modifier et supprimer votre commentaire.