-
Notifications
You must be signed in to change notification settings - Fork 266
Reference "Data Model" translation. #173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
work in progress, needs cross reading.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Relu jusqu'a la ligne 520.
reference/datamodel.po
Outdated
"plus être atteint, il a vocation à être supprimé par le ramasse-miettes " | ||
"(*garbage-collector* en anglais). L'implémentation peut retarder cette " | ||
"opération ou même ne pas la faire du tout --- la façon dont fonctionne le " | ||
"ramasse-miette est particulier à chaque implémentation, l'important étant " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
*particulière ?
reference/datamodel.po
Outdated
|
||
#: ../Doc/reference/datamodel.rst:150 | ||
msgid "None" | ||
msgstr "*None*" | ||
msgstr "" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pourquoi enlever la "traduction" ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je ne vois pas pourquoi il faudrait traduire None. Ni pourquoi il avait été traduit par None.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On a le choix de "copier dans la traduction" ou "ne pas copier dans la traduction", ce qui ne se traduit pas. Typiquement "None", les licences, ... J'imagine que les deux solutions ont des avantages et des inconvénients, voici deux avantages que je voit :
- Un
make todo
(une recherche des documents contenant des chaînes à traduire) ne les remonte plus. - Si un jour sphinx-doc affiche différemment les paragraphes non-traduits (avec une bulle "Aidez à traduire ici tout ça"), ces "non-traduits mais copiés" ne feront pas sortir la bulle.
reference/datamodel.po
Outdated
"un sous-type du type entier et les valeurs booléennes se comportent comme " | ||
"les valeurs, respectivement, 0 et 1 dans presque tous les contextes. " | ||
"L'exception concerne la conversion en chaîne de caractères où, " | ||
"respectivement, ``\"False\"`` et ``True`` sont renvoyées " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Il manque des guillemets autour de "True".
reference/datamodel.po
Outdated
@@ -311,21 +458,30 @@ msgid "" | |||
"a sequence of the same type. This implies that the index set is renumbered " | |||
"so that it starts at 0." | |||
msgstr "" | |||
"Les séquences gèrent le saucissonnage (*slicing* en anglais) : ``a[i:j]`` " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Intéressante traduction. Tu peux laisser, mais on aurait pu mettre "Les séquences peuvent aussi être découpées". "Le saucissonnage" me fait plus penser a la partie "presser la viande dans le saucisson" que "trancher le saucisson" mais c'est peut être ma manière.
reference/datamodel.po
Outdated
@@ -383,36 +563,49 @@ msgid "" | |||
"create bytes objects. Also, bytes objects can be decoded to strings via " | |||
"the :meth:`~bytes.decode` method." | |||
msgstr "" | |||
"Les objets bytes sont des tableaux immuables. Les éléments sont des octets " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
J'aurais tendance à mettre "bytes" en italique ici.
reference/datamodel.po
Outdated
|
||
#: ../Doc/reference/datamodel.rst:344 | ||
msgid "" | ||
"The items of a list are arbitrary Python objects. Lists are formed by " | ||
"placing a comma-separated list of expressions in square brackets. (Note that " | ||
"there are no special cases needed to form lists of length 0 or 1.)" | ||
msgstr "" | ||
"N'importe quel objet Python peut être élément d'une liste. Les listes sont " | ||
"créées en plaçant entre crochets une liste d'expressions dont les éléments " | ||
"sont séparés par des virgules (notez qu'il n'est pas nécessaire de " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pourquoi pas :
notez que les listes de longueurs 0 ou 1 ne sont pas des cas particuliers
reference/datamodel.po
Outdated
@@ -646,7 +902,7 @@ msgstr "" | |||
msgid "" | |||
"``None`` or a tuple of cells that contain bindings for the function's free " | |||
"variables." | |||
msgstr "" | |||
msgstr "``None`` ou tuple XXX" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lorsqu'une traduction n'est pas complète tu peux lui ajouter (noramelemnt c'est prévu par ton éditeur) un "flag" "fuzzy". Après via un "make fuzzy" tu peux lister toutes les traductions marquées "fuzzy", c'est pratique. Les cells c'est https://docs.python.org/3/c-api/cell.html
Je propose :
None
ou un tuple de cellules (cells en anglais), chaque cellule contient un lien vers chaque variable libre de la fonction.
reference/datamodel.po
Outdated
@@ -657,6 +913,9 @@ msgid "" | |||
"A dict containing annotations of parameters. The keys of the dict are the " | |||
"parameter names, and ``'return'`` for the return annotation, if provided." | |||
msgstr "" | |||
"Dictionnaire contenant les annotations des paramètres. Les clés du " | |||
"dictionnaires sont les noms des paramètres et ``return`` pour les " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je préciserai que 'return'
(d'ailleurs il manque les guilletets simples autour de ta traduction de return, on parle de la chaîne return, pas du mot clef return) est une clef de dictionnaire, par exemple :
… sont les noms des paramètres et la clef ``'return'`` pour les annotations de la valeur renvoyée...
Dictionnaire est au singulier (celui précédé de "du").
s'ils existent
fait référence aux annotations (que ce soit les annotations de paramètres, ou de valeur renvoyée) c'est féminin. On pourrait être plus clair peut être :
Les clés du dictionnaire sont les noms des paramètres (ou ``'return'`` pour la valeur renvoyée), ils ne sont présents que s'ils sont annotés.
reference/datamodel.po
Outdated
@@ -934,7 +1220,7 @@ msgstr "" | |||
|
|||
#: ../Doc/reference/datamodel.rst:795 | |||
msgid "Custom classes" | |||
msgstr "" | |||
msgstr "Classes particularisées" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah oui pas simple. Ça parle juste des classes introduite par les développeurs via le mot clef "class", donc des classes tout à fait classiques. En anglais j'aurai même peut être mis "User-created classes".
Peut être "Classes déclarées par le développeur" ? Un peu long mais proprement explicite.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oui, c'est mieux. Mais cela concerne vraiment toutes les classes,c'est-à-dire même les classes d'une bibliothèque que tu utilises. "Classes déclarées par le développeur" pourrait laisser croire qu'il s'agit seulement des classes du module courant (en cours de développement).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Exact, il faut trouver mieux.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
classes allogènes ?
reference/datamodel.po
Outdated
"Appeler la méthode :meth:`aiterator.__anext__` de l'itérateur asynchrone " | ||
"renvoie un :term:`awaitable` qui, lorsqu'on l'attend, s'exécute jusqu'à ce " | ||
"qu'il fournisse une valeur à l'aide de l'expression :keyword:`yield`. Quand " | ||
"la fonction exécute une instruction vide :keyword:`return` ou arrive à la " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pas fan de "instruction vide return
", ça parle d'un "return" sans valeur, juste "return" (car si il y avait une valeur, elle serait ignorée). Pourquoi pas :
Quand la fonction exécute une instruction :keyword:
return
(sans valeur) ou arrive à la fin [...]
reference/datamodel.po
Outdated
"Attributs prédéfinis (en lecture-écriture) : :attr:`__name__` est le nom du " | ||
"module ; :attr:`__doc__` est la chaîne de documentation du module (ou " | ||
"``None`` s'il n'y en a pas) ; :attr:`__annotations__` (optionnel) est un " | ||
"dictionnaire contenant les g :term:`Annotations de variables <variable " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"g" : typo ?
reference/datamodel.po
Outdated
@@ -1326,6 +1502,11 @@ msgid "" | |||
"makefile` method of socket objects (and perhaps by other functions or " | |||
"methods provided by extension modules)." | |||
msgstr "" | |||
"Un :term:`objet fichier` représente un fichier ouvert. Différentes " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
*différents
reference/datamodel.po
Outdated
"l'objet fonction contient une référence explicite vers les globales de la " | ||
"fonction (le module dans lequel elle est définie) alors qu'un objet code ne " | ||
"contient aucun contexte ; par ailleurs, les valeurs par défaut des arguments " | ||
"sont stockées dans l'objet fonction, pas de l'objet code (parce que ce sont " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
s/de/dans/ ?
reference/datamodel.po
Outdated
@@ -1487,27 +1752,43 @@ msgid "" | |||
"of its frame object if the exception occurred in a :keyword:`try` statement " | |||
"with no matching except clause or with a finally clause." | |||
msgstr "" | |||
"Attributs spéciaux en lecture seule : attr:`tb_next` est le prochain niveau " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Il manque un :
devant attr.
reference/datamodel.po
Outdated
"précise. Le numéro de ligne et la dernière instruction dans la trace " | ||
"peuvent différer du numéro de ligne de l'objet cadre si l'exception a eu " | ||
"lieu dans une instruction :keyword:`try` sans qu'il n'y ait de clause :" | ||
"keyword:`except` adéquate ou sans clause *finally* ." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pas bien grave mais il y a un espace avant le point.
reference/datamodel.po
Outdated
|
||
#: ../Doc/reference/datamodel.rst:1052 | ||
msgid "Slice objects" | ||
msgstr "" | ||
msgstr "Objets découpes" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Dans le reste de la doc il me semble qu'on utilise partout tranche pour "slice", on pourrait ici aussi ?
- relecture nécessaire ; - prise en compte des remarques faites sur les 3 premiers commits.
reference/datamodel.po
Outdated
|
||
#: ../Doc/reference/datamodel.rst:2428 | ||
msgid "" | ||
"Incorrectly attempting to invoke an unbound method of a class in this way is " | ||
"sometimes referred to as 'metaclass confusion', and is avoided by bypassing " | ||
"the instance when looking up special methods::" | ||
msgstr "" | ||
"Essayer d'invoquer une méthode non liée d'une classe de cette manière est " | ||
"parfois appelé \"confusion de méta-classe\" et se contourne en bipassant " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
En dehors de https://fr.wiktionary.org/wiki/bipasser (pas fan de wiktionary comme référence) et de http://www.larousse.fr/dictionnaires/francais/bipasse/9508 (bipasse, pas le verbe), je ne trouve rien de sérieux sur le verbe "bipasser", j'ai peur qu'il surprenne le lecteur plus qu'autre chose.
reference/datamodel.po
Outdated
|
||
#: ../Doc/reference/datamodel.rst:1466 | ||
#, fuzzy |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ça me semble bon, quel est le souci ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Simplement, je ne comprends pas ma dernière phrase (ni en français, ni en anglais) ! Je vais travailler le concept.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Le "Note that at least for instance variables, you can fake total control by not inserting any values in the instance attribute dictionary (but instead inserting them in another object)." ? Mon interprétation :
L'idée (du "fake total control") est que si dans ton __setattr__
tu n'écrit jamais dans le dictionnaire de l'instance, mais que tu cache les valeurs dans une structure à toi, alors tu es sûr que toutes les tentatives d'accès à un attribut passeront par __getattr__
, te garantissant ainsi que toute lecture passera par __getattr__
(puisque toute tentative de l'interpréteur de trouver l'attribut par lui même aura échoué (getattribute, get, ...), puisque l'attribut est caché dans ta structure).
Mais c'est tiré par les cheveux, autant surcharger __getattribute__
, d'où la phrase suivante : "See the __getattribute__()
method below for a way to actually get total control over attribute access." qui sous-entend "Bon ça c'était pour le faire salement, regardez getattribute pour le faire proprement".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
En fait, c'était la récursion infinie que je n'avais pas saisie. la méthode getattribute doit appeler classe_ancetre.getattribute pour tous les accès aux attributs dont elle a besoin.
6911f38
to
0ba3512
Compare
Co-authored-by: Julien Palard <[email protected]> Reviewed-on: https://git.afpy.org/AFPy/python-docs-fr/pulls/173 Reviewed-by: Julien Palard <[email protected]> Co-authored-by: Christophe Nanteuil <[email protected]> Co-committed-by: Christophe Nanteuil <[email protected]>
work in progress, needs cross reading.