Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
formations:latex [30/10/2020 22:49] – nbert | formations:latex [08/11/2021 14:28] (Version actuelle) – [2. Recréer un document] nbert | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Formation LaTeX : Rédiger son premier document ====== | ||
+ | ===== Utilité du langage LaTeX ===== | ||
+ | ==== Histoire de LaTeX ==== | ||
+ | |||
+ | Le langage TeX/LaTeX a été inventé par Donald KNUTH en 1984 dans le but de rédiger des documents de qualité professionnelle, | ||
+ | |||
+ | ==== Word ou LaTeX, lequel choisir ? ==== | ||
+ | |||
+ | On pourrait se demander pourquoi utiliser LaTeX avec toutes ces lignes de code pour au final produire un simplement document que l'on aurait pu faire avec Word en deux fois moins de temps... Au début, le langage LaTeX peut être difficile à intégrer mais une fois les habitudes prises, ça va aussi vite qu' | ||
+ | |||
+ | Word et LaTeX ne fonctionnent pas sur le même principe. | ||
+ | * Word est un logiciel du type WYSIWYG, c' | ||
+ | * En revanche, le langage LaTeX est du type WYSIWYM (//What You See Is What You Mean//), c' | ||
+ | |||
+ | ===== Les supports pour écrire en LaTeX ===== | ||
+ | ==== Travailler en local ==== | ||
+ | On peut choisir de travailler sur propre ordinateur. Pour cela nous aurons besoin de MiKTeX, la distribution et l' | ||
+ | Ensuite, il nous faut un éditeur dédié au langage LaTeX afin de nous faciliter la vie, nous utiliserons TeXMaker. | ||
+ | |||
+ | Si vous souhaitez installer tout ça sur votre ordinateur je vous conseille de suivre à la lettre ce tutoriel qui est très bien fait. | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | ==== Travailler en ligne avec Overleaf ==== | ||
+ | Si les outils LaTeX ne sont pas installés sur l' | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | Vous aurez alors accès à un environnement très similaire à celui de TeXMaker afin de rédiger vos documents, mais vous avez aussi à votre disposition de nombreux " | ||
+ | |||
+ | ===== Ecrire un document en LaTeX ===== | ||
+ | ==== La structure d'un document LaTeX ==== | ||
+ | Un code LaTeX, tout comme un code HTML, est toujours construit de la même façon. | ||
+ | |||
+ | Voici sa structure : | ||
+ | * Chaque script commence par la commande '' | ||
+ | * Ensuite, on vient ajouter des bibliothèques appelées " | ||
+ | * Enfin, on trouve le contenu du document qui se trouve dans l' | ||
+ | |||
+ | On peut ainsi construire notre tout premier document LaTeX ! | ||
+ | |||
+ | <code latex> | ||
+ | \documentclass[a4paper, | ||
+ | |||
+ | \usepackage[utf8]{inputenc} | ||
+ | |||
+ | \begin{document} | ||
+ | Voici mon premier document avec \LaTeX. | ||
+ | \end{document} | ||
+ | </ | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Afin de compiler le document, sous TeXMaker, vous pouvez appuyer sur la touche F1. | ||
+ | </ | ||
+ | Voici le résultat: | ||
+ | {{ : | ||
+ | |||
+ | <WRAP center round info 60%> | ||
+ | Concernant les packages, je vous mets la liste de tous ceux qui me sont souvent utiles. Je vous conseille de mettre votre liste de packages dans un fichier txt et comme ça, dès que vous créer un nouveau fichier vous pouvez copier-coller les packages. | ||
+ | </ | ||
+ | |||
+ | <file latex packages.txt> | ||
+ | \usepackage{fancybox} | ||
+ | \usepackage[utf8]{inputenc} | ||
+ | \usepackage{graphicx} | ||
+ | \usepackage{ps4pdf} | ||
+ | \usepackage{color} | ||
+ | \usepackage{hhline} | ||
+ | \usepackage{array} | ||
+ | \usepackage{multicol} | ||
+ | \usepackage{ulem} | ||
+ | \usepackage{multirow} | ||
+ | \usepackage{amsmath} | ||
+ | \usepackage{fancyhdr} | ||
+ | \usepackage{colortbl} | ||
+ | \usepackage{frcursive} | ||
+ | \usepackage{amssymb} | ||
+ | \usepackage{mathrsfs} | ||
+ | \usepackage{graphicx} | ||
+ | \usepackage[export]{adjustbox} | ||
+ | \usepackage{tabularx} | ||
+ | \usepackage{esint} | ||
+ | \usepackage{fancybox} | ||
+ | \usepackage{pifont} | ||
+ | \usepackage{xcolor} | ||
+ | \usepackage{enumitem} | ||
+ | \usepackage{setspace} | ||
+ | \usepackage{empheq} | ||
+ | \usepackage{tikz} | ||
+ | \usepackage{listings} | ||
+ | \usepackage{stackrel} %\stackrel[bas]{haut}{=} | ||
+ | </ | ||
+ | |||
+ | ==== Syntaxe d'une commande ==== | ||
+ | |||
+ | <WRAP center round info 60%> | ||
+ | Les symboles $ & % # _ { } sont réservés par le langage LaTeX. Pour pouvoir les utiliser ils devront être précédé d'un backslash \ . Pour utiliser les symboles ~ ^ \ il faudra utiliser des packages spécifiques. | ||
+ | </ | ||
+ | |||
+ | Dans le langage LaTeX, vous avez pu remarquer que toutes les commandes sont faites de la même façon : | ||
+ | '' | ||
+ | |||
+ | Vous pouvez également ajouter des commentaires en précédant le texte du symbole '' | ||
+ | |||
+ | |||
+ | ==== La mise en page ==== | ||
+ | <WRAP center round important 60%> | ||
+ | Les commandes de mise en page se placent avant le document, au même endroit que les packages ! | ||
+ | </ | ||
+ | |||
+ | |||
+ | La mise en page en LaTeX peut s' | ||
+ | |||
+ | Voici une image montrant les différents paramètres sur lesquels vous pouvez jouer afin de modifier la mise en page. | ||
+ | {{ : | ||
+ | |||
+ | Pour modifier un paramètre, on utilisera '' | ||
+ | <code latex> | ||
+ | \setlength{\textheight}{25cm} | ||
+ | </ | ||
+ | |||
+ | Si vous vous le souhaitez, je mets à disposition ma mise en page. | ||
+ | <file latex mise_en_page.txt> | ||
+ | \setlength{\footskip}{1cm} \setlength{\topmargin}{0cm} | ||
+ | \setlength{\hoffset}{-1cm} \setlength{\voffset}{-1.8cm} | ||
+ | \setlength{\headheight}{0.5cm} \setlength{\headsep}{0.2cm} | ||
+ | \setlength{\textheight}{26.5cm} \setlength{\marginparwidth}{0cm} | ||
+ | \setlength{\textwidth}{18cm} \setlength{\oddsidemargin}{0cm} | ||
+ | \setlength{\marginparsep}{0cm} \setlength{\evensidemargin}{0cm} | ||
+ | \setlength{\parindent}{0pt} | ||
+ | \renewcommand{\arraystretch}{1} %espacement dans les tableaux (dilatation) | ||
+ | \setstretch{1} % interligne | ||
+ | </ | ||
+ | |||
+ | ==== Les indentations ==== | ||
+ | Dans le langage LaTeX, les tabulations sont prises en compte comme des caractères donc cela ne sert à rien d' | ||
+ | |||
+ | Cependant, LaTeX prend en compte les retours à la ligne et les sauts de ligne. C'est assez difficile à expliquer avec des mots, voyons avec des exemples. | ||
+ | |||
+ | **Cas 1:** | ||
+ | <code latex> | ||
+ | \begin{document} | ||
+ | Bonjour je m' | ||
+ | J'aime les saumons. | ||
+ | \end{document} | ||
+ | </ | ||
+ | Ce qui donne : | ||
+ | {{ : | ||
+ | |||
+ | **Cas 2:** | ||
+ | <code latex> | ||
+ | \begin{document} | ||
+ | Bonjour je m' | ||
+ | |||
+ | J'aime les saumons. | ||
+ | \end{document} | ||
+ | </ | ||
+ | Ce qui donne : | ||
+ | {{ : | ||
+ | |||
+ | **Cas 3:** | ||
+ | <code latex> | ||
+ | \begin{document} | ||
+ | Bonjour je m' | ||
+ | J'aime les saumons. | ||
+ | \end{document} | ||
+ | </ | ||
+ | Ce qui donne : | ||
+ | {{ : | ||
+ | |||
+ | **Cas 4:** | ||
+ | <code latex> | ||
+ | \begin{document} | ||
+ | Bonjour je m' | ||
+ | |||
+ | J'aime les saumons. | ||
+ | \end{document} | ||
+ | </ | ||
+ | Ce qui donne : | ||
+ | {{ : | ||
+ | |||
+ | |||
+ | ==== Commandes élémentaires ==== | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | ==== Alignement ==== | ||
+ | |||
+ | Afin de centrer un texte on utilise l' | ||
+ | <code latex> | ||
+ | \begin{center} | ||
+ | Mon texte est centré. | ||
+ | \end{center} | ||
+ | </ | ||
+ | |||
+ | De même, l' | ||
+ | |||
+ | ==== Hiérarchie ==== | ||
+ | |||
+ | Dans LaTeX, il est possible de créer des titres, sous-titres etc. qui seront pris en compte dans le sommaire. La hiérarchie est la suivante : '' | ||
+ | |||
+ | <code latex> | ||
+ | \section{Titre} | ||
+ | \subsection{Sous-titre} | ||
+ | \subsubsection{Sous-sous-titre} | ||
+ | </ | ||
+ | |||
+ | Cela donne : | ||
+ | {{ : | ||
+ | |||
+ | <WRAP center round info 60%> | ||
+ | L' | ||
+ | </ | ||
+ | |||
+ | ==== Listes ==== | ||
+ | |||
+ | Afin de créer une liste à puces on utilise l' | ||
+ | |||
+ | <code latex> | ||
+ | \begin{itemize} | ||
+ | \item Loutre | ||
+ | \item Saumon | ||
+ | \end{itemize} | ||
+ | </ | ||
+ | |||
+ | Pour obtenir une liste numérotée, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ==== Tableaux/ | ||
+ | |||
+ | Pour les tableaux et les matrices, TeXMaker dispose d'un assistant (Menu Assistants) très pratique qui permet de générer le code souhaité. Il ne reste plus qu'à remplir avec le contenu. Je ne vais m' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | Si vous ne disposez de TeXMaker, vous pouvez écrire le code à la main. Exemple : | ||
+ | <code latex> | ||
+ | \begin{tabular}{|c|c|} | ||
+ | \hline | ||
+ | Couleur & Fruit \\ | ||
+ | \hline | ||
+ | Rouge & Tomate \\ | ||
+ | \hline | ||
+ | Jaune & Banane \\ | ||
+ | \hline | ||
+ | \end{tabular} | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ==== Les Mathématiques dans LaTeX ==== | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | <code latex> | ||
+ | \usepackage{amsmath} | ||
+ | \usepackage{amssymb} | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | |||
+ | LaTeX dispose de deux modes d' | ||
+ | |||
+ | **__Mode ligne :__** | ||
+ | |||
+ | <code latex> | ||
+ | Le discriminant d'un polynôme de degré 2 est Δ=b2−4ac. | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **__Mode affichage :__** | ||
+ | |||
+ | <code latex> | ||
+ | Le discriminant d'un polynôme de degré 2 est | ||
+ | $$ | ||
+ | \Delta=b^2-4ac | ||
+ | $$ | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Vous remarquerez le fonctionnement de l' | ||
+ | |||
+ | * **Indice/ | ||
+ | |||
+ | * **Texte en environnement math :** On peut utiliser la commande '' | ||
+ | |||
+ | * **Espacements :** Le caractère ' | ||
+ | |||
+ | <WRAP center round help 60%> | ||
+ | Pour plus de commandes, je vous invite à aller voir dans les menus verticaux à gauche de l' | ||
+ | </ | ||
+ | |||
+ | Voici néanmoins les commandes dont on se sert le plus souvent. | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | **__Environnement :__ '' | ||
+ | |||
+ | L' | ||
+ | |||
+ | Je vous laisse regarder son fonctionnement, | ||
+ | <code latex> | ||
+ | \begin{eqnarray} | ||
+ | \int_1^2 x^2 dx & = & \left[ \frac{x^3}{3} \right]_1^2\\ | ||
+ | & = & \frac{2^3}{3} - \frac{1^3}{3}\\ | ||
+ | & = & \frac{8}{3} - \frac{1}{3} \nonumber \\ | ||
+ | & = & \frac{7}{3} | ||
+ | \end{eqnarray} | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | La commande '' | ||
+ | |||
+ | ==== Images ==== | ||
+ | |||
+ | Pour insérer des images dans notre document, nous allons avoir besoin du package '' | ||
+ | |||
+ | Il y a alors trois façons d' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Vous remarquerez que vous pouvez placer toutes vos images dans un dossier à condition qu'il se trouve au même niveau que le fichier .tex dans vos dossiers. | ||
+ | </ | ||
+ | |||
+ | ==== Personnalisation ==== | ||
+ | |||
+ | Certaines commandes très utilisées étant longues et pénibles à écrire, on peut alors créer nos propres raccourcis pour les commandes et les environnements. | ||
+ | |||
+ | <code latex> | ||
+ | \newcommand{\nom}[nombre d’arguments]{définition} | ||
+ | |||
+ | %exemple | ||
+ | \newcommand{\R}[1]{\mathbb{R}^{# | ||
+ | |||
+ | %qui va s' | ||
+ | \R2 | ||
+ | </ | ||
+ | Cette commande ici permet d' | ||
+ | |||
+ | On peut faire de même pour les environnements : | ||
+ | <code latex> | ||
+ | \newenvironment{nom}[nombre d’arguments]{définition de début}{définition de fin} | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | Lorsque les raccourcis sont relatifs à des commandes mathématiques, | ||
+ | |||
+ | Si les raccourcis sont pour des maths, je conseille de ne pas inclure le symbole $ dans le raccourci et ainsi faire comme dans l' | ||
+ | </ | ||
+ | |||
+ | ==== Possibilités avancées ==== | ||
+ | |||
+ | LaTeX est un langage très puissant, vous pouvez quasiment faire n' | ||
+ | * Création de courbes | ||
+ | * Créations de figures et schémas en tout genre | ||
+ | * Bibliographie | ||
+ | * Thèse | ||
+ | * Diaporamas | ||
+ | * ... | ||
+ | |||
+ | Et puis quand on ne sait pas, on cherche sur <color # | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==== Pour plus d' | ||
+ | |||
+ | [[http:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[http:// | ||
+ | |||
+ | Pour un tutoriel plus complet, je vous recommande ce livre : | ||
+ | [[https:// | ||
+ | |||
+ | |||
+ | |||
+ | ===== Exercices ===== | ||
+ | ==== 1. Retrouver les erreurs ==== | ||
+ | |||
+ | Dans ce premier exercice, le but est de retrouver les erreurs et de le corriger afin d' | ||
+ | |||
+ | {{ : | ||
+ | Photo de loutre à utiliser et à placer au même endroit que votre code LaTeX. {{ : | ||
+ | |||
+ | Voici le code avec les erreurs, vous pouvez le télécharger et l' | ||
+ | |||
+ | <file latex erreurs.tex> | ||
+ | \documentclass[11pt, | ||
+ | |||
+ | \usepackage[utf8]{inputenc} | ||
+ | \usepackage[left=2cm, | ||
+ | |||
+ | \setlength{\parindent}{0pt} | ||
+ | |||
+ | \title{Pourquoi Jean-Loutre aime-t-il tant le saumon ?} | ||
+ | \author{Jean-Loutre} | ||
+ | \date{} | ||
+ | |||
+ | \begin{document} | ||
+ | |||
+ | \maketitle | ||
+ | |||
+ | \includegraphics[scale=0.2]{loutre} | ||
+ | |||
+ | \section{L' | ||
+ | \subsection{Son amour pour le saumon} | ||
+ | |||
+ | La loutre est un animal souvent solitaire. Sa fourrure se compose de poils qui s' | ||
+ | |||
+ | Contrairement à l'ours polaire ou au dauphin, la loutre ne dispose pas d'une épaisse couche de graisse sous la peau. C'est son pelage, composé de poils courts et longs emboîtés qui l' | ||
+ | |||
+ | Elle peut vivre jusqu' | ||
+ | |||
+ | \subsection*{Encore son amour pour le saumon} | ||
+ | |||
+ | La plupart des espèces ne vivent qu'en eau douce, cependant, la loutre de mer vit, comme son nom l' | ||
+ | |||
+ | La Hongrie abrite le plus grand nombre d' | ||
+ | |||
+ | La loutre est un mammifère majoritairement piscivore. Son régime alimentaire est constitué à 50 \% à 90 \% de poisson, le reste se composant de batraciens, petits mammifères, | ||
+ | |||
+ | C’est un animal très joueur qui s’amuse souvent avec ses proies. Il les entraîne dans de petites baies peu profondes pour en venir à bout. En plongée, les oreilles et les narines obstruées, elle perd l' | ||
+ | |||
+ | |||
+ | La loutre n’a pas de responsabilité dans la raréfaction du poisson car elle ne s’attaque généralement qu'aux proies malades ou les plus abondantes. La loutre de mer se sert de galets ou pierres comme outil pour briser les coquillages trop résistants en les frappant sur son abdomen. Cela en fait l'un des rares animaux à se servir d' | ||
+ | |||
+ | Les loutres de mer dorment sur le dos dans l'eau. En groupe, elles se donnent souvent la main en dormant pour ne pas dériver et rester ensemble. | ||
+ | |||
+ | \section{Les occupations de Jean-Loutre} | ||
+ | \subsection*{Faire les courses} | ||
+ | |||
+ | En effet , Jean-Loutre aime beaucoup le saumon, il doit donc aller faire les courses tous les jours de la semaine ! | ||
+ | |||
+ | \begin{enumerate} | ||
+ | \item Lundi : saumon chez Carrefour | ||
+ | \item Mardi : saumon chez Leclerc | ||
+ | \item Mercredi : saumon au Barbu | ||
+ | \item Jeudi : saumon chez ISF | ||
+ | \item Vendredi : saumon chez Intermarché | ||
+ | \item Samedi : saumon chez Hyper U | ||
+ | \item Dimanche : \textit{GROS FESTIN !!!} | ||
+ | \end{enumerate} | ||
+ | |||
+ | \subsection{Faire ses devoirs} | ||
+ | |||
+ | Entre deux repas, Jean-Loutre fait un peu de maths quand même ! Il est en train d' | ||
+ | |||
+ | ∇2→E=1c2∂2→E∂t2 | ||
+ | |||
+ | \vspace{5mm} | ||
+ | |||
+ | Il apprend aussi l' | ||
+ | |||
+ | \begin{center} | ||
+ | \fbox{iℏ∂∂tψ(→r,t)=−ℏ22mΔψ(→r,t)} | ||
+ | \end{center} | ||
+ | |||
+ | Enfin pour son cours de signal, il doit connaître la formule de la transformée de Fourier. | ||
+ | |||
+ | $$ | ||
+ | \hat{f}(\omega)=\dfrac{1}{\sqrt{2\pi}}\int_{-\infty}^{+\infty}f(x)e^{-ix\omega}dx | ||
+ | $$ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ==== 2. Recréer un document ==== | ||
+ | |||
+ | Dans ce deuxième, vous aller devoir recréer un document à partir de zéro. Voici le document à reproduire. | ||
+ | {{ : | ||
+ | |||
+ | Vous pouvez partir de cette base : | ||
+ | |||
+ | <code latex> | ||
+ | \documentclass[11pt, | ||
+ | |||
+ | %%% Importation des packages %%% | ||
+ | \usepackage[utf8]{inputenc} | ||
+ | \usepackage{amsmath} | ||
+ | \usepackage{amssymb} | ||
+ | |||
+ | %%% Mise en page %%% | ||
+ | \setlength{\parindent}{0pt} | ||
+ | \renewcommand{\arraystretch}{1.3} %espacement des cellules | ||
+ | |||
+ | %%% Identité du document %%% | ||
+ | \title{Formation \LaTeX \,: document à reproduire} | ||
+ | \date{} | ||
+ | |||
+ | %%% Contenu du document %%% | ||
+ | |||
+ | \begin{document} | ||
+ | |||
+ | \maketitle | ||
+ | </ | ||
+ | |||
+ | Pour l' | ||
+ | |||
+ | Infos: | ||
+ | Pour le tableau et la matrice vous pouvez vous servir de l' | ||
+ | |||
+ | Bon courage ! | ||
+ | |||
+ | |||