Sujet sur Discussion utilisateur:Reptilien.19831209BE1

Hsarrazin (discussioncontributions)

Wouahhh !!! \o/

Même si j'ai de temps à autre des "Erreur Lua : too many expensive function calls" (comme sur Discussion Livre:La Boétie - Œuvres complètes Bonnefon 1892.djvu), c'est une amélioration gigantesque par rapport à une bête liste de {{Page Discussion}}, faite manuellement avec des oublis, ou en laissant des blancs quand la page n'existe pas...

Bravo, et bon courage pour les améliorations !

Reptilien.19831209BE1 (discussioncontributions)

Ah, c'est ennuyeux ! J'obtiens effectivement la même erreur avec les informations suivantes : Attention : cette page contient de trop nombreux appels à des fonctions coûteuses de l’analyseur syntaxique. Il devrait y avoir moins de 500 appels, alors qu’il y en a maintenant 501.

Tout de suite je ne vois pas comment remédier à cela, peut-être faudrait-il, avec l'accord de la communauté, faire une demande en haut lieu pour doubler cette limite. En effet, il n'est pas rare d'avoir des livres dépassant les 500 pages, c'est déjà plus rare avec 1000 pages (ce serait bien d'avoir un chiffre). Mais ça ne résout pas le fond du problème... j'y réfléchis.

Hsarrazin (discussioncontributions)

c'est déjà beaucoup plus maniable ! et il est facile de l'ajouter en pdd d'un livre, systématiquement, au lieu de penser à aller mettre chacune des pages corrigées ;)

Reptilien.19831209BE1 (discussioncontributions)

Bon, j'ai tenté quelque chose qui ne me plaît pas vraiment mais qui semble fonctionner. Tiens-moi au courant si tu rencontres un problème :-)

Hsarrazin (discussioncontributions)

OK, je vais voir ça... un gros merci !

si j'ai bien compris ta modif, ça ne devrait bloquer QUE si on dépassé 500 corrections, c'est ça ?

je mentionne @Assassas77 qui semble intéressé.e par le sujet

Assassas77 (discussioncontributions)

tout à fait intéressé, on en a discuté pendant un atelier Wikisource sur Paris : la visibilité des pages de discussion des « Discussion Page: » gagnerait à être automatisée...

Dans l'idéal, faudrait même que ce soit une fonctionnalité de Mediawiki (il me reste un long chemin avant de devenir développeur d'applications pour Mediawiki ;) )

Hsarrazin (discussioncontributions)

Oui, effectivement ! En attendant, pouvoir le coller d'office en pdd des nouveaux index, juste sous les {{ChoixEd}}, c'est déjà pas mal :)

Assassas77 (discussioncontributions)

On pourrait avoir un bot qui ferait ça, j'voulais justement m'initier au dressage de bot ;)

Reptilien.19831209BE1 (discussioncontributions)

Attention que tous les paramètres du modèle {{Page Discussion}} ne sont pas encore implémentés. Je n'ai malheureusement pas beaucoup de temps en ce moment pour y regarder :-s

Hsarrazin (discussioncontributions)

Oui, j'ai vu. Je ne le colle que là où il n'y a rien, ou là où [Page Discussion] est utilisé sans paramètres. Les autres attendront.

Assassas77 (discussioncontributions)

je n'avais pas encore regardé le modèle, c'est un module en LUA, j'vais regarder ça !

Reptilien.19831209BE1 (discussioncontributions)

Je pense qu'on peut même aller beaucoup plus loin, sans toutefois pouvoir donner un chiffre précis. Je vais tenter de répondre à cette question.

Hsarrazin (discussioncontributions)
Hsarrazin (discussioncontributions)

Concernant les fonctions non encore implémentées de Modèle:Page Discussion, je te signale que j'ai remplacé toutes les occurrences en pdd de Livres, sauf celles qui n'étaient pas en mode "basique" (juste le numéro de page).

@Vieux têtard est un des très rares à utiliser la fonction de recalage de la numérotation -> il me semble que ce serait la fonction à prioriser, car presque tous les livres qui reste sur cette liste ont été traités par lui (il n'y en a pas plus de 50).

Je crois que Discussion Livre:Le Coran (Traduction de Savary, vol. 2), 1821.pdf est le seul Livre à utiliser d'autres paramètres.

Un très grand nombre de Livre n'ont aucune collecte des corrections. ça pourrait sans doute être intéressant de dresser un bot à aller coller en pdd une section adéquate, car je suis sûre qu'il y a plus de corrections que ça…

Au passage, l'insertion automatique (par le modèle) d'une catégorie de maintenance cachée, indiquant qu'il y a des corrections, du type Catégorie:Livres avec des corrections serait sans doute intéressante.

PS : le modèle me semble suffisamment mûr pour l'annonce de son utilité sur le Scriptorium

Reptilien.19831209BE1 (discussioncontributions)

Et bien dis donc, beaucoup de bonnes idées. Je prends note de tout cela et m'y attelle dès que possible

Reptilien.19831209BE1 (discussioncontributions)

J'ai commencé à réfléchir à la fonctionnalité la plus importante, à savoir l'ajustement du décalage lorsqu'il n'est pas constant : je pense qu'on pourrait faire comme avec <pagelist/>, réserver les paramètres numériques pour la représentation des numéros de page. Ce qui veut dire qu'on aurait :

  • {{Liste des correction|(d|decalage|décalage)=6}} pour un décalage constant de 6 sur tout le livre
  • {{Liste des correction|6=1|59=50}} ce qui veut dire que la page 6 du fichier correspond à la page 1 sur le FS et la page 59 du fichier à la page 50 sur le FS (ça aurait été 56 avec un décalage constant mais on peut imaginer qu'il y ait 3 pages blanches)

Vieux têtard : est-ce que ça te semble aller dans le bon sens, y a-t-il quelque chose à laquelle je ne pense pas ?

Hsarrazin (discussioncontributions)

n'y a-t-il pas moyen, en lua, de récupérer directement les infos depuis <pagelist (comme le fait le header de l'espace principal) ?

ça éviterait d'avoir à tout changer si un changement de numérotation du livre intervient, par exemple pour recaler après une illustration ?

Reptilien.19831209BE1 (discussioncontributions)

mmmh, j'aime bien cette idée ! je pense que oui ! faut que je réfléchisse davantage, par exemple comment réagir s'il y a plusieurs <pagelist/> (il me semble avoir déjà vu ça quelque part)

Vieux têtard (discussioncontributions)

En effet, j'utilise régulièrement plusieurs <pagelist/> dans le même index, ça me permet d'intercaler des repères de chapitres ou des commentaires dans la liste (voir celui en cours), ça ne me gène pas de devoir indiquer les décalages à la main dans ton modèle, comme tu le propose ci-dessus et de garder le "d=" quand le décalage est constant, de toute façon, je gère avec un tableau Calc.

Maintenant, on pourrait aussi abandonner ce problème en tenant compte seulement du N° de Djvu, sans essayer de le convertir en N° de page.

Hsarrazin (discussioncontributions)

sans doute des pistes dans Module:Header_template, fonction 'pagination' (je n'y comprends rien, mais toi sans doute plus), et sinon, @Tpt pourra peut-être t'aider

bon courage et merci !

Reptilien.19831209BE1 (discussioncontributions)

Bien, après quelques petits tests, je confirme qu'il est possible de récupérer les différents <pagelist/>. Dois-je considérer que ce sera le comportement par défaut, ou faut-il le spécifier dans le modèle, par exemple d=auto ou un truc du genre ?

Vieux têtard (discussioncontributions)

Il me semble que, comme il y a toujours au moins un pagelist, on peut considérer que ce sera le comportement par défaut. Le paramètre "d=" devient alors superflu.

Reptilien.19831209BE1 (discussioncontributions)

Bon, pour un premier test c'est pas trop mal, il faut que je réfléchisse pour intégrer la numérotation romaine, car on se retrouve avec 17 (qui correspond à la page xvii sur le FS) suivi de 2, ce qui n'est pas très élégant. Et, effectivement, le paramètre d devient inutile.

Reptilien.19831209BE1 (discussioncontributions)

Fait pour les chiffres romains, je continue de peaufiner notamment pour les pages non numérotées mais libellées (ex: 5=avertissement).

Hsarrazin (discussioncontributions)

super ! ça marche fort bien sur le test... \o/ mais pas ici. Dois-je ajouter un paramètre, ou bien il s'agit d'une version de test non encore opérationnelle ?

Reptilien.19831209BE1 (discussioncontributions)

Oui, il s'agit d'une version de test que l'on peut utiliser avec sandbox=oui.

Acélan (discussioncontributions)

Bonjour Reptilien,

Je viens de tester ton nouveau modèle sur cette page de discussion, et il n'affiche rien. Or, je sais que j'ai utilisé le modèle {{CorrDiscussion}}, au moins sur cette page, et peut-être ailleurs. Sais-tu ce qui peut clocher ?

Reptilien.19831209BE1 (discussioncontributions)

Oui, c'est normal, comme indiqué dans la documentation de {{CorrDiscussion}} « du point de vue technique, il est nécessaire de le substituer pour ajouter des marques de section autour du modèle » ce qui veut dire que la page de discussion doit avoir une section (« correction » par défaut) destinée à être transclue. Regarde la modif apportée par Vieux têtard.

Vieux têtard (discussioncontributions)

Erreur courante : il faut mettre subst:CorrDiscussion.

Reptilien.19831209BE1 (discussioncontributions)

Tiens, Acélan tu m'as donné l'idée de permettre au module de détecter ce genre d'erreur. Je vais réfléchir à ça également.

Acélan (discussioncontributions)

merci à tous les deux. Mais franchement, ça devient très lourd à utiliser...

Hsarrazin (discussioncontributions)

tout à fait d'accord, pas le nouveau modèle, qui ultra-simplifie la compilation, mais le système {{Corr}} + {{CorrBandeau}} + subst:{{CorrDiscussion}}… ces modèles aussi nécessiteraient un peu de facilitation d'emploi…

Reptilien.19831209BE1 (discussioncontributions)

@Acélan Je ne comprends pas, ça a toujours été comme ça. Il a toujours fallu procéder de cette manière, je parle des sections. À moins que tu fasses référence à autre chose. :-s

Reptilien.19831209BE1 (discussioncontributions)

Je pense que l'on pourrait se passer de {{CorrBandeau}}, en détectant automatiquement sur la page de discussion s'il y a des corrections. Je ne sais pas encore à quel niveau il faudrait apporter cette modification, je miserais sur le modèle qui affiche le niveau de correction de la page. Faut que je cherche.

Reptilien.19831209BE1 (discussioncontributions)

Concernant le modèle {{CorrBandeau}}, on peut faire quelque chose à partir des pages MediaWiki:Proofreadpage quality3 message etc. Il suffirait de détecter si le modèle {{CorrDiscussion}} est utilisé sur la page de discussion. Petit problème: le message automatique serait à l'intérieur du bloc coloré, à moins que je force volontairement la fermeture de la div en procédant comme suit </div><div>Le message indiquant qu'il y a des corrections sur la PDD. C'est pas très propre mais ça pourrait fonctionner. Est-ce gênant si le message est à l'intérieur du bloc coloré ?

Acélan (discussioncontributions)

Reptilien : ce n'est pas ton modèle qui est en cause, c'est, comme l'indique Hélène, l'ensemble + la syntaxe correcte de CorrDiscussion (que j'ai toujours utilisé de manière basique, sans sections, sans jamais voir que c'était incorrect). Et jusqu'à présent, je n'ai jamais beaucoup utilisé ce modèle, justifiant les corrections uniquement quand c'était nécessaire, et pas toujours avec le modèle. Si on veut bien faire les choses, ça devient donc extrêmement lourd.

Hsarrazin (discussioncontributions)

j'en suis à peu près au même point, n'ayant percuté qu'il fallait substituer que depuis que le modèle de Reptilien est opérationnel

un bot pour passer sur tous ces modèles et les substituer s'il n'y a pas de section ?

Hsarrazin (discussioncontributions)

à titre personnel, ça me gênerait moins que dans l'entête , mais tout le monde ne sera peut-être pas d'accord…

Vieux têtard (discussioncontributions)

Je fais un rêve (sans me prendre pour M.L.K.) : Sur une erreur, j'utilise le modèle Corr enrichi des paramètres de CorrDiscussion dans la page même. Le module "Liste des corrections" va explorer les pages (et non leur PdD), repérer les modèles "Corr" (si c'est faisable) et lister les corrections. Y-a-t'il une raison majeure de passer par la PdD de la page ? À part ça, ton module, c'est génial !

Hsarrazin (discussioncontributions)

peut-être : quand les commentaires en pdd sont longs (et j'en ai vu certains, avec intégration d'images de Gallica), ça rendrait la page totalement illisible — et donc impossible à relire — pour un autre correcteur… :(

ceci dit, sur des corrections basiques (l'immense majorité l'est) ça serait bien (et ça résoudrait le problème de ces milliers de {{corr}} sans explications.

et en fait, ça serait assez génial aussi qu'on puisse faire la même chose avec {{sic2}} - j'en ai substitué un hier à un {{corr}} inapproprié -> le lien sur wikt étant particulièrement utile et efficace.

Vieux têtard (discussioncontributions)

Pour ces corrections complexes, on pourrait (par exemple, dans le paramètre "expl") renvoyer à la PdD de la page pour le détail, l'essentiel étant de signaler le problème dans la liste.

Reptilien.19831209BE1 (discussioncontributions)

J'ai testé ici la proposition de Vieux têtard, à savoir récupérer la liste des corrections directement sur les pages, à partir des modèles {{corr}}. Il reste encore tu travail à réaliser mais je peux déjà dire que c'est envisageable (y compris pour le modèle sic2). Reste à se mettre d'accord sur la manière de procéder. Par exemple, comment indiquer dans le modèle corr qu'une explication détaillée est présente en page de discussion, tout est possible j'ai envie de dire. Une des solutions pourrait être qu'un troisième argument du modèle corr soit réservé aux petites explications, et si la valeur de ce troisième argument est spécifique, disons « PdD » : {{corr|x|y|PdD}} cela indiquerait au programme qu'il doit faire savoir au lecteur qu'il y a une explication en PdD. On peut aussi créer une redirection de modèle {{corr+|x|y}}... Je reste à l'écoute.

Hsarrazin (discussioncontributions)

\o/

la solution avec un 3e paramètre, qui, codé, indiquerait le renvoi en PdD me semble bien. ça permettrait une reprise progressive dans les pages où existe une pdd (vu que {{dpagelist}} permet de les repérer… Les gens qui utilisent tout simplement {{corr}} sans mentin en pdd pourraient continuer, sans s'embêter, et les autres pourraient se simplifier la vie

Je ne suis pas sûre de comprendre ce que tu veux dire par "redirection" de modèle… un autre modèle qui, utilisé, signifierait qu'il y a quelque chose en PdD ?…

Reptilien.19831209BE1 (discussioncontributions)

Par redirection de modèle, je veux tout simplement dire que la page Modèle:corr+ serait une redirection vers Modèle:corr. L'utilisation de {{corr+}} serait l'indication (dans le wikicode) permettant au programme de savoir qu'il s'agit d'une correction pour laquelle une explication est en PdD. {{corr+|x|y}} reviendrait à écrire {{corr|x|y|PdD}}.

Hsarrazin (discussioncontributions)

ahhh, ok ! je n'avais pas compris :)

en fait, rien n'empêche techniquement de faire les 2, c'est ça ?

Reptilien.19831209BE1 (discussioncontributions)

Voilà, tout est dit ! Peut-être faudrait-il lancer une discussion sur le Scriptorium pour connaître l'avis des autres contributeurs.

Hsarrazin (discussioncontributions)

oui, tout à fait !! le changement est suffisamment important pour que tout le monde puisse donner son avis.

Vieux têtard (discussioncontributions)

Pourrait-on envisager de ne rien changer à l'existant en testant la présence ou non d'une PdD pour une page contenant un ou plusieurs "Corr" : Si la PdD existe, on mettrait dans la liste "Voir PdD" après la correction, sinon rien.

Dans l'avenir, on pourrait enrichir le modèle "Corr" de deux paramètres facultatifs pris dans "CorrDiscussion" : "expl" et "t" pour typographie (les paramètres indiquant l'endroit de l'erreur devenant inutiles) et si l'explication d'une correction nécessitait des développements plus longs qu'une simple remarque, les mettre en PdD (en utilisant alors CorrDiscussion).

Reptilien.19831209BE1 (discussioncontributions)

Possible, ça l'est, mais deux problèmes (peut-être pas insolubles) se posent à moi :

  • tester à la fois la présence du modèle {{corr}} dans les pages, et la présence d'une explication en PdD, revient à faire, dans le code, une transclusion de toutes ces pages, à savoir 2048 pour Livre:Dictionnaire_de_Trévoux,_1771,_I.djvu ; je n'ai pas encore réussi à trouver le nombre maximum de transclusions autorisées, mais dans certains de mes tests (très gourmands) je l'ai parfois atteint
  • comment faire la relation entre la correction faite avec {{corr}} et celle expliquée en PdD : autrement dit, si j'ai deux corrections {{corr|a|b}} et {{corr|c|d}} comment indiquer au programme que c'est la deuxième et non la première qui est décrite en PdD, ou l'inverse

Je vais tenter d'apporter une réponse au premier point.

Vieux têtard (discussioncontributions)

Pour le premier problème, est-ce qu'un boot ne pourrait pas faire la reprise en marquant le modèle Corr (soit en Corr+, soit avec le paramètre PdD) s'il y a une PdD avec CorrDicussion, de façon à ne pas être obligé de transclure toutes les pages dans ton module ?

Pour le deuxième problème je ne vois pas comment faire, sinon faire confiance au correcteur pour faire le lien, d'autant plus qu'il m'est arrivé de ne mettre qu'un CorrDiscussion pour plusieurs Corr sur la même erreur dans la même page.

Hsarrazin (discussioncontributions)
Reptilien.19831209BE1 (discussioncontributions)

Pour le premier point, oui il me semble qu'un boot pourrait s'en charger. Mais j'aimerais rassurer sur le fait que, dans un premier temps, les deux systèmes peuvent cohabiter. On pourrait se dire que par défaut c'est le nouveau système qui est utilisé (car plus simple et parce qu'il permet de faire une liste complète des corr utilisés), et avec un certain paramètre, disons {{Liste des correction|PdD=oui}}, c'est l'ancien système qui serait utilisé. Le fait d'utiliser {{corr+}} avec l'ancien système ne l'affectera pas.

Je vais rassembler mes idées afin de laisser un message sur le Scriptorium. Peut-être que d'autres utilisateurs auront une vision sensiblement différente, voire une solution à laquelle on ne songe pas.

Hsarrazin (discussioncontributions)
Reptilien.19831209BE1 (discussioncontributions)

Bonjour Hélène,

J'avoue que depuis cette consultation, ma motivation à améliorer ce modèle s'est évaporée. Il existe pour le moment un module d'essai pour dresser la liste des corrections directement à partir des modèles corr. Mais je viens de m'apercevoir que le param. 1 n'est pas bien évalué. {{Liste des corrections|sandbox=oui}} devrait fonctionner mais ce n'est pas le cas. Je vais réparer ça ce soir.

Hsarrazin (discussioncontributions)

Merci ! oui, j'avais essayé le paramètre, sans succès, d'où mon message...

C'est dommage de se laisser décourager par 2 personnes seulement, qui ne sont pas, par dessus le marché, les principaux utilisateurs de la fonction

Reptilien.19831209BE1 (discussioncontributions)

Je suis un imbécile ! Le paramètre 1 fonctionne correctement, c'est juste qu'il faut (pour le moment) indiquer qu'on doit récupérer les corrections avec les modèles corr à l'aide du paramètre 2=corr. Quand j'aurai quelques minutes dans la semaine je regarderai à rajouter cette fonctionnalité au module principal. Je relierai également la conversation, histoire de me remettre dans le bain. Voili voilou.

Hsarrazin (discussioncontributions)
Reptilien.19831209BE1 (discussioncontributions)

oui, c'est la seule façon pour le moment, mais personnellement j'attendrais un peu.

Hsarrazin (discussioncontributions)

oui, j'ai vu que tu l'avais mis sur Jean Rivard... on ira nettoyer une fois faites les mises au point... en tout cas, c'est un super boulot !

Hsarrazin (discussioncontributions)

Salut ! Reptilien.19831209BE1 !

Question qui m'intrigue, et à laquelle tu pourras peut être répondre : bien que cette discussion comporte de nombreux liens vers le modèle {{Liste des corrections}}, elle n'apparaît pas dans la liste des PDD utilisateurs liés... intrigant, non ? ^^

Je m'en suis aperçue en recherchant cette longue discussion pour retrouver le paramétrage pour avoir les {{Corr}}...

Reptilien.19831209BE1 (discussioncontributions)

Et en choisissant « sujet » comme espace de nom, plutôt que « discussion utilisateur » ?

Hsarrazin (discussioncontributions)

ah ok... donc, si on ne sait pas si la discussion qu'on cherche est en Flow ou pas, il faut chercher les deux ? (je ne savais même pas qu'il y avait une option "Sujet")... c'est pas très terrible, je trouve... :(

Merci pour le truc, en tout cas :)

PS : j'ai ajouté le paramètre pour extraire les Corr en pdd, mais pas dans la page de documentation, puisque c'est encore en "Sandbox"...

Reptilien.19831209BE1 (discussioncontributions)

C'est vrai, je partage ton avis, je me suis laissé avoir bien des fois. Je ne sais pas ce que les développeurs préparent pour le prochain outil de communication, mais c'est certainement un point d'amélioration.

As-tu rencontré des problèmes lors de l'utilisation avec le paramètre corr penses-tu qu'il est prêt pour être intégré au module principal ?

Hsarrazin (discussioncontributions)

pour moi, oui, il est prêt :) et très utile... car la très grande majorité des contributeurs ne s'embêtent pas à faire un {{CorrDiscussion}} pour une rectification "évidente"

Reptilien.19831209BE1 (discussioncontributions)

Alors je regarde à ça au plus vite. :-)

Reptilien.19831209BE1 (discussioncontributions)
Hsarrazin (discussioncontributions)

tu as compilé {{CorrDiscussion}} et {{Corr}} en un seul récapitulatif, en liant vers les explications quand il y en a ? c'est bien ça ? ... Super !!!

est-ce que tu as mis en place ce dont on avait parlé avec @Vieux têtard, avec des paramètres facultatifs, ou c'est devenu superflu vu ce que je vois ? Sourire

Si c'est le cas, c'est génial !!

il faudra modifier la documentation, en indiquant la syntaxe ?... #oupas si tout se fait automatiquement

Reptilien.19831209BE1 (discussioncontributions)

Oui, si on utilise le paramètre avec=corr, le module regarde également en page de discussion si le modèle {{CorrDiscussion}} est utilisé, sans chercher à faire une quelconque relation entre les deux modèles. S'il trouve le modèle, alors il ajoute à côté du numéro de page le lien « (expl.) » (pour explications) qui renvoie vers la page de discussion.

Si ça peut suffire, alors oui pas besoin de créer {{corr+}}.

Hsarrazin (discussioncontributions)

attendons la réponse de @Vieux têtard qui était le demandeur initial ^^

Vieux têtard (discussioncontributions)

Ça me semble parfait. Beau travail ! et merci . Je ne me rappelle plus à quoi servait le paramètre "sandbox" ?

Hsarrazin (discussioncontributions)

à mettre en test les nouvelles fonctions sans casser le modèle existant - il devrait disparaître, je pense, non ?

Reptilien.19831209BE1 (discussioncontributions)

Voilà j'ai mis à jour le module. Le paramètre sandbox servait à basculer vers le module de test. Il ne sert plus à rien et va être supprimé.

Hsarrazin (discussioncontributions)

Merci beaucoup ! peux-tu mettre à jour la documentation du modèle, stp, compte tenu des dernières modifs, je ne sais pas quels sont les paramètres devenus inutiles ou pas... ... en particulier, est-il encore nécessaire d'indiquer le décalage des pages ?

Reptilien.19831209BE1 (discussioncontributions)

Je vais mettre à jour la doc. Non, plus besoin car il se base sur <pagelist />.

Répondre à « Modèle:Liste des corrections »