Table des matières

Que signifie l'erreur: « Missing number, treated as zero »?

Cette erreur survient lorsque \TeX s'attend à trouver un nombre ou une dimension et trouve autre chose. Par exemple, la commande \value{page}, au lieu de \thepage, produit cette erreur puisqu'une commande \value isolée fait que \TeX s'attend à une assignation de bas niveau d'un compteur. En général, utiliser un registre de longueur sans fonction appropriée, comme \setlength, peut déclencher cette erreur. Habituellement, le problème se résout en utilisant les techniques présentées à la question « Comment traiter les erreurs ? ».

On obtient également ce message lorsque \usebox n'est pas suivi d'un nom de boîte défini par \newsavebox, car, en interne, ces noms sont représentés par des nombres.

Deux erreurs spécifiques à \LaTeX circulaient couramment dans les groupes de discussion et sont présentées ici.

Les exemples du “LaTeX Companion”

Le plus courant provient de la tentative d'utilisation d'un exemple du LaTeX Companion (première édition) qui donnait le texte d'erreur suivant :

! Missing number, treated as zero.
<to be read again> 
                   \relax 
l.21 \begin{Ventry}{Return values}

Le problème vient du fait que, dans sa première édition, les exemples de LaTeX Companion supposaient toujours que l'extension calc était chargée : bien que mentionné dans le livre, ce fait n'est pas souvent noté. Le remède consiste donc à charger l'extension calc dans n'importe quel document utilisant des exemples du LaTeX Companion.

Ce qui suit n'a qu'un intérêt historique et n'est indiqué que pour information.

La configuration de LaTeX 2.09

L'autre problème, probablement très rare de nos jours, provient d'une mauvaise configuration d'un système qui a été mis à jour en se basant sur \LaTeX 2.09. Dans ce cas, un document utilisant l'extension times génère une erreur au niveau de la commande \begin{document}. Les chemins de recherche de fichiers sont ici mal configurés et votre \usepackage{times} a récupéré une version \LaTeX 2.09 de l'extension, qui à son tour en a invoqué une autre qui n'a pas d'équivalent dans \LaTeXe.

La solution évidente consiste à réécrire les chemins de sorte que les extensions \LaTeX 2.09 ne soient choisies qu'en dernier recours afin que l'extension \LaTeXe times soit récupérée. Une solution bien meilleure consiste à remplacer le tout par quelque chose d'un peu plus récent. Ainsi, l'ensemble psnfss actuel ne fournit pas d'extension times : l'extension alternative mathptmx incorpore des mathématiques de type Times et un sans-serif visage basé sur Helvetica et mis à l'échelle pour correspondre plutôt mieux au texte Times.


Sources: