Bases de \( \LaTeX \)

Table des matières

Introduction

\( \LaTeX \) est un langage informatique permettant d'écrire des documents. Il est très utilisé dans la communauté scientifique notamment pour sa praticité dans la rédaction de tout contenu contenant des symboles mathématiques.
Nous écrivons son code dans un fichier .tex et il génère un fichier au format .pdf.
L'étape de génération du .pdf s'appelle la compilation.
Nous allons nous intéresser aux bases permettant de bien débuter.

Pour écrire du \( \LaTeX \), il faut des logiciels dédiés.
Le plus simple est Overleaf, un éditeur en ligne comprenant tous les outils nécessaires.
Si vous souhaitez utiliser \( \LaTeX \) sans connexion, il faut installer une distribution et un éditeur.
Distribution :

  1. La plus simple pour Windows est : MiKTeX
  2. La plus simple pour Mac est : MacTeX
  3. Compatible avec Windows, Mac et Linux : TeX Live
Editeur :
  1. TeXworks
  2. Texmaker
  3. TeXstudio

Tout document \( \LaTeX \) se décompose en deux parties :

  1. Le préambule
  2. Le corps du document

Préambule

Le préambule est la partie du document où l'on définit les paramètres de notre document tels que :

  1. Le type de document
  2. La taille des marges
  3. La langue du document pour les normes typographiques
  4. Les extensions à ajouter
  5. La police d'écriture

Voici les options courantes du préambule, nous allons expliquer la signification de chacune d'entre elles (les lignes commençant par % sont des commentaires) :

                        
% Type de document 
\documentclass[format_papier, taille_police]{type_document}

% Encodage
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[language]{babel}

% Mise en page
\usepackage[tailles_marges]{geometry}
\usepackage{lmodern}
\usepackage{indentfirst}
\usepackage{setspace}
\setstretch{interligne}
\usepackage[skip=valeur, indent=valeur]{parskip}

% Maths
\usepackage{mathtools}
\usepackage{amssymb}
\usepackage[autolanguage]{numprint}

% Liens
\usepackage{hyperref}

% Images
\usepackage{graphicx}

% ------------------ Physique ---------------- %
\usepackage{physics}
\usepackage{siunitx}
\AtBeginDocument{\RenewCommandCopy\qty\SI}
% ------------------ Physique ---------------- %

% Titre, date, auteur 
\title{Titre du document}
\author{Auteur du document} 
\date{Date du document}
                        
                    

\documentclass permet de définir le format de papier du document, la taille de la police et le type de document. Voici les paramètres les plus courants :

  1. Format de papier : a4paper.
  2. Taille police : 10pt, 11pt, 12pt.
  3. Type de document : article, report, book, beamer.
Les commandes :
                        
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
                        
                    
permettent de bien encoder les caractères du document. L'option \usepackage[language]{babel} permet de normaliser les normes typographiques par rapport à la langue du document. Si votre document est en français remplacez language par french.

L'option \usepackage[tailles_marges]{geometry} permet de définir les marges du document.
Il est possible de régler la taille de chacune des marges dans plusieurs unités. Pour l'exemple réglons la taille des marges en cm.

  1. top=2.5cm : la marge supérieure est de 2,5cm.
  2. bottom=2.5cm : la marge inférieure est de 2,5cm.
  3. left=2.5cm : la marge gauche est de 2,5cm.
  4. right=2.5cm : la marge droite est de 2,5cm.
Donc si on met l'option \usepackage[top=2.5cm, bottom=2.5cm, left=2.5cm, right=2.5cm]{geometry}, notre document aura des marges de 2,5cm.

L'option \usepackage{lmodern} permet d'utiliser la version moderne de la police par défaut de \( \LaTeX \), pour utiliser une autre police, vous pouvez remplacer lmodern par un autre paramètre parmi ceux-là, il faut taper le paramètre de la colonne "font package name". Pour aller plus loin dans la personnalisation de la police d'écriture, allez sur ce site.

L'option \usepackage{indentfirst} permet de forcer l'indentation de la première ligne de chaque paragraphe. Vous pourrez choisir manuelement d'enlever l'indentation avec la commande \noindent.

L'option \usepackage{setspace} permet de configurer la taille des interlignes à l'aide de la commande \setstretch{}. Par défaut on a : \setstretch{1.0}.

L'option \usepackage[skip=valeur, indent=valeur]{parskip} permet de gérer l'espacement entre les paragraphes et la taille des alinéas. Par exemple :

                            
\usepackage[skip=20pt, indent=10pt]{parskip}
                            
                        
permet de dire que les paragraphes sont espacés de 20 points et les alinéas font 10 points.

Les commandes :

                            
\usepackage{mathtools}
\usepackage{amssymb}
                            
                        
nous donnent des outils supplémentaires simplifiant l'écriture des symboles mathématiques.

L'option \usepackage[autolanguage]{numprint} permet de simplifier le formattage des nombres décimaux selon la langue du document. Cette option permet également de faciliter les notations scientifiques. Par exemple : \numprint{123.456e10} donne : \( 123{,}456 \times 10^{10} \).

L'option \usepackage{hyperref} permet de gérer plus facilement les hyperliens et l'option \usepackage{graphicx} permet de manipuler les images.

    
% ------------------ Physique ---------------- %
\usepackage{physics}
\usepackage{siunitx}
\AtBeginDocument{\RenewCommandCopy\qty\SI}
% ------------------ Physique ---------------- %
    
Ces options permettent d'ajouter des commandes supplémentaires pour le formattage des unités, des raccourcis pour écrire les dérivées etc...

Les dernières options \title{}, \author{} et \date{} permettent respectivement de définir le titre du document, l'auteur du document et la date du document.

Corps du document

Après avoir défini le préambule, nous devons commencer à écrire le coeur du document. Pour délimiter le corps du document, on utilise les balises de document :

                        
\begin{document}
% Corps du document 
\end{document}
                        
                    
Pour afficher le titre, l'auteur et la date du document rentrés dans le préambule, on utilise la commande \maketitle dans le corps du document. Elle va afficher ces informations avec un formattage qui varie selon le type de document.

Formattage de texte

On considère à partir de cette partie qu'on travaille dans le corps du document.

Pour écrire du texte, il suffit d'écrire le texte comme on le ferait sur Word. Pour revenir à la ligne, il faut écrire \\, pour sauter une ligne il faut le mettre deux fois. Il existe d'autres commandes pour sauter plus de lignes.
Par exemple \vspace{3cm} permet de générer un saut de ligne de 3cm.

Pour dire qu'on commence un nouveau paragraphe, on peut utiliser \par. Pour enlever l'indentation automatique, on peut faire \noindent.

Pour mettre le text en gras, on utilise \textbf{texte à mettre en gras}. Pour mettre du texte en italique, on utilise \emph{texte à mettre en valeur}. Si le texte de base est en italique, le texte entre \emph{} sera droit.

Pour gérer les espaces , il existe plusieurs commandes, je ne vais pas toutes les citer mais voici les principales :
  1. \ : Un espace d'un caractère, dans un paragraphe hors mathématiques, ce n'est pas obligatoire.
  2. \hspace{valeur} : Un espace configurable
  3. \hfill : Espace les éléments de manière homogène dans toute la place disponible
Par exemple \hspace{3cm} donnera un espace de 3cm.

Titres et sections

Les trois niveaux de titres en \( \LaTeX \) sont :

                        
\section{Titre 1}
\subsection{Titre 2} 
\subsubsection{Titre 3}
                        
                    
mais selon le type de document, il en existe d'autres. Pour les documents de type report et book on peut utiliser le \chapter{} et le \part{}.
Si on ne souhaite pas numéroter un titre, on ajoute un * juste entre la commande et l'accolade ouvrante. Par exemple \section*{}. Par exemple :
                        
\section{Titre}
\subsection{Sous-titre}
\subsubsection{Sous-sous-titre}
                        
                    
donne :
Sections

Listes

Il existe deux types de listes en \( \LaTeX \) : les listes numérotées et les listes non-numérotées.
Pour les listes numérotées :

                        
\begin{enumerate}
\item Elément 1 
\item Elément 2 
\item Elément 3
\begin{enumerate}
                        
                    
Pour les listes non-numérotées :
                        
\begin{itemize} 
\item Elément 1
\item Elément 2 
\item Elément 3
\end{itemize}
                        
                    

Ecrire des mathématiques

Modes mathématiques

On distingue deux modes de mathématiques en \( \LaTeX \) :

  1. Les mathématiques en ligne.
  2. Les mathématiques centrées.
Pour écrire des mathématiques dans un paragraphe, on utilise les délimiteurs suivants :
  1. $ ... $ : cette notation est déconseillée par rapport aux deux suivantes, les messages d'erreurs sont beaucoup moins précis.
  2. \( ... \)
  3. \begin{math} ... \end{math}
Pour écrire des mathématiques centrées, on utilise les délimiteurs suivants :
  1. $$ ... $$ : cette notation est à proscrire, les messages d'erreurs sont beaucoup moins précis et a une mauvaise influence sur l'espacement vertical.
  2. \[ ... \]
  3. \begin{displaymath} ... \end{displaymath}
  4. \begin{equation*} ... \end{equation*} : permet de numéroter l'équation si on enlève "*"

Si vous souhaitez écrire du texte dans un environnement mathématique, il faut utiliser \text{}.
Comparons le format centré du format en ligne :
En ligne : \( 2x + 3 = 6 \)
En centré avec numérotation : \begin{equation} 2x + 3 = 6 \end{equation} Certains symboles mathématiques sont écrits différemment selon s'ils sont en ligne ou en centré. Par exemple :
En ligne : \( \sum_{k = 0}^{n} k = \frac{n(n+1)}{2} \).
En colonne : \begin{equation*} \sum_{k = 0}^{n} k = \frac{n(n+1)}{2} \end{equation*} Il est possible de forcer la mise en page du format centré dans un environnement en ligne avec la commande \displaystyle et il est possible d'effectuer l'opération contraire avec la commande \textstyle.

Quelques symboles essentiels

Les opérateurs de soustraction et d'addition s'écrivent + et - tout simplement. La multiplication s'écrit \times pour "\( \times \)" ou \cdot pour "\( \cdot \)". Pour les fractions, nous utilisons \frac{numérateur}{dénominateur}.
Les opérateurs de comparaisons :
  1. < : \( < \)
  2. > : \( > \)
  3. \leq : \( \leq \)
  4. \geq : \( \geq \)
  5. \leqslant : \( \leqslant \)
  6. \geqslant : \( \geqslant \)
Pour les indices, on utilise _{}, pour les exposants, on utilise ^{}. Si on veut mettre des indices à plusieurs lignes par exemple, on peut utiliser \substack{ligne1 \\ ligne2}. Par exemple \[ \lim_{\substack{x \to a \\ x < a}} f(x) = l \] donne : \[ \lim_{\substack{x \to a \\ x < a}} f(x) = l \] et \[ e^{i \pi} + 1 = 0 \] donne : \[ e^{i \pi} + 1 = 0 \] Voici quelques symboles usuels :
  1. \sum_{k=0}^{n} k : \( \sum_{k=0}^{n} k \)
  2. \prod_{k=0}^{n} k : \( \prod_{k=0}^{n} k \)
  3. \int_{a}^{b} f(x) \dd{x} : \( \int_{a}^{b} f(x) \ \mathrm{d}x \)
  4. \sqrt{x} : \( \sqrt{x} \)
  5. \sqrt[n]{x} : \( \sqrt[n]{x} \)
En ce qui concerne les polices d'écriture courantes en mode mathématique :
  1. \mathbb{Lettre en majuscule} : Permet d'écrire la lettre avec les "doubles traits" comme pour les ensembles de nombres.
  2. \mathcal{Lettre en majuscule} : Permet d'écrire la lettre avec une police calligraphiée.
  3. \mathbf{texte} : Permet d'écrire en gras lorsque nous sommes en mode mathématique.
  4. \mathrm{texte} : Permet d'écrire en lettres droites lorsque nous sommes en mode mathématique.
  5. \mathfrak{Lettre en majuscule} : Permet d'écrire dans une police spéciale.
Exemples :
  1. \mathbb{R} : \( \mathbb{R} \)
  2. \mathcal{L} : \( \mathcal{L} \)
  3. \mathbf{v} : \( \mathbf{v} \)
  4. \mathrm{d} : \( \mathrm{d} \)
  5. \mathfrak{G} : \( \mathfrak{G} \)
Je vous mets à disposition plusieurs services pour trouver les symboles mathématiques qui vous intéressent :
  1. https://devmath.fr/tools/latex-symbols-list/
  2. https://detexify.kirelabs.org/classify.html
  3. https://fr.wikipedia.org/wiki/Aide:Formules_TeX

Alignement des équations

Pour gérer l'alignement dans les longues équations, on peut utiliser plusieurs outils, le premier est align*. Regardons cet example : \begin{align*} r_1 &= \frac{\frac{3}{2} - \frac{1}{2}}{2} & r_2 &= \frac{\frac{3}{2} + \frac{1}{2}}{2} = 1 \\ r_1 &= \frac{1}{2} & r_2 &= 1 \end{align*}
                        
\begin{align*}
r_1 &= \frac{\frac{3}{2} - \frac{1}{2}}{2} & r_2 &= \frac{\frac{3}{2} + \frac{1}{2}}{2} \\
r_1 &= \frac{1}{2}                       & r_2 &= 1
\end{align*}
                        
                    
L'exemple peut paraître compliqué mais voici l'explication :
Le \\ indique le retour à la ligne et les & permettent d'aligner les éléments verticalement. Vous n'êtes pas obligés d'aligner les & dans le code source ce qui compte c'est le nombre de & par ligne.

Images

Pour insérer une image il faut faire \includegraphics{chemin_relatif_image}. On peut ajouter des paramètres optionnels comme la taille de l'image ou l'échelle de l'image. Par exemple : \includegraphics[scale=0.5]{img/image1.png} va insérer l'image nommée image1.png du dossier img qui se situe dans le même dossier que notre fichier \( \LaTeX \) avec une mise à l'échelle de facteur 0,5. Autre exemple : \includegraphics[width=16cm, height=9cm]{img/image1.png} va insérer l'image en forçant la mise à l'échelle de l'image pour qu'elle fasse 16cm de largeur pour 9cm de hauteur.
Si on souhaite mettre en valeur l'image, nous pouvons utiliser l'environnement suivant :

                        
\begin{figure}[parametres_de_placement]
\centering 
\includegraphics[parametres_optionnels]{image.png}
\caption{Nom de la figure}
\end{figure}
                        
                    
Parmi les paramètres de placements nous avons :
  1. h : Place l'image exactement ici.
  2. t : Place l'image en haut de la page.
  3. b : Place l'image en base de la page.
  4. ! : Ecrase les paramètres de placement automatique des images de \( \LaTeX \).
Il est possible de combiner les paramètres, par exemple [!ht].
Ce qui est décrit ici n'est pas une liste exhaustive des possibilités de \( \LaTeX \) pour manipuler les images, mais c'est suffisant pour bien débuter.
Par exemple :
                        
\begin{figure}[!ht]
\centering
\includegraphics[scale=0.1]{img/eravyschool.png}
\caption{Eravyschool}
\end{figure}
                        
                    
donnera le résultat suivant :
Exemple image

Tableaux

Nous allons nous concentrer sur deux types de tableaux en \( \LaTeX \) :

  1. tabular : Tableaux normaux
  2. array : Tableaux dans un environnement mathématique
La syntaxe est la même pour les deux :
                        
\begin{tabular}{parametres}
% Elements 
\end{tabular}

\begin{array}{parametres}
% Elements
\end{array}
                        
                    
Dans les tableaux \( \LaTeX \), il est possible de choisir l'alignement de chaque colonne :
  1. l : Aligner à gauche
  2. c : Centrer
  3. r : Aligner à droite
Par exemple si on fait :
                        
\begin{tabular}{lcr}
% Elements
\end{tabular}
                        
                    
On dit que notre tableau comporte trois colonnes.
  1. La première est alignée sur la gauche.
  2. La deuxième est centrée.
  3. La troisième est alignée sur la droite.
On peut aussi séparer les colonnes avec des lignes verticales avec le caractère |.
A l'intérieur d'un tabular ou d'un array, nous utilisons le caractère & pour séparer les "cases" du tableau et pour passer à la ligne suivante du tableau, on fait \\. Pour tracer une ligne horizontale on utilise \hline.
Par exemple :
                        
\begin{tabular}{|c|c|c|}
\hline 
A & B & C \\
\hline 
D & E & F \\
\hline 
G & H & I \\
\hline
\end{tabular}
                        
                    
donnera quelque chose qui ressemble à :
A B C
D E F
G H I
Tout comme pour les images, on peut utiliser un environnement similaire à figure pour les images. Pour les tableaux (array ou tabular), il s'agit de table, la syntaxe est la même :
                        
\begin{table}[parametres_de_placement]
\centering
\begin{tabular}{parametres}
% Contenu du tableau
\end{tabular}
\caption{Titre du tableau}
\end{table}
                        
                    
Les paramètres de placement fonctionnent de la même manière que pour figure. Par exemple :
                        
\begin{table}[!ht]
\centering
\begin{tabular}{|c|c|c|}
\hline 
A & B & C \\
\hline 
D & E & F \\
\hline 
G & H & I \\
\hline
\end{tabular}
\caption{Tableau}
\end{table}
                        
                    
donnera le résultat suivant :
Exemple Tableau