mirror of
https://forge.chapril.org/tykayn/orgmode-to-gemini-blog
synced 2025-06-20 09:04:42 +02:00
up converters
This commit is contained in:
parent
62e7522e95
commit
5d71ff6c5b
4 changed files with 79 additions and 51 deletions
109
converters.sh
109
converters.sh
|
@ -29,36 +29,68 @@ do
|
||||||
done
|
done
|
||||||
|
|
||||||
first_wd=$PWD
|
first_wd=$PWD
|
||||||
|
is_directory_empty() {
|
||||||
|
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() {
|
convert_sources() {
|
||||||
|
|
||||||
echo "argument : $1"
|
echo "argument : $1"
|
||||||
|
source_file_extension="org"
|
||||||
|
website_full_path=$1
|
||||||
|
|
||||||
source_file_extension="org"
|
echo "-----------"
|
||||||
website_full_path=$1
|
echo "----------- convert_sources : $website_full_path"
|
||||||
|
mkdir -p "${website_full_path}/converted/"
|
||||||
|
cd "${website_full_path}"
|
||||||
|
pwd
|
||||||
|
|
||||||
echo "----------- convert_sources : convertir les fichiers orgmode vers gemini et html dans le dossier source/nom_du_blog/ racine, lang_fr et lang_en"
|
ls $website_full_path/*.org
|
||||||
|
|
||||||
mkdir -p "${website_full_path}/converted/"
|
# 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
|
||||||
|
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 ""
|
||||||
|
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
|
||||||
|
|
||||||
|
# exit
|
||||||
|
# convertir seulement les pages récentes
|
||||||
|
|
||||||
cd "${website_full_path}"
|
# for i in $(find "$website_full_path/lang_fr" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20") ; do
|
||||||
pwd
|
# # ne transformer que les posts récents dans le dossier converted
|
||||||
# ls -l *.${source_file_extension}
|
# # Transformer en html et en markdown
|
||||||
|
# pandoc --from "${source_file_extension}" --to html -s "${i}" -o \
|
||||||
for i in *.${source_file_extension} ; do
|
# "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||||
# echo "----------- $i"
|
# # pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||||
#
|
# done
|
||||||
# # Transformer en html et en markdown
|
# for i in $("$website_full_path/lang_en" -maxdepth 1 -type f -name "*.$source_file_extension" -newermt "2024-11-20") ; do
|
||||||
# echo "----------- convert_sources : conversion vers ${website_full_path}/converted/${i%.${source_file_extension}}.html"
|
# # 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="$website_name"
|
# pandoc --from "${source_file_extension}" --to html -s "${i}" -o \
|
||||||
|
# "${website_full_path}/converted/${i%.${source_file_extension}}.html" --metadata title="$i - $website_name"
|
||||||
# ls -l "${website_full_path}/converted/${i%.${source_file_extension}}.html"
|
# # pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
||||||
|
# done
|
||||||
pandoc --from "${source_file_extension}" --to markdown -s "${i}" -o "${website_full_path}/converted/${i%.${source_file_extension}}.md" --metadata title="$website_name"
|
cd $first_wd
|
||||||
done
|
|
||||||
cd $first_wd
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -66,6 +98,7 @@ convert_sources() {
|
||||||
|
|
||||||
# Définition de la fonction generate_website
|
# Définition de la fonction generate_website
|
||||||
generate_website() {
|
generate_website() {
|
||||||
|
website_name=$1
|
||||||
echo "----------- convert_sources :Génération du site $1..."
|
echo "----------- convert_sources :Génération du site $1..."
|
||||||
cp $style_file html-websites/$website_name/style.css
|
cp $style_file html-websites/$website_name/style.css
|
||||||
|
|
||||||
|
@ -86,29 +119,31 @@ generate_website() {
|
||||||
mkdir -p html-websites/$website_name/feed
|
mkdir -p html-websites/$website_name/feed
|
||||||
|
|
||||||
rm -rf html-websites/$website_name/*
|
rm -rf html-websites/$website_name/*
|
||||||
rm -rf sources/$website_name/converted/*
|
# rm -rf sources/$website_name/converted/*
|
||||||
rm -rf sources/$website_name/lang_fr/converted/*
|
# rm -rf sources/$website_name/lang_fr/converted/*
|
||||||
rm -rf sources/$website_name/lang_en/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
|
||||||
mkdir -p html-websites/$website_name/lang_fr
|
mkdir -p html-websites/$website_name/lang_fr
|
||||||
|
|
||||||
echo "----------- convert_sources :Le site $1 a été généré avec succès."
|
|
||||||
|
|
||||||
# conversion des pages statiques
|
# conversion des pages statiques
|
||||||
convert_sources "$root_folder/sources/$website_name"
|
|
||||||
#
|
|
||||||
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
|
# traduction fr
|
||||||
convert_sources "$root_folder/sources/$website_name/lang_fr"
|
convert_sources "$root_folder/sources/$website_name/lang_fr"
|
||||||
echo "----------- convert_sources :pages en français du site web $website_name converties"
|
echo "----------- convert_sources :pages en français du site web $website_name converties"
|
||||||
|
#
|
||||||
|
#
|
||||||
# traduction en
|
# # traduction en
|
||||||
convert_sources "$root_folder/sources/$website_name/lang_en"
|
# convert_sources "$root_folder/sources/$website_name/lang_en"
|
||||||
echo "----------- pages en anglais du site web $website_name converties"
|
# echo "----------- pages en anglais du site web $website_name converties"
|
||||||
|
|
||||||
|
|
||||||
ls -l "$root_folder/sources/$website_name/converted"
|
ls -l "$root_folder/sources/$website_name/converted"
|
||||||
|
@ -217,7 +252,7 @@ for website_name in "${blogs_folders[@]}"; do
|
||||||
|
|
||||||
# régénérer le flux Atom du blog
|
# régénérer le flux Atom du blog
|
||||||
mkdir -p "html-websites/$website_name/feed"
|
mkdir -p "html-websites/$website_name/feed"
|
||||||
python3 atom_generate.py $website_name
|
# python3 atom_generate.py $website_name
|
||||||
mv index_$website_name.xml html-websites/$website_name/feed/index.xml
|
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"
|
||||||
|
|
|
@ -87,7 +87,7 @@ def generate_html_pages_for_all_tags(tag_to_files, html_output_folder):
|
||||||
|
|
||||||
html_content += """
|
html_content += """
|
||||||
</ul>
|
</ul>
|
||||||
<p><a href="index.html">Retour à l'index des tags</a></p>
|
<p><a href="/tags/">Retour à l'index des tags</a></p>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -33,13 +33,6 @@ tranches de vie en une dizaine de chapitres.
|
||||||
|
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
En 2007, alors que nous écrivions la première édition du fanzine !Q n°4
|
|
||||||
sur la masturbation et les Sextoys dont les stocks sont aujourd'hui tous
|
|
||||||
vendus, je fus contacté pour la première fois par la mystérieuse
|
|
||||||
Jeanine, qui souhaita faire partager ses tranches de vie en une dizaine
|
|
||||||
de chapitres.
|
|
||||||
|
|
||||||
|
|
||||||
#+begin_quote
|
#+begin_quote
|
||||||
Mon récit d'expériences vécues est strictement véridique, pour autant
|
Mon récit d'expériences vécues est strictement véridique, pour autant
|
||||||
seulement les noms des personnes et des lieux ont été changés.
|
seulement les noms des personnes et des lieux ont été changés.
|
||||||
|
@ -48,11 +41,11 @@ seulement les noms des personnes et des lieux ont été changés.
|
||||||
|
|
||||||
Je m'appelle Jeanine, et je suis mariée depuis fort
|
Je m'appelle Jeanine, et je suis mariée depuis fort
|
||||||
longtemps avec Roger, mon complice, mon
|
longtemps avec Roger, mon complice, mon
|
||||||
confident.Depuis l'âge de douze/treize ans je me
|
confident. Depuis l'âge de douze/treize ans je me
|
||||||
caresse assidûment le minou et suis esclave des jouissances que me donne
|
caresse assidûment le minou et suis esclave des jouissances que me donne
|
||||||
mon clitoris.Il me faut jouir plusieurs fois de suite
|
mon clitoris. Il me faut jouir plusieurs fois de suite
|
||||||
pour calmer mon libido et me sentir assouvie.Personne
|
pour calmer mon libido et me sentir assouvie.Personne
|
||||||
ne m'a initié.Seule dans mon lit, un léger picotement
|
ne m'a initié. Seule dans mon lit, un léger picotement
|
||||||
me porta à frictionner mon entre jambe, maladroitement, et petit à
|
me porta à frictionner mon entre jambe, maladroitement, et petit à
|
||||||
petit, un plaisir inconnu a commencé par m'envahir. Au bout de quelque
|
petit, un plaisir inconnu a commencé par m'envahir. Au bout de quelque
|
||||||
temps, ayant pris goût à cette douce sensation, j'avais raffiné les
|
temps, ayant pris goût à cette douce sensation, j'avais raffiné les
|
||||||
|
|
6
utils.py
6
utils.py
|
@ -35,7 +35,7 @@ def trouver_nom_article(fichier_org, blog_name, format="html"):
|
||||||
|
|
||||||
nom_article = ''
|
nom_article = ''
|
||||||
|
|
||||||
mylog('trouver_nom_article format', format)
|
# mylog('trouver_nom_article format', format)
|
||||||
# Expressions régulières pour trouver les titres de niveau 1 et 2
|
# Expressions régulières pour trouver les titres de niveau 1 et 2
|
||||||
if format == 'html':
|
if format == 'html':
|
||||||
titre_niveau_1 = r'<h1\s+(?:id|data-created)="[^"]*">(.*?)</h1>'
|
titre_niveau_1 = r'<h1\s+(?:id|data-created)="[^"]*">(.*?)</h1>'
|
||||||
|
@ -59,7 +59,7 @@ def trouver_nom_article(fichier_org, blog_name, format="html"):
|
||||||
if titre_niveau_2_match:
|
if titre_niveau_2_match:
|
||||||
nom_article = titre_niveau_2_match.group(1)
|
nom_article = titre_niveau_2_match.group(1)
|
||||||
break
|
break
|
||||||
mylog(f"Nom de l'article : {nom_article}")
|
# mylog(f"Nom de l'article : {nom_article}")
|
||||||
|
|
||||||
return nom_article.replace(blog_name + '_', '').replace('_', ' ')
|
return nom_article.replace(blog_name + '_', '').replace('_', ' ')
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@ def find_year_and_slug_on_filename(fichier):
|
||||||
if "-" in date_str:
|
if "-" in date_str:
|
||||||
slug = enlever_premier_tiret_ou_underscore(slug)
|
slug = enlever_premier_tiret_ou_underscore(slug)
|
||||||
|
|
||||||
mylog(f" find_year_and_slug : chemin: {annee}/{slug}/")
|
# mylog(f" find_year_and_slug : chemin: {annee}/{slug}/")
|
||||||
return [date_str, annee, slug]
|
return [date_str, annee, slug]
|
||||||
return [date_str, annee, fichier.replace(' ', '-').replace('.org', '')]
|
return [date_str, annee, fichier.replace(' ', '-').replace('.org', '')]
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue