Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

python/python-docs-fr

buildprogression

Accord de contribution à la documentation

NOTE CONCERNANT LA LICENCE POUR LES TRADUCTIONS : La documentation de Pythonest maintenue grâce à un réseau mondial de bénévoles. En publiant ce projetsur Transifex, Github, et d'autres endroits publics, et vous invitantà participer, la PSF vous enjoint à accepter cet accord qui stipule que vousacceptez de fournir vos améliorations à la documentation de Python ou à latraduction de la documentation de Python pour le bénéfice de la PSF sous licenceCC0 (disponible à l'adressehttps://creativecommons.org/publicdomain/zero/1.0/legalcode). En retour, vouspouvez demander à ce que votre contribution à la documentation soitpubliquement reconnue, et si votre traduction est acceptée par laPSF, vous pouvez (mais vous n'êtes pas obligé) soumettre un correctif incluantune modification appropriée dans le fichier Misc/ACKS ou TRANSLATORS. Bien querien dans le présentaccord de contribution à la documentation n'oblige la PSFà incorporer votre contribution textuelle, votre participation à la communautéPython est bienvenue et appréciée.

En soumettant votre travail à la PSF pour inclusion dans la documentation,vous signifiez votre acceptation de cet accord.

Contribuer à la traduction

Comment contribuer

Vous pouvez contribuer en utilisant :

  • Despull requests Github (solution recommandée).
  • En envoyant un patch à la listetraductions.

Contribuer en utilisant Github

Prérequis :

Commencer :

Vous aurez besoin deforker le dépôt des sourcespython-docs-fr en cliquant sur son boutonFork. Ceci crée une copie du projet sur votre compte Github : un endroitoù vous avez le droit de faire des modifications.

Étape par étape :

# Clonez votre fork Github avec `git` en utilisant ssh :git clone git@github.com/VOTRE_NOM_DE_COMPTE_GITHUB/python-docs-fr.git# *OU* HTTPS :git clone https://github.com/VOTRE_NOM_DE_COMPTE/python-docs-fr.git# Allez dans le répertoire cloné :cd python-docs-fr/# Ajoutez le dépot upstream (le dépôt public) en utilisant HTTPS (git# ne demandera pas de mot de passe ainsi) :# Ceci permet à *git* de savoir quoi/où est *upstream*git remote add upstream https://github.com/python/python-docs-fr.git

Ensuite, vous devez trouver un fichier sur lequel travailler.Vous pouvez utiliserpotodo, un outilfait pour trouver des fichierspo à traduire.Installez-le à l'aide depip (pip install potodo) dans un environnementpython3.6 ou plus.Lancez ensuite la commandepotodo dans votre clone local.Vous pouvez choisir n'importe quel fichier non réservé dans la listerenvoyée par la commande.

Nous vous recommandons de ne pas commencer avec un fichier de ``c-api``car c'est une partie très technique.

Une fois que vous avez choisi un fichier sur lequel travailler, veuillezouvrir unticket sur Github dansle formatJe travaille sur RÉPERTOIRE/FICHIER.po. Ceci permet àpotodode détecter via l'API Github les fichiers.po réservés dans les ticketset lespull requests.

Vous êtes maintenant prêt à commencer une session de travail. Chaquefois que vous commencerez un nouveau fichier, commencez ainsi :

# Pour travailler, nous aurons besoin d'une branche, basée sur une version à jour# (fraîchement récupérée) de la branche upstream/3.7. Nous appellerons notre branche# « library-sys » mais vous pouvez appeller la vôtre comme vous voulez.# En général, vous nommez une branche en fonction du fichier sur lequel vous travaillez.# Par exemple, si vous travaillez sur « library/venv.po », vous pouvez nommer votre# branche « library-venv ».# Mettez à jour votre version localegit fetch upstream# Créez une nouvelle branche nommée « library-sys » basée sur « upstream/3.7 ».git checkout -b library-sys upstream/3.7# Vous pouvez maintenant travailler sur le fichier, typiquement en utilisant poedit.# Bien sûr, remplacez « library/sys.po » par le fichier que vous avez choisi précédemmentpoedit library/sys.po# Configurez poedit pour « ne pas préserver le formatage des# fichiers existants » (décochez la case), et indiquez une longueur# de ligne maximum de 79 caractères.# Quand vous avez fini de traduire, vous pouvez lancer *pospell* (pip install pospell).# Cet outil a été conçu pour vérifier si vous n'avez pas d'erreurs de français.# Vous pouvez exécuter la commande suivante : pospell -p dict -l fr_FR **/*.po pour vérifier# tous les fichiers ou remplacer **/*.po par le fichier que vous traduisez (recommandé).# Une liste blanche de certains termes techniques ou de noms propres, comme « Guido »,# « C99 » ou « sérialisable », est stockée dans le fichier « dict » à la racine du projet.# Vous pouvez bien sûr y ajouter une entrée si nécessaire.# pospell -p dict library/sys.po# Vous pouvez ensuite lancer *powrap* (pip install powrap) qui va reformater le fichier# que avez vous avez modifié à la longueur de ligne correcte de `79`.# Exécutez cette commande : `powrap **/*.po`, ou remplacez `**/*.po` par le fichier# que vous traduisezpowrap library/sys.po# C'est le moment de git add et git commitgit add -p# C'est l'occasion de se relire, mais git add -u c'est bien aussi# ou même git add library/sys.pogit commit -m"Traduction de library/sys.po"# Ou un autre message plus inspiré :)# Poussez ensuite vos modifications sur votre fork Github.# Le -u n'est utile qu'une fois pour que votre client git se souvienne que cette# branche est liée à votre fork Github (et donc qu'un futur `git pull` sache quoi# tirer)git push -u origin# La commande précédente vous affichera un lien pour ouvrir une pull request sur# Github. Si vous l'avez manqué, allez simplement sur https://github.com/python/python-docs-fr/# et un joli bouton « Compare & pull request » devrait apparaître au bout de quelques secondes# vous indiquant que vous pouvez demander une pull request.# À partir de là, quelqu'un passera en revue vos modifications, et vous voudrez# probablement corriger les erreurs qu'ils auront trouvé. Retournez alors sur votre# branche (au cas où vous auriez commencé quelque chose d'autre sur une autre branche) :git checkout glossarygit pull# pour rapatrier les modifications que vous auriez accepté# sur l'interface web.# Réglez les problèmes, puis commitez à nouveau :git commit -a -m"glossaire : petites corrections".git push

Vous avez peut-être remarqué que cela ressemble à un triangle, avec unsegment manquant :

  • Vous récupérez depuisupstream (le dépôt commun public sur Github)
  • Vous poussez surorigin (votre clone sur Github)

Donc oui, c'est le travail de quelqu'un d'autre d'ajouter le dernier segment,de votreorigin auupstream public, pour « boucler la boucle ». C'est lerôle des personnes quifusionnent lespull requests après les avoir relues.

Vous avez peut-être aussi remarqué que vous n'avez jamais commité sur unebranche de version (3.6,3.7, etc.), seulement récupéré lesmodifications à partir d'elles. Considérez-les comme étant en lecture seule,vous éviterez les problèmes.

Avant de valider, vous devriez utilisergrammalecte pour vérifier vos traductions.

Toutes les traductions doivent être faites sur la dernière version.Nous ne traduisons jamais sur une version plus ancienne. Par exemple,si la dernière version de python est Python 3.7, nous ne voulons pastraduire directement sur la version python 3.5.Si nécessaire, les traductions seraient rétroportées sur les versionsles plus anciennes par l'équipe de documentation.

Que traduire ?

Vous pouvez commencer par des tâches faciles comme réviser les entréesfuzzy pour aider à garder la documentation à jour (trouvez les entréesfuzzy l'aide de make fuzzy).

Vous pouvez également relire les entrées déjà traduites, et enfintraduire celles qui ne sont pas traduites (trouvez-les à l'aide demake todo)...

  • Ne traduisez pas le contenu de:ref :... et:term :....
  • Mettez les mots anglais, si vous devez les utiliser, enitalique(entourés par des astérisques).
  • :: à la fin de certains paragraphes doivent être traduits en `` :::`` en français pour placer l'espace avant les deux-points.
  • Si vous traduisez un titre de lien, veuillez traduire le lien aussi.(surtout si c'est un lien Wikipédia et que l'article a une traduction).Si aucune traduction de la cible n'existe, ne traduisez pas le titre.

Le cas de « --- »

La version anglaise utilise une chose nomméesmartquotes, quiessaie d'être intelligente, qui fonctionne en anglais, mais causerapidement des problèmes dans d'autres langues.Nous l'avons donc désactivée.

Lessmartquotes sont également responsables de la transformation de-- enen-dash (-), de----- enem-dash (), et de... en.

Comme nous n'avons pas desmartquotes, nous devrons également « traduire »cela manuellement, donc si vous voyez--- en anglais, vous devez letransformer en en français.

Le cas de « :: »

Du point de vue du langagereStructuredText (ourst) utilisé dans la documentation :

=>:: collé à la fin d'un mot signifie « affiche: et introduit un bloc de code »,mais un:: après une espace signifie « introduit juste un bloc de code ».

Donc, dans durst, en anglais, nous voyons soit « bla bla:: », soit « bla bla. :: ».

En français, nous mettons une espace insécable devant nos deux-points, comme :« Et voilà : ».

L'utilisation de l'espace insécable enrst est naturelle, vous n'aurez qu'àécrireEt voilà ::. Le:: n'est pas précédé d'un espace normal,il affichera les deux-points et introduira le bloc de code, et c'est bon.

Si vous ne savez pas comment taper une espace insécable, il y a une astuce :lisez celle de la touchecompose dans la section suivante ; sinon :

=> Traduisezdeux-points deux-points parespace deux-points espace deux-points deux-points.

Les caractèresespace deux-points sont restitués tel quel,c'est du français correct, et la baliseespace deux-points deux-points quisuit n'affichera rien et introduira le bloc de code.

Dans un.po ça donne : `` : ::``

Non ! Ça n'insère pas magiquement une espace insécable donc ce n'est toujours pasvraiment du français valide.

Oui ! il vaut mieux apprendre à taper les espaces insécables.

Comment saisir des em-dash, des ellipses, des guillemets français, ou des espaces insécables ?

Malheureusement, cela dépend de votre système d'exploitation et de votre clavier.

=> Sous Linux/Unix/*BSD (tel OpenBSD), vous pouvez utilisez uneTouche de composition,c'est facile à configurer à l'aide de l'outil graphique de configuration de votreclavier ou viadpkg-reconfigure keyboard-configuration(pour Ubuntu ou Debian et distributions assimilées)

À minima, vous pouvez configurer votre fichier '~/.Xmodmap' pour ajouter l'équivalent de :

# key Composekeycode 115 = Multi_key

Utilisezxev pour connaitre la bonne correspondance de la touche que vousvoulez assigner !

Ensuite, dans votre fichier '~/.xsession', ajoutez :

# Gestion des touches clavierxmodmap$HOME/.Xmodmap

Sous X, avec un bureau graphique, tel que Gnome, ou Xfce, il faut aller modifierdans les paramètres > clavier > Disposition : puis 'Touche composée'.Pour finir, redémarrez votre session.

=> Sous Windows, vouspouvez utiliserwincompose.

Avec une touche de composition (personnellement j'utilisealt-gr,vous pouvez aussi utiliserverr maj 🔒), vous pouvez utiliser lescompositions suivantes :

  • Composer<< donne``« ``
  • Composer>> donne `` »``
  • Composer espace espace donne une espace insécable
  • Composer... donne

Comme vous l'avez noté, presque toutes les compositions sont facilesà retenir, vous pouvez donc essayer les autres et elles devraient toutsimplement fonctionner :

  • ComposerC= donne
  • Composer12 donne½
  • Composer'E donneÉ
  • … …

Où obtenir de l'aide ?

Le coordinateur de cette traduction estmdk.

N'hésitez pas à poser vos questions sur le canal#python-fr surfreenode (ne nécessite pas d'inscription) ou sur laliste de diffusion des traductions de l'AFPy.

Ressources de traduction

Glossaire

Afin d'assurer la cohérence de nos traductions, voici quelques propositions etrappels pour les termes fréquents à traduire, n'hésitez pas à ouvrir un ticketsi vous n'êtes pas d'accord.

Pour trouver facilement comment un terme est déjà traduit dans notre documentation,vous pouvez utiliserfind_in_po.py.

TermeTraduction proposée
-like-compatible
abstract data typetype abstrait
argumentargument (à ne pas confondre avecparamètre)
backslashantislash,backslash
boundlier
bugbogue,bug
built-innative
call stackpile d'appels
debuggingdébogage
deep copycopie récursive (préféré), ou copie profonde
double quoteguillemet
deprecatedobsolète
-like-compatible
e.g.p. ex. (on n'utilise pas l'anglicisme « e.g. »,lui-même issu du latinexempli gratia).On sépare les deux mots par une espaceinsécable pour éviter les retours à la lignemalheureux.
exportexportation
expressionexpression
garbage collectorramasse-miettes
getteraccesseur
i.e.c.-à-d. (on n'utilise pas l'anglicisme « i.e »,lui-même issu du latinid est)
identifieridentifiant
immutableimmuable
importimportation
installerinstallateur
interpreterinterpréteur
librarybibliothèque
list comprehensionliste en compréhension (liste en intension estvalide, mais nous ne l'utilisons pas)
little-endian, big-endianpetit-boutiste, gros-boutiste
mixin typetype de mélange
mutablemuable
namespaceespace de nommage(sauf pour le XML où c'est espace de noms)
parameterparamètre
pickle (v.)sérialiser
promptinvite
raiselever
regular expressionexpression rationnelle, expression régulière
returnrenvoie, donne (on évite « retourne » quipourrait porter à confusion).
settermutateur
simple quoteguillemet simple
socketconnecteur ou interface de connexion
statementinstruction
subprocesssous-processus
threadfil d'exécution
underscoretiret bas,underscore

Historique du projet

Ce projet a été lancévers 2012par des membres de l'AFPy. En 2017 ce projetest devenu la traduction officielle de la documentation Python en françaisgrâce à laPEP 545.

Simplifier les diffs git

Les diffs git sont souvent encombrés de changements inutiles de numérosde ligne, comme :

-#: ../Doc/library/signal.rst:406+#: ../Doc/library/signal.rst:408

Pour dire à git que ce ne sont pas des informations utiles, vous pouvez fairece qui suit après vous être assuré que~/.local/bin/ se trouve dans votrePATH.

cat<<EOF > ~/.local/bin/podiff#!/bin/shgrep -v '^#:' "\$1"EOFchmod a+x~/.local/bin/podiffgit config diff.podiff.textconv podiff

Maintenance

Toutes ces commandes doivent être exécutées à partir de la racine d'un clonedepython-docs-fr, et certains s'attendent à trouver un clone de CPythonà jour à proximité, comme :

~/├── python-docs-fr/└── cpython/

Pour cloner CPython, vous pouvez utiliser :

git clone --depth 1 --no-single-branch https://github.com/python/cpython.git

Ceci évite de télécharger tout l'historique (inutile pour générer ladocumentation) mais récupère néanmoins toutes les branches.

Fusionner les fichierspot de CPython

make merge

Trouver les chaînes de caractèresfuzzy

make fuzzy

Lancer unbuild en local

make

Synchroniser la traduction avec Transifex

Vous aurez besoin detransifex-client etpowrap,depuis PyPI.

Vous devrez configurertx viatx init si ce n'est déjà fait.

Propagez d'abord les traductions connues localement :

pomerge --no-overwrite --from-files**/*.po --to-files**/*.popowrap --modifiedgit commit -m"Propagating known translations."

Ensuite récupérez les changements depuis Transifex :

tx pull -f --parallelpomerge --from-files**/*.pogit checkout --.pomerge --no-overwrite --mark-as-fuzzy --to-files**/*.popowrap --modifiedgit add -pgit commit -m"tx pull"tx push -t -f --no-interactive --parallel

Contributors169


[8]ページ先頭

©2009-2025 Movatter.jp