Cette page illustre le shortcode abbr (layouts/_shortcodes/abbr.html) : il balise une abréviation en HTML sémantique (<abbr>) et affiche sa définition au survol, sans écrire le HTML à la main.
Survolez les exemples ci-dessous : le curseur affiche le title de chaque abréviation, avec le soulignement pointillé natif du navigateur.
Avec un title inline
Pour une définition ponctuelle :
Le {{< abbr text="CSS" title="Cascading Style Sheets" >}} met en forme la page.Rendu : Le CSS met en forme la page.
Via le fichier de données
Les définitions récurrentes sont centralisées dans data/abbr/fr.yaml :
abbreviations:
- abbr: CSS
title: Cascading Style Sheets
- abbr: HTML
title: HyperText Markup LanguageLe même appel, sans title : Hugo cherche la définition dans ce fichier.
Le {{< abbr text="HTML" >}} structure le document.Rendu : Le HTML structure le document.
La correspondance est insensible à la casse et la forme affichée est celle de l’entrée du fichier :
Le {{< abbr text="css" >}}, saisi en minuscules dans l'appel.Rendu : Le CSS, saisi en minuscules — affiché « CSS », la forme canonique du fichier data.
Abréviation d’une autre langue
L’option lang ajoute l’attribut HTML correspondant — utile pour la prononciation par les lecteurs d’écran :
En allemand : {{< abbr text="z. B." title="zum Beispiel" lang="de" >}}Rendu : En allemand : z. B.
Ordre de résolution
titleinline — prioritaire ;- fichier
data/abbr/{lang}.yaml— première entrée dont le champabbrcorrespond (insensible à la casse) ; la forme affichée est celle de l’entrée (abbr) ; - aucune définition —
<abbr>sanstitle, et un warning au build :shortcode abbr: no title found for "…".
HTML rendu
<abbr title="Cascading Style Sheets">CSS</abbr>Édition dans Sveltia
Le fichier data/abbr/fr.yaml est éditable dans le CMS : collection config → entrée Abréviations. Chaque entrée de la liste porte deux champs : abbr et title.
Récapitulatif
| Syntaxe | Résultat |
|---|---|
{{< abbr text="CSS" >}} | Title depuis data/abbr/fr.yaml |
{{< abbr text="CSS" title="…" >}} | Title inline, prioritaire |
{{< abbr text="z. B." lang="de" >}} | Attribut lang optionnel |
{{< abbr text="XYZ" >}} | Sans title + warning au build |
Notes
- Accessibilité : le
titled’un<abbr>n’apparaît ni au clavier ni au tactile — pour un public large, développez la première occurrence en toutes lettres ; la balise garde sa valeur sémantique. - Casse : la correspondance est insensible à la casse (
csstrouveCSS) ; la forme affichée est celle de l’entrée du fichier (abbr), pas du texte tapé — les abréviations à casse mixte (JavaScript,OAuth) restent correctes. - Doublons : en cas d’entrées en double dans le fichier, la première correspondance l’emporte.
- Styling : le design system v2 n’a pas de règle
abbr— rendu natif navigateur (soulignement pointillé), surchargeable dansassets/css/theme.css. - Multilingue : une entrée data par langue (
data/abbr/en.yaml, etc.), résolue viasite.Language.Lang.