Lors de la définition d'un texte occidental, TeX place automatiquement un espace légèrement plus large après un point de fin de phrase qu'entre les mots ordinaires. Il décide « ce point est-il la fin d’une phrase, ou une abréviation ? » en regardant le cas de la lettre précédente — une supposition qui tourne parfois mal. Cette page explique comment cela fonctionne, les deux commandes qui le corrigent en cas de ratés (\ et \@) et \frenchspacing, qui désactive complètement l'espace de phrase plus large.
L'espace supplémentaire à la fin de la phrase
Dans la tradition de composition anglaise/américaine, l'espace à la fin d'une phrase est légèrement plus large que l'espace entre les mots (appelé officieusement « double interligne »). LaTeX suit cela par défaut, en ajoutant un espace supplémentaire après la fin d'une phrase ., ? ou !. Dans Computer Modern en 10 points, par exemple, l'espace entre les mots est d'environ 3,33 pt, tandis qu'à la fin d'une phrase, TeX ajoute environ 1,11 pt supplémentaires en haut. L'espace de phrase est également doté de plus d'étirement et de réduction, de sorte que lorsqu'une ligne est justifiée, elle est élargie avant les espaces de mots ordinaires.
En interne, chaque caractère porte un « facteur d'espace ». Après un caractère ordinaire, il est de 1 000 — la valeur inter-mots normale. Après ., ? ou !, il passe à 3000, et la règle de TeX est la suivante : si le facteur d'espace est de 2000 ou plus, ajoutez la largeur supplémentaire à l'espace suivant. C’est le mécanisme derrière l’espace de phrase plus large. L'espacement entre les caractères japonais (CJK) est régi par un système entièrement différent, donc tout sur cette page concerne vraiment le texte occidental.
Comment TeX devine la phrase par rapport à l'abréviation
Mais si chaque . terminait une phrase, les points dans les abréviations comme Mr. Smith ou etc. obtiendraient également un grand espace. Ainsi, TeX devine à partir de la cas de la lettre précédente. Si la lettre juste avant le point est en minuscule, il traite le point comme une fin de phrase et insère l'espace ; s'il s'agit d'une lettre majuscule, elle suppose une abréviation ou une initiale et utilise un espace inter-mots ordinaire.
Cette exception majuscule est implémentée via le même facteur d'espace. Les lettres majuscules se voient attribuer un facteur d'espace de 999 (et non de 1 000), donc un point suivant une majuscule ne peut pas augmenter le facteur à 3 000, et aucun espace supplémentaire n'est ajouté. La règle générale « majuscule + point = abréviation » fonctionne bien pour la plupart des proses anglaises.
Étant une heuristique, cependant, elle a des ratés dans deux directions. Premièrement, une minuscule puis un point qui n'est *pas* une fin de phrase obtient toujours le grand espace (Fig. 5, etc. and). Deuxièmement, une phrase qui *se termine* réellement par une majuscule est confondue avec une abréviation et prend trop peu d'espace (...in the USA.). La section suivante montre comment résoudre chacun d'entre eux.
Correction des ratés (\ et \@)
(1) Après une abréviation (minuscule + point, mais pas une fin de phrase). Pour supprimer l'espace supplémentaire, placez un espace barre oblique inverse \ après le point. Cela insère un espace inter-mots ordinaire explicite et sans étirement : écrire Fig.\ 5 donne exactement un espace de mot après Fig.. Alternativement, ~ fait de l'espace un espace inter-mots normal *et* y interdit un saut de ligne (un espace insécable) - idéal pour conserver une abréviation à côté de son numéro ou de son nom, comme dans Mr.~Smith ou Fig.~5.
(2) Une phrase se terminant par une majuscule. Parce qu'elle est confondue avec une abréviation et qu'elle est sous-espacée, placez \@ immédiatement avant le point pour déclarer « ceci est une fin de phrase ». \@ agit essentiellement comme une lettre minuscule invisible, rétablissant le facteur d'espace du point suivant à 3000 et donc l'espace de phrase approprié. \@ comporte des parenthèses fermantes et des guillemets, il fonctionne donc également dans des formulaires comme (\dots etc.\@).
Un mnémonique : les positions sont des images miroir. Pour une abréviation majuscule sans fin, mettez \ *après* le point ; pour une majuscule qui *termine* une phrase, mettez \@ *avant*. La compilation de l'exemple ci-dessous définit correctement l'espacement après etc. et USA.
We cite Fig.\ 5 and Mr.~Smith here.
Use etc.\ and so on, mid-sentence.
The rocket was built in the USA\@. It then flew.Notez que tout cela n'a d'importance que sous le \nonfrenchspacing par défaut (espacement des phrases large). Si vous passez à \frenchspacing dans la section suivante, les espaces de phrases sont égaux aux espaces de mots et la plupart de ces manipulations deviennent inutiles.
Désactivation de l'espace large (\frenchspacing)
\frenchspacing donne à l'espace après toute la ponctuation, y compris les fins de phrase, une seule largeur uniforme égale à l'espace inter-mots. Une fois déclaré, le point cas-test n'a plus d'importance, et Fig. 5 et USA. ressortent naturellement espacés. La commande qui restaure la valeur par défaut est \nonfrenchspacing. Vous l'écrivez normalement une fois dans le préambule pour affecter l'ensemble du document, mais le placer dans un groupe { ... } le limite à cette portée.
\documentclass{article}
\frenchspacing
\begin{document}
No extra space after this period. Or this one.
\end{document}Le nom « French » vient de la convention — en France et généralement en dehors du monde anglophone — de ne pas élargir les espaces de phrases. Les documents principalement japonais choisissent parfois également \frenchspacing pour éviter un espacement inégal des phrases dans leurs passages occidentaux. Dans la pratique moderne, de nombreux auteurs définissent simplement \frenchspacing dès le début plutôt que de corriger des cas individuels avec \@, et c'est un choix parfaitement raisonnable. Notez également qu'un package linguistique tel que babel peut ajuster automatiquement l'espacement des phrases en fonction des conventions de la langue sélectionnée.
| Commande | Ce qu'il fait | |
|---|---|---|
\nonfrenchspacing | La valeur par défaut ; espace plus large après la fin d'une phrase | La valeur par défaut ; espace plus large après la fin d'une phrase |
\frenchspacing | Rend chaque espace de ponctuation égal à l'espace inter-mots | Rend chaque espace de ponctuation égal à l'espace inter-mots |
\ | Un espace inter-mots explicite ; annule le mauvais espace après une abréviation (par exemple Fig.\ 5) | Un espace inter-mots explicite ; annule le mauvais espace après une abréviation |
~ | Un espace inter-mots insécable ; conserve une abréviation avec son numéro ou son nom (par exemple M.~Smith) | Un espace inter-mots insécable ; conserve une abréviation avec son numéro ou son nom |
\@ | Placé avant un point ; force un espace de fin de phrase après une majuscule (par exemple USA\@.) | Placé avant un point ; force un espace de fin de phrase après une majuscule |
Définissez d'abord la politique d'espacement des phrases
L'espacement des phrases est l'un de ces détails qui dérive à mesure qu'un chapitre se développe. Décidez dès le début si vous souhaitez utiliser \frenchspacing ou conserver l'espace de phrase anglais traditionnel plus large, puis utilisez \ , ~ et \@ uniquement pour les exceptions. Si vous modifiez la politique tardivement, vous devez relire les abréviations et les numéros de référence un par un.
- Par souci de cohérence, mettez
\frenchspacingdans le préambule et supprimez les espacements inégaux des documents japonais contenant de la prose occidentale. - Pour la convention sur papier anglais, conservez la valeur par défaut et corrigez uniquement les faux cas d'abréviations tels que
Fig.\ 5etMr.~Smith. - Pour les références indissociables, utilisez
~.Fig.~5,Section~2etEq.~(3)deviennent plus difficiles à lire s'ils sont répartis sur plusieurs lignes. - Pour les phrases se terminant en majuscules, écrivez
USA\@. Nextpour que TeX sache que le point termine une phrase.