Discussion module:exemples

Le contenu de la page n’est pas pris en charge dans d’autres langues.
Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.

Coordination des évolutions[modifier le wikicode]

Paramètre lang[modifier le wikicode]

Salut Notification @Darmo117, @Lepticed7 et @Thibaut120094 :. Je voulais m’occuper de faire un alias au paramètre lang avec langue. Et autant avec du wikicode classique ça aurait été trivial, autant là je vois qu’une solution plutôt sophistiqué à été mis en place. Du coup, histoire de pas tout casser par inadvertance je préfère passer d’abord par la page de discussion. D’autant que dans l’immédiat je n’ai pas le temps de me plonger dans le code de l’ensemble des modules mis en dépendance.

Aussi si vous avez des suggestions sur la manière d’implémenter cela correctement et rapidement, n’hésitez pas. Si le faire directement vous paraît plus rapide, n’hésitez pas, mais svp pensez à me notifier pour que j’analyse au moins l’implémentation et puisse en tirer enseignement.

Remarques sur l’API[modifier le wikicode]

Sinon, au passage quelques remarques :

  • le nom du module est en français et au pluriel, mais le nom des fonction en anglais au singulier
    • est-ce une convention établie ?
    • pour ma part j’apprécie le principe de moindre surprise, y compris dans le fait d’avoir une nomenclature cohérente
  • en l’état je constate pas mal d’emploi de termes français au milieu d’une majorité d’anglais
    • pour ma part il me paraît plus pertinent de choisir une seule langue et d’y coller
    • ok pour passer tout en français ou anglais, et je veux bien aider
  • le nom des fonctions sont probablement améliorable
    • d’un point de vu API exemples:example je le substiturais volontier par une alternative comme
      • Citation:générer, cela dit les modules Lua ne permettent pas des noms de fonction en Unicode, donc ça donnerait Citation:generer ce qui est pas extrêmement satisfaisant à mon avis
      • un équivalent anglais
        • Citation:generate
        • Quote:[[en:gig#Verb_2|]]
    • je suis pas pas fan du préfixage par un simple tiret bas pour les fonctions internes/privés. Il y a pas mal d’alternatives possibles
      • ne rien préfixer, car some_scope.identifier peut sans problème cohabiter avec identifier
      • utiliser un préfixe idoine pour former le terme correspondant, par exemple endo- pour former endogenerate
      • utiliser une variable d'encapsulation spécifique privé.générer, inner.generate, nub.gig
    • p est conventionnel certes, mais je préfère les identifieurs moins ésotérique, là aussi les options alternatives sont nombreuses:
      • package
      • public
      • out ( To come or go out; to get out or away; to become public. )
      • up (Available; made public.)

— message non signé de Psychoslave (d · c)

Salut, pour plus d’info sur les conventions de code établies, tu peux voir le Projet:Modules et WT:Modules. Concernant la langue à utiliser pour le code c’est l’anglais. Pour toutes les remarques concernant les normes d’écriture, elles ont été établies par la communauté locale et MediaWiki (les deux liens précédents y font référence). Le nom p est celui utilisé par tous les wiki, MediaWiki et la console de débuggage. Concernant l’implémentation, c’est moi qui m’en charge. Je ne renommerai pas les paramètres du modèle/module sans accord préalable de la communauté. Darmo (Viendez parler !) 31 mai 2021 à 17:13 (UTC)[répondre]
Ok, merci pour les liens.
Le nom p est celui utilisé par tous les wiki, MediaWiki et la console de débuggage.
Certes, c’est utilisé tout au moins dans le manuel de référence Lua de Mediawiki, et la console de débuggage. Ça n’en fait pas nécessairement le choix le plus heureux en terme de lisibilité du code. Au passage le nom de la variable en question n’a aucune influence pour les appels au modules, même dans le debugger, =p fonctionne même si le module termine par return not_p_at_all. Sourire
Concernant l’implémentation, c’est moi qui m’en charge.
Je ne saisis pas, tu souhaites te charger de l’implémentation de quoi ?
Psychoslave (discussion) 31 mai 2021 à 21:52 (UTC)[répondre]
En effet, on pourrait techniquement renommer la variable, mais comme je l’ai déjà dit, c’est une convention suivie sur tous les projets. Faire différamment serait contre-productif. Quand je disais « je m’en charge », je parlais des éventuelles modifications à apporter au module. Darmo (Viendez parler !) 31 mai 2021 à 22:08 (UTC)[répondre]
Je serais étonné que voir un rapport d’analyse de tous les modules déployé qui permette de confirmer une telle affirmation. Mort de rire
Cela dit, ne te fourvoies pas, je ne t’empêcherais pas de continuer à perpétuer la tradition ésotérique du p. Sourire Psychoslave (discussion) 31 mai 2021 à 22:24 (UTC)[répondre]

Amélioration des commentaires[modifier le wikicode]

Salut @Darmo117. Suite au rebours de la modification qui visait essentiellement à rendre les commentaires plus pertinents, pourrais-tu expliquer ta démarche, ce qui te semblait ne pas convenir, et quelles procès tu préférais que nous suivions pour collaborer efficacement ? Psychoslave (discussion) 1 juin 2021 à 11:46 (UTC)[répondre]

Cf. ma réponse sur Discussion Wiktionnaire:Modules#Diversité des valeurs de retour, renvoie d’erreur, quelle convention? Darmo (Viendez parler !) 1 juin 2021 à 12:24 (UTC)[répondre]
Du coup pour reprendre la partie de ta réponse qui concerne ce module ici:

Faut que je regarde quelle est la convention dans la communauté Lua pour noter les cas d’erreur. Pour l’instant j’ai juste mis une petite phrase dans le corps de la doc. Pour le nom de la fonction, j’ai revert, format ne me parait pas plus clair, format_example me semble plus adapté.

Faut penser contexte quand même. Là tu propose comme identifieur Exemples:format_example. Ça me paraît relever de la redondance par rapport à ce qui à mon avis serait plus intelligible en tant que Quote:format. Sourire Psychoslave (discussion) 1 juin 2021 à 16:56 (UTC)[répondre]
@Darmo117, au cas où tu aurais loupé cela, je suis preneur de ton retour sur ce point 🙏🏻 Psychoslave (discussion) 3 juin 2021 à 08:49 (UTC)[répondre]
Salut, je préfère le nom le plus explicite, au moins ya pas d’ambigüités. D’autant plus que si la fonction est utilisée dans un autre module, ça permet de comprendre ce que fait la fonction juste avec son nom. format est trop générique et risque de provoquer de la confusion si plusieurs modules définissent des fonctions avec ce même nom. Darmo (Viendez parler !) 3 juin 2021 à 17:22 (UTC)[répondre]

Je propose d'ajouter une condition sur les namespaces pour ne rien retourner au lieu de la catégorie exemples manquants, quand on n'est pas dans l'espace principal (seule une ébauche d'annexe appel ce modèle, et aucun thésaurus). JackPotte ($) 7 janvier 2022 à 10:29 (UTC)[répondre]

Tiens, il me semblait avoir fait en sorte que ça catégorise que dans les espaces de contenu… Je vais vérifier ça. Et puis au-delà de ça, ce modèle ne devrait de toute façon pas apparaitre sur la page d’accueil. Darmo (Viendez parler !) 7 janvier 2022 à 14:22 (UTC)[répondre]
Merci. JackPotte ($) 7 janvier 2022 à 14:36 (UTC)[répondre]