diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index 86002f86..835e69a9 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -1,5 +1,5 @@ -Guide de contribution à la documentation via GitHub -################################################### +Guide de contribution à la documentation +######################################## Prérequis ========= @@ -104,6 +104,10 @@ ce qui suit après vous être assuré que ``~/.local/bin/`` se trouve dans votre chmod a+x ~/.local/bin/podiff +Allez ensuite dans le répertoire du dépôt récupéré (``python-docs-fr``) et faites : + +.. code-block:: bash + git config diff.podiff.textconv podiff @@ -192,7 +196,7 @@ Vous pouvez commencer par des tâches faciles comme réviser les entrées de ``make fuzzy``). Une entrée *fuzzy* correspond à une entrée déjà traduite mais dont la source en anglais a été modifiée depuis (correction orthographique, changement d'un terme, ajout ou suppression d'une phrase…). Elles sont -généralement plus « faciles » à traduire. +généralement plus « faciles » à traduire. Vous pouvez également relire des entrées déjà traduites pour vous faire une idée, et passer ensuite à la traduction de celles qui ne le sont pas encore. @@ -215,12 +219,12 @@ Réserver le fichier Une fois que vous avez choisi un fichier sur lequel travailler vous pouvez nous le signaler par différents moyens : -* Soit en ouvrant un `ticket sur Github `_ +* Soit en ouvrant un `ticket sur Gitea `_ en indiquant dans le titre ``Je travaille sur DOSSIER/FICHIER.po`` (par exemple « Je travaille sur library/sys.po »). -Ceci permet à `potodo`_ de détecter via l'API Github les fichiers ``.po`` réservés -dans les tickets et les *pull requests*. +Ceci permet à `potodo`_ de détecter via l'API Gitea les fichiers ``.po`` réservés +dans les tickets et les demandes d'ajout. * Soit en créant un sujet sur le `discuss de l'AFPy `_ dans la section Traduction @@ -252,7 +256,7 @@ fichier sur lequel on travaille. Par exemple, si vous travaillez sur .. code-block:: bash - git checkout -b library-sys upstream/3.11 + git switch -c library-sys upstream/3.11 @@ -300,7 +304,7 @@ compilation ne devrait pas échouer. make -Vérifiez alors le rendu de la traduction « en vrai ». Lancez un serveur de +Vérifiez alors le rendu de la traduction « en vrai ». Lancez un serveur de documentation local : .. code-block:: bash @@ -317,14 +321,14 @@ Vous pouvez recommencer les étapes de cette section autant de fois que nécessaire. Poedit donne beaucoup d'avertissements, par exemple pour vous informer que -« la traduction devrait commencer par une majuscule » car c'est le cas pour +« la traduction devrait commencer par une majuscule » car c'est le cas pour la source. Ces avertissements ne sont pas tous fondés. En cas de doute, *affichez et relisez la page HTML produite* avec ``make htmlview``. Quatrième étape : publier sa traduction ======================================= -Une fois que le *make verifs* ne lève pas d'erreur et que vous êtes certains de bien respecter les +Une fois que le ``make verifs`` ne lève pas d'erreur et que vous êtes certains de bien respecter les `Conventions`_ de traduction, vient le moment d'envoyer votre travail sur le dépôt local. * ``git add`` place nos modifications dans l'index de Git en attendant @@ -343,34 +347,35 @@ Une fois que le *make verifs* ne lève pas d'erreur et que vous êtes certains d -Poussez ensuite vos modifications sur votre *fork* avec ``git push``. +Poussez ensuite vos modifications sur votre bifurcation (*fork*) avec ``git push``. Le ``-u`` n'est utile qu'une fois pour que votre client git se souvienne que cette -branche est liée à votre *fork* (et donc que vos futurs ``git pull`` et +branche est liée à votre bifurcation (et donc que vos futurs ``git pull`` et ``git push`` sachent quoi tirer). .. code-block:: bash git push --set-upstream origin -Sur Github ----------- +Sur Gitea +--------- -La commande précédente vous affiche un lien pour ouvrir une *pull request* sur -Github. Si vous l'avez manqué, allez simplement sur https://github.com/python/python-docs-fr/pulls -et un joli bouton « Compare & pull request » devrait apparaître au bout de -quelques secondes vous indiquant que vous pouvez demander une *pull request*. +La commande précédente vous affiche un lien pour ouvrir une demande d'ajout sur +Gitea. Si vous l'avez manqué, allez simplement sur +https://git.afpy.org/AFPy/python-docs-fr/pulls et cliquez +sur le bouton « Nouvelle demande d'ajout ». -Mettez dans le commentaire de la *pull request* le texte suivant : -« Closes #XXXX » où XXXX est le numéro du ticket GitHub créé pour réserver le fichier traduit. -Cela permet à Github de lier la *pull request* au ticket de réservation. +Mettez dans le commentaire de la demande d'ajout le texte suivant : +« Closes #XXXX » où XXXX est le numéro du ticket Gitea créé pour réserver le +fichier traduit. Cela permet à Gitea de lier la demande d'ajout au ticket de +réservation. -Il peut arriver que vous ayez besoin de reprendre votre PR sur votre -ordinateur après avoir fait des modifications en ligne sur GitHub, -par exemple lorsque GitHub vous offre la possibilité de faire un commit +Il peut arriver que vous ayez besoin de reprendre votre demande d'ajout sur votre +ordinateur après avoir fait des modifications en ligne sur Gitea, +par exemple lorsque Gitea vous offre la possibilité de faire un commit automatique contenant les suggestions proposées pendant la revue. Cela fonctionne bien, mais le résultat n'est pas toujours accepté par ``powrap``. Si cela arrive, vous pouvez récupérer le commit fait par -GitHub puis relancer ``powrap`` : +Gitea puis relancer ``powrap`` : .. code-block:: bash @@ -380,50 +385,16 @@ GitHub puis relancer ``powrap`` : git commit -m "Formatage après commit automatique" git push -Sur une autre forge -------------------- - -Quand vous avez poussé vos modifications, il y a plusieurs possibilités. - -Soit vous signalez via le `discuss de l'AFPy `_ ou sur IRC que -vous avez traduit une section. Nous viendrons récupérer les modifications pour les intégrer -sur Github. - -Soit en créant un *`bundle `_* Git, -pour cela, il faut créer un fichier contenant les différentes modifications effectuées. - -.. code-block:: bash - - git bundle create .bundle .. - -Puis nous partager ce *bundle* sur le `discuss de l'AFPy `_ pour pouvoir l'intégrer. - - -À partir de là, quelqu'un passera en revue vos modifications, et vous fera des -suggestions et corrections. Pour les prendre en compte, retournez sur votre branche -contenant le fichier concerné (au cas où vous auriez commencé quelque chose d'autre -sur une autre branche) : - -.. code-block:: bash - - git checkout library-sys - git pull # pour rapatrier les modifications que vous auriez acceptées - # sur l'interface web. - - # Réglez les problèmes, puis commitez à nouveau : - git commit --all --message "prise en compte des remarques" - git push - Vous avez peut-être remarqué que cela ressemble à un triangle, avec un -segment manquant : +segment manquant : -- vous récupérez depuis *upstream* (le dépôt commun public sur Github) ; -- vous poussez sur *origin* (votre clone sur Github). +- vous récupérez depuis *upstream* (le dépôt commun public sur Gitea) ; +- vous poussez sur *origin* (votre clone sur Gitea). C'est le travail de quelqu'un d'autre d'ajouter le dernier segment, de votre *origin* au *upstream* public, pour « boucler la boucle ». C'est le -rôle des personnes qui *fusionnent* les *pull requests* après les avoir relues. +rôle des personnes qui fusionnent les demandes d'ajout après les avoir relues. Vous avez peut-être aussi remarqué que vous n'avez jamais commité sur une branche de version (3.9, 3.10, etc.), seulement récupéré les @@ -585,6 +556,7 @@ bytecode code intermédiaire callback fonction de rappel call stack pile d'appels caught (exception) interceptée +code points points de code daemon *daemon* debugging débogage deep copy copie récursive (préféré), ou copie profonde @@ -842,7 +814,7 @@ En novembre 2022, le dépôt de cette traduction a migré de GitHub à une instance de Gitea hébergée par l'AFPy. Si vous contribuiez auparavant sur GitHub, voici comment s'y prendre pour la migration : -- Suivez le guide `plus haut `_ pour faire une copie (*fork*) +- Suivez le guide `plus haut `_ pour faire une bifurcation (*fork*) du dépôt sur Gitea. De manière facultative mais recommandée, ajoutez votre clé SSH à votre profil Gitea comme expliqué ci-dessus (vous aviez probablement une clé sur GitHub, auquel cas il suffit de diff --git a/Makefile b/Makefile index 786ba9ea..1357145a 100644 --- a/Makefile +++ b/Makefile @@ -124,7 +124,7 @@ htmlview: all .PHONY: todo todo: ensure_prerequisites - potodo --exclude venv .venv $(EXCLUDED) + potodo --api-url 'https://git.afpy.org/api/v1/repos/AFPy/python-docs-fr/issues?state=open&type=issues' --exclude venv .venv $(EXCLUDED) .PHONY: wrap wrap: ensure_prerequisites @@ -155,7 +155,7 @@ $(POSPELL_TMP_DIR)/%.po.out: %.po dict .PHONY: fuzzy fuzzy: ensure_prerequisites - potodo -f --exclude venv .venv $(EXCLUDED) + potodo --only-fuzzy --api-url 'https://git.afpy.org/api/v1/repos/AFPy/python-docs-fr/issues?state=open&type=issues' --exclude venv .venv $(EXCLUDED) .PHONY: check-headers check-headers: diff --git a/README.rst b/README.rst index a54b0d4e..08b93ba7 100644 --- a/README.rst +++ b/README.rst @@ -61,7 +61,7 @@ vous signifiez votre acceptation de cet accord. Historique du projet -------------------- -- vers 2000 : `lancement du projet `_ ; +- vers 2000 : lancement du projet ; - vers 2012 : `reprise `_ par l'`AFPy `_ ; - 2016 : 15 % de la documentation traduite ; - 2017 : le projet devient traduction officielle de la documentation Python par la `PEP 545 `_ ; diff --git a/about.po b/about.po index b8f9ecf1..ff315c89 100644 --- a/about.po +++ b/about.po @@ -6,13 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-07-08 17:54+0200\n" +"PO-Revision-Date: 2023-02-16 12:02+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.2.2\n" #: about.rst:3 msgid "About these documents" @@ -52,12 +53,11 @@ msgstr "" "et rédacteur de la plupart de son contenu ;" #: about.rst:24 -#, fuzzy msgid "" "the `Docutils `_ project for creating " "reStructuredText and the Docutils suite;" msgstr "" -"le projet `Docutils `_ pour avoir créé " +"le projet `Docutils `_ pour avoir créé " "*reStructuredText* et la suite d'outils *Docutils* ;" #: about.rst:26 diff --git a/c-api/function.po b/c-api/function.po index 3b6b017e..e8143157 100644 --- a/c-api/function.po +++ b/c-api/function.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-03-23 18:39+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"PO-Revision-Date: 2023-02-20 13:11+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -16,15 +16,15 @@ msgstr "" #: c-api/function.rst:6 msgid "Function Objects" -msgstr "Objets fonctions" +msgstr "Objets fonction" #: c-api/function.rst:10 msgid "There are a few functions specific to Python functions." -msgstr "" +msgstr "Certaines fonctions sont spécifiques aux fonctions Python." #: c-api/function.rst:15 msgid "The C structure used for functions." -msgstr "" +msgstr "La structure C utilisée pour les fonctions." #: c-api/function.rst:22 msgid "" @@ -32,6 +32,8 @@ msgid "" "function type. It is exposed to Python programmers as ``types." "FunctionType``." msgstr "" +"C'est une instance de :c:type:`PyTypeObject` et représente le type fonction " +"en Python. Il est exposé aux développeurs comme ``types.FunctionType``." #: c-api/function.rst:28 msgid "" @@ -39,6 +41,9 @@ msgid "" "`PyFunction_Type`). The parameter must not be ``NULL``. This function " "always succeeds." msgstr "" +"Renvoie vrai si *o* est un objet de type fonction (a comme type :c:data:" +"`PyFunction_Type`). Le paramètre ne doit pas être ``NULL``. Cette fonction " +"réussit toujours." #: c-api/function.rst:34 msgid "" @@ -46,6 +51,8 @@ msgid "" "*globals* must be a dictionary with the global variables accessible to the " "function." msgstr "" +"Renvoie une nouvelle fonction associée avec l'objet *code*. *globals* doit " +"être un dictionnaire avec les variables globales accessibles à la fonction." #: c-api/function.rst:37 msgid "" @@ -54,6 +61,10 @@ msgid "" "and closure are set to ``NULL``. *__qualname__* is set to the same value as " "the code object's ``co_qualname`` field." msgstr "" +"La *docstring* et le nom de la fonction sont récupérés à partir de l'objet " +"code. *__module__* est récupéré à partir de *globals*. Les arguments par " +"défaut, les annotations et la fermeture sont mis à ``NULL``. *__qualname__* " +"est mis à la même valeur que celle du champ ``co_qualname`` de l'objet code." #: c-api/function.rst:45 msgid "" @@ -62,63 +73,85 @@ msgid "" "``NULL``; if ``NULL``, the ``__qualname__`` attribute is set to the same " "value as the code object's ``co_qualname`` field." msgstr "" +"Comme :c:func:`PyFunction_New`, mais accepte aussi une valeur à utiliser " +"pour l'attribut ``__qualname__`` de l'objet fonction. *qualname* doit être " +"un objet Unicode ou ``NULL``; s'il est ``NULL``, l'attribut ``__qualname__`` " +"de l'objet fonction prend la valeur de l'attribut ``co_qualname`` de l'objet " +"code." #: c-api/function.rst:55 msgid "Return the code object associated with the function object *op*." -msgstr "" +msgstr "Renvoie l'objet code associé avec l'objet de la fonction *op*." #: c-api/function.rst:60 msgid "Return the globals dictionary associated with the function object *op*." msgstr "" +"Renvoie le dictionnaire global associé avec l'objet de la fonction *op*." #: c-api/function.rst:65 msgid "" "Return a :term:`borrowed reference` to the *__module__* attribute of the " "function object *op*. It can be *NULL*." msgstr "" +"Renvoie un :term:`borrowed reference` à l'attribut ``__module__`` de l'objet " +"fonction *op*. Il peut être *NULL*." #: c-api/function.rst:68 msgid "" "This is normally a string containing the module name, but can be set to any " "other object by Python code." msgstr "" +"C'est typiquement une chaîne de caractère contenant le nom du module, mais " +"il peut être changé par du code Python pour n'importe quel autre objet." #: c-api/function.rst:74 msgid "" "Return the argument default values of the function object *op*. This can be " "a tuple of arguments or ``NULL``." msgstr "" +"Renvoie les valeurs par défaut de l'argument de l'objet de la fonction *op*. " +"Cela peut être un tuple d'arguments ou ``NULL``." #: c-api/function.rst:80 msgid "" "Set the argument default values for the function object *op*. *defaults* " "must be ``Py_None`` or a tuple." msgstr "" +"Définir les valeurs par défaut de l'argument pour l'objet de la fonction " +"*op*. *defaults* doit être ``Py_None`` ou un tuple." #: c-api/function.rst:97 c-api/function.rst:111 msgid "Raises :exc:`SystemError` and returns ``-1`` on failure." -msgstr "" +msgstr "Lève :exc:`SystemError` et renvoie ``-1`` en cas de d'échec." #: c-api/function.rst:88 msgid "" "Return the closure associated with the function object *op*. This can be " "``NULL`` or a tuple of cell objects." msgstr "" +"Renvoie la fermeture associée avec l'objet de la fonction *op*. Cela peut " +"être ``NULL`` ou un tuple d'objets cellule." #: c-api/function.rst:94 msgid "" "Set the closure associated with the function object *op*. *closure* must be " "``Py_None`` or a tuple of cell objects." msgstr "" +"Définir la fermeture associée avec l'objet de la fonction *op*. *closure* " +"doit être ``Py_None`` ou un tuple d'objets cellule." #: c-api/function.rst:102 msgid "" "Return the annotations of the function object *op*. This can be a mutable " "dictionary or ``NULL``." msgstr "" +"Renvoie les annotations de l'objet de la fonction *op*. Cela peut être un " +"dictionnaire mutable ou ``NULL``." #: c-api/function.rst:108 msgid "" "Set the annotations for the function object *op*. *annotations* must be a " "dictionary or ``Py_None``." msgstr "" +"Définir les annotations pour l'objet de la fonction *op*. *annotations* doit " +"être un dictionnaire ou ``Py_None``." diff --git a/c-api/refcounting.po b/c-api/refcounting.po index 91751cf3..cd456dd9 100644 --- a/c-api/refcounting.po +++ b/c-api/refcounting.po @@ -6,8 +6,8 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-05-22 23:13+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2023-02-17 12:00+0200\n" +"Last-Translator: Rémi Lapeyre \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" @@ -15,18 +15,19 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: c-api/refcounting.rst:8 -msgid "Reference Counting" +msgid "Comptage de références" msgstr "" #: c-api/refcounting.rst:10 msgid "" "The macros in this section are used for managing reference counts of Python " "objects." -msgstr "" +msgstr "Les macros dans cette section permettent de gérer le compteur de références " +"des objets Python." #: c-api/refcounting.rst:16 msgid "Increment the reference count for object *o*." -msgstr "" +msgstr "Incrémente le compteur de références de l'object *o*." #: c-api/refcounting.rst:18 msgid "" @@ -34,82 +35,101 @@ msgid "" "term:`strong reference` in-place. The :c:func:`Py_NewRef` function can be " "used to create a new :term:`strong reference`." msgstr "" +"Cette fonction est souvent utilisée pour convertir une :term:`référence empruntée` " +"en une :term:`référence forte` *sur place*. La fonction :c:func:`Py_NewRef` peut être " +"utilisée pour créer une nouvelle :term:`référence forte`." #: c-api/refcounting.rst:22 msgid "" "The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, " "use :c:func:`Py_XINCREF`." msgstr "" +"L'object ne doit pas être ``NULL``, la fonction :c:func:`Py_XINCREF` doit être " +"utilisée s'il est possible qu'il soit ``NULL``." #: c-api/refcounting.rst:28 msgid "" "Increment the reference count for object *o*. The object may be ``NULL``, " "in which case the macro has no effect." msgstr "" +"Incrémente le compteur de références de l'objet *o*. La macro n'a pas d'effet " +"si l'objet est ``NULL``." #: c-api/refcounting.rst:31 msgid "See also :c:func:`Py_XNewRef`." -msgstr "" +msgstr "Voir aussi :c:func:`Py_XNewRef`." #: c-api/refcounting.rst:36 msgid "" "Create a new :term:`strong reference` to an object: increment the reference " "count of the object *o* and return the object *o*." msgstr "" +"Créer une nouvelle :term:`référence forte` d'un objet : incrémente le compteur de " +"référence de l'objet *o* and renvoie l'objet *o*." #: c-api/refcounting.rst:39 msgid "" "When the :term:`strong reference` is no longer needed, :c:func:`Py_DECREF` " "should be called on it to decrement the object reference count." msgstr "" +":c:func:`Py_DECREF` doit être appelée quand la :term:`référence forte` n'est " +"plus utilisée pour décrémenter le compteur de références de l'objet." #: c-api/refcounting.rst:42 msgid "" "The object *o* must not be ``NULL``; use :c:func:`Py_XNewRef` if *o* can be " "``NULL``." msgstr "" +"L'objet *o* ne doit pas être ``NULL`` et la fonction :c:func:`Py_XNewRef` doit être " +"utilisée si *o* peut être ``NULL``." #: c-api/refcounting.rst:45 msgid "For example::" -msgstr "" +msgstr "Par exemple ::" #: c-api/refcounting.rst:50 msgid "can be written as::" -msgstr "" +msgstr "peut être écrit ::" #: c-api/refcounting.rst:54 msgid "See also :c:func:`Py_INCREF`." -msgstr "" +msgstr "Voir aussi :c:func:`Py_INCREF`." #: c-api/refcounting.rst:61 msgid "Similar to :c:func:`Py_NewRef`, but the object *o* can be NULL." -msgstr "" +msgstr "Semblable à :c:func:`Py_NewRef` mais l'objet *o* peut être ``NULL``." #: c-api/refcounting.rst:63 msgid "If the object *o* is ``NULL``, the function just returns ``NULL``." -msgstr "" +msgstr "Cette fonction renvoie ``NULL`` si l'objet *o* est ``NULL``." #: c-api/refcounting.rst:70 msgid "Decrement the reference count for object *o*." -msgstr "" +msgstr "Décrémente le compteur de références de l'objet *o*." #: c-api/refcounting.rst:72 msgid "" "If the reference count reaches zero, the object's type's deallocation " "function (which must not be ``NULL``) is invoked." msgstr "" +"Si le compteur de références atteint zéro, la fonction de dés-allocation du " +"type de l'objet (qui ne doit pas être ``NULL``) est invoquée." #: c-api/refcounting.rst:75 msgid "" "This function is usually used to delete a :term:`strong reference` before " "exiting its scope." msgstr "" +"Cette fonction est généralement utilisée pour supprimer une :term:`référence forte` " +"avant qu'elle ne soit plus accessible." #: c-api/refcounting.rst:78 msgid "" "The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, " "use :c:func:`Py_XDECREF`." msgstr "" +"L'objet en argument ne doit pas être ``NULL``. :c:func:`Py_XDECREF` doit être " +"utilisée si l'objet peut être ``NULL``." #: c-api/refcounting.rst:83 msgid "" @@ -123,6 +143,15 @@ msgid "" "update the list data structure, and then call :c:func:`Py_DECREF` for the " "temporary variable." msgstr "" +"La fonction de dés-allocation peut invoquer du code Python arbitraire (par " +"exemple quand une instance d'une classe avec une méthode :meth:`__del__` est " +"supprimée). Le code exécuté a accès à toutes les variables Python globales mais " +"les exceptions lors de l'exécution de ce code ne sont pas propagées. Tous les " +"objets qui peuvent être atteints à partir d'une variable globale doivent être " +"dans un état cohérent avant d'appeler :c:func:`Py_DECREF`. Par exemple le code " +"pour supprimer un élément d'une liste doit copier une référence à l'objet dans " +"une variable temporaire, mettre à jour la liste, et enfin appeler :c:func:`Py_DECREF` " +"avec la variable temporaire." #: c-api/refcounting.rst:95 msgid "" @@ -130,6 +159,9 @@ msgid "" "in which case the macro has no effect; otherwise the effect is the same as " "for :c:func:`Py_DECREF`, and the same warning applies." msgstr "" +"Décrémente le compteur de références de l'objet *o*. L'objet peut être ``NULL``, " +"dans ce cas la macro n'a pas d'effet. Dans le cas contraire le comportement " +"est identique à :c:func:`Py_DECREF` et les mêmes avertissements sont de rigueur." #: c-api/refcounting.rst:102 msgid "" @@ -140,24 +172,39 @@ msgid "" "object passed because the macro carefully uses a temporary variable and sets " "the argument to ``NULL`` before decrementing its reference count." msgstr "" +"Décrémente le competeur de références de l'objet *o*. L'objet peut être ``NULL``, " +"dans ce cas la macro n'a pas d'effet. Dans le cas contraire le comportement est " +"identique à :c:func:`Py_DECREF`, puis l'argument est mis à ``NULL``. " +"L'avertissement au sujet de l'objet passé en argument à :c:func:`Py_DECREF` " +"ne s'applique pas car la macro utilise une variable temporaire et met l'objet " +"à ``NULL`` avant de décrémenter le compteur de références." + #: c-api/refcounting.rst:109 msgid "" "It is a good idea to use this macro whenever decrementing the reference " "count of an object that might be traversed during garbage collection." msgstr "" +"Il est recommandé d'utiliser cette macro lorsqu'on décrémente le compteur de " +"référence d'un objet qui peut être parcouru par le ramasse-miette." #: c-api/refcounting.rst:114 msgid "" "Increment the reference count for object *o*. A function version of :c:func:" "`Py_XINCREF`. It can be used for runtime dynamic embedding of Python." msgstr "" +"Incrémente le compteur de références de l'objet *o*. C'est la version " +"fonctionnelle de :c:func:`Py_XINCREF`. Elle peut être utilisé lorsque Python " +"est embarqué dynamiquement dans une application." #: c-api/refcounting.rst:120 msgid "" "Decrement the reference count for object *o*. A function version of :c:func:" "`Py_XDECREF`. It can be used for runtime dynamic embedding of Python." msgstr "" +"Décrémente le compteur de références de l'objet *o*. C'est la version " +"fonctionnelle de :c:func:`Py_XDECREF`. Elle peut être utilisée lorsque Python " +"est embarqué dynamiquement dans une application." #: c-api/refcounting.rst:124 msgid "" @@ -165,3 +212,7 @@ msgid "" "core: :c:func:`_Py_Dealloc`, :c:func:`_Py_ForgetReference`, :c:func:" "`_Py_NewReference`, as well as the global variable :c:data:`_Py_RefTotal`." msgstr "" +"Les fonctions ou macros suivantes doivent être uniquement utilisées au sein de " +"l'interpréteur et ne font pas partie de l'API publique : :c:func:`_Py_Dealloc`, " +":c:func:`_Py_ForgetReference`, :c:func:`_Py_NewReference`, ainsi que la variable " +"globale :c:data:`_Py_RefTotal`." diff --git a/c-api/stable.po b/c-api/stable.po index 0e0c2607..a790ddbf 100644 --- a/c-api/stable.po +++ b/c-api/stable.po @@ -6,20 +6,20 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-09-23 16:16+0200\n" -"PO-Revision-Date: 2018-10-04 12:26+0200\n" -"Last-Translator: Julien Palard \n" +"PO-Revision-Date: 2023-02-17 17:33+0100\n" +"Last-Translator: Rémi Lapeyre \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.2.2\n" #: c-api/stable.rst:7 msgid "C API Stability" -msgstr "" +msgstr "Stabilité de l’API C" #: c-api/stable.rst:9 -#, fuzzy msgid "" "Python's C API is covered by the Backwards Compatibility Policy, :pep:`387`. " "While the C API will change with every minor release (e.g. from 3.9 to " @@ -27,10 +27,12 @@ msgid "" "API. Changing existing API or removing API is only done after a deprecation " "period or to fix serious issues." msgstr "" -"L'API C de Python change à chaque version. La majorité de ces changement " -"n'affecte cependant pas la compatibilité du code source. Typiquement, des " -"API sont ajoutées, mais ni modifiées ni supprimées (bien que certaines " -"interfaces puissent être supprimées, après avoir d'abord été dépréciées)." +"L'API C respecte la politique de rétrocompatibilité de Python, :pep:`387`. " +"Malgré la présence d’évolutions dans chaque version mineure (par exemple " +"entre 3.9 et 3.10), la majorité de ces changement n'affecte pas la " +"compatibilité du code source. Typiquement des APIs sont ajoutées mais pas " +"modifiées ou supprimées, bien que cela puisse arriver après une période de " +"dépréciation ou pour corriger un problème important." #: c-api/stable.rst:15 msgid "" @@ -40,16 +42,24 @@ msgid "" "work on 3.10.8 and vice versa, but will need to be compiled separately for " "3.9.x and 3.10.x." msgstr "" +"L’interface binaire de CPython (ABI) est entièrement compatible au sein " +"d’une version mineure (à condition que la compilation soit toujours faite de " +"même manière, comme indiqué dans :ref:`stable-abi-platform` ci-dessous). " +"Ainsi le code compilé pour Python 3.10.0 fonctionnera avec Python 3.10.8 et " +"inversement, mais il devra être compilé séparément pour 3.9.x et 3.10.x." #: c-api/stable.rst:21 msgid "" "Names prefixed by an underscore, such as ``_Py_InternalState``, are private " "API that can change without notice even in patch releases." msgstr "" +"Les noms commençant par un caractère souligné, comme ``_Py_InternalState``, " +"font partie de l’API privée et peuvent changer sans préavis même dans une " +"version de correctif." #: c-api/stable.rst:26 msgid "Stable Application Binary Interface" -msgstr "ABI Stable" +msgstr "ABI stable" #: c-api/stable.rst:28 msgid "" @@ -58,6 +68,11 @@ msgid "" "multiple versions of Python. Contents of the Limited API are :ref:`listed " "below `." msgstr "" +"Le concept d’*API restreinte*, un sous-ensemble de l’API C de Python, existe " +"depuis Python 3.2. Les extensions qui utilisent uniquement l’API restreinte " +"peuvent être compilées une seule fois et fonctionner avec plusieurs versions " +"de Python. Les objets faisant partie de l’API restreinte sont :ref:`documentés " +"ci-dessous `." #: c-api/stable.rst:33 msgid "" @@ -66,6 +81,11 @@ msgid "" "symbols exposed in the Limited API, but also other ones – for example, " "functions necessary to support older versions of the Limited API." msgstr "" +"Python a aussi une *ABI stable* : un ensemble de symboles qui sont " +"compatibles avec l’ensemble des versions Python 3.x. L’ABI stable contient " +"les symboles utilisés par l’API restreinte, mais pas seulement — par exemple " +"les fonctions nécessaires pour supporter les versions précédentes de l’API " +"restreinte en font aussi partie." #: c-api/stable.rst:38 msgid "" @@ -73,12 +93,17 @@ msgid "" "and Stable ABI work the same way for all uses of the API – for example, " "embedding Python.)" msgstr "" +"(Par simplicité ce document parle *d’extensions*, mais l’API restreinte et " +"l’ABI stable fonctionnent de la même manière pour tous les cas d’usages de " +"l’API — par exemple pour embarquer Python.)" #: c-api/stable.rst:44 msgid "" "Define this macro before including ``Python.h`` to opt in to only use the " "Limited API, and to select the Limited API version." msgstr "" +"Définissez cette macro avant d’inclure ``Python.h`` pour n’inclure que l’API " +"restreinte et indiquer sa version." #: c-api/stable.rst:47 msgid "" @@ -88,6 +113,11 @@ msgid "" "the specified one onward, and can use Limited API introduced up to that " "version." msgstr "" +"Définissez ``Py_LIMITED_API`` à la valeur de :c:data:`PY_VERSION_HEX` " +"correspond à la version minimale de Python que votre extension supporte. " +"Cette extension fonctionnera sans re-compilation avec toutes les versions " +"futures de Python 3, et peut utiliser l’ensemble des éléments de l’API " +"restreinte présent dans cette version." #: c-api/stable.rst:53 msgid "" @@ -95,12 +125,19 @@ msgid "" "minor version (e.g. ``0x030A0000`` for Python 3.10) for stability when " "compiling with future Python versions." msgstr "" +"Il est recommandé de renseigner une version mineure minimale (par exemple " +"``0x030A0000`` pour Python 3.10) plutôt que d’utiliser directement la macro " +"``PY_VERSION_HEX`` pour ne pas dépendre de la version de Python utilisée " +"lors de la compilation." #: c-api/stable.rst:57 msgid "" "You can also define ``Py_LIMITED_API`` to ``3``. This works the same as " "``0x03020000`` (Python 3.2, the version that introduced Limited API)." msgstr "" +"Vous pouvez aussi définir ``Py_LIMITED_API`` à ``3``. Cette valeur est " +"équivalente à ``0x03020000`` correspondant à Python 3.2, la première version " +"à supporter l’API restreinte." #: c-api/stable.rst:60 msgid "" @@ -108,6 +145,9 @@ msgid "" "``python3.dll`` rather than a version-specific library such as ``python39." "dll``." msgstr "" +"Sur Windows les extensions qui utilisent l’ABI stable doivent être liées " +"avec ``python3.dll`` et non pas avec une bibliothèque spécifique à une " +"version comme ``python39.dll``." #: c-api/stable.rst:64 msgid "" @@ -117,6 +157,12 @@ msgid "" "to ensure that, for example, extensions built with the 3.10+ Limited API are " "not installed for lower versions of Python." msgstr "" +"Sur certaines plateformes Python essaiera de charger une bibliothèque " +"partagée dont le nom contient ``abi3`` (par exemple ``mymodule.abi3.so``). " +"Il ne vérifie pas si ces extensions respectent l’ABI stable. L’utilisateur " +"(ou ses outils d’administration) doit s’assurer que les extensions compilées " +"avec une version donnée de l’API restreinte, par exemple 3.10+, ne sont pas " +"utilisées avec des versions plus anciennes de Python." #: c-api/stable.rst:71 msgid "" @@ -124,16 +170,23 @@ msgid "" "library, not solely as macros. This makes them usable from languages that " "don't use the C preprocessor." msgstr "" +"Toutes les fonctions de l’ABI stable sont présentes dans la bibliothèque " +"dynamique de Python en tant que fonction, et pas uniquement comme macro. " +"Elles peuvent donc être utilisées avec des langages qui n’utilisent pas le " +"pré-processeur C." #: c-api/stable.rst:77 msgid "Limited API Scope and Performance" -msgstr "" +msgstr "Porté de l’API restreinte et performance" #: c-api/stable.rst:79 msgid "" "The goal for the Limited API is to allow everything that is possible with " "the full C API, but possibly with a performance penalty." msgstr "" +"L’objectif de l’API restreinte est de permettre l’ensemble des opérations " +"possibles avec l’API C étendue, mais peut avoir un impact sur les " +"performances." #: c-api/stable.rst:82 msgid "" @@ -141,6 +194,10 @@ msgid "" "variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it " "can rely on version-specific implementation details of the list object." msgstr "" +"Par exemple la fonction :c:func:`PyList_GetItem` est disponible, mais la " +"macro « dangereuse » :c:func:`PyList_GET_ITEM` ne l’est pas. Cette macro " +"peut être plus rapide car elle dépend de détails d’implémentation spécifique " +"à l’objet ``list``." #: c-api/stable.rst:87 msgid "" @@ -149,6 +206,11 @@ msgid "" "allowing stability as Python's data structures are improved, but possibly " "reducing performance." msgstr "" +"Si ``Py_LIMITED_API`` n’est pas défini certaines fonctions de l’API C seront " +"remplacées par des macros ou une version en-ligne. Définir " +"``Py_LIMITED_API`` désactive cette optimisation, permettant de se garantir " +"contre les évolutions des structures de données utilisées par Python, et " +"peut réduire les performances." #: c-api/stable.rst:92 msgid "" @@ -159,10 +221,17 @@ msgid "" "where a version-specific one is not available – for example, for prereleases " "of an upcoming Python version." msgstr "" +"En omettant la définition de ``Py_LIMITED_API`` il est possible de compiler " +"une extension utilisant l’API restreinte avec une version spécifique de l’ABI. " +"Les performances seront meilleures pour cette version de Python, mais la " +"compatibilité sera réduite. Compiler en définissant ``Py_LIMITED_API`` " +"produira une extension qui peut être utilisée quand une variante spécifique " +"à une version n’est pas disponible — par exemple pour une version alpha de " +"Python." #: c-api/stable.rst:101 msgid "Limited API Caveats" -msgstr "" +msgstr "Inconvénients de l’API restreinte" #: c-api/stable.rst:103 msgid "" @@ -171,6 +240,10 @@ msgid "" "only covers definitions, but an API also includes other issues, such as " "expected semantics." msgstr "" +"Compiler avec ``Py_LIMITED_API`` *n’est pas* une garantie absolue que le " +"code est conforme à l’API restreinte ou à l’ABI stable. ``Py_LIMITED_API`` ne " +"concerne que la définition des objets, mais une API inclut aussi d’autres " +"spécificités comme le comportement attendu." #: c-api/stable.rst:108 msgid "" @@ -181,18 +254,31 @@ msgid "" "the argument will be used directly, causing a ``NULL`` dereference and " "crash. A similar argument works for fields of structs." msgstr "" +"Une des limitations est que ``Py_LIMITED_API`` ne protège pas contre l’appel " +"d’une fonction avec des arguments qui sont invalides pour une version de " +"Python plus ancienne. Par exemple considérons une fonction qui accepte " +"``NULL`` comme argument à partir de 3.9. ``NULL`` permet maintenant " +"d’utiliser le comportement par défaut, mais Python 3.8 essayera d’accéder à " +"l’objet pointé et dé-référencera ``NULL``, causant un crash. Des problèmes " +"similaires peuvent se produire avec les attributs des structures." #: c-api/stable.rst:115 msgid "" "Another issue is that some struct fields are currently not hidden when " "``Py_LIMITED_API`` is defined, even though they're part of the Limited API." msgstr "" +"Un autre problème est que certains attributs ne sont pas encore cachés " +"lorsque ``Py_LIMITED_API`` est défini, même s’il ne font pas partie de l’API " +"restreinte." #: c-api/stable.rst:118 msgid "" "For these reasons, we recommend testing an extension with *all* minor Python " "versions it supports, and preferably to build with the *lowest* such version." msgstr "" +"Pour ces raisons il est recommandé de tester une extension avec *l’ensemble " +"des versions mineures* supportées de Python, et généralement de la compiler " +"avec la plus *ancienne* de ces versions." #: c-api/stable.rst:121 msgid "" @@ -201,6 +287,10 @@ msgid "" "few private declarations are exposed for technical reasons (or even " "unintentionally, as bugs)." msgstr "" +"Il est aussi recommandé de vérifier la documentation de toutes les API " +"utilisées pour vérifier qu’elles fassent bien partie de l’API restreinte. Même " +"lorsque ``Py_LIMITED_API`` est défini quelques fonctions privées peuvent " +"être exposées aux utilisateurs pour des raisons techniques, ou par erreur." #: c-api/stable.rst:126 msgid "" @@ -210,10 +300,15 @@ msgid "" "particular, parts of the Limited API may be deprecated and removed, provided " "that the Stable ABI stays stable." msgstr "" +"Notez aussi que l’API restreinte n’est pas forcément stable : compiler avec " +"Python 3.8 en définissant ``Py_LIMITED_API`` garanti que l’extension " +"fonctionnera avec Python 3.12, mais pas qu’elle pourra *être compilée* avec " +"Python 3.12. En particulier certaines parties de l’API restreinte peuvent être " +"dépréciées et retirées tant que l’ABI stable n’est pas modifiée." #: c-api/stable.rst:136 msgid "Platform Considerations" -msgstr "" +msgstr "Considérations relatives aux plateformes" #: c-api/stable.rst:138 msgid "" @@ -222,6 +317,11 @@ msgid "" "ABI, these details define a “platform”. They usually depend on the OS type " "and processor architecture" msgstr "" +"La stabilité de l’ABI ne dépend pas que de Python mais aussi du compilateur " +"utilisé, des bibliothèques systèmes et des options du compilateur. " +"L’ensemble de ces détails correspondent à ce que l’ABI stable appelle une " +"« plateforme ». Ils dépendent généralement du système d’exploitation et de " +"l’architecture du processeur." #: c-api/stable.rst:143 msgid "" @@ -230,76 +330,16 @@ msgid "" "does not break the Stable ABI. This is the case with Windows and macOS " "releases from ``python.org`` and many third-party distributors." msgstr "" +"Les distributeurs de Python doivent s’assurer que toutes les versions de " +"Python pour une plateforme donnée sont compilées de manière à ne pas rompre " +"la compatibilité de l’ABI stable. C’est le cas des versions produites pour " +"Windows et macOS de ``python.org`` et de la plupart des distributions " +"tierces." #: c-api/stable.rst:153 msgid "Contents of Limited API" -msgstr "" +msgstr "Contenu de l’API restreinte" #: c-api/stable.rst:156 msgid "Currently, the Limited API includes the following items:" -msgstr "" - -#~ msgid "" -#~ "Unfortunately, the API compatibility does not extend to binary " -#~ "compatibility (the ABI). The reason is primarily the evolution of struct " -#~ "definitions, where addition of a new field, or changing the type of a " -#~ "field, might not break the API, but can break the ABI. As a consequence, " -#~ "extension modules need to be recompiled for every Python release " -#~ "(although an exception is possible on Unix when none of the affected " -#~ "interfaces are used). In addition, on Windows, extension modules link " -#~ "with a specific pythonXY.dll and need to be recompiled to link with a " -#~ "newer one." -#~ msgstr "" -#~ "Malheureusement, la compatibilité de l'API ne s'étend pas à une " -#~ "compatibilité binaire (l'ABI). L'évolution des structures en est la " -#~ "raison principale : l'ajout de nouveaux attributs, ou le changement du " -#~ "type d'un attribut peut ne pas casser l'API mais casser l'ABI. Par " -#~ "conséquent, les modules d'extension doivent être recompilés à chaque " -#~ "nouvelle version de Python (ce n'est exceptionnellement pas nécessaire " -#~ "sur Unix, si aucune des interfaces modifiées n'est utilisée). De plus, " -#~ "sous Windows, les modules d'extension sont liés à un *pythonXY.dll* " -#~ "spécifique, ils est donc nécessaire de les recompiler pour les lier au " -#~ "nouveau DLL." - -#~ msgid "" -#~ "Since Python 3.2, a subset of the API has been declared to guarantee a " -#~ "stable ABI. Extension modules wishing to use this API (called \"limited " -#~ "API\") need to define ``Py_LIMITED_API``. A number of interpreter details " -#~ "then become hidden from the extension module; in return, a module is " -#~ "built that works on any 3.x version (x>=2) without recompilation." -#~ msgstr "" -#~ "Depuis Python 3.2 il est garanti qu'une certaine partie de l'API gardera " -#~ "une ABI stable. Les modules d'extension souhaitant utiliser cette API " -#~ "(Appellée \"API limitée\") doivent définir ``Py_LIMITED_API``. Des " -#~ "spécificités de l'interpréteur sont alors cachées au module, en " -#~ "contrepartie le module devient compatible avec toutes les versions de " -#~ "Python 3.x (x>=2) sans recompilation." - -#~ msgid "" -#~ "In some cases, the stable ABI needs to be extended with new functions. " -#~ "Extension modules wishing to use these new APIs need to set " -#~ "``Py_LIMITED_API`` to the ``PY_VERSION_HEX`` value (see :ref:" -#~ "`apiabiversion`) of the minimum Python version they want to support (e.g. " -#~ "``0x03030000`` for Python 3.3). Such modules will work on all subsequent " -#~ "Python releases, but fail to load (because of missing symbols) on the " -#~ "older releases." -#~ msgstr "" -#~ "Dans certains cas, il est nécessaire d'étendre l'ABI stable avec de " -#~ "nouvelles fonctions. Les modules d'extension souhaitant utiliser ces " -#~ "nouvelles APIs doivent configurer ``Py_LIMITED_API`` à la valeur " -#~ "``Py_VERSION_HEX`` correspondant à la plus ancienne version de Python " -#~ "qu'ils souhaitent supporter (voir :ref:`apiabiversion`, par exemple " -#~ "``0x03030000`` pour Python 3.3). De tels modules fonctionneront dans " -#~ "toutes les versions ultérieures de Python, mais ne pourront pas se " -#~ "charger (dû à des symboles manquants) sur les versions plus anciennes." - -#~ msgid "" -#~ "As of Python 3.2, the set of functions available to the limited API is " -#~ "documented in :pep:`384`. In the C API documentation, API elements that " -#~ "are not part of the limited API are marked as \"Not part of the limited " -#~ "API.\"" -#~ msgstr "" -#~ "Depuis Python 3.2, l'ensemble des fonctions exposées par l'API limitée " -#~ "est documentée dans la :pep:`384`. Dans la documentation de l'API C, les " -#~ "éléments ne faisant pas partie de l'API limitée sont notés \"Ne faisant " -#~ "pas partie de l'API limitée\" (*\"Not part of the limited API\"*)." +msgstr "Pour le moment l’API restreinte inclut les éléments suivants :" diff --git a/c-api/unicode.po b/c-api/unicode.po index aebcb7bd..7738b71d 100644 --- a/c-api/unicode.po +++ b/c-api/unicode.po @@ -6,8 +6,8 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2018-10-04 12:27+0200\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2023-02-20 12:47+0100\n" +"Last-Translator: Victor Stinner \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" @@ -16,11 +16,11 @@ msgstr "" #: c-api/unicode.rst:6 msgid "Unicode Objects and Codecs" -msgstr "" +msgstr "Objets Unicode et Codecs" #: c-api/unicode.rst:12 msgid "Unicode Objects" -msgstr "" +msgstr "Objets Unicode" #: c-api/unicode.rst:14 msgid "" @@ -31,6 +31,12 @@ msgid "" "65536; otherwise, code points must be below 1114112 (which is the full " "Unicode range)." msgstr "" +"Depuis l'implémentation de :pep:`393` dans Python 3.3, les objets Unicode " +"utilisent une variété de représentations internes, pour permettre de gérer " +"l'intervalle complet des caractères Unicode en restant efficace en termes de " +"mémoire. Il y a des cas spéciaux pour les chaînes où tous les points de code " +"sont inférieurs à 128, 256, ou 65536 ; sinon, les points de code doivent " +"être inférieurs à 1114112 (qui est l'intervalle Unicode complet)." #: c-api/unicode.rst:20 msgid "" @@ -38,12 +44,18 @@ msgid "" "cached in the Unicode object. The :c:expr:`Py_UNICODE*` representation is " "deprecated and inefficient." msgstr "" +"Des représentations :c:expr:`Py_UNICODE*` et UTF-8 sont créées à la demande " +"et mises en cache dans l'objet Unicode. La représentation :c:expr:" +"`Py_UNICODE*` est dépréciée et inefficace." #: c-api/unicode.rst:24 msgid "" "Due to the transition between the old APIs and the new APIs, Unicode objects " "can internally be in two states depending on how they were created:" msgstr "" +"En raison de la transition des anciennes APIs vers les nouvelles APIs, les " +"objets Unicode peuvent être dans deux états internes selon comment ils ont " +"été créés :" #: c-api/unicode.rst:27 msgid "" @@ -51,6 +63,9 @@ msgid "" "Unicode API. They use the most efficient representation allowed by the " "implementation." msgstr "" +"Les objets Unicode « canoniques » sont tous les objets créés par une API " +"Unicode non-dépréciée. Ils utilisent la représentation la plus efficace " +"permise par l'implémentation." #: c-api/unicode.rst:31 msgid "" @@ -59,6 +74,10 @@ msgid "" "`Py_UNICODE*` representation; you will have to call :c:func:" "`PyUnicode_READY` on them before calling any other API." msgstr "" +"Les objets Unicode « historiques » ont été créés via une des APIs dépréciées " +"(typiquement :c:func:`PyUnicode_FromUnicode`) et supportent uniquement la " +"représentation :c:expr:`Py_UNICODE*`; vous devrez appeler :c:func:" +"`PyUnicode_READY` sur eux avant d'appeler n'importe quelle autre API." #: c-api/unicode.rst:37 msgid "" @@ -66,16 +85,21 @@ msgid "" "APIs. All Unicode objects will be \"canonical\" since then. See :pep:`623` " "for more information." msgstr "" +"Les objets Unicode « historiques » vont être supprimés de Python 3.12 avec " +"les APIs dépréciées. Tous les objets Unicode vont être « canoniques » à " +"partir de là. Voir :pep:`623` pour plus d'information." #: c-api/unicode.rst:43 msgid "Unicode Type" -msgstr "" +msgstr "Type Unicode" #: c-api/unicode.rst:45 msgid "" "These are the basic Unicode object types used for the Unicode implementation " "in Python:" msgstr "" +"Voici les types d'objets Unicode utilisés pour l'implémentation Unicode en " +"Python :" #: c-api/unicode.rst:52 msgid "" @@ -83,12 +107,17 @@ msgid "" "characters of 32 bits, 16 bits and 8 bits, respectively. When dealing with " "single Unicode characters, use :c:type:`Py_UCS4`." msgstr "" +"Voici les *typedefs* pour les types entiers non signés suffisamment large " +"pour contenir des caractères de 32 bits, 16 bits et 8 bits, respectivement. " +"Pour traiter des caractères uniques, utilisez :c:type:`Py_UCS4`." #: c-api/unicode.rst:61 msgid "" "This is a typedef of :c:expr:`wchar_t`, which is a 16-bit type or 32-bit " "type depending on the platform." msgstr "" +"Ceci est un *typedef* de :c:expr:`wchar_t`, qui est un type 16-bit ou un " +"type 32-bit selon la plateforme." #: c-api/unicode.rst:64 msgid "" @@ -96,6 +125,9 @@ msgid "" "whether you selected a \"narrow\" or \"wide\" Unicode version of Python at " "build time." msgstr "" +"Dans les versions précédentes, ceci était un type 16-bit ou un type 32-bit " +"selon que vous choisissiez une version Unicode *narrow* ou *wide* de Python " +"à la compilation." #: c-api/unicode.rst:74 msgid "" diff --git a/extending/embedding.po b/extending/embedding.po index 04d0ac1e..28f1c095 100644 --- a/extending/embedding.po +++ b/extending/embedding.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2019-12-25 17:24+0100\n" +"PO-Revision-Date: 2023-02-16 16:53+0100\n" "Last-Translator: Antoine \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.0.6\n" +"X-Generator: Poedit 2.3\n" #: extending/embedding.rst:8 msgid "Embedding Python in Another Application" @@ -421,13 +421,12 @@ msgstr "" "compiler :" #: extending/embedding.rst:304 -#, fuzzy msgid "" "``pythonX.Y-config --ldflags --embed`` will give you the recommended flags " "when linking:" msgstr "" -"``pythonX.Y-config --ldflags`` vous donnera les drapeaux recommandés lors de " -"l'édition de lien :" +"``pythonX.Y-config --ldflags --embed`` vous donnera les drapeaux recommandés " +"lors de l'édition de lien :" #: extending/embedding.rst:313 msgid "" diff --git a/howto/annotations.po b/howto/annotations.po index d93d3b7b..b9b7cdfe 100644 --- a/howto/annotations.po +++ b/howto/annotations.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-05-12 09:43+0200\n" -"Last-Translator: ZepmanBC \n" +"PO-Revision-Date: 2023-02-17 10:44+0100\n" +"Last-Translator: CédricM \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.0.1\n" +"X-Generator: Poedit 3.2.2\n" #: howto/annotations.rst:5 msgid "Annotations Best Practices" @@ -132,6 +132,11 @@ msgid "" "parent's ``__annotations__``. In Python 3.10 and newer, the child class's " "annotations will be an empty dict instead." msgstr "" +"Dans les versions antérieures à Python 3.10, l'accès aux ``__annotations__`` " +"d'une classe qui n'a pas d'annotation mais dont un parent de cette classe en " +"a, aurait renvoyé les ``__annotations__`` de la classe parent. Dans les " +"versions 3.10 et plus récentes, le résultat d'annotations de la classe " +"enfant est un dictionnaire vide." #: howto/annotations.rst:68 msgid "Accessing The Annotations Dict Of An Object In Python 3.9 And Older" diff --git a/howto/sockets.po b/howto/sockets.po index 73398592..16ebf7c9 100644 --- a/howto/sockets.po +++ b/howto/sockets.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-10-18 12:27+0200\n" +"PO-Revision-Date: 2023-02-16 15:07+0100\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.0\n" +"X-Generator: Poedit 3.2.2\n" #: howto/sockets.rst:5 msgid "Socket Programming HOWTO" @@ -481,7 +481,6 @@ msgid "" msgstr "" #: howto/sockets.rst:262 -#, fuzzy msgid "" "Socket libraries have calls for converting 16 and 32 bit integers - ``ntohl, " "htonl, ntohs, htons`` where \"n\" means *network* and \"h\" means *host*, " @@ -489,21 +488,14 @@ msgid "" "order, these do nothing, but where the machine is byte-reversed, these swap " "the bytes around appropriately." msgstr "" -"Il est parfaitement possible d’envoyer des données binaires sur un " -"connecteur. Le gros problème est que toutes les machines n’utilisent 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 l’ordre d’octets 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 l’ordre du " -"réseau est l’ordre de l’hôte, ceux-ci ne font rien, mais lorsque la machine " -"utilise l’ordre d’octets inverse, ceux-ci échangent les octets de manière " -"appropriée." +"Les bibliothèques de sockets ont des appels pour convertir les entiers 16 et " +"32 bits - ``ntohl, htonl, ntohs, htons`` où « n » signifie *network* " +"(réseau) et « h » signifie *host* (hôte), « s » signifie *short* (court) et " +"« l » signifie *long*. Lorsque l’ordre du réseau est l’ordre de l’hôte, ils " +"ne font rien, mais lorsque la machine fonctionne en ordre inversé, ils " +"échangent les octets de manière appropriée." #: howto/sockets.rst:268 -#, fuzzy msgid "" "In these days of 64-bit machines, the ASCII representation of binary data is " "frequently smaller than the binary representation. That's because a " @@ -512,13 +504,13 @@ msgid "" "be 8. Of course, this doesn't fit well with fixed-length messages. " "Decisions, decisions." msgstr "" -"De nos jours, avec les machines 32 bits, la représentation *ASCII* des " +"De nos jours, avec les machines 64 bits, la représentation *ASCII* des " "données binaires est souvent plus compacte que la représentation binaire. " -"C’est parce qu’un 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…" +"C’est parce que dans un nombre surprenant de cas, tous ces *entiers* ont la " +"valeur 0 et parfois 1. La chaîne « 0 » serait codée sur deux octets, alors " +"qu'elle le serait sur 8 en tant que binaire 64 bits. Bien sûr, cela ne " +"fonctionne pas très bien avec les messages de longueur fixe. C’est une " +"affaire de choix." #: howto/sockets.rst:277 msgid "Disconnecting" diff --git a/library/argparse.po b/library/argparse.po index 97c87dc9..90ff800a 100644 --- a/library/argparse.po +++ b/library/argparse.po @@ -6,21 +6,21 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-05-30 11:00+0200\n" +"PO-Revision-Date: 2023-02-17 16:38+0100\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.4.2\n" +"X-Generator: Poedit 3.0.1\n" #: library/argparse.rst:2 msgid "" ":mod:`argparse` --- Parser for command-line options, arguments and sub-" "commands" msgstr "" -":mod:`argparse` -- Parseur d'arguments, d'options, et de sous-commandes de " +":mod:`argparse` -- Analyseur d'arguments, d'options, et de sous-commandes de " "ligne de commande" #: library/argparse.rst:12 @@ -42,7 +42,6 @@ msgstr "" "tutoriel argparse `." #: library/argparse.rst:22 -#, fuzzy msgid "" "The :mod:`argparse` module makes it easy to write user-friendly command-line " "interfaces. The program defines what arguments it requires, and :mod:" @@ -56,11 +55,11 @@ msgstr "" "mod:`argparse` s'arrange pour analyser ceux provenant de :data:`sys.argv`. " "Le module :mod:`argparse` génère aussi automatiquement les messages d'aide, " "le mode d'emploi, et lève des erreurs lorsque les utilisateurs fournissent " -"au programme des arguments invalides." +"des arguments invalides." #: library/argparse.rst:30 msgid "Core Functionality" -msgstr "" +msgstr "Fonctionnalité principale" #: library/argparse.rst:32 msgid "" @@ -68,6 +67,9 @@ msgid "" "around an instance of :class:`argparse.ArgumentParser`. It is a container " "for argument specifications and has options that apply the parser as whole::" msgstr "" +"L'interface en ligne de commande du module :mod:`argparse` est basée sur une " +"instance d':class:`argparse.ArgumentParser` sur laquelle les arguments et " +"options de l'analyseur sont déclarés ::" #: library/argparse.rst:41 msgid "" @@ -75,149 +77,151 @@ msgid "" "specifications to the parser. It supports positional arguments, options " "that accept values, and on/off flags::" msgstr "" +"La méthode :meth:`ArgumentParser.add_argument` permet de définir les " +"arguments de l'analyseur. Ceux-ci peuvent être des arguments positionnels, " +"des arguments optionnels ou des drapeaux (qui sont alors traduits en valeurs " +"booléennes). Les arguments ont la possibilité d'être complétés par des " +"valeurs." #: library/argparse.rst:50 msgid "" "The :meth:`ArgumentParser.parse_args` method runs the parser and places the " "extracted data in a :class:`argparse.Namespace` object::" msgstr "" +"La méthode :meth:`ArgumentParser.parse_args` lance l'analyseur et stocke les " +"résultats dans un objet :class:`argparse.Namespace` ::" #: library/argparse.rst:58 msgid "Quick Links for add_argument()" -msgstr "" +msgstr "Référence pour ``add_argument()``" #: library/argparse.rst:61 msgid "Name" -msgstr "" +msgstr "Nom" #: library/argparse.rst:61 -#, fuzzy msgid "Description" -msgstr "Le paramètre *description*" +msgstr "Description" #: library/argparse.rst:61 msgid "Values" -msgstr "" +msgstr "Valeurs" #: library/argparse.rst:63 -#, fuzzy msgid "action_" -msgstr "Le paramètre *action*" +msgstr "action_" #: library/argparse.rst:63 msgid "Specify how an argument should be handled" -msgstr "" +msgstr "Précise la gestion d'un argument" #: library/argparse.rst:63 msgid "" "``'store'``, ``'store_const'``, ``'store_true'``, ``'append'``, " "``'append_const'``, ``'count'``, ``'help'``, ``'version'``" msgstr "" +"``'store'``, ``'store_const'``, ``'store_true'``, ``'append'``, " +"``'append_const'``, ``'count'``, ``'help'``, ``'version'``" #: library/argparse.rst:64 -#, fuzzy msgid "choices_" -msgstr "Le paramètre *choices*" +msgstr "choices_" #: library/argparse.rst:64 msgid "Limit values to a specific set of choices" -msgstr "" +msgstr "Limite le choix à certaines valeurs" #: library/argparse.rst:64 msgid "" "``['foo', 'bar']``, ``range(1, 10)``, or :class:`~collections.abc.Container` " "instance" msgstr "" +"``['foo', 'bar']``, ``range(1, 10)`` ou une instance de :class:" +"`~collections.abc.Container`" #: library/argparse.rst:65 -#, fuzzy msgid "const_" -msgstr "Le paramètre *const*" +msgstr "const_" #: library/argparse.rst:65 msgid "Store a constant value" -msgstr "" +msgstr "Utilise une valeur constante" #: library/argparse.rst:66 -#, fuzzy msgid "default_" -msgstr "Le paramètre *default*" +msgstr "default_" #: library/argparse.rst:66 msgid "Default value used when an argument is not provided" -msgstr "" +msgstr "Valeur à utiliser en l'absence d'un argument" #: library/argparse.rst:66 msgid "Defaults to ``None``" -msgstr "" +msgstr "``None`` par défaut" #: library/argparse.rst:67 -#, fuzzy msgid "dest_" -msgstr "Le paramètre *dest*" +msgstr "dest_" #: library/argparse.rst:67 msgid "Specify the attribute name used in the result namespace" msgstr "" +"Définit le nom de l'attribut à utiliser dans l'espace de nommage résultant" #: library/argparse.rst:68 -#, fuzzy msgid "help_" -msgstr "Le paramètre *help*" +msgstr "help_" #: library/argparse.rst:68 msgid "Help message for an argument" -msgstr "" +msgstr "Message d'aide pour l'argument" #: library/argparse.rst:69 -#, fuzzy msgid "metavar_" -msgstr "Le paramètre *metavar*" +msgstr "metavar_" #: library/argparse.rst:69 msgid "Alternate display name for the argument as shown in help" -msgstr "" +msgstr "Autre nom possible pour l'argument, est affiché dans l'aide" #: library/argparse.rst:70 -#, fuzzy msgid "nargs_" -msgstr "Le paramètre *nargs*" +msgstr "nargs_" #: library/argparse.rst:70 msgid "Number of times the argument can be used" -msgstr "" +msgstr "Précise le nombre de répétitions de l'argument" #: library/argparse.rst:70 msgid ":class:`int`, ``'?'``, ``'*'``, ``'+'``, or ``argparse.REMAINDER``" -msgstr "" +msgstr ":class:`int`, ``'?'``, ``'*'``, ``'+'`` ou ``argparse.REMAINDER``" #: library/argparse.rst:71 -#, fuzzy msgid "required_" -msgstr "Le paramètre *required*" +msgstr "required_" #: library/argparse.rst:71 msgid "Indicate whether an argument is required or optional" -msgstr "" +msgstr "Précise si l'argument est obligatoire ou optionnel" #: library/argparse.rst:71 msgid "``True`` or ``False``" -msgstr "" +msgstr "``True`` ou ``False``" #: library/argparse.rst:72 -#, fuzzy msgid "type_" -msgstr "Le paramètre *type*" +msgstr "type_" #: library/argparse.rst:72 msgid "Automatically convert an argument to the given type" -msgstr "" +msgstr "Conversion automatique vers le type fourni" #: library/argparse.rst:72 msgid "" ":class:`int`, :class:`float`, ``argparse.FileType('w')``, or callable " "function" msgstr "" +":class:`int`, :class:`float`, ``argparse.FileType('w')`` ou une fonction" #: library/argparse.rst:77 msgid "Example" @@ -228,18 +232,17 @@ msgid "" "The following code is a Python program that takes a list of integers and " "produces either the sum or the max::" msgstr "" -"Le code suivant est un programme Python acceptant une liste de nombre " +"Le code suivant est un programme Python acceptant une liste de nombres " "entiers et en donnant soit la somme, soit le maximum ::" #: library/argparse.rst:94 -#, fuzzy msgid "" "Assuming the above Python code is saved into a file called ``prog.py``, it " "can be run at the command line and it provides useful help messages:" msgstr "" -"En supposant que le code Python ci-dessus est sauvegardé dans un fichier " -"nommé ``prog.py``, il peut être lancé en ligne de commande et fournit des " -"messages d'aide utiles :" +"Après avoir sauvegardé le code Python ci-dessus dans un fichier nommé ``prog." +"py``, il peut être lancé en ligne de commande et fournit le message d'aide " +"suivant :" #: library/argparse.rst:111 msgid "" @@ -247,12 +250,11 @@ msgid "" "of the command-line integers:" msgstr "" "Lorsqu'il est lancé avec les arguments appropriés, il affiche la somme ou le " -"maximum des entiers fournis en ligne de commande :" +"maximum des entiers fournis :" #: library/argparse.rst:122 -#, fuzzy msgid "If invalid arguments are passed in, an error will be displayed:" -msgstr "Si des arguments invalides sont passés, il lève une erreur :" +msgstr "Si des arguments invalides sont passés, il affiche une erreur :" #: library/argparse.rst:130 msgid "The following sections walk you through this example." @@ -301,7 +303,6 @@ msgstr "" "exemple ::" #: library/argparse.rst:160 -#, fuzzy msgid "" "Later, calling :meth:`~ArgumentParser.parse_args` will return an object with " "two attributes, ``integers`` and ``accumulate``. The ``integers`` attribute " @@ -372,18 +373,16 @@ msgstr "" "partir des arguments ajoutés à l'analyseur) ;" #: library/argparse.rst:204 -#, fuzzy msgid "" "description_ - Text to display before the argument help (by default, no text)" msgstr "" -"description_ – Texte à afficher avant l'aide des arguments (par défaut : " -"vide) ;" +"description_ – Texte à afficher au dessus de l'aide pour les arguments (vide " +"par défaut) ;" #: library/argparse.rst:207 -#, fuzzy msgid "epilog_ - Text to display after the argument help (by default, no text)" msgstr "" -"epilog_ – Texte à afficher après l'aide des arguments (par défaut : vide) ;" +"epilog_ – Texte à afficher après l'aide des arguments (vide par défaut) ;" #: library/argparse.rst:209 msgid "" @@ -509,8 +508,8 @@ msgid "" "To change this default behavior, another value can be supplied using the " "``prog=`` argument to :class:`ArgumentParser`::" msgstr "" -"Pour changer ce comportement par défaut, une valeur alternative est passée " -"par l'argument ``prog=`` du constructeur d':class:`ArgumentParser` ::" +"Pour changer ce comportement, une valeur alternative est passée par " +"l'argument ``prog=`` du constructeur d':class:`ArgumentParser` ::" #: library/argparse.rst:292 msgid "" @@ -538,7 +537,7 @@ msgstr "" msgid "" "The default message can be overridden with the ``usage=`` keyword argument::" msgstr "" -"Le message par défaut peut être remplacé grâce à l'argument nommé " +"Le message par défaut peut être remplacé en utilisant l'argument nommé " "``usage=`` ::" #: library/argparse.rst:342 @@ -630,7 +629,7 @@ msgid "" "the :class:`ArgumentParser` will see two ``-h/--help`` options (one in the " "parent and one in the child) and raise an error." msgstr "" -"Prenez note que la majorité des analyseurs parents doivent spécifier " +"Prenez note que la majorité des analyseurs parents doivent définir " "``add_help=False``. Autrement, le constructeur d':class:`ArgumentParser` va " "voir plus d'une option ``-h/--help`` (une pour le parent et une pour " "l'instance en cours de création) et va lever une erreur." @@ -643,7 +642,7 @@ msgid "" msgstr "" "Vous devez initialiser complètement les analyseurs avant de les passer à " "``parents=``. Si vous changez les analyseurs parents après la création de " -"l'analyseur enfant, ces changements ne seront pas répercutés sur l'enfant." +"l'analyseur enfant, ces changements ne sont pas répercutés sur l'enfant." #: library/argparse.rst:431 msgid "formatter_class" @@ -728,7 +727,7 @@ msgstr "" "La majorité des options sur la ligne de commande utilisent ``-`` comme " "préfixe (par exemple : ``-f/--foo``). Pour les analyseurs qui doivent " "accepter des caractères préfixes autres ou additionnels (par exemple pour " -"les options ``+f`` ou ``/foo``), vous devez les spécifier en utilisant " +"les options ``+f`` ou ``/foo``), vous devez les préciser en utilisant " "l'argument ``prefix_chars=`` du constructeur d'``ArgumentParser`` ::" #: library/argparse.rst:551 @@ -759,7 +758,7 @@ msgstr "" "plutôt que de la saisir sur la ligne de commande. Si un jeu de caractères " "est passé à l'argument ``fromfile_prefix_chars=`` du constructeur de :class:" "`ArgumentParser`, alors les arguments qui commencent par l'un des caractères " -"spécifiés seront traités comme des fichiers et seront remplacés par les " +"spécifiés sont traités comme des fichiers et sont remplacés par les " "arguments contenus dans ces fichiers. Par exemple ::" #: library/argparse.rst:573 @@ -784,8 +783,8 @@ msgid "" "arguments will never be treated as file references." msgstr "" "Par défaut, l'argument ``fromfile_prefix_chars=`` est ``None``, ce qui " -"signifie que les arguments ne seront pas traités en tant que références à " -"des fichiers." +"signifie que les arguments ne sont pas traités en tant que références à des " +"fichiers." #: library/argparse.rst:584 msgid "argument_default" @@ -802,7 +801,7 @@ msgid "" "suppress attribute creation on :meth:`~ArgumentParser.parse_args` calls, we " "supply ``argument_default=SUPPRESS``::" msgstr "" -"Généralement, les valeurs par défaut des arguments sont spécifiées soit en " +"Généralement, les valeurs par défaut des arguments sont définies soit en " "passant la valeur désirée à :meth:`~ArgumentParser.add_argument` soit par un " "appel à la méthode :meth:`~ArgumentParser.set_defaults`. Cette méthode " "accepte un ensemble de paires nom-valeur. Il est parfois pertinent de " @@ -893,7 +892,7 @@ msgid "" "help will be printed:" msgstr "" "Si ``-h`` ou ``--help`` est passé sur la ligne de commande, le message " -"d'aide de l'``ArgumentParser`` sera affiché :" +"d'aide de l'``ArgumentParser`` est affiché :" #: library/argparse.rst:685 msgid "" @@ -983,8 +982,8 @@ msgid "" "default_ - The value produced if the argument is absent from the command " "line and if it is absent from the namespace object." msgstr "" -"default_ – Valeur produite si l'argument est absent de la ligne de " -"commande et absent de l'objet ``namespace`` ;" +"default_ – Valeur produite si l'argument est absent de la ligne de commande " +"et absent de l'objet ``namespace`` ;" #: library/argparse.rst:756 msgid "" @@ -994,11 +993,8 @@ msgstr "" "converti ;" #: library/argparse.rst:758 -#, fuzzy msgid "choices_ - A sequence of the allowable values for the argument." -msgstr "" -"choices_ – Conteneur qui contient toutes les valeurs permises pour cet " -"argument ;" +msgstr "choices_ – La séquence de valeurs autorisées pour cet argument ;" #: library/argparse.rst:760 msgid "" @@ -1021,7 +1017,7 @@ msgid "" "dest_ - The name of the attribute to be added to the object returned by :" "meth:`parse_args`." msgstr "" -"dest_ – Nom de l'attribut qui sera ajouté à l'objet retourné par :meth:" +"dest_ – Nom de l'attribut qui est ajouté à l'objet retourné par :meth:" "`parse_args`." #: library/argparse.rst:776 @@ -1029,7 +1025,6 @@ msgid "name or flags" msgstr "Le paramètre *name_or_flags*" #: library/argparse.rst:778 -#, fuzzy msgid "" "The :meth:`~ArgumentParser.add_argument` method must know whether an " "optional argument, like ``-f`` or ``--foo``, or a positional argument, like " @@ -1037,18 +1032,15 @@ msgid "" "`~ArgumentParser.add_argument` must therefore be either a series of flags, " "or a simple argument name." msgstr "" -"La méthode :meth:`~ArgumentParser.add_argument` doit savoir si c'est un " -"argument optionnel (tel que ``-f`` ou ``--foo``) ou plutôt un argument " +"La méthode :meth:`~ArgumentParser.add_argument` doit savoir s'il s'agit d'un " +"argument optionnel (tel que ``-f`` ou ``--foo``) ou d'un argument " "positionnel (tel qu'une liste de noms de fichiers) qui est attendu. Le " "premier argument passé à :meth:`~ArgumentParser.add_argument` doit donc être " -"soit une série de noms d'options tels qu'ils apparaissent sur la ligne de " -"commande, soit simplement un nom si on désire un argument positionnel. Par " -"exemple, un argument optionnel est créé comme suit ::" +"soit une série de drapeaux, soit le nom de l'argument." #: library/argparse.rst:784 -#, fuzzy msgid "For example, an optional argument could be created like::" -msgstr "alors qu'un argument positionnel est créé comme suit ::" +msgstr "Par exemple, un argument optionnel est créé comme suit ::" #: library/argparse.rst:788 msgid "while a positional argument could be created like::" @@ -1082,7 +1074,7 @@ msgstr "" "ligne de commande auxquels elles sont associées à un traitement arbitraire, " "mais la majorité des actions se contentent d'ajouter un attribut à l'objet " "renvoyé par :meth:`~ArgumentParser.parse_args`. L'argument nommé ``action`` " -"indique comment l'argument de la ligne de commande sera traité. Les actions " +"indique comment l'argument de la ligne de commande est traité. Les actions " "natives sont :" #: library/argparse.rst:819 @@ -1094,17 +1086,16 @@ msgstr "" "l'action par défaut. Par exemple ::" #: library/argparse.rst:827 -#, fuzzy msgid "" "``'store_const'`` - This stores the value specified by the const_ keyword " "argument; note that the const_ keyword argument defaults to ``None``. The " "``'store_const'`` action is most commonly used with optional arguments that " "specify some sort of flag. For example::" msgstr "" -"``'store_const'`` – Stocke la valeur passée à l'argument nommé const_. " -"L'action ``'store_const'`` est typiquement utilisée avec des arguments " -"optionnels qui représentent un drapeau ou une condition similaire. Par " -"exemple ::" +"``'store_const'`` – Stocke la valeur passée à l'argument nommé const_. La " +"valeur par défaut de const_ est ``None``. L'action ``'store_const'`` est " +"généralement utilisée avec des arguments optionnels représentant un drapeau " +"ou une condition similaire. Par exemple ::" #: library/argparse.rst:837 msgid "" @@ -1119,7 +1110,6 @@ msgstr "" "par défaut ``False`` et ``True``, respectivement. Par exemple ::" #: library/argparse.rst:849 -#, fuzzy msgid "" "``'append'`` - This stores a list, and appends each argument value to the " "list. It is useful to allow an option to be specified multiple times. If the " @@ -1127,12 +1117,13 @@ msgid "" "parsed value for the option, with any values from the command line appended " "after those default values. Example usage::" msgstr "" -"``'append'`` – Stocke une liste et ajoute la valeur de l'argument à la " -"liste. Ceci est pratique pour les options qui peuvent être répétées sur la " -"ligne de commande ::" +"``'append'`` – Stocke une liste et ajoute la valeur de son argument à cette " +"liste. Il est donc généralement utile d'accepter la répétition de cet " +"argument. Si une valeur par défaut est précisée, alors cette valeur est " +"également présente dans la liste et précède les valeurs passées sur la ligne " +"de commande." #: library/argparse.rst:860 -#, fuzzy msgid "" "``'append_const'`` - This stores a list, and appends the value specified by " "the const_ keyword argument to the list; note that the const_ keyword " @@ -1140,11 +1131,11 @@ msgid "" "useful when multiple arguments need to store constants to the same list. For " "example::" msgstr "" -"``'append_const'`` – Stocke une liste et ajoute la valeur passée à " -"l'argument nommé const_ à la fin de la liste. Notez que la valeur par défaut " -"de l'argument nommé const_ est ``None``. L'action ``'append_const'`` est " -"pratique quand plusieurs arguments ont besoin de stocker des constantes dans " -"la même liste. Par exemple ::" +"``'append_const'`` – Stocke une liste et ajoute la valeur de son argument " +"const_ à cette liste. Notez que la valeur par défaut de l'argument const_ " +"est ``None``. L'action ``'append_const'`` est pratique quand plusieurs " +"arguments ont besoin de stocker des constantes dans une seule liste. Par " +"exemple ::" #: library/argparse.rst:872 msgid "" @@ -1157,7 +1148,7 @@ msgstr "" #: library/argparse.rst:880 msgid "Note, the *default* will be ``None`` unless explicitly set to *0*." msgstr "" -"Prenez note que la valeur de *default* sera ``None`` à moins qu'elle soit " +"Prenez note que la valeur de *default* est ``None`` à moins qu'elle soit " "explicitement définie à ``0``." #: library/argparse.rst:882 @@ -1187,7 +1178,7 @@ msgid "" "``'extend'`` - This stores a list, and extends each argument value to the " "list. Example usage::" msgstr "" -"``'extend'`` – Stock une liste et ajoute à la liste chacune des valeurs de " +"``'extend'`` – Stocke une liste et ajoute à la liste chacune des valeurs de " "l'argument reçues. Voici un exemple de son utilisation ::" #: library/argparse.rst:908 @@ -1241,7 +1232,7 @@ msgid "" "``N`` (an integer). ``N`` arguments from the command line will be gathered " "together into a list. For example::" msgstr "" -"``N`` (un entier). ``N`` arguments de la ligne de commande seront capturés " +"``N`` (un entier). ``N`` arguments de la ligne de commande sont capturés " "ensemble et stockés dans une liste. Par exemple ::" #: library/argparse.rst:967 @@ -1262,7 +1253,7 @@ msgid "" "by a command-line argument. In this case the value from const_ will be " "produced. Some examples to illustrate this::" msgstr "" -"``'?'``. Un argument sera capturé de la ligne de commande et produit " +"``'?'``. Un argument de la ligne de commande est capturé et produit " "directement. Si aucun argument n'est présent sur la ligne de commande, la " "valeur de default_ est produite. Prenez note que pour les arguments " "optionnels, il est aussi possible que la chaîne d'option soit présente mais " @@ -1329,7 +1320,6 @@ msgstr "" "utilisations les plus communes sont :" #: library/argparse.rst:1046 -#, fuzzy msgid "" "When :meth:`~ArgumentParser.add_argument` is called with " "``action='store_const'`` or ``action='append_const'``. These actions add " @@ -1339,15 +1329,15 @@ msgid "" "receive a default value of ``None``." msgstr "" "quand :meth:`~ArgumentParser.add_argument` est appelée avec " -"``action='store_const'`` ou ``action='append_const'``. Ces actions ajoutent " +"``action='store_const'`` ou ``action='append_const'``, ces actions ajoutent " "la valeur de ``const`` à l'un des attributs de l'objet renvoyé par :meth:" "`~ArgumentParser.parse_args`. Consultez la description d'action_ pour voir " -"quelques exemples ;" +"quelques exemples. La valeur de ``const`` est ``None`` par défaut pour :meth:" +"`~ArgumentParser.add_argument` ;" # Nous sommes dans une énumération après un :, donc pas de majuscule et le # paragraphe doit se terminer par ;. #: library/argparse.rst:1054 -#, fuzzy msgid "" "When :meth:`~ArgumentParser.add_argument` is called with option strings " "(like ``-f`` or ``--foo``) and ``nargs='?'``. This creates an optional " @@ -1356,19 +1346,19 @@ msgid "" "command-line argument following it, the value of ``const`` will be assumed " "to be ``None`` instead. See the nargs_ description for examples." msgstr "" -"Quand la méthode :meth:`~ArgumentParser.add_argument` est appelée avec des " -"chaînes d'options (telles que ``-f`` ou ``--foo``) et ``nargs='?'``. Ceci " -"crée un argument optionnel qui peut être suivi de zéro ou un argument de " -"ligne de commande. Quand la ligne de commande est analysée, si la chaîne " -"d'option est trouvée mais qu'elle n'est pas suivie par un argument, la " -"valeur de ``const`` est utilisée. Consultez la description de nargs_ pour " -"voir quelques exemples." +"appeler la méthode :meth:`~ArgumentParser.add_argument` avec des chaînes " +"d'options (telles ``-f``, ``--foo`` ou avec ``nargs='?'``) crée un argument " +"optionnel auquel peut être attribué une valeur. Si celle-ci est omise, " +"l'analyseur prend ``None`` comme la valeur de ``const``. La description de " +"nargs_ offre quelques exemples." #: library/argparse.rst:1061 msgid "" "``const=None`` by default, including when ``action='append_const'`` or " "``action='store_const'``." msgstr "" +"``const=None`` par défaut, y compris avec ``action='append_const'`` ou " +"``action='store_const'``." #: library/argparse.rst:1068 msgid "default" @@ -1386,7 +1376,7 @@ msgstr "" "Tous les arguments optionnels et certains arguments positionnels peuvent " "être omis à la ligne de commande. L'argument nommé ``default`` de la " "méthode :meth:`~ArgumentParser.add_argument` (qui vaut ``None`` par défaut), " -"indique quelle valeur sera utilisé si l'argument est absent de la ligne de " +"indique quelle valeur est utilisée si l'argument est absent de la ligne de " "commande. Pour les arguments optionnels, la valeur de ``default`` est " "utilisée si la chaîne d'option n'est pas présente sur la ligne de commande ::" @@ -1407,9 +1397,9 @@ msgid "" msgstr "" "Si la valeur de ``default`` est une chaîne, l'analyseur analyse cette valeur " "comme si c'était un argument de la ligne de commande. En particulier, " -"l'analyseur applique la conversion spécifiée par l'argument type_ (si elle " -"est fournie) avant d'affecter l'attribut à l'objet :class:`Namespace` " -"renvoyé. Autrement, l'analyseur utilise la valeur telle qu'elle ::" +"l'analyseur applique la conversion définie par l'argument type_ (si elle est " +"fournie) avant d'affecter l'attribut à l'objet :class:`Namespace` renvoyé. " +"Autrement, l'analyseur utilise la valeur telle qu'elle ::" #: library/argparse.rst:1103 msgid "" @@ -1425,9 +1415,8 @@ msgid "" "Providing ``default=argparse.SUPPRESS`` causes no attribute to be added if " "the command-line argument was not present::" msgstr "" -"Si vous passez ``default=argparse.SUPPRESS``, aucun attribut ne sera ajouté " -"à l'objet ``Namespace`` quand l'argument est absent de la ligne de " -"commande ::" +"Si vous passez ``default=argparse.SUPPRESS``, aucun attribut n'est ajouté à " +"l'objet ``Namespace`` quand l'argument est absent de la ligne de commande ::" #: library/argparse.rst:1128 msgid "type" @@ -1464,8 +1453,8 @@ msgid "" "is displayed. No other exception types are handled." msgstr "" "La valeur de l'argument ``type`` peut être n'importe quel appelable qui " -"accepte une seule chaîne. Si la fonction lance :exc:`ArgumentTypeError`, :" -"exc:`TypeError` ou :exc:`ValueError`, l'exception est traitée et un message " +"accepte une seule chaîne. Si la fonction lève :exc:`ArgumentTypeError`, :exc:" +"`TypeError` ou :exc:`ValueError`, l'exception est traitée et un message " "d'erreur agréablement formaté est affiché. Aucun autre type d'exception " "n'est géré." @@ -1501,7 +1490,7 @@ msgstr "" "utilisé que pour les conversions simples qui ne peuvent lever qu'une des " "trois exceptions gérées. Les conversions qui demandent un traitement " "d'erreurs plus intéressant ou une gestion de ressources devraient être " -"effectuées plus tard dans l’exécution suite à l'analyse des arguments." +"effectuées plus tard dans l’exécution suivant l'analyse des arguments." #: library/argparse.rst:1181 msgid "" @@ -1544,7 +1533,6 @@ msgid "choices" msgstr "Le paramètre *choices*" #: library/argparse.rst:1201 -#, fuzzy msgid "" "Some command-line arguments should be selected from a restricted set of " "values. These can be handled by passing a sequence object as the *choices* " @@ -1553,32 +1541,29 @@ msgid "" "be displayed if the argument was not one of the acceptable values::" msgstr "" "Certains arguments de la ligne de commande doivent être choisis parmi un " -"ensemble fermé de valeurs. Ceux-ci peuvent être gérés en passant un " -"conteneur à l'argument nommé *choices* de la méthode :meth:`~ArgumentParser." -"add_argument`. Quand la ligne de commande est analysée, les valeurs de " -"l'argument sont comparées et un message d'erreur est affiché si l'argument " -"n'est pas parmi les valeurs acceptables ::" +"ensemble prédéfini de valeurs. Celles-ci doivent être déclarées dans la " +"séquence passée à l'argument *choices* de la méthode :meth:`~ArgumentParser." +"add_argument`. Un message d'erreur est alors affiché si l'utilisateur passe " +"un argument qui n'est pas parmi les valeurs acceptables ::" #: library/argparse.rst:1216 -#, fuzzy msgid "" "Note that inclusion in the *choices* sequence is checked after any type_ " "conversions have been performed, so the type of the objects in the *choices* " "sequence should match the type_ specified::" msgstr "" -"Prenez note que le test d'inclusion dans le conteur *choices* est fait après " -"la conversion de type_. Le type des objets dans le conteneur *choices* " -"doivent donc correspondre au type_ spécifié ::" +"Prenez note que le test d'inclusion dans le conteneur *choices* est fait " +"après la conversion de type_. Le type des objets dans le conteneur *choices* " +"doit donc correspondre au type_ spécifié ::" #: library/argparse.rst:1228 -#, fuzzy msgid "" "Any sequence can be passed as the *choices* value, so :class:`list` " "objects, :class:`tuple` objects, and custom sequences are all supported." msgstr "" -"N'importe quel conteneur peut être fourni pour la valeur de *choices*, donc " -"les objets :class:`list`, les objets :class:`set` et les conteneurs " -"personnalisés sont tous acceptés." +"N'importe quel séquence peut être utilisée comme valeur de *choices*, dont " +"les objets de type :class:`list`, :class:`set` ou des conteneurs " +"personnalisés." #: library/argparse.rst:1231 msgid "" @@ -1589,7 +1574,6 @@ msgstr "" "contrôler son apparence dans les messages d'usage, d'aide et d'erreur." #: library/argparse.rst:1234 -#, fuzzy msgid "" "Formatted choices override the default *metavar* which is normally derived " "from *dest*. This is usually what you want because the user never sees the " @@ -1599,8 +1583,8 @@ msgstr "" "Les choix formatés écrasent la valeur par défaut de *metavar* qui est " "normalement dérivée de *dest*. C'est en général le comportement recherché " "car l'utilisateur ne voit jamais le paramètre *dest*. Si cet affichage n'est " -"pas souhaité (comme lorsque les choix sont nombreux) spécifiez simplement " -"metavar_ de façon explicite." +"pas souhaité (comme lorsque les choix sont trop nombreux) spécifiez " +"simplement metavar_ de façon explicite." #: library/argparse.rst:1243 msgid "required" @@ -1625,7 +1609,7 @@ msgid "" "`~ArgumentParser.parse_args` will report an error if that option is not " "present at the command line." msgstr "" -"Tel qu'illustré' dans l'exemple, quand l'option est marquée comme " +"Tel qu'illustré dans l'exemple, quand l'option est marquée comme " "``required``, :meth:`~ArgumentParser.parse_args` mentionne une erreur si " "l'option est absente de la ligne de commande." @@ -1635,7 +1619,7 @@ msgid "" "*options* to be *optional*, and thus they should be avoided when possible." msgstr "" "En général, les options obligatoires manifestent un style boiteux, car les " -"utilisateurs s'attendent que les *options* soient *optionnelles*. Elles " +"utilisateurs s'attendent à ce que les *options* soient *optionnelles*. Elles " "devraient donc être évitées si possible." #: library/argparse.rst:1271 @@ -1652,7 +1636,7 @@ msgstr "" "La valeur de ``help`` est une chaîne qui contient une brève description de " "l'argument. Quand un utilisateur demande de l'aide (en général par " "l'utilisation de ``-h`` ou ``--help`` sur la ligne de commande), ces " -"descriptions d'aide seront affichées pour chacun des arguments ::" +"descriptions d'aide sont affichées pour chacun des arguments ::" #: library/argparse.rst:1293 msgid "" @@ -1662,12 +1646,12 @@ msgid "" "arguments to :meth:`~ArgumentParser.add_argument`, e.g. ``%(default)s``, " "``%(type)s``, etc.::" msgstr "" -"La chaîne ``help`` peut contenir des spécificateurs de formatage afin " +"La chaîne ``help`` peut contenir des définitions de formatage permettant " "d'éviter la répétition de contenu tel que le nom du programme et la valeur " -"par défaut de l'argument (voir default_). Les spécificateurs de formatage " -"disponibles incluent entre autres le nom du programme, ``%(prog)s``, et la " -"plupart des arguments nommés d':meth:`~ArgumentParser.add_argument`, tels " -"que ``%(default)s``, ``%(type)s``, etc. ::" +"par défaut de l'argument (voir default_). Les définitions disponibles " +"comprennent entre autres le nom du programme, ``%(prog)s``, et la plupart " +"des arguments nommés d':meth:`~ArgumentParser.add_argument`, tels que " +"``%(default)s``, ``%(type)s``, etc. ::" #: library/argparse.rst:1310 msgid "" @@ -1704,12 +1688,12 @@ msgstr "" "Quand un objet :class:`ArgumentParser` construit le message d'aide, il doit " "pouvoir faire référence à chacun des arguments attendus. Par défaut, les " "objets ``ArgumentParser`` utilisent la valeur de dest_ pour le nom de chaque " -"objet. Par défaut, la valeur de dest_ est utilisée telle quelle pour les " -"actions d'arguments positionnels et elle (dest_) est convertie en majuscules " -"pour les actions d'arguments optionnels. Ainsi, un argument positionnel " -"unique avec ``dest='bar'`` sera affiché comme ``bar`` et un argument " -"positionnel unique ``--foo`` qui prend un seul argument sur la ligne de " -"commande sera affiché comme ``FOO``. Par exemple ::" +"objet. La valeur de dest_ est alors utilisée telle quelle pour les actions " +"d'arguments positionnels et elle (dest_) est convertie en majuscules pour " +"les actions d'arguments optionnels. Ainsi, un argument positionnel unique " +"avec ``dest='bar'`` est affiché comme ``bar`` et un argument positionnel " +"unique ``--foo`` qui prend un seul argument sur la ligne de commande est " +"affiché comme ``FOO``. Par exemple ::" #: library/argparse.rst:1354 msgid "An alternative name can be specified with ``metavar``::" @@ -1767,13 +1751,12 @@ msgid "" "below illustrate this behavior::" msgstr "" "Pour les actions d'arguments optionnels, la valeur de ``dest`` est " -"généralement inférée à partir des chaînes d'options. :class:`ArgumentParser` " -"génère la valeur de ``dest`` en prenant la première chaîne d'option longue " -"et en retirant le préfixe ``--``. Si une chaîne d'option longue n'est pas " -"fournie, ``dest`` est dérivée de la première chaîne d'option courte sans le " -"préfixe ``-``. Tous les ``-`` subséquents seront convertis en ``_`` pour " -"s'assurer que la chaîne est un nom d'attribut valide. Les exemples suivants " -"illustrent ce comportement ::" +"généralement inférée des chaînes d'options. :class:`ArgumentParser` génère " +"la valeur de ``dest`` en retirant le préfixe ``--`` de la première chaîne " +"d'options longues. Si aucune n'est fournie, ``dest`` est alors dérivée de la " +"première chaîne d'options courtes sans le préfixe ``-``. Tous les ``-`` " +"suivants sont convertis en ``_`` pour s'assurer que la chaîne est un nom " +"d'attribut valide. Les exemples suivants illustrent ce comportement ::" #: library/argparse.rst:1425 msgid "``dest`` allows a custom attribute name to be provided::" @@ -1789,7 +1772,7 @@ msgid "" "which processes arguments from the command-line. Any object which follows " "this API may be passed as the ``action`` parameter to :meth:`add_argument`." msgstr "" -"Les classes ``Action`` implémentent l'API Action, un appelable qui retourne " +"Les classes ``Action`` implémentent l'API Action, un appelable qui renvoie " "un appelable qui traite les arguments de la ligne de commande. Tout objet " "qui suit cette API peut être passé comme paramètre ``action`` d':meth:" "`add_argument`." @@ -1840,7 +1823,7 @@ msgid "" "`~ArgumentParser.parse_args`. Most actions add an attribute to this object " "using :func:`setattr`." msgstr "" -"``namespace`` – L'objet :class:`Namespace` qui sera renvoyé par :meth:" +"``namespace`` – L'objet :class:`Namespace` qui est renvoyé par :meth:" "`~ArgumentParser.parse_args`. La majorité des actions ajoutent un attribut à " "cet objet avec :func:`setattr` ;" @@ -1895,7 +1878,7 @@ msgid "" "namespace. Return the populated namespace." msgstr "" "Convertie les chaînes d'arguments en objets et les assigne comme attributs " -"de l'objet ``namespace``. Retourne l'objet ``namespace`` rempli." +"de l'espace de nommage ``namespace``. Renvoie un objet ``namespace`` rempli." #: library/argparse.rst:1487 msgid "" @@ -1913,14 +1896,14 @@ msgid "" "argv`." msgstr "" "args_ – Liste de chaînes à analyser. La valeur par défaut est récupérée " -"dans : :data:`sys.argv`." +"dans :data:`sys.argv`." #: library/argparse.rst:1494 msgid "" "namespace_ - An object to take the attributes. The default is a new empty :" "class:`Namespace` object." msgstr "" -"namespace_ – Un objet pour recevoir les attributs. Par défaut : une nouvelle " +"namespace_ – Un objet pour recevoir les attributs. Par défaut, une nouvelle " "instance (vide) de :class:`Namespace`." #: library/argparse.rst:1499 @@ -1944,7 +1927,7 @@ msgid "" "option and value can also be passed as a single command-line argument, using " "``=`` to separate them::" msgstr "" -"Pour les options longues (les options qui ont un nom plus long qu'un seul " +"Pour les options longues (les options qui ont un nom de plus d'un " "caractère), l'option et sa valeur peuvent être passées comme un seul " "argument de la ligne de commande en utilisant ``=`` comme séparateur ::" @@ -1953,8 +1936,8 @@ msgid "" "For short options (options only one character long), the option and its " "value can be concatenated::" msgstr "" -"Pour les options courtes (les options qui utilisent un seul caractère), " -"l'option et sa valeur peuvent être concaténées ::" +"Pour les options courtes (un seul caractère), l'option et sa valeur peuvent " +"être concaténées ::" #: library/argparse.rst:1526 msgid "" @@ -1962,8 +1945,8 @@ msgid "" "prefix, as long as only the last option (or none of them) requires a value::" msgstr "" "Plusieurs options courtes peuvent être groupées ensemble après un seul " -"préfixe ``-`` pour autant que seule la dernière (ou aucune) nécessite une " -"valeur ::" +"préfixe ``-`` pour autant que seule la dernière, au maximum, ne nécessite " +"une valeur ::" #: library/argparse.rst:1538 msgid "Invalid arguments" @@ -2022,7 +2005,7 @@ msgstr "" #: library/argparse.rst:1617 msgid "Argument abbreviations (prefix matching)" -msgstr "Arguments abrégés (Par comparaison de leurs préfixes)" +msgstr "Arguments abrégés (par comparaison de leurs préfixes)" #: library/argparse.rst:1619 msgid "" @@ -2033,7 +2016,7 @@ msgstr "" "Par défaut, la méthode :meth:`~ArgumentParser.parse_args` accepte que les " "options longues soient :ref:`abrégées ` par un préfixe pour " "autant que l’abréviation soit non-ambigüe, c'est-à-dire qu'elle ne " -"corresponde qu'à une seule option ::" +"corresponde à aucune autre option ::" #: library/argparse.rst:1634 msgid "" @@ -2119,18 +2102,18 @@ msgid "" "constructor arguments, and returns an :class:`ArgumentParser` object that " "can be modified as usual." msgstr "" -"Certains programmes divisent leurs fonctionnalités entre un nombre de sous-" +"Certains programmes organisent leurs fonctionnalités grâce à des sous-" "commandes. Par exemple : le programme ``svn`` peut être invoqué comme ``svn " -"checkout``, ``svn update`` et ``svn commit``. Séparer les fonctionnalités de " -"cette façon est judicieux quand le programme effectue plusieurs fonctions " -"différentes qui requièrent différents types de lignes de commandes. :class:" -"`ArgumentParser` prend en charge la création de ce genre de sous-commandes " -"grâce à la méthode :meth:`add_subparsers`. La méthode :meth:`add_subparsers` " -"est généralement appelée sans argument et elle renvoie un objet ``Action`` " -"spécial. Cet objet possède une seule méthode, :meth:`~ArgumentParser." -"add_parser`, qui prend le nom d'une commande et n'importe quels arguments du " -"constructeur d':class:`ArgumentParser` ; elle renvoie un objet :class:" -"`ArgumentParser` qui peut être modifié normalement." +"checkout``, ``svn update`` et ``svn commit``. Cette manière d'organiser les " +"fonctionnalités est judicieuse quand le programme effectue plusieurs " +"fonctions différentes qui requièrent différents types de lignes de " +"commandes. :class:`ArgumentParser` prend en charge la création de ce genre " +"de sous-commandes grâce à la méthode :meth:`add_subparsers`. La méthode :" +"meth:`add_subparsers` est généralement appelée sans argument et elle renvoie " +"un objet ``Action`` spécial. Cet objet possède une seule méthode, :meth:" +"`~ArgumentParser.add_parser`, qui prend le nom d'une commande et n'importe " +"quels arguments du constructeur d':class:`ArgumentParser` ; elle renvoie un " +"objet :class:`ArgumentParser` qui peut être modifié normalement." #: library/argparse.rst:1717 msgid "Description of parameters:" @@ -2231,9 +2214,9 @@ msgstr "" "attributs reconnus par l'analyseur principal et le sous-analyseur " "sélectionné par la ligne de commande. Les autres sous-analyseurs n'ont pas " "d'influence sur l'objet renvoyé. Ainsi dans l'exemple précédent, quand la " -"commande ``a`` est spécifiée, seuls les attributs ``foo`` et ``bar`` sont " -"présents ; quand la commande ``b`` est spécifiée, seuls les attributs " -"``foo`` et ``baz`` sont présents." +"commande ``a`` est donnée, seuls les attributs ``foo`` et ``bar`` sont " +"présents alors que la commande ``b`` présente les attributs ``foo`` et " +"``baz``." #: library/argparse.rst:1775 msgid "" @@ -2294,10 +2277,10 @@ msgid "" "argument to the :meth:`add_subparsers` call will work::" msgstr "" "Ainsi, vous pouvez laisser à :meth:`parse_args` la responsabilité de faire " -"l'appel à la bonne fonction après avoir analysé les arguments. Associer " +"appel à la bonne fonction après avoir analysé les arguments. Associer " "fonctions et actions est en général la façon la plus facile de gérer des " "actions différentes pour chacun de vos sous-analyseurs. Par contre, si vous " -"avez besoin de consulter le nom de du sous-analyseur qui a été invoqué, vous " +"avez besoin de consulter le nom du sous-analyseur qui a été invoqué, vous " "pouvez utiliser l'argument nommé ``dest`` d':meth:`add_subparsers` ::" #: library/argparse.rst:1896 @@ -2324,16 +2307,15 @@ msgstr "" "`open` pour plus de détails) ::" #: library/argparse.rst:1917 -#, fuzzy msgid "" "FileType objects understand the pseudo-argument ``'-'`` and automatically " "convert this into :data:`sys.stdin` for readable :class:`FileType` objects " "and :data:`sys.stdout` for writable :class:`FileType` objects::" msgstr "" -"Les objets ``FileType`` reconnaissent le pseudo-argument ``'-'`` et en font " -"automatiquement la conversion vers ``sys.stdin`` pour les objets :class:" -"`FileType` ouverts en lecture et vers ``sys.stdout`` pour les objets :class:" -"`FileType` ouverts en écriture ::" +"Les objets ``FileType`` reconnaissent le pseudo-argument ``'-'`` et le " +"convertissent automatiquement vers :data:`sys.stdin` pour les objets :class:" +"`FileType` ouverts en lecture, et vers :data:`sys.stdout` pour les objets :" +"class:`FileType` ouverts en écriture ::" #: library/argparse.rst:1926 msgid "The *encodings* and *errors* keyword arguments." @@ -2344,7 +2326,6 @@ msgid "Argument groups" msgstr "Groupes d'arguments" #: library/argparse.rst:1935 -#, fuzzy msgid "" "By default, :class:`ArgumentParser` groups command-line arguments into " "\"positional arguments\" and \"options\" when displaying help messages. When " @@ -2352,11 +2333,11 @@ msgid "" "appropriate groups can be created using the :meth:`add_argument_group` " "method::" msgstr "" -"Par défaut, :class:`ArgumentParser` sépare les arguments de la ligne de " -"commande entre les groupes « arguments positionnels » et « arguments " -"optionnels » au moment d'afficher les messages d'aide. S'il existe un " -"meilleur regroupement conceptuel des arguments, les groupes adéquats peuvent " -"être créés avec la méthode :meth:`add_argument_group` ::" +"Par défaut, :class:`ArgumentParser` regroupe les arguments de la ligne de " +"commande entre « arguments positionnels » et « arguments optionnels » dans " +"l'affichage de l'aide. Lorsqu'un meilleur regroupement conceptuel est " +"possible, celui-ci peut être créé avec la méthode :meth:" +"`add_argument_group` ::" #: library/argparse.rst:1952 msgid "" @@ -2392,6 +2373,10 @@ msgid "" "exists on the API by accident through inheritance and will be removed in the " "future." msgstr "" +"Appeler :meth:`add_argument_group` sur un groupe d'arguments est obsolète. " +"Cet emploi n'a jamais été pris en charge et ne fonctionne pas dans tous les " +"cas. La présence de cette fonction dans l'API est purement accidentelle et " +"celle-ci disparaîtra." #: library/argparse.rst:1989 msgid "Mutual exclusion" @@ -2434,6 +2419,10 @@ msgid "" "supported and do not always work correctly. The functions exist on the API " "by accident through inheritance and will be removed in the future." msgstr "" +"Appeler :meth:`add_argument_group` ou :meth:`add_mutually_exclusive_group` " +"sur un groupe mutuellement exclusif est obsolète. Cet emploi n'a jamais été " +"pris en charge et ne fonctionne pas dans tous les cas. La présence de cette " +"fonction dans l'API est purement accidentelle et celle-ci disparaîtra." #: library/argparse.rst:2033 msgid "Parser defaults" @@ -2552,10 +2541,10 @@ msgid "" "a two item tuple containing the populated namespace and the list of " "remaining argument strings." msgstr "" -"Parfois, un script n'analyse que de quelques-uns des arguments de la ligne " -"de commande avant de passer les arguments non-traités à un autre script ou " -"un autre programme. La méthode :meth:`~ArgumentParser.parse_known_args` est " -"utile dans ces cas. Elle fonctionne similairement à :meth:`~ArgumentParser." +"Parfois, un script n'analyse que quelques-uns des arguments de la ligne de " +"commande avant de passer les arguments non-traités à un autre script ou " +"programme. La méthode :meth:`~ArgumentParser.parse_known_args` est utile " +"dans ces cas. Elle fonctionne similairement à :meth:`~ArgumentParser." "parse_args`, mais elle ne lève pas d'erreur quand des arguments non-reconnus " "sont présents. Au lieu, elle renvoie une paire de valeurs : l'objet " "``Namespace`` rempli et la liste des arguments non-traités." @@ -2720,29 +2709,29 @@ msgstr "" #: library/argparse.rst:2229 msgid "Handling positional arguments." -msgstr "Gère les arguments positionnels ;" +msgstr "gère les arguments positionnels ;" #: library/argparse.rst:2230 msgid "Supporting sub-commands." -msgstr "Prise en charge des sous commandes ;" +msgstr "prise en charge des sous commandes ;" #: library/argparse.rst:2231 msgid "Allowing alternative option prefixes like ``+`` and ``/``." msgstr "" -"Permet d'utiliser les alternatives ``+`` ou ``/`` comme préfixes d'option ;" +"permet d'utiliser les alternatives ``+`` ou ``/`` comme préfixes d'option ;" #: library/argparse.rst:2232 msgid "Handling zero-or-more and one-or-more style arguments." -msgstr "Prend en charge la répétition de valeurs (zéro ou plus, un ou plus) ;" +msgstr "prend en charge la répétition de valeurs (zéro ou plus, un ou plus) ;" #: library/argparse.rst:2233 msgid "Producing more informative usage messages." -msgstr "Fournit des messages d'aide plus complets ;" +msgstr "fournit des messages d'aide plus complets ;" #: library/argparse.rst:2234 msgid "Providing a much simpler interface for custom ``type`` and ``action``." msgstr "" -"Fournit une interface plus simple pour les types et les actions " +"fournit une interface plus simple pour les types et les actions " "personnalisés." #: library/argparse.rst:2236 @@ -2754,7 +2743,7 @@ msgid "" "Replace all :meth:`optparse.OptionParser.add_option` calls with :meth:" "`ArgumentParser.add_argument` calls." msgstr "" -"Remplacer tous les appels à :meth:`optparse.OptionParser.add_option` par des " +"remplacer tous les appels à :meth:`optparse.OptionParser.add_option` par des " "appels à :meth:`ArgumentParser.add_argument` ;" #: library/argparse.rst:2241 @@ -2764,7 +2753,7 @@ msgid "" "for the positional arguments. Keep in mind that what was previously called " "``options``, now in the :mod:`argparse` context is called ``args``." msgstr "" -"Remplacer ``(options, args) = parser.parse_args()`` par ``args = parser." +"remplacer ``(options, args) = parser.parse_args()`` par ``args = parser." "parse_args()`` et ajouter des appels à :meth:`ArgumentParser.add_argument` " "pour les arguments positionnels. Prenez note que les valeurs précédemment " "appelées ``options`` sont appelées ``args`` dans le contexte d':mod:" @@ -2776,7 +2765,7 @@ msgid "" "meth:`~ArgumentParser.parse_intermixed_args` instead of :meth:" "`~ArgumentParser.parse_args`." msgstr "" -"Remplacer :meth:`optparse.OptionParser.disable_interspersed_args` en " +"remplacer :meth:`optparse.OptionParser.disable_interspersed_args` en " "appelant :meth:`~ArgumentParser.parse_intermixed_args` plutôt que :meth:" "`~ArgumentParser.parse_args` ;" @@ -2785,7 +2774,7 @@ msgid "" "Replace callback actions and the ``callback_*`` keyword arguments with " "``type`` or ``action`` arguments." msgstr "" -"Remplacer les actions de rappel (*callback actions* en anglais) et les " +"remplacer les actions de rappel (*callback actions* en anglais) et les " "arguments nommés ``callback_*`` par des arguments ``type`` et ``actions`` ;" #: library/argparse.rst:2253 @@ -2793,7 +2782,7 @@ msgid "" "Replace string names for ``type`` keyword arguments with the corresponding " "type objects (e.g. int, float, complex, etc)." msgstr "" -"Remplacer les chaînes représentant le nom des types pour l'argument nommé " +"remplacer les chaînes représentant le nom des types pour l'argument nommé " "``type`` par les objets types correspondants (par exemple : ``int``, " "``float``, ``complex``, etc) ;" @@ -2802,7 +2791,7 @@ msgid "" "Replace :class:`optparse.Values` with :class:`Namespace` and :exc:`optparse." "OptionError` and :exc:`optparse.OptionValueError` with :exc:`ArgumentError`." msgstr "" -"Remplacer :class:`optparse.Values` par :class:`Namespace` ; et :exc:" +"remplacer :class:`optparse.Values` par :class:`Namespace` ; et :exc:" "`optparse.OptionError` et :exc:`optparse.OptionValueError` par :exc:" "`ArgumentError` ;" @@ -2812,7 +2801,7 @@ msgid "" "with the standard Python syntax to use dictionaries to format strings, that " "is, ``%(default)s`` and ``%(prog)s``." msgstr "" -"Remplacer les chaînes avec des arguments de formatage implicite (tels que " +"remplacer les chaînes avec des arguments de formatage implicite (tels que " "``%default`` ou ``%prog``) par la syntaxe standard de Python pour " "l'interpolation d'un dictionnaire dans les chaînes de formatage (c'est-à-" "dire ``%(default)s`` et ``%(prog)s``) ;" @@ -2823,7 +2812,7 @@ msgid "" "``parser.add_argument('--version', action='version', version='')``." msgstr "" -"Remplacer l'argument ``version`` du constructeur d'``OptionParser`` par un " +"remplacer l'argument ``version`` du constructeur d'``OptionParser`` par un " "appel à ``parser.add_argument('--version', action='version', version='')``." diff --git a/library/csv.po b/library/csv.po index 57cd7405..8408e4c3 100644 --- a/library/csv.po +++ b/library/csv.po @@ -6,8 +6,8 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-05-20 10:21+0200\n" -"Last-Translator: Mathieu Dupuy \n" +"PO-Revision-Date: 2023-02-17 10:21+0200\n" +"Last-Translator: Mouna Sebti \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" @@ -572,7 +572,7 @@ msgstr "" #: library/csv.rst:386 msgid "An empty *escapechar* is not allowed." -msgstr "" +msgstr "Un ``escapechar`` vide n'est pas autorisé." #: library/csv.rst:391 msgid "" @@ -604,7 +604,7 @@ msgstr "" #: library/csv.rst:407 msgid "An empty *quotechar* is not allowed." -msgstr "" +msgstr "Un ``quotechar`` vide n'est pas autorisé." #: library/csv.rst:412 msgid "" @@ -787,7 +787,6 @@ msgid "The corresponding simplest possible writing example is::" msgstr "Le plus simple exemple d'écriture correspondant est ::" #: library/csv.rst:543 -#, fuzzy msgid "" "Since :func:`open` is used to open a CSV file for reading, the file will by " "default be decoded into unicode using the system default encoding (see :func:" @@ -796,7 +795,7 @@ msgid "" msgstr "" "Puisque :func:`open` est utilisée pour ouvrir un fichier CSV en lecture, le " "fichier sera par défaut décodé vers Unicode en utilisant l'encodage par " -"défaut (voir :func:`locale.getpreferredencoding`). Pour décoder un fichier " +"défaut (voir :func:`locale.getencoding`). Pour décoder un fichier " "utilisant un encodage différent, utilisez l'argument ``encoding`` de " "*open* ::" diff --git a/library/email.examples.po b/library/email.examples.po index 8abcb298..9a7b6fe8 100644 --- a/library/email.examples.po +++ b/library/email.examples.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-08-24 09:01+0200\n" -"PO-Revision-Date: 2018-09-28 13:01+0200\n" +"PO-Revision-Date: 2023-02-17 14:44+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.0.5\n" +"X-Generator: Poedit 3.0.1\n" #: library/email.examples.rst:4 msgid ":mod:`email`: Examples" @@ -66,7 +66,7 @@ msgid "" "Here's an example of how to unpack a MIME message like the one above, into a " "directory of files:" msgstr "" -"Voici un message de comment décomposer un message MIME comme celui ci dessus " +"Voici un exemple de comment décomposer un message MIME comme celui ci-dessus " "en tant que fichiers dans un dossier :" #: library/email.examples.rst:39 diff --git a/library/itertools.po b/library/itertools.po index ef917a72..439634f8 100644 --- a/library/itertools.po +++ b/library/itertools.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2021-11-06 21:59+0100\n" +"PO-Revision-Date: 2023-02-17 11:56+0100\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.0\n" +"X-Generator: Poedit 3.2.2\n" #: library/itertools.rst:2 msgid ":mod:`itertools` --- Functions creating iterators for efficient looping" @@ -54,7 +54,6 @@ msgstr "" "count())``." #: library/itertools.rst:33 -#, fuzzy msgid "" "These tools and their built-in counterparts also work well with the high-" "speed functions in the :mod:`operator` module. For example, the " @@ -437,11 +436,10 @@ msgid "" "`~fractions.Fraction`.)" msgstr "" "Si *func* est renseigné, il doit être une fonction à deux arguments. Les " -"éléments de l'entrée *iterable* peuvent être de n'importe quel type " -"acceptable comme arguments de *func*. Par exemple, avec l'opération par " -"défaut d'addition, les éléments peuvent être de n'importe quel type " -"additionnable, :class:`~decimal.Decimal` ou :class:`~fractions.Fraction` " -"inclus." +"éléments de *iterable* peuvent être de n'importe quel type acceptable comme " +"arguments de *func*. Par exemple, avec l'opération par défaut d'addition, " +"les éléments peuvent être de n'importe quel type additionnable, :class:" +"`~decimal.Decimal` ou :class:`~fractions.Fraction` inclus." #: library/itertools.rst:112 msgid "" @@ -462,7 +460,6 @@ msgid "Roughly equivalent to::" msgstr "À peu près équivalent à ::" #: library/itertools.rst:136 -#, fuzzy msgid "" "There are a number of uses for the *func* argument. It can be set to :func:" "`min` for a running minimum, :func:`max` for a running maximum, or :func:" @@ -473,11 +470,7 @@ msgstr "" "func:`min` pour calculer un minimum glissant, :func:`max` pour un maximum " "glissant ou :func:`operator.mul` pour un produit glissant. Des tableaux de " "remboursements peuvent être construits en ajoutant les intérêts et en " -"soustrayant les paiements. Des `suites par récurrence `_ de premier ordre peuvent " -"être modélisées en en passant la valeur initiale dans *iterable* et en " -"n'utilisant que le premier argument de *func*, qui contient le résultat des " -"évaluations précédentes ::" +"soustrayant les paiements:" #: library/itertools.rst:154 msgid "" @@ -521,18 +514,16 @@ msgid "Return *r* length subsequences of elements from the input *iterable*." msgstr "Renvoie les combinaisons de longueur *r* de *iterable*." #: library/itertools.rst:244 -#, fuzzy msgid "" "The combination tuples are emitted in lexicographic ordering according to " "the order of the input *iterable*. So, if the input *iterable* is sorted, " "the output tuples will be produced in sorted order." msgstr "" "Les combinaisons sont produites dans l'ordre lexicographique dérivé de " -"l'ordre des éléments de l'itérable *iterable*. Ainsi, si *iterable* est " -"ordonné, les *n*-uplets de combinaison produits le sont aussi." +"l'ordre des éléments de *iterable*. Ainsi, si *iterable* est ordonné, les " +"*n*-uplets de combinaison produits le sont aussi." #: library/itertools.rst:199 -#, fuzzy msgid "" "Elements are treated as unique based on their position, not on their value. " "So if the input elements are unique, there will be no repeated values in " @@ -724,7 +715,6 @@ msgid ":func:`groupby` is roughly equivalent to::" msgstr ":func:`groupby` est à peu près équivalente à ::" #: library/itertools.rst:437 -#, fuzzy msgid "" "Make an iterator that returns selected elements from the iterable. If " "*start* is non-zero, then elements from the iterable are skipped until start " @@ -739,12 +729,7 @@ msgstr "" "consécutivement sauf si *step* est plus grand que 1, auquel cas certains " "éléments seront ignorés. Si *stop* est ``None``, alors l'itération continue " "jusqu'à ce que l'itérateur soit épuisé s'il ne l'est pas déjà ; sinon, il " -"s'arrête à la position spécifiée. À la différence des tranches standards, :" -"func:`slice` ne gère pas les valeurs négatives pour *start*, *stop* ou " -"*step*. Peut être utilisée pour extraire les champs consécutifs depuis des " -"données dont la structure interne a été aplatie (par exemple, un rapport " -"multi-lignes pourrait lister un nom de champ toutes les trois lignes). À peu " -"près similaire à ::" +"s'arrête à la position spécifiée." #: library/itertools.rst:444 msgid "" @@ -792,18 +777,16 @@ msgstr "" "sont générées." #: library/itertools.rst:507 -#, fuzzy msgid "" "The permutation tuples are emitted in lexicographic order according to the " "order of the input *iterable*. So, if the input *iterable* is sorted, the " "output tuples will be produced in sorted order." msgstr "" "Les combinaisons sont produites dans l'ordre lexicographique qui provient de " -"l'ordre des éléments de l'itérable *iterable*. Ainsi, si *iterable* est " -"ordonné, les *n*-uplets de combinaison produits le sont aussi." +"l'ordre des éléments de *iterable*. Ainsi, si *iterable* est ordonné, les " +"*n*-uplets de combinaison produits le sont aussi." #: library/itertools.rst:511 -#, fuzzy msgid "" "Elements are treated as unique based on their position, not on their value. " "So if the input elements are unique, there will be no repeated values within " @@ -887,27 +870,22 @@ msgstr "" "cette fonction ne sert que sur des itérables finis." #: library/itertools.rst:592 -#, fuzzy msgid "" "Make an iterator that returns *object* over and over again. Runs " "indefinitely unless the *times* argument is specified." msgstr "" "Crée un itérateur qui renvoie *object* à l'infini. S'exécute indéfiniment " -"sauf si l'argument *times* est spécifié. Utilisée comme argument de :func:" -"`map` pour les paramètres invariants de la fonction appelée. Aussi utilisée " -"avec :func:`zip` pour créer une partie invariante d'un *n*-uplet." +"sauf si l'argument *times* est spécifié." #: library/itertools.rst:606 -#, fuzzy msgid "" "A common use for *repeat* is to supply a stream of constant values to *map* " "or *zip*:" msgstr "" "Une utilisation courante de *repeat* est de fournir un flux constant de " -"valeurs à *map* ou *zip* ::" +"valeurs à *map* ou *zip* :" #: library/itertools.rst:616 -#, fuzzy msgid "" "Make an iterator that computes the function using arguments obtained from " "the iterable. Used instead of :func:`map` when argument parameters are " @@ -917,9 +895,7 @@ msgstr "" "Crée un itérateur qui exécute la fonction avec les arguments obtenus depuis " "l'itérable. Utilisée à la place de :func:`map` quand les arguments sont déjà " "groupés en *n*-uplets depuis un seul itérable — la donnée a déjà été « pré-" -"zippée ». La différence entre :func:`map` et :func:`starmap` est similaire à " -"la différence entre ``fonction(a,b)`` et ``fonction(*c)``. À peu près " -"équivalent à ::" +"zippée »." #: library/itertools.rst:621 msgid "" @@ -941,7 +917,6 @@ msgid "Return *n* independent iterators from a single iterable." msgstr "Renvoie *n* itérateurs indépendants depuis un unique itérable." #: library/itertools.rst:649 -#, fuzzy msgid "" "The following Python code helps explain what *tee* does (although the actual " "implementation is more complex and uses only a single underlying :abbr:`FIFO " @@ -949,18 +924,17 @@ msgid "" msgstr "" "Le code Python qui suit aide à expliquer ce que fait *tee*, bien que la " "vraie implémentation soit plus complexe et n'utilise qu'une file :abbr:`FIFO " -"(premier entré, premier sorti ou *first-in, first-out* en anglais)`." +"(premier entré, premier sorti ou *first-in, first-out* en anglais)` :" #: library/itertools.rst:668 -#, fuzzy msgid "" "Once a :func:`tee` has been created, the original *iterable* should not be " "used anywhere else; otherwise, the *iterable* could get advanced without the " "tee objects being informed." msgstr "" -"Une fois que :func:`tee` a créé un branchement, l'itérable *iterable* ne " -"doit être utilisé nulle part ailleurs ; sinon, *iterable* pourrait être " -"avancé sans que les objets tee ne soient informés." +"Une fois qu’un :func:`tee` a été créé, l’original de *iterable* ne doit être " +"utilisé nulle part ailleurs ; sinon *iterable* pourrait être avancé sans que " +"les objets *tee* n’en soient informés." #: library/itertools.rst:672 msgid "" @@ -1053,7 +1027,6 @@ msgstr "" "disponible dans le Python Package Index ::" #: library/itertools.rst:742 -#, fuzzy msgid "" "Many of the recipes offer the same high performance as the underlying " "toolset. Superior memory performance is kept by processing elements one at a " diff --git a/library/pathlib.po b/library/pathlib.po index 1ee7595a..299da0dc 100644 --- a/library/pathlib.po +++ b/library/pathlib.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-02-12 11:56+0100\n" -"PO-Revision-Date: 2022-10-18 15:43+0200\n" +"PO-Revision-Date: 2023-02-19 20:43+0100\n" "Last-Translator: Vincent Poulailleau \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.0\n" +"X-Generator: Poedit 3.0.1\n" #: library/pathlib.rst:3 msgid ":mod:`pathlib` --- Object-oriented filesystem paths" @@ -158,30 +158,31 @@ msgid "When *pathsegments* is empty, the current directory is assumed::" msgstr "Quand *pathsegments* est vide, le dossier courant est utilisé ::" #: library/pathlib.rst:121 -#, fuzzy msgid "" "If a segment is an absolute path, all previous segments are ignored (like :" "func:`os.path.join`)::" msgstr "" -"Quand plusieurs chemins absolus sont fournis, le dernier est pris comme " -"ancre (recopiant le comportement de :func:`os.path.join`) ::" +"Si un segment est un chemin absolu, tous les segments précédents sont " +"ignorés (comme :func:`os.path.join`) ::" #: library/pathlib.rst:129 msgid "" "On Windows, the drive is not reset when a rooted relative path segment (e." "g., ``r'\\foo'``) is encountered::" msgstr "" +"Sous Windows, le lecteur n'est pas effacé quand un segment enraciné de " +"chemin relatif (par exemple ``r'\\foo'``) est rencontré::" #: library/pathlib.rst:135 -#, fuzzy msgid "" "Spurious slashes and single dots are collapsed, but double dots (``'..'``) " "and leading double slashes (``'//'``) are not, since this would change the " "meaning of a path for various reasons (e.g. symbolic links, UNC paths)::" msgstr "" "Les points et slashs superflus sont supprimés, mais les doubles points " -"(``'..'``) ne le sont pas, puisque cela changerait la signification du " -"chemin dans le cas de liens symboliques ::" +"(``'..'``) et les double slashes (``'//'``) en début de segment ne le sont " +"pas, puisque cela changerait la signification du chemin pour différentes " +"raisons (par exemple pour des liens symboliques ou des chemins UNC) ::" #: library/pathlib.rst:148 msgid "" @@ -203,7 +204,7 @@ msgstr "" #: library/pathlib.rst:155 msgid "Added support for the :class:`os.PathLike` interface." -msgstr "Ajout de la gestion de l'interface :class:`os.PathLike`." +msgstr "ajout de la gestion de l'interface :class:`os.PathLike`." #: library/pathlib.rst:160 msgid "" @@ -218,13 +219,13 @@ msgid "*pathsegments* is specified similarly to :class:`PurePath`." msgstr "*pathsegments* est spécifié de manière similaire à :class:`PurePath`." #: library/pathlib.rst:170 -#, fuzzy msgid "" "A subclass of :class:`PurePath`, this path flavour represents Windows " "filesystem paths, including `UNC paths`_::" msgstr "" "Une sous-classe de :class:`PurePath`, cette famille de chemin représente les " -"chemins de systèmes de fichiers Windows ::" +"chemins de systèmes de fichiers Windows, y compris les chemin UNC (voir`UNC " +"paths`_) ::" #: library/pathlib.rst:182 msgid "" @@ -266,6 +267,10 @@ msgid "" "the drive is not reset when the argument is a rooted relative path (e.g., " "``r'\\foo'``)::" msgstr "" +"L'opérateur slash aide à créer les chemins enfants, de manière similaire à :" +"func:`os.path.join`. Si l'argument est un chemin absolu, le chemin précédent " +"est ignoré. Sous Windows, le lecteur n'est pas effacé quand l'argument est " +"un chemin relatif enraciné (par exemple ``r'\\foo'``)::" #: library/pathlib.rst:233 msgid "" @@ -358,6 +363,8 @@ msgid "" "If the path starts with more than two successive slashes, :class:`~pathlib." "PurePosixPath` collapses them::" msgstr "" +"Si le chemin commence par plus de deux slashes successifs, :class:`~pathlib." +"PurePosixPath`n'en conserve qu'un ::" #: library/pathlib.rst:337 msgid "" @@ -365,6 +372,9 @@ msgid "" "paragraph `4.11 Pathname Resolution `_:" msgstr "" +"Ce comportement se conforme au paragraphe 4.11 `Pathname Resolution `_ des *Open Group Base Specifications* version 6  :" #: library/pathlib.rst:341 msgid "" @@ -404,13 +414,12 @@ msgid "This is a purely lexical operation, hence the following behaviour::" msgstr "C'est une opération purement lexicale, d'où le comportement suivant ::" #: library/pathlib.rst:399 -#, fuzzy msgid "" "If you want to walk an arbitrary filesystem path upwards, it is recommended " "to first call :meth:`Path.resolve` so as to resolve symlinks and eliminate " "``\"..\"`` components." msgstr "" -"Si vous voulez parcourir un chemin arbitraire du système de fichiers, il est " +"Si vous voulez remonter un chemin arbitraire du système de fichiers, il est " "recommandé de d'abord appeler :meth:`Path.resolve` de manière à résoudre les " "liens symboliques et éliminer les composantes ``\"..\"``." @@ -766,6 +775,8 @@ msgid "" "Return only directories if *pattern* ends with a pathname components " "separator (:data:`~os.sep` or :data:`~os.altsep`)." msgstr "" +"Renvoie uniquement des répertoires si *pattern* finit par un séparateur " +"d'éléments de chemin (:data:`~os.sep` ou :data:`~os.altsep`)." #: library/pathlib.rst:857 msgid "" @@ -1034,6 +1045,8 @@ msgid "" "It is implemented in terms of :func:`os.rename` and gives the same " "guarantees." msgstr "" +"Cette méthode est implémentée d'après :func:`os.rename` et fournit les mêmes " +"garanties." # « nouveau dans la version … » #: library/pathlib.rst:1090 @@ -1041,24 +1054,22 @@ msgid "Added return value, return the new Path instance." msgstr "ajout de la valeur de retour, renvoie une nouvelle instance *Path*." #: library/pathlib.rst:1082 -#, fuzzy msgid "" "Rename this file or directory to the given *target*, and return a new Path " "instance pointing to *target*. If *target* points to an existing file or " "empty directory, it will be unconditionally replaced." msgstr "" -"Renomme ce fichier ou dossier vers la cible *target* fournie, et renvoie une " -"nouvelle instance de *Path* pointant sur *target*. Si *target* pointe sur un " -"fichier ou un dossier vide existant, il est systématiquement remplacé." +"Renomme ce fichier ou dossier vers la cible *target* fournie et renvoie une " +"nouvelle instance de *Path* pointant vers *target*. Si *target* pointe vers " +"un fichier ou un dossier vide existant, il sera systématiquement remplacé." #: library/pathlib.rst:1096 -#, fuzzy msgid "" "Make the path absolute, without normalization or resolving symlinks. Returns " "a new path object::" msgstr "" -"Rend le chemin absolu, résolvant les liens symboliques. Un nouveau chemin " -"est renvoyé ::" +"Rend le chemin absolu, sans normaliser ou résoudre les liens symboliques. " +"Renvoie un nouveau  ::" #: library/pathlib.rst:1108 msgid "" @@ -1276,18 +1287,17 @@ msgstr "" "leur équivalent :class:`PurePath` / :class:`Path` correspondant." #: library/pathlib.rst:1294 -#, fuzzy msgid "" "Not all pairs of functions/methods below are equivalent. Some of them, " "despite having some overlapping use-cases, have different semantics. They " "include :func:`os.path.abspath` and :meth:`Path.absolute`, :func:`os.path." "relpath` and :meth:`PurePath.relative_to`." msgstr "" -"Il n'y a pas toujours équivalence complète entre les deux fonctions dans les " -"lignes du tableau ci-dessous. Il arrive que des différences de comportement " -"existent malgré les fonctionnalités similaires. C'est notamment le cas de :" -"func:`os.path.abspath` et :meth:`Path.resolve`, ainsi que :func:`os.path." -"relpath` et :meth:`PurePath.relative_to`." +"Sur chaque ligne du tableau ci-dessous, les fonctions/méthodes ne sont pas " +"toujours équivalentes. Certaines, malgré des fonctionnalités similaires ont " +"des comportements différents. C'est notamment le cas de :func:`os.path." +"abspath` et :meth:`Path.absolute`, ainsi que :func:`os.path.relpath` et :" +"meth:`PurePath.relative_to`." #: library/pathlib.rst:1300 msgid ":mod:`os` and :mod:`os.path`" @@ -1302,19 +1312,16 @@ msgid ":func:`os.path.abspath`" msgstr ":func:`os.path.abspath`" #: library/pathlib.rst:1302 -#, fuzzy msgid ":meth:`Path.absolute` [#]_" -msgstr ":meth:`Path.resolve` [#]_" +msgstr ":meth:`Path.absolute` [#]_" #: library/pathlib.rst:1303 -#, fuzzy msgid ":func:`os.path.realpath`" -msgstr ":func:`os.path.relpath`" +msgstr ":func:`os.path.realpath`" #: library/pathlib.rst:1303 -#, fuzzy msgid ":meth:`Path.resolve`" -msgstr ":meth:`Path.resolve` [#]_" +msgstr ":meth:`Path.resolve`" #: library/pathlib.rst:1304 msgid ":func:`os.chmod`" @@ -1453,9 +1460,8 @@ msgid ":func:`os.path.relpath`" msgstr ":func:`os.path.relpath`" #: library/pathlib.rst:1322 -#, fuzzy msgid ":meth:`PurePath.relative_to` [#]_" -msgstr ":meth:`Path.relative_to` [#]_" +msgstr ":meth:`PurePath.relative_to` [#]_" #: library/pathlib.rst:1323 msgid ":func:`os.stat`" @@ -1486,18 +1492,16 @@ msgid ":func:`os.path.basename`" msgstr ":func:`os.path.basename`" #: library/pathlib.rst:1328 -#, fuzzy msgid ":attr:`PurePath.name`" -msgstr ":data:`PurePath.name`" +msgstr ":attr:`PurePath.name`" #: library/pathlib.rst:1329 msgid ":func:`os.path.dirname`" msgstr ":func:`os.path.dirname`" #: library/pathlib.rst:1329 -#, fuzzy msgid ":attr:`PurePath.parent`" -msgstr ":data:`PurePath.parent`" +msgstr ":attr:`PurePath.parent`" #: library/pathlib.rst:1330 msgid ":func:`os.path.samefile`" @@ -1512,25 +1516,23 @@ msgid ":func:`os.path.splitext`" msgstr ":func:`os.path.splitext`" #: library/pathlib.rst:1331 -#, fuzzy msgid ":attr:`PurePath.stem` and :attr:`PurePath.suffix`" -msgstr ":data:`PurePath.suffix`" +msgstr ":attr:`PurePath.stem` et :attr:`PurePath.suffix`" #: library/pathlib.rst:1336 msgid "Footnotes" msgstr "Notes" #: library/pathlib.rst:1337 -#, fuzzy msgid "" ":func:`os.path.abspath` normalizes the resulting path, which may change its " "meaning in the presence of symlinks, while :meth:`Path.absolute` does not." msgstr "" -":func:`os.path.abspath` ne résout pas les liens symboliques alors que :meth:" -"`Path.resolve` le fait." +":func:`os.path.abspath` normalise le chemin généré, ce qui peut en changer " +"la signification en présence de liens symboliques , alors que :meth:`Path." +"absolute` ne le fait pas." #: library/pathlib.rst:1338 -#, fuzzy msgid "" ":meth:`PurePath.relative_to` requires ``self`` to be the subpath of the " "argument, but :func:`os.path.relpath` does not." diff --git a/library/re.po b/library/re.po index 95c4e7e9..1f560865 100644 --- a/library/re.po +++ b/library/re.po @@ -5,8 +5,8 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-10-18 15:52+0200\n" -"Last-Translator: Jules Lasne \n" +"PO-Revision-Date: 2023-02-17 14:52+0200\n" +"Last-Translator: Mouna Sebti \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" @@ -19,9 +19,8 @@ msgid ":mod:`re` --- Regular expression operations" msgstr ":mod:`re` — Opérations à base d'expressions rationnelles" #: library/re.rst:10 -#, fuzzy msgid "**Source code:** :source:`Lib/re/`" -msgstr "**Code source :** :source:`Lib/re.py`" +msgstr "**Code source :** :source:`Lib/re/`" #: library/re.rst:14 msgid "" @@ -199,7 +198,6 @@ msgstr "" "interprétées." #: library/re.rst:90 -#, fuzzy msgid "" "Repetition operators or quantifiers (``*``, ``+``, ``?``, ``{m,n}``, etc) " "cannot be directly nested. This avoids ambiguity with the non-greedy " @@ -208,7 +206,7 @@ msgid "" "For example, the expression ``(?:a{6})*`` matches any multiple of six " "``'a'`` characters." msgstr "" -"Les caractères de répétition (``*``, ``+``, ``?``, ``{m,n}``, etc.) ne " +"Les caractères de répétition ou quantificateurs (``*``, ``+``, ``?``, ``{m,n}``, etc.) ne " "peuvent être directement imbriqués. Cela empêche l'ambiguïté avec le suffixe " "modificateur non gourmand ``?`` et avec les autres modificateurs dans " "d'autres implémentations. Pour appliquer une seconde répétition à une " @@ -315,7 +313,6 @@ msgid "``*?``, ``+?``, ``??``" msgstr "``*?``, ``+?``, ``??``" #: library/re.rst:149 -#, fuzzy msgid "" "The ``'*'``, ``'+'``, and ``'?'`` quantifiers are all :dfn:`greedy`; they " "match as much text as possible. Sometimes this behaviour isn't desired; if " @@ -325,19 +322,18 @@ msgid "" "characters as possible will be matched. Using the RE ``<.*?>`` will match " "only ``''``." msgstr "" -"Les qualificateurs ``'*'``, ``'+'`` et ``'?'`` sont tous :dfn:`greedy` " +"Les quantificateurs ``'*'``, ``'+'`` et ``'?'`` sont tous :dfn:`greedy` " "(gourmands) ; ils valident autant de texte que possible. Parfois ce " "comportement n'est pas désiré ; si l'expression rationnelle ``<.*>`` est " "testée avec la chaîne ``' b '``, cela correspondra à la chaîne " -"entière, et non juste à ``''``. Ajouter ``?`` derrière le qualificateur " +"entière, et non juste à ``''``. Ajouter ``?`` derrière le quantificateur " "lui fait réaliser l'opération de façon :dfn:`non-greedy` (ou :dfn:" "`minimal`) ; le *moins* de caractères possibles seront validés. Utiliser " "l'expression rationnelle ``<.*?>`` validera uniquement ``''``." #: library/re.rst:179 -#, fuzzy msgid "``*+``, ``++``, ``?+``" -msgstr "``*?``, ``+?``, ``??``" +msgstr "``*+``, ``++``, ``?+``" #: library/re.rst:163 msgid "" @@ -400,7 +396,6 @@ msgid "``{m,n}?``" msgstr "``{m,n}?``" #: library/re.rst:199 -#, fuzzy msgid "" "Causes the resulting RE to match from *m* to *n* repetitions of the " "preceding RE, attempting to match as *few* repetitions as possible. This is " @@ -408,16 +403,15 @@ msgid "" "character string ``'aaaaaa'``, ``a{3,5}`` will match 5 ``'a'`` characters, " "while ``a{3,5}?`` will only match 3 characters." msgstr "" -"Fait valider par l'expression rationnelle résultante entre *m* et *n* " +"Fait valider l'expression rationnelle résultante entre *m* et *n* " "répétitions de l'expression qui précède, cherchant à en valider le moins " -"possible. Il s'agit de la version non gourmande du précédent qualificateur. " +"possible. Il s'agit de la version non gourmande du précédent quantificateur. " "Par exemple, dans la chaîne de 6 caractères ``'aaaaaa'``, ``a{3,5}`` " "trouvera 5 caractères ``'a'``, alors que ``a{3,5}?`` n'en trouvera que 3." #: library/re.rst:218 -#, fuzzy msgid "``{m,n}+``" -msgstr "``{m,n}``" +msgstr "``{m,n}+``" #: library/re.rst:206 #, fuzzy @@ -434,7 +428,7 @@ msgid "" msgstr "" "Fait valider par l'expression rationnelle résultante entre *m* et *n* " "répétitions de l'expression qui précède, cherchant à en valider le moins " -"possible. Il s'agit de la version non gourmande du précédent qualificateur. " +"possible. Il s'agit de la version non gourmande du précédent quantificateur. " "Par exemple, dans la chaîne de 6 caractères ``'aaaaaa'``, ``a{3,5}`` " "trouvera 5 caractères ``'a'``, alors que ``a{3,5}?`` n'en trouvera que 3." @@ -679,9 +673,8 @@ msgstr "" "l'expression." #: library/re.rst:341 -#, fuzzy msgid "This construction can only be used at the start of the expression." -msgstr "Correspond uniquement au début d'une chaîne de caractères." +msgstr "Cette construction ne peut être utilisée qu'au début d'une chaîne de caractères." #: library/re.rst:350 msgid "``(?:...)``" @@ -755,9 +748,8 @@ msgstr "" "groupe." #: library/re.rst:391 -#, fuzzy msgid "``(?>...)``" -msgstr "``(?...)``" +msgstr "``(?>...)``" #: library/re.rst:379 msgid "" @@ -848,7 +840,8 @@ msgstr "``\\g<1>``" #: library/re.rst:420 msgid "Group names containing non-ASCII characters in bytes patterns." -msgstr "" +msgstr "Les noms de groupe qui contiennent des caractères non-ASCII" +"dans des motifs d'octets (type *bytes*)." #: library/re.rst:427 msgid "``(?P=name)``" @@ -977,7 +970,8 @@ msgstr "" #: library/re.rst:495 msgid "Group *id* containing anything except ASCII digits." -msgstr "" +msgstr "Identifiant ``id`` de groupe contenant autre chose que des chiffres" +"ASCII." #: library/re.rst:499 msgid "" @@ -1168,15 +1162,14 @@ msgid "``\\w``" msgstr "``\\w``" #: library/re.rst:592 -#, fuzzy msgid "" "Matches Unicode word characters; this includes alphanumeric characters (as " "defined by :meth:`str.isalnum`) as well as the underscore (``_``). If the :" "const:`ASCII` flag is used, only ``[a-zA-Z0-9_]`` is matched." msgstr "" -"Valide les caractères Unicode de mot ; cela inclut la plupart des caractères " -"qui peuvent être compris dans un mot d'une quelconque langue, aussi bien que " -"les nombres et les tirets bas. Si l'option :const:`ASCII` est utilisée, " +"Valide les caractères Unicode de mot ; cela inclut les caractères alphanumériques " +"(tels que définis par :meth:`str.isalnum`), ainsi que les tirets bas(``_``). " +"Si l'option :const:`ASCII` est utilisée, " "seuls les caractères de la classe ``[a-zA-Z0-9_]`` sont validés." #: library/re.rst:597 @@ -1454,7 +1447,6 @@ msgstr "" "l'exception du saut de ligne. Correspond à l'option de groupe ``(?s)``." #: library/re.rst:782 -#, fuzzy msgid "" "This flag allows you to write regular expressions that look nicer and are " "more readable by allowing you to visually separate logical sections of the " @@ -1470,9 +1462,10 @@ msgstr "" "présentent mieux et sont plus lisibles en vous permettant de séparer " "visuellement les sections logiques du motif et d'ajouter des commentaires. " "Les caractères d'espacement à l'intérieur du motif sont ignorés, sauf à " -"l'intérieur des classes de caractères ou quand précédés d'un *backslash* non " -"échappé, ou dans des séquences comme ``*?``, ``(?:`` or ``(?P<...>``. Quand " -"une ligne contient un ``#`` qui n'est pas dans une classe de caractères ou " +"l'intérieur des classes de caractères ou quand ils sont précédés d'un *backslash* " +"non échappé, ou dans des séquences comme ``*?``, ``(?:`` ou ``(?P<...>``." +"Par exemple, ``(? :`` et ``* ?`` ne sont pas autorisés. Quand une ligne" +"contient un ``#`` qui n'est ni dans une classe de caractères, ni " "précédé d'un *backslash* non échappé, tous les caractères depuis le ``#`` le " "plus à gauche jusqu'à la fin de la ligne sont ignorés." @@ -1807,10 +1800,12 @@ msgstr "" "adjacentes à une correspondance non vide précédente." #: library/re.rst:1016 +#, fuzzy msgid "" "Group *id* containing anything except ASCII digits. Group names containing " "non-ASCII characters in bytes replacement strings." -msgstr "" +msgstr "Identifiant de groupe contenant autre chose que des chiffres" +"ASCII." #: library/re.rst:1023 msgid "" @@ -2481,21 +2476,25 @@ msgstr "search() vs. match()" msgid "" "Python offers different primitive operations based on regular expressions:" msgstr "" +"Python offre différentes opérations primitives basées sur des expressions" +"régulières." #: library/re.rst:1566 -#, fuzzy msgid ":func:`re.match` checks for a match only at the beginning of the string" -msgstr "Correspond uniquement à la fin d'une chaîne de caractères." +msgstr ":func:`re.match` cherche une correspondance uniquement au début de la" +"chaîne de caractères" #: library/re.rst:1567 msgid "" ":func:`re.search` checks for a match anywhere in the string (this is what " "Perl does by default)" -msgstr "" +msgstr ":func:`re.search` cherche une correspondance n'importe où dans" +"la chaîne de caractères (ce que fait Perl par défaut)" #: library/re.rst:1569 msgid ":func:`re.fullmatch` checks for entire string to be a match" -msgstr "" +msgstr ":func:`re.fullmatch` cherche une correspondance avec l'intégralité" +"de la chaîne de caractères." #: library/re.rst:1581 msgid "" diff --git a/library/sqlite3.po b/library/sqlite3.po index 2d6f7b4b..0c459f29 100644 --- a/library/sqlite3.po +++ b/library/sqlite3.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-02-12 21:25+0100\n" -"PO-Revision-Date: 2019-03-26 15:55+0100\n" +"PO-Revision-Date: 2023-02-17 18:06+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.0.6\n" +"X-Generator: Poedit 3.2.2\n" #: library/sqlite3.rst:2 msgid ":mod:`sqlite3` --- DB-API 2.0 interface for SQLite databases" @@ -52,27 +52,35 @@ msgstr "" #: library/sqlite3.rst:34 msgid "This document includes four main sections:" -msgstr "" +msgstr "Ce document inclus 4 sections principales :" #: library/sqlite3.rst:36 msgid ":ref:`sqlite3-tutorial` teaches how to use the :mod:`!sqlite3` module." msgstr "" +":ref:`tutoriel sqlite3 ` explique comment utiliser le " +"module :mod:`!sqlite3`." #: library/sqlite3.rst:37 msgid "" ":ref:`sqlite3-reference` describes the classes and functions this module " "defines." msgstr "" +":ref:`référence sqlite3 ` décrit les classes et les " +"fonctions que ce module définit." #: library/sqlite3.rst:39 msgid ":ref:`sqlite3-howtos` details how to handle specific tasks." msgstr "" +":ref:`guide sqlite3 ` détaille comment gérer des tâches " +"spécifiques." #: library/sqlite3.rst:40 msgid "" ":ref:`sqlite3-explanation` provides in-depth background on transaction " "control." msgstr "" +":ref:`explications sqlite3 ` propose un contexte " +"détaillé du contrôle de transaction." #: library/sqlite3.rst:47 msgid "https://www.sqlite.org" @@ -104,7 +112,7 @@ msgstr "PEP écrite par Marc-André Lemburg." #: library/sqlite3.rst:66 msgid "Tutorial" -msgstr "" +msgstr "Tutoriel" #: library/sqlite3.rst:68 msgid "" @@ -112,6 +120,10 @@ msgid "" "basic :mod:`!sqlite3` functionality. It assumes a fundamental understanding " "of database concepts, including `cursors`_ and `transactions`_." msgstr "" +"Dans ce tutoriel, vous allez créer une base de données des films des Monty " +"Python en utilisant les fonctionnalités de base de :mod:`!sqlite3`. Cela " +"nécessite une compréhension élémentaire des concepts des bases de données, " +"notamment les `curseurs`_ et les `transactions`_." #: library/sqlite3.rst:73 msgid "" @@ -120,12 +132,19 @@ msgid "" "create a connection to the database :file:`tutorial.db` in the current " "working directory, implicitly creating it if it does not exist:" msgstr "" +"Tout d’abord, nous devons créer une nouvelle base de données et ouvrir une " +"connexion à la base de données pour permettre à :mod:`!sqlite3` de " +"travailler avec elle. Appelez :func:`sqlite3.connect` pour créer une " +"connexion à la base de données :file:`tutorial.db` dans le répertoire de " +"travail actuel, en la créant implicitement si elle n’existe pas :" #: library/sqlite3.rst:84 msgid "" "The returned :class:`Connection` object ``con`` represents the connection to " "the on-disk database." msgstr "" +"L’objet :class:`Connection` renvoyé — ``con`` — représente la connexion à la " +"base de données sur disque." #: library/sqlite3.rst:87 msgid "" @@ -133,6 +152,9 @@ msgid "" "will need to use a database cursor. Call :meth:`con.cursor() ` to create the :class:`Cursor`:" msgstr "" +"Afin d’exécuter les instructions SQL et de récupérer les résultats des " +"requêtes SQL, nous devrons utiliser un curseur de base de données. Appelez :" +"meth:`con.cursor() ` pour créer la :class:`Cursor` :" #: library/sqlite3.rst:95 msgid "" @@ -143,6 +165,14 @@ msgid "" "types is optional. Execute the ``CREATE TABLE`` statement by calling :meth:" "`cur.execute(...) `:" msgstr "" +"Maintenant que nous avons une connexion à la base de données et un curseur, " +"nous pouvons créer une table ``movie`` avec des colonnes pour le titre, " +"l’année de sortie et la note de la critique. Pour plus de simplicité, nous " +"pouvons simplement utiliser les noms des colonnes dans la déclaration de la " +"table — grâce à la fonctionnalité de `typage flexible `_ " +"de SQLite, spécifier les types de données est facultatif. Exécutez " +"l’instruction ``CREATE TABLE`` en appelant :meth:`cur.execute(…) ` :" #: library/sqlite3.rst:111 msgid "" @@ -153,6 +183,13 @@ msgid "" "execute>`, assign the result to ``res``, and call :meth:`res.fetchone() " "` to fetch the resulting row:" msgstr "" +"Nous pouvons vérifier que la nouvelle table a été créée en interrogeant la " +"table ``sqlite_master`` intégrée à SQLite, qui devrait maintenant contenir " +"une entrée pour la définition de la table ``movie`` (voir `le schéma Table " +"`_ pour plus de détails). Exécutez cette requête en " +"appelant :meth:`cur.execute(…) `, affectez le résultat à " +"``res``, et appelez :meth:`res.fetchone() ` pour récupérer " +"la ligne résultante :" #: library/sqlite3.rst:125 msgid "" @@ -160,6 +197,10 @@ msgid "" "`tuple` containing the table's name. If we query ``sqlite_master`` for a non-" "existent table ``spam``, :meth:`!res.fetchone()` will return ``None``:" msgstr "" +"Nous pouvons voir que la table a été créée, puisque la requête retourne un :" +"class:`tuple` contenant le nom de la table. Si nous interrogeons " +"``sqlite_master`` pour une table ``spam`` inexistante, :meth:`!res." +"fetchone()`` retournera ``None`` :" #: library/sqlite3.rst:136 msgid "" @@ -167,6 +208,9 @@ msgid "" "``INSERT`` statement, once again by calling :meth:`cur.execute(...) `:" msgstr "" +"Maintenant, ajoutez deux lignes de données en tant que littéraux SQL en " +"exécutant une instruction ``INSERT``, une fois encore en appelant :meth:`cur." +"execute(…) ` :" #: library/sqlite3.rst:148 msgid "" @@ -175,6 +219,11 @@ msgid "" "controlling-transactions` for details). Call :meth:`con.commit() ` on the connection object to commit the transaction:" msgstr "" +"L’instruction ``INSERT`` ouvre implicitement une transaction, qui doit être " +"validée avant que les modifications ne soient enregistrées dans la base de " +"données (voir :ref:`contrôle des transactions SQL ` pour plus de détails). Appelez :meth:`con.commit() " +"` sur l’objet de connexion pour valider la transaction :" #: library/sqlite3.rst:158 msgid "" @@ -183,18 +232,27 @@ msgid "" "assign the result to ``res``, and call :meth:`res.fetchall() ` to return all resulting rows:" msgstr "" +"Nous pouvons vérifier que les données ont été insérées correctement en " +"exécutant une requête ``SELECT``. Utilisez la désormais familière :meth:`cur." +"execute(…) ` pour affecter le résultat à ``res``, et " +"appelez :meth:`res.fetchall() ` pour retourner toutes les " +"lignes résultantes :" #: library/sqlite3.rst:170 msgid "" "The result is a :class:`list` of two :class:`!tuple`\\s, one per row, each " "containing that row's ``score`` value." msgstr "" +"Le résultat est une :class:`liste ` de deux :class:`!tuple`\\s, une " +"par ligne, chacun contenant la valeur ``score`` de cette ligne." #: library/sqlite3.rst:173 msgid "" "Now, insert three more rows by calling :meth:`cur.executemany(...) `:" msgstr "" +"Maintenant, insérez trois lignes supplémentaires en appelant :meth:`cur." +"executemany(…) ` :" #: library/sqlite3.rst:186 msgid "" @@ -203,18 +261,28 @@ msgid "" "to bind Python values to SQL statements, to avoid `SQL injection attacks`_ " "(see :ref:`sqlite3-placeholders` for more details)." msgstr "" +"Remarquez que les placeholders ``?`` sont utilisés pour lier les ``data`` à " +"la requête. Utilisez toujours les placeholders au lieu d’:ref:`expressions " +"formatées ` pour lier les valeurs Python aux instructions " +"SQL, afin d’éviter les `injections SQL`_ (voir :ref:`placeholder SQL " +"` pour plus de détails)." #: library/sqlite3.rst:192 msgid "" "We can verify that the new rows were inserted by executing a ``SELECT`` " "query, this time iterating over the results of the query:" msgstr "" +"Nous pouvons vérifier que les nouvelles lignes ont été insérées en exécutant " +"une requête ``SELECT``, cette fois-ci en itérant sur les résultats de la " +"requête :" #: library/sqlite3.rst:206 msgid "" "Each row is a two-item :class:`tuple` of ``(year, title)``, matching the " "columns selected in the query." msgstr "" +"Chaque ligne est un :class:`tuple` de deux éléments ``(année, titre)``, " +"correspondant aux colonnes sélectionnées dans la requête." #: library/sqlite3.rst:209 msgid "" @@ -222,64 +290,76 @@ msgid "" "`con.close() ` to close the existing connection, opening a " "new one, creating a new cursor, then querying the database:" msgstr "" +"Enfin, vérifiez que la base de données a été écrite sur le disque en " +"appelant :meth:`con.close() ` pour fermer la connexion " +"existante, en ouvrir une nouvelle, créer un nouveau curseur, puis interroger " +"la base de données :" #: library/sqlite3.rst:224 msgid "" "You've now created an SQLite database using the :mod:`!sqlite3` module, " "inserted data and retrieved values from it in multiple ways." msgstr "" +"Vous avez maintenant créé une base de données SQLite à l’aide du module :mod:" +"`!sqlite3`, inséré des données et récupéré des valeurs de plusieurs façons." #: library/sqlite3.rst:236 msgid ":ref:`sqlite3-howtos` for further reading:" -msgstr "" +msgstr ":ref:`guide sqlite3 ` pour une lecture plus poussée:" #: library/sqlite3.rst:238 msgid ":ref:`sqlite3-placeholders`" -msgstr "" +msgstr ":ref:`placeholders sqlite3 `" #: library/sqlite3.rst:239 msgid ":ref:`sqlite3-adapters`" -msgstr "" +msgstr ":ref:`adaptateurs sqlite3 `" #: library/sqlite3.rst:240 msgid ":ref:`sqlite3-converters`" -msgstr "" +msgstr ":ref:`convertisseurs sqlite3 `" #: library/sqlite3.rst:557 msgid ":ref:`sqlite3-connection-context-manager`" msgstr "" +":ref:`gestionnaire de contexte de connexion sqlite3 `" #: library/sqlite3.rst:242 msgid ":ref:`sqlite3-howto-row-factory`" -msgstr "" +msgstr ":ref:`guide de fabrique de ligne sqlite3 `" #: library/sqlite3.rst:244 msgid "" ":ref:`sqlite3-explanation` for in-depth background on transaction control." msgstr "" +":ref:`explications sqlite3 ` pour un contexte détaillé " +"du contrôle de transaction." #: library/sqlite3.rst:249 msgid "Reference" -msgstr "" +msgstr "Références" #: library/sqlite3.rst:257 -#, fuzzy msgid "Module functions" -msgstr "Fonctions et constantes du module" +msgstr "Fonctions du module" #: library/sqlite3.rst:264 msgid "Open a connection to an SQLite database." -msgstr "" +msgstr "Ouvrez une connexion à une base de données SQLite." #: library/sqlite3.rst:0 msgid "Parameters" -msgstr "" +msgstr "Paramètres" #: library/sqlite3.rst:266 msgid "" "The path to the database file to be opened. Pass ``\":memory:\"`` to open a " "connection to a database that is in RAM instead of on disk." msgstr "" +"Le chemin d’accès au fichier de la base de données à ouvrir. Passez ``\":" +"memory:\"`` pour ouvrir une connexion à une base de données qui est dans la " +"RAM plutôt que sur le disque." #: library/sqlite3.rst:272 msgid "" @@ -288,6 +368,11 @@ msgid "" "transaction to modify the database, it will be locked until that transaction " "is committed. Default five seconds." msgstr "" +"Le temps (en secondes) que la connexion doit attendre avant de lever une " +"exception, si la base de données est verrouillée par une autre connexion. Si " +"une autre connexion ouvre une transaction pour modifier la base de données, " +"celle-ci sera verrouillée jusqu’à ce que cette transaction soit validée. Par " +"défaut, cinq secondes." #: library/sqlite3.rst:279 msgid "" @@ -301,6 +386,17 @@ msgid "" "class:`str` will be returned instead. By default (``0``), type detection is " "disabled." msgstr "" +"Contrôle si et comment les types de données non :ref:`nativement pris en " +"charge par SQLite ` sont recherchés pour être convertis en " +"types Python, en utilisant les convertisseurs enregistrés avec :func:" +"`register_converter`. Définissez-le à n’importe quelle combinaison (en " +"utilisant ``|``, opérateurs bit-à-bit OR) de :const:`PARSE_DECLTYPES` et :" +"const:`PARSE_COLNAMES` pour activer ceci. Les noms de colonnes ont la " +"priorité sur les types déclarés si les deux drapeaux sont activés. Les types " +"ne peuvent pas être détectés pour les champs générés (par exemple " +"``max(data)``), même si le paramètre *detect_types* est activé ; :class:" +"`str` sera retourné à la place. Par défaut (``0``), la détection des types " +"est désactivée." #: library/sqlite3.rst:293 msgid "" @@ -310,6 +406,12 @@ msgid "" "opening transactions implicitly. See :ref:`sqlite3-controlling-transactions` " "for more." msgstr "" +"L’attribut :attr:`~Connection.isolation_level` de la connexion, contrôlant " +"si et comment les transactions sont ouvertes implicitement. Peut être " +"``\"DEFERRED\"`` (par défaut), ``\"EXCLUSIVE\"`` ou ``\"IMMEDIATE\"`` ; ou " +"``None`` pour désactiver l’ouverture implicite des transactions. Voir :ref:" +"`contrôle des transactions sqlite3 ` pour " +"en savoir plus." #: library/sqlite3.rst:301 msgid "" @@ -319,18 +421,29 @@ msgid "" "operations may need to be serialized by the user to avoid data corruption. " "See :attr:`threadsafety` for more information." msgstr "" +"Si ``True`` (par défaut), :exc:`ProgrammingError` sera levée si la connexion " +"à la base de données est utilisée par un thread autre que celui qui l’a " +"créée. Si ``False``, la connexion peut être utilisée par plusieurs threads ; " +"les opérations d’écriture devront peut-être être sérialisées par " +"l’utilisateur pour éviter la corruption des données. Voir :attr:`sécurité " +"des threads ` pour plus d’informations." #: library/sqlite3.rst:310 msgid "" "A custom subclass of :class:`Connection` to create the connection with, if " "not the default :class:`Connection` class." msgstr "" +"Une sous-classe personnalisée de :class:`Connection` pour créer la " +"connexion, si ce n’est pas la classe par défaut :class:`Connection`." #: library/sqlite3.rst:314 msgid "" "The number of statements that :mod:`!sqlite3` should internally cache for " "this connection, to avoid parsing overhead. By default, 128 statements." msgstr "" +"Le nombre d’instructions que :mod:`!sqlite3` doit mettre en cache en interne " +"pour cette connexion, afin d’éviter les surcharges d’analyse. Par défaut, " +"128 instructions." #: library/sqlite3.rst:319 msgid "" @@ -340,6 +453,12 @@ msgid "" "absolute. The query string allows passing parameters to SQLite, enabling " "various :ref:`sqlite3-uri-tricks`." msgstr "" +"Si elle a pour valeur ``True``, la base de données est interprétée comme un :" +"abbr:`URI (Uniform Resource Identifier)` avec un chemin d’accès au fichier " +"et une chaîne de requête facultative. La partie schéma *doit* être ``\"file:" +"\"``, et le chemin peut être relatif ou absolu. La chaîne d’interrogation " +"permet de passer des paramètres à SQLite, ce qui permet d’activer diverses :" +"ref:`astuces d’URI sqlite3 `." #: library/sqlite3.rst:0 #, fuzzy @@ -366,6 +485,8 @@ msgstr "" msgid "" "*database* can now also be a :term:`path-like object`, not only a string." msgstr "" +"*database* peut maintenant aussi être un :term:`objet de type chemin `, et pas seulement une chaîne de caractères." #: library/sqlite3.rst:339 msgid "The ``sqlite3.connect/handle`` auditing event." @@ -378,9 +499,13 @@ msgid "" "performed, other than checking that there are no unclosed string literals " "and the statement is terminated by a semicolon." msgstr "" +"Renvoie ``True`` si la déclaration de la chaîne semble contenir une ou " +"plusieurs déclarations SQL complètes. Aucune vérification syntaxique ou " +"analyse syntaxique d’aucune sorte n’est effectuée, si ce n’est la " +"vérification qu’il n’y a pas de chaîne littérale non fermée et que " +"l’instruction se termine par un point-virgule." #: library/sqlite3.rst:350 -#, fuzzy msgid "For example:" msgstr "Exemple :" @@ -390,6 +515,10 @@ msgid "" "entered text seems to form a complete SQL statement, or if additional input " "is needed before calling :meth:`~Cursor.execute`." msgstr "" +"Cette fonction peut être utile pendant la saisie en ligne de commande pour " +"déterminer si le texte saisi semble former une instruction SQL complète, ou " +"si une saisie supplémentaire est nécessaire avant d’appeler :meth:`~Cursor." +"execute`." #: library/sqlite3.rst:365 msgid "" @@ -399,12 +528,22 @@ msgid "" "*flag* set to ``True``. Afterwards, you will get tracebacks from callbacks " "on :data:`sys.stderr`. Use ``False`` to disable the feature again." msgstr "" +"Activer ou désactiver les traces des fonctions de rappel. Par défaut, vous " +"n’obtiendrez pas de traces de pile d’appels dans les fonctions définies par " +"l’utilisateur, les agrégats, les convertisseurs, les fonctions de rappel des " +"mécanismes d’autorisation, etc. Si vous voulez les déboguer, vous pouvez " +"appeler cette fonction avec *flag* à ``True``. Ensuite, vous obtiendrez les " +"traces des fonctions de rappel sur :data:`sys.stderr`. Utilisez ``False`` " +"pour désactiver à nouveau cette fonctionnalité." #: library/sqlite3.rst:372 msgid "" "Register an :func:`unraisable hook handler ` for an " "improved debug experience:" msgstr "" +"Enregistrez un :func:`gestionnaire de point d’entrée *non levable* ` (*unraisable* en anglais) pour une expérience de débogage " +"améliorée :" #: library/sqlite3.rst:397 msgid "" @@ -413,6 +552,10 @@ msgid "" "its sole argument, and must return a value of a :ref:`type that SQLite " "natively understands `." msgstr "" +"Enregistre un *adaptateur* appelable pour adapter le type Python *type* en " +"un type SQLite. L’adaptateur est appelé avec un objet Python de type *type* " +"comme unique argument, et doit retourner une valeur d’un :ref:`type que " +"SQLite comprend nativement `." #: library/sqlite3.rst:405 msgid "" @@ -423,15 +566,22 @@ msgid "" "parameter *detect_types* of :func:`connect` for information regarding how " "type detection works." msgstr "" +"Enregistre le *convertisseur* appellable pour convertir les objets SQLite de " +"type *typename* en un objet Python d’un type spécifique. Le convertisseur " +"est invoqué pour toutes les valeurs SQLite de type *typename* ; on lui passe " +"un objet :class:`bytes` et il doit retourner un objet du type Python désiré. " +"Consultez le paramètre *detect_types* de :func:`connect` pour des " +"informations sur le fonctionnement de la détection des types." #: library/sqlite3.rst:413 msgid "" "Note: *typename* and the name of the type in your query are matched case-" "insensitively." msgstr "" +"Remarque : *typename* et le nom du type dans votre requête sont comparés " +"sans tenir compte de la casse." #: library/sqlite3.rst:420 -#, fuzzy msgid "Module constants" msgstr "Fonctions et constantes du module" diff --git a/library/time.po b/library/time.po index 9029266c..f56dc436 100644 --- a/library/time.po +++ b/library/time.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2020-12-03 22:31+0100\n" +"PO-Revision-Date: 2023-02-17 17:29+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.2.4\n" +"X-Generator: Poedit 3.2.2\n" #: library/time.rst:2 msgid ":mod:`time` --- Time access and conversions" @@ -49,15 +49,13 @@ msgstr "" "terminologie et aux conventions." #: library/time.rst:24 -#, fuzzy msgid "" "The :dfn:`epoch` is the point where the time starts, the return value of " "``time.gmtime(0)``. It is January 1, 1970, 00:00:00 (UTC) on all platforms." msgstr "" -"L':dfn:`epoch` est le point de départ du temps et dépend de la plate-forme. " -"Pour Unix, *epoch* est le 1\\ :sup:`er` janvier 1970 à 00:00:00 (UTC). Pour " -"savoir comment est définie *epoch* sur une plate-forme donnée, regardez " -"``time.gmtime(0)``." +"L':dfn:`epoch` est le point de départ du temps, le résultat de ``time." +"gmtime(0)`` est le 1\\ :sup:`er` janvier 1970 à 00:00:00 (UTC) pour toutes " +"les plateformes." #: library/time.rst:31 msgid "" @@ -71,14 +69,13 @@ msgstr "" "toutes les plates-formes conformes POSIX." #: library/time.rst:38 -#, fuzzy msgid "" "The functions in this module may not handle dates and times before the " "epoch_ or far in the future. The cut-off point in the future is determined " "by the C library; for 32-bit systems, it is typically in 2038." msgstr "" "Les fonctions de ce module peuvent ne pas gérer les dates et heures " -"antérieures à *epoch* ou dans un avenir lointain. Le seuil du futur est " +"antérieures à epoch_ ou dans un avenir lointain. Le seuil du futur est " "déterminé par la bibliothèque C ; pour les systèmes 32 bits, il s’agit " "généralement de 2038." @@ -289,18 +286,16 @@ msgstr "" "comportement indéfini, tel qu’une erreur de segmentation." #: library/time.rst:None -#, fuzzy msgid ":ref:`Availability `: Unix" -msgstr ":ref:`Disponibilité ` : Unix." +msgstr ":ref:`Disponibilité ` : Unix" #: library/time.rst:149 -#, fuzzy msgid "" "See the man page for :manpage:`pthread_getcpuclockid(3)` for further " "information." msgstr "" -":ref:`Disponibilité ` : Unix (regardez la page man pour :" -"manpage:`pthread_getcpuclockid(3)` pour plus d’information)." +"Se reporter à la page de manuel :manpage:`pthread_getcpuclockid(3)` pour " +"plus d’informations." #: library/time.rst:156 msgid "" @@ -355,15 +350,14 @@ msgstr "" "Similaire à :func:`clock_settime` mais définit l’heure avec des nanosecondes." #: library/time.rst:210 -#, fuzzy msgid "" "Convert a time expressed in seconds since the epoch_ to a string of a form: " "``'Sun Jun 20 23:21:05 1993'`` representing local time. The day field is two " "characters long and is space padded if the day is a single digit, e.g.: " "``'Wed Jun 9 04:26:40 1993'``." msgstr "" -"Convertit une heure exprimée en secondes depuis *epoch* en une chaîne " -"représentant l’heure locale, sous la forme suivante : ``'Sun Jun 20 23:21:05 " +"Convertit une heure exprimée en secondes depuis epoch_ en une chaîne " +"représentant l’heure locale sous la forme suivante : ``'Sun Jun 20 23:21:05 " "1993'``. Le numéro du jour est un champ de deux caractères complété par une " "espace si celui-ci n'a qu'un seul chiffre, par exemple : ``'Wed Jun 9 " "04:26:40 1993'``." @@ -443,7 +437,6 @@ msgid "*resolution*: The resolution of the clock in seconds (:class:`float`)" msgstr "*resolution* : La résolution de l’horloge en secondes (:class:`float`)" #: library/time.rst:248 -#, fuzzy msgid "" "Convert a time expressed in seconds since the epoch_ to a :class:" "`struct_time` in UTC in which the dst flag is always zero. If *secs* is not " @@ -452,7 +445,7 @@ msgid "" "the :class:`struct_time` object. See :func:`calendar.timegm` for the inverse " "of this function." msgstr "" -"Convertit un temps exprimé en secondes depuis *epoch* en un :class:" +"Convertit un temps exprimé en secondes depuis epoch_ en un :class:" "`struct_time` au format UTC dans lequel le drapeau *dst* est toujours égal à " "zéro. Si *secs* n’est pas fourni ou vaut :const:`None`, l’heure actuelle " "renvoyée par :func:`.time` est utilisée. Les fractions de seconde sont " @@ -502,7 +495,6 @@ msgstr "" "plus proche pour laquelle il peut générer une heure dépend de la plate-forme." #: library/time.rst:283 -#, fuzzy msgid "" "Return the value (in fractional seconds) of a monotonic clock, i.e. a clock " "that cannot go backwards. The clock is not affected by system clock " @@ -528,11 +520,8 @@ msgstr "" "système." #: library/time.rst:296 -#, fuzzy msgid "On macOS, the function is now system-wide." -msgstr "" -"La fonction est maintenant toujours disponible et toujours à l’échelle du " -"système." +msgstr "Sur macOS, la fonction est maintenant toujours à l’échelle du système." #: library/time.rst:302 msgid "Similar to :func:`monotonic`, but return time as nanoseconds." @@ -541,7 +530,6 @@ msgstr "" "nanosecondes." #: library/time.rst:311 -#, fuzzy msgid "" "Return the value (in fractional seconds) of a performance counter, i.e. a " "clock with the highest available resolution to measure a short duration. It " @@ -897,7 +885,6 @@ msgid "``%z``" msgstr "``%z``" #: library/time.rst:481 -#, fuzzy msgid "" "Time zone offset indicating a positive or negative time difference from UTC/" "GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M " @@ -906,17 +893,17 @@ msgstr "" "Décalage de fuseau horaire indiquant une différence de temps positive ou " "négative par rapport à UTC / GMT de la forme *+HHMM* ou *-HHMM*, où H " "représente les chiffres des heures décimales et M, les chiffres des minutes " -"décimales [*-23:59*, *+23:59*]." +"décimales [*-23:59*, *+23:59*] [1]_" #: library/time.rst:487 msgid "``%Z``" msgstr "``%Z``" #: library/time.rst:487 -#, fuzzy msgid "Time zone name (no characters if no time zone exists). Deprecated. [1]_" msgstr "" -"Nom du fuseau horaire (pas de caractères s’il n’y a pas de fuseau horaire)." +"Nom du fuseau horaire (pas de caractères s’il n’y a pas de fuseau horaire). " +"Obsolète. [1]_" #: library/time.rst:490 msgid "``%%``" @@ -960,13 +947,12 @@ msgstr "" "et l’année sont spécifiés." #: library/time.rst:508 -#, fuzzy msgid "" "Here is an example, a format for dates compatible with that specified in " "the :rfc:`2822` Internet email standard. [1]_ ::" msgstr "" "Voici un exemple de format de date compatible avec celui spécifié dans la " -"norme de courrier électronique Internet suivante :rfc:`2822`. [#]_ ::" +"norme de courrier électronique Internet suivante :rfc:`2822`. [1]_ ::" #: library/time.rst:515 msgid "" @@ -1236,7 +1222,6 @@ msgstr "" "incorrect, une exception :exc:`TypeError` est levé." #: library/time.rst:609 -#, fuzzy msgid "" "Return the time in seconds since the epoch_ as a floating point number. The " "handling of `leap seconds`_ is platform dependent. On Windows and most Unix " @@ -1245,13 +1230,11 @@ msgid "" "org/wiki/Unix_time>`_." msgstr "" "Renvoie le temps en secondes depuis epoch_ sous forme de nombre à virgule " -"flottante. La date spécifique de *epoch* et le traitement des secondes " -"intercalaires (`leap seconds`_) dépendent de la plate-forme. Sous Windows et " -"la plupart des systèmes Unix, *epoch* est le 1\\ :sup:`er` janvier 1970, " -"00:00:00 (UTC) et les secondes intercalaires ne sont pas comptées dans le " -"temps en secondes depuis *epoch*. Ceci est communément appelé `Heure Unix " -"`_. Pour savoir quelle est *epoch* " -"sur une plate-forme donnée, consultez ``gmtime(0)``." +"flottante. Le traitement des secondes intercalaires (`leap seconds`_) dépend " +"de la plate-forme. Sous Windows et la plupart des systèmes Unix, les " +"secondes intercalaires ne sont pas comptées dans le temps en secondes depuis " +"epoch_. Ceci est communément appelé `Heure Unix `_." #: library/time.rst:615 msgid "" @@ -1299,7 +1282,6 @@ msgstr "" "epoch_ sous la forme d'un entier." #: library/time.rst:647 -#, fuzzy msgid "" "Return the value (in fractional seconds) of the sum of the system and user " "CPU time of the current thread. It does not include time elapsed during " @@ -1321,16 +1303,12 @@ msgid "" msgstr "" #: library/time.rst:None -#, fuzzy msgid ":ref:`Availability `: Linux, Unix, Windows." -msgstr ":ref:`Disponibilité ` : Linux." +msgstr ":ref:`Disponibilité ` : Linux, Unix, Windows." #: library/time.rst:658 -#, fuzzy msgid "Unix systems supporting ``CLOCK_THREAD_CPUTIME_ID``." -msgstr "" -":ref:`Disponibilité ` : Systèmes Windows, Linux, Unix prenant " -"en charge ``CLOCK_THREAD_CPUTIME_ID``." +msgstr "Systèmes prenant en charge ``CLOCK_THREAD_CPUTIME_ID``." #: library/time.rst:665 msgid "Similar to :func:`thread_time` but return time as nanoseconds." @@ -1527,9 +1505,8 @@ msgstr "" "modifiée à l’aide de ``settimeofday()`` ou similaire." #: library/time.rst:777 -#, fuzzy msgid ":ref:`Availability `: Linux >= 2.6.39." -msgstr ":ref:`Disponibilité ` : Linux." +msgstr ":ref:`Disponibilité ` : Linux >= 2.6.39." #: library/time.rst:783 msgid "" @@ -1563,7 +1540,6 @@ msgstr "" "brute qui n’est pas soumise aux ajustements NTP." #: library/time.rst:808 -#, fuzzy msgid ":ref:`Availability `: Linux >= 2.6.28, macOS >= 10.12." msgstr "" ":ref:`Disponibilité ` : Linux 2.6.28 et ultérieur, MacOS 10.12 " @@ -1574,11 +1550,10 @@ msgid "High-resolution per-process timer from the CPU." msgstr "Minuterie haute résolution par processus du CPU." #: library/time.rst:826 -#, fuzzy msgid ":ref:`Availability `: FreeBSD, NetBSD >= 7, OpenBSD." msgstr "" -":ref:`Disponibilité ` : FreeBSD, NetBSD 7 ou version " -"ultérieure, OpenBSD." +":ref:`Disponibilité ` : FreeBSD, NetBSD 7 et ultérieur, " +"OpenBSD." #: library/time.rst:831 msgid "" @@ -1615,11 +1590,9 @@ msgstr "" "disponibilité, à la fois absolue et à intervalle." #: library/time.rst:856 -#, fuzzy msgid ":ref:`Availability `: FreeBSD, OpenBSD >= 5.5." msgstr "" -":ref:`Disponibilité ` : FreeBSD, OpenBSD 5.5 ou version " -"ultérieure." +":ref:`Disponibilité ` : FreeBSD, OpenBSD 5.5 et ultérieur." #: library/time.rst:862 msgid "" @@ -1633,9 +1606,8 @@ msgstr "" "veille." #: library/time.rst:867 -#, fuzzy msgid ":ref:`Availability `: macOS >= 10.12." -msgstr ":ref:`Disponibilité ` : MacOS 10.12 et ultérieur." +msgstr ":ref:`Disponibilité ` : macOS 10.12 et ultérieur." #: library/time.rst:870 msgid "" @@ -1750,7 +1722,6 @@ msgid "Footnotes" msgstr "Notes" #: library/time.rst:934 -#, fuzzy msgid "" "The use of ``%Z`` is now deprecated, but the ``%z`` escape that expands to " "the preferred hour/minute offset is not supported by all ANSI C libraries. " diff --git a/library/turtle.po b/library/turtle.po index 37769ce4..7d865681 100644 --- a/library/turtle.po +++ b/library/turtle.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-10-18 16:14+0200\n" +"PO-Revision-Date: 2023-02-17 15:37+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.4.2\n" +"X-Generator: Poedit 3.0.1\n" #: library/turtle.rst:3 msgid ":mod:`turtle` --- Turtle graphics" @@ -1830,8 +1830,8 @@ msgid "" "*picname* is ``\"nopic\"``, delete background image, if present. If " "*picname* is ``None``, return the filename of the current backgroundimage. ::" msgstr "" -"Défini l'image de fond ou renvoie l'image de fond actuelle. Si *picname* est " -"un nom de fichier, cette image et mis en image de fond. Si *picname* est " +"Définit l'image de fond ou renvoie l'image de fond actuelle. Si *picname* " +"est un nom de fichier, cette image et mis en image de fond. Si *picname* est " "``\"nopic\"``, l'image de fond sera supprimée si présente. SI *picname* est " "``None``, le nom du fichier de l'image de fond actuelle est renvoyé. ::" @@ -1949,7 +1949,7 @@ msgid "" "the time interval between two consecutive canvas updates.) The longer the " "drawing delay, the slower the animation." msgstr "" -"Défini ou renvoie le délai (*delay*) de dessin en millisecondes. (Cet " +"Définit ou renvoie le délai (*delay*) de dessin en millisecondes. (Cet " "approximativement le temps passé entre deux mises à jour du canevas.) Plus " "le délai est long, plus l'animation sera lente." @@ -1969,11 +1969,11 @@ msgid "" "arguments, returns the currently stored value of n. Second argument sets " "delay value (see :func:`delay`)." msgstr "" -"Active/désactive les animations des tortues et défini le délai pour mettre à " -"jour les dessins.Si *n* est passé, seulement les n-ièmes mises à jours " +"Active/désactive les animations des tortues et définit le délai pour mettre " +"à jour les dessins.Si *n* est passé, seulement les n-ièmes mises à jours " "régulières de l'écran seront vraiment effectuées. (Peut être utilisé pour " "accélérer le dessin de graphiques complexes.) Lorsqu'appelé sans arguments, " -"renvoie la valeur actuelle de *n*. Le deuxième argument défini la valeur du " +"renvoie la valeur actuelle de *n*. Le deuxième argument définit la valeur du " "délai (voir :func:`delay`)." #: library/turtle.rst:1760 @@ -2183,12 +2183,11 @@ msgid "one of the values 1.0 or 255" msgstr "l'une des valeurs suivantes : 1.0 ou 255" #: library/turtle.rst:1944 -#, fuzzy msgid "" "Return the colormode or set it to 1.0 or 255. Subsequently *r*, *g*, *b* " "values of color triples have to be in the range 0..*cmode*." msgstr "" -"Renvoie le mode de couleur (*colormode*) ou le défini à 1.0 ou 255. Les " +"Renvoie le mode de couleur (*colormode*) ou le définit à 1.0 ou 255. Les " "valeurs *r*, *g* et *b* doivent aussi être dans la gamme ``0``\\ ..\\ " "*cmode*." @@ -2346,7 +2345,7 @@ msgstr "" #: library/turtle.rst:2096 msgid "Set title of turtle window to *titlestring*." -msgstr "Défini le titre de la fenêtre de la tortue à *titlestring*." +msgstr "Définit le titre de la fenêtre de la tortue comme *titlestring*." #: library/turtle.rst:2105 msgid "Public classes" diff --git a/library/typing.po b/library/typing.po index a0a6fda5..9306b0b9 100644 --- a/library/typing.po +++ b/library/typing.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-11-21 22:01+0100\n" -"Last-Translator: Jean-Michel Laprise \n" +"PO-Revision-Date: 2023-02-17 16:13+0100\n" +"Last-Translator: Nicolas Gibaud \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.4.3\n" +"X-Generator: Poedit 2.3\n" #: library/typing.rst:3 msgid ":mod:`typing` --- Support for type hints" @@ -69,12 +69,19 @@ msgid "" "`typing_extensions `_ package " "provides backports of these new features to older versions of Python." msgstr "" +"Le module ``typing`` est fréquemment enrichi de nouvelles fonctionnalités. " +"Le package `typing_extensions `_ fournit des rétro-portages de ces fonctionnalités vers les anciennes " +"versions de Python." #: library/typing.rst:39 msgid "" "For a summary of deprecated features and a deprecation timeline, please see " "`Deprecation Timeline of Major Features`_." msgstr "" +"Pour un résumé des fonctionnalités obsolètes et leur planification " +"d'obsolescence, consultez les `Etapes d'Obsolescence des Fonctionnalités " +"Majeures`_." #: library/typing.rst:44 msgid "" @@ -82,10 +89,15 @@ msgid "" "reference for type system features, useful typing related tools and typing " "best practices." msgstr "" +"La documentation https://typing.readthedocs.io/ est une référence utile pour " +"les fonctionnalités du système de types, les outils liés au typage et les " +"bonnes pratiques de typage.La documentation sur https://typing.readthedocs." +"io/ sert de référence pour les fonctionnalités, les outils utiles et les " +"meilleures pratiques liés au système de typage." #: library/typing.rst:51 msgid "Relevant PEPs" -msgstr "" +msgstr "PEPs pertinentes" #: library/typing.rst:53 msgid "" @@ -93,147 +105,165 @@ msgid "" "number of PEPs have modified and enhanced Python's framework for type " "annotations. These include:" msgstr "" +"Depuis l'introduction initiale des annotations de type dans les :pep:`484` " +"et :pep:`483`, plusieurs PEPs ont modifié et amélioré le framework " +"d'annotation de type. Cela inclut :" #: library/typing.rst:58 msgid ":pep:`526`: Syntax for Variable Annotations" -msgstr "" +msgstr ":pep:`526` : Syntaxe pour les Annotations de Variables" #: library/typing.rst:58 msgid "" "*Introducing* syntax for annotating variables outside of function " "definitions, and :data:`ClassVar`" msgstr "" +"*Introduction* d'une syntaxe permettant d'annoter les variables autrement " +"qu'au sein de la définition d'une fonction et de :data:`ClassVar`" #: library/typing.rst:61 msgid ":pep:`544`: Protocols: Structural subtyping (static duck typing)" msgstr "" +":pep:`544`: Protocoles : Sous-typage Structurel (*duck-typing* statique)" #: library/typing.rst:61 msgid "" "*Introducing* :class:`Protocol` and the :func:" "`@runtime_checkable` decorator" msgstr "" +"*Ajout* de :class:`Protocol` et du décorateur :func:" +"`@runtime_checkable`" #: library/typing.rst:64 msgid ":pep:`585`: Type Hinting Generics In Standard Collections" -msgstr "" +msgstr ":pep:`585`: Annotations de Type Générique dans les Collections Natives" #: library/typing.rst:64 msgid "" "*Introducing* :class:`types.GenericAlias` and the ability to use standard " "library classes as :ref:`generic types`" msgstr "" +"*Ajout* de :class:`types.GenericAlias` et de la possibilité d'utiliser les " +"classes de bibliothèques natives comme les :ref:`types génériques`" #: library/typing.rst:66 msgid ":pep:`586`: Literal Types" -msgstr "" +msgstr ":pep:`586`: Types Littéraux" #: library/typing.rst:67 msgid "*Introducing* :data:`Literal`" -msgstr "" +msgstr "*Ajout* de :data:`Literal`" #: library/typing.rst:68 msgid "" ":pep:`589`: TypedDict: Type Hints for Dictionaries with a Fixed Set of Keys" msgstr "" +":pep:`589`: TypedDict: Annotations de Type pour les Dictionnaires ayant un " +"Ensemble Fixe de Clés" #: library/typing.rst:69 msgid "*Introducing* :class:`TypedDict`" -msgstr "" +msgstr "*Ajout* de :class:`TypedDict`" #: library/typing.rst:70 msgid ":pep:`591`: Adding a final qualifier to typing" -msgstr "" +msgstr ":pep:`591`: Ajout d'un qualificatif final au typage" #: library/typing.rst:71 msgid "*Introducing* :data:`Final` and the :func:`@final` decorator" -msgstr "" +msgstr "*Ajout* de :data:`Final` et du décorateur :func:`@final`" #: library/typing.rst:72 msgid ":pep:`593`: Flexible function and variable annotations" -msgstr "" +msgstr ":pep:`593`: fonction Flexible et annotations de variables" #: library/typing.rst:73 msgid "*Introducing* :data:`Annotated`" -msgstr "" +msgstr "*Ajout* de :data:`Annotated`" #: library/typing.rst:76 msgid ":pep:`604`: Allow writing union types as ``X | Y``" -msgstr "" +msgstr ":pep:`604`: Permettre l'écriture de types union tels que ``X | Y``" #: library/typing.rst:75 msgid "" "*Introducing* :data:`types.UnionType` and the ability to use the binary-or " "operator ``|`` to signify a :ref:`union of types`" msgstr "" +"*Ajout* de :data:`types.UnionType` et la possibilité d'utiliser l'opérateur " +"binaire ``|`` (*ou*) pour signifier :ref:`union of types`" #: library/typing.rst:78 msgid ":pep:`612`: Parameter Specification Variables" -msgstr "" +msgstr ":pep:`612`: Variables de Spécification de Paramètre" #: library/typing.rst:79 msgid "*Introducing* :class:`ParamSpec` and :data:`Concatenate`" -msgstr "" +msgstr "*Ajout* de :class:`ParamSpec` et de :data:`Concatenate`" #: library/typing.rst:80 #, fuzzy msgid ":pep:`613`: Explicit Type Aliases" -msgstr "Voir la :pep:`484` pour plus de détails." +msgstr ":pep:`613`: Alias de Type Explicites" #: library/typing.rst:81 msgid "*Introducing* :data:`TypeAlias`" -msgstr "" +msgstr "*Ajout* de :data:`TypeAlias`" #: library/typing.rst:82 msgid ":pep:`646`: Variadic Generics" -msgstr "" +msgstr ":pep:`646`: Génériques Variadiques" #: library/typing.rst:83 msgid "*Introducing* :data:`TypeVarTuple`" -msgstr "" +msgstr "*Ajout* de :data:`TypeVarTuple`" #: library/typing.rst:84 msgid ":pep:`647`: User-Defined Type Guards" -msgstr "" +msgstr ":pep:`647`: Gardes de Types Définies par l'Utilisateur" #: library/typing.rst:85 msgid "*Introducing* :data:`TypeGuard`" -msgstr "" +msgstr "*Ajout* de :data:`TypeGuard`" #: library/typing.rst:86 msgid "" ":pep:`655`: Marking individual TypedDict items as required or potentially " "missing" msgstr "" +":pep:`655`: Marquer les items individuels TypedDict comme nécessaires ou " +"potentiellement manquants" #: library/typing.rst:87 msgid "*Introducing* :data:`Required` and :data:`NotRequired`" -msgstr "" +msgstr "*Ajout* de :data:`Required` et de :data:`NotRequired`" #: library/typing.rst:88 msgid ":pep:`673`: Self type" -msgstr "" +msgstr ":pep:`673`: Type self" #: library/typing.rst:89 msgid "*Introducing* :data:`Self`" -msgstr "" +msgstr "*Ajout* de :data:`Self`" #: library/typing.rst:90 msgid ":pep:`675`: Arbitrary Literal String Type" -msgstr "" +msgstr ":pep:`675`: Type String Littéral Arbitraire" #: library/typing.rst:91 msgid "*Introducing* :data:`LiteralString`" -msgstr "" +msgstr "*Ajout* de :data:`LiteralString`" #: library/typing.rst:93 msgid ":pep:`681`: Data Class Transforms" -msgstr "" +msgstr ":pep:`681`: Transformateurs de Classes de Données" #: library/typing.rst:93 msgid "" "*Introducing* the :func:`@dataclass_transform` decorator" msgstr "" +"*Ajout* du décorateur :func:`@dataclass_transform`" #: library/typing.rst:98 msgid "Type aliases" @@ -245,7 +275,7 @@ msgid "" "A type alias is defined by assigning the type to the alias. In this example, " "``Vector`` and ``list[float]`` will be treated as interchangeable synonyms::" msgstr "" -"Un alias de type est défini en assignant le type à l'alias. Dans cet " +"Un alias de type est défini en affectant le type à l'alias. Dans cet " "exemple, ``Vector`` et ``List[float]`` sont traités comme des synonymes " "interchangeables ::" @@ -262,7 +292,7 @@ msgid "" "Note that ``None`` as a type hint is a special case and is replaced by " "``type(None)``." msgstr "" -"Notez que ``None`` comme indication de type est un cas particulier et est " +"Notez que ``None`` comme annotation de type est un cas particulier et est " "remplacé par ``type(None)``." #: library/typing.rst:135 @@ -270,17 +300,15 @@ msgid "NewType" msgstr "*NewType*" #: library/typing.rst:137 -#, fuzzy msgid "Use the :class:`NewType` helper to create distinct types::" -msgstr "" -"Aidez-vous de la fonction :func:`NewType` pour créer des types distincts ::" +msgstr "Utilisez la classe :class:`NewType` pour créer des types distincts ::" #: library/typing.rst:144 msgid "" "The static type checker will treat the new type as if it were a subclass of " "the original type. This is useful in helping catch logical errors::" msgstr "" -"Le vérificateur de type statique traite le nouveau type comme s'il " +"Le vérificateur de types statiques traite le nouveau type comme s'il " "s'agissait d'une sous-classe du type original. C'est utile pour aider à " "détecter les erreurs logiques ::" @@ -298,7 +326,6 @@ msgstr "" "``UserId`` d'une manière invalide ::" #: library/typing.rst:164 -#, fuzzy msgid "" "Note that these checks are enforced only by the static type checker. At " "runtime, the statement ``Derived = NewType('Derived', Base)`` will make " @@ -306,11 +333,11 @@ msgid "" "it. That means the expression ``Derived(some_value)`` does not create a new " "class or introduce much overhead beyond that of a regular function call." msgstr "" -"Notez que ces contrôles ne sont exécutés que par le vérificateur de type " +"Notez que ces contrôles ne sont exécutés que par le vérificateur de types " "statique. À l'exécution, l'instruction ``Derived = NewType('Derived', " "Base)`` fait de ``Derived`` une fonction qui renvoie immédiatement le " "paramètre que vous lui passez. Cela signifie que l'expression " -"``Derived(some_value)`` ne crée pas une nouvelle classe ou n'introduit pas " +"``Derived(some_value)`` ne crée pas une nouvelle classe et n'introduit pas " "de surcharge au-delà de celle d'un appel de fonction normal." #: library/typing.rst:170 @@ -323,15 +350,14 @@ msgstr "" #: library/typing.rst:173 msgid "It is invalid to create a subtype of ``Derived``::" -msgstr "" +msgstr "La création d'un sous-type de ``Derived`` est invalide:" #: library/typing.rst:182 -#, fuzzy msgid "" "However, it is possible to create a :class:`NewType` based on a 'derived' " "``NewType``::" msgstr "" -"Cependant, il est possible de créer un :func:`NewType` basé sur un " +"Il est néanmoins possible de créer un :class:`NewType` basé sur un " "``NewType`` « dérivé » ::" #: library/typing.rst:190 @@ -351,7 +377,7 @@ msgid "" msgstr "" "Rappelons que l'utilisation d'un alias de type déclare que deux types sont " "*équivalents* l'un à l'autre. Écrire ``Alias = Original`` fait que le " -"vérificateur de type statique traite ``Alias`` comme étant *exactement " +"vérificateur de types statiques traite ``Alias`` comme étant *exactement " "équivalent* à ``Original`` dans tous les cas. C'est utile lorsque vous " "voulez simplifier des signatures complexes." @@ -365,12 +391,12 @@ msgid "" "errors with minimal runtime cost." msgstr "" "En revanche, ``NewType`` déclare qu'un type est un *sous-type* d'un autre. " -"Écrire ``Derived = NewType('Derived', Original)`` fait en sorte que le " -"vérificateur de type statique traite ``Derived`` comme une *sous-classe* de " -"``Original``, ce qui signifie qu'une valeur de type ``Original`` ne peut " -"être utilisée dans les endroits où une valeur de type ``Derived`` est " -"prévue. C'est utile lorsque vous voulez éviter les erreurs logiques avec un " -"coût d'exécution minimal." +"Écrire ``Derived = NewType('Derived', Original)`` fait que le vérificateur " +"de type statique traite ``Derived`` comme une *sous-classe* de ``Original``, " +"ce qui signifie qu'une valeur de type ``Original`` ne peut être utilisée " +"dans les endroits où une valeur de type ``Derived`` est prévue. C'est utile " +"lorsque vous voulez éviter les erreurs logiques avec un coût d'exécution " +"minimal." #: library/typing.rst:210 msgid "" @@ -378,6 +404,9 @@ msgid "" "runtime cost when calling ``NewType`` over a regular function. However, " "this cost will be reduced in 3.11.0." msgstr "" +"``NewType`` est maintenant une classe (plutôt qu'une fonction). Cela " +"entraine un coût supplémentaire en temps d'exécution lors d'un appel. " +"Cependant, ce coût sera réduit dans la version 3.11.0." #: library/typing.rst:217 msgid "Callable" @@ -416,18 +445,29 @@ msgid "" "``Callable[Concatenate[Arg1Type, Arg2Type, ..., ParamSpecVariable], " "ReturnType]`` respectively." msgstr "" +"Les appelables qui prennent en argument d'autres appelables peuvent indiquer " +"que leurs types de paramètres dépendent les uns des autres en utilisant :" +"class:`ParamSpec`. De plus, si un appelable ajoute ou supprime des arguments " +"d'autres appelables, l'opérateur :data:`Concatenate` peut être utilisé. Ils " +"prennent la forme ``Callable[ParamSpecVariable, ReturnType]`` et " +"``Callable[Concatenate[Arg1Type, Arg2Type, ..., ParamSpecVariable], " +"ReturnType]`` respectivement." #: library/typing.rst:855 msgid "" "``Callable`` now supports :class:`ParamSpec` and :data:`Concatenate`. See :" "pep:`612` for more details." msgstr "" +"``Callable`` prend désormais en charge :class:`ParamSpec` et :data:" +"`Concatenate`. Voir :pep:`612` pour plus de détails." #: library/typing.rst:254 msgid "" "The documentation for :class:`ParamSpec` and :class:`Concatenate` provides " "examples of usage in ``Callable``." msgstr "" +"La documentation pour :class:`ParamSpec` et :class:`Concatenate` fournit des " +"exemples d'utilisation dans ``Callable``." #: library/typing.rst:260 msgid "Generics" @@ -590,9 +630,9 @@ msgid "" "every type as being compatible with :data:`Any` and :data:`Any` as being " "compatible with every type." msgstr "" -"Un type particulier est :data:`Any`. Un vérificateur de type statique traite " -"chaque type comme étant compatible avec :data:`Any` et :data:`Any` comme " -"étant compatible avec chaque type." +"Un type particulier est :data:`Any`. Un vérificateur de types statiques " +"traite chaque type comme étant compatible avec :data:`Any` et :data:`Any` " +"comme étant compatible avec chaque type." #: library/typing.rst:453 #, fuzzy @@ -615,9 +655,9 @@ msgid "" msgstr "" "Notez qu'aucun contrôle de typage n'est effectué lors de l'affectation d'une " "valeur de type :data:`Any` à un type plus précis. Par exemple, le " -"vérificateur de type statique ne signale pas d'erreur lors de l'affectation " -"de ``a`` à ``s`` même si ``s`` était déclaré être de type :class:`str` et " -"reçoit une valeur :class:`int` au moment de son exécution !" +"vérificateur de types statiques ne signale pas d'erreur lors de " +"l'affectation de ``a`` à ``s`` même si ``s`` était déclaré être de type :" +"class:`str` et reçoit une valeur :class:`int` au moment de son exécution !" #: library/typing.rst:477 msgid "" @@ -655,7 +695,7 @@ msgid "" "example::" msgstr "" "Cela signifie que lorsque le type d'une valeur est :class:`object`, un " -"vérificateur de type rejette presque toutes les opérations sur celle-ci, et " +"vérificateur de types rejette presque toutes les opérations sur celle-ci, et " "l'affecter à une variable (ou l'utiliser comme une valeur de retour) d'un " "type plus spécialisé est une erreur de typage. Par exemple ::" @@ -1146,7 +1186,7 @@ msgid "" msgstr "" "Le fait que ``Type[C]`` soit covariant implique que toutes les sous-classes " "de ``C`` doivent implémenter la même signature de constructeur et les " -"signatures de méthode de classe que ``C``. Le vérificateur de type doit " +"signatures de méthode de classe que ``C``. Le vérificateur de types doit " "signaler les manquements à cette règle. Il doit également autoriser les " "appels du constructeur dans les sous-classes qui correspondent aux appels du " "constructeur dans la classe mère indiquée. La façon dont le vérificateur de " @@ -1238,7 +1278,7 @@ msgstr "" ":data:`ClassVar` n'est pas une classe en soi, et ne devrait pas être " "utilisée avec :func:`isinstance` ou :func:`issubclass`. :data:`ClassVar` ne " "modifie pas le comportement d'exécution Python, mais il peut être utilisé " -"par des vérificateurs tiers. Par exemple, un vérificateur de type peut " +"par des vérificateurs tiers. Par exemple, un vérificateur de types peut " "marquer le code suivant comme une erreur ::" #: library/typing.rst:1019 @@ -1765,9 +1805,9 @@ msgstr "Marquez une classe de protocole comme protocole d'exécution." msgid "" "Such a protocol can be used with :func:`isinstance` and :func:`issubclass`. " "This raises :exc:`TypeError` when applied to a non-protocol class. This " -"allows a simple-minded structural check, very similar to \"one trick " -"ponies\" in :mod:`collections.abc` such as :class:`~collections.abc." -"Iterable`. For example::" +"allows a simple-minded structural check, very similar to \"one trick ponies" +"\" in :mod:`collections.abc` such as :class:`~collections.abc.Iterable`. " +"For example::" msgstr "" "Un tel protocole peut être utilisé avec :func:`isinstance` et :func:" "`issubclass`. Cela lève :exc:`TypeError` lorsqu'il est appliqué à une classe " @@ -1888,7 +1928,7 @@ msgid "" "called. Usage::" msgstr "" "Une fonction pour faciliter l'indication d'un type distinct à un " -"vérificateur de type, voir :ref:`distinct`. Lors de l'exécution, elle " +"vérificateur de types, voir :ref:`distinct`. Lors de l'exécution, elle " "renvoie une fonction qui renvoie son argument. Utilisation ::" #: library/typing.rst:1682 @@ -2297,7 +2337,7 @@ msgstr "Classe de base abstraite pour les types génériques." #: library/typing.rst:2058 msgid "Corresponding to collections in :mod:`collections.abc`" -msgstr "" +msgstr "Correspond aux collections au sein de :mod:`collections.abc`" #: library/typing.rst:2062 msgid "A generic version of :class:`collections.abc.Set`." @@ -2491,7 +2531,7 @@ msgstr "" #: library/typing.rst:2179 msgid "Corresponding to other types in :mod:`collections.abc`" -msgstr "" +msgstr "Correspond aux autres types au sein de :mod:`collections.abc`." #: library/typing.rst:2183 msgid "A generic version of :class:`collections.abc.Iterable`." @@ -2587,7 +2627,7 @@ msgstr "Un alias pour :class:`collections.abc.Sized`" #: library/typing.rst:2249 msgid "Asynchronous programming" -msgstr "" +msgstr "Programmation asynchrone" #: library/typing.rst:2253 msgid "" @@ -2692,7 +2732,7 @@ msgstr "" #: library/typing.rst:2339 msgid "Context manager types" -msgstr "" +msgstr "Types associés aux gestionnaires de contexte" #: library/typing.rst:2343 msgid "A generic version of :class:`contextlib.AbstractContextManager`." @@ -2723,11 +2763,11 @@ msgstr "" #: library/typing.rst:2366 msgid "Protocols" -msgstr "" +msgstr "Protocoles" #: library/typing.rst:2368 msgid "These protocols are decorated with :func:`runtime_checkable`." -msgstr "" +msgstr "Ces protocoles sont décorés par :func:`runtime_checkable`." #: library/typing.rst:2372 msgid "" @@ -2780,7 +2820,7 @@ msgid "" "return value has the designated type, but at runtime we intentionally don't " "check anything (we want this to be as fast as possible)." msgstr "" -"Ceci renvoie la valeur inchangée. Pour le vérificateur de type, cela " +"Ceci renvoie la valeur inchangée. Pour le vérificateur de types, cela " "signifie que la valeur de retour a le type désigné mais, à l'exécution, " "intentionnellement, rien n'est vérifié (afin que cela soit aussi rapide que " "possible)." @@ -2789,29 +2829,35 @@ msgstr "" msgid "" "Ask a static type checker to confirm that *val* has an inferred type of " "*typ*." -msgstr "" +msgstr "Vérifie que *val* est bien du type *typ*." #: library/typing.rst:2418 msgid "" "When the type checker encounters a call to ``assert_type()``, it emits an " "error if the value is not of the specified type::" msgstr "" +"Lors d'un appel à ``assert_type()``, le vérificateur de types va lever " +"émettre une erreur si la variable n'est pas du type renseigné ::" #: library/typing.rst:2425 msgid "" "At runtime this returns the first argument unchanged with no side effects." -msgstr "" +msgstr "Renvoie le premier argument inchangé lors de l'exécution." #: library/typing.rst:2427 msgid "" "This function is useful for ensuring the type checker's understanding of a " "script is in line with the developer's intentions::" msgstr "" +"Cette fonction permet de s'assurer de la compréhension du vérificateur de " +"type d'un script par rapport aux intentions du développeur ::" #: library/typing.rst:2441 msgid "" "Ask a static type checker to confirm that a line of code is unreachable." msgstr "" +"Demande une confirmation de la part du vérificateur statique de type qu'une " +"ligne de code est inaccessible." #: library/typing.rst:2454 msgid "" @@ -2825,10 +2871,19 @@ msgid "" "pass type checking, the inferred type of the argument passed in must be the " "bottom type, :data:`Never`, and nothing else." msgstr "" +"Les annotations permettent ici au vérificateur de types de déduire que le " +"dernier cas ne sera jamais exécuté car les seuls cas possibles (qu'``arg`` " +"soit un :class:`int` ou un :class:`str`) sont couverts dans les cas " +"précédents. Une erreur est levée si un appel à ``assert_never()`` est " +"atteignable. Par exemple, si l'annotation de type d'``arg`` est ``int | str " +"| float``, une erreur sera levée indiquant qu'``unreachable`` est de type :" +"class:`float`. Lors d'un appel à ``assert_never``, afin de passer la " +"vérification de type avec succès, le type déduit de l'argument doit être de " +"type :data:`Never`." #: library/typing.rst:2466 msgid "At runtime, this throws an exception when called." -msgstr "" +msgstr "Une erreur est levé si la fonction est appelé lors de l'exécution." #: library/typing.rst:2469 msgid "" @@ -2836,28 +2891,37 @@ msgid "" "en/latest/source/unreachable.html>`__ has more information about " "exhaustiveness checking with static typing." msgstr "" +"`Unreachable Code and Exhaustiveness Checking `__ pour plus détails sur la vérification " +"exhaustive statique de type." #: library/typing.rst:2477 msgid "Reveal the inferred static type of an expression." -msgstr "" +msgstr "Révèle le type statique déduit d'une expression." #: library/typing.rst:2479 msgid "" "When a static type checker encounters a call to this function, it emits a " "diagnostic with the type of the argument. For example::" msgstr "" +"Lorsqu'un vérificateur de types rencontre un appel à cette fonction, il va " +"diagnostiquer le type de l'argument. Par exemple ::" #: library/typing.rst:2485 msgid "" "This can be useful when you want to debug how your type checker handles a " "particular piece of code." msgstr "" +"Cela est utile afin de comprendre comment le vérificateur de types va " +"traiter un bout de code précis." #: library/typing.rst:2488 msgid "" "The function returns its argument unchanged, which allows using it within an " "expression::" msgstr "" +"La fonction renvoie l'argument inchangé. Ce qui permet de l'utiliser au sein " +"d'une expression ::" #: library/typing.rst:2493 msgid "" @@ -2865,12 +2929,18 @@ msgid "" "not imported from ``typing``. Importing the name from ``typing`` allows your " "code to run without runtime errors and communicates intent more clearly." msgstr "" +"La plupart des vérificateurs de type supportent ``reveal_type()``, même dans " +"le cas ou le nom du type n'est pas importé depuis ``typing``. Cependant, " +"l'import depuis ``typing`` permet d'éviter les erreurs d'exécution et " +"devient plus compréhensible." #: library/typing.rst:2498 msgid "" "At runtime, this function prints the runtime type of its argument to stderr " "and returns it unchanged::" msgstr "" +"Lors de l'exécution, cette fonction affiche le type de son argument dans " +"*stderr* et le renvoie inchangé ::" #: library/typing.rst:2508 msgid "" @@ -2880,18 +2950,23 @@ msgid "" "object performs runtime \"magic\" that transforms a class, giving it :func:" "`dataclasses.dataclass`-like behaviors." msgstr "" +":data:`~typing.dataclass_transform` permet de décorer une classe, une " +"métaclasse ou une fonction décoratrice. L'utilisation de " +"``@dataclass_transform()`` avertit le vérificateur de types statiques que " +"l'objet décoré effectue de la \"magie\" consistant à transformer une classe, " +"lui appliquant un comportement du type de :func:`dataclasses.dataclass`." #: library/typing.rst:2514 msgid "Example usage with a decorator function::" -msgstr "" +msgstr "Exemple d'utilisation avec une fonction décoratrice::" #: library/typing.rst:2528 msgid "On a base class::" -msgstr "" +msgstr "Avec une classe de base :" #: library/typing.rst:2537 msgid "On a metaclass::" -msgstr "" +msgstr "Avec une métaclasse :" #: library/typing.rst:2548 msgid "" @@ -2900,6 +2975,11 @@ msgid "" "dataclass>`. For example, type checkers will assume these classes have " "``__init__`` methods that accept ``id`` and ``name``." msgstr "" +"Les classes ``CustomerModel`` définis ci-dessus sont traitées par les " +"vérificateurs de type de la même que les classes créées avec :func:" +"`@dataclasses.dataclass `. Par exemple, les " +"vérificateurs de type déduisent que ces classes possèdent une méthode " +"``__init__`` acceptant ``id`` et ``name`` comme arguments." #: library/typing.rst:2554 msgid "" @@ -2910,6 +2990,12 @@ msgid "" "``kw_only``, and ``slots``. It must be possible for the value of these " "arguments (``True`` or ``False``) to be statically evaluated." msgstr "" +"Les arguments booléens suivants sont acceptés,les vérificateurs de type " +"supposent qu'ils ont le même effet qu'ils auraient eu sur le décorateur :" +"func:`@dataclasses.dataclass` : ``init``, ``eq``, " +"``order``, ``unsafe_hash``, ``frozen``, ``match_args``, ``kw_only``, et " +"``slots``. Il est possible d'évaluer statiquement les valeurs de ces " +"arguments (``True`` or ``False``)." #: library/typing.rst:2562 msgid "" @@ -2917,51 +3003,69 @@ msgid "" "customize the default behaviors of the decorated class, metaclass, or " "function:" msgstr "" +"Les arguments du décorateur ``dataclass_transform`` permettent de " +"personnaliser le comportement par défaut de la classe, métaclasse ou " +"fonction décorée :" #: library/typing.rst:2566 msgid "" "``eq_default`` indicates whether the ``eq`` parameter is assumed to be " "``True`` or ``False`` if it is omitted by the caller." msgstr "" +"``eq_default`` indique la valeur du paramètre ``eq`` (``True`` ou ``False``) " +"si ce ne n'est pas précisé lors de l'appel." #: library/typing.rst:2568 msgid "" "``order_default`` indicates whether the ``order`` parameter is assumed to be " "True or False if it is omitted by the caller." msgstr "" +"``order_default`` indique la valeur du paramètre ``order`` (``True`` ou " +"``False``) si ce n'est pas précisé lors de l'appel." #: library/typing.rst:2570 msgid "" "``kw_only_default`` indicates whether the ``kw_only`` parameter is assumed " "to be True or False if it is omitted by the caller." msgstr "" +"``kw_only_default`` indique la valeur du paramètre ``kw_only_default`` " +"(``True`` ou ``False``) si ce ne n'est pas précisé lors de l'appel." #: library/typing.rst:2572 msgid "" "``field_specifiers`` specifies a static list of supported classes or " "functions that describe fields, similar to ``dataclasses.field()``." msgstr "" +"``field_specifiers`` spécifie une liste statique des classes ou fonctions " +"prises en charge pour la description des champs, similaire à ``dataclasses." +"field()``." #: library/typing.rst:2574 msgid "" "Arbitrary other keyword arguments are accepted in order to allow for " "possible future extensions." msgstr "" +"D'autres arguments sont acceptés afin d'autoriser de futurs possibles " +"extensions." #: library/typing.rst:2577 msgid "" "Type checkers recognize the following optional arguments on field specifiers:" msgstr "" +"Les arguments optionnels suivants pour la spécifications des champs sont " +"reconnus :" #: library/typing.rst:2580 msgid "" "``init`` indicates whether the field should be included in the synthesized " "``__init__`` method. If unspecified, ``init`` defaults to ``True``." msgstr "" +"``init`` indique si le champ doit être inclut au sein de la méthode " +"``__init__``. Vaut ``True`` par défaut." #: library/typing.rst:2583 msgid "``default`` provides the default value for the field." -msgstr "" +msgstr "``default`` indique la valeur par défaut du champ." #: library/typing.rst:2584 msgid "" @@ -2970,10 +3074,14 @@ msgid "" "specified, the field is assumed to have no default value and must be " "provided a value when the class is instantiated." msgstr "" +"``default_factory`` fournit une fonction de rappel renvoyant la valeur par " +"défaut du champ. Si les arguments ``default`` et ``default_factory`` ne sont " +"pas renseignés, le champ n'a pas de valeur pas défaut et il faudra en " +"fournir une lors de l'instanciation de la classe." #: library/typing.rst:2589 msgid "``factory`` is an alias for ``default_factory``." -msgstr "" +msgstr "``factory`` est un alias pour ``default_factory``." #: library/typing.rst:2590 msgid "" @@ -2984,12 +3092,19 @@ msgid "" "unspecified, the value of ``kw_only_default`` on ``dataclass_transform`` " "will be used." msgstr "" +"``kw_only`` indique si le champ est uniquement par mot-clé. Si l'argument " +"n'est pas renseigné, la valeur du paramètre ``kw_only`` de l'objet décoré " +"avec ``dataclass_transform`` est utilisé. Ou si cette valeur n'est pas " +"renseigné non plus, la valeur de ``kw_only_default`` de " +"``dataclass_transform`` est utilisé." #: library/typing.rst:2596 msgid "" "``alias`` provides an alternative name for the field. This alternative name " "is used in the synthesized ``__init__`` method." msgstr "" +"``alias`` indique un nom alternatif pour le champ. Cet alias est utilisé " +"dans le méthode ``__init__`` synthétisée." #: library/typing.rst:2599 msgid "" @@ -2997,6 +3112,9 @@ msgid "" "``__dataclass_transform__`` attribute on the decorated object. It has no " "other runtime effect." msgstr "" +"Lors de l'exécution, les arguments de ce décorateur sont enregistrés au sein " +"de l'attribut ``__dataclass_transform__`` de l'objet décoré. Il n'y pas " +"d'autre effet à l'exécution." #: library/typing.rst:2603 #, fuzzy @@ -3024,7 +3142,7 @@ msgstr "" "définitions décorées de ``@overload`` ne sont destinées qu'au vérificateur " "de type, puisqu'elles sont écrasées par la définition non décorée de " "``@overload`` ; cette dernière, en revanche, est utilisée à l'exécution mais " -"qu'il convient que le vérificateur de type l'ignore. Lors de l'exécution, " +"qu'il convient que le vérificateur de types l'ignore. Lors de l'exécution, " "l'appel direct d'une fonction décorée avec ``@overload`` lèvera :exc:" "`NotImplementedError`. Un exemple de surcharge qui donne un type plus précis " "que celui qui peut être exprimé à l'aide d'une variable union ou type ::" @@ -3042,6 +3160,8 @@ msgid "" "Overloaded functions can now be introspected at runtime using :func:" "`get_overloads`." msgstr "" +"Les fonctions surchargées peuvent maintenant être inspectées durant " +"l'exécution via :func:`get_overloads`." #: library/typing.rst:2642 msgid "" @@ -3053,18 +3173,31 @@ msgid "" "overloads. If called on a function with no overloads, ``get_overloads()`` " "returns an empty sequence." msgstr "" +"Renvoie la séquence des définitions des fonctions décorées comme :func:" +"`@overload ` associées à *func*. *func* est l'objet de la fonction " +"implémenté de base. Par exemple, en reprenant le définition de ``process`` " +"dans la documentation pour :func:`@overload `, " +"``get_overloads(process)`` renvoie une séquence composée de trois objets de " +"fonction associés aux trois fonctions surchargées définies. En cas d'appel à " +"``get_overloads()`` sur une fonction non surchargés, une séquence vide est " +"retournée." #: library/typing.rst:2650 msgid "" "``get_overloads()`` can be used for introspecting an overloaded function at " "runtime." msgstr "" +"``get_overloads()`` peut être utilisé afin d'inspecter une fonction " +"surchargée durant l'exécution." #: library/typing.rst:2658 msgid "" "Clear all registered overloads in the internal registry. This can be used to " "reclaim the memory used by the registry." msgstr "" +"Suppression de toutes les surcharges enregistrées au sein du registre " +"interne. Cela peut être utilisé afin de récupérer la mémoire utilisé par le " +"registre." #: library/typing.rst:2666 msgid "" @@ -3084,6 +3217,12 @@ msgid "" "attributes, the decorator returns the object unchanged without raising an " "exception." msgstr "" +"Le décorateur met l'attribut ``__final__`` à ``True`` de l'objet décoré. " +"Cela permet d'utiliser une vérification comme ``if getattr(obj, \"__final__" +"\", False)`` durant l'exécution afin de vérifier si un objet ``obj`` est " +"décoré comme ``final``. Dans le cas où l'objet décoré ne supporte pas la " +"modification d'attributs, le décorateur retournera l'objet de base sans " +"lever d'exception." #: library/typing.rst:2700 msgid "Decorator to indicate that annotations are not type hints." @@ -3147,18 +3286,17 @@ msgstr "" #: library/typing.rst:2734 msgid "Introspection helpers" -msgstr "" +msgstr "Utilitaires d'introspection" #: library/typing.rst:2738 msgid "" "Return a dictionary containing type hints for a function, method, module or " "class object." msgstr "" -"renvoie un dictionnaire contenant des indications de type pour une fonction, " +"Renvoie un dictionnaire contenant des annotations de type pour une fonction, " "une méthode, un module ou un objet de classe." #: library/typing.rst:2741 -#, fuzzy msgid "" "This is often the same as ``obj.__annotations__``. In addition, forward " "references encoded as string literals are handled by evaluating them in " @@ -3167,11 +3305,9 @@ msgid "" "__mro__`` in reverse order." msgstr "" "C'est souvent équivalent à ``obj.__annotations__``. De plus, les références " -"directes encodées sous forme de chaîne littérales sont traitées en les " -"évaluant dans les espaces de nommage ``globals`` et ``locals``. Si " -"nécessaire, ``Optional[t]`` est ajouté pour les annotations de fonction et " -"de méthode si une valeur par défaut égale à ``None`` est définie. Pour une " -"classe ``C``, renvoie un dictionnaire construit en fusionnant toutes les " +"postérieures encodées sous forme de chaîne de caractères sont évaluées dans " +"les espaces de nommage ``globals`` et ``locals``. Pour une classe ``C``, " +"elle renvoie un dictionnaire construit en fusionnant toutes les " "``__annotations__`` en parcourant ``C.__mro__`` en ordre inverse." #: library/typing.rst:2747 @@ -3180,6 +3316,9 @@ msgid "" "unless ``include_extras`` is set to ``True`` (see :class:`Annotated` for " "more information). For example::" msgstr "" +"La fonction remplace récursivement tous les ``Annotated[T, ...]`` avec " +"``T``, sauf si la valeur de ``include_extras`` est définie à ``True`` (voir :" +"class:`Annotated` pour plus d'information). Par exemple ::" #: library/typing.rst:2762 msgid "" @@ -3187,10 +3326,14 @@ msgid "" "aliases>` that include forward references. Enabling postponed evaluation of " "annotations (:pep:`563`) may remove the need for most forward references." msgstr "" +":func:`get_type_hints` ne fonctionne pas avec les :ref:`alias de type ` importés contenant des références postérieures. L'activation " +"d'évaluation différée des annotations (:pep:`563`) permet de supprimer le " +"besoin de références postérieures supplémentaires." #: library/typing.rst:2767 msgid "Added ``include_extras`` parameter as part of :pep:`593`." -msgstr "" +msgstr "Ajout du paramètre ``include_extras`` comme énoncé dans la :pep:`593`." #: library/typing.rst:2770 msgid "" @@ -3198,6 +3341,9 @@ msgid "" "a default value equal to ``None`` was set. Now the annotation is returned " "unchanged." msgstr "" +"Avant, ``Optional[t]`` était ajouté pour les annotations de fonctions et de " +"méthodes dans le cas où une valeur par défaut était égal à ``None``. " +"Maintenant, les annotations sont renvoyées inchangées." #: library/typing.rst:2778 msgid "Provide basic introspection for generic types and special typing forms." @@ -3206,7 +3352,6 @@ msgstr "" "spéciales de typage." #: library/typing.rst:2780 -#, fuzzy msgid "" "For a typing object of the form ``X[Y, Z, ...]`` these functions return " "``X`` and ``(Y, Z, ...)``. If ``X`` is a generic alias for a builtin or :mod:" @@ -3218,15 +3363,17 @@ msgid "" msgstr "" "Pour un objet de typage de la forme ``X[Y, Z, ....]``, ces fonctions " "renvoient ``X`` et ``(Y, Z,...)``. Si ``X`` est un alias pour une classe " -"native ou de :mod:`collections`, il est normalisé en la classe originale. " -"Pour les objets non gérés, renvoie la paire ``None`` , ``()``. Exemples ::" +"native ou de :mod:`collections`, il est normalisé vers la classe originale. " +"Si ``X`` est une union or un :class:`Literal` contenu dans un autre type " +"générique, l'ordre de ``(Y, Z, ...)`` peut différer de l'ordre des arguments " +"originels ``[Y, Z, ...]`` à cause du cache de types.Pour les objets non " +"gérés, renvoient ``None`` et ``()`` respectivement. Exemples ::" #: library/typing.rst:2799 msgid "Check if a type is a :class:`TypedDict`." -msgstr "" +msgstr "Vérifier si un type est un :class:`TypedDict`." #: library/typing.rst:2814 -#, fuzzy msgid "" "A class used for internal typing representation of string forward " "references. For example, ``List[\"SomeClass\"]`` is implicitly transformed " @@ -3234,9 +3381,9 @@ msgid "" "instantiated by a user, but may be used by introspection tools." msgstr "" "Une classe utilisée pour le typage interne de la représentation des " -"références directes des chaînes de caractères. Par exemple, " -"``Liste[\"SomeClass\"]`` est implicitement transformé en " -"``Liste[ForwardRef(\"SomeClass\")]``. Cette classe ne doit pas être " +"références postérieures des chaînes de caractères. Par exemple, " +"``List[\"SomeClass\"]`` est implicitement transformé en " +"``List[ForwardRef(\"SomeClass\")]``. Cette classe ne doit pas être " "instanciée par un utilisateur, mais peut être utilisée par des outils " "d'introspection." @@ -3246,6 +3393,9 @@ msgid "" "implicitly transformed into ``list[ForwardRef(\"SomeClass\")]`` and thus " "will not automatically resolve to ``list[SomeClass]``." msgstr "" +"Les types :pep:`585` tels que ``list[\"SomeClass\"]`` ne seront pas " +"implicitement transformés en ``list[ForwardRef(\"SomeClass\")]`` et ne " +"seront donc pas automatiquement résolus en ``list[SomeClass]``." #: library/typing.rst:2827 msgid "Constant" @@ -3256,8 +3406,8 @@ msgid "" "A special constant that is assumed to be ``True`` by 3rd party static type " "checkers. It is ``False`` at runtime. Usage::" msgstr "" -"Constante spéciale qui vaut ``True`` pour les vérificateurs de type " -"statiques tiers et ``False`` à l'exécution. Utilisation ::" +"Constante spéciale qui vaut ``True`` pour les vérificateurs de types " +"statique tiers et ``False`` à l'exécution. Utilisation ::" #: library/typing.rst:2840 #, fuzzy @@ -3281,10 +3431,15 @@ msgid "" "in ``__annotations__``. This makes it unnecessary to use quotes around the " "annotation (see :pep:`563`)." msgstr "" +"Si ``from __future__ import annotations`` est utilisé, les annotations ne " +"sont pas évaluées au moment de la définition de fonction. Elles sont alors " +"stockées comme des chaînes de caractères dans ``__annotations__``, ce qui " +"rend inutile l'utilisation de guillemets autour de l'annotation (Voir :pep:" +"`563`)." #: library/typing.rst:2856 msgid "Deprecation Timeline of Major Features" -msgstr "" +msgstr "Étapes d'Obsolescence des Fonctionnalités Majeures" #: library/typing.rst:2858 msgid "" @@ -3293,18 +3448,22 @@ msgid "" "your convenience. This is subject to change, and not all deprecations are " "listed." msgstr "" +"Certaines fonctionnalités dans ``typing`` sont obsolètes et peuvent être " +"supprimées dans une future version de Python. Le tableau suivant résume les " +"principales dépréciations. Celui-ci peut changer et toutes les dépréciations " +"ne sont pas listées." #: library/typing.rst:2863 msgid "Feature" -msgstr "" +msgstr "Fonctionnalité" #: library/typing.rst:2863 msgid "Deprecated in" -msgstr "" +msgstr "Obsolète en" #: library/typing.rst:2863 msgid "Projected removal" -msgstr "" +msgstr "Suppression prévue" #: library/typing.rst:2863 msgid "PEP/issue" @@ -3312,7 +3471,7 @@ msgstr "" #: library/typing.rst:2865 msgid "``typing.io`` and ``typing.re`` submodules" -msgstr "" +msgstr "sous-modules ``typing.io`` et ``typing.re``" #: library/typing.rst:2865 msgid "3.8" @@ -3328,7 +3487,7 @@ msgstr "" #: library/typing.rst:2868 msgid "``typing`` versions of standard collections" -msgstr "" +msgstr "Versions de typage des collections standards" #: library/typing.rst:2868 msgid "3.9" @@ -3336,7 +3495,7 @@ msgstr "" #: library/typing.rst:2871 msgid "Undecided" -msgstr "" +msgstr "Non défini" #: library/typing.rst:2868 msgid ":pep:`585`" diff --git a/reference/compound_stmts.po b/reference/compound_stmts.po index 6088f966..a6ebb7e6 100644 --- a/reference/compound_stmts.po +++ b/reference/compound_stmts.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-12-04 14:57+0100\n" +"PO-Revision-Date: 2023-02-15 11:51+0100\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" diff --git a/requirements.txt b/requirements.txt index e634cbc8..9e489c6e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1 @@ poutils==0.13.0 -sphinx-lint diff --git a/whatsnew/3.11.po b/whatsnew/3.11.po index 6541931d..26699c93 100644 --- a/whatsnew/3.11.po +++ b/whatsnew/3.11.po @@ -6,8 +6,8 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" -"PO-Revision-Date: 2022-11-14 15:35+0100\n" -"Last-Translator: Yannick Gingras \n" +"PO-Revision-Date: 2023-02-17 15:35+0100\n" +"Last-Translator: Mouna Sebti \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" @@ -22,7 +22,7 @@ msgstr "Les nouveautés de Python 3.11" #: whatsnew/3.11.rst:0 msgid "Release" -msgstr "" +msgstr "Version" #: whatsnew/3.11.rst:5 msgid "|release|" @@ -38,7 +38,7 @@ msgstr "" #: whatsnew/3.11.rst:0 msgid "Editor" -msgstr "" +msgstr "Éditeur" #: whatsnew/3.11.rst:7 msgid "Pablo Galindo Salgado" @@ -66,6 +66,9 @@ msgid "" "measured a 1.25x speedup on the standard benchmark suite. See :ref:" "`whatsnew311-faster-cpython` for details." msgstr "" +"Python 3.11 est entre 10 et 60% plus rapide que Python 3.10. En moyenne," +"nous avons mesuré une multiplication de la vitesse par 1.25 sur la suite de" +"benchmark standard. Voir les détails sur :ref:`whatsnew311-faster-cpython`." #: whatsnew/3.11.rst:68 msgid "New syntax features:" @@ -76,9 +79,8 @@ msgid ":ref:`whatsnew311-pep654`" msgstr "" #: whatsnew/3.11.rst:72 -#, fuzzy msgid "New built-in features:" -msgstr "Nouvelles fonctionnalités de typage :" +msgstr "Nouvelles fonctionnalités natives :" #: whatsnew/3.11.rst:74 msgid ":ref:`whatsnew311-pep678`" @@ -86,7 +88,7 @@ msgstr "" #: whatsnew/3.11.rst:76 msgid "New standard library modules:" -msgstr "" +msgstr "Nouveaux modules de bibliothèque standard :" #: whatsnew/3.11.rst:78 msgid "" @@ -96,7 +98,7 @@ msgstr "" #: whatsnew/3.11.rst:81 msgid "Interpreter improvements:" -msgstr "" +msgstr "Améliorations de l'interpréteur :" #: whatsnew/3.11.rst:83 msgid ":ref:`whatsnew311-pep657`" @@ -142,12 +144,16 @@ msgid "" ":pep:`594`: :ref:`Many legacy standard library modules have been deprecated " "` and will be removed in Python 3.13" msgstr "" +":pep:`594`: :ref:`De nombreux anciens modules de la bibliothèque standard sont" +"devenus obsolètes ` et seront supprimés dans la version 3.13" #: whatsnew/3.11.rst:101 msgid "" ":pep:`624`: :ref:`Py_UNICODE encoder APIs have been removed `" msgstr "" +":pep:`624`: :ref:`les API d'encodage Py_UNICODE ont été supprimées `" #: whatsnew/3.11.rst:103 msgid "" @@ -183,9 +189,9 @@ msgid "" "function calls:" msgstr "" "Les versions précédentes de l'interpréteur indiquaient uniquement la ligne, " -"ce qui rendait ambigu quel objet était ``None``. Les messages d'erreurs " +"ce qui rendait ambigu quel objet était ``None``. Ces messages d'erreurs " "améliorés sont aussi utiles quand on travaille avec des objets dictionnaires " -"fortement imbriqués et des appels de fonction multiples," +":class:`dict` fortement imbriqués et des appels de fonction multiples :" #: whatsnew/3.11.rst:151 #, fuzzy @@ -234,7 +240,7 @@ msgstr "" #: whatsnew/3.11.rst:185 msgid "PEP 654: Exception Groups and ``except*``" -msgstr "" +msgstr "PEP 654: Groupes d'exception et ``except*``" #: whatsnew/3.11.rst:187 msgid "" @@ -248,7 +254,7 @@ msgstr "" #: whatsnew/3.11.rst:194 msgid "See :pep:`654` for more details." -msgstr "" +msgstr "Voir :pep:`654` pour plus de détails." #: whatsnew/3.11.rst:196 msgid "" @@ -276,7 +282,7 @@ msgstr "" #: whatsnew/3.11.rst:210 msgid "See :pep:`678` for more details." -msgstr "" +msgstr "Voir :pep:`678` pour plus de détails." #: whatsnew/3.11.rst:212 msgid "" @@ -286,7 +292,7 @@ msgstr "" #: whatsnew/3.11.rst:219 msgid "Windows ``py.exe`` launcher improvements" -msgstr "" +msgstr "Améliorations du lanceur Windows ``py.exe``" #: whatsnew/3.11.rst:221 msgid "" @@ -351,7 +357,7 @@ msgstr "" #: whatsnew/3.11.rst:270 msgid "See :pep:`646` for more details." -msgstr "" +msgstr "Voir :pep:`646` pour plus de détails." #: whatsnew/3.11.rst:272 msgid "" @@ -383,11 +389,11 @@ msgstr "" #: whatsnew/3.11.rst:301 msgid "The following definition is equivalent::" -msgstr "" +msgstr "La définition suivante est équivalente ::" #: whatsnew/3.11.rst:307 msgid "See :pep:`655` for more details." -msgstr "" +msgstr "Voir :pep:`655` pour plus de détails." #: whatsnew/3.11.rst:309 msgid "" @@ -423,7 +429,7 @@ msgstr "" #: whatsnew/3.11.rst:345 msgid "See :pep:`673` for more details." -msgstr "" +msgstr "Voir :pep:`673` pour plus de détails." #: whatsnew/3.11.rst:347 msgid "" @@ -449,10 +455,12 @@ msgstr "" #: whatsnew/3.11.rst:364 msgid "For example, a SQL query function could be annotated as follows::" msgstr "" +"Par exemple, une fonction de requête SQL pourrait être annotée de cette" +"façon ::" #: whatsnew/3.11.rst:382 msgid "See :pep:`675` for more details." -msgstr "" +msgstr "Voir :pep:`675` pour plus de détails." #: whatsnew/3.11.rst:384 msgid "" @@ -475,11 +483,11 @@ msgstr "" #: whatsnew/3.11.rst:399 msgid "For example::" -msgstr "" +msgstr "Par exemple ::" #: whatsnew/3.11.rst:417 msgid "See :pep:`681` for more details." -msgstr "" +msgstr "Voir :pep:`681` pour plus de détails." #: whatsnew/3.11.rst:419 msgid "" @@ -954,12 +962,11 @@ msgid "IDLE and idlelib" msgstr "``IDLE`` et ``idlelib``" #: whatsnew/3.11.rst:804 -#, fuzzy msgid "" "Apply syntax highlighting to ``.pyi`` files. (Contributed by Alex Waygood " "and Terry Jan Reedy in :issue:`45447`.)" msgstr "" -"Fait la coloration syntaxique des fichiers ``.pyi`` (contribution d'*Alex " +"Applique la coloration syntaxique aux fichiers ``.pyi`` (contribution d'*Alex " "Waygood* et de *Terry Jan Reedy* dans :issue:`45447`)." #: whatsnew/3.11.rst:807 @@ -1430,6 +1437,8 @@ msgstr "" #: whatsnew/3.11.rst:1131 msgid "For major changes, see :ref:`new-feat-related-type-hints-311`." msgstr "" +"Pour les modifications majeures, voir :ref:`new-feat-related-" +"type-hints-311`." #: whatsnew/3.11.rst:1133 msgid "" @@ -1739,7 +1748,9 @@ msgstr "" msgid "" "Interpreter startup is now 10-15% faster in Python 3.11. This has a big " "impact for short-running programs using Python." -msgstr "" +msgstr "Le lancement de l'interpréteur est 10 à 15% plus rapide" +"dans la version 3.11. Cela a un grand impact pour les programmes courts" +"utilisant Python." #: whatsnew/3.11.rst:1362 msgid "" @@ -1954,7 +1965,7 @@ msgstr "" #: whatsnew/3.11.rst:1467 msgid "Calls" -msgstr "" +msgstr "Appels" #: whatsnew/3.11.rst:1467 msgid "``f(arg)`` ``C(arg)``" @@ -2162,7 +2173,7 @@ msgstr "" #: whatsnew/3.11.rst:1554 msgid "About" -msgstr "" +msgstr "À propos" #: whatsnew/3.11.rst:1556 msgid "" @@ -2429,6 +2440,8 @@ msgstr "Obsolescence" msgid "" "This section lists Python APIs that have been deprecated in Python 3.11." msgstr "" +"Cette section liste les API Python qui sont devenues obsolètes dans la" +"version 3.11." #: whatsnew/3.11.rst:1671 msgid "" @@ -2585,7 +2598,7 @@ msgstr "" #: whatsnew/3.11.rst:1742 msgid "Standard Library" -msgstr "" +msgstr "Bibliothèque Standard" #: whatsnew/3.11.rst:1744 msgid "" @@ -2776,6 +2789,8 @@ msgid "" "The following Python APIs have been deprecated in earlier Python releases, " "and will be removed in Python 3.12." msgstr "" +"Les API Python suivantes sont devenues obsolètes dans des versions " +"précédentes, et seront supprimées dans la version 3.12." #: whatsnew/3.11.rst:1847 msgid "" @@ -3038,6 +3053,8 @@ msgstr "Retraits" #: whatsnew/3.11.rst:1907 msgid "This section lists Python APIs that have been removed in Python 3.11." msgstr "" +"Cette section liste les API Python qui ont été supprimées dans la version " +"3.11." #: whatsnew/3.11.rst:1909 msgid "" @@ -3213,6 +3230,9 @@ msgid "" "This section lists previously described changes and other bugfixes in the " "Python API that may require changes to your Python code." msgstr "" +"Cette section liste les modifications précédemment décrites et d'autres" +"corrections de bogues dans l'API Python qui pourraient nécessiter des" +"modification dans votre code." #: whatsnew/3.11.rst:2016 msgid "" @@ -3314,7 +3334,7 @@ msgstr "" #: whatsnew/3.11.rst:2087 msgid "Building Python now requires:" -msgstr "" +msgstr "Compiler Python nécessite à présent :" #: whatsnew/3.11.rst:2089 msgid ""