[Tuto] Écrire une lettre avec LaTeX

latex 31 déc. 2012

Salut tout le monde !

Aujourd’hui, un article utile à pas mal de gens : la typographie d’une lettre en utilisant LaTeX. Oui, LaTeX ne sert pas uniquement à taper des maths et des formules compliquées à outrance ! Il peut aussi vous assister au quotidien, dans notre cas pour taper des courriers d’apparence professionnelle, rapidement. Et en plus, si vous programmez un peu, vous vous rendrez vite compte que vous pouvez « scripter » un petit truc pour automatiser le replacement des destinataires et ainsi créer des PDF (par exemple) distincts pour tout votre publipostage, prêts à être imprimés !

On s’y met ?

Installation de la classe « lettre »

C’est pas le plus méchant, honnêtement. Selon votre système d’exploitation, la distribution LaTeX que vous utilisez… la procédure est un peu différente.

  • Cas A : quelle que soit votre installation, vous pouvez télécharger la dernière version sur le site du CTAN et l’extraire dans votre dossier texmf local. Fouillez l’aide de votre distribution LaTeX, tout y sera indiqué.
  • Cas B : si vous utilisez TeXlive, le package s’appelle « lettre ». Utilisez tlmgr pour l’installer, ou si vous utilisez la distribution LaTeX des dépôts de votre Linux installez le package adéquat (sous Debian/Ubuntu/Mint : texlive-latex-extra )
  • Cas C : si vous utilisez MiKTeX, utilisez le gestionnaire de packages pour installer « lettre »
  • Cas D : si vous utilisez MacTeX… la réponse D. Plus sérieusement, MacTeX ne « connaît » pas lettre, il faut l’installer manuellement. Pour ce faire, téléchargez le package (cas A) et extrayez les fichiers dans $HOME/Library/texmf/tex/latex/lettre (créez les répertoires si besoin), puis ouvrez un terminal et entrez la commande texhash pour que MacTeX prenne le package en compte.

Création du document

Le squelette du document est relativement simple et explicite, mais doit être respecté, sinon vous n’arriverez pas à compiler ledit document.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
\documentclass[12pt]{lettre}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{eurosym}
\usepackage[frenchb]{babel}

\begin{document}

\begin{letter}{destinataire\\adresse1\\adresse2}
\name{expéditeur}
\signature{expéditeur}
\address{expéditeur\\adresse1\\adresse2}
\lieu{ville}
\telephone{01~02~03~04~05}
\email{maxime@fai.fr}
\nofax

\def\concname{Objet :~}
\conc{objet de la lettre}
\opening{Madame, Monsieur,}

Contenu de la lettre

\closing{Je vous prie d'agréer, Madame, Monsieur, mes salutations distinguées.}

\encl{Pièces jointes}
\ps{Post Scriptum}
\end{letter}

\end{document
}

Je ne vais pas m’étendre sur les modifications que vous aurez à apporter à ce squelette, mais tout de même :

  1. Ligne 11 : le nom/prénom du destinataire du courrier, puis son adresse
  2. Ligne 12 : votre nom/prénom
  3. Ligne 13 : votre signature
  4. Ligne 14 : votre nom/prénom suivi de votre adresse
  5. Ligne 15 : l’endroit d’où vous écrivez (pour la ligne « Helsinki, le 30 décembre 2012 » par exemple, il faudrait mettre « Helsinki » ici)
  6. Ligne 16 : votre numéro de téléphone, si vous le souhaitez. Si vous ne voulez pas le mettre, changez cette ligne en « \notelephone »
  7. Ligne 17 : votre adresse e-mail. Si vous ne voulez pas la faire apparaître ici, supprimez simplement cette ligne ou commentez-la avec un %
  8. Ligne 18 : indique que vous n’avez pas de numéro de fax à donner. Si vous en avez un, remplacez cette ligne par « \fax{01~02~03} »
  9. Ligne 21 : l’objet de votre lettre
  10. Ligne 22 : la formule d’ouverture de votre lettre
  11. Ligne 26 : la formule de politesse, parce que nous sommes bien élevés 😉
  12. Ligne 28 : si besoin, la liste des documents attachés à votre lettre (pourquoi pas votre CV, une facture…). Dans le cas contraire, supprimez simplement la ligne
  13. Ligne 29 : un éventuel PS, si vous n’en avez pas besoin supprimez la ligne

Supprimer le trait de pliage

On a tous galéré au moins une fois en essayant de plier une lettre en trois, pour la faire rentrer dans une enveloppe. Normalement, une lettre bien pliée ne laisse apparaître que la partie supérieure, sans objet ni contenu visible, seulement les adresse, date… et par magie ça tombe en face de l’ouverture de l’enveloppe. Ça, c’est chez les bisounours. Dans la réalité, c’est jamais en face, encore moins plié droit.

Mais LaTeX fait bien les choses (du moins la classe lettre), et un petit trait noir indique sur le courrier l’endroit où plier le premier volet. Super pratique, mais pas toujours voulu. Voici comment le supprimer au besoin.

On va définir une commande « \NoRule » pour effacer ce trait, puis l’appeler dans la lettre. Donc, ajoutez dans le préambule :

% Suppression du trait de pliage
\makeatletter
\newcommand*{\NoRule}{\renewcommand*{\rule@length}{0}}
\makeatother

Et enfin ajoutez une ligne après le \begin{letter}{destinataire} qui contient :

\NoRule

Recompilez, et admirez !

Un petit gain de temps : le fichier *.ins

Vous en conviendrez, il y a pas mal d’infos qui ne changent pas d’une lettre à l’autre : votre nom, votre adresse postale et e-mail, etc. En fait, une grande patrie de ce qui est indiqué dans le préambule. Du coup, pourquoi ne pas créer un fichier « ins », puisque la classe lettre nous y autorise ?

Ce petit fichier reprendra ces quelques lignes « fixes », et sera appelé par le fichier principal (votre document, lettre.tex par exemple). Il doit être dans le même dossier que le document qui l’appelle.

Créons donc un fichier expediteur.ins avec un quelconque éditeur, pourquoi pas votre éditeur LaTeX s’il est lancé. Le contenu est le même que dans le document principal, en partie du moins :

1
2
3
4
5
6
7
\name{expéditeur}
\signature{expéditeur}
\address{expéditeur\\adresse1\\adresse2}
\lieu{ville}
\telephone{01~02~03~04~05}
\email{maxime@fai.fr
}
\nofax

Les mêmes règles de personnalisation s’appliquent, mais au moins vous pouvez utiliser ce fichier pour chacune de vos lettres, et une fois que c’est rempli, on n’en parle plus.

Du coup, dans le document principal, vous devez supprimer les lignes « doublons » et ajouter à la place :

\institut{expediteur}

Si votre fichier s’appelle expediteur.ins comme supposé. S’il s’appelle autrement, remplacez le texte entre accolades par le nom de votre fichier sans le « .ins ».

Vous pourrez donc voir dans les infos de compilation ces quelques lignes indiquant que votre fichier .ins a été pris en compte :

 Sélection_013

 

Voilà, je pense qu’avec tout ça vous êtes armé(e)s pour la plupart des lettres que vous pourrez taper avec LaTeX. Et si ça n’est pas le cas… Demandez ! 🙂

Mots clés