Markdown est un langage de balisage léger créé en 2004 par John Gruber, avec l'aide d'Aaron Swartz.., avec l'objectif d'offrir une syntaxe, facile à lire et à écrire, en l'état, sans formatage.
Markdown est principalement utilisé dans des blogs, des sites de messagerie instantanée, des forums et des pages de documentation de logiciels. Depuis quelques années, Markdown est utilisé par la communauté scientifique..., en lien avec la Science ouverte.
Un document balisé par Markdown peut être converti en HTML, en PDF ou en d'autres formats. Bien que la syntaxe Markdown ait été influencée par plusieurs filtres de conversion de texte existants vers HTML — dont SetextSetext., atxatx., Textile, reStructuredText, GrutatextGrutatext. et EtTextEtText. —, la source d’inspiration principale du Markdown est le format du courrier électronique en mode texte..
Évolutions Markdown n'a jamais été formellement standardisé, diverses variantes ont été développées par des tiers afin de pallier ce qui était perçu comme des limitations du langage originel. Parmi ces variantes, figurent notamment MultiMarkdown. et GitHub Flavored Markdown (GFM) « ».. Ce dernier est utilisé pour les articles et la documentation sur GitHub, mais a également été largement adopté sur plusieurs éditeurs de texte supportant le format Markdown au niveau de la coloration syntaxique ou de la prévisualisation. Le « dialecte » GitHub Flavored du Markdown s’appuie sur la spécification CommonMark., à laquelle il est conforme et dont il est un dérivé (fork).. La version actuelle 0.29 de GFM, parue le , est décrite par John MacFarlane sous licence Creative Commons.
Il existe également des greffons pour de nombreux logiciels, tels que « » pour Firefox et Chrome. Le système de gestion de contenu WordPress intègre dans sa forme initiale quelques éléments de ce langage depuis la version 4.3.
En , dans le but de standardiser le langage, deux RFC ont été publiées : RFC 7763., qui introduit le type MIME text/markdown à partir de la variante originale de Markdown. RFC 7764., qui répertorie des variantes MultiMarkdown, GitHub Flavored Markdown (GFM), Pandoc, CommonMark, Markdown Extra et autres..
L'initiative CommonMark, débutée en 2012, vise à pallier le manque de standardisation et les ambiguïtés du format en créant une spécification fortement définie du langage. Elle est désormais utilisée par, entre autres, Codeberg, Discourse, GitLab, Reddit, Qt, Stack Overflow et Stack Exchange..
Mises en œuvre Plusieurs mises en œuvre existent dans différents langages de programmation tels qu'en PerlPerl (implémentation de référence)., en PHPPHP Markdown (Markdown en PHP)., en RubyBlueCloth (Markdown en Ruby)., en PythonMarkdown en Python., en Javamarkdownj (Markdown en Java)., en C#Markdown.NET (Markdown en C# et .NET)., en Haskellpandoc (Markdown en Haskell)., en Gambas, en R R Markdown., ou en JavaScript...... Depuis la version 2.0 de Swift, il est aussi possible d'utiliser le Markdown dans ses playgrounds.
Utilisations Le langage de balisage léger Markdown est utilisé dans de nombreuses applications, que ce soit dans des logiciels/éditeurs de code., des logiciels d'écriture., des plateformes de code.., ou encore dans des chaînes d'édition. avec l'addition d'autres logiciels. Les domaines d'application incluent le développement informatique (Markdown est fréquemment utilisé pour formater le fichier README décrivant le code source d'un programme), la rédaction de documentation technique ou encore la publication académique..
C’est aussi le langage de balisage choisi par de nombreuses plateformes d’écriture collaborative, comme Authorea, Manubot. ou Stylo.. Il existe plusieurs logiciels permettant de rédiger en Markdown en temps réel sur le web, comme HedgeDoc, Etherpad ou Firepad.
Exemples de la syntaxe
Le tableau, ci-dessous, présente des exemples de syntaxe Markdown, avec les balises HTML équivalentes. Texte utilisant la syntaxe Markdown HTML produit par un processeur Markdown Texte vu à travers un navigateurTitre
Sous-titre
# Titre alternatif
## Sous-titre alternatif
Les paragraphes sont séparés par une ligne vide.
Deux espaces à la fin d'une ligne produisent un saut de ligne.<h1>Titre</h1>
<h2>Sous-titre</h2>
<h1>Titre alternatif</h1>
<h2>sous-titre alternatif</h2>
<p>Les paragraphes sont séparés par une ligne vide.</p>
<p>Deux espaces à la fin d'une ligne<br /> produisent un saut de ligne.</p>Titre
Sous-titre
Titre alternatif
Sous-titre alternatif
Les paragraphes sont séparés par une ligne vide.
Deux espaces à la fin d'une ligne produisent un saut de ligne.Les caractères _italiques_, **gras**, `à taille fixe`.
Filet:
---<p>Les caractères <em>italiques</em>, <strong>gras</strong>, <code>à taille fixe</code>.</p>
<p>Filet:</p>
<hr />Les caractères italiques, en gras, à taille fixe.</p>
Filet:Liste à puces imbriquée dans une liste ordonnée:
1. fruits * pomme * banane 2. légumes - carotte - brocoli
Liste à cocher: - [ ] Case non cochée - [x] Case cochée<p>Liste à puces imbriquée dans une liste ordonnée:</p>
<ol> <li>fruits <ul> <li>pomme</li> <li>banane</li> </ul></li> <li>légumes <ul> <li>carotte</li> <li>brocoli</li> </ul></li> </ol> <p>Liste à cocher:</p> <ul> <li><input type="checkbox" id="" disabled="" >Case non cochée </li> <li><input type="checkbox" id="" disabled="" checked >Case cochée</li> </ul>Liste à puces imbriquée dans une liste numérotée : fruits pomme banane légumes carottes brocoli
Liste à cocher : Case non cochée Case cochéeUn [lien](http://example.com).

> Markdown utilise les caractères à la manière des emails pour afficher des citations en bloc. > > Chaque paragraphe doit être précédé par ce caractère.
La plupart des balises <abbr title="Hypertext Markup Language">HTML</abbr> de type « en ligne » sont prises en compte.<p>Un <a href="http://example.com">lien</a>.</p>
<p><img alt="Image" title="icon" src="Icon-pictures.png" /></p>
<blockquote> <p>Markdown utilise les caractères à la manière des emails pour afficher des citations en bloc.</p> <p>Chaque paragraphe doit être précédé par ce caractère.</p> </blockquote>
<p>La plupart des balises <abbr title="Hypertext Markup Language">HTML</abbr> de type « en ligne » sont prises en compte.</p>Un lien.
alt=Image|link=|icon
Markdown utilise les caractères à la manière des emails pour afficher des citations en bloc.
Chaque paragraphe doit être précédé par ce caractère.
La plupart des balises HTML de type « en ligne » sont prises en compte.| Titre 1 | Titre 2 | Titre 3 |
| Colonne | Colonne | Colonne | | Alignée à | Alignée au | Alignée à | | Gauche | Centre | Droite |(NOTE : la justification à gauche, au centre ou à droite se fait via la présence ou l'absence des deux points : sur la ligne horizontale) | <table> <thead> <tr> <th align="left">Titre 1</th> <th align="center">Titre 2</th> <th align="right">Titre 3</th> </tr> </thead> <tbody> <tr> <td align="left">Colonne</td> <td align="center">Colonne</td> <td align="right">Colonne</td> </tr> <tr> <td align="left">Alignée à</td> <td align="center">Alignée au</td> <td align="right">Alignée à</td> </tr> <tr> <td align="left">Gauche</td> <td align="center">Centre</td> <td align="right">Droite</td> </tr> </tbody> </table>
Annexes Articles connexes
Liens externes
Notes et références Notes
Références
* Catégorie:Langage de balisage léger Catégorie:Nouveauté en 2004