mirror of
https://forge.chapril.org/tykayn/orgmode-to-gemini-blog
synced 2025-06-20 09:04:42 +02:00
move on index build and linking previous and next articles
This commit is contained in:
parent
7d221d970a
commit
16b93f380e
1711 changed files with 231792 additions and 838 deletions
201
converters.sh
201
converters.sh
|
@ -15,28 +15,25 @@ style_file="templates/styles/style_general.css"
|
|||
destination_gemini="gemini-capsules/$website_name/"
|
||||
|
||||
# Boucle à travers tous les arguments passés en entrée
|
||||
for arg in "$@"
|
||||
do
|
||||
for arg in "$@"; do
|
||||
# Si l'argument est connu, ajouter le nom de blog correspondant à la liste
|
||||
blogs_folders+=("$arg")
|
||||
done
|
||||
|
||||
# Afficher la liste des noms de blogs
|
||||
echo "----------- La liste des noms de blogs est :"
|
||||
for blog in "${blogs_folders[@]}"
|
||||
do
|
||||
echo "- $blog"
|
||||
done
|
||||
for blog in "${blogs_folders[@]}"; do
|
||||
echo "- $blog"
|
||||
done
|
||||
|
||||
first_wd=$PWD
|
||||
is_directory_empty() {
|
||||
website_name = $1
|
||||
if [ -z "$(ls -A /sources/$website_name/lang_fr/converted/)" ]; then
|
||||
echo "coucou"
|
||||
fi
|
||||
website_name = $1
|
||||
if [ -z "$(ls -A /sources/$website_name/lang_fr/converted/)" ]; then
|
||||
echo "coucou"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# convertir les fichiers org d'un dossier vers html
|
||||
convert_sources() {
|
||||
|
||||
|
@ -52,57 +49,54 @@ convert_sources() {
|
|||
|
||||
ls $website_full_path/*.org
|
||||
|
||||
# echo "----------- convert_sources : aucun document dans converted"
|
||||
if [ -z "$(ls -A /sources/$website_name/lang_fr/converted/)" ]; then
|
||||
echo "coucou on convertit tout"
|
||||
for i in $( find "$website_full_path" -maxdepth 1 -type f -name "*.$source_file_extension") ; do
|
||||
# echo "----------- convert_sources : org -> html et -> md : "
|
||||
# echo " $i"
|
||||
# echo ""
|
||||
# echo "----------- convert_sources : aucun document dans converted"
|
||||
if [ -z "$(ls -A /sources/$website_name/lang_fr/converted/)" ]; then
|
||||
echo "coucou on convertit tout"
|
||||
for i in $(find "$website_full_path" -maxdepth 1 -type f -name "*.$source_file_extension"); do
|
||||
# echo "----------- convert_sources : org -> html et -> md : "
|
||||
# echo " $i"
|
||||
# echo ""
|
||||
pandoc --from "${source_file_extension}" --to html -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||
pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||
done
|
||||
else
|
||||
else
|
||||
echo "on ne convertit que les plus récents "
|
||||
for i in $( find "$website_full_path" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20") ; do
|
||||
# echo "----------- convert_sources : org -> html et -> md : "
|
||||
# echo " $i"
|
||||
# echo ""
|
||||
for i in $(find "$website_full_path" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20"); do
|
||||
# echo "----------- convert_sources : org -> html et -> md : "
|
||||
# echo " $i"
|
||||
# echo ""
|
||||
pandoc --from "${source_file_extension}" --to html -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||
pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
# exit
|
||||
# convertir seulement les pages récentes
|
||||
# exit
|
||||
# convertir seulement les pages récentes
|
||||
|
||||
# for i in $(find "$website_full_path/lang_fr" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20") ; do
|
||||
# # ne transformer que les posts récents dans le dossier converted
|
||||
# # Transformer en html et en markdown
|
||||
# pandoc --from "${source_file_extension}" --to html -s "${i}" -o \
|
||||
# "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||
# # pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||
# done
|
||||
# for i in $("$website_full_path/lang_en" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20") ; do
|
||||
# # ne transformer que les posts récents dans le dossier converted
|
||||
# # Transformer en html et en markdown
|
||||
# pandoc --from "${source_file_extension}" --to html -s "${i}" -o \
|
||||
# "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||
# # pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||
# done
|
||||
# for i in $(find "$website_full_path/lang_fr" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20") ; do
|
||||
# # ne transformer que les posts récents dans le dossier converted
|
||||
# # Transformer en html et en markdown
|
||||
# pandoc --from "${source_file_extension}" --to html -s "${i}" -o \
|
||||
# "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||
# # pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||
# done
|
||||
# for i in $("$website_full_path/lang_en" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20") ; do
|
||||
# # ne transformer que les posts récents dans le dossier converted
|
||||
# # Transformer en html et en markdown
|
||||
# pandoc --from "${source_file_extension}" --to html -s "${i}" -o \
|
||||
# "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||
# # pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||
# done
|
||||
cd $first_wd
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
# Définition de la fonction generate_website
|
||||
generate_website() {
|
||||
website_name=$1
|
||||
echo "----------- convert_sources :Génération du site $1..."
|
||||
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
|
||||
|
@ -114,37 +108,33 @@ generate_website() {
|
|||
cp templates/$website_name/$source_file_extension/* sources/$website_name/templates
|
||||
fi
|
||||
|
||||
|
||||
rm -rf html-websites/$website_name/*
|
||||
mkdir -p html-websites/$website_name
|
||||
mkdir -p html-websites/$website_name/feed
|
||||
|
||||
rm -rf html-websites/$website_name/*
|
||||
# rm -rf sources/$website_name/converted/*
|
||||
# rm -rf sources/$website_name/lang_fr/converted/*
|
||||
# rm -rf sources/$website_name/lang_en/converted/*
|
||||
# rm -rf sources/$website_name/converted/*
|
||||
# rm -rf sources/$website_name/lang_fr/converted/*
|
||||
# rm -rf sources/$website_name/lang_en/converted/*
|
||||
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"
|
||||
#
|
||||
#
|
||||
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"
|
||||
|
||||
# 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"
|
||||
|
||||
|
@ -153,28 +143,27 @@ generate_website() {
|
|||
}
|
||||
|
||||
convert_markdown_to_gmi() {
|
||||
|
||||
|
||||
destination_gemini="gemini-capsules/$website_name"
|
||||
echo "----------- convert_sources : convert_markdown_to_gmi : $website_name"
|
||||
|
||||
rm -rf gemini-capsules/$website_name/*
|
||||
rm -rf gemini-capsules/$website_name/*
|
||||
mkdir -p gemini-capsules/$website_name
|
||||
mkdir -p gemini-capsules/$website_name/lang_fr
|
||||
mkdir -p gemini-capsules/$website_name/lang_en
|
||||
|
||||
# echo "----------- convert_markdown_to_gmi : $PWD"
|
||||
# echo "----------- convert_markdown_to_gmi : destination: $destination_gemini"
|
||||
|
||||
# echo "----------- convert_markdown_to_gmi : $PWD"
|
||||
# echo "----------- convert_markdown_to_gmi : destination: $destination_gemini"
|
||||
# echo "----------- convert_markdown_to_gmi : fichiers markdown présents dans le dossier de base: "
|
||||
|
||||
# echo "----------- convert_markdown_to_gmi : fichiers markdown présents dans le dossier de base: "
|
||||
ls -l sources/$website_name/converted/*.md | wc
|
||||
|
||||
ls -l sources/$website_name/converted/*.md |wc
|
||||
|
||||
# # faire les fichiers gemini à partir du markdown
|
||||
# pages de base
|
||||
# pages fr
|
||||
# pages en
|
||||
for fichier in sources/$website_name/converted/*.md ; do
|
||||
for fichier in sources/$website_name/converted/*.md; do
|
||||
if [ -f "$fichier" ]; then
|
||||
echo "----------- convert_markdown_to_gmi : md2gemini : $destination_gemini : $fichier"
|
||||
md2gemini "$fichier" -w -d $destination_gemini/
|
||||
|
@ -182,7 +171,7 @@ convert_markdown_to_gmi() {
|
|||
done
|
||||
cp sources/$website_name/converted/*.gmi "$destination_gemini/lang_fr"
|
||||
|
||||
for fichier in sources/$website_name/lang_fr/converted/*.md ; do
|
||||
for fichier in sources/$website_name/lang_fr/converted/*.md; do
|
||||
if [ -f "$fichier" ]; then
|
||||
echo "----------- convert_markdown_to_gmi : md2gemini : $fichier"
|
||||
md2gemini "$fichier" -w -d sources/$website_name/lang_fr/converted/
|
||||
|
@ -190,7 +179,7 @@ convert_markdown_to_gmi() {
|
|||
done
|
||||
cp sources/$website_name/lang_fr/converted/*.gmi "$destination_gemini/lang_fr"
|
||||
|
||||
for fichier in sources/$website_name/lang_en/converted/*.md ; do
|
||||
for fichier in sources/$website_name/lang_en/converted/*.md; do
|
||||
if [ -f "$fichier" ]; then
|
||||
echo "----------- convert_markdown_to_gmi : md2gemini : $fichier"
|
||||
md2gemini "$fichier" -w -d sources/$website_name/lang_fr/converted/
|
||||
|
@ -198,20 +187,14 @@ convert_markdown_to_gmi() {
|
|||
done
|
||||
cp sources/$website_name/lang_en/converted/*.gmi "$destination_gemini/lang_en"
|
||||
|
||||
|
||||
|
||||
|
||||
echo "----------- génération des fichiers gemini faite."
|
||||
|
||||
pwd
|
||||
|
||||
|
||||
|
||||
# echo "fichiers gmi présents:"
|
||||
# ls -l $destination_gemini*.gmi |wc -l
|
||||
echo "fichiers gmi présents:"
|
||||
ls -l $destination_gemini*.gmi | wc -l
|
||||
}
|
||||
|
||||
|
||||
# regrouper les types de fichiers générés
|
||||
|
||||
bash sass_styles.sh
|
||||
|
@ -219,41 +202,41 @@ bash sass_styles.sh
|
|||
# Boucle à travers la liste des sites Web
|
||||
for website_name in "${blogs_folders[@]}"; do
|
||||
|
||||
export website_name=$website_name
|
||||
generate_website $website_name
|
||||
convert_markdown_to_gmi $website_name
|
||||
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é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"
|
||||
python3 gather_tags_in_json.py $website_name
|
||||
# créer les pages de tags
|
||||
mkdir -p "html-websites/$website_name/tags"
|
||||
mkdir -p "html-websites/$website_name/tag"
|
||||
python3 gather_tags_in_json.py $website_name
|
||||
|
||||
# déplacer les fichiers générés en html dans le dossier statique
|
||||
mv sources/$website_name/converted/*.html html-websites/$website_name/
|
||||
|
||||
# déplacer les fichiers générés en html dans le dossier statique
|
||||
mv sources/$website_name/converted/*.html html-websites/$website_name/
|
||||
python3 enrich_html.py $website_name --style $style_file
|
||||
|
||||
python3 enrich_html.py $website_name --style $style_file
|
||||
# copier le style dans le dossier html
|
||||
cp $style_file html-websites/$website_name/style.css
|
||||
# copier le script permettant la recherche
|
||||
cp templates/js/main_script.js html-websites/$website_name/main_script.js
|
||||
|
||||
# copier le style dans le dossier html
|
||||
cp $style_file html-websites/$website_name/style.css
|
||||
# copier le script permettant la recherche
|
||||
cp templates/js/main_script.js html-websites/$website_name/main_script.js
|
||||
# traiter les réductions d'images dans l'inbox
|
||||
python3 pictures_resize.py
|
||||
|
||||
# traiter les réductions d'images dans l'inbox
|
||||
python3 pictures_resize.py
|
||||
# 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
|
||||
|
||||
# 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
|
||||
|
||||
echo "génération faite dans html-websites/$website_name"
|
||||
echo "génération faite dans html-websites/$website_name"
|
||||
done
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue