orgmode-to-gemini-blog/converters.sh

85 lines
2.7 KiB
Bash
Raw Normal View History

2024-11-02 18:30:04 +01:00
#!/bin/bash
# conversion des pages d'articles depuis le dossier source en orgmode
2024-11-03 11:06:34 +01:00
# liste des dossiers à convertir
blogs_folders=("dragonfeu_blog" "tykayn_blog" "cipherbliss_blog")
2024-11-03 11:06:34 +01:00
source_file_extension="org"
convert_sources(){
source_file_extension="org"
mkdir converted
# trasnformer en html
for i in *.$source_file_extension ; do echo "$i" && pandoc -f $source_file_extension -t html -s $i -o $i.html ; done
# transformer en gmi
for i in *.$source_file_extension ;
do echo "$i" && pandoc --template ../template_gemini.lua -f $source_file_extension -t ../gmi.lua -s $i -o $i.gmi ;
cat '../website_pages/footer-articles.md.gmi' >> $i.gmi ;
done
}
2024-11-03 11:06:34 +01:00
# Définition de la fonction generate_website
generate_website() {
echo " Génération du site $1..."
mkdir -p gemini-capsules/$website_name
2024-11-03 11:42:44 +01:00
rm -rf gemini-capsules/$website_name
mkdir -p html-websites/$website_name
2024-11-03 11:42:44 +01:00
rm -rf html-websites/$website_name
mkdir -p sources/$website_name/img
mkdir -p sources/$website_name/lang_fr
mkdir -p sources/$website_name/lang_en
2024-11-03 11:06:34 +01:00
mv source/converted/*.gmi gemini-capsules/$website_name
mv source/converted/*.html gemini-capsules/$website_name
# Ajoutez ici le code pour générer le site Web
echo "Le site $1 a été généré avec succès."
2024-11-03 11:42:44 +01:00
# convert_sources
#déplacer dans le site généré
cd lang_fr
convert_sources
2024-11-03 11:42:44 +01:00
python3 ../../enrich_html.py sources/$website_name --title $website_name --style ../../style_general.css
mv *.html ../../html-websites/$website_name
mv *.gmi ../../gemini-capsules/$website_name
2024-11-03 11:06:34 +01:00
cd ..
2024-11-03 11:42:44 +01:00
echo "pages en français du site web $website_name converties"
# cd lang_en
# convert_sources
# cd ..
# mv *.md converted
# mv *.html converted
# mv *.gmi converted
2024-11-03 11:06:34 +01:00
# conversion des pages d'articles en markwon si vous utilisez une source d'articles en markdown, perso c'est orgmode
# conversion des pages statiques
2024-11-03 11:42:44 +01:00
# cd website_pages
# for i in *.md ; do echo "$i" && pandoc --template ../template_gemini.lua -f markdown -t ../gmi.lua -s $i -o $i.gmi ; done
# for i in *.org ; do echo "$i" && pandoc --template ../template_gemini.lua -f org -t ../gmi.lua -s $i -o $i.gmi ; done
# mv *.gmi gemini-capsules/$website_name
# cd ..
2024-11-03 11:06:34 +01:00
# 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
2024-11-03 11:42:44 +01:00
# python3 build_index_gemini.py
# mv index.gmi source/converted
2024-11-03 11:06:34 +01:00
2024-11-03 11:42:44 +01:00
2024-11-03 11:06:34 +01:00
}
# regrouper les types de fichiers générés
# Boucle à travers la liste des sites Web
2024-11-03 11:42:44 +01:00
for website_name in "${blogs_folders[@]}"; do
2024-11-03 11:06:34 +01:00
generate_website $website_name
done