Il y a fort peu de temps (mais beaucoup trop pour ma mémoire), j'ai lu comment on pouvait écrire correctement les numéros de siècle (peut-être un site sur la typographie helvétique). Autant que je m'en souvienne, il était recommandé d'abréger l'adjectif ordinal ainsi : \textsc{xxi} siècle. On notera le xxi en bas de casse, que la commande \textsc{} passe en petites majuscules. Donc, là, pas de problème.

Mais j'ai oublié comment inscrire le e qui suit le numéro, qui n'est pas un exposant (donc exit \up{e}). Je me rappelle que ce e doit être saisi ainsi : \ieme. Mais j'obtiens un e qui me semble placé un peu trop haut (à la hauteur d'un exposant, ce qu'il faut justement éviter). Ai-je la berlue, ou y aurait-il réellement une manip' supplémentaire à faire ? La documentation de Daniel Flipo (french babel) n'en dit rien (cf. p. 7-8), ni plus que les sources sérieuses sur la typographie latexienne.

%% !TeX program = lualatex
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}   
\begin{document}
Le \textsc{xxi}\ieme{} siècle ; ou même le \textsc{xxi}\ieme\,siècle (avec une espace fine insécable, toujours indispensable pour éviter les césures inopportunes)
\end{document}

Posée 10 Jan '23, 18:55

fred02840's gravatar image

fred02840
4.2k18156187
Taux d'acceptation : 16%

Modifiée 11 Jan '23, 12:24

Pathe's gravatar image

Pathe ♦♦
7.5k29197245

1

Attention ! Les contre-obliques (\) saisies telles quelles dans les contributions ne sont visibles que si elles sont insérées en tant que ⟨code⟩. Pour insérer du ⟨code⟩, notamment des commandes LaTeX, cf. la FAQ Comment mettre en forme ma contribution ?.

(10 Jan '23, 20:43) denis ♦♦ denis's gravatar image

En fait, \ieme est (presque) défini comme \up{e} : \def\ieme{\up{e}\xspace} (cf. fichier french.ldf). Et ce « e » ne me semble pas placé trop haut (je ne sais d'où vous tenez qu'il faut éviter qu'il soit à la hauteur d'un exposant). En revanche, l'espace avant « siècle » me semble devoir être une inter-mot normale car, après tout, « textsc{xxi}ieme{} siècle » est (juste) l'abréviation de « vingt-et-unième siècle ».

(10 Jan '23, 20:53) denis ♦♦ denis's gravatar image

La commande \ieme fournie par babel-french est simplement définie comme \up{e}\xspace.

On peut remarquer en passant qu'il n'y a pas besoin de mettre {} après \ieme (grâce au \xspace dans la définition).

Par ailleurs, on voit que \ieme et \up{e} donneront le même résultat, à savoir un e en « lettre supérieure », à la condition que la fonte utilisée propose bien des lettres supérieures. C'est bien le cas ici.

Les lettres supérieures ne dépassent pas verticalement la ligne supérieure des grandes capitales... mais pas des petites capitales. Je ne crois pas qu'il y ait des fontes qui proposent des lettres supérieures pour petites capitales.

Votre manière de typographier est donc la manière correcte. Il est en effet recommandé d'utiliser des petites capitales pour les numéros de siècles.

À remarquer que l'utilisation de vraies lettres supérieures (contrairement à l'utilisation d'une simple homothétie-translation à partir des lettres normales) a sans doute l'avantage d'un bon positionnement vertical (surtout par rapport aux grandes capitales) mais a surtout l'intérêt de fournir des glyphes qui ont une couleur typographique compatible avec les autres caractères. Avec une homothétie mathématique, la lettre placée en exposant est trop maigre (c'est le même phénomène pour les petites capitales qui seraient trop maigres si elles étaient obtenues par une simple homothétie de rapport 70 %).

Par ailleurs, entre \textsc{xxi}\ieme et siècle, je mettrais une espace insécable normale (~ en TeX) et non une fine insécable (\,).

Lien permanent

Publiée 10 Jan '23, 20:55

fpantigny's gravatar image

fpantigny
1.2k44
Taux d'acceptation : 34%

1

Oui, tout à fait d'accord pour l'espace insécable (ce que j'ai omis de mentionner dans mon précédent commentaire).

(10 Jan '23, 22:16) denis ♦♦ denis's gravatar image
-1

J'avais trouvé sur ce site ou mathematex, une définition qui utilise textsuperscript{e}

\def\siecle#1{\textsc{\romannumeral #1}\textsuperscript{e}~siècle}
Lien permanent

Publiée 10 Jan '23, 20:57

Arathorn's gravatar image

Arathorn
1112
Taux d'acceptation : 25%

1

Je préconiserais plutôt ceci : % Package pour chiffres arabes → romains \usepackage{modroman} % Package pour tests conditionnels \usepackage{xifthen} % % Macro (usage : p. ex. \scl{21}) \newcommand{\scl}[1]{% \textsc{\nbroman{#1}}% \ifthenelse{#1>1}{\ieme}{\ier}~siècle% }

(10 Jan '23, 22:18) denis ♦♦ denis's gravatar image
1

Je ne connaissais pas ce paquet.

Il manque la contre-oblique (\) avant nbroman pour la commande.

(11 Jan '23, 14:10) Arathorn Arathorn's gravatar image

@denis. La macro donne le même résultat que la formule proposée par @fpantigny avec l'espace insécable (\textsc{xxi}\ieme~siècle) : parfait !

(11 Jan '23, 19:22) fred02840 fred02840's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.