156 lines
5.0 KiB
Markdown
156 lines
5.0 KiB
Markdown
---
|
||
title: Citation et bibliographie avec LaTeX
|
||
date: 2023-03-21T10:22:47+01:00
|
||
id: 20230321102247
|
||
tags: [README, documentation, latex, rdv-info]
|
||
---
|
||
|
||
## [Citation et bibliographie avec LaTeX][projet]
|
||
|
||
Ce répertoire contient les sources pour le *Rendez-vous de l'info* sur les
|
||
citations et les références bibliographiques avec LaTeX. Il contient :
|
||
|
||
- La source en markdown pour le support de cours.
|
||
- Des exemples de fichiers `.tex`.
|
||
- Un export de collection Zotero au format biblatex.
|
||
|
||
Le support de cours au format PDF ainsi que les fichiers d'exercice peuvent
|
||
être téléchargés dans [les publications de version][latest].
|
||
|
||
[latest]: https://git.milhit.ch/igor/biblatex-zotero/releases/latest
|
||
|
||
## Pour démarrer
|
||
|
||
Pour pouvoir utiliser ce projet, il est nécessaire :
|
||
|
||
1. De cloner le projet : \
|
||
`git clone https://git.milhit.ch/igor/biblatex-zotero.git`
|
||
1. D'activer le module pour `reveal.js` pour la présentation au format HTML :
|
||
```bash
|
||
git submodule init
|
||
git submodule update
|
||
```
|
||
1. Pour générer les différents fichiers, deux outils sont nécessaire :
|
||
1. `pandoc`. Pour installer `pandoc`, voir [la
|
||
documentation][pandoc-install].
|
||
1. Une distribution \LaTeX. Une possibilité est de consulter le site web
|
||
[*The \LaTeX project*][latex-project] qui décline les méthodes les plus
|
||
habituelles pour les principaux systèmes d'exploitation. **Pour ma part,
|
||
je recommande l'usage de `tectonic` qui est un binaire à installer** :
|
||
voir comment [installer tectonic][tectonic-install].
|
||
|
||
## Convertir le support de cours en PDF
|
||
|
||
### Avec LaTeX
|
||
|
||
Pour convertir le support de cours (`polycopié.md`) au format PDF, il faut
|
||
utiliser la commande suivante :
|
||
|
||
```bash
|
||
pandoc --citeproc --to=pdf --pdf-engine=tectonic \
|
||
--output=public/polycopié.pdf \
|
||
source/polycopié/polycopié.md
|
||
```
|
||
|
||
- `--citeproc` traite les citations et génère la bibliographie.
|
||
- `--to=pdf` détermine le format de sortie, ici PDF.
|
||
- `--pdf-engine` définit le moteur de compilation a utiliser pour produire le
|
||
PDF, ici `tectonic`, mais `xelatex` devrait fonctionner aussi, si il est
|
||
installé.
|
||
- `--output=` spécifie le chemin et le nom du fichier généré.
|
||
|
||
### Avec `paged.js`
|
||
|
||
Avec cet outil, il est possible de définir les styles des éléments dans le PDF
|
||
au moyen de règles CSS (voir [paged.js][pagedjs]). Pour pouvoir l'utiliser, il
|
||
faut avoir installé sur sa machine les paquets `npm` suivants :
|
||
|
||
```bash
|
||
npm install -g puppeteer pagedjs pagedjs-cli
|
||
```
|
||
|
||
Puis, on peut soit produire directement un PDF :
|
||
|
||
```bash
|
||
pandoc --self-contained --citeproc --t pdf --pdf-engine=pagedjs-cli \
|
||
--css=source/polycopié/polycopié.css \
|
||
--output=public/polycopié.pdf polycopié.md
|
||
```
|
||
|
||
```bash
|
||
pandoc --self-contained --citeproc --t html \
|
||
--template=source/polycopié/template.html \
|
||
--css=source/polycopié/polycopié.css \
|
||
-o test.html polycopié.md
|
||
```
|
||
|
||
[pagedjs]: https://pagedjs.org/
|
||
|
||
## Déroulé de la présentation
|
||
|
||
Le fichier `déroulé.md` décrit le déroulé de la présentation. Si une impression
|
||
est nécessaire, on peut soit utiliser le rendu HTML d'un éditeur, soit le
|
||
convertir au format désiré puis l'imprimer.
|
||
|
||
Pour le HTML :
|
||
|
||
```bash
|
||
pandoc -t html5 -s -o déroulé.html déroulé.md
|
||
```
|
||
|
||
Pour le PDF :
|
||
|
||
```bash
|
||
pandoc -t pdf --pdf-engine=tectonic -o déroulé.pdf déroulé.md
|
||
```
|
||
|
||
## Support de présentation
|
||
|
||
⚠ Il n'y a pas encore de support de présentation. Le fichier est là à titre
|
||
d'essai pour l'instant.
|
||
|
||
### Convertir la présentation au format PDF
|
||
|
||
Pour obtenir la présentation au format PDF, il faut utiliser la commande
|
||
suivante :
|
||
|
||
```bash
|
||
pandoc -t beamer -V theme=AnnArbor \
|
||
-V colortheme=sidebartab presentation.md -o presentation.pdf
|
||
```
|
||
|
||
- `-t beamer` définit le format de présentation beamer.
|
||
- `-V theme=Hannover` permet de passer en variable (`-V`) le theme beamer
|
||
désiré.
|
||
- `-V colortheme=sidebartab` définit le thème de couleur.
|
||
|
||
Une galerie des thèmes et des thèmes de couleurs est disponible en ligne :
|
||
<https://deic.uab.cat/~iblanes/beamer_gallery/>.
|
||
|
||
Il peut être nécessaire de définir l'installation de \LaTeX, par exemple
|
||
pour `tectonic` :
|
||
|
||
```bash
|
||
pandoc -t beamer -V theme=AnnArbor -V colortheme=sidebartab \
|
||
--pdf-engine=tectonic presentation.md -o presentation.pdf
|
||
```
|
||
|
||
### Pour convertir la présentation au format HTML (`reveal.js`)
|
||
|
||
Il faut s'assurer que `pandoc` soit installé et que le submodule `reveal.js`
|
||
soit bien activé. Puis, il suffit de taper la commande suivante :
|
||
|
||
```bash
|
||
pandoc -t revealjs --self-contained -o presentation.html presentation.md
|
||
```
|
||
|
||
- `-t revealjs` définit le format de présentation `reveal.js`.
|
||
- `--self-contained` assure que tous les fichiers nécessaires à la présentation
|
||
seront bien contenu dans un seul fichier HTML.
|
||
|
||
|
||
[projet]: ./
|
||
[pandoc-install]: https://pandoc.org/installing.html
|
||
[latex-project]: https://www.latex-project.org/get/
|
||
[tectonic-install]: https://tectonic-typesetting.github.io/en-US/install.html
|