Carnet Wiki

Syntaxes Alternatives pour SPIP

Version 3 — July 2009 JLuc

Objectifs

-  objectif du développement : nouvelle(s) syntaxe(s) pour spip

-  objectif de cette page :

  • collecter et exposer des syntaxes alternatives pour SPIP, ainsi que les réactions et discussions
  • partager la réflexion autour
  • développer la culture de cette/ces nouvelle-s syntaxe-s et en préparer la sortie publique.

Mode d’emploi de cette page participative ------------

Mode d’emploi

-  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


Introduction

-  Allocution conférentielle de ESJ lors de SPIP-Avignon.

Voir la VDO

-  quelques notions clés

ESJ a écrit : < code <code > <?</code> 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 <span class="base64" title="PGNvZGU+Jmx0Oz9waHAgb3UgJmx0Oz94bWwgLi4uIG91ICZsdDs/c3BpcDwvY29kZT4="></span>


----------
{{{Critères de Qualité d'une syntaxe}}}


{{Problèmes actuels à résoudre}}


{ à détailler ! }


- on ne connait pas complètement la syntaxe de spip : elle présente des recoins et des subtilités impossible à documenter (cf 
[->1862] )



{{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 lexèmes lexemes  
- stabilité parenthétique
-
   existence  d'une  grammaire  écrite  qui  décrit  exhaustivement  les  syntaxes  possibles 


...


{{Discussion}} ------
 Discussion 


...


----------
{{{Points concernés}}}


- {{les boucles}}


Syntaxe actuelle :
<div class="base64" title="PGRpdiBjbGFzcz0ncHJlY29kZSc+PHByZSBkaXI9J2x0cicgc3R5bGU9J3RleHQtYWxpZ246IGxlZnQ7Jz48Y29kZT4gJm5ic3A7ICZsdDtCX2FydCZndDsKICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDt1bCZndDsKICZuYnNwOyAmbHQ7Qk9VQ0xFX2FydChBUlRJQ0xFUyl7aWRfYXJ0aWNsZX0mZ3Q7CiAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7bGkmZ3Q7I1RJVFJFJmx0Oy9saSZndDsKICZuYnNwOyAmbHQ7L0JPVUNMRV9hcnQmZ3Q7CiAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7dWwmZ3Q7CiAmbmJzcDsgJmx0Oy9CX2FydCZndDsKICZuYnNwOyAmbmJzcDsgJm5ic3A7IHBhcyBkJ2FydGljbGUKICZuYnNwOyAmbHQ7Ly9CX2FydCZndDs8L2NvZGU+PC9wcmU+PC9kaXY+"></div>


- {{les chaines multi}}


Syntaxe actuelle :
<div class="base64" title="PGRpdiBjbGFzcz0ncHJlY29kZSc+PHByZSBkaXI9J2x0cicgc3R5bGU9J3RleHQtYWxpZ246IGxlZnQ7Jz48Y29kZT4gJm5ic3A7ICZuYnNwOyZsdDttdWx0aSZndDtbZnJdIGZyYW5jYWlzIFtlbl0gYW5nbGFpcyZsdDsvbXVsdGkmZ3Q7PC9jb2RlPjwvcHJlPjwvZGl2Pg=="></div>


- {{les chaines de langues (idiome) }}:
 
Syntaxe actuelle :
<div class="base64" title="PGRpdiBjbGFzcz0ncHJlY29kZSc+PHByZSBkaXI9J2x0cicgc3R5bGU9J3RleHQtYWxpZ246IGxlZnQ7Jz48Y29kZT4gJm5ic3A7ICZsdDs6cGx1Z2luOm5vbTomZ3Q7IAogJm5ic3A7ICZuYnNwOyZsdDs6bm9te3BhcmFtPXZhbGV1cn18ZmlsdHJlOiZndDsgPC9jb2RlPjwvcHJlPjwvZGl2Pg=="></div>


--------
 {{{Proposition initiale par ESJ présentée à Avignon }}}


- emploi de <span class="base64" title="PGNvZGU+ICZsdDs/c3BpcDwvY29kZT4="></span> autour de chaque construction SPIP.


- d'après Marcimat :
<div class="base64" title="PGRpdiBjbGFzcz0ncHJlY29kZSc+PHByZSBkaXI9J2x0cicgc3R5bGU9J3RleHQtYWxpZ246IGxlZnQ7Jz48Y29kZT4gJm5ic3A7ICZsdDs/c3BpcCBBVkFOVCBhcnQgPyZndDsKICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDt1bCZndDsKICZuYnNwOyAmbHQ7P3NwaXAgQk9VQ0xFIGFydCBBUlRJQ0xFUyB7IChpZF9hcnRpY2xlKSA/Jmd0OwogJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2xpJmd0OyNUSVRSRSZsdDsvbGkmZ3Q7CiAmbmJzcDsgJmx0Oz9zcGlwIH0gYXJ0ID8mZ3Q7CiAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7dWwmZ3Q7CiAmbmJzcDsgJmx0Oz9zcGlwIEFQUkVTIGFydCA/Jmd0OwogJm5ic3A7ICZuYnNwOyAmbmJzcDsgcGFzIGQnYXJ0aWNsZQogJm5ic3A7ICZsdDs/c3BpcCBWSURFIGFydCA/Jmd0OzwvY29kZT48L3ByZT48L2Rpdj4="></div>


- d'après Booz :


<div class="base64" title="PGRpdiBjbGFzcz0ncHJlY29kZSc+PHByZSBkaXI9J2x0cicgc3R5bGU9J3RleHQtYWxpZ246IGxlZnQ7Jz48Y29kZT4mbHQ7P3NwaXAgQVZBTlQgYXJ0ID8mZ3Q7CiAmbmJzcDsmbHQ7dWwmZ3Q7CiZsdDs/c3BpcCBCT1VDTEUgYXJ0IChBUlRJQ0xFUykge2lkX2FydGljbGUgSU4gMSwyLDN9IHsgJm5ic3A7PyZndDsKICZuYnNwOyAmbmJzcDsgJmx0O2xpJmd0OyNUSVRSRSZsdDsvbGkmZ3Q7CiZsdDs/c3BpcCB9IGFydCA/Jmd0OwombHQ7L3VsJmd0OwombHQ7P3NwaXAgQVBSRVMgYXJ0ID8mZ3Q7CnBhcyBkJ2FydGljbGUKJmx0Oz9zcGlwIFZJREUgYXJ0ID8mZ3Q7IDwvY29kZT48L3ByZT48L2Rpdj4="></div>


{{Discussion}} 
 
...
 -------
 Discussion 


JLuc : ça m'évoque les imbrications délicates de <span class="base64" title="PGNvZGU+Jmx0Oz9waHA8L2NvZGU+"></span> et de code html. Comment ça s'indente d'ailleurs : selon html ? selon spip ?


-------
 {{{Propositions de Simon Camerlo}}}


sur spip-dev le 1er Juillet 2009 :


<div class="base64" title="PGRpdiBjbGFzcz0ncHJlY29kZSc+PHByZSBkaXI9J2x0cicgc3R5bGU9J3RleHQtYWxpZ246IGxlZnQ7Jz48Y29kZT4mbHQ7Ym91Y2xlIGF0dHJpYlg9JnF1b3Q7dmFsZXVyJnF1b3Q7IC4uLiAmZ3Q7CiAmbmJzcDsgJmx0O2F2YW50Jmd0OyAoLi4uKSAmbHQ7L2F2YW50Jmd0OwoKCihjb250ZW51IGRlIGxhIGJvdWNsZSDDoCBhZmZpY2hlcikKCgombHQ7YXByZXMmZ3Q7ICguLi4pICZsdDsvYXByZXMmZ3Q7CiAmbmJzcDsgJmx0O3Npbm9uJmd0OyAoLi4uKSAmbHQ7L3Npbm9uJmd0OwombHQ7L2JvdWNsZSZndDsgPC9jb2RlPjwvcHJlPjwvZGl2Pg=="></div>


{{Discussion}} -------
 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.