diff --git a/c-api/intro.po b/c-api/intro.po index 9a1bc7d1..f6b281c5 100644 --- a/c-api/intro.po +++ b/c-api/intro.po @@ -276,7 +276,7 @@ msgstr "" #: ../Doc/c-api/intro.rst:240 msgid "Reference Counts" -msgstr "" +msgstr "Compteurs de références" #: ../Doc/c-api/intro.rst:242 msgid "" diff --git a/distutils/builtdist.po b/distutils/builtdist.po index b7b35880..f233b8ae 100644 --- a/distutils/builtdist.po +++ b/distutils/builtdist.po @@ -396,7 +396,7 @@ msgstr "msi" #: ../Doc/distutils/builtdist.rst:150 ../Doc/distutils/builtdist.rst:305 #: ../Doc/distutils/builtdist.rst:470 msgid "bdist_wininst is deprecated since Python 3.8." -msgstr "" +msgstr "`bdist_wininst` est obsolète depuis Python 3.8." #: ../Doc/distutils/builtdist.rst:152 msgid "" diff --git a/extending/extending.po b/extending/extending.po index 35fdd78a..c6f9166a 100644 --- a/extending/extending.po +++ b/extending/extending.po @@ -639,6 +639,10 @@ msgid "" "`PyInit_name`, where *name* is the name of the module, and should be the " "only non-\\ ``static`` item defined in the module file::" msgstr "" +"Cette structure, à son tour, doit être transmise à l'interpréteur dans la " +"fonction d'initialisation du module. La fonction d'initialisation doit être " +"nommée :c:func:`PyInit_name`, où *nom* est le nom du module, et doit être le " +"seul élément non ``static`` défini dans le fichier du module ::" #: ../Doc/extending/extending.rst:368 msgid "" @@ -646,6 +650,10 @@ msgid "" "type, declares any special linkage declarations required by the platform, " "and for C++ declares the function as ``extern \"C\"``." msgstr "" +"Notez que *PyMODINIT_FUNC* déclare la fonction comme renvoyant un objet de " +"type ``PyObject *``, et déclare également toute déclaration de liaison " +"spéciale requise par la plate-forme, et pour le C++ déclare la fonction " +"comme un C ``extern``." #: ../Doc/extending/extending.rst:372 msgid "" @@ -660,6 +668,17 @@ msgid "" "The init function must return the module object to its caller, so that it " "then gets inserted into ``sys.modules``." msgstr "" +"Lorsque le programme Python importe le module :mod:`spam` pour la première " +"fois, :c:func:`PyInit_spam` est appelé. (Voir ci-dessous pour les " +"commentaires sur l'intégration en Python.) Il appelle :c:func:" +"`PyModule_Create`, qui renvoie un objet module, et insère des objets " +"fonction intégrés dans le module nouvellement créé en se basant sur la table " +"(un tableau de structures :c:type:`PyMethodDef`) trouvée dans la définition " +"du module. :c:func:`PyModule_Create` renvoie un pointeur vers l'objet module " +"qu'il crée. Il peut s'interrompre avec une erreur fatale pour certaines " +"erreurs, ou renvoyer ``NULL`` si le module n'a pas pu être initialisé de " +"manière satisfaisante. La fonction `*init* doit renvoyer l'objet module à " +"son appelant, afin qu'il soit ensuite inséré dans ``sys.modules``." #: ../Doc/extending/extending.rst:383 msgid "" @@ -668,6 +687,11 @@ msgid "" "table. To add the module to the initialization table, use :c:func:" "`PyImport_AppendInittab`, optionally followed by an import of the module::" msgstr "" +"Lors de l'intégration de Python, la fonction :c:func:`PyInit_spam` n'est pas " +"appelée automatiquement, sauf s'il y a une entrée dans la table :c:data:" +"`PyImport_Inittab`. Pour ajouter le module à la table d'initialisation, " +"utilisez :c:func:`PyImport_AppendInittab`, suivi éventuellement d'une " +"importation du module ::" #: ../Doc/extending/extending.rst:427 msgid "" @@ -677,6 +701,12 @@ msgid "" "extension modules. Extension module authors should exercise caution when " "initializing internal data structures." msgstr "" +"Supprimer des entrées de ``sys.modules`` ou importer des modules compilés " +"dans plusieurs interpréteurs au sein d'un processus (ou suivre un :c:func:" +"`fork` sans l'intervention d'un :c:func:`exec`) peut créer des problèmes " +"pour certains modules d'extension. Les auteurs de modules d'extension " +"doivent faire preuve de prudence lorsqu'ils initialisent des structures de " +"données internes." #: ../Doc/extending/extending.rst:433 msgid "" @@ -684,6 +714,9 @@ msgid "" "distribution as :file:`Modules/xxmodule.c`. This file may be used as a " "template or simply read as an example." msgstr "" +"Un exemple de module plus substantiel est inclus dans la distribution des " +"sources Python sous le nom :file:`Modules/xxmodule.c`. Ce fichier peut être " +"utilisé comme modèle ou simplement lu comme exemple." #: ../Doc/extending/extending.rst:439 msgid "" @@ -692,10 +725,15 @@ msgid "" "``PyInit_spam``, and creation of the module is left to the import machinery. " "For details on multi-phase initialization, see :PEP:`489`." msgstr "" +"Contrairement à notre exemple de ``spam``, ``xxmodule`` utilise une " +"*initialisation multi-phase* (nouveau en Python 3.5), où une structure " +"*PyModuleDef* est renvoyée à partir de ``PyInit_spam``, et la création du " +"module est laissée au mécanisme d'importation. Pour plus de détails sur " +"l'initialisation multi-phase, voir :PEP:`489`." #: ../Doc/extending/extending.rst:448 msgid "Compilation and Linkage" -msgstr "" +msgstr "Compilation et liaison" #: ../Doc/extending/extending.rst:450 msgid "" @@ -734,7 +772,7 @@ msgstr "" #: ../Doc/extending/extending.rst:485 msgid "Calling Python Functions from C" -msgstr "" +msgstr "Appeler des fonctions Python en C" #: ../Doc/extending/extending.rst:487 msgid "" @@ -773,6 +811,10 @@ msgid "" "c:func:`PyArg_ParseTuple` function and its arguments are documented in " "section :ref:`parsetuple`." msgstr "" +"Cette fonction doit être déclarée en utilisant le drapeau :const:" +"`METH_VARARGS` ; ceci est décrit dans la section :ref:`methodtable`. La " +"fonction :c:func:`PyArg_ParseTuple` et ses arguments sont documentés dans la " +"section :ref:`parsetuple`." #: ../Doc/extending/extending.rst:536 msgid "" @@ -781,6 +823,11 @@ msgid "" "pointers (but note that *temp* will not be ``NULL`` in this context). More " "info on them in section :ref:`refcounts`." msgstr "" +"Les macros :c:func:`Py_XINCREF` et :c:func:`Py_XDECREF` incrémentent/" +"décrémentent le compteur des références d'un objet et sont sûres quant à la " +"présence de pointeurs ``NULL`` (mais notez que *temp* ne sera pas ``NULL`` " +"dans ce contexte). Plus d'informations à ce sujet dans la section :ref:" +"`refcounts`." #: ../Doc/extending/extending.rst:543 msgid "" @@ -822,6 +869,15 @@ msgid "" "handle the exception. If this is not possible or desirable, the exception " "should be cleared by calling :c:func:`PyErr_Clear`. For example::" msgstr "" +"Mais avant de le faire, il est important de vérifier que la valeur renvoyée " +"n'est pas ``NULL``. Si c'est le cas, la fonction Python s'est terminée par " +"la levée d'une exception. Si le code C qui a appelé :c:func:" +"`PyObject_CallObject` est appelé depuis Python, il devrait maintenant " +"renvoyer une indication d'erreur à son appelant Python, afin que " +"l'interpréteur puisse afficher la pile d'appels, ou que le code Python " +"appelant puisse gérer l'exception. Si cela n'est pas possible ou " +"souhaitable, l'exception doit être effacée en appelant :c:func:" +"`PyErr_Clear`. Par exemple ::" #: ../Doc/extending/extending.rst:589 msgid "" @@ -834,6 +890,16 @@ msgid "" "simplest way to do this is to call :c:func:`Py_BuildValue`. For example, if " "you want to pass an integral event code, you might use the following code::" msgstr "" +"Selon l'interface souhaitée pour la fonction de rappel Python, vous devrez " +"peut-être aussi fournir une liste d'arguments à :c:func:" +"`PyObject_CallObject`. Dans certains cas, la liste d'arguments est également " +"fournie par le programme Python, par l'intermédiaire de la même interface " +"qui a spécifié la fonction de rappel. Elle peut alors être sauvegardée et " +"utilisée de la même manière que l'objet fonction. Dans d'autres cas, vous " +"pouvez avoir à construire un nouveau n-uplet à passer comme liste " +"d'arguments. La façon la plus simple de faire cela est d'appeler :c:func:" +"`Py_BuildValue`. Par exemple, si vous voulez passer un code d'événement " +"intégral, vous pouvez utiliser le code suivant ::" #: ../Doc/extending/extending.rst:608 msgid "" @@ -849,14 +915,18 @@ msgid "" "`PyObject_Call`, which supports arguments and keyword arguments. As in the " "above example, we use :c:func:`Py_BuildValue` to construct the dictionary. ::" msgstr "" +"Vous pouvez également appeler une fonction avec des arguments nommés en " +"utilisant :c:func:`PyObject_Call`, qui accepte les arguments et les " +"arguments nommés. Comme dans l'exemple ci-dessus, nous utilisons :c:func:" +"`Py_BuildValue` pour construire le dictionnaire. ::" #: ../Doc/extending/extending.rst:630 msgid "Extracting Parameters in Extension Functions" -msgstr "" +msgstr "Extraire des paramètres dans des fonctions d'extension" #: ../Doc/extending/extending.rst:634 msgid "The :c:func:`PyArg_ParseTuple` function is declared as follows::" -msgstr "" +msgstr "La fonction :c:func:`PyArg_ParseTuple` est déclarée ainsi ::" #: ../Doc/extending/extending.rst:638 msgid "" @@ -886,16 +956,17 @@ msgstr "" #: ../Doc/extending/extending.rst:652 msgid "Some example calls::" -msgstr "" +msgstr "Quelques exemples d'appels ::" #: ../Doc/extending/extending.rst:722 msgid "Keyword Parameters for Extension Functions" -msgstr "" +msgstr "Paramètres nommés pour des fonctions d'extension" #: ../Doc/extending/extending.rst:726 msgid "" "The :c:func:`PyArg_ParseTupleAndKeywords` function is declared as follows::" msgstr "" +"La fonction :c:func:`PyArg_ParseTupleAndKeywords` est déclarée ainsi ::" #: ../Doc/extending/extending.rst:731 msgid "" @@ -908,6 +979,14 @@ msgid "" "`PyArg_ParseTupleAndKeywords` returns true, otherwise it returns false and " "raises an appropriate exception." msgstr "" +"Les paramètres *arg* et *format* sont identiques à ceux de la fonction :c:" +"func:`PyArg_ParseTuple`. Le paramètre *kwdict* est le dictionnaire de mots-" +"clés reçu comme troisième paramètre du *runtime* Python. Le paramètre " +"*kwlist* est une liste de chaînes de caractères terminée par ``NULL`` qui " +"identifie les paramètres ; les noms sont mis en correspondance, de gauche à " +"droite, avec les informations de type de *format*. En cas de succès du " +"processus, :c:func:`PyArg_ParseTupleAndKeywords` renvoie vrai, sinon il " +"renvoie faux et lève une exception appropriée." #: ../Doc/extending/extending.rst:741 msgid "" @@ -915,22 +994,29 @@ msgid "" "parameters passed in which are not present in the *kwlist* will cause :exc:" "`TypeError` to be raised." msgstr "" +"Les n-uplets imbriqués ne peuvent pas être traités lorsqu'on utilise des " +"arguments de type mot-clé ! Ceux-ci doivent apparaître dans dans *kwlist*, " +"dans le cas contraire une exception :exc:`TypeError` est levée." #: ../Doc/extending/extending.rst:747 msgid "" "Here is an example module which uses keywords, based on an example by Geoff " "Philbrick (philbrick@hks.com)::" msgstr "" +"Voici un exemple de module qui utilise des mots-clés, basé sur un exemple de " +"*Geoff Philbrick* (philbrick@hks.com) ::" #: ../Doc/extending/extending.rst:802 msgid "Building Arbitrary Values" -msgstr "" +msgstr "Créer des valeurs arbitraires" #: ../Doc/extending/extending.rst:804 msgid "" "This function is the counterpart to :c:func:`PyArg_ParseTuple`. It is " "declared as follows::" msgstr "" +"Cette fonction est le complément de :c:func:`PyArg_ParseTuple`. Elle est " +"déclarée comme suit ::" #: ../Doc/extending/extending.rst:809 msgid "" @@ -939,6 +1025,11 @@ msgid "" "not output) must not be pointers, just values. It returns a new Python " "object, suitable for returning from a C function called from Python." msgstr "" +"Il reconnaît un ensemble d'unités de format similaires à celles reconnues " +"par :c:func:`PyArg_ParseTuple`, mais les arguments (qui sont les données en " +"entrée de fonction, et non de la sortie) ne doivent pas être des pointeurs, " +"mais juste des valeurs. Il renvoie un nouvel objet Python, adapté pour être " +"renvoyé par une fonction C appelée depuis Python." #: ../Doc/extending/extending.rst:814 msgid "" @@ -956,10 +1047,11 @@ msgstr "" msgid "" "Examples (to the left the call, to the right the resulting Python value):" msgstr "" +"Exemples (à gauche l'appel, à droite la valeur résultante, en Python) :" #: ../Doc/extending/extending.rst:848 msgid "Reference Counts" -msgstr "" +msgstr "Compteurs de références" #: ../Doc/extending/extending.rst:850 msgid "" @@ -969,6 +1061,12 @@ msgid "" "``new`` and ``delete`` are used with essentially the same meaning and we'll " "restrict the following discussion to the C case." msgstr "" +"Dans les langages comme le C ou le C++, le développeur est responsable de " +"l'allocation dynamique et de la dés-allocation de la mémoire sur le tas. En " +"C, cela se fait à l'aide des fonctions :c:func:`malloc` et :c:func:`free`. " +"En C++, les opérateurs ``new`` et ``delete`` sont utilisés avec " +"essentiellement la même signification et nous limiterons la discussion " +"suivante au cas du C." #: ../Doc/extending/extending.rst:856 msgid "" @@ -1012,6 +1110,14 @@ msgid "" "reference to it is deleted. When the counter reaches zero, the last " "reference to the object has been deleted and the object is freed." msgstr "" +"Comme Python fait un usage intensif de :c:func:`malloc` et de :c:func:" +"`free`, il a besoin d'une stratégie pour éviter les fuites de mémoire ainsi " +"que l'utilisation de la mémoire libérée. La méthode choisie est appelée :dfn:" +"`reference counting`. Le principe est simple : chaque objet contient un " +"compteur, qui est incrémenté lorsqu'une référence à l'objet est stockée " +"quelque part, et qui est décrémenté lorsqu'une référence à celui-ci est " +"supprimée. Lorsque le compteur atteint zéro, la dernière référence à l'objet " +"a été supprimée et l'objet est libéré." #: ../Doc/extending/extending.rst:888 msgid "" @@ -1028,6 +1134,19 @@ msgid "" "garbage collector will be available for C. Until then, we'll have to live " "with reference counts." msgstr "" +"Une stratégie alternative est appelée :dfn:`automatic garbage collection` " +"(ramasse-miettes). Parfois, le comptage des références est également appelé " +"stratégie de ramasse-miettes, d'où l'utilisation du terme \"automatique\" " +"pour distinguer les deux. Le grand avantage du ramasse-miettes est que " +"l'utilisateur n'a pas besoin d'appeler :c:func:`free` explicitement. (Un " +"autre avantage important est l'amélioration de la vitesse ou de " +"l'utilisation de la mémoire, ce n'est cependant pas un fait avéré). " +"L'inconvénient est que pour C, il n'y a pas de ramasse-miettes portable " +"proprement-dit, alors que le comptage des références peut être implémenté de " +"façon portable (tant que les fonctions :c:func:`malloc` et :c:func:`free` " +"soient disponibles, ce que la norme C garantit). Peut-être qu'un jour un " +"ramasse-miettes suffisamment portable sera disponible pour C. D'ici là, nous " +"devrons utiliser les compteurs des références." #: ../Doc/extending/extending.rst:900 msgid "" @@ -1042,6 +1161,18 @@ msgid "" "in a reference cycle, or referenced from the objects in the cycle, even " "though there are no further references to the cycle itself." msgstr "" +"Bien que Python utilise l'implémentation traditionnelle de comptage de " +"référence, il contient également un détecteur de cycles qui fonctionne pour " +"détecter les cycles de référence. Cela permet aux applications d'empêcher la " +"création de références circulaires directes ou indirectes ; ceci sont les " +"faiblesses du ramasse-miettes mis en œuvre en utilisant uniquement le " +"comptage de référence. Les cycles de référence sont constitués d'objets qui " +"contiennent des références (éventuellement indirectes) à eux-mêmes, de sorte " +"que chaque objet du cycle a un comptage de référence qui n'est pas nul. Les " +"implémentations typiques de comptage de référence ne sont pas capables de " +"récupérer la mémoire appartenant à des objets dans un cycle de référence, ou " +"référencés à partir des objets dans le cycle, même s'il n'y a pas d'autres " +"références au cycle lui-même." #: ../Doc/extending/extending.rst:911 msgid "" @@ -1057,7 +1188,7 @@ msgstr "" #: ../Doc/extending/extending.rst:925 msgid "Reference Counting in Python" -msgstr "" +msgstr "Comptage de références en Python" #: ../Doc/extending/extending.rst:927 msgid "" @@ -1069,6 +1200,13 @@ msgid "" "this purpose (and others), every object also contains a pointer to its type " "object." msgstr "" +"Il existe deux macros, ``Py_INCREF(x)`` et ``Py_DECREF(x)``, qui gèrent " +"l'incrémentation et la décrémentation du comptage de référence. :c:func:" +"`Py_DECREF` libère également l'objet lorsque le comptage atteint zéro. Pour " +"plus de flexibilité, il n'appelle pas :c:func:`free` directement — plutôt, " +"il fait un appel à travers un pointeur de fonction dans l'objet :dfn:`type " +"objet` de l'objet. À cette fin (et pour d'autres), chaque objet contient " +"également un pointeur vers son objet type." #: ../Doc/extending/extending.rst:934 msgid "" @@ -1082,6 +1220,16 @@ msgid "" "on, store it, or call :c:func:`Py_DECREF`. Forgetting to dispose of an owned " "reference creates a memory leak." msgstr "" +"La grande question demeure maintenant : quand utiliser ``Py_INCREF(x)`` et " +"``Py_DECREF(x)`` ? Commençons par définir quelques termes. Personne ne " +"possède un objet, mais vous pouvez en :dfn:`avoir une référence`. Le " +"comptage de références d'un objet est maintenant défini comme étant le " +"nombre de références à cet objet. Le propriétaire d'une référence est " +"responsable d'appeler :c:func:`Py_DECREF` lorsque la référence n'est plus " +"nécessaire. La propriété d'une référence peut être transférée. Il y a trois " +"façons de disposer d'une référence : la transmettre, la stocker, ou appeler :" +"c:func:`Py_DECREF`. Oublier de se débarrasser d'une référence crée une fuite " +"de mémoire." #: ../Doc/extending/extending.rst:943 msgid "" @@ -1102,6 +1250,14 @@ msgid "" "code a borrowed reference can be used after the owner from which it was " "borrowed has in fact disposed of it." msgstr "" +"L'avantage d'emprunter, plutôt qu'être propriétaire d'une référence est que " +"vous n'avez pas à vous soucier de disposer de la référence sur tous les " +"chemins possibles dans le code — en d'autres termes, avec une référence " +"empruntée, vous ne courez pas le risque de fuites lors d'une sortie " +"prématurée. L'inconvénient de l'emprunt par rapport à la possession est " +"qu'il existe certaines situations subtiles où, dans un code apparemment " +"correct, une référence empruntée peut être utilisée après que le " +"propriétaire auquel elle a été empruntée l'a en fait éliminée." #: ../Doc/extending/extending.rst:957 msgid "" @@ -1114,7 +1270,7 @@ msgstr "" #: ../Doc/extending/extending.rst:967 msgid "Ownership Rules" -msgstr "" +msgstr "Règles concernant la propriété de références" #: ../Doc/extending/extending.rst:969 msgid "" @@ -1122,6 +1278,10 @@ msgid "" "of the function's interface specification whether ownership is transferred " "with the reference or not." msgstr "" +"Chaque fois qu'une référence d'objet est passée à l'intérieur ou à " +"l'extérieur d'une fonction, elle fait partie de la spécification de " +"l'interface de la fonction, peu importe que la propriété soit transférée " +"avec la référence ou non." #: ../Doc/extending/extending.rst:973 msgid "" @@ -1181,7 +1341,7 @@ msgstr "" #: ../Doc/extending/extending.rst:1014 msgid "Thin Ice" -msgstr "" +msgstr "Terrain dangereux" #: ../Doc/extending/extending.rst:1016 msgid "" @@ -1190,6 +1350,10 @@ msgid "" "invocations of the interpreter, which can cause the owner of a reference to " "dispose of it." msgstr "" +"Il existe quelques situations où l'utilisation apparemment inoffensive d'une " +"référence empruntée peut entraîner des problèmes. Tous ces problèmes sont en " +"lien avec des invocations implicites de l’interpréteur, et peuvent amener le " +"propriétaire d'une référence à s'en défaire." #: ../Doc/extending/extending.rst:1020 msgid "" @@ -1197,6 +1361,9 @@ msgid "" "on an unrelated object while borrowing a reference to a list item. For " "instance::" msgstr "" +"Le premier cas, et le plus important à connaître, est celui de l'application " +"de :c:func:`Py_DECREF` à un objet non relié, tout en empruntant une " +"référence à un élément de liste. Par exemple ::" #: ../Doc/extending/extending.rst:1032 msgid "" @@ -1204,6 +1371,9 @@ msgid "" "``list[1]`` with the value ``0``, and finally prints the borrowed reference. " "Looks harmless, right? But it's not!" msgstr "" +"Cette fonction emprunte d'abord une référence à ``list[0]``, puis remplace " +"``list[1]`` par la valeur ``0``, et enfin affiche la référence empruntée. " +"Ça a l'air inoffensif, n'est-ce pas ? Mais ce n'est pas le cas !" #: ../Doc/extending/extending.rst:1036 msgid "" @@ -1214,6 +1384,13 @@ msgid "" "defined a :meth:`__del__` method. If this class instance has a reference " "count of 1, disposing of it will call its :meth:`__del__` method." msgstr "" +"Suivons le flux de contrôle dans :c:func:`PyList_SetItem`. La liste possède " +"des références à tous ses éléments, donc quand l'élément 1 est remplacé, " +"elle doit se débarrasser de l'élément 1 original. Supposons maintenant que " +"l'élément 1 original était une instance d'une classe définie par " +"l'utilisateur, et supposons en outre que la classe définisse une méthode :" +"meth:`__del__`. Si l'instance de cette classe a un nombre des références de " +"1, sa destruction appellera sa méthode :meth:`__del__`." #: ../Doc/extending/extending.rst:1043 msgid "" @@ -1225,6 +1402,13 @@ msgid "" "this was the last reference to that object, it would free the memory " "associated with it, thereby invalidating ``item``." msgstr "" +"Comme elle est écrite en Python, la méthode :meth:`__del__` peut exécuter du " +"code Python arbitraire. Pourrait-elle faire quelque chose pour invalider la " +"référence à ``item`` dans :c:func:`bug` ? Bien sûr ! En supposant que la " +"liste passée dans :c:func:`bug` est accessible à la méthode :meth:`__del__`, " +"elle pourrait exécuter une instruction à l'effet de ``del list[0]``, et en " +"supposant que ce soit la dernière référence à cet objet, elle libérerait la " +"mémoire qui lui est associée, invalidant ainsi ``item``." #: ../Doc/extending/extending.rst:1051 msgid "" @@ -1251,10 +1435,20 @@ msgid "" "complete. Obviously, the following function has the same problem as the " "previous one::" msgstr "" +"Le deuxième cas de problèmes liés à une référence empruntée est une variante " +"impliquant des fils de discussion. Normalement, plusieurs threads dans " +"l'interpréteur Python ne peuvent pas se gêner mutuellement, car il existe un " +"verrou global protégeant tout l'espace objet de Python. Cependant, il est " +"possible de libérer temporairement ce verrou en utilisant la macro :c:macro:" +"`Py_BEGIN_ALLOW_THREADS`, et de le ré-acquérir en utilisant :c:macro:" +"`Py_END_ALLOW_THREADS`. Ceci est un procédé courant pour bloquer les appels " +"d'entrées/sorties, afin de permettre aux autres threads d'utiliser le " +"processeur en attendant que les E/S soient terminées. Évidemment, la " +"fonction suivante a le même problème que la précédente ::" #: ../Doc/extending/extending.rst:1092 msgid "NULL Pointers" -msgstr "" +msgstr "Pointeurs ``NULL``" #: ../Doc/extending/extending.rst:1094 msgid "" @@ -1267,6 +1461,16 @@ msgid "" "``NULL``, there would be a lot of redundant tests and the code would run " "more slowly." msgstr "" +"En général, les fonctions qui prennent des références d'objets comme " +"arguments ne sont pas conçues pour recevoir des pointeurs ``NULL``, et si " +"vous en donnez comme arguments, elles causeront une erreur de segmentation " +"(ou provoqueront des *core dump* ultérieurs). Les fonctions qui renvoient " +"des références d'objets renvoient généralement ``NULL`` uniquement pour " +"indiquer qu'une exception s'est produite. La raison pour laquelle les " +"arguments ``NULL`` ne sont pas testés est que les fonctions passent souvent " +"les objets qu'elles reçoivent à d'autres fonctions, si chaque fonction " +"devait tester pour ``NULL``, il y aurait beaucoup de tests redondants et le " +"code s'exécuterait plus lentement." #: ../Doc/extending/extending.rst:1102 msgid "" @@ -1274,6 +1478,9 @@ msgid "" "that may be ``NULL`` is received, for example, from :c:func:`malloc` or from " "a function that may raise an exception." msgstr "" +"Il est préférable de tester la présence de ``NULL`` uniquement au début : " +"lorsqu'un pointeur qui peut être ``NULL`` est reçu, par exemple, de :c:func:" +"`malloc` ou d'une fonction qui peut lever une exception." #: ../Doc/extending/extending.rst:1106 msgid "" @@ -1281,6 +1488,9 @@ msgid "" "``NULL`` pointers --- however, their variants :c:func:`Py_XINCREF` and :c:" "func:`Py_XDECREF` do." msgstr "" +"Les macros :c:func:`Py_INCREF` et :c:func:`Py_DECREF` ne vérifient pas les " +"pointeurs ``NULL``. Cependant, leurs variantes :c:func:`Py_XINCREF` et :c:" +"func:`Py_XDECREF` le font." #: ../Doc/extending/extending.rst:1110 msgid "" @@ -1297,16 +1507,21 @@ msgid "" "C functions (``args`` in the examples) is never ``NULL`` --- in fact it " "guarantees that it is always a tuple [#]_." msgstr "" +"Le mécanisme d'appel de fonctions C garantit que la liste d'arguments passée " +"aux fonctions C (``args`` dans les exemples) n'est jamais ``NULL``. En fait, " +"il garantit qu'il s'agit toujours d'un n-uplet [#]_." #: ../Doc/extending/extending.rst:1120 msgid "" "It is a severe error to ever let a ``NULL`` pointer \"escape\" to the Python " "user." msgstr "" +"C'est une grave erreur de laisser un pointeur ``NULL`` \"échapper\" à " +"l'utilisateur Python." #: ../Doc/extending/extending.rst:1131 msgid "Writing Extensions in C++" -msgstr "" +msgstr "Écrire des extensions en C++" #: ../Doc/extending/extending.rst:1133 msgid "" @@ -1320,10 +1535,21 @@ msgid "" "`` --- they use this form already if the symbol ``__cplusplus`` is defined " "(all recent C++ compilers define this symbol)." msgstr "" +"C'est possible d'écrire des modules d'extension en C++, mais sous certaines " +"conditions. Si le programme principal (l'interpréteur Python) est compilé et " +"lié par le compilateur C, les objets globaux ou statiques avec les " +"constructeurs ne peuvent pas être utilisés. Ceci n'est pas un problème si le " +"programme principal est relié par le compilateur C++. Les fonctions qui " +"seront appelées par l'interpréteur Python (en particulier, les fonctions " +"d'initialisation des modules) doivent être déclarées en utilisant ``extern " +"\"C\"``. Il n'est pas nécessaire d'inclure les fichiers d'en-tête Python " +"dans le ``extern \"C\" {…}``, car ils utilisent déjà ce format si le symbole " +"``__cplusplus`` est défini (tous les compilateurs C++ récents définissent ce " +"symbole)." #: ../Doc/extending/extending.rst:1147 msgid "Providing a C API for an Extension Module" -msgstr "" +msgstr "Fournir une API en langage C pour un module d'extension" #: ../Doc/extending/extending.rst:1152 msgid "" @@ -1335,6 +1561,15 @@ msgid "" "create and manipulate lists, this new collection type should have a set of C " "functions for direct manipulation from other extension modules." msgstr "" +"De nombreux modules d'extension fournissent simplement de nouvelles " +"fonctions et de nouveaux types à utiliser à partir de Python, mais parfois " +"le code d'un module d'extension peut être utile pour d'autres modules " +"d'extension. Par exemple, un module d'extension peut mettre en œuvre un type " +"\"collection\" qui fonctionne comme des listes sans ordre. Tout comme le " +"type de liste Python standard possède une API C qui permet aux modules " +"d'extension de créer et de manipuler des listes, ce nouveau type de " +"collection devrait posséder un ensemble de fonctions C pour une manipulation " +"directe à partir d'autres modules d'extension." #: ../Doc/extending/extending.rst:1160 msgid "" @@ -1351,6 +1586,20 @@ msgid "" "if symbols are globally visible, the module whose functions one wishes to " "call might not have been loaded yet!" msgstr "" +"À première vue, cela semble facile : il suffit d'écrire les fonctions (sans " +"les déclarer \"statiques\", bien sûr), de fournir un fichier d'en-tête " +"approprié et de documenter l'API C. Et en fait, cela fonctionnerait si tous " +"les modules d'extension étaient toujours liés statiquement avec " +"l'interpréteur Python. Cependant, lorsque les modules sont utilisés comme " +"des bibliothèques partagées, les symboles définis dans un module peuvent ne " +"pas être visibles par un autre module. Les détails de la visibilité " +"dépendent du système d'exploitation ; certains systèmes utilisent un espace " +"de noms global pour l'interpréteur Python et tous les modules d'extension " +"(Windows, par exemple), tandis que d'autres exigent une liste explicite des " +"symboles importés au moment de la liaison des modules (AIX en est un " +"exemple), ou offrent un choix de stratégies différentes (la plupart des " +"*Unix*). Et même si les symboles sont globalement visibles, le module dont " +"on souhaite appeler les fonctions n'est peut-être pas encore chargé !" #: ../Doc/extending/extending.rst:1172 msgid "" @@ -1361,6 +1610,14 @@ msgid "" "section :ref:`methodtable`). And it means that symbols that *should* be " "accessible from other extension modules must be exported in a different way." msgstr "" +"La portabilité exige donc de ne faire aucune supposition sur la visibilité " +"des symboles. Cela signifie que tous les symboles des modules d'extension " +"doivent être déclarés ``static``, à l'exception de la fonction " +"d'initialisation du module, afin d'éviter les conflits de noms avec les " +"autres modules d'extension (comme discuté dans la section :ref:" +"`methodtable`). Et cela signifie que les symboles qui *devraient* être " +"accessibles à partir d'autres modules d'extension doivent être exportés " +"d'une manière différente." #: ../Doc/extending/extending.rst:1179 msgid "" @@ -1383,6 +1640,13 @@ msgid "" "distributed in different ways between the module providing the code and the " "client modules." msgstr "" +"Il existe de nombreuses façons d'utiliser les Capsules pour exporter l'API C " +"d'un module d'extension. Chaque fonction peut obtenir sa propre Capsule, ou " +"tous les pointeurs de l'API C peuvent être stockés dans un tableau dont " +"l'adresse est inscrite dans une Capsule. Et les différentes tâches de " +"stockage et de récupération des pointeurs peuvent être réparties de " +"différentes manières entre le module fournissant le code et les modules " +"clients." #: ../Doc/extending/extending.rst:1193 msgid "" @@ -1418,6 +1682,14 @@ msgid "" "takes care of importing the module and retrieving its C API pointers; client " "modules only have to call this macro before accessing the C API." msgstr "" +"L'exemple suivant montre une approche qui fait peser la plus grande partie " +"de la charge sur le rédacteur du module d'exportation, ce qui est approprié " +"pour les modules de bibliothèque couramment utilisés. Il stocke tous les " +"pointeurs de l'API C (un seul dans l'exemple !) dans un tableau de " +"pointeurs :c:type:`void` qui devient la valeur d'une Capsule. Le fichier " +"d'en-tête correspondant au module fournit une macro qui se charge d'importer " +"le module et de récupérer ses pointeurs d'API C. Les modules clients n'ont " +"qu'à appeler cette macro avant d'accéder à l'API C." #: ../Doc/extending/extending.rst:1218 msgid "" @@ -1428,6 +1700,13 @@ msgid "" "complicated in reality (such as adding \"spam\" to every command). This " "function :c:func:`PySpam_System` is also exported to other extension modules." msgstr "" +"Le module d'exportation est une modification du module :mod:`spam` de la " +"section :ref:`extending-simpleexample`. La fonction :func:`spam.system` " +"n'appelle pas directement la fonction de la bibliothèque C :c:func:`system`, " +"mais une fonction :c:func:`PySpam_System`, qui ferait bien sûr quelque chose " +"de plus compliqué en réalité (comme ajouter du *spam* à chaque commande). " +"Cette fonction :c:func:`PySpam_System` est également exportée vers d'autres " +"modules d'extension." #: ../Doc/extending/extending.rst:1225 msgid "" @@ -1437,15 +1716,15 @@ msgstr "" #: ../Doc/extending/extending.rst:1234 msgid "The function :c:func:`spam_system` is modified in a trivial way::" -msgstr "" +msgstr "La fonction :c:func:`spam_system` est modifiée de manière simple ::" #: ../Doc/extending/extending.rst:1248 msgid "In the beginning of the module, right after the line ::" -msgstr "" +msgstr "Au début du module, immédiatement après la ligne ::" #: ../Doc/extending/extending.rst:1252 msgid "two more lines must be added::" -msgstr "" +msgstr "on doit ajouter deux lignes supplémentaires ::" #: ../Doc/extending/extending.rst:1257 msgid "" @@ -1454,18 +1733,26 @@ msgid "" "initialization function must take care of initializing the C API pointer " "array::" msgstr "" +"L'indicateur ``#define`` est utilisé pour indiquer au fichier d'en-tête " +"qu'il est inclus dans le module d'exportation, et non dans un module client. " +"Enfin, la fonction d'initialisation du module doit prendre en charge " +"l'initialisation du tableau de pointeurs de l'API C ::" #: ../Doc/extending/extending.rst:1287 msgid "" "Note that ``PySpam_API`` is declared ``static``; otherwise the pointer array " "would disappear when :func:`PyInit_spam` terminates!" msgstr "" +"Notez que ``PySpam_API`` est déclaré ``static`` ; sinon le tableau de " +"pointeurs disparaîtrait lorsque :func:`PyInit_spam`` se finit !" #: ../Doc/extending/extending.rst:1290 msgid "" "The bulk of the work is in the header file :file:`spammodule.h`, which looks " "like this::" msgstr "" +"L'essentiel du travail se trouve dans le fichier d'en-tête :file:`spammodule." +"h`, qui ressemble à ceci ::" #: ../Doc/extending/extending.rst:1341 msgid "" @@ -1473,6 +1760,9 @@ msgid "" "func:`PySpam_System` is to call the function (or rather macro) :c:func:" "`import_spam` in its initialization function::" msgstr "" +"Tout ce qu'un module client doit faire pour avoir accès à la fonction :c:" +"func:`PySpam_System` est d'appeler la fonction (ou plutôt la macro) :c:func:" +"`import_spam` dans sa fonction d'initialisation ::" #: ../Doc/extending/extending.rst:1359 msgid "" @@ -1480,6 +1770,10 @@ msgid "" "is rather complicated. However, the basic structure is the same for each " "function that is exported, so it has to be learned only once." msgstr "" +"Le principal inconvénient de cette approche est que le fichier :file:" +"`spammodule.h` est assez compliqué. Cependant, la structure de base est la " +"même pour chaque fonction exportée, ce qui fait qu'elle ne doit être apprise " +"qu'une seule fois." #: ../Doc/extending/extending.rst:1363 msgid "" @@ -1490,6 +1784,13 @@ msgid "" "Capsules (files :file:`Include/pycapsule.h` and :file:`Objects/pycapsule.c` " "in the Python source code distribution)." msgstr "" +"Enfin, il convient de mentionner que Capsules offrent des fonctionnalités " +"supplémentaires, qui sont particulièrement utiles pour l'allocation de la " +"mémoire et la dés-allocation du pointeur stocké dans un objet Capsule. Les " +"détails sont décrits dans le manuel de référence de l'API Python/C dans la " +"section :ref:`capsules` et dans l'implémentation des Capsules (fichiers :" +"file:`Include/pycapsule.h` et :file:`Objects/pycapsule.c` dans la " +"distribution du code source Python)." #: ../Doc/extending/extending.rst:1371 msgid "Footnotes" @@ -1500,12 +1801,16 @@ msgid "" "An interface for this function already exists in the standard module :mod:" "`os` --- it was chosen as a simple and straightforward example." msgstr "" +"Une interface pour cette fonction existe déjà dans le module standard :mod:" +"`os`, elle a été choisie comme un exemple simple et direct." #: ../Doc/extending/extending.rst:1375 msgid "" "The metaphor of \"borrowing\" a reference is not completely correct: the " "owner still has a copy of the reference." msgstr "" +"L'expression « emprunter une référence » n'est pas tout à fait correcte, car " +"le propriétaire a toujours une copie de la référence." #: ../Doc/extending/extending.rst:1378 msgid "" @@ -1513,9 +1818,15 @@ msgid "" "reference count itself could be in freed memory and may thus be reused for " "another object!" msgstr "" +"Vérifier que le comptage de référence est d'au moins 1 **ne fonctionne " +"pas**, le compte de référence lui-même pourrait être en mémoire libérée et " +"peut donc être réutilisé pour un autre objet !" #: ../Doc/extending/extending.rst:1382 msgid "" "These guarantees don't hold when you use the \"old\" style calling " "convention --- this is still found in much existing code." msgstr "" +"Ces garanties ne sont pas valables lorsqu'on emploie les conventions de " +"nommage anciennes, qu'on retrouve encore assez souvent dans beaucoup de code " +"existant." diff --git a/extending/newtypes.po b/extending/newtypes.po index 11603ef0..345c257f 100644 --- a/extending/newtypes.po +++ b/extending/newtypes.po @@ -16,7 +16,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:7 msgid "Defining Extension Types: Assorted Topics" -msgstr "" +msgstr "Définir les types d'extension : divers sujets" #: ../Doc/extending/newtypes.rst:11 msgid "" @@ -68,16 +68,21 @@ msgid "" "Here you can put a string (or its address) that you want returned when the " "Python script references ``obj.__doc__`` to retrieve the doc string." msgstr "" +"Ici vous pouvez mettre une chaîne (ou son adresse) que vous voulez renvoyer " +"lorsque le script Python référence ``obj.__doc__`` pour récupérer le " +"*docstring*." #: ../Doc/extending/newtypes.rst:49 msgid "" "Now we come to the basic type methods -- the ones most extension types will " "implement." msgstr "" +"Nous en arrivons maintenant aux méthodes de type basiques -- celles que la " +"plupart des types d'extension mettront en œuvre." #: ../Doc/extending/newtypes.rst:54 msgid "Finalization and De-allocation" -msgstr "" +msgstr "Finalisation et de-allocation" #: ../Doc/extending/newtypes.rst:66 msgid "" @@ -125,11 +130,11 @@ msgstr "" #: ../Doc/extending/newtypes.rst:136 msgid ":pep:`442` explains the new finalization scheme." -msgstr "" +msgstr ":pep:`442` explique le nouveau schéma de finalisation." #: ../Doc/extending/newtypes.rst:143 msgid "Object Presentation" -msgstr "" +msgstr "Présentation de l'objet" #: ../Doc/extending/newtypes.rst:145 msgid "" @@ -165,11 +170,11 @@ msgstr "" #: ../Doc/extending/newtypes.rst:176 msgid "Here is a simple example::" -msgstr "" +msgstr "Voici un exemple simple ::" #: ../Doc/extending/newtypes.rst:188 msgid "Attribute Management" -msgstr "" +msgstr "Gestion des attributs" #: ../Doc/extending/newtypes.rst:190 msgid "" @@ -203,7 +208,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:219 msgid "Generic Attribute Management" -msgstr "" +msgstr "Gestion des attributs génériques" #: ../Doc/extending/newtypes.rst:221 msgid "" @@ -216,6 +221,8 @@ msgid "" "The name of the attributes must be known when :c:func:`PyType_Ready` is " "called." msgstr "" +"Le nom des attributs doivent être déjà connus lorsqu'on lance :c:func:" +"`PyType_Ready`." #: ../Doc/extending/newtypes.rst:227 msgid "" @@ -244,6 +251,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:241 msgid "The tables are declared as three fields of the type object::" msgstr "" +"Les tables sont déclarées sous la forme de trois champs de type objet ::" #: ../Doc/extending/newtypes.rst:247 msgid "" @@ -295,35 +303,35 @@ msgstr "Signification" #: ../Doc/extending/newtypes.rst:288 msgid ":const:`READONLY`" -msgstr "" +msgstr ":const:`READONLY`" #: ../Doc/extending/newtypes.rst:288 msgid "Never writable." -msgstr "" +msgstr "Jamais disponible en écriture." #: ../Doc/extending/newtypes.rst:290 msgid ":const:`READ_RESTRICTED`" -msgstr "" +msgstr ":const:`READ_RESTRICTED`" #: ../Doc/extending/newtypes.rst:290 msgid "Not readable in restricted mode." -msgstr "" +msgstr "Non disponible en lecture, dans le mode restreint." #: ../Doc/extending/newtypes.rst:292 msgid ":const:`WRITE_RESTRICTED`" -msgstr "" +msgstr ":const:`WRITE_RESTRICTED`" #: ../Doc/extending/newtypes.rst:292 msgid "Not writable in restricted mode." -msgstr "" +msgstr "Non disponible en écriture dans le mode restreint." #: ../Doc/extending/newtypes.rst:294 msgid ":const:`RESTRICTED`" -msgstr "" +msgstr ":const:`RESTRICTED`" #: ../Doc/extending/newtypes.rst:294 msgid "Not readable or writable in restricted mode." -msgstr "" +msgstr "Non disponible en lecture ou écriture, en mode restreint." #: ../Doc/extending/newtypes.rst:303 msgid "" @@ -334,6 +342,13 @@ msgid "" "the descriptor from the class object, and get the doc string using its :attr:" "`__doc__` attribute." msgstr "" +"Un avantage intéressant de l'utilisation de la table :c:member:" +"`~PyTypeObject.tp_members` pour construire les descripteurs qui sont " +"utilisés à l'exécution, est que à tout attribut défini de cette façon on " +"peut associer un *docstring*, en écrivant simplement le texte dans la table. " +"Une application peut utiliser l'API d'introspection pour récupérer le " +"descripteur de l'objet de classe, et utiliser son attribut :attr:`__doc__` " +"pour renvoyer le *docstring*." #: ../Doc/extending/newtypes.rst:309 msgid "" @@ -343,7 +358,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:323 msgid "Type-specific Attribute Management" -msgstr "" +msgstr "Gestion des attributs de type spécifiques" #: ../Doc/extending/newtypes.rst:325 msgid "" @@ -379,7 +394,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:367 msgid "Object Comparison" -msgstr "" +msgstr "Comparaison des objets" #: ../Doc/extending/newtypes.rst:373 msgid "" @@ -408,7 +423,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:416 msgid "Abstract Protocol Support" -msgstr "" +msgstr "Support pour le protocole abstrait" #: ../Doc/extending/newtypes.rst:418 msgid "" @@ -466,7 +481,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:472 msgid "This function takes three arguments:" -msgstr "" +msgstr "Cette fonction prend trois arguments :" #: ../Doc/extending/newtypes.rst:474 msgid "" @@ -491,7 +506,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:486 msgid "Here is a toy ``tp_call`` implementation::" -msgstr "" +msgstr "Ceci est une implémentation ``tp_call`` très simple ::" #: ../Doc/extending/newtypes.rst:512 msgid "" @@ -510,6 +525,10 @@ msgid "" "tp_iter` handler, which must return an :term:`iterator` object. Here the " "same guidelines apply as for Python classes:" msgstr "" +"Tout objet :term:`iterable` doit implémenter le gestionnaire :c:member:" +"`~PyTypeObject.tp_iter`, qui doit renvoyer un objet de type :term:" +"`iterator`. Ici, les mêmes directives s'appliquent de la même façon que " +"pour les classes *Python* :" #: ../Doc/extending/newtypes.rst:523 msgid "" @@ -517,6 +536,9 @@ msgid "" "independent iterators, a new iterator should be created and returned by each " "call to :c:member:`~PyTypeObject.tp_iter`." msgstr "" +"Pour les collections (telles que les listes et les n-uplets) qui peuvent " +"implémenter plusieurs itérateurs indépendants, un nouvel itérateur doit être " +"créé et renvoyé par chaque appel de type :c:member:`~PyTypeObject.tp_iter`." #: ../Doc/extending/newtypes.rst:526 msgid "" @@ -543,7 +565,7 @@ msgstr "" #: ../Doc/extending/newtypes.rst:547 msgid "Weak Reference Support" -msgstr "" +msgstr "Prise en charge de la référence faible" #: ../Doc/extending/newtypes.rst:549 msgid "" @@ -551,16 +573,22 @@ msgid "" "type to participate in the weak reference mechanism without incurring the " "overhead on performance-critical objects (such as numbers)." msgstr "" +"L'un des objectifs de l'implémentation de la référence faible de *Python* " +"est de permettre à tout type d'objet de participer au mécanisme de référence " +"faible sans avoir à supporter le surcoût de la performance critique des " +"certains objets, tels que les nombres." #: ../Doc/extending/newtypes.rst:554 msgid "Documentation for the :mod:`weakref` module." -msgstr "" +msgstr "Documentation pour le module :mod:`weakref`." #: ../Doc/extending/newtypes.rst:556 msgid "" "For an object to be weakly referencable, the extension type must do two " "things:" msgstr "" +"Pour qu'un objet soit faiblement référençable, le type d'extension doit " +"faire deux choses :" #: ../Doc/extending/newtypes.rst:558 msgid "" @@ -569,6 +597,10 @@ msgid "" "``NULL`` (which is automatic when using the default :c:member:`~PyTypeObject." "tp_alloc`)." msgstr "" +"Inclure un champ :c:type:`PyObject\\*` dans la structure d'objet C dédiée au " +"mécanisme de référence faible. Le constructeur de l'objet doit le laisser à " +"la valeur ``NULL`` (ce qui est automatique lorsque l'on utilise le champ par " +"défaut :c:member:`~PyTypeObject.tp_alloc`)." #: ../Doc/extending/newtypes.rst:563 msgid "" @@ -576,16 +608,23 @@ msgid "" "offset of the aforementioned field in the C object structure, so that the " "interpreter knows how to access and modify that field." msgstr "" +"Définissez le membre de type :c:member:`~PyTypeObject.tp_weaklistoffset` à " +"la valeur de décalage (*offset*) du champ susmentionné dans la structure de " +"l'objet *C*, afin que l'interpréteur sache comment accéder à ce champ et le " +"modifier." #: ../Doc/extending/newtypes.rst:567 msgid "" "Concretely, here is how a trivial object structure would be augmented with " "the required field::" msgstr "" +"Concrètement, voici comment une structure d'objet simple serait complétée " +"par le champ requis ::" #: ../Doc/extending/newtypes.rst:575 msgid "And the corresponding member in the statically-declared type object::" msgstr "" +"Et le membre correspondant dans l'objet de type déclaré statiquement ::" #: ../Doc/extending/newtypes.rst:583 msgid "" @@ -593,10 +632,13 @@ msgid "" "references (by calling :c:func:`PyObject_ClearWeakRefs`) if the field is non-" "``NULL``::" msgstr "" +"Le seul ajout supplémentaire est que ``tp_dealloc`` doit effacer toute " +"référence faible (en appelant :c:func:`PyObject_ClearWeakRefs`) si le champ " +"est non ``NULL`` ::" #: ../Doc/extending/newtypes.rst:599 msgid "More Suggestions" -msgstr "" +msgstr "Plus de suggestions" #: ../Doc/extending/newtypes.rst:601 msgid "" @@ -606,6 +648,12 @@ msgid "" "want (for example, ``tp_richcompare``). You will find examples of the " "function you want to implement." msgstr "" +"Pour savoir comment mettre en œuvre une méthode spécifique pour votre " +"nouveau type de données, téléchargez le code source :term:`CPython`. Allez " +"dans le répertoire :file:`Objects`, puis cherchez dans les fichiers sources " +"*C* la fonction ``tp_`` plus la fonction que vous voulez (par exemple, " +"``tp_richcompare``). Vous trouverez des exemples de la fonction que vous " +"voulez implémenter." #: ../Doc/extending/newtypes.rst:607 msgid "" @@ -613,23 +661,27 @@ msgid "" "you are implementing, use the :c:func:`PyObject_TypeCheck` function. A " "sample of its use might be something like the following::" msgstr "" +"Lorsque vous avez besoin de vérifier qu'un objet est une instance concrète " +"du type que vous implémentez, utilisez la fonction :c:func:" +"`PyObject_TypeCheck`. Voici un exemple de son utilisation ::" #: ../Doc/extending/newtypes.rst:618 msgid "Download CPython source releases." -msgstr "" +msgstr "Télécharger les versions sources de *CPython*." #: ../Doc/extending/newtypes.rst:618 msgid "https://www.python.org/downloads/source/" -msgstr "" +msgstr "https://www.python.org/downloads/source/" #: ../Doc/extending/newtypes.rst:620 msgid "" "The CPython project on GitHub, where the CPython source code is developed." msgstr "" +"Le projet *CPython* sur *GitHub*, où se trouve le code source *CPython*." #: ../Doc/extending/newtypes.rst:621 msgid "https://github.com/python/cpython" -msgstr "" +msgstr "https://github.com/python/cpython" #~ msgid "Footnotes" #~ msgstr "Notes" diff --git a/howto/clinic.po b/howto/clinic.po index 6e50a784..26594db6 100644 --- a/howto/clinic.po +++ b/howto/clinic.po @@ -17,7 +17,7 @@ msgstr "" #: ../Doc/howto/clinic.rst:5 msgid "Argument Clinic How-To" -msgstr "" +msgstr "Guide Argument Clinic" #: ../Doc/howto/clinic.rst:0 msgid "author" @@ -25,7 +25,7 @@ msgstr "auteur" #: ../Doc/howto/clinic.rst:7 msgid "Larry Hastings" -msgstr "" +msgstr "Larry Hastings" #: ../Doc/howto/clinic.rst:None msgid "Abstract" @@ -896,7 +896,7 @@ msgstr "" #: ../Doc/howto/clinic.rst:578 msgid "Renaming the C functions and variables generated by Argument Clinic" -msgstr "" +msgstr "Renommer les fonctions et variables C générées par Argument Clinic" #: ../Doc/howto/clinic.rst:580 msgid "" @@ -909,6 +909,14 @@ msgid "" "function, then add ``\"_impl\"`` to the end and use that for the name of the " "impl function." msgstr "" +"Argument Clinic nomme automatiquement les fonctions qu'il génère. Parfois, " +"cela peut poser des problèmes, si le nom généré entre en collision avec le " +"nom d'une fonction C existante. Il y a une solution simple : surcharger les " +"noms utilisés par les fonctions C. Ajoutez simplement le mot clef ``\"as\"`` " +"sur la ligne de la déclaration de la fonction, suivi par le nom de la " +"fonction que vous souhaitez utiliser. Argument Clinic utilisera ce nom de " +"fonction pour la fonction de base (celle générée), et ajoutera ``\"_impl\"`` " +"à la fin et utilisera ce nom pour la fonction ``impl``." #: ../Doc/howto/clinic.rst:588 msgid "" @@ -943,6 +951,8 @@ msgid "" "Here, the name used in Python (in the signature and the ``keywords`` array) " "would be ``file``, but the C variable would be named ``file_obj``." msgstr "" +"Ici, le nom utilisé en Python (dans la signature ainsi que le tableau des " +"``keywords``) sera ``file``, et la variable C s'appellera ``file_obj``." #: ../Doc/howto/clinic.rst:617 msgid "You can use this to rename the ``self`` parameter too!" @@ -960,6 +970,12 @@ msgid "" "appropriate. All arguments should be marked positional-only (add a ``/`` on " "a line by itself after the last argument)." msgstr "" +"Afin de convertir une fonction analysant ses arguments via :c:func:" +"`PyArg_UnpackTuple`, écrivez simplement tous les arguments, en les " +"spécifiant comme des ``object``. Vous pouvez spécifier également le ``type`` " +"d'argument afin de le forcer au type approprié. Tous les arguments devraient " +"être marqués comme seulement positionnels (ajoutez un ``/`` seul sur la " +"ligne après le dernier argument)." #: ../Doc/howto/clinic.rst:629 msgid "" @@ -983,6 +999,14 @@ msgid "" "optional arguments back before :c:func:`PyArg_ParseTupleAndKeywords` was " "created." msgstr "" +"Certaines fonctions de base ont une approche particulière pour analyser " +"leurs arguments : elles comptent le nombre d'arguments positionnels, puis " +"elles utilisent une condition ``switch`` basée sur le nombre d'arguments " +"présents pour appeler différentes :c:func:`PyArg_ParseTuple` disponibles " +"(ces fonctions ne peuvent pas avoir des arguments passés uniquement en tant " +"qu'arguments nommés). Cette approche était utilisée pour simuler des " +"arguments optionnels avant que :c:func:`PyArg_ParseTupleAndKeywords` ne soit " +"créée." #: ../Doc/howto/clinic.rst:642 msgid "" @@ -997,6 +1021,17 @@ msgid "" "the function passing in ``x``, you must also pass in ``y``—and if you don't " "pass in ``x`` you may not pass in ``y`` either.)" msgstr "" +"Alors que les fonctions utilisant cette approche peuvent normalement être " +"converties pour utiliser :c:func:`PyArg_ParseTupleAndKeywords`, des " +"arguments optionnels et des valeurs par défaut, ce n'est pas toujours " +"possible. Certaines fonctions classiques ne peuvent pas être gérées par :c:" +"func:`PyArg_ParseTupleAndKeywords`. L'exemple le plus évident est la " +"fonction native ``range()``, qui possède un argument optionnel à *gauche* de " +"ses arguments requis ! Un autre exemple est la fonction ``curses.window." +"addch()``, qui possède un groupe de deux arguments qui doivent toujours être " +"spécifiés ensemble (ces arguments s'appellent ``x`` et ``y`` ; si vous " +"appelez la fonction en passant ``x``, vous devez passer ``y`` et si vous ne " +"passez pas ``x``, vous ne devez pas passer ``y`` non plus)." #: ../Doc/howto/clinic.rst:654 msgid "" @@ -1007,6 +1042,14 @@ msgid "" "all be passed in together. They can be to the left or the right of the " "required arguments. They can *only* be used with positional-only parameters." msgstr "" +"Dans tous les cas, le but d'Argument Clinic est de prendre en charge " +"l'analyse des arguments pour toutes les fonctions natives de CPython sans " +"avoir besoin de les modifier. C'est pourquoi Argument Clinic propose cette " +"autre approche pour l'analyse, en utilisant ce qu'on appelle les *groupes " +"optionnels*. Les groupes optionnels sont des groupes d'arguments qui doivent " +"tous être transmis ensemble. Ils peuvent être situés à droite ou à gauche " +"des arguments requis. Ils ne peuvent être utilisés *seulement* qu'en tant " +"que paramètres positionnels." #: ../Doc/howto/clinic.rst:662 msgid "" @@ -1018,6 +1061,14 @@ msgid "" "doesn't understand the concept. Please avoid using optional groups wherever " "possible." msgstr "" +"Les groupes optionnels sont *uniquement* prévus pour convertir les fonctions " +"faisant des appels multiples à :c:func:`PyArg_ParseTuple` ! Les fonctions " +"qui utilisent *au moins une* des autres approches ne doivent *presque " +"jamais* être converties à Argument Clinic en utilisant les groupes " +"optionnels. Les fonctions utilisant ces groupes n'ont pas actuellement de " +"signature précise en Python, parce que celui-ci ne peut simplement pas " +"comprendre ce concept. Tâchez d'éviter au maximum d'utiliser ces groupes " +"optionnels si possible." #: ../Doc/howto/clinic.rst:671 msgid "" @@ -1027,6 +1078,11 @@ msgid "" "optional groups to make the first two parameters and the last parameter " "optional::" msgstr "" +"Afin de signaler un groupe optionnel, ajoutez un ``[`` seul sur une ligne " +"avant les paramètres que vous souhaitez inclure dans le groupe, puis un " +"``]`` seul sur une ligne après ces paramètres. Voici, par exemple, comment " +"``curses.window.addch`` utilise les groupes optionnels pour rendre optionnel " +"les deux premiers paramètres ainsi que le dernier :" #: ../Doc/howto/clinic.rst:700 msgid "Notes:" @@ -1044,6 +1100,16 @@ msgid "" "was unused, and set to non-zero if this group was used. (By used or unused, " "I mean whether or not the parameters received arguments in this invocation.)" msgstr "" +"Pour chaque groupe optionnel, un paramètre additionnel sera passé à la " +"fonction ``impl`` représentant le groupe. Ce paramètre sera un entier nommé " +"``group_{direction}_{number}``, où ``{direction}`` peut être soit ``right`` " +"ou ``left`` suivant que le groupe est situé avant ou après les paramètres " +"requis, et ``{number}`` sera un entier incrémenté (débutant à 1) indiquant " +"la distance entre le groupe et les paramètres requis. Quand la fonction " +"``impl`` est appelée, ce paramètre est positionné à zéro si le groupe n'a " +"pas été utilisé, et positionné à un nombre entier positif sinon (par " +"inutilisé, on entend que les paramètres n'ont pas reçu de valeur lors de cet " +"appel)." #: ../Doc/howto/clinic.rst:713 msgid "" @@ -1058,10 +1124,13 @@ msgid "" "In the case of ambiguity, the argument parsing code favors parameters on the " "left (before the required parameters)." msgstr "" +"En cas d'ambiguïté, le code d'analyse des arguments favorise ceux situés à " +"gauche (avant les paramètres obligatoires)." #: ../Doc/howto/clinic.rst:719 msgid "Optional groups can only contain positional-only parameters." msgstr "" +"Les groupes optionnels ne peuvent contenir que des arguments positionnels." #: ../Doc/howto/clinic.rst:721 msgid "" @@ -1074,6 +1143,8 @@ msgstr "" #: ../Doc/howto/clinic.rst:726 msgid "Using real Argument Clinic converters, instead of \"legacy converters\"" msgstr "" +"Utilisation des adaptateurs d'Argument Clinic, en lieu et place des " +"« adaptateurs de base »" #: ../Doc/howto/clinic.rst:728 msgid "" @@ -1083,17 +1154,25 @@ msgid "" "explicitly to make porting existing code to Argument Clinic easier. And to " "be clear, their use is acceptable when porting code for Python 3.4." msgstr "" +"Afin de gagner du temps, et pour minimiser la courbe d'apprentissage pour " +"pouvoir utiliser Argument Clinic, le guide ci-dessus préconise les " +"« adaptateurs de base ». Ceux-ci sont un moyen simple conçu pour porter " +"facilement du code existant sous Argument Clinic. Et pour être clair, leur " +"utilisation est tout à fait acceptable pour porter du code Python 3.4." #: ../Doc/howto/clinic.rst:735 msgid "" "However, in the long term we probably want all our blocks to use Argument " "Clinic's real syntax for converters. Why? A couple reasons:" msgstr "" +"Cependant, sur le long terme, il est certainement préférable que tous vos " +"blocs utilisent la syntaxe réelle des adaptateurs d'Argument Clinic. " +"Pourquoi ? Voici quelques raisons :" #: ../Doc/howto/clinic.rst:739 msgid "" "The proper converters are far easier to read and clearer in their intent." -msgstr "" +msgstr "Les adaptateurs sont plus simples et plus clairs." #: ../Doc/howto/clinic.rst:740 msgid "" @@ -1101,6 +1180,9 @@ msgid "" "because they require arguments, and the legacy converter syntax doesn't " "support specifying arguments." msgstr "" +"Il existe des formats qui ne sont pas gérés par les « adaptateurs de base », " +"parce qu'ils nécessitent des arguments, et la syntaxe de ces adaptateurs ne " +"supporte pas cela." #: ../Doc/howto/clinic.rst:743 msgid "" @@ -1108,12 +1190,18 @@ msgid "" "restricted to what :c:func:`PyArg_ParseTuple` supports; this flexibility " "won't be available to parameters using legacy converters." msgstr "" +"Dans le futur, on pourrait avoir une nouvelle bibliothèque d'analyse des " +"arguments qui ne serait pas limitée à ce que :c:func:`PyArg_ParseTuple` " +"accepte ; cette flexibilité ne serait pas accessible aux paramètres " +"utilisant des adaptateurs de base." #: ../Doc/howto/clinic.rst:747 msgid "" "Therefore, if you don't mind a little extra effort, please use the normal " "converters instead of legacy converters." msgstr "" +"Ainsi, si vous n'êtes pas contre un petit effort supplémentaire, vous " +"devriez utiliser les adaptateurs normaux plutôt que ceux de base." #: ../Doc/howto/clinic.rst:750 msgid "" @@ -1122,16 +1210,22 @@ msgid "" "the function (all functions take their default values), you may omit the " "parentheses. Thus ``bool`` and ``bool()`` are exactly the same converters." msgstr "" +"En bref, la syntaxe des adaptateurs d'Argument Clinic ressemble à un appel " +"de fonction Python. Mais, s'il n'y a pas d'argument explicite à la fonction " +"(celle-ci utilisant ses valeurs par défaut), vous pouvez omettre les " +"parenthèses. Ainsi ``bool`` et ``bool()`` représentent le même adaptateur." #: ../Doc/howto/clinic.rst:756 msgid "" "All arguments to Argument Clinic converters are keyword-only. All Argument " "Clinic converters accept the following arguments:" msgstr "" +"Tous les arguments passés aux adaptateurs d'Argument Clinic sont nommés. " +"Tous les adaptateurs d'Argument Clinic acceptent les arguments suivants :" #: ../Doc/howto/clinic.rst:764 ../Doc/howto/clinic.rst:1252 msgid "``c_default``" -msgstr "" +msgstr "``c_default``" #: ../Doc/howto/clinic.rst:760 msgid "" @@ -1140,26 +1234,35 @@ msgid "" "\". See :ref:`the section on default values ` for how to " "use this. Specified as a string." msgstr "" +"La valeur par défaut de cet argument lorsqu'il est défini en C. Typiquement, " +"il servira à initialiser la variable déclarée dans la « fonction " +"d'analyse ». Voir la section relative aux :ref:`valeurs par défaut " +"` pour apprendre à l'utiliser. Spécifié en tant que chaîne " +"de caractères." #: ../Doc/howto/clinic.rst:769 msgid "``annotation``" -msgstr "" +msgstr "``annotation``" #: ../Doc/howto/clinic.rst:767 msgid "" "The annotation value for this parameter. Not currently supported, because :" "pep:`8` mandates that the Python library may not use annotations." msgstr "" +"La valeur annotée pour ce paramètre. Actuellement non géré, car la :pep:`8` " +"exige que les bibliothèques Python n'utilisent pas d'annotations." #: ../Doc/howto/clinic.rst:771 msgid "" "In addition, some converters accept additional arguments. Here is a list of " "these arguments, along with their meanings:" msgstr "" +"De plus, certains adaptateurs acceptent des arguments additionnels. Voici la " +"liste de ces arguments, avec leur explication :" #: ../Doc/howto/clinic.rst:780 msgid "``accept``" -msgstr "" +msgstr "``accept``" #: ../Doc/howto/clinic.rst:775 msgid "" @@ -1168,14 +1271,18 @@ msgid "" "purpose facility; as a rule it only supports specific lists of types as " "shown in the legacy converter table.)" msgstr "" +"Un ensemble de types Python (et potentiellement des pseudo-types) ; cela " +"restreint l'argument Python autorisé aux valeurs de ces types (ce n'est pas " +"destiné à une utilisation généralisée ; en fait, il gère seulement les types " +"listés dans la table des adaptateurs de base)." #: ../Doc/howto/clinic.rst:780 msgid "To accept ``None``, add ``NoneType`` to this set." -msgstr "" +msgstr "Pour accepter ``None``, ajouter ``NoneType`` à cet ensemble." #: ../Doc/howto/clinic.rst:785 msgid "``bitwise``" -msgstr "" +msgstr "``bitwise``" #: ../Doc/howto/clinic.rst:783 msgid "" @@ -1183,10 +1290,13 @@ msgid "" "Python argument will be written to the parameter without any range checking, " "even for negative values." msgstr "" +"Autorisé seulement pour les entiers non signés. La valeur native de cet " +"argument Python sera transcrite dans le paramètre sans aucune vérification " +"de plage, même pour des valeurs négatives." #: ../Doc/howto/clinic.rst:790 ../Doc/howto/clinic.rst:1266 msgid "``converter``" -msgstr "" +msgstr "``converter``" #: ../Doc/howto/clinic.rst:788 msgid "" @@ -1194,6 +1304,9 @@ msgid "" "\"converter function\" ` to use to convert this object to a " "native type." msgstr "" +"Autorisé seulement pour l'adaptateur ``object``. Spécifie le nom d'une :ref:" +"`« fonction de conversion » depuis C ` à utiliser pour " +"convertir cet objet en type natif." #: ../Doc/howto/clinic.rst:795 msgid "``encoding``" @@ -1204,16 +1317,21 @@ msgid "" "Only supported for strings. Specifies the encoding to use when converting " "this string from a Python str (Unicode) value into a C ``char *`` value." msgstr "" +"Autorisé seulement pour les chaînes de caractères. Spécifie l'encodage à " +"utiliser lors de la conversion de cette chaîne depuis une valeur de type " +"Python ``str`` (Unicode) en valeur C ``char *``." #: ../Doc/howto/clinic.rst:799 msgid "``subclass_of``" -msgstr "" +msgstr "``subclass_of``" #: ../Doc/howto/clinic.rst:798 msgid "" "Only supported for the ``object`` converter. Requires that the Python value " "be a subclass of a Python type, as expressed in C." msgstr "" +"Autorisé seulement pour l'adaptateur ``object``. Nécessite que la valeur " +"Python soit une sous-classe d'un type Python, telle qu'exprimée en C." #: ../Doc/howto/clinic.rst:804 ../Doc/howto/clinic.rst:1238 msgid "``type``" @@ -1225,10 +1343,13 @@ msgid "" "type that will be used to declare the variable. Default value is ``" "\"PyObject *\"``." msgstr "" +"Autorisé seulement pour les adaptateurs ``object`` et ``self``. Spécifie le " +"type C qui sera utilisé pour déclarer la variable. La valeur par défaut est " +"``\"PyObject *\"``." #: ../Doc/howto/clinic.rst:810 msgid "``zeroes``" -msgstr "" +msgstr "``zeroes``" #: ../Doc/howto/clinic.rst:807 msgid "" @@ -1237,6 +1358,10 @@ msgid "" "the impl function, just after the string parameter, as a parameter named " "``_length``." msgstr "" +"Autorisé seulement pour les chaînes de caractères. Si vrai, les octets NUL " +"(``'\\\\0'``) sont permis au sein de la valeur. La taille de la chaîne sera " +"passée à la fonction ``impl``, juste après le paramètre chaîne, en tant que " +"paramètre nommé ``_length``." #: ../Doc/howto/clinic.rst:812 msgid "" @@ -1248,6 +1373,14 @@ msgid "" "any existing format unit. So Argument Clinic doesn't support it. (Or, at " "least, not yet.)" msgstr "" +"Attention de bien noter que toutes les combinaisons d'arguments ne " +"fonctionnent pas. Normalement, ces arguments sont mis en place via des " +"*formats* ``PyArg_ParseTuple`` au comportement spécifique. Par exemple, à " +"l'heure actuelle vous ne pouvez pas appeler ``unsigned_short`` sans " +"spécifier également ``bitwise=True``. Bien qu'il soit parfaitement " +"raisonnable de penser que ça puisse fonctionner, cette écriture ne " +"correspond à aucun format. Donc Argument Clinic ne le gère pas (en tous cas, " +"pas pour le moment)." #: ../Doc/howto/clinic.rst:820 msgid "" @@ -1255,6 +1388,9 @@ msgid "" "Clinic converters. On the left is the legacy converter, on the right is the " "text you'd replace it with." msgstr "" +"Vous pouvez voir, ci-dessous, une table présentant la correspondance entre " +"les adaptateurs de base et ceux d'Argument Clinic. À gauche, sont listés les " +"adaptateurs de base et, à droite, le texte qui les remplace." #: ../Doc/howto/clinic.rst:825 msgid "``'B'``" @@ -1262,7 +1398,7 @@ msgstr "``'B'``" #: ../Doc/howto/clinic.rst:825 msgid "``unsigned_char(bitwise=True)``" -msgstr "" +msgstr "``unsigned_char(bitwise=True)``" #: ../Doc/howto/clinic.rst:826 msgid "``'b'``" @@ -1270,7 +1406,7 @@ msgstr "``'b'``" #: ../Doc/howto/clinic.rst:826 msgid "``unsigned_char``" -msgstr "" +msgstr "``unsigned_char``" #: ../Doc/howto/clinic.rst:827 msgid "``'c'``" @@ -1278,15 +1414,15 @@ msgstr "``'c'``" #: ../Doc/howto/clinic.rst:827 msgid "``char``" -msgstr "" +msgstr "``char``" #: ../Doc/howto/clinic.rst:828 msgid "``'C'``" -msgstr "" +msgstr "``'C'``" #: ../Doc/howto/clinic.rst:828 msgid "``int(accept={str})``" -msgstr "" +msgstr "``int(accept={str})``" #: ../Doc/howto/clinic.rst:829 msgid "``'d'``" @@ -1294,7 +1430,7 @@ msgstr "``'d'``" #: ../Doc/howto/clinic.rst:829 msgid "``double``" -msgstr "" +msgstr "``double``" #: ../Doc/howto/clinic.rst:830 msgid "``'D'``" @@ -1302,41 +1438,43 @@ msgstr "``'D'``" #: ../Doc/howto/clinic.rst:830 msgid "``Py_complex``" -msgstr "" +msgstr "``Py_complex``" #: ../Doc/howto/clinic.rst:831 msgid "``'es'``" -msgstr "" +msgstr "``'es'``" #: ../Doc/howto/clinic.rst:831 msgid "``str(encoding='name_of_encoding')``" -msgstr "" +msgstr "``str(encoding='name_of_encoding')``" #: ../Doc/howto/clinic.rst:832 msgid "``'es#'``" -msgstr "" +msgstr "``'es#'``" #: ../Doc/howto/clinic.rst:832 msgid "``str(encoding='name_of_encoding', zeroes=True)``" -msgstr "" +msgstr "``str(encoding='name_of_encoding', zeroes=True)``" #: ../Doc/howto/clinic.rst:833 msgid "``'et'``" -msgstr "" +msgstr "``'et'``" #: ../Doc/howto/clinic.rst:833 msgid "``str(encoding='name_of_encoding', accept={bytes, bytearray, str})``" -msgstr "" +msgstr "``str(encoding='name_of_encoding', accept={bytes, bytearray, str})``" #: ../Doc/howto/clinic.rst:834 msgid "``'et#'``" -msgstr "" +msgstr "``'et#'``" #: ../Doc/howto/clinic.rst:834 msgid "" "``str(encoding='name_of_encoding', accept={bytes, bytearray, str}, " "zeroes=True)``" msgstr "" +"``str(encoding='name_of_encoding', accept={bytes, bytearray, str}, " +"zeroes=True)``" #: ../Doc/howto/clinic.rst:835 msgid "``'f'``" @@ -1344,7 +1482,7 @@ msgstr "``'f'``" #: ../Doc/howto/clinic.rst:835 msgid "``float``" -msgstr "" +msgstr "``float``" #: ../Doc/howto/clinic.rst:836 msgid "``'h'``" @@ -1352,7 +1490,7 @@ msgstr "``'h'``" #: ../Doc/howto/clinic.rst:836 msgid "``short``" -msgstr "" +msgstr "``short``" #: ../Doc/howto/clinic.rst:837 msgid "``'H'``" @@ -1360,7 +1498,7 @@ msgstr "``'H'``" #: ../Doc/howto/clinic.rst:837 msgid "``unsigned_short(bitwise=True)``" -msgstr "" +msgstr "``unsigned_short(bitwise=True)``" #: ../Doc/howto/clinic.rst:838 msgid "``'i'``" @@ -1376,23 +1514,23 @@ msgstr "``'I'``" #: ../Doc/howto/clinic.rst:839 msgid "``unsigned_int(bitwise=True)``" -msgstr "" +msgstr "``unsigned_int(bitwise=True)``" #: ../Doc/howto/clinic.rst:840 msgid "``'k'``" -msgstr "" +msgstr "``'k'``" #: ../Doc/howto/clinic.rst:840 msgid "``unsigned_long(bitwise=True)``" -msgstr "" +msgstr "``unsigned_long(bitwise=True)``" #: ../Doc/howto/clinic.rst:841 msgid "``'K'``" -msgstr "" +msgstr "``'K'``" #: ../Doc/howto/clinic.rst:841 msgid "``unsigned_long_long(bitwise=True)``" -msgstr "" +msgstr "``unsigned_long_long(bitwise=True)``" #: ../Doc/howto/clinic.rst:842 msgid "``'l'``" @@ -1408,7 +1546,7 @@ msgstr "``'L'``" #: ../Doc/howto/clinic.rst:843 msgid "``long long``" -msgstr "" +msgstr "``long long``" #: ../Doc/howto/clinic.rst:844 msgid "``'n'``" @@ -1416,39 +1554,39 @@ msgstr "``'n'``" #: ../Doc/howto/clinic.rst:844 msgid "``Py_ssize_t``" -msgstr "" +msgstr "``Py_ssize_t``" #: ../Doc/howto/clinic.rst:845 msgid "``'O'``" -msgstr "" +msgstr "``'O'``" #: ../Doc/howto/clinic.rst:845 msgid "``object``" -msgstr "" +msgstr "``object``" #: ../Doc/howto/clinic.rst:846 msgid "``'O!'``" -msgstr "" +msgstr "``'O!'``" #: ../Doc/howto/clinic.rst:846 msgid "``object(subclass_of='&PySomething_Type')``" -msgstr "" +msgstr "``object(subclass_of='&PySomething_Type')``" #: ../Doc/howto/clinic.rst:847 msgid "``'O&'``" -msgstr "" +msgstr "``'O&'``" #: ../Doc/howto/clinic.rst:847 msgid "``object(converter='name_of_c_function')``" -msgstr "" +msgstr "``object(converter='name_of_c_function')``" #: ../Doc/howto/clinic.rst:848 msgid "``'p'``" -msgstr "" +msgstr "``'p'``" #: ../Doc/howto/clinic.rst:848 msgid "``bool``" -msgstr "" +msgstr "``bool``" #: ../Doc/howto/clinic.rst:849 msgid "``'S'``" @@ -1456,7 +1594,7 @@ msgstr "``'S'``" #: ../Doc/howto/clinic.rst:849 msgid "``PyBytesObject``" -msgstr "" +msgstr "``PyBytesObject``" #: ../Doc/howto/clinic.rst:850 msgid "``'s'``" @@ -1464,23 +1602,23 @@ msgstr "``'s'``" #: ../Doc/howto/clinic.rst:850 msgid "``str``" -msgstr "" +msgstr "``str``" #: ../Doc/howto/clinic.rst:851 msgid "``'s#'``" -msgstr "" +msgstr "``'s#'``" #: ../Doc/howto/clinic.rst:851 msgid "``str(zeroes=True)``" -msgstr "" +msgstr "``str(zeroes=True)``" #: ../Doc/howto/clinic.rst:852 msgid "``'s*'``" -msgstr "" +msgstr "``'s*'``" #: ../Doc/howto/clinic.rst:852 msgid "``Py_buffer(accept={buffer, str})``" -msgstr "" +msgstr "``Py_buffer(accept={buffer, str})``" #: ../Doc/howto/clinic.rst:853 msgid "``'U'``" @@ -1488,7 +1626,7 @@ msgstr "``'U'``" #: ../Doc/howto/clinic.rst:853 msgid "``unicode``" -msgstr "" +msgstr "``unicode``" #: ../Doc/howto/clinic.rst:854 msgid "``'u'``" @@ -1496,101 +1634,103 @@ msgstr "``'u'``" #: ../Doc/howto/clinic.rst:854 msgid "``Py_UNICODE``" -msgstr "" +msgstr "``Py_UNICODE``" #: ../Doc/howto/clinic.rst:855 msgid "``'u#'``" -msgstr "" +msgstr "``'u#'``" #: ../Doc/howto/clinic.rst:855 msgid "``Py_UNICODE(zeroes=True)``" -msgstr "" +msgstr "``Py_UNICODE(zeroes=True)``" #: ../Doc/howto/clinic.rst:856 msgid "``'w*'``" -msgstr "" +msgstr "``'w*'``" #: ../Doc/howto/clinic.rst:856 msgid "``Py_buffer(accept={rwbuffer})``" -msgstr "" +msgstr "``Py_buffer(accept={rwbuffer})``" #: ../Doc/howto/clinic.rst:857 msgid "``'Y'``" -msgstr "" +msgstr "``'Y'``" #: ../Doc/howto/clinic.rst:857 msgid "``PyByteArrayObject``" -msgstr "" +msgstr "``PyByteArrayObject``" #: ../Doc/howto/clinic.rst:858 msgid "``'y'``" -msgstr "" +msgstr "``'y'``" #: ../Doc/howto/clinic.rst:858 msgid "``str(accept={bytes})``" -msgstr "" +msgstr "``str(accept={bytes})``" #: ../Doc/howto/clinic.rst:859 msgid "``'y#'``" -msgstr "" +msgstr "``'y#'``" #: ../Doc/howto/clinic.rst:859 msgid "``str(accept={robuffer}, zeroes=True)``" -msgstr "" +msgstr "``str(accept={robuffer}, zeroes=True)``" #: ../Doc/howto/clinic.rst:860 msgid "``'y*'``" -msgstr "" +msgstr "``'y*'``" #: ../Doc/howto/clinic.rst:860 msgid "``Py_buffer``" -msgstr "" +msgstr "``Py_buffer``" #: ../Doc/howto/clinic.rst:861 msgid "``'Z'``" -msgstr "" +msgstr "``'Z'``" #: ../Doc/howto/clinic.rst:861 msgid "``Py_UNICODE(accept={str, NoneType})``" -msgstr "" +msgstr "``Py_UNICODE(accept={str, NoneType})``" #: ../Doc/howto/clinic.rst:862 msgid "``'Z#'``" -msgstr "" +msgstr "``'Z#'``" #: ../Doc/howto/clinic.rst:862 msgid "``Py_UNICODE(accept={str, NoneType}, zeroes=True)``" -msgstr "" +msgstr "``Py_UNICODE(accept={str, NoneType}, zeroes=True)``" #: ../Doc/howto/clinic.rst:863 msgid "``'z'``" -msgstr "" +msgstr "``'z'``" #: ../Doc/howto/clinic.rst:863 msgid "``str(accept={str, NoneType})``" -msgstr "" +msgstr "``str(accept={str, NoneType})``" #: ../Doc/howto/clinic.rst:864 msgid "``'z#'``" -msgstr "" +msgstr "``'z#'``" #: ../Doc/howto/clinic.rst:864 msgid "``str(accept={str, NoneType}, zeroes=True)``" -msgstr "" +msgstr "``str(accept={str, NoneType}, zeroes=True)``" #: ../Doc/howto/clinic.rst:865 msgid "``'z*'``" -msgstr "" +msgstr "``'z*'``" #: ../Doc/howto/clinic.rst:865 msgid "``Py_buffer(accept={buffer, str, NoneType})``" -msgstr "" +msgstr "``Py_buffer(accept={buffer, str, NoneType})``" #: ../Doc/howto/clinic.rst:868 msgid "" "As an example, here's our sample ``pickle.Pickler.dump`` using the proper " "converter::" msgstr "" +"Par exemple, voici notre code ``pickle.Pickler.dump`` via l'adaptateur " +"approprié ::" #: ../Doc/howto/clinic.rst:881 msgid "" @@ -1600,6 +1740,11 @@ msgid "" "default behavior performs range checking on the value, and they won't accept " "negative numbers. You just can't do that with a legacy converter!" msgstr "" +"Un avantage des adaptateurs réels est qu'ils sont plus flexibles que les " +"adaptateurs de base. Par exemple, l'adaptateur ``unsigned_int`` (ainsi que " +"tous les adaptateurs ``unsigned_``) peut être utilisé sans ``bitwise=True``. " +"Leur comportement par défaut contrôle la valeur, et n'acceptera pas de " +"nombres négatifs. On ne peut pas faire ça avec les adaptateurs de base !" #: ../Doc/howto/clinic.rst:887 msgid "" @@ -1608,10 +1753,14 @@ msgid "" "default value for each parameter. Just run ``Tools/clinic/clinic.py --" "converters`` to see the full list." msgstr "" +"Argument Clinic sait lister tous les adaptateurs disponibles. Pour chaque " +"adaptateur, il vous liste également l'ensemble des paramètres qu'ils " +"acceptent, ainsi que les valeurs par défaut de chacun. Utilisez simplement " +"la commande ``Tools/clinic/clinic.py --converters`` pour afficher la liste." #: ../Doc/howto/clinic.rst:893 msgid "Py_buffer" -msgstr "" +msgstr "Py_buffer" #: ../Doc/howto/clinic.rst:895 msgid "" @@ -1620,16 +1769,23 @@ msgid "" "`PyBuffer_Release` on the provided buffer. Argument Clinic generates code " "that does it for you (in the parsing function)." msgstr "" +"Lorsque vous utilisez l'adaptateur ``Py_buffer`` (ou bien les adaptateurs de " +"base ``'s*'``, ``'w*'``, ``'*y'``, ou ``'z*'``), vous *ne devez pas* " +"appeler :c:func:`PyBuffer_Release` sur le tampon fourni. Argument Clinic " +"génère du code qui le fait pour vous (dans la fonction d'analyse)." #: ../Doc/howto/clinic.rst:903 msgid "Advanced converters" -msgstr "" +msgstr "Adaptateurs avancés" #: ../Doc/howto/clinic.rst:905 msgid "" "Remember those format units you skipped for your first time because they " "were advanced? Here's how to handle those too." msgstr "" +"Vous vous souvenez de ces spécifications de format que vous avez laissées de " +"côté la première fois parce qu'il s'agissait de notions avancées ? Voici " +"comment les utiliser." #: ../Doc/howto/clinic.rst:908 msgid "" @@ -1641,6 +1797,14 @@ msgid "" "``O&``), ``subclass_of`` (for ``O!``), or ``encoding`` (for all the format " "units that start with ``e``)." msgstr "" +"L'astuce est que toutes ces spécifications de format acceptent des arguments " +"— aussi bien des fonctions de conversion que des types, ou des chaînes " +"spécifiant un encodage. (mais les « adaptateurs de base » ne gèrent pas les " +"arguments. C'est pourquoi nous les avions laissés de côté pour votre " +"première fonction.) L'argument que vous aviez spécifié à la spécification de " +"format est désormais un argument du convertisseur ; cet argument est soit " +"``converter`` (pour ``O&``), ``subclass_of`` (pour ``O!``), ou ``encoding`` " +"(pour toutes les spécifications de format qui commencent par ``e``)." #: ../Doc/howto/clinic.rst:916 msgid "" @@ -1650,6 +1814,12 @@ msgid "" "is a subclass of ``PyUnicode_Type``, you probably want to use the converter " "``object(type='PyUnicodeObject *', subclass_of='&PyUnicode_Type')``." msgstr "" +"Lorsque vous utilisez ``subclass_of``, vous pouvez également vouloir " +"utiliser les autres arguments usuels pour ``object()`` : ``type``, qui vous " +"laisse spécifier le type à utiliser pour l'argument. Par exemple, si vous " +"voulez vous assurer que l'objet est une sous-classe de ``PyUnicode_Type``, " +"vous utiliserez probablement le convertisseur ``object(type='PyUnicodeObject " +"*', subclass_of='&PyUnicode_Type')``." #: ../Doc/howto/clinic.rst:922 msgid "" @@ -1663,30 +1833,46 @@ msgid "" "unreasonable; CPython itself always passes in static hard-coded encoding " "strings for parameters whose format units start with ``e``." msgstr "" +"Mentionnons un problème potentiel d'utiliser *Argument Clinic* : cela retire " +"la flexibilité des spécifications de format commençant par ``e``. Lorsque " +"vous faites un appel à ``PyArg_Parse`` à la main, vous pourriez " +"théoriquement décider quelle chaîne d'encodage passer à :c:func:" +"`PyArg_ParseTuple`. Mais désormais cette chaîne doit être codée en dur au " +"moment du pré-processus d'Argument-Clinic. Cette limitation est délibérée ; " +"elle permet une gestion plus simple de cette spécification de format, et " +"peut permettre de futures optimisations. Cette restriction ne semble pas " +"déraisonnable ; CPython lui-même utilise toujours des chaînes d'encodage en " +"dur pour les paramètres dont les spécifications de format commencent par " +"``e``." #: ../Doc/howto/clinic.rst:935 msgid "Parameter default values" -msgstr "" +msgstr "Valeurs par défaut des paramètres" #: ../Doc/howto/clinic.rst:937 msgid "" "Default values for parameters can be any of a number of values. At their " "simplest, they can be string, int, or float literals:" msgstr "" +"Les valeurs par défaut des paramètres peuvent être n'importe quelle valeur. " +"Au plus simple, ce sont des chaînes, des entiers ou des nombres flottants :" #: ../Doc/howto/clinic.rst:946 msgid "They can also use any of Python's built-in constants:" msgstr "" +"Vous pouvez également utiliser n'importe quelle constante native de Python :" #: ../Doc/howto/clinic.rst:954 msgid "" "There's also special support for a default value of ``NULL``, and for simple " "expressions, documented in the following sections." msgstr "" +"La valeur ``NULL`` est également acceptée, ainsi que des expressions " +"simples, comme expliqué dans les sections suivantes." #: ../Doc/howto/clinic.rst:959 msgid "The ``NULL`` default value" -msgstr "" +msgstr "La valeur par défaut ``NULL``" #: ../Doc/howto/clinic.rst:961 msgid "" @@ -1697,10 +1883,16 @@ msgid "" "behaves like a default value of ``None``, but the C variable is initialized " "with ``NULL``." msgstr "" +"Pour les paramètres chaînes et objets, vous pouvez les positionner à " +"``None`` pour indiquer qu'il n'y a pas de valeur par défaut. Pour autant, " +"cela signifie que la variable C sera initialisée à ``Py_None``. Par " +"commodité, il existe une valeur spécifique appelée ``NULL`` juste pour cette " +"raison : du point de vue de Python, cette valeur se comporte comme la valeur " +"par défaut ``None``, mais la variable C est initialisée à ``NULL``." #: ../Doc/howto/clinic.rst:969 msgid "Expressions specified as default values" -msgstr "" +msgstr "Expressions spécifiées comme valeurs par défaut" #: ../Doc/howto/clinic.rst:971 msgid "" @@ -1709,6 +1901,10 @@ msgid "" "on objects. However, this support isn't exactly simple, because of some non-" "obvious semantics." msgstr "" +"La valeur par défaut d'un paramètre peut être plus qu'une simple valeur " +"littérale. Il peut s'agir d'une expression, utilisant des opérateurs " +"mathématiques et des attributs d'objets. Cependant, cette possibilité n'est " +"pas aussi simple, notamment à cause de sémantiques peu évidentes." #: ../Doc/howto/clinic.rst:976 #, fuzzy @@ -1764,11 +1960,11 @@ msgstr "" #: ../Doc/howto/clinic.rst:1018 msgid "Function calls." -msgstr "" +msgstr "des appels de fonction." #: ../Doc/howto/clinic.rst:1019 msgid "Inline if statements (``3 if foo else 5``)." -msgstr "" +msgstr "des instructions *if* en ligne (``3 if foo else 5``) ;" #: ../Doc/howto/clinic.rst:1020 msgid "Automatic sequence unpacking (``*[1, 2, 3]``)." diff --git a/howto/cporting.po b/howto/cporting.po index 7d40c7fe..8184e93b 100644 --- a/howto/cporting.po +++ b/howto/cporting.po @@ -23,6 +23,8 @@ msgid "" "We recommend the following resources for porting extension modules to Python " "3:" msgstr "" +"Nous recommandons les ressources suivantes pour migrer les modules " +"d'extensions vers Python 3 :" #: ../Doc/howto/cporting.rst:11 msgid "" @@ -30,12 +32,17 @@ msgid "" "guide*, a book on moving from Python 2 to Python 3 in general, guides the " "reader through porting an extension module." msgstr "" +"Le chapitre `Migrating C extension`_ du livre *Supporting Python 3: An in-" +"depth guide* (un livre sur le portage de Python 2 à Python 3) guide le " +"lecteur souhaitant porter un module d'extension." #: ../Doc/howto/cporting.rst:15 msgid "" "The `Porting guide`_ from the *py3c* project provides opinionated " "suggestions with supporting code." msgstr "" +"Le `Porting guide`_ du projet *py3c* fournit des suggestions argumentées " +"avec le code correspondant." #: ../Doc/howto/cporting.rst:17 msgid "" @@ -44,6 +51,10 @@ msgid "" "library then handles differences between various Python versions and " "implementations." msgstr "" +"Les bibliothèques `Cython`_ et `CFFI`_ fournissent des abstractions de l'API " +"C de Python. Les extensions ont généralement besoin d'être réécrites pour " +"profiter de ces bibliothèques, mais elles prennent en charge les différences " +"entre versions et implémentations de Python." #~ msgid "author" #~ msgstr "auteur" diff --git a/howto/urllib2.po b/howto/urllib2.po index 07132666..415152de 100644 --- a/howto/urllib2.po +++ b/howto/urllib2.po @@ -17,6 +17,7 @@ msgstr "" #: ../Doc/howto/urllib2.rst:5 msgid "HOWTO Fetch Internet Resources Using The urllib Package" msgstr "" +"Guide pratique : récupérer des ressources web en utilisant le module *urllib*" #: ../Doc/howto/urllib2.rst:0 msgid "Author" diff --git a/install/index.po b/install/index.po index cc55949f..018f7cf3 100644 --- a/install/index.po +++ b/install/index.po @@ -115,7 +115,7 @@ msgstr "" #: ../Doc/install/index.rst:55 msgid "Distutils based source distributions" -msgstr "" +msgstr "Distributions basées sur *distutils*" #: ../Doc/install/index.rst:57 msgid "" @@ -967,10 +967,14 @@ msgid "" "that pure Python modules and extension modules are installed into the same " "location. Files are installed as follows:" msgstr "" +"Le dossier racine de l'installation est défini par l'option :option:`!--" +"prefix`. L'option :option:`!--exec-prefix` n'est pas gérée sur Windows, ce " +"qui signifie que les modules Python et les modules d'extension sont " +"installés au même endroit. Les fichiers sont installés selon ce tableau :" #: ../Doc/install/index.rst:477 msgid ":file:`{prefix}\\\\Scripts`" -msgstr "" +msgstr ":file:`{prefix}\\\\Scripts`" #: ../Doc/install/index.rst:479 msgid ":file:`{prefix}\\\\Include\\\\{distname}`" @@ -1001,38 +1005,41 @@ msgid "" "schemes and override some of the installation directories used for the " "various types of files, using these options:" msgstr "" +"Pour créer un modèle d'installation personnalisé, partez d'un modèle " +"alternatif et remplacez les dossiers d'installation de types de fichiers " +"donnés via ces options :" #: ../Doc/install/index.rst:499 msgid "Override option" -msgstr "" +msgstr "Option" #: ../Doc/install/index.rst:501 msgid "``--install-purelib``" -msgstr "" +msgstr "``--install-purelib``" #: ../Doc/install/index.rst:502 msgid "``--install-platlib``" -msgstr "" +msgstr "``--install-platlib``" #: ../Doc/install/index.rst:503 msgid "all modules" -msgstr "" +msgstr "tous les modules" #: ../Doc/install/index.rst:503 msgid "``--install-lib``" -msgstr "" +msgstr "``--install-lib``" #: ../Doc/install/index.rst:504 msgid "``--install-scripts``" -msgstr "" +msgstr "``--install-scripts``" #: ../Doc/install/index.rst:505 msgid "``--install-data``" -msgstr "" +msgstr "``--install-data``" #: ../Doc/install/index.rst:506 msgid "``--install-headers``" -msgstr "" +msgstr "``--install-headers``" #: ../Doc/install/index.rst:509 msgid "" diff --git a/library/argparse.po b/library/argparse.po index 8582de00..3b66a2e7 100644 --- a/library/argparse.po +++ b/library/argparse.po @@ -1290,6 +1290,9 @@ msgid "" "Any container can be passed as the *choices* value, so :class:`list` " "objects, :class:`set` objects, and custom containers are all supported." msgstr "" +"N'importe quel conteneur peut être fourni pour la valeur de *choices*, donc " +"les objets :class:`list`, les objets :class:`set` et les conteneurs " +"personnalisés sont tous acceptés." #: ../Doc/library/argparse.rst:1114 msgid "required" @@ -1603,7 +1606,7 @@ msgstr "" #: ../Doc/library/argparse.rst:1361 msgid "Option value syntax" -msgstr "" +msgstr "Syntaxe de la valeur des options" #: ../Doc/library/argparse.rst:1363 msgid "" @@ -1611,6 +1614,10 @@ msgid "" "specifying the value of an option (if it takes one). In the simplest case, " "the option and its value are passed as two separate arguments::" msgstr "" +"La méthode :meth:`~ArgumentParser.parse_args` offre plusieurs façons " +"d'indiquer la valeur d'une option si elle en prend une. Dans le cas le plus " +"simple, l'option et sa valeur sont passées en tant que deux arguments " +"distincts ::" #: ../Doc/library/argparse.rst:1375 msgid "" @@ -1618,6 +1625,9 @@ msgid "" "option and value can also be passed as a single command-line argument, using " "``=`` to separate them::" msgstr "" +"Pour les options longues (les options qui ont un nom plus long qu'un seul " +"caractère), l'option et sa valeur peuvent être passées comme un seul " +"argument de la ligne de commande en utilisant ``=`` comme séparateur ::" #: ../Doc/library/argparse.rst:1382 msgid "" @@ -1647,6 +1657,12 @@ msgid "" "options, wrong number of positional arguments, etc. When it encounters such " "an error, it exits and prints the error along with a usage message::" msgstr "" +"Quand elle fait l'analyse de la ligne de commande, la méthode :meth:" +"`~ArgumentParser.parse_args` vérifie plusieurs erreurs possibles : entre " +"autres, options ambigües, types invalides, options invalides, nombre " +"incorrect d'arguments positionnels, etc. Quand une erreur est rencontrée, " +"elle affiche l'erreur accompagnée du message d'aide puis termine " +"l'exécution ::" #: ../Doc/library/argparse.rst:1428 msgid "Arguments containing ``-``" @@ -1663,6 +1679,15 @@ msgid "" "like negative numbers and there are no options in the parser that look like " "negative numbers::" msgstr "" +"La méthode :meth:`~ArgumentParser.parse_args` tente de signaler une erreur " +"quand l'utilisateur s'est clairement trompé. Par contre, certaines " +"situations sont intrinsèquement ambigües. Par exemple, l'argument de la " +"ligne de commande ``-1`` peut aussi bien être une tentative de spécifier une " +"option qu'une tentative de passer un argument positionnel. La méthode :meth:" +"`~ArgumentParser.parse_args` est prudente : les arguments positionnels ne " +"peuvent commencer par ``-`` que s'ils ont l'apparence d'un nombre négatif et " +"que l'analyseur ne contient aucune option qui a l'apparence d'un nombre " +"négatif ::" #: ../Doc/library/argparse.rst:1468 msgid "" @@ -1671,6 +1696,10 @@ msgid "" "tells :meth:`~ArgumentParser.parse_args` that everything after that is a " "positional argument::" msgstr "" +"Si l'utilisateur a des arguments positionnels qui commencent par ``-`` et " +"qui n'ont pas l'apparence d'un nombre négatif, il peut insérer le pseudo-" +"argument ``'--'`` qui indique à :meth:`~ArgumentParser.parse_args` de " +"traiter tout ce qui suit comme un argument positionnel ::" #: ../Doc/library/argparse.rst:1479 msgid "Argument abbreviations (prefix matching)" @@ -1682,6 +1711,10 @@ msgid "" "` allows long options to be abbreviated to a prefix, if the " "abbreviation is unambiguous (the prefix matches a unique option)::" msgstr "" +"Par défaut, la méthode :meth:`~ArgumentParser.parse_args` accepte que les " +"options longues soient :ref:`abrégées ` par un préfixe pour " +"autant que l’abréviation soit non-ambigüe, c'est-à-dire qu'elle ne " +"corresponde qu'à une seule option ::" #: ../Doc/library/argparse.rst:1496 msgid "" @@ -1703,6 +1736,11 @@ msgid "" "of strings to :meth:`~ArgumentParser.parse_args`. This is useful for " "testing at the interactive prompt::" msgstr "" +"Il est parfois désirable de demander à un objet ``ArgumentParser`` de faire " +"l'analyse d'arguments autres que ceux de :data:`sys.argv`. On peut faire ce " +"traitement en passant une liste de chaînes à :meth:`~ArgumentParser." +"parse_args`. Cette approche est pratique pour faire des tests depuis " +"l'invite de commande ::" #: ../Doc/library/argparse.rst:1524 msgid "The Namespace object" @@ -1762,6 +1800,18 @@ msgid "" "constructor arguments, and returns an :class:`ArgumentParser` object that " "can be modified as usual." msgstr "" +"Certains programmes divisent leurs fonctionnalités entre un nombre de sous-" +"commandes. Par exemple : le programme ``svn`` peut être invoqué comme ``svn " +"checkout``, ``svn update`` et ``svn commit``. Séparer les fonctionnalités de " +"cette façon est judicieux quand le programme effectue plusieurs fonctions " +"différentes qui requièrent différents types de lignes de commandes. :class:" +"`ArgumentParser` prend en charge la création de ce genre de sous-commandes " +"grâce à la méthode :meth:`add_subparsers`. La méthode :meth:`add_subparsers` " +"est généralement appelée sans argument et elle renvoie un objet ``Action`` " +"spécial. Cet objet possède une seule méthode, :meth:`~ArgumentParser." +"add_parser`, qui prend le nom d'une commande et n'importe quels arguments du " +"constructeur d':class:`ArgumentParser` ; elle renvoie un objet :class:" +"`ArgumentParser` qui peut être modifié normalement." #: ../Doc/library/argparse.rst:1579 msgid "Description of parameters:" @@ -1773,12 +1823,17 @@ msgid "" "\"subcommands\" if description is provided, otherwise uses title for " "positional arguments" msgstr "" +"``title`` – titre du groupe de ce sous-analyseur dans la sortie d'aide ; par " +"défaut : ``\"subcommands\"`` si ``description`` est fournie, sinon utilise " +"la valeur de ``title`` de la section sur les arguments positionnels ;" #: ../Doc/library/argparse.rst:1585 msgid "" "description - description for the sub-parser group in help output, by " "default ``None``" msgstr "" +"``description`` – description du groupe de ce sous-analyseur dans la sortie " +"d'aide ; par défaut : ``None`` ;" #: ../Doc/library/argparse.rst:1588 msgid "" @@ -1786,40 +1841,57 @@ msgid "" "default the name of the program and any positional arguments before the " "subparser argument" msgstr "" +"``prog`` – nom du programme dans le message d'utilisation de l'aide des sous-" +"commandes ; par défaut : le nom du programme et les arguments positionnels " +"qui arrivent avant l'argument de ce sous-analyseur ;" #: ../Doc/library/argparse.rst:1592 msgid "" "parser_class - class which will be used to create sub-parser instances, by " "default the class of the current parser (e.g. ArgumentParser)" msgstr "" +"``parser_class`` – classe utilisée pour créer les instances de sous-" +"analyseurs ; par défaut : la classe de l'analyseur courant (par exemple " +"``ArgumentParser``) ;" #: ../Doc/library/argparse.rst:1595 msgid "" "action_ - the basic type of action to be taken when this argument is " "encountered at the command line" msgstr "" +"action_ – action à entreprendre quand cet argument est reconnu sur la ligne " +"de commande ;" #: ../Doc/library/argparse.rst:1598 msgid "" "dest_ - name of the attribute under which sub-command name will be stored; " "by default ``None`` and no value is stored" msgstr "" +"dest_ – nom de l'attribut sous lequel la sous-commande est stockée ; par " +"défaut : ``None`` et aucune valeur n'est stockée ;" #: ../Doc/library/argparse.rst:1601 msgid "" "required_ - Whether or not a subcommand must be provided, by default " "``False`` (added in 3.7)" msgstr "" +"required_ – ``True`` si la sous-commande est obligatoire ; par défaut : " +"``False`` (ajouté dans 3.7) ;" #: ../Doc/library/argparse.rst:1604 msgid "help_ - help for sub-parser group in help output, by default ``None``" msgstr "" +"help_ – message d'aide pour le groupe du sous-analyseur dans la sortie " +"d'aide ; par défaut : ``None`` ;" #: ../Doc/library/argparse.rst:1606 msgid "" "metavar_ - string presenting available sub-commands in help; by default it " "is ``None`` and presents sub-commands in form {cmd1, cmd2, ..}" msgstr "" +"metavar_ – chaîne qui représente les sous-commandes disponibles dans les " +"messages d'aide ; par défaut : ``None``, ce qui entraine la génération d'une " +"chaîne suivant le format ``'{cmd1, cmd2, …}'``." #: ../Doc/library/argparse.rst:1609 msgid "Some example usage::" @@ -1834,6 +1906,13 @@ msgid "" "present, and when the ``b`` command is specified, only the ``foo`` and " "``baz`` attributes are present." msgstr "" +"Prenez note que l'objet renvoyé par :meth:`parse_args` ne contient que les " +"attributs reconnus par l'analyseur principal et le sous-analyseur " +"sélectionné par la ligne de commande. Les autres sous-analyseurs n'ont pas " +"d'influence sur l'objet renvoyé. Ainsi dans l'exemple précédent, quand la " +"commande ``a`` est spécifiée, seuls les attributs ``foo`` et ``bar`` sont " +"présents ; quand la commande ``b`` est spécifiée, seuls les attributs " +"``foo`` et ``baz`` sont présents." #: ../Doc/library/argparse.rst:1637 msgid "" @@ -1843,6 +1922,12 @@ msgid "" "subparser command, however, can be given by supplying the ``help=`` argument " "to :meth:`add_parser` as above.)" msgstr "" +"De même, quand le message d'aide est demandé depuis l'un des sous-" +"analyseurs, seul le message d'aide de cet analyseur est affiché. Le message " +"d'aide n'inclut pas le message de l'analyseur parent ni celui des sous-" +"analyseurs au même niveau. Il est toutefois possible de fournir un message " +"d'aide pour chacun des sous-analyseurs grâce à l'argument ``help=`` d':meth:" +"`add_parser` tel qu'illustré ci-dessus." #: ../Doc/library/argparse.rst:1673 msgid "" @@ -1850,6 +1935,10 @@ msgid "" "``description`` keyword arguments. When either is present, the subparser's " "commands will appear in their own group in the help output. For example::" msgstr "" +"La méthode :meth:`add_subparsers` accepte les arguments nommés ``title`` et " +"``description``. Quand au moins l'un des deux est présent, les commandes du " +"sous-analyseur sont affichées dans leur propre groupe dans la sortie d'aide. " +"Par exemple ::" #: ../Doc/library/argparse.rst:1694 msgid "" @@ -1857,6 +1946,10 @@ msgid "" "which allows multiple strings to refer to the same subparser. This example, " "like ``svn``, aliases ``co`` as a shorthand for ``checkout``::" msgstr "" +"De plus, ``add_parser`` accepte l'argument additionnel ``aliases`` qui " +"permet à plusieurs chaînes de faire référence au même sous-analyseur. " +"L'exemple suivant, à la manière de ``svn``, utilise ``co`` comme une " +"abréviation de ``checkout`` ::" #: ../Doc/library/argparse.rst:1705 msgid "" @@ -1865,6 +1958,10 @@ msgid "" "so that each subparser knows which Python function it should execute. For " "example::" msgstr "" +"Une façon efficace de traiter les sous-commandes est de combiner " +"l'utilisation de la méthode :meth:`add_subparsers` avec des appels à :meth:" +"`set_defaults` pour que chaque sous-analyseur sache quelle fonction Python " +"doit être exécutée. Par exemple ::" #: ../Doc/library/argparse.rst:1742 msgid "" @@ -1875,6 +1972,12 @@ msgid "" "to check the name of the subparser that was invoked, the ``dest`` keyword " "argument to the :meth:`add_subparsers` call will work::" msgstr "" +"Ainsi, vous pouvez laisser à :meth:`parse_args` la responsabilité de faire " +"l'appel à la bonne fonction après avoir analysé les arguments. Associer " +"fonctions et actions est en général la façon la plus facile de gérer des " +"actions différentes pour chacun de vos sous-analyseurs. Par contre, si vous " +"avez besoin de consulter le nom de du sous-analyseur qui a été invoqué, vous " +"pouvez utiliser l'argument nommé ``dest`` d':meth:`add_subparsers` ::" #: ../Doc/library/argparse.rst:1758 msgid "New *required* keyword argument." @@ -1892,6 +1995,12 @@ msgid "" "with the requested modes, buffer sizes, encodings and error handling (see " "the :func:`open` function for more details)::" msgstr "" +"Le type fabrique :class:`FileType` crée des objets qui peuvent être passés à " +"l'argument ``type`` d':meth:`ArgumentParser.add_argument`. Les arguments qui " +"ont comme ``type`` un objet :class:`FileType` ouvrent les arguments de la " +"ligne de commande en tant que fichiers avec les options spécifiées : mode, " +"taille du tampon, encodage et gestion des erreurs (voir la fonction :func:" +"`open` pour plus de détails) ::" #: ../Doc/library/argparse.rst:1779 msgid "" @@ -1899,6 +2008,10 @@ msgid "" "convert this into ``sys.stdin`` for readable :class:`FileType` objects and " "``sys.stdout`` for writable :class:`FileType` objects::" msgstr "" +"Les objets ``FileType`` reconnaissent le pseudo-argument ``'-'`` et en font " +"automatiquement la conversion vers ``sys.stdin`` pour les objets :class:" +"`FileType` ouverts en lecture et vers ``sys.stdout`` pour les objets :class:" +"`FileType` ouverts en écriture ::" #: ../Doc/library/argparse.rst:1788 msgid "The *encodings* and *errors* keyword arguments." @@ -1916,6 +2029,11 @@ msgid "" "default one, appropriate groups can be created using the :meth:" "`add_argument_group` method::" msgstr "" +"Par défaut, :class:`ArgumentParser` sépare les arguments de la ligne de " +"commande entre les groupes « arguments positionnels » et « arguments " +"optionnels » au moment d'afficher les messages d'aide. S'il existe un " +"meilleur regroupement conceptuel des arguments, les groupes adéquats peuvent " +"être créés avec la méthode :meth:`add_argument_group` ::" #: ../Doc/library/argparse.rst:1814 msgid "" @@ -1927,12 +2045,22 @@ msgid "" "accepts *title* and *description* arguments which can be used to customize " "this display::" msgstr "" +"La méthode :meth:`add_argument_group` renvoie un objet représentant le " +"groupe d'arguments. Cet objet possède une méthode :meth:`~ArgumentParser." +"add_argument` semblable à celle d':class:`ArgumentParser`. Quand un argument " +"est ajouté au groupe, l'analyseur le traite comme un argument normal, mais " +"il affiche le nouvel argument dans un groupe séparé dans les messages " +"d'aide. Afin de personnaliser l'affichage, la méthode :meth:" +"`add_argument_group` accepte les arguments ``title`` et ``description`` ::" #: ../Doc/library/argparse.rst:1840 msgid "" "Note that any arguments not in your user-defined groups will end up back in " "the usual \"positional arguments\" and \"optional arguments\" sections." msgstr "" +"Prenez note que tout argument qui n'est pas dans l'un de vos groupes est " +"affiché dans l'une des sections usuelles *positional arguments* et *optional " +"arguments*." #: ../Doc/library/argparse.rst:1845 msgid "Mutual exclusion" @@ -1944,6 +2072,9 @@ msgid "" "one of the arguments in the mutually exclusive group was present on the " "command line::" msgstr "" +"Crée un groupe mutuellement exclusif. Le module :mod:`argparse` vérifie " +"qu'au plus un des arguments du groupe mutuellement exclusif est présent sur " +"la ligne de commande ::" #: ../Doc/library/argparse.rst:1865 msgid "" @@ -1951,6 +2082,9 @@ msgid "" "argument, to indicate that at least one of the mutually exclusive arguments " "is required::" msgstr "" +"La méthode :meth:`add_mutually_exclusive_group` accepte aussi l'argument " +"``required`` pour indiquer qu'au moins un des arguments mutuellement " +"exclusifs est nécessaire ::" #: ../Doc/library/argparse.rst:1877 msgid "" @@ -1958,6 +2092,9 @@ msgid "" "*title* and *description* arguments of :meth:`~ArgumentParser." "add_argument_group`." msgstr "" +"Prenez note que présentement les groupes d'arguments mutuellement exclusifs " +"n'acceptent pas les arguments ``title`` et ``description`` d':meth:" +"`~ArgumentParser.add_argument_group`." #: ../Doc/library/argparse.rst:1883 msgid "Parser defaults" @@ -1971,11 +2108,18 @@ msgid "" "additional attributes that are determined without any inspection of the " "command line to be added::" msgstr "" +"Dans la majorité des cas, les attributs de l'objet renvoyé par :meth:" +"`parse_args` sont entièrement définis par l'inspection des arguments de la " +"ligne de commande et par les actions des arguments. La méthode :meth:" +"`set_defaults` permet l'ajout d'attributs additionnels qui sont définis sans " +"nécessiter l'inspection de la ligne de commande ::" #: ../Doc/library/argparse.rst:1899 msgid "" "Note that parser-level defaults always override argument-level defaults::" msgstr "" +"Prenez note que les valeurs par défaut au niveau de l'analyseur ont " +"précédence sur les valeurs par défaut au niveau de l'argument ::" #: ../Doc/library/argparse.rst:1907 msgid "" @@ -1983,12 +2127,18 @@ msgid "" "parsers. See the :meth:`~ArgumentParser.add_subparsers` method for an " "example of this type." msgstr "" +"Les valeurs par défaut au niveau de l'analyseur sont particulièrement utiles " +"quand on travaille avec plusieurs analyseurs. Voir la méthode :meth:" +"`~ArgumentParser.add_subparsers` pour un exemple de cette utilisation." #: ../Doc/library/argparse.rst:1913 msgid "" "Get the default value for a namespace attribute, as set by either :meth:" "`~ArgumentParser.add_argument` or by :meth:`~ArgumentParser.set_defaults`::" msgstr "" +"Renvoie la valeur par défaut d'un attribut de l'objet ``Namespace`` tel " +"qu'il a été défini soit par :meth:`~ArgumentParser.add_argument` ou par :" +"meth:`~ArgumentParser.set_defaults` ::" #: ../Doc/library/argparse.rst:1924 msgid "Printing help" @@ -2000,6 +2150,9 @@ msgid "" "care of formatting and printing any usage or error messages. However, " "several formatting methods are available:" msgstr "" +"Pour la majorité des applications, :meth:`~ArgumentParser.parse_args` se " +"charge du formatage et de l'affichage des messages d'erreur et " +"d'utilisation. Plusieurs méthodes de formatage sont toutefois disponibles :" #: ../Doc/library/argparse.rst:1932 msgid "" @@ -2007,6 +2160,9 @@ msgid "" "invoked on the command line. If *file* is ``None``, :data:`sys.stdout` is " "assumed." msgstr "" +"Affiche une brève description sur la façon d'invoquer l':class:" +"`ArgumentParser` depuis la ligne de commande. Si ``file`` est ``None``, " +"utilise :data:`sys.stdout`." #: ../Doc/library/argparse.rst:1938 msgid "" @@ -2014,24 +2170,34 @@ msgid "" "arguments registered with the :class:`ArgumentParser`. If *file* is " "``None``, :data:`sys.stdout` is assumed." msgstr "" +"Affiche un message d'aide qui inclut l'utilisation du programme et " +"l'information sur les arguments répertoriés dans l':class:`ArgumentParser`. " +"Si ``file`` est ``None``, utilise :data:`sys.stdout`." #: ../Doc/library/argparse.rst:1942 msgid "" "There are also variants of these methods that simply return a string instead " "of printing it:" msgstr "" +"Des variantes de ces méthodes sont fournies pour renvoyer la chaîne plutôt " +"que de l'afficher :" #: ../Doc/library/argparse.rst:1947 msgid "" "Return a string containing a brief description of how the :class:" "`ArgumentParser` should be invoked on the command line." msgstr "" +"Renvoie une chaîne contenant une brève description sur la façon d'invoquer " +"l':class:`ArgumentParser` depuis la ligne de commande." #: ../Doc/library/argparse.rst:1952 msgid "" "Return a string containing a help message, including the program usage and " "information about the arguments registered with the :class:`ArgumentParser`." msgstr "" +"Renvoie une chaîne représentant un message d'aide qui inclut des " +"informations sur l'utilisation du programme et sur les arguments définis " +"dans l':class:`ArgumentParser`." #: ../Doc/library/argparse.rst:1957 msgid "Partial parsing" @@ -2047,6 +2213,13 @@ msgid "" "a two item tuple containing the populated namespace and the list of " "remaining argument strings." msgstr "" +"Parfois, un script n'analyse que de quelques-uns des arguments de la ligne " +"de commande avant de passer les arguments non-traités à un autre script ou " +"un autre programme. La méthode :meth:`~ArgumentParser.parse_known_args` est " +"utile dans ces cas. Elle fonctionne similairement à :meth:`~ArgumentParser." +"parse_args`, mais elle ne lève pas d'erreur quand des arguments non-reconnus " +"sont présents. Au lieu, elle renvoie une paire de valeurs : l'objet " +"``Namespace`` rempli et la liste des arguments non-traités." #: ../Doc/library/argparse.rst:1977 msgid "" @@ -2055,6 +2228,10 @@ msgid "" "prefix of one of its known options, instead of leaving it in the remaining " "arguments list." msgstr "" +"Les règles d':ref:`acceptation des abréviations ` sont " +"applicables à :meth:`parse_known_args`. L'analyseur peut ainsi capturer une " +"option même si elle n'est que le préfixe d'une option reconnue plutôt que de " +"la laisser dans la liste des arguments non-traités." #: ../Doc/library/argparse.rst:1984 msgid "Customizing file parsing" @@ -2067,6 +2244,10 @@ msgid "" "per line. :meth:`convert_arg_line_to_args` can be overridden for fancier " "reading." msgstr "" +"Les arguments qui proviennent d'un fichier sont lus un par ligne. La " +"méthode :meth:`convert_arg_line_to_args` peut être surchargée pour accomplir " +"un traitement plus élaboré. Voir aussi l'argument nommé " +"``fromfile_prefix_chars`` du constructeur d':class:`ArgumentParser`." #: ../Doc/library/argparse.rst:1993 msgid "" @@ -2074,16 +2255,24 @@ msgid "" "the argument file. It returns a list of arguments parsed from this string. " "The method is called once per line read from the argument file, in order." msgstr "" +"La méthode ``convert_arg_line_to_args`` accepte un seul argument, " +"``arg_line``, qui est une chaîne lue dans le fichier d'arguments. Elle " +"renvoie une liste d'arguments analysés dans cette chaîne. La méthode est " +"appelée une fois pour chaque ligne lue du fichier d'arguments. L'ordre est " +"préservé." #: ../Doc/library/argparse.rst:1997 msgid "" "A useful override of this method is one that treats each space-separated " "word as an argument. The following example demonstrates how to do this::" msgstr "" +"Une surcharge utile de cette méthode est de permettre à chaque mot délimité " +"par des espaces d'être traité comme un argument. L'exemple suivant illustre " +"comment réaliser ceci ::" #: ../Doc/library/argparse.rst:2006 msgid "Exiting methods" -msgstr "" +msgstr "Méthodes d'interruptions" #: ../Doc/library/argparse.rst:2010 msgid "" @@ -2091,12 +2280,19 @@ msgid "" "if given, it prints a *message* before that. The user can override this " "method to handle these steps differently::" msgstr "" +"Cette méthode interrompt l'exécution du programme et renvoie ``status`` " +"comme valeur de retour du processus. Si ``message`` est fourni, la chaîne " +"est affichée avant la fin de l'exécution. Vous pouvez surcharger cette " +"méthode pour traiter ces étapes différemment ::" #: ../Doc/library/argparse.rst:2022 msgid "" "This method prints a usage message including the *message* to the standard " "error and terminates the program with a status code of 2." msgstr "" +"Cette méthode affiche un message d'utilisation qui inclut la chaîne " +"``message`` sur la sortie d'erreur standard puis termine l'exécution avec le " +"code de fin d'exécution 2." #: ../Doc/library/argparse.rst:2027 msgid "Intermixed parsing" @@ -2109,6 +2305,10 @@ msgid "" "and :meth:`~ArgumentParser.parse_known_intermixed_args` methods support this " "parsing style." msgstr "" +"De nombreuses commandes Unix permettent à l'utilisateur d'entremêler les " +"arguments optionnels et les arguments positionnels. Les méthodes :meth:" +"`~ArgumentParser.parse_intermixed_args` et :meth:`~ArgumentParser." +"parse_known_intermixed_args` permettent ce style d'analyse." #: ../Doc/library/argparse.rst:2037 msgid "" @@ -2117,6 +2317,11 @@ msgid "" "``argparse.REMAINDER``, and mutually exclusive groups that include both " "optionals and positionals are not supported." msgstr "" +"Ces analyseurs n'offrent pas toutes les fonctionnalités d'``argparse`` et " +"ils lèvent une exception si une fonctionnalité non prise en charge est " +"utilisée. En particulier, les sous-analyseurs, ``argparse.REMAINDER`` et les " +"groupes mutuellement exclusifs qui contiennent à la fois des arguments " +"optionnels et des arguments positionnels ne sont pas pris en charge." #: ../Doc/library/argparse.rst:2042 msgid "" @@ -2125,6 +2330,10 @@ msgid "" "former returns ``['2', '3']`` as unparsed arguments, while the latter " "collects all the positionals into ``rest``. ::" msgstr "" +"L'exemple suivant illustre la différence entre :meth:`~ArgumentParser." +"parse_known_args` et :meth:`~ArgumentParser.parse_intermixed_args` : le " +"premier renvoie ``['2', '3']`` comme arguments non-traités alors que le " +"second capture tous les arguments positionnels dans ``rest`` ::" #: ../Doc/library/argparse.rst:2057 msgid "" @@ -2133,6 +2342,10 @@ msgid "" "strings. :meth:`~ArgumentParser.parse_intermixed_args` raises an error if " "there are any remaining unparsed argument strings." msgstr "" +":meth:`~ArgumentParser.parse_known_intermixed_args` renvoie une paire de " +"valeurs : l'objet ``Namespace`` rempli et une liste de chaînes d'arguments " +"non-traités. :meth:`~ArgumentParser.parse_intermixed_args` lève une erreur " +"s'il reste des chaînes d'arguments non-traités." #: ../Doc/library/argparse.rst:2067 msgid "Upgrading optparse code" @@ -2148,6 +2361,12 @@ msgid "" "patched, it no longer seemed practical to try to maintain the backwards " "compatibility." msgstr "" +"Initialement, le module :mod:`argparse` tentait de rester compatible avec :" +"mod:`optparse`. Hélas, il était difficile de faire des améliorations à :mod:" +"`optparse` de façon transparente, en particulier pour les changements requis " +"pour gérer les nouveaux spécificateurs de ``nargs=`` et les messages " +"d'utilisation améliorés. Après avoir porté ou surchargé tout le code d':mod:" +"`optparse`, la rétro-compatibilité pouvait difficilement être conservée." #: ../Doc/library/argparse.rst:2076 msgid "" diff --git a/library/compileall.po b/library/compileall.po index 7bbf2ebd..41540ab8 100644 --- a/library/compileall.po +++ b/library/compileall.po @@ -17,6 +17,7 @@ msgstr "" #: ../Doc/library/compileall.rst:2 msgid ":mod:`compileall` --- Byte-compile Python libraries" msgstr "" +":mod:`compileall` — Génération du code intermédiaire des bibliothèques Python" #: ../Doc/library/compileall.rst:7 msgid "**Source code:** :source:`Lib/compileall.py`" @@ -30,16 +31,25 @@ msgid "" "installation time, which makes them available for use even by users who " "don't have write permission to the library directories." msgstr "" +"Ce module contient des fonctions qui facilitent l'installation de " +"bibliothèques Python. Elles compilent, sous forme de code intermédiaire " +"(*bytecode*), les fichiers source situés dans un dossier de votre choix. Ce " +"module est particulièrement utile pour générer les fichiers de code " +"intermédiaire lors de l'installation d'une bibliothèque, les rendant " +"disponibles même pour les utilisateurs qui n'ont pas les privilèges " +"d'écriture dans l'emplacement d'installation." #: ../Doc/library/compileall.rst:19 msgid "Command-line use" -msgstr "" +msgstr "Utilisation en ligne de commande" #: ../Doc/library/compileall.rst:21 msgid "" "This module can work as a script (using :program:`python -m compileall`) to " "compile Python sources." msgstr "" +"On peut se servir de ce module comme d'un script (avec :program:`python -m " +"compileall`) pour compiler les fichiers source Python." #: ../Doc/library/compileall.rst:29 msgid "" @@ -47,22 +57,33 @@ msgid "" "files, traversed recursively. If no argument is given, behave as if the " "command line was ``-l ``." msgstr "" +"Les arguments positionnels sont les fichiers à compiler. Ils peuvent aussi " +"être des dossiers, qui sont alors parcourus récursivement pour compiler tous " +"les fichiers de code :file:`.py` qu'ils contiennent. Lorsque le script ne " +"reçoit aucun argument, il fait comme s'il avait été appelé avec `-l `." #: ../Doc/library/compileall.rst:35 msgid "" "Do not recurse into subdirectories, only compile source code files directly " "contained in the named or implied directories." msgstr "" +"Compiler uniquement les fichiers situés directement dans les dossiers passés " +"en argument ou implicites, sans descendre récursivement dans les sous-" +"dossiers." #: ../Doc/library/compileall.rst:40 msgid "Force rebuild even if timestamps are up-to-date." -msgstr "" +msgstr "Forcer la recompilation même si les horodatages sont à jour." #: ../Doc/library/compileall.rst:44 msgid "" "Do not print the list of files compiled. If passed once, error messages will " "still be printed. If passed twice (``-qq``), all output is suppressed." msgstr "" +"Supprimer l'affichage des noms des fichiers compilés.Si cette option est " +"donnée une seule fois, les erreurs sont affichées malgré tout. Vous pouvez " +"les supprimer en passant l'option deux fois (c'est-à-dire avec ``-qq``)." #: ../Doc/library/compileall.rst:49 msgid "" @@ -72,12 +93,19 @@ msgid "" "where the source file does not exist at the time the byte-code file is " "executed." msgstr "" +"Ce nom de dossier est ajouté en tête du chemin de chaque fichier compilé. Il " +"aura une influence sur les traces d'appels pour les erreurs levées lors de " +"la compilation, et sera reflété dans les fichiers de code intermédiaire, " +"pour utilisation dans les traces d'appels et autres messages si le fichier " +"source n'existe pas au moment de l'exécution." #: ../Doc/library/compileall.rst:57 msgid "" "regex is used to search the full path to each file considered for " "compilation, and if the regex produces a match, the file is skipped." msgstr "" +"Exclut tous les fichiers dont les noms correspondent à l'expression " +"régulière *regex*." #: ../Doc/library/compileall.rst:62 msgid "" @@ -85,6 +113,8 @@ msgid "" "files and directories to compile. If ``list`` is ``-``, read lines from " "``stdin``." msgstr "" +"Ajoute chaque ligne du fichier *list* aux fichiers et dossiers à compiler. " +"*list* peut être ``-``, auquel cas le script lit l'entrée standard." #: ../Doc/library/compileall.rst:68 msgid "" @@ -93,6 +123,11 @@ msgid "" "is to write files to their :pep:`3147` locations and names, which allows " "byte-code files from multiple versions of Python to coexist." msgstr "" +"Utilise l'ancienne manière de nommer et placer les fichiers de code " +"intermédiaire, en écrasant éventuellement ceux générés par une autre version " +"de Python. Par défaut, les règles décrites dans la :pep:`3147` s'appliquent. " +"Elles permettent à différentes versions de l'interpréteur Python de " +"coexister en conservant chacune ses propres fichiers ``.pyc``." #: ../Doc/library/compileall.rst:75 msgid "" @@ -101,12 +136,19 @@ msgid "" "compileall -r 0` is equivalent to :program:`python -m compileall " " -l`." msgstr "" +"Règle le niveau de récursion maximal pour le parcours des sous-dossiers. " +"Lorsque cette option est fournie, ``-l`` est ignorée. :program:`python -m " +"compileall -r 0` revient au même que :program:`python -m " +"compileall -l`." #: ../Doc/library/compileall.rst:82 msgid "" "Use *N* workers to compile the files within the given directory. If ``0`` is " "used, then the result of :func:`os.cpu_count()` will be used." msgstr "" +"Effectue la compilation avec *N* processus parallèles. Si *N* vaut 0, autant " +"de processus sont créés que la machine dispose de processeurs (résultat de :" +"func:`os.cpu_count()`)." #: ../Doc/library/compileall.rst:88 msgid "" @@ -120,10 +162,20 @@ msgid "" "`SOURCE_DATE_EPOCH` environment variable is not set, and ``checked-hash`` if " "the ``SOURCE_DATE_EPOCH`` environment variable is set." msgstr "" +"Définit la manière dont les fichiers de code intermédiaire seront invalidés " +"au moment de l'exécution. Avec ``timestamp``, les fichiers ``.pyc`` générés " +"comportent l'horodatage de la source et sa taille. Avec ``checked-hash`` ou " +"``unchecked-hash``, ce seront des pyc utilisant le hachage, qui contiennent " +"une empreinte du code source plutôt qu'un horodatage. Voir :ref:`pyc-" +"invalidation` pour plus d'informations sur la manière dont Python valide les " +"fichiers de code intermédiaire conservés en cache lors de l'exécution. La " +"valeur par défaut est ``timestamp``. Cependant, si la variable " +"d'environnement :envvar:`SOURCE_DATE_EPOCH` a été réglée, elle devient " +"``checked-hash``." #: ../Doc/library/compileall.rst:99 msgid "Added the ``-i``, ``-b`` and ``-h`` options." -msgstr "" +msgstr "ajout des options ``-i``, ``-b`` et ``-h``." #: ../Doc/library/compileall.rst:102 msgid "" @@ -131,10 +183,13 @@ msgid "" "to a multilevel value. ``-b`` will always produce a byte-code file ending " "in ``.pyc``, never ``.pyo``." msgstr "" +"ajout des options ``-j``, ``-r`` et ``-qq`` (l'option ``-q`` peut donc " +"prendre plusieurs niveaux). ``-b`` produit toujours un fichier de code " +"intermédiaire portant l'extension ``.pyc``, et jamais ``.pyo``." #: ../Doc/library/compileall.rst:107 msgid "Added the ``--invalidation-mode`` option." -msgstr "" +msgstr "ajout de l'option ``--invalidation-mode``." #: ../Doc/library/compileall.rst:111 msgid "" @@ -142,6 +197,10 @@ msgid "" "the :func:`compile` function, because the Python interpreter itself already " "provides the option: :program:`python -O -m compileall`." msgstr "" +"Il n'y a pas d'option en ligne de commande pour contrôler le niveau " +"d'optimisation utilisé par la fonction :func:`compile`. Il suffit en effet " +"d'utiliser l'option ``-O`` de l'interpréteur Python lui-même : :program:" +"`python -O -m compileall`." #: ../Doc/library/compileall.rst:115 msgid "" @@ -150,10 +209,15 @@ msgid "" "if :func:`compile` is run with the same :attr:`sys.pycache_prefix` (if any) " "that will be used at runtime." msgstr "" +"De même, la fonction :func:`compile` utilise le réglage :attr:`sys." +"pycache_prefix`. Le code intermédiaire généré ne pourra servir que dans la " +"mesure où :func:`compile` est exécutée avec la même valeur de :attr:`sys." +"pycache_prefix` (si tant est qu'elle soit définie) que celle en vigueur au " +"moment d'exécuter le programme." #: ../Doc/library/compileall.rst:121 msgid "Public functions" -msgstr "" +msgstr "Fonctions publiques" #: ../Doc/library/compileall.rst:125 msgid "" @@ -161,6 +225,9 @@ msgid "" "py` files along the way. Return a true value if all the files compiled " "successfully, and a false value otherwise." msgstr "" +"Parcourt récursivement le dossier *dir*, en compilant tous les fichiers :" +"file:`.py`. Renvoie une valeur vraie si tous les fichiers ont été compilés " +"sans erreur, et une valeur fausse dans le cas contraire." #: ../Doc/library/compileall.rst:129 msgid "" @@ -176,12 +243,19 @@ msgid "" "where the source file does not exist at the time the byte-code file is " "executed." msgstr "" +"Si *ddir* est fourni, il est ajouté en tête du chemin de chaque fichier " +"compilé, ce qui modifie l'affichage des traces d'appels pour les erreurs qui " +"seraient levées lors de la compilation. De plus, il se retrouve dans les " +"fichiers de code intermédiaire, pour utilisation dans les traces et autres " +"messages si le fichier source n'existe pas au moment de l'exécution." #: ../Doc/library/compileall.rst:138 msgid "" "If *force* is true, modules are re-compiled even if the timestamps are up to " "date." msgstr "" +"Si *force* est vrai, les modules sont recompilés même si leurs horodatages " +"sont à jour." #: ../Doc/library/compileall.rst:141 msgid "" @@ -196,6 +270,10 @@ msgid "" "information are printed to standard out. Set to ``1``, only errors are " "printed. Set to ``2``, all output is suppressed." msgstr "" +"Si *quiet* est ``False`` ou bien ``0`` (la valeur par défaut), les noms de " +"fichiers et d'autres informations sont affichés sur la sortie standard. Avec " +"``1``, seules les erreurs sont affichées. Avec ``2``, aucune sortie n'est " +"émise." #: ../Doc/library/compileall.rst:149 ../Doc/library/compileall.rst:213 msgid "" @@ -205,6 +283,12 @@ msgid "" "names, which allows byte-code files from multiple versions of Python to " "coexist." msgstr "" +"Si *legacy* est vrai, les fichiers de code intermédiaire sont nommés et " +"placés selon l'ancienne méthode, en écrasant éventuellement ceux générés par " +"une autre version de Python. Par défaut, les règles décrites dans la :pep:" +"`3147` s'appliquent. Elles permettent à différentes versions de " +"l'interpréteur Python de coexister en conservant chacune ses propres " +"fichiers ``.pyc``." #: ../Doc/library/compileall.rst:155 ../Doc/library/compileall.rst:219 msgid "" @@ -221,6 +305,12 @@ msgid "" "cores in the system is used. If *workers* is lower than ``0``, a :exc:" "`ValueError` will be raised." msgstr "" +"*workers* est le nombre de tâches lancées en parallèle pour la compilation. " +"Par défaut, les fichiers sont compilés séquentiellement. Cette même " +"stratégie s'applique dans tous les cas lorsque le parallélisme n'est pas " +"possible sur la plateforme d'exécution. Si *workers* vaut 0, autant de " +"tâches sont lancées que le système comporte de cœurs. Si *workers* est " +"strictement négatif, une exception de type :exc:`ValueError` est levée." #: ../Doc/library/compileall.rst:165 ../Doc/library/compileall.rst:222 msgid "" @@ -228,19 +318,22 @@ msgid "" "PycInvalidationMode` enum and controls how the generated pycs are " "invalidated at runtime." msgstr "" +"*invalidation_mode* doit être un membre de l'énumération :class:`py_compile." +"PycInvalidationMode` et détermine la manière dont les fichiers :file:`.pyc` " +"sont invalidés lorsque l'interpréteur tente de les utiliser." #: ../Doc/library/compileall.rst:169 ../Doc/library/compileall.rst:251 msgid "Added the *legacy* and *optimize* parameter." -msgstr "" +msgstr "ajout des paramètres *legacy* et *optimize*." #: ../Doc/library/compileall.rst:172 msgid "Added the *workers* parameter." -msgstr "" +msgstr "ajout du paramètre *workers*." #: ../Doc/library/compileall.rst:175 ../Doc/library/compileall.rst:228 #: ../Doc/library/compileall.rst:254 msgid "*quiet* parameter was changed to a multilevel value." -msgstr "" +msgstr "le paramètre *quiet* peut prendre plusieurs niveaux." #: ../Doc/library/compileall.rst:178 ../Doc/library/compileall.rst:231 #: ../Doc/library/compileall.rst:257 @@ -248,6 +341,8 @@ msgid "" "The *legacy* parameter only writes out ``.pyc`` files, not ``.pyo`` files no " "matter what the value of *optimize* is." msgstr "" +"Lorsque le paramètre *legacy* est vrai, des fichiers ``.pyc``, et jamais ``." +"pyo``, sont générés, quel que soit le niveau d'optimisation." #: ../Doc/library/compileall.rst:182 msgid "Accepts a :term:`path-like object`." @@ -256,22 +351,27 @@ msgstr "Accepte un :term:`path-like object`." #: ../Doc/library/compileall.rst:185 ../Doc/library/compileall.rst:235 #: ../Doc/library/compileall.rst:261 msgid "The *invalidation_mode* parameter was added." -msgstr "" +msgstr "ajout du paramètre *invalidation_mode*." #: ../Doc/library/compileall.rst:188 ../Doc/library/compileall.rst:238 #: ../Doc/library/compileall.rst:264 msgid "The *invalidation_mode* parameter's default value is updated to None." msgstr "" +"La valeur par défaut du paramètre *invalidation_mode* est changée à ``None``." #: ../Doc/library/compileall.rst:191 msgid "Setting *workers* to 0 now chooses the optimal number of cores." msgstr "" +"Un nombre de processus adapté à la machine est choisi lorsque *workers* vaut " +"0." #: ../Doc/library/compileall.rst:196 msgid "" "Compile the file with path *fullname*. Return a true value if the file " "compiled successfully, and a false value otherwise." msgstr "" +"Compile le fichier dont le chemin est donné par *fullname*. Renvoie une " +"valeur vraie si et seulement si le fichier est compilé sans erreur." #: ../Doc/library/compileall.rst:199 msgid "" @@ -281,6 +381,11 @@ msgid "" "where the source file does not exist at the time the byte-code file is " "executed." msgstr "" +"Si *ddir* est fourni, il est ajouté en tête du chemin de chaque fichier " +"compilé, ce qui modifie l'affichage des traces pour les erreurs qui seraient " +"levées lors de la compilation. De plus, il se retrouve dans les fichiers de " +"code intermédiaire, pour utilisation dans les traces et autres messages si " +"le fichier source n'existe pas au moment de l'exécution." #: ../Doc/library/compileall.rst:205 msgid "" @@ -295,6 +400,9 @@ msgid "" "true value if all the files compiled successfully, and a false value " "otherwise." msgstr "" +"Compile tous les fichiers :file:`.py` contenus dans les dossiers de ``sys." +"path``. Renvoie une valeur vraie s'ils ont tous été compilés sans erreur, et " +"une valeur fausse dans le cas contraire." #: ../Doc/library/compileall.rst:246 msgid "" @@ -303,17 +411,23 @@ msgid "" "`compile_dir` function. Note that unlike the other compile functions, " "``maxlevels`` defaults to ``0``." msgstr "" +"Si *skip_curdir* est vrai (c'est le cas par défaut), le dossier courant est " +"exclu de la recherche. Les autres paramètres sont passés à :func:" +"`compile_dir`. Notez que contrairement aux autres fonctions de ce module, la " +"valeur par défaut de ``maxlevels`` est ``0``." #: ../Doc/library/compileall.rst:267 msgid "" "To force a recompile of all the :file:`.py` files in the :file:`Lib/` " "subdirectory and all its subdirectories::" msgstr "" +"Pour forcer la recompilation de tous les fichiers :file:`.py` dans le " +"dossier :file:`Lib/` et tous ses sous-dossiers ::" #: ../Doc/library/compileall.rst:284 msgid "Module :mod:`py_compile`" -msgstr "" +msgstr "Module :mod:`py_compile`" #: ../Doc/library/compileall.rst:285 msgid "Byte-compile a single source file." -msgstr "" +msgstr "Compiler un fichier source unique." diff --git a/library/configparser.po b/library/configparser.po index a1348dca..ce71cea3 100644 --- a/library/configparser.po +++ b/library/configparser.po @@ -16,7 +16,7 @@ msgstr "" #: ../Doc/library/configparser.rst:2 msgid ":mod:`configparser` --- Configuration file parser" -msgstr "" +msgstr ":mod:`configparser` — Lecture et écriture de fichiers de configuration" #: ../Doc/library/configparser.rst:14 msgid "**Source code:** :source:`Lib/configparser.py`" @@ -29,40 +29,55 @@ msgid "" "found in Microsoft Windows INI files. You can use this to write Python " "programs which can be customized by end users easily." msgstr "" +"Ce module fournit la classe :class:`ConfigParser`. Cette classe implémente " +"un langage de configuration basique, proche de ce que l'on peut trouver dans " +"les fichiers *INI* de Microsoft Windows. Vous pouvez utiliser ce module pour " +"écrire des programmes Python qui sont facilement configurables par " +"l'utilisateur final." #: ../Doc/library/configparser.rst:31 msgid "" "This library does *not* interpret or write the value-type prefixes used in " "the Windows Registry extended version of INI syntax." msgstr "" +"Ce module *n'implémente pas* la version étendue de la syntaxe *INI* qui " +"permet de lire ou d'écrire des valeurs dans la base de registre Windows en " +"utilisant divers préfixes." #: ../Doc/library/configparser.rst:38 msgid "Module :mod:`shlex`" -msgstr "" +msgstr "Module :mod:`shlex`" #: ../Doc/library/configparser.rst:37 msgid "" "Support for creating Unix shell-like mini-languages which can be used as an " "alternate format for application configuration files." msgstr "" +"Ce module fournit les outils permettant de créer des mini-langages de " +"programmation ressemblant au shell Unix, qui peuvent être utilisés comme " +"alternative pour les fichiers de configuration d'une application." #: ../Doc/library/configparser.rst:41 msgid "Module :mod:`json`" -msgstr "" +msgstr "Module :mod:`json`" #: ../Doc/library/configparser.rst:41 msgid "" "The json module implements a subset of JavaScript syntax which can also be " "used for this purpose." msgstr "" +"Le module *json* implémente un sous-ensemble de la syntaxe JavaScript, qui " +"peut aussi être utilisée à cet effet." #: ../Doc/library/configparser.rst:51 msgid "Quick Start" -msgstr "" +msgstr "Premiers pas" #: ../Doc/library/configparser.rst:53 msgid "Let's take a very basic configuration file that looks like this:" msgstr "" +"Prenons pour exemple un fichier de configuration très simple ressemblant à " +"ceci :" #: ../Doc/library/configparser.rst:70 msgid "" @@ -72,6 +87,11 @@ msgid "" "classes can read and write such files. Let's start by creating the above " "configuration file programmatically." msgstr "" +"La structure des fichiers *INI* est décrite dans la `section suivante " +"<#supported-ini-file-structure>`_. En bref, chaque fichier est constitué de " +"sections, chacune des sections comprenant des clés associées à des valeurs. " +"Les classes du module :mod:`configparser` peuvent écrire et lire de tels " +"fichiers. Commençons par le code qui permet de générer le fichier ci-dessus." #: ../Doc/library/configparser.rst:94 msgid "" @@ -79,12 +99,20 @@ msgid "" "are differences, `outlined later <#mapping-protocol-access>`_, but the " "behavior is very close to what you would expect from a dictionary." msgstr "" +"Comme vous pouvez le voir, nous pouvons manipuler l'instance renvoyée par " +"l'analyse du fichier de configuration comme s'il s'agissait d'un " +"dictionnaire. Il y a des différences, comme `explicité ci-dessous <#mapping-" +"protocol-access>`_, mais le comportement de l'instance est très proche de ce " +"que vous pourriez attendre d'un dictionnaire." #: ../Doc/library/configparser.rst:98 msgid "" "Now that we have created and saved a configuration file, let's read it back " "and explore the data it holds." msgstr "" +"Nous venons de créer et sauvegarder un fichier de configuration. Voyons " +"maintenant comment nous pouvons le lire et accéder aux données qu'il " +"contient." #: ../Doc/library/configparser.rst:133 msgid "" @@ -93,10 +121,15 @@ msgid "" "other sections [1]_. Note also that keys in sections are case-insensitive " "and stored in lowercase [1]_." msgstr "" +"Comme vous le voyez, l'API est assez simple à utiliser. La seule partie un " +"peu magique concerne la section ``DEFAULT``, qui fournit les valeurs par " +"défaut pour toutes les autres sections [1]_. Notez également que les clés à " +"l’intérieur des sections ne sont pas sensibles à la casse et qu'elles sont " +"stockées en minuscules. [1]_." #: ../Doc/library/configparser.rst:140 msgid "Supported Datatypes" -msgstr "" +msgstr "Types de données prises en charge" #: ../Doc/library/configparser.rst:142 msgid "" @@ -104,6 +137,10 @@ msgid "" "always storing them internally as strings. This means that if you need " "other datatypes, you should convert on your own:" msgstr "" +"Les lecteurs de configuration n'essayent jamais de deviner le type des " +"valeurs présentes dans les fichiers de configuration, et elles sont toujours " +"stockées en tant que chaînes de caractères. Ainsi, si vous avez besoin d'un " +"type différent, vous devez effectuer la conversion vous-même :" #: ../Doc/library/configparser.rst:153 msgid "" @@ -115,6 +152,16 @@ msgid "" "and recognizes Boolean values from ``'yes'``/``'no'``, ``'on'``/``'off'``, " "``'true'``/``'false'`` and ``'1'``/``'0'`` [1]_. For example:" msgstr "" +"Puisque que cette tâche doit être fréquemment accomplie, les lecteurs de " +"configurations fournissent un ensemble d'accesseurs permettant de gérer les " +"entiers, les flottants et les booléens plus facilement. Le cas des booléens " +"est le plus pertinent. En effet, vous ne pouvez pas vous contenter " +"d'utiliser la fonction ``bool()`` directement puisque ``bool('False')`` " +"renvoie ``True``. C'est pourquoi les lecteurs fournissent également la " +"méthode :meth:`~ConfigParser.getboolean`. Cette méthode n'est pas sensible à " +"la casse et interprète correctement les valeurs booléennes associées aux " +"chaînes de caractères comme ``'yes'``-``'no'``, ``'on'``-``'off'``, " +"``'true'``-``'false'`` et ``'1'``-``'0'`` [1]_. Par exemple :" #: ../Doc/library/configparser.rst:170 msgid "" @@ -123,16 +170,22 @@ msgid "" "methods. You can register your own converters and customize the provided " "ones. [1]_" msgstr "" +"En plus de :meth:`~ConfigParser.getboolean`, les lecteurs de configurations " +"fournissent également des méthodes similaires comme :meth:`~ConfigParser." +"getint` et :meth:`~ConfigParser.getfloat`. Vous pouvez enregistrer vos " +"propres convertisseurs et personnaliser ceux déjà fournis. [1]_" #: ../Doc/library/configparser.rst:176 msgid "Fallback Values" -msgstr "" +msgstr "Valeurs de substitution" #: ../Doc/library/configparser.rst:178 msgid "" "As with a dictionary, you can use a section's :meth:`get` method to provide " "fallback values:" msgstr "" +"Comme pour un dictionnaire, vous pouvez utiliser la méthode :meth:`get` " +"d'une section en spécifiant une valeur de substitution :" #: ../Doc/library/configparser.rst:191 msgid "" @@ -142,6 +195,11 @@ msgid "" "``'topsecret.server.com'``, we will always get the default, even if we " "specify a fallback:" msgstr "" +"Notez que les valeurs par défaut sont prioritaires par rapport aux valeurs " +"de substitution. Dans note exemple, la valeur de la clé ``CompressionLevel`` " +"était spécifiée uniquement dans la section ``DEFAULT``. Si nous essayons de " +"la récupérer depuis la section ``'topsecret.server.com'``, nous obtenons la " +"valeur par défaut, même en ayant spécifié une valeur de substitution :" #: ../Doc/library/configparser.rst:202 msgid "" @@ -150,6 +208,10 @@ msgid "" "compatibility. When using this method, a fallback value can be provided via " "the ``fallback`` keyword-only argument:" msgstr "" +"Il est important de savoir que la méthode :meth:`get` appelée au niveau de " +"l'analyseur fournit une interface particulière et plus complexe, qui est " +"maintenue pour des raisons de rétrocompatibilité. Vous pouvez fournir une " +"valeur de substitution via l'argument obligatoirement nommé ``fallback`` :" #: ../Doc/library/configparser.rst:213 msgid "" @@ -157,10 +219,13 @@ msgid "" "getint`, :meth:`~ConfigParser.getfloat` and :meth:`~ConfigParser.getboolean` " "methods, for example:" msgstr "" +"L'argument ``fallback`` peut être utilisé de la même façon avec les " +"méthodes :meth:`~ConfigParser.getint`, :meth:`~ConfigParser.getfloat` et :" +"meth:`~ConfigParser.getboolean`. Par exemple :" #: ../Doc/library/configparser.rst:229 msgid "Supported INI File Structure" -msgstr "" +msgstr "Structure des fichiers *INI* prise en change" #: ../Doc/library/configparser.rst:231 msgid "" @@ -173,6 +238,17 @@ msgid "" "indented deeper than the first line of the value. Depending on the parser's " "mode, blank lines may be treated as parts of multiline values or ignored." msgstr "" +"Un fichier de configuration est constitué de sections. Chacune des sections " +"commence par un en-tête ``[section]``, suivi d'une liste de définitions clés-" +"valeurs séparées par une chaîne de caractères spécifique (``=`` ou ``:`` par " +"défaut [1]_). Par défaut, les noms des sections sont sensibles à la casse " +"mais pas les clés [1]_. Les caractères d'espacement en début et en fin des " +"clés et des valeurs sont supprimés. Les valeurs peuvent être absentes, " +"auquel cas il est possible d'omettre le délimiteur entre clé et valeur. Les " +"valeurs peuvent s'étendre sur plusieurs lignes, à partir du moment où les " +"lignes supplémentaires sont plus indentées que la première ligne. Les lignes " +"vides peuvent être considérées comme faisant partie des valeurs multi " +"lignes, en fonction de la configuration de l'analyseur." #: ../Doc/library/configparser.rst:240 msgid "" @@ -180,6 +256,10 @@ msgid "" "(``#`` and ``;`` by default [1]_). Comments may appear on their own on an " "otherwise empty line, possibly indented. [1]_" msgstr "" +"Les fichiers de configuration peuvent contenir des commentaires, préfixés " +"par des caractères spécifiques (``#`` et ``;`` par défaut [1]_). Les " +"commentaires peuvent apparaître à l'emplacement d'une ligne vide, et peuvent " +"aussi être indentés. [1]_" #: ../Doc/library/configparser.rst:244 ../Doc/library/configparser.rst:307 msgid "For example:" @@ -187,7 +267,7 @@ msgstr "Par exemple :" #: ../Doc/library/configparser.rst:292 msgid "Interpolation of values" -msgstr "" +msgstr "Interpolation des valeurs" #: ../Doc/library/configparser.rst:294 msgid "" @@ -195,6 +275,9 @@ msgid "" "interpolation. This means values can be preprocessed before returning them " "from ``get()`` calls." msgstr "" +"La classe :class:`ConfigParser` prend en charge l’interpolation, en plus des " +"fonctionnalités de base. Cela signifie que les valeurs peuvent être traitées " +"avant d'être renvoyées par les appels aux méthodes ``get()``." #: ../Doc/library/configparser.rst:302 msgid "" @@ -203,6 +286,11 @@ msgid "" "or values in the special default section [1]_. Additional default values " "can be provided on initialization." msgstr "" +"Implémentation par défaut utilisée par la classe :class:`ConfigParser`. " +"Celle-ci permet aux valeurs de contenir des chaînes de formatage se référant " +"à d'autres valeurs dans la même section, ou bien à des valeurs dans la " +"section spéciale par défaut [1]_. D'autres valeurs par défaut peuvent être " +"fournies au moment de l'initialisation de cette classe." #: ../Doc/library/configparser.rst:319 msgid "" @@ -213,6 +301,13 @@ msgid "" "keys used in the chain of references do not have to be specified in any " "specific order in the configuration file." msgstr "" +"Dans l'exemple ci-dessus, une classe :class:`Configparser` dont l'attribut " +"*interpolation* vaut ``BasicInterpolation()`` interprète la chaîne de " +"caractères ``%(home_dir)s`` en utilisant la valeur de la clé ``home_dir`` " +"(``/Users`` dans ce cas). ``%(my_dir)s`` est interprétée comme ``/Users/" +"lumberjack``. Les interpolations sont effectuées à la volée. Ainsi, les clés " +"utilisées comme référence à l’intérieur des chaînes de formatage peuvent " +"être définies dans le fichier de configuration dans n'importe quel ordre." #: ../Doc/library/configparser.rst:326 msgid "" @@ -220,6 +315,9 @@ msgid "" "%(my_dir)s/Pictures`` as the value of ``my_pictures`` and ``%(home_dir)s/" "lumberjack`` as the value of ``my_dir``." msgstr "" +"Si l'attribut ``interpolation`` vaut ``None``, le lecteur renvoie ``" +"%(my_dir)s/Pictures`` comme valeur pour ``my_pictures`` et ``%(home_dir)s/" +"lumberjack`` comme valeur pour ``my_dir``." #: ../Doc/library/configparser.rst:334 msgid "" @@ -230,20 +328,30 @@ msgid "" "`` part is omitted, interpolation defaults to the current section (and " "possibly the default values from the special section)." msgstr "" +"Autre façon de gérer l'interpolation en utilisant une syntaxe plus avancée, " +"utilisée par exemple par ``zc.buildout``. Cette syntaxe étendue utilise la " +"chaîne de formatage ``{section:option}}`` pour désigner une valeur " +"appartenant à une autre section. L'interpolation peut s'étendre sur " +"plusieurs niveaux. Par commodité, si la partie ``{section}`` est absente, " +"l'interpolation utilise la section courante par défaut (et, le cas échéant, " +"les valeurs de la section par défaut spéciale)." #: ../Doc/library/configparser.rst:341 msgid "" "For example, the configuration specified above with basic interpolation, " "would look like this with extended interpolation:" msgstr "" +"Voici comment transformer la configuration ci-dessus avec la syntaxe " +"d'interpolation étendue :" #: ../Doc/library/configparser.rst:354 msgid "Values from other sections can be fetched as well:" msgstr "" +"Vous pouvez également récupérer des valeurs appartenant aux autres sections :" #: ../Doc/library/configparser.rst:376 msgid "Mapping Protocol Access" -msgstr "" +msgstr "Protocole d'accès associatif" #: ../Doc/library/configparser.rst:380 msgid "" @@ -252,6 +360,11 @@ msgid "" "`configparser`, the mapping interface implementation is using the " "``parser['section']['option']`` notation." msgstr "" +"Le terme « protocole d'accès associatif » est utilisé pour décrire la " +"fonctionnalité qui permet d'utiliser des objets personnalisés comme s'il " +"s'agissait de dictionnaires. Dans le cas du module :mod:`configparser`, " +"l’implémentation du protocole utilise la notation ``parser['section']" +"['option']``." #: ../Doc/library/configparser.rst:385 msgid "" @@ -261,6 +374,12 @@ msgid "" "values are changed on a section proxy, they are actually mutated in the " "original parser." msgstr "" +"En particulier, ``parser['section']`` renvoie un mandataire vers les données " +"de la section correspondantes dans l'analyseur. Cela signifie que les " +"valeurs ne sont pas copiées, mais prélevées depuis l'analyseur initial à la " +"demande. Plus important encore, lorsque les valeurs sont changées dans un " +"mandataire pour une section, elles sont en réalité changées dans l'analyseur " +"initial." #: ../Doc/library/configparser.rst:391 msgid "" @@ -269,6 +388,11 @@ msgid "" "`~collections.abc.MutableMapping` ABC. However, there are a few differences " "that should be taken into account:" msgstr "" +"Les objets du module :mod:`configparser` se comportent le plus possible " +"comme des vrais dictionnaires. L'interface est complète et suit les " +"définitions fournies par la classe abstraite :class:`~collections.abc." +"MutableMapping`. Cependant, il faut prendre en compte un certain nombre de " +"différences :" #: ../Doc/library/configparser.rst:396 msgid "" @@ -278,6 +402,11 @@ msgid "" "default. At the same time, for a section that holds the key ``'a'``, both " "expressions return ``True``::" msgstr "" +"Par défaut, toutes les clés des sections sont accessibles sans respect de la " +"casse [1]_. Par exemple, ``for option in parser[\"section\"]`` renvoie " +"uniquement les clés telles que transformées par la méthode ``optionxform``, " +"c'est-à-dire des clés transformées en minuscules. De même, pour une section " +"contenant la clé ``a``, les deux expressions suivantes renvoient ``True`` ::" #: ../Doc/library/configparser.rst:404 msgid "" @@ -288,22 +417,30 @@ msgid "" "deleting causes the default value to be visible again. Trying to delete a " "default value causes a :exc:`KeyError`." msgstr "" +"Toutes les sections incluent en plus les valeurs de la section " +"``DEFAULTSECT``. Cela signifie qu'appeler ``clear()`` sur une section ne la " +"fera pas forcément apparaître vide. En effet, les valeurs par défaut ne " +"peuvent pas être supprimées de la section (car, techniquement, elles n'y " +"sont pas présentes). Si vous détruisez une valeur par défaut qui a été " +"écrasée dans une section, alors la valeur par défaut sera de nouveau " +"visible. Essayer de détruire une valeur par défaut lève l'exception :exc:" +"`KeyError`." #: ../Doc/library/configparser.rst:411 msgid "``DEFAULTSECT`` cannot be removed from the parser:" -msgstr "" +msgstr "La section ``DEFAULTSECT`` ne peut pas être supprimée ::" #: ../Doc/library/configparser.rst:413 msgid "trying to delete it raises :exc:`ValueError`," -msgstr "" +msgstr "l'exception :exc:`ValueError` est levée si on essaye de la supprimer ;" #: ../Doc/library/configparser.rst:415 msgid "``parser.clear()`` leaves it intact," -msgstr "" +msgstr "appeler ``parser.clear()`` la laisse intacte ;" #: ../Doc/library/configparser.rst:417 msgid "``parser.popitem()`` never returns it." -msgstr "" +msgstr "appeler ```parser.popitem()`` ne la renvoie jamais." #: ../Doc/library/configparser.rst:419 msgid "" @@ -311,6 +448,10 @@ msgid "" "fallback value. Note however that the section-level ``get()`` methods are " "compatible both with the mapping protocol and the classic configparser API." msgstr "" +"Le deuxième argument de ``parser.get(section, option, **kwargs)`` n'est " +"**pas** une valeur de substitution. Notez cependant que les méthodes " +"``get()`` fournies par les sections sont compatibles à la fois avec le " +"protocole associatif et avec l'API classique de *configparser*." #: ../Doc/library/configparser.rst:423 msgid "" @@ -321,6 +462,13 @@ msgid "" "*value* pairs for a specified ``section``, with all interpolations expanded " "(unless ``raw=True`` is provided)." msgstr "" +"La méthode ``parser.items()`` est compatible avec le protocole d'accès " +"associatif et renvoie une liste de paires *section_name*, *section_proxy*, " +"en incluant la section *DEFAULTSECT*. Cependant, cette méthode peut aussi " +"être appelée avec des arguments : ``parser.items(section, raw, vars)``. Dans " +"ce cas, la méthode renvoie une liste de paires *option*, *value* pour la " +"section spécifiée, en interprétant les interpolations (à moins d'utiliser " +"``raw=True``)." #: ../Doc/library/configparser.rst:430 msgid "" @@ -328,10 +476,13 @@ msgid "" "that subclasses overriding the original interface still should have mappings " "working as expected." msgstr "" +"Le protocole d'accès est implémenté au-dessus de l'ancienne API. Ainsi, les " +"sous-classes qui écrasent des méthodes de l'interface originale se " +"comportent correctement du point de vue du protocole d'accès." #: ../Doc/library/configparser.rst:436 msgid "Customizing Parser Behaviour" -msgstr "" +msgstr "Personnalisation du comportement de l'analyseur" #: ../Doc/library/configparser.rst:438 msgid "" @@ -341,16 +492,25 @@ msgid "" "dictated by historical background and it's very likely that you will want to " "customize some of the features." msgstr "" +"Il existe pratiquement autant de variations du format *INI* que " +"d'applications qui l'utilisent. Le module :mod:`configparser` fait son " +"possible pour gérer le plus grand nombre de variantes raisonnables du style " +"*INI*. Le comportement par défaut est principalement contraint par des " +"raisons historiques. De ce fait, il est très probable qu'il soit nécessaire " +"de personnaliser certaines des fonctionnalités de ce module." #: ../Doc/library/configparser.rst:444 msgid "" "The most common way to change the way a specific config parser works is to " "use the :meth:`__init__` options:" msgstr "" +"La méthode la plus fréquemment utilisée pour changer la façon dont se " +"comporte un analyseur est d’utiliser les options de la méthode :meth:" +"`__init__` :" #: ../Doc/library/configparser.rst:447 msgid "*defaults*, default value: ``None``" -msgstr "" +msgstr "*defaults*, valeur par défaut : ``None``" #: ../Doc/library/configparser.rst:449 msgid "" @@ -359,16 +519,24 @@ msgid "" "concise configuration files that don't specify values which are the same as " "the documented default." msgstr "" +"Cette option accepte un dictionnaire de paires clé—valeurs qui seront " +"placées dans la section ``DEFAULT`` initialement. Ceci est une façon " +"élégante de prendre en charge des fichiers de configuration qui n'ont pas " +"besoin de spécifier de valeurs lorsque celles-ci sont identiques aux valeurs " +"par défaut documentées." #: ../Doc/library/configparser.rst:454 msgid "" "Hint: if you want to specify default values for a specific section, use :" "meth:`read_dict` before you read the actual file." msgstr "" +"Conseil : utilisez la méthode :meth:`read_dict` avant de lire le ficher de " +"configuration si vous voulez spécifier des valeurs par défaut pour une " +"section spécifique." #: ../Doc/library/configparser.rst:457 msgid "*dict_type*, default value: :class:`dict`" -msgstr "" +msgstr "*dict_type*, valeur par défaut : :class:`dict`" #: ../Doc/library/configparser.rst:459 msgid "" @@ -377,12 +545,19 @@ msgid "" "every section is stored in the order they were added to the parser. Same " "goes for options within sections." msgstr "" +"Cette option influe de manière importante sur la façon dont le protocole " +"d'accès associatif se comporte et ce à quoi ressemblent les fichiers de " +"configuration une fois écrits. Avec un dictionnaire standard, les sections " +"sont stockées dans l'ordre où elles ont été ajoutées à l'analyseur. Ceci est " +"également vrai pour les options à l'intérieur des sections." #: ../Doc/library/configparser.rst:464 msgid "" "An alternative dictionary type can be used for example to sort sections and " "options on write-back." msgstr "" +"Si vous souhaitez classer les sections et les options lors de l'écriture par " +"exemple, vous pouvez utiliser un type de dictionnaire différent." #: ../Doc/library/configparser.rst:467 msgid "" @@ -390,10 +565,13 @@ msgid "" "operation. When you use a regular dictionary in those operations, the order " "of the keys will be ordered. For example:" msgstr "" +"À noter : il est possible d'ajouter un ensemble de paires clés—valeurs en " +"une seule opération. L'ordre des clés est préservé si vous utilisez un " +"dictionnaire standard pour cela. Par exemple :" #: ../Doc/library/configparser.rst:489 msgid "*allow_no_value*, default value: ``False``" -msgstr "" +msgstr "*allow_no_value*, valeur par défaut : ``False``" #: ../Doc/library/configparser.rst:491 msgid "" @@ -402,10 +580,15 @@ msgid "" "*allow_no_value* parameter to the constructor can be used to indicate that " "such values should be accepted:" msgstr "" +"Certains fichiers de configurations sont connus pour contenir des options " +"sans valeur associée, tout en se conformant à la syntaxe prise en charge par " +"le module :mod:`configparser` par ailleurs. Pour indiquer que de telles " +"valeurs sont acceptables, utilisez le paramètre *allow_no_value* lors de la " +"construction de l'instance :" #: ../Doc/library/configparser.rst:526 msgid "*delimiters*, default value: ``('=', ':')``" -msgstr "" +msgstr "*delimiters*, valeur par défaut : ``('=', ':')``" #: ../Doc/library/configparser.rst:528 msgid "" @@ -413,20 +596,30 @@ msgid "" "The first occurrence of a delimiting substring on a line is considered a " "delimiter. This means values (but not keys) can contain the delimiters." msgstr "" +"Chaînes de caractères qui séparent les clés des valeurs à l'intérieur d'une " +"section. La première occurrence d'une telle chaîne à l'intérieur d'une ligne " +"est considérée comme un délimiteur. Cela signifie que les valeurs peuvent " +"contenir certains des délimiteurs (mais pas les clés)." #: ../Doc/library/configparser.rst:532 msgid "" "See also the *space_around_delimiters* argument to :meth:`ConfigParser." "write`." msgstr "" +"Voir aussi l'argument *space_around_delimiters* de la méthode :meth:" +"`ConfigParser.write`." #: ../Doc/library/configparser.rst:535 msgid "*comment_prefixes*, default value: ``('#', ';')``" msgstr "" +"*comment_prefixes* (préfixes de commentaire) — valeur par défaut : ``('#', " +"';')``" #: ../Doc/library/configparser.rst:537 msgid "*inline_comment_prefixes*, default value: ``None``" msgstr "" +"*inline_comment_prefixes* (préfixes de commentaire en ligne) — valeur par " +"défaut : ``('#', ';')``" #: ../Doc/library/configparser.rst:539 msgid "" @@ -437,12 +630,23 @@ msgid "" "well). By default inline comments are disabled and ``'#'`` and ``';'`` are " "used as prefixes for whole line comments." msgstr "" +"Les préfixes de commentaire indiquent le début d'un commentaire valide au " +"sein d'un fichier de configuration. Ils ne peuvent être utilisés qu'à " +"l'emplacement d'une ligne vide (potentiellement indentée). En revanche, les " +"préfixes de commentaires en ligne peuvent être utilisés après n'importe " +"quelle valeur valide (comme les noms des sections, les options et les lignes " +"vides). Par défaut, les commentaires en ligne sont désactivés et les " +"préfixes utilisés pour les commentaires à l'emplacement d'une ligne vide " +"sont `'#'`` et ``';'``." #: ../Doc/library/configparser.rst:546 msgid "" "In previous versions of :mod:`configparser` behaviour matched " "``comment_prefixes=('#',';')`` and ``inline_comment_prefixes=(';',)``." msgstr "" +"Les précédentes versions du module :mod:`configparser` se comportent comme " +"en utilisant ``comment_prefixes=('#',';')`` et " +"``inline_comment_prefixes=(';',)``." #: ../Doc/library/configparser.rst:550 msgid "" @@ -453,10 +657,17 @@ msgid "" "storing comment prefix characters at the beginning of a line in multiline " "values is to interpolate the prefix, for example::" msgstr "" +"Notez que les analyseurs ne prennent pas en charge l'échappement des " +"préfixes de commentaires. Ainsi, l'utilisation de *inline_comment_prefixes* " +"peut empêcher les utilisateurs de spécifier des valeurs qui contiennent des " +"caractères utilisés comme préfixe de commentaire. Dans le doute, il est " +"recommandé de ne pas utiliser *inline_comment_prefixes*. Dans tous les cas, " +"la seule façon de stocker des préfixes de commentaires au début d'une valeur " +"multi lignes est d'interpoler ceux-ci, par exemple ::" #: ../Doc/library/configparser.rst:596 msgid "*strict*, default value: ``True``" -msgstr "" +msgstr "*scrict*, valeur par défaut : ``True``" #: ../Doc/library/configparser.rst:598 msgid "" @@ -465,16 +676,23 @@ msgid "" "meth:`read_string` or :meth:`read_dict`). It is recommended to use strict " "parsers in new applications." msgstr "" +"Quand la valeur ``True`` est spécifiée, le parseur refuse toute section ou " +"option dupliquée lors de la lecture d'une source unique (lorsque :meth:" +"`read_file`, :meth:`read_string` ou :meth:`read_dict` sont utilisées). Il " +"est recommandé d'utiliser un mode de fonctionnement strict pour les " +"analyseurs employés par de nouvelles applications." #: ../Doc/library/configparser.rst:603 msgid "" "In previous versions of :mod:`configparser` behaviour matched " "``strict=False``." msgstr "" +"Les versions précédentes du module :mod:`configparser` se comportent comme " +"en utilisant ``strict=False``." #: ../Doc/library/configparser.rst:607 msgid "*empty_lines_in_values*, default value: ``True``" -msgstr "" +msgstr "*empty_lines_in_values*, valeur par défaut : ``True``" #: ../Doc/library/configparser.rst:609 msgid "" @@ -485,6 +703,13 @@ msgid "" "when configuration files get big and complex, it is easy for the user to " "lose track of the file structure. Take for instance:" msgstr "" +"Du point de vue des analyseurs, les valeurs peuvent s'étendre sur plusieurs " +"lignes à partir du moment où elles sont plus indentées que la clé qui les " +"contient. Par défaut les analyseurs autorisent les lignes vides à faire " +"partie de telles valeurs. Dans le même temps, les clés elles-mêmes peuvent " +"être indentées de façon à rendre le fichier plus lisible. En conséquence, il " +"est probable que l'utilisateur perde de vue la structure du fichier lorsque " +"celui-ci devient long et complexe. Prenez par exemple :" #: ../Doc/library/configparser.rst:624 msgid "" @@ -494,12 +719,20 @@ msgid "" "This will make empty lines split keys every time. In the example above, it " "would produce two keys, ``key`` and ``this``." msgstr "" +"Ceci est particulièrement problématique si l'utilisateur a configuré son " +"éditeur pour utiliser une police à chasse variable. C'est pourquoi il est " +"conseillé de ne pas prendre en charge les valeurs avec des lignes vides, à " +"moins que votre application en ait besoin. Dans ce cas, les lignes vides " +"sont toujours interprétées comme séparant des clés. Dans l'exemple ci-" +"dessus, cela produit deux clés : ``key`` et ``this``." #: ../Doc/library/configparser.rst:630 msgid "" "*default_section*, default value: ``configparser.DEFAULTSECT`` (that is: ``" "\"DEFAULT\"``)" msgstr "" +"*default_section*, valeur par défaut : ``configparser.DEFAULTSECT`` " +"(autrement dit : ``\"DEFAULT\"``)" #: ../Doc/library/configparser.rst:633 msgid "" @@ -570,6 +803,12 @@ msgid "" "``'off'``. You can override this by specifying a custom dictionary of " "strings and their Boolean outcomes. For example:" msgstr "" +"Par défaut, la méthode :meth:`~ConfigParser.getboolean` considère les " +"valeurs suivantes comme vraies : `'1'``, ``'yes'``, ``'true'``, ``'on'``, et " +"les valeurs suivantes comme fausses : ``'0'``, ``'no'``, ``'false'``, " +"``'off'``. Vous pouvez changer ce comportement en spécifiant votre propre " +"dictionnaire associant des chaînes de caractères à des valeurs booléennes. " +"Par exemple :" #: ../Doc/library/configparser.rst:695 msgid "" diff --git a/library/contextvars.po b/library/contextvars.po index 84834da9..9ec96659 100644 --- a/library/contextvars.po +++ b/library/contextvars.po @@ -16,7 +16,7 @@ msgstr "" #: ../Doc/library/contextvars.rst:2 msgid ":mod:`contextvars` --- Context Variables" -msgstr "" +msgstr ":mod:`contextvars` — Variables de contexte" #: ../Doc/library/contextvars.rst:11 msgid "" @@ -26,6 +26,12 @@ msgid "" "the :class:`~contextvars.Context` class should be used to manage the current " "context in asynchronous frameworks." msgstr "" +"Ce module fournit des API pour gérer, stocker et accéder à l'état local de " +"contexte. La classe :class:`~contextvars.ContextVar` est utilisée pour " +"déclarer et travailler avec les *Variables de contexte*. La fonction :func:" +"`~contextvars.copy_context` et la classe :class:`~contextvars.Context` " +"doivent être utilisées pour la gestion du contexte actuel dans les " +"cadriciels asynchrones." #: ../Doc/library/contextvars.rst:17 msgid "" @@ -33,23 +39,31 @@ msgid "" "func:`threading.local()` to prevent their state from bleeding to other code " "unexpectedly, when used in concurrent code." msgstr "" +"Les gestionnaires de contexte, quand ils ont un état et quand ils sont " +"utilisés dans du code s'exécutant de manière concurrente, doivent utiliser " +"les variables de contexte au lieu de :func:`threading.local()` pour empêcher " +"que leur état ne perturbe un autre fil de manière inattendue." #: ../Doc/library/contextvars.rst:21 msgid "See also :pep:`567` for additional details." -msgstr "" +msgstr "Voir aussi :pep:`567` pour plus de détails." #: ../Doc/library/contextvars.rst:27 msgid "Context Variables" -msgstr "" +msgstr "Variables de contexte" #: ../Doc/library/contextvars.rst:31 msgid "This class is used to declare a new Context Variable, e.g.::" msgstr "" +"Cette classe est utilisée pour déclarer une nouvelle variable de contexte, " +"p. ex. ::" #: ../Doc/library/contextvars.rst:35 msgid "" "The required *name* parameter is used for introspection and debug purposes." msgstr "" +"Le paramètre requis *name* est utilisé à des fins d'introspection et de " +"débogage." #: ../Doc/library/contextvars.rst:38 msgid "" @@ -57,6 +71,8 @@ msgid "" "`ContextVar.get` when no value for the variable is found in the current " "context." msgstr "" +"Le paramètre nommé *default* est renvoyé par :meth:`ContextVar.get` quand " +"aucune valeur n'est trouvée dans le contexte actuel pour la variable." #: ../Doc/library/contextvars.rst:42 msgid "" @@ -65,57 +81,77 @@ msgid "" "context variables which prevents context variables from being properly " "garbage collected." msgstr "" +"**Important :** les variables de contexte doivent être créées au plus haut " +"niveau du module et jamais dans des fermetures (*closures*). Les objets :" +"class:`Context` maintiennent des références fortes aux variables de contexte " +"ce qui empêche que les variables de contexte soient correctement nettoyées " +"par le ramasse-miette." #: ../Doc/library/contextvars.rst:49 msgid "The name of the variable. This is a read-only property." -msgstr "" +msgstr "Nom de la variable. Cette propriété est en lecture seule." #: ../Doc/library/contextvars.rst:55 msgid "Return a value for the context variable for the current context." -msgstr "" +msgstr "Renvoie la valeur de la variable de contexte pour le contexte actuel." #: ../Doc/library/contextvars.rst:57 msgid "" "If there is no value for the variable in the current context, the method " "will:" msgstr "" +"S'il n'y a pas de valeur pour la variable dans le contexte actuel, la " +"méthode :" #: ../Doc/library/contextvars.rst:60 msgid "" "return the value of the *default* argument of the method, if provided; or" msgstr "" +"renvoie la valeur de l'argument *default* passé à la méthode, s'il a été " +"fourni ;" #: ../Doc/library/contextvars.rst:63 msgid "" "return the default value for the context variable, if it was created with " "one; or" msgstr "" +"ou renvoie la valeur par défaut de la variable de contexte, si elle a été " +"créée avec une valeur par défaut ;" #: ../Doc/library/contextvars.rst:66 msgid "raise a :exc:`LookupError`." -msgstr "" +msgstr "ou lève une erreur :exc:`LookupError`." #: ../Doc/library/contextvars.rst:70 msgid "" "Call to set a new value for the context variable in the current context." msgstr "" +"Assigne une nouvelle valeur à la variable de contexte dans le contexte " +"actuel." #: ../Doc/library/contextvars.rst:73 msgid "" "The required *value* argument is the new value for the context variable." msgstr "" +"L'argument requis *value* est la nouvelle valeur pour la variable de " +"contexte." #: ../Doc/library/contextvars.rst:76 msgid "" "Returns a :class:`~contextvars.Token` object that can be used to restore the " "variable to its previous value via the :meth:`ContextVar.reset` method." msgstr "" +"Renvoie un objet :class:`~contextvars.Token` qui peut être utilisé pour " +"rétablir la variable à sa valeur précédente par la méthode :meth:`ContextVar." +"reset`." #: ../Doc/library/contextvars.rst:82 msgid "" "Reset the context variable to the value it had before the :meth:`ContextVar." "set` that created the *token* was used." msgstr "" +"Réinitialise la variable de contexte à la valeur qu'elle avait avant l'appel " +"de :meth:`ContextVar.set` qui a créé le *token*." #: ../Doc/library/contextvars.rst:85 msgid "For example::" @@ -127,12 +163,17 @@ msgid "" "be passed to the :meth:`ContextVar.reset` method to revert the value of the " "variable to what it was before the corresponding *set*." msgstr "" +"Les objets *Token* sont renvoyés par la méthode :meth:`ContextVar.set`. Ils " +"peuvent être passés à la méthode :meth:`ContextVar.reset` pour réaffecter la " +"valeur de la variable à ce qu'elle était avant le *set* correspondant." #: ../Doc/library/contextvars.rst:106 msgid "" "A read-only property. Points to the :class:`ContextVar` object that created " "the token." msgstr "" +"Propriété en lecture seule. Pointe vers l'objet :class:`ContextVar` qui a " +"créé le token." #: ../Doc/library/contextvars.rst:111 msgid "" @@ -140,44 +181,56 @@ msgid "" "`ContextVar.set` method call that created the token. It points to :attr:" "`Token.MISSING` is the variable was not set before the call." msgstr "" +"Propriété en lecture seule. Sa valeur est celle que la variable avait avant " +"l'appel à la méthode :meth:`ContextVar.set` qui a créé le jeton. Elle pointe " +"à :attr:`Token.MISSING` si la variable n'est pas définie avant l'appel." #: ../Doc/library/contextvars.rst:118 msgid "A marker object used by :attr:`Token.old_value`." -msgstr "" +msgstr "Objet marqueur utilisé par :attr:`Token.old_value`." #: ../Doc/library/contextvars.rst:122 msgid "Manual Context Management" -msgstr "" +msgstr "Gestion de contexte manuelle" #: ../Doc/library/contextvars.rst:126 msgid "Returns a copy of the current :class:`~contextvars.Context` object." -msgstr "" +msgstr "Renvoie une copie de l'objet :class:`~contextvars.Context` actuel." #: ../Doc/library/contextvars.rst:128 msgid "" "The following snippet gets a copy of the current context and prints all " "variables and their values that are set in it::" msgstr "" +"Le fragment de code qui suit obtient une copie du contexte actuel et affiche " +"toutes les variables avec leurs valeurs définies dans ce contexte." #: ../Doc/library/contextvars.rst:134 msgid "" "The function has an O(1) complexity, i.e. works equally fast for contexts " "with a few context variables and for contexts that have a lot of them." msgstr "" +"La fonction a une complexité O(1), c.-à-d. qu'elle fonctionne aussi " +"rapidement pour des contextes avec peu de variables de contexte que pour des " +"contextes qui en ont beaucoup." #: ../Doc/library/contextvars.rst:141 msgid "A mapping of :class:`ContextVars ` to their values." msgstr "" +"Tableau associatif entre :class:`ContextVars ` et leurs valeurs." #: ../Doc/library/contextvars.rst:143 msgid "" "``Context()`` creates an empty context with no values in it. To get a copy " "of the current context use the :func:`~contextvars.copy_context` function." msgstr "" +"``Context()`` crée un contexte vide ne contenant aucune valeur. Pour obtenir " +"une copie du contexte actuel, utilisez la fonction :func:`~contextvars." +"copy_context`." #: ../Doc/library/contextvars.rst:147 msgid "Context implements the :class:`collections.abc.Mapping` interface." -msgstr "" +msgstr "*Context* implémente l'interface :class:`collections.abc.Mapping`." #: ../Doc/library/contextvars.rst:151 msgid "" @@ -185,66 +238,85 @@ msgid "" "method is called on. Return the result of the execution or propagate an " "exception if one occurred." msgstr "" +"Exécute le code ``callable(*args, **kwargs)`` dans le contexte défini par " +"l'objet. Renvoie le résultat de l'exécution ou propage une exception s'il y " +"en a une qui s'est produite." #: ../Doc/library/contextvars.rst:155 msgid "" "Any changes to any context variables that *callable* makes will be contained " "in the context object::" msgstr "" +"Tout changement apporté aux variables de contexte effectué par *callable* " +"sera contenu dans l'objet de contexte ::" #: ../Doc/library/contextvars.rst:184 msgid "" "The method raises a :exc:`RuntimeError` when called on the same context " "object from more than one OS thread, or when called recursively." msgstr "" +"La méthode lève une :exc:`RuntimeError` quand elle est appelée sur le même " +"objet de contexte depuis plus qu'un fil d'exécution ou quand elle est " +"appelée récursivement." #: ../Doc/library/contextvars.rst:190 msgid "Return a shallow copy of the context object." -msgstr "" +msgstr "Renvoie une copie de surface de l'objet de contexte." #: ../Doc/library/contextvars.rst:194 msgid "" "Return ``True`` if the *context* has a value for *var* set; return ``False`` " "otherwise." msgstr "" +"Renvoie ``True`` si le *context* a une valeur pour *var* ; sinon renvoie " +"``False``." #: ../Doc/library/contextvars.rst:199 msgid "" "Return the value of the *var* :class:`ContextVar` variable. If the variable " "is not set in the context object, a :exc:`KeyError` is raised." msgstr "" +"Renvoie la valeur de la variable :class:`ContextVar` *var*. Si la variable " +"n'est pas définie dans l'objet de contexte, une :exc:`KeyError` est levée." #: ../Doc/library/contextvars.rst:205 msgid "" "Return the value for *var* if *var* has the value in the context object. " "Return *default* otherwise. If *default* is not given, return ``None``." msgstr "" +"Renvoie la valeur de *var* si *var* possède une valeur dans l'objet de " +"contexte. Renvoie *default* sinon (ou ``None`` si *default* n'est pas donné)." #: ../Doc/library/contextvars.rst:211 msgid "Return an iterator over the variables stored in the context object." msgstr "" +"Renvoie un itérateur sur les variables stockées dans l'objet de contexte." #: ../Doc/library/contextvars.rst:216 msgid "Return the number of variables set in the context object." -msgstr "" +msgstr "Renvoie le nombre de variables définies dans l'objet de contexte." #: ../Doc/library/contextvars.rst:220 msgid "Return a list of all variables in the context object." -msgstr "" +msgstr "Renvoie une liste de toutes les variables dans l'objet de contexte." #: ../Doc/library/contextvars.rst:224 msgid "Return a list of all variables' values in the context object." msgstr "" +"Renvoie une liste de toutes les valeurs des variables dans l'objet de " +"contexte." #: ../Doc/library/contextvars.rst:229 msgid "" "Return a list of 2-tuples containing all variables and their values in the " "context object." msgstr "" +"Renvoie une liste de paires contenant toutes les variables et leurs valeurs " +"dans l'objet de contexte." #: ../Doc/library/contextvars.rst:234 msgid "asyncio support" -msgstr "" +msgstr "Gestion avec *asyncio*" #: ../Doc/library/contextvars.rst:236 msgid "" @@ -253,3 +325,8 @@ msgid "" "server, that uses a context variable to make the address of a remote client " "available in the Task that handles that client::" msgstr "" +":mod:`asyncio` gère nativement les variables de contexte et elles sont " +"prêtes à être utilisées sans configuration supplémentaire. Par exemple, " +"voici un serveur *echo* simple qui utilise une variable de contexte pour que " +"l’adresse d'un client distant soit disponible dans le *Task* qui gère ce " +"client ::" diff --git a/library/curses.po b/library/curses.po index 11dc351b..04888ad1 100644 --- a/library/curses.po +++ b/library/curses.po @@ -1658,7 +1658,7 @@ msgstr "" #: ../Doc/library/curses.rst:1384 msgid "Key" -msgstr "" +msgstr "Clé" #: ../Doc/library/curses.rst:1386 msgid "``KEY_MIN``" diff --git a/library/fractions.po b/library/fractions.po index b35c580b..3498ba16 100644 --- a/library/fractions.po +++ b/library/fractions.po @@ -122,6 +122,8 @@ msgid "" "Return a tuple of two integers, whose ratio is equal to the Fraction and " "with a positive denominator." msgstr "" +"Renvoie un *n*-uplet de deux entiers, dont le quotient est égal à la " +"fraction et dont le dénominateur est positif." #: ../Doc/library/fractions.rst:106 msgid "" diff --git a/library/functools.po b/library/functools.po index b005b930..944008a9 100644 --- a/library/functools.po +++ b/library/functools.po @@ -136,6 +136,9 @@ msgid "" "*lru_cache* decorator to be applied directly to a user function, leaving the " "*maxsize* at its default value of 128::" msgstr "" +"Si *user_function* est défini, ce doit être un appelable. Ceci permet à " +"*lru_cache* d'être appliqué directement sur une fonction de l'utilisateur, " +"sans préciser *maxsize* (qui est alors défini à sa valeur par défaut, 128) ::" #: ../Doc/library/functools.rst:103 #, fuzzy @@ -396,6 +399,8 @@ msgid "" "See :func:`itertools.accumulate` for an iterator that yields all " "intermediate values." msgstr "" +"Voir :func:`itertools.accumulate` pour un itérateur qui génère toutes les " +"valeurs intermédiaires." #: ../Doc/library/functools.rst:326 msgid "" diff --git a/library/locale.po b/library/locale.po index 3acd580f..15584460 100644 --- a/library/locale.po +++ b/library/locale.po @@ -17,7 +17,7 @@ msgstr "" #: ../Doc/library/locale.rst:2 msgid ":mod:`locale` --- Internationalization services" -msgstr "" +msgstr ":mod:`locale` — Services d'internationalisation" #: ../Doc/library/locale.rst:10 #, fuzzy @@ -31,22 +31,33 @@ msgid "" "certain cultural issues in an application, without requiring the programmer " "to know all the specifics of each country where the software is executed." msgstr "" +"Le module :mod:`locale` donne accès à la base de données et aux " +"fonctionnalités des paramètres linguistiques définis par POSIX. Le mécanisme " +"des paramètres linguistiques de POSIX permet aux développeurs de faire face " +"à certaines problématiques culturelles dans une application, sans avoir à " +"connaître toutes les spécificités de chaque pays où le logiciel est exécuté." #: ../Doc/library/locale.rst:21 msgid "" "The :mod:`locale` module is implemented on top of the :mod:`_locale` module, " "which in turn uses an ANSI C locale implementation if available." msgstr "" +"Le module :mod:`locale` est implémenté au-dessus du module :mod:`_locale`, " +"qui lui-même utilise l'implémentation du paramètre régional ANSI C si " +"disponible." #: ../Doc/library/locale.rst:24 msgid "The :mod:`locale` module defines the following exception and functions:" msgstr "" +"Le module :mod:`locale` définit l'exception et les fonctions suivantes :" #: ../Doc/library/locale.rst:29 msgid "" "Exception raised when the locale passed to :func:`setlocale` is not " "recognized." msgstr "" +"Exception levée lorsque le paramètre régional passé en paramètre de :func:" +"`setlocale` n'est pas reconnu." #: ../Doc/library/locale.rst:35 msgid "" @@ -59,18 +70,31 @@ msgid "" "exception :exc:`Error` is raised. If successful, the new locale setting is " "returned." msgstr "" +"Si *locale* ne vaut pas ``None``, :func:`setlocale` modifie le paramètre " +"régional pour la catégorie *category*. Les catégories disponibles sont " +"listées dans la description des données ci-dessous. *locale* peut être une " +"chaîne de caractères ou un itérable de deux chaînes de caractères (code de " +"la langue et encodage). Si c'est un itérable, il est converti en un nom de " +"paramètre régional à l'aide du moteur de normalisation fait pour. Si c'est " +"une chaîne vide, les paramètres par défaut de l'utilisateur sont utilisés. " +"Si la modification du paramètre régional échoue, l'exception :exc:`Error` " +"est levée. Si elle fonctionne, le nouveau paramètre est renvoyé." #: ../Doc/library/locale.rst:43 msgid "" "If *locale* is omitted or ``None``, the current setting for *category* is " "returned." msgstr "" +"Si *locale* est omis ou vaut ``None``, le paramètre actuel de *category* est " +"renvoyé." #: ../Doc/library/locale.rst:46 msgid "" ":func:`setlocale` is not thread-safe on most systems. Applications typically " "start with a call of ::" msgstr "" +":func:`setlocale` n'est pas *thread-safe* sur la plupart des systèmes. Les " +"applications commencent généralement par un appel de : ::" #: ../Doc/library/locale.rst:52 msgid "" @@ -79,20 +103,28 @@ msgid "" "locale is not changed thereafter, using multithreading should not cause " "problems." msgstr "" +"Cela définit les paramètres régionaux dans toutes les catégories sur ceux " +"par défaut de l'utilisateur (habituellement spécifiés dans la variable " +"d'environnement :envvar:`LANG`). Si les paramètres régionaux ne sont pas " +"modifiés par la suite, l'utilisation de fils d'exécution ne devrait pas " +"poser de problèmes." #: ../Doc/library/locale.rst:59 msgid "" "Returns the database of the local conventions as a dictionary. This " "dictionary has the following strings as keys:" msgstr "" +"Renvoie la base de données des conventions locales sous forme de " +"dictionnaire. Ce dictionnaire a les chaînes de caractères suivantes comme " +"clés :" #: ../Doc/library/locale.rst:65 msgid "Category" -msgstr "" +msgstr "Catégorie" #: ../Doc/library/locale.rst:65 msgid "Key" -msgstr "" +msgstr "Clé" #: ../Doc/library/locale.rst:65 msgid "Meaning" @@ -109,6 +141,8 @@ msgstr "``'decimal_point'``" #: ../Doc/library/locale.rst:67 msgid "Decimal point character." msgstr "" +"Caractère du séparateur décimal (entre la partie entière et la partie " +"décimale)." #: ../Doc/library/locale.rst:69 msgid "``'grouping'``" @@ -121,6 +155,11 @@ msgid "" "`CHAR_MAX`, no further grouping is performed. If the sequence terminates " "with a ``0``, the last group size is repeatedly used." msgstr "" +"Séquence de nombres spécifiant les positions relatives attendues pour " +"``'thousands_sep'`` (séparateur de milliers). Si la séquence se termine " +"par :const:`CHAR_MAX`, aucun autre regroupement n'est effectué. Si la " +"séquence se termine par un ``0``, la dernière taille du groupe est utilisée " +"à plusieurs reprises." #: ../Doc/library/locale.rst:80 msgid "``'thousands_sep'``" @@ -128,7 +167,7 @@ msgstr "``'thousands_sep'``" #: ../Doc/library/locale.rst:80 msgid "Character used between groups." -msgstr "" +msgstr "Caractère utilisé entre les groupes (séparateur de milliers)." #: ../Doc/library/locale.rst:82 msgid ":const:`LC_MONETARY`" @@ -140,7 +179,7 @@ msgstr "``'int_curr_symbol'``" #: ../Doc/library/locale.rst:82 msgid "International currency symbol." -msgstr "" +msgstr "Symbole monétaire international." #: ../Doc/library/locale.rst:84 msgid "``'currency_symbol'``" @@ -148,7 +187,7 @@ msgstr "``'currency_symbol'``" #: ../Doc/library/locale.rst:84 msgid "Local currency symbol." -msgstr "" +msgstr "Symbole monétaire local." #: ../Doc/library/locale.rst:86 msgid "``'p_cs_precedes/n_cs_precedes'``" @@ -159,6 +198,8 @@ msgid "" "Whether the currency symbol precedes the value (for positive resp. negative " "values)." msgstr "" +"Si le symbole monétaire précède ou non la valeur (pour les valeurs positives " +"et négatives, respectivement)." #: ../Doc/library/locale.rst:91 msgid "``'p_sep_by_space/n_sep_by_space'``" @@ -169,6 +210,8 @@ msgid "" "Whether the currency symbol is separated from the value by a space (for " "positive resp. negative values)." msgstr "" +"Si le symbole monétaire est séparé de la valeur par une espace ou non (pour " +"les valeurs positives et négatives, respectivement)." #: ../Doc/library/locale.rst:96 msgid "``'mon_decimal_point'``" @@ -177,6 +220,8 @@ msgstr "``'mon_decimal_point'``" #: ../Doc/library/locale.rst:96 msgid "Decimal point used for monetary values." msgstr "" +"Séparateur décimal (entre la partie entière et la partie décimale) utilisé " +"pour les valeurs monétaires." #: ../Doc/library/locale.rst:99 msgid "``'frac_digits'``" @@ -186,6 +231,7 @@ msgstr "``'frac_digits'``" msgid "" "Number of fractional digits used in local formatting of monetary values." msgstr "" +"Nombre de décimales utilisées dans le format local des valeurs monétaires." #: ../Doc/library/locale.rst:103 msgid "``'int_frac_digits'``" @@ -196,6 +242,8 @@ msgid "" "Number of fractional digits used in international formatting of monetary " "values." msgstr "" +"Nombre de décimales utilisées dans le format international des valeurs " +"monétaires." #: ../Doc/library/locale.rst:107 msgid "``'mon_thousands_sep'``" @@ -203,7 +251,7 @@ msgstr "``'mon_thousands_sep'``" #: ../Doc/library/locale.rst:107 msgid "Group separator used for monetary values." -msgstr "" +msgstr "Séparateur de groupe utilisé pour les valeurs monétaires." #: ../Doc/library/locale.rst:110 msgid "``'mon_grouping'``" @@ -211,7 +259,7 @@ msgstr "``'mon_grouping'``" #: ../Doc/library/locale.rst:110 msgid "Equivalent to ``'grouping'``, used for monetary values." -msgstr "" +msgstr "Équivalent de ``'grouping'``, utilisé pour les valeurs monétaires." #: ../Doc/library/locale.rst:113 msgid "``'positive_sign'``" @@ -219,7 +267,7 @@ msgstr "``'positive_sign'``" #: ../Doc/library/locale.rst:113 msgid "Symbol used to annotate a positive monetary value." -msgstr "" +msgstr "Symbole utilisé pour indiquer qu'une valeur monétaire est positive." #: ../Doc/library/locale.rst:116 msgid "``'negative_sign'``" @@ -227,7 +275,7 @@ msgstr "``'negative_sign'``" #: ../Doc/library/locale.rst:116 msgid "Symbol used to annotate a negative monetary value." -msgstr "" +msgstr "Symbole utilisé pour indiquer qu'une valeur monétaire est négative." #: ../Doc/library/locale.rst:119 msgid "``'p_sign_posn/n_sign_posn'``" @@ -237,18 +285,24 @@ msgstr "``'p_sign_posn/n_sign_posn'``" msgid "" "The position of the sign (for positive resp. negative values), see below." msgstr "" +"Position du signe (pour les valeurs positives et négatives, respectivement), " +"voir ci-dessous." #: ../Doc/library/locale.rst:124 msgid "" "All numeric values can be set to :const:`CHAR_MAX` to indicate that there is " "no value specified in this locale." msgstr "" +"Toutes les valeurs numériques peuvent être définies à :const:`CHAR_MAX` pour " +"indiquer qu'il n'y a pas de valeur spécifiée pour ces paramètres régionaux." #: ../Doc/library/locale.rst:127 msgid "" "The possible values for ``'p_sign_posn'`` and ``'n_sign_posn'`` are given " "below." msgstr "" +"Les valeurs possibles pour ``'p_sign_posn'`` et ``'n_sign_posn'`` sont " +"données ci-dessous." #: ../Doc/library/locale.rst:130 msgid "Value" @@ -264,7 +318,7 @@ msgstr "``0``" #: ../Doc/library/locale.rst:132 msgid "Currency and value are surrounded by parentheses." -msgstr "" +msgstr "Le symbole monétaire et la valeur sont entourés de parenthèses." #: ../Doc/library/locale.rst:135 msgid "``1``" @@ -272,7 +326,7 @@ msgstr "``1``" #: ../Doc/library/locale.rst:135 msgid "The sign should precede the value and currency symbol." -msgstr "" +msgstr "Le signe doit précéder la valeur et le symbole monétaire." #: ../Doc/library/locale.rst:138 msgid "``2``" @@ -280,7 +334,7 @@ msgstr "``2``" #: ../Doc/library/locale.rst:138 msgid "The sign should follow the value and currency symbol." -msgstr "" +msgstr "Le signe doit suivre la valeur et le symbole monétaire." #: ../Doc/library/locale.rst:141 msgid "``3``" @@ -288,7 +342,7 @@ msgstr "``3``" #: ../Doc/library/locale.rst:141 msgid "The sign should immediately precede the value." -msgstr "" +msgstr "Le signe doit précéder immédiatement la valeur." #: ../Doc/library/locale.rst:144 msgid "``4``" @@ -296,7 +350,7 @@ msgstr "``4``" #: ../Doc/library/locale.rst:144 msgid "The sign should immediately follow the value." -msgstr "" +msgstr "Le signe doit suivre immédiatement la valeur." #: ../Doc/library/locale.rst:147 msgid "``CHAR_MAX``" @@ -304,7 +358,7 @@ msgstr "``CHAR_MAX``" #: ../Doc/library/locale.rst:147 msgid "Nothing is specified in this locale." -msgstr "" +msgstr "Rien n'est spécifié dans ces paramètres régionaux." #: ../Doc/library/locale.rst:150 msgid "" @@ -318,6 +372,8 @@ msgid "" "The function now sets temporarily the ``LC_CTYPE`` locale to the " "``LC_NUMERIC`` locale in some cases." msgstr "" +"La fonction définit maintenant la valeur du paramètre ``LC_CTYPE`` à celle " +"du paramètre ``LC_NUMERIC`` temporairement dans certains cas." #: ../Doc/library/locale.rst:161 msgid "" @@ -326,6 +382,11 @@ msgid "" "across platforms. The possible argument values are numbers, for which " "symbolic constants are available in the locale module." msgstr "" +"Renvoie quelques informations spécifiques aux paramètres régionaux sous " +"forme de chaîne. Cette fonction n'est pas disponible sur tous les systèmes " +"et l'ensemble des options possibles peut également varier d'une plateforme à " +"l'autre. Les valeurs possibles pour les arguments sont des nombres, pour " +"lesquels des constantes symboliques sont disponibles dans le module *locale*." #: ../Doc/library/locale.rst:166 msgid "" @@ -333,84 +394,114 @@ msgid "" "descriptions are taken from the corresponding description in the GNU C " "library." msgstr "" +"La fonction :func:`nl_langinfo` accepte l'une des clés suivantes. La " +"plupart des descriptions sont extraites des descriptions correspondantes " +"dans la bibliothèque GNU C." #: ../Doc/library/locale.rst:172 msgid "" "Get a string with the name of the character encoding used in the selected " "locale." msgstr "" +"Récupère une chaîne avec le nom de l'encodage des caractères utilisé par le " +"paramètre régional sélectionné." #: ../Doc/library/locale.rst:177 msgid "" "Get a string that can be used as a format string for :func:`time.strftime` " "to represent date and time in a locale-specific way." msgstr "" +"Récupère une chaîne qui peut être utilisée comme une chaîne de format par :" +"func:`time.strftime` afin de représenter la date et l'heure pour un " +"paramètre régional spécifique." #: ../Doc/library/locale.rst:182 msgid "" "Get a string that can be used as a format string for :func:`time.strftime` " "to represent a date in a locale-specific way." msgstr "" +"Récupère une chaîne qui peut être utilisée comme une chaîne de format par :" +"func:`time.strftime` afin de représenter une date pour un paramètre régional " +"spécifique." #: ../Doc/library/locale.rst:187 msgid "" "Get a string that can be used as a format string for :func:`time.strftime` " "to represent a time in a locale-specific way." msgstr "" +"Récupère une chaîne qui peut être utilisée comme une chaîne de format par :" +"func:`time.strftime` afin de représenter une heure pour un paramètre " +"régional spécifique." #: ../Doc/library/locale.rst:192 msgid "" "Get a format string for :func:`time.strftime` to represent time in the am/pm " "format." msgstr "" +"Récupère une chaîne de format pour :func:`time.strftime` afin de représenter " +"l'heure au format am / pm." #: ../Doc/library/locale.rst:197 msgid "Get the name of the n-th day of the week." -msgstr "" +msgstr "Récupère le nom du n-ième jour de la semaine." #: ../Doc/library/locale.rst:201 msgid "" "This follows the US convention of :const:`DAY_1` being Sunday, not the " "international convention (ISO 8601) that Monday is the first day of the week." msgstr "" +"Cela suit la convention américaine qui définit :const:`DAY_1` comme étant " +"dimanche, et non la convention internationale (ISO 8601) où lundi est le " +"premier jour de la semaine." #: ../Doc/library/locale.rst:207 msgid "Get the abbreviated name of the n-th day of the week." -msgstr "" +msgstr "Récupère l'abréviation du n-ième jour de la semaine." #: ../Doc/library/locale.rst:211 msgid "Get the name of the n-th month." -msgstr "" +msgstr "Récupère le nom du n-ième mois." #: ../Doc/library/locale.rst:215 msgid "Get the abbreviated name of the n-th month." -msgstr "" +msgstr "Récupère l'abréviation du n-ième mois." #: ../Doc/library/locale.rst:219 msgid "Get the radix character (decimal dot, decimal comma, etc.)." msgstr "" +"Récupère le caractère de séparation *radix* (point décimal, virgule " +"décimale, etc.)." #: ../Doc/library/locale.rst:223 msgid "Get the separator character for thousands (groups of three digits)." msgstr "" +"Récupère le caractère de séparation des milliers (groupes de 3 chiffres)." #: ../Doc/library/locale.rst:227 msgid "" "Get a regular expression that can be used with the regex function to " "recognize a positive response to a yes/no question." msgstr "" +"Récupère une expression régulière qui peut être utilisée par la fonction " +"*regex* pour reconnaître une réponse positive à une question fermée (oui / " +"non)." #: ../Doc/library/locale.rst:232 msgid "" "The expression is in the syntax suitable for the :c:func:`regex` function " "from the C library, which might differ from the syntax used in :mod:`re`." msgstr "" +"L'expression est dans une syntaxe adaptée à la fonction :c:func:`regex` de " +"la bibliothèque C, qui peut différer de la syntaxe utilisée par :mod:`re`." #: ../Doc/library/locale.rst:237 msgid "" "Get a regular expression that can be used with the regex(3) function to " "recognize a negative response to a yes/no question." msgstr "" +"Récupère une expression régulière qui peut être utilisée par la fonction " +"*regex(3)* pour reconnaître une réponse négative à une question fermée " +"(oui / non)." #: ../Doc/library/locale.rst:242 msgid "" @@ -418,10 +509,15 @@ msgid "" "before the value, \"+\" if the symbol should appear after the value, or \"." "\" if the symbol should replace the radix character." msgstr "" +"Récupère le symbole monétaire, précédé de « - » si le symbole doit " +"apparaître avant la valeur, « + » s'il doit apparaître après la valeur, ou " +"« . » s'il doit remplacer le caractère de séparation *radix*." #: ../Doc/library/locale.rst:248 msgid "Get a string that represents the era used in the current locale." msgstr "" +"Récupère une chaîne qui représente l'ère utilisée pour le paramètre régional " +"actuel." #: ../Doc/library/locale.rst:250 msgid "" @@ -430,6 +526,10 @@ msgid "" "representation of dates includes the name of the era corresponding to the " "then-emperor's reign." msgstr "" +"La plupart des paramètres régionaux ne définissent pas cette valeur. Un " +"exemple de région qui définit bien cette valeur est le japonais. Au Japon, " +"la représentation traditionnelle des dates comprend le nom de l'ère " +"correspondant au règne de l'empereur de l'époque." #: ../Doc/library/locale.rst:255 msgid "" @@ -439,36 +539,51 @@ msgid "" "specified, and therefore you should not assume knowledge of it on different " "systems." msgstr "" +"Normalement, il ne devrait pas être nécessaire d'utiliser cette valeur " +"directement. Spécifier le modificateur ``E`` dans leurs chaînes de format " +"provoque l'utilisation de cette information par la fonction :func:`time." +"strftime`. Le format de la chaîne renvoyée n'est pas spécifié, et vous ne " +"devez donc pas supposer en avoir connaissance sur des systèmes différents." #: ../Doc/library/locale.rst:263 msgid "" "Get a format string for :func:`time.strftime` to represent date and time in " "a locale-specific era-based way." msgstr "" +"Récupère la chaîne de format pour :func:`time.strftime` afin de représenter " +"la date et l'heure pour un paramètre régional spécifique basée sur une ère." #: ../Doc/library/locale.rst:268 msgid "" "Get a format string for :func:`time.strftime` to represent a date in a " "locale-specific era-based way." msgstr "" +"Récupère la chaîne de format pour :func:`time.strftime` afin de représenter " +"une date pour un paramètre régional spécifique basée sur une ère." #: ../Doc/library/locale.rst:273 msgid "" "Get a format string for :func:`time.strftime` to represent a time in a " "locale-specific era-based way." msgstr "" +"Récupère la chaîne de format pour :func:`time.strftime` afin de représenter " +"une heure pour un paramètre régional spécifique basée sur une ère." #: ../Doc/library/locale.rst:278 msgid "" "Get a representation of up to 100 values used to represent the values 0 to " "99." msgstr "" +"Récupère une représentation de 100 valeurs maximum utilisées pour " +"représenter les valeurs de 0 à 99." #: ../Doc/library/locale.rst:284 msgid "" "Tries to determine the default locale settings and returns them as a tuple " "of the form ``(language code, encoding)``." msgstr "" +"Tente de déterminer les paramètres régionaux par défaut, puis les renvoie " +"sous la forme d'un n-uplet ``(code de la langue, encodage)``." #: ../Doc/library/locale.rst:287 msgid "" @@ -478,6 +593,12 @@ msgid "" "Since we do not want to interfere with the current locale setting we thus " "emulate the behavior in the way described above." msgstr "" +"D'après POSIX, un programme qui n'a pas appelé ``setlocale(LC_ALL, '')`` " +"fonctionne en utilisant le paramètre régional portable ``'C'``. Appeler " +"``setlocale(LC_ALL, '')`` lui permet d'utiliser les paramètres régionaux par " +"défaut définis par la variable :envvar:`LANG`. Comme nous ne voulons pas " +"interférer avec les paramètres régionaux actuels, nous émulons donc le " +"comportement décrit ci-dessus." #: ../Doc/library/locale.rst:293 msgid "" @@ -488,6 +609,14 @@ msgid "" "``'LANG'``. The GNU gettext search path contains ``'LC_ALL'``, " "``'LC_CTYPE'``, ``'LANG'`` and ``'LANGUAGE'``, in that order." msgstr "" +"Afin de maintenir la compatibilité avec d'autres plateformes, non seulement " +"la variable :envvar:`LANG` est testée, mais c'est aussi le cas pour toute " +"une liste de variables passés en paramètre via *envvars*. La première " +"variable à être définie sera utilisée. *envvars* utilise par défaut le " +"chemin de recherche utilisé dans GNU *gettext* ; il doit toujours contenir " +"le nom de variable ``'LANG'``. Le chemin de recherche de GNU *gettext* " +"contient ``'LC_ALL'``, ``'LC_CTYPE'``, ``'LANG'`` et ``'LANGUAGE'``, dans " +"cet ordre." #: ../Doc/library/locale.rst:300 ../Doc/library/locale.rst:311 msgid "" @@ -495,6 +624,9 @@ msgid "" "*language code* and *encoding* may be ``None`` if their values cannot be " "determined." msgstr "" +"À l'exception du code ``'C'``, le code d'une langue correspond à la :rfc:" +"`1766`. Le *code de la langue* et l'*encodage* peuvent valoir ``None`` si " +"leur valeur ne peut être déterminée." #: ../Doc/library/locale.rst:307 msgid "" @@ -502,6 +634,11 @@ msgid "" "containing *language code*, *encoding*. *category* may be one of the :const:" "`LC_\\*` values except :const:`LC_ALL`. It defaults to :const:`LC_CTYPE`." msgstr "" +"Renvoie les réglages actuels pour la catégorie de paramètres régionaux " +"donnée, sous la forme d'une séquence contenant le *code de la langue* et " +"l'*encodage*. La catégorie *category* peut être l'une des valeurs :const:`LC_" +"\\*` à l'exception de :const:`LC_ALL`. La valeur par défaut est :const:" +"`LC_CTYPE`." #: ../Doc/library/locale.rst:318 msgid "" @@ -551,22 +688,31 @@ msgid "" "locale code is formatted for use with :func:`setlocale`. If normalization " "fails, the original name is returned unchanged." msgstr "" +"Renvoie un code normalisé pour le nom du paramètre régional fourni. Ce code " +"renvoyé est structuré de façon à être utilisé avec :func:`setlocale`. Si la " +"normalisation échoue, le nom d'origine est renvoyé inchangé." #: ../Doc/library/locale.rst:341 msgid "" "If the given encoding is not known, the function defaults to the default " "encoding for the locale code just like :func:`setlocale`." msgstr "" +"Si l'encodage donné n'est pas connu, la fonction utilise l'encodage par " +"défaut pour le code du paramètre régional, tout comme :func:`setlocale`." #: ../Doc/library/locale.rst:347 msgid "Sets the locale for *category* to the default setting." msgstr "" +"Définit le paramètre régional de la catégorie *category* au réglage par " +"défaut." #: ../Doc/library/locale.rst:349 msgid "" "The default setting is determined by calling :func:`getdefaultlocale`. " "*category* defaults to :const:`LC_ALL`." msgstr "" +"Le réglage par défaut est déterminé en appelant :func:`getdefaultlocale`. La " +"catégorie *category* vaut par défaut :const:`LC_ALL`." #: ../Doc/library/locale.rst:355 msgid "" @@ -575,6 +721,10 @@ msgid "" "``0``, depending on whether *string1* collates before or after *string2* or " "is equal to it." msgstr "" +"Compare deux chaînes en se basant sur le paramètre :const:`LC_COLLATE` " +"actuel. Comme toute autre fonction de comparaison, renvoie une valeur " +"négative, positive, ou ``0``, selon si *string1* est lexicographiquement " +"inférieure, supérieure, ou égale à *string2*." #: ../Doc/library/locale.rst:363 msgid "" @@ -583,6 +733,11 @@ msgid "" "s2) < 0``. This function can be used when the same string is compared " "repeatedly, e.g. when collating a sequence of strings." msgstr "" +"Transforme une chaîne de caractères en une chaîne qui peut être utilisée " +"dans les comparaisons sensibles aux paramètres régionaux. Par exemple, " +"``strxfrm(s1) < strxfrm(s2)`` est équivalent à ``strcoll(s1, s2) < 0``. " +"Cette fonction peut être utilisée lorsque la même chaîne est comparée de " +"façon répétitive, par exemple lors de l'assemblage d'une séquence de chaînes." #: ../Doc/library/locale.rst:372 msgid "" @@ -591,18 +746,26 @@ msgid "" "point values, the decimal point is modified if appropriate. If *grouping* " "is true, also takes the grouping into account." msgstr "" +"Structure un nombre *val* en fonction du paramètre :const:`LC_NUMERIC` " +"actuel. Le format suit les conventions de l'opérateur ``%``. Pour les " +"valeurs à virgule flottante, le point décimal est modifié si nécessaire. Si " +"*grouping* est vrai, le regroupement est également pris en compte." #: ../Doc/library/locale.rst:377 msgid "" "If *monetary* is true, the conversion uses monetary thousands separator and " "grouping strings." msgstr "" +"Si *monetary* est vrai, la conversion utilise un séparateur des milliers " +"monétaire et des chaînes de regroupement." #: ../Doc/library/locale.rst:380 msgid "" "Processes formatting specifiers as in ``format % val``, but takes the " "current locale settings into account." msgstr "" +"Traite les marqueurs de structure en ``format % val``, mais en prenant en " +"compte les paramètres régionaux actuels." #: ../Doc/library/locale.rst:383 msgid "The *monetary* keyword parameter was added." @@ -628,6 +791,8 @@ msgid "" "Formats a number *val* according to the current :const:`LC_MONETARY` " "settings." msgstr "" +"Structure un nombre *val* en fonction du paramètre :const:`LC_MONETARY` " +"actuel." #: ../Doc/library/locale.rst:403 msgid "" @@ -636,36 +801,51 @@ msgid "" "is done with the value. If *international* is true (which is not the " "default), the international currency symbol is used." msgstr "" +"La chaîne renvoyée inclut le symbole monétaire si *symbol* est vrai, ce qui " +"est le cas par défaut. Si *grouping* est vrai (ce qui n'est pas le cas par " +"défaut), un regroupement est effectué avec la valeur. Si *international* est " +"vrai (ce qui n'est pas le cas par défaut), le symbole de la devise " +"internationale est utilisé." #: ../Doc/library/locale.rst:408 msgid "" "Note that this function will not work with the 'C' locale, so you have to " "set a locale via :func:`setlocale` first." msgstr "" +"Notez que cette fonction ne fonctionnera pas avec le paramètre régional 'C', " +"vous devez donc d'abord en définir un via :func:`setlocale`." #: ../Doc/library/locale.rst:414 msgid "" "Formats a floating point number using the same format as the built-in " "function ``str(float)``, but takes the decimal point into account." msgstr "" +"Structure un nombre flottant en utilisant le même format que la fonction " +"native ``str(float)``, mais en prenant en compte le point décimal." #: ../Doc/library/locale.rst:420 msgid "" "Converts a string into a normalized number string, following the :const:" "`LC_NUMERIC` settings." msgstr "" +"Convertit une chaîne de caractères en une chaîne de nombres normalisés, en " +"suivant les réglages :const:`LC_NUMERIC`." #: ../Doc/library/locale.rst:428 msgid "" "Converts a string to a floating point number, following the :const:" "`LC_NUMERIC` settings." msgstr "" +"Convertit une chaîne de caractères en nombre à virgule flottante, en suivant " +"les réglages :const:`LC_NUMERIC`." #: ../Doc/library/locale.rst:434 msgid "" "Converts a string to an integer, following the :const:`LC_NUMERIC` " "conventions." msgstr "" +"Convertit une chaîne de caractères en un entier, en suivant les réglages :" +"const:`LC_NUMERIC`." #: ../Doc/library/locale.rst:441 msgid "" @@ -673,24 +853,35 @@ msgid "" "of this category, the functions of module :mod:`string` dealing with case " "change their behaviour." msgstr "" +"Catégorie de paramètre régional pour les fonctions de type caractère. " +"Suivant les réglages de la catégorie, les fonctions du module :mod:`string` " +"gérant la casse peuvent changer leur comportement." #: ../Doc/library/locale.rst:448 msgid "" "Locale category for sorting strings. The functions :func:`strcoll` and :" "func:`strxfrm` of the :mod:`locale` module are affected." msgstr "" +"Catégorie de paramètre régional pour les tris de chaînes de caractères. Les " +"fonctions :func:`strcoll` et :func:`strxfrm` du module :mod:`locale` sont " +"concernées." #: ../Doc/library/locale.rst:454 msgid "" "Locale category for the formatting of time. The function :func:`time." "strftime` follows these conventions." msgstr "" +"Catégorie de paramètre régional pour la mise en forme de la date et de " +"l'heure. La fonction :func:`time.strftime` suit ces conventions." #: ../Doc/library/locale.rst:460 msgid "" "Locale category for formatting of monetary values. The available options " "are available from the :func:`localeconv` function." msgstr "" +"Catégorie de paramètre régional pour la mise en forme des valeurs " +"monétaires. Les options disponibles sont accessibles à partir de la " +"fonction :func:`localeconv`." #: ../Doc/library/locale.rst:466 msgid "" @@ -699,6 +890,11 @@ msgid "" "operating system, like those returned by :func:`os.strerror` might be " "affected by this category." msgstr "" +"Catégorie de paramètre régional pour l'affichage de messages. Actuellement, " +"Python ne gère pas les messages spécifiques aux applications qui sont " +"sensibles aux paramètres régionaux. Les messages affichés par le système " +"d'exploitation, comme ceux renvoyés par :func:`os.strerror` peuvent être " +"affectés par cette catégorie." #: ../Doc/library/locale.rst:474 msgid "" @@ -707,6 +903,10 @@ msgid "" "affected by that category. All other numeric formatting operations are not " "affected." msgstr "" +"Catégorie de paramètre régional pour la mise en forme des nombres. Les " +"fonctions :func:`.format`, :func:`atoi`, :func:`atof` et :func:`.str` du " +"module :mod:`locale` sont affectées par cette catégorie. Toutes les autres " +"opérations de mise en forme des nombres ne sont pas affectées." #: ../Doc/library/locale.rst:482 msgid "" @@ -717,12 +917,21 @@ msgid "" "categories is returned. This string can be later used to restore the " "settings." msgstr "" +"Combinaison de tous les paramètres régionaux. Si cette option est utilisée " +"lors du changement de paramètres régionaux, la définition de ces paramètres " +"pour toutes les catégories est tentée. Si cela échoue pour n'importe quelle " +"catégorie, aucune d'entre elles n'est modifiée. Lorsque les paramètres " +"régionaux sont récupérés à l'aide de cette option, une chaîne de caractères " +"indiquant le réglage pour toutes les catégories est renvoyée. Cette chaîne " +"peut alors être utilisée plus tard pour restaurer les paramètres d'origine." #: ../Doc/library/locale.rst:491 msgid "" "This is a symbolic constant used for different values returned by :func:" "`localeconv`." msgstr "" +"Ceci est une constante symbolique utilisée pour différentes valeurs " +"renvoyées par :func:`localeconv`." #: ../Doc/library/locale.rst:495 msgid "Example::" @@ -730,7 +939,7 @@ msgstr "Exemple ::" #: ../Doc/library/locale.rst:508 msgid "Background, details, hints, tips and caveats" -msgstr "" +msgstr "Contexte, détails, conseils, astuces et mises en garde" #: ../Doc/library/locale.rst:510 msgid "" @@ -739,6 +948,11 @@ msgid "" "broken in such a way that frequent locale changes may cause core dumps. " "This makes the locale somewhat painful to use correctly." msgstr "" +"La norme C définie les paramètres régionaux comme une propriété à l'échelle " +"d'un programme, qui peut être relativement coûteuse à changer. En plus de " +"cela, certaines implémentations ne fonctionnent pas car des changements " +"fréquents de paramètres régionaux peuvent causer des *core dumps*. Cela " +"rend l'utilisation correcte de ces paramètres quelque peu pénible." #: ../Doc/library/locale.rst:515 msgid "" @@ -749,6 +963,13 @@ msgid "" "explicitly say that it wants the user's preferred locale settings for other " "categories by calling ``setlocale(LC_ALL, '')``." msgstr "" +"Initialement, lorsqu'un programme est démarré, les paramètres régionaux " +"``C`` sont utilisés, peu importe les réglages de l'utilisateur. Il y a " +"toutefois une exception : la catégorie :data:`LC_CTYPE` est modifiée au " +"démarrage pour définir l'encodage des paramètres régionaux actuels comme " +"celui défini par l'utilisateur. Le programme doit explicitement dire qu'il " +"veut utiliser les réglages de l'utilisateur pour les autres catégories, en " +"appelant ``setlocale(LC_ALL, '')``." #: ../Doc/library/locale.rst:522 msgid "" @@ -757,6 +978,11 @@ msgid "" "restoring it is almost as bad: it is expensive and affects other threads " "that happen to run before the settings have been restored." msgstr "" +"C'est généralement une mauvaise idée d'appeler :func:`setlocale` dans une " +"routine de bibliothèque car cela a pour effet secondaire d'affecter le " +"programme entier. Sauvegarder et restaurer les paramètres est presque aussi " +"mauvais : c'est coûteux et cela affecte d'autres fils d'exécutions qui " +"s'exécutent avant que les paramètres n'aient été restaurés." #: ../Doc/library/locale.rst:527 msgid "" @@ -768,6 +994,14 @@ msgid "" "you document that your module is not compatible with non-\\ ``C`` locale " "settings." msgstr "" +"Si, lors du développement d'un module à usage général, vous avez besoin " +"d'une version indépendante des paramètres régionaux pour une opération y " +"étant sensible (comme c'est le cas pour certains formats utilisés avec :func:" +"`time.strftime`), vous devez trouver un moyen de le faire sans utiliser la " +"routine de la bibliothèque standard. Le mieux est encore de se convaincre " +"que l'usage des paramètres régionaux est une bonne chose. Ce n'est qu'en " +"dernier recours que vous devez documenter que votre module n'est pas " +"compatible avec les réglages du paramètre régional ``C``." #: ../Doc/library/locale.rst:534 msgid "" @@ -775,6 +1009,9 @@ msgid "" "the special functions defined by this module: :func:`atof`, :func:`atoi`, :" "func:`.format`, :func:`.str`." msgstr "" +"La seule façon d'effectuer des opérations numériques conformément aux " +"paramètres régionaux est d'utiliser les fonctions spéciales définies par ce " +"module : :func:`atof`, :func:`atoi`, :func:`.format`, :func:`.str`." #: ../Doc/library/locale.rst:538 msgid "" @@ -786,10 +1023,18 @@ msgid "" "converted or considered part of a character class such as letter or " "whitespace." msgstr "" +"Il n'y a aucun moyen d'effectuer des conversions de casse et des " +"classifications de caractères en fonction des paramètres régionaux. Pour " +"les chaînes de caractères (Unicode), celles-ci se font uniquement en " +"fonction de la valeur du caractère, tandis que pour les chaînes d'octets, " +"les conversions et les classifications se font en fonction de la valeur " +"ASCII de l'octet, et les octets dont le bit de poids fort est à 1 (c'est-à-" +"dire les octets non ASCII) ne sont jamais convertis ou considérés comme " +"faisant partie d'une classe de caractères comme une lettre ou une espace." #: ../Doc/library/locale.rst:549 msgid "For extension writers and programs that embed Python" -msgstr "" +msgstr "Pour les auteurs d'extensions et les programmes qui intègrent Python" #: ../Doc/library/locale.rst:551 msgid "" @@ -798,6 +1043,10 @@ msgid "" "portably to restore it, that is not very useful (except perhaps to find out " "whether or not the locale is ``C``)." msgstr "" +"Les modules d'extensions ne devraient jamais appeler :func:`setlocale`, sauf " +"pour connaître le paramètre régional actuel. Mais comme la valeur renvoyée " +"ne peut être utilisée que pour le restaurer, ce n'est pas très utile (sauf " +"peut-être pour savoir si le paramètre régional est défini à ``C`` ou non)." #: ../Doc/library/locale.rst:556 msgid "" @@ -808,10 +1057,17 @@ msgid "" "file:`config.c` file, and make sure that the :mod:`_locale` module is not " "accessible as a shared library." msgstr "" +"Lorsque le code Python utilise le module :mod:`locale` pour changer le " +"paramètre régional, cela affecte également l'application intégrée. Si " +"l'application intégrée ne souhaite pas que cela se produise, elle doit " +"supprimer le module d'extension :mod:`_locale` (qui fait tout le travail) de " +"la table des modules natifs se trouvant dans le fichier :file:`config.c`, et " +"s'assurer que le module :mod:`_locale` n'est pas accessible en tant que " +"bibliothèque partagée." #: ../Doc/library/locale.rst:567 msgid "Access to message catalogs" -msgstr "" +msgstr "Accéder aux catalogues de messages" #: ../Doc/library/locale.rst:575 msgid "" @@ -823,6 +1079,12 @@ msgid "" "binary format for message catalogs, and the C library's search algorithms " "for locating message catalogs." msgstr "" +"Le module *locale* expose l'interface *gettext* de la bibliothèque C sur les " +"systèmes qui fournissent cette interface. Il se compose des fonctions :func:" +"`!gettext`, :func:`!dgettext`, :func:`!dcgettext`, :func:`!textdomain`, :" +"func:`!bindtextdomain` et :func:`!bind_textdomain_codeset`. Elles sont " +"similaires aux fonctions du module :mod:`gettext`, mais utilisent le format " +"binaire de la bibliothèque C pour les catalogues de messages." #: ../Doc/library/locale.rst:582 msgid "" @@ -833,3 +1095,10 @@ msgid "" "necessary to bind the text domain, so that the libraries can properly locate " "their message catalogs." msgstr "" +"Les applications Python ne devraient normalement pas avoir besoin de faire " +"appel à ces fonctions, mais devraient plutôt utiliser :mod:`gettext`. Une " +"exception connue pour cette règle concerne les applications qui sont liées " +"avec des bibliothèques C supplémentaires faisant appel à :c:func:`gettext` " +"ou :c:func:`dcgettext`. Pour ces applications, il peut être nécessaire de " +"lier le domaine du texte, afin que les bibliothèques puissent régionaliser " +"correctement leurs catalogues de messages." diff --git a/library/logging.config.po b/library/logging.config.po index fc9028cd..33d69a20 100644 --- a/library/logging.config.po +++ b/library/logging.config.po @@ -26,6 +26,8 @@ msgstr "" msgid "" "This page contains only reference information. For tutorials, please see" msgstr "" +"Cette page contient uniquement des informations de référence. Pour des " +"tutoriels, veuillez consulter" #: ../Doc/library/logging.config.rst:17 msgid ":ref:`Basic Tutorial `" diff --git a/library/logging.handlers.po b/library/logging.handlers.po index 768c441e..8364d931 100644 --- a/library/logging.handlers.po +++ b/library/logging.handlers.po @@ -16,16 +16,18 @@ msgstr "" #: ../Doc/library/logging.handlers.rst:2 msgid ":mod:`logging.handlers` --- Logging handlers" -msgstr "" +msgstr ":mod:`logging.handlers` — Gestionnaires de journalisation" #: ../Doc/library/logging.handlers.rst:10 msgid "**Source code:** :source:`Lib/logging/handlers.py`" -msgstr "" +msgstr "**Code source :** :source:`Lib/logging/handlers.py`" #: ../Doc/library/logging.handlers.rst:14 msgid "" "This page contains only reference information. For tutorials, please see" msgstr "" +"Cette page contient uniquement des informations de référence. Pour des " +"tutoriels, veuillez consulter" #: ../Doc/library/logging.handlers.rst:17 msgid ":ref:`Basic Tutorial `" @@ -47,10 +49,15 @@ msgid "" "`NullHandler`) are actually defined in the :mod:`logging` module itself, but " "have been documented here along with the other handlers." msgstr "" +"Les gestionnaires suivants, très utiles, sont fournis dans le paquet. Notez " +"que trois des gestionnaires (:class:`StreamHandler`, :class:`FileHandler` " +"et :class:`NullHandler`) sont en réalité définis dans le module :mod:" +"`logging` lui-même, mais qu’ils sont documentés ici avec les autres " +"gestionnaires." #: ../Doc/library/logging.handlers.rst:33 msgid "StreamHandler" -msgstr "" +msgstr "Gestionnaire à flux — *StreamHandler*" #: ../Doc/library/logging.handlers.rst:35 msgid "" @@ -59,6 +66,10 @@ msgid "" "or any file-like object (or, more precisely, any object which supports :meth:" "`write` and :meth:`flush` methods)." msgstr "" +"La classe :class:`StreamHandler`, du paquet :mod:`logging`, envoie les " +"sorties de journalisation dans des flux tels que *sys.stdout*, *sys.stderr* " +"ou n’importe quel objet fichier-compatible (ou, plus précisément, tout objet " +"qui gère les méthodes :meth:`write` et :meth:`flush`)." #: ../Doc/library/logging.handlers.rst:43 msgid "" @@ -66,6 +77,9 @@ msgid "" "specified, the instance will use it for logging output; otherwise, *sys." "stderr* will be used." msgstr "" +"Renvoie une nouvelle instance de la classe :class:`StreamHandler`. Si " +"*stream* est spécifié, l’instance l’utilise pour les sorties de " +"journalisation ; autrement elle utilise *sys.stderr*." #: ../Doc/library/logging.handlers.rst:50 msgid "" @@ -81,12 +95,18 @@ msgid "" "`close` method is inherited from :class:`~logging.Handler` and so does no " "output, so an explicit :meth:`flush` call may be needed at times." msgstr "" +"Purge le flux en appelant sa méthode :meth:`flush`. Notez que la méthode :" +"meth:`close` est héritée de :class:`~logging.Handler` donc elle n'écrit " +"rien. Par conséquent, un appel explicite à :meth:`flush` peut parfois " +"s'avérer nécessaire." #: ../Doc/library/logging.handlers.rst:64 msgid "" "Sets the instance's stream to the specified value, if it is different. The " "old stream is flushed before the new stream is set." msgstr "" +"Définit le flux de l’instance à la valeur spécifiée, si elle est différente. " +"L’ancien flux est purgé avant que le nouveau flux ne soit établi." #: ../Doc/library/logging.handlers.rst:0 #, fuzzy @@ -95,15 +115,15 @@ msgstr "Paramètres :" #: ../Doc/library/logging.handlers.rst:67 msgid "The stream that the handler should use." -msgstr "" +msgstr "Le flux que le gestionnaire doit utiliser." #: ../Doc/library/logging.handlers.rst:0 msgid "Returns" -msgstr "" +msgstr "Renvoie" #: ../Doc/library/logging.handlers.rst:69 msgid "the old stream, if the stream was changed, or *None* if it wasn't." -msgstr "" +msgstr "l’ancien flux, si le flux a été changé, ou *None* s’il ne l’a pas été." #: ../Doc/library/logging.handlers.rst:74 msgid "" @@ -116,7 +136,7 @@ msgstr "" #: ../Doc/library/logging.handlers.rst:85 msgid "FileHandler" -msgstr "" +msgstr "Gestionnaire à fichier — *FileHandler*" #: ../Doc/library/logging.handlers.rst:87 msgid "" @@ -124,6 +144,9 @@ msgid "" "sends logging output to a disk file. It inherits the output functionality " "from :class:`StreamHandler`." msgstr "" +"La classe :class:`FileHandler`, du paquet :mod:`logging`, envoie les sorties " +"de journalisation dans un fichier. Elle hérite des fonctionnalités de sortie " +"de :class:`StreamHandler`." #: ../Doc/library/logging.handlers.rst:94 msgid "" @@ -143,18 +166,20 @@ msgid "" "As well as string values, :class:`~pathlib.Path` objects are also accepted " "for the *filename* argument." msgstr "" +"L'argument *filename* accepte les objets :class:`~pathlib.Path` aussi bien " +"que les chaînes de caractères." #: ../Doc/library/logging.handlers.rst:106 msgid "Closes the file." -msgstr "" +msgstr "Ferme le fichier." #: ../Doc/library/logging.handlers.rst:111 msgid "Outputs the record to the file." -msgstr "" +msgstr "Écrit l’enregistrement dans le fichier." #: ../Doc/library/logging.handlers.rst:117 msgid "NullHandler" -msgstr "" +msgstr "Gestionnaire à puits sans fond — *NullHandler*" #: ../Doc/library/logging.handlers.rst:121 msgid "" @@ -162,31 +187,38 @@ msgid "" "does not do any formatting or output. It is essentially a 'no-op' handler " "for use by library developers." msgstr "" +"La classe :class:`NullHandler`, située dans le paquet principal :mod:" +"`logging`, ne produit aucun formatage ni sortie. C’est essentiellement un " +"gestionnaire « fantôme » destiné aux développeurs de bibliothèques." #: ../Doc/library/logging.handlers.rst:127 msgid "Returns a new instance of the :class:`NullHandler` class." -msgstr "" +msgstr "Renvoie une nouvelle instance de la classe :class:`NullHandler`." #: ../Doc/library/logging.handlers.rst:131 #: ../Doc/library/logging.handlers.rst:135 msgid "This method does nothing." -msgstr "" +msgstr "Cette méthode ne fait rien." #: ../Doc/library/logging.handlers.rst:139 msgid "" "This method returns ``None`` for the lock, since there is no underlying I/O " "to which access needs to be serialized." msgstr "" +"Cette méthode renvoie ``None`` pour le verrou, étant donné qu’il n’y a aucun " +"flux d'entrée-sortie sous-jacent dont l’accès doit être sérialisé." #: ../Doc/library/logging.handlers.rst:143 msgid "" "See :ref:`library-config` for more information on how to use :class:" "`NullHandler`." msgstr "" +"Voir :ref:`library-config` pour plus d’information sur l'utilisation de :" +"class:`NullHandler`." #: ../Doc/library/logging.handlers.rst:149 msgid "WatchedFileHandler" -msgstr "" +msgstr "Gestionnaire à fichier avec surveillance — *WatchedFileHandler*" #: ../Doc/library/logging.handlers.rst:153 msgid "" @@ -195,6 +227,10 @@ msgid "" "logging to. If the file changes, it is closed and reopened using the file " "name." msgstr "" +"La classe :class:`WatchedFileHandler`, située dans le module :mod:`logging." +"handlers`, est un :class:`FileHandler` qui surveille le fichier dans lequel " +"il journalise. Si le fichier change, il est fermé et rouvert en utilisant le " +"nom du fichier." #: ../Doc/library/logging.handlers.rst:157 msgid "" @@ -205,6 +241,14 @@ msgid "" "changed.) If the file has changed, the old file stream is closed, and the " "file opened to get a new stream." msgstr "" +"Un changement du fichier peut arriver à cause de l’utilisation de programmes " +"tels que *newsyslog* ou *logrotate* qui assurent le roulement des fichiers " +"de journalisation. Ce gestionnaire, destiné à une utilisation sous Unix/" +"Linux, surveille le fichier pour voir s’il a changé depuis la dernière " +"écriture (un fichier est réputé avoir changé si son nœud d’index ou le " +"périphérique auquel il est rattaché a changé). Si le fichier a changé, " +"l’ancien flux vers ce fichier est fermé, et le fichier est ouvert pour " +"établir un nouveau flux." #: ../Doc/library/logging.handlers.rst:164 msgid "" @@ -214,6 +258,12 @@ msgid "" "*ST_INO* is not supported under Windows; :func:`~os.stat` always returns " "zero for this value." msgstr "" +"Ce gestionnaire n’est pas approprié pour une utilisation sous *Windows*, car " +"sous *Windows* les fichiers de journalisation ouverts ne peuvent être ni " +"déplacés, ni renommés — la journalisation ouvre les fichiers avec des " +"verrous exclusifs — de telle sorte qu’il n’y a pas besoin d’un tel " +"gestionnaire. En outre, *ST_INO* n’est pas géré par *Windows* ; :func:`~os." +"stat` renvoie toujours zéro pour cette valeur." #: ../Doc/library/logging.handlers.rst:173 msgid "" @@ -231,16 +281,21 @@ msgid "" "flushed and closed and the file opened again, typically as a precursor to " "outputting the record to the file." msgstr "" +"Vérifie si le fichier a changé. Si c’est le cas, le flux existant est purgé " +"et fermé et le fichier est rouvert, généralement avant d'effectuer " +"l’écriture de l'enregistrement dans le fichier." #: ../Doc/library/logging.handlers.rst:194 msgid "" "Outputs the record to the file, but first calls :meth:`reopenIfNeeded` to " "reopen the file if it has changed." msgstr "" +"Écrit l’enregistrement dans le fichier, mais appelle d’abord :meth:" +"`reopenIfNeeded` pour rouvrir le fichier s’il a changé." #: ../Doc/library/logging.handlers.rst:200 msgid "BaseRotatingHandler" -msgstr "" +msgstr "Base des gestionnaires à roulement *BaseRotatingHandler*" #: ../Doc/library/logging.handlers.rst:202 msgid "" @@ -250,10 +305,17 @@ msgid "" "need to instantiate this class, but it has attributes and methods you may " "need to override." msgstr "" +"La classe :class:`BaseRotatingHandler`, située dans le module :mod:`logging." +"handlers`, est la classe de base pour les gestionnaires à roulement, :class:" +"`RotatingFileHandler` et :class:`TimedRotatingFileHandler`. Vous ne devez " +"pas initialiser cette classe, mais elle a des attributs et des méthodes que " +"vous devrez peut-être surcharger." #: ../Doc/library/logging.handlers.rst:210 msgid "The parameters are as for :class:`FileHandler`. The attributes are:" msgstr "" +"Les paramètres sont les mêmes que pour :class:`FileHandler`. Les attributs " +"sont :" #: ../Doc/library/logging.handlers.rst:214 msgid "" @@ -261,6 +323,9 @@ msgid "" "delegates to this callable. The parameters passed to the callable are those " "passed to :meth:`rotation_filename`." msgstr "" +"Si cet attribut est défini en tant qu’appelable, la méthode :meth:" +"`rotation_filename` se rapporte à cet appelable. Les paramètres passés à " +"l’appelable sont ceux passés à :meth:`rotation_filename`." #: ../Doc/library/logging.handlers.rst:218 msgid "" @@ -269,6 +334,10 @@ msgid "" "every time for a given input, otherwise the rollover behaviour may not work " "as expected." msgstr "" +"La fonction *namer* est appelée pas mal de fois durant le roulement, de " +"telle sorte qu’elle doit être aussi simple et rapide que possible. Elle doit " +"aussi renvoyer toujours la même sortie pour une entrée donnée, autrement le " +"comportement du roulement pourrait être différent de celui attendu." #: ../Doc/library/logging.handlers.rst:228 msgid "" @@ -276,14 +345,18 @@ msgid "" "to this callable. The parameters passed to the callable are those passed " "to :meth:`rotate`." msgstr "" +"Si cet attribut est défini en tant qu’appelable, cet appelable se substitue " +"à la méthode :meth:`rotate`. Les paramètres passés à l’appelable sont ceux " +"passés à :meth:`rotate`." #: ../Doc/library/logging.handlers.rst:236 msgid "Modify the filename of a log file when rotating." msgstr "" +"Modifie le nom du fichier d’un fichier de journalisation lors du roulement." #: ../Doc/library/logging.handlers.rst:238 msgid "This is provided so that a custom filename can be provided." -msgstr "" +msgstr "Cette méthode sert à pouvoir produire un nom de fichier personnalisé." #: ../Doc/library/logging.handlers.rst:240 msgid "" @@ -291,14 +364,17 @@ msgid "" "it's callable, passing the default name to it. If the attribute isn't " "callable (the default is ``None``), the name is returned unchanged." msgstr "" +"L’implémentation par défaut appelle l’attribut *namer* du gestionnaire, si " +"c’est un appelable, lui passant le nom par défaut. Si l’attribut n’est pas " +"un appelable (le défaut est ``None``), le nom est renvoyé tel quel." #: ../Doc/library/logging.handlers.rst:244 msgid "The default name for the log file." -msgstr "" +msgstr "Le nom par défaut du fichier de journalisation." #: ../Doc/library/logging.handlers.rst:251 msgid "When rotating, rotate the current log." -msgstr "" +msgstr "Lors du roulement, effectue le roulement du journal courant." #: ../Doc/library/logging.handlers.rst:253 msgid "" @@ -307,17 +383,25 @@ msgid "" "isn't callable (the default is ``None``), the source is simply renamed to " "the destination." msgstr "" +"L’implémentation par défaut appelle l’attribut *rotator* du gestionnaire, si " +"c’est un appelable, lui passant les arguments *source* et *dest*. Si " +"l’attribut n’est pas un appelable (le défaut est ``None``), le nom de la " +"source est simplement renommé avec la destination." #: ../Doc/library/logging.handlers.rst:258 msgid "" "The source filename. This is normally the base filename, e.g. 'test.log'." msgstr "" +"Le nom du fichier source. Il s’agit normalement du nom du fichier, par " +"exemple ``\"test.log\"``." #: ../Doc/library/logging.handlers.rst:260 msgid "" "The destination filename. This is normally what the source is rotated to, e." "g. 'test.log.1'." msgstr "" +"Le nom du fichier de destination. Il s’agit normalement du nom donné à la " +"source après le roulement, par exemple ``\"test.log.1\"``." #: ../Doc/library/logging.handlers.rst:265 msgid "" @@ -328,26 +412,36 @@ msgid "" "exception during an :meth:`emit` call, i.e. via the :meth:`handleError` " "method of the handler." msgstr "" +"La raison d’être de ces attributs est de vous épargner la création d’une " +"sous-classe — vous pouvez utiliser les mêmes appels pour des instances de :" +"class:`RotatingFileHandler` et :class:`TimedRotatingFileHandler`. Si le " +"*namer* ou le *rotator* appelable lève une exception, ce sera géré de la " +"même manière que n’importe quelle exception durant un appel :meth:`emit`, " +"c'est-à-dire par la méthode :meth:`handleError` du gestionnaire." #: ../Doc/library/logging.handlers.rst:272 msgid "" "If you need to make more significant changes to rotation processing, you can " "override the methods." msgstr "" +"Si vous avez besoin de faire d’importantes modifications au processus de " +"roulement, surchargez les méthodes." #: ../Doc/library/logging.handlers.rst:275 msgid "For an example, see :ref:`cookbook-rotator-namer`." -msgstr "" +msgstr "Pour un exemple, voir :ref:`cookbook-rotator-namer`." #: ../Doc/library/logging.handlers.rst:281 msgid "RotatingFileHandler" -msgstr "" +msgstr "Gestionnaire à roulement de fichiers — *RotatingFileHandler*" #: ../Doc/library/logging.handlers.rst:283 msgid "" "The :class:`RotatingFileHandler` class, located in the :mod:`logging." "handlers` module, supports rotation of disk log files." msgstr "" +"La classe :class:`RotatingFileHandler`, située dans le module :mod:`logging." +"handlers`, gère le roulement des fichiers de journalisation sur disque." #: ../Doc/library/logging.handlers.rst:289 msgid "" @@ -376,21 +470,41 @@ msgid "" "log.1`, and if files :file:`app.log.1`, :file:`app.log.2`, etc. exist, then " "they are renamed to :file:`app.log.2`, :file:`app.log.3` etc. respectively." msgstr "" +"Utilisez les valeurs *maxBytes* et *backupCount* pour autoriser le roulement " +"du fichier (:dfn:`rollover`) à une taille prédéterminée. Quand la taille " +"limite est sur le point d’être dépassée, le fichier est fermé et un nouveau " +"fichier est discrètement ouvert en tant que sortie. Un roulement se produit " +"dès que le fichier de journalisation actuel atteint presque une taille de " +"*maxBytes* ; si *maxBytes* ou *backupCount* est à 0, le roulement ne se " +"produit jamais, donc en temps normal il convient de définir *backupCount* à " +"au moins 1, et avoir une valeur de *maxBytes* non nulle. Quand *backupCount* " +"est non nul, le système sauvegarde les anciens fichiers de journalisation en " +"leur ajoutant au nom du fichier, les suffixes ``\".1\"``, ``\".2\"`` et " +"ainsi de suite. Par exemple, avec un *backupCount* de 5 et :file:`app.log` " +"comme radical du fichier, vous obtiendrez :file:`app.log`, :file:`app." +"log.1`, :file:`app.log.2`, jusqu’à :file:`app.log.5`. Le fichier dans lequel " +"on écrit est toujours :file:`app.log`. Quand ce fichier est rempli, il est " +"fermé et renommé en :file:`app.log.1`, et si les fichiers :file:`app." +"log.1`, :file:`app.log.2`, etc. existent, alors ils sont renommés " +"respectivement en :file:`app.log.2`, :file:`app.log.3` etc." #: ../Doc/library/logging.handlers.rst:316 #: ../Doc/library/logging.handlers.rst:416 msgid "Does a rollover, as described above." -msgstr "" +msgstr "Effectue un roulement, comme décrit au-dessus." #: ../Doc/library/logging.handlers.rst:321 msgid "" "Outputs the record to the file, catering for rollover as described " "previously." msgstr "" +"Écrit l'enregistrement dans le fichier, effectuant un roulement au besoin " +"comme décrit précédemment." #: ../Doc/library/logging.handlers.rst:327 msgid "TimedRotatingFileHandler" msgstr "" +"Gestionnaire à roulement de fichiers périodique — *TimedRotatingFileHandler*" #: ../Doc/library/logging.handlers.rst:329 msgid "" @@ -398,6 +512,9 @@ msgid "" "handlers` module, supports rotation of disk log files at certain timed " "intervals." msgstr "" +"La classe :class:`TimedRotatingFileHandler`, située dans le module :mod:" +"`logging.handlers`, gère le roulement des fichiers de journalisation sur le " +"disque à un intervalle de temps spécifié." #: ../Doc/library/logging.handlers.rst:336 msgid "" @@ -406,12 +523,19 @@ msgid "" "also sets the filename suffix. Rotating happens based on the product of " "*when* and *interval*." msgstr "" +"Renvoie une nouvelle instance de la classe :class:" +"`TimedRotatingFileHandler`. Le fichier spécifié est ouvert et utilisé en " +"tant que flux de sortie pour la journalisation. Au moment du roulement, il " +"met également à jour le suffixe du nom du fichier. Le roulement se produit " +"sur la base combinée de *when* et *interval*." #: ../Doc/library/logging.handlers.rst:341 msgid "" "You can use the *when* to specify the type of *interval*. The list of " "possible values is below. Note that they are not case sensitive." msgstr "" +"Utilisez le *when* pour spécifier le type de l’*interval*. La liste des " +"valeurs possibles est ci-dessous. Notez qu’elles sont sensibles à la casse." #: ../Doc/library/logging.handlers.rst:345 msgid "Value" @@ -419,11 +543,11 @@ msgstr "Valeur" #: ../Doc/library/logging.handlers.rst:345 msgid "Type of interval" -msgstr "" +msgstr "Type d’intervalle" #: ../Doc/library/logging.handlers.rst:345 msgid "If/how *atTime* is used" -msgstr "" +msgstr "Si/comment *atTime* est utilisé" #: ../Doc/library/logging.handlers.rst:347 msgid "``'S'``" @@ -431,7 +555,7 @@ msgstr "``'S'``" #: ../Doc/library/logging.handlers.rst:347 msgid "Seconds" -msgstr "" +msgstr "Secondes" #: ../Doc/library/logging.handlers.rst:347 #: ../Doc/library/logging.handlers.rst:349 @@ -446,7 +570,7 @@ msgstr "``'M'``" #: ../Doc/library/logging.handlers.rst:349 msgid "Minutes" -msgstr "" +msgstr "Minutes" #: ../Doc/library/logging.handlers.rst:351 msgid "``'H'``" @@ -454,7 +578,7 @@ msgstr "``'H'``" #: ../Doc/library/logging.handlers.rst:351 msgid "Hours" -msgstr "" +msgstr "Heures" #: ../Doc/library/logging.handlers.rst:353 msgid "``'D'``" @@ -462,7 +586,7 @@ msgstr "``'D'``" #: ../Doc/library/logging.handlers.rst:353 msgid "Days" -msgstr "" +msgstr "Jours" #: ../Doc/library/logging.handlers.rst:355 msgid "``'W0'-'W6'``" @@ -470,12 +594,12 @@ msgstr "``'W0'-'W6'``" #: ../Doc/library/logging.handlers.rst:355 msgid "Weekday (0=Monday)" -msgstr "" +msgstr "Jour de la semaine (0=lundi)" #: ../Doc/library/logging.handlers.rst:355 #: ../Doc/library/logging.handlers.rst:358 msgid "Used to compute initial rollover time" -msgstr "" +msgstr "Utilisé pour calculer le moment du roulement" #: ../Doc/library/logging.handlers.rst:358 msgid "``'midnight'``" @@ -484,6 +608,8 @@ msgstr "``'midnight'``" #: ../Doc/library/logging.handlers.rst:358 msgid "Roll over at midnight, if *atTime* not specified, else at time *atTime*" msgstr "" +"Roulement du fichier à minuit, si *atTime* n’est pas spécifié, sinon à " +"l’heure *atTime*" #: ../Doc/library/logging.handlers.rst:363 msgid "" @@ -491,6 +617,10 @@ msgid "" "Tuesday, and so on up to 'W6' for Sunday. In this case, the value passed for " "*interval* isn't used." msgstr "" +"Lors de l’utilisation d’un roulement basé sur les jours de la semaine, " +"définir *W0* pour lundi, *W1* pour mardi, et ainsi de suite jusqu’à *W6* " +"pour dimanche. Dans ce cas, la valeur indiquée pour *interval* n’est pas " +"utilisée." #: ../Doc/library/logging.handlers.rst:367 msgid "" @@ -498,6 +628,10 @@ msgid "" "The extensions are date-and-time based, using the strftime format ``%Y-%m-%d_" "%H-%M-%S`` or a leading portion thereof, depending on the rollover interval." msgstr "" +"Le système sauvegarde les anciens fichiers de journalisation en ajoutant une " +"extension au nom du fichier. Les extensions sont basées sur la date et " +"l’heure, en utilisation le format *strftime* ``%Y-%m-%d_%H-%M-%S`` ou le " +"début de celui-ci, selon l’intervalle du roulement." #: ../Doc/library/logging.handlers.rst:372 msgid "" @@ -505,6 +639,10 @@ msgid "" "is created), the last modification time of an existing log file, or else the " "current time, is used to compute when the next rotation will occur." msgstr "" +"Lors du premier calcul du roulement suivant (quand le gestionnaire est " +"créé), la dernière date de modification d’un fichier de journalisation " +"existant, ou sinon la date actuelle, est utilisée pour calculer la date du " +"prochain roulement." #: ../Doc/library/logging.handlers.rst:376 msgid "" diff --git a/library/lzma.po b/library/lzma.po index 14da5b9b..058dd39f 100644 --- a/library/lzma.po +++ b/library/lzma.po @@ -45,16 +45,24 @@ msgid "" "`LZMAFile` instance from multiple threads, it is necessary to protect it " "with a lock." msgstr "" +"L'interface disponible par ce module ressemble en de nombreux points à celle " +"du module :mod:`bz2`. Cependant, notez que la :class:`LZMAFile` n'est pas " +"*thread-safe*, comme l'est la :class:`bz2.BZ2File`. Donc, si vous souhaitez " +"utiliser une seule instance de :class:`LZMAFile` pour plusieurs fils, il " +"sera alors nécessaire de la protéger avec un verrou (*lock*)." #: ../Doc/library/lzma.rst:29 msgid "" "This exception is raised when an error occurs during compression or " "decompression, or while initializing the compressor/decompressor state." msgstr "" +"Cette exception est levée dès lors qu'une erreur survient pendant la " +"compression ou la décompression, ou pendant l'initialisation de l'état de la " +"compression/décompression." #: ../Doc/library/lzma.rst:34 msgid "Reading and writing compressed files" -msgstr "" +msgstr "Lire et écrire des fichiers compressés" #: ../Doc/library/lzma.rst:38 #, fuzzy @@ -72,6 +80,10 @@ msgid "" "which case the named file is opened, or it can be an existing file object to " "read from or write to." msgstr "" +"L'argument *nom de fichier* peut être soit le nom d'un fichier à créer " +"(donné pour :class:`str`, :class:`bytes` ou un objet :term:`path-like `), dont le fichier nommé reste ouvert, ou soit un objet fichier " +"existant à lire ou à écrire." #: ../Doc/library/lzma.rst:46 msgid "" @@ -80,6 +92,10 @@ msgid "" "\"rt\"``, ``\"wt\"``, ``\"xt\"``, or ``\"at\"`` for text mode. The default " "is ``\"rb\"``." msgstr "" +"L'argument *mode* peut être n'importe quel argument suivant : ``\"r\"``, ``" +"\"rb\"``, ``\"w\"``, ``\"wb\"``, ``\"x\"``, ``\"xb\"``, ``\"a\"`` ou ``\"ab" +"\"`` pour le mode binaire, ou ``\"rt\"``, ``\"wt\"``, ``\"xt\"``, ou ``\"at" +"\"`` pour le mode texte. La valeur par défaut est ``\"rb\"``." #: ../Doc/library/lzma.rst:50 ../Doc/library/lzma.rst:95 msgid "" @@ -87,12 +103,18 @@ msgid "" "the same meanings as for :class:`LZMADecompressor`. In this case, the " "*check* and *preset* arguments should not be used." msgstr "" +"Quand un fichier est ouvert pour le lire, les arguments *format* et " +"*filters* ont les mêmes significations que pour la :class:" +"`LZMADecompressor`. Par conséquent, les arguments *check* et *preset* ne " +"devront pas être sollicités." #: ../Doc/library/lzma.rst:54 ../Doc/library/lzma.rst:99 msgid "" "When opening a file for writing, the *format*, *check*, *preset* and " "*filters* arguments have the same meanings as for :class:`LZMACompressor`." msgstr "" +"Dès ouverture d'un fichier pour l'écriture, les arguments *format*, *check*, " +"*preset* et *filters* ont le même sens que dans la :class:`LZMACompressor`." #: ../Doc/library/lzma.rst:57 msgid "" @@ -100,6 +122,9 @@ msgid "" "constructor: ``LZMAFile(filename, mode, ...)``. In this case, the " "*encoding*, *errors* and *newline* arguments must not be provided." msgstr "" +"Pour le mode binaire, cette fonction équivaut au constructeur de la :class:" +"`LZMAFile` : ``LZMAFile(filename, mode, ...)``. Dans ce cas précis, les " +"arguments *encoding*, *errors* et *newline* ne sont pas accessibles." #: ../Doc/library/lzma.rst:61 #, fuzzy @@ -114,7 +139,7 @@ msgstr "" #: ../Doc/library/lzma.rst:65 msgid "Added support for the ``\"x\"``, ``\"xb\"`` and ``\"xt\"`` modes." -msgstr "" +msgstr "Support ajouté pour les modes ``\"x\"``, ``\"xb\"`` et ``\"xt\"``." #: ../Doc/library/lzma.rst:68 ../Doc/library/lzma.rst:126 msgid "Accepts a :term:`path-like object`." @@ -122,7 +147,7 @@ msgstr "Accepte un :term:`path-like object`." #: ../Doc/library/lzma.rst:74 msgid "Open an LZMA-compressed file in binary mode." -msgstr "" +msgstr "Ouvre un fichier LZMA compressé en mode binaire." #: ../Doc/library/lzma.rst:76 msgid "" @@ -133,6 +158,12 @@ msgid "" "wrapping an existing file object, the wrapped file will not be closed when " "the :class:`LZMAFile` is closed." msgstr "" +"An :class:`LZMAFile` can wrap an already-open :term:`file object`, or " +"operate directly on a named file. The *filename* argument specifies either " +"the file object to wrap, or the name of the file to open (as a :class:" +"`str`, :class:`bytes` or :term:`path-like ` object). When " +"wrapping an existing file object, the wrapped file will not be closed when " +"the :class:`LZMAFile` is closed." #: ../Doc/library/lzma.rst:83 msgid "" @@ -141,6 +172,10 @@ msgid "" "appending. These can equivalently be given as ``\"rb\"``, ``\"wb\"``, ``\"xb" "\"`` and ``\"ab\"`` respectively." msgstr "" +"L'argument *mode* peut être soit ``\"r\"`` pour la lecture (défaut), ``\"w" +"\"`` pour la ré-écriture, ``\"x\"`` pour la création exclusive, ou ``\"a\"`` " +"pour l'insertion. Elles peuvent aussi être écrites de la façon suivante : ``" +"\"rb\"``, ``\"wb\"``, ``\"xb\"`` et ``\"ab\"`` respectivement." #: ../Doc/library/lzma.rst:88 #, fuzzy @@ -157,6 +192,9 @@ msgid "" "multiple separate compressed streams. These are transparently decoded as a " "single logical stream." msgstr "" +"Dès l'ouverture d'un fichier pour être lu, le fichier d'entrée peut être le " +"résultat d'une concaténation de plusieurs flux distincts et compressés. Ceux-" +"ci sont décodés de manière transparente en un seul flux logique." #: ../Doc/library/lzma.rst:102 #, fuzzy @@ -171,7 +209,7 @@ msgstr "" #: ../Doc/library/lzma.rst:106 msgid "The following method is also provided:" -msgstr "" +msgstr "Les méthodes suivantes sont aussi disponibles :" #: ../Doc/library/lzma.rst:110 msgid "" @@ -179,6 +217,10 @@ msgid "" "of data will be returned, unless EOF has been reached. The exact number of " "bytes returned is unspecified (the *size* argument is ignored)." msgstr "" +"Renvoie la donnée en mémoire-tampon sans progression de la position du " +"fichier. Au moins un octet de donnée sera renvoyé, jusqu'à ce que l'EOF soit " +"atteinte. Le nombre exact d'octets renvoyés demeure indéterminé (l'argument " +"*taille* est ignoré). " #: ../Doc/library/lzma.rst:114 #, fuzzy @@ -208,46 +250,56 @@ msgstr "" #: ../Doc/library/lzma.rst:131 msgid "Compressing and decompressing data in memory" -msgstr "" +msgstr "Compresser et décompresser une donnée en mémoire" #: ../Doc/library/lzma.rst:135 msgid "" "Create a compressor object, which can be used to compress data incrementally." msgstr "" +"Créé un objet compresseur, qui peut être utilisé pour compresser " +"incrémentalement une donnée." #: ../Doc/library/lzma.rst:137 msgid "" "For a more convenient way of compressing a single chunk of data, see :func:" "`compress`." msgstr "" +"Pour une façon plus adaptée de compresser un seul extrait de donnée, voir :" +"func:`compress`." #: ../Doc/library/lzma.rst:140 msgid "" "The *format* argument specifies what container format should be used. " "Possible values are:" msgstr "" +"L'argument *format* définit quel format de conteneur sera mis en œuvre. Les " +"valeurs possibles sont :" #: ../Doc/library/lzma.rst:144 msgid ":const:`FORMAT_XZ`: The ``.xz`` container format." -msgstr "" +msgstr ":const:`FORMAT_XZ`: Le format du conteneur ``.xz``." #: ../Doc/library/lzma.rst:144 msgid "This is the default format." -msgstr "" +msgstr "C'est le format par défaut." #: ../Doc/library/lzma.rst:148 msgid ":const:`FORMAT_ALONE`: The legacy ``.lzma`` container format." -msgstr "" +msgstr ":const:`FORMAT_ALONE`: L'ancien format du conteneur ``.lzma``." #: ../Doc/library/lzma.rst:147 msgid "" "This format is more limited than ``.xz`` -- it does not support integrity " "checks or multiple filters." msgstr "" +"Ce format est davantage limité que ``.xz`` --il ne supporte pas les " +"vérifications d'intégrité ou les filtres multiples." #: ../Doc/library/lzma.rst:154 msgid ":const:`FORMAT_RAW`: A raw data stream, not using any container format." msgstr "" +":const:`FORMAT_RAW`: Un flux de données brut, n'utilisant aucun format de " +"conteneur." #: ../Doc/library/lzma.rst:151 msgid "" @@ -256,6 +308,11 @@ msgid "" "decompression). Additionally, data compressed in this manner cannot be " "decompressed using :const:`FORMAT_AUTO` (see :class:`LZMADecompressor`)." msgstr "" +"Ce format spécifique ne prend pas en charge les vérifications d'intégrité et " +"exige systématiquement la définition d'une chaîne de filtrage personnalisée " +"(à la fois pour la compression et la décompression). Par ailleurs, les " +"données compressées par ce biais ne peuvent pas être décompressées par " +"l'usage de :const:`FORMAT_AUTO` (voir : :class:`LZMADecompressor`)." #: ../Doc/library/lzma.rst:156 msgid "" @@ -263,31 +320,46 @@ msgid "" "compressed data. This check is used when decompressing, to ensure that the " "data has not been corrupted. Possible values are:" msgstr "" +"L'argument *check* détermine le type de vérification d'intégrité à exploiter " +"avec la donnée compressée. Cette vérification est déclenchée lors de la " +"décompression, pour garantir que la donnée n'a pas été corrompue. Les " +"valeurs possibles sont :" #: ../Doc/library/lzma.rst:160 msgid "" ":const:`CHECK_NONE`: No integrity check. This is the default (and the only " "acceptable value) for :const:`FORMAT_ALONE` and :const:`FORMAT_RAW`." msgstr "" +":const:`CHECK_NONE`: Pas de vérification d'intégrité. C'est la valeur par " +"défaut (et la seule valeur acceptable) pour :const:`FORMAT_ALONE` et :const:" +"`FORMAT_RAW`." #: ../Doc/library/lzma.rst:164 msgid ":const:`CHECK_CRC32`: 32-bit Cyclic Redundancy Check." msgstr "" +":const:`CHECK_CRC32`: Vérification par Redondance Cyclique 32-bit (*Cyclic " +"Redundancy Check*)." #: ../Doc/library/lzma.rst:166 msgid "" ":const:`CHECK_CRC64`: 64-bit Cyclic Redundancy Check. This is the default " "for :const:`FORMAT_XZ`." msgstr "" +":const:`CHECK_CRC64`: Vérification par Redondance Cyclique 64-bit (*Cyclic " +"Redundancy Check*). Valeur par défaut pour :const:`FORMAT_XZ`." #: ../Doc/library/lzma.rst:169 msgid ":const:`CHECK_SHA256`: 256-bit Secure Hash Algorithm." msgstr "" +":const:`CHECK_SHA256`: Algorithme de Hachage Sécurisé 256-bit (*Secure Hash " +"Algorithm*)." #: ../Doc/library/lzma.rst:171 msgid "" "If the specified check is not supported, an :class:`LZMAError` is raised." msgstr "" +"Si le type de vérification n'est pas supporté par le système, une erreur de " +"type :class:`LZMAError` est levée." #: ../Doc/library/lzma.rst:173 msgid "" @@ -295,6 +367,10 @@ msgid "" "level (with the *preset* argument), or in detail as a custom filter chain " "(with the *filters* argument)." msgstr "" +"Les réglages de compression peuvent être définis soit comme un pré-réglage " +"de niveau de compression (avec l'argument *preset*) ; soit de façon " +"détaillée comme une chaîne particulière de filtres (avec l'argument " +"*filters*)." #: ../Doc/library/lzma.rst:177 msgid "" @@ -304,6 +380,12 @@ msgid "" "behavior is to use :const:`PRESET_DEFAULT` (preset level ``6``). Higher " "presets produce smaller output, but make the compression process slower." msgstr "" +"L'argument *preset* (s'il est fourni) doit être un entier compris entre `0`` " +"et ``9`` (inclus), éventuellement relié à OR avec la constante :const:" +"`PRESET_EXTREME`. Si aucun *preset* ni *filters* ne ont définis, le " +"comportement par défaut consiste à utiliser la :const:`PRESET_DEFAULT` " +"(niveau par défaut : ``6``). Des pré-réglages plus élevés entraîne une " +"sortie plus petite, mais rend le processus de compression plus lent." #: ../Doc/library/lzma.rst:186 msgid "" @@ -313,12 +395,20 @@ msgid "" "`LZMACompressor` object can be as high as 800 MiB. For this reason, it is " "generally best to stick with the default preset." msgstr "" +"En plus d'être plus gourmande en CPU, la compression avec des préréglages " +"plus élevés nécessite beaucoup plus de mémoire (et produit des résultats qui " +"nécessitent plus de mémoire pour décompresser). Par exemple, avec le " +"préréglage ``9``, l'objet d'une :class:`LZMACompressor` peut dépasser " +"largement les 800 Mo. Pour cette raison, il est généralement préférable de " +"respecter le préréglage par défaut." #: ../Doc/library/lzma.rst:192 msgid "" "The *filters* argument (if provided) should be a filter chain specifier. " "See :ref:`filter-chain-specs` for details." msgstr "" +"L'argument *filters* (s'il est défini) doit être un critère de la chaîne de " +"filtrage. Voir :ref:`filter-chain-specs` pour plus de précisions." #: ../Doc/library/lzma.rst:197 msgid "" @@ -328,12 +418,21 @@ msgid "" "meth:`flush`. The returned data should be concatenated with the output of " "any previous calls to :meth:`compress`." msgstr "" +"Une *data* compressée (un objet :class:`bytes`), renvoie un objet :class:" +"`bytes` contenant une donnée compressée pour au moins une partie de " +"l'entrée. Certaine *data* peuvent être mise en tampon, pour être utiliser " +"lors de prochains appels par :meth:`compress` et :meth:`flush`. La donnée " +"renvoyée pourra être concaténée avec la sortie d'appels précédents vers la " +"méthode :meth:`compress`." #: ../Doc/library/lzma.rst:205 msgid "" "Finish the compression process, returning a :class:`bytes` object containing " "any data stored in the compressor's internal buffers." msgstr "" +"Conclut l'opération de compression, en renvoyant l'objet :class:`bytes` " +"constitué de toutes les données stockées dans les tampons interne du " +"compresseur." #: ../Doc/library/lzma.rst:208 #, fuzzy @@ -347,12 +446,16 @@ msgid "" "Create a decompressor object, which can be used to decompress data " "incrementally." msgstr "" +"Créé un objet de décompression, pour décompresser de façon incrémentale une " +"donnée." #: ../Doc/library/lzma.rst:216 msgid "" "For a more convenient way of decompressing an entire compressed stream at " "once, see :func:`decompress`." msgstr "" +"Pour un moyen plus pratique de décompresser un flux compressé complet en une " +"seule fois, voir :func:`decompress`." #: ../Doc/library/lzma.rst:219 msgid "" @@ -361,6 +464,10 @@ msgid "" "``.lzma`` files. Other possible values are :const:`FORMAT_XZ`, :const:" "`FORMAT_ALONE`, and :const:`FORMAT_RAW`." msgstr "" +"L'argument *format* spécifie le format du conteneur à utiliser. La valeur " +"par défaut est :const:`FORMAT_AUTO` pouvant à la fois décompresser les " +"fichiers ``.xz`` et ``.lzma``. D'autres valeurs sont possibles comme :const:" +"`FORMAT_XZ`, :const:`FORMAT_ALONE`, et :const:`FORMAT_RAW`." #: ../Doc/library/lzma.rst:224 msgid "" @@ -369,6 +476,10 @@ msgid "" "will fail with an :class:`LZMAError` if it is not possible to decompress the " "input within the given memory limit." msgstr "" +"L'argument *memlimit* spécifie une limite (en octets) sur la quantité de " +"mémoire que le décompresseur peut utiliser. Lorsque cet argument est " +"utilisé, la décompression échouera avec une :class:`LZMAError` s'il n'est " +"pas possible de décompresser l'entrée dans la limite mémoire disponible." #: ../Doc/library/lzma.rst:229 msgid "" @@ -377,6 +488,10 @@ msgid "" "const:`FORMAT_RAW`, but should not be used for other formats. See :ref:" "`filter-chain-specs` for more information about filter chains." msgstr "" +"L'argument *filters* spécifie la chaîne de filtrage utilisée pour créer le " +"flux décompressé. Cet argument est requis si *format* est :const:" +"`FORMAT_RAW`, mais ne doit pas être utilisé pour d'autres formats. Voir :ref:" +"`filter-chain-specs` pour plus d'informations sur les chaînes de filtrage." #: ../Doc/library/lzma.rst:235 msgid "" @@ -385,6 +500,10 @@ msgid "" "decompress a multi-stream input with :class:`LZMADecompressor`, you must " "create a new decompressor for each stream." msgstr "" +"Cette classe ne gère pas de manière transparente les entrées contenant " +"plusieurs flux compressés, contrairement à :func:`decompress` et :class:" +"`LZMAFile`. Pour décompresser une entrée multi-flux avec :class:" +"`LZMADecompressor`, vous devez créer un nouveau décompresseur à chaque flux." #: ../Doc/library/lzma.rst:242 msgid "" @@ -443,6 +562,9 @@ msgid "" "`CHECK_UNKNOWN` until enough of the input has been decoded to determine what " "integrity check it uses." msgstr "" +"L'ID de la vérification d'intégrité exploité par le flux entrant. Il s'agit " +"de :const:`CHECK_UNKNOWN` tant que ce flux a été décodé pour déterminer quel " +"type de vérification d'intégrité à été utilisé." #: ../Doc/library/lzma.rst:275 msgid "``True`` if the end-of-stream marker has been reached." @@ -454,7 +576,7 @@ msgstr "Donnée trouvée après la fin du flux compressé." #: ../Doc/library/lzma.rst:281 msgid "Before the end of the stream is reached, this will be ``b\"\"``." -msgstr "" +msgstr "Avant d'atteindre la fin du flux, ce sera ``b\"\"``." #: ../Doc/library/lzma.rst:285 msgid "" @@ -469,30 +591,40 @@ msgid "" "Compress *data* (a :class:`bytes` object), returning the compressed data as " "a :class:`bytes` object." msgstr "" +"*data* compressée (un objet :class:`bytes`), renvoyant une donnée compressée " +"comme un objet :class:`bytes`." #: ../Doc/library/lzma.rst:295 msgid "" "See :class:`LZMACompressor` above for a description of the *format*, " "*check*, *preset* and *filters* arguments." msgstr "" +"Voir :class:`LZMACompressor` ci-dessus pour une description des arguments " +"*format*, *check*, *preset* et *filters*." #: ../Doc/library/lzma.rst:301 msgid "" "Decompress *data* (a :class:`bytes` object), returning the uncompressed data " "as a :class:`bytes` object." msgstr "" +"Décompresse *data* (un objet :class:`bytes` ), et retourne la donnée " +"décompressée sous la forme d'un objet :class:`bytes`." #: ../Doc/library/lzma.rst:304 msgid "" "If *data* is the concatenation of multiple distinct compressed streams, " "decompress all of these streams, and return the concatenation of the results." msgstr "" +"Si *data* est le résultat de la concaténation de plusieurs flux compressés " +"et distincts , il les décompresse tous, et retourne les résultats concaténés." #: ../Doc/library/lzma.rst:307 msgid "" "See :class:`LZMADecompressor` above for a description of the *format*, " "*memlimit* and *filters* arguments." msgstr "" +"Voir :class:`LZMADecompressor` ci-dessus pour une description des arguments " +"*format*, *memlimit* et *filters*." #: ../Doc/library/lzma.rst:312 msgid "Miscellaneous" @@ -509,10 +641,14 @@ msgid "" "`CHECK_CRC64` and :const:`CHECK_SHA256` may be unavailable if you are using " "a version of :program:`liblzma` that was compiled with a limited feature set." msgstr "" +":const:`CHECK_NONE` et :const:`CHECK_CRC32` sont toujours pris en charge. :" +"const:`CHECK_CRC64` et :const:`CHECK_SHA256` peuvent être indisponibles si " +"vous utilisez une version de :program:`liblzma` compilée avec des " +"possibilités restreintes." #: ../Doc/library/lzma.rst:327 msgid "Specifying custom filter chains" -msgstr "" +msgstr "Préciser des chaînes de filtre personnalisées" #: ../Doc/library/lzma.rst:329 msgid "" @@ -521,24 +657,31 @@ msgid "" "must contain the key ``\"id\"``, and may contain additional keys to specify " "filter-dependent options. Valid filter IDs are as follows:" msgstr "" +"Une chaîne de filtres est une séquence de dictionnaires, où chaque " +"dictionnaire contient l'ID et les options pour chaque filtre. Le moindre " +"dictionnaire contient la clé ``\"id\"`` et peut aussi contenir d'autres clés " +"pour préciser chaque options relative au filtre déclaré. Les ID valides des " +"filtres sont définies comme suit :" #: ../Doc/library/lzma.rst:336 msgid "Compression filters:" -msgstr "" +msgstr "Filtres de compression:" #: ../Doc/library/lzma.rst:335 msgid ":const:`FILTER_LZMA1` (for use with :const:`FORMAT_ALONE`)" -msgstr "" +msgstr ":const:`FILTER_LZMA1` (à utiliser avec :const:`FORMAT_ALONE`)" #: ../Doc/library/lzma.rst:336 msgid "" ":const:`FILTER_LZMA2` (for use with :const:`FORMAT_XZ` and :const:" "`FORMAT_RAW`)" msgstr "" +":const:`FILTER_LZMA2` (à utiliser avec :const:`FORMAT_XZ` et :const:" +"`FORMAT_RAW`)" #: ../Doc/library/lzma.rst:339 msgid "Delta filter:" -msgstr "" +msgstr "Filtre Delta:" #: ../Doc/library/lzma.rst:339 msgid ":const:`FILTER_DELTA`" @@ -546,7 +689,7 @@ msgstr ":const:`FILTER_DELTA`" #: ../Doc/library/lzma.rst:347 msgid "Branch-Call-Jump (BCJ) filters:" -msgstr "" +msgstr "Filtres Branch-Call-Jump (BCJ):" #: ../Doc/library/lzma.rst:342 msgid ":const:`FILTER_X86`" @@ -578,60 +721,78 @@ msgid "" "filter in the chain must be a compression filter, and any other filters must " "be delta or BCJ filters." msgstr "" +"Une chaîne de filtres peut contenir jusqu'à 4 filtres, et ne peut pas être " +"vide. Le dernier filtre de cette chaîne devra être un filtre de compression, " +"et tous les autres doivent être des filtres delta ou BCJ." #: ../Doc/library/lzma.rst:353 msgid "" "Compression filters support the following options (specified as additional " "entries in the dictionary representing the filter):" msgstr "" +"Les filtres de compression contiennent les options suivantes (définies comme " +"entrées additionnelles dans le dictionnaire qui représente le filtre) :" #: ../Doc/library/lzma.rst:356 msgid "" "``preset``: A compression preset to use as a source of default values for " "options that are not specified explicitly." msgstr "" +"``preset``: Un pré-réglage à exploiter comme une source de valeurs par " +"défaut pour les options qui ne sont pas explicitement définies." #: ../Doc/library/lzma.rst:358 msgid "" "``dict_size``: Dictionary size in bytes. This should be between 4 KiB and " "1.5 GiB (inclusive)." msgstr "" +"``dict_size``: La taille du dictionnaire en octets. Comprise entre 4 Ko et " +"1.5 Go (inclus)." #: ../Doc/library/lzma.rst:360 msgid "``lc``: Number of literal context bits." -msgstr "" +msgstr "``lc``: Nombre de bits dans le contexte littéral." #: ../Doc/library/lzma.rst:361 msgid "" "``lp``: Number of literal position bits. The sum ``lc + lp`` must be at most " "4." msgstr "" +"``lp``: Nombre de bits dans la position littérale. La somme ``lc + lp`` " +"devra être au moins 4." #: ../Doc/library/lzma.rst:363 msgid "``pb``: Number of position bits; must be at most 4." -msgstr "" +msgstr "``pb``: Nombre de bits à cette position ; au moins 4." #: ../Doc/library/lzma.rst:364 msgid "``mode``: :const:`MODE_FAST` or :const:`MODE_NORMAL`." -msgstr "" +msgstr "``mode``: :const:`MODE_FAST` ou :const:`MODE_NORMAL`." #: ../Doc/library/lzma.rst:365 msgid "" "``nice_len``: What should be considered a \"nice length\" for a match. This " "should be 273 or less." msgstr "" +"``nice_len``: Ce qui devra être pris en compte comme \"longueur appréciable" +"\" pour une recherche. Il devra être 273 ou moins." #: ../Doc/library/lzma.rst:367 msgid "" "``mf``: What match finder to use -- :const:`MF_HC3`, :const:`MF_HC4`, :const:" "`MF_BT2`, :const:`MF_BT3`, or :const:`MF_BT4`." msgstr "" +"``mf``: Quel type d'index de recherche à utiliser -- :const:`MF_HC3`, :const:" +"`MF_HC4`, :const:`MF_BT2`, :const:`MF_BT3`, ou :const:`MF_BT4`." #: ../Doc/library/lzma.rst:369 msgid "" "``depth``: Maximum search depth used by match finder. 0 (default) means to " "select automatically based on other filter options." msgstr "" +"``depth``: Profondeur maximum de la recherche, utilisée par l'index de " +"recherche. 0 (défaut) signifie une sélection automatique basée sur des " +"options de filtres différents." #: ../Doc/library/lzma.rst:372 msgid "" @@ -641,6 +802,11 @@ msgid "" "subtracted. The default is 1, i.e. take the differences between adjacent " "bytes." msgstr "" +"Le filtre delta stocke les différences entre octets, induisant davantage " +"d'entrées répétitives pour le compresseur, selon les circonstances. Il " +"support une option, ``dist``. Ce paramètre définit la distance entre les " +"octets à soustraire. Par défaut : 1, soit la différence entre des octets " +"adjacents." #: ../Doc/library/lzma.rst:377 msgid "" @@ -651,6 +817,12 @@ msgid "" "specifies the address that should be mapped to the beginning of the input " "data. The default is 0." msgstr "" +"Les filtres BCJ sont conçus pour être appliqués sur du langage machine. Ils " +"convertissent les branches relatives, les appels et les sauts dans le code à " +"des fins d'adressage strict, dans le but d'augmenter la redondance mise en " +"jeu par le compresseur. Ils ne supportent qu'une seule option : " +"``start_offset``, pour définir l'adresse où sera déclenché le début de la " +"donnée d'entrée. Par défaut : 0." #: ../Doc/library/lzma.rst:385 msgid "Examples" @@ -658,24 +830,25 @@ msgstr "Exemples" #: ../Doc/library/lzma.rst:387 msgid "Reading in a compressed file::" -msgstr "" +msgstr "Lire un fichier compressé::" #: ../Doc/library/lzma.rst:393 msgid "Creating a compressed file::" -msgstr "" +msgstr "Créer un fichier compressé::" #: ../Doc/library/lzma.rst:400 msgid "Compressing data in memory::" -msgstr "" +msgstr "Compresser des données en mémoire ::" #: ../Doc/library/lzma.rst:406 msgid "Incremental compression::" -msgstr "" +msgstr "Compression incrémentale ::" #: ../Doc/library/lzma.rst:417 msgid "Writing compressed data to an already-open file::" -msgstr "" +msgstr "Écrire des données compressées dans un fichier préalablement ouvert ::" #: ../Doc/library/lzma.rst:426 msgid "Creating a compressed file using a custom filter chain::" msgstr "" +"Créer un fichier compressé en utilisant une chaîne de filtre personnalisée ::" diff --git a/library/marshal.po b/library/marshal.po index e5ca18d6..815a7d3a 100644 --- a/library/marshal.po +++ b/library/marshal.po @@ -16,7 +16,7 @@ msgstr "" #: ../Doc/library/marshal.rst:2 msgid ":mod:`marshal` --- Internal Python object serialization" -msgstr "" +msgstr ":mod:`marshal` — Sérialisation interne des objets Python" #: ../Doc/library/marshal.rst:10 msgid "" @@ -27,6 +27,13 @@ msgid "" "are undocumented on purpose; it may change between Python versions (although " "it rarely does). [#]_" msgstr "" +"Ce module contient des fonctions permettant de lire et écrire des valeurs " +"Python au format binaire. Ce format est propre à Python, mais indépendant " +"de l'architecture de la machine (p. ex., vous pouvez écrire une valeur " +"Python dans un fichier sur un PC, envoyer le fichier vers une machine Sun et " +"la lire à nouveau). Les détails du format sont volontairement non " +"documentés ; il peut changer d'une version Python à l'autre (bien que ce " +"soit rarement le cas). [#]_" #: ../Doc/library/marshal.rst:21 msgid "" @@ -41,6 +48,17 @@ msgid "" "guaranteed, and pickle supports a substantially wider range of objects than " "marshal." msgstr "" +"Ce module ne permet pas de « sérialiser » des objets de manière permanente. " +"Pour des questions de sérialisation en général ou de transfert d'objets " +"Python par des appels RPC, référez-vous aux modules :mod:`pickle` et :mod:" +"`shelve`. Le module :mod:`marshal` existe principalement pour permettre la " +"lecture et l'écriture de code « pseudo-compilé » pour les modules Python des " +"fichiers :file:`.pyc`. Par conséquent, les mainteneurs Python se réservent " +"le droit de modifier le format *marshal* en cassant la rétrocompatibilité si " +"besoin. Si vous sérialisez et dé-sérialisez des objets Python, utilisez " +"plutôt le module :mod:`pickle` — les performances sont comparables, " +"l'indépendance par rapport à la version est garantie, et *pickle* prend en " +"charge une gamme d'objets beaucoup plus large que *marshal*." #: ../Doc/library/marshal.rst:33 msgid "" @@ -48,6 +66,9 @@ msgid "" "maliciously constructed data. Never unmarshal data received from an " "untrusted or unauthenticated source." msgstr "" +"N'utilisez pas le module :mod:`marshal` pour lire des données erronées ou " +"malveillantes. Ne démantelez jamais des données reçues d'une source non " +"fiable ou non authentifiée." #: ../Doc/library/marshal.rst:39 msgid "" @@ -63,22 +84,39 @@ msgid "" "*version* lower than 3, recursive lists, sets and dictionaries cannot be " "written (see below)." msgstr "" +"Tous les types d'objets Python ne sont pas pris en charge ; en général, " +"seuls les objets dont la valeur est indépendante d'une invocation " +"particulière de Python peuvent être écrits et lus par ce module. Les types " +"suivants sont pris en charge : booléens, entiers, nombres à virgule " +"flottante, nombres complexes, chaînes de caractères, octets, *bytearrays*, " +"*n*-uplets, listes, ensembles, ensembles figés, dictionnaires et objets, " +"étant entendu que les *n*-uplets, listes, ensembles, ensembles figés et " +"dictionnaires sont pris en charge si les valeurs qu'ils contiennent sont " +"elles-mêmes prises en charge. Les singletons :const:`None`, :const:" +"`Ellipsis` et :exc:`StopIteration` peuvent également être « pseudo-" +"compilés » et « dé-pseudo-compilés ». Pour le format des *versions* " +"inférieures à 3, les listes récursives, les ensembles et les dictionnaires " +"ne peuvent pas être écrits (voir ci-dessous)." #: ../Doc/library/marshal.rst:51 msgid "" "There are functions that read/write files as well as functions operating on " "bytes-like objects." msgstr "" +"Il existe des fonctions de lecture-écriture de fichiers ainsi que des " +"fonctions opérant sur des objets octet." #: ../Doc/library/marshal.rst:54 msgid "The module defines these functions:" -msgstr "" +msgstr "Le module définit ces fonctions :" #: ../Doc/library/marshal.rst:59 msgid "" "Write the value on the open file. The value must be a supported type. The " "file must be a writeable :term:`binary file`." msgstr "" +"Écrit la valeur sur le fichier ouvert. La valeur doit être un type pris en " +"charge. Le fichier doit être un :term:`fichier binaire` ouvert en écriture." #: ../Doc/library/marshal.rst:62 msgid "" @@ -87,12 +125,18 @@ msgid "" "written to the file. The object will not be properly read back by :func:" "`load`." msgstr "" +"Si la valeur est (ou contient un objet qui est) d'un type non implémenté, " +"une exception :exc:`ValueError` est levée — mais le contenu de la mémoire " +"sera également écrit dans le fichier. L'objet ne sera pas correctement lu " +"par :func:`load`." #: ../Doc/library/marshal.rst:66 msgid "" "The *version* argument indicates the data format that ``dump`` should use " "(see below)." msgstr "" +"L'argument *version* indique le format de données que le ``dump`` doit " +"utiliser (voir ci-dessous)." #: ../Doc/library/marshal.rst:72 msgid "" @@ -101,12 +145,19 @@ msgid "" "format), raise :exc:`EOFError`, :exc:`ValueError` or :exc:`TypeError`. The " "file must be a readable :term:`binary file`." msgstr "" +"Lit une valeur du fichier ouvert et la renvoie. Si aucune valeur valide " +"n'est lue (p. ex. parce que les données ont un format décompilé incompatible " +"avec une autre version de Python), :exc:`EOFError`, :exc:`ValueError` ou :" +"exc:`TypeError` est levée. Le fichier doit être un :term:`fichier binaire` " +"ouvert en lecture." #: ../Doc/library/marshal.rst:79 msgid "" "If an object containing an unsupported type was marshalled with :func:" "`dump`, :func:`load` will substitute ``None`` for the unmarshallable type." msgstr "" +"Si un objet contenant un type non pris en charge a été dé-compilé avec :func:" +"`dump`, :func:`load` remplacera le type non « dé-compilable » par ``None``." #: ../Doc/library/marshal.rst:85 msgid "" @@ -114,12 +165,18 @@ msgid "" "file)``. The value must be a supported type. Raise a :exc:`ValueError` " "exception if value has (or contains an object that has) an unsupported type." msgstr "" +"Renvoie les octets qui seraient écrits dans un fichier par ``dump(value, " +"file)``. La valeur doit être un type pris en charge. Lève une exception :" +"exc:`ValueError` si la valeur a (ou contient un objet qui a) un type qui " +"n'est pas pris en charge." #: ../Doc/library/marshal.rst:89 msgid "" "The *version* argument indicates the data format that ``dumps`` should use " "(see below)." msgstr "" +"L'argument *version* indique le format de données que ``dumps`` doivent " +"utiliser (voir ci-dessous)." #: ../Doc/library/marshal.rst:95 msgid "" @@ -127,10 +184,13 @@ msgid "" "found, raise :exc:`EOFError`, :exc:`ValueError` or :exc:`TypeError`. Extra " "bytes in the input are ignored." msgstr "" +"Convertit le :term:`bytes-like object` en une valeur. Si aucune valeur " +"valide n'est trouvée, :exc:`EOFError`, :exc:`ValueError` ou :exc:`TypeError` " +"est levée. Les octets supplémentaires de l'entrée sont ignorés." #: ../Doc/library/marshal.rst:100 msgid "In addition, the following constants are defined:" -msgstr "" +msgstr "De plus, les constantes suivantes sont définies :" #: ../Doc/library/marshal.rst:104 msgid "" @@ -139,6 +199,11 @@ msgid "" "for floating point numbers. Version 3 adds support for object instancing and " "recursion. The current version is 4." msgstr "" +"Indique le format que le module utilise. La version 0 est le format " +"originel, la version 1 partage des chaînes de caractères internes et la " +"version 2 utilise un format binaire pour les nombres à virgule flottante. La " +"version 3 ajoute la prise en charge de l'instanciation et de la récursivité " +"des objets. La version actuelle est la 4." #: ../Doc/library/marshal.rst:112 msgid "Footnotes" @@ -152,3 +217,9 @@ msgid "" "marshal\" means to convert some data from internal to external form (in an " "RPC buffer for instance) and \"unmarshalling\" for the reverse process." msgstr "" +"Le nom de ce module provient d'un peu de terminologie utilisée par les " +"concepteurs de Modula-3 (entre autres), qui utilisent le terme *marshalling* " +"pour l'envoi de données sous une forme autonome. À proprement parler, *to " +"marshal* signifie convertir certaines données d'une forme interne à une " +"forme externe (dans une mémoire tampon RPC par exemple) et *unmarshalling* " +"désigne le processus inverse." diff --git a/library/platform.po b/library/platform.po index e3d14b4e..42b5d3e1 100644 --- a/library/platform.po +++ b/library/platform.po @@ -16,7 +16,7 @@ msgstr "" #: ../Doc/library/platform.rst:2 msgid ":mod:`platform` --- Access to underlying platform's identifying data" -msgstr "" +msgstr ":mod:`platform` — Accès aux données sous-jacentes de la plateforme" #: ../Doc/library/platform.rst:10 msgid "**Source code:** :source:`Lib/platform.py`" @@ -27,16 +27,20 @@ msgid "" "Specific platforms listed alphabetically, with Linux included in the Unix " "section." msgstr "" +"Les spécificités des plateformes sont regroupées dans des sections triées " +"par ordre alphabétique. Linux est inclus dans la section Unix." #: ../Doc/library/platform.rst:21 msgid "Cross Platform" -msgstr "" +msgstr "Multi-plateforme" #: ../Doc/library/platform.rst:26 msgid "" "Queries the given executable (defaults to the Python interpreter binary) for " "various architecture information." msgstr "" +"Interroge l'exécutable fourni (par défaut l'interpréteur Python) sur les " +"informations de l'architecture." #: ../Doc/library/platform.rst:29 msgid "" @@ -44,6 +48,9 @@ msgid "" "architecture and the linkage format used for the executable. Both values are " "returned as strings." msgstr "" +"Renvoie un *n*-uplet de ``(bits, linkage)`` qui contient de l'information " +"sur l'architecture binaire et le format de lien. Les deux valeurs sont des " +"chaînes de caractères." #: ../Doc/library/platform.rst:33 msgid "" @@ -52,6 +59,11 @@ msgid "" "``sizeof(long)`` on Python version < 1.5.2) is used as indicator for the " "supported pointer size." msgstr "" +"Lorsqu'une valeur ne peut être déterminée, la valeur passée en paramètre est " +"utilisée. Si la valeur passée à *bits* est ``''``, la valeur de " +"``sizeof(pointer)`` (ou ``sizeof(long)`` sur les versions Python antérieures " +"à 1.5.2) est utilisée comme indicateur de la taille de pointeur prise en " +"charge." #: ../Doc/library/platform.rst:38 msgid "" @@ -60,42 +72,61 @@ msgid "" "platforms and then only if the executable points to the Python interpreter. " "Reasonable defaults are used when the above needs are not met." msgstr "" +"La fonction dépend de la commande :file:`file` du système pour accomplir la " +"tâche. `file` est disponible sur quasiment toutes les plateformes Unix ainsi " +"que sur certaines plateformes hors de la famille Unix et l'exécutable doit " +"pointer vers l'interpréteur Python. Des valeurs par défaut raisonnables sont " +"utilisées lorsque les conditions précédentes ne sont pas atteintes." #: ../Doc/library/platform.rst:45 msgid "" "On Mac OS X (and perhaps other platforms), executable files may be universal " "files containing multiple architectures." msgstr "" +"Sur Mac OS X (ainsi que d'autres plateformes), les fichiers exécutables " +"peuvent être universels et contenir plusieurs architectures." #: ../Doc/library/platform.rst:48 msgid "" "To get at the \"64-bitness\" of the current interpreter, it is more reliable " "to query the :attr:`sys.maxsize` attribute::" msgstr "" +"Afin de déterminer si l'interpréteur courant est 64-bit, une méthode plus " +"fiable est d'interroger l'attribut :attr:`sys.maxsize` ::" #: ../Doc/library/platform.rst:56 msgid "" "Returns the machine type, e.g. ``'i386'``. An empty string is returned if " "the value cannot be determined." msgstr "" +"Renvoie le type de machine. Par exemple, ``'i386'``. Une chaîne de " +"caractères vide est renvoyée si la valeur ne peut être déterminée." #: ../Doc/library/platform.rst:62 msgid "" "Returns the computer's network name (may not be fully qualified!). An empty " "string is returned if the value cannot be determined." msgstr "" +"Renvoie le nom de l'ordinateur sur le réseau (pas forcément pleinement " +"qualifié). Une chaîne de caractères vide est renvoyée s'il ne peut pas être " +"déterminé." #: ../Doc/library/platform.rst:68 msgid "" "Returns a single string identifying the underlying platform with as much " "useful information as possible." msgstr "" +"Renvoie une chaîne de caractère identifiant la plateforme avec le plus " +"d'informations possible." #: ../Doc/library/platform.rst:71 msgid "" "The output is intended to be *human readable* rather than machine parseable. " "It may look different on different platforms and this is intended." msgstr "" +"La valeur renvoyée est destinée à la *lecture humaine* plutôt que " +"l'interprétation machine. Il est possible qu'elle soit différente selon la " +"plateforme et c'est voulu." #: ../Doc/library/platform.rst:74 msgid "" @@ -104,22 +135,31 @@ msgid "" "SunOS will be reported as Solaris. The :func:`system_alias` function is " "used to implement this." msgstr "" +"Si *aliased* est vrai, la fonction utilisera des alias pour certaines " +"plateformes qui utilisent des noms de système qui diffèrent de leurs noms " +"communs. Par exemple, SunOS sera reconnu comme Solaris. La fonction :func:" +"`system_alias` est utilisée pour l'implémentation." #: ../Doc/library/platform.rst:79 msgid "" "Setting *terse* to true causes the function to return only the absolute " "minimum information needed to identify the platform." msgstr "" +"Si *terse* est vrai, la fonction ne renverra que l'information nécessaire à " +"l'identification de la plateforme." #: ../Doc/library/platform.rst:82 msgid "" "On macOS, the function now uses :func:`mac_ver`, if it returns a non-empty " "release string, to get the macOS version rather than the darwin version." msgstr "" +"Sur MacOS, la fonction essaie maintenant d'utiliser la fonction :func:" +"`mac_ver` pour obtenir la version de MacOS plutôt que la version de Darwin : " +"le résultat de `mac_ver` est utilisé si ce n'est pas une chaîne vide." #: ../Doc/library/platform.rst:90 msgid "Returns the (real) processor name, e.g. ``'amdk6'``." -msgstr "" +msgstr "Renvoie le (vrai) nom du processeur. Par exemple : ``'amdk6'``." #: ../Doc/library/platform.rst:92 msgid "" @@ -127,64 +167,92 @@ msgid "" "many platforms do not provide this information or simply return the same " "value as for :func:`machine`. NetBSD does this." msgstr "" +"Une chaîne de caractères vide est renvoyée si la valeur ne peut être " +"déterminée. Prenez note que plusieurs plateformes ne fournissent pas cette " +"information ou renvoient la même valeur que la fonction :func:`machine`. " +"NetBSD agit ainsi." #: ../Doc/library/platform.rst:99 msgid "" "Returns a tuple ``(buildno, builddate)`` stating the Python build number and " "date as strings." msgstr "" +"Renvoie une paire ``(buildno, builddate)`` de chaîne de caractères " +"identifiant la version et la date de compilation de Python." #: ../Doc/library/platform.rst:105 msgid "Returns a string identifying the compiler used for compiling Python." msgstr "" +"Renvoie une chaîne de caractères identifiant le compilateur utilisé pour " +"compiler Python." #: ../Doc/library/platform.rst:110 msgid "Returns a string identifying the Python implementation SCM branch." msgstr "" +"Renvoie la chaîne de caractères identifiant la branche du gestionnaire de " +"versions de l'implémentation Python." #: ../Doc/library/platform.rst:115 msgid "" "Returns a string identifying the Python implementation. Possible return " "values are: 'CPython', 'IronPython', 'Jython', 'PyPy'." msgstr "" +"Renvoie une chaîne de caractères identifiant l'implémentation de Python. Des " +"valeurs possibles sont : ``CPython``, ``IronPython``, ``Jython``, ``Pypy``." #: ../Doc/library/platform.rst:121 msgid "Returns a string identifying the Python implementation SCM revision." msgstr "" +"Renvoie la chaîne de caractères identifiant la révision du gestionnaire de " +"versions de l'implémentation Python." #: ../Doc/library/platform.rst:126 msgid "Returns the Python version as string ``'major.minor.patchlevel'``." msgstr "" +"Renvoie la version de Python comme une chaîne de caractères ``'major.minor." +"patchlevel'``." #: ../Doc/library/platform.rst:128 msgid "" "Note that unlike the Python ``sys.version``, the returned value will always " "include the patchlevel (it defaults to 0)." msgstr "" +"Prenez note que la valeur renvoyée inclut toujours le *patchlevel* (valeur " +"par défaut de 0) à la différence de ``sys.version``." #: ../Doc/library/platform.rst:134 msgid "" "Returns the Python version as tuple ``(major, minor, patchlevel)`` of " "strings." msgstr "" +"Renvoie la version de Python comme un triplet de chaînes de caractères " +"``(major, minor, patchlevel)``." #: ../Doc/library/platform.rst:136 msgid "" "Note that unlike the Python ``sys.version``, the returned value will always " "include the patchlevel (it defaults to ``'0'``)." msgstr "" +"Prenez note que la valeur renvoyée inclut toujours le *patchlevel* (valeur " +"par défaut de ``'0'``) à la différence de ``sys.version``." #: ../Doc/library/platform.rst:142 msgid "" "Returns the system's release, e.g. ``'2.2.0'`` or ``'NT'`` An empty string " "is returned if the value cannot be determined." msgstr "" +"Renvoie la version de déploiement du système, par exemple, ``'2.2.0'`` ou " +"``'NT'``. Une chaîne de caractères vide signifie qu'aucune valeur ne peut " +"être déterminée." #: ../Doc/library/platform.rst:148 msgid "" "Returns the system/OS name, such as ``'Linux'``, ``'Darwin'``, ``'Java'``, " "``'Windows'``. An empty string is returned if the value cannot be determined." msgstr "" +"Renvoie le nom du système d'exploitation, tel que ``'Linux'``, ``'Darwin'``, " +"``'Java'``, ``'Windows'``. Une chaîne de caractères vide est renvoyée si le " +"nom ne peut être déterminé." #: ../Doc/library/platform.rst:154 msgid "" @@ -192,12 +260,18 @@ msgid "" "used for some systems. It also does some reordering of the information in " "some cases where it would otherwise cause confusion." msgstr "" +"Renvoie ``(system, release, version)`` avec des alias pour les noms communs " +"de certains systèmes. Modifie aussi l'ordre de l'information pour éviter la " +"confusion." #: ../Doc/library/platform.rst:161 msgid "" "Returns the system's release version, e.g. ``'#3 on degas'``. An empty " "string is returned if the value cannot be determined." msgstr "" +"Renvoie la version de déploiement du système. Par exemple, ``'#3 on " +"degas'``. Une chaîne de caractères vide est renvoyée si aucune valeur ne " +"peut être déterminée." #: ../Doc/library/platform.rst:167 msgid "" @@ -205,6 +279,9 @@ msgid "" "containing six attributes: :attr:`system`, :attr:`node`, :attr:`release`, :" "attr:`version`, :attr:`machine`, and :attr:`processor`." msgstr "" +"Interface de *uname* relativement portable. Renvoie un :func:`~collections." +"namedtuple` contenant six attributs : :attr:`system`, :attr:`node`, :attr:" +"`release`, :attr:`version`, :attr:`machine` et :attr:`processor`." #: ../Doc/library/platform.rst:171 msgid "" @@ -213,10 +290,14 @@ msgid "" "the first two attributes; :func:`os.uname` names them :attr:`sysname` and :" "attr:`nodename`." msgstr "" +"Prenez note qu'il y a un attribut supplémentaire (:attr:`processor`) par " +"rapport à la valeur de retour de :func:`os.uname`. De plus, les deux " +"premiers attributs changent de nom ; ils s'appellent :attr:`sysname` et :" +"attr:`nodename` pour la fonction :func:`os.uname`." #: ../Doc/library/platform.rst:176 msgid "Entries which cannot be determined are set to ``''``." -msgstr "" +msgstr "Les entrées qui ne peuvent pas être identifiées ont la valeur ``''``." #: ../Doc/library/platform.rst:178 msgid "Result changed from a tuple to a namedtuple." @@ -224,11 +305,11 @@ msgstr "Le type renvoyé passe d'un *tuple* à un *namedtuple*." #: ../Doc/library/platform.rst:183 msgid "Java Platform" -msgstr "" +msgstr "Plateforme Java" #: ../Doc/library/platform.rst:188 msgid "Version interface for Jython." -msgstr "" +msgstr "Version de l'interface pour Jython." #: ../Doc/library/platform.rst:190 msgid "" @@ -237,10 +318,15 @@ msgid "" "``(os_name, os_version, os_arch)``. Values which cannot be determined are " "set to the defaults given as parameters (which all default to ``''``)." msgstr "" +"Renvoie un *n*-uplet ``(release, vendor, vminfo, osinfo)``. *vminfo* est un " +"triplet de valeur ``(vm_name, vm_release, vm_vendor)`` et *osinfo* est un " +"triplet de valeur ``(os_name, os_version, os_arch)``. Les valeurs " +"indéterminables ont la valeur des paramètres par défaut (valeur de ``''`` " +"par défaut)." #: ../Doc/library/platform.rst:197 msgid "Windows Platform" -msgstr "" +msgstr "Plateforme Windows" #: ../Doc/library/platform.rst:202 msgid "" @@ -248,6 +334,10 @@ msgid "" "tuple ``(release, version, csd, ptype)`` referring to OS release, version " "number, CSD level (service pack) and OS type (multi/single processor)." msgstr "" +"Interroge le registre Windows pour de l'information supplémentaire et " +"renvoie un triplet de ``(release, version, csd, ptype)`` faisant référence " +"au numéro de version du SE, le numéro de version, le niveau de CSD (Service " +"Pack) et le type de SE (monoprocesseur ou multiprocesseur)." #: ../Doc/library/platform.rst:206 msgid "" @@ -257,6 +347,11 @@ msgid "" "also state *'Checked'* which means the OS version uses debugging code, i.e. " "code that checks arguments, ranges, etc." msgstr "" +"Astuce : *ptype* est ``'Uniprocessor Free'`` sur des machines NT ayant qu'un " +"seul processeur et ``'Multiprocessor Free'`` sur des machines ayant " +"plusieurs processeurs. La composante *'Free'* fait référence à l'absence de " +"code de débogage dans le SE. Au contraire, *'Checked'* indique que le SE " +"utilise du code de débogage pour valider les paramètres, etc." #: ../Doc/library/platform.rst:214 msgid "" @@ -271,16 +366,21 @@ msgid "" "include but are not limited to ``'Enterprise'``, ``'IoTUAP'``, " "``'ServerStandard'``, and ``'nanoserver'``." msgstr "" +"Renvoie une chaîne de caractères représentant l'édition courante de Windows. " +"Des exemples de valeurs possibles sont : ``'Enterprise'``, ``'IoTUAP'``, " +"``'ServerStandard'`` et ``'nanoserver'``." #: ../Doc/library/platform.rst:229 msgid "" "Return ``True`` if the Windows edition returned by :func:`win32_edition` is " "recognized as an IoT edition." msgstr "" +"Renvoie ``True`` si l'édition de Windows renvoyée par la fonction :func:" +"`win32_edition` est reconnue comme une édition IoT." #: ../Doc/library/platform.rst:236 msgid "Mac OS Platform" -msgstr "" +msgstr "Plateforme Mac OS" #: ../Doc/library/platform.rst:241 msgid "" @@ -288,16 +388,21 @@ msgid "" "versioninfo, machine)`` with *versioninfo* being a tuple ``(version, " "dev_stage, non_release_version)``." msgstr "" +"Renvoie les informations de version de Mac OS avec un triplet de ``(release, " +"versioninfo, machine)``. *versioninfo* est un triplet de ``(version, " +"dev_stage, non_release_version)``." #: ../Doc/library/platform.rst:245 msgid "" "Entries which cannot be determined are set to ``''``. All tuple entries are " "strings." msgstr "" +"Les entrées qui ne peuvent pas être identifiées auront la valeur ``''``. Les " +"membres du *n*-uplet sont tous des chaînes de caractères." #: ../Doc/library/platform.rst:250 msgid "Unix Platforms" -msgstr "" +msgstr "Plateformes Unix" #: ../Doc/library/platform.rst:254 msgid "" @@ -306,6 +411,10 @@ msgid "" "``(lib, version)`` which default to the given parameters in case the lookup " "fails." msgstr "" +"Tente d'identifier la version de la bibliothèque standard C à laquelle le " +"fichier exécutable (par défaut l'interpréteur Python) est lié. Renvoie une " +"paire de chaînes de caractères ``(lib, version)``. Les valeurs passées en " +"paramètre seront retournées si la recherche échoue." #: ../Doc/library/platform.rst:258 msgid "" @@ -313,7 +422,11 @@ msgid "" "versions add symbols to the executable is probably only usable for " "executables compiled using :program:`gcc`." msgstr "" +"Prenez note que cette fonction a une connaissance profonde des méthodes " +"utilisées par les versions de la bibliothèque standard C pour ajouter des " +"symboles au fichier exécutable. Elle n'est probablement utilisable qu'avec " +"des exécutables compilés avec :program:`gcc`." #: ../Doc/library/platform.rst:262 msgid "The file is read and scanned in chunks of *chunksize* bytes." -msgstr "" +msgstr "Le fichier est lu en blocs de *chunksize* octets." diff --git a/library/py_compile.po b/library/py_compile.po index 4ded5390..fde9db78 100644 --- a/library/py_compile.po +++ b/library/py_compile.po @@ -16,7 +16,7 @@ msgstr "" #: ../Doc/library/py_compile.rst:2 msgid ":mod:`py_compile` --- Compile Python source files" -msgstr "" +msgstr ":mod:`py_compile` — Compilation de sources Python" #: ../Doc/library/py_compile.rst:10 msgid "**Source code:** :source:`Lib/py_compile.py`" @@ -28,6 +28,9 @@ msgid "" "file from a source file, and another function used when the module source " "file is invoked as a script." msgstr "" +"Le module :mod:`py_compile` définit une fonction principale qui génère un " +"fichier de code intermédiaire à partir d'un fichier source. Il exporte " +"également la fonction qu'il exécute quand il est lancé en tant que script." #: ../Doc/library/py_compile.rst:20 msgid "" @@ -35,11 +38,15 @@ msgid "" "for shared use, especially if some of the users may not have permission to " "write the byte-code cache files in the directory containing the source code." msgstr "" +"Bien que ce module ne soit pas d'usage fréquent, il peut servir lors de " +"l'installation de bibliothèques partagées, notamment dans le cas où tous les " +"utilisateurs n'ont pas les privilèges d'écriture dans l'emplacement " +"d'installation." #: ../Doc/library/py_compile.rst:27 msgid "" "Exception raised when an error occurs while attempting to compile the file." -msgstr "" +msgstr "Exception levée quand une erreur se produit à la compilation." #: ../Doc/library/py_compile.rst:32 msgid "" @@ -65,6 +72,13 @@ msgid "" "`PyCompileError` is raised instead. However if *quiet* is 2, no message is " "written, and *doraise* has no effect." msgstr "" +"Plus précisément, ce sont les arguments *doraise* et *quiet* qui déterminent " +"la stratégie de gestion des erreurs. En effet, si *quiet* vaut 0 ou 1, et " +"*doraise* est faux, le comportement par défaut s'applique : un message " +"d'erreur est affiché dans ``sys.stderr``, et la fonction renvoie ``None`` au " +"lieu d'un chemin. Au contraire, si *doraise* est vrai, une exception :exc:" +"`PyCompileError` est levée, sauf si *quiet* vaut 2. Dans ce dernier cas, " +"aucun message n'est émis, et *doraise* reste sans effet." #: ../Doc/library/py_compile.rst:52 msgid "" @@ -75,6 +89,14 @@ msgid "" "a side-effect of import using file renaming to place the final byte-compiled " "file into place to prevent concurrent file writing issues." msgstr "" +"Si le chemin de destination, explicité par *cfile* ou choisi " +"automatiquement, est un lien symbolique, ou n'est pas un véritable fichier, " +"une exception de type :exc:`FileExistsError` est levée. Ceci, dans le but de " +"vous avertir que le système d'importation changera ces chemins en fichiers " +"s'il est autorisé à y écrire des fichiers de code intermédiaire. En effet, " +"les importations passent par un renommage final du fichier de code " +"intermédiaire vers sa destination, afin d'éviter les problèmes liés à " +"l'écriture simultanée d'un même fichier par plusieurs processus." #: ../Doc/library/py_compile.rst:59 msgid "" @@ -82,6 +104,10 @@ msgid "" "func:`compile` function. The default of ``-1`` selects the optimization " "level of the current interpreter." msgstr "" +"*optimize* règle le niveau d'optimisation. Ce paramètre est passé " +"directement à la fonction native :func:`compile`. Avec la valeur par défaut " +"de ``-1``, le code intermédiaire hérite du niveau d'optimisation de " +"l'interpréteur courant." #: ../Doc/library/py_compile.rst:63 msgid "" @@ -91,6 +117,11 @@ msgid "" "envvar:`SOURCE_DATE_EPOCH` environment variable is set, otherwise the " "default is :attr:`PycInvalidationMode.TIMESTAMP`." msgstr "" +"*invalidation_mode* précise la manière dont le code intermédiaire produit " +"est invalidé à son exécution. Il doit être un membre de l'énumération :class:" +"`PycInvalidationMode`. La valeur par défaut est :attr:`PycInvalidationMode." +"TIMESTAMP`. Elle passe toutefois à :attr:`PycInvalidationMode.CHECKED_HASH` " +"si la variable d'environnement :envvar:`SOURCE_DATE_EPOCH` est définie." #: ../Doc/library/py_compile.rst:69 msgid "" @@ -98,6 +129,10 @@ msgid "" "default was *file* + ``'c'`` (``'o'`` if optimization was enabled). Also " "added the *optimize* parameter." msgstr "" +"la méthode de choix de destination a changé au profit de celle décrite dans " +"la :pep:`3147`. Auparavant, le nom du fichier de code intermédiaire était " +"*file* + ``'c'`` (ou ``'o'`` lorsque les optimisations étaient actives). Le " +"paramètre *optimize* a été ajouté." #: ../Doc/library/py_compile.rst:74 msgid "" @@ -107,6 +142,12 @@ msgid "" "that :exc:`FileExistsError` is raised if *cfile* is a symlink or non-regular " "file." msgstr "" +"le code a été modifié pour faire appel à :mod:`importlib` dans les " +"opérations d'écriture du code intermédiaire. Ce module se comporte donc " +"exactement comme :mod:`importlib` en ce qui concerne, par exemple, les " +"permissions, ou le renommage final qui garantit une opération atomique. :exc:" +"`FileExistsError` est désormais levée si la destination est un lien " +"symbolique ou n'est pas un véritable fichier." #: ../Doc/library/py_compile.rst:81 msgid "" @@ -115,6 +156,10 @@ msgid "" "*invalidation_mode* will be forced to :attr:`PycInvalidationMode." "CHECKED_HASH`." msgstr "" +"le paramètre *invalidation_mode* a été ajouté comme requis par la :pep:" +"`552`. Si la variable d'environnement :envvar:`SOURCE_DATE_EPOCH` est " +"définie, *invalidation_mode* est ignoré, et :attr:`PycInvalidationMode." +"CHECKED_HASH` s'applique dans tous les cas." #: ../Doc/library/py_compile.rst:87 msgid "" @@ -122,6 +167,9 @@ msgid "" "value of the *invalidation_mode* argument, and determines its default value " "instead." msgstr "" +"La variable d'environnement :envvar:`SOURCE_DATE_EPOCH` n'a plus préséance " +"sur le paramètre *invalidation_mode*, mais détermine seulement le " +"comportement par défaut lorsque ce paramètre n'est pas passé." #: ../Doc/library/py_compile.rst:92 #, fuzzy @@ -136,6 +184,12 @@ msgid "" "invalidation` for more information on how Python invalidates ``.pyc`` files " "at runtime." msgstr "" +"Énumération des méthodes que l'interpréteur est susceptible d'appliquer afin " +"de déterminer si un fichier de code intermédiaire est périmé par rapport à " +"sa source. Les fichiers ``.pyc`` portent le mode d'invalidation désiré dans " +"leur en-tête. Veuillez-vous référer à :ref:`pyc-invalidation` pour plus " +"d'informations sur la manière dont Python invalide les fichiers ``.pyc`` à " +"l'exécution." #: ../Doc/library/py_compile.rst:108 msgid "" @@ -143,6 +197,9 @@ msgid "" "Python will compare against the metadata of the source file at runtime to " "determine if the ``.pyc`` file needs to be regenerated." msgstr "" +"Le fichier ``.pyc`` contient l'horodatage et la taille de la source. " +"L'interpréteur inspecte les métadonnées du fichier source au moment de " +"l'exécution, et régénère le fichier ``.pyc`` si elles ont changé." #: ../Doc/library/py_compile.rst:114 msgid "" @@ -150,6 +207,9 @@ msgid "" "will compare against the source at runtime to determine if the ``.pyc`` file " "needs to be regenerated." msgstr "" +"Le fichier ``.pyc`` porte une empreinte du code source. À l'exécution, elle " +"est recalculée à partir de la source éventuellement modifiée, et le fichier " +"``.pyc`` est régénéré si les deux empreintes sont différentes." #: ../Doc/library/py_compile.rst:120 msgid "" @@ -157,12 +217,17 @@ msgid "" "file content. However, Python will at runtime assume the ``.pyc`` file is up " "to date and not validate the ``.pyc`` against the source file at all." msgstr "" +"Le principe est le même que :attr:`CHECKED_HASH`, mais à l'exécution, " +"l'interpréteur considère systématiquement que le fichier ``.pyc`` est à " +"jour, sans regarder la source." #: ../Doc/library/py_compile.rst:124 msgid "" "This option is useful when the ``.pycs`` are kept up to date by some system " "external to Python like a build system." msgstr "" +"Cette option est utile lorsque les fichiers ``.pyc`` sont maintenus par un " +"outil externe, comme un système d'intégration." #: ../Doc/library/py_compile.rst:130 msgid "" @@ -173,10 +238,16 @@ msgid "" "If ``'-'`` is the only parameter in args, the list of files is taken from " "standard input." msgstr "" +"Compile et met en cache tous les fichiers de la séquence *args*, ou ceux " +"passés comme arguments en ligne de commande si *args* est ``None``. Cette " +"fonction n'effectue aucune recherche des fichiers sources dans des dossiers. " +"Elle compile simplement les fichiers nommés un par un. Si ``'-'`` est le " +"seul paramètre dans *args*, la liste des fichiers est lue sur l'entrée " +"standard." #: ../Doc/library/py_compile.rst:137 msgid "Added support for ``'-'``." -msgstr "" +msgstr "prise en charge de ``'-'``." #: ../Doc/library/py_compile.rst:140 msgid "" @@ -184,11 +255,15 @@ msgid "" "the files named on the command line. The exit status is nonzero if one of " "the files could not be compiled." msgstr "" +"Lorsque ce module est exécuté en tant que script, la fonction :func:`main` " +"compile tous les fichiers passés comme arguments sur la ligne de commande. " +"Le code de retour vaut zéro si tous ont été compilés sans erreur." #: ../Doc/library/py_compile.rst:147 msgid "Module :mod:`compileall`" -msgstr "" +msgstr "Module :mod:`compileall`" #: ../Doc/library/py_compile.rst:148 msgid "Utilities to compile all Python source files in a directory tree." msgstr "" +"Utilitaires pour compiler des fichiers source Python dans une arborescence" diff --git a/library/socket.po b/library/socket.po index 64d0253c..f5e2d398 100644 --- a/library/socket.po +++ b/library/socket.po @@ -15,7 +15,7 @@ msgstr "" #: ../Doc/library/socket.rst:2 msgid ":mod:`socket` --- Low-level networking interface" -msgstr "" +msgstr ":mod:`socket` — Gestion réseau de bas niveau" #: ../Doc/library/socket.rst:7 #, fuzzy diff --git a/library/turtle.po b/library/turtle.po index e5f6b32b..844a3bf2 100644 --- a/library/turtle.po +++ b/library/turtle.po @@ -878,6 +878,9 @@ msgid "" "position. Return a stamp_id for that stamp, which can be used to delete it " "by calling ``clearstamp(stamp_id)``." msgstr "" +"Tamponne une copie de la forme de la tortue sur le canevas à la position " +"actuelle de la tortue. Renvoie un *stamp_id* pour ce tampon, qui peut être " +"utilisé pour le supprimer en appelant ``clearstamp(stamp_id)``." #: ../Doc/library/turtle.rst:547 msgid "an integer, must be return value of previous :func:`stamp` call" @@ -887,7 +890,7 @@ msgstr "" #: ../Doc/library/turtle.rst:550 msgid "Delete stamp with given *stampid*." -msgstr "" +msgstr "Supprime le tampon dont le *stampid* est donné." #: ../Doc/library/turtle.rst:571 msgid "" @@ -895,6 +898,9 @@ msgid "" "all stamps, if *n* > 0 delete first *n* stamps, else if *n* < 0 delete last " "*n* stamps." msgstr "" +"Supprime tous, les *n* premiers ou les *n* derniers tampons de la tortue. Si " +"*n* est ``None``, supprime tous les tampons, si *n* > 0, supprime les *n* " +"premiers tampons et si n < 0, supprime les *n* derniers tampons." #: ../Doc/library/turtle.rst:594 msgid "" @@ -961,11 +967,16 @@ msgid "" "Attention: *speed* = 0 means that *no* animation takes place. forward/back " "makes turtle jump and likewise left/right make the turtle turn instantly." msgstr "" +"Attention : *speed* = 0 signifie qu'il n'y a *aucune* animation. *forward*/" +"*back* font sauter la tortue et, de même, *left*/*right* font tourner la " +"tortue instantanément." #: ../Doc/library/turtle.rst:649 msgid "" "Return the turtle's current location (x,y) (as a :class:`Vec2D` vector)." msgstr "" +"Renvoie la position actuelle de la tortue (x,y) (en tant qu'un vecteur :" +"class:`Vec2d`)." #: ../Doc/library/turtle.rst:660 ../Doc/library/turtle.rst:723 msgid "a number or a pair/vector of numbers or a turtle instance" @@ -1005,6 +1016,8 @@ msgid "" "Return the distance from the turtle to (x,y), the given vector, or the given " "other turtle, in turtle step units." msgstr "" +"Renvoie la distance entre la tortue et (x,y), le vecteur donné ou l'autre " +"tortue donnée. La valeur est exprimée en unités de pas de tortue." #: ../Doc/library/turtle.rst:744 msgid "Settings for measurement" @@ -1044,6 +1057,10 @@ msgid "" "\"auto\" and turtleshape is a polygon, that polygon is drawn with the same " "line thickness. If no argument is given, the current pensize is returned." msgstr "" +"Règle l'épaisseur de la ligne à *width* ou la renvoie. Si *resizemode* est " +"défini à \"auto\" et que *turtleshape* (la forme de la tortue) est un " +"polygone, le polygone est dessiné avec cette épaisseur. Si aucun argument " +"n'est passé, la taille actuelle du stylo (*pensize*) est renvoyée." #: ../Doc/library/turtle.rst:833 msgid "a dictionary with some or all of the below listed keys" @@ -1114,6 +1131,10 @@ msgid "" "can be provided as keyword-arguments. This can be used to set several pen " "attributes in one statement." msgstr "" +"Ce dictionnaire peut être utilisé comme argument pour un appel ultérieur à :" +"func:`pen` pour restaurer l'ancien état du stylo. En outre, un ou plus de " +"ces attributs peuvent est passés en tant qu'arguments nommés. Cela peut être " +"utilisé pour définir plusieurs attributs du stylo en une instruction." #: ../Doc/library/turtle.rst:876 msgid "Return ``True`` if pen is down, ``False`` if it's up." @@ -1138,6 +1159,9 @@ msgid "" "Return the current pencolor as color specification string or as a tuple (see " "example). May be used as input to another color/pencolor/fillcolor call." msgstr "" +"Renvoie la couleur du stylo actuelle en tant que chaine de spécification de " +"couleurs ou en tant qu'un *n*-uplet (voir l'exemple). Peut être utilisée " +"comme entrée à un autre appel de *color*/*pencolor*/*fillcolor*." #: ../Doc/library/turtle.rst:905 msgid "``pencolor(colorstring)``" @@ -1162,6 +1186,9 @@ msgid "" "*b*. Each of *r*, *g*, and *b* must be in the range 0..colormode, where " "colormode is either 1.0 or 255 (see :func:`colormode`)." msgstr "" +"Définit la couleur du stylo à la couleur RGB représentée par le *n*-uplet de " +"*r*, *g* et *b*. Chacun des *r*, *g* et *b* doit être dans l'intervalle ``0.." +"colormode``, où *colormode* est vaut 1.0 ou 255 (voir :func:`colormode`)." #: ../Doc/library/turtle.rst:917 msgid "``pencolor(r, g, b)``" @@ -1172,6 +1199,8 @@ msgid "" "Set pencolor to the RGB color represented by *r*, *g*, and *b*. Each of " "*r*, *g*, and *b* must be in the range 0..colormode." msgstr "" +"Définit la couleur du stylo à la couleur RGB représentée par *r*, *g* et " +"*b*. Chacun des *r*, *g* et *b* doit être dans l'intervalle ``0..colormode``." #: ../Doc/library/turtle.rst:916 msgid "" @@ -1195,6 +1224,10 @@ msgid "" "tuple format (see example). May be used as input to another color/pencolor/" "fillcolor call." msgstr "" +"Renvoie la couleur de remplissage actuelle (*fillcolor*) en tant que chaine " +"de spécification, possiblement en format *n*-uplet (voir l'exemple). Peut " +"être utilisée en entrée pour un autre appel de *color*/*pencolor*/" +"*fillcolor*." #: ../Doc/library/turtle.rst:954 msgid "``fillcolor(colorstring)``" @@ -1205,6 +1238,9 @@ msgid "" "Set fillcolor to *colorstring*, which is a Tk color specification string, " "such as ``\"red\"``, ``\"yellow\"``, or ``\"#33cc8c\"``." msgstr "" +"Définit la couleur de remplissage (*fillcolor*) à *colorstring*, qui est une " +"chaine de spécification de couleur *Tk* comme par exemple ``\"red\"``, ``" +"\"yellow\"`` ou ``\"#33cc8c\"``." #: ../Doc/library/turtle.rst:959 msgid "``fillcolor((r, g, b))``" @@ -1216,6 +1252,10 @@ msgid "" "*b*. Each of *r*, *g*, and *b* must be in the range 0..colormode, where " "colormode is either 1.0 or 255 (see :func:`colormode`)." msgstr "" +"Définit la couleur du remplissage (*fillcolor*) à la couleur RGB représentée " +"par le *n*-uplet *r*, *g*, *b*. Chacun des *r*, *g* et *b* doit être dans " +"l'intervalle ``0..colormode`` où *colormode* vaut 1.0 ou 255 (voir :func:" +"`colormode`)." #: ../Doc/library/turtle.rst:966 msgid "``fillcolor(r, g, b)``" @@ -1226,12 +1266,17 @@ msgid "" "Set fillcolor to the RGB color represented by *r*, *g*, and *b*. Each of " "*r*, *g*, and *b* must be in the range 0..colormode." msgstr "" +"Définit la couleur du remplissage(*fillcolor*) à la couleur RGB représentée " +"par *r*, *g* et *b*. Chacun des *r*, *g* et *b* doit être dans l'intervalle " +"``0..colormode``." #: ../Doc/library/turtle.rst:965 msgid "" "If turtleshape is a polygon, the interior of that polygon is drawn with the " "newly set fillcolor." msgstr "" +"Si la forme de la tortue est un polygone, l'intérieur de ce polygone sera " +"dessiné avec la nouvelle couleur de remplissage." #: ../Doc/library/turtle.rst:986 msgid "Return or set pencolor and fillcolor." @@ -1254,6 +1299,9 @@ msgid "" "specification strings or tuples as returned by :func:`pencolor` and :func:" "`fillcolor`." msgstr "" +"Renvoie la couleur du stylo actuelle et la couleur de remplissage actuelle " +"sous forme de paire, soit de chaines de spécification de couleur, soit de " +"*n*-uplets comme renvoyés par :func:`pencolor` et :func:`fillcolor`." #: ../Doc/library/turtle.rst:998 msgid "``color(colorstring)``, ``color((r,g,b))``, ``color(r,g,b)``" @@ -1264,6 +1312,8 @@ msgid "" "Inputs as in :func:`pencolor`, set both, fillcolor and pencolor, to the " "given value." msgstr "" +"Les formats d'entrée sont comme dans :func:`pencolor`. Définit à la fois la " +"couleur de remplissage et la couleur du stylo à la valeur passée." #: ../Doc/library/turtle.rst:1005 msgid "" @@ -1276,6 +1326,8 @@ msgid "" "Equivalent to ``pencolor(colorstring1)`` and ``fillcolor(colorstring2)`` and " "analogously if the other input format is used." msgstr "" +"Équivalent à ``pencolor(colorstring1)`` et ``fillcolor(colorstring2)`` et de " +"manière analogue si un autre format d'entrée est utilisé." #: ../Doc/library/turtle.rst:1004 msgid "" @@ -1350,7 +1402,7 @@ msgstr "" #: ../Doc/library/turtle.rst:1103 msgid "a triple (fontname, fontsize, fonttype)" -msgstr "" +msgstr "triplet (nom de police, taille de police, type de police)" #: ../Doc/library/turtle.rst:1105 msgid "" @@ -1366,6 +1418,8 @@ msgid "" "middle of doing some complex drawing, because hiding the turtle speeds up " "the drawing observably." msgstr "" +"Rend la tortue invisible. C'est recommandé lorsque vous êtes en train de " +"faire un dessin complexe, vous observerez alors une accélération notable." #: ../Doc/library/turtle.rst:1136 msgid "Make the turtle visible." @@ -1388,6 +1442,12 @@ msgid "" "\", \"turtle\", \"circle\", \"square\", \"triangle\", \"classic\". To learn " "about how to deal with shapes see Screen method :func:`register_shape`." msgstr "" +"La tortue prend la forme *name* donnée, ou, si *name* n'est pas donné, " +"renvoie le nom de la forme actuelle. Le nom *name* donné doit exister dans " +"le dictionnaire de formes de *TurtleScreen*. Initialement, il y a les " +"polygones suivants : \"*arrow*\", \"*turtle*\", \"*circle*\", \"*square*\", " +"\"*triangle*\", \"*classic*\". Pour en apprendre plus sur comment gérer les " +"formes, voir la méthode de *Screen* :func:`register_shape`." #: ../Doc/library/turtle.rst:1181 msgid "one of the strings \"auto\", \"user\", \"noresize\"" @@ -1399,6 +1459,9 @@ msgid "" "*rmode* is not given, return current resizemode. Different resizemodes have " "the following effects:" msgstr "" +"Définit *resizemode* à l'une des valeurs suivantes : \"*auto*\", \"*user*\", " +"\"*noresize*\". Si \"*rmode*\" n'est pas donné, renvoie le *resizemode* " +"actuel. Les différents *resizemode* ont les effets suivants :" #: ../Doc/library/turtle.rst:1187 msgid "" @@ -1441,6 +1504,13 @@ msgid "" "*stretch_len* is stretchfactor in direction of its orientation, *outline* " "determines the width of the shapes's outline." msgstr "" +"Renvoie ou définit les attributs x/y-stretchfactors* et/ou contour du stylo. " +"Définit *resizemode* à \"user\". Si et seulement si *resizemode* est à \"user" +"\", la tortue sera affichée étirée en fonction de ses facteurs d'étirements " +"(*stretchfactors*) : *stretch_wid* est le facteur d'étirement " +"perpendiculaire à son orientation, *stretch_len* est le facteur d'étirement " +"en direction de son orientation, *outlline* détermine la largeur de la " +"bordure de la forme." #: ../Doc/library/turtle.rst:1235 ../Doc/library/turtle.rst:1887 #: ../Doc/library/turtle.rst:1888 ../Doc/library/turtle.rst:1889 @@ -1468,6 +1538,8 @@ msgid "" "Rotate the turtleshape by *angle* from its current tilt-angle, but do *not* " "change the turtle's heading (direction of movement)." msgstr "" +"Tourne la forme de la tortue de *angle* depuis son angle d'inclinaison " +"actuel, mais *ne change pas* le cap de la tortue (direction du mouvement)." #: ../Doc/library/turtle.rst:1277 msgid "" @@ -1475,6 +1547,9 @@ msgid "" "regardless of its current tilt-angle. *Do not* change the turtle's heading " "(direction of movement)." msgstr "" +"Tourne la forme de la tortue pour pointer dans la direction spécifiée par " +"*angle*, indépendamment de son angle d'inclinaison actuel. *Ne change pas* " +"le cap de la tortue (direction du mouvement)." #: ../Doc/library/turtle.rst:1297 ../Doc/library/turtle.rst:1320 #: ../Doc/library/turtle.rst:1321 ../Doc/library/turtle.rst:1322 @@ -1491,10 +1566,18 @@ msgid "" "angle between the orientation of the turtleshape and the heading of the " "turtle (its direction of movement)." msgstr "" +"Définit ou renvoie l'angle d'inclinaison actuel. Si l'angle est donné, la " +"forme de la tortue est tournée pour pointer dans direction spécifiée par " +"l'angle, indépendamment de son angle d'inclinaison actuel. *Ne change pas* " +"le cap de la tortue (direction du mouvement). Si l'angle n'est pas donné, " +"renvoie l'angle d'inclinaison actuel (L'angle entre l'orientation de la " +"forme de la tortue et le cap de la tortue (sa direction de mouvement))." #: ../Doc/library/turtle.rst:1325 msgid "Set or return the current transformation matrix of the turtle shape." msgstr "" +"Définit ou renvoie la matrice de transformation actuelle de la forme de la " +"tortue." #: ../Doc/library/turtle.rst:1327 msgid "" @@ -1511,6 +1594,9 @@ msgid "" "Return the current shape polygon as tuple of coordinate pairs. This can be " "used to define a new shape or components of a compound shape." msgstr "" +"Renvoie la forme actuelle du polygone en *n*-uplet de paires de coordonnées. " +"Vous pouvez l'utiliser afin de définir une nouvelle forme ou en tant que " +"composant pour une forme plus complexe." #: ../Doc/library/turtle.rst:1366 ../Doc/library/turtle.rst:1388 #: ../Doc/library/turtle.rst:1413 ../Doc/library/turtle.rst:1811 @@ -1524,7 +1610,7 @@ msgstr "" #: ../Doc/library/turtle.rst:1368 ../Doc/library/turtle.rst:1390 #: ../Doc/library/turtle.rst:1415 ../Doc/library/turtle.rst:1813 msgid "number of the mouse-button, defaults to 1 (left mouse button)" -msgstr "" +msgstr "numéro du bouton de la souris, par défaut 1 (bouton de gauche)" #: ../Doc/library/turtle.rst:1369 ../Doc/library/turtle.rst:1391 #: ../Doc/library/turtle.rst:1416 ../Doc/library/turtle.rst:1814 @@ -1532,6 +1618,8 @@ msgid "" "``True`` or ``False`` -- if ``True``, a new binding will be added, otherwise " "it will replace a former binding" msgstr "" +"``True`` ou ``False`` — si``True``, un nouveau lien est ajouté, sinon il " +"remplace un ancien lien" #: ../Doc/library/turtle.rst:1372 msgid "" @@ -1539,42 +1627,61 @@ msgid "" "existing bindings are removed. Example for the anonymous turtle, i.e. the " "procedural way:" msgstr "" +"Crée un lien vers *fun* pour les événements de clics de la souris sur cette " +"tortue. Si *fun* est ``None``, les liens existants sont supprimés. Exemple " +"pour la tortue anonyme, c'est-à-dire la manière procédurale :" #: ../Doc/library/turtle.rst:1394 msgid "" "Bind *fun* to mouse-button-release events on this turtle. If *fun* is " "``None``, existing bindings are removed." msgstr "" +"Crée un lien vers *fun* pour les événements de relâchement d'un clic de la " +"souris sur cette tortue. Si *fun* est ``None``, les liens existants sont " +"supprimés." #: ../Doc/library/turtle.rst:1419 msgid "" "Bind *fun* to mouse-move events on this turtle. If *fun* is ``None``, " "existing bindings are removed." msgstr "" +"Crée un lien vers *fun* pour les événements de mouvement de la souris sur " +"cette tortue. Si *fun* est ``None``, les liens existants sont supprimés." #: ../Doc/library/turtle.rst:1422 msgid "" "Remark: Every sequence of mouse-move-events on a turtle is preceded by a " "mouse-click event on that turtle." msgstr "" +"Remarque : toutes les séquences d'événements de mouvement de la souris sur " +"une tortue sont précédées par un événement de clic de la souris sur cette " +"tortue." #: ../Doc/library/turtle.rst:1430 msgid "" "Subsequently, clicking and dragging the Turtle will move it across the " "screen thereby producing handdrawings (if pen is down)." msgstr "" +"Par la suite, un cliquer-glisser sur la tortue la fait se déplacer au " +"travers de l'écran, produisant ainsi des dessins « à la main » (si le stylo " +"est posé)." #: ../Doc/library/turtle.rst:1439 msgid "" "Start recording the vertices of a polygon. Current turtle position is first " "vertex of polygon." msgstr "" +"Démarre l'enregistrement des sommets d'un polygone. La position actuelle de " +"la tortue est le premier sommet du polygone." #: ../Doc/library/turtle.rst:1445 msgid "" "Stop recording the vertices of a polygon. Current turtle position is last " "vertex of polygon. This will be connected with the first vertex." msgstr "" +"Arrête l'enregistrement des sommets d'un polygone. La position actuelle de " +"la tortue sera le dernier sommet du polygone. Il sera connecté au premier " +"sommet." #: ../Doc/library/turtle.rst:1451 msgid "Return the last recorded polygon." @@ -1585,18 +1692,24 @@ msgid "" "Create and return a clone of the turtle with same position, heading and " "turtle properties." msgstr "" +"Crée et renvoie un clone de la tortue avec les mêmes position, cap et " +"propriétés." #: ../Doc/library/turtle.rst:1483 msgid "" "Return the Turtle object itself. Only reasonable use: as a function to " "return the \"anonymous turtle\":" msgstr "" +"Renvoie l'objet *Turtle* lui-même. Sa seule utilisation : comme fonction " +"pour renvoyer la \"tortue anonyme\" :" #: ../Doc/library/turtle.rst:1497 msgid "" "Return the :class:`TurtleScreen` object the turtle is drawing on. " "TurtleScreen methods can then be called for that object." msgstr "" +"Renvoie l'objet :class:`TurtleScreen` sur lequel la tortue dessine. Les " +"méthodes de TurtleScreen peuvent être appelées pour cet objet." #: ../Doc/library/turtle.rst:1511 msgid "an integer or ``None``" @@ -1612,7 +1725,7 @@ msgstr "" #: ../Doc/library/turtle.rst:1526 msgid "Return number of entries in the undobuffer." -msgstr "" +msgstr "Renvoie le nombre d'entrées dans la mémoire d'annulation." #: ../Doc/library/turtle.rst:1539 msgid "Compound shapes" @@ -1624,16 +1737,21 @@ msgid "" "different color, you must use the helper class :class:`Shape` explicitly as " "described below:" msgstr "" +"Pour utiliser des formes de tortues combinées, qui sont composées de " +"polygones de différentes couleurs, vous devez utiliser la classe utilitaire :" +"class:`Shape` explicitement comme décrit ci-dessous :" #: ../Doc/library/turtle.rst:1545 msgid "Create an empty Shape object of type \"compound\"." -msgstr "" +msgstr "Créez un objet Shape vide de type \"compound\"." #: ../Doc/library/turtle.rst:1546 msgid "" "Add as many components to this object as desired, using the :meth:" "`addcomponent` method." msgstr "" +"Ajoutez autant de composants que désirés à cet objet, en utilisant la " +"méthode :meth:`addcomponent`." #: ../Doc/library/turtle.rst:1549 msgid "For example:" @@ -1642,6 +1760,8 @@ msgstr "Par exemple :" #: ../Doc/library/turtle.rst:1560 msgid "Now add the Shape to the Screen's shapelist and use it:" msgstr "" +"Maintenant ajoutez la *Shape* à la liste des formes de *Screen* et utilisez " +"la :" #: ../Doc/library/turtle.rst:1571 msgid "" @@ -1649,22 +1769,30 @@ msgid "" "method in different ways. The application programmer has to deal with the " "Shape class *only* when using compound shapes like shown above!" msgstr "" +"La classe :class:`Shape` est utilisée en interne par la méthode :func:" +"`register_shape` de différentes façons. Le développeur n'interagit avec la " +"classe Shape *que* lorsqu'il utilise des formes composées comme montré ci-" +"dessus !" #: ../Doc/library/turtle.rst:1577 msgid "Methods of TurtleScreen/Screen and corresponding functions" -msgstr "" +msgstr "Méthodes de TurtleScreen/Screen et leurs fonctions correspondantes" #: ../Doc/library/turtle.rst:1579 msgid "" "Most of the examples in this section refer to a TurtleScreen instance called " "``screen``." msgstr "" +"La plupart des exemples dans cette section font référence à une instance de " +"TurtleScreen appelée ``screen``." #: ../Doc/library/turtle.rst:1593 msgid "" "a color string or three numbers in the range 0..colormode or a 3-tuple of " "such numbers" msgstr "" +"chaîne spécifiant une couleur ou trois nombres dans l'intervalle *0.." +"colormode* ou *n*-uplet de ces trois nombres" #: ../Doc/library/turtle.rst:1597 msgid "Set or return background color of the TurtleScreen." @@ -1685,6 +1813,10 @@ msgid "" "*picname* is ``\"nopic\"``, delete background image, if present. If " "*picname* is ``None``, return the filename of the current backgroundimage. ::" msgstr "" +"Défini l'image de fond ou renvoie l'image de fond actuelle. Si *picname* est " +"un nom de fichier, cette image et mis en image de fond. Si *picname* est ``" +"\"nopic\"``, l'image de fond sera supprimée si présente. SI *picname* est " +"``None``, le nom du fichier de l'image de fond actuelle est renvoyé. ::" #: ../Doc/library/turtle.rst:1629 msgid "" @@ -1692,6 +1824,9 @@ msgid "" "empty TurtleScreen to its initial state: white background, no background " "image, no event bindings and tracing on." msgstr "" +"Supprime tous les dessins et toutes les tortues du TurtleScreen. " +"Réinitialise le TurtleScreen maintenant vide à son état initial : fond " +"blanc, pas d'image de fond, pas d'événement liés, et traçage activé." #: ../Doc/library/turtle.rst:1634 msgid "" @@ -1699,6 +1834,9 @@ msgid "" "name ``clearscreen``. The global function ``clear`` is a different one " "derived from the Turtle method ``clear``." msgstr "" +"Cette méthode TurtleScreen est disponible en tant que fonction globale " +"seulement sous le nom ``clearscreen``. La fonction globale ``clear`` est une " +"fonction différente dérivée de la méthode Turtle ``clear``." #: ../Doc/library/turtle.rst:1642 msgid "Reset all Turtles on the Screen to their initial state." @@ -1710,6 +1848,9 @@ msgid "" "name ``resetscreen``. The global function ``reset`` is another one derived " "from the Turtle method ``reset``." msgstr "" +"Cette méthode TurtleScreen est disponible en tant que fonction globale " +"seulement sous le nom ``resetscreen``. La fonction globale ``reset`` est une " +"fonction différente dérivée de la méthode Turtle ``reset``." #: ../Doc/library/turtle.rst:1652 msgid "positive integer, new width of canvas in pixels" @@ -1735,6 +1876,12 @@ msgid "" "this method, one can make visible those parts of a drawing which were " "outside the canvas before." msgstr "" +"Si aucun arguments ne sont passés, renvoie l'actuel *(canvaswidth, " +"canvasheight)*. Sinon, redimensionne le canevas sur lequel les tortues " +"dessinent. Ne modifiez pas la fenêtre de dessin. Pour observer les parties " +"cachées du canevas, utilisez les barres de défilement. Avec cette méthode, " +"on peut rendre visible les parties d'un dessin qui étaient en dehors du " +"canevas précédemment." #: ../Doc/library/turtle.rst:1668 msgid "e.g. to search for an erroneously escaped turtle ;-)" @@ -1762,6 +1909,10 @@ msgid "" "necessary. This performs a ``screen.reset()``. If mode \"world\" is " "already active, all drawings are redrawn according to the new coordinates." msgstr "" +"Configure un système de coordonnées défini par l'utilisateur et bascule vers " +"le mode \"world\" si nécessaire. Cela effectuera un ``screen.reset()``. Si " +"le mode \"world\" est déjà actif, tous les dessins sont re-déssinés par " +"rapport aux nouveaux coordonnées." #: ../Doc/library/turtle.rst:1682 msgid "" @@ -1781,6 +1932,9 @@ msgid "" "the time interval between two consecutive canvas updates.) The longer the " "drawing delay, the slower the animation." msgstr "" +"Défini ou renvoie le délai (*delay*) de dessin en millisecondes. (Cet " +"approximativement le temps passé entre deux mises à jour du canevas.) Plus " +"le délai est long, plus l'animation sera lente." #: ../Doc/library/turtle.rst:1716 msgid "Optional argument:" @@ -1798,6 +1952,12 @@ msgid "" "arguments, returns the currently stored value of n. Second argument sets " "delay value (see :func:`delay`)." msgstr "" +"Active/désactive les animations des tortues et défini le délai pour mettre à " +"jour les dessins.Si *n* est passé, seulement les n-ièmes mises à jours " +"régulières de l'écran seront vraiment effectuées. (Peut être utilisé pour " +"accélérer le dessin de graphiques complexes.) Lorsqu'appelé sans arguments, " +"renvoie la valeur actuelle de *n*. Le deuxième argument défini la valeur du " +"délai (voir :func:`delay`)." #: ../Doc/library/turtle.rst:1753 msgid "Perform a TurtleScreen update. To be used when tracer is turned off." @@ -1826,6 +1986,8 @@ msgstr "une fonction sans arguments ou ``None``" #: ../Doc/library/turtle.rst:1771 ../Doc/library/turtle.rst:1791 msgid "a string: key (e.g. \"a\") or key-symbol (e.g. \"space\")" msgstr "" +"une chaîne : clé (par exemple \"*a*\") ou clé symbole (Par exemple \"*space*" +"\")" #: ../Doc/library/turtle.rst:1773 msgid "" @@ -1833,6 +1995,10 @@ msgid "" "bindings are removed. Remark: in order to be able to register key-events, " "TurtleScreen must have the focus. (See method :func:`listen`.)" msgstr "" +"Lie *fun* à l'événement d'un relâchement d'une touche. Si *fun* est " +"``None``, les événements liés sont supprimés. Remarque : Pour pouvoir " +"enregistrer les événements lié au touches, TurtleScreen doit avoir le " +"*focus* (fenêtre en premier plan). (Voir la méthode :func:`listen`.)" #: ../Doc/library/turtle.rst:1793 msgid "" @@ -1840,12 +2006,18 @@ msgid "" "event if no key is given. Remark: in order to be able to register key-" "events, TurtleScreen must have focus. (See method :func:`listen`.)" msgstr "" +"Lie *fun* à l'événement d'un pressement de touche si *key* (touche) est " +"donné, ou n'importe quelle touche si aucune touche n'est passée. Remarque : " +"Pour pouvoir enregistrer des événements liés au touches, TurtleScreen doit " +"être en premier plan. (voir la méthode :func:`listen`.)" #: ../Doc/library/turtle.rst:1817 msgid "" "Bind *fun* to mouse-click events on this screen. If *fun* is ``None``, " "existing bindings are removed." msgstr "" +"Crée un lien vers *fun* pour les événements de clique de la souris sur cet " +"écran. Si *fun* est ``None``, les liens existants sont supprimés." #: ../Doc/library/turtle.rst:1820 msgid "" @@ -1859,6 +2031,9 @@ msgid "" "name ``onscreenclick``. The global function ``onclick`` is another one " "derived from the Turtle method ``onclick``." msgstr "" +"Cette méthode de TurtleScreen est disponible en tant que fonction globale " +"seulement sous le nom de ``onscreenclick``. La fonction globale ``onclick`` " +"est une autre fonction dérivée de la méthode Turtle ``onclick``." #: ../Doc/library/turtle.rst:1838 msgid "a function with no arguments" @@ -1870,7 +2045,7 @@ msgstr "un nombre supérieur ou égal à 0" #: ../Doc/library/turtle.rst:1841 msgid "Install a timer that calls *fun* after *t* milliseconds." -msgstr "" +msgstr "Installe un minuteur qui appelle *fun* après *t* millisecondes." #: ../Doc/library/turtle.rst:1859 msgid "" @@ -1879,6 +2054,11 @@ msgid "" "run from within IDLE in -n mode (No subprocess) - for interactive use of " "turtle graphics. ::" msgstr "" +"Démarre la boucle d'événements - appelle la boucle principale de Tkinter. " +"Doit être la dernière opération dan un programme graphique *turtle*. **Ne " +"dois pas** être utilisé si un script est lancé depuis IDLE avec le mode `-n` " +"(pas de sous processus) - pour une utilisation interactive des graphiques " +"*turtle* ::" #: ../Doc/library/turtle.rst:1872 ../Doc/library/turtle.rst:1873 #: ../Doc/library/turtle.rst:1885 ../Doc/library/turtle.rst:1886 @@ -1892,6 +2072,10 @@ msgid "" "input. Return the string input. If the dialog is canceled, return " "``None``. ::" msgstr "" +"Fait apparaitre une fenêtre pour entrer une chaine de caractères. Le " +"paramètre *title* est le titre de la fenêtre, *prompt* est le texte " +"expliquant quelle information écrire. Renvoie l'entrée utilisateur sous " +"forme de chaîne. Si le dialogue est annulé, renvoie ``None``. ::" #: ../Doc/library/turtle.rst:1891 msgid "" @@ -1903,6 +2087,14 @@ msgid "" "open for correction. Return the number input. If the dialog is canceled, " "return ``None``. ::" msgstr "" +"Fait apparaitre une fenêtre pour entrer un nombre. Le paramètre *title* est " +"le titre de la fenêtre, *prompt* est le texte expliquant quelle information " +"numérique écrire. *default* : Valeur par défaut, *minval* : valeur minimale " +"d'entrée, *maxval* : Valeur maximale d'entrée. Le nombre entré doit être " +"dans la gamme *minval..maxval* si ces valeurs sont données. Sinon, un indice " +"apparait et le dialogue reste ouvert pour corriger le nombre. Renvoie " +"l'entrée utilisateur sous forme de nombre. Si le dialogue est annulé, " +"renvoie ``None``. ::" #: ../Doc/library/turtle.rst:1908 msgid "one of the strings \"standard\", \"logo\" or \"world\"" @@ -1914,6 +2106,8 @@ msgid "" "Set turtle mode (\"standard\", \"logo\" or \"world\") and perform reset. If " "mode is not given, current mode is returned." msgstr "" +"Règle le mode de la tortue (\"*standard*\", \"*logo*\" ou \"*world*\") et la " +"réinitialise. Si le mode n'est pas donné, le mode actuel est renvoyé." #: ../Doc/library/turtle.rst:1913 msgid "" @@ -1922,6 +2116,11 @@ msgid "" "\"world coordinates\". **Attention**: in this mode angles appear distorted " "if ``x/y`` unit-ratio doesn't equal 1." msgstr "" +"Le mode \"*standard*\" est compatible avec l'ancien :mod:`turtle`. Le mode " +"\"*logo*\" est compatible avec la plupart des graphiques *turtle* Logo. Le " +"mode \"*world*\" utilise des \"coordonnées monde\" (*world coordinates*) " +"définis par l'utilisateur. **Attention** : Dans ce mode, les angles " +"apparaissent déformés si le ratio unitaire de ``x/y`` n'est pas 1." #: ../Doc/library/turtle.rst:1919 msgid "Mode" @@ -1968,50 +2167,67 @@ msgid "" "Return the colormode or set it to 1.0 or 255. Subsequently *r*, *g*, *b* " "values of color triples have to be in the range 0..\\ *cmode*." msgstr "" +"Renvoie le mode de couleur (*colormode*) ou le défini à 1.0 ou 255. Les " +"valeurs *r*, *g* et *b* doivent aussi être dans la gamme `0..*cmode*`." #: ../Doc/library/turtle.rst:1958 msgid "" "Return the Canvas of this TurtleScreen. Useful for insiders who know what " "to do with a Tkinter Canvas." msgstr "" +"Renvoie le canevas de ce TurtleScreen. Utile pour les initiés qui savent " +"quoi faire avec un canevas Tkinter." #: ../Doc/library/turtle.rst:1971 msgid "Return a list of names of all currently available turtle shapes." msgstr "" +"Renvoie une liste de noms de toutes les formes actuellement disponibles pour " +"les tortues." #: ../Doc/library/turtle.rst:1983 msgid "There are three different ways to call this function:" -msgstr "" +msgstr "Il existe trois façons différentes d’appeler cette fonction :" #: ../Doc/library/turtle.rst:1985 msgid "" "*name* is the name of a gif-file and *shape* is ``None``: Install the " "corresponding image shape. ::" msgstr "" +"*name* est le nom d'un fichier *gif* et *shape* est ``None`` : Installe la " +"forme d'image correspondante. ::" #: ../Doc/library/turtle.rst:1991 msgid "" "Image shapes *do not* rotate when turning the turtle, so they do not display " "the heading of the turtle!" msgstr "" +"Les formes d'images *ne tournent pas* lorsque la tortue tourne, donc elles " +"n'indiquent pas le cap de la tortue !" #: ../Doc/library/turtle.rst:1994 msgid "" "*name* is an arbitrary string and *shape* is a tuple of pairs of " "coordinates: Install the corresponding polygon shape." msgstr "" +"*name* est une chaîne de caractères arbitraire et *shape* est un *n*-uplet " +"de paires de coordonnées : Installe le polygone correspondant." #: ../Doc/library/turtle.rst:2002 msgid "" "*name* is an arbitrary string and shape is a (compound) :class:`Shape` " "object: Install the corresponding compound shape." msgstr "" +"*name* est une chaîne de caractères arbitraire et *shape* est un objet :" +"class:`Shape` (composé) : Installe la forme composée correspondante." #: ../Doc/library/turtle.rst:2005 msgid "" "Add a turtle shape to TurtleScreen's shapelist. Only thusly registered " "shapes can be used by issuing the command ``shape(shapename)``." msgstr "" +"Ajoute une forme de tortue a la liste des formes du TurtleScreen. Seulement " +"les formes enregistrées de cette façon peuvent être utilisée avec la " +"commande ``shape(shapename)``." #: ../Doc/library/turtle.rst:2011 msgid "Return the list of turtles on the screen." @@ -2019,19 +2235,19 @@ msgstr "Renvoie la liste des tortues présentes sur l'écran." #: ../Doc/library/turtle.rst:2022 msgid "Return the height of the turtle window. ::" -msgstr "" +msgstr "Renvoie la hauteur de la fenêtre de la tortue. ::" #: ../Doc/library/turtle.rst:2030 msgid "Return the width of the turtle window. ::" -msgstr "" +msgstr "Renvoie la largeur de la fenêtre de la tortue. ::" #: ../Doc/library/turtle.rst:2039 msgid "Methods specific to Screen, not inherited from TurtleScreen" -msgstr "" +msgstr "Méthodes spécifiques à Screen, non héritées de TurtleScreen" #: ../Doc/library/turtle.rst:2043 msgid "Shut the turtlegraphics window." -msgstr "" +msgstr "Éteins la fenêtre *turtlegraphics*." #: ../Doc/library/turtle.rst:2048 msgid "Bind bye() method to mouse clicks on the Screen." @@ -2045,6 +2261,12 @@ msgid "" "file:`turtle.cfg`. In this case IDLE's own mainloop is active also for the " "client script." msgstr "" +"Si la valeur de \"*using_IDLE*\" dans le dictionnaire de configuration est " +"``False`` (valeur par défaut), démarre aussi la boucle principale. " +"Remarque : Si IDLE est lancé avec l'option ``-n`` (Pas de sous processus), " +"Cette valeur devrait être définie à ``True`` dans :file:`turtle.cfg`. Dans " +"ce cas, la boucle principale d'IDLE est active aussi pour le script du " +"client." #: ../Doc/library/turtle.rst:2060 msgid "" @@ -2089,6 +2311,9 @@ msgid "" "if positive, starting position in pixels from the top edge of the screen, if " "negative from the bottom edge, if ``None``, center window vertically" msgstr "" +"si positif, la position de départ en pixels depuis le haut de l'écran. Si " +"négatif, depuis de bas de l'écran. Si ``None``, Le centre de la fenêtre " +"verticalement" #: ../Doc/library/turtle.rst:2086 msgid "a string that is shown in the titlebar of the turtle graphics window" @@ -2098,7 +2323,7 @@ msgstr "" #: ../Doc/library/turtle.rst:2089 msgid "Set title of turtle window to *titlestring*." -msgstr "" +msgstr "Défini le titre de la fenêtre de la tortue à *titlestring*." #: ../Doc/library/turtle.rst:2098 msgid "Public classes" @@ -2117,12 +2342,17 @@ msgid "" "Create a turtle. The turtle has all methods described above as \"methods of " "Turtle/RawTurtle\"." msgstr "" +"Crée une tortue. Cette tortue à toutes les méthodes décrites ci-dessus comme " +"\"Méthode de Turtle/RawTurtle\"." #: ../Doc/library/turtle.rst:2113 msgid "" "Subclass of RawTurtle, has the same interface but draws on a default :class:" "`Screen` object created automatically when needed for the first time." msgstr "" +"Sous-classe de RawTurtle, à la même interface mais dessine sur un objet :" +"class:`screen` par défaut créé automatiquement lorsque nécessaire pour la " +"première fois." #: ../Doc/library/turtle.rst:2119 msgid "a :class:`tkinter.Canvas`" @@ -2133,23 +2363,31 @@ msgid "" "Provides screen oriented methods like :func:`setbg` etc. that are described " "above." msgstr "" +"Fournis les méthodes liées à l'écran comme :func:`setbg`, etc. qui sont " +"décrites ci-dessus." #: ../Doc/library/turtle.rst:2126 msgid "" "Subclass of TurtleScreen, with :ref:`four methods added `." msgstr "" +"Sous-classess de TurtleScreen, avec :ref:`quatre nouvelles méthodes " +"`." #: ../Doc/library/turtle.rst:2131 msgid "" "some Tkinter widget to contain the ScrolledCanvas, i.e. a Tkinter-canvas " "with scrollbars added" msgstr "" +"certain modules Tkinter pour contenir le ScrolledCanvas, c'est à dire, un " +"canevas Tkinter avec des barres de défilement ajoutées" #: ../Doc/library/turtle.rst:2134 msgid "" "Used by class Screen, which thus automatically provides a ScrolledCanvas as " "playground for the turtles." msgstr "" +"Utilisé par la classe Screen, qui fournit donc automatiquement un " +"ScrolledCanvas comme terrain de jeu pour les tortues." #: ../Doc/library/turtle.rst:2139 msgid "one of the strings \"polygon\", \"image\", \"compound\"" @@ -2208,7 +2446,7 @@ msgstr "un polygone, c.-à-d. un n-uplet de paires de nombres" #: ../Doc/library/turtle.rst:2157 msgid "a color the *poly* will be filled with" -msgstr "" +msgstr "une couleur de remplissage pour *poly*" #: ../Doc/library/turtle.rst:2158 msgid "a color for the poly's outline (if given)" @@ -2228,10 +2466,14 @@ msgid "" "turtle graphics. May be useful for turtle graphics programs too. Derived " "from tuple, so a vector is a tuple!" msgstr "" +"Une classe de vecteur bidimensionnel, utilisée en tant que classe auxiliaire " +"pour implémenter les graphiques *turtle*. Peut être utile pour les " +"programmes graphiques faits avec *turtle*. Dérivé des *n*-uplets, donc un " +"vecteur est un *n*-uplet !" #: ../Doc/library/turtle.rst:2179 msgid "Provides (for *a*, *b* vectors, *k* number):" -msgstr "" +msgstr "Permet (pour les vecteurs *a*, *b* et le nombre *k*) :" #: ../Doc/library/turtle.rst:2181 msgid "``a + b`` vector addition" @@ -2280,16 +2522,22 @@ msgid "" "When using IDLE, tooltips show the signatures and first lines of the " "docstrings of typed in function-/method calls." msgstr "" +"Lors de l'utilisation d'IDLE, des info-bulles apparaissent avec la signature " +"et les premières lignes de *docstring* de la fonction/méthode appelée." #: ../Doc/library/turtle.rst:2202 msgid "Calling :func:`help` on methods or functions displays the docstrings::" msgstr "" +"L'appel de :func:`help` sur les méthodes ou fonctions affichera les " +"*docstrings* ::" #: ../Doc/library/turtle.rst:2233 msgid "" "The docstrings of the functions which are derived from methods have a " "modified form::" msgstr "" +"Les *docstrings* des fonctions qui sont dérivées des méthodes ont une forme " +"modifiée ::" #: ../Doc/library/turtle.rst:2267 msgid "" @@ -2310,6 +2558,9 @@ msgid "" "names and the values of which are the docstrings of the public methods of " "the classes Screen and Turtle." msgstr "" +"Il est utile de créer un dictionnaire dont les clés sont les noms des " +"méthodes et les valeurs sont les *docstrings* de méthodes publiques des " +"classes Screen et Turtle." #: ../Doc/library/turtle.rst:2280 msgid "a string, used as filename" @@ -2323,6 +2574,11 @@ msgid "" "Python script :file:`{filename}.py`. It is intended to serve as a template " "for translation of the docstrings into different languages." msgstr "" +"Crée et écrit un dictionnaire de *docstrings* dans un script Python avec le " +"nom donné. Cette fonction doit être appelée explicitement (elle n'est pas " +"utilisée par les classes graphiques de *turtle*). Ce dictionnaire de " +"*doctrings* sera écrit dans le script Python :file:`{filename}.py`. Il sert " +"de modèle pour la traduction des *docstrings* dans différentes langues." #: ../Doc/library/turtle.rst:2288 msgid "" @@ -2330,6 +2586,10 @@ msgid "" "native language, you have to translate the docstrings and save the resulting " "file as e.g. :file:`turtle_docstringdict_german.py`." msgstr "" +"Si vous (ou vos étudiants) veulent utiliser :mod:`turtle` avec de l'aide en " +"ligne dans votre langue natale, vous devez traduire les *docstrings* et " +"sauvegarder les fichiers résultants en, par exemple, :file:" +"`turtle_docstringdict_german.py`." #: ../Doc/library/turtle.rst:2292 msgid "" @@ -2337,12 +2597,18 @@ msgid "" "dictionary will be read in at import time and will replace the original " "English docstrings." msgstr "" +"Si vous avez une entrée appropriée dans votre fichier :file:`turtle.cfg`, ce " +"dictionnaire est lu au moment de l'importation et remplace la *docstrings* " +"originale en anglais par cette entrée." #: ../Doc/library/turtle.rst:2295 msgid "" "At the time of this writing there are docstring dictionaries in German and " "in Italian. (Requests please to glingl@aon.at.)" msgstr "" +"Au moment de l'écriture de cette documentation, il n'existe seulement que " +"des *docstrings* en Allemand et Italien. (Merci de faire vos demandes à " +"glingl@aon.at.)" #: ../Doc/library/turtle.rst:2301 msgid "How to configure Screen and Turtles" @@ -2353,6 +2619,9 @@ msgid "" "The built-in default configuration mimics the appearance and behaviour of " "the old turtle module in order to retain best possible compatibility with it." msgstr "" +"La configuration par défaut imite l'apparence et le comportement de l'ancien " +"module *turtle* pour pouvoir maintenir la meilleure compatibilité avec celui-" +"ci." #: ../Doc/library/turtle.rst:2306 msgid "" @@ -2362,11 +2631,16 @@ msgid "" "be read at import time and modify the configuration according to its " "settings." msgstr "" +"Si vous voulez utiliser une configuration différente qui reflète mieux les " +"fonctionnalités de ce module ou qui correspond mieux à vos besoins, par " +"exemple pour un cours, vous pouvez préparer un ficher de configuration " +"``turtle.cfg`` qui sera lu au moment de l'importation et qui modifiera la " +"configuration en utilisant les paramètres du fichier." #: ../Doc/library/turtle.rst:2311 msgid "" "The built in configuration would correspond to the following turtle.cfg::" -msgstr "" +msgstr "La configuration native correspondrait au *turtle.cfg* suivant ::" #: ../Doc/library/turtle.rst:2334 msgid "Short explanation of selected entries:" @@ -2377,6 +2651,8 @@ msgid "" "The first four lines correspond to the arguments of the :meth:`Screen.setup` " "method." msgstr "" +"Les quatre premières lignes correspondent aux arguments de la méthode :meth:" +"`Screen.setup`." #: ../Doc/library/turtle.rst:2338 msgid "" @@ -2391,6 +2667,8 @@ msgid "" "*shape* can be any of the built-in shapes, e.g: arrow, turtle, etc. For " "more info try ``help(shape)``." msgstr "" +"*shape* peut être n'importe quelle forme native, par exemple *arrow*, " +"*turtle* etc. Pour plus d'informations, essayez ``help(shape)``." #: ../Doc/library/turtle.rst:2342 msgid "" @@ -2398,6 +2676,10 @@ msgid "" "to write ``fillcolor = \"\"`` (but all nonempty strings must not have quotes " "in the cfg-file)." msgstr "" +"Si vous ne voulez utiliser aucune couleur de remplissage (c'est-à-dire " +"rendre la tortue transparente), vous devez écrire ``fillcolor = \"\"`` (mais " +"toutes les chaînes non vides ne doivent pas avoir de guillemets dans le " +"fichier *cfg*)." #: ../Doc/library/turtle.rst:2345 msgid "" @@ -2413,6 +2695,10 @@ msgid "" "`turtle_docstringdict_italian.py` will be loaded at import time (if present " "on the import path, e.g. in the same directory as :mod:`turtle`." msgstr "" +"Si vous définissez par exemple ``language = italian``, le dictionnaire de " +"*docstrings* :file:`turtle.docstringdict_italian.py` sera chargé au moment " +"de l'importation (si présent dans les chemins d'importations, par exemple " +"dans le même dossier que :mod:`turtle`)." #: ../Doc/library/turtle.rst:2350 msgid "" @@ -2421,6 +2707,10 @@ msgid "" "docstrings to function-docstrings will delete these names from the " "docstrings." msgstr "" +"Les entrées *exampleturtle* et *examplescreen* définissent les noms de ces " +"objets tels qu'ils apparaissent dans les *docstrings*. La transformation des " +"méthodes-*docstrings* vers fonction-*docstrings* supprimera ces noms des " +"*docstrings*." #: ../Doc/library/turtle.rst:2354 msgid "" @@ -2428,6 +2718,9 @@ msgid "" "n switch (\"no subprocess\"). This will prevent :func:`exitonclick` to " "enter the mainloop." msgstr "" +"*using_IDLE* : définissez ceci à ``True`` si vous travaillez régulièrement " +"avec IDLE et son option ``-n`` (pas de sous processus). Cela évitera " +"l'entrée de :func:`exitonclick` dans la boucle principale." #: ../Doc/library/turtle.rst:2358 msgid "" @@ -2435,6 +2728,9 @@ msgid "" "is stored and an additional one in the current working directory. The " "latter will override the settings of the first one." msgstr "" +"Il peut y avoir un :file:turtle.cfg` dans le dossier où se situe :mod:" +"`turtle` et un autre dans le dossier de travail courant. Ce dernier prendra " +"le dessus." #: ../Doc/library/turtle.rst:2362 msgid "" @@ -2442,6 +2738,10 @@ msgid "" "You can study it as an example and see its effects when running the demos " "(preferably not from within the demo-viewer)." msgstr "" +"Le dossier :file:`Lib/turtledemo` contient un fichier :file:`turtle.cfg`. " +"Vous pouvez le prendre comme exemple et voir ses effets lorsque vous lancez " +"les démos (il est préférable de ne pas le faire depuis la visionneuse de " +"démos)." #: ../Doc/library/turtle.rst:2368 msgid ":mod:`turtledemo` --- Demo scripts" @@ -2452,11 +2752,16 @@ msgid "" "The :mod:`turtledemo` package includes a set of demo scripts. These scripts " "can be run and viewed using the supplied demo viewer as follows::" msgstr "" +"Le paquet :mod:`turtledemo` inclut un ensemble de scripts de démonstration. " +"Ces scripts peuvent être lancés et observés en utilisant la visionneuse de " +"démos comme suit ::" #: ../Doc/library/turtle.rst:2378 msgid "" "Alternatively, you can run the demo scripts individually. For example, ::" msgstr "" +"Alternativement, vous pouvez lancer les scripts de démo individuellement. " +"Par exemple ::" #: ../Doc/library/turtle.rst:2382 msgid "The :mod:`turtledemo` package directory contains:" @@ -2467,6 +2772,8 @@ msgid "" "A demo viewer :file:`__main__.py` which can be used to view the sourcecode " "of the scripts and run them at the same time." msgstr "" +"Une visionneuse :file:`__main__.py` qui peut être utilisée pour lire le code " +"source de ces scripts et pour les faire tourner en même temps." #: ../Doc/library/turtle.rst:2386 msgid "" @@ -2474,12 +2781,17 @@ msgid "" "module. Examples can be accessed via the Examples menu. They can also be " "run standalone." msgstr "" +"Plusieurs script présentent les différentes fonctionnalités du module :mod:" +"`turtle`. Les exemples peuvent être consultés via le menu *Examples*. Ils " +"peuvent aussi être lancés de manière autonome." #: ../Doc/library/turtle.rst:2389 msgid "" "A :file:`turtle.cfg` file which serves as an example of how to write and use " "such files." msgstr "" +"Un fichier exemple :file:`turtle.cfg` montrant comment rédiger de tels " +"fichiers." #: ../Doc/library/turtle.rst:2392 msgid "The demo scripts are:" @@ -2518,6 +2830,9 @@ msgid "" "graphs Verhulst dynamics, shows that computer's computations can generate " "results sometimes against the common sense expectations" msgstr "" +"graphiques dynamiques de Verhulst, cela démontre que les calculs de " +"l'ordinateur peuvent générer des résultats qui vont parfois à l'encontre du " +"bon sens" #: ../Doc/library/turtle.rst:2402 msgid "world coordinates" @@ -2549,7 +2864,7 @@ msgstr "*forest* (forêt)" #: ../Doc/library/turtle.rst:2413 msgid "3 breadth-first trees" -msgstr "" +msgstr "3 arbres tracés par un parcours en largeur" #: ../Doc/library/turtle.rst:2413 msgid "randomization" @@ -2600,10 +2915,14 @@ msgstr "*nim*" msgid "" "play the classical nim game with three heaps of sticks against the computer." msgstr "" +"jouez au classique jeu de *nim* avec trois piles de bâtons contre " +"l'ordinateur." #: ../Doc/library/turtle.rst:2424 msgid "turtles as nimsticks, event driven (mouse, keyboard)" msgstr "" +"tortues en tant que bâtons de *nim*, géré par des événements (clavier et " +"souris)" #: ../Doc/library/turtle.rst:2428 msgid "paint" @@ -2656,6 +2975,8 @@ msgstr "tortues dansantes tournant par paires en sens inverse" #: ../Doc/library/turtle.rst:2440 msgid "compound shapes, clone shapesize, tilt, get_shapepoly, update" msgstr "" +"formes composées, clones de la forme (*shapesize*), rotation, " +"*get_shapepoly*, *update*" #: ../Doc/library/turtle.rst:2444 msgid "sorting_animate" @@ -2675,7 +2996,7 @@ msgstr "*tree* (arbre)" #: ../Doc/library/turtle.rst:2447 msgid "a (graphical) breadth first tree (using generators)" -msgstr "" +msgstr "un arbre (tracé) par un parcours en largeur (à l’aide de générateurs)" #: ../Doc/library/turtle.rst:2450 msgid "two_canvases" @@ -2726,6 +3047,12 @@ msgid "" "2.6 these methods were merely duplications of the corresponding :class:" "`TurtleScreen`/:class:`Screen`-methods.)" msgstr "" +"Les méthodes :meth:`Turtle.tracer`, :meth:`Turtle.window_width` et :meth:" +"`Turtle.window_height` ont été supprimées. Seule :class:`Screen` définit " +"maintenant des méthodes avec ces noms et fonctionnalités. Les fonction " +"dérivées de ces méthodes restent disponibles. (En réalité, déjà en Python " +"2.6 ces méthodes n'étaient que de simples duplicatas des méthodes " +"correspondantes des classes :class:`TurtleScreen`/:class:`Screen`)" #: ../Doc/library/turtle.rst:2473 msgid "" @@ -2733,6 +3060,9 @@ msgid "" "`begin_fill` and :meth:`end_fill` have changed slightly: now every filling-" "process must be completed with an ``end_fill()`` call." msgstr "" +"La méthode :meth:`Turtle.fill` à été supprimée. Le fonctionnement de :meth:" +"`begin_fill` et :meth:`end_fill` a légèrement changé : chaque opération de " +"remplissage doit maintenant se terminer par un appel à ``end_fill()``." #: ../Doc/library/turtle.rst:2478 msgid "" @@ -2740,6 +3070,9 @@ msgid "" "``True`` if a filling process is under way, ``False`` otherwise. This " "behaviour corresponds to a ``fill()`` call without arguments in Python 2.6." msgstr "" +"La méthode :meth:`Turtle.filling` a été ajoutée. Elle renvoie le booléen " +"``True`` si une opération de remplissage est en cours,``False`` sinon. Ce " +"comportement correspond à un appel à ``fill()`` sans argument en Python 2.6." #: ../Doc/library/turtle.rst:2484 msgid "Changes since Python 3.0" @@ -2753,6 +3086,12 @@ msgid "" "`Turtle.tiltangle` has been enhanced in functionality: it now can be used to " "get or set the tiltangle. :meth:`Turtle.settiltangle` has been deprecated." msgstr "" +"Les méthodes :meth:`Turtle.shearfactor`, :meth:`Turtle.shapetransform` et :" +"meth:`Turtle.get_shapepoly` on été ajoutées. Ainsi, la gamme complète des " +"transformations linéaires habituelles est maintenant disponible pour " +"modifier les formes de la tortue. La méthode :meth:`Turtle.tiltangle` a été " +"améliorée : Elle peut maintenant récupérer ou définir l'angle " +"d'inclinaison. :meth:`Turtle.settiltangle` est désormais obsolète." #: ../Doc/library/turtle.rst:2493 msgid "" @@ -2760,6 +3099,10 @@ msgid "" "`Screen.onkey` which in fact binds actions to the keyrelease event. " "Accordingly the latter has got an alias: :meth:`Screen.onkeyrelease`." msgstr "" +"La méthode :meth:`Screen.onkeypress` a été ajoutée en complément à :meth:" +"`Screen.onkey` qui lie des actions à des relâchements de touches. En " +"conséquence, ce dernier s'est vu doté d'un alias : :meth:`Screen." +"onkeyrelease`." #: ../Doc/library/turtle.rst:2497 msgid "" @@ -2767,6 +3110,9 @@ msgid "" "with Screen and Turtle objects one must not additionally import :func:" "`mainloop` anymore." msgstr "" +"La méthode :meth:`Screen.mainloop` à été ajoutée. Ainsi, lorsque vous " +"travaillez uniquement avec des objets Screen et Turtle, vous n'avez plus " +"besoin d'importer :func:`mainloop`." #: ../Doc/library/turtle.rst:2501 msgid "" @@ -2774,6 +3120,9 @@ msgid "" "numinput`. These popup input dialogs and return strings and numbers " "respectively." msgstr "" +"Deux méthodes d'entrées ont été ajoutées : :meth:`Screen.textinput` et :meth:" +"`Screen.numinput`. Ces dialogues d'entrées renvoient des chaînes de " +"caractères et des nombres respectivement." #: ../Doc/library/turtle.rst:2505 msgid "" diff --git a/library/zipfile.po b/library/zipfile.po index 924e3d11..872fff87 100644 --- a/library/zipfile.po +++ b/library/zipfile.po @@ -288,6 +288,10 @@ msgid "" "Similar behavior occurs with files newer than 2107-12-31, the timestamp is " "also set to the limit." msgstr "" +"Les fichiers ZIP plus anciens que le 1er janvier 1980 sont autorisés lorsque " +"l'argument *strict_timestamps* vaut ``False``, moyennant de les voir datés " +"du 1er janvier 1980. De même pour les fichiers datés d'après le 31 décembre " +"2107 qui voient leur horodatage fixé au 31 décembre 2107." #: ../Doc/library/zipfile.rst:187 msgid "" @@ -352,7 +356,7 @@ msgstr "Ajout du paramètre *compresslevel*." #: ../Doc/library/zipfile.rst:221 ../Doc/library/zipfile.rst:643 msgid "The *strict_timestamps* keyword-only argument" -msgstr "" +msgstr "l'argument nommé *strict_timestamps*" #: ../Doc/library/zipfile.rst:227 msgid "" @@ -766,25 +770,34 @@ msgid "" "`ZipFile` instance or ``file`` suitable for passing to the :class:`ZipFile` " "constructor)." msgstr "" +"Construit un objet *Path* depuis le fichier ZIP *root* (qui peut être une " +"instance de :class:`ZipFile` ou tout ce qui sera accepté par le paramètre " +"*file* du constructeur de :class:`ZipFile`)." #: ../Doc/library/zipfile.rst:479 msgid "" "``at`` specifies the location of this Path within the zipfile, e.g. 'dir/" "file.txt', 'dir/', or ''. Defaults to the empty string, indicating the root." msgstr "" +"``at`` indique la position de ce *Path* dans l'archive ZIP, par exemple ``" +"\"dir/file.txt\"``, ``\"dir/\"``, ou ``\"\"``. Par défaut c'est une chaine " +"vide, indiquant la racine de l'archive." #: ../Doc/library/zipfile.rst:483 msgid "" "Path objects expose the following features of :mod:`pathlib.Path` objects:" msgstr "" +"Les objets ``Path`` de ``zipfile`` exposent les fonctionnalités suivantes " +"des objets de :mod:`pathlib.Path` :" #: ../Doc/library/zipfile.rst:486 msgid "Path objects are traversable using the ``/`` operator." msgstr "" +"On peut naviguer dans les objets ``Path`` en utilisant l'opérateur ``/``." #: ../Doc/library/zipfile.rst:490 msgid "The final path component." -msgstr "" +msgstr "Le dernier segment du chemin." #: ../Doc/library/zipfile.rst:494 msgid "" @@ -828,10 +841,13 @@ msgid "" "passed through to :class:`io.TextIOWrapper` (except ``buffer``, which is " "implied by the context)." msgstr "" +"Lit le fichier au format texte. Les arguments positionnels et nommés sont " +"passés à :class:`io.TextIOWrapper` (sauf ``buffer``, qui est imposé par le " +"contexte)" #: ../Doc/library/zipfile.rst:529 msgid "Read the current file as bytes." -msgstr "" +msgstr "Lit le fichier en mode binaire, renvoyant un objet *bytes*." #: ../Doc/library/zipfile.rst:535 msgid "PyZipFile Objects" @@ -1216,27 +1232,32 @@ msgstr "Teste si le fichier zip est valide." #: ../Doc/library/zipfile.rst:826 msgid "Decompression pitfalls" -msgstr "" +msgstr "Problèmes de décompression" #: ../Doc/library/zipfile.rst:828 msgid "" "The extraction in zipfile module might fail due to some pitfalls listed " "below." msgstr "" +"L'extraction d'une archive ZIP par le module *zipfile* peut échouer pour les " +"raisons listées ci-dessous." #: ../Doc/library/zipfile.rst:831 msgid "From file itself" -msgstr "" +msgstr "À cause du fichier lui-même" #: ../Doc/library/zipfile.rst:833 msgid "" "Decompression may fail due to incorrect password / CRC checksum / ZIP format " "or unsupported compression method / decryption." msgstr "" +"La décompression peut échouer à cause d'un mot de passe ou d'une somme de " +"contrôle CRC incorrectes. Elle peut aussi échouer si le format, la méthode " +"de compression, ou de chiffrement n'est pas implémenté." #: ../Doc/library/zipfile.rst:837 msgid "File System limitations" -msgstr "" +msgstr "Limitations du système de fichiers" #: ../Doc/library/zipfile.rst:839 msgid "" @@ -1245,10 +1266,14 @@ msgid "" "file name, length of the pathname, size of a single file, and number of " "files, etc." msgstr "" +"Dépasser les limites du système de fichiers peut faire échouer la " +"décompression. Ces limites peuvent concerner les caractères licites pour un " +"nom de fichier, la longueur du nom du fichier ou du chemin, la taille d'un " +"fichier, le nombre de fichiers, etc." #: ../Doc/library/zipfile.rst:844 msgid "Resources limitations" -msgstr "" +msgstr "Ressources limitées" #: ../Doc/library/zipfile.rst:846 msgid "" @@ -1256,10 +1281,13 @@ msgid "" "example, decompression bombs (aka `ZIP bomb`_) apply to zipfile library that " "can cause disk volume exhaustion." msgstr "" +"Le manque de mémoire ou d'espace disque peut mener à un échec de " +"décompression. Par exemple, une bombe de décompression (`ZIP bomb`_), " +"décompressés avec *zifile* peut remplir l'espace disque." #: ../Doc/library/zipfile.rst:851 msgid "Interruption" -msgstr "" +msgstr "Interruption" #: ../Doc/library/zipfile.rst:853 msgid "" @@ -1267,10 +1295,12 @@ msgid "" "the decompression process may result in incomplete decompression of the " "archive." msgstr "" +"Une interruption durant la décompression, en utilisant *control-C* ou en " +"tuant le processus, peut mener à une décompression partielle de l'archive." #: ../Doc/library/zipfile.rst:857 msgid "Default behaviors of extraction" -msgstr "" +msgstr "Comportements par défaut de l'extraction" #: ../Doc/library/zipfile.rst:859 msgid "" @@ -1278,6 +1308,9 @@ msgid "" "decompression results. For example, when extracting the same archive twice, " "it overwrites files without asking." msgstr "" +"Ne pas connaître le comportement d'extraction par défaut peut causer des " +"résultats inattendus. Par exemple, lors de l'extraction d'une même archive " +"deux fois, les fichiers sont écrasés sans prévenir." #~ msgid "" #~ "There is no official file name encoding for ZIP files. If you have "