Wiktionnaire:Questions techniques

Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.
Aller à : navigation, rechercher
Raccourci [+]
WT:QT

Sur cette page toute question d'ordre technique du Wiktionnaire pourra être abordée :

  • Écriture de modèles et passage à Lua
  • Javascripts et gadgets
  • Feuilles de style css
  • Bots et autres outils sur le Toolserver et le Labs
  • Mediawiki et bugs rencontrés

Suivez également les journaux techniques.


Pages techniques spécialisées :

Pages d’intérêt :

Questions de juillet 2014


Gadgets pour l'Éditeur Visuel (2)[modifier | modifier le wikitexte]

Salut. Je rame tjs sur le sujet, mais j’ai fait un minuscule tout petit embryonnaire progrès :

Cela me permet désormais d’afficher hello world quand je clique sur "modifier".Mort de rire il s’agit d’un rire d’autodérisionTriste

Mais j’ai vraiment besoin d’aide pour faire le pas suivant : modifier le comportement des boutons de VE. Alors, si vous pouviez m’aider… --GaAs 8 juillet 2014 à 18:30 (UTC)

Je réalise que je prends le truc par le mauvais bout. Maintenant que j’ai réalisé ça, je devrais progresser. --GaAs 14 juillet 2014 à 16:27 (UTC)

La catégorisation des javascripts bugge[modifier | modifier le wikitexte]

Bonjour,

Certains scripts semblent ne pas se catégoriser normalement dans Catégorie:JavaScript du Wiktionnaire, par exemple MediaWiki:Gadget-CreerNouveauMot.js et ses sous-pages (ex: MediaWiki:Gadget-CreerNouveauMot.js/it.js ne se catégorise pas dans Catégorie:Sous-page de CreerNouveauMot) ou encore MediaWiki:Gadget-translation editor.js entre autres.

Auriez-vous une idée d’où ça peut venir ? — Automatik (discussion) 24 juillet 2014 à 23:16 (UTC)

(Le bogue a disparu depuis. — Automatik (discussion) 20 août 2014 à 18:32 (UTC))

Questions d’août 2014


Placeholder et anciens navigateurs[modifier | modifier le wikitexte]

Bonjour,

Est-ce qu'il y aurait des développeurs qui auraient les moyens de développer sur des navigateurs anciens (comme IE8 et versions antérieures ou éventuellement Iceweasel,…) ?

J’explique le besoin éventuel :

Suite à une suggestion de Darkdadaah dans Wiktionnaire:Wikidémie/juillet_2014#Remarques, j’ai ajouté depuis un texte par défaut dans les champs de l’outil d’ajout de traductions, en utilisant l’attribut HTML adéquat, "placeholder".

Mais il subsiste un problème pour certains navigateurs, où cet attribut placeholder n’est pas géré et où il est en plus considéré comme valeur par défaut (ce qui devrait être le rôle du champ "value" uniquement). J’ai donc modifié le gadget pour ne pas prendre en compte les valeurs des différents champs lorsqu’elles sont égales à la valeur du placeholder, sauf pour les champs de noms de langue et de traduction (car une traduction "traduction" pourrait exister potentiellement).

Mais j’aimerais bien savoir ce qu’on voit exactement sous ces navigateurs et si en plus un volontaire veut bien tester des morceaux de codes pour gérer la compatibilité sur ces navigateurs… — Automatik (discussion) 20 août 2014 à 19:26 (UTC)

Le support d'anciens navigateurs est une assez lourde tache (peu d'utilisateurs et des bricolages spécifiques), aussi est-il plus logique de ne regarder que les navigateurs actuellement supportés. En d'autres termes, on ne devrait pas travailler sur les navigateurs antérieurs à IE7 (IE7 et IE8 sont eux-mêmes voués à un abandon imminent).
Quant à Iceweasel, n'est-ce pas exactement comme Firefox ?
Sinon pour la question technique, voir par exemple par ici. — Dakdada 21 août 2014 à 12:45 (UTC)
J’avais déjà essayé ce code de hagenburger [1], sans succès cependant. Mais c’est peut-être une question de temps (de cache…). C’était pour éviter ce genre de modif [2] qui est arrivé plusieurs fois. Dans la même modif., on voit que trad-- est utilisé, à tort évidemment. J’aimerais bien savoir d’où ça vient, mas n’ayant pas de navigateur assez ancien sous la main, je vais effectivement ne pas m’attarder davantage sur la gestion des anciens navigateurs. — Automatik (discussion) 21 août 2014 à 12:53 (UTC)
PS : non, Iceweasel n’est pas comme Firefox justement (selon cette discussion). — Automatik (discussion) 21 août 2014 à 12:55 (UTC)
PS2 : En fait si, c’est plus une question de version du navigateur. — Automatik (discussion) 26 août 2014 à 01:18 (UTC)

Saut de ligne avec replace.py[modifier | modifier le wikitexte]

Comme précédemment expliqué à JackPotte je cherche à retirer le bandeau {{vérifier création automatique}} des articles créé par PiedBot qui ont été modifié par un humain depuis l’apposition du bandeau. J’ai une liste de 184 articles depuis le dernier dump. J’ai essayé de le faire avec replace.py en utilisant la commande suivante

python core/pwb.py core/scripts/replace.py "{{vérifier création automatique}}" "" -file:bandeau_a_enlever.txt

Ça marche bien mais le problème c’est que ça laisse une ligne vide au début de l’article. J’ai essayé d’ajouter un « \n » après « {{vérifier création automatique}} » mais là le script ne trouve plus rien. Bref, vous n’auriez pas une idée de comment supprimer {{vérifier création automatique}} et la ligne du début ? Pamputt [Discuter] 22 août 2014 à 19:06 (UTC)

Essaye avec -regex "\{\{vérifier création automatique\}\}\r\n" "". — Dakdada 22 août 2014 à 19:25 (UTC)
Ça fonctionne pas non plus ; l’expression n’est pas trouvée. Pamputt [Discuter] 22 août 2014 à 19:37 (UTC)
Sans oublier le -regex ? Je viens de tester chez moi, et ça tourne. Tu fais sur quel OS ? — Dakdada 22 août 2014 à 19:42 (UTC)
Je fais ça sous Linux. J’ai bien tapé « python core/pwb.py core/scripts/replace.py -regex "\{\{vérifier création automatique\}\}\r\n" "" -file:bandeau_a_enlever.txt ». Chez moi aussi ça tourne mais j’ai le message suivant pour tous les articles de la liste
No changes were necessary in défaisance
alors que le bandeau est bien présent dans défaisance. Si tu tapes « python core/pwb.py core/scripts/replace.py -regex "\{\{vérifier création automatique\}\}\r\n" "" -page:défaisance</nowiki>, le script fait le remplacement ? Pamputt [Discuter] 22 août 2014 à 19:51 (UTC)
Ça marche, mais pas sur défaisance qui a déjà été changée. Par exemple hétéroduplex. — Dakdada 22 août 2014 à 20:41 (UTC)
Comprends pas. Tu es sous Linux également ? Pamputt [Discuter] 22 août 2014 à 21:29 (UTC)
Ha, ça fonctionne. Mais j’ai du enlever le \r. J4avais pas fait gaffe qu’il était là. Donc sans lui, ça fonctionne bien. Je garde la commande sous le coude. Merci Sourire Pamputt [Discuter] 22 août 2014 à 21:40 (UTC)

Passage de NavFrame à mw-collapsible[modifier | modifier le wikitexte]

J'ai commencé à changer les NavFrame vers mw-collapsible : Modèle:fi-décl. Le but est de se débarasser du surplus de code occupé par les NavFrame dans Mediawiki:Common.js et Mediawiki:Common.js.

Le plus compliqué sera de migrer {{(}} puisqu'il a de nombreux paramètres, très peu utilisés (67 modèles, contre des milliers d'articles qui l'utilisent en mode défaut). Le mieux serait de réserver {{(}} aux articles, et d'utiliser un modèle souple {{cadre déroulant}} si on veut des cadres plus compliqués. — Dakdada 24 août 2014 à 21:40 (UTC)

On a déjà {{boîte déroulante}} si jamais. — Automatik (discussion) 24 août 2014 à 22:05 (UTC)
Voilà oui (même si ces boîtes-là sont fermées par défaut). — Dakdada 25 août 2014 à 08:03 (UTC)
Par contre le rendu laisse parfois à désirer : hiirihaukka. Le titre semble de longueur fixe (à comparer avec haukka). Il faut utiliser l’ascenseur horizontale pour avoir la fin des déclinaisons à droite (testé sous firefox et IE) et la boîte est déroulée par défaut (ce qui n’était pas le cas auparavant et qui est assez pénible). — Unsui Discuter 25 août 2014 à 09:55 (UTC)
J'ai changé en une largeur dynamique (min-width -> max-width), c'est mieux ? Sinon il me semble que c'était déroulé par défaut de toute façon (sauf les notes) ? — Dakdada 25 août 2014 à 15:16 (UTC)
Oui c'est bien mieux, merci. JackPotte ($) 25 août 2014 à 19:46 (UTC)
C’est en effet bien mieux. Merci. Par contre les boîtes étaient bien fermées auparavant. (tout du moins celles gérées par ce modèle - c’est même la raison pour laquelle je l’avais modifié). — Unsui Discuter 25 août 2014 à 21:46 (UTC)
On peut facilement les enrouler par défaut en ajoutant la classe mw-collapsed juste après mw-collapsible. Mais ne confondrais-tu pas avec un autre modèle ? Car apparemment ta modif ne fermait pas la boite par défaut [3] et quand on revient à la version d’avant Dakdada, la boite n’est pas enroulée par défaut non plus [4]. Mais ça n’empêche que si il faut l’enrouler alors enroulons-la. — Automatik (discussion) 25 août 2014 à 21:51 (UTC)
Tu as raison : ce n’est pas ma modif qui fermait la boîte. Ce que j’ai fait, c’est que j’ai commencé à modifier les modèles de déclinaisons du finnois pour qu’ils appellent Modèle:fi-décl. Car ce modèle tenait compte de l’option "fermer les boîtes déroulantes par défaut" (exemple: Modèle:fi-décl-valo) ]] alors que les anciens modèles tels que Modèle:fi-décl-sairas n’utilisaient pas de boîte. Il semble donc que maintenant, cette option n’ait pas d’action sur le nouveau modèle. — Unsui Discuter 26 août 2014 à 09:21 (UTC)
Si j’ai bien compris tu utilises le gadget cacheBoites, j’ai donc fait en sorte qu'il cache aussi les boites utilisant le nouveau code pour les enrouler/dérouler. Cela n’empêcherait pas de les fermer par défaut si besoin… — Automatik (discussion) 26 août 2014 à 14:29 (UTC)
La classe mw-collapsed ne suffit pas, car elle est ajoutée après que le menu déroulant soit installé. Il faudrait en fait appuyer sur le bouton automatiquement (si l'élément n'est pas déjà caché). — Dakdada 26 août 2014 à 15:01 (UTC)
Chez moi elles se ferment bien par défaut (et c’est bien qu’elles soient ajoutées après l’installation des boites déroulantes non ?). Mais je te laisse opérer pour que ça marche dans d’autres situations. — Automatik (discussion) 26 août 2014 à 15:32 (UTC)
Est-ce que chez toi la boîte dans {{fi-décl}} se ferme ? — Dakdada 26 août 2014 à 19:11 (UTC)
Avec le gadget CacheBoites activé, oui, elle se ferme bien. — Automatik (discussion) 26 août 2014 à 19:39 (UTC)
Oui, maintenant elles se ferment bien avec le gadget CacheBoites activé. Merci à vous deux. — Unsui Discuter 26 août 2014 à 19:53 (UTC)

Nettoyage de Commons.js[modifier | modifier le wikitexte]

J'ai enlevé de Common.js des fonctions désuettes que jQuery remplace avantageusement. J'ai pris soin de remplacer les occurrences de ces fonctions dans divers gadgets et scripts javascripts. Faites-moi signe si vous voyez des choses qui ne marchent pas (notamment pour les gadgets).

Je vais continuer à nettoyer et réécrire le code en jQuery quand c'est possible, s'il n'y a pas de remarques contre. NB : le nettoyage précédent à permis de passer de 17 Ko à 13 Ko. — Dakdada 25 août 2014 à 22:12 (UTC)

Notification Darkdadaah : j'ai beau vider mon cache, y a des crochets à la fin de chaque ligne de définition : []. JackPotte ($) 25 août 2014 à 22:41 (UTC)
Pas chez moi (Firefox, avec Vector comme avec Monobook). — Automatik (discussion) 25 août 2014 à 22:54 (UTC)
fait. Ça venait de MediaWiki:Gadget-HiddenQuote.js qui utilisait get/setCookie sans que le moteur de recherche ne le voit. Je ne peux donc pas m'y fier. — Dakdada 26 août 2014 à 07:13 (UTC)
Bon puisque le moteur ne sert à rien, j'ai dû en rater d'autres, donc je remet les fonctions en attendant d'être sûr d'avoir éradiqué ces trucs (recherche dans le dump directement).
@JackPotte : si tu vois des problèmes, dis-moi quels gadgets tu utilises et ce que dis ta console de debug. — Dakdada 26 août 2014 à 07:19 (UTC)
RAS ce matin. Sinon je me doutais bien que c'était HiddenQuote qui affichait [] au lieu de [exemples ▼] mais j'ai posté mon alerte en quatrième vitesse avant de dormir. N'as-tu pas un compte sur un autre navigateur qui a tout coché ? JackPotte ($) 26 août 2014 à 10:39 (UTC)
Notification Darkdadaah : HiddenQuote, est de nouveau HS aujourd'hui, même après vidage de cache. JackPotte ($) 28 août 2014 à 18:21 (UTC)
Chez moi ça marche. Quel navigateurs/OS as-tu essayé, et as-tu essayé de décocher/recocher le gadget ? — Dakdada 28 août 2014 à 19:23 (UTC)
Chez moi ça marchait aléatoirement à cause de l’erreur "mw.cookie is undefined", j’ai donc mis le module mediawiki.cookie comme dépendance du gadget ce qui semble régler le problème. — Automatik (discussion) 28 août 2014 à 19:50 (UTC)
J’ai du mal à comprendre par contre pourquoi certains mw.cookie.get() n’ont pas d’équivalents en .set(). — Automatik (discussion) 28 août 2014 à 19:52 (UTC)
Merci, pas le temps de creuser en parallèle mais les setters manquants sont probablement réservés au PHP. JackPotte ($) 28 août 2014 à 20:04 (UTC)
Au pire on pourrait utiliser la version jQuery $.cookie(), c'est sensé être équivalent. — Dakdada 28 août 2014 à 20:18 (UTC)

user-fixes.py (Pywikibot)[modifier | modifier le wikitexte]

Bonjour,

Y a-t-il un moyen d’accéder au titre de la page depuis le dictionnaire user-fixes utilisé par replace.py ? — Automatik (discussion) 27 août 2014 à 16:35 (UTC)

Pas que je sache : c'est sensé être uniquement basé sur le texte. — Dakdada 27 août 2014 à 16:56 (UTC)