Crowdin Scripts/fr

Gérer les traductions de FreeCAD
FreeCAD utilise un service de traduction tiers appelé Crowdin pour gérer les traductions.

Il existe 3 scripts dans  utilisés pour gérer les fichiers de traduction:
 * 1)   (github source)
 * 2)   (github source)
 * 3)   (github source)

Ces scripts sont exécutés à la racine du répertoire. Remarque: pour que ces scripts fonctionnent, la clé d'API FreeCAD Crowdin valide doit être placée dans leur fichier. (Pour des raisons de sécurité, disponible uniquement pour les personnes disposant des droits d'administrateur sur le projet crowdin FreeCAD)

updatets.py
Ce script créera les fichiers .ts dans votre répertoire local.

updatecrowdin.py
Ce script transmet au Crowdin les modifications à partir de votre répertoire local. Le script supporte actuellement 4 arguments:


 * affiche un statut des traductions
 * met à jour la version actuelle des fichiers .ts présents dans le code source crowdin
 * construit un nouveau paquet téléchargeable sur crowdin avec toutes les chaînes traduites
 * télécharge la dernière version

updatefromcrowdin.py
Ce script extrait les modifications de crowdin vers votre répertoire  local.

Pour envoyer les dernières chaînes à crowdin

 * Testé uniquement sur Linux
 * Vous avez besoin d’un fichier .credentials dans votre répertoire /home/YourUser. Ce fichier est un simple fichier texte contenant une seule ligne, qui correspond à la clé API que vous obtenez sur https://crowdin.com/project/freecad/settings#api (uniquement pour les administrateurs).
 * Assurez-vous que votre repo est propre (git pull, git stash si nécessaire)
 * cd /path/to/freecad-source-code/src/Tools
 * python updatets.py (remplira tous les fichiers .ts trouvés dans le source avec les dernières chaînes)
 * python updatecrowdin.py update (enverra les fichiers ts à crowdin. Crowdin ne mettra à jour que les nouvelles chaînes)
 * cd ../.. (retournez au dossier racine du code source)
 * git Checkout. (annulez toutes les modifications apportées aux fichiers .ts, aucune raison de les valider maintenant, car elles ne sont pas traduites)

Pour fusionner les dernières traductions de crowdin

 * Testé uniquement sur Linux
 * Vous avez besoin d’un fichier .credentials dans votre répertoire /home/YourUser. Ce fichier est un simple fichier texte contenant une seule ligne, qui correspond à la clé API que vous obtenez sur https://crowdin.com/project/freecad/settings#api (uniquement pour les administrateurs).
 * Assurez-vous que votre repo est libre (git pull, git stash si nécessaire)
 * cd /path/to/freecad-source-code/src/Tools Outils
 * Python updatecrowdin.py build (créera un zip du côté de crowdin avec tous les fichiers, peut prendre un certain temps .. Cette étape peut également être effectuée sur le site web de crowdin)
 * python updatecrowdin.py télécharger (téléchargera le fichier freecad.zip dans ce répertoire)
 * mv freecad.zip ~ déplace le fichier zip dans votre répertoire personnel, pour éviter de le commettre accidentellement plus tard)
 * (facultatif) éditez le script updatefromcrowdin.py et vérifiez que les default_languages ​​contiennent tous ceux que vous voulez (essentiellement tous ceux qui sont à plus de 50%)
 * python updatefromcrowdin.py -z /home/YourUser/freecad.zip
 * cd ../.. (retourne au dossier racine du code source)
 * Si quelque chose s'est mal passé ou si vous avez un doute, nettoyez tout avec Git Checkout.
 * Si tout se passe bien (statut git), validez avec git add. && git commit
 * Créer un PR sur FreeCAD

To generate a translation file from the website

 * Clone the homepage repo
 * cd /path/to/FreeCAD-homepage
 * xgettext --from-code=UTF-8 -o lang/homepage.pot *.php
 * Update the "homepage.po" on crowdin website manually, using the lang/homepage.pot file

To update the translations of the website

 * Get the freecad.zip file either by downloading it from the crowdin website or following instructions above (python updatecrowdin.py download)
 * cd /path/to/FreeCAD-homepage
 * Make sure your repo is clean (git pull, git stash if needed)
 * python updatefromcrowdin.py -z /path/to/freecad.zip
 * if something went wrong or you are unsure, clean everything with git checkout.
 * if everything looks ok (git status), commit with git add . && git commit
 * Create a PR on FreeCAD-Homepage
 * After the PR is merged, one of the admins will ftp push to the webhost

Related

 * Localisation
 * Crowdin Administration
 * Release process