mirror of
https://forge.chapril.org/tykayn/orgmode-to-gemini-blog
synced 2025-06-20 09:04:42 +02:00
up logging of generation
This commit is contained in:
parent
fa8636185d
commit
ce6eb680b7
23 changed files with 340 additions and 374 deletions
|
@ -18,20 +18,17 @@ start_time = time.time()
|
|||
# Configs pour tester
|
||||
generate_linkings_json = True
|
||||
generate_articles = True
|
||||
run_pandoc = True # le plus long quand on a beaucoup d'articles
|
||||
# run_pandoc = False
|
||||
|
||||
run_gemini = True
|
||||
run_gemini = False
|
||||
|
||||
# Configurer argparse pour prendre le blog en argument
|
||||
parser = argparse.ArgumentParser(description='Générer une liste des derniers articles de blog.')
|
||||
parser.add_argument('blog', type=str, help='Nom du dossier du blog à traiter', default='tykayn_blog')
|
||||
# parser.add_argument('--run_gemini', type=str, help='Activer ou non la génération des billets gemini', default=True)
|
||||
parser.add_argument('blog', type=str, help='Nom du dossier du blog à traiter', default='cipherbliss_blog')
|
||||
parser.add_argument('--run_gemini', type=str, help='Activer ou non la génération des billets gemini', default=False)
|
||||
parser.add_argument('--run_pandoc', type=str, help='Activer ou non la génération des fichiers html', default=True)
|
||||
|
||||
args = parser.parse_args()
|
||||
# run_gemini = args.run_gemini
|
||||
|
||||
run_gemini = args.run_gemini
|
||||
run_pandoc = args.run_pandoc
|
||||
# Fonction pour extraire le basename d'un fichier
|
||||
def get_basename(file_name):
|
||||
return os.path.splitext(file_name)[0]
|
||||
|
@ -90,16 +87,25 @@ Navigation:
|
|||
try:
|
||||
with open(destination_gmi+'/'+output_filename_slug+'.gmi', 'w', encoding='utf-8') as f:
|
||||
f.write(output)
|
||||
print(f"Fichier GMI sauvegardé avec succès : {output_filename_slug}")
|
||||
# print(f"Fichier GMI sauvegardé avec succès : {output_filename_slug}")
|
||||
except OSError as e:
|
||||
print(f"Erreur lors de la sauvegarde du fichier : {e}")
|
||||
return output
|
||||
|
||||
if generate_linkings_json :
|
||||
count_articles = len(os.listdir(directory))
|
||||
counter=0
|
||||
|
||||
print(f"Génération des liens entre articles pour {count_articles} articles")
|
||||
print(f"run_pandoc: {run_pandoc}")
|
||||
print(f"run_gemini: {run_gemini}")
|
||||
|
||||
# Parcourir les fichiers du dossier
|
||||
for file_name in os.listdir(directory):
|
||||
if file_name.endswith('.org'):
|
||||
counter+=1
|
||||
if counter % 10 == 0:
|
||||
print(f"{time.strftime('%H:%M:%S')} : Articles traités : {counter}/{count_articles}")
|
||||
file_path = os.path.join(directory, file_name)
|
||||
with open(file_path, "r", encoding="utf-8") as f:
|
||||
content = f.read()
|
||||
|
@ -151,6 +157,7 @@ if generate_linkings_json :
|
|||
|
||||
if run_pandoc and rebuild_this_article_html:
|
||||
# convertir le contenu d'article org vers html
|
||||
print(f"{time.strftime('%H:%M:%S')} : Conversion de {file_name} en html")
|
||||
html_content = pypandoc.convert_text(content_without_h1, 'html', format='org')
|
||||
else:
|
||||
html_content = content_without_h1
|
||||
|
@ -198,7 +205,7 @@ for slug, info in files_dict.items():
|
|||
html_content = info['html_content']
|
||||
rewritten_html_content = html_content
|
||||
for roam_id, slug in articles_roam_id_to_slugs.items():
|
||||
if roam_id in rewritten_html_content:
|
||||
if roam_id is not None and isinstance(rewritten_html_content, str) and roam_id in rewritten_html_content:
|
||||
print(f'{roam_id} -> {slug}')
|
||||
rewritten_html_content = rewritten_html_content.replace(f'href="#{roam_id}"', f'href="{template_content["NDD"]}/{slug}"')
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue