Que signifie l'erreur: « You can't use `\spacefactor' in vertical mode »?
- Message:
You can't use `\spacefactor' in vertical mode
- Origine: TeX.
indique que l'on ne peut utiliser \spacefactor
que lors de la construction d'une liste horizontale. Deux erreurs similaires existent :
Elles surviennent toutes lors de l'utilisation de la commande \@
en dehors d'un paragraphe. Comme de nombreux noms de commandes internes débutent par un @
, cette erreur arrive lorsqu'on les utilise dans le préambule du document (par exemple, \@startsection
), sans avoir entouré ce code avec un \makeatletter
et un \makeatother
. Dans ce cas, voit \@
suivi par les lettres startsection
, et à la prochaine utilisation de ce code, il exécute donc \@
, ce qui produit finalement l'erreur.
Ce sujet est détaillé dans la question « Que font `\@` et `@` dans les noms des commandes ? ».
Sources :
- LaTeX Companion, 2e édition, Frank Mittelbach, Michel Goossens, Johannes Braams, David Carlisle, Chris Rowley (Pearson, 2006) ; ISBN: 978-2-7440-7182-9. Annexe B, Détecter et résoudre les problèmes, reproduite avec l'aimable autorisation de l'éditeur,