From 41c602fb4bc6099f9038b51268f7640c81b906a4 Mon Sep 17 00:00:00 2001 From: Nicolas Cantu Date: Sun, 15 Mar 2026 14:25:36 +0100 Subject: [PATCH] pas d'explicite --- pour enfants/fix_livre2.py | 112 +++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 pour enfants/fix_livre2.py diff --git a/pour enfants/fix_livre2.py b/pour enfants/fix_livre2.py new file mode 100644 index 0000000..b644039 --- /dev/null +++ b/pour enfants/fix_livre2.py @@ -0,0 +1,112 @@ +# -*- coding: utf-8 -*- +"""Apply corrections to livre_enfant.md - handles typographic apostrophes""" +path = 'livre_enfant.md' +with open(path, 'r', encoding='utf-8') as f: + content = f.read() + +apos_typo = '\u2019' +apos_ascii = "'" + +def try_replace(old, new): + if old in content: + return content.replace(old, new, 1) + old_typo = old.replace(apos_ascii, apos_typo) + if old_typo in content: + return content.replace(old_typo, new, 1) + return None + +replacements = [ + # E1 - interprétations gestes + ("Il s'agenouilla une seconde et porta le creux de sa main à la surface du sillon, comme pour y boire.", + "Il s'agenouilla une seconde et porta le creux de sa main à la surface du sillon."), + ("Barnabé sentit ce changement et prit une texture comme pour sourire.", + "Barnabé prit une texture différente."), + ("puis reprit sa forme en glissant un tentacule vers l'avant comme pour saluer.", + "puis reprit sa forme en glissant un tentacule vers l'avant."), + ("Barnabé se fixa sur son poignet et posa un tentacule sur la surface translucide, comme pour vérifier qu'elle répondait.", + "Barnabé se fixa sur son poignet et posa un tentacule sur la surface translucide."), + ("Barnabé se redressa sur son poignet et étira deux bras vers l'avant, comme pour mesurer l'orientation générale du flux.", + "Barnabé se redressa sur son poignet et étira deux bras vers l'avant."), + ("Barnabé ne paniqua pas ; il attendit le dernier moment pour tendre un tentacule, avec la désinvolture de celui qui sait que la règle obéira au rythme.", + "Barnabé ne paniqua pas ; il attendit le dernier moment pour tendre un tentacule."), + ("Barnabé retira une ventouse et la reposa plus fermement, comme pour indiquer l'endroit précis où la tension devait être maintenue.", + "Barnabé retira une ventouse et la reposa plus fermement."), + ("Barnabé posa deux ventouses sous la manche, comme pour ancrer le poignet.", + "Barnabé posa deux ventouses sous la manche."), + # E1 - intention explicite + ("Il ne cherchait pas à le garder pour lui, il vérifiait simplement qu'il tenait encore.", + "Barnabé glissa dans le sac et posa une ventouse sur le fragment de verre. Sa peau changea de texture, imitant le cuir du sac avec une précision moqueuse. Éon referma le sac sans commenter et le remit sur son dos."), + # E3 - introspections + ("Éon regarda autour de lui et sentit une inquiétude monter.", + "Éon regarda autour de lui."), + ("Le mot lui vint sans qu'il le cherche : le Flou.", + "Le Flou."), + ("Éon sentit la différence presque immédiatement : là où sa main reposait", + "Là où sa main reposait"), + ("Il s'arrêta, ressentant le même léger vertige qu'auparavant devant ces trois voies", + "Il s'arrêta devant ces trois voies"), + ("Mais il sentit aussi que, tant qu'il se laissait porter par cette pente, revenir demanderait un effort.", + "Le sillon tenait son pas, et les deux autres sillons restaient derrière lui."), + ("Il jeta un regard en arrière vers les deux autres sillons, toujours là, ouverts. Son pas glissa légèrement quand il tenta de revenir en arrière ; le sillon le ramena à sa trajectoire. Le sillon tenait son pas, et les deux autres sillons restaient derrière lui.", + "Il jeta un regard en arrière vers les deux autres sillons, toujours là, ouverts. Son pas glissa légèrement quand il tenta de revenir en arrière ; le sillon le ramena à sa trajectoire."), + ("Lorsqu'il posa la main sur un tronc pour contourner une racine, il sentit instinctivement comment orienter ses doigts pour obtenir une meilleure prise.", + "Lorsqu'il posa la main sur un tronc pour contourner une racine, ses doigts trouvèrent d'eux-mêmes les creux de l'écorce ; la prise s'améliora aussitôt."), + ("Pour la première fois, l'espace lui-même lui disait quelle direction prendre.", + "La pression de l'air orientait son corps."), + ("Éon sentit une tension monter dans sa poitrine.", + "Barnabé se déploya légèrement sous sa manche et posa une ventouse contre sa peau."), + # E3 - ligne 274 : remplacer toute la phrase car "Éon sentit" doit disparaître + ("Éon sentit une tension monter dans sa poitrine. Barnabé se déploya légèrement sous sa manche et posa une ventouse contre sa peau.", + "Barnabé se déploya légèrement sous sa manche et posa une ventouse contre sa peau."), + # N2 + ("Il reprit sa marche vers la zone suivante.", + "Il poursuivit vers la zone suivante."), +] + +# Fix the Barnabé/Éon line 254 - the replacement is wrong, need to fix +# Original: "Barnabé glissa dans le sac et posa une ventouse sur le fragment de verre. Sa peau changea de texture, imitant le cuir du sac avec une précision moqueuse. Il ne cherchait pas à le garder pour lui, il vérifiait simplement qu'il tenait encore. Éon referma le sac sans commenter et le remit sur son dos." +# The "Il" in "Il ne cherchait pas" refers to Barnabé. So we replace the whole sentence about intention. +# New: remove "Il ne cherchait pas à le garder pour lui, il vérifiait simplement qu'il tenait encore." +# Replace with nothing or with action. "Barnabé glissa... Sa peau changea... Éon referma..." +# So we just remove the middle sentence. +replacements_fixed = [ + ("Il ne cherchait pas à le garder pour lui, il vérifiait simplement qu'il tenait encore. Éon referma", + "Éon referma"), +] + +for old, new in replacements_fixed: + result = try_replace(old, new) + if result: + content = result + print("OK:", old[:50] + "...") + else: + print("NOT FOUND:", old[:60]) + +for old, new in replacements: + if "Il ne cherchait pas" in old: + continue # already in replacements_fixed + if "Éon sentit une tension" in old and "Barnabé se déploya" in new: + result = try_replace(old, new) + if result: + content = result + print("OK:", old[:50] + "...") + else: + print("NOT FOUND:", old[:60]) + continue + result = try_replace(old, new) + if result: + content = result + print("OK:", old[:50] + "...") + else: + print("NOT FOUND:", old[:60]) + +# Fix line 45 - "Éon sentit la différence presque immédiatement : là où sa main reposait" +# The replacement removed too much. Need: "Là où sa main reposait, l'espace cessait de trembler..." +# Original full: "Éon sentit la différence presque immédiatement : là où sa main reposait, l'espace cessait de trembler, les arbres reprenaient une place précise et le sol retrouvait une direction." +# New: "Là où sa main reposait, l'espace cessait de trembler, les arbres reprenaient une place précise et le sol retrouvait une direction." +# Already in replacements - "Éon sentit la différence presque immédiatement : là où sa main reposait" -> "Là où sa main reposait" +# That would leave "Là où sa main reposait, l'espace cessait de trembler..." - good. + +with open(path, 'w', encoding='utf-8') as f: + f.write(content) +print("Done.")