forked from AFPy/python-docs-fr
Compare commits
60 Commits
Author | SHA1 | Date |
---|---|---|
Julien Palard | 99f2135a89 | |
DERICK TEMFACK | e552e4f391 | |
Julien Palard | 20eba35774 | |
Julien Palard | 900b88915a | |
Julien Palard | 0a1983e280 | |
Julien Palard | 27b150c990 | |
Philippe Galvan | c19994718d | |
Nicolas Haller | 1961c8af9b | |
Jean Abou-Samra | fe714889f3 | |
Julien Palard | c1f223aff0 | |
Jean Abou-Samra | e6f2a01f46 | |
Nicolas Haller | 8001d30342 | |
Jean-Christophe Helary | b48e326e75 | |
Nils Van Zuijlen | 168550f460 | |
Christophe Nanteuil | 0b030e224d | |
Jules Lasne | 37da9a8706 | |
Mathieu Dupuy | 0181416d7f | |
Antoine | a183a44f3c | |
Jean Abou-Samra | 1e8e99b91b | |
Jean Abou-Samra | 86f8d73230 | |
Mathieu Dupuy | 2c827d82d1 | |
Mathieu Dupuy | 583c3fad3b | |
Melcore | 229bcd578e | |
Mathieu Dupuy | 0a16b65078 | |
PhilippeGalvan | 5ca18fea1b | |
Jean Abou Samra | 9a4893a322 | |
Jean Abou Samra | 3fc81dd82c | |
Mathieu Dupuy | 7b5494304c | |
Mathieu Dupuy | ea615bb65f | |
Nicolas Haller | f30d3f2c7b | |
Mathieu Dupuy | 0546f86f47 | |
Loc Cosnier | 29fd9f86d6 | |
Mathieu Dupuy | 3374b5df2c | |
Loc Cosnier | d9b20359bf | |
Vincent Poulailleau | fe69851029 | |
Mathieu Dupuy | 7cc3ab279d | |
Mathieu Dupuy | fbad65ec29 | |
Mathieu Dupuy | 9b6d6e2585 | |
Thierry Pellé | c4cc2a5a28 | |
Christophe Nanteuil | a0c7fabc13 | |
Nicolas Haller | 5025581da6 | |
edith | 720a28c138 | |
Christophe Nanteuil | 2fb8b34a03 | |
Mathieu Dupuy | 28a1fc2581 | |
Thierry Pellé | b0ab49b4bf | |
freallearn | b76b03017b | |
Mathieu Dupuy | 50d8aa8ff9 | |
Christophe Nanteuil | 3c0f0166ec | |
Jean-Michel Laprise | 50bd7b27d6 | |
Yannick Gingras | cff92cc17a | |
Emmanuel Leblond | e805151949 | |
Jean-Michel Laprise | d9cb93b14e | |
Thierry Pellé | 5460f47129 | |
Jean Abou Samra | cf90440fa3 | |
Julien Palard | b8eb0ae207 | |
Yannick Gingras | f75fa85f4a | |
Yannick Gingras | 2d202f482a | |
Julien Palard | 3df1955d81 | |
Julien Palard | e82724d296 | |
Julien Palard | 518292adbb |
|
@ -7,5 +7,5 @@
|
|||
# chmod a+x ~/.local/bin/podiff
|
||||
# git config diff.podiff.textconv podiff
|
||||
|
||||
*.po diff=podiff merge=po3way
|
||||
*.po diff=podiff
|
||||
*.pot diff=podiff
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
liberapay: python-docs-fr
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
name: Réservation
|
||||
about: Juste réserver un fichier po (je veux être le seul à travailler dessus).
|
||||
title: Je travaille sur DOSSIER/FICHIER.po
|
||||
labels: reservation
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!---
|
||||
Attention, une réservation n'est effective qu'un mois, renouvelez-la si nécessaire en commentant dessus.
|
||||
-->
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"problemMatcher": [
|
||||
{
|
||||
"owner": "pospell",
|
||||
"pattern": [
|
||||
{
|
||||
"regexp": "^(.*):(\\d+):(.*)$",
|
||||
"file": 1,
|
||||
"line": 2,
|
||||
"message": 3
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
# Number of days of inactivity before an issue becomes stale
|
||||
daysUntilStale: 60
|
||||
# Number of days of inactivity before a stale issue is closed
|
||||
daysUntilClose: 14
|
||||
# Issues with these labels will never be considered stale
|
||||
exemptLabels:
|
||||
- meta
|
||||
- on hold
|
||||
- EASY
|
||||
# Label to use when marking an issue as stale
|
||||
staleLabel: stale
|
||||
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||
markComment: >
|
||||
Cette issue/pull request a été automatiquement marquée comme innactive car elle n'a pas eu d'activité récente.
|
||||
Elle sera fermée si il ne se passe rien dans les 14 jours qui viennent. Merci pour votre contribution
|
||||
|
||||
This issue/pull request has been automatically marked as stale because it has not had
|
||||
recent activity. It will be closed if no further activity occurs. Thank you
|
||||
for your contributions.
|
||||
# Comment to post when closing a stale issue. Set to `false` to disable
|
||||
closeComment: true
|
||||
|
||||
# Comment to post when removing the stale label.
|
||||
unmarkComment: >
|
||||
Cette issue n'est plus innactive !
|
||||
This issue isn't stale anymore!
|
|
@ -0,0 +1,101 @@
|
|||
---
|
||||
|
||||
name: Tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '*.*'
|
||||
pull_request:
|
||||
branches:
|
||||
- '*.*'
|
||||
|
||||
jobs:
|
||||
checks:
|
||||
strategy:
|
||||
matrix:
|
||||
tool:
|
||||
- name: sphinx-lint
|
||||
package: sphinx-lint
|
||||
command: 'sphinx-lint --enable default-role --ignore .git'
|
||||
- name: Orthographe
|
||||
package: pospell
|
||||
apt_dependencies: hunspell hunspell-fr-comprehensive
|
||||
command: 'pospell -p dict -l fr_FR $CHANGED_PO_FILES'
|
||||
- name: Longueur des lignes
|
||||
command: 'awk ''{if (length($0) > 80 && length(gensub(/[^ ]/, "", "g")) > 1) {print FILENAME ":" FNR, "line too long:", $0; ERRORS+=1}} END {if (ERRORS>0) {exit 1}}'' $CHANGED_PO_FILES'
|
||||
- name: Grammaire
|
||||
package: padpo
|
||||
command: 'padpo -i $CHANGED_PO_FILES 2>&1 | grep -v -Ff padpo.ignore'
|
||||
|
||||
name: ${{ matrix.tool.name }} (${{ matrix.tool.package }})
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Register problem matchers
|
||||
run: echo "::add-matcher::.github/problem-matchers/pospell.json"
|
||||
- uses: lots0logs/gh-action-get-changed-files@2.1.4
|
||||
id: changed_files
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
- uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.9'
|
||||
- name: Install ${{ matrix.tool.package }}
|
||||
run: |
|
||||
if [ -n "${{ matrix.tool.apt_dependencies }}" ]; then
|
||||
sudo apt-get update && sudo apt-get install -y ${{ matrix.tool.apt_dependencies }}
|
||||
fi
|
||||
if [ -n "${{ matrix.tool.package }}" ]; then
|
||||
python -m pip install --upgrade pip setuptools wheel
|
||||
python -m pip install ${{ matrix.tool.package }}
|
||||
fi
|
||||
- name: Run ${{ matrix.tool.package }}
|
||||
env:
|
||||
ADDED_FILES: ${{ join(fromJSON(steps.changed_files.outputs.added), ' ') }}
|
||||
MODIFIED_FILES: ${{ join(fromJSON(steps.changed_files.outputs.modified), ' ') }}
|
||||
run: |
|
||||
CHANGED_PO_FILES=$(printf "%s %s\n" "$ADDED_FILES" "$MODIFIED_FILES" | tr ' ' '\n' | grep '.po$'; true)
|
||||
if [ -n "$CHANGED_PO_FILES" ]
|
||||
then
|
||||
echo "Running on:" $CHANGED_PO_FILES
|
||||
${{ matrix.tool.command }}
|
||||
else
|
||||
echo "No changed po files, nothing to check."
|
||||
fi
|
||||
|
||||
sphinx:
|
||||
name: 'Génération de la doc (sphinx)'
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 30
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: '~/cpython/'
|
||||
key: '1'
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
key: '1'
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Clone cpython
|
||||
run: |
|
||||
if [ ! -d ~/cpython ]; then
|
||||
git clone https://github.com/python/cpython ~/cpython/
|
||||
else
|
||||
git -C ~/cpython fetch
|
||||
fi
|
||||
- name: Prepare build hierarchy
|
||||
run: |
|
||||
mkdir -p ~/locales/fr/LC_MESSAGES/
|
||||
cp -uv --parents *.po */*.po ~/locales/fr/LC_MESSAGES/
|
||||
git -C ~/cpython checkout $(grep ^CPYTHON_CURRENT_COMMIT Makefile| cut -d= -f2)
|
||||
- name: Prepare venv
|
||||
run: |
|
||||
make -C $HOME/cpython/Doc clean-venv
|
||||
make -C $HOME/cpython/Doc venv
|
||||
- name: sphinx-build
|
||||
run: make -C $HOME/cpython/Doc SPHINXOPTS="-q -j4 -D locale_dirs=$HOME/locales -D language=fr -D gettext_compact=0" autobuild-dev-html
|
116
CONTRIBUTING.rst
116
CONTRIBUTING.rst
|
@ -110,51 +110,61 @@ ce qui suit après vous être assuré que ``~/.local/bin/`` se trouve dans votre
|
|||
Pas d'inquiétude, cela ne change la façon dont Git affiche les changements que sur
|
||||
les fichiers de la traduction, sans incidence sur les autres.
|
||||
|
||||
.. _cloner:
|
||||
|
||||
Première étape : créer et peupler son dépôt
|
||||
===========================================
|
||||
|
||||
Si ce n'est pas déjà fait, créez un compte sur `le serveur Git de
|
||||
l'AFPy <https://git.afpy.org/>`_. Puis, allez sur le dépôt
|
||||
`python-docs-fr <https://git.afpy.org/AFPy/python-docs-fr>`_ et
|
||||
cliquez sur le bouton « Bifurcation » en haut à droite. Vous créez
|
||||
ainsi sur Gitea une copie privée du projet où vous avez le droit de
|
||||
faire des modifications.
|
||||
Sur Github
|
||||
----------
|
||||
|
||||
À ce stade, il est recommandé, bien que facultatif, de vous créer une
|
||||
clé SSH si vous n'en avez pas encore, et de l'ajouter à votre compte
|
||||
Gitea. Pour générer la clé, consultez `le guide de GitLab
|
||||
<https://docs.gitlab.com/ee/user/ssh.html>`_ ou `celui de GitHub
|
||||
<https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/connecting-to-github-with-ssh>`_.
|
||||
Pour l'ajouter à votre compte Gitea, il suffit d'aller dans le menu de
|
||||
votre compte en haut à droite et de cliquer sur « Configuration »,
|
||||
puis d'aller dans l'onglet « Clés SSH / GPG », et de copier la clé
|
||||
SSH.
|
||||
Depuis votre compte GitHub, se rendre dans le dépôt des sources `python-docs-fr
|
||||
<https://github.com/python/python-docs-fr>`_ puis cliquer sur son bouton ``Fork``.
|
||||
Ceci crée une copie du projet sur votre compte Github. C'est sur cette copie
|
||||
que vous avez le droit de faire des modifications.
|
||||
|
||||
Si vous le préférez, vous pouvez également vous passer de cette
|
||||
configuration et utiliser le HTTPS à la place du SSH. Néanmoins,
|
||||
sachez que vous devrez taper votre nom d'utilisateur et votre mot de
|
||||
passe Gitea à chaque fois que vous ouvrez ou modifiez une
|
||||
contribution.
|
||||
|
||||
Enfin, faites une copie locale du dépôt sur votre ordinateur afin de
|
||||
pouvoir éditer les fichiers, avec ces commandes :
|
||||
Étape par étape :
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
# Clonez votre copie sur Gitea avec `git` en utilisant SSH :
|
||||
git clone git@git.afpy.org:VOTRE_NOM_DE_COMPTE_GITEA/python-docs-fr.git
|
||||
# Clonez votre fork Github avec `git` en utilisant ssh
|
||||
git clone git@github.com:VOTRE_NOM_DE_COMPTE_GITHUB/python-docs-fr.git
|
||||
|
||||
# ... ou bien avec HTTPS :
|
||||
git clone https://git.afpy.org/VOTRE_NOM_DE_COMPTE_GITEA/python-docs-fr.git
|
||||
# ou bien avec HTTPS
|
||||
git clone https://github.com/VOTRE_NOM_DE_COMPTE_GITHUB/python-docs-fr.git
|
||||
|
||||
# Allez dans le répertoire cloné
|
||||
cd python-docs-fr/
|
||||
|
||||
# Ajoutez le dépôt officiel (nommé upstream),
|
||||
# ceci permet à `git` de savoir quoi et où est *upstream*
|
||||
git remote add upstream https://git.afpy.org/AFPy/python-docs-fr.git
|
||||
# ceci permet à *git* de savoir quoi et où est *upstream*
|
||||
git remote add upstream https://github.com/python/python-docs-fr.git
|
||||
|
||||
|
||||
Sur une autre forge
|
||||
-------------------
|
||||
|
||||
Si vous n'avez pas de compte Github, il est possible d'utiliser une autre forge.
|
||||
Vous devez dans un premier temps initier un dépôt vide sur la forge où vous voulez héberger le
|
||||
dépôt puis le peupler.
|
||||
|
||||
Étape par étape :
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
# Clonez en HTTPS le dépôt
|
||||
git clone https://github.com/python/python-docs-fr
|
||||
|
||||
# Allez dans le répertoire cloné
|
||||
cd python-docs-fr/
|
||||
|
||||
# Renommez *origin* en *upstream* pour avoir une référence vers le dépôt officiel
|
||||
# Il permettra de récupérer les nouveaux commits
|
||||
git remote rename origin upstream
|
||||
|
||||
# Rajoutez le *remote* de votre forge (en HTTPS ou SSH)
|
||||
git remote add origin <url>
|
||||
|
||||
# Envoyez le dépôt sur votre forge et définir par défaut
|
||||
git push -u origin
|
||||
|
||||
|
||||
Deuxième étape : choisir et réserver le fichier sur lequel travailler
|
||||
|
@ -238,21 +248,21 @@ Création de la branche de traduction
|
|||
|
||||
Vous êtes maintenant prêt. Pour travailler, nous avons besoin d'une
|
||||
branche, basée sur une version à jour (fraîchement récupérée) de la
|
||||
branche « upstream/3.11 ». On met donc à jour notre version locale.
|
||||
branche « upstream/3.10 ». On met donc à jour notre version locale.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git fetch upstream
|
||||
|
||||
|
||||
On crée ensuite la branche, en la basant sur « upstream/3.11 », fraîchement récupérée.
|
||||
On crée ensuite la branche, en la basant sur « upstream/3.10 », fraîchement récupérée.
|
||||
Il est pratique de nommer cette branche en fonction du
|
||||
fichier sur lequel on travaille. Par exemple, si vous travaillez sur
|
||||
« library/sys.po », vous pouvez nommer votre branche « library-sys ».
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git checkout -b library-sys upstream/3.11
|
||||
git checkout -b library-sys upstream/3.10
|
||||
|
||||
|
||||
|
||||
|
@ -305,7 +315,7 @@ documentation local :
|
|||
|
||||
.. code-block:: bash
|
||||
|
||||
make htmlview
|
||||
make serve
|
||||
|
||||
|
||||
La documentation est publiée à l'adresse `<http://localhost:8000/library/sys.html>`_.
|
||||
|
@ -319,7 +329,7 @@ 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 source. Ces avertissements ne sont pas tous fondés. En cas de doute,
|
||||
*affichez et relisez la page HTML produite* avec ``make htmlview``.
|
||||
*affichez et relisez la page HTML produite* avec ``make serve``.
|
||||
|
||||
Quatrième étape : publier sa traduction
|
||||
=======================================
|
||||
|
@ -548,7 +558,7 @@ Ne traduisez pas le contenu des balises comme ``:ref:...`` ou ``:class:...``.
|
|||
Vous devez cependant traduire les balises ``:term:...``, qui font référence à
|
||||
une primitive ou un concept défini dans le `glossaire Python <https://docs.python.org/fr/3/glossary.html>`_.
|
||||
La syntaxe est ``:term:nom_français<nom_anglais>``. Par exemple, traduisez
|
||||
`` :term:`dictionary` `` en `` :term:`dictionnaire <dictionary>` ``.
|
||||
``:term:`dictionary``` en ``:term:`dictionnaire <dictionary>```.
|
||||
|
||||
Comme le glossaire est déjà traduit, il y a forcément une correspondance à chaque
|
||||
terme que vous pouvez rencontrer.
|
||||
|
@ -577,7 +587,6 @@ argument argument (à ne pas confondre avec *paramètre*)
|
|||
backslash antislash, *backslash*
|
||||
backtrace trace d'appels, trace de pile
|
||||
backport rétroporter
|
||||
base class classe mère
|
||||
bound lier
|
||||
bug bogue
|
||||
built-in natif
|
||||
|
@ -832,34 +841,3 @@ entre un paragraphe et sa traduction ; il faut passer outre ses avertissements.
|
|||
Vous pouvez aussi rajouter un commentaire dans le fichier *.po* pour avertir
|
||||
les traducteurs suivants et éviter qu'ils ne « corrigent » par erreur ces
|
||||
avertissements.
|
||||
|
||||
|
||||
|
||||
Migration vers Gitea
|
||||
====================
|
||||
|
||||
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 <cloner_>`_ pour faire une copie (*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
|
||||
réutiliser la même, qui doit se trouver dans le fichier
|
||||
``~/.ssh/id_ed25519.pub`` ou un nom similaire).
|
||||
|
||||
- Exécutez ces deux commandes pour mettre à jour votre dépôt local
|
||||
afin qu'il interagisse avec Gitea au lieu de GitHub :
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git remote set-url upstream https://git.afpy.org/AFPy/python-docs-fr.git
|
||||
git remote set-url origin git@git.afpy.org:VOTRE_NOM_DE_COMPTE_GITEA/python-docs-fr.git
|
||||
|
||||
Si vous avez choisi d'utiliser le HTTPS à la place du SSH, remplacez
|
||||
la deuxième ligne par :
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git remote set-url origin https://git.afpy.org/VOTRE_NOM_DE_COMPTE_GITEA/python-docs-fr.git
|
||||
|
|
59
Makefile
59
Makefile
|
@ -20,9 +20,9 @@
|
|||
# from which we generated our po files. We use it here so when we
|
||||
# test build, we're building with the .rst files that generated our
|
||||
# .po files.
|
||||
CPYTHON_CURRENT_COMMIT := 1b736838e6ae1b4ef42cdd27c2708face908f92c
|
||||
CPYTHON_CURRENT_COMMIT := b2db1c208066b67bdf57bf3799de50352fe63416
|
||||
LANGUAGE := fr
|
||||
BRANCH := 3.11
|
||||
BRANCH := 3.10
|
||||
|
||||
EXCLUDED := \
|
||||
whatsnew/2.?.po \
|
||||
|
@ -65,7 +65,7 @@ PYTHON := $(shell which python3)
|
|||
MODE := html
|
||||
POSPELL_TMP_DIR := .pospell/
|
||||
JOBS := auto
|
||||
SPHINXERRORHANDLING = -W
|
||||
SERVE_PORT :=
|
||||
|
||||
# Detect OS
|
||||
|
||||
|
@ -90,16 +90,15 @@ all: ensure_prerequisites
|
|||
mkdir -p locales/$(LANGUAGE)/LC_MESSAGES/
|
||||
$(CP_CMD) -u --parents *.po */*.po locales/$(LANGUAGE)/LC_MESSAGES/
|
||||
$(MAKE) -C venv/cpython/Doc/ \
|
||||
JOBS='$(JOBS)' \
|
||||
SPHINXOPTS='-D locale_dirs=$(abspath locales) \
|
||||
SPHINXOPTS='-j$(JOBS) \
|
||||
-D locale_dirs=$(abspath locales) \
|
||||
-D language=$(LANGUAGE) \
|
||||
-D gettext_compact=0 \
|
||||
-D latex_engine=xelatex \
|
||||
-D latex_elements.inputenc= \
|
||||
-D latex_elements.fontenc=' \
|
||||
SPHINXERRORHANDLING=$(SPHINXERRORHANDLING) \
|
||||
$(MODE)
|
||||
@echo "Build success, open file://$(abspath venv/cpython/)/Doc/build/html/index.html or run 'make htmlview' to see them."
|
||||
@echo "Build success, open file://$(abspath venv/cpython/)/Doc/build/html/index.html or run 'make serve' to see them."
|
||||
|
||||
|
||||
# We clone cpython/ inside venv/ because venv/ is the only directory
|
||||
|
@ -118,9 +117,14 @@ ensure_prerequisites: venv/cpython/.git/HEAD
|
|||
exit 1; \
|
||||
fi
|
||||
|
||||
.PHONY: htmlview
|
||||
htmlview: MODE=htmlview
|
||||
htmlview: all
|
||||
|
||||
.PHONY: serve
|
||||
serve:
|
||||
ifdef SERVE_PORT
|
||||
$(MAKE) -C venv/cpython/Doc/ serve SERVE_PORT=$(SERVE_PORT)
|
||||
else
|
||||
$(MAKE) -C venv/cpython/Doc/ serve
|
||||
endif
|
||||
|
||||
.PHONY: todo
|
||||
todo: ensure_prerequisites
|
||||
|
@ -138,51 +142,22 @@ DESTS = $(addprefix $(POSPELL_TMP_DIR)/,$(addsuffix .out,$(SRCS)))
|
|||
.PHONY: spell
|
||||
spell: ensure_prerequisites $(DESTS)
|
||||
|
||||
.PHONY: line-length
|
||||
line-length:
|
||||
@echo "Searching for long lines..."
|
||||
@awk '{if (length(gensub(/శ్రీనివాస్/, ".", "g", $$0)) > 80 && length(gensub(/[^ ]/, "", "g")) > 1) {print FILENAME ":" FNR, "line too long:", $$0; ERRORS+=1}} END {if (ERRORS>0) {exit 1}}' *.po */*.po
|
||||
|
||||
.PHONY: sphinx-lint
|
||||
sphinx-lint:
|
||||
@echo "Checking all files using sphinx-lint..."
|
||||
@sphinx-lint --enable all --disable line-too-long *.po */*.po
|
||||
|
||||
$(POSPELL_TMP_DIR)/%.po.out: %.po dict
|
||||
@echo "Pospell checking $<..."
|
||||
@mkdir -p $(@D)
|
||||
mkdir -p $(@D)
|
||||
pospell -p dict -l fr_FR $< && touch $@
|
||||
|
||||
.PHONY: fuzzy
|
||||
fuzzy: ensure_prerequisites
|
||||
potodo -f --exclude venv .venv $(EXCLUDED)
|
||||
|
||||
.PHONY: check-headers
|
||||
check-headers:
|
||||
@grep -L '^# Copyright (C) [0-9-]*, Python Software Foundation' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the po comment in $$file"; \
|
||||
done
|
||||
@grep -L '^"Project-Id-Version: Python 3\\n"$$' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the 'Project-Id-Version' header in $$file"; \
|
||||
done
|
||||
@grep -L '^"Language: fr\\n"$$' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the 'Language' header in $$file"; \
|
||||
done
|
||||
@grep -L '^"Language-Team: FRENCH <traductions@lists.afpy.org>\\n"' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the 'Language-Team' header in $$file"; \
|
||||
done
|
||||
|
||||
.PHONY: verifs
|
||||
verifs: spell line-length sphinx-lint check-headers
|
||||
verifs: spell
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@echo "Cleaning *.mo and $(POSPELL_TMP_DIR)"
|
||||
rm -fr $(POSPELL_TMP_DIR) locales/$(LANGUAGE)/LC_MESSAGES/
|
||||
rm -fr $(POSPELL_TMP_DIR)
|
||||
find -name '*.mo' -delete
|
||||
@echo "Cleaning build directory"
|
||||
$(MAKE) -C venv/cpython/Doc/ clean
|
||||
|
|
|
@ -23,7 +23,7 @@ Vous pouvez contribuer :
|
|||
`mécène <https://liberapay.com/python-docs-fr>`_ du projet.
|
||||
|
||||
Consultez le
|
||||
`guide <https://git.afpy.org/AFPy/python-docs-fr/src/branch/3.11/CONTRIBUTING.rst>`_
|
||||
`guide <https://github.com/python/python-docs-fr/blob/3.10/CONTRIBUTING.rst>`_
|
||||
pour apprendre les conventions à respecter.
|
||||
|
||||
Le `coordinateur <https://www.python.org/dev/peps/pep-0545/#language-team>`_ de
|
||||
|
|
2
about.po
2
about.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-07-08 17:54+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
114
bugs.po
114
bugs.po
|
@ -5,15 +5,15 @@ msgid ""
|
|||
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-12-11 17:39+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-07-08 17:50+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\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.1\n"
|
||||
"X-Generator: Poedit 3.0\n"
|
||||
|
||||
#: bugs.rst:5
|
||||
msgid "Dealing with Bugs"
|
||||
|
@ -51,22 +51,16 @@ msgid ""
|
|||
msgstr ""
|
||||
"Si vous trouvez un bogue dans cette documentation ou si vous désirez "
|
||||
"proposer une amélioration, si cela concerne aussi la documentation en "
|
||||
"anglais, ouvrez un rapport sur le :ref:`traqueur <using-the-tracker>` "
|
||||
"anglais, ouvrez un rapport sur le :ref:`tracker <using-the-tracker>` "
|
||||
"décrivant en anglais le bogue et où vous l'avez trouvé. Si le problème ne "
|
||||
"touche que la traduction en français, ouvrez un ticket sur https://git.afpy."
|
||||
"org/AFPy/python-docs-fr/issues, ou venez nous en toucher un mot sur le canal "
|
||||
"#python-fr sur *libera.chat* (https://kiwiirc.com/nextclient/#irc://irc."
|
||||
"libera.chat/#python-fr). Si vous avez une suggestion de correction, merci de "
|
||||
"l'inclure également."
|
||||
"touche que la traduction en français, ouvrez un ticket sur https://github."
|
||||
"com/python/python-docs-fr/issues, ou venez nous en toucher un mot sur le "
|
||||
"canal #python-fr sur *libera.chat* (https://kiwiirc.com/nextclient/#irc://"
|
||||
"irc.libera.chat/#python-fr). Si vous avez une suggestion de correction, "
|
||||
"merci de l'inclure également."
|
||||
|
||||
#: bugs.rst:22
|
||||
msgid ""
|
||||
"You can also open a discussion item on our `Documentation Discourse forum "
|
||||
"<https://discuss.python.org/c/documentation/26>`_."
|
||||
msgstr ""
|
||||
|
||||
#: bugs.rst:25
|
||||
msgid ""
|
||||
"If you're short on time, you can also email documentation bug reports to "
|
||||
"docs@python.org (behavioral bugs can be sent to python-list@python.org). "
|
||||
"'docs@' is a mailing list run by volunteers; your request will be noticed, "
|
||||
|
@ -78,11 +72,11 @@ msgstr ""
|
|||
"volontaires, votre requête sera vue, mais elle peut prendre un moment pour "
|
||||
"être traitée."
|
||||
|
||||
#: bugs.rst:33
|
||||
#: bugs.rst:30
|
||||
msgid "`Documentation bugs`_"
|
||||
msgstr "`Bogues de documentation`_"
|
||||
|
||||
#: bugs.rst:33
|
||||
#: bugs.rst:30
|
||||
msgid ""
|
||||
"A list of documentation bugs that have been submitted to the Python issue "
|
||||
"tracker."
|
||||
|
@ -90,18 +84,18 @@ msgstr ""
|
|||
"Liste des bogues de documentation soumis à l'outil de suivi des problèmes "
|
||||
"Python."
|
||||
|
||||
#: bugs.rst:36
|
||||
#: bugs.rst:33
|
||||
msgid "`Issue Tracking <https://devguide.python.org/tracker/>`_"
|
||||
msgstr "`Outil de suivi des problèmes <https://devguide.python.org/tracker/>`_"
|
||||
|
||||
#: bugs.rst:36
|
||||
#: bugs.rst:33
|
||||
msgid ""
|
||||
"Overview of the process involved in reporting an improvement on the tracker."
|
||||
msgstr ""
|
||||
"Vue d'ensemble du processus pour proposer une amélioration avec l'outil de "
|
||||
"suivi."
|
||||
|
||||
#: bugs.rst:39
|
||||
#: bugs.rst:36
|
||||
msgid ""
|
||||
"`Helping with Documentation <https://devguide.python.org/docquality/#helping-"
|
||||
"with-documentation>`_"
|
||||
|
@ -109,13 +103,13 @@ msgstr ""
|
|||
"`Aider avec la documentation <https://devguide.python.org/docquality/"
|
||||
"#helping-with-documentation>`_"
|
||||
|
||||
#: bugs.rst:39
|
||||
#: bugs.rst:36
|
||||
msgid ""
|
||||
"Comprehensive guide for individuals that are interested in contributing to "
|
||||
"Python documentation."
|
||||
msgstr "Guide complet pour qui souhaite contribuer à la documentation Python."
|
||||
|
||||
#: bugs.rst:41
|
||||
#: bugs.rst:38
|
||||
msgid ""
|
||||
"`Documentation Translations <https://devguide.python.org/documenting/"
|
||||
"#translating>`_"
|
||||
|
@ -123,7 +117,7 @@ msgstr ""
|
|||
"`Aider avec la documentation <https://devguide.python.org/documenting/"
|
||||
"#translating>`_"
|
||||
|
||||
#: bugs.rst:42
|
||||
#: bugs.rst:39
|
||||
msgid ""
|
||||
"A list of GitHub pages for documentation translation and their primary "
|
||||
"contacts."
|
||||
|
@ -131,24 +125,25 @@ msgstr ""
|
|||
"Liste de dépôts GitHub où la documentation est traduite, avec les personnes "
|
||||
"à contacter."
|
||||
|
||||
#: bugs.rst:48
|
||||
#: bugs.rst:45
|
||||
msgid "Using the Python issue tracker"
|
||||
msgstr "Utilisation du gestionnaire de tickets Python"
|
||||
|
||||
#: bugs.rst:50
|
||||
#: bugs.rst:47
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Issue reports for Python itself should be submitted via the GitHub issues "
|
||||
"tracker (https://github.com/python/cpython/issues). The GitHub issues "
|
||||
"tracker offers a web form which allows pertinent information to be entered "
|
||||
"and submitted to the developers."
|
||||
msgstr ""
|
||||
"Les rapports concernant un problème relatif à Python lui-même doivent être "
|
||||
"soumis *via* l'outil de suivi des problèmes de GitHub (https://github.com/"
|
||||
"python/cpython/issues). Le gestionnaire de tickets propose un formulaire Web "
|
||||
"permettant de saisir des informations pertinentes à soumettre aux "
|
||||
"développeurs."
|
||||
"Les rapports de bogues pour Python lui-même devraient être soumis via le "
|
||||
"l'outil de suivi des bogues (*Bug Tracker Python* — http://bugs.python."
|
||||
"org/). Le gestionnaire de tickets propose un formulaire Web permettant de "
|
||||
"saisir des informations pertinentes à soumettre aux développeurs."
|
||||
|
||||
#: bugs.rst:55
|
||||
#: bugs.rst:52
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The first step in filing a report is to determine whether the problem has "
|
||||
"already been reported. The advantage in doing so, aside from saving the "
|
||||
|
@ -160,46 +155,48 @@ msgid ""
|
|||
msgstr ""
|
||||
"La première étape pour remplir un rapport est de déterminer si le problème a "
|
||||
"déjà été rapporté. L'avantage de cette approche, en plus d'économiser du "
|
||||
"temps aux développeurs, est d'apprendre ce qui a été fait pour le résoudre ; "
|
||||
"temps aux développeurs, est d'apprendre ce qui a été fait pour le résoudre ; "
|
||||
"il se peut que le problème soit déjà résolu dans la prochaine version, ou "
|
||||
"que des informations complémentaires soient attendues (auquel cas votre "
|
||||
"contribution est la bienvenue !). Pour ce faire, cherchez dans le "
|
||||
"gestionnaire de tickets grâce à la boîte de recherche en haut de la page."
|
||||
"contribution est la bienvenue !). Pour ce faire, cherchez dans la base de "
|
||||
"données de bogues grâce à la boîte de recherche en haut de la page."
|
||||
|
||||
#: bugs.rst:62
|
||||
#: bugs.rst:59
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"If the problem you're reporting is not already in the list, log in to "
|
||||
"GitHub. If you don't already have a GitHub account, create a new account "
|
||||
"using the \"Sign up\" link. It is not possible to submit a bug report "
|
||||
"anonymously."
|
||||
msgstr ""
|
||||
"Si le problème que vous soumettez n'est pas déjà dans la liste, connectez-"
|
||||
"vous à GitHub. Si vous n'avez pas déjà un compte GitHub, créez un nouveau "
|
||||
"compte en cliquant sur le lien « Sign Up ». Il n'est pas possible de "
|
||||
"soumettre un rapport de bogue de manière anonyme."
|
||||
"Si le problème que vous soumettez n'est pas déjà dans l'outil de suivi des "
|
||||
"bogues, revenez au *Python Bug Tracker* et connectez-vous. Si vous n'avez "
|
||||
"pas déjà un compte pour le *tracker*, cliquez sur le lien « S'enregistrer », "
|
||||
"ou, si vous utilisez *OpenID*, sur l'un des logos des fournisseurs *OpenID* "
|
||||
"dans la barre latérale. Il n'est pas possible de soumettre un rapport de "
|
||||
"bogue de manière anonyme."
|
||||
|
||||
#: bugs.rst:67
|
||||
#: bugs.rst:64
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Being now logged in, you can submit an issue. Click on the \"New issue\" "
|
||||
"button in the top bar to report a new issue."
|
||||
msgstr ""
|
||||
"Une fois connecté, vous pouvez rapporter un problème. Sélectionnez le bouton "
|
||||
"*New issue* dans la barre en haut pour ouvrir un nouveau formulaire de "
|
||||
"rapport."
|
||||
"Une fois identifié, pour pouvez rapporter un bogue. Sélectionnez le lien "
|
||||
"*Create New* dans la barre latérale pour ouvrir un nouveau formulaire de "
|
||||
"rapport de bogue."
|
||||
|
||||
#: bugs.rst:70
|
||||
#: bugs.rst:67
|
||||
msgid "The submission form has two fields, \"Title\" and \"Comment\"."
|
||||
msgstr "Le formulaire de rapport contient deux champs, *Title* et *Comment*."
|
||||
msgstr ""
|
||||
|
||||
#: bugs.rst:72
|
||||
#: bugs.rst:69
|
||||
msgid ""
|
||||
"For the \"Title\" field, enter a *very* short description of the problem; "
|
||||
"less than ten words is good."
|
||||
msgstr ""
|
||||
"Dans le champ *Title*, entrez une *très* brève description du problème "
|
||||
"rencontré ; tâchez de vous limiter à dix mots."
|
||||
|
||||
#: bugs.rst:75
|
||||
#: bugs.rst:72
|
||||
msgid ""
|
||||
"In the \"Comment\" field, describe the problem in detail, including what you "
|
||||
"expected to happen and what did happen. Be sure to include whether any "
|
||||
|
@ -212,17 +209,18 @@ msgstr ""
|
|||
"plateforme matérielle et logicielle vous utilisiez (en incluant les "
|
||||
"informations de versions)."
|
||||
|
||||
#: bugs.rst:80
|
||||
#: bugs.rst:77
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Each issue report will be reviewed by a developer who will determine what "
|
||||
"needs to be done to correct the problem. You will receive an update each "
|
||||
"time an action is taken on the issue."
|
||||
msgstr ""
|
||||
"Chaque rapport sera attribué à un développeur qui déterminera ce qui est "
|
||||
"Chaque bogue sera attribué à un développeur qui déterminera ce qui est "
|
||||
"nécessaire d'entreprendre pour corriger le problème. Vous recevrez une "
|
||||
"notification à chaque action concernant le rapport."
|
||||
"notification à chaque action effectuée sur le bogue."
|
||||
|
||||
#: bugs.rst:89
|
||||
#: bugs.rst:86
|
||||
msgid ""
|
||||
"`How to Report Bugs Effectively <https://www.chiark.greenend.org.uk/"
|
||||
"~sgtatham/bugs.html>`_"
|
||||
|
@ -230,7 +228,7 @@ msgstr ""
|
|||
"`Comment signaler des bogues de manière efficace <https://www.chiark."
|
||||
"greenend.org.uk/~sgtatham/bugs.html>`_ (en anglais)"
|
||||
|
||||
#: bugs.rst:88
|
||||
#: bugs.rst:85
|
||||
msgid ""
|
||||
"Article which goes into some detail about how to create a useful bug report. "
|
||||
"This describes what kind of information is useful and why it is useful."
|
||||
|
@ -239,7 +237,7 @@ msgstr ""
|
|||
"bogue utile. Il décrit quel genre d'information est utile et pourquoi elle "
|
||||
"est utile."
|
||||
|
||||
#: bugs.rst:92
|
||||
#: bugs.rst:89
|
||||
msgid ""
|
||||
"`Bug Writing Guidelines <https://bugzilla.mozilla.org/page.cgi?id=bug-"
|
||||
"writing.html>`_"
|
||||
|
@ -247,7 +245,7 @@ msgstr ""
|
|||
"`Guide pour la rédaction de rapports de bogues <https://bugzilla.mozilla.org/"
|
||||
"page.cgi?id=bug-writing.html>`_"
|
||||
|
||||
#: bugs.rst:92
|
||||
#: bugs.rst:89
|
||||
msgid ""
|
||||
"Information about writing a good bug report. Some of this is specific to "
|
||||
"the Mozilla project, but describes general good practices."
|
||||
|
@ -255,11 +253,11 @@ msgstr ""
|
|||
"Conseils pour écrire un bon rapport de bogue. Certains sont spécifiques au "
|
||||
"projet Mozilla mais présentent des bonnes pratiques générales."
|
||||
|
||||
#: bugs.rst:98
|
||||
#: bugs.rst:95
|
||||
msgid "Getting started contributing to Python yourself"
|
||||
msgstr "Commencer à contribuer à Python vous-même"
|
||||
|
||||
#: bugs.rst:100
|
||||
#: bugs.rst:97
|
||||
msgid ""
|
||||
"Beyond just reporting bugs that you find, you are also welcome to submit "
|
||||
"patches to fix them. You can find more information on how to get started "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2018-10-20 21:16+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -96,7 +96,7 @@ msgstr ""
|
|||
|
||||
#: c-api/apiabiversion.rst:47
|
||||
msgid "1"
|
||||
msgstr ""
|
||||
msgstr "1"
|
||||
|
||||
#: c-api/apiabiversion.rst:47
|
||||
#, fuzzy
|
||||
|
@ -113,7 +113,7 @@ msgstr ""
|
|||
|
||||
#: c-api/apiabiversion.rst:49
|
||||
msgid "2"
|
||||
msgstr ""
|
||||
msgstr "2"
|
||||
|
||||
#: c-api/apiabiversion.rst:49
|
||||
#, fuzzy
|
||||
|
@ -130,7 +130,7 @@ msgstr ""
|
|||
|
||||
#: c-api/apiabiversion.rst:51
|
||||
msgid "3"
|
||||
msgstr ""
|
||||
msgstr "3"
|
||||
|
||||
#: c-api/apiabiversion.rst:51
|
||||
#, fuzzy
|
||||
|
@ -147,7 +147,7 @@ msgstr ""
|
|||
|
||||
#: c-api/apiabiversion.rst:53
|
||||
msgid "4"
|
||||
msgstr ""
|
||||
msgstr "4"
|
||||
|
||||
#: c-api/apiabiversion.rst:53
|
||||
#, fuzzy
|
||||
|
@ -182,22 +182,7 @@ msgid ""
|
|||
"``0x030a00f0``."
|
||||
msgstr "Ainsi ``3.4.1a2`` est une hexane-version ``0x030401a2``."
|
||||
|
||||
#: c-api/apiabiversion.rst:61
|
||||
msgid "Use this for numeric comparisons, e.g. ``#if PY_VERSION_HEX >= ...``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/apiabiversion.rst:63
|
||||
msgid "This version is also available via the symbol :data:`Py_Version`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/apiabiversion.rst:67
|
||||
msgid ""
|
||||
"The Python runtime version number encoded in a single constant integer, with "
|
||||
"the same format as the :c:macro:`PY_VERSION_HEX` macro. This contains the "
|
||||
"Python version used at run time."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/apiabiversion.rst:73
|
||||
#: c-api/apiabiversion.rst:62
|
||||
msgid "All the given macros are defined in :source:`Include/patchlevel.h`."
|
||||
msgstr ""
|
||||
"Toutes les macros données sont définies dans :source:`Include/patchlevel.h`."
|
||||
|
|
474
c-api/arg.po
474
c-api/arg.po
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: 2021-10-27 21:13+0200\n"
|
||||
"Last-Translator: David GIRAUD <davidgiraud@protonmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -679,43 +679,33 @@ msgstr ""
|
|||
|
||||
#: c-api/buffer.rst:504
|
||||
msgid ""
|
||||
"Copy data from *src* to *dest* buffer. Can convert between C-style and or "
|
||||
"Fortran-style buffers."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/buffer.rst:507
|
||||
msgid "``0`` is returned on success, ``-1`` on error."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/buffer.rst:511
|
||||
msgid ""
|
||||
"Fill the *strides* array with byte-strides of a :term:`contiguous` (C-style "
|
||||
"if *order* is ``'C'`` or Fortran-style if *order* is ``'F'``) array of the "
|
||||
"given shape with the given number of bytes per element."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/buffer.rst:518
|
||||
#: c-api/buffer.rst:511
|
||||
msgid ""
|
||||
"Handle buffer requests for an exporter that wants to expose *buf* of size "
|
||||
"*len* with writability set according to *readonly*. *buf* is interpreted as "
|
||||
"a sequence of unsigned bytes."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/buffer.rst:522
|
||||
#: c-api/buffer.rst:515
|
||||
msgid ""
|
||||
"The *flags* argument indicates the request type. This function always fills "
|
||||
"in *view* as specified by flags, unless *buf* has been designated as read-"
|
||||
"only and :c:macro:`PyBUF_WRITABLE` is set in *flags*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/buffer.rst:526
|
||||
#: c-api/buffer.rst:519
|
||||
msgid ""
|
||||
"On success, set ``view->obj`` to a new reference to *exporter* and return 0. "
|
||||
"Otherwise, raise :c:data:`PyExc_BufferError`, set ``view->obj`` to ``NULL`` "
|
||||
"and return ``-1``;"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/buffer.rst:530
|
||||
#: c-api/buffer.rst:523
|
||||
msgid ""
|
||||
"If this function is used as part of a :ref:`getbufferproc <buffer-structs>`, "
|
||||
"*exporter* MUST be set to the exporting object and *flags* must be passed "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: 2021-05-05 14:32+0200\n"
|
||||
"Last-Translator: Mindiell <mindiell@mindiell.net>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -110,13 +110,9 @@ msgstr ""
|
|||
"pointeurs."
|
||||
|
||||
#: c-api/bytearray.rst:80
|
||||
#, fuzzy
|
||||
msgid "Similar to :c:func:`PyByteArray_AsString`, but without error checking."
|
||||
msgid "Macro version of :c:func:`PyByteArray_AsString`."
|
||||
msgstr "Version macro de :c:func:`PyByteArray_AsString`."
|
||||
|
||||
#: c-api/bytearray.rst:85
|
||||
msgid "Similar to :c:func:`PyByteArray_Size`, but without error checking."
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Macro version of :c:func:`PyByteArray_Size`."
|
||||
#~ msgstr "Version macro de :c:func:`PyByteArray_Size`."
|
||||
msgid "Macro version of :c:func:`PyByteArray_Size`."
|
||||
msgstr "Version macro de :c:func:`PyByteArray_Size`."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
|
||||
"PO-Revision-Date: 2018-07-03 11:50+0200\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -258,7 +258,7 @@ msgid "Return the length of the bytes in bytes object *o*."
|
|||
msgstr ""
|
||||
|
||||
#: c-api/bytes.rst:137
|
||||
msgid "Similar to :c:func:`PyBytes_Size`, but without error checking."
|
||||
msgid "Macro form of :c:func:`PyBytes_Size` but without error checking."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/bytes.rst:142
|
||||
|
@ -273,7 +273,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: c-api/bytes.rst:154
|
||||
msgid "Similar to :c:func:`PyBytes_AsString`, but without error checking."
|
||||
msgid "Macro form of :c:func:`PyBytes_AsString` but without error checking."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/bytes.rst:159
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2020-07-20 15:07+0200\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -139,20 +139,18 @@ msgid ""
|
|||
"Import a pointer to a C object from a capsule attribute in a module. The "
|
||||
"*name* parameter should specify the full name to the attribute, as in "
|
||||
"``module.attribute``. The *name* stored in the capsule must match this "
|
||||
"string exactly."
|
||||
"string exactly. If *no_block* is true, import the module without blocking "
|
||||
"(using :c:func:`PyImport_ImportModuleNoBlock`). If *no_block* is false, "
|
||||
"import the module conventionally (using :c:func:`PyImport_ImportModule`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:108
|
||||
#: c-api/capsule.rst:110
|
||||
msgid ""
|
||||
"Return the capsule's internal *pointer* on success. On failure, set an "
|
||||
"exception and return ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:111
|
||||
msgid "*no_block* has no effect anymore."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:117
|
||||
#: c-api/capsule.rst:116
|
||||
msgid ""
|
||||
"Determines whether or not *capsule* is a valid capsule. A valid capsule is "
|
||||
"non-``NULL``, passes :c:func:`PyCapsule_CheckExact`, has a non-``NULL`` "
|
||||
|
@ -161,40 +159,40 @@ msgid ""
|
|||
"compared.)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:123
|
||||
#: c-api/capsule.rst:122
|
||||
msgid ""
|
||||
"In other words, if :c:func:`PyCapsule_IsValid` returns a true value, calls "
|
||||
"to any of the accessors (any function starting with :c:func:`PyCapsule_Get`) "
|
||||
"are guaranteed to succeed."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:127
|
||||
#: c-api/capsule.rst:126
|
||||
msgid ""
|
||||
"Return a nonzero value if the object is valid and matches the name passed "
|
||||
"in. Return ``0`` otherwise. This function will not fail."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:133
|
||||
#: c-api/capsule.rst:132
|
||||
msgid "Set the context pointer inside *capsule* to *context*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:142 c-api/capsule.rst:159
|
||||
#: c-api/capsule.rst:141 c-api/capsule.rst:158
|
||||
msgid ""
|
||||
"Return ``0`` on success. Return nonzero and set an exception on failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:140
|
||||
#: c-api/capsule.rst:139
|
||||
msgid "Set the destructor inside *capsule* to *destructor*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:147
|
||||
#: c-api/capsule.rst:146
|
||||
msgid ""
|
||||
"Set the name inside *capsule* to *name*. If non-``NULL``, the name must "
|
||||
"outlive the capsule. If the previous *name* stored in the capsule was not "
|
||||
"``NULL``, no attempt is made to free it."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/capsule.rst:156
|
||||
#: c-api/capsule.rst:155
|
||||
msgid ""
|
||||
"Set the void pointer inside *capsule* to *pointer*. The pointer may not be "
|
||||
"``NULL``."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
|
||||
"PO-Revision-Date: 2018-02-15 00:30+0100\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -56,100 +56,43 @@ msgid "Return the number of free variables in *co*."
|
|||
msgstr "Renvoie le nombre de variables libres dans *co*."
|
||||
|
||||
#: c-api/code.rst:38
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return a new code object. If you need a dummy code object to create a "
|
||||
"frame, use :c:func:`PyCode_NewEmpty` instead. Calling :c:func:`PyCode_New` "
|
||||
"directly will bind you to a precise Python version since the definition of "
|
||||
"the bytecode changes often. The many arguments of this function are inter-"
|
||||
"dependent in complex ways, meaning that subtle changes to values are likely "
|
||||
"to result in incorrect execution or VM crashes. Use this function only with "
|
||||
"extreme care."
|
||||
"directly can bind you to a precise Python version since the definition of "
|
||||
"the bytecode changes often."
|
||||
msgstr ""
|
||||
"Renvoie un nouvel objet *code*. Si vous avez besoin d'un objet code factice "
|
||||
"pour créer une *frame*, utilisez plutôt :c:func:`PyCode_NewEmpty`. Appeler :"
|
||||
"c:func:`PyCode_New` peut vous lier directement à une version spécifique de "
|
||||
"Python, le *bytecode* étant sujet à modifications."
|
||||
|
||||
#: c-api/code.rst:55
|
||||
msgid "Added ``exceptiontable`` parameter."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:50
|
||||
#: c-api/code.rst:45
|
||||
msgid ""
|
||||
"Similar to :c:func:`PyCode_New`, but with an extra \"posonlyargcount\" for "
|
||||
"positional-only arguments. The same caveats that apply to ``PyCode_New`` "
|
||||
"also apply to this function."
|
||||
"positional-only arguments."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:60
|
||||
#, fuzzy
|
||||
#: c-api/code.rst:51
|
||||
msgid ""
|
||||
"Return a new empty code object with the specified filename, function name, "
|
||||
"and first line number. The resulting code object will raise an ``Exception`` "
|
||||
"if executed."
|
||||
"and first line number. It is illegal to :func:`exec` or :func:`eval` the "
|
||||
"resulting code object."
|
||||
msgstr ""
|
||||
"Renvoie un nouvel objet *code* avec le nom de fichier, le nom de fonction, "
|
||||
"et le numéro de première ligne donnés. Il n'est pas permis d'utiliser :func:"
|
||||
"`exec` ou :func:`eval` sur l'objet renvoyé."
|
||||
|
||||
#: c-api/code.rst:66
|
||||
#: c-api/code.rst:57
|
||||
msgid ""
|
||||
"Return the line number of the instruction that occurs on or before "
|
||||
"``byte_offset`` and ends after it. If you just need the line number of a "
|
||||
"frame, use :c:func:`PyFrame_GetLineNumber` instead."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:69
|
||||
#: c-api/code.rst:60
|
||||
msgid ""
|
||||
"For efficiently iterating over the line numbers in a code object, use `the "
|
||||
"API described in PEP 626 <https://peps.python.org/pep-0626/#out-of-process-"
|
||||
"debuggers-and-profilers>`_."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:74
|
||||
msgid ""
|
||||
"Sets the passed ``int`` pointers to the source code line and column numbers "
|
||||
"for the instruction at ``byte_offset``. Sets the value to ``0`` when "
|
||||
"information is not available for any particular element."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:78
|
||||
msgid "Returns ``1`` if the function succeeds and 0 otherwise."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:82
|
||||
msgid ""
|
||||
"Equivalent to the Python code ``getattr(co, 'co_code')``. Returns a strong "
|
||||
"reference to a :c:type:`PyBytesObject` representing the bytecode in a code "
|
||||
"object. On error, ``NULL`` is returned and an exception is raised."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:87
|
||||
msgid ""
|
||||
"This ``PyBytesObject`` may be created on-demand by the interpreter and does "
|
||||
"not necessarily represent the bytecode actually executed by CPython. The "
|
||||
"primary use case for this function is debuggers and profilers."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:95
|
||||
msgid ""
|
||||
"Equivalent to the Python code ``getattr(co, 'co_varnames')``. Returns a new "
|
||||
"reference to a :c:type:`PyTupleObject` containing the names of the local "
|
||||
"variables. On error, ``NULL`` is returned and an exception is raised."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:104
|
||||
msgid ""
|
||||
"Equivalent to the Python code ``getattr(co, 'co_cellvars')``. Returns a new "
|
||||
"reference to a :c:type:`PyTupleObject` containing the names of the local "
|
||||
"variables that are referenced by nested functions. On error, ``NULL`` is "
|
||||
"returned and an exception is raised."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/code.rst:113
|
||||
msgid ""
|
||||
"Equivalent to the Python code ``getattr(co, 'co_freevars')``. Returns a new "
|
||||
"reference to a :c:type:`PyTupleObject` containing the names of the free "
|
||||
"variables. On error, ``NULL`` is returned and an exception is raised."
|
||||
"API described in PEP 626 <https://www.python.org/dev/peps/pep-0626/#out-of-"
|
||||
"process-debuggers-and-profilers>`_."
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2019-01-14 20:31+0100\n"
|
||||
"Last-Translator: ANTOINE FOURES <afoures@student.42.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-11 11:57+0100\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2018-07-03 11:36+0200\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-11 12:00+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
118
c-api/float.po
118
c-api/float.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2019-01-14 15:30+0100\n"
|
||||
"Last-Translator: ANTOINE FOURES <afoures@student.42.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -126,122 +126,6 @@ msgstr ""
|
|||
"Renvoie le nombre à virgule flottante minimal normalisé *DBL_MIN* sous la "
|
||||
"forme :c:type:`double` en C."
|
||||
|
||||
#: c-api/float.rst:82
|
||||
msgid "Pack and Unpack functions"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:84
|
||||
msgid ""
|
||||
"The pack and unpack functions provide an efficient platform-independent way "
|
||||
"to store floating-point values as byte strings. The Pack routines produce a "
|
||||
"bytes string from a C :c:expr:`double`, and the Unpack routines produce a C :"
|
||||
"c:expr:`double` from such a bytes string. The suffix (2, 4 or 8) specifies "
|
||||
"the number of bytes in the bytes string."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:90
|
||||
msgid ""
|
||||
"On platforms that appear to use IEEE 754 formats these functions work by "
|
||||
"copying bits. On other platforms, the 2-byte format is identical to the IEEE "
|
||||
"754 binary16 half-precision format, the 4-byte format (32-bit) is identical "
|
||||
"to the IEEE 754 binary32 single precision format, and the 8-byte format to "
|
||||
"the IEEE 754 binary64 double precision format, although the packing of INFs "
|
||||
"and NaNs (if such things exist on the platform) isn't handled correctly, and "
|
||||
"attempting to unpack a bytes string containing an IEEE INF or NaN will raise "
|
||||
"an exception."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:99
|
||||
msgid ""
|
||||
"On non-IEEE platforms with more precision, or larger dynamic range, than "
|
||||
"IEEE 754 supports, not all values can be packed; on non-IEEE platforms with "
|
||||
"less precision, or smaller dynamic range, not all values can be unpacked. "
|
||||
"What happens in such cases is partly accidental (alas)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:107
|
||||
msgid "Pack functions"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:109
|
||||
msgid ""
|
||||
"The pack routines write 2, 4 or 8 bytes, starting at *p*. *le* is an :c:expr:"
|
||||
"`int` argument, non-zero if you want the bytes string in little-endian "
|
||||
"format (exponent last, at ``p+1``, ``p+3``, or ``p+6`` ``p+7``), zero if you "
|
||||
"want big-endian format (exponent first, at *p*). The :c:data:`PY_BIG_ENDIAN` "
|
||||
"constant can be used to use the native endian: it is equal to ``1`` on big "
|
||||
"endian processor, or ``0`` on little endian processor."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:116
|
||||
msgid ""
|
||||
"Return value: ``0`` if all is OK, ``-1`` if error (and an exception is set, "
|
||||
"most likely :exc:`OverflowError`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:119
|
||||
msgid "There are two problems on non-IEEE platforms:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:121
|
||||
msgid "What this does is undefined if *x* is a NaN or infinity."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:122
|
||||
msgid "``-0.0`` and ``+0.0`` produce the same bytes string."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:126
|
||||
msgid "Pack a C double as the IEEE 754 binary16 half-precision format."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:130
|
||||
msgid "Pack a C double as the IEEE 754 binary32 single precision format."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:134
|
||||
msgid "Pack a C double as the IEEE 754 binary64 double precision format."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:138
|
||||
msgid "Unpack functions"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:140
|
||||
msgid ""
|
||||
"The unpack routines read 2, 4 or 8 bytes, starting at *p*. *le* is an :c:"
|
||||
"expr:`int` argument, non-zero if the bytes string is in little-endian format "
|
||||
"(exponent last, at ``p+1``, ``p+3`` or ``p+6`` and ``p+7``), zero if big-"
|
||||
"endian (exponent first, at *p*). The :c:data:`PY_BIG_ENDIAN` constant can be "
|
||||
"used to use the native endian: it is equal to ``1`` on big endian processor, "
|
||||
"or ``0`` on little endian processor."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:147
|
||||
msgid ""
|
||||
"Return value: The unpacked double. On error, this is ``-1.0`` and :c:func:"
|
||||
"`PyErr_Occurred` is true (and an exception is set, most likely :exc:"
|
||||
"`OverflowError`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:151
|
||||
msgid ""
|
||||
"Note that on a non-IEEE platform this will refuse to unpack a bytes string "
|
||||
"that represents a NaN or infinity."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:156
|
||||
msgid "Unpack the IEEE 754 binary16 half-precision format as a C double."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:160
|
||||
msgid "Unpack the IEEE 754 binary32 single precision format as a C double."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/float.rst:164
|
||||
msgid "Unpack the IEEE 754 binary64 double precision format as a C double."
|
||||
msgstr ""
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Clear the float free list. Return the number of items that could not be "
|
||||
#~ "freed."
|
||||
|
|
124
c-api/frame.po
124
c-api/frame.po
|
@ -1,124 +0,0 @@
|
|||
# Copyright (C) 2001-2018, Python Software Foundation
|
||||
# For licence information, see README file.
|
||||
#
|
||||
msgid ""
|
||||
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-23 00:48+0200\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: c-api/frame.rst:4
|
||||
msgid "Frame Objects"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:8
|
||||
msgid "The C structure of the objects used to describe frame objects."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:10
|
||||
msgid "There are no public members in this structure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:12
|
||||
msgid ""
|
||||
"The members of this structure were removed from the public C API. Refer to "
|
||||
"the :ref:`What's New entry <pyframeobject-3.11-hiding>` for details."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:17
|
||||
msgid ""
|
||||
"The :c:func:`PyEval_GetFrame` and :c:func:`PyThreadState_GetFrame` functions "
|
||||
"can be used to get a frame object."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:20
|
||||
msgid "See also :ref:`Reflection <reflection>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:24
|
||||
msgid ""
|
||||
"The type of frame objects. It is the same object as :py:class:`types."
|
||||
"FrameType` in the Python layer."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:29
|
||||
msgid ""
|
||||
"Previously, this type was only available after including ``<frameobject.h>``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:34
|
||||
msgid "Return non-zero if *obj* is a frame object."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:38
|
||||
msgid ""
|
||||
"Previously, this function was only available after including ``<frameobject."
|
||||
"h>``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:43
|
||||
msgid "Get the *frame* next outer frame."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:45
|
||||
msgid ""
|
||||
"Return a :term:`strong reference`, or ``NULL`` if *frame* has no outer frame."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:53
|
||||
msgid "Get the *frame*'s ``f_builtins`` attribute."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:86
|
||||
msgid "Return a :term:`strong reference`. The result cannot be ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:62
|
||||
msgid "Get the *frame* code."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:104
|
||||
msgid "Return a :term:`strong reference`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:66
|
||||
msgid "The result (frame code) cannot be ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:73
|
||||
msgid ""
|
||||
"Get the generator, coroutine, or async generator that owns this frame, or "
|
||||
"``NULL`` if this frame is not owned by a generator. Does not raise an "
|
||||
"exception, even if the return value is ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:77
|
||||
msgid "Return a :term:`strong reference`, or ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:84
|
||||
msgid "Get the *frame*'s ``f_globals`` attribute."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:93
|
||||
msgid "Get the *frame*'s ``f_lasti`` attribute."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:95
|
||||
msgid "Returns -1 if ``frame.f_lasti`` is ``None``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:102
|
||||
msgid "Get the *frame*'s ``f_locals`` attribute (:class:`dict`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/frame.rst:111
|
||||
msgid "Return the line number that *frame* is currently executing."
|
||||
msgstr ""
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -52,72 +52,72 @@ msgid ""
|
|||
"The function's docstring and name are retrieved from the code object. "
|
||||
"*__module__* is retrieved from *globals*. The argument defaults, annotations "
|
||||
"and closure are set to ``NULL``. *__qualname__* is set to the same value as "
|
||||
"the code object's ``co_qualname`` field."
|
||||
"the function's name."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:45
|
||||
#: c-api/function.rst:44
|
||||
msgid ""
|
||||
"As :c:func:`PyFunction_New`, but also allows setting the function object's "
|
||||
"``__qualname__`` attribute. *qualname* should be a unicode object or "
|
||||
"``NULL``; if ``NULL``, the ``__qualname__`` attribute is set to the same "
|
||||
"value as the code object's ``co_qualname`` field."
|
||||
"value as its ``__name__`` attribute."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:55
|
||||
#: c-api/function.rst:54
|
||||
msgid "Return the code object associated with the function object *op*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:60
|
||||
#: c-api/function.rst:59
|
||||
msgid "Return the globals dictionary associated with the function object *op*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:65
|
||||
#: c-api/function.rst:64
|
||||
msgid ""
|
||||
"Return a :term:`borrowed reference` to the *__module__* attribute of the "
|
||||
"function object *op*. It can be *NULL*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:68
|
||||
#: c-api/function.rst:67
|
||||
msgid ""
|
||||
"This is normally a string containing the module name, but can be set to any "
|
||||
"other object by Python code."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:74
|
||||
#: c-api/function.rst:73
|
||||
msgid ""
|
||||
"Return the argument default values of the function object *op*. This can be "
|
||||
"a tuple of arguments or ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:80
|
||||
#: c-api/function.rst:79
|
||||
msgid ""
|
||||
"Set the argument default values for the function object *op*. *defaults* "
|
||||
"must be ``Py_None`` or a tuple."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:97 c-api/function.rst:111
|
||||
#: c-api/function.rst:96 c-api/function.rst:110
|
||||
msgid "Raises :exc:`SystemError` and returns ``-1`` on failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:88
|
||||
#: c-api/function.rst:87
|
||||
msgid ""
|
||||
"Return the closure associated with the function object *op*. This can be "
|
||||
"``NULL`` or a tuple of cell objects."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:94
|
||||
#: c-api/function.rst:93
|
||||
msgid ""
|
||||
"Set the closure associated with the function object *op*. *closure* must be "
|
||||
"``Py_None`` or a tuple of cell objects."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:102
|
||||
#: c-api/function.rst:101
|
||||
msgid ""
|
||||
"Return the annotations of the function object *op*. This can be a mutable "
|
||||
"dictionary or ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/function.rst:108
|
||||
#: c-api/function.rst:107
|
||||
msgid ""
|
||||
"Set the annotations for the function object *op*. *annotations* must be a "
|
||||
"dictionary or ``Py_None``."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -270,13 +270,7 @@ msgid ""
|
|||
"h`, is::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/import.rst:262
|
||||
msgid ""
|
||||
"The new ``is_package`` field indicates whether the module is a package or "
|
||||
"not. This replaces setting the ``size`` field to a negative value."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/import.rst:268
|
||||
#: c-api/import.rst:264
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"This pointer is initialized to point to an array of :c:struct:`_frozen` "
|
||||
|
@ -291,7 +285,7 @@ msgstr ""
|
|||
"tableau. Du code tiers peut jouer avec pour construire dynamiquement une "
|
||||
"collection de module figés."
|
||||
|
||||
#: c-api/import.rst:276
|
||||
#: c-api/import.rst:272
|
||||
msgid ""
|
||||
"Add a single module to the existing table of built-in modules. This is a "
|
||||
"convenience wrapper around :c:func:`PyImport_ExtendInittab`, returning "
|
||||
|
@ -301,7 +295,7 @@ msgid ""
|
|||
"before :c:func:`Py_Initialize`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/import.rst:286
|
||||
#: c-api/import.rst:282
|
||||
msgid ""
|
||||
"Structure describing a single entry in the list of built-in modules. Each "
|
||||
"of these structures gives the name and initialization function for a module "
|
||||
|
@ -311,7 +305,7 @@ msgid ""
|
|||
"structure is defined in :file:`Include/import.h` as::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/import.rst:301
|
||||
#: c-api/import.rst:297
|
||||
msgid ""
|
||||
"Add a collection of modules to the table of built-in modules. The *newtab* "
|
||||
"array must end with a sentinel entry which contains ``NULL`` for the :attr:"
|
||||
|
@ -322,7 +316,7 @@ msgid ""
|
|||
"`Py_Initialize`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/import.rst:308
|
||||
#: c-api/import.rst:304
|
||||
msgid ""
|
||||
"If Python is initialized multiple times, :c:func:`PyImport_AppendInittab` "
|
||||
"or :c:func:`PyImport_ExtendInittab` must be called before each Python "
|
||||
|
|
539
c-api/init.po
539
c-api/init.po
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
257
c-api/intro.po
257
c-api/intro.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -158,95 +158,6 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:110
|
||||
#, fuzzy
|
||||
msgid "Return the absolute value of ``x``."
|
||||
msgstr "Renvoie la valeur absolue de *x*."
|
||||
|
||||
#: c-api/intro.rst:116
|
||||
msgid ""
|
||||
"Ask the compiler to always inline a static inline function. The compiler can "
|
||||
"ignore it and decides to not inline the function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:119
|
||||
msgid ""
|
||||
"It can be used to inline performance critical static inline functions when "
|
||||
"building Python in debug mode with function inlining disabled. For example, "
|
||||
"MSC disables function inlining when building in debug mode."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:123
|
||||
msgid ""
|
||||
"Marking blindly a static inline function with Py_ALWAYS_INLINE can result in "
|
||||
"worse performances (due to increased code size for example). The compiler is "
|
||||
"usually smarter than the developer for the cost/benefit analysis."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:127
|
||||
msgid ""
|
||||
"If Python is :ref:`built in debug mode <debug-build>` (if the ``Py_DEBUG`` "
|
||||
"macro is defined), the :c:macro:`Py_ALWAYS_INLINE` macro does nothing."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:130
|
||||
msgid "It must be specified before the function return type. Usage::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:138
|
||||
msgid ""
|
||||
"Argument must be a character or an integer in the range [-128, 127] or [0, "
|
||||
"255]. This macro returns ``c`` cast to an ``unsigned char``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:143
|
||||
msgid ""
|
||||
"Use this for deprecated declarations. The macro must be placed before the "
|
||||
"symbol name."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:232 c-api/intro.rst:250
|
||||
msgid "Example::"
|
||||
msgstr "Exemple ::"
|
||||
|
||||
#: c-api/intro.rst:150
|
||||
msgid "MSVC support was added."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:155
|
||||
msgid ""
|
||||
"Like ``getenv(s)``, but returns ``NULL`` if :option:`-E` was passed on the "
|
||||
"command line (i.e. if ``Py_IgnoreEnvironmentFlag`` is set)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:160
|
||||
msgid "Return the maximum value between ``x`` and ``y``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:166
|
||||
msgid "Return the size of a structure (``type``) ``member`` in bytes."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:172
|
||||
msgid "Return the minimum value between ``x`` and ``y``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:178
|
||||
msgid ""
|
||||
"Disable inlining on a function. For example, it reduces the C stack "
|
||||
"consumption: useful on LTO+PGO builds which heavily inline code (see :issue:"
|
||||
"`33720`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:182
|
||||
msgid "Usage::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:190
|
||||
msgid ""
|
||||
"Convert ``x`` to a C string. E.g. ``Py_STRINGIFY(123)`` returns ``\"123\"``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:197
|
||||
msgid ""
|
||||
"Use this when you have a code path that cannot be reached by design. For "
|
||||
"example, in the ``default:`` clause in a ``switch`` statement for which all "
|
||||
|
@ -254,20 +165,20 @@ msgid ""
|
|||
"where you might be tempted to put an ``assert(0)`` or ``abort()`` call."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:202
|
||||
#: c-api/intro.rst:115
|
||||
msgid ""
|
||||
"In release mode, the macro helps the compiler to optimize the code, and "
|
||||
"avoids a warning about unreachable code. For example, the macro is "
|
||||
"implemented with ``__builtin_unreachable()`` on GCC in release mode."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:206
|
||||
#: c-api/intro.rst:119
|
||||
msgid ""
|
||||
"A use for ``Py_UNREACHABLE()`` is following a call a function that never "
|
||||
"returns but that is not declared :c:macro:`_Py_NO_RETURN`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:209
|
||||
#: c-api/intro.rst:122
|
||||
msgid ""
|
||||
"If a code path is very unlikely code but can be reached under exceptional "
|
||||
"case, this macro must not be used. For example, under low memory condition "
|
||||
|
@ -276,41 +187,89 @@ msgid ""
|
|||
"reported to caller, :c:func:`Py_FatalError` can be used."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:219
|
||||
#: c-api/intro.rst:132
|
||||
#, fuzzy
|
||||
msgid "Return the absolute value of ``x``."
|
||||
msgstr "Renvoie la valeur absolue de *x*."
|
||||
|
||||
#: c-api/intro.rst:138
|
||||
msgid "Return the minimum value between ``x`` and ``y``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:144
|
||||
msgid "Return the maximum value between ``x`` and ``y``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:150
|
||||
msgid ""
|
||||
"Convert ``x`` to a C string. E.g. ``Py_STRINGIFY(123)`` returns ``\"123\"``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:157
|
||||
msgid "Return the size of a structure (``type``) ``member`` in bytes."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:163
|
||||
msgid ""
|
||||
"Argument must be a character or an integer in the range [-128, 127] or [0, "
|
||||
"255]. This macro returns ``c`` cast to an ``unsigned char``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:168
|
||||
msgid ""
|
||||
"Like ``getenv(s)``, but returns ``NULL`` if :option:`-E` was passed on the "
|
||||
"command line (i.e. if ``Py_IgnoreEnvironmentFlag`` is set)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:173
|
||||
msgid ""
|
||||
"Use this for unused arguments in a function definition to silence compiler "
|
||||
"warnings. Example: ``int func(int a, int Py_UNUSED(b)) { return a; }``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:226
|
||||
#: c-api/intro.rst:180
|
||||
msgid ""
|
||||
"Use this for deprecated declarations. The macro must be placed before the "
|
||||
"symbol name."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:198 c-api/intro.rst:216
|
||||
msgid "Example::"
|
||||
msgstr "Exemple ::"
|
||||
|
||||
#: c-api/intro.rst:187
|
||||
msgid "MSVC support was added."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:192
|
||||
msgid ""
|
||||
"Creates a variable with name ``name`` that can be used in docstrings. If "
|
||||
"Python is built without docstrings, the value will be empty."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:229
|
||||
#: c-api/intro.rst:195
|
||||
msgid ""
|
||||
"Use :c:macro:`PyDoc_STRVAR` for docstrings to support building Python "
|
||||
"without docstrings, as specified in :pep:`7`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:244
|
||||
#: c-api/intro.rst:210
|
||||
msgid ""
|
||||
"Creates a docstring for the given input string or an empty string if "
|
||||
"docstrings are disabled."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:247
|
||||
#: c-api/intro.rst:213
|
||||
msgid ""
|
||||
"Use :c:macro:`PyDoc_STR` in specifying docstrings to support building Python "
|
||||
"without docstrings, as specified in :pep:`7`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:262
|
||||
#: c-api/intro.rst:227
|
||||
msgid "Objects, Types and Reference Counts"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:266
|
||||
#: c-api/intro.rst:231
|
||||
msgid ""
|
||||
"Most Python/C API functions have one or more arguments as well as a return "
|
||||
"value of type :c:expr:`PyObject*`. This type is a pointer to an opaque data "
|
||||
|
@ -325,7 +284,7 @@ msgid ""
|
|||
"objects."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:277
|
||||
#: c-api/intro.rst:242
|
||||
msgid ""
|
||||
"All Python objects (even Python integers) have a :dfn:`type` and a :dfn:"
|
||||
"`reference count`. An object's type determines what kind of object it is (e."
|
||||
|
@ -336,11 +295,11 @@ msgid ""
|
|||
"a Python list."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:288
|
||||
#: c-api/intro.rst:253
|
||||
msgid "Reference Counts"
|
||||
msgstr "Compteurs de références"
|
||||
|
||||
#: c-api/intro.rst:290
|
||||
#: c-api/intro.rst:255
|
||||
msgid ""
|
||||
"The reference count is important because today's computers have a finite "
|
||||
"(and often severely limited) memory size; it counts how many different "
|
||||
|
@ -354,7 +313,7 @@ msgid ""
|
|||
"for now, the solution is \"don't do that.\")"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:305
|
||||
#: c-api/intro.rst:270
|
||||
msgid ""
|
||||
"Reference counts are always manipulated explicitly. The normal way is to "
|
||||
"use the macro :c:func:`Py_INCREF` to increment an object's reference count "
|
||||
|
@ -372,7 +331,7 @@ msgid ""
|
|||
"reference count increment is a simple operation."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:319
|
||||
#: c-api/intro.rst:284
|
||||
msgid ""
|
||||
"It is not necessary to increment an object's reference count for every "
|
||||
"local variable that contains a pointer to an object. In theory, the "
|
||||
|
@ -389,7 +348,7 @@ msgid ""
|
|||
"to hold a reference to every argument for the duration of the call."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:333
|
||||
#: c-api/intro.rst:298
|
||||
msgid ""
|
||||
"However, a common pitfall is to extract an object from a list and hold on to "
|
||||
"it for a while without incrementing its reference count. Some other "
|
||||
|
@ -400,7 +359,7 @@ msgid ""
|
|||
"from a :c:func:`Py_DECREF`, so almost any operation is potentially dangerous."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:341
|
||||
#: c-api/intro.rst:306
|
||||
msgid ""
|
||||
"A safe approach is to always use the generic operations (functions whose "
|
||||
"name begins with ``PyObject_``, ``PyNumber_``, ``PySequence_`` or "
|
||||
|
@ -410,11 +369,11 @@ msgid ""
|
|||
"becomes second nature."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:351
|
||||
#: c-api/intro.rst:316
|
||||
msgid "Reference Count Details"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:353
|
||||
#: c-api/intro.rst:318
|
||||
msgid ""
|
||||
"The reference count behavior of functions in the Python/C API is best "
|
||||
"explained in terms of *ownership of references*. Ownership pertains to "
|
||||
|
@ -431,7 +390,7 @@ msgid ""
|
|||
"`borrowed reference`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:366
|
||||
#: c-api/intro.rst:331
|
||||
msgid ""
|
||||
"Conversely, when a calling function passes in a reference to an object, "
|
||||
"there are two possibilities: the function *steals* a reference to the "
|
||||
|
@ -440,7 +399,7 @@ msgid ""
|
|||
"reference, and you are not responsible for it any longer."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:376
|
||||
#: c-api/intro.rst:341
|
||||
msgid ""
|
||||
"Few functions steal references; the two notable exceptions are :c:func:"
|
||||
"`PyList_SetItem` and :c:func:`PyTuple_SetItem`, which steal a reference to "
|
||||
|
@ -452,7 +411,7 @@ msgid ""
|
|||
"below)::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:391
|
||||
#: c-api/intro.rst:356
|
||||
msgid ""
|
||||
"Here, :c:func:`PyLong_FromLong` returns a new reference which is immediately "
|
||||
"stolen by :c:func:`PyTuple_SetItem`. When you want to keep using an object "
|
||||
|
@ -460,7 +419,7 @@ msgid ""
|
|||
"another reference before calling the reference-stealing function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:396
|
||||
#: c-api/intro.rst:361
|
||||
msgid ""
|
||||
"Incidentally, :c:func:`PyTuple_SetItem` is the *only* way to set tuple "
|
||||
"items; :c:func:`PySequence_SetItem` and :c:func:`PyObject_SetItem` refuse to "
|
||||
|
@ -468,13 +427,13 @@ msgid ""
|
|||
"func:`PyTuple_SetItem` for tuples that you are creating yourself."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:401
|
||||
#: c-api/intro.rst:366
|
||||
msgid ""
|
||||
"Equivalent code for populating a list can be written using :c:func:"
|
||||
"`PyList_New` and :c:func:`PyList_SetItem`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:404
|
||||
#: c-api/intro.rst:369
|
||||
msgid ""
|
||||
"However, in practice, you will rarely use these ways of creating and "
|
||||
"populating a tuple or list. There's a generic function, :c:func:"
|
||||
|
@ -483,7 +442,7 @@ msgid ""
|
|||
"be replaced by the following (which also takes care of the error checking)::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:415
|
||||
#: c-api/intro.rst:380
|
||||
msgid ""
|
||||
"It is much more common to use :c:func:`PyObject_SetItem` and friends with "
|
||||
"items whose references you are only borrowing, like arguments that were "
|
||||
|
@ -494,7 +453,7 @@ msgid ""
|
|||
"sequence) to a given item::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:445
|
||||
#: c-api/intro.rst:410
|
||||
msgid ""
|
||||
"The situation is slightly different for function return values. While "
|
||||
"passing a reference to most functions does not change your ownership "
|
||||
|
@ -507,7 +466,7 @@ msgid ""
|
|||
"becomes the owner of the reference)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:454
|
||||
#: c-api/intro.rst:419
|
||||
msgid ""
|
||||
"It is important to realize that whether you own a reference returned by a "
|
||||
"function depends on which function you call only --- *the plumage* (the type "
|
||||
|
@ -518,18 +477,18 @@ msgid ""
|
|||
"the same arguments), you do own a reference to the returned object."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:466
|
||||
#: c-api/intro.rst:431
|
||||
msgid ""
|
||||
"Here is an example of how you could write a function that computes the sum "
|
||||
"of the items in a list of integers; once using :c:func:`PyList_GetItem`, "
|
||||
"and once using :c:func:`PySequence_GetItem`. ::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:530
|
||||
#: c-api/intro.rst:495
|
||||
msgid "Types"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:532
|
||||
#: c-api/intro.rst:497
|
||||
msgid ""
|
||||
"There are few other data types that play a significant role in the Python/C "
|
||||
"API; most are simple C types such as :c:expr:`int`, :c:expr:`long`, :c:expr:"
|
||||
|
@ -540,7 +499,7 @@ msgid ""
|
|||
"that use them."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:542
|
||||
#: c-api/intro.rst:507
|
||||
msgid ""
|
||||
"A signed integral type such that ``sizeof(Py_ssize_t) == sizeof(size_t)``. "
|
||||
"C99 doesn't define such a thing directly (size_t is an unsigned integral "
|
||||
|
@ -548,11 +507,11 @@ msgid ""
|
|||
"positive value of type :c:type:`Py_ssize_t`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:551
|
||||
#: c-api/intro.rst:516
|
||||
msgid "Exceptions"
|
||||
msgstr "Exceptions"
|
||||
|
||||
#: c-api/intro.rst:553
|
||||
#: c-api/intro.rst:518
|
||||
msgid ""
|
||||
"The Python programmer only needs to deal with exceptions if specific error "
|
||||
"handling is required; unhandled exceptions are automatically propagated to "
|
||||
|
@ -561,7 +520,7 @@ msgid ""
|
|||
"stack traceback."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:561
|
||||
#: c-api/intro.rst:526
|
||||
msgid ""
|
||||
"For C programmers, however, error checking always has to be explicit. All "
|
||||
"functions in the Python/C API can raise exceptions, unless an explicit claim "
|
||||
|
@ -576,7 +535,7 @@ msgid ""
|
|||
"explicitly documented."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:576
|
||||
#: c-api/intro.rst:541
|
||||
msgid ""
|
||||
"Exception state is maintained in per-thread storage (this is equivalent to "
|
||||
"using global storage in an unthreaded application). A thread can be in one "
|
||||
|
@ -589,7 +548,7 @@ msgid ""
|
|||
"clears the exception state."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:586
|
||||
#: c-api/intro.rst:551
|
||||
msgid ""
|
||||
"The full exception state consists of three objects (all of which can be "
|
||||
"``NULL``): the exception type, the corresponding exception value, and the "
|
||||
|
@ -602,7 +561,7 @@ msgid ""
|
|||
"``sys.exc_info()`` and friends."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:598
|
||||
#: c-api/intro.rst:563
|
||||
msgid ""
|
||||
"Note that starting with Python 1.5, the preferred, thread-safe way to access "
|
||||
"the exception state from Python code is to call the function :func:`sys."
|
||||
|
@ -616,7 +575,7 @@ msgid ""
|
|||
"referenced by the stack frames in the traceback."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:609
|
||||
#: c-api/intro.rst:574
|
||||
msgid ""
|
||||
"As a general principle, a function that calls another function to perform "
|
||||
"some task should check whether the called function raised an exception, and "
|
||||
|
@ -627,7 +586,7 @@ msgid ""
|
|||
"of the error."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:618
|
||||
#: c-api/intro.rst:583
|
||||
msgid ""
|
||||
"A simple example of detecting exceptions and passing them on is shown in "
|
||||
"the :c:func:`sum_sequence` example above. It so happens that this example "
|
||||
|
@ -636,11 +595,11 @@ msgid ""
|
|||
"why you like Python, we show the equivalent Python code::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:633
|
||||
#: c-api/intro.rst:598
|
||||
msgid "Here is the corresponding C code, in all its glory::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:685
|
||||
#: c-api/intro.rst:650
|
||||
msgid ""
|
||||
"This example represents an endorsed use of the ``goto`` statement in C! It "
|
||||
"illustrates the use of :c:func:`PyErr_ExceptionMatches` and :c:func:"
|
||||
|
@ -653,11 +612,11 @@ msgid ""
|
|||
"success after the final call made is successful."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:699
|
||||
#: c-api/intro.rst:664
|
||||
msgid "Embedding Python"
|
||||
msgstr "Embarquer Python"
|
||||
|
||||
#: c-api/intro.rst:701
|
||||
#: c-api/intro.rst:666
|
||||
msgid ""
|
||||
"The one important task that only embedders (as opposed to extension writers) "
|
||||
"of the Python interpreter have to worry about is the initialization, and "
|
||||
|
@ -665,7 +624,7 @@ msgid ""
|
|||
"the interpreter can only be used after the interpreter has been initialized."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:714
|
||||
#: c-api/intro.rst:679
|
||||
msgid ""
|
||||
"The basic initialization function is :c:func:`Py_Initialize`. This "
|
||||
"initializes the table of loaded modules, and creates the fundamental "
|
||||
|
@ -673,15 +632,15 @@ msgid ""
|
|||
"initializes the module search path (``sys.path``)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:719
|
||||
#: c-api/intro.rst:686
|
||||
msgid ""
|
||||
":c:func:`Py_Initialize` does not set the \"script argument list\" (``sys."
|
||||
"argv``). If this variable is needed by Python code that will be executed "
|
||||
"later, setting :c:member:`PyConfig.argv` and :c:member:`PyConfig.parse_argv` "
|
||||
"must be set: see :ref:`Python Initialization Configuration <init-config>`."
|
||||
"later, it must be set explicitly with a call to ``PySys_SetArgvEx(argc, "
|
||||
"argv, updatepath)`` after the call to :c:func:`Py_Initialize`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:724
|
||||
#: c-api/intro.rst:691
|
||||
msgid ""
|
||||
"On most systems (in particular, on Unix and Windows, although the details "
|
||||
"are slightly different), :c:func:`Py_Initialize` calculates the module "
|
||||
|
@ -693,7 +652,7 @@ msgid ""
|
|||
"on the shell command search path (the environment variable :envvar:`PATH`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:733
|
||||
#: c-api/intro.rst:700
|
||||
msgid ""
|
||||
"For instance, if the Python executable is found in :file:`/usr/local/bin/"
|
||||
"python`, it will assume that the libraries are in :file:`/usr/local/lib/"
|
||||
|
@ -704,7 +663,7 @@ msgid ""
|
|||
"in front of the standard path by setting :envvar:`PYTHONPATH`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:748
|
||||
#: c-api/intro.rst:715
|
||||
msgid ""
|
||||
"The embedding application can steer the search by calling "
|
||||
"``Py_SetProgramName(file)`` *before* calling :c:func:`Py_Initialize`. Note "
|
||||
|
@ -715,7 +674,7 @@ msgid ""
|
|||
"func:`Py_GetProgramFullPath` (all defined in :file:`Modules/getpath.c`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:758
|
||||
#: c-api/intro.rst:725
|
||||
msgid ""
|
||||
"Sometimes, it is desirable to \"uninitialize\" Python. For instance, the "
|
||||
"application may want to start over (make another call to :c:func:"
|
||||
|
@ -729,18 +688,18 @@ msgid ""
|
|||
"released."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:772
|
||||
#: c-api/intro.rst:739
|
||||
msgid "Debugging Builds"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:774
|
||||
#: c-api/intro.rst:741
|
||||
msgid ""
|
||||
"Python can be built with several macros to enable extra checks of the "
|
||||
"interpreter and extension modules. These checks tend to add a large amount "
|
||||
"of overhead to the runtime so they are not enabled by default."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:778
|
||||
#: c-api/intro.rst:745
|
||||
msgid ""
|
||||
"A full list of the various types of debugging builds is in the file :file:"
|
||||
"`Misc/SpecialBuilds.txt` in the Python source distribution. Builds are "
|
||||
|
@ -750,7 +709,7 @@ msgid ""
|
|||
"section."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:784
|
||||
#: c-api/intro.rst:751
|
||||
msgid ""
|
||||
"Compiling the interpreter with the :c:macro:`Py_DEBUG` macro defined "
|
||||
"produces what is generally meant by :ref:`a debug build of Python <debug-"
|
||||
|
@ -761,13 +720,13 @@ msgid ""
|
|||
"disabled."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:792
|
||||
#: c-api/intro.rst:759
|
||||
msgid ""
|
||||
"In addition to the reference count debugging described below, extra checks "
|
||||
"are performed, see :ref:`Python Debug Build <debug-build>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:795
|
||||
#: c-api/intro.rst:762
|
||||
msgid ""
|
||||
"Defining :c:macro:`Py_TRACE_REFS` enables reference tracing (see the :option:"
|
||||
"`configure --with-trace-refs option <--with-trace-refs>`). When defined, a "
|
||||
|
@ -777,7 +736,7 @@ msgid ""
|
|||
"this happens after every statement run by the interpreter.)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:802
|
||||
#: c-api/intro.rst:769
|
||||
msgid ""
|
||||
"Please refer to :file:`Misc/SpecialBuilds.txt` in the Python source "
|
||||
"distribution for more detailed information."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: 2018-02-15 00:33+0100\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2021-01-27 19:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -65,7 +65,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: c-api/list.rst:56
|
||||
msgid "Similar to :c:func:`PyList_Size`, but without error checking."
|
||||
msgid "Macro form of :c:func:`PyList_Size` without error checking."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/list.rst:61
|
||||
|
@ -77,7 +77,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: c-api/list.rst:69
|
||||
msgid "Similar to :c:func:`PyList_GetItem`, but without error checking."
|
||||
msgid "Macro form of :c:func:`PyList_GetItem` without error checking."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/list.rst:74
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-12 11:56+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -125,51 +125,44 @@ msgid ""
|
|||
"are no digits, :exc:`ValueError` will be raised."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:96
|
||||
msgid ""
|
||||
"Python methods :meth:`int.to_bytes` and :meth:`int.from_bytes` to convert a :"
|
||||
"c:type:`PyLongObject` to/from an array of bytes in base ``256``. You can "
|
||||
"call those from C using :c:func:`PyObject_CallMethod`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:103
|
||||
#: c-api/long.rst:99
|
||||
msgid ""
|
||||
"Convert a sequence of Unicode digits in the string *u* to a Python integer "
|
||||
"value."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:111
|
||||
#: c-api/long.rst:107
|
||||
msgid ""
|
||||
"Create a Python integer from the pointer *p*. The pointer value can be "
|
||||
"retrieved from the resulting value using :c:func:`PyLong_AsVoidPtr`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:140
|
||||
#: c-api/long.rst:136
|
||||
msgid ""
|
||||
"Return a C :c:expr:`long` representation of *obj*. If *obj* is not an "
|
||||
"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` method "
|
||||
"(if present) to convert it to a :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:126
|
||||
#: c-api/long.rst:122
|
||||
msgid ""
|
||||
"Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:"
|
||||
"expr:`long`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:149 c-api/long.rst:190 c-api/long.rst:213
|
||||
#: c-api/long.rst:145 c-api/long.rst:186 c-api/long.rst:209
|
||||
msgid "Returns ``-1`` on error. Use :c:func:`PyErr_Occurred` to disambiguate."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:151 c-api/long.rst:194 c-api/long.rst:298
|
||||
#: c-api/long.rst:147 c-api/long.rst:190 c-api/long.rst:294
|
||||
msgid "Use :meth:`__index__` if available."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:154 c-api/long.rst:197 c-api/long.rst:301
|
||||
#: c-api/long.rst:150 c-api/long.rst:193 c-api/long.rst:297
|
||||
msgid "This function will no longer use :meth:`__int__`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:144
|
||||
#: c-api/long.rst:140
|
||||
msgid ""
|
||||
"If the value of *obj* is greater than :const:`LONG_MAX` or less than :const:"
|
||||
"`LONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and return "
|
||||
|
@ -177,20 +170,20 @@ msgid ""
|
|||
"occurs set *\\*overflow* to ``0`` and return ``-1`` as usual."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:181
|
||||
#: c-api/long.rst:177
|
||||
msgid ""
|
||||
"Return a C :c:expr:`long long` representation of *obj*. If *obj* is not an "
|
||||
"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` method "
|
||||
"(if present) to convert it to a :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:167
|
||||
#: c-api/long.rst:163
|
||||
msgid ""
|
||||
"Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:"
|
||||
"expr:`long long`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:185
|
||||
#: c-api/long.rst:181
|
||||
msgid ""
|
||||
"If the value of *obj* is greater than :const:`LLONG_MAX` or less than :const:"
|
||||
"`LLONG_MIN`, set *\\*overflow* to ``1`` or ``-1``, respectively, and return "
|
||||
|
@ -198,133 +191,133 @@ msgid ""
|
|||
"occurs set *\\*overflow* to ``0`` and return ``-1`` as usual."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:207
|
||||
#: c-api/long.rst:203
|
||||
msgid ""
|
||||
"Return a C :c:type:`Py_ssize_t` representation of *pylong*. *pylong* must "
|
||||
"be an instance of :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:210
|
||||
#: c-api/long.rst:206
|
||||
msgid ""
|
||||
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:"
|
||||
"type:`Py_ssize_t`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:222
|
||||
#: c-api/long.rst:218
|
||||
msgid ""
|
||||
"Return a C :c:expr:`unsigned long` representation of *pylong*. *pylong* "
|
||||
"must be an instance of :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:225
|
||||
#: c-api/long.rst:221
|
||||
msgid ""
|
||||
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:"
|
||||
"expr:`unsigned long`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:228
|
||||
#: c-api/long.rst:224
|
||||
msgid ""
|
||||
"Returns ``(unsigned long)-1`` on error. Use :c:func:`PyErr_Occurred` to "
|
||||
"disambiguate."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:238
|
||||
#: c-api/long.rst:234
|
||||
msgid ""
|
||||
"Return a C :c:type:`size_t` representation of *pylong*. *pylong* must be an "
|
||||
"instance of :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:241
|
||||
#: c-api/long.rst:237
|
||||
msgid ""
|
||||
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:"
|
||||
"type:`size_t`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:244
|
||||
#: c-api/long.rst:240
|
||||
msgid ""
|
||||
"Returns ``(size_t)-1`` on error. Use :c:func:`PyErr_Occurred` to "
|
||||
"disambiguate."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:253
|
||||
#: c-api/long.rst:249
|
||||
msgid ""
|
||||
"Return a C :c:expr:`unsigned long long` representation of *pylong*. "
|
||||
"*pylong* must be an instance of :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:256
|
||||
#: c-api/long.rst:252
|
||||
msgid ""
|
||||
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for an :"
|
||||
"c:expr:`unsigned long long`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:259
|
||||
#: c-api/long.rst:255
|
||||
msgid ""
|
||||
"Returns ``(unsigned long long)-1`` on error. Use :c:func:`PyErr_Occurred` to "
|
||||
"disambiguate."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:262
|
||||
#: c-api/long.rst:258
|
||||
msgid ""
|
||||
"A negative *pylong* now raises :exc:`OverflowError`, not :exc:`TypeError`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:268
|
||||
#: c-api/long.rst:264
|
||||
msgid ""
|
||||
"Return a C :c:expr:`unsigned long` representation of *obj*. If *obj* is not "
|
||||
"an instance of :c:type:`PyLongObject`, first call its :meth:`__index__` "
|
||||
"method (if present) to convert it to a :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:272
|
||||
#: c-api/long.rst:268
|
||||
msgid ""
|
||||
"If the value of *obj* is out of range for an :c:expr:`unsigned long`, return "
|
||||
"the reduction of that value modulo ``ULONG_MAX + 1``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:275
|
||||
#: c-api/long.rst:271
|
||||
msgid ""
|
||||
"Returns ``(unsigned long)-1`` on error. Use :c:func:`PyErr_Occurred` to "
|
||||
"disambiguate."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:287
|
||||
#: c-api/long.rst:283
|
||||
msgid ""
|
||||
"Return a C :c:expr:`unsigned long long` representation of *obj*. If *obj* "
|
||||
"is not an instance of :c:type:`PyLongObject`, first call its :meth:"
|
||||
"`__index__` method (if present) to convert it to a :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:292
|
||||
#: c-api/long.rst:288
|
||||
msgid ""
|
||||
"If the value of *obj* is out of range for an :c:expr:`unsigned long long`, "
|
||||
"return the reduction of that value modulo ``ULLONG_MAX + 1``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:295
|
||||
#: c-api/long.rst:291
|
||||
msgid ""
|
||||
"Returns ``(unsigned long long)-1`` on error. Use :c:func:`PyErr_Occurred` "
|
||||
"to disambiguate."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:307
|
||||
#: c-api/long.rst:303
|
||||
msgid ""
|
||||
"Return a C :c:expr:`double` representation of *pylong*. *pylong* must be an "
|
||||
"instance of :c:type:`PyLongObject`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:310
|
||||
#: c-api/long.rst:306
|
||||
msgid ""
|
||||
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:"
|
||||
"expr:`double`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:313
|
||||
#: c-api/long.rst:309
|
||||
msgid ""
|
||||
"Returns ``-1.0`` on error. Use :c:func:`PyErr_Occurred` to disambiguate."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:318
|
||||
#: c-api/long.rst:314
|
||||
msgid ""
|
||||
"Convert a Python integer *pylong* to a C :c:expr:`void` pointer. If *pylong* "
|
||||
"cannot be converted, an :exc:`OverflowError` will be raised. This is only "
|
||||
|
@ -332,7 +325,7 @@ msgid ""
|
|||
"c:func:`PyLong_FromVoidPtr`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/long.rst:323
|
||||
#: c-api/long.rst:319
|
||||
msgid ""
|
||||
"Returns ``NULL`` on error. Use :c:func:`PyErr_Occurred` to disambiguate."
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: 2021-01-28 14:58+0100\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
370
c-api/memory.po
370
c-api/memory.po
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -510,7 +510,7 @@ msgstr ""
|
|||
|
||||
#: c-api/module.rst:506
|
||||
msgid "Example usage::"
|
||||
msgstr ""
|
||||
msgstr "Exemple d'utilisation ::"
|
||||
|
||||
#: c-api/module.rst:524
|
||||
msgid ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2019-08-16 22:56+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -185,20 +185,7 @@ msgstr ""
|
|||
"Une implémentation générique de l'accesseur d'un descripteur d'un "
|
||||
"``__dict__``. Crée le dictionnaire si nécessaire."
|
||||
|
||||
#: c-api/object.rst:129
|
||||
msgid ""
|
||||
"This function may also be called to get the :py:attr:`~object.__dict__` of "
|
||||
"the object *o*. Pass ``NULL`` for *context* when calling it. Since this "
|
||||
"function may need to allocate memory for the dictionary, it may be more "
|
||||
"efficient to call :c:func:`PyObject_GetAttr` when accessing an attribute on "
|
||||
"the object."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:135
|
||||
msgid "On failure, returns ``NULL`` with an exception set."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:142
|
||||
#: c-api/object.rst:134
|
||||
msgid ""
|
||||
"A generic implementation for the setter of a ``__dict__`` descriptor. This "
|
||||
"implementation does not allow the dictionary to be deleted."
|
||||
|
@ -206,20 +193,7 @@ msgstr ""
|
|||
"Une implémentation générique du mutateur d'un descripteur de ``__dict__``. "
|
||||
"Cette implémentation n'autorise pas la suppression du dictionnaire."
|
||||
|
||||
#: c-api/object.rst:150
|
||||
msgid ""
|
||||
"Return a pointer to :py:attr:`~object.__dict__` of the object *obj*. If "
|
||||
"there is no ``__dict__``, return ``NULL`` without setting an exception."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:153
|
||||
msgid ""
|
||||
"This function may need to allocate memory for the dictionary, so it may be "
|
||||
"more efficient to call :c:func:`PyObject_GetAttr` when accessing an "
|
||||
"attribute on the object."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:160
|
||||
#: c-api/object.rst:142
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Compare the values of *o1* and *o2* using the operation specified by *opid*, "
|
||||
|
@ -238,7 +212,7 @@ msgstr ""
|
|||
"*opid*. Renvoie la valeur de la comparaison en cas de succès, ou *NULL* en "
|
||||
"cas d'échec."
|
||||
|
||||
#: c-api/object.rst:170
|
||||
#: c-api/object.rst:152
|
||||
msgid ""
|
||||
"Compare the values of *o1* and *o2* using the operation specified by *opid*, "
|
||||
"which must be one of :const:`Py_LT`, :const:`Py_LE`, :const:`Py_EQ`, :const:"
|
||||
|
@ -256,7 +230,7 @@ msgstr ""
|
|||
"l'équivalent de l'expression Python ``o1 op o2``, où ``op`` est l'opérateur "
|
||||
"correspondant à *opid*."
|
||||
|
||||
#: c-api/object.rst:179
|
||||
#: c-api/object.rst:161
|
||||
msgid ""
|
||||
"If *o1* and *o2* are the same object, :c:func:`PyObject_RichCompareBool` "
|
||||
"will always return ``1`` for :const:`Py_EQ` and ``0`` for :const:`Py_NE`."
|
||||
|
@ -264,7 +238,7 @@ msgstr ""
|
|||
"Si *o1* et *o2* sont le même objet, :c:func:`PyObject_RichCompareBool` "
|
||||
"renvoie toujours ``1`` pour :const:`Py_EQ` et ``0`` pour :const:`Py_NE`."
|
||||
|
||||
#: c-api/object.rst:186
|
||||
#: c-api/object.rst:168
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Compute a string representation of object *o*. Returns the string "
|
||||
|
@ -277,7 +251,7 @@ msgstr ""
|
|||
"d'échec. Ceci est l'équivalent de l'expression Python ``repr(o)``. Appelé "
|
||||
"par la fonction native :func:`repr`."
|
||||
|
||||
#: c-api/object.rst:214
|
||||
#: c-api/object.rst:196
|
||||
msgid ""
|
||||
"This function now includes a debug assertion to help ensure that it does not "
|
||||
"silently discard an active exception."
|
||||
|
@ -285,7 +259,7 @@ msgstr ""
|
|||
"Cette fonction inclut maintenant une assertion de débogage afin d'assurer "
|
||||
"qu'elle ne passe pas sous silence une exception active."
|
||||
|
||||
#: c-api/object.rst:198
|
||||
#: c-api/object.rst:180
|
||||
msgid ""
|
||||
"As :c:func:`PyObject_Repr`, compute a string representation of object *o*, "
|
||||
"but escape the non-ASCII characters in the string returned by :c:func:"
|
||||
|
@ -300,7 +274,7 @@ msgstr ""
|
|||
"renvoyée par :c:func:`PyObject_Repr` en Python 2. Appelée par la fonction "
|
||||
"native :func:`ascii`."
|
||||
|
||||
#: c-api/object.rst:209
|
||||
#: c-api/object.rst:191
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Compute a string representation of object *o*. Returns the string "
|
||||
|
@ -314,7 +288,7 @@ msgstr ""
|
|||
"par la fonction native :func:`str`, et, par conséquent, par la fonction :"
|
||||
"func:`print`."
|
||||
|
||||
#: c-api/object.rst:223
|
||||
#: c-api/object.rst:205
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Compute a bytes representation of object *o*. ``NULL`` is returned on "
|
||||
|
@ -329,7 +303,7 @@ msgstr ""
|
|||
"entier. Contrairement à ``bytes(o)``, une exception *TypeError* est levée "
|
||||
"lorsque *o* est un entier au lieu d'un objet octet initialisé avec des zéros."
|
||||
|
||||
#: c-api/object.rst:232
|
||||
#: c-api/object.rst:214
|
||||
msgid ""
|
||||
"Return ``1`` if the class *derived* is identical to or derived from the "
|
||||
"class *cls*, otherwise return ``0``. In case of an error, return ``-1``."
|
||||
|
@ -337,7 +311,7 @@ msgstr ""
|
|||
"Renvoie ``1`` si la classe *derived* est identique à ou dérivée de la classe "
|
||||
"*cls*, renvoie ``0`` sinon. En cas d'erreur, renvoie ``-1``."
|
||||
|
||||
#: c-api/object.rst:254
|
||||
#: c-api/object.rst:236
|
||||
msgid ""
|
||||
"If *cls* is a tuple, the check will be done against every entry in *cls*. "
|
||||
"The result will be ``1`` when at least one of the checks returns ``1``, "
|
||||
|
@ -347,7 +321,7 @@ msgstr ""
|
|||
"*cls*. Le résultat sera ``1`` quand au moins une des vérifications renvoie "
|
||||
"``1``, sinon ce sera ``0``."
|
||||
|
||||
#: c-api/object.rst:239
|
||||
#: c-api/object.rst:221
|
||||
msgid ""
|
||||
"If *cls* has a :meth:`~class.__subclasscheck__` method, it will be called to "
|
||||
"determine the subclass status as described in :pep:`3119`. Otherwise, "
|
||||
|
@ -359,7 +333,7 @@ msgstr ""
|
|||
"Sinon, *derived* est une sous-classe de *cls* si c'est une sous-classe "
|
||||
"directe ou indirecte, c'est-à-dire contenue dans ``cls.__mro__``."
|
||||
|
||||
#: c-api/object.rst:244
|
||||
#: c-api/object.rst:226
|
||||
msgid ""
|
||||
"Normally only class objects, i.e. instances of :class:`type` or a derived "
|
||||
"class, are considered classes. However, objects can override this by having "
|
||||
|
@ -370,7 +344,7 @@ msgstr ""
|
|||
"les objets peuvent surcharger cela en ayant un attribut :attr:`__bases__` "
|
||||
"(qui doit être un *n*-uplet de classes de bases)."
|
||||
|
||||
#: c-api/object.rst:251
|
||||
#: c-api/object.rst:233
|
||||
msgid ""
|
||||
"Return ``1`` if *inst* is an instance of the class *cls* or a subclass of "
|
||||
"*cls*, or ``0`` if not. On error, returns ``-1`` and sets an exception."
|
||||
|
@ -379,7 +353,7 @@ msgstr ""
|
|||
"classe de *cls*, ou ``0`` sinon. En cas d'erreur, renvoie ``-1`` et "
|
||||
"initialise une exception."
|
||||
|
||||
#: c-api/object.rst:258
|
||||
#: c-api/object.rst:240
|
||||
msgid ""
|
||||
"If *cls* has a :meth:`~class.__instancecheck__` method, it will be called to "
|
||||
"determine the subclass status as described in :pep:`3119`. Otherwise, "
|
||||
|
@ -390,7 +364,7 @@ msgstr ""
|
|||
"Sinon, *inst* est une instance *cls* si sa classe est une sous-classe de "
|
||||
"*cls*."
|
||||
|
||||
#: c-api/object.rst:262
|
||||
#: c-api/object.rst:244
|
||||
msgid ""
|
||||
"An instance *inst* can override what is considered its class by having a :"
|
||||
"attr:`__class__` attribute."
|
||||
|
@ -398,7 +372,7 @@ msgstr ""
|
|||
"Une instance *inst* peut surcharger ce qui est considéré comme sa classe en "
|
||||
"ayant un attribut :attr:`__class__`."
|
||||
|
||||
#: c-api/object.rst:265
|
||||
#: c-api/object.rst:247
|
||||
msgid ""
|
||||
"An object *cls* can override if it is considered a class, and what its base "
|
||||
"classes are, by having a :attr:`__bases__` attribute (which must be a tuple "
|
||||
|
@ -408,19 +382,19 @@ msgstr ""
|
|||
"que ses classes de bases sont, en ayant un attribut :attr:`__bases__` (qui "
|
||||
"doit être un *n*-uplet des classes de base)."
|
||||
|
||||
#: c-api/object.rst:274
|
||||
#: c-api/object.rst:256
|
||||
msgid ""
|
||||
"Compute and return the hash value of an object *o*. On failure, return "
|
||||
"``-1``. This is the equivalent of the Python expression ``hash(o)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:277
|
||||
#: c-api/object.rst:259
|
||||
msgid ""
|
||||
"The return type is now Py_hash_t. This is a signed integer the same size "
|
||||
"as :c:type:`Py_ssize_t`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:284
|
||||
#: c-api/object.rst:266
|
||||
msgid ""
|
||||
"Set a :exc:`TypeError` indicating that ``type(o)`` is not hashable and "
|
||||
"return ``-1``. This function receives special treatment when stored in a "
|
||||
|
@ -428,21 +402,21 @@ msgid ""
|
|||
"that it is not hashable."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:292
|
||||
#: c-api/object.rst:274
|
||||
msgid ""
|
||||
"Returns ``1`` if the object *o* is considered to be true, and ``0`` "
|
||||
"otherwise. This is equivalent to the Python expression ``not not o``. On "
|
||||
"failure, return ``-1``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:299
|
||||
#: c-api/object.rst:281
|
||||
msgid ""
|
||||
"Returns ``0`` if the object *o* is considered to be true, and ``1`` "
|
||||
"otherwise. This is equivalent to the Python expression ``not o``. On "
|
||||
"failure, return ``-1``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:308
|
||||
#: c-api/object.rst:290
|
||||
msgid ""
|
||||
"When *o* is non-``NULL``, returns a type object corresponding to the object "
|
||||
"type of object *o*. On failure, raises :exc:`SystemError` and returns "
|
||||
|
@ -453,13 +427,13 @@ msgid ""
|
|||
"incremented reference count is needed."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:319
|
||||
#: c-api/object.rst:301
|
||||
msgid ""
|
||||
"Return non-zero if the object *o* is of type *type* or a subtype of *type*, "
|
||||
"and ``0`` otherwise. Both parameters must be non-``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:328
|
||||
#: c-api/object.rst:310
|
||||
msgid ""
|
||||
"Return the length of object *o*. If the object *o* provides either the "
|
||||
"sequence and mapping protocols, the sequence length is returned. On error, "
|
||||
|
@ -467,7 +441,7 @@ msgid ""
|
|||
"``len(o)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:335
|
||||
#: c-api/object.rst:317
|
||||
msgid ""
|
||||
"Return an estimated length for the object *o*. First try to return its "
|
||||
"actual length, then an estimate using :meth:`~object.__length_hint__`, and "
|
||||
|
@ -476,7 +450,7 @@ msgid ""
|
|||
"defaultvalue)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:345
|
||||
#: c-api/object.rst:327
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return element of *o* corresponding to the object *key* or ``NULL`` on "
|
||||
|
@ -486,7 +460,7 @@ msgstr ""
|
|||
"l'attribut en cas de succès, ou *NULL* en cas d'échec. Ceci est équivalent à "
|
||||
"l'expression Python ``o.attr_name``."
|
||||
|
||||
#: c-api/object.rst:351
|
||||
#: c-api/object.rst:333
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Map the object *key* to the value *v*. Raise an exception and return ``-1`` "
|
||||
|
@ -498,7 +472,7 @@ msgstr ""
|
|||
"``0`` en cas de succès. Ceci est équivalent à l'instruction Python ``o."
|
||||
"attr_name = v``."
|
||||
|
||||
#: c-api/object.rst:359
|
||||
#: c-api/object.rst:341
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Remove the mapping for the object *key* from the object *o*. Return ``-1`` "
|
||||
|
@ -508,7 +482,7 @@ msgstr ""
|
|||
"Renvoie ``-1`` en cas d'échec. C'est l'équivalent de la commande Python "
|
||||
"``del o[key]``."
|
||||
|
||||
#: c-api/object.rst:365
|
||||
#: c-api/object.rst:347
|
||||
msgid ""
|
||||
"This is equivalent to the Python expression ``dir(o)``, returning a "
|
||||
"(possibly empty) list of strings appropriate for the object argument, or "
|
||||
|
@ -518,7 +492,7 @@ msgid ""
|
|||
"`PyErr_Occurred` will return false."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:374
|
||||
#: c-api/object.rst:356
|
||||
msgid ""
|
||||
"This is equivalent to the Python expression ``iter(o)``. It returns a new "
|
||||
"iterator for the object argument, or the object itself if the object is "
|
||||
|
@ -526,7 +500,7 @@ msgid ""
|
|||
"object cannot be iterated."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:382
|
||||
#: c-api/object.rst:364
|
||||
msgid ""
|
||||
"This is the equivalent to the Python expression ``aiter(o)``. Takes an :"
|
||||
"class:`AsyncIterable` object and returns an :class:`AsyncIterator` for it. "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -71,7 +71,7 @@ msgstr ""
|
|||
|
||||
#: c-api/refcounting.rst:45
|
||||
msgid "For example::"
|
||||
msgstr ""
|
||||
msgstr "Par exemple ::"
|
||||
|
||||
#: c-api/refcounting.rst:50
|
||||
msgid "can be written as::"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
|
||||
"PO-Revision-Date: 2019-02-26 12:01+0100\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -59,6 +59,36 @@ msgid "See also :c:func:`PyThreadState_GetFrame`."
|
|||
msgstr ""
|
||||
|
||||
#: c-api/reflection.rst:36
|
||||
msgid "Get the *frame* next outer frame."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/reflection.rst:38
|
||||
msgid ""
|
||||
"Return a :term:`strong reference`, or ``NULL`` if *frame* has no outer frame."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/reflection.rst:60
|
||||
msgid "*frame* must not be ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/reflection.rst:47
|
||||
msgid "Get the *frame* code."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/reflection.rst:49
|
||||
msgid "Return a :term:`strong reference`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/reflection.rst:51
|
||||
msgid ""
|
||||
"*frame* must not be ``NULL``. The result (frame code) cannot be ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/reflection.rst:58
|
||||
msgid "Return the line number that *frame* is currently executing."
|
||||
msgstr "Renvoie le numéro de ligne que *frame* est en train d'exécuter"
|
||||
|
||||
#: c-api/reflection.rst:65
|
||||
msgid ""
|
||||
"Return the name of *func* if it is a function, class or instance object, "
|
||||
"else the name of *func*\\s type."
|
||||
|
@ -66,7 +96,7 @@ msgstr ""
|
|||
"Renvoie le nom de *func* s'il s'agit d'une fonction, d'une classe ou d'un "
|
||||
"objet d'instance, sinon le nom du type de *func*"
|
||||
|
||||
#: c-api/reflection.rst:42
|
||||
#: c-api/reflection.rst:71
|
||||
msgid ""
|
||||
"Return a description string, depending on the type of *func*. Return values "
|
||||
"include \"()\" for functions and methods, \" constructor\", \" instance\", "
|
||||
|
@ -78,6 +108,3 @@ msgstr ""
|
|||
"les méthodes, ``\\\" constructor\\\"``, ``\\\" instance\\\"``, ``\\\" "
|
||||
"object\\\"``. Concaténé avec le résultat de :c:func:`PyEval_GetFuncName`, le "
|
||||
"résultat sera une description de *func*"
|
||||
|
||||
#~ msgid "Return the line number that *frame* is currently executing."
|
||||
#~ msgstr "Renvoie le numéro de ligne que *frame* est en train d'exécuter"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -114,79 +114,60 @@ msgstr ""
|
|||
msgid "Use the :c:func:`Py_SET_TYPE` function to set an object type."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:104
|
||||
msgid ""
|
||||
":c:func:`Py_TYPE()` is changed to an inline static function. The parameter "
|
||||
"type is no longer :c:expr:`const PyObject*`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:111
|
||||
#: c-api/structures.rst:107
|
||||
msgid ""
|
||||
"Return non-zero if the object *o* type is *type*. Return zero otherwise. "
|
||||
"Equivalent to: ``Py_TYPE(o) == type``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:119
|
||||
#: c-api/structures.rst:115
|
||||
msgid "Set the object *o* type to *type*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:126
|
||||
#: c-api/structures.rst:122
|
||||
msgid "Get the reference count of the Python object *o*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:128
|
||||
#: c-api/structures.rst:124
|
||||
msgid ""
|
||||
"Use the :c:func:`Py_SET_REFCNT()` function to set an object reference count."
|
||||
":c:func:`Py_REFCNT()` is changed to the inline static function. Use :c:func:"
|
||||
"`Py_SET_REFCNT()` to set an object reference count."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:130
|
||||
msgid "The parameter type is no longer :c:expr:`const PyObject*`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:133
|
||||
msgid ":c:func:`Py_REFCNT()` is changed to the inline static function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:139
|
||||
#: c-api/structures.rst:131
|
||||
msgid "Set the object *o* reference counter to *refcnt*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:146
|
||||
#: c-api/structures.rst:138
|
||||
msgid "Get the size of the Python object *o*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:148
|
||||
#: c-api/structures.rst:140
|
||||
msgid "Use the :c:func:`Py_SET_SIZE` function to set an object size."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:150
|
||||
msgid ""
|
||||
":c:func:`Py_SIZE()` is changed to an inline static function. The parameter "
|
||||
"type is no longer :c:expr:`const PyVarObject*`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:157
|
||||
#: c-api/structures.rst:145
|
||||
msgid "Set the object *o* size to *size*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:164
|
||||
#: c-api/structures.rst:152
|
||||
msgid ""
|
||||
"This is a macro which expands to initialization values for a new :c:type:"
|
||||
"`PyObject` type. This macro expands to::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:173
|
||||
#: c-api/structures.rst:161
|
||||
msgid ""
|
||||
"This is a macro which expands to initialization values for a new :c:type:"
|
||||
"`PyVarObject` type, including the :attr:`ob_size` field. This macro expands "
|
||||
"to::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:182
|
||||
#: c-api/structures.rst:170
|
||||
msgid "Implementing functions and methods"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:186
|
||||
#: c-api/structures.rst:174
|
||||
msgid ""
|
||||
"Type of the functions used to implement most Python callables in C. "
|
||||
"Functions of this type take two :c:expr:`PyObject*` parameters and return "
|
||||
|
@ -196,60 +177,101 @@ msgid ""
|
|||
"reference."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:193
|
||||
#: c-api/structures.rst:181
|
||||
msgid "The function signature is::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:200
|
||||
#: c-api/structures.rst:188
|
||||
msgid ""
|
||||
"Type of the functions used to implement Python callables in C with "
|
||||
"signature :const:`METH_VARARGS | METH_KEYWORDS`. The function signature is::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:211
|
||||
#: c-api/structures.rst:199
|
||||
msgid ""
|
||||
"Type of the functions used to implement Python callables in C with "
|
||||
"signature :const:`METH_FASTCALL`. The function signature is::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:221
|
||||
#: c-api/structures.rst:209
|
||||
msgid ""
|
||||
"Type of the functions used to implement Python callables in C with "
|
||||
"signature :const:`METH_FASTCALL | METH_KEYWORDS`. The function signature is::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:232
|
||||
#: c-api/structures.rst:220
|
||||
msgid ""
|
||||
"Type of the functions used to implement Python callables in C with "
|
||||
"signature :const:`METH_METHOD | METH_FASTCALL | METH_KEYWORDS`. The function "
|
||||
"signature is::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:247
|
||||
#: c-api/structures.rst:235
|
||||
msgid ""
|
||||
"Structure used to describe a method of an extension type. This structure "
|
||||
"has four fields:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:252
|
||||
#: c-api/structures.rst:395 c-api/structures.rst:491
|
||||
msgid "Field"
|
||||
msgstr "Champ"
|
||||
|
||||
#: c-api/structures.rst:395 c-api/structures.rst:491
|
||||
msgid "C Type"
|
||||
msgstr "Type C"
|
||||
|
||||
#: c-api/structures.rst:395 c-api/structures.rst:491
|
||||
msgid "Meaning"
|
||||
msgstr "Signification"
|
||||
|
||||
#: c-api/structures.rst:241
|
||||
msgid ":attr:`ml_name`"
|
||||
msgstr ":attr:`ml_name`"
|
||||
|
||||
#: c-api/structures.rst:249 c-api/structures.rst:410 c-api/structures.rst:493
|
||||
#: c-api/structures.rst:501
|
||||
msgid "const char \\*"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:241
|
||||
msgid "name of the method"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:256
|
||||
#: c-api/structures.rst:243
|
||||
msgid ":attr:`ml_meth`"
|
||||
msgstr ":attr:`ml_meth`"
|
||||
|
||||
#: c-api/structures.rst:243
|
||||
msgid "PyCFunction"
|
||||
msgstr "PyCFunction"
|
||||
|
||||
#: c-api/structures.rst:243
|
||||
msgid "pointer to the C implementation"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:260
|
||||
msgid "flags bits indicating how the call should be constructed"
|
||||
#: c-api/structures.rst:246
|
||||
msgid ":attr:`ml_flags`"
|
||||
msgstr ":attr:`ml_flags`"
|
||||
|
||||
#: c-api/structures.rst:399 c-api/structures.rst:422
|
||||
msgid "int"
|
||||
msgstr "*int*"
|
||||
|
||||
#: c-api/structures.rst:246
|
||||
msgid "flag bits indicating how the call should be constructed"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:426
|
||||
#: c-api/structures.rst:249
|
||||
msgid ":attr:`ml_doc`"
|
||||
msgstr ":attr:`ml_doc`"
|
||||
|
||||
#: c-api/structures.rst:410
|
||||
msgid "points to the contents of the docstring"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:266
|
||||
#: c-api/structures.rst:253
|
||||
msgid ""
|
||||
"The :c:member:`ml_meth` is a C function pointer. The functions may be of "
|
||||
"The :attr:`ml_meth` is a C function pointer. The functions may be of "
|
||||
"different types, but they always return :c:expr:`PyObject*`. If the "
|
||||
"function is not of the :c:type:`PyCFunction`, the compiler will require a "
|
||||
"cast in the method table. Even though :c:type:`PyCFunction` defines the "
|
||||
|
@ -257,18 +279,18 @@ msgid ""
|
|||
"implementation uses the specific C type of the *self* object."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:273
|
||||
#: c-api/structures.rst:260
|
||||
msgid ""
|
||||
"The :c:member:`ml_flags` field is a bitfield which can include the following "
|
||||
"The :attr:`ml_flags` field is a bitfield which can include the following "
|
||||
"flags. The individual flags indicate either a calling convention or a "
|
||||
"binding convention."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:277
|
||||
#: c-api/structures.rst:264
|
||||
msgid "There are these calling conventions:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:281
|
||||
#: c-api/structures.rst:268
|
||||
msgid ""
|
||||
"This is the typical calling convention, where the methods have the type :c:"
|
||||
"type:`PyCFunction`. The function expects two :c:expr:`PyObject*` values. The "
|
||||
|
@ -278,7 +300,7 @@ msgid ""
|
|||
"func:`PyArg_ParseTuple` or :c:func:`PyArg_UnpackTuple`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:291
|
||||
#: c-api/structures.rst:278
|
||||
msgid ""
|
||||
"Methods with these flags must be of type :c:type:`PyCFunctionWithKeywords`. "
|
||||
"The function expects three parameters: *self*, *args*, *kwargs* where "
|
||||
|
@ -287,7 +309,7 @@ msgid ""
|
|||
"using :c:func:`PyArg_ParseTupleAndKeywords`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:300
|
||||
#: c-api/structures.rst:287
|
||||
msgid ""
|
||||
"Fast calling convention supporting only positional arguments. The methods "
|
||||
"have the type :c:type:`_PyCFunctionFast`. The first parameter is *self*, the "
|
||||
|
@ -296,11 +318,11 @@ msgid ""
|
|||
"the array)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:310
|
||||
#: c-api/structures.rst:297
|
||||
msgid "``METH_FASTCALL`` is now part of the stable ABI."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:315
|
||||
#: c-api/structures.rst:302
|
||||
msgid ""
|
||||
"Extension of :const:`METH_FASTCALL` supporting also keyword arguments, with "
|
||||
"methods of type :c:type:`_PyCFunctionFastWithKeywords`. Keyword arguments "
|
||||
|
@ -312,21 +334,21 @@ msgid ""
|
|||
"arguments."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:330
|
||||
#: c-api/structures.rst:317
|
||||
msgid ""
|
||||
"Extension of :const:`METH_FASTCALL | METH_KEYWORDS` supporting the *defining "
|
||||
"class*, that is, the class that contains the method in question. The "
|
||||
"defining class might be a superclass of ``Py_TYPE(self)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:334
|
||||
#: c-api/structures.rst:321
|
||||
msgid ""
|
||||
"The method needs to be of type :c:type:`PyCMethod`, the same as for "
|
||||
"``METH_FASTCALL | METH_KEYWORDS`` with ``defining_class`` argument added "
|
||||
"after ``self``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:343
|
||||
#: c-api/structures.rst:330
|
||||
msgid ""
|
||||
"Methods without parameters don't need to check whether arguments are given "
|
||||
"if they are listed with the :const:`METH_NOARGS` flag. They need to be of "
|
||||
|
@ -335,13 +357,7 @@ msgid ""
|
|||
"the second parameter will be ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:349
|
||||
msgid ""
|
||||
"The function must have 2 parameters. Since the second parameter is unused, :"
|
||||
"c:macro:`Py_UNUSED` can be used to prevent a compiler warning."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:355
|
||||
#: c-api/structures.rst:339
|
||||
msgid ""
|
||||
"Methods with a single object argument can be listed with the :const:`METH_O` "
|
||||
"flag, instead of invoking :c:func:`PyArg_ParseTuple` with a ``\"O\"`` "
|
||||
|
@ -350,7 +366,7 @@ msgid ""
|
|||
"argument."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:361
|
||||
#: c-api/structures.rst:345
|
||||
msgid ""
|
||||
"These two constants are not used to indicate the calling convention but the "
|
||||
"binding when use with methods of classes. These may not be used for "
|
||||
|
@ -358,27 +374,27 @@ msgid ""
|
|||
"any given method."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:371
|
||||
#: c-api/structures.rst:355
|
||||
msgid ""
|
||||
"The method will be passed the type object as the first parameter rather than "
|
||||
"an instance of the type. This is used to create *class methods*, similar to "
|
||||
"what is created when using the :func:`classmethod` built-in function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:381
|
||||
#: c-api/structures.rst:365
|
||||
msgid ""
|
||||
"The method will be passed ``NULL`` as the first parameter rather than an "
|
||||
"instance of the type. This is used to create *static methods*, similar to "
|
||||
"what is created when using the :func:`staticmethod` built-in function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:385
|
||||
#: c-api/structures.rst:369
|
||||
msgid ""
|
||||
"One other constant controls whether a method is loaded in place of another "
|
||||
"definition with the same method name."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:391
|
||||
#: c-api/structures.rst:375
|
||||
msgid ""
|
||||
"The method will be loaded in place of existing definitions. Without "
|
||||
"*METH_COEXIST*, the default is to skip repeated definitions. Since slot "
|
||||
|
@ -391,213 +407,193 @@ msgid ""
|
|||
"calls."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:403
|
||||
#: c-api/structures.rst:387
|
||||
msgid "Accessing attributes of extension types"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:407
|
||||
#: c-api/structures.rst:391
|
||||
msgid ""
|
||||
"Structure which describes an attribute of a type which corresponds to a C "
|
||||
"struct member. Its fields are:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:507
|
||||
msgid "Field"
|
||||
msgstr "Champ"
|
||||
|
||||
#: c-api/structures.rst:507
|
||||
msgid "C Type"
|
||||
msgstr "Type C"
|
||||
|
||||
#: c-api/structures.rst:507
|
||||
msgid "Meaning"
|
||||
msgstr "Signification"
|
||||
|
||||
#: c-api/structures.rst:413
|
||||
#: c-api/structures.rst:397
|
||||
msgid ":attr:`name`"
|
||||
msgstr ":attr:`name`"
|
||||
|
||||
#: c-api/structures.rst:426 c-api/structures.rst:509 c-api/structures.rst:517
|
||||
msgid "const char \\*"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:413
|
||||
#: c-api/structures.rst:397
|
||||
msgid "name of the member"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:415
|
||||
#: c-api/structures.rst:399
|
||||
msgid ":attr:`!type`"
|
||||
msgstr ":attr:`!type`"
|
||||
|
||||
#: c-api/structures.rst:422 c-api/structures.rst:438
|
||||
msgid "int"
|
||||
msgstr "*int*"
|
||||
|
||||
#: c-api/structures.rst:415
|
||||
#: c-api/structures.rst:399
|
||||
msgid "the type of the member in the C struct"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:418
|
||||
#: c-api/structures.rst:402
|
||||
msgid ":attr:`offset`"
|
||||
msgstr ":attr:`offset`"
|
||||
|
||||
#: c-api/structures.rst:454
|
||||
#: c-api/structures.rst:438
|
||||
msgid "Py_ssize_t"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:418
|
||||
#: c-api/structures.rst:402
|
||||
msgid ""
|
||||
"the offset in bytes that the member is located on the type's object struct"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:422
|
||||
#: c-api/structures.rst:406
|
||||
msgid ":attr:`flags`"
|
||||
msgstr ":attr:`flags`"
|
||||
|
||||
#: c-api/structures.rst:422
|
||||
#: c-api/structures.rst:406
|
||||
msgid "flag bits indicating if the field should be read-only or writable"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:426
|
||||
#: c-api/structures.rst:410
|
||||
msgid ":attr:`doc`"
|
||||
msgstr ":attr:`doc`"
|
||||
|
||||
#: c-api/structures.rst:430
|
||||
#: c-api/structures.rst:414
|
||||
msgid ""
|
||||
":attr:`!type` can be one of many ``T_`` macros corresponding to various C "
|
||||
"types. When the member is accessed in Python, it will be converted to the "
|
||||
"equivalent Python type."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:435
|
||||
#: c-api/structures.rst:419
|
||||
msgid "Macro name"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:435
|
||||
#: c-api/structures.rst:419
|
||||
msgid "C type"
|
||||
msgstr "Type C"
|
||||
|
||||
#: c-api/structures.rst:437
|
||||
#: c-api/structures.rst:421
|
||||
msgid "T_SHORT"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:437
|
||||
#: c-api/structures.rst:421
|
||||
msgid "short"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:438
|
||||
#: c-api/structures.rst:422
|
||||
msgid "T_INT"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:439
|
||||
#: c-api/structures.rst:423
|
||||
msgid "T_LONG"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:439
|
||||
#: c-api/structures.rst:423
|
||||
msgid "long"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:440
|
||||
#: c-api/structures.rst:424
|
||||
msgid "T_FLOAT"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:440
|
||||
#: c-api/structures.rst:424
|
||||
msgid "float"
|
||||
msgstr "*float*"
|
||||
|
||||
#: c-api/structures.rst:441
|
||||
#: c-api/structures.rst:425
|
||||
msgid "T_DOUBLE"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:441
|
||||
#: c-api/structures.rst:425
|
||||
msgid "double"
|
||||
msgstr "double"
|
||||
|
||||
#: c-api/structures.rst:442
|
||||
#: c-api/structures.rst:426
|
||||
msgid "T_STRING"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:443
|
||||
#: c-api/structures.rst:427
|
||||
msgid "T_OBJECT"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:444
|
||||
#: c-api/structures.rst:428
|
||||
msgid "PyObject \\*"
|
||||
msgstr "PyObject \\*"
|
||||
|
||||
#: c-api/structures.rst:444
|
||||
#: c-api/structures.rst:428
|
||||
msgid "T_OBJECT_EX"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:445
|
||||
#: c-api/structures.rst:429
|
||||
msgid "T_CHAR"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:446 c-api/structures.rst:451
|
||||
#: c-api/structures.rst:430 c-api/structures.rst:435
|
||||
msgid "char"
|
||||
msgstr "char"
|
||||
|
||||
#: c-api/structures.rst:446
|
||||
#: c-api/structures.rst:430
|
||||
msgid "T_BYTE"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:447
|
||||
#: c-api/structures.rst:431
|
||||
msgid "T_UBYTE"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:447
|
||||
#: c-api/structures.rst:431
|
||||
msgid "unsigned char"
|
||||
msgstr "``unsigned char``"
|
||||
|
||||
#: c-api/structures.rst:448
|
||||
#: c-api/structures.rst:432
|
||||
msgid "T_UINT"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:448
|
||||
#: c-api/structures.rst:432
|
||||
msgid "unsigned int"
|
||||
msgstr "``unsigned int``"
|
||||
|
||||
#: c-api/structures.rst:449
|
||||
#: c-api/structures.rst:433
|
||||
msgid "T_USHORT"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:449
|
||||
#: c-api/structures.rst:433
|
||||
msgid "unsigned short"
|
||||
msgstr "``unsigned short``"
|
||||
|
||||
#: c-api/structures.rst:450
|
||||
#: c-api/structures.rst:434
|
||||
msgid "T_ULONG"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:450
|
||||
#: c-api/structures.rst:434
|
||||
msgid "unsigned long"
|
||||
msgstr "``unsigned long``"
|
||||
|
||||
#: c-api/structures.rst:451
|
||||
#: c-api/structures.rst:435
|
||||
msgid "T_BOOL"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:452
|
||||
#: c-api/structures.rst:436
|
||||
msgid "T_LONGLONG"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:452
|
||||
#: c-api/structures.rst:436
|
||||
msgid "long long"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:453
|
||||
#: c-api/structures.rst:437
|
||||
msgid "T_ULONGLONG"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:453
|
||||
#: c-api/structures.rst:437
|
||||
msgid "unsigned long long"
|
||||
msgstr "``unsigned long long``"
|
||||
|
||||
#: c-api/structures.rst:454
|
||||
#: c-api/structures.rst:438
|
||||
msgid "T_PYSSIZET"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:457
|
||||
#: c-api/structures.rst:441
|
||||
msgid ""
|
||||
":c:macro:`T_OBJECT` and :c:macro:`T_OBJECT_EX` differ in that :c:macro:"
|
||||
"`T_OBJECT` returns ``None`` if the member is ``NULL`` and :c:macro:"
|
||||
|
@ -607,7 +603,7 @@ msgid ""
|
|||
"than :c:macro:`T_OBJECT`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:464
|
||||
#: c-api/structures.rst:448
|
||||
msgid ""
|
||||
":attr:`flags` can be ``0`` for write and read access or :c:macro:`READONLY` "
|
||||
"for read-only access. Using :c:macro:`T_STRING` for :attr:`type` implies :c:"
|
||||
|
@ -616,7 +612,7 @@ msgid ""
|
|||
"are set to ``NULL``)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:472
|
||||
#: c-api/structures.rst:456
|
||||
msgid ""
|
||||
"Heap allocated types (created using :c:func:`PyType_FromSpec` or similar), "
|
||||
"``PyMemberDef`` may contain definitions for the special members "
|
||||
|
@ -627,115 +623,100 @@ msgid ""
|
|||
"``T_PYSSIZET`` and ``READONLY``, for example::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:489
|
||||
#: c-api/structures.rst:473
|
||||
msgid ""
|
||||
"Get an attribute belonging to the object at address *obj_addr*. The "
|
||||
"attribute is described by ``PyMemberDef`` *m*. Returns ``NULL`` on error."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:496
|
||||
#: c-api/structures.rst:480
|
||||
msgid ""
|
||||
"Set an attribute belonging to the object at address *obj_addr* to object "
|
||||
"*o*. The attribute to set is described by ``PyMemberDef`` *m*. Returns "
|
||||
"``0`` if successful and a negative value on failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:503
|
||||
#: c-api/structures.rst:487
|
||||
msgid ""
|
||||
"Structure to define property-like access for a type. See also description of "
|
||||
"the :c:member:`PyTypeObject.tp_getset` slot."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:509
|
||||
#: c-api/structures.rst:493
|
||||
msgid "name"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:509
|
||||
#: c-api/structures.rst:493
|
||||
msgid "attribute name"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:511
|
||||
#: c-api/structures.rst:495
|
||||
msgid "get"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:511
|
||||
#: c-api/structures.rst:495
|
||||
msgid "getter"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:511
|
||||
#: c-api/structures.rst:495
|
||||
msgid "C function to get the attribute"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:513
|
||||
#: c-api/structures.rst:497
|
||||
msgid "set"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:513
|
||||
#: c-api/structures.rst:497
|
||||
msgid "setter"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:513
|
||||
#: c-api/structures.rst:497
|
||||
msgid ""
|
||||
"optional C function to set or delete the attribute, if omitted the attribute "
|
||||
"is readonly"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:517
|
||||
#: c-api/structures.rst:501
|
||||
msgid "doc"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:517
|
||||
#: c-api/structures.rst:501
|
||||
msgid "optional docstring"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:519
|
||||
#: c-api/structures.rst:503
|
||||
msgid "closure"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:519
|
||||
#: c-api/structures.rst:503
|
||||
msgid "void \\*"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:519
|
||||
#: c-api/structures.rst:503
|
||||
msgid ""
|
||||
"optional function pointer, providing additional data for getter and setter"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:524
|
||||
#: c-api/structures.rst:508
|
||||
msgid ""
|
||||
"The ``get`` function takes one :c:expr:`PyObject*` parameter (the instance) "
|
||||
"and a function pointer (the associated ``closure``)::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:529
|
||||
#: c-api/structures.rst:513
|
||||
msgid ""
|
||||
"It should return a new reference on success or ``NULL`` with a set exception "
|
||||
"on failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:532
|
||||
#: c-api/structures.rst:516
|
||||
msgid ""
|
||||
"``set`` functions take two :c:expr:`PyObject*` parameters (the instance and "
|
||||
"the value to be set) and a function pointer (the associated ``closure``)::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/structures.rst:537
|
||||
#: c-api/structures.rst:521
|
||||
msgid ""
|
||||
"In case the attribute should be deleted the second parameter is ``NULL``. "
|
||||
"Should return ``0`` on success or ``-1`` with a set exception on failure."
|
||||
msgstr ""
|
||||
|
||||
#~ msgid ":attr:`ml_name`"
|
||||
#~ msgstr ":attr:`ml_name`"
|
||||
|
||||
#~ msgid ":attr:`ml_meth`"
|
||||
#~ msgstr ":attr:`ml_meth`"
|
||||
|
||||
#~ msgid "PyCFunction"
|
||||
#~ msgstr "PyCFunction"
|
||||
|
||||
#~ msgid ":attr:`ml_flags`"
|
||||
#~ msgstr ":attr:`ml_flags`"
|
||||
|
||||
#~ msgid ":attr:`ml_doc`"
|
||||
#~ msgstr ":attr:`ml_doc`"
|
||||
|
|
92
c-api/sys.po
92
c-api/sys.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -108,9 +108,9 @@ msgstr ""
|
|||
msgid ""
|
||||
"Return true when the interpreter runs out of stack space. This is a "
|
||||
"reliable check, but is only available when :const:`USE_STACKCHECK` is "
|
||||
"defined (currently on certain versions of Windows using the Microsoft Visual "
|
||||
"C++ compiler). :const:`USE_STACKCHECK` will be defined automatically; you "
|
||||
"should never change the definition in your own code."
|
||||
"defined (currently on Windows using the Microsoft Visual C++ compiler). :"
|
||||
"const:`USE_STACKCHECK` will be defined automatically; you should never "
|
||||
"change the definition in your own code."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:106
|
||||
|
@ -273,24 +273,17 @@ msgid ""
|
|||
"prior to :c:func:`Py_Initialize`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:251
|
||||
msgid ""
|
||||
"This API is kept for backward compatibility: setting :c:member:`PyConfig."
|
||||
"warnoptions` should be used instead, see :ref:`Python Initialization "
|
||||
"Configuration <init-config>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:244
|
||||
#: c-api/sys.rst:240
|
||||
msgid ""
|
||||
"Append *s* to :data:`sys.warnoptions`. This function must be called prior "
|
||||
"to :c:func:`Py_Initialize` in order to affect the warnings filter list."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:255
|
||||
#: c-api/sys.rst:245
|
||||
msgid "Append *unicode* to :data:`sys.warnoptions`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:257
|
||||
#: c-api/sys.rst:247
|
||||
msgid ""
|
||||
"Note: this function is not currently usable from outside the CPython "
|
||||
"implementation, as it must be called prior to the implicit import of :mod:"
|
||||
|
@ -299,28 +292,20 @@ msgid ""
|
|||
"Unicode objects."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:267
|
||||
msgid ""
|
||||
"This API is kept for backward compatibility: setting :c:member:`PyConfig."
|
||||
"module_search_paths` and :c:member:`PyConfig.module_search_paths_set` should "
|
||||
"be used instead, see :ref:`Python Initialization Configuration <init-"
|
||||
"config>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:272
|
||||
#: c-api/sys.rst:255
|
||||
msgid ""
|
||||
"Set :data:`sys.path` to a list object of paths found in *path* which should "
|
||||
"be a list of paths separated with the platform's search path delimiter (``:"
|
||||
"`` on Unix, ``;`` on Windows)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:280
|
||||
#: c-api/sys.rst:261
|
||||
msgid ""
|
||||
"Write the output string described by *format* to :data:`sys.stdout`. No "
|
||||
"exceptions are raised, even if truncation occurs (see below)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:283
|
||||
#: c-api/sys.rst:264
|
||||
msgid ""
|
||||
"*format* should limit the total size of the formatted output string to 1000 "
|
||||
"bytes or less -- after 1000 bytes, the output string is truncated. In "
|
||||
|
@ -331,58 +316,51 @@ msgid ""
|
|||
"of digits for very large numbers."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:291
|
||||
#: c-api/sys.rst:272
|
||||
msgid ""
|
||||
"If a problem occurs, or :data:`sys.stdout` is unset, the formatted message "
|
||||
"is written to the real (C level) *stdout*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:296
|
||||
#: c-api/sys.rst:277
|
||||
msgid ""
|
||||
"As :c:func:`PySys_WriteStdout`, but write to :data:`sys.stderr` or *stderr* "
|
||||
"instead."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:301
|
||||
#: c-api/sys.rst:282
|
||||
msgid ""
|
||||
"Function similar to PySys_WriteStdout() but format the message using :c:func:"
|
||||
"`PyUnicode_FromFormatV` and don't truncate the message to an arbitrary "
|
||||
"length."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:309
|
||||
#: c-api/sys.rst:290
|
||||
msgid ""
|
||||
"As :c:func:`PySys_FormatStdout`, but write to :data:`sys.stderr` or *stderr* "
|
||||
"instead."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:316
|
||||
msgid ""
|
||||
"This API is kept for backward compatibility: setting :c:member:`PyConfig."
|
||||
"xoptions` should be used instead, see :ref:`Python Initialization "
|
||||
"Configuration <init-config>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:320
|
||||
#: c-api/sys.rst:297
|
||||
msgid ""
|
||||
"Parse *s* as a set of :option:`-X` options and add them to the current "
|
||||
"options mapping as returned by :c:func:`PySys_GetXOptions`. This function "
|
||||
"may be called prior to :c:func:`Py_Initialize`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:330
|
||||
#: c-api/sys.rst:305
|
||||
msgid ""
|
||||
"Return the current dictionary of :option:`-X` options, similarly to :data:"
|
||||
"`sys._xoptions`. On error, ``NULL`` is returned and an exception is set."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:339
|
||||
#: c-api/sys.rst:314
|
||||
msgid ""
|
||||
"Raise an auditing event with any active hooks. Return zero for success and "
|
||||
"non-zero with an exception set on failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:342
|
||||
#: c-api/sys.rst:317
|
||||
msgid ""
|
||||
"If any hooks have been added, *format* and other arguments will be used to "
|
||||
"construct a tuple to pass. Apart from ``N``, the same format characters as "
|
||||
|
@ -393,23 +371,23 @@ msgid ""
|
|||
"leaks.)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:350
|
||||
#: c-api/sys.rst:325
|
||||
msgid ""
|
||||
"Note that ``#`` format characters should always be treated as :c:type:"
|
||||
"`Py_ssize_t`, regardless of whether ``PY_SSIZE_T_CLEAN`` was defined."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:353
|
||||
#: c-api/sys.rst:328
|
||||
msgid ":func:`sys.audit` performs the same function from Python code."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:359
|
||||
#: c-api/sys.rst:334
|
||||
msgid ""
|
||||
"Require :c:type:`Py_ssize_t` for ``#`` format characters. Previously, an "
|
||||
"unavoidable deprecation warning was raised."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:365
|
||||
#: c-api/sys.rst:340
|
||||
msgid ""
|
||||
"Append the callable *hook* to the list of active auditing hooks. Return zero "
|
||||
"on success and non-zero on failure. If the runtime has been initialized, "
|
||||
|
@ -417,14 +395,14 @@ msgid ""
|
|||
"all interpreters created by the runtime."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:371
|
||||
#: c-api/sys.rst:346
|
||||
msgid ""
|
||||
"The *userData* pointer is passed into the hook function. Since hook "
|
||||
"functions may be called from different runtimes, this pointer should not "
|
||||
"refer directly to Python state."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:375
|
||||
#: c-api/sys.rst:350
|
||||
msgid ""
|
||||
"This function is safe to call before :c:func:`Py_Initialize`. When called "
|
||||
"after runtime initialization, existing audit hooks are notified and may "
|
||||
|
@ -432,7 +410,7 @@ msgid ""
|
|||
"`Exception` (other errors will not be silenced)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:380
|
||||
#: c-api/sys.rst:355
|
||||
msgid ""
|
||||
"The hook function is of type :c:expr:`int (*)(const char *event, PyObject "
|
||||
"*args, void *userData)`, where *args* is guaranteed to be a :c:type:"
|
||||
|
@ -440,14 +418,14 @@ msgid ""
|
|||
"Python interpreter that raised the event."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:385
|
||||
#: c-api/sys.rst:360
|
||||
msgid ""
|
||||
"See :pep:`578` for a detailed description of auditing. Functions in the "
|
||||
"runtime and standard library that raise events are listed in the :ref:`audit "
|
||||
"events table <audit-events>`. Details are in each function's documentation."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:390
|
||||
#: c-api/sys.rst:365
|
||||
msgid ""
|
||||
"Raises an :ref:`auditing event <auditing>` ``sys.addaudithook`` with no "
|
||||
"arguments."
|
||||
|
@ -455,7 +433,7 @@ msgstr ""
|
|||
"Déclenche un :ref:`événement d'audit <auditing>` ``sys.addaudithook`` sans "
|
||||
"arguments."
|
||||
|
||||
#: c-api/sys.rst:392
|
||||
#: c-api/sys.rst:367
|
||||
msgid ""
|
||||
"If the interpreter is initialized, this function raises a auditing event "
|
||||
"``sys.addaudithook`` with no arguments. If any existing hooks raise an "
|
||||
|
@ -464,11 +442,11 @@ msgid ""
|
|||
"hook has been added unless they control all existing hooks."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:404
|
||||
#: c-api/sys.rst:379
|
||||
msgid "Process Control"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:411
|
||||
#: c-api/sys.rst:386
|
||||
msgid ""
|
||||
"Print a fatal error message and kill the process. No cleanup is performed. "
|
||||
"This function should only be invoked when a condition is detected that would "
|
||||
|
@ -478,29 +456,29 @@ msgid ""
|
|||
"file:`core` file."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:418
|
||||
#: c-api/sys.rst:393
|
||||
msgid ""
|
||||
"The ``Py_FatalError()`` function is replaced with a macro which logs "
|
||||
"automatically the name of the current function, unless the "
|
||||
"``Py_LIMITED_API`` macro is defined."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:422
|
||||
#: c-api/sys.rst:397
|
||||
msgid "Log the function name automatically."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:432
|
||||
#: c-api/sys.rst:407
|
||||
msgid ""
|
||||
"Exit the current process. This calls :c:func:`Py_FinalizeEx` and then calls "
|
||||
"the standard C library function ``exit(status)``. If :c:func:"
|
||||
"`Py_FinalizeEx` indicates an error, the exit status is set to 120."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:436
|
||||
#: c-api/sys.rst:411
|
||||
msgid "Errors from finalization no longer ignored."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/sys.rst:446
|
||||
#: c-api/sys.rst:421
|
||||
msgid ""
|
||||
"Register a cleanup function to be called by :c:func:`Py_FinalizeEx`. The "
|
||||
"cleanup function will be called with no arguments and should return no "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -106,7 +106,7 @@ msgstr ""
|
|||
|
||||
#: c-api/tuple.rst:94
|
||||
msgid ""
|
||||
"This function \"steals\" a reference to *o*, and, unlike :c:func:"
|
||||
"This macro \"steals\" a reference to *o*, and, unlike :c:func:"
|
||||
"`PyTuple_SetItem`, does *not* discard a reference to any item that is being "
|
||||
"replaced; any reference in the tuple at position *pos* will be leaked."
|
||||
msgstr ""
|
||||
|
@ -264,12 +264,10 @@ msgid ""
|
|||
"new instances."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/tuple.rst:223
|
||||
#: c-api/tuple.rst:222
|
||||
msgid "This function \"steals\" a reference to *o*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/tuple.rst:218
|
||||
msgid ""
|
||||
"Similar to :c:func:`PyStructSequence_SetItem`, but implemented as a static "
|
||||
"inlined function."
|
||||
msgid "Macro equivalent of :c:func:`PyStructSequence_SetItem`."
|
||||
msgstr ""
|
||||
|
|
141
c-api/type.po
141
c-api/type.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2018-02-15 00:33+0100\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -122,108 +122,75 @@ msgstr ""
|
|||
|
||||
#: c-api/type.rst:111
|
||||
msgid ""
|
||||
"Return the type's name. Equivalent to getting the type's ``__name__`` "
|
||||
"attribute."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:117
|
||||
msgid ""
|
||||
"Return the type's qualified name. Equivalent to getting the type's "
|
||||
"``__qualname__`` attribute."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:124
|
||||
msgid ""
|
||||
"Return the function pointer stored in the given slot. If the result is "
|
||||
"``NULL``, this indicates that either the slot is ``NULL``, or that the "
|
||||
"function was called with invalid parameters. Callers will typically cast the "
|
||||
"result pointer into the appropriate function type."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:130
|
||||
#: c-api/type.rst:117
|
||||
msgid ""
|
||||
"See :c:member:`PyType_Slot.slot` for possible values of the *slot* argument."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:134
|
||||
#: c-api/type.rst:121
|
||||
msgid ""
|
||||
":c:func:`PyType_GetSlot` can now accept all types. Previously, it was "
|
||||
"limited to :ref:`heap types <heap-types>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:140
|
||||
#: c-api/type.rst:127
|
||||
msgid ""
|
||||
"Return the module object associated with the given type when the type was "
|
||||
"created using :c:func:`PyType_FromModuleAndSpec`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:163
|
||||
#: c-api/type.rst:148
|
||||
msgid ""
|
||||
"If no module is associated with the given type, sets :py:class:`TypeError` "
|
||||
"and returns ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:146
|
||||
#: c-api/type.rst:133
|
||||
msgid ""
|
||||
"This function is usually used to get the module in which a method is "
|
||||
"defined. Note that in such a method, ``PyType_GetModule(Py_TYPE(self))`` may "
|
||||
"not return the intended result. ``Py_TYPE(self)`` may be a *subclass* of the "
|
||||
"intended class, and subclasses are not necessarily defined in the same "
|
||||
"module as their superclass. See :c:type:`PyCMethod` to get the class that "
|
||||
"defines the method. See :c:func:`PyType_GetModuleByDef` for cases when "
|
||||
"``PyCMethod`` cannot be used."
|
||||
"defines the method."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:159
|
||||
#: c-api/type.rst:144
|
||||
msgid ""
|
||||
"Return the state of the module object associated with the given type. This "
|
||||
"is a shortcut for calling :c:func:`PyModule_GetState()` on the result of :c:"
|
||||
"func:`PyType_GetModule`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:166
|
||||
#: c-api/type.rst:151
|
||||
msgid ""
|
||||
"If the *type* has an associated module but its state is ``NULL``, returns "
|
||||
"``NULL`` without setting an exception."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:173
|
||||
msgid ""
|
||||
"Find the first superclass whose module was created from the given :c:type:"
|
||||
"`PyModuleDef` *def*, and return that module."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:176
|
||||
msgid ""
|
||||
"If no module is found, raises a :py:class:`TypeError` and returns ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:178
|
||||
msgid ""
|
||||
"This function is intended to be used together with :c:func:"
|
||||
"`PyModule_GetState()` to get module state from slot methods (such as :c:"
|
||||
"member:`~PyTypeObject.tp_init` or :c:member:`~PyNumberMethods.nb_add`) and "
|
||||
"other places where a method's defining class cannot be passed using the :c:"
|
||||
"type:`PyCMethod` calling convention."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:188
|
||||
#: c-api/type.rst:158
|
||||
msgid "Creating Heap-Allocated Types"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:190
|
||||
#: c-api/type.rst:160
|
||||
msgid ""
|
||||
"The following functions and structs are used to create :ref:`heap types "
|
||||
"<heap-types>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:195
|
||||
#: c-api/type.rst:165
|
||||
msgid ""
|
||||
"Creates and returns a :ref:`heap type <heap-types>` from the *spec* (:const:"
|
||||
"`Py_TPFLAGS_HEAPTYPE`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:198
|
||||
#: c-api/type.rst:168
|
||||
msgid ""
|
||||
"The *bases* argument can be used to specify base classes; it can either be "
|
||||
"only one class or a tuple of classes. If *bases* is ``NULL``, the "
|
||||
|
@ -232,7 +199,7 @@ msgid ""
|
|||
"derives from :class:`object`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:204
|
||||
#: c-api/type.rst:174
|
||||
msgid ""
|
||||
"The *module* argument can be used to record the module in which the new "
|
||||
"class is defined. It must be a module object or ``NULL``. If not ``NULL``, "
|
||||
|
@ -241,65 +208,65 @@ msgid ""
|
|||
"subclasses; it must be specified for each class individually."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:211
|
||||
#: c-api/type.rst:181
|
||||
msgid "This function calls :c:func:`PyType_Ready` on the new type."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:217
|
||||
#: c-api/type.rst:187
|
||||
msgid ""
|
||||
"The function now accepts a single class as the *bases* argument and ``NULL`` "
|
||||
"as the ``tp_doc`` slot."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:222
|
||||
#: c-api/type.rst:192
|
||||
msgid "Equivalent to ``PyType_FromModuleAndSpec(NULL, spec, bases)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:228
|
||||
#: c-api/type.rst:198
|
||||
msgid "Equivalent to ``PyType_FromSpecWithBases(spec, NULL)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:232
|
||||
#: c-api/type.rst:202
|
||||
msgid "Structure defining a type's behavior."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:236
|
||||
#: c-api/type.rst:206
|
||||
msgid "Name of the type, used to set :c:member:`PyTypeObject.tp_name`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:241
|
||||
#: c-api/type.rst:211
|
||||
msgid ""
|
||||
"Size of the instance in bytes, used to set :c:member:`PyTypeObject."
|
||||
"tp_basicsize` and :c:member:`PyTypeObject.tp_itemsize`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:247
|
||||
#: c-api/type.rst:217
|
||||
msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:249
|
||||
#: c-api/type.rst:219
|
||||
msgid ""
|
||||
"If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:"
|
||||
"`PyType_FromSpecWithBases` sets it automatically."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:254
|
||||
#: c-api/type.rst:224
|
||||
msgid ""
|
||||
"Array of :c:type:`PyType_Slot` structures. Terminated by the special slot "
|
||||
"value ``{0, NULL}``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:259
|
||||
#: c-api/type.rst:229
|
||||
msgid ""
|
||||
"Structure defining optional functionality of a type, containing a slot ID "
|
||||
"and a value pointer."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:264
|
||||
#: c-api/type.rst:234
|
||||
msgid "A slot ID."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:266
|
||||
#: c-api/type.rst:236
|
||||
msgid ""
|
||||
"Slot IDs are named like the field names of the structures :c:type:"
|
||||
"`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:"
|
||||
|
@ -307,89 +274,97 @@ msgid ""
|
|||
"prefix. For example, use:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:272
|
||||
#: c-api/type.rst:242
|
||||
msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:273
|
||||
#: c-api/type.rst:243
|
||||
msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:274
|
||||
#: c-api/type.rst:244
|
||||
msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:276
|
||||
#: c-api/type.rst:246
|
||||
msgid ""
|
||||
"The following fields cannot be set at all using :c:type:`PyType_Spec` and :c:"
|
||||
"type:`PyType_Slot`:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:279
|
||||
#: c-api/type.rst:249
|
||||
msgid ":c:member:`~PyTypeObject.tp_dict`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:280
|
||||
#: c-api/type.rst:250
|
||||
msgid ":c:member:`~PyTypeObject.tp_mro`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:281
|
||||
#: c-api/type.rst:251
|
||||
msgid ":c:member:`~PyTypeObject.tp_cache`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:282
|
||||
#: c-api/type.rst:252
|
||||
msgid ":c:member:`~PyTypeObject.tp_subclasses`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:283
|
||||
#: c-api/type.rst:253
|
||||
msgid ":c:member:`~PyTypeObject.tp_weaklist`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:284
|
||||
#: c-api/type.rst:254
|
||||
msgid ":c:member:`~PyTypeObject.tp_vectorcall`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:285
|
||||
#: c-api/type.rst:255
|
||||
msgid ""
|
||||
":c:member:`~PyTypeObject.tp_weaklistoffset` (see :ref:`PyMemberDef "
|
||||
"<pymemberdef-offsets>`)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:287
|
||||
#: c-api/type.rst:257
|
||||
msgid ""
|
||||
":c:member:`~PyTypeObject.tp_dictoffset` (see :ref:`PyMemberDef <pymemberdef-"
|
||||
"offsets>`)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:289
|
||||
#: c-api/type.rst:259
|
||||
msgid ""
|
||||
":c:member:`~PyTypeObject.tp_vectorcall_offset` (see :ref:`PyMemberDef "
|
||||
"<pymemberdef-offsets>`)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:292
|
||||
#: c-api/type.rst:262
|
||||
msgid ""
|
||||
"The following fields cannot be set using :c:type:`PyType_Spec` and :c:type:"
|
||||
"`PyType_Slot` under the limited API:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:265
|
||||
msgid ":c:member:`~PyBufferProcs.bf_getbuffer`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:266
|
||||
msgid ":c:member:`~PyBufferProcs.bf_releasebuffer`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:268
|
||||
msgid ""
|
||||
"Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be problematic on "
|
||||
"some platforms. To avoid issues, use the *bases* argument of :py:func:"
|
||||
"`PyType_FromSpecWithBases` instead."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:299
|
||||
#: c-api/type.rst:275
|
||||
msgid "Slots in :c:type:`PyBufferProcs` may be set in the unlimited API."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:301
|
||||
msgid ""
|
||||
":c:member:`~PyBufferProcs.bf_getbuffer` and :c:member:`~PyBufferProcs."
|
||||
"bf_releasebuffer` are now available under the limited API."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:308
|
||||
#: c-api/type.rst:279
|
||||
msgid ""
|
||||
"The desired value of the slot. In most cases, this is a pointer to a "
|
||||
"function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:311
|
||||
#: c-api/type.rst:282
|
||||
msgid "Slots other than ``Py_tp_doc`` may not be ``NULL``."
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
1125
c-api/typeobj.po
1125
c-api/typeobj.po
File diff suppressed because it is too large
Load Diff
774
c-api/unicode.po
774
c-api/unicode.po
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -322,12 +322,21 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:291
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The C structure of the objects used to describe frame objects. The fields of "
|
||||
"this type are subject to change at any time."
|
||||
msgstr ""
|
||||
"La structure C utilisée pour décrire les objets *Code*. Les attributs de "
|
||||
"cette structure sont sujets à changer à tout moment."
|
||||
|
||||
#: c-api/veryhigh.rst:297
|
||||
msgid ""
|
||||
"Evaluate an execution frame. This is a simplified interface to :c:func:"
|
||||
"`PyEval_EvalFrameEx`, for backward compatibility."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:297
|
||||
#: c-api/veryhigh.rst:303
|
||||
msgid ""
|
||||
"This is the main, unvarnished function of Python interpretation. The code "
|
||||
"object associated with the execution frame *f* is executed, interpreting "
|
||||
|
@ -337,7 +346,7 @@ msgid ""
|
|||
"of generator objects."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:304
|
||||
#: c-api/veryhigh.rst:310
|
||||
msgid ""
|
||||
"This function now includes a debug assertion to help ensure that it does not "
|
||||
"silently discard an active exception."
|
||||
|
@ -345,33 +354,33 @@ msgstr ""
|
|||
"Cette fonction inclut maintenant une assertion de débogage afin d'assurer "
|
||||
"qu'elle ne passe pas sous silence une exception active."
|
||||
|
||||
#: c-api/veryhigh.rst:311
|
||||
#: c-api/veryhigh.rst:317
|
||||
msgid ""
|
||||
"This function changes the flags of the current evaluation frame, and returns "
|
||||
"true on success, false on failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:319
|
||||
#: c-api/veryhigh.rst:325
|
||||
msgid ""
|
||||
"The start symbol from the Python grammar for isolated expressions; for use "
|
||||
"with :c:func:`Py_CompileString`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:327
|
||||
#: c-api/veryhigh.rst:333
|
||||
msgid ""
|
||||
"The start symbol from the Python grammar for sequences of statements as read "
|
||||
"from a file or other source; for use with :c:func:`Py_CompileString`. This "
|
||||
"is the symbol to use when compiling arbitrarily long Python source code."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:336
|
||||
#: c-api/veryhigh.rst:342
|
||||
msgid ""
|
||||
"The start symbol from the Python grammar for a single statement; for use "
|
||||
"with :c:func:`Py_CompileString`. This is the symbol used for the interactive "
|
||||
"interpreter loop."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:343
|
||||
#: c-api/veryhigh.rst:349
|
||||
msgid ""
|
||||
"This is the structure used to hold compiler flags. In cases where code is "
|
||||
"only being compiled, it is passed as ``int flags``, and in cases where code "
|
||||
|
@ -379,43 +388,35 @@ msgid ""
|
|||
"case, ``from __future__ import`` can modify *flags*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:348
|
||||
#: c-api/veryhigh.rst:354
|
||||
msgid ""
|
||||
"Whenever ``PyCompilerFlags *flags`` is ``NULL``, :attr:`cf_flags` is treated "
|
||||
"as equal to ``0``, and any modification due to ``from __future__ import`` is "
|
||||
"discarded."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:354
|
||||
#: c-api/veryhigh.rst:360
|
||||
msgid "Compiler flags."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:358
|
||||
#: c-api/veryhigh.rst:364
|
||||
msgid ""
|
||||
"*cf_feature_version* is the minor Python version. It should be initialized "
|
||||
"to ``PY_MINOR_VERSION``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:361
|
||||
#: c-api/veryhigh.rst:367
|
||||
msgid ""
|
||||
"The field is ignored by default, it is used if and only if ``PyCF_ONLY_AST`` "
|
||||
"flag is set in *cf_flags*."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:364
|
||||
#: c-api/veryhigh.rst:370
|
||||
msgid "Added *cf_feature_version* field."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/veryhigh.rst:370
|
||||
#: c-api/veryhigh.rst:376
|
||||
msgid ""
|
||||
"This bit can be set in *flags* to cause division operator ``/`` to be "
|
||||
"interpreted as \"true division\" according to :pep:`238`."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "The C structure of the objects used to describe frame objects. The fields "
|
||||
#~ "of this type are subject to change at any time."
|
||||
#~ msgstr ""
|
||||
#~ "La structure C utilisée pour décrire les objets *Code*. Les attributs de "
|
||||
#~ "cette structure sont sujets à changer à tout moment."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-16 17:25+0100\n"
|
||||
"Last-Translator: Andy Kwok <andy.kwok.work@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -116,8 +116,9 @@ msgstr ""
|
|||
"encore."
|
||||
|
||||
#: c-api/weakref.rst:69
|
||||
#, fuzzy
|
||||
msgid "Similar to :c:func:`PyWeakref_GetObject`, but does no error checking."
|
||||
msgid ""
|
||||
"Similar to :c:func:`PyWeakref_GetObject`, but implemented as a macro that "
|
||||
"does no error checking."
|
||||
msgstr ""
|
||||
"Similaire à :c:func:`PyWeakref_GetObject`, mais implémenté comme une macro "
|
||||
"qui ne vérifie pas les erreurs."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
|
||||
"PO-Revision-Date: 2022-04-07 14:48-0400\n"
|
||||
"Last-Translator: Jean-Michel Laprise <jmichel.dev@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -24,8 +24,7 @@ msgid "Python and this documentation is:"
|
|||
msgstr "Python et cette documentation sont :"
|
||||
|
||||
#: copyright.rst:7
|
||||
#, fuzzy
|
||||
msgid "Copyright © 2001-2023 Python Software Foundation. All rights reserved."
|
||||
msgid "Copyright © 2001-2022 Python Software Foundation. All rights reserved."
|
||||
msgstr ""
|
||||
"Copyright © 2001-2022 Python Software Foundation. Tous droits réservés."
|
||||
|
||||
|
|
3
dict
3
dict
|
@ -15,7 +15,6 @@ base32
|
|||
base64
|
||||
base85
|
||||
batch
|
||||
Bit
|
||||
boguer
|
||||
c++
|
||||
c-
|
||||
|
@ -90,7 +89,6 @@ interchangés
|
|||
intralignes
|
||||
ios
|
||||
ipv4
|
||||
ipv6
|
||||
itérateur
|
||||
itérateurs
|
||||
ième
|
||||
|
@ -204,7 +202,6 @@ world
|
|||
wxwidgets
|
||||
x11
|
||||
x86
|
||||
YAML
|
||||
zope
|
||||
émoji
|
||||
ı
|
||||
|
|
|
@ -5,8 +5,8 @@ msgid ""
|
|||
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 22:18+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 12:23+0200\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -703,7 +703,7 @@ msgstr ""
|
|||
|
||||
#: distutils/apiref.rst:316
|
||||
msgid ":mod:`distutils.ccompiler` --- CCompiler base class"
|
||||
msgstr ":mod:`distutils.ccompiler` — Classe mère CCompiler"
|
||||
msgstr ":mod:`distutils.ccompiler` — Classe de base CCompiler"
|
||||
|
||||
#: distutils/apiref.rst:322
|
||||
msgid ""
|
||||
|
@ -713,7 +713,7 @@ msgid ""
|
|||
"options for the compiler --- macro definitions, include directories, link "
|
||||
"path, libraries and the like."
|
||||
msgstr ""
|
||||
"Ce module fournit la classe mère abstraite pour les classes :class:"
|
||||
"Ce module fournit la classe de base abstraite pour les classes :class:"
|
||||
"`CCompiler`. Une instance de :class:`CCompiler` peut être utilisée pour "
|
||||
"toutes les étapes de compilation et de liaison nécessaires à la compilation "
|
||||
"d'un projet unique. Des méthodes sont fournies pour définir des options pour "
|
||||
|
@ -821,7 +821,7 @@ msgid ""
|
|||
"be implemented by real compiler classes. The class also has some utility "
|
||||
"methods used by several compiler classes."
|
||||
msgstr ""
|
||||
"La classe mère abstraite :class:`CCompiler` définit l'interface qui doit "
|
||||
"La classe de base abstraite :class:`CCompiler` définit l'interface qui doit "
|
||||
"être implémentée par des classes de compilateur concrètes. La classe "
|
||||
"possède également quelques méthodes utilitaires utilisées par plusieurs "
|
||||
"classes de compilateurs."
|
||||
|
@ -3103,11 +3103,12 @@ msgstr ":mod:`distutils.version` — Classes de numéros de version"
|
|||
#: distutils/apiref.rst:1722
|
||||
msgid ":mod:`distutils.cmd` --- Abstract base class for Distutils commands"
|
||||
msgstr ""
|
||||
":mod:`distutils.cmd` — Classe mère abstraite pour les commandes *Distutils*"
|
||||
":mod:`distutils.cmd` — Classe de base abstraite pour les commandes "
|
||||
"*Distutils*"
|
||||
|
||||
#: distutils/apiref.rst:1729
|
||||
msgid "This module supplies the abstract base class :class:`Command`."
|
||||
msgstr "Ce module fournit la classe mère abstraite :class:`Command`."
|
||||
msgstr "Ce module fournit la classe de base abstraite :class:`Command`."
|
||||
|
||||
#: distutils/apiref.rst:1734
|
||||
msgid ""
|
||||
|
@ -3124,8 +3125,8 @@ msgid ""
|
|||
"options, is the :meth:`run` method, which must also be implemented by every "
|
||||
"command class."
|
||||
msgstr ""
|
||||
"Classe mère abstraite pour définir les classes de commandes, les "
|
||||
"« ouvrières » de *Distutils*. Une analogie utile pour les classes de "
|
||||
"Classe de base abstraite pour définir les classes de commandes, les "
|
||||
"\"ouvrières\" de *Distutils*. Une analogie utile pour les classes de "
|
||||
"commandes est de les considérer comme des sous-routines avec des variables "
|
||||
"locales appelées *options*. Les options sont déclarées dans :meth:"
|
||||
"`initialiser_options` et définies (compte tenu de leur valeur finale) dans :"
|
||||
|
@ -3280,7 +3281,7 @@ msgstr ":mod:`distutils.command.bdist` — Construit un installateur binaire"
|
|||
msgid ""
|
||||
":mod:`distutils.command.bdist_packager` --- Abstract base class for packagers"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.bdist_packager` — Classe mère abstraite pour "
|
||||
":mod:`distutils.command.bdist_packager` — Classe de base abstraite pour "
|
||||
"empaqueteurs"
|
||||
|
||||
#: distutils/apiref.rst:1846
|
||||
|
@ -3291,43 +3292,58 @@ msgstr ""
|
|||
|
||||
#: distutils/apiref.rst:1856
|
||||
msgid ""
|
||||
":mod:`distutils.command.bdist_msi` --- Build a Microsoft Installer binary "
|
||||
"package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.bdist_msi` — Construit un installateur Microsoft"
|
||||
|
||||
#: distutils/apiref.rst:1863
|
||||
msgid "Use bdist_wheel (wheel packages) instead."
|
||||
msgstr "Utilisez *bdist_wheel* (paquet au format *wheel*) à la place."
|
||||
|
||||
#: distutils/apiref.rst:1866
|
||||
msgid "Builds a `Windows Installer`_ (.msi) binary package."
|
||||
msgstr "Construit un installateur `Windows Installeur`_ (*.msi*)"
|
||||
|
||||
#: distutils/apiref.rst:1872
|
||||
msgid ""
|
||||
":mod:`distutils.command.bdist_rpm` --- Build a binary distribution as a "
|
||||
"Redhat RPM and SRPM"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.bdist_rpm` — Construit une distribution binaire au "
|
||||
"format Redhat RPM et SRPM"
|
||||
|
||||
#: distutils/apiref.rst:1866
|
||||
#: distutils/apiref.rst:1882
|
||||
msgid ":mod:`distutils.command.sdist` --- Build a source distribution"
|
||||
msgstr ":mod:`distutils.command.sdist` — Construit une distribution source"
|
||||
|
||||
#: distutils/apiref.rst:1876
|
||||
#: distutils/apiref.rst:1892
|
||||
msgid ":mod:`distutils.command.build` --- Build all files of a package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.build` — Construit tous les fichiers d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:1886
|
||||
#: distutils/apiref.rst:1902
|
||||
msgid ""
|
||||
":mod:`distutils.command.build_clib` --- Build any C libraries in a package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.build_clib` — Construit toutes les bibliothèques C "
|
||||
"d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:1896
|
||||
#: distutils/apiref.rst:1912
|
||||
msgid ""
|
||||
":mod:`distutils.command.build_ext` --- Build any extensions in a package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.build_ext` — Construit toutes les extensions d'un "
|
||||
"paquet"
|
||||
|
||||
#: distutils/apiref.rst:1906
|
||||
#: distutils/apiref.rst:1922
|
||||
msgid ""
|
||||
":mod:`distutils.command.build_py` --- Build the .py/.pyc files of a package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.build_py` — Construit les fichiers *.py/.pyc* d'un "
|
||||
"paquet"
|
||||
|
||||
#: distutils/apiref.rst:1916
|
||||
#: distutils/apiref.rst:1932
|
||||
msgid ""
|
||||
"Alternative implementation of build_py which also runs the 2to3 conversion "
|
||||
"library on each .py file that is going to be installed. To use this in a "
|
||||
|
@ -3339,27 +3355,27 @@ msgstr ""
|
|||
"installé. Pour l'utiliser dans un fichier *setup.py* pour une distribution "
|
||||
"conçue pour fonctionner avec *Python 2.x* et *3.x*, ajouter ::"
|
||||
|
||||
#: distutils/apiref.rst:1926
|
||||
#: distutils/apiref.rst:1942
|
||||
msgid "to your setup.py, and later::"
|
||||
msgstr "à votre *setup.py* et, plus tard ::"
|
||||
|
||||
#: distutils/apiref.rst:1930
|
||||
#: distutils/apiref.rst:1946
|
||||
msgid "to the invocation of setup()."
|
||||
msgstr "à l'appel de *setup()*."
|
||||
|
||||
#: distutils/apiref.rst:1934
|
||||
#: distutils/apiref.rst:1950
|
||||
msgid ""
|
||||
":mod:`distutils.command.build_scripts` --- Build the scripts of a package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.build_scripts` — Construit les scripts d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:1944
|
||||
#: distutils/apiref.rst:1960
|
||||
msgid ":mod:`distutils.command.clean` --- Clean a package build area"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.clean` — Nettoie un dossier de compilation d'un "
|
||||
"paquet"
|
||||
|
||||
#: distutils/apiref.rst:1949
|
||||
#: distutils/apiref.rst:1965
|
||||
msgid ""
|
||||
"This command removes the temporary files created by :command:`build` and its "
|
||||
"subcommands, like intermediary compiled object files. With the ``--all`` "
|
||||
|
@ -3370,7 +3386,7 @@ msgstr ""
|
|||
"intermédiaires. Avec l'option ``--all``, le répertoire de compilation sera "
|
||||
"supprimé."
|
||||
|
||||
#: distutils/apiref.rst:1953
|
||||
#: distutils/apiref.rst:1969
|
||||
msgid ""
|
||||
"Extension modules built :ref:`in place <distutils-build-ext-inplace>` will "
|
||||
"not be cleaned, as they are not in the build directory."
|
||||
|
@ -3379,23 +3395,23 @@ msgstr ""
|
|||
"inplace>` ne seront pas effacés, car ils ne sont pas dans le répertoire "
|
||||
"*build*."
|
||||
|
||||
#: distutils/apiref.rst:1958
|
||||
#: distutils/apiref.rst:1974
|
||||
msgid ":mod:`distutils.command.config` --- Perform package configuration"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.config` — Effectue la configuration d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:1968
|
||||
#: distutils/apiref.rst:1984
|
||||
msgid ":mod:`distutils.command.install` --- Install a package"
|
||||
msgstr ":mod:`distutils.command.install` — Installe un paquet"
|
||||
|
||||
#: distutils/apiref.rst:1978
|
||||
#: distutils/apiref.rst:1994
|
||||
msgid ""
|
||||
":mod:`distutils.command.install_data` --- Install data files from a package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.install_data` — Installe les fichiers de données "
|
||||
"d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:1988
|
||||
#: distutils/apiref.rst:2004
|
||||
msgid ""
|
||||
":mod:`distutils.command.install_headers` --- Install C/C++ header files from "
|
||||
"a package"
|
||||
|
@ -3403,14 +3419,14 @@ msgstr ""
|
|||
":mod:`distutils.command.install_headers` — Installe les fichiers d'en-tête C/"
|
||||
"C++ d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:1998
|
||||
#: distutils/apiref.rst:2014
|
||||
msgid ""
|
||||
":mod:`distutils.command.install_lib` --- Install library files from a package"
|
||||
msgstr ""
|
||||
":mod:`distutils.command.install_lib` — Installe les fichiers de bibliothèque "
|
||||
"à partir d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:2008
|
||||
#: distutils/apiref.rst:2024
|
||||
msgid ""
|
||||
":mod:`distutils.command.install_scripts` --- Install script files from a "
|
||||
"package"
|
||||
|
@ -3418,7 +3434,7 @@ msgstr ""
|
|||
":mod:`distutils.command.install_scripts` — Installe les fichiers de script "
|
||||
"d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:2018
|
||||
#: distutils/apiref.rst:2034
|
||||
msgid ""
|
||||
":mod:`distutils.command.register` --- Register a module with the Python "
|
||||
"Package Index"
|
||||
|
@ -3426,7 +3442,7 @@ msgstr ""
|
|||
":mod:`distutils.command.register` — Enregistre un module dans l'Index des "
|
||||
"paquets Python (*Python Package Index* ou *PyPI* en anglais)"
|
||||
|
||||
#: distutils/apiref.rst:2024
|
||||
#: distutils/apiref.rst:2040
|
||||
msgid ""
|
||||
"The ``register`` command registers the package with the Python Package "
|
||||
"Index. This is described in more detail in :pep:`301`."
|
||||
|
@ -3434,11 +3450,11 @@ msgstr ""
|
|||
"La commande ``register`` enregistre le paquet dans l'index des paquets "
|
||||
"Python. Plus de détails à ce sujet dans la :pep:`301`."
|
||||
|
||||
#: distutils/apiref.rst:2031
|
||||
#: distutils/apiref.rst:2047
|
||||
msgid ":mod:`distutils.command.check` --- Check the meta-data of a package"
|
||||
msgstr ":mod:`distutils.command.check` — Vérifie les méta-données d'un paquet"
|
||||
|
||||
#: distutils/apiref.rst:2037
|
||||
#: distutils/apiref.rst:2053
|
||||
msgid ""
|
||||
"The ``check`` command performs some tests on the meta-data of a package. For "
|
||||
"example, it verifies that all required meta-data are provided as the "
|
||||
|
@ -3448,18 +3464,6 @@ msgstr ""
|
|||
"Par exemple, elle vérifie que toutes les méta-données requises sont fournies "
|
||||
"lorsque les arguments sont passés à la fonction :func:`setup`."
|
||||
|
||||
#~ msgid ""
|
||||
#~ ":mod:`distutils.command.bdist_msi` --- Build a Microsoft Installer binary "
|
||||
#~ "package"
|
||||
#~ msgstr ""
|
||||
#~ ":mod:`distutils.command.bdist_msi` — Construit un installateur Microsoft"
|
||||
|
||||
#~ msgid "Use bdist_wheel (wheel packages) instead."
|
||||
#~ msgstr "Utilisez *bdist_wheel* (paquet au format *wheel*) à la place."
|
||||
|
||||
#~ msgid "Builds a `Windows Installer`_ (.msi) binary package."
|
||||
#~ msgstr "Construit un installateur `Windows Installeur`_ (*.msi*)"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "In most cases, the ``bdist_msi`` installer is a better choice than the "
|
||||
#~ "``bdist_wininst`` installer, because it provides better support for Win64 "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: 2021-12-11 12:33+0100\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -365,7 +365,19 @@ msgstr ":command:`bdist_rpm`"
|
|||
msgid "rpm, srpm"
|
||||
msgstr "rpm, srpm"
|
||||
|
||||
#: distutils/builtdist.rst:142
|
||||
#: distutils/builtdist.rst:141
|
||||
msgid ":command:`bdist_msi`"
|
||||
msgstr ":command:`bdist_msi`"
|
||||
|
||||
#: distutils/builtdist.rst:141
|
||||
msgid "msi"
|
||||
msgstr "msi"
|
||||
|
||||
#: distutils/builtdist.rst:145
|
||||
msgid "bdist_msi is deprecated since Python 3.9."
|
||||
msgstr "``bdist_msi`` est obsolète depuis Python 3.9."
|
||||
|
||||
#: distutils/builtdist.rst:147
|
||||
msgid ""
|
||||
"The following sections give details on the individual :command:`bdist_\\*` "
|
||||
"commands."
|
||||
|
@ -373,11 +385,11 @@ msgstr ""
|
|||
"Le chapitre suivant donne des détails individuel sur les commandes :command:"
|
||||
"`bdist_\\*`."
|
||||
|
||||
#: distutils/builtdist.rst:158
|
||||
#: distutils/builtdist.rst:163
|
||||
msgid "Creating RPM packages"
|
||||
msgstr "Créer un paquet RPM"
|
||||
|
||||
#: distutils/builtdist.rst:160
|
||||
#: distutils/builtdist.rst:165
|
||||
msgid ""
|
||||
"The RPM format is used by many popular Linux distributions, including Red "
|
||||
"Hat, SuSE, and Mandrake. If one of these (or any of the other RPM-based "
|
||||
|
@ -395,7 +407,7 @@ msgstr ""
|
|||
"entre les distributions Linux, vous pourrez aussi créer des RPM qui "
|
||||
"fonctionneront sur des distributions RPM différentes."
|
||||
|
||||
#: distutils/builtdist.rst:167
|
||||
#: distutils/builtdist.rst:172
|
||||
msgid ""
|
||||
"The usual way to create an RPM of your module distribution is to run the :"
|
||||
"command:`bdist_rpm` command::"
|
||||
|
@ -403,11 +415,11 @@ msgstr ""
|
|||
"La manière habituelle de créer un RPM de votre module est d'utiliser la "
|
||||
"commande :command:`bdist_rpm` ::"
|
||||
|
||||
#: distutils/builtdist.rst:172
|
||||
#: distutils/builtdist.rst:177
|
||||
msgid "or the :command:`bdist` command with the :option:`!--format` option::"
|
||||
msgstr "ou la commande :command:`bdist` avec l'option :option:`!--format` ::"
|
||||
|
||||
#: distutils/builtdist.rst:176
|
||||
#: distutils/builtdist.rst:181
|
||||
msgid ""
|
||||
"The former allows you to specify RPM-specific options; the latter allows "
|
||||
"you to easily specify multiple formats in one run. If you need to do both, "
|
||||
|
@ -419,7 +431,7 @@ msgstr ""
|
|||
"avez besoin d'utiliser les deux, vous pouvez explicitement spécifier "
|
||||
"plusieurs commandes :command:`bdist_\\*` et leurs options ::"
|
||||
|
||||
#: distutils/builtdist.rst:182
|
||||
#: distutils/builtdist.rst:187
|
||||
msgid ""
|
||||
"Creating RPM packages is driven by a :file:`.spec` file, much as using the "
|
||||
"Distutils is driven by the setup script. To make your life easier, the :"
|
||||
|
@ -436,43 +448,43 @@ msgstr ""
|
|||
"Beaucoup d'options du fichier :file:`.spec` sont dérivées des options du "
|
||||
"script de préparation suivant :"
|
||||
|
||||
#: distutils/builtdist.rst:214
|
||||
#: distutils/builtdist.rst:219
|
||||
msgid "RPM :file:`.spec` file option or section"
|
||||
msgstr "Option de fichier RPM :file:`.spec`"
|
||||
|
||||
#: distutils/builtdist.rst:190
|
||||
#: distutils/builtdist.rst:195
|
||||
msgid "Distutils setup script option"
|
||||
msgstr "Options du script de préparation Distutils"
|
||||
|
||||
#: distutils/builtdist.rst:192
|
||||
#: distutils/builtdist.rst:197
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
||||
#: distutils/builtdist.rst:192
|
||||
#: distutils/builtdist.rst:197
|
||||
msgid "``name``"
|
||||
msgstr "``name``"
|
||||
|
||||
#: distutils/builtdist.rst:194
|
||||
#: distutils/builtdist.rst:199
|
||||
msgid "Summary (in preamble)"
|
||||
msgstr "*Summary* (dans le préambule)"
|
||||
|
||||
#: distutils/builtdist.rst:194
|
||||
#: distutils/builtdist.rst:199
|
||||
msgid "``description``"
|
||||
msgstr "``description``"
|
||||
|
||||
#: distutils/builtdist.rst:196
|
||||
#: distutils/builtdist.rst:201
|
||||
msgid "Version"
|
||||
msgstr "Version"
|
||||
|
||||
#: distutils/builtdist.rst:196
|
||||
#: distutils/builtdist.rst:201
|
||||
msgid "``version``"
|
||||
msgstr "``version``"
|
||||
|
||||
#: distutils/builtdist.rst:221
|
||||
#: distutils/builtdist.rst:226
|
||||
msgid "Vendor"
|
||||
msgstr "Vendor"
|
||||
|
||||
#: distutils/builtdist.rst:198
|
||||
#: distutils/builtdist.rst:203
|
||||
msgid ""
|
||||
"``author`` and ``author_email``, or --- & ``maintainer`` and "
|
||||
"``maintainer_email``"
|
||||
|
@ -480,31 +492,31 @@ msgstr ""
|
|||
"``author`` et ``author_email``, ou --- & ``maintainer`` et "
|
||||
"``maintainer_email``"
|
||||
|
||||
#: distutils/builtdist.rst:202
|
||||
#: distutils/builtdist.rst:207
|
||||
msgid "Copyright"
|
||||
msgstr "Copyright"
|
||||
|
||||
#: distutils/builtdist.rst:202
|
||||
#: distutils/builtdist.rst:207
|
||||
msgid "``license``"
|
||||
msgstr "``license``"
|
||||
|
||||
#: distutils/builtdist.rst:204
|
||||
#: distutils/builtdist.rst:209
|
||||
msgid "Url"
|
||||
msgstr "Url"
|
||||
|
||||
#: distutils/builtdist.rst:204
|
||||
#: distutils/builtdist.rst:209
|
||||
msgid "``url``"
|
||||
msgstr "``url``"
|
||||
|
||||
#: distutils/builtdist.rst:206
|
||||
#: distutils/builtdist.rst:211
|
||||
msgid "%description (section)"
|
||||
msgstr "%description (section)"
|
||||
|
||||
#: distutils/builtdist.rst:206
|
||||
#: distutils/builtdist.rst:211
|
||||
msgid "``long_description``"
|
||||
msgstr "``long_description``"
|
||||
|
||||
#: distutils/builtdist.rst:209
|
||||
#: distutils/builtdist.rst:214
|
||||
msgid ""
|
||||
"Additionally, there are many options in :file:`.spec` files that don't have "
|
||||
"corresponding options in the setup script. Most of these are handled "
|
||||
|
@ -514,116 +526,116 @@ msgstr ""
|
|||
"aucun équivalent dans le script de préparation. La plupart de celles ci sont "
|
||||
"gérées par les options de la commande :command:`bdist_rpm` suivant :"
|
||||
|
||||
#: distutils/builtdist.rst:214
|
||||
#: distutils/builtdist.rst:219
|
||||
msgid ":command:`bdist_rpm` option"
|
||||
msgstr "Option de :command:`bdist_rpm`"
|
||||
|
||||
#: distutils/builtdist.rst:214
|
||||
#: distutils/builtdist.rst:219
|
||||
msgid "default value"
|
||||
msgstr "valeur par défaut"
|
||||
|
||||
#: distutils/builtdist.rst:217
|
||||
#: distutils/builtdist.rst:222
|
||||
msgid "Release"
|
||||
msgstr "Version"
|
||||
|
||||
#: distutils/builtdist.rst:217
|
||||
#: distutils/builtdist.rst:222
|
||||
msgid "``release``"
|
||||
msgstr "``release``"
|
||||
|
||||
#: distutils/builtdist.rst:217
|
||||
#: distutils/builtdist.rst:222
|
||||
msgid "\"1\""
|
||||
msgstr "\"1\""
|
||||
|
||||
#: distutils/builtdist.rst:219
|
||||
#: distutils/builtdist.rst:224
|
||||
msgid "Group"
|
||||
msgstr "Group"
|
||||
|
||||
#: distutils/builtdist.rst:219
|
||||
#: distutils/builtdist.rst:224
|
||||
msgid "``group``"
|
||||
msgstr "``group``"
|
||||
|
||||
#: distutils/builtdist.rst:219
|
||||
#: distutils/builtdist.rst:224
|
||||
msgid "\"Development/Libraries\""
|
||||
msgstr "\"Développement/Bibliothèques\""
|
||||
|
||||
#: distutils/builtdist.rst:221
|
||||
#: distutils/builtdist.rst:226
|
||||
msgid "``vendor``"
|
||||
msgstr "``vendor``"
|
||||
|
||||
#: distutils/builtdist.rst:221
|
||||
#: distutils/builtdist.rst:226
|
||||
msgid "(see above)"
|
||||
msgstr "(voir au-dessus)"
|
||||
|
||||
#: distutils/builtdist.rst:223
|
||||
#: distutils/builtdist.rst:228
|
||||
msgid "Packager"
|
||||
msgstr "Packager"
|
||||
|
||||
#: distutils/builtdist.rst:223
|
||||
#: distutils/builtdist.rst:228
|
||||
msgid "``packager``"
|
||||
msgstr "``packager``"
|
||||
|
||||
#: distutils/builtdist.rst:225 distutils/builtdist.rst:229
|
||||
#: distutils/builtdist.rst:233 distutils/builtdist.rst:237
|
||||
#: distutils/builtdist.rst:230 distutils/builtdist.rst:234
|
||||
#: distutils/builtdist.rst:238 distutils/builtdist.rst:242
|
||||
msgid "(none)"
|
||||
msgstr "(none)"
|
||||
|
||||
#: distutils/builtdist.rst:225
|
||||
#: distutils/builtdist.rst:230
|
||||
msgid "Provides"
|
||||
msgstr "Provides"
|
||||
|
||||
#: distutils/builtdist.rst:225
|
||||
#: distutils/builtdist.rst:230
|
||||
msgid "``provides``"
|
||||
msgstr "``provides``"
|
||||
|
||||
#: distutils/builtdist.rst:227
|
||||
#: distutils/builtdist.rst:232
|
||||
msgid "Requires"
|
||||
msgstr "Requires"
|
||||
|
||||
#: distutils/builtdist.rst:227
|
||||
#: distutils/builtdist.rst:232
|
||||
msgid "``requires``"
|
||||
msgstr "``requires``"
|
||||
|
||||
#: distutils/builtdist.rst:229
|
||||
#: distutils/builtdist.rst:234
|
||||
msgid "Conflicts"
|
||||
msgstr "Conflicts"
|
||||
|
||||
#: distutils/builtdist.rst:229
|
||||
#: distutils/builtdist.rst:234
|
||||
msgid "``conflicts``"
|
||||
msgstr "``conflicts``"
|
||||
|
||||
#: distutils/builtdist.rst:231
|
||||
#: distutils/builtdist.rst:236
|
||||
msgid "Obsoletes"
|
||||
msgstr "Obsoletes"
|
||||
|
||||
#: distutils/builtdist.rst:231
|
||||
#: distutils/builtdist.rst:236
|
||||
msgid "``obsoletes``"
|
||||
msgstr "``obsoletes``"
|
||||
|
||||
#: distutils/builtdist.rst:233
|
||||
#: distutils/builtdist.rst:238
|
||||
msgid "Distribution"
|
||||
msgstr "Distribution"
|
||||
|
||||
#: distutils/builtdist.rst:233
|
||||
#: distutils/builtdist.rst:238
|
||||
msgid "``distribution_name``"
|
||||
msgstr "``distribution_name``"
|
||||
|
||||
#: distutils/builtdist.rst:235
|
||||
#: distutils/builtdist.rst:240
|
||||
msgid "BuildRequires"
|
||||
msgstr "BuildRequires"
|
||||
|
||||
#: distutils/builtdist.rst:235
|
||||
#: distutils/builtdist.rst:240
|
||||
msgid "``build_requires``"
|
||||
msgstr "``build_requires``"
|
||||
|
||||
#: distutils/builtdist.rst:237
|
||||
#: distutils/builtdist.rst:242
|
||||
msgid "Icon"
|
||||
msgstr "Icon"
|
||||
|
||||
#: distutils/builtdist.rst:237
|
||||
#: distutils/builtdist.rst:242
|
||||
msgid "``icon``"
|
||||
msgstr "``icon``"
|
||||
|
||||
#: distutils/builtdist.rst:240
|
||||
#: distutils/builtdist.rst:245
|
||||
msgid ""
|
||||
"Obviously, supplying even a few of these options on the command-line would "
|
||||
"be tedious and error-prone, so it's usually best to put them in the setup "
|
||||
|
@ -643,7 +655,7 @@ msgstr ""
|
|||
"pydistutils.cfg`). Si vous voulez temporairement désactiver ce fichier, vous "
|
||||
"pouvez passer l'option :option:`!--no-user-cfg` à :file:`setup.py`."
|
||||
|
||||
#: distutils/builtdist.rst:248
|
||||
#: distutils/builtdist.rst:253
|
||||
msgid ""
|
||||
"There are three steps to building a binary RPM package, all of which are "
|
||||
"handled automatically by the Distutils:"
|
||||
|
@ -651,7 +663,7 @@ msgstr ""
|
|||
"La création de binaire RPM se fait en trois étapes, chacune gérée "
|
||||
"automatiquement par Distutils :"
|
||||
|
||||
#: distutils/builtdist.rst:251
|
||||
#: distutils/builtdist.rst:256
|
||||
msgid ""
|
||||
"create a :file:`.spec` file, which describes the package (analogous to the "
|
||||
"Distutils setup script; in fact, much of the information in the setup "
|
||||
|
@ -661,11 +673,11 @@ msgstr ""
|
|||
"préparation Distutils, en réalité la plupart des informations du script de "
|
||||
"préparation se retrouve dans le fichier :file:`.spec`)"
|
||||
|
||||
#: distutils/builtdist.rst:255
|
||||
#: distutils/builtdist.rst:260
|
||||
msgid "create the source RPM"
|
||||
msgstr "crée un RPM source"
|
||||
|
||||
#: distutils/builtdist.rst:257
|
||||
#: distutils/builtdist.rst:262
|
||||
msgid ""
|
||||
"create the \"binary\" RPM (which may or may not contain binary code, "
|
||||
"depending on whether your module distribution contains Python extensions)"
|
||||
|
@ -673,7 +685,7 @@ msgstr ""
|
|||
"crée le RPM \"binaire\" (qui peut ou non contenir des binaires, tout dépend "
|
||||
"de si votre module contiens des extensions)"
|
||||
|
||||
#: distutils/builtdist.rst:260
|
||||
#: distutils/builtdist.rst:265
|
||||
msgid ""
|
||||
"Normally, RPM bundles the last two steps together; when you use the "
|
||||
"Distutils, all three steps are typically bundled together."
|
||||
|
@ -681,7 +693,7 @@ msgstr ""
|
|||
"Normalement, RPM réunit les deux dernières étapes ensemble ; quand vous "
|
||||
"utilisez Distutils, les trois étapes sont regroupées."
|
||||
|
||||
#: distutils/builtdist.rst:263
|
||||
#: distutils/builtdist.rst:268
|
||||
msgid ""
|
||||
"If you wish, you can separate these three steps. You can use the :option:"
|
||||
"`!--spec-only` option to make :command:`bdist_rpm` just create the :file:`."
|
||||
|
@ -700,11 +712,11 @@ msgstr ""
|
|||
"fichier :file:`.spec` se retrouve profondément enfoui dans l'arborescence, "
|
||||
"dans un dossier temporaire créé par la commande :command:`bdist_rpm`.)"
|
||||
|
||||
#: distutils/builtdist.rst:291
|
||||
#: distutils/builtdist.rst:296
|
||||
msgid "Cross-compiling on Windows"
|
||||
msgstr "Compiler pour toute les plateformes Windows"
|
||||
|
||||
#: distutils/builtdist.rst:293
|
||||
#: distutils/builtdist.rst:298
|
||||
msgid ""
|
||||
"Starting with Python 2.6, distutils is capable of cross-compiling between "
|
||||
"Windows platforms. In practice, this means that with the correct tools "
|
||||
|
@ -716,7 +728,7 @@ msgstr ""
|
|||
"installés, vous pouvez utiliser une version 32 bits de Windows pour créer "
|
||||
"une extension 64 bits et vice-versa."
|
||||
|
||||
#: distutils/builtdist.rst:298
|
||||
#: distutils/builtdist.rst:303
|
||||
msgid ""
|
||||
"To build for an alternate platform, specify the :option:`!--plat-name` "
|
||||
"option to the build command. Valid values are currently 'win32', and 'win-"
|
||||
|
@ -727,11 +739,11 @@ msgstr ""
|
|||
"actuellement **'win32'**, et **'win-amd64'**. Par exemple, sur une version "
|
||||
"*32bit* de Windows, vous pourriez exécuter ::"
|
||||
|
||||
#: distutils/builtdist.rst:304
|
||||
#: distutils/builtdist.rst:309
|
||||
msgid "to build a 64bit version of your extension."
|
||||
msgstr ""
|
||||
|
||||
#: distutils/builtdist.rst:306
|
||||
#: distutils/builtdist.rst:311
|
||||
msgid ""
|
||||
"would create a 64bit installation executable on your 32bit version of "
|
||||
"Windows."
|
||||
|
@ -739,7 +751,7 @@ msgstr ""
|
|||
"créera un installateur exécutable 64 bits depuis votre version 32 bits de "
|
||||
"Windows."
|
||||
|
||||
#: distutils/builtdist.rst:308
|
||||
#: distutils/builtdist.rst:313
|
||||
msgid ""
|
||||
"To cross-compile, you must download the Python source code and cross-compile "
|
||||
"Python itself for the platform you are targeting - it is not possible from a "
|
||||
|
@ -759,7 +771,7 @@ msgstr ""
|
|||
"l'arborescence des sources de Python et construire la version *x64* du "
|
||||
"projet *pythoncore* avant de pouvoir compiler son extension."
|
||||
|
||||
#: distutils/builtdist.rst:317
|
||||
#: distutils/builtdist.rst:322
|
||||
msgid ""
|
||||
"Note that by default, Visual Studio 2008 does not install 64bit compilers or "
|
||||
"tools. You may need to reexecute the Visual Studio setup process and select "
|
||||
|
@ -772,11 +784,11 @@ msgstr ""
|
|||
"> [Ajouter/Supprimer]* est un bon moyen de vérifier ou modifier votre "
|
||||
"installation existante.)"
|
||||
|
||||
#: distutils/builtdist.rst:325
|
||||
#: distutils/builtdist.rst:330
|
||||
msgid "The Postinstallation script"
|
||||
msgstr "Le script de post-installation"
|
||||
|
||||
#: distutils/builtdist.rst:327
|
||||
#: distutils/builtdist.rst:332
|
||||
msgid ""
|
||||
"Starting with Python 2.3, a postinstallation script can be specified with "
|
||||
"the :option:`!--install-script` option. The basename of the script must be "
|
||||
|
@ -787,7 +799,7 @@ msgstr ""
|
|||
"l'option :option:`!--install-script`. Le nom du script doit être spécifié et "
|
||||
"présent dans l'argument \"scripts\" de la fonction ``setup``."
|
||||
|
||||
#: distutils/builtdist.rst:332
|
||||
#: distutils/builtdist.rst:337
|
||||
msgid ""
|
||||
"This script will be run at installation time on the target system after all "
|
||||
"the files have been copied, with ``argv[1]`` set to :option:`!-install`, and "
|
||||
|
@ -800,7 +812,7 @@ msgstr ""
|
|||
"que les fichiers soient supprimés avec la valeur de ``argv[1]`` à :option:`!-"
|
||||
"remove`."
|
||||
|
||||
#: distutils/builtdist.rst:337
|
||||
#: distutils/builtdist.rst:342
|
||||
msgid ""
|
||||
"The installation script runs embedded in the windows installer, every output "
|
||||
"(``sys.stdout``, ``sys.stderr``) is redirected into a buffer and will be "
|
||||
|
@ -810,7 +822,7 @@ msgstr ""
|
|||
"chaque sortie (``sys.stdout``, ``sys.stderr``) est redirigé dans le tampon "
|
||||
"et sera affiché dans le GUI après que les scripts soient finis."
|
||||
|
||||
#: distutils/builtdist.rst:341
|
||||
#: distutils/builtdist.rst:346
|
||||
msgid ""
|
||||
"Some functions especially useful in this context are available as additional "
|
||||
"built-in functions in the installation script."
|
||||
|
@ -818,7 +830,7 @@ msgstr ""
|
|||
"Certaines fonctions spécialement utiles dans ce contexte sont disponibles "
|
||||
"comme fonctions natives additionnelles dans le script d'installation."
|
||||
|
||||
#: distutils/builtdist.rst:348
|
||||
#: distutils/builtdist.rst:353
|
||||
msgid ""
|
||||
"These functions should be called when a directory or file is created by the "
|
||||
"postinstall script at installation time. It will register *path* with the "
|
||||
|
@ -831,7 +843,7 @@ msgstr ""
|
|||
"lors de la des-installation de la distribution. pour être sûr, les "
|
||||
"répertoires sont uniquement retirés s'ils sont vides."
|
||||
|
||||
#: distutils/builtdist.rst:356
|
||||
#: distutils/builtdist.rst:361
|
||||
msgid ""
|
||||
"This function can be used to retrieve special folder locations on Windows "
|
||||
"like the Start Menu or the Desktop. It returns the full path to the folder. "
|
||||
|
@ -842,11 +854,11 @@ msgstr ""
|
|||
"renvoie le chemin complet pour le fichier. *csidl_string* doit être unes des "
|
||||
"chaines suivantes ::"
|
||||
|
||||
#: distutils/builtdist.rst:376
|
||||
#: distutils/builtdist.rst:381
|
||||
msgid "If the folder cannot be retrieved, :exc:`OSError` is raised."
|
||||
msgstr "Si le fichier ne peut être extrait, :exc:`OSError` est obtenu.."
|
||||
|
||||
#: distutils/builtdist.rst:378
|
||||
#: distutils/builtdist.rst:383
|
||||
msgid ""
|
||||
"Which folders are available depends on the exact Windows version, and "
|
||||
"probably also the configuration. For details refer to Microsoft's "
|
||||
|
@ -856,7 +868,7 @@ msgstr ""
|
|||
"probablement aussi de la configuration. pour des détails se référer à la "
|
||||
"documentation Microsoft de la fonction :c:func:`SHGetSpecialFolderPath`."
|
||||
|
||||
#: distutils/builtdist.rst:385
|
||||
#: distutils/builtdist.rst:390
|
||||
msgid ""
|
||||
"This function creates a shortcut. *target* is the path to the program to be "
|
||||
"started by the shortcut. *description* is the description of the shortcut. "
|
||||
|
@ -876,15 +888,6 @@ msgstr ""
|
|||
"l’icône dans le fichier *cheminIcone*. Encore, pour les détails consulter la "
|
||||
"documentation Microsoft pour l'interface :class:`ILienShell`."
|
||||
|
||||
#~ msgid ":command:`bdist_msi`"
|
||||
#~ msgstr ":command:`bdist_msi`"
|
||||
|
||||
#~ msgid "msi"
|
||||
#~ msgstr "msi"
|
||||
|
||||
#~ msgid "bdist_msi is deprecated since Python 3.9."
|
||||
#~ msgstr "``bdist_msi`` est obsolète depuis Python 3.9."
|
||||
|
||||
#~ msgid "``wininst``"
|
||||
#~ msgstr "``wininst``"
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
|
||||
"PO-Revision-Date: 2022-10-18 12:31+0200\n"
|
||||
"Last-Translator: Eric Régnier <utopman@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
|
||||
"PO-Revision-Date: 2020-02-04 21:21+0100\n"
|
||||
"Last-Translator: ZepmanBC <zepman@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -112,7 +112,7 @@ msgstr "Fichier *tar* compressé par *bzip2* (:file:`.tar.bz2`)"
|
|||
|
||||
#: distutils/sourcedist.rst:37 distutils/sourcedist.rst:43
|
||||
msgid "\\(5)"
|
||||
msgstr ""
|
||||
msgstr "\\(5)"
|
||||
|
||||
#: distutils/sourcedist.rst:37
|
||||
msgid "``xztar``"
|
||||
|
@ -176,8 +176,8 @@ msgstr ""
|
|||
|
||||
#: distutils/sourcedist.rst:65
|
||||
msgid ""
|
||||
"deprecated by `PEP 527 <https://peps.python.org/pep-0527/>`_; `PyPI <https://"
|
||||
"pypi.org>`_ only accepts ``.zip`` and ``.tar.gz`` files."
|
||||
"deprecated by `PEP 527 <https://www.python.org/dev/peps/pep-0527/>`_; `PyPI "
|
||||
"<https://pypi.org>`_ only accepts ``.zip`` and ``.tar.gz`` files."
|
||||
msgstr ""
|
||||
|
||||
#: distutils/sourcedist.rst:68
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-11 12:46+0100\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2020-08-24 09:01+0200\n"
|
||||
"PO-Revision-Date: 2019-12-25 17:24+0100\n"
|
||||
"Last-Translator: Antoine <antoine.venier@hotmail.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -421,10 +421,9 @@ msgstr ""
|
|||
"compiler :"
|
||||
|
||||
#: extending/embedding.rst:304
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"``pythonX.Y-config --ldflags --embed`` will give you the recommended flags "
|
||||
"when linking:"
|
||||
"``pythonX.Y-config --ldflags`` 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 :"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-11 12:50+0100\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2018-07-04 11:38+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-02-07 20:03+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 12:22+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
|
||||
"PO-Revision-Date: 2020-06-28 15:18+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,15 +5,15 @@ msgid ""
|
|||
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-20 22:13+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 16:08+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\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\n"
|
||||
|
||||
#: faq/design.rst:3
|
||||
msgid "Design and History FAQ"
|
||||
|
@ -265,13 +265,13 @@ msgid ""
|
|||
msgstr ""
|
||||
"Ensuite, ça veut dire qu'aucune syntaxe spéciale n'est nécessaire si vous "
|
||||
"souhaitez explicitement référencer ou appeler la méthode depuis une classe "
|
||||
"en particulier. En C++, si vous utilisez la méthode d'une classe mère elle-"
|
||||
"même surchargée par une classe dérivée, vous devez utiliser l'opérateur ``::"
|
||||
"`` — en Python vous pouvez écrire ``ClasseDeBase.nom_methode(self, <argument "
|
||||
"list>)``. C'est particulièrement utile pour les méthodes :meth:`__init__` "
|
||||
"et, de manière générale, dans les cas où une classe dérivée veut étendre la "
|
||||
"méthode du même nom de la classe mère, et doit donc se débrouiller pour "
|
||||
"appeler la méthode de la classe mère."
|
||||
"en particulier. En C++, si vous utilisez la méthode d'une classe de base "
|
||||
"elle-même surchargée par une classe dérivée, vous devez utiliser l'opérateur "
|
||||
"``::`` — en Python vous pouvez écrire ``ClasseDeBase.nom_methode(self, "
|
||||
"<argument list>)``. C'est particulièrement utile pour les méthodes :meth:"
|
||||
"`__init__` et, de manière générale, dans les cas où une classe dérivée veut "
|
||||
"étendre la méthode du même nom de la classe de base, et doit donc se "
|
||||
"débrouiller pour appeler la méthode de la classe de base."
|
||||
|
||||
#: faq/design.rst:136
|
||||
msgid ""
|
||||
|
@ -315,6 +315,7 @@ msgid "Starting in Python 3.8, you can!"
|
|||
msgstr "Depuis Python 3.8, c'est possible !"
|
||||
|
||||
#: faq/design.rst:158
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Assignment expressions using the walrus operator ``:=`` assign a variable in "
|
||||
"an expression::"
|
||||
|
@ -374,7 +375,7 @@ msgstr ""
|
|||
"``key()``, ou quand un objet qui n'est pas un fichier implémente une méthode "
|
||||
"``write()``."
|
||||
|
||||
#: faq/design.rst:207
|
||||
#: faq/design.rst:189
|
||||
msgid "https://mail.python.org/pipermail/python-3000/2006-November/004643.html"
|
||||
msgstr ""
|
||||
"https://mail.python.org/pipermail/python-3000/2006-November/004643.html"
|
||||
|
@ -1121,8 +1122,8 @@ msgid ""
|
|||
"`~collections.abc.MutableMapping`."
|
||||
msgstr ""
|
||||
"Python 2.6 ajoute un module :mod:`abc` qui vous permet de définir des "
|
||||
"classes mères abstraites (ABC pour *abstract base classes* en anglais). Vous "
|
||||
"pouvez ensuite utiliser :func:`isinstance` et :func:`issubclass` pour "
|
||||
"classes de base abstraites (ABC pour *abstract base classes* en anglais). "
|
||||
"Vous pouvez ensuite utiliser :func:`isinstance` et :func:`issubclass` pour "
|
||||
"vérifier si une instance ou une classe implémente une ABC particulière. Le "
|
||||
"module :mod:`collections.abc` définit un ensemble d'ABC utiles telles que :"
|
||||
"class:`~collections.abc.Iterable`, :class:`~collections.abc.Container` et :"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-10-17 18:37+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
154
faq/general.po
154
faq/general.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-12 11:56+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-16 02:40+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -255,17 +255,16 @@ msgstr ""
|
|||
"utilisé pour pallier à différents problèmes."
|
||||
|
||||
#: faq/general.rst:114
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The language comes with a large standard library that covers areas such as "
|
||||
"string processing (regular expressions, Unicode, calculating differences "
|
||||
"between files), internet protocols (HTTP, FTP, SMTP, XML-RPC, POP, IMAP), "
|
||||
"software engineering (unit testing, logging, profiling, parsing Python "
|
||||
"code), and operating system interfaces (system calls, filesystems, TCP/IP "
|
||||
"sockets). Look at the table of contents for :ref:`library-index` to get an "
|
||||
"idea of what's available. A wide variety of third-party extensions are also "
|
||||
"available. Consult `the Python Package Index <https://pypi.org>`_ to find "
|
||||
"packages of interest to you."
|
||||
"between files), internet protocols (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, CGI "
|
||||
"programming), software engineering (unit testing, logging, profiling, "
|
||||
"parsing Python code), and operating system interfaces (system calls, "
|
||||
"filesystems, TCP/IP sockets). Look at the table of contents for :ref:"
|
||||
"`library-index` to get an idea of what's available. A wide variety of third-"
|
||||
"party extensions are also available. Consult `the Python Package Index "
|
||||
"<https://pypi.org>`_ to find packages of interest to you."
|
||||
msgstr ""
|
||||
"Le langage vient avec une bibliothèque standard importante qui couvre des "
|
||||
"domaines tels que le traitement des chaînes de caractères (expressions "
|
||||
|
@ -534,44 +533,59 @@ msgid "How do I submit bug reports and patches for Python?"
|
|||
msgstr "Comment soumettre un rapport de bogues ou un correctif pour Python ?"
|
||||
|
||||
#: faq/general.rst:239
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"To report a bug or submit a patch, use the issue tracker at https://github."
|
||||
"com/python/cpython/issues."
|
||||
"To report a bug or submit a patch, please use the Roundup installation at "
|
||||
"https://bugs.python.org/."
|
||||
msgstr ""
|
||||
"Pour reporter un bogue ou soumettre un correctif, merci d'utiliser https://"
|
||||
"bugs.python.org/."
|
||||
|
||||
#: faq/general.rst:242
|
||||
msgid ""
|
||||
"You must have a Roundup account to report bugs; this makes it possible for "
|
||||
"us to contact you if we have follow-up questions. It will also enable "
|
||||
"Roundup to send you updates as we act on your bug. If you had previously "
|
||||
"used SourceForge to report bugs to Python, you can obtain your Roundup "
|
||||
"password through Roundup's `password reset procedure <https://bugs.python."
|
||||
"org/user?@template=forgotten>`_."
|
||||
msgstr ""
|
||||
"Vous devez avoir un compte Roundup pour reporter des bogues; cela nous "
|
||||
"permet de vous contacter si nous avons des questions complémentaires. Cela "
|
||||
"permettra aussi le suivi de traitement de votre bogue. Si vous avez "
|
||||
"auparavant utilisé SourceForge pour reporter des bogues sur Python, vous "
|
||||
"pouvez obtenir un mot de passe Roundup grâce à la `procédure de "
|
||||
"réinitialisation de mot de passe de Roundup <https://bugs.python.org/user?"
|
||||
"@template=forgotten>`_."
|
||||
|
||||
#: faq/general.rst:248
|
||||
msgid ""
|
||||
"For more information on how Python is developed, consult `the Python "
|
||||
"Developer's Guide <https://devguide.python.org/>`_."
|
||||
msgstr ""
|
||||
"Pour davantage d'informations sur comment Python est développé, consultez "
|
||||
"`le Guide du Développeur Python <https://devguide.python.org/>`_."
|
||||
|
||||
#: faq/general.rst:247
|
||||
#: faq/general.rst:253
|
||||
msgid "Are there any published articles about Python that I can reference?"
|
||||
msgstr ""
|
||||
"Existe-t-il des articles publiés au sujet de Python auxquels je peux me "
|
||||
"référer ?"
|
||||
|
||||
#: faq/general.rst:249
|
||||
#: faq/general.rst:255
|
||||
msgid "It's probably best to cite your favorite book about Python."
|
||||
msgstr ""
|
||||
"C'est probablement mieux de vous référer à votre livre favori à propos de "
|
||||
"Python."
|
||||
|
||||
#: faq/general.rst:251
|
||||
#, fuzzy
|
||||
#: faq/general.rst:257
|
||||
msgid ""
|
||||
"The `very first article <https://ir.cwi.nl/pub/18204>`_ about Python was "
|
||||
"written in 1991 and is now quite outdated."
|
||||
"The very first article about Python was written in 1991 and is now quite "
|
||||
"outdated."
|
||||
msgstr ""
|
||||
"Le tout premier article à propos de Python a été écrit en 1991 et est "
|
||||
"maintenant obsolète."
|
||||
|
||||
#: faq/general.rst:254
|
||||
#: faq/general.rst:260
|
||||
msgid ""
|
||||
"Guido van Rossum and Jelke de Boer, \"Interactively Testing Remote Servers "
|
||||
"Using the Python Programming Language\", CWI Quarterly, Volume 4, Issue 4 "
|
||||
|
@ -581,11 +595,11 @@ msgstr ""
|
|||
"Using the Python Programming Language* », CWI Quarterly, Volume 4, Issue 4 "
|
||||
"(December 1991), Amsterdam, pp 283--303."
|
||||
|
||||
#: faq/general.rst:260
|
||||
#: faq/general.rst:266
|
||||
msgid "Are there any books on Python?"
|
||||
msgstr "Y a-t-il des livres au sujet de Python ?"
|
||||
|
||||
#: faq/general.rst:262
|
||||
#: faq/general.rst:268
|
||||
msgid ""
|
||||
"Yes, there are many, and more are being published. See the python.org wiki "
|
||||
"at https://wiki.python.org/moin/PythonBooks for a list."
|
||||
|
@ -593,7 +607,7 @@ msgstr ""
|
|||
"Oui, il y en a beaucoup, et d'autres sont en cours de publication. Voir le "
|
||||
"wiki python à https://wiki.python.org/moin/PythonBooks pour avoir une liste."
|
||||
|
||||
#: faq/general.rst:265
|
||||
#: faq/general.rst:271
|
||||
msgid ""
|
||||
"You can also search online bookstores for \"Python\" and filter out the "
|
||||
"Monty Python references; or perhaps search for \"Python\" and \"language\"."
|
||||
|
@ -602,11 +616,11 @@ msgstr ""
|
|||
"terme « Python » et éliminer les références concernant les Monty Python, ou "
|
||||
"peut-être faire une recherche avec les termes « langage » et « Python »."
|
||||
|
||||
#: faq/general.rst:270
|
||||
#: faq/general.rst:276
|
||||
msgid "Where in the world is www.python.org located?"
|
||||
msgstr "Où www.python.org est-il localisé dans le monde ?"
|
||||
|
||||
#: faq/general.rst:272
|
||||
#: faq/general.rst:278
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The Python project's infrastructure is located all over the world and is "
|
||||
|
@ -617,11 +631,11 @@ msgstr ""
|
|||
"gérée par l'équipe de l'infrastructure Python. Plus de détails `ici <http://"
|
||||
"infra.psf.io>`__."
|
||||
|
||||
#: faq/general.rst:277
|
||||
#: faq/general.rst:283
|
||||
msgid "Why is it called Python?"
|
||||
msgstr "Pourquoi le nom Python ?"
|
||||
|
||||
#: faq/general.rst:279
|
||||
#: faq/general.rst:285
|
||||
msgid ""
|
||||
"When he began implementing Python, Guido van Rossum was also reading the "
|
||||
"published scripts from `\"Monty Python's Flying Circus\" <https://en."
|
||||
|
@ -635,23 +649,23 @@ msgstr ""
|
|||
"BBC. Van Rossum a pensé qu'il avait besoin d'un nom court, unique, et un peu "
|
||||
"mystérieux, donc il a décidé de l'appeler le langage Python."
|
||||
|
||||
#: faq/general.rst:287
|
||||
#: faq/general.rst:293
|
||||
msgid "Do I have to like \"Monty Python's Flying Circus\"?"
|
||||
msgstr "Dois-je aimer \"Monty Python's Flying Circus\" ?"
|
||||
|
||||
#: faq/general.rst:289
|
||||
#: faq/general.rst:295
|
||||
msgid "No, but it helps. :)"
|
||||
msgstr "Non, mais ça peut aider. :)"
|
||||
|
||||
#: faq/general.rst:293
|
||||
#: faq/general.rst:299
|
||||
msgid "Python in the real world"
|
||||
msgstr "Python c'est le monde réel"
|
||||
|
||||
#: faq/general.rst:296
|
||||
#: faq/general.rst:302
|
||||
msgid "How stable is Python?"
|
||||
msgstr "Quel est le niveau de stabilité de Python ?"
|
||||
|
||||
#: faq/general.rst:298
|
||||
#: faq/general.rst:304
|
||||
msgid ""
|
||||
"Very stable. New, stable releases have been coming out roughly every 6 to "
|
||||
"18 months since 1991, and this seems likely to continue. As of version 3.9, "
|
||||
|
@ -661,7 +675,7 @@ msgstr ""
|
|||
"depuis 1991, et il semble probable que ça continue. À partir de la version "
|
||||
"3.9, Python aura une nouvelle version majeure tous les 12 mois (:pep:`602`)."
|
||||
|
||||
#: faq/general.rst:302
|
||||
#: faq/general.rst:308
|
||||
msgid ""
|
||||
"The developers issue \"bugfix\" releases of older versions, so the stability "
|
||||
"of existing releases gradually improves. Bugfix releases, indicated by a "
|
||||
|
@ -678,14 +692,13 @@ msgstr ""
|
|||
"garanti que les interfaces resteront les mêmes tout au long de la série de "
|
||||
"versions correctives."
|
||||
|
||||
#: faq/general.rst:309
|
||||
#, fuzzy
|
||||
#: faq/general.rst:315
|
||||
msgid ""
|
||||
"The latest stable releases can always be found on the `Python download page "
|
||||
"<https://www.python.org/downloads/>`_. There are two production-ready "
|
||||
"versions of Python: 2.x and 3.x. The recommended version is 3.x, which is "
|
||||
"supported by most widely used libraries. Although 2.x is still widely used, "
|
||||
"`it is not maintained anymore <https://peps.python.org/pep-0373/>`_."
|
||||
"`it is not maintained anymore <https://www.python.org/dev/peps/pep-0373/>`_."
|
||||
msgstr ""
|
||||
"Les dernières versions stables peuvent toujours être trouvées sur la `page "
|
||||
"de téléchargement Python <https://www.python.org/downloads/>`_. Il existe "
|
||||
|
@ -694,11 +707,11 @@ msgstr ""
|
|||
"largement utilisées. Bien que Python 2 soit encore utilisé, `il n'est "
|
||||
"désormais plus maintenu <https://www.python.org/dev/peps/pep-0373/>`_."
|
||||
|
||||
#: faq/general.rst:316
|
||||
#: faq/general.rst:322
|
||||
msgid "How many people are using Python?"
|
||||
msgstr "Combien de personnes utilisent Python ?"
|
||||
|
||||
#: faq/general.rst:318
|
||||
#: faq/general.rst:324
|
||||
msgid ""
|
||||
"There are probably millions of users, though it's difficult to obtain an "
|
||||
"exact count."
|
||||
|
@ -706,7 +719,7 @@ msgstr ""
|
|||
"Il y a probablement des millions d'utilisateurs, bien qu'il soit difficile "
|
||||
"d'en déterminer le nombre exact."
|
||||
|
||||
#: faq/general.rst:321
|
||||
#: faq/general.rst:327
|
||||
msgid ""
|
||||
"Python is available for free download, so there are no sales figures, and "
|
||||
"it's available from many different sites and packaged with many Linux "
|
||||
|
@ -717,7 +730,7 @@ msgstr ""
|
|||
"il est inclus avec de beaucoup de distributions Linux, donc les statistiques "
|
||||
"de téléchargement ne donnent pas la totalité non plus."
|
||||
|
||||
#: faq/general.rst:325
|
||||
#: faq/general.rst:331
|
||||
msgid ""
|
||||
"The comp.lang.python newsgroup is very active, but not all Python users post "
|
||||
"to the group or even read it."
|
||||
|
@ -725,11 +738,11 @@ msgstr ""
|
|||
"Le forum *comp.lang.python* est très actif, mais tous les utilisateurs de "
|
||||
"Python ne laissent pas de messages dessus ou même ne le lisent pas."
|
||||
|
||||
#: faq/general.rst:330
|
||||
#: faq/general.rst:336
|
||||
msgid "Have any significant projects been done in Python?"
|
||||
msgstr "Y a-t-il un nombre de projets significatif réalisés en Python ?"
|
||||
|
||||
#: faq/general.rst:332
|
||||
#: faq/general.rst:338
|
||||
msgid ""
|
||||
"See https://www.python.org/about/success for a list of projects that use "
|
||||
"Python. Consulting the proceedings for `past Python conferences <https://www."
|
||||
|
@ -742,7 +755,7 @@ msgstr ""
|
|||
"s'avère que les contributions proviennent de nombreux organismes et "
|
||||
"entreprises divers."
|
||||
|
||||
#: faq/general.rst:337
|
||||
#: faq/general.rst:343
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"High-profile Python projects include `the Mailman mailing list manager "
|
||||
|
@ -759,18 +772,17 @@ msgstr ""
|
|||
"logiciel d'administration système en Python. Les entreprises qui utilisent "
|
||||
"Python en interne comprennent Google, Yahoo, et Lucasfilm Ltd."
|
||||
|
||||
#: faq/general.rst:346
|
||||
#: faq/general.rst:352
|
||||
msgid "What new developments are expected for Python in the future?"
|
||||
msgstr "Quelles sont les nouveautés en développement attendues pour Python ?"
|
||||
|
||||
#: faq/general.rst:348
|
||||
#, fuzzy
|
||||
#: faq/general.rst:354
|
||||
msgid ""
|
||||
"See https://peps.python.org/ for the Python Enhancement Proposals (PEPs). "
|
||||
"PEPs are design documents describing a suggested new feature for Python, "
|
||||
"providing a concise technical specification and a rationale. Look for a PEP "
|
||||
"titled \"Python X.Y Release Schedule\", where X.Y is a version that hasn't "
|
||||
"been publicly released yet."
|
||||
"See https://www.python.org/dev/peps/ for the Python Enhancement Proposals "
|
||||
"(PEPs). PEPs are design documents describing a suggested new feature for "
|
||||
"Python, providing a concise technical specification and a rationale. Look "
|
||||
"for a PEP titled \"Python X.Y Release Schedule\", where X.Y is a version "
|
||||
"that hasn't been publicly released yet."
|
||||
msgstr ""
|
||||
"Regardez les propositions d'amélioration de Python (« *Python Enhancement "
|
||||
"Proposals* », ou *PEP*) sur https://www.python.org/dev/peps/. Les PEP sont "
|
||||
|
@ -779,7 +791,7 @@ msgstr ""
|
|||
"logique. Recherchez une PEP intitulée \"Python X.Y Release Schedule\", où X."
|
||||
"Y est la version qui n'a pas encore été publiée."
|
||||
|
||||
#: faq/general.rst:354
|
||||
#: faq/general.rst:360
|
||||
msgid ""
|
||||
"New development is discussed on `the python-dev mailing list <https://mail."
|
||||
"python.org/mailman/listinfo/python-dev/>`_."
|
||||
|
@ -787,12 +799,12 @@ msgstr ""
|
|||
"Le nouveau développement est discuté sur `la liste de diffusion python-dev "
|
||||
"<https://mail.python.org/mailman/listinfo/python-dev/>`_."
|
||||
|
||||
#: faq/general.rst:359
|
||||
#: faq/general.rst:365
|
||||
msgid "Is it reasonable to propose incompatible changes to Python?"
|
||||
msgstr ""
|
||||
"Est-il raisonnable de proposer des changements incompatibles dans Python ?"
|
||||
|
||||
#: faq/general.rst:361
|
||||
#: faq/general.rst:367
|
||||
msgid ""
|
||||
"In general, no. There are already millions of lines of Python code around "
|
||||
"the world, so any change in the language that invalidates more than a very "
|
||||
|
@ -809,7 +821,7 @@ msgstr ""
|
|||
"documentations, beaucoup de livres ont été écrits au sujet de Python, et "
|
||||
"nous ne voulons pas les rendre invalides soudainement."
|
||||
|
||||
#: faq/general.rst:368
|
||||
#: faq/general.rst:374
|
||||
msgid ""
|
||||
"Providing a gradual upgrade path is necessary if a feature has to be "
|
||||
"changed. :pep:`5` describes the procedure followed for introducing backward-"
|
||||
|
@ -818,17 +830,17 @@ msgstr ""
|
|||
"En fournissant un rythme de mise à jour progressif qui est obligatoire si "
|
||||
"une fonctionnalité doit être changée."
|
||||
|
||||
#: faq/general.rst:374
|
||||
#: faq/general.rst:380
|
||||
msgid "Is Python a good language for beginning programmers?"
|
||||
msgstr ""
|
||||
"Existe-t-il un meilleur langage de programmation pour les programmeurs "
|
||||
"débutants ?"
|
||||
|
||||
#: faq/general.rst:376
|
||||
#: faq/general.rst:382
|
||||
msgid "Yes."
|
||||
msgstr "Oui."
|
||||
|
||||
#: faq/general.rst:378
|
||||
#: faq/general.rst:384
|
||||
msgid ""
|
||||
"It is still common to start students with a procedural and statically typed "
|
||||
"language such as Pascal, C, or a subset of C++ or Java. Students may be "
|
||||
|
@ -852,7 +864,7 @@ msgstr ""
|
|||
"peuvent même probablement travailler avec des objets définis dans leurs "
|
||||
"premiers cours."
|
||||
|
||||
#: faq/general.rst:388
|
||||
#: faq/general.rst:394
|
||||
msgid ""
|
||||
"For a student who has never programmed before, using a statically typed "
|
||||
"language seems unnatural. It presents additional complexity that the "
|
||||
|
@ -872,7 +884,7 @@ msgstr ""
|
|||
"terme, ce n'est pas nécessairement la meilleure idée pour s'adresser aux "
|
||||
"étudiants durant leur tout premier cours."
|
||||
|
||||
#: faq/general.rst:396
|
||||
#: faq/general.rst:402
|
||||
msgid ""
|
||||
"Many other aspects of Python make it a good first language. Like Java, "
|
||||
"Python has a large standard library so that students can be assigned "
|
||||
|
@ -895,7 +907,7 @@ msgstr ""
|
|||
"réutilisation de code. Les modules tiers tels que PyGame sont aussi très "
|
||||
"utiles pour étendre les compétences des étudiants."
|
||||
|
||||
#: faq/general.rst:405
|
||||
#: faq/general.rst:411
|
||||
msgid ""
|
||||
"Python's interactive interpreter enables students to test language features "
|
||||
"while they're programming. They can keep a window with the interpreter "
|
||||
|
@ -909,7 +921,7 @@ msgstr ""
|
|||
"souvenir des méthodes pour une liste, ils peuvent faire quelque chose comme "
|
||||
"ça ::"
|
||||
|
||||
#: faq/general.rst:434
|
||||
#: faq/general.rst:440
|
||||
msgid ""
|
||||
"With the interpreter, documentation is never far from the student as they "
|
||||
"are programming."
|
||||
|
@ -917,7 +929,7 @@ msgstr ""
|
|||
"Avec l'interpréteur, la documentation n'est jamais loin des étudiants quand "
|
||||
"ils travaillent."
|
||||
|
||||
#: faq/general.rst:437
|
||||
#: faq/general.rst:443
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"There are also good IDEs for Python. IDLE is a cross-platform IDE for "
|
||||
|
@ -938,7 +950,7 @@ msgstr ""
|
|||
"<https://wiki.python.org/moin/PythonEditors>`_ pour une liste complète des "
|
||||
"environnements de développement intégrés."
|
||||
|
||||
#: faq/general.rst:445
|
||||
#: faq/general.rst:451
|
||||
msgid ""
|
||||
"If you want to discuss Python's use in education, you may be interested in "
|
||||
"joining `the edu-sig mailing list <https://www.python.org/community/sigs/"
|
||||
|
@ -977,19 +989,3 @@ msgstr ""
|
|||
#~ "est un petit nombre. En d'autres mots, toutes les versions nommées *2.0."
|
||||
#~ "aN* précèdent les versions *2.0.bN*, qui elles-mêmes précèdent 2.0rcN, et "
|
||||
#~ "*celles-ci* précèdent la version 2.0."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "You must have a Roundup account to report bugs; this makes it possible "
|
||||
#~ "for us to contact you if we have follow-up questions. It will also "
|
||||
#~ "enable Roundup to send you updates as we act on your bug. If you had "
|
||||
#~ "previously used SourceForge to report bugs to Python, you can obtain your "
|
||||
#~ "Roundup password through Roundup's `password reset procedure <https://"
|
||||
#~ "bugs.python.org/user?@template=forgotten>`_."
|
||||
#~ msgstr ""
|
||||
#~ "Vous devez avoir un compte Roundup pour reporter des bogues; cela nous "
|
||||
#~ "permet de vous contacter si nous avons des questions complémentaires. "
|
||||
#~ "Cela permettra aussi le suivi de traitement de votre bogue. Si vous avez "
|
||||
#~ "auparavant utilisé SourceForge pour reporter des bogues sur Python, vous "
|
||||
#~ "pouvez obtenir un mot de passe Roundup grâce à la `procédure de "
|
||||
#~ "réinitialisation de mot de passe de Roundup <https://bugs.python.org/user?"
|
||||
#~ "@template=forgotten>`_."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-16 02:34+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-06 20:15+0100\n"
|
||||
"Last-Translator: Fipaddict <fipaddict@protonmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
1023
faq/programming.po
1023
faq/programming.po
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-05-27 12:17+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -289,13 +289,12 @@ msgstr ""
|
|||
"résumer comme suit :"
|
||||
|
||||
#: faq/windows.rst:170
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Do **not** build Python into your .exe file directly. On Windows, Python "
|
||||
"must be a DLL to handle importing modules that are themselves DLL's. (This "
|
||||
"is the first key undocumented fact.) Instead, link to :file:`python{NN}."
|
||||
"dll`; it is typically installed in ``C:\\Windows\\System``. *NN* is the "
|
||||
"Python version, a number such as \"33\" for Python 3.3."
|
||||
"Do _not_ build Python into your .exe file directly. On Windows, Python must "
|
||||
"be a DLL to handle importing modules that are themselves DLL's. (This is "
|
||||
"the first key undocumented fact.) Instead, link to :file:`python{NN}.dll`; "
|
||||
"it is typically installed in ``C:\\Windows\\System``. *NN* is the Python "
|
||||
"version, a number such as \"33\" for Python 3.3."
|
||||
msgstr ""
|
||||
"Ne compilez **pas** Python directement dans votre fichier *.exe*. Sous "
|
||||
"Windows, Python doit être une DLL pour pouvoir importer des modules qui sont "
|
||||
|
@ -339,13 +338,12 @@ msgstr ""
|
|||
"appelle des routines dans l'API C de Python."
|
||||
|
||||
#: faq/windows.rst:191
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"If you use SWIG, it is easy to create a Python \"extension module\" that "
|
||||
"will make the app's data and methods available to Python. SWIG will handle "
|
||||
"just about all the grungy details for you. The result is C code that you "
|
||||
"link *into* your .exe file (!) You do **not** have to create a DLL file, "
|
||||
"and this also simplifies linking."
|
||||
"link *into* your .exe file (!) You do _not_ have to create a DLL file, and "
|
||||
"this also simplifies linking."
|
||||
msgstr ""
|
||||
"Si vous utilisez SWIG, il est facile de créer un « module d'extension » "
|
||||
"Python qui rendra les données et les méthodes de l'application disponibles "
|
||||
|
@ -397,12 +395,11 @@ msgstr ""
|
|||
"construire *pythonNN.dll*."
|
||||
|
||||
#: faq/windows.rst:221
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Problem 1: The so-called \"Very High Level\" functions that take ``FILE *`` "
|
||||
"Problem 1: The so-called \"Very High Level\" functions that take FILE * "
|
||||
"arguments will not work in a multi-compiler environment because each "
|
||||
"compiler's notion of a ``struct FILE`` will be different. From an "
|
||||
"implementation standpoint these are very low level functions."
|
||||
"compiler's notion of a struct FILE will be different. From an "
|
||||
"implementation standpoint these are very _low_ level functions."
|
||||
msgstr ""
|
||||
"Problème 1 : Les fonctions dites de \"Très Haut Niveau\" qui prennent les "
|
||||
"arguments FILE * ne fonctionneront pas dans un environnement multi-"
|
||||
|
|
845
glossary.po
845
glossary.po
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2021-12-31 11:33+0100\n"
|
||||
"PO-Revision-Date: 2022-05-12 09:43+0200\n"
|
||||
"Last-Translator: ZepmanBC <zepman@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -125,20 +125,12 @@ msgstr ""
|
|||
"`getattr` avec trois arguments, par exemple ``getattr(o, '__annotations__', "
|
||||
"None)``."
|
||||
|
||||
#: howto/annotations.rst:60
|
||||
msgid ""
|
||||
"Before Python 3.10, accessing ``__annotations__`` on a class that defines no "
|
||||
"annotations but that has a parent class with annotations would return the "
|
||||
"parent's ``__annotations__``. In Python 3.10 and newer, the child class's "
|
||||
"annotations will be an empty dict instead."
|
||||
msgstr ""
|
||||
|
||||
#: howto/annotations.rst:68
|
||||
#: howto/annotations.rst:62
|
||||
msgid "Accessing The Annotations Dict Of An Object In Python 3.9 And Older"
|
||||
msgstr ""
|
||||
"Accès au dictionnaire des annotations d'un objet en Python 3.9 et antérieur"
|
||||
|
||||
#: howto/annotations.rst:70
|
||||
#: howto/annotations.rst:64
|
||||
msgid ""
|
||||
"In Python 3.9 and older, accessing the annotations dict of an object is much "
|
||||
"more complicated than in newer versions. The problem is a design flaw in "
|
||||
|
@ -149,7 +141,7 @@ msgstr ""
|
|||
"problème est dû à un défaut de conception de ces anciennes versions de "
|
||||
"Python, notamment en ce qui concerne les annotations de classe."
|
||||
|
||||
#: howto/annotations.rst:75
|
||||
#: howto/annotations.rst:69
|
||||
msgid ""
|
||||
"Best practice for accessing the annotations dict of other objects--"
|
||||
"functions, other callables, and modules--is the same as best practice for "
|
||||
|
@ -163,7 +155,7 @@ msgstr ""
|
|||
"vous devez utiliser la forme à trois arguments de :func:`getattr` pour "
|
||||
"accéder à l'attribut ``__annotations__`` de l'objet."
|
||||
|
||||
#: howto/annotations.rst:82
|
||||
#: howto/annotations.rst:76
|
||||
msgid ""
|
||||
"Unfortunately, this isn't best practice for classes. The problem is that, "
|
||||
"since ``__annotations__`` is optional on classes, and because classes can "
|
||||
|
@ -178,12 +170,12 @@ msgstr ""
|
|||
"renvoyer le dictionnaire d'annotations d'une *classe de base.* Par "
|
||||
"exemple : ::"
|
||||
|
||||
#: howto/annotations.rst:98
|
||||
#: howto/annotations.rst:92
|
||||
msgid "This will print the annotations dict from ``Base``, not ``Derived``."
|
||||
msgstr ""
|
||||
"Ceci affiche le dictionnaire d'annotations de ``Base``, pas de ``Derived``."
|
||||
|
||||
#: howto/annotations.rst:101
|
||||
#: howto/annotations.rst:95
|
||||
msgid ""
|
||||
"Your code will have to have a separate code path if the object you're "
|
||||
"examining is a class (``isinstance(o, type)``). In that case, best practice "
|
||||
|
@ -200,7 +192,7 @@ msgstr ""
|
|||
"annotations définies, la bonne pratique est d'appeler la méthode ``get`` sur "
|
||||
"le dictionnaire de la classe."
|
||||
|
||||
#: howto/annotations.rst:109
|
||||
#: howto/annotations.rst:103
|
||||
msgid ""
|
||||
"To put it all together, here is some sample code that safely accesses the "
|
||||
"``__annotations__`` attribute on an arbitrary object in Python 3.9 and "
|
||||
|
@ -210,7 +202,7 @@ msgstr ""
|
|||
"l'attribut ``__annotations__`` d'un objet quelconque en Python 3.9 et "
|
||||
"antérieur : ::"
|
||||
|
||||
#: howto/annotations.rst:118
|
||||
#: howto/annotations.rst:112
|
||||
msgid ""
|
||||
"After running this code, ``ann`` should be either a dictionary or ``None``. "
|
||||
"You're encouraged to double-check the type of ``ann`` using :func:"
|
||||
|
@ -220,7 +212,7 @@ msgstr ""
|
|||
"``None``. Nous vous conseillons de vérifier le type de ``ann`` en "
|
||||
"utilisant :func:`isinstance` avant de poursuivre l'analyse."
|
||||
|
||||
#: howto/annotations.rst:123
|
||||
#: howto/annotations.rst:117
|
||||
msgid ""
|
||||
"Note that some exotic or malformed type objects may not have a ``__dict__`` "
|
||||
"attribute, so for extra safety you may also wish to use :func:`getattr` to "
|
||||
|
@ -230,12 +222,12 @@ msgstr ""
|
|||
"d'attribut ``__dict__`` donc, pour plus de sécurité, vous pouvez également "
|
||||
"utiliser :func:`getattr` pour accéder à ``__dict__``."
|
||||
|
||||
#: howto/annotations.rst:129
|
||||
#: howto/annotations.rst:123
|
||||
msgid "Manually Un-Stringizing Stringized Annotations"
|
||||
msgstr ""
|
||||
"Conversion manuelle des annotations contenues dans une chaîne de caractères"
|
||||
|
||||
#: howto/annotations.rst:131
|
||||
#: howto/annotations.rst:125
|
||||
msgid ""
|
||||
"In situations where some annotations may be \"stringized\", and you wish to "
|
||||
"evaluate those strings to produce the Python values they represent, it "
|
||||
|
@ -248,7 +240,7 @@ msgstr ""
|
|||
"préférable d'appeler :func:`inspect.get_annotations` pour faire ce travail à "
|
||||
"votre place."
|
||||
|
||||
#: howto/annotations.rst:137
|
||||
#: howto/annotations.rst:131
|
||||
msgid ""
|
||||
"If you're using Python 3.9 or older, or if for some reason you can't use :"
|
||||
"func:`inspect.get_annotations`, you'll need to duplicate its logic. You're "
|
||||
|
@ -261,7 +253,7 @@ msgstr ""
|
|||
"l'implémentation de :func:`inspect.get_annotations` dans la version actuelle "
|
||||
"de Python et à suivre une approche similaire."
|
||||
|
||||
#: howto/annotations.rst:143
|
||||
#: howto/annotations.rst:137
|
||||
msgid ""
|
||||
"In a nutshell, if you wish to evaluate a stringized annotation on an "
|
||||
"arbitrary object ``o``:"
|
||||
|
@ -269,7 +261,7 @@ msgstr ""
|
|||
"En bref, si vous souhaitez évaluer une annotation empaquetée en chaîne de "
|
||||
"caractères sur un objet arbitraire ``o`` :"
|
||||
|
||||
#: howto/annotations.rst:146
|
||||
#: howto/annotations.rst:140
|
||||
msgid ""
|
||||
"If ``o`` is a module, use ``o.__dict__`` as the ``globals`` when calling :"
|
||||
"func:`eval`."
|
||||
|
@ -277,7 +269,7 @@ msgstr ""
|
|||
"Si ``o`` est un module, utilisez ``o.__dict__`` pour accéder aux noms "
|
||||
"``globals`` lors de l'appel à :func:`eval`."
|
||||
|
||||
#: howto/annotations.rst:148
|
||||
#: howto/annotations.rst:142
|
||||
msgid ""
|
||||
"If ``o`` is a class, use ``sys.modules[o.__module__].__dict__`` as the "
|
||||
"``globals``, and ``dict(vars(o))`` as the ``locals``, when calling :func:"
|
||||
|
@ -287,7 +279,7 @@ msgstr ""
|
|||
"pour désigner les noms ``globals``, et ``dict(vars(o))`` pour désigner les "
|
||||
"``locals``, lorsque vous appelez :func:`eval`."
|
||||
|
||||
#: howto/annotations.rst:151
|
||||
#: howto/annotations.rst:145
|
||||
msgid ""
|
||||
"If ``o`` is a wrapped callable using :func:`functools.update_wrapper`, :func:"
|
||||
"`functools.wraps`, or :func:`functools.partial`, iteratively unwrap it by "
|
||||
|
@ -299,7 +291,7 @@ msgstr ""
|
|||
"encapsulez-le itérativement en accédant à ``o.__wrapped__`` ou ``o.func`` "
|
||||
"selon le cas, jusqu'à ce que vous ayez trouvé la fonction racine."
|
||||
|
||||
#: howto/annotations.rst:155
|
||||
#: howto/annotations.rst:149
|
||||
msgid ""
|
||||
"If ``o`` is a callable (but not a class), use ``o.__globals__`` as the "
|
||||
"globals when calling :func:`eval`."
|
||||
|
@ -307,7 +299,7 @@ msgstr ""
|
|||
"Si ``o`` est un objet appelable (mais pas une classe), utilisez ``o."
|
||||
"__globals__`` pour désigner les globales lors de l'appel de :func:`eval`."
|
||||
|
||||
#: howto/annotations.rst:158
|
||||
#: howto/annotations.rst:152
|
||||
msgid ""
|
||||
"However, not all string values used as annotations can be successfully "
|
||||
"turned into Python values by :func:`eval`. String values could theoretically "
|
||||
|
@ -322,7 +314,7 @@ msgstr ""
|
|||
"indications de type qui nécessitent d'annoter avec des valeurs de chaîne qui "
|
||||
"*ne peuvent pas* être évaluées. Par exemple :"
|
||||
|
||||
#: howto/annotations.rst:165
|
||||
#: howto/annotations.rst:159
|
||||
msgid ""
|
||||
":pep:`604` union types using ``|``, before support for this was added to "
|
||||
"Python 3.10."
|
||||
|
@ -330,7 +322,7 @@ msgstr ""
|
|||
"Les types d'union de style :pep:`604` avec ``|``, avant que cette prise en "
|
||||
"charge ne soit ajoutée à Python 3.10."
|
||||
|
||||
#: howto/annotations.rst:167
|
||||
#: howto/annotations.rst:161
|
||||
msgid ""
|
||||
"Definitions that aren't needed at runtime, only imported when :const:`typing."
|
||||
"TYPE_CHECKING` is true."
|
||||
|
@ -338,7 +330,7 @@ msgstr ""
|
|||
"Les définitions qui ne sont pas nécessaires à l'exécution, importées "
|
||||
"uniquement lorsque :const:`typing.TYPE_CHECKING` est vrai."
|
||||
|
||||
#: howto/annotations.rst:170
|
||||
#: howto/annotations.rst:164
|
||||
msgid ""
|
||||
"If :func:`eval` attempts to evaluate such values, it will fail and raise an "
|
||||
"exception. So, when designing a library API that works with annotations, "
|
||||
|
@ -350,12 +342,12 @@ msgstr ""
|
|||
"fonctionnant avec des annotations, il est recommandé de ne tenter d'évaluer "
|
||||
"des valeurs de type chaîne que si l'appelant le demande explicitement."
|
||||
|
||||
#: howto/annotations.rst:178
|
||||
#: howto/annotations.rst:172
|
||||
msgid "Best Practices For ``__annotations__`` In Any Python Version"
|
||||
msgstr ""
|
||||
"Bonnes pratiques pour ``__annotations__`` dans toutes les versions de Python"
|
||||
|
||||
#: howto/annotations.rst:180
|
||||
#: howto/annotations.rst:174
|
||||
msgid ""
|
||||
"You should avoid assigning to the ``__annotations__`` member of objects "
|
||||
"directly. Let Python manage setting ``__annotations__``."
|
||||
|
@ -363,7 +355,7 @@ msgstr ""
|
|||
"Évitez d'assigner directement des objets à l'élément ``__annotations__``. "
|
||||
"Laissez Python gérer le paramétrage de ``__annotations__``."
|
||||
|
||||
#: howto/annotations.rst:183
|
||||
#: howto/annotations.rst:177
|
||||
msgid ""
|
||||
"If you do assign directly to the ``__annotations__`` member of an object, "
|
||||
"you should always set it to a ``dict`` object."
|
||||
|
@ -371,7 +363,7 @@ msgstr ""
|
|||
"Si vous assignez directement à l'élément ``__annotations__`` d'un objet, "
|
||||
"vous devez toujours le définir comme un ``dict``."
|
||||
|
||||
#: howto/annotations.rst:186
|
||||
#: howto/annotations.rst:180
|
||||
msgid ""
|
||||
"If you directly access the ``__annotations__`` member of an object, you "
|
||||
"should ensure that it's a dictionary before attempting to examine its "
|
||||
|
@ -381,20 +373,20 @@ msgstr ""
|
|||
"devez vous assurer qu'il s'agit d'un dictionnaire avant de tenter d'examiner "
|
||||
"son contenu."
|
||||
|
||||
#: howto/annotations.rst:190
|
||||
#: howto/annotations.rst:184
|
||||
msgid "You should avoid modifying ``__annotations__`` dicts."
|
||||
msgstr "Évitez de modifier les dictionnaires ``__annotations__``."
|
||||
|
||||
#: howto/annotations.rst:192
|
||||
#: howto/annotations.rst:186
|
||||
msgid ""
|
||||
"You should avoid deleting the ``__annotations__`` attribute of an object."
|
||||
msgstr "Évitez de supprimer l'attribut ``__annotations__`` d'un objet."
|
||||
|
||||
#: howto/annotations.rst:197
|
||||
#: howto/annotations.rst:191
|
||||
msgid "``__annotations__`` Quirks"
|
||||
msgstr "Les curiosités concernant ``__annotations__``"
|
||||
|
||||
#: howto/annotations.rst:199
|
||||
#: howto/annotations.rst:193
|
||||
msgid ""
|
||||
"In all versions of Python 3, function objects lazy-create an annotations "
|
||||
"dict if no annotations are defined on that object. You can delete the "
|
||||
|
@ -416,7 +408,7 @@ msgstr ""
|
|||
"``AttributeError`` ; si vous utilisez ``del fn.__annotations__`` deux fois "
|
||||
"de suite, vous êtes sûr de toujours obtenir ``AttributeError``."
|
||||
|
||||
#: howto/annotations.rst:209
|
||||
#: howto/annotations.rst:203
|
||||
msgid ""
|
||||
"Everything in the above paragraph also applies to class and module objects "
|
||||
"in Python 3.10 and newer."
|
||||
|
@ -424,7 +416,7 @@ msgstr ""
|
|||
"Tout ce qui est dit dans le paragraphe précédent s'applique également aux "
|
||||
"objets de type classe et module en Python 3.10 et suivants."
|
||||
|
||||
#: howto/annotations.rst:212
|
||||
#: howto/annotations.rst:206
|
||||
msgid ""
|
||||
"In all versions of Python 3, you can set ``__annotations__`` on a function "
|
||||
"object to ``None``. However, subsequently accessing the annotations on that "
|
||||
|
@ -443,7 +435,7 @@ msgstr ""
|
|||
"objets permettent de définir ``__annotations__`` à n'importe quelle valeur "
|
||||
"Python, et conserveront la valeur définie."
|
||||
|
||||
#: howto/annotations.rst:220
|
||||
#: howto/annotations.rst:214
|
||||
msgid ""
|
||||
"If Python stringizes your annotations for you (using ``from __future__ "
|
||||
"import annotations``), and you specify a string as an annotation, the string "
|
||||
|
@ -455,7 +447,7 @@ msgstr ""
|
|||
"caractères comme annotation, la chaîne sera elle-même entre guillemets. En "
|
||||
"fait, l'annotation est mise entre guillemets *deux fois*. Par exemple : ::"
|
||||
|
||||
#: howto/annotations.rst:231
|
||||
#: howto/annotations.rst:225
|
||||
msgid ""
|
||||
"This prints ``{'a': \"'str'\"}``. This shouldn't really be considered a "
|
||||
"\"quirk\"; it's mentioned here simply because it might be surprising."
|
||||
|
|
869
howto/clinic.po
869
howto/clinic.po
File diff suppressed because it is too large
Load Diff
|
@ -1,4 +1,3 @@
|
|||
# Copyright (C) 2001-2018, Python Software Foundation
|
||||
# For licence information, see README file.
|
||||
#
|
||||
msgid ""
|
||||
|
|
118
howto/curses.po
118
howto/curses.po
|
@ -5,15 +5,15 @@ msgid ""
|
|||
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-16 14:42+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2020-09-04 23:34+0200\n"
|
||||
"Last-Translator: Khaïs COLIN <kh.col@orange.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\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.1\n"
|
||||
"X-Generator: Poedit 2.2.4\n"
|
||||
|
||||
#: howto/curses.rst:5
|
||||
msgid "Curses Programming with Python"
|
||||
|
@ -141,9 +141,6 @@ msgid ""
|
|||
"ported version called `UniCurses <https://pypi.org/project/UniCurses>`_ is "
|
||||
"available."
|
||||
msgstr ""
|
||||
"La version Windows de Python n'inclut pas le module :mod:`curses`. Une "
|
||||
"version portée appelée `UniCurses <https://pypi.org/project/UniCurses>`_ est "
|
||||
"disponible."
|
||||
|
||||
#: howto/curses.rst:62
|
||||
msgid "The Python curses module"
|
||||
|
@ -298,7 +295,7 @@ msgstr ""
|
|||
"la gestion des couleurs est possible. :func:`wrapper` lance l'appelable "
|
||||
"fourni. Une fois que l'appelable termine, :func:`wrapper` restaure l'état "
|
||||
"d'origine du terminal. L'appelable est appelé à l'intérieur d'un :keyword:"
|
||||
"`try`…\\ :keyword:`except` qui capture les exceptions, restaure l'état du "
|
||||
"`try`...\\ :keyword:`except` qui capture les exceptions, restaure l'état du "
|
||||
"terminal, puis relève l'exception. Par conséquent, votre terminal ne reste "
|
||||
"pas dans un drôle d'état au moment de l'exception et vous pourrez lire le "
|
||||
"message de l'exception et la trace de la pile d'appels."
|
||||
|
@ -514,7 +511,7 @@ msgstr ""
|
|||
msgid "Form"
|
||||
msgstr "Forme"
|
||||
|
||||
#: howto/curses.rst:345
|
||||
#: howto/curses.rst:346
|
||||
msgid "Description"
|
||||
msgstr "Description"
|
||||
|
||||
|
@ -576,15 +573,16 @@ msgid ""
|
|||
"as the value to be displayed. The contents of bytestrings are sent to the "
|
||||
"terminal as-is. Strings are encoded to bytes using the value of the "
|
||||
"window's :attr:`encoding` attribute; this defaults to the default system "
|
||||
"encoding as returned by :func:`locale.getencoding`."
|
||||
"encoding as returned by :func:`locale.getpreferredencoding`."
|
||||
msgstr ""
|
||||
"La méthode :meth:`~curses.window.addstr` prend en argument une chaîne ou une "
|
||||
"suite d'octets Python. Le contenu des chaînes d'octets est envoyé vers le "
|
||||
"terminal tel quel. Les chaînes sont encodées en octets en utilisant la "
|
||||
"valeur de l'attribut :attr:`encoding` de la fenêtre ; c'est par défaut "
|
||||
"l'encodage du système tel que renvoyé par :func:`locale.getencoding`."
|
||||
"l'encodage du système tel que renvoyé par :func:`locale."
|
||||
"getpreferredencoding`."
|
||||
|
||||
#: howto/curses.rst:304
|
||||
#: howto/curses.rst:305
|
||||
msgid ""
|
||||
"The :meth:`~curses.window.addch` methods take a character, which can be "
|
||||
"either a string of length 1, a bytestring of length 1, or an integer."
|
||||
|
@ -593,7 +591,7 @@ msgstr ""
|
|||
"la forme d'une chaîne de longueur 1, d'une chaîne d'octets de longueur 1 ou "
|
||||
"d'un entier."
|
||||
|
||||
#: howto/curses.rst:307
|
||||
#: howto/curses.rst:308
|
||||
msgid ""
|
||||
"Constants are provided for extension characters; these constants are "
|
||||
"integers greater than 255. For example, :const:`ACS_PLMINUS` is a +/- "
|
||||
|
@ -606,7 +604,7 @@ msgstr ""
|
|||
"haut et à gauche d'une boîte (utile pour dessiner des encadrements). Vous "
|
||||
"pouvez aussi utiliser les caractères Unicode adéquats."
|
||||
|
||||
#: howto/curses.rst:313
|
||||
#: howto/curses.rst:314
|
||||
msgid ""
|
||||
"Windows remember where the cursor was left after the last operation, so if "
|
||||
"you leave out the *y,x* coordinates, the string or character will be "
|
||||
|
@ -625,7 +623,7 @@ msgstr ""
|
|||
"l'utilisateur (il peut être déroutant d'avoir un curseur qui clignote à des "
|
||||
"endroits apparemment aléatoires)."
|
||||
|
||||
#: howto/curses.rst:321
|
||||
#: howto/curses.rst:322
|
||||
msgid ""
|
||||
"If your application doesn't need a blinking cursor at all, you can call "
|
||||
"``curs_set(False)`` to make it invisible. For compatibility with older "
|
||||
|
@ -642,11 +640,11 @@ msgstr ""
|
|||
"curseur clignotant et vous n'avez plus besoin de vous soucier de le laisser "
|
||||
"trainer à des endroits bizarres."
|
||||
|
||||
#: howto/curses.rst:330
|
||||
#: howto/curses.rst:331
|
||||
msgid "Attributes and Color"
|
||||
msgstr "Attributs et couleurs"
|
||||
|
||||
#: howto/curses.rst:332
|
||||
#: howto/curses.rst:333
|
||||
msgid ""
|
||||
"Characters can be displayed in different ways. Status lines in a text-based "
|
||||
"application are commonly shown in reverse video, or a text viewer may need "
|
||||
|
@ -659,7 +657,7 @@ msgstr ""
|
|||
"À ces fins, *curses* vous permet de spécifier un attribut pour chaque "
|
||||
"caractère à l'écran."
|
||||
|
||||
#: howto/curses.rst:337
|
||||
#: howto/curses.rst:338
|
||||
msgid ""
|
||||
"An attribute is an integer, each bit representing a different attribute. "
|
||||
"You can try to display text with multiple attribute bits set, but curses "
|
||||
|
@ -676,59 +674,59 @@ msgstr ""
|
|||
"se cantonner aux attributs les plus communément utilisés, dont la liste est "
|
||||
"fournie ci-dessous."
|
||||
|
||||
#: howto/curses.rst:345
|
||||
#: howto/curses.rst:346
|
||||
msgid "Attribute"
|
||||
msgstr "Attribut"
|
||||
|
||||
#: howto/curses.rst:347
|
||||
#: howto/curses.rst:348
|
||||
msgid ":const:`A_BLINK`"
|
||||
msgstr ":const:`A_BLINK`"
|
||||
|
||||
#: howto/curses.rst:347
|
||||
#: howto/curses.rst:348
|
||||
msgid "Blinking text"
|
||||
msgstr "Texte clignotant"
|
||||
|
||||
#: howto/curses.rst:349
|
||||
#: howto/curses.rst:350
|
||||
msgid ":const:`A_BOLD`"
|
||||
msgstr ":const:`A_BOLD`"
|
||||
|
||||
#: howto/curses.rst:349
|
||||
#: howto/curses.rst:350
|
||||
msgid "Extra bright or bold text"
|
||||
msgstr "Texte en surbrillance ou en gras"
|
||||
|
||||
#: howto/curses.rst:351
|
||||
#: howto/curses.rst:352
|
||||
msgid ":const:`A_DIM`"
|
||||
msgstr ":const:`A_DIM`"
|
||||
|
||||
#: howto/curses.rst:351
|
||||
#: howto/curses.rst:352
|
||||
msgid "Half bright text"
|
||||
msgstr "Texte en demi-ton"
|
||||
|
||||
#: howto/curses.rst:353
|
||||
#: howto/curses.rst:354
|
||||
msgid ":const:`A_REVERSE`"
|
||||
msgstr ":const:`A_REVERSE`"
|
||||
|
||||
#: howto/curses.rst:353
|
||||
#: howto/curses.rst:354
|
||||
msgid "Reverse-video text"
|
||||
msgstr "Texte en mode vidéo inversé"
|
||||
|
||||
#: howto/curses.rst:355
|
||||
#: howto/curses.rst:356
|
||||
msgid ":const:`A_STANDOUT`"
|
||||
msgstr ":const:`A_STANDOUT`"
|
||||
|
||||
#: howto/curses.rst:355
|
||||
#: howto/curses.rst:356
|
||||
msgid "The best highlighting mode available"
|
||||
msgstr "Le meilleur mode de mis en valeur pour le texte"
|
||||
|
||||
#: howto/curses.rst:357
|
||||
#: howto/curses.rst:358
|
||||
msgid ":const:`A_UNDERLINE`"
|
||||
msgstr ":const:`A_UNDERLINE`"
|
||||
|
||||
#: howto/curses.rst:357
|
||||
#: howto/curses.rst:358
|
||||
msgid "Underlined text"
|
||||
msgstr "Texte souligné"
|
||||
|
||||
#: howto/curses.rst:360
|
||||
#: howto/curses.rst:361
|
||||
msgid ""
|
||||
"So, to display a reverse-video status line on the top line of the screen, "
|
||||
"you could code::"
|
||||
|
@ -736,7 +734,7 @@ msgstr ""
|
|||
"Ainsi, pour mettre la ligne de statut située en haut de l'écran en mode "
|
||||
"vidéo inversé, vous pouvez coder ::"
|
||||
|
||||
#: howto/curses.rst:367
|
||||
#: howto/curses.rst:368
|
||||
msgid ""
|
||||
"The curses library also supports color on those terminals that provide it. "
|
||||
"The most common such terminal is probably the Linux console, followed by "
|
||||
|
@ -746,7 +744,7 @@ msgstr ""
|
|||
"compatibles. Le plus répandu de ces terminaux est sûrement la console Linux, "
|
||||
"suivie par *xterm* en couleurs."
|
||||
|
||||
#: howto/curses.rst:371
|
||||
#: howto/curses.rst:372
|
||||
msgid ""
|
||||
"To use color, you must call the :func:`~curses.start_color` function soon "
|
||||
"after calling :func:`~curses.initscr`, to initialize the default color set "
|
||||
|
@ -766,7 +764,7 @@ msgstr ""
|
|||
"*colour* ; si vous êtes habitué à l'orthographe britannique, vous devrez "
|
||||
"vous résigner à mal l'orthographier tant que vous utilisez *curses*)."
|
||||
|
||||
#: howto/curses.rst:381
|
||||
#: howto/curses.rst:382
|
||||
msgid ""
|
||||
"The curses library maintains a finite number of color pairs, containing a "
|
||||
"foreground (or text) color and a background color. You can get the "
|
||||
|
@ -783,13 +781,13 @@ msgstr ""
|
|||
"autres attributs tels que :const:`A_REVERSE`,mais là encore, de telles "
|
||||
"combinaisons risquent de ne pas fonctionner sur tous les terminaux."
|
||||
|
||||
#: howto/curses.rst:388
|
||||
#: howto/curses.rst:389
|
||||
msgid "An example, which displays a line of text using color pair 1::"
|
||||
msgstr ""
|
||||
"Un exemple d'affichage d'une ligne de texte en utilisant la paire de couleur "
|
||||
"1 ::"
|
||||
|
||||
#: howto/curses.rst:393
|
||||
#: howto/curses.rst:394
|
||||
msgid ""
|
||||
"As I said before, a color pair consists of a foreground and background "
|
||||
"color. The ``init_pair(n, f, b)`` function changes the definition of color "
|
||||
|
@ -802,7 +800,7 @@ msgstr ""
|
|||
"texte à *f* et la couleur de fond à *b*. La paire de couleurs 0 est codée en "
|
||||
"dur à blanc sur noir et ne peut être modifiée."
|
||||
|
||||
#: howto/curses.rst:398
|
||||
#: howto/curses.rst:399
|
||||
msgid ""
|
||||
"Colors are numbered, and :func:`start_color` initializes 8 basic colors when "
|
||||
"it activates color mode. They are: 0:black, 1:red, 2:green, 3:yellow, 4:"
|
||||
|
@ -818,14 +816,14 @@ msgstr ""
|
|||
"chacune de ces couleurs : :const:`curses.COLOR_BLACK`, :const:`curses."
|
||||
"COLOR_RED` et ainsi de suite."
|
||||
|
||||
#: howto/curses.rst:404
|
||||
#: howto/curses.rst:405
|
||||
msgid ""
|
||||
"Let's put all this together. To change color 1 to red text on a white "
|
||||
"background, you would call::"
|
||||
msgstr ""
|
||||
"Testons tout ça. Pour changer la couleur 1 à rouge sur fond blanc, appelez ::"
|
||||
|
||||
#: howto/curses.rst:409
|
||||
#: howto/curses.rst:410
|
||||
msgid ""
|
||||
"When you change a color pair, any text already displayed using that color "
|
||||
"pair will change to the new colors. You can also display new text in this "
|
||||
|
@ -835,7 +833,7 @@ msgstr ""
|
|||
"utilise cette paire de couleur voit les nouvelles couleurs s'appliquer à "
|
||||
"lui. Vous pouvez aussi afficher du nouveau texte dans cette couleur avec ::"
|
||||
|
||||
#: howto/curses.rst:415
|
||||
#: howto/curses.rst:416
|
||||
msgid ""
|
||||
"Very fancy terminals can change the definitions of the actual colors to a "
|
||||
"given RGB value. This lets you change color 1, which is usually red, to "
|
||||
|
@ -856,11 +854,11 @@ msgstr ""
|
|||
"chance d'avoir un terminal aussi perfectionné, consultez les pages du manuel "
|
||||
"de votre système pour obtenir plus d'informations."
|
||||
|
||||
#: howto/curses.rst:426
|
||||
#: howto/curses.rst:427
|
||||
msgid "User Input"
|
||||
msgstr "Entrées de l'utilisateur"
|
||||
|
||||
#: howto/curses.rst:428
|
||||
#: howto/curses.rst:429
|
||||
msgid ""
|
||||
"The C curses library offers only very simple input mechanisms. Python's :mod:"
|
||||
"`curses` module adds a basic text-input widget. (Other libraries such as "
|
||||
|
@ -872,11 +870,11 @@ msgstr ""
|
|||
"d'entrée de texte (d'autres bibliothèques telles que `Urwid <https://pypi."
|
||||
"org/project/urwid/>`_ ont un ensemble de *widgets* plus conséquent)."
|
||||
|
||||
#: howto/curses.rst:433
|
||||
#: howto/curses.rst:434
|
||||
msgid "There are two methods for getting input from a window:"
|
||||
msgstr "Il y a deux méthodes pour obtenir des entrées dans une fenêtre :"
|
||||
|
||||
#: howto/curses.rst:435
|
||||
#: howto/curses.rst:436
|
||||
msgid ""
|
||||
":meth:`~curses.window.getch` refreshes the screen and then waits for the "
|
||||
"user to hit a key, displaying the key if :func:`~curses.echo` has been "
|
||||
|
@ -888,7 +886,7 @@ msgstr ""
|
|||
"appelé auparavant. Vous pouvez en option spécifier des coordonnées où "
|
||||
"positionner le curseur avant la mise en pause ;"
|
||||
|
||||
#: howto/curses.rst:440
|
||||
#: howto/curses.rst:441
|
||||
msgid ""
|
||||
":meth:`~curses.window.getkey` does the same thing but converts the integer "
|
||||
"to a string. Individual characters are returned as 1-character strings, and "
|
||||
|
@ -901,7 +899,7 @@ msgstr ""
|
|||
"renvoient des chaînes plus longues contenant le nom de la touche (tel que "
|
||||
"``KEY_UP`` ou ``^G``)."
|
||||
|
||||
#: howto/curses.rst:445
|
||||
#: howto/curses.rst:446
|
||||
msgid ""
|
||||
"It's possible to not wait for the user using the :meth:`~curses.window."
|
||||
"nodelay` window method. After ``nodelay(True)``, :meth:`getch` and :meth:"
|
||||
|
@ -922,7 +920,7 @@ msgstr ""
|
|||
"aucune entrée n'est disponible dans le délai spécifié (mesuré en dixièmes de "
|
||||
"seconde), *curses* lève une exception."
|
||||
|
||||
#: howto/curses.rst:455
|
||||
#: howto/curses.rst:456
|
||||
msgid ""
|
||||
"The :meth:`getch` method returns an integer; if it's between 0 and 255, it "
|
||||
"represents the ASCII code of the key pressed. Values greater than 255 are "
|
||||
|
@ -939,7 +937,7 @@ msgstr ""
|
|||
"La boucle principale de votre programme pourrait ressembler à quelque chose "
|
||||
"comme ::"
|
||||
|
||||
#: howto/curses.rst:471
|
||||
#: howto/curses.rst:472
|
||||
msgid ""
|
||||
"The :mod:`curses.ascii` module supplies ASCII class membership functions "
|
||||
"that take either integer or 1-character string arguments; these may be "
|
||||
|
@ -956,7 +954,7 @@ msgstr ""
|
|||
"type correspondant au nom de la fonction. Par exemple, :func:`curses.ascii."
|
||||
"ctrl` renvoie le caractère de contrôle correspondant à son paramètre."
|
||||
|
||||
#: howto/curses.rst:478
|
||||
#: howto/curses.rst:479
|
||||
msgid ""
|
||||
"There's also a method to retrieve an entire string, :meth:`~curses.window."
|
||||
"getstr`. It isn't used very often, because its functionality is quite "
|
||||
|
@ -970,7 +968,7 @@ msgstr ""
|
|||
"arrière et la touche Entrée, qui termine la chaîne. Elle peut, en option, "
|
||||
"être limitée à un nombre fixé de caractères. ::"
|
||||
|
||||
#: howto/curses.rst:489
|
||||
#: howto/curses.rst:490
|
||||
msgid ""
|
||||
"The :mod:`curses.textpad` module supplies a text box that supports an Emacs-"
|
||||
"like set of keybindings. Various methods of the :class:`~curses.textpad."
|
||||
|
@ -983,18 +981,18 @@ msgstr ""
|
|||
"des entrées et le regroupement de l'entrée avec ou sans les espaces de début "
|
||||
"et de fin. Par exemple ::"
|
||||
|
||||
#: howto/curses.rst:513
|
||||
#: howto/curses.rst:514
|
||||
msgid ""
|
||||
"See the library documentation on :mod:`curses.textpad` for more details."
|
||||
msgstr ""
|
||||
"Consultez la documentation de la bibliothèque pour plus de détails sur :mod:"
|
||||
"`curses.textpad`."
|
||||
|
||||
#: howto/curses.rst:517
|
||||
#: howto/curses.rst:518
|
||||
msgid "For More Information"
|
||||
msgstr "Pour aller plus loin"
|
||||
|
||||
#: howto/curses.rst:519
|
||||
#: howto/curses.rst:520
|
||||
msgid ""
|
||||
"This HOWTO doesn't cover some advanced topics, such as reading the contents "
|
||||
"of the screen or capturing mouse events from an xterm instance, but the "
|
||||
|
@ -1007,7 +1005,7 @@ msgstr ""
|
|||
"`curses` est maintenant suffisamment complète. Nous vous encourageons à la "
|
||||
"parcourir."
|
||||
|
||||
#: howto/curses.rst:524
|
||||
#: howto/curses.rst:525
|
||||
msgid ""
|
||||
"If you're in doubt about the detailed behavior of the curses functions, "
|
||||
"consult the manual pages for your curses implementation, whether it's "
|
||||
|
@ -1022,7 +1020,7 @@ msgstr ""
|
|||
"listes complètes des fonctions, attributs et codes :const:`ACS_\\*` des "
|
||||
"caractères disponibles."
|
||||
|
||||
#: howto/curses.rst:531
|
||||
#: howto/curses.rst:532
|
||||
msgid ""
|
||||
"Because the curses API is so large, some functions aren't supported in the "
|
||||
"Python interface. Often this isn't because they're difficult to implement, "
|
||||
|
@ -1040,7 +1038,7 @@ msgstr ""
|
|||
"du développeur Python <https://devguide.python.org/>`_ pour apprendre "
|
||||
"comment soumettre des améliorations à Python."
|
||||
|
||||
#: howto/curses.rst:539
|
||||
#: howto/curses.rst:540
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"`Writing Programs with NCURSES <https://invisible-island.net/ncurses/ncurses-"
|
||||
|
@ -1050,11 +1048,11 @@ msgstr ""
|
|||
"intro.html>`_ : un long tutoriel pour les programmeurs C (ressource en "
|
||||
"anglais)."
|
||||
|
||||
#: howto/curses.rst:541
|
||||
#: howto/curses.rst:542
|
||||
msgid "`The ncurses man page <https://linux.die.net/man/3/ncurses>`_"
|
||||
msgstr "`La page de manuel ncurses <https://linux.die.net/man/3/ncurses>`_"
|
||||
|
||||
#: howto/curses.rst:542
|
||||
#: howto/curses.rst:543
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"`The ncurses FAQ <https://invisible-island.net/ncurses/ncurses.faq.html>`_"
|
||||
|
@ -1062,7 +1060,7 @@ msgstr ""
|
|||
"`La FAQ ncurses <http://invisible-island.net/ncurses/ncurses.faq.html>`_ "
|
||||
"(ressource en anglais)"
|
||||
|
||||
#: howto/curses.rst:543
|
||||
#: howto/curses.rst:544
|
||||
msgid ""
|
||||
"`\"Use curses... don't swear\" <https://www.youtube.com/watch?"
|
||||
"v=eN1eZtjLEnU>`_: video of a PyCon 2013 talk on controlling terminals using "
|
||||
|
@ -1072,7 +1070,7 @@ msgstr ""
|
|||
"v=eN1eZtjLEnU>`_ : vidéo d'une conférence lors de la PyCon 2013 sur la "
|
||||
"gestion des terminaux à l'aide de *curses* et *Urwid* (vidéo en anglais)."
|
||||
|
||||
#: howto/curses.rst:545
|
||||
#: howto/curses.rst:546
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"`\"Console Applications with Urwid\" <https://pyvideo.org/video/1568/console-"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
1635
howto/enum.po
1635
howto/enum.po
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-05-12 09:39+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -1553,12 +1553,11 @@ msgid "The functools module"
|
|||
msgstr "Le module *functools*"
|
||||
|
||||
#: howto/functional.rst:997
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The :mod:`functools` module contains some higher-order functions. A **higher-"
|
||||
"order function** takes one or more functions as input and returns a new "
|
||||
"function. The most useful tool in this module is the :func:`functools."
|
||||
"partial` function."
|
||||
"The :mod:`functools` module in Python 2.5 contains some higher-order "
|
||||
"functions. A **higher-order function** takes one or more functions as input "
|
||||
"and returns a new function. The most useful tool in this module is the :"
|
||||
"func:`functools.partial` function."
|
||||
msgstr ""
|
||||
"Le module :mod:`functools` introduit par Python 2.5 contient diverses "
|
||||
"fonctions d'ordre supérieur. Une **fonction d'ordre supérieur** prend une ou "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-11-06 19:31+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -1,630 +0,0 @@
|
|||
# Copyright (C) 2001-2018, Python Software Foundation
|
||||
# For licence information, see README file.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-23 09:57+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: howto/isolating-extensions.rst:5
|
||||
msgid "Isolating Extension Modules"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:-1
|
||||
msgid "Abstract"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:9
|
||||
msgid ""
|
||||
"Traditionally, state belonging to Python extension modules was kept in C "
|
||||
"``static`` variables, which have process-wide scope. This document describes "
|
||||
"problems of such per-process state and shows a safer way: per-module state."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:14
|
||||
msgid ""
|
||||
"The document also describes how to switch to per-module state where "
|
||||
"possible. This transition involves allocating space for that state, "
|
||||
"potentially switching from static types to heap types, and—perhaps most "
|
||||
"importantly—accessing per-module state from code."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:21
|
||||
msgid "Who should read this"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:23
|
||||
msgid ""
|
||||
"This guide is written for maintainers of :ref:`C-API <c-api-index>` "
|
||||
"extensions who would like to make that extension safer to use in "
|
||||
"applications where Python itself is used as a library."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:29
|
||||
msgid "Background"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:31
|
||||
msgid ""
|
||||
"An *interpreter* is the context in which Python code runs. It contains "
|
||||
"configuration (e.g. the import path) and runtime state (e.g. the set of "
|
||||
"imported modules)."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:35
|
||||
msgid ""
|
||||
"Python supports running multiple interpreters in one process. There are two "
|
||||
"cases to think about—users may run interpreters:"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:38
|
||||
msgid ""
|
||||
"in sequence, with several :c:func:`Py_InitializeEx`/:c:func:`Py_FinalizeEx` "
|
||||
"cycles, and"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:40
|
||||
msgid ""
|
||||
"in parallel, managing \"sub-interpreters\" using :c:func:"
|
||||
"`Py_NewInterpreter`/:c:func:`Py_EndInterpreter`."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:43
|
||||
msgid ""
|
||||
"Both cases (and combinations of them) would be most useful when embedding "
|
||||
"Python within a library. Libraries generally shouldn't make assumptions "
|
||||
"about the application that uses them, which include assuming a process-wide "
|
||||
"\"main Python interpreter\"."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:48
|
||||
msgid ""
|
||||
"Historically, Python extension modules don't handle this use case well. Many "
|
||||
"extension modules (and even some stdlib modules) use *per-process* global "
|
||||
"state, because C ``static`` variables are extremely easy to use. Thus, data "
|
||||
"that should be specific to an interpreter ends up being shared between "
|
||||
"interpreters. Unless the extension developer is careful, it is very easy to "
|
||||
"introduce edge cases that lead to crashes when a module is loaded in more "
|
||||
"than one interpreter in the same process."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:56
|
||||
msgid ""
|
||||
"Unfortunately, *per-interpreter* state is not easy to achieve. Extension "
|
||||
"authors tend to not keep multiple interpreters in mind when developing, and "
|
||||
"it is currently cumbersome to test the behavior."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:61
|
||||
msgid "Enter Per-Module State"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:63
|
||||
msgid ""
|
||||
"Instead of focusing on per-interpreter state, Python's C API is evolving to "
|
||||
"better support the more granular *per-module* state. This means that C-level "
|
||||
"data is be attached to a *module object*. Each interpreter creates its own "
|
||||
"module object, keeping the data separate. For testing the isolation, "
|
||||
"multiple module objects corresponding to a single extension can even be "
|
||||
"loaded in a single interpreter."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:70
|
||||
msgid ""
|
||||
"Per-module state provides an easy way to think about lifetime and resource "
|
||||
"ownership: the extension module will initialize when a module object is "
|
||||
"created, and clean up when it's freed. In this regard, a module is just like "
|
||||
"any other :c:expr:`PyObject *`; there are no \"on interpreter shutdown\" "
|
||||
"hooks to think—or forget—about."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:76
|
||||
msgid ""
|
||||
"Note that there are use cases for different kinds of \"globals\": per-"
|
||||
"process, per-interpreter, per-thread or per-task state. With per-module "
|
||||
"state as the default, these are still possible, but you should treat them as "
|
||||
"exceptional cases: if you need them, you should give them additional care "
|
||||
"and testing. (Note that this guide does not cover them.)"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:85
|
||||
msgid "Isolated Module Objects"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:87
|
||||
msgid ""
|
||||
"The key point to keep in mind when developing an extension module is that "
|
||||
"several module objects can be created from a single shared library. For "
|
||||
"example:"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:101
|
||||
msgid ""
|
||||
"As a rule of thumb, the two modules should be completely independent. All "
|
||||
"objects and state specific to the module should be encapsulated within the "
|
||||
"module object, not shared with other module objects, and cleaned up when the "
|
||||
"module object is deallocated. Since this just is a rule of thumb, exceptions "
|
||||
"are possible (see `Managing Global State`_), but they will need more thought "
|
||||
"and attention to edge cases."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:109
|
||||
msgid ""
|
||||
"While some modules could do with less stringent restrictions, isolated "
|
||||
"modules make it easier to set clear expectations and guidelines that work "
|
||||
"across a variety of use cases."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:115
|
||||
msgid "Surprising Edge Cases"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:117
|
||||
msgid ""
|
||||
"Note that isolated modules do create some surprising edge cases. Most "
|
||||
"notably, each module object will typically not share its classes and "
|
||||
"exceptions with other similar modules. Continuing from the `example above "
|
||||
"<Isolated Module Objects_>`__, note that ``old_binascii.Error`` and "
|
||||
"``binascii.Error`` are separate objects. In the following code, the "
|
||||
"exception is *not* caught:"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:137
|
||||
msgid ""
|
||||
"This is expected. Notice that pure-Python modules behave the same way: it is "
|
||||
"a part of how Python works."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:140
|
||||
msgid ""
|
||||
"The goal is to make extension modules safe at the C level, not to make hacks "
|
||||
"behave intuitively. Mutating ``sys.modules`` \"manually\" counts as a hack."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:146
|
||||
msgid "Making Modules Safe with Multiple Interpreters"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:150
|
||||
msgid "Managing Global State"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:152
|
||||
msgid ""
|
||||
"Sometimes, the state associated with a Python module is not specific to that "
|
||||
"module, but to the entire process (or something else \"more global\" than a "
|
||||
"module). For example:"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:156
|
||||
msgid "The ``readline`` module manages *the* terminal."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:157
|
||||
msgid ""
|
||||
"A module running on a circuit board wants to control *the* on-board LED."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:160
|
||||
msgid ""
|
||||
"In these cases, the Python module should provide *access* to the global "
|
||||
"state, rather than *own* it. If possible, write the module so that multiple "
|
||||
"copies of it can access the state independently (along with other libraries, "
|
||||
"whether for Python or other languages). If that is not possible, consider "
|
||||
"explicit locking."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:166
|
||||
msgid ""
|
||||
"If it is necessary to use process-global state, the simplest way to avoid "
|
||||
"issues with multiple interpreters is to explicitly prevent a module from "
|
||||
"being loaded more than once per process—see `Opt-Out: Limiting to One Module "
|
||||
"Object per Process`_."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:173
|
||||
msgid "Managing Per-Module State"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:175
|
||||
msgid ""
|
||||
"To use per-module state, use :ref:`multi-phase extension module "
|
||||
"initialization <multi-phase-initialization>`. This signals that your module "
|
||||
"supports multiple interpreters correctly."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:179
|
||||
msgid ""
|
||||
"Set ``PyModuleDef.m_size`` to a positive number to request that many bytes "
|
||||
"of storage local to the module. Usually, this will be set to the size of "
|
||||
"some module-specific ``struct``, which can store all of the module's C-level "
|
||||
"state. In particular, it is where you should put pointers to classes "
|
||||
"(including exceptions, but excluding static types) and settings (e.g. "
|
||||
"``csv``'s :py:data:`~csv.field_size_limit`) which the C code needs to "
|
||||
"function."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:188
|
||||
msgid ""
|
||||
"Another option is to store state in the module's ``__dict__``, but you must "
|
||||
"avoid crashing when users modify ``__dict__`` from Python code. This usually "
|
||||
"means error- and type-checking at the C level, which is easy to get wrong "
|
||||
"and hard to test sufficiently."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:193
|
||||
msgid ""
|
||||
"However, if module state is not needed in C code, storing it in ``__dict__`` "
|
||||
"only is a good idea."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:196
|
||||
msgid ""
|
||||
"If the module state includes ``PyObject`` pointers, the module object must "
|
||||
"hold references to those objects and implement the module-level hooks "
|
||||
"``m_traverse``, ``m_clear`` and ``m_free``. These work like ``tp_traverse``, "
|
||||
"``tp_clear`` and ``tp_free`` of a class. Adding them will require some work "
|
||||
"and make the code longer; this is the price for modules which can be "
|
||||
"unloaded cleanly."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:203
|
||||
msgid ""
|
||||
"An example of a module with per-module state is currently available as "
|
||||
"`xxlimited <https://github.com/python/cpython/blob/master/Modules/xxlimited."
|
||||
"c>`__; example module initialization shown at the bottom of the file."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:209
|
||||
msgid "Opt-Out: Limiting to One Module Object per Process"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:211
|
||||
msgid ""
|
||||
"A non-negative ``PyModuleDef.m_size`` signals that a module supports "
|
||||
"multiple interpreters correctly. If this is not yet the case for your "
|
||||
"module, you can explicitly make your module loadable only once per process. "
|
||||
"For example::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:232
|
||||
msgid "Module State Access from Functions"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:234
|
||||
msgid ""
|
||||
"Accessing the state from module-level functions is straightforward. "
|
||||
"Functions get the module object as their first argument; for extracting the "
|
||||
"state, you can use ``PyModule_GetState``::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:249
|
||||
msgid ""
|
||||
"``PyModule_GetState`` may return ``NULL`` without setting an exception if "
|
||||
"there is no module state, i.e. ``PyModuleDef.m_size`` was zero. In your own "
|
||||
"module, you're in control of ``m_size``, so this is easy to prevent."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:256
|
||||
msgid "Heap Types"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:258
|
||||
msgid ""
|
||||
"Traditionally, types defined in C code are *static*; that is, ``static "
|
||||
"PyTypeObject`` structures defined directly in code and initialized using "
|
||||
"``PyType_Ready()``."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:262
|
||||
msgid ""
|
||||
"Such types are necessarily shared across the process. Sharing them between "
|
||||
"module objects requires paying attention to any state they own or access. To "
|
||||
"limit the possible issues, static types are immutable at the Python level: "
|
||||
"for example, you can't set ``str.myattribute = 123``."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:268
|
||||
msgid ""
|
||||
"Sharing truly immutable objects between interpreters is fine, as long as "
|
||||
"they don't provide access to mutable objects. However, in CPython, every "
|
||||
"Python object has a mutable implementation detail: the reference count. "
|
||||
"Changes to the refcount are guarded by the GIL. Thus, code that shares any "
|
||||
"Python objects across interpreters implicitly depends on CPython's current, "
|
||||
"process-wide GIL."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:275
|
||||
msgid ""
|
||||
"Because they are immutable and process-global, static types cannot access "
|
||||
"\"their\" module state. If any method of such a type requires access to "
|
||||
"module state, the type must be converted to a *heap-allocated type*, or "
|
||||
"*heap type* for short. These correspond more closely to classes created by "
|
||||
"Python's ``class`` statement."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:282
|
||||
msgid "For new modules, using heap types by default is a good rule of thumb."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:286
|
||||
msgid "Changing Static Types to Heap Types"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:288
|
||||
msgid ""
|
||||
"Static types can be converted to heap types, but note that the heap type API "
|
||||
"was not designed for \"lossless\" conversion from static types—that is, "
|
||||
"creating a type that works exactly like a given static type. So, when "
|
||||
"rewriting the class definition in a new API, you are likely to "
|
||||
"unintentionally change a few details (e.g. pickleability or inherited "
|
||||
"slots). Always test the details that are important to you."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:297
|
||||
msgid ""
|
||||
"Watch out for the following two points in particular (but note that this is "
|
||||
"not a comprehensive list):"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:300
|
||||
msgid ""
|
||||
"Unlike static types, heap type objects are mutable by default. Use the :c:"
|
||||
"data:`Py_TPFLAGS_IMMUTABLETYPE` flag to prevent mutability."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:302
|
||||
msgid ""
|
||||
"Heap types inherit :c:member:`~PyTypeObject.tp_new` by default, so it may "
|
||||
"become possible to instantiate them from Python code. You can prevent this "
|
||||
"with the :c:data:`Py_TPFLAGS_DISALLOW_INSTANTIATION` flag."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:308
|
||||
msgid "Defining Heap Types"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:310
|
||||
msgid ""
|
||||
"Heap types can be created by filling a :c:struct:`PyType_Spec` structure, a "
|
||||
"description or \"blueprint\" of a class, and calling :c:func:"
|
||||
"`PyType_FromModuleAndSpec` to construct a new class object."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:315
|
||||
msgid ""
|
||||
"Other functions, like :c:func:`PyType_FromSpec`, can also create heap types, "
|
||||
"but :c:func:`PyType_FromModuleAndSpec` associates the module with the class, "
|
||||
"allowing access to the module state from methods."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:319
|
||||
msgid ""
|
||||
"The class should generally be stored in *both* the module state (for safe "
|
||||
"access from C) and the module's ``__dict__`` (for access from Python code)."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:325
|
||||
msgid "Garbage-Collection Protocol"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:327
|
||||
msgid ""
|
||||
"Instances of heap types hold a reference to their type. This ensures that "
|
||||
"the type isn't destroyed before all its instances are, but may result in "
|
||||
"reference cycles that need to be broken by the garbage collector."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:332
|
||||
msgid ""
|
||||
"To avoid memory leaks, instances of heap types must implement the garbage "
|
||||
"collection protocol. That is, heap types should:"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:336
|
||||
msgid "Have the :c:data:`Py_TPFLAGS_HAVE_GC` flag."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:337
|
||||
msgid ""
|
||||
"Define a traverse function using ``Py_tp_traverse``, which visits the type "
|
||||
"(e.g. using :c:expr:`Py_VISIT(Py_TYPE(self))`)."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:340
|
||||
msgid ""
|
||||
"Please refer to the :ref:`the documentation <type-structs>` of :c:data:"
|
||||
"`Py_TPFLAGS_HAVE_GC` and :c:member:`~PyTypeObject.tp_traverse` for "
|
||||
"additional considerations."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:344
|
||||
msgid ""
|
||||
"If your traverse function delegates to the ``tp_traverse`` of its base class "
|
||||
"(or another type), ensure that ``Py_TYPE(self)`` is visited only once. Note "
|
||||
"that only heap type are expected to visit the type in ``tp_traverse``."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:348
|
||||
msgid "For example, if your traverse function includes::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:352
|
||||
msgid "...and ``base`` may be a static type, then it should also include::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:360
|
||||
msgid ""
|
||||
"It is not necessary to handle the type's reference count in ``tp_new`` and "
|
||||
"``tp_clear``."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:365
|
||||
msgid "Module State Access from Classes"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:367
|
||||
msgid ""
|
||||
"If you have a type object defined with :c:func:`PyType_FromModuleAndSpec`, "
|
||||
"you can call :c:func:`PyType_GetModule` to get the associated module, and "
|
||||
"then :c:func:`PyModule_GetState` to get the module's state."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:371
|
||||
msgid ""
|
||||
"To save a some tedious error-handling boilerplate code, you can combine "
|
||||
"these two steps with :c:func:`PyType_GetModuleState`, resulting in::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:381
|
||||
msgid "Module State Access from Regular Methods"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:383
|
||||
msgid ""
|
||||
"Accessing the module-level state from methods of a class is somewhat more "
|
||||
"complicated, but is possible thanks to API introduced in Python 3.9. To get "
|
||||
"the state, you need to first get the *defining class*, and then get the "
|
||||
"module state from it."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:388
|
||||
msgid ""
|
||||
"The largest roadblock is getting *the class a method was defined in*, or "
|
||||
"that method's \"defining class\" for short. The defining class can have a "
|
||||
"reference to the module it is part of."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:392
|
||||
msgid ""
|
||||
"Do not confuse the defining class with :c:expr:`Py_TYPE(self)`. If the "
|
||||
"method is called on a *subclass* of your type, ``Py_TYPE(self)`` will refer "
|
||||
"to that subclass, which may be defined in different module than yours."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:397
|
||||
msgid ""
|
||||
"The following Python code can illustrate the concept. ``Base."
|
||||
"get_defining_class`` returns ``Base`` even if ``type(self) == Sub``:"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:413
|
||||
msgid ""
|
||||
"For a method to get its \"defining class\", it must use the :data:"
|
||||
"`METH_METHOD | METH_FASTCALL | METH_KEYWORDS` :c:type:`calling convention "
|
||||
"<PyMethodDef>` and the corresponding :c:type:`PyCMethod` signature::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:425
|
||||
msgid ""
|
||||
"Once you have the defining class, call :c:func:`PyType_GetModuleState` to "
|
||||
"get the state of its associated module."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:428
|
||||
msgid "For example::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:456
|
||||
msgid "Module State Access from Slot Methods, Getters and Setters"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:460
|
||||
msgid "This is new in Python 3.11."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:468
|
||||
msgid ""
|
||||
"Slot methods—the fast C equivalents for special methods, such as :c:member:"
|
||||
"`~PyNumberMethods.nb_add` for :py:attr:`~object.__add__` or :c:member:"
|
||||
"`~PyType.tp_new` for initialization—have a very simple API that doesn't "
|
||||
"allow passing in the defining class, unlike with :c:type:`PyCMethod`. The "
|
||||
"same goes for getters and setters defined with :c:type:`PyGetSetDef`."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:475
|
||||
msgid ""
|
||||
"To access the module state in these cases, use the :c:func:"
|
||||
"`PyType_GetModuleByDef` function, and pass in the module definition. Once "
|
||||
"you have the module, call :c:func:`PyModule_GetState` to get the state::"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:486
|
||||
msgid ""
|
||||
"``PyType_GetModuleByDef`` works by searching the :term:`method resolution "
|
||||
"order` (i.e. all superclasses) for the first superclass that has a "
|
||||
"corresponding module."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:492
|
||||
msgid ""
|
||||
"In very exotic cases (inheritance chains spanning multiple modules created "
|
||||
"from the same definition), ``PyType_GetModuleByDef`` might not return the "
|
||||
"module of the true defining class. However, it will always return a module "
|
||||
"with the same definition, ensuring a compatible C memory layout."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:500
|
||||
msgid "Lifetime of the Module State"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:502
|
||||
msgid ""
|
||||
"When a module object is garbage-collected, its module state is freed. For "
|
||||
"each pointer to (a part of) the module state, you must hold a reference to "
|
||||
"the module object."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:506
|
||||
msgid ""
|
||||
"Usually this is not an issue, because types created with :c:func:"
|
||||
"`PyType_FromModuleAndSpec`, and their instances, hold a reference to the "
|
||||
"module. However, you must be careful in reference counting when you "
|
||||
"reference module state from other places, such as callbacks for external "
|
||||
"libraries."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:515
|
||||
msgid "Open Issues"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:517
|
||||
msgid "Several issues around per-module state and heap types are still open."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:519
|
||||
msgid ""
|
||||
"Discussions about improving the situation are best held on the `capi-sig "
|
||||
"mailing list <https://mail.python.org/mailman3/lists/capi-sig.python.org/"
|
||||
">`__."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:524
|
||||
msgid "Per-Class Scope"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:526
|
||||
msgid ""
|
||||
"It is currently (as of Python 3.11) not possible to attach state to "
|
||||
"individual *types* without relying on CPython implementation details (which "
|
||||
"may change in the future—perhaps, ironically, to allow a proper solution for "
|
||||
"per-class scope)."
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:533
|
||||
msgid "Lossless Conversion to Heap Types"
|
||||
msgstr ""
|
||||
|
||||
#: howto/isolating-extensions.rst:535
|
||||
msgid ""
|
||||
"The heap type API was not designed for \"lossless\" conversion from static "
|
||||
"types; that is, creating a type that works exactly like a given static type."
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
285
howto/logging.po
285
howto/logging.po
|
@ -4,15 +4,15 @@ msgid ""
|
|||
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-16 21:06+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 16:01+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\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.1\n"
|
||||
"X-Generator: Poedit 3.0\n"
|
||||
|
||||
#: howto/logging.rst:3
|
||||
msgid "Logging HOWTO"
|
||||
|
@ -47,7 +47,7 @@ msgstr ""
|
|||
"décrit par un message descriptif, qui peut éventuellement contenir des "
|
||||
"données variables (c'est-à-dire qui peuvent être différentes pour chaque "
|
||||
"occurrence de l'événement). Un événement a aussi une importance que le "
|
||||
"développeur lui attribue ; cette importance peut aussi être appelée *niveau* "
|
||||
"développeur lui attribue ; cette importance peut aussi être appelée *niveau* "
|
||||
"ou *sévérité*."
|
||||
|
||||
#: howto/logging.rst:23
|
||||
|
@ -159,9 +159,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Les fonctions de journalisation sont nommées d'après le niveau ou la "
|
||||
"sévérité des évènements qu'elles suivent. Les niveaux standards et leurs "
|
||||
"applications sont décrits ci-dessous (par ordre croissant de sévérité) :"
|
||||
"applications sont décrits ci-dessous (par ordre croissant de sévérité) :"
|
||||
|
||||
#: howto/logging.rst:862
|
||||
#: howto/logging.rst:855
|
||||
msgid "Level"
|
||||
msgstr "Niveau"
|
||||
|
||||
|
@ -169,7 +169,7 @@ msgstr "Niveau"
|
|||
msgid "When it's used"
|
||||
msgstr "Quand il est utilisé"
|
||||
|
||||
#: howto/logging.rst:872
|
||||
#: howto/logging.rst:865
|
||||
msgid "``DEBUG``"
|
||||
msgstr "``DEBUG``"
|
||||
|
||||
|
@ -180,7 +180,7 @@ msgstr ""
|
|||
"Information détaillée, intéressante seulement lorsqu'on diagnostique un "
|
||||
"problème."
|
||||
|
||||
#: howto/logging.rst:870
|
||||
#: howto/logging.rst:863
|
||||
msgid "``INFO``"
|
||||
msgstr "``INFO``"
|
||||
|
||||
|
@ -188,7 +188,7 @@ msgstr "``INFO``"
|
|||
msgid "Confirmation that things are working as expected."
|
||||
msgstr "Confirmation que tout fonctionne comme prévu."
|
||||
|
||||
#: howto/logging.rst:868
|
||||
#: howto/logging.rst:861
|
||||
msgid "``WARNING``"
|
||||
msgstr "``WARNING``"
|
||||
|
||||
|
@ -202,7 +202,7 @@ msgstr ""
|
|||
"d'un problème dans un futur proche (par exemple « espace disque faible »). "
|
||||
"Le logiciel fonctionne encore normalement."
|
||||
|
||||
#: howto/logging.rst:866
|
||||
#: howto/logging.rst:859
|
||||
msgid "``ERROR``"
|
||||
msgstr "``ERROR``"
|
||||
|
||||
|
@ -214,7 +214,7 @@ msgstr ""
|
|||
"Du fait d'un problème plus sérieux, le logiciel n'a pas été capable de "
|
||||
"réaliser une tâche."
|
||||
|
||||
#: howto/logging.rst:864
|
||||
#: howto/logging.rst:857
|
||||
msgid "``CRITICAL``"
|
||||
msgstr "``CRITICAL``"
|
||||
|
||||
|
@ -257,7 +257,7 @@ msgstr "Un exemple très simple est ::"
|
|||
#: howto/logging.rst:109
|
||||
msgid "If you type these lines into a script and run it, you'll see:"
|
||||
msgstr ""
|
||||
"Si vous entrez ces lignes dans un script que vous exécutez, vous verrez :"
|
||||
"Si vous entrez ces lignes dans un script que vous exécutez, vous verrez :"
|
||||
|
||||
#: howto/logging.rst:115
|
||||
msgid ""
|
||||
|
@ -301,9 +301,9 @@ msgid ""
|
|||
"passed, which determines how encoding errors are handled. For available "
|
||||
"values and the default, see the documentation for :func:`open`."
|
||||
msgstr ""
|
||||
"L'argument *encoding* a été rajouté. Dans les versions précédentes de "
|
||||
"L'argument *encoding* à été rajouté. Dans les versions précédentes de "
|
||||
"Python, ou si non spécifié, l'encodage utilisé est la valeur par défaut "
|
||||
"utilisée par :func:`open`. Bien que non montré dans l'exemple ci-dessus, un "
|
||||
"utilisée par :func:`open`. Bien que non montré dans l'exemple au dessus, un "
|
||||
"argument **errors** peut aussi être passé, qui détermine comment les erreurs "
|
||||
"d'encodage sont gérées. Pour voir les valeurs disponibles et par défaut, "
|
||||
"consultez la documentation de :func:`open`."
|
||||
|
@ -313,8 +313,8 @@ msgid ""
|
|||
"And now if we open the file and look at what we have, we should find the log "
|
||||
"messages:"
|
||||
msgstr ""
|
||||
"Maintenant, si nous ouvrons le fichier et lisons ce qui s'y trouve, nous "
|
||||
"trouvons les messages de journalisation :"
|
||||
"Maintenant, si nous ouvrons le fichier et lisons ce qui s'y trouve, on "
|
||||
"trouvera les messages de log :"
|
||||
|
||||
#: howto/logging.rst:154
|
||||
msgid ""
|
||||
|
@ -396,11 +396,12 @@ msgid ""
|
|||
"could organize logging in it::"
|
||||
msgstr ""
|
||||
"Si votre programme est composé de plusieurs modules, voici une façon "
|
||||
"d'organiser l'outil de journalisation ::"
|
||||
"d'organiser\n"
|
||||
"l'outil de journalisation ::"
|
||||
|
||||
#: howto/logging.rst:225
|
||||
msgid "If you run *myapp.py*, you should see this in *myapp.log*:"
|
||||
msgstr "Si vous exécutez *myapp.py*, vous verrez ceci dans *myapp.log* :"
|
||||
msgstr "Si vous exécutez *myapp.py*, vous verrez ceci dans *myapp.log* :"
|
||||
|
||||
#: howto/logging.rst:233
|
||||
msgid ""
|
||||
|
@ -435,7 +436,7 @@ msgstr ""
|
|||
|
||||
#: howto/logging.rst:251
|
||||
msgid "will display:"
|
||||
msgstr "affiche :"
|
||||
msgstr "affichera :"
|
||||
|
||||
#: howto/logging.rst:257
|
||||
msgid ""
|
||||
|
@ -448,7 +449,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Comme vous pouvez le voir, l'inclusion des données variables dans le message "
|
||||
"de description de l'évènement emploie le vieux style de formatage avec %. "
|
||||
"C'est pour assurer la rétrocompatibilité : le module ``logging`` est "
|
||||
"C'est pour assurer la rétrocompatibilité : le module ``logging`` est "
|
||||
"antérieur aux nouvelles options de formatage comme :meth:`str.format` ou :"
|
||||
"class:`string.Template`. Ces nouvelles options de formatage *sont* gérées, "
|
||||
"mais leur exploration sort du cadre de ce tutoriel, voyez :ref:`formatting-"
|
||||
|
@ -563,7 +564,7 @@ msgid ""
|
|||
"slightly more advanced/in-depth tutorial than the basic one above. After "
|
||||
"that, you can take a look at the :ref:`logging-cookbook`."
|
||||
msgstr ""
|
||||
"Vous êtes encore là ? Vous pouvez lire les prochaines sections, qui donnent "
|
||||
"Vous êtes encore là ? Vous pouvez lire les prochaines sections, qui donnent "
|
||||
"un peu plus de détails que l'introduction ci-dessus. Après ça, vous pouvez "
|
||||
"jeter un œil à :ref:`logging-cookbook`."
|
||||
|
||||
|
@ -662,10 +663,10 @@ msgid ""
|
|||
"root logger's name is printed as 'root' in the logged output."
|
||||
msgstr ""
|
||||
"La racine de la hiérarchie des enregistreurs est appelée le *root logger*. "
|
||||
"C'est l'enregistreur utilisé par les fonctions :func:`debug`, :func:`info`, :"
|
||||
"C'est le *logger* utilisé par les fonctions :func:`debug`, :func:`info`, :"
|
||||
"func:`warning`, :func:`error` et :func:`critical`, qui appelle en fait les "
|
||||
"méthodes du même nom de l'objet *root logger*. Les fonctions et les méthodes "
|
||||
"ont la même signature. Le nom de l'enregistreur racine est affiché comme "
|
||||
"ont la même signature. Le nom du *root logger* est affiché comme "
|
||||
"« ``'root'`` » dans la sortie."
|
||||
|
||||
#: howto/logging.rst:386
|
||||
|
@ -704,7 +705,7 @@ msgstr ""
|
|||
"fichier) en utilisant :func:`basicConfig` comme dans les exemples donnés "
|
||||
"dans le tutoriel. Si vous appelez les fonctions :func:`debug`, :func:"
|
||||
"`info`, :func:`warning`, :func:`error` et :func:`critical`, celles-ci "
|
||||
"vérifient si une destination a été définie ; si ce n'est pas le cas, la "
|
||||
"vérifient si une destination a été définie ; si ce n'est pas le cas, la "
|
||||
"destination est assignée à la console (``sys.stderr``) avec un format par "
|
||||
"défaut pour le message affiché, avant d'être déléguée au *logger* racine, "
|
||||
"qui sort le message."
|
||||
|
@ -765,11 +766,11 @@ msgid ""
|
|||
"configuration and message sending."
|
||||
msgstr ""
|
||||
"Les méthodes des objets *logger* les plus utilisées appartiennent à deux "
|
||||
"catégories : la configuration et l'envoi de messages."
|
||||
"catégories : la configuration et l'envoi de messages."
|
||||
|
||||
#: howto/logging.rst:431
|
||||
msgid "These are the most common configuration methods:"
|
||||
msgstr "Voici les méthodes de configuration les plus communes :"
|
||||
msgstr "Voici les méthodes de configuration les plus communes :"
|
||||
|
||||
#: howto/logging.rst:433
|
||||
msgid ""
|
||||
|
@ -820,7 +821,7 @@ msgid ""
|
|||
"With the logger object configured, the following methods create log messages:"
|
||||
msgstr ""
|
||||
"Une fois que l'objet *logger* est correctement configuré, les méthodes "
|
||||
"suivantes permettent de créer un message :"
|
||||
"suivantes permettent de créer un message :"
|
||||
|
||||
#: howto/logging.rst:452
|
||||
msgid ""
|
||||
|
@ -838,7 +839,7 @@ msgstr ""
|
|||
"warning`, :meth:`Logger.error` et :meth:`Logger.critical` créent des entrées "
|
||||
"de journal avec un message et un niveau correspondant à leur nom. Le message "
|
||||
"est en fait une chaîne de caractères qui peut contenir la syntaxe standard "
|
||||
"de substitution de chaînes de caractères : ``%s``, ``%d``, ``%f``, etc. "
|
||||
"de substitution de chaînes de caractères : ``%s``, ``%d``, ``%f``, etc. "
|
||||
"L'argument suivant est une liste des objets correspondant aux champs à "
|
||||
"substituer dans le message. En ce qui concerne ``**kwargs``, les méthodes de "
|
||||
"``logging`` ne tiennent compte que du mot clef ``exc_info`` et l'utilisent "
|
||||
|
@ -881,14 +882,14 @@ msgid ""
|
|||
"descendants of ``foo``."
|
||||
msgstr ""
|
||||
":func:`getLogger` renvoie une référence à un objet *logger* du nom spécifié "
|
||||
"si celui-ci est donné en argument. Dans le cas contraire, c'est "
|
||||
"l'enregistreur racine. Les noms sont des structures hiérarchiques séparées "
|
||||
"par des points. Des appels répétés à :func:`getLogger` avec le même nom "
|
||||
"renvoient une référence au même objet *logger*. Les *loggers* qui sont plus "
|
||||
"bas dans cette liste hiérarchique sont des enfants des *loggers* plus haut "
|
||||
"dans la liste. Par exemple, si un enregistreur a le nom ``foo``, les "
|
||||
"enregistreurs avec les noms ``foo.bar``, ``foo.bar.baz`` et ``foo.bam`` sont "
|
||||
"tous des descendants de ``foo``."
|
||||
"si celui-ci est donné en argument. Dans le cas contraire, se sera le *logger "
|
||||
"root*. Ces noms sont des structures hiérarchiques séparées par des points. "
|
||||
"Des appels répétés à :func:`getLogger` avec le même nom renvoient une "
|
||||
"référence au même objet *logger*. Les *loggers* qui sont plus bas dans cette "
|
||||
"liste hiérarchique sont des enfants des *loggers* plus haut dans la liste. "
|
||||
"Par exemple, si un *logger* a le nom ``foo``, les *loggers* avec les noms "
|
||||
"``foo.bar``, ``foo.bar.baz``, et ``foo.bam`` sont tous des descendants de "
|
||||
"``foo``."
|
||||
|
||||
#: howto/logging.rst:478
|
||||
msgid ""
|
||||
|
@ -904,7 +905,7 @@ msgstr ""
|
|||
"On associe aux *loggers* un concept de *niveau effectif*. Si aucun niveau "
|
||||
"n'est explicitement défini pour un *logger*, c'est le niveau du parent qui "
|
||||
"est utilisé comme niveau effectif. Si le parent n'a pas de niveau défini, "
|
||||
"c'est celui de *son* parent qui est considéré, et ainsi de suite ; on "
|
||||
"c'est celui de *son* parent qui est considéré, et ainsi de suite ; on "
|
||||
"examine tous les ancêtres jusqu'à ce qu'un niveau explicite soit trouvé. Le "
|
||||
"*logger root* a toujours un niveau explicite (``WARNING`` par défaut). Quand "
|
||||
"le *logger* traite un événement, c'est ce niveau effectif qui est utilisé "
|
||||
|
@ -961,7 +962,7 @@ msgid ""
|
|||
"`FileHandler` in its examples."
|
||||
msgstr ""
|
||||
"La bibliothèque standard inclut déjà un bon nombre de types de gestionnaires "
|
||||
"(voir :ref:`useful-handlers`) ; le tutoriel utilise surtout :class:"
|
||||
"(voir :ref:`useful-handlers`) ; le tutoriel utilise surtout :class:"
|
||||
"`StreamHandler` et :class:`FileHandler` dans ses exemples."
|
||||
|
||||
#: howto/logging.rst:513
|
||||
|
@ -973,7 +974,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Peu de méthodes des objets *handlers* sont intéressantes pour les "
|
||||
"développeurs. Les seules méthodes intéressantes lorsqu'on utilise les objets "
|
||||
"*handlers* natifs (c'est-à-dire si l'on ne crée pas de *handler* "
|
||||
"*handlers* natifs (c'est à dire si l'on ne crée pas de *handler* "
|
||||
"personnalisé) sont les méthodes de configuration suivantes :"
|
||||
|
||||
#: howto/logging.rst:518
|
||||
|
@ -987,7 +988,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"La méthode :meth:`~Handler.setLevel`, comme celle des objets *logger* permet "
|
||||
"de spécifier le plus bas niveau de sévérité qui sera distribué à la "
|
||||
"destination appropriée. Pourquoi y a-t-il deux méthodes :func:`setLevel` ? "
|
||||
"destination appropriée. Pourquoi y a-t-il deux méthodes :func:`setLevel` ? "
|
||||
"Le niveau défini dans le *logger* détermine quelle sévérité doit avoir un "
|
||||
"message pour être transmis à ses *handlers*. Le niveau mis pour chaque "
|
||||
"*handler* détermine quels messages seront envoyés aux destinations."
|
||||
|
@ -1016,9 +1017,9 @@ msgid ""
|
|||
"behavior that child classes can use (or override)."
|
||||
msgstr ""
|
||||
"Le code d'une application ne devrait ni instancier, ni utiliser d'instances "
|
||||
"de la classe :class:`Handler`. La classe :class:`Handler` est plutôt une "
|
||||
"classe mère qui définit l'interface que tous les gestionnaires doivent avoir "
|
||||
"et établit les comportements par défaut que les classes filles peuvent "
|
||||
"de la classe :class:`Handler`. La classe :class:`Handler` est plutôt d'une "
|
||||
"classe de base qui définit l'interface que tous les gestionnaires doivent "
|
||||
"avoir et établit les comportements par défaut que les classes filles peuvent "
|
||||
"employer (ou redéfinir)."
|
||||
|
||||
#: howto/logging.rst:537
|
||||
|
@ -1035,11 +1036,11 @@ msgid ""
|
|||
"string and a style indicator."
|
||||
msgstr ""
|
||||
"Les objets *formatter* configurent l'ordre final, la structure et le contenu "
|
||||
"du message. Contrairement à la classe mère :class:`logging.Handler`, le code "
|
||||
"d'une application peut instancier un objet de classe *formatter*, même si "
|
||||
"vous pouvez toujours sous-classer *formatter* si vous avez besoin d'un "
|
||||
"du message. Contrairement à la classe de base :class:`logging.Handler`, le "
|
||||
"code d'une application peut instancier un objet de classe *formatter*, même "
|
||||
"si vous pouvez toujours sous-classer *formatter* si vous avez besoin d'un "
|
||||
"comportement spécial dans votre application. Le constructeur a trois "
|
||||
"arguments optionnels : une chaîne de formatage du message, une chaîne de "
|
||||
"arguments optionnels : une chaîne de formatage du message, un chaîne de "
|
||||
"formatage de la date et un indicateur de style."
|
||||
|
||||
#: howto/logging.rst:548
|
||||
|
@ -1049,7 +1050,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"S'il n'y a pas de chaîne de formatage, la chaîne brute est utilisée par "
|
||||
"défaut. S'il n'y a pas de chaîne de formatage de date, le format de date par "
|
||||
"défaut est :"
|
||||
"défaut est :"
|
||||
|
||||
#: howto/logging.rst:555
|
||||
#, fuzzy
|
||||
|
@ -1072,7 +1073,7 @@ msgid ""
|
|||
"should conform to what is expected by :meth:`string.Template.substitute`."
|
||||
msgstr ""
|
||||
"Si l'argument ``style`` est ``%``, la chaîne de formatage utilise ``%(<clef "
|
||||
"de dictionnaire>)s`` comme style de substitution de chaîne de caractères ; "
|
||||
"de dictionnaire>)s`` comme style de substitution de chaîne de caractères ; "
|
||||
"les clefs possibles sont documentées dans :ref:`logrecord-attributes`. Si le "
|
||||
"style est ``{``, le message de la chaîne de formatage est compatible avec :"
|
||||
"meth:`str.format` (en employant des arguments à mots clefs). Enfin si le "
|
||||
|
@ -1105,7 +1106,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Les *formatters* emploient une fonction configurable par l'utilisateur pour "
|
||||
"convertir le temps de création d'une entrée de journal en un *n*-uplet. Par "
|
||||
"défaut, :func:`time.localtime` est employé ; pour changer cela pour une "
|
||||
"défaut, :func:`time.localtime` est employé ; pour changer cela pour une "
|
||||
"instance particulière de *formatter*, assignez une fonction avec la même "
|
||||
"signature que :func:`time.localtime` ou :func:`time.gmtime` à l'attribut "
|
||||
"``converter`` de cette instance. Pour changer cela pour tous les "
|
||||
|
@ -1161,7 +1162,7 @@ msgid ""
|
|||
"Running this module from the command line produces the following output:"
|
||||
msgstr ""
|
||||
"L'exécution de ce module via la ligne de commande produit la sortie "
|
||||
"suivante :"
|
||||
"suivante :"
|
||||
|
||||
#: howto/logging.rst:638
|
||||
msgid ""
|
||||
|
@ -1174,14 +1175,14 @@ msgstr ""
|
|||
|
||||
#: howto/logging.rst:657
|
||||
msgid "Here is the logging.conf file:"
|
||||
msgstr "Voici le fichier *logging.conf* :"
|
||||
msgstr "Voici le fichier *logging.conf* :"
|
||||
|
||||
#: howto/logging.rst:689
|
||||
msgid ""
|
||||
"The output is nearly identical to that of the non-config-file-based example:"
|
||||
msgstr ""
|
||||
"La sortie est presque identique à celle de l'exemple qui n'est pas basé sur "
|
||||
"un fichier de configuration :"
|
||||
"un fichier de configuration :"
|
||||
|
||||
#: howto/logging.rst:700
|
||||
msgid ""
|
||||
|
@ -1189,11 +1190,11 @@ msgid ""
|
|||
"Python code approach, mainly separation of configuration and code and the "
|
||||
"ability of noncoders to easily modify the logging properties."
|
||||
msgstr ""
|
||||
"Vous pouvez constater les avantages de l'approche par fichier de "
|
||||
"Vous pouvez constatez les avantages de l'approche par fichier de "
|
||||
"configuration par rapport à celle du code Python, principalement la "
|
||||
"séparation de la configuration et du code, et la possibilité pour une "
|
||||
"personne qui ne code pas de modifier facilement les propriétés de "
|
||||
"journalisation."
|
||||
"``logging``."
|
||||
|
||||
#: howto/logging.rst:704
|
||||
msgid ""
|
||||
|
@ -1207,10 +1208,10 @@ msgid ""
|
|||
msgstr ""
|
||||
"La fonction :func:`fileConfig` accepte un paramètre par défaut "
|
||||
"``disable_existing_loggers``, qui vaut ``True`` par défaut pour des raisons "
|
||||
"de compatibilité ascendante. Ce n'est pas forcément ce que vous souhaitez : "
|
||||
"de compatibilité ascendante. Ce n'est pas forcément ce que vous souhaitez : "
|
||||
"en effet, tous les *loggers* créés avant l'appel à :func:`fileConfig` seront "
|
||||
"désactivés sauf si eux-mêmes (ou l'un de leurs parents) sont explicitement "
|
||||
"nommés dans le fichier de configuration. Veuillez vous reporter à la "
|
||||
"nommés dans le fichier de configuration. Veuillez vous rapporter à la "
|
||||
"documentation pour plus de détails, et donner la valeur ``False`` à ce "
|
||||
"paramètre si vous le souhaitez."
|
||||
|
||||
|
@ -1307,7 +1308,7 @@ msgstr ""
|
|||
"Si aucune configuration de journalisation n'est fournie, il est possible "
|
||||
"d'avoir une situation où un événement doit faire l'objet d'une "
|
||||
"journalisation, mais où aucun gestionnaire ne peut être trouvé pour tracer "
|
||||
"l'événement. Le comportement du paquet ``logging`` dans ces circonstances "
|
||||
"l'événement. Le comportement du paquet ```logging``` dans ces circonstances "
|
||||
"dépend de la version Python."
|
||||
|
||||
#: howto/logging.rst:777
|
||||
|
@ -1445,24 +1446,6 @@ msgstr ""
|
|||
|
||||
#: howto/logging.rst:835
|
||||
msgid ""
|
||||
"It is strongly advised that you *do not log to the root logger* in your "
|
||||
"library. Instead, use a logger with a unique and easily identifiable name, "
|
||||
"such as the ``__name__`` for your library's top-level package or module. "
|
||||
"Logging to the root logger will make it difficult or impossible for the "
|
||||
"application developer to configure the logging verbosity or handlers of your "
|
||||
"library as they wish."
|
||||
msgstr ""
|
||||
"Il est fortement conseillé de *ne pas journaliser vers l'enregistreur "
|
||||
"racine* dans votre bibliothèque. À la place, utilisez un enregistreur avec "
|
||||
"un nom unique et facilement identifiable, tel que ``__name__`` pour le "
|
||||
"paquet ou le module de niveau supérieur de votre bibliothèque. La "
|
||||
"journalisation dans l'enregistreur racine rend difficile voire impossible "
|
||||
"pour le développeur de l'application de configurer la verbosité de "
|
||||
"journalisation ou les gestionnaires de votre bibliothèque comme il le "
|
||||
"souhaite."
|
||||
|
||||
#: howto/logging.rst:842
|
||||
msgid ""
|
||||
"It is strongly advised that you *do not add any handlers other than* :class:"
|
||||
"`~logging.NullHandler` *to your library's loggers*. This is because the "
|
||||
"configuration of handlers is the prerogative of the application developer "
|
||||
|
@ -1480,11 +1463,11 @@ msgstr ""
|
|||
"le manteau », vous pourriez bien interférer avec les tests unitaires et la "
|
||||
"journalisation qui convient à ses exigences."
|
||||
|
||||
#: howto/logging.rst:853
|
||||
#: howto/logging.rst:846
|
||||
msgid "Logging Levels"
|
||||
msgstr "Niveaux de journalisation"
|
||||
|
||||
#: howto/logging.rst:855
|
||||
#: howto/logging.rst:848
|
||||
msgid ""
|
||||
"The numeric values of logging levels are given in the following table. These "
|
||||
"are primarily of interest if you want to define your own levels, and need "
|
||||
|
@ -1498,39 +1481,39 @@ msgstr ""
|
|||
"prédéfinis. Si vous définissez un niveau avec la même valeur numérique, il "
|
||||
"écrase la valeur prédéfinie ; le nom prédéfini est perdu."
|
||||
|
||||
#: howto/logging.rst:862
|
||||
#: howto/logging.rst:855
|
||||
msgid "Numeric value"
|
||||
msgstr "Valeur numérique"
|
||||
|
||||
#: howto/logging.rst:864
|
||||
#: howto/logging.rst:857
|
||||
msgid "50"
|
||||
msgstr "50"
|
||||
|
||||
#: howto/logging.rst:866
|
||||
#: howto/logging.rst:859
|
||||
msgid "40"
|
||||
msgstr "40"
|
||||
|
||||
#: howto/logging.rst:868
|
||||
#: howto/logging.rst:861
|
||||
msgid "30"
|
||||
msgstr "30"
|
||||
|
||||
#: howto/logging.rst:870
|
||||
#: howto/logging.rst:863
|
||||
msgid "20"
|
||||
msgstr "20"
|
||||
|
||||
#: howto/logging.rst:872
|
||||
#: howto/logging.rst:865
|
||||
msgid "10"
|
||||
msgstr "10"
|
||||
|
||||
#: howto/logging.rst:874
|
||||
#: howto/logging.rst:867
|
||||
msgid "``NOTSET``"
|
||||
msgstr "``NOTSET``"
|
||||
|
||||
#: howto/logging.rst:874
|
||||
#: howto/logging.rst:867
|
||||
msgid "0"
|
||||
msgstr "0"
|
||||
|
||||
#: howto/logging.rst:877
|
||||
#: howto/logging.rst:870
|
||||
msgid ""
|
||||
"Levels can also be associated with loggers, being set either by the "
|
||||
"developer or through loading a saved logging configuration. When a logging "
|
||||
|
@ -1548,7 +1531,7 @@ msgstr ""
|
|||
"réellement généré. C'est le mécanisme de base contrôlant la verbosité de la "
|
||||
"sortie de journalisation."
|
||||
|
||||
#: howto/logging.rst:884
|
||||
#: howto/logging.rst:877
|
||||
msgid ""
|
||||
"Logging messages are encoded as instances of the :class:`~logging.LogRecord` "
|
||||
"class. When a logger decides to actually log an event, a :class:`~logging."
|
||||
|
@ -1559,7 +1542,7 @@ msgstr ""
|
|||
"enregistrer un événement, une instance de :class:`~logging.LogRecord` est "
|
||||
"créée à partir du message de journalisation."
|
||||
|
||||
#: howto/logging.rst:888
|
||||
#: howto/logging.rst:881
|
||||
msgid ""
|
||||
"Logging messages are subjected to a dispatch mechanism through the use of :"
|
||||
"dfn:`handlers`, which are instances of subclasses of the :class:`Handler` "
|
||||
|
@ -1590,10 +1573,10 @@ msgstr ""
|
|||
"de tous les gestionnaires directement associés à un enregistreur, *tous les "
|
||||
"gestionnaires associés à tous les ancêtres de l'enregistreur* sont appelés "
|
||||
"pour envoyer le message (à moins que l'indicateur *propager* pour un "
|
||||
"enregistreur soit défini sur la valeur ``False``, auquel cas le passage au "
|
||||
"gestionnaire ancêtre s'arrête)."
|
||||
"enregistreur soit défini sur la valeur ``False``, auquel cas le passage à "
|
||||
"l'ancêtre gestionnaires s'arrête)."
|
||||
|
||||
#: howto/logging.rst:902
|
||||
#: howto/logging.rst:895
|
||||
msgid ""
|
||||
"Just as for loggers, handlers can have levels associated with them. A "
|
||||
"handler's level acts as a filter in the same way as a logger's level does. "
|
||||
|
@ -1610,11 +1593,11 @@ msgstr ""
|
|||
"classes définies par l'utilisateur de :class:`Handler` devront remplacer ce :"
|
||||
"meth:`~Handler.emit`."
|
||||
|
||||
#: howto/logging.rst:911
|
||||
#: howto/logging.rst:904
|
||||
msgid "Custom Levels"
|
||||
msgstr "Niveaux personnalisés"
|
||||
|
||||
#: howto/logging.rst:913
|
||||
#: howto/logging.rst:906
|
||||
msgid ""
|
||||
"Defining your own levels is possible, but should not be necessary, as the "
|
||||
"existing levels have been chosen on the basis of practical experience. "
|
||||
|
@ -1638,19 +1621,19 @@ msgstr ""
|
|||
"contrôler et/ou interpréter, car une valeur numérique donnée peut signifier "
|
||||
"des choses différentes pour différentes bibliothèques."
|
||||
|
||||
#: howto/logging.rst:926
|
||||
#: howto/logging.rst:919
|
||||
msgid "Useful Handlers"
|
||||
msgstr "Gestionnaires utiles"
|
||||
|
||||
#: howto/logging.rst:928
|
||||
#: howto/logging.rst:921
|
||||
msgid ""
|
||||
"In addition to the base :class:`Handler` class, many useful subclasses are "
|
||||
"provided:"
|
||||
msgstr ""
|
||||
"En plus de la classe mère :class:`Handler`, de nombreuses sous-classes "
|
||||
"En plus de la classe de base :class:`Handler`, de nombreuses sous-classes "
|
||||
"utiles sont fournies :"
|
||||
|
||||
#: howto/logging.rst:931
|
||||
#: howto/logging.rst:924
|
||||
msgid ""
|
||||
":class:`StreamHandler` instances send messages to streams (file-like "
|
||||
"objects)."
|
||||
|
@ -1658,26 +1641,26 @@ msgstr ""
|
|||
"Les instances :class:`StreamHandler` envoient des messages aux flux (objets "
|
||||
"de type fichier)."
|
||||
|
||||
#: howto/logging.rst:934
|
||||
#: howto/logging.rst:927
|
||||
msgid ":class:`FileHandler` instances send messages to disk files."
|
||||
msgstr ""
|
||||
"Les instances :class:`FileHandler` envoient des messages à des fichiers sur "
|
||||
"le disque."
|
||||
|
||||
#: howto/logging.rst:936
|
||||
#: howto/logging.rst:929
|
||||
msgid ""
|
||||
":class:`~handlers.BaseRotatingHandler` is the base class for handlers that "
|
||||
"rotate log files at a certain point. It is not meant to be instantiated "
|
||||
"directly. Instead, use :class:`~handlers.RotatingFileHandler` or :class:"
|
||||
"`~handlers.TimedRotatingFileHandler`."
|
||||
msgstr ""
|
||||
":class:`~handlers.BaseRotatingHandler` est la classe mère pour les "
|
||||
":class:`~handlers.BaseRotatingHandler` est la classe de base pour les "
|
||||
"gestionnaires qui assurent la rotation des fichiers de journalisation à "
|
||||
"partir d’un certain point. Elle n'est pas destinée à être instanciée "
|
||||
"directement. Utilisez plutôt :class:`~handlers.RotatingFileHandler` ou :"
|
||||
"class:`~handlers.TimedRotatingFileHandler`."
|
||||
|
||||
#: howto/logging.rst:941
|
||||
#: howto/logging.rst:934
|
||||
msgid ""
|
||||
":class:`~handlers.RotatingFileHandler` instances send messages to disk "
|
||||
"files, with support for maximum log file sizes and log file rotation."
|
||||
|
@ -1686,7 +1669,7 @@ msgstr ""
|
|||
"des fichiers sur le disque, avec la prise en charge des tailles maximales de "
|
||||
"fichiers de journalisation et de la rotation des fichiers de journalisation."
|
||||
|
||||
#: howto/logging.rst:944
|
||||
#: howto/logging.rst:937
|
||||
msgid ""
|
||||
":class:`~handlers.TimedRotatingFileHandler` instances send messages to disk "
|
||||
"files, rotating the log file at certain timed intervals."
|
||||
|
@ -1695,7 +1678,7 @@ msgstr ""
|
|||
"messages aux fichiers de disque, en permutant le fichier journal à "
|
||||
"intervalles réguliers."
|
||||
|
||||
#: howto/logging.rst:947
|
||||
#: howto/logging.rst:940
|
||||
msgid ""
|
||||
":class:`~handlers.SocketHandler` instances send messages to TCP/IP sockets. "
|
||||
"Since 3.4, Unix domain sockets are also supported."
|
||||
|
@ -1704,7 +1687,7 @@ msgstr ""
|
|||
"connecteurs TCP/IP. Depuis 3.4, les connecteurs UNIX sont également pris en "
|
||||
"charge."
|
||||
|
||||
#: howto/logging.rst:950
|
||||
#: howto/logging.rst:943
|
||||
msgid ""
|
||||
":class:`~handlers.DatagramHandler` instances send messages to UDP sockets. "
|
||||
"Since 3.4, Unix domain sockets are also supported."
|
||||
|
@ -1713,7 +1696,7 @@ msgstr ""
|
|||
"aux connecteurs UDP. Depuis 3.4, les connecteurs UNIX sont également pris en "
|
||||
"charge."
|
||||
|
||||
#: howto/logging.rst:953
|
||||
#: howto/logging.rst:946
|
||||
msgid ""
|
||||
":class:`~handlers.SMTPHandler` instances send messages to a designated email "
|
||||
"address."
|
||||
|
@ -1721,7 +1704,7 @@ msgstr ""
|
|||
"Les instances de :class:`~handlers.SMTPHandler` envoient des messages à une "
|
||||
"adresse e-mail désignée."
|
||||
|
||||
#: howto/logging.rst:956
|
||||
#: howto/logging.rst:949
|
||||
msgid ""
|
||||
":class:`~handlers.SysLogHandler` instances send messages to a Unix syslog "
|
||||
"daemon, possibly on a remote machine."
|
||||
|
@ -1729,7 +1712,7 @@ msgstr ""
|
|||
"Les instances de :class:`~handlers.SysLogHandler` envoient des messages à un "
|
||||
"*daemon* *syslog* UNIX, éventuellement sur un ordinateur distant."
|
||||
|
||||
#: howto/logging.rst:959
|
||||
#: howto/logging.rst:952
|
||||
msgid ""
|
||||
":class:`~handlers.NTEventLogHandler` instances send messages to a Windows "
|
||||
"NT/2000/XP event log."
|
||||
|
@ -1737,7 +1720,7 @@ msgstr ""
|
|||
"Les instances de :class:`~handlers.NTEventLogHandler` envoient des messages "
|
||||
"à un journal des événements Windows NT/2000/XP."
|
||||
|
||||
#: howto/logging.rst:962
|
||||
#: howto/logging.rst:955
|
||||
msgid ""
|
||||
":class:`~handlers.MemoryHandler` instances send messages to a buffer in "
|
||||
"memory, which is flushed whenever specific criteria are met."
|
||||
|
@ -1746,7 +1729,7 @@ msgstr ""
|
|||
"tampon en mémoire, qui est vidé chaque fois que des critères spécifiques "
|
||||
"sont remplis."
|
||||
|
||||
#: howto/logging.rst:965
|
||||
#: howto/logging.rst:958
|
||||
msgid ""
|
||||
":class:`~handlers.HTTPHandler` instances send messages to an HTTP server "
|
||||
"using either ``GET`` or ``POST`` semantics."
|
||||
|
@ -1754,7 +1737,7 @@ msgstr ""
|
|||
"Les instances de :class:`~handlers.HTTPHandler` envoient des messages à un "
|
||||
"serveur HTTP à l'aide de la sémantique ``GET`` ou ``POST``."
|
||||
|
||||
#: howto/logging.rst:968
|
||||
#: howto/logging.rst:961
|
||||
msgid ""
|
||||
":class:`~handlers.WatchedFileHandler` instances watch the file they are "
|
||||
"logging to. If the file changes, it is closed and reopened using the file "
|
||||
|
@ -1767,7 +1750,7 @@ msgstr ""
|
|||
"les systèmes de type UNIX ; Windows ne prend pas en charge le mécanisme sous-"
|
||||
"jacent utilisé."
|
||||
|
||||
#: howto/logging.rst:973
|
||||
#: howto/logging.rst:966
|
||||
msgid ""
|
||||
":class:`~handlers.QueueHandler` instances send messages to a queue, such as "
|
||||
"those implemented in the :mod:`queue` or :mod:`multiprocessing` modules."
|
||||
|
@ -1776,7 +1759,7 @@ msgstr ""
|
|||
"file d'attente, telles que celles implémentées dans les modules :mod:`queue` "
|
||||
"ou :mod:`multiprocessing`."
|
||||
|
||||
#: howto/logging.rst:976
|
||||
#: howto/logging.rst:969
|
||||
msgid ""
|
||||
":class:`NullHandler` instances do nothing with error messages. They are used "
|
||||
"by library developers who want to use logging, but want to avoid the 'No "
|
||||
|
@ -1791,15 +1774,15 @@ msgstr ""
|
|||
"n'a pas configuré la journalisation. Voir :ref:`library-config` pour plus "
|
||||
"d'informations."
|
||||
|
||||
#: howto/logging.rst:982
|
||||
#: howto/logging.rst:975
|
||||
msgid "The :class:`NullHandler` class."
|
||||
msgstr "La classe :class:`NullHandler`."
|
||||
|
||||
#: howto/logging.rst:985
|
||||
#: howto/logging.rst:978
|
||||
msgid "The :class:`~handlers.QueueHandler` class."
|
||||
msgstr "La classe :class:`~handlers.QueueHandler`."
|
||||
|
||||
#: howto/logging.rst:988
|
||||
#: howto/logging.rst:981
|
||||
msgid ""
|
||||
"The :class:`NullHandler`, :class:`StreamHandler` and :class:`FileHandler` "
|
||||
"classes are defined in the core logging package. The other handlers are "
|
||||
|
@ -1812,7 +1795,7 @@ msgstr ""
|
|||
"handlers` (il existe également un autre sous-module, :mod:`logging.config`, "
|
||||
"pour la fonctionnalité de configuration)."
|
||||
|
||||
#: howto/logging.rst:993
|
||||
#: howto/logging.rst:986
|
||||
msgid ""
|
||||
"Logged messages are formatted for presentation through instances of the :"
|
||||
"class:`Formatter` class. They are initialized with a format string suitable "
|
||||
|
@ -1823,7 +1806,7 @@ msgstr ""
|
|||
"chaîne de format appropriée pour une utilisation avec l'opérateur % et un "
|
||||
"dictionnaire."
|
||||
|
||||
#: howto/logging.rst:997
|
||||
#: howto/logging.rst:990
|
||||
msgid ""
|
||||
"For formatting multiple messages in a batch, instances of :class:`~handlers."
|
||||
"BufferingFormatter` can be used. In addition to the format string (which is "
|
||||
|
@ -1835,7 +1818,7 @@ msgstr ""
|
|||
"de format (qui est appliquée à chaque message dans le lot), il existe des "
|
||||
"dispositions pour les chaînes de format d'en-tête et de fin."
|
||||
|
||||
#: howto/logging.rst:1002
|
||||
#: howto/logging.rst:995
|
||||
msgid ""
|
||||
"When filtering based on logger level and/or handler level is not enough, "
|
||||
"instances of :class:`Filter` can be added to both :class:`Logger` and :class:"
|
||||
|
@ -1852,7 +1835,7 @@ msgstr ""
|
|||
"consultent tous leurs filtres pour obtenir l'autorisation. Si un filtre "
|
||||
"renvoie une valeur ``False``, le traitement du message est arrêté."
|
||||
|
||||
#: howto/logging.rst:1009
|
||||
#: howto/logging.rst:1002
|
||||
msgid ""
|
||||
"The basic :class:`Filter` functionality allows filtering by specific logger "
|
||||
"name. If this feature is used, messages sent to the named logger and its "
|
||||
|
@ -1863,11 +1846,11 @@ msgstr ""
|
|||
"envoyés à l'enregistreur nommé et à ses enfants sont autorisés via le filtre "
|
||||
"et tous les autres sont abandonnés."
|
||||
|
||||
#: howto/logging.rst:1017
|
||||
#: howto/logging.rst:1010
|
||||
msgid "Exceptions raised during logging"
|
||||
msgstr "Exceptions levées par la journalisation"
|
||||
|
||||
#: howto/logging.rst:1019
|
||||
#: howto/logging.rst:1012
|
||||
msgid ""
|
||||
"The logging package is designed to swallow exceptions which occur while "
|
||||
"logging in production. This is so that errors which occur while handling "
|
||||
|
@ -1881,7 +1864,7 @@ msgstr ""
|
|||
"journalisation, une erreur réseau ou d'autres erreurs similaires) ne "
|
||||
"provoquent pas l'arrêt de l'application utilisant la journalisation."
|
||||
|
||||
#: howto/logging.rst:1024
|
||||
#: howto/logging.rst:1017
|
||||
msgid ""
|
||||
":class:`SystemExit` and :class:`KeyboardInterrupt` exceptions are never "
|
||||
"swallowed. Other exceptions which occur during the :meth:`~Handler.emit` "
|
||||
|
@ -1890,10 +1873,10 @@ msgid ""
|
|||
msgstr ""
|
||||
"Les exceptions :class:`SystemExit` et :class:`KeyboardInterrupt` ne sont "
|
||||
"jamais passées sous silence. Les autres exceptions qui se produisent pendant "
|
||||
"la méthode :meth:`~Handler.emit` d'une sous-classe :class:`Handler` sont "
|
||||
"la méthode :meth:`~Handler.emit` d'une sous classe :class:`Handler` sont "
|
||||
"passées à sa méthode :meth:`~Handler.handleError`."
|
||||
|
||||
#: howto/logging.rst:1029
|
||||
#: howto/logging.rst:1022
|
||||
msgid ""
|
||||
"The default implementation of :meth:`~Handler.handleError` in :class:"
|
||||
"`Handler` checks to see if a module-level variable, :data:`raiseExceptions`, "
|
||||
|
@ -1906,7 +1889,7 @@ msgstr ""
|
|||
"pile d'appels est affichée sur :data:`sys.stderr`. Si elle n'est pas "
|
||||
"définie, l'exception est passée sous silence."
|
||||
|
||||
#: howto/logging.rst:1034
|
||||
#: howto/logging.rst:1027
|
||||
msgid ""
|
||||
"The default value of :data:`raiseExceptions` is ``True``. This is because "
|
||||
"during development, you typically want to be notified of any exceptions that "
|
||||
|
@ -1918,11 +1901,11 @@ msgstr ""
|
|||
"toutes les exceptions qui se produisent. Il est conseillé de définir :data:"
|
||||
"`raiseExceptions` à ``False`` pour une utilisation en production."
|
||||
|
||||
#: howto/logging.rst:1044
|
||||
#: howto/logging.rst:1037
|
||||
msgid "Using arbitrary objects as messages"
|
||||
msgstr "Utilisation d'objets arbitraires comme messages"
|
||||
|
||||
#: howto/logging.rst:1046
|
||||
#: howto/logging.rst:1039
|
||||
msgid ""
|
||||
"In the preceding sections and examples, it has been assumed that the message "
|
||||
"passed when logging the event is a string. However, this is not the only "
|
||||
|
@ -1943,11 +1926,11 @@ msgstr ""
|
|||
"gestionnaires :class:`~handlers.SocketHandler` émettent un événement en lui "
|
||||
"appliquant *pickle* et en l'envoyant sur le réseau."
|
||||
|
||||
#: howto/logging.rst:1057
|
||||
#: howto/logging.rst:1050
|
||||
msgid "Optimization"
|
||||
msgstr "Optimisation"
|
||||
|
||||
#: howto/logging.rst:1059
|
||||
#: howto/logging.rst:1052
|
||||
msgid ""
|
||||
"Formatting of message arguments is deferred until it cannot be avoided. "
|
||||
"However, computing the arguments passed to the logging method can also be "
|
||||
|
@ -1966,7 +1949,7 @@ msgstr ""
|
|||
"renvoie ``True`` si un événement est créé par l'enregistreur pour ce niveau "
|
||||
"d'appel. Vous pouvez écrire un code qui ressemble à ça ::"
|
||||
|
||||
#: howto/logging.rst:1071
|
||||
#: howto/logging.rst:1064
|
||||
msgid ""
|
||||
"so that if the logger's threshold is set above ``DEBUG``, the calls to :func:"
|
||||
"`expensive_func1` and :func:`expensive_func2` are never made."
|
||||
|
@ -1975,7 +1958,7 @@ msgstr ""
|
|||
"les appels à :func:`expensive_func1` et :func:`expensive_func2` ne sont "
|
||||
"jamais faits."
|
||||
|
||||
#: howto/logging.rst:1074
|
||||
#: howto/logging.rst:1067
|
||||
msgid ""
|
||||
"In some cases, :meth:`~Logger.isEnabledFor` can itself be more expensive "
|
||||
"than you'd like (e.g. for deeply nested loggers where an explicit level is "
|
||||
|
@ -1997,7 +1980,7 @@ msgstr ""
|
|||
"configuration de journalisation change dynamiquement pendant l'exécution de "
|
||||
"l'application (ce qui est rarement le cas)."
|
||||
|
||||
#: howto/logging.rst:1083
|
||||
#: howto/logging.rst:1076
|
||||
msgid ""
|
||||
"There are other optimizations which can be made for specific applications "
|
||||
"which need more precise control over what logging information is collected. "
|
||||
|
@ -2010,19 +1993,19 @@ msgstr ""
|
|||
"vous pouvez faire pour éviter le traitement pendant la journalisation dont "
|
||||
"vous n'avez pas besoin :"
|
||||
|
||||
#: howto/logging.rst:1089
|
||||
#: howto/logging.rst:1082
|
||||
msgid "What you don't want to collect"
|
||||
msgstr "Ce que vous ne voulez pas collecter"
|
||||
|
||||
#: howto/logging.rst:1089
|
||||
#: howto/logging.rst:1082
|
||||
msgid "How to avoid collecting it"
|
||||
msgstr "Comment éviter de le collecter"
|
||||
|
||||
#: howto/logging.rst:1091
|
||||
#: howto/logging.rst:1084
|
||||
msgid "Information about where calls were made from."
|
||||
msgstr "Informations sur l'endroit où les appels ont été faits."
|
||||
|
||||
#: howto/logging.rst:1091
|
||||
#: howto/logging.rst:1084
|
||||
msgid ""
|
||||
"Set ``logging._srcfile`` to ``None``. This avoids calling :func:`sys."
|
||||
"_getframe`, which may help to speed up your code in environments like PyPy "
|
||||
|
@ -2033,23 +2016,23 @@ msgstr ""
|
|||
"comme PyPy (qui ne peut pas accélérer le code qui utilise :func:`sys."
|
||||
"_getframe`)."
|
||||
|
||||
#: howto/logging.rst:1097
|
||||
#: howto/logging.rst:1090
|
||||
msgid "Threading information."
|
||||
msgstr "Informations de *threading*."
|
||||
|
||||
#: howto/logging.rst:1097
|
||||
#: howto/logging.rst:1090
|
||||
msgid "Set ``logging.logThreads`` to ``False``."
|
||||
msgstr "Mettez ``logging.logThreads`` à ``False``."
|
||||
|
||||
#: howto/logging.rst:1099
|
||||
#: howto/logging.rst:1092
|
||||
msgid "Current process ID (:func:`os.getpid`)"
|
||||
msgstr "Identifiant du processus courant (résultat de :func:`os.getpid`)"
|
||||
|
||||
#: howto/logging.rst:1099
|
||||
#: howto/logging.rst:1092
|
||||
msgid "Set ``logging.logProcesses`` to ``False``."
|
||||
msgstr "Mettez ``logging.logProcesses`` à ``False``."
|
||||
|
||||
#: howto/logging.rst:1101
|
||||
#: howto/logging.rst:1094
|
||||
msgid ""
|
||||
"Current process name when using ``multiprocessing`` to manage multiple "
|
||||
"processes."
|
||||
|
@ -2057,11 +2040,11 @@ msgstr ""
|
|||
"Nom du processus actuel, si vous vous servez de ``multiprocessing`` pour "
|
||||
"gérer plusieurs processus à la fois"
|
||||
|
||||
#: howto/logging.rst:1101
|
||||
#: howto/logging.rst:1094
|
||||
msgid "Set ``logging.logMultiprocessing`` to ``False``."
|
||||
msgstr "Mettez ``logging.logMultiProcessing`` à ``False``."
|
||||
|
||||
#: howto/logging.rst:1105
|
||||
#: howto/logging.rst:1098
|
||||
msgid ""
|
||||
"Also note that the core logging module only includes the basic handlers. If "
|
||||
"you don't import :mod:`logging.handlers` and :mod:`logging.config`, they "
|
||||
|
@ -2071,31 +2054,31 @@ msgstr ""
|
|||
"les gestionnaires de base. Si vous n'importez pas :mod:`logging.handlers` "
|
||||
"et :mod:`logging.config`, ils ne prendront pas de mémoire."
|
||||
|
||||
#: howto/logging.rst:1112
|
||||
#: howto/logging.rst:1105
|
||||
msgid "Module :mod:`logging`"
|
||||
msgstr "Module :mod:`logging`"
|
||||
|
||||
#: howto/logging.rst:1112
|
||||
#: howto/logging.rst:1105
|
||||
msgid "API reference for the logging module."
|
||||
msgstr "Référence d'API pour le module de journalisation."
|
||||
|
||||
#: howto/logging.rst:1115
|
||||
#: howto/logging.rst:1108
|
||||
msgid "Module :mod:`logging.config`"
|
||||
msgstr "Module :mod:`logging.config`"
|
||||
|
||||
#: howto/logging.rst:1115
|
||||
#: howto/logging.rst:1108
|
||||
msgid "Configuration API for the logging module."
|
||||
msgstr "API de configuration pour le module de journalisation."
|
||||
|
||||
#: howto/logging.rst:1118
|
||||
#: howto/logging.rst:1111
|
||||
msgid "Module :mod:`logging.handlers`"
|
||||
msgstr "Module :mod:`logging.handlers`"
|
||||
|
||||
#: howto/logging.rst:1118
|
||||
#: howto/logging.rst:1111
|
||||
msgid "Useful handlers included with the logging module."
|
||||
msgstr "Gestionnaires utiles inclus avec le module de journalisation."
|
||||
|
||||
#: howto/logging.rst:1120
|
||||
#: howto/logging.rst:1113
|
||||
msgid ":ref:`A logging cookbook <logging-cookbook>`"
|
||||
msgstr ":ref:`A logging cookbook <logging-cookbook>`"
|
||||
|
||||
|
|
|
@ -5,15 +5,15 @@ msgid ""
|
|||
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-16 21:12+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 12:27+0200\n"
|
||||
"Last-Translator: Nabil Bendafi <nabil@bendafi.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\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.1\n"
|
||||
"X-Generator: Poedit 3.0.1\n"
|
||||
|
||||
#: howto/regex.rst:5
|
||||
msgid "Regular Expression HOWTO"
|
||||
|
@ -589,24 +589,24 @@ msgstr ""
|
|||
|
||||
#: howto/regex.rst:233
|
||||
msgid ""
|
||||
"There are two more repeating operators or quantifiers. The question mark "
|
||||
"character, ``?``, matches either once or zero times; you can think of it as "
|
||||
"marking something as being optional. For example, ``home-?brew`` matches "
|
||||
"either ``'homebrew'`` or ``'home-brew'``."
|
||||
"There are two more repeating qualifiers. The question mark character, ``?"
|
||||
"``, matches either once or zero times; you can think of it as marking "
|
||||
"something as being optional. For example, ``home-?brew`` matches either "
|
||||
"``'homebrew'`` or ``'home-brew'``."
|
||||
msgstr ""
|
||||
"Il existe deux autres quantificateurs pour les répétitions. Le point "
|
||||
"d'interrogation, ``?``, fait correspondre zéro ou une fois ; vous pouvez "
|
||||
"vous le représenter comme indiquant une option. Par exemple, ``méta-?"
|
||||
"caractère`` fait correspondre soit ``'métacaractère'``, soit ``'méta-"
|
||||
"caractère'``."
|
||||
"caractère`` fait correspondre soit ``métacaractère``, soit ``méta-"
|
||||
"caractère``."
|
||||
|
||||
#: howto/regex.rst:238
|
||||
msgid ""
|
||||
"The most complicated quantifier is ``{m,n}``, where *m* and *n* are decimal "
|
||||
"integers. This quantifier means there must be at least *m* repetitions, and "
|
||||
"at most *n*. For example, ``a/{1,3}b`` will match ``'a/b'``, ``'a//b'``, "
|
||||
"and ``'a///b'``. It won't match ``'ab'``, which has no slashes, or ``'a////"
|
||||
"b'``, which has four."
|
||||
"The most complicated repeated qualifier is ``{m,n}``, where *m* and *n* are "
|
||||
"decimal integers. This qualifier means there must be at least *m* "
|
||||
"repetitions, and at most *n*. For example, ``a/{1,3}b`` will match ``'a/"
|
||||
"b'``, ``'a//b'``, and ``'a///b'``. It won't match ``'ab'``, which has no "
|
||||
"slashes, or ``'a////b'``, which has four."
|
||||
msgstr ""
|
||||
"Le plus compliqué des quantificateurs est ``{m,n}`` où *m* et *n* sont des "
|
||||
"entiers décimaux. Ce quantificateur indique qu'il faut au moins *m* "
|
||||
|
@ -626,7 +626,7 @@ msgstr ""
|
|||
|
||||
#: howto/regex.rst:248
|
||||
msgid ""
|
||||
"Readers of a reductionist bent may notice that the three other quantifiers "
|
||||
"Readers of a reductionist bent may notice that the three other qualifiers "
|
||||
"can all be expressed using this notation. ``{0,}`` is the same as ``*``, "
|
||||
"``{1,}`` is equivalent to ``+``, and ``{0,1}`` is the same as ``?``. It's "
|
||||
"better to use ``*``, ``+``, or ``?`` when you can, simply because they're "
|
||||
|
@ -1246,7 +1246,6 @@ msgstr ""
|
|||
"et compréhensible."
|
||||
|
||||
#: howto/regex.rst:562
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Perform case-insensitive matching; character class and literal strings will "
|
||||
"match letters by ignoring case. For example, ``[A-Z]`` will match lowercase "
|
||||
|
@ -1669,8 +1668,8 @@ msgid ""
|
|||
"Groups are marked by the ``'('``, ``')'`` metacharacters. ``'('`` and "
|
||||
"``')'`` have much the same meaning as they do in mathematical expressions; "
|
||||
"they group together the expressions contained inside them, and you can "
|
||||
"repeat the contents of a group with a quantifier, such as ``*``, ``+``, ``?"
|
||||
"``, or ``{m,n}``. For example, ``(ab)*`` will match zero or more "
|
||||
"repeat the contents of a group with a repeating qualifier, such as ``*``, "
|
||||
"``+``, ``?``, or ``{m,n}``. For example, ``(ab)*`` will match zero or more "
|
||||
"repetitions of ``ab``. ::"
|
||||
msgstr ""
|
||||
"Les groupes sont délimités par les métacaractères marqueurs ``'('`` et "
|
||||
|
@ -2587,7 +2586,7 @@ msgstr ""
|
|||
|
||||
#: howto/regex.rst:1329
|
||||
msgid ""
|
||||
"In this case, the solution is to use the non-greedy quantifiers ``*?``, ``+?"
|
||||
"In this case, the solution is to use the non-greedy qualifiers ``*?``, ``+?"
|
||||
"``, ``??``, or ``{m,n}?``, which match as *little* text as possible. In the "
|
||||
"above example, the ``'>'`` is tried immediately after the first ``'<'`` "
|
||||
"matches, and when it fails, the engine advances a character at a time, "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 12:27+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
170
howto/sorting.po
170
howto/sorting.po
|
@ -5,15 +5,15 @@ msgid ""
|
|||
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-11 19:25+0100\n"
|
||||
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
|
||||
"PO-Revision-Date: 2022-07-08 17:51+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\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.1\n"
|
||||
"X-Generator: Poedit 3.0.1\n"
|
||||
|
||||
#: howto/sorting.rst:4
|
||||
msgid "Sorting HOW TO"
|
||||
|
@ -231,8 +231,7 @@ msgstr ""
|
|||
"avantage de l'ordre existant dans un jeu de données."
|
||||
|
||||
#: howto/sorting.rst:190
|
||||
#, fuzzy
|
||||
msgid "Decorate-Sort-Undecorate"
|
||||
msgid "The Old Way Using Decorate-Sort-Undecorate"
|
||||
msgstr "La méthode traditionnelle utilisant Decorate-Sort-Undecorate"
|
||||
|
||||
#: howto/sorting.rst:192
|
||||
|
@ -324,57 +323,88 @@ msgstr ""
|
|||
"Maintenant que le tri Python fournit des fonctions-clef, cette technique "
|
||||
"n'est plus souvent utilisée."
|
||||
|
||||
#: howto/sorting.rst:230
|
||||
#, fuzzy
|
||||
msgid "Comparison Functions"
|
||||
msgstr "Fonctions du module *operator*"
|
||||
#: howto/sorting.rst:231
|
||||
msgid "The Old Way Using the *cmp* Parameter"
|
||||
msgstr "La méthode traditionnelle d'utiliser le paramètre *cmp*"
|
||||
|
||||
#: howto/sorting.rst:232
|
||||
#: howto/sorting.rst:233
|
||||
msgid ""
|
||||
"Unlike key functions that return an absolute value for sorting, a comparison "
|
||||
"function computes the relative ordering for two inputs."
|
||||
"Many constructs given in this HOWTO assume Python 2.4 or later. Before that, "
|
||||
"there was no :func:`sorted` builtin and :meth:`list.sort` took no keyword "
|
||||
"arguments. Instead, all of the Py2.x versions supported a *cmp* parameter to "
|
||||
"handle user specified comparison functions."
|
||||
msgstr ""
|
||||
"Plusieurs construction données dans ce guide se basent sur Python 2.4 ou "
|
||||
"plus. Avant cela, il n'y avait pas la fonction :func:`sorted` et la méthode :"
|
||||
"meth:`list.sort` ne prenait pas d'arguments nommés. À la place, toutes les "
|
||||
"versions Python 2.x utilisaient un paramètre *cmp* pour prendre en charge "
|
||||
"les fonctions de comparaisons définies par les utilisateurs."
|
||||
|
||||
#: howto/sorting.rst:235
|
||||
#: howto/sorting.rst:238
|
||||
msgid ""
|
||||
"For example, a `balance scale <https://upload.wikimedia.org/wikipedia/"
|
||||
"commons/1/17/Balance_à_tabac_1850.JPG>`_ compares two samples giving a "
|
||||
"relative ordering: lighter, equal, or heavier. Likewise, a comparison "
|
||||
"function such as ``cmp(a, b)`` will return a negative value for less-than, "
|
||||
"zero if the inputs are equal, or a positive value for greater-than."
|
||||
"In Py3.0, the *cmp* parameter was removed entirely (as part of a larger "
|
||||
"effort to simplify and unify the language, eliminating the conflict between "
|
||||
"rich comparisons and the :meth:`__cmp__` magic method)."
|
||||
msgstr ""
|
||||
"En Py3.0, le paramètre *cmp* à été supprimé complètement (dans le cadre d'un "
|
||||
"effort plus général pour simplifier et unifier le langage, en éliminant le "
|
||||
"conflit entre les comparaisons riches et la méthode magique :meth:`__cmp__`)."
|
||||
|
||||
#: howto/sorting.rst:242
|
||||
msgid ""
|
||||
"It is common to encounter comparison functions when translating algorithms "
|
||||
"from other languages. Also, some libraries provide comparison functions as "
|
||||
"part of their API. For example, :func:`locale.strcoll` is a comparison "
|
||||
"function."
|
||||
"In Py2.x, sort allowed an optional function which can be called for doing "
|
||||
"the comparisons. That function should take two arguments to be compared and "
|
||||
"then return a negative value for less-than, return zero if they are equal, "
|
||||
"or return a positive value for greater-than. For example, we can do:"
|
||||
msgstr ""
|
||||
"En Python 2.x, le tri permettait en paramètre une fonction optionnelle qui "
|
||||
"peut être appelée pour faire des comparaisons. Cette fonction devrait "
|
||||
"prendre deux arguments à comparer pour renvoyer une valeur négative pour "
|
||||
"inférieur-à, renvoyer zéro si ils sont égaux, ou renvoyer une valeur "
|
||||
"positive pour supérieur-à. Par exemple, nous pouvons faire :"
|
||||
|
||||
#: howto/sorting.rst:246
|
||||
#: howto/sorting.rst:254
|
||||
msgid "Or you can reverse the order of comparison with:"
|
||||
msgstr "Ou nous pouvons inverser l'ordre de comparaison avec :"
|
||||
|
||||
#: howto/sorting.rst:263
|
||||
msgid ""
|
||||
"To accommodate those situations, Python provides :class:`functools."
|
||||
"cmp_to_key` to wrap the comparison function to make it usable as a key "
|
||||
"function::"
|
||||
"When porting code from Python 2.x to 3.x, the situation can arise when you "
|
||||
"have the user supplying a comparison function and you need to convert that "
|
||||
"to a key function. The following wrapper makes that easy to do:"
|
||||
msgstr ""
|
||||
"En portant du code depuis Python 2.X vers 3.x, des problèmes peuvent "
|
||||
"survenir quand des utilisateurs fournissent une fonction de comparaison et "
|
||||
"qu'il faut convertir cette fonction en une fonction-clef. La fonction "
|
||||
"d'encapsulation suivante rend cela plus facile à faire ::"
|
||||
|
||||
#: howto/sorting.rst:253
|
||||
msgid "Odds and Ends"
|
||||
msgstr "Et n'oublions pas"
|
||||
#: howto/sorting.rst:294
|
||||
msgid "To convert to a key function, just wrap the old comparison function:"
|
||||
msgstr ""
|
||||
"Pour convertir une fonction clef, ils suffit d'encapsuler l'ancienne "
|
||||
"fonction de comparaison :"
|
||||
|
||||
#: howto/sorting.rst:255
|
||||
#, fuzzy
|
||||
#: howto/sorting.rst:305
|
||||
msgid ""
|
||||
"In Python 3.2, the :func:`functools.cmp_to_key` function was added to the :"
|
||||
"mod:`functools` module in the standard library."
|
||||
msgstr ""
|
||||
"En Python 3.2, la fonction :func:`functools.cmp_to_key` à été ajoutée au "
|
||||
"module :mod:`functools` dans la librairie standard."
|
||||
|
||||
#: howto/sorting.rst:309
|
||||
msgid "Odd and Ends"
|
||||
msgstr "Curiosités et conclusion"
|
||||
|
||||
#: howto/sorting.rst:311
|
||||
msgid ""
|
||||
"For locale aware sorting, use :func:`locale.strxfrm` for a key function or :"
|
||||
"func:`locale.strcoll` for a comparison function. This is necessary because "
|
||||
"\"alphabetical\" sort orderings can vary across cultures even if the "
|
||||
"underlying alphabet is the same."
|
||||
"func:`locale.strcoll` for a comparison function."
|
||||
msgstr ""
|
||||
"Pour du tri de texte localisé, utilisez :func:`locale.strxfrm` en tant que "
|
||||
"fonction clef ou :func:`locale.strcoll` comme fonction de comparaison."
|
||||
|
||||
#: howto/sorting.rst:260
|
||||
#: howto/sorting.rst:314
|
||||
msgid ""
|
||||
"The *reverse* parameter still maintains sort stability (so that records with "
|
||||
"equal keys retain the original order). Interestingly, that effect can be "
|
||||
|
@ -386,7 +416,7 @@ msgstr ""
|
|||
"cet effet peut être simulé sans le paramètre en utilisant la fonction "
|
||||
"native :func:`reversed` deux fois :"
|
||||
|
||||
#: howto/sorting.rst:274
|
||||
#: howto/sorting.rst:328
|
||||
msgid ""
|
||||
"The sort routines use ``<`` when making comparisons between two objects. So, "
|
||||
"it is easy to add a standard sort order to a class by defining an :meth:"
|
||||
|
@ -396,7 +426,7 @@ msgstr ""
|
|||
"utilisent l'opérateur ``<``. Il est donc facile d'ajouter un ordre de tri "
|
||||
"standard à une classe en définissant sa méthode :meth:`__lt__` ::"
|
||||
|
||||
#: howto/sorting.rst:284
|
||||
#: howto/sorting.rst:338
|
||||
msgid ""
|
||||
"However, note that ``<`` can fall back to using :meth:`__gt__` if :meth:"
|
||||
"`__lt__` is not implemented (see :func:`object.__lt__`)."
|
||||
|
@ -405,7 +435,7 @@ msgstr ""
|
|||
"`__gt__` si :meth:`__lt__` n'est pas implémentée ; voir :func:`object."
|
||||
"__lt__`."
|
||||
|
||||
#: howto/sorting.rst:287
|
||||
#: howto/sorting.rst:341
|
||||
msgid ""
|
||||
"Key functions need not depend directly on the objects being sorted. A key "
|
||||
"function can also access external resources. For instance, if the student "
|
||||
|
@ -417,67 +447,3 @@ msgstr ""
|
|||
"l'occurrence, si les grades des étudiants sont stockés dans un dictionnaire, "
|
||||
"ils peuvent être utilisés pour trier une liste différentes de noms "
|
||||
"d'étudiants :"
|
||||
|
||||
#~ msgid "The Old Way Using the *cmp* Parameter"
|
||||
#~ msgstr "La méthode traditionnelle d'utiliser le paramètre *cmp*"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Many constructs given in this HOWTO assume Python 2.4 or later. Before "
|
||||
#~ "that, there was no :func:`sorted` builtin and :meth:`list.sort` took no "
|
||||
#~ "keyword arguments. Instead, all of the Py2.x versions supported a *cmp* "
|
||||
#~ "parameter to handle user specified comparison functions."
|
||||
#~ msgstr ""
|
||||
#~ "Plusieurs construction données dans ce guide se basent sur Python 2.4 ou "
|
||||
#~ "plus. Avant cela, il n'y avait pas la fonction :func:`sorted` et la "
|
||||
#~ "méthode :meth:`list.sort` ne prenait pas d'arguments nommés. À la place, "
|
||||
#~ "toutes les versions Python 2.x utilisaient un paramètre *cmp* pour "
|
||||
#~ "prendre en charge les fonctions de comparaisons définies par les "
|
||||
#~ "utilisateurs."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "In Py3.0, the *cmp* parameter was removed entirely (as part of a larger "
|
||||
#~ "effort to simplify and unify the language, eliminating the conflict "
|
||||
#~ "between rich comparisons and the :meth:`__cmp__` magic method)."
|
||||
#~ msgstr ""
|
||||
#~ "En Py3.0, le paramètre *cmp* à été supprimé complètement (dans le cadre "
|
||||
#~ "d'un effort plus général pour simplifier et unifier le langage, en "
|
||||
#~ "éliminant le conflit entre les comparaisons riches et la méthode magique :"
|
||||
#~ "meth:`__cmp__`)."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "In Py2.x, sort allowed an optional function which can be called for doing "
|
||||
#~ "the comparisons. That function should take two arguments to be compared "
|
||||
#~ "and then return a negative value for less-than, return zero if they are "
|
||||
#~ "equal, or return a positive value for greater-than. For example, we can "
|
||||
#~ "do:"
|
||||
#~ msgstr ""
|
||||
#~ "En Python 2.x, le tri permettait en paramètre une fonction optionnelle "
|
||||
#~ "qui peut être appelée pour faire des comparaisons. Cette fonction devrait "
|
||||
#~ "prendre deux arguments à comparer pour renvoyer une valeur négative pour "
|
||||
#~ "inférieur-à, renvoyer zéro si ils sont égaux, ou renvoyer une valeur "
|
||||
#~ "positive pour supérieur-à. Par exemple, nous pouvons faire :"
|
||||
|
||||
#~ msgid "Or you can reverse the order of comparison with:"
|
||||
#~ msgstr "Ou nous pouvons inverser l'ordre de comparaison avec :"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "When porting code from Python 2.x to 3.x, the situation can arise when "
|
||||
#~ "you have the user supplying a comparison function and you need to convert "
|
||||
#~ "that to a key function. The following wrapper makes that easy to do:"
|
||||
#~ msgstr ""
|
||||
#~ "En portant du code depuis Python 2.X vers 3.x, des problèmes peuvent "
|
||||
#~ "survenir quand des utilisateurs fournissent une fonction de comparaison "
|
||||
#~ "et qu'il faut convertir cette fonction en une fonction-clef. La fonction "
|
||||
#~ "d'encapsulation suivante rend cela plus facile à faire ::"
|
||||
|
||||
#~ msgid "To convert to a key function, just wrap the old comparison function:"
|
||||
#~ msgstr ""
|
||||
#~ "Pour convertir une fonction clef, ils suffit d'encapsuler l'ancienne "
|
||||
#~ "fonction de comparaison :"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "In Python 3.2, the :func:`functools.cmp_to_key` function was added to "
|
||||
#~ "the :mod:`functools` module in the standard library."
|
||||
#~ msgstr ""
|
||||
#~ "En Python 3.2, la fonction :func:`functools.cmp_to_key` à été ajoutée au "
|
||||
#~ "module :mod:`functools` dans la librairie standard."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2021-12-11 17:16+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
# Copyright (C) 2001-2018, Python Software Foundation
|
||||
# For licence information, see README file.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-23 09:57+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: includes/wasm-notavail.rst:-1
|
||||
msgid ":ref:`Availability <availability>`: not Emscripten, not WASI."
|
||||
msgstr ""
|
||||
|
||||
#: includes/wasm-notavail.rst:5
|
||||
msgid ""
|
||||
"This module does not work or is not available on WebAssembly platforms "
|
||||
"``wasm32-emscripten`` and ``wasm32-wasi``. See :ref:`wasm-availability` for "
|
||||
"more information."
|
||||
msgstr ""
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 15:59+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-02-23 18:50+0100\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
246
library/2to3.po
246
library/2to3.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 15:44+0200\n"
|
||||
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -35,19 +35,11 @@ msgstr ""
|
|||
"utilisée par *2to3* est cependant une bibliothèque flexible et générique, il "
|
||||
"est donc possible d'écrire vos propres correcteurs pour *2to3*."
|
||||
|
||||
#: library/2to3.rst:19
|
||||
msgid ""
|
||||
"The ``lib2to3`` module was marked pending for deprecation in Python 3.9 "
|
||||
"(raising :exc:`PendingDeprecationWarning` on import) and fully deprecated in "
|
||||
"Python 3.11 (raising :exc:`DeprecationWarning`). The ``2to3`` tool is part "
|
||||
"of that. It will be removed in Python 3.13."
|
||||
msgstr ""
|
||||
|
||||
#: library/2to3.rst:23
|
||||
#: library/2to3.rst:18
|
||||
msgid "Using 2to3"
|
||||
msgstr "Utilisation de *2to3*"
|
||||
|
||||
#: library/2to3.rst:25
|
||||
#: library/2to3.rst:20
|
||||
msgid ""
|
||||
"2to3 will usually be installed with the Python interpreter as a script. It "
|
||||
"is also located in the :file:`Tools/scripts` directory of the Python root."
|
||||
|
@ -56,7 +48,7 @@ msgstr ""
|
|||
"script. Il est également situé dans le dossier :file:`Tools/scripts` à "
|
||||
"racine de Python."
|
||||
|
||||
#: library/2to3.rst:28
|
||||
#: library/2to3.rst:23
|
||||
msgid ""
|
||||
"2to3's basic arguments are a list of files or directories to transform. The "
|
||||
"directories are recursively traversed for Python sources."
|
||||
|
@ -65,16 +57,16 @@ msgstr ""
|
|||
"à transformer. Les répertoires sont parcourus récursivement pour trouver "
|
||||
"les sources Python."
|
||||
|
||||
#: library/2to3.rst:31
|
||||
#: library/2to3.rst:26
|
||||
msgid "Here is a sample Python 2.x source file, :file:`example.py`::"
|
||||
msgstr "Voici un exemple de fichier source Python 2.x, :file:`example.py` ::"
|
||||
|
||||
#: library/2to3.rst:39
|
||||
#: library/2to3.rst:34
|
||||
msgid "It can be converted to Python 3.x code via 2to3 on the command line:"
|
||||
msgstr ""
|
||||
"Il peut être converti en code Python 3.x par *2to3* en ligne de commande :"
|
||||
|
||||
#: library/2to3.rst:45
|
||||
#: library/2to3.rst:40
|
||||
msgid ""
|
||||
"A diff against the original source file is printed. 2to3 can also write the "
|
||||
"needed modifications right back to the source file. (A backup of the "
|
||||
|
@ -87,11 +79,11 @@ msgstr ""
|
|||
"l'option :option:`!-n` soit également donnée.) L'écriture des modifications "
|
||||
"est activée avec l'option :option:`!-w` :"
|
||||
|
||||
#: library/2to3.rst:54
|
||||
#: library/2to3.rst:49
|
||||
msgid "After transformation, :file:`example.py` looks like this::"
|
||||
msgstr "Après transformation, :file:`example.py` ressemble à ::"
|
||||
|
||||
#: library/2to3.rst:62
|
||||
#: library/2to3.rst:57
|
||||
msgid ""
|
||||
"Comments and exact indentation are preserved throughout the translation "
|
||||
"process."
|
||||
|
@ -99,7 +91,7 @@ msgstr ""
|
|||
"Les commentaires et les retraits sont préservés tout au long du processus de "
|
||||
"traduction."
|
||||
|
||||
#: library/2to3.rst:64
|
||||
#: library/2to3.rst:59
|
||||
msgid ""
|
||||
"By default, 2to3 runs a set of :ref:`predefined fixers <2to3-fixers>`. The :"
|
||||
"option:`!-l` flag lists all available fixers. An explicit set of fixers to "
|
||||
|
@ -114,12 +106,12 @@ msgstr ""
|
|||
"L'exemple suivant exécute uniquement les ``import`` et les correcteurs "
|
||||
"``has_key`` :"
|
||||
|
||||
#: library/2to3.rst:73
|
||||
#: library/2to3.rst:68
|
||||
msgid "This command runs every fixer except the ``apply`` fixer:"
|
||||
msgstr ""
|
||||
"Cette commande exécute tous les correcteurs, sauf le correcteurs ``apply`` :"
|
||||
|
||||
#: library/2to3.rst:79
|
||||
#: library/2to3.rst:74
|
||||
msgid ""
|
||||
"Some fixers are *explicit*, meaning they aren't run by default and must be "
|
||||
"listed on the command line to be run. Here, in addition to the default "
|
||||
|
@ -130,11 +122,11 @@ msgstr ""
|
|||
"exécuter. Ici, en plus des correcteurs par défaut, le correcteur ``idioms`` "
|
||||
"est exécuté :"
|
||||
|
||||
#: library/2to3.rst:87
|
||||
#: library/2to3.rst:82
|
||||
msgid "Notice how passing ``all`` enables all default fixers."
|
||||
msgstr "Notez que passer ``all`` active tous les correcteurs par défaut."
|
||||
|
||||
#: library/2to3.rst:89
|
||||
#: library/2to3.rst:84
|
||||
msgid ""
|
||||
"Sometimes 2to3 will find a place in your source code that needs to be "
|
||||
"changed, but 2to3 cannot fix automatically. In this case, 2to3 will print a "
|
||||
|
@ -146,7 +138,7 @@ msgstr ""
|
|||
"*2to3* affiche un avertissement sous la comparaison d'un fichier. Vous "
|
||||
"devez traiter l'avertissement afin d'avoir un code conforme à Python 3.x."
|
||||
|
||||
#: library/2to3.rst:94
|
||||
#: library/2to3.rst:89
|
||||
msgid ""
|
||||
"2to3 can also refactor doctests. To enable this mode, use the :option:`!-d` "
|
||||
"flag. Note that *only* doctests will be refactored. This also doesn't "
|
||||
|
@ -159,7 +151,7 @@ msgstr ""
|
|||
"*doctests* tels que des exemples dans un document *reST* peuvent également "
|
||||
"être réusinés avec cette option."
|
||||
|
||||
#: library/2to3.rst:99
|
||||
#: library/2to3.rst:94
|
||||
msgid ""
|
||||
"The :option:`!-v` option enables output of more information on the "
|
||||
"translation process."
|
||||
|
@ -167,7 +159,7 @@ msgstr ""
|
|||
"L'option :option:`!-v` augmente la quantité de messages générés par le "
|
||||
"processus de traduction."
|
||||
|
||||
#: library/2to3.rst:102
|
||||
#: library/2to3.rst:97
|
||||
msgid ""
|
||||
"Since some print statements can be parsed as function calls or statements, "
|
||||
"2to3 cannot always read files containing the print function. When 2to3 "
|
||||
|
@ -189,7 +181,7 @@ msgstr ""
|
|||
"converties. Notez également l'usage de l'option :option:`!-e` pour "
|
||||
"transformer :func:`exec` en fonction."
|
||||
|
||||
#: library/2to3.rst:110
|
||||
#: library/2to3.rst:105
|
||||
msgid ""
|
||||
"The :option:`!-o` or :option:`!--output-dir` option allows specification of "
|
||||
"an alternate directory for processed output files to be written to. The :"
|
||||
|
@ -201,11 +193,11 @@ msgstr ""
|
|||
"est requise quand on les utilise comme fichiers de sauvegarde qui n'ont pas "
|
||||
"de sens si les fichiers d'entrée ne sont pas écrasés."
|
||||
|
||||
#: library/2to3.rst:115
|
||||
#: library/2to3.rst:110
|
||||
msgid "The :option:`!-o` option was added."
|
||||
msgstr "L'option :option:`!-o` a été ajoutée."
|
||||
|
||||
#: library/2to3.rst:118
|
||||
#: library/2to3.rst:113
|
||||
msgid ""
|
||||
"The :option:`!-W` or :option:`!--write-unchanged-files` flag tells 2to3 to "
|
||||
"always write output files even if no changes were required to the file. "
|
||||
|
@ -220,11 +212,11 @@ msgstr ""
|
|||
"répertoire à l'autre. Cette option implique :option:`!-w` sans quoi elle "
|
||||
"n'aurait pas de sens."
|
||||
|
||||
#: library/2to3.rst:124
|
||||
#: library/2to3.rst:119
|
||||
msgid "The :option:`!-W` flag was added."
|
||||
msgstr "L'option :option:`!-W` a été ajoutée."
|
||||
|
||||
#: library/2to3.rst:127
|
||||
#: library/2to3.rst:122
|
||||
msgid ""
|
||||
"The :option:`!--add-suffix` option specifies a string to append to all "
|
||||
"output filenames. The :option:`!-n` flag is required when specifying this "
|
||||
|
@ -235,25 +227,25 @@ msgstr ""
|
|||
"cas, puisque sauvegarder n'est pas nécessaire en écrivant dans des fichiers "
|
||||
"différents. Exemple:"
|
||||
|
||||
#: library/2to3.rst:135
|
||||
#: library/2to3.rst:130
|
||||
msgid "Will cause a converted file named ``example.py3`` to be written."
|
||||
msgstr "Écrit un fichier converti nommé ``example.py3``."
|
||||
|
||||
#: library/2to3.rst:137
|
||||
#: library/2to3.rst:132
|
||||
msgid "The :option:`!--add-suffix` option was added."
|
||||
msgstr "L'option :option:`!--add-suffix` est ajoutée."
|
||||
|
||||
#: library/2to3.rst:140
|
||||
#: library/2to3.rst:135
|
||||
msgid "To translate an entire project from one directory tree to another use:"
|
||||
msgstr ""
|
||||
"Pour traduire un projet entier d'une arborescence de répertoires à une "
|
||||
"autre, utilisez :"
|
||||
|
||||
#: library/2to3.rst:150
|
||||
#: library/2to3.rst:145
|
||||
msgid "Fixers"
|
||||
msgstr "Correcteurs"
|
||||
|
||||
#: library/2to3.rst:152
|
||||
#: library/2to3.rst:147
|
||||
msgid ""
|
||||
"Each step of transforming code is encapsulated in a fixer. The command "
|
||||
"``2to3 -l`` lists them. As :ref:`documented above <2to3-using>`, each can "
|
||||
|
@ -264,7 +256,7 @@ msgstr ""
|
|||
"dessus <2to3-using>`, chacun peut être activé ou désactivé "
|
||||
"individuellement. Ils sont décrits plus en détails ici."
|
||||
|
||||
#: library/2to3.rst:159
|
||||
#: library/2to3.rst:154
|
||||
msgid ""
|
||||
"Removes usage of :func:`apply`. For example ``apply(function, *args, "
|
||||
"**kwargs)`` is converted to ``function(*args, **kwargs)``."
|
||||
|
@ -272,103 +264,103 @@ msgstr ""
|
|||
"Supprime l'usage d':func:`apply`. Par exemple, ``apply(function, *args, "
|
||||
"**kwargs)`` est converti en ``function(*args, **kwargs)``."
|
||||
|
||||
#: library/2to3.rst:164
|
||||
#: library/2to3.rst:159
|
||||
msgid "Replaces deprecated :mod:`unittest` method names with the correct ones."
|
||||
msgstr ""
|
||||
"Remplace les noms de méthodes obsolètes du module :mod:`unittest` par les "
|
||||
"bons."
|
||||
|
||||
#: library/2to3.rst:356
|
||||
#: library/2to3.rst:351
|
||||
msgid "From"
|
||||
msgstr "De"
|
||||
|
||||
#: library/2to3.rst:356
|
||||
#: library/2to3.rst:351
|
||||
msgid "To"
|
||||
msgstr "À"
|
||||
|
||||
#: library/2to3.rst:169
|
||||
#: library/2to3.rst:164
|
||||
msgid "``failUnlessEqual(a, b)``"
|
||||
msgstr "``failUnlessEqual(a, b)``"
|
||||
|
||||
#: library/2to3.rst:171
|
||||
#: library/2to3.rst:166
|
||||
msgid ":meth:`assertEqual(a, b) <unittest.TestCase.assertEqual>`"
|
||||
msgstr ":meth:`assertEqual(a, b) <unittest.TestCase.assertEqual>`"
|
||||
|
||||
#: library/2to3.rst:171
|
||||
#: library/2to3.rst:166
|
||||
msgid "``assertEquals(a, b)``"
|
||||
msgstr "``assertEquals(a, b)``"
|
||||
|
||||
#: library/2to3.rst:173
|
||||
#: library/2to3.rst:168
|
||||
msgid "``failIfEqual(a, b)``"
|
||||
msgstr "``failIfEqual(a, b)``"
|
||||
|
||||
#: library/2to3.rst:175
|
||||
#: library/2to3.rst:170
|
||||
msgid ":meth:`assertNotEqual(a, b) <unittest.TestCase.assertNotEqual>`"
|
||||
msgstr ":meth:`assertNotEqual(a, b) <unittest.TestCase.assertNotEqual>`"
|
||||
|
||||
#: library/2to3.rst:175
|
||||
#: library/2to3.rst:170
|
||||
msgid "``assertNotEquals(a, b)``"
|
||||
msgstr "``assertNotEquals(a, b)``"
|
||||
|
||||
#: library/2to3.rst:177
|
||||
#: library/2to3.rst:172
|
||||
msgid "``failUnless(a)``"
|
||||
msgstr "``failUnless(a)``"
|
||||
|
||||
#: library/2to3.rst:179
|
||||
#: library/2to3.rst:174
|
||||
msgid ":meth:`assertTrue(a) <unittest.TestCase.assertTrue>`"
|
||||
msgstr ":meth:`assertTrue(a) <unittest.TestCase.assertTrue>`"
|
||||
|
||||
#: library/2to3.rst:179
|
||||
#: library/2to3.rst:174
|
||||
msgid "``assert_(a)``"
|
||||
msgstr "``assert_(a)``"
|
||||
|
||||
#: library/2to3.rst:181
|
||||
#: library/2to3.rst:176
|
||||
msgid "``failIf(a)``"
|
||||
msgstr "``failIf(a)``"
|
||||
|
||||
#: library/2to3.rst:181
|
||||
#: library/2to3.rst:176
|
||||
msgid ":meth:`assertFalse(a) <unittest.TestCase.assertFalse>`"
|
||||
msgstr ":meth:`assertFalse(a) <unittest.TestCase.assertFalse>`"
|
||||
|
||||
#: library/2to3.rst:183
|
||||
#: library/2to3.rst:178
|
||||
msgid "``failUnlessRaises(exc, cal)``"
|
||||
msgstr "``failUnlessRaises(exc, cal)``"
|
||||
|
||||
#: library/2to3.rst:183
|
||||
#: library/2to3.rst:178
|
||||
msgid ":meth:`assertRaises(exc, cal) <unittest.TestCase.assertRaises>`"
|
||||
msgstr ":meth:`assertRaises(exc, cal) <unittest.TestCase.assertRaises>`"
|
||||
|
||||
#: library/2to3.rst:185
|
||||
#: library/2to3.rst:180
|
||||
msgid "``failUnlessAlmostEqual(a, b)``"
|
||||
msgstr "``failUnlessAlmostEqual(a, b)``"
|
||||
|
||||
#: library/2to3.rst:187
|
||||
#: library/2to3.rst:182
|
||||
msgid ":meth:`assertAlmostEqual(a, b) <unittest.TestCase.assertAlmostEqual>`"
|
||||
msgstr ":meth:`assertAlmostEqual(a, b) <unittest.TestCase.assertAlmostEqual>`"
|
||||
|
||||
#: library/2to3.rst:187
|
||||
#: library/2to3.rst:182
|
||||
msgid "``assertAlmostEquals(a, b)``"
|
||||
msgstr "``assertAlmostEquals(a, b)``"
|
||||
|
||||
#: library/2to3.rst:189
|
||||
#: library/2to3.rst:184
|
||||
msgid "``failIfAlmostEqual(a, b)``"
|
||||
msgstr "``failIfAlmostEqual(a, b)``"
|
||||
|
||||
#: library/2to3.rst:191
|
||||
#: library/2to3.rst:186
|
||||
msgid ""
|
||||
":meth:`assertNotAlmostEqual(a, b) <unittest.TestCase.assertNotAlmostEqual>`"
|
||||
msgstr ""
|
||||
":meth:`assertNotAlmostEqual(a, b) <unittest.TestCase.assertNotAlmostEqual>`"
|
||||
|
||||
#: library/2to3.rst:191
|
||||
#: library/2to3.rst:186
|
||||
msgid "``assertNotAlmostEquals(a, b)``"
|
||||
msgstr "``assertNotAlmostEquals(a, b)``"
|
||||
|
||||
#: library/2to3.rst:197
|
||||
#: library/2to3.rst:192
|
||||
msgid "Converts :class:`basestring` to :class:`str`."
|
||||
msgstr "Convertit une :class:`basestring` en :class:`str`."
|
||||
|
||||
#: library/2to3.rst:201
|
||||
#: library/2to3.rst:196
|
||||
msgid ""
|
||||
"Converts :class:`buffer` to :class:`memoryview`. This fixer is optional "
|
||||
"because the :class:`memoryview` API is similar but not exactly the same as "
|
||||
|
@ -378,7 +370,7 @@ msgstr ""
|
|||
"optionnel car l'API :class:`memoryview` est similaire mais pas exactement "
|
||||
"pareil que celle de :class:`buffer`."
|
||||
|
||||
#: library/2to3.rst:207
|
||||
#: library/2to3.rst:202
|
||||
msgid ""
|
||||
"Fixes dictionary iteration methods. :meth:`dict.iteritems` is converted to :"
|
||||
"meth:`dict.items`, :meth:`dict.iterkeys` to :meth:`dict.keys`, and :meth:"
|
||||
|
@ -397,15 +389,15 @@ msgstr ""
|
|||
"items`, :meth:`dict.keys` et :meth:`dict.values` dans un appel à :class:"
|
||||
"`list`."
|
||||
|
||||
#: library/2to3.rst:217
|
||||
#: library/2to3.rst:212
|
||||
msgid "Converts ``except X, T`` to ``except X as T``."
|
||||
msgstr "Convertit ``except X, T`` en ``except X as T``."
|
||||
|
||||
#: library/2to3.rst:221
|
||||
#: library/2to3.rst:216
|
||||
msgid "Converts the ``exec`` statement to the :func:`exec` function."
|
||||
msgstr "Convertit l'instruction ``exec`` en fonction :func:`exec`."
|
||||
|
||||
#: library/2to3.rst:225
|
||||
#: library/2to3.rst:220
|
||||
msgid ""
|
||||
"Removes usage of :func:`execfile`. The argument to :func:`execfile` is "
|
||||
"wrapped in calls to :func:`open`, :func:`compile`, and :func:`exec`."
|
||||
|
@ -413,7 +405,7 @@ msgstr ""
|
|||
"Supprime l'usage de :func:`execfile`. L'argument de :func:`execfile` est "
|
||||
"encapsulé dans des appels à :func:`open`, :func:`compile` et :func:`exec`."
|
||||
|
||||
#: library/2to3.rst:230
|
||||
#: library/2to3.rst:225
|
||||
msgid ""
|
||||
"Changes assignment of :attr:`sys.exitfunc` to use of the :mod:`atexit` "
|
||||
"module."
|
||||
|
@ -421,11 +413,11 @@ msgstr ""
|
|||
"Change l'affectation de :attr:`sys.exitfunc` pour utiliser le module :mod:"
|
||||
"`atexit`."
|
||||
|
||||
#: library/2to3.rst:235
|
||||
#: library/2to3.rst:230
|
||||
msgid "Wraps :func:`filter` usage in a :class:`list` call."
|
||||
msgstr "Encapsule l'usage de :func:`filter` dans un appel à :class:`list`."
|
||||
|
||||
#: library/2to3.rst:239
|
||||
#: library/2to3.rst:234
|
||||
msgid ""
|
||||
"Fixes function attributes that have been renamed. For example, "
|
||||
"``my_function.func_closure`` is converted to ``my_function.__closure__``."
|
||||
|
@ -433,19 +425,19 @@ msgstr ""
|
|||
"Fixe les attributs de fonction ayant été renommés. Par exemple, "
|
||||
"``my_function.func_closure`` est converti en ``my_function.__closure__``."
|
||||
|
||||
#: library/2to3.rst:244
|
||||
#: library/2to3.rst:239
|
||||
msgid "Removes ``from __future__ import new_feature`` statements."
|
||||
msgstr "Supprime les instructions ``from __future__ import new_feature``."
|
||||
|
||||
#: library/2to3.rst:248
|
||||
#: library/2to3.rst:243
|
||||
msgid "Renames :func:`os.getcwdu` to :func:`os.getcwd`."
|
||||
msgstr "Renomme :func:`os.getcwdu` en :func:`os.getcwd`."
|
||||
|
||||
#: library/2to3.rst:252
|
||||
#: library/2to3.rst:247
|
||||
msgid "Changes ``dict.has_key(key)`` to ``key in dict``."
|
||||
msgstr "Change ``dict.has_key(key)`` en ``key in dict``."
|
||||
|
||||
#: library/2to3.rst:256
|
||||
#: library/2to3.rst:251
|
||||
msgid ""
|
||||
"This optional fixer performs several transformations that make Python code "
|
||||
"more idiomatic. Type comparisons like ``type(x) is SomeClass`` and "
|
||||
|
@ -460,20 +452,20 @@ msgstr ""
|
|||
"aussi d'utiliser :func:`sorted` aux endroits appropriés. Par exemple, ce "
|
||||
"bloc ::"
|
||||
|
||||
#: library/2to3.rst:265
|
||||
#: library/2to3.rst:260
|
||||
msgid "is changed to ::"
|
||||
msgstr "est transformé en ::"
|
||||
|
||||
#: library/2to3.rst:271
|
||||
#: library/2to3.rst:266
|
||||
msgid "Detects sibling imports and converts them to relative imports."
|
||||
msgstr ""
|
||||
"Détecte les importations voisines et les convertit en importations relatives."
|
||||
|
||||
#: library/2to3.rst:275
|
||||
#: library/2to3.rst:270
|
||||
msgid "Handles module renames in the standard library."
|
||||
msgstr "Gère les renommages de modules dans la bibliothèque standard."
|
||||
|
||||
#: library/2to3.rst:279
|
||||
#: library/2to3.rst:274
|
||||
msgid ""
|
||||
"Handles other modules renames in the standard library. It is separate from "
|
||||
"the :2to3fixer:`imports` fixer only because of technical limitations."
|
||||
|
@ -482,15 +474,15 @@ msgstr ""
|
|||
"distinct de :2to3fixer:`imports` seulement en raison de limitations "
|
||||
"techniques."
|
||||
|
||||
#: library/2to3.rst:284
|
||||
#: library/2to3.rst:279
|
||||
msgid "Converts ``input(prompt)`` to ``eval(input(prompt))``."
|
||||
msgstr "Convertit ``input(prompt)`` en ``eval(input(prompt))``."
|
||||
|
||||
#: library/2to3.rst:288
|
||||
#: library/2to3.rst:283
|
||||
msgid "Converts :func:`intern` to :func:`sys.intern`."
|
||||
msgstr "Convertit :func:`intern` en :func:`sys.intern`."
|
||||
|
||||
#: library/2to3.rst:292
|
||||
#: library/2to3.rst:287
|
||||
msgid ""
|
||||
"Fixes duplicate types in the second argument of :func:`isinstance`. For "
|
||||
"example, ``isinstance(x, (int, int))`` is converted to ``isinstance(x, "
|
||||
|
@ -502,7 +494,7 @@ msgstr ""
|
|||
"int)`` et ``isinstance(x, (int, float, int))`` est converti en "
|
||||
"``isinstance(x, (int, float))``."
|
||||
|
||||
#: library/2to3.rst:299
|
||||
#: library/2to3.rst:294
|
||||
msgid ""
|
||||
"Removes imports of :func:`itertools.ifilter`, :func:`itertools.izip`, and :"
|
||||
"func:`itertools.imap`. Imports of :func:`itertools.ifilterfalse` are also "
|
||||
|
@ -512,7 +504,7 @@ msgstr ""
|
|||
"izip` et :func:`itertools.imap`. Les importations de :func:`itertools."
|
||||
"ifilterfalse` sont aussi changées en :func:`itertools.filterfalse`."
|
||||
|
||||
#: library/2to3.rst:305
|
||||
#: library/2to3.rst:300
|
||||
msgid ""
|
||||
"Changes usage of :func:`itertools.ifilter`, :func:`itertools.izip`, and :"
|
||||
"func:`itertools.imap` to their built-in equivalents. :func:`itertools."
|
||||
|
@ -522,11 +514,11 @@ msgstr ""
|
|||
"`itertools.imap` en leurs équivalents intégrés. :func:`itertools."
|
||||
"ifilterfalse` est changé en :func:`itertools.filterfalse`."
|
||||
|
||||
#: library/2to3.rst:311
|
||||
#: library/2to3.rst:306
|
||||
msgid "Renames :class:`long` to :class:`int`."
|
||||
msgstr "Renomme :class:`long` en :class:`int`."
|
||||
|
||||
#: library/2to3.rst:315
|
||||
#: library/2to3.rst:310
|
||||
msgid ""
|
||||
"Wraps :func:`map` in a :class:`list` call. It also changes ``map(None, x)`` "
|
||||
"to ``list(x)``. Using ``from future_builtins import map`` disables this "
|
||||
|
@ -536,7 +528,7 @@ msgstr ""
|
|||
"``map(None, x)`` en ``list(x)``. L'usage de ``from future_builtins import "
|
||||
"map`` désactive ce correcteur."
|
||||
|
||||
#: library/2to3.rst:321
|
||||
#: library/2to3.rst:316
|
||||
msgid ""
|
||||
"Converts the old metaclass syntax (``__metaclass__ = Meta`` in the class "
|
||||
"body) to the new (``class X(metaclass=Meta)``)."
|
||||
|
@ -544,7 +536,7 @@ msgstr ""
|
|||
"Convertit l'ancienne syntaxe de métaclasse (``__metaclass__ = Meta`` dans le "
|
||||
"corps de la classe) à la nouvelle (``class X(metaclasse=Meta)``)."
|
||||
|
||||
#: library/2to3.rst:326
|
||||
#: library/2to3.rst:321
|
||||
msgid ""
|
||||
"Fixes old method attribute names. For example, ``meth.im_func`` is "
|
||||
"converted to ``meth.__func__``."
|
||||
|
@ -552,11 +544,11 @@ msgstr ""
|
|||
"Fixe les anciens noms d'attributs de méthodes. Par exemple, ``meth."
|
||||
"im_func`` est converti en ``meth.__func__``."
|
||||
|
||||
#: library/2to3.rst:331
|
||||
#: library/2to3.rst:326
|
||||
msgid "Converts the old not-equal syntax, ``<>``, to ``!=``."
|
||||
msgstr "Convertit l'ancienne syntaxe d'inégalité, ``<>``, en ``!=``."
|
||||
|
||||
#: library/2to3.rst:335
|
||||
#: library/2to3.rst:330
|
||||
msgid ""
|
||||
"Converts the use of iterator's :meth:`~iterator.next` methods to the :func:"
|
||||
"`next` function. It also renames :meth:`next` methods to :meth:`~iterator."
|
||||
|
@ -566,20 +558,20 @@ msgstr ""
|
|||
"func:`next`. Renomme également les méthodes :meth:`next` en :meth:"
|
||||
"`~iterator.__next__`."
|
||||
|
||||
#: library/2to3.rst:341
|
||||
#: library/2to3.rst:336
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Renames definitions of methods called :meth:`__nonzero__` to :meth:`~object."
|
||||
"__bool__`."
|
||||
msgstr "Renomme :meth:`__nonzero__` en :meth:`~object.__bool__`."
|
||||
|
||||
#: library/2to3.rst:346
|
||||
#: library/2to3.rst:341
|
||||
msgid "Converts octal literals into the new syntax."
|
||||
msgstr ""
|
||||
"Convertit les nombres écrits littéralement en octal dans leur nouvelle "
|
||||
"syntaxe."
|
||||
|
||||
#: library/2to3.rst:350
|
||||
#: library/2to3.rst:345
|
||||
msgid ""
|
||||
"Converts calls to various functions in the :mod:`operator` module to other, "
|
||||
"but equivalent, function calls. When needed, the appropriate ``import`` "
|
||||
|
@ -591,63 +583,63 @@ msgstr ""
|
|||
"``import`` appropriées sont ajoutées, e.g. ``import collections.abc``. Les "
|
||||
"correspondances suivantes sont appliquées :"
|
||||
|
||||
#: library/2to3.rst:358
|
||||
#: library/2to3.rst:353
|
||||
msgid "``operator.isCallable(obj)``"
|
||||
msgstr "``operator.isCallable(obj)``"
|
||||
|
||||
#: library/2to3.rst:358
|
||||
#: library/2to3.rst:353
|
||||
msgid "``callable(obj)``"
|
||||
msgstr "``callable(obj)``"
|
||||
|
||||
#: library/2to3.rst:359
|
||||
#: library/2to3.rst:354
|
||||
msgid "``operator.sequenceIncludes(obj)``"
|
||||
msgstr "``operator.sequenceIncludes(obj)``"
|
||||
|
||||
#: library/2to3.rst:359
|
||||
#: library/2to3.rst:354
|
||||
msgid "``operator.contains(obj)``"
|
||||
msgstr "``operator.contains(obj)``"
|
||||
|
||||
#: library/2to3.rst:360
|
||||
#: library/2to3.rst:355
|
||||
msgid "``operator.isSequenceType(obj)``"
|
||||
msgstr "``operator.isSequenceType(obj)``"
|
||||
|
||||
#: library/2to3.rst:360
|
||||
#: library/2to3.rst:355
|
||||
msgid "``isinstance(obj, collections.abc.Sequence)``"
|
||||
msgstr "``isinstance(obj, collections.abc.Sequence)``"
|
||||
|
||||
#: library/2to3.rst:361
|
||||
#: library/2to3.rst:356
|
||||
msgid "``operator.isMappingType(obj)``"
|
||||
msgstr "``operator.isMappingType(obj)``"
|
||||
|
||||
#: library/2to3.rst:361
|
||||
#: library/2to3.rst:356
|
||||
msgid "``isinstance(obj, collections.abc.Mapping)``"
|
||||
msgstr "``isinstance(obj, collections.abc.Mapping)``"
|
||||
|
||||
#: library/2to3.rst:362
|
||||
#: library/2to3.rst:357
|
||||
msgid "``operator.isNumberType(obj)``"
|
||||
msgstr "``operator.isNumberType(obj)``"
|
||||
|
||||
#: library/2to3.rst:362
|
||||
#: library/2to3.rst:357
|
||||
msgid "``isinstance(obj, numbers.Number)``"
|
||||
msgstr "``isinstance(obj, numbers.Number)``"
|
||||
|
||||
#: library/2to3.rst:363
|
||||
#: library/2to3.rst:358
|
||||
msgid "``operator.repeat(obj, n)``"
|
||||
msgstr "``operator.repeat(obj, n)``"
|
||||
|
||||
#: library/2to3.rst:363
|
||||
#: library/2to3.rst:358
|
||||
msgid "``operator.mul(obj, n)``"
|
||||
msgstr "``operator.mul(obj, n)``"
|
||||
|
||||
#: library/2to3.rst:364
|
||||
#: library/2to3.rst:359
|
||||
msgid "``operator.irepeat(obj, n)``"
|
||||
msgstr "``operator.irepeat(obj, n)``"
|
||||
|
||||
#: library/2to3.rst:364
|
||||
#: library/2to3.rst:359
|
||||
msgid "``operator.imul(obj, n)``"
|
||||
msgstr "``operator.imul(obj, n)``"
|
||||
|
||||
#: library/2to3.rst:369
|
||||
#: library/2to3.rst:364
|
||||
msgid ""
|
||||
"Add extra parenthesis where they are required in list comprehensions. For "
|
||||
"example, ``[x for x in 1, 2]`` becomes ``[x for x in (1, 2)]``."
|
||||
|
@ -656,11 +648,11 @@ msgstr ""
|
|||
"les listes en compréhension. Par exemple, ``[x for x in 1, 2]`` devient "
|
||||
"``[x for x in (1, 2)]``."
|
||||
|
||||
#: library/2to3.rst:374
|
||||
#: library/2to3.rst:369
|
||||
msgid "Converts the ``print`` statement to the :func:`print` function."
|
||||
msgstr "Convertit l'instruction ``print`` en fonction :func:`print`."
|
||||
|
||||
#: library/2to3.rst:378
|
||||
#: library/2to3.rst:373
|
||||
msgid ""
|
||||
"Converts ``raise E, V`` to ``raise E(V)``, and ``raise E, V, T`` to ``raise "
|
||||
"E(V).with_traceback(T)``. If ``E`` is a tuple, the translation will be "
|
||||
|
@ -671,30 +663,30 @@ msgstr ""
|
|||
"incorrecte puisque la substitution de *n*-uplets aux exceptions a été "
|
||||
"supprimée en 3.0."
|
||||
|
||||
#: library/2to3.rst:384
|
||||
#: library/2to3.rst:379
|
||||
msgid "Converts :func:`raw_input` to :func:`input`."
|
||||
msgstr "Convertit :func:`raw_input` en :func:`input`."
|
||||
|
||||
#: library/2to3.rst:388
|
||||
#: library/2to3.rst:383
|
||||
msgid "Handles the move of :func:`reduce` to :func:`functools.reduce`."
|
||||
msgstr "Gère le déplacement de :func:`reduce` à :func:`functools.reduce`."
|
||||
|
||||
#: library/2to3.rst:392
|
||||
#: library/2to3.rst:387
|
||||
msgid "Converts :func:`reload` to :func:`importlib.reload`."
|
||||
msgstr ""
|
||||
"Convertit les appels à :func:`reload` en appels à :func:`importlib.reload`."
|
||||
|
||||
#: library/2to3.rst:396
|
||||
#: library/2to3.rst:391
|
||||
msgid "Changes :data:`sys.maxint` to :data:`sys.maxsize`."
|
||||
msgstr "Change :data:`sys.maxint` en :data:`sys.maxsize`."
|
||||
|
||||
#: library/2to3.rst:400
|
||||
#: library/2to3.rst:395
|
||||
msgid "Replaces backtick repr with the :func:`repr` function."
|
||||
msgstr ""
|
||||
"Remplace les accents graves utilisés comme ``repr`` par des appels à :func:"
|
||||
"`repr`."
|
||||
|
||||
#: library/2to3.rst:404
|
||||
#: library/2to3.rst:399
|
||||
msgid ""
|
||||
"Replaces use of the :class:`set` constructor with set literals. This fixer "
|
||||
"is optional."
|
||||
|
@ -702,11 +694,11 @@ msgstr ""
|
|||
"Remplace l'usage du constructeur de :class:`set` par les ensembles "
|
||||
"littéraux. Ce correcteur est optionnel."
|
||||
|
||||
#: library/2to3.rst:409
|
||||
#: library/2to3.rst:404
|
||||
msgid "Renames :exc:`StandardError` to :exc:`Exception`."
|
||||
msgstr "Renomme :exc:`StandardError` en :exc:`Exception`."
|
||||
|
||||
#: library/2to3.rst:413
|
||||
#: library/2to3.rst:408
|
||||
msgid ""
|
||||
"Changes the deprecated :data:`sys.exc_value`, :data:`sys.exc_type`, :data:"
|
||||
"`sys.exc_traceback` to use :func:`sys.exc_info`."
|
||||
|
@ -714,12 +706,12 @@ msgstr ""
|
|||
"Change les :data:`sys.exc_value`, :data:`sys.exc_type`, :data:`sys."
|
||||
"exc_traceback` dépréciés en :func:`sys.exc_info`."
|
||||
|
||||
#: library/2to3.rst:418
|
||||
#: library/2to3.rst:413
|
||||
msgid "Fixes the API change in generator's :meth:`throw` method."
|
||||
msgstr ""
|
||||
"Fixe le changement de l'API dans la méthode :meth:`throw` du générateur."
|
||||
|
||||
#: library/2to3.rst:422
|
||||
#: library/2to3.rst:417
|
||||
msgid ""
|
||||
"Removes implicit tuple parameter unpacking. This fixer inserts temporary "
|
||||
"variables."
|
||||
|
@ -727,7 +719,7 @@ msgstr ""
|
|||
"Supprime la décompression implicite des paramètres d'un *n*-uplet. Ce "
|
||||
"correcteur ajoute des variables temporaires."
|
||||
|
||||
#: library/2to3.rst:427
|
||||
#: library/2to3.rst:422
|
||||
msgid ""
|
||||
"Fixes code broken from the removal of some members in the :mod:`types` "
|
||||
"module."
|
||||
|
@ -735,11 +727,11 @@ msgstr ""
|
|||
"Fixe le code cassé par la suppression de certains membres du module :mod:"
|
||||
"`types`."
|
||||
|
||||
#: library/2to3.rst:432
|
||||
#: library/2to3.rst:427
|
||||
msgid "Renames :class:`unicode` to :class:`str`."
|
||||
msgstr "Renomme :class:`unicode` en :class:`str`."
|
||||
|
||||
#: library/2to3.rst:436
|
||||
#: library/2to3.rst:431
|
||||
msgid ""
|
||||
"Handles the rename of :mod:`urllib` and :mod:`urllib2` to the :mod:`urllib` "
|
||||
"package."
|
||||
|
@ -747,7 +739,7 @@ msgstr ""
|
|||
"Gère le renommage des paquets :mod:`urllib` et :mod:`urllib2` en :mod:"
|
||||
"`urllib`."
|
||||
|
||||
#: library/2to3.rst:441
|
||||
#: library/2to3.rst:436
|
||||
msgid ""
|
||||
"Removes excess whitespace from comma separated items. This fixer is "
|
||||
"optional."
|
||||
|
@ -755,7 +747,7 @@ msgstr ""
|
|||
"Supprime l'espace excédentaire des éléments séparés par des virgules. Ce "
|
||||
"correcteur est optionnel."
|
||||
|
||||
#: library/2to3.rst:446
|
||||
#: library/2to3.rst:441
|
||||
msgid ""
|
||||
"Renames :func:`xrange` to :func:`range` and wraps existing :func:`range` "
|
||||
"calls with :class:`list`."
|
||||
|
@ -763,11 +755,11 @@ msgstr ""
|
|||
"Renomme la fonction :func:`xrange` en :func:`range` et encapsule les appels "
|
||||
"à la fonction :func:`range` avec des appels à :class:`list`."
|
||||
|
||||
#: library/2to3.rst:451
|
||||
#: library/2to3.rst:446
|
||||
msgid "Changes ``for x in file.xreadlines()`` to ``for x in file``."
|
||||
msgstr "Change ``for x in file.xreadlines()`` en ``for x in file``."
|
||||
|
||||
#: library/2to3.rst:455
|
||||
#: library/2to3.rst:450
|
||||
msgid ""
|
||||
"Wraps :func:`zip` usage in a :class:`list` call. This is disabled when "
|
||||
"``from future_builtins import zip`` appears."
|
||||
|
@ -775,16 +767,16 @@ msgstr ""
|
|||
"Encapsule l'usage de :func:`zip` dans un appel à :class:`list`. Ceci est "
|
||||
"désactivé lorsque ``from future_builtins import zip`` apparaît."
|
||||
|
||||
#: library/2to3.rst:460
|
||||
#: library/2to3.rst:455
|
||||
#, fuzzy
|
||||
msgid ":mod:`lib2to3` --- 2to3's library"
|
||||
msgstr ":mod:`lib2to3` — la bibliothèque de *2to3*"
|
||||
|
||||
#: library/2to3.rst:469
|
||||
#: library/2to3.rst:464
|
||||
msgid "**Source code:** :source:`Lib/lib2to3/`"
|
||||
msgstr "**Code source:** :source:`Lib/lib2to3/`"
|
||||
|
||||
#: library/2to3.rst:482
|
||||
#: library/2to3.rst:477
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Python 3.9 switched to a PEG parser (see :pep:`617`) while lib2to3 is using "
|
||||
|
@ -804,7 +796,7 @@ msgstr ""
|
|||
"une approche alternative, vous pouvez utiliser des outils tiers tels que "
|
||||
"`LibCST`_ ou `parso`_."
|
||||
|
||||
#: library/2to3.rst:485
|
||||
#: library/2to3.rst:480
|
||||
msgid ""
|
||||
"The :mod:`lib2to3` API should be considered unstable and may change "
|
||||
"drastically in the future."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
|
||||
"PO-Revision-Date: 2021-11-06 19:52+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
|
||||
"PO-Revision-Date: 2022-05-18 13:39+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue