387 lines
14 KiB
XML
387 lines
14 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||
<!DOCTYPE html
|
||
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
|
||
"tuteurs://DTD/tml.dtd">
|
||
<html>
|
||
<head>
|
||
<title>Les bases</title>
|
||
</head>
|
||
<body>
|
||
|
||
<h1>Les bases de LaTeX</h1>
|
||
|
||
<p> 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, <a href="latex.html">par ici</a> !). </p>
|
||
|
||
<h2>Introduction</h2>
|
||
|
||
<h3>Qu'est-ce que LaTeX ?</h3>
|
||
|
||
<p> Vous avez sans doute l'habitude d'utiliser un traitement de texte,
|
||
comme Word ou Wordperfect; le logiciel vous offre en même temps deux
|
||
fonctionnalités différentes : </p>
|
||
|
||
<ul> <li> <strong>l'édition du texte</strong> : tout ce qui concerne
|
||
l'écriture et la modification du texte (sauvegarder, copier-coller,
|
||
recherche de mots, substitution, etc) ; </li>
|
||
|
||
<li> <strong>La mise en page directe</strong>, que vous choisissez de
|
||
mettre de l'italique, laisser de l'espace, faire un tableau, etc, que que
|
||
vous voyez le résultat immédiatement, en même temps que vous
|
||
écrivez. </li> </ul>
|
||
|
||
<p> 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. </p>
|
||
|
||
<p> 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. </p>
|
||
|
||
<h3>À quoi ressemblent les commandes LaTeX ?</h3>
|
||
|
||
<p> Les commandes de LaTeX commencent par un <em>backslash</em>
|
||
(<code>\</code>), 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
|
||
<code>\LaTeX</code> ; ou encore, pour afficher en gras le mot
|
||
« important », on tape</p>
|
||
|
||
<pre>\textbf{important}</pre>
|
||
|
||
<p class="continue">ce qui donne : <strong>important</strong>.</p>
|
||
|
||
<p> Vous aurez souvent recours à des <em>environnements</em>,
|
||
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</p>
|
||
|
||
<pre>\begin{nom-de-l'environnement}</pre>
|
||
|
||
<p class="continue">et se referment avec </p>
|
||
|
||
<pre>\end{nom-de-l'environnement}</pre>
|
||
|
||
<h3>Gérer les langues étrangères</h3>
|
||
|
||
<p>Babel est un <em>package</em> 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) :</p>
|
||
|
||
<pre>\usepackage[francais]{babel}</pre>
|
||
|
||
<p> Pour obtenir un <strong>document bilingue</strong>, 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 :</p>
|
||
|
||
<pre>\usepackage[greek,francais]{babel}</pre>
|
||
|
||
<p>Pour alterner entre les langues, on utilise la commande :</p>
|
||
|
||
<pre>\selectlanguage{nom-de-la-langue}</pre>
|
||
|
||
<p class="continue">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 <a href="macros.html">macros</a> (à écrire dans le
|
||
préambule). Voici un exemple de préambule, suivi d'un modèle
|
||
d'utilisation :</p>
|
||
|
||
<pre>
|
||
\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}}
|
||
</pre>
|
||
|
||
<p> D'autre part, certaines commandes sont prédéfinies pour passer dans
|
||
l'autre langue; ainsi, il existe déjà <code>\textgreek{...}</code>.
|
||
Voici un exemple de texte grec tapé en LaTeX :</p>
|
||
|
||
<pre>\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.}</pre>
|
||
|
||
<p class="continue">ce qui donne :</p>
|
||
|
||
<div class="illustration"><img src="grec.jpg" alt="[Du grec avec LaTeX]" /></div>
|
||
|
||
<p><a href="grec.html">Pour en savoir davantage sur l'écriture du grec sous
|
||
LaTeX.</a></p>
|
||
|
||
<h3>Ce qui doit toujours figurer dans le source</h3>
|
||
|
||
<p> 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 <a
|
||
href="templates/skel.txt">récupérer ce fichier de base</a> et l'utiliser
|
||
pour tous vos documents. </p>
|
||
|
||
<table class="tableau">
|
||
|
||
<tr><td><code>\documentclass{article}</code></td> <td>Précise le genre de
|
||
document, exprimé par l'argument : <code>article</code> pour les textes
|
||
ou rapports courts, <code>report</code> pour les rapports un peu plus
|
||
longs, <code>book</code> pour les livres (ou les maîtrises...).</td></tr>
|
||
|
||
<tr><td><code>\usepackage[francais]{babel}<br/>
|
||
\usepackage[latin1]{inputenc}<br/>
|
||
\usepackage[T1]{fontenc}</code></td>
|
||
|
||
<td>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.</td> </tr>
|
||
|
||
<tr><td><code>\begin{document}</code></td> <td>Indique
|
||
le moment où commence le texte proprement dit. Ce qui figure entre
|
||
<code>\documentclass{***}</code> et <code>\begin{document}</code>
|
||
s'appelle le préambule.</td></tr>
|
||
|
||
<tr><td><code>\end{document}</code></td><td>Indique le
|
||
moment où finit le texte. Rien de ce qui suit cette commande ne sera pris
|
||
en compte par LaTeX.</td></tr>
|
||
</table>
|
||
|
||
<h2>Structurer son document</h2>
|
||
|
||
<h3>Faire un titre</h3>
|
||
|
||
<p> Pour faire un titre, il faut préciser dans le préambule le titre,
|
||
l'auteur et la date :</p>
|
||
|
||
<pre>
|
||
\title{Le titre}
|
||
\author{L'auteur}
|
||
\date{La date}
|
||
</pre>
|
||
|
||
<p>On peut aussi demander que la date soit insérée automatiquement (date du
|
||
jour de la compilation) :</p>
|
||
|
||
<pre>
|
||
\date\today
|
||
</pre>
|
||
|
||
<p>Pour ne pas préciser un champ, il faut lui donner un argument vide
|
||
(par exemple <code>\author{}</code> ou <code>\date{}</code>). </p>
|
||
|
||
<p> Ensuite, la commande <code>maketitle</code> 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 <code>\begin{document}</code>).</p>
|
||
|
||
<h3>Utilisation de sections</h3>
|
||
|
||
<p> Vous pouvez demander à LaTeX de structure automatiquement les
|
||
documents avec les commandes suivantes :</p>
|
||
|
||
<pre>
|
||
\part{}
|
||
\section{}
|
||
\subsection{}
|
||
\subsubsection{}
|
||
\paragraph{}
|
||
\subparagraph{}
|
||
</pre>
|
||
|
||
<p> Les classes de document <code>report</code> et <code>book</code>
|
||
proposent en plus la commande <code>\chapter{}</code>. L'intitulé de la
|
||
section est indiqué entre les accolades.</p>
|
||
|
||
<p> 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.</p>
|
||
|
||
<h3>La table des matières</h3>
|
||
|
||
<p> À l'endroit où l'on veut voir figurer une table des matières, on
|
||
écrit la commande <code>\tableofcontents</code>. Attention, il faut
|
||
compiler deux fois pour que LaTeX produise la table des matières
|
||
correctement. </p>
|
||
|
||
<p> 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 :</p>
|
||
|
||
<pre> \section[Titre plus court]{Un titre vraiment trop long pour tenir
|
||
sur une seule ligne} </pre>
|
||
|
||
<p> Il vous arrivera aussi d'insérer des <a
|
||
href="tableaux.html">figures</a> dans votre document. La commande
|
||
<code>\listoffigures</code> vous permet de générer une liste de toutes
|
||
les figures. Là encore, il faudra deux compilations. </p>
|
||
|
||
<h3>Deux sortes de listes</h3>
|
||
|
||
<p>On peut faire une liste d'objets avec les environnements
|
||
<code>itemize</code> (liste simple) ou <code>enumerate</code> (liste
|
||
numérotée), de la façon suivante :</p>
|
||
|
||
<pre>
|
||
Je veux acheter :
|
||
\begin{itemize}
|
||
\item des poires ;
|
||
\item des carottes ;
|
||
\item des choux.
|
||
\end{itemize}
|
||
</pre>
|
||
|
||
<p class="continue">ou alors :</p>
|
||
|
||
<pre>
|
||
Les vainqueurs sont :
|
||
\begin{enumerate}
|
||
\item Paul Lefort ;
|
||
\item Romain Legrand ;
|
||
\item Joël Lebel.
|
||
\end{enumerate}
|
||
</pre>
|
||
|
||
<p> 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.</p>
|
||
|
||
<h3>Environnements modifiant la justification des paragraphes</h3>
|
||
|
||
<ul>
|
||
|
||
<li><code>flushleft</code> : aligner le texte sur la marge de
|
||
gauche ;</li>
|
||
|
||
<li><code>flushright</code> : aligner le texte sur la marge de
|
||
droite ;</li>
|
||
|
||
<li><code>center</code> : centrer le texte ;</li>
|
||
|
||
<li><code>quote</code> : faire une citation ;</li>
|
||
|
||
<li><code>quotation</code> : faire une longue citation ;</li>
|
||
|
||
<li><code>verse</code> : faire de la poésie, chaque vers étant terminé
|
||
par <code>\\</code> ;</li>
|
||
|
||
</ul>
|
||
|
||
<p> Les environnements s'ouvrent avec <code>\begin{***}</code> et se
|
||
referment avec <code>\end{***}</code>, 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.</p>
|
||
|
||
<h3>Caractères et tailles des caractères</h3>
|
||
|
||
<h4>Différents styles</h4>
|
||
|
||
<table class="tableau">
|
||
|
||
<tr><td>\emph{emphatique}</td><td><em>EMPHasized</em></td>
|
||
<td><em>emphatique</em>. C'est celui qu'on utilise pour mettre en valeur
|
||
certains mots, les titres d'ouvrages en particulier. </td></tr>
|
||
|
||
<tr><td>\textbf{gras}</td><td><em>Bold Fonts</em></td>
|
||
<td><strong>gras</strong>.</td></tr>
|
||
|
||
<tr><td>\texttt{machine à
|
||
écrire}</td><td><em>Typewriter</em></td> <td>machine à
|
||
écrire.</td></tr>
|
||
|
||
<tr><td>\textsl{incliné}</td><td><em>SLanted</em></td><td>
|
||
incliné. Ce n'est pas de l'italique, mais en
|
||
HTML, on ne peut pas s'en rendre compte...</td></tr>
|
||
|
||
<tr><td>\textsc{Petites majuscules}</td><td><em>Small
|
||
Caps</em> </td><td>Petites majuscules, pour les noms d'auteurs ou les
|
||
sigles un peu longs. Le HTML ne sait pas afficher ça.</td></tr></table>
|
||
|
||
<p> Voici le même tableau dans le document LaTeX d'origine, qui montre
|
||
les différences entre les différents styles :</p>
|
||
|
||
<div class="illustration"><img src="fontes.jpg" alt="[Différentes fontes]" /></div>
|
||
|
||
<p>Ces différents styles sont compatibles entre eux :</p>
|
||
|
||
<pre>
|
||
\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}.
|
||
</pre>
|
||
|
||
<p class="continue">donnera au final le résultat suivant :</p>
|
||
|
||
<div class="illustration"><img src="div.jpg" alt="[Fontes combinées]" /></div>
|
||
|
||
<p> <strong>Italique</strong> : ne confondez pas le style penché
|
||
(<code>\textsl</code>) et l'italique. D'autres documentations vous
|
||
parleront également de <code>\textit</code>, qui au sens propre veut dire
|
||
« italique ». Mais nous ne vous conseillons pas de l'utiliser. En
|
||
effet, <code>\textit</code> est une commande graphique, qui demande de
|
||
l'italique, quel que soit le contexte.</p>
|
||
|
||
<p> En revanche, <code>\emph</code> 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
|
||
(<code>theorem</code> par exemple), un mot mis en valeur avec
|
||
<code>\emph</code> sera droit, et inversement. Cela vous permet
|
||
d'imbriquer des mises en valeur, sans risque de vous tromper.</p>
|
||
|
||
<p> Nous vous conseillons d'aller aussi jeter un coup d'oeil sur <a
|
||
href="&url.tuteurs;docs/hublot/hublot06.html#typo">L'emploi des styles en
|
||
typographie</a>.</p>
|
||
|
||
<h4>Tailles de fontes</h4>
|
||
|
||
<div class="illustration"><img src="tailles.jpg" alt="Tailles de
|
||
fontes" /></div>
|
||
|
||
<p> Ces commandes sont compatibles avec les précédentes.</p>
|
||
|
||
<div class="attention">
|
||
<p>
|
||
Attention au piège diabolique qui veut que les commandes de style soient
|
||
écrites <em>à l'extérieur</em> des accolades, alors que les commandes de
|
||
tailles des fontes s'écrivent <em>à l'intérieur</em> des accolades :
|
||
</p>
|
||
<pre>André \textsc{Malraux}, \emph{La condition humaine}
|
||
{\small Parlez moins fort}</pre>
|
||
</div>
|
||
|
||
<div class="metainformation"> Auteurs : François-Xavier Coudert
|
||
(2002), Marie-Lan Nguyen (2000), Émilia Robin (1998). Dernière
|
||
modification le 2002-11-04. </div>
|
||
|
||
</body> </html>
|