Hello,
J'ai évoqué hier le ticket 956 (
http://dev.dotclear.org/2.0/ticket/956) sur
la mise en place d'un moteur de macros indépendant. Pour rappel, l'idée est
de permettre de définir des macros dans les billets, qui seraient
interprétées au moment de la génération du code xhtml du billet. Exemples :
insertion d'un media/billet via son id.
La problématique est simple :
1. soit on définit une syntaxe d'appel de la macro qui n'interfère pas avec
les syntaxes actuelles (ie. qui ne sera pas transformée par le moteur de
syntaxe), auquel cas, l'ordre de génération du code xhtml du billet est le
suivant :
* première passe avec le compilateur de format de texte (wiki, markdown,
...)
* seconde passe avec le compilateur de macro
2. soit on passe d'abord via le compilateur de macro, auquel cas on est
plus libre dans la syntaxe d'appel de macros, mais il faut savoir, pour
chaque format de texte, comment inclure du contenu xhtml (afin que le code
sorti par le compilateur de macro ne soit pas recompilé ensuite par le
contenu xhtml
3. Soit on fait en 2 étapes :
* première passe avec le compilateur de macro qui remplace l'appel à la
macro par une balise donnée (indépendante du moteur de formattage de texte)
* seconde passe avec le formatteur de texte
* troisième passe avec le compilateur de macro qui remplace la balise
donnée par le résultat des macros.
Des avis sur le sujet, et éventuellement sur une syntaxe souhaitée de
macros ?
--
Bruno