20 décembre 2022

Rédiger un document en LaTeX

Par jlarochette

Pour ceux qui sont intéressés par \(LaTeX\) (à prononcer [latɛk]) voici quelques conseils pour débutants.

Utilisation en ligne : La solution la plus simple est d’utiliser un éditeur en ligne (ce qui nécessite une connexion à internet) comme overleaf qui permet de faire du \(LaTeX\), sans rien installer, et de travailler en collaboratif (pratique pour les groupes en TIPE par exemple).

De plus, il y a des templates tout à fait adaptables au TIPE, avec beaucoup d’exemples :

Installation sur votre machine : Je vous conseille d’installer la distribution MikTeX sous Windows, ou TexLive sous linux, qui propose en outre un éditeur TeXworks plutôt pratique.

Il existe aussi sous windows des IDE avec éditeur d’équation intégré (presse bouton) comme TexMaker ou teXnicCenter.

Principe : \(LaTeX\) est un langage et un système de compilation de documents scientifiques. Ce n’est pas un traitement de texte wysiwyg mais plutôt un langage de programmation qui nécessite une compilation pour obtenir le document final. La compilateur se charge seul de la présentation, de l’espacement, des sauts de page, etc.

Le script est enregistré dans un fichier avec l’extension .tex et la compilation se fait avec une commande du type pdflatex fichier.tex ou bien pdfxelatex fichier.tex : l’utilisation de XeLaTeX facilite l’utilisation de polices et résout des problèmes d’encodage (nécessairement UTF-8 ou UTF-16.)

Préambule : Vos sources commenceront en général par la déclaration du document du type

\documentclass[12pt, twoside, a4paper]{article}

qui signifie document de taille de police 12 pt (10 ou 11 possible aussi ; pour d’autres tailles, il faut utiliser la classe extarticle), de pages au format A4, ayant des pages de gauche et des pages de droites (si recto verso, sinon utiliser oneside) et de type article.

On peut aussi produire des diaporamas avec la classe beamer.
Ensuite, il faut ajouter quelques packages

  • pour l’encodage des caractères (sauf si vous utilisez XeLaTeX) :

\usepackage[utf8]{inputenc} ou \usepackage[latin1]{inputenc} (selon votre encodage)
\usepackage[T1]{fontenc}

  • pour les règles typographiques à la française :

\usepackage[french]{babel}

  • pour les formules mathématiques :

\usepackage{amssymb, amsmath, amsfont}

Corps du document : tout le contenu correspondant au document doit alors se trouver entre des balises

\begin{document} et \end{document}.

Le principe est alors que c’est le compilateur qui s’occupe de la mise en page en l’optimisant.

Voici quelques commandes de bases

  • \tableofcontents : Générer automatiquement une table des matières
  • \section{nom du titre}, \subsection{nom du sous-titre} , \subsubsection{nom du sous-sous-titre} : pour créer des titres, la numérotation est automatique.
  • \newline ou \\ ou sauter une ligne : pour aller à la ligne (nouveau paragraphe).
  • \linebreak : Pour forcer le passage à la ligne.
  • \smallskip, \medskip, \bigskip pour des espacements verticaux (à utiliser avec parcimonie, la philosophie de \(LaTeX\) étant de le laisser optimiser la présentation.)
  • \textbf{.....} : mettre du texte en gras.
  • \emph{.....} : mettre en valeur (italique).
  • \tiny, \scriptsize, \footnotesize, \small, \normalsize, \large, \Large, \LARGE, \huge, \Huge : modifier la taille des caractères.
  • \footnote{.....} : insérer une note de bas de page.
  • Faire une liste à puces :
    \begin{itemize}
    \item ...
    \item ...
    \item ...
    \end{itemize}
  • Faire une liste énumérée :
    \begin{enumerate}
    \item ...
    \item ...
    \item ...
    \end{enumerate}
    
  • Il est possible d’imbriquer les numérotations et de les arrêter puis reprendre avec l’option resume. Pour une utilisation plus fine des listes, utiliser le package enumitem.
    \begin{enumerate}
    \item premier item ;
    \item deuxième item ;
    \item troisième item.
    \end{enumerate}Blabla Blabla Blabla Blabla Blabla\begin{enumerate}[resume]
    \item quatrième item ;
    \item cinquième item.
    \end{enumerate}

Formules mathématiques : Les formules mathématiques sont entre balises $ ... $ dans le texte et \[ ... \] quand elles sont centrées. Voici quelques fonctions de bases :

  • \frac{a}{b} : \(\frac{a}{b}\)
  • {a}^{b} : \(a^b\)
  • {a}_{b} : \(a_b\)
  • \sqrt{a} \sqrt[n]{a} : \(\sqrt{a}\) \(\sqrt[n]{a}\)
  • \cos, \sin, \tan : \(\cos\), \(\sin\), \(\tan\)
  • = \neq < > \leq \geq \leqslant \geqslant \in \notin \subseteq \subsetneq : \(=\) \(\neq\) \(<\) \(>\) \(\leq\) \(\geq\) \(\leqslant\) \(\require{AMSSymbols}\geqslant\) \(\in\) \(\notin\) \(\subseteq\) \(\subsetneq\)
  • \land \lor \lnot \vdash \top \bot \forall \exists : \(\land\) \(\lor\) \(\lnot\) \(\vdash\) \(\top\) \(\bot\) \(\forall\) \(\exists\)
  • \int_{a}^{b}f(t)\mathrm{d}t : \(\int_{a}^{b}f(t)\mathrm{d}t\)
  • \sum_{k=0}^{n}u_k : \(\sum_{k=0}^{n}u_k\)
  • \displaystyle\sum_{k=0}^{n}u_k : \(\displaystyle\sum_{k=0}^{n}u_k\)
  • \left( ... \right) : adapter la taille des parenthèses (ou d’autre chose !)
  • \zeta \Lambda \mathcal{P} \mathbb{R} \mathfrak{S} \infty : \(\zeta\) \(\Lambda\) \(\mathcal{P}\) \(\mathbb{R}\) \(\mathfrak{S}\) \(\infty\)
  • Liste de symboles
  • On peut créer ses propres environnements, ses propres fonctions mathématiques, …

Pour aller plus loin : de nombreuses ressources sont disponibles en ligne. Par exemple cela ou en pdf ceci.
Plus spécifiquement pour du Beamer (sera utile pour les TIPE), on peut aller voir ici ou bien encore directement dans overleaf.

Éditeur d’équations : http://latex.codecogs.com/eqneditor/editor.php

(Re)trouver la commande pour un symbole : http://detexify.kirelabs.org/classify.html

Une application qui traduit en \(LaTeX\) (y compris du manuscrit, cette application est absolument géniale !) : https://mathpix.com/