Bonjour, j'ai une idée qui me trotte dans la tête depuis un petit moment et j’aimerais avoir ton avis sur la faisabilité technique, et surtout savoir si ça en vaut la peine.
La communauté s'est exprimée ici et là quant au souhait d'étendre les possibilités d'exportation, à savoir : se débarrasser des s longs, ne pas inclure les images ou les liens, laisser les coquilles, supprimer les notes wikisources, activer ou non le dictionnaire de modernisation, etc...
Pour faire gagner du temps à tout le monde (surtout à toi), l'idée en question serait d'ajouter un paramètre supplémentaire à l'outil Proofread Page, appelons-la callback, qui se chargerait d'appeler un module hébergé sur chaque projet Wikisource et géré par la communauté, et dont le rôle serait de traiter le contenu pour la transclusion ou l'exportation. De cette manière pas besoin de modifier à chaque instant l'outil d'exportation, mais seulement le module en question.
J'avais tenté quelque chose, uniquement avec le s long, pour voir si l'outil d'exportation répondait correctement, mais il faut utiliser ce module à la place de la balise <pages /> pour la transclusion... ce qui est fort ennuyeux !
On aurait donc sur la page de transclusion quelque chose comme :
<pages index="..." ... callback="Module:Options_de_lecture[|option1|option2|...]"/>
où le Module:Options_de_lecture (ou peu importe) se chargerait du traitement.
Remarque, on peut aussi plus simplement ne pas mettre en place ce paramètre, et appeler un module en dur dans le code PHP de l'outil : Mediawiki:Proofreadpage callback, à l'instar de MediaWiki:Proofreadpage index template, et la communauté se chargerait de créer une redirection à sa convenance...
Pour les options (je veux les images mais pas les s longs), on pourrait imaginer mettre à la disposition des lecteurs un formulaire avec des cases à cocher :
- transformer les s longs en s ronds
- ne pas inclure les images
- supprimer les liens
- conserver les coquilles
- ...
une fois le bouton « télécharger » pressé, les paramètres de ce formulaire seraient transmis à l'outil d'exportation et seraient considérés comme les paramètres du Module:Options_de_lecture, activant l'un ou l'autre traitement.
Pour la lecture (dans l'espace principal) par contre, je sèche car il n'est pas (encore) possible de récupérer les variables GET/POST dans un module. Du coup, comment laisser le choix au lecteur ? peut-être que l'extension Proofread Page peut prendre le relais (récupérer les variables et les transmettre au module).
Voilà, j'espère que tu as plus ou moins saisi l'idée. Peut-être qu'on pourrait faire autrement et plus simplement, à toi de me le dire.
Je crois savoir que tu es fort pris en ce moment, donc je ne m'inquiète pas si tu ne me réponds pas dans l'immédiat, mais au moins, cette idée est posée quelque part.
@ bientôt ;-)