Difference between revisions of "Translation for developers/fr"

From Kiwix
Jump to navigation Jump to search
(Created page with "== Mettre à jour les traductions Kiwix ==")
(Created page with "Ajoutez le nouveau dossier de langue et envoyez le tout comme ceci:")
 
(8 intermediate revisions by the same user not shown)
Line 75: Line 75:
== Mettre à jour les traductions Kiwix ==
== Mettre à jour les traductions Kiwix ==


Another task is to update already supported Kiwix languages with the last strings updated coming from Translatewiki. The first thing to know about that is that in the remote subversion repository, the Translatewiki file (in maintenance/translatewiki) is updated every two weeks from a Translatewiki contributors. That means, you only need to update your local repository and update and commit the kiwix code translation files like this:
Une autre tâche est de mettre à jour les langues de Kiwix déjà supportées avec les dernières chaînes mises à jour depuis translatewiki. La première chose à savoir est que dans le dépôt distant, le fichier Translatewiki (dans maintenance/translatewiki) est mis à jour toutes les deux semaines par des contributeurs Translatewiki.
Cela signifie que vous avez uniquement à mettre à jour votre dépôt local et mettre à jour/envoyer les fichiers de traduction comme ceci:


<source lang="bash">
<source lang="bash">
Line 83: Line 84:
git push origin master
git push origin master
</source>
</source>
The full path should be the moulinkiwix directory, not the kiwix directory in it.
Le chemin complet devrait être le dossier moulinkiwix, pas le dossier kiwix à l'intérieur de celui-ci.


== Add a new supported language to Kiwix ==
== Ajouter un nouveau langage à Kiwix ==


Kiwix tries to add only 100% translated languages coming from Translatewiki. So it happens often that there are more languages in the "maintenance_tools/translatewiki" directory than in the "kiwix/kiwix/chrome/locale" directory. In such a case, that simply means the Translatewiki language was still not integrated in Kiwix code base. We explain now how to do that.
Kiwix essaye d'ajouter 100% des langues traduites provenant de Translatewiki. Il arrive donc fréquemment qu'il y ait plus de langues dans le dossier "maintenance_tools/translatewiki" que dans le dossier "kiwix/kiwix/chrome/locale". Dans un tel cas, cela signifie simplement que la langue Translatewiki n'est pas intégrée dans le code de base de Kiwix. Nous allos expliquer maintenant comment faire ceci.


First of all you need to create the translation files in a new directory at "kiwix/kiwix/chrome/locale/your_language_iso_code" like this:
Premièrement vous devez créer les fichiers de traduction dans un nouveau répertoire sous "kiwix/kiwix/chrome/locale/your_language_iso_code" comme ceci:


<source lang="bash">
<source lang="bash">
Line 95: Line 96:
</source>
</source>


After that, you need go to the Kiwix source code directory in "kiwix/chrome" and edit with your preferred text editor the "chrome.manifest" and "chrome.manifest.prod" files. No explanation here, just do like for the already supported languages.
Après ceci, éditez les fichiers "chrome.manifest" et "chrome.manifest.prod" dans le sous dossier "kiwix/chrome". Procédez comme pour les langues déjà existantes.


Next edit chrome/content/main/js/languages.js and here also add the new languages.
Ensuite, éditez chrome/content/main/js/languages.js et ici aussi ajoutez une nouvelle langue.


Now update CHANGELOG and make a notice about the addition of the new supported languages.
Maintenant, mettez CHANGELOG à jour et vérifiez que les langues nouvellement supportées ont bien été ajoutées.


Add the new language directory and commit like this:
Ajoutez le nouveau dossier de langue et envoyez le tout comme ceci:


<source lang="bash">
<source lang="bash">

Latest revision as of 17:42, 23 May 2020

Other languages:
Bahasa Melayu • ‎English • ‎català • ‎español • ‎français • ‎galego • ‎italiano • ‎magyar • ‎português • ‎русский • ‎日本語

En dehors de la partie Special:MyLanguage/traduction, le code source de Kiwix doit être synchronisé avec Translatewiki

Cette synchronisation avec Translatewiki a besoin de trois opérations:

  • Ajouter une chaîne entre Kiwis et Translatewiki, cad ajouter une chaîne dynamique qui sera remplacée par la traduction correspondante lors de l'exécution.
  • Mettre à jour les chaînes Kiwix avec les traductions venant de Translatewiki
  • Ajouter une nouvelle traduction complète de Translatewiki sur Kiwix

Prérequis

Vous avez besoin d'un système d'exploitation GNU/Linux. Il est possible de le faire dans un autre système d'exploitation, mais il bien plus compliqué d'obtenir un environnement fonctionnel.

Vous devez garder plusieurs chose en tête:

  • Les fichiers de traduction de Kiwix se trouvent tous dans le dossier kiwix/chrome/locale
  • Il y a deux types de fichiers de traduction pour traduire l'interface utilisateur (Jetez un oeil aux fichiers *.js et *.xul dans kiwix/chrome/content/main pour en comprendre le fonctionnement):
    • "main.dtd" fournit les traductions pour tous les fichiers *.xul
    • "main.properties" fournit les traductions pour touts les fichies *.js
  • Les traduction Translatewiki sont importées séparément dans le dépôt de code Kiwix une fois par semaine ; nous avons toujours besoin de synchroniser ces fichiers avec le code de Kiwix dans les deux direction (KW->TW et TW->KW)

ATTENTION: avant toute modification dans le code source de Kiwix, mettez à jour chacun de vos dépôts locaux avec "git pull origin master".

Extraction du code et démarrage de Kiwix

Avant de commencer à travailler sur l'intégration de nouvelles chaînes dans le code Kiwix, il est préférable de compiler Kiwix:

  • Prenez le code instable
  • Compilez le
  • Exécutez-le en allant dans le dossier kiwix et lancez "kiwix"

Remarque: Si vous n'arrivez pas à compiler Kiwix, ou n'avez pas de xulrunner disponible (c'est par exemple le cas pour Ubuntu Oneirix et au delà), vous pourrez toujours démarrer kiwix et obtenir une interface bien que l'application ne fonctionnera pas correctement ; cela sera cependant suffisant pour manipuler les fichiers XUL. Dans ce cas vous devrez effectuer quelques opérations supplémentaires telles qu'ajouter "MaxVersion=42" comme nouvelle ligne de au fichier kiwix/application.ini et lancer Kiwix en utilisant la commande suivante dans la console (depuis le dossier "kiwix"): "firefox -app application.ini".

Ajouter une chaîne aux traductions

Trouver une chaîne à localiser

Cherchez dans les fichiers *.xul et *.js pour trouver des chaînes codées en dur.

Si vous en trouvez, vous devez trouver un identificateur de chaîne (par exemple foobar), puis regarder dans la chaîne trouvée pour savoir à quoi elle devrait ressembler. Le plus important à savoir est que dans les fichiers *.xul, cela devrait ressembler à "&foobar", et dans les fichiers *.js à "getProperty('foobar')".

Traduire dans la langue maîtresse (anglais)

Vous devrez le faire à deux endroits. Tout d'abord dans les fichiers main.dtd ou main.properties sous "kiwix/chrome/locale/en/main". De cette facon, Kiwi sait quoi afficher si la langue de l'interface utilisateur est l'anglais.

Mettre à jour les fichiers Translatewiki

Vous avez également besoin de dire à Translatewiki d'ajouter cette chaîne dans la liste des chaînes qui doivent être fournies (pour les traducteurs Translatewiki) pour traduction. Pour cela vous avez besoin d'extraire une autre part du dépôt de code Kiwix. Entrez la commande suivante en dehors de votre dossier de code local kiwix:

git pull origin master

Vous avez maintenant les traductions translatewiki sur votre ordinateur. Vous avez seulement besoin de mettre à jour le fichier "en" qui est le fichier maître de traduction pour Translatewiki. Ajoutez simplement votre nouvelle chaine en suivant l'exmple de chaînes déjà insérée et envoyez votre fichier "en".

Chaque semaine, quelqu'un de Translatewiki vérifie la présence de nouvelles chaînes dans le fichier "en" et synchronise Translatewiki avec ce fichier si nécessaire.

Créer une ébauche de traduction de votre nouvelle chaîne pour toutes les langues

La dernière opération que vous devez faire est de créer une ébauche de traduction de votre chaîne nouvellement localisée pour toutes les langues supportées par l'interface utilisateur Kiwix. Si vous ne le faites pas, Kiwix ne pourra pas fonctionner avec une langue autre qu'anglais.

Dans ce but vous devez utiliser le script TW2PL.pl (il s'agit d'un script perl, perl doit donc être installé) comme suit (sous le répertoire translatewiki):

./TW2KW.pl --path=/full/path/to/the/kiwix/code/directory --allLanguages=kw

Envoyer les nouveaux fichiers de traduction Kiwix

Maintenant, tous les fichiers locaux dans kiwix/chrome/locale devraient être mis à jour et vous devriez avoir beaucoup de fichiers (modifiés) en tapant:

git status kiwix/chrome/locale

Après avoir vérifié que tout est en ordre, vous pouvez envoyer les modifications, cad le dossier kiwix/chrome/locale directory et les fichiers *.xul et/ou *.js que vous avez modifiés.

Mettre à jour les traductions Kiwix

Une autre tâche est de mettre à jour les langues de Kiwix déjà supportées avec les dernières chaînes mises à jour depuis translatewiki. La première chose à savoir est que dans le dépôt distant, le fichier Translatewiki (dans maintenance/translatewiki) est mis à jour toutes les deux semaines par des contributeurs Translatewiki. Cela signifie que vous avez uniquement à mettre à jour votre dépôt local et mettre à jour/envoyer les fichiers de traduction comme ceci:

cd /full/path/to/the/kiwix/maintenance_tools/translatewiki
./TW2KW.pl --path=/full/path/to/the/kiwix/code/directory --allLanguages=kw
git commit /full/path/to/the/kiwix/code/directory/kiwix/chrome/locale
git push origin master

Le chemin complet devrait être le dossier moulinkiwix, pas le dossier kiwix à l'intérieur de celui-ci.

Ajouter un nouveau langage à Kiwix

Kiwix essaye d'ajouter 100% des langues traduites provenant de Translatewiki. Il arrive donc fréquemment qu'il y ait plus de langues dans le dossier "maintenance_tools/translatewiki" que dans le dossier "kiwix/kiwix/chrome/locale". Dans un tel cas, cela signifie simplement que la langue Translatewiki n'est pas intégrée dans le code de base de Kiwix. Nous allos expliquer maintenant comment faire ceci.

Premièrement vous devez créer les fichiers de traduction dans un nouveau répertoire sous "kiwix/kiwix/chrome/locale/your_language_iso_code" comme ceci:

./TW2KW.pl --path=/full/path/to/your/kiwix/code/base/directory/ --language=your_language_iso_code

Après ceci, éditez les fichiers "chrome.manifest" et "chrome.manifest.prod" dans le sous dossier "kiwix/chrome". Procédez comme pour les langues déjà existantes.

Ensuite, éditez chrome/content/main/js/languages.js et ici aussi ajoutez une nouvelle langue.

Maintenant, mettez CHANGELOG à jour et vérifiez que les langues nouvellement supportées ont bien été ajoutées.

Ajoutez le nouveau dossier de langue et envoyez le tout comme ceci:

git add kiwix/chrome/locale/language_iso_code
git commit CHANGELOG kiwix/chrome/chrome.manifest kiwix/chrome/chrome.manifest.prod kiwix/chrome/locale/ kiwix/chrome/content/main/js/gui.js
git push origin master

Voir aussi