[spip-dev] Arbo & Mots Clés suite

Hello,

la contrib de gestion d'arborescence pour les mots-clés est disponible

http://lab.spip.net/spikini/MotsCles
http://www.linagora.org/article90.html

/lex

Merci mais ....

1) http://www.linagora.org/article90.html ne laisse pas telecharger la pièce
jointe => retour à l'accueil
2) si c'est un patch, je ne sais pas quoi en faire ...
C'est possible d'avoir juste les fichiers modifiés (ou une "distrib"
modifiée, je ferai les diff de toutes facons).
Merci, vivement que je teste ca !

@++

Très belle contribution, à voir comme ça. Je testerais ça tantôt.

J'en profite pour reparler de mon objectif : "limiter la portée de groupes
de mots clés" à un secteur, une rubrique, ou une sous rubrique ... ou ses
descendants.
J'en avais déjà parlé sur les listes spip, je n'étais pas le seul intéressé
et prêt à mettre la main à la patte. Bon, j'ai d'autres choses à faire avant
ça, mais je préfère en reparler ici, avant de me lancer dans le
développement.
J'avais commencer à le faire au sein d'un spip de test 1.7.2 puis abandonner
pour cause de passage à la 1.8, et puis à présent, je me dis que tant qu'à
faire quelquechose, autant le rendre compatible avec cette contribution des
mots clés en arbre.

Voilà, si c'était dans vos cartons, n'hésitez pas ;-), si l'envie vous en
prend, n'hésitez pas non plus, sinon, je m'y collerais un jour, qu'on se le
dise.

Merci encore pour votre contribution.

Super idée, c'est dans les cartons :wink:

* Stephane LAURENT <sl@adequates.com> [041012 12:36]:

Merci mais ....

1) http://www.linagora.org/article90.html ne laisse pas telecharger la pièce
jointe => retour à l'accueil

merci, j'ai corrigé cela.

2) si c'est un patch, je ne sais pas quoi en faire ...

un README t'expliques facilement comment faire ton diff

tar xzvf spip.tar.gz
gunzip SPIP-patch.arbo.linagora.gz
cd spip
patch -p1 < ../SPIP-patch.arbo.linagora

Si tu n'as pas diff, c'est peut etre que tu es sous windows?
aussi installe Cygwin
http://www.cygwin.com/setup.exe

sous MacOS ?

C'est possible d'avoir juste les fichiers modifiés (ou une "distrib"
modifiée, je ferai les diff de toutes facons).
Merci, vivement que je teste ca !

ok je vais m'occuper de cela également :wink:

/lex

Alexandre Hélias [LNG] a écrit :

tar xzvf spip.tar.gz
gunzip SPIP-patch.arbo.linagora.gz

Salut,

Il semble qu'il y ait un problème avec le fichier: je reçois comme réponse "not in gzip format" (avec la commande gzip sous debian).

François

Alexandre Hélias [LNG] a écrit :

la contrib de gestion d'arborescence pour les mots-clés est disponible

Est-ce que l'idée de most-clés en "rhyzomes" (en gros: des liens entres mots-clés), évoquée à plusieurs reprises et vous paraissiez intérressés de mettre en place (mais qui ne semble pas faire partie de ce patch) est encore en vue?

Si non, quelles en sont les raisons?

Merci

François

* François Schreuer <schreuer@agl.ucl.ac.be> [041012 23:23]:

Alexandre Hélias [LNG] a écrit :

>tar xzvf spip.tar.gz
>gunzip SPIP-patch.arbo.linagora.gz

Salut,

Il semble qu'il y ait un problème avec le fichier: je reçois comme
réponse "not in gzip format" (avec la commande gzip sous debian).

ok, c corrigé.
http://www.linagora.org/IMG/gz/spip-contrib-linagora-11_10_2004-2.tar.gz

ma gentoo a un algo buggy donc.. je te l'ai refait sur une debee

++a.lex

François Schreuer a écrit :

  > Est-ce que l'idée de most-clés en "rhyzomes" (en gros: des liens entres

mots-clés), évoquée à plusieurs reprises et vous paraissiez intérressés de mettre en place (mais qui ne semble pas faire partie de ce patch) est encore en vue?

Dans un premier temps non, car cela va au delà de notre besoin fonctionnel. Pour autant, Alexandre a laissé en place, si je ne m'abuse, la structure qui permettra de mettre en place les rhizomes dans un second temps.

Si non, quelles en sont les raisons?

De temps principalement, nous "obligeant" d'aller directement à l'essentiel (ie à notre besoin premier).

Nicolas

* François Schreuer <schreuer@agl.ucl.ac.be> [041012 23:23]:

Alexandre Hélias [LNG] a écrit :

>tar xzvf spip.tar.gz
>gunzip SPIP-patch.arbo.linagora.gz

Salut,

Il semble qu'il y ait un problème avec le fichier: je reçois comme
réponse "not in gzip format" (avec la commande gzip sous debian).

Salut,

étrange j'ai posté ma réponse hier, j'ai bien recu une confirmation de
réception par le serveur rezo.net de la bonne transmission depuis mon
stmp, bref:

Alexandre Hélias [LNG] a écrit :

la contrib de gestion d'arborescence pour les mots-clés est disponible

http://lab.spip.net/spikini/MotsCles
http://www.linagora.org/article90.html

Salut,

Je viens de tester le patch, uniquement du côté interface, pas encore dans les squelettes. C'est vraiment pas mal du tout. Quelques remarques cependant:

- lorsqu'un mot-clé est dans la racine de l'arborescence mais qu'il ne
   contient lui-même aucun mot-clé, son affichage n'est pas aligné sur
   les autres mots-clés de même niveau, ce qui est un peu déconcertant:
  -> http://francois.schreuer.org/IMG/png/motcles1.png

   De manière générale, l'alignement des mots-clés de même niveau n'est
   pas parfait, alors que c'est quand même assez important pour bien
   visualiser l'arborescence.

- Je dois avouer que je n'ai pas compris tout de suite le fonctionnement
   du menu intitulé "Vue de gestion dynamique de l'arbre". Si j'ai bien
   compris (en tout cas, ça fonctionne en l'utilisant comme ça), il faut
   commencer par faire passer l'élément à transférer du menu de gauche
   vers le memu de droite en le sélectionnant puis en appuyant sur le
   bouton "retirer". Alors seulement, on peut le placer à un endroit de
   l'arborescence en sélectionnant dans le menu gauche l'emplacement
   cible et dans le menu droit le mot-clé à déplacer, avant d'appuyer sur
   le bouton "transférer". Ensuite, il faut sauvergarder le tout en
   appuyant sur "valider". Bon, ça fonctionne, mais c'est loin d'être
   compréhensible avec la seule phrase "Vous pouvez placer un mot-clé
   dans une arborescence en le sélectionnant ci-dessous et en cliquant
   surTransférer."

- Le fait de ne plus afficher tous les groupes de mots-clés sur la page
   mots_tous.php3 et d'utiliser le petit menu déroulant est je trouve une
   très bonne idée (merci pour nos serveurs MySQL). Mais je trouve que la
   présentation pourrait être mieux faites, par exemple une boîte
   latérale dans la colonne gauche reprenant la liste des groupes (avec
   éventuellement leurs caractéristiques principales, le nombre de
   mots-clés qu'ils contiennent,... Bien sûr, ceci est une question
   complètement indépendant des mots-clés en arborescence.

- Il serait assez pratique de pouvoir visualiser l'arborescence d'un
   groupe de mots-clés dans le menu permettant de lier des objets aux
   mots-clés (par exemple dans la boîte "mots-clés" de la page
   articles.php3), exactement de la manière dont sont présentées les
   rubriques dans le champ select de la page articles_edit.php3.
   J'imagine que la raison pour laquelle cette fonctionnalité ne se
   trouve pas dans votre patch est qu'elle multiplie outrageusement le
   nombre de requêtes sur la base de données. Dans ce cas, n'est-il pas
   envisageable d'utiliser un mini-cache pour stocker les arborescences
   des groupes de mots-clés? (je sais pas, hein, je pose juste une
   question).

- Sur la page mots_edit.php3, vous proposez une telle arborescence, mais
   je trouve qu'elle est beaucoup trop peu indentée pour être lisible.
  -> http://francois.schreuer.org/IMG/png/motcles2.png

   Peut-être, pour améliorer la lisibilité sans perdre trop d'espace
   horizontal, serait-il possible de mettre en gras les mots-clés se
   trouvant à la racine du groupe.

- Toujours sur cette page mots_edit.php3, toujours dans le menu intitulé
   "Dans l'arborescence", il n'est pas possible de sélectionner la racine
   du groupe (pour faire passer dans la racine un mot se trouvant déjà
   subordonné à un autre).

- Ah oui, sur votre page http://www.linagora.org/article90.html, vous
   parlez d'"Agora". Ne serait-il pas préférable de parler de
   "Spip-Agora"?

Bon voilà, j'en aurai cerainement d'autres, mais ça fait déjà quelques retours.

Un grand merci pour tout ce travail en tout cas,

François

* François Schreuer <schreuer@agl.ucl.ac.be> [041013 20:23]:

Alexandre Hélias [LNG] a écrit :

>la contrib de gestion d'arborescence pour les mots-clés est disponible
>
>http://lab.spip.net/spikini/MotsCles
>http://www.linagora.org/article90.html

Salut,

Je viens de tester le patch, uniquement du côté interface, pas encore
dans les squelettes. C'est vraiment pas mal du tout. Quelques remarques
cependant:

- lorsqu'un mot-clé est dans la racine de l'arborescence mais qu'il ne
  contient lui-même aucun mot-clé, son affichage n'est pas aligné sur
  les autres mots-clés de même niveau, ce qui est un peu déconcertant:
  -> http://francois.schreuer.org/IMG/png/motcles1.png

  De manière générale, l'alignement des mots-clés de même niveau n'est
  pas parfait, alors que c'est quand même assez important pour bien
  visualiser l'arborescence.

C'est une partie sur laquelle j'ai eu du soucis d'intégration HTML. La
méthode, ici le switch entre ancienne et nouvelle table travaille sur
les mêmes données préparées avant affichage (comme en version linéaire).
Cela afin de ne pas réécrire du code en double et ne pas aussi casser
quoique ce soit à la méthode d'affichage original. Il est possible de
faire finalement une distinctier plus forte dans son utilisation par 2
moteurs de rendu différents plutot qu'un simple switch d'appel de
fonction entre l'ancien appel affiche_table() & le nouveau
gen_wharf_tree(). J'ai une autre fonction plus directe encore dans la
récursivité mais que je me suis obligé à mettre de coté pour ne pas
rester sécher sur cette representation. En revanche sa méthode pour
produire des niveaux et sa complexité etant bien plus intérressants, je
peux revenir dessus pourquoi pas.

- Je dois avouer que je n'ai pas compris tout de suite le fonctionnement
  du menu intitulé "Vue de gestion dynamique de l'arbre". Si j'ai bien
  compris (en tout cas, ça fonctionne en l'utilisant comme ça), il faut
  commencer par faire passer l'élément à transférer du menu de gauche
  vers le memu de droite en le sélectionnant puis en appuyant sur le
  bouton "retirer". Alors seulement, on peut le placer à un endroit de
  l'arborescence en sélectionnant dans le menu gauche l'emplacement
  cible et dans le menu droit le mot-clé à déplacer, avant d'appuyer sur
  le bouton "transférer". Ensuite, il faut sauvergarder le tout en
  appuyant sur "valider". Bon, ça fonctionne, mais c'est loin d'être
  compréhensible avec la seule phrase "Vous pouvez placer un mot-clé
  dans une arborescence en le sélectionnant ci-dessous et en cliquant
  surTransférer."

Il est vrai qu'il n'y a aucune documentation sur le serveur d'aide à
propos des mots clés.
Aussi sur l'idée de modularité injectée dans ce concept utilisé d'une
documentation centralisée pourquoi pas (?), il serait intéressant d'avoir
des concepts de 'packages. c'est à dire le plug in présent, le méta sur
'oui'; Qui permet de télécharger aussi la partie doc normalisée sur le
serveur, ou de pouvoir commiter une doc, finalement. Si les métas sont
en sessions, certains du moins et seulement ceux nécessaires au concept
de modularité forcement (mod_*) , Ils peuvent être détectés facilement
sans transport client-server des données d'exécution de savoir qui est
allumé ou non, lors des générations de page du serveur au client.
Dans Spip quel est l'activité sur $_SESSION ? j'ai meme pas encore
regardé à vrai dire. j'aime bien l'utiliser pour sa staticité. Question
de gouts peut être.

Concernant l'utilisation de l'interface, on commence par sélectionner la
racine (je vais d'ailleurs poser un test pour que si un arbre est vide
lors de la prise en main d'un groupe de mots-clés, sa racine soit
sélectionnée par défaut et éviter un click utilisateur, quand tu dis
'pas compris tout de suite' c'est à 'ou commencer' que j'entrevoie.

L'élement de gauche choisi, on clique à droite pour sélectionner un mot
pas encore affecté dans la pile, le contenu du groupe de mots. On peut
en sélectionner plusieurs, pour les ajoutes en rafale sous un mot pére à gauche
par exemple.
Lorsque tu clickes sur un enfant sans descendance, et clicke sur retirer,
il est simplement enlevé et remis dans la pile
En revanche clicker sur un parent et ensuite sur retirer 'tue' le parent
et aussi toute sa descendance, et tous repartent dans la pile de mots
non affectés à l'arbre.
Une fois l'arbre souhaité composé, il faut clicker sur valider oui :slight_smile:
j'ai essayé par l'icone choisie, par la couleur rouge, de bien representer,
déja le double transfert, et ensuite la dominante, c'est à dire on
compose l'arbre.

- Le fait de ne plus afficher tous les groupes de mots-clés sur la page
  mots_tous.php3 et d'utiliser le petit menu déroulant est je trouve une
  très bonne idée (merci pour nos serveurs MySQL). Mais je trouve que la
  présentation pourrait être mieux faites, par exemple une boîte
  latérale dans la colonne gauche reprenant la liste des groupes (avec
  éventuellement leurs caractéristiques principales, le nombre de
  mots-clés qu'ils contiennent,... Bien sûr, ceci est une question

oui, ca serait parfait représenté ainsi. et assez facilement réalisable.
je vais en tout cas le faire pour le select, je l'ai mis la simplement
car je souhait conserver l'espace de titrage du nom de groupe et eviter
une redondance.

  complètement indépendant des mots-clés en arborescence.

- Il serait assez pratique de pouvoir visualiser l'arborescence d'un
  groupe de mots-clés dans le menu permettant de lier des objets aux
  mots-clés (par exemple dans la boîte "mots-clés" de la page
  articles.php3), exactement de la manière dont sont présentées les
  rubriques dans le champ select de la page articles_edit.php3.
  J'imagine que la raison pour laquelle cette fonctionnalité ne se
  trouve pas dans votre patch est qu'elle multiplie outrageusement le
  nombre de requêtes sur la base de données. Dans ce cas, n'est-il pas
  envisageable d'utiliser un mini-cache pour stocker les arborescences
  des groupes de mots-clés? (je sais pas, hein, je pose juste une
  question).

il y a une globalement peu de requette sur la base, si le choix d'une
base en recursif avait été pris cela aurait pris un nombre de requette
peu négligeable c'est fondamental. une méthode est différente et
qualifiable de moyennement couteuse celle qui génère la représentation
qui se dépliee toujours face à l'autre algorithme énnoncé.

- Sur la page mots_edit.php3, vous proposez une telle arborescence, mais
  je trouve qu'elle est beaucoup trop peu indentée pour être lisible.
  -> http://francois.schreuer.org/IMG/png/motcles2.png

Je n'ai pas changé le pas d'indentation car souhaite passer aussi
l'affichage de l'unicode qui résoud ce probleme. Ok pour réaliser ta
demande rapidement néanmoins.

  Peut-être, pour améliorer la lisibilité sans perdre trop d'espace
  horizontal, serait-il possible de mettre en gras les mots-clés se
  trouvant à la racine du groupe.

Via une css l'intégration de ta demande François est rapide. Ca
permettra plus de lisibilité ;).

- Toujours sur cette page mots_edit.php3, toujours dans le menu intitulé
  "Dans l'arborescence", il n'est pas possible de sélectionner la racine
  du groupe (pour faire passer dans la racine un mot se trouvant déjà
  subordonné à un autre).

- Ah oui, sur votre page http://www.linagora.org/article90.html, vous
  parlez d'"Agora". Ne serait-il pas préférable de parler de
  "Spip-Agora"?

Clairement, je lance des corrections sur tout cela.

Bon voilà, j'en aurai cerainement d'autres, mais ça fait déjà quelques
retours.

Un grand merci pour tout ce travail en tout cas,

Ben merci pour tes remarques afin de permettre l'amélioration du dev produit,
c'est avec plaisir des retours aussi complets :wink: Un grand merci au grand
travail des développeurs de la communauté spip d'avoir pondu ce bel
outil.

++a.lex