⚡ déplacement des fichiers org de modèle et remplacement de placeholders après génération
This commit is contained in:
parent
78180bbb00
commit
c7383ed6ef
29 changed files with 127 additions and 735 deletions
137
generate_book.sh
137
generate_book.sh
|
@ -1,101 +1,60 @@
|
|||
#!/bin/bash
|
||||
if [ -z "$1" ]; then
|
||||
echo "Erreur : Veuillez spécifier un argument." >&2
|
||||
exit 1
|
||||
fi
|
||||
# Crée un dossier de livre selon un nom spécifié, et y ajoute les contenus de fichiers selon le modèle.
|
||||
if [ -z "$1" ]; then
|
||||
echo "Erreur : Veuillez spécifier un argument et mettez le entre guillemets si le titre contient plus d'un mot et au moins un espace." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$2" ]; then
|
||||
echo "Extension de fichiers générés au format org." >&2
|
||||
extension="org" # ou md
|
||||
fi
|
||||
|
||||
if [ -z "$2" ]; then
|
||||
echo "Extension de fichiers générés au format org." >&2
|
||||
extension="org" # ou md
|
||||
fi
|
||||
function generate_uuid() {
|
||||
uuid=$(cat /proc/sys/kernel/random/uuid)
|
||||
echo "$uuid";
|
||||
# return "$uuid";
|
||||
return "$uuid";
|
||||
}
|
||||
|
||||
|
||||
livre_bidule=$1 # mettez le bon nom de votre livre
|
||||
echo "création du dossier de livre: $livre_bidule"
|
||||
nom_du_livre=$1 # mettez le bon nom de votre livre
|
||||
echo "création du dossier de livre: $nom_du_livre"
|
||||
|
||||
rm -rf "$livre_bidule"
|
||||
mkdir "$livre_bidule" -p
|
||||
cp *.py "$livre_bidule"
|
||||
cp *.sh "$livre_bidule"
|
||||
cp *.css "$livre_bidule"
|
||||
cd "$livre_bidule"
|
||||
rm -rf "$nom_du_livre"
|
||||
mkdir "$nom_du_livre" -p
|
||||
cp *.py "$nom_du_livre"
|
||||
cp *.sh "$nom_du_livre"
|
||||
cp *.css "$nom_du_livre"
|
||||
cp *.md "$nom_du_livre"
|
||||
|
||||
mkdir assets inspirations
|
||||
touch "taches_$livre_bidule.$extension" \
|
||||
"livre.$extension" "intrigues.$extension" \
|
||||
"personnages.$extension" "notes_intention.$extension"
|
||||
git init
|
||||
cp -r _models/example_livre/*.org $nom_du_livre
|
||||
cd "$nom_du_livre"
|
||||
|
||||
# changements dans le dossier du nouveau livre
|
||||
mkdir assets inspirations
|
||||
touch "taches_$nom_du_livre.$extension" \
|
||||
"livre.$extension" "intrigues.$extension" \
|
||||
"personnages.$extension" "notes_intention.$extension"
|
||||
|
||||
|
||||
# On remplit les fiches avec un contenu de base:
|
||||
echo ":PROPERTIES:
|
||||
:ID: $(generate_uuid)
|
||||
:END:
|
||||
#+title: livre $livre_bidule
|
||||
#+AUTHOR: (votre nom)
|
||||
#+EMAIL: votre@email.com
|
||||
#+BEGIN_EXPORT epub
|
||||
:title \"Mon livre\"
|
||||
:author \"Votre nom\"
|
||||
:email \"votre@email.com\"
|
||||
:language \"fr\"
|
||||
:encoding \"UTF-8\"
|
||||
:subject \"Littérature\"
|
||||
:description \"Ceci est un livre écrit en Org-mode\"
|
||||
:keywords \"Org-mode, livre, électronique\"
|
||||
:cover \"image/cover.jpg\"
|
||||
#+END_EXPORT
|
||||
# On copie le contenu de base à partir du modèle d'example
|
||||
|
||||
|
||||
git init
|
||||
cd ..
|
||||
|
||||
|
||||
* Livre $livre_bidule :title:
|
||||
** Préface :title:
|
||||
** Introduction :title:
|
||||
** Chapitre 1 :title:
|
||||
*** Chapitre 1 - Partie 1
|
||||
*** Chapitre 1 - Partie 2
|
||||
*** Chapitre 1 - Partie 3
|
||||
** Chapitre 2 :title:
|
||||
*** Chapitre 2 - Partie 1
|
||||
*** Chapitre 2 - Partie 2
|
||||
*** Chapitre 2 - Partie 3
|
||||
** Chapitre 3 :title:
|
||||
*** Chapitre 3 - Partie 1
|
||||
*** Chapitre 3 - Partie 2
|
||||
*** Chapitre 3 - Partie 3
|
||||
** Postface :title:
|
||||
** Sources :title:
|
||||
** Du même auteur :title:
|
||||
" > "livre.$extension"
|
||||
|
||||
|
||||
echo ":PROPERTIES:
|
||||
:ID: $(generate_uuid)
|
||||
:END:
|
||||
#+title: notes d'intention de $livre_bidule
|
||||
|
||||
* Notes d'intention
|
||||
** Thématiques globales
|
||||
** Sources d'inspiration
|
||||
" > "notes_intention.$extension"
|
||||
|
||||
echo ":PROPERTIES:
|
||||
:ID: $(generate_uuid)
|
||||
:END:
|
||||
#+title: personnages de $livre_bidule
|
||||
|
||||
* Personnages
|
||||
** Principal
|
||||
- personnalité
|
||||
- objectifs
|
||||
** Secondaire
|
||||
|
||||
" > "personnages.$extension"
|
||||
|
||||
cd ..
|
||||
ls -l $livre_bidule
|
||||
echo "fichiers du livre $livre_bidule créé"
|
||||
# remplacement des placeholders d'example
|
||||
uuidgen | xargs -I{} sed -i 's|GENERATE_UUID|{}|g' $nom_du_livre/livre.org
|
||||
uuidgen | xargs -I{} sed -i 's|GENERATE_UUID|{}|g' $nom_du_livre/notes_intention.org
|
||||
uuidgen | xargs -I{} sed -i 's|GENERATE_UUID|{}|g' $nom_du_livre/personnages.org
|
||||
uuidgen | xargs -I{} sed -i 's|GENERATE_UUID|{}|g' $nom_du_livre/intrigues.org
|
||||
uuidgen | xargs -I{} sed -i 's|GENERATE_UUID|{}|g' $nom_du_livre/taches_$nom_du_livre.org
|
||||
|
||||
echo $nom_du_livre | xargs -I{} sed -i 's|BOOK_TITLE|{}|g' $nom_du_livre/livre.org
|
||||
echo $nom_du_livre | xargs -I{} sed -i 's|BOOK_TITLE|{}|g' $nom_du_livre/notes_intention.org
|
||||
echo $nom_du_livre | xargs -I{} sed -i 's|BOOK_TITLE|{}|g' $nom_du_livre/personnages.org
|
||||
echo $nom_du_livre | xargs -I{} sed -i 's|BOOK_TITLE|{}|g' $nom_du_livre/intrigues.org
|
||||
echo $nom_du_livre | xargs -I{} sed -i 's|BOOK_TITLE|{}|g' $nom_du_livre/taches_$nom_du_livre.org
|
||||
|
||||
exa -l $nom_du_livre
|
||||
echo "fichiers du livre $nom_du_livre créé"
|
||||
exit 0
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue