Dans ce guide, nous vous montrerons qu'il est très facile de localiser Firefox OS et plus spécifiquement l'interface Gaia et les applications. Nous commencerons par vous aider à paramétrer votre ordinateur, puis comment traduire les chaines de Gaia et enfin comment effectuer des tests l10n sur votre travail.
A Noter: Ceci est un guide pour traducteurs voulant aider à traduire Firefox OS. Les développeurs voulant écrire des application traduisibles doivent débuter avec Traduire des application Firefox OS(en anglais), et ensuite regarder Bonnes pratiques L10n(en anglais).
Récupérer les outils
Afin de pouvoir récupérer les fichiers sources de Gaia et tester votre localisation sur votre ordinateur, vous devrez vous assurer d'avoir les outils et langages de programmation installés dessus :
- GNU make
- make est un petit outil très pratique pour créer des compilations à partir de code source. Il sera pratique quand vous serez prêt à tester votre travail de l10n sur votre ordinateur. Télécharger et installer make est facile et peut se faire directement à partir du site de GNU. Si vous utilisez Mac OS X, vous aurez besoin d'installer XCode et les outils de ligne de commande d'XCode à partir de l'App Store.
- git
- git est un système de gestion de versions décentralisé utilisé pour stocker le code source de Gaia activement développé. Télécharger et installer git est facile et peut se faire directement via leur site web.
- Python
- Python est un langage de programmation qui vous aidera aussi à créer des compilations de Firefox OS pour tester la localisation. Télécharger et installer Python est facile et peut se faire directement via leur site web.
- Mercurial (hg)
- Mercurial (hg) est un autre système de gestion de version qui contient les versions stables de Gaia utilisées pour la l10n, ainsi que les dépôts de locale. Télécharger et installer Mercurial est facile et peut se faire directement via leur site web.
- compare-locales
- compare-locales est un script Python qui aide les traducteurs à évaluer leur travail et à séparer le nouveau contenu à localiser du contenu déjà localisé (C'est un diff). Télécharger et installer compare-locales est facile et peut se faire directement à partir de la page wiki compare-locales. Cela est nécessaire seulement si vous localisez Gaia en utilisant seulement la ligne de commande ou un éditeur de texte. Si vous utilisez un outil comme Pootle, Transifex, ou Pontoon, vous n'avez pas besoin de cet outil.
Mis en place d'un dépôt local
Après avoir téléchargé et installé les logiciels de la liste ci-dessus, il est temps d'obtenir les sources et les chaines localisées sur votre ordinateur.
- Dans votre outil de ligne de commande, naviguez vers l'emplacement où vous stockerez les sources de Gaia et les chaines localisées.
- En utilisant hg, clonez le dépôt en-US dans l'emplacement par défaut en entrant la première commande ci-dessous.
hg clone https://hg.mozilla.org/gaia-l10n/en-US
- Ensuite clonez le dépot de votre locale en utilisant une commande avec la structure ci-dessous. Par exemple, la deuxième ligne permet de cloner le dépot de Chinois traditionnel dans un dossier approprié.
hg clone https://hg.mozilla.org/gaia-l10n/votre-code-de-locale hg clone https://hg.mozilla.org/gaia-l10n/zh-TW/ B2G/gaia/locales/zh-TW
- Ensuite tapez la commande suivante :
LOCALE_BASEDIR=locales/ LOCALES_FILE=locales/languages_mine.json make
Les fichiers de locale devraient être listés dans le fichier languages_mine.json
, qui aura une structure ressemblant à ça :
{ "en-US" : "English (US)", "fr" : "Français (fr)" }
Dans ce fichier vous devriez avoir une liste des chaines prête à traduire ! Veuillez noter que si vous commencez une nouvelle localisation de Firefox OS, vous n'avez pas besoin de créer un diff car toutes les chaines sont de nouvelles chaines à traduire.
Note : Reportez-vous à ce gist pour un script de compilation automatique de locale.
Traduire des chaines Gaia
Tester la localisation pour Firefox OS
Il existe deux méthodes principales pour effectuer des tests L10n sur Firefox OS : les compilations desktop et les compilations mobiles. Actuellement, la méthode desktop est la plus utilisée pour les test L10n.
Tester la l10n sur desktop
- Téléchargez et installez la dernière compilation nocture de boot2gecko pour desktop — téléchargez le package qui correspond à votre système d'exploitation. Recherchez les paquets qui contiennent le mot localizer à l'intérieur. Cela indique que cette compilation possède toutes les locales activées listées dans
languages-all.json
. - Clonez la dernière version de Gaia en naviguant dans le dossier sur votre ordinateur où vous souhaiter là télécharger et entrez cette commande dans votre utilitaire de ligne de commande :
git clone git://github.com/mozilla-b2g/gaia.git
- Si votre équipe localise Firefox OS pour la première fois, vous aurez besoin d'activer la locale. Si non prenez un verre, pendant que tout le monde active sa locale.
- Dans votre terminal, naviguez à l'intérieur de votre clone de Gaia et exécutez cette commande pour cloner le dépôt de votre locale :
hg clone ssh://hg.mozilla.org/gaia-l10n/votre-code-de-locale
- Ouvrez le fichier
languages.json
situé dans le dossiershared/resources
dans le dépôt gaia que vous venez juste de cloner. - Ajoutez l'information de votre locale correspondant à ce format : "en-US" : "English (US)", et enregistrez votre fichier.
- Pour finir, exécutez la commande :
make multilocale
. Cela active votre locale sur votre build desktop.
- Dans votre terminal, naviguez à l'intérieur de votre clone de Gaia et exécutez cette commande pour cloner le dépôt de votre locale :
- Create your Gaia profile by running this command:
DEBUG=1 make -C gaia profile
- Finally, you can run Firefox OS with your locale profile and begin testing. Do this by entering this command:
b2g/b2g -profile gaia/profile
. If you're using OS X, run this command:/Applications/B2G.app/Contents/MacOS/b2g -profile gaia/profile
- To update your desktop builds, simply navigate to your Gaia repo clone and enter this command:
git pull
Mobile l10n testing
This section will grow as more devices that support Firefox OS become available to localizers.
What to look for when l10n testing
Localization testing for a mobile operating system has some similarites to localization testing for a desktop application. Here are some guidelines on what to look for when performing localization testing on your work:
- See if your translations fit inside UI text elements.
- Ensure that the tone, style, and terminology are consistant throughout the entire product.
- Look for untranslated English strings in the UI. These may be hard-coded into Gaia or they may caused by element ID errors.
- Make sure that time and dates display according your regions standards.
Finding localization-specific bugs
Here are some links to bugzilla in order to give you examples of bugs that have been encountered while using the phones. This will give you an idea of where to look at for bugs as well as an example in filing these kinds of bugs.
- https://bit.ly/100bcsC - this is a general list of l10n B2G bugs
- https://bugzilla.mozilla.org/show_bug.cgi?id=846060
- https://bugzilla.mozilla.org/show_bug.cgi?id=852739
General rules when filing a Localization bug:
- if the bug is specific to the language, then file under the Mozilla Localization (under Other Products) and cc the localizer. Don't forget to flag your bug with the appropriate tracking flag
- if it's not specific to the language, file under FirefoxOS Product, and cc the localizer. Don't forget to flag your bug with the appropriate tracking flag
- If you are in doubt, file under FirefoxOS Product, and cc the localizer. Don't forget to flag your bug with the appropriate tracking flag
For those of you who use Moztrap, looking at the existing test cases under the FirefoxOS "localization" tags and seeing if you can pass the tests on your device is also a good way to test Firefox OS localizations.
What's next?
Now you're ready to start localizing! So open up your favorite l10n tool and go for it! As always, if you have questions that are not covered in this document, please send them to the mozilla.dev.l10n newsgroup.