Pour en revenir à ce que je racontais avant-hier à propos des évolutions de la syntaxe wiki pour la 2.17, voilà un autre exemple que j’avais en tête (autre que celui de la reprise de liste numérotée avec un index différent de 1), et dont je causais un peu il y a quelques temps.
J’ai donc, sur ce blog, deux classes supplémentaires pour gérer les blocs de côté (<aside>), .left
pour cadrer le bloc à gauche plutôt qu’à droite par défaut, et .inline
pour l’insérer dans le flot des blocs, comme un paragraphe.
Jusqu’à la 2.16.9 compris, pour pouvoir spécifier ces classes, pas d’autre choix, en syntaxe wiki, que de basculer temporairement en mode HTML avec la macro ///html
en début de ligne :
///html <aside class="left"> … </aside> <aside class="inline"> … </aside>
Ce qui donne, pour les trois présentations possibles :
Tout d’abord avec le style standard…
« On rapporte qu’après le déluge les Thesprotes et les Molosses eurent pour premier roi Phaéton, l’un de ceux qui vinrent en Épire avec Pelasgus ; mais quelques-uns disent que Deucalion et Pyrrha bâtirent le temple de Dodone, et qu’ils s’établirent là même, chez les Molosses. »
Avec la classe .left
:
« On rapporte qu’après le déluge les Thesprotes et les Molosses eurent pour premier roi Phaéton, l’un de ceux qui vinrent en Épire avec Pelasgus ; mais quelques-uns disent que Deucalion et Pyrrha bâtirent le temple de Dodone, et qu’ils s’établirent là même, chez les Molosses. »
Et avec la classe .inline
:
« On rapporte qu’après le déluge les Thesprotes et les Molosses eurent pour premier roi Phaéton, l’un de ceux qui vinrent en Épire avec Pelasgus ; mais quelques-uns disent que Deucalion et Pyrrha bâtirent le temple de Dodone, et qu’ils s’établirent là même, chez les Molosses. »
Tout ça avec le désavantage de devoir utiliser du HTML pour tout le contenu du bloc de côté !
Avec la 2.17, ça sera plus simple, puisqu’il suffira de mettre ça avec le marqueur d’attribut :
) ''(extrait de « Les hommes illustres » de Plutarque)''§§class="left"§§
Ou
) ''(extrait de « Les hommes illustres » de Plutarque)''§§class="inline"§§
Pour l’instant je n’ai pas « filtré » ce qu’on pouvait placer comme attribut et j’imagine qu’on pourrait s’amuser à y placer plus que quelques attributs de balise HTML, comme par exemple un peu de javascript, voire fermer et ouvrir quelques balises supplémentaires :
« On rapporte qu’après le déluge les Thesprotes et les Molosses eurent pour premier roi Phaéton, l’un de ceux qui vinrent en Épire avec Pelasgus ; mais quelques-uns disent que Deucalion et Pyrrha bâtirent le temple de Dodone, et qu’ils s’établirent là même, chez les Molosses. »§§onclick="alert('Coucou !')">Cliquez-moi !</p><h1>Bizarre</h1><p§§
Ce qui donnerait en HTML :
<p onclick="alert('Coucou !')">Cliquez-moi !</p><h1>Bizarre</h1><p>« On rapporte qu’après le déluge les Thesprotes et les Molosses eurent pour premier roi Phaéton, l’un de ceux qui vinrent en Épire avec Pelasgus ; mais quelques-uns disent que Deucalion et Pyrrha bâtirent le temple de Dodone, et qu’ils s’établirent là même, chez les Molosses. »</p>
En situation :
Cliquez-moi !
Bizarre
« On rapporte qu’après le déluge les Thesprotes et les Molosses eurent pour premier roi Phaéton, l’un de ceux qui vinrent en Épire avec Pelasgus ; mais quelques-uns disent que Deucalion et Pyrrha bâtirent le temple de Dodone, et qu’ils s’établirent là même, chez les Molosses. »
À voir à l’usage si ça risque de poser problème… Cela dit rien de plus que ce qu’on peut déjà faire aujourd’hui !
1 De Nicolas Hoizey -
Pour info, il y a une discussion depuis pas mal de temps dans la communauté CommonMark pour avoir une syntaxe standard d’ajout d’attributs (et plus particulièrement de classes) : https://talk.commonmark.org/t/consistent-attribute-syntax/272/137
Pour ma part, j’utilise déjà très régulièrement la notation
{.classname}
grâce au plugin markdown-it-attrs. (mais je suis en Node.js avec Eleventy)Ce serait bien que tu utilises aussi cette syntaxe dans Dotclear, si c’est possible, puisqu’elle semble faire consensus.
2 De Franck -
Ça me semble un peu limité cette syntaxe d’ajout puisque si j’ai bien compris ça se limite à l’id et/ou à la classe ; un poil réducteur par exemple si on veut reprendre une liste à un autre index que 1 !
Par ailleurs les délimiteurs
{
et}
me posent problème côté syntaxe wiki Dotclear vu qu’ils sont déjà utilisés pour la balise<q>
(citation en ligne).3 De Nicolas Hoizey -
C’est prévu pour tous les attributs, pas uniquement classes et ids. Par exemple, sur une image, tu peux ajouter
{width=320}
.Dommage que ce soit déjà utilisé, du coup… 😥
4 De Franck -
En fait je vois pas trop l’intérêt d’unifier les marqueurs entre le wiki Dotclear et Markdown. Si vraiment c’est Markdown qui est souhaité, autant l’utiliser et c’est déjà possible dans Dotclear.
Après tout, la syntaxe Wiki de Dotclear existait avant celle de Markdown, il serait donc logique que Markdown modifie sa syntaxe pour utiliser celle de Dotclear, CQFD ;-)
5 De Nicolas Hoizey -
Ah, je pensais que tu voulais justement passer à un Markdown plus généralement utilisé, plutôt qu’une syntaxe spécifique à Dotclear.
J’ai mal lu, ou confondu deux sujets, désolé ! 🤷♂️
6 De Franck -
Pas de souci ; je comprends mieux tes commentaires précédents !