<listyle="margin-bottom:0;"><ahref="#org5bb515f">Autour de <code>markdown</code></a></li>
</ul>
</div>
</div>
...
...
@@ -37,13 +38,13 @@
Voici un aperçu rapide de la syntaxe Markdown repris d'une
<ahref="https://guides.github.com/features/mastering-markdown/">présentation de Github</a> ainsi que de celles d'<ahref="http://csrgxtu.github.io/2015/03/20/Writing-Mathematic-Fomulars-in-Markdown/">Archer Reilly</a>.
<h2id="org5bb515f">Autour de <code>markdown</code></h2>
<divclass="outline-text-2"id="text-org5bb515f">
<p>
Tout d'abord, pour aller plus loin avec <code>markdown</code> et ses extensions / ramifications :
</p>
<ulclass="org-ul">
<listyle="margin-bottom:0;">Le didacticiel « <ahref="https://enacit1.epfl.ch/markdown-pandoc/">Élaboration et conversion de documents avec Markdown et Pandoc</a> » de Jean-Daniel Bonjour (EPFL), précis, complet, concis, en français ; un vrai bonheur !</li>
<listyle="margin-bottom:0;">L'article <ahref="https://en.wikipedia.org/wiki/Markdown#Example">Markdown</a> de wikipedia en anglais contient un bon pense-bête sur la syntaxe <code>markdown</code>.</li>
<listyle="margin-bottom:0;">Github propose un court et efficace didacticiel (en anglais) : <ahref="https://guides.github.com/features/mastering-markdown/">Mastering Markdown</a>.</li>
</ul>
<p>
Comme nous l'illustrons dans la « film d'écran » (<i>screencast</i>), l'éditeur de texte des dépôts <code>github</code> et <code>gitlab</code> permet d'interpréter / transformer à la demande un fichier <code>mardown</code> en un fichier <code>html</code>. C'est à la fois agréable et pratique, mais ce n'est pas une solution pour une utilisation quotidienne de <code>markdown</code>, pour cela, il est plus efficace d'éditer son texte, avec un éditeur de texte, sur son ordinateur, avant de « l'exporter » dans un format comme <code>html</code>, <code>pdf</code>, <code>docx</code>, <code>epub</code>, etc. Il existe des éditeurs plus ou moins spécialisés pour <code>markdown</code>, certains sont indiqués sur la page <ahref="https://github.com/jgm/pandoc/wiki/Pandoc-Extras#editors">Editors</a> du site de <code>pandoc</code>, mais nous préconisons clairement l'emploi d'un éditeur de texte « généraliste » capable de reconnaître la syntaxe <code>markdown</code>. Nous en avons indiqué en début de séquence et on pourra trouver des informations complémentaires dans la section <ahref="https://enacit1.epfl.ch/markdown-pandoc/#editeurs_markdown">Quelques éditeurs adaptés à l'édition Markdown</a> du didacticiel de Jean-Daniel Bonjour.
</p>
<p>
Pour convertir un fichier <code>markdown</code> en un format « arbitraire », la solution à ce jour la plus complète est <ahref="http://pandoc.org/">Pandoc</a>, logiciel développé par John MacFarlane, un philosophe de Berkeley (le site <ahref="https://github.com/jgm/pandoc">github</a>). En plus du site de <code>Pandoc</code>, le didacticiel de J.-D. Bonjour donne de nombreuses explications sur comment installer et utiliser <code>pandoc</code> dans la section <ahref="https://enacit1.epfl.ch/markdown-pandoc/#commande_pandoc">Utilisation du convertisseur Pandoc</a>. Comme <code>pandoc</code>– écrit en Haskell – peut être parfois un peu difficile à installer, nous indiquons maintenant quelques solutions alternatives :
</p>
<ulclass="org-ul">
<listyle="margin-bottom:0;">Des sites comme <ahref="http://www.markdowntopdf.com/">http://www.markdowntopdf.com/</a> et <ahref="http://markdown2pdf.com/">http://markdown2pdf.com/</a> permettent de convertir en ligne un fichier <code>markdown</code> en un fichier <code>pdf</code>.</li>
<listyle="margin-bottom:0;">Le projet <ahref="http://commonmark.org/">CommonMark</a> propose, en plus d'une spécifications plus rigoureuse de la syntaxe <code>markdown</code>, des convertisseurs <code>markdown</code> → <code>html</code> / <code>LaTeX</code> (et plus) écris en <code>C</code> et en <code>JavaScript</code> (<ahref="https://github.com/CommonMark/CommonMark">https://github.com/CommonMark/CommonMark</a>).</li>
<listyle="margin-bottom:0;">Le site de <ahref="https://daringfireball.net/projects/markdown/">John Gruber</a>, le créateur de <code>markdown</code>, fournit un convertisseur <code>markdown</code> → <code>html</code> écrit en <code>perl</code>.</li>
<listyle="margin-bottom:0;"><ahref="http://fletcherpenney.net/multimarkdown/">MultiMarkdown</a> est une autre extension de <code>markdown</code> qui vient avec son convertisseur <code>markdown</code> → <code>html</code> écrit en <code>C</code>.</li>
<listyle="margin-bottom:0;"><ahref="https://github.com/joeyespo/grip">grip</a> est un serveur écrit en <code>python</code> qui permet de convertir et visualiser à la volée des fichiers <code>markdown</code> avec son navigateur (très utile pour éviter d'avoir à faire des « commits » en grande quantité lorsqu'on écrit de tels fichiers pour un dépôt <code>github</code> ou <code>gitlab</code>).</li>
</ul>
<p>
La conversion en <code>pdf</code> passe toujours par <ahref="https://fr.wikipedia.org/wiki/LaTeX">LaTeX</a> ce qui nécessite d'avoir une version complète et à jour de ce logiciel sur sa machine.
</p>
<p>
Dans la petite démonstration, nous montrons comment générer un fichier <code>docx</code> à partir d'un fichier <code>md</code> avec <code>Pandoc</code> et nous soulignons qu'il est alors possible d'utiliser un traitement de texte comme <code>LibreOffice</code> pour modifier le fichier obtenu. Il est clair que si des modifications sont apportées au <code>docx</code> elle en seront pas (automatiquement) propagées au <code>md</code>. Il faudra utiliser <code>Pandoc</code> pour cela et effectuer une conversion de <code>docx</code> vers <code>md</code> (et seules les éléments du format <code>docx</code> qui existent en <code>md</code> seront conservés).
</p>
<p>
Une stratégie qui est souvent employée et qui fonctionne bien en pratique consiste à faire le gros du travail de rédaction d'un article ou d'un mémoire en <code>Markdown</code>. La rédaction terminée, le fichier est exporté au format <code>docx</code> (ou <code>LaTeX</code>) et des ajustements de mise en page sont alors effectués avec un logiciel de traitement de texte (ou un éditeur <code>LaTeX</code>).