Discussion Projet:Scripts et gadgets/2012
De Wikipedia, l'encyclopédie encyclopedia
Cette page de discussion est une archive.
Pour intervenir sur les discussions actuelles ou pour en lancer une nouvelle, allez sur la page de discussion actuelle.
Cette page de discussion est destinée aux discussions sur le Projet:Scripts et gadgets.
- Si vous souhaitez signaler un bug, utiliser la page de rapport de bug.
- Si vous souhaitez demander une fonction qui ne se trouve pas dans la liste des fonctions disponibles, utilisez la page de demande de fonction.
- Pour tout autre demande, vous êtes au bon endroit.
Aide • Exemples |
Fonctions avancées |
Apparence Vector |
Apparence Timeless |
Projet:Scripts et gadgets |
(en) User styles |
common.css personnel |
Common.css commun |
Monobook.css commun |
Vector.css commun |
(en) Catalogue of classes |
Index des propriétés CSS2 |
common.js personnel |
Common.js commun |
Fonctions JavaScript |
Affichage des boutons indiqués sur Aide:Barre d'outils d'édition
Bonjour,
Je n'arrive pas à afficher la barre d'outils documentée dans Aide:Barre d'outils d'édition. J'ai essayé de passer sur monobook, pour ne pas avoir d'autres scripts, et de remettre toutes mes préférences à zéro, mais elle ne s'affiche jamaie. Même en retirant la barre d'outils avancée. Ce soir je suis sous Aurora, 10.0a2 (2011-12-20), mais il m'arrive aussi d'éditer sous Chrome et Firefox sans jamais voir ces boutons.
Pouvez-vous m'aider à les retrouver ?
J'en aurais besoin parce que je veux me créer un bouton permettant d'ajouter le code d'une infobox dans les articles. Y-a-t-il une autre solution ?
Merci d'avance.
--Hercule (d) 6 janvier 2012 à 03:02 (CET)
- Il faut décocher dans les préférences l'option "
Activer la barre d’outils améliorée
". - ⇨ Dr Brains ∞ Consultation ∞ 6 janvier 2012 à 14:33 (CET)
- J'ai essayé, mais dans ce cas je n'ai plus aucune barre d'outils --Hercule (d) 6 janvier 2012 à 14:36 (CET)
- Est-ce que ça dépend de la page ? Car la barre d'outil ne s'affiche pas tout le temps. Si elle ne s'affiche pas dans le Main, alors y a un pb.
- ⇨ Dr Brains ∞ Consultation ∞ 6 janvier 2012 à 14:38 (CET)
- J'ai essayé, mais dans ce cas je n'ai plus aucune barre d'outils --Hercule (d) 6 janvier 2012 à 14:36 (CET)
Bonjour,
Suite à cette requête sur WP:DIMS qui était en panne, je me suis un peu débattu ce matin avec les soucis liés à l'application automatique de l'alternance de couleurs dans les lignes des tableaux. Voir modifs du common.css, modifs du common.js et la page de test Utilisateur:Lgd/Alternance.
L'essentiel me semble ok, mais il reste quelques bricoles :
- l'ordre pair/impair est inversé dans IE8 pour les tableaux triables
- l'alternance n'est pas rétablie dans IE8 après utilisation des boutons de tri (enfin si, mais dans mes tests locaux : pas au premier tri, seulement à partir du second. Je n'ai donc pas déployé cette partie du script pour l'instant).
- je n'ai pas encore regardé ce qu'il en était de la couleur des
.wikitable th[scope=row]
.
Les modifications sont expliquées sur WP:DIMS. La partie javascript est très limitée (correctif d'accessibilité clavier pour le tri dans tous les navigateurs et fallback de l'alternance pour IE8) contrairement à la partie CSS, mais comme il n'y pas de Projet:CSS, si ça vous dit de jeter un oeil sur le tout... C'est sûrement améliorable. Cordialement, --Lgd (d) 7 janvier 2012 à 16:16 (CET)
Bonjour, je commence tout juste à apprendre le JavaScript et j'ai bien vu qu'on pouvait faire exécuter du code dans une page HTML entre des balises script, par inclusion d'un fichier .js ou sur un évènement, mais je n'arrive pas à combiner les deux dernières méthodes. Autrement dit, j'aimerais qu'un évènement déclenche la lecture d'un fichier .js mais je ne sais pas si c'est possible. S'il y a une bonne âme qui peut me répondre, je la remercie d'avance. Ambigraphe, le 11 janvier 2012 à 22:14 (CET)
- http://www.w3schools.com/js/js_events.asp
- Il faut d'abord définir ta fonction javascript, puis la faire appeler durant un événement (généralement un clic).
- ⇨ Dr Brains ∞ Consultation ∞ 11 janvier 2012 à 22:32 (CET)
- Je n'ai pas de problème pour assigner une fonction à un évènement, mais je ne sais pas comment faire pour qu'une fonction lance l'exécution d'un script situé sur un fichier .js externe. Ambigraphe, le 12 janvier 2012 à 18:23 (CET)
- Et bien il faut déjà importer ce fichier externe, via la fonction
importScriptURI()
- exemple :
importScriptURI('//fr.wikipedia.org/w/index.php?title=Utilisateur:Dr_Brains/LiveRC.js&action=raw&ctype=text/javascript');
- Après tu peux faire exécuter les
function
qui s'y trouvent. - ⇨ Dr Brains ∞ Consultation ∞ 12 janvier 2012 à 18:43 (CET)
- Oui, cela permet d'importer des fonctions, mais pas d'exécuter les instructions directement (si j'ai bien compris). Ambigraphe, le 12 janvier 2012 à 20:16 (CET)
- Mmmh. Si tu explicitais ce que tu veux faire (quel fichier externe, quelle fonction, quel événement, etc...), ce serait plus facile de te guider.
- ⇨ Dr Brains ∞ Consultation ∞ 12 janvier 2012 à 20:31 (CET)
-
- Le code qui est dans le fichier est exécuté dès que le fichier est chargé. S'il s'agit d'appels de fonction, les fonctions sont appelées.
- PS : je me suis permis de supprimer le « http: » dans le importScript : pour que le script puisse fonctionner avec le protocole HTTPS, il ne faut pas forcer le protocole HTTP.
- Amicalement — Arkanosis ✉ 12 janvier 2012 à 20:44 (CET)
- Oui, cela permet d'importer des fonctions, mais pas d'exécuter les instructions directement (si j'ai bien compris). Ambigraphe, le 12 janvier 2012 à 20:16 (CET)
- Et bien il faut déjà importer ce fichier externe, via la fonction
- Je n'ai pas de problème pour assigner une fonction à un évènement, mais je ne sais pas comment faire pour qu'une fonction lance l'exécution d'un script situé sur un fichier .js externe. Ambigraphe, le 12 janvier 2012 à 18:23 (CET)
Comment peut-on créer une sous-page d'un article avec le Javascript? Où pourrais-je en lire ou demander des questions plus exactes?
- Je suis pas sûr de bien comprendre.
- Sur Wikipédia, les articles n'ont pas de sous-pages.
- Un peu plus de précision sur ce que tu souhaites faire serait nécessaire pour pouvoir te répondre.
- ⇨ Dr Brains ∞ Consultation ∞ 2 février 2012 à 20:51 (CET)
- Sur Wikipédia certaines pages dans certaines circonstances ont des sous-pages. C'est le car pour les articles violant les droit d'auteur (d'ailleurs c'est le cas sur lequel je travaille). Si un article est soupçonné de violer le droit d'auteur on crée une sous-page nommée "le_nom_d'article/Droit_d'auteur". Voici une [] exemple.--Kojemiaka (d) 2 février 2012 à 21:29 (CET)
- Ah oui, mais ce n'est pas une sous-page de l'article, c'est une sous-page de la page de discussion.
- Mais je ne comprends toujours pas ce que tu veux faire exactement avec javascript. Ces sous-pages sont créées après apposition d'un modèle, avec un "template" préchargé. Que veux-tu faire de plus ?
- ⇨ Dr Brains ∞ Consultation ∞ 2 février 2012 à 21:52 (CET)
- Merci pour vos réponses. Vous avez raison, je me suis trompé. Effectivement, je veux pouvoir créer à l'aide de Javascript une sous-page de la page de discussion d'un article soupçonné de violer les droit d'auteur. En bref, je veux en quelque sorte créer un bouton qui pourra être intégré à l'interface de Wikipédia pour automatiser les procédures monotones de traitement d'articles plagiés. Pour ce faire j'utilise Javascript et Ajax, mais je n'arrive toujours pas à créer une sous-page.--Kojemiaka (d) 2 février 2012 à 23:08 (CET)
- Sur Wikipédia certaines pages dans certaines circonstances ont des sous-pages. C'est le car pour les articles violant les droit d'auteur (d'ailleurs c'est le cas sur lequel je travaille). Si un article est soupçonné de violer le droit d'auteur on crée une sous-page nommée "le_nom_d'article/Droit_d'auteur". Voici une [] exemple.--Kojemiaka (d) 2 février 2012 à 21:29 (CET)
Bonjour, pourquoi est-il recommandé d'utiliser la fonction addOnloadHook() dans son common.js alors que le code s’exécutera correctement même si on l'omet?
- addOnloadHook() sert à exécuter une fonction après le chargement de la page. On peut faire autrement mais c'est une méthodes qui a l'avantage d'être simple.
- ⇨ Dr Brains ∞ Consultation ∞ 2 février 2012 à 20:51 (CET)
- Merci pour votre réponse. Et si on ne l'écrit pas, donc le code s’exécutera même sans que la page soit complétement chargée? Je le demande parce que d'après moi ces deux bouts de code travaillent de la même manière. Est-ce que je me trompe?
l'un
alert ('hello World');
et l'autre
function main () {
alert ('hello World');
}
addOnloadHook(main);
- Oui, tu te trompes.
- Essayes ceci :
alert ('hello World "normal"');
function main () {
alert ('hello World "addOnloadHook()"');
}
addOnloadHook(main);
- Tu auras la première pop-up alors que la page n'est pas chargée et est encore blanche.
- Et la deuxième pop-up n'apparaîtra qu'une fois la page finie de charger.
- Donc, si tu utilises la première méthode pour modifier l'interface, par exemple rajouter un lien utile dans la boîte à outils, ça ne fonctionnera pas.
- ⇨ Dr Brains ∞ Consultation ∞ 2 février 2012 à 21:47 (CET)
Bonjour, Je cherche à afficher un popup à l'aide de jQuery sur une page de lecture d'un article (wgAction = "view"), mais je n'arrive pas. Par contre le même code marche bien si j'essaie d'afficher ce popup sur la page de modification d'un article (wgAction = "edit").--Kojemiaka (d) 8 février 2012 à 16:58 (CET)
- C'est "==" qu'il faut utiliser pour les tests.
- Si ce n'est pas ça, c'est assez compliqué de répondre sans voir le script.
- ⇨ Dr Brains ∞ Consultation ∞ 9 février 2012 à 21:34 (CET)
function addCopyvioTab () {
if(wgAction=="view") {
$('#p-namespaces ul').append("<li><span><a id='copyvio'>Signaler un copyvio</a></span></li>");
}
}
$('#copyvio').bind('click', function () {
var newDiv = "<div id='dialog' title='Signaler un copyvio'>Entrez l\'adresse du site qui a 굩 copi頺 <br/><input id='site'/><br/><br/>Commentaires : <br/><textarea id='details'/><div/>"
$(newDiv).dialog({ modal: true }, {height:300},
{width:500},
{buttons:[{text: "signaler le copyvio", click: fuction(){}}, {text: "close", click: fuction(){}}]}
);
function main () {
addCopyvioTab ();
displayForm ();
}
addOnloadHook(main);
- Ah, je crois que j'ai compris. Il faut tester
(wgAction=="edit" || wgAction=="submit")
- Le mode
"edit"
n'est valable que pour la première édition. Dès la première prévisualisation, lewgAction
devient"submit"
. - ⇨ Dr Brains ∞ Consultation ∞ 10 février 2012 à 17:43 (CET)
Bonjour à tous, j'ai écrit un script qui permet d'avoir les formules mathématiques traitées avec MathJax plutôt qu'avec texvc, voir Utilisateur:Ambigraphe/vector.js. Si ça peut être testé par d'autres, ça serait bien, car on m'a demandé d'en faire un gadget (ce que je ne sais faire) et j'espère corriger les défauts éventuels avant de proposer plus largement à la communauté. Bonne journée, Ambigraphe, le 12 février 2012 à 16:14 (CET)
Je veux installer ZoomOnThumb sur en.wp en suivant "Installation sur un autre wiki" sur en.wp, ca ne marche pas. Je suppose que c'est en fait logique... j'ai juste remplacé le fr dans src="http://en.wikipedia.org/w/index.php? , mais je suppose que 'MediaWiki:Gadget-ZoomOnThumb.js' ne peut pas fonctionner là-bas ? (Nb je n'y connais rien en js) --Ofol (moi . ✍) 1 mars 2012 à 03:12 (CET)
Copiée depuis WP:QT. C'est plus une question des CSS que de JS mais je suis sûr que vous saurez m'aider.
J'utilise ResumeDeluxe et j'ai coché « M’avertir lorsque je n’ai pas spécifié de résumé de modification ». Le message d'incitation à renseigner la boite de résumé (« Afin que les participants […] ») ne m'est pas utile. Comment puis je le masquer ? J'ai bien tenté via les CSS mais je dois faire une erreur. — Mirgolth 1 mars 2012 à 11:34 (CET)
Bonjour. Suite à ma demande sur Wikipédia:Questions techniques/semaine 10 2012#Disparition des boutons en mode modification - URGENT, je réitère ma demande ici : la totalité des boutons qui me servent en mode modification a disparu, et la totalité des caractères spéciaux de page de page ne fonctionnent plus depuis au moins 3/4 d'heure. Si cela correspond au problème médiawiki du 1er mars, je pense ne pas être le seul à qui cela pose problème actuellement (pour comprendre ce problème limité à certains wikipédiens, merci de bien vouloir lire la discussion du Bistro du 1er mars que j'ai pris la peine d'inclure dans ma demande sur les Questions techniques). Rédiger des discussions dans ces conditions n'est vraiment pas aisé. Utilisateur:Père Igor 7 mars 2012 à environ 17:44.
- Salut Père Igor, j'ai le même problème et oui c'est très embêtant ! Je l'ai signalé sur le Projet:JavaScript - sous-page Rapport de bug. Je te propose d'en discuter là-bas pour éviter de disperser les discussions. Que seuls nous soyons touchés doit venir du fait que nous sommes des marginaux restés sous monobook Totodu74 (devesar…) 7 mars 2012 à 18:00 (CET)
Bonjour et désolé de poser des questions naïves, mais j'aimerais savoir comment fonctionnent les petits boutons de l'éditeur qui me met automatiquement des balises pour le gras, l'italique ou les liens. Si ce n'est pas du JavaScript, est-ce du HTML ? Merci d'avance, Ambigraphe, le 11 mars 2012 à 16:31 (CET)
- Bonjour,
- C'est du JavaScript. Attention, il existe deux version de cette barre d'outils : la version « classique » et la version « améliorée » (le « amélioré » étant discutable d'un point de vue fonctionnel) qui ne partagent pas du tout le même code.
- Ai-je répondu à ta question ?
- Amicalement — Arkanosis ✉ 11 mars 2012 à 18:20 (CET)
- En fait, je me suis répondu directement en désactivant JavaScript pour voir ce que ça fait. Effectivement, les boutons disparaissent (ou plutôt n'apparaissent pas) mais les caractères spéciaux en dessous persistent et sont apparemment non fonctionnels. On devrait d'ailleurs éviter de les mettre par défaut du coup.
- Mais puisque tu réponds aimablement à ma question (merci !) j'en profite : ces deux versions de barre d'outils ont bien sûr des codes séparés, mais je ne vois pas en quoi ils seraient très différents. Bon, ça sort peut-être du cadre de cette page de discussion. Ambigraphe, le 11 mars 2012 à 20:46 (CET)
- Tiens, au passage : est-ce qu’il est possible de corriger la version « classique » pour utiliser
class="wikitable alternance"
plutôt que{{ligne grise}}
? Ça éviterait de devoir repasser derrière ceux qui l’utilisent sans corriger. — Ltrl G, le 13 mars 2012 à 00:25 (CET)
- Tiens, au passage : est-ce qu’il est possible de corriger la version « classique » pour utiliser
Valeurs des paramètres dans le Gadget-Evaluation
Bonjour,
Comme Modèle:Wikiprojet/évaluation a été modifié (voir Wikipédia:Le_Bistro/25_mars_2012#Evaluation_des_articles), le gadget a besoin d'être mis à jour. Si quelqu'un a le temps de s'en occuper...
Merci,
Orlodrim [discuter] 25 mars 2012 à 13:08 (CEST)
- Fait
- ⇨ Dr Brains ∞ Consultation ∞ 25 mars 2012 à 13:16 (CEST)
bonjour, suite conseil donné sur bistrot le 1er avril, je me dirige vers vous. pour tous les articles ayant le portail colombie, j'aimerais mettre en place un bandeau d'évaluation VIERGE en rapport avec le projet sur leur page de discussion. existe-il un script en javascript (ou autre) pour que je puisse faire moi-même ce genre d'opérations ou faut-il obligatoirement passer par un bot? Cordialement. £e p$y £éon (d) 2 avril 2012 à 13:38 (CEST)
- Le gadget "Evaluation" est ton amis (activable dans tes préférences). --Hercule (d) 2 avril 2012 à 14:50 (CEST)
- j'ai deja le gadget "evaluation" sauf qu'il faudrait vérifier pour chaque article lié au portail colombie qu'il y a un bandeau d'évaluation en page de discussion, ce qui serait tres fastidieux... d'où ma demande. £e p$y £éon (d) 2 avril 2012 à 15:50 (CEST)
- Il existe des scripts permettant de savoir les pages à traiter, mais vu le nombre de pages à toucher il faut passer par un bot pour ne pas encombrer les logs. --Hercule (d) 2 avril 2012 à 17:22 (CEST)
- ok, mais sinon quels sont ces scripts? £e p$y £éon (d) 2 avril 2012 à 17:29 (CEST)
- Tu peux utiliser http://toolserver.org/~magnus/catscan_rewrite.php?interface_language=fr
- La recherche qui t'intéresse est celle-ci.
- --Hercule (d) 3 avril 2012 à 11:30 (CEST)
- ok, mais sinon quels sont ces scripts? £e p$y £éon (d) 2 avril 2012 à 17:29 (CEST)
- Il existe des scripts permettant de savoir les pages à traiter, mais vu le nombre de pages à toucher il faut passer par un bot pour ne pas encombrer les logs. --Hercule (d) 2 avril 2012 à 17:22 (CEST)
- j'ai deja le gadget "evaluation" sauf qu'il faudrait vérifier pour chaque article lié au portail colombie qu'il y a un bandeau d'évaluation en page de discussion, ce qui serait tres fastidieux... d'où ma demande. £e p$y £éon (d) 2 avril 2012 à 15:50 (CEST)
Bonjour,
Je suis actuellement élève-ingénieur en deuxième année à l’Ecole Centrale de Lille, et je fais partie d’une équipe-projet dont le but est d’aider à la lutte contre le plagiat sur Wikipédia. L’une de nos actions a consisté en l’élaboration de gadgets. L'un sert à automatiser quelques étapes d'un signalement, l'autre à afficher la source en même temps qu'un copier-coller d'un article de Wikipédia. Nous aimerions que l'un d'entre vous teste ces gadgets, afin de s'assurer qu'ils fonctionnent correctement.
Merci d’avance ! Basthonn' (d) 15 avril 2012 à 19:28 (CEST)
- J'ai installé les deux scripts, ensuite en mode édition sur clic droit, j'ai bien deux options supplémentaires : les deux ouvrent une fenêtre dont les titres "signaler un abus" et "close" sont presque illisibles car recouverts par d'autres JavaScripts. JackPotte ($♠) 15 avril 2012 à 22:47 (CEST)
Le gadget hongrois mentionné sur le Bistro, qui met sur fond rose les liens vers page d'homonymie pour tous les utilisateurs connectés, marche ici en adaptant juste les noms du genre Catégorie, Discussion etc., mais est-ce que ça semble satisfaisant aux experts du code ? Notamment par rapport au gadget allemand d'origine je ne sais pas trop pourquoi il y a des wg…
changés en mw.config.get('wg…')
(avec un wgServer
mis avant wgScriptPath
) et des importScriptURI(…)
changés en mw.loader.load(…)
, aussi à la fin bklCheck.execute()
au lieu de addOnloadHook( bklCheck.execute )
. Si ça paraît bon je peux traduire la doc de l'espagnol (ou de l'allemand) et ça pourrait être très utile vu comme ça a fait disparaître rapidement le nombre de liens vers homonymie sur fond rose sur WP hongrois. — Oliv☮ Éppen hozzám? 22 avril 2012 à 18:23 (CEST)
- La version hongroise suit les règles de compatibilité des gadgets avec le nouveau système de gestion des scripts de mediawiki, ce qui explique ces différences de codes. Il vaut donc mieux a priori retenir cette version hongroise.
- (en revanche, comme déjà expliqué sur le Bistro, et pour différentes raisons, ce gadget ne sera pas activable par défaut pour tous les contributeurs connectés). Cordialement, --Lgd (d) 24 avril 2012 à 07:50 (CEST)
- Merci de ta réponse, faisons déjà un gadget et ensuite seulement pourra se poser la question de le mettre par défaut pour tous les connectés (si c'est comme sur WP hongrois c'est une question qui peut être discutée pendant des mois voire des années). — Oliv☮ Éppen hozzám? 24 avril 2012 à 08:18 (CEST)
- Voilà le gadget adapté aux noms français à partir du gadget hongrois (diff vérifié rapidement ici : seules différences dans le code en 121, 123, 246). Vu que ça a l'air de marcher et apparemment au moins 50 fois plus vite que le gadget équivalent actuel des préférences (verifHomon), et vu que le gadget hongrois a été examiné en détail pour en faire là-bas le défaut pour tout le monde, je suppose qu'il faut que je le propose directement en WP:DIMS ? (je vois qu'il y a aussi les pdd de Gadgets-definition et de P:HOM) J'ai préparé la doc en français. — Oliv☮ Éppen hozzám? 25 avril 2012 à 08:29 (CEST)
- Oui, il vaut mieux passer par WP:DIMS, pour garder une trace et pour que d'autres puissent vérifier le script au besoin. Donner un nom plus explicite au fichier js et du coup au gadget ne sera pas du luxe. Et pour la documentation, autant que possible, il faudra prévoir ça sous la forme d'une page Aide:Gadget-... sur le modèle de Aide:Gadget-tooltipRef. Cordialement, --Lgd (d) 25 avril 2012 à 09:11 (CEST)
- Je viens créer tout ce qu'il faut pour le gadget. Sur quel(s) critère(s) se fait la détection ? Uniquement sur la catégorie Homonymie ou sur tous les modèles de la liste suivante : MediaWiki:Disambiguationspage ? Comme je ne suis pas un pro des scripts je pose la question. Leag ⠇⠑⠁⠛ 25 avril 2012 à 13:43 (CEST)
- Le script verifhomon ne semble plus fonctionner avec ce gadget activé. Leag ⠇⠑⠁⠛ 25 avril 2012 à 14:31 (CEST)
- Oui la détection se fait sur les catégories, et actuellement seulement Catégorie:Homonymie mais c'est personnalisable. (Pour verifHomon chez moi les deux peuvent marcher ensemble même si ça n'a pas beaucoup d'intérêt.) — Oliv☮ Éppen hozzám? 25 avril 2012 à 22:30 (CEST)
- Le script verifhomon ne semble plus fonctionner avec ce gadget activé. Leag ⠇⠑⠁⠛ 25 avril 2012 à 14:31 (CEST)
À nouveau au sujet de ce gadget : j'ai ajouté des catégories dans mon common.js d'après la doc mais ça ne marche pas, sûrement un truc tout bête ? (ce ne serait pas que le gadget allemand a « var bklCheck = { cat : {
» au début alors que le gadget français comme le hongrois a « window.bklCheck = { cat : {
» ? si c'est ça c'est à mettre dans la doc) — Oliv☮ Éppen hozzám? 2 mai 2012 à 10:31 (CEST)
- Le problème est que le script utilisateur est chargé avant le gadget, alors que c'était l'inverse auparavant. En substance, il faudrait modifier le code de personnalisation et le code du gadget, pour que soit ils créent un nouvel objet, soit ils étendent l'objet existant.
- D'autre part, j'ai remarqué que le code n'est englobé dans aucun dom.ready, il faut corriger ça. Pour éviter de potentielles erreurs, et aussi pour ne pas ralentir l'affichage initial des pages.
- autre chose, se servir de
mw.loader.load()
pour l'ajax, c'est... particulier - od†n ↗blah 7 mai 2012 à 13:49 (CEST)
- Merci de ta réponse, ce serait bien utile de modifier ça pour permettre l'ajout de catégories et pouvoir faire faire d'autres choses que les homonymies à ce code très rapide par rapport aux autres gadgets équivalents. Il y a justement un
head.insertBefore(
avec le commentaire « Make sure that our style is put before other css so users can override it easily », si ce n'est pas le cas pour le js c'est dommage (raison de sécurité ? j'ai du mal à croire que le WP allemand soit moins sûr...) et pourmw.loader.load()
Lgd disait plus haut que c'est par souci de compatibilité avec la nouvelle gestion de scripts de mediawiki. — Oliv☮ Éppen hozzám? 7 mai 2012 à 14:41 (CEST)- À simple titre d'illustration, parce que c'est un peu quick'n'dirty, le hook pourrait se faire ainsi. Cela nécessiterait aussi un code de personnalisation différent :
- Merci de ta réponse, ce serait bien utile de modifier ça pour permettre l'ajout de catégories et pouvoir faire faire d'autres choses que les homonymies à ce code très rapide par rapport aux autres gadgets équivalents. Il y a justement un
// syntaxe 1
window.bklCheck_customCats = {
'Catégorie:Bon article': {
className : 'lien-BA',
titleAppend : ' (Bon article)',
htmlAppend : ''
},
'Catégorie:Article de qualité': {
className : 'lien-AdQ',
titleAppend : ' (Article de qualité)',
htmlAppend : ''
}
}
// syntaxe 2
window.bklCheck_customCats = {};
window.bklCheck_customCats['Catégorie:Bon article'] = {
className : 'lien-BA',
titleAppend : ' (Bon article)',
htmlAppend : ''
};
window.bklCheck_customCats['Catégorie:Article de qualité'] = {
className : 'lien-AdQ',
titleAppend : ' (Article de qualité)',
htmlAppend : ''
};
- concernant le
mw.loader.load()
, regarde le code ; la fonction est utilisée de manière détournée, non pas pour charger des scripts, mais pour effectuer les requêtes ajax le but de la manœuvre étant vraisemblablement de ne pas avoir de dépendance à jQuery - od†n ↗blah 7 mai 2012 à 15:45 (CEST)
- Voilà bravo, ça marche pour moi. On demande à mettre ta version modifiée sur la page du gadget ou tu veux améliorer ça à ton idée avant ? — Oliv☮ Éppen hozzám? 7 mai 2012 à 17:12 (CEST)
- Si le code de personnalisation utilisateur te convient (je veux dire par là que si tu veux retoucher les noms tels que
bklCheck_customCats
, c'est le moment ), le code en l'état devrait faire l'affaire. Le reste pourra toujours être modifié plus tard. od†n ↗blah 7 mai 2012 à 19:19 (CEST)- Fait par WP:DIMS, merci pour ton expertise ! — Oliv☮ Éppen hozzám? 7 mai 2012 à 22:38 (CEST)
- Si le code de personnalisation utilisateur te convient (je veux dire par là que si tu veux retoucher les noms tels que
- Voilà bravo, ça marche pour moi. On demande à mettre ta version modifiée sur la page du gadget ou tu veux améliorer ça à ton idée avant ? — Oliv☮ Éppen hozzám? 7 mai 2012 à 17:12 (CEST)
- concernant le
Hello,
Vos avis seront les bienvenus pour améliorer la chose si jamais ce petit script peut aider dans la Très Grande et Très Horrifique Querelle des Deux Apostrophes . C'est expliqué dans le Bistro du jour. Cordialement, --Lgd (d) 27 avril 2012 à 09:12 (CEST)
Bonjour, j'ai récupéré il y quelques années de cela le script ci-dessous (sans doute sur le bistro) :
function addArticleTrafficStatistics()
{
var histo = document.getElementById("ca-history");
if(histo)
{
var lien = document.createElement("a");
var today = new Date();
var annee = today.getYear() + 1900;
var mois = new String(today.getMonth() + 1);
if(mois.length < 2)
{
mois = "0" + mois;
}
lien.setAttribute("href", "http://stats.grok.se/fr/" + annee + mois + "/" + wgPageName);
lien.appendChild(document.createTextNode("Stats"));
var stats = document.createElement("li");
stats.setAttribute("id", "ca-stats");
stats.appendChild(lien);
histo.parentNode.insertBefore(stats, histo.nextSibling);
}
}
addOnloadHook(addArticleTrafficStatistics);
Il ajoute un onglet « Stats » qui donne un lien direct vers le nombre de consultations de l'article en question. Avec le passage à vector, il fonctionne toujours bien, mais le nom de l'onglet apparaît décalé vers le haut ce qui est surtout gênant sur un plan esthétique. Si quelqu'un pouvait y jeter un petit coup d’œil ce serait fort sympathique. Merci par avance ! Ayack ♫♪ 9 mai 2012 à 18:59 (CEST)
mw.util.addPortletLink()
est ton ami od†n ↗blah 9 mai 2012 à 20:51 (CEST)
$(document).ready(function () {
var today = new Date();
var annee = today.getYear() + 1900;
var mois = new String(today.getMonth() + 1);
if (mois.length < 2) {
mois = '0' + mois;
}
mw.util.addPortletLink(
'p-cactions',
'http://stats.grok.se/fr/' + annee + mois + '/' + mw.config.get('wgPageName'),
'Stats',
'ca-stats',
'Afficher les statistiques de cette page'
);
});
Ave !
Je propose à la sagacité des fins connaisseurs du JavaScript sur Wikipedia cette requête.
Si quelqu'un arrive à réaliser ces améliorations, ça me rendra bien service — ainsi qu'à d'autres certainement.
Merci !
Bonjour. Sur le Wiktionnaire, nous avons des sommaires qui peuvent être terriblement longs, mais néanmoins utiles. Eiku a écrit un prototype de fonction afin de rendre le sommaire dépliable branche par branche, comme dans un explorateur de fichiers (le code est visible dans wikt:MediaWiki:Gadget-SommaireDeveloppable.js — il n'est pas accessible actuellement en tant que gadget).
Ce code est inspiré de ce qui est fait sur Wikitravel, voir par exemple travel:Cluj-Napoca pour ce que nous aimerions obtenir.
Le code d'Eiku fonctionne bien sur le Wiktionnaire, malheureusement le rendu des [+] / [-] n'est pas correct (le curseur de la souris n'est par exemple pas le bon). Alors je frappe à la porte ici dans l'espoir qu'il y ait une personne intéressée à nous donner un coup de main (moi je suis une bille en javascript).
Merci mille fois d'avance. -- GaAs 13 mai 2012 à 00:28 (CEST) PS : une bonne page de test sur le Wikt est wikt:Paris.
- Ajouter une ligne «
plus.href = "#";
», comme là. - Un lien doit toujours avoir un attribut href.
- Par ailleurs, le style normal des
<ul>
sur fr-wikt ne serait-il pasinline
plutôt queblock
? - ⇨ Dr Brains ∞ Consultation ∞ 13 mai 2012 à 01:47 (CEST)
Hello :)
- Slides.
- Wikis de test.
- Les vidéos arrivent plus tard.
Pas de date pour le moment, il y a encore beaucoup de choses à discuter et tous les gadgets devront utiliser ResourceLoader ou disparaître (cf. mw:ResourceLoader/Migration_guide_(users)).
On s'oriente vers un stockage centralisé des gadgets sur mediawiki.org, dans un espace de nom « Gadget: » différent de l'actuel « MediaWiki: » et sur lequel les droits d'écriture pourront être attribués séparément des droits classique d'editinterface
.
Par ailleurs, la création, la configuration, la description et la gestion des gadgets devrait être centralisée à un seul endroit au lieu de nombreuses pages actuellement.
J'ai eu l'occasion de discuter avec Roan, qui est une des deux personnes bossant sur les gadgets, et il s'avère que l'interface de configuration des gadgets dont j'ai déjà eu l'occasion de rêver avec plusieurs d'entre vous (permettant à l'utilisateur d'activer ou désactiver des options, de régler des paramètres, sans faire une seule ligne de JavaScript) est un projet qui a existé et a été implémenté lors d'un GSOC, mais qui n'a pas été intégré. Aujourd'hui, il n'est plus facile de l'intégrer car le système des gadgets a évolué dans une autre direction, et personne n'a vraiment le temps de s'en occuper :(.
Dernière chose : les gens rêvent un peu d'une sorte d'« app store » de gadgets. Même si tout le monde doit avoir une compréhension différente de ce que ça pourrait être, je pense que c'est globablement une bonne nouvelle.
Aujourd'hui, ma barre d'outils lors de modifs n'apparaît plus (je ne peux même pas signer ce message) ! À la place, s'affichent les catégories de la page consultée. Que dois-je faire ? Merci. Je viens de taper les 4 tildes avec mon clavier Bigfan (d) 5 juin 2012 à 11:55 (CEST)
Bonjour,
Je ne suis vraiment pas sûr d’être au bon endroit, mais Aide:Caractères spéciaux (section 3.2) indique de s’adresser ici pour « demander un nouveau jeu de caractères spéciaux ». En l’occurrence, il ne s’agit pas d’un jeu complet mais d’un seul caractère : « ↦ », qu’il faudrait ajouter dans le jeu de caractères « Math », quelque part dans <span> ← → ↔ ⇐ ⇒ ⇔ </span>. En effet, ce caractère sert quasiment autant que « → » et y a donc, je pense, pleinement sa place !
En outre, le lien « Aide pour les formules » redirige vers une page qui n’existe pas/plus, meta:Aide:Formule, à corriger soit par meta:Help:Displaying a formula/fr soit par Aide:Formules TeX.
Merci. — Ethaniel (d) 5 juin 2012 à 11:34 (CEST)
- Bonjour,
- Je me permets de changer légèrement le titre pour demander l’ajout de 2 nouveaux caractères spéciaux, toujours dans « Math » : « ∌ » et « ⊅ », à inclure dans <span> ∈ ∉ ∋ ∅ ⊆ ⊇ ⊃ ⊂ ⊄ ∪ ∩ ℵ </span>. Au passage, un réordonnancement un peu plus logique des caractères de ce span serait une bonne idée.
- Merci. — Ethaniel (d) 7 juin 2012 à 14:30 (CEST)
Salut ! Je poste ici plutôt que sur Discussion Wikipédia:Historiques en couleur car cette dernière page me semble peu suivie…
Est-ce qu’il y aurait la possibilité de modifier le gadget DeluxeHistory pour que les nouvelles IPv6 soient traitées de la même manière que les IPv4 (c’est-à-dire affichées par défaut sur fond rouge) ? Pour l’instant, elles sont considérées comme des utilisateurs normaux, je suppose qu’il faut donc modifier une regexp…
Merci d’avance !
Pic-Sou 10 juin 2012 à 20:58 (CEST)
- Effectivement, ça semble détecté via
/\d{1,3}\.\d{1,3}.\d{1,3}.\d{1,3}/
que l’on pourrait remplacer par quelque chose comme/(\d{1,3}\.){3}\d{1,3}|([0-9A-F]{1,4}:){7}[0-9A-F]{1,4}/
., si je n’oublie pas de cas ? Ltrl G☎, le 10 juin 2012 à 22:26 (CEST)- Peut-être peut-on affiner la partie qui gère les IPv4 (qui matche par exemple
999.888.777.666
qui n’est pourtant pas une IP) et vérifier que les IPv6 apparaissent bien toujours sous forme développée (que MediaWiki ne met jamais1234::5678
plutôt que1234:0000:0000:0000:0000:0000:0000:5678
, la forme simplifiée n’étant pas reconnue par ta regexp…). - Cordialement --Pic-Sou 11 juin 2012 à 18:50 (CEST)
- Peut-être peut-on affiner la partie qui gère les IPv4 (qui matche par exemple
-
- (conflit d'edit) Si cela peut aider, vous trouverez des regexes à la fin du mediawiki.util.js – od†n ↗blah 11 juin 2012 à 18:58 (CEST)
- Apparemment, MW met au moins un zéro : 1234::5678, mais il faudrait confirmer ? Ltrl G☎, le 11 juin 2012 à 19:56 (CEST)
- Putain, elles sont compliquées… donc il vaut mieux utiliser
#^(((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|0?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|0?[0-9]?[0-9])|(:(:|(:[0-9A-Fa-f]{1,4}){1,7})|[0-9A-Fa-f]{1,4}(:[0-9A-Fa-f]{1,4}){0,6}::|[0-9A-Fa-f]{1,4}(:[0-9A-Fa-f]{1,4}){7}))$#
?
- c’est ça ?
- Dans ce cas, autant faire le changement, cette regexp semble plus précise.
- Cordialement --Pic-Sou 11 juin 2012 à 20:15 (CEST)
- Conformément à ce guide sur meta, les huit groupes sont toujours écrits, et les lettres sont toujours en majuscules. La regex appliquée à DeluxeHistory me semble correcte, et vous pouvez oublier le code que j'ai indiqué plus haut, qui n'est pas adapté à notre cas de figure. Désolé pour la confusion J'ajoute que si vous rencontrez une IP ne répondant pas à ces restrictions, alors c'est en fait un compte utilisateur créé à des fins probablement malveillantes. od†n ↗blah 11 juin 2012 à 20:25 (CEST)
- Est-ce qu’il ne serait pas plus pratique de détecter les IP via le fait que le lien
.mw-userlink
lie versSpécial:Contributions/…
plutôt que versUtilisateur:…
? Ça résoudrait les faux positifs (zB.999.888.777.666
évoqué plus haut — sans complexifier trop la regex), puisque l’information provient directement de MediaWiki. Ltrl G☎, le 11 juin 2012 à 20:48 (CEST)- Excellente idée Ça me semble tout à fait possible. od†n ↗blah 11 juin 2012 à 21:07 (CEST)
- Pas bête du tout ! Sinon, la regexp
#(((25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})\.){3}25[0-5]|2[0-4][0-9]|1?[0-9]{1,2}|([0-9A-F]{4}:){7}[0-9A-F]{4}#
semble fonctionner. Cordialement --Pic-Sou 11 juin 2012 à 21:12 (CEST)- Ta regex est prise en défaut sur les IPv6, car MediaWiki omet les zéros non significatifs, exemples :
:FFF:
et non:0FFF:
,:0:
et non:0000:
. Je viens de faire un peu mumuse avec des regexes de validation IP, et elles deviennent vite longues si on veut qu'elles soient exactes, ce qui est un impératif. il est d'ailleurs amusant que les IPv6 soient plus simples à valider que les IPv4. - Cela me conforte dans l'idée que la proposition de Ltrl est excellente. Quitte à dépendre des spécificités de MediaWiki (format IP vs. structure HTML de l'historique, qui peut changer), autant faire au plus simple, surtout que là ça vaut vraiment le coup. od†n ↗blah 11 juin 2012 à 23:11 (CEST)
- Ta regex est prise en défaut sur les IPv6, car MediaWiki omet les zéros non significatifs, exemples :
- Pas bête du tout ! Sinon, la regexp
- Excellente idée Ça me semble tout à fait possible. od†n ↗blah 11 juin 2012 à 21:07 (CEST)
- Est-ce qu’il ne serait pas plus pratique de détecter les IP via le fait que le lien
- Conformément à ce guide sur meta, les huit groupes sont toujours écrits, et les lettres sont toujours en majuscules. La regex appliquée à DeluxeHistory me semble correcte, et vous pouvez oublier le code que j'ai indiqué plus haut, qui n'est pas adapté à notre cas de figure. Désolé pour la confusion J'ajoute que si vous rencontrez une IP ne répondant pas à ces restrictions, alors c'est en fait un compte utilisateur créé à des fins probablement malveillantes. od†n ↗blah 11 juin 2012 à 20:25 (CEST)
- Apparemment, MW met au moins un zéro : 1234::5678, mais il faudrait confirmer ? Ltrl G☎, le 11 juin 2012 à 19:56 (CEST)
- (conflit d'edit) Si cela peut aider, vous trouverez des regexes à la fin du mediawiki.util.js – od†n ↗blah 11 juin 2012 à 18:58 (CEST)
- Dite, les gens,
- vous avez vu qu'il y a, ici, deux jolies fonctions toutes prêtes nommées
mw.util.isIPv4Address()
etmw.util.isIPv6Address()
? - ⇨ Dr Brains ∞ Consultation ∞ 12 juin 2012 à 22:08 (CEST)
J’ai commencé à réécrire le gadget : Utilisateur:Ltrlg/scripts/DeluxeHistory.js.
- J’ai intégré le test proposé plus haut pour les IP (via la regexp
/Contributions\//
sur letitle
) - J’ai rétabli les icônes (que je n’avais jamais vues avant de lire le script)
Quelles sont les améliorations supplémentaires que vous voyez ?
Bonjour. J'ai le projet de remplacer MediaWiki:Gadget-AncreTitres.js par une version générant des liens plus simples (avec un 'é' plutôt que '.C3.A9' par exemple). J'ai mis une version de test sur Utilisateur:Orlodrim/Gadget-AncreTitres.js. Les avis ou rapports de bug sont les bienvenus. Orlodrim [discuter] 12 juin 2012 à 17:19 (CEST)
- Au passage, j'ai des questions sur ResourceLoader. Il me semble que l'objectif est de charger les gadgets avec ResourceLoader. Qu'est-ce qui fait que c'est possible ou non ?
- J'ai lu mw:ResourceLoader/Migration guide (users) et mw:ResourceLoader/JavaScript Deprecations, mais ces pages décrivent l'évolution du javascript dans MediaWiki en général. Je ne comprends pas le rapport exact avec ResourceLoader. Est-ce vraiment l'application de ces recommandations qui rend un gadget compatible ? Sinon, qu'est-ce qui risque de "casser" quand on active ResourceLoader ?
- En particulier, est-ce que ma nouvelle version de Gadget-AncreTitres est compatible ? Comment puis-je le tester ?
- Merci, Orlodrim [discuter] 12 juin 2012 à 21:21 (CEST)
- (pour le premier post) Pourquoi pas, mais je ne comprends pas ce que ça change foncièrement, si ce n’est le risque de s’empêtrer (une fois de plus) entre les UTF-8, UTF-16, ISO-8859-1, etc. ?
- Cordialement --Pic-Sou 12 juin 2012 à 21:37 (CEST)
- Ce que ça change : le code wiki est plus lisible (comparer Saison_3_de_Sliders#.C3.89pisodes_16_et_17_:_Un_monde_d.27exode_.281re_et_2e_partie.29 à Saison 3 de Sliders#Épisodes 16 et 17 : Un monde d'exode (1re et 2e partie)). Risque de s'empêtrer : il n'y a que de l'UTF-8 dans MediaWiki . De toute façon, c'est transparent du point de vue de l'utilisateur. Du point de vue du programmeur, le code est bien sûr plus complexe. C'est justement pour permettre la correction d'éventuels bugs que j'ouvre une section ici. Donc si tu en trouves, n'hésites pas.
- Orlodrim [discuter] 12 juin 2012 à 22:30 (CEST)
- Salut .
- Désolé pour la réponse tardive, je manque terriblement de temps en ce moment (c'est pour la bonne cause).
- Je suis très favorable à l'amélioration mais je n'ai pas encore eu le temps de tester (il faudrait au minimum faire un essai avec ie6 ).
- Oui, il faudrait que tous les gadgets utilisent ResourceLoader ; ne serait-ce que parce que ce sera indispensable pour les gadgets 2.0. Les deux plus gros soucis qui peuvent survenir que j'ai en tête sont :
- les race conditions : il faut expliciter les dépendances entre les différents modules (de mediawiki ou entre gadgets) car on ne peut plus se reposer sur l'ordre de chargement constaté à un instant t ;
- les variables globales : toutes les variables sont locales avec ResourceLoader (pour avoir une variable globale, il faut explicitement en faire un attribut de
window
).
- Typiquement, AncreTitres utilise une variable globale (
AncreTitres
) qui ne pourra plus être modifiée de l'extérieur (dans un common.js, par exemple). - Pour tester, une méthode est de remplacer un gadget chargé par RL par celui que tu as modifié, à la volée entre wp et ton navigateur. Perso je fais ça sous Firefox avec une version de HTTPSEverywhere que j'ai complètement détournée pour l'occasion, mais il y a peut-être des outils faits exprès.
- Amicalement — Arkanosis ✉ 27 juin 2012 à 03:07 (CEST)
Salut, c'est encore moi. J'aimerais savoir s'il est possible d'écrire un programme javascript de telle sorte que ne soit chargé par le client que le code nécessaire. Euh, disons que j'ai un code javascript (qui s'appelle wikt:MediaWiki:Gadget-CreerNouveauMot.js), qui pourrait avoir un million de lignes, si je le voulais (mais je ne le veux pas). Néanmoins, parmi ce million de lignes, seulement une petite part est nécessaire à un moment donné, cela dépend de ce que l'utilisateur a coché dans la boiboite.
Donc je vous appelle à l'aide : comment faire pour que le client ne charge que la partie utile, après avoir validé la boiboite ? --GaAs (d) 26 juin 2012 à 22:15 (CEST)
- Salut ,
- Il faut mettre le code facultatif dans un autre fichier et ne charger ce ficher qu'au moment où tu sais que c'est nécessaire (typiquement, avec un
mw.loader.load()
dans le fichier principal). - À toi de bien faire la balance entre l'économie en données transférées et le coût d'une requête HTTP supplémentaire.
- Amicalement — Arkanosis ✉ 27 juin 2012 à 03:17 (CEST)
Bonjour ! Je suis à peu près une bille en programmation. J'ai crée un « truc » pour importer des images rapidement, prenons par exemple son utilisation sur Projet:Biologie/Illustrations/Mammifères/Illustrations of Indian Zoology 1.
Pour la première case, les champs qui vont bien ont été remplis, le « truc » me fournit un lien d'import, me remplit le nom de destination du fichier grâce à &wpDestFile=, ainsi que le formulaire grâce à &wpUploadDescription=.
Pour la deuxième case, quelqu'un avait déjà uploadé le dessin mais la description gagnerait à être mise à jour. Comment faire pour que le contenu que j'inclus via &wpUploadDescription= pour un simple import serve dans ce cas de texte de remplacement à toute la page qui existe déjà (commons:File:Thomas Hardwicke02.jpg) ?
Pas la peine regarder le code, sinon, c'est du bricolage immonde Totodu74 (devesar…) 3 juillet 2012 à 17:01 (CEST)
- Hum, je suis au mauvais endroit ? Totodu74 (devesar…) 12 juillet 2012 à 20:45 (CEST)
- Il n'y a pas de solution magique, tu ne peux pas faire à la fois une importation et une modification du texte si l'image existe déjà. Le moyen le plus simple que j'imagine est le suivant :
- Bricole encore le modèle Utilisateur:Laflhor/Pokédex/Cadre type pour qu'il ajoute un lien vers la page d'édition avec un paramètre "newtext" contenant le texte de remplacement. Par exemple http://commons.wikimedia.org/w/index.php?title=File:Thomas_Hardwicke02.jpg&action=edit&newtext===%20Description%20==%0DÀ%20compléter
- En fait, le paramètre "newtext" n'a aucun effet. Mais tu peux inclure une fonction dans Commons:User:Totodu74/common.js qui, si le paramètre est donné, remplace le contenu du formulaire d'édition par la valeur de ce paramètre (recopie Commons:User:Orlodrim/common.js).
- Orlodrim [discuter] 19 juillet 2012 à 14:00 (CEST)
- Impeccable, merci beaucoup pour le truc tout prêt Bon j'ai des urlencode qui doivent pas aller car des espaces sont remplacées par des plus (lors d'une modification, pas d'un import), mais je vais regarder ça. Totodu74 (devesar…) 20 juillet 2012 à 02:13 (CEST)
- Il n'y a pas de solution magique, tu ne peux pas faire à la fois une importation et une modification du texte si l'image existe déjà. Le moyen le plus simple que j'imagine est le suivant :
J'annule ma question, j'en enfin compris.
Ceci étant, ne serait-ce pas possible de changer le bête et incompréhensible acronyme mpa qui apparait quand on l'utilise, pour le remplacer par, par exemple, Scriptus avec le lien du gadget ? Merci. --Ork98 (Blabla) 12 juillet 2012 à 17:31 (CEST)