Skip to content

Écosystème de plugins Markdown

La vraie puissance de Markdown réside dans son extensibilité. Grâce aux plugins, vous pouvez ajouter de nouvelles fonctionnalités, personnaliser la syntaxe et intégrer Markdown avec divers outils et services.

Processeurs Markdown populaires

Marked.js

Analyseur Markdown JavaScript rapide.

Installation

bash
npm install marked

Utilisation de base

javascript
const marked = require('marked');
const html = marked.parse('# Hello World');

Markdown-it

Analyseur Markdown pluggable, rapide et facile à étendre.

Installation

bash
npm install markdown-it

Avec plugins

javascript
const md = require('markdown-it')();

md.use(require('markdown-it-emoji'));
md.use(require('markdown-it-footnote'));

const result = md.render('# Titre :smile:');

Catégories de plugins essentiels

1. Extensions de syntaxe

GFM

bash
npm install remark-gfm

Emoji

bash
npm install markdown-it-emoji
javascript
const md = require('markdown-it')();
md.use(require('markdown-it-emoji'));
md.render('Bonjour :smile:');  // Bonjour 😄

2. Table des matières (TOC)

bash
npm install remark-toc

3. Coloration syntaxique

bash
npm install highlight.js
javascript
const marked = require('marked');
const hljs = require('highlight.js');

marked.setOptions({
  highlight: function(code, lang) {
    if (lang && hljs.getLanguage(lang)) {
      return hljs.highlight(code, { language: lang }).value;
    }
    return code;
  }
});

Créer des plugins personnalisés

Plugin Markdown-it

javascript
function myPlugin(md) {
  md.renderer.rules.paragraph_open = function(tokens, idx, options, env, self) {
    tokens[idx].attrSet('class', 'custom-paragraph');
    return self.renderToken(tokens, idx, options);
  };
}

const md = require('markdown-it')();
md.use(myPlugin);

Conclusion

L'écosystème de plugins Markdown est très riche et peut répondre à presque tous les besoins. Le choix du bon processeur et des bons plugins peut considérablement améliorer les fonctionnalités de Markdown.

Ressources supplémentaires

Build by www.markdownlang.com