Module:RbpNote
Utilisation
- Basique
Vérifie la concordance du paramétrage article avec les paramètres répertoriés. Teste les doublons des alias.
{{#invoke:RbpNote|verifier_parametres_
|__configuration=;÷₦÷!¿__catégorie≈[[Catégorie:CATEGORIE]]<!--à adapter-->¿__modèle≈MODELE<!--à adapter-->¿__double_barre≈REFUS ou ADMIS<!--à adapter-->¿commentaire≈COMMENTAIRE ADAPTÉ
|_parametres=PARAM1;PARAM2;...PARAMi;ALIASA;ALIASB;...;ALIASZ;...;PARAMn;
|_P:PARAMi=<!-- ≈ -et pas = -->ALIASA;ALIASB;...;ALIASZ;PARAMi}}
Exemples: voir {{Notes}} {{Efn}}
Paramètres développés
Principe
{{#invoke:RbpNote|verifier_parametres_|__configuration=table-configuration-du-paramétrage|_parametres=table-paramètres-corrects-dans-l'article-plus-filtres|_P:paramètre=table-alias-corrects-pour-le-paramètre-plus-valeurs-cataloguées}}
.
La fonction de ce module affiche selon le besoin dans l'article les messages de non cohérence entre les paramètres qui ont été saisis dans l'appel au modèle; Traduit les paramètres non répertoriés, les doublons d'alias, les doublons fonctionnels, les liaisons hiérarchiques, les valeurs de paramètre non admises, et une mise en catégorie (cachée ou non) d'erreur répertoriant les articles défaillants est optionnelle. La logique de cohérence de paramétrage est codée dans le modèle associé au module, elle est mise dans des tables: configuration du modèle, paramètres, paramètre et ses alias.
table de configuration du modèle
- (balises-délimeurs ;÷₦÷!¿
nb erreurs: 2
[[catégorie:]]Erreur ( id_paramètre: 1 valeur: à ne pas toucher dans un modèle déjà en usage, sauf s'il apparait un gros problème (tuning) avec les libellés des messages générés. Substituer et configurer le modèle avec les nouvelles balises. )
Erreur ( id_paramètre: nom valeur: a )
[note 1]) - catégorie des articles en erreur:
__catégorie≈[[Catégorie:la-catégorie-du-modèle]]¿
- libellé de ce modèle affiché dans la liste d'erreurs dans l'article
__modèle≈identifiant-modèle¿
- traitement des paramètres non-nommés (positionnels)
__double_barre≈option¿
- option "admis" si paramètres non nommés et nommés ou bien "refus" si uniquement paramètres à noms
- commentaire
commentaire≈commentaire-explicatif
table des paramètres
Les paramètres utilisables dans un article sont répertoriés dans une table littérale:
|_parametres=liste-des-paramètres-en-ordre-indifférent
- les paramètres sont séparés par “;”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - les paramètres ne doivent pas avoir d'espace avant et après eux.
- Un filtre concernant un paramètre est une option qui est inscrite comme un paramètre supplémentaire à la fin de la liste des paramètres déclarés.
C'est une table littérale inscrite dans la table. Le filtre s'écrit en ordonnant les paramètres de comparaison au paramètre particulier qui est mis en question:
_filtre:paramètre-concerné-(item 1)₦message-complémentaire-à-afficher-si-doublon-fonctionnel-(item 2)₦paramètre-prééminent-1-(item 3)₦paramètre-prééminent-2-(item 4)₦...
- les paramètres considérés sont séparés par “₦”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - les paramètres ne doivent pas avoir d'espace avant et après eux
- premier item le paramètre remis en question
- deuxième item le message d'erreur de fonction en double à libellé sans “₦” ni “;”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - items suivant le deuxième paramètre recommandés par rapport au premier remis en question
- NB: finir par un ";"
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] s'il y a un autre filtre ou une autre liaison qui suit.
- Une liaison "hiérarchique" concernant un paramètre est une option qui est inscrite comme un paramètre supplémentaire à la fin de la liste des paramètres déclarés.
C'est une table littérale inscrite dans la table. La liaison s'écrit en ordonnant les paramètres de dépendance hiérarchique
nb erreurs: 2
[[catégorie:]]Erreur ( id_paramètre: 1 valeur: La dépendance en arbre ou en réseau est décrite linéairement par la série de liaisons. )
Erreur ( id_paramètre: nom valeur: b )
[note 2] du paramètre particulier qui est mis en erreur si le lien de la séquence est brisé par l'absence du paramètre dont il dépend:
_liaison:paramètre-concerné-(item 1)₦message-complémentaire-à-afficher-si-brisure-(item 2)₦paramètre-maître-1-(item 3)₦paramètre-maître-2-(item 4)₦...
- les paramètres considérés sont séparés par “₦”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - les paramètres ne doivent pas avoir d'espace avant et après eux
- premier item le paramètre remis en question
- deuxième item le message d'erreur de séquence hiérarchique
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: b )
[note 2] brisée, sans “₦” ni “;”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - items suivant le deuxième paramètre indispensables (maîtres) par rapport au premier remis en question
- NB: finir par un ";"
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] s'il y a un autre filtre ou une autre liaison qui suit.
tables des alias
Les alias sont mis en groupe dans chaque table littérale par paramètre principal clé concerné (celui suggéré à l'édition visuelle). Ils sont testés pour déterminer les doublons.
_P:nom-du-paramètre-ayant-des-alias= liste-des-alias-en-ordre-de-prééminence-terminée-par-le-paramètre-lui-même
- les alias sont séparés par “;”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - les alias ne doivent pas avoir d'espace avant et après eux.
- Un "écran" filtrant les valeurs concernant un paramètre clé est une option qui est inscrite comme un paramètre supplémentaire à la fin de la liste.
Deux options conjointes existent pour la vérification de valeur paramétrée admise, une pour une obtenir une valeur parmi un ensemble obligatoire et une pour éviter une valeur inappropriée. Ce sont deux tables littérales inscrites dans la table des paramètres-alias.
- table catalogue des valeurs à choisir:
;_vobligatoire:message-complémentaire-à-afficher-si-choix-incorrect-(item 1)₦valeur-possible-(item 2)₦valeur-possible-(item 3)₦...₦valeur-possible-(item n)
- NB: si cette table est suivie de celle des refus la terminer par “;”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1]
- table catalogue des valeurs à refuser:
;_vrefus:message-complémentaire-à-afficher-si-refus-(item 1)₦valeur-impossible-(item 2)₦valeur-impossible-(item 3)₦...₦valeur-impossible-(item n)
- NB: si cette table est suivie de celle des obligatoires la terminer par “;”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - les valeurs cataloguées dans chaque table sont séparées par “₦”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1] - les valeurs n'ont ni espace avant et arrière entre les virgules ni de virgule interne
- et l'ensemble des valeurs est précédé du message d'erreur dont le libellé n'a pas de “₦” ni de “;”
nb erreurs: 1
[[catégorie:]]Erreur ( id_paramètre: nom valeur: a )
[note 1].
Code pour constituer un modèle
Configurer éventuellement à partir de ce code et adapter:
{{#invoke:RbpNote|verifier_parametres_ |__configuration=;÷₦÷! ¿__catégorie≈[[Catégorie:CATEGORIE]] ¿__modèle≈MODELE ¿__double_barre≈REFUS ou ADMIS ¿commentaire≈COMMENTAIRE |_parametres=PARAM1;PARAM2;...;PARAMn;<!--filtre présent ensuite -->filtre:PARAMx₦MESSAGEX₦PARAMa₦PARAMb₦...₦PARAMz;<!--; car autre filtre présent ensuite -->_filtre:PARAMπ₦MESSAGEΠ₦PARAMα₦PARAMβ₦...₦PARAMω;<!--; car liaison présente ensuite -->_liaison:PARAM£₦MESSAGE♦₦PARAM$₦PARAM€₦...₦PARAM¥ |_P:PARAMP=<!-- ≈ -et pas = -->ALIASA;ALIASB;...;ALIASZ;PARAMP;<!--catalogue refus présent ensuite -->_vrefus:MESSAGE-REFUS-(LISTE-VALEURS-REFUSEES)₦REFUSA₦REFUSB₦...₦REFUSZ;<!--catalogue choix présent -->_vobligatoire:MESSAGE-OBLIGATOIRE-(LISTE-VALEUR-A-CHOISIR)₦CHOIXA₦CHOIXB₦...₦CHOIXC |_P:ETC=<!-- ≈ -et pas =-->BLA;BLI;BLO;ETC;<!--catalogue refus -->_vrefus:MESSAGECSUR₦ah bon₦non₦peut-être;<!--; car catalogue choix présent ensuite -->_vobligatoire:MESSAGECHADOK₦ga₦bu₦zo₦meu}}
Notes techniques
- à ne pas toucher dans un modèle déjà en usage, sauf s'il apparait un gros problème (tuning) avec les libellés des messages générés. Substituer et configurer le modèle avec les nouvelles balises.
- La dépendance en arbre ou en réseau est décrite linéairement par la série de liaisons.
La documentation de ce module est générée par le modèle {{Documentation module}}.
Elle est incluse depuis sa sous-page de documentation. Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans le bac à sable (créer).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.
-- Duplicata à usage restreint à l'"existant sur modèle:Note"
-- (sans intégration complète module pour les avertissements et options)
local p = {}
-->
local function _xist(objet) --> transforme localement un objet composite "qui n'existe pas" nil & '' (taille 0) en valeur false d'objet pour Rbp testable sans passer par pcall
if (tostring(objet) ~= nil and #tostring(objet) > 0 ) then return objet else return false end
end --fin _xist
-->
local function _coulerr (objet) -- rouge
local objet ='<span style="color:#d00000;">' .. objet .. '</span>'
return objet
end --fin _coulerr
-->
function p.verifier_parametres_ (frame)
local caterr = ''
local liste_err = ''
local referr = ''
local nb_erreurs = 0
local nb_double_barre = 0
--> mettre les args des alias sans passer par Rbp/Alias|alias_
local modele_args = frame.args
local article_args = frame:getParent().args
--> modele_args
local mc = '' -- pairs clef
local mp = '' -- pairs paramètre
--> article_args
local ac = '' -- pairs clef
local ap = '' -- pairs paramètre
-->
local i = 0
local j = 0
local wflag = 0
for ac,ap in pairs(article_args) do
i = i + 1
if (modele_args[i] == nil and ap == '') and (modele_args['__double_barre'] == 'refus') then --> ||
nb_double_barre = nb_double_barre + 1
liste_err = liste_err.."[[Catégorie:DOUBLE BARRE]]".." Erreur. Définition de paramètre non-nommé à valeur absente par || ou |}} ,<br> "
end
--> chercher s'il y a correspondance
j = 0
wflag = false
for mc, mp in pairs(modele_args) do
j = j + 1
if ac == mc then
wflag = true
break
end
end
if wflag == false then
liste_err = liste_err.."Erreur ( id_paramètre: " ..ac.." valeur: " ..ap.." ) <br> "
nb_erreurs = nb_erreurs + 1
end
end
if _xist(modele_args['_catégorie']) then
caterr=modele_args['_catégorie']
end
if (nb_erreurs > 0) then -->
referr = referr.._coulerr("<br> nb erreurs: "..nb_erreurs.."<br>[[catégorie:"..caterr.."]]"..liste_err)
end
return referr
end
return p