Version 1 — Juillet 2009 — JLuc
- objectif du développement : nouvelle(s) syntaxe(s) pour spip
- objectif de cette page :
- compléter / améliorer les parties insuffisantes de cette présentation
- poser questions et réponses dans les parties « Discussion »
- proposer une nouvelle syntaxe à la fin de cette page
- Allocution conférentielle de ESJ lors de SPIP-Avignon.
- quelques notions clés
<?
veut dire qu’on quitte l’univers syntaxique dans lequel on était, mais ne préjuge rien sur celui-ci, qui peut avoir des choses en commun avec le nouveau.
Exemple <?php ou <?xml ... ou <?spip
Problèmes actuels à résoudre
à détailler !
Critères de Qualité
à détailler !
- lisibilité
- simplicité
- capacité à décrire le langage
- extensibilité
- non ambiguité
- conformité XML
- validité relativement à la dtd (?)
- permettre aux colorieurs syntaxique d’améliorer leurs analyse
- tout ce qui s’ouvre se ferme (parenthèse, crochet, accolade)
- stabilité des lexemes
- stabilité parenthétique
...
Discussion
- les boucles
Syntaxe actuelle :
<B_art>
<ul>
<BOUCLE_art(ARTICLES){id_article}>
<li>#TITRE</li>
</BOUCLE_art>
<ul>
</B_art>
pas d'article
<//B_art>
- les chaines multi
Syntaxe actuelle :
<multi>[fr] francais [en] anglais</multi>
- les chaines de langues (idiome) :
Syntaxe actuelle :
<:plugin:nom:>
<:nom{param=valeur}|filtre:>
- emploi de <?spip
autour de chaque construction SPIP.
- d’après Marcimat :
<?spip AVANT art ?>
<ul>
<?spip BOUCLE art ARTICLES { (id_article) ?>
<li>#TITRE</li>
<?spip } art ?>
<ul>
<?spip APRES art ?>
pas d'article
<?spip VIDE art ?>
- d’après Booz :
<?spip AVANT art ?>
<ul>
<?spip BOUCLE art (ARTICLES) {id_article IN 1,2,3} { ?>
<li>#TITRE</li>
<?spip } art ?>
</ul>
<?spip APRES art ?>
pas d'article
<?spip VIDE art ?>
Discussion
JLuc : ça m’évoque les imbrications délicates de <?php
et de code html. Comment ça s’indente d’ailleurs : selon html ? selon spip ?
sur spip-dev le 1er Juillet 2009 :
<boucle attribX="valeur" ... >
<avant> (...) </avant>
(contenu de la boucle à afficher)
<apres> (...) </apres>
<sinon> (...) </sinon>
</boucle>
Discussion
JLUC : c’est lisible et parlant.
ESJ : ça fait des boucles CONFORME XML mais pas VALIDES par rapport à la DTD, et même que ca les empêche définitivement de l’être. Cf pourquoi dans vidéo.