1
0
Fork 0

Translate the second part of the gettext module

This commit is contained in:
François Magimel 2017-10-04 22:10:20 +02:00 committed by Julien Palard
parent 374435a39f
commit 142fb6735c
1 changed files with 227 additions and 34 deletions

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-08-01 13:21+0200\n"
"PO-Revision-Date: 2017-09-23 21:26+0200\n"
"PO-Revision-Date: 2017-10-04 20:41+0200\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -36,11 +36,11 @@ msgid ""
"messages for running under different natural languages."
msgstr ""
"Le module :mod:`gettext` fournit un service d'internationalisation (I18N) et "
"de localisation linguistique (L10N) pour vos modules et applications Python. "
"Il est compatible avec l'API du catalogue de messages GNU `gettext` et à un "
"plus haut niveau, avec l'API basée sur les classes qui serait peut-être plus "
"adaptée aux fichiers Python. L'interface décrite ci-dessous vous permet "
"d'écrire les textes de vos modules et applications dans une langue "
"de localisation linguistique (L10N) pour vos modules et applications "
"Python. Il est compatible avec l'API du catalogue de messages GNU `gettext` "
"et à un plus haut niveau, avec l'API basée sur les classes qui serait peut-"
"être plus adaptée aux fichiers Python. L'interface décrite ci-dessous vous "
"permet d'écrire les textes de vos modules et applications dans une langue "
"naturelle, puis de fournir un catalogue de traductions pour les lancer "
"ensuite dans d'autres langues naturelles."
@ -82,7 +82,7 @@ msgid ""
"`LANGUAGE`, :envvar:`LC_ALL`, :envvar:`LC_MESSAGES`, and :envvar:`LANG` "
"respectively."
msgstr ""
"Lie le *domain* au répertoire *localedir* des localisations. Plus "
"Lie *domain* au répertoire *localedir* des localisations. Plus "
"spécifiquement, :mod:`gettext` va chercher les fichiers binaires :file:`.mo` "
"pour un domaine donné, en utilisant le chemin suivant (sous Unix) : :file:"
"`localedir/language/LC_MESSAGES/domain.mo`, où *language* est contenu "
@ -104,7 +104,7 @@ msgid ""
"func:`ldngettext` functions. If *codeset* is omitted, then the current "
"binding is returned."
msgstr ""
"Lie le *domain* à *codeset*, en changeant l'encodage des chaînes d'octets "
"Lie *domain* à *codeset*, en changeant l'encodage des chaînes d'octets "
"retournées par les fonctions :func:`lgettext`, :func:`ldgettext`, :func:"
"`lngettext` et :func:`ldngettext`. Si *codeset* n'est pas renseigné, alors "
"le lien actuel est renvoyé."
@ -115,8 +115,8 @@ msgid ""
"the current global domain is returned, otherwise the global domain is set to "
"*domain*, which is returned."
msgstr ""
"Change ou interroge le domaine global actuel. Si *domain* vaut ``None``, "
"alors le domaine global actuel est renvoyé. Sinon, le domaine global est "
"Change ou interroge le domaine global actuel. Si *domain* vaut ``None``, "
"alors le domaine global actuel est renvoyé. Sinon, le domaine global est "
"positionné à *domain*, puis renvoyé."
#: ../Doc/library/gettext.rst:66
@ -142,8 +142,8 @@ msgid ""
"return *singular* if *n* is 1; return *plural* otherwise."
msgstr ""
"Comme :func:`gettext`, mais prend en compte les formes au pluriel. Si une "
"traduction a été trouvée, la forme au pluriel est appliquée à *n* et le "
"message généré est renvoyé (quelques langues ont plus de deux formes au "
"traduction a été trouvée, utilise la formule pour trouver le pluriel à *n* "
"et renvoie le message généré (quelques langues ont plus de deux formes au "
"pluriel). Si aucune traduction n'a été trouvée, renvoie *singular* si *n* "
"vaut 1, *plural* sinon."
@ -156,8 +156,12 @@ msgid ""
"precise syntax to be used in :file:`.po` files and the formulas for a "
"variety of languages."
msgstr ""
"La forme au pluriel est récupérée dans l'entête du catalogue. C'est une "
"expression en C ou en Python qui a une variable *n* ; l'expression "
"La formule pour trouver le pluriel est récupérée dans l'entête du "
"catalogue. C'est une expression en C ou en Python qui a une variable libre "
"*n* et qui évalue l'index du pluriel dans le catalogue. Voir `la "
"documentation de GNU gettext <https://www.gnu.org/software/gettext/manual/"
"gettext.html>`__ pour la syntaxe précise à utiliser dans les fichiers :file:"
"`.po` et pour les formules dans différents langues."
#: ../Doc/library/gettext.rst:93
msgid ""
@ -211,7 +215,7 @@ msgstr ""
#: ../Doc/library/gettext.rst:122
msgid "Here's an example of typical usage for this API::"
msgstr "Voici un exemple classique d'utilisation de cette API ::"
msgstr "Voici un exemple classique d'utilisation de cette API : ::"
#: ../Doc/library/gettext.rst:133
msgid "Class-based API"
@ -247,7 +251,7 @@ msgstr ""
"file:`mo`. Il prend en entrée un *domain*, tout comme la fonction :func:"
"`textdomain`. Le paramètre optionnel *localedir* est le même que celui de :"
"func:`bindtextdomain`. Le paramètre optionnel *langages* est une liste de "
"chaîne de caractères correspondants au code d'une langue."
"chaînes de caractères correspondants au code d'une langue."
#: ../Doc/library/gettext.rst:151
msgid ""
@ -369,7 +373,7 @@ msgid ""
"function, like this::"
msgstr ""
"Habituellement, la fonction :func:`_` est appliquée aux chaînes de "
"caractères qui doivent être traduites comme suit ::"
"caractères qui doivent être traduites comme suit : ::"
#: ../Doc/library/gettext.rst:210
msgid ""
@ -378,7 +382,7 @@ msgid ""
"application."
msgstr ""
"Pour plus de confort, il vaut mieux positionner la fonction :func:`_` dans "
"l'espace de noms natif à Python pour la rendre plus accessible dans les "
"l'espace de noms natif à Python pour la rendre plus accessible dans tous les "
"modules de votre application."
#: ../Doc/library/gettext.rst:216
@ -394,10 +398,10 @@ msgid ""
"classes. Here are the methods of :class:`NullTranslations`:"
msgstr ""
"Les classes de traduction implémentent le fait de passer d'une chaîne de "
"caractères du fichier original notée comme à traduire à la traduction de "
"celle-ci. La classe de base utilisée est :class:`NullTranslations`. C'est "
"l'interface de base à utiliser lorsque vous souhaitez écrire vos propres "
"classes spécifiques à la traduction. Voici les méthodes de :class:"
"caractères du fichier original à traduire à la traduction de celle-ci. La "
"classe de base utilisée est :class:`NullTranslations`. C'est l'interface de "
"base à utiliser lorsque vous souhaitez écrire vos propres classes "
"spécifiques à la traduction. Voici les méthodes de :class:"
"`NullTranslations` :"
#: ../Doc/library/gettext.rst:227
@ -408,11 +412,11 @@ msgid ""
"through :meth:`add_fallback`. It then calls ``self._parse(fp)`` if *fp* is "
"not ``None``."
msgstr ""
"Prends un paramètre optionnel un :term:`file object` *fp*, qui est ignoré "
"par la classe de base. Initialise les variables d'instance \"protégées\" "
"Prend un paramètre optionnel un :term:`file object` *fp*, qui est ignoré par "
"la classe de base. Initialise les variables d'instance \"protégées\" "
"*_info* et *_chardet*, définies par des classes dérivées, tout comme "
"*_fallback* qui est définie au travers de :meth:`add_fallback`. Puis ppelle "
"``self._parse(fp)`` si *fp* ne vaut pas ``None``."
"*_fallback* qui est définie au travers de :meth:`add_fallback`. Puis "
"appelle ``self._parse(fp)`` si *fp* ne vaut pas ``None``."
#: ../Doc/library/gettext.rst:235
msgid ""
@ -422,8 +426,8 @@ msgid ""
"parse your format."
msgstr ""
"Cette méthode, non exécutée dans la classe de base, prend en paramètre un "
"objet fichier *fp* et lit les données de ce dernier. Si vous avez un format "
"de fichier du catalogue de messages non pris en charge, vous devriez "
"objet fichier *fp* et lit les données de ce dernier. Si vous avez un "
"catalogue de messages dont le format n'est pas pris en charge, vous devriez "
"surcharger cette méthode pour analyser votre format."
#: ../Doc/library/gettext.rst:243
@ -432,12 +436,17 @@ msgid ""
"translation object should consult the fallback if it cannot provide a "
"translation for a given message."
msgstr ""
"Ajoute *fallback* comme objet de substitution pour l'objet de traduction "
"courant. Un objet de traduction devrait interroger cet objet de "
"substitution s'il ne peut fournir une traduction pour un message donné."
#: ../Doc/library/gettext.rst:250
msgid ""
"If a fallback has been set, forward :meth:`.gettext` to the fallback. "
"Otherwise, return *message*. Overridden in derived classes."
msgstr ""
"Si un objet de substitution a été défini, transmet :meth:`.gettext` à celui-"
"ci. Sinon, renvoie *message*. Surchargé dans les classes dérivées."
#: ../Doc/library/gettext.rst:256
msgid ""
@ -445,6 +454,9 @@ msgid ""
"Otherwise, return *singular* if *n* is 1; return *plural* otherwise. "
"Overridden in derived classes."
msgstr ""
"Si un objet de substitution a été défini, transmet :meth:`ngettext` à celui-"
"ci. Sinon, renvoie *singular* si *n* vaut 1, *plural* sinon. Surchargé "
"dans les classes dérivées."
#: ../Doc/library/gettext.rst:264
msgid ""
@ -453,36 +465,46 @@ msgid ""
"encoding was explicitly set with :meth:`set_output_charset`. Overridden in "
"derived classes."
msgstr ""
"Équivalent de :meth:`.gettext` et :meth:`ngettext`, mais la traduction est "
"renvoyée sous la forme d'une chaîne d'octets, encodée avec l'encodage du "
"système si aucun autre n'a été défini avec :meth:`set_output_charset`. "
"Surchargé dans les classes dérivées."
#: ../Doc/library/gettext.rst:271 ../Doc/library/gettext.rst:392
msgid ""
"These methods should be avoided in Python 3. See the warning for the :func:"
"`lgettext` function."
msgstr ""
"L'utilisation de ces méthodes doivent être évitée en Python 3. Voir "
"l'avertissement de la fonction :func:`lgettext`."
#: ../Doc/library/gettext.rst:277
msgid "Return the \"protected\" :attr:`_info` variable."
msgstr ""
msgstr "Renvoie la variable \"protégée\" :attr:`_info`."
#: ../Doc/library/gettext.rst:282
msgid "Return the encoding of the message catalog file."
msgstr ""
msgstr "Renvoie l'encodage du fichier du catalogue de messages."
#: ../Doc/library/gettext.rst:287
msgid ""
"Return the encoding used to return translated messages in :meth:`.lgettext` "
"and :meth:`.lngettext`."
msgstr ""
"Renvoie l'encodage utilisé par :meth:`.lgettext` et :meth:`.lngettext` pour "
"la traduction des messages."
#: ../Doc/library/gettext.rst:293
msgid "Change the encoding used to return translated messages."
msgstr ""
msgstr "Modifie l'encodage utilisé pour la traduction des messages."
#: ../Doc/library/gettext.rst:298
msgid ""
"This method installs :meth:`.gettext` into the built-in namespace, binding "
"it to ``_``."
msgstr ""
"Cette méthode positionne :meth:`.gettext` dans l'espace de noms natif, en le "
"liant à ``_``."
#: ../Doc/library/gettext.rst:301
msgid ""
@ -491,6 +513,10 @@ msgid ""
"to :func:`_`. Supported names are ``'gettext'``, ``'ngettext'``, "
"``'lgettext'`` and ``'lngettext'``."
msgstr ""
"Si le paramètre *names* est renseigné, celui-ci doit être une séquence "
"contenant les noms des fonctions que vous souhaitez positionner dans "
"l'espace de noms natif, en plus de :func:`_`. Les noms pris en charge sont "
"``'gettext'``, ``'ngettext'``, ``'lgettext'`` et ``'lngettext'``."
#: ../Doc/library/gettext.rst:306
msgid ""
@ -500,12 +526,20 @@ msgid ""
"localized modules should never install :func:`_`. Instead, they should use "
"this code to make :func:`_` available to their module::"
msgstr ""
"Notez que ce n'est là qu'un moyen parmi d'autres, quoique le plus pratique, "
"pour rendre la fonction :func:`_` accessible à votre application. Puisque "
"cela affecte toute l'application, et plus particulièrement l'espace de noms "
"natif, les modules localisés ne devraient jamais y positionner :func:`_`. "
"Au lieu de cela, ces derniers doivent plutôt utiliser le code suivant pour "
"rendre :func:`_` accessible par leurs modules : ::"
#: ../Doc/library/gettext.rst:316
msgid ""
"This puts :func:`_` only in the module's global namespace and so only "
"affects calls within this module."
msgstr ""
"Cela met :func:`_` dans l'espace de noms global du module uniquement et donc "
"n'affectera ses appels que dans ce module."
#: ../Doc/library/gettext.rst:321
msgid "The :class:`GNUTranslations` class"
@ -518,6 +552,10 @@ msgid ""
"`_parse` to enable reading GNU :program:`gettext` format :file:`.mo` files "
"in both big-endian and little-endian format."
msgstr ""
"Le module :mod:`gettext` fournit une classe supplémentaire qui hérite de :"
"class:`NullTranslations` : :class:`GNUTranslations`. Cette classe "
"surcharge :meth:`_parse` pour permettre de lire les fichiers GNU :program:"
"`gettext` :file:`.mo` au format petit et grand boutiste."
#: ../Doc/library/gettext.rst:328
msgid ""
@ -531,18 +569,35 @@ msgid ""
"then all message ids and message strings read from the catalog are converted "
"to Unicode using this encoding, else ASCII encoding is assumed."
msgstr ""
":class:`GNUTranslations` analyse les métadonnées optionnelles du catalogue "
"de traduction. Il est d'usage avec GNU :program:`gettext` d'utiliser une "
"métadonnée pour traduire la chaîne vide. Cette métadonnée est un ensemble "
"de paires de la forme ``clef: valeur`` comme définie par la :rfc:`822`, et "
"doit contenir la clef ``Project-Id-Version``. Si la clef ``Content-Type`` "
"est trouvée dans une métadonnée, alors la propriété ``charset`` (jeu de "
"caractères) est utilisée pour initialiser la variable d'instance \"protégée"
"\" :attr:`_charset`, sinon cette dernière est positionnée à ``None``. Si "
"l'encodage du jeu de caractères est spécifié, tous les messages "
"(identifiants et chaînes de caractères) lus depuis le catalogue sont "
"convertis en chaînes Unicode via cet encodage, ou via l'encodage ASCII si "
"non renseigné."
#: ../Doc/library/gettext.rst:338
msgid ""
"Since message ids are read as Unicode strings too, all :meth:`*gettext` "
"methods will assume message ids as Unicode strings, not byte strings."
msgstr ""
"Et puisque les identifiants des messages sont également lus comme des "
"chaînes Unicode, toutes les méthodes :meth:`*gettext` les considéreront "
"ainsi, et pas comme des chaînes d'octets."
#: ../Doc/library/gettext.rst:341
msgid ""
"The entire set of key/value pairs are placed into a dictionary and set as "
"the \"protected\" :attr:`_info` instance variable."
msgstr ""
"La totalité des paires clef / valeur est insérée dans un dictionnaire et "
"représente la variable d'instance \"protégée\" :attr:`_info`."
#: ../Doc/library/gettext.rst:344
msgid ""
@ -550,11 +605,17 @@ msgid ""
"is unexpected, or if other problems occur while reading the file, "
"instantiating a :class:`GNUTranslations` class can raise :exc:`OSError`."
msgstr ""
"Si le nombre magique du fichier :file:`.mo` est invalide, le numéro de la "
"version majeure inattendu, ou si d'autres problèmes apparaissent durant la "
"lecture du fichier, instancier une classe :class:`GNUTranslations` peut "
"lever une exception :exc:`OSError`."
#: ../Doc/library/gettext.rst:350
msgid ""
"The following methods are overridden from the base class implementation:"
msgstr ""
"Les méthodes suivantes, provenant de l'implémentation de la classe de base, "
"ont été surchargée :"
#: ../Doc/library/gettext.rst:354
msgid ""
@ -564,6 +625,11 @@ msgid ""
"fallback's :meth:`~NullTranslations.gettext` method. Otherwise, the "
"*message* id is returned."
msgstr ""
"Recherche l'identifiant de *message* dans le catalogue et renvoie le message "
"de la chaîne de caractères correspondante comme une chaîne Unicode. Si "
"aucun identifiant n'a été trouvé pour *message* et qu'un substitut a été "
"défini, la recherche est transmise à la méthode :meth:`~NullTranslations."
"gettext` du substitut. Sinon, l'identifiant de *message* est renvoyé."
#: ../Doc/library/gettext.rst:363
msgid ""
@ -571,6 +637,10 @@ msgid ""
"id for purposes of lookup in the catalog, while *n* is used to determine "
"which plural form to use. The returned message string is a Unicode string."
msgstr ""
"Effectue une recherche sur les formes plurielles de l'identifiant d'un "
"message. *singular* est utilisé pour la recherche de l'identifiant dans le "
"catalogue, alors que *n* permet de savoir quelle forme plurielle utiliser. "
"La chaîne de caractère du message renvoyée est une chaîne Unicode."
#: ../Doc/library/gettext.rst:367
msgid ""
@ -579,10 +649,14 @@ msgid ""
"ngettext` method. Otherwise, when *n* is 1 *singular* is returned, and "
"*plural* is returned in all other cases."
msgstr ""
"Si l'identifiant du message n'est pas trouvé dans le catalogue et qu'un "
"substitut a été spécifié, la requête est transmise à la méthode :meth:"
"`~NullTranslations.ngettext` du substitut. Sinon, est renvoyé *singular* "
"lorsque *n* vaut 1, *plural* dans tous les autres cas."
#: ../Doc/library/gettext.rst:372
msgid "Here is an example::"
msgstr "Voici un exemple ::"
msgstr "Voici un exemple : ::"
#: ../Doc/library/gettext.rst:385
msgid ""
@ -591,6 +665,10 @@ msgid ""
"encoding was explicitly set with :meth:`~NullTranslations."
"set_output_charset`."
msgstr ""
"Équivalent de :meth:`.gettext` et :meth:`.ngettext`, mais la traduction est "
"renvoyée sous la forme d'une chaîne d'octets, encodée avec l'encodage du "
"système si aucun autre n'a été défini avec :meth:`~NullTranslations."
"set_output_charset`."
#: ../Doc/library/gettext.rst:397
msgid "Solaris message catalog support"
@ -615,12 +693,17 @@ msgid ""
"GNOME uses a version of the :mod:`gettext` module by James Henstridge, but "
"this version has a slightly different API. Its documented usage was::"
msgstr ""
"GNOME utilise une version du module :mod:`gettext` de James Henstridge, mais "
"qui a une API légèrement différente. D'après la documentation, elle "
"s'utilise ainsi : ::"
#: ../Doc/library/gettext.rst:417
msgid ""
"For compatibility with this older module, the function :func:`Catalog` is an "
"alias for the :func:`translation` function described above."
msgstr ""
"Pour des raisons de compatibilité avec cet ancien module, la fonction :func:"
"`Catalog` est un alias de la fonction :func:`translation` décrite ci-dessous."
#: ../Doc/library/gettext.rst:420
msgid ""
@ -628,6 +711,9 @@ msgid ""
"supported access through a mapping API, but this appears to be unused and so "
"is not currently supported."
msgstr ""
"Une différence entre ce module et celui de Henstridge : les objets de son "
"catalogue étaient accessibles depuis un schéma de l'API, mais cela semblait "
"ne pas être utilisé et donc n'est pas pris en charge."
#: ../Doc/library/gettext.rst:426
msgid "Internationalizing your programs and modules"
@ -641,25 +727,37 @@ msgid ""
"and cultural habits. In order to provide multilingual messages for your "
"Python programs, you need to take the following steps:"
msgstr ""
"L'internationalisation (I18N) consiste à permettre à un programme de "
"recevoir des traductions dans plusieurs langues. La localisation (L10N) "
"consiste à adapter un programme à la langue et aux habitudes culturelles "
"locales, une fois celui-ci internationalisé. Afin de fournir du texte "
"multilingue à votre programme Python, les étapes suivantes sont nécessaires :"
#: ../Doc/library/gettext.rst:434
msgid ""
"prepare your program or module by specially marking translatable strings"
msgstr ""
"préparer votre programme ou module en marquant spécifiquement les chaînes à "
"traduire"
#: ../Doc/library/gettext.rst:436
msgid ""
"run a suite of tools over your marked files to generate raw messages catalogs"
msgstr ""
"lancer une suite d'outils sur les fichiers contenant des chaînes à traduire "
"pour générer des catalogues de messages brut"
#: ../Doc/library/gettext.rst:438
msgid "create language specific translations of the message catalogs"
msgstr ""
"créer les traductions spécifiques à une langue des catalogues de messages"
#: ../Doc/library/gettext.rst:440
msgid ""
"use the :mod:`gettext` module so that message strings are properly translated"
msgstr ""
"utiliser le module :mod:`gettext` pour que les chaînes de caractères soient "
"bien traduites"
#: ../Doc/library/gettext.rst:442
msgid ""
@ -668,6 +766,10 @@ msgid ""
"wrapping it in ``_('...')`` --- that is, a call to the function :func:`_`. "
"For example::"
msgstr ""
"Afin de préparer votre code à être traduit (I18N), vous devrez rechercher "
"toutes les chaînes de caractères de vos fichiers. À chaque chaîne de "
"caractères à traduire doit être appliqué le marqueur ``_('...')`` --- c'est-"
"à-dire en appelant la fonction :func:`_`. Par exemple : ::"
#: ../Doc/library/gettext.rst:452
msgid ""
@ -675,6 +777,8 @@ msgid ""
"candidate for translation, while the strings ``'mylog.txt'`` and ``'w'`` are "
"not."
msgstr ""
"Dans cet exemple, la chaîne ``'writing a log message'`` est maquée comme "
"traduite, contrairement aux chaînes ``'mylog.txt'`` et ``'w'``."
#: ../Doc/library/gettext.rst:455
msgid ""
@ -688,6 +792,16 @@ msgid ""
"available as part of his `po-utils package <https://github.com/pinard/po-"
"utils>`__."
msgstr ""
"Il existe quelques outils pour extraire les chaînes de caractères destinées "
"à la traduction. Le programme d'origine GNU :program:`gettext` ne prenait "
"en charge que les codes sources en C ou C++, mais sa version étendue :"
"program:`xgettext` peut lire du code écrit dans de nombreux langages, dont "
"le Python, afin de trouver les chaînes notées comme traduisibles. `Babel "
"<http://babel.pocoo.org/>`__ est une bibliothèque en Python "
"d'internationalisation, qui inclut un script :file:`pybabel` permettant "
"d'extraire et de compiler des catalogues de messages. Le programme de "
"François Pinard, nommé :program:`xpot`, fait de même et est disponible dans "
"son `paquet po-utils <https://github.com/pinard/po-utils>`__."
#: ../Doc/library/gettext.rst:465
msgid ""
@ -701,6 +815,17 @@ msgid ""
"with GNU :program:`msgfmt`. With these two programs, you may not need the "
"GNU :program:`gettext` package to internationalize your Python applications.)"
msgstr ""
"(Python inclut également des versions en Python de ces programmes, :program:"
"`pygettext.py` et :program:`msgfmt.py`, que certaines distributions Python "
"installeront pour vous. :program:`pygettext.py` est similaire à :program:"
"`xgettext`, mais ne comprend que le code source écrit en Python et ne peut "
"prendre en charge d'autres langages de programmation tels que le C ou C++. :"
"program:`pygettext.py` possède une interface en ligne de commande similaire "
"à celle de :program:`xgettext` --- pour plus de détails sur son utilisation, "
"exécuter ``pygettext.py --help``. :program:`msgfmt.py` est compatible avec "
"GNU :program:`msgfmt`. Avec ces deux programmes, vous ne devriez pas avoir "
"besoin du paquet GNU :program:`gettext` pour internationaliser vos "
"applications en Python.)"
#: ../Doc/library/gettext.rst:477
msgid ""
@ -709,6 +834,11 @@ msgid ""
"files that contain every marked string in the source code, along with a "
"placeholder for the translated versions of these strings."
msgstr ""
":program:`xgettext`, :program:`pygettext` et d'autres outils similaires "
"génèrent des fichiers :file:`.po` représentant les catalogues de messages. "
"Il s'agit de fichiers structurés et lisibles par un être humain, qui "
"contiennent toutes les chaînes du code source marquées comme traduisible, "
"ainsi que leur traduction à utiliser."
#: ../Doc/library/gettext.rst:483
msgid ""
@ -720,6 +850,14 @@ msgid ""
"mo` files are used by the :mod:`gettext` module for the actual translation "
"processing at run-time."
msgstr ""
"Les copies de ces fichiers :file:`.po` sont ensuite remises à des êtres "
"humains qui traduisent le contenu pour chaque langue naturelle prise en "
"charge. Pour chacune des langues, ces derniers renvoient la version "
"complétée sous la forme d'un fichier :file:`<code-langue>.po` qui a été "
"compilé dans un fichier binaire :file:`.mo` représentant le catalogue "
"lisible par une machine à l'aide du programme :program:`msgfmt`. Les "
"fichiers :file:`.mo` sont utilisés par le module :mod:`gettext` pour la "
"traduction lors de l'exécution."
#: ../Doc/library/gettext.rst:492
msgid ""
@ -727,6 +865,9 @@ msgid ""
"are internationalizing a single module or your entire application. The next "
"two sections will discuss each case."
msgstr ""
"La façon dont vous utilisez le module :mod:`gettext` dans votre code dépend "
"de si vous internationalisez un seul module ou l'ensemble de votre "
"application. Les deux sections suivantes traitent chacune des cas."
#: ../Doc/library/gettext.rst:498
msgid "Localizing your module"
@ -738,6 +879,9 @@ msgid ""
"changes, e.g. to the built-in namespace. You should not use the GNU "
"``gettext`` API but instead the class-based API."
msgstr ""
"Si vous localisez votre module, veillez à ne pas faire de changements "
"globaux, e.g. dans l'espace de nom natif. Vous ne devriez pas utiliser "
"l'API GNU ``gettext`` mais plutôt celle basée sur les classes."
#: ../Doc/library/gettext.rst:504
msgid ""
@ -746,6 +890,10 @@ msgid ""
"in GNU :program:`gettext` format. Here's what you would put at the top of "
"your module::"
msgstr ""
"Disons que votre module s'appelle \"spam\" et que les fichiers :file:`.mo` "
"de traduction dans les différentes langues naturelles soient dans :file:`/"
"usr/share/locale` au format GNU :program:`gettext`. Voici ce que vous "
"pouvez alors mettre en haut de votre module : ::"
#: ../Doc/library/gettext.rst:515
msgid "Localizing your application"
@ -758,18 +906,27 @@ msgid ""
"file of your application. This will let all your application-specific files "
"just use ``_('...')`` without having to explicitly install it in each file."
msgstr ""
"Si vous localisez votre application, vous pouvez positionner la fonction :"
"func:`_` de manière globale dans l'espace de noms natif, généralement dans "
"le fichier principal de votre application. Cela permettra à tous les "
"fichiers de votre application de n'utiliser que ``_('...')`` sans devoir le "
"redéfinir explicitement dans chaque fichier."
#: ../Doc/library/gettext.rst:522
msgid ""
"In the simple case then, you need only add the following bit of code to the "
"main driver file of your application::"
msgstr ""
"Dans ce cas, vous n'aurez à ajouter que le bout de code suivant au fichier "
"principal de votre application : ::"
#: ../Doc/library/gettext.rst:528
msgid ""
"If you need to set the locale directory, you can pass it into the :func:"
"`install` function::"
msgstr ""
"Si vous avez besoin de définir le dossier des localisations, vous pouvez le "
"mettre en argument de la fonction :func:`install` : ::"
#: ../Doc/library/gettext.rst:536
msgid "Changing languages on the fly"
@ -781,6 +938,9 @@ msgid ""
"want to create multiple translation instances and then switch between them "
"explicitly, like so::"
msgstr ""
"Si votre programme a besoin de prendre en charge plusieurs langues en même "
"temps, vous pouvez créer plusieurs instances de traduction, puis basculer "
"entre elles de façon explicite, comme ceci : ::"
#: ../Doc/library/gettext.rst:559
msgid "Deferred translations"
@ -792,6 +952,10 @@ msgid ""
"Occasionally however, you need to mark strings for translation, but defer "
"actual translation until later. A classic example is::"
msgstr ""
"Dans la plupart des cas, en programmation, les chaînes de caractères sont "
"traduites à l'endroit où on les écrit. Cependant, il peut arriver que vous "
"ayez besoin de traduire une chaîne de caractères un peu plus loin. Un "
"exemple classique est : ::"
#: ../Doc/library/gettext.rst:574
msgid ""
@ -799,10 +963,12 @@ msgid ""
"translatable, but you don't actually want to translate them until they are "
"printed."
msgstr ""
"Ici, vous voulez marquer les chaînes de caractères de la liste ``animals`` "
"comme étant traduisibles, mais ne les traduire qu'au moment de les afficher."
#: ../Doc/library/gettext.rst:578
msgid "Here is one way you can handle this situation::"
msgstr ""
msgstr "Voici un moyen de gérer ce cas : ::"
#: ../Doc/library/gettext.rst:594
msgid ""
@ -812,6 +978,12 @@ msgid ""
"command). Take care, though if you have a previous definition of :func:`_` "
"in the local namespace."
msgstr ""
"Cela fonctionne car la définition factice de :func:`_` renvoie simplement la "
"chaîne de caractères passée en entrée. Et cette définition factice va "
"temporairement outrepasser toute autre définition de :func:`_` dans l'espace "
"de noms natif (jusqu'à l'utilisation de la commande :keyword:`del`). "
"Attention toutefois si vous avez déjà une autre définition de :func:`_` dans "
"l'espace de noms local."
#: ../Doc/library/gettext.rst:600
msgid ""
@ -819,10 +991,13 @@ msgid ""
"translatable to the :program:`gettext` program, because the parameter is not "
"a string literal."
msgstr ""
"À noter qu'à la deuxième utilisation de :func:`_`, \"a\" ne sera pas vue "
"comme traduisible par le programme :program:`gettext` car ce n'est pas un "
"chaîne au sens propre."
#: ../Doc/library/gettext.rst:604
msgid "Another way to handle this is with the following example::"
msgstr ""
msgstr "Voici une autre solution : ::"
#: ../Doc/library/gettext.rst:618
msgid ""
@ -835,6 +1010,14 @@ msgid ""
"totally arbitrary; it could have just as easily been :func:"
"`MarkThisStringForTranslation`."
msgstr ""
"Dans ce cas, les chaînes à traduire sont identifiées avec la fonction :func:"
"`N_`, qui n'entre pas en conflit avec définition de :func:`_`. Cependant, "
"il faudra apprendre à votre programme d'extraction de messages à rechercher "
"les chaînes de caractères à traduire parmi celles ayant le marqueur :func:"
"`N_`. :program:`xgettext`, :program:`pygettext`, ``pybabel extract`` et :"
"program:`xpot` prennent tous en charge cela grâce à l'option en ligne de "
"commande :option:`!-k`. Le choix du nom :func:`N_` ici est totalement "
"arbitraire et aurait très bien pu être :func:`MarqueurDeTraduction`."
#: ../Doc/library/gettext.rst:629
msgid "Acknowledgements"
@ -846,6 +1029,9 @@ msgid ""
"previous implementations, and valuable experience to the creation of this "
"module:"
msgstr ""
"Les personnes suivantes ont contribué au code, ont fait des retours, ont "
"participé aux suggestions de conception et aux implémentations précédentes, "
"et ont partagé leur expérience précieuse pour la création de ce module :"
#: ../Doc/library/gettext.rst:634
msgid "Peter Funk"
@ -892,6 +1078,13 @@ msgid ""
"For this reason, it is always best to call :func:`bindtextdomain` with an "
"explicit absolute path at the start of your application."
msgstr ""
"Le dossier par défaut pour les localisations dépend du système : par "
"exemple, sur RedHat c'est :file:`/usr/share/locale`, mais sur Solaris c'est :"
"file:`/usr/lib/locale`. Le module :mod:`gettext` n'essaie pas de prendre en "
"charge ce paramètre système, mais utilise le dossier :file:`sys.prefix/share/"
"locale`. C'est pour cette raison qu'il est toujours préférable d'appeler :"
"func:`bindtextdomain` en donnant explicitement un chemin absolu au début de "
"votre application."
#: ../Doc/library/gettext.rst:659
msgid "See the footnote for :func:`bindtextdomain` above."