Présentation de droidlinguist, un outil de traduction pour développeurs Android


droidlinguist est un outil destiné aux développeurs d’applications Android. Il vous permet de facilement traduire vos applications, dans une interface simple et agréable, en utilisant les moteurs de traduction comme Microsoft Translator, Yandex Translator ou bientôt, Google Translate.

L’outil se présente actuellement sous la forme d’une application web, accessible ici : https://droidlinguist.io.

Un plugin Intellij IDEA/Android Studio est déjà en incubation, pour une future intégration directement dans notre IDE préféré !

Pourquoi cet outil ?

Ceux qui ont déjà publié une application sur Google Play le savent bien, un des principaux conseils d’optimisation de la Developer Console, c’est l’internationalisation (i18n) et la localisation (i10n) de vos applications, c’est-à-dire pour l’i18n, de traduire vos APK dans la langue des terminaux des utilisateurs qui les installent.

Google Play Developer Console

Cette tâche, bien que très importante, est assez fastidieuse et sujette à erreurs, surtout quand votre application à un nombre non négligeable de messages affichés à l’écran.

De plus, les moteurs de traduction automatique sont aujourd’hui de plus en plus efficients. Certains sont même gratuits (jusqu’à un certain quota), et mettent à disposition leur API. Alors, pourquoi ne pas les utiliser pour faire ce boulot ?

C’est exactement l’objectif de droidlinguist, élu 2ème sur 6, du SFEIR Innovation Challenge 2016 !

Principales Fonctionnalités

droidlinguist : icone traductionTraductions automatiques

droidlinguist vous permet de traduire rapidement votre strings.xml en utilisant les moteurs de traduction les plus populaires comme : Microsoft Translator, Yandex Translate, et bientôt, Google Translate (ce dernier est déjà mis en œuvre, mais pas disponible pour le moment, car il nécessite une clé API payante).

Support multilangues

Vous pouvez modifier plusieurs langues simultanément. Pour cela, il suffit d’activer / désactiver les langues cibles que vous voulez voir.

droidlinguist : multiple feature au niveau des langues

Validations des Traductions

droidlinguist fournit les tests de validation suivants pour les traductions :

  • Validation de la ponctuation : l’outil détecte des différences de ponctuation entre le texte source et les textes traduits lorsque cela peut être significatif. Par exemple, il vous avertit si la phrase source se termine par une ellipse, un point d’exclamation ou d’interrogation, et que ce n’est pas le cas pour la phrase traduite. Et vice versa.
  • Validation des marqueurs : l’outil détecte si les mêmes marqueurs (comme %$1d, %$2d) sont utilisés à la fois dans le texte source et dans la traduction.

droidlinguist : Validation

Support des Pluriels, des Tableaux de chaines de caractères

droidlinguist prend en charge l’édition des messages qui peuvent avoir différentes traductions, en fonction de la quantité d’articles concernés. Ceux-ci sont appelés pluriels (plurals en anglais)

droidlinguist prend également en charge l’édition tableau de chaines (string-array en anglais).

droidlinguist : tableau de chaines

Suivi des Traductions

droidlinguist vous donne un feedback instantané sur l’évolution de vos traductions.

À chaque instant, et pour chaque langue cible, vous pouvez savoir:

  • combien d’éléments n’ont pas encore été traduits
  • combien d’éléments ont des erreurs de validation
  • combien d’éléments ont été traduits, mais pas encore validés
  • combien d’éléments ont été validés

droidlinguist : présentation du followup

Comment ça marche?

En seulement 3 étapes simples, vous pouvez commencer à utiliser l’outil.

Étape 1 – Sélection Langues

Sélectionnez la langue source dans laquelle votre fichier strings.xml est écrit, puis, les langues cibles dans lesquelles vous voulez traduire votre application.

droidlinguist : première étape

Étape 2 – Sélection du Moteur de traduction

Sélectionnez un moteur de traduction pour les prétraductions automatiques.

Vous pouvez choisir entre les moteurs de traducteurs les plus populaires suivants : Microsoft Translator, Yandex Translate, et bientôt, Google Translate.

droidlinguist : 2nde étape

Vous avez également la possibilité de ne choisir aucun moteur de traduction du tout, afin de les gérer directement vous-même.

Étape 3 – Envoi du fichier strings.xml

Envoyez votre fichier strings.xml (qui contient les textes à traduire) sur le serveur, et laissez l’outil faire le reste !

droidlinguist  3e étape

Il va notamment :

  • Vérifier la validité du fichier XML et vous informer des erreurs trouvées
  • Traduire toutes les chaines de caractères dans les langues cibles que vous avez choisies, en utilisant le moteur de traduction que vous avez sélectionné à l’étape précédente.

Étape finale : corrigez et téléchargez

Vous pouvez maintenant passer en revue toutes vos traductions, dans une interface agréable et claire, qui vous accompagnera pendant tout le processus.

 

droidlinguist - screenshot-translate

Une fois terminé, téléchargez le fichier zip (strings.zip) qui contiendra les fichiers strings.xml traduits dans chaque langue, et extrayez-le dans le dossier res/ de votre projet Android. C’est tout !

Au lancement de votre application, la plateforme s’occupera d’automatiquement sélectionner la traduction appropriée, en fonction de la langue du système.

Conclusion

droidlinguist est encore jeune. Plusieurs axes d’évolutions sont dans le pipe. Notamment :

  • Implementer plus de moteurs de traduction (MyMemory API, WorldLingo Translation API, etc.)
  • Sauvegarder / reprendre un projet de traduction inachevé
  • Intégrer l’outil sous forme de plugin dans IntelliJ IDEA / Android Studio
  • Permettre à l’utilisateur de saisir sa propre API Key (utile quand les quotas de traduction gratuits sont atteints)

Il s’agit d’un projet opensource destiné à la communauté Android. Le code est accessible à tous sur Github.

N’hésitez donc pas à ouvrir des tickets ou soumettre vos pull requests !

Happy hacking!

Vous aimerez aussi...