CINXE.COM
Discussion module:Outils — Wikipédia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="fr" dir="ltr"> <head> <meta charset="UTF-8"> <title>Discussion module:Outils — Wikipédia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )frwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":[",\t."," \t,"],"wgDigitTransformTable":["",""], "wgDefaultDateFormat":"dmy","wgMonthNames":["","janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],"wgRequestId":"5d2c0ba2-a328-4617-aca7-ff5975094046","wgCanonicalNamespace":"Module_talk","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":829,"wgPageName":"Discussion_module:Outils","wgTitle":"Outils","wgCurRevisionId":197310599,"wgRevisionId":197310599,"wgArticleId":7396558,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":[],"wgPageViewLanguage":"fr","wgPageContentLanguage":"fr","wgPageContentModel":"wikitext","wgRelevantPageName":"Discussion_module:Outils","wgRelevantArticleId":7396558,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":true,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0, "wgVisualEditor":{"pageLanguageCode":"fr","pageLanguageDir":"ltr","pageVariantFallbacks":"fr"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":20000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgDiscussionToolsFeaturesEnabled":{"replytool":true,"newtopictool":true,"sourcemodetoolbar":true,"topicsubscription":false,"autotopicsub":false,"visualenhancements":false,"visualenhancements_reply":false,"visualenhancements_pageframe":false},"wgDiscussionToolsFallbackEditMode":"visual","wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":true,"wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled": false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","oojs-ui-core.styles":"ready","oojs-ui.styles.indicators":"ready","mediawiki.widgets.styles":"ready","oojs-ui-core.icons":"ready","ext.pygments":"ready","ext.discussionTools.init.styles":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.pygments.view","site","mediawiki.page.ready","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ArchiveLinks","ext.gadget.Wdsearch","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap", "ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.discussionTools.init","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.checkUser.clientHints"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=fr&modules=ext.discussionTools.init.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=fr&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=fr&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Discussion module:Outils — Wikipédia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//fr.m.wikipedia.org/wiki/Discussion_module:Outils"> <link rel="alternate" type="application/x-wiki" title="Modifier" href="/w/index.php?title=Discussion_module:Outils&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipédia (fr)"> <link rel="EditURI" type="application/rsd+xml" href="//fr.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://fr.wikipedia.org/wiki/Discussion_module:Outils"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.fr"> <link rel="alternate" type="application/atom+xml" title="Flux Atom de Wikipédia" href="/w/index.php?title=Sp%C3%A9cial:Modifications_r%C3%A9centes&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="ext-discussiontools-replytool-enabled ext-discussiontools-newtopictool-enabled ext-discussiontools-sourcemodetoolbar-enabled skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-829 ns-talk mw-editable page-Discussion_module_Outils rootpage-Discussion_module_Outils skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Aller au contenu</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Menu principal" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Menu principal</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Menu principal</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">déplacer vers la barre latérale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">masquer</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Wikip%C3%A9dia:Accueil_principal" title="Accueil général [z]" accesskey="z"><span>Accueil</span></a></li><li id="n-thema" class="mw-list-item"><a href="/wiki/Portail:Accueil"><span>Portails thématiques</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Sp%C3%A9cial:Page_au_hasard" title="Affiche un article au hasard [x]" accesskey="x"><span>Article au hasard</span></a></li><li id="n-contact" class="mw-list-item"><a href="/wiki/Wikip%C3%A9dia:Contact"><span>Contact</span></a></li> </ul> </div> </div> <div id="p-Contribuer" class="vector-menu mw-portlet mw-portlet-Contribuer" > <div class="vector-menu-heading"> Contribuer </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-aboutwp" class="mw-list-item"><a href="/wiki/Aide:D%C3%A9buter"><span>Débuter sur Wikipédia</span></a></li><li id="n-help" class="mw-list-item"><a href="/wiki/Aide:Accueil" title="Accès à l’aide"><span>Aide</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikip%C3%A9dia:Accueil_de_la_communaut%C3%A9" title="À propos du projet, ce que vous pouvez faire, où trouver les informations"><span>Communauté</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Sp%C3%A9cial:Modifications_r%C3%A9centes" title="Liste des modifications récentes sur le wiki [r]" accesskey="r"><span>Modifications récentes</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Wikip%C3%A9dia:Accueil_principal" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipédia" src="/static/images/mobile/copyright/wikipedia-wordmark-fr.svg" style="width: 7.4375em; height: 1.125em;"> <img class="mw-logo-tagline" alt="l'encyclopédie libre" src="/static/images/mobile/copyright/wikipedia-tagline-fr.svg" width="120" height="13" style="width: 7.5em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Sp%C3%A9cial:Recherche" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Rechercher sur Wikipédia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Rechercher</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Rechercher sur Wikipédia" aria-label="Rechercher sur Wikipédia" autocapitalize="sentences" title="Rechercher sur Wikipédia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Spécial:Recherche"> </div> <button class="cdx-button cdx-search-input__end-button">Rechercher</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Outils personnels"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Apparence"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Modifier l'apparence de la taille, de la largeur et de la couleur de la police de la page" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Apparence" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Apparence</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_fr.wikipedia.org&uselang=fr" class=""><span>Faire un don</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Sp%C3%A9cial:Cr%C3%A9er_un_compte&returnto=Discussion+module%3AOutils" title="Nous vous encourageons à créer un compte utilisateur et vous connecter ; ce n’est cependant pas obligatoire." class=""><span>Créer un compte</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Sp%C3%A9cial:Connexion&returnto=Discussion+module%3AOutils" title="Nous vous encourageons à vous connecter ; ce n’est cependant pas obligatoire. [o]" accesskey="o" class=""><span>Se connecter</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Plus d’options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Outils personnels" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Outils personnels</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="Menu utilisateur" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_fr.wikipedia.org&uselang=fr"><span>Faire un don</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Sp%C3%A9cial:Cr%C3%A9er_un_compte&returnto=Discussion+module%3AOutils" title="Nous vous encourageons à créer un compte utilisateur et vous connecter ; ce n’est cependant pas obligatoire."><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Créer un compte</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Sp%C3%A9cial:Connexion&returnto=Discussion+module%3AOutils" title="Nous vous encourageons à vous connecter ; ce n’est cependant pas obligatoire. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Se connecter</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages pour les contributeurs déconnectés <a href="/wiki/Aide:Premiers_pas" aria-label="En savoir plus sur la contribution"><span>en savoir plus</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Sp%C3%A9cial:Mes_contributions" title="Une liste des modifications effectuées depuis cette adresse IP [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Sp%C3%A9cial:Mes_discussions" title="La page de discussion pour les contributions depuis cette adresse IP [n]" accesskey="n"><span>Discussion</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Sommaire" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Sommaire</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">déplacer vers la barre latérale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">masquer</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Début</div> </a> </li> <li id="toc-Typo" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Typo"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Typo</span> </div> </a> <span class="ext-discussiontools-init-sidebar-meta">9 commentaires</span> <ul id="toc-Typo-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-espaces_insécables_dans_les_paramètres_de_modèle" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#espaces_insécables_dans_les_paramètres_de_modèle"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>espaces insécables dans les paramètres de modèle</span> </div> </a> <span class="ext-discussiontools-init-sidebar-meta">4 commentaires</span> <ul id="toc-espaces_insécables_dans_les_paramètres_de_modèle-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Utilisation_de_notEmpty()_?" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Utilisation_de_notEmpty()_?"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Utilisation de notEmpty() ?</span> </div> </a> <span class="ext-discussiontools-init-sidebar-meta">11 commentaires</span> <ul id="toc-Utilisation_de_notEmpty()_?-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Fonction_extractArgs()" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Fonction_extractArgs()"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Fonction extractArgs()</span> </div> </a> <span class="ext-discussiontools-init-sidebar-meta">4 commentaires</span> <ul id="toc-Fonction_extractArgs()-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Sommaire" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Basculer la table des matières" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Basculer la table des matières</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-namespace">Discussion module</span><span class="mw-page-title-separator">:</span><span class="mw-page-title-main">Outils</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang mw-portlet-lang-icon-only" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector-empty" aria-label="Cet article n’existe que dans cette langue. Ajouter l’article pour d’autres langues." > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only mw-portlet-lang-heading-empty" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language mw-ui-icon-wikimedia-language"></span> <span class="vector-dropdown-label-text">Ajouter des langues</span> </label> <div class="vector-dropdown-content"> <div class="mw-portlet-empty-language-selector-body"> Le contenu de la page n’est pas pris en charge dans d’autres langues. </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Espaces de noms"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-module" class="vector-tab-noicon mw-list-item"><a href="/wiki/Module:Outils" title="Afficher la page du module [c]" accesskey="c"><span>Module</span></a></li><li id="ca-talk" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Discussion_module:Outils" rel="discussion" title="Discussion au sujet de cette page de contenu [t]" accesskey="t"><span>Discussion</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Modifier la variante de langue" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">français</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Affichages"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Discussion_module:Outils"><span>Lire</span></a></li><li id="ca-edit" class="istalk vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&action=edit" title="Modifier le wikicode de cette page [e]" accesskey="e"><span>Modifier le code</span></a></li><li id="ca-addsection" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&action=edit&section=new" title="Commencer une nouvelle section [+]" accesskey="+"><span>Ajouter un sujet</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&action=history" title="Historique des versions de cette page [h]" accesskey="h"><span>Voir l’historique</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Outils de la page"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Outils" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Outils</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Outils</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">déplacer vers la barre latérale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">masquer</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="Plus d’options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Discussion_module:Outils"><span>Lire</span></a></li><li id="ca-more-edit" class="istalk vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&action=edit" title="Modifier le wikicode de cette page [e]" accesskey="e"><span>Modifier le code</span></a></li><li id="ca-more-addsection" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&action=edit&section=new"><span>Ajouter un sujet</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&action=history"><span>Voir l’historique</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> Général </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Sp%C3%A9cial:Pages_li%C3%A9es/Discussion_module:Outils" title="Liste des pages liées qui pointent sur celle-ci [j]" accesskey="j"><span>Pages liées</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Sp%C3%A9cial:Suivi_des_liens/Discussion_module:Outils" rel="nofollow" title="Liste des modifications récentes des pages appelées par celle-ci [k]" accesskey="k"><span>Suivi des pages liées</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Aide:Importer_un_fichier" title="Téléverser des fichiers [u]" accesskey="u"><span>Téléverser un fichier</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Sp%C3%A9cial:Pages_sp%C3%A9ciales" title="Liste de toutes les pages spéciales [q]" accesskey="q"><span>Pages spéciales</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&oldid=197310599" title="Adresse permanente de cette version de cette page"><span>Lien permanent</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Discussion_module:Outils&action=info" title="Davantage d’informations sur cette page"><span>Informations sur la page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Sp%C3%A9cial:UrlShortener&url=https%3A%2F%2Ffr.wikipedia.org%2Fwiki%2FDiscussion_module%3AOutils"><span>Obtenir l'URL raccourcie</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Sp%C3%A9cial:QrCode&url=https%3A%2F%2Ffr.wikipedia.org%2Fwiki%2FDiscussion_module%3AOutils"><span>Télécharger le code QR</span></a></li> </ul> </div> </div> <div id="p-electronpdfservice-sidebar-portlet-heading" class="vector-menu mw-portlet mw-portlet-electronpdfservice-sidebar-portlet-heading" > <div class="vector-menu-heading"> Imprimer / exporter </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="electron-print_pdf" class="mw-list-item"><a href="/w/index.php?title=Sp%C3%A9cial:DownloadAsPdf&page=Discussion_module%3AOutils&action=show-download-screen"><span>Télécharger en PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" rel="alternate" title="Version imprimable de cette page [p]" accesskey="p"><span>Version imprimable</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects emptyPortlet" > <div class="vector-menu-heading"> Dans d’autres projets </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Outils de la page"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Apparence"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Apparence</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">déplacer vers la barre latérale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">masquer</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">Une page de Wikipédia, l'encyclopédie libre.</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-talkpageheader"> </div><div class="mw-content-ltr mw-parser-output" lang="fr" dir="ltr"><meta property="mw:PageProp/toc"/> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><!--__DTSUBSCRIBEBUTTONDESKTOP__{"headingLevel":2,"name":"h-Hexasoft-2013-09-16T13:21:00.000Z","type":"heading","level":0,"id":"h-Typo-2013-09-16T13:21:00.000Z","replies":["c-Hexasoft-2013-09-16T13:21:00.000Z-Typo"],"text":"Typo","linkableTitle":"Typo"}--><h2 id="Typo" data-mw-thread-id="h-Typo-2013-09-16T13:21:00.000Z"><span data-mw-comment-start="" id="h-Typo-2013-09-16T13:21:00.000Z"></span>Typo<span data-mw-comment-end="h-Typo-2013-09-16T13:21:00.000Z"></span></h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Discussion_module:Outils&action=edit&section=1" title="Modifier le code source de la section : Typo"><span>modifier le code</span></a><span class="mw-editsection-bracket">]</span></span><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-Hexasoft-2013-09-16T13:21:00.000Z","type":"heading","level":0,"id":"h-Typo-2013-09-16T13:21:00.000Z","replies":["c-Hexasoft-2013-09-16T13:21:00.000Z-Typo"]}}--><div class="ext-discussiontools-init-section-bar"><div class="ext-discussiontools-init-section-metadata"><!--__DTLATESTCOMMENTTHREAD__{"id":"c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z","timestamp":"2017-09-29T13:50:00.000Z"}__--><!--__DTCOMMENTCOUNT__9__--><!--__DTAUTHORCOUNT__3__--></div><div class="ext-discussiontools-init-section-actions"><!--__DTSUBSCRIBEBUTTONMOBILE__{"headingLevel":2,"name":"h-Hexasoft-2013-09-16T13:21:00.000Z","type":"heading","level":0,"id":"h-Typo-2013-09-16T13:21:00.000Z","replies":["c-Hexasoft-2013-09-16T13:21:00.000Z-Typo"],"text":"Typo","linkableTitle":"Typo"}--></div></div></div> <p><span data-mw-comment-start="" id="c-Hexasoft-2013-09-16T13:21:00.000Z-Typo"></span>Hello,<br/> ligne 135 (de mémoire) tu écris : <code>local nom = mw.loadData( 'Module:Outil/Data' ).ordinal</code>. Sauf qu'il manque le <b>s</b> à <b>Outils</b> <span class="smiley"><span typeof="mw:File"><a href="/wiki/Fichier:Face-smile.svg" class="mw-file-description" title="Sourire"><img alt="Émoticône sourire" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/20px-Face-smile.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/30px-Face-smile.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/40px-Face-smile.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span>. Cordialement, <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2013-09-16T13:21:00.000Z-Typo" class="ext-discussiontools-init-timestamplink">16 septembre 2013 à 15:21 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2013-09-16T13:21:00.000Z-Typo"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-16T13:21:00.000Z","author":"Hexasoft","type":"comment","level":1,"id":"c-Hexasoft-2013-09-16T13:21:00.000Z-Typo","replies":["c-Zebulon84-2013-09-16T15:16:00.000Z-Hexasoft-2013-09-16T13:21:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2013-09-16T13:21:00.000Z-Typo"></span> </p> <dl><dd><span data-mw-comment-start="" id="c-Zebulon84-2013-09-16T15:16:00.000Z-Hexasoft-2013-09-16T13:21:00.000Z"></span>J'ai tendance à toujours mettre un <b>s</b> à tournoi, même au singulier, et jamais à outil, même au pluriel. Plus généralement je suis fâché avec l'orthographe, les correcteurs ça aide, mais c'est pas parfait, et ça ne corrige pas le code lua <span class="smiley"><span typeof="mw:File"><a href="/wiki/Fichier:Face-sad.svg" title="Triste"><img alt="(Smiley: triste)" src="//upload.wikimedia.org/wikipedia/commons/thumb/0/06/Face-sad.svg/20px-Face-sad.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/0/06/Face-sad.svg/30px-Face-sad.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/0/06/Face-sad.svg/40px-Face-sad.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span>.</dd> <dd>Initialement j'avais donc programmé ce module avec le nom Outil. J'ai du oublier de modifier l'une des occurrences. Je corrige ça.</dd> <dd><a href="/wiki/Utilisateur:Zebulon84" title="Utilisateur:Zebulon84">Zebulon84</a> (<a href="/wiki/Discussion_utilisateur:Zebulon84" title="Discussion utilisateur:Zebulon84">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Zebulon84-2013-09-16T15:16:00.000Z-Hexasoft-2013-09-16T13:21:00.000Z" class="ext-discussiontools-init-timestamplink">16 septembre 2013 à 17:16 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Zebulon84-2013-09-16T15:16:00.000Z-Hexasoft-2013-09-16T13:21:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-16T15:16:00.000Z","author":"Zebulon84","type":"comment","level":2,"id":"c-Zebulon84-2013-09-16T15:16:00.000Z-Hexasoft-2013-09-16T13:21:00.000Z","replies":["c-Hexasoft-2013-09-16T16:45:00.000Z-Zebulon84-2013-09-16T15:16:00.000Z"]}}--></span><span data-mw-comment-end="c-Zebulon84-2013-09-16T15:16:00.000Z-Hexasoft-2013-09-16T13:21:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2013-09-16T16:45:00.000Z-Zebulon84-2013-09-16T15:16:00.000Z"></span>Héhé, ça nous arrive à tous <span class="smiley"><span typeof="mw:File"><a href="/wiki/Fichier:Face-smile.svg" class="mw-file-description" title="Sourire"><img alt="Émoticône sourire" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/20px-Face-smile.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/30px-Face-smile.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/40px-Face-smile.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span>.</dd> <dd>Note : tu peux éventuellement utiliser la fonction nombre2texte() pour tes ordinaux : la fonction supporte <i>tous</i> les ordinaux entre -999999999999 et 999999999999. Il faut juste lui passer une frame valide, ou (ce serait plus intéressant) que j'extrais la fonction et que celle exportée soit juste un <i>wrapper</i> (afin de pouvoir l'utiliser sans créer une frame valide depuis un autre module). Après avoir lu ton code j'ai ajouté le paramètre "genre", et si vraiment tu aimes le perfectionnisme je supporte même l'orthographe pré/post 1990 et les particularismes belges et suisses (septante, huitante/octante, nonante) <span class="smiley"><span class="noviewer" typeof="mw:File"><a href="/wiki/Fichier:Face-wink.svg" class="mw-file-description" title="Clin d'œil"><img alt="Émoticône" src="//upload.wikimedia.org/wikipedia/commons/thumb/5/57/Face-wink.svg/20px-Face-wink.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/5/57/Face-wink.svg/30px-Face-wink.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/5/57/Face-wink.svg/40px-Face-wink.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span>. <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2013-09-16T16:45:00.000Z-Zebulon84-2013-09-16T15:16:00.000Z" class="ext-discussiontools-init-timestamplink">16 septembre 2013 à 18:45 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2013-09-16T16:45:00.000Z-Zebulon84-2013-09-16T15:16:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-16T16:45:00.000Z","author":"Hexasoft","type":"comment","level":3,"id":"c-Hexasoft-2013-09-16T16:45:00.000Z-Zebulon84-2013-09-16T15:16:00.000Z","replies":["c-Hexasoft-2013-09-16T18:46:00.000Z-Hexasoft-2013-09-16T16:45:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2013-09-16T16:45:00.000Z-Zebulon84-2013-09-16T15:16:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2013-09-16T18:46:00.000Z-Hexasoft-2013-09-16T16:45:00.000Z"></span>Voilà : la fonction <code>Outils.nombre2texte_reel(pnombre, ptype, porthographe, pgenre, pmajuscule)</code> est utilisable depuis un module. Les paramètres sont dans l'ordre : <ul><li>pnombre : le nombre à traduite (string)</li> <li>ptype : ordinal ou <i>nil</i> (cardinal)</li> <li>porthographe : réformée ou <i>nil</i> (avant 1990)</li> <li>pgenre : féminin ou <i>nil</i> (masculin)</li> <li>pmajuscule : oui ou <i>nil</i> (pas de majuscule à la première lettre)</li></ul></dd> <dd><a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2013-09-16T18:46:00.000Z-Hexasoft-2013-09-16T16:45:00.000Z" class="ext-discussiontools-init-timestamplink">16 septembre 2013 à 20:46 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2013-09-16T18:46:00.000Z-Hexasoft-2013-09-16T16:45:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-16T18:46:00.000Z","author":"Hexasoft","type":"comment","level":4,"id":"c-Hexasoft-2013-09-16T18:46:00.000Z-Hexasoft-2013-09-16T16:45:00.000Z","replies":["c-Zebulon84-2013-09-16T21:52:00.000Z-Hexasoft-2013-09-16T18:46:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2013-09-16T18:46:00.000Z-Hexasoft-2013-09-16T16:45:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Zebulon84-2013-09-16T21:52:00.000Z-Hexasoft-2013-09-16T18:46:00.000Z"></span>Il y avait plus simple pour ces dernières modifs :</dd> <dd><code class="mw-highlight mw-highlight-lang-lua mw-content-ltr" dir="ltr"><span class="kd">local</span> <span class="n">args</span> <span class="o">=</span> <span class="n">Outils</span><span class="p">.</span><span class="n">extractArgs</span><span class="p">(</span> <span class="n">frame</span> <span class="p">)</span></code></dd> <dd>récupère dans l'ordre : <ul><li>Les paramètres de l'objet frame transmis à <code>#invoke:</code></li> <li>Les paramètres de frame.getParent() transmis au modèle si aucun argument n'est transmis par #invoke</li> <li>Les paramètres de la table frame (sans .args) si frame.getParent n'existe pas</li> <li>Les paramètres transmis si le premier n'est pas une table (bien sur dans ce cas les paramètres ne sont pas nommé, donc il aurait fallu une petite adaptation pour l'utilisé ici).</li></ul></dd> <dd>Demain j'adapterai ordinal pour utiliser ta fonction.</dd> <dd><a href="/wiki/Utilisateur:Zebulon84" title="Utilisateur:Zebulon84">Zebulon84</a> (<a href="/wiki/Discussion_utilisateur:Zebulon84" title="Discussion utilisateur:Zebulon84">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Zebulon84-2013-09-16T21:52:00.000Z-Hexasoft-2013-09-16T18:46:00.000Z" class="ext-discussiontools-init-timestamplink">16 septembre 2013 à 23:52 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Zebulon84-2013-09-16T21:52:00.000Z-Hexasoft-2013-09-16T18:46:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-16T21:52:00.000Z","author":"Zebulon84","type":"comment","level":5,"id":"c-Zebulon84-2013-09-16T21:52:00.000Z-Hexasoft-2013-09-16T18:46:00.000Z","replies":["c-Hexasoft-2013-09-16T22:10:00.000Z-Zebulon84-2013-09-16T21:52:00.000Z"]}}--></span><span data-mw-comment-end="c-Zebulon84-2013-09-16T21:52:00.000Z-Hexasoft-2013-09-16T18:46:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2013-09-16T22:10:00.000Z-Zebulon84-2013-09-16T21:52:00.000Z"></span>Ah ! Pratique ça ! D'une manière générale une fonction "créer frame" ciblée est bien pratique pour ces fonctions qui peuvent à la fois être appelée par un modèle et directement. Bon, là dodo. <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2013-09-16T22:10:00.000Z-Zebulon84-2013-09-16T21:52:00.000Z" class="ext-discussiontools-init-timestamplink">17 septembre 2013 à 00:10 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2013-09-16T22:10:00.000Z-Zebulon84-2013-09-16T21:52:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-16T22:10:00.000Z","author":"Hexasoft","type":"comment","level":6,"id":"c-Hexasoft-2013-09-16T22:10:00.000Z-Zebulon84-2013-09-16T21:52:00.000Z","replies":["c-Hexasoft-2013-09-17T07:38:00.000Z-Hexasoft-2013-09-16T22:10:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2013-09-16T22:10:00.000Z-Zebulon84-2013-09-16T21:52:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2013-09-17T07:38:00.000Z-Hexasoft-2013-09-16T22:10:00.000Z"></span>Tu as utilisé le bon prototype ! Car j'ai fait une faute ci-dessus : les paramètres sont <code>pnombre, plangue, ptype, porthographe, pgenre, pmajuscule, pordinal</code> (j'avais oublié le paramètre "langue").</dd> <dd>En fait pour les paramètres venant de frame c'est un peu compliqué : pour certains paramètres je prends ceux de pframe (par exemple le nombre à convertir vient forcément du modèle appelant) et pour certains autres paramètres je prends celui venant du #invoke s'il existe ou celui du modèle sinon (ça permet par exemple de faire des modèles qui fixent une option sans qu'on puisse la modifier depuis l'appel au modèle, comme par exemple dans <a href="/wiki/Mod%C3%A8le:Ordinal3" title="Modèle:Ordinal3">{{ordinal3}}</a> qui force "type=ordinal"). On peut faire ça facilement ? <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2013-09-17T07:38:00.000Z-Hexasoft-2013-09-16T22:10:00.000Z" class="ext-discussiontools-init-timestamplink">17 septembre 2013 à 09:38 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2013-09-17T07:38:00.000Z-Hexasoft-2013-09-16T22:10:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-17T07:38:00.000Z","author":"Hexasoft","type":"comment","level":7,"id":"c-Hexasoft-2013-09-17T07:38:00.000Z-Hexasoft-2013-09-16T22:10:00.000Z","replies":["c-Zebulon84-2013-09-17T10:57:00.000Z-Hexasoft-2013-09-17T07:38:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2013-09-17T07:38:00.000Z-Hexasoft-2013-09-16T22:10:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Zebulon84-2013-09-17T10:57:00.000Z-Hexasoft-2013-09-17T07:38:00.000Z"></span>Oui, Si le(s) paramètre(s) principal(aux) (1 par défaut, ou ceux dont le nom est fournis après frame) n'est pas dan frame.agrs, je prend frame.frame.getParent() et j'y copie les paramètres de frame.args, qui ont donc toujours priorité. J'ai copié le comportement de coord en fait. Le seul but de tester les paramètres principaux est de ne pas accéder à getParent( ) si ce n'est pas nécessaire.</dd> <dd>Je suis en train de tester ouvrage, article et lienWeb. Quand j'aurais fini je ferait une doc pour les différents modules notamment celui-ci.</dd> <dd><a href="/wiki/Utilisateur:Zebulon84" title="Utilisateur:Zebulon84">Zebulon84</a> (<a href="/wiki/Discussion_utilisateur:Zebulon84" title="Discussion utilisateur:Zebulon84">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Zebulon84-2013-09-17T10:57:00.000Z-Hexasoft-2013-09-17T07:38:00.000Z" class="ext-discussiontools-init-timestamplink">17 septembre 2013 à 12:57 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Zebulon84-2013-09-17T10:57:00.000Z-Hexasoft-2013-09-17T07:38:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2013-09-17T10:57:00.000Z","author":"Zebulon84","type":"comment","level":8,"id":"c-Zebulon84-2013-09-17T10:57:00.000Z-Hexasoft-2013-09-17T07:38:00.000Z","replies":["c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z"]}}--></span><span data-mw-comment-end="c-Zebulon84-2013-09-17T10:57:00.000Z-Hexasoft-2013-09-17T07:38:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z"></span>J'ai déplacé les fonctions <code>nombre2texte</code> et <code>ordinal</code> (ainsi que leurs dépendances) vers un nouveau module <a href="/wiki/Module:Nombre2texte" title="Module:Nombre2texte">Nombre2texte</a>, afin que <a href="/wiki/Module:Outils" title="Module:Outils">Module:Outils</a> ne devienne pas un fourre-tout ;-) <span class="romain"><a href="/wiki/Utilisateur:Od1n" title="Utilisateur:Od1n">od†n</a></span> ↗<sup><a href="/wiki/Discussion_utilisateur:Od1n" title="Discussion utilisateur:Od1n">blah</a></sup> <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z" class="ext-discussiontools-init-timestamplink">29 septembre 2017 à 15:50 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2017-09-29T13:50:00.000Z","author":"Od1n","type":"comment","level":9,"id":"c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z","replies":[],"displayName":"od\u2020n"}}--></span><span data-mw-comment-end="c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z"></span></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><!--__DTSUBSCRIBEBUTTONDESKTOP__{"headingLevel":2,"name":"h-Pols12-2015-03-20T15:03:00.000Z","type":"heading","level":0,"id":"h-espaces_ins\u00e9cables_dans_les_param\u00e8tres_de_mod\u00e8le-2015-03-20T15:03:00.000Z","replies":["c-Pols12-2015-03-20T15:03:00.000Z-espaces_ins\u00e9cables_dans_les_param\u00e8tres_de_mod\u00e8le"],"text":"espaces ins\u00e9cables dans les param\u00e8tres de mod\u00e8le","linkableTitle":"espaces ins\u00e9cables dans les param\u00e8tres de mod\u00e8le"}--><h2 id="espaces_insécables_dans_les_paramètres_de_modèle" data-mw-thread-id="h-espaces_insécables_dans_les_paramètres_de_modèle-2015-03-20T15:03:00.000Z"><span id="espaces_ins.C3.A9cables_dans_les_param.C3.A8tres_de_mod.C3.A8le"></span><span data-mw-comment-start="" id="h-espaces_insécables_dans_les_paramètres_de_modèle-2015-03-20T15:03:00.000Z"></span>espaces insécables dans les paramètres de modèle<span data-mw-comment-end="h-espaces_insécables_dans_les_paramètres_de_modèle-2015-03-20T15:03:00.000Z"></span></h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Discussion_module:Outils&action=edit&section=2" title="Modifier le code source de la section : espaces insécables dans les paramètres de modèle"><span>modifier le code</span></a><span class="mw-editsection-bracket">]</span></span><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-Pols12-2015-03-20T15:03:00.000Z","type":"heading","level":0,"id":"h-espaces_ins\u00e9cables_dans_les_param\u00e8tres_de_mod\u00e8le-2015-03-20T15:03:00.000Z","replies":["c-Pols12-2015-03-20T15:03:00.000Z-espaces_ins\u00e9cables_dans_les_param\u00e8tres_de_mod\u00e8le"]}}--><div class="ext-discussiontools-init-section-bar"><div class="ext-discussiontools-init-section-metadata"><!--__DTLATESTCOMMENTTHREAD__{"id":"c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z","timestamp":"2015-03-20T16:17:00.000Z"}__--><!--__DTCOMMENTCOUNT__4__--><!--__DTAUTHORCOUNT__2__--></div><div class="ext-discussiontools-init-section-actions"><!--__DTSUBSCRIBEBUTTONMOBILE__{"headingLevel":2,"name":"h-Pols12-2015-03-20T15:03:00.000Z","type":"heading","level":0,"id":"h-espaces_ins\u00e9cables_dans_les_param\u00e8tres_de_mod\u00e8le-2015-03-20T15:03:00.000Z","replies":["c-Pols12-2015-03-20T15:03:00.000Z-espaces_ins\u00e9cables_dans_les_param\u00e8tres_de_mod\u00e8le"],"text":"espaces ins\u00e9cables dans les param\u00e8tres de mod\u00e8le","linkableTitle":"espaces ins\u00e9cables dans les param\u00e8tres de mod\u00e8le"}--></div></div></div> <p><span data-mw-comment-start="" id="c-Pols12-2015-03-20T15:03:00.000Z-espaces_insécables_dans_les_paramètres_de_modèle"></span>Salut ! </p><p>J'espère que le problème vient bien de là et que je ne me suis pas complètement planté d'endroit... </p><p>En fait, je viens rapporter <a href="/wiki/Discussion_mod%C3%A8le:Article#Espaces" title="Discussion modèle:Article">cette discussion</a>. Apparemment, le modèle <a href="/wiki/Mod%C3%A8le:Article" title="Modèle:Article">{{article}}</a> plante si un espace insécable &nbsp; est mis avant la barre verticale | au lieu d'un espace classique. </p><p>Merci <a href="/wiki/Utilisateur:Zebulon84" title="Utilisateur:Zebulon84">Zebulon84</a> ! (Car j'imagine que c'est toi qui saura le mieux répondre...) </p><p>--<a href="/wiki/Utilisateur:Pols12" title="Utilisateur:Pols12">Pols12</a> (<a href="/wiki/Discussion_utilisateur:Pols12" title="Discussion utilisateur:Pols12">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Pols12-2015-03-20T15:03:00.000Z-espaces_insécables_dans_les_paramètres_de_modèle" class="ext-discussiontools-init-timestamplink">20 mars 2015 à 16:03 (CET)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Pols12-2015-03-20T15:03:00.000Z-espaces_insécables_dans_les_paramètres_de_modèle"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-03-20T15:03:00.000Z","author":"Pols12","type":"comment","level":1,"id":"c-Pols12-2015-03-20T15:03:00.000Z-espaces_ins\u00e9cables_dans_les_param\u00e8tres_de_mod\u00e8le","replies":["c-Zebulon84-2015-03-20T15:49:00.000Z-Pols12-2015-03-20T15:03:00.000Z"]}}--></span><span data-mw-comment-end="c-Pols12-2015-03-20T15:03:00.000Z-espaces_insécables_dans_les_paramètres_de_modèle"></span> </p> <dl><dd><span data-mw-comment-start="" id="c-Zebulon84-2015-03-20T15:49:00.000Z-Pols12-2015-03-20T15:03:00.000Z"></span><span class="nowrap"><span typeof="mw:File"><span title="Notification"><img alt="Notification" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/20px-Gnome-edit-redo.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/30px-Gnome-edit-redo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/40px-Gnome-edit-redo.svg.png 2x" data-file-width="48" data-file-height="48"/></span></span> <a href="/wiki/Utilisateur:Pols12" title="Utilisateur:Pols12">Pols12</a></span> : pour être exact, dans cet exemple c'est l'espace après la barre verticale qui est un espace insécable.</dd> <dd>Il faut comprendre que pour un informaticien, l'espace insécable est un caractère complètement différent de l'espace. Si au lieu d'écrire <span class="nowrap"><code>{{Article | langue = en |...}}</code></span> j'écris <span class="nowrap"><code>{{Article |Xlangue = en |...}}</code></span>, cela ne surprend personne que la langue ne s'affiche pas. Pour Mediawiki l'espace insécable est géré comme si c'était une lettre quelconque et non un espace. Ce n'est donc pas le même paramètre.</dd> <dd>Si on veux que dans le cas des paramètres de modèle l'espace insécable soit considérer comme un espace, il faut en faire la demande sur <a href="https://phabricator.wikimedia.org/" class="extiw" title="phabricator:">Phabricator</a>. Mais je doute que ce soit pris en compte.</dd> <dd>Les solutions locales que l'on pourrait mettre en place pour éviter ce problème sont lourdes et à l'encontre de l'esprit dans lequel Mediawiki gère les paramètres, donc je me refuse à les envisager.</dd> <dd><a href="/wiki/Utilisateur:Zebulon84" title="Utilisateur:Zebulon84"> Zebulon84</a> (<a href="/wiki/Discussion_utilisateur:Zebulon84" title="Discussion utilisateur:Zebulon84">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Zebulon84-2015-03-20T15:49:00.000Z-Pols12-2015-03-20T15:03:00.000Z" class="ext-discussiontools-init-timestamplink">20 mars 2015 à 16:49 (CET)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Zebulon84-2015-03-20T15:49:00.000Z-Pols12-2015-03-20T15:03:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-03-20T15:49:00.000Z","author":"Zebulon84","type":"comment","level":2,"id":"c-Zebulon84-2015-03-20T15:49:00.000Z-Pols12-2015-03-20T15:03:00.000Z","replies":["c-Pols12-2015-03-20T16:05:00.000Z-Zebulon84-2015-03-20T15:49:00.000Z"]}}--></span><span data-mw-comment-end="c-Zebulon84-2015-03-20T15:49:00.000Z-Pols12-2015-03-20T15:03:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Pols12-2015-03-20T16:05:00.000Z-Zebulon84-2015-03-20T15:49:00.000Z"></span><span class="nowrap"><span typeof="mw:File"><span title="Notification"><img alt="Notification" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/20px-Gnome-edit-redo.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/30px-Gnome-edit-redo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/40px-Gnome-edit-redo.svg.png 2x" data-file-width="48" data-file-height="48"/></span></span> <a href="/wiki/Utilisateur:Zebulon84" title="Utilisateur:Zebulon84">Zebulon84</a></span> : Donc il s'agit d'un problème interne à MediaWiki. J'avais la flemme de tester, j'aurais dû le faire avant de poster ici... Désolé.</dd> <dd><br/></dd> <dd>Mais si je comprend bien, alors ça fait appelle à un paramètre <code>&nbsp;titre</code>. N'est-il pas possible de mettre <code>&nbsp;titre</code> en alias de la même manière que <code>title</code> est un alias ?</dd> <dd>Bon, c'est vrai que ça alourdit le bazar, mais bon...</dd> <dd><br/></dd> <dd>Merci de ta réponse en tous cas ! <span class="smiley"><span typeof="mw:File"><a href="/wiki/Fichier:Face-smile.svg" class="mw-file-description" title="Sourire"><img alt="Émoticône sourire" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/20px-Face-smile.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/30px-Face-smile.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/40px-Face-smile.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span> --<a href="/wiki/Utilisateur:Pols12" title="Utilisateur:Pols12">Pols12</a> (<a href="/wiki/Discussion_utilisateur:Pols12" title="Discussion utilisateur:Pols12">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Pols12-2015-03-20T16:05:00.000Z-Zebulon84-2015-03-20T15:49:00.000Z" class="ext-discussiontools-init-timestamplink">20 mars 2015 à 17:05 (CET)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Pols12-2015-03-20T16:05:00.000Z-Zebulon84-2015-03-20T15:49:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-03-20T16:05:00.000Z","author":"Pols12","type":"comment","level":3,"id":"c-Pols12-2015-03-20T16:05:00.000Z-Zebulon84-2015-03-20T15:49:00.000Z","replies":["c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z"]}}--></span><span data-mw-comment-end="c-Pols12-2015-03-20T16:05:00.000Z-Zebulon84-2015-03-20T15:49:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z"></span>L'espace insécable pourrait aussi être après le nom du paramètre, avant le égal, donc il faudrait aussi créer les alias <code>titre&nbsp;</code> et <code>&nbsp;titre&nbsp;</code>, donc multiplier par 4 tous les paramètres ; c'est ce que j'apelle une solution lourde oui. d'autant que l'espace insécable disparait si on fait un copier-collé sous firefox, donc il y a des chance que la solution soit cassé régulièrement lors de modification (car il faut un vrai espace insécable et non sont code html &nbsp; pour que cette solution marche)...</dd> <dd>Pour info, le modèle <a href="/wiki/Mod%C3%A8le:Ouvrage" title="Modèle:Ouvrage">{{ouvrage}}</a> avec ses alias actuel à plus de 150 paramètres, donc si on multiplie par 4 on arrive à 500</dd> <dd><a href="/wiki/Utilisateur:Zebulon84" title="Utilisateur:Zebulon84"> Zebulon84</a> (<a href="/wiki/Discussion_utilisateur:Zebulon84" title="Discussion utilisateur:Zebulon84">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z" class="ext-discussiontools-init-timestamplink">20 mars 2015 à 17:17 (CET)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-03-20T16:17:00.000Z","author":"Zebulon84","type":"comment","level":4,"id":"c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z","replies":[]}}--></span><span data-mw-comment-end="c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z"></span></dd></dl></dd></dl></dd></dl> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><!--__DTSUBSCRIBEBUTTONDESKTOP__{"headingLevel":2,"name":"h-NicoV-2015-04-17T13:35:00.000Z","type":"heading","level":0,"id":"h-Utilisation_de_notEmpty()_?-2015-04-17T13:35:00.000Z","replies":["c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?","c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?"],"text":"Utilisation de notEmpty()\u00a0?","linkableTitle":"Utilisation de notEmpty() ?"}--><h2 id="Utilisation_de_notEmpty()_?" data-mw-thread-id="h-Utilisation_de_notEmpty()_?-2015-04-17T13:35:00.000Z"><span id="Utilisation_de_notEmpty.28.29_.3F"></span><span data-mw-comment-start="" id="h-Utilisation_de_notEmpty()_?-2015-04-17T13:35:00.000Z"></span>Utilisation de notEmpty() ?<span data-mw-comment-end="h-Utilisation_de_notEmpty()_?-2015-04-17T13:35:00.000Z"></span></h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Discussion_module:Outils&action=edit&section=3" title="Modifier le code source de la section : Utilisation de notEmpty() ?"><span>modifier le code</span></a><span class="mw-editsection-bracket">]</span></span><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-NicoV-2015-04-17T13:35:00.000Z","type":"heading","level":0,"id":"h-Utilisation_de_notEmpty()_?-2015-04-17T13:35:00.000Z","replies":["c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?","c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?"]}}--><div class="ext-discussiontools-init-section-bar"><div class="ext-discussiontools-init-section-metadata"><!--__DTLATESTCOMMENTTHREAD__{"id":"c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z","timestamp":"2017-09-27T00:26:00.000Z"}__--><!--__DTCOMMENTCOUNT__11__--><!--__DTAUTHORCOUNT__3__--></div><div class="ext-discussiontools-init-section-actions"><!--__DTSUBSCRIBEBUTTONMOBILE__{"headingLevel":2,"name":"h-NicoV-2015-04-17T13:35:00.000Z","type":"heading","level":0,"id":"h-Utilisation_de_notEmpty()_?-2015-04-17T13:35:00.000Z","replies":["c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?","c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?"],"text":"Utilisation de notEmpty()\u00a0?","linkableTitle":"Utilisation de notEmpty() ?"}--></div></div></div> <p><span data-mw-comment-start="" id="c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?"></span>Bonjour, </p><p>Comment fait-on pour se servir de notEmpty() ? Le résultat obtenu n'est pas du tout ce à quoi je m'attendais : </p><p><code>{{#invoke:Outils |notEmpty | | 2 }}</code> → table </p><p>--<a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a> (<a href="/wiki/Discussion_utilisateur:NicoV" title="Discussion utilisateur:NicoV">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 15:35 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T13:35:00.000Z","author":"NicoV","type":"comment","level":1,"id":"c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?","replies":["c-Hexasoft-2015-04-17T15:52:00.000Z-NicoV-2015-04-17T13:35:00.000Z"]}}--></span><span data-mw-comment-end="c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?"></span> </p> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2015-04-17T15:52:00.000Z-NicoV-2015-04-17T13:35:00.000Z"></span><span class="nowrap"><span typeof="mw:File"><span title="Notification"><img alt="Notification" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/20px-Gnome-edit-redo.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/30px-Gnome-edit-redo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/40px-Gnome-edit-redo.svg.png 2x" data-file-width="48" data-file-height="48"/></span></span> <a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a></span> : il me semble que cette fonction n'est pas faite pour être appelée directement : elle prend ses paramètres sous forme "lua" et non sous forme d'appel (en recevant un <i>frame</i> et en accédant à son contenu). La <i>table</i> que tu reçois est sans doute comme ça qu'est perçue la <i>frame</i> qui lui est transmise.</dd> <dd>Il faut soit trouver une fonction qui fait l'appel soit la faire. Tu sais faire ? Je peux le faire, c'est pas compliqué, si besoin. Cordialement, <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2015-04-17T15:52:00.000Z-NicoV-2015-04-17T13:35:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 17:52 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2015-04-17T15:52:00.000Z-NicoV-2015-04-17T13:35:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T15:52:00.000Z","author":"Hexasoft","type":"comment","level":2,"id":"c-Hexasoft-2015-04-17T15:52:00.000Z-NicoV-2015-04-17T13:35:00.000Z","replies":["c-NicoV-2015-04-17T16:25:00.000Z-Hexasoft-2015-04-17T15:52:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2015-04-17T15:52:00.000Z-NicoV-2015-04-17T13:35:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-NicoV-2015-04-17T16:25:00.000Z-Hexasoft-2015-04-17T15:52:00.000Z"></span>Merci <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a>, si ça ne te dérange pas, je veux bien que tu la fasses <span class="smiley"><span typeof="mw:File"><a href="/wiki/Fichier:Face-smile.svg" class="mw-file-description" title="Sourire"><img alt="Émoticône sourire" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/20px-Face-smile.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/30px-Face-smile.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/40px-Face-smile.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span>. --<a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a> (<a href="/wiki/Discussion_utilisateur:NicoV" title="Discussion utilisateur:NicoV">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-NicoV-2015-04-17T16:25:00.000Z-Hexasoft-2015-04-17T15:52:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 18:25 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-NicoV-2015-04-17T16:25:00.000Z-Hexasoft-2015-04-17T15:52:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T16:25:00.000Z","author":"NicoV","type":"comment","level":3,"id":"c-NicoV-2015-04-17T16:25:00.000Z-Hexasoft-2015-04-17T15:52:00.000Z","replies":["c-Hexasoft-2015-04-17T16:29:00.000Z-NicoV-2015-04-17T16:25:00.000Z"]}}--></span><span data-mw-comment-end="c-NicoV-2015-04-17T16:25:00.000Z-Hexasoft-2015-04-17T15:52:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2015-04-17T16:29:00.000Z-NicoV-2015-04-17T16:25:00.000Z"></span><span class="nowrap"><span typeof="mw:File"><span title="Notification"><img alt="Notification" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/20px-Gnome-edit-redo.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/30px-Gnome-edit-redo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/40px-Gnome-edit-redo.svg.png 2x" data-file-width="48" data-file-height="48"/></span></span> <a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a></span> : J'ai regardé entre-temps. Le but de cette fonction me semble un peu trop « compliqué » pour ton besoin. J'ai fait une petite fonction traitant ça. Tu peux voir le résultat au tout début de <a href="/wiki/Utilisateur:Hexasoft/test" title="Utilisateur:Hexasoft/test">Utilisateur:Hexasoft/test</a> (regarde le code).</dd> <dd>La question c'est de savoir si ça sera appelé directement avec un #invoke où s'il faut prévoir le cas d'un modèle (ça change la façon de traiter les paramètres).</dd> <dd>On pourrait ajouter dans le module Outils une fonction de non « premierNonVide » ou quelque chose du genre. Cordialement, <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2015-04-17T16:29:00.000Z-NicoV-2015-04-17T16:25:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 18:29 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2015-04-17T16:29:00.000Z-NicoV-2015-04-17T16:25:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T16:29:00.000Z","author":"Hexasoft","type":"comment","level":4,"id":"c-Hexasoft-2015-04-17T16:29:00.000Z-NicoV-2015-04-17T16:25:00.000Z","replies":["c-NicoV-2015-04-17T16:56:00.000Z-Hexasoft-2015-04-17T16:29:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2015-04-17T16:29:00.000Z-NicoV-2015-04-17T16:25:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-NicoV-2015-04-17T16:56:00.000Z-Hexasoft-2015-04-17T16:29:00.000Z"></span><span class="nowrap"><span typeof="mw:File"><span title="Notification"><img alt="Notification" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/20px-Gnome-edit-redo.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/30px-Gnome-edit-redo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/40px-Gnome-edit-redo.svg.png 2x" data-file-width="48" data-file-height="48"/></span></span> <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a></span> :, mon besoin vient de <a href="/wiki/Discussion_Projet:Mod%C3%A8le#Première_valeur_non_vide_parmi_une_liste_de_valeurs_?" title="Discussion Projet:Modèle">Discussion Projet:Modèle#Première valeur non vide parmi une liste de valeurs ?</a>, l'idée est de pouvoir l’appeler dans un modèle, la première valeur étant le résultat d'une requête à un autre modèle, la deuxième valeur étant une valeur par défaut au cas où le premier résultat est vide. --<a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a> (<a href="/wiki/Discussion_utilisateur:NicoV" title="Discussion utilisateur:NicoV">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-NicoV-2015-04-17T16:56:00.000Z-Hexasoft-2015-04-17T16:29:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 18:56 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-NicoV-2015-04-17T16:56:00.000Z-Hexasoft-2015-04-17T16:29:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T16:56:00.000Z","author":"NicoV","type":"comment","level":5,"id":"c-NicoV-2015-04-17T16:56:00.000Z-Hexasoft-2015-04-17T16:29:00.000Z","replies":["c-Hexasoft-2015-04-17T17:04:00.000Z-NicoV-2015-04-17T16:56:00.000Z"]}}--></span><span data-mw-comment-end="c-NicoV-2015-04-17T16:56:00.000Z-Hexasoft-2015-04-17T16:29:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2015-04-17T17:04:00.000Z-NicoV-2015-04-17T16:56:00.000Z"></span><span class="nowrap"><span typeof="mw:File"><span title="Notification"><img alt="Notification" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/20px-Gnome-edit-redo.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/30px-Gnome-edit-redo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/40px-Gnome-edit-redo.svg.png 2x" data-file-width="48" data-file-height="48"/></span></span> <a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a></span> : oui j'avais vu (mais préféré répondre ici, puisque c'est plus spécifique). En fait ma question est de savoir si tu veux appeler un modèle comme dans ton exemple → |{{Première valeur|(…), ou bien si tu veux appeler un module directement → {{#invoke:Outils|premiereValeur|(…).</dd> <dd>Le premier choix est plus habituel pour les modélistes, et nécessiterait la création du modèle intermédiaire ainsi qu'une légère modification du code du module. Le second choix est un poil plus performant puisqu'on esquive un appel de modèle intermédiaire (qui ne sert qu'à appeler le module, sans valeur ajouté) mais sans doute moins lisible pour qui n'a pas l'habitude.</dd> <dd>C'est comme tu veux <span class="smiley"><span typeof="mw:File"><a href="/wiki/Fichier:Face-smile.svg" class="mw-file-description" title="Sourire"><img alt="Émoticône sourire" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/20px-Face-smile.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/30px-Face-smile.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/40px-Face-smile.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span>.</dd> <dd>Est-ce que toutefois le comportement indiqué correspond à tes attentes ? Cordialement, <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2015-04-17T17:04:00.000Z-NicoV-2015-04-17T16:56:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 19:04 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2015-04-17T17:04:00.000Z-NicoV-2015-04-17T16:56:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T17:04:00.000Z","author":"Hexasoft","type":"comment","level":6,"id":"c-Hexasoft-2015-04-17T17:04:00.000Z-NicoV-2015-04-17T16:56:00.000Z","replies":["c-NicoV-2015-04-17T17:25:00.000Z-Hexasoft-2015-04-17T17:04:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2015-04-17T17:04:00.000Z-NicoV-2015-04-17T16:56:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-NicoV-2015-04-17T17:25:00.000Z-Hexasoft-2015-04-17T17:04:00.000Z"></span><span class="nowrap"><span typeof="mw:File"><span title="Notification"><img alt="Notification" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/20px-Gnome-edit-redo.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/30px-Gnome-edit-redo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c1/Gnome-edit-redo.svg/40px-Gnome-edit-redo.svg.png 2x" data-file-width="48" data-file-height="48"/></span></span> <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a></span> : Merci pour les explications, le second choix m'irait très bien, appeler directement le module dans le code du modèle <a href="/wiki/Projet:Communes_de_France/Mise_%C3%A0_jour_automatique_des_donn%C3%A9es_d%C3%A9mographiques/Tableau_Population_Commune" title="Projet:Communes de France/Mise à jour automatique des données démographiques/Tableau Population Commune">{{Projet:Communes de France/Mise à jour automatique des données démographiques/Tableau Population Commune}}</a>. --<a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a> (<a href="/wiki/Discussion_utilisateur:NicoV" title="Discussion utilisateur:NicoV">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-NicoV-2015-04-17T17:25:00.000Z-Hexasoft-2015-04-17T17:04:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 19:25 (CEST)</a> PS: le comportement me va très bien <span class="smiley"><span typeof="mw:File"><a href="/wiki/Fichier:Face-smile.svg" class="mw-file-description" title="Sourire"><img alt="Émoticône sourire" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/20px-Face-smile.svg.png" decoding="async" width="20" height="20" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/30px-Face-smile.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/79/Face-smile.svg/40px-Face-smile.svg.png 2x" data-file-width="48" data-file-height="48"/></a></span></span><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-NicoV-2015-04-17T17:25:00.000Z-Hexasoft-2015-04-17T17:04:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T17:25:00.000Z","author":"NicoV","type":"comment","level":7,"id":"c-NicoV-2015-04-17T17:25:00.000Z-Hexasoft-2015-04-17T17:04:00.000Z","replies":[]}}--></span><span data-mw-comment-end="c-NicoV-2015-04-17T17:25:00.000Z-Hexasoft-2015-04-17T17:04:00.000Z"></span></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl> <p><span data-mw-comment-start="" id="c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?"></span>←<br/> C'est fait. La fonction s'appelle <i>premiereValeur</i> (sans l'accent, on ne peut pas sur les noms de fonction).<br/> Pour l'appeler dans un modèle : {{#invoke:Outils|premiereValeur|param1|param2|…}}. Quelques exemples : </p> <ul><li>{{#invoke:Outils|premiereValeur|param1|param2|param3}} donne param1</li> <li>{{#invoke:Outils|premiereValeur||param2|param3}} donne param2</li> <li>{{#invoke:Outils|premiereValeur| ||param3}} donne param3</li></ul> <p>Cordialement, <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 19:49 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T17:49:00.000Z","author":"Hexasoft","type":"comment","level":1,"id":"c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?","replies":["c-Hexasoft-2015-04-17T18:00:00.000Z-Hexasoft-2015-04-17T17:49:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?"></span> </p> <dl><dd><span data-mw-comment-start="" id="c-Hexasoft-2015-04-17T18:00:00.000Z-Hexasoft-2015-04-17T17:49:00.000Z"></span>Remarque qui peut être importante : retourne le paramètre non vide passé par <code>trim()</code>, c'est-à-dire après suppression des espaces au début et à la fin du paramètre. Par exemple si le premier paramètre non vide est " x " il va retourne "x".</dd> <dd>Si c'est un problème pour toi je peux supprimer ce comportement, mais ça m'a paru logique. Cordialement, <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a> (<a href="/wiki/Discussion_utilisateur:Hexasoft" title="Discussion utilisateur:Hexasoft">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Hexasoft-2015-04-17T18:00:00.000Z-Hexasoft-2015-04-17T17:49:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 20:00 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Hexasoft-2015-04-17T18:00:00.000Z-Hexasoft-2015-04-17T17:49:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T18:00:00.000Z","author":"Hexasoft","type":"comment","level":2,"id":"c-Hexasoft-2015-04-17T18:00:00.000Z-Hexasoft-2015-04-17T17:49:00.000Z","replies":["c-NicoV-2015-04-17T20:07:00.000Z-Hexasoft-2015-04-17T18:00:00.000Z"]}}--></span><span data-mw-comment-end="c-Hexasoft-2015-04-17T18:00:00.000Z-Hexasoft-2015-04-17T17:49:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-NicoV-2015-04-17T20:07:00.000Z-Hexasoft-2015-04-17T18:00:00.000Z"></span>Merci <a href="/wiki/Utilisateur:Hexasoft" title="Utilisateur:Hexasoft">Hexasoft</a>, je l’ai utilisé sur 2 modèles pour l'instant, ça marche très bien. --<a href="/wiki/Utilisateur:NicoV" title="Utilisateur:NicoV">NicoV</a> (<a href="/wiki/Discussion_utilisateur:NicoV" title="Discussion utilisateur:NicoV">discuter</a>) <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-NicoV-2015-04-17T20:07:00.000Z-Hexasoft-2015-04-17T18:00:00.000Z" class="ext-discussiontools-init-timestamplink">17 avril 2015 à 22:07 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-NicoV-2015-04-17T20:07:00.000Z-Hexasoft-2015-04-17T18:00:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2015-04-17T20:07:00.000Z","author":"NicoV","type":"comment","level":3,"id":"c-NicoV-2015-04-17T20:07:00.000Z-Hexasoft-2015-04-17T18:00:00.000Z","replies":["c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z"]}}--></span><span data-mw-comment-end="c-NicoV-2015-04-17T20:07:00.000Z-Hexasoft-2015-04-17T18:00:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z"></span>Les 2 modèles évoqués par NicoV sont <a href="/wiki/Projet:Communes_de_France/Mise_%C3%A0_jour_automatique_des_donn%C3%A9es_d%C3%A9mographiques/Tableau_Population" title="Projet:Communes de France/Mise à jour automatique des données démographiques/Tableau Population">Projet:Communes de France/Mise à jour automatique des données démographiques/Tableau Population</a> et <a href="/wiki/Projet:Communes_de_France/Mise_%C3%A0_jour_automatique_des_donn%C3%A9es_d%C3%A9mographiques/Tableau_Population_Commune" title="Projet:Communes de France/Mise à jour automatique des données démographiques/Tableau Population Commune">Projet:Communes de France/Mise à jour automatique des données démographiques/Tableau Population Commune</a>. Vous remarquerez que j'ai supprimé l'utilisation de la fonction Lua dans ces modèles. Par volonté de simplifier la base de code Lua, je viens de <a href="/wiki/Sp%C3%A9cial:Diff/140994765" title="Spécial:Diff/140994765">supprimer</a> cette fonction qui n'est maintenant plus utilisée. <span class="romain"><a href="/wiki/Utilisateur:Od1n" title="Utilisateur:Od1n">od†n</a></span> ↗<sup><a href="/wiki/Discussion_utilisateur:Od1n" title="Discussion utilisateur:Od1n">blah</a></sup> <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z" class="ext-discussiontools-init-timestamplink">27 septembre 2017 à 02:26 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2017-09-27T00:26:00.000Z","author":"Od1n","type":"comment","level":4,"id":"c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z","replies":[],"displayName":"od\u2020n"}}--></span><span data-mw-comment-end="c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z"></span></dd></dl></dd></dl></dd></dl> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><!--__DTSUBSCRIBEBUTTONDESKTOP__{"headingLevel":2,"name":"h-Od1n-2021-11-30T04:15:00.000Z","type":"heading","level":0,"id":"h-Fonction_extractArgs()-2021-11-30T04:15:00.000Z","replies":["c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()"],"text":"Fonction extractArgs()","linkableTitle":"Fonction extractArgs()"}--><h2 id="Fonction_extractArgs()" data-mw-thread-id="h-Fonction_extractArgs()-2021-11-30T04:15:00.000Z"><span id="Fonction_extractArgs.28.29"></span><span data-mw-comment-start="" id="h-Fonction_extractArgs()-2021-11-30T04:15:00.000Z"></span>Fonction extractArgs()<span data-mw-comment-end="h-Fonction_extractArgs()-2021-11-30T04:15:00.000Z"></span></h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Discussion_module:Outils&action=edit&section=4" title="Modifier le code source de la section : Fonction extractArgs()"><span>modifier le code</span></a><span class="mw-editsection-bracket">]</span></span><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-Od1n-2021-11-30T04:15:00.000Z","type":"heading","level":0,"id":"h-Fonction_extractArgs()-2021-11-30T04:15:00.000Z","replies":["c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()"]}}--><div class="ext-discussiontools-init-section-bar"><div class="ext-discussiontools-init-section-metadata"><!--__DTLATESTCOMMENTTHREAD__{"id":"c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z","timestamp":"20220928020400"}__--><!--__DTCOMMENTCOUNT__4__--><!--__DTAUTHORCOUNT__2__--></div><div class="ext-discussiontools-init-section-actions"><!--__DTSUBSCRIBEBUTTONMOBILE__{"headingLevel":2,"name":"h-Od1n-2021-11-30T04:15:00.000Z","type":"heading","level":0,"id":"h-Fonction_extractArgs()-2021-11-30T04:15:00.000Z","replies":["c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()"],"text":"Fonction extractArgs()","linkableTitle":"Fonction extractArgs()"}--></div></div></div> <p><span data-mw-comment-start="" id="c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()"></span>Je me suis penché sur cette méthode, car <a class="external text" href="https://fr.wikipedia.org/w/index.php?title=Module:Outils&oldid=157919180">actuellement</a> la boucle <code class="mw-highlight mw-highlight-lang-lua mw-content-ltr" dir="ltr"><span class="kr">for</span> <span class="n">k</span><span class="p">,</span><span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span> <span class="p">)</span></code> modifie directement les valeurs sur la table <code>frame:getParent().args</code>, et comme en Lua les tables sont des objets, transmis par référence et non par valeur, je craignais que la méthode ait pour effet de bord de modifier la table <code>args</code> de la frame parent, ce qui aurait pu engendrer des bugs dans les codes lisant cette table après avoir exécuté <code>extractArgs()</code>. </p><p>Bonne nouvelle, <code>frame:getParent()</code> fabrique en fait un nouvel objet frame à chaque appel (<a rel="nofollow" class="external text" href="https://github.com/wikimedia/mediawiki-extensions-Scribunto/blob/47f0194c2ac988e7ca942022cb49ab5eff1d89b5/includes/engines/LuaCommon/lualib/mw.lua#L255-L259">code</a>), donc uniquement le <code>args</code> de cette instance est modifié, et les autres utilisations de la frame parente ne sont pas impactées. </p><p>En revanche, la table retournée par ce <code>extractArgs()</code> est assez particulière… Il s'agit de la table "frame.args" (voir <a href="https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#frame.args" class="extiw" title="mw:Extension:Scribunto/Lua reference manual">mw:Extension:Scribunto/Lua reference manual#frame.args</a>) issue de la frame parente, qui est une table vide, sur laquelle on accède aux valeurs via des métaméthodes (<a rel="nofollow" class="external text" href="https://github.com/wikimedia/mediawiki-extensions-Scribunto/blob/47f0194c2ac988e7ca942022cb49ab5eff1d89b5/includes/engines/LuaCommon/lualib/mw.lua#L171-L222">code</a>), mais à laquelle on a ajouté les valeurs de la table "frame.args" de la frame directe, auxquelles on accède "classiquement" (sans recourir aux métaméthodes)… </p><p>Du coup, j'y trouve divers inconvénients : </p> <ul><li>Comme pour les tables "frame.args" habituelles, on n'a pas l'opérateur <code>#</code> (nombre d'éléments), la possibilité d'utiliser les méthodes <code>table.*</code>, <abbr class="abbr" title="et cetera">etc.</abbr> <ul><li>Pire, comme en fait les valeurs de la frame directe sont présentes "classiquement", on peut utiliser <code>#</code> et les méthodes "table", mais cela ne prendra en compte que les valeurs de la frame directe… d'où la possibilité de bugs bien sournois.</li> <li>Même chose avec <code>pairs()</code> et <code>ipairs()</code>, qui étant redéfinis en métaméthodes, ne prendront en compte que les valeurs de la frame parente cette fois…</li></ul></li></ul> <p><span class="romain"><a href="/wiki/Utilisateur:Od1n" title="Utilisateur:Od1n">od†n</a></span> ↗<sup><a href="/wiki/Discussion_utilisateur:Od1n" title="Discussion utilisateur:Od1n">blah</a></sup> <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()" class="ext-discussiontools-init-timestamplink">30 novembre 2021 à 05:15 (CET)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2021-11-30T04:15:00.000Z","author":"Od1n","type":"comment","level":1,"id":"c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()","replies":["c-Od1n-2021-12-04T06:55:00.000Z-Od1n-2021-11-30T04:15:00.000Z"],"displayName":"od\u2020n"}}--></span><span data-mw-comment-end="c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()"></span> </p> <dl><dd><span data-mw-comment-start="" id="c-Od1n-2021-12-04T06:55:00.000Z-Od1n-2021-11-30T04:15:00.000Z"></span>Différentes possibilités que je vois : <ol><li>Garder le code actuel. <ul><li>Avantages : Après tout, personne ne s'en est plaint jusqu'à présent et il est fonctionnel pour accéder par index aux valeurs.</li> <li>Inconvénients : Les inconvénients exposés ci-dessus, notamment il n'est fonctionnel <i>que</i> pour accéder par index aux valeurs (pas d'itération, <abbr class="abbr" title="et cetera">etc.</abbr>)</li></ul></li> <li>Utiliser une méthode corrigée : <code>extractArgsGreedy()</code> dans <a href="/wiki/Module:Bac_%C3%A0_sable/Outils" title="Module:Bac à sable/Outils">Module:Bac à sable/Outils</a>. <ul><li>Avantages : Corrige tous les problèmes mentionnés. Le code est très simple. On dispose d'une vraie table, que l'on peut donc utiliser avec grande souplesse (itération, méthodes table, <abbr class="abbr" title="et cetera">etc.</abbr>).</li> <li>Inconvénients : Toutes les valeurs sont récupérées en amont, et la récupération d'une valeur serait apparemment une opération coûteuse.</li></ul></li> <li>Utiliser une méthode lazy : <code>extractArgsLazy()</code> dans <a href="/wiki/Module:Bac_%C3%A0_sable/Outils" title="Module:Bac à sable/Outils">Module:Bac à sable/Outils</a>. <ul><li>Avantages : Par rapport au code actuel, les valeurs de la frame directe sont récupérées de manière <i>lazy</i>, donc uniformité avec la manière dont les valeurs de la frame parente sont gérées.</li> <li>Inconvénients : Mêmes inconvénients que le code actuel, seul l'accès par index aux valeurs est fonctionnel. Code déjà plus complexe (mais rien de méchant non plus).</li></ul></li> <li>Utiliser le code de <a href="https://en.wikipedia.org/wiki/Module:Arguments" class="extiw" title="en:Module:Arguments">en:Module:Arguments</a> (que d'ailleurs nous avons aussi déjà ici : <a href="/wiki/Module:Arguments" title="Module:Arguments">Module:Arguments</a>). <ul><li>Avantages : Code qui semble avoir été conçu justement pour répondre aux présentes problématiques.</li> <li>Inconvénients : Code <i>extrêmement</i> complexe. En même temps il semble stable depuis 2015. Mais franchement, c'est une sacrée usine que l'on ne peut pas se mettre à utiliser sans en avoir décortiqué le fonctionnement, vérifié les performances, <abbr class="abbr" title="et cetera">etc.</abbr></li></ul></li></ol></dd> <dd>Pour ma part, je pencherais pour la solution 2 (méthode <code>extractArgsGreedy()</code>), parce qu'elle est simple, avec de nombreux avantages, et si on part du principe que tous les arguments (ou presque) passés au modèle/module seront de toute façon utilisés par le module, cela invalide l'utilité de recourir à une méthode <i>lazy</i> pour accéder aux valeurs.</dd> <dd><span class="romain"><a href="/wiki/Utilisateur:Od1n" title="Utilisateur:Od1n">od†n</a></span> ↗<sup><a href="/wiki/Discussion_utilisateur:Od1n" title="Discussion utilisateur:Od1n">blah</a></sup> <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Od1n-2021-12-04T06:55:00.000Z-Od1n-2021-11-30T04:15:00.000Z" class="ext-discussiontools-init-timestamplink">4 décembre 2021 à 07:55 (CET)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Od1n-2021-12-04T06:55:00.000Z-Od1n-2021-11-30T04:15:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2021-12-04T06:55:00.000Z","author":"Od1n","type":"comment","level":2,"id":"c-Od1n-2021-12-04T06:55:00.000Z-Od1n-2021-11-30T04:15:00.000Z","replies":["c-Eru-2021-12-04T22:01:00.000Z-Od1n-2021-12-04T06:55:00.000Z"],"displayName":"od\u2020n"}}--></span><span data-mw-comment-end="c-Od1n-2021-12-04T06:55:00.000Z-Od1n-2021-11-30T04:15:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Eru-2021-12-04T22:01:00.000Z-Od1n-2021-12-04T06:55:00.000Z"></span>Bonjour,</dd> <dd>Je suis d'accord, <i>extractArgsGreedy</i> est le plus simple et fait bien le job, la plupart des modules utilisent tous les arguments.</dd> <dd>Cependant le # doit rarement servir sur args et je suppose que parfois tous les arguments ne sont pas utilisés (je pensais que <a href="/wiki/Module:Bases" title="Module:Bases">Module:Bases</a> serait concerné mais après vérification ce n'est pas le cas), donc l'on pourrai proposer <i>extractArgsLazy</i> comme alternatif en le documentant bien (je ne connaissais pas setmetatable).</dd> <dd>La documentation de <a href="/wiki/Module:Arguments" title="Module:Arguments">Module:Arguments</a> aurait besoin d'une traduction, mais pour l'instant je n'ai pas envie d'attraper un mal de tête :) — <a href="/wiki/Utilisateur:Eru" title="Utilisateur:Eru">eru</a> <sup>[<a href="/wiki/Discussion_utilisateur:Eru" title="Discussion utilisateur:Eru">Discuter</a>]</sup> <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Eru-2021-12-04T22:01:00.000Z-Od1n-2021-12-04T06:55:00.000Z" class="ext-discussiontools-init-timestamplink">4 décembre 2021 à 23:01 (CET)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Eru-2021-12-04T22:01:00.000Z-Od1n-2021-12-04T06:55:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"2021-12-04T22:01:00.000Z","author":"Eru","type":"comment","level":3,"id":"c-Eru-2021-12-04T22:01:00.000Z-Od1n-2021-12-04T06:55:00.000Z","replies":["c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z"]}}--></span><span data-mw-comment-end="c-Eru-2021-12-04T22:01:00.000Z-Od1n-2021-12-04T06:55:00.000Z"></span> <dl><dd><span data-mw-comment-start="" id="c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z"></span>Et voici, un problème rencontré à cause de cette itération problématique : <a class="external text" href="https://fr.wikipedia.org/w/index.php?title=Module:Site_officiel&diff=prev&oldid=197304353">197304353</a> (<a href="/wiki/Discussion_utilisateur:GrandEscogriffe#Double_boucle_sale" title="Discussion utilisateur:GrandEscogriffe">discussion</a>). <span class="romain"><a href="/wiki/Utilisateur:Od1n" title="Utilisateur:Od1n">od†n</a></span> ↗<sup><a href="/wiki/Discussion_utilisateur:Od1n" title="Discussion utilisateur:Od1n">blah</a></sup> <a href="https://fr.wikipedia.org/wiki/Discussion_module:Outils#c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z" class="ext-discussiontools-init-timestamplink">28 septembre 2022 à 04:04 (CEST)</a><span class="ext-discussiontools-init-replylink-buttons" data-mw-thread-id="c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z"><span class="ext-discussiontools-init-replylink-bracket">[</span><a class="ext-discussiontools-init-replylink-reply" role="button" tabindex="0" href="">répondre</a><span class="ext-discussiontools-init-replylink-bracket">]</span><!--__DTELLIPSISBUTTON__{"threadItem":{"timestamp":"20220928020400","author":"Od1n","type":"comment","level":4,"id":"c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z","replies":[],"displayName":"od\u2020n"}}--></span><span data-mw-comment-end="c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z"></span></dd></dl></dd></dl></dd></dl> <!-- NewPP limit report Parsed by mw‐web.codfw.main‐84d8f4b96‐7ck9c Cached time: 20241114232243 Cache expiry: 864000 Reduced expiry: true Complications: [show‐toc] DiscussionTools time usage: 0.026 seconds CPU time usage: 0.113 seconds Real time usage: 0.293 seconds Preprocessor visited node count: 475/1000000 Post‐expand include size: 3955/2097152 bytes Template argument size: 537/2097152 bytes Highest expansion depth: 5/100 Expensive parser function count: 2/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 1083/5000000 bytes Lua time usage: 0.005/10.000 seconds Lua memory usage: 880686/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 192.515 1 -total 38.39% 73.904 1 Modèle:Code 8.19% 15.772 1 Modèle:Notif_invisible 2.80% 5.388 7 Modèle:Notif 2.21% 4.245 4 Modèle:Etc. 1.77% 3.414 4 Modèle:M 1.48% 2.847 1 Modèle:Clin 1.40% 2.701 1 Modèle:=( 1.33% 2.558 1 Modèle:=) 1.02% 1.955 5 Modèle:Sourire --> <!-- Saved in parser cache with key frwiki:pcache:idhash:7396558-0!canonical and timestamp 20241114232243 and revision id 197310599. Rendering was triggered because: page-view --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Ce document provient de « <a dir="ltr" href="https://fr.wikipedia.org/w/index.php?title=Discussion_module:Outils&oldid=197310599">https://fr.wikipedia.org/w/index.php?title=Discussion_module:Outils&oldid=197310599</a> ».</div></div> <div id="catlinks" class="catlinks catlinks-allhidden" data-mw="interface"></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> La dernière modification de cette page a été faite le 28 septembre 2022 à 03:04.</li> <li id="footer-info-copyright"><span style="white-space: normal"><a href="/wiki/Wikip%C3%A9dia:Citation_et_r%C3%A9utilisation_du_contenu_de_Wikip%C3%A9dia" title="Wikipédia:Citation et réutilisation du contenu de Wikipédia">Droit d'auteur</a> : les textes sont disponibles sous <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.fr">licence Creative Commons attribution, partage dans les mêmes conditions</a> ; d’autres conditions peuvent s’appliquer. Voyez les <a class="external text" href="https://foundation.wikimedia.org/wiki/Policy:Terms_of_Use/fr">conditions d’utilisation</a> pour plus de détails, ainsi que les <a href="/wiki/Wikip%C3%A9dia:Cr%C3%A9dits_graphiques" title="Wikipédia:Crédits graphiques">crédits graphiques</a>. <br /> Wikipedia® est une marque déposée de la <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, organisation de bienfaisance régie par le paragraphe <a href="/wiki/501c" title="501c">501(c)(3)</a> du code fiscal des États-Unis.</span><br /></li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy/fr">Politique de confidentialité</a></li> <li id="footer-places-about"><a href="/wiki/Wikip%C3%A9dia:%C3%80_propos_de_Wikip%C3%A9dia">À propos de Wikipédia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikip%C3%A9dia:Avertissements_g%C3%A9n%C3%A9raux">Avertissements</a></li> <li id="footer-places-contact"><a href="//fr.wikipedia.org/wiki/Wikipédia:Contact">Contact</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code de conduite</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Développeurs</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/fr.wikipedia.org">Statistiques</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Déclaration sur les témoins (cookies)</a></li> <li id="footer-places-mobileview"><a href="//fr.m.wikipedia.org/w/index.php?title=Discussion_module:Outils&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Version mobile</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-f69cdc8f6-f6w29","wgBackendResponseTime":137,"wgDiscussionToolsPageThreads":[{"headingLevel":2,"name":"h-Hexasoft-2013-09-16T13:21:00.000Z","type":"heading","level":0,"id":"h-Typo-2013-09-16T13:21:00.000Z","replies":[{"timestamp":"2013-09-16T13:21:00.000Z","author":"Hexasoft","type":"comment","level":1,"id":"c-Hexasoft-2013-09-16T13:21:00.000Z-Typo","replies":[{"timestamp":"2013-09-16T15:16:00.000Z","author":"Zebulon84","type":"comment","level":2,"id":"c-Zebulon84-2013-09-16T15:16:00.000Z-Hexasoft-2013-09-16T13:21:00.000Z","replies":[{"timestamp":"2013-09-16T16:45:00.000Z","author":"Hexasoft","type":"comment","level":3,"id":"c-Hexasoft-2013-09-16T16:45:00.000Z-Zebulon84-2013-09-16T15:16:00.000Z","replies":[{"timestamp":"2013-09-16T18:46:00.000Z","author":"Hexasoft","type":"comment","level":4,"id":"c-Hexasoft-2013-09-16T18:46:00.000Z-Hexasoft-2013-09-16T16:45:00.000Z","replies":[{"timestamp":"2013-09-16T21:52:00.000Z","author":"Zebulon84","type":"comment","level":5,"id":"c-Zebulon84-2013-09-16T21:52:00.000Z-Hexasoft-2013-09-16T18:46:00.000Z","replies":[{"timestamp":"2013-09-16T22:10:00.000Z","author":"Hexasoft","type":"comment","level":6,"id":"c-Hexasoft-2013-09-16T22:10:00.000Z-Zebulon84-2013-09-16T21:52:00.000Z","replies":[{"timestamp":"2013-09-17T07:38:00.000Z","author":"Hexasoft","type":"comment","level":7,"id":"c-Hexasoft-2013-09-17T07:38:00.000Z-Hexasoft-2013-09-16T22:10:00.000Z","replies":[{"timestamp":"2013-09-17T10:57:00.000Z","author":"Zebulon84","type":"comment","level":8,"id":"c-Zebulon84-2013-09-17T10:57:00.000Z-Hexasoft-2013-09-17T07:38:00.000Z","replies":[{"timestamp":"2017-09-29T13:50:00.000Z","author":"Od1n","type":"comment","level":9,"id":"c-Od1n-2017-09-29T13:50:00.000Z-Zebulon84-2013-09-17T10:57:00.000Z","replies":[],"displayName":"od†n"}]}]}]}]}]}]}]}]}]},{"headingLevel":2,"name":"h-Pols12-2015-03-20T15:03:00.000Z","type":"heading","level":0,"id":"h-espaces_insécables_dans_les_paramètres_de_modèle-2015-03-20T15:03:00.000Z","replies":[{"timestamp":"2015-03-20T15:03:00.000Z","author":"Pols12","type":"comment","level":1,"id":"c-Pols12-2015-03-20T15:03:00.000Z-espaces_insécables_dans_les_paramètres_de_modèle","replies":[{"timestamp":"2015-03-20T15:49:00.000Z","author":"Zebulon84","type":"comment","level":2,"id":"c-Zebulon84-2015-03-20T15:49:00.000Z-Pols12-2015-03-20T15:03:00.000Z","replies":[{"timestamp":"2015-03-20T16:05:00.000Z","author":"Pols12","type":"comment","level":3,"id":"c-Pols12-2015-03-20T16:05:00.000Z-Zebulon84-2015-03-20T15:49:00.000Z","replies":[{"timestamp":"2015-03-20T16:17:00.000Z","author":"Zebulon84","type":"comment","level":4,"id":"c-Zebulon84-2015-03-20T16:17:00.000Z-Pols12-2015-03-20T16:05:00.000Z","replies":[]}]}]}]}]},{"headingLevel":2,"name":"h-NicoV-2015-04-17T13:35:00.000Z","type":"heading","level":0,"id":"h-Utilisation_de_notEmpty()_?-2015-04-17T13:35:00.000Z","replies":[{"timestamp":"2015-04-17T13:35:00.000Z","author":"NicoV","type":"comment","level":1,"id":"c-NicoV-2015-04-17T13:35:00.000Z-Utilisation_de_notEmpty()_?","replies":[{"timestamp":"2015-04-17T15:52:00.000Z","author":"Hexasoft","type":"comment","level":2,"id":"c-Hexasoft-2015-04-17T15:52:00.000Z-NicoV-2015-04-17T13:35:00.000Z","replies":[{"timestamp":"2015-04-17T16:25:00.000Z","author":"NicoV","type":"comment","level":3,"id":"c-NicoV-2015-04-17T16:25:00.000Z-Hexasoft-2015-04-17T15:52:00.000Z","replies":[{"timestamp":"2015-04-17T16:29:00.000Z","author":"Hexasoft","type":"comment","level":4,"id":"c-Hexasoft-2015-04-17T16:29:00.000Z-NicoV-2015-04-17T16:25:00.000Z","replies":[{"timestamp":"2015-04-17T16:56:00.000Z","author":"NicoV","type":"comment","level":5,"id":"c-NicoV-2015-04-17T16:56:00.000Z-Hexasoft-2015-04-17T16:29:00.000Z","replies":[{"timestamp":"2015-04-17T17:04:00.000Z","author":"Hexasoft","type":"comment","level":6,"id":"c-Hexasoft-2015-04-17T17:04:00.000Z-NicoV-2015-04-17T16:56:00.000Z","replies":[{"timestamp":"2015-04-17T17:25:00.000Z","author":"NicoV","type":"comment","level":7,"id":"c-NicoV-2015-04-17T17:25:00.000Z-Hexasoft-2015-04-17T17:04:00.000Z","replies":[]}]}]}]}]}]}]},{"timestamp":"2015-04-17T17:49:00.000Z","author":"Hexasoft","type":"comment","level":1,"id":"c-Hexasoft-2015-04-17T17:49:00.000Z-Utilisation_de_notEmpty()_?","replies":[{"timestamp":"2015-04-17T18:00:00.000Z","author":"Hexasoft","type":"comment","level":2,"id":"c-Hexasoft-2015-04-17T18:00:00.000Z-Hexasoft-2015-04-17T17:49:00.000Z","replies":[{"timestamp":"2015-04-17T20:07:00.000Z","author":"NicoV","type":"comment","level":3,"id":"c-NicoV-2015-04-17T20:07:00.000Z-Hexasoft-2015-04-17T18:00:00.000Z","replies":[{"timestamp":"2017-09-27T00:26:00.000Z","author":"Od1n","type":"comment","level":4,"id":"c-Od1n-2017-09-27T00:26:00.000Z-NicoV-2015-04-17T20:07:00.000Z","replies":[],"displayName":"od†n"}]}]}]}]},{"headingLevel":2,"name":"h-Od1n-2021-11-30T04:15:00.000Z","type":"heading","level":0,"id":"h-Fonction_extractArgs()-2021-11-30T04:15:00.000Z","replies":[{"timestamp":"2021-11-30T04:15:00.000Z","author":"Od1n","type":"comment","level":1,"id":"c-Od1n-2021-11-30T04:15:00.000Z-Fonction_extractArgs()","replies":[{"timestamp":"2021-12-04T06:55:00.000Z","author":"Od1n","type":"comment","level":2,"id":"c-Od1n-2021-12-04T06:55:00.000Z-Od1n-2021-11-30T04:15:00.000Z","replies":[{"timestamp":"2021-12-04T22:01:00.000Z","author":"Eru","type":"comment","level":3,"id":"c-Eru-2021-12-04T22:01:00.000Z-Od1n-2021-12-04T06:55:00.000Z","replies":[{"timestamp":"20220928020400","author":"Od1n","type":"comment","level":4,"id":"c-Od1n-20220928020400-Eru-2021-12-04T22:01:00.000Z","replies":[],"displayName":"od†n"}]}],"displayName":"od†n"}],"displayName":"od†n"}]}],"wgPageParseReport":{"limitreport":{"cputime":"0.002","walltime":"0.002","ppvisitednodes":{"value":14,"limit":1000000},"postexpandincludesize":{"value":101,"limit":2097152},"templateargumentsize":{"value":0,"limit":2097152},"expansiondepth":{"value":3,"limit":100},"expensivefunctioncount":{"value":0,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":0,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 0.000 1 -total"]},"cachereport":{"origin":"mw-web.codfw.main-f69cdc8f6-f6w29","timestamp":"20241124050703","ttl":2592000,"transientcontent":false}}});});</script> </body> </html>