Module:Nombre2texte/Documentation

Aller à la navigation Aller à la recherche

La documentation pour ce module peut être créée à Module:Nombre2texte/Documentation/doc

Erreur de script : Erreur Lua à la ligne 1 : unexpected symbol near '<'.

<includeonly>{{Protection}}</includeonly>

Ce module contient différentes fonction pratiques.

== Résumé des fonctions ==
Fonctions exportables :
* <code>ordinal( nombre, feminin )</code> – retourne un ordinal abrégé comme {{m|1er}}, {{m|2e}}… à partir d’un nombre ou d’une chaîne contenant uniquement des chiffres. Si le deuxième paramètre est défini, retourne {{1re}} au lieu de {{1er}}.
* <code>[[#nombre2texte_reel|nombre2texte_reel]](pnombre, plangue, ptype, porthographe, pgenre, pmajuscule)</code> – transforme un nombre en texte (5 → cinq ou cinquième). Gère la langue (fr, be, ch), l’orthographe pré ou post 1990, le genre ainsi que les variantes locales des nombres.
* <code>nombre2texte(frame)</code> – similaire à nombre2texte_reel mais pour un appel depuis un modèle.


Modules externes et autres éléments dont ce module a besoin pour fonctionner :
* <code>Module:Nombre2texte/Data</code> – pour les conversions nombre → texte.

== Détail par fonction == 
=== nombre2texte_reel===
====== Syntaxe ======
<code>Nombre2texte.nombre2texte_reel( pnombre, plangue, ptype, porthographe, pgenre, pmajuscule )</code>

Retourne la forme textuelle du nombre passé en paramètre. Prend en charge l’orthographe pré/post 1990, la création d’ordinaux ou de cardinaux et les variantes de certains nombres (septante, nonante, huitante…).

====== Contraintes ======
* Ne traite que les nombres entre -999999999999 et 999999999999 (inclus).
* Ne gère pas les nombres à point flottant (avec une virgule) — la partie décimale est ignorée, et seule la partie entière est traitée.
* Pour les ordinaux, seuls les nombres positifs sont traités (un nombre négatif est accepté mais son signe est ignoré).

====== Paramètres ======
* <code>pnombre</code> – doit être une ''chaîne de caractères''. Le nombre à convertir.
* <code>plangue</code> – langue utilisée. Valeurs possibles : "fr" (soixante-dix, quatre-vingts, quatre-vingt-dix) ; "be" (septante, quatre-vingts, nonante) ; "ch" (septante, huitante, nonante) ; "ch2" (septante, octante, nonante). Une valeur ''vide'' correspond à "fr".
* <code>ptype</code> – le type de sortie. Seules valeurs possibles : ''nil'' ou "ordinal". Si "ordinal" l’ordinal correspondant au nombre est généré (exemple : 12 → "douzième") sinon un cardinal est généré (exemple : 12 → "douze"). ''nil'' correspond à un cardinal.
* <code>porthographe</code> – le type d’orthographe suivi. Valeurs possibles : ''nil'' ou "réformée". Si “réformée”, l’orthographe post-1990 est utilisée (tirets entre chaque termes) sinon c’est l’orthographe « historique » qui est suivie.
* <code>pgenre</code> – le genre du nombre. Valeurs possibles : ''nil'' ou "féminin". Si “féminin”, la seule différence est pour les ordinaux (« premier » devient « première »); aucun changement dans les autres cas.
* <code>pmajuscule</code> – mettre une majuscule à la première lettre. Valeurs possibles : ''nil'' ou “oui”. Si « oui », la première lettre du résultat est mise en majuscule, sinon elle reste en minuscule.

====== Exemples ======
Voir ci-dessous.

=== nombre2texte ===
Même fonction que ci-dessus mais pour un appel depuis un article (''via'' un modèle).

===== Paramètres =====
Voir ci-dessus pour les détails.

* Premier paramètre non nommé – le nombre à convertir (format numérique).
* <code>langue=</code> – la langue utilisée (''vide'' ou "fr" (équivalents), "be", "ch" ou "ch2").
* <code>orthographe=</code> – l’orthographe suivie (''vide'' ou "réformée").
* <code>genre=</code> – le genre du résultat (''vide'' ou "féminin").
* <code>majuscule=</code> – mettre une majuscule à la première lettre (''vide'' ou “oui”).
* <code>type</code> – générer un cardinal ou un ordinal (''absent'' ou “ordinal”).

===== Exemples =====
Appel de base : <code><nowiki>{{#invoke:Nombre2texte|nombre2texte|132}}</nowiki></code> → {{#invoke:Nombre2texte|nombre2texte|132}}<br/>
Ordinal : <code><nowiki>{{#invoke:Nombre2texte|nombre2texte|132|type=ordinal}}</nowiki></code> → {{#invoke:Nombre2texte|nombre2texte|132|type=ordinal}}<br/>
Majuscule : <code><nowiki>{{#invoke:Nombre2texte|nombre2texte|132|majuscule=oui}}</nowiki></code> → {{#invoke:Nombre2texte|nombre2texte|132|majuscule=oui}}<br/>
Langue : <code><nowiki>{{#invoke:Nombre2texte|nombre2texte|198|langue=be}}</nowiki></code> → {{#invoke:Nombre2texte|nombre2texte|198|langue=be}}<br/>
Genre : <code><nowiki>{{#invoke:Nombre2texte|nombre2texte|1|genre=féminin|type=ordinal}}</nowiki></code> → {{#invoke:Nombre2texte|nombre2texte|1|genre=féminin|type=ordinal}}<br/>
Orthographe : <code><nowiki>{{#invoke:Nombre2texte|nombre2texte|1927|orthographe=réformée}}</nowiki></code> → {{#invoke:Nombre2texte|nombre2texte|1927|orthographe=réformée}}

{{Projet Scribunto}}

<includeonly>
[[Catégorie:Module en langage Lua]]
</includeonly>