script de formattage de lignes, majuscules, sauts de ligne, espaces typo

This commit is contained in:
Tykayn 2024-10-20 01:06:43 +02:00 committed by tykayn
parent f457a9fec8
commit be2f8abc1d
2 changed files with 39 additions and 0 deletions

37
format_typo.py Normal file
View File

@ -0,0 +1,37 @@
# corrige un fichier livre.org afin de supprimer les erreurs de typographie courantes:
# phrases sans majuscules
# plus de deux sauts de ligne consécutifs
# espaces manquants autour de certaines ponctuations.
import re
# Ouvrir le fichier livre.org en mode lecture
with open('livre.org', 'r') as f:
contenu = f.read()
# Corriger les phrases sans majuscules
contenu_corrige = re.sub(r"^([a-z])", lambda m: m.group(1).upper(), contenu, flags=re.MULTILINE)
nb_maj = sum(1 for m in re.finditer(r"^([a-z])", contenu)) - sum(1 for m in re.finditer(r"^([a-z])", contenu_corrige))
if nb_maj > 0:
print(f" Ajout de majuscules aux débuts de phrases : {nb_maj} modification(s)")
# Corriger les sauts de ligne consécutifs
contenu_corrige = re.sub(r'\n{3,}', '\n\n', contenu_corrige)
nb_sauts = len(re.findall(r'\n{3,}', contenu)) - len(re.findall(r'\n{3,}', contenu_corrige))
if nb_sauts > 0:
print(f" Suppression des sauts de ligne consécutifs : {nb_sauts} modification(s)")
# Corriger les espaces manquants autour de certaines ponctuations
contenu_corrige = re.sub(r"([.,;:!?])( )?", r"\1 ", contenu_corrige)
contenu_corrige = re.sub(r"( )([.,;:!?])", r" \2", contenu_corrige)
nb_espaces = len(re.findall(r"([.,;:!?])( )?", contenu)) - len(re.findall(r"([.,;:!?])( )?", contenu_corrige)) + len(re.findall(r"( )([.,;:!?])", contenu)) - len(re.findall(r"( )([.,;:!?])", contenu_corrige))
if nb_espaces > 0:
print(f" Ajout d'espaces autour de certaines ponctuations : {nb_espaces} modification(s)")
# Sauvegarder le fichier livre.org corrigé
with open('livre.org', 'w') as f:
f.write(contenu_corrige)
# Faire un rapport des modifications apportées
if nb_maj == 0 and nb_sauts == 0 and nb_espaces == 0:
print("🎉 Pas de modifications à apporter !")

View File

@ -6,3 +6,5 @@ python3 stats_chapitres.py
python3 make_intrigues_to_csv.py
python3 gantt_parser.py
python3 follow_progress.py
python3 format_typo.py
bash git_save.sh