Suivant: , Précédent: , Monter: \write   [Table des matières][Index]


27.5.2 \message

Synopsis :

\message{chaîne}

Écrit chaîne vers le fichier journal en .log et le terminal.

Typiquement, les auteurs LaTeX utilisent \typeout (voir \typeout) qui permet d’utiliser \protect sur toute commande fragile au sein de chaîne (voir \protect). Mais la commande \typeout insère un saut de ligne à la fin de chaîne contrairement à \message, aussi cette dernière peut être utile.

Dans l’exemple ci-dessous dans le corps du document

avant\message{Un Deux}\message{Trois}\message{Quatre^^JLes}
\message{pouces vont se battre.}Après

dans certaines circonstances (voir ci-dessous) LaTeX écrit ce qui suit à la fois vers le terminal et le fichier journal.

Un Deux Trois Quatre
Les pouces vont se battre.

Un ^^J produit un saut de ligne. Aussi, dans le document en sortie, on a entre ‘avant’ et ‘Après’ un seul espace (issu de la fin de ligne suivant ‘Les}’).

Alors que \message vous permet de mieux contrôler le formatage, un truc à piger c’est que LaTeX peut très bien bousiller ce formatage là en insérant des sauts de ligne selon ce qu’il a déjà sorti. Comparez ce corps de document, où le ‘Deux’ a été déplacé, à celui donné en exemple plus haut.

avant\message{Un}\message{Deux Trois}\message{Quatre^^JLes}
\message{pouces vont se battre.}Après

La chose suivante peut se produire : lorsque LaTeX produit les messages en sortie vers le terminal, le message avec ‘Un’ désormais plus court tient à la fin de la ligne de terminal, et du coup LaTeX saute de ligne juste après lui et avant le ‘Deux Trois’. Ce saut de ligne apparaît également dans le fichier journal. Cette insertion de saut de ligne peut déprendre de, par exemple, la longueur des noms complet des fichiers inclus. C’est pourquoi il est difficile de produire des lignes formatées précisément et d’une façon qui soit portable, et de même de demander que votre message commence au début d’une ligne.


Suivant: , Précédent: , Monter: \write   [Table des matières][Index]