Le 24/06/2011 13:05, Eric a écrit :
Yop,
Le 24 juin 2011 14:53, Bruno Bergot <brunobergot@gmail.com> a écrit :
Salut,
Pourquoi spipclear ne devrait pas embarquer de noisette nuage ?
Oui bon ça va hein
!
Tu vas pas nous en faire un Cloud aux marrons…
C’est exact que SC Z peut très bien embarquer son nuage mais si il est générique il serait mieux dans nuage.
En fait il propose sa propre noisette car :
-* il n’y en a pas de disponible dans le plugin nuage
Ca c’est bien dommage justement !
-* aveline ne semble pas en proposer non plus
Hum je sais plus… Donc on est d’accord déjà qu’il manque des noisettes dans Nuage.
Et même si un de ces plugins proposait une noisette nuage, spipclear « nécessite » une noisette avec un code qui lui est propre (pour coller aux thème dotclear) :
http://zone.spip.org/trac/spip-zone/browser/squelettes/spipclear_z/noisettes/nuage.html
Oui possible bien que dans Boussole j’ai passé les paramètre de classe dans les noisettes.
En jetant un coup d’oeil à la noisette, elle pourrait être rendue suffisamment générique pour être incluse dans le plugins nuages.
Il suffirait de rajouter trois paramètres (afficher un titre, niveau du titre et choix du titre, voir par exemple la noisette bloctexte).
Le seul élément nécessaire pour sa compatibilité avec les thèmes dotclear est semble-t-il la CSS tags, qui est assez généraique pour être inclue d’office ou qui peut être inclue avec le paramètre CSS commun à toutes les noisettes.
Dans le cas d’espèce, il semble bien qu’une noisette générique puisse être utilisée.
Le problème que rencontre Yffic vient du fait que, lors de son activation, spipclear charge une configuration de noizetier qui inclut la noisette nuage.
http://zone.spip.org/trac/spip-zone/browser/squelettes/spipclear_z/config_noizetier/spipclear.yaml
Pourtant, cette noisette indique bien, dans son fichier yaml de description, qu’elle nécessite le plugin nuage :
http://zone.spip.org/trac/spip-zone/browser/squelettes/spipclear_z/noisettes/nuage.yaml
Du coup, le bug serait peut être à corriger de ce côté ? Le noizetier doit il activer une noisette qui nécessite un plugin si celui-ci n’est pas actif ?
Pour le moment, le paramètre necessite est utilisé par le noizetier pour proposer ou non la noisette à l’installation. Et afficher un message d’erreur dans le noizetier si on l’a installée et qu’on a déscativé le plugin ensuite.
Rajouter un test à l’inclusion de chaque noisette est possible, mais j’ai peur que cela induise une perte de performance (puisqu’il faudra faire la vérification pour chaque noisette à chaque calcul de page). Normalement, une telle noisette ne devrait pas être installée si le plugin n’est pas là.
Concernant le fait que la noisette soit inclue dans la config proposée par spip clear alors que nuages n’est pas nécessité par spip-clear me semble problématique.
Soit Spip Clear nécessite le plugin nuages, soit SPIP-Clear devrait fournir plusieurs configurations différentes, avec ou sans nuages. A l’utilisateur de spécifier la configuration qui lui correspond. Voir par exemple les différentes configurations de noisettes proposées par Aveline.
Au passage, j’en profite pour rappeler que le noizetier se base maintenant uniquement sur l’importeur/exporteur de configurations pour importer/exporter des configurations de noisettes. Cela permet d’éviter de maintenir deux systèmes en parallèle et deux formats d’export. De plus, l’importeur/exporteur de config permet d’inclure des config pour d’autres plugins quand c’est pertinent (par exemple inclure la définition d’un menu qui est ensuite appelée par une noisette).
D’ailleurs, les fichiers YAML pour l’importeur/exporteur de configurations acceptent aussi un paramètre - necessite.
Sinon, en attendant mieux, je peux ajouter un simple test [#PLUGIN{nuage}|oui) … ] dans la noisette nuage de spipclear.
Oui oui je suis d’accord avec ton analyse, on peut corriger simplement le problème ainsi dans un premier temps.
++
Eric
Un tel test serait inutile si la noisette était présente directement dans Nuages.
Je rejoins Eric sur le fait qu’une noisette, quand elle est suffisamment générique et qu’elle dépend uniquement du plugin concerné, devrait être inclue tant que faire se peut dans le plugin concerné. Bien sûr cela ne concerne pas des noisettes ayant de multiple dépendances, ou quand une fonctionnalité d’un plugin est intégrée dans une noisette plus complexe intégrant les fonctionnalités de plusieurs plugins.
Amicalement
Joseph
PS : devrait-on envisager une discussion Z, noiZetier et noisettes aux grottes vendredi soir ou samedi matin ?