Skip to content

Commit c584ff6

Browse files
committed
fix colons. (#122)
Reviewed-on: https://git.afpy.org/AFPy/python-docs-fr/pulls/122 Reviewed-by: Christophe Nanteuil <christophenan@noreply.localhost>
1 parent 2fd8387 commit c584ff6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+327
-289
lines changed

.scripts/check-colon.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
import sys
2+
import pathlib
3+
from itertools import chain
4+
5+
import polib
6+
7+
8+
def check(file):
9+
check = '--check' in sys.argv
10+
pofile = polib.pofile(file)
11+
has_errors = False
12+
for entry in pofile:
13+
if not entry.msgstr:
14+
continue
15+
if entry.msgid.endswith(" ::"):
16+
fixed = entry.msgstr.rstrip(": \u202f\u00A0") + " ::"
17+
if check and entry.msgstr != fixed:
18+
print(f"{file}:{entry.linenum}: Expected translation to end with: ' ::'")
19+
has_errors = True
20+
entry.msgstr = fixed
21+
elif entry.msgid.endswith("::"):
22+
fixed = entry.msgstr.rstrip(": ,. \u202f\u00A0") + "\u00A0::"
23+
if check and entry.msgstr != fixed:
24+
print(rf"{file}:{entry.linenum}: Expected translation to end with: '\u00A0::'")
25+
has_errors = True
26+
entry.msgstr = fixed
27+
if not check:
28+
pofile.save()
29+
return has_errors
30+
31+
32+
has_errors = False
33+
for file in chain(pathlib.Path(".").glob("*.po"), pathlib.Path(".").glob("*/*.po")):
34+
has_errors |= check(file)
35+
36+
sys.exit(has_errors)

distutils/introduction.po

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ msgid ""
128128
msgstr ""
129129
"Si tout ce que vous voulez est de distribuer un module appelé :mod:`foo`, "
130130
"contenu dans un fichier :file:`foo.py`, alors votre script d'installation "
131-
"peut se résumer à :"
131+
"peut se résumer à ::"
132132

133133
#: distutils/introduction.rst:67
134134
msgid "Some observations:"
@@ -178,15 +178,15 @@ msgid ""
178178
msgstr ""
179179
"Pour créer une distribution source pour ce module, il faut créer un script "
180180
"d'installation, :file:`setup.py`, contenant le code ci-dessus, et exécuter "
181-
"cette commande depuis un terminal :"
181+
"cette commande depuis un terminal ::"
182182

183183
#: distutils/introduction.rst:89
184184
msgid ""
185185
"For Windows, open a command prompt window (:menuselection:`Start --> "
186186
"Accessories`) and change the command to::"
187187
msgstr ""
188188
"Pour Windows, ouvrez une invite de commande (:menuselection:`Démarrer --> "
189-
"Accessoires`) et changez la commande en :"
189+
"Accessoires`) et changez la commande en ::"
190190

191191
#: distutils/introduction.rst:94
192192
msgid ""
@@ -210,7 +210,7 @@ msgstr ""
210210
"Si un utilisateur final souhaite installer votre module :mod:`foo`, tout ce "
211211
"qu'il aura à faire est de télécharger le fichier :file:`foo-1.0.tar.gz` (ou :"
212212
"file:`.zip`), le décompresser et ---depuis le répertoire :file:`foo-1.0`--- "
213-
"exécuter :"
213+
"exécuter ::"
214214

215215
#: distutils/introduction.rst:105
216216
msgid ""
@@ -248,7 +248,7 @@ msgstr ""
248248
"la commande :command:`bdist_rpm`, Solaris :program:`pkgtool` (:command:"
249249
"`bdist_pkgtool`), et HP-UX :program:`swinstall` (:command:`bdist_sdux`). Par "
250250
"exemple, la commande suivante va créer un fichier RPM appelé :file:`foo-1.0."
251-
"noarch.rpm`::"
251+
"noarch.rpm` ::"
252252

253253
#: distutils/introduction.rst:123
254254
msgid ""
@@ -266,7 +266,7 @@ msgid ""
266266
"running ::"
267267
msgstr ""
268268
"Vous pouvez trouver quelles sont les formats de distribution disponibles à "
269-
"n'importe quel moment en exécutant :"
269+
"n'importe quel moment en exécutant ::"
270270

271271
#: distutils/introduction.rst:136
272272
msgid "General Python terminology"
@@ -453,7 +453,7 @@ msgstr ""
453453
#~ "voulez rendre les choses faciles pour les autres utilisateurs Windows, "
454454
#~ "vous pouvez créer un installateur exécutable (le mode de distribution le "
455455
#~ "plus approprié pour cette plateforme) avec la commande :command:"
456-
#~ "`bdist_wininst`. Par exemple :"
456+
#~ "`bdist_wininst`. Par exemple ::"
457457

458458
#~ msgid ""
459459
#~ "will create an executable installer, :file:`foo-1.0.win32.exe`, in the "

distutils/setupscript.po

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ msgstr ""
6767
"entière de telle sorte que les utilisateurs de Python 1.5.2 puissent les "
6868
"utiliser pour installer d'autres modules. Le propre script ``setup.py`` des "
6969
"*Distutils* montré ici est utilisé pour installer le paquet dans Python "
70-
"1.5.2). ::"
70+
"1.5.2). ::"
7171

7272
#: distutils/setupscript.rst:37
7373
msgid ""
@@ -170,7 +170,7 @@ msgstr ""
170170
"sous :file:`lib`, de telle sorte que les modules dans le « paquet "
171171
"racine » (c'est-à-dire dans aucun paquet du tout) sont dans :file:`lib`, les "
172172
"modules dans le paquet :mod:`foo` sont dans :file:`lib/foo`, et ainsi de "
173-
"suite. Alors, vous pouvez mettre ::"
173+
"suite. Alors, vous pouvez mettre ::"
174174

175175
#: distutils/setupscript.rst:88
176176
msgid ""
@@ -194,7 +194,7 @@ msgid ""
194194
msgstr ""
195195
"Une autre convention possible est de mettre le paquet :mod:`foo` directement "
196196
"dans :file:`lib`, le paquet :mod:`foo.bar` dans :file:`lib/bar`, etc. Cela "
197-
"s'écrirait ainsi dans le script ``setup.py`` : ::"
197+
"s'écrirait ainsi dans le script ``setup.py`` ::"
198198

199199
#: distutils/setupscript.rst:99
200200
msgid ""
@@ -314,11 +314,11 @@ msgid ""
314314
"example, ::"
315315
msgstr ""
316316
"Le premier argument du constructeur :class:`~distutils.core.Extension` est "
317-
"toujours le nom de l'extension, incluant tout nom de paquet. Par exemple ::"
317+
"toujours le nom de l'extension, incluant tout nom de paquet. Par exemple ::"
318318

319319
#: distutils/setupscript.rst:176
320320
msgid "describes an extension that lives in the root package, while ::"
321-
msgstr "décrit une extension qui se situe dans le paquet racine, tandis que ::"
321+
msgstr "décrit une extension qui se situe dans le paquet racine, tandis que ::"
322322

323323
#: distutils/setupscript.rst:180
324324
msgid ""
@@ -341,7 +341,7 @@ msgid ""
341341
msgstr ""
342342
"Si vous avez un certain nombre d'extensions toutes dans le même paquet (ou "
343343
"toutes sous le même paquet de base), utilisez l'argument nommé "
344-
"``ext_package`` de :func:`setup`. Par exemple ::"
344+
"``ext_package`` de :func:`setup`. Par exemple ::"
345345

346346
#: distutils/setupscript.rst:195
347347
msgid ""
@@ -442,15 +442,15 @@ msgid ""
442442
msgstr ""
443443
"Ici, vous pouvez définir le chemin absolu des répertoires ; si vous savez "
444444
"que votre extension sera compilée sur un système Unix avec ``X11R6`` "
445-
"installé dans :file:`/usr`, vous pouvez vous en sortir avec ::"
445+
"installé dans :file:`/usr`, vous pouvez vous en sortir avec ::"
446446

447447
#: distutils/setupscript.rst:254
448448
msgid ""
449449
"You should avoid this sort of non-portable usage if you plan to distribute "
450450
"your code: it's probably better to write C code like ::"
451451
msgstr ""
452452
"Il convient d'éviter ce type d'utilisation non portable si vous envisagez de "
453-
"distribuer votre code : Il est probablement mieux d'écrire du code C comme ::"
453+
"distribuer votre code : Il est probablement mieux d'écrire du code C comme ::"
454454

455455
#: distutils/setupscript.rst:259
456456
msgid ""
@@ -474,7 +474,7 @@ msgstr ""
474474
"répertoire :file:`include` de Python —\\ :file:`/usr/local/include/"
475475
"python1.5` dans ce cas-ci — est toujours inclus dans le chemin de recherche "
476476
"quand vous construisez des extensions Python, la meilleure approche est "
477-
"d'écrire du code C comme ::"
477+
"d'écrire du code C comme ::"
478478

479479
#: distutils/setupscript.rst:271
480480
msgid ""
@@ -551,7 +551,7 @@ msgid ""
551551
"standard library search path on target systems ::"
552552
msgstr ""
553553
"Par exemple, pour lier des bibliothèques que l'on sait dans le chemin des "
554-
"bibliothèques standards des systèmes cibles ::"
554+
"bibliothèques standards des systèmes cibles ::"
555555

556556
#: distutils/setupscript.rst:323
557557
msgid ""

extending/extending.po

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -911,7 +911,7 @@ msgstr ""
911911
"Vous pouvez également appeler une fonction avec des arguments nommés en "
912912
"utilisant :c:func:`PyObject_Call`, qui accepte les arguments et les "
913913
"arguments nommés. Comme dans l'exemple ci-dessus, nous utilisons :c:func:"
914-
"`Py_BuildValue` pour construire le dictionnaire. ::"
914+
"`Py_BuildValue` pour construire le dictionnaire. ::"
915915

916916
#: extending/extending.rst:628
917917
msgid "Extracting Parameters in Extension Functions"
@@ -1728,7 +1728,7 @@ msgstr "La fonction :c:func:`spam_system` est modifiée de manière simple ::"
17281728

17291729
#: extending/extending.rst:1241
17301730
msgid "In the beginning of the module, right after the line ::"
1731-
msgstr "Au début du module, immédiatement après la ligne ::"
1731+
msgstr "Au début du module, immédiatement après la ligne ::"
17321732

17331733
#: extending/extending.rst:1245
17341734
msgid "two more lines must be added::"

extending/newtypes_tutorial.po

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ msgstr ""
167167

168168
#: extending/newtypes_tutorial.rst:88
169169
msgid "The second bit is the definition of the type object. ::"
170-
msgstr "La deuxième partie est la définition de l'objet type ::"
170+
msgstr "La deuxième partie est la définition de l'objet type ::"
171171

172172
#: extending/newtypes_tutorial.rst:101
173173
msgid ""
@@ -202,7 +202,7 @@ msgid ""
202202
"mentioned above. ::"
203203
msgstr ""
204204
"Cette ligne, obligatoire, initialise le champ ``ob_base`` mentionné "
205-
"précédemment."
205+
"précédemment. ::"
206206

207207
#: extending/newtypes_tutorial.rst:119
208208
msgid ""
@@ -298,7 +298,7 @@ msgstr ""
298298
"c:member:`~PyTypeObject.tp_new`, qui est l'équivalent de la méthode Python :"
299299
"meth:`__new__`, mais elle a besoin d'être spécifiée explicitement. Dans ce "
300300
"cas, on se contente de l'implémentation par défaut fournie par la fonction :"
301-
"c:func:`PyType_GenericNew` de l'API."
301+
"c:func:`PyType_GenericNew` de l'API. ::"
302302

303303
#: extending/newtypes_tutorial.rst:173
304304
msgid ""

faq/design.po

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -433,7 +433,7 @@ msgstr ""
433433
"une séquence de joindre ses membres avec une constante de chaîne ? ». "
434434
"Malheureusement, ce n'est pas ça. Allez savoir, il semble être bien moins "
435435
"difficile de comprendre ce qui se passe avec :meth:`~str.split` en tant que "
436-
"méthode de chaîne, puisque dans ce cas il est facile de voir que ::"
436+
"méthode de chaîne, puisque dans ce cas il est facile de voir que ::"
437437

438438
#: faq/design.rst:222
439439
msgid ""
@@ -1279,7 +1279,7 @@ msgid ""
12791279
"If you're trying to build a pathname for a DOS command, try e.g. one of ::"
12801280
msgstr ""
12811281
"Si vous essayez de construire un chemin d'accès pour une commande DOS, "
1282-
"essayez par exemple l'un de ceux-ci ::"
1282+
"essayez par exemple l'un de ceux-ci ::"
12831283

12841284
#: faq/design.rst:653
12851285
msgid "Why doesn't Python have a \"with\" statement for attribute assignments?"
@@ -1404,7 +1404,7 @@ msgstr ""
14041404

14051405
#: faq/design.rst:725
14061406
msgid "versus ::"
1407-
msgstr "et cela ::"
1407+
msgstr "et cela ::"
14081408

14091409
#: faq/design.rst:730
14101410
msgid ""

faq/library.po

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ msgid ""
127127
"to write ::"
128128
msgstr ""
129129
"Il y a plusieurs façons de remplir la seconde. La plus simple consiste à "
130-
"écrire au tout début du fichier ::"
130+
"écrire au tout début du fichier ::"
131131

132132
#: faq/library.rst:61
133133
msgid ""
@@ -175,7 +175,7 @@ msgid ""
175175
"However, you can fix that by adding ::"
176176
msgstr ""
177177
"Le léger inconvénient est que cela définit la variable *__doc__* du script. "
178-
"Cependant, il est possible de corriger cela en ajoutant ::"
178+
"Cependant, il est possible de corriger cela en ajoutant ::"
179179

180180
#: faq/library.rst:94
181181
msgid "Is there a curses/termcap package for Python?"
@@ -232,7 +232,7 @@ msgid ""
232232
"wrong argument list. It is called as ::"
233233
msgstr ""
234234
"Le problème le plus courant est d'appeler le gestionnaire de signaux avec "
235-
"les mauvais arguments. Un gestionnaire est appelé de la façon suivante ::"
235+
"les mauvais arguments. Un gestionnaire est appelé de la façon suivante ::"
236236

237237
#: faq/library.rst:125
238238
msgid "so it should be declared with two parameters::"
@@ -286,7 +286,7 @@ msgstr ""
286286
#: faq/library.rst:152
287287
msgid "The \"global main logic\" of your program may be as simple as ::"
288288
msgstr ""
289-
"La « logique générale » d'un programme devrait être aussi simple que ::"
289+
"La « logique générale » d'un programme devrait être aussi simple que ::"
290290

291291
#: faq/library.rst:157
292292
msgid "at the bottom of the main module of your program."

faq/programming.po

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -993,7 +993,7 @@ msgstr "Ou en utilisant un objet appelable ::"
993993

994994
#: faq/programming.rst:598
995995
msgid "In both cases, ::"
996-
msgstr "Dans les deux cas ::"
996+
msgstr "Dans les deux cas ::"
997997

998998
#: faq/programming.rst:602
999999
msgid "gives a callable object where ``taxes(10e6) == 0.3 * 10e6 + 2``."
@@ -1326,7 +1326,7 @@ msgid ""
13261326
msgstr ""
13271327
"Essayer d'utiliser l'opérateur d'accès à un attribut sur un entier littéral "
13281328
"conduit à une erreur de syntaxe car le point est compris comme un séparateur "
1329-
"décimal en notation anglo-saxonne :"
1329+
"décimal en notation anglo-saxonne ::"
13301330

13311331
#: faq/programming.rst:859
13321332
msgid ""
@@ -1906,7 +1906,7 @@ msgid ""
19061906
msgstr ""
19071907
"Si tous les éléments de la liste peuvent être utilisés comme des clés de "
19081908
"dictionnaire (c'est-à-dire, qu'elles sont toutes :term:`hachables "
1909-
"<hashable>`) ceci est souvent plus rapide ::"
1909+
"<hashable>`) ceci est souvent plus rapide ::"
19101910

19111911
#: faq/programming.rst:1225
19121912
msgid ""
@@ -1930,7 +1930,7 @@ msgstr ""
19301930
"Comme pour supprimer les doublons, il est possible d’itérer explicitement à "
19311931
"l’envers avec une condition de suppression. Cependant, il est plus facile et "
19321932
"plus rapide d’utiliser le remplacement des tranches par une itération avant, "
1933-
"implicite ou explicite. Voici trois variantes. ::"
1933+
"implicite ou explicite. Voici trois variantes ::"
19341934

19351935
#: faq/programming.rst:1241
19361936
msgid "The list comprehension may be fastest."
@@ -2221,7 +2221,7 @@ msgid ""
22212221
"pick out the element you want. ::"
22222222
msgstr ""
22232223
"Fusionnez-les dans un itérateur de *n*-uplets, ordonnez la liste obtenue, "
2224-
"puis choisissez l'élément que vous voulez ::"
2224+
"puis choisissez l'élément que vous voulez ::"
22252225

22262226
#: faq/programming.rst:1461
22272227
msgid "Objects"
@@ -2578,7 +2578,7 @@ msgstr ""
25782578
msgid "You could also try a variable-length argument list, e.g. ::"
25792579
msgstr ""
25802580
"Vous pouvez aussi utiliser une liste d'arguments de longueur variable, par "
2581-
"exemple ::"
2581+
"exemple ::"
25822582

25832583
#: faq/programming.rst:1732
25842584
msgid "The same approach works for all method definitions."
@@ -2869,7 +2869,7 @@ msgstr ""
28692869
"peu de subtilité lorsque ``None`` est une valeur acceptable pour le "
28702870
"paramètre. Dans ces cas, il faut créer un objet singleton dit "
28712871
"« sentinelle », distinct de toute valeur acceptable. Voici par exemple "
2872-
"comment écrire une méthode qui émule :meth:`dict.pop` :"
2872+
"comment écrire une méthode qui émule :meth:`dict.pop` ::"
28732873

28742874
#: faq/programming.rst:1901
28752875
msgid ""
@@ -3322,7 +3322,7 @@ msgid ""
33223322
"containing statements like ::"
33233323
msgstr ""
33243324
"Attention, cette technique ne marche pas systématiquement. En particulier, "
3325-
"les modules qui contiennent des instructions comme ::"
3325+
"les modules qui contiennent des instructions comme ::"
33263326

33273327
#: faq/programming.rst:2197
33283328
msgid ""

glossary.po

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2703,8 +2703,8 @@ msgstr "encodages de texte"
27032703

27042704
#: glossary.rst:1145
27052705
msgid ""
2706-
"A string in Python is a sequence of Unicode code points (in range ``U"
2707-
"+0000``--``U+10FFFF``). To store or transfer a string, it needs to be "
2706+
"A string in Python is a sequence of Unicode code points (in range "
2707+
"``U+0000``--``U+10FFFF``). To store or transfer a string, it needs to be "
27082708
"serialized as a sequence of bytes."
27092709
msgstr ""
27102710
"Une chaîne de caractères en Python est une suite de points de code Unicode "
@@ -2776,8 +2776,8 @@ msgstr ""
27762776
"qui ne soit pas disponible avec une chaîne entre guillemets, elle est utile "
27772777
"pour de nombreuses raisons. Elle vous autorise à insérer des guillemets "
27782778
"simples et doubles dans une chaîne sans avoir à les protéger et elle peut "
2779-
"s'étendre sur plusieurs lignes sans avoir à terminer chaque ligne par un ``"
2780-
"\\``. Elle est ainsi particulièrement utile pour les chaînes de "
2779+
"s'étendre sur plusieurs lignes sans avoir à terminer chaque ligne par un "
2780+
"``\\``. Elle est ainsi particulièrement utile pour les chaînes de "
27812781
"documentation (*docstrings*)."
27822782

27832783
#: glossary.rst:1175

0 commit comments

Comments
 (0)