1
0
Fork 0

extending.po: 11%

This commit is contained in:
Julien Palard 2016-01-04 22:32:26 +01:00
parent e1c1199a75
commit c449877b74
1 changed files with 126 additions and 24 deletions

View File

@ -1,31 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 1990-2015, Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
# Julien Palard <julien@palard.fr>, 2016.
msgid ""
msgstr ""
"Project-Id-Version: Python 3.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-12-22 00:55+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"PO-Revision-Date: 2016-01-04 22:26+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: French <translation@afpy.fr>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.8.6\n"
#: extending/building.rst:7
msgid "Building C and C++ Extensions"
msgstr ""
msgstr "Construire des extensions C et C++"
#: extending/building.rst:9
msgid ""
"A C extension for CPython is a shared library (e.g. a ``.so`` file on Linux, "
"``.pyd`` on Windows), which exports an *initialization function*."
msgstr ""
"Une extension C pour CPython est une bibliothèque partagée (Un ``.so`` sur "
"Linux, un ``.pyd`` sur windows), qui expose une *fonction d'initialisation*."
#: extending/building.rst:12
msgid ""
@ -34,16 +36,23 @@ msgid ""
"extension. When using distutils, the correct filename is generated "
"automatically."
msgstr ""
"Pour pouvoir être importée, la bibliothèque partagée doit pourvoir être "
"trouvée dans :envvar:`PYTHONPATH`, et doit porter le nom du module, avec "
"l'extension appropriée. En utilisant distutils, le nom est généré "
"automatiquement."
#: extending/building.rst:16
msgid "The initialization function has the signature:"
msgstr ""
msgstr "La fonction d'initialisation doit avoir le prototype :"
#: extending/building.rst:20
msgid ""
"It returns either a fully-initialized module, or a :c:type:`PyModuleDef` "
"instance. See :ref:`initializing-modules` for details."
msgstr ""
"Elle doit donner soit un module entièrement initialisé, soit une instance "
"de :ctype:`PyModuleDef`. Voir :ref:`initializing-modules` pour plus de "
"détails."
#: extending/building.rst:25
msgid ""
@ -54,6 +63,14 @@ msgid ""
"``PyInitU_<modulename>``, with ``<modulename>`` encoded using Python's "
"*punycode* encoding with hyphens replaced by underscores. In Python::"
msgstr ""
"Pour les modules dont les noms sont entièrement en ASCII, la fonction doit "
"être nommée ``PyInit_<modulename>``, dont ``<modulename>`` est remplacé par "
"le nom du module. En utilisant :ref:`multi-phase-initialization`, il est "
"possible d'utiliser des noms de modules comportant des caractères non-ASCII. "
"Dans ce cas, le nom de la fonction d'initialisation est "
"``PyInitU_<modulename>``, où``modulename`` est encodé avec l'encodage "
"*punyencode* de Python, dont les tirets sont remplacés par des tirets-bas. "
"En Python ça donne ::"
#: extending/building.rst:39
msgid ""
@ -63,6 +80,12 @@ msgid ""
"function corresponding to the filename is found. See :PEP:`489#multiple-"
"modules-in-one-library` for details."
msgstr ""
"Il est possible d'exporter plusieurs modules depuis une même bibliothèque "
"partagée, en exposant plusieurs fonctions d'initialisation. Cependant, il "
"est nécessaire d'en créer autant de liens symboliques pour pouvoir les "
"importer, ou créer un outil d'import personnalisé, car par défaut seul la "
"fonction correspondant au nom du fichier est trouvée. Voir la :PEP:"
"`489#multiple-modules-in-library`."
#: extending/building.rst:49
msgid "Building C and C++ Extensions with distutils"
@ -74,16 +97,22 @@ msgid ""
"Python. Since distutils also supports creation of binary packages, users "
"don't necessarily need a compiler and distutils to install the extension."
msgstr ""
"Des modules d'extension peuvent être construits avec distutils, qui est "
"inclus dans Python. Puisque distutils gère aussi la création de paquets "
"binaires, les utilisateurs n'auront pas nécessairement besoin ni d'un "
"compilateur ni de distutils pour installer l'extension."
#: extending/building.rst:57
msgid ""
"A distutils package contains a driver script, :file:`setup.py`. This is a "
"plain Python file, which, in the most simple case, could look like this::"
msgstr ""
"Un paquet distutils contient un script pilote, :file:`setup.py`. C'est un "
"simple fichier Python, qui ressemble typiquement à ::"
#: extending/building.rst:71
msgid "With this :file:`setup.py`, and a file :file:`demo.c`, running ::"
msgstr ""
msgstr "Avec ce :file:`setup.py` et un fichier :file:`demo.c`, lancer ::"
#: extending/building.rst:75
msgid ""
@ -92,6 +121,10 @@ msgid ""
"will end up in a subdirectory :file:`build/lib.system`, and may have a name "
"like :file:`demo.so` or :file:`demo.pyd`."
msgstr ""
"compilera :file:`demo.c`, et produira un module d'extension nommé ``demo`` "
"dans le dossier :file:`build`. En fonction du système, le fichier du module "
"peut se retrouver dans :file:`build/lib.system`, et son nom peut être :file:"
"`demo.py` ou :file:`demo.pyd`."
#: extending/building.rst:80
msgid ""
@ -121,8 +154,12 @@ msgid ""
"preprocessor defines and libraries may be needed. This is demonstrated in "
"the example below. ::"
msgstr ""
"Dans la plupart des cas, construire une extension est plus complexe à cause "
"des bibliothèque et définitions de préprocesseur dont la compilation "
"pourrait dépendre. En voilà un exemple typique ::"
#: extending/building.rst:122
#, fuzzy
msgid ""
"In this example, :func:`setup` is called with additional meta-information, "
"which is recommended when distribution packages have to be built. For the "
@ -131,32 +168,42 @@ msgid ""
"passes this information in different ways to the compiler. For example, on "
"Unix, this may result in the compilation commands ::"
msgstr ""
"Dans cet exemple, :func:`setup` est appelé avec des méta-informations "
"supplémentaires, ce qui est recommandé lorsque"
#: extending/building.rst:133
msgid ""
"These lines are for demonstration purposes only; distutils users should "
"trust that distutils gets the invocations right."
msgstr ""
"Ces lignes ne sont qu'à titre d'exemple, les utilisateurs de distutils "
"doivent avoir confiance en distutils qui fera les appels correctement."
#: extending/building.rst:140
msgid "Distributing your extension modules"
msgstr ""
msgstr "Distribuer vos modules d'extension"
#: extending/building.rst:142
msgid ""
"When an extension has been successfully build, there are three ways to use "
"it."
msgstr ""
"Lorsqu'une extension a été construite avec succès, il existe trois moyens de "
"l'utiliser."
#: extending/building.rst:144
msgid ""
"End-users will typically want to install the module, they do so by running ::"
msgstr ""
"Typiquement, les utilisateurs vont vouloir installer le module, ils le font "
"en exécutant ::"
#: extending/building.rst:148
msgid ""
"Module maintainers should produce source packages; to do so, they run ::"
msgstr ""
"Les mainteneurs de modules voudront produire des paquets source, pour ce "
"faire ils exécuteront ::"
#: extending/building.rst:152
msgid ""
@ -164,6 +211,9 @@ msgid ""
"distribution; this is done through a :file:`MANIFEST.in` file; see the "
"distutils documentation for details."
msgstr ""
"Dans certains cas, des fichiers supplémentaires doivent être joints à la "
"distribution source, c'est possible grâce à un fichier :file:`MANIFEST.in`. "
"Voir la documentation de distutils pour plus de détails."
#: extending/building.rst:156
msgid ""
@ -171,10 +221,13 @@ msgid ""
"create binary distributions. Depending on the platform, one of the following "
"commands can be used to do so. ::"
msgstr ""
"Si la distribution source a été construite avec succès, les mainteneurs "
"peuvent créer une distribution binaire. En fonction de la plateforme, une "
"des commandes suivantes peut être utilisée. ::"
#: extending/embedding.rst:8
msgid "Embedding Python in Another Application"
msgstr ""
msgstr "Inclure Python dans une autre Application"
#: extending/embedding.rst:10
msgid ""
@ -220,17 +273,19 @@ msgstr ""
#: extending/embedding.rst:42
msgid "c-api-index"
msgstr ""
msgstr "c-api-index"
#: extending/embedding.rst:42
msgid ""
"The details of Python's C interface are given in this manual. A great deal "
"of necessary information can be found here."
msgstr ""
"Les détails sur l'interface entre Python et le C sont donnés dans ce manuel. "
"Pléthore informations s'y trouvent."
#: extending/embedding.rst:49
msgid "Very High Level Embedding"
msgstr ""
msgstr "Inclusion de Très Haut Niveau"
#: extending/embedding.rst:51
msgid ""
@ -239,6 +294,10 @@ msgid ""
"needing to interact with the application directly. This can for example be "
"used to perform some operation on a file. ::"
msgstr ""
"La manière la plus simple d'intégrer Python est d'utiliser une interface de "
"très haut niveau. Cette interface a pour but d'exécuter un script Python "
"sans avoir à interagir avec directement. C'est utile, par exemple, pour "
"effectuer une opération sur un fichier. ::"
#: extending/embedding.rst:75
msgid ""
@ -257,7 +316,7 @@ msgstr ""
#: extending/embedding.rst:90
msgid "Beyond Very High Level Embedding: An overview"
msgstr ""
msgstr "Au delà de l'Inclusion de Haut Niveau: Survol"
#: extending/embedding.rst:92
msgid ""
@ -267,6 +326,11 @@ msgid ""
"calls. At the cost of having to write more C code, you can achieve almost "
"anything."
msgstr ""
"L'interface de haut niveau vous permet d'exécuter n'importe quel morceau de "
"code Python depuis votre application, mais échanger des données est quelque "
"peu alambiqué. Si c'est ce dont vous avez besoin, vous devez utiliser des "
"appels de niveau plus bas. Il vous en coûtera plus de lignes de C à écrire, "
"mais vous pourrez presque tout faire."
#: extending/embedding.rst:97
msgid ""
@ -275,36 +339,42 @@ msgid ""
"previous chapters are still valid. To show this, consider what the extension "
"code from Python to C really does:"
msgstr ""
"Il est à souligner qu'étendre ou inclure Python revient à la louche au même, "
"en dépit de la différence d'intention. La plupart des sujets parcourus dans "
"les chapitres précédents sont toujours valides. Pour le prouver, regardez ce "
"qu'un code d'extension de Python vers C fait réellement :"
#: extending/embedding.rst:102
msgid "Convert data values from Python to C,"
msgstr ""
msgstr "Convertir des valeurs de Python vers le C,"
#: extending/embedding.rst:104
msgid "Perform a function call to a C routine using the converted values, and"
msgstr ""
msgstr "Appeler une fonction C en utilisant les valeurs converties, et"
#: extending/embedding.rst:106
msgid "Convert the data values from the call from C to Python."
msgstr ""
msgstr "Convertir les résultats de l'appel à la fonction C pour Python."
#: extending/embedding.rst:108
msgid "When embedding Python, the interface code does:"
msgstr ""
msgstr "Lors de l'inclusion de Python, le code de l'interface fait :"
#: extending/embedding.rst:110
msgid "Convert data values from C to Python,"
msgstr ""
msgstr "Convertir les valeurs depuis le C vers Python,"
#: extending/embedding.rst:112
msgid ""
"Perform a function call to a Python interface routine using the converted "
"values, and"
msgstr ""
"Effectuer un appel de fonction de l'interface Python en utilisant les "
"valeurs converties, et"
#: extending/embedding.rst:115
msgid "Convert the data values from the call from Python to C."
msgstr ""
msgstr "Convertir les valeurs de l'appel Python pour le C."
#: extending/embedding.rst:117
msgid ""
@ -313,6 +383,11 @@ msgid ""
"is the routine that you call between both data conversions. When extending, "
"you call a C routine, when embedding, you call a Python routine."
msgstr ""
"Tel que vous le voyez, les conversions sont simplement inversées pour "
"s'adapter au différentes directions de transfert inter-langage. La seule "
"différence est la fonction que vous appelez entre les deux conversions de "
"données. Lors de l'extension, vous appelez une fonction C, lors de "
"l'inclusion vous appelez une fonction Python."
#: extending/embedding.rst:122
msgid ""
@ -321,10 +396,15 @@ msgid ""
"be understood. Since these aspects do not differ from extending the "
"interpreter, you can refer to earlier chapters for the required information."
msgstr ""
"Ce chapitre ne couvrira pas la conversion des données de Python vers le C ni "
"l'inverse. Aussi, un usage correct des références, ainsi que savoir gérer "
"les erreurs sont considérés acquis. Ces aspects étant identiques à "
"l'extension de l'interpréteur, vous pouvez vous référer aux chapitres "
"précédents."
#: extending/embedding.rst:131
msgid "Pure Embedding"
msgstr ""
msgstr "Inclusion Pure"
#: extending/embedding.rst:133
msgid ""
@ -333,10 +413,14 @@ msgid ""
"directly interact with the application (but that will change in the next "
"section)."
msgstr ""
"L'objectif du premier programme est d'exécuter une fonction dans un script "
"Python. Comme dans la section à propos des interfaces de haut niveau, "
"l'interpréteur n'interagit pas directement avec l'application (mais le fera "
"dans la section suivante)."
#: extending/embedding.rst:138
msgid "The code to run a function defined in a Python script is:"
msgstr ""
msgstr "Le code pour appeler une fonction définie dans un script Python est :"
#: extending/embedding.rst:143
msgid ""
@ -346,10 +430,15 @@ msgid ""
"(let's call the finished executable :program:`call`), and use it to execute "
"a Python script, such as:"
msgstr ""
"Ce code charge un script Python en utilisant ``argv[1]``, et appelle une "
"fonction dont le nom est dans ``argv[2]``. Ses arguments entiers sont les "
"autres valeurs de ``argv``. Si vous :ref:`compilez et liez <compiling>` ce "
"programme (appelons l'exécutable :program:`call`), et l'appellez pour "
"exécuter un script Python, tel que :"
#: extending/embedding.rst:158
msgid "then the result should be::"
msgstr ""
msgstr "alors le résultat sera ::"
#: extending/embedding.rst:164
msgid ""
@ -357,6 +446,10 @@ msgid ""
"is for data conversion between Python and C, and for error reporting. The "
"interesting part with respect to embedding Python starts with ::"
msgstr ""
"Bien que le programme soit plutôt gros pour ses fonctionnalités, la plupart "
"du code n'est que conversion de données entre Python et C, aussi que pour "
"rapporter les erreurs. La partie intéressante, qui concerne l'insertion de "
"Python débute par ::"
#: extending/embedding.rst:173
msgid ""
@ -365,6 +458,10 @@ msgid ""
"which is constructed using the :c:func:`PyUnicode_FromString` data "
"conversion routine. ::"
msgstr ""
"Après avoir initialisé l'interpréteur, le script est chargé en utilisant :c:"
"func:`PyImport_Import`. Cette fonction prend une chaîne Python pour "
"argument, elle même construite en utilisant la fonction de conversion :c:"
"func:`PyUnicode_FromString`."
#: extending/embedding.rst:186
msgid ""
@ -374,6 +471,11 @@ msgid ""
"proceeds by constructing a tuple of arguments as normal. The call to the "
"Python function is then made with::"
msgstr ""
"Une fois le script chargé, le nom recherché est obtenu en utilisant :c:func:"
"`PyObject_GetAttrString`. Si le nom existe, et que l'objet récupéré peut "
"être appelé, vous pouvez présumer sans risque que c'est une fonction. Le "
"programme continue, classiquement, par la construction de l'uplet "
"d'arguments. L'appel à la fonction Python est alors effectué avec ::"
#: extending/embedding.rst:194
msgid ""