Skip to content

Correction de LanguageNumber et ajout de constantes pour les variantes régionales

Nathanaël Marion requested to merge natrium729-nombres-en-lettres into master

Fix #38.

Tout ce qui a été fait ici vient de l'extension Inform 7 et a normalement été bien testé, donc il ne devrait pas y avoir de problèmes dans l'algorithme de LanguageNumber.

Choses non prises en charge :

  • Possibilité d'utiliser la graphie rectifiée (l'écriture des nombres en lettres avec des traits d'union partout). Ce serait à faire plus tard, mais je pense qu'on peut s'en passer pour le moment.
  • Les nombres ordinaux : il y a des cas particuliers comme « la page quatre-vingt » (sans S à la fin) que la routine ne gère pas.

Des constantes pour gérer les variantes régionales (« septante » et ainsi de suite) ont aussi été ajoutées, de même que des « méta-constantes » pour avoir directement les bonnes variantes selon la région choisie. Par exemple, définir DIALECT_SWITZERLAND dans son projet (avant d'inclure parser.h) mettra automatiquement les bonnes valeurs à VARIANTE_70 (septante), VARIANTE_80 (huitante) et VARIANTE_90 (nonante).

L'auteur peut modifier ce comportement. Par exemple, dans certaines régions de Suisse, on utilise « quatre-vingts » au lieu de « huitante » ; dans ce cas-ci, l'auteur doit d'abord définir VARIANTE_80 à 0 (pour « quatre-vingts ») avant DIALECT_SWITZERLAND et tout sera correct.

Merge request reports