This commit is contained in:
Tykayn 2025-02-23 15:50:56 +01:00 committed by tykayn
parent 672f61f2bb
commit 6d77de4696
15 changed files with 203 additions and 506 deletions

View file

@ -10,6 +10,8 @@ source_file_extension="org"
style_file="templates/styles/style_general.css"
destination_gemini="gemini-capsules/$website_name/"
remove_all_previous_generated_files=false
# Boucle à travers tous les arguments passés en entrée
for arg in "$@"; do
# Si l'argument est connu, ajouter le nom de blog correspondant à la liste
@ -30,24 +32,6 @@ is_directory_empty() {
fi
}
# convertir les fichiers org d'un dossier vers html
convert_sources() {
# echo "argument : $1"
source_file_extension="org"
website_full_path=$1
echo "----------- convert_sources : $website_full_path"
mkdir -p "${website_full_path}/converted/"
cd "${website_full_path}"
pwd
ls $website_full_path/*.org
cd $first_wd
}
# Définition de la fonction generate_website
generate_website() {
website_name=$1
@ -55,44 +39,35 @@ generate_website() {
cp $style_file html-websites/$website_name/style.css
if [ ! -d "sources/$website_name" ]; then
mkdir -p sources/$website_name/img
mkdir -p sources/$website_name/lang_fr
mkdir -p sources/$website_name/lang_en
mkdir -p sources/$website_name/templates
mkdir -p sources/$website_name/build
mkdir -p sources/$website_name/converted
cp templates/$website_name/$source_file_extension/* sources/$website_name/templates
echo "Le dossier source n'existe pas pour le site $website_name"
read -p "Voulez-vous créer le dossier source pour le nouveau site $website_name? (o/n) [n] " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Oo]$ ]]; then
echo "Arrêt de la génération pour $website_name"
return 1
fi
if [[ $REPLY =~ ^[Oo]$ ]]; then
mkdir -p sources/$website_name/img
mkdir -p sources/$website_name/lang_fr
mkdir -p sources/$website_name/lang_en
mkdir -p sources/$website_name/templates
mkdir -p sources/$website_name/build
mkdir -p sources/$website_name/converted
cp templates/$website_name/$source_file_extension/* sources/$website_name/templates
fi
fi
rm -rf html-websites/$website_name/*
mkdir -p html-websites/$website_name
mkdir -p html-websites/$website_name/feed
if [ "$remove_all_previous_generated_files" = true ]; then
rm -rf html-websites/$website_name/*
fi
mkdir -p html-websites/$website_name/lang_fr
mkdir -p html-websites/$website_name/lang_fr
# conversion des pages statiques
# echo "----------- convert_sources : $root_folder/sources/$website_name"
convert_sources "$root_folder/sources/$website_name"
# echo "----------- convert_sources : $root_folder/sources/$website_name/templates"
convert_sources "$root_folder/sources/$website_name/templates"
# echo "----------- convert_sources : pages template $website_name converties"
#
# traduction fr
convert_sources "$root_folder/sources/$website_name/lang_fr"
# echo "----------- convert_sources :pages en français du site web $website_name converties"
# traduction en
convert_sources "$root_folder/sources/$website_name/lang_en"
# echo "----------- pages en anglais du site web $website_name converties"
ls -l "$root_folder/sources/$website_name/converted"
# bash concat_list_billets.sh $website_name
mkdir -p "html-websites/$website_name"
mkdir -p "html-websites/$website_name/feed"
mkdir -p "html-websites/$website_name/tags"
mkdir -p "html-websites/$website_name/tag"
mkdir -p "html-websites/$website_name/lang_fr"
mkdir -p "html-websites/$website_name/lang_en"
}
@ -104,21 +79,15 @@ for website_name in "${blogs_folders[@]}"; do
export website_name=$website_name
generate_website $website_name
# TODO reenable markdown to gemini when checks are done
# convert_markdown_to_gmi $website_name
# création de l'index listant les articles pour le html et la capsule gemini:
# 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,
# générer l'index montrant les posts les plus récents à la suite
bash concat_list_billets.sh $website_name
# sauver le tout dans un fichier index.gmi
# python3 build_indexes.py $website_name
# créer les pages de tags
mkdir -p "html-websites/$website_name/tags"
mkdir -p "html-websites/$website_name/tag"
# conversion des pages statiques
python3 linking_articles_prev_next.py $website_name
# créer les pages de tags à partir des infos de tag trouvées dans les fichiers org
python3 gather_tags_in_json.py $website_name
# copier le style dans le dossier html
@ -131,8 +100,7 @@ for website_name in "${blogs_folders[@]}"; do
# régénérer le flux Atom du blog
mkdir -p "html-websites/$website_name/feed"
# python3 atom_generate.py $website_name
mv index_$website_name.xml html-websites/$website_name/feed/index.xml
python3 atom_generate.py $website_name
echo "génération faite dans html-websites/$website_name"
done