Module:types de mots/analyse — Wiktionnaire, le dictionnaire libre
Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.
La documentation pour ce module peut être créée à Module:types de mots/analyse/Documentation
local b = require("Module:bases") local t = require("Module:types de mots") local p = {} function _get_alias(ali, code) aliases = {code} for code, valeur in pairs(ali) do if (aliases[valeur] == nil) then aliases[valeur]={} end table.insert(aliases[valeur], code) end return aliases end function p.sort_types(tab1, tab2) if tab1 < tab2 then return true else return false end end -- Fonction qui affiche tous les types de mot pris en compte function p.affiche_types(frame) -- Récupère les clés local keyset={} local n=0 for k,v in pairs(t.types['texte']) do n=n+1 keyset[n]=k end local tableaut = {"Cette liste est générée automatiquement à partir de [[Module:types de mots/data]].\r\n\r\nIl y a actuellement " .. n .. " types de mots dans cette liste.\r\n\r\n'''Ce sont les noms au singulier qui doivent être utilisés dans le modèle [[Modèle:S|{{S}}]]'''.\r\n"} -- Construit un tableau pour afficher les types titres = {'Code (ancre/abréviation)', 'Nom singulier', 'Nom pluriel', 'Locution singulier', 'Locution pluriel', 'Alias possibles'} table.insert(tableaut, b.tableau_entete(titres)) -- Table inversée des alias aliases = _get_alias(t.types['alias']) -- Intro -- Tri par nom de langue table.sort(keyset, p.sort_types) for k, code in ipairs(keyset) do local tab = t.types['texte'][code] local alias = aliases and aliases[code] or {} table.insert(alias, 1, "'''" .. code .. "'''") local texte_alias = table.concat(alias, '<br />') local valeurs = {tab['abrev'] or '-', tab['mot'] or '-', b.fait_categorie(b.ucfirst(tab['mot_pl']), tab['mot_pl'], true) or '-', tab['locution'] or '-', b.fait_categorie(b.ucfirst(tab['locution_pl']), tab['locution_pl'], true) or '-', texte_alias} table.insert(tableaut, b.tableau_ligne(valeurs)) end table.insert(tableaut, b.tableau_fin()) return table.concat(tableaut, "\r\n") end function p.affiche_code_remplacement_python() local resultat = {} local nombre = 0 for a,b in pairs(t.types['texte']) do nombre = nombre+1 end table.insert(resultat, '<pre>') -- Table inversée des alias aliases = _get_alias(t.types['alias']) for code, t in pairs(t.types['texte']) do local alias = aliases and aliases[code] or {} if #alias > 0 then local texte_alias = table.concat(alias, '|') local replacements = '(u"\\{\\{S\\|(' .. texte_alias .. ')\\|", u"{{S|' .. code .. '|"),'; table.insert(resultat, replacements) end end table.insert(resultat, '</pre>') return table.concat(resultat, "\r\n") end return p