Cet article passe en revue toutes les fonctionnalités supportées par le moteur de rendu — titres, mise en forme, code, tableaux, médias intégrés, blocs HTML bruts et scripts inline. Considérez-le comme un guide de style vivant.
Titres
Six niveaux, écrits avec des préfixes # :
# H1 — Titre de page
## H2 — Section
### H3 — Sous-section
#### H4 — Titre mineur
##### H5 — Niveau notes de bas de page
###### H6 — Le plus petit possible
Ce qui s'affiche ainsi :
H1 — Titre de page
H2 — Section
H3 — Sous-section
H4 — Titre mineur
H5 — Niveau notes de bas de page
H6 — Le plus petit possible
Mise en Forme du Texte
**gras**, *italique*, ~~barré~~, `code inline`, **_gras italique_**
S'affiche comme : gras, italique, barré, code inline, gras italique
> Ceci est une citation. Idéal pour mettre en valeur une phrase clé ou une remarque.
>
> Elle peut s'étendre sur plusieurs paragraphes, et même contenir du **formatage** à l'intérieur.
Ceci est une citation. Idéal pour mettre en valeur une phrase clé ou une remarque.
Elle peut s'étendre sur plusieurs paragraphes, et même contenir du formatage à l'intérieur.
[texte du lien](/un-chemin), [lien externe](https://example.com)
Voici un lien vers la page d'accueil et un lien externe.
Listes
Non ordonnée
- Premier élément
- Deuxième élément
- Élément imbriqué
- Autre élément imbriqué
- Profondément imbriqué
- Troisième élément
Ordonnée
- Étape une
- Étape deux
- Sous-étape A
- Sous-étape B
- Étape trois
Liste de tâches (GFM)
- [x] Élément terminé
- [ ] Élément en attente
- Titres
- Mise en forme
- Listes
- Encore en train de lire...
Code
Inline
Utilisez console.log() pour déboguer, ou <?php echo $var; ?> côté serveur.
Blocs délimités (avec coloration syntaxique via highlight.js)
// fizzbuzz classique, rendu avec highlight.js
for (let i = 1; i <= 100; i++) {
if (i % 15 === 0) console.log('FizzBuzz');
else if (i % 3 === 0) console.log('Fizz');
else if (i % 5 === 0) console.log('Buzz');
else console.log(i);
}
<?php
function slugify(string $text): string
{
$text = strtolower(trim($text));
$text = preg_replace('/[^a-z0-9]+/', '-', $text);
return trim($text, '-');
}
# script de déploiement
git pull origin main
composer install --no-dev
php artisan migrate --force
SELECT slug, COUNT(*) AS total
FROM comments
GROUP BY slug
ORDER BY total DESC
LIMIT 10;
Tableaux (GFM)
| Fonctionnalité | Supporté | Notes |
|---|---|---|
| Markdown | ✓ | CommonMark + GFM |
| HTML brut | ✓ |
html_input = allow
|
| Scripts inline | ✓ | Extraits, injectés à la fin |
| Coloration synt. | ✓ | Via highlight.js |
| Listes de tâches | ✓ | Extension GFM |
| Tableaux | ✓ | Extension GFM |
| Barré | ✓ | Extension GFM |
| Liens automatiques | ✓ | Extension GFM |
Images

Vous pouvez aussi utiliser du HTML brut pour mieux contrôler la taille ou les légendes :
<figure> avec une légende — tout à fait valide ici.
HTML Brut
Comme html_input est défini sur allow, vous pouvez insérer du HTML arbitraire dans le corps.
Construit avec un
<div> brut. Utilise les variables CSS de la feuille de style principale, donc respecte automatiquement les modes clair/sombre.
Section repliable (cliquer pour développer)
Contenu masqué révélé au clic. Utile pour les spoilers, les longues notes de bas de page ou les approfondissements optionnels.
Règles Horizontales
L'une ou l'autre de ces trois syntaxes produit un <hr> :
---
***
___
Liens Automatiques (GFM)
Les URLs et adresses e-mail nues deviennent cliquables sans syntaxe Markdown :
https://example.com
utilisateur@example.com
Script Inline
Le moteur de rendu retire les balises <script> du corps, puis les réinjecte après l'article, afin qu'ils s'exécutent en toute sécurité une fois le DOM prêt. Le compteur ci-dessous en est alimenté :
Cette page a été rendue … fois cette session.
Isaia · 2026-06-04 08:31:01
Super poste!
Auteur · 2026-06-04 10:31:02
dsa
Isaia · 2026-06-04 10:30:49
Super