#!/bin/bash # conversion des pages d'articles depuis le dossier source en orgmode # liste des dossiers à convertir #blogs_folders=("dragonfeu_blog" "tykayn_blog" "cipherbliss_blog" "qzine_blog" "cil_gometz") # blogs_folders=("dragonfeu_blog") # blogs_folders=("tykayn_blog") blogs_folders=("cil_gometz") # blogs_folders=("cipherbliss_blog") source_file_extension="org" #!/bin/bash convert_sources() { source_file_extension="org" templates_path=$1 mkdir -p converted for i in *.${source_file_extension} ; do echo "$i" # Transformer en html echo "to HTML:" pandoc -f "${source_file_extension}" -t html -s "${i}" -o "converted/${i%.${source_file_extension}}.html" --metadata title="$website_name" # Transformer en gmi echo "to GMI:" pandoc --template $templates_path../../template_gemini.lua -f "${source_file_extension}" -t $templates_path../../gmi.lua -s "${i}" -o "converted/${i%.${source_file_extension}}.gmi" # ajout des footers à chaque article # cat '../../templates/website_pages/footer-articles.md.gmi' >> "${i%.${source_file_extension}}.gmi" done } # Définition de la fonction generate_website generate_website() { echo " Génération du site $1..." mkdir -p gemini-capsules/$website_name rm -rf gemini-capsules/$website_name/* mkdir -p gemini-capsules/$website_name/lang_fr mkdir -p gemini-capsules/$website_name/lang_en mkdir -p html-websites/$website_name rm -rf html-websites/$website_name/* mkdir -p html-websites/$website_name/lang_fr mkdir -p html-websites/$website_name/lang_en mkdir -p sources/$website_name/img mkdir -p sources/$website_name/lang_fr mkdir -p sources/$website_name/lang_en # Ajoutez ici le code pour générer le site Web echo "Le site $1 a été généré avec succès." # conversion des pages statiques cd sources/$website_name convert_sources #déplacer dans le site généré mv converted/*.html ../../html-websites/$website_name/ mv converted/*.gmi ../../gemini-capsules/$website_name/ # traduction fr cd lang_fr convert_sources ../ mv converted/*.html ../../../html-websites/$website_name/lang_fr/ mv converted/*.gmi ../../../gemini-capsules/$website_name/lang_fr/ echo "pages en français du site web $website_name converties" cd .. # traduction en cd lang_en convert_sources ../ mv converted/*.html ../../../html-websites/$website_name/lang_en/ mv converted/*.gmi ../../../gemini-capsules/$website_name/lang_en/ echo "pages en anglais du site web $website_name converties" # création de l'index: # prendre les fichiers markdown du dossier md/ , et créer un index des fichiers situés dedans, rangés par nom de fichier décroissant, sauver le tout dans un fichier index.gmi # python3 build_index_gemini.py # mv index.gmi source/converted cd .. cd .. cd .. pwd python3 enrich_html.py html-websites/dragonfeu_blog -t $website_name --style style_general.css python3 enrich_html.py html-websites/dragonfeu_blog/lang_fr -t $website_name --style style_general.css python3 enrich_html.py html-websites/dragonfeu_blog/lang_en -t $website_name --style style_general.css } # regrouper les types de fichiers générés # Boucle à travers la liste des sites Web for website_name in "${blogs_folders[@]}"; do generate_website $website_name python3 build_index_gemini.py $website_name mv "index_$website_name.html" "html-websites/$website_name" mv "index_$website_name.gmi" "gemini-capsules/$website_name" done