Il existe, grosso modo, deux classes de documents pour écrire
une lettre sous LaTeX : la classe letter
et la classe
lettre
.
letter
C'est la plus simple des deux (mais forcément, elle fait moins de
choses...). Attention, par défaut, cette classe ne respecte pas la
convention de placement des noms à la française.
\usepackage{french}
corrige cela (ce package n'existe plus,
le remplacent un package commercial frenchpro
et une
version diminuée de ce dernier mais gratuite frenchle
),
mais pas \usepackage[francais]{babel}
.
Un document de base est structuré comme suit (les parties qui doivent être modifiées sont en italique) :
\documentclass[11pt]{letter} \name{nom de l'expéditeur} \address{adresse de l'expéditeur} \signature{signature de l'expéditeur} \date{date d'expédition} \begin{document} \begin{letter}{nom du destinataire} \opening{formule de politesse (« adresse » : cher Monsieur, etc.)} Corps de la lettre \closing{formule de politesse (veuillez agréer, etc)} \ps{post-scriptum} \cc{nom des autres destinataires} \encl{pièces jointes} \end{letter} \end{document}
Bien entendu, il n'est pas nécessaire de spécifier \ps
,
ou \cc
, s'il n'y a pas lieu. Vous pouvez télécharger le fichier modèle pour la classe de documents
letter
.
La présentation de la lettre dépendra de la langue choisie. Par
défaut, la présentation est anglaise (on signe à la main sous le nom,
présentation en blocs sans indentation pour la première ligne d'un
paragraphe, formule de politesse d'ouverture alignée à gauche, etc.) En
utilisant le package french
de babel
(attention, c'est bien french
qu'il faut et non
francais
).
lettre
La classe lettre
se fonde sur letter
, mais
avec quelques améliorations. Elle a été écrite par Denis Mégévand.
Attention ! Pour l'instant, la version installé sur clipper a des bugs
un peu pénible (double compilation nécessaire parce qu'elle ne reconnaît
pas \closing
tout de suite). Vous pouvez télécharger une version
plus récente (2.346), il vous suffira ensuite, pour l'utiliser, de la
placer dans votre répertoire inputs.
Voici un exemple de fichier de base (vous disposez de toutes les
commandes de la classe letter
, on ne les redonne pas toutes
ici) :
\documentclass[11pt]{lettre} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} \usepackage[francais]{babel} \begin{document} \begin{letter}{destinataire} \def\concname{Objet :~} % On définit ici la commande 'objet' \conc{Objet de la lettre} \nref{Références de la lettre, de votre point de vue} \vref{Références de la lettre, du point de vue de votre interlocuteur} \opening{Madame, Monsieur,} Corps de la lettre \closing{formule de salutations} \end{letter} \end{document}
Une question fréquente concerne la manière de retirer le trait que la classe lettre imprime pour faciliter le pliage du courrier en trois. On peut trouver disgracieux ce trait. Pour le retirer, il y a trois méthodes
Premièrement, on peut placer dans le préambule cette définition
\makeatletter \newcommand*{\NoRule}{\renewcommand*{\rule@length}{0}} \makeatother
et utiliser la commande \NoRule
dans le corps des lettres
pour lesquelles on ne souhaite pas ce trait. Par exemple
\begin{letter}{Premier destinataire} \NoRule Corps de la lettre \end{letter} \begin{letter}{Second destinataire} Corps de la lettre \end{letter}
donnera deux lettres, dont la première n'aura pas de trait de pliage mais la seconde si.
Deuxièmement, vous pouvez placer dans le fichier .ins
(voir
la section « Personnaliser ») une ligne supprimant le trait
chaque fois que vous utiliserez ce fichier .ins
.
\renewcommand*{\rule@length}{0}
Troisièmement, si vous voulez systématiquement supprimer ce trait, vous
pouvez créer une classe spéciale xletter
. Créez un fichier
xletter.cls
et saisissez le code suivant.
\NeedsTeXFormat{LaTeX2e} \ProvidesClass{xlettre} \newcommand*{\xlettre@do}{} \newcommand*{\xlettre@rule}{} \newcommand*{\xlettre@norule}{% \let \xlettre@institut=\institut \def \institut ##1{% \xlettre@institut{##1}% \def \rule@length {0}% }% \def \@institut {% \makeatletter \input{default.ins}\makeatother \def \rule@length {0}% }% } \DeclareOption{rule}{\let \xlettre@do =\xlettre@rule} \DeclareOption{norule}{\let \xlettre@do =\xlettre@norule} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{lettre}} \ExecuteOptions{norule} \ProcessOptions \LoadClass{lettre} \xlettre@do \endinput
Placez ce fichier dans les chemins de recherche de TeX. L'utilisation
de cette classe est strictement identique à celle de lettre
mais elle accepte deux options supplémentaires :
\documentclass{xlettre}
ou
\documentclass[norule]{xlettre}
supprime systématiquement les traits de pliage, tandis que
\documentclass[rule]{xlettre}
les ajoute conformément aux règles de la classe lettre
.
Un certain nombre de paramètres de vos lettres sont peu susceptibles
de changer. Votre nom ou votre adresse, par exemple. Vous souhaiteriez
donc pouvoir disposer d'un en-tête par défaut pour vos lettres. Ça tombe
bien, car avec la classe lettre
, l'en-tête par défaut est
obligatoire.
L'en-tête est défini dans un fichier de configuration,
default.ins
et qui doit être placé dans le répertoire
inputs (une autre possibilité est de placer ces commandes dans un
fichier noel.ins
et d'utiliser dans le fichier
.tex
la ligne
\institut{noel}
dans le préambule, à chaque fois que vous devrez utiliser ces paramètres). Voici un exemple :
\name{Père Noël} \signature{Papa Noël} \address{\centering \textbf{\textsc{Père Noël, Lutins et Associés}}\\ % On peut mettre en forme l'en-tête... Ici, il est centré, et on % demande à ce que le nom soit en petites majuscules et en gras. Fabricant de jouets depuis toujours\\ Palais des Jouets} \lieu{Pôle Nord} % Ce paramètre sert à indiquer dans la lettre « Au Pôle % Nord, le 25 décembre 2000 » \telephone{} \email{pere.noel@polenord.pn} \nofax % C'est \fax{} pour indiquer un numéro de fax
Ce qui donne la chose suivante en guise d'en-tête :