[Tuto] Une introduction à LaTeX

latex 21 nov. 2012

Vous avez 20 minutes ? Vous avez envie de vous mettre à LaTeX ? N’attendez plus ! J’ai essayé de vous compiler en un article les bases de ce langage ô combien utile dès lors que vous avez un document texte à rédiger. Lancez vous ! 🙂

Généralités

Je ne vais pas refaire un topo sur le « pourquoi LaTeX c’est bien », pour ça je vous renvoie vers un autre post.

Mais avant de s’attaquer aux choses sérieuses, quelques bases qui ne peuvent pas faire de mal, en particulier tout ce qui touche aux extensions des différents fichiers produits par TeX pendant la compilation de vos documents. Alors :

  • .tex : c’est votre fichier source, le texte brut annoté que vous tapez dans l’éditeur. C’est ce même fichier qui sera envoyé au « compilateur », ou que vous devez envoyer à un ami si vous voulez partager le document éditable avec lui.
  • .dvi : pour DeVice Independant. C’est un format de description de documents, indépendant de la plate-forme qui va le lire (un peu comme le PDF). Il sera affiché de la même façon quel que soit l’ordinateur/logiciel qui va l’ouvrir.
  • .aux : pour auxiliaire, il n’a d’utilité que pour TeX
  • .ps : pour PostScript. C’est, pour faire très simple (donc les connaisseurs, tapez pas), comme un PDF, mais en « vectoriel », c’est à dire que vous pouvez zoomer, changer sa taille… et le rendu sera toujours net et propre. C’est typiquement LE fichier à filer à un imprimeur 😉
  • .pdf : c’est le fichier final que vous allez partager avec vos amis/collègues/autres, ou encore imprimer. Mais j’imagine que je ne vous apprends rien. Le PDF a, quand il est bien foutu, un rendu identique quel que soit l’ordinateur/logiciel qui va l’ouvrir.

La liste n’est pas exhaustive : en fait, selon les packages (extensions) que vous aller charger, il peut y avoir des fichiers en plus (bibliographie, glossaire…) ou en moins (si vous ne demandez qu’un PDF, vous n’aurez pas forcément le PS ou le DVI correspondant, comme en utilisant pdfLaTeX).

Pour ce qui est des compilateurs : c’est le sous-programme de TeX qui décide, entre autres, de ce que vous obtenez à la fin du processus. La plupart du temps, vous voulez un PDF, donc on va faire simple ici et utiliser pdfLaTeX. Vous découvrirez les autres si vous le voulez, par la suite !

 

Installation de LaTeX

Alors là, ça varie vraiment selon votre système d’exploitation. Je vais donner des instructions basiques pour Windows et Linux (du moins les debian-like, à adapter si vous utilisez Fedora [huhu] ou autre chose). Il existe aussi un paquet « universel » pour Linux, mais ce n’est pas le plus simple pour un débutant, même si les packages y sont bien plus à jour.

Sous Windows : téléchargez MiKTeX, installez-le. C’est fini. Vous pouvez ajouter des packages, changer les réglages… via le menu Démarrer –> Tous les programmes –> MiKTeX –> le machin qui va bien. Vous pouvez aussi et en plus installer TeXmaker, un éditeur bien sympa pour démarrer.

Sous Debian/Linux : ouvrez votre Centre de logiciels ou, mieux, Synaptic. Votre mot de passe root vous sera demandé. Recherchez les paquets contenant « texlive ». Choisissez ceux qui vous tentent, au moins le « base » et la doc. Et puis si vous voulez pas être enquiquinés parce qu’il manque un truc, installez texlive-full, il rapatrie tout ce qu’il faudra et même plus. Vous pouvez là aussi installer un autre éditeur : texmaker, texlive…
Notez cependant que, du moins sous Ubuntu 12.04, Mint 13 et Debian Squeeze, les dépôts contiennent TeXlive 2009, là où une installation manuelle vous téléchargerait la 2012. C’est votre choix ! Pour l’install manuelle, ça se passe ici. Pensez à ajouter le path adéquat à votre .profile et aussi à /etc/profile ! Et pensez aussi à régler votre éditeur pour utiliser cette dernière version, le cas échéant.

 

Structure des documents

Basiquement, votre fichier .tex sera constitué de 2 parties :

  1. le préambule : il contient le type de document, les éventuels packages que vous voudrez charger, des options, des personnalisations…
  2. le document lui-même : votre contenu, quoi.

On va maintenant détailler chacune de ces 2 parties.

 

Le préambule

Il commence toujours par la définition du type de document, avec quelques options.

\documentclass[12pt]{article}

Ici, on va taper un article, avec une taille de police de 12. Profitons-en pour voir la structure d’une commande. Généralement, la forme ne change pas : la commande est undiquée par le symbole « \ », suivi du nom de la commande (ici « documentclass »), puis des options à passer à la commande entre crochets et séparées par des virgules « [option1,option2] », et enfin la classe de document, ou le package, entre accolades « {package}.

Chargeons maintenant un premier package : babel, qui permet d’adapter la mise-en page du document, les césures… à une langue donnée.

\usepackage[francais]{babel}

Ensuite, on peut définir certains éléments particuliers, ce qui les rendra plus pratiques à utiliser ensuite, pour la page de garde par exemple :

\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\author{Maxime Auvy}
\title{Mon premier document \LaTeX
}

Les 2 premières lignes servent à choisir l’encodage utilisé pour sortir le PDF. Si au lieu d’un caractère accentué vous obtenez un truc immonde, c’est qu’il faut changer utf8x par (par exemple) latin1 . Le fontenc peut être utile, mais parfois le rendu est meilleur sans. À vous de voir ! (vérifiez en particulier les césures des mots accentués…)

Et les 2 dernières lignes… Si vous êtes un minimum anglophone, vous comprendrez. Sinon, LaTeX va être compliqué pour vous !

 

Le document

Il est toujours situé entre les 2 balises adéquates. Exemple :

\begin{document}

ici on tape son document, rapport, ou autre

\end{document
}

Un premier exemple de document rapide :

\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage[francais]{babel}
\usepackage[T1]{fontenc}
\author{Maxime Auvy}
\title{Mon premier document \LaTeX}
\date{\today}

\begin{document}
Hello world! ;)
\end{document
}

Ouais bon, désolé, je savais pas quoi mettre comme texte. Compilez. Normalement, vous obtenez un joli PDF avec le texte (et probablement un numéro de page). Parfait ! Vous savez l’essentiel de la structure de base d’un document TeX.

Quelques packages utiles pour écrire en français

  • babel avec l’option francais OU le package eFrench (très bien fichu, en passant)
  • xspace, une macro bien utile qui sera utilisée par babel, par exemple au niveau des signes de ponctuation, ou dès qu’un espace est « mangé » par TeX
  • ae et aeguill, pour avoir des guillemets français et non des anglais
  • icomma (surtout si vous tapez des maths) gère mieux la virgule comme séparateur décimal (comme chez nous en France), alors qu’elle sépare les milliers chez les anglo-saxons

 

Mise en forme du texte

Plutôt que de longs discours, je vais vous mettre le code, puis le rendu. Ainsi, je pense que ça passera mieux pour vous !

Voyons maintenant comment s’utilisent, avec \LaTeX, la mise en \textbf{gras}, les formes \textit{italique}, \underline{souligné}, \textsc{petites capitales} et les familles \texttt{type machine}, ou encore \textsf{sans empattement}.

On peut aussi changer la taille en {\tiny minuscule}, {\small petit}, {\large grand}, {\huge énorme
}, et ainsi de suite.

On obtient :

Pas bien méchant, hein ?

Une précision (parce que j’vous vois venir) : pour mettre du texte en valeur, on utilise la commande \emph{texte}, et non pas \textit{texte}. Pour une raison quasi-évidente : si vous écrivez une phrase en italique et que vous voulez insister sur un mot, l’emphase remettra ce mot droit. L’italique, non. Et bim.

 

Des mathématiques

Ben oui, parce que c’est une des grandes forces de LaTeX sur la concurrence. En effet, et particulièrement en tant qu’étudiant scientifique, j’ai souvent été amené à taper une équation (au moins) dans un rapport. On est d’accord, avec MS Word c’est super chiant, pour peu qu’on l’ouvre ailleurs la formule est devenue une image (Microsoft et sa rétro-compatibilité…), et si on se dit « ouvrons-le sous LibreOffice », on va au devant de gros ennuis.

Mais heureusement, LaTeX est là. Et en fait, c’est très simple à utiliser. On va une fois de plus rester dans le « basique », j’essaie ici de vous initier, pas de faire de vous des pros. En gros, on différencie 2 modes d’écriture :

  • le mode « en-ligne », qui vous permet d’insérer une formule (courte, a priori) dans une ligne qui contient aussi du texte. Du coup, les symboles (fractions etc) sont « pouitrés » pour tenir sur une ligne de haut… On écrit des maths par cette méthode en plaçant les formules dans une balise :

$ ... $

  • le mode « hors-texte » (parfois appelé « équation »),  qui permet d’écrire une formule sur une ligne à part, proprement, et si vous le souhaitez avec un numéro (pour pouvoir y faire référence plus tard. Ici, les balises à utiliser sont :

\[ ... \]

Les mathématiques servent à bien d’autres choses, mais ce n’est pas mon propos. Il faut déjà penser à ajouter dans votre préambule les packages qui servent à mettre en forme ces fameuses équations :

\usepackage{amsmath, amssymb, amsfonts}

Un exemple rapide pour vous montrer la puissance de la chose :

\[ f_n : x \mapsto \alpha^3 \sqrt{2\pi}\frac{1}{2} \, \sum_{i=1}^{n}{\ln x} \]

Comme vous pouvez le voir, les fonction mathématiques sont semblables à toutes les autres commandes. On les appelle gentiment, et la plupart des éditeurs vous proposent une auto-complétion (avec la touche Tab du clavier, souvent). Le rendu :

Et voilà !

 

Les environnements

Ils sont utiles pour les objets un poil plus évolués : flottants, tableaux, images, et ainsi de suite. Ils sont toujours de la forme :

\begin{nom de l'environnement}
...
\end{nom de l'environnement
}

Et voici quelques environnements courants :

  • itemize (avec des \item à chaque ligne dans l’environnement), pour des listes à puces
  • enumerate (idem pour le \item), pour des listes numérotées
  • description (\item encore) pour des listes simples
  • tabular (suivi des options de colonnes) pour faire des tableaux. C’est un poil plus compliqué, mais vous pouvez utiliser l’assistant « tableaux » de teXmaker !
  • bfseries, sffamily… pour du gras, du sans-serif…
  • small, Large, HUGE… pour la taille du texte
  • center, flushleft, flushright… pour les alignements de paragraphe

 

Sections, chapitres, références croisées…

On parle ici de la structure logique de votre document. Chapitres, parties, sections… cette hiérarchie dépend avant tout de la classe que vous utilisez : la commande des parties, \part, n’existe pas dans la classe article, par exemple. Les plus courantes sont toutefois les sections et sous-(sous-)sections :

\section{Titre de niveau 1}
\label{mon_label}

\subsection{Titre de niveau 2}

\subsection*{Autre titre de niveau 2}
\addcontentsline{toc}{subsection}{Autre titre de niveau 2}

Texte, qui cite la section~\ref{mon_label} en page~\pageref{mon_label}.

\subsubsection{Titre de niveau 3
}

Notez l’astérisque en ligne 3. Il indique à TeX de ne pas numéroter automatiquement cette sous-section, et de ne pas la faire apparaître dans la table des matières. Cette « astuce » est utilisable dans beaucoup de cas de figures 🙂
La ligne juste en dessous permet d’ajouter quand même la sous-section à la table des matières, utile si vous ne voulez pas numéroter une intro ou conclusion !

Le label, maintenant. C’est un peu comme les ancres en HTML, en mieux. C’est un point de repère, et quand vous utilisez \ref{}, le numéro de votre section apparaîtra. Idem pour \pageref{} : c’est le numéro de page qui sera affiché. Notez que si vous changez votre document et que la section passe sur une autre page, \pageref{} la garde à jour. La même avec \ref{} qui adapte le numéro affiché au numéro réel de la section. Magique !

 

Autres trucs bien pratiques

On peut aussi demander à LaTeX de faire tout un tas de choses proprement.

 

Notes de bas de page

Dans mon texte, j'insère une note\footnote{Contenu de la note}.

 

Titre, page de garde

Vous avez vu, plus haut, j’ai mis dans mon préambule des balises comme \author, \title… Ce sont des infos qui seront utilisées pour construire la page de garde. On l’appelle dans le document par la commande :

\maketitle

 

Table des matières

On l’appelle par la commande :

\tableofcontents

Et c’est tout !

 

En-têtes et pied de page

On peut utiliser le package fancyhdr pour faire un truc super évolué et pratique à utiliser. Je vous laisse chercher !

 

Insertion d’images

Basiquement, la commande à utiliser est :

\includegraphics[options]{fichier}

Avec des options comme l’échelle, la hauteur ou la largeur, le placement par rapport au texte…

Et n’oublions pas les packages pst*, pour dessiner un peu tout, des expériences de chimie aux circuits électriques en passant par des dessins mathématiques…

 

Transparents, présentations

Le mieux est d’utiliser Beamer. Mais… il faut déjà que vous arriviez à maîtriser les bases de l’édition de documents LaTeX :mrgreen:

 

Conclusion

Nous y voilà. Déjà, j’espère que cette (longue) introduction vous sera utile. J’ai essayé de survoler la majorité des points dont vous pourriez avoir besoin pour commencer, et surtout de vous donner envie d’essayer : assez d’éléments pour ne pas être coincés à l’ouverture de l’éditeur, mais suffisamment peu pour que vous en arriviez à chercher dans la doc, ou sur les sites web qui nous servent de « bible ».

Je ferai par la suite des petits tutoriels, genre « comment écrire une lettre », tout ça. Si vous avez des envies/idées/suggestions, n’hésitez pas !

Pareil, j’attends vos retours sur cette « introduction », afin de l’améliorer et de la compléter. Enjoy ! 😉

Mots clés