Markdown

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Markdown
Image illustrative de l'article Markdown

Extension .md
Développé par John Gruber et Aaron Swartz
Type de format Langage de balisage

Markdown est un langage de balisage léger créé par John Gruber et Aaron Swartz en 2004. Son but est d'offrir une syntaxe facile à lire et à écrire. Un document formaté selon Markdown devrait pouvoir être publié comme tel, en texte, sans donner l’impression qu’il a été marqué par des balises ou des instructions de formatage.

Un document rédigé en Markdown peut être converti facilement en HTML. Bien que la syntaxe Markdown ait été influencée par plusieurs filtres de conversion de texte existants vers HTML — dont Setext[1], atx[2], Textile, reStructuredText, Grutatext[3] et EtText[4] —, la source d’inspiration principale est le format du courrier électronique en mode texte.

Quelques exemples[modifier | modifier le code]

Voici quelques exemples de syntaxe Markdown. Quelques balises HTML équivalentes sont données.

Cette liste n'est pas exhaustive.

Formatage[modifier | modifier le code]

Pour mettre du texte en emphase (balise HTML <em>), ce qui produit une mise en italique dans un navigateur courant :

*quelques mots* ou  _quelques mots_

Pour mettre du texte en grande emphase (balise HTML <strong>), ce qui produit une mise en gras dans un navigateur courant :

**plus important** ou __également important__

Pour mettre du code dans le texte (balise HTML <code>) :

Mon texte `code` fin de mon texte

Pour un paragraphe de code, mettre quatre espaces devant:

    Première ligne de code
    Deuxième ligne

Comme dans les courriels, il est possible de faire des citations :

> Ce texte apparaîtra dans un élément HTML <blockquote>.

Pour faire un nouveau paragraphe, sauter une ligne

Premier paragraphe

Deuxième paragraphe   

Pour faire un simple retour à la ligne, mettre deux espaces en fin de ligne (balise HTML <br>).

Listes[modifier | modifier le code]

Sauter une ligne avant le début de la liste.

Pour créer une liste non ordonnée (balise HTML <ul>) :

* Pommes
* Poires
    * Sous élément avec au moins quatre espaces devant.
    

Et une liste ordonnée (balise HTML <ol>) :

1. mon premier
2. mon deuxième

Titres[modifier | modifier le code]

Les titres sont créés avec un certain nombre de # avant le titre, qui correspondent au niveau de titre souhaité (le HTML propose 6 niveaux de titres de <h1> à <h6>)

# un titre de premier niveau
#### un titre de quatrième niveau

Pour les deux premiers niveaux de titre (<h1> et <h2>), il est également possible de souligner le titre avec des = ou des - (leur nombre réel importe peu, mais il doit être supérieur à 2).

Titre de niveau 1
=====================
Titre de niveau 2
--------------------

Liens[modifier | modifier le code]

Pour créer des liens (balise HTML <a>) :

[texte du lien](url_du_lien "texte pour le titre, facultatif")

Images[modifier | modifier le code]

Pour afficher une image (balise HTML <img>) :

![Texte alternatif](url_de_l'image "texte pour le titre, facultatif")

Mises en œuvre[modifier | modifier le code]

Plusieurs mises en œuvre existent et ce dans différents langages de programmation : en Perl[5], qui reste la mise en œuvre de référence, en PHP[6], en Ruby[7], en Python[8], en Java[9], en C#[10], en Haskell[11], et même en Javascript[12], notamment avec strapdown.js[13].

Évolutions[modifier | modifier le code]

Depuis sa création originelle par Gruber et Swartz, Markdown n'a pas connu d'évolution notoire de la part de ses auteurs. De plus, ce format n'a jamais été formellement standardisé.

Un certain nombre de variantes ont donc été développées par d'autres, afin de pallier ce qui a été perçu comme des limitations inhérentes à une syntaxe très simplifiée.

À titre d'exemples, on pourra citer MultiMarkdown et GitHub Flavored Markdown[14]. Ce dernier est utilisé pour les articles et la documentation sur Github lui-même, 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.

Il existe également des greffons pour de nombreux logiciels populaires, tels que "Markdown Here" pour Firefox et Chrome, et le système de gestion de contenu WordPress intègre désormais ce langage nativement.

Notes et références[modifier | modifier le code]

  1. Setext
  2. atx
  3. Grutatext
  4. EtText
  5. Perl (implémentation de référence)
  6. PHP Markdown (Markdown en PHP)
  7. BlueCloth (Markdown en Ruby)
  8. Markdown en Python
  9. markdownj (Markdown en Java)
  10. Markdown.NET (Markdown en C# et .NET)
  11. pandoc (Markdown en Haskell)
  12. showdown (Markdown en Javascript)
  13. strapdown.js
  14. "GitHub Flavored Markdown"

Annexes[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]