Le 13/10/2014 23:01, Stéphane Mourey a écrit :
Le 13/10/2014 22:49, Jean-Marc Lasgouttes a écrit :
Je vois plein de changements d'espaces.
Mon éditeur de code est configuré pour supprimer les espaces
surnuméraires... faudra peut-être que je change ça.
J'ai fait la même chose dans master, est-ce que tu pourrais rebaser
ton patch sur le nouveau master? Cela fera un patch plus clair.
Le voilà donc.

Bonne nuit.

Bonjour,

J'ai appliqué le patch et cela marche:

fantomas: src/client/lyxclient -c LYXCMD:server-get-statistics
lyxclient: Connected to /tmp/lyx_tmpdir.CBZRWVx18000/lyxsocket
INFO:server-get-statistics:3518 17028 20401

Le binaire lyxclient devrait être amélioré pour être plus utilisable, mais cela marche, sans aucune configuration de mon coté.

Bon en ce qui concerne le patch, quelques remarques futiles:


> Subject: [PATCH] Add LFUN_SERVER_GET_STATISTICS command, which make possible
> to get the LyX statistics on .lyxpipe.out

Mets commit en deux parties
1/ une explication d'une ligne: "Add LFUN_SERVER_GET_STATISTICS command"
2/ Après une ligne vide, l'explication.

Il ne s'agit pas ici d'obtenir de l'info dans .lyxpipe.out, mais par le serveur LyX. Selon la configuration ou la plateforme, cela peut passer par une pipe ou un socket (chez moi par défaut c'est un socket).

Je vois que la documentation n'est pas terrible à ce sujet, mais bon...

Bref, une bonne explication serait "This function can be used with the LyX server to obtain the word, characters or characters+spaces count in the current document or selection".


+  * \li Syntax: server-get-statistics <words|chars|chars-space>

Comme l'argument est optionnel, il faut le metter entre crochets et majuscules:
  * \li Syntax: server-get-statistics [<TYPE>]
  * Params: <TYPE>: words|chars|chars-space
     words: count words
etc. etc.

Reagarde d'autres exemples. Dans la description, dire aussi que cela peut compter la selection courante.


+                       const string arg0 = cmd.getArg(0);

Nous préférons la forme "string const arg0".


+ cur.message(convert<docstring>(cur.buffer()->wordCount()) + " " + convert<docstring>(cur.buffer()->charCount(false)) + " " + convert<docstring>(cur.buffer()->charCount(true)));


Nous essayons d'avoir des ligne de moins de 80 caractères. Cette devrait être coupée en morceaux.


Moyennant ces petits changements, je pense que ce patch est prêt.

JMarc

Répondre à