Aussi disponible en : English · Español · Português · العربية
Convertir du HTML en Markdown
Collez du HTML, obtenez du Markdown propre instantanément, sans rien envoyer à un serveur.
Qu’est-ce que convertir du HTML en Markdown ?
Convertir du HTML en Markdown consiste à réécrire une page ou un extrait balisé — titres, paragraphes, listes, liens, gras, italique — dans la syntaxe légère du Markdown, qui utilise des symboles comme le dièse et l’astérisque au lieu de balises. L’outil lit le HTML collé à gauche et affiche le Markdown correspondant à droite, au fil de la frappe.
Ce passage sert surtout quand le texte part vivre ailleurs que dans un navigateur : un README de dépôt, un article destiné à un générateur de site statique, une note collée dans une application qui n’affiche que du Markdown, ou une page de documentation. Ces cibles n’interprètent pas le HTML — un <div> ou une <table> mal placée y reste du texte brut — donc convertir en amont évite d’y coller des balises qui ne seront jamais rendues.
Comment convertir votre HTML
- Collez votre HTML. Ouvrez la page ou le document contenant le contenu à convertir, copiez le code source ou l’extrait, puis collez-le dans le volet de gauche.
- Ajustez les options si besoin. Laissez « Extras GitHub » activée pour les tableaux, le texte barré et les listes de tâches, et laissez « Conserver le HTML que le Markdown ne peut pas exprimer » activée pour ne rien perdre.
- Copiez le Markdown obtenu. Le résultat apparaît à droite dès que vous collez ; cliquez sur le bouton de copie et collez-le dans son fichier de destination.
Ce que mesure vraiment cet outil
Il n’existe aucune spécification pour ce sens de conversion. CommonMark, la référence du langage, décrit précisément comment un document Markdown devient du HTML — elle ne dit rien du chemin inverse. Il n’y a donc pas de suite de tests officielle à faire réussir, et tout convertisseur qui promet d’être « 100 % fidèle » revendique une exactitude qui n’a jamais été définie nulle part.
La question qui se mesure, elle, est celle de l’aller-retour : prendre chacune des 652 sorties HTML attendues par la suite de tests CommonMark, les convertir en Markdown avec cet outil, reconvertir ce Markdown en HTML, puis vérifier si le résultat revient identique. Sur les 652 cas, 472 reviennent identiques à l’octet près, soit 72,4 %, et 540 reviennent identiques dès qu’on ignore les espaces insignifiants entre les balises, soit 82,8 %.
Ces chiffres correspondent aux réglages livrés avec la page, qui conservent le HTML que le Markdown ne peut pas exprimer. Avec cette option désactivée, le même aller-retour donne 471 et 538 : conserver ce que le format ne sait pas dire est non seulement le choix prudent, c’est aussi, de très peu, le plus fidèle.
Les extras GitHub — tableaux, texte barré, listes de tâches — ne changent rien à ce chiffre, parce que la suite CommonMark ne contient aucun tableau : elle ne teste que la syntaxe définie par la spécification elle-même. Ces extras produisent malgré tout du Markdown bien réel une fois activés ; ils comptent simplement en dehors du score mesuré ci-dessus.
Pourquoi certains éléments restent en HTML
Ce que sont ces 112 différences est l’essentiel de l’histoire. Cinquante-cinq d’entre elles, un peu moins de la moitié, correspondent aux sections de blocs HTML et de HTML brut de la spécification : du HTML qui n’a tout simplement aucune écriture en Markdown. Les 57 autres forment une longue traîne de cas où une version équivalente revient, mais écrite autrement — neuf dans les listes, neuf dans les liens, sept dans les éléments de liste, six dans le code en ligne, cinq dans les blocs de code, cinq dans l’emphase, et des écarts d’une unité ailleurs.
La conclusion de fond porte sur le format lui-même et non sur tel ou tel outil : le Markdown ne peut pas exprimer tout ce que le HTML exprime. Il a une syntaxe pour les titres, les paragraphes, les listes, les citations, le code, l’emphase, les liens, les images et les filets — et rien de plus. Un <div>, un <span>, une classe, un id, l’alignement d’une cellule de tableau ou une vidéo intégrée n’ont aucune écriture en Markdown.
C’est pourquoi cet outil conserve par défaut, sous forme de HTML littéral, ce qui ne se traduit pas — plutôt que de retirer les balises en ne gardant que leur texte — et pourquoi le panneau sous les deux volets indique quels éléments n’avaient pas d’équivalent. Aplatir un tableau en un seul paragraphe, en silence, est le genre de perte que personne ne remarque avant longtemps. L’option peut être désactivée, mais c’est alors un choix avec perte, et la page le dit clairement.
L’outil s’appuie sur l’analyseur HTML du navigateur plutôt que d’en embarquer un. Ce n’est pas qu’une question de poids de téléchargement : l’analyseur du navigateur est le seul qui interprète un HTML mal formé ou inhabituel exactement comme le navigateur le ferait à l’affichage. Ce que vous convertissez est donc bien ce que vous auriez vu à l’écran.
Pourquoi est-ce gratuit ?
Tout le travail — lecture du HTML, conversion, affichage du Markdown — se fait dans votre navigateur, avec l’analyseur intégré à celui-ci. Rien n’est envoyé à un serveur, il n’y a donc rien à héberger ni à faire tourner pour votre requête, et aucun compte n’est nécessaire pour l’utiliser.
Le Markdown produit ne porte ni filigrane ni mention de l’outil : c’est votre texte, réécrit dans une autre syntaxe, prêt à être collé où vous en avez besoin.