En typographie française ont écrit les siècles en chiffres romains petites capitales suivi de er pour le premier et de e pour tous les autres.
Le but de ma commande est d’écrire \siecle{19} et d’obtenir XIXe siècle et évidemment \siecle{1} pour avoir Ier siècle
Il va donc falloir mettre une condition dans la commande, un truc du genre si 1 alors écrire er sinon e et transformer les chiffres arabes en chiffres romains.
La commande pour définir une commande c'est \define. Le nom de notre commande c'est \siecle et elle a 1 seul argument la valeur du siècle. Le nombre d’arguments utilisés dans la commande s’écrit entre [] après le \define.
La commande pour transformer un chiffre arabe en chiffre romain c'est \romannumeral
donne xix.
La commande pour les transformer en petites capitales c'est \cap
donne XIX.
La commande pour mettre en exposant c'est \high{ }
donne XIXe
C'est pas ce que l'on veut il faut contraindre \cap
donne XIXe
C'est toujours pas exactement ce que l'on veut le e est trop gros et il crée un espace au-dessus de la ligne : il faut qu'il rentre dans le rang.
donne XIXe
Il ne reste plus qu'a ajouter siècle mais il faut faire attention si on met une espace normale, si ton siècle ce trouve en fin de ligne il peut être coupé en deux, avec le chiffre en fin de ligne et le siècle repoussé au début de la ligne suivante, ce qui n'est pas très élégant. Pour éviter cela on va mettre une espace insécable qui se note ~.
La boucle de test ce fait avec
L’argument se note avec un # suivit d’un numéro qui va de 1 à n en fonction du nombre d’arguments utilisés. Voila il n'y a plus qu'à finaliser notre commande ce qui donne :
Et bien en typographie française le numéro du roi et aussi en chiffres romains mais en grandes capitales !
Je me suis donc crée une commande à deux entrée, une pour le prénom du roi, l'autre pour son numéro.
J'ai ajouté le ~ pour éviter la coupure entre le nom et le numéro et \Word au nom du roi comme ça même si j'oublie de mettre une majuscule, il sera bien écrit.
donneront
Louis XIV