Y a-t-il ou ne pourrait-il pas y avoir dans spip une balise qui simplifie un peu l'écriture pour compléter une chaine :
au lieu d'écrire
#SET{infobulle,#GET{infobulle}|concat{#DATE|affdate_court}}
qui doit être même parfois
[(#SET{infobulle,[(#GET{infobulle}|concat{[(#DATE|affdate_court)]})]})]
Ici tu parles d'affectation dans la clé 'infobulle' du contenu déjà dans la clé, complété du 2nd paramètre. Ça serait donc un #SET_CONCAT{cle,valeur[,valeur]}.
Tu peux le faire si tu veux dans spip-bonux-3 (qui a #SET_MERGE et #SET_PUSH un peu sur le même principe) mais je ne vois pas trop l'intérêt de la chose (surtout dans SPIP).
Peut être qu'on pourrait imaginer une balise générique #SET_*{cle, params} qui appliquerait le filtre trouvé à l'élément déjà enregistré. Ça généraliserait. À réfléchir.
Y a-t-il ou ne pourrait-il pas y avoir dans spip une balise qui
simplifie un peu l'écriture pour compléter une chaine :
au lieu d'écrire
[(#SET{infobulle,[(#GET{infobulle}|concat{[(#DATE|affdate_court)]})]})]
Ici tu parles d'affectation dans la clé 'infobulle' du contenu déjà dans
la clé, complété du 2nd paramètre. Ça serait donc un #SET_CONCAT{cle,valeur[,valeur]}.
Tout à fait
Tu peux le faire si tu veux dans spip-bonux-3 (qui a #SET_MERGE et #SET_PUSH un peu sur le même principe)
Oui mais ça c'est sur des tableaux
mais je ne vois pas trop l'intérêt de la chose (surtout dans SPIP).
Par exemple je prépare de plus en plus des chaines en plusieurs morceaux (pour créer une requête SQL pour boucle DATA)
Ça permet de ne pas avoir des écritures très longues de |concat à l'enfilade... comme dans bien des cas.
Peut être qu'on pourrait imaginer une balise générique #SET_*{cle,
params} qui appliquerait le filtre trouvé à l'élément déjà enregistré.
Ça généraliserait. À réfléchir.
Le Couteau Suisse offre une lame de simplification de l'écriture #SET/#GET parfois lourde en effet : la lame "Balise #SET étendue".
Voici sa description :
Afin d’alléger les écritures du type #SET{x,#GET{x}|un_filtre}, cet outil vous offre le raccourci suivant : #SET_UN_FILTRE{x}. Le filtre appliqué à une variable passe donc dans le nom de la balise.
Exemples : #SET{x,1}#SET_PLUS{x,2} ou #SET{y,avions}#SET_REPLACE{y,ons,ez}.
Dans ce das précis, nous aurions l'écriture suivante : #SET_CONCAT{infobulle,#DATE|affdate_court}
Ah OK merci.
Je vais donc installer pour la première fois le couteau suisse.
J'ai toujours eu peur que ça n'amène de trop nombreuses foncitonnalités qui surchargeraient l'interface ou le moteur. Mais j'essaie.