Discussion utilisateur:Tpt

Aller à : navigation, rechercher

À propos de ce flux de discussion

Modifier la description

Page de discussion de Tpt (d · c · b)

La discussion précédente a été archivée dans Discussion utilisateur:Tpt/Archive 1 le 2016-04-25.

En cliquant sur « Ajouter un sujet », vous acceptez nos conditions d’utilisation et acceptez de mettre à disposition, de façon irrévocable, votre texte sous les licences CC BY-SA 3.0 et GFDL
Gratus (discussioncontributions)

Bonjour, je vous contacte car vous avez fait la publicité de mediawiki.messagePoster sur https://fr.wikipedia.org/wiki/Discussion_Projet:JavaScript.

Je tente actuellement de modifier mon script (voir section #Flow (et PasTec)) pour qu'il tolère Flow.

J'obtiens une erreur TypeError: mw.messagePoster is undefined, je suppose qu'il faut importer https://doc.wikimedia.org/mediawiki-core/master/js/#!/api/mw.loader-method-using mais je ne sais pas comment faire.

Merci d'avance pour votre aide.

Tpt (discussioncontributions)

J'ai mis à jour l'exemple sur la page de doc de l'API de Flow en ajoutant l'appel à mw.loader.using. Cela donner quelque chose qui marche. Ce code marche aussi pour poster sur les pages de discussion "classiques" (MediaWiki reconnais le type de page de discussion et, en fonction, exécute la bonne opération). cette page de doc est très utile quand on développe des gadgets MediaWiki.

Gratus (discussioncontributions)

Cela fonctionne, merci beaucoup !

Répondre à « Flow »
Loudubewe (discussioncontributions)

Bonjour Tpt,

Je suis prêt à aider pour corriger cet ennuyeux problème (voir les détails sur le Scriptorium).

Comment procéder ?

Loudubewe (discussioncontributions)

Rebonjour. J'ai noté mes constats sur l'origine du problème (main.css) sur le scriptorium. Je ne sais s'il vaut mieux poursuivre l'échange ici ou là ?

Tpt (discussioncontributions)

Là bas est probablement mieux pour que tout le monde puisse profiter de la discussion :-).

Répondre à « Pages blanches dans les pdf (et epub) »
Reptilien.19831209BE1 (discussioncontributions)

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 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 ;-)

Tpt (discussioncontributions)

Pardon pour la réponse lente, j'attendais de pouvoir te faire une réponse constructive. La voici :

Faire un formulaire changeant le rendu côté serveur des pages semble difficile à mettre en place sans investissement réel de la Wikimedia Foundation car il faudrait que le cache du rendu des pages soit compatibles avec ce genre d'options. Et, de plus, cela va dans une direction différentes de projets comme stocker les pages non plus en wikitext mais dans en HTML (avec les métadonnées Parsoïd).

Ce qu'on peut faire c'est, au lieu d'utiliser des modules Lua, d'étendre (et nettoyer) le système actuel de scripts JavaScript qui on l'avantage de tourner côté client et donc de passer au dessus du système de cache. Si on arrive à mettre en place cela de manière propre on peut tout à fait imaginer que Wsexport télécharge le script pour tel Wikisource, regarde les options disponibles, les proposes à l'utilisateur et fait tourner le script sur chaque page avant la construction de l'ePub en faisant tourner le(s) script(s) via nodejs ou quelque chose du genre.

Niveau implémentation cela n'est pas trivial mais cela semble faisable (le plus dure étant sans doute d'avoir quelque chose comme nodejs mais complètement sandboxé et qu'on puisse appelé depuis PHP).

Reptilien.19831209BE1 (discussioncontributions)

Merci d'avoir pris le temps de me répondre. Concernant le formulaire je l'imaginais tout simplement fabriqué en javascript, ne voyant pas d'autre solution. Pour ce qui est du cache, je pensais bien qu'il allait posé problème mais j'étais persuadé qu'il pouvait prendre en charge des paramètres HTTP/GET (je ne sais plus d'où je crois tenir cette info). Utiliser du javascript repris par un serveur node.js à la place de modules lua, oui, pourquoi pas, je n'y avais tout simplement pas pensé...

N'hésite pas à nous tenir informés si tu avances dans l'une ou l'autre piste.

Tpt (discussioncontributions)

Ok ! Si tu (ou quelqu'un d'autre...) as les compétences et le temps n'hésite pas à te lancer dans ce projet.

Répondre à « Proofread Page et l'outil Export »
Le ciel est par dessus le toit (discussioncontributions)

Bonjour Tpt,

désolé de t'ennuyer encore avec ça,

Aurais-tu quelques heures pour créer les popups dont nous avons parlé ici.

Merci

Tpt (discussioncontributions)

Merci beaucoup de m'avoir relancé ! Pardon, je suis bien occupé en ce moment et cela ne me semble pas super prioritaire (mais intéressant tout de même). Je regarde cela quand je commencerai à respirer.

Répondre à « Modèle auteur plus autorité »
Vieux têtard (discussioncontributions)

Je repose ma question ici, puisqu'il semble que tu ne l'a pas vue su le Scriptorium :

En CSS, on peut avoir à spécifier des URLs, par exemple : background-image: url("img.png"); Quelle est la syntaxe correcte dans les feuilles CSS de TemplateStyles pour spécifier l'url d'une image située sur Commons ?

Cordialement et avec mes remerciements pour tout ce que tu fais pour nous.

Tpt (discussioncontributions)

J'ai répondu sur le Scriptorium. Désolé de ne pas avoir réagit.

Répondre à « TemplateStyles et Commons »
Reptilien.19831209BE1 (discussioncontributions)

Bonjour, lorsque tu auras 2 minutes à gaspiller, pourrais-tu, s'il te plaît, jeter un œil et m'expliquer pourquoi ça ne fonctionne pas comme je l'aurais souhaité. L'idée étant de mettre dans un seul bloc, en transclusion, l'ensemble du poème qui s'étend sur plusieurs pages.

Un tout grand merci d'avance.

Tpt (discussioncontributions)

Hum, j'ai oublié comment faire. Dans l'espace Page: tu peux utiliser les en-êtes et pieds de pages (mais cela n'est pas bien pour pas mal de raisons et cela casse le VisualEditor).

Répondre à « poem sur plusieurs pages »
Ernest-Mtl (discussioncontributions)

Salut Thomas... Marc-André n'est pas disponible pour repartir le wsexport, qui semble planté, avant ce soir... Si tu reçois ce message avant qu'il revienne ce soir et que tu as le temps de repartir le tool, ce serait apprécié. Merci et bonne fin de soirée...

Tpt (discussioncontributions)

Je l'ai redémarré. Cela devrait marcher maintenant.

Ernest-Mtl (discussioncontributions)

merci... en effet, je peux télécharger des epubs... l'option PDF ne fonctionne plus depuis quelques semaines cependant... "bad gateway"... sais-tu ce qui pourrait causer ça?

Tpt (discussioncontributions)

Tu aurais un exemple de page qui ne passe pas ?

Ernest-Mtl (discussioncontributions)

y'a Les Anciens Canadiens, Héroïsmes d’antan, victoires d’aujourd’hui, etc... tous les livres du projet Québec/Canada que je tente de télécharger depuis 2 semaines me font un bad gateway quand j'essaie le PDF... mais en epub, ça fonctionne.

Répondre à « wsexport »
Reptilien.19831209BE1 (discussioncontributions)

Bonjour, depuis hier les gadgets MediaWiki:Gadget-Erreurs-communes.js, MediaWiki:Gadget-OngletPurge.js, ou encore celui chargé des maquettes ou des coquilles ne fonctionnent plus ! Ma console javascript m'indique une erreur, sans que je sache précisément d'où ça vient. Serais-tu au courant de quelque chose ?

Tpt (discussioncontributions)

Hum, non, je ne suis au courant de rien (sauf que quelques fonctions JavaScript de MediaWiki ont été supprimés il y a plus d'une semaine). Quelle est cette erreur ?

Reptilien.19831209BE1 (discussioncontributions)

Désolé pour le pavé :

128:81 Gadget "Erreurs-communes" styles loaded twice. Migrate to type=general. See <https://www.mediawiki.org/wiki/RL/MGU#Gadget_type>.

(anonymous) @ 128:81 startUp @ load.php?debug=false&lang=fr&modules=startup&only=scripts&skin=vector:66 script.onload.script.onreadystatechange @ load.php?debug=false&lang=fr&modules=startup&only=scripts&skin=vector:67 load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:176 Exception in module-execute in module site: load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:176 TypeError: Cannot read property 'profile' of undefined TypeError: Cannot read property 'profile' of undefined

at eval (eval at <anonymous> (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:4), <anonymous>:1:914) at eval (<anonymous>) at load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:4 at Function.globalEval (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:4) at Object.<anonymous> (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:161) at fire (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:45) at Object.add [as done] (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:45) at Object.always (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:46) at runScript (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:160) at checkCssHandles (load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:161)

logError @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:176 handler @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:154 fire @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:45 fireWith @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:46 fire @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:46 track @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:154 (anonymous) @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:161 fire @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:45 add @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:45 always @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:46 runScript @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:160 checkCssHandles @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:161 execute @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:162 implement @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:168 (anonymous) @ VM2628:1 (anonymous) @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:4 globalEval @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:4 (anonymous) @ load.php?debug=false&lang=fr&modules=jquery%2Cmediawiki|mediawiki.legacy.wikibits&only=scripts&skin…:165

Tpt (discussioncontributions)

Merci ! Je vais regarder cela quand je pourrais (j'ai plein de trucs qui me tombe dessus en ce moment)

Reptilien.19831209BE1 (discussioncontributions)

Aucun problème, je comprends parfaitement ;-)

Reptilien.19831209BE1 (discussioncontributions)

Informations complémentaires : aucun problème avec firefox (connecté/déconnecté), et chrome/chromium le problème n'apparaît que si je suis connecté (déconnecté tout fonctionne bien) (FAUX). Je continue de chercher...

Reptilien.19831209BE1 (discussioncontributions)

Je pense que l'erreur qui suit est intéressante :

TypeError: undefined is not an object (evaluating '$.client.profile')

d'où le TypeError: Cannot read property 'profile' of undefined plus haut.

Peut-être qu'il y a un rapport avec le module JQuery Client appelé dans le MediaWiki:Common.js $.client.profile(), parce que je n'ai aucun problème sur la version anglophone pour changer les maquettes alors que le module ne semble pas utilisé, bien que chargé.

Cependant, ça n'explique pas pourquoi ça fonctionne bien sous firefox...

Reptilien.19831209BE1 (discussioncontributions)

Bon, il semblerait qu'une partie des problèmes est résolue depuis cette modification, plus d'erreur dans la console. Cependant, je ne peux toujours pas utiliser le gadget Erreurs-communes et l'onglet purge fonctionne dans l'espace principale mais pas dans l'espace page...

Cantons-de-l'Est (discussioncontributions)

Une partie des erreurs peut être corrigée en remplaçant importScript par mw.loader.load, comme expliqué dans https://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Le_Bistro/28_avril_2017#Comme_un_probl.C3.A8me_de_javascript.... Le script MediaWiki:Common.js comporte importScript.

Répondre à « Gadgets en panne ! »
Hsarrazin (discussioncontributions)

Salut Tpt, Le ciel est par dessus le toit : Sur certaines pages, comme ici, j'ai cette option en barre d'outils à gauche, mais quand je clique dessus, rien ne se passe, et je n'ai aucune idée à quoi ça peut servir. Il s'agit apparemment d'une option qui vient des modèles comme {{google}}, mais je ne comprends pas à quoi elle sert. Peux-tu m'expliquer, stp ?

Merci d'avance,

Tpt (discussioncontributions)

C'est une bonne question. Je ne sais pas du tout d'où cela viens et je ne trouve pas le code à l'origine de ce bouton. Il faut que je creuse cela. Je n'aime pas du tout voir qu'il y a du code inconnu qui s'exécute comme cela chez tout le monde.

Hsarrazin (discussioncontributions)

à ma connaissance, il apparaît dans tous les modèles du type {{Google}} {{Gallica}} etc.

Tpt (discussioncontributions)

C'est {{Option}} le coupable qui est utilisé pour afficher les ids de manière optionnelle. Il ne marche plus du tout et je pense que personne ne l'utilise. Je supprime ses usages.

Hsarrazin (discussioncontributions)

ok, merci pour l'info... c'est User:Le ciel est par dessus le toit qui m'a interpelée là dessus, et je ne comprenais pas du tout à quoi ça servait

Bonne journée à toi et à bientôt en ligne, j'espère :)

Répondre à « Option d'affichage "EEL Id" »
Reptilien.19831209BE1 (discussioncontributions)

Bonjour, il y a un problème assez agaçant avec les maquettes. Lorsqu'on clique sur un lien contenant une ancre pointant vers une autre page (suffisamment longue), l'ascenseur se place correctement au niveau de l'ancre lorsque la page est chargée. Ensuite, se mettent en marche les différents gadgets, dont celui chargé des maquettes, qui modifie plus ou moins la largeur du conteneur text en fonction de la maquette choisie et qui déplace, de ce fait, la position de l'ancre par rapport à celle de l’ascenseur. Résultat on est plus à l'endroit souhaité !

Je précise que ce problème n'apparaît peut-être pas avec tous les navigateurs, mais j'ai ce problème avec Chrome/Chromium 58 et Firefox 53.

Si je ne me trompe pas, la fonction appelée est toggle_layout du gadget PageNumbers. Je pense qu'en rajoutant à la fin de la fonction une redirection vers l'ancre ça corrigerait le problème :

hash = window.location.hash;
if(hash.indexOf("#") != -1)
    window.location.href = hash;

Voici un exemple de lien avec une ancre.

Qu'en penses-tu ? Peut-être qu'il y a moyen de faire mieux...

Tpt (discussioncontributions)

C'est une bonne idée. J'ai mis cela en place. Merci :-)

Reptilien.19831209BE1 (discussioncontributions)

Impeccable, le problème a disparu :-)