Carnet Wiki

syntaxes spécialisées

syntaxes spécialisées

Cette page vise à recenser les syntaxes spécialisées utilisées ici ou là dans l’écosystème spip.
Ayant par nature la caractéristique d’être ’« hors spip », le risque est qu’elles se multiplient dans l’ignorance l’une de l’autre, entrainant éparpillement et difficultés d’apprentissage.

Cette connaissance peut faciliter le choix d’une syntaxe spécialisée lorsqu’il y en a besoin d’une au cours d’un développement, éviter d’avoir des syntaxes différentes à chaque fois, faciliter la maintenance et éventuellement la mutualisation du code pour le développeur, et faciliter l’apprentissage pour l’usager.

SPIP

Les raccourcis d’origines, particulièrement ceux simplifiés, tels [->aut21], [->art23], [->article23],[->23] etc sont déjà, en quelque sorte, des syntaxes spécialisées.

Spip Lettres

Il est possible de personnaliser les lettres en faisant référence aux champs extra de l’abonné ou aux arguments passés par l’API hors_abo avec :
-   %%champ%%
-   %%champ|valeur sinon%%
-  %%valeur avant (#champ

Saisies, formidable, formitable
-  fichiers yaml : pour la description totale d’une saisie
-  chaine composée d’une liste de lignes de couples cle|valeur : pour la valeur par défaut d’une saisie. Cf Doc-Saisies-complementaire. C’est la fonction saisies_chaine2tableau qui assure la traduction entre la syntaxe pour un raccourci de tableau spip (un peu élargie) et un tableau php.
-  le plugin formitable utilise ce même format pour décrire les associations id_champ_formidable|nom_champ_table
-  Pour la saisie auteurs « si une valeur n’est pas en tableau, il faut l’y transformer, en supposant que la virgule est le séparateur » cf commit

Le Couteau Suisse
-  syntaxe placée dans les chaines de langue : [[%blocs_slide%]][[->%blocs_millisec% millisecondes]] (animer vos blocs dépliables à la manière d’un « glissement »)

Explications :

SVP

Dans son analyse des fichiers XML décrivant un plugin, SVP utilise une syntaxe dédiée, inspirée des raccourcis spip pour les liens, mais restrictive :

<auteur>[Didier, JLuc -> http://www.ouhpla.net]</auteur> : cette séquence n’est pas bien décryptée par SVP.
Il faut indiquer :
<auteur>Didier, [JLuc->http://www.ouhpla.net]</auteur>
ou
<auteur>[Didier->http://www.ouhpla.net], [JLuc->http://www.ouhpla.net]</auteur>