Template HTML par défaut
- Pour obtenir le template par défaut HTML :
pandoc -D html
(ajouter
l'option -o template.html
pour l'enregistrer dans le fichier template.html )
- Spécificités des templates pandoc : tout texte placé entre
$
correspond à des variables ou des instructions permettant de personnaliser le document
produit :
$body$
correspond au contenu injecté (pour nous le code MarkDown converti en HTML)
$ styles.html() $
correspond à un sous-template (un autre fichier template)
- Des structures de contrôle sont disponibles :
$if ()...$
, $endif$$\
, $for(...)$
, $endfor$
- Fichier default.html5 utilisé par pandoc (/usr/share/pandoc/data/templates/default.html5)
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="$lang$" xml:lang="$lang$"
$if(dir)$ dir="$dir$" $endif$>
<head>
<meta charset="utf-8"/>
<meta name="generator" content="pandoc"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"/>
$for(author-meta)$
<meta name="author" content="$author-meta$"/>
$endfor$
$if(date-meta)$
<meta name="dcterms.date" content="$date-meta$"/>
$endif$
$if(keywords)$
<meta name="keywords" content="$for(keywords)$$keywords$$sep$, $endfor$"/>
$endif$
<title>$if(title-prefix)$$title-prefix$ – $endif$$pagetitle$</title>
<style>
$ styles.html() $
</style>
$for(css)$
<link rel="stylesheet" href="$css$"/>
$endfor$
$if(math)$
$math$
$endif$
$for(header-includes)$
$header-includes$
$endfor$
</head>
<body>
$for(include-before)$
$include-before$
$endfor$
$if(title)$
<header id="title-block-header">
<h1 class="title">$title$</h1>
$if(subtitle)$
<p class="subtitle">$subtitle$</p>
$endif$
$for(author)$
<p class="author">$author$</p>
$endfor$
$if(date)$
<p class="date">$date$</p>
$endif$
</header>
$endif$
$if(toc)$
<nav id="$idprefix$TOC" role="doc-toc">
$if(toc-title)$
<h2 id="$idprefix$toc-title">$toc-title$</h2>
$endif$
$table-of-contents$
</nav>
$endif$
$body$
$for(include-after)$
$include-after$
$endfor$
</body>
</html>