Skip to content

Traduction de extending/extending.po 10011628 #1439

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 42 commits into from
Feb 15, 2021
Merged
Changes from 1 commit
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
926f689
Traduction de extending/extending.po 10011628
Catadanna Oct 1, 2020
d28e305
Traduction de extending/extending.po 10012021
Catadanna Oct 1, 2020
9c167dc
Update extending/extending.po
Catadanna Oct 2, 2020
751aa93
Update extending/extending.po
Catadanna Oct 2, 2020
75c6683
Update extending/extending.po
Catadanna Oct 2, 2020
db9bc47
Update extending/extending.po
Catadanna Oct 2, 2020
c1784b5
Update extending/extending.po
Catadanna Oct 2, 2020
b76d521
Update extending/extending.po
Catadanna Oct 2, 2020
25b9227
Update extending/extending.po
Catadanna Oct 2, 2020
d0c3bd8
Update extending/extending.po
Catadanna Oct 2, 2020
df20924
Update extending/extending.po
Catadanna Oct 2, 2020
7f36e68
Update extending/extending.po
Catadanna Oct 2, 2020
9386096
Update extending/extending.po
Catadanna Oct 2, 2020
e8e96ec
Update extending/extending.po
Catadanna Oct 2, 2020
71f237a
Update extending/extending.po
Catadanna Oct 2, 2020
5285926
Update extending/extending.po
Catadanna Oct 2, 2020
3f9a660
prise en compte des remarques
Catadanna Oct 2, 2020
7928ba0
Traduction de extending/extending.po 10021506
Catadanna Oct 2, 2020
11d7437
Update extending/extending.po
Catadanna Oct 2, 2020
0e1498e
Update extending/extending.po
Catadanna Oct 2, 2020
90af002
Update extending/extending.po
Catadanna Oct 2, 2020
f258dab
Update extending/extending.po
Catadanna Oct 2, 2020
9cf8d83
Update extending/extending.po
Catadanna Oct 2, 2020
26a5731
Update extending/extending.po
Catadanna Oct 2, 2020
f49c840
Update extending/extending.po
Catadanna Oct 2, 2020
0f231c4
Contribution 10211441
Catadanna Oct 21, 2020
23e9dfc
Merge branch '3.9' into extending-extending
JulienPalard Nov 23, 2020
4b1a366
Merge branch '3.9' into extending-extending
JulienPalard Dec 17, 2020
296a6dd
prise en compte des remarques
Catadanna Feb 7, 2021
4159659
Update extending/extending.po
Catadanna Feb 7, 2021
a8e37f9
Update extending/extending.po
Catadanna Feb 7, 2021
cf22866
Corrections
Catadanna Feb 7, 2021
21fd5f2
Done fusion resolve merge
Catadanna Feb 7, 2021
0851c98
Corrections 20210207 21:22
Catadanna Feb 7, 2021
73ad5b6
Corrections 20210207 21:43
Catadanna Feb 7, 2021
5f34ddc
Corrections 20210207 21:59
Catadanna Feb 7, 2021
e9043fb
Corrections 20210207 22:19
Catadanna Feb 7, 2021
94fd076
Merge branch '3.9' into extending-extending
Catadanna Feb 7, 2021
01dab86
Corrections 20210207 22:27
Catadanna Feb 7, 2021
f7043aa
Merge branch '3.9' into extending-extending
Seluj78 Feb 15, 2021
a4290cc
Fixed doc gen
Seluj78 Feb 15, 2021
354da3c
Fixed pospell ?
Seluj78 Feb 15, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Traduction de extending/extending.po 10012021
  • Loading branch information
Catadanna committed Oct 1, 2020
commit d28e3058715cb0ead57723cbd8b25181756c35c8
166 changes: 149 additions & 17 deletions extending/extending.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ 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: 2020-10-01 16:26+0200\n"
"PO-Revision-Date: 2020-10-01 20:20+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
Expand Down Expand Up @@ -54,7 +54,6 @@ msgstr ""
"chapitres suivants."

#: extending/extending.rst:25
#, fuzzy
msgid ""
"The C extension interface is specific to CPython, and extension modules do "
"not work on other Python implementations. In many cases, it is possible to "
Expand All @@ -72,9 +71,9 @@ msgstr ""
"et ainsi préserver la portabilité vers d'autres implémentations. Par "
"exemple, si vous devez appeler une fonction de la bibliothèque C ou faire un "
"appel système, vous devriez envisager d'utiliser le module :mod:`ctypes` ou "
"d'utiliser la bibliothèque *cffi* `<https://cffi.readthedocs.io>`_ plutôt "
"que d'écrire du code C sur mesure. Ces modules vous permettent d'écrire du "
"code Python s'interfaçant avec le code C et sont plus portables entre les "
"d'utiliser la bibliothèque `cffi <https://cffi.readthedocs.io/>`_ plutôt que "
"d'écrire du code C sur mesure. Ces modules vous permettent d'écrire du code "
"Python s'interfaçant avec le code C et sont plus portables entre les "
"implémentations de Python que l'écriture et la compilation d'une d'extension "
"C."

Expand All @@ -83,7 +82,6 @@ msgid "A Simple Example"
msgstr "Un exemple simple"

#: extending/extending.rst:42
#, fuzzy
msgid ""
"Let's create an extension module called ``spam`` (the favorite food of Monty "
"Python fans...) and let's say we want to create a Python interface to the C "
Expand All @@ -92,11 +90,11 @@ msgid ""
"this function to be callable from Python as follows:"
msgstr ""
"Créons un module d'extension appelé ``spam`` (la nourriture préférée de fans "
"des *Monty Python* ...) et disons que nous voulons créer une interface "
"Python à la fonction de la bibliothèque C :c:func:`system` [#]_. Cette "
"fonction prend une chaîne de caractères à terminaison nulle comme argument "
"et renvoie un entier. Nous voulons que cette fonction soit appelable à "
"partir de Python comme suit :"
"des *Monty Python* ) et disons que nous voulons créer une interface Python "
"à la fonction de la bibliothèque C :c:func:`system` [#]_. Cette fonction "
"prend une chaîne de caractères à terminaison nulle comme argument et renvoie "
"un entier. Nous voulons que cette fonction soit appelable à partir de Python "
"comme suit :"

#: extending/extending.rst:53
msgid ""
Expand Down Expand Up @@ -296,7 +294,6 @@ msgstr ""
"c:func:`Py_INCREF` aux objets transmis à ces fonctions."

#: extending/extending.rst:154
#, fuzzy
msgid ""
"You can test non-destructively whether an exception has been set with :c:"
"func:`PyErr_Occurred`. This returns the current exception object, or "
Expand All @@ -306,10 +303,10 @@ msgid ""
msgstr ""
"Vous pouvez tester de manière non destructive si une exception a été levée "
"avec :c:func:`PyErr_Occurred`. Cela renvoie l'objet exception actuel, ou "
"*NULL* si aucune exception n'a eu lieu. Cependant, vous ne devriez pas avoir "
"besoin d'appeler :c:func:`PyErr_Occurred` pour voir si une erreur est "
"``NULL`` si aucune exception n'a eu lieu. Cependant, vous ne devriez pas "
"avoir besoin d'appeler :c:func:`PyErr_Occurred` pour voir si une erreur est "
"survenue durant l'appel d'une fonction, puisque vous devriez être en mesure "
"de le déterminer à partir de la valeur de retour."
"de le déterminer à partir de la valeur renvoyée."

#: extending/extending.rst:160
#, fuzzy
Expand Down Expand Up @@ -480,7 +477,7 @@ msgid ""
"this sample."
msgstr ""
"Nous traiterons de l'utilisation de ``PyMODINIT_FUNC`` comme un type de "
"retour de fonction plus tard dans cette section."
"renvoi de fonction plus tard dans cette section."

#: extending/extending.rst:250
msgid ""
Expand Down Expand Up @@ -636,7 +633,7 @@ msgid ""
"`PyInit_name`, where *name* is the name of the module, and should be the "
"only non-\\ ``static`` item defined in the module file::"
msgstr ""
"Cette structure, à son tour, doit être transmise à l'interprète dans la "
"Cette structure, à son tour, doit être transmise à l'interpréteur dans la "
"fonction d'initialisation du module. La fonction d'initialisation doit être "
"nommée :c:func:`PyInit_name`, où *nom* est le nom du module, et doit être le "
"seul élément non ``static`` défini dans le fichier du module ::"
Expand Down Expand Up @@ -700,6 +697,11 @@ msgid ""
"``PyInit_spam``, and creation of the module is left to the import machinery. "
"For details on multi-phase initialization, see :PEP:`489`."
msgstr ""
"Contrairement à notre exemple de ``spam``, ``xxmodule`` utilise une "
"*initialisation multi-phase* (nouveau en Python 3.5), où une structure "
"*PyModuleDef* est renvoyée à partir de ``PyInit_spam``, et la création du "
"module est laissée à la machine d'importation. Pour plus de détails sur "
"l'initialisation multi-phase, voir :PEP:`489`."

#: extending/extending.rst:448
msgid "Compilation and Linkage"
Expand Down Expand Up @@ -781,6 +783,10 @@ msgid ""
"c:func:`PyArg_ParseTuple` function and its arguments are documented in "
"section :ref:`parsetuple`."
msgstr ""
"Cette fonction doit être enregistrée avec l'interpréteur en utilisant le "
"drapeau :const:`METH_VARARGS` ; ceci est décrit dans la section :ref:"
"`methodtable`. La fonction :c:func:`PyArg_ParseTuple` et ses arguments sont "
"documentés dans la section :ref:`parsetuple`."

#: extending/extending.rst:536
msgid ""
Expand All @@ -789,6 +795,11 @@ msgid ""
"pointers (but note that *temp* will not be ``NULL`` in this context). More "
"info on them in section :ref:`refcounts`."
msgstr ""
"Les macros :c:func:`Py_XINCREF` et :c:func:`Py_XDECREF` incrémentent/"
"décrémentent le comptage des références d'un objet et sont sûres quant à la "
"présence de pointeurs ``NULL`` (mais notez que *temp* ne sera pas ``NULL`` "
"dans ce contexte). Plus d'informations à ce sujet dans la section :ref:"
"`refcounts`."

#: extending/extending.rst:543
msgid ""
Expand Down Expand Up @@ -830,6 +841,15 @@ msgid ""
"handle the exception. If this is not possible or desirable, the exception "
"should be cleared by calling :c:func:`PyErr_Clear`. For example::"
msgstr ""
"Mais avant de le faire, il est important de vérifier que la valeur renvoyée "
"n'est pas ``NULL``. Si c'est le cas, la fonction Python s'est terminée par "
"la levée d'une exception. Si le code C qui a appelé :c:func:"
"`PyObject_CallObject` est appelé depuis Python, il devrait maintenant "
"renvoyer une indication d'erreur à son appelant Python, afin que "
"l'interpréteur puisse imprimer un tracé de pile, ou que le code Python "
"appelant puisse gérer l'exception. Si cela n'est pas possible ou "
"souhaitable, l'exception doit être effacée en appelant :c:func:"
"`PyErr_Clear`. Par exemple ::"

#: extending/extending.rst:589
msgid ""
Expand Down Expand Up @@ -857,6 +877,10 @@ msgid ""
"`PyObject_Call`, which supports arguments and keyword arguments. As in the "
"above example, we use :c:func:`Py_BuildValue` to construct the dictionary. ::"
msgstr ""
"Vous pouvez également appeler une fonction avec des arguments de mots-clés "
"en utilisant :c:func:`PyObject_Call`, qui supporte les arguments et les "
"arguments de mots-clés. Comme dans l'exemple ci-dessus, nous utilisons :c:"
"func:`Py_BuildValue` pour construire le dictionnaire. ::"

#: extending/extending.rst:630
msgid "Extracting Parameters in Extension Functions"
Expand Down Expand Up @@ -917,6 +941,14 @@ msgid ""
"`PyArg_ParseTupleAndKeywords` returns true, otherwise it returns false and "
"raises an appropriate exception."
msgstr ""
"Les paramètres *arg* et *format* sont identiques à ceux de la fonction :c:"
"func:`PyArg_ParseTuple`. Le paramètre *kwdict* est le dictionnaire de mots-"
"clés reçu comme troisième paramètre du *runtime* Python. Le paramètre "
"*kwlist* est une liste de chaînes de caractères terminée par ``NULL`` qui "
"identifie les paramètres ; les noms sont mis en correspondance, de gauche à "
"droite, avec les informations de type de *format*. En cas de succès du "
"processus, :c:func:`PyArg_ParseTupleAndKeywords` renvoie vrai, sinon il "
"renvoie faux et lève une exception appropriée."

#: extending/extending.rst:741
msgid ""
Expand All @@ -930,6 +962,8 @@ msgid ""
"Here is an example module which uses keywords, based on an example by Geoff "
"Philbrick (philbrick@hks.com)::"
msgstr ""
"Voici un exemple de module qui utilise des mots-clés, basé sur un exemple de "
"*Geoff Philbrick* (philbrick@hks.com) ::"

#: extending/extending.rst:802
msgid "Building Arbitrary Values"
Expand Down Expand Up @@ -962,6 +996,15 @@ msgid ""
"that format unit. To force it to return a tuple of size 0 or one, "
"parenthesize the format string."
msgstr ""
"Une différence par rapport à :c:func:`PyArg_ParseTuple` : alors que ce "
"dernier nécessite que son premier argument soit un n-uplet (puisque les "
"listes d'arguments Python sont toujours représentées par des n-uplets en "
"interne), :c:func:`Py_BuildValue` ne construit pas toujours un n-uplet. Il "
"n'en construit un que si sa chaîne formatée contient deux unités formatées "
"ou plus. Si la chaîne formatée est vide, il renvoie ``None`` ; s'il contient "
"exactement une unité formatée, il renvoie tout objet décrit par cette unité "
"formatée. Pour le forcer à renvoyer un n-uplet de taille 0 ou 1, mettez la "
"chaîne formatée entre parenthèses."

#: extending/extending.rst:822
msgid ""
Expand Down Expand Up @@ -1054,6 +1097,18 @@ msgid ""
"in a reference cycle, or referenced from the objects in the cycle, even "
"though there are no further references to the cycle itself."
msgstr ""
"Bien que Python utilise l'implémentation traditionnelle de comptage de "
"référence, il propose également un détecteur de cycles qui fonctionne pour "
"détecter les cycles de référence. Cela permet aux applications de ne pas se "
"soucier de la création de références circulaires directes ou indirectes ; ce "
"sont les faiblesses du ramasse-miettes mis en œuvre en utilisant uniquement "
"le comptage de référence. Les cycles de référence sont constitués d'objets "
"qui contiennent des références (éventuellement indirectes) à eux-mêmes, de "
"sorte que chaque objet du cycle a un comptage de référence qui n'est pas "
"nul. Les implémentations typiques de comptage de référence ne sont pas "
"capables de récupérer la mémoire appartenant à des objets dans un cycle de "
"référence, ou référencés à partir des objets dans le cycle, même s'il n'y a "
"pas d'autres références au cycle lui-même."

#: extending/extending.rst:911
msgid ""
Expand Down Expand Up @@ -1081,8 +1136,16 @@ msgid ""
"this purpose (and others), every object also contains a pointer to its type "
"object."
msgstr ""
"Il existe deux macros, ``Py_INCREF(x)`` et ``Py_DECREF(x)``, qui gèrent "
"l'incrémentation et la décrémentation du comptage de référence. :c:func:"
"`Py_DECREF` libère également l'objet lorsque le comptage atteint zéro. Pour "
"plus de flexibilité, il n'appelle pas :c:func:`free` directement — plutôt, "
"il fait un appel à travers un pointeur de fonction dans l'objet :dfn:`type "
"objet` de l'objet. À cette fin (et pour d'autres), chaque objet contient "
"également un pointeur vers son objet type."

#: extending/extending.rst:934
#, fuzzy
msgid ""
"The big question now remains: when to use ``Py_INCREF(x)`` and "
"``Py_DECREF(x)``? Let's first introduce some terms. Nobody \"owns\" an "
Expand All @@ -1094,6 +1157,17 @@ msgid ""
"on, store it, or call :c:func:`Py_DECREF`. Forgetting to dispose of an owned "
"reference creates a memory leak."
msgstr ""
"La grande question demeure maintenant : quand utiliser ``Py_INCREF(x)`` et "
"``Py_DECREF(x)`` ? Commençons par définir quelques termes. Personne ne "
"\"possède\" un objet ; cependant, vous pouvez vous approprier une référence "
"à un objet par :dfn:`own . Le comptage de références d'un objet est "
"maintenant défini comme le étant le nombre de références à cet objet dont on "
"est propriétaire . Le propriétaire d'une référence est responsable "
"d'appeler :c:func:`Py_DECREF` lorsque la référence n'est plus nécessaire. La "
"propriété d'une référence peut être transférée. Il y a trois façons de "
"disposer d'une référence propriétaire : la transmettre, la stocker, ou "
"appeler :c:func:`Py_DECREF`. Oublier de se débarrasser d'une référence "
"propriétaire crée une fuite de mémoire."

#: extending/extending.rst:943
msgid ""
Expand All @@ -1114,6 +1188,14 @@ msgid ""
"code a borrowed reference can be used after the owner from which it was "
"borrowed has in fact disposed of it."
msgstr ""
"L'avantage d'emprunter, plutôt qu'être propriétaire d'une référence est que "
"vous n'avez pas à vous soucier de disposer de la référence sur tous les "
"chemins possibles dans le code — en d'autres termes, avec une référence "
"empruntée, vous ne courez pas le risque de fuites lors d'une sortie "
"prématurée. L'inconvénient de l'emprunt par rapport à la possession est "
"qu'il existe certaines situations subtiles où, dans un code apparemment "
"correct, une référence empruntée peut être utilisée après que le "
"propriétaire auquel elle a été empruntée l'a en fait éliminée."

#: extending/extending.rst:957
msgid ""
Expand Down Expand Up @@ -1206,6 +1288,10 @@ msgid ""
"invocations of the interpreter, which can cause the owner of a reference to "
"dispose of it."
msgstr ""
"Il existe quelques situations où l'utilisation apparemment inoffensive d'une "
"référence empruntée peut entraîner des problèmes. Tous ces problèmes sont en "
"lien avec des invocations implicites de l’interpréteur, et peuvent amener le "
"propriétaire d'une référence à s'en défaire."

#: extending/extending.rst:1020
msgid ""
Expand All @@ -1232,6 +1318,7 @@ msgid ""
msgstr ""

#: extending/extending.rst:1043
#, fuzzy
msgid ""
"Since it is written in Python, the :meth:`__del__` method can execute "
"arbitrary Python code. Could it perhaps do something to invalidate the "
Expand All @@ -1241,6 +1328,13 @@ msgid ""
"this was the last reference to that object, it would free the memory "
"associated with it, thereby invalidating ``item``."
msgstr ""
"Comme elle est écrite en Python, la méthode :meth:`__del__` peut exécuter du "
"code Python arbitraire. Pourrait-elle faire quelque chose pour invalider la "
"référence à ``item`` dans :c:func:`bug' ? Bien sûr ! En supposant que la "
"liste passée dans :c:func:`bug` est accessible à la méthode :meth:`__del__`, "
"elle pourrait exécuter une instruction à l'effet de ``del list[0]``, et en "
"supposant que ce soit la dernière référence à cet objet, elle libérerait la "
"mémoire qui lui est associée, invalidant ainsi ``item``."

#: extending/extending.rst:1051
msgid ""
Expand Down Expand Up @@ -1283,6 +1377,16 @@ msgid ""
"``NULL``, there would be a lot of redundant tests and the code would run "
"more slowly."
msgstr ""
"En général, les fonctions qui prennent des références d'objets comme "
"arguments ne sont pas conçues pour recevoir des pointeurs ``NULL``, et si "
"vous en donnez comme arguments, elles videront la mémoire vive (ou "
"provoqueront des vidages ultérieurs de mémoire). Les fonctions qui "
"renvoient des références d'objets renvoient généralement ``NULL`` uniquement "
"pour indiquer qu'une exception s'est produite. La raison pour laquelle les "
"arguments ``NULL`` ne sont pas testés est que les fonctions passent souvent "
"les objets qu'elles reçoivent à d'autres fonctions --- si chaque fonction "
"devait tester pour ``NULL``, il y aurait beaucoup de tests redondants et le "
"code s'exécuterait plus lentement."

#: extending/extending.rst:1102
msgid ""
Expand Down Expand Up @@ -1367,6 +1471,20 @@ msgid ""
"if symbols are globally visible, the module whose functions one wishes to "
"call might not have been loaded yet!"
msgstr ""
"À première vue, cela semble facile : il suffit d'écrire les fonctions (sans "
"les déclarer \"statiques\", bien sûr), de fournir un fichier d'en-tête "
"approprié et de documenter l'API C. Et en fait, cela fonctionnerait si tous "
"les modules d'extension étaient toujours liés statiquement avec "
"l'interpréteur Python. Cependant, lorsque les modules sont utilisés comme "
"des bibliothèques partagées, les symboles définis dans un module peuvent ne "
"pas être visibles par un autre module. Les détails de la visibilité "
"dépendent du système d'exploitation ; certains systèmes utilisent un espace "
"de noms global pour l'interpréteur Python et tous les modules d'extension "
"(Windows, par exemple), tandis que d'autres exigent une liste explicite des "
"symboles importés au moment de la liaison des modules (AIX en est un "
"exemple), ou offrent un choix de stratégies différentes (la plupart des "
"*Unices*). Et même si les symboles sont globalement visibles, le module dont "
"on souhaite appeler les fonctions n'est peut-être pas encore chargé !"

#: extending/extending.rst:1172
msgid ""
Expand Down Expand Up @@ -1444,6 +1562,13 @@ msgid ""
"complicated in reality (such as adding \"spam\" to every command). This "
"function :c:func:`PySpam_System` is also exported to other extension modules."
msgstr ""
"Le module d'exportation est une modification du module :mod:`spam` de la "
"section :ref:`extending-simpleexample`. La fonction :func:`spam.system` "
"n'appelle pas directement la fonction de la bibliothèque C :c:func:`system`, "
"mais une fonction :c:func:`PySpam_System`, qui ferait bien sûr quelque chose "
"de plus compliqué en réalité (comme ajouter du *spam* à chaque commande). "
"Cette fonction :c:func:`PySpam_System` est également exportée vers d'autres "
"modules d'extension."

#: extending/extending.rst:1225
msgid ""
Expand Down Expand Up @@ -1476,6 +1601,8 @@ msgid ""
"Note that ``PySpam_API`` is declared ``static``; otherwise the pointer array "
"would disappear when :func:`PyInit_spam` terminates!"
msgstr ""
"Notez que ``PySpam_API`` est déclaré ``statique`` ; sinon le tableau de "
"pointeurs disparaîtrait lorsque :func:`PyInit_spam`` se finit !"

#: extending/extending.rst:1290
msgid ""
Expand Down Expand Up @@ -1524,13 +1651,18 @@ msgid ""
"The metaphor of \"borrowing\" a reference is not completely correct: the "
"owner still has a copy of the reference."
msgstr ""
"L'expression \"emprunter une référence\" n'est pas tout à fait correcte, car "
"le propriétaire a toujours une copie de la référence."

#: extending/extending.rst:1378
msgid ""
"Checking that the reference count is at least 1 **does not work** --- the "
"reference count itself could be in freed memory and may thus be reused for "
"another object!"
msgstr ""
"Vérifier que le comptage de référence est d'au moins 1 **ne fonctionne pas** "
"--- le compte de référence lui-même pourrait être en mémoire libérée et peut "
"donc être réutilisé pour un autre objet !"

#: extending/extending.rst:1382
msgid ""
Expand Down