Éditeur Markdown, gratuit
Écrivez du Markdown avec un aperçu HTML en direct.
Comment utiliser
- Tapez ou collez du texte Markdown dans le panneau de gauche. Le panneau de droite affiche l'aperçu HTML en direct.
- Utilisez les boutons de la barre d'outils pour insérer rapidement du formatage (gras, italique, titres, liens, etc.).
- Visualisez les nombres de mots, de caractères et de lignes sous l'éditeur.
- Téléchargez votre Markdown en fichier .md ou copiez la sortie HTML.
Questions fréquentes
Cet éditeur prend-il en charge la syntaxe Markdown standard ?
Oui. Il prend en charge les titres, le gras, l'italique, les liens, les images, les blocs de code, les listes, les citations et les lignes horizontales. Un analyseur Markdown simplifié effectue le rendu en HTML en temps réel.
Puis-je sauvegarder mon travail ?
L'éditeur enregistre automatiquement votre texte dans la mémoire du navigateur pendant que vous l'éditez. Utilisez Télécharger .md pour l'enregistrer en fichier sur votre ordinateur.
Comment insérer un lien ou une image ?
Utilisez les boutons de la barre d'outils. Pour les liens, tapez [texte](url). Pour les images, utilisez . L'aperçu se met à jour instantanément.
Brève histoire du Markdown
Markdown a été créé en mars 2004 par John Gruber, l'auteur derrière Daring Fireball, avec une collaboration importante d'Aaron Swartz (le touche-à-tout qui a ensuite cofondé Reddit et coécrit la spécification RSS 1.0). L'objectif de conception déclaré (inscrit dans la page de syntaxe d'origine) était de « le rendre aussi lisible que possible ». Gruber voulait un format en texte brut publiable tel quel, qui paraisse naturel dans un terminal ou un éditeur de texte brut sans aucun rendu. Le format a formalisé ce que les gens faisaient déjà dans les e-mails en texte brut et les messages Usenet : *asterisks for emphasis*, > for quoted text, des lignes vides entre les paragraphes.
Le nom est un jeu de mots sur « markup language » (langage de balisage), Markdown est si léger qu'il « marks down » (balise vers le bas) plutôt que de baliser vers le haut. Le cœur philosophique qui le distingue du HTML : la source du HTML est faite pour les machines, celle de Markdown pour les humains. Un fichier .md devrait être parfaitement agréable à lire dans un terminal, sans aucun rendu.
La page de syntaxe d'origine de Gruber laissait de nombreux cas limites ambigus, et tout au long de la fin des années 2000, chaque projet ayant besoin d'un analyseur Markdown a écrit le sien, prenant des décisions différentes sur les points non spécifiés. Au début des années 2010, le même fichier .md s'affichait de façon visiblement différente sur Reddit, GitHub, Stack Overflow et un blog Jekyll. En 2014, un groupe de travail comprenant Jeff Atwood (Stack Overflow, Discourse), John MacFarlane (Pandoc) et des ingénieurs de GitHub, Reddit et Meteor a produit une spécification rigoureuse, appelée à l'origine « Standard Markdown », renommée CommonMark après l'objection de Gruber. CommonMark publie à la fois une prose lisible par l'humain et une suite de tests lisible par la machine, comptant plus de 600 tests de cas limites ; la version actuelle est la 0.31.2 (janvier 2024). GitHub, GitLab, Reddit, Stack Overflow, Discourse et des dizaines de langages de programmation revendiquent désormais la conformité.
Syntaxe courante
Voici la syntaxe qui fonctionne dans presque toutes les variantes de Markdown, la base pratique prise en charge par cet éditeur.
| Ce que vous voulez | Comment l'écrire |
|---|---|
| Titre | # H1 à ###### H6 |
| Gras / italique | **bold** · *italic* · ***both*** |
| Code en ligne | `code` |
| Bloc de code | Délimité par trois accents graves ; balise de langage facultative pour la coloration syntaxique |
| Liste non ordonnée | - item (ou * ou +) |
| Liste ordonnée | 1. first : les nombres réels n'ont généralement pas d'importance |
| Lien | [text](https://example.com) |
| Image |  : le texte alternatif compte pour l'accessibilité |
| Citation | > quoted text |
| Ligne horizontale | --- seul sur une ligne |
Deux pièges courants : un simple retour à la ligne ne crée pas de saut de ligne : il vous faut une ligne vide pour un nouveau paragraphe, ou deux espaces en fin de ligne avant le retour (ou, en GFM, une barre oblique inverse) pour forcer un saut de ligne à l'intérieur d'un paragraphe. Et Markdown est un sur-ensemble du HTML : toutes les balises HTML en ligne sont transmises au rendu, ce qui est parfois utile et parfois un risque de sécurité.
GitHub Flavored Markdown et autres variantes
GFM est le sur-ensemble de CommonMark propre à GitHub. Il ajoute les tableaux (lignes délimitées par des barres verticales avec un séparateur en tirets), les éléments de liste de tâches (- [ ] non cochée, - [x] cochée), le texte barré (~~text~~), la détection automatique des URL et un filtre « disallowed raw HTML » qui supprime les balises dangereuses. GitHub lui-même affiche aussi des extras hors spécification, codes courts d'émoji (:tada:), @mentions, liens automatiques vers les tickets #123, encarts d'alerte (> [!NOTE]), sections <details> repliables, mais ce sont des fonctionnalités de rendu de GitHub plutôt que des éléments de la spécification GFM.
Autres variantes que vous rencontrerez :
- Pandoc Markdown : ajoute des blocs de métadonnées, des notes de bas de page, des listes de définitions, des formules mathématiques (
$...$LaTeX), des citations. La version « couteau suisse » universelle pour tout type de document. - MultiMarkdown et Markdown Extra : des variantes étendues plus anciennes qui ont influencé la syntaxe de tableaux de GFM.
- R Markdown : enveloppe le Markdown autour de blocs de code R ou Python exécutables ; effectue le rendu en HTML/PDF/Word via Pandoc.
- MDX : Markdown plus JSX. Utilisé dans la documentation basée sur React (Docusaurus, Next.js MDX).
- Discord utilise un sous-ensemble délibéré ; Slack utilise une variante volontairement non standard appelée « mrkdwn », avec le gras à astérisque simple et l'italique à tiret bas simple. Coller du Markdown standard dans Slack donne des résultats surprenants.
Où l'on trouve Markdown
À peu près partout où les développeurs écrivent du texte :
- Hébergement de code : chaque README, ticket et commentaire de PR sur GitHub ; idem sur GitLab, Bitbucket, Codeberg, Gitea.
- Questions-réponses et forums : Stack Overflow, Stack Exchange, Reddit, Discourse.
- Prise de notes : Obsidian, Joplin et Logseq utilisent Markdown nativement. Notion et Bear l'exportent.
- Générateurs de sites statiques : Jekyll (Ruby, Kramdown), Hugo (Go, Goldmark), Eleventy (Node, markdown-it), Docusaurus, MkDocs, Astro.
- Outils de documentation : JSDoc, TypeDoc, Rustdoc (Rust utilise CommonMark pour les commentaires de documentation
///), Sphinx via MyST. - Messagerie moderne : Mattermost, Zulip, Element/Matrix utilisent tous Markdown pour la mise en forme des messages.
Markdown est aussi un type de média IETF enregistré (text/markdown, RFC 7763, mars 2016) avec un paramètre variant (GFM, CommonMark, MultiMarkdown, etc.) afin que les destinataires sachent quelle variante appliquer. Extensions de fichier courantes : .md de loin la plus populaire, ainsi que .markdown, .mdown, .mkdn, .mkd.
Une note sur l'analyseur de cet éditeur
Cette page utilise un analyseur Markdown simplifié qui couvre le sous-ensemble courant ci-dessus, titres, gras et italique, liens, images, code délimité, listes, citations et lignes horizontales. Ce n'est pas une implémentation complète de CommonMark ou de GFM, et il se peut qu'il ne gère pas tous les cas limites (listes profondément imbriquées avec puces mixtes, continuation de ligne paresseuse, définitions de références de liens à travers le document). Pour une conformité CommonMark critique, un analyseur dédié comme marked.js, markdown-it ou commonmark.js est le bon choix, et pour le rendu en production de Markdown non fiable, faites passer la sortie de l'analyseur par un outil d'assainissement comme DOMPurify afin de prévenir les attaques XSS via le HTML en ligne.
Quand utiliser cet éditeur
- Rédiger un README GitHub avec un aperçu en direct avant de le coller dans le dépôt.
- Écrire un article de blog pour un site Jekyll, Hugo, Ghost ou Eleventy dont les fichiers source sont en
.md. - Prototyper une note Notion ou Obsidian quand vous ne voulez pas ouvrir l'application de bureau.
- Convertir un extrait rapide en HTML pour l'intégrer dans un CMS, un e-mail ou un canvas Slack.
- Apprendre la syntaxe Markdown : l'aperçu en direct montre immédiatement ce que fait chaque caractère.
- Rédiger du contenu confidentiel : l'éditeur enregistre automatiquement dans le
localStoragede votre navigateur, de sorte qu'une clause de contrat sensible ou une annonce avant lancement ne quitte jamais votre appareil.
Autres questions
Pourquoi un simple retour à la ligne ne crée-t-il pas une nouvelle ligne ?
C'est voulu. Markdown fusionne les retours à la ligne simples en un paragraphe continu, car le format est censé paraître naturel en texte brut, les lecteurs renvoient à la ligne à des largeurs arbitraires dans leur éditeur sans casser le rendu. Pour forcer un saut de ligne à l'intérieur d'un paragraphe, terminez une ligne par deux espaces (la convention Markdown d'origine) ou, en GFM, une barre oblique inverse. Pour un nouveau paragraphe, laissez une ligne vide entre les deux.
Puis-je utiliser du HTML dans Markdown ?
Oui, Markdown est un sur-ensemble du HTML. Les balises en ligne comme <span>, <a>, <sub> et <sup> sont transmises au rendu, et la syntaxe Markdown à l'intérieur est toujours reconnue. Le HTML de niveau bloc (<div>, <table>) doit être séparé du Markdown environnant par des lignes vides, et Markdown n'est pas traité à l'intérieur du bloc. Utilisez cela pour ce que Markdown ne peut pas exprimer nativement : les dimensions d'image (<img width="…">), les touches de clavier (<kbd>) ou les sections repliables (<details>).
Qu'en est-il des tableaux, des notes de bas de page et des listes de tâches ?
Les trois sont des extensions GFM, et non des éléments de la spécification Markdown d'origine. Les tableaux utilisent des lignes délimitées par des barres verticales avec une ligne de séparation en tirets en dessous ; l'analyseur simplifié de cette page peut les afficher comme du texte brut. Les notes de bas de page (référence [^1] et définition [^1]: definition) sont une fonctionnalité de rendu de GitHub en dehors de la spécification GFM proprement dite. Les listes de tâches (- [ ] et - [x]) font partie de GFM. Pour une prise en charge complète, collez votre fichier dans un moteur de rendu conforme à CommonMark+GFM comme l'aperçu de GitHub lui-même.
Pourquoi le texte alternatif est-il requis sur les images ?
Parce que le texte alternatif est ce que les lecteurs d'écran annoncent lorsqu'ils rencontrent l'image, c'est le principal point d'accroche pour l'accessibilité des lecteurs malvoyants.  est techniquement du Markdown valide mais inutile pour un lecteur d'écran ;  est vraiment descriptif. Omettre le texte alternatif ou le remplir avec un nom de fichier est l'un des échecs d'accessibilité les plus courants sur le contenu web.
Quelque chose est-il envoyé à un serveur ?
Non. L'éditeur analyse le Markdown en HTML dans le navigateur, l'aperçu en direct est mis à jour localement, et l'enregistrement automatique utilise le localStorage de votre navigateur : un petit espace de stockage privé sur votre appareil. Rien ne quitte la page. L'éditeur fonctionne hors ligne une fois chargé.