Anomalie #820

Supporter des espaces dans les critères ?

Ajouté par Paolo - il y a presque 10 ans. Mis à jour il y a plus de 8 ans.

Statut:NouveauDébut:
Priorité:NormalEchéance:
Assigné à:spip-dev -% réalisé:

0%

Catégorie:filtres et balises
Version cible:99 plus tard
Resolution: Navigateur:

Description

Pendant un long moment l'autre jour, j'essayais de faire :

<INCLURE{fond=inc_vmenu}{id_article}{lang = #_chap:LANG}{envart =
#_principale:ID_ARTICLE}>

qui ne marche pas, uniquement à cause des espaces dans le critère {envart...

Si on l'écrit {envart=#_principale:ID_ARTICLE} (merci, Jacques et Olivier), cela marche sans problème.

Une fois que l'on sait (et se le rappelle) il n'y plus de problème. Mais ce n'est pas très intuitif. Si cela ne cause pas de problèmes par ailleurs, ne serait-il bien de supporter des espaces autour du "=" dans un critère ?

Historique

#1 Mis à jour par Fil _ il y a plus de 9 ans

Je ne comprends pas, il me semble que ça fonctionne déjà, le compilateur me donnant la même chose que je fasse {id_article = 3} ou {id_article=3} ; j'ai testé divers critères et modes de compilation avec toujours les mêmes résultats.

Que tu donnait le débugueur pour tes boucles ?

#2 Mis à jour par Paolo - il y a plus de 9 ans

En réponse à [comment:1 filou]:

Je ne comprends pas, il me semble que ça fonctionne déjà,

Ouff ! C'est seulement aujourd'hui que je vois ta réponse. Non, je pense qu'il y a un problème.

Site 1.9.2 montre cette page :
http://www.taize.fr/en_article3425.html?lang=fr
Note que la page en cours est bien grisée dans le menu à gauche.

Site SVN récente pour la même page :
http://dev.taize.asso.fr/SVN/en_article3425.html?lang=fr
et la page en cours n'est pas distinguée.

Manip pour réproduire ceci : insérer des espaces autour du "=" suivant la variable 'cur' dans les 4 lignes de ce squelette :

http://dev.taize.asso.fr/SVN/squelettes/ti_vmenu.html

<INCLURE{fond=inc-vmenu}{cur = #ENV{id_article}|=={#ID_ARTICLE}|?{1,0}}{lang=#_chap:LANG}{id_article}>

SPIP se débrouille bien avec les espaces pour les variables qu'il connait (fond, id_article et lang) mais un espace avec 'cur' il ne digère pas.

Que tu donnait le débugueur pour tes boucles ?

cur = 0 dans le débuggeur dans les deux cas ... pourtant visiblement cela marche dans un cas, mais pas dans l'autre.

Il semble que Olivier G et Jacques P connaissent ce problème :
http://thread.gmane.org/gmane.comp.web.spip.user/103075

Paolo

#3 Mis à jour par esj - il y a plus de 9 ans

Les arguments de INCLURE ne sont pas des critères, vous ne parlez pas de la même chose. Les espaces dans les arguments de INCLURE ne sont effectivement pas pris en compte pour des raisons techniques parfaitement INjustifiées. Ca fait partie des raisons pour revoir entièrement la syntaxe des squelettes.

Formats disponibles : Atom PDF