Les bases de LaTeX

Ce résumé n'entend pas remplacer un manuel ; n'y figurent donc que les commandes les plus essentielles, sans détails ni options. En particulier, rien de ce qui touche aux mathématiques n'est abordé. Pour tout cela nous renvoyons aux manuels existants, aux tuteurs ou encore aux autres utilisateurs. Nous supposerons aussi que l'utilisateur sait déjà compiler un document (sinon, par ici !).

Introduction

Qu'est-ce que LaTeX ?

Vous avez sans doute l'habitude d'utiliser un traitement de texte, comme Word ou OpenOffice.org. Ces logiciels vous offrent en même temps deux fonctionnalités différentes :

Avec LaTeX, ces deux fonctionnalités sont dissociées : l'« écriture » proprement dite relève d'un logiciel appelé « éditeur de texte »; la « mise en page » vient ensuite, après interprétation du texte par le programme LaTeX. Vous manipulez donc en même temps deux versions de votre document : le texte tapé, qui contient des indications de mise en page, et la version définitive (appelée le fichier DVI), qui affiche la mise en page selon les indications fournies.

Le gros avantage de cette façon de procéder est que vous dissociez le fond de la forme : quand vous tapez, vous ne vous préoccupez pas de savoir si vous avez laissé assez d'espace à tel endroit, ou si l'équilibre de telle page est correct. C'est LaTeX qui se charge de ce genre de questions.

À quoi ressemblent les commandes LaTeX ?

Les commandes de LaTeX commencent par un backslash (\), ce qui permet au programme de les identifier. Beaucoup ne s'appliquent qu'à une seule partie du texte, délimitée par des accolades. Par exemple, pour afficher le mot LaTeX, on tape \LaTeX ; ou encore, pour afficher en gras le mot « important », on tape

\textbf{important}

ce qui donne : important.

Vous aurez souvent recours à des environnements, c'est-à-dire à des commandes qui délimitent une portion de texte dans laquelle d'autres règles de mise en page sont appliquées (par exemple pour faire des listes, centrer du texte, etc). Les environnements s'ouvrent avec

\begin{nom-de-l'environnement}

et se referment avec

\end{nom-de-l'environnement}

Gérer les langues étrangères

Babel est un package qui permet d'obtenir des documents en plusieurs langues, en respectant les typographies nationales, en affichant automatiquement les titres (comme « table des matières », « index », etc) dans la langue choisie, etc. Il gère aussi la ponctuation. Babel connaît une trentaine de langues. Par exemple, pour un document en français, vous devrez faire figurer la ligne suivante dans le source (utiliser le package « babel » avec l'option « francais », sans cédille) :

\usepackage[francais]{babel}

Pour obtenir un document bilingue, vous indiquez deux langues entre les crochets ; c'est la dernière langue indiquée qui sera la langue dominante du document. Dans l'exemple qui suit, le document est en français et on y trouvera des passages en grec :

\usepackage[greek,francais]{babel}

Pour alterner entre les langues, on utilise la commande :

\selectlanguage{nom-de-la-langue}

en spécifiant entre accolades la langue demandée. Pour ne pas avoir à retaper en permanence cette longue commande, il est préférable de se faire des macros (à écrire dans le préambule). Voici un exemple de préambule, suivi d'un modèle d'utilisation :

\documentclass{article}

\usepackage[greek,francais]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}

% Première possibilité 

\newcommand\gr{\selectlanguage{greek}}
\newcommand\fr{\selectlanguage{francais}}

% Deuxième possiblité 

\newcommand{\grec}[1]{\selectlanguage{greek}#1\selectlanguage{francais}}

D'autre part, certaines commandes sont prédéfinies pour passer dans l'autre langue; ainsi, il existe déjà \textgreek{...}. Voici un exemple de texte grec tapé en LaTeX :

\textgreek{Peis'istratis m'en o>\~un >egkateg'hrase t\~h|
>arq\~h| ka`i >ap'ejane nos'hsas >ep`i Fil'onew >'rqontos,
af' o<\~ou m`en kat'esth t`o pr\~wton t'urannos >'eth tri'akonta
ka`i tr'ia Bi'wsas, <`a d' >en t\~h| >arq\~h| di'emeinen
<enos d'eonta e>'ikosi; >'efeuge g`ap t`a loip`a.}

ce qui donne :

[Du grec avec LaTeX]

Pour en savoir davantage, reportez-vous à notre page sur l'écriture du grec ancien sous LaTeX.

Ce qui doit toujours figurer dans le source

Un document LateX comporte une série de lignes indispensables qui en définissent le squelette. On indique aussi ici un certain nombre de renseignements utiles pour faire un joli document. Vous pouvez récupérer ce fichier de base et l'utiliser pour tous vos documents.

\documentclass{article} Précise le genre de document, exprimé par l'argument : article pour les textes ou rapports courts, report pour les rapports un peu plus longs, book pour les livres (ou les maîtrises...).
\usepackage[francais]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
Lignes ajoutées pour les documents en français, pour que soit prises en compte les particularités de la typographie française; c'est aussi grâce à ce package que la date est affichée automatiquement en français, que le titre de la table des matières est « Table des matières » et non « Contents », etc. Les deux lignes suivantes permettent d'avoir des caractères correctement accentués en toutes circonstances.
\begin{document} Indique le moment où commence le texte proprement dit. Ce qui figure entre \documentclass{***} et \begin{document} s'appelle le préambule.
\end{document}Indique le moment où finit le texte. Rien de ce qui suit cette commande ne sera pris en compte par LaTeX.

Les accents et LaTeX

Vous pouvez taper indifféremment vos accents avec compose et méta. Il peut arriver (selon les configurations) que certains accents ne soient pas compris, pour différentes raisons. Si vous avez des problèmes, ou si vous voulez faire apparaître des accents étrangers, marquez les accents de la manière suivante dans votre fichier : \ accent lettre.

Par exemple, \'a donnera « á »; \'u donnera « ú ».

Le codage des accents est le même que celui de compose, à l'exception de la cédille (fa\c{c}ade donne façade). Allez voir la page des tuteurs consacrée aux accents pour savoir comment on les tape et pour avoir un tableau des divers accents avec LaTeX.

Cela dit, nous vous encourageons à taper vos accents en Unicode (c'est-à-dire, avec la touche Compose, ou naturellement sur un clavier AZERTY) ; pour cela, ajoutez systématiquement dans l'entête de votre document les deux lignes suivantes:

\usepackage[utf8]{inputenc}  
\usepackage[T1]{fontenc}       

La première ligne demande que les caractères accentués soient reconnus comme de l'utf8, la seconde, que soient utilisées les fontes de LaTeX incluant les accents.

Certains systèmes d'exploitation utilisent encore le latin1 au lieu de l'UTF-8. Dans ce cas, remplacez utf8 par latin1 dans la première ligne ci-dessus.

Structurer son document

Faire un titre

Pour faire un titre, il faut préciser dans le préambule le titre, l'auteur et la date :

\title{Le titre}
\author{L'auteur}
\date{La date}

On peut aussi demander que la date soit insérée automatiquement (date du jour de la compilation) :

\date\today

Pour ne pas préciser un champ, il faut lui donner un argument vide (par exemple \author{} ou \date{}).

Ensuite, la commande maketitle indique à LaTeX l'endroit où on veut faire figurer le titre (généralement en tout début de document, c'est-à-dire juste après \begin{document}).

Utilisation de sections

Vous pouvez demander à LaTeX de structure automatiquement les documents avec les commandes suivantes :

\part{}
\section{}
\subsection{}
\subsubsection{}
\paragraph{}
\subparagraph{}

Les classes de document report et book proposent en plus la commande \chapter{}. L'intitulé de la section est indiqué entre les accolades.

Les titres de parties ainsi obtenus sont numérotés automatiquement. Si donc vous bouleversez toute l'organisation de votre texte, la numérotation se refera d'elle-même à la compilation suivante.

La table des matières

À l'endroit où l'on veut voir figurer une table des matières, on écrit la commande \tableofcontents. Attention, il faut compiler deux fois pour que LaTeX produise la table des matières correctement.

Il peut arriver qu'un titre soit trop long pour figurer dans la table des matières sans retour à la ligne; dans ce cas, on spécifie entre crochets le titre qui doit apparaître dans la table des matières, cependant que le titre complet reste entre accolades :

 \section[Titre plus court]{Un titre vraiment trop long pour tenir
sur une seule ligne} 

Il vous arrivera aussi d'insérer des figures dans votre document. La commande \listoffigures vous permet de générer une liste de toutes les figures. Là encore, il faudra deux compilations.

Deux sortes de listes

On peut faire une liste d'objets avec les environnements itemize (liste simple) ou enumerate (liste numérotée), de la façon suivante :

Je veux acheter :
\begin{itemize}
\item des poires ;
\item des carottes ;
\item des choux.
\end{itemize}

ou alors :

Les vainqueurs sont :
\begin{enumerate}
\item Paul Lefort ;
\item Romain Legrand ;
\item Joël Lebel.
\end{enumerate}

Parlons ponctuation : dans une liste, les éléments sont terminés par un point-virgule, sauf le dernier qui finit par un point (cf. les exemples précédents). Cependant, si chaque élément est formé de plusieurs phrases, on les termine toutes par un point.

Environnements modifiant la justification des paragraphes

Les environnements s'ouvrent avec \begin{***} et se referment avec \end{***}, en faisant figurer le nom de l'environnement entre les accolades. Certains sont bien sûr incompabibles entre eux (« aligner à gauche » et « aligner à droite » par exemple). Si vous utilisez plusieurs environnements emboîtés (listes imbriquées, citations centrées, etc), veillez à bien les refermer dans l'ordre de l'imbrication : dernier ouvert, premier refermé, comme des parenthèses.

Caractères et tailles des caractères

Différents styles

\emph{emphatique}EMPHasized emphatique. C'est celui qu'on utilise pour mettre en valeur certains mots, les titres d'ouvrages en particulier.
\textbf{gras}Bold Fonts gras.
\texttt{machine à écrire}Typewriter machine à écrire.
\textsl{incliné}SLanted incliné. Ce n'est pas de l'italique, mais en HTML, on ne peut pas s'en rendre compte...
\textsc{Petites majuscules}Small Caps Petites majuscules, pour les noms d'auteurs ou les sigles un peu longs. Le HTML ne sait pas afficher ça.

Voici le même tableau dans le document LaTeX d'origine, qui montre les différences entre les différents styles :

[Différentes fontes]

Ces différents styles sont compatibles entre eux :

\emph{Dans cet exemple, il y a des mots \textbf{en gras} et des
titres de livres comme \emph{Le retour du concombre masqué} qui sont
mis en évidence}.

donnera au final le résultat suivant :

[Fontes combinées]

Italique : ne confondez pas le style penché (\textsl) et l'italique. D'autres documentations vous parleront également de \textit, qui au sens propre veut dire « italique ». Mais nous ne vous conseillons pas de l'utiliser. En effet, \textit est une commande graphique, qui demande de l'italique, quel que soit le contexte.

En revanche, \emph est une commande logique, qui demande de mettre en valeur une portion du texte par rapport à son contexte. Ainsi, si vous êtes déjà dans un environnement en italique (theorem par exemple), un mot mis en valeur avec \emph sera droit, et inversement. Cela vous permet d'imbriquer des mises en valeur, sans risque de vous tromper.

Nous vous conseillons d'aller aussi jeter un coup d'oeil sur L'emploi des styles en typographie.

Tailles de fontes

Tailles de
fontes

Ces commandes sont compatibles avec les précédentes.

Attention au piège diabolique qui veut que les commandes de style soient écrites à l'extérieur des accolades, alors que les commandes de tailles des fontes s'écrivent à l'intérieur des accolades :

André \textsc{Malraux}, \emph{La condition humaine}
{\small Parlez moins fort}
Auteurs : François-Xavier Coudert (2002), Marie-Lan Nguyen (2000), Émilia Robin (1998). Dernière modification : le .