@@ -6,8 +6,8 @@ msgstr ""
66"Project-Id-Version : Python 3.6\n "
77"Report-Msgid-Bugs-To : \n "
88"POT-Creation-Date : 2018-12-21 09:48+0100\n "
9- "PO-Revision-Date : YEAR-MO-DA HO:MI+ZONE \n "
10- "Last-Translator : FULL NAME <EMAIL@ADDRESS >\n "
9+ "PO-Revision-Date : 2019-06-20 14:07+0200 \n "
10+ "Last-Translator : Julien Palard <julien@palard.fr >\n "
1111"Language-Team : FRENCH <traductions@lists.afpy.org>\n "
1212"Language : fr\n "
1313"MIME-Version : 1.0\n "
@@ -16,7 +16,7 @@ msgstr ""
1616
1717#: ../Doc/library/parser.rst:2
1818msgid ":mod:`parser` --- Access Python parse trees"
19- msgstr ""
19+ msgstr ":mod:`parser` — Accès aux arbres syntaxiques "
2020
2121#: ../Doc/library/parser.rst:21
2222msgid ""
@@ -28,13 +28,23 @@ msgid ""
2828"in a manner identical to the code forming the application. It is also "
2929"faster."
3030msgstr ""
31+ "Le module :mod:`parser` expose une interface à l'analyseur et au compilateur "
32+ "de byte-code internes de Python. Son objectif principal est de permettre à "
33+ "du code Python de modifier l'arbre syntaxique d'une expression Python puis "
34+ "de la rendre exécutable. Cette approche est plus fiable que celle consistant "
35+ "à manipuler des chaines de caractères, puisque l'analyse est faite avec le "
36+ "même analyseur que celui utilisé pour le code de l'application. C'est aussi "
37+ "plus rapide."
3138
3239#: ../Doc/library/parser.rst:30
3340msgid ""
3441"From Python 2.5 onward, it's much more convenient to cut in at the Abstract "
3542"Syntax Tree (AST) generation and compilation stage, using the :mod:`ast` "
3643"module."
3744msgstr ""
45+ "À partir de Python 2.5, il est plus pratique de faire ces manipulations "
46+ "entre la génération de l'AST (*Abstract Syntax Tree*) et la compilation, en "
47+ "utilisant le module :mod:`ast`."
3848
3949#: ../Doc/library/parser.rst:34
4050msgid ""
@@ -43,6 +53,10 @@ msgid ""
4353"editing the parse trees for Python code, but some examples of using the :mod:"
4454"`parser` module are presented."
4555msgstr ""
56+ "Certaines particularités de ce module sont importantes à retenir pour en "
57+ "faire un bon usage. Ce n'est pas un tutoriel sur la modification d'arbres "
58+ "syntaxiques Python, mais certains exemples d'utilisation du module :mod:"
59+ "`parser` sont présentés."
4660
4761#: ../Doc/library/parser.rst:39
4862msgid ""
@@ -64,6 +78,22 @@ msgid ""
6478"from one version to another, whereas source code has always been forward-"
6579"compatible."
6680msgstr ""
81+ "Le prérequis le plus important est une bonne compréhension de la grammaire "
82+ "Python utilisée par l'analyseur interne dont la syntaxe est documentée "
83+ "exhaustivement dans :ref:`reference-index`. L'analyseur lui-même est généré "
84+ "à partir d'une grammaire spécifiée dans le fichier :file:`Grammar/Grammar` "
85+ "dans la distribution standard de Python. Les arbres syntaxiques stockés dans "
86+ "les objets ST créés par les fonctions :func:`expr` ou :func:`suite` de ce "
87+ "module sont directement le résultat de l'analyseur interne, alors que les "
88+ "objets ST créés par :func:`sequence2st` simulent ces structures. N'oubliez "
89+ "pas qu'une séquence considérée « correcte » dans une version de Python peut "
90+ "ne pas l'être dans une autre, la grammaire de Python pouvant évoluer. "
91+ "Cependant, déplacer du code source d'une version de Python à une autre sous "
92+ "forme textuelle donnera toujours des arbres syntaxique corrects, à "
93+ "l'exception qu'une version plus ancienne de l'interpréteur ne pourra pas "
94+ "analyser les constructions récentes du langage. Les arbres syntaxiques quant "
95+ "à eux ne sont généralement pas compatibles d'une version à l'autre, alors "
96+ "que le code source a toujours conservé la compatibilité ascendante."
6797
6898#: ../Doc/library/parser.rst:56
6999msgid ""
@@ -85,6 +115,23 @@ msgid ""
85115"requested, the same token might be represented as ``(1, 'if', 12)``, where "
86116"the ``12`` represents the line number at which the terminal symbol was found."
87117msgstr ""
118+ "Chaque élément des séquences renvoyé par les fonctions :func:`st2list` ou :"
119+ "func:`st2tuple` possède une forme simple. Les séquences représentant des "
120+ "éléments non terminaux de la grammaire ont toujours une taille supérieure à "
121+ "un. Le premier élément est un nombre entier représentant un élément de la "
122+ "grammaire. Le fichier d'en-têtes C :file:`Include/graminit.h` et le module "
123+ "Python :mod:`symbol` attribuent des noms symboliques à ces nombres. Les "
124+ "éléments suivants représentent les composants, tels que reconnus dans la "
125+ "chaîne analysée, de cet élément grammatical : ces séquences ont toujours la "
126+ "même forme que leur parent. Notez que les mots clés utilisés pour identifier "
127+ "le type du nœud parent, tel que :keyword:`if` dans un :const:`if_stmt` sont "
128+ "inclus dans l'arbre du nœud sans traitement particulier. Par exemple, le mot "
129+ "clé :keyword:`!if` est représenté par la paire ``(1, 'if')``, où ``1`` est "
130+ "la valeur numérique pour les lexèmes :const:`NAME`, ce qui inclut les noms "
131+ "de variables et de fonctions définis par l'utilisateur. Dans sa forme "
132+ "alternative, renvoyée lorsque le numéro de la ligne est requis, le même "
133+ "lexème peut être représenté : ``(1, 'if', 12)``, où ``12`` est le numéro de "
134+ "la ligne sur laquelle le dernier symbole se trouve."
88135
89136#: ../Doc/library/parser.rst:73
90137msgid ""
0 commit comments