Le 13/10/2014 17:30, Jean-Marc Lasgouttes a écrit :
On va voir ça :) (pour commencer, n'oublie pas de garder les messages sur la liste, c'est mieux).
Désolé, j'essaie... mauvais clic...
Style: chaque niveau d'indentation doit être une tabulation.
Corrigé.
Style: quand on définit une variable qui ne sera pas modifiée ensuite, on ajoute "const" :
              string const arg0 = cmd.getArg(0);
Ok. Corrigé.
Si tu ne veux pas avoir plein de cur.message, tu peux définir une variable
  string result;
et faire un
  cur.message(result);
à la fin.
Ils ne me dérangent pas plus que ça.
Oui, je ne sais pas trop comment les pipes (tuyaux) marchent. Ce que je conseille est d'utiliser lyxclient (src/client/lyxclient), qui fait les trucs compliqués à ta place.
J'ai finit par écrire un petit bash (pour les stats de mots uniquement pour le moment) :

   cat ~/.lyx/lyxpipe.out > ~/.lyx/lyxpipe2.out &
   echo "LYXCMD:bro:server-get-statistics:words" >~/.lyx/lyxpipe.in
   sleep 0.02
   cut -d":" -f4 ~/.lyx/lyxpipe2.out

Notez que j'ai modifié ma config pour utiliser ~/.lyx/lyxpipe.out à la place de ~/.lyxpipe.out, juste histoire de voir les fichiers à un moment donné de mes recherches.
Le "sleep" est un peu gênant, mais ça ne marche pas sans lui.
Ensuite, dans le préambule de mon document, j'ai définit une nouvelle commande Latex :

   \newcommand\statwords{

   \immediate\write18{/home/steph/bin/lyxstatwords
    >/home/steph/.lyx/statw.txt}

   \input{/home/steph/.lyx/statw.txt}

   }

Et là tout marche comme je veux. Il y a sans doute quelques améliorations cosmétiques à réaliser, comme de faire un bash qui accepte un argument pour afficher telle ou telle stat et le rendre plus abstrait (je ne vois pas comment récupérer la config de LyX pour connaître les fichiers pipe par exemple).

Qu'en pensez-vous ? Des améliorations à apporter ? Cela vaut-il la peine
de soumettre la contribution ? Si oui, comment s'y prendre ?

Ça a l'air très bien, et oui, ce serait une addition intéressante. Pour faire cela il faut faire un patch. Est-ce que tu travailles depuis git ou depuis le tar.gz de LyX ? Selon les cas, la méthode varie.
J'ai travaillé depuis Git.

J'imagine que tu as travaillé depuis la version stable 2.1.x ? Il faudra qu'on commence par appliquer à la version développement 2.2, la version stable vient après. Normalement, il n'y aura pas besoin de trop adapter le code.
J'ai travaillé sur la version 2.2.0dev(pas encore publiée).

--
Blog: Impossible Exil <http://impossible-exil.info>

Répondre à