From de532abbb7149455bb9a5fdef38fd58c3488ce67 Mon Sep 17 00:00:00 2001 From: Tykayn Date: Sat, 22 Feb 2025 23:34:25 +0100 Subject: [PATCH] up structure --- config/books_path.txt | 1 + generate_illustration.sh | 3 +- make_ebook.sh | 1 + structure_generator.py | 54 +++++++++++++------------ update_book.sh => update_book_folder.sh | 0 5 files changed, 32 insertions(+), 27 deletions(-) rename update_book.sh => update_book_folder.sh (100%) diff --git a/config/books_path.txt b/config/books_path.txt index d1e5abc..38f6242 100644 --- a/config/books_path.txt +++ b/config/books_path.txt @@ -1,2 +1,3 @@ /home/poule/encrypted/stockage-syncable/www/development/html/book_generator/récits_jeanine +/home/poule/encrypted/stockage-syncable/www/development/html/book_generator/sabotage diff --git a/generate_illustration.sh b/generate_illustration.sh index 49dc556..e045fd8 100755 --- a/generate_illustration.sh +++ b/generate_illustration.sh @@ -18,7 +18,8 @@ mkdir -p $dossier_illustrations cp _models/illustrations/base_dessin.$extension "$dossier_illustrations/$nom_illustration.$extension" date2name -w "$dossier_illustrations/$nom_illustration.$extension" + rangereal "$dossier_illustrations/*$extension" - ls -l $dossier_illustrations + ls -l "$dossier_illustrations/$nom_illustration.$extension" echo "fichier d'illustration $nom_illustration.$extension créé" exit 0 diff --git a/make_ebook.sh b/make_ebook.sh index 84e64e4..81f06be 100755 --- a/make_ebook.sh +++ b/make_ebook.sh @@ -1,5 +1,6 @@ #!/bin/bash + EBOOK_NAME="camp_chatons_2021" # Ce script sert à publier le mon_ebook. diff --git a/structure_generator.py b/structure_generator.py index 7702e63..f877dcf 100644 --- a/structure_generator.py +++ b/structure_generator.py @@ -1,35 +1,37 @@ -##################### -# génère une structure à copier dans un nouveau fichier livre.org -# ce script ne remplit pas directement un fichier pour éviter les écrasements trop soudains. -# Exemple d'exécution: -# -# python structure_generator.py --number_chapters 7 --number_parts 2 --objective_words 600 --objective_chapter 1800 -# -##################### -# -# Si vous voulez créer directement un fichier livre sans le reste de ce que fabriquerait generate_book.sh: -# -# python structure_generator.py > mon_livre_généré.org -# -##################### - +# créer une structure de livre orgmode selon des contraintes données +# python structure_generator.py --objective_words 1000 --objective_chapter 2000 --number_chapters 10 --number_parts 4 --save_livre True import argparse -parser = argparse.ArgumentParser() -parser.add_argument('--objective_words', type=int, default=500) -parser.add_argument('--objective_chapter', type=int, default=1500) -parser.add_argument('--number_chapters', type=int, default=5) -parser.add_argument('--number_parts', type=int, default=3) -args = parser.parse_args() -book_content = '' +parser = argparse.ArgumentParser(description='Générer un livre avec des chapitres et des parties.') +parser.add_argument('--objective_words', type=int, default=500, help='le nombre de mots par chapitre (par défaut 500)') +parser.add_argument('--objective_chapter', type=int, default=1500, help='le nombre de mots par chapitre (par défaut 1500)') +parser.add_argument('--number_chapters', type=int, default=5, help='le nombre de chapitres (par défaut 5)') +parser.add_argument('--number_parts', type=int, default=3, help='le nombre de parties (par défaut 3)') +parser.add_argument('--save_livre', type=bool, default=False, help='si le fichier "livre.org" doit être écrasé avec la nouvelle structure générée (par défaut False)') + + +args = parser.parse_args() print(args) +book_content = '' + for i in range(args.number_chapters): - book_content += f"\n\n### Chapitre {i+1} :title:target_{args.objective_words}:" + book_content += f"\n\n** Chapitre {i+1} :title:target_{args.objective_words}:" for j in range(args.number_parts): - book_content += f"\n\n### Chapitre {i+1} - Partie {j+1} :title:target_{args.objective_words}:" - + book_content += f"\n\n*** Chapitre {i+1} - Partie {j+1} :title:target_{args.objective_words}:" + print("--------------") print(book_content) print("--------------") -print("vous pouvez copier cette cascade de parties de livre dans livre.org") + +if args.save_livre: + now = datetime.datetime.now() + date_string = now.strftime("%Y-%m-%d_%H-%M-%S") + backup_file_path = f"{date_string}__livre.org" + os.copy("livre.org", backup_file_path) + + with open('livre.org', 'w') as f: + f.write(book_content) + print("Livres sauvegardé sous le nom de livre.txt") +else: + print("Vous pouvez copier cette cascade de parties de livre dans livre.org") diff --git a/update_book.sh b/update_book_folder.sh similarity index 100% rename from update_book.sh rename to update_book_folder.sh