Markdown

Chaînes complexes

Introduction

Les chaînes de transformation complexes en Markdown complètent la génération statique vue dans la partie précédente.

L'objectif est de générer des textes plus conséquents et le format sortie est le plus souvent le PDF.

Il existe deux solutions pour générer un PDF à partir de Markdown, la première consiste à passer par un fichier HTML et la seconde par du LaTeX.

Remarque

Le PDF disposant d'un style graphique, il faudra dans tous les cas utiliser un template (qu'il soit LaTeX ou HTML/CSS).

C'est un fichier qui va définir l'environnement dans lequel sera inclus le texte que l'on souhaite publier. Cet environnement définira par exemple le style du document : polices, marges, couleurs...

En passant par HTML

Les avantages :

  • le HTML est facilement manipulable

  • le style est très simple à mettre en place (fichier CSS)

  • la génération est peu coûteuse

  • mise en place simple (possible simplement avec un navigateur Web, même si des outils en ligne de commande permettent de le faire en ligne et ainsi d'automatiser le processus)

Les inconvénients :

  • pas de note en base de page

  • gestion des images lors de changement de pages

Transformation en PDF via HTML

En passant par LaTeX

Les avantages :

  • LaTeX est un langage très puissant et qui permet de très bien structurer des documents destinés à être imprimés

  • LaTeX a un système de variable que l'on peux injecter depuis la commande de génération, ce qui permet de scripter la génération de document avec des paramètres

Les inconvénients :

  • LaTeX est lourd à mettre en place (beaucoup de paquets et extensions)

  • LaTeX est long à assimiler

Transformation en PDF via LaTeX

RemarqueBesoin de plus de fonctionnalités

Comme nous souhaitons créer des documents plus complexes, il nous allons avoir envie d'afficher :

  • notes de bas de page

  • citations

  • références bibliographiques

  • tableaux

  • formules mathématiques

  • ...

De nombreuses versions de Markdown existent pour répondre à ces besoins, nous pouvons citer la plus populaires et qui propose le plus de fonctionnalités orientés document complexes : MultiMarkdown

MultiMarkdown propose quelques fonctionnalités très intéressantes (et peu courantes dans les autres langages Markdown) :

  • transclusions de fichiers

  • customisation XSLT pour modifier le résultat de la transformation

ExempleMon expérience

J'ai réalisé mon rapport de stage d'IUT en Markdown. J'obtiens à la fin un rapport avec des exemples de code colorés, des tableaux, des images avec des légendes, des références, une table des figures...

J'ai utilisé Pandoc's Markdown et un template LaTeX personnalisé. C'est une expérience que je préfère de loin à rédiger entièrement un rapport en LaTeX.

Complément

Markdown peut également être utilisé pour générer des documents EPUB ou même des supports de présentation.

PrécédentPrécédentSuivantSuivant
AccueilAccueilImprimerImprimer Ivan D'halluin, 2015 (Contributions : Stéphane Crozat, les étudiants de NF29) Paternité - Partage des Conditions Initiales à l'IdentiqueRéalisé avec Scenari (nouvelle fenêtre)