diff --git a/c-api/cell.po b/c-api/cell.po index 0c505c86..6f827414 100644 --- a/c-api/cell.po +++ b/c-api/cell.po @@ -44,31 +44,37 @@ msgstr "" #: ../Doc/c-api/cell.rst:20 msgid "The C structure used for cell objects." -msgstr "" +msgstr "Structure C utilisée pour les objets cellules." #: ../Doc/c-api/cell.rst:25 msgid "The type object corresponding to cell objects." -msgstr "" +msgstr "Type objet correspondant aux objets cellules." #: ../Doc/c-api/cell.rst:30 msgid "Return true if *ob* is a cell object; *ob* must not be *NULL*." msgstr "" +"Renvoie ``True`` si *ob* est un objet cellule ; *ob* ne doit pas être à " +"*NULL*." #: ../Doc/c-api/cell.rst:35 msgid "" "Create and return a new cell object containing the value *ob*. The parameter " "may be *NULL*." msgstr "" +"Crée et retourne un nouvel objet cellule contenant la valeur *ob*. Le " +"paramètre peut être mis à *NULL*." #: ../Doc/c-api/cell.rst:41 msgid "Return the contents of the cell *cell*." -msgstr "" +msgstr "Renvoie le contenu de la cellule *cell*." #: ../Doc/c-api/cell.rst:46 msgid "" "Return the contents of the cell *cell*, but without checking that *cell* is " "non-*NULL* and a cell object." msgstr "" +"Renvoie le contenu de la cellule *cell*, mais sans vérifier si *cell* est " +"non *NULL* et sans vérifier si c'est un objet cellule." #: ../Doc/c-api/cell.rst:52 msgid "" @@ -77,6 +83,10 @@ msgid "" "must be non-*NULL*; if it is not a cell object, ``-1`` will be returned. On " "success, ``0`` will be returned." msgstr "" +"Définit le contenu de l'objet cellule à *value*. Cela libère la référence à " +"toute valeur de la cellule. *value* peut être fixé à *NULL*. *cell* ne doit " +"pas être *NULL* ; si ce n'est pas un objet cellule, ``-1`` est renvoyé. Si " +"c'est un objet cellule, renvoie ``0``." #: ../Doc/c-api/cell.rst:60 msgid "" @@ -84,3 +94,6 @@ msgid "" "are adjusted, and no checks are made for safety; *cell* must be non-*NULL* " "and must be a cell object." msgstr "" +"Définit la valeur de l'objet cellule à *value*. Pas de comptage de " +"références n'est ajusté et il n'y' a pas de contrôle effectué pour vérifier " +"la sûreté ; *cell* doit être à non *NULL* et doit être un objet cellule." diff --git a/c-api/complex.po b/c-api/complex.po index 5a765994..14dff7dc 100644 --- a/c-api/complex.po +++ b/c-api/complex.po @@ -54,54 +54,73 @@ msgid "" "objects use structures of this type as input or output values, as " "appropriate. It is defined as::" msgstr "" +"Structure C représentant la valeur d'un nombre complexe Python. La majorité " +"des fonctions qui traitent des nombres complexes utilisent cette structure " +"en entrée ou en sortie, selon le cas. Elle est définie par ::" #: ../Doc/c-api/complex.rst:39 msgid "" "Return the sum of two complex numbers, using the C :c:type:`Py_complex` " "representation." msgstr "" +"Renvoie la somme de deux nombres complexes, sous la forme d'un :c:type:" +"`Py_complex` en C." #: ../Doc/c-api/complex.rst:45 msgid "" "Return the difference between two complex numbers, using the C :c:type:" "`Py_complex` representation." msgstr "" +"Renvoie la différence de deux nombres complexes, sous la forme d'un :c:type:" +"`Py_complex` en C." #: ../Doc/c-api/complex.rst:51 msgid "" "Return the negation of the complex number *complex*, using the C :c:type:" "`Py_complex` representation." msgstr "" +"Renvoie l'opposé du nombre complexe *complex*, sous la forme d'un :c:type:" +"`Py_complex` en C." #: ../Doc/c-api/complex.rst:57 msgid "" "Return the product of two complex numbers, using the C :c:type:`Py_complex` " "representation." msgstr "" +"Renvoie le produit de deux nombres complexes, sous la forme d'un :c:type:" +"`Py_complex` en C." #: ../Doc/c-api/complex.rst:63 msgid "" "Return the quotient of two complex numbers, using the C :c:type:`Py_complex` " "representation." msgstr "" +"Renvoie le quotient de deux nombres complexes, sous la forme d'un :c:type:" +"`Py_complex` en C." #: ../Doc/c-api/complex.rst:66 msgid "" "If *divisor* is null, this method returns zero and sets :c:data:`errno` to :" "c:data:`EDOM`." msgstr "" +"Si *divisor* est nul, cette méthode renvoie zéro et assigne :c:data:`EDOM` " +"à :c:data:`errno`." #: ../Doc/c-api/complex.rst:72 msgid "" "Return the exponentiation of *num* by *exp*, using the C :c:type:" "`Py_complex` representation." msgstr "" +"Renvoie *num* à la puissance *exp*, sous la forme d'un :c:type:`Py_complex` " +"en C." #: ../Doc/c-api/complex.rst:75 msgid "" "If *num* is null and *exp* is not a positive real number, this method " "returns zero and sets :c:data:`errno` to :c:data:`EDOM`." msgstr "" +"Si *num* est nul et *exp* n'est pas un nombre réel positif, cette méthode " +"renvoie zéro et assigne :c:data:`EDOM` à :c:data:`errno`." #: ../Doc/c-api/complex.rst:80 msgid "Complex Numbers as Python Objects" @@ -111,6 +130,8 @@ msgstr "Nombres complexes en tant qu'objets Python" msgid "" "This subtype of :c:type:`PyObject` represents a Python complex number object." msgstr "" +"Ce sous-type de l'objet :c:type:`PyObject` représente un nombre complexe en " +"Python." #: ../Doc/c-api/complex.rst:90 msgid "" @@ -123,6 +144,8 @@ msgid "" "Return true if its argument is a :c:type:`PyComplexObject` or a subtype of :" "c:type:`PyComplexObject`." msgstr "" +"Renvoie vrai si l'argument est de type :c:type:`PyComplexObject` ou un sous-" +"type de :c:type:`PyComplexObject`." #: ../Doc/c-api/complex.rst:99 msgid "Allowed subtypes to be accepted." @@ -133,24 +156,33 @@ msgid "" "Return true if its argument is a :c:type:`PyComplexObject`, but not a " "subtype of :c:type:`PyComplexObject`." msgstr "" +"Renvoie vrai si l'argument est de type :c:type:`PyComplexObject`, mais pas " +"un sous-type de :c:type:`PyComplexObject`." #: ../Doc/c-api/complex.rst:113 msgid "" "Create a new Python complex number object from a C :c:type:`Py_complex` " "value." msgstr "" +"Crée un nouveau nombre complexe à partir de la valeur d'un :c:type:" +"`Py_complex` en C." #: ../Doc/c-api/complex.rst:118 msgid "Return a new :c:type:`PyComplexObject` object from *real* and *imag*." msgstr "" +"Renvoie un nouveau :c:type:`PyComplexObject` à partir de *real* et de *imag*." #: ../Doc/c-api/complex.rst:123 msgid "Return the real part of *op* as a C :c:type:`double`." msgstr "" +"Renvoie la partie réelle du nombre complexe *op* sous la forme d'un :c:type:" +"`double` en C." #: ../Doc/c-api/complex.rst:128 msgid "Return the imaginary part of *op* as a C :c:type:`double`." msgstr "" +"Renvoie la partie imaginaire du nombre complexe *op* sous la forme d'un :c:" +"type:`double` en C." #: ../Doc/c-api/complex.rst:133 msgid "" diff --git a/c-api/datetime.po b/c-api/datetime.po index 2c772254..bc781463 100644 --- a/c-api/datetime.po +++ b/c-api/datetime.po @@ -30,74 +30,102 @@ msgid "" "structure into a static variable, :c:data:`PyDateTimeAPI`, that is used by " "the following macros." msgstr "" +"De nombreux objets *date* et *time* sont exposés par le module :mod:" +"`DateTime`. Avant d'utiliser une de ces fonctions, le fichier d'en-tête :" +"file:`datetime.h` doit être inclus dans vos sources (veuillez noter qu'il " +"n'est pas inclus par le fichier :file:`Python.h`) et la macro :c:macro:" +"`PyDateTime_IMPORT` doit-être invoquée, généralement lors de la fonction " +"d'initialisation du module. La macro crée un pointeur vers une structure C " +"et place celui-ci dans une variable statique, :c:data:`PyDateTimeAPI`, qui " +"est utilisée par les macros suivantes." #: ../Doc/c-api/datetime.rst:16 msgid "Type-check macros:" -msgstr "" +msgstr "Macros pour vérifier les types :" #: ../Doc/c-api/datetime.rst:21 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_DateType` or a subtype " "of :c:data:`PyDateTime_DateType`. *ob* must not be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_DateType` ou un sous-" +"type de :c:data:`PyDateTime_DateType`. *ob* ne doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:29 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_DateType`. *ob* must not " "be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_DateType`. *ob* ne doit " +"pas être *NULL*." #: ../Doc/c-api/datetime.rst:37 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_DateTimeType` or a " "subtype of :c:data:`PyDateTime_DateTimeType`. *ob* must not be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_DateTimeType` ou un " +"sous-type de :c:data:`PyDateTime_DateTimeType`. *ob* ne doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:45 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_DateTimeType`. *ob* must " "not be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_DateTimeType`. *ob* ne " +"doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:53 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_TimeType` or a subtype " "of :c:data:`PyDateTime_TimeType`. *ob* must not be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_TimeType` ou un sous-" +"type de :c:data:`PyDateTime_TimeType`. *ob* ne doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:61 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_TimeType`. *ob* must not " "be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_TimeType`. *ob* ne doit " +"pas être *NULL*." #: ../Doc/c-api/datetime.rst:69 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_DeltaType` or a subtype " "of :c:data:`PyDateTime_DeltaType`. *ob* must not be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_DeltaType` ou un sous-" +"type de :c:data:`PyDateTime_DeltaType`. *ob* ne doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:77 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_DeltaType`. *ob* must not " "be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_DeltaType`. *ob* ne " +"doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:85 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_TZInfoType` or a subtype " "of :c:data:`PyDateTime_TZInfoType`. *ob* must not be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_TZInfoType` ou un sous-" +"type de :c:data:`PyDateTime_TZInfoType`. *ob* ne doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:93 msgid "" "Return true if *ob* is of type :c:data:`PyDateTime_TZInfoType`. *ob* must " "not be *NULL*." msgstr "" +"Renvoie vrai si *ob* est de type :c:data:`PyDateTime_TZInfoType`. *ob* ne " +"doit pas être *NULL*." #: ../Doc/c-api/datetime.rst:98 msgid "Macros to create objects:" -msgstr "" +msgstr "Macros pour créer des objets :" #: ../Doc/c-api/datetime.rst:103 msgid "" @@ -131,18 +159,22 @@ msgid "" "`PyDateTime_DateTime`). The argument must not be *NULL*, and the type is " "not checked:" msgstr "" +"Macros pour extraire les champs des objets *date*. L'argument doit être une " +"instance de :c:data:`PyDateTime_Date`, ou une sous-classe (telle que :c:data:" +"`PyDateTime_DateTime`). L'argument ne doit pas être *NULL*, et le type n'est " +"pas vérifié :" #: ../Doc/c-api/datetime.rst:141 msgid "Return the year, as a positive int." -msgstr "" +msgstr "Renvoie l'année, sous forme d'entier positif." #: ../Doc/c-api/datetime.rst:148 msgid "Return the month, as an int from 1 through 12." -msgstr "" +msgstr "Renvoie le mois, sous forme d'entier allant de 1 à 12." #: ../Doc/c-api/datetime.rst:155 msgid "Return the day, as an int from 1 through 31." -msgstr "" +msgstr "Renvoie le jour, sous forme d'entier allant de 1 à 31." #: ../Doc/c-api/datetime.rst:159 msgid "" @@ -150,22 +182,25 @@ msgid "" "instance of :c:data:`PyDateTime_DateTime`, including subclasses. The " "argument must not be *NULL*, and the type is not checked:" msgstr "" +"Macros pour extraire les champs des objets *datetime*. L'argument doit être " +"une instance de :c:data:`PyDateTime_DateTime` ou une sous-classe de celle-" +"ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" #: ../Doc/c-api/datetime.rst:166 ../Doc/c-api/datetime.rst:198 msgid "Return the hour, as an int from 0 through 23." -msgstr "" +msgstr "Renvoie l'heure, sous forme d'entier allant de 0 à 23." #: ../Doc/c-api/datetime.rst:173 ../Doc/c-api/datetime.rst:205 msgid "Return the minute, as an int from 0 through 59." -msgstr "" +msgstr "Renvoie la minute, sous forme d'entier allant de 0 à 59." #: ../Doc/c-api/datetime.rst:180 ../Doc/c-api/datetime.rst:212 msgid "Return the second, as an int from 0 through 59." -msgstr "" +msgstr "Renvoie la seconde, sous forme d'entier allant de 0 à 59." #: ../Doc/c-api/datetime.rst:187 ../Doc/c-api/datetime.rst:219 msgid "Return the microsecond, as an int from 0 through 999999." -msgstr "" +msgstr "Renvoie la microseconde, sous forme d'entier allant de 0 à 999999." #: ../Doc/c-api/datetime.rst:191 msgid "" @@ -173,10 +208,13 @@ msgid "" "instance of :c:data:`PyDateTime_Time`, including subclasses. The argument " "must not be *NULL*, and the type is not checked:" msgstr "" +"Macros pour extraire les champs des objets *time*. L'argument doit être une " +"instance de :c:data:`PyDateTime_Time` ou une sous-classe de celle-ci. " +"L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" #: ../Doc/c-api/datetime.rst:223 msgid "Macros for the convenience of modules implementing the DB API:" -msgstr "" +msgstr "Macros de confort pour les modules implémentant l'API DB :" #: ../Doc/c-api/datetime.rst:228 msgid "" diff --git a/c-api/file.po b/c-api/file.po index e9f65e8f..4a365959 100644 --- a/c-api/file.po +++ b/c-api/file.po @@ -124,6 +124,16 @@ msgid "" "regardless of length, but :exc:`EOFError` is raised if the end of the file " "is reached immediately." msgstr "" +"Cette fonction, équivalente à ``p.readline([n])``, lit une ligne de l'objet " +"*p*. *p* peut être un objet fichier ou n'importe quel objet qui possède une " +"méthode :meth:`~io.IOBase.readline`. Si *n* vaut ``0``, une seule ligne est " +"lue, indépendamment de la taille de la ligne. Si *n* est plus grand que " +"``0``, un maximum de *n* octets seront lus en provenance du fichier ; une " +"ligne partielle peut être renvoyée. Dans les deux cas, une chaîne de " +"caractères vide est renvoyée si la fin du fichier est atteinte " +"immédiatement. Cependant, si *n* est plus petit que ``0``, une ligne est lue " +"indépendamment de sa taille, mais :exc:`EOFError` est levée si la fin du " +"fichier est atteinte immédiatement." #: ../Doc/c-api/file.rst:126 msgid "Return the name of the file specified by *p* as a string object." @@ -166,9 +176,16 @@ msgid "" "instead of the :func:`repr`. Return ``0`` on success or ``-1`` on failure; " "the appropriate exception will be set." msgstr "" +"Écrit l'objet *obj* dans l'objet fichier *p*. La seule option gérée pour " +"*flags* est :const:`Py_PRINT_RAW` ; si défini, l'attribut :func:`str` de " +"l'objet est écrit à la place de l'attribut :func:`repr`. Retourne ``0`` en " +"cas de succès ou ``-1`` en cas échec ; l'exception appropriée sera levée." #: ../Doc/c-api/file.rst:179 msgid "" "Write string *s* to file object *p*. Return ``0`` on success or ``-1`` on " "failure; the appropriate exception will be set." msgstr "" +"Écrit la chaîne de caractères *s* dans l'objet fichier *p*. Retourne ``0`` " +"en cas de succès ou ``-1`` en cas d'échec ; l'exception appropriée sera mise " +"en place." diff --git a/c-api/float.po b/c-api/float.po index e60520cc..e33e17c6 100644 --- a/c-api/float.po +++ b/c-api/float.po @@ -18,12 +18,14 @@ msgstr "" #: ../Doc/c-api/float.rst:6 msgid "Floating Point Objects" -msgstr "" +msgstr "Objets représentant les nombres à virgule flottante" #: ../Doc/c-api/float.rst:13 msgid "" "This subtype of :c:type:`PyObject` represents a Python floating point object." msgstr "" +"Ce sous-type de l'objet :c:type:`PyObject` représente un nombre à virgule " +"flottante en Python." #: ../Doc/c-api/float.rst:20 msgid "" @@ -36,6 +38,8 @@ msgid "" "Return true if its argument is a :c:type:`PyFloatObject` or a subtype of :c:" "type:`PyFloatObject`." msgstr "" +"Renvoie vrai si l'argument est de type :c:type:`PyFloatObject` ou un sous-" +"type de :c:type:`PyFloatObject`." #: ../Doc/c-api/float.rst:29 msgid "Allowed subtypes to be accepted." @@ -46,6 +50,8 @@ msgid "" "Return true if its argument is a :c:type:`PyFloatObject`, but not a subtype " "of :c:type:`PyFloatObject`." msgstr "" +"Renvoie vrai si l'argument est de type :c:type:`PyFloatObject`, mais pas un " +"sous-type de :c:type:`PyFloatObject`." #: ../Doc/c-api/float.rst:43 msgid "" @@ -57,6 +63,8 @@ msgstr "" #: ../Doc/c-api/float.rst:50 msgid "Create a :c:type:`PyFloatObject` object from *v*, or *NULL* on failure." msgstr "" +"Crée un objet :c:type:`PyFloatObject` à partir de *v*, ou *NULL* en cas " +"d'échec." #: ../Doc/c-api/float.rst:55 msgid "" @@ -66,12 +74,20 @@ msgid "" "This method returns ``-1.0`` upon failure, so one should call :c:func:" "`PyErr_Occurred` to check for errors." msgstr "" +"Renvoie une représentation du contenu d'un *pyfloat* sous la forme d'un :c:" +"type:`double` en C. Si le *pyfloat* n'est pas un nombre à virgule flottante " +"mais contient une méthode :meth:`__float__`, elle est d'abord appelée pour " +"convertir le *pyfloat* en nombre à virgule flottante. Cette méthode renvoie " +"``-1.0`` en cas d'échec, il faut appeler :c:func:`PyErr_Occurred` pour " +"vérifier les erreurs." #: ../Doc/c-api/float.rst:64 msgid "" "Return a C :c:type:`double` representation of the contents of *pyfloat*, but " "without error checking." msgstr "" +"Renvoie une représentation du contenu d'un *pyfloat* sous la forme d'un :c:" +"type:`double` en C, sans vérifier les erreurs." #: ../Doc/c-api/float.rst:70 msgid "" @@ -79,23 +95,32 @@ msgid "" "minimum and maximum values of a float. It's a thin wrapper around the header " "file :file:`float.h`." msgstr "" +"Renvoie une instance *structseq* qui contient les informations sur la " +"précision et les valeurs minimales et maximales pour un nombre à virgule " +"flottante. C'est une enveloppe autour du fichier d'entête :file:`float.h`." #: ../Doc/c-api/float.rst:79 msgid "" "Return the maximum representable finite float *DBL_MAX* as C :c:type:" "`double`." msgstr "" +"Renvoie le nombre à virgule flottante fini maximal *DBL_MAX* sous la forme " +"d'un :c:type:`double` en C." #: ../Doc/c-api/float.rst:86 msgid "" "Return the minimum normalized positive float *DBL_MIN* as C :c:type:`double`." msgstr "" +"Renvoie le nombre à virgule flottante minimal normalisé *DBL_MIN* sous la " +"forme :c:type:`double` en C." #: ../Doc/c-api/float.rst:93 msgid "" "Clear the float free list. Return the number of items that could not be " "freed." msgstr "" +"Libère la mémoire de la *free list* des nombres à virgule flottante. Renvoie " +"le nombre d'éléments qui n'ont pas pu être libérés." #: ../Doc/c-api/float.rst:101 msgid "" diff --git a/c-api/intro.po b/c-api/intro.po index 1c0a2d53..c68eb961 100644 --- a/c-api/intro.po +++ b/c-api/intro.po @@ -464,7 +464,7 @@ msgstr "" #: ../Doc/c-api/intro.rst:509 msgid "Embedding Python" -msgstr "" +msgstr "Embarquer Python" #: ../Doc/c-api/intro.rst:511 msgid "" diff --git a/c-api/iterator.po b/c-api/iterator.po index 1f624231..08a94b0c 100644 --- a/c-api/iterator.po +++ b/c-api/iterator.po @@ -40,10 +40,13 @@ msgid "" "one-argument form of the :func:`iter` built-in function for built-in " "sequence types." msgstr "" +"Type des itérateurs renvoyés par les fonctions :c:func:`PySeqIter_New` et la " +"forme à un argument de la fonction native :func:`iter` pour les séquences " +"natives." #: ../Doc/c-api/iterator.rst:26 msgid "Return true if the type of *op* is :c:data:`PySeqIter_Type`." -msgstr "" +msgstr "Renvoie vrai si *op* est de type :c:data:`PySeqIter_Type`." #: ../Doc/c-api/iterator.rst:33 msgid "" @@ -51,16 +54,20 @@ msgid "" "iteration ends when the sequence raises :exc:`IndexError` for the " "subscripting operation." msgstr "" +"Renvoie un itérateur sur la séquence *seq*. L'itération prend fin lorsque la " +"séquence lève :exc:`IndexError` lors d'une tentative d'accès." #: ../Doc/c-api/iterator.rst:42 msgid "" "Type object for iterator objects returned by :c:func:`PyCallIter_New` and " "the two-argument form of the :func:`iter` built-in function." msgstr "" +"Type de l'itérateur renvoyé par les fonctions :c:func:`PyCallIter_New` et :" +"func:`iter` à deux arguments." #: ../Doc/c-api/iterator.rst:50 msgid "Return true if the type of *op* is :c:data:`PyCallIter_Type`." -msgstr "" +msgstr "Renvoie vrai si *op* est de type :c:data:`PyCallIter_Type`." #: ../Doc/c-api/iterator.rst:57 msgid "" @@ -69,3 +76,7 @@ msgid "" "should return the next item in the iteration. When *callable* returns a " "value equal to *sentinel*, the iteration will be terminated." msgstr "" +"Renvoie un nouvel itérateur. Le premier paramètre, *callable*, peut être " +"n'importe quel objet Python appelable sans aucun paramètre ; chaque appel " +"doit renvoyer l'élément suivant de l'itération. Lorsque *callable* renvoie " +"une valeur égale à *sentinel*, l'itération prend fin." diff --git a/c-api/memory.po b/c-api/memory.po index 3531a6d8..ecb769c1 100644 --- a/c-api/memory.po +++ b/c-api/memory.po @@ -22,7 +22,7 @@ msgstr "" #: ../Doc/c-api/memory.rst:17 msgid "Overview" -msgstr "" +msgstr "Aperçu" #: ../Doc/c-api/memory.rst:19 msgid "" diff --git a/c-api/objbuffer.po b/c-api/objbuffer.po index 57c522d3..e0bf035d 100644 --- a/c-api/objbuffer.po +++ b/c-api/objbuffer.po @@ -37,6 +37,12 @@ msgid "" "and *buffer_len* to the buffer length. Returns ``-1`` and sets a :exc:" "`TypeError` on error." msgstr "" +"Retourne un pointeur vers un emplacement de mémoire en lecture seule " +"utilisable en tant qu'entrée basée sur des caractères. L'argument *obj* doit " +"prendre en charge l'interface de tampon de caractère à segment unique. En " +"cas de succès, retourne ``0``, définit *buffer* à l'emplacement de la " +"mémoire et *buffer_len* à la longueur de la mémoire tampon. Retourne ``-1`` " +"et affecte une exception :exc:`TypeError` en cas d'erreur." #: ../Doc/c-api/objbuffer.rst:26 ../Doc/c-api/objbuffer.rst:41 #: ../Doc/c-api/objbuffer.rst:63 @@ -53,6 +59,12 @@ msgid "" "and *buffer_len* to the buffer length. Returns ``-1`` and sets a :exc:" "`TypeError` on error." msgstr "" +"Retourne un pointeur vers un emplacement de mémoire en lecture seule " +"contenant des données arbitraires. L'argument *obj* doit prendre en charge " +"l'interface de tampon lisible à segment unique. En cas de succès, retourne " +"``0``, définit *buffer* à l'emplacement de la mémoire et *buffer_len* à la " +"longueur de la mémoire tampon. Renvoie ``-1`` et affecte l'exception :exc:" +"`TypeError` en cas d'erreur." #: ../Doc/c-api/objbuffer.rst:48 msgid "" diff --git a/c-api/object.po b/c-api/object.po index 63b758a4..9dbd68ef 100644 --- a/c-api/object.po +++ b/c-api/object.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/c-api/object.rst:6 msgid "Object Protocol" -msgstr "" +msgstr "Protocole Objet" #: ../Doc/c-api/object.rst:11 msgid "" @@ -27,6 +27,11 @@ msgid "" "currently supported is :const:`Py_PRINT_RAW`; if given, the :func:`str` of " "the object is written instead of the :func:`repr`." msgstr "" +"Écrit un objet *o*, dans le fichier *fp*. Renvoie ``-1`` en cas d'erreur. " +"L'argument *flags* est utilisé pour permettre certaines options de rendu. La " +"seule option actuellement gérée est :const:`Py_PRINT_RAW` ; si cet argument " +"est fourni, le :func:`str` de l'objet est utilisé pour le rendu à la place " +"de :func:`repr`." #: ../Doc/c-api/object.rst:19 ../Doc/c-api/object.rst:26 msgid "" @@ -34,6 +39,9 @@ msgid "" "This is equivalent to the Python expression ``hasattr(o, attr_name)``. This " "function always succeeds." msgstr "" +"Renvoie ``1`` si *o* a l'attribut *attr_name*, et ``0`` sinon. Ceci est " +"équivalent à l'expression Python ``hasattr(o, attr_name)``. Cette fonction " +"réussit toujours." #: ../Doc/c-api/object.rst:33 msgid "" @@ -41,6 +49,9 @@ msgid "" "attribute value on success, or *NULL* on failure. This is the equivalent of " "the Python expression ``o.attr_name``." msgstr "" +"Récupère l'attribut nommé *attr_name* de l'objet *o*. Renvoie la valeur de " +"l'attribut en cas de succès, ou *NULL* en cas d'échec. Ceci est équivalent à " +"l'expression Python ``o.attr_name``." #: ../Doc/c-api/object.rst:40 msgid "" @@ -48,6 +59,9 @@ msgid "" "attribute value on success, or *NULL* on failure. This is the equivalent of " "the Python expression ``o.attr_name``." msgstr "" +"Récupère un attribut nommé *attr_name* de l'objet *o*. Renvoie la valeur de " +"l'attribut en cas de succès, ou *NULL* en cas d'échec. Ceci est équivalent à " +"l'expression Python ``o.attr_name``." #: ../Doc/c-api/object.rst:47 msgid "" @@ -58,6 +72,13 @@ msgid "" "descriptors take preference over instance attributes, while non-data " "descriptors don't. Otherwise, an :exc:`AttributeError` is raised." msgstr "" +"Accesseur d'attribut générique destiné à être mis dans le *slot* " +"``tp_getattro`` d'un objet type. Recherche un descripteur dans le " +"dictionnaire de classes du MRO de l'objet ainsi qu'un attribut dans le :attr:" +"`~object.__dict__` de l'objet (si présent). Comme défini dans :ref:" +"`descriptors`, les descripteurs de données sont prioritaires sur les " +"attributs d'instance, contrairement aux autres descripteurs. Sinon, une :exc:" +"`AttributeError` est levée." #: ../Doc/c-api/object.rst:57 ../Doc/c-api/object.rst:64 msgid "" @@ -81,6 +102,9 @@ msgid "" "Delete attribute named *attr_name*, for object *o*. Returns ``-1`` on " "failure. This is the equivalent of the Python statement ``del o.attr_name``." msgstr "" +"Supprime l'attribut nommé *attr_name*, pour l'objet *o*. Renvoie ``-1`` en " +"cas d'échec. Ceci est l'équivalent de l'expression Python ``del o." +"attr_name``." #: ../Doc/c-api/object.rst:93 msgid "" @@ -92,6 +116,13 @@ msgid "" "to *opid*. Returns the value of the comparison on success, or *NULL* on " "failure." msgstr "" +"Compare les valeurs de *o1* et *o2* en utilisant l'opération spécifiée par " +"*opid*, qui doit être :const:`Py_LT`, :const:`Py_LE`, :const:`Py_EQ`, :const:" +"`Py_NE`, :const:`Py_GT`, ou :const:`Py_GE`, correspondant à ``<``, ``<=``, " +"``==``, ``!=``, ``>``, ou ``>=`` respectivement. Ceci est l'équivalent de " +"l'expression Python ``o1 op o2``, où ``op`` est l'opérateur correspondant à " +"*opid*. Renvoie la valeur de la comparaison en cas de succès, ou *NULL* en " +"cas d'échec." #: ../Doc/c-api/object.rst:103 msgid "" @@ -103,12 +134,21 @@ msgid "" "Python expression ``o1 op o2``, where ``op`` is the operator corresponding " "to *opid*." msgstr "" +"Compare les valeurs de *o1* et *o2* en utilisant l'opération spécifiée par " +"*opid*, qui doit être :const:`Py_LT`, :const:`Py_LE`, :const:`Py_EQ`, :const:" +"`Py_NE`, :const:`Py_GT`, ou :const:`Py_GE`, correspondant à ``<``, ``<=``, " +"``==``, ``!=``, ``>``, ou ``>=`` respectivement. Renvoie ``-1`` en cas " +"d'erreur, ``0`` si le résultat est faux, et ``1`` sinon. Ceci est " +"l'équivalent de l'expression Python ``o1 op o2``, où ``op`` est l'opérateur " +"correspondant à *opid*." #: ../Doc/c-api/object.rst:112 msgid "" "If *o1* and *o2* are the same object, :c:func:`PyObject_RichCompareBool` " "will always return ``1`` for :const:`Py_EQ` and ``0`` for :const:`Py_NE`." msgstr "" +"Si *o1* et *o2* sont le même objet, :c:func:`PyObject_RichCompareBool` " +"renvoie toujours ``1`` pour :const:`Py_EQ` et ``0`` pour :const:`Py_NE`." #: ../Doc/c-api/object.rst:119 msgid "" @@ -211,6 +251,8 @@ msgid "" "Determine if the object *o* is callable. Return ``1`` if the object is " "callable and ``0`` otherwise. This function always succeeds." msgstr "" +"Détermine si l'objet *o* est appelable. Renvoie ``1`` si c'est le cas, et " +"``0`` sinon. Cette fonction réussit toujours." #: ../Doc/c-api/object.rst:229 msgid "" diff --git a/c-api/reflection.po b/c-api/reflection.po index ab963243..4820e0b0 100644 --- a/c-api/reflection.po +++ b/c-api/reflection.po @@ -18,35 +18,44 @@ msgstr "" #: ../Doc/c-api/reflection.rst:6 msgid "Reflection" -msgstr "" +msgstr "Réflexion" #: ../Doc/c-api/reflection.rst:10 msgid "" "Return a dictionary of the builtins in the current execution frame, or the " "interpreter of the thread state if no frame is currently executing." msgstr "" +"Renvoie un dictionnaire des fonctions natives de la *frame* en cours " +"d'exécution, ou si aucune *frame* n'est exécutée, les fonctions natives du " +"*thread* indiqué par le *thread state*." #: ../Doc/c-api/reflection.rst:16 msgid "" "Return a dictionary of the local variables in the current execution frame, " "or *NULL* if no frame is currently executing." msgstr "" +"Renvoie un dictionnaire des variables locales de la *frame* en cours " +"d'exécution, ou *NULL* si aucune *frame* n'est en cours d'exécution." #: ../Doc/c-api/reflection.rst:22 msgid "" "Return a dictionary of the global variables in the current execution frame, " "or *NULL* if no frame is currently executing." msgstr "" +"Renvoie un dictionnaire des variables globales de la *frame* en cours " +"d'exécution ou *NULL* si aucune *frame* n'est en cours d'exécution." #: ../Doc/c-api/reflection.rst:28 msgid "" "Return the current thread state's frame, which is *NULL* if no frame is " "currently executing." msgstr "" +"Renvoie la *frame* actuelle selon le *thread state*, qui est *NULL* si " +"aucune *frame* n'est en cours d'exécution." #: ../Doc/c-api/reflection.rst:34 msgid "Return the line number that *frame* is currently executing." -msgstr "" +msgstr "Renvoie le numéro de ligne que *frame* est en train d'exécuter" #: ../Doc/c-api/reflection.rst:39 msgid "" @@ -59,6 +68,8 @@ msgid "" "Return the name of *func* if it is a function, class or instance object, " "else the name of *func*\\s type." msgstr "" +"Renvoie le nom de *func* s'il s'agit d'une fonction, d'une classe ou d'un " +"objet d'instance, sinon le nom du type de *func*" #: ../Doc/c-api/reflection.rst:51 msgid "" @@ -67,3 +78,8 @@ msgid "" "and \" object\". Concatenated with the result of :c:func:" "`PyEval_GetFuncName`, the result will be a description of *func*." msgstr "" +"Renvoie une description en chaîne de caractères, en fonction du type de " +"*func*. Les valeurs renvoyées peuvent être ``\"()\"`` pour les fonction et " +"les méthodes, ``\\\" constructor\\\"``, ``\\\" instance\\\"``, ``\\\" object" +"\\\"``. Concaténé avec le résultat de :c:func:`PyEval_GetFuncName`, le " +"résultat sera une description de *func*" diff --git a/c-api/weakref.po b/c-api/weakref.po index 53ea0572..6b94b26a 100644 --- a/c-api/weakref.po +++ b/c-api/weakref.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/c-api/weakref.rst:6 msgid "Weak Reference Objects" -msgstr "" +msgstr "Objets à références faibles" #: ../Doc/c-api/weakref.rst:8 msgid "" @@ -27,18 +27,22 @@ msgid "" "is a simple reference object, and the second acts as a proxy for the " "original object as much as it can." msgstr "" +"Python gère les *références faibles* comme des objets de première classe. Il " +"existe deux types d'objets spécifiques qui implémentent directement les " +"références faibles. Le premier est un objet de référence simple, et le " +"second agit autant que possible comme un mandataire vers l'objet original." #: ../Doc/c-api/weakref.rst:16 msgid "Return true if *ob* is either a reference or proxy object." -msgstr "" +msgstr "Renvoie vrai si *ob* est soit une référence, soit un objet proxy." #: ../Doc/c-api/weakref.rst:23 msgid "Return true if *ob* is a reference object." -msgstr "" +msgstr "Retourne vrai si *ob* est un objet référence." #: ../Doc/c-api/weakref.rst:30 msgid "Return true if *ob* is a proxy object." -msgstr "" +msgstr "Retourne vrai si *ob* est un objet proxy" #: ../Doc/c-api/weakref.rst:37 msgid "" @@ -51,6 +55,16 @@ msgid "" "referencable object, or if *callback* is not callable, ``None``, or *NULL*, " "this will return *NULL* and raise :exc:`TypeError`." msgstr "" +"Retourne un objet de référence faible pour l'objet *ob*. Elle renvoie " +"toujours une nouvelle référence, mais cela ne signifie pas qu'un nouvel " +"objet est créé ; un objet référence existant peut être renvoyé. Le second " +"paramètre, *callback*, peut être un objet appelable qui reçoit une " +"notification lorsque *ob* est collecté par le ramasse-miette (*garbage " +"collected* en anglais) ; il doit accepter un paramètre unique, qui est " +"l'objet référence faible lui-même. *callback* peut aussi être positionné à " +"``None`` ou à *NULL*. Si *ob* n'est pas un objet faiblement référençable, " +"ou si *callback* n'est pas appelable, ``None``` ou *NULL*, ceci retourne " +"*NULL* et lève une :exc:`TypeError`." #: ../Doc/c-api/weakref.rst:51 msgid "" @@ -63,12 +77,23 @@ msgid "" "is not a weakly-referencable object, or if *callback* is not callable, " "``None``, or *NULL*, this will return *NULL* and raise :exc:`TypeError`." msgstr "" +"Retourne un objet mandataire à référence faible pour l'objet *ob*. Ceci " +"renvoie toujours une nouvelle référence, mais ne garantit pas la création " +"d'un nouvel objet ; un objet proxy existant peut être retourné. Le second " +"paramètre, *callback*, peut être un objet appelable qui reçoit une " +"notification lorsque *ob* est collecté ; il doit accepter un seul paramètre, " +"qui sera l'objet de référence faible lui-même. *callback* peut aussi être " +"``None`` ou *NULLL*. Si *ob* n'est pas un objet faiblement référençable, ou " +"si *callback* n'est pas appelable, ``None``` ou *NULL*, ceci renvoie *NULL* " +"et lève une :exc:`TypeError`." #: ../Doc/c-api/weakref.rst:65 msgid "" "Return the referenced object from a weak reference, *ref*. If the referent " "is no longer live, returns :const:`Py_None`." msgstr "" +"Retourne l'objet référencé à partir d'une référence faible, *ref*. Si le " +"référence n'existe plus, alors l'objet renvoie :const:`Py_None`." #: ../Doc/c-api/weakref.rst:72 msgid "" @@ -76,9 +101,15 @@ msgid "" "This means that you should always call :c:func:`Py_INCREF` on the object " "except if you know that it cannot be destroyed while you are still using it." msgstr "" +"Cette fonction renvoie une **référence empruntée** à l'objet référencé. Cela " +"signifie que vous devez toujours appeler :c:func:`Py_INCREF` sur l'objet " +"sauf si vous savez qu'il ne peut pas être détruit tant que vous l'utilisez " +"encore." #: ../Doc/c-api/weakref.rst:80 msgid "" "Similar to :c:func:`PyWeakref_GetObject`, but implemented as a macro that " "does no error checking." msgstr "" +"Similaire à :c:func:`PyWeakref_GetObject`, mais implémenté comme une macro " +"qui ne vérifie pas les erreurs." diff --git a/distutils/apiref.po b/distutils/apiref.po index 3d6bba6a..1dd042ae 100644 --- a/distutils/apiref.po +++ b/distutils/apiref.po @@ -23,6 +23,7 @@ msgstr "Référence de l'API" #: ../Doc/distutils/apiref.rst:9 msgid ":mod:`distutils.core` --- Core Distutils functionality" msgstr "" +":mod:`distutils.core` --- Fonctionnalités principales du module Distutils" #: ../Doc/distutils/apiref.rst:15 msgid "" @@ -133,6 +134,9 @@ msgid "" "if the maintainer is provided, distutils will use it as the author in :file:" "`PKG-INFO`" msgstr "" +"Le nom de l'actuel mainteneur, s'il est différent de l'auteur. Remarquez que " +"si *maintainer* est fourni, *distutils* l'utilise à la place de *author* " +"dans :file:`PKG-INFO`." #: ../Doc/distutils/apiref.rst:58 msgid "*maintainer_email*" @@ -240,7 +244,7 @@ msgstr "*script_name*" #: ../Doc/distutils/apiref.rst:86 msgid "The name of the setup.py script - defaults to ``sys.argv[0]``" -msgstr "" +msgstr "Le nom du script *setup.py* . Initialisé par ``sys.argv[0]``" #: ../Doc/distutils/apiref.rst:90 msgid "*script_args*" @@ -282,6 +286,8 @@ msgstr "Méta-données descriptives, voir :pep:`314`" #: ../Doc/distutils/apiref.rst:98 ../Doc/distutils/apiref.rst:101 msgid "a list of strings or a comma-separated string" msgstr "" +"Une liste de chaînes de caractères ou une chaîne de caractère dont les " +"éléments sont séparés par des virgules." #: ../Doc/distutils/apiref.rst:101 msgid "*platforms*" @@ -324,6 +330,12 @@ msgid "" "keyword args from *script* to :func:`setup`), or the contents of the config " "files or command-line." msgstr "" +"Exécute un script d'installation dans un environnement quelque peu contrôlé, " +"et renvoie une instance :class:`distutils.dist.distribution` qui contrôle " +"l’exécution. Ceci est utile si vous avez besoin de connaître les méta-" +"données de la distribution (passées sous forme d'arguments nommés de " +"*script* à la fonction :func:`setup`), ou le contenu des fichiers de " +"configuration ou de la ligne de commande." #: ../Doc/distutils/apiref.rst:123 msgid "" @@ -459,7 +471,7 @@ msgstr "" #: ../Doc/distutils/apiref.rst:196 msgid "*include_dirs*" -msgstr "" +msgstr "*include_dirs*" #: ../Doc/distutils/apiref.rst:196 msgid "" @@ -491,37 +503,44 @@ msgstr "*undef_macros*" #: ../Doc/distutils/apiref.rst:212 msgid "list of macros to undefine explicitly" -msgstr "" +msgstr "Liste de macros à ignorer explicitement." #: ../Doc/distutils/apiref.rst:215 msgid "*library_dirs*" -msgstr "" +msgstr "*library_dirs*" #: ../Doc/distutils/apiref.rst:215 msgid "list of directories to search for C/C++ libraries at link time" msgstr "" +"Liste de répertoires à parcourir pour chercher les bibliothèques C/C++ lors " +"de la phase d'édition de liens." #: ../Doc/distutils/apiref.rst:219 msgid "*libraries*" -msgstr "" +msgstr "*libraries*" #: ../Doc/distutils/apiref.rst:219 msgid "list of library names (not filenames or paths) to link against" msgstr "" +"Liste de noms de bibliothèques à lier à la compilation. Pas de noms de " +"fichiers ou de chemin." #: ../Doc/distutils/apiref.rst:223 msgid "*runtime_library_dirs*" -msgstr "" +msgstr "*runtime_library_dirs*" #: ../Doc/distutils/apiref.rst:223 msgid "" "list of directories to search for C/C++ libraries at run time (for shared " "extensions, this is when the extension is loaded)" msgstr "" +"Liste de répertoires à parcourir pour les bibliothèques C/C++ lors de la " +"phase d'exécution. Pour les extensions partagées, c'est à ce moment que " +"l'extension est chargée. " #: ../Doc/distutils/apiref.rst:229 msgid "*extra_objects*" -msgstr "" +msgstr "*extra_objects*" #: ../Doc/distutils/apiref.rst:229 msgid "" @@ -529,10 +548,13 @@ msgid "" "static library that must be explicitly specified, binary resource files, " "etc.)" msgstr "" +"Liste des fichiers supplémentaires à lier (par exemple les fichiers d'objets " +"non explicités dans les 'sources', bibliothèque statique qui doit être " +"explicitement spécifiée, fichiers de ressources binaires, etc. )." #: ../Doc/distutils/apiref.rst:236 msgid "*extra_compile_args*" -msgstr "" +msgstr "*extra_compile_args*" #: ../Doc/distutils/apiref.rst:236 msgid "" @@ -541,10 +563,15 @@ msgid "" "line makes sense, this is typically a list of command-line arguments, but " "for other platforms it could be anything." msgstr "" +"Toute information supplémentaire spécifique à la plate-forme et au " +"compilateur à utiliser lors de la compilation des fichiers sources dans " +"'sources'. Pour les plates-formes et les compilateurs où une ligne de " +"commande a du sens, il s'agit généralement d'une liste d'arguments de ligne " +"de commande, mais pour d'autres plates-formes, cela peut être n'importe quoi." #: ../Doc/distutils/apiref.rst:247 msgid "*extra_link_args*" -msgstr "" +msgstr "*extra_link_args*" #: ../Doc/distutils/apiref.rst:247 msgid "" @@ -552,10 +579,14 @@ msgid "" "object files together to create the extension (or to create a new static " "Python interpreter). Similar interpretation as for 'extra_compile_args'." msgstr "" +"Toute information supplémentaire spécifique à la plate-forme et au " +"compilateur à utiliser lors de la liaison de fichiers objets pour créer " +"l'extension (ou pour créer un nouvel interpréteur Python statique). " +"Interprétation similaire à celle de *extra_compile_args*." #: ../Doc/distutils/apiref.rst:256 msgid "*export_symbols*" -msgstr "" +msgstr "*export_symbols*" #: ../Doc/distutils/apiref.rst:256 msgid "" @@ -563,10 +594,14 @@ msgid "" "platforms, and not generally necessary for Python extensions, which " "typically export exactly one symbol: ``init`` + extension_name." msgstr "" +"Liste des symboles à exporter à partir d'une extension partagée. N'est pas " +"utilisé sur toutes les plates-formes et n'est généralement pas nécessaire " +"pour les extensions Python, qui exportent généralement exactement un " +"symbole : ``init`` + nom_de_l'extension." #: ../Doc/distutils/apiref.rst:264 msgid "*depends*" -msgstr "" +msgstr "*depends*" #: ../Doc/distutils/apiref.rst:264 msgid "list of files that the extension depends on" @@ -574,7 +609,7 @@ msgstr "liste des fichiers dont dépend l'extension" #: ../Doc/distutils/apiref.rst:267 msgid "*language*" -msgstr "" +msgstr "*language*" #: ../Doc/distutils/apiref.rst:267 msgid "" @@ -589,22 +624,29 @@ msgid "" "A :class:`Distribution` describes how to build, install and package up a " "Python software package." msgstr "" +"Une classe :class:`Distribution` décrit comment compiler, installer et " +"empaqueter un paquet logiciel Python." #: ../Doc/distutils/apiref.rst:280 msgid "" "See the :func:`setup` function for a list of keyword arguments accepted by " "the Distribution constructor. :func:`setup` creates a Distribution instance." msgstr "" +"Voir la fonction :func:`setup` pour une liste des arguments de mots-clés " +"acceptés par le constructeur *Distribution*. :func:`setup` crée une instance " +"de Distribution." #: ../Doc/distutils/apiref.rst:286 msgid "" "A :class:`Command` class (or rather, an instance of one of its subclasses) " "implement a single distutils command." msgstr "" +"Une classe :class:`Command` (ou plutôt une instance d'une de ses sous-" +"classes) implémente une commande *distutils* unique." #: ../Doc/distutils/apiref.rst:291 msgid ":mod:`distutils.ccompiler` --- CCompiler base class" -msgstr "" +msgstr ":mod:`distutils.ccompiler` — Classe de base CCompiler" #: ../Doc/distutils/apiref.rst:297 msgid "" @@ -614,6 +656,12 @@ msgid "" "options for the compiler --- macro definitions, include directories, link " "path, libraries and the like." msgstr "" +"Ce module fournit la classe de base abstraite pour les classes :class:" +"`CCompiler`. Une instance de :class:`CCompiler` peut être utilisée pour " +"toutes les étapes de compilation et de liaison nécessaires à la compilation " +"d'un projet unique. Des méthodes sont fournies pour définir des options pour " +"le compilateur --- définitions de macros, inclusion des répertoires, des " +"chemins de liens, des bibliothèques, etc." #: ../Doc/distutils/apiref.rst:303 msgid "This module provides the following functions." @@ -627,6 +675,13 @@ msgid "" "command-line options suitable for use with some compiler (depending on the " "two format strings passed in)." msgstr "" +"Génère des options de liaison pour chercher dans les répertoires des " +"bibliothèques et pour effectuer les liaisons avec des bibliothèques " +"spécifiques. *libraries* et *library_dirs* sont, respectivement, des listes " +"de noms de bibliothèques (pas de noms de fichiers !) et de répertoires à " +"rechercher. Renvoie une liste d'options de ligne de commande utilisables " +"avec certains compilateurs (en fonction des deux chaînes de format " +"transmises)." #: ../Doc/distutils/apiref.rst:317 msgid "" @@ -651,6 +706,9 @@ msgid "" "returned by ``os.name``) and *platform* the common value returned by ``sys." "platform`` for the platform in question." msgstr "" +"*osname* doit être l'un des noms d'OS Python standard (c'est-à-dire un des " +"noms renvoyés par ``os.name``) et *platform* la valeur commune renvoyés par " +"``sys.platform`` pour la plate-forme en question." #: ../Doc/distutils/apiref.rst:335 msgid "" @@ -672,6 +730,16 @@ msgid "" "Windows, and a Microsoft compiler object under Unix---if you supply a value " "for *compiler*, *plat* is ignored." msgstr "" +"Fonction de génération produisant une instance d'une sous-classe CCompiler " +"pour la combinaison plateforme/compilateur fournie. Par défaut, *plat* est " +"le ``os.name`` (par exemple ``'posix'``, ``'nt'``), et *compiler* est le " +"compilateur par défaut pour cette plate-forme. Actuellement, seuls " +"``'posix'`` et ``'nt'`` sont gérés, et les compilateurs par défaut sont ceux " +"qui gèrent une \"interface Unix traditionnelle\" (:class:`UnixCCompiler`) et " +"Visual C++ (:class:`MSVCCompiler`). Notez qu'il est tout à fait possible de " +"demander un objet compilateur Unix sous Windows, et un objet compilateur " +"Microsoft sous Unix. Si vous fournissez une valeur pour *compiler*, *plat* " +"est ignoré." #: ../Doc/distutils/apiref.rst:357 msgid "" @@ -685,6 +753,10 @@ msgid "" "be implemented by real compiler classes. The class also has some utility " "methods used by several compiler classes." msgstr "" +"La classe de base abstraite :class:`CCompiler` définit l'interface qui doit " +"être implémentée par des classes de compilateur concrètes. La classe " +"possède également quelques méthodes utilitaires utilisées par plusieurs " +"classes de compilateurs." #: ../Doc/distutils/apiref.rst:367 msgid "" @@ -696,6 +768,14 @@ msgid "" "individual files are treated, most of those attributes may be varied on a " "per-compilation or per-link basis." msgstr "" +"L'idée de base derrière une classe abstraite de compilateur est que chaque " +"instance peut être utilisée pour toutes les étapes de compilation/lien dans " +"la construction d'un seul projet. Ainsi, les attributs communs à toutes ces " +"étapes de compilation et de liaison (ce qui inclut les répertoires, les " +"macros à définir, les bibliothèques à relier, etc.) sont des attributs de " +"l'instance du compilateur. Pour tenir compte des variations dans la façon " +"dont chaque fichier est traité, la plupart de ces attributs peuvent être " +"modifiés en fonction de chaque compilation ou de chaque lien." #: ../Doc/distutils/apiref.rst:375 msgid "" @@ -707,12 +787,22 @@ msgid "" "subclasses directly - use the :func:`distutils.CCompiler.new_compiler` " "factory function instead." msgstr "" +"Le constructeur de chaque sous-classe crée une instance de l'objet " +"*Compiler*. Les paramètres optionnels sont *verbose* (affiche plus " +"d'information à l'exécution), *dry_run* (ne pas exécuter les étapes) et " +"*force* (tout reconstruire, indépendamment des dépendances). Tous ces " +"paramètres ont la valeur par défaut ``0`` (désactivé). Notez que vous ne " +"voulez probablement pas instancier directement la classe :class:`CCompiler` " +"ou une de ses sous-classes. Utilisez plutôt la fonction génératrice :func:" +"`distutils.CCompiler.new_compiler`." #: ../Doc/distutils/apiref.rst:382 msgid "" "The following methods allow you to manually alter compiler options for the " "instance of the Compiler class." msgstr "" +"Les méthodes suivantes vous permettent de modifier manuellement les options " +"du compilateur de l'instance de la classe *Compiler*." #: ../Doc/distutils/apiref.rst:388 msgid "" @@ -720,6 +810,10 @@ msgid "" "The compiler is instructed to search directories in the order in which they " "are supplied by successive calls to :meth:`add_include_dir`." msgstr "" +"Ajoute *dir* à la liste des répertoires qui sont recherchés pour les " +"fichiers d'en-tête. Le compilateur est chargé de rechercher les répertoires " +"dans l'ordre dans lequel ils sont fournis par des appels successifs à :meth:" +"`add_include_dir`." #: ../Doc/distutils/apiref.rst:395 msgid "" @@ -729,6 +823,12 @@ msgid "" "`set_include_dirs`. This does not affect any list of standard include " "directories that the compiler may search by default." msgstr "" +"Affecte la liste des répertoires qui seront recherchés à la valeur de *dirs* " +"(une liste de chaînes). Remplace tous les appels précédents de :meth:" +"`add_include_dir` ; les appels suivants de :meth:`add_include_dir` " +"s'ajoutent à la liste transmise par :meth:`set_include_dirs`. Ceci n'affecte " +"pas la liste des répertoires d'inclusion standard que le compilateur peut " +"rechercher par défaut." #: ../Doc/distutils/apiref.rst:404 msgid "" @@ -738,6 +838,11 @@ msgid "" "actual filename will be inferred by the linker, the compiler, or the " "compiler class (depending on the platform)." msgstr "" +"Ajoute *libname* à la liste des bibliothèques qui seront incluses dans tous " +"les liens gérés par l'objet compilateur. Notez que *libname* ne *doit pas " +"être* le nom d'un fichier contenant une bibliothèque, mais le nom de la " +"bibliothèque elle-même : le nom du fichier sera déduit par l'éditeur de " +"liens, le compilateur ou la classe de compilation (selon la plate-forme)." #: ../Doc/distutils/apiref.rst:410 msgid "" @@ -746,6 +851,11 @@ msgid "" "perfectly valid to duplicate library names; the linker will be instructed to " "link against libraries as many times as they are mentioned." msgstr "" +"L'éditeur de liens est chargé de lier les bibliothèques dans l'ordre dans " +"lequel elles sont fournies à :meth:`add_library` et/ou :meth:" +"`set_libraries`. Il est parfaitement valide de dupliquer les noms de " +"bibliothèques ; l'éditeur de liens est chargé de créer des liens avec les " +"bibliothèques autant de fois que les noms sont mentionnées." #: ../Doc/distutils/apiref.rst:418 msgid "" @@ -753,6 +863,10 @@ msgid "" "compiler object to *libnames* (a list of strings). This does not affect any " "standard system libraries that the linker may include by default." msgstr "" +"Affecte la liste des bibliothèques à inclure dans tous les liens gérés par " +"l'objet compilateur avec la valeur de *libnames* (une liste des chaînes de " +"caractères). Ceci n'affecte pas les bibliothèques système standard que " +"l'éditeur de liens peut inclure par défaut." #: ../Doc/distutils/apiref.rst:425 msgid "" @@ -761,6 +875,11 @@ msgid "" "be instructed to search for libraries in the order they are supplied to :" "meth:`add_library_dir` and/or :meth:`set_library_dirs`." msgstr "" +"Ajoute *dir* à la liste des répertoires qui seront recherchés pour les " +"bibliothèques spécifiées dans :meth:`add_library` et :meth:`set_libraries`. " +"L'éditeur de liens est chargé de rechercher les bibliothèques dans l'ordre " +"dans lequel elles sont fournies à :meth:`add_library_dir` et/ou :meth:" +"`set_library_dirs`." #: ../Doc/distutils/apiref.rst:433 msgid "" @@ -768,12 +887,18 @@ msgid "" "This does not affect any standard library search path that the linker may " "search by default." msgstr "" +"Affecte la liste des répertoires de recherche de bibliothèque avec la valeur " +"de *dirs* (une liste de chaînes de caractères). Cela n'affecte pas le " +"chemin de recherche standard de la bibliothèque que l'éditeur de liens peut " +"rechercher par défaut." #: ../Doc/distutils/apiref.rst:440 msgid "" "Add *dir* to the list of directories that will be searched for shared " "libraries at runtime." msgstr "" +"Ajoute *dir* à la liste des répertoires qui seront recherchés par les " +"bibliothèques partagées au moment de l'exécution." #: ../Doc/distutils/apiref.rst:446 msgid "" @@ -781,6 +906,10 @@ msgid "" "*dirs* (a list of strings). This does not affect any standard search path " "that the runtime linker may search by default." msgstr "" +"Affecte la liste des répertoires pour rechercher les bibliothèques partagées " +"au moment de l'exécution à la valeur de *dirs* (une liste des chaînes de " +"caractères). Ceci n'affecte aucun chemin de recherche standard que " +"l'éditeur de liens d'exécution peut rechercher par défaut." #: ../Doc/distutils/apiref.rst:453 msgid "" @@ -789,6 +918,10 @@ msgid "" "supplied, then the macro will be defined without an explicit value and the " "exact outcome depends on the compiler used." msgstr "" +"Définit une macro de préprocesseur pour toutes les compilations gérées par " +"cet objet compilateur. Le paramètre optionnel *value* doit être une chaîne " +"de caractères ; s'il n'est pas fourni, alors la macro sera définie sans " +"valeur explicite et le résultat exact dépendra du compilateur utilisé." #: ../Doc/distutils/apiref.rst:463 msgid "" @@ -799,6 +932,12 @@ msgid "" "per-compilation basis (ie. in the call to :meth:`compile`), then that takes " "precedence." msgstr "" +"Désactive une macro de préprocesseur pour toutes les compilations gérées par " +"cet objet compilateur. Si la même macro est définie par :meth:" +"`define_macro` et ensuite désactivée par un appel à :meth:`undefine_macro`, " +"le dernier appel est prioritaire (y compris en cas de redéfinitions " +"multiples). Si la macro est redéfinie/désactivée par compilation (c'est-à-" +"dire dans l'appel à :meth:`compile`), alors cet appel prévaut." #: ../Doc/distutils/apiref.rst:473 msgid "" @@ -806,6 +945,10 @@ msgid "" "named library files or the output of \"resource compilers\") to be included " "in every link driven by this compiler object." msgstr "" +"Ajoute *objet* à la liste des fichiers objets (ou analogues, tels que les " +"fichiers de bibliothèque explicitement nommés ou la sortie des " +"\"compilateurs de ressources\") à inclure dans chaque lien qui est géré par " +"ce compilateur d'objets." #: ../Doc/distutils/apiref.rst:480 msgid "" @@ -813,12 +956,19 @@ msgid "" "*objects*. This does not affect any standard object files that the linker " "may include by default (such as system libraries)." msgstr "" +"Définit la liste des fichiers objets (ou analogues) à inclure dans chaque " +"lien à la valeur de *objects*. Ceci n'affecte pas les fichiers d'objets " +"standard que l'éditeur de liens peut inclure par défaut (comme les " +"bibliothèques système)." #: ../Doc/distutils/apiref.rst:484 msgid "" "The following methods implement methods for autodetection of compiler " "options, providing some functionality similar to GNU :program:`autoconf`." msgstr "" +"Les méthodes suivantes offre des services pour l'auto-détection des options " +"du compilateur. Elles offrent des fonctionnalités similaires à celles du " +"programme GNU :program:`autoconf`." #: ../Doc/distutils/apiref.rst:490 msgid "" @@ -826,6 +976,9 @@ msgid "" "attributes :attr:`language_map` (a dictionary), and :attr:`language_order` " "(a list) to do the job." msgstr "" +"Détecte le langage d'un fichier donné, ou d'une liste de fichiers. Utilise " +"les attributs d'instance :attr:`language_map` (un dictionnaire) et :attr:" +"`language_order` (une liste) pour faire le travail." #: ../Doc/distutils/apiref.rst:497 msgid "" @@ -834,6 +987,11 @@ msgid "" "debugging version (if that makes sense on the current platform). Return " "``None`` if *lib* wasn't found in any of the specified directories." msgstr "" +"Recherche dans la liste des répertoires spécifiés un fichier de bibliothèque " +"statique ou partagée *lib* et renvoie le chemin complet vers ce fichier. Si " +"*debug* est vrai, recherche une version de débogage (si cela a du sens sur " +"la plate-forme actuelle). Renvoie ``None`` si *lib* n'a pas été trouvé dans " +"l'un des répertoires spécifiés." #: ../Doc/distutils/apiref.rst:505 msgid "" @@ -842,24 +1000,35 @@ msgid "" "environment by providing additional include files and paths and libraries " "and paths." msgstr "" +"Renvoie un booléen indiquant si *funcname* est pris en charge sur la plate-" +"forme courante. Les arguments optionnels peuvent être utilisés pour " +"enrichir l'environnement de compilation en fournissant des fichiers, des " +"répertoires de fichiers, des bibliothèques, des répertoires de bibliothèques " +"supplémentaires" #: ../Doc/distutils/apiref.rst:513 msgid "" "Return the compiler option to add *dir* to the list of directories searched " "for libraries." msgstr "" +"Renvoie l'option de compilation pour ajouter *dir* à la liste des " +"répertoires recherchés pour les bibliothèques." #: ../Doc/distutils/apiref.rst:519 msgid "" "Return the compiler option to add *lib* to the list of libraries linked into " "the shared library or executable." msgstr "" +"Renvoie l'option de compilation pour ajouter *lib* à la liste des " +"bibliothèques liées à la bibliothèque partagée ou à l'exécutable." #: ../Doc/distutils/apiref.rst:525 msgid "" "Return the compiler option to add *dir* to the list of directories searched " "for runtime libraries." msgstr "" +"Renvoie l'option de compilation pour ajouter *dir* à la liste des " +"répertoires recherchés par les bibliothèques d'exécution." #: ../Doc/distutils/apiref.rst:531 msgid "" @@ -868,6 +1037,11 @@ msgid "" "specified here depends on the compiler class (via the 'executables' class " "attribute), but most will have:" msgstr "" +"Définit les exécutables (et leurs options) qui seront exécutés pour " +"effectuer les différentes étapes de compilation. L'ensemble exact des " +"exécutables qui peuvent être spécifiés ici dépend de la classe du " +"compilateur (via l'attribut de classe *executables*), mais la plupart " +"utilisent :" #: ../Doc/distutils/apiref.rst:537 msgid "attribute" @@ -875,35 +1049,37 @@ msgstr "attribut" #: ../Doc/distutils/apiref.rst:539 msgid "*compiler*" -msgstr "" +msgstr "*compiler*" #: ../Doc/distutils/apiref.rst:539 msgid "the C/C++ compiler" -msgstr "" +msgstr "Le compilateur C/C++." #: ../Doc/distutils/apiref.rst:541 msgid "*linker_so*" -msgstr "" +msgstr "*linker_so*" #: ../Doc/distutils/apiref.rst:541 msgid "linker used to create shared objects and libraries" msgstr "" +"L'éditeur de liens utilisé pour la création d'objets ou de bibliothèques " +"partagées." #: ../Doc/distutils/apiref.rst:544 msgid "*linker_exe*" -msgstr "" +msgstr "*linker_exe*" #: ../Doc/distutils/apiref.rst:544 msgid "linker used to create binary executables" -msgstr "" +msgstr "L'éditeur de lien utilisé pour créer des exécutables binaires." #: ../Doc/distutils/apiref.rst:546 msgid "*archiver*" -msgstr "" +msgstr "*archiver*" #: ../Doc/distutils/apiref.rst:546 msgid "static library creator" -msgstr "" +msgstr "Créateur de bibliothèque statique." #: ../Doc/distutils/apiref.rst:549 msgid "" @@ -959,6 +1135,11 @@ msgid "" "to :file:`foo/bar.o` (for a Unix implementation); if *output_dir* is " "*build*, then it would compile to :file:`build/foo/bar.o`." msgstr "" +"Si *output_dir* est donné, les fichiers objets seront placés à l'intérieur, " +"tout en conservant leurs chemins relatifs. Par exemple, le :file:`truc/" +"machin.c` compile normalement en :file:`truc/machin.o` (pour une " +"implémentation Unix) ; si *output_dir* a la valeur *build*, alors il " +"compilera en :file:`build/truc/machin.o`." #: ../Doc/distutils/apiref.rst:575 msgid "" @@ -968,18 +1149,30 @@ msgid "" "explicit value. The 1-tuple case undefines a macro. Later definitions/" "redefinitions/undefinitions take precedence." msgstr "" +"Le paramètre *macros*, s'il est donné, doit être une liste de définitions de " +"macros. Une définition de macro est soit un couple ``(nom, valeur)``, ou un " +"singleton ``(nom,)``. Le premier définit une macro ; si la valeur est " +"``None``, la macro est définie sans valeur explicite. L'utilisation d'un " +"singleton désactive la macro. Les définitions, redéfinitions ou " +"désactivations ultérieures priment." #: ../Doc/distutils/apiref.rst:581 msgid "" "*include_dirs*, if given, must be a list of strings, the directories to add " "to the default include file search path for this compilation only." msgstr "" +"*include_dirs* doit être une liste de chaînes de caractères contenant les " +"répertoires à ajouter au chemin de recherche par défaut pour cette " +"compilation uniquement." #: ../Doc/distutils/apiref.rst:584 msgid "" "*debug* is a boolean; if true, the compiler will be instructed to output " "debug symbols in (or alongside) the object file(s)." msgstr "" +"*debug* est un booléen ; si sa valeur est *vraie*, le compilateur est chargé " +"d'afficher les symboles de débogage dans (ou à côté) du ou des fichiers " +"objets." #: ../Doc/distutils/apiref.rst:587 msgid "" @@ -991,6 +1184,13 @@ msgid "" "an escape hatch for those occasions when the abstract compiler framework " "doesn't cut the mustard." msgstr "" +"*extra_preargs* et *extra_postargs* dépendent de l'implémentation. Sur les " +"plates-formes qui ont une ligne de commande (par exemple Unix, DOS/Windows), " +"il s'agit très probablement de listes de chaînes de caractères. Ce sont des " +"arguments supplémentaires à ajouter avant (*preargs*) et après (*postargs*) " +"la ligne de commande du compilateur. Sur d'autres plates-formes, consultez " +"la documentation de la classe d'implémentation. Ces paramètres sont exposés " +"pour permettre de sortir du cadre de la classe abstraite en cas de nécessité." #: ../Doc/distutils/apiref.rst:594 msgid "" @@ -999,10 +1199,14 @@ msgid "" "be recompiled. This supports dependency tracking, but only at a coarse " "granularity." msgstr "" +"*depends* est une liste de noms de fichiers dont dépendent toutes les " +"cibles. Si un fichier source est plus ancien qu'un fichier dans *depends*, " +"alors le fichier source sera recompilé. Cela permet un suivi des " +"dépendances à un niveau macro. " #: ../Doc/distutils/apiref.rst:599 msgid "Raises :exc:`CompileError` on failure." -msgstr "" +msgstr "Lève :exc:`CompileError` en cas d'échec." #: ../Doc/distutils/apiref.rst:604 msgid "" @@ -1012,6 +1216,12 @@ msgid "" "`set_link_objects`, the libraries supplied to :meth:`add_library` and/or :" "meth:`set_libraries`, and the libraries supplied as *libraries* (if any)." msgstr "" +"Relie un ensemble d'éléments pour créer un fichier de bibliothèque statique. " +"L'ensemble d'éléments se compose de la liste des fichiers d'objets fournis " +"comme *objets*, des fichiers d'objets supplémentaires fournis à :meth:" +"`add_link_object` et/ou :meth:`set_link_objects`, des bibliothèques fournies " +"à :meth:`add_library` et/ou :meth:`set_libraries` et les bibliothèques " +"fournies à *libraries* (le cas échéant)." #: ../Doc/distutils/apiref.rst:610 msgid "" @@ -1019,6 +1229,9 @@ msgid "" "be inferred from the library name. *output_dir* is the directory where the " "library file will be put." msgstr "" +"*output_libname* doit être un nom de bibliothèque et non un nom de fichier ; " +"le nom de fichier sera déduit du nom de bibliothèque. *output_dir* est le " +"répertoire dans lequel le fichier bibliothèque sera placé." #: ../Doc/distutils/apiref.rst:616 msgid "" @@ -1026,22 +1239,31 @@ msgid "" "library (note that on most platforms, it is the compile step where this " "matters: the *debug* flag is included here just for consistency)." msgstr "" +"*debug* est un booléen ; si sa valeur est *vraie*, les informations de " +"débogage seront incluses dans la bibliothèque (notez que sur la plupart des " +"plateformes, c'est à l'étape de compilation que ce paramètre est pris en " +"compte : le paramètre *debug* est inclus ici pour assurer une cohérence)." #: ../Doc/distutils/apiref.rst:620 ../Doc/distutils/apiref.rst:662 msgid "" "*target_lang* is the target language for which the given objects are being " "compiled. This allows specific linkage time treatment of certain languages." msgstr "" +"*target_lang* est le langage cible pour lequel les objets donnés sont " +"compilés. Cela permet un traitement spécifique du temps de liaison dans " +"certains langages." #: ../Doc/distutils/apiref.rst:623 msgid "Raises :exc:`LibError` on failure." -msgstr "" +msgstr "Lève :exc:`LibError` en cas d'échec." #: ../Doc/distutils/apiref.rst:628 msgid "" "Link a bunch of stuff together to create an executable or shared library " "file." msgstr "" +"Relie un ensemble d'éléments pour créer un fichier exécutable ou une " +"bibliothèque partagée." #: ../Doc/distutils/apiref.rst:630 msgid "" @@ -1050,6 +1272,10 @@ msgid "" "supplied, *output_filename* is relative to it (i.e. *output_filename* can " "provide directory components if needed)." msgstr "" +"L'ensemble d'éléments se compose de la liste des fichiers objets fournis " +"comme *objets*. *output_filename* devrait être un nom de fichier. Si " +"*output_dir* est fourni, *output_filename* lui est relatif (c'est-à-dire que " +"*output_filename* peut être un chemin vers un fichier )." #: ../Doc/distutils/apiref.rst:635 msgid "" @@ -1060,6 +1286,13 @@ msgid "" "means the linker will look in that specific directory rather than searching " "all the normal locations." msgstr "" +"*libraries* est une liste de bibliothèques avec lesquelles il est possible " +"d'établir des liens. Ce sont des noms de bibliothèques, pas des noms de " +"fichiers, puisqu'ils sont traduits en noms de fichiers d'une manière " +"spécifique à la plate-forme (par exemple *truc* devient :file:`libtruc.a` " +"sous Unix et :file:`truc.lib` sous DOS/Windows). Cependant, ils peuvent " +"inclure un chemin, ce qui signifie que l'éditeur de liens cherchera dans ce " +"chemin spécifique plutôt que de rechercher tous les emplacements standard." #: ../Doc/distutils/apiref.rst:642 msgid "" @@ -1071,12 +1304,23 @@ msgid "" "the shared library and used to search for other shared libraries that \\*it" "\\* depends on at run-time. (This may only be relevant on Unix.)" msgstr "" +"*library_dirs*, s'il est fourni, doit être une liste de répertoires à " +"rechercher pour les bibliothèques qui ont été spécifiées comme des " +"bibliothèques pures (c'est-à-dire sans aucun répertoire). Celles-ci " +"s'ajoutent aux valeurs par défaut du système et à celles fournies à :meth:" +"`add_library_dir` et/ou :meth:`set_library_dirs`. *runtime_library_dirs* " +"est une liste de répertoires qui seront intégrés dans la bibliothèque " +"partagée et utilisés pour rechercher d'autres bibliothèques partagées dont " +"elle dépend à l'exécution. (Ceci est probablement valable uniquement sous " +"UNIX.)" #: ../Doc/distutils/apiref.rst:650 msgid "" "*export_symbols* is a list of symbols that the shared library will export. " "(This appears to be relevant only on Windows.)" msgstr "" +"*export_symbols* est une liste de symboles que la bibliothèque partagée va " +"exporter. (Ceci est probablement valable uniquement sous Window.)" #: ../Doc/distutils/apiref.rst:653 msgid "" @@ -1085,6 +1329,10 @@ msgid "" "to :meth:`create_static_lib`, which includes a *debug* flag mostly for " "form's sake)." msgstr "" +"*debug* s'utilise comme pour :meth:`compile` et :meth:`create_static_lib`, " +"avec la nuance qu'elle a ici une importance sur la plupart des plateformes " +"(par opposition à :meth:`create_static_lib` qui inclut une option *debug* " +"pour se conformer à l'interface)." #: ../Doc/distutils/apiref.rst:658 msgid "" @@ -1092,10 +1340,13 @@ msgid "" "course that they supply command-line arguments for the particular linker " "being used)." msgstr "" +"*extra_preargs* et *extra_postargs* s'utilisent comme pour :meth:`compile` " +"(sauf bien sûr qu'ils fournissent des arguments à la ligne de commande pour " +"l'éditeur de liens spécifique utilisé)." #: ../Doc/distutils/apiref.rst:665 msgid "Raises :exc:`LinkError` on failure." -msgstr "" +msgstr "Lève :exc:`LinkError` en cas d'échec." #: ../Doc/distutils/apiref.rst:670 msgid "" @@ -1103,6 +1354,9 @@ msgid "" "while *objects* are a list of object filenames to link in. Other arguments " "are as for the :meth:`link` method." msgstr "" +"Lie un exécutable. *output_progname* est le nom de l'exécutable du fichier, " +"tandis que *objects* est une liste de noms de fichiers objets à lier. Les " +"autres arguments sont les mêmes que pour la méthode :meth:`link`." #: ../Doc/distutils/apiref.rst:677 msgid "" @@ -1110,6 +1364,10 @@ msgid "" "while *objects* is a list of object filenames to link in. Other arguments " "are as for the :meth:`link` method." msgstr "" +"Lie une bibliothèque partagée. *output_libname* est le nom de la " +"bibliothèque de sortie, tandis que *objects* est une liste de noms de " +"fichiers d'objets à lier. Les autres arguments sont les mêmes que pour la " +"méthode :meth:`link`." #: ../Doc/distutils/apiref.rst:684 msgid "" @@ -1117,6 +1375,9 @@ msgid "" "that will be created, while *objects* is a list of object filenames to link " "in. Other arguments are as for the :meth:`link` method." msgstr "" +"Lie un objet partagé. *output_filename* est le nom de l'objet partagé qui " +"sera créé, tandis que *objects* est une liste de noms de fichiers d'objets à " +"lier. Les autres arguments sont les mêmes que pour la méthode :meth:`link`." #: ../Doc/distutils/apiref.rst:691 msgid "" @@ -1127,16 +1388,25 @@ msgid "" "`undefine_macro`. *include_dirs* is a list of directory names that will be " "added to the default list, in the same way as :meth:`add_include_dir`." msgstr "" +"Prétraitement d'un seul fichier source C/C++, désigné dans *source*. La " +"sortie du traitement est écrite dans un fichier nommé *output_file*, ou dans " +"*stdout* si *output_file* n'est pas fourni. *macros* est une liste de " +"définitions de macros comme pour :meth:`compile`, qui vont s'ajouter aux " +"macros définies avec :meth:`define_macro` et :meth:`undefine_macro`. " +"*include_dirs* est une liste de noms de répertoires qui seront ajoutés à la " +"liste par défaut, de la même manière que :meth:`add_include_dir`." #: ../Doc/distutils/apiref.rst:698 msgid "Raises :exc:`PreprocessError` on failure." -msgstr "" +msgstr "Lève :exc:`PreprocessError` en cas d'échec." #: ../Doc/distutils/apiref.rst:700 msgid "" "The following utility methods are defined by the :class:`CCompiler` class, " "for use by the various concrete subclasses." msgstr "" +"Les méthodes utilitaires suivantes sont définies par la classe :class:" +"`CCompiler`, à l'usage des différentes sous-classes concrètes." #: ../Doc/distutils/apiref.rst:706 msgid "" @@ -1144,6 +1414,9 @@ msgid "" "for non-Windows platforms this is the same as the basename, while Windows " "will get a :file:`.exe` added." msgstr "" +"Renvoie le nom de fichier de l'exécutable pour un *nom de base* donné. " +"Généralement, pour les plates-formes non Windows, c'est le même nom que le " +"nom de base, tandis que sur Windows l'extension :file:`.exe` sera ajouté." #: ../Doc/distutils/apiref.rst:713 msgid "" @@ -1152,17 +1425,24 @@ msgid "" "form :file:`liblibname.a`, while a *lib_type* of ``'dynamic'`` will be of " "the form :file:`liblibname.so`." msgstr "" +"Renvoie le nom de fichier pour le nom de bibliothèque donné sur la plate-" +"forme actuelle. Sous Unix, une bibliothèque avec un *lib_type* de type " +"``static`` sera généralement de la forme :file:`liblibname.a`, tandis qu'un " +"*lib_type* de type ``dynamic`` sera de la forme :file:`liblibname.so`." #: ../Doc/distutils/apiref.rst:721 msgid "" "Returns the name of the object files for the given source files. " "*source_filenames* should be a list of filenames." msgstr "" +"Renvoie le nom des fichiers objets pour les fichiers sources donnés. " +"*source_filenames* doit être une liste de noms de fichiers." #: ../Doc/distutils/apiref.rst:727 msgid "" "Returns the name of a shared object file for the given file name *basename*." msgstr "" +"Renvoie le nom d'un fichier objet partagé pour le nom de fichier *basename*." #: ../Doc/distutils/apiref.rst:732 msgid "" @@ -1170,46 +1450,59 @@ msgid "" "function *func* with the given arguments *args*, after logging and taking " "into account the *dry_run* flag." msgstr "" +"Invoque :func:`distutils.util.execute`. Cette méthode invoque une fonction " +"Python *func* avec les arguments *args* , après journalisation et prise en " +"compte de l'option *dry_run*." #: ../Doc/distutils/apiref.rst:739 msgid "" "Invokes :func:`distutils.util.spawn`. This invokes an external process to " "run the given command." msgstr "" +"Invoque :func:`distutils.util.spawn`. Invoque un processus externe pour " +"exécuter la commande donnée." #: ../Doc/distutils/apiref.rst:745 msgid "" "Invokes :func:`distutils.dir_util.mkpath`. This creates a directory and any " "missing ancestor directories." msgstr "" +"Invoque :func:`distutils.dir_util.mkpath`. Crée un répertoire et tous les " +"répertoires parents manquants." #: ../Doc/distutils/apiref.rst:751 msgid "Invokes :meth:`distutils.file_util.move_file`. Renames *src* to *dst*." -msgstr "" +msgstr "Invoque :meth:`distutils.file_util.move_file`. Renomme *src* en *dst*." #: ../Doc/distutils/apiref.rst:756 msgid "Write a message using :func:`distutils.log.debug`." -msgstr "" +msgstr "Écrit un message en utilisant :func:`distutils.log.debug`." #: ../Doc/distutils/apiref.rst:761 msgid "Write a warning message *msg* to standard error." msgstr "" +"Écris un message d'avertissement *msg* dans la sortie d'erreur standard." #: ../Doc/distutils/apiref.rst:766 msgid "" "If the *debug* flag is set on this :class:`CCompiler` instance, print *msg* " "to standard output, otherwise do nothing." msgstr "" +"Si l'option *debug* est activée pour cette instance de :class:`CCompiler`, " +"affiche *msg* sur la sortie standard, sinon rien ne s'affiche." #: ../Doc/distutils/apiref.rst:778 msgid ":mod:`distutils.unixccompiler` --- Unix C Compiler" -msgstr "" +msgstr ":mod:`distutils.unixccompiler` — Compilateur C Unix" #: ../Doc/distutils/apiref.rst:784 msgid "" "This module provides the :class:`UnixCCompiler` class, a subclass of :class:" "`CCompiler` that handles the typical Unix-style command-line C compiler:" msgstr "" +"Ce module fournit la classe :class:`UnixCCompiler`, une sous-classe de la " +"classe :class:`CCompiler` qui gère les compilateurs C ayant une interface en " +"ligne de commande conforme au standard Unix :" #: ../Doc/distutils/apiref.rst:787 msgid "macros defined with :option:`-Dname[=value]`" @@ -1236,12 +1529,17 @@ msgid "" "compile handled by :program:`cc` (or similar) executable with :option:`!-c` " "option: compiles :file:`.c` to :file:`.o`" msgstr "" +"compilation gérée par :program:`cc` (ou similaire) exécutable avec l'option :" +"option:`!-c` compile :file:`.c` vers :file:`.o`." #: ../Doc/distutils/apiref.rst:800 msgid "" "link static library handled by :program:`ar` command (possibly with :program:" "`ranlib`)" msgstr "" +"édition de liens pour une bibliothèque statique gérée par le programme en " +"ligne de commande :program:`ar` (éventuellement avec le programme :program:" +"`ranlib`)." #: ../Doc/distutils/apiref.rst:803 msgid "link shared library handled by :program:`cc` :option:`-shared`" @@ -1249,7 +1547,7 @@ msgstr "" #: ../Doc/distutils/apiref.rst:807 msgid ":mod:`distutils.msvccompiler` --- Microsoft Compiler" -msgstr "" +msgstr ":mod:`distutils.msvccompiler` — Compilateur Microsoft" #: ../Doc/distutils/apiref.rst:813 msgid "" @@ -1271,20 +1569,31 @@ msgid "" "installed; *DISTUTILS_USE_SDK* indicates that the distutils user has made an " "explicit choice to override the compiler selection by :class:`MSVCCompiler`." msgstr "" +"La classe :class:`MSVCCompiler` sélectionnera normalement le bon " +"compilateur, éditeur de liens, etc. Pour remplacer ces choix, les variables " +"d'environnement *DISTUTILS_USE_SDK* et *MSSdk* doivent être toutes les deux " +"définies. *MSSdk* indique que l'environnement courant a été configuré par le " +"script ``SetEnv.Cmd`` du kit de développement logiciel (*SDK*), ou que les " +"variables d'environnement ont été enregistrées lorsque le kit a été " +"installé ; *DISTUTILS_USE_SDK* indique que l'utilisateur de *distutils* a " +"choisi explicitement de remplacer le compilateur utilisé par :class:" +"`MSVCCompiler`." #: ../Doc/distutils/apiref.rst:830 msgid ":mod:`distutils.bcppcompiler` --- Borland Compiler" -msgstr "" +msgstr ":mod:`distutils.bcppcompiler` — Compilateur Borland" #: ../Doc/distutils/apiref.rst:835 msgid "" "This module provides :class:`BorlandCCompiler`, a subclass of the abstract :" "class:`CCompiler` class for the Borland C++ compiler." msgstr "" +"Ce module fournit :class:`BorlandCCompiler`, une sous-classe de la classe " +"abstraite :class:`CCompiler` classe pour le compilateur Borland C++." #: ../Doc/distutils/apiref.rst:840 msgid ":mod:`distutils.cygwincompiler` --- Cygwin Compiler" -msgstr "" +msgstr ":mod:`distutils.cygwincompiler` — Compilateur Cygwin" #: ../Doc/distutils/apiref.rst:845 msgid "" @@ -1293,6 +1602,10 @@ msgid "" "Windows. It also contains the Mingw32CCompiler class which handles the " "mingw32 port of GCC (same as cygwin in no-cygwin mode)." msgstr "" +"Ce module fournit la classe :class:`CygwinCCompiler`, une sous-classe de la " +"classe :class:`UnixCCompiler` qui gère *Cygwin*, le portage du compilateur " +"GNU C sur Windows. Il contient également la classe Mingw32CCompiler qui " +"gère le portage *mingw32* de GCC (comme *cygwin* en mode *no-cygwin*)." #: ../Doc/distutils/apiref.rst:852 msgid ":mod:`distutils.emxccompiler` --- OS/2 EMX Compiler" @@ -1306,13 +1619,15 @@ msgstr "" #: ../Doc/distutils/apiref.rst:863 msgid ":mod:`distutils.archive_util` --- Archiving utilities" -msgstr "" +msgstr ":mod:`distutils.archive_util` — Utilitaires d'archivage" #: ../Doc/distutils/apiref.rst:869 msgid "" "This module provides a few functions for creating archive files, such as " "tarballs or zipfiles." msgstr "" +"Ce module fournit quelques fonctions pour créer des fichiers d'archive, tels " +"que des archives aux formats *tarballs* ou *zipfiles*." #: ../Doc/distutils/apiref.rst:875 msgid "" @@ -1348,10 +1663,16 @@ msgid "" "available, raises :exc:`DistutilsExecError`. Returns the name of the " "output zip file." msgstr "" +"Crée un fichier zip à partir de tous les fichiers dans et sous *base_dir*. " +"Le fichier zip de sortie est nommé *base_name* + :file:`.zip`. Utilise soit " +"le module Python :mod:`zipfile` (si disponible) ou l'utilitaire InfoZIP :" +"file:`zip` (s'il est installé et trouvé sur le chemin de recherche par " +"défaut). Si aucun des deux outils n'est disponible, lève :exc:" +"`DistutilsExecError`. Renvoie le nom du fichier zip de sortie." #: ../Doc/distutils/apiref.rst:906 msgid ":mod:`distutils.dep_util` --- Dependency checking" -msgstr "" +msgstr ":mod:`distutils.dep_util` — Vérification des dépendances" #: ../Doc/distutils/apiref.rst:912 msgid "" @@ -1359,6 +1680,10 @@ msgid "" "dependency of files and groups of files; also, functions based entirely on " "such timestamp dependency analysis." msgstr "" +"Ce module fournit des fonctions permettant d'effectuer des tests de " +"dépendance simples, basés sur les horodatages de fichiers et de groupes de " +"fichiers, ainsi que des fonctionnalités entièrement basées sur ces analyses " +"de dépendance par rapport aux horodatages." #: ../Doc/distutils/apiref.rst:919 msgid "" @@ -1367,6 +1692,10 @@ msgid "" "*target* is the same age or newer than *source*. Raise :exc:" "`DistutilsFileError` if *source* does not exist." msgstr "" +"Renvoie la valeur *true* si *source* existe et a été modifiée plus récemment " +"que *target*, ou si *source* existe et *target* n'existe pas. Renvoie la " +"valeur *false* si les deux existent et que *target* est aussi ou plus récent " +"que *source*. Lève :exc:`DistutilsFileError` si *source* n'existe pas." #: ../Doc/distutils/apiref.rst:927 msgid "" @@ -1375,6 +1704,10 @@ msgid "" "where source is newer than target, according to the semantics of :func:" "`newer`." msgstr "" +"Parcourt en parallèle deux listes de noms de fichiers, en vérifiant si " +"chaque source est plus récente que sa cible correspondante. Renvoie une " +"paire de listes (*sources*, *cibles*) où la source est plus récente que la " +"cible, selon la sémantique de :func:`newer`." #: ../Doc/distutils/apiref.rst:936 msgid "" @@ -1393,12 +1726,15 @@ msgstr "" #: ../Doc/distutils/apiref.rst:949 msgid ":mod:`distutils.dir_util` --- Directory tree operations" msgstr "" +":mod:`distutils.dir_util` --- Opérations sur l'arborescence des répertoires" #: ../Doc/distutils/apiref.rst:955 msgid "" "This module provides functions for operating on directories and trees of " "directories." msgstr "" +"Ce module fournit des fonctions pour travailler sur des répertoires et des " +"arborescences de répertoires." #: ../Doc/distutils/apiref.rst:961 msgid "" @@ -1410,6 +1746,14 @@ msgid "" "is true, print a one-line summary of each mkdir to stdout. Return the list " "of directories actually created." msgstr "" +"Crée un répertoire et tous les répertoires parents manquants. Si le " +"répertoire existe déjà (ou si *name* est la chaîne vide, c'est-à-dire le " +"répertoire courant, qui existe bien sûr), alors ne fait rien. Lève :exc:" +"`DistutilsFileError` s'il n'est pas possible de créer un répertoire en cours " +"de route (par exemple, un sous-chemin existe, mais est un fichier plutôt " +"qu'un répertoire). Si *verbose* est vrai, affiche un résumé d'une ligne de " +"chaque *mkdir* vers *stdout*. Renvoie la liste des répertoires réellement " +"créés." #: ../Doc/distutils/apiref.rst:972 msgid "" @@ -1420,6 +1764,12 @@ msgid "" "be created if it doesn't already exist. *mode*, *verbose* and *dry_run* " "flags are as for :func:`mkpath`." msgstr "" +"Crée tous les répertoires vides sous *base_dir* nécessaires pour placer " +"*files*. *base_dir* est le nom d'un répertoire qui n'existe pas encore " +"nécessairement ; *files* est une liste de noms de fichiers relatifs à " +"*base_dir*. *base_dir* + la partie répertoire de chaque fichier dans *files* " +"est créée si elle n'existe pas déjà. Les options *mode*, *verbose* et " +"*dry_run* sont les mêmes que pour :func:`mkpath`." #: ../Doc/distutils/apiref.rst:982 msgid "" @@ -1443,6 +1793,13 @@ msgid "" "destination of the symlink will be copied. *update* and *verbose* are the " "same as for :func:`copy_file`." msgstr "" +"Les modes *preserve_mode* et *preserve_times* sont les mêmes que pour :func:" +"`distutils.file_util.copy_file` ; il faut savoir que cela ne concerne que " +"les fichiers réguliers, et non les dossiers. Si *preserve_symlinks* est " +"vrai, les liens symboliques seront copiés en tant que liens symboliques (sur " +"les plateformes qui les gèrent !); sinon (par défaut), la destination du " +"lien sera copiée. *update* et *verbose* sont les mêmes que pour :func:" +"`copy_file`." #: ../Doc/distutils/apiref.rst:1000 msgid "" @@ -1453,7 +1810,7 @@ msgstr "" #: ../Doc/distutils/apiref.rst:1004 msgid "NFS files are ignored." -msgstr "" +msgstr "Les fichiers NFS sont ignorés." #: ../Doc/distutils/apiref.rst:1010 msgid "" @@ -1461,16 +1818,21 @@ msgid "" "Any errors are ignored (apart from being reported to ``sys.stdout`` if " "*verbose* is true)." msgstr "" +"Supprime récursivement *directory* et tous les fichiers et répertoires en " +"dessous. Toutes les erreurs sont ignorées (sauf si *verbose* est vrai, elles " +"sont affichées sur ``sys.stdout``)." #: ../Doc/distutils/apiref.rst:1016 msgid ":mod:`distutils.file_util` --- Single file operations" -msgstr "" +msgstr ":mod:`distutils.file_util` — Traitements mono-fichier" #: ../Doc/distutils/apiref.rst:1022 msgid "" "This module contains some utility functions for operating on individual " "files." msgstr "" +"Ce module contient quelques fonctions de service pour travailler sur des " +"fichiers individuels." #: ../Doc/distutils/apiref.rst:1027 msgid "" @@ -1483,6 +1845,14 @@ msgid "" "If *update* is true, *src* will only be copied if *dst* does not exist, or " "if *dst* does exist but is older than *src*." msgstr "" +"Copie le fichier *src* dans *dst*. Si *dst* est un répertoire, alors *src* y " +"est copié avec le même nom ; sinon, il faut que ce soit un nom de fichier. " +"Si *preserve_mode* est vrai (par défaut), le mode du fichier (son type et " +"ses bits de permission, ou ce qui est analogue sur la plate-forme actuelle) " +"sont copiés. Si *preserve_times* est vrai (par défaut), les horodatages de " +"la dernière modification et du dernier accès sont également copiés. Si " +"*update* est vrai, *src* ne peut être copié que si *dst* n'existe pas, ou si " +"*dst* existe mais est plus ancien que *src*." #: ../Doc/distutils/apiref.rst:1036 msgid "" @@ -1493,6 +1863,13 @@ msgid "" "hard or symbolic linking is available. It uses :func:`_copy_file_contents` " "to copy file contents." msgstr "" +"*link* permets de créer des liens physiques (en utilisant :func:`os.link`) " +"ou symboliques (en utilisant :func:`os.symlink`) au lieu de les copier : " +"paramétrez la valeur a ``'hard'`` ou ``'sym'`` ; si elle vaut ``None`` (par " +"défaut), les fichiers sont copiés. Ne définissez pas *link* sur les systèmes " +"qui ne les gèrent pas : :func:`copy_file` ne vérifie pas si des liens " +"symboliques ou physiques sont disponibles. La fonction :func:" +"`_copy_file_contents` est utilisée pour copier le contenu des fichiers." #: ../Doc/distutils/apiref.rst:1043 msgid "" @@ -1500,6 +1877,9 @@ msgid "" "the output file, and *copied* is true if the file was copied (or would have " "been copied, if *dry_run* true)." msgstr "" +"Renvoie un couple ``(dest_name, copied)`` : *dest_name* est le nom réel du " +"fichier de sortie, et *copied* est vrai si le fichier a été copié (ou aurait " +"été copié, si *dry_run* est vrai)." #: ../Doc/distutils/apiref.rst:1057 msgid "" @@ -1507,28 +1887,37 @@ msgid "" "into it with the same name; otherwise, *src* is just renamed to *dst*. " "Returns the new full name of the file." msgstr "" +"Déplace le fichier *src* vers *dst*. Si *dst* est un répertoire, le fichier " +"y est déplacé avec le même nom ; sinon, *src* est simplement renommé *dst*. " +"Renvoie le nouveau nom complet du fichier." #: ../Doc/distutils/apiref.rst:1063 msgid "" "Handles cross-device moves on Unix using :func:`copy_file`. What about " "other systems?" msgstr "" +"Gère les déplacements inter-périphériques sous Unix en utilisant :func:" +"`copy_file`. Qu'en est-il sur les autres systèmes ?" #: ../Doc/distutils/apiref.rst:1069 msgid "" "Create a file called *filename* and write *contents* (a sequence of strings " "without line terminators) to it." msgstr "" +"Crée un fichier appelé *filename* et y écrit *contents* (une séquence de " +"chaînes sans terminaison de ligne)." #: ../Doc/distutils/apiref.rst:1074 msgid ":mod:`distutils.util` --- Miscellaneous other utility functions" -msgstr "" +msgstr ":mod:`distutils.util` — Autres fonctions de service" #: ../Doc/distutils/apiref.rst:1080 msgid "" "This module contains other assorted bits and pieces that don't fit into any " "other utility module." msgstr "" +"Ce module contient d'autres éléments qui ne correspondent à aucun autre " +"module de service." #: ../Doc/distutils/apiref.rst:1086 msgid "" @@ -1543,19 +1932,19 @@ msgstr "" #: ../Doc/distutils/apiref.rst:1094 msgid "Examples of returned values:" -msgstr "" +msgstr "Exemples de valeurs renvoyées :" #: ../Doc/distutils/apiref.rst:1096 msgid "``linux-i586``" -msgstr "" +msgstr "``linux-i586``" #: ../Doc/distutils/apiref.rst:1097 msgid "``linux-alpha``" -msgstr "" +msgstr "``linux-alpha``" #: ../Doc/distutils/apiref.rst:1098 msgid "``solaris-2.6-sun4u``" -msgstr "" +msgstr "``solaris-2.6-sun4u``" #: ../Doc/distutils/apiref.rst:1099 msgid "``irix-5.3``" @@ -1568,6 +1957,8 @@ msgstr "" #: ../Doc/distutils/apiref.rst:1102 msgid "For non-POSIX platforms, currently just returns ``sys.platform``." msgstr "" +"Pour les plates-formes qui ne sont pas POSIX, renvoie simplement ``sys." +"platform``." #: ../Doc/distutils/apiref.rst:1104 msgid "" @@ -1575,6 +1966,10 @@ msgid "" "binaries will run (that is, the value of ``MACOSX_DEPLOYMENT_TARGET`` during " "the build of Python), not the OS version of the current system." msgstr "" +"Pour les systèmes Mac OS X, la version du système d'exploitation correspond " +"à la version minimale sur laquelle les binaires pourront être exécutés " +"(c'est-à-dire la valeur de ``MACOSX_DEPLOYMENT_TARGET`` pendant la " +"compilation de Python), et non la version du système actuel." #: ../Doc/distutils/apiref.rst:1108 msgid "" @@ -1587,26 +1982,35 @@ msgid "" "build (ppc, i386, x86_64) and ``intel`` is used for a universal build with " "the i386 and x86_64 architectures" msgstr "" +"Pour les binaires universels construits sur Mac OS X, la valeur de " +"l'architecture reflète l'état du binaire universel au lieu de celle de " +"l'architecture du processeur en cours. Pour les binaires universels 32 bits, " +"l'architecture est ``fat``, pour les binaires universels 64 bits, " +"l'architecture est ``fat64``, et pour les binaires universels 4 voies, " +"l'architecture est ``universelle``. A partir de Python 2.7 et Python 3.2, " +"l'architecture ``fat3`` est utilisée pour une compilation universelle à 3 " +"voies (*ppc*, *i386*, *x86_64*) et ``intel`` est utilisée pour une " +"compilation universelle avec les architectures *i386* et *x86_64*" #: ../Doc/distutils/apiref.rst:1117 msgid "Examples of returned values on Mac OS X:" -msgstr "" +msgstr "Exemples de valeurs renvoyées sous Mac OS X :" #: ../Doc/distutils/apiref.rst:1119 msgid "``macosx-10.3-ppc``" -msgstr "" +msgstr "``macosx-10.3-ppc``" #: ../Doc/distutils/apiref.rst:1121 msgid "``macosx-10.3-fat``" -msgstr "" +msgstr "``macosx-10.3-fat``" #: ../Doc/distutils/apiref.rst:1123 msgid "``macosx-10.5-universal``" -msgstr "" +msgstr "``macosx-10.5-universal``" #: ../Doc/distutils/apiref.rst:1125 msgid "``macosx-10.6-intel``" -msgstr "" +msgstr "``macosx-10.6-intel``" #: ../Doc/distutils/apiref.rst:1130 msgid "" @@ -1617,6 +2021,14 @@ msgid "" "can actually use them in the filesystem. Raises :exc:`ValueError` on non-" "Unix-ish systems if *pathname* either starts or ends with a slash." msgstr "" +"Renvoie un chemin *pathname* qui fonctionne sur le système de fichiers " +"natif. Par exemple, il sépare le chemin sur */* et le recompose en utilisant " +"le séparateur de répertoires courant. Cela est nécessaire parce que les noms " +"de fichiers dans les scripts d'installations sont toujours fournis dans le " +"style Unix, et doivent être convertis dans la convention du système avant " +"d'être utilisé par le système de fichiers. Lève :exc:`ValueError` sur les " +"systèmes non UNIX si *pathname* commence ou se termine par une barre oblique " +"(*slash* en anglais)." #: ../Doc/distutils/apiref.rst:1140 msgid "" @@ -1625,6 +2037,10 @@ msgid "" "requires making *pathname* relative and then joining the two, which is " "tricky on DOS/Windows." msgstr "" +"Renvoie un chemin *pathname* préfixé avec *new_root*. Si *pathname* est " +"relatif, c`est l'équivalent de ``os.path.join(new_root,pathname)`` Sinon, il " +"faut rendre *pathname* relatif et joindre les deux, ce qui est dangereux " +"sous DOS/Windows." #: ../Doc/distutils/apiref.rst:1147 msgid "" @@ -1632,16 +2048,22 @@ msgid "" "users can use in config files, command-line options, etc. Currently this " "includes:" msgstr "" +"Vérifie que 'os.environ' possède toutes les variables d'environnement " +"utilisables dans les fichiers de configuration, les options en ligne de " +"commande, etc. À l'heure actuelle, cela comprend :" #: ../Doc/distutils/apiref.rst:1151 msgid ":envvar:`HOME` - user's home directory (Unix only)" msgstr "" +":envvar:`HOME`. Répertoire d’accueil de l'utilisateur (Unix uniquement)" #: ../Doc/distutils/apiref.rst:1152 msgid "" ":envvar:`PLAT` - description of the current platform, including hardware and " "OS (see :func:`get_platform`)" msgstr "" +":envvar:`PLAT`. Description de la plate-forme actuelle, y compris le " +"matériel et le l'OS (voir :func:`get_platform`)" #: ../Doc/distutils/apiref.rst:1158 msgid "" @@ -1653,6 +2075,14 @@ msgid "" "`check_environ`. Raise :exc:`ValueError` for any variables not found in " "either *local_vars* or ``os.environ``." msgstr "" +"Exécute la substitution de variable de style shell/Perl sur *s*. Chaque " +"occurrence de ``$`` suivie d'un nom est considérée comme une variable, et la " +"variable est remplacée par la valeur trouvée dans le dictionnaire " +"*local_vars*, ou dans ``os.environ`` si elle ne se trouve pas dans " +"*local_vars*. *os.environ* est d'abord vérifié/étendu pour garantir qu'elle " +"contient certaines valeurs : voir :func:`check_environ`. Lève :exc:" +"`ValueError` pour toute variable non trouvée dans *local_vars* ou ``os." +"environ``." #: ../Doc/distutils/apiref.rst:1165 msgid "" @@ -1660,6 +2090,10 @@ msgid "" "``$variable`` can consist only of upper and lower case letters, numbers and " "an underscore. No { } or ( ) style quoting is available." msgstr "" +"Remarquez qu'il ne s'agit pas d'une fonction d'interpolation de chaîne à " +"part entière. Une ``$variable`` valide ne peut être composée que de lettres " +"majuscules et minuscules, de chiffres et d'un tiret bas. Aucune syntaxe de " +"type {} ou () pour indiquer des variables n'est disponible." #: ../Doc/distutils/apiref.rst:1173 msgid "" @@ -1671,6 +2105,16 @@ msgid "" "leaving only the escaped character. The quote characters are stripped from " "any quoted string. Returns a list of words." msgstr "" +"Sépare une chaîne de caractères selon les règles de type shell Unix pour les " +"guillemets et les barres obliques inverses. En bref : les mots sont " +"délimités par des espaces, tant que ces espaces ne sont pas échappées par " +"une barre oblique inversée, ou à l'intérieur d'une chaîne guillemets. Les " +"guillemets simples et doubles sont équivalents, et les caractères entre " +"guillemets peuvent être échappés à l'aide d'une barre oblique inversée. La " +"barre oblique inversée est supprimée de toute séquence d'échappement à deux " +"caractères, ne laissant que le caractère échappé. Les caractères guillemets " +"sont supprimés de toute chaîne de caractères entre guillemets. Renvoie une " +"liste de mots." #: ../Doc/distutils/apiref.rst:1186 msgid "" @@ -1681,10 +2125,18 @@ msgid "" "it (to embody the \"external action\" being performed), and an optional " "message to print." msgstr "" +"Exécute une action qui affecte le monde extérieur (par exemple, écrire dans " +"le système de fichiers). De telles actions sont spéciales car elles sont " +"désactivées par l'option *dry_run*. Cette méthode s'occupe de tout. Vous " +"devez simplement fournir la fonction à appeler avec un couple d'argument lui " +"correspondant et un message facultatif à afficher." #: ../Doc/distutils/apiref.rst:1195 msgid "Convert a string representation of truth to true (1) or false (0)." msgstr "" +"Convertit une chaîne de caractères représentant une valeur booléenne en " +"``1`` (si elle est évaluée comme vraie) ou ``0`` (si elle est évaluée comme " +"fausse)." #: ../Doc/distutils/apiref.rst:1197 msgid "" @@ -1692,6 +2144,9 @@ msgid "" "values are ``n``, ``no``, ``f``, ``false``, ``off`` and ``0``. Raises :exc:" "`ValueError` if *val* is anything else." msgstr "" +"Les valeurs *vraies* sont , ``y``, ``yes``, ``t``, ``true``, ``on`` et " +"``1``. Les valeurs *fausses* sont ``n``, ``no``, ``f``, ``false``, ``off`` " +"et ``0``. Lève :exc:`ValueError` si *val* est autre chose." #: ../Doc/distutils/apiref.rst:1204 msgid "" @@ -1707,15 +2162,17 @@ msgstr "" #: ../Doc/distutils/apiref.rst:1210 msgid "``1`` - normal optimization (like ``python -O``)" -msgstr "" +msgstr "``1``: optimisation normale (comme ``python -O``)" #: ../Doc/distutils/apiref.rst:1211 msgid "``2`` - extra optimization (like ``python -OO``)" -msgstr "" +msgstr "``2``: optimisation supplémentaire (comme ``python -OO``)" #: ../Doc/distutils/apiref.rst:1213 msgid "If *force* is true, all files are recompiled regardless of timestamps." msgstr "" +"Si *force* est vrai, tous les fichiers sont recompilés indépendamment des " +"horodatages." #: ../Doc/distutils/apiref.rst:1215 msgid "" @@ -1726,12 +2183,21 @@ msgid "" "*prefix* is stripped). You can supply either or both (or neither) of " "*prefix* and *base_dir*, as you wish." msgstr "" +"Le nom du fichier source encodé dans chaque fichier :term:`bytecode` est par " +"défaut le nom présent dans la liste des noms de fichiers source *py_files* ; " +"vous pouvez modifier dynamiquement ses noms avec *prefix* et *basedir*. " +"*prefix* est une chaîne de caractères qui sera supprimée de chaque nom de " +"fichier source, et *base_dir* est un nom de répertoire qui sera préfixé au " +"nom (après que le *prefixe* soit supprimé). Vous pouvez choisir de fournir " +"l'un ou l'autre (ou les deux) paramètres : *prefixe* et *base_dir*." #: ../Doc/distutils/apiref.rst:1222 msgid "" "If *dry_run* is true, doesn't actually do anything that would affect the " "filesystem." msgstr "" +"Si *dry_run* est vrai, ne fait rien qui puisse affecter le système de " +"fichiers." #: ../Doc/distutils/apiref.rst:1225 msgid "" @@ -1742,6 +2208,13 @@ msgid "" "The *direct* flag is used by the script generated in indirect mode; unless " "you know what you're doing, leave it set to ``None``." msgstr "" +"La compilation binaire se fait soit directement dans l'interpréteur courant " +"avec le module standard :mod:`py_compile`, soit indirectement en écrivant un " +"script temporaire et en l'exécutant. Normalement, vous devez laisser :func:" +"`byte_compile` choisir d'utiliser la compilation directe ou non (voir le " +"code-source pour les détails). Le paramètre *direct* est utilisé par le " +"script généré en mode indirect ; à moins que vous ne sachiez ce que vous " +"faites, laissez le paramètre à ``None`` (Aucun)." #: ../Doc/distutils/apiref.rst:1235 msgid "" @@ -1749,38 +2222,47 @@ msgid "" "by ensuring there are 8 spaces space after each newline. Note that it does " "no other modification of the string." msgstr "" +"Renvoie une version de *header* traitée avec les échappements compatibles " +"avec les en-têtes :rfc:`822`, en s'assurant qu'il y a 8 espaces après chaque " +"nouvelle ligne. Notez qu'il ne fait aucune autre modification de la chaîne " +"de caractères." #: ../Doc/distutils/apiref.rst:1245 msgid ":mod:`distutils.dist` --- The Distribution class" -msgstr "" +msgstr ":mod:`distutils.dist` — La classe Distribution" #: ../Doc/distutils/apiref.rst:1252 msgid "" "This module provides the :class:`~distutils.core.Distribution` class, which " "represents the module distribution being built/installed/distributed." msgstr "" +"Ce module fournit la classe :class:`~distutils.core.Distribution`, qui " +"représente le module *distribution* en cours de construction/installation/" +"distribution." #: ../Doc/distutils/apiref.rst:1257 msgid ":mod:`distutils.extension` --- The Extension class" -msgstr "" +msgstr ":mod:`distutils.extension` — La classe Extension" #: ../Doc/distutils/apiref.rst:1264 msgid "" "This module provides the :class:`Extension` class, used to describe C/C++ " "extension modules in setup scripts." msgstr "" +"Ce module fournit la classe :class:`Extension`, utilisée pour décrire les " +"modules d'extension C/C++ dans les scripts de configuration." #: ../Doc/distutils/apiref.rst:1272 msgid ":mod:`distutils.debug` --- Distutils debug mode" -msgstr "" +msgstr ":mod:`distutils.debug` — Mode de débogage du module *Distutils*" #: ../Doc/distutils/apiref.rst:1278 msgid "This module provides the DEBUG flag." -msgstr "" +msgstr "Ce module fournit l'option *DEBUG*." #: ../Doc/distutils/apiref.rst:1282 msgid ":mod:`distutils.errors` --- Distutils exceptions" -msgstr "" +msgstr ":mod:`distutils.errors` — Exceptions du module *Distutils*" #: ../Doc/distutils/apiref.rst:1288 msgid "" @@ -1789,37 +2271,50 @@ msgid "" "raised for errors that are obviously the end-user's fault (eg. bad command-" "line arguments)." msgstr "" +"Fournit les exceptions utilisées par les modules de *Distutils*. Notez que " +"les modules *Distutils* peuvent soulever des exceptions standard ; en " +"particulier, ``SystemExit`` est généralement levée pour les erreurs qui sont " +"manifestement de la responsabilité de l'utilisateur final (ex : mauvais " +"argument en ligne de commande)." #: ../Doc/distutils/apiref.rst:1292 msgid "" "This module is safe to use in ``from ... import *`` mode; it only exports " "symbols whose names start with ``Distutils`` and end with ``Error``." msgstr "" +"Ce module est utilisable avec la syntaxe ``from ... import *`` ; il " +"n'exporte que des symboles dont le nom commence par ``Distutils`` et se " +"termine par ``Error``." #: ../Doc/distutils/apiref.rst:1297 msgid "" ":mod:`distutils.fancy_getopt` --- Wrapper around the standard getopt module" msgstr "" +":mod:`distutils.fancy_getopt` --- Encapsulation du module *getopt* standard" #: ../Doc/distutils/apiref.rst:1303 msgid "" "This module provides a wrapper around the standard :mod:`getopt` module " "that provides the following additional features:" msgstr "" +"Ce module est une encapsulation du module standard :mod:`getopt` qui apporte " +"les fonctionnalités supplémentaires suivantes :" #: ../Doc/distutils/apiref.rst:1306 msgid "short and long options are tied together" -msgstr "" +msgstr "Les options *short* et *long* sont liées entre elles." #: ../Doc/distutils/apiref.rst:1308 msgid "" "options have help strings, so :func:`fancy_getopt` could potentially create " "a complete usage summary" msgstr "" +"Les options ont des pages d'aide, donc :func:`fancy_getopt` pourrait " +"potentiellement créer un résumé d'utilisation complet" #: ../Doc/distutils/apiref.rst:1311 msgid "options set attributes of a passed-in object" -msgstr "" +msgstr "Les options définissent les attributs à partir d'un objet fourni." #: ../Doc/distutils/apiref.rst:1313 msgid "" @@ -1838,16 +2333,28 @@ msgid "" "`getopt` method of the :class:`FancyGetopt` class). *args* is the argument " "list. Will use ``sys.argv[1:]`` if you pass ``None`` as *args*." msgstr "" +"Encapsulation de la fonction ``getopt``. *options* est une liste de triplets " +"``(long_option, short_option, help_string)`` comme décrit dans le " +"constructeur de la classe :class:`FancyGetopt`. *negative_opt* doit être un " +"dictionnaire associant les noms des options aux noms des options, la clé et " +"la valeur doivent être dans la liste *options*. *object* est un objet qui " +"sera utilisé pour stocker des valeurs (voir la méthode :meth:`getopt` de la " +"classe :class:`FancyGetopt`). *args* est la liste des arguments. Utilise " +"``sys.argv[1 :]`` si ``None`` est passé à *args*." #: ../Doc/distutils/apiref.rst:1331 msgid "Wraps *text* to less than *width* wide." msgstr "" +"Ajoute des retours à la ligne à *texte* de manière à ce que la largeur soit " +"inférieure à *largeur*." #: ../Doc/distutils/apiref.rst:1337 msgid "" "The option_table is a list of 3-tuples: ``(long_option, short_option, " "help_string)``" msgstr "" +"La liste *option_table* est constituée de triplets : ``(long_option, " +"short_option, help_string*)``" #: ../Doc/distutils/apiref.rst:1340 msgid "" @@ -1856,14 +2363,21 @@ msgid "" "any case. *short_option* should be ``None`` if a *long_option* doesn't have " "a corresponding *short_option*. All option tuples must have long options." msgstr "" +"Si une option prend un argument, sa *long_option* doit se terminer par " +"``'='``. *short_option* doit être un seul caractère, jamais ``':'`'. " +"*option_courte* doit être ``None`` si *long_option* n'a pas de " +"*short_option* correspondante. Tous les triplets d'options doivent avoir des " +"options longues." #: ../Doc/distutils/apiref.rst:1345 msgid "The :class:`FancyGetopt` class provides the following methods:" -msgstr "" +msgstr "La classe :class:`FancyGetopt` fournit les méthodes suivantes :" #: ../Doc/distutils/apiref.rst:1350 msgid "Parse command-line options in args. Store as attributes on *object*." msgstr "" +"Analyse les options de ligne de commande des arguments. Les stocke en tant " +"qu'attributs de *objet*." #: ../Doc/distutils/apiref.rst:1352 msgid "" @@ -1874,6 +2388,13 @@ msgid "" "returns *args*; in both cases, the returned *args* is a modified copy of the " "passed-in *args* list, which is left untouched." msgstr "" +"Si *args* est ``None`` ou n'est pas définie, utilise ``sys.argv[1:]``. Si " +"*object* est ``None`` ou n'est pas définie, créer une nouvelle instance de " +"la classe :class:`OptionDummy` , stocke les valeurs d'options dans " +"l'instance et renvoie un couple ``(args, object)``. Si *objet* est fourni, " +"il est modifié sur place et :func:`getopt` renvoie simplement *args*; dans " +"les deux cas, Les arguments *args* renvoyés sont une copie modifiée de la " +"liste *args* transmise, qui est n'est pas modifiée." #: ../Doc/distutils/apiref.rst:1364 msgid "" @@ -1881,34 +2402,43 @@ msgid "" "of :meth:`getopt` Raises :exc:`RuntimeError` if :meth:`getopt` hasn't been " "called yet." msgstr "" +"Renvoie la liste des couples ``(option, valeur)`` traités par l'exécution " +"précédente de :meth:`getopt`. Déclenche :exc:`RuntimeError` si :meth:" +"`getopt` n'a pas encore été appelée." #: ../Doc/distutils/apiref.rst:1371 msgid "" "Generate help text (a list of strings, one per suggested line of output) " "from the option table for this :class:`FancyGetopt` object." msgstr "" +"Génère un texte d'aide (une liste de chaînes, une par ligne de sortie " +"suggérée) de la liste d'options pour l'objet de la classe :class:" +"`FancyGetopt`." #: ../Doc/distutils/apiref.rst:1374 msgid "If supplied, prints the supplied *header* at the top of the help." -msgstr "" +msgstr "S'il est fourni, affiche l'en-tête *header* en haut de l'aide." #: ../Doc/distutils/apiref.rst:1378 msgid ":mod:`distutils.filelist` --- The FileList class" -msgstr "" +msgstr ":mod:`distutils.filelist` — La classe *FileList* liste des fichiers" #: ../Doc/distutils/apiref.rst:1385 msgid "" "This module provides the :class:`FileList` class, used for poking about the " "filesystem and building lists of files." msgstr "" +"Ce module fournit la classe :class:`FileList`, utilisée pour parcourir le " +"système de fichiers et construire des listes de fichiers." #: ../Doc/distutils/apiref.rst:1390 msgid ":mod:`distutils.log` --- Simple PEP 282-style logging" msgstr "" +":mod:`distutils.log` --- Journalisation basée sur le style de la PEP 282" #: ../Doc/distutils/apiref.rst:1397 msgid ":mod:`distutils.spawn` --- Spawn a sub-process" -msgstr "" +msgstr ":mod:`distutils.spawn` — Crée un sous-processus" #: ../Doc/distutils/apiref.rst:1403 msgid "" @@ -1917,10 +2447,15 @@ msgid "" "Also provides :func:`find_executable` to search the path for a given " "executable name." msgstr "" +"Ce module offre la fonction :func:`spawn`, une interface avec diverses " +"fonctions spécifiques à la plate-forme pour lancer un autre programme dans " +"un sous-processus. Inclut également :func:`find_executable` pour rechercher " +"le chemin d'accès pour un nom d'exécutable donné." #: ../Doc/distutils/apiref.rst:1410 msgid ":mod:`distutils.sysconfig` --- System configuration information" msgstr "" +":mod:`distutils.sysconfig` --- Informations de configuration du système" #: ../Doc/distutils/apiref.rst:1419 msgid "" @@ -1933,26 +2468,40 @@ msgid "" "header is called :file:`pyconfig.h` for Python versions starting with 2.2, " "and :file:`config.h` for earlier versions of Python." msgstr "" +"Le module :mod:`distutils.sysconfig` donne accès aux informations de " +"configuration bas niveau de Python. Les variables de configuration " +"spécifiques disponibles dépendent de la plate-forme et de la configuration. " +"Les variables spécifiques dépendent du processus de compilation de la " +"version *spécifique* de Python en cours d'exécution. Les variables sont " +"celles qui se trouvent dans le fichier :file:`Makefile` et dans les entêtes " +"de configuration installés avec Python sur des systèmes Unix. Le fichier " +"des entêtes de configuration s'appelle :file:`pyconfig.h` pour les versions " +"de Python commençant par 2.2, et :file:`config.h` pour les versions " +"antérieures de Python." #: ../Doc/distutils/apiref.rst:1428 msgid "" "Some additional functions are provided which perform some useful " "manipulations for other parts of the :mod:`distutils` package." msgstr "" +"Quelques fonctions supplémentaires sont fournies pour effectuer des " +"manipulations utiles pour d'autres parties du paquet :mod:`distutils`." #: ../Doc/distutils/apiref.rst:1434 msgid "The result of ``os.path.normpath(sys.prefix)``." -msgstr "" +msgstr "Le résultat de ``os.path.normpath(sys.prefix)``." #: ../Doc/distutils/apiref.rst:1439 msgid "The result of ``os.path.normpath(sys.exec_prefix)``." -msgstr "" +msgstr "Le résultat de ``os.path.normpath(sys.exec_prefix)``." #: ../Doc/distutils/apiref.rst:1444 msgid "" "Return the value of a single variable. This is equivalent to " "``get_config_vars().get(name)``." msgstr "" +"Retourne la valeur d'une seule variable. C'est l'équivalent de " +"``get_config_vars().get(name)``." #: ../Doc/distutils/apiref.rst:1450 msgid "" @@ -1962,6 +2511,12 @@ msgid "" "a sequence giving the associated values. If a given name does not have a " "corresponding value, ``None`` will be included for that variable." msgstr "" +"Retourne un ensemble de définitions de variables. S'il n'y a pas " +"d'arguments, cela renvoie un dictionnaire qui associe les noms des variables " +"de configuration aux valeurs. Si des arguments sont spécifiés, ils doivent " +"être des chaînes de caractères, et la valeur renvoyée sera une séquence " +"donnant les valeurs correspondantes. Si un nom donné n'a pas de valeur " +"correspondante, la valeur ``None`` sera utilisée pour cette variable." #: ../Doc/distutils/apiref.rst:1459 msgid "" @@ -1970,6 +2525,10 @@ msgid "" "platforms the header will have been supplied directly by the Python source " "distribution. The file is a platform-specific text file." msgstr "" +"Renvoie le nom complet du chemin d'accès de l'en-tête de configuration. " +"Pour Unix, c'est l'en-tête généré par le script :program:`configure` ; pour " +"les autres plates-formes, l'en-tête provient directement de la distribution " +"source Python. Le fichier est un fichier texte spécifique à la plate-forme." #: ../Doc/distutils/apiref.rst:1467 msgid "" @@ -1978,6 +2537,11 @@ msgid "" "meaning for other platforms will vary. The file is a platform-specific text " "file, if it exists. This function is only useful on POSIX platforms." msgstr "" +"Renvoie le nom complet du chemin d'accès du fichier :file:`Makefile` utilisé " +"pour construire Python. Pour Unix, c'est le fichier généré par le script :" +"program:`configure`. La définition pour les autres plateformes varie. S'il " +"existe, il s'agit d'un fichier texte spécifique à la plate-forme. Cette " +"fonction n'est utile que sur les plates-formes POSIX." #: ../Doc/distutils/apiref.rst:1475 msgid "" @@ -1988,6 +2552,13 @@ msgid "" "const:`PREFIX`, or as the exec-prefix instead of :const:`EXEC_PREFIX` if " "*plat_specific* is true." msgstr "" +"Renvoie le répertoire pour les fichiers d'inclusion C standards ou " +"dépendants de la plate-forme. Si *plat_specific* est vrai, le répertoire " +"*include* dépendant de la plate-forme est renvoyé ; si la valeur est *faux* " +"ou *None*, le répertoire indépendant de la plate-forme est renvoyé. Si " +"*prefix* est donné, il est utilisé soit comme préfixe au lieu de :const:" +"`PREFIX`, soit comme préfixe d'exécution au lieu de :const:`EXEC_PREFIX` si " +"*plat_specific* est vrai." #: ../Doc/distutils/apiref.rst:1485 msgid "" @@ -2000,18 +2571,31 @@ msgid "" "directory for the standard library is returned rather than the directory for " "the installation of third-party extensions." msgstr "" +"Renvoie le répertoire pour l'installation de la bibliothèque standard ou " +"dépendante de la plate-forme. Si *plat_specific* est vrai, le répertoire " +"*include* dépendant de la plate-forme est renvoyé ; si la valeur est *faux* " +"ou *None*, le répertoire indépendant de la plate-forme est renvoyé. Si " +"*prefix* est donné, il est utilisé soit comme préfixe au lieu de :const:" +"`PREFIX`, soit comme préfixe d'exécution au lieu de :const:`EXEC_PREFIX` si " +"*plat_specific* est vrai. Si *standard_lib* est vrai, le répertoire de la " +"bibliothèque standard est renvoyé plutôt que le répertoire d'installation " +"des extensions tierces." #: ../Doc/distutils/apiref.rst:1494 msgid "" "The following function is only intended for use within the :mod:`distutils` " "package." msgstr "" +"La fonction suivante est uniquement destinée à être utilisée dans le paquet :" +"mod:`distutils`." #: ../Doc/distutils/apiref.rst:1500 msgid "" "Do any platform-specific customization of a :class:`distutils.ccompiler." "CCompiler` instance." msgstr "" +"Exécute toute personnalisation spécifique à la plate-forme d'une instance :" +"class:`distutils.ccompiler.CCompiler`." #: ../Doc/distutils/apiref.rst:1503 msgid "" @@ -2021,12 +2605,21 @@ msgid "" "This information includes the selected compiler, compiler and linker " "options, and the extension used by the linker for shared objects." msgstr "" +"Cette fonction n'est nécessaire que sous Unix pour le moment, mais doit être " +"appelée de manière cohérente pour supporter la compatibilité ascendante. " +"Elle insère des informations qui varient d'une version à l'autre d'Unix et " +"qui sont stockées dans le fichier Python :file:`Makefile`. Ces informations " +"comprennent le compilateur, les options du compilateur et de l'éditeur de " +"liens sélectionnés, ainsi que l'extension utilisée par l'éditeur de liens " +"pour les objets partagés." #: ../Doc/distutils/apiref.rst:1509 msgid "" "This function is even more special-purpose, and should only be used from " "Python's own build procedures." msgstr "" +"Cette fonction est encore plus spéciale, et ne devrait être utilisée que " +"dans les procédures de compilation de Python." #: ../Doc/distutils/apiref.rst:1515 msgid "" @@ -2035,10 +2628,14 @@ msgid "" "for files, allowing them to be located in the build area rather than in an " "installed Python." msgstr "" +"Informe le module :mod:`distutils.sysconfig` qu'il est utilisé dans le cadre " +"du processus de compilation de Python. Cela change beaucoup d'emplacements " +"relatifs pour les fichiers, ce qui les place dans la zone de compilation " +"plutôt que dans un interpréteur Python installé." #: ../Doc/distutils/apiref.rst:1522 msgid ":mod:`distutils.text_file` --- The TextFile class" -msgstr "" +msgstr ":mod:`distutils.text_file` — La classe TextFile" #: ../Doc/distutils/apiref.rst:1528 msgid "" @@ -2046,6 +2643,9 @@ msgid "" "to text files that (optionally) takes care of stripping comments, ignoring " "blank lines, and joining lines with backslashes." msgstr "" +"Ce module fournit la classe :class:`TextFile`, qui donne une interface aux " +"fichiers texte qui s'occupe (optionnellement) de supprimer les commentaires, " +"d'ignorer les lignes vides et de joindre les lignes avec des antislash." #: ../Doc/distutils/apiref.rst:1535 msgid "" @@ -2056,6 +2656,14 @@ msgid "" "at end of line), strip leading and/or trailing whitespace. All of these are " "optional and independently controllable." msgstr "" +"Cette classe fournit un objet de type fichier qui se charge de tout ce que " +"vous voulez généralement faire lors du traitement d'un fichier texte ayant " +"une syntaxe ligne par ligne : Suppression des commentaires (tant que ``#`` " +"est votre caractère de commentaire), passer les lignes vides, joindre des " +"lignes adjacentes en échappant la nouvelle ligne (les lignes se terminant " +"par une antislash), supprime les espace blancs avant et après le texte etc. " +"Toutes ces fonctions sont optionnelles et peuvent être commandées " +"indépendamment." #: ../Doc/distutils/apiref.rst:1542 msgid "" @@ -2064,6 +2672,10 @@ msgid "" "question spans multiple physical lines. Also provides :meth:`unreadline` " "for implementing line-at-a-time lookahead." msgstr "" +"La classe fournit une méthode :meth:`warn` pour pouvoir générer des messages " +"d'avertissement qui renvoie le numéro de ligne physique, même si la ligne " +"logique en question couvre plusieurs lignes physiques. Fournit également :" +"meth:`unreadline` pour implémenter un système prospectif ligne par ligne." #: ../Doc/distutils/apiref.rst:1547 msgid "" @@ -2075,16 +2687,26 @@ msgid "" "messages. If *file* is not supplied, :class:`TextFile` creates its own " "using the :func:`open` built-in function." msgstr "" +"Les instances de :class:`TextFile` sont créées soit avec *filename*, soit " +"avec *file* ou bien les deux. :exc:`RuntimeError` est levé si les deux " +"valent ``None``. *filename* doit être une chaîne de caractères, et *file* un " +"objet fichier (ou quelque chose qui fournit les méthodes :meth:`readline` " +"et :meth:`close`). Il est recommandé de fournir au moins *filename*, afin " +"que :class:`TextFile` puisse l'inclure dans les messages d'avertissement. " +"Si *file* n'est pas fourni, :class:`TextFile` crée son propre fichier en " +"utilisant la fonction :func:`open`." #: ../Doc/distutils/apiref.rst:1555 msgid "" "The options are all boolean, and affect the values returned by :meth:" "`readline`" msgstr "" +"Les options sont toutes booléennes et affectent les valeurs renvoyées par :" +"meth:`readline`." #: ../Doc/distutils/apiref.rst:1560 msgid "option name" -msgstr "" +msgstr "Nom des options" #: ../Doc/distutils/apiref.rst:1560 msgid "default" @@ -2092,7 +2714,7 @@ msgstr "default" #: ../Doc/distutils/apiref.rst:1562 msgid "*strip_comments*" -msgstr "" +msgstr "*strip_comments*" #: ../Doc/distutils/apiref.rst:1562 msgid "" @@ -2107,11 +2729,12 @@ msgstr "*true*" #: ../Doc/distutils/apiref.rst:1568 msgid "*lstrip_ws*" -msgstr "" +msgstr "*lstrip_ws*" #: ../Doc/distutils/apiref.rst:1568 msgid "strip leading whitespace from each line before returning it" msgstr "" +"Efface les espaces blancs en début de chaque ligne avant de la renvoyer." #: ../Doc/distutils/apiref.rst:1568 ../Doc/distutils/apiref.rst:1586 #: ../Doc/distutils/apiref.rst:1597 @@ -2120,17 +2743,19 @@ msgstr "*false*" #: ../Doc/distutils/apiref.rst:1571 msgid "*rstrip_ws*" -msgstr "" +msgstr "*rstrip_ws*" #: ../Doc/distutils/apiref.rst:1571 msgid "" "strip trailing whitespace (including line terminator!) from each line before " "returning it." msgstr "" +"Efface les espaces blancs de fin de ligne (y compris le terminateur de " +"ligne !) de chaque ligne avant de la renvoyer." #: ../Doc/distutils/apiref.rst:1576 msgid "*skip_blanks*" -msgstr "" +msgstr "*skip_blanks*" #: ../Doc/distutils/apiref.rst:1576 msgid "" @@ -2139,10 +2764,14 @@ msgid "" "solely whitespace: these will \\*not\\* be skipped, even if *skip_blanks* is " "true.)" msgstr "" +"Ignore les lignes qui sont vides \\*après\\* la suppression des commentaires " +"et des espaces. (Si *lstrip_ws* et *rstrip_ws* sont tous les deux faux, " +"alors certaines lignes peuvent être composées uniquement d'espaces : elles " +"ne seront pas ignorées, même si *skip_blanks* est vrai." #: ../Doc/distutils/apiref.rst:1586 msgid "*join_lines*" -msgstr "" +msgstr "*join_lines*" #: ../Doc/distutils/apiref.rst:1586 msgid "" @@ -2151,16 +2780,23 @@ msgid "" "line; if N consecutive lines end with a backslash, then N+1 physical lines " "will be joined to form one logical line." msgstr "" +"Si sur la ligne, une antislash est le dernier caractère et que ce caractère " +"n'est pas le caractère de nouvelle ligne. Joint la ligne suivante pour " +"former une ligne logique. Si N lignes consécutives se terminent par une " +"antislash, alors N+1 lignes physiques seront liées pour former une seul " +"ligne logique." #: ../Doc/distutils/apiref.rst:1597 msgid "*collapse_join*" -msgstr "" +msgstr "*collapse_join*" #: ../Doc/distutils/apiref.rst:1597 msgid "" "strip leading whitespace from lines that are joined to their predecessor; " "only matters if ``(join_lines and not lstrip_ws)``" msgstr "" +"Supprime les espaces blancs des lignes qui sont jointes à leur prédécesseur. " +"n'est utile que que si ``(join_lines and not lstrip_ws)``." #: ../Doc/distutils/apiref.rst:1604 msgid "" @@ -2170,18 +2806,28 @@ msgid "" "for end-of-file: an empty string might just be a blank line (or an all-" "whitespace line), if *rstrip_ws* is true but *skip_blanks* is not." msgstr "" +"Notez que puisque *rstrip_ws* peut effacer la fin de la ligne, la sémantique " +"de :meth:`readline` doit être différente de celle de la méthode standard :" +"meth:`readline` des objets fichier ! En particulier, :meth:`readline` " +"renvoie ``None`` pour indiquer la fin du fichier: une chaîne vide peut être " +"juste une ligne blanche (ou une ligne entièrement blanche), si *rstrip_ws* " +"est vrai mais pas si *skip_blanks* est faux." #: ../Doc/distutils/apiref.rst:1613 msgid "" "Open a new file *filename*. This overrides any *file* or *filename* " "constructor arguments." msgstr "" +"Ouvre un nouveau fichier *filename*. Remplace tous les arguments du " +"constructeur *file* ou *filename*." #: ../Doc/distutils/apiref.rst:1619 msgid "" "Close the current file and forget everything we know about it (including the " "filename and the current line number)." msgstr "" +"Ferme le fichier courant et oublie toutes les informations connues à son " +"sujet (y compris le nom du fichier et le numéro de la ligne courante)." #: ../Doc/distutils/apiref.rst:1625 msgid "" @@ -2192,6 +2838,13 @@ msgid "" "may be a list or tuple to indicate a range of physical lines, or an integer " "for a single physical line." msgstr "" +"Affiche (vers *stderr*) un message d'avertissement lié à la ligne logique " +"courante dans le fichier courant. Si la ligne logique courante dans le " +"fichier s'étend sur plusieurs lignes physiques, l'avertissement se réfère à " +"une plage de lignes physiques, telles que ``\"lignes 3-5\"``. Si *line* est " +"fourni, il remplace le numéro de la ligne courante ; il peut s'agir d'une " +"liste ou d'un couple pour indiquer une plage de lignes physiques, ou d'un " +"entier pour une seule ligne physique." #: ../Doc/distutils/apiref.rst:1635 msgid "" @@ -2204,12 +2857,24 @@ msgid "" "end-of-file, since the empty string can occur if *rstrip_ws* is true but " "*strip_blanks* is not." msgstr "" +"Lit et renvoie une seule ligne logique à partir du fichier courant (ou à " +"partir d'un tampon interne si les lignes ont déjà été marqué comme non lue " +"avec :meth:`unreadline`). Si l'option *join_lines* est vraie, cela peut " +"impliquer la lecture de plusieurs lignes physiques concaténées en une seule " +"chaîne. Met à jour le numéro de la ligne courante. Appeler :meth:`warn` " +"après :meth:`readline` émet donc un avertissement sur la ou les lignes " +"physiques qui viennent d'être lues. Renvoie ``None`` à la fin du fichier, " +"puisque la chaîne vide peut se produire si *rstrip_ws* est vrai mais pas si " +"*strip_blanks* est faux." #: ../Doc/distutils/apiref.rst:1646 msgid "" "Read and return the list of all logical lines remaining in the current file. " "This updates the current line number to the last line of the file." msgstr "" +"Lit et renvoie la liste de toutes les lignes logiques restant dans le " +"fichier courant. Met à jour le numéro de la ligne courante à la dernière " +"ligne du fichier." #: ../Doc/distutils/apiref.rst:1652 msgid "" @@ -2221,18 +2886,28 @@ msgid "" "meth:`unreadline` before a call to :meth:`readline`, the lines will be " "returned most in most recent first order." msgstr "" +"Insère la ligne *line* (une chaîne de caractères) dans un tampon interne qui " +"sera vérifié par les futurs appels de :meth:`readline`. Utile pour " +"implémenter un analyseur prospectif ligne par ligne. Notez que les lignes " +"qui sont \"non lues\" avec :meth:`unreadline` ne sont ensuite pas traitées " +"de nouveau (espace blancs, ou autre) quand elles sont lues avec :meth:" +"`readline`. Si plusieurs appels sont faits à :meth:`unreadline` avant un " +"appel à :meth:`readline`, les lignes sont renvoyées dans l'ordre de la plus " +"récente première à la plus ancienne." #: ../Doc/distutils/apiref.rst:1661 msgid ":mod:`distutils.version` --- Version number classes" -msgstr "" +msgstr ":mod:`distutils.version` — Classes de numéros de version" #: ../Doc/distutils/apiref.rst:1676 msgid ":mod:`distutils.cmd` --- Abstract base class for Distutils commands" msgstr "" +":mod:`distutils.cmd` --- Classe de base abstraite pour les commandes " +"*Distutils*" #: ../Doc/distutils/apiref.rst:1683 msgid "This module supplies the abstract base class :class:`Command`." -msgstr "" +msgstr "Ce module fournit la classe de base abstraite :class:`Command`." #: ../Doc/distutils/apiref.rst:1688 msgid "" @@ -2249,6 +2924,19 @@ msgid "" "options, is the :meth:`run` method, which must also be implemented by every " "command class." msgstr "" +"Classe de base abstraite pour définir les classes de commandes, les " +"\"ouvrières\" de *Distutils*. Une analogie utile pour les classes de " +"commandes est de les considérer comme des sous-routines avec des variables " +"locales appelées *options*. Les options sont déclarées dans :meth:" +"`initialiser_options` et définies (compte tenu de leur valeur finale) dans :" +"meth:`finalize_options`, qui doivent être définies pour chaque classe de " +"commande. La distinction entre les deux est nécessaire parce que les " +"valeurs des options peuvent venir de l'extérieur (ligne de commande, fichier " +"de configuration, ....), et toutes les options dépendantes d'autres options " +"doivent être calculées après que ces options externes aient été traitées --- " +"ce qui explique :meth:`finalize_options`. Le corps de la sous-routine, où " +"s'effectue tout le travail est basé sur les valeurs de ses options, est la " +"méthode :meth:`run`, qui doit être implémentée par chaque classe de commande." #: ../Doc/distutils/apiref.rst:1701 msgid "" @@ -2260,11 +2948,12 @@ msgstr "" #: ../Doc/distutils/apiref.rst:1706 msgid "Creating a new Distutils command" -msgstr "" +msgstr "Créer une nouvelle commande *Distutils*" #: ../Doc/distutils/apiref.rst:1708 msgid "This section outlines the steps to create a new Distutils command." msgstr "" +"Cette section décrit les étapes pour créer une nouvelle commande *Distutils*." #: ../Doc/distutils/apiref.rst:1710 msgid "" @@ -2278,10 +2967,22 @@ msgid "" "command/peel_banana.py`, then edit it so that it's implementing the class :" "class:`peel_banana`, a subclass of :class:`distutils.cmd.Command`." msgstr "" +"Une nouvelle commande doit résider dans un module du package :mod:`distutils." +"command`. Il existe un exemple de modèle dans ce répertoire nommé :file:" +"`command_template`. Copiez ce fichier dans un nouveau module portant le même " +"nom que la nouvelle commande que vous implémentez. Ce module doit " +"implémenter une classe portant le même nom que le module (et la commande). " +"Par exemple, pour créer la commande ``peel_banana`` (afin que les " +"utilisateurs puissent exécuter ``setup.py peel_banana``), vous devez copier " +"le fichier :file:`commande_template` dans :file:`distutils/command/" +"peel_banana.py`, puis l'éditer pour qu'il implémente la classe :class:" +"`peel_banana`, une sous-classe de la classe :class:`distutils.cmd.Command`." #: ../Doc/distutils/apiref.rst:1720 msgid "Subclasses of :class:`Command` must define the following methods." msgstr "" +"Les sous-classes de la classe :class:`Command` doivent définir les méthodes " +"suivantes." #: ../Doc/distutils/apiref.rst:1724 msgid "" @@ -2292,6 +2993,13 @@ msgid "" "`initialize_options` implementations are just a bunch of ``self.foo = None`` " "assignments." msgstr "" +"Définit des valeurs par défaut pour toutes les options que cette commande " +"gère. Notez que ces valeurs par défaut peuvent être remplacées par d'autres " +"commandes, par le script d'installation, par des fichiers de configuration " +"ou par la ligne de commande. Ce n'est donc pas l'endroit idéal pour " +"introduire des dépendances entre les options. En règle générale, les " +"méthodes suivantes :meth:`initialize_options` ne font que des assignations " +"de type ``self.truc = None``." #: ../Doc/distutils/apiref.rst:1733 msgid "" @@ -2302,6 +3010,14 @@ msgid "" "safe to set *foo* from *bar* as long as *foo* still has the same value it " "was assigned in :meth:`initialize_options`." msgstr "" +"Définit les valeurs finales pour toutes les options que cette commande gère. " +"Cette méthode doit toujours être appelée le plus tard possible, c'est-à-dire " +"après que toutes les affectations des options de la ligne de commande ou que " +"d'autres commandes ont été faites. C'est donc l'endroit idéal pour " +"introduire des dépendances d'options : si *truc* dépend de *machin*, alors " +"il est sûr de mettre *truc* de *machin* aussi longtemps que *truc* a " +"toujours la même valeur qui lui a été attribué par :meth:" +"`initialize_options`." #: ../Doc/distutils/apiref.rst:1743 msgid "" @@ -2311,6 +3027,12 @@ msgid "" "files, and finalized in :meth:`finalize_options`. All terminal output and " "filesystem interaction should be done by :meth:`run`." msgstr "" +"La raison d'être d'une commande : exécuter l'action programmée en étant " +"contrôlée par les options initialisées dans :meth:`initialize_options`, " +"personnalisées par d'autres commandes, par le script de configuration, par " +"la ligne de commande et les fichiers de configuration, puis finalisée dans :" +"meth:`finalize_options`. Toutes les interactions avec le système de fichiers " +"et la sortie du terminal doivent être effectuées par :meth:`run`." #: ../Doc/distutils/apiref.rst:1752 msgid "" @@ -2325,6 +3047,16 @@ msgid "" "have any C header files to install.) If *predicate* is ``None``, that " "command is always applicable." msgstr "" +"*sub_commands* formalise la notion de \"famille\" de commandes, par exemple. " +"``install`` est le parent des sous-commandes ``install_lib``, " +"``install_headers``, etc. Le parent d'une famille de commandes définit " +"*sub_commands* en tant qu'attribut de classe ; c'est une liste de couples " +"``(command_name, predicate)``, avec *command_name* le nom de la commande et " +"*predicate* une fonction, une chaîne ou ``None``. *predicate* est une " +"méthode de la commande parent qui détermine si la commande correspondante " +"est applicable dans la situation actuelle. Par exemple : ``install_headers`` " +"n'est applicable que s'il existe des fichiers d'en-tête C à installer. Si " +"*predicate* est ``None``, cette commande est toujours effectuée." #: ../Doc/distutils/apiref.rst:1763 msgid "" @@ -2332,33 +3064,41 @@ msgid "" "predicates can be methods of the class, so they must already have been " "defined. The canonical example is the :command:`install` command." msgstr "" +"*sub_commands* est généralement défini à la *fin* d'une classe, car les " +"prédicats peuvent être des méthodes de la classe, ils doivent donc déjà " +"avoir été définis. L'exemple canonique est la commande :command:`install`." #: ../Doc/distutils/apiref.rst:1769 msgid ":mod:`distutils.command` --- Individual Distutils commands" -msgstr "" +msgstr ":mod:`distutils.command` — Commandes *Distutils* individuelles" #: ../Doc/distutils/apiref.rst:1780 msgid ":mod:`distutils.command.bdist` --- Build a binary installer" -msgstr "" +msgstr ":mod:`distutils.command.bdist` — Construit un installateur binaire" #: ../Doc/distutils/apiref.rst:1790 msgid "" ":mod:`distutils.command.bdist_packager` --- Abstract base class for packagers" msgstr "" +":mod:`distutils.command.bdist_packager` --- Classe de base abstraite pour " +"empaqueteurs" #: ../Doc/distutils/apiref.rst:1800 msgid ":mod:`distutils.command.bdist_dumb` --- Build a \"dumb\" installer" msgstr "" +":mod:`distutils.command.bdist_dumb` --- Construit un installateur passif " +"(*dumb*)" #: ../Doc/distutils/apiref.rst:1810 msgid "" ":mod:`distutils.command.bdist_msi` --- Build a Microsoft Installer binary " "package" msgstr "" +":mod:`distutils.command.bdist_msi` --- Construit un installateur Microsoft" #: ../Doc/distutils/apiref.rst:1817 msgid "Builds a `Windows Installer`_ (.msi) binary package." -msgstr "" +msgstr "Construit un installateur `Windows Installeur`_ (*.msi*)" #: ../Doc/distutils/apiref.rst:1821 msgid "" @@ -2367,48 +3107,65 @@ msgid "" "platforms, allows administrators to perform non-interactive installations, " "and allows installation through group policies." msgstr "" +"Dans la plupart des cas, l'installateur ``bdist_msi`` est un meilleur choix " +"que l'installateur ``bdist_wininst``, car il gère mieux les plates-formes " +"*Win64*, et permet en plus aux administrateurs d'effectuer des installations " +"non interactives ainsi que des installations via des stratégies de groupe." #: ../Doc/distutils/apiref.rst:1828 msgid "" ":mod:`distutils.command.bdist_rpm` --- Build a binary distribution as a " "Redhat RPM and SRPM" msgstr "" +":mod:`distutils.command.bdist_rpm` --- Construit une distribution binaire au " +"format Redhat RPM et SRPM" #: ../Doc/distutils/apiref.rst:1838 msgid ":mod:`distutils.command.bdist_wininst` --- Build a Windows installer" msgstr "" +":mod:`distutils.command.bdist_wininst` --- Construit un installateur Windows" #: ../Doc/distutils/apiref.rst:1848 msgid ":mod:`distutils.command.sdist` --- Build a source distribution" -msgstr "" +msgstr ":mod:`distutils.command.sdist` — Construit une distribution source" #: ../Doc/distutils/apiref.rst:1858 msgid ":mod:`distutils.command.build` --- Build all files of a package" msgstr "" +":mod:`distutils.command.build` --- Construit tous les fichiers d'un paquet" #: ../Doc/distutils/apiref.rst:1868 msgid "" ":mod:`distutils.command.build_clib` --- Build any C libraries in a package" msgstr "" +":mod:`distutils.command.build_clib` --- Construit toutes les bibliothèques C " +"d'un paquet" #: ../Doc/distutils/apiref.rst:1878 msgid "" ":mod:`distutils.command.build_ext` --- Build any extensions in a package" msgstr "" +":mod:`distutils.command.build_ext` --- Construit toutes les extensions d'un " +"paquet" #: ../Doc/distutils/apiref.rst:1888 msgid "" ":mod:`distutils.command.build_py` --- Build the .py/.pyc files of a package" msgstr "" +":mod:`distutils.command.build_py` --- Construit les fichiers *.py/.pyc* d'un " +"paquet" #: ../Doc/distutils/apiref.rst:1895 msgid "" ":mod:`distutils.command.build_scripts` --- Build the scripts of a package" msgstr "" +":mod:`distutils.command.build_scripts` --- Construit les scripts d'un paquet" #: ../Doc/distutils/apiref.rst:1905 msgid ":mod:`distutils.command.clean` --- Clean a package build area" msgstr "" +":mod:`distutils.command.clean` --- Nettoie un dossier de compilation d'un " +"paquet" #: ../Doc/distutils/apiref.rst:1910 msgid "" @@ -2416,58 +3173,79 @@ msgid "" "subcommands, like intermediary compiled object files. With the ``--all`` " "option, the complete build directory will be removed." msgstr "" +"Cette commande supprime les fichiers temporaires créés par la commande :" +"command:`build` et ses sous-commandes, comme les fichiers objets compilés " +"intermédiaires. Avec l'option ``--all``, le répertoire de compilation sera " +"supprimé." #: ../Doc/distutils/apiref.rst:1914 msgid "" "Extension modules built :ref:`in place ` will " "not be cleaned, as they are not in the build directory." msgstr "" +"Les modules d'extension construits :ref:`sur place ` ne seront pas effacés, car ils ne sont pas dans le répertoire " +"*build*." #: ../Doc/distutils/apiref.rst:1919 msgid ":mod:`distutils.command.config` --- Perform package configuration" msgstr "" +":mod:`distutils.command.config` --- Effectue la configuration d'un paquet" #: ../Doc/distutils/apiref.rst:1929 msgid ":mod:`distutils.command.install` --- Install a package" -msgstr "" +msgstr ":mod:`distutils.command.install` — Installe un paquet" #: ../Doc/distutils/apiref.rst:1939 msgid "" ":mod:`distutils.command.install_data` --- Install data files from a package" msgstr "" +":mod:`distutils.command.install_data` --- Installe les fichiers de données " +"d'un paquet" #: ../Doc/distutils/apiref.rst:1949 msgid "" ":mod:`distutils.command.install_headers` --- Install C/C++ header files from " "a package" msgstr "" +":mod:`distutils.command.install_headers` --- Installe les fichiers d'en-tête " +"C/C++ d'un paquet" #: ../Doc/distutils/apiref.rst:1959 msgid "" ":mod:`distutils.command.install_lib` --- Install library files from a package" msgstr "" +":mod:`distutils.command.install_lib` --- Installe les fichiers de " +"bibliothèque à partir d'un paquet" #: ../Doc/distutils/apiref.rst:1969 msgid "" ":mod:`distutils.command.install_scripts` --- Install script files from a " "package" msgstr "" +":mod:`distutils.command.install_scripts` --- Installe les fichiers de script " +"d'un paquet" #: ../Doc/distutils/apiref.rst:1979 msgid "" ":mod:`distutils.command.register` --- Register a module with the Python " "Package Index" msgstr "" +":mod:`distutils.command.register` --- Enregistre un module dans l'Index des " +"paquets Python (*Python Package Index* ou *PyPI* en anglais)" #: ../Doc/distutils/apiref.rst:1985 msgid "" "The ``register`` command registers the package with the Python Package " "Index. This is described in more detail in :pep:`301`." msgstr "" +"La commande ``register`` enregistre le paquet dans l'index des paquets " +"Python. Plus de détails à ce sujet dans la :pep:`301`." #: ../Doc/distutils/apiref.rst:1992 msgid ":mod:`distutils.command.check` --- Check the meta-data of a package" msgstr "" +":mod:`distutils.command.check` --- Vérifie les méta-données d'un paquet" #: ../Doc/distutils/apiref.rst:1998 msgid "" @@ -2475,3 +3253,6 @@ msgid "" "example, it verifies that all required meta-data are provided as the " "arguments passed to the :func:`setup` function." msgstr "" +"La commande ``check`` effectue des tests sur les méta-données d'un paquet. " +"Par exemple, elle vérifie que toutes les méta-données requises sont fournies " +"lorsque les arguments sont passés à la fonction :func:`setup`." diff --git a/distutils/extending.po b/distutils/extending.po index e3421085..c51b642b 100644 --- a/distutils/extending.po +++ b/distutils/extending.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/distutils/extending.rst:5 msgid "Extending Distutils" -msgstr "" +msgstr "Extension de Distutils" #: ../Doc/distutils/extending.rst:7 msgid "" @@ -28,6 +28,11 @@ msgid "" "while replacements for existing commands may be made to modify details of " "how the command operates on a package." msgstr "" +"*Distutils* peut être étendu de multiples façons. La plupart des extensions " +"sont soit des nouvelles commandes soit des remplacements de commandes " +"existantes. De nouvelles commandes pourraient par exemple servir à " +"l'empaquetage pour des plateformes spécifiques tandis que des remplacements " +"peuvent modifier certains aspects des commandes existantes." #: ../Doc/distutils/extending.rst:13 msgid "" @@ -36,6 +41,9 @@ msgid "" "that should be copied into packages in addition to :file:`.py` files as a " "convenience." msgstr "" +"La plupart des extensions de *distutils* sont faites dans le script :file:" +"`setup.py`. La plupart ajoutent simplement quelques extensions de fichiers " +"qui devraient être copiés dans le paquet en plus des fichiers :file:`.py`." #: ../Doc/distutils/extending.rst:18 msgid "" @@ -45,10 +53,16 @@ msgid "" "indirectly, directly subclassing the command they are replacing. Commands " "are required to derive from :class:`Command`." msgstr "" +"La plupart des implémentations des commandes *distutils* sont des sous-" +"classes de :class:`distutils.cmd.Command`. Les nouvelles commandes peuvent " +"hériter directement de :class:`Command`, alors que les remplacements " +"dérivent souvent de :class:`Command` indirectement, directement sous-" +"classant la commande qu'ils remplacent. Les commandes doivent dériver de la " +"classe :class:`Command`." #: ../Doc/distutils/extending.rst:33 msgid "Integrating new commands" -msgstr "" +msgstr "Intégrer de nouvelles commandes" #: ../Doc/distutils/extending.rst:35 msgid "" @@ -57,6 +71,11 @@ msgid "" "features in distutils itself, and wait for (and require) a version of Python " "that provides that support. This is really hard for many reasons." msgstr "" +"Il y a différentes façons d’intégrer de nouvelles implémentations de " +"commandes dans *distutils*. La plus difficile est de faire pression pour " +"inclure une nouvelle fonctionnalité dans *distutils* même, et d’attendre (et " +"demander) une version de Python l'implémentant. C'est très difficile pour " +"beaucoup de raisons." #: ../Doc/distutils/extending.rst:40 msgid "" @@ -64,6 +83,10 @@ msgid "" "include the new implementations with your :file:`setup.py` script, and cause " "the :func:`distutils.core.setup` function use them::" msgstr "" +"La plus commune, et possiblement la plus raisonnable pour la plupart des " +"cas, est d'inclure les nouvelles implémentations dans votre fichier :file:" +"`setup.py`, et de faire en sorte que la fonction :func:`distutils.core." +"setup` les utilise ::" #: ../Doc/distutils/extending.rst:55 msgid "" @@ -71,6 +94,10 @@ msgid "" "use a particular package, as everyone interested in the package will need to " "have the new command implementation." msgstr "" +"Cette approche est la plus valable si les nouvelles implémentations doivent " +"être utilisées pour utiliser un paquet particulier, vu que toutes les " +"personnes intéressées par le paquet devront avoir ces nouvelles " +"implémentations de commandes." #: ../Doc/distutils/extending.rst:59 msgid "" @@ -104,10 +131,23 @@ msgid "" "could be implemented by the class :class:`distcmds.bdist_openpkg." "bdist_openpkg` or :class:`buildcmds.bdist_openpkg.bdist_openpkg`." msgstr "" +"Cette nouvelle option peut être utilisée pour ajouter n'importe quel nombre " +"de paquet à la liste des paquets recherchés pour les implémentations de " +"commandes ; plusieurs noms de paquets doivent être séparés par des virgules. " +"Quand non spécifié, la recherche est seulement faite dans le paquet :mod:" +"`distutils.command`. Cependant, lorsque :file:`setup.py` est lancé avec " +"l'option ``--command-packages distcmds,buildcmds``, les paquets :mod:" +"`distutils.command`, :mod:`distcmds`, et :mod:`buildcmds` seront cherchés " +"dans cet ordre. Il est attendu des nouvelles commandes d’être implémentées " +"en modules du même nom que la commande en utilisant des classes partageant " +"le même nom. Comme dans l'exemple shell donné ci-dessus, la commande :" +"command:`bdist_openpkg` pourrait être implémentée avec la classe :class:" +"`distcmds.bdist_openpkg.bdist_openpkg` ou :class:`buildcmds.bdist_openpkg." +"bdist_openpkg`." #: ../Doc/distutils/extending.rst:88 msgid "Adding new distribution types" -msgstr "" +msgstr "Ajout de nouveaux types de distribution" #: ../Doc/distutils/extending.rst:90 msgid "" @@ -118,3 +158,9 @@ msgid "" "file itself. In dry-run mode, pairs should still be added to represent what " "would have been created." msgstr "" +"Les commandes qui créent des distributions (fichiers dans le dossier :file:" +"`dist/`) doivent ajouter la paire ``(command, filename)`` à ``self." +"distribution.dist_files`` pour que :command:`upload` puisse publier sur " +"PyPI. Le nom de fichier (*filename*) dans la paire ne contiens pas de " +"chemin, juste le nom du fichier lui-même. En mode *dry-run*, les paires " +"doivent toujours être ajoutées pour représenter ce qui aurait été créé." diff --git a/distutils/introduction.po b/distutils/introduction.po index d76906c3..4ce53727 100644 --- a/distutils/introduction.po +++ b/distutils/introduction.po @@ -30,7 +30,7 @@ msgstr "" #: ../Doc/distutils/introduction.rst:16 msgid "Concepts & Terminology" -msgstr "" +msgstr "Concepts et Terminologie" #: ../Doc/distutils/introduction.rst:18 msgid "" diff --git a/faq/design.po b/faq/design.po index 1dc042f4..88963d3d 100644 --- a/faq/design.po +++ b/faq/design.po @@ -1081,6 +1081,11 @@ msgid "" "by accident. It also invalidates an important invariant of dictionaries: " "every value in ``d.keys()`` is usable as a key of the dictionary." msgstr "" +"Autoriser les listes en tant que clés, mais indiquer à l'utilisateur de ne " +"pas les modifier. Cela permettrait un ensemble de bogues difficiles à suivre " +"dans les programmes lorsque vous avez oublié ou modifié une liste par " +"accident. Cela casse également un impératif important des dictionnaires : " +"chaque valeur de ``d.keys()`` est utilisable comme clé du dictionnaire." #: ../Doc/faq/design.rst:612 msgid "" @@ -1091,6 +1096,14 @@ msgid "" "read-only -- and again, self-referential objects could cause an infinite " "loop." msgstr "" +"Marquer les listes comme étant en lecture seule une fois qu'elles sont " +"utilisées comme clé de dictionnaire. Le problème est que ce n'est pas " +"seulement l'objet de niveau supérieur qui pourrait changer sa valeur; vous " +"pourriez utiliser un tuple contenant une liste comme clé. Utiliser " +"n'importe quoi comme une clé dans un dictionnaire nécessiterait de marquer " +"tous les objets accessibles à partir de là comme en lecture seule -- et " +"encore une fois, les objets se faisant référence pourraient provoquer une " +"boucle infinie." #: ../Doc/faq/design.rst:618 msgid "" @@ -1101,6 +1114,13 @@ msgid "" "dictionary (or other hash based structure), remain fixed while the object is " "in the dictionary (or other structure). ::" msgstr "" +"Il y a un truc pour contourner ceci si vous en avez besoin, mais utilisez-le " +"à vos risques et périls. Vous pouvez encapsuler une structure mutable à " +"l'intérieur d'une instance de classe qui a à la fois une méthode :meth:" +"`__eq__` et :meth:`__hash__`. Vous devez ensuite vous assurer que la valeur " +"de hachage pour tous ces objets *wrapper* qui résident dans un dictionnaire " +"(ou une autre structure basée sur le hachage), restent fixes pendant que " +"l'objet est dans le dictionnaire (ou une autre structure). ::" #: ../Doc/faq/design.rst:642 msgid "" @@ -1108,6 +1128,9 @@ msgid "" "members of the list may be unhashable and also by the possibility of " "arithmetic overflow." msgstr "" +"Notez que le calcul de hachage peut être compliqué car il est possible que " +"certains membres de la liste peuvent être impossible à hacher et aussi par " +"la possibilité de débordement arithmétique." #: ../Doc/faq/design.rst:646 msgid "" @@ -1117,6 +1140,11 @@ msgid "" "not. If you fail to meet these restrictions dictionaries and other hash " "based structures will misbehave." msgstr "" +"De plus, il faut toujours que, si ``o1 == o2`` (par exemple ``o1.__eq__(o2) " +"vaut True``) alors ``hash(o1) == hash(o2)`` (par exemple, ``o1.__hash__() == " +"o2.__hash__()``), que l’objet se trouve dans un dictionnaire ou pas. Si vous " +"ne remplissez pas ces conditions, les dictionnaires et autres structures " +"basées sur le hachage se comporteront mal." #: ../Doc/faq/design.rst:651 msgid "" @@ -1125,10 +1153,15 @@ msgid "" "you are prepared to think hard about the requirements and the consequences " "of not meeting them correctly. Consider yourself warned." msgstr "" +"Dans le cas de *ListWrapper*, chaque fois que l'objet *wrapper* est dans un " +"dictionnaire, la liste encapsulée ne doit pas changer pour éviter les " +"anomalies. Ne faites pas cela à moins que vous n’ayez pensé aux potentielles " +"conséquences de ne pas satisfaire entièrement ces conditions. Vous avez été " +"prévenus." #: ../Doc/faq/design.rst:658 msgid "Why doesn't list.sort() return the sorted list?" -msgstr "" +msgstr "Pourquoi ``list.sort()`` ne renvoie pas la liste triée ?" #: ../Doc/faq/design.rst:660 msgid "" @@ -1139,6 +1172,12 @@ msgid "" "when you need a sorted copy but also need to keep the unsorted version " "around." msgstr "" +"Dans les situations où la performance est importante, faire une copie de la " +"liste juste pour la trier serait un gaspillage. Par conséquent, :meth:`list." +"sort` trie la liste en place. Afin de vous le rappeler, il ne retourne pas " +"la liste triée. De cette façon, vous ne serez pas dupés en écrasant " +"accidentellement une liste lorsque vous avez besoin d’une copie triée, mais " +"vous devrez également garder sous la main la version non triée." #: ../Doc/faq/design.rst:666 msgid "" @@ -1151,6 +1190,8 @@ msgstr "" #: ../Doc/faq/design.rst:676 msgid "How do you specify and enforce an interface spec in Python?" msgstr "" +"Comment spécifiez-vous et appliquez-vous une spécification d’interface en " +"Python ?" #: ../Doc/faq/design.rst:678 msgid "" @@ -1159,6 +1200,10 @@ msgid "" "module. Many feel that compile-time enforcement of interface specifications " "helps in the construction of large programs." msgstr "" +"Une spécification d'interface pour un module fourni par des langages tels " +"que C++ et Java décrit les prototypes pour les méthodes et les fonctions du " +"module. Beaucoup estiment que la vérification au moment de la compilation " +"des spécifications d'interface aide à la construction de grands programmes." #: ../Doc/faq/design.rst:683 msgid "" @@ -1176,6 +1221,10 @@ msgid "" "obtained by an appropriate test discipline for components. There is also a " "tool, PyChecker, which can be used to find problems due to subclassing." msgstr "" +"Pour Python, la plupart des avantages des spécifications d'interface peuvent " +"être obtenus par une discipline de test appropriée pour les composants. Il " +"existe aussi un outil, PyChecker, qui peut être utilisé pour trouver des " +"problèmes d'héritage." #: ../Doc/faq/design.rst:694 msgid "" @@ -1188,6 +1237,15 @@ msgid "" "be used to construct exhaustive test suites that exercise every line of code " "in a module." msgstr "" +"Une bonne suite de tests pour un module peut à la fois fournir un test de " +"non régression et servir de spécification d'interface de module ainsi qu'un " +"ensemble d'exemples. De nombreux modules Python peuvent être exécutés en " +"tant que script pour fournir un simple « auto-test ». Même les modules qui " +"utilisent des interfaces externes complexes peuvent souvent être testés " +"isolément à l'aide d'émulations triviales embryonnaires de l'interface " +"externe. Les modules :mod:`doctest` et :mod:`UnitTest` ou des frameworks de " +"test tiers peuvent être utilisés pour construire des suites de tests " +"exhaustives qui éprouvent chaque ligne de code dans un module." #: ../Doc/faq/design.rst:702 msgid "" @@ -1199,6 +1257,15 @@ msgid "" "test that your :meth:`append` implementation will actually do this " "correctly, but it's trivial to check this property in a test suite." msgstr "" +"Une discipline de test appropriée peut aider à construire des applications " +"complexes de grande taille en Python aussi bien que le feraient des " +"spécifications d'interface. En fait, c'est peut être même mieux parce qu'une " +"spécification d'interface ne peut pas tester certaines propriétés d'un " +"programme. Par exemple, la méthode :meth:`Append` est censée ajouter de " +"nouveaux éléments à la fin d'une liste « sur place » ; une spécification " +"d'interface ne peut pas tester que votre implémentation de :meth:`append` va " +"réellement le faire correctement, mais il est trivial de vérifier cette " +"propriété dans une suite de tests." #: ../Doc/faq/design.rst:710 msgid "" @@ -1208,6 +1275,12 @@ msgid "" "before you write any of the actual code. Of course Python allows you to be " "sloppy and not write test cases at all." msgstr "" +"L'écriture des suites de tests est très utile, et vous voudrez peut-être " +"concevoir votre code de manière à le rendre facilement testable. Une " +"technique de plus en plus populaire, le développement dirigé par les tests, " +"requiert d'écrire d'abord des éléments de la suite de tests, avant d'écrire " +"le code réel. Bien sûr, Python vous permet d'être laxiste et de ne pas " +"écrire de test du tout." #: ../Doc/faq/design.rst:718 msgid "Why is there no goto?" @@ -1238,6 +1311,8 @@ msgstr "" #: ../Doc/faq/design.rst:740 msgid "Why can't raw strings (r-strings) end with a backslash?" msgstr "" +"Pourquoi les chaînes de caractères brutes (r-strings) ne peuvent-elles pas " +"se terminer par un *backslash* ?" #: ../Doc/faq/design.rst:742 msgid "" @@ -1245,6 +1320,9 @@ msgid "" "unpaired backslash at the end escapes the closing quote character, leaving " "an unterminated string." msgstr "" +"Plus précisément, elles ne peuvent pas se terminer par un nombre impair de " +"*backslashes* : le *backslash* non appairé à la fin échappe le caractère de " +"guillemet final, laissant une chaîne non terminée." #: ../Doc/faq/design.rst:746 msgid "" @@ -1255,17 +1333,30 @@ msgid "" "pass on the string quote character by escaping it with a backslash. These " "rules work well when r-strings are used for their intended purpose." msgstr "" +"Les chaînes brutes ont été conçues pour faciliter la création de données " +"pour les processeurs de texte (principalement les moteurs d'expressions " +"régulières) qui veulent faire leur propre traitement d'échappement " +"d'*antislashes*. Ces processeurs considèrent un *antislash* de fin non-" +"appairé comme une erreur, alors les chaînes brutes ne le permettent pas. En " +"retour, elles vous permettent de transmettre le caractère de citation de la " +"chaîne en l'échappant avec un *antislash*. Ces règles fonctionnent bien " +"lorsque les chaînes brutes sont utilisées pour leur but premier." #: ../Doc/faq/design.rst:753 msgid "" "If you're trying to build Windows pathnames, note that all Windows system " "calls accept forward slashes too::" msgstr "" +"Si vous essayez de construire des chemins d'accès Windows, notez que tous " +"les appels système Windows acceptent également les *slashes* \"classiques" +"\" ::" #: ../Doc/faq/design.rst:758 msgid "" "If you're trying to build a pathname for a DOS command, try e.g. one of ::" msgstr "" +"Si vous essayez de construire un chemin d'accès pour une commande DOS, " +"essayez par exemple l'un de ceux-là ::" #: ../Doc/faq/design.rst:766 msgid "Why doesn't Python have a \"with\" statement for attribute assignments?" @@ -1316,7 +1407,7 @@ msgstr "" #: ../Doc/faq/design.rst:789 msgid "For instance, take the following incomplete snippet::" -msgstr "" +msgstr "Prenons par exemple l'extrait incomplet suivant ::" #: ../Doc/faq/design.rst:795 msgid "" @@ -1326,6 +1417,11 @@ msgid "" "variable named \"x\", will it be used inside the with block? As you see, " "the dynamic nature of Python makes such choices much harder." msgstr "" +"L'extrait suppose que \"a\" doit avoir un attribut membre appelé \"x\". " +"Néanmoins, il n'y a rien en Python qui en informe l'interpréteur. Que se " +"passe-t-il si \"a\" est, disons, un entier ? Si une variable globale nommée " +"\"x\" existe, sera-t-elle utilisée dans le bloc ``with`` ? Comme vous " +"voyez, la nature dynamique du Python rend ces choix beaucoup plus difficiles." #: ../Doc/faq/design.rst:801 msgid "" @@ -1333,10 +1429,13 @@ msgid "" "code volume) can, however, easily be achieved in Python by assignment. " "Instead of::" msgstr "" +"L'avantage principal de ``with`` et des fonctionnalités de langage " +"similaires (réduction du volume de code) peut, cependant, être facilement " +"réalisé en Python par assignation. Au lieu de ::" #: ../Doc/faq/design.rst:808 msgid "write this::" -msgstr "" +msgstr "écrivez ceci ::" #: ../Doc/faq/design.rst:815 msgid "" @@ -1344,20 +1443,27 @@ msgid "" "bindings are resolved at run-time in Python, and the second version only " "needs to perform the resolution once." msgstr "" +"Cela a également pour effet secondaire d'augmenter la vitesse d'exécution " +"car les liaisons de noms sont résolues au moment de l'exécution en Python, " +"et la deuxième version n'a besoin d'exécuter la résolution qu'une seule fois." #: ../Doc/faq/design.rst:821 msgid "Why are colons required for the if/while/def/class statements?" msgstr "" +"Pourquoi les deux-points sont-ils nécessaires pour les déclarations ``if/" +"while/def/class`` ?" #: ../Doc/faq/design.rst:823 msgid "" "The colon is required primarily to enhance readability (one of the results " "of the experimental ABC language). Consider this::" msgstr "" +"Le deux-points est principalement nécessaires pour améliorer la lisibilité " +"(l'un des résultats du langage expérimental ABC). Considérez ceci ::" #: ../Doc/faq/design.rst:829 msgid "versus ::" -msgstr "" +msgstr "versus ::" #: ../Doc/faq/design.rst:834 msgid "" @@ -1365,6 +1471,9 @@ msgid "" "colon sets off the example in this FAQ answer; it's a standard usage in " "English." msgstr "" +"Remarquez comment le deuxième est un peu plus facile à lire. Remarquez " +"aussi comment un deux-points introduit l'exemple dans cette réponse à la " +"FAQ ; c'est un usage standard en anglais." #: ../Doc/faq/design.rst:837 msgid "" @@ -1373,16 +1482,23 @@ msgid "" "needs to be increased instead of having to do a more elaborate parsing of " "the program text." msgstr "" +"Une autre raison mineure est que les deux-points facilitent la tâche des " +"éditeurs avec coloration syntaxique ; ils peuvent rechercher les deux-points " +"pour décider quand l'indentation doit être augmentée au lieu d'avoir à faire " +"une analyse plus élaborée du texte du programme." #: ../Doc/faq/design.rst:843 msgid "Why does Python allow commas at the end of lists and tuples?" msgstr "" +"Pourquoi Python permet-il les virgules à la fin des listes et des tuples ?" #: ../Doc/faq/design.rst:845 msgid "" "Python lets you add a trailing comma at the end of lists, tuples, and " "dictionaries::" msgstr "" +"Python vous permet d'ajouter une virgule à la fin des listes, des tuples et " +"des dictionnaires ::" #: ../Doc/faq/design.rst:856 msgid "There are several reasons to allow this." @@ -1395,12 +1511,19 @@ msgid "" "remember to add a comma to the previous line. The lines can also be " "reordered without creating a syntax error." msgstr "" +"Lorsque vous avez une valeur littérale pour une liste, un tuple ou un " +"dictionnaire réparti sur plusieurs lignes, il est plus facile d'ajouter plus " +"d'éléments parce que vous n'avez pas besoin de vous rappeler d'ajouter une " +"virgule à la ligne précédente. Les lignes peuvent aussi être réorganisées " +"sans créer une erreur de syntaxe." #: ../Doc/faq/design.rst:863 msgid "" "Accidentally omitting the comma can lead to errors that are hard to " "diagnose. For example::" msgstr "" +"L'omission accidentelle de la virgule peut entraîner des erreurs difficiles " +"à diagnostiquer, par exemple ::" #: ../Doc/faq/design.rst:873 msgid "" @@ -1408,9 +1531,13 @@ msgid "" "\"fee\", \"fiefoo\" and \"fum\". Always adding the comma avoids this source " "of error." msgstr "" +"Cette liste a l'air d'avoir quatre éléments, mais elle en contient en fait " +"trois : \"*fee*\", \"*fiefoo*\" et \"*fum*\". Toujours ajouter la virgule " +"permet d'éviter cette source d'erreur." #: ../Doc/faq/design.rst:876 msgid "" "Allowing the trailing comma may also make programmatic code generation " "easier." msgstr "" +"Permettre la virgule de fin peut également faciliter la génération de code." diff --git a/faq/windows.po b/faq/windows.po index 3f8e39f6..a9fb089c 100644 --- a/faq/windows.po +++ b/faq/windows.po @@ -459,6 +459,8 @@ msgstr "" #: ../Doc/faq/windows.rst:303 msgid "How do I check for a keypress without blocking?" msgstr "" +"Comment puis-je vérifier de manière non bloquante qu'une touche a été " +"pressée ?" #: ../Doc/faq/windows.rst:305 msgid "" @@ -466,6 +468,10 @@ msgid "" "module. It defines a function ``kbhit()`` which checks whether a keyboard " "hit is present, and ``getch()`` which gets one character without echoing it." msgstr "" +"Utilisez le module ``msvcrt``. C'est une extension standard spécifique à " +"Windows, qui définit une fonction ``kbhit()`` qui vérifie si une pression de " +"touche s'est produite, et ``getch()`` qui récupère le caractère sans " +"l'afficher." #: ../Doc/faq/windows.rst:311 msgid "How do I emulate os.kill() in Windows?" diff --git a/howto/cporting.po b/howto/cporting.po index f064966e..ff74e85e 100644 --- a/howto/cporting.po +++ b/howto/cporting.po @@ -39,7 +39,7 @@ msgstr "" #: ../Doc/howto/cporting.rst:23 msgid "Conditional compilation" -msgstr "" +msgstr "Compilation conditionnelle" #: ../Doc/howto/cporting.rst:25 msgid "" diff --git a/howto/functional.po b/howto/functional.po index 7dbdf34b..6dfca97b 100644 --- a/howto/functional.po +++ b/howto/functional.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/howto/functional.rst:3 msgid "Functional Programming HOWTO" -msgstr "" +msgstr "Guide pratique : programmation fonctionnelle" #: ../Doc/howto/functional.rst:5 msgid "A. M. Kuchling" diff --git a/howto/logging-cookbook.po b/howto/logging-cookbook.po index 361992b6..52498548 100644 --- a/howto/logging-cookbook.po +++ b/howto/logging-cookbook.po @@ -22,7 +22,7 @@ msgstr "" #: ../Doc/howto/logging-cookbook.rst:7 msgid "Vinay Sajip " -msgstr "" +msgstr "Vinay Sajip " #: ../Doc/howto/logging-cookbook.rst:9 msgid "" diff --git a/howto/logging.po b/howto/logging.po index f321bc07..a80ea3bd 100644 --- a/howto/logging.po +++ b/howto/logging.po @@ -18,15 +18,15 @@ msgstr "" #: ../Doc/howto/logging.rst:3 msgid "Logging HOWTO" -msgstr "" +msgstr "Tutoriel sur la journalisation" #: ../Doc/howto/logging.rst:5 msgid "Vinay Sajip " -msgstr "" +msgstr "Vinay Sajip " #: ../Doc/howto/logging.rst:12 msgid "Basic Logging Tutorial" -msgstr "" +msgstr "Les bases de l'utilisation du module `logging`" #: ../Doc/howto/logging.rst:14 msgid "" @@ -38,10 +38,19 @@ msgid "" "which the developer ascribes to the event; the importance can also be called " "the *level* or *severity*." msgstr "" +"La journalisation (*logging* en anglais) est une façon de suivre les " +"événements qui ont lieu durant le fonctionnement d'un logiciel. Le " +"développeur du logiciel ajoute des appels à l'outil de journalisation dans " +"son code pour indiquer que certains événements ont eu lieu. Un événement est " +"décrit par un message descriptif, qui peut éventuellement contenir des " +"données variables (c'est-à-dire qui peuvent être différentes pour chaque " +"occurrence de l'événement). Un événement a aussi une importance que le " +"développeur lui attribue ; cette importance peut aussi être appelée *niveau* " +"ou *sévérité*." #: ../Doc/howto/logging.rst:23 msgid "When to use logging" -msgstr "" +msgstr "Quand utiliser `logging`" #: ../Doc/howto/logging.rst:25 msgid "" @@ -50,19 +59,26 @@ msgid "" "func:`critical`. To determine when to use logging, see the table below, " "which states, for each of a set of common tasks, the best tool to use for it." msgstr "" +"Le module *logging* fournit un ensemble de fonctions de commodités pour une " +"utilisation simple du module. Ce sont les fonctions :func:`debug`, :func:" +"`info`, :func:`warning`, :func:`error` et :func:`critical`. Pour déterminer " +"quand employer la journalisation, voyez la table ci-dessous, qui vous " +"indique, pour chaque tâche parmi les plus communes, l'outil approprié." #: ../Doc/howto/logging.rst:31 msgid "Task you want to perform" -msgstr "" +msgstr "Tâche que vous souhaitez mener" #: ../Doc/howto/logging.rst:31 msgid "The best tool for the task" -msgstr "" +msgstr "Le meilleur outil pour cette tâche" #: ../Doc/howto/logging.rst:33 msgid "" "Display console output for ordinary usage of a command line script or program" msgstr "" +"Affiche la sortie console d'un script en ligne de commande ou d'un programme " +"lors de son utilisation ordinaire" #: ../Doc/howto/logging.rst:33 msgid ":func:`print`" @@ -73,48 +89,65 @@ msgid "" "Report events that occur during normal operation of a program (e.g. for " "status monitoring or fault investigation)" msgstr "" +"Rapporter des évènements qui ont lieu au cours du fonctionnement normal d'un " +"programme (par exemple pour suivre un statut ou examiner des " +"dysfonctionnements)" #: ../Doc/howto/logging.rst:37 msgid "" ":func:`logging.info` (or :func:`logging.debug` for very detailed output for " "diagnostic purposes)" msgstr "" +":func:`logging.info` (ou :func:`logging.debug` pour une sortie très " +"détaillée à visée diagnostique)" #: ../Doc/howto/logging.rst:42 msgid "Issue a warning regarding a particular runtime event" msgstr "" +"Émettre un avertissement (*warning* en anglais) en relation avec un " +"évènement particulier au cours du fonctionnement d’un programme" #: ../Doc/howto/logging.rst:42 msgid "" ":func:`warnings.warn` in library code if the issue is avoidable and the " "client application should be modified to eliminate the warning" msgstr "" +":func:`warnings.warn` dans le code de la bibliothèque si le problème est " +"évitable et l'application cliente doit être modifiée pour éliminer cet " +"avertissement" #: ../Doc/howto/logging.rst:47 msgid "" ":func:`logging.warning` if there is nothing the client application can do " "about the situation, but the event should still be noted" msgstr "" +":func:`logging.warning` si l'application cliente ne peut rien faire pour " +"corriger la situation mais l'évènement devrait quand même être noté" #: ../Doc/howto/logging.rst:52 msgid "Report an error regarding a particular runtime event" msgstr "" +"Rapporter une erreur lors d'un évènement particulier en cours d'exécution" #: ../Doc/howto/logging.rst:52 msgid "Raise an exception" -msgstr "" +msgstr "Lever une exception" #: ../Doc/howto/logging.rst:55 msgid "" "Report suppression of an error without raising an exception (e.g. error " "handler in a long-running server process)" msgstr "" +"Rapporter la suppression d'une erreur sans lever d'exception (par exemple " +"pour la gestion d'erreur d'un processus de long terme sur un serveur)" #: ../Doc/howto/logging.rst:55 msgid "" ":func:`logging.error`, :func:`logging.exception` or :func:`logging.critical` " "as appropriate for the specific error and application domain" msgstr "" +":func:`logging.error`, :func:`logging.exception` ou :func:`logging." +"critical`, au mieux, selon l'erreur spécifique et le domaine d'application" #: ../Doc/howto/logging.rst:62 msgid "" @@ -122,14 +155,17 @@ msgid "" "they are used to track. The standard levels and their applicability are " "described below (in increasing order of severity):" msgstr "" +"Les fonctions de journalisation sont nommées d'après le niveau ou la " +"sévérité des évènements qu'elles suivent. Les niveaux standards et leurs " +"applications sont décrits ci-dessous (par ordre croissant de sévérité) :" #: ../Doc/howto/logging.rst:69 ../Doc/howto/logging.rst:802 msgid "Level" -msgstr "" +msgstr "Niveau" #: ../Doc/howto/logging.rst:69 msgid "When it's used" -msgstr "" +msgstr "Quand il est utilisé" #: ../Doc/howto/logging.rst:71 ../Doc/howto/logging.rst:812 msgid "``DEBUG``" @@ -139,6 +175,8 @@ msgstr "``DEBUG``" msgid "" "Detailed information, typically of interest only when diagnosing problems." msgstr "" +"Information détaillée, intéressante seulement lorsqu'on diagnostique un " +"problème." #: ../Doc/howto/logging.rst:74 ../Doc/howto/logging.rst:810 msgid "``INFO``" @@ -146,7 +184,7 @@ msgstr "``INFO``" #: ../Doc/howto/logging.rst:74 msgid "Confirmation that things are working as expected." -msgstr "" +msgstr "Confirmation que tout fonctionne comme prévu." #: ../Doc/howto/logging.rst:77 ../Doc/howto/logging.rst:808 msgid "``WARNING``" @@ -158,6 +196,9 @@ msgid "" "problem in the near future (e.g. 'disk space low'). The software is still " "working as expected." msgstr "" +"L'indication que quelque chose d'inattendu a eu lieu, ou de la possibilité " +"d'un problème dans un futur proche (par exemple « espace disque faible »). " +"Le logiciel fonctionne encore normalement." #: ../Doc/howto/logging.rst:82 ../Doc/howto/logging.rst:806 msgid "``ERROR``" @@ -168,6 +209,8 @@ msgid "" "Due to a more serious problem, the software has not been able to perform " "some function." msgstr "" +"Du fait d'un problème plus sérieux, le logiciel n'a pas été capable de " +"réaliser une tâche." #: ../Doc/howto/logging.rst:85 ../Doc/howto/logging.rst:804 msgid "``CRITICAL``" @@ -178,6 +221,8 @@ msgid "" "A serious error, indicating that the program itself may be unable to " "continue running." msgstr "" +"Une erreur sérieuse, indiquant que le programme lui-même pourrait être " +"incapable de continuer à fonctionner." #: ../Doc/howto/logging.rst:89 msgid "" @@ -185,6 +230,9 @@ msgid "" "and above will be tracked, unless the logging package is configured to do " "otherwise." msgstr "" +"Le niveau par défaut est ``WARNING``, ce qui signifie que seuls les " +"évènements de ce niveau et au-dessus sont suivis, sauf si le paquet " +"*logging* est configuré pour faire autrement." #: ../Doc/howto/logging.rst:93 msgid "" @@ -192,18 +240,22 @@ msgid "" "of handling tracked events is to print them to the console. Another common " "way is to write them to a disk file." msgstr "" +"Les évènements suivis peuvent être gérés de différentes façons. La manière " +"la plus simple est de les afficher dans la console. Une autre méthode " +"commune est de les écrire dans un fichier." #: ../Doc/howto/logging.rst:101 msgid "A simple example" -msgstr "" +msgstr "Un exemple simple" #: ../Doc/howto/logging.rst:103 msgid "A very simple example is::" -msgstr "" +msgstr "Un exemple très simple est : ::" #: ../Doc/howto/logging.rst:109 msgid "If you type these lines into a script and run it, you'll see:" msgstr "" +"Si vous entrez ces lignes dans un script que vous exécutez, vous verrez :" #: ../Doc/howto/logging.rst:115 msgid "" @@ -214,10 +266,17 @@ msgid "" "explained later. The actual output can be formatted quite flexibly if you " "need that; formatting options will also be explained later." msgstr "" +"affiché dans la console. Le message ``INFO`` n'apparaît pas parce que le " +"niveau par défaut est ``WARNING``. Le message affiché inclut l'indication du " +"niveau et la description de l'évènement fournie dans l'appel à *logging*, " +"ici « Watch out! ». Ne vous préoccupez pas de la partie « *root* » pour le " +"moment : nous détaillerons ce point plus bas. La sortie elle-même peut être " +"formatée de multiples manières si besoin. Les options de formatage seront " +"aussi expliquées plus bas." #: ../Doc/howto/logging.rst:124 msgid "Logging to a file" -msgstr "" +msgstr "Enregistrer les évènements dans un fichier" #: ../Doc/howto/logging.rst:126 msgid "" @@ -226,6 +285,10 @@ msgid "" "Python interpreter, and don't just continue from the session described " "above::" msgstr "" +"Il est très commun d'enregistrer les évènements dans un fichier, c'est donc " +"ce que nous allons regarder maintenant. Il faut essayer ce qui suit avec un " +"interpréteur Python nouvellement démarré, ne poursuivez pas la session " +"commencée ci-dessus ::" #: ../Doc/howto/logging.rst:136 msgid "" @@ -239,6 +302,9 @@ msgid "" "threshold for tracking. In this case, because we set the threshold to " "``DEBUG``, all of the messages were printed." msgstr "" +"Cet exemple montre aussi comment on peut régler le niveau de journalisation " +"qui sert de seuil pour le suivi. Dans ce cas, comme nous avons réglé le " +"seuil à ``DEBUG``, tous les messages ont été écrits." #: ../Doc/howto/logging.rst:147 msgid "" @@ -250,6 +316,8 @@ msgid "" "and you have the value of the parameter passed for ``--log`` in some " "variable *loglevel*, you can use::" msgstr "" +"et que vous passez ensuite la valeur du paramètre donné à l'option `--log` " +"dans une variable *loglevel*, vous pouvez utiliser : ::" #: ../Doc/howto/logging.rst:156 msgid "" @@ -257,6 +325,9 @@ msgid "" "argument. You may want to error check any user input value, perhaps as in " "the following example::" msgstr "" +"de manière à obtenir la valeur à passer à :func:`basicConfig` à travers " +"l'argument *level*. Vous pouvez vérifier que l'utilisateur n'a fait aucune " +"erreur pour la valeur de ce paramètre, comme dans l'exemple ci-dessous : ::" #: ../Doc/howto/logging.rst:168 msgid "" @@ -265,6 +336,10 @@ msgid "" "configuration facility, only the first call will actually do anything: " "subsequent calls are effectively no-ops." msgstr "" +"L'appel à :func:`basicConfig` doit être fait *avant* un appel à :func:" +"`debug`, :func:`info`, etc. Comme l'objectif est d'avoir un outil de " +"configuration simple et d'usage unique, seul le premier appel aura un effet, " +"les appels suivants ne font rien." #: ../Doc/howto/logging.rst:173 msgid "" @@ -273,22 +348,32 @@ msgid "" "afresh, not remembering the messages from earlier runs, you can specify the " "*filemode* argument, by changing the call in the above example to::" msgstr "" +"Si vous exécutez le script plusieurs fois, les messages des exécutions " +"successives sont ajoutés au fichier *example.log*. Si vous voulez que chaque " +"exécution reprenne un fichier vierge, sans conserver les messages des " +"exécutions précédentes, vous pouvez spécifier l'argument *filemode*, en " +"changeant l'appel à l'exemple précédent par ::" #: ../Doc/howto/logging.rst:180 msgid "" "The output will be the same as before, but the log file is no longer " "appended to, so the messages from earlier runs are lost." msgstr "" +"La sortie est identique à la précédente, mais le texte n'est plus ajouté au " +"fichier de log, donc les messages des exécutions précédentes sont perdus." #: ../Doc/howto/logging.rst:185 msgid "Logging from multiple modules" -msgstr "" +msgstr "Employer *logging* à partir de différents modules" #: ../Doc/howto/logging.rst:187 msgid "" "If your program consists of multiple modules, here's an example of how you " "could organize logging in it::" msgstr "" +"Si votre programme est composé de plusieurs modules, voici une façon " +"d'organiser\n" +"l'outil de journalisation : ::" #: ../Doc/howto/logging.rst:211 msgid "If you run *myapp.py*, you should see this in *myapp.log*::" @@ -304,20 +389,30 @@ msgid "" "to refer to the documentation beyond the tutorial level -- see :ref:`logging-" "advanced-tutorial`." msgstr "" +"ce qui est normalement ce à quoi vous vous attendiez. Vous pouvez " +"généraliser cela à plusieurs modules, en employant le motif de *mylib.py*. " +"Remarquez qu'avec cette méthode simple, vous ne pourrez pas savoir, en " +"lisant le fichier de log, *d'où* viennent les messages dans votre " +"application, sauf dans la description de l'évènement. Si vous voulez suivre " +"la localisation des messages, référerez-vous à la documentation avancée :ref:" +"`logging-advanced-tutorial`." #: ../Doc/howto/logging.rst:227 msgid "Logging variable data" -msgstr "" +msgstr "Journalisation de données variables" #: ../Doc/howto/logging.rst:229 msgid "" "To log variable data, use a format string for the event description message " "and append the variable data as arguments. For example::" msgstr "" +"Pour enregistrer des données variables, utilisez une chaîne formatée dans le " +"message de description de l'évènement et ajoutez les données variables comme " +"argument. Par exemple : ::" #: ../Doc/howto/logging.rst:235 msgid "will display:" -msgstr "" +msgstr "affichera :" #: ../Doc/howto/logging.rst:241 msgid "" @@ -331,13 +426,15 @@ msgstr "" #: ../Doc/howto/logging.rst:250 msgid "Changing the format of displayed messages" -msgstr "" +msgstr "Modifier le format du message affiché" #: ../Doc/howto/logging.rst:252 msgid "" "To change the format which is used to display messages, you need to specify " "the format you want to use::" msgstr "" +"Pour changer le format utilisé pour afficher le message, vous devez préciser " +"le format que vous souhaitez employer : ::" #: ../Doc/howto/logging.rst:261 msgid "which would print::" @@ -352,16 +449,25 @@ msgid "" "including variable data) and perhaps to display when the event occurred. " "This is described in the next section." msgstr "" +"Notez que le `root` qui apparaissait dans les exemples précédents a disparu. " +"Pour voir l'ensemble des éléments qui peuvent apparaître dans la chaîne de " +"format, référez-vous à la documentation pour :ref:`logrecord-attributes`. " +"Pour une utilisation simple, vous avez seulement besoin du *levelname* (la " +"sévérité), du *message* (la description de l'évènement, avec les données " +"variables) et peut-être du moment auquel l'évènement a eu lieu. Nous " +"décrivons ces points dans la prochaine section." #: ../Doc/howto/logging.rst:276 msgid "Displaying the date/time in messages" -msgstr "" +msgstr "Afficher l'horodatage dans les messages" #: ../Doc/howto/logging.rst:278 msgid "" "To display the date and time of an event, you would place '%(asctime)s' in " "your format string::" msgstr "" +"Pour afficher la date ou le temps d'un évènement, ajoutez `%(asctime)` dans " +"votre chaîne de formatage : ::" #: ../Doc/howto/logging.rst:285 msgid "which should print something like this::" @@ -382,11 +488,11 @@ msgstr "" msgid "" "The format of the *datefmt* argument is the same as supported by :func:`time." "strftime`." -msgstr "" +msgstr "Le format de *datefmt* est le même que celui de :func:`time.strftime`." #: ../Doc/howto/logging.rst:306 msgid "Next Steps" -msgstr "" +msgstr "Étapes suivantes" #: ../Doc/howto/logging.rst:308 msgid "" @@ -396,6 +502,11 @@ msgid "" "time in reading the following sections. If you're ready for that, grab some " "of your favourite beverage and carry on." msgstr "" +"Nous concluons ainsi le tutoriel basique. Il devrait suffire à vous mettre " +"le pied à l'étrier pour utiliser `logging`. Le module `logging` a beaucoup " +"d'autre cordes à son arc, mais pour en profiter au maximum, vous devez " +"prendre le temps de lire les sections suivantes. Si vous êtes prêt, servez-" +"vous votre boisson préférée et poursuivons." #: ../Doc/howto/logging.rst:314 msgid "" @@ -412,42 +523,58 @@ msgid "" "slightly more advanced/in-depth tutorial than the basic one above. After " "that, you can take a look at the :ref:`logging-cookbook`." msgstr "" +"Vous êtes encore là ? Vous pouvez lire les prochaines sections, qui donnent " +"un peu plus de détails que l'introduction ci-dessus. Après ça, vous pouvez " +"jeter un œil à :ref:`logging-cookbook`." #: ../Doc/howto/logging.rst:328 msgid "Advanced Logging Tutorial" -msgstr "" +msgstr "Usage avancé de Logging" #: ../Doc/howto/logging.rst:330 msgid "" "The logging library takes a modular approach and offers several categories " "of components: loggers, handlers, filters, and formatters." msgstr "" +"La bibliothèque de journalisation adopte une approche modulaire et offre " +"différentes catégories de composants : *loggers*, *handlers*, *filters* et " +"*formatters*." #: ../Doc/howto/logging.rst:333 msgid "Loggers expose the interface that application code directly uses." msgstr "" +"Les enregistreurs (*loggers* en anglais) exposent l'interface que le code de " +"l'application utilise directement." #: ../Doc/howto/logging.rst:334 msgid "" "Handlers send the log records (created by loggers) to the appropriate " "destination." msgstr "" +"Les gestionnaires (*handlers*) envoient les entrées de journal (crées par " +"les *loggers*) vers les destinations voulues." #: ../Doc/howto/logging.rst:336 msgid "" "Filters provide a finer grained facility for determining which log records " "to output." msgstr "" +"Les filtres (*filters*) fournissent un moyen de choisir finement quelles " +"entrées de journal doivent être sorties." #: ../Doc/howto/logging.rst:338 msgid "Formatters specify the layout of log records in the final output." msgstr "" +"Les formateurs (*formatters*) spécifient la structure de l'entrée de journal " +"dans la sortie finale." #: ../Doc/howto/logging.rst:340 msgid "" "Log event information is passed between loggers, handlers, filters and " "formatters in a :class:`LogRecord` instance." msgstr "" +"L'information relative à un événement est passée entre *loggers*, *handlers* " +"et *formatters* dans une instance de la classe :class:`LogRecord`." #: ../Doc/howto/logging.rst:343 msgid "" @@ -459,18 +586,32 @@ msgid "" "want, and indicate the area of an application in which a logged message " "originates." msgstr "" +"La journalisation est réalisée en appelant les méthodes d'instance de la " +"classe :class:`Logger` (que l'on appelle ci-dessous :dfn:`loggers`). Chaque " +"instance a un nom et les instances sont organisées conceptuellement comme " +"des hiérarchies dans l'espace de nommage, en utilisant un point comme " +"séparateur. Par exemple, un `logger` appelé `scan` est le parent des " +"`loggers` `scan.text`, `scan.html` et `scan.pdf`. Les noms des `loggers` " +"peuvent être ce que vous voulez et indiquent le sous-domaine d'une " +"application depuis lequel le message enregistré a été émis." #: ../Doc/howto/logging.rst:350 msgid "" "A good convention to use when naming loggers is to use a module-level " "logger, in each module which uses logging, named as follows::" msgstr "" +"Une bonne convention lorsqu'on nomme les *loggers* est d'utiliser un " +"*logger* au niveau du module, dans chaque module qui emploie `logging`, " +"nommé de la façon suivante : ::" #: ../Doc/howto/logging.rst:355 msgid "" "This means that logger names track the package/module hierarchy, and it's " "intuitively obvious where events are logged just from the logger name." msgstr "" +"Cela signifie que le nom d'un `logger` se rapporte à la hiérarchie du paquet " +"et des modules, et il est évident de voir où un événement a été enregistré " +"simplement en regardant le nom du `logger`." #: ../Doc/howto/logging.rst:358 msgid "" @@ -480,6 +621,12 @@ msgid "" "the root logger. The functions and the methods have the same signatures. The " "root logger's name is printed as 'root' in the logged output." msgstr "" +"La racine de la hiérarchie des `loggers` est appelée le *root logger*. C'est " +"le `logger` utilisé par les fonctions :func:`debug`, :func:`info`, :func:" +"`warning`, :func:`error` et :func:`critical`, qui appelle en fait les " +"méthodes du même nom de l'objet *root logger*. Les fonctions et les méthodes " +"ont la même signature. Le nom du *root logger* est affiché comme « `root` » " +"dans la sortie." #: ../Doc/howto/logging.rst:364 msgid "" @@ -503,6 +650,15 @@ msgid "" "displayed message before delegating to the root logger to do the actual " "message output." msgstr "" +"Par défaut, aucune destination n'est prédéfinie pour les messages de " +"journalisation. Vous pouvez définir une destination (comme la console ou un " +"fichier) en utilisant :func:`basicConfig` comme dans les exemples donnés " +"dans le tutoriel. Si vous appelez les fonctions :func:`debug`, :func:" +"`info`, :func:`warning`, :func:`error` et :func:`critical`, celles-ci " +"vérifient si une destination a été définie ; si ce n'est pas le cas, la " +"destination est assignée à la console (``sys.stderr``) avec un format par " +"défaut pour le message affiché, avant d'être déléguée au *logger* racine, " +"qui sort le message." #: ../Doc/howto/logging.rst:379 msgid "The default format set by :func:`basicConfig` for messages is::" @@ -514,20 +670,26 @@ msgid "" "the *format* keyword argument. For all options regarding how a format string " "is constructed, see :ref:`formatter-objects`." msgstr "" +"Vous pouvez modifier ce comportement en passant une chaîne de formatage à :" +"func:`basicConfig` par l'argument nommé *format*. Consultez :ref:`formatter-" +"objects` pour toutes les options de construction de cette chaîne de " +"formatage." #: ../Doc/howto/logging.rst:388 msgid "Logging Flow" -msgstr "" +msgstr "Flux du processus de journalisation" #: ../Doc/howto/logging.rst:390 msgid "" "The flow of log event information in loggers and handlers is illustrated in " "the following diagram." msgstr "" +"Le flux des informations associées à un évènement dans les `loggers` et les " +"`handlers` est illustré dans le diagramme suivant." #: ../Doc/howto/logging.rst:396 msgid "Loggers" -msgstr "" +msgstr "Loggers" #: ../Doc/howto/logging.rst:398 msgid "" @@ -538,16 +700,25 @@ msgid "" "Third, logger objects pass along relevant log messages to all interested log " "handlers." msgstr "" +"Les objets de classe :class:`Logger` ont un rôle triple. Premièrement, ils " +"exposent plusieurs méthodes au code de l'application, de manière à ce " +"qu'elle puisse enregistrer des messages en cours d'exécution. Deuxièmement, " +"les objets `logger` déterminent sur quel message agir selon leur sévérité (à " +"partir des filtres par défaut) ou selon les objets `filter` associés. " +"Troisièmement, les objets `logger` transmettent les messages pertinents à " +"tous les `handlers` concernés." #: ../Doc/howto/logging.rst:404 msgid "" "The most widely used methods on logger objects fall into two categories: " "configuration and message sending." msgstr "" +"Les méthodes des objets `logger` les plus utilisées appartiennent à deux " +"catégories : la configuration et l'envoi de messages." #: ../Doc/howto/logging.rst:407 msgid "These are the most common configuration methods:" -msgstr "" +msgstr "Voici les méthodes de configuration les plus communes :" #: ../Doc/howto/logging.rst:409 msgid "" @@ -557,6 +728,11 @@ msgid "" "INFO, the logger will handle only INFO, WARNING, ERROR, and CRITICAL " "messages and will ignore DEBUG messages." msgstr "" +":meth:`Logger.setLevel` spécifie le plus bas niveau de sévérité qu'un " +"`logger` traitera. Ainsi, `debug` est le niveau de sévérité défini par " +"défaut le plus bas et `critical` est le plus haut. Par exemple, si le niveau " +"de sévérité est INFO, le `logger` ne traite que les messages de niveau INFO, " +"WARNING, ERROR et CRITICAL ; il ignore les messages de niveau DEBUG." #: ../Doc/howto/logging.rst:415 msgid "" @@ -564,6 +740,9 @@ msgid "" "handler objects from the logger object. Handlers are covered in more detail " "in :ref:`handler-basic`." msgstr "" +":meth:`Logger.addHandler` et :meth:`Logger.removeHandler` ajoutent ou " +"enlèvent des objets `handlers` au `logger`. Les objets `handlers` sont " +"expliqués plus en détail dans :ref:`handler-basic`." #: ../Doc/howto/logging.rst:419 msgid "" @@ -571,17 +750,25 @@ msgid "" "filter objects from the logger object. Filters are covered in more detail " "in :ref:`filter`." msgstr "" +":meth:`Logger.addFilter` et :meth:`Logger.removeFilter` ajoutent ou enlèvent " +"des objets `filter` au `logger`. Les objets `filters` sont expliqués plus en " +"détail dans :ref:`filter`." #: ../Doc/howto/logging.rst:423 msgid "" "You don't need to always call these methods on every logger you create. See " "the last two paragraphs in this section." msgstr "" +"Comme nous l'expliquons aux deux derniers paragraphes de cette section, vous " +"n'avez pas besoin de faire appel à ces méthodes à chaque fois que vous créez " +"un `logger`." #: ../Doc/howto/logging.rst:426 msgid "" "With the logger object configured, the following methods create log messages:" msgstr "" +"Une fois que l'objet `logger` est correctement configuré, les méthodes " +"suivantes permettent de créer un message :" #: ../Doc/howto/logging.rst:428 msgid "" @@ -602,6 +789,10 @@ msgid "" "error`. The difference is that :meth:`Logger.exception` dumps a stack trace " "along with it. Call this method only from an exception handler." msgstr "" +":meth:`Logger.exception` crée un message similaire à :meth:`Logger.error`. " +"La différence est que :meth:`Logger.exception` ajoute la trace de la pile " +"d'exécution au message. On ne peut appeler cette méthode qu'à l'intérieur " +"d'un bloc de gestion d'exception." #: ../Doc/howto/logging.rst:442 msgid "" @@ -610,6 +801,11 @@ msgid "" "convenience methods listed above, but this is how to log at custom log " "levels." msgstr "" +":meth:`Logger.log` prend le niveau de sévérité comme argument explicite. " +"C'est un peu plus verbeux pour enregistrer des messages que d'utiliser les " +"méthodes plus pratiques décrites si dessus, mais c'est ce qui permet " +"d'enregistrer des messages pour des niveaux de sévérité définis par " +"l'utilisateur." #: ../Doc/howto/logging.rst:446 msgid "" @@ -622,6 +818,15 @@ msgid "" "loggers with names of ``foo.bar``, ``foo.bar.baz``, and ``foo.bam`` are all " "descendants of ``foo``." msgstr "" +":func:`getLogger` renvoie une référence à un objet `logger` du nom spécifié " +"si celui-ci est donné en argument. Dans le cas contraire, se sera le `logger " +"root`. Ces noms sont des structures hiérarchiques séparées par des points. " +"Des appels répétés à :func:`getLogger` avec le même nom renvoient une " +"référence au même objet `logger`. Les `loggers` qui sont plus bas dans cette " +"liste hiérarchique sont des enfants des `loggers` plus haut dans la liste. " +"Par exemple, si un `logger` a le nom ``foo``, les `loggers` avec les noms " +"``foo.bar``, ``foo.bar.baz``, et ``foo.bam`` sont tous des descendants de " +"``foo``." #: ../Doc/howto/logging.rst:454 msgid "" @@ -634,6 +839,14 @@ msgid "" "the logger is used to determine whether the event is passed to the logger's " "handlers." msgstr "" +"On associe aux `loggers` un concept de *niveau effectif*. Si aucun niveau " +"n'est explicitement défini pour un `logger`, c'est le niveau du parent qui " +"est utilisé comme niveau effectif. Si le parent n'a pas de niveau défini, " +"c'est celui de *son* parent qui est considéré, et ainsi de suite ; on " +"examine tous les ancêtres jusqu'à ce qu'un niveau explicite soit trouvé. Le " +"`logger root` a toujours un niveau explicite (``WARNING`` par défaut). Quand " +"le `logger` traite un événement, c'est ce niveau effectif qui est utilisé " +"pour déterminer si cet événement est transmis à ses `handlers`." #: ../Doc/howto/logging.rst:462 msgid "" @@ -644,10 +857,17 @@ msgid "" "needed. (You can, however, turn off propagation by setting the *propagate* " "attribute of a logger to ``False``.)" msgstr "" +"Les `loggers` fils font remonter leurs messages aux `handlers` associés à " +"leurs `loggers` parents. De ce fait, il n'est pas nécessaire de définir et " +"configurer des `handlers` pour tous les `loggers` employés par une " +"application. Il suffit de configurer les `handlers` pour un `logger` de haut " +"niveau et de créer des `loggers` fils quand c'est nécessaire (on peut " +"cependant empêcher la propagation aux ancêtres des messages en donnant la " +"valeur ``False`` à l'attribut *propagate* d'un `logger`)." #: ../Doc/howto/logging.rst:473 msgid "Handlers" -msgstr "" +msgstr "Handlers" #: ../Doc/howto/logging.rst:475 msgid "" @@ -661,6 +881,16 @@ msgid "" "individual handlers where each handler is responsible for sending messages " "of a specific severity to a specific location." msgstr "" +"Les objets de type :class:`~logging.Handler` sont responsables de la " +"distribution des messages (selon leur niveau de sévérité) vers les " +"destinations spécifiées pour ce `handler`. Les objets :class:`Logger` " +"peuvent ajouter des objets `handler` à eux-mêmes en appelant :meth:`~Logger." +"addHandler`. Pour donner un exemple, une application peut envoyer tous les " +"messages dans un fichier journal, tous les messages de niveau `error` ou " +"supérieur vers la sortie standard, et tous les messages de niveau `critical` " +"vers une adresse de courriel. Dans ce scenario, nous avons besoin de trois " +"`handlers`, responsable chacun d'envoyer des messages d'une sévérité donnée " +"vers une destination donnée." #: ../Doc/howto/logging.rst:485 msgid "" @@ -668,6 +898,9 @@ msgid "" "handlers`); the tutorials use mainly :class:`StreamHandler` and :class:" "`FileHandler` in its examples." msgstr "" +"La bibliothèque standard inclut déjà un bon nombre de types de gestionnaires " +"(voir :ref:`useful-handlers`) ; le tutoriel utilise surtout :class:" +"`StreamHandler` et :class:`FileHandler` dans ses exemples." #: ../Doc/howto/logging.rst:489 msgid "" @@ -676,6 +909,10 @@ msgid "" "application developers who are using the built-in handler objects (that is, " "not creating custom handlers) are the following configuration methods:" msgstr "" +"Peu de méthodes des objets `handlers` sont intéressantes pour les " +"développeurs. Les seules méthodes intéressantes lorsqu'on utilise les objets " +"`handlers` natifs (c'est à dire si l'on ne crée pas d'`handler` " +"personnalisé) sont les méthodes de configuration suivantes :" #: ../Doc/howto/logging.rst:494 msgid "" @@ -686,18 +923,28 @@ msgid "" "level set in each handler determines which messages that handler will send " "on." msgstr "" +"La méthode :meth:`~Handler.setLevel`, comme celle des objets `logger` permet " +"de spécifier le plus bas niveau de sévérité qui sera distribué à la " +"destination appropriée. Pourquoi y a-t-il deux méthodes :func:`setLevel` ? " +"Le niveau défini dans le `logger` détermine quelle sévérité doit avoir un " +"message pour être transmis à ses `handlers`. Le niveau mis pour chaque " +"`handler` détermine quels messages seront envoyés aux destinations." #: ../Doc/howto/logging.rst:500 msgid "" ":meth:`~Handler.setFormatter` selects a Formatter object for this handler to " "use." msgstr "" +":meth:`~Handler.setFormatter` sélectionne l'objet `Formatter` utilisé par " +"cet `handler`." #: ../Doc/howto/logging.rst:503 msgid "" ":meth:`~Handler.addFilter` and :meth:`~Handler.removeFilter` respectively " "configure and deconfigure filter objects on handlers." msgstr "" +":meth:`~Handler.addFilter` et :meth:`~Handler.removeFilter` configurent et " +"respectivement dé-configurent des objets `filter` sur les `handlers`." #: ../Doc/howto/logging.rst:506 msgid "" @@ -706,10 +953,15 @@ msgid "" "the interface that all handlers should have and establishes some default " "behavior that child classes can use (or override)." msgstr "" +"Le code d'une application ne devrait ni instancier, ni utiliser d'instances " +"de la classe :class:`Handler`. La classe :class:`Handler` est plutôt d'une " +"classe de base qui définit l'interface que tous les gestionnaires doivent " +"avoir et établit les comportements par défaut que les classes filles peuvent " +"employer (ou redéfinir)." #: ../Doc/howto/logging.rst:513 msgid "Formatters" -msgstr "" +msgstr "Formatters" #: ../Doc/howto/logging.rst:515 msgid "" @@ -744,6 +996,9 @@ msgid "" "format, the severity of the message, and the contents of the message, in " "that order::" msgstr "" +"La chaîne de formatage de message suivante enregistrera le temps dans un " +"format lisible par les humains, la sévérité du message et son contenu, dans " +"cet ordre ::" #: ../Doc/howto/logging.rst:539 msgid "" @@ -755,20 +1010,31 @@ msgid "" "want all logging times to be shown in GMT, set the ``converter`` attribute " "in the Formatter class (to ``time.gmtime`` for GMT display)." msgstr "" +"Les `formatters` emploient une fonction configurable par l'utilisateur pour " +"convertir le temps de création d'une entrée de journal en un tuple. Par " +"défaut, :func:`time.localtime` est employé ; pour changer cela pour une " +"instance particulière de `formatter`, assignez une fonction avec la même " +"signature que :func:`time.localtime` ou :func:`time.gmtime` à l'attribut " +"``converter`` de cette instance. Pour changer cela pour tous les " +"`formatters`, par exemple si vous voulez que tous votre horodatage soit " +"affiché en GMT, changez l'attribut ``converter`` de la classe ``Formatter`` " +"en ``time.gmtime``." #: ../Doc/howto/logging.rst:549 msgid "Configuring Logging" -msgstr "" +msgstr "Configuration de `Logging`" #: ../Doc/howto/logging.rst:553 msgid "Programmers can configure logging in three ways:" -msgstr "" +msgstr "On peut configurer `logging` de trois façons :" #: ../Doc/howto/logging.rst:555 msgid "" "Creating loggers, handlers, and formatters explicitly using Python code that " "calls the configuration methods listed above." msgstr "" +"Créer des `loggers`, `handlers` et `formatters` explicitement en utilisant " +"du code Python qui appelle les méthodes de configuration listées ci-dessus." #: ../Doc/howto/logging.rst:557 msgid "" @@ -781,6 +1047,8 @@ msgid "" "Creating a dictionary of configuration information and passing it to the :" "func:`dictConfig` function." msgstr "" +"Créer un dictionnaire d'informations de configuration et le passer à la " +"fonction :func:`dictConfig`." #: ../Doc/howto/logging.rst:562 msgid "" @@ -788,11 +1056,17 @@ msgid "" "config-api`. The following example configures a very simple logger, a " "console handler, and a simple formatter using Python code::" msgstr "" +"Pour la documentation de référence de ces deux dernières options, voyez :ref:" +"`logging-config-api`. L'exemple suivant configure un `logger` très simple, " +"un `handler` employant la console, et un `formatter` simple en utilisant du " +"code Python ::" #: ../Doc/howto/logging.rst:592 msgid "" "Running this module from the command line produces the following output:" msgstr "" +"L'exécution de ce module via la ligne de commande produit la sortie " +"suivante :" #: ../Doc/howto/logging.rst:603 msgid "" @@ -800,6 +1074,9 @@ msgid "" "identical to those in the example listed above, with the only difference " "being the names of the objects::" msgstr "" +"Le module Python suivant crée un *logger*, un *handler* et un *formatter* " +"identiques à ceux de l'exemple détaillé au-dessus, au nom des objets " +"près : ::" #: ../Doc/howto/logging.rst:622 msgid "Here is the logging.conf file::" @@ -809,6 +1086,8 @@ msgstr "" msgid "" "The output is nearly identical to that of the non-config-file-based example:" msgstr "" +"La sortie est presque identique à celle de l'exemple qui n'est pas basé sur " +"un fichier de configuration :" #: ../Doc/howto/logging.rst:664 msgid "" @@ -816,6 +1095,10 @@ msgid "" "Python code approach, mainly separation of configuration and code and the " "ability of noncoders to easily modify the logging properties." msgstr "" +"Vous pouvez constatez les avantages de l'approche par fichier de " +"configuration par rapport à celle du code Python, principalement la " +"séparation de la configuration et du code, et la possibilité pour une " +"personne qui ne code pas de modifier facilement les propriétés de `logging`." #: ../Doc/howto/logging.rst:668 msgid "" @@ -847,6 +1130,13 @@ msgid "" "module ``mymodule``, where ``mypackage`` is available on the Python import " "path)." msgstr "" +"Notez que les noms de classe référencés dans le fichier de configuration " +"doivent être relatifs au module `logging`, ou des valeurs absolues qui " +"peuvent être résolues à travers les mécanismes d'importation habituels. " +"Ainsi, on peut soit utiliser :class:`~logging.handlers.WatchedFileHandler` " +"(relativement au module `logging`) ou ``mypackage.mymodule.MyHandler`` (pour " +"une classe définie dans le paquet ``mypackage`` et le module ``mymodule``, " +"si ``mypackage`` est disponible dans les chemins d'importation de Python)." #: ../Doc/howto/logging.rst:693 msgid "" @@ -874,10 +1164,12 @@ msgid "" "For more information about logging using a dictionary, see :ref:`logging-" "config-api`." msgstr "" +"Pour plus d'informations sur la journalisation à l'aide d'un dictionnaire, " +"consultez :ref:`logging-config-api`." #: ../Doc/howto/logging.rst:731 msgid "What happens if no configuration is provided" -msgstr "" +msgstr "Comportement par défaut (si aucune configuration n'est fournie)" #: ../Doc/howto/logging.rst:733 msgid "" @@ -886,6 +1178,11 @@ msgid "" "output the event. The behaviour of the logging package in these " "circumstances is dependent on the Python version." msgstr "" +"Si aucune configuration de journalisation n'est fournie, il est possible " +"d'avoir une situation où un événement doit faire l'objet d'une " +"journalisation, mais où aucun gestionnaire ne peut être trouvé pour tracer " +"l'événement. Le comportement du paquet ``logging`` dans ces circonstances " +"dépend de la version Python." #: ../Doc/howto/logging.rst:738 msgid "For Python 2.x, the behaviour is as follows:" @@ -896,16 +1193,21 @@ msgid "" "If *logging.raiseExceptions* is ``False`` (production mode), the event is " "silently dropped." msgstr "" +"Si *logging.raiseExceptions* vaut ``False`` (mode production), l’événement " +"est silencieusement abandonné." #: ../Doc/howto/logging.rst:743 msgid "" "If *logging.raiseExceptions* is ``True`` (development mode), a message 'No " "handlers could be found for logger X.Y.Z' is printed once." msgstr "" +"Si *logging.raiseExceptions* vaut ``True`` (mode de développement), un " +"message *No handlers could be found for logger X.Y.Z* est écrit sur la " +"sortie standard une fois." #: ../Doc/howto/logging.rst:749 msgid "Configuring Logging for a Library" -msgstr "" +msgstr "Configuration de la journalisation pour une bibliothèque" #: ../Doc/howto/logging.rst:751 msgid "" @@ -945,6 +1247,9 @@ msgid "" "libraries, then the logger name specified can be 'orgname.foo' rather than " "just 'foo'." msgstr "" +"doit avoir l'effet désiré. Si une organisation produit un certain nombre de " +"bibliothèques, le nom de l'enregistreur spécifié peut être ``orgname.foo`` " +"plutôt que simplement ``foo``." #: ../Doc/howto/logging.rst:782 msgid "" @@ -956,10 +1261,18 @@ msgid "" "handlers 'under the hood', you might well interfere with their ability to " "carry out unit tests and deliver logs which suit their requirements." msgstr "" +"Il est vivement conseillé de ne *pas ajouter de gestionnaires autres que* :" +"class:`~logging.NullHandler` *aux enregistreurs de votre bibliothèque*. Cela " +"est dû au fait que la configuration des gestionnaires est la prérogative du " +"développeur d'applications qui utilise votre bibliothèque. Le développeur " +"d'applications connaît le public cible et les gestionnaires les plus " +"appropriés pour ses applications : si vous ajoutez des gestionnaires « sous " +"le manteau », vous pourriez bien interférer avec les tests unitaires et la " +"journalisation qui convient à ses exigences." #: ../Doc/howto/logging.rst:793 msgid "Logging Levels" -msgstr "" +msgstr "Niveaux de journalisation" #: ../Doc/howto/logging.rst:795 msgid "" @@ -969,10 +1282,15 @@ msgid "" "define a level with the same numeric value, it overwrites the predefined " "value; the predefined name is lost." msgstr "" +"Les valeurs numériques des niveaux de journalisation sont données dans le " +"tableau suivant. Celles-ci n'ont d'intérêt que si vous voulez définir vos " +"propres niveaux, avec des valeurs spécifiques par rapport aux niveaux " +"prédéfinis. Si vous définissez un niveau avec la même valeur numérique, il " +"écrase la valeur prédéfinie ; le nom prédéfini est perdu." #: ../Doc/howto/logging.rst:802 msgid "Numeric value" -msgstr "" +msgstr "Valeur numérique" #: ../Doc/howto/logging.rst:804 msgid "50" @@ -1011,6 +1329,14 @@ msgid "" "the method call's, no logging message is actually generated. This is the " "basic mechanism controlling the verbosity of logging output." msgstr "" +"Les niveaux peuvent également être associés à des enregistreurs, étant " +"définis soit par le développeur, soit par le chargement d'une configuration " +"de journalisation enregistrée. Lorsqu'une méthode de journalisation est " +"appelée sur un enregistreur, l'enregistreur compare son propre niveau avec " +"le niveau associé à l'appel de méthode. Si le niveau de l'enregistreur est " +"supérieur à l'appel de méthode, aucun message de journalisation n'est " +"réellement généré. C'est le mécanisme de base contrôlant la verbosité de la " +"sortie de journalisation." #: ../Doc/howto/logging.rst:824 msgid "" @@ -1018,6 +1344,10 @@ msgid "" "class. When a logger decides to actually log an event, a :class:`~logging." "LogRecord` instance is created from the logging message." msgstr "" +"Les messages de journalisation sont codés en tant qu'instances de :class:" +"`~logging.LogRecord`. Lorsqu'un enregistreur décide de réellement " +"enregistrer un événement, une instance de :class:`~logging.LogRecord` est " +"créée à partir du message de journalisation." #: ../Doc/howto/logging.rst:828 msgid "" @@ -1035,6 +1365,23 @@ msgid "" "message (unless the *propagate* flag for a logger is set to a false value, " "at which point the passing to ancestor handlers stops)." msgstr "" +"Les messages de journalisation sont soumis à un mécanisme d'expédition via " +"l'utilisation de :dfn:`handlers`, qui sont des instances de sous-classes de " +"la classe :class:`Handler`. Les gestionnaires sont chargés de s'assurer " +"qu'un message journalisé (sous la forme d'un :class:`LogRecord`) atterrit " +"dans un emplacement particulier (ou un ensemble d'emplacements) qui est " +"utile pour le public cible pour ce message (tels que les utilisateurs " +"finaux, le personnel chargé de l'assistance aux utilisateurs, les " +"administrateurs système ou les développeurs). Des instances de :class:" +"`LogRecord` adaptées à leur destination finale sont passées aux " +"gestionnaires destinées à des destinations particulières. Chaque " +"enregistreur peut avoir zéro, un ou plusieurs gestionnaires associés à celui-" +"ci (via la méthode :meth:`~Logger.addHandler` de :class:`Logger`). En plus " +"de tous les gestionnaires directement associés à un enregistreur, *tous les " +"gestionnaires associés à tous les ancêtres de l'enregistreur* sont appelés " +"pour envoyer le message (à moins que l'indicateur *propager* pour un " +"enregistreur soit défini sur la valeur ``False``, auquel cas le passage à " +"l'ancêtre gestionnaires s'arrête)." #: ../Doc/howto/logging.rst:842 msgid "" @@ -1045,10 +1392,17 @@ msgid "" "defined subclasses of :class:`Handler` will need to override this :meth:" "`~Handler.emit`." msgstr "" +"Tout comme pour les enregistreurs, les gestionnaires peuvent avoir des " +"niveaux associés. Le niveau d'un gestionnaire agit comme un filtre de la " +"même manière que le niveau d'un enregistreur. Si un gestionnaire décide de " +"réellement distribuer un événement, la méthode :meth:`~Handler.emit` est " +"utilisée pour envoyer le message à sa destination. La plupart des sous-" +"classes définies par l'utilisateur de :class:`Handler` devront remplacer ce :" +"meth:`~Handler.emit`." #: ../Doc/howto/logging.rst:851 msgid "Custom Levels" -msgstr "" +msgstr "Niveaux personnalisés" #: ../Doc/howto/logging.rst:853 msgid "" @@ -1062,26 +1416,43 @@ msgid "" "difficult for the using developer to control and/or interpret, because a " "given numeric value might mean different things for different libraries." msgstr "" +"La définition de vos propres niveaux est possible, mais ne devrait pas être " +"nécessaire, car les niveaux existants ont été choisis par expérience. " +"Cependant, si vous êtes convaincu que vous avez besoin de niveaux " +"personnalisés, prenez grand soin à leur réalisation et il est pratiquement " +"certain que c’est *une très mauvaise idée de définir des niveaux " +"personnalisés si vous développez une bibliothèque*. Car si plusieurs auteurs " +"de bibliothèque définissent tous leurs propres niveaux personnalisés, il y a " +"une chance que la sortie de journalisation de ces multiples bibliothèques " +"utilisées ensemble sera difficile pour le développeur à utiliser pour " +"contrôler et/ou interpréter, car une valeur numérique donnée peut signifier " +"des choses différentes pour différentes bibliothèques." #: ../Doc/howto/logging.rst:866 msgid "Useful Handlers" -msgstr "" +msgstr "Gestionnaires utiles" #: ../Doc/howto/logging.rst:868 msgid "" "In addition to the base :class:`Handler` class, many useful subclasses are " "provided:" msgstr "" +"En plus de la classe de base :class:`Handler`, de nombreuses sous-classes " +"utiles sont fournies :" #: ../Doc/howto/logging.rst:871 msgid "" ":class:`StreamHandler` instances send messages to streams (file-like " "objects)." msgstr "" +"Les instances :class:`StreamHandler` envoient des messages aux flux (objets " +"de type fichier)." #: ../Doc/howto/logging.rst:874 msgid ":class:`FileHandler` instances send messages to disk files." msgstr "" +"Les instances :class:`FileHandler` envoient des messages à des fichiers sur " +"le disque." #: ../Doc/howto/logging.rst:876 msgid "" @@ -1090,12 +1461,20 @@ msgid "" "directly. Instead, use :class:`~handlers.RotatingFileHandler` or :class:" "`~handlers.TimedRotatingFileHandler`." msgstr "" +":class:`~handlers.BaseRotatingHandler` est la classe de base pour les " +"gestionnaires qui assurent la rotation des fichiers de journalisation à " +"partir d’un certain point. Elle n'est pas destinée à être instanciée " +"directement. Utilisez plutôt :class:`~handlers.RotatingFileHandler` ou :" +"class:`~handlers.TimedRotatingFileHandler`." #: ../Doc/howto/logging.rst:881 msgid "" ":class:`~handlers.RotatingFileHandler` instances send messages to disk " "files, with support for maximum log file sizes and log file rotation." msgstr "" +"Les instances :class:`~handlers.RotatingFileHandler` envoient des messages à " +"des fichiers sur le disque, avec la prise en charge des tailles maximales de " +"fichiers de journalisation et de la rotation des fichiers de journalisation." #: ../Doc/howto/logging.rst:884 msgid "" @@ -1118,30 +1497,41 @@ msgid "" ":class:`~handlers.SMTPHandler` instances send messages to a designated email " "address." msgstr "" +"Les instances de :class:`~handlers.SMTPHandler` envoient des messages à une " +"adresse e-mail désignée." #: ../Doc/howto/logging.rst:896 msgid "" ":class:`~handlers.SysLogHandler` instances send messages to a Unix syslog " "daemon, possibly on a remote machine." msgstr "" +"Les instances de :class:`~handlers.SysLogHandler` envoient des messages à un " +"*daemon* *syslog* UNIX, éventuellement sur un ordinateur distant." #: ../Doc/howto/logging.rst:899 msgid "" ":class:`~handlers.NTEventLogHandler` instances send messages to a Windows " "NT/2000/XP event log." msgstr "" +"Les instances de :class:`~handlers.NTEventLogHandler` envoient des messages " +"à un journal des événements Windows NT/2000/XP." #: ../Doc/howto/logging.rst:902 msgid "" ":class:`~handlers.MemoryHandler` instances send messages to a buffer in " "memory, which is flushed whenever specific criteria are met." msgstr "" +"Les instances de :class:`~handlers.MemoryHandler` envoient des messages à un " +"tampon en mémoire, qui est vidé chaque fois que des critères spécifiques " +"sont remplis." #: ../Doc/howto/logging.rst:905 msgid "" ":class:`~handlers.HTTPHandler` instances send messages to an HTTP server " "using either ``GET`` or ``POST`` semantics." msgstr "" +"Les instances de :class:`~handlers.HTTPHandler` envoient des messages à un " +"serveur HTTP à l'aide de la sémantique ``GET`` ou ``POST``." #: ../Doc/howto/logging.rst:908 msgid "" @@ -1150,6 +1540,11 @@ msgid "" "name. This handler is only useful on Unix-like systems; Windows does not " "support the underlying mechanism used." msgstr "" +"Les instances de :class:`~handlers.WatchedFileHandler` surveillent le " +"fichier sur lequel elles se connectent. Si le fichier change, il est fermé " +"et rouvert à l'aide du nom de fichier. Ce gestionnaire n'est utile que sur " +"les systèmes de type UNIX ; Windows ne prend pas en charge le mécanisme sous-" +"jacent utilisé." #: ../Doc/howto/logging.rst:913 msgid "" @@ -1159,10 +1554,16 @@ msgid "" "the library user has not configured logging. See :ref:`library-config` for " "more information." msgstr "" +"Les instances :class:`NullHandler` ne font rien avec les messages d'erreur. " +"Ils sont utilisés par les développeurs de bibliothèques qui veulent utiliser " +"la journalisation, mais qui veulent éviter les messages de type *No handlers " +"could be found for logger XXX*, affiché si celui qui utilise la bibliothèque " +"n'a pas configuré la journalisation. Voir :ref:`library-config` pour plus " +"d'informations." #: ../Doc/howto/logging.rst:919 msgid "The :class:`NullHandler` class." -msgstr "" +msgstr "La classe :class:`NullHandler`." #: ../Doc/howto/logging.rst:922 msgid "" @@ -1178,6 +1579,10 @@ msgid "" "class:`Formatter` class. They are initialized with a format string suitable " "for use with the % operator and a dictionary." msgstr "" +"Les messages journalisés sont mis en forme pour la présentation via des " +"instances de la classe :class:`Formatter`. Ils sont initialisés avec une " +"chaîne de format appropriée pour une utilisation avec l'opérateur % et un " +"dictionnaire." #: ../Doc/howto/logging.rst:931 msgid "" @@ -1186,6 +1591,10 @@ msgid "" "applied to each message in the batch), there is provision for header and " "trailer format strings." msgstr "" +"Pour formater plusieurs messages dans un lot, des instances de :class:" +"`~handlers.BufferingFormatter` peuvent être utilisées. En plus de la chaîne " +"de format (qui est appliquée à chaque message dans le lot), il existe des " +"dispositions pour les chaînes de format d'en-tête et de fin." #: ../Doc/howto/logging.rst:936 msgid "" @@ -1196,6 +1605,13 @@ msgid "" "consult all their filters for permission. If any filter returns a false " "value, the message is not processed further." msgstr "" +"Lorsque le filtrage basé sur le niveau de l'enregistreur et/ou le niveau du " +"gestionnaire ne suffit pas, les instances de :class:`Filter` peuvent être " +"ajoutées aux deux instances de :class:`Logger` et :class:`Handler` (par le " +"biais de leur méthode :meth:`~Handler.addFilter`). Avant de décider de " +"traiter un message plus loin, les enregistreurs et les gestionnaires " +"consultent tous leurs filtres pour obtenir l'autorisation. Si un filtre " +"renvoie une valeur ``False``, le traitement du message est arrêté." #: ../Doc/howto/logging.rst:943 msgid "" @@ -1203,10 +1619,14 @@ msgid "" "name. If this feature is used, messages sent to the named logger and its " "children are allowed through the filter, and all others dropped." msgstr "" +"La fonctionnalité de base :class:`Filter` permet de filtrer par nom de " +"*logger* spécifique. Si cette fonctionnalité est utilisée, les messages " +"envoyés à l'enregistreur nommé et à ses enfants sont autorisés via le filtre " +"et tous les autres sont abandonnés." #: ../Doc/howto/logging.rst:951 msgid "Exceptions raised during logging" -msgstr "" +msgstr "Exceptions levées par la journalisation" #: ../Doc/howto/logging.rst:953 msgid "" @@ -1215,6 +1635,12 @@ msgid "" "logging events - such as logging misconfiguration, network or other similar " "errors - do not cause the application using logging to terminate prematurely." msgstr "" +"Le paquet de journalisation est conçu pour ne pas faire apparaître les " +"exceptions qui se produisent lors de la journalisation en production. Il " +"s'agit de sorte que les erreurs qui se produisent lors de la gestion des " +"événements de journalisation (telles qu'une mauvaise configuration de la " +"journalisation , une erreur réseau ou d'autres erreurs similaires) ne " +"provoquent pas l'arrêt de l'application utilisant la journalisation." #: ../Doc/howto/logging.rst:958 msgid "" @@ -1223,6 +1649,10 @@ msgid "" "method of a :class:`Handler` subclass are passed to its :meth:`~Handler." "handleError` method." msgstr "" +"Les exceptions :class:`SystemExit` et :class:`KeyboardInterrupt` ne sont " +"jamais passées sous silence. Les autres exceptions qui se produisent pendant " +"la méthode :meth:`~Handler.emit` d'une sous classe :class:`Handler` sont " +"passées à sa méthode :meth:`~Handler.handleError`." #: ../Doc/howto/logging.rst:963 msgid "" @@ -1231,6 +1661,11 @@ msgid "" "is set. If set, a traceback is printed to :data:`sys.stderr`. If not set, " "the exception is swallowed." msgstr "" +"L'implémentation par défaut de :meth:`~Handler.handleError` dans la classe :" +"class:`Handler` vérifie si une variable au niveau du module, :data:" +"`raiseExceptions`, est définie. Si cette valeur est définie, la trace de la " +"pile d'appels est affichée sur :data:`sys.stderr`. Si elle n'est pas " +"définie, l'exception est passée sous silence." #: ../Doc/howto/logging.rst:968 msgid "" @@ -1239,10 +1674,14 @@ msgid "" "occur. It's advised that you set :data:`raiseExceptions` to ``False`` for " "production usage." msgstr "" +"La valeur par défaut de :data:`raiseExceptions` est ``True``. C'est parce " +"que pendant le développement, vous voulez généralement être notifié de " +"toutes les exceptions qui se produisent. Il est conseillé de définir :data:" +"`raiseExceptions` à ``False`` pour une utilisation en production." #: ../Doc/howto/logging.rst:977 msgid "Using arbitrary objects as messages" -msgstr "" +msgstr "Utilisation d'objets arbitraires comme messages" #: ../Doc/howto/logging.rst:979 msgid "" @@ -1255,10 +1694,19 @@ msgid "" "`~handlers.SocketHandler` emits an event by pickling it and sending it over " "the wire." msgstr "" +"Dans les sections et exemples précédents, il a été supposé que le message " +"passé lors de la journalisation de l'événement est une chaîne. Cependant, ce " +"n'est pas la seule possibilité. Vous pouvez passer un objet arbitraire en " +"tant que message et sa méthode :meth:`~object.__str__` est appelée lorsque " +"le système de journalisation doit le convertir en une représentation sous " +"forme de chaîne. En fait, si vous le souhaitez, vous pouvez complètement " +"éviter de calculer une représentation sous forme de chaîne. Par exemple, les " +"gestionnaires :class:`~handlers.SocketHandler` émettent un événement en lui " +"appliquant *pickle* et en l'envoyant sur le réseau." #: ../Doc/howto/logging.rst:990 msgid "Optimization" -msgstr "" +msgstr "Optimisation" #: ../Doc/howto/logging.rst:992 msgid "" @@ -1270,12 +1718,23 @@ msgid "" "event would be created by the Logger for that level of call. You can write " "code like this::" msgstr "" +"La mise en forme des arguments de message est différée jusqu'à ce qu'elle ne " +"puisse pas être évitée. Toutefois, le calcul des arguments passés à la " +"méthode de journalisation peut également être coûteux et vous voudrez peut-" +"être éviter de le faire si l'enregistreur va simplement jeter votre " +"événement. Pour décider de ce qu'il faut faire, vous pouvez appeler la " +"méthode :meth:`~Logger.isEnabledFor` qui prend en argument le niveau et " +"renvoie ``True`` si un événement est créé par l'enregistreur pour ce niveau " +"d'appel. Vous pouvez écrire un code qui ressemble à ça ::" #: ../Doc/howto/logging.rst:1004 msgid "" "so that if the logger's threshold is set above ``DEBUG``, the calls to :func:" "`expensive_func1` and :func:`expensive_func2` are never made." msgstr "" +"de sorte que si le seuil du journaliseur est défini au-dessus de ``DEBUG``, " +"les appels à :func:`expensive_func1` et :func:`expensive_func2` ne sont " +"jamais faits." #: ../Doc/howto/logging.rst:1007 msgid "" @@ -1288,6 +1747,16 @@ msgid "" "need to be recomputed when the logging configuration changes dynamically " "while the application is running (which is not all that common)." msgstr "" +"Dans certains cas, :meth:`~Logger.isEnabledFor` peut être plus coûteux que " +"vous le souhaitez (par exemple pour les enregistreurs profondément imbriqués " +"où un niveau explicite n'est défini que dans la hiérarchie des " +"enregistreurs). Dans de tels cas (ou si vous souhaitez éviter d'appeler une " +"méthode dans des boucles optimisées), vous pouvez mettre en cache le " +"résultat d'un appel à :meth:`~Logger.isEnabledFor` dans une variable locale " +"ou d'instance, et l'utiliser au lieu d'appeler la méthode à chaque fois. Une " +"telle valeur mise en cache ne doit être recalculée que lorsque la " +"configuration de journalisation change dynamiquement pendant l'exécution de " +"l'application (ce qui est rarement le cas)." #: ../Doc/howto/logging.rst:1016 msgid "" @@ -1296,18 +1765,23 @@ msgid "" "Here's a list of things you can do to avoid processing during logging which " "you don't need:" msgstr "" +"Il existe d'autres optimisations qui peuvent être faites pour des " +"applications spécifiques qui nécessitent un contrôle plus précis sur les " +"informations de journalisation collectées. Voici une liste de choses que " +"vous pouvez faire pour éviter le traitement pendant la journalisation dont " +"vous n'avez pas besoin :" #: ../Doc/howto/logging.rst:1022 msgid "What you don't want to collect" -msgstr "" +msgstr "Ce que vous ne voulez pas collecter" #: ../Doc/howto/logging.rst:1022 msgid "How to avoid collecting it" -msgstr "" +msgstr "Comment éviter de le collecter" #: ../Doc/howto/logging.rst:1024 msgid "Information about where calls were made from." -msgstr "" +msgstr "Informations sur l'endroit où les appels ont été faits." #: ../Doc/howto/logging.rst:1024 msgid "" @@ -1318,19 +1792,19 @@ msgstr "" #: ../Doc/howto/logging.rst:1031 msgid "Threading information." -msgstr "" +msgstr "Informations de *threading*." #: ../Doc/howto/logging.rst:1031 msgid "Set ``logging.logThreads`` to ``0``." -msgstr "" +msgstr "Mettez ``logging.logThreads`` à ``0``." #: ../Doc/howto/logging.rst:1033 msgid "Process information." -msgstr "" +msgstr "Informations sur le processus." #: ../Doc/howto/logging.rst:1033 msgid "Set ``logging.logProcesses`` to ``0``." -msgstr "" +msgstr "Mettez ``logging.logProcesses`` à ``0``." #: ../Doc/howto/logging.rst:1036 msgid "" @@ -1338,31 +1812,34 @@ msgid "" "you don't import :mod:`logging.handlers` and :mod:`logging.config`, they " "won't take up any memory." msgstr "" +"Notez également que le module de journalisation principale inclut uniquement " +"les gestionnaires de base. Si vous n'importez pas :mod:`logging.handlers` " +"et :mod:`logging.config`, ils ne prendront pas de mémoire." #: ../Doc/howto/logging.rst:1043 msgid "Module :mod:`logging`" -msgstr "" +msgstr "Module :mod:`logging`" #: ../Doc/howto/logging.rst:1043 msgid "API reference for the logging module." -msgstr "" +msgstr "Référence d'API pour le module de journalisation." #: ../Doc/howto/logging.rst:1046 msgid "Module :mod:`logging.config`" -msgstr "" +msgstr "Module :mod:`logging.config`" #: ../Doc/howto/logging.rst:1046 msgid "Configuration API for the logging module." -msgstr "" +msgstr "API de configuration pour le module de journalisation." #: ../Doc/howto/logging.rst:1049 msgid "Module :mod:`logging.handlers`" -msgstr "" +msgstr "Module :mod:`logging.handlers`" #: ../Doc/howto/logging.rst:1049 msgid "Useful handlers included with the logging module." -msgstr "" +msgstr "Gestionnaires utiles inclus avec le module de journalisation." #: ../Doc/howto/logging.rst:1051 msgid ":ref:`A logging cookbook `" -msgstr "" +msgstr ":ref:`A logging cookbook `" diff --git a/howto/pyporting.po b/howto/pyporting.po index b5d00bbd..4d1c73d9 100644 --- a/howto/pyporting.po +++ b/howto/pyporting.po @@ -259,7 +259,7 @@ msgstr "" #: ../Doc/howto/pyporting.rst:157 msgid "Division" -msgstr "" +msgstr "Division" #: ../Doc/howto/pyporting.rst:159 msgid "" diff --git a/howto/sockets.po b/howto/sockets.po index 64d1479b..2bd180bb 100644 --- a/howto/sockets.po +++ b/howto/sockets.po @@ -22,7 +22,7 @@ msgstr "" #: ../Doc/howto/sockets.rst:7 msgid "Gordon McMillan" -msgstr "" +msgstr "Gordon McMillan" #: ../Doc/howto/sockets.rst:0 msgid "Abstract" @@ -118,6 +118,12 @@ msgid "" "machine. ``s.bind(('', 80))`` specifies that the socket is reachable by any " "address the machine happens to have." msgstr "" +"Quelques remarques : nous avons utilisé ``socket.gethostname()`` pour que le " +"connecteur soit visible par le monde extérieur. Si nous avions utilisé ``s." +"bind((('localhost', 80))`` ou ``s.bind((('127.0.0.0.1', 80))`` nous aurions " +"encore un connecteur \"serveur\", mais qui ne serait visible que sur la " +"machine même. ``s.bind('', 80)]`` spécifie que le socket est accessible par " +"toute adresse que la machine possède." #: ../Doc/howto/sockets.rst:91 msgid "" @@ -125,6 +131,9 @@ msgid "" "known\" services (HTTP, SNMP etc). If you're playing around, use a nice high " "number (4 digits)." msgstr "" +"Une deuxième chose à noter : les ports dont le numéro est petit sont " +"généralement réservés aux services \"bien connus\" (HTTP, SNMP, etc.). Si " +"vous expérimentez, utilisez un nombre suffisamment élevé (4 chiffres)." #: ../Doc/howto/sockets.rst:95 msgid "" @@ -133,6 +142,10 @@ msgid "" "outside connections. If the rest of the code is written properly, that " "should be plenty." msgstr "" +"Enfin, l'argument ``listen`` indique à la bibliothèque de connecteurs que " +"nous voulons qu'elle mette en file d'attente jusqu'à 5 requêtes de connexion " +"(le maximum normal) avant de refuser les connexions externes. Si le reste du " +"code est écrit correctement, cela devrait suffire." #: ../Doc/howto/sockets.rst:99 msgid "" @@ -158,7 +171,7 @@ msgstr "" #: ../Doc/howto/sockets.rst:125 msgid "IPC" -msgstr "" +msgstr "Communication Entre Processus" #: ../Doc/howto/sockets.rst:127 msgid "" @@ -227,6 +240,10 @@ msgid "" "request, then reads a reply. That's it. The socket is discarded. This means " "that a client can detect the end of the reply by receiving 0 bytes." msgstr "" +"Un protocole comme HTTP utilise un connecteur pour un seul transfert. Le " +"client envoie une demande, puis lit une réponse. C'est tout. Le connecteur " +"est mis au rebut. Cela signifie qu'un client peut détecter la fin de la " +"réponse en recevant 0 octet." #: ../Doc/howto/sockets.rst:172 msgid "" @@ -241,12 +258,27 @@ msgid "" "they are* (much better), *or end by shutting down the connection*. The " "choice is entirely yours, (but some ways are righter than others)." msgstr "" +"Mais si vous prévoyez de réutiliser votre connecteur pour d'autres " +"transferts, vous devez réaliser que il n'y a *pas* d':abbr:`EOT (End of " +"Transfer)` sur un connecteur. Je répète : si un connecteur ``send`` ou " +"``recv`` retourne après avoir manipulé 0 octets, la connexion a été " +"interrompue. Si la connexion n'a *pas* été interrompue, vous pouvez attendre " +"sur un ``recv`` pour toujours, car le connecteur ne vous dira pas qu'il n'y " +"a plus rien à lire (pour le moment). Maintenant, si vous y réfléchissez un " +"peu, vous allez vous rendre compte d'une vérité fondamentale sur les " +"connecteurs : *les messages doivent être de longueur fixe* (beurk), *ou être " +"délimités* (haussement d'épaules), *ou indiquer de quelle longueur ils sont* " +"(beaucoup mieux), *ou terminer en coupant la connexion*. Le choix est " +"entièrement de votre côté, (mais certaines façons sont plus justes que " +"d'autres)." #: ../Doc/howto/sockets.rst:183 msgid "" "Assuming you don't want to end the connection, the simplest solution is a " "fixed length message::" msgstr "" +"En supposant que vous ne vouliez pas terminer la connexion, la solution la " +"plus simple est un message de longueur fixe ::" #: ../Doc/howto/sockets.rst:220 msgid "" @@ -298,7 +330,7 @@ msgstr "" #: ../Doc/howto/sockets.rst:255 msgid "Binary Data" -msgstr "" +msgstr "Données binaires" #: ../Doc/howto/sockets.rst:257 msgid "" @@ -324,7 +356,7 @@ msgstr "" #: ../Doc/howto/sockets.rst:275 msgid "Disconnecting" -msgstr "" +msgstr "Déconnexion" #: ../Doc/howto/sockets.rst:277 msgid "" @@ -388,6 +420,10 @@ msgid "" "calls, in much the same ways. It's just that, if you do it right, your app " "will be almost inside-out." msgstr "" +"Si vous avez compris ce qui précède, vous savez déjà tout ce que vous devez " +"savoir sur la mécanique de l'utilisation des connecteurs. Vous utiliserez " +"toujours les mêmes appels, de la même façon. C'est juste que, si vous le " +"faites bien, votre application sera presque dans la poche." #: ../Doc/howto/sockets.rst:323 msgid "" @@ -398,6 +434,13 @@ msgid "" "the exact same idea. You do this after creating the socket, but before using " "it. (Actually, if you're nuts, you can switch back and forth.)" msgstr "" +"En Python, vous utilisez ``socket.setblocking(0)`` pour le rendre non-" +"bloquant. En C, c'est plus complexe, (pour commencer, vous devez choisir " +"entre la version BSD ``O_NONBLOCK`` et la version Posix presque impossible à " +"distinguer ``O_NDELAY``, qui est complètement différente de " +"``TCP_NODELAY``), mais c'est exactement la même idée. Vous le faites après " +"avoir créé le connecteur mais avant de l'utiliser (en fait, si vous êtes " +"fou, vous pouvez alterner)." #: ../Doc/howto/sockets.rst:330 msgid "" @@ -411,7 +454,7 @@ msgstr "" #: ../Doc/howto/sockets.rst:337 msgid "Use ``select``." -msgstr "" +msgstr "Utiliser ``select``." #: ../Doc/howto/sockets.rst:339 msgid "" @@ -419,6 +462,9 @@ msgid "" "but it's close enough to the C version that if you understand ``select`` in " "Python, you'll have little trouble with it in C::" msgstr "" +"En C, implémenter ``select`` est assez complexe. En Python, c'est du gâteau, " +"mais c'est assez proche de la version C ; aussi, si vous comprenez " +"``select`` en Python, vous aurez peu de problèmes avec lui en C ::" #: ../Doc/howto/sockets.rst:350 msgid "" @@ -447,6 +493,14 @@ msgid "" "nothing. (Actually, any reasonably healthy socket will return as writable - " "it just means outbound network buffer space is available.)" msgstr "" +"Si un connecteur se trouve dans la liste des sorties que vous pouvez lire, " +"vous pouvez être pratiquement certain qu'un ``recv`` sur ce connecteur " +"retournera *quelque chose*. Même chose pour la liste des sorties sur " +"lesquelles vous pouvez écrire. Vous pourrez envoyer *quelque chose*. Peut-" +"être pas tout ce que vous voudrez, mais *quelque chose* est mieux que rien. " +"(En fait, n'importe quel connecteur raisonnablement sain retournera en " +"écriture — cela signifie simplement que l'espace tampon réseau sortant est " +"disponible)." #: ../Doc/howto/sockets.rst:369 msgid "" @@ -456,6 +510,13 @@ msgid "" "it in the potential_writers list. If it shows up in the writable list, you " "have a decent chance that it has connected." msgstr "" +"Si vous avez un connecteur \"serveur\", mettez-le dans la liste des lecteurs " +"potentiels. Si il apparaît dans la liste des sorties que vous pouvez lire, " +"votre ``accept`` fonctionnera (presque certainement). Si vous avez créé un " +"nouveau connecteur pour ``connect`` à quelqu'un d'autre, mettez-le dans la " +"liste des éditeurs potentiels. Si il apparaît dans la liste des sorties sur " +"lesquelles vous pouvez écrire, vous avez une bonne chance qu'il se soit " +"connecté." #: ../Doc/howto/sockets.rst:375 msgid "" @@ -474,6 +535,11 @@ msgid "" "problem of determining whether the other end is done, or just busy with " "something else." msgstr "" +"En fait, ``select`` peut être pratique même avec des connecteurs bloquants. " +"C'est une façon de déterminer si vous allez bloquer — le socket redevient " +"lisible lorsqu'il y a quelque chose dans les tampons. Cependant, cela n'aide " +"pas encore à déterminer si l'autre extrémité a terminé, ou si elle est " +"simplement occupée par autre chose." #: ../Doc/howto/sockets.rst:386 msgid "" diff --git a/howto/unicode.po b/howto/unicode.po index d943676a..f77b2ee4 100644 --- a/howto/unicode.po +++ b/howto/unicode.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/howto/unicode.rst:3 msgid "Unicode HOWTO" -msgstr "" +msgstr "Guide Unicode" #: ../Doc/howto/unicode.rst:5 msgid "1.03" @@ -33,11 +33,11 @@ msgstr "" #: ../Doc/howto/unicode.rst:13 msgid "Introduction to Unicode" -msgstr "" +msgstr "Introduction à Unicode" #: ../Doc/howto/unicode.rst:16 msgid "History of Character Codes" -msgstr "" +msgstr "Histoire des codes de caractères" #: ../Doc/howto/unicode.rst:18 msgid "" @@ -46,6 +46,11 @@ msgid "" "for various characters, with the numeric values running from 0 to 127. For " "example, the lowercase letter 'a' is assigned 97 as its code value." msgstr "" +"En 1968, l'*American Standard Code for Information Interchange*, mieux connu " +"sous son acronyme *ASCII*, a été normalisé. L'ASCII définissait des codes " +"numériques pour différents caractères, les valeurs numériques s'étendant de " +"0 à 127. Par exemple, la lettre minuscule « a » est assignée à 97 comme " +"valeur de code." #: ../Doc/howto/unicode.rst:24 msgid "" @@ -56,6 +61,13 @@ msgid "" "words such as 'naïve' and 'café', and some publications have house styles " "which require spellings such as 'coöperate'.)" msgstr "" +"ASCII était une norme développée par les États-Unis, elle ne définissait " +"donc que des caractères non accentués. Il y avait « e », mais pas « é » ou " +"« Í ». Cela signifiait que les langues qui nécessitaient des caractères " +"accentués ne pouvaient pas être fidèlement représentées en ASCII. (En fait, " +"les accents manquants importaient pour l'anglais aussi, qui contient des " +"mots tels que « naïve » et « café », et certaines publications ont des " +"styles propres qui exigent des orthographes tels que « *coöperate* ».)" #: ../Doc/howto/unicode.rst:31 msgid "" @@ -98,6 +110,12 @@ msgid "" "that quotes some Russian text? In the 1980s people began to want to solve " "this problem, and the Unicode standardization effort began." msgstr "" +"Vous pouviez écrire les fichiers avec des codes différents (tous vos " +"fichiers russes dans un système de codage appelé *KOI8*, tous vos fichiers " +"français dans un système de codage différent appelé *Latin1*), mais que " +"faire si vous souhaitiez écrire un document français citant du texte russe ? " +"Dans les années 80, les gens ont commencé à vouloir résoudre ce problème, et " +"les efforts de standardisation Unicode ont commencé." #: ../Doc/howto/unicode.rst:60 msgid "" @@ -116,6 +134,9 @@ msgid "" "originally separate efforts, but the specifications were merged with the 1.1 " "revision of Unicode." msgstr "" +"Il existe une norme ISO connexe, ISO 10646. Unicode et ISO 10646 étaient à " +"l’origine des efforts séparés, mais les spécifications ont été fusionnées " +"avec la révision 1.1 d’Unicode." #: ../Doc/howto/unicode.rst:72 msgid "" @@ -127,7 +148,7 @@ msgstr "" #: ../Doc/howto/unicode.rst:78 msgid "Definitions" -msgstr "" +msgstr "Définitions" #: ../Doc/howto/unicode.rst:80 msgid "" @@ -167,10 +188,17 @@ msgid "" "to worry about glyphs; figuring out the correct glyph to display is " "generally the job of a GUI toolkit or a terminal's font renderer." msgstr "" +"Un caractère est représenté sur un écran ou sur papier par un ensemble " +"d’éléments graphiques appelé **glyphe**. Le glyphe d’un A majuscule, par " +"exemple, est deux traits diagonaux et un trait horizontal, bien que les " +"détails exacts dépendent de la police utilisée. La plupart du code Python " +"n’a pas besoin de s’inquiéter des glyphes ; trouver le bon glyphe à afficher " +"est généralement le travail d’une boîte à outils GUI ou du moteur de rendu " +"des polices d’un terminal." #: ../Doc/howto/unicode.rst:115 msgid "Encodings" -msgstr "" +msgstr "Encodages" #: ../Doc/howto/unicode.rst:117 msgid "" @@ -192,10 +220,14 @@ msgid "" "This representation is straightforward but using it presents a number of " "problems." msgstr "" +"Cette représentation est simple mais son utilisation pose un certain nombre " +"de problèmes." #: ../Doc/howto/unicode.rst:133 msgid "It's not portable; different processors order the bytes differently." msgstr "" +"Elle n’est pas portable ; des processeurs différents ordonnent les octets " +"différemment." #: ../Doc/howto/unicode.rst:135 msgid "" @@ -213,12 +245,17 @@ msgid "" "It's not compatible with existing C functions such as ``strlen()``, so a new " "family of wide string functions would need to be used." msgstr "" +"Elle n’est pas compatible avec les fonctions C existantes telles que " +"``strlen()``, il faudrait donc utiliser une nouvelle famille de fonctions, " +"celle des chaînes larges (*wide strings*)." #: ../Doc/howto/unicode.rst:146 msgid "" "Many Internet standards are defined in terms of textual data, and can't " "handle content with embedded zero bytes." msgstr "" +"De nombreuses normes Internet sont définies en termes de données textuelles " +"et ne peuvent pas gérer le contenu incorporant des octets *zéro*." #: ../Doc/howto/unicode.rst:149 msgid "" @@ -226,6 +263,10 @@ msgid "" "that are more efficient and convenient. UTF-8 is probably the most commonly " "supported encoding; it will be discussed below." msgstr "" +"Généralement, les gens n’utilisent pas cet encodage, mais optent pour " +"d’autres encodages plus efficaces et pratiques. UTF-8 est probablement " +"l’encodage le plus couramment pris en charge ; celui-ci sera abordé ci-" +"dessous." #: ../Doc/howto/unicode.rst:153 msgid "" @@ -240,6 +281,8 @@ msgid "" "If the code point is < 128, each byte is the same as the value of the code " "point." msgstr "" +"Si le point de code est < 128, chaque octet est identique à la valeur du " +"point de code." #: ../Doc/howto/unicode.rst:161 msgid "" @@ -247,6 +290,9 @@ msgid "" "in this encoding. (Python raises a :exc:`UnicodeEncodeError` exception in " "this case.)" msgstr "" +"Si le point de code est égal à 128 ou plus, la chaîne Unicode ne peut pas " +"être représentée dans ce codage (Python déclenche une exception :exc:" +"`UnicodeEncodeError` dans ce cas)." #: ../Doc/howto/unicode.rst:165 msgid "" @@ -266,6 +312,14 @@ msgid "" "encoding, you'd probably use some sort of lookup table to perform the " "conversion, but this is largely an internal detail." msgstr "" +"Les encodages ne doivent pas nécessairement être de simples mappages un à " +"un, comme Latin-1. Prenons l’exemple du code EBCDIC d’IBM, utilisé sur les " +"ordinateurs centraux IBM. Les valeurs de lettre ne faisaient pas partie d’un " +"bloc: les lettres « a » à « i » étaient comprises entre 129 et 137, mais les " +"lettres « j » à « r » étaient comprises entre 145 et 153. Si vous vouliez " +"utiliser EBCDIC comme encodage, vous auriez probablement utilisé une sorte " +"de table de correspondance pour effectuer la conversion, mais il s’agit en " +"surtout d’un détail d'implémentation." #: ../Doc/howto/unicode.rst:177 msgid "" @@ -294,11 +348,11 @@ msgstr "" #: ../Doc/howto/unicode.rst:188 msgid "UTF-8 has several convenient properties:" -msgstr "" +msgstr "UTF-8 a plusieurs propriétés intéressantes :" #: ../Doc/howto/unicode.rst:190 msgid "It can handle any Unicode code point." -msgstr "" +msgstr "Il peut gérer n'importe quel point de code Unicode." #: ../Doc/howto/unicode.rst:191 msgid "" @@ -310,7 +364,7 @@ msgstr "" #: ../Doc/howto/unicode.rst:195 msgid "A string of ASCII text is also valid UTF-8 text." -msgstr "" +msgstr "Une chaîne de texte ASCII est également un texte UTF-8 valide." #: ../Doc/howto/unicode.rst:196 msgid "" @@ -324,6 +378,10 @@ msgid "" "next UTF-8-encoded code point and resynchronize. It's also unlikely that " "random 8-bit data will look like valid UTF-8." msgstr "" +"Si des octets sont corrompus ou perdus, il est possible de déterminer le " +"début du prochain point de code encodé en UTF-8 et de se resynchroniser. Il " +"est également improbable que des données 8-bits aléatoires ressemblent à du " +"UTF-8 valide." #: ../Doc/howto/unicode.rst:205 ../Doc/howto/unicode.rst:492 #: ../Doc/howto/unicode.rst:688 diff --git a/library/__future__.po b/library/__future__.po index 49577b74..5372f9d2 100644 --- a/library/__future__.po +++ b/library/__future__.po @@ -27,12 +27,15 @@ msgstr "**Source code:** :source:`Lib/_future_.py`" #: ../Doc/library/__future__.rst:11 msgid ":mod:`__future__` is a real module, and serves three purposes:" msgstr "" +"Le module :mod:`__future__` est un vrai module, et il a trois objectifs :" #: ../Doc/library/__future__.rst:13 msgid "" "To avoid confusing existing tools that analyze import statements and expect " "to find the modules they're importing." msgstr "" +"éviter de dérouter les outils existants qui analysent les instructions " +"d'importation et s'attendent à trouver les modules qu'ils importent ;" #: ../Doc/library/__future__.rst:16 msgid "" @@ -40,6 +43,10 @@ msgid "" "2.1 at least yield runtime exceptions (the import of :mod:`__future__` will " "fail, because there was no module of that name prior to 2.1)." msgstr "" +"s'assurer que les :ref:`instructions *future* ` lancées sous les " +"versions antérieures à 2.1 lèvent au moins des exceptions à l'exécution " +"(l’import du module :mod:`__future__` échoue, car il n’y avait pas de module " +"de ce nom avant 2.1) ;" #: ../Doc/library/__future__.rst:20 msgid "" @@ -48,10 +55,14 @@ msgid "" "and can be inspected programmatically via importing :mod:`__future__` and " "examining its contents." msgstr "" +"Pour documenter le phasage de changements entraînant des incompatibilités : " +"introduction, utilisation obligatoire. Il s’agit d’une forme de " +"documentation exécutable, qui peut être inspectée par un programme en " +"important :mod:`__future__` et en examinant son contenu." #: ../Doc/library/__future__.rst:25 msgid "Each statement in :file:`__future__.py` is of the form::" -msgstr "" +msgstr "Chaque instruction dans :file:`__future__.py` est de la forme ::" #: ../Doc/library/__future__.rst:31 msgid "" @@ -64,6 +75,8 @@ msgid "" "*OptionalRelease* records the first release in which the feature was " "accepted." msgstr "" +"*OptionalRelease* enregistre la première version dans laquelle la " +"fonctionnalité a été acceptée." #: ../Doc/library/__future__.rst:43 msgid "" @@ -71,6 +84,9 @@ msgid "" "*MandatoryRelease* predicts the release in which the feature will become " "part of the language." msgstr "" +"Dans le cas d'un *MandatoryRelease* qui n'a pas encore eu lieu, " +"*MandatoryRelease* prédit la *release* dans laquelle la fonctionnalité " +"deviendra un élément du langage." #: ../Doc/library/__future__.rst:47 msgid "" @@ -79,18 +95,26 @@ msgid "" "statement to use the feature in question, but may continue to use such " "imports." msgstr "" +"Sinon *MandatoryRelease* enregistre lorsque la fonctionnalité est devenue " +"une partie du langage ; dans cette version ou les suivantes, les modules " +"n'ont plus besoin d'une déclaration *future* pour utiliser la fonctionnalité " +"en question, mais ils peuvent continuer à utiliser ces importations." #: ../Doc/library/__future__.rst:51 msgid "" "*MandatoryRelease* may also be ``None``, meaning that a planned feature got " "dropped." msgstr "" +"*MandatoryRelease* peut également être ``None``, ce qui signifie qu'une " +"fonction planifiée a été abandonnée." #: ../Doc/library/__future__.rst:54 msgid "" "Instances of class :class:`_Feature` have two corresponding methods, :meth:" "`getOptionalRelease` and :meth:`getMandatoryRelease`." msgstr "" +"Les instances de classe :class:`_Feature` ont deux méthodes " +"correspondantes, :meth:`getOptionalRelease` et :meth:`getMandatoryRelease`." #: ../Doc/library/__future__.rst:57 msgid "" @@ -99,6 +123,11 @@ msgid "" "dynamically compiled code. This flag is stored in the :attr:`compiler_flag` " "attribute on :class:`_Feature` instances." msgstr "" +"*CompilerFlag* est un drapeau (chaque bit représente un champ) qui doit être " +"passé en tant que quatrième argument à la fonction native :func:`compile` " +"pour activer la fonctionnalité dans le code compilé dynamiquement. Cet " +"indicateur est stocké dans l'attribut :attr:`compiler_flag` dans les " +"instances de :class:`_Feature`." #: ../Doc/library/__future__.rst:62 msgid "" @@ -185,7 +214,7 @@ msgstr "2.5.0a1" #: ../Doc/library/__future__.rst:78 msgid ":pep:`328`: *Imports: Multi-Line and Absolute/Relative*" -msgstr "" +msgstr ":pep:`328` : *Imports : multilignes et absolus/relatifs*" #: ../Doc/library/__future__.rst:81 msgid "with_statement" diff --git a/library/_winreg.po b/library/_winreg.po index 1b402181..9e269756 100644 --- a/library/_winreg.po +++ b/library/_winreg.po @@ -218,7 +218,7 @@ msgstr "" #: ../Doc/library/_winreg.rst:186 ../Doc/library/_winreg.rst:291 #: ../Doc/library/_winreg.rst:335 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/_winreg.rst:186 ../Doc/library/_winreg.rst:291 #: ../Doc/library/_winreg.rst:335 diff --git a/library/atexit.po b/library/atexit.po index db8a709e..5e6c33a4 100644 --- a/library/atexit.po +++ b/library/atexit.po @@ -81,6 +81,12 @@ msgid "" "modules will normally be imported before higher level modules and thus must " "be cleaned up later." msgstr "" +"Lors d'un arrêt normal du programme (par exemple, si :func:`sys.exit` est " +"appelée ou l’exécution du module principal se termine), toutes les fonctions " +"inscrites sont appelées, dans l'ordre de la dernière arrivée, première " +"servie. La supposition est que les modules les plus bas niveau vont " +"normalement être importés avant les modules haut niveau et ainsi être " +"nettoyés en dernier." #: ../Doc/library/atexit.rst:53 msgid "" diff --git a/library/binascii.po b/library/binascii.po index 88ee427f..49e595a7 100644 --- a/library/binascii.po +++ b/library/binascii.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/binascii.rst:3 msgid ":mod:`binascii` --- Convert between binary and ASCII" -msgstr "" +msgstr ":mod:`binascii` --- Conversion entre binaire et ASCII" #: ../Doc/library/binascii.rst:15 msgid "" @@ -29,10 +29,16 @@ msgid "" "low-level functions written in C for greater speed that are used by the " "higher-level modules." msgstr "" +"Le module :mod:`binascii` contient des méthodes pour convertir entre binaire " +"et diverses représentations binaires encodées en ASCII. Normalement, vous " +"n’allez pas utiliser ces fonctions directement mais vous utiliserez des " +"modules d’encapsulage comme :mod:`uu`, :mod:`base64`, or :mod:`binhex` à la " +"place. Le module :mod:`binascii` contient des fonctions bas-niveau écrites " +"en C plus rapides qui sont utilisées par des modules haut-niveau." #: ../Doc/library/binascii.rst:22 msgid "The :mod:`binascii` module defines the following functions:" -msgstr "" +msgstr "Le module :mod:`binascii` définit les fonctions suivantes :" #: ../Doc/library/binascii.rst:27 msgid "" @@ -40,6 +46,10 @@ msgid "" "data. Lines normally contain 45 (binary) bytes, except for the last line. " "Line data may be followed by whitespace." msgstr "" +"Convertit une seule ligne de donnée *uuencoded* en binaire et renvoie la " +"donnée binaire. Les lignes contiennent normalement 45 octets (binaire), sauf " +"pour la dernière ligne. Il se peut que la ligne de donnée soit suivie d’un " +"espace blanc." #: ../Doc/library/binascii.rst:34 msgid "" @@ -53,6 +63,8 @@ msgid "" "Convert a block of base64 data back to binary and return the binary data. " "More than one line may be passed at a time." msgstr "" +"Convertit un bloc de donnée en *base64* en binaire et renvoie la donnée " +"binaire. Plus d’une ligne peut être passé à la fois." #: ../Doc/library/binascii.rst:47 msgid "" @@ -69,6 +81,10 @@ msgid "" "binary data. More than one line may be passed at a time. If the optional " "argument *header* is present and true, underscores will be decoded as spaces." msgstr "" +"Convertit un bloc de données *quoted-printable* en binaire et renvoie les " +"données binaires. Plus d’une ligne peut être passée à la fois. Si l’argument " +"optionnel *header* est présent et vrai, les traits soulignés seront décodés " +"en espaces." #: ../Doc/library/binascii.rst:63 msgid "" @@ -90,6 +106,10 @@ msgid "" "or (in case of the last portion of the binhex4 data) have the remaining bits " "zero." msgstr "" +"Convertit un bloc de donnée ASCII au format *binhex4* en binaire, sans faire " +"de décompression RLE. La chaîne de caractères doit contenir un nombre " +"complet d’octet binaires ou (au cas où la dernière portion de donnée est au " +"format *binhex4*) avoir les bits restants à 0." #: ../Doc/library/binascii.rst:83 msgid "" @@ -99,10 +119,18 @@ msgid "" "returns the decompressed data, unless data input data ends in an orphaned " "repeat indicator, in which case the :exc:`Incomplete` exception is raised." msgstr "" +"Réalise une décompression RLE sur la donnée, d’après la norme *binhex4*. " +"L’algorithme utilise ``0x90`` après un octet comme un indicateur de " +"répétition, suivi d’un décompte. Un décompte de ``0`` définit une valeur " +"d’octet de ``0x90``. La routine renvoie la donnée décompressée, sauf si la " +"donnée entrante se finit sur un indicateur de répétition orphelin. Dans ce " +"cas l’exception :exc:`Incomplete` est levée." #: ../Doc/library/binascii.rst:92 msgid "Perform binhex4 style RLE-compression on *data* and return the result." msgstr "" +"Réalise une compression RLE de type *binhex4* sur *data* et renvoie le " +"résultat." #: ../Doc/library/binascii.rst:97 msgid "" @@ -110,6 +138,9 @@ msgid "" "The argument should already be RLE-coded, and have a length divisible by 3 " "(except possibly the last fragment)." msgstr "" +"Réalise une traduction *hexbin4* de binaire à ASCII et renvoie la chaîne de " +"caractères résultante. L’argument doit être *RLE-coded*, et avoir une " +"longueur divisible par 3 (sauf, éventuellement, le dernier fragment)." #: ../Doc/library/binascii.rst:104 msgid "" @@ -165,12 +196,17 @@ msgstr "" #: ../Doc/library/binascii.rst:158 msgid "Exception raised on errors. These are usually programming errors." msgstr "" +"Exception levée en cas d'erreurs. Ce sont typiquement des erreurs de " +"programmation." #: ../Doc/library/binascii.rst:163 msgid "" "Exception raised on incomplete data. These are usually not programming " "errors, but may be handled by reading a little more data and trying again." msgstr "" +"Exception levée par des données incomplète. Il ne s’agit généralement pas " +"d’erreurs de programmation, mais elles peuvent être traitées en lisant un " +"peu plus de données et en réessayant." #: ../Doc/library/binascii.rst:170 msgid "Module :mod:`base64`" @@ -186,7 +222,7 @@ msgstr "Module :mod:`binhex`" #: ../Doc/library/binascii.rst:173 msgid "Support for the binhex format used on the Macintosh." -msgstr "" +msgstr "Support pour le format *binhex* utilisé sur Macintosh." #: ../Doc/library/binascii.rst:176 msgid "Module :mod:`uu`" @@ -203,3 +239,5 @@ msgstr "Module :mod:`quopri`" #: ../Doc/library/binascii.rst:179 msgid "Support for quoted-printable encoding used in MIME email messages." msgstr "" +"Support de l’encodage *quote-printable* utilisé par les messages *email* " +"MIME." diff --git a/library/calendar.po b/library/calendar.po index db81c322..2f3eb214 100644 --- a/library/calendar.po +++ b/library/calendar.po @@ -34,6 +34,13 @@ msgid "" "Parameters that specify dates are given as integers. For related " "functionality, see also the :mod:`datetime` and :mod:`time` modules." msgstr "" +"Ce module permet d'afficher un calendrier comme le fait le programme Unix :" +"program:`cal`, et il fournit des fonctions utiles relatives au calendrier. " +"Par défaut, ces calendriers ont le lundi comme premier jour de la semaine et " +"le dimanche comme dernier jour. Utilisez :func:`setfirstweekday` pour " +"définir le premier jour de la semaine à dimanche (6) ou à tout autre jour de " +"la semaine. Les paramètres pour spécifier les dates sont donnés sous forme " +"de nombres entiers. Voir aussi les modules :mod:`datetime` et :mod:`time`." #: ../Doc/library/calendar.rst:21 msgid "" @@ -49,6 +56,9 @@ msgid "" "Creates a :class:`Calendar` object. *firstweekday* is an integer specifying " "the first day of the week. ``0`` is Monday (the default), ``6`` is Sunday." msgstr "" +"Crée un objet :class:`Calendar`. *firstweekday* est un entier spécifiant le " +"premier jour de la semaine, valant par défaut ``0`` (lundi), pouvant aller " +"jusqu'à ``6`` (dimanche)." #: ../Doc/library/calendar.rst:33 msgid "" @@ -56,10 +66,13 @@ msgid "" "preparing the calendar data for formatting. This class doesn't do any " "formatting itself. This is the job of subclasses." msgstr "" +"L'objet :class:`Calendar` fournit plusieurs méthodes pouvant être utilisées " +"pour préparer les données du calendrier pour le formatage. Cette classe ne " +"fait pas de formatage elle-même. Il s'agit du travail des sous-classes." #: ../Doc/library/calendar.rst:39 msgid ":class:`Calendar` instances have the following methods:" -msgstr "" +msgstr "Les instances de :class:`Calendar` ont les méthodes suivantes :" #: ../Doc/library/calendar.rst:44 msgid "" @@ -67,6 +80,8 @@ msgid "" "The first value from the iterator will be the same as the value of the :attr:" "`firstweekday` property." msgstr "" +"Renvoie un itérateur sur les numéros des jours d'une semaine. La première " +"valeur est donc la même que la valeur de la propriété :attr:`firstweekday`." #: ../Doc/library/calendar.rst:51 msgid "" @@ -94,18 +109,25 @@ msgid "" "Return a list of the weeks in the month *month* of the *year* as full " "weeks. Weeks are lists of seven :class:`datetime.date` objects." msgstr "" +"Renvoie la liste des semaines complètes du mois *month* de l'année *year*. " +"Les semaines sont des listes de sept objets :class:`datetime.date`." #: ../Doc/library/calendar.rst:78 msgid "" "Return a list of the weeks in the month *month* of the *year* as full " "weeks. Weeks are lists of seven tuples of day numbers and weekday numbers." msgstr "" +"Renvoie la liste des semaines complètes du mois *month* de l'année *year*. " +"Les semaines sont des listes de sept paires contenant le numéro du jour dans " +"le mois et du numéro du jour dans la semaine." #: ../Doc/library/calendar.rst:85 msgid "" "Return a list of the weeks in the month *month* of the *year* as full " "weeks. Weeks are lists of seven day numbers." msgstr "" +"Renvoie la liste des semaines complètes du mois *month* de l'année *year*. " +"Les semaines sont une liste de sept numéros de jours." #: ../Doc/library/calendar.rst:91 msgid "" @@ -114,6 +136,11 @@ msgid "" "(defaulting to 3). Each month contains between 4 and 6 weeks and each week " "contains 1--7 days. Days are :class:`datetime.date` objects." msgstr "" +"Renvoie ce qu'il faut pour afficher correctement une année. La valeur " +"renvoyée est une liste de lignes de mois. Chaque ligne mensuelle contient " +"jusqu'à *width* mois (avec une valeur par défaut à 3). Chaque mois contient " +"de 4 à 6 semaines et chaque semaine 1 à 7 jours. Les jours sont des objets :" +"class:`datetime.date`." #: ../Doc/library/calendar.rst:99 msgid "" @@ -121,6 +148,10 @@ msgid "" "meth:`yeardatescalendar`). Entries in the week lists are tuples of day " "numbers and weekday numbers. Day numbers outside this month are zero." msgstr "" +"Renvoie ce qu'il faut pour afficher correctement une année, (similaire à :" +"meth:`yeardatescalendar`). Les listes des semaines contiennent des paires " +"contenant le numéro du jour du mois et le numéro du jour de la semaine. Les " +"numéro des jours en dehors de ce mois sont à zéro." #: ../Doc/library/calendar.rst:106 msgid "" @@ -128,14 +159,18 @@ msgid "" "meth:`yeardatescalendar`). Entries in the week lists are day numbers. Day " "numbers outside this month are zero." msgstr "" +"Renvoie ce qu'il faut pour afficher correctement une année, (similaire à :" +"meth:`yeardatescalendar`). Les listes de semaines contiennent des numéros de " +"jours. Les numéros de jours en dehors de ce mois sont de zéro." #: ../Doc/library/calendar.rst:113 msgid "This class can be used to generate plain text calendars." msgstr "" +"Cette classe peut être utilisée pour générer des calendriers en texte brut." #: ../Doc/library/calendar.rst:117 msgid ":class:`TextCalendar` instances have the following methods:" -msgstr "" +msgstr "Les instances :class:`TextCalendar` exposent les méthodes suivantes :" #: ../Doc/library/calendar.rst:122 msgid "" @@ -145,10 +180,16 @@ msgid "" "the first weekday as specified in the constructor or set by the :meth:" "`setfirstweekday` method." msgstr "" +"Donne le calendrier d'un mois dans une chaîne multi-ligne. Si *w* est " +"fourni, il spécifie la largeur des colonnes de date, qui sont centrées. Si " +"*l* est donné, il spécifie le nombre de lignes que chaque semaine utilisera. " +"Le résultat varie en fonction du premier jour de la semaine spécifié dans le " +"constructeur ou défini par la méthode :meth:`setfirstweekday`." #: ../Doc/library/calendar.rst:131 msgid "Print a month's calendar as returned by :meth:`formatmonth`." msgstr "" +"Affiche le calendrier d'un mois tel que renvoyé par :meth:`formatmonth`." #: ../Doc/library/calendar.rst:136 msgid "" @@ -159,11 +200,20 @@ msgid "" "`setfirstweekday` method. The earliest year for which a calendar can be " "generated is platform-dependent." msgstr "" +"Renvoie un calendrier de *m* colonnes pour une année entière sous forme de " +"chaîne multi-ligne. Les paramètres facultatifs *w*, *l* et *c* correspondent " +"respectivement à la largeur de la colonne date, les lignes par semaines, le " +"nombre d'espace entre les colonnes de mois. Le résultat varie en fonction du " +"premier jour de la semaine spécifié dans le constructeur ou défini par la " +"méthode :meth:`setfirstweekday`. La première année pour laquelle un " +"calendrier peut être généré, dépend de la plateforme." #: ../Doc/library/calendar.rst:146 msgid "" "Print the calendar for an entire year as returned by :meth:`formatyear`." msgstr "" +"Affiche le calendrier pour une année entière comme renvoyé par :meth:" +"`formatyear`." #: ../Doc/library/calendar.rst:151 msgid "This class can be used to generate HTML calendars." diff --git a/library/codeop.po b/library/codeop.po index 8810dc89..ae718da4 100644 --- a/library/codeop.po +++ b/library/codeop.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/codeop.rst:3 msgid ":mod:`codeop` --- Compile Python code" -msgstr "" +msgstr ":mod:`codeop` — Compilation de code Python" #: ../Doc/library/codeop.rst:10 msgid "" @@ -28,32 +28,44 @@ msgid "" "include such a loop in your program you probably want to use the :mod:`code` " "module instead." msgstr "" +"Le module :mod:`codeop` fournit des outils permettant d'émuler une boucle de " +"lecture-évaluation-affichage (en anglais *read-eval-print-loop* ou REPL), " +"comme dans le module :mod:`code`. Par conséquent, ce module n'est pas " +"destiné à être utilisé directement ; pour inclure un REPL dans un programme, " +"il est préférable d'utiliser le module :mod:`code`." #: ../Doc/library/codeop.rst:16 msgid "There are two parts to this job:" -msgstr "" +msgstr "Cette tâche se divise en deux parties :" #: ../Doc/library/codeop.rst:18 msgid "" "Being able to tell if a line of input completes a Python statement: in " "short, telling whether to print '``>>>``' or '``...``' next." msgstr "" +"Pouvoir affirmer qu'une ligne d'entrée est une instruction complète, ou " +"achève une instruction : en bref, savoir s'il faut afficher « ``>>>`` » ou " +"« ``...`` » à sa suite." #: ../Doc/library/codeop.rst:21 msgid "" "Remembering which future statements the user has entered, so subsequent " "input can be compiled with these in effect." msgstr "" +"Conserver les instructions déjà entrées par l'utilisateur, afin que les " +"entrées suivantes puissent êtres compilées avec elles." #: ../Doc/library/codeop.rst:24 msgid "" "The :mod:`codeop` module provides a way of doing each of these things, and a " "way of doing them both." msgstr "" +"Le module :mod:`codeop` fournit un moyen d'effectuer ces deux parties, " +"individuellement ou simultanément." #: ../Doc/library/codeop.rst:27 msgid "To do just the former:" -msgstr "" +msgstr "Pour ne faire que la première partie :" #: ../Doc/library/codeop.rst:31 msgid "" @@ -63,6 +75,11 @@ msgid "" "``''``. Returns ``None`` if *source* is *not* valid Python code, but " "is a prefix of valid Python code." msgstr "" +"Essaye de compiler *source*, qui doit être une chaîne de caractères " +"représentant du code Python valide et renvoie un objet code le cas échéant. " +"Dans ce cas, l'attribut de nom de fichier de l'objet code renvoyé sera " +"*filename* (``''`` par défaut). Renvoie ``None`` si *source* n'est " +"*pas* du code Python valide, mais un *début* de code Python valide." #: ../Doc/library/codeop.rst:37 msgid "" @@ -70,6 +87,9 @@ msgid "" "`SyntaxError` is raised if there is invalid Python syntax, and :exc:" "`OverflowError` or :exc:`ValueError` if there is an invalid literal." msgstr "" +"En cas de problème avec *source*, une exception est levée ; :exc:" +"`SyntaxError` si la syntaxe Python est incorrecte, et :exc:`OverflowError` " +"ou :exc:`ValueError` si un littéral invalide est rencontré." #: ../Doc/library/codeop.rst:41 msgid "" @@ -77,6 +97,9 @@ msgid "" "(``'single'``, the default) or as an :term:`expression` (``'eval'``). Any " "other value will cause :exc:`ValueError` to be raised." msgstr "" +"L'argument *symbol* détermine si *source* est compilée comme une instruction " +"(``'single'``, par défaut) ou comme une :term:`expression` (``'eval'``). " +"Toute autre valeur lèvera :exc:`ValueError`." #: ../Doc/library/codeop.rst:47 msgid "" @@ -86,6 +109,12 @@ msgid "" "backslash followed by two newlines may be followed by arbitrary garbage. " "This will be fixed once the API for the parser is better." msgstr "" +"Il est possible (quoique improbable) que l'analyseur s'arrête avant " +"d'atteindre la fin du code source ; dans ce cas, les symboles venant après " +"peuvent être ignorés au lieu de provoquer une erreur. Par exemple, une barre " +"oblique inverse suivie de deux retours à la ligne peut être suivie par de la " +"mémoire non-initialisée. Ceci sera corrigé quand l'interface de l'analyseur " +"aura été améliorée." #: ../Doc/library/codeop.rst:56 msgid "" @@ -95,6 +124,11 @@ msgid "" "the instance 'remembers' and compiles all subsequent program texts with the " "statement in force." msgstr "" +"Les instances de cette classe ont des méthodes :meth:`__call__` de signature " +"identique à la fonction native :func:`compile`, à la différence près que si " +"l'instance compile du code source contenant une instruction :mod:" +"`__future__`, l'instance s'en « souviendra » et compilera tous les codes " +"sources suivants avec cette instruction activée." #: ../Doc/library/codeop.rst:65 msgid "" @@ -103,6 +137,11 @@ msgid "" "program text containing a ``__future__`` statement, the instance 'remembers' " "and compiles all subsequent program texts with the statement in force." msgstr "" +"Les instances de cette classe ont des méthodes :meth:`__call__` de signature " +"identique à la fonction :func:`compile_command`, à la différence près que si " +"l'instance compile du code source contenant une instruction ``__future__``, " +"l'instance s'en « souviendra » et compilera tous les codes sources suivants " +"avec cette instruction activée." #: ../Doc/library/codeop.rst:70 msgid "" diff --git a/library/cookie.po b/library/cookie.po index ae250e6a..830602cd 100644 --- a/library/cookie.po +++ b/library/cookie.po @@ -48,6 +48,13 @@ msgid "" "comes to Cookie handling. As a result, the parsing rules used are a bit " "less strict." msgstr "" +"Auparavant, le module appliquait strictement les règles d'analyse décrites " +"dans les spécifications :rfc:`2109` et :rfc:`2068`. Entre temps, il a été " +"découvert que Internet Explorer 3.0 ne suit pas les règles liées aux " +"caractères précisées dans ces spécifications. De plus, plusieurs navigateurs " +"et serveurs dans leur versions récentes ont assoupli les règles d'analyse " +"quant à la gestion des témoins. En conséquence, les règles d'analyse " +"utilisées sont un peu moins strictes que les spécifications initiales." #: ../Doc/library/cookie.rst:29 msgid "" @@ -62,12 +69,17 @@ msgid "" "cookie data comes from a browser you should always prepare for invalid data " "and catch :exc:`CookieError` on parsing." msgstr "" +"Quand un témoin invalide est rencontré, l'exception :exc:`CookieError` est " +"levée. Si les données du témoin proviennent d'un navigateur il faut " +"impérativement gérer les données invalides en attrapant :exc:`CookieError`." #: ../Doc/library/cookie.rst:43 msgid "" "Exception failing because of :rfc:`2109` invalidity: incorrect attributes, " "incorrect :mailheader:`Set-Cookie` header, etc." msgstr "" +"Exception levée pour cause d'incompatibilité avec la :rfc:`2109`. Exemples : " +"attributs incorrects, en-tête ``Set-Cookie`` incorrect, etc." #: ../Doc/library/cookie.rst:49 msgid "" @@ -76,10 +88,15 @@ msgid "" "value, the value is first converted to a :class:`Morsel` containing the key " "and the value." msgstr "" +"Cette classe définit un dictionnaire dont les clés sont des chaines de " +"caractères et dont les valeurs sont des instances de :class:`Morsel`. Notez " +"qu'à l'assignation d'une valeur à une clé, la valeur est transformée en :" +"class:`Morsel` contenant la clé et la valeur." #: ../Doc/library/cookie.rst:53 msgid "If *input* is given, it is passed to the :meth:`load` method." msgstr "" +"Si l'argument *input* est donné, il est passé à la méthode :meth:`load`." #: ../Doc/library/cookie.rst:58 msgid "" @@ -138,15 +155,15 @@ msgstr "" #: ../Doc/library/cookie.rst:98 msgid ":rfc:`2109` - HTTP State Management Mechanism" -msgstr "" +msgstr ":rfc:`2109` - HTTP State Management Mechanism" #: ../Doc/library/cookie.rst:99 msgid "This is the state management specification implemented by this module." -msgstr "" +msgstr "Spécification de gestion d'états implantée par ce module." #: ../Doc/library/cookie.rst:105 msgid "Cookie Objects" -msgstr "" +msgstr "Objets *Cookie*" #: ../Doc/library/cookie.rst:110 msgid "" @@ -167,6 +184,10 @@ msgid "" "In general, it should be the case that :meth:`value_encode` and :meth:" "`value_decode` are inverses on the range of *value_decode*." msgstr "" +"Généralement, les méthodes :meth:`value_encode` et :meth:`value_decode` " +"doivent être inverses l'une de l'autre, c'est-à-dire qu'en envoyant la " +"sortie de l'un dans l'entrée de l'autre la valeur finale doit être égale à " +"la valeur initiale." #: ../Doc/library/cookie.rst:127 msgid "" @@ -175,6 +196,10 @@ msgid "" "is used to join the headers together, and is by default the combination " "``'\\r\\n'`` (CRLF)." msgstr "" +"Renvoie une représentation textuelle compatible avec les en-têtes HTTP. " +"*attrs et *header* sont envoyés à la méthode :meth:`output` de chaque " +"classe :class:`Morsel`. *sep* est le séparateur à utiliser pour joindre les " +"valeurs d'en-têtes. Sa valeur par défaut est ``'\\r\\n'`` (CRLF)." #: ../Doc/library/cookie.rst:132 msgid "" @@ -187,11 +212,14 @@ msgid "" "Return an embeddable JavaScript snippet, which, if run on a browser which " "supports JavaScript, will act the same as if the HTTP headers was sent." msgstr "" +"Renvoie un extrait de code JavaScript qui, lorsque exécuté par un navigateur " +"qui supporte le JavaScript, va fonctionner de la même manière que si les en-" +"têtes HTTP avaient été envoyés." #: ../Doc/library/cookie.rst:142 ../Doc/library/cookie.rst:224 #: ../Doc/library/cookie.rst:232 msgid "The meaning for *attrs* is the same as in :meth:`output`." -msgstr "" +msgstr "*attrs* a la même signification que dans la méthode :meth:`output`." #: ../Doc/library/cookie.rst:147 msgid "" @@ -199,20 +227,28 @@ msgid "" "found there as :class:`Morsel`\\ s. If it is a dictionary, it is equivalent " "to::" msgstr "" +"Si *rawdata* est une chaine de caractères, l'analyser comme étant un " +"``HTTP_COOKIE`` et ajouter les valeurs trouvées en tant que :class:`Morsel`" +"\\ s. S'il s'agit d'un dictionnaire, cela est équivalent à ::" #: ../Doc/library/cookie.rst:157 msgid "Morsel Objects" -msgstr "" +msgstr "Objets *Morsel*" #: ../Doc/library/cookie.rst:162 msgid "Abstract a key/value pair, which has some :rfc:`2109` attributes." msgstr "" +"Abstraction de paire clé / valeur, accompagnée d'attributs provenant de la " +"spécification :rfc:`2109`." #: ../Doc/library/cookie.rst:164 msgid "" "Morsels are dictionary-like objects, whose set of keys is constant --- the " "valid :rfc:`2109` attributes, which are" msgstr "" +"Les objets *Morsel* sont des objets compatibles dictionnaire, dont " +"l'ensemble des clés est fixe et égal aux attributs :rfc:`2109` valides, qui " +"sont" #: ../Doc/library/cookie.rst:167 msgid "``expires``" @@ -252,6 +288,9 @@ msgid "" "in HTTP requests, and is not accessible through JavaScript. This is intended " "to mitigate some forms of cross-site scripting." msgstr "" +"L'attribut :attr:`httponly` spécifie que le témoin transféré dans les " +"requêtes HTTP n'est pas accessible par le biais de JavaScript. Il s'agit " +"d'une contremesure à certaines attaques de scripts inter-sites (*XSS*)." #: ../Doc/library/cookie.rst:180 msgid "The keys are case-insensitive." @@ -263,23 +302,23 @@ msgstr "" #: ../Doc/library/cookie.rst:188 msgid "The value of the cookie." -msgstr "" +msgstr "La valeur du témoin." #: ../Doc/library/cookie.rst:193 msgid "The encoded value of the cookie --- this is what should be sent." -msgstr "" +msgstr "La valeur codée du témoin. C'est celle qui doit être transférée." #: ../Doc/library/cookie.rst:198 msgid "The name of the cookie." -msgstr "" +msgstr "Le nom du témoin." #: ../Doc/library/cookie.rst:203 msgid "Set the *key*, *value* and *coded_value* attributes." -msgstr "" +msgstr "Assigne les attributs *key*, *value* et *coded_value*." #: ../Doc/library/cookie.rst:208 msgid "Whether *K* is a member of the set of keys of a :class:`Morsel`." -msgstr "" +msgstr "Renvoie si *K* est membre des clés d'un :class:`Morsel`." #: ../Doc/library/cookie.rst:213 msgid "" @@ -288,18 +327,27 @@ msgid "" "given, in which case it should be a list of attributes to use. *header* is " "by default ``\"Set-Cookie:\"``." msgstr "" +"Renvoie une représentation textuelle du *Morsel* compatible avec les en-" +"têtes HTTP. Par défaut, tous les attributs sont inclus, à moins que *attrs* " +"ne soit renseigné. Dans ce cas la valeur doit être une liste d'attributs à " +"utiliser. Par défaut, *header* a la valeur ``\"Set-Cookie:\"``." #: ../Doc/library/cookie.rst:221 msgid "" "Return an embeddable JavaScript snippet, which, if run on a browser which " "supports JavaScript, will act the same as if the HTTP header was sent." msgstr "" +"Renvoie un extrait de code JavaScript qui, lorsque exécuté par un navigateur " +"qui supporte le JavaScript, va fonctionner de la même manière que si les en-" +"têtes HTTP avaient été envoyés." #: ../Doc/library/cookie.rst:229 msgid "" "Return a string representing the Morsel, without any surrounding HTTP or " "JavaScript." msgstr "" +"Renvoie une chaine de caractères représentant le *Morsel*, nettoyé de son " +"contexte HTTP ou JavaScript." #: ../Doc/library/cookie.rst:238 msgid "Example" diff --git a/library/cookielib.po b/library/cookielib.po index 9fa83be3..1d7b8900 100644 --- a/library/cookielib.po +++ b/library/cookielib.po @@ -178,7 +178,7 @@ msgstr "" #: ../Doc/library/cookielib.rst:132 msgid ":rfc:`2109` - HTTP State Management Mechanism" -msgstr "" +msgstr ":rfc:`2109` - HTTP State Management Mechanism" #: ../Doc/library/cookielib.rst:132 msgid "Obsoleted by RFC 2965. Uses :mailheader:`Set-Cookie` with version=1." @@ -769,7 +769,7 @@ msgstr "" #: ../Doc/library/cookielib.rst:609 msgid "Cookie Objects" -msgstr "" +msgstr "Objets *Cookie*" #: ../Doc/library/cookielib.rst:611 msgid "" diff --git a/library/copy_reg.po b/library/copy_reg.po index 3d6bf9ff..2301fd7f 100644 --- a/library/copy_reg.po +++ b/library/copy_reg.po @@ -42,6 +42,9 @@ msgid "" "Declares *object* to be a valid constructor. If *object* is not callable " "(and hence not valid as a constructor), raises :exc:`TypeError`." msgstr "" +"Déclare *object* comme étant un constructeur valide. Si *object* n'est pas " +"appelable (et n'est donc pas un constructeur valide), l'erreur :exc:" +"`TypeError` est levée." #: ../Doc/library/copy_reg.rst:32 msgid "" @@ -59,6 +62,11 @@ msgid "" "arguments returned by *function* at pickling time. :exc:`TypeError` will be " "raised if *object* is a class or *constructor* is not callable." msgstr "" +"Le paramètre optionnel *contructor*, s'il est donné, est un objet appelable " +"qui peux être utilisé pour reconstruire l’objet lorsqu'il est appelé avec un " +"tuple d'arguments retournés par *function* durant la sérialisation avec " +"*pickle*. Une exception :exc:`TypeError` sera levée si *object* est une " +"classe ou si *constructor* n'est pas appelable." #: ../Doc/library/copy_reg.rst:43 msgid "" @@ -75,3 +83,5 @@ msgid "" "The example below would like to show how to register a pickle function and " "how it will be used:" msgstr "" +"L'exemple si-dessous essaye de démontrer comment enregistrer une fonction " +"*pickle* et comment elle sera utilisée :" diff --git a/library/email.parser.po b/library/email.parser.po index 8515cf4c..dcb7adbb 100644 --- a/library/email.parser.po +++ b/library/email.parser.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/email.parser.rst:2 msgid ":mod:`email.parser`: Parsing email messages" -msgstr "" +msgstr ":mod:`email.parser` : Analyser des e-mails" #: ../Doc/library/email.parser.rst:8 msgid "" @@ -66,7 +66,7 @@ msgstr "" #: ../Doc/library/email.parser.rst:41 msgid "FeedParser API" -msgstr "" +msgstr "API *FeedParser*" #: ../Doc/library/email.parser.rst:45 msgid "" @@ -238,11 +238,11 @@ msgstr "" #: ../Doc/library/email.parser.rst:193 msgid "Additional notes" -msgstr "" +msgstr "Notes complémentaires" #: ../Doc/library/email.parser.rst:195 msgid "Here are some notes on the parsing semantics:" -msgstr "" +msgstr "Voici des remarques sur la sémantique d'analyse : ::" #: ../Doc/library/email.parser.rst:197 msgid "" diff --git a/library/email.po b/library/email.po index b98bbf07..d96fe787 100644 --- a/library/email.po +++ b/library/email.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/email.rst:2 msgid ":mod:`email` --- An email and MIME handling package" -msgstr "" +msgstr ":mod:`email` — Un paquet de gestion des e-mails et MIME" #: ../Doc/library/email.rst:14 msgid "" @@ -78,11 +78,11 @@ msgstr "" #: ../Doc/library/email.rst:52 msgid "Contents of the :mod:`email` package documentation:" -msgstr "" +msgstr "Contenus de la documentation du paquet :mod:`email` :" #: ../Doc/library/email.rst:72 msgid "Module :mod:`smtplib`" -msgstr "" +msgstr "Module :mod:`smtplib`" #: ../Doc/library/email.rst:72 msgid "SMTP protocol client" @@ -90,7 +90,7 @@ msgstr "" #: ../Doc/library/email.rst:74 msgid "Module :mod:`nntplib`" -msgstr "" +msgstr "Module :mod:`nntplib`" #: ../Doc/library/email.rst:75 msgid "NNTP protocol client" diff --git a/library/errno.po b/library/errno.po index 484067bd..fd82ad41 100644 --- a/library/errno.po +++ b/library/errno.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/errno.rst:3 msgid ":mod:`errno` --- Standard errno system symbols" -msgstr "" +msgstr ":mod:`errno` — Symboles du système *errno* standard" #: ../Doc/library/errno.rst:9 msgid "" @@ -27,6 +27,10 @@ msgid "" "are borrowed from :file:`linux/include/errno.h`, which should be pretty all-" "inclusive." msgstr "" +"Ce module met à disposition des symboles du système standard ``errno``. La " +"valeur de chaque symbole est la valeur entière correspondante. Les noms et " +"les descriptions sont empruntés à :file:`linux/include/errno.h`, qui devrait " +"être assez exhaustif." #: ../Doc/library/errno.rst:17 msgid "" @@ -34,12 +38,17 @@ msgid "" "the underlying system. For instance, ``errno.errorcode[errno.EPERM]`` maps " "to ``'EPERM'``." msgstr "" +"Dictionnaire associant la valeur *errno* au nom de chaîne dans le système " +"sous-jacent. Par exemple, ``errno.errorcode[errno.EPERM]`` correspond à " +"``'EPERM'``." #: ../Doc/library/errno.rst:21 msgid "" "To translate a numeric error code to an error message, use :func:`os." "strerror`." msgstr "" +"Pour traduire un code d'erreur en message d'erreur, utilisez :func:`os." +"strerror`." #: ../Doc/library/errno.rst:23 msgid "" @@ -47,18 +56,22 @@ msgid "" "not defined by the module. The specific list of defined symbols is " "available as ``errno.errorcode.keys()``. Symbols available can include:" msgstr "" +"De la liste suivante, les symboles qui ne sont pas utilisés dans la " +"plateforme actuelle ne sont pas définis par le module. La liste spécifique " +"des symboles définis est disponible comme ``errno.errorcode.keys()``. Les " +"symboles disponibles font partie de cette liste :" #: ../Doc/library/errno.rst:30 msgid "Operation not permitted" -msgstr "" +msgstr "Opération interdite" #: ../Doc/library/errno.rst:35 msgid "No such file or directory" -msgstr "" +msgstr "Fichier ou répertoire inexistant" #: ../Doc/library/errno.rst:40 msgid "No such process" -msgstr "" +msgstr "Processus inexistant" #: ../Doc/library/errno.rst:45 msgid "Interrupted system call" @@ -66,71 +79,71 @@ msgstr "" #: ../Doc/library/errno.rst:50 msgid "I/O error" -msgstr "" +msgstr "Erreur d'entrée-sortie" #: ../Doc/library/errno.rst:55 msgid "No such device or address" -msgstr "" +msgstr "Dispositif ou adresse inexistant" #: ../Doc/library/errno.rst:60 msgid "Arg list too long" -msgstr "" +msgstr "Liste d'arguments trop longue" #: ../Doc/library/errno.rst:65 msgid "Exec format error" -msgstr "" +msgstr "Erreur de format d'exécution" #: ../Doc/library/errno.rst:70 msgid "Bad file number" -msgstr "" +msgstr "Mauvais descripteur de fichier" #: ../Doc/library/errno.rst:75 msgid "No child processes" -msgstr "" +msgstr "Pas de processus fils" #: ../Doc/library/errno.rst:80 msgid "Try again" -msgstr "" +msgstr "Ressource temporairement indisponible (réessayez)" #: ../Doc/library/errno.rst:85 msgid "Out of memory" -msgstr "" +msgstr "Mémoire insuffisante" #: ../Doc/library/errno.rst:90 msgid "Permission denied" -msgstr "" +msgstr "Autorisation refusée" #: ../Doc/library/errno.rst:95 msgid "Bad address" -msgstr "" +msgstr "Mauvaise adresse" #: ../Doc/library/errno.rst:100 msgid "Block device required" -msgstr "" +msgstr "Dispositif de bloc requis" #: ../Doc/library/errno.rst:105 msgid "Device or resource busy" -msgstr "" +msgstr "Dispositif ou ressource occupé" #: ../Doc/library/errno.rst:110 msgid "File exists" -msgstr "" +msgstr "Fichier déjà existant" #: ../Doc/library/errno.rst:115 msgid "Cross-device link" -msgstr "" +msgstr "Lien inapproprié" #: ../Doc/library/errno.rst:120 msgid "No such device" -msgstr "" +msgstr "Dispositif inexistant" #: ../Doc/library/errno.rst:125 msgid "Not a directory" -msgstr "" +msgstr "Pas un répertoire" #: ../Doc/library/errno.rst:130 msgid "Is a directory" -msgstr "" +msgstr "Est un répertoire" #: ../Doc/library/errno.rst:135 msgid "Invalid argument" @@ -138,400 +151,400 @@ msgstr "Argument invalide" #: ../Doc/library/errno.rst:140 msgid "File table overflow" -msgstr "" +msgstr "Plus de descripteur de fichier disponible" #: ../Doc/library/errno.rst:145 msgid "Too many open files" -msgstr "" +msgstr "Trop de fichiers ouverts" #: ../Doc/library/errno.rst:150 msgid "Not a typewriter" -msgstr "" +msgstr "Opération de contrôle d'entrée-sortie invalide" #: ../Doc/library/errno.rst:155 msgid "Text file busy" -msgstr "" +msgstr "Fichier texte occupé" #: ../Doc/library/errno.rst:160 msgid "File too large" -msgstr "" +msgstr "Fichier trop grand" #: ../Doc/library/errno.rst:165 msgid "No space left on device" -msgstr "" +msgstr "Plus de place sur le dispositif" #: ../Doc/library/errno.rst:170 msgid "Illegal seek" -msgstr "" +msgstr "Recherche invalide" #: ../Doc/library/errno.rst:175 msgid "Read-only file system" -msgstr "" +msgstr "Système de fichiers en lecture seule" #: ../Doc/library/errno.rst:180 msgid "Too many links" -msgstr "" +msgstr "Trop de liens symboliques" #: ../Doc/library/errno.rst:185 msgid "Broken pipe" -msgstr "" +msgstr "Tube brisé" #: ../Doc/library/errno.rst:190 msgid "Math argument out of domain of func" -msgstr "" +msgstr "Argument mathématique hors du domaine de définition de la fonction" #: ../Doc/library/errno.rst:195 msgid "Math result not representable" -msgstr "" +msgstr "Résultat mathématique non représentable" #: ../Doc/library/errno.rst:200 msgid "Resource deadlock would occur" -msgstr "" +msgstr "Un interblocage se produirait sur cette ressource" #: ../Doc/library/errno.rst:205 msgid "File name too long" -msgstr "" +msgstr "Nom de fichier trop long" #: ../Doc/library/errno.rst:210 msgid "No record locks available" -msgstr "" +msgstr "Plus de verrou de fichier disponible" #: ../Doc/library/errno.rst:215 msgid "Function not implemented" -msgstr "" +msgstr "Fonction non implémentée" #: ../Doc/library/errno.rst:220 msgid "Directory not empty" -msgstr "" +msgstr "Dossier non vide" #: ../Doc/library/errno.rst:225 msgid "Too many symbolic links encountered" -msgstr "" +msgstr "Trop de liens symboliques trouvés" #: ../Doc/library/errno.rst:230 msgid "Operation would block" -msgstr "" +msgstr "L'opération bloquerait" #: ../Doc/library/errno.rst:235 msgid "No message of desired type" -msgstr "" +msgstr "Pas de message du type voulu" #: ../Doc/library/errno.rst:240 msgid "Identifier removed" -msgstr "" +msgstr "Identifiant supprimé" #: ../Doc/library/errno.rst:245 msgid "Channel number out of range" -msgstr "" +msgstr "Le numéro de canal est hors des limites" #: ../Doc/library/errno.rst:250 msgid "Level 2 not synchronized" -msgstr "" +msgstr "Le niveau 2 n'est pas synchronisé" #: ../Doc/library/errno.rst:255 msgid "Level 3 halted" -msgstr "" +msgstr "Niveau 3 stoppé" #: ../Doc/library/errno.rst:260 msgid "Level 3 reset" -msgstr "" +msgstr "Niveau 3 réinitialisé" #: ../Doc/library/errno.rst:265 msgid "Link number out of range" -msgstr "" +msgstr "Le numéro du lien est hors des limites" #: ../Doc/library/errno.rst:270 msgid "Protocol driver not attached" -msgstr "" +msgstr "Le pilote de protocole n'est pas attaché" #: ../Doc/library/errno.rst:275 msgid "No CSI structure available" -msgstr "" +msgstr "Pas de structure *CSI* disponible" #: ../Doc/library/errno.rst:280 msgid "Level 2 halted" -msgstr "" +msgstr "Niveau 2 stoppé" #: ../Doc/library/errno.rst:285 msgid "Invalid exchange" -msgstr "" +msgstr "Échange invalide" #: ../Doc/library/errno.rst:290 msgid "Invalid request descriptor" -msgstr "" +msgstr "Descripteur de requête invalide" #: ../Doc/library/errno.rst:295 msgid "Exchange full" -msgstr "" +msgstr "Échange complet" #: ../Doc/library/errno.rst:300 msgid "No anode" -msgstr "" +msgstr "Pas de *anode*" #: ../Doc/library/errno.rst:305 msgid "Invalid request code" -msgstr "" +msgstr "Code de requête invalide" #: ../Doc/library/errno.rst:310 msgid "Invalid slot" -msgstr "" +msgstr "*Slot* invalide" #: ../Doc/library/errno.rst:315 msgid "File locking deadlock error" -msgstr "" +msgstr "Interblocage lors du verrouillage de fichier" #: ../Doc/library/errno.rst:320 msgid "Bad font file format" -msgstr "" +msgstr "Mauvais format de fichier de police" #: ../Doc/library/errno.rst:325 msgid "Device not a stream" -msgstr "" +msgstr "Le périphérique n'est pas un flux" #: ../Doc/library/errno.rst:330 msgid "No data available" -msgstr "" +msgstr "Pas de donnée disponible" #: ../Doc/library/errno.rst:335 msgid "Timer expired" -msgstr "" +msgstr "Délai maximal atteint" #: ../Doc/library/errno.rst:340 msgid "Out of streams resources" -msgstr "" +msgstr "Pas assez de ressources de type flux" #: ../Doc/library/errno.rst:345 msgid "Machine is not on the network" -msgstr "" +msgstr "Machine hors réseau" #: ../Doc/library/errno.rst:350 msgid "Package not installed" -msgstr "" +msgstr "Paquet non installé" #: ../Doc/library/errno.rst:355 msgid "Object is remote" -msgstr "" +msgstr "L'objet est distant" #: ../Doc/library/errno.rst:360 msgid "Link has been severed" -msgstr "" +msgstr "Lien coupé" #: ../Doc/library/errno.rst:365 msgid "Advertise error" -msgstr "" +msgstr "Erreur d'annonce" #: ../Doc/library/errno.rst:370 msgid "Srmount error" -msgstr "" +msgstr "Erreur *Srmount*" #: ../Doc/library/errno.rst:375 msgid "Communication error on send" -msgstr "" +msgstr "Erreur de communication lors de l'envoi" #: ../Doc/library/errno.rst:380 msgid "Protocol error" -msgstr "" +msgstr "Erreur de protocole" #: ../Doc/library/errno.rst:385 msgid "Multihop attempted" -msgstr "" +msgstr "Transfert à sauts multiples essayé" #: ../Doc/library/errno.rst:390 msgid "RFS specific error" -msgstr "" +msgstr "erreur spécifique *RFS*" #: ../Doc/library/errno.rst:395 msgid "Not a data message" -msgstr "" +msgstr "Pas un message de données" #: ../Doc/library/errno.rst:400 msgid "Value too large for defined data type" -msgstr "" +msgstr "Valeur trop grande pour être stockée dans ce type de donnée" #: ../Doc/library/errno.rst:405 msgid "Name not unique on network" -msgstr "" +msgstr "Nom non-unique dans le réseau" #: ../Doc/library/errno.rst:410 msgid "File descriptor in bad state" -msgstr "" +msgstr "Descripteur de fichier en mauvais état" #: ../Doc/library/errno.rst:415 msgid "Remote address changed" -msgstr "" +msgstr "Adresse distante changée" #: ../Doc/library/errno.rst:420 msgid "Can not access a needed shared library" -msgstr "" +msgstr "Accès impossible à une bibliothèque partagée nécessaire" #: ../Doc/library/errno.rst:425 msgid "Accessing a corrupted shared library" -msgstr "" +msgstr "Accès à une bibliothèque partagée corrompue" #: ../Doc/library/errno.rst:430 msgid ".lib section in a.out corrupted" -msgstr "" +msgstr "Section *.lib* de *a.out* corrompue" #: ../Doc/library/errno.rst:435 msgid "Attempting to link in too many shared libraries" -msgstr "" +msgstr "Tentative de liaison entre trop de bibliothèques partagées" #: ../Doc/library/errno.rst:440 msgid "Cannot exec a shared library directly" -msgstr "" +msgstr "Impossible d'exécuter directement une bibliothèque partagée" #: ../Doc/library/errno.rst:445 msgid "Illegal byte sequence" -msgstr "" +msgstr "Séquence de *bytes* illégale" #: ../Doc/library/errno.rst:450 msgid "Interrupted system call should be restarted" -msgstr "" +msgstr "Appel système interrompu qui devrait être relancé" #: ../Doc/library/errno.rst:455 msgid "Streams pipe error" -msgstr "" +msgstr "Erreur d’enchaînement de flux" #: ../Doc/library/errno.rst:460 msgid "Too many users" -msgstr "" +msgstr "Trop d'utilisateurs" #: ../Doc/library/errno.rst:465 msgid "Socket operation on non-socket" -msgstr "" +msgstr "Opération *socket* pas sur un connecteur" #: ../Doc/library/errno.rst:470 msgid "Destination address required" -msgstr "" +msgstr "Adresse de destination obligatoire" #: ../Doc/library/errno.rst:475 msgid "Message too long" -msgstr "" +msgstr "Message trop long" #: ../Doc/library/errno.rst:480 msgid "Protocol wrong type for socket" -msgstr "" +msgstr "Mauvais type de protocole pour ce connecteur" #: ../Doc/library/errno.rst:485 msgid "Protocol not available" -msgstr "" +msgstr "Protocole pas disponible" #: ../Doc/library/errno.rst:490 msgid "Protocol not supported" -msgstr "" +msgstr "Protocole non géré" #: ../Doc/library/errno.rst:495 msgid "Socket type not supported" -msgstr "" +msgstr "Type de connecteur non géré" #: ../Doc/library/errno.rst:500 msgid "Operation not supported on transport endpoint" -msgstr "" +msgstr "Opération non gérée par cette fin de lien" #: ../Doc/library/errno.rst:505 msgid "Protocol family not supported" -msgstr "" +msgstr "Famille de protocole non gérée" #: ../Doc/library/errno.rst:510 msgid "Address family not supported by protocol" -msgstr "" +msgstr "Famille d'adresses non gérée par ce protocole" #: ../Doc/library/errno.rst:515 msgid "Address already in use" -msgstr "" +msgstr "Adresse déjà utilisée" #: ../Doc/library/errno.rst:520 msgid "Cannot assign requested address" -msgstr "" +msgstr "Impossible d'assigner l'adresse demandée" #: ../Doc/library/errno.rst:525 msgid "Network is down" -msgstr "" +msgstr "Le réseau est désactivé" #: ../Doc/library/errno.rst:530 msgid "Network is unreachable" -msgstr "" +msgstr "Réseau inaccessible" #: ../Doc/library/errno.rst:535 msgid "Network dropped connection because of reset" -msgstr "" +msgstr "Connexion annulée par le réseau" #: ../Doc/library/errno.rst:540 msgid "Software caused connection abort" -msgstr "" +msgstr "Connexion abandonnée" #: ../Doc/library/errno.rst:545 msgid "Connection reset by peer" -msgstr "" +msgstr "Connexion réinitialisée" #: ../Doc/library/errno.rst:550 msgid "No buffer space available" -msgstr "" +msgstr "Plus d'espace tampon disponible" #: ../Doc/library/errno.rst:555 msgid "Transport endpoint is already connected" -msgstr "" +msgstr "La socket est connectée" #: ../Doc/library/errno.rst:560 msgid "Transport endpoint is not connected" -msgstr "" +msgstr "La socket n'est pas connectée" #: ../Doc/library/errno.rst:565 msgid "Cannot send after transport endpoint shutdown" -msgstr "" +msgstr "Impossible d'envoyer après l'arrêt du point final du transport" #: ../Doc/library/errno.rst:570 msgid "Too many references: cannot splice" -msgstr "" +msgstr "Trop de descripteurs : impossible d'effectuer la liaison" #: ../Doc/library/errno.rst:575 msgid "Connection timed out" -msgstr "" +msgstr "Délai maximal de connexion écoulé" #: ../Doc/library/errno.rst:580 msgid "Connection refused" -msgstr "" +msgstr "Connexion refusée" #: ../Doc/library/errno.rst:585 msgid "Host is down" -msgstr "" +msgstr "Hôte éteint" #: ../Doc/library/errno.rst:590 msgid "No route to host" -msgstr "" +msgstr "Pas de route vers l'hôte" #: ../Doc/library/errno.rst:595 msgid "Operation already in progress" -msgstr "" +msgstr "Connexion déjà en cours" #: ../Doc/library/errno.rst:600 msgid "Operation now in progress" -msgstr "" +msgstr "Opération en cours" #: ../Doc/library/errno.rst:605 msgid "Stale NFS file handle" -msgstr "" +msgstr "Descripteur de fichier NFS corrompu" #: ../Doc/library/errno.rst:610 msgid "Structure needs cleaning" -msgstr "" +msgstr "La structure a besoin d'être nettoyée" #: ../Doc/library/errno.rst:615 msgid "Not a XENIX named type file" -msgstr "" +msgstr "N'est pas un fichier nommé du type *XENIX*" #: ../Doc/library/errno.rst:620 msgid "No XENIX semaphores available" -msgstr "" +msgstr "Pas de sémaphore *XENIX* disponible" #: ../Doc/library/errno.rst:625 msgid "Is a named type file" -msgstr "" +msgstr "Est un fichier nommé" #: ../Doc/library/errno.rst:630 msgid "Remote I/O error" -msgstr "" +msgstr "Erreur d'entrées-sorties distante" #: ../Doc/library/errno.rst:635 msgid "Quota exceeded" -msgstr "" +msgstr "Quota dépassé" diff --git a/library/filecmp.po b/library/filecmp.po index 98e86815..f5ae7b88 100644 --- a/library/filecmp.po +++ b/library/filecmp.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/filecmp.rst:2 msgid ":mod:`filecmp` --- File and Directory Comparisons" -msgstr "" +msgstr ":mod:`filecmp` – Comparaisons de fichiers et de répertoires" #: ../Doc/library/filecmp.rst:8 msgid "**Source code:** :source:`Lib/filecmp.py`" @@ -30,16 +30,21 @@ msgid "" "directories, with various optional time/correctness trade-offs. For " "comparing files, see also the :mod:`difflib` module." msgstr "" +"Le module :mod:`filecmp` définit les fonctions permettant de comparer les " +"fichiers et les répertoires, avec différents compromis optionnels durée / " +"exactitude. Pour comparer des fichiers, voir aussi le module :mod:`difflib`." #: ../Doc/library/filecmp.rst:16 msgid "The :mod:`filecmp` module defines the following functions:" -msgstr "" +msgstr "Le module :mod:`filecmp` définit les fonctions suivantes :" #: ../Doc/library/filecmp.rst:21 msgid "" "Compare the files named *f1* and *f2*, returning ``True`` if they seem " "equal, ``False`` otherwise." msgstr "" +"Compare les fichiers nommés *f1* et *f2* , renvoie ``True`` s’ils semblent " +"égaux, ``False`` sinon." #: ../Doc/library/filecmp.rst:24 msgid "" @@ -58,12 +63,16 @@ msgid "" "Note that no external programs are called from this function, giving it " "portability and efficiency." msgstr "" +"Notez qu'aucun programme externe n'est appelé à partir de cette fonction, ce " +"qui lui confère des qualités de portabilité et d'efficacité." #: ../Doc/library/filecmp.rst:36 msgid "" "Compare the files in the two directories *dir1* and *dir2* whose names are " "given by *common*." msgstr "" +"Compare les fichiers des deux répertoires *dir1* et *dir2* dont les noms " +"sont donnés par *common*." #: ../Doc/library/filecmp.rst:39 msgid "" @@ -74,12 +83,21 @@ msgid "" "directories, the user lacks permission to read them or if the comparison " "could not be done for some other reason." msgstr "" +"Renvoie trois listes de noms de fichiers : *match* , *mismatch*, *errors*. " +"*match* contient la liste des fichiers qui correspondent, *mismatch* " +"contient les noms de ceux qui ne correspondent pas et *errors* répertorie " +"les noms des fichiers qui n'ont pas pu être comparés. Les fichiers sont " +"répertoriés dans *errors* s'ils n'existent pas dans l'un des répertoires, si " +"l'utilisateur ne dispose pas de l'autorisation nécessaire pour les lire ou " +"si la comparaison n'a pas pu être effectuée pour une autre raison." #: ../Doc/library/filecmp.rst:46 msgid "" "The *shallow* parameter has the same meaning and default value as for :func:" "`filecmp.cmp`." msgstr "" +"Le paramètre *shallow* a la même signification et la même valeur par défaut " +"que pour :func:`filecmp.cmp`." #: ../Doc/library/filecmp.rst:49 msgid "" @@ -87,6 +105,9 @@ msgid "" "``b/c`` and ``a/d/e`` with ``b/d/e``. ``'c'`` and ``'d/e'`` will each be in " "one of the three returned lists." msgstr "" +"Par exemple, ``cmpfiles('a', 'b', ['c', 'd/e'])`` compare ``a/c`` et ``b/" +"c`` et ``a/d/e`` avec ``b/d/e``. ``'c'`` et ``'d/e'`` seront chacun dans " +"l'une des trois listes renvoyées." #: ../Doc/library/filecmp.rst:54 msgid "Example::" @@ -94,7 +115,7 @@ msgstr "Exemple ::" #: ../Doc/library/filecmp.rst:66 msgid "The :class:`dircmp` class" -msgstr "" +msgstr "La classe :class:`dircmp`" #: ../Doc/library/filecmp.rst:68 msgid ":class:`dircmp` instances are built using this constructor:" @@ -113,10 +134,12 @@ msgid "" "The :class:`dircmp` class compares files by doing *shallow* comparisons as " "described for :func:`filecmp.cmp`." msgstr "" +"La classe :class:`dircmp` compare les fichiers en faisant des comparaisons " +"*superficielles* comme décrit pour :func:`filecmp.cmp`." #: ../Doc/library/filecmp.rst:81 msgid "The :class:`dircmp` class provides the following methods:" -msgstr "" +msgstr "La classe :class:`dircmp` fournit les méthodes suivantes :" #: ../Doc/library/filecmp.rst:86 msgid "Print (to ``sys.stdout``) a comparison between *a* and *b*." @@ -126,12 +149,16 @@ msgstr "" msgid "" "Print a comparison between *a* and *b* and common immediate subdirectories." msgstr "" +"Affiche une comparaison entre *a* et *b* et les sous-répertoires immédiats " +"communs." #: ../Doc/library/filecmp.rst:97 msgid "" "Print a comparison between *a* and *b* and common subdirectories " "(recursively)." msgstr "" +"Affiche une comparaison entre a et b et les sous-répertoires communs " +"(récursivement)." #: ../Doc/library/filecmp.rst:100 msgid "" @@ -139,6 +166,9 @@ msgid "" "be used to get various bits of information about the directory trees being " "compared." msgstr "" +"La classe :class:`dircmp` offre un certain nombre d'attributs intéressants " +"qui peuvent être utilisés pour obtenir diverses informations sur les " +"arborescences de répertoires comparées." #: ../Doc/library/filecmp.rst:104 msgid "" @@ -146,38 +176,43 @@ msgid "" "so there is no speed penalty if only those attributes which are lightweight " "to compute are used." msgstr "" +"Notez que, via les points d'ancrage :meth:`__getattr__`, tous les attributs " +"sont calculés de manière paresseuse. Il n'y a donc pas de pénalité en " +"vitesse si seuls les attributs rapides à calculer sont utilisés." #: ../Doc/library/filecmp.rst:111 msgid "The directory *a*." -msgstr "" +msgstr "Le répertoire *a*." #: ../Doc/library/filecmp.rst:116 msgid "The directory *b*." -msgstr "" +msgstr "Le répertoire *b*." #: ../Doc/library/filecmp.rst:121 msgid "Files and subdirectories in *a*, filtered by *hide* and *ignore*." msgstr "" +"Fichiers et sous-répertoires dans *a* , filtrés par *hide* et *ignore*." #: ../Doc/library/filecmp.rst:126 msgid "Files and subdirectories in *b*, filtered by *hide* and *ignore*." msgstr "" +"Fichiers et sous-répertoires dans *b* , filtrés par *hide* et *ignore*." #: ../Doc/library/filecmp.rst:131 msgid "Files and subdirectories in both *a* and *b*." -msgstr "" +msgstr "Fichiers et sous-répertoires à la fois dans *a* et *b*." #: ../Doc/library/filecmp.rst:136 msgid "Files and subdirectories only in *a*." -msgstr "" +msgstr "Fichiers et sous-répertoires uniquement dans *a*." #: ../Doc/library/filecmp.rst:141 msgid "Files and subdirectories only in *b*." -msgstr "" +msgstr "Fichiers et sous-répertoires uniquement dans *b*." #: ../Doc/library/filecmp.rst:146 msgid "Subdirectories in both *a* and *b*." -msgstr "" +msgstr "Sous-répertoires à la fois dans *a* et *b*." #: ../Doc/library/filecmp.rst:151 msgid "Files in both *a* and *b*" @@ -188,30 +223,42 @@ msgid "" "Names in both *a* and *b*, such that the type differs between the " "directories, or names for which :func:`os.stat` reports an error." msgstr "" +"Noms dans *a* et *b* , tels que le type diffère entre les répertoires, ou " +"noms pour lesquels :func:`os.stat` signale une erreur." #: ../Doc/library/filecmp.rst:162 msgid "" "Files which are identical in both *a* and *b*, using the class's file " "comparison operator." msgstr "" +"Fichiers identiques dans *a* et *b*, en utilisant l'opérateur de comparaison " +"de fichiers de la classe." #: ../Doc/library/filecmp.rst:168 msgid "" "Files which are in both *a* and *b*, whose contents differ according to the " "class's file comparison operator." msgstr "" +"Fichiers figurant à la fois dans *a* et dans *b* , dont le contenu diffère " +"en fonction de l'opérateur de comparaison de fichiers de la classe." #: ../Doc/library/filecmp.rst:174 msgid "Files which are in both *a* and *b*, but could not be compared." msgstr "" +"Fichiers à la fois dans *a* et dans *b* , mais ne pouvant pas être comparés." #: ../Doc/library/filecmp.rst:179 msgid "" "A dictionary mapping names in :attr:`common_dirs` to :class:`dircmp` objects." msgstr "" +"Un dictionnaire faisant correspondre les noms dans :attr:`common_dirs` vers " +"des objets :class:`dircmp`." #: ../Doc/library/filecmp.rst:182 msgid "" "Here is a simplified example of using the ``subdirs`` attribute to search " "recursively through two directories to show common different files::" msgstr "" +"Voici un exemple simplifié d'utilisation de l'attribut ``subdirs`` pour " +"effectuer une recherche récursive dans deux répertoires afin d'afficher des " +"fichiers communs différents ::" diff --git a/library/grp.po b/library/grp.po index d6537b4a..3f39ea8c 100644 --- a/library/grp.po +++ b/library/grp.po @@ -35,7 +35,7 @@ msgstr "" #: ../Doc/library/grp.rst:18 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/grp.rst:18 msgid "Attribute" @@ -126,7 +126,7 @@ msgstr "" #: ../Doc/library/grp.rst:61 msgid "Module :mod:`pwd`" -msgstr "" +msgstr "Module :mod:`pwd`" #: ../Doc/library/grp.rst:61 msgid "An interface to the user database, similar to this." diff --git a/library/hashlib.po b/library/hashlib.po index 972a1e93..20a50100 100644 --- a/library/hashlib.po +++ b/library/hashlib.po @@ -19,6 +19,7 @@ msgstr "" #: ../Doc/library/hashlib.rst:2 msgid ":mod:`hashlib` --- Secure hashes and message digests" msgstr "" +":mod:`hashlib` --- Algorithmes de hachage sécurisés et synthèse de messages" #: ../Doc/library/hashlib.rst:16 msgid "**Source code:** :source:`Lib/hashlib.py`" @@ -39,12 +40,16 @@ msgid "" "If you want the adler32 or crc32 hash functions, they are available in the :" "mod:`zlib` module." msgstr "" +"Si vous préférez utiliser les fonctions de hachage *adler32* ou *crc32*, " +"elles sont disponibles dans le module :mod:`zlib`." #: ../Doc/library/hashlib.rst:34 msgid "" "Some algorithms have known hash collision weaknesses, refer to the \"See also" "\" section at the end." msgstr "" +"Certains algorithmes ont des faiblesses connues relatives à la collision, se " +"référer à la section \"Voir aussi\" à la fin." #: ../Doc/library/hashlib.rst:37 msgid "" @@ -72,7 +77,7 @@ msgstr "" #: ../Doc/library/hashlib.rst:65 msgid "More condensed:" -msgstr "" +msgstr "En plus condensé : ::" #: ../Doc/library/hashlib.rst:70 msgid "" @@ -85,7 +90,7 @@ msgstr "" #: ../Doc/library/hashlib.rst:75 msgid "Using :func:`new` with an algorithm provided by OpenSSL:" -msgstr "" +msgstr "En utilisant :func:`new` avec un algorithme fourni par OpenSSL : ::" #: ../Doc/library/hashlib.rst:82 msgid "This module provides the following constant attribute:" @@ -111,24 +116,31 @@ msgid "" "same algorithm may appear multiple times in this set under different names " "(thanks to OpenSSL)." msgstr "" +"Un ensemble contenant les noms des algorithmes de hachage disponibles dans " +"l'interpréteur Python. Ces noms sont reconnus lorsqu'ils sont passés à la " +"fonction :func:`new`. :attr:`algorithms_guaranteed` est toujours un sous-" +"ensemble. Le même algorithme peut apparaître plusieurs fois dans cet " +"ensemble sous un nom différent (grâce à OpenSSL)." #: ../Doc/library/hashlib.rst:109 msgid "" "The following values are provided as constant attributes of the hash objects " "returned by the constructors:" msgstr "" +"Les valeurs suivantes sont fournis en tant qu'attributs constants des objets " +"hachés retournés par les constructeurs : ::" #: ../Doc/library/hashlib.rst:115 msgid "The size of the resulting hash in bytes." -msgstr "" +msgstr "La taille du *hash* résultant en octets." #: ../Doc/library/hashlib.rst:119 msgid "The internal block size of the hash algorithm in bytes." -msgstr "" +msgstr "La taille interne d'un bloc de l'algorithme de hachage en octets." #: ../Doc/library/hashlib.rst:121 msgid "A hash object has the following methods:" -msgstr "" +msgstr "L'objet haché possède les méthodes suivantes : ::" #: ../Doc/library/hashlib.rst:126 msgid "" @@ -167,7 +179,7 @@ msgstr "" #: ../Doc/library/hashlib.rst:157 msgid "Key derivation" -msgstr "" +msgstr "Dérivation de clé" #: ../Doc/library/hashlib.rst:159 msgid "" @@ -177,12 +189,20 @@ msgid "" "be tunable, slow, and include a `salt `_." msgstr "" +"Les algorithmes de dérivation de clés et d'étirement de clés sont conçus " +"pour le hachage sécurisé de mots de passe. Des algorithmes naïfs comme " +"``sha1(password)`` ne sont pas résistants aux attaques par force brute. Une " +"bonne fonction de hachage doit être paramétrable, lente, et inclure un `sel " +"`_." #: ../Doc/library/hashlib.rst:167 msgid "" "The function provides PKCS#5 password-based key derivation function 2. It " "uses HMAC as pseudorandom function." msgstr "" +"La fonction fournit une fonction de dérivation PKCS#5 (*Public Key " +"Cryptographic Standards #5 v2.0*). Elle utilise HMAC comme fonction de " +"pseudo-aléatoire." #: ../Doc/library/hashlib.rst:170 msgid "" @@ -211,14 +231,18 @@ msgid "" "Python implementation uses an inline version of :mod:`hmac`. It is about " "three times slower and doesn't release the GIL." msgstr "" +"Une implémentation rapide de *pbkdf2_hmac* est disponible avec OpenSSL. " +"L'implémentation Python utilise une version anonyme de :mod:`hmac`. Elle est " +"trois fois plus lente et ne libère pas le GIL." #: ../Doc/library/hashlib.rst:199 msgid "Module :mod:`hmac`" -msgstr "" +msgstr "Module :mod:`hmac`" #: ../Doc/library/hashlib.rst:199 msgid "A module to generate message authentication codes using hashes." msgstr "" +"Un module pour générer des codes d'authentification utilisant des *hash*." #: ../Doc/library/hashlib.rst:202 msgid "Module :mod:`base64`" @@ -227,6 +251,8 @@ msgstr "Module :mod:`base64`" #: ../Doc/library/hashlib.rst:202 msgid "Another way to encode binary hashes for non-binary environments." msgstr "" +"Un autre moyen d'encoder des *hash* binaires dans des environnements non " +"binaires." #: ../Doc/library/hashlib.rst:205 msgid "http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf" @@ -234,16 +260,20 @@ msgstr "" #: ../Doc/library/hashlib.rst:205 msgid "The FIPS 180-2 publication on Secure Hash Algorithms." -msgstr "" +msgstr "La publication FIPS 180-2 sur les algorithmes de hachage sécurisés." #: ../Doc/library/hashlib.rst:208 msgid "" "https://en.wikipedia.org/wiki/" "Cryptographic_hash_function#Cryptographic_hash_algorithms" msgstr "" +"https://en.wikipedia.org/wiki/" +"Cryptographic_hash_function#Cryptographic_hash_algorithms" #: ../Doc/library/hashlib.rst:208 msgid "" "Wikipedia article with information on which algorithms have known issues and " "what that means regarding their use." msgstr "" +"Article Wikipedia contenant les informations relatives aux algorithmes ayant " +"des problèmes et leur interprétation au regard de leur utilisation." diff --git a/library/inspect.po b/library/inspect.po index 93f547a1..8015aee4 100644 --- a/library/inspect.po +++ b/library/inspect.po @@ -744,7 +744,7 @@ msgstr "" #: ../Doc/library/inspect.rst:462 msgid "Classes and functions" -msgstr "" +msgstr "Classes et fonctions" #: ../Doc/library/inspect.rst:467 msgid "" diff --git a/library/logging.config.po b/library/logging.config.po index 44308129..09a8702a 100644 --- a/library/logging.config.po +++ b/library/logging.config.po @@ -798,16 +798,16 @@ msgstr "" #: ../Doc/library/logging.config.rst:766 msgid "Module :mod:`logging`" -msgstr "" +msgstr "Module :mod:`logging`" #: ../Doc/library/logging.config.rst:766 msgid "API reference for the logging module." -msgstr "" +msgstr "Référence d'API pour le module de journalisation." #: ../Doc/library/logging.config.rst:768 msgid "Module :mod:`logging.handlers`" -msgstr "" +msgstr "Module :mod:`logging.handlers`" #: ../Doc/library/logging.config.rst:769 msgid "Useful handlers included with the logging module." -msgstr "" +msgstr "Gestionnaires utiles inclus avec le module de journalisation." diff --git a/library/logging.handlers.po b/library/logging.handlers.po index 12cd2797..516afe80 100644 --- a/library/logging.handlers.po +++ b/library/logging.handlers.po @@ -1066,16 +1066,16 @@ msgstr "" #: ../Doc/library/logging.handlers.rst:760 msgid "Module :mod:`logging`" -msgstr "" +msgstr "Module :mod:`logging`" #: ../Doc/library/logging.handlers.rst:760 msgid "API reference for the logging module." -msgstr "" +msgstr "Référence d'API pour le module de journalisation." #: ../Doc/library/logging.handlers.rst:762 msgid "Module :mod:`logging.config`" -msgstr "" +msgstr "Module :mod:`logging.config`" #: ../Doc/library/logging.handlers.rst:763 msgid "Configuration API for the logging module." -msgstr "" +msgstr "API de configuration pour le module de journalisation." diff --git a/library/logging.po b/library/logging.po index 1ebbae64..323af33c 100644 --- a/library/logging.po +++ b/library/logging.po @@ -76,22 +76,30 @@ msgstr "" #: ../Doc/library/logging.rst:44 msgid "Loggers expose the interface that application code directly uses." msgstr "" +"Les enregistreurs (*loggers* en anglais) exposent l'interface que le code de " +"l'application utilise directement." #: ../Doc/library/logging.rst:45 msgid "" "Handlers send the log records (created by loggers) to the appropriate " "destination." msgstr "" +"Les gestionnaires (*handlers*) envoient les entrées de journal (crées par " +"les *loggers*) vers les destinations voulues." #: ../Doc/library/logging.rst:47 msgid "" "Filters provide a finer grained facility for determining which log records " "to output." msgstr "" +"Les filtres (*filters*) fournissent un moyen de choisir finement quelles " +"entrées de journal doivent être sorties." #: ../Doc/library/logging.rst:49 msgid "Formatters specify the layout of log records in the final output." msgstr "" +"Les formateurs (*formatters*) spécifient la structure de l'entrée de journal " +"dans la sortie finale." #: ../Doc/library/logging.rst:55 msgid "Logger Objects" @@ -367,7 +375,7 @@ msgstr "" #: ../Doc/library/logging.rst:293 msgid "Logging Levels" -msgstr "" +msgstr "Niveaux de journalisation" #: ../Doc/library/logging.rst:295 msgid "" @@ -377,14 +385,19 @@ msgid "" "define a level with the same numeric value, it overwrites the predefined " "value; the predefined name is lost." msgstr "" +"Les valeurs numériques des niveaux de journalisation sont données dans le " +"tableau suivant. Celles-ci n'ont d'intérêt que si vous voulez définir vos " +"propres niveaux, avec des valeurs spécifiques par rapport aux niveaux " +"prédéfinis. Si vous définissez un niveau avec la même valeur numérique, il " +"écrase la valeur prédéfinie ; le nom prédéfini est perdu." #: ../Doc/library/logging.rst:302 msgid "Level" -msgstr "" +msgstr "Niveau" #: ../Doc/library/logging.rst:302 msgid "Numeric value" -msgstr "" +msgstr "Valeur numérique" #: ../Doc/library/logging.rst:304 msgid "``CRITICAL``" @@ -1433,19 +1446,19 @@ msgstr "" #: ../Doc/library/logging.rst:1015 msgid "Module :mod:`logging.config`" -msgstr "" +msgstr "Module :mod:`logging.config`" #: ../Doc/library/logging.rst:1015 msgid "Configuration API for the logging module." -msgstr "" +msgstr "API de configuration pour le module de journalisation." #: ../Doc/library/logging.rst:1018 msgid "Module :mod:`logging.handlers`" -msgstr "" +msgstr "Module :mod:`logging.handlers`" #: ../Doc/library/logging.rst:1018 msgid "Useful handlers included with the logging module." -msgstr "" +msgstr "Gestionnaires utiles inclus avec le module de journalisation." #: ../Doc/library/logging.rst:1022 msgid ":pep:`282` - A Logging System" diff --git a/library/mailbox.po b/library/mailbox.po index b3d0f714..7b14be7e 100644 --- a/library/mailbox.po +++ b/library/mailbox.po @@ -19,6 +19,7 @@ msgstr "" #: ../Doc/library/mailbox.rst:3 msgid ":mod:`mailbox` --- Manipulate mailboxes in various formats" msgstr "" +":mod:`mailbox` — Manipuler les boîtes de courriels dans différents formats" #: ../Doc/library/mailbox.rst:11 msgid "" @@ -29,22 +30,30 @@ msgid "" "message.Message` class with format-specific state and behavior. Supported " "mailbox formats are Maildir, mbox, MH, Babyl, and MMDF." msgstr "" +"Ce module définit deux classes, :class:`Mailbox` et :class:`Message`, pour " +"accéder et manipuler les boîtes de courriel sur le disque et les messages " +"qu'elles contiennent. :class:`Mailbox` offre une interface ressemblant aux " +"dictionnaires avec des clés et des messages. La classe :class:`Message` " +"étend le module :mod:`email.message` de la classe :class:`~email.message." +"Message` avec un état et un comportement spécifiques à son format. Les " +"formats de boîtes de courriel gérés sont *Maildir*, *mbox*, *MH*, *Babyl* et " +"*MMDF*." #: ../Doc/library/mailbox.rst:22 msgid "Module :mod:`email`" -msgstr "" +msgstr "Module :mod:`email`" #: ../Doc/library/mailbox.rst:23 msgid "Represent and manipulate messages." -msgstr "" +msgstr "Représente et manipule des messages." #: ../Doc/library/mailbox.rst:29 msgid ":class:`Mailbox` objects" -msgstr "" +msgstr "Objets :class:`Mailbox`" #: ../Doc/library/mailbox.rst:34 msgid "A mailbox, which may be inspected and modified." -msgstr "" +msgstr "Une boîte mail, qui peut être inspectée et modifiée." #: ../Doc/library/mailbox.rst:36 msgid "" @@ -52,6 +61,10 @@ msgid "" "instantiated. Instead, format-specific subclasses should inherit from :" "class:`Mailbox` and your code should instantiate a particular subclass." msgstr "" +"La classe :class:`Mailbox` définit une interface et n'est pas destinée à " +"être instanciée. Les sous-classes de format spécifique doivent plutôt " +"hériter de :class:`Mailbox` et votre code doit instancier une sous-classe " +"particulière." #: ../Doc/library/mailbox.rst:40 msgid "" @@ -62,6 +75,12 @@ msgid "" "corresponding message is modified, such as by replacing it with another " "message." msgstr "" +"L'interface :class:`Mailbox` est un compatible avec celle des dictionnaires, " +"avec de courtes clés correspondant aux messages. Les clés sont générées par " +"l'instance :class:`Mailbox` avec laquelle elles sont utilisées et n'ont de " +"sens que pour cette instance :class:`Mailbox`. Une clé continue d'identifier " +"un message même si le message correspondant est modifié ou remplacé par un " +"autre message." #: ../Doc/library/mailbox.rst:46 msgid "" @@ -69,6 +88,10 @@ msgid "" "method :meth:`add` and removed using a ``del`` statement or the set-like " "methods :meth:`remove` and :meth:`discard`." msgstr "" +"Les messages peuvent être ajoutés à une instance :class:`Mailbox` en " +"utilisant la méthode :meth:`add` (comme pour les ensembles), et supprimés en " +"utilisant soit l'instruction ``del`` soit les méthodes :meth:`remove` et :" +"meth:`discard` (comme pour les ensembles)." #: ../Doc/library/mailbox.rst:50 msgid "" @@ -80,6 +103,14 @@ msgid "" "copied. In neither case is a reference to the message representation kept by " "the :class:`Mailbox` instance." msgstr "" +"La sémantique de l'interface :class:`Mailbox` diffère de la sémantique des " +"dictionnaires sur plusieurs aspects. À chaque fois qu'un message est " +"demandé, une nouvelle représentation (généralement une instance :class:" +"`Message`) est générée en se basant sur l'état actuel de la boîte mail. De " +"la même manière, lorsqu'un message est ajouté à l'instance :class:`Mailbox`, " +"le contenu de la représentation du message donné est copié. En aucun cas une " +"référence vers la représentation du message n'est gardée par l'instance :" +"class:`Mailbox`." #: ../Doc/library/mailbox.rst:58 msgid "" @@ -91,6 +122,15 @@ msgid "" "silently skipped, though using a key from an iterator may result in a :exc:" "`KeyError` exception if the corresponding message is subsequently removed." msgstr "" +"L'itérateur par défaut de :class:`Mailbox` itère sur les représentations des " +"messages et pas sur les clés (comme le fait par défaut l'itérateur des " +"dictionnaires). De plus, les modifications sur une boîte mail durant " +"l'itération sont sûres et clairement définies. Les messages ajoutés à la " +"boîte mail après la création d'un itérateur ne sont pas vus par l'itérateur. " +"Les messages supprimés de la boîte mail avant que l'itérateur les traite " +"seront ignorés silencieusement. Toutefois, utiliser une clé depuis un " +"itérateur peut aboutir à une exception :exc:`KeyError` si le message " +"correspondant est supprimé par la suite." #: ../Doc/library/mailbox.rst:69 msgid "" @@ -103,15 +143,25 @@ msgid "" "Failing to lock the mailbox runs the risk of losing messages or corrupting " "the entire mailbox." msgstr "" +"Soyez très prudent lorsque vous éditez des boîtes mail qui peuvent être " +"modifiées par d'autres processus. Le format de boîte mail le plus sûr à " +"utiliser pour ces tâches est *Maildir*, essayez d'éviter les formats à " +"fichier unique tels que *mbox* afin d'empêcher les écritures concurrentes. " +"Si vous modifiez une boîte mail, vous *devez* la verrouiller en appelant les " +"méthodes :meth:`lock` et :meth:`unlock` *avant* de lire les messages dans le " +"fichier ou d'y appliquer des changements en y ajoutant ou supprimant des " +"messages. Ne pas verrouiller la boîte mail vous fait prendre le risque de " +"perdre des messages ou de corrompre la boîte mail entière." #: ../Doc/library/mailbox.rst:78 msgid ":class:`Mailbox` instances have the following methods:" -msgstr "" +msgstr "Les instances :class:`Mailbox` contiennent les méthodes suivantes :" #: ../Doc/library/mailbox.rst:83 msgid "" "Add *message* to the mailbox and return the key that has been assigned to it." msgstr "" +"Ajoute *message* à la boîte mail et renvoie la clé qui lui a été assigné." #: ../Doc/library/mailbox.rst:86 msgid "" @@ -126,7 +176,7 @@ msgstr "" #: ../Doc/library/mailbox.rst:99 msgid "Delete the message corresponding to *key* from the mailbox." -msgstr "" +msgstr "Supprime le message correspondant à *key* dans la boîte mail." #: ../Doc/library/mailbox.rst:101 msgid "" @@ -136,12 +186,20 @@ msgid "" "`discard` may be preferred if the underlying mailbox format supports " "concurrent modification by other processes." msgstr "" +"Si ce message n'existe pas, une exception :exc:`KeyError` est levée si la " +"méthode a été appelée en tant que :meth:`remove` ou :meth:`__delitem__` mais " +"aucune exception n'est levée si la méthode a été appelée en tant que :meth:" +"`discard`. Vous préférerez sûrement le comportement de :meth:`discard` si le " +"format de boîte mail sous-jacent accepte la modification concurrente par les " +"autres processus." #: ../Doc/library/mailbox.rst:110 msgid "" "Replace the message corresponding to *key* with *message*. Raise a :exc:" "`KeyError` exception if no message already corresponds to *key*." msgstr "" +"Remplace le message correspondant à *key* par *message*. Lève une exception :" +"exc:`KeyError` s'il n'y a pas déjà de message correspondant à *key*." #: ../Doc/library/mailbox.rst:113 msgid "" @@ -160,6 +218,9 @@ msgid "" "Return an iterator over all keys if called as :meth:`iterkeys` or return a " "list of keys if called as :meth:`keys`." msgstr "" +"Renvoie un itérateur sur toutes les clés s'il est appelé en tant que :meth:" +"`iterkeys` ou renvoie une liste de clés s'il est appelé en tant que :meth:" +"`keys`." #: ../Doc/library/mailbox.rst:134 msgid "" @@ -170,6 +231,13 @@ msgid "" "message factory was specified when the :class:`Mailbox` instance was " "initialized." msgstr "" +"Renvoie un itérateur sur les représentations de tous les messages s'il est " +"appelé en tant que :meth:`itervalues` ou :meth:`__iter__` et renvoie une " +"liste de ces représentations s'il est appelé en tant que :meth:`values`. Les " +"messages sont représentés en tant qu'instances de la sous-classe :class:" +"`Message` au format correspondant à moins qu'une fabrique de messages " +"personnalisée soit spécifiée lorsque l'instance :class:`Mailbox` a été " +"initialisée." #: ../Doc/library/mailbox.rst:143 msgid "" diff --git a/library/md5.po b/library/md5.po index 36419671..e4bb6c54 100644 --- a/library/md5.po +++ b/library/md5.po @@ -43,7 +43,7 @@ msgstr "" #: ../Doc/library/md5.rst:34 msgid "More condensed:" -msgstr "" +msgstr "En plus condensé : ::" #: ../Doc/library/md5.rst:39 msgid "" diff --git a/library/mimetools.po b/library/mimetools.po index 8abd068a..0d4337cb 100644 --- a/library/mimetools.po +++ b/library/mimetools.po @@ -83,7 +83,7 @@ msgstr "" #: ../Doc/library/mimetools.rst:69 msgid "Module :mod:`email`" -msgstr "" +msgstr "Module :mod:`email`" #: ../Doc/library/mimetools.rst:69 msgid "" diff --git a/library/multifile.po b/library/multifile.po index 1c8ecd57..363feac4 100644 --- a/library/multifile.po +++ b/library/multifile.po @@ -65,7 +65,7 @@ msgstr "" #: ../Doc/library/multifile.rst:43 msgid "Module :mod:`email`" -msgstr "" +msgstr "Module :mod:`email`" #: ../Doc/library/multifile.rst:44 msgid "" diff --git a/library/multiprocessing.po b/library/multiprocessing.po index fa4fb7d5..621654e5 100644 --- a/library/multiprocessing.po +++ b/library/multiprocessing.po @@ -34,6 +34,14 @@ msgid "" "programmer to fully leverage multiple processors on a given machine. It " "runs on both Unix and Windows." msgstr "" +":mod:`multiprocessing` est un paquet qui permet l'instanciation de processus " +"via la même API que le module :mod:`threading`. Le paquet :mod:" +"`multiprocessing` offre à la fois des possibilités de programmation " +"concurrente locale ou à distance, contournant les problèmes du :term:`Global " +"Interpreter Lock` en utilisant des processus plutôt que des fils " +"d'exécution. Ainsi, le module :mod:`multiprocessing` permet au développeur " +"de bénéficier entièrement des multiples processeurs sur une machine. Il " +"tourne à la fois sur les systèmes Unix et Windows." #: ../Doc/library/multiprocessing.rst:21 msgid "" @@ -49,11 +57,11 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:39 msgid "will print to standard output ::" -msgstr "" +msgstr "affiche sur la sortie standard : ::" #: ../Doc/library/multiprocessing.rst:45 msgid "The :class:`Process` class" -msgstr "" +msgstr "La classe :class:`Process`" #: ../Doc/library/multiprocessing.rst:47 msgid "" @@ -62,11 +70,17 @@ msgid "" "`Process` follows the API of :class:`threading.Thread`. A trivial example " "of a multiprocess program is ::" msgstr "" +"Dans le module :mod:`multiprocessing`, les processus sont instanciés en " +"créant un objet :class:`Process` et en appelant sa méthode :meth:`~Process." +"start`. La classe :class:`Process` suit la même API que :class:`threading." +"Thread`. Un exemple trivial d'un programme multi-processus est : ::" #: ../Doc/library/multiprocessing.rst:62 msgid "" "To show the individual process IDs involved, here is an expanded example::" msgstr "" +"Pour afficher les IDs des processus impliqués, voici un exemple plus " +"étoffé : ::" #: ../Doc/library/multiprocessing.rst:84 msgid "" @@ -76,13 +90,15 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:89 msgid "Exchanging objects between processes" -msgstr "" +msgstr "Échange d'objets entre les processus" #: ../Doc/library/multiprocessing.rst:91 msgid "" ":mod:`multiprocessing` supports two types of communication channel between " "processes:" msgstr "" +":mod:`multiprocessing` gère deux types de canaux de communication entre les " +"processus :" #: ../Doc/library/multiprocessing.rst:94 msgid "**Queues**" @@ -97,6 +113,8 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:111 msgid "Queues are thread and process safe." msgstr "" +"Les queues peuvent être utilisées par plusieurs fils d'exécution ou " +"processus." #: ../Doc/library/multiprocessing.rst:113 msgid "**Pipes**" @@ -107,6 +125,8 @@ msgid "" "The :func:`Pipe` function returns a pair of connection objects connected by " "a pipe which by default is duplex (two-way). For example::" msgstr "" +"La fonction :func:`Pipe` renvoie une paire d'objets de connexion connectés à " +"un tube qui est par défaut à double-sens. Par exemple : ::" #: ../Doc/library/multiprocessing.rst:131 msgid "" @@ -117,10 +137,17 @@ msgid "" "the *same* end of the pipe at the same time. Of course there is no risk of " "corruption from processes using different ends of the pipe at the same time." msgstr "" +"Les deux objets de connexion renvoyés par :func:`Pipe` représentent les deux " +"bouts d'un tube. Chaque objet de connexion possède (entre autres) des " +"méthodes :meth:`~Connection.send` et :meth:`~Connection.recv`. Notez que les " +"données d'un tube peuvent être corrompues si deux processus (ou fils " +"d'exécution) essaient de lire ou d'écrire sur le même bout du tube en même " +"temps. Évidemment il n'y a pas de risque de corruption si les processus " +"utilisent deux bouts différents en même temps." #: ../Doc/library/multiprocessing.rst:141 msgid "Synchronization between processes" -msgstr "" +msgstr "Synchronisation entre processus" #: ../Doc/library/multiprocessing.rst:143 msgid "" @@ -128,16 +155,22 @@ msgid "" "primitives from :mod:`threading`. For instance one can use a lock to ensure " "that only one process prints to standard output at a time::" msgstr "" +":mod:`multiprocessing` contient des équivalents à toutes les primitives de " +"synchronisation de :mod:`threading`. Par exemple il est possible d'utiliser " +"un verrou pour s'assurer qu'un seul processus à la fois écrit sur la sortie " +"standard : ::" #: ../Doc/library/multiprocessing.rst:160 msgid "" "Without using the lock output from the different processes is liable to get " "all mixed up." msgstr "" +"Sans le verrou, les sorties des différents processus risquent d'être " +"mélangées." #: ../Doc/library/multiprocessing.rst:165 msgid "Sharing state between processes" -msgstr "" +msgstr "Partager un état entre les processus" #: ../Doc/library/multiprocessing.rst:167 msgid "" @@ -145,27 +178,34 @@ msgid "" "avoid using shared state as far as possible. This is particularly true when " "using multiple processes." msgstr "" +"Comme mentionné plus haut, il est généralement préférable d'éviter autant " +"que possible d'utiliser des états partagés en programmation concurrente. " +"C'est particulièrement vrai quand plusieurs processus sont utilisés." #: ../Doc/library/multiprocessing.rst:171 msgid "" "However, if you really do need to use some shared data then :mod:" "`multiprocessing` provides a couple of ways of doing so." msgstr "" +"Cependant, si vous devez réellement partager des données, :mod:" +"`multiprocessing` permet de le faire de deux manières." #: ../Doc/library/multiprocessing.rst:174 msgid "**Shared memory**" -msgstr "" +msgstr "**Mémoire partagée**" #: ../Doc/library/multiprocessing.rst:176 msgid "" "Data can be stored in a shared memory map using :class:`Value` or :class:" "`Array`. For example, the following code ::" msgstr "" +"Les données peuvent être stockées dans une mémoire partagée en utilisant " +"des :class:`Value` ou des :class:`Array`. Par exemple, le code suivant : ::" #: ../Doc/library/multiprocessing.rst:197 #: ../Doc/library/multiprocessing.rst:244 msgid "will print ::" -msgstr "" +msgstr "affiche : ::" #: ../Doc/library/multiprocessing.rst:202 msgid "" @@ -174,6 +214,11 @@ msgid "" "double precision float and ``'i'`` indicates a signed integer. These shared " "objects will be process and thread-safe." msgstr "" +"Les arguments ``'d'`` et ``'i'`` utilisés à la création des ``num`` et " +"`arr`` sont des codes de types tels qu'utilisés par le module :mod:`array` : " +"``'d'`` indique un flottant double-précision et ``'i'`` indique un entier " +"signé. Ces objets partagés seront sûr d'utilisation entre processus et fils " +"d'exécution." #: ../Doc/library/multiprocessing.rst:207 msgid "" @@ -181,10 +226,13 @@ msgid "" "`multiprocessing.sharedctypes` module which supports the creation of " "arbitrary ctypes objects allocated from shared memory." msgstr "" +"Pour plus de flexibilité dans l'utilisation de mémoire partagée, vous pouvez " +"utiliser le module :mod:`multiprocessing.sharedctypes` qui permet la " +"création d'objets arbitraires *ctypes* alloués depuis la mémoire partagée." #: ../Doc/library/multiprocessing.rst:211 msgid "**Server process**" -msgstr "" +msgstr "**Processus serveur**" #: ../Doc/library/multiprocessing.rst:213 msgid "" @@ -192,6 +240,9 @@ msgid "" "holds Python objects and allows other processes to manipulate them using " "proxies." msgstr "" +"Un objet gestionnaire renvoyé par :func:`Manager` contrôle un processus " +"serveur qui détient les objets Python et autorise les autres processus à les " +"manipuler à l'aide de mandataires." #: ../Doc/library/multiprocessing.rst:217 msgid "" @@ -209,10 +260,15 @@ msgid "" "manager can be shared by processes on different computers over a network. " "They are, however, slower than using shared memory." msgstr "" +"Les processus serveurs de gestionnaires sont plus flexibles que les mémoires " +"partagées parce qu'ils peuvent gérer des types d'objets arbitraires. Aussi, " +"un gestionnaire unique peut être partagé par les processus sur différentes " +"machines à travers le réseau. Cependant, ils sont plus lents que les " +"mémoires partagées." #: ../Doc/library/multiprocessing.rst:256 msgid "Using a pool of workers" -msgstr "" +msgstr "Utiliser un réservoir de *workers*" #: ../Doc/library/multiprocessing.rst:258 msgid "" @@ -220,6 +276,9 @@ msgid "" "processes. It has methods which allows tasks to be offloaded to the worker " "processes in a few different ways." msgstr "" +"La classe :class:`~multiprocessing.pool.Pool` représente une *pool* de " +"processus de travail. Elle possède des méthodes qui permettent aux tâches " +"d'être déchargées vers les processus de travail de différentes manières." #: ../Doc/library/multiprocessing.rst:262 msgid "For example::" @@ -230,6 +289,8 @@ msgid "" "Note that the methods of a pool should only ever be used by the process " "which created it." msgstr "" +"Notez que les méthodes d'une *pool* ne devraient être utilisées que par le " +"processus qui l'a créée." #: ../Doc/library/multiprocessing.rst:305 msgid "" @@ -246,20 +307,25 @@ msgid "" "in a semi-random fashion, and then you may have to stop the master process " "somehow.)" msgstr "" +"(Si vous essayez ce code, il affichera trois traces d'appels complètes " +"entrelacées de manière semi-aléatoire, et vous aurez alors à stopper le " +"processus maître.)" #: ../Doc/library/multiprocessing.rst:333 msgid "Reference" -msgstr "" +msgstr "Référence" #: ../Doc/library/multiprocessing.rst:335 msgid "" "The :mod:`multiprocessing` package mostly replicates the API of the :mod:" "`threading` module." msgstr "" +"Le paquet :mod:`multiprocessing` reproduit en grande partie l'API du module :" +"mod:`threading`." #: ../Doc/library/multiprocessing.rst:340 msgid ":class:`Process` and exceptions" -msgstr "" +msgstr ":class:`Process` et exceptions" #: ../Doc/library/multiprocessing.rst:344 msgid "" @@ -267,6 +333,9 @@ msgid "" "class:`Process` class has equivalents of all the methods of :class:" "`threading.Thread`." msgstr "" +"Les objets *process* représentent une activité exécutée dans un processus " +"séparé. La classe :class:`Process` a des équivalents à toutes les méthodes " +"de :class:`threading.Thread`." #: ../Doc/library/multiprocessing.rst:348 msgid "" @@ -288,10 +357,13 @@ msgid "" "base class constructor (:meth:`Process.__init__`) before doing anything else " "to the process." msgstr "" +"Si une sous-classe redéfinit le constructeur, elle doit s'assurer d'invoquer " +"le constructeur de la classe de base (:meth:`Process.__init__`) avant de " +"faire autre chose du processus." #: ../Doc/library/multiprocessing.rst:366 msgid "Method representing the process's activity." -msgstr "" +msgstr "Méthode représentant l'activité du processus." #: ../Doc/library/multiprocessing.rst:368 msgid "" @@ -300,16 +372,23 @@ msgid "" "argument, if any, with sequential and keyword arguments taken from the " "*args* and *kwargs* arguments, respectively." msgstr "" +"Vous pouvez redéfinir cette méthode dans une sous-classe. La méthode " +"standard :meth:`run` invoque l'objet appelable passé au constructeur comme " +"argument *target*, si fourni, avec les arguments séquentiels et nommés " +"respectivement pris depuis les paramètres *args* et *kwargs*." #: ../Doc/library/multiprocessing.rst:375 msgid "Start the process's activity." -msgstr "" +msgstr "Démarre l'activité du processus." #: ../Doc/library/multiprocessing.rst:377 msgid "" "This must be called at most once per process object. It arranges for the " "object's :meth:`run` method to be invoked in a separate process." msgstr "" +"Elle doit être appelée au plus une fois par objet processus. Elle s'arrange " +"pour que la méthode :meth:`run` de l'objet soit invoquée dans un processus " +"séparé." #: ../Doc/library/multiprocessing.rst:382 msgid "" @@ -323,13 +402,16 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:387 msgid "A process can be joined many times." -msgstr "" +msgstr "*join* peut être appelée plusieurs fois sur un même processus." #: ../Doc/library/multiprocessing.rst:389 msgid "" "A process cannot join itself because this would cause a deadlock. It is an " "error to attempt to join a process before it has been started." msgstr "" +"Un processus ne peut pas s'attendre lui-même car cela causerait un " +"interblocage. C'est une erreur d'essayer d'attendre un processus avant qu'il " +"ne soit démarré." #: ../Doc/library/multiprocessing.rst:394 msgid "The process's name." @@ -344,29 +426,35 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:402 msgid "Return whether the process is alive." -msgstr "" +msgstr "Renvoie vrai si le processus est en vie, faux sinon." #: ../Doc/library/multiprocessing.rst:404 msgid "" "Roughly, a process object is alive from the moment the :meth:`start` method " "returns until the child process terminates." msgstr "" +"Grossièrement, un objet processus est en vie depuis le moment où la méthode :" +"meth:`start` finit de s'exécuter jusqu'à ce que le processus fils se termine." #: ../Doc/library/multiprocessing.rst:409 msgid "" "The process's daemon flag, a Boolean value. This must be set before :meth:" "`start` is called." msgstr "" +"L'option *daemon* du processus, une valeur booléenne. L'option doit être " +"réglée avant que la méthode :meth:`start` ne soit appelée." #: ../Doc/library/multiprocessing.rst:412 msgid "The initial value is inherited from the creating process." -msgstr "" +msgstr "La valeur initiale est héritée par le processus créateur." #: ../Doc/library/multiprocessing.rst:414 msgid "" "When a process exits, it attempts to terminate all of its daemonic child " "processes." msgstr "" +"Quand un processus se ferme, il tente de terminer tous ses processus enfants " +"*daemon*." #: ../Doc/library/multiprocessing.rst:417 msgid "" @@ -376,17 +464,26 @@ msgid "" "Unix daemons or services, they are normal processes that will be terminated " "(and not joined) if non-daemonic processes have exited." msgstr "" +"Notez qu'un processus *daemon* n'est pas autorisé à créer des processus " +"fils. Sinon un processus *daemon* laisserait ses enfants orphelins lorsqu'il " +"se termine par la fermeture de son parent. De plus, ce **ne sont pas** des " +"*daemons* ou services Unix, ce sont des processus normaux qui seront " +"terminés (et non attendus) si un processus non *daemon* se ferme." #: ../Doc/library/multiprocessing.rst:423 msgid "" "In addition to the :class:`threading.Thread` API, :class:`Process` objects " "also support the following attributes and methods:" msgstr "" +"En plus de l'API :class:`threading.Thread`, les objets :class:`Process` " +"supportent aussi les attributs et méthodes suivants :" #: ../Doc/library/multiprocessing.rst:428 msgid "" "Return the process ID. Before the process is spawned, this will be ``None``." msgstr "" +"Renvoie l'ID du processus. Avant que le processus ne soit lancé, la valeur " +"est ``None``." #: ../Doc/library/multiprocessing.rst:433 msgid "" @@ -394,16 +491,21 @@ msgid "" "terminated. A negative value *-N* indicates that the child was terminated " "by signal *N*." msgstr "" +"Le code de fermeture de l'enfant. La valeur est ``None`` si le processus ne " +"s'est pas encore terminé. Une valeur négative *-N* indique que le fils a été " +"terminé par un signal *N*." #: ../Doc/library/multiprocessing.rst:439 msgid "The process's authentication key (a byte string)." -msgstr "" +msgstr "La clé d'authentification du processus (une chaîne d'octets)." #: ../Doc/library/multiprocessing.rst:441 msgid "" "When :mod:`multiprocessing` is initialized the main process is assigned a " "random string using :func:`os.urandom`." msgstr "" +"Quand :mod:`multiprocessing` est initialisé, une chaîne aléatoire est " +"assignée au processus principal, en utilisant :func:`os.urandom`." #: ../Doc/library/multiprocessing.rst:444 msgid "" @@ -411,10 +513,13 @@ msgid "" "authentication key of its parent process, although this may be changed by " "setting :attr:`authkey` to another byte string." msgstr "" +"Quand un objet :class:`Process` est créé, il hérité de la clé " +"d'authentification de son parent, bien que cela puisse être changé à l'aide " +"du paramètre :attr:`authkey` pour une autre chaîne d'octets." #: ../Doc/library/multiprocessing.rst:448 msgid "See :ref:`multiprocessing-auth-keys`." -msgstr "" +msgstr "Voir :ref:`multiprocessing-auth-keys`." #: ../Doc/library/multiprocessing.rst:452 msgid "" @@ -422,12 +527,18 @@ msgid "" "on Windows :c:func:`TerminateProcess` is used. Note that exit handlers and " "finally clauses, etc., will not be executed." msgstr "" +"Termine le processus. Sous Unix cela est réalisé à l'aide d'un signal " +"``SIGTERM``, sous Windows :c:func:`TerminateProcess` est utilisé. Notez que " +"les gestionnaires de sortie, les clauses `finally` etc. ne sont pas " +"exécutées." #: ../Doc/library/multiprocessing.rst:456 msgid "" "Note that descendant processes of the process will *not* be terminated -- " "they will simply become orphaned." msgstr "" +"Notez que les descendants du processus ne *seront pas* terminés -- ils " +"deviendront simplement orphelins." #: ../Doc/library/multiprocessing.rst:461 msgid "" @@ -437,6 +548,11 @@ msgid "" "semaphore etc. then terminating it is liable to cause other processes to " "deadlock." msgstr "" +"Si cette méthode est utilisée quand le processus associé utilise un tube ou " +"une queue, alors le tube ou la queue sont susceptibles d'être corrompus et " +"peuvent devenir inutilisables par les autres processus. De façon similaire, " +"si le processus a acquis un verrou, un sémaphore ou autre, alors le terminer " +"est susceptible de provoquer des blocages dans les autres processus." #: ../Doc/library/multiprocessing.rst:467 msgid "" @@ -444,26 +560,33 @@ msgid "" "`terminate` and :attr:`exitcode` methods should only be called by the " "process that created the process object." msgstr "" +"Notez que les méthodes :meth:`start`, :meth:`join`, :meth:`is_alive`, :meth:" +"`terminate` et :attr:`exitcode` ne devraient être appelées que par le " +"processus ayant créé l'objet *process*." #: ../Doc/library/multiprocessing.rst:471 msgid "Example usage of some of the methods of :class:`Process`:" -msgstr "" +msgstr "Exemple d'utilisation de quelques méthodes de :class:`Process` :" #: ../Doc/library/multiprocessing.rst:492 msgid "" "Exception raised by :meth:`Connection.recv_bytes_into()` when the supplied " "buffer object is too small for the message read." msgstr "" +"Exception levée par :meth:`Connection.recv_bytes_into()` quand l'objet " +"tampon fourni est trop petit pour le message à lire." #: ../Doc/library/multiprocessing.rst:495 msgid "" "If ``e`` is an instance of :exc:`BufferTooShort` then ``e.args[0]`` will " "give the message as a byte string." msgstr "" +"Si ``e`` est une instance de :exc:`BufferTooShort` alors ``e.args[0]`` " +"donnera un message sous forme d'une chaîne d'octets." #: ../Doc/library/multiprocessing.rst:500 msgid "Pipes and Queues" -msgstr "" +msgstr "Tubes (*pipes*) et Queues" #: ../Doc/library/multiprocessing.rst:502 msgid "" @@ -471,12 +594,18 @@ msgid "" "communication between processes and avoids having to use any synchronization " "primitives like locks." msgstr "" +"Quand de multiples processus sont utilisés, de l'échange de messages est " +"souvent mis en place pour la communication entre processus et éviter d'avoir " +"à utiliser des primitives de synchronisation telles que des verrous." #: ../Doc/library/multiprocessing.rst:506 msgid "" "For passing messages one can use :func:`Pipe` (for a connection between two " "processes) or a queue (which allows multiple producers and consumers)." msgstr "" +"Pour échanger des messages vous pouvez utiliser un :func:`Pipe` (pour une " +"connexion entre deux processus) ou une queue (qui autorise de multiples " +"producteurs et consommateurs)." #: ../Doc/library/multiprocessing.rst:509 msgid "" @@ -495,12 +624,18 @@ msgid "" "semaphore used to count the number of unfinished tasks may eventually " "overflow, raising an exception." msgstr "" +"Si vous utilisez :class:`JoinableQueue` alors vous **devez** appeler :meth:" +"`JoinableQueue.task_done` pour chaque tâche retirée de la queue, sans quoi " +"le sémaphore utilisé pour compter le nombre de tâches non accomplies pourra " +"éventuellement déborder, levant une exception." #: ../Doc/library/multiprocessing.rst:520 msgid "" "Note that one can also create a shared queue by using a manager object -- " "see :ref:`multiprocessing-managers`." msgstr "" +"Notez que vous pouvez aussi créer une queue partagée en utilisant un objet " +"gestionnaire -- voir :ref:`multiprocessing-managers`." #: ../Doc/library/multiprocessing.rst:525 msgid "" @@ -517,6 +652,12 @@ msgid "" "practical difficulties -- if they really bother you then you can instead use " "a queue created with a :ref:`manager `." msgstr "" +"Quand un objet est placé dans une queue, l'objet est sérialisé par *pickle* " +"et un fil d'exécution en arrière-plan transmettra ensuite les données " +"sérialisées sur un tube sous-jacent. Cela a certaines conséquences qui " +"peuvent être un peu surprenantes, mais ne devrait causer aucune difficultés " +"pratiques -- si elles vous embêtent vraiment, alors vous pouvez à la place " +"utiliser une queue créée avec un :ref:`manager `." #: ../Doc/library/multiprocessing.rst:539 msgid "" @@ -532,6 +673,10 @@ msgid "" "the same process will always be in the expected order with respect to each " "other." msgstr "" +"Si plusieurs processus placent des objets dans la queue, il est possible " +"pour les objets d'être reçus de l'autre côté dans le désordre. Cependant, " +"les objets placés par un même processus seront toujours récupérés dans " +"l'ordre attendu." #: ../Doc/library/multiprocessing.rst:551 msgid "" @@ -548,6 +693,11 @@ msgid "" "cancel_join_thread>`), then that process will not terminate until all " "buffered items have been flushed to the pipe." msgstr "" +"Comme mentionné plus haut, si un processus fils a placé des éléments dans la " +"queue (et qu'il n'a pas utilisé :meth:`JoinableQueue.cancel_join_thread " +"`), alors le processus ne se " +"terminera pas tant que les éléments placés dans le tampon n'auront pas été " +"transmis au tube." #: ../Doc/library/multiprocessing.rst:563 msgid "" @@ -557,18 +707,27 @@ msgid "" "parent process may hang on exit when it tries to join all its non-daemonic " "children." msgstr "" +"Cela signifie que si vous essayez d'attendre ce processus vous pouvez " +"obtenir un interblocage, à moins que vous ne soyez sûr que tous les éléments " +"placés dans la queue ont été consommés. De même, si le processus fils n'est " +"pas un *daemon* alors le processus parent pourrait bloquer à la fermeture " +"quand il tentera d'attendre tous ses enfants non *daemons*." #: ../Doc/library/multiprocessing.rst:568 msgid "" "Note that a queue created using a manager does not have this issue. See :" "ref:`multiprocessing-programming`." msgstr "" +"Notez que la queue créée à l'aide d'un gestionnaire n'a pas ce problème. " +"Voir :ref:`multiprocessing-programming`." #: ../Doc/library/multiprocessing.rst:571 msgid "" "For an example of the usage of queues for interprocess communication see :" "ref:`multiprocessing-examples`." msgstr "" +"Pour un exemple d'utilisation de queues pour de la communication entre les " +"processus, voir :ref:`multiprocessing-examples`." #: ../Doc/library/multiprocessing.rst:577 msgid "" @@ -583,6 +742,9 @@ msgid "" "used for receiving messages and ``conn2`` can only be used for sending " "messages." msgstr "" +"Si *duplex* vaut ``True`` (par défaut), alors le tube est bidirectionnel. Si " +"*duplex* vaut ``False`` il est unidirectionnel : ``conn1`` ne peut être " +"utilisé que pour recevoir des messages et ``conn2`` que pour en envoyer." #: ../Doc/library/multiprocessing.rst:588 msgid "" @@ -590,6 +752,10 @@ msgid "" "semaphores. When a process first puts an item on the queue a feeder thread " "is started which transfers objects from a buffer into the pipe." msgstr "" +"Renvoie une queue partagée entre les processus utilisant un tube et quelques " +"verrous/sémaphores. Quand un processus place initialement un élément sur la " +"queue, un fil d'exécution *feeder* est démarré pour transférer les objets du " +"tampon vers le tube." #: ../Doc/library/multiprocessing.rst:592 msgid "" @@ -609,24 +775,35 @@ msgid "" "Return the approximate size of the queue. Because of multithreading/" "multiprocessing semantics, this number is not reliable." msgstr "" +"Renvoie la taille approximative de la queue. Ce nombre n'est pas fiable en " +"raison des problématiques de *multithreading* et *multiprocessing*." #: ../Doc/library/multiprocessing.rst:603 msgid "" "Note that this may raise :exc:`NotImplementedError` on Unix platforms like " "Mac OS X where ``sem_getvalue()`` is not implemented." msgstr "" +"Notez que cela peut lever une :exc:`NotImplementedError` sous les " +"plateformes Unix telles que Mac OS X où ``sem_getvalue()`` n'est pas " +"implémentée." #: ../Doc/library/multiprocessing.rst:608 msgid "" "Return ``True`` if the queue is empty, ``False`` otherwise. Because of " "multithreading/multiprocessing semantics, this is not reliable." msgstr "" +"Renvoie ``True`` si la queue est vide, ``False`` sinon. Cette valeur n'est " +"pas fiable en raison des problématiques de *multithreading* et " +"*multiprocessing*." #: ../Doc/library/multiprocessing.rst:613 msgid "" "Return ``True`` if the queue is full, ``False`` otherwise. Because of " "multithreading/multiprocessing semantics, this is not reliable." msgstr "" +"Renvoie ``True`` si la queue est pleine, ``False`` sinon. Cette valeur n'est " +"pas fiable en raison des problématiques de *multithreading* et " +"*multiprocessing*." #: ../Doc/library/multiprocessing.rst:618 msgid "" @@ -641,7 +818,7 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:629 msgid "Equivalent to ``put(obj, False)``." -msgstr "" +msgstr "Équivalent à ``put(obj, False)``." #: ../Doc/library/multiprocessing.rst:633 msgid "" @@ -671,6 +848,10 @@ msgid "" "data to the pipe. This is called automatically when the queue is garbage " "collected." msgstr "" +"Indique que plus aucune donnée ne peut être placée sur la queue par le " +"processus courant. Le fil d'exécution en arrière-plan se terminera quand il " +"aura transféré toutes les données du tampon vers le tube. Elle est appelée " +"automatiquement quand la queue est collectée par le ramasse-miettes." #: ../Doc/library/multiprocessing.rst:658 msgid "" @@ -678,6 +859,10 @@ msgid "" "been called. It blocks until the background thread exits, ensuring that all " "data in the buffer has been flushed to the pipe." msgstr "" +"Attend le fil d'exécution d'arrière-plan. Elle peut seulement être utilisée " +"une fois que :meth:`close` a été appelée. Elle bloque jusqu'à ce que le fil " +"d'arrière-plan se termine, assurant que toutes les données du tampon ont été " +"transmises au tube." #: ../Doc/library/multiprocessing.rst:662 msgid "" @@ -685,6 +870,10 @@ msgid "" "attempt to join the queue's background thread. The process can call :meth:" "`cancel_join_thread` to make :meth:`join_thread` do nothing." msgstr "" +"Par défaut si un processus n'est pas le créateur de la queue alors à la " +"fermeture elle essaiera d'attendre le fil d'exécution d'arrière-plan de la " +"queue. Le processus peut appeler :meth:`cancel_join_thread` pour que :meth:" +"`join_thread` ne fasse rien." #: ../Doc/library/multiprocessing.rst:668 msgid "" @@ -692,6 +881,9 @@ msgid "" "background thread from being joined automatically when the process exits -- " "see :meth:`join_thread`." msgstr "" +"Empêche :meth:`join_thread` de bloquer. En particulier, cela empêche le fil " +"d'arrière-plan d'être attendu automatiquement quand le processus se ferme -- " +"voir :meth:`join_thread`." #: ../Doc/library/multiprocessing.rst:672 msgid "" @@ -701,6 +893,12 @@ msgid "" "exit immediately without waiting to flush enqueued data to the underlying " "pipe, and you don't care about lost data." msgstr "" +"Un meilleur nom pour cette méthode pourrait être " +"``allow_exit_without_flush()``. Cela peut provoquer des pertes de données " +"placées dans la queue, et vous ne devriez certainement pas avoir besoin de " +"l'utiliser. Elle n'est là que si vous souhaitez terminer immédiatement le " +"processus sans transférer les données du tampon, et que vous ne vous " +"inquiétez pas de perdre des données." #: ../Doc/library/multiprocessing.rst:681 msgid "" @@ -711,6 +909,12 @@ msgid "" "information. The same holds true for any of the specialized queue types " "listed below." msgstr "" +"Le fonctionnement de cette classe requiert une implémentation de sémaphore " +"partagé sur le système d'exploitation hôte. Sans cela, la fonctionnalité " +"sera désactivée et la tentative d'instancier une :class:`Queue` lèvera une :" +"exc:`ImportError`. Voir :issue:`3770` pour plus d'informations. Cette " +"remarque reste valable pour les autres types de queues spécialisées définies " +"par la suite." #: ../Doc/library/multiprocessing.rst:691 msgid "" @@ -720,7 +924,7 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:695 msgid "Return ``True`` if the queue is empty, ``False`` otherwise." -msgstr "" +msgstr "Renvoie ``True`` si la queue est vide, ``False`` sinon." #: ../Doc/library/multiprocessing.rst:699 msgid "Remove and return an item from the queue." @@ -728,7 +932,7 @@ msgstr "Supprime et donne un élément de la queue." #: ../Doc/library/multiprocessing.rst:703 msgid "Put *item* into the queue." -msgstr "" +msgstr "Place *item* dans la queue." #: ../Doc/library/multiprocessing.rst:708 msgid "" @@ -762,6 +966,8 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:728 msgid "Block until all items in the queue have been gotten and processed." msgstr "" +"Bloque jusqu'à ce que tous les éléments de la queue aient été récupérés et " +"traités." #: ../Doc/library/multiprocessing.rst:730 msgid "" @@ -774,17 +980,19 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:738 msgid "Miscellaneous" -msgstr "" +msgstr "Divers" #: ../Doc/library/multiprocessing.rst:742 msgid "Return list of all live children of the current process." -msgstr "" +msgstr "Renvoie la liste de tous les enfants vivants du processus courant." #: ../Doc/library/multiprocessing.rst:744 msgid "" "Calling this has the side effect of \"joining\" any processes which have " "already finished." msgstr "" +"Appeler cette méthode provoque l'effet de bord d'attendre tout processus qui " +"n'a pas encore terminé." #: ../Doc/library/multiprocessing.rst:749 msgid "" @@ -795,11 +1003,11 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:754 msgid "" "Return the :class:`Process` object corresponding to the current process." -msgstr "" +msgstr "Renvoie l'objet :class:`Process` correspondant au processus courant." #: ../Doc/library/multiprocessing.rst:756 msgid "An analogue of :func:`threading.current_thread`." -msgstr "" +msgstr "Un analogue à :func:`threading.current_thread`." #: ../Doc/library/multiprocessing.rst:760 msgid "" @@ -807,18 +1015,25 @@ msgid "" "frozen to produce a Windows executable. (Has been tested with **py2exe**, " "**PyInstaller** and **cx_Freeze**.)" msgstr "" +"Ajoute le support des programmes utilisant :mod:`multiprocessing` qui ont " +"été gelés pour produire un exécutable Windows. (Testé avec **py2exe**, " +"**PyInstaller** et **cx_Freeze**.)" #: ../Doc/library/multiprocessing.rst:764 msgid "" "One needs to call this function straight after the ``if __name__ == " "'__main__'`` line of the main module. For example::" msgstr "" +"Cette fonction doit être appelée juste après la ligne ``if __name__ == " +"'__main__'`` du module principal. Par exemple : ::" #: ../Doc/library/multiprocessing.rst:776 msgid "" "If the ``freeze_support()`` line is omitted then trying to run the frozen " "executable will raise :exc:`RuntimeError`." msgstr "" +"Si la ligne ``freeze_support()`` est omise, alors tenter de lancer " +"l'exécutable gelé lèvera une :exc:`RuntimeError`." #: ../Doc/library/multiprocessing.rst:779 msgid "" @@ -827,6 +1042,10 @@ msgid "" "by the Python interpreter on Windows (the program has not been frozen), then " "``freeze_support()`` has no effect." msgstr "" +"Appeler ``freeze_support()`` n'a pas d'effet quand elle est invoquée sur un " +"système d'exploitation autre que Windows. De plus, si le module est lancé " +"normalement par l'interpréteur Python sous Windows (le programme n'a pas été " +"gelé), alors ``freeze_support()`` n'a pas d'effet." #: ../Doc/library/multiprocessing.rst:786 msgid "" @@ -834,6 +1053,9 @@ msgid "" "process. (By default :data:`sys.executable` is used). Embedders will " "probably need to do some thing like ::" msgstr "" +"Définit le chemin de l'interpréteur Python à utiliser pour démarrer un " +"processus fils. (Par défaut :data:`sys.executable` est utilisé). Les " +"intégrateurs devront probablement faire quelque chose comme : ::" #: ../Doc/library/multiprocessing.rst:792 msgid "before they can create child processes. (Windows only)" @@ -846,16 +1068,23 @@ msgid "" "func:`threading.setprofile`, :class:`threading.Timer`, or :class:`threading." "local`." msgstr "" +":mod:`multiprocessing` ne contient pas d'analogues à :func:`threading." +"active_count`, :func:`threading.enumerate`, :func:`threading.settrace`, :" +"func:`threading.setprofile`, :class:`threading.Timer`, ou :class:`threading." +"local`." #: ../Doc/library/multiprocessing.rst:804 msgid "Connection Objects" -msgstr "" +msgstr "Objets de connexions" #: ../Doc/library/multiprocessing.rst:806 msgid "" "Connection objects allow the sending and receiving of picklable objects or " "strings. They can be thought of as message oriented connected sockets." msgstr "" +"Les objets de connexion autorisent l'envoi et la réception d'objets " +"sérialisables ou de chaînes de caractères. Ils peuvent être vus comme des " +"interfaces de connexion (*sockets*) connectées orientées messages." #: ../Doc/library/multiprocessing.rst:809 msgid "" @@ -868,6 +1097,8 @@ msgid "" "Send an object to the other end of the connection which should be read " "using :meth:`recv`." msgstr "" +"Envoie un objet sur l'autre bout de la connexion, qui devra être lu avec :" +"meth:`recv`." #: ../Doc/library/multiprocessing.rst:819 msgid "" @@ -885,18 +1116,22 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:831 msgid "Return the file descriptor or handle used by the connection." msgstr "" +"Renvoie le descripteur de fichier ou identifiant utilisé par la connexion." #: ../Doc/library/multiprocessing.rst:835 msgid "Close the connection." -msgstr "" +msgstr "Ferme la connexion." #: ../Doc/library/multiprocessing.rst:837 msgid "This is called automatically when the connection is garbage collected." msgstr "" +"Elle est appelée automatiquement quand la connexion est collectée par le " +"ramasse-miettes." #: ../Doc/library/multiprocessing.rst:841 msgid "Return whether there is any data available to be read." msgstr "" +"Renvoie vrai ou faux selon si des données sont disponibles à la lecture." #: ../Doc/library/multiprocessing.rst:843 msgid "" @@ -904,6 +1139,9 @@ msgid "" "is a number then this specifies the maximum time in seconds to block. If " "*timeout* is ``None`` then an infinite timeout is used." msgstr "" +"Si *timeout* n'est pas spécifié la méthode renverra immédiatement. Si " +"*timeout* est un nombre alors il spécifie le temps maximum de blocage en " +"secondes. Si *timeout* est ``None``, un temps d'attente infini est utilisé." #: ../Doc/library/multiprocessing.rst:849 msgid "" @@ -926,6 +1164,10 @@ msgid "" "exc:`EOFError` if there is nothing left to receive and the other end has " "closed." msgstr "" +"Renvoie un message complet de données binaires envoyées depuis l'autre bout " +"de la connexion comme une chaîne de caractères. Bloque jusqu'à ce qu'il y " +"ait quelque chose à recevoir. Lève une :exc:`EOFError` s'il ne reste rien à " +"recevoir et que l'autre côté de la connexion a été fermé." #: ../Doc/library/multiprocessing.rst:864 msgid "" @@ -940,6 +1182,11 @@ msgid "" "until there is something to receive. Raises :exc:`EOFError` if there is " "nothing left to receive and the other end was closed." msgstr "" +"Lit et stocke dans *buffer* un message complet de données binaires envoyées " +"depuis l'autre bout de la connexion et renvoie le nombre d'octets du " +"message. Bloque jusqu'à ce qu'il y ait quelque chose à recevoir. Lève une :" +"exc:`EOFError` s'il ne reste rien à recevoir et que l'autre côté de la " +"connexion a été fermé." #: ../Doc/library/multiprocessing.rst:876 msgid "" @@ -955,6 +1202,9 @@ msgid "" "and the complete message is available as ``e.args[0]`` where ``e`` is the " "exception instance." msgstr "" +"Si le tampon est trop petit une exception :exc:`BufferTooShort` est levée et " +"le message complet est accessible via ``e.args[0]`` où ``e`` est l'instance " +"de l'exception." #: ../Doc/library/multiprocessing.rst:886 msgid "For example:" @@ -966,6 +1216,9 @@ msgid "" "receives, which can be a security risk unless you can trust the process " "which sent the message." msgstr "" +"La méthode :meth:`Connection.recv` désérialise automatiquement les données " +"qu'elle reçoit, ce qui peut être un risque de sécurité à moins que vous ne " +"fassiez réellement confiance au processus émetteur du message." #: ../Doc/library/multiprocessing.rst:914 msgid "" @@ -974,6 +1227,10 @@ msgid "" "methods after performing some sort of authentication. See :ref:" "`multiprocessing-auth-keys`." msgstr "" +"Par conséquent, à moins que l'objet de connexion soit instancié par :func:" +"`Pipe`, vous ne devriez uniquement utiliser les méthodes :meth:`~Connection." +"recv` et :meth:`~Connection.send` après avoir effectué une quelconque forme " +"d'authentification. Voir :ref:`multiprocessing-auth-keys`." #: ../Doc/library/multiprocessing.rst:921 msgid "" @@ -981,10 +1238,13 @@ msgid "" "the data in the pipe is likely to become corrupted, because it may become " "impossible to be sure where the message boundaries lie." msgstr "" +"Si un processus est tué pendant qu'il essaye de lire ou écrire sur le tube, " +"alors les données du tube ont des chances d'être corrompues, parce qu'il " +"devient impossible d'être sûr d'où se trouvent les bornes du message." #: ../Doc/library/multiprocessing.rst:927 msgid "Synchronization primitives" -msgstr "" +msgstr "Primitives de synchronisation" #: ../Doc/library/multiprocessing.rst:929 msgid "" @@ -992,18 +1252,25 @@ msgid "" "program as they are in a multithreaded program. See the documentation for :" "mod:`threading` module." msgstr "" +"Généralement les primitives de synchronisation ne sont pas nécessaire dans " +"un programme multi-processus comme elles le sont dans un programme multi-" +"fils d'exécution. Voir la documentation du module :mod:`threading`." #: ../Doc/library/multiprocessing.rst:933 msgid "" "Note that one can also create synchronization primitives by using a manager " "object -- see :ref:`multiprocessing-managers`." msgstr "" +"Notez que vous pouvez aussi créer des primitives de synchronisation en " +"utilisant un objet gestionnaire -- voir :ref:`multiprocessing-managers`." #: ../Doc/library/multiprocessing.rst:938 msgid "" "A bounded semaphore object: a close analog of :class:`threading." "BoundedSemaphore`." msgstr "" +"Un objet sémaphore lié : un analogue proche de :class:`threading." +"BoundedSemaphore`." #: ../Doc/library/multiprocessing.rst:941 #: ../Doc/library/multiprocessing.rst:1081 @@ -1018,6 +1285,8 @@ msgid "" "On Mac OS X, this is indistinguishable from :class:`Semaphore` because " "``sem_getvalue()`` is not implemented on that platform." msgstr "" +"Sur Mac OS X, elle n'est pas distinguable de la classe :class:`Semaphore` " +"parce que ``sem_getvalue()`` n'est pas implémentée sur cette plateforme." #: ../Doc/library/multiprocessing.rst:951 msgid "A condition variable: a clone of :class:`threading.Condition`." @@ -1028,6 +1297,8 @@ msgid "" "If *lock* is specified then it should be a :class:`Lock` or :class:`RLock` " "object from :mod:`multiprocessing`." msgstr "" +"Si *lock* est spécifié il doit être un objet :class:`Lock` ou :class:`RLock` " +"du module :mod:`multiprocessing`." #: ../Doc/library/multiprocessing.rst:958 msgid "" @@ -1050,6 +1321,14 @@ msgid "" "`multiprocessing.Lock` as it applies to either processes or threads, except " "as noted." msgstr "" +"Un verrou non récursif : un analogue proche de :class:`threading.Lock`. Une " +"fois que le processus ou le fil d'exécution a acquis un verrou, les " +"tentatives suivantes d'acquisition depuis n'importe quel processus ou fil " +"d'exécution bloqueront jusqu'à ce qu'il soit libéré ; n'importe quel " +"processus ou fil peut le libérer. Les concepts et comportements de :class:" +"`threading.Lock` qui s'appliquent aux fils d'exécution sont répliqués ici " +"dans :class:`multiprocessing.Lock` et s'appliquent aux processus et aux fils " +"d'exécution, à l'exception de ce qui est indiqué." #: ../Doc/library/multiprocessing.rst:977 msgid "" @@ -1057,17 +1336,22 @@ msgid "" "instance of ``multiprocessing.synchronize.Lock`` initialized with a default " "context." msgstr "" +"Notez que :class:`Lock` est en fait une fonction *factory* qui renvoie une " +"instance de ``multiprocessing.synchronize.Lock`` initialisée avec un " +"contexte par défaut." #: ../Doc/library/multiprocessing.rst:981 msgid "" ":class:`Lock` supports the :term:`context manager` protocol and thus may be " "used in :keyword:`with` statements." msgstr "" +":class:`Lock` supporte le protocole :term:`context manager` et peut ainsi " +"être utilisé avec une instruction :keyword:`with`." #: ../Doc/library/multiprocessing.rst:986 #: ../Doc/library/multiprocessing.rst:1035 msgid "Acquire a lock, blocking or non-blocking." -msgstr "" +msgstr "Acquiert un verrou, bloquant ou non bloquant." #: ../Doc/library/multiprocessing.rst:988 msgid "" @@ -1076,6 +1360,10 @@ msgid "" "return ``True``. Note that the name of this first argument differs from " "that in :meth:`threading.Lock.acquire`." msgstr "" +"Avec l'argument *block* à ``True`` (par défaut), l'appel de méthode bloquera " +"jusqu'à ce que le verrou soit dans déverrouillé, puis le verrouillera avant " +"de renvoyer ``True``. Notez que le nom de ce premier argument diffère de " +"celui de :meth:`threading.Lock.acquire`." #: ../Doc/library/multiprocessing.rst:993 msgid "" @@ -1083,6 +1371,9 @@ msgid "" "If the lock is currently in a locked state, return ``False``; otherwise set " "the lock to a locked state and return ``True``." msgstr "" +"Avec l'argument *block* à ``False``, l'appel de méthode ne bloque pas. Si le " +"verrou est actuellement verrouillé, renvoie ``False`` ; autrement verrouille " +"le verrou et renvoie ``True``." #: ../Doc/library/multiprocessing.rst:997 msgid "" @@ -1103,12 +1394,18 @@ msgid "" "Release a lock. This can be called from any process or thread, not only the " "process or thread which originally acquired the lock." msgstr "" +"Libère un verrou. Elle peut être appelée depuis n'importe quel processus ou " +"fil d'exécution, pas uniquement le processus ou le fil qui a acquis le " +"verrou à l'origine." #: ../Doc/library/multiprocessing.rst:1013 msgid "" "Behavior is the same as in :meth:`threading.Lock.release` except that when " "invoked on an unlocked lock, a :exc:`ValueError` is raised." msgstr "" +"Le comportement est le même que :meth:`threading.Lock.release` excepté que " +"lorsque la méthode est appelée sur un verrou déverrouillé, une :exc:" +"`ValueError` est levée." #: ../Doc/library/multiprocessing.rst:1019 msgid "" @@ -1118,6 +1415,11 @@ msgid "" "thread may acquire it again without blocking; that process or thread must " "release it once for each time it has been acquired." msgstr "" +"Un objet verrou récursif : un analogue proche de :class:`threading.RLock`. " +"Un verrou récursif doit être libéré par le processus ou le fil d'exécution " +"qui l'a acquis. Quand un processus ou un fil acquiert un verrou récursif, le " +"même processus/fil peut l'acquérir à nouveau sans bloquer ; le processus/fil " +"doit le libérer autant de fois qu'il l'acquiert." #: ../Doc/library/multiprocessing.rst:1025 msgid "" @@ -1125,12 +1427,17 @@ msgid "" "instance of ``multiprocessing.synchronize.RLock`` initialized with a default " "context." msgstr "" +"Notez que :class:`RLock` est en fait une fonction *factory* qui renvoie une " +"instance de ``multiprocessing.synchronize.RLock`` initialisée avec un " +"contexte par défaut." #: ../Doc/library/multiprocessing.rst:1029 msgid "" ":class:`RLock` supports the :term:`context manager` protocol and thus may be " "used in :keyword:`with` statements." msgstr "" +":class:`RLock` supporte le protocole :term:`context manager` et peut ainsi " +"être utilisée avec une instruction :keyword:`with`." #: ../Doc/library/multiprocessing.rst:1037 msgid "" @@ -1144,6 +1451,14 @@ msgid "" "of :meth:`threading.RLock.acquire`, starting with the name of the argument " "itself." msgstr "" +"Quand invoqué avec l'argument *block* à ``True``, bloque jusqu'à ce que le " +"verrou soit déverrouillé (n'appartenant à aucun processus ou fil " +"d'exécution) sauf s'il appartient déjà au processus ou fil d'exécution " +"courant. Le processus ou fil d'exécution courant prend la possession du " +"verrou (s'il ne l'a pas déjà) et incrémente d'un le niveau de récursion du " +"verrou, renvoyant ainsi ``True``. Notez qu'il y a plusieurs différences dans " +"le comportement de ce premier argument comparé à l'implémentation de :meth:" +"`threading.RLock.acquire`, à commencer par le nom de l'argument lui-même." #: ../Doc/library/multiprocessing.rst:1047 msgid "" @@ -1155,6 +1470,12 @@ msgid "" "thread takes ownership and the recursion level is incremented, resulting in " "a return value of ``True``." msgstr "" +"Quand invoqué avec l'argument *block* à ``False``, ne bloque pas. Si le " +"verrou est déjà acquis (et possédé) par un autre processus ou fil " +"d'exécution, le processus/fil courant n'en prend pas la possession et le " +"niveau de récursion n'est pas incrémenté, résultant en une valeur de retour " +"à ``False``. Si le verrou est déverrouillé, le processus/fil courant en " +"prend possession et incrémente son niveau de récursion, renvoyant ``True``." #: ../Doc/library/multiprocessing.rst:1055 msgid "" @@ -1172,6 +1493,13 @@ msgid "" "after the decrement the recursion level is still nonzero, the lock remains " "locked and owned by the calling process or thread." msgstr "" +"Libère un verrou, décrémentant son niveau de récursion. Si après la " +"décrémentation le niveau de récursion est zéro, réinitialise le verrou à un " +"état déverrouillé (n'appartenant à aucun processus ou fil d'exécution) et si " +"des processus/fils attendent que le verrou se déverrouillé, autorise un seul " +"d'entre-eux à continuer. Si après cette décrémentation le niveau de " +"récursion est toujours strictement positif, le verrou reste verrouillé et " +"propriété du processus/fil appelant." #: ../Doc/library/multiprocessing.rst:1070 msgid "" @@ -1181,10 +1509,15 @@ msgid "" "state. Note that the type of exception raised in this situation differs " "from the implemented behavior in :meth:`threading.RLock.release`." msgstr "" +"N'appelez cette méthode que si le processus ou fil d'exécution appelant est " +"propriétaire du verrou. Une :exc:`AssertionError` est levée si cette méthode " +"est appelée par un processus/fil autre que le propriétaire ou si le verrou " +"n'est pas verrouillé (possédé). Notez que le type d'exception levé dans " +"cette situation diffère du comportement de :meth:`threading.RLock.release`." #: ../Doc/library/multiprocessing.rst:1079 msgid "A semaphore object: a close analog of :class:`threading.Semaphore`." -msgstr "" +msgstr "Un objet sémaphore, proche analogue de :class:`threading.Semaphore`." #: ../Doc/library/multiprocessing.rst:1087 msgid "" @@ -1202,6 +1535,9 @@ msgid "" "On Mac OS X, ``sem_timedwait`` is unsupported, so calling ``acquire()`` with " "a timeout will emulate that function's behavior using a sleeping loop." msgstr "" +"Sous Mac OS X, ``sem_timedwait`` n'est pas supporté, donc appeler " +"``acquire()`` avec un temps d'exécution limité émulera le comportement de " +"cette fonction en utilisant une boucle d'attente." #: ../Doc/library/multiprocessing.rst:1100 msgid "" @@ -1211,12 +1547,19 @@ msgid "" "acquire` or :meth:`Condition.wait` then the call will be immediately " "interrupted and :exc:`KeyboardInterrupt` will be raised." msgstr "" +"Si le signal *SIGINT* généré par un :kbd:`Ctrl-C` survient pendant que le " +"fil d'exécution principal est bloqué par un appel à :meth:`BoundedSemaphore." +"acquire`, :meth:`Lock.acquire`, :meth:`RLock.acquire`, :meth:`Semaphore." +"acquire`, :meth:`Condition.acquire` ou :meth:`Condition.wait`, l'appel sera " +"immédiatement interrompu et une :exc:`KeyboardInterrupt` sera levée." #: ../Doc/library/multiprocessing.rst:1106 msgid "" "This differs from the behaviour of :mod:`threading` where SIGINT will be " "ignored while the equivalent blocking calls are in progress." msgstr "" +"Cela diffère du comportement de :mod:`threading` où le *SIGINT* est ignoré " +"tant que les appels bloquants sont en cours." #: ../Doc/library/multiprocessing.rst:1111 msgid "" @@ -1226,16 +1569,23 @@ msgid "" "import it will result in an :exc:`ImportError`. See :issue:`3770` for " "additional information." msgstr "" +"Certaines des fonctionnalités de ce paquet requièrent une implémentation " +"fonctionnelle de sémaphores partagés sur le système hôte. Sans cela, le " +"module :mod:`multiprocessing.synchronize` sera désactivé, et les tentatives " +"de l'importer lèveront une :exc:`ImportError`. Voir :issue:`3770` pour plus " +"d'informations." #: ../Doc/library/multiprocessing.rst:1119 msgid "Shared :mod:`ctypes` Objects" -msgstr "" +msgstr "Objets :mod:`ctypes` partagés" #: ../Doc/library/multiprocessing.rst:1121 msgid "" "It is possible to create shared objects using shared memory which can be " "inherited by child processes." msgstr "" +"Il est possible de créer des objets partagés utilisant une mémoire partagée " +"pouvant être héritée par les processus enfants." #: ../Doc/library/multiprocessing.rst:1126 msgid "" @@ -1250,6 +1600,9 @@ msgid "" "a ctypes type or a one character typecode of the kind used by the :mod:" "`array` module. *\\*args* is passed on to the constructor for the type." msgstr "" +"*typecode_or_type* détermine le type de l'objet renvoyé : il s'agit soit " +"d'un type *ctype* soit d'un caractère *typecode* tel qu'utilisé par le " +"module :mod:`array`. *\\*args* est passé au constructeur de ce type." #: ../Doc/library/multiprocessing.rst:1133 msgid "" @@ -1260,6 +1613,12 @@ msgid "" "be automatically protected by a lock, so it will not necessarily be " "\"process-safe\"." msgstr "" +"Si *lock* vaut ``True`` (par défaut), alors un nouveau verrou récursif est " +"créé pour synchroniser l'accès à la valeur. Si *lock* est un objet :class:" +"`Lock` ou :class:`RLock` alors il sera utilisé pour synchroniser l'accès à " +"la valeur. Si *lock* vaut ``False``, l'accès à l'objet renvoyé ne sera pas " +"automatiquement protégé par un verrou, donc il ne sera pas forcément " +"« *process-safe* »" #: ../Doc/library/multiprocessing.rst:1140 msgid "" @@ -1267,24 +1626,32 @@ msgid "" "if, for instance, you want to atomically increment a shared value it is " "insufficient to just do ::" msgstr "" +"Les opérations telles que ``+=`` qui impliquent une lecture et une écriture " +"ne sont pas atomique. Ainsi si vous souhaitez par exemple réaliser une " +"incrémentation atomique sur une valeur partagée, vous ne pouvez pas " +"simplement faire : ::" #: ../Doc/library/multiprocessing.rst:1146 msgid "" "Assuming the associated lock is recursive (which it is by default) you can " "instead do ::" msgstr "" +"En supposant que le verrou associé est récursif (ce qui est le cas par " +"défaut), vous pouvez à la place faire : ::" #: ../Doc/library/multiprocessing.rst:1152 #: ../Doc/library/multiprocessing.rst:1242 #: ../Doc/library/multiprocessing.rst:1257 msgid "Note that *lock* is a keyword-only argument." -msgstr "" +msgstr "Notez que *lock* est un argument *keyword-only*." #: ../Doc/library/multiprocessing.rst:1156 msgid "" "Return a ctypes array allocated from shared memory. By default the return " "value is actually a synchronized wrapper for the array." msgstr "" +"Renvoie un tableau *ctypes* alloué depuis la mémoire partagée. Par défaut la " +"valeur de retour est en fait un *wrapper* synchronisé autour du tableau." #: ../Doc/library/multiprocessing.rst:1159 msgid "" @@ -1295,6 +1662,12 @@ msgid "" "zeroed. Otherwise, *size_or_initializer* is a sequence which is used to " "initialize the array and whose length determines the length of the array." msgstr "" +"*typecode_or_type* détermine le type des éléments du tableau renvoyé : il " +"s'agit soit d'un type *ctype* soit d'un caractère *typecode* tel qu'utilisé " +"par le module :mod:`array`. Si *size_or_initialize* est un entier, alors il " +"détermine la taille du tableau, et le tableau sera initialisé avec des " +"zéros. Autrement, *size*or_initializer* est une séquence qui sera utilisée " +"pour initialiser le tableau et dont la taille détermine celle du tableau." #: ../Doc/library/multiprocessing.rst:1166 msgid "" @@ -1305,20 +1678,29 @@ msgid "" "automatically protected by a lock, so it will not necessarily be \"process-" "safe\"." msgstr "" +"Si *lock* vaut ``True`` (par défaut), alors un nouveau verrou est créé pour " +"synchroniser l'accès à la valeur. Si *lock* est un objet :class:`Lock` ou :" +"class:`RLock` alors il sera utilisé pour synchroniser l'accès à la valeur. " +"Si *lock* vaut ``False``, l'accès à l'objet renvoyé ne sera pas " +"automatiquement protégé par un verrou, donc il ne sera pas forcément " +"« *process-safe* »" #: ../Doc/library/multiprocessing.rst:1173 msgid "Note that *lock* is a keyword only argument." -msgstr "" +msgstr "Notez que *lock* est un argument *keyword-only*." #: ../Doc/library/multiprocessing.rst:1175 msgid "" "Note that an array of :data:`ctypes.c_char` has *value* and *raw* attributes " "which allow one to use it to store and retrieve strings." msgstr "" +"Notez qu'un tableau de :data:`ctypes.c_char` a ses attributs *value* et " +"*raw* qui permettent de l'utiliser pour stocker et récupérer des chaînes de " +"caractères." #: ../Doc/library/multiprocessing.rst:1180 msgid "The :mod:`multiprocessing.sharedctypes` module" -msgstr "" +msgstr "Le module :mod:`multiprocessing.sharedctypes`" #: ../Doc/library/multiprocessing.rst:1185 msgid "" @@ -1326,6 +1708,9 @@ msgid "" "allocating :mod:`ctypes` objects from shared memory which can be inherited " "by child processes." msgstr "" +"Le module :mod:`multiprocessing.sharedctypes` fournit des fonctions pour " +"allouer des objets :mod:`ctypes` depuis la mémoire partagée, qui peuvent " +"être hérités par les processus fils." #: ../Doc/library/multiprocessing.rst:1191 msgid "" @@ -1335,10 +1720,15 @@ msgid "" "second process and trying to dereference the pointer from the second process " "may cause a crash." msgstr "" +"Bien qu'il soit possible de stocker un pointeur dans une mémoire partagée, " +"souvenez-vous qu'il référencera un emplacement dans l'espace d'adressage " +"d'un processus particulier. Ainsi, le pointeur risque d'être invalide dans " +"le contexte d'un second processus et déréférencer le pointeur depuis ce " +"second processus pourrait causer un crash." #: ../Doc/library/multiprocessing.rst:1199 msgid "Return a ctypes array allocated from shared memory." -msgstr "" +msgstr "Renvoie un tableau *ctypes* alloué depuis la mémoire partagée." #: ../Doc/library/multiprocessing.rst:1201 msgid "" @@ -1349,6 +1739,13 @@ msgid "" "zeroed. Otherwise *size_or_initializer* is a sequence which is used to " "initialize the array and whose length determines the length of the array." msgstr "" +"*typecode_or_type* détermine le type des éléments du tableau renvoyé : il " +"s'agit soit d'un type *ctype* soit d'un caractère codant le type des " +"éléments du tableau (*typecode*) tel qu'utilisé par le module :mod:`array`. " +"Si *size_or_initialize* est un entier, alors il détermine la taille du " +"tableau, et le tableau sera initialisé avec des zéros. Autrement, " +"*size*or_initializer* est une séquence qui sera utilisée pour initialiser le " +"tableau et dont la taille détermine celle du tableau." #: ../Doc/library/multiprocessing.rst:1208 msgid "" @@ -1356,10 +1753,13 @@ msgid "" "func:`Array` instead to make sure that access is automatically synchronized " "using a lock." msgstr "" +"Notez que définir ou récupérer un élément est potentiellement non atomique " +"-- utilisez plutôt :func:`Array` pour vous assurer de synchroniser " +"automatiquement avec un verrou." #: ../Doc/library/multiprocessing.rst:1214 msgid "Return a ctypes object allocated from shared memory." -msgstr "" +msgstr "Renvoie un objet *ctypes* alloué depuis la mémoire partagée." #: ../Doc/library/multiprocessing.rst:1220 msgid "" @@ -1367,6 +1767,9 @@ msgid "" "func:`Value` instead to make sure that access is automatically synchronized " "using a lock." msgstr "" +"Notez que définir ou récupérer un élément est potentiellement non atomique " +"-- utilisez plutôt :func:`Value` pour vous assurer de synchroniser " +"automatiquement avec un verrou." #: ../Doc/library/multiprocessing.rst:1224 msgid "" @@ -1374,6 +1777,9 @@ msgid "" "attributes which allow one to use it to store and retrieve strings -- see " "documentation for :mod:`ctypes`." msgstr "" +"Notez qu'un tableau de :data:`ctypes.c_char` a ses attributs *value* et " +"*raw* qui permettent de l'utiliser pour stocker et récupérer des chaînes de " +"caractères -- voir la documentation de :mod:`ctypes`." #: ../Doc/library/multiprocessing.rst:1230 msgid "" @@ -1381,6 +1787,9 @@ msgid "" "process-safe synchronization wrapper may be returned instead of a raw ctypes " "array." msgstr "" +"Identique à :func:`RawArray` à l'exception que suivant la valeur de *lock* " +"un *wrapper* de synchronisation *process-safe* pourra être renvoyé à la " +"place d'un tableau *ctypes* brut." #: ../Doc/library/multiprocessing.rst:1234 #: ../Doc/library/multiprocessing.rst:1250 @@ -1392,6 +1801,12 @@ msgid "" "returned object will not be automatically protected by a lock, so it will " "not necessarily be \"process-safe\"." msgstr "" +"Si *lock* vaut ``True`` (par défaut), alors un nouveau verrou est créé pour " +"synchroniser l'accès à la valeur. Si *lock* est un objet :class:" +"`~multiprocessing.Lock` ou :class:`~multiprocessing.RLock` alors il sera " +"utilisé pour synchroniser l'accès à la valeur. Si *lock* vaut ``False``, " +"l'accès à l'objet renvoyé ne sera pas automatiquement protégé par un verrou, " +"donc il ne sera pas forcément « *process-safe* »" #: ../Doc/library/multiprocessing.rst:1246 msgid "" @@ -1399,12 +1814,17 @@ msgid "" "process-safe synchronization wrapper may be returned instead of a raw ctypes " "object." msgstr "" +"Identique à :func:`RawValue` à l'exception que suivant la valeur de *lock* " +"un *wrapper* de synchronisation *process-safe* pourra être renvoyé à la " +"place d'un objet *ctypes* brut." #: ../Doc/library/multiprocessing.rst:1261 msgid "" "Return a ctypes object allocated from shared memory which is a copy of the " "ctypes object *obj*." msgstr "" +"Renvoie un objet *ctypes* alloué depuis la mémoire partagée, qui est une " +"copie de l'objet *ctypes* *obj*." #: ../Doc/library/multiprocessing.rst:1266 msgid "" @@ -1412,6 +1832,9 @@ msgid "" "to synchronize access. If *lock* is ``None`` (the default) then a :class:" "`multiprocessing.RLock` object is created automatically." msgstr "" +"Renvoie un *wrapper* *process-safe* autour de l'objet *ctypes* qui utilise " +"*lock* pour synchroniser l'accès. Si *lock* est ``None`` (par défaut), un " +"objet :class:`multiprocessing.RLock` est créé automatiquement." #: ../Doc/library/multiprocessing.rst:1270 msgid "" @@ -1419,12 +1842,17 @@ msgid "" "object it wraps: :meth:`get_obj` returns the wrapped object and :meth:" "`get_lock` returns the lock object used for synchronization." msgstr "" +"Un *wrapper* synchronisé aura deux méthodes en plus de celles de l'objet " +"qu'il enveloppe : :meth:`get_obj` renvoie l'objet *wrappé* et :meth:" +"`get_lock` renvoie le verrou utilisé pour la synchronisation." #: ../Doc/library/multiprocessing.rst:1274 msgid "" "Note that accessing the ctypes object through the wrapper can be a lot " "slower than accessing the raw ctypes object." msgstr "" +"Notez qu'accéder à l'objet *ctypes* à travers le *wrapper* peut s'avérer " +"beaucoup plus lent qu'accéder directement à l'objet *ctypes* brut." #: ../Doc/library/multiprocessing.rst:1278 msgid "" @@ -1432,6 +1860,10 @@ msgid "" "shared memory with the normal ctypes syntax. (In the table ``MyStruct`` is " "some subclass of :class:`ctypes.Structure`.)" msgstr "" +"Le tableau ci-dessous compare la syntaxe de création des objets *ctypes* " +"partagés depuis une mémoire partagée avec la syntaxe normale *ctypes*. (Dans " +"le tableau, ``MyStruct`` est une sous-classe quelconque de :class:`ctypes." +"Structure`.)" #: ../Doc/library/multiprocessing.rst:1283 msgid "ctypes" @@ -1439,11 +1871,11 @@ msgstr "ctypes" #: ../Doc/library/multiprocessing.rst:1283 msgid "sharedctypes using type" -msgstr "" +msgstr "*sharedctypes* utilisant un type" #: ../Doc/library/multiprocessing.rst:1283 msgid "sharedctypes using typecode" -msgstr "" +msgstr "*sharedctypes* utilisant un *typecode*" #: ../Doc/library/multiprocessing.rst:1285 msgid "c_double(2.4)" @@ -1494,14 +1926,16 @@ msgid "" "Below is an example where a number of ctypes objects are modified by a child " "process::" msgstr "" +"Ci-dessous un exemple où des objets *ctypes* sont modifiés par un processus " +"fils ::" #: ../Doc/library/multiprocessing.rst:1330 msgid "The results printed are ::" -msgstr "" +msgstr "Les résultats affichés sont ::" #: ../Doc/library/multiprocessing.rst:1343 msgid "Managers" -msgstr "" +msgstr "Gestionnaires" #: ../Doc/library/multiprocessing.rst:1345 msgid "" @@ -1517,6 +1951,11 @@ msgid "" "manager object corresponds to a spawned child process and has methods which " "will create shared objects and return corresponding proxies." msgstr "" +"Renvoie un objet :class:`~multiprocessing.managers.SyncManager` démarré qui " +"peut être utilisé pour partager des objets entre les processus. L'objet " +"gestionnaire renvoyé correspond à un processus enfant instancié et possède " +"des méthodes pour créer des objets partagés et renvoyer les mandataires " +"correspondants." #: ../Doc/library/multiprocessing.rst:1359 msgid "" @@ -1524,10 +1963,13 @@ msgid "" "their parent process exits. The manager classes are defined in the :mod:" "`multiprocessing.managers` module:" msgstr "" +"Les processus gestionnaires seront arrêtés dès qu'ils seront collectés par " +"le ramasse-miettes ou que leur processus parent se terminera. Les classes " +"gestionnaires sont définies dans le module :mod:`multiprocessing.managers` :" #: ../Doc/library/multiprocessing.rst:1365 msgid "Create a BaseManager object." -msgstr "" +msgstr "Crée un objet *BaseManager*." #: ../Doc/library/multiprocessing.rst:1367 msgid "" @@ -1535,12 +1977,18 @@ msgid "" "serve_forever()`` to ensure that the manager object refers to a started " "manager process." msgstr "" +"Une fois créé il faut appeler :meth:`start` ou ``get_server()." +"serve_forever()`` pour assurer que l'objet gestionnaire référence un " +"processus gestionnaire démarré." #: ../Doc/library/multiprocessing.rst:1370 msgid "" "*address* is the address on which the manager process listens for new " "connections. If *address* is ``None`` then an arbitrary one is chosen." msgstr "" +"*address* est l'adresse sur laquelle le processus gestionnaire écoute pour " +"de nouvelles connexions. Si *address* est ``None``, une adresse arbitraire " +"est choisie." #: ../Doc/library/multiprocessing.rst:1373 msgid "" @@ -1555,6 +2003,9 @@ msgid "" "Start a subprocess to start the manager. If *initializer* is not ``None`` " "then the subprocess will call ``initializer(*initargs)`` when it starts." msgstr "" +"Démarre un sous-processus pour démarrer le gestionnaire. Si *initializer* " +"n'est pas ``None`` alors le sous-processus appellera " +"``initializer(*initargs)`` quand il démarrera." #: ../Doc/library/multiprocessing.rst:1385 msgid "" @@ -1562,36 +2013,47 @@ msgid "" "the control of the Manager. The :class:`Server` object supports the :meth:" "`serve_forever` method::" msgstr "" +"Renvoie un objet :class:`Server` qui représente le serveur sous le contrôle " +"du gestionnaire. L'objet :class:`Server` supporte la méthode :meth:" +"`serve_forever` ::" #: ../Doc/library/multiprocessing.rst:1394 msgid ":class:`Server` additionally has an :attr:`address` attribute." -msgstr "" +msgstr ":class:`Server` possède en plus un attribut :attr:`address`." #: ../Doc/library/multiprocessing.rst:1398 msgid "Connect a local manager object to a remote manager process::" msgstr "" +"Connecte un objet gestionnaire local au processus gestionnaire distant ::" #: ../Doc/library/multiprocessing.rst:1406 msgid "" "Stop the process used by the manager. This is only available if :meth:" "`start` has been used to start the server process." msgstr "" +"Stoppe le processus utilisé par le gestionnaire. Cela est disponible " +"uniquement si :meth:`start` a été utilisée pour démarrer le processus " +"serveur." #: ../Doc/library/multiprocessing.rst:1409 msgid "This can be called multiple times." -msgstr "" +msgstr "Cette méthode peut être appelée plusieurs fois." #: ../Doc/library/multiprocessing.rst:1413 msgid "" "A classmethod which can be used for registering a type or callable with the " "manager class." msgstr "" +"Une méthode de classe qui peut être utilisée pour enregistrer un type ou un " +"appelable avec la classe gestionnaire." #: ../Doc/library/multiprocessing.rst:1416 msgid "" "*typeid* is a \"type identifier\" which is used to identify a particular " "type of shared object. This must be a string." msgstr "" +"*typeif* est un « *type identifier* » qui est utilisé pour identifier un " +"type particulier d'objet partagé. Cela doit être une chaîne de caractères." #: ../Doc/library/multiprocessing.rst:1419 msgid "" @@ -1607,6 +2069,9 @@ msgid "" "proxies for shared objects with this *typeid*. If ``None`` then a proxy " "class is created automatically." msgstr "" +"*proxytype* est une sous-classe de :class:`BaseProxy` utilisée pour créer " +"des mandataires autour des objets partagés avec ce *typeid*. S'il est " +"``None``, une classe mandataire sera créée automatiquement." #: ../Doc/library/multiprocessing.rst:1428 msgid "" @@ -1618,6 +2083,14 @@ msgid "" "\"public method\" means any attribute which has a :meth:`~object.__call__` " "method and whose name does not begin with ``'_'``.)" msgstr "" +"*exposed* est utilisé pour préciser une séquence de noms de méthodes dont " +"les mandataires pour ce *typeid* doivent être autorisés à accéder via :meth:" +"`BaseProxy._callmethod`. (Si *exposed* est ``None`` alors :attr:`proxytype." +"_exposed_` est utilisé à la place s'il existe.) Dans le cas où aucune liste " +"*exposed* n'est précisée, toutes les « méthodes publiques » de l'objet " +"partagé seront accessibles. (Ici une « méthode publique » signifie n'importe " +"quel attribut qui possède une méthode :meth:`~object.__call__` et dont le " +"nom ne commence pas par un ``'_'``.)" #: ../Doc/library/multiprocessing.rst:1437 msgid "" @@ -1628,6 +2101,13 @@ msgid "" "not a key of this mapping or if the mapping is ``None`` then the object " "returned by the method will be copied by value." msgstr "" +"*method_to_typeid* est un tableau associatif utilisé pour préciser le type " +"de retour de ces méthodes exposées qui doivent renvoyer un mandataire. Il " +"associé un nom de méthode à une chaîne de caractères *typeid*. (Si " +"*method_to_typeid* est ``None``, :attr:`proxytype._method_to_typeid_` est " +"utilisé à la place s'il existe). Si le nom d'une méthode n'est pas une clé " +"de ce tableau associatif ou si la valeur associée est ``None``, l'objet " +"renvoyé par la méthode sera une copie de la valeur." #: ../Doc/library/multiprocessing.rst:1444 msgid "" @@ -1635,14 +2115,20 @@ msgid "" "*typeid* which can be used to tell the server process to create a new shared " "object and return a proxy for it. By default it is ``True``." msgstr "" +"*create_method* détermine si une méthode devrait être créée avec le nom " +"*typeid*, qui peut être utilisée pour indiquer au processus serveur de créer " +"un nouvel objet partagé et d'en renvoyer un mandataire. a valeur par défaut " +"est ``True``." #: ../Doc/library/multiprocessing.rst:1448 msgid ":class:`BaseManager` instances also have one read-only property:" msgstr "" +"Les instances de :class:`BaseManager` ont aussi une propriété en lecture " +"seule :" #: ../Doc/library/multiprocessing.rst:1452 msgid "The address used by the manager." -msgstr "" +msgstr "L'adresse utilisée par le gestionnaire." #: ../Doc/library/multiprocessing.rst:1457 msgid "" @@ -1650,6 +2136,9 @@ msgid "" "of processes. Objects of this type are returned by :func:`multiprocessing." "Manager`." msgstr "" +"Une sous-classe de :class:`BaseManager` qui peut être utilisée pour la " +"synchronisation entre processus. Des objets de ce type sont renvoyés par :" +"func:`multiprocessing.Manager`." #: ../Doc/library/multiprocessing.rst:1461 msgid "It also supports creation of shared lists and dictionaries." @@ -1660,32 +2149,44 @@ msgid "" "Create a shared :class:`threading.BoundedSemaphore` object and return a " "proxy for it." msgstr "" +"Crée un objet :class:`threading.BoundedSemaphore` partagé et renvoie un " +"mandataire pour cet objet." #: ../Doc/library/multiprocessing.rst:1470 msgid "" "Create a shared :class:`threading.Condition` object and return a proxy for " "it." msgstr "" +"Crée un objet :class:`threading.Condition` partagé et renvoie un mandataire " +"pour cet objet." #: ../Doc/library/multiprocessing.rst:1473 msgid "" "If *lock* is supplied then it should be a proxy for a :class:`threading." "Lock` or :class:`threading.RLock` object." msgstr "" +"Si *lock* est fourni alors il doit être un mandataire pour un objet :class:" +"`threading.Lock` ou :class:`threading.RLock`." #: ../Doc/library/multiprocessing.rst:1478 msgid "" "Create a shared :class:`threading.Event` object and return a proxy for it." msgstr "" +"Crée un objet :class:`threading.Event` partagé et renvoie un mandataire pour " +"cet objet." #: ../Doc/library/multiprocessing.rst:1482 msgid "" "Create a shared :class:`threading.Lock` object and return a proxy for it." msgstr "" +"Crée un objet :class:`threading.Lock` partagé et renvoie un mandataire pour " +"cet objet." #: ../Doc/library/multiprocessing.rst:1486 msgid "Create a shared :class:`Namespace` object and return a proxy for it." msgstr "" +"Crée un objet :class:`Namespace` partagé et renvoie un mandataire pour cet " +"objet." #: ../Doc/library/multiprocessing.rst:1490 msgid "Create a shared :class:`Queue.Queue` object and return a proxy for it." @@ -1695,22 +2196,28 @@ msgstr "" msgid "" "Create a shared :class:`threading.RLock` object and return a proxy for it." msgstr "" +"Crée un objet :class:`threading.RLock` partagé et renvoie un mandataire pour " +"cet objet." #: ../Doc/library/multiprocessing.rst:1498 msgid "" "Create a shared :class:`threading.Semaphore` object and return a proxy for " "it." msgstr "" +"Crée un objet :class:`threading.Semaphore` partagé et renvoie un mandataire " +"pour cet objet." #: ../Doc/library/multiprocessing.rst:1503 msgid "Create an array and return a proxy for it." -msgstr "" +msgstr "Crée un tableau et renvoie un mandataire pour cet objet." #: ../Doc/library/multiprocessing.rst:1507 msgid "" "Create an object with a writable ``value`` attribute and return a proxy for " "it." msgstr "" +"Crée un objet avec un attribut ``value`` accessible en écriture et renvoie " +"un mandataire pour cet objet." #: ../Doc/library/multiprocessing.rst:1514 msgid "Create a shared ``dict`` object and return a proxy for it." @@ -1730,13 +2237,16 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:1542 msgid "A type that can register with :class:`SyncManager`." -msgstr "" +msgstr "Un type qui peut être enregistré avec :class:`SyncManager`." #: ../Doc/library/multiprocessing.rst:1544 msgid "" "A namespace object has no public methods, but does have writable attributes. " "Its representation shows the values of its attributes." msgstr "" +"Un espace de nommage n'a pas de méthodes publiques, mais possède des " +"attributs accessibles en écriture. Sa représentation montre les valeurs de " +"ses attributs." #: ../Doc/library/multiprocessing.rst:1547 msgid "" @@ -1744,10 +2254,12 @@ msgid "" "with ``'_'`` will be an attribute of the proxy and not an attribute of the " "referent:" msgstr "" +"Cependant, en utilisant un mandataire pour un espace de nommage, un attribut " +"débutant par ``'_'`` est un attribut du mandataire et non de l'objet cible :" #: ../Doc/library/multiprocessing.rst:1562 msgid "Customized managers" -msgstr "" +msgstr "Gestionnaires personnalisés" #: ../Doc/library/multiprocessing.rst:1564 msgid "" @@ -1755,40 +2267,51 @@ msgid "" "and uses the :meth:`~BaseManager.register` classmethod to register new types " "or callables with the manager class. For example::" msgstr "" +"Pour créer son propre gestionnaire, il faut créer une sous-classe de :class:" +"`BaseManager` et utiliser la méthode de classe :meth:`~BaseManager.register` " +"pour enregistrer de nouveaux types ou *callables* au gestionnaire. Par " +"exemple ::" #: ../Doc/library/multiprocessing.rst:1590 msgid "Using a remote manager" -msgstr "" +msgstr "Utiliser un gestionnaire distant" #: ../Doc/library/multiprocessing.rst:1592 msgid "" "It is possible to run a manager server on one machine and have clients use " "it from other machines (assuming that the firewalls involved allow it)." msgstr "" +"Il est possible de lancer un serveur gestionnaire sur une machine et d'avoir " +"des clients l'utilisant sur d'autres machines (en supposant que les pare-" +"feus impliqués l'autorisent)." #: ../Doc/library/multiprocessing.rst:1595 msgid "" "Running the following commands creates a server for a single shared queue " "which remote clients can access::" msgstr "" +"Exécuter les commandes suivantes crée un serveur pour une simple queue " +"partagée à laquelle des clients distants peuvent accéder ::" #: ../Doc/library/multiprocessing.rst:1607 msgid "One client can access the server as follows::" -msgstr "" +msgstr "Un client peut accéder au serveur comme suit ::" #: ../Doc/library/multiprocessing.rst:1617 msgid "Another client can also use it::" -msgstr "" +msgstr "Un autre client peut aussi l'utiliser ::" #: ../Doc/library/multiprocessing.rst:1628 msgid "" "Local processes can also access that queue, using the code from above on the " "client to access it remotely::" msgstr "" +"Les processus locaux peuvent aussi accéder à cette queue, utilisant le code " +"précédent sur le client pour y accéder à distance ::" #: ../Doc/library/multiprocessing.rst:1651 msgid "Proxy Objects" -msgstr "" +msgstr "Objets mandataires" #: ../Doc/library/multiprocessing.rst:1653 msgid "" @@ -1796,6 +2319,10 @@ msgid "" "(presumably) in a different process. The shared object is said to be the " "*referent* of the proxy. Multiple proxy objects may have the same referent." msgstr "" +"Un mandataire est un objet qui *référence* un objet partagé appartenant " +"(supposément) à un processus différent. L'objet partagé est appelé le " +"*référent* du mandataire. Plusieurs mandataires peuvent avoir un même " +"référent." #: ../Doc/library/multiprocessing.rst:1657 msgid "" @@ -1811,6 +2338,8 @@ msgid "" "of the referent, whereas applying :func:`repr` will return the " "representation of the proxy." msgstr "" +"Notez qu'appliquer :func:`str` à un mandataire renvoie la représentation du " +"référent, alors que :func:`repr` renvoie celle du mandataire." #: ../Doc/library/multiprocessing.rst:1680 msgid "" @@ -1826,32 +2355,41 @@ msgid "" "The proxy types in :mod:`multiprocessing` do nothing to support comparisons " "by value. So, for instance, we have:" msgstr "" +"Les types de mandataires de :mod:`multiprocessing` n'implémentent rien pour " +"la comparaison par valeurs. Par exemple, on a :" #: ../Doc/library/multiprocessing.rst:1706 msgid "" "One should just use a copy of the referent instead when making comparisons." msgstr "" +"Il faut à la place simplement utiliser une copie du référent pour faire les " +"comparaisons." #: ../Doc/library/multiprocessing.rst:1710 msgid "Proxy objects are instances of subclasses of :class:`BaseProxy`." msgstr "" +"Les objets mandataires sont des instances de sous-classes de :class:" +"`BaseProxy`." #: ../Doc/library/multiprocessing.rst:1714 msgid "Call and return the result of a method of the proxy's referent." msgstr "" +"Appelle et renvoie le résultat d'une méthode du référent du mandataire." #: ../Doc/library/multiprocessing.rst:1716 msgid "" "If ``proxy`` is a proxy whose referent is ``obj`` then the expression ::" msgstr "" +"Si ``proxy`` est un mandataire sont le référent est ``obj``, alors " +"l'expression ::" #: ../Doc/library/multiprocessing.rst:1720 msgid "will evaluate the expression ::" -msgstr "" +msgstr "s'évalue comme ::" #: ../Doc/library/multiprocessing.rst:1724 msgid "in the manager's process." -msgstr "" +msgstr "dans le processus du gestionnaire." #: ../Doc/library/multiprocessing.rst:1726 msgid "" @@ -1859,6 +2397,9 @@ msgid "" "new shared object -- see documentation for the *method_to_typeid* argument " "of :meth:`BaseManager.register`." msgstr "" +"La valeur renvoyée sera une copie du résultat de l'appel ou un mandataire " +"sur un nouvel objet partagé -- voir l'a documentation de l'argument " +"*method_to_typeid* de :meth:`BaseManager.register`." #: ../Doc/library/multiprocessing.rst:1730 msgid "" @@ -1867,58 +2408,71 @@ msgid "" "then this is converted into a :exc:`RemoteError` exception and is raised by :" "meth:`_callmethod`." msgstr "" +"Si une exception est levée par l'appel, elle est relayée par :meth:" +"`_callmethod`. Si une autre exception est levée par le processus du " +"gestionnaire, elle est convertie en une :exc:`RemoteError` et est levée par :" +"meth:`_callmethod`." #: ../Doc/library/multiprocessing.rst:1735 msgid "" "Note in particular that an exception will be raised if *methodname* has not " "been *exposed*." msgstr "" +"Notez en particulier qu'une exception est levée si *methodname* n'est pas " +"*exposée*." #: ../Doc/library/multiprocessing.rst:1738 msgid "An example of the usage of :meth:`_callmethod`:" -msgstr "" +msgstr "Un exemple d'utilisation de :meth:`_callmethod` :" #: ../Doc/library/multiprocessing.rst:1754 msgid "Return a copy of the referent." -msgstr "" +msgstr "Renvoie une copie du référent." #: ../Doc/library/multiprocessing.rst:1756 msgid "If the referent is unpicklable then this will raise an exception." -msgstr "" +msgstr "Si le référent n'est pas sérialisable, une exception est levée." #: ../Doc/library/multiprocessing.rst:1760 msgid "Return a representation of the proxy object." -msgstr "" +msgstr "Renvoie la représentation de l'objet mandataire." #: ../Doc/library/multiprocessing.rst:1764 msgid "Return the representation of the referent." -msgstr "" +msgstr "Renvoie la représentation du référent." #: ../Doc/library/multiprocessing.rst:1768 msgid "Cleanup" -msgstr "" +msgstr "Nettoyage" #: ../Doc/library/multiprocessing.rst:1770 msgid "" "A proxy object uses a weakref callback so that when it gets garbage " "collected it deregisters itself from the manager which owns its referent." msgstr "" +"Un mandataire utilise un *callback* sous une référence faible de façon à ce " +"que quand il est collecté par le ramasse-miettes, il se désenregistre auprès " +"du gestionnaire qui possède le référent." #: ../Doc/library/multiprocessing.rst:1773 msgid "" "A shared object gets deleted from the manager process when there are no " "longer any proxies referring to it." msgstr "" +"Un objet partagé est supprimé par le processus gestionnaire quand plus aucun " +"mandataire ne le référence." #: ../Doc/library/multiprocessing.rst:1778 msgid "Process Pools" -msgstr "" +msgstr "Bassins de processus" #: ../Doc/library/multiprocessing.rst:1783 msgid "" "One can create a pool of processes which will carry out tasks submitted to " "it with the :class:`Pool` class." msgstr "" +"On peut créer un bassin de processus qui exécuteront les tâches qui lui " +"seront soumises avec la classe :class:`Pool`." #: ../Doc/library/multiprocessing.rst:1788 msgid "" @@ -1926,6 +2480,10 @@ msgid "" "jobs can be submitted. It supports asynchronous results with timeouts and " "callbacks and has a parallel map implementation." msgstr "" +"Un objet *process pool* qui contrôle un bassin de processus *workers* auquel " +"sont soumises des tâches. Il supporte les résultats asynchrones avec des " +"*timeouts* et des *callabacks* et possède une implémentation parallèle de " +"*map*." #: ../Doc/library/multiprocessing.rst:1792 msgid "" @@ -1940,6 +2498,8 @@ msgid "" "Note that the methods of the pool object should only be called by the " "process which created the pool." msgstr "" +"Notez que les méthodes de l'objet *pool* ne doivent être appelées que par le " +"processus qui l'a créé." #: ../Doc/library/multiprocessing.rst:1800 msgid "" @@ -1948,6 +2508,11 @@ msgid "" "unused resources to be freed. The default *maxtasksperchild* is ``None``, " "which means worker processes will live as long as the pool." msgstr "" +"*maxtasksperchild* est le nombre de tâches qu'un processus *worker* peut " +"accomplir avant de se fermer et d'être remplacé par un *worker* frais, pour " +"permettre aux ressources inutilisées d'être libérées. Par défaut " +"*maxtasksperchild* est ``None``, ce qui signifie que le *worker* vit aussi " +"longtemps que le bassin." #: ../Doc/library/multiprocessing.rst:1808 msgid "" @@ -1959,6 +2524,14 @@ msgid "" "one. The *maxtasksperchild* argument to the :class:`Pool` exposes this " "ability to the end user." msgstr "" +"Les processus *workers* à l'intérieur d'une :class:`Pool` vivent par défaut " +"aussi longtemps que la queue de travail du bassin. Un modèle fréquent chez " +"d'autres systèmes (tels qu'Apache, *mod_wsgi*, etc.) pour libérer les " +"ressources détenues par les *workers* est d'autoriser un *worker* dans le " +"bassin à accomplir seulement une certaine charge de travail avant de se " +"fermer, se retrouvant nettoyé et remplacé par un nouvelle processus " +"fraîchement lancé. L'argument *maxtasksperchild* de :class:`Pool` expose " +"cette fonctionnalité à l'utilisateur final." #: ../Doc/library/multiprocessing.rst:1818 msgid "" @@ -1971,6 +2544,7 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:1825 msgid "A variant of the :meth:`apply` method which returns a result object." msgstr "" +"Une variante de la méthode :meth:`apply` qui renvoie un objet résultat." #: ../Doc/library/multiprocessing.rst:1827 #: ../Doc/library/multiprocessing.rst:1845 @@ -1986,6 +2560,9 @@ msgid "" "A parallel equivalent of the :func:`map` built-in function (it supports only " "one *iterable* argument though). It blocks until the result is ready." msgstr "" +"Un équivalent parallèle à la fonction *built-in* :func:`map` (qui ne " +"supporte cependant qu'un *itérable* en argument). Elle bloque jusqu'à ce que " +"le résultat soit prêt." #: ../Doc/library/multiprocessing.rst:1837 msgid "" @@ -1993,10 +2570,13 @@ msgid "" "the process pool as separate tasks. The (approximate) size of these chunks " "can be specified by setting *chunksize* to a positive integer." msgstr "" +"La méthode découpe l'itérable en un nombre de morceaux qu'elle envoie au " +"bassin de processus comme des tâches séparées. La taille (approximative) de " +"ces morceaux peut être précisée en passant à *chunksize* un entier positif." #: ../Doc/library/multiprocessing.rst:1843 msgid "A variant of the :meth:`.map` method which returns a result object." -msgstr "" +msgstr "Une variante de la méthode :meth:`.map` qui renvoie un objet résultat." #: ../Doc/library/multiprocessing.rst:1852 msgid "An equivalent of :func:`itertools.imap`." @@ -2008,6 +2588,10 @@ msgid "" "method. For very long iterables using a large value for *chunksize* can " "make the job complete **much** faster than using the default value of ``1``." msgstr "" +"L'argument *chunksize* est le même que celui utilisé par la méthode :meth:`." +"map`. Pour de très longs itérables, utiliser une grande valeur pour " +"*chunksize* peut faire s'exécuter la tâche **beaucoup** plus rapidement " +"qu'en utilisant la valeur par défaut de ``1``." #: ../Doc/library/multiprocessing.rst:1859 msgid "" @@ -2016,6 +2600,10 @@ msgid "" "``next(timeout)`` will raise :exc:`multiprocessing.TimeoutError` if the " "result cannot be returned within *timeout* seconds." msgstr "" +"Aussi, si *chucksize* vaut ``1`` alors la méthode :meth:`!next` de " +"l'itérateur renvoyé par :meth:`imap` prend un paramètre optionnel " +"*timeout* : ``next(timeout)`` lève une :exc:`multiprocessing.TimeoutError` " +"si le résultat ne peut pas être renvoyé avant *timeout* secondes." #: ../Doc/library/multiprocessing.rst:1866 msgid "" @@ -2023,12 +2611,17 @@ msgid "" "returned iterator should be considered arbitrary. (Only when there is only " "one worker process is the order guaranteed to be \"correct\".)" msgstr "" +"Identique à :meth:`imap` si ce n'est que l'ordre des résultats de " +"l'itérateur renvoyé doit être considéré comme arbitraire. (L'ordre n'est " +"garanti que quand il n'y a qu'un *worker*.)" #: ../Doc/library/multiprocessing.rst:1872 msgid "" "Prevents any more tasks from being submitted to the pool. Once all the " "tasks have been completed the worker processes will exit." msgstr "" +"Empêche de nouvelles tâches d'être envoyées à la *pool*. Les processus " +"*workers* se terminent une fois que toutes les tâches ont été complétées." #: ../Doc/library/multiprocessing.rst:1877 msgid "" @@ -2036,18 +2629,25 @@ msgid "" "When the pool object is garbage collected :meth:`terminate` will be called " "immediately." msgstr "" +"Stoppe immédiatement les processus *workers* sans finaliser les travaux " +"courants. Quand l'objet *pool* est collecté par le ramasse-miettes, sa " +"méthode :meth:`terminate` est appelée immédiatement." #: ../Doc/library/multiprocessing.rst:1883 msgid "" "Wait for the worker processes to exit. One must call :meth:`close` or :meth:" "`terminate` before using :meth:`join`." msgstr "" +"Attend que les processus *workers* se terminent. Il est nécessaire " +"d'appeler :meth:`close` ou :meth:`terminate` avant d'utiliser :meth:`join`." #: ../Doc/library/multiprocessing.rst:1889 msgid "" "The class of the result returned by :meth:`Pool.apply_async` and :meth:`Pool." "map_async`." msgstr "" +"La classe des résultats renvoyés par :meth:`Pool.apply_async` et :meth:`Pool." +"map_async`." #: ../Doc/library/multiprocessing.rst:1894 msgid "" @@ -2056,28 +2656,36 @@ msgid "" "TimeoutError` is raised. If the remote call raised an exception then that " "exception will be reraised by :meth:`get`." msgstr "" +"Renvoie le résultat quand il arrive. Si *timeout* n'est pas ``None`` et que " +"le résultat n'arrive pas avant *timeout* secondes, une :exc:`multiprocessing." +"TimeoutError` est levée. Si l'appel distance lève une exception, alors elle " +"est relayée par :meth:`get`." #: ../Doc/library/multiprocessing.rst:1901 msgid "Wait until the result is available or until *timeout* seconds pass." msgstr "" +"Attend que le résultat soit disponible ou que *timeout* secondes s'écoulent." #: ../Doc/library/multiprocessing.rst:1905 msgid "Return whether the call has completed." -msgstr "" +msgstr "Renvoie ``True`` ou ``False`` suivant si la tâche est accomplie." #: ../Doc/library/multiprocessing.rst:1909 msgid "" "Return whether the call completed without raising an exception. Will raise :" "exc:`AssertionError` if the result is not ready." msgstr "" +"Renvoie ``True`` ou ``False`` suivant si la tâche est accomplie sans lever " +"d'exception. Lève une :exc:`AssertionError` si le résultat n'est pas prêt." #: ../Doc/library/multiprocessing.rst:1912 msgid "The following example demonstrates the use of a pool::" msgstr "" +"Les exemples suivants présentent l'utilisation d'un bassin de *workers* ::" #: ../Doc/library/multiprocessing.rst:1940 msgid "Listeners and Clients" -msgstr "" +msgstr "Auditeurs et Clients" #: ../Doc/library/multiprocessing.rst:1945 msgid "" @@ -2099,6 +2707,8 @@ msgid "" "Send a randomly generated message to the other end of the connection and " "wait for a reply." msgstr "" +"Envoie un message généré aléatoirement à l'autre bout de la connexion et " +"attend une réponse." #: ../Doc/library/multiprocessing.rst:1960 msgid "" @@ -2112,6 +2722,8 @@ msgid "" "Receive a message, calculate the digest of the message using *authkey* as " "the key, and then send the digest back." msgstr "" +"Reçoit un message, calcule le condensat du message en utilisant la clé " +"*authkey*, et envoie le condensat en réponse." #: ../Doc/library/multiprocessing.rst:1969 msgid "" @@ -2131,6 +2743,9 @@ msgid "" "generally be omitted since it can usually be inferred from the format of " "*address*. (See :ref:`multiprocessing-address-formats`)" msgstr "" +"Le type de la connexion est déterminé par l'argument *family*, mais il peut " +"généralement être omis puisqu'il peut être inféré depuis le format " +"d'*address*. (Voir :ref:`multiprocessing-address-formats`)" #: ../Doc/library/multiprocessing.rst:1981 msgid "" @@ -2146,12 +2761,16 @@ msgid "" "A wrapper for a bound socket or Windows named pipe which is 'listening' for " "connections." msgstr "" +"Un *wrapper* sur une *socket* liée ou un tube nommé sous Windows qui écoute " +"pour des connexions." #: ../Doc/library/multiprocessing.rst:1992 msgid "" "*address* is the address to be used by the bound socket or named pipe of the " "listener object." msgstr "" +"*address* est l'adresse à utiliser par la *socket* liée ou le tube nommé de " +"l'objet auditeur." #: ../Doc/library/multiprocessing.rst:1997 msgid "" @@ -2159,6 +2778,9 @@ msgid "" "end point on Windows. If you require a connectable end-point, you should use " "'127.0.0.1'." msgstr "" +"Si une adresse '0.0.0.0' est utilisée, l'adresse ne sera pas un point " +"d'accès connectable sous Windows. Si vous avez besoin d'un point d'accès " +"connectable, utilisez '127.0.0.1'." #: ../Doc/library/multiprocessing.rst:2001 msgid "" @@ -2173,6 +2795,16 @@ msgid "" "then the socket will be created in a private temporary directory created " "using :func:`tempfile.mkstemp`." msgstr "" +"*family* est le type de *socket* (ou tube nommé) à utiliser. Cela peut être " +"l'une des chaînes ``'AF_INET'`` (pour une *socket* TCP), ``'AF_UNIX'`` (pour " +"une *socket* Unix) ou ``'AF_PIPE'`` (pour un tube nommé sous Windows). " +"Seulement la première d'entre elles est garantie d'être disponible. Si " +"*family* est ``None``, la famille est inférée depuis le format d'*address*. " +"Si *address* est aussi ``None``, la famille par défaut est utilisée. La " +"famille par défaut est supposée être la plus rapide disponible. Voir :ref:" +"`multiprocessing-address-formats`. Notez que si la *family* est " +"``'AF_UNIX'`` et qu'*address* est ``None``, la *socket* est créée dans un " +"répertoire temporaire privé créé avec :func:`tempfile.mkstemp`." #: ../Doc/library/multiprocessing.rst:2012 msgid "" @@ -2180,6 +2812,9 @@ msgid "" "to the :meth:`~socket.socket.listen` method of the socket once it has been " "bound." msgstr "" +"Si l'objet auditeur utilise une *socket* alors *backlog* (1 par défaut) es " +"passé à la méthode :meth:`~socket.socket.listen` de la *socket* une fois " +"qu'elle a été liée." #: ../Doc/library/multiprocessing.rst:2016 msgid "" @@ -2216,20 +2851,26 @@ msgid "" "automatically when the listener is garbage collected. However it is " "advisable to call it explicitly." msgstr "" +"Ferme la *socket* liée ou le tube nommé de l'objet auditeur. La méthode est " +"appelée automatiquement quand l'auditeur est collecté par le ramasse-" +"miettes. Il est cependant conseillé de l'appeler explicitement." #: ../Doc/library/multiprocessing.rst:2041 msgid "Listener objects have the following read-only properties:" msgstr "" +"Les objets auditeurs ont aussi les propriétés en lecture seule suivantes :" #: ../Doc/library/multiprocessing.rst:2045 msgid "The address which is being used by the Listener object." -msgstr "" +msgstr "L'adresse utilisée par l'objet auditeur." #: ../Doc/library/multiprocessing.rst:2049 msgid "" "The address from which the last accepted connection came. If this is " "unavailable then it is ``None``." msgstr "" +"L'adresse depuis laquelle a été établie la dernière connexion. ``None`` si " +"aucune n'est disponible." #: ../Doc/library/multiprocessing.rst:2053 msgid "The module defines two exceptions:" @@ -2241,7 +2882,7 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2060 msgid "**Examples**" -msgstr "" +msgstr "**Exemples**" #: ../Doc/library/multiprocessing.rst:2062 msgid "" @@ -2249,32 +2890,39 @@ msgid "" "password'`` as an authentication key. It then waits for a connection and " "sends some data to the client::" msgstr "" +"Le code serveur suivant crée un auditeur qui utilise ``'secret password'`` " +"comme clé d'authentification. Il attend ensuite une connexion et envoie les " +"données au client ::" #: ../Doc/library/multiprocessing.rst:2084 msgid "" "The following code connects to the server and receives some data from the " "server::" -msgstr "" +msgstr "Le code suivant se connecte au serveur et en reçoit des données ::" #: ../Doc/library/multiprocessing.rst:2107 msgid "Address Formats" -msgstr "" +msgstr "Formats d'adresses" #: ../Doc/library/multiprocessing.rst:2109 msgid "" "An ``'AF_INET'`` address is a tuple of the form ``(hostname, port)`` where " "*hostname* is a string and *port* is an integer." msgstr "" +"Une adresse ``'AF_INET'`` est un *tuple* de la forme ``(hostname, port)`` où " +"*hostname* est une chaîne et *port* un entier." #: ../Doc/library/multiprocessing.rst:2112 msgid "" "An ``'AF_UNIX'`` address is a string representing a filename on the " "filesystem." msgstr "" +"Une adresse ``'AF_UNIX'`` est une chaîne représentant un nom de fichier sur " +"le système de fichiers." #: ../Doc/library/multiprocessing.rst:2118 msgid "An ``'AF_PIPE'`` address is a string of the form" -msgstr "" +msgstr "Une adresse ``'AF_PIPE'`` est une chaîne de la forme" #: ../Doc/library/multiprocessing.rst:2116 msgid "" @@ -2283,16 +2931,23 @@ msgid "" "use an address of the form :samp:`r'\\\\\\\\{ServerName}\\\\pipe\\" "\\{PipeName}'` instead." msgstr "" +":samp:`r'\\\\\\\\.\\\\pipe\\\\{PipeName}'`. Pour utiliser un :func:`Client` " +"pour se connecter à un tube nommé sur une machine distante appelée " +"*ServerName*, il faut plutôt utiliser une adresse de la forme :samp:`r'\\\\\\" +"\\{ServerName}\\\\pipe\\\\{PipeName}'`." #: ../Doc/library/multiprocessing.rst:2120 msgid "" "Note that any string beginning with two backslashes is assumed by default to " "be an ``'AF_PIPE'`` address rather than an ``'AF_UNIX'`` address." msgstr "" +"Notez que toute chaîne commençant par deux antislashs est considérée par " +"défaut comme l'adresse d'un ``'AF_PIPE'`` plutôt qu'une adresse " +"``'AF_UNIX'``." #: ../Doc/library/multiprocessing.rst:2127 msgid "Authentication keys" -msgstr "" +msgstr "Clés d'authentification" #: ../Doc/library/multiprocessing.rst:2129 msgid "" @@ -2321,12 +2976,21 @@ msgid "" "program will share a single authentication key which can be used when " "setting up connections between themselves." msgstr "" +"Si l'authentification est requise et qu'aucune clé n'est spécifiée alors la " +"valeur de retour de ``current_process().authkey`` est utilisée (voir :class:" +"`~multiprocessing.Process`). Celle valeur est automatiquement héritée par " +"tout objet :class:`~multiprocessing.Process` créé par le processus courant. " +"Cela signifie que (par défaut) tous les processus d'un programme multi-" +"processus partageront une clé d'authentification unique qui peut être " +"utilisée pour mettre en place des connexions entre-eux." #: ../Doc/library/multiprocessing.rst:2148 msgid "" "Suitable authentication keys can also be generated by using :func:`os." "urandom`." msgstr "" +"Des clés d'authentification adaptées peuvent aussi être générées par :func:" +"`os.urandom`." #: ../Doc/library/multiprocessing.rst:2152 msgid "Logging" @@ -2339,12 +3003,18 @@ msgid "" "(depending on the handler type) for messages from different processes to get " "mixed up." msgstr "" +"Un certain support de la journalisation est disponible. Notez cependant que " +"le le paquet :mod:`logging` n'utilise pas de verrous partagés entre les " +"processus et il est donc possible (dépendant du type de gestionnaire) que " +"les messages de différents processus soient mélangés." #: ../Doc/library/multiprocessing.rst:2161 msgid "" "Returns the logger used by :mod:`multiprocessing`. If necessary, a new one " "will be created." msgstr "" +"Renvoie le journaliseur utilisé par :mod:`multiprocessing`. Si nécessaire, " +"un nouveau sera créé." #: ../Doc/library/multiprocessing.rst:2164 msgid "" @@ -2352,6 +3022,9 @@ msgid "" "default handler. Messages sent to this logger will not by default propagate " "to the root logger." msgstr "" +"À sa première création le journaliseur a pour niveau :data:`logging.NOTSET` " +"et pas de gestionnaire par défaut. Les messages envoyés à ce journaliseur ne " +"seront pas propagés par défaut au journaliseur principal." #: ../Doc/library/multiprocessing.rst:2168 msgid "" @@ -2359,6 +3032,9 @@ msgid "" "parent process's logger -- any other customization of the logger will not be " "inherited." msgstr "" +"Notez que sous Windows les processus fils n'hériteront que du niveau du " +"journaliseur du processus parent -- toute autre personnalisation du " +"journaliseur ne sera pas héritée." #: ../Doc/library/multiprocessing.rst:2175 msgid "" @@ -2367,10 +3043,15 @@ msgid "" "output to :data:`sys.stderr` using format ``'[%(levelname)s/%(processName)s] " "%(message)s'``." msgstr "" +"Cette fonction effectue un appel à :func:`get_logger` mais en plus de " +"renvoyer le journaliseur créé par *get_logger*, elle ajoute un gestionnaire " +"qui envoie la sortie sur :data:`sys.stderr` en utilisant le format " +"``'[%(levelname)s/%(processName)s] %(message)s'``." #: ../Doc/library/multiprocessing.rst:2180 msgid "Below is an example session with logging turned on::" msgstr "" +"L'exemple ci-dessous présente une session avec la journalisation activée ::" #: ../Doc/library/multiprocessing.rst:2195 msgid "" @@ -2382,11 +3063,11 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2201 msgid "Level" -msgstr "" +msgstr "Niveau" #: ../Doc/library/multiprocessing.rst:2201 msgid "Numeric value" -msgstr "" +msgstr "Valeur numérique" #: ../Doc/library/multiprocessing.rst:2203 msgid "``SUBWARNING``" @@ -2407,6 +3088,8 @@ msgstr "5" #: ../Doc/library/multiprocessing.rst:2208 msgid "For a full table of logging levels, see the :mod:`logging` module." msgstr "" +"Pour un tableau complet des niveaux de journalisation, voir le module :mod:" +"`logging`." #: ../Doc/library/multiprocessing.rst:2210 msgid "" @@ -2417,23 +3100,27 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2234 msgid "The :mod:`multiprocessing.dummy` module" -msgstr "" +msgstr "Le module :mod:`multiprocessing.dummy`" #: ../Doc/library/multiprocessing.rst:2239 msgid "" ":mod:`multiprocessing.dummy` replicates the API of :mod:`multiprocessing` " "but is no more than a wrapper around the :mod:`threading` module." msgstr "" +":mod:`multiprocessing.dummy` réplique toute l'API de :mod:`multiprocessing` " +"mais n'est rien de plus qu'un *wrapper* autour du module :mod:`threading`." #: ../Doc/library/multiprocessing.rst:2246 msgid "Programming guidelines" -msgstr "" +msgstr "Lignes directrices de programmation" #: ../Doc/library/multiprocessing.rst:2248 msgid "" "There are certain guidelines and idioms which should be adhered to when " "using :mod:`multiprocessing`." msgstr "" +"Il y a certaines lignes directrices et idiomes auxquels il faut adhérer en " +"utilisant :mod:`multiprocessing`." #: ../Doc/library/multiprocessing.rst:2253 msgid "All platforms" @@ -2441,13 +3128,15 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2255 msgid "Avoid shared state" -msgstr "" +msgstr "Éviter les états partagés" #: ../Doc/library/multiprocessing.rst:2257 msgid "" "As far as possible one should try to avoid shifting large amounts of data " "between processes." msgstr "" +"Autant que possible, vous devriez éviter de déplacer de larges données entre " +"les processus." #: ../Doc/library/multiprocessing.rst:2260 msgid "" @@ -2458,30 +3147,36 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2264 msgid "Picklability" -msgstr "" +msgstr "Sérialisation" #: ../Doc/library/multiprocessing.rst:2266 msgid "Ensure that the arguments to the methods of proxies are picklable." msgstr "" +"Assurez-vous que les arguments passés aux méthodes des mandataires soient " +"sérialisables (*pickables*)." #: ../Doc/library/multiprocessing.rst:2268 msgid "Thread safety of proxies" -msgstr "" +msgstr "Sûreté des mandataires à travers les fils d'exécution" #: ../Doc/library/multiprocessing.rst:2270 msgid "" "Do not use a proxy object from more than one thread unless you protect it " "with a lock." msgstr "" +"N'utilisez pas d'objet mandataire depuis plus d'un fil d'exécution à moins " +"que vous ne le protégiez avec un verrou." #: ../Doc/library/multiprocessing.rst:2273 msgid "" "(There is never a problem with different processes using the *same* proxy.)" msgstr "" +"(Il n'y a jamais de problème avec plusieurs processus utilisant un *même* " +"mandataire.)" #: ../Doc/library/multiprocessing.rst:2275 msgid "Joining zombie processes" -msgstr "" +msgstr "Attendre les processus zombies" #: ../Doc/library/multiprocessing.rst:2277 msgid "" @@ -2493,10 +3188,18 @@ msgid "" "join the process. Even so it is probably good practice to explicitly join " "all the processes that you start." msgstr "" +"Sous Unix quand un processus se termine mais n'est pas attendu, il devient " +"un zombie. Il ne devrait jamais y en avoir beaucoup parce que chaque fois " +"qu'un nouveau processus démarre (ou que :func:`~multiprocessing." +"active_children` est appelée) tous les processus complétés qui n'ont pas été " +"attendus le seront. Aussi appeler la méthode :meth:`Process.is_alive " +"` d'un processus terminé attendra le " +"processus. Toutefois il est probablement une bonne pratique d'attendre " +"explicitement tous les processus que vous démarrez." #: ../Doc/library/multiprocessing.rst:2285 msgid "Better to inherit than pickle/unpickle" -msgstr "" +msgstr "Préférez hériter que sérialiser/désérialiser" #: ../Doc/library/multiprocessing.rst:2287 msgid "" @@ -2509,7 +3212,7 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2293 msgid "Avoid terminating processes" -msgstr "" +msgstr "Éviter de terminer les processus" #: ../Doc/library/multiprocessing.rst:2295 msgid "" @@ -2518,6 +3221,10 @@ msgid "" "locks, semaphores, pipes and queues) currently being used by the process to " "become broken or unavailable to other processes." msgstr "" +"Utiliser la méthode :meth:`Process.terminate ` pour stopper un processus risque de casser ou de rendre " +"indisponible aux autres processus des ressources partagées (comme des " +"verrous, sémaphores, tubes et queues) actuellement utilisée par le processus." #: ../Doc/library/multiprocessing.rst:2301 msgid "" @@ -2525,10 +3232,13 @@ msgid "" "terminate ` on processes which never use " "any shared resources." msgstr "" +"Il est donc probablement préférable de n'utiliser :meth:`Process.terminate " +"` que sur les processus qui n'utilisent " +"jamais de ressources partagées." #: ../Doc/library/multiprocessing.rst:2305 msgid "Joining processes that use queues" -msgstr "" +msgstr "Attendre les processus qui utilisent des queues" #: ../Doc/library/multiprocessing.rst:2307 msgid "" @@ -2547,20 +3257,28 @@ msgid "" "put items on the queue will terminate. Remember also that non-daemonic " "processes will be joined automatically." msgstr "" +"Cela signifie que chaque fois que vous utilisez une queue vous devez vous " +"assurer que tous les éléments qui y ont été placés seront effectivement " +"supprimés avant que le processus ne soit attendu. Autrement vous ne pouvez " +"pas être sûr que les processus qui ont placé des éléments dans la queue se " +"termineront. Souvenez-vous aussi que tous les processus non *daemons* seront " +"attendus automatiquement." #: ../Doc/library/multiprocessing.rst:2318 msgid "An example which will deadlock is the following::" -msgstr "" +msgstr "L'exemple suivant provoquera un interblocage ::" #: ../Doc/library/multiprocessing.rst:2332 msgid "" "A fix here would be to swap the last two lines (or simply remove the ``p." "join()`` line)." msgstr "" +"Une solution ici serait d'intervertir les deux dernières lignes (ou " +"simplement supprimer la ligne ``p.join()``)." #: ../Doc/library/multiprocessing.rst:2335 msgid "Explicitly pass resources to child processes" -msgstr "" +msgstr "Passer explicitement les ressources aux processus fils" #: ../Doc/library/multiprocessing.rst:2337 msgid "" @@ -2579,25 +3297,29 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2347 msgid "So for instance ::" -msgstr "" +msgstr "Donc par exemple ::" #: ../Doc/library/multiprocessing.rst:2359 msgid "should be rewritten as ::" -msgstr "" +msgstr "devrait être réécrit comme ::" #: ../Doc/library/multiprocessing.rst:2371 msgid "Beware of replacing :data:`sys.stdin` with a \"file like object\"" msgstr "" +"Faire attention à remplacer :data:`sys.stdin` par un objet « *file-like* »" #: ../Doc/library/multiprocessing.rst:2373 msgid ":mod:`multiprocessing` originally unconditionally called::" -msgstr "" +msgstr "À l'origine, :mod:`multiprocessing` appelait inconditionnellement ::" #: ../Doc/library/multiprocessing.rst:2377 msgid "" "in the :meth:`multiprocessing.Process._bootstrap` method --- this resulted " "in issues with processes-in-processes. This has been changed to::" msgstr "" +"dans la méthode :meth:`multiprocessing.Process._bootstrap` --- cela " +"provoquait des problèmes avec les processus imbriqués. Cela peut être changé " +"en ::" #: ../Doc/library/multiprocessing.rst:2383 msgid "" @@ -2608,6 +3330,13 @@ msgid "" "`~io.IOBase.close()` on this file-like object, it could result in the same " "data being flushed to the object multiple times, resulting in corruption." msgstr "" +"Qui résout le problème fondamental des collisions entre processus provoquant " +"des erreurs de mauvais descripteurs de fichiers, mais introduit un potentiel " +"danger pour les applications qui remplacent :func:`sys.stdin` avec un " +"« *file-like object* » ayant une sortie *bufferisée*. Ce danger est que si " +"plusieurs processus appellent :meth:`~io.IOBase.close()` sur cet objet *file-" +"like*, cela peut amener les données à être transmises à l'objet à plusieurs " +"reprises, résultant en une corruption." #: ../Doc/library/multiprocessing.rst:2390 msgid "" @@ -2615,11 +3344,16 @@ msgid "" "it fork-safe by storing the pid whenever you append to the cache, and " "discarding the cache when the pid changes. For example::" msgstr "" +"Si vous écrivez un objet *file-like* et implémentez votre propre cache, vous " +"pouvez le rendre sûr pour les *forks* en stockant le *pid* chaque fois que " +"vous ajoutez des données au cache, et annulez le cache quand le *pip* " +"change. Par exemple ::" #: ../Doc/library/multiprocessing.rst:2402 msgid "" "For more information, see :issue:`5155`, :issue:`5313` and :issue:`5331`" msgstr "" +"Pour plus d'informations, voir :issue:`5155`, :issue:`5313` et :issue:`5331`" #: ../Doc/library/multiprocessing.rst:2405 msgid "Windows" @@ -2631,7 +3365,7 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2409 msgid "More picklability" -msgstr "" +msgstr "Plus de sérialisation" #: ../Doc/library/multiprocessing.rst:2411 msgid "" @@ -2650,7 +3384,7 @@ msgstr "" #: ../Doc/library/multiprocessing.rst:2420 msgid "Global variables" -msgstr "" +msgstr "Variables globales" #: ../Doc/library/multiprocessing.rst:2422 msgid "" @@ -2659,16 +3393,23 @@ msgid "" "in the parent process at the time that :meth:`Process.start ` was called." msgstr "" +"Gardez en tête que si le code exécuté dans un processus fils essaie " +"d'accéder à une variable globale, alors la valeur qu'il voit (s'il y en a " +"une) pourrait ne pas être la même que la valeur du processus parent au " +"moment même où :meth:`Process.start ` est " +"appelée." #: ../Doc/library/multiprocessing.rst:2427 msgid "" "However, global variables which are just module level constants cause no " "problems." msgstr "" +"Cependant, les variables globales qui sont juste des constantes de modules " +"ne posent pas de problèmes." #: ../Doc/library/multiprocessing.rst:2430 msgid "Safe importing of main module" -msgstr "" +msgstr "Importation sûre du module principal" #: ../Doc/library/multiprocessing.rst:2432 msgid "" @@ -2676,6 +3417,9 @@ msgid "" "interpreter without causing unintended side effects (such a starting a new " "process)." msgstr "" +"Assurez-vous que le module principal peut être importé en toute sécurité par " +"un nouvel interpréteur Python sans causer d'effets de bord inattendus (comme " +"le démarrage d'un nouveau processus)." #: ../Doc/library/multiprocessing.rst:2436 msgid "" @@ -2688,24 +3432,32 @@ msgid "" "Instead one should protect the \"entry point\" of the program by using ``if " "__name__ == '__main__':`` as follows::" msgstr "" +"Vous devriez plutôt protéger le « point d'entrée » du programme en utilisant " +"``if __name__ == '__main__':`` comme suit ::" #: ../Doc/library/multiprocessing.rst:2460 msgid "" "(The ``freeze_support()`` line can be omitted if the program will be run " "normally instead of frozen.)" msgstr "" +"(La ligne ``freeze_support()`` peut être omise si le programme est " +"uniquement lancé normalement et pas gelé.)" #: ../Doc/library/multiprocessing.rst:2463 msgid "" "This allows the newly spawned Python interpreter to safely import the module " "and then run the module's ``foo()`` function." msgstr "" +"Cela permet aux interpréteurs Python fraîchement instanciés d'importer en " +"toute sécurité le module et d'exécution ensuite la fonction ``foo()``." #: ../Doc/library/multiprocessing.rst:2466 msgid "" "Similar restrictions apply if a pool or manager is created in the main " "module." msgstr "" +"Des restrictions similaires s'appliquent si une *pool* ou un gestionnaire " +"est créé dans le module principal." #: ../Doc/library/multiprocessing.rst:2473 msgid "Examples" @@ -2714,10 +3466,12 @@ msgstr "Exemples" #: ../Doc/library/multiprocessing.rst:2475 msgid "Demonstration of how to create and use customized managers and proxies:" msgstr "" +"Démonstration de comment créer et utiliser des gestionnaires et mandataires " +"personnalisés :" #: ../Doc/library/multiprocessing.rst:2480 msgid "Using :class:`~multiprocessing.pool.Pool`:" -msgstr "" +msgstr "En utilisant :class:`~multiprocessing.pool.Pool` :" #: ../Doc/library/multiprocessing.rst:2485 msgid "Synchronization types like locks, conditions and queues:" @@ -2728,6 +3482,8 @@ msgid "" "An example showing how to use queues to feed tasks to a collection of worker " "processes and collect the results:" msgstr "" +"Un exemple montrant comment utiliser des queues pour alimenter en tâches une " +"collection de processus *workers* et collecter les résultats :" #: ../Doc/library/multiprocessing.rst:2496 msgid "" diff --git a/library/operator.po b/library/operator.po index 7751117c..b5ed69aa 100644 --- a/library/operator.po +++ b/library/operator.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/operator.rst:2 msgid ":mod:`operator` --- Standard operators as functions" -msgstr "" +msgstr ":mod:`operator` — Opérateurs standards en tant que fonctions" #: ../Doc/library/operator.rst:15 msgid "" @@ -41,6 +41,8 @@ msgid "" "The object comparison functions are useful for all objects, and are named " "after the rich comparison operators they support:" msgstr "" +"Les fonctions de comparaison s'appliquent à tous les objets, et leur nom " +"vient des opérateurs de comparaison qu'elles implémentent :" #: ../Doc/library/operator.rst:42 msgid "" @@ -59,6 +61,8 @@ msgid "" "The logical operations are also generally applicable to all objects, and " "support truth tests, identity tests, and boolean operations:" msgstr "" +"En général, les opérations logiques s'appliquent aussi à tous les objets et " +"implémentent les tests de vérité, d'identité et les opérations booléennes :" #: ../Doc/library/operator.rst:59 msgid "" @@ -73,18 +77,23 @@ msgid "" "Return :const:`True` if *obj* is true, and :const:`False` otherwise. This " "is equivalent to using the :class:`bool` constructor." msgstr "" +"Renvoie :const:`True` si *obj* est vrai, et :const:`False` dans le cas " +"contraire. Équivaut à utiliser le constructeur de :class:`bool`." #: ../Doc/library/operator.rst:73 msgid "Return ``a is b``. Tests object identity." msgstr "" +"Renvoie ``a is b``. Vérifie si les deux paramètres sont le même objet." #: ../Doc/library/operator.rst:80 msgid "Return ``a is not b``. Tests object identity." msgstr "" +"Renvoie ``a is not b``. Vérifie si les deux paramètres sont deux objets " +"distincts." #: ../Doc/library/operator.rst:84 msgid "The mathematical and bitwise operations are the most numerous:" -msgstr "" +msgstr "Les opérations mathématiques ou bit à bit sont les plus nombreuses :" #: ../Doc/library/operator.rst:90 msgid "Return the absolute value of *obj*." @@ -92,11 +101,11 @@ msgstr "Renvoie la valeur absolue de *obj*." #: ../Doc/library/operator.rst:96 msgid "Return ``a + b``, for *a* and *b* numbers." -msgstr "" +msgstr "Renvoie ``a + b`` où *a* et *b* sont des nombres." #: ../Doc/library/operator.rst:102 msgid "Return the bitwise and of *a* and *b*." -msgstr "" +msgstr "Renvoie le *et* bit à bit de *a* et *b*." #: ../Doc/library/operator.rst:108 msgid "" @@ -106,17 +115,17 @@ msgstr "" #: ../Doc/library/operator.rst:115 msgid "Return ``a // b``." -msgstr "" +msgstr "Renvoie ``a // b``." #: ../Doc/library/operator.rst:123 msgid "Return *a* converted to an integer. Equivalent to ``a.__index__()``." -msgstr "" +msgstr "Renvoie *a* converti en entier. Équivaut à ``a.__index__()``." #: ../Doc/library/operator.rst:133 msgid "" "Return the bitwise inverse of the number *obj*. This is equivalent to " "``~obj``." -msgstr "" +msgstr "Renvoie l'inverse bit à bit du nombre *obj*. Équivaut à ``~obj``." #: ../Doc/library/operator.rst:135 msgid "The names :func:`invert` and :func:`__invert__`." @@ -124,39 +133,39 @@ msgstr "" #: ../Doc/library/operator.rst:142 msgid "Return *a* shifted left by *b*." -msgstr "" +msgstr "Renvoie le décalage de *b* bits vers la gauche de *a*." #: ../Doc/library/operator.rst:148 msgid "Return ``a % b``." -msgstr "" +msgstr "Renvoie``a % b``." #: ../Doc/library/operator.rst:154 msgid "Return ``a * b``, for *a* and *b* numbers." -msgstr "" +msgstr "Renvoie ``a * b`` où *a* et *b* sont des nombres." #: ../Doc/library/operator.rst:160 msgid "Return *obj* negated (``-obj``)." -msgstr "" +msgstr "Renvoie l'opposé de *obj* (``-obj``)." #: ../Doc/library/operator.rst:166 msgid "Return the bitwise or of *a* and *b*." -msgstr "" +msgstr "Renvoie le *ou* bit à bit de *a* et *b*." #: ../Doc/library/operator.rst:172 msgid "Return *obj* positive (``+obj``)." -msgstr "" +msgstr "Renvoie la valeur positive de *obj* (``+obj``)." #: ../Doc/library/operator.rst:178 msgid "Return ``a ** b``, for *a* and *b* numbers." -msgstr "" +msgstr "Renvoie ``a ** b`` où *a* et *b* sont des nombres." #: ../Doc/library/operator.rst:186 msgid "Return *a* shifted right by *b*." -msgstr "" +msgstr "Renvoie le décalage de *b* bits vers la droite de *a*." #: ../Doc/library/operator.rst:192 msgid "Return ``a - b``." -msgstr "" +msgstr "Renvoie ``a - b``." #: ../Doc/library/operator.rst:198 msgid "" @@ -166,21 +175,24 @@ msgstr "" #: ../Doc/library/operator.rst:207 msgid "Return the bitwise exclusive or of *a* and *b*." -msgstr "" +msgstr "Renvoie le ou exclusif bit à bit de *a* et *b*." #: ../Doc/library/operator.rst:210 msgid "" "Operations which work with sequences (some of them with mappings too) " "include:" msgstr "" +"Les opérations sur séquences (et pour certaines, sur correspondances) sont :" #: ../Doc/library/operator.rst:215 msgid "Return ``a + b`` for *a* and *b* sequences." -msgstr "" +msgstr "Renvoie ``a + b`` où *a* et *b* sont des séquences." #: ../Doc/library/operator.rst:221 msgid "Return the outcome of the test ``b in a``. Note the reversed operands." msgstr "" +"Renvoie le résultat du test ``b in a``. Notez que les opérandes sont " +"inversées." #: ../Doc/library/operator.rst:223 msgid "The name :func:`__contains__`." @@ -188,11 +200,11 @@ msgstr "" #: ../Doc/library/operator.rst:229 msgid "Return the number of occurrences of *b* in *a*." -msgstr "" +msgstr "Renvoie le nombre d’occurrences de *b* dans *a*." #: ../Doc/library/operator.rst:235 msgid "Remove the value of *a* at index *b*." -msgstr "" +msgstr "Renvoie la valeur de *a* à l'indice *b*." #: ../Doc/library/operator.rst:241 msgid "Delete the slice of *a* from index *b* to index *c-1*." @@ -206,7 +218,7 @@ msgstr "" #: ../Doc/library/operator.rst:251 msgid "Return the value of *a* at index *b*." -msgstr "" +msgstr "Renvoie la valeur de *a* à l'indice *b*." #: ../Doc/library/operator.rst:257 msgid "Return the slice of *a* from index *b* to index *c-1*." @@ -220,7 +232,7 @@ msgstr "" #: ../Doc/library/operator.rst:266 msgid "Return the index of the first of occurrence of *b* in *a*." -msgstr "" +msgstr "Renvoie l'indice de la première occurrence de *b* dans *a*." #: ../Doc/library/operator.rst:272 msgid "Use :func:`__mul__` instead." @@ -240,7 +252,7 @@ msgstr "" #: ../Doc/library/operator.rst:289 msgid "Set the value of *a* at index *b* to *c*." -msgstr "" +msgstr "Affecte *c* dans *a* à l'indice *b*." #: ../Doc/library/operator.rst:295 msgid "Set the slice of *a* from index *b* to index *c-1* to the sequence *v*." @@ -395,6 +407,11 @@ msgid "" "arguments for :func:`map`, :func:`sorted`, :meth:`itertools.groupby`, or " "other functions that expect a function argument." msgstr "" +"Le module :mod:`operator` définit aussi des fonctions pour la recherche " +"générique d'attributs ou d'objets. Elles sont particulièrement utiles pour " +"construire rapidement des accesseurs d'attributs à passer en paramètre à :" +"func:`map`, :func:`sorted`, :meth:`itertools.groupby` ou à toute autre " +"fonction prenant une fonction en paramètre." #: ../Doc/library/operator.rst:496 msgid "" @@ -402,22 +419,29 @@ msgid "" "one attribute is requested, returns a tuple of attributes. The attribute " "names can also contain dots. For example:" msgstr "" +"Renvoie un objet appelable qui récupère *attr* de son opérande. Si plus d'un " +"attribut est demandé, renvoie un n-uplet d'attributs. Les noms des attributs " +"peuvent aussi comporter des points. Par exemple :" #: ../Doc/library/operator.rst:500 msgid "After ``f = attrgetter('name')``, the call ``f(b)`` returns ``b.name``." -msgstr "" +msgstr "Avec ``f = attrgetter('name')``, l'appel ``f(b)`` renvoie ``b.name``." #: ../Doc/library/operator.rst:502 msgid "" "After ``f = attrgetter('name', 'date')``, the call ``f(b)`` returns ``(b." "name, b.date)``." msgstr "" +"Avec ``f = attrgetter('name', 'date')``, l'appel ``f(b)`` renvoie ``(b.name, " +"b.date)``." #: ../Doc/library/operator.rst:505 msgid "" "After ``f = attrgetter('name.first', 'name.last')``, the call ``f(b)`` " "returns ``(b.name.first, b.name.last)``." msgstr "" +"Après ``f = attrgetter('name.first', 'name.last')``, l'appel ``f(b)`` " +"renvoie ``(b.name.first, b.name.last)``." #: ../Doc/library/operator.rst:508 ../Doc/library/operator.rst:547 #: ../Doc/library/operator.rst:597 @@ -438,16 +462,20 @@ msgid "" "operand's :meth:`__getitem__` method. If multiple items are specified, " "returns a tuple of lookup values. For example:" msgstr "" +"Renvoie un objet appelable qui récupère *item* de l'opérande en utilisant la " +"méthode :meth:`__getitem__`. Si plusieurs *item* sont passés en paramètre, " +"renvoie un n-uplet des valeurs récupérées. Par exemple :" #: ../Doc/library/operator.rst:542 msgid "After ``f = itemgetter(2)``, the call ``f(r)`` returns ``r[2]``." -msgstr "" +msgstr "Avec ``f = itemgetter(2)``, ``f(r)`` renvoie ``r[2]``." #: ../Doc/library/operator.rst:544 msgid "" "After ``g = itemgetter(2, 5, 3)``, the call ``g(r)`` returns ``(r[2], r[5], " "r[3])``." msgstr "" +"Avec ``g = itemgetter(2, 5, 3)``, ``g(r)`` renvoie ``(r[2], r[5], r[3])``." #: ../Doc/library/operator.rst:559 msgid "" @@ -455,6 +483,10 @@ msgid "" "method. Dictionaries accept any hashable value. Lists, tuples, and strings " "accept an index or a slice:" msgstr "" +"Les *items* en entrée peuvent être de n'importe quel type tant que celui-ci " +"est géré par la méthode :meth:`__getitem__` de l'opérande. Les dictionnaires " +"acceptent toute valeur hachable. Les listes, n-uplets et chaînes de " +"caractères acceptent un index ou une tranche :" #: ../Doc/library/operator.rst:572 msgid "Added support for multiple item extraction." @@ -465,6 +497,8 @@ msgid "" "Example of using :func:`itemgetter` to retrieve specific fields from a tuple " "record:" msgstr "" +"Exemple d'utilisation de :func:`itemgetter` pour récupérer des champs " +"spécifiques d'un n-uplet :" #: ../Doc/library/operator.rst:588 msgid "" @@ -472,27 +506,34 @@ msgid "" "additional arguments and/or keyword arguments are given, they will be given " "to the method as well. For example:" msgstr "" +"Renvoie un objet appelable qui appelle la méthode *name* de son opérande. Si " +"des paramètres supplémentaires et/ou des paramètres nommés sont donnés, ils " +"seront aussi passés à la méthode. Par exemple :" #: ../Doc/library/operator.rst:592 msgid "" "After ``f = methodcaller('name')``, the call ``f(b)`` returns ``b.name()``." -msgstr "" +msgstr "Avec ``f = methodcaller('name')``, ``f(b)`` renvoie ``b.name()``." #: ../Doc/library/operator.rst:594 msgid "" "After ``f = methodcaller('name', 'foo', bar=1)``, the call ``f(b)`` returns " "``b.name('foo', bar=1)``." msgstr "" +"Avec ``f = methodcaller('name', 'foo', bar=1)``, ``f(b)`` renvoie ``b." +"name('foo', bar=1)``." #: ../Doc/library/operator.rst:610 msgid "Mapping Operators to Functions" -msgstr "" +msgstr "Correspondances entre opérateurs et fonctions" #: ../Doc/library/operator.rst:612 msgid "" "This table shows how abstract operations correspond to operator symbols in " "the Python syntax and the functions in the :mod:`operator` module." msgstr "" +"Le tableau montre la correspondance entre les symboles des opérateurs Python " +"et les fonctions du module :mod:`operator`." #: ../Doc/library/operator.rst:616 msgid "Operation" @@ -500,7 +541,7 @@ msgstr "Opération" #: ../Doc/library/operator.rst:616 msgid "Syntax" -msgstr "" +msgstr "Syntaxe" #: ../Doc/library/operator.rst:616 msgid "Function" @@ -508,7 +549,7 @@ msgstr "Fonction" #: ../Doc/library/operator.rst:618 msgid "Addition" -msgstr "" +msgstr "Addition" #: ../Doc/library/operator.rst:618 msgid "``a + b``" @@ -520,7 +561,7 @@ msgstr "``add(a, b)``" #: ../Doc/library/operator.rst:620 msgid "Concatenation" -msgstr "" +msgstr "Concaténation" #: ../Doc/library/operator.rst:620 msgid "``seq1 + seq2``" @@ -532,7 +573,7 @@ msgstr "``concat(seq1, seq2)``" #: ../Doc/library/operator.rst:622 msgid "Containment Test" -msgstr "" +msgstr "Test d'inclusion" #: ../Doc/library/operator.rst:622 msgid "``obj in seq``" @@ -545,7 +586,7 @@ msgstr "``contains(seq, obj)``" #: ../Doc/library/operator.rst:624 ../Doc/library/operator.rst:627 #: ../Doc/library/operator.rst:630 msgid "Division" -msgstr "" +msgstr "Division" #: ../Doc/library/operator.rst:624 ../Doc/library/operator.rst:627 msgid "``a / b``" @@ -569,7 +610,7 @@ msgstr "``floordiv(a, b)``" #: ../Doc/library/operator.rst:632 msgid "Bitwise And" -msgstr "" +msgstr "*Et* bit à bit" #: ../Doc/library/operator.rst:632 msgid "``a & b``" @@ -581,7 +622,7 @@ msgstr "``and_(a, b)``" #: ../Doc/library/operator.rst:634 msgid "Bitwise Exclusive Or" -msgstr "" +msgstr "*Ou exclusif* bit à bit" #: ../Doc/library/operator.rst:634 msgid "``a ^ b``" @@ -593,7 +634,7 @@ msgstr "``xor(a, b)``" #: ../Doc/library/operator.rst:636 msgid "Bitwise Inversion" -msgstr "" +msgstr "Inversion bit à bit" #: ../Doc/library/operator.rst:636 msgid "``~ a``" @@ -605,7 +646,7 @@ msgstr "``invert(a)``" #: ../Doc/library/operator.rst:638 msgid "Bitwise Or" -msgstr "" +msgstr "*Ou* bit à bit" #: ../Doc/library/operator.rst:638 msgid "``a | b``" @@ -617,7 +658,7 @@ msgstr "``or_(a, b)``" #: ../Doc/library/operator.rst:640 msgid "Exponentiation" -msgstr "" +msgstr "Exponentiation" #: ../Doc/library/operator.rst:640 msgid "``a ** b``" @@ -629,7 +670,7 @@ msgstr "``pow(a, b)``" #: ../Doc/library/operator.rst:642 ../Doc/library/operator.rst:644 msgid "Identity" -msgstr "" +msgstr "Identité" #: ../Doc/library/operator.rst:642 msgid "``a is b``" @@ -649,7 +690,7 @@ msgstr "``is_not(a, b)``" #: ../Doc/library/operator.rst:646 msgid "Indexed Assignment" -msgstr "" +msgstr "Affectation par index" #: ../Doc/library/operator.rst:646 msgid "``obj[k] = v``" @@ -661,7 +702,7 @@ msgstr "``setitem(obj, k, v)``" #: ../Doc/library/operator.rst:648 msgid "Indexed Deletion" -msgstr "" +msgstr "Suppression par index" #: ../Doc/library/operator.rst:648 msgid "``del obj[k]``" @@ -673,7 +714,7 @@ msgstr "``delitem(obj, k)``" #: ../Doc/library/operator.rst:650 msgid "Indexing" -msgstr "" +msgstr "Indexation" #: ../Doc/library/operator.rst:650 msgid "``obj[k]``" @@ -685,7 +726,7 @@ msgstr "``getitem(obj, k)``" #: ../Doc/library/operator.rst:652 msgid "Left Shift" -msgstr "" +msgstr "Décalage bit à bit gauche" #: ../Doc/library/operator.rst:652 msgid "``a << b``" @@ -697,7 +738,7 @@ msgstr "``lshift(a, b)``" #: ../Doc/library/operator.rst:654 msgid "Modulo" -msgstr "" +msgstr "Modulo" #: ../Doc/library/operator.rst:654 msgid "``a % b``" @@ -709,7 +750,7 @@ msgstr "``mod(a, b)``" #: ../Doc/library/operator.rst:656 msgid "Multiplication" -msgstr "" +msgstr "Multiplication" #: ../Doc/library/operator.rst:656 msgid "``a * b``" @@ -721,7 +762,7 @@ msgstr "``mul(a, b)``" #: ../Doc/library/operator.rst:658 msgid "Negation (Arithmetic)" -msgstr "" +msgstr "Opposé" #: ../Doc/library/operator.rst:658 msgid "``- a``" @@ -733,7 +774,7 @@ msgstr "``neg(a)``" #: ../Doc/library/operator.rst:660 msgid "Negation (Logical)" -msgstr "" +msgstr "Négation (logique)" #: ../Doc/library/operator.rst:660 msgid "``not a``" @@ -745,7 +786,7 @@ msgstr "``not_(a)``" #: ../Doc/library/operator.rst:662 msgid "Positive" -msgstr "" +msgstr "Valeur positive" #: ../Doc/library/operator.rst:662 msgid "``+ a``" @@ -757,7 +798,7 @@ msgstr "``pos(a)``" #: ../Doc/library/operator.rst:664 msgid "Right Shift" -msgstr "" +msgstr "Décalage bit à bit droite" #: ../Doc/library/operator.rst:664 msgid "``a >> b``" @@ -781,7 +822,7 @@ msgstr "" #: ../Doc/library/operator.rst:668 msgid "Slice Assignment" -msgstr "" +msgstr "Affectation par tranche" #: ../Doc/library/operator.rst:668 msgid "``seq[i:j] = values``" @@ -793,7 +834,7 @@ msgstr "``setitem(seq, slice(i, j), values)``" #: ../Doc/library/operator.rst:670 msgid "Slice Deletion" -msgstr "" +msgstr "Suppression par tranche" #: ../Doc/library/operator.rst:670 msgid "``del seq[i:j]``" @@ -805,7 +846,7 @@ msgstr "``delitem(seq, slice(i, j))``" #: ../Doc/library/operator.rst:672 msgid "Slicing" -msgstr "" +msgstr "Tranche" #: ../Doc/library/operator.rst:672 msgid "``seq[i:j]``" @@ -817,7 +858,7 @@ msgstr "``getitem(seq, slice(i, j))``" #: ../Doc/library/operator.rst:674 msgid "String Formatting" -msgstr "" +msgstr "Formatage de chaînes de caractères" #: ../Doc/library/operator.rst:674 msgid "``s % obj``" @@ -829,7 +870,7 @@ msgstr "``mod(s, obj)``" #: ../Doc/library/operator.rst:676 msgid "Subtraction" -msgstr "" +msgstr "Soustraction" #: ../Doc/library/operator.rst:676 msgid "``a - b``" @@ -841,7 +882,7 @@ msgstr "``sub(a, b)``" #: ../Doc/library/operator.rst:678 msgid "Truth Test" -msgstr "" +msgstr "Test de véracité" #: ../Doc/library/operator.rst:678 msgid "``obj``" @@ -854,7 +895,7 @@ msgstr "``truth(obj)``" #: ../Doc/library/operator.rst:680 ../Doc/library/operator.rst:682 #: ../Doc/library/operator.rst:688 ../Doc/library/operator.rst:690 msgid "Ordering" -msgstr "" +msgstr "Ordre" #: ../Doc/library/operator.rst:680 msgid "``a < b``" @@ -874,7 +915,7 @@ msgstr "``le(a, b)``" #: ../Doc/library/operator.rst:684 msgid "Equality" -msgstr "" +msgstr "Égalité" #: ../Doc/library/operator.rst:684 msgid "``a == b``" diff --git a/library/optparse.po b/library/optparse.po index 34ef0506..f6ec409b 100644 --- a/library/optparse.po +++ b/library/optparse.po @@ -1785,7 +1785,7 @@ msgstr "" #: ../Doc/library/optparse.rst:1485 msgid "Cleanup" -msgstr "" +msgstr "Nettoyage" #: ../Doc/library/optparse.rst:1487 msgid "" diff --git a/library/pickle.po b/library/pickle.po index ebc4e1dd..74005897 100644 --- a/library/pickle.po +++ b/library/pickle.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/pickle.rst:2 msgid ":mod:`pickle` --- Python object serialization" -msgstr "" +msgstr ":mod:`pickle` --- Module de sérialisation d'objets Python" #: ../Doc/library/pickle.rst:17 msgid "" @@ -44,10 +44,13 @@ msgid "" "constructed data. Never unpickle data received from an untrusted or " "unauthenticated source." msgstr "" +"Le module :mod:`pickle` n'est pas sécurisé contre les données erronées et " +"malicieusement construites. Ne jamais *unpickle* la donnée reçue à partir " +"d'une source non fiable ou non authentifiée." #: ../Doc/library/pickle.rst:36 msgid "Relationship to other Python modules" -msgstr "" +msgstr "Relations aux autres modules python" #: ../Doc/library/pickle.rst:38 msgid "" @@ -77,12 +80,18 @@ msgid "" "Python objects. :mod:`marshal` exists primarily to support Python's :file:`." "pyc` files." msgstr "" +"Python possède un module de bas niveau en sérialisation appelé :mod:" +"`marshal`, mais en général il est préférable d'utiliser :mod:`pickle` pour " +"sérialiser des objets Python. :mod:`marshal` existe principalement pour " +"gérer les fichiers Python en :file:`.pyc`." #: ../Doc/library/pickle.rst:56 msgid "" "The :mod:`pickle` module differs from :mod:`marshal` in several significant " "ways:" msgstr "" +"Le module :mod:`pickle` diffère du module :mod:`marshal` sur plusieurs " +"aspects :" #: ../Doc/library/pickle.rst:58 msgid "" @@ -90,6 +99,9 @@ msgid "" "serialized, so that later references to the same object won't be serialized " "again. :mod:`marshal` doesn't do this." msgstr "" +"Le module :mod:`pickle` garde la trace des objets qu'il a déjà sérialisés, " +"pour faire en sorte que les prochaines références à cet objet ne soient pas " +"sérialisées à nouveau. :mod:`marshal` ne le fait pas." #: ../Doc/library/pickle.rst:62 msgid "" @@ -103,6 +115,14 @@ msgid "" "Shared objects remain shared, which can be very important for mutable " "objects." msgstr "" +"Ça a des implications sur les objets partagés et les objets récursifs. Les " +"objets récursifs sont des objets qui contiennent des références à eux-mêmes. " +"Ceux-ci ne sont pas gérées par marshal : lui donner un objet récursif va le " +"faire planter. Un objet est partagé lorsque que plusieurs références " +"pointent dessus, depuis différents endroits dans la hiérarchie sérialisée. " +"Le module :mod:`pickle` repère ces partages et ne stocke ces objets qu'une " +"seule fois. Les objets partagés restent ainsi partagés, ce qui peut être " +"très important pour les objets muables." #: ../Doc/library/pickle.rst:71 msgid "" @@ -111,6 +131,11 @@ msgid "" "transparently, however the class definition must be importable and live in " "the same module as when the object was stored." msgstr "" +":mod:`marshal` ne peut être utilisé pour la sérialisation et l'instanciation " +"de classes définies par les utilisateurs. :mod:`pickle` peut sauvegarder et " +"restaurer les instances de classes de manière transparente. Cependant la " +"définition de classe doit être importable et lancée dans le même module et " +"de la même manière que lors de son importation." #: ../Doc/library/pickle.rst:76 msgid "" diff --git a/library/plistlib.po b/library/plistlib.po index 7642f6ce..c89773a0 100644 --- a/library/plistlib.po +++ b/library/plistlib.po @@ -70,7 +70,7 @@ msgstr "" #: ../Doc/library/plistlib.rst:44 msgid "This module defines the following functions:" -msgstr "" +msgstr "Ce module définit les fonctions suivantes :" #: ../Doc/library/plistlib.rst:48 msgid "" diff --git a/library/poplib.po b/library/poplib.po index 82bfbe73..9102607c 100644 --- a/library/poplib.po +++ b/library/poplib.po @@ -81,7 +81,7 @@ msgstr "" #: ../Doc/library/poplib.rst:64 msgid "Module :mod:`imaplib`" -msgstr "" +msgstr "Module :mod:`imaplib`" #: ../Doc/library/poplib.rst:64 msgid "The standard Python IMAP module." diff --git a/library/pprint.po b/library/pprint.po index aca4420e..e90add65 100644 --- a/library/pprint.po +++ b/library/pprint.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/pprint.rst:2 msgid ":mod:`pprint` --- Data pretty printer" -msgstr "" +msgstr ":mod:`pprint` — L’affichage élégant de données" #: ../Doc/library/pprint.rst:9 msgid "**Source code:** :source:`Lib/pprint.py`" @@ -42,6 +42,10 @@ msgid "" "Construct :class:`PrettyPrinter` objects explicitly if you need to adjust " "the width constraint." msgstr "" +"L’affichage formaté affiche tant que possible les objets sur une seule " +"ligne, et les sépare sur plusieurs lignes s’ils dépassent la largeur " +"autorisée par l’interpréteur. Créez explicitement des objets :class:" +"`PrettyPrinter` si vous avez besoin de modifier les limites de largeur." #: ../Doc/library/pprint.rst:25 msgid "" @@ -56,7 +60,7 @@ msgstr "" #: ../Doc/library/pprint.rst:34 msgid "The :mod:`pprint` module defines one class:" -msgstr "" +msgstr "Le module :mod:`pprint` définit une seule classe : ::" #: ../Doc/library/pprint.rst:41 msgid "" @@ -107,14 +111,17 @@ msgid "" "can be used to reconstruct the value using :func:`eval`. This always " "returns ``False`` for recursive objects." msgstr "" +"Détermine si la représentation formatée de *object* est « lisible », ou s’il " +"peut être utilisé pour recomposer sa valeur en utilisant la fonction :func:" +"`eval`. Cela renvoie toujours ``False`` pour les objets récursifs." #: ../Doc/library/pprint.rst:123 msgid "Determine if *object* requires a recursive representation." -msgstr "" +msgstr "Détermine si *object* requiert une représentation récursive." #: ../Doc/library/pprint.rst:126 msgid "One more support function is also defined:" -msgstr "" +msgstr "Une dernière fonction de support est définie ainsi : ::" #: ../Doc/library/pprint.rst:130 msgid "" @@ -123,26 +130,37 @@ msgid "" "the recursive reference will be represented as ````. The representation is not otherwise formatted." msgstr "" +"Renvoie une représentation de *object* sous forme de chaîne de caractère, " +"celle-ci est protégée contre les structures de données récursives. Si la " +"représentation de *object* présente une entrée récursive, celle-ci sera " +"représentée telle que ````. Par " +"ailleurs, la représentation de l’objet n’est pas formatée." #: ../Doc/library/pprint.rst:142 msgid "PrettyPrinter Objects" -msgstr "" +msgstr "Les Objets PrettyPrinter" #: ../Doc/library/pprint.rst:144 msgid ":class:`PrettyPrinter` instances have the following methods:" msgstr "" +"Les instances de la classe :class:`PrettyPrinter` ont les méthodes " +"suivantes : ::" #: ../Doc/library/pprint.rst:149 msgid "" "Return the formatted representation of *object*. This takes into account " "the options passed to the :class:`PrettyPrinter` constructor." msgstr "" +"Renvoie la représentation formatée de *object*. Cela prend en compte les " +"options passées au constructeur de la classe :class:`PrettyPrinter`." #: ../Doc/library/pprint.rst:155 msgid "" "Print the formatted representation of *object* on the configured stream, " "followed by a newline." msgstr "" +"Affiche sur le flux configuré la représentation formatée de *object*, suivie " +"d’une fin de ligne." #: ../Doc/library/pprint.rst:158 msgid "" @@ -151,6 +169,10 @@ msgid "" "more efficient since new :class:`PrettyPrinter` objects don't need to be " "created." msgstr "" +"Les méthodes suivantes fournissent les implémentations pour les fonctions " +"correspondantes de mêmes noms. L’utilisation de ces méthodes sur une " +"instance est légèrement plus efficace, car les nouveaux objets :class:" +"`PrettyPrinter` n’ont pas besoin d’être créés." #: ../Doc/library/pprint.rst:168 msgid "" @@ -160,10 +182,15 @@ msgid "" "class:`PrettyPrinter` is set and the object is deeper than allowed, this " "returns ``False``." msgstr "" +"Détermine si la représentation formatée de *object* est « lisible », ou si " +"elle peut être utilisée pour recomposer sa valeur en utilisant la fonction :" +"func:`eval`. Cela renvoie toujours ``False`` pour les objets récursifs. Si " +"le paramètre *depth* de la classe :class:`PrettyPrinter` est initialisé et " +"que l’objet est plus « profond » que permis, cela renvoie ``False``." #: ../Doc/library/pprint.rst:177 msgid "Determine if the object requires a recursive representation." -msgstr "" +msgstr "Détermine si l’objet nécessite une représentation récursive." #: ../Doc/library/pprint.rst:179 msgid "" @@ -171,6 +198,10 @@ msgid "" "objects are converted to strings. The default implementation uses the " "internals of the :func:`saferepr` implementation." msgstr "" +"Cette méthode est fournie sous forme de point d’entrée ou méthode (à " +"déclenchement) automatique (*hook* en anglais) pour permettre aux sous-" +"classes de modifier la façon dont les objets sont convertis en chaînes. " +"L’implémentation par défaut est celle de la fonction :func:`saferepr`." #: ../Doc/library/pprint.rst:186 msgid "" @@ -189,6 +220,21 @@ msgid "" "the current level; recursive calls should be passed a value less than that " "of the current call." msgstr "" +"Renvoie trois valeurs : la version formatée de *object* sous forme de chaîne " +"de caractères, une option indiquant si le résultat est « lisible », et une " +"option indiquant si une récursion a été détectée. Le premier argument est " +"l’objet à représenter. Le deuxième est un dictionnaire qui contient l'\\ :" +"func:`id` des objets (conteneurs directs ou indirects de *objet* qui " +"affectent sa représentation) qui font partie du contexte de représentation " +"courant tel que les clés; si un objet doit être représenté, mais l’a déjà " +"été dans ce contexte, le troisième argument renvoie ``True``. Des appels " +"récursifs à la méthode :meth:`.format` doivent ajouter des entrés " +"additionnelles aux conteneurs de ce dictionnaire. Le troisième argument " +"*maxlevels*, donne la limite maximale de récursivité; la valeur par défaut " +"est ``0``. Cet argument doit être passé non modifié pour des appels non " +"récursifs. Le quatrième argument, *level*, donne le niveau de récursivité " +"courant; les appels récursifs doivent être passés à une valeur inférieure à " +"celle de l’appel courant." #: ../Doc/library/pprint.rst:205 msgid "pprint Example" diff --git a/library/pwd.po b/library/pwd.po index 9d18beb9..4b5fb2cb 100644 --- a/library/pwd.po +++ b/library/pwd.po @@ -35,7 +35,7 @@ msgstr "" #: ../Doc/library/pwd.rst:18 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/pwd.rst:18 msgid "Attribute" @@ -55,7 +55,7 @@ msgstr "``pw_name``" #: ../Doc/library/pwd.rst:20 msgid "Login name" -msgstr "" +msgstr "Nom d’utilisateur" #: ../Doc/library/pwd.rst:22 msgid "1" @@ -115,7 +115,7 @@ msgstr "``pw_dir``" #: ../Doc/library/pwd.rst:30 msgid "User home directory" -msgstr "" +msgstr "Répertoire d’accueil de l’utilisateur" #: ../Doc/library/pwd.rst:32 msgid "6" @@ -166,11 +166,11 @@ msgstr "" #: ../Doc/library/pwd.rst:72 msgid "Module :mod:`grp`" -msgstr "" +msgstr "Module :mod:`grp`" #: ../Doc/library/pwd.rst:72 msgid "An interface to the group database, similar to this." -msgstr "" +msgstr "Interface pour la base de données des groupes, similaire à celle-ci." #: ../Doc/library/pwd.rst:74 msgid "Module :mod:`spwd`" diff --git a/library/random.po b/library/random.po index c61744d5..fe3da5cd 100644 --- a/library/random.po +++ b/library/random.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/random.rst:2 msgid ":mod:`random` --- Generate pseudo-random numbers" -msgstr "" +msgstr ":mod:`random` --- Génère des nombres pseudo-aléatoires" #: ../Doc/library/random.rst:7 msgid "**Source code:** :source:`Lib/random.py`" @@ -29,6 +29,8 @@ msgid "" "This module implements pseudo-random number generators for various " "distributions." msgstr "" +"Ce module implémente des générateurs de nombres pseudo-aléatoires pour " +"différentes distributions." #: ../Doc/library/random.rst:14 msgid "" @@ -43,6 +45,10 @@ msgid "" "lognormal, negative exponential, gamma, and beta distributions. For " "generating distributions of angles, the von Mises distribution is available." msgstr "" +"Pour l'ensemble des réels, il y a des fonctions pour calculer des " +"distributions uniformes, normales (gaussiennes), log-normales, " +"exponentielles négatives, gamma et bêta. Pour générer des distributions " +"d'angles, la distribution de *von Mises* est disponible." #: ../Doc/library/random.rst:22 msgid "" @@ -55,6 +61,16 @@ msgid "" "However, being completely deterministic, it is not suitable for all " "purposes, and is completely unsuitable for cryptographic purposes." msgstr "" +"Presque toutes les fonctions du module dépendent de la fonction de base :" +"func:`.random`, qui génère un nombre à virgule flottante aléatoire de façon " +"uniforme dans la plage semi-ouverte [0.0, 1.0). Python utilise l'algorithme " +"*Mersenne Twister* comme générateur de base. Il produit des flottants de " +"précision de 53 bits et a une période de 2\\*\\*\\*19937-1. L'implémentation " +"sous-jacente en C est à la fois rapide et compatible avec les programmes " +"ayant de multiples fils d'exécution. Le *Mersenne Twister* est l'un des " +"générateurs de nombres aléatoires les plus largement testés qui existent. " +"Cependant, étant complètement déterministe, il n'est pas adapté à tous les " +"usages et est totalement inadapté à des fins cryptographiques." #: ../Doc/library/random.rst:31 msgid "" diff --git a/library/resource.po b/library/resource.po index 9bc130ba..c778034b 100644 --- a/library/resource.po +++ b/library/resource.po @@ -221,7 +221,7 @@ msgstr "" #: ../Doc/library/resource.rst:181 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/resource.rst:181 msgid "Field" diff --git a/library/rfc822.po b/library/rfc822.po index 87a5617f..8ea70a51 100644 --- a/library/rfc822.po +++ b/library/rfc822.po @@ -159,7 +159,7 @@ msgstr "" #: ../Doc/library/rfc822.rst:131 msgid "Module :mod:`email`" -msgstr "" +msgstr "Module :mod:`email`" #: ../Doc/library/rfc822.rst:131 msgid "" @@ -168,7 +168,7 @@ msgstr "" #: ../Doc/library/rfc822.rst:134 msgid "Module :mod:`mailbox`" -msgstr "" +msgstr "Module :mod:`mailbox`" #: ../Doc/library/rfc822.rst:134 msgid "" diff --git a/library/shutil.po b/library/shutil.po index 971fe6b3..1056faf3 100644 --- a/library/shutil.po +++ b/library/shutil.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/shutil.rst:2 msgid ":mod:`shutil` --- High-level file operations" -msgstr "" +msgstr ":mod:`shutil` --- Opérations de haut niveau sur les fichiers" #: ../Doc/library/shutil.rst:13 msgid "**Source code:** :source:`Lib/shutil.py`" diff --git a/library/socketserver.po b/library/socketserver.po index f72c9a1a..cf3d4a23 100644 --- a/library/socketserver.po +++ b/library/socketserver.po @@ -202,7 +202,7 @@ msgstr "" #: ../Doc/library/socketserver.rst:171 msgid "Server Objects" -msgstr "" +msgstr "Objets Serveur" #: ../Doc/library/socketserver.rst:175 msgid "" diff --git a/library/spwd.po b/library/spwd.po index 5f4eb5be..a8d53807 100644 --- a/library/spwd.po +++ b/library/spwd.po @@ -18,19 +18,24 @@ msgstr "" #: ../Doc/library/spwd.rst:3 msgid ":mod:`spwd` --- The shadow password database" -msgstr "" +msgstr ":mod:`spwd` — La base de données de mots de passe *shadow*" #: ../Doc/library/spwd.rst:12 msgid "" "This module provides access to the Unix shadow password database. It is " "available on various Unix versions." msgstr "" +"Ce module permet d'accéder à la base de données UNIX de mots de passe " +"*shadow*. Elle est disponible sur différentes versions d'UNIX." #: ../Doc/library/spwd.rst:15 msgid "" "You must have enough privileges to access the shadow password database (this " "usually means you have to be root)." msgstr "" +"Vous devez disposer des droits suffisants pour accéder à la base de données " +"de mots de passe *shadow* (cela signifie généralement que vous devez être " +"*root*)." #: ../Doc/library/spwd.rst:18 msgid "" @@ -38,10 +43,14 @@ msgid "" "attributes correspond to the members of the ``spwd`` structure (Attribute " "field below, see ````):" msgstr "" +"Les entrées de la base de données de mots de passe *shadow* sont renvoyées " +"comme un objet semblable à un tuple, dont les attributs correspondent aux " +"membres de la structure ``spwd`` (champ attribut ci-dessous, voir ````) :" #: ../Doc/library/spwd.rst:23 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/spwd.rst:23 msgid "Attribute" @@ -61,7 +70,7 @@ msgstr "" #: ../Doc/library/spwd.rst:25 msgid "Login name" -msgstr "" +msgstr "Nom d’utilisateur" #: ../Doc/library/spwd.rst:27 msgid "1" @@ -73,7 +82,7 @@ msgstr "" #: ../Doc/library/spwd.rst:27 msgid "Encrypted password" -msgstr "" +msgstr "Mot de passe haché" #: ../Doc/library/spwd.rst:29 msgid "2" @@ -85,7 +94,7 @@ msgstr "``sp_lstchg``" #: ../Doc/library/spwd.rst:29 msgid "Date of last change" -msgstr "" +msgstr "Date du dernier changement" #: ../Doc/library/spwd.rst:31 msgid "3" @@ -97,7 +106,7 @@ msgstr "``sp_min``" #: ../Doc/library/spwd.rst:31 msgid "Minimal number of days between changes" -msgstr "" +msgstr "Nombre minimal de jours entre les modifications" #: ../Doc/library/spwd.rst:34 msgid "4" @@ -109,7 +118,7 @@ msgstr "``sp_max``" #: ../Doc/library/spwd.rst:34 msgid "Maximum number of days between changes" -msgstr "" +msgstr "Nombre maximal de jours entre les modifications" #: ../Doc/library/spwd.rst:37 msgid "5" @@ -122,6 +131,8 @@ msgstr "``sp_warn``" #: ../Doc/library/spwd.rst:37 msgid "Number of days before password expires to warn user about it" msgstr "" +"Nombre de jours avant l'expiration du mot de passe pendant lequel " +"l'utilisateur doit être prévenu" #: ../Doc/library/spwd.rst:40 msgid "6" @@ -172,25 +183,31 @@ msgstr "" #: ../Doc/library/spwd.rst:58 msgid "Return the shadow password database entry for the given user name." msgstr "" +"Renvoie l'entrée de base de données de mot de passe *shadow* pour le nom " +"d'utilisateur donné." #: ../Doc/library/spwd.rst:63 msgid "" "Return a list of all available shadow password database entries, in " "arbitrary order." msgstr "" +"Renvoie une liste de toutes les entrées de la base de données de mots de " +"passe *shadow*, dans un ordre arbitraire." #: ../Doc/library/spwd.rst:70 msgid "Module :mod:`grp`" -msgstr "" +msgstr "Module :mod:`grp`" #: ../Doc/library/spwd.rst:70 msgid "An interface to the group database, similar to this." -msgstr "" +msgstr "Interface pour la base de données des groupes, similaire à celle-ci." #: ../Doc/library/spwd.rst:72 msgid "Module :mod:`pwd`" -msgstr "" +msgstr "Module :mod:`pwd`" #: ../Doc/library/spwd.rst:73 msgid "An interface to the normal password database, similar to this." msgstr "" +"Interface pour la base de données (normale) des mots de passe, semblable à " +"ceci." diff --git a/library/sqlite3.po b/library/sqlite3.po index 5fa62fd4..74881f53 100644 --- a/library/sqlite3.po +++ b/library/sqlite3.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/sqlite3.rst:2 msgid ":mod:`sqlite3` --- DB-API 2.0 interface for SQLite databases" -msgstr "" +msgstr ":mod:`sqlite3` — Interface DB-API 2.0 pour bases de données SQLite" #: ../Doc/library/sqlite3.rst:11 msgid "" @@ -29,6 +29,13 @@ msgid "" "application using SQLite and then port the code to a larger database such as " "PostgreSQL or Oracle." msgstr "" +"SQLite est une bibliothèque C qui fournit une base de données légère sur " +"disque ne nécessitant pas de processus serveur et qui utilise une variante " +"(non standard) du langage de requête SQL pour accéder aux données. Certaines " +"applications peuvent utiliser SQLite pour le stockage de données internes. " +"Il est également possible de créer une application prototype utilisant " +"SQLite, puis de modifier le code pour utiliser une base de données plus " +"robuste telle que PostgreSQL ou Oracle." #: ../Doc/library/sqlite3.rst:18 msgid "" @@ -36,6 +43,8 @@ msgid "" "interface compliant with the DB-API 2.0 specification described by :pep:" "`249`." msgstr "" +"Le module *sqlite3* a été écrit par Gerhard Häring. Il fournit une " +"interface SQL conforme à la spécification DB-API 2.0 décrite par :pep:`249`." #: ../Doc/library/sqlite3.rst:21 msgid "" @@ -43,23 +52,33 @@ msgid "" "represents the database. Here the data will be stored in the :file:`example." "db` file::" msgstr "" +"Pour utiliser le module, vous devez d’abord créer une :class:`Connection` " +"qui représente la base de données. Dans cet exemple, les données sont " +"stockées dans le fichier :file:`example.db` ::" #: ../Doc/library/sqlite3.rst:28 msgid "" "You can also supply the special name ``:memory:`` to create a database in " "RAM." msgstr "" +"Vous pouvez également fournir le nom spécial ``:memory:`` pour créer une " +"base de données dans la mémoire vive." #: ../Doc/library/sqlite3.rst:30 msgid "" "Once you have a :class:`Connection`, you can create a :class:`Cursor` " "object and call its :meth:`~Cursor.execute` method to perform SQL commands::" msgstr "" +"Une fois que vous avez une instance de :class:`Connection`, vous pouvez " +"créer un objet :class:`Cursor` et appeler sa méthode :meth:`~Cursor.execute` " +"pour exécuter les commandes SQL ::" #: ../Doc/library/sqlite3.rst:49 msgid "" "The data you've saved is persistent and is available in subsequent sessions::" msgstr "" +"Les données que vous avez sauvegardées sont persistantes et disponibles dans " +"les sessions suivantes ::" #: ../Doc/library/sqlite3.rst:55 msgid "" @@ -68,6 +87,11 @@ msgid "" "doing so is insecure; it makes your program vulnerable to an SQL injection " "attack (see https://xkcd.com/327/ for humorous example of what can go wrong)." msgstr "" +"Habituellement, vos opérations SQL utilisent les valeurs de variables " +"Python. Vous ne devez pas assembler votre requête à l'aide des opérations " +"sur les chaînes de caractères de Python, car cela n'est pas sûr. Cela rend " +"votre programme vulnérable à une attaque par injection SQL (voir https://" +"xkcd.com/327/ pour un exemple amusant de ce qui peut mal tourner)." #: ../Doc/library/sqlite3.rst:60 msgid "" @@ -77,6 +101,11 @@ msgid "" "method. (Other database modules may use a different placeholder, such as ``" "%s`` or ``:1``.) For example::" msgstr "" +"À la place, utilisez la capacité DB-API de substitution des paramètres. " +"Placez un ``?`` comme indicateur partout où vous voulez utiliser une valeur, " +"puis fournissez un *tuple* de valeurs comme second argument de la méthode :" +"meth:`~Cursor.execute`. D'autres modules de base de données peuvent utiliser " +"un espace réservé différent, tel que ``%s`` ou ``:1``. Par exemple ::" #: ../Doc/library/sqlite3.rst:82 msgid "" @@ -85,30 +114,39 @@ msgid "" "fetchone` method to retrieve a single matching row, or call :meth:`~Cursor." "fetchall` to get a list of the matching rows." msgstr "" +"Pour récupérer des données après avoir exécuté une instruction *SELECT*, " +"vous pouvez considérer le curseur comme un :term:`itérateur `, " +"appeler la méthode du curseur :meth:`~Cursor.fetchone` pour récupérer une " +"seule ligne correspondante ou appeler :meth:`~Cursor.fetchall` pour obtenir " +"une liste des lignes correspondantes." #: ../Doc/library/sqlite3.rst:87 msgid "This example uses the iterator form::" -msgstr "" +msgstr "Cet exemple utilise la forme itérateur ::" #: ../Doc/library/sqlite3.rst:102 msgid "https://github.com/ghaering/pysqlite" -msgstr "" +msgstr "https://github.com/ghaering/pysqlite" #: ../Doc/library/sqlite3.rst:101 msgid "" "The pysqlite web page -- sqlite3 is developed externally under the name " "\"pysqlite\"." msgstr "" +"La page web de *pysqlite* — *sqlite3* est développée sur un site tiers sous " +"le nom *pysqlite*." #: ../Doc/library/sqlite3.rst:106 msgid "https://www.sqlite.org" -msgstr "" +msgstr "https://www.sqlite.org" #: ../Doc/library/sqlite3.rst:105 msgid "" "The SQLite web page; the documentation describes the syntax and the " "available data types for the supported SQL dialect." msgstr "" +"Dans la page Web de SQLite, la documentation décrit la syntaxe et les types " +"de données disponibles qui sont pris en charge par cette variante SQL." #: ../Doc/library/sqlite3.rst:109 msgid "http://www.w3schools.com/sql/" @@ -116,46 +154,56 @@ msgstr "" #: ../Doc/library/sqlite3.rst:109 msgid "Tutorial, reference and examples for learning SQL syntax." -msgstr "" +msgstr "Tutoriel, référence et exemples pour apprendre la syntaxe SQL." #: ../Doc/library/sqlite3.rst:111 msgid ":pep:`249` - Database API Specification 2.0" -msgstr "" +msgstr ":pep:`249` — Spécifications de l'API 2.0 pour la base de données" #: ../Doc/library/sqlite3.rst:112 msgid "PEP written by Marc-André Lemburg." -msgstr "" +msgstr "PEP écrite par Marc-André Lemburg." #: ../Doc/library/sqlite3.rst:118 msgid "Module functions and constants" -msgstr "" +msgstr "Fonctions et constantes du module" #: ../Doc/library/sqlite3.rst:123 msgid "" "The version number of this module, as a string. This is not the version of " "the SQLite library." msgstr "" +"Le numéro de version de ce module, sous forme de chaîne. Ce n'est pas la " +"version de la bibliothèque SQLite." #: ../Doc/library/sqlite3.rst:128 msgid "" "The version number of this module, as a tuple of integers. This is not the " "version of the SQLite library." msgstr "" +"Le numéro de version de ce module, sous forme d'un n-uplet d'entiers. Ce " +"n'est pas la version de la bibliothèque SQLite." #: ../Doc/library/sqlite3.rst:133 msgid "The version number of the run-time SQLite library, as a string." msgstr "" +"Le numéro de version de la bibliothèque d'exécution SQLite, sous forme de " +"chaîne." #: ../Doc/library/sqlite3.rst:137 msgid "" "The version number of the run-time SQLite library, as a tuple of integers." msgstr "" +"Le numéro de version de la bibliothèque d'exécution SQLite, sous forme " +"d'entier." #: ../Doc/library/sqlite3.rst:141 ../Doc/library/sqlite3.rst:154 msgid "" "This constant is meant to be used with the *detect_types* parameter of the :" "func:`connect` function." msgstr "" +"Cette constante est destinée à être utilisée avec le paramètre " +"*detect_types* de la fonction :func:`connect`." #: ../Doc/library/sqlite3.rst:144 msgid "" @@ -166,6 +214,11 @@ msgid "" "look into the converters dictionary and use the converter function " "registered for that type there." msgstr "" +"Si elle est définie, le module :mod:`sqlite3` analyse le type de donnée " +"déclarée pour chaque colonne. Il déduit le type du premier mot de la " +"déclaration, par exemple de *integer primary key* il gardera *integer*, ou " +"de *number(10)* il gardera *number*. Ensuite, pour cette colonne, il " +"utilisera une fonction de conversion du dictionnaire des convertisseurs." #: ../Doc/library/sqlite3.rst:157 msgid "" @@ -179,6 +232,14 @@ msgid "" "parse out everything until the first blank for the column name: the column " "name would simply be \"x\"." msgstr "" +"Permet à l’interface SQLite d'analyser le nom pour chaque colonne. Il y " +"cherchera une chaîne comme ``[mytype]`` indiquant que la colonne est de type " +"``mytype``. Il essaiera de trouver une entrée *mytype* dans le dictionnaire, " +"puis utilisera la fonction de conversion qui s'y trouve pour renvoyer la " +"valeur. Le nom de colonne donnée à :attr:`Cursor.description` n'est alors " +"que le premier mot du nom de la colonne, par exemple si vous utilisez ``'as " +"\\\"x [datetime]\\\"'`` dans votre code SQL, le nom de la colonne sera " +"simplement *x*." #: ../Doc/library/sqlite3.rst:169 msgid "" @@ -279,7 +340,7 @@ msgstr "" #: ../Doc/library/sqlite3.rst:246 msgid "Connection Objects" -msgstr "" +msgstr "Objets de connexions" #: ../Doc/library/sqlite3.rst:250 msgid "A SQLite database connection has the following attributes and methods:" @@ -738,11 +799,11 @@ msgstr "Type Python" #: ../Doc/library/sqlite3.rst:693 ../Doc/library/sqlite3.rst:713 msgid "SQLite type" -msgstr "" +msgstr "SQLite type" #: ../Doc/library/sqlite3.rst:695 ../Doc/library/sqlite3.rst:715 msgid ":const:`None`" -msgstr "" +msgstr ":const:`None`" #: ../Doc/library/sqlite3.rst:695 ../Doc/library/sqlite3.rst:715 msgid "``NULL``" diff --git a/library/stringprep.po b/library/stringprep.po index ecdd17e0..9530b734 100644 --- a/library/stringprep.po +++ b/library/stringprep.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/stringprep.rst:3 msgid ":mod:`stringprep` --- Internet String Preparation" -msgstr "" +msgstr ":mod:`stringprep` — Préparation des chaines de caractères internet" #: ../Doc/library/stringprep.rst:13 msgid "" @@ -29,6 +29,13 @@ msgid "" "possible identifications, to allow only identifications consisting of " "\"printable\" characters." msgstr "" +"Nommer les différentes choses d'internet (comme les hôtes) amène souvent au " +"besoin de comparer ces identifiants, ce qui nécessite un critère " +"d'« égalité ». La manière dont cette comparaison est effectuée dépend du " +"domaine d'application, c'est-à-dire si elle doit être sensible à la casse ou " +"non. Il peut être aussi nécessaire de restreindre les identifiants " +"possibles, pour permettre uniquement les identifiants composés de caractères " +"« imprimables »." #: ../Doc/library/stringprep.rst:20 msgid "" @@ -41,6 +48,15 @@ msgid "" "``stringprep`` profile is ``nameprep``, which is used for internationalized " "domain names." msgstr "" +"La :rfc:`3454` définit une procédure pour \"préparer\" des chaines de " +"caractères Unicode dans les protocoles internet. Avant de passer des chaines " +"de caractères sur le câble, elles sont traitées avec la procédure de " +"préparation, après laquelle ils obtiennent une certaines forme normalisée. " +"Les RFC définissent un lot de tables, qui peuvent être combinées en profils. " +"Chaque profil doit définir quelles tables il utilise et quelles autres " +"parties optionnelles de la procédure *stringprep* font partie du profil. Un " +"exemple de profil *stringprep* est *nameprep*, qui est utilisé pour les noms " +"de domaine internationalisés." #: ../Doc/library/stringprep.rst:28 msgid "" @@ -59,100 +75,135 @@ msgid "" "the mapping function: given the key, it returns the associated value. Below " "is a list of all functions available in the module." msgstr "" +"En conséquence, ces tables sont exposées en tant que fonctions et non en " +"structures de données. Il y a deux types de tables dans la RFC : les " +"ensemble et les mises en correspondance. Pour un ensemble, :mod:`stringprep` " +"fournit la \"fonction caractéristique\", c'est-à-dire une fonction qui " +"renvoie vrai si le paramètre fait partie de l'ensemble. Pour les mises en " +"correspondance, il fournit la fonction de mise en correspondance : ayant " +"obtenu la clé, il renvoie la valeur associée. Ci-dessous se trouve une liste " +"de toutes les fonctions disponibles dans le module." #: ../Doc/library/stringprep.rst:43 msgid "" "Determine whether *code* is in tableA.1 (Unassigned code points in Unicode " "3.2)." msgstr "" +"Détermine si le code est en table A.1 (points de code non-assigné dans " +"Unicode 3.2)." #: ../Doc/library/stringprep.rst:48 msgid "Determine whether *code* is in tableB.1 (Commonly mapped to nothing)." msgstr "" +"Détermine si le code est en table B.1 (habituellement mis en correspondance " +"avec rien)." #: ../Doc/library/stringprep.rst:53 msgid "" "Return the mapped value for *code* according to tableB.2 (Mapping for case-" "folding used with NFKC)." msgstr "" +"Renvoie la valeur correspondante à *code* selon la table B.2 (mise en " +"correspondance pour la gestion de la casse utilisée avec *NFKC*)." #: ../Doc/library/stringprep.rst:59 msgid "" "Return the mapped value for *code* according to tableB.3 (Mapping for case-" "folding used with no normalization)." msgstr "" +"Renvoie la valeur correspondante à *code* dans la table B.3 (mise en " +"correspondance pour la gestion de la casse utilisée sans normalisation)." #: ../Doc/library/stringprep.rst:65 msgid "Determine whether *code* is in tableC.1.1 (ASCII space characters)." msgstr "" +"Détermine si le code est dans la table C.1.1 (caractères d'espacement ASCII)." #: ../Doc/library/stringprep.rst:70 msgid "" "Determine whether *code* is in tableC.1.2 (Non-ASCII space characters)." msgstr "" +"Détermine si le code est dans la table C.1.2 (caractères d'espacement non " +"ASCII)." #: ../Doc/library/stringprep.rst:75 msgid "" "Determine whether *code* is in tableC.1 (Space characters, union of C.1.1 " "and C.1.2)." msgstr "" +"Détermine si le code est dans la table C.1 (caractères d'espacement, union " +"de C.1.1 et C.1.2)." #: ../Doc/library/stringprep.rst:81 msgid "Determine whether *code* is in tableC.2.1 (ASCII control characters)." msgstr "" +"Détermine si le code est dans la table C.2.1 (caractères de contrôle ASCII)." #: ../Doc/library/stringprep.rst:86 msgid "" "Determine whether *code* is in tableC.2.2 (Non-ASCII control characters)." msgstr "" +"Détermine si le code est en table C.2.2 (caractères de contrôle non ASCII)." #: ../Doc/library/stringprep.rst:91 msgid "" "Determine whether *code* is in tableC.2 (Control characters, union of C.2.1 " "and C.2.2)." msgstr "" +"Détermine si le code est dans la table C.2 (caractères de contrôle, union de " +"C.2.1 et C.2.2)." #: ../Doc/library/stringprep.rst:97 msgid "Determine whether *code* is in tableC.3 (Private use)." -msgstr "" +msgstr "Détermine si le code est en table C.3 (usage privé)." #: ../Doc/library/stringprep.rst:102 msgid "Determine whether *code* is in tableC.4 (Non-character code points)." msgstr "" +"Détermine si le code est dans la table C.4 (points de code non-caractère)." #: ../Doc/library/stringprep.rst:107 msgid "Determine whether *code* is in tableC.5 (Surrogate codes)." -msgstr "" +msgstr "Détermine si le code est en table C.5 (codes substituts)." #: ../Doc/library/stringprep.rst:112 msgid "" "Determine whether *code* is in tableC.6 (Inappropriate for plain text)." msgstr "" +"Détermine si le code est dans la table C.6 (Inapproprié pour texte brut)." #: ../Doc/library/stringprep.rst:117 msgid "" "Determine whether *code* is in tableC.7 (Inappropriate for canonical " "representation)." msgstr "" +"Détermine si le code est dans la table C.7 (inapproprié pour les " +"représentations *canonics1*)." #: ../Doc/library/stringprep.rst:123 msgid "" "Determine whether *code* is in tableC.8 (Change display properties or are " "deprecated)." msgstr "" +"Détermine si le code est dans la table C.8 (change de propriétés d'affichage " +"ou sont obsolètes)." #: ../Doc/library/stringprep.rst:129 msgid "Determine whether *code* is in tableC.9 (Tagging characters)." -msgstr "" +msgstr "Détermine si le code est dans la table C.9 (caractères de marquage)." #: ../Doc/library/stringprep.rst:134 msgid "" "Determine whether *code* is in tableD.1 (Characters with bidirectional " "property \"R\" or \"AL\")." msgstr "" +"Détermine si le code est en table D.1 (caractères avec propriété " +"bidirectionnelle \"R\" ou \"AL\")." #: ../Doc/library/stringprep.rst:140 msgid "" "Determine whether *code* is in tableD.2 (Characters with bidirectional " "property \"L\")." msgstr "" +"Détermine si le code est dans la table D.2 (caractères avec propriété " +"bidirectionnelle \"L\")." diff --git a/library/sysconfig.po b/library/sysconfig.po index fb382f4c..60c8bf32 100644 --- a/library/sysconfig.po +++ b/library/sysconfig.po @@ -298,7 +298,7 @@ msgstr "" #: ../Doc/library/sysconfig.rst:181 msgid "Examples of returned values:" -msgstr "" +msgstr "Exemples de valeurs renvoyées :" #: ../Doc/library/sysconfig.rst:183 msgid "linux-i586" diff --git a/library/telnetlib.po b/library/telnetlib.po index ac5772ac..e92a94e1 100644 --- a/library/telnetlib.po +++ b/library/telnetlib.po @@ -180,7 +180,7 @@ msgstr "" #: ../Doc/library/telnetlib.rst:157 msgid "Close the connection." -msgstr "" +msgstr "Ferme la connexion." #: ../Doc/library/telnetlib.rst:162 msgid "Return the socket object used internally." diff --git a/library/tempfile.po b/library/tempfile.po index 42eb7060..316c82e7 100644 --- a/library/tempfile.po +++ b/library/tempfile.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/tempfile.rst:2 msgid ":mod:`tempfile` --- Generate temporary files and directories" -msgstr "" +msgstr ":mod:`tempfile` — Génération de fichiers et répertoires temporaires" #: ../Doc/library/tempfile.rst:15 msgid "**Source code:** :source:`Lib/tempfile.py`" @@ -123,6 +123,8 @@ msgid "" "The resulting file has one additional method, :func:`rollover`, which causes " "the file to roll over to an on-disk file regardless of its size." msgstr "" +"Le fichier renvoyé a une méthode supplémentaire, :func:`rollover`, qui " +"provoque la mise en écriture sur disque quelque soit la taille du fichier." #: ../Doc/library/tempfile.rst:96 msgid "" @@ -142,12 +144,23 @@ msgid "" "executable by no one. The file descriptor is not inherited by child " "processes." msgstr "" +"Crée un fichier temporaire de la manière la plus sécurisée qui soit. Il n'y " +"a pas d'accès concurrent (``race condition``) au moment de la création du " +"fichier, en supposant que la plateforme implémente correctement l'option :" +"const:`os.O_EXCL` pour :func:`os.open`. Le fichier est seulement accessible " +"en lecture et écriture par l'ID de l'utilisateur créateur. Si la plateforme " +"utilise des bits de permissions pour indiquer si le fichier est exécutable, " +"alors le fichier n'est exécutable par personne. Le descripteur de fichier " +"n'est pas hérité par les processus fils." #: ../Doc/library/tempfile.rst:114 msgid "" "Unlike :func:`TemporaryFile`, the user of :func:`mkstemp` is responsible for " "deleting the temporary file when done with it." msgstr "" +"À la différence de :func:`TemporaryFile`, l'utilisateur de :func:`mkstemp` " +"est responsable de la suppression du fichier temporaire quand il n'en a plus " +"besoin." #: ../Doc/library/tempfile.rst:117 msgid "" @@ -179,6 +192,9 @@ msgid "" "If *text* is specified, it indicates whether to open the file in binary mode " "(the default) or text mode. On some platforms, this makes no difference." msgstr "" +"Si *text* est spécifié, cela indique si le fichier doit être ouvert en mode " +"binaire (par défaut) ou en mode texte. Sur certaines plateformes, cela ne " +"fait aucune différence." #: ../Doc/library/tempfile.rst:137 msgid "" @@ -186,6 +202,10 @@ msgid "" "file (as would be returned by :func:`os.open`) and the absolute pathname of " "that file, in that order." msgstr "" +":func:`mkstemp` renvoie un n-uplet contenant un descripteur (*handle* en " +"anglais) au niveau du système d'exploitation vers un fichier ouvert (le même " +"que renvoie :func:`os.open`) et le chemin d'accès absolu de ce fichier, dans " +"cet ordre." #: ../Doc/library/tempfile.rst:146 msgid "" @@ -193,26 +213,34 @@ msgid "" "no race conditions in the directory's creation. The directory is readable, " "writable, and searchable only by the creating user ID." msgstr "" +"Crée un répertoire temporaire de la manière la plus sécurisée qu'il soit. Il " +"n'y a pas d'accès concurrent (``race condition``) au moment de la création " +"du répertoire. Le répertoire est accessible en lecture, en écriture, et son " +"contenu lisible uniquement pour l'ID de l'utilisateur créateur." #: ../Doc/library/tempfile.rst:150 msgid "" "The user of :func:`mkdtemp` is responsible for deleting the temporary " "directory and its contents when done with it." msgstr "" +"L'utilisateur de :func:`mkdtemp` est responsable de la suppression du " +"répertoire temporaire et de son contenu lorsqu'il n'en a plus besoin." #: ../Doc/library/tempfile.rst:153 msgid "" "The *prefix*, *suffix*, and *dir* arguments are the same as for :func:" "`mkstemp`." msgstr "" +"Les arguments *prefix*, *suffix*, et *dir* sont les mêmes que pour :func:" +"`mkstemp`." #: ../Doc/library/tempfile.rst:156 msgid ":func:`mkdtemp` returns the absolute pathname of the new directory." -msgstr "" +msgstr ":func:`mkdtemp` renvoie le chemin absolu du nouveau répertoire." #: ../Doc/library/tempfile.rst:163 msgid "Use :func:`mkstemp` instead." -msgstr "" +msgstr "Utilisez :func:`mkstemp` à la place." #: ../Doc/library/tempfile.rst:166 msgid "" @@ -229,6 +257,11 @@ msgid "" "easily with :func:`NamedTemporaryFile`, passing it the ``delete=False`` " "parameter::" msgstr "" +"Utiliser cette fonction peut introduire une faille de sécurité dans votre " +"programme. Avant que vous n'ayez le temps de faire quoi que ce soit avec le " +"nom de fichier renvoyé, quelqu'un peut l'utiliser. L'utilisation de :func:" +"`mktemp` peut être remplacée facilement avec :func:`NamedTemporaryFile` en y " +"passant le paramètre ``delete=False`` ::" #: ../Doc/library/tempfile.rst:189 msgid "" @@ -254,18 +287,21 @@ msgstr "" #: ../Doc/library/tempfile.rst:206 msgid "The directory named by the :envvar:`TMPDIR` environment variable." msgstr "" +"Le répertoire correspondant à la variable d'environnement :envvar:`TMPDIR`." #: ../Doc/library/tempfile.rst:208 msgid "The directory named by the :envvar:`TEMP` environment variable." msgstr "" +"Le répertoire correspondant à la variable d'environnement :envvar:`TEMP`." #: ../Doc/library/tempfile.rst:210 msgid "The directory named by the :envvar:`TMP` environment variable." msgstr "" +"Le répertoire correspondant à la variable d'environnement :envvar:`TMP`." #: ../Doc/library/tempfile.rst:212 msgid "A platform-specific location:" -msgstr "" +msgstr "Un emplacement dépendant à la plateforme :" #: ../Doc/library/tempfile.rst:214 msgid "" @@ -278,16 +314,20 @@ msgid "" "On Windows, the directories :file:`C:\\\\TEMP`, :file:`C:\\\\TMP`, :file:`\\" "\\TEMP`, and :file:`\\\\TMP`, in that order." msgstr "" +"Sur Windows, les répertoires :file:`C:\\\\TEMP`, :file:`C:\\\\TMP`, :file:`\\" +"\\TEMP`, et :file:`\\\\TMP`, dans cet ordre." #: ../Doc/library/tempfile.rst:220 msgid "" "On all other platforms, the directories :file:`/tmp`, :file:`/var/tmp`, and :" "file:`/usr/tmp`, in that order." msgstr "" +"Sur toutes les autres plate-formes, les répertoires :file:`/tmp`, :file:`/" +"var/tmp`, et :file:`/usr/tmp`, dans cet ordre." #: ../Doc/library/tempfile.rst:223 msgid "As a last resort, the current working directory." -msgstr "" +msgstr "En dernier ressort, le répertoire de travail courant." #: ../Doc/library/tempfile.rst:228 msgid "" diff --git a/library/textwrap.po b/library/textwrap.po index 9a7eeca8..c9a5bd46 100644 --- a/library/textwrap.po +++ b/library/textwrap.po @@ -18,11 +18,11 @@ msgstr "" #: ../Doc/library/textwrap.rst:2 msgid ":mod:`textwrap` --- Text wrapping and filling" -msgstr "" +msgstr ":mod:`textwrap` --- Encapsulation et remplissage de texte" #: ../Doc/library/textwrap.rst:11 msgid "**Source code:** :source:`Lib/textwrap.py`" -msgstr "" +msgstr "**Source code:** :source:`Lib/textwrap.py`" #: ../Doc/library/textwrap.rst:15 msgid "" @@ -40,30 +40,43 @@ msgid "" "*width* characters long. Returns a list of output lines, without final " "newlines." msgstr "" +"Reformate le paragraphe simple dans *text* (une chaîne de caractères) de " +"sorte que chaque ligne ait au maximum *largeur* caractères. Renvoie une " +"liste de lignes de sortie, sans ligne vide ou caractère de fin de ligne à la " +"fin." #: ../Doc/library/textwrap.rst:26 msgid "" "Optional keyword arguments correspond to the instance attributes of :class:" "`TextWrapper`, documented below. *width* defaults to ``70``." msgstr "" +"Les arguments par mot-clé optionnels correspondent aux attributs d'instance " +"de :class:`TextWrapper`, documentés ci-dessous. *width* vaut ``70`` par " +"défaut." #: ../Doc/library/textwrap.rst:29 msgid "" "See the :meth:`TextWrapper.wrap` method for additional details on how :func:" "`wrap` behaves." msgstr "" +"Consultez la méthode :meth:`TextWrapper.wrap` pour plus de détails sur le " +"comportement de :func:`wrap`." #: ../Doc/library/textwrap.rst:35 msgid "" "Wraps the single paragraph in *text*, and returns a single string containing " "the wrapped paragraph. :func:`fill` is shorthand for ::" msgstr "" +"Formate le paragraphe unique dans *text* et renvoie une seule chaîne dont le " +"contenu est le paragraphe formaté. :func:`fill` est un raccourci pour : :" #: ../Doc/library/textwrap.rst:40 msgid "" "In particular, :func:`fill` accepts exactly the same keyword arguments as :" "func:`wrap`." msgstr "" +"En particulier, :func:`fill` accepte exactement les mêmes arguments par mot-" +"clé que :func:`wrap`." #: ../Doc/library/textwrap.rst:43 msgid "" @@ -79,6 +92,10 @@ msgid "" "hyphenated words; only then will long words be broken if necessary, unless :" "attr:`TextWrapper.break_long_words` is set to false." msgstr "" +"Le formatage du texte s'effectue en priorité sur les espaces puis juste " +"après les traits d'union dans des mots séparés par des traits d'union ; ce " +"n'est qu'alors que les mots longs seront cassés si nécessaire, à moins que :" +"attr:`TextWrapper.break_long_words` soit défini sur *False*." #: ../Doc/library/textwrap.rst:52 msgid "" @@ -89,13 +106,16 @@ msgstr "" #: ../Doc/library/textwrap.rst:58 msgid "Remove any common leading whitespace from every line in *text*." -msgstr "" +msgstr "Supprime toutes les espaces en de tête de chaque ligne dans *text*." #: ../Doc/library/textwrap.rst:60 msgid "" "This can be used to make triple-quoted strings line up with the left edge of " "the display, while still presenting them in the source code in indented form." msgstr "" +"Ceci peut être utilisé pour aligner les chaînes à trois guillemets avec le " +"bord gauche de l'affichage, tout en les présentant sous forme indentée dans " +"le code source." #: ../Doc/library/textwrap.rst:63 msgid "" @@ -119,7 +139,7 @@ msgstr "" #: ../Doc/library/textwrap.rst:89 msgid "is the same as ::" -msgstr "" +msgstr "est identique à ::" #: ../Doc/library/textwrap.rst:94 msgid "" @@ -127,12 +147,17 @@ msgid "" "change any of its options through direct assignment to instance attributes " "between uses." msgstr "" +"Vous pouvez réutiliser le même objet :class:`TextWrapper` plusieurs fois et " +"vous pouvez changer n'importe laquelle de ses options par assignation " +"directe aux attributs d'instance entre les utilisations." #: ../Doc/library/textwrap.rst:98 msgid "" "The :class:`TextWrapper` instance attributes (and keyword arguments to the " "constructor) are as follows:" msgstr "" +"Les attributs d'instance de la classe :class:`TextWrapper` (et les arguments " +"par mot-clé au constructeur) sont les suivants :" #: ../Doc/library/textwrap.rst:104 msgid "" @@ -141,12 +166,19 @@ msgid "" "`TextWrapper` guarantees that no output line will be longer than :attr:" "`width` characters." msgstr "" +"(par défaut : ``70```) Longueur maximale des lignes reformatées. Tant qu'il " +"n'y a pas de mots individuels dans le texte d'entrée plus longs que :attr:" +"`width`, :class:`TextWrapper` garantit qu'aucune ligne de sortie n'est plus " +"longue que :attr:`width` caractères." #: ../Doc/library/textwrap.rst:112 msgid "" "(default: ``True``) If true, then all tab characters in *text* will be " "expanded to spaces using the :meth:`expandtabs` method of *text*." msgstr "" +"(par défaut : ``True``) Si `true`, alors tous les caractères de tabulation " +"dans *text* sont transformés en espaces en utilisant la méthode :meth:" +"`expandtabs` de *text*." #: ../Doc/library/textwrap.rst:118 msgid "" @@ -155,6 +187,11 @@ msgid "" "space. The whitespace characters replaced are as follows: tab, newline, " "vertical tab, formfeed, and carriage return (``'\\t\\n\\v\\f\\r'``)." msgstr "" +"(par défaut : ``True``) Si `true`, après l'expansion des tabulations mais " +"avant le formatage, la méthode :meth:`wrap` remplace chaque *blanc* par une " +"espace unique. Les *blancs* remplacés sont les suivants : tabulation, " +"nouvelle ligne, tabulation verticale, saut de page et retour chariot (``'\\t" +"\\n\\v\\f\\r'``)." #: ../Doc/library/textwrap.rst:126 msgid "" @@ -162,6 +199,9 @@ msgid "" "tab character will be replaced by a single space, which is *not* the same as " "tab expansion." msgstr "" +"Si :attr:`expand_tabs` est *False* et :attr:`replace_whitespace` est vrai, " +"chaque caractère de tabulation est remplacé par une espace unique, ce qui " +"*n'est pas* la même chose que l'extension des tabulations." #: ../Doc/library/textwrap.rst:132 msgid "" @@ -170,6 +210,10 @@ msgid "" "paragraphs (using :meth:`str.splitlines` or similar) which are wrapped " "separately." msgstr "" +"Si :attr:`replace_whitespace` est faux, de nouvelles lignes peuvent " +"apparaître au milieu d'une ligne et provoquer une sortie étrange. Pour cette " +"raison, le texte doit être divisé en paragraphes (en utilisant :meth:`str." +"splitlines` ou similaire) qui sont formatés séparément." #: ../Doc/library/textwrap.rst:140 msgid "" @@ -179,6 +223,11 @@ msgid "" "follows it. If whitespace being dropped takes up an entire line, the whole " "line is dropped." msgstr "" +"(par défaut : ``True``) Si *True*, l'espace au début et à la fin de chaque " +"ligne (après le formatage mais avant l'indentation) est supprimée. L'espace " +"au début du paragraphe n'est cependant pas supprimée si elle n'est pas " +"suivie par une espace. Si les espaces en cours de suppression occupent une " +"ligne entière, la ligne entière est supprimée." #: ../Doc/library/textwrap.rst:146 msgid "Whitespace was always dropped in earlier versions." @@ -190,6 +239,9 @@ msgid "" "output. Counts towards the length of the first line. The empty string is " "not indented." msgstr "" +"(par défaut : ```''```) Chaîne qui est ajoutée à la première ligne de la " +"sortie formatée. Elle compte pour le calcul de la longueur de la première " +"ligne. La chaîne vide n'est pas indentée." #: ../Doc/library/textwrap.rst:159 msgid "" @@ -197,6 +249,9 @@ msgid "" "output except the first. Counts towards the length of each line except the " "first." msgstr "" +"(par défaut : ```''```) Chaîne qui préfixe toutes les lignes de la sortie " +"formatée sauf la première. Elle compte pour le calcul de la longueur de " +"chaque ligne à l'exception de la première." #: ../Doc/library/textwrap.rst:166 msgid "" @@ -209,14 +264,23 @@ msgid "" "followed by a space. One problem with this is algorithm is that it is " "unable to detect the difference between \"Dr.\" in ::" msgstr "" +"(par défaut : ``Faux``) Si `true`, :class:`TextWrapper` tente de détecter " +"les fins de phrases et de s'assurer que les phrases sont toujours séparées " +"par exactement deux espaces. Ceci est généralement souhaité pour un texte " +"en police à chasse fixe. Cependant, l'algorithme de détection de phrase est " +"imparfait : il suppose qu'une fin de phrase consiste en une lettre minuscule " +"suivie de l'une des lettres suivantes : ``'.'``, ``'!'``, ou ``'?'``, " +"éventuellement suivie d'une des lettres ``'\"'`` ou ``\"'\"``, suivie par " +"une espace. Un problème avec cet algorithme est qu'il est incapable de " +"détecter la différence entre \"Dr\" dans : :" #: ../Doc/library/textwrap.rst:177 msgid "and \"Spot.\" in ::" -msgstr "" +msgstr "et \"Spot.\" dans ::" #: ../Doc/library/textwrap.rst:181 msgid ":attr:`fix_sentence_endings` is false by default." -msgstr "" +msgstr ":attr:`fix_sentence_endings` est *False* par défaut." #: ../Doc/library/textwrap.rst:183 msgid "" @@ -225,6 +289,11 @@ msgid "" "after a period to separate sentences on the same line, it is specific to " "English-language texts." msgstr "" +"Étant donné que l'algorithme de détection de phrases repose sur ``string." +"lowercase`` pour la définition de \"lettres minuscules\" et sur une " +"convention consistant à utiliser deux espaces après un point pour séparer " +"les phrases sur la même ligne, ceci est spécifique aux textes de langue " +"anglaise." #: ../Doc/library/textwrap.rst:191 msgid "" @@ -234,6 +303,12 @@ msgid "" "than :attr:`width`. (Long words will be put on a line by themselves, in " "order to minimize the amount by which :attr:`width` is exceeded.)" msgstr "" +"(par défaut : ``True``) Si *True*, alors les mots plus longs que :attr:" +"`width` sont cassés afin de s'assurer qu'aucune ligne ne soit plus longue " +"que :attr:`width`. Si c'est *False*, les mots longs ne sont pas cassés et " +"certaines lignes peuvent être plus longues que :attr:`width` (les mots longs " +"seront mis sur une ligne qui leur est propre, afin de minimiser le " +"dépassement de :attr:`width`)." #: ../Doc/library/textwrap.rst:200 msgid "" @@ -244,6 +319,13 @@ msgid "" "want truly insecable words. Default behaviour in previous versions was to " "always allow breaking hyphenated words." msgstr "" +"(par défaut : ``True``) Si c'est vrai, le formatage se fait de préférence " +"sur les espaces et juste après sur les traits d'union des mots composés, " +"comme il est d'usage en anglais. Si *False*, seuls les espaces sont " +"considérées comme de bons endroits pour les sauts de ligne, mais vous devez " +"définir :attr:`break_long_words` à *False* si vous voulez des mots vraiment " +"insécables. Le comportement par défaut dans les versions précédentes était " +"de toujours permettre de couper les mots avec trait d'union." #: ../Doc/library/textwrap.rst:210 msgid "" @@ -259,9 +341,17 @@ msgid "" "lines, without final newlines. If the wrapped output has no content, the " "returned list is empty." msgstr "" +"Formate le paragraphe unique dans *text* (une chaîne de caractères) de sorte " +"que chaque ligne ait au maximum :attr:`width` caractères. Toutes les " +"options de formatage sont tirées des attributs d'instance de l'instance de " +"classe :class:`TextWrapper`. Renvoie une liste de lignes de sortie, sans " +"nouvelles lignes finales. Si la sortie formatée n'a pas de contenu, la liste " +"vide est renvoyée." #: ../Doc/library/textwrap.rst:224 msgid "" "Wraps the single paragraph in *text*, and returns a single string containing " "the wrapped paragraph." msgstr "" +"Formate le paragraphe unique de *text* et renvoie une seule chaîne contenant " +"le paragraphe formaté." diff --git a/library/thread.po b/library/thread.po index 7aa6f8b7..13fb2770 100644 --- a/library/thread.po +++ b/library/thread.po @@ -97,6 +97,11 @@ msgid "" "identifiers may be recycled when a thread exits and another thread is " "created." msgstr "" +"Renvoie l'\"identificateur de fil\" du fil d'exécution courant. C'est un " +"entier non nul. Sa valeur n'a pas de signification directe ; il est destiné " +"à être utilisé comme valeur magique opaque, par exemple comme clef de " +"dictionnaire de données pour chaque fil. Les identificateurs de fils peuvent " +"être recyclés lorsqu'un fil se termine et qu'un autre fil est créé." #: ../Doc/library/thread.rst:98 msgid "" diff --git a/library/threading.po b/library/threading.po index dc471261..ced7df7a 100644 --- a/library/threading.po +++ b/library/threading.po @@ -72,6 +72,8 @@ msgid "" "Return the number of :class:`Thread` objects currently alive. The returned " "count is equal to the length of the list returned by :func:`.enumerate`." msgstr "" +"Renvoie le nombre d'objets :class:`Thread` actuellement vivants. Le compte " +"renvoyé est égal à la longueur de la liste renvoyée par :func:`.enumerate`." #: ../Doc/library/threading.rst:51 msgid "Added ``active_count()`` spelling." @@ -95,6 +97,10 @@ msgid "" "through the :mod:`threading` module, a dummy thread object with limited " "functionality is returned." msgstr "" +"Renvoie l'objet :class:`Thread` courant, correspondant au fil de contrôle de " +"l'appelant. Si le fil de contrôle de l'appelant n'a pas été créé via le " +"module :mod:`Thread`, un objet *thread* factice aux fonctionnalités limitées " +"est renvoyé." #: ../Doc/library/threading.rst:73 msgid "Added ``current_thread()`` spelling." @@ -107,6 +113,10 @@ msgid "" "`current_thread`, and the main thread. It excludes terminated threads and " "threads that have not yet been started." msgstr "" +"Renvoie une liste de tous les objets fil d'exécution :class:`Thread` " +"actuellement vivants. La liste inclut les fils démons, les fils factices " +"créés par :func:`current_thread` et le fil principal. Elle exclut les fils " +"terminés et les fils qui n'ont pas encore été lancés." #: ../Doc/library/threading.rst:88 msgid "" @@ -130,12 +140,15 @@ msgstr "" #: ../Doc/library/threading.rst:105 msgid "The instance's values will be different for separate threads." msgstr "" +"Les valeurs dans l'instance sont différentes pour des *threads* différents." #: ../Doc/library/threading.rst:107 msgid "" "For more details and extensive examples, see the documentation string of " "the :mod:`_threading_local` module." msgstr "" +"Pour plus de détails et de nombreux exemples, voir la chaîne de " +"documentation du module :mod:`_threading_local`." #: ../Doc/library/threading.rst:115 msgid "" @@ -208,6 +221,10 @@ msgid "" "module. The *func* will be passed to :func:`sys.settrace` for each thread, " "before its :meth:`~Thread.run` method is called." msgstr "" +"Attache une fonction de traçage pour tous les fils d'exécution démarrés " +"depuis le module :mod:`Thread`. La fonction *func* est passée à :func:`sys." +"settrace` pour chaque fil, avant que sa méthode :meth:`~Thread.run` soit " +"appelée." #: ../Doc/library/threading.rst:185 msgid "" @@ -215,6 +232,10 @@ msgid "" "module. The *func* will be passed to :func:`sys.setprofile` for each " "thread, before its :meth:`~Thread.run` method is called." msgstr "" +"Attache une fonction de profilage pour tous les fils d'exécution démarrés " +"depuis le module :mod:`Threading`. La fonction *func* est passée à :func:" +"`sys.setprofile` pour chaque fil, avant que sa méthode :meth:`~Thread.run` " +"soit appelée." #: ../Doc/library/threading.rst:194 msgid "" @@ -255,14 +276,24 @@ msgid "" "stopped, suspended, resumed, or interrupted. The static methods of Java's " "Thread class, when implemented, are mapped to module-level functions." msgstr "" +"La conception de ce module est librement basée sur le modèle des fils " +"d'exécution de Java. Cependant, là où Java fait des verrous et des variables " +"de condition le comportement de base de chaque objet, ils sont des objets " +"séparés en Python. La classe Python :class:`Thread` prend en charge un sous-" +"ensemble du comportement de la classe *Thread* de Java ; actuellement, il " +"n'y a aucune priorité, aucun groupe de fils d'exécution, et les fils ne " +"peuvent être détruits, arrêtés, suspendus, repris ni interrompus. Les " +"méthodes statiques de la classe *Thread* de Java, lorsqu'elles sont " +"implémentées, correspondent à des fonctions au niveau du module." #: ../Doc/library/threading.rst:229 msgid "All of the methods described below are executed atomically." msgstr "" +"Toutes les méthodes décrites ci-dessous sont exécutées de manière atomique." #: ../Doc/library/threading.rst:235 msgid "Thread Objects" -msgstr "" +msgstr "Objets *Threads*" #: ../Doc/library/threading.rst:237 msgid "" @@ -317,12 +348,20 @@ msgid "" "you want your threads to stop gracefully, make them non-daemonic and use a " "suitable signalling mechanism such as an :class:`Event`." msgstr "" +"Les fils d'exécution démons sont brusquement terminés à l'arrêt du programme " +"Python. Leurs ressources (fichiers ouverts, transactions de base de données, " +"etc.) peuvent ne pas être libérées correctement. Si vous voulez que vos fils " +"s'arrêtent proprement, faites en sorte qu'ils ne soient pas démoniques et " +"utilisez un mécanisme de signalisation approprié tel qu'un objet évènement :" +"class:`Event`." #: ../Doc/library/threading.rst:270 msgid "" "There is a \"main thread\" object; this corresponds to the initial thread of " "control in the Python program. It is not a daemon thread." msgstr "" +"Il y a un objet \"fil principal\", qui correspond au fil de contrôle initial " +"dans le programme Python. Ce n'est pas un fil démon." #: ../Doc/library/threading.rst:273 msgid "" @@ -339,35 +378,48 @@ msgid "" "This constructor should always be called with keyword arguments. Arguments " "are:" msgstr "" +"Ce constructeur doit toujours être appelé avec des arguments nommés. Les " +"arguments sont :" #: ../Doc/library/threading.rst:286 msgid "" "*group* should be ``None``; reserved for future extension when a :class:" "`ThreadGroup` class is implemented." msgstr "" +"*group* doit être ``None`` ; cet argument est réservé pour une extension " +"future lorsqu'une classe :class:`ThreadGroup` sera implémentée." #: ../Doc/library/threading.rst:289 msgid "" "*target* is the callable object to be invoked by the :meth:`run` method. " "Defaults to ``None``, meaning nothing is called." msgstr "" +"*target* est l'objet appelable qui doit être invoqué par la méthode :meth:" +"`run`. La valeur par défaut est ``None``, ce qui signifie que rien n'est " +"appelé." #: ../Doc/library/threading.rst:292 msgid "" "*name* is the thread name. By default, a unique name is constructed of the " "form \"Thread-*N*\" where *N* is a small decimal number." msgstr "" +"*name* est le nom du fil d'exécution. Par défaut, un nom unique est " +"construit de la forme « Thread–*N* » où *N* est un petit nombre décimal." #: ../Doc/library/threading.rst:295 msgid "" "*args* is the argument tuple for the target invocation. Defaults to ``()``." msgstr "" +"*args* est le tuple d'arguments pour l'invocation de l'objet appelable. La " +"valeur par défaut est ``()``." #: ../Doc/library/threading.rst:297 msgid "" "*kwargs* is a dictionary of keyword arguments for the target invocation. " "Defaults to ``{}``." msgstr "" +"*kwargs* est un dictionnaire d'arguments nommés pour l'invocation de l'objet " +"appelable. La valeur par défaut est ``{}``." #: ../Doc/library/threading.rst:300 msgid "" @@ -375,10 +427,13 @@ msgid "" "base class constructor (``Thread.__init__()``) before doing anything else to " "the thread." msgstr "" +"Si la sous-classe réimplémente le constructeur, elle doit s'assurer " +"d'appeler le constructeur de la classe de base (``Thread.__init__()``) avant " +"de faire autre chose au fil d'exécution." #: ../Doc/library/threading.rst:306 msgid "Start the thread's activity." -msgstr "" +msgstr "Lance l'activité du fil d'exécution." #: ../Doc/library/threading.rst:308 msgid "" @@ -391,10 +446,12 @@ msgid "" "This method will raise a :exc:`RuntimeError` if called more than once on the " "same thread object." msgstr "" +"Cette méthode lève une :exc:`RuntimeError` si elle est appelée plus d'une " +"fois sur le même objet fil d'exécution." #: ../Doc/library/threading.rst:316 msgid "Method representing the thread's activity." -msgstr "" +msgstr "Méthode représentant l'activité du fil d'exécution." #: ../Doc/library/threading.rst:318 msgid "" @@ -425,6 +482,8 @@ msgid "" "When the *timeout* argument is not present or ``None``, the operation will " "block until the thread terminates." msgstr "" +"Lorsque l'argument *timeout* n'est pas présent ou vaut ``None``, l'opération " +"se bloque jusqu'à ce que le fil d'exécution se termine." #: ../Doc/library/threading.rst:338 msgid "A thread can be :meth:`join`\\ ed many times." @@ -444,6 +503,9 @@ msgid "" "Multiple threads may be given the same name. The initial name is set by the " "constructor." msgstr "" +"Une chaîne de caractères utilisée à des fins d'identification seulement. " +"Elle n'a pas de sémantique. Plusieurs fils d'exécution peuvent porter le " +"même nom. Le nom initial est défini par le constructeur." #: ../Doc/library/threading.rst:356 msgid "Pre-2.6 API for :attr:`~Thread.name`." @@ -460,7 +522,7 @@ msgstr "" #: ../Doc/library/threading.rst:371 msgid "Return whether the thread is alive." -msgstr "" +msgstr "Renvoie si le fil d'exécution est vivant ou pas." #: ../Doc/library/threading.rst:373 msgid "" @@ -486,6 +548,8 @@ msgstr "" msgid "" "The entire Python program exits when no alive non-daemon threads are left." msgstr "" +"Le programme Python se termine lorsqu'il ne reste plus de fils d'exécution " +"non-démons vivants." #: ../Doc/library/threading.rst:396 msgid "Pre-2.6 API for :attr:`~Thread.daemon`." @@ -531,7 +595,7 @@ msgstr "" #: ../Doc/library/threading.rst:429 ../Doc/library/threading.rst:473 msgid "Acquire a lock, blocking or non-blocking." -msgstr "" +msgstr "Acquiert un verrou, bloquant ou non bloquant." #: ../Doc/library/threading.rst:431 msgid "" diff --git a/library/time.po b/library/time.po index 257f955b..a6d95a12 100644 --- a/library/time.po +++ b/library/time.po @@ -18,13 +18,16 @@ msgstr "" #: ../Doc/library/time.rst:3 msgid ":mod:`time` --- Time access and conversions" -msgstr "" +msgstr ":mod:`time` — Accès au temps et conversions" #: ../Doc/library/time.rst:9 msgid "" "This module provides various time-related functions. For related " "functionality, see also the :mod:`datetime` and :mod:`calendar` modules." msgstr "" +"Ce module fournit différentes fonctions liées au temps. Pour les " +"fonctionnalités associées, voir aussi les modules :mod:`datetime` et :mod:" +"`calendar`." #: ../Doc/library/time.rst:12 msgid "" @@ -34,10 +37,17 @@ msgid "" "consult the platform documentation, because the semantics of these functions " "varies among platforms." msgstr "" +"Bien que ce module soit toujours disponible, toutes les fonctions ne sont " +"pas disponibles sur toutes les plateformes. La plupart des fonctions " +"définies dans ce module délèguent à des fonctions de même nom de la " +"bibliothèque C. Il peut parfois être utile de consulter la documentation de " +"la plate-forme, car la sémantique de ces fonctions peut varier." #: ../Doc/library/time.rst:18 msgid "An explanation of some terminology and conventions is in order." msgstr "" +"Vous trouvez ci-dessous, mises en ordre, quelques explications relative à la " +"terminologie et aux conventions." #: ../Doc/library/time.rst:22 msgid "" @@ -76,6 +86,9 @@ msgid "" "GMT). The acronym UTC is not a mistake but a compromise between English and " "French." msgstr "" +"UTC désigne le temps universel coordonné (*Coordinated Universal Time* en " +"anglais), anciennement l'heure de Greenwich (ou GMT). L'acronyme UTC n'est " +"pas une erreur mais un compromis entre l'anglais et le français." #: ../Doc/library/time.rst:62 msgid "" @@ -85,6 +98,12 @@ msgid "" "local rules (often it is read from a system file for flexibility) and is the " "only source of True Wisdom in this respect." msgstr "" +"Le DST (*Daylight Saving Time*) correspond à l’heure d’été, un ajustement du " +"fuseau horaire d’une heure (généralement) pendant une partie de l’année. Les " +"règles de DST sont magiques (déterminées par la loi locale) et peuvent " +"changer d’année en année. La bibliothèque C possède une table contenant les " +"règles locales (souvent, elle est lue dans un fichier système par souci de " +"souplesse) et constitue la seule source fiable." #: ../Doc/library/time.rst:68 msgid "" @@ -92,6 +111,10 @@ msgid "" "by the units in which their value or argument is expressed. E.g. on most " "Unix systems, the clock \"ticks\" only 50 or 100 times a second." msgstr "" +"La précision des diverses fonctions en temps réel peut être inférieure à " +"celle suggérée par les unités dans lesquelles leur valeur ou leur argument " +"est exprimé. Par exemple, sur la plupart des systèmes Unix, l’horloge ne « " +"bat » que 50 ou 100 fois par seconde." #: ../Doc/library/time.rst:72 msgid "" @@ -102,6 +125,12 @@ msgid "" "with a nonzero fraction (Unix :c:func:`select` is used to implement this, " "where available)." msgstr "" +"D’autre part, la précision de :func:`.time` et :func:`sleep` est meilleure " +"que leurs équivalents Unix : les temps sont exprimés en nombres à virgule " +"flottante, :func:`.time` renvoie le temps le plus précis disponible (en " +"utilisant :c:func:`gettimeofday` d'Unix si elle est disponible), et :func:" +"`sleep` accepte le temps avec une fraction non nulle (:c:func:`select` " +"d'Unix est utilisée pour l’implémenter, si elle est disponible)." #: ../Doc/library/time.rst:79 msgid "" @@ -114,7 +143,7 @@ msgstr "" #: ../Doc/library/time.rst:85 msgid "See :class:`struct_time` for a description of these objects." -msgstr "" +msgstr "Voir :class:`struct_time` pour une description de ces objets." #: ../Doc/library/time.rst:87 msgid "" @@ -125,6 +154,8 @@ msgstr "" #: ../Doc/library/time.rst:91 msgid "Use the following functions to convert between time representations:" msgstr "" +"Utilisez les fonctions suivantes pour convertir des représentations " +"temporelles :" #: ../Doc/library/time.rst:94 msgid "From" @@ -136,36 +167,36 @@ msgstr "À" #: ../Doc/library/time.rst:94 msgid "Use" -msgstr "" +msgstr "Utilisez" #: ../Doc/library/time.rst:96 ../Doc/library/time.rst:99 #: ../Doc/library/time.rst:102 ../Doc/library/time.rst:105 msgid "seconds since the epoch" -msgstr "" +msgstr "secondes depuis *epoch*" #: ../Doc/library/time.rst:96 ../Doc/library/time.rst:102 msgid ":class:`struct_time` in UTC" -msgstr "" +msgstr ":class:`struct_time` en UTC" #: ../Doc/library/time.rst:96 msgid ":func:`gmtime`" -msgstr "" +msgstr ":func:`gmtime`" #: ../Doc/library/time.rst:99 ../Doc/library/time.rst:105 msgid ":class:`struct_time` in local time" -msgstr "" +msgstr ":class:`struct_time` en heure locale" #: ../Doc/library/time.rst:99 msgid ":func:`localtime`" -msgstr "" +msgstr ":func:`localtime`" #: ../Doc/library/time.rst:102 msgid ":func:`calendar.timegm`" -msgstr "" +msgstr ":func:`calendar.timegm`" #: ../Doc/library/time.rst:105 msgid ":func:`mktime`" -msgstr "" +msgstr ":func:`mktime`" #: ../Doc/library/time.rst:110 msgid "The module defines the following functions and data items:" @@ -219,6 +250,11 @@ msgid "" "function :c:func:`QueryPerformanceCounter`. The resolution is typically " "better than one microsecond." msgstr "" +"Sous Windows, cette fonction renvoie les secondes réelles (type horloge " +"murale) écoulées depuis le premier appel à cette fonction, en tant que " +"nombre à virgule flottante, en fonction de la fonction *Win32* :c:func:" +"`QueryPerformanceCounter`. La résolution est généralement meilleure qu'une " +"microseconde." #: ../Doc/library/time.rst:163 msgid "" @@ -228,6 +264,12 @@ msgid "" "``asctime(localtime(secs))``. Locale information is not used by :func:" "`ctime`." msgstr "" +"Convertit une heure exprimée en secondes depuis *epoch* en une chaîne " +"représentant l’heure locale. Si *secs* n’est pas fourni ou vaut :const:" +"`None`, l’heure actuelle renvoyée par :func:`.time` est utilisée. " +"``ctime(secs)`` est équivalent à ``asctime(localtime(secs))``. Les " +"informations sur les paramètres régionaux ne sont pas utilisées par :func:" +"`ctime`." #: ../Doc/library/time.rst:168 ../Doc/library/time.rst:189 #: ../Doc/library/time.rst:202 @@ -252,6 +294,12 @@ msgid "" "the :class:`struct_time` object. See :func:`calendar.timegm` for the inverse " "of this function." msgstr "" +"Convertit un temps exprimé en secondes depuis *epoch* en un :class:" +"`struct_time` au format UTC dans lequel le drapeau *dst* est toujours égal à " +"zéro. Si *secs* n’est pas fourni ou vaut :const:`None`, l’heure actuelle " +"renvoyée par :func:`.time` est utilisée. Les fractions de seconde sont " +"ignorées. Voir ci-dessus pour une description de l’objet :class:" +"`struct_time`. Voir :func:`calendar.timegm` pour l’inverse de cette fonction." #: ../Doc/library/time.rst:198 msgid "" @@ -259,6 +307,10 @@ msgid "" "or :const:`None`, the current time as returned by :func:`.time` is used. " "The dst flag is set to ``1`` when DST applies to the given time." msgstr "" +"Comme :func:`gmtime` mais convertit le résultat en heure locale. Si *secs* " +"n’est pas fourni ou vaut :const:`None`, l’heure actuelle renvoyée par :func:" +"`.time` est utilisée. Le drapeau *dst* est mis à ``1`` lorsque l’heure d’été " +"s’applique à l’heure indiquée." #: ../Doc/library/time.rst:211 msgid "" @@ -272,6 +324,15 @@ msgid "" "libraries). The earliest date for which it can generate a time is platform-" "dependent." msgstr "" +"C’est la fonction inverse de :func:`localtime`. Son argument est soit un :" +"class:`struct_time` soit un 9-tuple (puisque le drapeau *dst* est " +"nécessaire ; utilisez ``-1`` comme drapeau *dst* s’il est inconnu) qui " +"exprime le temps **local**, pas UTC. Il retourne un nombre à virgule " +"flottante, pour compatibilité avec :func:`.time`. Si la valeur d’entrée ne " +"peut pas être représentée comme une heure valide, soit :exc:`OverflowError` " +"ou :exc:`ValueError` sera levée (selon que la valeur non valide est " +"interceptée par Python ou par les bibliothèque C sous-jacentes). La date la " +"plus proche pour laquelle il peut générer une heure dépend de la plate-forme." #: ../Doc/library/time.rst:223 msgid "" @@ -311,6 +372,10 @@ msgid "" "shown without the optional field width and precision specification, and are " "replaced by the indicated characters in the :func:`strftime` result:" msgstr "" +"Les directives suivantes peuvent être incorporées dans la chaîne *format*. " +"Ils sont affichés sans la spécification facultative de largeur de champ ni " +"de précision, et sont remplacés par les caractères indiqués dans le résultat " +"de :func:`strftime` :" #: ../Doc/library/time.rst:257 msgid "Directive" @@ -330,7 +395,7 @@ msgstr "``%a``" #: ../Doc/library/time.rst:259 msgid "Locale's abbreviated weekday name." -msgstr "" +msgstr "Nom abrégé du jour de la semaine selon les paramètres régionaux." #: ../Doc/library/time.rst:262 msgid "``%A``" @@ -338,7 +403,7 @@ msgstr "``%A``" #: ../Doc/library/time.rst:262 msgid "Locale's full weekday name." -msgstr "" +msgstr "Le nom de semaine complet de la région." #: ../Doc/library/time.rst:264 msgid "``%b``" @@ -346,7 +411,7 @@ msgstr "``%b``" #: ../Doc/library/time.rst:264 msgid "Locale's abbreviated month name." -msgstr "" +msgstr "Nom abrégé du mois de la région." #: ../Doc/library/time.rst:267 msgid "``%B``" @@ -354,7 +419,7 @@ msgstr "``%B``" #: ../Doc/library/time.rst:267 msgid "Locale's full month name." -msgstr "" +msgstr "Nom complet du mois de la région." #: ../Doc/library/time.rst:269 msgid "``%c``" @@ -370,7 +435,7 @@ msgstr "``%d``" #: ../Doc/library/time.rst:272 msgid "Day of the month as a decimal number [01,31]." -msgstr "" +msgstr "Jour du mois sous forme décimale [01,31]." #: ../Doc/library/time.rst:275 msgid "``%H``" @@ -378,7 +443,7 @@ msgstr "``%H``" #: ../Doc/library/time.rst:275 msgid "Hour (24-hour clock) as a decimal number [00,23]." -msgstr "" +msgstr "Heure (horloge sur 24 heures) sous forme de nombre décimal [00,23]." #: ../Doc/library/time.rst:278 msgid "``%I``" @@ -386,7 +451,7 @@ msgstr "``%I``" #: ../Doc/library/time.rst:278 msgid "Hour (12-hour clock) as a decimal number [01,12]." -msgstr "" +msgstr "Heure (horloge sur 12 heures) sous forme de nombre décimal [01,12]." #: ../Doc/library/time.rst:281 msgid "``%j``" @@ -394,7 +459,7 @@ msgstr "``%j``" #: ../Doc/library/time.rst:281 msgid "Day of the year as a decimal number [001,366]." -msgstr "" +msgstr "Jour de l’année sous forme de nombre décimal [001,366]." #: ../Doc/library/time.rst:284 msgid "``%m``" @@ -402,7 +467,7 @@ msgstr "``%m``" #: ../Doc/library/time.rst:284 msgid "Month as a decimal number [01,12]." -msgstr "" +msgstr "Mois sous forme décimale [01,12]." #: ../Doc/library/time.rst:287 msgid "``%M``" @@ -410,7 +475,7 @@ msgstr "``%M``" #: ../Doc/library/time.rst:287 msgid "Minute as a decimal number [00,59]." -msgstr "" +msgstr "Minutes sous forme décimale [00,59]." #: ../Doc/library/time.rst:290 msgid "``%p``" @@ -430,7 +495,7 @@ msgstr "``%S``" #: ../Doc/library/time.rst:293 msgid "Second as a decimal number [00,61]." -msgstr "" +msgstr "Deuxième sous forme de nombre décimal [00,61]." #: ../Doc/library/time.rst:293 msgid "\\(2)" @@ -457,7 +522,7 @@ msgstr "``%w``" #: ../Doc/library/time.rst:304 msgid "Weekday as a decimal number [0(Sunday),6]." -msgstr "" +msgstr "Jour de la semaine sous forme de nombre décimal [0 (dimanche), 6]." #: ../Doc/library/time.rst:307 msgid "``%W``" @@ -492,7 +557,7 @@ msgstr "``%y``" #: ../Doc/library/time.rst:321 msgid "Year without century as a decimal number [00,99]." -msgstr "" +msgstr "Année sans siècle comme un nombre décimal [00, 99]." #: ../Doc/library/time.rst:324 msgid "``%Y``" @@ -509,6 +574,7 @@ msgstr "``%Z``" #: ../Doc/library/time.rst:327 msgid "Time zone name (no characters if no time zone exists)." msgstr "" +"Nom du fuseau horaire (pas de caractères s’il n’y a pas de fuseau horaire)." #: ../Doc/library/time.rst:330 msgid "``%%``" @@ -528,6 +594,9 @@ msgid "" "affects the output hour field if the ``%I`` directive is used to parse the " "hour." msgstr "" +"Lorsqu’elle est utilisée avec la fonction :func:`strptime`, la directive ``" +"%p`` n’affecte le champ d’heure en sortie que si la directive ``%I`` est " +"utilisée pour analyser l’heure." #: ../Doc/library/time.rst:340 msgid "" @@ -540,12 +609,17 @@ msgid "" "When used with the :func:`strptime` function, ``%U`` and ``%W`` are only " "used in calculations when the day of the week and the year are specified." msgstr "" +"Lorsqu’elles sont utilisées avec la fonction :func:`strptime`, ``%U`` et ``" +"%W`` ne sont utilisées que dans les calculs lorsque le jour de la semaine et " +"l’année sont spécifiés." #: ../Doc/library/time.rst:347 msgid "" "Here is an example, a format for dates compatible with that specified in " "the :rfc:`2822` Internet email standard. [#]_ ::" msgstr "" +"Voici un exemple de format de date compatible avec celui spécifié dans la " +"norme de courrier électronique Internet suivante :rfc:`2822`. [#]_ ::" #: ../Doc/library/time.rst:354 msgid "" @@ -554,6 +628,11 @@ msgid "" "of format codes supported on your platform, consult the :manpage:" "`strftime(3)` documentation." msgstr "" +"Des directives supplémentaires peuvent être prises en charge sur certaines " +"plates-formes, mais seules celles énumérées ici ont une signification " +"normalisée par ANSI C. Pour voir la liste complète des codes de format pris " +"en charge sur votre plate-forme, consultez la documentation :manpage:" +"`strftime(3)`." #: ../Doc/library/time.rst:359 msgid "" @@ -562,6 +641,10 @@ msgid "" "order; this is also not portable. The field width is normally 2 except for ``" "%j`` where it is 3." msgstr "" +"Sur certaines plates-formes, une spécification facultative de largeur et de " +"précision de champ peut suivre immédiatement le ``'%'`` initial d’une " +"directive dans l’ordre suivant ; ce n’est pas non plus portable. La largeur " +"du champ est normalement 2 sauf pour ``%j`` où il est 3." #: ../Doc/library/time.rst:367 msgid "" @@ -590,6 +673,11 @@ msgid "" "platform-specific except for recognizing UTC and GMT which are always known " "(and are considered to be non-daylight savings timezones)." msgstr "" +"La prise en charge de la directive ``%Z`` est basée sur les valeurs " +"contenues dans ``tzname`` et sur le fait de savoir si ``daylight`` est vrai. " +"Pour cette raison, il est spécifique à la plate-forme, à l’exception de la " +"reconnaissance des heures UTC et GMT, qui sont toujours connues (et " +"considérées comme des fuseaux horaires ne respectant pas l’heure d’été)." #: ../Doc/library/time.rst:389 msgid "" @@ -599,6 +687,12 @@ msgid "" "platform and thus does not necessarily support all directives available that " "are not documented as supported." msgstr "" +"Seules les directives spécifiées dans la documentation sont prises en " +"charge. Parce que ``strftime()`` peut être implémenté différemment sur " +"chaque plate-forme, il peut parfois offrir plus de directives que celles " +"listées. Mais ``strptime()`` est indépendant de toute plate-forme et ne " +"supporte donc pas nécessairement toutes les directives disponibles qui ne " +"sont pas documentées comme gérées." #: ../Doc/library/time.rst:398 msgid "" @@ -607,10 +701,14 @@ msgid "" "tuple` interface: values can be accessed by index and by attribute name. " "The following values are present:" msgstr "" +"Le type de la séquence de valeur temporelle renvoyé par :func:`gmtime`, :" +"func:`localtime` et :func:`strptime`. Semblable à un :term:`named tuple` : " +"ses valeurs sont accessibles par index et par nom d’attribut. Les valeurs " +"suivantes sont présentes :" #: ../Doc/library/time.rst:404 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/time.rst:404 msgid "Attribute" @@ -630,7 +728,7 @@ msgstr ":attr:`tm_year`" #: ../Doc/library/time.rst:406 msgid "(for example, 1993)" -msgstr "" +msgstr "(par exemple, 1993)" #: ../Doc/library/time.rst:408 msgid "1" @@ -642,7 +740,7 @@ msgstr ":attr:`tm_mon`" #: ../Doc/library/time.rst:408 msgid "range [1, 12]" -msgstr "" +msgstr "plage [1, 12]" #: ../Doc/library/time.rst:410 msgid "2" @@ -654,7 +752,7 @@ msgstr ":attr:`tm_mday`" #: ../Doc/library/time.rst:410 msgid "range [1, 31]" -msgstr "" +msgstr "plage [1, 31]" #: ../Doc/library/time.rst:412 msgid "3" @@ -666,7 +764,7 @@ msgstr ":attr:`tm_hour`" #: ../Doc/library/time.rst:412 msgid "range [0, 23]" -msgstr "" +msgstr "plage [0, 23]" #: ../Doc/library/time.rst:414 msgid "4" @@ -678,7 +776,7 @@ msgstr ":attr:`tm_min`" #: ../Doc/library/time.rst:414 msgid "range [0, 59]" -msgstr "" +msgstr "plage [0, 59]" #: ../Doc/library/time.rst:416 msgid "5" @@ -690,7 +788,7 @@ msgstr ":attr:`tm_sec`" #: ../Doc/library/time.rst:416 msgid "range [0, 61]; see **(2)** in :func:`strftime` description" -msgstr "" +msgstr "plage [0, 61]; voir **(2)** dans la description :func:`strftime`" #: ../Doc/library/time.rst:419 msgid "6" @@ -702,7 +800,7 @@ msgstr ":attr:`tm_wday`" #: ../Doc/library/time.rst:419 msgid "range [0, 6], Monday is 0" -msgstr "" +msgstr "plage [0, 6], Lundi valant 0" #: ../Doc/library/time.rst:421 msgid "7" @@ -714,7 +812,7 @@ msgstr ":attr:`tm_yday`" #: ../Doc/library/time.rst:421 msgid "range [1, 366]" -msgstr "" +msgstr "plage [1, 366]" #: ../Doc/library/time.rst:423 msgid "8" @@ -726,7 +824,7 @@ msgstr ":attr:`tm_isdst`" #: ../Doc/library/time.rst:423 msgid "0, 1 or -1; see below" -msgstr "" +msgstr "``0``, ``1`` or ``-1`` ; voir en bas" #: ../Doc/library/time.rst:428 msgid "" @@ -742,6 +840,10 @@ msgid "" "that this is not known, and will usually result in the correct state being " "filled in." msgstr "" +"Dans les appels à :func:`mktime`, :attr:`tm_isdst` peut être défini sur 1 " +"lorsque l’heure d'été est en vigueur et sur 0 lorsque ce n’est pas le cas. " +"Une valeur de ``-1`` indique que cela n’est pas connu et entraînera " +"généralement le remplissage de l’état correct." #: ../Doc/library/time.rst:437 msgid "" @@ -749,6 +851,9 @@ msgid "" "class:`struct_time`, or having elements of the wrong type, a :exc:" "`TypeError` is raised." msgstr "" +"Lorsqu’un *tuple* de longueur incorrecte est passé à une fonction acceptant " +"une :class:`struct_time`, ou comportant des éléments de type incorrect, une " +"exception :exc:`TypeError` est levé." #: ../Doc/library/time.rst:444 msgid "" @@ -789,20 +894,27 @@ msgid "" "affect the output of functions like :func:`localtime` without calling :func:" "`tzset`, this behavior should not be relied on." msgstr "" +"Bien que dans de nombreux cas, la modification de la variable " +"d’environnement :envvar:`TZ` puisse affecter la sortie de fonctions telles " +"que :func:`localtime` sans appeler :func:`tzset`, ce comportement n'est pas " +"garanti." #: ../Doc/library/time.rst:480 msgid "The :envvar:`TZ` environment variable should contain no whitespace." msgstr "" +"La variable d’environnement :envvar:`TZ` ne doit contenir aucun espace." #: ../Doc/library/time.rst:482 msgid "" "The standard format of the :envvar:`TZ` environment variable is (whitespace " "added for clarity)::" msgstr "" +"Le format standard de la variable d’environnement :envvar:`TZ` est (espaces " +"ajoutés pour plus de clarté)::" #: ../Doc/library/time.rst:487 msgid "Where the components are:" -msgstr "" +msgstr "Où les composants sont :" #: ../Doc/library/time.rst:491 msgid "``std`` and ``dst``" @@ -813,6 +925,8 @@ msgid "" "Three or more alphanumerics giving the timezone abbreviations. These will be " "propagated into time.tzname" msgstr "" +"Trois alphanumériques ou plus donnant les abréviations du fuseau horaire. " +"Ceux-ci seront propagés dans *time.tzname*" #: ../Doc/library/time.rst:497 msgid "``offset``" @@ -825,6 +939,11 @@ msgid "" "of the Prime Meridian; otherwise, it is west. If no offset follows dst, " "summer time is assumed to be one hour ahead of standard time." msgstr "" +"Le décalage a la forme suivante : ``± hh[:mm[:ss]]``. Cela indique la valeur " +"ajoutée à l’heure locale pour arriver à UTC. S'il est précédé d’un ``'-'``, " +"le fuseau horaire est à l’est du Premier Méridien ; sinon, c’est l’ouest. Si " +"aucun décalage ne suit *dst*, l’heure d’été est supposée être en avance " +"d’une heure sur l’heure standard." #: ../Doc/library/time.rst:519 msgid "``start[/time], end[/time]``" @@ -835,6 +954,8 @@ msgid "" "Indicates when to change to and back from DST. The format of the start and " "end dates are one of the following:" msgstr "" +"Indique quand passer à DST et en revenir. Le format des dates de début et de " +"fin est l’un des suivants :" #: ../Doc/library/time.rst:505 msgid ":samp:`J{n}`" @@ -845,6 +966,9 @@ msgid "" "The Julian day *n* (1 <= *n* <= 365). Leap days are not counted, so in all " "years February 28 is day 59 and March 1 is day 60." msgstr "" +"Le jour Julien *n* (1 <= *n* <= 365). Les jours bissextiles ne sont pas " +"comptabilisés. Par conséquent, le 28 février est le 59\\ :sup:`e` jour et le " +"1\\ :sup:`er` Mars est le 60\\ :sup:`e` jour de toutes les années." #: ../Doc/library/time.rst:509 msgid ":samp:`{n}`" @@ -855,6 +979,8 @@ msgid "" "The zero-based Julian day (0 <= *n* <= 365). Leap days are counted, and it " "is possible to refer to February 29." msgstr "" +"Le jour Julien de base zéro (0 <= *n* <= 365). Les jours bissextiles sont " +"comptés et il est possible de se référer au 29 février." #: ../Doc/library/time.rst:516 msgid ":samp:`M{m}.{n}.{d}`" @@ -873,6 +999,9 @@ msgid "" "``time`` has the same format as ``offset`` except that no leading sign ('-' " "or '+') is allowed. The default, if time is not given, is 02:00:00." msgstr "" +"``time`` a le même format que ``offset`` sauf qu’aucun signe de direction " +"(``'-'`` ou ``'+'``) n’est autorisé. La valeur par défaut, si l’heure n’est " +"pas spécifiée, est 02:00:00." #: ../Doc/library/time.rst:532 msgid "" @@ -884,6 +1013,14 @@ msgid "" "located at :file:`/usr/share/zoneinfo`. For example, ``'US/Eastern'``, " "``'Australia/Melbourne'``, ``'Egypt'`` or ``'Europe/Amsterdam'``. ::" msgstr "" +"Sur de nombreux systèmes Unix (y compris \\*BSD, Linux, Solaris et Darwin), " +"il est plus pratique d’utiliser la base de données *zoneinfo* (:manpage:" +"`tzfile (5)`) du système pour spécifier les règles de fuseau horaire. Pour " +"ce faire, définissez la variable d’environnement :envvar:`TZ` sur le chemin " +"du fichier de fuseau horaire requis, par rapport à la racine de la base de " +"données du système *zoneinfo*, généralement situé à :file:`/usr/share/" +"zoneinfo`. Par exemple, ``'US/Eastern'``, ``'Australia/Melbourne'``, " +"``'Egypt'`` ou ``'Europe/Amsterdam'``. ::" #: ../Doc/library/time.rst:553 msgid "Module :mod:`datetime`" @@ -891,7 +1028,7 @@ msgstr "Module :mod:`datetime`" #: ../Doc/library/time.rst:553 msgid "More object-oriented interface to dates and times." -msgstr "" +msgstr "Interface plus orientée objet vers les dates et les heures." #: ../Doc/library/time.rst:557 msgid "Module :mod:`locale`" @@ -903,6 +1040,9 @@ msgid "" "interpretation of many format specifiers in :func:`strftime` and :func:" "`strptime`." msgstr "" +"Services d’internationalisation. Les paramètres régionaux affectent " +"l’interprétation de nombreux spécificateurs de format dans :func:`strftime` " +"et :func:`strptime`." #: ../Doc/library/time.rst:560 msgid "Module :mod:`calendar`" @@ -913,6 +1053,8 @@ msgid "" "General calendar-related functions. :func:`~calendar.timegm` is the " "inverse of :func:`gmtime` from this module." msgstr "" +"Fonctions générales liées au calendrier. :func:`~calendar.timegm` est " +"l’inverse de :func:`gmtime` à partir de ce module." #: ../Doc/library/time.rst:564 msgid "Footnotes" @@ -928,3 +1070,11 @@ msgid "" "digit year has been first recommended by :rfc:`1123` and then mandated by :" "rfc:`2822`." msgstr "" +"L'utilisation de ``%Z`` est maintenant obsolète, mais l'échappement ``%z`` " +"qui donne le décalage horaire jusqu'à la minute et dépendant des paramètres " +"régionaux n'est pas pris en charge par toutes les bibliothèques C ANSI. En " +"outre, une lecture stricte du standard :rfc:`822` de 1982 milite pour une " +"année à deux chiffres (%y plutôt que %Y), mais la pratique a migré vers des " +"années à 4 chiffres de long avant l'année 2000. Après cela, la :rfc:`822` " +"est devenue obsolète et l'année à 4 chiffres a été recommandée pour la " +"première fois par la :rfc:`1123` puis rendue obligatoire par la :rfc:`2822`." diff --git a/library/timeit.po b/library/timeit.po index c30485bc..01b4f238 100644 --- a/library/timeit.po +++ b/library/timeit.po @@ -176,7 +176,7 @@ msgstr "" #: ../Doc/library/timeit.rst:176 msgid "Command-Line Interface" -msgstr "" +msgstr "Interface en ligne de commande" #: ../Doc/library/timeit.rst:178 msgid "" diff --git a/library/tkinter.po b/library/tkinter.po index 4bbadcf6..ee5eba01 100644 --- a/library/tkinter.po +++ b/library/tkinter.po @@ -667,7 +667,7 @@ msgstr "" #: ../Doc/library/tkinter.rst:438 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/tkinter.rst:438 msgid "Meaning" @@ -683,7 +683,7 @@ msgstr "0" #: ../Doc/library/tkinter.rst:440 msgid "option name" -msgstr "" +msgstr "Nom des options" #: ../Doc/library/tkinter.rst:440 ../Doc/library/tkinter.rst:442 msgid "``'relief'``" diff --git a/library/turtle.po b/library/turtle.po index 8ec78a63..d179cf33 100644 --- a/library/turtle.po +++ b/library/turtle.po @@ -30,6 +30,9 @@ msgid "" "was part of the original Logo programming language developed by Wally " "Feurzig and Seymour Papert in 1966." msgstr "" +"Une façon populaire pour initier les enfants au monde du développement est " +"le module Tortue graphique. Ce dernier faisait partie du langage de " +"programmation Logo créé par Wally Feurzig et Seymout Papert en 1966." #: ../Doc/library/turtle.rst:21 msgid "" @@ -39,18 +42,26 @@ msgid "" "moves. Give it the command ``turtle.right(25)``, and it rotates in-place 25 " "degrees clockwise." msgstr "" +"Imaginez un robot sous forme de tortue partant au centre (0, 0) d'un plan " +"cartésien x-y. Après un ``import turtle``, exécutez la commande ``turtle." +"forward(15)`` et la tortue se déplace (sur l'écran) de 15 pixels en face " +"d'elle, en dessinant une ligne." #: ../Doc/library/turtle.rst:26 msgid "" "By combining together these and similar commands, intricate shapes and " "pictures can easily be drawn." msgstr "" +"On peut donc facilement construire des formes et images à partir de " +"commandes simples." #: ../Doc/library/turtle.rst:29 msgid "" "The :mod:`turtle` module is an extended reimplementation of the same-named " "module from the Python standard distribution up to version Python 2.5." msgstr "" +"Le module :mod:`turtle` est une version étendue du module homonyme " +"appartenant à la distribution standard de Python jusqu'à la version 2.5." #: ../Doc/library/turtle.rst:32 msgid "" @@ -59,6 +70,11 @@ msgid "" "programmer to use all the commands, classes and methods interactively when " "using the module from within IDLE run with the ``-n`` switch." msgstr "" +"Cette bibliothèque essaye de garder les avantages de l'ancien module et " +"d'être (presque) 100% compatible avec celui-ci. Cela permet à l'apprenti " +"développeur d'utiliser toutes les commandes, classes et méthodes de façon " +"interactive pendant qu'il utilise le module depuis IDLE lancé avec l'option " +"``-n``." #: ../Doc/library/turtle.rst:37 msgid "" @@ -71,6 +87,7 @@ msgstr "" #: ../Doc/library/turtle.rst:41 msgid "The object-oriented interface uses essentially two+two classes:" msgstr "" +"L'interface orientée objet utilise essentiellement deux + deux classes :" #: ../Doc/library/turtle.rst:43 msgid "" @@ -87,12 +104,19 @@ msgid "" "used as a standalone tool for doing graphics. As a singleton object, " "inheriting from its class is not possible." msgstr "" +"La fonction :func:`Screen` renvoie un singleton d'une sous-classe de :class:" +"`TurtleScreen`. Elle doit être utilisée quand le module :mod:`turtle` est " +"utilisé de façon autonome pour dessiner. Le singleton renvoyé ne peut " +"hériter de sa classe." #: ../Doc/library/turtle.rst:53 msgid "" "All methods of TurtleScreen/Screen also exist as functions, i.e. as part of " "the procedure-oriented interface." msgstr "" +"Toutes les méthodes de *TurtleScreen*/*Screen* existent également sous la " +"forme de fonctions, c'est-à-dire que ces dernières peuvent être utilisées " +"dans un style procédural." #: ../Doc/library/turtle.rst:56 msgid "" @@ -101,6 +125,10 @@ msgid "" "ScrolledCanvas or TurtleScreen as argument, so the RawTurtle objects know " "where to draw." msgstr "" +"La classe :class:`RawTurtle` (alias :class:`RawPen`) définit des objets " +"*Turtle* qui peuvent dessiner sur la classe :class:`TurtleScreen`. Son " +"constructeur prend en paramètre un *Canvas*, un *ScrolledCanvas* ou un " +"*TurtleScreen* permettant à l'objet *RawTurtle* de savoir où écrire." #: ../Doc/library/turtle.rst:60 msgid "" @@ -114,6 +142,9 @@ msgid "" "All methods of RawTurtle/Turtle also exist as functions, i.e. part of the " "procedure-oriented interface." msgstr "" +"Toutes les méthodes de *RawTurtle*/*Turtle* existent également sous la forme " +"de fonctions, c'est-à-dire que ces dernières pourront être utilisées en " +"style procédural." #: ../Doc/library/turtle.rst:67 msgid "" @@ -124,6 +155,12 @@ msgid "" "(unnamed) turtle object is automatically created whenever any of the " "functions derived from a Turtle method is called." msgstr "" +"L'interface procédurale met à disposition des fonctions équivalentes à " +"celles des méthodes des classes :class:`Screen` et :class:`Turtle`. Le nom " +"d'une fonction est le même que la méthode équivalente. Un objet *Screen* est " +"créé automatiquement dès qu'une fonction dérivée d'une méthode *Screen* est " +"appelée. Un objet *Turtle* (sans nom) est créé automatiquement dès qu'une " +"fonction dérivée d'une méthode *Turtle* est appelée." #: ../Doc/library/turtle.rst:74 msgid "" @@ -137,6 +174,9 @@ msgid "" "Methods, of course, have the additional first argument *self* which is " "omitted here." msgstr "" +"La liste des paramètres des fonctions est donnée dans cette documentation. " +"Les méthodes ont, évidemment, le paramètre *self* comme premier argument, " +"mais ce dernier n'est pas indiqué ici." #: ../Doc/library/turtle.rst:83 msgid "Overview over available Turtle and Screen methods" @@ -144,15 +184,15 @@ msgstr "" #: ../Doc/library/turtle.rst:86 msgid "Turtle methods" -msgstr "" +msgstr "Les méthodes du module *Turtle*" #: ../Doc/library/turtle.rst:117 ../Doc/library/turtle.rst:222 msgid "Turtle motion" -msgstr "" +msgstr "Les mouvements dans le module *Turtle*" #: ../Doc/library/turtle.rst:105 msgid "Move and draw" -msgstr "" +msgstr "Bouger et dessiner" #: ../Doc/library/turtle.rst:0 msgid ":func:`forward` | :func:`fd`" diff --git a/library/unittest.po b/library/unittest.po index 477cf5ae..9f684ec4 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -319,43 +319,54 @@ msgstr "" #: ../Doc/library/unittest.rst:189 msgid "Command-Line Interface" -msgstr "" +msgstr "Interface en ligne de commande" #: ../Doc/library/unittest.rst:191 msgid "" "The unittest module can be used from the command line to run tests from " "modules, classes or even individual test methods::" msgstr "" +"Le module *unittest* est utilisable depuis la ligne de commande pour " +"exécuter des tests à partir de modules, de classes ou même de méthodes de " +"test individuelles  ::" #: ../Doc/library/unittest.rst:198 msgid "" "You can pass in a list with any combination of module names, and fully " "qualified class or method names." msgstr "" +"La commande accepte en argument une liste de n'importe quelle combinaison de " +"noms de modules et de noms de classes ou de méthodes entièrement qualifiés." #: ../Doc/library/unittest.rst:201 msgid "" "You can run tests with more detail (higher verbosity) by passing in the -v " "flag::" msgstr "" +"Pour obtenir plus de détails lors de l'exécution utilisez l'option `-v` " +"(plus de verbosité) ::" #: ../Doc/library/unittest.rst:205 msgid "For a list of all the command-line options::" msgstr "" +"Pour afficher la liste de toutes les options de la commande utilisez " +"l'option `-h` ::" #: ../Doc/library/unittest.rst:209 msgid "" "In earlier versions it was only possible to run individual test methods and " "not modules or classes." msgstr "" +"Dans les versions antérieures, il était seulement possible d'exécuter des " +"méthodes de test individuelles et non des modules ou des classes." #: ../Doc/library/unittest.rst:215 msgid "Command-line options" -msgstr "" +msgstr "Options de la ligne de commande" #: ../Doc/library/unittest.rst:217 msgid ":program:`unittest` supports these command-line options:" -msgstr "" +msgstr "Le programme : `unittest` gère ces options de la ligne de commande :" #: ../Doc/library/unittest.rst:223 msgid "" @@ -363,6 +374,10 @@ msgid "" "run. Output during a passing test is discarded. Output is echoed normally on " "test fail or error and is added to the failure messages." msgstr "" +"Les flux de sortie et d'erreur standards sont mis en mémoire tampon pendant " +"l'exécution des tests. L'affichage produit par un test réussi n'est pas pris " +"en compte. Les sorties d'affichages d'un test en échec ou en erreur sont " +"conservés et ajoutés aux messages d'erreur." #: ../Doc/library/unittest.rst:229 msgid "" @@ -370,29 +385,38 @@ msgid "" "then reports all the results so far. A second :kbd:`Control-C` raises the " "normal :exc:`KeyboardInterrupt` exception." msgstr "" +"Utiliser :kbd:`Control-C` pendant l'exécution des tests attend que le test " +"en cours se termine, puis affiche tous les résultats obtenus jusqu'ici. Une " +"seconde utilisation de :kbd:`Control-C` provoque l'exception normale :exc:" +"`KeyboardInterrupt`." #: ../Doc/library/unittest.rst:233 msgid "" "See `Signal Handling`_ for the functions that provide this functionality." msgstr "" +"Voir `Signal Handling`_ pour les fonctions qui utilisent cette " +"fonctionnalité." #: ../Doc/library/unittest.rst:237 msgid "Stop the test run on the first error or failure." -msgstr "" +msgstr "Arrête l'exécution des tests lors du premier cas d'erreur ou d'échec." #: ../Doc/library/unittest.rst:239 msgid "The command-line options ``-b``, ``-c`` and ``-f`` were added." msgstr "" +"Les options de ligne de commande ``-b``, ``-c`` et ``-f`` ont été ajoutées." #: ../Doc/library/unittest.rst:242 msgid "" "The command line can also be used for test discovery, for running all of the " "tests in a project or just a subset." msgstr "" +"La ligne de commande peut également être utilisée pour découvrir les tests, " +"pour exécuter tous les tests dans un projet ou juste un sous-ensemble." #: ../Doc/library/unittest.rst:249 msgid "Test Discovery" -msgstr "" +msgstr "Découverte des tests" #: ../Doc/library/unittest.rst:253 msgid "" @@ -408,26 +432,29 @@ msgid "" "Test discovery is implemented in :meth:`TestLoader.discover`, but can also " "be used from the command line. The basic command-line usage is::" msgstr "" +"La découverte de tests est implémentée dans :meth:`TestLoader.discover`, " +"mais peut également être utilisée depuis la ligne de commande. Par exemple " +" ::" #: ../Doc/library/unittest.rst:265 msgid "The ``discover`` sub-command has the following options:" -msgstr "" +msgstr "La sous-commande ``discover`` a les options suivantes  ::" #: ../Doc/library/unittest.rst:271 msgid "Verbose output" -msgstr "" +msgstr "Affichage plus détaillé" #: ../Doc/library/unittest.rst:275 msgid "Directory to start discovery (``.`` default)" -msgstr "" +msgstr "Répertoire racine pour démarrer la découverte (``.`` par défaut)." #: ../Doc/library/unittest.rst:279 msgid "Pattern to match test files (``test*.py`` default)" -msgstr "" +msgstr "Motif de détection des fichiers de test (``test*.py`` par défaut)" #: ../Doc/library/unittest.rst:283 msgid "Top level directory of project (defaults to start directory)" -msgstr "" +msgstr "Dossier du premier niveau du projet (Par défaut le dossier de départ)" #: ../Doc/library/unittest.rst:285 msgid "" @@ -435,6 +462,9 @@ msgid "" "positional arguments in that order. The following two command lines are " "equivalent::" msgstr "" +"Les options :option:`-s`, :option:`-p` et :option:`-t` peuvent être passées " +"en arguments positionnels dans cet ordre. Les deux lignes de commande " +"suivantes sont équivalentes  ::" #: ../Doc/library/unittest.rst:292 msgid "" @@ -443,6 +473,10 @@ msgid "" "supply will then be imported and its location on the filesystem will be used " "as the start directory." msgstr "" +"Il est aussi possible de passer un nom de paquet plutôt qu'un chemin, par " +"exemple ``monprojet.souspaquet.test``, comme répertoire racine. Le nom du " +"paquet fourni est alors importé et son emplacement sur le système de " +"fichiers est utilisé comme répertoire racine." #: ../Doc/library/unittest.rst:299 msgid "" @@ -451,6 +485,11 @@ msgid "" "into package names to import. For example :file:`foo/bar/baz.py` will be " "imported as ``foo.bar.baz``." msgstr "" +"Le mécanisme de découverte charge les tests en les important. Une fois que " +"le système a trouvé tous les fichiers de tests du répertoire de démarrage " +"spécifié, il transforme les chemins en noms de paquets à importer. Par " +"exemple :file:`truc/bidule/machin.py` est importé sous ``truc.bidule." +"machin``." #: ../Doc/library/unittest.rst:304 msgid "" @@ -458,6 +497,10 @@ msgid "" "different copy of the package then the import *could* happen from the wrong " "place. If this happens test discovery will warn you and exit." msgstr "" +"Si un paquet est installé globalement et que le mécanisme de découverte de " +"tests est effectué sur une copie différente du paquet, l'importation *peut* " +"se produire à partir du mauvais endroit. Si cela arrive, le système émet un " +"avertissement et se termine." #: ../Doc/library/unittest.rst:308 msgid "" @@ -465,16 +508,22 @@ msgid "" "directory then discover assumes that whichever location it imports from is " "the location you intended, so you will not get the warning." msgstr "" +"Si vous donnez le répertoire racine sous la forme d'un nom de paquet plutôt " +"que d'un chemin d'accès à un répertoire, alors Python suppose que " +"l'emplacement à partir duquel il importe est l'emplacement que vous voulez, " +"vous ne verrez donc pas l'avertissement." #: ../Doc/library/unittest.rst:313 msgid "" "Test modules and packages can customize test loading and discovery by " "through the `load_tests protocol`_." msgstr "" +"Les modules de test et les paquets peuvent adapter le chargement et la " +"découverte des tests en utilisant le protocole `load_tests protocol`_." #: ../Doc/library/unittest.rst:320 msgid "Organizing test code" -msgstr "" +msgstr "Organiser le code de test" #: ../Doc/library/unittest.rst:322 msgid "" @@ -498,6 +547,9 @@ msgid "" "contained, such that it can be run either in isolation or in arbitrary " "combination with any number of other test cases." msgstr "" +"Le code de test d'une instance de :class:`TestCase` doit être entièrement " +"autonome, de sorte qu'il puisse être exécuté soit de manière isolée, soit en " +"combinaison arbitraire avec un nombre quelconque d'autres scénarios de test." #: ../Doc/library/unittest.rst:336 msgid "" @@ -637,44 +689,58 @@ msgid "" "are several advantages to placing the test code in a separate module, such " "as :file:`test_widget.py`:" msgstr "" +"Vous pouvez placer les définitions des scénarios de test et des suites de " +"test dans le même module que le code à tester (tel que :file:`composant." +"py`), mais il y a plusieurs avantages à placer le code de test dans un " +"module séparé, tel que :file:`test_composant.py` :" #: ../Doc/library/unittest.rst:496 msgid "The test module can be run standalone from the command line." msgstr "" +"Le module de test peut être exécuté indépendamment depuis la ligne de " +"commande." #: ../Doc/library/unittest.rst:498 msgid "The test code can more easily be separated from shipped code." -msgstr "" +msgstr "Le code de test est plus facilement séparable du code livré." #: ../Doc/library/unittest.rst:500 msgid "" "There is less temptation to change test code to fit the code it tests " "without a good reason." msgstr "" +"La tentation est moins grande de changer le code de test pour l'adapter au " +"code qu'il teste sans avoir une bonne raison." #: ../Doc/library/unittest.rst:503 msgid "" "Test code should be modified much less frequently than the code it tests." msgstr "" +"Le code de test doit être modifié beaucoup moins souvent que le code qu'il " +"teste." #: ../Doc/library/unittest.rst:505 msgid "Tested code can be refactored more easily." -msgstr "" +msgstr "Le code testé peut être réusiné plus facilement." #: ../Doc/library/unittest.rst:507 msgid "" "Tests for modules written in C must be in separate modules anyway, so why " "not be consistent?" msgstr "" +"Les tests pour les modules écrits en C doivent de toute façon être dans des " +"modules séparés, alors pourquoi ne pas être cohérent ?" #: ../Doc/library/unittest.rst:510 msgid "" "If the testing strategy changes, there is no need to change the source code." msgstr "" +"Si la stratégie de test change, il n'est pas nécessaire de changer le code " +"source." #: ../Doc/library/unittest.rst:516 msgid "Re-using old test code" -msgstr "" +msgstr "Réutilisation d'ancien code de test" #: ../Doc/library/unittest.rst:518 msgid "" @@ -682,6 +748,9 @@ msgid "" "to run from :mod:`unittest`, without converting every old test function to " "a :class:`TestCase` subclass." msgstr "" +"Certains utilisateurs constatent qu'ils ont du code de test existant qu'ils " +"souhaitent exécuter à partir de :mod:`unittest`, sans convertir chaque " +"ancienne fonction de test en une sous-classe de :class:`TestCase`." #: ../Doc/library/unittest.rst:522 msgid "" @@ -689,10 +758,15 @@ msgid "" "This subclass of :class:`TestCase` can be used to wrap an existing test " "function. Set-up and tear-down functions can also be provided." msgstr "" +"Pour cette raison, :mod:`unittest` fournit une classe :class:" +"`FunctionTestCase`. Cette sous-classe de :class:`TestCase` peut être " +"utilisée pour encapsuler une fonction de test existante. Des fonctions de " +"mise en place (*setUp*) et de démantèlement (*tearDown*) peuvent également " +"être fournies." #: ../Doc/library/unittest.rst:526 msgid "Given the following test function::" -msgstr "" +msgstr "Étant donnée la fonction de test suivante  ::" #: ../Doc/library/unittest.rst:533 msgid "one can create an equivalent test case instance as follows::" @@ -720,6 +794,11 @@ msgid "" "is not recommended. Taking the time to set up proper :class:`TestCase` " "subclasses will make future test refactorings infinitely easier." msgstr "" +"Même si la classe :class:`FunctionTestCase` peut être utilisée pour " +"convertir rapidement une base de test existante vers un système basé sur :" +"mod:`unittest`, cette approche n'est pas recommandée. Prendre le temps de " +"bien configurer les sous-classes de :class:`TestCase` simplifiera " +"considérablement les futurs réusinages des tests." #: ../Doc/library/unittest.rst:557 msgid "" @@ -728,10 +807,15 @@ msgid "" "class that can automatically build :class:`unittest.TestSuite` instances " "from the existing :mod:`doctest`\\ -based tests." msgstr "" +"Dans certains cas, les tests déjà existants ont pu être écrits avec le " +"module :mod:`doctest`. Dans ce cas, :mod:`doctest` fournit une classe :" +"class:`DocTestSuite` qui peut construire automatiquement des instances de la " +"classe :class:`unittest.TestSuite` depuis des tests basés sur le module :mod:" +"`doctest`." #: ../Doc/library/unittest.rst:566 msgid "Skipping tests and expected failures" -msgstr "" +msgstr "Ignorer des tests et des erreurs prévisibles" #: ../Doc/library/unittest.rst:570 msgid "" @@ -740,34 +824,46 @@ msgid "" "a test that is broken and will fail, but shouldn't be counted as a failure " "on a :class:`TestResult`." msgstr "" +"*Unittest* permet d'ignorer des méthodes de test individuelles et même des " +"classes entières de tests. De plus, il prend en charge le marquage d'un test " +"comme étant une \"erreur prévue\". Un test qui est cassé et qui échoue, mais " +"qui ne doit pas être considéré comme un échec dans la classe :class:" +"`TestResult`." #: ../Doc/library/unittest.rst:575 msgid "" "Skipping a test is simply a matter of using the :func:`skip` :term:" "`decorator` or one of its conditional variants." msgstr "" +"Ignorer un test consiste à utiliser le :term:`décorateur ` :func:" +"`skip` ou une de ses variantes conditionnelles." #: ../Doc/library/unittest.rst:578 msgid "Basic skipping looks like this::" -msgstr "" +msgstr "Un exemple de tests à ignorer  ::" #: ../Doc/library/unittest.rst:597 msgid "This is the output of running the example above in verbose mode::" msgstr "" +"Ceci est le résultat de l'exécution de l'exemple ci-dessus en mode verbeux " +" ::" #: ../Doc/library/unittest.rst:608 msgid "Classes can be skipped just like methods::" -msgstr "" +msgstr "Les classes peuvent être ignorées tout comme les méthodes  ::" #: ../Doc/library/unittest.rst:615 msgid "" ":meth:`TestCase.setUp` can also skip the test. This is useful when a " "resource that needs to be set up is not available." msgstr "" +"La méthode :meth:`TestCase.setUp` permet également d'ignorer le test. Ceci " +"est utile lorsqu'une ressource qui doit être configurée n'est pas disponible." #: ../Doc/library/unittest.rst:618 msgid "Expected failures use the :func:`expectedFailure` decorator. ::" msgstr "" +"Les erreurs prévisibles utilisent le décorateur :func:`expectedFailure`  ::" #: ../Doc/library/unittest.rst:625 msgid "" @@ -775,24 +871,32 @@ msgid "" "calls :func:`skip` on the test when it wants it to be skipped. This " "decorator skips the test unless the passed object has a certain attribute::" msgstr "" +"Il est facile de faire ses propres décorateurs en créant un décorateur qui " +"appelle :func:`skip` sur le test que vous voulez ignorer. Par exemple, ce " +"décorateur ignore le test à moins que l'objet passé ne possède un certain " +"attribut  ::" #: ../Doc/library/unittest.rst:634 msgid "The following decorators implement test skipping and expected failures:" msgstr "" +"Les décorateurs suivants implémentent le système d'omission des tests et les " +"erreurs prévisibles  ::" #: ../Doc/library/unittest.rst:638 msgid "" "Unconditionally skip the decorated test. *reason* should describe why the " "test is being skipped." msgstr "" +"Ignore sans condition le test décoré. *La raison* doit décrire la raison " +"pour laquelle le test est omis." #: ../Doc/library/unittest.rst:643 msgid "Skip the decorated test if *condition* is true." -msgstr "" +msgstr "Ignore le test décoré si la *condition* est vraie." #: ../Doc/library/unittest.rst:647 msgid "Skip the decorated test unless *condition* is true." -msgstr "" +msgstr "Ignore le test décoré sauf si la *condition* est vraie." #: ../Doc/library/unittest.rst:651 msgid "" @@ -802,13 +906,15 @@ msgstr "" #: ../Doc/library/unittest.rst:656 msgid "This exception is raised to skip a test." -msgstr "" +msgstr "Cette exception est levée pour ignorer un test." #: ../Doc/library/unittest.rst:658 msgid "" "Usually you can use :meth:`TestCase.skipTest` or one of the skipping " "decorators instead of raising this directly." msgstr "" +"Habituellement, on utilise :meth:`TestCase.skipTest` ou l'un des décorateurs " +"d'omission au lieu de le lever une exception directement." #: ../Doc/library/unittest.rst:661 msgid "" @@ -819,15 +925,15 @@ msgstr "" #: ../Doc/library/unittest.rst:668 msgid "Classes and functions" -msgstr "" +msgstr "Classes et fonctions" #: ../Doc/library/unittest.rst:670 msgid "This section describes in depth the API of :mod:`unittest`." -msgstr "" +msgstr "Cette section décrit en détail l'API de :mod:`unittest`." #: ../Doc/library/unittest.rst:676 msgid "Test cases" -msgstr "" +msgstr "Scénarios de tests" #: ../Doc/library/unittest.rst:680 msgid "" @@ -863,10 +969,15 @@ msgid "" "and report failures, and some inquiry methods allowing information about the " "test itself to be gathered." msgstr "" +"Les instances de la classe :class:`TestCase` fournissent trois groupes de " +"méthodes : un groupe utilisé pour exécuter le test, un autre utilisé par " +"l'implémentation du test pour vérifier les conditions et signaler les " +"échecs, et quelques méthodes de recherche permettant de recueillir des " +"informations sur le test lui-même." #: ../Doc/library/unittest.rst:707 msgid "Methods in the first group (running the test) are:" -msgstr "" +msgstr "Les méthodes du premier groupe (exécution du test) sont :" #: ../Doc/library/unittest.rst:712 msgid "" @@ -875,6 +986,11 @@ msgid "" "`SkipTest`, any exception raised by this method will be considered an error " "rather than a test failure. The default implementation does nothing." msgstr "" +"Méthode appelée pour réaliser la mise en place du test. Elle est exécutée " +"immédiatement avant l'appel de la méthode de test ; à l'exception de :exc:" +"`AssertionError` ou :exc:`SkipTest`, toute exception levée par cette méthode " +"est considérée comme une erreur et non pas comme un échec du test. " +"L'implémentation par défaut ne fait rien." #: ../Doc/library/unittest.rst:720 msgid "" @@ -888,6 +1004,16 @@ msgid "" "the :meth:`setUp` succeeds, regardless of the outcome of the test method. " "The default implementation does nothing." msgstr "" +"Méthode appelée immédiatement après l'appel de la méthode de test et " +"l'enregistrement du résultat. Elle est appelée même si la méthode de test a " +"levé une exception. De fait, l'implémentation d'un sous-classes doit être " +"fait avec précaution si vous vérifiez l'état interne de la classe. Toute " +"exception, autre que :exc:`AssertionError` ou :exc:`SkipTest`, levée par " +"cette méthode est considérée comme une erreur supplémentaire plutôt que " +"comme un échec du test (augmentant ainsi le nombre total des erreurs " +"signalées). Cette méthode est appelée uniquement si l'exécution de :meth:" +"`setUp` est réussie quel que soit le résultat de la méthode de test. " +"L'implémentation par défaut ne fait rien." #: ../Doc/library/unittest.rst:733 msgid "" @@ -898,7 +1024,7 @@ msgstr "" #: ../Doc/library/unittest.rst:741 ../Doc/library/unittest.rst:756 msgid "See `Class and Module Fixtures`_ for more details." -msgstr "" +msgstr "Voir `Class and Module Fixtures`_ pour plus de détails." #: ../Doc/library/unittest.rst:748 msgid "" @@ -906,6 +1032,9 @@ msgid "" "``tearDownClass`` is called with the class as the only argument and must be " "decorated as a :meth:`classmethod`::" msgstr "" +"Méthode de classe appelée après l'exécution des tests de la classe en " +"question. ``tearDownClass`` est appelée avec la classe comme seul argument " +"et doit être décorée comme une :meth:`classmethod`  ::" #: ../Doc/library/unittest.rst:763 msgid "" @@ -919,12 +1048,17 @@ msgstr "" msgid "" "The same effect may be had by simply calling the :class:`TestCase` instance." msgstr "" +"Le même effet peut être obtenu en appelant simplement l'instance :class:" +"`TestCase`." #: ../Doc/library/unittest.rst:774 msgid "" "Calling this during a test method or :meth:`setUp` skips the current test. " "See :ref:`unittest-skipping` for more information." msgstr "" +"Appeler cette fonction pendant l'exécution d'une méthode de test ou de :meth:" +"`setUp` permet d'ignorer le test en cours. Voir :ref:`unittest-skipping` " +"pour plus d'informations." #: ../Doc/library/unittest.rst:782 msgid "" @@ -932,6 +1066,9 @@ msgid "" "by the test to be propagated to the caller, and can be used to support " "running tests under a debugger." msgstr "" +"Lance le test sans collecter le résultat. Ceci permet aux exceptions levées " +"par le test d'être propagées à l'appelant, et donc peut être utilisé pour " +"exécuter des tests sous un débogueur." #: ../Doc/library/unittest.rst:788 msgid "" @@ -939,6 +1076,10 @@ msgid "" "report failures. The following table lists the most commonly used methods " "(see the tables below for more assert methods):" msgstr "" +"La classe :class:`TestCase` fournit plusieurs méthodes d'assertion pour " +"vérifier et signaler les échecs. Le tableau suivant énumère les méthodes " +"les plus couramment utilisées (voir les tableaux ci-dessous pour plus de " +"méthodes d'assertion) :" #: ../Doc/library/unittest.rst:793 ../Doc/library/unittest.rst:908 #: ../Doc/library/unittest.rst:970 ../Doc/library/unittest.rst:1113 @@ -948,12 +1089,12 @@ msgstr "Méthode" #: ../Doc/library/unittest.rst:793 ../Doc/library/unittest.rst:908 #: ../Doc/library/unittest.rst:970 msgid "Checks that" -msgstr "" +msgstr "Vérifie que" #: ../Doc/library/unittest.rst:793 ../Doc/library/unittest.rst:908 #: ../Doc/library/unittest.rst:970 ../Doc/library/unittest.rst:1113 msgid "New in" -msgstr "" +msgstr "Disponible en" #: ../Doc/library/unittest.rst:795 msgid ":meth:`assertEqual(a, b) `" @@ -1078,6 +1219,8 @@ msgid "" "Test that *first* and *second* are equal. If the values do not compare " "equal, the test will fail." msgstr "" +"Vérifie que *first* et *second* sont égaux. Si les valeurs ne sont pas " +"égales, le test échouera." #: ../Doc/library/unittest.rst:842 msgid "" @@ -1092,16 +1235,19 @@ msgstr "" #: ../Doc/library/unittest.rst:849 msgid "Added the automatic calling of type-specific equality function." msgstr "" +"Ajout de l'appel automatique de la fonction d'égalité spécifique au type." #: ../Doc/library/unittest.rst:855 msgid "" "Test that *first* and *second* are not equal. If the values do compare " "equal, the test will fail." msgstr "" +"Vérifie que *first* et *second* ne sont pas égaux. Si les valeurs sont " +"égales, le test échouera." #: ../Doc/library/unittest.rst:861 msgid "Test that *expr* is true (or false)." -msgstr "" +msgstr "Vérifie que *expr* est vraie (ou fausse)." #: ../Doc/library/unittest.rst:863 msgid "" @@ -1111,20 +1257,27 @@ msgid "" "``assertEqual(a, b)`` instead of ``assertTrue(a == b)``), because they " "provide a better error message in case of failure." msgstr "" +"Notez que cela revient à utiliser ``bool(expr) is True`` et non à ``expr is " +"True`` (utilisez ``assertIs(expr, True)`` pour cette dernière). Cette " +"méthode doit également être évitée lorsque des méthodes plus spécifiques " +"sont disponibles (par exemple ``assertEqual(a, b)`` au lieu de " +"``assertTrue(a == b)``), car elles fournissent un meilleur message d'erreur " +"en cas d' échec." #: ../Doc/library/unittest.rst:873 msgid "" "Test that *first* and *second* evaluate (or don't evaluate) to the same " "object." msgstr "" +"Vérifie que *first* et *second* évaluent (ou n'évaluent pas) le même objet." #: ../Doc/library/unittest.rst:881 msgid "Test that *expr* is (or is not) ``None``." -msgstr "" +msgstr "Vérifie que *expr* est (ou n'est pas) la valeur ``None``." #: ../Doc/library/unittest.rst:889 msgid "Test that *first* is (or is not) in *second*." -msgstr "" +msgstr "Vérifie que *first* est (ou n'est pas) dans *second*." #: ../Doc/library/unittest.rst:897 msgid "" @@ -1132,6 +1285,10 @@ msgid "" "a tuple of classes, as supported by :func:`isinstance`). To check for the " "exact type, use :func:`assertIs(type(obj), cls) `." msgstr "" +"Vérifie que *obj* est (ou n'est pas) une instance de *cls* (Ce qui peut être " +"une classe ou un tuple de classes, comme utilisée par :func:`isinstance`). " +"Pour vérifier le type exact, utilisez :func:`assertIs(type(obj), cls) " +"`." #: ../Doc/library/unittest.rst:904 msgid "" @@ -1141,11 +1298,11 @@ msgstr "" #: ../Doc/library/unittest.rst:910 msgid ":meth:`assertRaises(exc, fun, *args, **kwds) `" -msgstr "" +msgstr ":meth:`assertRaises(exc, fun, *args, **kwds) `" #: ../Doc/library/unittest.rst:910 msgid "``fun(*args, **kwds)`` raises *exc*" -msgstr "" +msgstr "``fun(*args, **kwds)`` lève bien l'exception *exc*" #: ../Doc/library/unittest.rst:913 msgid "" @@ -1156,6 +1313,8 @@ msgstr "" #: ../Doc/library/unittest.rst:913 msgid "``fun(*args, **kwds)`` raises *exc* and the message matches regex *r*" msgstr "" +"``fun(*args, **kwds)`` lève bien l'exception *exc* et que le message " +"correspond au motif de l'expression régulière *r*" #: ../Doc/library/unittest.rst:920 msgid "" @@ -1166,6 +1325,12 @@ msgid "" "any of a group of exceptions, a tuple containing the exception classes may " "be passed as *exception*." msgstr "" +"Vérifie qu'une exception est levée lorsque *callable* est appelé avec " +"n'importe quel argument positionnel ou mot-clé qui est également passé à :" +"meth:`assertRaises`. Le test réussit si *exception* est levée, est en " +"erreur si une autre exception est levée, ou en échec si aucune exception " +"n'est levée. Pour capturer une exception d'un groupe d'exceptions, un couple " +"contenant les classes d'exceptions peut être passé à *exception*." #: ../Doc/library/unittest.rst:927 msgid "" @@ -1179,10 +1344,15 @@ msgid "" "`exception` attribute. This can be useful if the intention is to perform " "additional checks on the exception raised::" msgstr "" +"Le gestionnaire de contexte enregistre l'exception capturée dans son " +"attribut :attr:`exception`. Ceci est particulièrement utile si l'intention " +"est d'effectuer des contrôles supplémentaires sur l'exception levée  ::" #: ../Doc/library/unittest.rst:943 msgid "Added the ability to use :meth:`assertRaises` as a context manager." msgstr "" +"Ajout de la possibilité d'utiliser :meth:`assertRaises` comme gestionnaire " +"de contexte." #: ../Doc/library/unittest.rst:950 msgid "" @@ -1200,6 +1370,8 @@ msgstr "ou : ::" msgid "" "There are also other methods used to perform more specific checks, such as:" msgstr "" +"Il existe également d'autres méthodes utilisées pour effectuer des contrôles " +"plus spécifiques, telles que  ::" #: ../Doc/library/unittest.rst:972 msgid ":meth:`assertAlmostEqual(a, b) `" @@ -1211,7 +1383,7 @@ msgstr "``round(a-b, 7) == 0``" #: ../Doc/library/unittest.rst:975 msgid ":meth:`assertNotAlmostEqual(a, b) `" -msgstr "" +msgstr ":meth:`assertNotAlmostEqual(a, b) `" #: ../Doc/library/unittest.rst:975 msgid "``round(a-b, 7) != 0``" @@ -1290,12 +1462,20 @@ msgid "" "the values to the given number of *decimal places* (i.e. like the :func:" "`round` function) and not *significant digits*." msgstr "" +"Vérifie que *first* et *second* sont approximativement (ou pas " +"approximativement) égaux en calculant la différence, en arrondissant au " +"nombre donné de décimales *places* (par défaut 7), et en comparant à zéro. " +"Notez que ces méthodes arrondissent les valeurs au nombre donné de " +"*décimales* (par exemple comme la fonction :func:`round`) et non aux " +"*chiffres significatifs*." #: ../Doc/library/unittest.rst:1013 msgid "" "If *delta* is supplied instead of *places* then the difference between " "*first* and *second* must be less or equal to (or greater than) *delta*." msgstr "" +"Si *delta* est fourni au lieu de *places*, la différence entre *first* et " +"*second* doit être inférieure ou égale (ou supérieure) à *delta*." #: ../Doc/library/unittest.rst:1016 msgid "Supplying both *delta* and *places* raises a ``TypeError``." @@ -1307,12 +1487,18 @@ msgid "" "compare equal. :meth:`assertNotAlmostEqual` automatically fails if the " "objects compare equal. Added the *delta* keyword argument." msgstr "" +":meth:`assertAlmostEqual` considère automatiquement des objets presque égaux " +"qui se comparent égaux. :meth:`assertNotNotAlmostEqual` échoue " +"automatiquement si les objets qui se comparent sont égaux. Ajout de " +"l'argument mot-clé *delta*." #: ../Doc/library/unittest.rst:1030 msgid "" "Test that *first* is respectively >, >=, < or <= than *second* depending on " "the method name. If not, the test will fail::" msgstr "" +"Vérifie que *first* est respectivement >, >=, >=, < ou <= à *second* selon " +"le nom de la méthode. Sinon, le test échouera  ::" #: ../Doc/library/unittest.rst:1041 msgid "" @@ -1364,6 +1550,11 @@ msgid "" "implemented for most of the built-in types, but it's also possible to " "register new methods using :meth:`addTypeEqualityFunc`:" msgstr "" +"La méthode :meth:`assertEqual` envoie le contrôle d'égalité pour les objets " +"du même type à différentes méthodes spécifiques au type. Ces méthodes sont " +"déjà implémentées pour la plupart des types intégrés, mais il est également " +"possible d'enregistrer de nouvelles méthodes en utilisant :meth:" +"`addTypeEqualityFunc`  ::" #: ../Doc/library/unittest.rst:1097 msgid "" @@ -1375,6 +1566,14 @@ msgid "" "two parameters is detected -- possibly providing useful information and " "explaining the inequalities in details in the error message." msgstr "" +"Enregistre une méthode spécifique appelée par :meth:`assertEqual` pour " +"vérifier si deux objets exactement du même *typeobj* (et non leurs sous-" +"classes) sont égaux. *function* doit prendre deux arguments positionnels et " +"un troisième argument mot-clé *msg=None* tout comme :meth:`assertEqual` le " +"fait. Il doit lever :data:`self.failureException(msg) ` " +"lorsqu'une inégalité entre les deux premiers paramètres est détectée en " +"fournissant éventuellement des informations utiles et expliquant l'inégalité " +"en détail dans le message d'erreur." #: ../Doc/library/unittest.rst:1108 msgid "" @@ -1382,10 +1581,13 @@ msgid "" "assertEqual` are summarized in the following table. Note that it's usually " "not necessary to invoke these methods directly." msgstr "" +"La liste des méthodes spécifiques utilisées automatiquement par :meth:" +"`~TestCase.assertEqual` est résumée dans le tableau suivant. Notez qu'il " +"n'est généralement pas nécessaire d'invoquer ces méthodes directement." #: ../Doc/library/unittest.rst:1113 msgid "Used to compare" -msgstr "" +msgstr "Utilisé pour comparer" #: ../Doc/library/unittest.rst:1115 msgid ":meth:`assertMultiLineEqual(a, b) `" @@ -1409,7 +1611,7 @@ msgstr ":meth:`assertListEqual(a, b) `" #: ../Doc/library/unittest.rst:1121 msgid "lists" -msgstr "" +msgstr "listes" #: ../Doc/library/unittest.rst:1124 msgid ":meth:`assertTupleEqual(a, b) `" @@ -1417,7 +1619,7 @@ msgstr ":meth:`assertTupleEqual(a, b) `" #: ../Doc/library/unittest.rst:1124 msgid "tuples" -msgstr "" +msgstr "n-uplets" #: ../Doc/library/unittest.rst:1127 msgid ":meth:`assertSetEqual(a, b) `" @@ -1425,7 +1627,7 @@ msgstr ":meth:`assertSetEqual(a, b) `" #: ../Doc/library/unittest.rst:1127 msgid "sets or frozensets" -msgstr "" +msgstr "*sets* ou *frozensets*" #: ../Doc/library/unittest.rst:1130 msgid ":meth:`assertDictEqual(a, b) `" @@ -1433,7 +1635,7 @@ msgstr ":meth:`assertDictEqual(a, b) `" #: ../Doc/library/unittest.rst:1130 msgid "dicts" -msgstr "" +msgstr "dictionnaires" #: ../Doc/library/unittest.rst:1138 msgid "" @@ -1442,6 +1644,11 @@ msgid "" "included in the error message. This method is used by default when comparing " "strings with :meth:`assertEqual`." msgstr "" +"Vérifie que la chaîne sur plusieurs lignes *first* est égale à la chaîne " +"*second*. Si les deux chaînes de caractères ne sont pas égales, un *diff* " +"mettant en évidence les différences est inclus dans le message d'erreur. " +"Cette méthode est utilisée par défaut pour comparer les chaînes avec :meth:" +"`assertEqual`." #: ../Doc/library/unittest.rst:1148 msgid "" @@ -1456,6 +1663,8 @@ msgid "" "This method is not called directly by :meth:`assertEqual`, but it's used to " "implement :meth:`assertListEqual` and :meth:`assertTupleEqual`." msgstr "" +"Cette méthode n'est pas appelée directement par :meth:`assertEqual`, mais " +"sert à implémenter :meth:`assertListEqual` et :meth:`assertTupleEqual`." #: ../Doc/library/unittest.rst:1163 msgid "" @@ -1464,6 +1673,11 @@ msgid "" "also raised if either of the parameters are of the wrong type. These methods " "are used by default when comparing lists or tuples with :meth:`assertEqual`." msgstr "" +"Vérifie que deux listes ou deux n-uplets sont égaux. Si ce n'est pas le " +"cas, un message d'erreur qui ne montre que les différences entre les deux " +"est généré. Une erreur est également signalée si l'un ou l'autre des " +"paramètres n'est pas du bon type. Ces méthodes sont utilisées par défaut " +"pour comparer des listes ou des couples avec :meth:`assertEqual`." #: ../Doc/library/unittest.rst:1174 msgid "" @@ -1471,6 +1685,10 @@ msgid "" "lists the differences between the sets. This method is used by default when " "comparing sets or frozensets with :meth:`assertEqual`." msgstr "" +"Vérifie que deux ensembles sont égaux. Si ce n'est pas le cas, un message " +"d'erreur s'affiche et indique les différences entre les *sets*. Cette " +"méthode est utilisée par défaut lors de la comparaison de *sets* ou de " +"*frozensets* avec :meth:`assertEqual`." #: ../Doc/library/unittest.rst:1178 msgid "" @@ -1484,17 +1702,25 @@ msgid "" "constructed that shows the differences in the dictionaries. This method will " "be used by default to compare dictionaries in calls to :meth:`assertEqual`." msgstr "" +"Vérifie que deux dictionnaires sont égaux. Si ce n'est pas le cas, un " +"message d'erreur qui montre les différences dans les dictionnaires est " +"généré. Cette méthode est utilisée par défaut pour comparer les " +"dictionnaires dans les appels à :meth:`assertEqual`." #: ../Doc/library/unittest.rst:1197 msgid "" "Finally the :class:`TestCase` provides the following methods and attributes:" msgstr "" +"Enfin, la classe :class:`TestCase` fournit les méthodes et attributs " +"suivants :" #: ../Doc/library/unittest.rst:1202 msgid "" "Signals a test failure unconditionally, with *msg* or ``None`` for the error " "message." msgstr "" +"Indique un échec du test sans condition, avec *msg* ou ``None`` pour le " +"message d'erreur." #: ../Doc/library/unittest.rst:1208 msgid "" @@ -1504,6 +1730,11 @@ msgid "" "fair\" with the framework. The initial value of this attribute is :exc:" "`AssertionError`." msgstr "" +"Cet attribut de classe donne l'exception levée par la méthode de test. Si " +"un *framework* de tests doit utiliser une exception spécialisée, " +"probablement pour enrichir l'exception d'informations additionnels., il doit " +"hériter de cette classe d'exception pour *bien fonctionner* avec le " +"*framework*. La valeur initiale de cet attribut est :exc:`AssertionError`." #: ../Doc/library/unittest.rst:1217 msgid "" @@ -1536,24 +1767,36 @@ msgid "" "the sequence comparison methods that delegate to it), :meth:" "`assertDictEqual` and :meth:`assertMultiLineEqual`." msgstr "" +"Cet attribut contrôle la longueur maximale des *diffs* en sortie des " +"méthodes qui génèrent des *diffs* en cas d'échec. La valeur par défaut est " +"80*8 caractères. Les méthodes d'assertions affectées par cet attribut sont :" +"meth:`assertSequenceEqual` (y compris toutes les méthodes de comparaison de " +"séquences qui lui sont déléguées), :meth:`assertDictEqual` et :meth:" +"`assertMultiLineEqual`." #: ../Doc/library/unittest.rst:1243 msgid "" "Setting ``maxDiff`` to ``None`` means that there is no maximum length of " "diffs." msgstr "" +"Régler ``maxDiff`` sur ``None``` signifie qu'il n'y a pas de longueur " +"maximale pour les *diffs*." #: ../Doc/library/unittest.rst:1249 msgid "" "Testing frameworks can use the following methods to collect information on " "the test:" msgstr "" +"Les *frameworks* de test peuvent utiliser les méthodes suivantes pour " +"recueillir des informations sur le test :" #: ../Doc/library/unittest.rst:1255 msgid "" "Return the number of tests represented by this test object. For :class:" "`TestCase` instances, this will always be ``1``." msgstr "" +"Renvoie le nombre de tests représentés par cet objet test. Pour les " +"instances de :class:`TestCase`, c'est toujours ``1``." #: ../Doc/library/unittest.rst:1261 msgid "" @@ -1561,6 +1804,9 @@ msgid "" "test case class (if no other result instance is provided to the :meth:`run` " "method)." msgstr "" +"Retourne une instance de la classe de résultat de test qui doit être " +"utilisée pour cette classe de cas de test (si aucune autre instance de " +"résultat n'est fournie à la méthode :meth:`run`)." #: ../Doc/library/unittest.rst:1265 msgid "" @@ -1568,12 +1814,18 @@ msgid "" "`TestResult`; subclasses of :class:`TestCase` should override this as " "necessary." msgstr "" +"Pour les instances de :class:`TestCase`, c'est toujours une instance de :" +"class:`TestResult` ; les sous-classes de :class:`TestCase` peuvent la " +"remplacer au besoin." #: ../Doc/library/unittest.rst:1272 msgid "" "Return a string identifying the specific test case. This is usually the " "full name of the test method, including the module and class name." msgstr "" +"Retourne une chaîne identifiant le cas de test spécifique. Il s'agit " +"généralement du nom complet de la méthode de test, y compris le nom du " +"module et de la classe." #: ../Doc/library/unittest.rst:1278 msgid "" @@ -1595,12 +1847,17 @@ msgid "" "If :meth:`setUp` fails, meaning that :meth:`tearDown` is not called, then " "any cleanup functions added will still be called." msgstr "" +"Si :meth:`setUp` échoue, cela signifie que :meth:`tearDown` n'est pas " +"appelé, alors que les fonctions de nettoyage ajoutées seront toujours " +"appelées." #: ../Doc/library/unittest.rst:1301 msgid "" "This method is called unconditionally after :meth:`tearDown`, or after :meth:" "`setUp` if :meth:`setUp` raises an exception." msgstr "" +"Cette méthode est appelée sans conditions après :meth:`tearDown`, ou après :" +"meth:`setUp` si :meth:`setUp` lève une exception." #: ../Doc/library/unittest.rst:1304 msgid "" @@ -1608,12 +1865,19 @@ msgid "" "`addCleanup`. If you need cleanup functions to be called *prior* to :meth:" "`tearDown` then you can call :meth:`doCleanups` yourself." msgstr "" +"Cette méthode est chargée d'appeler toutes les fonctions de nettoyage " +"ajoutées par :meth:`addCleanup`. Si vous avez besoin de fonctions de " +"nettoyage à appeler *avant* l'appel à :meth:`tearDown` alors vous pouvez " +"appeler :meth:`doCleanups` vous-même." #: ../Doc/library/unittest.rst:1309 msgid "" ":meth:`doCleanups` pops methods off the stack of cleanup functions one at a " "time, so it can be called at any time." msgstr "" +":meth:`doCleanups` extrait les méthodes de la pile des fonctions de " +"nettoyage une à la fois, de sorte qu'elles peuvent être appelées à tout " +"moment." #: ../Doc/library/unittest.rst:1317 msgid "" @@ -1623,10 +1887,16 @@ msgid "" "test cases using legacy test code, allowing it to be integrated into a :mod:" "`unittest`-based test framework." msgstr "" +"Cette classe implémente la partie de l'interface :class:`TestCase` qui " +"permet au lanceur de test de piloter le scénario de test, mais ne fournit " +"pas les méthodes que le code test peut utiliser pour vérifier et signaler " +"les erreurs. Ceci est utilisé pour créer des scénario de test utilisant du " +"code de test existant afin de faciliter l'intégration dans un *framework* de " +"test basé sur :mod:`unittest`." #: ../Doc/library/unittest.rst:1325 msgid "Deprecated aliases" -msgstr "" +msgstr "Alias obsolètes" #: ../Doc/library/unittest.rst:1327 msgid "" @@ -1634,6 +1904,9 @@ msgid "" "more aliases that are now deprecated. The following table lists the correct " "names along with their deprecated aliases:" msgstr "" +"Pour des raisons historiques, certaines méthodes de la classe :class:" +"`TestCase` avaient un ou plusieurs alias qui sont maintenant obsolètes. Le " +"tableau suivant énumère les noms corrects ainsi que leurs alias obsolètes  ::" #: ../Doc/library/unittest.rst:1332 msgid "Method Name" @@ -1705,7 +1978,7 @@ msgstr "" #: ../Doc/library/unittest.rst:1351 msgid "Grouping tests" -msgstr "" +msgstr "Regroupement des tests" #: ../Doc/library/unittest.rst:1355 msgid "" @@ -1721,6 +1994,10 @@ msgid "" "other test suites that will be used to build the suite initially. Additional " "methods are provided to add test cases and suites to the collection later on." msgstr "" +"Si *tests* est fourni, il doit s'agir d'un itérable de cas de test " +"individuels ou d'autres suites de test qui seront utilisés pour construire " +"la suite initial. Des méthodes supplémentaires sont fournies pour ajouter " +"ultérieurement des cas de test et des suites à la collection." #: ../Doc/library/unittest.rst:1364 msgid "" @@ -1730,26 +2007,37 @@ msgid "" "additional methods are available to add tests to :class:`TestSuite` " "instances:" msgstr "" +"Les objets :class:`TestSuite` se comportent comme les objets :class:" +"`TestCase`, sauf qu'ils n'implémentent pas réellement un test. Au lieu de " +"cela, ils sont utilisés pour regrouper les tests en groupes de tests qui " +"doivent être exécutés ensemble. Des méthodes supplémentaires sont " +"disponibles pour ajouter des tests aux instances de :class:`TestSuite` :" #: ../Doc/library/unittest.rst:1372 msgid "Add a :class:`TestCase` or :class:`TestSuite` to the suite." msgstr "" +"Ajouter un objet :class:`TestCase` ou :class:`TestSuite` à la suite de tests." #: ../Doc/library/unittest.rst:1377 msgid "" "Add all the tests from an iterable of :class:`TestCase` and :class:" "`TestSuite` instances to this test suite." msgstr "" +"Ajouter tous les tests d'un itérable d'instances de :class:`TestCase` et de :" +"class:`TestSuite` à cette suite de tests." #: ../Doc/library/unittest.rst:1380 msgid "" "This is equivalent to iterating over *tests*, calling :meth:`addTest` for " "each element." msgstr "" +"C'est l'équivalent d'une itération sur *tests*, appelant :meth:`addTest` " +"pour chaque élément." #: ../Doc/library/unittest.rst:1383 msgid ":class:`TestSuite` shares the following methods with :class:`TestCase`:" msgstr "" +":class:`TestSuite` partage les méthodes suivantes avec :class:`TestCase` :" #: ../Doc/library/unittest.rst:1388 msgid "" @@ -1757,6 +2045,10 @@ msgid "" "test result object passed as *result*. Note that unlike :meth:`TestCase." "run`, :meth:`TestSuite.run` requires the result object to be passed in." msgstr "" +"Exécute les tests associés à cette suite, en collectant le résultat dans " +"l'objet de résultat de test passé par *result*. Remarquer que contrairement " +"à :meth:`TestCase.run`, :meth:`TestSuite.run` nécessite que l'objet résultat " +"soit passé." #: ../Doc/library/unittest.rst:1396 msgid "" @@ -1764,12 +2056,17 @@ msgid "" "allows exceptions raised by the test to be propagated to the caller and can " "be used to support running tests under a debugger." msgstr "" +"Exécute les tests associés à cette suite sans collecter le résultat. Ceci " +"permet aux exceptions levées par le test d'être propagées à l'appelant et " +"peut être utilisé pour exécuter des tests sous un débogueur." #: ../Doc/library/unittest.rst:1403 msgid "" "Return the number of tests represented by this test object, including all " "individual tests and sub-suites." msgstr "" +"Renvoie le nombre de tests représentés par cet objet de test, y compris tous " +"les tests individuels et les sous-suites." #: ../Doc/library/unittest.rst:1409 msgid "" @@ -1786,16 +2083,22 @@ msgid "" "than through iteration, so overriding :meth:`__iter__` wasn't sufficient for " "providing tests." msgstr "" +"Dans les versions précédentes, la classe :class:`TestSuite` accédait aux " +"tests directement plutôt que par itération, donc surcharger la méthode :meth:" +"`__iter__` n'était pas suffisante pour fournir les tests." #: ../Doc/library/unittest.rst:1420 msgid "" "In the typical usage of a :class:`TestSuite` object, the :meth:`run` method " "is invoked by a :class:`TestRunner` rather than by the end-user test harness." msgstr "" +"Dans l'utilisation typique de l'objet :class:`TestSuite`, la méthode :meth:" +"`run` est invoquée par une classe :class:`TestRunner` plutôt que par le " +"système de test de l'utilisateur." #: ../Doc/library/unittest.rst:1425 msgid "Loading and running tests" -msgstr "" +msgstr "Chargement et exécution des tests" #: ../Doc/library/unittest.rst:1429 msgid "" @@ -1805,10 +2108,17 @@ msgid "" "`unittest.defaultTestLoader`. Using a subclass or instance, however, allows " "customization of some configurable properties." msgstr "" +"La classe :class:`TestLoader` est utilisée pour créer des suites de tests à " +"partir de classes et de modules. Normalement, il n'est pas nécessaire de " +"créer une instance de cette classe ; le module :mod:`unittest` fournit une " +"instance qui peut être partagée comme :data:`unittest.defaultTestLoader`. " +"L'utilisation d'une sous-classe ou d'une instance permet cependant de " +"personnaliser certaines propriétés configurables." #: ../Doc/library/unittest.rst:1435 msgid ":class:`TestLoader` objects have the following methods:" msgstr "" +"Les objets de la classe :class:`TestLoader` ont les attributs suivants :" #: ../Doc/library/unittest.rst:1440 msgid "" @@ -1831,6 +2141,12 @@ msgid "" "play well with this method. Doing so, however, can be useful when the " "fixtures are different and defined in subclasses." msgstr "" +"Bien que l'utilisation d'une hiérarchie de classes :class:`TestCase` (les " +"classes dérivées de *TestCase*) peut être un moyen pratique de partager des " +"*fixtures* et des fonctions utilitaires, définir une méthode de test pour " +"des classes de base non destinées à être directement instanciée ne marche " +"pas bien avec cette méthode. Cela peut toutefois s'avérer utile lorsque les " +"*fixtures* sont différentes et définies dans des sous-classes." #: ../Doc/library/unittest.rst:1459 msgid "" @@ -1841,7 +2157,7 @@ msgstr "" #: ../Doc/library/unittest.rst:1463 msgid "Support for ``load_tests`` added." -msgstr "" +msgstr "Ajout de la prise en charge de ``load_tests``." #: ../Doc/library/unittest.rst:1469 msgid "Return a suite of all tests cases given a string specifier." @@ -1857,6 +2173,14 @@ msgid "" "up as \"a test method within a test case class\", rather than \"a callable " "object\"." msgstr "" +"Le spécificateur *name* est un \"nom pointillé\" qui peut être résolu soit " +"par un module, une classe de cas de test, une méthode de test dans une " +"classe de cas de test, une instance de :class:`TestSuite`, ou un objet " +"appelable qui retourne une instance de classe :class:`TestCase` ou de " +"classe :class:`TestSuite`. Ces contrôles sont appliqués dans l'ordre indiqué " +"ici, c'est-à-dire qu'une méthode sur une classe de cas de test possible sera " +"choisie comme \"méthode de test dans une classe de cas de test\", plutôt que " +"comme \"un objet appelable\"." #: ../Doc/library/unittest.rst:1479 msgid "" @@ -1870,10 +2194,19 @@ msgid "" "modules and packages which have not been imported; they will be imported as " "a side-effect." msgstr "" +"Par exemple, si vous avez un module :mod:`SampleTests` contenant une classe :" +"class:`TestCase` (classe dérivée de la classe :class:`SampleTestCase`) avec " +"trois méthodes de test (:meth:`test_one`, :meth:`test_two` et :meth:" +"`test_three`), l'élément spécificateur `SampleTests.sampleTestCase` renvoie " +"une suite qui va exécuter les trois méthodes de tests. L'utilisation du " +"spécificateur `SampleTests.SampleTestCase.test_two` permettrait de retourner " +"une suite de tests qui ne lancerait que la méthode test :meth:`test_two`. Le " +"spécificateur peut se référer à des modules et packages qui n'ont pas été " +"importés. Ils seront importés par un effet de bord." #: ../Doc/library/unittest.rst:1489 msgid "The method optionally resolves *name* relative to the given *module*." -msgstr "" +msgstr "La méthode résout facultativement *name* relatif au *module* donné." #: ../Doc/library/unittest.rst:1494 msgid "" @@ -1881,12 +2214,17 @@ msgid "" "than a single name. The return value is a test suite which supports all the " "tests defined for each name." msgstr "" +"Similaire à :meth:`loadTestsFromName`, mais prend une séquence de noms " +"plutôt qu'un seul nom. La valeur renvoyée est une suite de tests qui gère " +"tous les tests définis pour chaque nom." #: ../Doc/library/unittest.rst:1501 msgid "" "Return a sorted sequence of method names found within *testCaseClass*; this " "should be a subclass of :class:`TestCase`." msgstr "" +"Renvoie une séquence triée de noms de méthodes trouvés dans " +"*testCaseClass* ; ceci doit être une sous-classe de :class:`TestCase`." #: ../Doc/library/unittest.rst:1507 msgid "" @@ -1896,6 +2234,11 @@ msgid "" "pattern matching.) Only module names that are importable (i.e. are valid " "Python identifiers) will be loaded." msgstr "" +"Trouve tous les modules de test en parcourant les sous-répertoires du " +"répertoire de démarrage spécifié, et renvoie un objet *TestSuite* qui les " +"contient. Seuls les fichiers de test qui correspondent à *pattern* sont " +"chargés. Seuls les noms de modules qui sont importables (c'est-à-dire qui " +"sont des identifiants Python valides) sont chargés." #: ../Doc/library/unittest.rst:1513 msgid "" @@ -1903,6 +2246,9 @@ msgid "" "the start directory is not the top level directory then the top level " "directory must be specified separately." msgstr "" +"Tous les modules de test doivent être importables depuis la racine du " +"projet. Si le répertoire de démarrage n'est pas la racine, le répertoire " +"racine doit être spécifié séparément." #: ../Doc/library/unittest.rst:1517 msgid "" @@ -1930,28 +2276,38 @@ msgid "" "``load_tests`` does not need to pass this argument in to ``loader." "discover()``." msgstr "" +"Le motif n'est délibérément pas stocké en tant qu'attribut du chargeur afin " +"que les paquets puissent continuer à être découverts eux-mêmes. " +"*top_level_dir* est stocké de sorte que ``load_tests`` n'a pas besoin de " +"passer cet argument a ``loader. discover()``." #: ../Doc/library/unittest.rst:1533 msgid "*start_dir* can be a dotted module name as well as a directory." -msgstr "" +msgstr "*start_dir* peut être un nom de module ainsi qu'un répertoire." #: ../Doc/library/unittest.rst:1537 msgid "" "The following attributes of a :class:`TestLoader` can be configured either " "by subclassing or assignment on an instance:" msgstr "" +"Les attributs suivants d'une classe :class:`TestLoader` peuvent être " +"configurés soit par héritage, soit par affectation sur une instance  ::" #: ../Doc/library/unittest.rst:1543 msgid "" "String giving the prefix of method names which will be interpreted as test " "methods. The default value is ``'test'``." msgstr "" +"Chaîne donnant le préfixe des noms de méthodes qui seront interprétés comme " +"méthodes de test. La valeur par défaut est ``'test'``." #: ../Doc/library/unittest.rst:1546 msgid "" "This affects :meth:`getTestCaseNames` and all the :meth:`loadTestsFrom\\*` " "methods." msgstr "" +"Ceci affecte les méthodes :meth:`getTestCaseNames` et toutes les méthodes :" +"meth:`loadTestsFrom\\*`." #: ../Doc/library/unittest.rst:1552 msgid "" @@ -1967,16 +2323,21 @@ msgid "" "methods on the resulting object are needed. The default value is the :class:" "`TestSuite` class." msgstr "" +"Objet appelable qui construit une suite de tests à partir d'une liste de " +"tests. Aucune méthode sur l'objet résultant n'est nécessaire. La valeur par " +"défaut est la classe :class:`TestSuite`." #: ../Doc/library/unittest.rst:1564 msgid "This affects all the :meth:`loadTestsFrom\\*` methods." -msgstr "" +msgstr "Cela affecte toutes les méthodes :meth:`loadTestsFrom\\*`." #: ../Doc/library/unittest.rst:1569 msgid "" "This class is used to compile information about which tests have succeeded " "and which have failed." msgstr "" +"Cette classe est utilisée pour compiler des informations sur les tests qui " +"ont réussi et ceux qui ont échoué." #: ../Doc/library/unittest.rst:1572 msgid "" @@ -1985,6 +2346,10 @@ msgid "" "properly recorded; test authors do not need to worry about recording the " "outcome of tests." msgstr "" +"Un objet :class:`TestResult` stocke les résultats d'un ensemble de tests. " +"Les classes :class:`TestCase` et :class:`TestSuite` s'assurent que les " +"résultats sont correctement enregistrés. Les auteurs du test n'ont pas à se " +"soucier de l'enregistrement des résultats des tests." #: ../Doc/library/unittest.rst:1577 msgid "" @@ -1993,12 +2358,20 @@ msgid "" "purposes; a :class:`TestResult` instance is returned by the :meth:" "`TestRunner.run` method for this purpose." msgstr "" +"Les cadriciels de test construits sur :mod:`unittest` peuvent nécessiter " +"l'accès à l'objet :class:`TestResult` généré en exécutant un ensemble de " +"tests à des fins de génération de comptes-rendu. Une instance de :class:" +"`TestResult` est alors renvoyée par la méthode :meth:`TestRunner.run` à " +"cette fin." #: ../Doc/library/unittest.rst:1582 msgid "" ":class:`TestResult` instances have the following attributes that will be of " "interest when inspecting the results of running a set of tests:" msgstr "" +"Les instance de :class:`TestResult` ont les attributs suivants qui sont " +"intéressant pour l'inspection des résultats de l'exécution d'un ensemble de " +"tests  ::" #: ../Doc/library/unittest.rst:1588 msgid "" @@ -2006,6 +2379,9 @@ msgid "" "holding formatted tracebacks. Each tuple represents a test which raised an " "unexpected exception." msgstr "" +"Une liste contenant un couple d'instances de :class:`TestCase` et une " +"chaînes de caractères contenant des traces formatées. Chaque couple " +"représente un test qui a levé une exception inattendue." #: ../Doc/library/unittest.rst:1592 ../Doc/library/unittest.rst:1602 msgid "Contains formatted tracebacks instead of :func:`sys.exc_info` results." @@ -2017,12 +2393,18 @@ msgid "" "holding formatted tracebacks. Each tuple represents a test where a failure " "was explicitly signalled using the :meth:`TestCase.assert\\*` methods." msgstr "" +"Une liste contenant un couple d'instances de :class:`TestCase` et une " +"chaînes de caractères contenant des traces formatées. Chaque tuple " +"représente un test où un échec a été explicitement signalé en utilisant les " +"méthodes :meth:`TestCase.assert\\*`." #: ../Doc/library/unittest.rst:1607 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding the reason for skipping the test." msgstr "" +"Une liste contenant un couple d'instances de :class:`TestCase` et une " +"chaînes de caractères contenant la raison de l'omission du test." #: ../Doc/library/unittest.rst:1614 msgid "" @@ -2030,21 +2412,28 @@ msgid "" "holding formatted tracebacks. Each tuple represents an expected failure of " "the test case." msgstr "" +"Une liste contenant un couple d'instance :class:`TestCase` et une chaînes de " +"caractères contenant des traces formatées. Chaque coulpe représente un échec " +"attendu du scénario de test." #: ../Doc/library/unittest.rst:1620 msgid "" "A list containing :class:`TestCase` instances that were marked as expected " "failures, but succeeded." msgstr "" +"Une liste contenant les instances :class:`TestCase` qui ont été marquées " +"comme des échecs attendus, mais qui ont réussi." #: ../Doc/library/unittest.rst:1625 msgid "" "Set to ``True`` when the execution of tests should stop by :meth:`stop`." msgstr "" +"A positionner sur ``True`` quand l'exécution des tests doit être arrêter " +"par :meth:`stop`." #: ../Doc/library/unittest.rst:1630 msgid "The total number of tests run so far." -msgstr "" +msgstr "Le nombre total de tests effectués jusqu'à présent." #: ../Doc/library/unittest.rst:1635 msgid "" @@ -2054,18 +2443,27 @@ msgid "" "if the test fails or errors. Any output is also attached to the failure / " "error message." msgstr "" +"S'il est défini sur *true*, ``sys.stdout`` et ``sys.stderr`` sont mis dans " +"un tampon entre les appels de :meth:`startTest` et :meth:`stopTest`. La " +"sortie collectée est répercutée sur les sorties ``sys.stdout`` et ``sys." +"stderr`` réels uniquement en cas d'échec ou d'erreur du test. Toute sortie " +"est également attachée au message d'erreur." #: ../Doc/library/unittest.rst:1645 msgid "" "If set to true :meth:`stop` will be called on the first failure or error, " "halting the test run." msgstr "" +"Si la valeur est *true* :meth:`stop` est appelée lors de la première " +"défaillance ou erreur, ce qui interrompt le test en cours d'exécution." #: ../Doc/library/unittest.rst:1653 msgid "" "Return ``True`` if all tests run so far have passed, otherwise returns " "``False``." msgstr "" +"Renvoie ``True`` si tous les tests effectués jusqu'à présent ont réussi, " +"sinon renvoie ``False``." #: ../Doc/library/unittest.rst:1659 msgid "" @@ -2074,6 +2472,10 @@ msgid "" "`TestRunner` objects should respect this flag and return without running any " "additional tests." msgstr "" +"Cette méthode peut être appelée pour signaler que l'ensemble des tests en " +"cours d'exécution doit être annulé en définissant l'attribut :attr:" +"`shouldStop` sur ``True``. Les instances de :class:`TestRunner` doivent " +"respecter ce signal et se terminer sans exécuter de tests supplémentaires." #: ../Doc/library/unittest.rst:1664 msgid "" @@ -2082,6 +2484,10 @@ msgid "" "keyboard. Interactive tools which provide :class:`TestRunner` " "implementations can use this in a similar manner." msgstr "" +"Par exemple, cette fonctionnalité est utilisée par la classe :class:" +"`TextTestRunner` pour arrêter le cadriciel de test lorsque l'utilisateur " +"lance une interruption clavier. Les outils interactifs qui fournissent des " +"implémentations de :class:`TestRunner` peuvent l'utiliser de la même manière." #: ../Doc/library/unittest.rst:1669 msgid "" @@ -2090,24 +2496,32 @@ msgid "" "additional reporting requirements. This is particularly useful in building " "tools which support interactive reporting while tests are being run." msgstr "" +"Les méthodes suivantes de la classe :class:`TestResult` sont utilisées pour " +"maintenir les structures de données internes, et peuvent être étendues dans " +"des sous-classes pour gérer des exigences supplémentaires en termes de " +"compte-rendu. Cette fonction est particulièrement utile pour créer des " +"outils qui prennent en charge la génération de rapports interactifs pendant " +"l'exécution des tests." #: ../Doc/library/unittest.rst:1677 msgid "Called when the test case *test* is about to be run." msgstr "" +"Appelé lorsque le scénario de test *test* est sur le point d'être exécuté." #: ../Doc/library/unittest.rst:1681 msgid "" "Called after the test case *test* has been executed, regardless of the " "outcome." msgstr "" +"Appelé après l'exécution du cas de test *test*, quel qu'en soit le résultat." #: ../Doc/library/unittest.rst:1686 msgid "Called once before any tests are executed." -msgstr "" +msgstr "Appelé une fois avant l'exécution des tests." #: ../Doc/library/unittest.rst:1693 msgid "Called once after all tests are executed." -msgstr "" +msgstr "Appelé une fois après l'exécution des tests." #: ../Doc/library/unittest.rst:1700 msgid "" @@ -2115,6 +2529,9 @@ msgid "" "tuple of the form returned by :func:`sys.exc_info`: ``(type, value, " "traceback)``." msgstr "" +"Appelé lorsque le cas de test *test* soulève une exception inattendue. *err* " +"est un couple du formulaire renvoyé par :func:`sys.exc_info` : ``(type, " +"valeur, traceback)``." #: ../Doc/library/unittest.rst:1704 msgid "" @@ -2122,12 +2539,18 @@ msgid "" "instance's :attr:`errors` attribute, where *formatted_err* is a formatted " "traceback derived from *err*." msgstr "" +"L'implémentation par défaut ajoute un couple ``(test, formatted_err)`` à " +"l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " +"formatée à partir de *err*." #: ../Doc/library/unittest.rst:1711 msgid "" "Called when the test case *test* signals a failure. *err* is a tuple of the " "form returned by :func:`sys.exc_info`: ``(type, value, traceback)``." msgstr "" +"Appelé lorsque le cas de test *test* soulève une exception inattendue. *err* " +"est un triplet de la même forme que celui renvoyé par :func:`sys.exc_info` : " +"``(type, valeur, traceback)``." #: ../Doc/library/unittest.rst:1714 msgid "" @@ -2135,32 +2558,41 @@ msgid "" "instance's :attr:`failures` attribute, where *formatted_err* is a formatted " "traceback derived from *err*." msgstr "" +"L'implémentation par défaut ajoute un couple ``(test, formatted_err)`` à " +"l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " +"formatée à partir de *err*." #: ../Doc/library/unittest.rst:1721 msgid "Called when the test case *test* succeeds." -msgstr "" +msgstr "Appelé lorsque le scénario de test *test* réussit." #: ../Doc/library/unittest.rst:1723 msgid "The default implementation does nothing." -msgstr "" +msgstr "L'implémentation par défaut ne fait rien." #: ../Doc/library/unittest.rst:1728 msgid "" "Called when the test case *test* is skipped. *reason* is the reason the " "test gave for skipping." msgstr "" +"Appelé lorsque le scénario de test *test* est ignoré. *raison* est la raison " +"pour laquelle le test donné à été ignoré." #: ../Doc/library/unittest.rst:1731 msgid "" "The default implementation appends a tuple ``(test, reason)`` to the " "instance's :attr:`skipped` attribute." msgstr "" +"L'implémentation par défaut ajoute un couple ``(test, raison)`` à " +"l'attribut :attr:`skipped` de l'instance." #: ../Doc/library/unittest.rst:1737 msgid "" "Called when the test case *test* fails, but was marked with the :func:" "`expectedFailure` decorator." msgstr "" +"Appelé lorsque le scénario de test *test* échoue, mais qui a été marqué avec " +"le décorateur :func:`expectedFailure`." #: ../Doc/library/unittest.rst:1740 msgid "" @@ -2168,30 +2600,41 @@ msgid "" "instance's :attr:`expectedFailures` attribute, where *formatted_err* is a " "formatted traceback derived from *err*." msgstr "" +"L'implémentation par défaut ajoute un couple ``(test, formatted_err)`` à " +"l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " +"formatée à partir de *err*." #: ../Doc/library/unittest.rst:1747 msgid "" "Called when the test case *test* was marked with the :func:`expectedFailure` " "decorator, but succeeded." msgstr "" +"Appelé lorsque le scénario de test *test* réussit, mais que ce scénario a " +"été marqué avec le décorateur :func:`expectedFailure`." #: ../Doc/library/unittest.rst:1750 msgid "" "The default implementation appends the test to the instance's :attr:" "`unexpectedSuccesses` attribute." msgstr "" +"L'implémentation par défaut ajoute le test à l'attribut :attr:" +"`unexpectedSuccesses` de l'instance." #: ../Doc/library/unittest.rst:1755 msgid "" "A concrete implementation of :class:`TestResult` used by the :class:" "`TextTestRunner`." msgstr "" +"Une implémentation concrète de :class:`TestResult` utilisé par la classe :" +"class:`TextTestRunner`." #: ../Doc/library/unittest.rst:1758 msgid "" "This class was previously named ``_TextTestResult``. The old name still " "exists as an alias but is deprecated." msgstr "" +"Cette classe s'appelait auparavant ``_TextTestResult``. L'ancien nom existe " +"toujours en tant qu'alias, mais il est obsolète." #: ../Doc/library/unittest.rst:1764 msgid "" @@ -2199,6 +2642,10 @@ msgid "" "customization of the :class:`TestLoader` is needed, this instance can be " "used instead of repeatedly creating new instances." msgstr "" +"Instance de la classe :class:`TestLoader` destinée à être partagée. Si " +"aucune personnalisation de la classe :class:`TestLoader` n'est nécessaire, " +"cette instance peut être utilisée au lieu de créer plusieurs fois de " +"nouvelles instances." #: ../Doc/library/unittest.rst:1772 msgid "" @@ -2214,6 +2661,9 @@ msgid "" "is not intended to be called directly, but can be overridden in subclasses " "to provide a custom ``TestResult``." msgstr "" +"Cette méthode renvoie l'instance de ``TestResult`` utilisée par :meth:`run`. " +"Il n'est pas destiné à être appelé directement, mais peut être surchargée " +"dans des sous-classes pour fournir un ``TestResult`` personnalisé." #: ../Doc/library/unittest.rst:1782 msgid "" @@ -2222,6 +2672,10 @@ msgid "" "to :class:`TextTestResult` if no ``resultclass`` is provided. The result " "class is instantiated with the following arguments::" msgstr "" +"``_makeResult()`` instancie la classe ou l'appelable passé dans le " +"constructeur ``TextTestRunner`` comme argument ``resultclass``. Il vaut par " +"défaut :class:`TextTestResult` si aucune ``resultclass`` n'est fournie. La " +"classe de résultat est instanciée avec les arguments suivants  ::" #: ../Doc/library/unittest.rst:1792 msgid "" @@ -2230,12 +2684,19 @@ msgid "" "simplest use for this function is to include the following line at the end " "of a test script::" msgstr "" +"Un programme en ligne de commande qui charge un ensemble de tests à partir " +"du *module* et les exécute. L'utilisation principale est de rendre les " +"modules de test facilement exécutables. L'utilisation la plus simple pour " +"cette fonction est d'inclure la ligne suivante à la fin d'un script de test " +" ::" #: ../Doc/library/unittest.rst:1800 msgid "" "You can run tests with more detailed information by passing in the verbosity " "argument::" msgstr "" +"Vous pouvez exécuter des tests avec des informations plus détaillées en " +"utilisant l'option de verbosité  ::" #: ../Doc/library/unittest.rst:1806 msgid "" @@ -2250,6 +2711,9 @@ msgid "" "first element being the program name. If not specified or ``None``, the " "values of :data:`sys.argv` are used." msgstr "" +"L'argument *argv* peut être une liste d'options passées au programme, le " +"premier élément étant le nom du programme. S'il n'est pas spécifié ou vaut " +"``None``, les valeurs de :data:`sys.argv` sont utilisées." #: ../Doc/library/unittest.rst:1814 msgid "" @@ -2257,12 +2721,18 @@ msgid "" "created instance of it. By default ``main`` calls :func:`sys.exit` with an " "exit code indicating success or failure of the tests run." msgstr "" +"L'argument *testRunner* peut être soit une classe de lanceur de test, soit " +"une instance déjà créée de celle-ci. Par défaut, ``main`` appelle :func:`sys." +"exit` avec un code de sortie indiquant le succès ou l'échec des tests " +"exécutés." #: ../Doc/library/unittest.rst:1818 msgid "" "The *testLoader* argument has to be a :class:`TestLoader` instance, and " "defaults to :data:`defaultTestLoader`." msgstr "" +"L'argument *testLoader* doit être une instance de :class:`TestLoader`, et " +"par défaut de :data:`defaultTestLoader`." #: ../Doc/library/unittest.rst:1821 msgid "" @@ -2270,18 +2740,26 @@ msgid "" "the argument ``exit=False``. This displays the result on standard output " "without calling :func:`sys.exit`::" msgstr "" +"Les ``main`` sont utilisés à partir de l'interpréteur interactif en passant " +"dans l'argument ``exit=False``. Ceci affiche le résultat sur la sortie " +"standard sans appeler :func:`sys.exit`  ::" #: ../Doc/library/unittest.rst:1828 msgid "" "The *failfast*, *catchbreak* and *buffer* parameters have the same effect as " "the same-name `command-line options`_." msgstr "" +"Les paramètres *failfast*, *catchbreak* et *buffer* ont le même effet que la " +"même option en ligne de commande `command-line options`_." #: ../Doc/library/unittest.rst:1831 msgid "" "Calling ``main`` actually returns an instance of the ``TestProgram`` class. " "This stores the result of the tests run as the ``result`` attribute." msgstr "" +"L'appel de ``main`` renvoie en fait une instance de la classe " +"``TestProgram``. Le résultat des tests effectués est enregistré sous " +"l'attribut ``result``." #: ../Doc/library/unittest.rst:1834 msgid "" @@ -2291,7 +2769,7 @@ msgstr "" #: ../Doc/library/unittest.rst:1840 msgid "load_tests Protocol" -msgstr "" +msgstr "Protocole de chargement des tests (*load_tests Protocol*)" #: ../Doc/library/unittest.rst:1844 msgid "" @@ -2299,16 +2777,21 @@ msgid "" "normal test runs or test discovery by implementing a function called " "``load_tests``." msgstr "" +"Les modules ou paquets peuvent personnaliser la façon dont les tests sont " +"chargés à partir de ceux-ci pendant l'exécution des tests ou pendant la " +"découverte de tests en implémentant une fonction appelée ``load_tests``." #: ../Doc/library/unittest.rst:1847 msgid "" "If a test module defines ``load_tests`` it will be called by :meth:" "`TestLoader.loadTestsFromModule` with the following arguments::" msgstr "" +"Si un module de test définit ``load_tests`` il est appelé par :meth:" +"`TestLoader.loadTestsFromModule` avec les arguments suivants  ::" #: ../Doc/library/unittest.rst:1852 msgid "It should return a :class:`TestSuite`." -msgstr "" +msgstr "Elle doit renvoyer une classe :class:`TestSuite`." #: ../Doc/library/unittest.rst:1854 msgid "" @@ -2318,12 +2801,20 @@ msgid "" "from the standard set of tests. The third argument is used when loading " "packages as part of test discovery." msgstr "" +"*loader* est l'instance de :class:`TestLoader` qui effectue le chargement. " +"*standard_tests* sont les tests qui sont chargés par défaut depuis le " +"module. Il est courant que les modules de test veuillent seulement ajouter " +"ou supprimer des tests de l'ensemble standard de tests. Le troisième " +"argument est utilisé lors du chargement de paquets dans le cadre de la " +"découverte de tests." #: ../Doc/library/unittest.rst:1860 msgid "" "A typical ``load_tests`` function that loads tests from a specific set of :" "class:`TestCase` classes may look like::" msgstr "" +"Une fonction typique de ``load_tests`` qui charge les tests d'un ensemble " +"spécifique de classes :class:`TestCase` peut ressembler à  ::" #: ../Doc/library/unittest.rst:1872 msgid "" @@ -2355,6 +2846,9 @@ msgid "" "package. (``standard_tests`` will only contain tests collected from :file:" "`__init__.py`.)" msgstr "" +"Doit retourner une classe :class:`TestSuite` représentant tous les tests du " +"paquet. (``standard_tests`` ne contient que les tests collectés dans le " +"fichier :file:`__init__.py`)." #: ../Doc/library/unittest.rst:1894 msgid "" @@ -2362,10 +2856,13 @@ msgid "" "continue (and potentially modify) test discovery. A 'do nothing' " "``load_tests`` function for a test package would look like::" msgstr "" +"Comme le motif est passé à ``load_tests``, le paquet est libre de continuer " +"(et potentiellement de modifier) la découverte des tests. Une fonction « ne " +"rien faire » ``load_tests`` pour un paquet de test ressemblerait à  ::" #: ../Doc/library/unittest.rst:1907 msgid "Class and Module Fixtures" -msgstr "" +msgstr "Classes et modules d'aménagements des tests" #: ../Doc/library/unittest.rst:1909 msgid "" @@ -2374,6 +2871,10 @@ msgid "" "from the previous class (if there is one) is called, followed by :meth:" "`setUpClass` from the new class." msgstr "" +"Les classes et modules d'aménagements des tests sont implémentés dans :class:" +"`TestSuite`. Lorsque la suite de tests rencontre un test d'une nouvelle " +"classe, alors :meth:`tearDownClass` de la classe précédente (s'il y en a " +"une) est appelé, suivi de :meth:`setUpClass` de la nouvelle classe." #: ../Doc/library/unittest.rst:1914 msgid "" @@ -2381,12 +2882,17 @@ msgid "" "``tearDownModule`` from the previous module is run, followed by " "``setUpModule`` from the new module." msgstr "" +"De même, si un test provient d'un module différent du test précédent, alors " +"``tearDownModule`` du module précédent est exécuté, suivi par " +"``setUpModule`` du nouveau module." #: ../Doc/library/unittest.rst:1918 msgid "" "After all the tests have run the final ``tearDownClass`` and " "``tearDownModule`` are run." msgstr "" +"Après que tous les tests ont été exécutés, les ``tearDownClass`` et " +"``tearDownModule`` finaux sont exécutés." #: ../Doc/library/unittest.rst:1921 msgid "" @@ -2394,6 +2900,9 @@ msgid "" "test parallelization and they break test isolation. They should be used with " "care." msgstr "" +"Notez que les aménagements de tests partagés ne fonctionnent pas bien avec " +"de « potentielles » fonctions comme la parallélisation de test et qu'ils " +"brisent l'isolation des tests. Ils doivent être utilisés avec parcimonie." #: ../Doc/library/unittest.rst:1924 msgid "" @@ -2404,6 +2913,13 @@ msgid "" "modules and classes are adjacent to each other, then these shared fixture " "functions may be called multiple times in a single test run." msgstr "" +"L'ordre par défaut des tests créés par les chargeurs de tests unitaires est " +"de regrouper tous les tests des mêmes modules et classes. Cela à pour " +"conséquence que ``setUpClass`` / ``setUpModule`` (etc) sont appelé " +"exactement une fois par classe et module. Si vous rendez l'ordre aléatoire, " +"de sorte que les tests de différents modules et classes soient adjacents les " +"uns aux autres, alors ces fonctions d'aménagements partagées peuvent être " +"appelées plusieurs fois dans un même test." #: ../Doc/library/unittest.rst:1931 msgid "" @@ -2411,6 +2927,10 @@ msgid "" "ordering. A ``BaseTestSuite`` still exists for frameworks that don't want to " "support shared fixtures." msgstr "" +"Les aménagements de tests partagés ne sont pas conçus pour fonctionner avec " +"des suites dont la commande n'est pas standard. Une ``BaseTestSuite`` existe " +"toujours pour les cadriciels qui ne veulent pas gérer les aménagements de " +"tests partagés." #: ../Doc/library/unittest.rst:1935 msgid "" @@ -2421,14 +2941,23 @@ msgid "" "are just using the standard unittest test runner then this detail doesn't " "matter, but if you are a framework author it may be relevant." msgstr "" +"S'il y a des exceptions levées pendant l'une des fonctions d'aménagement de " +"tests partagés, le test est signalé comme étant en erreur. Parce qu'il n'y a " +"pas d'instance de test correspondante, un objet ``_ErrorHolder`` (qui a la " +"même interface qu'une classe :class:`TestCase`) est créé pour représenter " +"l'erreur. Si vous n'utilisez que le lanceur de test unitaire standard, ce " +"détail n'a pas d'importance, mais si vous êtes un auteur de cadriciel de " +"test, il peut être pertinent." #: ../Doc/library/unittest.rst:1944 msgid "setUpClass and tearDownClass" msgstr "" +"Classes de mise en place (*setUpClass*) et de démantèlement des tests " +"(*tearDownClass*)" #: ../Doc/library/unittest.rst:1946 msgid "These must be implemented as class methods::" -msgstr "" +msgstr "Elles doivent être implémentées en tant que méthodes de classe  ::" #: ../Doc/library/unittest.rst:1959 msgid "" @@ -2436,6 +2965,9 @@ msgid "" "then you must call up to them yourself. The implementations in :class:" "`TestCase` are empty." msgstr "" +"Si vous voulez que les classes de base ``setUpClass`` et ``tearDownClass`` " +"soient appelées, vous devez les appeler vous-même. Les implémentations dans :" +"class:`TestCase` sont vides." #: ../Doc/library/unittest.rst:1963 msgid "" @@ -2445,14 +2977,22 @@ msgid "" "`SkipTest` exception then the class will be reported as having been skipped " "instead of as an error." msgstr "" +"Si une exception est levée pendant l'exécution de ``setUpClass`` alors les " +"tests dans la classe ne sont pas exécutés et la classe ``tearDownClass`` " +"n'est pas exécutée. Les classes ignorées n'auront pas d'exécution de " +"``setUpClass`` ou ``tearDownClass``. Si l'exception est une exception :exc:" +"`SkipTest` alors la classe est signalée comme ayant été ignorée au lieu " +"d'être en échec." #: ../Doc/library/unittest.rst:1971 msgid "setUpModule and tearDownModule" msgstr "" +"Module de mise en place (*setUpModule*) et de démantèlement des tests " +"(*tearDownModule*)" #: ../Doc/library/unittest.rst:1973 msgid "These should be implemented as functions::" -msgstr "" +msgstr "Elles doivent être implémentées en tant que fonctions  ::" #: ../Doc/library/unittest.rst:1981 msgid "" @@ -2461,10 +3001,15 @@ msgid "" "exception is a :exc:`SkipTest` exception then the module will be reported as " "having been skipped instead of as an error." msgstr "" +"Si une exception est levée pendant l'exécution de la fonction " +"``setUpModule`` alors aucun des tests du module ne sera exécuté et la " +"fonction ``tearDownModule`` ne sera pas exécutée. Si l'exception est une " +"exception :exc:`SkipTest` alors le module est signalé comme ayant été ignoré " +"au lieu d'être en échec." #: ../Doc/library/unittest.rst:1988 msgid "Signal Handling" -msgstr "" +msgstr "Traitement des signaux" #: ../Doc/library/unittest.rst:1990 msgid "" @@ -2475,6 +3020,13 @@ msgid "" "complete, and the test run will then end and report all the results so far. " "A second control-c will raise a :exc:`KeyboardInterrupt` in the usual way." msgstr "" +"L'option :option:`-c/--catch ` en ligne de commande pour " +"*unittest*, ainsi que le paramètre ``catchbreak`` vers :func:`unittest." +"main()`, permettent une utilisation simplifiée du contrôle-C pendant un " +"test. Avec l'activation de ``catchbreak``, l'utilisation du contrôle-C " +"permet de terminer le test en cours d'exécution, et le test se termine et " +"rapporte tous les résultats obtenus jusqu'à présent. Un deuxième contrôle-C " +"lève une exception classique :exc:`KeyboardInterrupt`." #: ../Doc/library/unittest.rst:1997 msgid "" @@ -2487,12 +3039,24 @@ msgid "" "to it. For individual tests that need ``unittest`` control-c handling " "disabled the :func:`removeHandler` decorator can be used." msgstr "" +"Le gestionnaire du signal *contrôle-C* tente de rester compatible avec le " +"code ou les tests qui installent leur propre gestionnaire :const:`signal." +"SIGINT`. Si le gestionnaire ``unittest`` est appelé mais *n'est pas* le " +"gestionnaire installé :const:`signal.SIGINT`, c'est-à-dire qu'il a été " +"remplacé par le système sous test et délégué, alors il appelle le " +"gestionnaire par défaut. C'est normalement le comportement attendu par un " +"code qui remplace un gestionnaire installé et lui délègue. Pour les tests " +"individuels qui ont besoin que le signal *contrôle-C* \"*unittest*\" soit " +"désactivée, le décorateur :func:`removeHandler` peut être utilisé." #: ../Doc/library/unittest.rst:2006 msgid "" "There are a few utility functions for framework authors to enable control-c " "handling functionality within test frameworks." msgstr "" +"Il existe quelques fonctions de support pour les auteurs de cadriciel afin " +"d'activer la fonctionnalité de gestion des *contrôle-C* dans les cadriciels " +"de test." #: ../Doc/library/unittest.rst:2011 msgid "" @@ -2500,6 +3064,10 @@ msgid "" "(usually in response to the user pressing control-c) all registered results " "have :meth:`~TestResult.stop` called." msgstr "" +"Installe le gestionnaire *contrôle-c*. Quand un :const:`signal.SIGINT` est " +"reçu (généralement en réponse à l'utilisateur appuyant sur *contrôle-c*) " +"tous les résultats enregistrés vont appeler la méthode :meth:`~TestResult." +"stop`." #: ../Doc/library/unittest.rst:2019 msgid "" @@ -2507,6 +3075,10 @@ msgid "" "result stores a weak reference to it, so it doesn't prevent the result from " "being garbage collected." msgstr "" +"Enregistre un objet :class:`TestResult` pour la gestion du *contrôle-C*. " +"L'enregistrement d'un résultat stocke une référence faible sur celui-ci, de " +"sorte qu'il n'empêche pas que le résultat soit collecté par le ramasse-" +"miette." #: ../Doc/library/unittest.rst:2023 msgid "" @@ -2514,6 +3086,10 @@ msgid "" "handling is not enabled, so test frameworks can unconditionally register all " "results they create independently of whether or not handling is enabled." msgstr "" +"L'enregistrement d'un objet :class:`TestResult` n'a pas d'effets de bord si " +"la gestion du *contrôle-c* n'est pas activée, donc les cadriciels de test " +"peuvent enregistrer sans condition tous les résultats qu'ils créent " +"indépendamment du fait que la gestion soit activée ou non." #: ../Doc/library/unittest.rst:2031 msgid "" @@ -2521,6 +3097,9 @@ msgid "" "`~TestResult.stop` will no longer be called on that result object in " "response to a control-c." msgstr "" +"Supprime un résultat enregistré. Une fois qu'un résultat a été supprimé, :" +"meth:`~TestResult.stop` n'est plus appelé sur cet objet résultat en réponse " +"à un *contrôle-c*." #: ../Doc/library/unittest.rst:2039 msgid "" diff --git a/library/urlparse.po b/library/urlparse.po index bb2ad938..eec9bc36 100644 --- a/library/urlparse.po +++ b/library/urlparse.po @@ -102,7 +102,7 @@ msgstr "Attribut" #: ../Doc/library/urlparse.rst:94 ../Doc/library/urlparse.rst:198 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/urlparse.rst:94 ../Doc/library/urlparse.rst:198 msgid "Value" @@ -209,7 +209,7 @@ msgstr "" #: ../Doc/library/urlparse.rst:210 ../Doc/library/urlparse.rst:212 #: ../Doc/library/urlparse.rst:214 ../Doc/library/urlparse.rst:216 msgid ":const:`None`" -msgstr "" +msgstr ":const:`None`" #: ../Doc/library/urlparse.rst:111 ../Doc/library/urlparse.rst:212 msgid ":attr:`password`" diff --git a/library/warnings.po b/library/warnings.po index 6863b710..0eda2d3e 100644 --- a/library/warnings.po +++ b/library/warnings.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/warnings.rst:2 msgid ":mod:`warnings` --- Warning control" -msgstr "" +msgstr ":mod:`warnings` --- Contrôle des alertes" #: ../Doc/library/warnings.rst:12 msgid "**Source code:** :source:`Lib/warnings.py`" @@ -32,6 +32,11 @@ msgid "" "program. For example, one might want to issue a warning when a program uses " "an obsolete module." msgstr "" +"Les messages d'avertissement sont généralement émis dans les situations où " +"il est utile d'alerter l'utilisateur d'un problème dans un programme, mais " +"qu'il n'est pas justifié de lever une exception et de le terminer. Par " +"exemple, on peut vouloir émettre un avertissement lorsqu'un programme " +"utilise un module obsolète." #: ../Doc/library/warnings.rst:21 msgid "" @@ -39,6 +44,9 @@ msgid "" "defined in this module. (C programmers use :c:func:`PyErr_WarnEx`; see :ref:" "`exceptionhandling` for details)." msgstr "" +"Les développeurs Python émettent des avertissements en appelant la fonction :" +"func:`warn` définie dans ce module. (Les développeurs C utilisent :c:func:" +"`PyErr_WarnEx` ; voir :ref:`exceptionhandling` pour plus d'informations)." #: ../Doc/library/warnings.rst:25 msgid "" @@ -49,6 +57,12 @@ msgid "" "source location where it is issued. Repetitions of a particular warning for " "the same source location are typically suppressed." msgstr "" +"Les messages d'avertissement sont normalement écrits sur ``sys.stderr``, " +"mais leurs effets peuvent être modifiés, il est possible d'ignorer tous les " +"avertissements ou au contraire les transformer en exceptions. L'effet des " +"avertissements peut varier en fonction de la catégorie d'avertissement (voir " +"ci-dessous), de son texte et d'où il est émis. Les répétitions d'un même " +"avertissement d'une même source sont généralement ignorés." #: ../Doc/library/warnings.rst:32 msgid "" @@ -57,6 +71,10 @@ msgid "" "next, if a message is to be issued, it is formatted and printed using a user-" "settable hook." msgstr "" +"La gestion des avertissements se fait en deux étapes : premièrement, chaque " +"fois qu'un avertissement est émis, le module détermine si un message doit " +"être émis ou non ; ensuite, si un message doit être émis, il est formaté et " +"affiché en utilisant une fonction qui peut être définie par l'utilisateur." #: ../Doc/library/warnings.rst:36 msgid "" @@ -65,6 +83,10 @@ msgid "" "be added to the filter by calling :func:`filterwarnings` and reset to its " "default state by calling :func:`resetwarnings`." msgstr "" +"Un filtre (une séquence de règles) est utilisé pour décider si un message " +"d'avertissement doit être émis ou non. Des règles peuvent être ajoutées au " +"filtre en appelant :func:`filterwarnings` et remises à leur état par défaut " +"en appelant :func:`resetwarnings`." #: ../Doc/library/warnings.rst:41 msgid "" @@ -73,16 +95,22 @@ msgid "" "the message by calling :func:`formatwarning`, which is also available for " "use by custom implementations." msgstr "" +"L'affichage des messages d'avertissement se fait en appelant la fonction :" +"func:`showwarning`, qui peut être redéfinie ; l'implémentation par défaut " +"formate le message en appelant :func:`formatwarning`, qui peut également " +"être réutilisée par une implémentation personnalisée." #: ../Doc/library/warnings.rst:47 msgid "" ":func:`logging.captureWarnings` allows you to handle all warnings with the " "standard logging infrastructure." msgstr "" +":func:`logging.captureWarnings` vous permet de gérer tous les avertissements " +"avec l'infrastructure de journalisation standard." #: ../Doc/library/warnings.rst:54 msgid "Warning Categories" -msgstr "" +msgstr "Catégories d'avertissement" #: ../Doc/library/warnings.rst:56 msgid "" @@ -93,7 +121,7 @@ msgstr "" #: ../Doc/library/warnings.rst:63 msgid "Class" -msgstr "" +msgstr "Classe" #: ../Doc/library/warnings.rst:63 msgid "Description" @@ -108,6 +136,8 @@ msgid "" "This is the base class of all warning category classes. It is a subclass " "of :exc:`Exception`." msgstr "" +"Il s'agit de la classe de base de toutes les classes de catégories " +"d'avertissement. C'est une sous-classe de :exc:`Exception`." #: ../Doc/library/warnings.rst:69 msgid ":exc:`UserWarning`" @@ -115,7 +145,7 @@ msgstr ":exc:`UserWarning`" #: ../Doc/library/warnings.rst:69 msgid "The default category for :func:`warn`." -msgstr "" +msgstr "Catégorie par défaut pour :func:`warn`." #: ../Doc/library/warnings.rst:71 msgid ":exc:`DeprecationWarning`" @@ -133,6 +163,7 @@ msgstr ":exc:`SyntaxWarning`" #: ../Doc/library/warnings.rst:74 msgid "Base category for warnings about dubious syntactic features." msgstr "" +"Catégorie de base pour les avertissements concernant les syntaxes douteuses." #: ../Doc/library/warnings.rst:77 msgid ":exc:`RuntimeWarning`" @@ -141,6 +172,8 @@ msgstr ":exc:`RuntimeWarning`" #: ../Doc/library/warnings.rst:77 msgid "Base category for warnings about dubious runtime features." msgstr "" +"Catégorie de base pour les avertissements concernant les fonctionnalités " +"douteuses à l'exécution." #: ../Doc/library/warnings.rst:80 msgid ":exc:`FutureWarning`" @@ -161,6 +194,8 @@ msgid "" "Base category for warnings about features that will be deprecated in the " "future (ignored by default)." msgstr "" +"Catégorie de base pour les avertissements concernant les fonctionnalités qui " +"seront obsolètes dans le futur (ignorée par défaut)." #: ../Doc/library/warnings.rst:87 msgid ":exc:`ImportWarning`" @@ -171,6 +206,8 @@ msgid "" "Base category for warnings triggered during the process of importing a " "module (ignored by default)." msgstr "" +"Catégorie de base pour les avertissements déclenchés lors de l'importation " +"d'un module (ignoré par défaut)." #: ../Doc/library/warnings.rst:91 msgid ":exc:`UnicodeWarning`" @@ -178,7 +215,7 @@ msgstr ":exc:`UnicodeWarning`" #: ../Doc/library/warnings.rst:91 msgid "Base category for warnings related to Unicode." -msgstr "" +msgstr "Catégorie de base pour les avertissements relatifs à Unicode." #: ../Doc/library/warnings.rst:95 msgid "" @@ -192,6 +229,10 @@ msgid "" "standard warning categories. A warning category must always be a subclass " "of the :exc:`Warning` class." msgstr "" +"Le code utilisateur peut définir des catégories d'avertissement " +"supplémentaires en héritant l'une des catégories d'avertissement standard. " +"Une catégorie d'avertissement doit toujours hériter de la classe :exc:" +"`Warning`." #: ../Doc/library/warnings.rst:102 msgid ":exc:`DeprecationWarning` is ignored by default." @@ -199,13 +240,15 @@ msgstr "" #: ../Doc/library/warnings.rst:109 msgid "The Warnings Filter" -msgstr "" +msgstr "Le filtre des avertissements" #: ../Doc/library/warnings.rst:111 msgid "" "The warnings filter controls whether warnings are ignored, displayed, or " "turned into errors (raising an exception)." msgstr "" +"Le filtre des avertissements contrôle si les avertissements sont ignorés, " +"affichés ou transformés en erreurs (ce qui lève une exception)." #: ../Doc/library/warnings.rst:114 msgid "" @@ -218,7 +261,7 @@ msgstr "" #: ../Doc/library/warnings.rst:120 msgid "*action* is one of the following strings:" -msgstr "" +msgstr "*action* est l'une des chaînes de caractères suivantes :" #: ../Doc/library/warnings.rst:123 msgid "Value" @@ -226,7 +269,7 @@ msgstr "Valeur" #: ../Doc/library/warnings.rst:123 msgid "Disposition" -msgstr "" +msgstr "Action" #: ../Doc/library/warnings.rst:125 msgid "``\"error\"``" @@ -234,7 +277,7 @@ msgstr "``\"error\"``" #: ../Doc/library/warnings.rst:125 msgid "turn matching warnings into exceptions" -msgstr "" +msgstr "transforme les avertissements correspondants en exceptions" #: ../Doc/library/warnings.rst:127 msgid "``\"ignore\"``" @@ -242,7 +285,7 @@ msgstr "``\"ignore\"``" #: ../Doc/library/warnings.rst:127 msgid "never print matching warnings" -msgstr "" +msgstr "ignore les avertissements correspondants" #: ../Doc/library/warnings.rst:129 msgid "``\"always\"``" @@ -250,7 +293,7 @@ msgstr "``\"always\"``" #: ../Doc/library/warnings.rst:129 msgid "always print matching warnings" -msgstr "" +msgstr "affiche toujours les avertissements correspondants" #: ../Doc/library/warnings.rst:131 msgid "``\"default\"``" @@ -280,6 +323,8 @@ msgstr "``\"once\"``" msgid "" "print only the first occurrence of matching warnings, regardless of location" msgstr "" +"n'affiche que la première occurrence des avertissements correspondants, quel " +"que soit l'endroit où ils se trouvent" #: ../Doc/library/warnings.rst:143 msgid "" @@ -287,30 +332,43 @@ msgid "" "warning message must match. The expression is compiled to always be case-" "insensitive." msgstr "" +"*message* est une chaîne de caractères contenant une expression régulière " +"avec laquelle le début du message d'avertissement doit correspondre. " +"L'expression est compilée pour être toujours insensible à la casse." #: ../Doc/library/warnings.rst:147 msgid "" "*category* is a class (a subclass of :exc:`Warning`) of which the warning " "category must be a subclass in order to match." msgstr "" +"*category* est une classe (une sous-classe de :exc:`Warning`) dont la " +"catégorie d'avertissement doit être une sous-classe afin de correspondre." #: ../Doc/library/warnings.rst:150 msgid "" "*module* is a string containing a regular expression that the module name " "must match. The expression is compiled to be case-sensitive." msgstr "" +"*module* est une chaîne de caractères contenant une expression régulière " +"avec laquelle le nom du module doit correspondre. L'expression est compilée " +"pour être sensible à la casse." #: ../Doc/library/warnings.rst:153 msgid "" "*lineno* is an integer that the line number where the warning occurred must " "match, or ``0`` to match all line numbers." msgstr "" +"*lineno* est le numéro de ligne d'où l'avertissement doit provenir, ou ``0`` " +"pour correspondre à tous les numéros de ligne." #: ../Doc/library/warnings.rst:156 msgid "" "Since the :exc:`Warning` class is derived from the built-in :exc:`Exception` " "class, to turn a warning into an error we simply raise ``category(message)``." msgstr "" +"Puisque que la classe :exc:`Warning` hérite de la classe :exc:`Exception`, " +"pour transformer un avertissement en erreur, il suffit de lever " +"``category(message)``." #: ../Doc/library/warnings.rst:159 msgid "" @@ -347,7 +405,7 @@ msgstr "" #: ../Doc/library/warnings.rst:184 msgid "Temporarily Suppressing Warnings" -msgstr "" +msgstr "Suppression temporaire des avertissements" #: ../Doc/library/warnings.rst:186 msgid "" @@ -365,10 +423,18 @@ msgid "" "threaded application. If two or more threads use the :class:`catch_warnings` " "context manager at the same time, the behavior is undefined." msgstr "" +"Dans le gestionnaire de contexte, tous les avertissements sont simplement " +"ignorés. Ceci vous permet d'utiliser du code déclaré obsolète sans voir " +"l'avertissement tout en ne supprimant pas l'avertissement pour un autre code " +"qui pourrait ne pas être conscient de son utilisation de code déprécié. " +"Remarque : ceci ne peut être garanti que dans une application utilisant un " +"seul fil d'exécution. Si deux ou plusieurs *threads* utilisent le " +"gestionnaire de contexte :class:`catch_warnings` en même temps, le " +"comportement est indéfini." #: ../Doc/library/warnings.rst:211 msgid "Testing Warnings" -msgstr "" +msgstr "Tester les avertissements" #: ../Doc/library/warnings.rst:213 msgid "" @@ -377,6 +443,10 @@ msgid "" "facilitate your testing. For instance, do the following to capture all " "raised warnings to check::" msgstr "" +"Pour tester les avertissements générés par le code, utilisez le gestionnaire " +"de contexte :class:`catch_warnings`. Avec lui, vous pouvez temporairement " +"modifier le filtre d'avertissements pour faciliter votre test. Par exemple, " +"procédez comme suit pour capturer tous les avertissements levés à vérifier ::" #: ../Doc/library/warnings.rst:233 msgid "" @@ -386,6 +456,12 @@ msgid "" "filters are set the warning will not be seen again unless the warnings " "registry related to the warning has been cleared." msgstr "" +"Vous pouvez aussi faire en sorte que tous les avertissements soient des " +"exceptions en utilisant ``error`` au lieu de ``always``. Il faut savoir que " +"si un avertissement a déjà été émis à cause d'une règle ``once`` ou " +"``default``, quel que soit le filtre activé, l'avertissement ne sera pas " +"revu à moins que le registre des avertissements lié à l'avertissement ait " +"été vidé." #: ../Doc/library/warnings.rst:239 msgid "" @@ -397,6 +473,15 @@ msgid "" "application. If two or more threads use the :class:`catch_warnings` context " "manager at the same time, the behavior is undefined." msgstr "" +"A sa sortie, le gestionnaire de contexte restaure le filtre des " +"avertissements dans l'état où il était au démarrage du contexte. Cela " +"empêche les tests de changer le filtre d'avertissements de manière " +"inattendue entre les tests et d'aboutir à des résultats de test " +"indéterminés. La fonction :func:`showwarning` du module est également " +"restaurée à sa valeur originale. Remarque : ceci ne peut être garanti que " +"dans une application *mono-threadées*. Si deux ou plusieurs fils d'exécution " +"utilisent le gestionnaire de contexte :class:`catch_warnings` en même temps, " +"le comportement est indéfini." #: ../Doc/library/warnings.rst:247 msgid "" @@ -407,6 +492,14 @@ msgid "" "continues to increase after each operation, or else delete the previous " "entries from the warnings list before each new operation)." msgstr "" +"Lorsque vous testez plusieurs opérations qui provoquent le même type " +"d'avertissement, il est important de les tester d'une manière qui confirme " +"que chaque opération provoque un nouvel avertissement (par exemple, " +"définissez les avertissements comme exceptions et vérifiez que les " +"opérations provoquent des exceptions, vérifiez que la longueur de la liste " +"des avertissements continue à augmenter après chaque opération, ou bien " +"supprimez les entrées précédentes de la liste des avertissements avant " +"chaque nouvelle opération)." #: ../Doc/library/warnings.rst:256 msgid "Updating Code For New Versions of Python" @@ -452,7 +545,7 @@ msgstr "" #: ../Doc/library/warnings.rst:289 msgid "Available Functions" -msgstr "" +msgstr "Fonctions disponibles" #: ../Doc/library/warnings.rst:294 msgid "" @@ -466,6 +559,15 @@ msgid "" "The *stacklevel* argument can be used by wrapper functions written in " "Python, like this::" msgstr "" +"Émet, ignore, ou transforme en exception un avertissement. L'argument " +"*category*, s'il est donné, doit être une classe de catégorie " +"d'avertissement (voir ci-dessus) ; et vaut par défaut :exc:`UserWarning`. " +"Aussi *message* peut être une instance de :exc:`Warning', auquel cas " +"*category* sera ignoré et ``message.__class__`` sera utilisé. Dans ce cas, " +"le texte du message sera ``str(message)``. Cette fonction lève une exception " +"si cet avertissement particulier émis est transformé en erreur par le filtre " +"des avertissements, voir ci-dessus. L'argument *stacklevel* peut être " +"utilisé par les fonctions *wrapper* écrites en Python, comme ceci ::" #: ../Doc/library/warnings.rst:306 msgid "" @@ -473,6 +575,9 @@ msgid "" "the source of :func:`deprecation` itself (since the latter would defeat the " "purpose of the warning message)." msgstr "" +"Fait en sorte que l'avertissement se réfère à l'appelant de :func:" +"`deprecation` plutôt qu'à la source de :func:`deprecation` elle-même " +"(puisque celle-ci irait à l'encontre du but du message d'avertissement)." #: ../Doc/library/warnings.rst:313 msgid "" @@ -485,6 +590,15 @@ msgid "" "of :exc:`Warning` or *message* may be a :exc:`Warning` instance, in which " "case *category* will be ignored." msgstr "" +"Il s'agit d'une interface de bas niveau pour la fonctionnalité de :func:" +"`warn`, en passant explicitement le message, la catégorie, le nom de fichier " +"et le numéro de ligne, et éventuellement le nom du module et le registre " +"(qui devrait être le dictionnaire ``__warningregistry__`` du module). Le " +"nom de module par défaut est le nom de fichier sans ``.py`` ; si aucun " +"registre n'est passé, l'avertissement n'est jamais supprimé. *message* doit " +"être une chaîne de caractères et *category* une sous-classe de :exc:" +"`Warning` ou *message* peut être une instance de :exc:`Warning`, auquel cas " +"*category* sera ignoré." #: ../Doc/library/warnings.rst:322 msgid "" @@ -493,6 +607,10 @@ msgid "" "displaying source for modules found in zipfiles or other non-filesystem " "import sources)." msgstr "" +"*module_globals*, s'il est fourni, doit être l'espace de nommage global " +"utilisé par le code pour lequel l'avertissement est émis. (Cet argument est " +"utilisé pour afficher les sources des modules trouvés dans les fichiers zip " +"ou d'autres sources d'importation hors du système de fichiers)." #: ../Doc/library/warnings.rst:327 msgid "Added the *module_globals* parameter." @@ -529,6 +647,11 @@ msgid "" "`formatwarning` will try to read the line specified by *filename* and " "*lineno*." msgstr "" +"Formate un avertissement de la manière standard. Ceci renvoie une chaîne " +"pouvant contenir des retours à la ligne se termine par un retour à la " +"ligne. *line* est une ligne de code source à inclure dans le message " +"d'avertissement ; si *line* n'est pas fourni, :func:`formatwarning` essaiera " +"de lire la ligne spécifiée par *filename* et *lineno*." #: ../Doc/library/warnings.rst:364 msgid "Added the *line* argument." @@ -545,6 +668,13 @@ msgid "" "particular warning. Omitted arguments default to a value that matches " "everything." msgstr "" +"Insère une entrée dans la liste de :ref:`warning filter specifications " +"`. L'entrée est insérée à l'avant par défaut ; si *append* " +"est vrai, elle est insérée à la fin. Il vérifie le type des arguments, " +"compile les expressions régulières *message* et *module*, et les insère sous " +"forme de tuple dans la liste des filtres d'avertissements. Les entrées plus " +"proches du début de la liste ont priorité sur les entrées plus loin dans la " +"liste. Les arguments omis ont par défaut une valeur qui correspond à tout." #: ../Doc/library/warnings.rst:382 msgid "" @@ -554,6 +684,12 @@ msgid "" "inserted always matches any message in any module as long as the category " "and line number match." msgstr "" +"Insère une entrée simple dans la liste de :ref:`spécifications du filtre " +"d'avertissements `. La signification des paramètres de " +"fonction est la même que pour :func:`filterwarnings`, mais les expressions " +"régulières ne sont pas nécessaires car le filtre inséré correspond toujours " +"à n'importe quel message dans n'importe quel module tant que la catégorie et " +"le numéro de ligne correspondent." #: ../Doc/library/warnings.rst:391 msgid "" @@ -561,10 +697,14 @@ msgid "" "to :func:`filterwarnings`, including that of the :option:`-W` command line " "options and calls to :func:`simplefilter`." msgstr "" +"Réinitialise le filtre des avertissements. Ceci supprime l'effet de tous " +"les appels précédents à :func:`filterwarnings`, y compris celui de l'option :" +"option:`-W` des options de ligne de commande et des appels à :func:" +"`simplefilter`." #: ../Doc/library/warnings.rst:397 msgid "Available Context Managers" -msgstr "" +msgstr "Gestionnaires de contexte disponibles" #: ../Doc/library/warnings.rst:401 msgid "" @@ -576,6 +716,14 @@ msgid "" "(which also suppresses output to ``sys.stdout``). Each object in the list " "has attributes with the same names as the arguments to :func:`showwarning`." msgstr "" +"Un gestionnaire de contexte qui copie et, à la sortie, restaure le filtre " +"des avertissements et la fonction :func:`showwarning`. Si l'argument " +"*record* est :const:`False` (par défaut), le gestionnaire de contexte " +"retourne :class:`None` en entrant. Si *record* est :const:`True`, une liste " +"est renvoyée qui est progressivement remplie d'objets comme vus par une " +"fonction custom :func:`showwarning' (qui supprime également la sortie vers " +"``sys.stdout``). Chaque objet de la liste a des attributs avec les mêmes " +"noms que les arguments de :func:`showwarning`." #: ../Doc/library/warnings.rst:410 msgid "" @@ -583,6 +731,10 @@ msgid "" "returned when you import :mod:`warnings` whose filter will be protected. " "This argument exists primarily for testing the :mod:`warnings` module itself." msgstr "" +"L'argument *module* prend un module qui sera utilisé à la place du module " +"renvoyé lors de l'importation :mod:`warnings` dont le filtre sera protégé. " +"Cet argument existe principalement pour tester le module :mod:`warnings` lui-" +"même." #: ../Doc/library/warnings.rst:417 msgid "" @@ -591,6 +743,11 @@ msgid "" "filter specifications. This means the context manager is modifying global " "state and therefore is not thread-safe." msgstr "" +"Le gestionnaire :class:`catch_warnings` fonctionne en remplaçant puis en " +"restaurant plus tard la fonction :func:`showwarning` du module et la liste " +"interne des spécifications du filtre. Cela signifie que le gestionnaire de " +"contexte modifie l'état global et n'est donc pas prévisible avec plusieurs " +"fils d'exécution." #: ../Doc/library/warnings.rst:425 msgid "" diff --git a/library/weakref.po b/library/weakref.po index d196086f..9db8758e 100644 --- a/library/weakref.po +++ b/library/weakref.po @@ -293,7 +293,7 @@ msgstr "" #: ../Doc/library/weakref.rst:256 msgid "Weak Reference Objects" -msgstr "" +msgstr "Objets à références faibles" #: ../Doc/library/weakref.rst:258 msgid "" diff --git a/library/webbrowser.po b/library/webbrowser.po index 74cef190..2037c840 100644 --- a/library/webbrowser.po +++ b/library/webbrowser.po @@ -78,7 +78,7 @@ msgstr "" #: ../Doc/library/webbrowser.rst:50 msgid "The following functions are defined:" -msgstr "" +msgstr "Les fonctions suivantes sont définies :" #: ../Doc/library/webbrowser.rst:55 msgid "" diff --git a/library/xml.etree.elementtree.po b/library/xml.etree.elementtree.po index 575d01be..f7c59bc0 100644 --- a/library/xml.etree.elementtree.po +++ b/library/xml.etree.elementtree.po @@ -307,7 +307,7 @@ msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:385 msgid "Syntax" -msgstr "" +msgstr "Syntaxe" #: ../Doc/library/xml.etree.elementtree.rst:385 msgid "Meaning" @@ -421,7 +421,7 @@ msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:431 msgid "Reference" -msgstr "" +msgstr "Référence" #: ../Doc/library/xml.etree.elementtree.rst:436 msgid "Functions" diff --git a/library/xml.sax.utils.po b/library/xml.sax.utils.po index c6d728f5..b49dc6e2 100644 --- a/library/xml.sax.utils.po +++ b/library/xml.sax.utils.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/xml.sax.utils.rst:3 msgid ":mod:`xml.sax.saxutils` --- SAX Utilities" -msgstr "" +msgstr ":mod:`xml.sax.saxutils` — Utilitaires SAX" #: ../Doc/library/xml.sax.utils.rst:13 msgid "" @@ -26,10 +26,15 @@ msgid "" "functions that are commonly useful when creating SAX applications, either in " "direct use, or as base classes." msgstr "" +"Le module :mod:`xml.sax.saxutils` contient des classes et fonctions qui " +"sont fréquemment utiles en créant des applications SAX, soit en utilisation " +"directe, soit en classes de base." #: ../Doc/library/xml.sax.utils.rst:20 msgid "Escape ``'&'``, ``'<'``, and ``'>'`` in a string of data." msgstr "" +"Échappe ``'&'``, ``'<'``, et ``'>'`` dans une chaine de caractères de " +"données." #: ../Doc/library/xml.sax.utils.rst:22 msgid "" @@ -38,10 +43,17 @@ msgid "" "will be replaced with its corresponding value. The characters ``'&'``, " "``'<'`` and ``'>'`` are always escaped, even if *entities* is provided." msgstr "" +"Vous pouvez échapper d'autres chaines de caractères de données en passant un " +"dictionnaire au paramètre optionnel *entities*. Les clés et valeurs doivent " +"toutes être des chaines de caractères ; chaque clé sera remplacée par sa " +"valeur correspondante. Les caractères ``'&'``, ``'<'`` et ``'>'`` sont " +"toujours échappés même si *entities* est donné en paramètre." #: ../Doc/library/xml.sax.utils.rst:30 msgid "Unescape ``'&'``, ``'<'``, and ``'>'`` in a string of data." msgstr "" +"*Parse* ``'&'``, ``'<'``, et ``'>'`` dans une chaine de caractères " +"de données." #: ../Doc/library/xml.sax.utils.rst:32 msgid "" @@ -51,6 +63,11 @@ msgid "" "``'<'``, and ``'>'`` are always unescaped, even if *entities* is " "provided." msgstr "" +"Vous pouvez dé-échapper d'autres chaines de caractères de données en passant " +"un dictionnaire au paramètre optionnel *entities*. Les clés et valeurs " +"doivent toutes être des chaines de caractères ; chaque clé sera remplacée " +"par sa valeur correspondante. Les caractères ``'&'``, ``'<'`` et ``'>'`` " +"sont toujours dé-échappés même si *entities* est donné en paramètre." #: ../Doc/library/xml.sax.utils.rst:42 msgid "" @@ -63,12 +80,23 @@ msgid "" "*data* will be wrapped in double-quotes. The resulting string can be used " "directly as an attribute value::" msgstr "" +"Similaire à :func:`escape`, mais prépare aussi *data* pour être utilisé " +"comme une valeur d'attribut. La valeur renvoyée est une version entre " +"guillemets de *data* avec tous les remplacements supplémentaires " +"nécessaires. :func:`quoteattr` va sélectionner un caractère guillemet basé " +"sur le contenu de *data*, en essayant d’éviter d'encoder tous les caractères " +"guillemets dans la chaine de caractères. Si les caractères guillemet simple " +"et guillemets sont déjà dans *data*, les caractères guillemets simples " +"seront encodés et *data* sera entouré de guillemets. La chaine de caractères " +"résultante pourra être utilisée en tant que valeur d'attribut ::" #: ../Doc/library/xml.sax.utils.rst:54 msgid "" "This function is useful when generating attribute values for HTML or any " "SGML using the reference concrete syntax." msgstr "" +"Cette fonction est utile quand vous générez des valeurs d'attributs pour du " +"HTML ou n'importe quel SGML en utilisant la syntaxe concrète de référence." #: ../Doc/library/xml.sax.utils.rst:62 msgid "" @@ -88,6 +116,12 @@ msgid "" "unmodified, but subclasses can override specific methods to modify the event " "stream or the configuration requests as they pass through." msgstr "" +"Cette classe est faite pour être entre :class:`~xml.sax.xmlreader.XMLReader` " +"et le gestionnaire des événements de l'application client. Par défaut, elle " +"ne fait rien mais passe les requêtes au lecteur et les événements au " +"gestionnaire sans les modifier, mais des sous-classes peuvent surcharger des " +"méthodes spécifiques pour modifier le flux d’événements ou la configuration " +"des requêtes à leur passage." #: ../Doc/library/xml.sax.utils.rst:82 msgid "" @@ -98,3 +132,9 @@ msgid "" "function to implement the polymorphic *source* argument to their :meth:" "`parse` method." msgstr "" +"Cette fonction prend en entrée une source et une URL de base optionnelle et " +"retourne un objet complétement résolue :class:`~xml.sax.xmlreader." +"InputSource` prêt pour être lu. La source d'entrée peut être donnée comme " +"une chaine de caractère, un objet type fichier, ou un objet :class:`~xml.sax." +"xmlreader.InputSource` ; Les analyseurs utiliseront cette fonction pour " +"gérer le polymorphisme de l'argument *source* à leur méthode :meth:`parse`." diff --git a/library/zipfile.po b/library/zipfile.po index cda7d0b3..c9f70efa 100644 --- a/library/zipfile.po +++ b/library/zipfile.po @@ -18,7 +18,7 @@ msgstr "" #: ../Doc/library/zipfile.rst:2 msgid ":mod:`zipfile` --- Work with ZIP archives" -msgstr "" +msgstr ":mod:`zipfile` — Travailler avec des archives ZIP" #: ../Doc/library/zipfile.rst:11 msgid "**Source code:** :source:`Lib/zipfile.py`" @@ -31,6 +31,11 @@ msgid "" "Any advanced use of this module will require an understanding of the format, " "as defined in `PKZIP Application Note`_." msgstr "" +"Le format de fichier ZIP est une archive et un standard de compression " +"couramment utilisés. Ce module fournit des outils pour créer, écrire, " +"ajouter des données à et lister un fichier ZIP. L'utilisation avancée de ce " +"module requiert une certaine compréhension du format, comme défini dans " +"`PKZIP Application Note`_." #: ../Doc/library/zipfile.rst:20 msgid "" @@ -54,16 +59,20 @@ msgid "" "The error raised when a ZIP file would require ZIP64 functionality but that " "has not been enabled." msgstr "" +"Erreur levée quand un fichier ZIP nécessite la fonctionnalité ZIP64 mais " +"qu'elle n'a pas été activée." #: ../Doc/library/zipfile.rst:43 msgid "" "The class for reading and writing ZIP files. See section :ref:`zipfile-" "objects` for constructor details." msgstr "" +"Classe pour lire et écrire des fichiers ZIP. Voir la section :ref:`zipfile-" +"objects` pour les détails du constructeur." #: ../Doc/library/zipfile.rst:49 msgid "Class for creating ZIP archives containing Python libraries." -msgstr "" +msgstr "Classe pour créer des archives ZIP contenant des bibliothèques Python." #: ../Doc/library/zipfile.rst:54 msgid "" @@ -76,6 +85,14 @@ msgid "" "of the last modification to the file; the fields are described in section :" "ref:`zipinfo-objects`." msgstr "" +"Classe utilisée pour représenter les informations d'un membre d'une archive. " +"Les instances de cette classe sont retournées par les méthodes :meth:`." +"getinfo` et :meth:`.infolist` des objets :class:`ZipFile`. La plupart des " +"utilisateurs du module :mod:`zipfile` n'ont pas besoin de créer ces " +"instances mais d'utiliser celles créées par ce module. *filename* doit être " +"le nom complet du membre de l'archive et *date_time* doit être un *tuple* " +"contenant six champs qui décrit la date de dernière modification du " +"fichier ; les champs sont décrits dans la section :ref:`zipinfo-objects`." #: ../Doc/library/zipfile.rst:66 msgid "" @@ -83,14 +100,17 @@ msgid "" "number, otherwise returns ``False``. *filename* may be a file or file-like " "object too." msgstr "" +"Retourne ``True`` si *filename* est un fichier ZIP valide basé sur son " +"nombre magique, sinon retourne ``False``. *filename* peut aussi être un " +"fichier ou un objet fichier-compatible." #: ../Doc/library/zipfile.rst:69 msgid "Support for file and file-like objects." -msgstr "" +msgstr "Gestion des objets fichier et fichier-compatibles." #: ../Doc/library/zipfile.rst:74 msgid "The numeric constant for an uncompressed archive member." -msgstr "" +msgstr "Constante numérique pour un membre d'une archive décompressée." #: ../Doc/library/zipfile.rst:79 msgid "" @@ -101,13 +121,15 @@ msgstr "" #: ../Doc/library/zipfile.rst:87 msgid "`PKZIP Application Note`_" -msgstr "" +msgstr "`PKZIP Application Note`_" #: ../Doc/library/zipfile.rst:86 msgid "" "Documentation on the ZIP file format by Phil Katz, the creator of the format " "and algorithms used." msgstr "" +"Documentation sur le format de fichier ZIP par Phil Katz, créateur du format " +"et des algorithmes utilisés." #: ../Doc/library/zipfile.rst:90 msgid "`Info-ZIP Home Page `_" @@ -118,10 +140,12 @@ msgid "" "Information about the Info-ZIP project's ZIP archive programs and " "development libraries." msgstr "" +"Informations sur les programmes et les bibliothèques de développement " +"d'archivage ZIP du projet Info-ZIP." #: ../Doc/library/zipfile.rst:97 msgid "ZipFile Objects" -msgstr "" +msgstr "Objets ZipFile" #: ../Doc/library/zipfile.rst:102 msgid "" @@ -171,12 +195,16 @@ msgstr "" #: ../Doc/library/zipfile.rst:137 msgid "Added the ability to use :class:`ZipFile` as a context manager." msgstr "" +"Ajout de la possibilité d'utiliser :class:`ZipFile` comme un gestionnaire de " +"contexte." #: ../Doc/library/zipfile.rst:143 msgid "" "Close the archive file. You must call :meth:`close` before exiting your " "program or essential records will not be written." msgstr "" +"Ferme l'archive. Vous devez appeler :meth:`close` avant de terminer votre " +"programme ou des informations essentielles n'y seront pas enregistrées." #: ../Doc/library/zipfile.rst:149 msgid "" @@ -184,6 +212,9 @@ msgid "" "*name*. Calling :meth:`getinfo` for a name not currently contained in the " "archive will raise a :exc:`KeyError`." msgstr "" +"Retourne un objet :class:`ZipInfo` avec les informations du membre *name* de " +"l'archive. Appeler :meth:`getinfo` pour un nom non contenu dans l'archive " +"lève une exception :exc:`KeyError`." #: ../Doc/library/zipfile.rst:156 msgid "" @@ -191,10 +222,13 @@ msgid "" "archive. The objects are in the same order as their entries in the actual " "ZIP file on disk if an existing archive was opened." msgstr "" +"Retourne une liste contenant un objet :class:`ZipInfo` pour chaque membre de " +"l'archive. Les objets ont le même ordre que leurs entrées dans le fichier " +"ZIP présent sur disque s'il s'agissait d'une archive préexistante." #: ../Doc/library/zipfile.rst:163 msgid "Return a list of archive members by name." -msgstr "" +msgstr "Retourne une liste des membres de l'archive indexés par leur nom." #: ../Doc/library/zipfile.rst:171 msgid "" @@ -232,6 +266,10 @@ msgid "" "filename or a :class:`ZipInfo` object. You will appreciate this when trying " "to read a ZIP file that contains members with duplicate names." msgstr "" +"Les méthodes :meth:`.open`, :meth:`read` et :meth:`extract` peuvent prendre " +"un nom de fichier ou un objet :class:`ZipInfo`. Cela est appréciable " +"lorsqu'on essaie de lire un fichier ZIP qui contient des membres avec des " +"noms en double." #: ../Doc/library/zipfile.rst:208 msgid "" @@ -244,7 +282,7 @@ msgstr "" #: ../Doc/library/zipfile.rst:214 msgid "Returns the normalized path created (a directory or new file)." -msgstr "" +msgstr "Retourne le chemin normalisé créé (un dossier ou un nouveau fichier)." #: ../Doc/library/zipfile.rst:220 msgid "" @@ -256,6 +294,13 @@ msgid "" "``<``, ``>``, ``|``, ``\"``, ``?``, and ``*``) replaced by underscore " "(``_``)." msgstr "" +"Si le nom de fichier d'un membre est un chemin absolu, le disque/partage UNC " +"et les (anti)slashes de départ seront supprimés, par exemple `///foo/bar`` " +"devient ``foo/bar`` sous Unix et ``C:\\foo\\bar`` devient ``foo\\bar`` sous " +"Windows. Et tous les composants ``\"..\"`` dans le nom de fichier d'un " +"membre seront supprimés, par exemple ``../../foo../../ba..r`` devient " +"``foo../ba..r``. Sous Windows les caractères illégaux (``:``, ``<``, ``>``, " +"``|``, ``\"``, ``?`` et ``*``) sont remplacés par un *underscore* (``_``)." #: ../Doc/library/zipfile.rst:231 msgid "" @@ -264,6 +309,10 @@ msgid "" "and must be a subset of the list returned by :meth:`namelist`. *pwd* is the " "password used for encrypted files." msgstr "" +"Extrait tous les membres de l'archive dans le répertoire courant. *path* " +"spécifie un dossier de destination différent. *members* est optionnel et " +"doit être un sous-ensemble de la liste retournée par :meth:`namelist`. *pwd* " +"est le mot de passe utilisé pour les fichiers chiffrés." #: ../Doc/library/zipfile.rst:238 msgid "" @@ -279,11 +328,13 @@ msgstr "" #: ../Doc/library/zipfile.rst:251 msgid "Print a table of contents for the archive to ``sys.stdout``." -msgstr "" +msgstr "Affiche la liste des contenus de l'archive sur ``sys.stdout``." #: ../Doc/library/zipfile.rst:256 msgid "Set *pwd* as default password to extract encrypted files." msgstr "" +"Définit *pwd* comme mot de passe par défait pour extraire des fichiers " +"chiffrés." #: ../Doc/library/zipfile.rst:263 msgid "" @@ -325,12 +376,19 @@ msgid "" "before passing them to :meth:`write`. WinZip interprets all file names as " "encoded in CP437, also known as DOS Latin." msgstr "" +"Il n'y a pas d'encodage de nom de fichier officiel pour les fichiers ZIP. Si " +"vous avez des noms de fichier *unicode*, vous devez les convertir en chaînes " +"d'octets dans l'encodage désiré avant de les passer à :meth:`write`. " +"*WinZip* interprète tous les noms de fichier comme encodés en CP437, aussi " +"connu sous le nom de DOS Latin." #: ../Doc/library/zipfile.rst:300 msgid "" "Archive names should be relative to the archive root, that is, they should " "not start with a path separator." msgstr "" +"Les noms d'archive doivent être relatifs à la racine de l'archive, c'est-à-" +"dire qu'ils ne doivent pas commencer par un séparateur de chemin." #: ../Doc/library/zipfile.rst:305 msgid "" @@ -338,6 +396,8 @@ msgid "" "null byte, the name of the file in the archive will be truncated at the null " "byte." msgstr "" +"Si ``arcname`` (ou ``filename`` si ``arcname`` n'est pas donné) contient un " +"octet nul, le nom du fichier dans l'archive sera tronqué à l'octet nul." #: ../Doc/library/zipfile.rst:311 msgid "" @@ -365,14 +425,19 @@ msgid "" "*compress_type* member of the given :class:`ZipInfo` instance. By default, " "the :class:`ZipInfo` constructor sets this member to :const:`ZIP_STORED`." msgstr "" +"Lorsque l'on passe une instance de :class:`ZipInfo` dans le paramètre " +"*zinfo_or_arcname*, la méthode de compression utilisée sera celle spécifiée " +"dans le membre *compress_type* de l'instance :class:`ZipInfo` donnée. Par " +"défaut, le constructeur de la classe :class:`ZipInfo` définit ce membre à :" +"const:`ZIP_STORED`." #: ../Doc/library/zipfile.rst:330 msgid "The *compress_type* argument." -msgstr "" +msgstr "L'argument *compress_type*." #: ../Doc/library/zipfile.rst:333 msgid "The following data attributes are also available:" -msgstr "" +msgstr "Les attributs suivants sont aussi disponibles :" #: ../Doc/library/zipfile.rst:338 msgid "" @@ -380,6 +445,9 @@ msgid "" "no output) to ``3`` (the most output). Debugging information is written to " "``sys.stdout``." msgstr "" +"Le niveau d'affichage de *debug* à utiliser. Peut être défini de ``0`` (par " +"défaut, pas d'affichage) à ``3`` (affichage le plus bavard). Les " +"informations de débogage sont affichées sur ``sys.stdout``." #: ../Doc/library/zipfile.rst:344 msgid "" @@ -391,7 +459,7 @@ msgstr "" #: ../Doc/library/zipfile.rst:352 msgid "PyZipFile Objects" -msgstr "" +msgstr "Objets *PyZipFile*" #: ../Doc/library/zipfile.rst:354 msgid "" @@ -419,7 +487,7 @@ msgstr "" #: ../Doc/library/zipfile.rst:385 msgid "ZipInfo Objects" -msgstr "" +msgstr "Objets *ZipInfo*" #: ../Doc/library/zipfile.rst:387 msgid "" @@ -427,6 +495,9 @@ msgid "" "and :meth:`.infolist` methods of :class:`ZipFile` objects. Each object " "stores information about a single member of the ZIP archive." msgstr "" +"Des instances de la classe :class:`ZipInfo` sont retournées par les " +"méthodes :meth:`.getinfo` et :meth:`.infolist` des objets :class:`ZipFile`. " +"Chaque objet stocke des informations sur un seul membre de l'archive ZIP." #: ../Doc/library/zipfile.rst:391 msgid "Instances have the following attributes:" @@ -434,17 +505,19 @@ msgstr "" #: ../Doc/library/zipfile.rst:396 msgid "Name of the file in the archive." -msgstr "" +msgstr "Nom du fichier dans l'archive." #: ../Doc/library/zipfile.rst:401 msgid "" "The time and date of the last modification to the archive member. This is a " "tuple of six values:" msgstr "" +"Date et heure de dernière modification pour le membre de l'archive. *Tuple* " +"de six valeurs :" #: ../Doc/library/zipfile.rst:405 msgid "Index" -msgstr "" +msgstr "Index" #: ../Doc/library/zipfile.rst:405 msgid "Value" @@ -456,7 +529,7 @@ msgstr "``0``" #: ../Doc/library/zipfile.rst:407 msgid "Year (>= 1980)" -msgstr "" +msgstr "Année (>= 1980)" #: ../Doc/library/zipfile.rst:409 msgid "``1``" @@ -464,7 +537,7 @@ msgstr "``1``" #: ../Doc/library/zipfile.rst:409 msgid "Month (one-based)" -msgstr "" +msgstr "Mois (indexé à partir de 1)" #: ../Doc/library/zipfile.rst:411 msgid "``2``" @@ -472,7 +545,7 @@ msgstr "``2``" #: ../Doc/library/zipfile.rst:411 msgid "Day of month (one-based)" -msgstr "" +msgstr "Jour du mois (indexé à partir de 1)" #: ../Doc/library/zipfile.rst:413 msgid "``3``" @@ -480,7 +553,7 @@ msgstr "``3``" #: ../Doc/library/zipfile.rst:413 msgid "Hours (zero-based)" -msgstr "" +msgstr "Heures (indexées à partir de 0)" #: ../Doc/library/zipfile.rst:415 msgid "``4``" @@ -488,7 +561,7 @@ msgstr "``4``" #: ../Doc/library/zipfile.rst:415 msgid "Minutes (zero-based)" -msgstr "" +msgstr "Minutes (indexées à partir de 0)" #: ../Doc/library/zipfile.rst:417 msgid "``5``" @@ -496,15 +569,15 @@ msgstr "``5``" #: ../Doc/library/zipfile.rst:417 msgid "Seconds (zero-based)" -msgstr "" +msgstr "Secondes (indexées à partir de 0)" #: ../Doc/library/zipfile.rst:422 msgid "The ZIP file format does not support timestamps before 1980." -msgstr "" +msgstr "Le format de fichier ZIP ne gère pas les horodatages avant 1980." #: ../Doc/library/zipfile.rst:427 msgid "Type of compression for the archive member." -msgstr "" +msgstr "Type de compression du membre d'archive." #: ../Doc/library/zipfile.rst:432 msgid "Comment for the individual archive member." @@ -518,48 +591,48 @@ msgstr "" #: ../Doc/library/zipfile.rst:443 msgid "System which created ZIP archive." -msgstr "" +msgstr "Système ayant créé l'archive ZIP." #: ../Doc/library/zipfile.rst:448 msgid "PKZIP version which created ZIP archive." -msgstr "" +msgstr "Version de PKZIP ayant créé l'archive ZIP." #: ../Doc/library/zipfile.rst:453 msgid "PKZIP version needed to extract archive." -msgstr "" +msgstr "Version de PKZIP nécessaire à l'extraction de l'archive ZIP." #: ../Doc/library/zipfile.rst:458 msgid "Must be zero." -msgstr "" +msgstr "Doit être à zéro." #: ../Doc/library/zipfile.rst:463 msgid "ZIP flag bits." -msgstr "" +msgstr "Bits d'options ZIP." #: ../Doc/library/zipfile.rst:468 msgid "Volume number of file header." -msgstr "" +msgstr "Numéro de volume de l'entête du fichier." #: ../Doc/library/zipfile.rst:473 msgid "Internal attributes." -msgstr "" +msgstr "Attributs internes." #: ../Doc/library/zipfile.rst:478 msgid "External file attributes." -msgstr "" +msgstr "Attributs de fichier externes." #: ../Doc/library/zipfile.rst:483 msgid "Byte offset to the file header." -msgstr "" +msgstr "Longueur de l'entête du fichier en octets." #: ../Doc/library/zipfile.rst:488 msgid "CRC-32 of the uncompressed file." -msgstr "" +msgstr "CRC-32 du fichier décompressé." #: ../Doc/library/zipfile.rst:493 msgid "Size of the compressed data." -msgstr "" +msgstr "Taille des données décompressées." #: ../Doc/library/zipfile.rst:498 msgid "Size of the uncompressed file." -msgstr "" +msgstr "Taille du fichier décompressé." diff --git a/library/zipimport.po b/library/zipimport.po index b983bc84..1dcfb52d 100644 --- a/library/zipimport.po +++ b/library/zipimport.po @@ -73,6 +73,8 @@ msgid "" "Documentation on the ZIP file format by Phil Katz, the creator of the format " "and algorithms used." msgstr "" +"Documentation sur le format de fichier ZIP par Phil Katz, créateur du format " +"et des algorithmes utilisés." #: ../Doc/library/zipimport.rst:47 msgid ":pep:`273` - Import Modules from Zip Archives" diff --git a/reference/compound_stmts.po b/reference/compound_stmts.po index f05a8909..00a35a3f 100644 --- a/reference/compound_stmts.po +++ b/reference/compound_stmts.po @@ -543,7 +543,7 @@ msgstr "" #: ../Doc/reference/compound_stmts.rst:484 msgid "is equivalent to::" -msgstr "" +msgstr "est équivalente à ::" #: ../Doc/reference/compound_stmts.rst:493 msgid "" diff --git a/reference/datamodel.po b/reference/datamodel.po index e6b52cf3..902034df 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -764,6 +764,8 @@ msgid "" "A tuple containing default argument values for those arguments that have " "defaults, or ``None`` if no arguments have a default value." msgstr "" +"Tuple contenant les valeurs des arguments par défaut pour ceux qui en sont " +"dotés ou ``None`` si aucun argument n'a de valeur par défaut." #: ../Doc/reference/datamodel.rst:523 msgid ":attr:`__code__` :attr:`func_code`" diff --git a/reference/lexical_analysis.po b/reference/lexical_analysis.po index 0126a2ea..e0067406 100644 --- a/reference/lexical_analysis.po +++ b/reference/lexical_analysis.po @@ -611,7 +611,7 @@ msgstr "Ignoré" #: ../Doc/reference/lexical_analysis.rst:485 msgid "``\\\\``" -msgstr "" +msgstr "``\\\\``" #: ../Doc/reference/lexical_analysis.rst:485 msgid "Backslash (``\\``)" @@ -619,7 +619,7 @@ msgstr "barre oblique inversée (``\\``)" #: ../Doc/reference/lexical_analysis.rst:487 msgid "``\\'``" -msgstr "" +msgstr "``\\'``" #: ../Doc/reference/lexical_analysis.rst:487 msgid "Single quote (``'``)" @@ -627,7 +627,7 @@ msgstr "guillemet simple (``'``)" #: ../Doc/reference/lexical_analysis.rst:489 msgid "``\\\"``" -msgstr "" +msgstr "``\\\"``" #: ../Doc/reference/lexical_analysis.rst:489 msgid "Double quote (``\"``)" @@ -635,7 +635,7 @@ msgstr "guillemet double (``\"``)" #: ../Doc/reference/lexical_analysis.rst:491 msgid "``\\a``" -msgstr "" +msgstr "``\\a``" #: ../Doc/reference/lexical_analysis.rst:491 msgid "ASCII Bell (BEL)" @@ -651,7 +651,7 @@ msgstr "retour arrière ASCII (BS)" #: ../Doc/reference/lexical_analysis.rst:495 msgid "``\\f``" -msgstr "" +msgstr "``\\f``" #: ../Doc/reference/lexical_analysis.rst:495 msgid "ASCII Formfeed (FF)" @@ -683,7 +683,7 @@ msgstr "retour à la ligne ASCII (CR)" #: ../Doc/reference/lexical_analysis.rst:504 msgid "``\\t``" -msgstr "" +msgstr "``\\t``" #: ../Doc/reference/lexical_analysis.rst:504 msgid "ASCII Horizontal Tab (TAB)" @@ -691,7 +691,7 @@ msgstr "tabulation horizontale ASCII (TAB)" #: ../Doc/reference/lexical_analysis.rst:506 msgid "``\\uxxxx``" -msgstr "" +msgstr "``\\uxxxx``" #: ../Doc/reference/lexical_analysis.rst:506 msgid "Character with 16-bit hex value *xxxx* (Unicode only)" @@ -715,7 +715,7 @@ msgstr "\\(2)" #: ../Doc/reference/lexical_analysis.rst:512 msgid "``\\v``" -msgstr "" +msgstr "``\\v``" #: ../Doc/reference/lexical_analysis.rst:512 msgid "ASCII Vertical Tab (VT)" @@ -723,7 +723,7 @@ msgstr "tabulation verticale ASCII (VT)" #: ../Doc/reference/lexical_analysis.rst:514 msgid "``\\ooo``" -msgstr "" +msgstr "``\\ooo``" #: ../Doc/reference/lexical_analysis.rst:514 msgid "Character with octal value *ooo*" @@ -735,7 +735,7 @@ msgstr "" #: ../Doc/reference/lexical_analysis.rst:517 msgid "``\\xhh``" -msgstr "" +msgstr "``\\xhh``" #: ../Doc/reference/lexical_analysis.rst:517 msgid "Character with hex value *hh*" diff --git a/using/cmdline.po b/using/cmdline.po index 61692b91..b4a48952 100644 --- a/using/cmdline.po +++ b/using/cmdline.po @@ -222,7 +222,7 @@ msgstr "" #: ../Doc/using/cmdline.rst:109 msgid ":func:`runpy.run_module`" -msgstr "" +msgstr ":func:`runpy.run_module`" #: ../Doc/using/cmdline.rst:109 ../Doc/using/cmdline.rst:135 msgid "Equivalent functionality directly available to Python code" @@ -262,7 +262,7 @@ msgstr "" #: ../Doc/using/cmdline.rst:134 msgid ":func:`runpy.run_path`" -msgstr "" +msgstr ":func:`runpy.run_path`" #: ../Doc/using/cmdline.rst:140 msgid "" @@ -322,7 +322,7 @@ msgstr "" #: ../Doc/using/cmdline.rst:164 msgid ":ref:`tut-invoking`" -msgstr "" +msgstr ":ref:`tut-invoking`" #: ../Doc/using/cmdline.rst:168 msgid "Generic options" diff --git a/using/mac.po b/using/mac.po index a3e6eb3b..d5bd40cc 100644 --- a/using/mac.po +++ b/using/mac.po @@ -22,7 +22,7 @@ msgstr "Utilisation de Python sur un Macintosh" #: ../Doc/using/mac.rst:8 msgid "Bob Savage " -msgstr "" +msgstr "Bob Savage " #: ../Doc/using/mac.rst:11 msgid "" @@ -82,6 +82,11 @@ msgid "" "shell path. To uninstall MacPython, you can simply remove these three " "things. A symlink to the Python executable is placed in /usr/local/bin/." msgstr "" +"Un **framework** :file:`/Library/Frameworks/Python.framework`, qui inclut " +"l’exécutable Python et ses bibliothèques. L’installateur ajoute ce chemin à " +"votre **PATH**. Pour désinstaller MacPython, vous pouvez simplement " +"supprimer ces trois choses. Un lien symbolique vers l'exécutable Python est " +"placé dans ``/usr/local/bin/``." #: ../Doc/using/mac.rst:46 msgid "" @@ -93,6 +98,14 @@ msgid "" "but functional Python installations on your computer, so it will be " "important that your paths and usages are consistent with what you want to do." msgstr "" +"Le **build** Python fourni par Apple est installé dans :file:`/System/" +"Library/Frameworks/Python.framework` et :file:`/usr/bin/python`. Vous ne " +"devriez jamais les modifier ou supprimer, car ils sont contrôlés et utilisés " +"par Apple (ou d'autres logiciels). Rappelez vous que si vous choisissez " +"d'installer un Python plus récent depuis python.org, vous aurez deux " +"installations de Python différentes et fonctionnelles sur votre ordinateur, " +"il est donc important que vos chemins et utilisations soit cohérentes avec " +"ce que vous voulez faire." #: ../Doc/using/mac.rst:54 msgid "" @@ -100,16 +113,22 @@ msgid "" "you are completely new to Python you should start reading the tutorial " "introduction in that document." msgstr "" +"**IDLE** inclut un menu d'aide qui vous permet d’accéder à la documentation " +"Python. Si vous êtes entièrement novice, vous devriez commencer par lire le " +"tutoriel d'introduction dans ce document." #: ../Doc/using/mac.rst:58 msgid "" "If you are familiar with Python on other Unix platforms you should read the " "section on running Python scripts from the Unix shell." msgstr "" +"Si vous êtes familier avec Python sur d'autres plateformes Unix, vous " +"devriez lire la section sur comment exécuter des scripts Python depuis un " +"shell Unix." #: ../Doc/using/mac.rst:63 msgid "How to run a Python script" -msgstr "" +msgstr "Comment exécuter un script Python" #: ../Doc/using/mac.rst:65 msgid "" @@ -117,6 +136,9 @@ msgid "" "integrated development environment, see section :ref:`ide` and use the Help " "menu when the IDE is running." msgstr "" +"Le meilleur moyen de démarrer avec Python sur Max OS X est d'utiliser " +"l'environnement de développement intégré **IDLE**, voir la section :ref:" +"`ide` et utilisez le menu d'aide (**Help**) quand l'``IDE`` est lancé." #: ../Doc/using/mac.rst:69 msgid "" @@ -136,14 +158,17 @@ msgid "" "To run your script from the Terminal window you must make sure that :file:`/" "usr/local/bin` is in your shell search path." msgstr "" +"Pour exécuter votre script depuis la fenêtre Terminal, vous devez vous " +"assurer que :file:`/usr/local/bin` est dans le chemin de recherche de votre " +"shell (**PATH**)." #: ../Doc/using/mac.rst:82 msgid "To run your script from the Finder you have two options:" -msgstr "" +msgstr "Pour exécuter votre script depuis le Finder vous avez deux options :" #: ../Doc/using/mac.rst:84 msgid "Drag it to :program:`PythonLauncher`" -msgstr "" +msgstr "Glissez-le vers :program:`PythonLauncher`" #: ../Doc/using/mac.rst:86 msgid "" @@ -153,10 +178,17 @@ msgid "" "script is launched. Option-dragging allows you to change these for one " "invocation, or use its Preferences menu to change things globally." msgstr "" +"Sélectionnez :program:`PythonLauncher` en tant qu'application par défaut " +"pour ouvrir votre script (ou n'importe quel script ``.py``) depuis la " +"fenêtre **info** de votre Finder puis double-cliquez votre script. :program:" +"`PythonLauncher` a des préférences variées pour contrôler comment votre " +"script est exécuté. Glisser des options permets de les changer pour une " +"invocation, ou utilisez le menu Préférences pour changer les choses " +"globalement." #: ../Doc/using/mac.rst:96 msgid "Running scripts with a GUI" -msgstr "" +msgstr "Lancer des scripts avec une interface graphique" #: ../Doc/using/mac.rst:98 msgid "" @@ -165,6 +197,12 @@ msgid "" "anything that has a GUI) need to be run in a special way. Use :program:" "`pythonw` instead of :program:`python` to start such scripts." msgstr "" +"Avec les anciennes versions de Python, il y a une bizarrerie Max OS X dont " +"vous devez être au courant : les programmes qui communiquent avec le " +"gestionnaires de fenêtre **Aqua** (en d'autres termes, tout ce qui a une " +"interface graphique) doivent être exécutés de façon spécifique. Utilisez :" +"program:`pythonw` au lieu de :program:`python` pour exécuter ce genre de " +"scripts." #: ../Doc/using/mac.rst:103 msgid "" @@ -173,7 +211,7 @@ msgstr "" #: ../Doc/using/mac.rst:107 msgid "Configuration" -msgstr "" +msgstr "Configuration" #: ../Doc/using/mac.rst:109 msgid "" @@ -183,16 +221,24 @@ msgid "" "or :file:`.cshrc` at startup. You need to create a file :file:`~/.MacOSX/" "environment.plist`. See Apple's Technical Document QA1067 for details." msgstr "" +"Python sur OS X respecte tous les standards Unix pour les variables " +"d'environnement comme :envvar:`PYTHONPATH`, mais définir ces variables pour " +"des programmes exécutés depuis le Finder n'est pas standard car le Finder ne " +"lit pas votre :file:`.profile` ou :file:`.cshrc` au démarrage. Vous devez " +"créer un fichier :file:`~/.MacOSX/environment.plist`. Voir le document " +"technique d'Apple QA1067 pour plus de détails." #: ../Doc/using/mac.rst:116 msgid "" "For more information on installation Python packages in MacPython, see " "section :ref:`mac-package-manager`." msgstr "" +"Pour plus d'informations sur l'installation de paquets Python dans " +"**MacPython**, voir la section :ref:`mac-package-manager`." #: ../Doc/using/mac.rst:123 msgid "The IDE" -msgstr "" +msgstr "L'*IDE*" #: ../Doc/using/mac.rst:125 msgid "" @@ -203,33 +249,40 @@ msgstr "" #: ../Doc/using/mac.rst:133 msgid "Installing Additional Python Packages" -msgstr "" +msgstr "Installation de paquets Python additionnels" #: ../Doc/using/mac.rst:135 msgid "There are several methods to install additional Python packages:" msgstr "" +"Il y a plusieurs méthodes pour installer des paquets Python supplémentaires :" #: ../Doc/using/mac.rst:137 msgid "" "Packages can be installed via the standard Python distutils mode (``python " "setup.py install``)." msgstr "" +"Les paquets peuvent être installés en utilisant **distutils** (``python " +"setup.py install``)." #: ../Doc/using/mac.rst:140 msgid "" "Many packages can also be installed via the :program:`setuptools` extension " "or :program:`pip` wrapper, see https://pip.pypa.io/." msgstr "" +"Beaucoup de paquets peuvent aussi être installés via l'extension :program:" +"`setuptools` ou :program:`pip`, voir https://pip.pypa.io/." #: ../Doc/using/mac.rst:145 msgid "GUI Programming on the Mac" -msgstr "" +msgstr "Programmation d'interface graphique sur le Mac" #: ../Doc/using/mac.rst:147 msgid "" "There are several options for building GUI applications on the Mac with " "Python." msgstr "" +"Il y a plusieurs options pour construire des applications avec interface " +"graphique sur le Mac avec Python." #: ../Doc/using/mac.rst:149 msgid "" @@ -237,6 +290,10 @@ msgid "" "is the foundation of most modern Mac development. Information on PyObjC is " "available from https://pythonhosted.org/pyobjc/." msgstr "" +"*PyObjC* est un **binding** Python vers le **framework** Objective-C/Cocoa " +"d'Apple, qui est la base de la plupart des développements modernes sur Mac. " +"Des informations sur PyObjC sont disponible à https://pythonhosted.org/" +"pyobjc/." #: ../Doc/using/mac.rst:153 msgid "" @@ -259,10 +316,13 @@ msgid "" "Mac OS X. More information can be found at https://riverbankcomputing.com/" "software/pyqt/intro." msgstr "" +"*PyQt* est une boîte à outils multi-plateformes pour interfaces graphique " +"populaire qui tourne nativement sur Mac OS X. Plus d'informations disponible " +"sur https://riverbankcomputing.com/software/pyqt/intro." #: ../Doc/using/mac.rst:167 msgid "Distributing Python Applications on the Mac" -msgstr "" +msgstr "Distribuer des Applications Python sur le Mac" #: ../Doc/using/mac.rst:169 msgid "" @@ -278,6 +338,9 @@ msgid "" "is :program:`py2app`. More information on installing and using py2app can be " "found at http://undefined.org/python/#py2app." msgstr "" +"L'outil standard pour déployer des applications Python sur le Mac est :" +"program:`py2app`. Plus d'information sur l'installation et l'utilisation de " +"**py2app** sur http://undefined.org/python/#py2app." #: ../Doc/using/mac.rst:180 msgid "Other Resources" @@ -288,15 +351,17 @@ msgid "" "The MacPython mailing list is an excellent support resource for Python users " "and developers on the Mac:" msgstr "" +"La liste de diffusion courriel **MacPython** est une excellente ressource " +"support pour les utilisateurs et développeurs Python sur Mac :" #: ../Doc/using/mac.rst:185 msgid "https://www.python.org/community/sigs/current/pythonmac-sig/" -msgstr "" +msgstr "https://www.python.org/community/sigs/current/pythonmac-sig/" #: ../Doc/using/mac.rst:187 msgid "Another useful resource is the MacPython wiki:" -msgstr "" +msgstr "Une autre ressource utile est le wiki **MacPython** :" #: ../Doc/using/mac.rst:189 msgid "https://wiki.python.org/moin/MacPython" -msgstr "" +msgstr "https://wiki.python.org/moin/MacPython" diff --git a/using/unix.po b/using/unix.po index 6517cf13..c29f8b05 100644 --- a/using/unix.po +++ b/using/unix.po @@ -18,15 +18,15 @@ msgstr "" #: ../Doc/using/unix.rst:7 msgid "Using Python on Unix platforms" -msgstr "" +msgstr "Utilisation de Python sur les plateformes Unix" #: ../Doc/using/unix.rst:13 msgid "Getting and installing the latest version of Python" -msgstr "" +msgstr "Récupérer et installer la dernière version de Python" #: ../Doc/using/unix.rst:16 msgid "On Linux" -msgstr "" +msgstr "Sur Linux" #: ../Doc/using/unix.rst:18 msgid "" @@ -35,6 +35,11 @@ msgid "" "use that are not available on your distro's package. You can easily compile " "the latest version of Python from source." msgstr "" +"Python est pré-installé sur la plupart des distributions Linux, et est " +"disponible en paquet sur toutes les autres. Cependant, il y a certaines " +"fonctionnalités que vous voudrez utiliser qui ne seront pas disponibles sur " +"le paquet de votre distribution. Vous pouvez facilement compiler la dernière " +"version de Python depuis les sources." #: ../Doc/using/unix.rst:23 msgid "" @@ -42,22 +47,25 @@ msgid "" "repositories as well, you can easily make packages for your own distro. " "Have a look at the following links:" msgstr "" +"Dans le cas où Python n'est pas pré-installé et n'est pas dans les dépôts " +"non plus, vous pouvez facilement faire les paquets pour votre propre " +"distribution. Jetez un œil à ces liens :" #: ../Doc/using/unix.rst:29 msgid "https://www.debian.org/doc/manuals/maint-guide/first.en.html" -msgstr "" +msgstr "https://www.debian.org/doc/manuals/maint-guide/first.fr.html" #: ../Doc/using/unix.rst:30 msgid "for Debian users" -msgstr "" +msgstr "pour les utilisateurs de Debian" #: ../Doc/using/unix.rst:31 msgid "https://en.opensuse.org/Portal:Packaging" -msgstr "" +msgstr "https://en.opensuse.org/Portal:Packaging" #: ../Doc/using/unix.rst:32 msgid "for OpenSuse users" -msgstr "" +msgstr "pour les utilisateurs d'OpenSuse" #: ../Doc/using/unix.rst:33 msgid "" @@ -67,23 +75,23 @@ msgstr "" #: ../Doc/using/unix.rst:34 msgid "for Fedora users" -msgstr "" +msgstr "pour les utilisateurs de Fedora" #: ../Doc/using/unix.rst:35 msgid "http://www.slackbook.org/html/package-management-making-packages.html" -msgstr "" +msgstr "http://www.slackbook.org/html/package-management-making-packages.html" #: ../Doc/using/unix.rst:36 msgid "for Slackware users" -msgstr "" +msgstr "pour les utilisateurs de Slackware" #: ../Doc/using/unix.rst:40 msgid "On FreeBSD and OpenBSD" -msgstr "" +msgstr "Sur FreeBSD et OpenBSD" #: ../Doc/using/unix.rst:42 msgid "FreeBSD users, to add the package use::" -msgstr "" +msgstr "Utilisateurs de FreeBSD, pour installer le paquet, utilisez ::" #: ../Doc/using/unix.rst:46 msgid "OpenBSD users use::" @@ -92,10 +100,12 @@ msgstr "" #: ../Doc/using/unix.rst:50 msgid "For example i386 users get the 2.5.1 version of Python using::" msgstr "" +"Par exemple les utilisateurs d'``i386`` récupèrent la version 2.5.1 de " +"Python en faisant ::" #: ../Doc/using/unix.rst:56 msgid "On OpenSolaris" -msgstr "" +msgstr "Sur OpenSolaris" #: ../Doc/using/unix.rst:58 msgid "" @@ -103,10 +113,13 @@ msgid "" "versions of Python are available and can be installed with e.g. ``pkgutil -i " "python27``." msgstr "" +"Vous pouvez récupérer Python depuis `OpenCSW `_. " +"Différentes versions de Python sont disponibles et peuvent être installées. " +"Exemple : ``pkgutil -i python27``." #: ../Doc/using/unix.rst:65 msgid "Building Python" -msgstr "" +msgstr "Compiler Python" #: ../Doc/using/unix.rst:67 msgid "" @@ -119,7 +132,7 @@ msgstr "" #: ../Doc/using/unix.rst:73 msgid "The build process consists in the usual ::" -msgstr "" +msgstr "Le processus de compilation est le suivant ::" #: ../Doc/using/unix.rst:79 msgid "" @@ -137,7 +150,7 @@ msgstr "" #: ../Doc/using/unix.rst:91 msgid "Python-related paths and files" -msgstr "" +msgstr "Fichiers et chemins liés à Python" #: ../Doc/using/unix.rst:93 msgid "" @@ -146,15 +159,21 @@ msgid "" "${exec_prefix}``) are installation-dependent and should be interpreted as " "for GNU software; they may be the same." msgstr "" +"Ceux-ci sont sujets à des différences en fonction des conventions locales " +"d'installation ; :envvar:`prefix` (``${prefix}``) et :envvar:`exec_prefix` " +"(``${exec_prefix}``) sont dépendants de l’installation et doivent être " +"interprétés comme pour des logiciels GNU ; ils peuvent être égaux." #: ../Doc/using/unix.rst:98 msgid "" "For example, on most Linux systems, the default for both is :file:`/usr`." msgstr "" +"Par exemple, sur la plupart des systèmes Linux, leur valeur par défaut est :" +"file:`/usr`." #: ../Doc/using/unix.rst:101 msgid "File/directory" -msgstr "" +msgstr "Fichier/dossier" #: ../Doc/using/unix.rst:101 msgid "Meaning" @@ -166,30 +185,36 @@ msgstr "" #: ../Doc/using/unix.rst:103 msgid "Recommended location of the interpreter." -msgstr "" +msgstr "Emplacement recommandé de l'interpréteur." #: ../Doc/using/unix.rst:105 msgid "" ":file:`{prefix}/lib/python{version}`, :file:`{exec_prefix}/lib/" "python{version}`" msgstr "" +":file:`{prefix}/lib/python{version}`, :file:`{exec_prefix}/lib/" +"python{version}`" #: ../Doc/using/unix.rst:105 msgid "" "Recommended locations of the directories containing the standard modules." -msgstr "" +msgstr "Emplacements recommandés des dossiers contenant les modules standards." #: ../Doc/using/unix.rst:108 msgid "" ":file:`{prefix}/include/python{version}`, :file:`{exec_prefix}/include/" "python{version}`" msgstr "" +":file:`{prefix}/include/python{version}`, :file:`{exec_prefix}/include/" +"python{version}`" #: ../Doc/using/unix.rst:108 msgid "" "Recommended locations of the directories containing the include files needed " "for developing Python extensions and embedding the interpreter." msgstr "" +"Emplacements recommandés des dossiers contenant les entêtes nécessaires au " +"développement d'extensions Python et à l'intégration de l'interpréteur." #: ../Doc/using/unix.rst:113 msgid ":file:`~/.pythonrc.py`" @@ -203,7 +228,7 @@ msgstr "" #: ../Doc/using/unix.rst:120 msgid "Miscellaneous" -msgstr "" +msgstr "Divers" #: ../Doc/using/unix.rst:122 msgid "" @@ -216,6 +241,8 @@ msgid "" "and put an appropriate Shebang line at the top of the script. A good choice " "is usually ::" msgstr "" +"et mettre un *shebang* approprié en haut du script. Un bon choix est " +"généralement ::" #: ../Doc/using/unix.rst:132 msgid "" @@ -229,6 +256,8 @@ msgid "" "To use shell commands in your Python scripts, look at the :mod:`subprocess` " "module." msgstr "" +"Pour utiliser des commandes *shell* dans vos scripts Python, regardez le " +"module :mod:`subprocess`." #: ../Doc/using/unix.rst:140 msgid "Editors" diff --git a/using/windows.po b/using/windows.po index d311d944..441a71e4 100644 --- a/using/windows.po +++ b/using/windows.po @@ -25,6 +25,9 @@ msgid "" "This document aims to give an overview of Windows-specific behaviour you " "should know about when using Python on Microsoft Windows." msgstr "" +"Ce document a pour but de donner une vue d'ensemble des comportements " +"spécifiques à Windows dont vous devriez être au courant si vous utilisez " +"Python sur Microsoft Windows." #: ../Doc/using/windows.rst:16 msgid "Installing Python" @@ -44,6 +47,10 @@ msgid "" "earlier are no longer supported (due to the lack of users or developers). " "Check :pep:`11` for details on all unsupported platforms." msgstr "" +"Avec le développement continu de Python, certaines plateformes qui étaient " +"auparavant prises en charge ne sont plus prises en charge (en raison du " +"manque d'utilisateurs ou de développeurs). Voir :pep:`11` pour plus de " +"détails sur toutes les plateformes non prises en charge." #: ../Doc/using/windows.rst:27 msgid "" @@ -62,6 +69,7 @@ msgstr "" #: ../Doc/using/windows.rst:33 msgid "`Windows CE `_ is still supported." msgstr "" +"`Windows CE `_ est toujours pris en charge." #: ../Doc/using/windows.rst:34 msgid "" @@ -70,6 +78,10 @@ msgid "" "pub/pc/gnuwin32/cygwin/mirrors/cygnus/ release/python>`_, `Maintainer " "releases `_)" msgstr "" +"L’installateur `Cygwin `_ offre d’installer " +"l’interpréteur Python (cf. `Cygwin package source `_, `Maintainer " +"releases `_)" #: ../Doc/using/windows.rst:40 msgid "" @@ -113,7 +125,7 @@ msgstr "" #: ../Doc/using/windows.rst:62 msgid "Alternative bundles" -msgstr "" +msgstr "Paquets alternatifs" #: ../Doc/using/windows.rst:64 msgid "" @@ -121,14 +133,19 @@ msgid "" "including additional functionality. The following is a list of popular " "versions and their key features:" msgstr "" +"À part la distribution standard CPython, il y a des paquets modifiés " +"incluant des fonctionnalités additionnelles. La liste qui suit est une liste " +"de versions populaires et de leurs fonctionnalités principales :" #: ../Doc/using/windows.rst:69 msgid "`ActivePython `_" -msgstr "" +msgstr "`ActivePython `_" #: ../Doc/using/windows.rst:69 msgid "Installer with multi-platform compatibility, documentation, PyWin32" msgstr "" +"Installeur avec une compatibilité multi-plateforme, de la documentation, et " +"*PyWin32*" #: ../Doc/using/windows.rst:73 msgid "" @@ -148,7 +165,7 @@ msgstr "" #: ../Doc/using/windows.rst:80 msgid "Configuring Python" -msgstr "" +msgstr "Configurer Python" #: ../Doc/using/windows.rst:82 msgid "" @@ -158,7 +175,7 @@ msgstr "" #: ../Doc/using/windows.rst:89 msgid "Excursus: Setting environment variables" -msgstr "" +msgstr "Digression : Définition des variables d'environnement" #: ../Doc/using/windows.rst:91 msgid "" @@ -215,7 +232,7 @@ msgstr "" #: ../Doc/using/windows.rst:127 msgid "Environment variables in Windows NT" -msgstr "" +msgstr "Variables d'environnement dans Windows NT" #: ../Doc/using/windows.rst:130 msgid "https://support.microsoft.com/kb/310519" @@ -227,7 +244,7 @@ msgstr "Comment gérer les variables d'environnement sous Windows XP" #: ../Doc/using/windows.rst:132 msgid "https://www.chem.gla.ac.uk/~louis/software/faq/q1.html" -msgstr "" +msgstr "https://www.chem.gla.ac.uk/~louis/software/faq/q1.html" #: ../Doc/using/windows.rst:133 msgid "Setting Environment variables, Louis J. Farrugia" @@ -256,7 +273,7 @@ msgstr "" #: ../Doc/using/windows.rst:154 msgid "Finding modules" -msgstr "" +msgstr "Recherche de modules" #: ../Doc/using/windows.rst:156 msgid "" @@ -266,6 +283,11 @@ msgid "" "\\\\` and third-party modules should be stored in :file:`C:\\\\Python\\\\Lib" "\\\\site-packages\\\\`." msgstr "" +"Python stocke généralement sa bibliothèque (et donc votre dossier ``site-" +"packages``) dans le répertoire d'installation. Donc, si vous aviez installé " +"Python dans :file:`C:\\\\Python\\\\`, la bibliothèque par défaut résiderait " +"dans :file:`C:\\\\Python\\\\Lib\\\\` et les modules tiers devraient être " +"stockés dans :file:`C:\\\\Python\\\\Lib\\\\site-packages\\\\`." #: ../Doc/using/windows.rst:162 msgid "This is how :data:`sys.path` is populated on Windows:" @@ -276,6 +298,7 @@ msgid "" "An empty entry is added at the start, which corresponds to the current " "directory." msgstr "" +"Une entrée vide est ajoutée au début, qui correspond au répertoire courant." #: ../Doc/using/windows.rst:167 msgid "" @@ -284,6 +307,11 @@ msgid "" "paths in this variable must be separated by semicolons, to distinguish them " "from the colon used in drive identifiers (``C:\\`` etc.)." msgstr "" +"Si la variable d'environnement :envvar:`PYTHONPATH` existe, comme décrit " +"dans :ref:`using-on-envvars`, ses entrées sont ajoutées ensuite. Notez que " +"sur Windows, les chemins d'accès de cette variable doivent être séparés par " +"des points-virgules, pour les distinguer des deux points utilisés dans les " +"identificateurs de lecteur (``C:\\`` etc.)." #: ../Doc/using/windows.rst:172 msgid "" @@ -294,6 +322,14 @@ msgid "" "cause each path to be added to :data:`sys.path`. (Note that all known " "installers only use HKLM, so HKCU is typically empty.)" msgstr "" +"Des \"chemins d'accès d'application\" supplémentaires peuvent être ajoutés " +"dans le registre en tant que sous-clés de :samp:`\\\\SOFTWARE\\\\Python\\" +"\\PythonCore\\\\{version}\\\\PythonPath` sous les ruches " +"``HKEY_CURRENT_USER`` et ``HKEY_LOCAL_MACHINE``. Les sous-clés qui ont des " +"chaînes de chemin délimitées par des points-virgules comme valeur par défaut " +"entraînent l'ajout de chaque chemin d'accès à :data:`sys.path`. (Notez que " +"tous les installateurs connus utilisent seulement HKLM, donc HKCU est " +"généralement vide.)" #: ../Doc/using/windows.rst:179 msgid "" @@ -312,10 +348,14 @@ msgid "" "in the environment, and no registry entries can be found, a default path " "with relative entries is used (e.g. ``.\\Lib;.\\plat-win``, etc)." msgstr "" +"Si le \"Python Home\" ne peut pas être trouvé, :envvar:`PYTHONPATH` n'est " +"pas spécifié dans l'environnement et aucune entrée de registre ne peut être " +"trouvée, un chemin par défaut avec des entrées relatives est utilisé (par " +"exemple ``.\\Lib`` ; ``.\\plat-win``, etc.)." #: ../Doc/using/windows.rst:190 msgid "The end result of all this is:" -msgstr "" +msgstr "Le résultat final de tout ceci est :" #: ../Doc/using/windows.rst:192 msgid "" @@ -324,6 +364,11 @@ msgid "" "directory), the core path is deduced, and the core paths in the registry are " "ignored. Other \"application paths\" in the registry are always read." msgstr "" +"Lors de l'exécution de :file:`python.exe`, ou tout autre ``.exe`` dans le " +"répertoire principal de Python (soit une version installée, soit directement " +"à partir du répertoire PCbuild), le chemin principal est déduit et les " +"chemins d'accès principaux dans le Registre sont ignorés. D'autres \"chemins " +"d'application\" dans le registre sont toujours lus." #: ../Doc/using/windows.rst:197 msgid "" @@ -332,6 +377,10 @@ msgid "" "the registry is used. Other \"application paths\" in the registry are " "always read." msgstr "" +"Lorsque Python est hébergé dans un autre fichier ``.exe`` (répertoire " +"différent, intégré via COM, etc.), le \"Python Home\" ne sera pas déduit, de " +"sorte que le chemin d'accès principal du registre est utilisé. D'autres " +"\"chemins d'application\" dans le registre sont toujours lus." #: ../Doc/using/windows.rst:201 msgid "" @@ -376,7 +425,7 @@ msgstr "" #: ../Doc/using/windows.rst:232 msgid "Additional modules" -msgstr "" +msgstr "Modules supplémentaires" #: ../Doc/using/windows.rst:234 msgid "" @@ -384,12 +433,18 @@ msgid "" "features that are unique to Windows. A couple of modules, both in the " "standard library and external, and snippets exist to use these features." msgstr "" +"Même si Python a l'ambition d'être portable parmi toutes les plates-formes, " +"il existe des fonctionnalités propres à Windows. Certains modules, à la fois " +"dans la bibliothèque standard et externe, et des exemples existent pour " +"utiliser ces fonctionnalités." #: ../Doc/using/windows.rst:238 msgid "" "The Windows-specific standard modules are documented in :ref:`mswin-specific-" "services`." msgstr "" +"Les modules standard de Windows sont documentés dans :ref:`mswin-specific-" +"services`." #: ../Doc/using/windows.rst:243 msgid "PyWin32" @@ -443,6 +498,7 @@ msgstr "" msgid "" "`Win32 How Do I...? `_" msgstr "" +"`Win32 How Do I...? `_" #: ../Doc/using/windows.rst:263 msgid "by Tim Golden" @@ -450,7 +506,7 @@ msgstr "par Tim Golden" #: ../Doc/using/windows.rst:265 msgid "`Python and COM `_" -msgstr "" +msgstr "`Python and COM `_" #: ../Doc/using/windows.rst:266 msgid "by David and Paul Boddie" @@ -478,12 +534,18 @@ msgid "" "restricted to Unix-like systems, there is a library exclusive to Windows as " "well: Windows Console I/O for Python." msgstr "" +"Depuis la couche avancée de gestion de terminal de Python, :mod:`curses`, " +"est limité aux systèmes de type UNIX, il existe une bibliothèque exclusive à " +"Windows : *Windows Console I/O for Python*." #: ../Doc/using/windows.rst:285 msgid "" "`WConio `_ is a wrapper " "for Turbo-C's :file:`CONIO.H`, used to create text user interfaces." msgstr "" +"`WConio `_ est un " +"*wrapper* pour les fichiers Turbo-C :file:`CONIO.H`, utilisé pour créer des " +"interfaces texte utilisateur." #: ../Doc/using/windows.rst:291 msgid "Compiling Python on Windows" @@ -580,13 +642,15 @@ msgstr "" #: ../Doc/using/windows.rst:321 msgid "For extension modules, consult :ref:`building-on-windows`." -msgstr "" +msgstr "Pour les modules d'extension, consultez :ref:`building-on-windows`." #: ../Doc/using/windows.rst:328 msgid "" "`Python + Windows + distutils + SWIG + gcc MinGW `_" msgstr "" +"`Python + Windows + distutils + SWIG + gcc MinGW `_" #: ../Doc/using/windows.rst:326 msgid "" @@ -594,12 +658,17 @@ msgid "" "MinGW gcc under Windows\" or \"Installing Python extension with distutils " "and without Microsoft Visual C++\" by Sébastien Sauvage, 2003" msgstr "" +"ou \"*Creating Python extensions in C/C++ with SWIG and compiling them with " +"MinGW gcc under Windows*\" ou \"*Installing Python extension with distutils " +"and without Microsoft Visual C++*\" par Sébastien Sauvage, 2003" #: ../Doc/using/windows.rst:330 msgid "" "`MingW -- Python extensions `_" msgstr "" +"`MingW -- Python extensions `_" #: ../Doc/using/windows.rst:331 msgid "by Trent Apted et al, 2007" diff --git a/whatsnew/2.5.po b/whatsnew/2.5.po index bfdebb84..b51da54f 100644 --- a/whatsnew/2.5.po +++ b/whatsnew/2.5.po @@ -2305,6 +2305,13 @@ msgid "" "application using SQLite and then port the code to a larger database such as " "PostgreSQL or Oracle." msgstr "" +"SQLite est une bibliothèque C qui fournit une base de données légère sur " +"disque ne nécessitant pas de processus serveur et qui utilise une variante " +"(non standard) du langage de requête SQL pour accéder aux données. Certaines " +"applications peuvent utiliser SQLite pour le stockage de données internes. " +"Il est également possible de créer une application prototype utilisant " +"SQLite, puis de modifier le code pour utiliser une base de données plus " +"robuste telle que PostgreSQL ou Oracle." #: ../Doc/whatsnew/2.5.rst:1943 msgid "" @@ -2333,6 +2340,8 @@ msgid "" "You can also supply the special name ``:memory:`` to create a database in " "RAM." msgstr "" +"Vous pouvez également fournir le nom spécial ``:memory:`` pour créer une " +"base de données dans la mémoire vive." #: ../Doc/whatsnew/2.5.rst:1959 msgid "" @@ -2367,7 +2376,7 @@ msgstr "" #: ../Doc/whatsnew/2.5.rst:2002 msgid "This example uses the iterator form::" -msgstr "" +msgstr "Cet exemple utilise la forme itérateur ::" #: ../Doc/whatsnew/2.5.rst:2015 msgid "" @@ -2385,13 +2394,15 @@ msgstr "" #: ../Doc/whatsnew/2.5.rst:2026 msgid "https://www.sqlite.org" -msgstr "" +msgstr "https://www.sqlite.org" #: ../Doc/whatsnew/2.5.rst:2025 msgid "" "The SQLite web page; the documentation describes the syntax and the " "available data types for the supported SQL dialect." msgstr "" +"Dans la page Web de SQLite, la documentation décrit la syntaxe et les types " +"de données disponibles qui sont pris en charge par cette variante SQL." #: ../Doc/whatsnew/2.5.rst:2028 msgid "The documentation for the :mod:`sqlite3` module." @@ -2399,11 +2410,11 @@ msgstr "" #: ../Doc/whatsnew/2.5.rst:2030 msgid ":pep:`249` - Database API Specification 2.0" -msgstr "" +msgstr ":pep:`249` — Spécifications de l'API 2.0 pour la base de données" #: ../Doc/whatsnew/2.5.rst:2031 msgid "PEP written by Marc-André Lemburg." -msgstr "" +msgstr "PEP écrite par Marc-André Lemburg." #: ../Doc/whatsnew/2.5.rst:2039 msgid "The wsgiref package" diff --git a/whatsnew/2.6.po b/whatsnew/2.6.po index 74a2ed69..8d0c9538 100644 --- a/whatsnew/2.6.po +++ b/whatsnew/2.6.po @@ -1482,7 +1482,7 @@ msgstr "C’est équivalent à ::" #: ../Doc/whatsnew/2.6.rst:1378 msgid ":pep:`3129` - Class Decorators" -msgstr "" +msgstr ":pep:`3129` -- Décorateurs de classes" #: ../Doc/whatsnew/2.6.rst:1379 msgid "PEP written by Collin Winter." diff --git a/whatsnew/2.7.po b/whatsnew/2.7.po index fb145abe..c6c4ddbf 100644 --- a/whatsnew/2.7.po +++ b/whatsnew/2.7.po @@ -705,7 +705,7 @@ msgstr "" #: ../Doc/whatsnew/2.7.rst:702 msgid "is equivalent to::" -msgstr "" +msgstr "est équivalente à ::" #: ../Doc/whatsnew/2.7.rst:708 msgid ""