import os # Variables personnalisables DOSSIER_MD = 'source/dragonfeu_blog' # Nom du dossier contenant les fichiers Markdown FICHIER_INDEX = 'index.gmi' # Nom du fichier d'index à générer TITRE_INDEX = f" # DragonFeu - Articles" # Titre pour le fichier d'index def generer_index(dossier_md, fichier_index, titre_index): # Chemin absolu du dossier parent (pour sauver le fichier d'index) dossier_parent = os.path.dirname(os.path.abspath(__file__)) # Chemin complet du dossier contenant les Markdown chemin_dossier_md = os.path.join(dossier_parent, dossier_md) # Vérifie si le dossier existe if not os.path.exists(chemin_dossier_md): print(f"Erreur : Le dossier '{dossier_md}' n'existe pas.") return # Liste les fichiers Markdown, trie par nom décroissant try: fichiers_md = sorted([f.replace('.md', '.gmi') for f in os.listdir(chemin_dossier_md) if f.endswith('.md')], reverse=True) except OSError as e: print(f"Erreur lors de la lecture du dossier : {e}") return # Chemin complet pour le fichier d'index chemin_fichier_index = os.path.join(dossier_parent, fichier_index) # Génère le contenu du fichier d'index contenu_index = f"{titre_index}\n{'- ' * len(titre_index)}\n\n" for fichier in fichiers_md: contenu_index += f"=> {fichier}\n" # Écrit le contenu dans le fichier d'index try: with open(chemin_fichier_index, 'w', encoding='utf-8') as file: file.write(contenu_index) print(f"Fichier d'index '{fichier_index}' généré avec succès.") except OSError as e: print(f"Erreur lors de l'écriture du fichier d'index : {e}") if __name__ == "__main__": generer_index(DOSSIER_MD, FICHIER_INDEX, TITRE_INDEX)