amélioration du script de génération

This commit is contained in:
Antoine Ouvrard 2021-06-03 11:03:55 +02:00
parent a6dd3c53e4
commit 54449fe1c4
3 changed files with 47 additions and 24 deletions

View File

@ -3,34 +3,57 @@ while [ -n "$1" ]; do # gestion des paramètres
case "$1" in case "$1" in
-h) echo "Script qui transforme des fichiers markdown en pdf et html avec le même style. -h) echo "Script qui transforme des fichiers markdown en pdf et html avec le même style.
-k conserve les fichiers de construction"; exit 0;; -k conserve les fichiers de construction"; exit 0;;
--pdf) PDF=true;;
--html) HTML=true;;
-k) keep=true;; -k) keep=true;;
esac esac
shift shift
done done
set -xe # Si on indique aucune consigne on fait la génération en pdf et html
if [[ -z "$PDF" ]] && [[ -z "$HTML" ]]; then
PDF=true
HTML=true
fi
set -e
IN_DIR="./input-cv-md" IN_DIR="./input-cv-md"
OUT_DIR="./output" OUT_DIR="./output"
STYLES_DIR="styles" STYLES_DIR="styles"
STYLE="aou" STYLE="aou"
mkdir -p $IN_DIR # Si il n'y a pas de fichier markdown dans le dossier d'entrée, le script s'arrète
mkdir -p $OUT_DIR if [[ ! -d "$IN_DIR" ]] || [[ -z "$(ls -A $IN_DIR/*.md)" ]]; then
echo "Attention il n'y a aucun CV en markdown dans le dossier $IN_DIR"
exit 1
fi
for f in $IN_DIR/*.md; do for f in $IN_DIR/*.md; do
FILE_NAME=`basename $f | sed 's/.md//g'`; FILE_NAME=`basename $f | sed 's/.md//g'`;
# Génère le HTML mkdir -p $OUT_DIR/$FILE_NAME;
pandoc --standalone --css ../$STYLES_DIR/$STYLE.css \
if [[ $HTML ]]; then
echo "### Génération du HTML"
pandoc --standalone --css ../../$STYLES_DIR/$STYLE.css \
--from markdown --to html \ --from markdown --to html \
--output $OUT_DIR/$FILE_NAME.html $f \ --output $OUT_DIR/$FILE_NAME/index.html $f \
--metadata pagetitle=$FILE_NAME; --metadata pagetitle=$FILE_NAME;
# Génère le PDF fi
if [[ $PDF ]]; then
echo "### Génération du PDF"
pandoc --standalone --template $STYLES_DIR/$STYLE.tex \ pandoc --standalone --template $STYLES_DIR/$STYLE.tex \
--from markdown --to context --variable papersize=A4 \ --from markdown --to context --variable papersize=A4 \
--output $OUT_DIR/$FILE_NAME.tex $f; --output $OUT_DIR/$FILE_NAME/$FILE_NAME.tex $f;
mtxrun --path=$OUT_DIR --result=$FILE_NAME.pdf --script context $FILE_NAME.tex; mtxrun --path=$OUT_DIR --result=$FILE_NAME/cv-$FILE_NAME.pdf --script context $FILE_NAME.tex;
done
if [ -z "$keep" ] ; then
rm -rf $OUT_DIR/*.log $OUT_DIR/*.tex $OUT_DIR/*.tuc styles/*.pdf;
fi fi
# Néttoie les fichiers de génération
if [ -z "$keep" ] ; then
rm -rf $OUT_DIR/$FILE_NAME/*.log $OUT_DIR/$FILE_NAME/*.tex $OUT_DIR/$FILE_NAME/*.tuc;
fi
echo "### Fin du script"
done

View File

@ -21,7 +21,7 @@ depuis 2014
2012 à 2014 2012 à 2014
: **Fondateur d'une association informatique et solidaire** : **Fondateur d'une association informatique et solidaire**
*CALIS https://www.calis-asso.org/ - Cholet (49) - Bénévolat* *CALIS https://www.calis-asso.org - Cholet (49) - Bénévolat*
**Rencontre d'acteurs** politiques, associatifs, collectivitées - Recherche de subventions **Rencontre d'acteurs** politiques, associatifs, collectivitées - Recherche de subventions
• Animation d'atelier de **formation** - Promotion du logiciel libre • Animation d'atelier de **formation** - Promotion du logiciel libre
• Recherche et mise en place d'un **système GNU/Linux** personnalisé - Clonnage de PC • Recherche et mise en place d'un **système GNU/Linux** personnalisé - Clonnage de PC
@ -33,10 +33,10 @@ depuis 2014
### Compétences ### Compétences
Systèmes Sys.
: GNU/Linux - Serveur Web - Git - Gitlab/CI - Ansible - Grafana - Jenkins - Postgres : GNU/Linux - Serveur Web - Git - Gitlab/CI - Ansible - Grafana - Jenkins - Postgres
Language Lang.
: Java - XML - HTML - Groovy - YAML : Java - XML - HTML - Groovy - YAML
### Formation ### Formation

View File

@ -36,7 +36,7 @@
</dd> </dd>
<dt>2012 à 2014</dt> <dt>2012 à 2014</dt>
<dd><strong>Fondateur dune association informatique et solidaire</strong><br /> <dd><strong>Fondateur dune association informatique et solidaire</strong><br />
<em>CALIS https://www.calis-asso.org/ - Cholet (49) - Bénévolat</em><br /> <em>CALIS https://www.calis-asso.org - Cholet (49) - Bénévolat</em><br />
<strong>Rencontre dacteurs</strong> politiques, associatifs, collectivitées - Recherche de subventions<br /> <strong>Rencontre dacteurs</strong> politiques, associatifs, collectivitées - Recherche de subventions<br />
• Animation datelier de <strong>formation</strong> - Promotion du logiciel libre<br /> • Animation datelier de <strong>formation</strong> - Promotion du logiciel libre<br />
• Recherche et mise en place dun <strong>système GNU/Linux</strong> personnalisé - Clonnage de PC • Recherche et mise en place dun <strong>système GNU/Linux</strong> personnalisé - Clonnage de PC
@ -49,10 +49,10 @@
</dl> </dl>
<h3 id="compétences">Compétences</h3> <h3 id="compétences">Compétences</h3>
<dl> <dl>
<dt>Systèmes</dt> <dt>Sys.</dt>
<dd>GNU/Linux - Serveur Web - Git - Gitlab/CI - Ansible - Grafana - Jenkins - Postgres <dd>GNU/Linux - Serveur Web - Git - Gitlab/CI - Ansible - Grafana - Jenkins - Postgres
</dd> </dd>
<dt>Language</dt> <dt>Lang.</dt>
<dd>Java - XML - HTML - Groovy - YAML <dd>Java - XML - HTML - Groovy - YAML
</dd> </dd>
</dl> </dl>