--- title: Rendez-vous de l'info scientifique sur markdown date: 2023-04-19T10:13:18+02:00 id: 20230419101340 tags: [rdv-info, documentation, markdown] --- ## [Introduction à la prise de notes avec Markdown][1] Ce répertoire contient le matériel utilisé pour le [rendez-vous de l'info scientifique sur Markdown][2] proposés par la bibliothèque de l'Université de Genève. Les sources du support de cours sont dans le fichier [`intro/intro.html`][4]. La dernière version du support de cours au format PDF se trouve dans la dernière [publication de version][3]. ## Pré-requis - `pandoc`. - `pagedjs-cli` (`npm install -g puppeteer pagedjs pagedjs-cli`). ## Génération du PDF Le support de cours est rédigé au format markdown, en utilisant des fonctionnalités propres au `pandoc-markdown`. La génération du PDF s'appuie sur `pagedjs`, un modèle HTML (`template.html`) et des règles de styles (`styles.css`). Le fichier des règles de style est commenté, ce qui devrait permettre de comprendre son fonctionnement. Lancer les commandes depuis le répertoire contenant le fichier source au format Markdown, à savoir `./intro`. Pour générer le fichier HTML à servir par un serveur web pour le visualiser dans le navigateur, il faut utiliser `pandoc` avec les paramètres suivants (à adapter au fichier à générer) : ```bash pandoc --to=html \ --template=../template.html --css=../style.css \ --toc --toc-depth=2 --citeproc \ --output=intro.html intro.md ``` - `--to=html` pour convertir vers du HTML. - `--template=` et `--css=` indiquent quels modèle et feuille de style utiliser. - `--toc` et `--toc-depth=2` génèrent la table des matière en n'allant pas plus loin que les titres de niveau 2. - `--citeproc` indique qu'il faut tenir compte des citations et générer la bibliographie. - `--output=` précise où et à quel nom générer le fichier de sortie. Une fois le fichier HTML généré, il faut lancer un serveur web depuis la racine du projet, par exemple avec `python` : ```bash python -m http.server ``` Puis, ouvrir le navigateur Chromium (ou Chrome) à l'URL . En effet, Firefox supporte un peu moins bien `pagedjs`, notamment pour l'impression en PDF. Pour éviter la coloration des liens déjà visités, la fonction « navigation privée » est bien utile. Cet affichage permet d'inspecter les règles CSS et de les modifier à la volée pour comprendre comment améliorer le rendu, et d'imprimer la page web au format PDF (`ctrl+p`). Pour générer directement le PDF, deux possibilités s'ouvrent à vous, avec des résultats différents. Soit en utilisant `pagedjs` directement avec `pandoc` : ```bash pandoc --citeproc \ --to=pdf --pdf-engine=pagedjs-cli \ --css=../style.css --toc --toc-depth=2 \ --output=intro.pdf intro.md ``` Soit en utilisant `pagedjs` pour convertir le fichier HTML obtenu par pandoc plus haut : ```bash pandoc --to=html \ --template=../template.html --css=../style.css \ --toc --toc-depth=2 --citeproc \ --output=intro.html intro.md \ && pagedjs-cli intro.html \ --css=../style.css \ -o intro.pdf ``` [1]: ./ [2]: https://www.unige.ch/biblio/index.php?cID=4127 [3]: https://git.milhit.ch/igor/rdv-info-markdown/releases/latest [4]: ./intro/intro.md