🌐 AIæœçŽą & 代理 䞻饔
Skip to content

nshaud/python-docs-fr

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Traduction française de la documentation Python

build progression

Accord de Contribution Ă  la Documentation

NOTE CONCERNANT LA LICENCE POUR LES TRADUCTIONS : La documentation de Python est maintenue grĂące Ă  un rĂ©seau mondial de bĂ©nĂ©voles. En publiant ce projet sur Transifex, Github, et d'autres endroits publics, et vous invitant Ă  participer, la PSF vous enjoint Ă  accepter cet accord qui stipule que vous acceptez de fournir vos amĂ©liorations Ă  la documentation de Python ou Ă  la traduction de la documentation de Python pour le bĂ©nĂ©fice de la PSF sous licence CC0 (disponible Ă  l'adresse https://creativecommons.org/publicdomain/zero/1.0/legalcode). En retour, vous pouvez demander Ă  ce que votre contribution Ă  la documentation soit publiquement reconnue, et si votre traduction est acceptĂ©e par la PSF, vous pouvez (mais vous n'ĂȘtes pas obligĂ©) soumettre un correctif incluant une modification appropriĂ©e dans le fichier Misc/ACKS ou TRANSLATORS. Bien que rien dans le prĂ©sent Accord 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 :

  • Des pull requests Github (solution recommandĂ©e)
  • En envoyant un patch Ă  la liste traductions

Contribuer en utilisant Github

Prérequis :

Commencer :

Vous aurez besoin de forker le dĂ©pĂŽt des sources python-docs-fr en cliquant sur son bouton Fork. Ceci crĂ©e une copie du projet sur votre compte Github : un endroit oĂč 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:YOUR_GITHUB_USERNAME/python-docs-fr.git
# *OU* HTTPS :
git clone https://github.com:YOUR_GITHUB_USERNAME/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 utiliser potodo, un outil fait pour trouver des fichiers po à traduire. Installez-le à l'aide de pip (pip install potodo) dans un environnement python3.6 ou plus. Lancez ensuite la commande potodo dans votre clone local. Vous pouvez choisir n'importe quel fichier non réservé dans la liste renvoyé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, veuillez ouvrir un ticket sur Github dans le format Je travaille sur RÉPERTOIRE/FICHIER.po. Ceci permet Ă  potodo de dĂ©tecter via l'API Github les fichiers .po rĂ©servĂ©s dans les tickets et les pull requests.

Vous ĂȘtes maintenant prĂȘt Ă  commencer une session de travail. Chaque fois 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 locale
git 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édemment
poedit library/sys.po

# Configurez poedit pour "ne pas preserver 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é).
pospell 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 traduisez
powrap library/sys.po

# C'est le moment de git add et git commit
git add -p  # C'est l'occasion de se relire, mais git add -u c'est bien aussi
# ou mĂȘme git add library/sys.po

git commit -m "Working on 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é, alors retournez sur votre
# branche (au cas oĂč vous auriez commencĂ© quelque chose d'autre sur une autre branche) :
git checkout glossary
git 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 un segment manquant :

  • Vous rĂ©cupĂ©rez depuis upstream (le dĂ©pĂŽt commun public sur Github)
  • Vous poussez sur origin (votre clone sur Github)

Donc oui, c'est le travail de quelqu'un d'autre d'ajouter le dernier segment, de votre origin au upstream public, pour « boucler la boucle ». C'est le rÎle des personnes qui fusionnent les pull requests aprÚs les avoir relues.

Vous avez peut-ĂȘtre aussi remarquĂ© que vous n'avez jamais commitĂ© sur une branche de version (3.6, 3.7, ...), seulement rĂ©cupĂ©rĂ© les modifications Ă  partir d'elles. ConsidĂ©rez-les comme Ă©tant en lecture seule, vous Ă©viterez les problĂšmes.

Avant de valider, vous devriez utiliser grammalecte 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 pas traduire directement sur la version python 3.5. Si nĂ©cessaire, les traductions seraient rĂ©troportĂ©es sur les versions les plus anciennes par l'Ă©quipe de documentation.

Que traduire ?

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

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

  • Ne traduisez pas le contenu de :ref :... et :term :....
  • Mettez les mots anglais, si vous devez les utiliser, en italique (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. (typiquement si c'est 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Ă©e smartquotes, qui essaie d'ĂȘtre intelligente, qui fonctionne en anglais, mais cause rapidement des problĂšmes dans d'autres langues. Nous l'avons donc dĂ©sactivĂ©e.

Les smartquotes sont Ă©galement responsables de la transformation de -- en en-dash (-), de ----- en em-dash (—), et de ... en 
.

Comme nous n'avons pas de smartquotes, nous devrons Ă©galement "traduire" cela manuellement, donc si vous voyez --- en anglais, vous devez le transformer en — en français.

Le cas de "::"

Du point de vue du langage reStructuredText (ou rst) 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 du rst, 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 en rst est naturelle, vous n'aurez qu'à écrire Et 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 touche Compose dans la section suivante ; sinon :

=> Traduisez deux-points deux-points par espace deux-points espace deux-points deux-points.

Les caractÚres espace deux-points sont restitués tel quel, c'est du français correct, et la balise espace deux-points deux-points qui suit 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 pas vraiment 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 une Touche de composition, c'est facile à configurer à l'aide de l'outil graphique de configuration de votre clavier ou via dpkg-reconfigure keyboard-configuration (pour Ubuntu ou Debian et distributions assimilées)

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

# key Compose
keycode 115 = Multi_key

Utilisez xev pour connaitre la bonne correspondance de la touche que vous voulez assigner !

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

# Gestion des touches clavier
xmodmap $HOME/.Xmodmap

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

=> Sous Windows, vous pouvez utiliser wincompose.

Avec une touche de composition (personnellement j'utilise alt-gr, vous pouvez aussi utiliser verr maj 🔒), vous pouvez utiliser les compositions 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 tout simplement fonctionner :

  • Composer C = donne €
  • Composer 1 2 donne œ
  • Composer ' E donne É
  • 
 


OĂč obtenir de l'aide ?

Le coordinateur de cette traduction est mdk.

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

Ressources de traduction

Glossaire

Afin d'assurer la cohĂ©rence de nos traductions, voici quelques propositions et rappels pour les termes frĂ©quents Ă  traduire, n'hĂ©sitez pas Ă  ouvrir un ticket si vous n'ĂȘtes pas d'accord.

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

Terme Traduction proposée
-like -compatible
abstract data type type abstrait
argument argument (Don't mix with parameter)
backslash antislash, backslash
bound lier
bug bogue, bug
built-in native
call stack pile d'appels
debugging débogage
deep copy copie récursive (préféré), ou copie profonde.
double quote guillemet
deprecated obsolĂšte
e.g. e.g. (pour exempli gratia)
export exportation
expression expression
garbage collector ramasse-miettes
getter accesseur
identifier identifiant
immutable immuable
import importation
installer installateur
interpreter interpréteur
library bibliothĂšque
list comprehension liste en compréhension (liste en intension est valide, mais nous ne l'utilisons pas)
little-endian, big-endian petit-boutiste, gros-boutiste
mutable muable
namespace espace de nommage (sauf pour le XML oĂč c'est espace de noms)
parameter paramĂštre
prompt invite
raise lever
regular expression expression rationnelle, expression réguliÚre
return renvoie, donne (on évite "retourne" qui pourrait porter à confusion).
setter mutateur
simple quote guillemet simple, apostrophe (apostrophe is to glue, guillemet is to surround)
socket connecteur ou interface de connexion
statement instruction
subprocess sous-processus
thread fil d'exécution
underscore tiret bas, underscore

Historique du projet

Ce projet a été lancé vers 2012 par des membres de l'AFPy. En 2017 ce projet est devenu la traduction officielle de la documentation Python en français grùce à la PEP 545.

Simplifier les diffs git

Les diffs git sont souvent encombrés de changements inutiles de numéros de 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 faire ce qui suit aprĂšs vous ĂȘtre assurĂ© que ~/.local/bin/ se trouve dans votre PATH.

cat <<EOF > ~/.local/bin/podiff
#!/bin/sh
grep -v '^#:' "\$1"
EOF

chmod a+x ~/.local/bin/podiff

git config diff.podiff.textconv podiff

Maintenance

Toutes ces commandes doivent ĂȘtre exĂ©cutĂ©es Ă  partir de la racine d'un clone de python-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 la documentation) mais récupÚre néanmoins toutes les branches.

Fusionner les fichiers pot de CPython

make merge

Trouver les chaĂźnes de caractĂšres fuzzy

make fuzzy

Lancer un build en local

make

Synchroniser la traduction avec Transifex

Vous aurez besoin de transifex-client et powrap, depuis PyPI.

Vous devrez configurer tx via tx init si ce n'est déjà fait.

Propagez d'abord les traductions connues localement :

pomerge --no-overwrite --from-files **/*.po --to-files **/*.po
powrap --modified
git commit -m "Propagating known translations."

Ensuite récupérez les changements depuis Transifex :

tx pull -f --parallel
pomerge --from-files **/*.po
git checkout -- .
pomerge --no-overwrite --mark-as-fuzzy --to-files **/*.po
powrap --modified
git add -p
git commit -m "tx pull"
tx push -t -f --no-interactive --parallel

About

French translation of the Python documentation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Makefile 85.0%
  • Shell 15.0%