Backporting from 3.9.

This commit is contained in:
Julien Palard 2020-10-06 22:27:14 +02:00
parent ccc4fd13dd
commit 1ce828fa6c
45 changed files with 3860 additions and 590 deletions

View File

@ -88,6 +88,10 @@ msgid ""
"this object. You won't have to release any memory yourself. The only " "this object. You won't have to release any memory yourself. The only "
"exceptions are ``es``, ``es#``, ``et`` and ``et#``." "exceptions are ``es``, ``es#``, ``et`` and ``et#``."
msgstr "" msgstr ""
"En général, lorsqu'un format définit un pointeur vers un tampon, le tampon "
"est géré par l'objet Python correspondant et le tampon partage la durée de "
"vie de cet objet. vous n'avez pas à libérer de mémoire. Les seules "
"exceptions sont ``es``, ``es#``, ``et`` et ``et#``."
#: ../Doc/c-api/arg.rst:42 #: ../Doc/c-api/arg.rst:42
msgid "" msgid ""
@ -150,6 +154,13 @@ msgid ""
"is raised. Unicode objects are converted to C strings using ``'utf-8'`` " "is raised. Unicode objects are converted to C strings using ``'utf-8'`` "
"encoding. If this conversion fails, a :exc:`UnicodeError` is raised." "encoding. If this conversion fails, a :exc:`UnicodeError` is raised."
msgstr "" msgstr ""
"Convertit un objet Unicode en un pointeur vers une chaîne de caractères. "
"S'il s'agit d'un pointeur vers une chaîne de caractères déjà existante, il "
"est stocké dans la variable de type pointeur vers un caractère dont vous "
"avez donné l'adresse. Une chaîne de caractères en C se termine par *NULL*. "
"La chaîne de caractères Python ne doit donc pas contenir de caractère dont "
"le code est *null*. Si elle en contient, une exception :exc:`ValueError` est "
"levée. Si la conversion échoue, une :exc:`UnicodeError` est levée."
#: ../Doc/c-api/arg.rst:77 #: ../Doc/c-api/arg.rst:77
msgid "" msgid ""
@ -158,12 +169,19 @@ msgid ""
"strings, it is preferable to use the ``O&`` format with :c:func:" "strings, it is preferable to use the ``O&`` format with :c:func:"
"`PyUnicode_FSConverter` as *converter*." "`PyUnicode_FSConverter` as *converter*."
msgstr "" msgstr ""
"Ce format n'accepte pas les :term:`objets compatibles avec une chaîne "
"d'octets <bytes-like object>`. Si vous voulez accepter les chemins du "
"système de fichiers et les convertir vers des chaînes de caractères C, il "
"est préférable d'utiliser le format ``O&`` avec :c:func:"
"`PyUnicode_FSConverter` en tant que *converter*."
#: ../Doc/c-api/arg.rst:83 ../Doc/c-api/arg.rst:150 #: ../Doc/c-api/arg.rst:83 ../Doc/c-api/arg.rst:150
msgid "" msgid ""
"Previously, :exc:`TypeError` was raised when embedded null code points were " "Previously, :exc:`TypeError` was raised when embedded null code points were "
"encountered in the Python string." "encountered in the Python string."
msgstr "" msgstr ""
"Auparavant, une :exc:`TypeError` était levée quand la chaîne de caractères "
"Python contenait des codes NULL."
#: ../Doc/c-api/arg.rst:91 #: ../Doc/c-api/arg.rst:91
msgid "``s*`` (:class:`str` or :term:`bytes-like object`) [Py_buffer]" msgid "``s*`` (:class:`str` or :term:`bytes-like object`) [Py_buffer]"
@ -176,12 +194,19 @@ msgid ""
"resulting C string may contain embedded NUL bytes. Unicode objects are " "resulting C string may contain embedded NUL bytes. Unicode objects are "
"converted to C strings using ``'utf-8'`` encoding." "converted to C strings using ``'utf-8'`` encoding."
msgstr "" msgstr ""
"Ce format accepte les objets Unicode et les *bytes-like object*. Cela "
"remplit une structure :c:type:`Py_buffer` qui est fournie par l'appelant. "
"Dans ce cas, la chaîne de caractères C qui en résulte peut contenir des "
"octets NULL. Les objets Unicode sont convertis en chaînes de caractères C en "
"utilisant l'encodage ``'utf-8'``."
#: ../Doc/c-api/arg.rst:98 #: ../Doc/c-api/arg.rst:98
msgid "" msgid ""
"``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char \\*, " "``s#`` (:class:`str`, read-only :term:`bytes-like object`) [const char \\*, "
"int or :c:type:`Py_ssize_t`]" "int or :c:type:`Py_ssize_t`]"
msgstr "" msgstr ""
"``s#`` (:class:`str`, :term:`bytes-like object` en lecture seule) [``const "
"char \\*``, ``int`` ou :c:type:`Py_ssize_t`]"
#: ../Doc/c-api/arg.rst:94 #: ../Doc/c-api/arg.rst:94
msgid "" msgid ""
@ -190,6 +215,11 @@ msgid ""
"second one its length. The string may contain embedded null bytes. Unicode " "second one its length. The string may contain embedded null bytes. Unicode "
"objects are converted to C strings using ``'utf-8'`` encoding." "objects are converted to C strings using ``'utf-8'`` encoding."
msgstr "" msgstr ""
"La même chose que ``s*``, mais n'accepte pas les objets muables. Le résultat "
"est stocké dans deux variables C, la première est un pointeur vers une "
"chaîne de caractères C, la seconde contient sa taille. La chaîne de "
"caractères peut contenir des octets NULL. Les objets Unicode sont convertis "
"vers des chaînes de caractères C utilisant l'encodage ``'utf-8'``."
#: ../Doc/c-api/arg.rst:102 ../Doc/c-api/arg.rst:566 #: ../Doc/c-api/arg.rst:102 ../Doc/c-api/arg.rst:566
msgid "``z`` (:class:`str` or ``None``) [const char \\*]" msgid "``z`` (:class:`str` or ``None``) [const char \\*]"
@ -232,6 +262,8 @@ msgstr ""
#: ../Doc/c-api/arg.rst:120 #: ../Doc/c-api/arg.rst:120
msgid "``y`` (read-only :term:`bytes-like object`) [const char \\*]" msgid "``y`` (read-only :term:`bytes-like object`) [const char \\*]"
msgstr "" msgstr ""
"``y`` (lecture seule :term:`objet compatible avec une chaîne d'octets <bytes-"
"like object>`) [constante char \\*]"
#: ../Doc/c-api/arg.rst:113 #: ../Doc/c-api/arg.rst:113
msgid "" msgid ""
@ -240,12 +272,18 @@ msgid ""
"contain embedded null bytes; if it does, a :exc:`ValueError` exception is " "contain embedded null bytes; if it does, a :exc:`ValueError` exception is "
"raised." "raised."
msgstr "" msgstr ""
"Ce format convertit un *objet compatible avec une chaîne d'octets* en un "
"pointeur C vers une chaîne de caractères ; il n'accepte pas les objets "
"Unicode. Le tampon d'octets ne doit pas contenir d'octets *null* ; si c'est "
"le cas, une exception :exc:`ValueError` est levée."
#: ../Doc/c-api/arg.rst:118 #: ../Doc/c-api/arg.rst:118
msgid "" msgid ""
"Previously, :exc:`TypeError` was raised when embedded null bytes were " "Previously, :exc:`TypeError` was raised when embedded null bytes were "
"encountered in the bytes buffer." "encountered in the bytes buffer."
msgstr "" msgstr ""
"Auparavant, :exc:`TypeError` était levée lorsque des octets *null* étaient "
"rencontrés dans le tampon d'octets."
#: ../Doc/c-api/arg.rst:125 #: ../Doc/c-api/arg.rst:125
msgid "``y*`` (:term:`bytes-like object`) [Py_buffer]" msgid "``y*`` (:term:`bytes-like object`) [Py_buffer]"
@ -306,6 +344,13 @@ msgid ""
"Python string must not contain embedded null code points; if it does, a :exc:" "Python string must not contain embedded null code points; if it does, a :exc:"
"`ValueError` exception is raised." "`ValueError` exception is raised."
msgstr "" msgstr ""
"Convertit un objet Python Unicode en un pointeur C vers un tampon de "
"caractères Unicode terminé par *NULL*. Vous devez passer l'adresse d'un "
"pointeur :c:type:`Py_UNICODE`, qui sera rempli avec le pointeur vers un "
"tampon Unicode existant. Veuillez noter que la taille d'un :c:type:"
"`Py_UNICODE` dépend des options de compilation (soit 16, soit 32 bits). La "
"chaîne de caractères Python ne doit pas contenir de code *NULL*. Si elle en "
"contient, une exception :exc:`ValueError` est levée."
#: ../Doc/c-api/arg.rst:157 ../Doc/c-api/arg.rst:166 ../Doc/c-api/arg.rst:174 #: ../Doc/c-api/arg.rst:157 ../Doc/c-api/arg.rst:166 ../Doc/c-api/arg.rst:174
#: ../Doc/c-api/arg.rst:182 #: ../Doc/c-api/arg.rst:182

View File

@ -72,7 +72,7 @@ msgstr ""
#: ../Doc/c-api/bytes.rst:68 #: ../Doc/c-api/bytes.rst:68
msgid "Format Characters" msgid "Format Characters"
msgstr "" msgstr "Caractères de format"
#: ../Doc/c-api/bytes.rst:68 #: ../Doc/c-api/bytes.rst:68
msgid "Type" msgid "Type"

View File

@ -16,13 +16,15 @@ msgstr ""
#: ../Doc/c-api/mapping.rst:6 #: ../Doc/c-api/mapping.rst:6
msgid "Mapping Protocol" msgid "Mapping Protocol"
msgstr "" msgstr "Protocole de correspondance"
#: ../Doc/c-api/mapping.rst:8 #: ../Doc/c-api/mapping.rst:8
msgid "" msgid ""
"See also :c:func:`PyObject_GetItem`, :c:func:`PyObject_SetItem` and :c:func:" "See also :c:func:`PyObject_GetItem`, :c:func:`PyObject_SetItem` and :c:func:"
"`PyObject_DelItem`." "`PyObject_DelItem`."
msgstr "" msgstr ""
"Voir aussi :c:func:`PyObject_GetItem`, :c:func:`PyObject_SetItem` et :c:func:"
"`PyObject_DelItem`."
#: ../Doc/c-api/mapping.rst:14 #: ../Doc/c-api/mapping.rst:14
msgid "" msgid ""
@ -37,6 +39,8 @@ msgid ""
"Returns the number of keys in object *o* on success, and ``-1`` on failure. " "Returns the number of keys in object *o* on success, and ``-1`` on failure. "
"This is equivalent to the Python expression ``len(o)``." "This is equivalent to the Python expression ``len(o)``."
msgstr "" msgstr ""
"Renvoie le nombre de clefs dans l'objet *o* et ``-1`` en cas d'échec. C'est "
"l'équivalent de l'expression Python ``len(o)``."
#: ../Doc/c-api/mapping.rst:32 #: ../Doc/c-api/mapping.rst:32
msgid "" msgid ""
@ -58,12 +62,18 @@ msgid ""
"on failure. This is equivalent to the Python statement ``del o[key]``. This " "on failure. This is equivalent to the Python statement ``del o[key]``. This "
"is an alias of :c:func:`PyObject_DelItem`." "is an alias of :c:func:`PyObject_DelItem`."
msgstr "" msgstr ""
"Supprime la correspondance associée à l'objet *key* dans l'objet *o*. "
"Renvoie ``-1`` en cas d'échec. C'est l'équivalent de la commande Python "
"``del o[key]``. C'est un alias pour :c:func:`PyObject_DelItem`."
#: ../Doc/c-api/mapping.rst:53 #: ../Doc/c-api/mapping.rst:53
msgid "" msgid ""
"Remove the mapping for the string *key* from the object *o*. Return ``-1`` " "Remove the mapping for the string *key* from the object *o*. Return ``-1`` "
"on failure. This is equivalent to the Python statement ``del o[key]``." "on failure. This is equivalent to the Python statement ``del o[key]``."
msgstr "" msgstr ""
"Supprime la correspondance associée à la chaîne *key* dans l'objet *o*. "
"Renvoie ``-1`` en cas d'échec. C'est l'équivalent de la commande Python "
"``del o[key]``."
#: ../Doc/c-api/mapping.rst:59 ../Doc/c-api/mapping.rst:70 #: ../Doc/c-api/mapping.rst:59 ../Doc/c-api/mapping.rst:70
msgid "" msgid ""
@ -71,6 +81,9 @@ msgid ""
"This is equivalent to the Python expression ``key in o``. This function " "This is equivalent to the Python expression ``key in o``. This function "
"always succeeds." "always succeeds."
msgstr "" msgstr ""
"Renvoie ``1`` si l'objet de correspondance possède une clef *key* et ``0`` "
"sinon. C'est l'équivalent de l'expression Python ``key in o``. Cette "
"fonction ne provoque jamais d'erreur."
#: ../Doc/c-api/mapping.rst:63 #: ../Doc/c-api/mapping.rst:63
msgid "" msgid ""
@ -78,6 +91,9 @@ msgid ""
"method will get suppressed. To get error reporting use :c:func:" "method will get suppressed. To get error reporting use :c:func:"
"`PyObject_GetItem()` instead." "`PyObject_GetItem()` instead."
msgstr "" msgstr ""
"Notez que les exceptions qui surviennent pendant l'appel de la méthode :meth:"
"`__getitem__` seront supprimées. Pour obtenir le rapport d'erreur, utilisez "
"plutôt :c:func:`PyObject_GetItem()`."
#: ../Doc/c-api/mapping.rst:74 #: ../Doc/c-api/mapping.rst:74
msgid "" msgid ""
@ -85,6 +101,10 @@ msgid ""
"method and creating a temporary string object will get suppressed. To get " "method and creating a temporary string object will get suppressed. To get "
"error reporting use :c:func:`PyMapping_GetItemString()` instead." "error reporting use :c:func:`PyMapping_GetItemString()` instead."
msgstr "" msgstr ""
"Notez que les exceptions qui surviennent en créant une chaîne de caractères "
"temporaire pendant l'appel de la méthode :meth:`__getitem__` seront "
"supprimées. Pour obtenir le rapport d'erreur, utilisez plutôt :c:func:"
"`PyMapping_GetItemString()`."
#: ../Doc/c-api/mapping.rst:81 #: ../Doc/c-api/mapping.rst:81
msgid "" msgid ""
@ -95,7 +115,7 @@ msgstr ""
#: ../Doc/c-api/mapping.rst:84 ../Doc/c-api/mapping.rst:93 #: ../Doc/c-api/mapping.rst:84 ../Doc/c-api/mapping.rst:93
#: ../Doc/c-api/mapping.rst:102 #: ../Doc/c-api/mapping.rst:102
msgid "Previously, the function returned a list or a tuple." msgid "Previously, the function returned a list or a tuple."
msgstr "" msgstr "Auparavant, la fonction renvoyait une liste ou un n-uplet."
#: ../Doc/c-api/mapping.rst:90 #: ../Doc/c-api/mapping.rst:90
msgid "" msgid ""

View File

@ -488,7 +488,7 @@ msgstr ""
#: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:513 #: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:513
msgid "Field" msgid "Field"
msgstr "" msgstr "Champ"
#: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:513 #: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:513
msgid "Meaning" msgid "Meaning"

View File

@ -24,6 +24,9 @@ msgid ""
"<bufferobjects>` as a Python object which can then be passed around like any " "<bufferobjects>` as a Python object which can then be passed around like any "
"other object." "other object."
msgstr "" msgstr ""
"Un objet Python :class:`memoryview` expose le :ref:`protocole tampon "
"<bufferobjects>` du C. Cet objet peut ensuite être passé comme n'importe "
"quel objet."
#: ../Doc/c-api/memoryview.rst:18 #: ../Doc/c-api/memoryview.rst:18
msgid "" msgid ""
@ -32,12 +35,18 @@ msgid ""
"will be read/write, otherwise it may be either read-only or read/write at " "will be read/write, otherwise it may be either read-only or read/write at "
"the discretion of the exporter." "the discretion of the exporter."
msgstr "" msgstr ""
"Crée un objet *memoryview* à partir d'un objet implémentant le protocole "
"tampon. Si *obj* permet d'exporter des tampons modifiables, l'objet "
"*memoryview* crée acceptera la lecture et écriture, sinon l'objet crée est "
"soit en lecture seule ou lecture/écriture, à la discrétion de l'*exporteur*."
#: ../Doc/c-api/memoryview.rst:25 #: ../Doc/c-api/memoryview.rst:25
msgid "" msgid ""
"Create a memoryview object using *mem* as the underlying buffer. *flags* can " "Create a memoryview object using *mem* as the underlying buffer. *flags* can "
"be one of :c:macro:`PyBUF_READ` or :c:macro:`PyBUF_WRITE`." "be one of :c:macro:`PyBUF_READ` or :c:macro:`PyBUF_WRITE`."
msgstr "" msgstr ""
"Crée un objet *memoryview* utilisant *mem* comme un tampon sous-jacent. "
"*flags* peut être :c:macro:`PyBUF_READ` ou :c:macro:`PyBUF_WRITE`."
#: ../Doc/c-api/memoryview.rst:32 #: ../Doc/c-api/memoryview.rst:32
msgid "" msgid ""
@ -45,6 +54,8 @@ msgid ""
"simple byte buffers, :c:func:`PyMemoryView_FromMemory` is the preferred " "simple byte buffers, :c:func:`PyMemoryView_FromMemory` is the preferred "
"function." "function."
msgstr "" msgstr ""
"Crée un objet *memoryview* à partir de la structure tampon *view*. Pour de "
"simples tampons d'octets, :c:func:`PyMemoryView_FromMemory` est préférée."
#: ../Doc/c-api/memoryview.rst:38 #: ../Doc/c-api/memoryview.rst:38
msgid "" msgid ""
@ -54,12 +65,19 @@ msgid ""
"original memory. Otherwise, a copy is made and the memoryview points to a " "original memory. Otherwise, a copy is made and the memoryview points to a "
"new bytes object." "new bytes object."
msgstr "" msgstr ""
"Crée un objet *memoryview* vers un segment de mémoire :term:`contiguous` "
"(organisé comme en ``'C'`` ou comme en ``'F'`` pour Fortran) à partir d'un "
"objet qui expose le protocole tampon. Si la mémoire est contiguë, l'objet "
"*memoryview* pointe vers la mémoire d'origine. Sinon une copie est faite et "
"la *memoryview* pointe vers un nouvel objet *bytes*."
#: ../Doc/c-api/memoryview.rst:47 #: ../Doc/c-api/memoryview.rst:47
msgid "" msgid ""
"Return true if the object *obj* is a memoryview object. It is not currently " "Return true if the object *obj* is a memoryview object. It is not currently "
"allowed to create subclasses of :class:`memoryview`." "allowed to create subclasses of :class:`memoryview`."
msgstr "" msgstr ""
"Renvoie vrai si l'objet *obj* est un objet *memoryview*. Il n'est pas permis "
"de créer une sous-classe de :class:`memoryview`."
#: ../Doc/c-api/memoryview.rst:53 #: ../Doc/c-api/memoryview.rst:53
msgid "" msgid ""
@ -67,6 +85,10 @@ msgid ""
"*mview* **must** be a memoryview instance; this macro doesn't check its " "*mview* **must** be a memoryview instance; this macro doesn't check its "
"type, you must do it yourself or you will risk crashes." "type, you must do it yourself or you will risk crashes."
msgstr "" msgstr ""
"Retourne un pointeur vers la copie privée du tampon de l'*exporteur* de "
"*memoryview*. *mview* **doit** être une instance de *memoryview*; cette "
"macro ne vérifie pas le type, vous devez le faire vous-même sinon vous "
"pourriez subir un crash."
#: ../Doc/c-api/memoryview.rst:59 #: ../Doc/c-api/memoryview.rst:59
msgid "" msgid ""

View File

@ -142,7 +142,7 @@ msgstr ""
#: ../Doc/c-api/structures.rst:139 ../Doc/c-api/structures.rst:279 #: ../Doc/c-api/structures.rst:139 ../Doc/c-api/structures.rst:279
#: ../Doc/c-api/structures.rst:345 #: ../Doc/c-api/structures.rst:345
msgid "Field" msgid "Field"
msgstr "" msgstr "Champ"
#: ../Doc/c-api/structures.rst:139 ../Doc/c-api/structures.rst:279 #: ../Doc/c-api/structures.rst:139 ../Doc/c-api/structures.rst:279
#: ../Doc/c-api/structures.rst:345 #: ../Doc/c-api/structures.rst:345

View File

@ -150,7 +150,7 @@ msgstr ""
#: ../Doc/c-api/tuple.rst:145 ../Doc/c-api/tuple.rst:168 #: ../Doc/c-api/tuple.rst:145 ../Doc/c-api/tuple.rst:168
msgid "Field" msgid "Field"
msgstr "" msgstr "Champ"
#: ../Doc/c-api/tuple.rst:145 ../Doc/c-api/tuple.rst:168 #: ../Doc/c-api/tuple.rst:145 ../Doc/c-api/tuple.rst:168
msgid "C Type" msgid "C Type"

View File

@ -437,7 +437,7 @@ msgstr ""
#: ../Doc/c-api/unicode.rst:447 #: ../Doc/c-api/unicode.rst:447
msgid "Format Characters" msgid "Format Characters"
msgstr "" msgstr "Caractères de format"
#: ../Doc/c-api/unicode.rst:447 #: ../Doc/c-api/unicode.rst:447
msgid "Type" msgid "Type"

93
dict
View File

@ -1,5 +1,7 @@
#python-fr #python-fr
-1
-ième -ième
-uplet
-uplets -uplets
017f 017f
212a 212a
@ -11,23 +13,32 @@ base32
base64 base64
base85 base85
batch batch
boguer
c++
c- c-
C- c/c++
C99 C14N
C89
c99
chacha20
cadriciel cadriciel
cadriciels cadriciels
catucci catucci
cobjects cobjects
composabilité composabilité
concourance concourance
contravariante
contravariantes
configurateurs
contribués contribués
coroutine coroutine
coroutine
coroutines coroutines
Cython cpython
curryfication curryfication
cython
d'allocateurs d'allocateurs
d'indifférentiabilité d'indifférentiabilité
d'itérateurs
docstrings docstrings
décodables décodables
déduplication déduplication
@ -40,30 +51,36 @@ déserialise
déserialiser déserialiser
déserialiseur déserialiseur
déserialiseurs déserialiseurs
désérialiseur
désérialiseurs
déserialisées déserialisées
déserialisés déserialisés
désérialisés
désérialise désérialise
désérialiser désérialiser
désérialisé désérialisé
désérialisées désérialisées
encodable encodable
Farrugia ethnomathématiques
farrugia
finaliseur finaliseur
frederik frederik
fredrik fredrik
freeze freeze
Guido glibc
guido
hachabilité hachabilité
hachable hachable
hachables hachables
Hettinger hettinger
html html
-ième
indiçage indiçage
indo-arabes indo-arabes
ininterruptible ininterruptible
interchangés interchangés
iOS intralignes
ios
ipv4
itérateur itérateur
itérateurs itérateurs
ième ième
@ -73,46 +90,56 @@ journaliseur
journalisé journalisé
journalisée journalisée
journalisés journalisés
journaliseur jr.
Jr. kolams
Kuchling kuchling
l'allocateur l'allocateur
lexicographiquement
l'indiçage l'indiçage
l'itérateur l'itérateur
lexicographiquement
lorsqu'aucune lorsqu'aucune
lorsqu'aucun
mar
mar. mar.
Marc-André marc-andré
mémoïsant mersenne
mémoïsation
Mersenne
mertz mertz
métacaractère Monty
métacaractères
métaclasse
métaclasses
muabilité muabilité
muable muable
muables muables
multiensemble multiensemble
multiensembles multiensembles
mutex mutex
mémoïsant
mémoïsation
métacaractère
métacaractères
métaclasse
métaclasses
n-ième
namespace namespace
non-hachable
non-hachables
pdb pdb
pip pip
pourcent pourcent
proleptique
précompilé précompilé
préemptif préemptif
proleptique préremplis
py2exe py2exe
pyc pyc
PyChecker pychecker
Pydb pydb
Pylint pylint
PythonWin pythonwin
qu
re re
recompilation recompilation
Reedy reedy
relationelle
retraçage
réentrant réentrant
réentrante réentrante
réentrants réentrants
@ -123,12 +150,11 @@ référençables
réimplémente réimplémente
réimplémenter réimplémenter
réimplémentez réimplémentez
relationelle
résolveurs résolveurs
retraçage
réusinage réusinage
réusinages réusinages
réusiné réusiné
réutilisabilité
serwy serwy
shell shell
slot slot
@ -137,16 +163,12 @@ sqlite
surprenamment surprenamment
sérialisable sérialisable
sérialisables sérialisables
sérialiser
sérialiseur
sérialisé sérialisé
sérialisée sérialisée
sérialisées sérialisées
sérialiser
sérialisés sérialisés
sérialiseur
Serwy
shell
slot
surprenamment
tk tk
tokenisation tokenisation
tokenisé tokenisé
@ -158,6 +180,7 @@ utf-16
utf-32 utf-32
von von
w3c w3c
world
wxwidgets wxwidgets
x11 x11
x86 x86

View File

@ -16,7 +16,7 @@ msgstr ""
#: ../Doc/distutils/introduction.rst:5 #: ../Doc/distutils/introduction.rst:5
msgid "An Introduction to Distutils" msgid "An Introduction to Distutils"
msgstr "" msgstr "Introduction à Distutils"
#: ../Doc/distutils/introduction.rst:7 #: ../Doc/distutils/introduction.rst:7
msgid "" msgid ""
@ -25,6 +25,10 @@ msgid ""
"information on installing Python modules, you should refer to the :ref:" "information on installing Python modules, you should refer to the :ref:"
"`install-index` chapter." "`install-index` chapter."
msgstr "" msgstr ""
"Ce document traite de l'utilisation de Distutils pour distribuer des modules "
"Python, en se concentrant sur le rôle de développeur/distributeur : si vous "
"cherchez des informations sur l'installation de modules Python, vous devriez "
"vous référer au chapitre :ref:`install-index`."
#: ../Doc/distutils/introduction.rst:16 #: ../Doc/distutils/introduction.rst:16
msgid "Concepts & Terminology" msgid "Concepts & Terminology"
@ -37,26 +41,30 @@ msgid ""
"responsibilities (apart from writing solid, well-documented and well-tested " "responsibilities (apart from writing solid, well-documented and well-tested "
"code, of course!) are:" "code, of course!) are:"
msgstr "" msgstr ""
"Utiliser Distuils est assez simple, à la fois pour les développeurs de "
"module et pour les utilisateurs/administrateurs qui installent des modules "
"tiers. En tant que développeur, vos responsabilités (en plus d'écrire du "
"code solide, bien documenté et bien testé, bien entendu !) sont :"
#: ../Doc/distutils/introduction.rst:23 #: ../Doc/distutils/introduction.rst:23
msgid "write a setup script (:file:`setup.py` by convention)" msgid "write a setup script (:file:`setup.py` by convention)"
msgstr "" msgstr "écrire un script d'installation (:file:`setup.py` par convention) ;"
#: ../Doc/distutils/introduction.rst:25 #: ../Doc/distutils/introduction.rst:25
msgid "(optional) write a setup configuration file" msgid "(optional) write a setup configuration file"
msgstr "" msgstr "(optionnel) écrire un fichier de configuration pour l'installation ;"
#: ../Doc/distutils/introduction.rst:27 #: ../Doc/distutils/introduction.rst:27
msgid "create a source distribution" msgid "create a source distribution"
msgstr "" msgstr "créer une distribution source ;"
#: ../Doc/distutils/introduction.rst:29 #: ../Doc/distutils/introduction.rst:29
msgid "(optional) create one or more built (binary) distributions" msgid "(optional) create one or more built (binary) distributions"
msgstr "" msgstr "(optionnel) créer une ou plusieurs distributions compilées (binaires)."
#: ../Doc/distutils/introduction.rst:31 #: ../Doc/distutils/introduction.rst:31
msgid "Each of these tasks is covered in this document." msgid "Each of these tasks is covered in this document."
msgstr "" msgstr "Chacune de ces tâches est couverte dans ce document."
#: ../Doc/distutils/introduction.rst:33 #: ../Doc/distutils/introduction.rst:33
msgid "" msgid ""
@ -70,6 +78,16 @@ msgid ""
"module distributions in the most natural way for their platform, without " "module distributions in the most natural way for their platform, without "
"having to run a single setup script or compile a line of code." "having to run a single setup script or compile a line of code."
msgstr "" msgstr ""
"Tous les développeurs de modules n'ont pas accès à une multitude de "
"plateformes, donc on ne peut pas exiger d'eux qu'ils créent une multitude de "
"distributions compilées. On s'attend à ce que certains intermédiaires, "
"appelés *packagers*, prennent en charge ce besoin. Les packagers vont "
"prendre les sources des distributions publiées par les développeurs de "
"modules, les construire sur on ou plusieurs plateformes, et publier les "
"distributions compilées résultantes. Ainsi, les utilisateurs sur les "
"plateformes les plus populaires vont pouvoir installer la plupart des "
"modules Python de la façon la plus naturelle qui soit pour leur plateforme, "
"sans avoir à exécuter de script ou à compiler du code."
#: ../Doc/distutils/introduction.rst:47 #: ../Doc/distutils/introduction.rst:47
msgid "A Simple Example" msgid "A Simple Example"
@ -84,22 +102,33 @@ msgid ""
"script may be run multiple times in the course of building and installing " "script may be run multiple times in the course of building and installing "
"your module distribution." "your module distribution."
msgstr "" msgstr ""
"Le script d'installation est habituellement assez simple, même s'il n'y a "
"pas de limite à ce qu'il peut faire (il est écrit en Python, n'est-ce "
"pas ?). Veillez d'ailleurs à ne pas surcharger ce script avec des opérations "
"coûteuses car, contrairement aux scripts de configuration façon Autoconf, le "
"script d'installation peut être amené à être exécuté plusieurs fois au cours "
"de la compilation et de l'installation du module. "
#: ../Doc/distutils/introduction.rst:56 #: ../Doc/distutils/introduction.rst:56
msgid "" msgid ""
"If all you want to do is distribute a module called :mod:`foo`, contained in " "If all you want to do is distribute a module called :mod:`foo`, contained in "
"a file :file:`foo.py`, then your setup script can be as simple as this::" "a file :file:`foo.py`, then your setup script can be as simple as this::"
msgstr "" msgstr ""
"Si tout ce que vous voulez est de distribuer un module appelé :mod:`foo`, "
"contenu dans un fichier :file:`foo.py`, alors votre script d'installation "
"peut se résumer à :"
#: ../Doc/distutils/introduction.rst:65 #: ../Doc/distutils/introduction.rst:65
msgid "Some observations:" msgid "Some observations:"
msgstr "" msgstr "Quelques observations :"
#: ../Doc/distutils/introduction.rst:67 #: ../Doc/distutils/introduction.rst:67
msgid "" msgid ""
"most information that you supply to the Distutils is supplied as keyword " "most information that you supply to the Distutils is supplied as keyword "
"arguments to the :func:`setup` function" "arguments to the :func:`setup` function"
msgstr "" msgstr ""
"la plupart des informations que vous fournissez à Distutils sont fournies en "
"tant que qu'arguments nommés à la fonction :func:`setup`;"
#: ../Doc/distutils/introduction.rst:70 #: ../Doc/distutils/introduction.rst:70
msgid "" msgid ""
@ -107,12 +136,17 @@ msgid ""
"version number) and information about what's in the package (a list of pure " "version number) and information about what's in the package (a list of pure "
"Python modules, in this case)" "Python modules, in this case)"
msgstr "" msgstr ""
"ces arguments nommés tombent dans deux catégories : métadonnées du paquet "
"(nom, numéro de version) et des informations sur le contenu du paquet paquet "
"(une liste de purs modules Python, dans ce cas) ; "
#: ../Doc/distutils/introduction.rst:74 #: ../Doc/distutils/introduction.rst:74
msgid "" msgid ""
"modules are specified by module name, not filename (the same will hold true " "modules are specified by module name, not filename (the same will hold true "
"for packages and extensions)" "for packages and extensions)"
msgstr "" msgstr ""
"les modules sont listés par nom de module, plutôt que par nom de fichier (le "
"cas est similaire pour les paquets et extensions) ;"
#: ../Doc/distutils/introduction.rst:77 #: ../Doc/distutils/introduction.rst:77
msgid "" msgid ""
@ -120,6 +154,9 @@ msgid ""
"name, email address and a URL for the project (see section :ref:`setup-" "name, email address and a URL for the project (see section :ref:`setup-"
"script` for an example)" "script` for an example)"
msgstr "" msgstr ""
"il est recommandé de fournir un minimum de métadonnées, en particulier votre "
"nom, une adresse de courriel et une URL pour le projet (voir section :ref:"
"`setup-script` pour un exemple)."
#: ../Doc/distutils/introduction.rst:81 #: ../Doc/distutils/introduction.rst:81
msgid "" msgid ""
@ -127,12 +164,17 @@ msgid ""
"script, :file:`setup.py`, containing the above code, and run this command " "script, :file:`setup.py`, containing the above code, and run this command "
"from a terminal::" "from a terminal::"
msgstr "" msgstr ""
"Pour créer une distribution source pour ce module, il faut créer un script "
"d'installation, :file:`setup.py`, contenant le code ci-dessus, et exécuter "
"cette commande depuis un terminal :"
#: ../Doc/distutils/introduction.rst:87 #: ../Doc/distutils/introduction.rst:87
msgid "" msgid ""
"For Windows, open a command prompt window (:menuselection:`Start --> " "For Windows, open a command prompt window (:menuselection:`Start --> "
"Accessories`) and change the command to::" "Accessories`) and change the command to::"
msgstr "" msgstr ""
"Pour Windows, ouvrez une invite de commande (:menuselection:`Démarrer --> "
"Accessoires`) et changez la commande en :"
#: ../Doc/distutils/introduction.rst:92 #: ../Doc/distutils/introduction.rst:92
msgid "" msgid ""
@ -141,6 +183,11 @@ msgid ""
"module :file:`foo.py`. The archive file will be named :file:`foo-1.0.tar.gz` " "module :file:`foo.py`. The archive file will be named :file:`foo-1.0.tar.gz` "
"(or :file:`.zip`), and will unpack into a directory :file:`foo-1.0`." "(or :file:`.zip`), and will unpack into a directory :file:`foo-1.0`."
msgstr "" msgstr ""
":command:`sdist` va créer un fichier d'archive (p. ex. une archive *tar* sur "
"Unix, un fichier ZIP sous Windows) contenant votre script d'installation :"
"file:`setup.py`, et votre module :file:`foo.py`. Le fichier d'archive va "
"être nommé :file:`foo-1.0.tar.gz` (ou :file:`.zip`), et va se décompresser "
"dans un répertoire :file:`foo-1.0`."
#: ../Doc/distutils/introduction.rst:97 #: ../Doc/distutils/introduction.rst:97
msgid "" msgid ""
@ -148,12 +195,18 @@ msgid ""
"is download :file:`foo-1.0.tar.gz` (or :file:`.zip`), unpack it, and---from " "is download :file:`foo-1.0.tar.gz` (or :file:`.zip`), unpack it, and---from "
"the :file:`foo-1.0` directory---run ::" "the :file:`foo-1.0` directory---run ::"
msgstr "" msgstr ""
"Si un utilisateur final souhaite installer votre module :mod:`foo`, tout ce "
"qu'il aura à faire est de télécharger le fichier :file:`foo-1.0.tar.gz` (ou :"
"file:`.zip`), le décompresser et ---depuis le répertoire :file:`foo-1.0`--- "
"exécuter :"
#: ../Doc/distutils/introduction.rst:103 #: ../Doc/distutils/introduction.rst:103
msgid "" msgid ""
"which will ultimately copy :file:`foo.py` to the appropriate directory for " "which will ultimately copy :file:`foo.py` to the appropriate directory for "
"third-party modules in their Python installation." "third-party modules in their Python installation."
msgstr "" msgstr ""
"ce qui va finalement copier :file:`foo.py` dans le répertoire approprié pour "
"un module tiers dans son installation Python."
#: ../Doc/distutils/introduction.rst:106 #: ../Doc/distutils/introduction.rst:106
msgid "" msgid ""
@ -164,6 +217,13 @@ msgid ""
"while :command:`install` is more often for installers (although most " "while :command:`install` is more often for installers (although most "
"developers will want to install their own code occasionally)." "developers will want to install their own code occasionally)."
msgstr "" msgstr ""
"Ce simple exemple démontre des concepts fondamentaux de Distutils, "
"Premièrement, les développeurs et installeurs ont la même interface "
"utilisateur basique, p. ex. le script d'installation. La différence est "
"quelle *commande* Distutils ils utilisent : la commande :command:`sdist` est "
"quasiment exclusivement pour les développeurs de modules Python, tandis que :"
"command:`install` est plus souvent pour les installeurs (bien que la plupart "
"des développeurs vont vouloir installer leur code occasionnellement)."
#: ../Doc/distutils/introduction.rst:113 #: ../Doc/distutils/introduction.rst:113
msgid "" msgid ""
@ -174,12 +234,21 @@ msgid ""
"distribution for this platform) with the :command:`bdist_wininst` command. " "distribution for this platform) with the :command:`bdist_wininst` command. "
"For example::" "For example::"
msgstr "" msgstr ""
"Si vous voulez rendre les choses vraiment faciles pour vos utilisateurs, "
"vous pouvez créer on ou plusieurs distributions compilées pour eux. En "
"loccurrence, si vous tournez sous une machine Windows, et que vous voulez "
"rendre les choses faciles pour les autres utilisateurs Windows, vous pouvez "
"créer un installateur exécutable (le mode de distribution le plus approprié "
"pour cette plateforme) avec la commande :command:`bdist_wininst`. Par "
"exemple :"
#: ../Doc/distutils/introduction.rst:121 #: ../Doc/distutils/introduction.rst:121
msgid "" msgid ""
"will create an executable installer, :file:`foo-1.0.win32.exe`, in the " "will create an executable installer, :file:`foo-1.0.win32.exe`, in the "
"current directory." "current directory."
msgstr "" msgstr ""
"va créer une installeur exécutable, :file:`foo-1.0.win32.exe`, dans le "
"répertoire courant."
#: ../Doc/distutils/introduction.rst:124 #: ../Doc/distutils/introduction.rst:124
msgid "" msgid ""
@ -188,6 +257,11 @@ msgid ""
"and HP-UX :program:`swinstall` (:command:`bdist_sdux`). For example, the " "and HP-UX :program:`swinstall` (:command:`bdist_sdux`). For example, the "
"following command will create an RPM file called :file:`foo-1.0.noarch.rpm`::" "following command will create an RPM file called :file:`foo-1.0.noarch.rpm`::"
msgstr "" msgstr ""
"D'autres formats de distributions compilés utiles sont RPM, implémenté par "
"la commande :command:`bdist_rpm`, Solaris :program:`pkgtool` (:command:"
"`bdist_pkgtool`), et HP-UX :program:`swinstall` (:command:`bdist_sdux`). Par "
"exemple, la commande suivante va créer un fichier RPM appelé :file:`foo-1.0."
"noarch.rpm`::"
#: ../Doc/distutils/introduction.rst:132 #: ../Doc/distutils/introduction.rst:132
msgid "" msgid ""
@ -195,16 +269,21 @@ msgid ""
"therefore this has to be run on an RPM-based system such as Red Hat Linux, " "therefore this has to be run on an RPM-based system such as Red Hat Linux, "
"SuSE Linux, or Mandrake Linux.)" "SuSE Linux, or Mandrake Linux.)"
msgstr "" msgstr ""
"(La commande :command:`bdist_rpm` utilise l'exécutable :command:`rpm`, "
"cependant cela doit être exécuté sur un système basé sur RPM tel que Red Hat "
"Linux, SuSE Linux, or Mandrake Linux.)"
#: ../Doc/distutils/introduction.rst:136 #: ../Doc/distutils/introduction.rst:136
msgid "" msgid ""
"You can find out what distribution formats are available at any time by " "You can find out what distribution formats are available at any time by "
"running ::" "running ::"
msgstr "" msgstr ""
"Vous pouvez trouver quelles sont les formats de distribution disponibles à "
"n'importe quel moment en exécutant :"
#: ../Doc/distutils/introduction.rst:145 #: ../Doc/distutils/introduction.rst:145
msgid "General Python terminology" msgid "General Python terminology"
msgstr "" msgstr "Terminologie Python générale"
#: ../Doc/distutils/introduction.rst:147 #: ../Doc/distutils/introduction.rst:147
msgid "" msgid ""
@ -213,6 +292,10 @@ msgid ""
"everyone is operating from a common starting point, we offer the following " "everyone is operating from a common starting point, we offer the following "
"glossary of common Python terms:" "glossary of common Python terms:"
msgstr "" msgstr ""
"Si vous lisez ce document, vous avez probablement une bonne idée de ce que "
"sont les modules, extensions, etc. Néanmoins, juste pour être sur que tout "
"le monde opère depuis un point d'entrée commun, nous reprécisons le "
"glossaire suivant des termes Python communs :"
#: ../Doc/distutils/introduction.rst:155 #: ../Doc/distutils/introduction.rst:155
msgid "module" msgid "module"
@ -224,10 +307,13 @@ msgid ""
"some other code. Three types of modules concern us here: pure Python " "some other code. Three types of modules concern us here: pure Python "
"modules, extension modules, and packages." "modules, extension modules, and packages."
msgstr "" msgstr ""
"unité de base de la réutilisabilité en Python : un bloc de code importé par "
"un autre code. Trois types de modules nous concernent ici : les purs modules "
"Python, les modules d'extension, et les packages."
#: ../Doc/distutils/introduction.rst:160 #: ../Doc/distutils/introduction.rst:160
msgid "pure Python module" msgid "pure Python module"
msgstr "" msgstr "pur module Python"
#: ../Doc/distutils/introduction.rst:158 #: ../Doc/distutils/introduction.rst:158
msgid "" msgid ""
@ -235,6 +321,8 @@ msgid ""
"possibly associated :file:`.pyc` files). Sometimes referred to as a \"pure " "possibly associated :file:`.pyc` files). Sometimes referred to as a \"pure "
"module.\"" "module.\""
msgstr "" msgstr ""
"un module écrit en Python et contenu dans un seul fichier :file:`.py` (et "
"possiblement un fichier :file:`.pyc` associé). Parfois appelé \"pur module.\""
#: ../Doc/distutils/introduction.rst:168 #: ../Doc/distutils/introduction.rst:168
msgid "extension module" msgid "extension module"
@ -250,6 +338,13 @@ msgid ""
"(Note that currently, the Distutils only handles C/C++ extensions for " "(Note that currently, the Distutils only handles C/C++ extensions for "
"Python.)" "Python.)"
msgstr "" msgstr ""
"un module écrit dans un langage de bas niveau de l'implémentation Python: C/C"
"++ pour Python, Java pour Jython. Typiquement contenu dans un unique fichier "
"pré-compilé chargeable, p. ex. un fichier objet partagé (:file:`.so`) pour "
"des extensions Python sous Unix, un fichier DLL (étant donné l'extension :"
"file:`.pyd`) pour les extensions Python sous Windows, ou un fichier de "
"classe Java pour les extensions Jython (notez qu'actuellement, Distutils "
"gère seulement les extensions Python C/C++)."
#: ../Doc/distutils/introduction.rst:173 #: ../Doc/distutils/introduction.rst:173
msgid "package" msgid "package"
@ -261,6 +356,9 @@ msgid ""
"the filesystem and distinguished from other directories by the presence of a " "the filesystem and distinguished from other directories by the presence of a "
"file :file:`__init__.py`." "file :file:`__init__.py`."
msgstr "" msgstr ""
"un module qui contient d'autres modules ; très souvent contenu dans un "
"répertoire du système de fichier et qui se distingue des autres répertoires "
"par la présence d'un fichier :file:`__init__.py`."
#: ../Doc/distutils/introduction.rst:183 #: ../Doc/distutils/introduction.rst:183
msgid "root package" msgid "root package"
@ -276,20 +374,30 @@ msgid ""
"package can be found in many directories: in fact, every directory listed in " "package can be found in many directories: in fact, every directory listed in "
"``sys.path`` contributes modules to the root package." "``sys.path`` contributes modules to the root package."
msgstr "" msgstr ""
"la racine de la hiérarchie de paquets. (Ce n'est pas vraiment un paquet, "
"puisqu'il n'a pas un fichier :file:`__init__.py`. Mais nous devons bien le "
"nommer.) La grande majorité de la bibliothèque standard est dans le package "
"racine, comme le sont certains petits, des packages tiers autonomes qui "
"n'appartiennent pas à une un module plus grand. Contrairement aux packages "
"réguliers, les modules dans le package racine peuvent être trouvés dans "
"plusieurs répertoires : en effet, tous les répertoires listés ``sys.path`` "
"contribuent à faire partie du package racine."
#: ../Doc/distutils/introduction.rst:188 #: ../Doc/distutils/introduction.rst:188
msgid "Distutils-specific terminology" msgid "Distutils-specific terminology"
msgstr "" msgstr "Terminologie spécifique à Distutils"
#: ../Doc/distutils/introduction.rst:190 #: ../Doc/distutils/introduction.rst:190
msgid "" msgid ""
"The following terms apply more specifically to the domain of distributing " "The following terms apply more specifically to the domain of distributing "
"Python modules using the Distutils:" "Python modules using the Distutils:"
msgstr "" msgstr ""
"Les termes suivant s'appliquent plus spécifiquement au domaine de la "
"distribution de modules Python en utilisant les Distutils :"
#: ../Doc/distutils/introduction.rst:199 #: ../Doc/distutils/introduction.rst:199
msgid "module distribution" msgid "module distribution"
msgstr "" msgstr "module de distribution"
#: ../Doc/distutils/introduction.rst:194 #: ../Doc/distutils/introduction.rst:194
msgid "" msgid ""
@ -299,30 +407,40 @@ msgid ""
"called a *package*, except that term is already taken in the Python context: " "called a *package*, except that term is already taken in the Python context: "
"a single module distribution may contain zero, one, or many Python packages.)" "a single module distribution may contain zero, one, or many Python packages.)"
msgstr "" msgstr ""
"une collection de modules Python distribués ensemble, comme une unique "
"ressource téléchargeable et ayant pour but d'être installé *en bloc*. Des "
"exemples de modules distribués bien connus sont *NumPy*, *SciPy*, *Pillow*, "
"ou *mxBase*. (On pourrait les appeler des *packages*, malgré que le terme "
"soit déjà pris dans le contexte Python : une distribution de module simple "
"pourrait contenir zéro, on ou plusieurs packages Python"
#: ../Doc/distutils/introduction.rst:203 #: ../Doc/distutils/introduction.rst:203
msgid "pure module distribution" msgid "pure module distribution"
msgstr "" msgstr "distribution de modules purs"
#: ../Doc/distutils/introduction.rst:202 #: ../Doc/distutils/introduction.rst:202
msgid "" msgid ""
"a module distribution that contains only pure Python modules and packages. " "a module distribution that contains only pure Python modules and packages. "
"Sometimes referred to as a \"pure distribution.\"" "Sometimes referred to as a \"pure distribution.\""
msgstr "" msgstr ""
"une distribution de module qui contient seulement des modules purs et "
"packages Python. Parfois appelée « distribution pure »."
#: ../Doc/distutils/introduction.rst:207 #: ../Doc/distutils/introduction.rst:207
msgid "non-pure module distribution" msgid "non-pure module distribution"
msgstr "" msgstr "distribution de module non pur"
#: ../Doc/distutils/introduction.rst:206 #: ../Doc/distutils/introduction.rst:206
msgid "" msgid ""
"a module distribution that contains at least one extension module. " "a module distribution that contains at least one extension module. "
"Sometimes referred to as a \"non-pure distribution.\"" "Sometimes referred to as a \"non-pure distribution.\""
msgstr "" msgstr ""
"une distribution de module qui contient au moins un module d'extension. "
"Parfois appelée « distribution non-pure »."
#: ../Doc/distutils/introduction.rst:211 #: ../Doc/distutils/introduction.rst:211
msgid "distribution root" msgid "distribution root"
msgstr "" msgstr "distribution racine"
#: ../Doc/distutils/introduction.rst:210 #: ../Doc/distutils/introduction.rst:210
msgid "" msgid ""
@ -330,3 +448,6 @@ msgid ""
"directory where :file:`setup.py` exists. Generally :file:`setup.py` will " "directory where :file:`setup.py` exists. Generally :file:`setup.py` will "
"be run from this directory." "be run from this directory."
msgstr "" msgstr ""
"le répertoire de plus haut niveau de votre arborescence (ou distribution "
"source) ; le répertoire ou :file:`setup.py` existe. Généralement :file:"
"`setup.py` est exécuté depuis ce répertoire."

File diff suppressed because it is too large Load Diff

View File

@ -1703,7 +1703,7 @@ msgstr ""
#: ../Doc/howto/clinic.rst:970 #: ../Doc/howto/clinic.rst:970
msgid "Consider the following example:" msgid "Consider the following example:"
msgstr "" msgstr "Examinons l'exemple suivant :"
#: ../Doc/howto/clinic.rst:976 #: ../Doc/howto/clinic.rst:976
msgid "" msgid ""

View File

@ -16,7 +16,7 @@ msgstr ""
#: ../Doc/howto/curses.rst:5 #: ../Doc/howto/curses.rst:5
msgid "Curses Programming with Python" msgid "Curses Programming with Python"
msgstr "" msgstr "Programmation *Curses* avec Python"
#: ../Doc/howto/curses.rst:0 #: ../Doc/howto/curses.rst:0
msgid "Author" msgid "Author"
@ -24,7 +24,7 @@ msgstr "Auteur"
#: ../Doc/howto/curses.rst:7 #: ../Doc/howto/curses.rst:7
msgid "A.M. Kuchling, Eric S. Raymond" msgid "A.M. Kuchling, Eric S. Raymond"
msgstr "" msgstr "A.M. Kuchling, Eric S. Raymond"
#: ../Doc/howto/curses.rst:0 #: ../Doc/howto/curses.rst:0
msgid "Release" msgid "Release"
@ -32,7 +32,7 @@ msgstr "Version"
#: ../Doc/howto/curses.rst:8 #: ../Doc/howto/curses.rst:8
msgid "2.04" msgid "2.04"
msgstr "" msgstr "2.04"
#: ../Doc/howto/curses.rst:None #: ../Doc/howto/curses.rst:None
msgid "Abstract" msgid "Abstract"
@ -43,10 +43,12 @@ msgid ""
"This document describes how to use the :mod:`curses` extension module to " "This document describes how to use the :mod:`curses` extension module to "
"control text-mode displays." "control text-mode displays."
msgstr "" msgstr ""
"Ce document décrit comment utiliser le module d'extension :mod:`curses` pour "
"contrôler l'affichage en mode texte."
#: ../Doc/howto/curses.rst:18 #: ../Doc/howto/curses.rst:18
msgid "What is curses?" msgid "What is curses?"
msgstr "" msgstr "Qu'est-ce que *curses* ?"
#: ../Doc/howto/curses.rst:20 #: ../Doc/howto/curses.rst:20
msgid "" msgid ""
@ -58,6 +60,14 @@ msgid ""
"areas. Different terminals use widely differing codes, and often have their " "areas. Different terminals use widely differing codes, and often have their "
"own minor quirks." "own minor quirks."
msgstr "" msgstr ""
"La bibliothèque *curses* fournit une capacité de dessin à l'écran et de "
"gestion du clavier indépendante du terminal pour les terminaux textuels ; "
"ces terminaux comprennent les *VT100*, la console Linux et le terminal "
"simulé fourni par divers programmes. Les terminaux d'affichage prennent en "
"charge divers codes de commande pour effectuer des opérations courantes "
"telles que déplacer le curseur, faire défiler l'écran et effacer des zones. "
"Différents terminaux utilisent des codes très différents et ont souvent "
"leurs propres bizarreries mineures."
#: ../Doc/howto/curses.rst:28 #: ../Doc/howto/curses.rst:28
msgid "" msgid ""
@ -68,6 +78,15 @@ msgid ""
"an X server. Another is tools such as OS installers and kernel " "an X server. Another is tools such as OS installers and kernel "
"configurators that may have to run before any graphical support is available." "configurators that may have to run before any graphical support is available."
msgstr "" msgstr ""
"Dans un monde d'affichages graphiques, on pourrait se demander « pourquoi "
"s'embêter ? ». Il est vrai que les terminaux d'affichage caractère par "
"caractère sont une technologie obsolète, mais il existe des niches pour "
"lesquelles la possibilité de faire des choses fantaisistes est encore "
"précieuse. En exemple de niche, on peut citer les systèmes de type Unix de "
"petite taille ou embarqués qui n'utilisent pas de serveur X. Il y a aussi "
"les outils tels que les installateurs d'OS et les outils de configuration du "
"noyau qui doivent être exécutés avant qu'un support graphique ne soit "
"disponible."
#: ../Doc/howto/curses.rst:36 #: ../Doc/howto/curses.rst:36
msgid "" msgid ""
@ -81,6 +100,16 @@ msgid ""
"features, consider a user interface library such as `Urwid <https://pypi.org/" "features, consider a user interface library such as `Urwid <https://pypi.org/"
"project/urwid/>`_." "project/urwid/>`_."
msgstr "" msgstr ""
"La bibliothèque *curses* propose des fonctionnalités assez basiques, "
"fournissant au programmeur une abstraction d'affichage contenant plusieurs "
"fenêtres de texte qui ne se chevauchent pas. Le contenu d'une fenêtre peut "
"être modifié de différentes manières — en ajoutant du texte, en l'effaçant "
"ou en changeant son apparence — et la bibliothèque *curses* trouve quels "
"codes de contrôle doivent être envoyés au terminal pour produire le bon "
"résultat. *curses* ne fournit pas beaucoup de concepts d'interface "
"utilisateur tels que boutons, cases à cocher ou dialogues ; si vous avez "
"besoin de telles fonctionnalités, pensez à une bibliothèque d'interface "
"utilisateur comme `Urwid <https://pypi.org/project/urwid/>`_."
#: ../Doc/howto/curses.rst:46 #: ../Doc/howto/curses.rst:46
msgid "" msgid ""
@ -94,6 +123,16 @@ msgid ""
"older versions of curses carried by some proprietary Unixes may not support " "older versions of curses carried by some proprietary Unixes may not support "
"everything, though." "everything, though."
msgstr "" msgstr ""
"La bibliothèque *curses* a été écrite à l'origine pour BSD Unix ; les "
"dernières versions *System V* d'Unix d'AT&T ont ajouté de nombreuses "
"améliorations et de nouvelles fonctions. BSD *curses* n'est plus maintenu, "
"ayant été remplacé par *ncurses*, qui est une implémentation open-source de "
"l'interface AT&T. Si vous utilisez un Unix open-source comme Linux ou "
"FreeBSD, votre système utilise presque certainement *ncurses*. Comme la "
"plupart des versions commerciales actuelles d'Unix sont basées sur le code "
"*System V*, toutes les fonctions décrites ici seront probablement "
"disponibles. Les anciennes versions de *curses* portées par certains Unix "
"propriétaires pourraient ne pas gérer toutes les fonctions."
#: ../Doc/howto/curses.rst:56 #: ../Doc/howto/curses.rst:56
msgid "" msgid ""
@ -104,10 +143,16 @@ msgid ""
"API as curses but provides cursor-addressable text output and full support " "API as curses but provides cursor-addressable text output and full support "
"for mouse and keyboard input." "for mouse and keyboard input."
msgstr "" msgstr ""
"La version Windows de Python n'inclut pas le module :mod:`curses`. Une "
"version portée appelée `UniCurses <https://pypi.org/project/UniCurses>`_ est "
"disponible. Vous pouvez également essayer le `Windows console driver <http://"
"effbot.org/zone/console-index.htm>`_ écrit par Fredrik Lundh, qui n'utilise "
"pas la même API que *curses*, mais fournit une sortie texte avec gestion du "
"curseur et une prise en charge complète de la souris et du clavier."
#: ../Doc/howto/curses.rst:66 #: ../Doc/howto/curses.rst:66
msgid "The Python curses module" msgid "The Python curses module"
msgstr "" msgstr "Le module *curses* de Python"
#: ../Doc/howto/curses.rst:68 #: ../Doc/howto/curses.rst:68
msgid "" msgid ""
@ -119,6 +164,13 @@ msgid ""
"`mvwaddstr` into a single :meth:`~curses.window.addstr` method. You'll see " "`mvwaddstr` into a single :meth:`~curses.window.addstr` method. You'll see "
"this covered in more detail later." "this covered in more detail later."
msgstr "" msgstr ""
"Le module Python est une surcouche assez simple enrobant les fonctions C "
"fournies par *curses* ; si vous êtes déjà familier avec la programmation "
"*curses* en C, il est très facile de transférer cette connaissance à Python. "
"La plus grande différence est que l'interface Python simplifie les choses en "
"fusionnant différentes fonctions C telles que :c:func:`addstr`, :c:func:"
"`mvaddstr` et :c:func:`mvwaddstr` en une seule méthode :meth:`~curses.window."
"addstr`. Nous voyons cela plus en détail ci-après."
#: ../Doc/howto/curses.rst:76 #: ../Doc/howto/curses.rst:76
msgid "" msgid ""
@ -127,10 +179,15 @@ msgid ""
"that, see the Python library guide's section on ncurses, and the C manual " "that, see the Python library guide's section on ncurses, and the C manual "
"pages for ncurses. It will, however, give you the basic ideas." "pages for ncurses. It will, however, give you the basic ideas."
msgstr "" msgstr ""
"Ce guide pratique est une introduction à l'écriture de programmes en mode "
"texte avec *curses* et Python. Il n'essaie pas d'être un guide complet de "
"l'API *curses* ; pour cela, consultez la section du guide de la bibliothèque "
"Python sur *ncurses* et les pages du manuel C pour *ncurses*. Il vous donne "
"cependant les idées de base."
#: ../Doc/howto/curses.rst:83 #: ../Doc/howto/curses.rst:83
msgid "Starting and ending a curses application" msgid "Starting and ending a curses application"
msgstr "" msgstr "Lancement et arrêt une application *curses*"
#: ../Doc/howto/curses.rst:85 #: ../Doc/howto/curses.rst:85
msgid "" msgid ""
@ -141,6 +198,12 @@ msgid ""
"object representing the entire screen; this is usually called ``stdscr`` " "object representing the entire screen; this is usually called ``stdscr`` "
"after the name of the corresponding C variable. ::" "after the name of the corresponding C variable. ::"
msgstr "" msgstr ""
"Avant de faire quoi que ce soit, *curses* doit être initialisé. Appelez pour "
"cela la fonction :func:`~curses.initscr`, elle détermine le type de "
"terminal, envoie tous les codes de configuration requis au terminal et crée "
"diverses structures de données internes. En cas de succès, :func:`initscr` "
"renvoie un objet fenêtre représentant l'écran entier ; il est généralement "
"appelé ``stdscr`` d'après le nom de la variable C correspondante. ::"
#: ../Doc/howto/curses.rst:96 #: ../Doc/howto/curses.rst:96
msgid "" msgid ""
@ -148,6 +211,10 @@ msgid ""
"screen, in order to be able to read keys and only display them under certain " "screen, in order to be able to read keys and only display them under certain "
"circumstances. This requires calling the :func:`~curses.noecho` function. ::" "circumstances. This requires calling the :func:`~curses.noecho` function. ::"
msgstr "" msgstr ""
"Habituellement, les applications *curses* désactivent l'écho automatique des "
"touches à l'écran, afin de pouvoir lire les touches et ne les afficher que "
"dans certaines circonstances. Cela nécessite d'appeler la fonction :func:"
"`~curses.noecho`. ::"
#: ../Doc/howto/curses.rst:103 #: ../Doc/howto/curses.rst:103
msgid "" msgid ""
@ -155,6 +222,10 @@ msgid ""
"requiring the Enter key to be pressed; this is called cbreak mode, as " "requiring the Enter key to be pressed; this is called cbreak mode, as "
"opposed to the usual buffered input mode. ::" "opposed to the usual buffered input mode. ::"
msgstr "" msgstr ""
"Également, les applications réagissent généralement instantanément aux "
"touches sans qu'il soit nécessaire d'appuyer sur la touche Entrée ; c'est ce "
"qu'on appelle le mode *cbreak*, par opposition au mode d'entrée habituel "
"avec un tampon. ::"
#: ../Doc/howto/curses.rst:109 #: ../Doc/howto/curses.rst:109
msgid "" msgid ""
@ -165,12 +236,21 @@ msgid ""
"const:`curses.KEY_LEFT`. To get curses to do the job, you'll have to enable " "const:`curses.KEY_LEFT`. To get curses to do the job, you'll have to enable "
"keypad mode. ::" "keypad mode. ::"
msgstr "" msgstr ""
"Les terminaux renvoient généralement les touches spéciales, telles que les "
"touches de curseur ou les touches de navigation (Page précédente et Accueil "
"par exemple), comme une séquence d'échappement sur plusieurs octets. Bien "
"que vous puissiez écrire votre application pour vous attendre à de telles "
"séquences et les traiter en conséquence, *curses* peut le faire pour vous, "
"renvoyant une valeur spéciale telle que :const:`curses.KEY_LEFT`. Pour que "
"*curses* fasse le travail, vous devez activer le mode *keypad*. ::"
#: ../Doc/howto/curses.rst:118 #: ../Doc/howto/curses.rst:118
msgid "" msgid ""
"Terminating a curses application is much easier than starting one. You'll " "Terminating a curses application is much easier than starting one. You'll "
"need to call::" "need to call::"
msgstr "" msgstr ""
"Arrêter une application *curses* est beaucoup plus facile que d'en démarrer "
"une. Appelez ::"
#: ../Doc/howto/curses.rst:125 #: ../Doc/howto/curses.rst:125
msgid "" msgid ""
@ -178,6 +258,9 @@ msgid ""
"`~curses.endwin` function to restore the terminal to its original operating " "`~curses.endwin` function to restore the terminal to its original operating "
"mode. ::" "mode. ::"
msgstr "" msgstr ""
"pour inverser les réglages du terminal mis en place pour *curses*. Ensuite, "
"appelez la fonction :func:`~curses.enddwin` pour restaurer le terminal dans "
"son mode de fonctionnement original. ::"
#: ../Doc/howto/curses.rst:131 #: ../Doc/howto/curses.rst:131
msgid "" msgid ""
@ -187,12 +270,21 @@ msgid ""
"raises an uncaught exception. Keys are no longer echoed to the screen when " "raises an uncaught exception. Keys are no longer echoed to the screen when "
"you type them, for example, which makes using the shell difficult." "you type them, for example, which makes using the shell difficult."
msgstr "" msgstr ""
"Un problème courant lors du débogage d'une application *curses* est de se "
"retrouver avec un terminal sans queue ni tête lorsque l'application meurt "
"sans restaurer le terminal à son état précédent. Avec Python, cela arrive "
"souvent lorsque votre code est bogué et lève une exception non interceptée. "
"Les touches ne sont plus répétées à l'écran lorsque vous les tapez, par "
"exemple, ce qui rend l'utilisation de l'interface de commande du *shell* "
"difficile."
#: ../Doc/howto/curses.rst:137 #: ../Doc/howto/curses.rst:137
msgid "" msgid ""
"In Python you can avoid these complications and make debugging much easier " "In Python you can avoid these complications and make debugging much easier "
"by importing the :func:`curses.wrapper` function and using it like this::" "by importing the :func:`curses.wrapper` function and using it like this::"
msgstr "" msgstr ""
"En Python, vous pouvez éviter ces complications et faciliter le débogage en "
"important la fonction :func:`curses.wrapper` et en l'utilisant comme suit ::"
#: ../Doc/howto/curses.rst:156 #: ../Doc/howto/curses.rst:156
msgid "" msgid ""
@ -206,10 +298,19 @@ msgid ""
"funny state on exception and you'll be able to read the exception's message " "funny state on exception and you'll be able to read the exception's message "
"and traceback." "and traceback."
msgstr "" msgstr ""
"La fonction :func:`~curses.wrapper` prend un objet appelable et fait les "
"initialisations décrites ci-dessus, initialisant également les couleurs si "
"la gestion des couleurs est possible. :func:`wrapper` lance l'appelable "
"fourni. Une fois que l'appelable termine, :func:`wrapper` restaure l'état "
"d'origine du terminal. L'appelable est appelé à l'intérieur d'un :keyword:"
"`try`...\\ :keyword:`except` qui capture les exceptions, restaure l'état du "
"terminal, puis relève l'exception. Par conséquent, votre terminal ne reste "
"pas dans un drôle d'état au moment de l'exception et vous pourrez lire le "
"message de l'exception et la trace de la pile d'appels."
#: ../Doc/howto/curses.rst:168 #: ../Doc/howto/curses.rst:168
msgid "Windows and Pads" msgid "Windows and Pads"
msgstr "" msgstr "Fenêtres et tampons (*pads* en anglais)"
#: ../Doc/howto/curses.rst:170 #: ../Doc/howto/curses.rst:170
msgid "" msgid ""
@ -217,6 +318,10 @@ msgid ""
"rectangular area of the screen, and supports methods to display text, erase " "rectangular area of the screen, and supports methods to display text, erase "
"it, allow the user to input strings, and so forth." "it, allow the user to input strings, and so forth."
msgstr "" msgstr ""
"Les fenêtres sont l'abstraction de base de *curses*. Un objet fenêtre "
"représente une zone rectangulaire de l'écran qui gère des méthodes pour "
"afficher du texte, l'effacer, permettre à l'utilisateur de saisir des "
"chaînes, etc."
#: ../Doc/howto/curses.rst:174 #: ../Doc/howto/curses.rst:174
msgid "" msgid ""
@ -227,6 +332,12 @@ msgid ""
"newwin` function creates a new window of a given size, returning the new " "newwin` function creates a new window of a given size, returning the new "
"window object. ::" "window object. ::"
msgstr "" msgstr ""
"L'objet ``stdscr`` renvoyé par la fonction :func:`~curses.initscr` est un "
"objet fenêtre qui couvre l'écran entier. De nombreux programmes peuvent "
"n'avoir besoin que de cette fenêtre unique, mais vous pouvez diviser l'écran "
"en fenêtres plus petites, afin de les redessiner ou de les effacer "
"séparément. La fonction :func:`~curses.newwin` crée une nouvelle fenêtre "
"d'une taille donnée, renvoyant le nouvel objet fenêtre. ::"
#: ../Doc/howto/curses.rst:185 #: ../Doc/howto/curses.rst:185
msgid "" msgid ""
@ -237,6 +348,13 @@ msgid ""
"difference from most other computer applications, but it's been part of " "difference from most other computer applications, but it's been part of "
"curses since it was first written, and it's too late to change things now." "curses since it was first written, and it's too late to change things now."
msgstr "" msgstr ""
"Notez que le système de coordonnées utilisé dans *curses* est inhabituel. "
"Les coordonnées sont toujours passées dans l'ordre *y,x* et le coin "
"supérieur gauche d'une fenêtre a pour coordonnées (0,0). Ceci rompt la "
"convention normale des coordonnées où la coordonnée *x* vient en premier. "
"C'est une différence malheureuse par rapport à la plupart des autres "
"applications informatiques, mais elle fait partie de *curses* depuis qu'il a "
"été écrit et il est trop tard pour changer les choses maintenant."
#: ../Doc/howto/curses.rst:193 #: ../Doc/howto/curses.rst:193
msgid "" msgid ""
@ -245,6 +363,10 @@ msgid ""
"sizes. Legal coordinates will then extend from ``(0,0)`` to ``(curses.LINES " "sizes. Legal coordinates will then extend from ``(0,0)`` to ``(curses.LINES "
"- 1, curses.COLS - 1)``." "- 1, curses.COLS - 1)``."
msgstr "" msgstr ""
"Votre application peut déterminer la taille de l'écran en utilisant les "
"variables :data:`curses.LINES` et :data:`curses.COLS` pour obtenir les "
"tailles *y* et *x*. Les coordonnées licites s'étendent alors de ``(0,0)`` à "
"``(curses.LINES - 1, curses.COLS - 1)``."
#: ../Doc/howto/curses.rst:198 #: ../Doc/howto/curses.rst:198
msgid "" msgid ""
@ -252,6 +374,9 @@ msgid ""
"immediately show up on the display. Instead you must call the :meth:" "immediately show up on the display. Instead you must call the :meth:"
"`~curses.window.refresh` method of window objects to update the screen." "`~curses.window.refresh` method of window objects to update the screen."
msgstr "" msgstr ""
"Quand vous appelez une méthode pour afficher ou effacer du texte, "
"l'affichage ne le reflète pas immédiatement. Vous devez appeler la méthode :"
"meth:`~curses.window.refresh` des objets fenêtre pour mettre à jour l'écran."
#: ../Doc/howto/curses.rst:203 #: ../Doc/howto/curses.rst:203
msgid "" msgid ""
@ -263,6 +388,14 @@ msgid ""
"and then clears the window, there's no need to send the original text " "and then clears the window, there's no need to send the original text "
"because they're never visible." "because they're never visible."
msgstr "" msgstr ""
"C'est parce que *curses* a été écrit du temps des terminaux avec une "
"connexion à 300 bauds seulement ; avec ces terminaux, il était important de "
"minimiser le temps passé à redessiner l'écran. *curses* calcule donc les "
"modifications à apporter à l'écran pour les afficher de la manière la plus "
"efficace au moment où la méthode :meth:`refresh` est appelée. Par exemple, "
"si votre programme affiche du texte dans une fenêtre puis efface cette "
"fenêtre, il n'est pas nécessaire de l'afficher puisqu'il ne sera jamais "
"visible."
#: ../Doc/howto/curses.rst:212 #: ../Doc/howto/curses.rst:212
msgid "" msgid ""
@ -273,6 +406,14 @@ msgid ""
"redrawn before pausing to wait for user input, by first calling ``stdscr." "redrawn before pausing to wait for user input, by first calling ``stdscr."
"refresh()`` or the :meth:`refresh` method of some other relevant window." "refresh()`` or the :meth:`refresh` method of some other relevant window."
msgstr "" msgstr ""
"Pratiquement, le fait de devoir indiquer explicitement à *curses* de "
"redessiner une fenêtre ne rend pas la programmation plus compliquée. La "
"plupart des programmes effectuent une rafale de traitements puis attendent "
"qu'une touche soit pressée ou toute autre action de la part de "
"l'utilisateur. Tout ce que vous avez à faire consiste à vous assurer que "
"l'écran a bien été redessiné avant d'attendre une entrée utilisateur, en "
"appelant d'abord ``stdscr.refresh()`` ou la méthode :meth:`refresh` de la "
"fenêtre adéquate."
#: ../Doc/howto/curses.rst:220 #: ../Doc/howto/curses.rst:220
msgid "" msgid ""
@ -282,6 +423,12 @@ msgid ""
"giving the coordinates of the on-screen area where a subsection of the pad " "giving the coordinates of the on-screen area where a subsection of the pad "
"will be displayed. ::" "will be displayed. ::"
msgstr "" msgstr ""
"Un tampon (*pad* en anglais) est une forme spéciale de fenêtre ; il peut "
"être plus grand que l'écran effectif et il est possible de n'afficher qu'une "
"partie du tampon à la fois. La création d'un tampon nécessite de fournir sa "
"hauteur et sa largeur, tandis que pour le rafraîchissement du tampon, vous "
"devez fournir les coordonnées de la zone de l'écran où une partie du tampon "
"sera affichée."
#: ../Doc/howto/curses.rst:241 #: ../Doc/howto/curses.rst:241
msgid "" msgid ""
@ -291,6 +438,11 @@ msgid ""
"Beyond that difference, pads are exactly like ordinary windows and support " "Beyond that difference, pads are exactly like ordinary windows and support "
"the same methods." "the same methods."
msgstr "" msgstr ""
"L'appel à :meth:`refresh` affiche une partie du tampon dans le rectangle "
"formé par les coins de coordonnées (5,5) et (20,75) de l'écran ; le coin "
"supérieur gauche de la partie affichée a pour coordonnées (0,0) dans le "
"tampon. À part cette différence, les tampons sont exactement comme les "
"fenêtres ordinaires et gèrent les mêmes méthodes."
#: ../Doc/howto/curses.rst:247 #: ../Doc/howto/curses.rst:247
msgid "" msgid ""
@ -298,28 +450,39 @@ msgid ""
"way to update the screen and prevent annoying screen flicker as each part of " "way to update the screen and prevent annoying screen flicker as each part of "
"the screen gets updated. :meth:`refresh` actually does two things:" "the screen gets updated. :meth:`refresh` actually does two things:"
msgstr "" msgstr ""
"Si vous avez plusieurs fenêtres et tampons sur l'écran, il existe un moyen "
"plus efficace pour rafraîchir l'écran et éviter des scintillements agaçants "
"à chaque mise à jour. :meth:`refresh` effectue en fait deux choses :"
#: ../Doc/howto/curses.rst:252 #: ../Doc/howto/curses.rst:252
msgid "" msgid ""
"Calls the :meth:`~curses.window.noutrefresh` method of each window to update " "Calls the :meth:`~curses.window.noutrefresh` method of each window to update "
"an underlying data structure representing the desired state of the screen." "an underlying data structure representing the desired state of the screen."
msgstr "" msgstr ""
"elle appelle la méthode :meth:`~curses.window.noutrefresh` de chaque fenêtre "
"pour mettre à jour les données sous-jacentes qui permettent d'obtenir "
"l'affichage voulu ;"
#: ../Doc/howto/curses.rst:255 #: ../Doc/howto/curses.rst:255
msgid "" msgid ""
"Calls the function :func:`~curses.doupdate` function to change the physical " "Calls the function :func:`~curses.doupdate` function to change the physical "
"screen to match the desired state recorded in the data structure." "screen to match the desired state recorded in the data structure."
msgstr "" msgstr ""
"elle appelle la fonction :func:`~curses.doupdate` pour modifier l'écran "
"physique afin de correspondre à l'état défini par les données sous-jacentes."
#: ../Doc/howto/curses.rst:258 #: ../Doc/howto/curses.rst:258
msgid "" msgid ""
"Instead you can call :meth:`noutrefresh` on a number of windows to update " "Instead you can call :meth:`noutrefresh` on a number of windows to update "
"the data structure, and then call :func:`doupdate` to update the screen." "the data structure, and then call :func:`doupdate` to update the screen."
msgstr "" msgstr ""
"Vous pouvez ainsi appeler :meth:`noutrefresh` sur les fenêtres dont vous "
"voulez mettre à jour des données, puis :func:`doupdate` pour mettre à jour "
"l'écran."
#: ../Doc/howto/curses.rst:264 #: ../Doc/howto/curses.rst:264
msgid "Displaying Text" msgid "Displaying Text"
msgstr "" msgstr "Affichage de texte"
#: ../Doc/howto/curses.rst:266 #: ../Doc/howto/curses.rst:266
msgid "" msgid ""
@ -331,6 +494,14 @@ msgid ""
"allows specifying a window to use instead of using ``stdscr`` by default. :c:" "allows specifying a window to use instead of using ``stdscr`` by default. :c:"
"func:`mvwaddstr` allows specifying both a window and a coordinate." "func:`mvwaddstr` allows specifying both a window and a coordinate."
msgstr "" msgstr ""
"D'un point de vue de programmeur C, *curses* peut parfois ressembler à un "
"enchevêtrement de fonctions, chacune ayant sa subtilité. Par exemple, :c:"
"func:`addstr` affiche une chaîne à la position actuelle du curseur de la "
"fenêtre ``stdscr``, alors que :c:func:`mvaddstr` se déplace d'abord "
"jusqu'aux coordonnées (y,x) avant d'afficher la chaîne. :c:func:`waddstr` "
"est comme :c:func:`addstr`, mais permet de spécifier la fenêtre au lieu "
"d'utiliser ``stdscr`` par défaut. :c:func:`mvwaddstr` permet de spécifier à "
"la fois les coordonnées et la fenêtre."
#: ../Doc/howto/curses.rst:275 #: ../Doc/howto/curses.rst:275
msgid "" msgid ""
@ -339,10 +510,14 @@ msgid ""
"addstr` accept multiple argument forms. Usually there are four different " "addstr` accept multiple argument forms. Usually there are four different "
"forms." "forms."
msgstr "" msgstr ""
"Heureusement, l'interface Python masque tous ces détails. ``stdscr`` est un "
"objet fenêtre comme les autres et les méthodes telles que :meth:`~curses."
"window.addstr` acceptent leurs arguments sous de multiples formes, "
"habituellement quatre."
#: ../Doc/howto/curses.rst:281 #: ../Doc/howto/curses.rst:281
msgid "Form" msgid "Form"
msgstr "" msgstr "Forme"
#: ../Doc/howto/curses.rst:281 ../Doc/howto/curses.rst:350 #: ../Doc/howto/curses.rst:281 ../Doc/howto/curses.rst:350
msgid "Description" msgid "Description"
@ -350,39 +525,45 @@ msgstr "Description"
#: ../Doc/howto/curses.rst:283 #: ../Doc/howto/curses.rst:283
msgid "*str* or *ch*" msgid "*str* or *ch*"
msgstr "" msgstr "*str* ou *ch*"
#: ../Doc/howto/curses.rst:283 #: ../Doc/howto/curses.rst:283
msgid "Display the string *str* or character *ch* at the current position" msgid "Display the string *str* or character *ch* at the current position"
msgstr "" msgstr "Affiche la chaîne *str* ou le caractère *ch* à la position actuelle"
#: ../Doc/howto/curses.rst:286 #: ../Doc/howto/curses.rst:286
msgid "*str* or *ch*, *attr*" msgid "*str* or *ch*, *attr*"
msgstr "" msgstr "*str* ou *ch*, *attr*"
#: ../Doc/howto/curses.rst:286 #: ../Doc/howto/curses.rst:286
msgid "" msgid ""
"Display the string *str* or character *ch*, using attribute *attr* at the " "Display the string *str* or character *ch*, using attribute *attr* at the "
"current position" "current position"
msgstr "" msgstr ""
"Affiche la chaîne *str* ou le caractère *ch*, en utilisant l'attribut *attr* "
"à la position actuelle"
#: ../Doc/howto/curses.rst:290 #: ../Doc/howto/curses.rst:290
msgid "*y*, *x*, *str* or *ch*" msgid "*y*, *x*, *str* or *ch*"
msgstr "" msgstr "*y*, *x*, *str* ou *ch*"
#: ../Doc/howto/curses.rst:290 #: ../Doc/howto/curses.rst:290
msgid "Move to position *y,x* within the window, and display *str* or *ch*" msgid "Move to position *y,x* within the window, and display *str* or *ch*"
msgstr "" msgstr ""
"Se déplace à la position *y,x* dans la fenêtre et affiche la chaîne *str* ou "
"le caractère *ch*"
#: ../Doc/howto/curses.rst:293 #: ../Doc/howto/curses.rst:293
msgid "*y*, *x*, *str* or *ch*, *attr*" msgid "*y*, *x*, *str* or *ch*, *attr*"
msgstr "" msgstr "*y*, *x*, *str* ou *ch*, *attr*"
#: ../Doc/howto/curses.rst:293 #: ../Doc/howto/curses.rst:293
msgid "" msgid ""
"Move to position *y,x* within the window, and display *str* or *ch*, using " "Move to position *y,x* within the window, and display *str* or *ch*, using "
"attribute *attr*" "attribute *attr*"
msgstr "" msgstr ""
"Se déplace à la position *y,x* dans la fenêtre et affiche la chaîne *str* ou "
"le caractère *ch* en utilisant l'attribut *attr*"
#: ../Doc/howto/curses.rst:297 #: ../Doc/howto/curses.rst:297
msgid "" msgid ""
@ -390,6 +571,9 @@ msgid ""
"underline, reverse code, or in color. They'll be explained in more detail " "underline, reverse code, or in color. They'll be explained in more detail "
"in the next subsection." "in the next subsection."
msgstr "" msgstr ""
"Les attributs permettent de mettre en valeur du texte : gras, souligné, mode "
"vidéo inversé ou en couleur. Nous les voyons plus en détail dans la section "
"suivante."
#: ../Doc/howto/curses.rst:302 #: ../Doc/howto/curses.rst:302
msgid "" msgid ""
@ -399,12 +583,21 @@ msgid ""
"window's :attr:`encoding` attribute; this defaults to the default system " "window's :attr:`encoding` attribute; this defaults to the default system "
"encoding as returned by :func:`locale.getpreferredencoding`." "encoding as returned by :func:`locale.getpreferredencoding`."
msgstr "" msgstr ""
"La méthode :meth:`~curses.window.addstr` prend en argument une chaîne ou une "
"suite d'octets Python. Le contenu des chaînes d'octets est envoyé vers le "
"terminal tel quel. Les chaînes sont encodées en octets en utilisant la "
"valeur de l'attribut :attr:`encoding` de la fenêtre ; c'est par défaut "
"l'encodage du système tel que renvoyé par :func:`locale."
"getpreferredencoding`."
#: ../Doc/howto/curses.rst:309 #: ../Doc/howto/curses.rst:309
msgid "" msgid ""
"The :meth:`~curses.window.addch` methods take a character, which can be " "The :meth:`~curses.window.addch` methods take a character, which can be "
"either a string of length 1, a bytestring of length 1, or an integer." "either a string of length 1, a bytestring of length 1, or an integer."
msgstr "" msgstr ""
"Les méthodes :meth:`~curses.window.addch` prennent un caractère, soit sous "
"la forme d'une chaîne de longueur 1, d'une chaîne d'octets de longueur 1 ou "
"d'un entier."
#: ../Doc/howto/curses.rst:312 #: ../Doc/howto/curses.rst:312
msgid "" msgid ""
@ -413,6 +606,11 @@ msgid ""
"symbol, and :const:`ACS_ULCORNER` is the upper left corner of a box (handy " "symbol, and :const:`ACS_ULCORNER` is the upper left corner of a box (handy "
"for drawing borders). You can also use the appropriate Unicode character." "for drawing borders). You can also use the appropriate Unicode character."
msgstr "" msgstr ""
"Des constantes sont disponibles pour étendre les caractères ; ces constantes "
"sont des entiers supérieurs à 255. Par exemple, :const:`ACS_PLMINUS` "
"correspond au symbole +/- et :const:`ACS_ULCORNER` correspond au coin en "
"haut et à gauche d'une boîte (utile pour dessiner des encadrements). Vous "
"pouvez aussi utiliser les caractères Unicode adéquats."
#: ../Doc/howto/curses.rst:318 #: ../Doc/howto/curses.rst:318
msgid "" msgid ""
@ -424,6 +622,14 @@ msgid ""
"some location where it won't be distracting; it can be confusing to have the " "some location where it won't be distracting; it can be confusing to have the "
"cursor blinking at some apparently random location." "cursor blinking at some apparently random location."
msgstr "" msgstr ""
"Windows se souvient de l'endroit où le curseur était positionné lors de la "
"dernière opération, de manière à ce que si vous n'utilisez pas les "
"coordonnées *y,x*, l'affichage se produit au dernier endroit utilisé. Vous "
"pouvez aussi déplacer le curseur avec la méthode ``move(y,x)``. Comme "
"certains terminaux affichent un curseur clignotant, vous pouvez ainsi vous "
"assurer que celui-ci est positionné à un endroit où il ne distrait pas "
"l'utilisateur (il peut être déroutant d'avoir un curseur qui clignote à des "
"endroits apparemment aléatoires)."
#: ../Doc/howto/curses.rst:326 #: ../Doc/howto/curses.rst:326
msgid "" msgid ""
@ -434,10 +640,17 @@ msgid ""
"attempt to suppress the flashing cursor, and you won't need to worry about " "attempt to suppress the flashing cursor, and you won't need to worry about "
"leaving it in odd locations." "leaving it in odd locations."
msgstr "" msgstr ""
"Si votre application n'a pas besoin d'un curseur clignotant, vous pouvez "
"appeler ``curs_set(False)`` pour le rendre invisible. Par souci de "
"compatibilité avec les anciennes versions de *curses*, il existe la fonction "
"``leaveok(bool)`` qui est un synonyme de :func:`~curses.curs_set`. Quand "
"*bool* vaut ``True``, la bibliothèque *curses* essaie de supprimer le "
"curseur clignotant et vous n'avez plus besoin de vous soucier de le laisser "
"trainer à des endroits bizarres."
#: ../Doc/howto/curses.rst:335 #: ../Doc/howto/curses.rst:335
msgid "Attributes and Color" msgid "Attributes and Color"
msgstr "" msgstr "Attributs et couleurs"
#: ../Doc/howto/curses.rst:337 #: ../Doc/howto/curses.rst:337
msgid "" msgid ""
@ -446,6 +659,11 @@ msgid ""
"to highlight certain words. curses supports this by allowing you to specify " "to highlight certain words. curses supports this by allowing you to specify "
"an attribute for each cell on the screen." "an attribute for each cell on the screen."
msgstr "" msgstr ""
"Les caractères peuvent être affichés de différentes façons. Les lignes de "
"statut des applications en mode texte sont généralement affichées en mode "
"vidéo inversé ; vous pouvez avoir besoin de mettre en valeur certains mots. "
"À ces fins, *curses* vous permet de spécifier un attribut pour chaque "
"caractère à l'écran."
#: ../Doc/howto/curses.rst:342 #: ../Doc/howto/curses.rst:342
msgid "" msgid ""
@ -456,6 +674,13 @@ msgid ""
"being used, so it's safest to stick to the most commonly available " "being used, so it's safest to stick to the most commonly available "
"attributes, listed here." "attributes, listed here."
msgstr "" msgstr ""
"Un attribut est un entier dont chaque bit représente un attribut différent. "
"Vous pouvez essayer d'afficher du texte avec plusieurs attributs définis "
"simultanément mais *curses* ne garantit pas que toutes les combinaisons "
"soient prises en compte ou que le résultat soit visuellement différent. Cela "
"dépend de la capacité de chaque terminal utilisé, il est donc plus sage de "
"se cantonner aux attributs les plus communément utilisés, dont la liste est "
"fournie ci-dessous."
#: ../Doc/howto/curses.rst:350 #: ../Doc/howto/curses.rst:350
msgid "Attribute" msgid "Attribute"
@ -463,57 +688,59 @@ msgstr "Attribut"
#: ../Doc/howto/curses.rst:352 #: ../Doc/howto/curses.rst:352
msgid ":const:`A_BLINK`" msgid ":const:`A_BLINK`"
msgstr "" msgstr ":const:`A_BLINK`"
#: ../Doc/howto/curses.rst:352 #: ../Doc/howto/curses.rst:352
msgid "Blinking text" msgid "Blinking text"
msgstr "" msgstr "Texte clignotant"
#: ../Doc/howto/curses.rst:354 #: ../Doc/howto/curses.rst:354
msgid ":const:`A_BOLD`" msgid ":const:`A_BOLD`"
msgstr "" msgstr ":const:`A_BOLD`"
#: ../Doc/howto/curses.rst:354 #: ../Doc/howto/curses.rst:354
msgid "Extra bright or bold text" msgid "Extra bright or bold text"
msgstr "" msgstr "Texte en surbrillance ou en gras"
#: ../Doc/howto/curses.rst:356 #: ../Doc/howto/curses.rst:356
msgid ":const:`A_DIM`" msgid ":const:`A_DIM`"
msgstr "" msgstr ":const:`A_DIM`"
#: ../Doc/howto/curses.rst:356 #: ../Doc/howto/curses.rst:356
msgid "Half bright text" msgid "Half bright text"
msgstr "" msgstr "Texte en demi-ton"
#: ../Doc/howto/curses.rst:358 #: ../Doc/howto/curses.rst:358
msgid ":const:`A_REVERSE`" msgid ":const:`A_REVERSE`"
msgstr "" msgstr ":const:`A_REVERSE`"
#: ../Doc/howto/curses.rst:358 #: ../Doc/howto/curses.rst:358
msgid "Reverse-video text" msgid "Reverse-video text"
msgstr "" msgstr "Texte en mode vidéo inversé"
#: ../Doc/howto/curses.rst:360 #: ../Doc/howto/curses.rst:360
msgid ":const:`A_STANDOUT`" msgid ":const:`A_STANDOUT`"
msgstr "" msgstr ":const:`A_STANDOUT`"
#: ../Doc/howto/curses.rst:360 #: ../Doc/howto/curses.rst:360
msgid "The best highlighting mode available" msgid "The best highlighting mode available"
msgstr "" msgstr "Le meilleur mode de mis en valeur pour le texte"
#: ../Doc/howto/curses.rst:362 #: ../Doc/howto/curses.rst:362
msgid ":const:`A_UNDERLINE`" msgid ":const:`A_UNDERLINE`"
msgstr "" msgstr ":const:`A_UNDERLINE`"
#: ../Doc/howto/curses.rst:362 #: ../Doc/howto/curses.rst:362
msgid "Underlined text" msgid "Underlined text"
msgstr "" msgstr "Texte souligné"
#: ../Doc/howto/curses.rst:365 #: ../Doc/howto/curses.rst:365
msgid "" msgid ""
"So, to display a reverse-video status line on the top line of the screen, " "So, to display a reverse-video status line on the top line of the screen, "
"you could code::" "you could code::"
msgstr "" msgstr ""
"Ainsi, pour mettre la ligne de statut située en haut de l'écran en mode "
"vidéo inversé, vous pouvez coder ::"
#: ../Doc/howto/curses.rst:372 #: ../Doc/howto/curses.rst:372
msgid "" msgid ""
@ -521,6 +748,9 @@ msgid ""
"The most common such terminal is probably the Linux console, followed by " "The most common such terminal is probably the Linux console, followed by "
"color xterms." "color xterms."
msgstr "" msgstr ""
"La bibliothèque *curses* gère également les couleurs pour les terminaux "
"compatibles. Le plus répandu de ces terminaux est sûrement la console Linux, "
"suivie par *xterm* en couleurs."
#: ../Doc/howto/curses.rst:376 #: ../Doc/howto/curses.rst:376
msgid "" msgid ""
@ -533,6 +763,14 @@ msgid ""
"to the British spelling, you'll have to resign yourself to misspelling it " "to the British spelling, you'll have to resign yourself to misspelling it "
"for the sake of these functions.)" "for the sake of these functions.)"
msgstr "" msgstr ""
"Pour utiliser les couleurs, vous devez d'abord appeler la fonction :func:"
"`~curses.start_color` juste après avoir appelé :func:`~curses.initscr` afin "
"d'initialiser (la fonction :func:`curses.wrapper` le fait automatiquement). "
"Ensuite, la fonction :func:`~curses.has_colors` renvoie ``True`` si le "
"terminal utilisé gère les couleurs (note : *curses* utilise l'orthographe "
"américaine *color* et non pas l'orthographe britannique ou canadienne "
"*colour* ; si vous êtes habitué à l'orthographe britannique, vous devrez "
"vous résigner à mal l'orthographier tant que vous utilisez *curses*)."
#: ../Doc/howto/curses.rst:386 #: ../Doc/howto/curses.rst:386
msgid "" msgid ""
@ -543,10 +781,19 @@ msgid ""
"as :const:`A_REVERSE`, but again, such combinations are not guaranteed to " "as :const:`A_REVERSE`, but again, such combinations are not guaranteed to "
"work on all terminals." "work on all terminals."
msgstr "" msgstr ""
"La bibliothèque *curses* maintient un nombre restreint de paires de "
"couleurs, constituées d'une couleur de texte (*foreground*) et de fond "
"(*background*). Vous pouvez obtenir la valeur des attributs correspondant à "
"une paire de couleur avec la fonction :func:`~curses.color_pair` ; cette "
"valeur peut être combinée bit par bit (avec la fonction *OR*) avec les "
"autres attributs tels que :const:`A_REVERSE`,mais là encore, de telles "
"combinaisons risquent de ne pas fonctionner sur tous les terminaux."
#: ../Doc/howto/curses.rst:393 #: ../Doc/howto/curses.rst:393
msgid "An example, which displays a line of text using color pair 1::" msgid "An example, which displays a line of text using color pair 1::"
msgstr "" msgstr ""
"Un exemple d'affichage d'une ligne de texte en utilisant la paire de couleur "
"1 ::"
#: ../Doc/howto/curses.rst:398 #: ../Doc/howto/curses.rst:398
msgid "" msgid ""
@ -555,6 +802,11 @@ msgid ""
"pair *n*, to foreground color f and background color b. Color pair 0 is " "pair *n*, to foreground color f and background color b. Color pair 0 is "
"hard-wired to white on black, and cannot be changed." "hard-wired to white on black, and cannot be changed."
msgstr "" msgstr ""
"Comme indiqué auparavant, une paire de couleurs est constituée d'une couleur "
"de texte et d'une couleur de fond. La fonction ``init_pair(n, f, b)`` change "
"la définition de la paire de couleurs *n*, en définissant la couleur de "
"texte à *f* et la couleur de fond à *b*. La paire de couleurs 0 est codée en "
"dur à blanc sur noir et ne peut être modifiée."
#: ../Doc/howto/curses.rst:403 #: ../Doc/howto/curses.rst:403
msgid "" msgid ""
@ -564,12 +816,20 @@ msgid ""
"named constants for each of these colors: :const:`curses.COLOR_BLACK`, :" "named constants for each of these colors: :const:`curses.COLOR_BLACK`, :"
"const:`curses.COLOR_RED`, and so forth." "const:`curses.COLOR_RED`, and so forth."
msgstr "" msgstr ""
"Les couleurs sont numérotées et :func:`start_color` initialise 8 couleurs "
"basiques lors de l'activation du mode en couleurs. Ce sont : 0 pour noir "
"(*black*), 1 pour rouge (*red*), 2 pour vert (*green*), 3 pour jaune "
"(*yellow*), 4 pour bleu *(blue*), 5 pour magenta, 6 pour cyan et 7 pour "
"blanc (*white*). Le module :mod:`curses` définit des constantes nommées pour "
"chacune de ces couleurs : :const:`curses.COLOR_BLACK`, :const:`curses."
"COLOR_RED` et ainsi de suite."
#: ../Doc/howto/curses.rst:409 #: ../Doc/howto/curses.rst:409
msgid "" msgid ""
"Let's put all this together. To change color 1 to red text on a white " "Let's put all this together. To change color 1 to red text on a white "
"background, you would call::" "background, you would call::"
msgstr "" msgstr ""
"Testons tout ça. Pour changer la couleur 1 à rouge sur fond blanc, appelez ::"
#: ../Doc/howto/curses.rst:414 #: ../Doc/howto/curses.rst:414
msgid "" msgid ""
@ -577,6 +837,9 @@ msgid ""
"pair will change to the new colors. You can also display new text in this " "pair will change to the new colors. You can also display new text in this "
"color with::" "color with::"
msgstr "" msgstr ""
"Quand vous modifiez une paire de couleurs, tout le texte déjà affiché qui "
"utilise cette paire de couleur voit les nouvelles couleurs s'appliquer à "
"lui. Vous pouvez aussi afficher du nouveau texte dans cette couleur avec ::"
#: ../Doc/howto/curses.rst:420 #: ../Doc/howto/curses.rst:420
msgid "" msgid ""
@ -589,10 +852,19 @@ msgid ""
"there. If you're lucky enough to have such a talented terminal, consult " "there. If you're lucky enough to have such a talented terminal, consult "
"your system's man pages for more information." "your system's man pages for more information."
msgstr "" msgstr ""
"Les terminaux « de luxe » peuvent définir les couleurs avec des valeurs "
"*RGB*. Cela vous permet de modifier la couleur 1, habituellement rouge, en "
"violet ou bleu voire toute autre couleur selon votre goût. Malheureusement, "
"la console Linux ne gère pas cette fonctionnalité, je suis donc bien "
"incapable de la tester et de vous en fournir un exemple. Vous pouvez "
"vérifier si votre terminal la prend en charge en appelant :func:`~curses."
"can_change_color`, qui renvoie ``True`` en cas de succès. Si vous avez la "
"chance d'avoir un terminal aussi perfectionné, consultez les pages du manuel "
"de votre système pour obtenir plus d'informations."
#: ../Doc/howto/curses.rst:431 #: ../Doc/howto/curses.rst:431
msgid "User Input" msgid "User Input"
msgstr "" msgstr "Entrées de l'utilisateur"
#: ../Doc/howto/curses.rst:433 #: ../Doc/howto/curses.rst:433
msgid "" msgid ""
@ -601,10 +873,14 @@ msgid ""
"`Urwid <https://pypi.org/project/urwid/>`_ have more extensive collections " "`Urwid <https://pypi.org/project/urwid/>`_ have more extensive collections "
"of widgets.)" "of widgets.)"
msgstr "" msgstr ""
"La bibliothèque C *curses* ne propose que quelques mécanismes très simples "
"pour les entrées. Le module :mod:`curses` y ajoute un *widget* basique "
"d'entrée de texte (d'autres bibliothèques telles que `Urwid <https://pypi."
"org/project/urwid/>`_ ont un ensemble de *widgets* plus conséquent)."
#: ../Doc/howto/curses.rst:438 #: ../Doc/howto/curses.rst:438
msgid "There are two methods for getting input from a window:" msgid "There are two methods for getting input from a window:"
msgstr "" msgstr "Il y a deux méthodes pour obtenir des entrées dans une fenêtre :"
#: ../Doc/howto/curses.rst:440 #: ../Doc/howto/curses.rst:440
msgid "" msgid ""
@ -613,6 +889,10 @@ msgid ""
"called earlier. You can optionally specify a coordinate to which the cursor " "called earlier. You can optionally specify a coordinate to which the cursor "
"should be moved before pausing." "should be moved before pausing."
msgstr "" msgstr ""
":meth:`~curses.window.getch` rafraîchit l'écran et attend que l'utilisateur "
"appuie sur une touche, affichant cette touche si :func:`~curses.echo` a été "
"appelé auparavant. Vous pouvez en option spécifier des coordonnées où "
"positionner le curseur avant la mise en pause ;"
#: ../Doc/howto/curses.rst:445 #: ../Doc/howto/curses.rst:445
msgid "" msgid ""
@ -621,6 +901,11 @@ msgid ""
"special keys such as function keys return longer strings containing a key " "special keys such as function keys return longer strings containing a key "
"name such as ``KEY_UP`` or ``^G``." "name such as ``KEY_UP`` or ``^G``."
msgstr "" msgstr ""
":meth:`~curses.window.getkey` effectue la même chose mais convertit l'entier "
"en chaîne. Les caractères individuels sont renvoyés en chaînes de longueur 1 "
"alors que les touches spéciales (telles que les touches de fonction) "
"renvoient des chaînes plus longues contenant le nom de la touche (tel que "
"``KEY_UP`` ou ``^G``)."
#: ../Doc/howto/curses.rst:450 #: ../Doc/howto/curses.rst:450
msgid "" msgid ""
@ -633,6 +918,15 @@ msgid ""
"`getch`; if no input becomes available within a specified delay (measured in " "`getch`; if no input becomes available within a specified delay (measured in "
"tenths of a second), curses raises an exception." "tenths of a second), curses raises an exception."
msgstr "" msgstr ""
"Il est possible de ne pas attendre l'utilisateur en utilisant la méthode de "
"fenêtre :meth:`~curses.window.nodelay`. Après ``nodelay(True)``, les "
"méthodes de fenêtre :meth:`getch` et :meth:`getkey` deviennent non "
"bloquantes. Pour indiquer qu'aucune entrée n'a eu lieu, :meth:`getch` "
"renvoie ``curses.ERR`` (ayant pour valeur 1) et :meth:`getkey` lève une "
"exception. Il existe aussi la fonction :func:`~curses.halfdelay`, qui peut "
"être utilisée pour définir un délai maximal pour chaque :meth:`getch` ; si "
"aucune entrée n'est disponible dans le délai spécifié (mesuré en dixièmes de "
"seconde), *curses* lève une exception."
#: ../Doc/howto/curses.rst:460 #: ../Doc/howto/curses.rst:460
msgid "" msgid ""
@ -643,6 +937,13 @@ msgid ""
"`curses.KEY_HOME`, or :const:`curses.KEY_LEFT`. The main loop of your " "`curses.KEY_HOME`, or :const:`curses.KEY_LEFT`. The main loop of your "
"program may look something like this::" "program may look something like this::"
msgstr "" msgstr ""
"La méthode :meth:`getch` renvoie un entier ; s'il est entre 0 et 255, c'est "
"le code ASCII de la touche pressée. Les valeurs supérieures à 255 sont des "
"touches spéciales telles que Page Précédente, Accueil ou les touches du "
"curseur. Vous pouvez comparer la valeur renvoyée aux constantes :const:"
"`curses.KEY_PPAGE`, :const:`curses.KEY_HOME`, :const:`curses.KEY_LEFT`, etc. "
"La boucle principale de votre programme pourrait ressembler à quelque chose "
"comme ::"
#: ../Doc/howto/curses.rst:476 #: ../Doc/howto/curses.rst:476
msgid "" msgid ""
@ -653,6 +954,13 @@ msgid ""
"arguments and return the same type. For example, :func:`curses.ascii.ctrl` " "arguments and return the same type. For example, :func:`curses.ascii.ctrl` "
"returns the control character corresponding to its argument." "returns the control character corresponding to its argument."
msgstr "" msgstr ""
"Le module :mod:`curses.ascii` fournit des fonctions pour déterminer si "
"l'entier ou la chaîne de longueur 1 passés en arguments font partie de la "
"classe ASCII ; elles peuvent s'avérer utile pour écrire du code plus lisible "
"dans ce genre de boucles. Il fournit également des fonctions de conversion "
"qui prennent un entier ou une chaîne de longueur 1 en entrée et renvoient le "
"type correspondant au nom de la fonction. Par exemple, :func:`curses.ascii."
"ctrl` renvoie le caractère de contrôle correspondant à son paramètre."
#: ../Doc/howto/curses.rst:483 #: ../Doc/howto/curses.rst:483
msgid "" msgid ""
@ -662,6 +970,11 @@ msgid ""
"key, which terminates the string. It can optionally be limited to a fixed " "key, which terminates the string. It can optionally be limited to a fixed "
"number of characters. ::" "number of characters. ::"
msgstr "" msgstr ""
"Il existe aussi une méthode pour récupérer une chaîne entière, :meth:"
"`~curses.window.getstr`. Elle n'est pas beaucoup utilisée car son utilité "
"est limitée : les seules touches d'édition disponibles sont le retour "
"arrière et la touche Entrée, qui termine la chaîne. Elle peut, en option, "
"être limitée à un nombre fixé de caractères. ::"
#: ../Doc/howto/curses.rst:494 #: ../Doc/howto/curses.rst:494
msgid "" msgid ""
@ -670,15 +983,22 @@ msgid ""
"Textbox` class support editing with input validation and gathering the edit " "Textbox` class support editing with input validation and gathering the edit "
"results either with or without trailing spaces. Here's an example::" "results either with or without trailing spaces. Here's an example::"
msgstr "" msgstr ""
"Le module :mod:`curses.textpad` fournit un type de boîte texte qui gère des "
"touches de fonctions à la façon d'\\ *Emacs*. Plusieurs méthodes de la "
"classe :class:`~curses.textpad.Textbox` gèrent l'édition avec la validation "
"des entrées et le regroupement de l'entrée avec ou sans les espaces de début "
"et de fin. Par exemple ::"
#: ../Doc/howto/curses.rst:518 #: ../Doc/howto/curses.rst:518
msgid "" msgid ""
"See the library documentation on :mod:`curses.textpad` for more details." "See the library documentation on :mod:`curses.textpad` for more details."
msgstr "" msgstr ""
"Consultez la documentation de la bibliothèque pour plus de détails sur :mod:"
"`curses.textpad`."
#: ../Doc/howto/curses.rst:522 #: ../Doc/howto/curses.rst:522
msgid "For More Information" msgid "For More Information"
msgstr "" msgstr "Pour aller plus loin"
#: ../Doc/howto/curses.rst:524 #: ../Doc/howto/curses.rst:524
msgid "" msgid ""
@ -687,6 +1007,11 @@ msgid ""
"Python library page for the :mod:`curses` module is now reasonably " "Python library page for the :mod:`curses` module is now reasonably "
"complete. You should browse it next." "complete. You should browse it next."
msgstr "" msgstr ""
"Ce guide pratique ne couvre pas certains sujets avancés, tels que la lecture "
"du contenu de l'écran ou la capture des événements relatifs à la souris dans "
"une instance *xterm*, mais la page de la bibliothèque Python du module :mod:"
"`curses` est maintenant suffisamment complète. Nous vous encourageons à la "
"parcourir."
#: ../Doc/howto/curses.rst:529 #: ../Doc/howto/curses.rst:529
msgid "" msgid ""
@ -696,6 +1021,12 @@ msgid ""
"quirks, and provide complete lists of all the functions, attributes, and :" "quirks, and provide complete lists of all the functions, attributes, and :"
"const:`ACS_\\*` characters available to you." "const:`ACS_\\*` characters available to you."
msgstr "" msgstr ""
"Si vous vous posez des questions sur le fonctionnement précis de fonctions "
"*curses*, consultez les pages de manuel de l'implémentation *curses* de "
"votre système, que ce soit *ncurses* ou une version propriétaire Unix. Les "
"pages de manuel documentent toutes les bizarreries et vous donneront les "
"listes complètes des fonctions, attributs et codes :const:`ACS_\\*` des "
"caractères disponibles."
#: ../Doc/howto/curses.rst:536 #: ../Doc/howto/curses.rst:536
msgid "" msgid ""
@ -706,21 +1037,34 @@ msgid ""
"would be welcome; see `the Python Developer's Guide <https://devguide.python." "would be welcome; see `the Python Developer's Guide <https://devguide.python."
"org/>`_ to learn more about submitting patches to Python." "org/>`_ to learn more about submitting patches to Python."
msgstr "" msgstr ""
"Étant donné que l'API *curses* est si volumineuse, certaines fonctions ne "
"sont pas prises en charge dans l'interface Python. Souvent, ce n'est pas "
"parce qu'elles sont difficiles à implémenter, mais parce que personne n'en a "
"eu encore besoin. De plus, Python ne prend pas encore en charge la "
"bibliothèque de gestion des menus associée à *ncurses*. Les correctifs "
"ajoutant cette prise en charge seraient bienvenus ; reportez-vous au `guide "
"du développeur Python <https://devguide.python.org/>`_ pour apprendre "
"comment soumettre des améliorations à Python."
#: ../Doc/howto/curses.rst:544 #: ../Doc/howto/curses.rst:544
msgid "" msgid ""
"`Writing Programs with NCURSES <http://invisible-island.net/ncurses/ncurses-" "`Writing Programs with NCURSES <http://invisible-island.net/ncurses/ncurses-"
"intro.html>`_: a lengthy tutorial for C programmers." "intro.html>`_: a lengthy tutorial for C programmers."
msgstr "" msgstr ""
"`Writing Programs with NCURSES <http://invisible-island.net/ncurses/ncurses-"
"intro.html>`_ : un long tutoriel pour les programmeurs C (ressource en "
"anglais)."
#: ../Doc/howto/curses.rst:546 #: ../Doc/howto/curses.rst:546
msgid "`The ncurses man page <https://linux.die.net/man/3/ncurses>`_" msgid "`The ncurses man page <https://linux.die.net/man/3/ncurses>`_"
msgstr "" msgstr "`La page de manuel ncurses <https://linux.die.net/man/3/ncurses>`_"
#: ../Doc/howto/curses.rst:547 #: ../Doc/howto/curses.rst:547
msgid "" msgid ""
"`The ncurses FAQ <http://invisible-island.net/ncurses/ncurses.faq.html>`_" "`The ncurses FAQ <http://invisible-island.net/ncurses/ncurses.faq.html>`_"
msgstr "" msgstr ""
"`La FAQ ncurses <http://invisible-island.net/ncurses/ncurses.faq.html>`_ "
"(ressource en anglais)"
#: ../Doc/howto/curses.rst:548 #: ../Doc/howto/curses.rst:548
msgid "" msgid ""
@ -728,6 +1072,9 @@ msgid ""
"v=eN1eZtjLEnU>`_: video of a PyCon 2013 talk on controlling terminals using " "v=eN1eZtjLEnU>`_: video of a PyCon 2013 talk on controlling terminals using "
"curses or Urwid." "curses or Urwid."
msgstr "" msgstr ""
"`\"Use curses... don't swear\" <https://www.youtube.com/watch?"
"v=eN1eZtjLEnU>`_ : vidéo d'une conférence lors de la PyCon 2013 sur la "
"gestion des terminaux à l'aide de *curses* et *Urwid* (vidéo en anglais)."
#: ../Doc/howto/curses.rst:550 #: ../Doc/howto/curses.rst:550
msgid "" msgid ""
@ -735,3 +1082,6 @@ msgid ""
"console-applications-with-urwid>`_: video of a PyCon CA 2012 talk " "console-applications-with-urwid>`_: video of a PyCon CA 2012 talk "
"demonstrating some applications written using Urwid." "demonstrating some applications written using Urwid."
msgstr "" msgstr ""
"`\"Console Applications with Urwid\" <http://www.pyvideo.org/video/1568/"
"console-applications-with-urwid>`_ : vidéo d'une conférence lors de PyCon CA "
"2012 montrant quelques applications utilisant *Urwid*."

View File

@ -15,7 +15,7 @@ msgstr ""
#: ../Doc/howto/sockets.rst:5 #: ../Doc/howto/sockets.rst:5
msgid "Socket Programming HOWTO" msgid "Socket Programming HOWTO"
msgstr "" msgstr "Guide pratique : programmation avec les *sockets*"
#: ../Doc/howto/sockets.rst:0 #: ../Doc/howto/sockets.rst:0
msgid "Author" msgid "Author"
@ -38,6 +38,12 @@ msgid ""
"a lot of them), but I hope it will give you enough background to begin using " "a lot of them), but I hope it will give you enough background to begin using "
"them decently." "them decently."
msgstr "" msgstr ""
"Les connecteurs (*sockets*, en anglais) sont utilisés presque partout, mais "
"ils sont l'une des technologies les plus méconnues. En voici un aperçu très "
"général. Ce n'est pas vraiment un tutoriel — vous aurez encore du travail à "
"faire pour avoir un résultat opérationnel. Il ne couvre pas les détails (et "
"il y en a beaucoup), mais j'espère qu'il vous donnera suffisamment "
"d'informations pour commencer à les utiliser correctement."
#: ../Doc/howto/sockets.rst:20 #: ../Doc/howto/sockets.rst:20
msgid "Sockets" msgid "Sockets"
@ -76,6 +82,14 @@ msgid ""
"sockets exclusively; the web server it's talking to uses both \"server\" " "sockets exclusively; the web server it's talking to uses both \"server\" "
"sockets and \"client\" sockets." "sockets and \"client\" sockets."
msgstr "" msgstr ""
"Une partie de la difficulté à comprendre ces choses est que « connecteur » "
"peut désigner plusieurs choses très légèrement différentes, selon le "
"contexte. Faisons donc d'abord une distinction entre un connecteur "
 client » — point final d'une conversation — et un connecteur « serveur », "
"qui ressemble davantage à un standardiste. L'application cliente (votre "
"navigateur par exemple) utilise exclusivement des connecteurs « client » ; "
"le serveur web avec lequel elle parle utilise à la fois des connecteurs "
 serveur » et des connecteurs « client »."
#: ../Doc/howto/sockets.rst:40 #: ../Doc/howto/sockets.rst:40
msgid "History" msgid "History"
@ -88,6 +102,11 @@ msgid ""
"other forms of IPC that are faster, but for cross-platform communication, " "other forms of IPC that are faster, but for cross-platform communication, "
"sockets are about the only game in town." "sockets are about the only game in town."
msgstr "" msgstr ""
"Parmi les différentes formes d:abbr:`IPC (Inter Process Communication)`, "
"les connecteurs sont de loin les plus populaires. Sur une plate-forme "
"donnée, il est probable que d'autres formes d'\\ *IPC* soient plus rapides, "
"mais pour la communication entre plates-formes, les connecteurs sont à peu "
"près la seule solution valable."
#: ../Doc/howto/sockets.rst:47 #: ../Doc/howto/sockets.rst:47
msgid "" msgid ""
@ -96,6 +115,11 @@ msgid ""
"of sockets with INET makes talking to arbitrary machines around the world " "of sockets with INET makes talking to arbitrary machines around the world "
"unbelievably easy (at least compared to other schemes)." "unbelievably easy (at least compared to other schemes)."
msgstr "" msgstr ""
"Ils ont été inventés à Berkeley dans le cadre de la déclinaison *BSD* "
"d'Unix. Ils se sont répandus comme une traînée de poudre avec Internet. Et "
"pour cause : la combinaison des connecteurs avec *INET* rend le dialogue "
"avec nimporte quelle machine dans le monde entier incroyablement facile (du "
"moins par rapport à d'autres systèmes)."
#: ../Doc/howto/sockets.rst:54 #: ../Doc/howto/sockets.rst:54
msgid "Creating a Socket" msgid "Creating a Socket"
@ -106,6 +130,8 @@ msgid ""
"Roughly speaking, when you clicked on the link that brought you to this " "Roughly speaking, when you clicked on the link that brought you to this "
"page, your browser did something like the following::" "page, your browser did something like the following::"
msgstr "" msgstr ""
"Grosso modo, lorsque vous avez cliqué sur le lien qui vous a amené à cette "
"page, votre navigateur a fait quelque chose comme ceci ::"
#: ../Doc/howto/sockets.rst:64 #: ../Doc/howto/sockets.rst:64
msgid "" msgid ""
@ -114,12 +140,19 @@ msgid ""
"then be destroyed. That's right, destroyed. Client sockets are normally only " "then be destroyed. That's right, destroyed. Client sockets are normally only "
"used for one exchange (or a small set of sequential exchanges)." "used for one exchange (or a small set of sequential exchanges)."
msgstr "" msgstr ""
"Lorsque lappel à ``connect`` est terminé, le connecteur ``s`` peut être "
"utilisé pour envoyer une requête demandant le texte de la page. Le même "
"connecteur lira la réponse, puis sera mis au rebut. C'est exact, mis au "
"rebut. Les connecteurs clients ne sont normalement utilisés que pour un seul "
"échange (ou un petit ensemble d'échanges séquentiels)."
#: ../Doc/howto/sockets.rst:70 #: ../Doc/howto/sockets.rst:70
msgid "" msgid ""
"What happens in the web server is a bit more complex. First, the web server " "What happens in the web server is a bit more complex. First, the web server "
"creates a \"server socket\"::" "creates a \"server socket\"::"
msgstr "" msgstr ""
"Ce qui se passe dans le serveur web est un peu plus complexe. Tout d'abord, "
"le serveur web crée un « connecteur serveur » ::"
#: ../Doc/howto/sockets.rst:80 #: ../Doc/howto/sockets.rst:80
msgid "" msgid ""
@ -164,6 +197,8 @@ msgid ""
"Now that we have a \"server\" socket, listening on port 80, we can enter the " "Now that we have a \"server\" socket, listening on port 80, we can enter the "
"mainloop of the web server::" "mainloop of the web server::"
msgstr "" msgstr ""
"Maintenant que nous avons un connecteur « serveur », en écoute sur le port "
"80, nous pouvons entrer dans la boucle principale du serveur web ::"
#: ../Doc/howto/sockets.rst:106 #: ../Doc/howto/sockets.rst:106
msgid "" msgid ""
@ -180,6 +215,20 @@ msgid ""
"The two \"clients\" are free to chat it up - they are using some dynamically " "The two \"clients\" are free to chat it up - they are using some dynamically "
"allocated port which will be recycled when the conversation ends." "allocated port which will be recycled when the conversation ends."
msgstr "" msgstr ""
"Il y a en fait trois façons générales de faire fonctionner cette boucle : "
"mobiliser un fil d'exécution pour gérer les ``clientsocket``\\s, créer un "
"nouveau processus pour gérer les ``clientsocket``\\s, ou restructurer cette "
"application pour utiliser des connecteurs non bloquants, et multiplexer "
"entre notre connecteur « serveur » et n'importe quel ``clientsocket`` actif "
"en utilisant ``select``. Plus d'informations à ce sujet plus tard. La chose "
"importante à comprendre maintenant est la suivante : c'est *tout* ce que "
"fait un connecteur « serveur ». Il n'envoie aucune donnée. Il ne reçoit "
"aucune donnée. Il ne fait que produire des connecteurs « clients ». Chaque "
"``clientsocket`` est créé en réponse à un *autre* connecteur « client » qui "
"se connecte à l'hôte et au port auxquels nous sommes liés. Dès que nous "
"avons créé ce ``clientsocket``, nous retournons à l'écoute pour d'autres "
"connexions. Les deux « clients » sont libres de discuter — ils utilisent un "
"port alloué dynamiquement qui sera recyclé à la fin de la conversation."
#: ../Doc/howto/sockets.rst:121 #: ../Doc/howto/sockets.rst:121
msgid "IPC" msgid "IPC"
@ -205,10 +254,12 @@ msgid ""
"The :mod:`multiprocessing` integrates cross-platform IPC into a higher-level " "The :mod:`multiprocessing` integrates cross-platform IPC into a higher-level "
"API." "API."
msgstr "" msgstr ""
"Le :mod:`multiprocessing` intègre de lIPC multiplateforme dans une API de "
"plus haut niveau."
#: ../Doc/howto/sockets.rst:134 #: ../Doc/howto/sockets.rst:134
msgid "Using a Socket" msgid "Using a Socket"
msgstr "" msgstr "Utilisation d'un connecteur"
#: ../Doc/howto/sockets.rst:136 #: ../Doc/howto/sockets.rst:136
msgid "" msgid ""
@ -220,6 +271,14 @@ msgid ""
"in a request, or perhaps a signon. But that's a design decision - it's not a " "in a request, or perhaps a signon. But that's a design decision - it's not a "
"rule of sockets." "rule of sockets."
msgstr "" msgstr ""
"La première chose à noter, c'est que la prise « client » du navigateur web "
"et la prise « client » du serveur web sont des bêtes identiques. C'est-à-"
"dire qu'il s'agit d'une conversation « pair à pair ». Ou pour le dire "
"autrement, *en tant que concepteur, vous devrez décider quelles sont les "
"règles d'étiquette pour une conversation*. Normalement, la connexion via "
"``connect`` lance la conversation en envoyant une demande, ou peut-être un "
"signe. Mais c'est une décision de conception — ce n'est pas une règle des "
"connecteurs."
#: ../Doc/howto/sockets.rst:143 #: ../Doc/howto/sockets.rst:143
msgid "" msgid ""
@ -232,6 +291,16 @@ msgid ""
"reply. Without a ``flush`` in there, you may wait forever for the reply, " "reply. Without a ``flush`` in there, you may wait forever for the reply, "
"because the request may still be in your output buffer." "because the request may still be in your output buffer."
msgstr "" msgstr ""
"Il y a maintenant deux ensembles de verbes à utiliser pour la communication. "
"Vous pouvez utiliser ``send`` et ``recv``, ou vous pouvez transformer votre "
"connecteur client en une bête imitant un fichier et utiliser ``read`` et "
"``write``. C'est la façon dont Java présente ses connecteurs. Je ne vais pas "
"en parler ici, sauf pour vous avertir que vous devez utiliser ``flush`` sur "
"les connecteurs. Ce sont des « fichiers », mis en mémoire tampon, et une "
"erreur courante est d'« écrire » via ``write`` quelque chose, puis de "
 lire » via ``read`` pour obtenir une réponse. Sans un ``flush``, vous "
"pouvez attendre la réponse pour toujours, parce que la requête peut encore "
"être dans votre mémoire tampon de sortie."
#: ../Doc/howto/sockets.rst:152 #: ../Doc/howto/sockets.rst:152
msgid "" msgid ""
@ -243,6 +312,14 @@ msgid ""
"you how many bytes they handled. It is *your* responsibility to call them " "you how many bytes they handled. It is *your* responsibility to call them "
"again until your message has been completely dealt with." "again until your message has been completely dealt with."
msgstr "" msgstr ""
"Nous arrivons maintenant au principal écueil des connecteurs — ``send`` et "
"``recv`` fonctionnent sur les mémoires tampons du réseau. Ils ne traitent "
"pas nécessairement tous les octets que vous leur passez (ou que vous "
"attendez d'eux), car leur principal objectif est de gérer les tampons "
"réseau. En général, leur exécution se termine lorsque les tampons réseau "
"associés ont été remplis (``send``) ou vidés (``recv``). Ils vous indiquent "
"alors combien d'octets ils ont traité. Il est de *votre* responsabilité de "
"les rappeler jusqu'à ce que votre message ait été complètement traité."
#: ../Doc/howto/sockets.rst:160 #: ../Doc/howto/sockets.rst:160
msgid "" msgid ""
@ -251,6 +328,10 @@ msgid ""
"data on this connection. Ever. You may be able to send data successfully; " "data on this connection. Ever. You may be able to send data successfully; "
"I'll talk more about this later." "I'll talk more about this later."
msgstr "" msgstr ""
"Lorsqu'un ``recv`` renvoie 0 octet, cela signifie que l'autre partie a fermé "
"(ou est en train de fermer) la connexion. Vous ne recevrez plus de données "
"sur cette connexion. Jamais. Vous pouvez peut-être envoyer des données avec "
"succès. Jen parlerai plus tard."
#: ../Doc/howto/sockets.rst:165 #: ../Doc/howto/sockets.rst:165
msgid "" msgid ""
@ -306,6 +387,12 @@ msgid ""
"gets more complex. (And in C, it's not much worse, except you can't use " "gets more complex. (And in C, it's not much worse, except you can't use "
"``strlen`` if the message has embedded ``\\0``\\ s.)" "``strlen`` if the message has embedded ``\\0``\\ s.)"
msgstr "" msgstr ""
"Le code d'envoi ici est utilisable pour presque tous les systèmes de "
"messagerie — en Python, vous envoyez des chaînes de caractères, et vous "
"pouvez utiliser ``len()`` pour en déterminer la longueur (même si elle "
"contient des caractères ``\\0``). C'est surtout le code de réception qui "
"devient plus complexe. (Et en C, ce n'est pas bien pire, sauf que vous ne "
"pouvez pas utiliser ``strlen`` si le message contient des ``\\0``\\ s)."
#: ../Doc/howto/sockets.rst:223 #: ../Doc/howto/sockets.rst:223
msgid "" msgid ""
@ -317,6 +404,15 @@ msgid ""
"chunk size, (4096 or 8192 is frequently a good match for network buffer " "chunk size, (4096 or 8192 is frequently a good match for network buffer "
"sizes), and scanning what you've received for a delimiter." "sizes), and scanning what you've received for a delimiter."
msgstr "" msgstr ""
"Le plus simple est de faire du premier caractère du message un indicateur du "
"type de message, et de faire en sorte que le type détermine la longueur. "
"Vous avez maintenant deux ``recv``\\ s — le premier pour obtenir (au moins) "
"ce premier caractère afin de pouvoir déterminer la longueur, et le second "
"dans une boucle pour obtenir le reste. Si vous décidez de suivre la route "
"délimitée, vous recevrez un morceau de taille arbitraire (4096 ou 8192 est "
"fréquemment une bonne valeur pour correspondre à la taille de la mémoire "
"tampon du réseau), et vous analyserez ce que vous avez reçu pour trouver un "
"délimiteur."
#: ../Doc/howto/sockets.rst:231 #: ../Doc/howto/sockets.rst:231
msgid "" msgid ""
@ -326,6 +422,12 @@ msgid ""
"of a following message. You'll need to put that aside and hold onto it, " "of a following message. You'll need to put that aside and hold onto it, "
"until it's needed." "until it's needed."
msgstr "" msgstr ""
"Une subtilité dont il faut être conscient : si votre protocole de "
"conversation permet de renvoyer plusieurs messages les uns à la suite des "
"autres (sans aucune sorte de réponse), et que vous passez à ``recv`` une "
"taille de morceau arbitraire, vous pouvez en arriver à lire le début du "
"message suivant. Vous devrez alors le mettre de côté et le conserver, "
"jusqu'à ce que vous en ayez besoin."
#: ../Doc/howto/sockets.rst:237 #: ../Doc/howto/sockets.rst:237
msgid "" msgid ""
@ -338,6 +440,16 @@ msgid ""
"not always manage to get rid of everything in one pass. And despite having " "not always manage to get rid of everything in one pass. And despite having "
"read this, you will eventually get bit by it!" "read this, you will eventually get bit by it!"
msgstr "" msgstr ""
"Préfixer le message avec sa longueur (disons, sous la forme de 5 caractères "
"numériques) devient plus complexe, parce que (croyez-le ou non), vous pouvez "
"ne pas recevoir les 5 caractères en un seul ``recv``. Pour une utilisation "
"triviale, vous vous en tirerez à bon compte ; mais en cas de forte charge "
"réseau, votre code se cassera très rapidement, à moins que vous nutilisiez "
"deux boucles ``recv`` — la première pour déterminer la longueur, la deuxième "
"pour obtenir la partie « données » du message. Vilain. Cest aussi à ce "
"moment que vous découvrirez que « lenvoi » via ``send`` ne parvient pas "
"toujours à tout évacuer en un seul passage. Et bien que vous ayez lu cet "
"avertissement, vous finirez par vous faire avoir par cette subtilité !"
#: ../Doc/howto/sockets.rst:246 #: ../Doc/howto/sockets.rst:246
msgid "" msgid ""
@ -345,6 +457,10 @@ msgid ""
"competitive position), these enhancements are left as an exercise for the " "competitive position), these enhancements are left as an exercise for the "
"reader. Lets move on to cleaning up." "reader. Lets move on to cleaning up."
msgstr "" msgstr ""
"Pour garder une longueur raisonnable à cette page, pour forger votre "
"caractère (et afin de garder lavantage concurrentiel que jai sur vous), "
"ces améliorations ne seront pas abordées et sont laissées en exercice au "
"lecteur. Passons maintenant au nettoyage."
#: ../Doc/howto/sockets.rst:252 #: ../Doc/howto/sockets.rst:252
msgid "Binary Data" msgid "Binary Data"
@ -362,6 +478,18 @@ msgid ""
"order is host order, these do nothing, but where the machine is byte-" "order is host order, these do nothing, but where the machine is byte-"
"reversed, these swap the bytes around appropriately." "reversed, these swap the bytes around appropriately."
msgstr "" msgstr ""
"Il est parfaitement possible denvoyer des données binaires sur un "
"connecteur. Le gros problème est que toutes les machines nutilisent pas les "
"mêmes formats pour les données binaires. Par exemple, une puce Motorola code "
"l'entier 1, sous 16 bits, comme les deux octets hexadécimaux 00 01. Intel et "
"DEC, cependant, utilisent lordre doctets inverse — ce même 1 est codé 01 "
"00. Les bibliothèques de connecteurs ont des appels pour convertir des "
"entiers de 16 et 32 bits — ``ntohl, htonl, ntohs, htons`` où ``n`` signifie "
"*réseau* (*network*, en anglais) et ``h`` signifie *hôte*, ``s`` signifie "
"*court* (*short*, en anglais) et ``l`` signifie *long*. Lorsque lordre du "
"réseau est lordre de lhôte, ceux-ci ne font rien, mais lorsque la machine "
"utilise lordre doctets inverse, ceux-ci échangent les octets de manière "
"appropriée."
#: ../Doc/howto/sockets.rst:264 #: ../Doc/howto/sockets.rst:264
msgid "" msgid ""
@ -371,6 +499,13 @@ msgid ""
"The string \"0\" would be two bytes, while binary is four. Of course, this " "The string \"0\" would be two bytes, while binary is four. Of course, this "
"doesn't fit well with fixed-length messages. Decisions, decisions." "doesn't fit well with fixed-length messages. Decisions, decisions."
msgstr "" msgstr ""
"De nos jours, avec les machines 32 bits, la représentation *ASCII* des "
"données binaires est souvent plus compacte que la représentation binaire. "
"Cest parce quun nombre surprenant de fois, tous ces *longs* ont la valeur "
"0, ou peut-être 1. La chaîne « 0 » serait codée sur deux octets, alors "
"qu'elle le serait sur quatre en binaire. Bien sûr, cela ne fonctionne pas "
"très bien avec les messages de longueur fixe. Ah, les décisions, les "
"décisions…"
#: ../Doc/howto/sockets.rst:272 #: ../Doc/howto/sockets.rst:272
msgid "Disconnecting" msgid "Disconnecting"
@ -387,6 +522,15 @@ msgid ""
"same as ``shutdown(); close()``. So in most situations, an explicit " "same as ``shutdown(); close()``. So in most situations, an explicit "
"``shutdown`` is not needed." "``shutdown`` is not needed."
msgstr "" msgstr ""
"À proprement parler, vous êtes censé utiliser ``shutdown`` sur un connecteur "
"pour larrêter avant de le fermer via ``close``. Le ``shutdown`` est un "
"avertissement au connecteur de lautre côté. Selon largument que vous lui "
"passez, cela peut signifier « Je ne vais plus envoyer, mais je vais quand "
"même écouter », ou « Je nécoute pas, bon débarras ! ». La plupart des "
"bibliothèques de connecteurs, cependant, sont tellement habituées à ce que "
"les programmeurs négligent dutiliser ce morceau détiquette que normalement "
"un ``close`` est équivalent à ``shutdown() ; close()``. Ainsi, dans la "
"plupart des situations, un ``shutdown`` explicite nest pas nécessaire."
#: ../Doc/howto/sockets.rst:282 #: ../Doc/howto/sockets.rst:282
msgid "" msgid ""
@ -397,6 +541,13 @@ msgid ""
"complete request. The server sends a reply. If the ``send`` completes " "complete request. The server sends a reply. If the ``send`` completes "
"successfully then, indeed, the client was still receiving." "successfully then, indeed, the client was still receiving."
msgstr "" msgstr ""
"Une façon dutiliser efficacement le ``shutdown`` est dutiliser un échange "
"de type HTTP. Le client envoie une requête et effectue ensuite un "
"``shutdown(1)``. Cela indique au serveur que « ce client a fini denvoyer, "
"mais peut encore recevoir ». Le serveur peut détecter *EOF* par une "
"réception de 0 octet. Il peut supposer quil a la requête complète. Le "
"serveur envoie une réponse. Si le ``send`` se termine avec succès, alors, en "
"effet, le client était encore en train de recevoir."
#: ../Doc/howto/sockets.rst:289 #: ../Doc/howto/sockets.rst:289
msgid "" msgid ""
@ -407,10 +558,17 @@ msgid ""
"indefinitely, thinking you're just being slow. *Please* ``close`` your " "indefinitely, thinking you're just being slow. *Please* ``close`` your "
"sockets when you're done." "sockets when you're done."
msgstr "" msgstr ""
"Python pousse larrêt automatique un peu plus loin, et dit que lorsquun "
"connecteur est collecté par le ramasse-miette, il effectue automatiquement "
"une fermeture via ``close`` si elle est nécessaire. Mais cest une très "
"mauvaise habitude de sappuyer sur ce système. Si votre connecteur disparaît "
"sans avoir fait un ``close``, le connecteur à lautre bout peut rester "
"suspendu indéfiniment, pensant que vous êtes juste lent. Fermez vos "
"connecteurs quand vous avez terminé *sil vous plait*."
#: ../Doc/howto/sockets.rst:297 #: ../Doc/howto/sockets.rst:297
msgid "When Sockets Die" msgid "When Sockets Die"
msgstr "" msgstr "Quand les connecteurs meurent"
#: ../Doc/howto/sockets.rst:299 #: ../Doc/howto/sockets.rst:299
msgid "" msgid ""
@ -426,10 +584,23 @@ msgid ""
"automatic recycling of resources. In other words, if you do manage to kill " "automatic recycling of resources. In other words, if you do manage to kill "
"the thread, your whole process is likely to be screwed up." "the thread, your whole process is likely to be screwed up."
msgstr "" msgstr ""
"Le pire dans l'utilisation de connecteurs bloquants est probablement ce qui "
"se passe lorsque l'autre côté s'interrompt brutalement (sans faire de "
"fermeture via ``close``). Votre connecteur risque dattendre infiniment. TCP "
"est un protocole fiable, et il attendra très, très longtemps avant "
"d'abandonner une connexion. Si vous utilisez des fils dexécution, le fil "
"entier est pratiquement mort. Il n'y a pas grand-chose que vous puissiez "
"faire à ce sujet. Du moment que vous ne faites rien de stupide, comme tenir "
"un verrou verrouillé pendant une lecture bloquante, le fil ne consomme pas "
"vraiment beaucoup de ressources. N'essayez *pas* de tuer le fil — si les "
"fils sont plus efficients que les processus, c'est en partie parce qu'ils "
"évitent les coûts significatifs liés au recyclage automatique des "
"ressources. En d'autres termes, si vous parvenez à tuer le fil, tout votre "
"processus risque d'être foutu."
#: ../Doc/howto/sockets.rst:313 #: ../Doc/howto/sockets.rst:313
msgid "Non-blocking Sockets" msgid "Non-blocking Sockets"
msgstr "" msgstr "Connecteurs non bloquants"
#: ../Doc/howto/sockets.rst:315 #: ../Doc/howto/sockets.rst:315
msgid "" msgid ""
@ -469,6 +640,13 @@ msgid ""
"will grow large, buggy and suck CPU. So let's skip the brain-dead solutions " "will grow large, buggy and suck CPU. So let's skip the brain-dead solutions "
"and do it right." "and do it right."
msgstr "" msgstr ""
"La différence majeure de fonctionnement est que `send``, ``recv``, "
"``connect`` et ``accept`` peuvent rendre la main sans avoir rien fait. Vous "
"avez (bien sûr) un certain nombre de choix. Vous pouvez vérifier le code de "
"retour et les codes d'erreur et, en général, devenir fou. Si vous ne me "
"croyez pas, essayez un jour. Votre application va grossir, boguer et "
"vampiriser le processeur. Alors, évitons les solutions vouées à léchec dès "
"le départ et faisons les choses correctement."
#: ../Doc/howto/sockets.rst:334 #: ../Doc/howto/sockets.rst:334
msgid "Use ``select``." msgid "Use ``select``."
@ -494,6 +672,15 @@ msgid ""
"generally a sensible thing to do - give it a nice long timeout (say a " "generally a sensible thing to do - give it a nice long timeout (say a "
"minute) unless you have good reason to do otherwise." "minute) unless you have good reason to do otherwise."
msgstr "" msgstr ""
"Vous passez à ``select`` trois listes : la première contient tous les "
"connecteurs dont vous souhaiter lire le contenu ; la deuxième tous les "
"connecteurs sur lesquels vous voudriez écrire, et la dernière (normalement "
"laissée vide) ceux sur lesquels vous voudriez vérifier sil y a des erreurs. "
"Prenez note qu'un connecteur peut figurer dans plus d'une liste. L'appel à "
"``select`` est bloquant, mais vous pouvez lui donner un délai d'attente. "
"C'est généralement une bonne chose à faire — donnez-lui un bon gros délai "
"d'attente (disons une minute), à moins que vous n'ayez une bonne raison de "
"ne pas le faire."
#: ../Doc/howto/sockets.rst:355 #: ../Doc/howto/sockets.rst:355
msgid "" msgid ""
@ -501,6 +688,10 @@ msgid ""
"actually readable, writable and in error. Each of these lists is a subset " "actually readable, writable and in error. Each of these lists is a subset "
"(possibly empty) of the corresponding list you passed in." "(possibly empty) of the corresponding list you passed in."
msgstr "" msgstr ""
"En retour, vous recevrez trois listes. Elles contiennent les connecteurs qui "
"sont réellement lisibles, inscriptibles et en erreur. Chacune de ces listes "
"est un sous-ensemble (éventuellement vide) de la liste correspondante que "
"vous avez transmise."
#: ../Doc/howto/sockets.rst:359 #: ../Doc/howto/sockets.rst:359
msgid "" msgid ""

View File

@ -209,6 +209,8 @@ msgid ""
"For Windows, this command should be run from a command prompt window (:" "For Windows, this command should be run from a command prompt window (:"
"menuselection:`Start --> Accessories`)::" "menuselection:`Start --> Accessories`)::"
msgstr "" msgstr ""
"Sous Windows, cette commande doit être lancée depuis une invite de commande "
"(:menuselection:`Démarrer --> Accessoires`) ::"
#: ../Doc/install/index.rst:121 #: ../Doc/install/index.rst:121
msgid "" msgid ""
@ -762,6 +764,11 @@ msgid ""
"`{userbase}/lib` to the compiler search path for libraries as well as to the " "`{userbase}/lib` to the compiler search path for libraries as well as to the "
"runtime search path for shared C libraries (rpath)." "runtime search path for shared C libraries (rpath)."
msgstr "" msgstr ""
"La commande :command:`build_ext` possède aussi une option ``--user`` pour "
"ajouter :file:`{userbase}/include` dans les chemins où le compilateur "
"recherche les fichiers d'en-têtes et :file:`{userbase}/lib` dans les chemins "
"où le compilateur recherche les bibliothèques ainsi que les bibliothèques C "
"partagées chargeables à l'exécution (`rpath`)."
#: ../Doc/install/index.rst:391 #: ../Doc/install/index.rst:391
msgid "Alternate installation: the home scheme" msgid "Alternate installation: the home scheme"
@ -992,7 +999,7 @@ msgstr ""
#: ../Doc/install/index.rst:503 #: ../Doc/install/index.rst:503
msgid "Alternate installation: Windows (the prefix scheme)" msgid "Alternate installation: Windows (the prefix scheme)"
msgstr "" msgstr "Installation alternative : Windows (le schéma de préfixe)"
#: ../Doc/install/index.rst:505 #: ../Doc/install/index.rst:505
msgid "" msgid ""
@ -1001,12 +1008,18 @@ msgid ""
"`!--prefix` option has traditionally been used to install additional " "`!--prefix` option has traditionally been used to install additional "
"packages in separate locations on Windows. ::" "packages in separate locations on Windows. ::"
msgstr "" msgstr ""
"Windows n'a pas de concept de répertoire utilisateur, et comme "
"l'installation standard de Python sur Windows est plus simple que sur Unix, "
"l':option:`!--prefix` option a traditionnellement été utilisée pour "
"installer des paquets supplémentaires à des endroits séparés sur Windows. ::"
#: ../Doc/install/index.rst:512 #: ../Doc/install/index.rst:512
msgid "" msgid ""
"to install modules to the :file:`\\\\Temp\\\\Python` directory on the " "to install modules to the :file:`\\\\Temp\\\\Python` directory on the "
"current drive." "current drive."
msgstr "" msgstr ""
"pour installer des modules dans le dossier :file:`\\\\Temp\\\\Python` du "
"disque courant."
#: ../Doc/install/index.rst:514 #: ../Doc/install/index.rst:514
msgid "" msgid ""
@ -1026,7 +1039,7 @@ msgstr ":file:`{prefix}\\\\Include\\\\{distname}`"
#: ../Doc/install/index.rst:532 #: ../Doc/install/index.rst:532
msgid "Custom Installation" msgid "Custom Installation"
msgstr "" msgstr "Installation personnalisée"
#: ../Doc/install/index.rst:534 #: ../Doc/install/index.rst:534
msgid "" msgid ""
@ -1036,6 +1049,12 @@ msgid ""
"directory, or you might want to completely redefine the installation " "directory, or you might want to completely redefine the installation "
"scheme. In either case, you're creating a *custom installation scheme*." "scheme. In either case, you're creating a *custom installation scheme*."
msgstr "" msgstr ""
"Parfois, les procédés d'installation alternatifs décrits dans la section :"
"ref:`inst-alt-install` ne font pas ce que vous attendiez. Vous pourriez "
"vouloir modifier seulement un ou deux répertoires en conservant tout le "
"reste sous la même racine, ou vouloir redéfinir l'ensemble du procédé "
"d'installation. Quel que soit le cas, vous créez ainsi un *procédé "
"d'installation personnalisé*."
#: ../Doc/install/index.rst:540 #: ../Doc/install/index.rst:540
msgid "" msgid ""

File diff suppressed because it is too large Load Diff

View File

@ -17,7 +17,7 @@ msgstr ""
#: ../Doc/library/calendar.rst:2 #: ../Doc/library/calendar.rst:2
msgid ":mod:`calendar` --- General calendar-related functions" msgid ":mod:`calendar` --- General calendar-related functions"
msgstr "" msgstr ":mod:`calendar` — Fonctions calendaires générales"
#: ../Doc/library/calendar.rst:10 #: ../Doc/library/calendar.rst:10
msgid "**Source code:** :source:`Lib/calendar.py`" msgid "**Source code:** :source:`Lib/calendar.py`"
@ -277,12 +277,17 @@ msgid ""
"Return a month's calendar as an HTML table. If *withyear* is true the year " "Return a month's calendar as an HTML table. If *withyear* is true the year "
"will be included in the header, otherwise just the month name will be used." "will be included in the header, otherwise just the month name will be used."
msgstr "" msgstr ""
"Renvoie le calendrier d'un mois sous la forme d'une table HTML. Si "
"*withyear* est vrai l'année sera inclue dans l'en-tête, sinon seul le nom du "
"mois sera utilisé."
#: ../Doc/library/calendar.rst:186 #: ../Doc/library/calendar.rst:186
msgid "" msgid ""
"Return a year's calendar as an HTML table. *width* (defaulting to 3) " "Return a year's calendar as an HTML table. *width* (defaulting to 3) "
"specifies the number of months per row." "specifies the number of months per row."
msgstr "" msgstr ""
"Renvoie le calendrier d'une année sous la forme d'une table HTML. *width* "
"(par défaut à 3) spécifie le nombre de mois par ligne."
#: ../Doc/library/calendar.rst:192 #: ../Doc/library/calendar.rst:192
msgid "" msgid ""
@ -292,59 +297,81 @@ msgid ""
"be used. *encoding* specifies the encoding to be used for the output " "be used. *encoding* specifies the encoding to be used for the output "
"(defaulting to the system default encoding)." "(defaulting to the system default encoding)."
msgstr "" msgstr ""
"Renvoie le calendrier d'une année sous la forme d'une page HTML complète. "
"*width* (par défaut à 3) spécifie le nombre de mois par ligne. *css* est le "
"nom de la feuille de style en cascade à utiliser. :const:`None` peut être "
"passé si aucune feuille de style ne doit être utilisée. *encoding* spécifie "
"l'encodage à utiliser pour les données de sortie (par défaut l'encodage par "
"défaut du système)."
#: ../Doc/library/calendar.rst:199 #: ../Doc/library/calendar.rst:199
msgid "" msgid ""
":class:`!HTMLCalendar` has the following attributes you can override to " ":class:`!HTMLCalendar` has the following attributes you can override to "
"customize the CSS classes used by the calendar:" "customize the CSS classes used by the calendar:"
msgstr "" msgstr ""
":class:`!HTMLCalendar` possède les attributs suivants que vous pouvez "
"surcharger pour personnaliser les classes CSS utilisées par le calendrier :"
#: ../Doc/library/calendar.rst:204 #: ../Doc/library/calendar.rst:204
msgid "" msgid ""
"A list of CSS classes used for each weekday. The default class list is::" "A list of CSS classes used for each weekday. The default class list is::"
msgstr "" msgstr ""
"Une liste de classes CSS utilisées pour chaque jour de la semaine. La liste "
"par défaut de la classe est ::"
#: ../Doc/library/calendar.rst:208 #: ../Doc/library/calendar.rst:208
msgid "more styles can be added for each day::" msgid "more styles can be added for each day::"
msgstr "" msgstr "davantage de styles peuvent être ajoutés pour chaque jour ::"
#: ../Doc/library/calendar.rst:212 #: ../Doc/library/calendar.rst:212
msgid "Note that the length of this list must be seven items." msgid "Note that the length of this list must be seven items."
msgstr "" msgstr "Notez que la longueur de cette liste doit être de sept éléments."
#: ../Doc/library/calendar.rst:217 #: ../Doc/library/calendar.rst:217
msgid "The CSS class for a weekday occurring in the previous or coming month." msgid "The CSS class for a weekday occurring in the previous or coming month."
msgstr "" msgstr ""
"La classe CSS pour le jour de la semaine apparaissant dans le mois précédent "
"ou à venir."
#: ../Doc/library/calendar.rst:224 #: ../Doc/library/calendar.rst:224
msgid "" msgid ""
"A list of CSS classes used for weekday names in the header row. The default " "A list of CSS classes used for weekday names in the header row. The default "
"is the same as :attr:`cssclasses`." "is the same as :attr:`cssclasses`."
msgstr "" msgstr ""
"Une liste de classes CSS utilisées pour les noms des jours de la semaine "
"dans la ligne d'en-tête. Par défaut les mêmes que :attr:`cssclasses`."
#: ../Doc/library/calendar.rst:232 #: ../Doc/library/calendar.rst:232
msgid "" msgid ""
"The month's head CSS class (used by :meth:`formatmonthname`). The default " "The month's head CSS class (used by :meth:`formatmonthname`). The default "
"value is ``\"month\"``." "value is ``\"month\"``."
msgstr "" msgstr ""
"La classe CSS du mois en en-tête (utilisé par :meth:`formatmonthname`). La "
"valeur par défaut est ``\"month\"``."
#: ../Doc/library/calendar.rst:240 #: ../Doc/library/calendar.rst:240
msgid "" msgid ""
"The CSS class for the whole month's table (used by :meth:`formatmonth`). The " "The CSS class for the whole month's table (used by :meth:`formatmonth`). The "
"default value is ``\"month\"``." "default value is ``\"month\"``."
msgstr "" msgstr ""
"La classe CSS pour la table du mois entière (utilisé par :meth:"
"`formatmonth`). La valeur par défaut est ``\"month\"``."
#: ../Doc/library/calendar.rst:248 #: ../Doc/library/calendar.rst:248
msgid "" msgid ""
"The CSS class for the whole year's table of tables (used by :meth:" "The CSS class for the whole year's table of tables (used by :meth:"
"`formatyear`). The default value is ``\"year\"``." "`formatyear`). The default value is ``\"year\"``."
msgstr "" msgstr ""
"La classe CSS pour la table entière des tables de l'année (utilisé par :meth:"
"`formatyear`). La valeur par défaut est ``\"year\"``."
#: ../Doc/library/calendar.rst:256 #: ../Doc/library/calendar.rst:256
msgid "" msgid ""
"The CSS class for the table head for the whole year (used by :meth:" "The CSS class for the table head for the whole year (used by :meth:"
"`formatyear`). The default value is ``\"year\"``." "`formatyear`). The default value is ``\"year\"``."
msgstr "" msgstr ""
"La classe CSS pour l'en-tête de la table pour l'année entière (utilisé par :"
"meth:`formatyear`). La valeur par défaut est ``\"year\"``."
#: ../Doc/library/calendar.rst:262 #: ../Doc/library/calendar.rst:262
msgid "" msgid ""
@ -352,10 +379,15 @@ msgid ""
"singular (e.g. ``cssclass_month`` ``cssclass_noday``), one can replace the " "singular (e.g. ``cssclass_month`` ``cssclass_noday``), one can replace the "
"single CSS class with a space separated list of CSS classes, for example::" "single CSS class with a space separated list of CSS classes, for example::"
msgstr "" msgstr ""
"Notez que même si le nommage ci-dessus des attributs de classe est au "
"singulier (p. ex. ``cssclass_month`` ``cssclass_noday``), on peut remplacer "
"la seule classe CSS par une liste de classes CSS séparées par une espace, "
"par exemple ::"
#: ../Doc/library/calendar.rst:268 #: ../Doc/library/calendar.rst:268
msgid "Here is an example how :class:`!HTMLCalendar` can be customized::" msgid "Here is an example how :class:`!HTMLCalendar` can be customized::"
msgstr "" msgstr ""
"Voici un exemple de comment peut être personnalisée :class:`!HTMLCalendar` ::"
#: ../Doc/library/calendar.rst:280 #: ../Doc/library/calendar.rst:280
msgid "" msgid ""
@ -364,6 +396,11 @@ msgid ""
"If this locale includes an encoding all strings containing month and weekday " "If this locale includes an encoding all strings containing month and weekday "
"names will be returned as unicode." "names will be returned as unicode."
msgstr "" msgstr ""
"Le constructeur de cette sous-classe de :class:`TextCalendar` accepte un "
"paramètre régional *locale* : une langue au format ``\"fr_FR.UTF-8\"``, et "
"renvoie les noms de mois et de jours de la semaine traduits dans cette "
"langue. Si ce lieu possède un encodage, toutes les chaînes contenant des "
"noms de mois ou de jours de la semaine seront renvoyées en Unicode."
#: ../Doc/library/calendar.rst:288 #: ../Doc/library/calendar.rst:288
msgid "" msgid ""
@ -372,6 +409,11 @@ msgid ""
"If this locale includes an encoding all strings containing month and weekday " "If this locale includes an encoding all strings containing month and weekday "
"names will be returned as unicode." "names will be returned as unicode."
msgstr "" msgstr ""
"Cette sous-classe de :class:`HTMLCalendar` peut recevoir un nom de lieu dans "
"le constructeur et renvoie les noms de mois et de jours de la semaine selon "
"le lieu spécifié. Si ce lieu possède un encodage, toutes les chaînes "
"contenant des noms de mois ou de jours de la semaine seront renvoyées en "
"Unicode."
#: ../Doc/library/calendar.rst:295 #: ../Doc/library/calendar.rst:295
msgid "" msgid ""
@ -380,10 +422,16 @@ msgid ""
"Because the current locale is a process-wide setting, they are not thread-" "Because the current locale is a process-wide setting, they are not thread-"
"safe." "safe."
msgstr "" msgstr ""
"Les méthodes :meth:`formatweekday` et :meth:`formatmonthname` de ces deux "
"classes changent temporairement le paramètre régional courant pour le "
"paramètre donné via *locale* . Comme le paramètre régional est un réglage de "
"l'ensemble du processus, elles ne sont pas utilisables de manière sûre avec "
"les programmes à fils d'exécution multiples."
#: ../Doc/library/calendar.rst:300 #: ../Doc/library/calendar.rst:300
msgid "For simple text calendars this module provides the following functions." msgid "For simple text calendars this module provides the following functions."
msgstr "" msgstr ""
"Pour les calendriers texte simples ce module fournit les fonctions suivantes."
#: ../Doc/library/calendar.rst:304 #: ../Doc/library/calendar.rst:304
msgid "" msgid ""
@ -392,43 +440,62 @@ msgid ""
"`THURSDAY`, :const:`FRIDAY`, :const:`SATURDAY`, and :const:`SUNDAY` are " "`THURSDAY`, :const:`FRIDAY`, :const:`SATURDAY`, and :const:`SUNDAY` are "
"provided for convenience. For example, to set the first weekday to Sunday::" "provided for convenience. For example, to set the first weekday to Sunday::"
msgstr "" msgstr ""
"Fixe le jour de la semaine (``0`` pour lundi, ``6`` pour dimanche) qui "
"débute chaque semaine. Les valeurs :const:`MONDAY`, :const:`TUESDAY`, :const:"
"`WEDNESDAY`, :const:`THURSDAY`, :const:`FRIDAY`, :const:`SATURDAY`, et :"
"const:`SUNDAY` sont fournies par commodité. Par exemple, pour fixer le "
"premier jour de la semaine à dimanche ::"
#: ../Doc/library/calendar.rst:315 #: ../Doc/library/calendar.rst:315
msgid "Returns the current setting for the weekday to start each week." msgid "Returns the current setting for the weekday to start each week."
msgstr "" msgstr ""
"Renvoie le réglage courant pour le jour de la semaine débutant chaque "
"semaine."
#: ../Doc/library/calendar.rst:320 #: ../Doc/library/calendar.rst:320
msgid "" msgid ""
"Returns :const:`True` if *year* is a leap year, otherwise :const:`False`." "Returns :const:`True` if *year* is a leap year, otherwise :const:`False`."
msgstr "" msgstr ""
"Renvoie :const:`True` si *year* est une année bissextile, sinon :const:"
"`False`."
#: ../Doc/library/calendar.rst:325 #: ../Doc/library/calendar.rst:325
msgid "" msgid ""
"Returns the number of leap years in the range from *y1* to *y2* (exclusive), " "Returns the number of leap years in the range from *y1* to *y2* (exclusive), "
"where *y1* and *y2* are years." "where *y1* and *y2* are years."
msgstr "" msgstr ""
"Renvoie le nombre d'années bissextiles dans la période de *y1* à *y2* (non "
"inclus), où *y1* et *y2* sont des années."
#: ../Doc/library/calendar.rst:328 #: ../Doc/library/calendar.rst:328
msgid "This function works for ranges spanning a century change." msgid "This function works for ranges spanning a century change."
msgstr "" msgstr ""
"Cette fonction marche pour les périodes couvrant un changement de siècle."
#: ../Doc/library/calendar.rst:333 #: ../Doc/library/calendar.rst:333
msgid "" msgid ""
"Returns the day of the week (``0`` is Monday) for *year* (``1970``--...), " "Returns the day of the week (``0`` is Monday) for *year* (``1970``--...), "
"*month* (``1``--``12``), *day* (``1``--``31``)." "*month* (``1``--``12``), *day* (``1``--``31``)."
msgstr "" msgstr ""
"Renvoie le jour de la semaine (``0`` pour lundi) pour *year* (``1970``-- …), "
"*month* (``1``--``12``), *day* (``1``--``31``)."
#: ../Doc/library/calendar.rst:339 #: ../Doc/library/calendar.rst:339
msgid "" msgid ""
"Return a header containing abbreviated weekday names. *n* specifies the " "Return a header containing abbreviated weekday names. *n* specifies the "
"width in characters for one weekday." "width in characters for one weekday."
msgstr "" msgstr ""
"Renvoie un en-tête contenant les jours de la semaine en abrégé. *n* spécifie "
"la largeur en caractères pour un jour de la semaine."
#: ../Doc/library/calendar.rst:345 #: ../Doc/library/calendar.rst:345
msgid "" msgid ""
"Returns weekday of first day of the month and number of days in month, for " "Returns weekday of first day of the month and number of days in month, for "
"the specified *year* and *month*." "the specified *year* and *month*."
msgstr "" msgstr ""
"Renvoie le jour de la semaine correspondant au premier jour du mois et le "
"nombre de jours dans le mois, pour l'année *year* et le mois *month* "
"spécifiés."
#: ../Doc/library/calendar.rst:351 #: ../Doc/library/calendar.rst:351
msgid "" msgid ""
@ -439,24 +506,31 @@ msgstr ""
#: ../Doc/library/calendar.rst:358 #: ../Doc/library/calendar.rst:358
msgid "Prints a month's calendar as returned by :func:`month`." msgid "Prints a month's calendar as returned by :func:`month`."
msgstr "" msgstr "Affiche le calendrier d'un mois tel que renvoyé par :func:`month`."
#: ../Doc/library/calendar.rst:363 #: ../Doc/library/calendar.rst:363
msgid "" msgid ""
"Returns a month's calendar in a multi-line string using the :meth:" "Returns a month's calendar in a multi-line string using the :meth:"
"`formatmonth` of the :class:`TextCalendar` class." "`formatmonth` of the :class:`TextCalendar` class."
msgstr "" msgstr ""
"Renvoie le calendrier d'un mois dans une chaîne multi-lignes en utilisant la "
"méthode :meth:`formatmonth` de la classe :class:`TextCalendar`."
#: ../Doc/library/calendar.rst:369 #: ../Doc/library/calendar.rst:369
msgid "" msgid ""
"Prints the calendar for an entire year as returned by :func:`calendar`." "Prints the calendar for an entire year as returned by :func:`calendar`."
msgstr "" msgstr ""
"Affiche le calendrier pour une année entière tel que renvoyé par :func:"
"`calendar`."
#: ../Doc/library/calendar.rst:374 #: ../Doc/library/calendar.rst:374
msgid "" msgid ""
"Returns a 3-column calendar for an entire year as a multi-line string using " "Returns a 3-column calendar for an entire year as a multi-line string using "
"the :meth:`formatyear` of the :class:`TextCalendar` class." "the :meth:`formatyear` of the :class:`TextCalendar` class."
msgstr "" msgstr ""
"Renvoie un calendrier sur 3 colonnes pour une année entière dans une chaîne "
"multi-lignes en utilisant la méthode :meth:`formatyear` de la classe :class:"
"`TextCalendar`."
#: ../Doc/library/calendar.rst:380 #: ../Doc/library/calendar.rst:380
msgid "" msgid ""
@ -466,20 +540,29 @@ msgid ""
"encoding. In fact, :func:`time.gmtime` and :func:`timegm` are each others' " "encoding. In fact, :func:`time.gmtime` and :func:`timegm` are each others' "
"inverse." "inverse."
msgstr "" msgstr ""
"Une fonction sans rapport mais pratique, qui prend un n-uplet temporel tel "
"que celui renvoyé par la fonction :func:`~time.gmtime` dans le module :mod:"
"`time`, et renvoie la valeur d'horodatage Unix (*timestamp* en anglais) "
"correspondante, en supposant une époque de 1970, et l'encodage POSIX. En "
"fait, :func:`time.gmtime` et :func:`timegm` sont l'inverse l'un de l'autre."
#: ../Doc/library/calendar.rst:387 #: ../Doc/library/calendar.rst:387
msgid "The :mod:`calendar` module exports the following data attributes:" msgid "The :mod:`calendar` module exports the following data attributes:"
msgstr "" msgstr "Le module :mod:`calendar` exporte les attributs suivants :"
#: ../Doc/library/calendar.rst:391 #: ../Doc/library/calendar.rst:391
msgid "An array that represents the days of the week in the current locale." msgid "An array that represents the days of the week in the current locale."
msgstr "" msgstr ""
"Un tableau qui représente les jours de la semaine pour les paramètres "
"régionaux actifs."
#: ../Doc/library/calendar.rst:396 #: ../Doc/library/calendar.rst:396
msgid "" msgid ""
"An array that represents the abbreviated days of the week in the current " "An array that represents the abbreviated days of the week in the current "
"locale." "locale."
msgstr "" msgstr ""
"Un tableau qui représente les jours de la semaine en abrégé pour les "
"paramètres régionaux actifs."
#: ../Doc/library/calendar.rst:401 #: ../Doc/library/calendar.rst:401
msgid "" msgid ""
@ -487,6 +570,10 @@ msgid ""
"follows normal convention of January being month number 1, so it has a " "follows normal convention of January being month number 1, so it has a "
"length of 13 and ``month_name[0]`` is the empty string." "length of 13 and ``month_name[0]`` is the empty string."
msgstr "" msgstr ""
"Un tableau qui représente les mois de l'année pour les paramètres régionaux "
"actifs. Ceux-ci respectent la convention usuelle où janvier est le mois "
"numéro 1, donc il a une longueur de 13 et ``month_name[0]`` est la chaîne "
"vide."
#: ../Doc/library/calendar.rst:408 #: ../Doc/library/calendar.rst:408
msgid "" msgid ""
@ -494,6 +581,10 @@ msgid ""
"locale. This follows normal convention of January being month number 1, so " "locale. This follows normal convention of January being month number 1, so "
"it has a length of 13 and ``month_abbr[0]`` is the empty string." "it has a length of 13 and ``month_abbr[0]`` is the empty string."
msgstr "" msgstr ""
"Un tableau qui représente les mois de l'année en abrégé pour les paramètres "
"régionaux actifs. Celui-ci respectent la convention usuelle où janvier est "
"le mois numéro 1, donc il a une longueur de 13 et ``month_name[0]`` est la "
"chaîne vide."
#: ../Doc/library/calendar.rst:417 #: ../Doc/library/calendar.rst:417
msgid "Module :mod:`datetime`" msgid "Module :mod:`datetime`"
@ -504,6 +595,8 @@ msgid ""
"Object-oriented interface to dates and times with similar functionality to " "Object-oriented interface to dates and times with similar functionality to "
"the :mod:`time` module." "the :mod:`time` module."
msgstr "" msgstr ""
"Interface orientée objet pour les dates et les heures avec des "
"fonctionnalités similaires au module :mod:`time`."
#: ../Doc/library/calendar.rst:419 #: ../Doc/library/calendar.rst:419
msgid "Module :mod:`time`" msgid "Module :mod:`time`"
@ -511,4 +604,4 @@ msgstr "Module :mod:`time`"
#: ../Doc/library/calendar.rst:420 #: ../Doc/library/calendar.rst:420
msgid "Low-level time related functions." msgid "Low-level time related functions."
msgstr "" msgstr "Fonctions bas niveau relatives au temps."

View File

@ -1522,6 +1522,9 @@ msgid ""
"When programming in a compiled language, shared libraries are accessed when " "When programming in a compiled language, shared libraries are accessed when "
"compiling/linking a program, and when the program is run." "compiling/linking a program, and when the program is run."
msgstr "" msgstr ""
"Les langages compilés ont besoin d'accéder aux bibliothèques partagées au "
"moment de la compilation, de l'édition de liens et pendant l'exécution du "
"programme."
#: ../Doc/library/ctypes.rst:1253 #: ../Doc/library/ctypes.rst:1253
msgid "" msgid ""
@ -1531,12 +1534,20 @@ msgid ""
"while the ctypes library loaders act like when a program is run, and call " "while the ctypes library loaders act like when a program is run, and call "
"the runtime loader directly." "the runtime loader directly."
msgstr "" msgstr ""
"Le but de la fonction :func:`find_library` est de trouver une bibliothèque "
"de la même façon que le ferait le compilateur ou le chargeur (sur les plates-"
"formes avec plusieurs versions de la même bibliothèque, la plus récente est "
"chargée), alors que les chargeurs de bibliothèques de *ctypes* se comportent "
"de la même façon qu'un programme qui s'exécute, et appellent directement le "
"chargeur."
#: ../Doc/library/ctypes.rst:1259 #: ../Doc/library/ctypes.rst:1259
msgid "" msgid ""
"The :mod:`ctypes.util` module provides a function which can help to " "The :mod:`ctypes.util` module provides a function which can help to "
"determine the library to load." "determine the library to load."
msgstr "" msgstr ""
"Le module :mod:`ctypes.util` fournit une fonction pour déterminer quelle "
"bibliothèque charger."
#: ../Doc/library/ctypes.rst:1267 #: ../Doc/library/ctypes.rst:1267
msgid "" msgid ""
@ -1545,10 +1556,15 @@ msgid ""
"number (this is the form used for the posix linker option :option:`!-l`). " "number (this is the form used for the posix linker option :option:`!-l`). "
"If no library can be found, returns ``None``." "If no library can be found, returns ``None``."
msgstr "" msgstr ""
"Tente de trouver une bibliothèque et en renvoie le chemin. *name* est le nom "
"de la bibliothèque sans préfixe — comme *lib* — ni suffixe — comme ``.so``, "
"``.dylib`` ou un numéro de version (c.-à-d. la même forme que l'option POSIX "
"de l'éditeur de lien :option:`!-l`). Si la fonction ne parvient pas à "
"trouver de bibliothèque, elle renvoie ``None``."
#: ../Doc/library/ctypes.rst:1272 ../Doc/library/ctypes.rst:1860 #: ../Doc/library/ctypes.rst:1272 ../Doc/library/ctypes.rst:1860
msgid "The exact functionality is system dependent." msgid "The exact functionality is system dependent."
msgstr "" msgstr "Le mode opératoire exact dépend du système."
#: ../Doc/library/ctypes.rst:1274 #: ../Doc/library/ctypes.rst:1274
msgid "" msgid ""
@ -1556,6 +1572,9 @@ msgid ""
"ldconfig``, ``gcc``, ``objdump`` and ``ld``) to find the library file. It " "ldconfig``, ``gcc``, ``objdump`` and ``ld``) to find the library file. It "
"returns the filename of the library file." "returns the filename of the library file."
msgstr "" msgstr ""
"Sous Linux, :func:`find_library` essaye de lancer des programmes externes "
"(``/sbin/ldconfig``, ``gcc``, ``objdump`` et ``ld``) pour trouver la "
"bibliothèque. Elle renvoie le nom de la bibliothèque sur le disque."
#: ../Doc/library/ctypes.rst:1278 #: ../Doc/library/ctypes.rst:1278
msgid "" msgid ""
@ -1563,16 +1582,21 @@ msgid ""
"when searching for libraries, if a library cannot be found by any other " "when searching for libraries, if a library cannot be found by any other "
"means." "means."
msgstr "" msgstr ""
"Sous Linux, si les autres moyens échouent, la fonction utilise la variable "
"d'environnement ``LD_LIBRARY_PATH`` pour trouver la bibliothèque."
#: ../Doc/library/ctypes.rst:1282 #: ../Doc/library/ctypes.rst:1282
msgid "Here are some examples::" msgid "Here are some examples::"
msgstr "" msgstr "Voici quelques exemples :"
#: ../Doc/library/ctypes.rst:1293 #: ../Doc/library/ctypes.rst:1293
msgid "" msgid ""
"On OS X, :func:`find_library` tries several predefined naming schemes and " "On OS X, :func:`find_library` tries several predefined naming schemes and "
"paths to locate the library, and returns a full pathname if successful::" "paths to locate the library, and returns a full pathname if successful::"
msgstr "" msgstr ""
"Sous OS X, :func:`find_library` regarde dans des chemins et conventions de "
"chemins prédéfinies pour trouver la bibliothèque et en renvoie le chemin "
"complet si elle la trouve :"
#: ../Doc/library/ctypes.rst:1307 #: ../Doc/library/ctypes.rst:1307
msgid "" msgid ""
@ -1580,6 +1604,10 @@ msgid ""
"returns the full pathname, but since there is no predefined naming scheme a " "returns the full pathname, but since there is no predefined naming scheme a "
"call like ``find_library(\"c\")`` will fail and return ``None``." "call like ``find_library(\"c\")`` will fail and return ``None``."
msgstr "" msgstr ""
"Sous Windows, :func:`find_library` examine le chemin de recherche du système "
"et renvoie le chemin complet de la bibliothèque, mais comme il n'existe pas "
"de convention de nommage, des appels comme ``find_library(\"c\")`` échouent "
"et renvoient ``None``."
#: ../Doc/library/ctypes.rst:1311 #: ../Doc/library/ctypes.rst:1311
msgid "" msgid ""
@ -1588,6 +1616,11 @@ msgid ""
"into the wrapper module instead of using :func:`find_library` to locate the " "into the wrapper module instead of using :func:`find_library` to locate the "
"library at runtime." "library at runtime."
msgstr "" msgstr ""
"Si vous encapsulez une bibliothèque partagée avec :mod:`ctypes`, il est "
"*probablement* plus judicieux de déterminer le chemin de cette bibliothèque "
"lors du développement et de l'écrire en dur dans le module d'encapsulation, "
"plutôt que d'utiliser :func:`find_library` pour la trouver lors de "
"l'exécution."
#: ../Doc/library/ctypes.rst:1319 #: ../Doc/library/ctypes.rst:1319
msgid "Loading shared libraries" msgid "Loading shared libraries"
@ -1598,6 +1631,9 @@ msgid ""
"There are several ways to load shared libraries into the Python process. " "There are several ways to load shared libraries into the Python process. "
"One way is to instantiate one of the following classes:" "One way is to instantiate one of the following classes:"
msgstr "" msgstr ""
"Il y a plusieurs moyens de charger une bibliothèque partagée dans un "
"processus Python. L'un d'entre eux consiste à instancier une des classes "
"suivantes :"
#: ../Doc/library/ctypes.rst:1327 #: ../Doc/library/ctypes.rst:1327
msgid "" msgid ""
@ -1605,6 +1641,9 @@ msgid ""
"these libraries use the standard C calling convention, and are assumed to " "these libraries use the standard C calling convention, and are assumed to "
"return :c:type:`int`." "return :c:type:`int`."
msgstr "" msgstr ""
"Une instance de cette classe représente une bibliothèque partagée déjà "
"chargée. Les fonctions de cette bibliothèque utilisent la convention d'appel "
"C standard et doivent renvoyer un :c:type:`int`."
#: ../Doc/library/ctypes.rst:1334 #: ../Doc/library/ctypes.rst:1334
msgid "" msgid ""
@ -1615,6 +1654,13 @@ msgid ""
"failed or succeeded, together with additional error code. If the return " "failed or succeeded, together with additional error code. If the return "
"value signals a failure, an :class:`OSError` is automatically raised." "value signals a failure, an :class:`OSError` is automatically raised."
msgstr "" msgstr ""
"En Windows seulement : une instance de cette classe représente une "
"bibliothèque partagée déjà chargée. Les fonctions de cette bibliothèque "
"utilisent la convention d'appel *stdcall*, et doivent renvoyer un code :"
"class:`HRESULT` (propre à Windows). Les valeurs de :class:`HRESULT` "
"contiennent des informations précisant si l'appel de la fonction a échoué ou "
"s'il a réussi, ainsi qu'un code d'erreur supplémentaire. Si la valeur de "
"retour signale un échec, une :class:`OSError` est levée automatiquement."
#: ../Doc/library/ctypes.rst:1341 #: ../Doc/library/ctypes.rst:1341
msgid ":exc:`WindowsError` used to be raised." msgid ":exc:`WindowsError` used to be raised."
@ -1626,6 +1672,10 @@ msgid ""
"functions in these libraries use the ``stdcall`` calling convention, and are " "functions in these libraries use the ``stdcall`` calling convention, and are "
"assumed to return :c:type:`int` by default." "assumed to return :c:type:`int` by default."
msgstr "" msgstr ""
"En Windows seulement : une instance de cette classe représente une "
"bibliothèque partagée déjà chargée. Les fonctions de cette bibliothèque "
"utilisent la convention d'appel *stdcall* et doivent renvoyer par défaut un :"
"c:type:`int`."
#: ../Doc/library/ctypes.rst:1351 #: ../Doc/library/ctypes.rst:1351
msgid "" msgid ""
@ -1633,12 +1683,18 @@ msgid ""
"the :class:`WinDLL` and :class:`OleDLL` use the standard calling convention " "the :class:`WinDLL` and :class:`OleDLL` use the standard calling convention "
"on this platform." "on this platform."
msgstr "" msgstr ""
"Sous Windows CE, seule la convention d'appel standard est utilisée. Pour des "
"raisons pratiques, :class:`WinDLL` et :class:`OleDLL` utilisent la "
"convention d'appel standard sur cette plate-forme."
#: ../Doc/library/ctypes.rst:1355 #: ../Doc/library/ctypes.rst:1355
msgid "" msgid ""
"The Python :term:`global interpreter lock` is released before calling any " "The Python :term:`global interpreter lock` is released before calling any "
"function exported by these libraries, and reacquired afterwards." "function exported by these libraries, and reacquired afterwards."
msgstr "" msgstr ""
"Le :term:`verrou global de l'interpréteur <global interpreter lock>` Python "
"est relâché avant chaque appel d'une fonction exposée par ces bibliothèques "
"et ré-activé après."
#: ../Doc/library/ctypes.rst:1361 #: ../Doc/library/ctypes.rst:1361
msgid "" msgid ""
@ -1647,10 +1703,15 @@ msgid ""
"function execution the Python error flag is checked. If the error flag is " "function execution the Python error flag is checked. If the error flag is "
"set, a Python exception is raised." "set, a Python exception is raised."
msgstr "" msgstr ""
"Cette classe est identique à :class:`CDLL`, à ceci près que le GIL n'est "
"*pas* relâché pendant l'appel de la fonction, et, qu'au terme de l'appel, le "
"drapeau d'erreur Python est vérifié. Si celui-ci est activé, une exception "
"Python est levée."
#: ../Doc/library/ctypes.rst:1366 #: ../Doc/library/ctypes.rst:1366
msgid "Thus, this is only useful to call Python C api functions directly." msgid "Thus, this is only useful to call Python C api functions directly."
msgstr "" msgstr ""
"Donc, cette classe ne sert qu'à appeler les fonctions de l'API C de Python."
#: ../Doc/library/ctypes.rst:1368 #: ../Doc/library/ctypes.rst:1368
msgid "" msgid ""
@ -1661,6 +1722,12 @@ msgid ""
"``LoadLibrary`` function is used to load the library into the process, and " "``LoadLibrary`` function is used to load the library into the process, and "
"to get a handle to it." "to get a handle to it."
msgstr "" msgstr ""
"Toutes ces classes peuvent être instanciées en les appelant avec le chemin "
"de la bibliothèque partagée comme unique argument. Il est aussi possible de "
"passer un lien vers une bibliothèque déjà chargée en utilisant le paramètre "
"``handle``. Sinon, les fonctions ``dlopen`` ou ``LoadLibrary`` de la plate-"
"forme sous-jacente permettent de charger la bibliothèque dans le processus, "
"et d'en obtenir un lien."
#: ../Doc/library/ctypes.rst:1375 #: ../Doc/library/ctypes.rst:1375
msgid "" msgid ""
@ -1669,6 +1736,10 @@ msgid ""
"ignored. On posix systems, RTLD_NOW is always added, and is not " "ignored. On posix systems, RTLD_NOW is always added, and is not "
"configurable." "configurable."
msgstr "" msgstr ""
"Le mode de chargement de la bibliothèque est défini par le paramètre *mode*. "
"Pour plus de détails, référez-vous à l'entrée :manpage:`dlopen(3)` du "
"manuel. En Windows, *mode* est ignoré. Sur les systèmes POSIX, RTLD_NOW y "
"est toujours ajouté. Ceci n'est pas configurable."
#: ../Doc/library/ctypes.rst:1380 #: ../Doc/library/ctypes.rst:1380
msgid "" msgid ""
@ -1679,6 +1750,13 @@ msgid ""
"the :data:`errno` value before the function call is swapped with the ctypes " "the :data:`errno` value before the function call is swapped with the ctypes "
"private copy, the same happens immediately after the function call." "private copy, the same happens immediately after the function call."
msgstr "" msgstr ""
"Le paramètre *use_errno*, lorsque défini à vrai, active un mécanisme de "
"*ctypes* qui permet d'accéder au numéro d'erreur :data:`errno` du système de "
"manière sécurisée. :mod:`ctypes` maintient une copie de :data:`errno` du "
"système dans chaque fil d'exécution. Si vous appelez des fonctions externes "
"créées avec ``use_errno=True``, la valeur de :data:`errno` avant l'appel de "
"la fonction est échangée avec la copie privée de *ctypes*. La même chose se "
"produit juste après l'appel de la fonction."
#: ../Doc/library/ctypes.rst:1387 #: ../Doc/library/ctypes.rst:1387
msgid "" msgid ""
@ -1686,6 +1764,9 @@ msgid ""
"private copy, and the function :func:`ctypes.set_errno` changes the ctypes " "private copy, and the function :func:`ctypes.set_errno` changes the ctypes "
"private copy to a new value and returns the former value." "private copy to a new value and returns the former value."
msgstr "" msgstr ""
"La fonction :func:`ctypes.get_errno` renvoie la valeur de la copie privée de "
"*ctypes*. La fonction :func:`ctypes.set_errno` affecte une nouvelle valeur à "
"la copie privée et renvoie l'ancienne valeur."
#: ../Doc/library/ctypes.rst:1391 #: ../Doc/library/ctypes.rst:1391
msgid "" msgid ""
@ -1695,24 +1776,36 @@ msgid ""
"and :func:`ctypes.set_last_error` are used to request and change the ctypes " "and :func:`ctypes.set_last_error` are used to request and change the ctypes "
"private copy of the windows error code." "private copy of the windows error code."
msgstr "" msgstr ""
"Définir le paramètre *use_last_error* à vrai active le même mécanisme pour "
"le code d'erreur de Windows qui est géré par les fonctions :func:"
"`GetLastError` et :func:`SetLastError` de l'API Windows ; :func:`ctypes."
"get_last_error` et :func:`ctypes.set_last_error` servent à obtenir et "
"modifier la copie privée *ctypes* de ce code d'erreur."
#: ../Doc/library/ctypes.rst:1400 #: ../Doc/library/ctypes.rst:1400
msgid "" msgid ""
"Flag to use as *mode* parameter. On platforms where this flag is not " "Flag to use as *mode* parameter. On platforms where this flag is not "
"available, it is defined as the integer zero." "available, it is defined as the integer zero."
msgstr "" msgstr ""
"Valeur possible pour le paramètre *mode*. Vaut zéro sur les plates-formes où "
"ce drapeau n'est pas disponible."
#: ../Doc/library/ctypes.rst:1407 #: ../Doc/library/ctypes.rst:1407
msgid "" msgid ""
"Flag to use as *mode* parameter. On platforms where this is not available, " "Flag to use as *mode* parameter. On platforms where this is not available, "
"it is the same as *RTLD_GLOBAL*." "it is the same as *RTLD_GLOBAL*."
msgstr "" msgstr ""
"Valeur possible pour le paramètre *mode*. Vaut *RTLD_GLOBAL* sur les plates-"
"formes où ce drapeau n'est pas disponible."
#: ../Doc/library/ctypes.rst:1414 #: ../Doc/library/ctypes.rst:1414
msgid "" msgid ""
"The default mode which is used to load shared libraries. On OSX 10.3, this " "The default mode which is used to load shared libraries. On OSX 10.3, this "
"is *RTLD_GLOBAL*, otherwise it is the same as *RTLD_LOCAL*." "is *RTLD_GLOBAL*, otherwise it is the same as *RTLD_LOCAL*."
msgstr "" msgstr ""
"Mode de chargement par défaut des bibliothèques partagées. Vaut "
"*RTLD_GLOBAL* sur OSX 10.3 et *RTLD_LOCAL* sur les autres systèmes "
"d'exploitation."
#: ../Doc/library/ctypes.rst:1417 #: ../Doc/library/ctypes.rst:1417
msgid "" msgid ""
@ -1722,12 +1815,19 @@ msgid ""
"therefore accessing it repeatedly returns the same object each time. On the " "therefore accessing it repeatedly returns the same object each time. On the "
"other hand, accessing it through an index returns a new object each time::" "other hand, accessing it through an index returns a new object each time::"
msgstr "" msgstr ""
"Les instances de ces classes n'ont pas de méthodes publiques ; on accède aux "
"fonctions de la bibliothèque partagée par attribut ou par indiçage. Notez "
"que les résultats des accès par attribut sont mis en cache, et donc des "
"accès consécutifs renvoient à chaque fois le même objet. Accéder à une "
"fonction par indice renvoie cependant chaque fois un nouvel objet :"
#: ../Doc/library/ctypes.rst:1430 #: ../Doc/library/ctypes.rst:1430
msgid "" msgid ""
"The following public attributes are available, their name starts with an " "The following public attributes are available, their name starts with an "
"underscore to not clash with exported function names:" "underscore to not clash with exported function names:"
msgstr "" msgstr ""
"Les attributs publics suivants sont disponibles, leur nom commence par un "
"tiret bas pour éviter les conflits avec les noms des fonctions exportées :"
#: ../Doc/library/ctypes.rst:1436 #: ../Doc/library/ctypes.rst:1436
msgid "The system handle used to access the library." msgid "The system handle used to access the library."
@ -1735,7 +1835,7 @@ msgstr ""
#: ../Doc/library/ctypes.rst:1441 #: ../Doc/library/ctypes.rst:1441
msgid "The name of the library passed in the constructor." msgid "The name of the library passed in the constructor."
msgstr "" msgstr "Nom de la bibliothèque donné au constructeur."
#: ../Doc/library/ctypes.rst:1443 #: ../Doc/library/ctypes.rst:1443
msgid "" msgid ""
@ -1744,12 +1844,18 @@ msgid ""
"calling the :meth:`LoadLibrary` method, or by retrieving the library as " "calling the :meth:`LoadLibrary` method, or by retrieving the library as "
"attribute of the loader instance." "attribute of the loader instance."
msgstr "" msgstr ""
"Il est possible de charger une bibliothèque partagée soit en utilisant une "
"instance de la classe :class:`LibraryLoader`, soit en appelant la méthode :"
"meth:`LoadLibrary`, soit en récupérant la bibliothèque comme attribut de "
"l'instance du chargeur."
#: ../Doc/library/ctypes.rst:1451 #: ../Doc/library/ctypes.rst:1451
msgid "" msgid ""
"Class which loads shared libraries. *dlltype* should be one of the :class:" "Class which loads shared libraries. *dlltype* should be one of the :class:"
"`CDLL`, :class:`PyDLL`, :class:`WinDLL`, or :class:`OleDLL` types." "`CDLL`, :class:`PyDLL`, :class:`WinDLL`, or :class:`OleDLL` types."
msgstr "" msgstr ""
"Classe pour charger une bibliothèque partagée. *dlltype* doit être de type :"
"class:`CDLL`, :class:`PyDLL`, :class:`WinDLL` ou :class:`OleDLL`."
#: ../Doc/library/ctypes.rst:1454 #: ../Doc/library/ctypes.rst:1454
msgid "" msgid ""
@ -1757,38 +1863,44 @@ msgid ""
"by accessing it as attribute of a library loader instance. The result is " "by accessing it as attribute of a library loader instance. The result is "
"cached, so repeated attribute accesses return the same library each time." "cached, so repeated attribute accesses return the same library each time."
msgstr "" msgstr ""
":meth:`__getattr__` a un comportement particulier : elle charge une "
"bibliothèque quand on accède à un attribut du chargeur. Le résultat est mis "
"en cache, donc des accès consécutifs renvoient la même bibliothèque à chaque "
"fois."
#: ../Doc/library/ctypes.rst:1460 #: ../Doc/library/ctypes.rst:1460
msgid "" msgid ""
"Load a shared library into the process and return it. This method always " "Load a shared library into the process and return it. This method always "
"returns a new instance of the library." "returns a new instance of the library."
msgstr "" msgstr ""
"Charge une bibliothèque partagée dans le processus et la renvoie. Cette "
"méthode renvoie toujours une nouvelle instance de la bibliothèque."
#: ../Doc/library/ctypes.rst:1464 #: ../Doc/library/ctypes.rst:1464
msgid "These prefabricated library loaders are available:" msgid "These prefabricated library loaders are available:"
msgstr "" msgstr "Plusieurs chargeurs sont fournis :"
#: ../Doc/library/ctypes.rst:1469 #: ../Doc/library/ctypes.rst:1469
msgid "Creates :class:`CDLL` instances." msgid "Creates :class:`CDLL` instances."
msgstr "" msgstr "Pour créer des instances de :class:`CDLL`."
#: ../Doc/library/ctypes.rst:1475 #: ../Doc/library/ctypes.rst:1475
msgid "Windows only: Creates :class:`WinDLL` instances." msgid "Windows only: Creates :class:`WinDLL` instances."
msgstr "" msgstr "Pour créer des instances de :class:`WinDLL` (uniquement en Windows)."
#: ../Doc/library/ctypes.rst:1481 #: ../Doc/library/ctypes.rst:1481
msgid "Windows only: Creates :class:`OleDLL` instances." msgid "Windows only: Creates :class:`OleDLL` instances."
msgstr "" msgstr "Pour créer des instances de :class:`OleDLL` (uniquement en Windows)."
#: ../Doc/library/ctypes.rst:1487 #: ../Doc/library/ctypes.rst:1487
msgid "Creates :class:`PyDLL` instances." msgid "Creates :class:`PyDLL` instances."
msgstr "" msgstr "Pour créer des instances de :class:`PyDLL`."
#: ../Doc/library/ctypes.rst:1490 #: ../Doc/library/ctypes.rst:1490
msgid "" msgid ""
"For accessing the C Python api directly, a ready-to-use Python shared " "For accessing the C Python api directly, a ready-to-use Python shared "
"library object is available:" "library object is available:"
msgstr "" msgstr "Il existe un moyen rapide d'accéder directement à l'API C Python :"
#: ../Doc/library/ctypes.rst:1496 #: ../Doc/library/ctypes.rst:1496
msgid "" msgid ""
@ -1797,6 +1909,11 @@ msgid ""
"`int`, which is of course not always the truth, so you have to assign the " "`int`, which is of course not always the truth, so you have to assign the "
"correct :attr:`restype` attribute to use these functions." "correct :attr:`restype` attribute to use these functions."
msgstr "" msgstr ""
"Une instance de :class:`PyDLL` dont les attributs sont les fonctions "
"exportées par l'API C Python. Toutes ces fonctions sont supposées renvoyer "
"un :c:type:`int` C, ce qui n'est bien entendu pas toujours le cas. Il faut "
"donc définir vous-même le bon attribut :attr:`restype` pour pouvoir les "
"utiliser."
#: ../Doc/library/ctypes.rst:1505 #: ../Doc/library/ctypes.rst:1505
msgid "Foreign functions" msgid "Foreign functions"
@ -1810,28 +1927,41 @@ msgid ""
"instances as arguments, and return the default result type specified by the " "instances as arguments, and return the default result type specified by the "
"library loader. They are instances of a private class:" "library loader. They are instances of a private class:"
msgstr "" msgstr ""
"Comme expliqué dans la section précédente, on peut accéder aux fonctions "
"externes au travers des attributs des bibliothèques partagées. Un objet "
"fonction créé de cette façon accepte par défaut un nombre quelconque "
"d'arguments qui peuvent être de n'importe quel type de données *ctypes*. Il "
"renvoie le type par défaut du chargeur de la bibliothèque. Ce sont des "
"instances de la classe privée :"
#: ../Doc/library/ctypes.rst:1516 #: ../Doc/library/ctypes.rst:1516
msgid "Base class for C callable foreign functions." msgid "Base class for C callable foreign functions."
msgstr "" msgstr "Classe de base pour les fonctions externes C."
#: ../Doc/library/ctypes.rst:1518 #: ../Doc/library/ctypes.rst:1518
msgid "" msgid ""
"Instances of foreign functions are also C compatible data types; they " "Instances of foreign functions are also C compatible data types; they "
"represent C function pointers." "represent C function pointers."
msgstr "" msgstr ""
"Une instance de fonction externe est également un type de donnée compatible "
"avec le C ; elle représente un pointeur vers une fonction."
#: ../Doc/library/ctypes.rst:1521 #: ../Doc/library/ctypes.rst:1521
msgid "" msgid ""
"This behavior can be customized by assigning to special attributes of the " "This behavior can be customized by assigning to special attributes of the "
"foreign function object." "foreign function object."
msgstr "" msgstr ""
"Son comportement peut-être personnalisé en réaffectant les attributs "
"spécifiques de l'objet représentant la fonction externe."
#: ../Doc/library/ctypes.rst:1526 #: ../Doc/library/ctypes.rst:1526
msgid "" msgid ""
"Assign a ctypes type to specify the result type of the foreign function. Use " "Assign a ctypes type to specify the result type of the foreign function. Use "
"``None`` for :c:type:`void`, a function not returning anything." "``None`` for :c:type:`void`, a function not returning anything."
msgstr "" msgstr ""
"Fait correspondre le type de retour de la fonction externe à un type "
"*ctypes*. Dans le cas où la fonction ne renvoie rien (:c:type:`void`), "
"utilisez ``None``."
#: ../Doc/library/ctypes.rst:1529 #: ../Doc/library/ctypes.rst:1529
msgid "" msgid ""
@ -1842,6 +1972,14 @@ msgid ""
"or error checking use a ctypes data type as :attr:`restype` and assign a " "or error checking use a ctypes data type as :attr:`restype` and assign a "
"callable to the :attr:`errcheck` attribute." "callable to the :attr:`errcheck` attribute."
msgstr "" msgstr ""
"Il est aussi possible de passer n'importe quel un objet Python qui n'est pas "
"un type *ctypes* pourvu qu'il soit appelable. Dans ce cas, la fonction est "
"censée renvoyer un :c:type:`int` C et l'appelable sera appelé avec cet "
"entier, ce qui permet ainsi de faire des actions supplémentaires comme "
"vérifier un code d'erreur. Ce mécanisme est obsolète ; une façon plus souple "
"de faire des actions supplémentaires ou de la vérification consiste à "
"affecter un type *ctypes* à :attr:`restype` et à affecter un appelable à "
"l'attribut :attr:`errcheck`."
#: ../Doc/library/ctypes.rst:1538 #: ../Doc/library/ctypes.rst:1538
msgid "" msgid ""
@ -1851,6 +1989,11 @@ msgid ""
"tuple; functions using the C calling convention accept additional, " "tuple; functions using the C calling convention accept additional, "
"unspecified arguments as well." "unspecified arguments as well."
msgstr "" msgstr ""
"Fait correspondre le type des arguments que la fonction accepte avec un *n*-"
"uplet de types *ctypes*. Les fonctions qui utilisent la convention d'appel "
"``stdcall`` ne peuvent être appelées qu'avec le même nombre d'arguments que "
"la taille du *n*-uplet mais les fonctions qui utilisent la convention "
"d'appel C acceptent aussi des arguments additionnels non-définis."
#: ../Doc/library/ctypes.rst:1544 #: ../Doc/library/ctypes.rst:1544
msgid "" msgid ""
@ -1861,6 +2004,13 @@ msgid ""
"attr:`argtypes` tuple will convert a string passed as argument into a bytes " "attr:`argtypes` tuple will convert a string passed as argument into a bytes "
"object using ctypes conversion rules." "object using ctypes conversion rules."
msgstr "" msgstr ""
"À l'appel d'une fonction externe, chaque argument est passé à la méthode de "
"classe :meth:`from_param` de l'élément correspondant dans le *n*-uplet des :"
"attr:`argtypes`. Cette méthode convertit l'argument initial en un objet que "
"la fonction externe peut comprendre. Par exemple, un :class:`c_char_p` dans "
"le *n*-uplet des :attr:`argtypes` va transformer la chaîne de caractères "
"passée en argument en un objet chaîne d'octets selon les règles de "
"conversion *ctypes*."
#: ../Doc/library/ctypes.rst:1551 #: ../Doc/library/ctypes.rst:1551
msgid "" msgid ""
@ -1869,30 +2019,47 @@ msgid ""
"usable as argument (integer, string, ctypes instance). This allows defining " "usable as argument (integer, string, ctypes instance). This allows defining "
"adapters that can adapt custom objects as function parameters." "adapters that can adapt custom objects as function parameters."
msgstr "" msgstr ""
"Nouveau : il est maintenant possible de mettre des objets qui ne sont pas "
"des types de *ctypes* dans les *argtypes*, mais ceux-ci doivent avoir une "
"méthode :meth:`from_param` renvoyant une valeur qui peut être utilisée comme "
"un argument (entier, chaîne de caractères ou instance *ctypes*). Ceci permet "
"de créer des adaptateurs qui convertissent des objets arbitraires en des "
"paramètres de fonction."
#: ../Doc/library/ctypes.rst:1558 #: ../Doc/library/ctypes.rst:1558
msgid "" msgid ""
"Assign a Python function or another callable to this attribute. The callable " "Assign a Python function or another callable to this attribute. The callable "
"will be called with three or more arguments:" "will be called with three or more arguments:"
msgstr "" msgstr ""
"Définit une fonction Python ou tout autre appelable qui sera appelé avec "
"trois arguments ou plus :"
#: ../Doc/library/ctypes.rst:1565 #: ../Doc/library/ctypes.rst:1565
msgid "" msgid ""
"*result* is what the foreign function returns, as specified by the :attr:" "*result* is what the foreign function returns, as specified by the :attr:"
"`restype` attribute." "`restype` attribute."
msgstr "" msgstr ""
"*result* est la valeur de retour de la fonction externe, comme défini par "
"l'attribut :attr:`restype`."
#: ../Doc/library/ctypes.rst:1568 #: ../Doc/library/ctypes.rst:1568
msgid "" msgid ""
"*func* is the foreign function object itself, this allows reusing the same " "*func* is the foreign function object itself, this allows reusing the same "
"callable object to check or post process the results of several functions." "callable object to check or post process the results of several functions."
msgstr "" msgstr ""
"*func* est l'objet représentant la fonction externe elle-même. Cet accesseur "
"permet de réutiliser le même appelable pour vérifier le résultat de "
"plusieurs fonctions ou de faire des actions supplémentaires après leur "
"exécution."
#: ../Doc/library/ctypes.rst:1572 #: ../Doc/library/ctypes.rst:1572
msgid "" msgid ""
"*arguments* is a tuple containing the parameters originally passed to the " "*arguments* is a tuple containing the parameters originally passed to the "
"function call, this allows specializing the behavior on the arguments used." "function call, this allows specializing the behavior on the arguments used."
msgstr "" msgstr ""
"*arguments* est le *n*-uplet qui contient les paramètres initiaux passés à "
"la fonction, ceci permet de spécialiser le comportement des arguments "
"utilisés."
#: ../Doc/library/ctypes.rst:1576 #: ../Doc/library/ctypes.rst:1576
msgid "" msgid ""
@ -1900,12 +2067,17 @@ msgid ""
"function call, but it can also check the result value and raise an exception " "function call, but it can also check the result value and raise an exception "
"if the foreign function call failed." "if the foreign function call failed."
msgstr "" msgstr ""
"L'objet renvoyé par cette fonction est celui renvoyé par l'appel de la "
"fonction externe, mais il peut aussi vérifier la valeur du résultat et lever "
"une exception si l'appel a échoué."
#: ../Doc/library/ctypes.rst:1583 #: ../Doc/library/ctypes.rst:1583
msgid "" msgid ""
"This exception is raised when a foreign function call cannot convert one of " "This exception is raised when a foreign function call cannot convert one of "
"the passed arguments." "the passed arguments."
msgstr "" msgstr ""
"Exception levée quand un appel à la fonction externe ne peut pas convertir "
"un des arguments qu'elle a reçus."
#: ../Doc/library/ctypes.rst:1590 #: ../Doc/library/ctypes.rst:1590
msgid "Function prototypes" msgid "Function prototypes"

View File

@ -2964,7 +2964,7 @@ msgstr ""
#: ../Doc/library/curses.rst:1768 #: ../Doc/library/curses.rst:1768
msgid "Action" msgid "Action"
msgstr "" msgstr "Action"
#: ../Doc/library/curses.rst:1770 #: ../Doc/library/curses.rst:1770
msgid ":kbd:`Control-A`" msgid ":kbd:`Control-A`"

View File

@ -16,7 +16,7 @@ msgstr ""
#: ../Doc/library/difflib.rst:2 #: ../Doc/library/difflib.rst:2
msgid ":mod:`difflib` --- Helpers for computing deltas" msgid ":mod:`difflib` --- Helpers for computing deltas"
msgstr "" msgstr ":mod:`difflib` — Utilitaires pour le calcul des deltas"
#: ../Doc/library/difflib.rst:11 #: ../Doc/library/difflib.rst:11
msgid "**Source code:** :source:`Lib/difflib.py`" msgid "**Source code:** :source:`Lib/difflib.py`"
@ -46,6 +46,20 @@ msgid ""
"minimal edit sequences, but does tend to yield matches that \"look right\" " "minimal edit sequences, but does tend to yield matches that \"look right\" "
"to people." "to people."
msgstr "" msgstr ""
"C'est une classe flexible permettant de comparer des séquences deux à deux "
"de n'importe quel type, tant que les éléments des séquences sont :term:"
"`hachables <hashable>`. L'algorithme de base est antérieur, et un peu plus "
"sophistiqué, à un algorithme publié à la fin des années 1980 par Ratcliff et "
"Obershelp sous le nom hyperbolique de *gestalt pattern matching*. L'idée est "
"de trouver la plus longue sous-séquence d'appariement contiguë qui ne "
"contient pas d'éléments « indésirables » ; ces éléments « indésirables » "
"sont ceux qui sont inintéressants dans un certain sens, comme les lignes "
"blanches ou les espaces. (Le traitement des éléments indésirables est une "
"extension de l'algorithme de Ratcliff et Obershelp). La même idée est "
"ensuite appliquée récursivement aux morceaux des séquences à gauche et à "
"droite de la sous-séquence correspondante. Cela ne donne pas des séquences "
"de montage minimales, mais tend à donner des correspondances qui « semblent "
"correctes » pour les gens."
#: ../Doc/library/difflib.rst:40 #: ../Doc/library/difflib.rst:40
msgid "" msgid ""
@ -55,6 +69,12 @@ msgid ""
"dependent in a complicated way on how many elements the sequences have in " "dependent in a complicated way on how many elements the sequences have in "
"common; best case time is linear." "common; best case time is linear."
msgstr "" msgstr ""
"**Compléxité temporelle :** l'algorithme de base de Ratcliff-Obershelp est "
"de complexité cubique dans le pire cas et de complexité quadratique dans le "
"cas attendu. :class:`SequenceMatcher` est de complexité quadratique pour le "
"pire cas et son comportement dans le cas attendu dépend de façon complexe du "
"nombre d'éléments que les séquences ont en commun ; le temps dans le "
"meilleur cas est linéaire."
#: ../Doc/library/difflib.rst:46 #: ../Doc/library/difflib.rst:46
msgid "" msgid ""
@ -67,10 +87,20 @@ msgid ""
"This heuristic can be turned off by setting the ``autojunk`` argument to " "This heuristic can be turned off by setting the ``autojunk`` argument to "
"``False`` when creating the :class:`SequenceMatcher`." "``False`` when creating the :class:`SequenceMatcher`."
msgstr "" msgstr ""
"**Heuristique automatique des indésirables:** :class:`SequenceMatcher` "
"utilise une heuristique qui traite automatiquement certains éléments de la "
"séquence comme indésirables. L'heuristique compte combien de fois chaque "
"élément individuel apparaît dans la séquence. Si les doublons d'un élément "
"(après le premier) représentent plus de 1 % de la séquence et que la "
"séquence compte au moins 200 éléments, cet élément est marqué comme "
 populaire » et est traité comme indésirable aux fins de la comparaison des "
"séquences. Cette heuristique peut être désactivée en réglant l'argument "
"``autojunk`` sur ``False`` lors de la création de la classe :class:"
"`SequenceMatcher`."
#: ../Doc/library/difflib.rst:54 ../Doc/library/difflib.rst:383 #: ../Doc/library/difflib.rst:54 ../Doc/library/difflib.rst:383
msgid "The *autojunk* parameter." msgid "The *autojunk* parameter."
msgstr "" msgstr "Le paramètre *autojunk*."
#: ../Doc/library/difflib.rst:60 #: ../Doc/library/difflib.rst:60
msgid "" msgid ""
@ -79,10 +109,17 @@ msgid ""
"both to compare sequences of lines, and to compare sequences of characters " "both to compare sequences of lines, and to compare sequences of characters "
"within similar (near-matching) lines." "within similar (near-matching) lines."
msgstr "" msgstr ""
"Il s'agit d'une classe permettant de comparer des séquences de lignes de "
"texte et de produire des différences ou deltas humainement lisibles. "
"*Differ* utilise :class:`SequenceMatcher` à la fois pour comparer des "
"séquences de lignes, et pour comparer des séquences de caractères dans des "
"lignes similaires (quasi-correspondantes)."
#: ../Doc/library/difflib.rst:65 #: ../Doc/library/difflib.rst:65
msgid "Each line of a :class:`Differ` delta begins with a two-letter code:" msgid "Each line of a :class:`Differ` delta begins with a two-letter code:"
msgstr "" msgstr ""
"Chaque ligne d'un delta :class:`Differ` commence par un code de deux "
"lettres :"
#: ../Doc/library/difflib.rst:68 #: ../Doc/library/difflib.rst:68
msgid "Code" msgid "Code"
@ -98,7 +135,7 @@ msgstr "``'- '``"
#: ../Doc/library/difflib.rst:70 #: ../Doc/library/difflib.rst:70
msgid "line unique to sequence 1" msgid "line unique to sequence 1"
msgstr "" msgstr "ligne n'appartenant qu'à la séquence 1"
#: ../Doc/library/difflib.rst:72 #: ../Doc/library/difflib.rst:72
msgid "``'+ '``" msgid "``'+ '``"
@ -106,7 +143,7 @@ msgstr "``'+ '``"
#: ../Doc/library/difflib.rst:72 #: ../Doc/library/difflib.rst:72
msgid "line unique to sequence 2" msgid "line unique to sequence 2"
msgstr "" msgstr "ligne n'appartenant qu'à la séquence 2"
#: ../Doc/library/difflib.rst:74 #: ../Doc/library/difflib.rst:74
msgid "``' '``" msgid "``' '``"
@ -114,7 +151,7 @@ msgstr "``' '``"
#: ../Doc/library/difflib.rst:74 #: ../Doc/library/difflib.rst:74
msgid "line common to both sequences" msgid "line common to both sequences"
msgstr "" msgstr "ligne commune aux deux séquences"
#: ../Doc/library/difflib.rst:76 #: ../Doc/library/difflib.rst:76
msgid "``'? '``" msgid "``'? '``"
@ -122,7 +159,7 @@ msgstr "``'? '``"
#: ../Doc/library/difflib.rst:76 #: ../Doc/library/difflib.rst:76
msgid "line not present in either input sequence" msgid "line not present in either input sequence"
msgstr "" msgstr "ligne non présente dans l'une ou l'autre des séquences d'entrée"
#: ../Doc/library/difflib.rst:79 #: ../Doc/library/difflib.rst:79
msgid "" msgid ""
@ -130,6 +167,10 @@ msgid ""
"differences, and were not present in either input sequence. These lines can " "differences, and were not present in either input sequence. These lines can "
"be confusing if the sequences contain tab characters." "be confusing if the sequences contain tab characters."
msgstr "" msgstr ""
"Les lignes commençant par ``'?'`` tentent de guider l'œil vers les "
"différences intralignes, et n'étaient présentes dans aucune des séquences "
"d'entrée. Ces lignes peuvent être déroutantes si les séquences contiennent "
"des caractères de tabulation."
#: ../Doc/library/difflib.rst:86 #: ../Doc/library/difflib.rst:86
msgid "" msgid ""
@ -138,26 +179,35 @@ msgid ""
"text with inter-line and intra-line change highlights. The table can be " "text with inter-line and intra-line change highlights. The table can be "
"generated in either full or contextual difference mode." "generated in either full or contextual difference mode."
msgstr "" msgstr ""
"Cette classe peut être utilisée pour créer un tableau HTML (ou un fichier "
"HTML complet contenant le tableau) montrant une comparaison côte à côte, "
"ligne par ligne, du texte avec les changements inter-lignes et intralignes. "
"Le tableau peut être généré en mode de différence complet ou contextuel."
#: ../Doc/library/difflib.rst:91 #: ../Doc/library/difflib.rst:91
msgid "The constructor for this class is:" msgid "The constructor for this class is:"
msgstr "" msgstr "Le constructeur pour cette classe est :"
#: ../Doc/library/difflib.rst:96 #: ../Doc/library/difflib.rst:96
msgid "Initializes instance of :class:`HtmlDiff`." msgid "Initializes instance of :class:`HtmlDiff`."
msgstr "" msgstr "Initialise l'instance de :class:`HtmlDiff`."
#: ../Doc/library/difflib.rst:98 #: ../Doc/library/difflib.rst:98
msgid "" msgid ""
"*tabsize* is an optional keyword argument to specify tab stop spacing and " "*tabsize* is an optional keyword argument to specify tab stop spacing and "
"defaults to ``8``." "defaults to ``8``."
msgstr "" msgstr ""
"*tabsize* est un mot-clé optionnel pour spécifier l'espacement des "
"tabulations et sa valeur par défaut est ``8``."
#: ../Doc/library/difflib.rst:101 #: ../Doc/library/difflib.rst:101
msgid "" msgid ""
"*wrapcolumn* is an optional keyword to specify column number where lines are " "*wrapcolumn* is an optional keyword to specify column number where lines are "
"broken and wrapped, defaults to ``None`` where lines are not wrapped." "broken and wrapped, defaults to ``None`` where lines are not wrapped."
msgstr "" msgstr ""
"*wrapcolumn* est un mot-clé optionnel pour spécifier le numéro de la colonne "
"où les lignes sont coupées pour être ré-agencées, la valeur par défaut est "
"``None`` lorsque les lignes ne sont pas ré-agencées."
#: ../Doc/library/difflib.rst:104 #: ../Doc/library/difflib.rst:104
msgid "" msgid ""
@ -166,10 +216,14 @@ msgid ""
"differences). See :func:`ndiff` documentation for argument default values " "differences). See :func:`ndiff` documentation for argument default values "
"and descriptions." "and descriptions."
msgstr "" msgstr ""
"*linejunk* et *charjunk* sont des arguments de mots-clés optionnels passés "
"dans :func:`ndiff` (utilisés par :class:`HtmlDiff` pour générer les "
"différences HTML côte à côte). Voir la documentation de :func:`ndiff` pour "
"les valeurs par défaut des arguments et les descriptions."
#: ../Doc/library/difflib.rst:108 #: ../Doc/library/difflib.rst:108
msgid "The following methods are public:" msgid "The following methods are public:"
msgstr "" msgstr "Les méthodes suivantes sont publiques :"
#: ../Doc/library/difflib.rst:113 #: ../Doc/library/difflib.rst:113
msgid "" msgid ""
@ -177,12 +231,19 @@ msgid ""
"which is a complete HTML file containing a table showing line by line " "which is a complete HTML file containing a table showing line by line "
"differences with inter-line and intra-line changes highlighted." "differences with inter-line and intra-line changes highlighted."
msgstr "" msgstr ""
"Compare *fromlines* et *tolines* (listes de chaînes de caractères) et "
"renvoie une chaîne de caractères qui est un fichier HTML complet contenant "
"un tableau montrant les différences ligne par ligne avec les changements "
"inter-lignes et intralignes mis en évidence."
#: ../Doc/library/difflib.rst:117 #: ../Doc/library/difflib.rst:117
msgid "" msgid ""
"*fromdesc* and *todesc* are optional keyword arguments to specify from/to " "*fromdesc* and *todesc* are optional keyword arguments to specify from/to "
"file column header strings (both default to an empty string)." "file column header strings (both default to an empty string)."
msgstr "" msgstr ""
"*fromdesc* et *todesc* sont des arguments mot-clé optionnels pour spécifier "
"les chaînes d'en-tête des colonnes *from/to* du fichier (les deux sont des "
"chaînes vides par défaut)."
#: ../Doc/library/difflib.rst:120 #: ../Doc/library/difflib.rst:120
msgid "" msgid ""
@ -196,12 +257,25 @@ msgid ""
"hyperlinks to place the next difference highlight at the top of the browser " "hyperlinks to place the next difference highlight at the top of the browser "
"without any leading context)." "without any leading context)."
msgstr "" msgstr ""
"*context* et *numlines* sont tous deux des arguments mots-clés facultatifs. "
"Mettre *context* à ``True`` lorsque les différences contextuelles doivent "
"être affichées, sinon la valeur par défaut est ``False`` pour afficher les "
"fichiers complets. Les *numlines* ont pour valeur par défaut ``5``. Lorsque "
"*context* est `True``, *numlines* contrôle le nombre de lignes de contexte "
"qui entourent les différences mise en évidence. Lorsque *context* est "
"``False``, *numlines* contrôle le nombre de lignes qui sont affichées avant "
"un surlignage de différence lors de l'utilisation des hyperliens "
 suivants » (un réglage à zéro ferait en sorte que les hyperliens "
 suivants » placeraient le surlignage de différence suivant en haut du "
"navigateur sans aucun contexte introductif)."
#: ../Doc/library/difflib.rst:130 #: ../Doc/library/difflib.rst:130
msgid "" msgid ""
"*charset* keyword-only argument was added. The default charset of HTML " "*charset* keyword-only argument was added. The default charset of HTML "
"document changed from ``'ISO-8859-1'`` to ``'utf-8'``." "document changed from ``'ISO-8859-1'`` to ``'utf-8'``."
msgstr "" msgstr ""
"l'argument mot-clé *charset* a été ajouté. Le jeu de caractères par défaut "
"du document HTML est passé de ``'ISO-8859-1'`` à ``'utf-8'``."
#: ../Doc/library/difflib.rst:136 #: ../Doc/library/difflib.rst:136
msgid "" msgid ""
@ -209,24 +283,34 @@ msgid ""
"which is a complete HTML table showing line by line differences with inter-" "which is a complete HTML table showing line by line differences with inter-"
"line and intra-line changes highlighted." "line and intra-line changes highlighted."
msgstr "" msgstr ""
"Compare *fromlines* et *tolines* (listes de chaînes) et renvoie une chaîne "
"qui est un tableau HTML complet montrant les différences ligne par ligne "
"avec les changements inter-lignes et intralignes mis en évidence."
#: ../Doc/library/difflib.rst:140 #: ../Doc/library/difflib.rst:140
msgid "" msgid ""
"The arguments for this method are the same as those for the :meth:" "The arguments for this method are the same as those for the :meth:"
"`make_file` method." "`make_file` method."
msgstr "" msgstr ""
"Les arguments pour cette méthode sont les mêmes que ceux de la méthode :meth:"
"`make_file`."
#: ../Doc/library/difflib.rst:143 #: ../Doc/library/difflib.rst:143
msgid "" msgid ""
":file:`Tools/scripts/diff.py` is a command-line front-end to this class and " ":file:`Tools/scripts/diff.py` is a command-line front-end to this class and "
"contains a good example of its use." "contains a good example of its use."
msgstr "" msgstr ""
":file:`Tools/scripts/diff.py` est un frontal en ligne de commande de cette "
"classe et contient un bon exemple de son utilisation."
#: ../Doc/library/difflib.rst:149 #: ../Doc/library/difflib.rst:149
msgid "" msgid ""
"Compare *a* and *b* (lists of strings); return a delta (a :term:`generator` " "Compare *a* and *b* (lists of strings); return a delta (a :term:`generator` "
"generating the delta lines) in context diff format." "generating the delta lines) in context diff format."
msgstr "" msgstr ""
"Compare *a* et *b* (listes de chaînes de caractères) ; renvoie un delta (un :"
"term:`generateur <generator>` générant les lignes delta) dans un format de "
"différence de contexte."
#: ../Doc/library/difflib.rst:152 #: ../Doc/library/difflib.rst:152
msgid "" msgid ""
@ -243,12 +327,20 @@ msgid ""
"with :func:`io.IOBase.writelines` since both the inputs and outputs have " "with :func:`io.IOBase.writelines` since both the inputs and outputs have "
"trailing newlines." "trailing newlines."
msgstr "" msgstr ""
"Par défaut, les lignes de contrôle de la différence (celles avec ``***`` ou "
"``---``) sont créées avec un saut de ligne à la fin. Ceci est utile pour que "
"les entrées créées à partir de :func:`io.IOBase.readlines` résultent en des "
"différences qui peuvent être utilisées avec :func:`io.IOBase.writelines` "
"puisque les entrées et les sorties ont des nouvelles lignes de fin."
#: ../Doc/library/difflib.rst:162 ../Doc/library/difflib.rst:293 #: ../Doc/library/difflib.rst:162 ../Doc/library/difflib.rst:293
msgid "" msgid ""
"For inputs that do not have trailing newlines, set the *lineterm* argument " "For inputs that do not have trailing newlines, set the *lineterm* argument "
"to ``\"\"`` so that the output will be uniformly newline free." "to ``\"\"`` so that the output will be uniformly newline free."
msgstr "" msgstr ""
"Pour les entrées qui n'ont pas de retour à la ligne, mettre l'argument "
"*lineterm* à ``\"\"`` afin que la sortie soit uniformément sans retour à la "
"ligne."
#: ../Doc/library/difflib.rst:165 ../Doc/library/difflib.rst:296 #: ../Doc/library/difflib.rst:165 ../Doc/library/difflib.rst:296
msgid "" msgid ""
@ -258,10 +350,18 @@ msgid ""
"normally expressed in the ISO 8601 format. If not specified, the strings " "normally expressed in the ISO 8601 format. If not specified, the strings "
"default to blanks." "default to blanks."
msgstr "" msgstr ""
"Le format de contexte de différence comporte normalement un en-tête pour les "
"noms de fichiers et les heures de modification. Tout ou partie de ces "
"éléments peuvent être spécifiés en utilisant les chaînes de caractères "
"*fromfile*, *tofile*, *fromfiledate* et *tofiledate*. Les heures de "
"modification sont normalement exprimées dans le format ISO 8601. Si elles ne "
"sont pas spécifiées, les chaînes de caractères sont par défaut vierges."
#: ../Doc/library/difflib.rst:188 ../Doc/library/difflib.rst:317 #: ../Doc/library/difflib.rst:188 ../Doc/library/difflib.rst:317
msgid "See :ref:`difflib-interface` for a more detailed example." msgid "See :ref:`difflib-interface` for a more detailed example."
msgstr "" msgstr ""
"Voir :ref:`une interface de ligne de commandes pour difflib <difflib-"
"interface>` pour un exemple plus détaillé."
#: ../Doc/library/difflib.rst:193 #: ../Doc/library/difflib.rst:193
msgid "" msgid ""

View File

@ -16,17 +16,19 @@ msgstr ""
#: ../Doc/library/email.errors.rst:2 #: ../Doc/library/email.errors.rst:2
msgid ":mod:`email.errors`: Exception and Defect classes" msgid ":mod:`email.errors`: Exception and Defect classes"
msgstr "" msgstr ":mod:`email.errors` : exceptions et classes pour les anomalies"
#: ../Doc/library/email.errors.rst:7 #: ../Doc/library/email.errors.rst:7
msgid "**Source code:** :source:`Lib/email/errors.py`" msgid "**Source code:** :source:`Lib/email/errors.py`"
msgstr "" msgstr "**Code source :** :source:`Lib/email/errors.py`"
#: ../Doc/library/email.errors.rst:11 #: ../Doc/library/email.errors.rst:11
msgid "" msgid ""
"The following exception classes are defined in the :mod:`email.errors` " "The following exception classes are defined in the :mod:`email.errors` "
"module:" "module:"
msgstr "" msgstr ""
"Les classes d'exception suivantes sont définies dans le module :mod:`email."
"errors` :"
#: ../Doc/library/email.errors.rst:16 #: ../Doc/library/email.errors.rst:16
msgid "" msgid ""
@ -34,6 +36,9 @@ msgid ""
"raise. It is derived from the standard :exc:`Exception` class and defines " "raise. It is derived from the standard :exc:`Exception` class and defines "
"no additional methods." "no additional methods."
msgstr "" msgstr ""
"Exception de base, dont héritent toutes les exceptions du paquet :mod:"
"`email`. Cette classe hérite de la classe native :exc:`Exception` et ne "
"définit aucune méthode additionnelle."
#: ../Doc/library/email.errors.rst:23 #: ../Doc/library/email.errors.rst:23
msgid "" msgid ""
@ -41,6 +46,9 @@ msgid ""
"Parser` class. It is derived from :exc:`MessageError`. This class is also " "Parser` class. It is derived from :exc:`MessageError`. This class is also "
"used internally by the parser used by :mod:`~email.headerregistry`." "used internally by the parser used by :mod:`~email.headerregistry`."
msgstr "" msgstr ""
"Exception de base pour les exceptions levées par la classe :class:`~email."
"parser.Parser`. Elle hérite de :exc:`MessageError`. Cette classe est aussi "
"utilisée en interne par l'analyseur de :mod:`~email.headerregistry`."
#: ../Doc/library/email.errors.rst:31 #: ../Doc/library/email.errors.rst:31
msgid "" msgid ""
@ -53,10 +61,19 @@ msgid ""
"header (that is, there is what is supposed to be a continuation line that " "header (that is, there is what is supposed to be a continuation line that "
"has no leading whitespace and looks like a header)." "has no leading whitespace and looks like a header)."
msgstr "" msgstr ""
"Cette exception, dérivée de :exc:`MessageParseError`, est levée sous "
"différentes conditions lors de l'analyse des en-têtes :rfc:`5322` du "
"message. Lorsque la méthode :meth:`~email.message.EmailMessage."
"set_boundary` est invoquée, elle lève cette erreur si le type du contenu est "
"inconnu. La classe :class:`~email.header.Header` lève cette exception pour "
"certains types d'erreurs provenant du décodage base64. Elle la lève aussi "
"quand un en-tête est créé et qu'il semble contenir un en-tête imbriqué, "
"c'est-à-dire que la ligne qui suit ressemble à un en-tête et ne commence pas "
"par des caractères d'espacement."
#: ../Doc/library/email.errors.rst:43 #: ../Doc/library/email.errors.rst:43
msgid "Deprecated and no longer used." msgid "Deprecated and no longer used."
msgstr "" msgstr "Obsolète, n'est plus utilisé."
#: ../Doc/library/email.errors.rst:48 #: ../Doc/library/email.errors.rst:48
msgid "" msgid ""
@ -66,6 +83,12 @@ msgid ""
"`multipart` or missing. :exc:`MultipartConversionError` multiply inherits " "`multipart` or missing. :exc:`MultipartConversionError` multiply inherits "
"from :exc:`MessageError` and the built-in :exc:`TypeError`." "from :exc:`MessageError` and the built-in :exc:`TypeError`."
msgstr "" msgstr ""
"Cette exception est levée quand le contenu, que la méthode :meth:"
"`add_payload` essaie d'ajouter à l'objet :class:`~email.message.Message`, "
"est déjà un scalaire et que le type principal du message :mailheader:"
"`Content-Type` est manquant ou différent de :mimetype:`multipart`. :exc:"
"`MultipartConversionError` hérite à la fois de :exc:`MessageError` et de :"
"exc:`TypeError`."
#: ../Doc/library/email.errors.rst:54 #: ../Doc/library/email.errors.rst:54
msgid "" msgid ""
@ -75,6 +98,11 @@ msgid ""
"derived from :class:`~email.mime.nonmultipart.MIMENonMultipart` (e.g. :class:" "derived from :class:`~email.mime.nonmultipart.MIMENonMultipart` (e.g. :class:"
"`~email.mime.image.MIMEImage`)." "`~email.mime.image.MIMEImage`)."
msgstr "" msgstr ""
"Comme la méthode :meth:`Message.add_payload` est obsolète, cette exception "
"est rarement utilisée. Néanmoins, elle peut être levée si la méthode :meth:"
"`~email.message.Message.attach` est invoquée sur une instance de classe "
"dérivée de :class:`~email.mime.nonmultipart.MIMENonMultipart` (p. ex. :class:"
"`~email.mime.image.MIMEImage`)."
#: ../Doc/library/email.errors.rst:62 #: ../Doc/library/email.errors.rst:62
msgid "" msgid ""
@ -85,41 +113,60 @@ msgid ""
"nested message object would have a defect, but the containing messages would " "nested message object would have a defect, but the containing messages would "
"not." "not."
msgstr "" msgstr ""
"Voici la liste des anomalies que peut identifier :class:`~email.parser."
"FeedParser` pendant l'analyse des messages. Notez que les anomalies sont "
"signalées à l'endroit où elles sont détectées : par exemple, dans le cas "
"d'une malformation de l'en-tête d'un message imbriqué dans un message de "
"type :mimetype:`multipart/alternative`, l'anomalie est signalée sur le "
"message imbriqué seulement."
#: ../Doc/library/email.errors.rst:68 #: ../Doc/library/email.errors.rst:68
msgid "" msgid ""
"All defect classes are subclassed from :class:`email.errors.MessageDefect`." "All defect classes are subclassed from :class:`email.errors.MessageDefect`."
msgstr "" msgstr ""
"Toutes les anomalies sont des sous-classes de :class:`email.errors."
"MessageDefect`."
#: ../Doc/library/email.errors.rst:70 #: ../Doc/library/email.errors.rst:70
msgid "" msgid ""
":class:`NoBoundaryInMultipartDefect` -- A message claimed to be a multipart, " ":class:`NoBoundaryInMultipartDefect` -- A message claimed to be a multipart, "
"but had no :mimetype:`boundary` parameter." "but had no :mimetype:`boundary` parameter."
msgstr "" msgstr ""
":class:`NoBoundaryInMultipartDefect` — Un message qui prétend être composite "
"(*multipart* en anglais), mais qui ne contient pas de séparateur :mimetype:"
"`boundary`."
#: ../Doc/library/email.errors.rst:73 #: ../Doc/library/email.errors.rst:73
msgid "" msgid ""
":class:`StartBoundaryNotFoundDefect` -- The start boundary claimed in the :" ":class:`StartBoundaryNotFoundDefect` -- The start boundary claimed in the :"
"mailheader:`Content-Type` header was never found." "mailheader:`Content-Type` header was never found."
msgstr "" msgstr ""
":class:`StartBoundaryNotFoundDefect` — Le message ne contient pas le "
"séparateur de départ indiqué dans le :mailheader:`Content-Type`."
#: ../Doc/library/email.errors.rst:76 #: ../Doc/library/email.errors.rst:76
msgid "" msgid ""
":class:`CloseBoundaryNotFoundDefect` -- A start boundary was found, but no " ":class:`CloseBoundaryNotFoundDefect` -- A start boundary was found, but no "
"corresponding close boundary was ever found." "corresponding close boundary was ever found."
msgstr "" msgstr ""
":class:`CloseBoundaryNotFoundDefect` — Le séparateur de départ a été trouvé, "
"mais pas le séparateur de fin correspondant."
#: ../Doc/library/email.errors.rst:81 #: ../Doc/library/email.errors.rst:81
msgid "" msgid ""
":class:`FirstHeaderLineIsContinuationDefect` -- The message had a " ":class:`FirstHeaderLineIsContinuationDefect` -- The message had a "
"continuation line as its first header line." "continuation line as its first header line."
msgstr "" msgstr ""
":class:`FirstHeaderLineIsContinuationDefect` — La première ligne de l'en-"
"tête du message est une ligne de continuation."
#: ../Doc/library/email.errors.rst:84 #: ../Doc/library/email.errors.rst:84
msgid "" msgid ""
":class:`MisplacedEnvelopeHeaderDefect` - A \"Unix From\" header was found in " ":class:`MisplacedEnvelopeHeaderDefect` - A \"Unix From\" header was found in "
"the middle of a header block." "the middle of a header block."
msgstr "" msgstr ""
":class:`MisplacedEnvelopeHeaderDefect` — Un en-tête *Unix From* est présent "
"à l'intérieur d'un bloc d'en-tête."
#: ../Doc/library/email.errors.rst:87 #: ../Doc/library/email.errors.rst:87
msgid "" msgid ""
@ -127,16 +174,21 @@ msgid ""
"headers that had no leading white space but contained no ':'. Parsing " "headers that had no leading white space but contained no ':'. Parsing "
"continues assuming that the line represents the first line of the body." "continues assuming that the line represents the first line of the body."
msgstr "" msgstr ""
":class:`MissingHeaderBodySeparatorDefect` — Une ligne d'en-tête ne contient "
"pas de caractères d'espacement au début et aucun « : ». L'analyse continue "
"en supposant qu'il s'agit donc de la première ligne du corps du message."
#: ../Doc/library/email.errors.rst:93 #: ../Doc/library/email.errors.rst:93
msgid "" msgid ""
":class:`MalformedHeaderDefect` -- A header was found that was missing a " ":class:`MalformedHeaderDefect` -- A header was found that was missing a "
"colon, or was otherwise malformed." "colon, or was otherwise malformed."
msgstr "" msgstr ""
":class:`MalformedHeaderDefect` -- Un en-tête est mal formé ou il manque un "
"« : »."
#: ../Doc/library/email.errors.rst:96 #: ../Doc/library/email.errors.rst:96
msgid "This defect has not been used for several Python versions." msgid "This defect has not been used for several Python versions."
msgstr "" msgstr "Cette anomalie est obsolète depuis plusieurs versions de Python."
#: ../Doc/library/email.errors.rst:99 #: ../Doc/library/email.errors.rst:99
msgid "" msgid ""
@ -152,6 +204,9 @@ msgid ""
"encoded bytes, the padding was not correct. Enough padding is added to " "encoded bytes, the padding was not correct. Enough padding is added to "
"perform the decode, but the resulting decoded bytes may be invalid." "perform the decode, but the resulting decoded bytes may be invalid."
msgstr "" msgstr ""
":class:`InvalidBase64PaddingDefect` — Remplissage incorrect d'un bloc "
"d'octets encodés en base64. Des caractères de remplissage ont été ajoutés "
"pour permettre le décodage, mais le résultat du décodage peut être invalide."
#: ../Doc/library/email.errors.rst:108 #: ../Doc/library/email.errors.rst:108
msgid "" msgid ""
@ -159,6 +214,10 @@ msgid ""
"encoded bytes, characters outside the base64 alphabet were encountered. The " "encoded bytes, characters outside the base64 alphabet were encountered. The "
"characters are ignored, but the resulting decoded bytes may be invalid." "characters are ignored, but the resulting decoded bytes may be invalid."
msgstr "" msgstr ""
":class:`InvalidBase64CharactersDefect` — Des caractères n'appartenant pas à "
"l'alphabet base64 ont été rencontrés lors du décodage d'un bloc d'octets "
"encodés en base64. Les caractères ont été ignorés, mais le résultat du "
"décodage peut être invalide."
#: ../Doc/library/email.errors.rst:112 #: ../Doc/library/email.errors.rst:112
msgid "" msgid ""
@ -166,3 +225,6 @@ msgid ""
"encoded bytes, the number of non-padding base64 characters was invalid (1 " "encoded bytes, the number of non-padding base64 characters was invalid (1 "
"more than a multiple of 4). The encoded block was kept as-is." "more than a multiple of 4). The encoded block was kept as-is."
msgstr "" msgstr ""
":class:`InvalidBase64LengthDefect` — Le nombre de caractères (autres que de "
"remplissage) d'un bloc d'octets encodés en base64 est invalide (1 de plus "
"qu'un multiple de 4). Le bloc encodé n'a pas été modifié."

View File

@ -579,7 +579,7 @@ msgstr ""
#: ../Doc/library/idle.rst:241 #: ../Doc/library/idle.rst:241
msgid "Run... Customized" msgid "Run... Customized"
msgstr "" msgstr "Run... Customized"
#: ../Doc/library/idle.rst:238 #: ../Doc/library/idle.rst:238
msgid "" msgid ""
@ -587,6 +587,10 @@ msgid ""
"settings. *Command Line Arguments* extend :data:`sys.argv` as if passed on " "settings. *Command Line Arguments* extend :data:`sys.argv` as if passed on "
"a command line. The module can be run in the Shell without restarting." "a command line. The module can be run in the Shell without restarting."
msgstr "" msgstr ""
"Similaire à :ref:`Run Module <run-module>`, mais lance le module avec des "
"paramètres personnalisés. Les *Command Line Arguments* se rajoutent à :data:"
"`sys.argv` comme s'ils étaient passés par la ligne de commande. Le module "
"peut être lancé dans le terminal sans avoir à le redémarrer."
#: ../Doc/library/idle.rst:244 #: ../Doc/library/idle.rst:244
msgid "Shell menu (Shell window only)" msgid "Shell menu (Shell window only)"
@ -1656,6 +1660,8 @@ msgid ""
"When user code raises SystemExit either directly or by calling sys.exit, " "When user code raises SystemExit either directly or by calling sys.exit, "
"IDLE returns to a Shell prompt instead of exiting." "IDLE returns to a Shell prompt instead of exiting."
msgstr "" msgstr ""
"Lorsque l'utilisateur lève `SystemExit` directement ou en appelant ``sys."
"exit``, IDLE revient au terminal IDLE au lieu de quitter."
#: ../Doc/library/idle.rst:724 #: ../Doc/library/idle.rst:724
msgid "User output in Shell" msgid "User output in Shell"

View File

@ -29,15 +29,15 @@ msgstr ""
#: ../Doc/library/logging.config.rst:17 #: ../Doc/library/logging.config.rst:17
msgid ":ref:`Basic Tutorial <logging-basic-tutorial>`" msgid ":ref:`Basic Tutorial <logging-basic-tutorial>`"
msgstr "" msgstr ":ref:`Tutoriel basique <logging-basic-tutorial>`"
#: ../Doc/library/logging.config.rst:18 #: ../Doc/library/logging.config.rst:18
msgid ":ref:`Advanced Tutorial <logging-advanced-tutorial>`" msgid ":ref:`Advanced Tutorial <logging-advanced-tutorial>`"
msgstr "" msgstr ":ref:`Tutoriel avancé <logging-advanced-tutorial>`"
#: ../Doc/library/logging.config.rst:19 #: ../Doc/library/logging.config.rst:19
msgid ":ref:`Logging Cookbook <logging-cookbook>`" msgid ":ref:`Logging Cookbook <logging-cookbook>`"
msgstr "" msgstr ":ref:`Recettes pour la journalisation <logging-cookbook>`"
#: ../Doc/library/logging.config.rst:23 #: ../Doc/library/logging.config.rst:23
msgid "This section describes the API for configuring the logging module." msgid "This section describes the API for configuring the logging module."
@ -135,7 +135,7 @@ msgstr ""
#: ../Doc/library/logging.config.rst:0 #: ../Doc/library/logging.config.rst:0
msgid "Parameters" msgid "Parameters"
msgstr "" msgstr "Paramètres"
#: ../Doc/library/logging.config.rst:90 #: ../Doc/library/logging.config.rst:90
msgid "" msgid ""

View File

@ -29,15 +29,15 @@ msgstr ""
#: ../Doc/library/logging.handlers.rst:17 #: ../Doc/library/logging.handlers.rst:17
msgid ":ref:`Basic Tutorial <logging-basic-tutorial>`" msgid ":ref:`Basic Tutorial <logging-basic-tutorial>`"
msgstr "" msgstr ":ref:`Tutoriel basique <logging-basic-tutorial>`"
#: ../Doc/library/logging.handlers.rst:18 #: ../Doc/library/logging.handlers.rst:18
msgid ":ref:`Advanced Tutorial <logging-advanced-tutorial>`" msgid ":ref:`Advanced Tutorial <logging-advanced-tutorial>`"
msgstr "" msgstr ":ref:`Tutoriel avancé <logging-advanced-tutorial>`"
#: ../Doc/library/logging.handlers.rst:19 #: ../Doc/library/logging.handlers.rst:19
msgid ":ref:`Logging Cookbook <logging-cookbook>`" msgid ":ref:`Logging Cookbook <logging-cookbook>`"
msgstr "" msgstr ":ref:`Recettes pour la journalisation <logging-cookbook>`"
#: ../Doc/library/logging.handlers.rst:25 #: ../Doc/library/logging.handlers.rst:25
msgid "" msgid ""
@ -89,7 +89,7 @@ msgstr ""
#: ../Doc/library/logging.handlers.rst:0 #: ../Doc/library/logging.handlers.rst:0
msgid "Parameters" msgid "Parameters"
msgstr "" msgstr "Paramètres"
#: ../Doc/library/logging.handlers.rst:67 #: ../Doc/library/logging.handlers.rst:67
msgid "The stream that the handler should use." msgid "The stream that the handler should use."

View File

@ -935,7 +935,7 @@ msgstr ""
#: ../Doc/library/logging.rst:0 #: ../Doc/library/logging.rst:0
msgid "Parameters" msgid "Parameters"
msgstr "" msgstr "Paramètres"
#: ../Doc/library/logging.rst:672 #: ../Doc/library/logging.rst:672
msgid "" msgid ""

View File

@ -267,6 +267,8 @@ msgid ""
"The behavior of :meth:`__iter__` is unlike that of dictionaries, which " "The behavior of :meth:`__iter__` is unlike that of dictionaries, which "
"iterate over keys." "iterate over keys."
msgstr "" msgstr ""
"Le comportement de :meth:`__iter__` diffère de celui d'un dictionnaire, pour "
"lequel l'itération se fait sur ses clés."
#: ../Doc/library/mailbox.rst:156 #: ../Doc/library/mailbox.rst:156
msgid "" msgid ""
@ -277,6 +279,13 @@ msgid ""
"subclass unless a custom message factory was specified when the :class:" "subclass unless a custom message factory was specified when the :class:"
"`Mailbox` instance was initialized." "`Mailbox` instance was initialized."
msgstr "" msgstr ""
"Renvoie un itérateur sur les paires (*key*, *message*), où *key* est une clé "
"et *message* est la représentation d'un message, si appelée en tant que :"
"meth:`iteritems` ; ou renvoie une liste de paires semblables si appelée en "
"tant que :meth:`items`. Les messages sont représentés comme instances au "
"format approprié et spécifique d'une sous-classe de :class:`Message` à moins "
"qu'une moulinette personnalisée de message ait été spécifiée lors de "
"l'initialisation de l'instance :class:`Mailbox`."
#: ../Doc/library/mailbox.rst:167 #: ../Doc/library/mailbox.rst:167
msgid "" msgid ""
@ -344,7 +353,7 @@ msgstr ""
#: ../Doc/library/mailbox.rst:232 #: ../Doc/library/mailbox.rst:232
msgid "Delete all messages from the mailbox." msgid "Delete all messages from the mailbox."
msgstr "" msgstr "Supprime tous les messages de la boîte de courriel."
#: ../Doc/library/mailbox.rst:237 #: ../Doc/library/mailbox.rst:237
msgid "" msgid ""
@ -1528,7 +1537,7 @@ msgstr ""
#: ../Doc/library/mailbox.rst:1134 #: ../Doc/library/mailbox.rst:1134
msgid "Sequence" msgid "Sequence"
msgstr "" msgstr "Séquence"
#: ../Doc/library/mailbox.rst:1136 ../Doc/library/mailbox.rst:1223 #: ../Doc/library/mailbox.rst:1136 ../Doc/library/mailbox.rst:1223
msgid "unseen" msgid "unseen"
@ -1731,16 +1740,20 @@ msgid ""
"When a :class:`BabylMessage` instance is created based upon an :class:" "When a :class:`BabylMessage` instance is created based upon an :class:"
"`MHMessage` instance, the following conversions take place:" "`MHMessage` instance, the following conversions take place:"
msgstr "" msgstr ""
"Lorsqu'une instance :class:`BabylMessage` est créée sur la base d'une "
"instance :class:`MHMessage`, les conversions suivantes sont faites :"
#: ../Doc/library/mailbox.rst:1337 #: ../Doc/library/mailbox.rst:1337
msgid ":class:`MMDFMessage`" msgid ":class:`MMDFMessage`"
msgstr "" msgstr ":class:`MMDFMessage`"
#: ../Doc/library/mailbox.rst:1342 #: ../Doc/library/mailbox.rst:1342
msgid "" msgid ""
"A message with MMDF-specific behaviors. Parameter *message* has the same " "A message with MMDF-specific behaviors. Parameter *message* has the same "
"meaning as with the :class:`Message` constructor." "meaning as with the :class:`Message` constructor."
msgstr "" msgstr ""
"Un message avec des comportements spécifiques à *MMDF*. Le paramètre "
"*message* a le même sens que pour le constructeur de :class:`Message`."
#: ../Doc/library/mailbox.rst:1345 #: ../Doc/library/mailbox.rst:1345
msgid "" msgid ""
@ -1749,18 +1762,27 @@ msgid ""
"\"From \". Likewise, flags that indicate the state of the message are " "\"From \". Likewise, flags that indicate the state of the message are "
"typically stored in :mailheader:`Status` and :mailheader:`X-Status` headers." "typically stored in :mailheader:`Status` and :mailheader:`X-Status` headers."
msgstr "" msgstr ""
"Comme pour le message d'une boîte de courriel *mbox*, les messages *MMDF* "
"sont stockés avec l'adresse de l'expéditeur et la date d'expédition dans la "
"ligne initiale commençant avec « From ». De même, les options indiquant "
"l'état du message sont stockées dans les en-têtes :mailheader:`Status` et :"
"mailheader:`X-Status`."
#: ../Doc/library/mailbox.rst:1350 #: ../Doc/library/mailbox.rst:1350
msgid "" msgid ""
"Conventional flags for MMDF messages are identical to those of mbox message " "Conventional flags for MMDF messages are identical to those of mbox message "
"and are as follows:" "and are as follows:"
msgstr "" msgstr ""
"Les options conventionnelles des messages *MMDF* sont identiques à celles de "
"message *mbox* et sont les suivantes :"
#: ../Doc/library/mailbox.rst:1371 #: ../Doc/library/mailbox.rst:1371
msgid "" msgid ""
":class:`MMDFMessage` instances offer the following methods, which are " ":class:`MMDFMessage` instances offer the following methods, which are "
"identical to those offered by :class:`mboxMessage`:" "identical to those offered by :class:`mboxMessage`:"
msgstr "" msgstr ""
"Les méthodes des instances :class:`MMDFMessage` sont identiques à celles de :"
"class:`mboxMessage` et sont les suivantes :"
#: ../Doc/library/mailbox.rst:1420 #: ../Doc/library/mailbox.rst:1420
msgid "" msgid ""
@ -1769,18 +1791,26 @@ msgid ""
"class:`MaildirMessage` instance's delivery date, and the following " "class:`MaildirMessage` instance's delivery date, and the following "
"conversions take place:" "conversions take place:"
msgstr "" msgstr ""
"Lorsqu'une instance :class:`MMDFMessage` est créée sur la base d'une "
"instance :class:`MaildirMessage`, la ligne « From » est générée sur la base "
"de la date de remise de l'instance :class:`MaildirMessage` et les "
"conversions suivantes ont lieu :"
#: ../Doc/library/mailbox.rst:1439 #: ../Doc/library/mailbox.rst:1439
msgid "" msgid ""
"When an :class:`MMDFMessage` instance is created based upon an :class:" "When an :class:`MMDFMessage` instance is created based upon an :class:"
"`MHMessage` instance, the following conversions take place:" "`MHMessage` instance, the following conversions take place:"
msgstr "" msgstr ""
"Lorsqu'une instance :class:`MMDFMessage` est créée sur la base d'une "
"instance :class:`MHMessage`, les conversions suivantes sont faites :"
#: ../Doc/library/mailbox.rst:1454 #: ../Doc/library/mailbox.rst:1454
msgid "" msgid ""
"When an :class:`MMDFMessage` instance is created based upon a :class:" "When an :class:`MMDFMessage` instance is created based upon a :class:"
"`BabylMessage` instance, the following conversions take place:" "`BabylMessage` instance, the following conversions take place:"
msgstr "" msgstr ""
"Lorsqu'une instance :class:`MMDFMessage` est créée sur la base d'une "
"instance :class:`BabylMessage`, les conversions suivantes sont faites :"
#: ../Doc/library/mailbox.rst:1469 #: ../Doc/library/mailbox.rst:1469
msgid "" msgid ""
@ -1788,10 +1818,13 @@ msgid ""
"`mboxMessage` instance, the \"From \" line is copied and all flags directly " "`mboxMessage` instance, the \"From \" line is copied and all flags directly "
"correspond:" "correspond:"
msgstr "" msgstr ""
"Lorsqu'une instance :class:`MMDFMessage` est créée sur la base d'une "
"instance :class:`mboxMessage`, la ligne « From » est copiée et toutes les "
"options ont une correspondance directe :"
#: ../Doc/library/mailbox.rst:1474 #: ../Doc/library/mailbox.rst:1474
msgid ":class:`mboxMessage` state" msgid ":class:`mboxMessage` state"
msgstr "" msgstr "état de :class:`mboxMessage`"
#: ../Doc/library/mailbox.rst:1489 #: ../Doc/library/mailbox.rst:1489
msgid "Exceptions" msgid "Exceptions"
@ -1801,10 +1834,13 @@ msgstr "Exceptions"
msgid "" msgid ""
"The following exception classes are defined in the :mod:`mailbox` module:" "The following exception classes are defined in the :mod:`mailbox` module:"
msgstr "" msgstr ""
"Les exceptions de classes suivantes sont définies dans le module :mod:"
"`mailbox` :"
#: ../Doc/library/mailbox.rst:1496 #: ../Doc/library/mailbox.rst:1496
msgid "The based class for all other module-specific exceptions." msgid "The based class for all other module-specific exceptions."
msgstr "" msgstr ""
"Classe de base pour toutes les autres exceptions spécifiques à ce module."
#: ../Doc/library/mailbox.rst:1501 #: ../Doc/library/mailbox.rst:1501
msgid "" msgid ""
@ -1813,12 +1849,18 @@ msgid ""
"(and with the *create* parameter set to ``False``), or when opening a folder " "(and with the *create* parameter set to ``False``), or when opening a folder "
"that does not exist." "that does not exist."
msgstr "" msgstr ""
"Levée lorsqu'une boîte de courriel est attendue mais introuvable, comme "
"quand on instancie une sous-classe :class:`Mailbox` avec un chemin qui "
"n'existe pas (et avec le paramètre *create* fixé à ``False``), ou quand on "
"ouvre un répertoire qui n'existe pas."
#: ../Doc/library/mailbox.rst:1508 #: ../Doc/library/mailbox.rst:1508
msgid "" msgid ""
"Raised when a mailbox is not empty but is expected to be, such as when " "Raised when a mailbox is not empty but is expected to be, such as when "
"deleting a folder that contains messages." "deleting a folder that contains messages."
msgstr "" msgstr ""
"Levée lorsqu'une boîte de courriel n'est pas vide mais devrait l'être, comme "
"lorsqu'on supprime un répertoire contenant des messages."
#: ../Doc/library/mailbox.rst:1514 #: ../Doc/library/mailbox.rst:1514
msgid "" msgid ""
@ -1827,12 +1869,19 @@ msgid ""
"that another program already holds a lock, or when a uniquely-generated file " "that another program already holds a lock, or when a uniquely-generated file "
"name already exists." "name already exists."
msgstr "" msgstr ""
"Levée lorsqu'une condition liée à la boîte de courriel est hors de contrôle "
"du programme et l'empêche de se poursuivre, comme lors de léchec "
"d'acquisition du verrou ou lorsqu'un nom de fichier censé être unique existe "
"déjà."
#: ../Doc/library/mailbox.rst:1522 #: ../Doc/library/mailbox.rst:1522
msgid "" msgid ""
"Raised when the data in a file cannot be parsed, such as when an :class:`MH` " "Raised when the data in a file cannot be parsed, such as when an :class:`MH` "
"instance attempts to read a corrupted :file:`.mh_sequences` file." "instance attempts to read a corrupted :file:`.mh_sequences` file."
msgstr "" msgstr ""
"Levée lorsque la donnée dans le fichier ne peut être analysée, comme lorsque "
"l'instance de :class:`MH` tente de lire un fichier :file:`.mh_sequences` "
"corrompu."
#: ../Doc/library/mailbox.rst:1529 #: ../Doc/library/mailbox.rst:1529
msgid "Examples" msgid "Examples"
@ -1843,12 +1892,18 @@ msgid ""
"A simple example of printing the subjects of all messages in a mailbox that " "A simple example of printing the subjects of all messages in a mailbox that "
"seem interesting::" "seem interesting::"
msgstr "" msgstr ""
"Un exemple simple d'affichage de l'objet, qui semble pertinent, de tous les "
"messages d'une boîte de courriel ::"
#: ../Doc/library/mailbox.rst:1540 #: ../Doc/library/mailbox.rst:1540
msgid "" msgid ""
"To copy all mail from a Babyl mailbox to an MH mailbox, converting all of " "To copy all mail from a Babyl mailbox to an MH mailbox, converting all of "
"the format-specific information that can be converted::" "the format-specific information that can be converted::"
msgstr "" msgstr ""
"Cet exemple copie tout le courriel d'une boite de courriel au format "
"*Babyl* vers une boite de courriel au format *MH*, convertissant toute "
"l'information qu'il est possible de convertir du premier format vers le "
"second ::"
#: ../Doc/library/mailbox.rst:1551 #: ../Doc/library/mailbox.rst:1551
msgid "" msgid ""
@ -1857,3 +1912,8 @@ msgid ""
"other programs, mail loss due to interruption of the program, or premature " "other programs, mail loss due to interruption of the program, or premature "
"termination due to malformed messages in the mailbox::" "termination due to malformed messages in the mailbox::"
msgstr "" msgstr ""
"Cet exemple trie le courriel en provenance de plusieurs listes de diffusion "
"vers différentes boîtes de courriel, tout en évitant une corruption à cause "
"de modifications concurrentielles par d'autres programmes, une perte due à "
"une interruption du programme ou un arrêt prématuré causé par des messages "
"mal structurés ::"

View File

@ -457,7 +457,7 @@ msgstr ""
#: ../Doc/library/msilib.rst:414 #: ../Doc/library/msilib.rst:414
msgid "Features" msgid "Features"
msgstr "" msgstr "Caractéristiques"
#: ../Doc/library/msilib.rst:419 #: ../Doc/library/msilib.rst:419
msgid "" msgid ""

View File

@ -90,6 +90,10 @@ msgid ""
"order to force spawn to return before the child process exits an :exc:" "order to force spawn to return before the child process exits an :exc:"
"`OSError` should be thrown." "`OSError` should be thrown."
msgstr "" msgstr ""
"Les fonctions `master_read` et `stdin_read` reçoivent un descripteur de "
"fichier qu'elles doivent lire, et elles doivent toujours renvoyer une chaîne "
"d'octets. Afin de forcer le *spawn* à faire un renvoi avant que le processus "
"enfant ne se termine, une exception :exc:`OSError` doit être levée."
#: ../Doc/library/pty.rst:55 #: ../Doc/library/pty.rst:55
msgid "" msgid ""
@ -99,6 +103,11 @@ msgid ""
"child process, and *stdin_read* is passed file descriptor 0, to read from " "child process, and *stdin_read* is passed file descriptor 0, to read from "
"the parent process's standard input." "the parent process's standard input."
msgstr "" msgstr ""
"L'implémentation par défaut pour les deux fonctions lit et renvoie jusqu'à "
"1024 octets à chaque appel de la fonction. La fonction de rappel "
"`master_read` reçoit le descripteur de fichier du pseudo-terminal maître "
"pour lire la sortie du processus enfant, et `stdin_read` reçoit le "
"descripteur de fichier 0, pour lire l'entrée standard du processus parent."
#: ../Doc/library/pty.rst:61 #: ../Doc/library/pty.rst:61
msgid "" msgid ""
@ -109,6 +118,13 @@ msgid ""
"quit without any input, *spawn* will then loop forever. If *master_read* " "quit without any input, *spawn* will then loop forever. If *master_read* "
"signals EOF the same behavior results (on linux at least)." "signals EOF the same behavior results (on linux at least)."
msgstr "" msgstr ""
"Le renvoi d'une chaîne d'octets vide à partir de l'un ou l'autre des rappels "
"est interprété comme une condition de fin de fichier (EOF), et ce rappel ne "
"sera pas appelé après cela. Si *stdin_read* signale EOF, le terminal de "
"contrôle ne peut plus communiquer avec le processus parent OU le processus "
"enfant. À moins que le processus enfant ne quitte sans aucune entrée, "
"*spawn* sera lancé dans une boucle infinie. Si `master_read` indique la fin "
"de fichier, on aura le même comportement (sur Linux au moins)."
#: ../Doc/library/pty.rst:68 #: ../Doc/library/pty.rst:68
msgid "" msgid ""
@ -117,6 +133,10 @@ msgid ""
"This is a bug, documented in `issue 26228 <https://bugs.python.org/" "This is a bug, documented in `issue 26228 <https://bugs.python.org/"
"issue26228>`_." "issue26228>`_."
msgstr "" msgstr ""
"Si les deux fonctions de rappel indiquent la fin de fichier (*EOF*), alors "
"*spawn* ne fera probablement jamais de renvoi, à moins que *select* ne lance "
"une erreur sur votre plateforme lors du passage de trois listes vides. Il "
"s'agit d'un bogue, renseigné dans `<https://bugs.python.org/issue26228>`_."
#: ../Doc/library/pty.rst:73 #: ../Doc/library/pty.rst:73
msgid "" msgid ""

View File

@ -314,7 +314,7 @@ msgstr "Index"
#: ../Doc/library/resource.rst:279 #: ../Doc/library/resource.rst:279
msgid "Field" msgid "Field"
msgstr "" msgstr "Champ"
#: ../Doc/library/resource.rst:279 #: ../Doc/library/resource.rst:279
msgid "Resource" msgid "Resource"

View File

@ -169,7 +169,7 @@ msgstr ""
#: ../Doc/library/stat.rst:189 #: ../Doc/library/stat.rst:189
msgid "Time of last modification." msgid "Time of last modification."
msgstr "" msgstr "L'heure de la dernière modification."
#: ../Doc/library/stat.rst:194 #: ../Doc/library/stat.rst:194
msgid "" msgid ""

View File

@ -16,7 +16,7 @@ msgstr ""
#: ../Doc/library/statistics.rst:2 #: ../Doc/library/statistics.rst:2
msgid ":mod:`statistics` --- Mathematical statistics functions" msgid ":mod:`statistics` --- Mathematical statistics functions"
msgstr "" msgstr ":mod:`statistics` — Fonctions mathématiques pour les statistiques"
#: ../Doc/library/statistics.rst:12 #: ../Doc/library/statistics.rst:12
msgid "**Source code:** :source:`Lib/statistics.py`" msgid "**Source code:** :source:`Lib/statistics.py`"
@ -41,65 +41,68 @@ msgstr ""
#: ../Doc/library/statistics.rst:35 #: ../Doc/library/statistics.rst:35
msgid "Averages and measures of central location" msgid "Averages and measures of central location"
msgstr "" msgstr "Moyennes et mesures de la tendance centrale"
#: ../Doc/library/statistics.rst:37 #: ../Doc/library/statistics.rst:37
msgid "" msgid ""
"These functions calculate an average or typical value from a population or " "These functions calculate an average or typical value from a population or "
"sample." "sample."
msgstr "" msgstr ""
"Ces fonctions calculent une moyenne ou une valeur typique à partir d'une "
"population ou d'un échantillon."
#: ../Doc/library/statistics.rst:41 #: ../Doc/library/statistics.rst:41
msgid ":func:`mean`" msgid ":func:`mean`"
msgstr "" msgstr ":func:`mean`"
#: ../Doc/library/statistics.rst:41 #: ../Doc/library/statistics.rst:41
msgid "Arithmetic mean (\"average\") of data." msgid "Arithmetic mean (\"average\") of data."
msgstr "" msgstr "Moyenne arithmétique des données."
#: ../Doc/library/statistics.rst:42 #: ../Doc/library/statistics.rst:42
msgid ":func:`harmonic_mean`" msgid ":func:`harmonic_mean`"
msgstr "" msgstr ":func:`harmonic_mean`"
#: ../Doc/library/statistics.rst:42 #: ../Doc/library/statistics.rst:42
msgid "Harmonic mean of data." msgid "Harmonic mean of data."
msgstr "" msgstr "Moyenne harmonique des données."
#: ../Doc/library/statistics.rst:43 #: ../Doc/library/statistics.rst:43
msgid ":func:`median`" msgid ":func:`median`"
msgstr "" msgstr ":func:`median`"
#: ../Doc/library/statistics.rst:43 #: ../Doc/library/statistics.rst:43
msgid "Median (middle value) of data." msgid "Median (middle value) of data."
msgstr "" msgstr "Médiane (valeur centrale) des données."
#: ../Doc/library/statistics.rst:44 #: ../Doc/library/statistics.rst:44
msgid ":func:`median_low`" msgid ":func:`median_low`"
msgstr "" msgstr ":func:`median_low`"
#: ../Doc/library/statistics.rst:44 #: ../Doc/library/statistics.rst:44
msgid "Low median of data." msgid "Low median of data."
msgstr "" msgstr "Médiane basse des données."
#: ../Doc/library/statistics.rst:45 #: ../Doc/library/statistics.rst:45
msgid ":func:`median_high`" msgid ":func:`median_high`"
msgstr "" msgstr ":func:`median_high`"
#: ../Doc/library/statistics.rst:45 #: ../Doc/library/statistics.rst:45
msgid "High median of data." msgid "High median of data."
msgstr "" msgstr "Médiane haute des données."
#: ../Doc/library/statistics.rst:46 #: ../Doc/library/statistics.rst:46
msgid ":func:`median_grouped`" msgid ":func:`median_grouped`"
msgstr "" msgstr ":func:`median_grouped`"
#: ../Doc/library/statistics.rst:46 #: ../Doc/library/statistics.rst:46
msgid "Median, or 50th percentile, of grouped data." msgid "Median, or 50th percentile, of grouped data."
msgstr "" msgstr ""
"Médiane de données groupées, calculée comme le 50\\ :sup:`e` percentile."
#: ../Doc/library/statistics.rst:47 #: ../Doc/library/statistics.rst:47
msgid ":func:`mode`" msgid ":func:`mode`"
msgstr "" msgstr ":func:`mode`"
#: ../Doc/library/statistics.rst:47 #: ../Doc/library/statistics.rst:47
msgid "Mode (most common value) of discrete data." msgid "Mode (most common value) of discrete data."
@ -107,55 +110,60 @@ msgstr ""
#: ../Doc/library/statistics.rst:51 #: ../Doc/library/statistics.rst:51
msgid "Measures of spread" msgid "Measures of spread"
msgstr "" msgstr "Mesures de la dispersion"
#: ../Doc/library/statistics.rst:53 #: ../Doc/library/statistics.rst:53
msgid "" msgid ""
"These functions calculate a measure of how much the population or sample " "These functions calculate a measure of how much the population or sample "
"tends to deviate from the typical or average values." "tends to deviate from the typical or average values."
msgstr "" msgstr ""
"Ces fonctions mesurent la tendance de la population ou d'un échantillon à "
"dévier des valeurs typiques ou des valeurs moyennes."
#: ../Doc/library/statistics.rst:57 #: ../Doc/library/statistics.rst:57
msgid ":func:`pstdev`" msgid ":func:`pstdev`"
msgstr "" msgstr ":func:`pstdev`"
#: ../Doc/library/statistics.rst:57 #: ../Doc/library/statistics.rst:57
msgid "Population standard deviation of data." msgid "Population standard deviation of data."
msgstr "" msgstr "Écart-type de la population."
#: ../Doc/library/statistics.rst:58 #: ../Doc/library/statistics.rst:58
msgid ":func:`pvariance`" msgid ":func:`pvariance`"
msgstr "" msgstr ":func:`pvariance`"
#: ../Doc/library/statistics.rst:58 #: ../Doc/library/statistics.rst:58
msgid "Population variance of data." msgid "Population variance of data."
msgstr "" msgstr "Variance de la population."
#: ../Doc/library/statistics.rst:59 #: ../Doc/library/statistics.rst:59
msgid ":func:`stdev`" msgid ":func:`stdev`"
msgstr "" msgstr ":func:`stdev`"
#: ../Doc/library/statistics.rst:59 #: ../Doc/library/statistics.rst:59
msgid "Sample standard deviation of data." msgid "Sample standard deviation of data."
msgstr "" msgstr "Écart-type d'un échantillon."
#: ../Doc/library/statistics.rst:60 #: ../Doc/library/statistics.rst:60
msgid ":func:`variance`" msgid ":func:`variance`"
msgstr "" msgstr ":func:`variance`"
#: ../Doc/library/statistics.rst:60 #: ../Doc/library/statistics.rst:60
msgid "Sample variance of data." msgid "Sample variance of data."
msgstr "" msgstr "Variance d'un échantillon."
#: ../Doc/library/statistics.rst:65 #: ../Doc/library/statistics.rst:65
msgid "Function details" msgid "Function details"
msgstr "" msgstr "Détails des fonctions"
#: ../Doc/library/statistics.rst:67 #: ../Doc/library/statistics.rst:67
msgid "" msgid ""
"Note: The functions do not require the data given to them to be sorted. " "Note: The functions do not require the data given to them to be sorted. "
"However, for reading convenience, most of the examples show sorted sequences." "However, for reading convenience, most of the examples show sorted sequences."
msgstr "" msgstr ""
"Note : les fonctions ne requièrent pas que les données soient ordonnées. "
"Toutefois, pour en faciliter la lecture, les exemples utiliseront des "
"séquences croissantes."
#: ../Doc/library/statistics.rst:72 #: ../Doc/library/statistics.rst:72
msgid "" msgid ""
@ -170,14 +178,19 @@ msgid ""
"many different mathematical averages. It is a measure of the central " "many different mathematical averages. It is a measure of the central "
"location of the data." "location of the data."
msgstr "" msgstr ""
"La moyenne arithmétique est la somme des valeurs divisée par le nombre "
"d'observations. Il s'agit de la valeur couramment désignée comme la "
 moyenne » bien qu'il existe de multiples façons de définir "
"mathématiquement la moyenne. C'est une mesure de la tendance centrale des "
"données."
#: ../Doc/library/statistics.rst:79 #: ../Doc/library/statistics.rst:79
msgid "If *data* is empty, :exc:`StatisticsError` will be raised." msgid "If *data* is empty, :exc:`StatisticsError` will be raised."
msgstr "" msgstr "Une erreur :exc:`StatisticsError` est levée si *data* est vide."
#: ../Doc/library/statistics.rst:81 #: ../Doc/library/statistics.rst:81
msgid "Some examples of use:" msgid "Some examples of use:"
msgstr "" msgstr "Exemples d'utilisation :"
#: ../Doc/library/statistics.rst:100 #: ../Doc/library/statistics.rst:100
msgid "" msgid ""
@ -224,6 +237,9 @@ msgid ""
"companies, with P/E (price/earning) ratios of 2.5, 3 and 10. What is the " "companies, with P/E (price/earning) ratios of 2.5, 3 and 10. What is the "
"average P/E ratio for the investor's portfolio?" "average P/E ratio for the investor's portfolio?"
msgstr "" msgstr ""
"Supposons qu'un investisseur achète autant de parts dans trois compagnies "
"chacune de ratio cours sur bénéfices (*P/E*) 2,5, 3 et 10. Quel est le ratio "
"cours sur bénéfices moyen du portefeuille de l'investisseur ?"
#: ../Doc/library/statistics.rst:137 #: ../Doc/library/statistics.rst:137
msgid "" msgid ""
@ -236,6 +252,8 @@ msgid ""
":exc:`StatisticsError` is raised if *data* is empty, or any element is less " ":exc:`StatisticsError` is raised if *data* is empty, or any element is less "
"than zero." "than zero."
msgstr "" msgstr ""
"Une erreur :exc:`StatisticsError` est levée si *data* est vide ou si l'un de "
"ses éléments est inférieur à zéro."
#: ../Doc/library/statistics.rst:148 #: ../Doc/library/statistics.rst:148
msgid "" msgid ""
@ -256,12 +274,16 @@ msgid ""
"When the number of data points is even, the median is interpolated by taking " "When the number of data points is even, the median is interpolated by taking "
"the average of the two middle values:" "the average of the two middle values:"
msgstr "" msgstr ""
"Lorsque le nombre d'observations est pair, la médiane est interpolée en "
"calculant la moyenne des deux valeurs du milieu :"
#: ../Doc/library/statistics.rst:169 #: ../Doc/library/statistics.rst:169
msgid "" msgid ""
"This is suited for when your data is discrete, and you don't mind that the " "This is suited for when your data is discrete, and you don't mind that the "
"median may not be an actual data point." "median may not be an actual data point."
msgstr "" msgstr ""
"Cette approche est adaptée à des données discrètes à condition que vous "
"acceptiez que la médiane ne fasse pas nécessairement partie des observations."
#: ../Doc/library/statistics.rst:172 #: ../Doc/library/statistics.rst:172
msgid "" msgid ""
@ -286,12 +308,18 @@ msgid ""
"points is odd, the middle value is returned. When it is even, the smaller " "points is odd, the middle value is returned. When it is even, the smaller "
"of the two middle values is returned." "of the two middle values is returned."
msgstr "" msgstr ""
"La médiane basse est toujours une valeur représentée dans les données. "
"Lorsque le nombre d'observations est impair, la valeur du milieu est "
"renvoyée. Sinon, la plus petite des deux valeurs du milieu est renvoyée."
#: ../Doc/library/statistics.rst:195 #: ../Doc/library/statistics.rst:195
msgid "" msgid ""
"Use the low median when your data are discrete and you prefer the median to " "Use the low median when your data are discrete and you prefer the median to "
"be an actual data point rather than interpolated." "be an actual data point rather than interpolated."
msgstr "" msgstr ""
"Utilisez la médiane basse lorsque vos données sont discrètes et que vous "
"préférez que la médiane soit une valeur représentée dans vos observations "
"plutôt que le résultat d'une interpolation."
#: ../Doc/library/statistics.rst:201 #: ../Doc/library/statistics.rst:201
msgid "" msgid ""
@ -305,12 +333,18 @@ msgid ""
"points is odd, the middle value is returned. When it is even, the larger of " "points is odd, the middle value is returned. When it is even, the larger of "
"the two middle values is returned." "the two middle values is returned."
msgstr "" msgstr ""
"La médiane haute est toujours une valeur représentée dans les données. "
"Lorsque le nombre d'observations est impair, la valeur du milieu est "
"renvoyée. Sinon, la plus grande des deux valeurs du milieu est renvoyée."
#: ../Doc/library/statistics.rst:215 #: ../Doc/library/statistics.rst:215
msgid "" msgid ""
"Use the high median when your data are discrete and you prefer the median to " "Use the high median when your data are discrete and you prefer the median to "
"be an actual data point rather than interpolated." "be an actual data point rather than interpolated."
msgstr "" msgstr ""
"Utilisez la médiane haute lorsque vos données sont discrètes et que vous "
"préférez que la médiane soit une valeur représentée dans vos observations "
"plutôt que le résultat d'une interpolation."
#: ../Doc/library/statistics.rst:221 #: ../Doc/library/statistics.rst:221
msgid "" msgid ""
@ -327,30 +361,45 @@ msgid ""
"etc. With the data given, the middle value falls somewhere in the class " "etc. With the data given, the middle value falls somewhere in the class "
"3.5--4.5, and interpolation is used to estimate it:" "3.5--4.5, and interpolation is used to estimate it:"
msgstr "" msgstr ""
"Dans l'exemple ci-dessous, les valeurs sont arrondies de sorte que chaque "
"valeur représente le milieu d'un groupe. Par exemple 1 est le milieu du "
"groupe 0,5 - 1, 2 est le milieu du groupe 1,5 - 2,5, 3 est le milieu de 2,5 -"
" 3,5, etc. Compte-tenu des valeurs ci-dessous, la valeur centrale se situe "
"quelque part dans le groupe 3,5 - 4,5 et est estimée par interpolation :"
#: ../Doc/library/statistics.rst:241 #: ../Doc/library/statistics.rst:241
msgid "" msgid ""
"Optional argument *interval* represents the class interval, and defaults to " "Optional argument *interval* represents the class interval, and defaults to "
"1. Changing the class interval naturally will change the interpolation:" "1. Changing the class interval naturally will change the interpolation:"
msgstr "" msgstr ""
"L'argument optionnel *interval* représente la largeur de l'intervalle des "
"groupes (par défaut, 1). Changer l'intervalle des groupes change bien sûr "
"l'interpolation :"
#: ../Doc/library/statistics.rst:251 #: ../Doc/library/statistics.rst:251
msgid "" msgid ""
"This function does not check whether the data points are at least *interval* " "This function does not check whether the data points are at least *interval* "
"apart." "apart."
msgstr "" msgstr ""
"Cette fonction ne vérifie pas que les valeurs sont bien séparées d'au moins "
"une fois *interval*."
#: ../Doc/library/statistics.rst:256 #: ../Doc/library/statistics.rst:256
msgid "" msgid ""
"Under some circumstances, :func:`median_grouped` may coerce data points to " "Under some circumstances, :func:`median_grouped` may coerce data points to "
"floats. This behaviour is likely to change in the future." "floats. This behaviour is likely to change in the future."
msgstr "" msgstr ""
"Sous certaines conditions, :func:`median_grouped` peut convertir les valeurs "
"en nombres à virgule flottante. Ce comportement est susceptible de changer "
"dans le futur."
#: ../Doc/library/statistics.rst:261 #: ../Doc/library/statistics.rst:261
msgid "" msgid ""
"\"Statistics for the Behavioral Sciences\", Frederick J Gravetter and Larry " "\"Statistics for the Behavioral Sciences\", Frederick J Gravetter and Larry "
"B Wallnau (8th Edition)." "B Wallnau (8th Edition)."
msgstr "" msgstr ""
"*Statistics for the Behavioral Sciences*, Frederick J Gravetter et Larry B "
"Wallnau (8\\ :sup:`e` édition, ouvrage en anglais)."
#: ../Doc/library/statistics.rst:264 #: ../Doc/library/statistics.rst:264
msgid "" msgid ""
@ -359,6 +408,10 @@ msgid ""
"spreadsheet, including `this discussion <https://mail.gnome.org/archives/" "spreadsheet, including `this discussion <https://mail.gnome.org/archives/"
"gnumeric-list/2011-April/msg00018.html>`_." "gnumeric-list/2011-April/msg00018.html>`_."
msgstr "" msgstr ""
"La fonction `SSMEDIAN <https://help.gnome.org/users/gnumeric/stable/gnumeric."
"html#gnumeric-function-SSMEDIAN>`_ du tableur Gnome Gnumeric ainsi que "
"`cette discussion <https://mail.gnome.org/archives/gnumeric-list/2011-April/"
"msg00018.html>`_."
#: ../Doc/library/statistics.rst:272 #: ../Doc/library/statistics.rst:272
msgid "" msgid ""
@ -390,6 +443,9 @@ msgid ""
"Return the population standard deviation (the square root of the population " "Return the population standard deviation (the square root of the population "
"variance). See :func:`pvariance` for arguments and other details." "variance). See :func:`pvariance` for arguments and other details."
msgstr "" msgstr ""
"Renvoie l'écart-type de la population (racine carrée de la variance de la "
"population). Voir :func:`pvariance` pour les arguments et d'autres "
"précisions."
#: ../Doc/library/statistics.rst:309 #: ../Doc/library/statistics.rst:309
msgid "" msgid ""
@ -413,10 +469,13 @@ msgid ""
"estimate the variance from a sample, the :func:`variance` function is " "estimate the variance from a sample, the :func:`variance` function is "
"usually a better choice." "usually a better choice."
msgstr "" msgstr ""
"Utilisez cette fonction pour calculer la variance sur une population "
"complète. Pour estimer la variance à partir d'un échantillon, utilisez "
"plutôt :func:`variance` à la place."
#: ../Doc/library/statistics.rst:323 #: ../Doc/library/statistics.rst:323
msgid "Raises :exc:`StatisticsError` if *data* is empty." msgid "Raises :exc:`StatisticsError` if *data* is empty."
msgstr "" msgstr "Lève une erreur :exc:`StatisticsError` si *data* est vide."
#: ../Doc/library/statistics.rst:325 ../Doc/library/statistics.rst:399 #: ../Doc/library/statistics.rst:325 ../Doc/library/statistics.rst:399
msgid "Examples:" msgid "Examples:"
@ -427,6 +486,9 @@ msgid ""
"If you have already calculated the mean of your data, you can pass it as the " "If you have already calculated the mean of your data, you can pass it as the "
"optional second argument *mu* to avoid recalculation:" "optional second argument *mu* to avoid recalculation:"
msgstr "" msgstr ""
"Si vous connaissez la moyenne de vos données, il est possible de la passer "
"comme argument optionnel *mu* lors de l'appel de fonction pour éviter de la "
"calculer une nouvelle fois :"
#: ../Doc/library/statistics.rst:342 #: ../Doc/library/statistics.rst:342
msgid "" msgid ""
@ -437,7 +499,7 @@ msgstr ""
#: ../Doc/library/statistics.rst:346 #: ../Doc/library/statistics.rst:346
msgid "Decimals and Fractions are supported:" msgid "Decimals and Fractions are supported:"
msgstr "" msgstr "La fonction gère les nombres décimaux et les fractions :"
#: ../Doc/library/statistics.rst:360 #: ../Doc/library/statistics.rst:360
msgid "" msgid ""
@ -445,6 +507,10 @@ msgid ""
"σ². When called on a sample instead, this is the biased sample variance s², " "σ². When called on a sample instead, this is the biased sample variance s², "
"also known as variance with N degrees of freedom." "also known as variance with N degrees of freedom."
msgstr "" msgstr ""
"Cette fonction renvoie la variance de la population σ² lorsqu'elle est "
"appliquée sur la population entière. Si elle est appliquée seulement sur un "
"échantillon, le résultat est alors la variance de l'échantillon s² ou "
"variance à N degrés de liberté."
#: ../Doc/library/statistics.rst:364 #: ../Doc/library/statistics.rst:364
msgid "" msgid ""
@ -460,6 +526,8 @@ msgid ""
"Return the sample standard deviation (the square root of the sample " "Return the sample standard deviation (the square root of the sample "
"variance). See :func:`variance` for arguments and other details." "variance). See :func:`variance` for arguments and other details."
msgstr "" msgstr ""
"Renvoie l'écart-type de l'échantillon (racine carrée de la variance de "
"l'échantillon). Voir :func:`variance` pour les arguments et plus de détails."
#: ../Doc/library/statistics.rst:384 #: ../Doc/library/statistics.rst:384
msgid "" msgid ""
@ -469,6 +537,11 @@ msgid ""
"that the data is spread out; a small variance indicates it is clustered " "that the data is spread out; a small variance indicates it is clustered "
"closely around the mean." "closely around the mean."
msgstr "" msgstr ""
"Renvoie la variance de l'échantillon *data*, un itérable d'au moins deux "
"valeurs réelles. La variance, ou moment de second ordre, est une mesure de "
"la variabilité (ou dispersion) des données. Une variance élevée indique que "
"les données sont très dispersées ; une variance faible indique que les "
"valeurs sont resserrées autour de la moyenne."
#: ../Doc/library/statistics.rst:390 #: ../Doc/library/statistics.rst:390
msgid "" msgid ""
@ -476,22 +549,33 @@ msgid ""
"*data*. If it is missing or ``None`` (the default), the mean is " "*data*. If it is missing or ``None`` (the default), the mean is "
"automatically calculated." "automatically calculated."
msgstr "" msgstr ""
"Si le second argument optionnel *xbar* est spécifié, celui-ci doit "
"correspondre à la moyenne de *data*. S'il n'est pas spécifié ou ``None`` "
"(par défaut), la moyenne est automatiquement calculée."
#: ../Doc/library/statistics.rst:394 #: ../Doc/library/statistics.rst:394
msgid "" msgid ""
"Use this function when your data is a sample from a population. To calculate " "Use this function when your data is a sample from a population. To calculate "
"the variance from the entire population, see :func:`pvariance`." "the variance from the entire population, see :func:`pvariance`."
msgstr "" msgstr ""
"Utilisez cette fonction lorsque vos données forment un échantillon d'une "
"population plus grande. Pour calculer la variance d'une population complète, "
"utilisez :func:`pvariance`."
#: ../Doc/library/statistics.rst:397 #: ../Doc/library/statistics.rst:397
msgid "Raises :exc:`StatisticsError` if *data* has fewer than two values." msgid "Raises :exc:`StatisticsError` if *data* has fewer than two values."
msgstr "" msgstr ""
"Lève une erreur :exc:`StatisticsError` si *data* contient moins de deux "
"éléments."
#: ../Doc/library/statistics.rst:407 #: ../Doc/library/statistics.rst:407
msgid "" msgid ""
"If you have already calculated the mean of your data, you can pass it as the " "If you have already calculated the mean of your data, you can pass it as the "
"optional second argument *xbar* to avoid recalculation:" "optional second argument *xbar* to avoid recalculation:"
msgstr "" msgstr ""
"Si vous connaissez la moyenne de vos données, il est possible de la passer "
"comme argument optionnel *xbar* lors de l'appel de fonction pour éviter de "
"la calculer une nouvelle fois :"
#: ../Doc/library/statistics.rst:416 #: ../Doc/library/statistics.rst:416
msgid "" msgid ""
@ -499,10 +583,13 @@ msgid ""
"mean as *xbar*. Using arbitrary values for *xbar* can lead to invalid or " "mean as *xbar*. Using arbitrary values for *xbar* can lead to invalid or "
"impossible results." "impossible results."
msgstr "" msgstr ""
"Cette fonction ne vérifie pas que la valeur passée dans l'argument *xbar* "
"correspond bien à la moyenne. Utiliser des valeurs arbitraires pour *xbar* "
"produit des résultats impossibles ou incorrects."
#: ../Doc/library/statistics.rst:420 #: ../Doc/library/statistics.rst:420
msgid "Decimal and Fraction values are supported:" msgid "Decimal and Fraction values are supported:"
msgstr "" msgstr "La fonction gère les nombres décimaux et les fractions :"
#: ../Doc/library/statistics.rst:434 #: ../Doc/library/statistics.rst:434
msgid "" msgid ""
@ -511,6 +598,11 @@ msgid ""
"representative (e.g. independent and identically distributed), the result " "representative (e.g. independent and identically distributed), the result "
"should be an unbiased estimate of the true population variance." "should be an unbiased estimate of the true population variance."
msgstr "" msgstr ""
"Cela correspond à la variance s² de l'échantillon avec correction de Bessel "
"(ou variance à N-1 degrés de liberté). En supposant que les observations "
"sont représentatives de la population (c'est-à-dire indépendantes et "
"identiquement distribuées), alors le résultat est une estimation non biaisée "
"de la variance."
#: ../Doc/library/statistics.rst:439 #: ../Doc/library/statistics.rst:439
msgid "" msgid ""
@ -518,6 +610,9 @@ msgid ""
"func:`pvariance` function as the *mu* parameter to get the variance of a " "func:`pvariance` function as the *mu* parameter to get the variance of a "
"sample." "sample."
msgstr "" msgstr ""
"Si vous connaissez d'avance la vraie moyenne μ de la population, vous "
"devriez la passer à :func:`pvariance` comme paramètre *mu* pour obtenir la "
"variance de l'échantillon."
#: ../Doc/library/statistics.rst:444 #: ../Doc/library/statistics.rst:444
msgid "Exceptions" msgid "Exceptions"
@ -525,8 +620,9 @@ msgstr "Exceptions"
#: ../Doc/library/statistics.rst:446 #: ../Doc/library/statistics.rst:446
msgid "A single exception is defined:" msgid "A single exception is defined:"
msgstr "" msgstr "Une seule exception est définie :"
#: ../Doc/library/statistics.rst:450 #: ../Doc/library/statistics.rst:450
msgid "Subclass of :exc:`ValueError` for statistics-related exceptions." msgid "Subclass of :exc:`ValueError` for statistics-related exceptions."
msgstr "" msgstr ""
"Sous-classe de :exc:`ValueError` pour les exceptions liées aux statistiques."

View File

@ -37,7 +37,7 @@ msgstr ""
#: ../Doc/library/sunau.rst:21 #: ../Doc/library/sunau.rst:21
msgid "Field" msgid "Field"
msgstr "" msgstr "Champ"
#: ../Doc/library/sunau.rst:21 #: ../Doc/library/sunau.rst:21
msgid "Contents" msgid "Contents"

File diff suppressed because it is too large Load Diff

View File

@ -1028,7 +1028,7 @@ msgstr ""
#: ../Doc/library/tkinter.ttk.rst:679 #: ../Doc/library/tkinter.ttk.rst:679
msgid "mode" msgid "mode"
msgstr "" msgstr "mode"
#: ../Doc/library/tkinter.ttk.rst:679 #: ../Doc/library/tkinter.ttk.rst:679
msgid "One of \"determinate\" or \"indeterminate\"." msgid "One of \"determinate\" or \"indeterminate\"."
@ -1687,7 +1687,7 @@ msgstr ""
#: ../Doc/library/tkinter.ttk.rst:1089 #: ../Doc/library/tkinter.ttk.rst:1089
msgid "tree" msgid "tree"
msgstr "" msgstr "*tree* (arbre)"
#: ../Doc/library/tkinter.ttk.rst:1089 #: ../Doc/library/tkinter.ttk.rst:1089
msgid "The tree area." msgid "The tree area."

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -16,11 +16,11 @@ msgstr ""
#: ../Doc/library/uuid.rst:2 #: ../Doc/library/uuid.rst:2
msgid ":mod:`uuid` --- UUID objects according to :rfc:`4122`" msgid ":mod:`uuid` --- UUID objects according to :rfc:`4122`"
msgstr "" msgstr ":mod:`uuid` — Objets UUID d'après la :rfc:`4122`"
#: ../Doc/library/uuid.rst:9 #: ../Doc/library/uuid.rst:9
msgid "**Source code:** :source:`Lib/uuid.py`" msgid "**Source code:** :source:`Lib/uuid.py`"
msgstr "" msgstr "**Code source :** :source:`Lib/uuid.py`"
#: ../Doc/library/uuid.rst:13 #: ../Doc/library/uuid.rst:13
msgid "" msgid ""
@ -29,6 +29,10 @@ msgid ""
"`uuid5` for generating version 1, 3, 4, and 5 UUIDs as specified in :rfc:" "`uuid5` for generating version 1, 3, 4, and 5 UUIDs as specified in :rfc:"
"`4122`." "`4122`."
msgstr "" msgstr ""
"Ce module exporte des objets :class:`UUID` immuables (de la classe :class:"
"`UUID`) et les fonctions :func:`uuid1`, :func:`uuid3`, :func:`uuid4`, :func:"
"`uuid5` permettant de générer des UUID de version 1, 3, 4 et 5 tels que "
"définis dans la :rfc:`4122`."
#: ../Doc/library/uuid.rst:17 #: ../Doc/library/uuid.rst:17
msgid "" msgid ""
@ -37,6 +41,10 @@ msgid ""
"creates a UUID containing the computer's network address. :func:`uuid4` " "creates a UUID containing the computer's network address. :func:`uuid4` "
"creates a random UUID." "creates a random UUID."
msgstr "" msgstr ""
"Utilisez :func:`uuid1` ou :func:`uuid4` si votre but est de produire un "
"identifiant unique. Notez que :func:`uuid1` peut dévoiler des informations "
"personnelles car l'UUID produit contient l'adresse réseau de l'ordinateur. "
"En revanche, :func:`uuid4` génère un UUID aléatoire."
#: ../Doc/library/uuid.rst:22 #: ../Doc/library/uuid.rst:22
msgid "" msgid ""
@ -46,20 +54,31 @@ msgid ""
"UUID. All instances of :class:`UUID` have an :attr:`is_safe` attribute " "UUID. All instances of :class:`UUID` have an :attr:`is_safe` attribute "
"which relays any information about the UUID's safety, using this enumeration:" "which relays any information about the UUID's safety, using this enumeration:"
msgstr "" msgstr ""
"En fonction du système d'exploitation, les UUID :func:`uuid1` peuvent ne pas "
"être « sûrs ». Un UUID est considéré sûr s'il est généré avec des techniques "
"de synchronisation qui garantissent que deux processus ne peuvent obtenir le "
"même UUID. Toutes les instances de :class:`UUID` possèdent un attribut :attr:"
"`is_safe` qui indique le niveau de sûreté de l'UUID selon l'énumération "
"suivante :"
#: ../Doc/library/uuid.rst:34 #: ../Doc/library/uuid.rst:34
msgid "The UUID was generated by the platform in a multiprocessing-safe way." msgid "The UUID was generated by the platform in a multiprocessing-safe way."
msgstr "" msgstr ""
"L'UUID a été généré par la plateforme en utilisant une méthode sûre dans un "
"contexte de parallélisme par processus."
#: ../Doc/library/uuid.rst:38 #: ../Doc/library/uuid.rst:38
msgid "The UUID was not generated in a multiprocessing-safe way." msgid "The UUID was not generated in a multiprocessing-safe way."
msgstr "" msgstr ""
"L'UUID n'a pas été généré par une méthode sûre dans un contexte de "
"parallélisme par processus."
#: ../Doc/library/uuid.rst:42 #: ../Doc/library/uuid.rst:42
msgid "" msgid ""
"The platform does not provide information on whether the UUID was generated " "The platform does not provide information on whether the UUID was generated "
"safely or not." "safely or not."
msgstr "" msgstr ""
"La plateforme ne précise pas si l'UUID a été généré de façon sûre ou non."
#: ../Doc/library/uuid.rst:47 #: ../Doc/library/uuid.rst:47
msgid "" msgid ""
@ -72,6 +91,15 @@ msgid ""
"string of hex digits is given, curly braces, hyphens, and a URN prefix are " "string of hex digits is given, curly braces, hyphens, and a URN prefix are "
"all optional. For example, these expressions all yield the same UUID::" "all optional. For example, these expressions all yield the same UUID::"
msgstr "" msgstr ""
"Produit un UUID à partir soit d'une chaîne de 32 chiffres hexadécimaux, soit "
"une chaîne de 16 octets gros-boutiste (argument *bytes*), soit une chaîne de "
"16 octets petit-boutiste (argument *bytes_le*), soit un n-uplet de six "
"entiers (32-bit *time_low*, 16-bit *time_mid*, 16-bit *time_hi_version*, 8-"
"bit *clock_seq_hi_variant*, 8-bit *clock_seq_low*, 48-bit *node*) (argument "
"*fields*), soit un unique entier sur 128 bits (argument *int*). Lorsque la "
"fonction reçoit une chaîne de chiffres hexadécimaux, les accolades, les "
"tirets et le préfixe URN sont facultatifs. Par exemple, toutes les "
"expressions ci-dessous génèrent le même UUID ::"
#: ../Doc/library/uuid.rst:66 #: ../Doc/library/uuid.rst:66
msgid "" msgid ""
@ -80,6 +108,11 @@ msgid ""
"its variant and version number set according to :rfc:`4122`, overriding bits " "its variant and version number set according to :rfc:`4122`, overriding bits "
"in the given *hex*, *bytes*, *bytes_le*, *fields*, or *int*." "in the given *hex*, *bytes*, *bytes_le*, *fields*, or *int*."
msgstr "" msgstr ""
"Un seul des arguments *hex*, *bytes*, *bytes_le*, *fields* ou *int* doit "
"être spécifié. L'argument *version* est optionnel : s'il est spécifié, "
"l'UUID généré aura pour numéro de version et de variante la valeur indiquée "
"dans la :rfc:`4122`, remplaçant les bits idoines de *hex*, *bytes*, "
"*bytes_le*, *fields* ou *int*."
#: ../Doc/library/uuid.rst:71 #: ../Doc/library/uuid.rst:71
msgid "" msgid ""
@ -87,6 +120,9 @@ msgid ""
"int` attributes. Comparison with a non-UUID object raises a :exc:" "int` attributes. Comparison with a non-UUID object raises a :exc:"
"`TypeError`." "`TypeError`."
msgstr "" msgstr ""
"La comparaison de deux objets UUID se fait en comparant leurs attributs :"
"attr:`UUID.int`. La comparaison avec un objet autre qu'un UUID lève une "
"exception :exc:`TypeError`."
#: ../Doc/library/uuid.rst:75 #: ../Doc/library/uuid.rst:75
msgid "" msgid ""
@ -94,32 +130,43 @@ msgid ""
"``12345678-1234-5678-1234-567812345678`` where the 32 hexadecimal digits " "``12345678-1234-5678-1234-567812345678`` where the 32 hexadecimal digits "
"represent the UUID." "represent the UUID."
msgstr "" msgstr ""
"``str(uuid)`` renvoie une chaîne de caractères de la forme "
"``12345678-1234-5678-1234-567812345678`` représentant l'UUID par une chaîne "
"de 32 chiffres hexadécimaux."
#: ../Doc/library/uuid.rst:79 #: ../Doc/library/uuid.rst:79
msgid ":class:`UUID` instances have these read-only attributes:" msgid ":class:`UUID` instances have these read-only attributes:"
msgstr "" msgstr ""
"Les instances de :class:`UUID` possèdent les attributs suivants en lecture "
"seule :"
#: ../Doc/library/uuid.rst:83 #: ../Doc/library/uuid.rst:83
msgid "" msgid ""
"The UUID as a 16-byte string (containing the six integer fields in big-" "The UUID as a 16-byte string (containing the six integer fields in big-"
"endian byte order)." "endian byte order)."
msgstr "" msgstr ""
"L'UUID représenté comme une chaîne de 16 octets (contenant les six champs "
"entiers dans l'ordre gros-boutiste)."
#: ../Doc/library/uuid.rst:89 #: ../Doc/library/uuid.rst:89
msgid "" msgid ""
"The UUID as a 16-byte string (with *time_low*, *time_mid*, and " "The UUID as a 16-byte string (with *time_low*, *time_mid*, and "
"*time_hi_version* in little-endian byte order)." "*time_hi_version* in little-endian byte order)."
msgstr "" msgstr ""
"L'UUID représenté comme une chaîne de 16 octets (avec *time_low*, *time_mid* "
"et *time_hi_version* dans l'ordre petit-boutiste)."
#: ../Doc/library/uuid.rst:95 #: ../Doc/library/uuid.rst:95
msgid "" msgid ""
"A tuple of the six integer fields of the UUID, which are also available as " "A tuple of the six integer fields of the UUID, which are also available as "
"six individual attributes and two derived attributes:" "six individual attributes and two derived attributes:"
msgstr "" msgstr ""
"Un n-uplet contenant les six champs entiers de l'UUID, également accessibles "
"en tant que six attributs individuels et deux attributs dérivés :"
#: ../Doc/library/uuid.rst:99 #: ../Doc/library/uuid.rst:99
msgid "Field" msgid "Field"
msgstr "" msgstr "Champ"
#: ../Doc/library/uuid.rst:99 #: ../Doc/library/uuid.rst:99
msgid "Meaning" msgid "Meaning"
@ -131,7 +178,7 @@ msgstr ":attr:`time_low`"
#: ../Doc/library/uuid.rst:101 #: ../Doc/library/uuid.rst:101
msgid "the first 32 bits of the UUID" msgid "the first 32 bits of the UUID"
msgstr "" msgstr "les 32 premiers bits de l'UUID"
#: ../Doc/library/uuid.rst:103 #: ../Doc/library/uuid.rst:103
msgid ":attr:`time_mid`" msgid ":attr:`time_mid`"
@ -139,7 +186,7 @@ msgstr ":attr:`time_mid`"
#: ../Doc/library/uuid.rst:103 ../Doc/library/uuid.rst:105 #: ../Doc/library/uuid.rst:103 ../Doc/library/uuid.rst:105
msgid "the next 16 bits of the UUID" msgid "the next 16 bits of the UUID"
msgstr "" msgstr "les 16 bits suivants de l'UUID"
#: ../Doc/library/uuid.rst:105 #: ../Doc/library/uuid.rst:105
msgid ":attr:`time_hi_version`" msgid ":attr:`time_hi_version`"
@ -151,7 +198,7 @@ msgstr ":attr:`clock_seq_hi_variant`"
#: ../Doc/library/uuid.rst:107 ../Doc/library/uuid.rst:109 #: ../Doc/library/uuid.rst:107 ../Doc/library/uuid.rst:109
msgid "the next 8 bits of the UUID" msgid "the next 8 bits of the UUID"
msgstr "" msgstr "les 8 bits suivants de l'UUID"
#: ../Doc/library/uuid.rst:109 #: ../Doc/library/uuid.rst:109
msgid ":attr:`clock_seq_low`" msgid ":attr:`clock_seq_low`"
@ -163,7 +210,7 @@ msgstr ":attr:`node`"
#: ../Doc/library/uuid.rst:111 #: ../Doc/library/uuid.rst:111
msgid "the last 48 bits of the UUID" msgid "the last 48 bits of the UUID"
msgstr "" msgstr "les derniers 48 bits de l'UUID"
#: ../Doc/library/uuid.rst:113 #: ../Doc/library/uuid.rst:113
msgid ":attr:`time`" msgid ":attr:`time`"
@ -171,7 +218,7 @@ msgstr ":attr:`time`"
#: ../Doc/library/uuid.rst:113 #: ../Doc/library/uuid.rst:113
msgid "the 60-bit timestamp" msgid "the 60-bit timestamp"
msgstr "" msgstr "l'horodatage sur 60 bits"
#: ../Doc/library/uuid.rst:115 #: ../Doc/library/uuid.rst:115
msgid ":attr:`clock_seq`" msgid ":attr:`clock_seq`"
@ -179,19 +226,22 @@ msgstr ":attr:`clock_seq`"
#: ../Doc/library/uuid.rst:115 #: ../Doc/library/uuid.rst:115
msgid "the 14-bit sequence number" msgid "the 14-bit sequence number"
msgstr "" msgstr "le numéro de séquence sur 14 bits"
#: ../Doc/library/uuid.rst:121 #: ../Doc/library/uuid.rst:121
msgid "The UUID as a 32-character hexadecimal string." msgid "The UUID as a 32-character hexadecimal string."
msgstr "" msgstr ""
"Représentation de l'UUID sous forme d'une chaîne de 32 chiffres hexadécimaux."
#: ../Doc/library/uuid.rst:126 #: ../Doc/library/uuid.rst:126
msgid "The UUID as a 128-bit integer." msgid "The UUID as a 128-bit integer."
msgstr "" msgstr "Représentation de l'UUId sous forme d'un entier de 128 bits."
#: ../Doc/library/uuid.rst:131 #: ../Doc/library/uuid.rst:131
msgid "The UUID as a URN as specified in :rfc:`4122`." msgid "The UUID as a URN as specified in :rfc:`4122`."
msgstr "" msgstr ""
"Représentation de l'UUID sous forme d'URN tel que spécifié dans la :rfc:"
"`4122`."
#: ../Doc/library/uuid.rst:136 #: ../Doc/library/uuid.rst:136
msgid "" msgid ""
@ -199,22 +249,30 @@ msgid ""
"will be one of the constants :const:`RESERVED_NCS`, :const:`RFC_4122`, :" "will be one of the constants :const:`RESERVED_NCS`, :const:`RFC_4122`, :"
"const:`RESERVED_MICROSOFT`, or :const:`RESERVED_FUTURE`." "const:`RESERVED_MICROSOFT`, or :const:`RESERVED_FUTURE`."
msgstr "" msgstr ""
"Variante de l'UUID. Celle-ci détermine l'agencement interne de l'UUID. Les "
"valeurs possibles sont les constantes suivantes : :const:`RESERVED_NCS`, :"
"const:`RFC_4122`, :const:`RESERVED_MICROSOFT` ou :const:`RESERVED_FUTURE`."
#: ../Doc/library/uuid.rst:143 #: ../Doc/library/uuid.rst:143
msgid "" msgid ""
"The UUID version number (1 through 5, meaningful only when the variant is :" "The UUID version number (1 through 5, meaningful only when the variant is :"
"const:`RFC_4122`)." "const:`RFC_4122`)."
msgstr "" msgstr ""
"Numéro de version de l'UUID (de 1 à 5). Cette valeur n'a de sens que dans le "
"cas de la variante :const:`RFC_4122`."
#: ../Doc/library/uuid.rst:148 #: ../Doc/library/uuid.rst:148
msgid "" msgid ""
"An enumeration of :class:`SafeUUID` which indicates whether the platform " "An enumeration of :class:`SafeUUID` which indicates whether the platform "
"generated the UUID in a multiprocessing-safe way." "generated the UUID in a multiprocessing-safe way."
msgstr "" msgstr ""
"Valeur de l'énumération :class:`SafeUUID` indiquant si la plateforme a "
"généré l'UUID d'une façon sûre dans un contexte de parallélisme par "
"processus."
#: ../Doc/library/uuid.rst:153 #: ../Doc/library/uuid.rst:153
msgid "The :mod:`uuid` module defines the following functions:" msgid "The :mod:`uuid` module defines the following functions:"
msgstr "" msgstr "Le module :mod:`uu` définit les fonctions suivantes :"
#: ../Doc/library/uuid.rst:158 #: ../Doc/library/uuid.rst:158
msgid "" msgid ""
@ -228,6 +286,17 @@ msgid ""
"least significant bit of the first octet is *unset*) will be preferred over " "least significant bit of the first octet is *unset*) will be preferred over "
"locally administered MAC addresses, but with no other ordering guarantees." "locally administered MAC addresses, but with no other ordering guarantees."
msgstr "" msgstr ""
"Renvoie l'adresse réseau matérielle sous forme d'un entier positif sur 48 "
"bits. Cette fonction peut faire appel à un programme externe relativement "
"lent lors de sa première exécution. Si toutes les tentatives d'obtenir "
"l'adresse matérielle échouent, un nombre aléatoire sur 48 bit avec le bit de "
"*multicast* (bit de poids faible du premier octet) à 1 est généré, comme "
"recommandé par la :rfc:`4122`. Ici, « adresse matérielle » correspond à "
"l'adresse MAC d'une interface réseau. Sur une machine avec plusieurs "
"interfaces réseau, les adresses MAC de type UUA (*universally administered "
"address*, pour lesquelles le second bit de poids faible est à zéro) sont "
"prioritaires par rapport aux autres adresses MAC. Aucune autre garantie "
"n'est donnée sur l'ordre dans lequel les interfaces sont choisies."
#: ../Doc/library/uuid.rst:168 #: ../Doc/library/uuid.rst:168
msgid "" msgid ""
@ -235,6 +304,8 @@ msgid ""
"administered MAC addresses, since the former are guaranteed to be globally " "administered MAC addresses, since the former are guaranteed to be globally "
"unique, while the latter are not." "unique, while the latter are not."
msgstr "" msgstr ""
"Les adresses MAC de type UUA sont préférées par rapport aux adresses locales "
"car ces dernières ne sont pas nécessairement uniques."
#: ../Doc/library/uuid.rst:178 #: ../Doc/library/uuid.rst:178
msgid "" msgid ""
@ -243,80 +314,103 @@ msgid ""
"If *clock_seq* is given, it is used as the sequence number; otherwise a " "If *clock_seq* is given, it is used as the sequence number; otherwise a "
"random 14-bit sequence number is chosen." "random 14-bit sequence number is chosen."
msgstr "" msgstr ""
"Génère un UUID à partir d'un identifiant hôte, d'un numéro de séquence et de "
"l'heure actuelle. Si *node* n'est pas spécifié, la fonction :func:`getnode` "
"est appelée pour obtenir l'adresse matérielle. *clock_seq* est utilisé comme "
"numéro de séquence s'il est spécifié, sinon un numéro aléatoire sur 14 bits "
"est utilisé à la place."
#: ../Doc/library/uuid.rst:188 #: ../Doc/library/uuid.rst:188
msgid "" msgid ""
"Generate a UUID based on the MD5 hash of a namespace identifier (which is a " "Generate a UUID based on the MD5 hash of a namespace identifier (which is a "
"UUID) and a name (which is a string)." "UUID) and a name (which is a string)."
msgstr "" msgstr ""
"Génère un UUID à partir de l'empreinte MD5 de l'identifiant d'un espace de "
"nom (un UUID) et d'un nom (une chaîne de caractères)."
#: ../Doc/library/uuid.rst:196 #: ../Doc/library/uuid.rst:196
msgid "Generate a random UUID." msgid "Generate a random UUID."
msgstr "" msgstr "Génère un UUID aléatoire."
#: ../Doc/library/uuid.rst:203 #: ../Doc/library/uuid.rst:203
msgid "" msgid ""
"Generate a UUID based on the SHA-1 hash of a namespace identifier (which is " "Generate a UUID based on the SHA-1 hash of a namespace identifier (which is "
"a UUID) and a name (which is a string)." "a UUID) and a name (which is a string)."
msgstr "" msgstr ""
"Génère un UUID à partir de l'empreinte SHA-1 de l'identifiant d'un espace de "
"nom (un UUID) et d'un nom (une chaîne de caractères)."
#: ../Doc/library/uuid.rst:208 #: ../Doc/library/uuid.rst:208
msgid "" msgid ""
"The :mod:`uuid` module defines the following namespace identifiers for use " "The :mod:`uuid` module defines the following namespace identifiers for use "
"with :func:`uuid3` or :func:`uuid5`." "with :func:`uuid3` or :func:`uuid5`."
msgstr "" msgstr ""
"Le module :mod:`uuid` définit les identifiants d'espaces de noms suivants "
"(pour :func:`uuid3` et :func:`uuid5`)."
#: ../Doc/library/uuid.rst:214 #: ../Doc/library/uuid.rst:214
msgid "" msgid ""
"When this namespace is specified, the *name* string is a fully-qualified " "When this namespace is specified, the *name* string is a fully-qualified "
"domain name." "domain name."
msgstr "" msgstr ""
"Lorsque cet espace de nom est spécifié, la chaîne *name* doit être un nom de "
"domaine pleinement qualifié (souvent indiqué en anglais par *FQDN*)."
#: ../Doc/library/uuid.rst:220 #: ../Doc/library/uuid.rst:220
msgid "When this namespace is specified, the *name* string is a URL." msgid "When this namespace is specified, the *name* string is a URL."
msgstr "" msgstr ""
"Lorsque cet espace de nom est spécifié, la chaîne *name* doit être une URL."
#: ../Doc/library/uuid.rst:225 #: ../Doc/library/uuid.rst:225
msgid "When this namespace is specified, the *name* string is an ISO OID." msgid "When this namespace is specified, the *name* string is an ISO OID."
msgstr "" msgstr ""
"Lorsque cet espace de nom est spécifié, la chaîne *name* doit être un "
"OID ISO."
#: ../Doc/library/uuid.rst:230 #: ../Doc/library/uuid.rst:230
msgid "" msgid ""
"When this namespace is specified, the *name* string is an X.500 DN in DER or " "When this namespace is specified, the *name* string is an X.500 DN in DER or "
"a text output format." "a text output format."
msgstr "" msgstr ""
"Lorsque cet espace de nom est spécifié, la chaîne *name* doit être un "
"DN X.500 au format texte ou DER."
#: ../Doc/library/uuid.rst:233 #: ../Doc/library/uuid.rst:233
msgid "" msgid ""
"The :mod:`uuid` module defines the following constants for the possible " "The :mod:`uuid` module defines the following constants for the possible "
"values of the :attr:`variant` attribute:" "values of the :attr:`variant` attribute:"
msgstr "" msgstr ""
"Le module :mod:`uuid` définit les constantes suivantes correspondant aux "
"valeurs autorisées pour l'attribut :attr:`variant` :"
#: ../Doc/library/uuid.rst:239 #: ../Doc/library/uuid.rst:239
msgid "Reserved for NCS compatibility." msgid "Reserved for NCS compatibility."
msgstr "" msgstr "Réservé pour la compatibilité NCS."
#: ../Doc/library/uuid.rst:244 #: ../Doc/library/uuid.rst:244
msgid "Specifies the UUID layout given in :rfc:`4122`." msgid "Specifies the UUID layout given in :rfc:`4122`."
msgstr "" msgstr "Utilise l'agencement des UUID de la :rfc:`4122`."
#: ../Doc/library/uuid.rst:249 #: ../Doc/library/uuid.rst:249
msgid "Reserved for Microsoft compatibility." msgid "Reserved for Microsoft compatibility."
msgstr "" msgstr "Réservé pour la compatibilité Microsoft."
#: ../Doc/library/uuid.rst:254 #: ../Doc/library/uuid.rst:254
msgid "Reserved for future definition." msgid "Reserved for future definition."
msgstr "" msgstr "Réservé pour un usage futur."
#: ../Doc/library/uuid.rst:260 #: ../Doc/library/uuid.rst:260
msgid ":rfc:`4122` - A Universally Unique IDentifier (UUID) URN Namespace" msgid ":rfc:`4122` - A Universally Unique IDentifier (UUID) URN Namespace"
msgstr "" msgstr ":rfc:`4122` *A Universally Unique IDentifier (UUID) URN Namespace*"
#: ../Doc/library/uuid.rst:260 #: ../Doc/library/uuid.rst:260
msgid "" msgid ""
"This specification defines a Uniform Resource Name namespace for UUIDs, the " "This specification defines a Uniform Resource Name namespace for UUIDs, the "
"internal format of UUIDs, and methods of generating UUIDs." "internal format of UUIDs, and methods of generating UUIDs."
msgstr "" msgstr ""
"Cette spécification (en anglais) définit un espace de noms *Uniform Resource "
"Name* pour les UUID, leur format interne et les méthodes permettant de les "
"générer."
#: ../Doc/library/uuid.rst:267 #: ../Doc/library/uuid.rst:267
msgid "Example" msgid "Example"
@ -325,3 +419,4 @@ msgstr "Exemple"
#: ../Doc/library/uuid.rst:269 #: ../Doc/library/uuid.rst:269
msgid "Here are some examples of typical usage of the :mod:`uuid` module::" msgid "Here are some examples of typical usage of the :mod:`uuid` module::"
msgstr "" msgstr ""
"Voici quelques exemples classiques d'utilisation du module :mod:`uuid` ::"

View File

@ -125,6 +125,14 @@ msgid ""
"available from Python's project page, located at https://sourceforge.net/" "available from Python's project page, located at https://sourceforge.net/"
"projects/python/." "projects/python/."
msgstr "" msgstr ""
"Le changement le plus important dans Python 2.0 ne concerne peut-être pas le "
"code, mais le développement de Python : en mai 2000, les développeurs Python "
"ont commencé à utiliser les outils mis à disposition par SourceForge pour "
"stocker le code source, suivre les rapports de bogues et gérer la file "
"dattente des soumissions de correctifs. Pour signaler des bogues ou "
"soumettre des correctifs pour Python 2.0, utilisez les outils de suivi des "
"bogues et de gestion des correctifs disponibles sur la page du projet "
"Python, à ladresse https://sourceforge.net/projects/python/."
#: ../Doc/whatsnew/2.0.rst:66 #: ../Doc/whatsnew/2.0.rst:66
msgid "" msgid ""
@ -145,6 +153,25 @@ msgid ""
"access, probably that task would have been viewed as \"nice, but not worth " "access, probably that task would have been viewed as \"nice, but not worth "
"the time and effort needed\" and it would never have gotten done." "the time and effort needed\" and it would never have gotten done."
msgstr "" msgstr ""
"Le plus important des services maintenant hébergé chez SourceForge est "
"larborescence CVS Python, le référentiel sous contrôle de version contenant "
"le code source de Python. Auparavant, environ 7 personnes avaient un accès "
"en écriture à larborescence CVS et tous les correctifs devaient être "
"inspectés et archivés par lune des personnes figurant sur cette liste "
"restreinte. Évidemment, ce nétait pas très évolutif. En déplaçant "
"larborescence CVS vers SourceForge, il est devenu possible daccorder un "
"accès en écriture à davantage de personnes ; en septembre 2000, 27 personnes "
"pouvaient enregistrer les modifications, soit quatre fois plus. Cela rend "
"possible des modifications à grande échelle qui ne seraient pas tentées si "
"elles devaient être filtrées par le petit groupe de développeurs principaux. "
"Par exemple, un jour, Peter Schneider-Kamp a eu lidée de supprimer la "
"compatibilité K&R C et de convertir le code source C de Python en ANSI C. "
"Après avoir obtenu lapprobation de la liste de diffusion *python-dev*, il "
"sest lancé dans une série darchives qui ont duré environ une semaine, "
"dautres développeurs l'ont rejoint et le travail a été fait. Sil ny avait "
"eut que 5 personnes ayant un accès en écriture, cette tâche aurait "
"probablement été considérée comme « agréable, mais ne valant pas le temps ni "
"les efforts nécessaires » et cela ne se serait jamais fait."
#: ../Doc/whatsnew/2.0.rst:83 #: ../Doc/whatsnew/2.0.rst:83
msgid "" msgid ""
@ -160,6 +187,19 @@ msgid ""
"notification e-mail messages that are completely unhelpful, so Ka-Ping Yee " "notification e-mail messages that are completely unhelpful, so Ka-Ping Yee "
"wrote an HTML screen-scraper that sends more useful messages." "wrote an HTML screen-scraper that sends more useful messages."
msgstr "" msgstr ""
"Le passage à lutilisation des services de SourceForge a entraîné une "
"augmentation remarquable du rythme de développement. Les correctifs sont "
"maintenant soumis, commentés, révisés par des personnes autres que lauteur "
"dorigine et échangés entre les personnes jusquà ce que le correctif soit "
"jugé utile. Les bogues sont suivis dans un emplacement central et peuvent "
"être attribués à une personne spécifique pour être corrigés. , et nous "
"pouvons compter le nombre de bogues ouverts pour mesurer les progrès. Cela "
"na pas coûté cher: les développeurs ont désormais plus de courrier "
"électronique à traiter, davantage de listes de diffusion à suivre et des "
"outils spéciaux ont dû être créés pour le nouvel environnement. Par exemple, "
"SourceForge envoie des messages électroniques de correctif et de "
"notification de bogues par défaut qui ne sont daucune utilité, Ka-Ping Yee "
"a donc créé un *scraper* HTML qui envoie des messages plus utiles."
#: ../Doc/whatsnew/2.0.rst:95 #: ../Doc/whatsnew/2.0.rst:95
msgid "" msgid ""
@ -175,6 +215,19 @@ msgid ""
"can still ignore the result of a vote, and approve or reject a change even " "can still ignore the result of a vote, and approve or reject a change even "
"if the community disagrees with him." "if the community disagrees with him."
msgstr "" msgstr ""
"La facilité dajout de code a provoqué quelques problèmes de croissance "
"initiaux, tels que le code a été archivé avant quil ne soit prêt ou sans "
"laccord clair du groupe de développeurs. Le processus dapprobation qui a "
"émergé est quelque peu similaire à celui utilisé par le groupe Apache. Les "
"développeurs peuvent voter *+1*, *+0*, *-0* ou *-1* sur un patch; *+1* et "
"*-1* indiquent une acceptation ou un rejet, tandis que *+0* et *-0* "
"signifient que le développeur est généralement indifférent au changement, "
"bien quil présente une légère inclinaison positive ou négative. Le "
"changement le plus important par rapport au modèle Apache est que le vote "
"est essentiellement consultatif, permettant à Guido van Rossum, détenteur du "
"statut de « dictateur bienveillant à vie », de connaître lopinion générale. "
"Il peut toujours ignorer le résultat dun vote et approuver ou rejeter un "
"changement même si la communauté nest pas daccord avec lui."
#: ../Doc/whatsnew/2.0.rst:106 #: ../Doc/whatsnew/2.0.rst:106
msgid "" msgid ""
@ -197,6 +250,11 @@ msgid ""
"for Python. The PEP should provide a concise technical specification of the " "for Python. The PEP should provide a concise technical specification of the "
"feature and a rationale for the feature." "feature and a rationale for the feature."
msgstr "" msgstr ""
"PEP signifie *Python Enhancement Proposition*. Une PEP est un document de "
"conception fournissant des informations à la communauté Python ou décrivant "
"une nouvelle fonctionnalité de Python. La PEP devrait fournir une "
"spécification technique concise de la fonctionnalité et une justification de "
"celle-ci."
#: ../Doc/whatsnew/2.0.rst:125 #: ../Doc/whatsnew/2.0.rst:125
msgid "" msgid ""
@ -205,6 +263,11 @@ msgid ""
"decisions that have gone into Python. The PEP author is responsible for " "decisions that have gone into Python. The PEP author is responsible for "
"building consensus within the community and documenting dissenting opinions." "building consensus within the community and documenting dissenting opinions."
msgstr "" msgstr ""
"Nous souhaitons que les PEP soient les principaux mécanismes permettant de "
"proposer de nouvelles fonctionnalités, de recueillir les commentaires de la "
"communauté sur un problème et de documenter les décisions de conception "
"prises dans Python. Lauteur du PPE est chargé de créer un consensus au sein "
"de la communauté et de documenter les opinions divergentes."
#: ../Doc/whatsnew/2.0.rst:130 #: ../Doc/whatsnew/2.0.rst:130
msgid "" msgid ""
@ -227,6 +290,10 @@ msgid ""
"instead of the 8-bit number used by ASCII, meaning that 65,536 distinct " "instead of the 8-bit number used by ASCII, meaning that 65,536 distinct "
"characters can be supported." "characters can be supported."
msgstr "" msgstr ""
"La plus grande nouveauté de Python 2.0 est un nouveau type de données "
"fondamental: les chaînes Unicode. Unicode utilise des nombres à 16 bits pour "
"représenter des caractères au lieu du nombre à 8 bits utilisé par ASCII, ce "
"qui signifie que 65 536 caractères distincts peuvent être pris en charge."
#: ../Doc/whatsnew/2.0.rst:148 #: ../Doc/whatsnew/2.0.rst:148
msgid "" msgid ""
@ -237,6 +304,13 @@ msgid ""
"was written up as :pep:`100`, \"Python Unicode Integration\". This article " "was written up as :pep:`100`, \"Python Unicode Integration\". This article "
"will simply cover the most significant points about the Unicode interfaces." "will simply cover the most significant points about the Unicode interfaces."
msgstr "" msgstr ""
"La dernière interface de prise en charge Unicode a été mise au point après "
"de nombreuses discussions souvent houleuses sur la liste de diffusion "
"*python-dev*, et principalement implémentée par Marc-André Lemburg, basée "
"sur une implémentation de type chaîne Unicode de Fredrik Lundh. Une "
"explication détaillée de linterface a été écrite ainsi :pep:"
"`100`, \"Intégration Python Unicode\". Cet article couvrira simplement les "
"points les plus significatifs sur les interfaces Unicode."
#: ../Doc/whatsnew/2.0.rst:155 #: ../Doc/whatsnew/2.0.rst:155
msgid "" msgid ""
@ -246,6 +320,13 @@ msgid ""
"The existing ``\\xHHHH`` escape sequence can also be used, and octal escapes " "The existing ``\\xHHHH`` escape sequence can also be used, and octal escapes "
"can be used for characters up to U+01FF, which is represented by ``\\777``." "can be used for characters up to U+01FF, which is represented by ``\\777``."
msgstr "" msgstr ""
"Dans le code source Python, les chaînes Unicode sont écrites sous la forme "
"``u\"string\"``. Les caractères Unicode arbitraires peuvent être écrits en "
"utilisant une nouvelle séquence d'échappement, ``\\uHHHH``, où *HHHH* est un "
"nombre hexadécimal à 4 chiffres de 0000 à FFFF. La séquence d'échappement ``"
"\\xHHHH`` peut également être utilisée, et les échappements octaux peuvent "
"être utilisés pour les caractères allant jusqu'à U+01FF, représenté par ``"
"\\777``."
#: ../Doc/whatsnew/2.0.rst:161 #: ../Doc/whatsnew/2.0.rst:161
msgid "" msgid ""
@ -260,12 +341,27 @@ msgid ""
"installation by calling the ``sys.setdefaultencoding(encoding)`` function in " "installation by calling the ``sys.setdefaultencoding(encoding)`` function in "
"a customized version of :file:`site.py`." "a customized version of :file:`site.py`."
msgstr "" msgstr ""
"Les chaînes Unicode, tout comme les chaînes ordinaires, sont un type de "
"séquence immuable. Ils peuvent être indexés et tranchés, mais pas modifiés "
"en place. Les chaînes Unicode ont une méthode ``encoder([encoding])`` qui "
"renvoie une chaîne de 8 bits dans lencodage souhaité. Les codages sont "
"nommés par des chaînes, telles que ``ascii``, ``utf-8``, "
"``iso-8859-1``, ou autre chose. Une API de codec est définie pour "
"limplémentation et lenregistrement de nouveaux codages disponibles dans "
"tout un programme Python. Si aucun codage nest spécifié, le codage par "
"défaut est généralement du code ASCII 7-bits, bien quil puisse être modifié "
"pour votre installation Python en appelant la fonction ``sys."
"setdefaultencoding (encoding)`` dans une version personnalisée de :file:"
"`site.py`."
#: ../Doc/whatsnew/2.0.rst:172 #: ../Doc/whatsnew/2.0.rst:172
msgid "" msgid ""
"Combining 8-bit and Unicode strings always coerces to Unicode, using the " "Combining 8-bit and Unicode strings always coerces to Unicode, using the "
"default ASCII encoding; the result of ``'a' + u'bc'`` is ``u'abc'``." "default ASCII encoding; the result of ``'a' + u'bc'`` is ``u'abc'``."
msgstr "" msgstr ""
"La combinaison de chaînes 8 bits et Unicode est toujours forcée en Unicode, "
"à laide du codage ASCII par défaut; le résultat de ``a + ubc`` est "
"``uabc``."
#: ../Doc/whatsnew/2.0.rst:175 #: ../Doc/whatsnew/2.0.rst:175
msgid "" msgid ""
@ -301,6 +397,14 @@ msgid ""
"errors to be silently ignored and ``'replace'`` uses U+FFFD, the official " "errors to be silently ignored and ``'replace'`` uses U+FFFD, the official "
"replacement character, in case of any problems." "replacement character, in case of any problems."
msgstr "" msgstr ""
"``unicode(string [, encoding] [, errors] )`` crée une chaîne Unicode à "
"partir dune chaîne de 8 bits. ``encoding`` est une chaîne nommant le codage "
"à utiliser. Le paramètre ``errors`` spécifie le traitement des caractères "
"non valides pour l encodage en cours; en passant ``strict`` comme valeur, "
"une exception est générée pour toute erreur de codage, alors que "
"``ignore`` fait en sorte que les erreurs soient ignorées en silence et que "
"``replace`` utilise U+FFFD, caractère de remplacement officiel, en cas de "
"problème."
#: ../Doc/whatsnew/2.0.rst:192 #: ../Doc/whatsnew/2.0.rst:192
msgid "" msgid ""
@ -310,6 +414,12 @@ msgid ""
"built-ins; if you find a built-in function that accepts strings but doesn't " "built-ins; if you find a built-in function that accepts strings but doesn't "
"accept Unicode strings at all, please report it as a bug.)" "accept Unicode strings at all, please report it as a bug.)"
msgstr "" msgstr ""
"Linstruction ``exec`` et divers éléments intégrés tels que ``eval()``, "
"``getattr()`` et ``setattr()`` accepteront également les chaînes Unicode "
"ainsi que les chaînes ordinaires. (Il est possible que le processus de "
"résolution de ce problème ait échappé à certaines fonctions intégrées ; si "
"vous trouvez une fonction intégrée qui accepte les chaînes mais naccepte "
"pas les chaînes Unicode, signalez-la comme un bogue.)"
#: ../Doc/whatsnew/2.0.rst:198 #: ../Doc/whatsnew/2.0.rst:198
msgid "" msgid ""
@ -319,6 +429,12 @@ msgid ""
"it's uppercase. ``unicodedata.bidirectional(u'\\u0660')`` returns 'AN', " "it's uppercase. ``unicodedata.bidirectional(u'\\u0660')`` returns 'AN', "
"meaning that U+0660 is an Arabic number." "meaning that U+0660 is an Arabic number."
msgstr "" msgstr ""
"Un nouveau module, :mod:`unicodedata`, fournit une interface aux propriétés "
"de caractère Unicode. Par exemple, ``unicodedata.category(u'A')`` renvoie la "
"chaîne de 2 caractères « Lu », le « L » désignant une lettre et « u » "
"signifiant quil sagit dune majuscule. ``unicodedata."
"bidirectional(u'\\u0660')`` renvoie « AN », ce qui signifie que U+0660 est "
"un nombre arabe."
#: ../Doc/whatsnew/2.0.rst:204 #: ../Doc/whatsnew/2.0.rst:204
msgid "" msgid ""
@ -327,6 +443,11 @@ msgid ""
"most often use the ``codecs.lookup(encoding)`` function, which returns a 4-" "most often use the ``codecs.lookup(encoding)`` function, which returns a 4-"
"element tuple: ``(encode_func, decode_func, stream_reader, stream_writer)``." "element tuple: ``(encode_func, decode_func, stream_reader, stream_writer)``."
msgstr "" msgstr ""
"Le module :mod:`codecs` contient des fonctions pour rechercher les codages "
"existants et en enregistrer de nouveaux. À moins que vous ne souhaitiez "
"implémenter un nouvel encodage, vous utiliserez le plus souvent la fonction "
"``codecs.lookup(encoding)``, qui renvoie un n-uplet à 4 éléments : "
"``(encode_func, decode_func, stream_reader, stream_writer)``."
#: ../Doc/whatsnew/2.0.rst:209 #: ../Doc/whatsnew/2.0.rst:209
msgid "" msgid ""
@ -336,6 +457,11 @@ msgid ""
"encoding, and *length* tells you how much of the Unicode string was " "encoding, and *length* tells you how much of the Unicode string was "
"converted." "converted."
msgstr "" msgstr ""
"*encode_func* est une fonction qui prend une chaîne Unicode, et renvoie un n-"
"uplet de longueur 2 ``(string, length)``. *string* est une chaîne de "
"caractères à 8 bits contenant une partie (ou la totalité) de la chaîne "
"Unicode convertie en codage donné, et *length* vous indique le nombre de "
"caractères de la chaîne qui ont été convertis."
#: ../Doc/whatsnew/2.0.rst:214 #: ../Doc/whatsnew/2.0.rst:214
msgid "" msgid ""
@ -344,6 +470,11 @@ msgid ""
"Unicode string *ustring* and the integer *length* telling how much of the 8-" "Unicode string *ustring* and the integer *length* telling how much of the 8-"
"bit string was consumed." "bit string was consumed."
msgstr "" msgstr ""
"*decode_func* est lopposé de *encode_func*, en prenant une chaîne de "
"caractères à 8 bits et le retour dun n-uplet de longueur 2 ``(ustring, "
"longueur)``, composé de la chaîne Unicode résultante *ustring* et lentier "
"*length* indiquant combien de caractères de la chaîne de caractères à 8 bits "
"ont été consommés."
#: ../Doc/whatsnew/2.0.rst:219 #: ../Doc/whatsnew/2.0.rst:219
msgid "" msgid ""
@ -352,6 +483,11 @@ msgid ""
"meth:`readline`, and :meth:`readlines` methods. These methods will all " "meth:`readline`, and :meth:`readlines` methods. These methods will all "
"translate from the given encoding and return Unicode strings." "translate from the given encoding and return Unicode strings."
msgstr "" msgstr ""
"*stream_reader* est une classe qui prend en charge le décodage de lentrée "
"dun flux. *stream_reader(file_obj)* renvoie un objet qui prend en charge "
"les méthodes :meth:`read`, :meth:`readline` et :meth:`readlines`. Ces "
"méthodes se traduisent toutes à partir de lencodage donné et retourneront "
"une chaînes de caractère Unicode."
#: ../Doc/whatsnew/2.0.rst:224 #: ../Doc/whatsnew/2.0.rst:224
msgid "" msgid ""
@ -360,6 +496,11 @@ msgid ""
"`write` and :meth:`writelines` methods. These methods expect Unicode " "`write` and :meth:`writelines` methods. These methods expect Unicode "
"strings, translating them to the given encoding on output." "strings, translating them to the given encoding on output."
msgstr "" msgstr ""
"De même, *stream_writer* est une classe qui prend en charge le codage de "
"sortie dun flux. *stream_writer(file_obj)* renvoie un objet qui prend en "
"charge les méthodes :meth:`write` et :meth:`writelines`. Ces méthodes "
"prennent en entrée des chaînes Unicode, qu'elles renvoient, traduites à "
"l'encodage donné, sur la sortie."
#: ../Doc/whatsnew/2.0.rst:229 #: ../Doc/whatsnew/2.0.rst:229
msgid "" msgid ""
@ -391,6 +532,12 @@ msgid ""
"future version of Python may drop support for 8-bit strings and provide only " "future version of Python may drop support for 8-bit strings and provide only "
"Unicode strings." "Unicode strings."
msgstr "" msgstr ""
"Une option de ligne de commande ``-U`` a été ajoutée, ce qui fait que le "
"compilateur Python interprète toutes les chaînes de caractères comme des "
"chaînes de caractères Unicode. Ceci est destiné à être utilisé dans les "
"tests et rendre votre code Python compatible avec les versions futures, car "
"une version future de Python peut abandonner la prise en charge des chaînes "
"de caractères 8-bits et fournir uniquement des chaînes de caractères Unicode."
#: ../Doc/whatsnew/2.0.rst:262 #: ../Doc/whatsnew/2.0.rst:262
msgid "List Comprehensions" msgid "List Comprehensions"
@ -405,6 +552,13 @@ msgid ""
"might want to pull out all the strings containing a given substring, or " "might want to pull out all the strings containing a given substring, or "
"strip off trailing whitespace from each line." "strip off trailing whitespace from each line."
msgstr "" msgstr ""
"Les listes sont un type de données crucial dans Python, et de nombreux "
"programmes manipulent une liste à un moment donné. Deux opérations communes "
"sur les listes sont de boucler sur elles, soit de choisir les éléments qui "
"répondent à un certain critère, ou dappliquer une certaine fonction à "
"chaque élément. Par exemple, à partir dune liste de chaînes de caractères, "
"vous pouvez retirer toutes les chaînes contenant une sous-chaîne donnée, ou "
"enlever les espaces de chaque ligne."
#: ../Doc/whatsnew/2.0.rst:271 #: ../Doc/whatsnew/2.0.rst:271
msgid "" msgid ""
@ -417,6 +571,15 @@ msgid ""
"paragraph, finding all the strings in the list containing a given " "paragraph, finding all the strings in the list containing a given "
"substring. You could write the following to do it::" "substring. You could write the following to do it::"
msgstr "" msgstr ""
"Les fonctions existantes :func:`map` et :func:`filter` peuvent être "
"utilisées à cette fin, mais elles nécessitent une fonction en leurs "
"arguments. Cest très bien sil y a une fonction intégrée existante qui "
"peut être passé directement, mais sil ny a pas, vous devez créer une "
"petite fonction pour faire le travail requis, et les règles de portée de "
"Python rendent le résultat laid si la petite fonction a besoin "
"dinformations supplémentaires. Prenons le premier exemple du paragraphe "
"précédent, en trouvant toutes les chaînes de la liste contenant une sous-"
"chaîne donnée. Vous pouvez écrire ce qui suit pour le faire::"
#: ../Doc/whatsnew/2.0.rst:286 #: ../Doc/whatsnew/2.0.rst:286
msgid "" msgid ""
@ -424,6 +587,10 @@ msgid ""
"anonymous function created by the :keyword:`lambda` expression knows what " "anonymous function created by the :keyword:`lambda` expression knows what "
"substring is being searched for. List comprehensions make this cleaner::" "substring is being searched for. List comprehensions make this cleaner::"
msgstr "" msgstr ""
"En raison des règles de portée de Python, un argument par défaut est utilisé "
"de sorte que la fonction anonyme créée par lexpression :keyword:`lambda` "
"sait quelle sous-chaîne est recherchée. Les listes en compréhension rendent "
"ceci plus propre :"
#: ../Doc/whatsnew/2.0.rst:292 #: ../Doc/whatsnew/2.0.rst:292
msgid "List comprehensions have the form::" msgid "List comprehensions have the form::"
@ -439,6 +606,13 @@ msgid ""
"keyword:`!if` clause is optional; if present, *expression* is only evaluated " "keyword:`!if` clause is optional; if present, *expression* is only evaluated "
"and added to the result if *condition* is true." "and added to the result if *condition* is true."
msgstr "" msgstr ""
"Le :keyword:`!for`…\\ :keyword:`!in` clauses contiennent les séquences à "
"itérer. Les séquences nont pas à être de la même longueur, parce quelles "
"ne sont *pas* itérées en parallèle, mais de gauche à droite; cela est "
"expliqué plus clairement dans les paragraphes suivants. Les éléments de la "
"liste générée seront les valeurs successives de lexpression. La clause "
"finale :keyword:`!if` clause est facultative ; si présent, l*expression* "
"nest évaluée et ajoutée au résultat que si la *condition* est vraie."
#: ../Doc/whatsnew/2.0.rst:307 #: ../Doc/whatsnew/2.0.rst:307
msgid "" msgid ""
@ -455,6 +629,10 @@ msgid ""
"all the sequences. If you have two lists of length 3, the output list is 9 " "all the sequences. If you have two lists of length 3, the output list is 9 "
"elements long::" "elements long::"
msgstr "" msgstr ""
"Cela signifie que lorsquil y a plusieurs :keyword:`!for`…\\ :keyword:`!in` "
"clauses, la liste résultante sera égale au produit des longueurs de toutes "
"les séquences. Si vous avez deux listes de longueur 3, la liste de sortie "
"est de longueur 9::"
#: ../Doc/whatsnew/2.0.rst:330 #: ../Doc/whatsnew/2.0.rst:330
msgid "" msgid ""
@ -462,6 +640,10 @@ msgid ""
"creating a tuple, it must be surrounded with parentheses. The first list " "creating a tuple, it must be surrounded with parentheses. The first list "
"comprehension below is a syntax error, while the second one is correct::" "comprehension below is a syntax error, while the second one is correct::"
msgstr "" msgstr ""
"Afin de ne pas introduire une ambiguïté dans la grammaire de Python, "
"*expression* doit être encadrée par des parenthèses si elle produit un n-"
"uplet. La première compréhension de liste ci-dessous n'est pas valide "
"syntaxiquement, tandis que la seconde l'est ::"
#: ../Doc/whatsnew/2.0.rst:339 #: ../Doc/whatsnew/2.0.rst:339
msgid "" msgid ""
@ -471,10 +653,16 @@ msgid ""
"comprehension patch, which was then discussed for a seemingly endless time " "comprehension patch, which was then discussed for a seemingly endless time "
"on the python-dev mailing list and kept up-to-date by Skip Montanaro." "on the python-dev mailing list and kept up-to-date by Skip Montanaro."
msgstr "" msgstr ""
"Le concept des liste en compréhension provient à lorigine du langage de "
"programmation fonctionnelle Haskell (https://www.haskell.org). Greg Ewing a "
"plaidé le plus efficacement pour les ajouter à Python et a écrit le patch de "
"compréhension de liste initiale, qui a ensuite été discuté pendant un temps "
"apparemment sans fin sur la liste de diffusion *python-dev* et maintenu à "
"jour par Skip Montanaro."
#: ../Doc/whatsnew/2.0.rst:349 #: ../Doc/whatsnew/2.0.rst:349
msgid "Augmented Assignment" msgid "Augmented Assignment"
msgstr "" msgstr "Opérateurs daffectation augmentées"
#: ../Doc/whatsnew/2.0.rst:351 #: ../Doc/whatsnew/2.0.rst:351
msgid "" msgid ""
@ -484,6 +672,11 @@ msgid ""
"value of the variable ``a`` by 2, equivalent to the slightly lengthier ``a " "value of the variable ``a`` by 2, equivalent to the slightly lengthier ``a "
"= a + 2``." "= a + 2``."
msgstr "" msgstr ""
"Les opérateurs daffectation soudées, une autre fonctionnalité demandée "
"depuis longtemps, ont été ajoutés à Python 2.0. Les opérateurs "
"daffectations augmentées comprennent ``+=``, ``-=``, ``*=`` et ainsi de "
"suite. Par exemple, linstruction ``a += 2`` incrémente la valeur de la "
"variable ``a`` par 2, équivalente à lopération ``a = a + 2`` ."
#: ../Doc/whatsnew/2.0.rst:356 #: ../Doc/whatsnew/2.0.rst:356
msgid "" msgid ""
@ -494,6 +687,13 @@ msgid ""
"following :class:`Number` class stores a number and supports using += to " "following :class:`Number` class stores a number and supports using += to "
"create a new instance with an incremented value." "create a new instance with an incremented value."
msgstr "" msgstr ""
"La liste complète des opérateurs daffectations pris en charge est ``+=``, "
"``-=``, ``*=``, ``/=``, ``%=``, ``**=``, ``&=``, ``|=``, ``^=``, ``>>=``, et "
"``<<=``. Les classes Python peuvent remplacer les opérateurs daffectations "
"augmentées en définissant des méthodes nommées :meth:`__iadd__`, :meth:"
"`__isub__`, etc. Par exemple, la classe :class:`Number` stocke un nombre et "
"prend en charge lutilisation de += en créant une nouvelle instance avec une "
"valeur incrémentée."
#: ../Doc/whatsnew/2.0.rst:377 #: ../Doc/whatsnew/2.0.rst:377
msgid "" msgid ""
@ -502,6 +702,10 @@ msgid ""
"value; this return value is bound as the new value of the variable on the " "value; this return value is bound as the new value of the variable on the "
"left-hand side." "left-hand side."
msgstr "" msgstr ""
"La méthode spéciale :meth:`__iadd__` est appelée avec la valeur de "
"lincrément, et doit renvoyer une nouvelle instance avec une valeur "
"correctement modifiée ; cette valeur de rendement est liée comme la nouvelle "
"valeur de la variable sur le côté gauche."
#: ../Doc/whatsnew/2.0.rst:381 #: ../Doc/whatsnew/2.0.rst:381
msgid "" msgid ""

View File

@ -882,7 +882,7 @@ msgstr ""
#: ../Doc/whatsnew/2.6.rst:817 #: ../Doc/whatsnew/2.6.rst:817
msgid "``e``" msgid "``e``"
msgstr "" msgstr "``e``"
#: ../Doc/whatsnew/2.6.rst:817 #: ../Doc/whatsnew/2.6.rst:817
msgid "" msgid ""

View File

@ -1956,7 +1956,7 @@ msgstr ""
#: ../Doc/whatsnew/2.7.rst:1752 #: ../Doc/whatsnew/2.7.rst:1752
msgid "Here are some examples::" msgid "Here are some examples::"
msgstr "" msgstr "Voici quelques exemples :"
#: ../Doc/whatsnew/2.7.rst:1763 #: ../Doc/whatsnew/2.7.rst:1763
msgid "" msgid ""

View File

@ -2729,7 +2729,7 @@ msgstr ""
#: ../Doc/whatsnew/3.2.rst:2432 #: ../Doc/whatsnew/3.2.rst:2432
msgid "Codecs" msgid "Codecs"
msgstr "" msgstr "Codecs"
#: ../Doc/whatsnew/3.2.rst:2434 #: ../Doc/whatsnew/3.2.rst:2434
msgid "Support was added for *cp720* Arabic DOS encoding (:issue:`1616979`)." msgid "Support was added for *cp720* Arabic DOS encoding (:issue:`1616979`)."

View File

@ -31,7 +31,7 @@ msgstr ""
#: ../Doc/whatsnew/3.3.rst:55 #: ../Doc/whatsnew/3.3.rst:55
msgid "Summary -- Release highlights" msgid "Summary -- Release highlights"
msgstr "" msgstr "Résumé Points forts de la publication"
#: ../Doc/whatsnew/3.3.rst:60 #: ../Doc/whatsnew/3.3.rst:60
msgid "New syntax features:" msgid "New syntax features:"
@ -215,7 +215,7 @@ msgstr ""
#: ../Doc/whatsnew/3.3.rst:161 ../Doc/whatsnew/3.3.rst:1122 #: ../Doc/whatsnew/3.3.rst:161 ../Doc/whatsnew/3.3.rst:1122
msgid "Features" msgid "Features"
msgstr "" msgstr "Caractéristiques"
#: ../Doc/whatsnew/3.3.rst:163 #: ../Doc/whatsnew/3.3.rst:163
msgid "" msgid ""

View File

@ -40,7 +40,7 @@ msgstr ""
#: ../Doc/whatsnew/3.5.rst:58 #: ../Doc/whatsnew/3.5.rst:58
msgid "Summary -- Release highlights" msgid "Summary -- Release highlights"
msgstr "" msgstr "Résumé Points forts de la publication"
#: ../Doc/whatsnew/3.5.rst:60 #: ../Doc/whatsnew/3.5.rst:60
msgid "New syntax features:" msgid "New syntax features:"

View File

@ -40,7 +40,7 @@ msgstr ""
#: ../Doc/whatsnew/3.6.rst:58 #: ../Doc/whatsnew/3.6.rst:58
msgid "Summary -- Release highlights" msgid "Summary -- Release highlights"
msgstr "" msgstr "Résumé Points forts de la publication"
#: ../Doc/whatsnew/3.6.rst:60 #: ../Doc/whatsnew/3.6.rst:60
msgid "New syntax features:" msgid "New syntax features:"

View File

@ -20,7 +20,7 @@ msgstr ""
#: ../Doc/whatsnew/3.7.rst:0 #: ../Doc/whatsnew/3.7.rst:0
msgid "Editor" msgid "Editor"
msgstr "" msgstr "Rédacteur"
#: ../Doc/whatsnew/3.7.rst:5 #: ../Doc/whatsnew/3.7.rst:5
msgid "Elvis Pranskevichus <elvis@magic.io>" msgid "Elvis Pranskevichus <elvis@magic.io>"