Discussion MediaWiki:Gadget-QPreview.js

(Redirigé depuis Discussion MediaWiki:JSScripts/QPreview)
Dernier commentaire : il y a 9 ans par Juanes852 dans le sujet Mise à jour de la notice

Notes sur le script modifier

1er mai 2007
  • la prévisualisation du texte est fournie directement par le serveur, mais pas les catégories, ni les interwikis
  • les interwikis sont émulés en local, d'ailleurs ça ne marche pas quand ils sont tous sur une ligne unique, mais ça ne devrait pas arriver
  • je n'ai mis que les noms des interwikis des principales Wikipédia (+10 000 articles) pour ne pas surcharger le script, mais je n'ai pas testé pour voir si ça prenait beaucoup plus de temps avec toutes les langues (chargement + exécution)
  • les catégories ne sont pas affichées : il faudrait faire un deuxième appel au serveur pour vérifier si une catégorie existe

~ Seb35 [^_^] 1 mai 2007 à 18:06 (CEST)Répondre

20 juin 2007
  • les catégories présentes dans la page sont affichées (par un 2e appel au serveur), mais pas celles inclues dans des modèles.

~ Seb35 [^_^] 20 juin 2007 à 20:07 (CEST)Répondre

4 août 2007
  • l'ordre d'inclusion des catégories est préservé
  • résolution de qq bugs concernant les interwikis et catégories

~ Seb35 [^_^] 4 août 2007 à 16:29 (CEST)Répondre

Erreur sur les interwikis modifier

Bonjour, il y a une erreur dans ce script. Dans le traitement des interwikis, le script plante si les interwikis n'existent pas. Lorsque l'on modifie juste une section par exemple. Il faudrait rajouter :

"if(!result) {}"

comme par exemple :

// Traitement des interwikis
 qPreviewIw = '';
 reg3 = new RegExp('\\|'); reg4 = new RegExp('(.*)]'); reg5 = new RegExp(';(.*)');
 regexIw = new RegExp('\\[\\[(\\w{2,12}) *:(.*)\\]\\]', 'gi');
 result = qPreviewTextbox.match(regexIw);

 if(!result) {

   for(i=0;i<result.length;i++)
   {
      r1 = result[i].replace(regexIw, '$1');
      r2 = result[i].replace(regexIw, '$2').replace(reg1, '_');
      r3 = qPreviewLang.search(RegExp('\\|'+r1+'(?:;|\\|)', 'i'));
      if(r3 != -1) { r3 = qPreviewLang.substr(r3+1).replace(reg3,']'); r3 = reg4.exec(r3)[1]; qPreviewIw += '<li class="interwiki-'+r1+'"><a href="http://'+r1+'.wikipedia.org/wiki/'+r2+'">'+(r3.indexOf(';')!=-1 ? reg5.exec(r3)[1] : 'Langue \''+r1+'\'')+'</a></li>'; }
   }
   document.getElementById('p-lang').getElementsByTagName('ul')[0].innerHTML = qPreviewIw;
   if(qPreviewIw) document.getElementById('p-lang').style.display = 'block';
      else document.getElementById('p-lang').style.display = 'none';
 }

Je l'aurai bien fait moi-même mais il me semble que la page est protégé en écriture. Sinon c'est du super boulot, tous ces scripts Javascript. Merci --Pinpin 27 juillet 2007 à 17:22 (CEST)Répondre

Ok, c'est résolu. Je n'avais pas compris où était exactement le bug (quel comportement) jusqu'à ce que je l'expérimente par hasard ce matin, ce qui m'a rappelé ta remarque. ~ Seb35 [^_^] 4 août 2007 à 16:29 (CEST)Répondre
Ah merci car j'utilise firebug (une extension firefox) qui me ressortait sans arrêt des erreurs Javascript. --Pinpin 15 août 2007 à 16:45 (CEST)Répondre

Un bug? modifier

Bonjour! J'ai ajouté ce script, mais lorsque prévisualise toute une page, les liens interwikis entrent en conflits (voir capture d'écran). J'utilise IE7. Merci et au plaisir, Antaya - 15 novembre 2007 à 13:46 (CET)Répondre

J'ai pas réussi à reproduire ce que tu as pris en photo avec IE7, mais à mon avis ça peut venir de l'utilisation de innerHTML. ~ Seb35 [^_^] 11 janvier 2008 à 17:56 (CET)Répondre

Qpreview et Firefox 3 bêta modifier

Bonjour, ce script ne semble plus fonctionner avec Firefox 3. Ce n'est pas urgent mais c'est juste pour prévenir afin d'anticiper la sortie de la version finale de Firefox.   Il faudrait peut être aussi qu'une autre personne essaye pour confirmer. --Pinpin (d) 11 février 2008 à 14:28 (CET)Répondre

MediaWiki:Edit form incomplete modifier

Hi, is it possible to set it to show MediaWiki:Edit form incomplete with other text. for eample it says We are in Qprewive 28 janvier 2012 à 11:24 (CET)

also it doesn't set focus on preveiw text (mediawiki's preveiw)Reza1615 (d) 28 janvier 2012 à 11:31 (CET)Répondre

Mise à jour de la notice modifier

Bonjour Seb35,

Avec l'intégration de Wikidata, QPreview n'affiche plus les interwikis. Il faudrait donc mettre à jour en ce sens les commentaires situés dans MediaWiki:Gadget-QPreview.js ? 

Par ailleurs, j'ai téléverser le fichier File:QPreview JS 2014.png. M'autorises-tu à demander le renommage de File:QPreview JS.png en File:QPreview JS 2007.png afin de pouvoir conserver un historique ? 

Après avoir terminé de mettre à jour Projet:JavaScript/Notices/QPreview, dans MediaWiki:Gadget-QPreview il faudrait peut-être plutôt mettre

''Quick Preview'' : prévisualiser rapidement sans devoir recharger la page (ajout d'un bouton « Aperçu ») <small>[[[Projet:JavaScript/Notices/QPreview|documentation]]]</small>. 

»

Merci par avance,

Bien cordialement,

— Juanes852 (me contacter) le 26 juin 2014 à 21:09 (CEST)Répondre

Bonjour Juanes852,
Ce gadget aurait effectivement besoin d’une petite mise à jour pour les interwikis voire le transformer en jQuery, mais je ne suis pas sûr d’avoir le temps rapidement (et la motivation – disons que jusqu’à récemment je ne pensais pas que ce gadget était utilisé, et puis j’ai vu des stats sur Meta (5000 utilisateurs au total sur 10 WPs), donc je vais essayer de remonter ça dans ma todo-liste). Si tu veux modifier des trucs dans le code ou la doc ou autre, n’hésites pas. Très bien pour la mise à jour de l’image et de la description !
(par contre, je ne suis plus admin, donc je ne peux pas modifier moi-même les fichiers MediaWiki:)
Merci ! ~ Seb35 [^_^] 28 juin 2014 à 12:09 (CEST)Répondre
 Utilisateur:Seb35, je te remercie pour ta réponse. À l'heure d'aujourd'hui, ton gadget est très utile car l’aperçu rapide est encore expérimental. Cependant, le développement de cette nouvelle fonctionnalité me semble rendre moins pertinent la mise à jour de MediaWiki:Gadget-QPreview.js. — Juanes852 (me contacter) le 29 juin 2014 à 15:08 (CEST)Répondre
Revenir à la page « Gadget-QPreview.js ».