UGA Introduction LaTeX 2017/8
LATEX est le format standard utilisé dans le monde de l’édition mathématique. Il existe des distributions libres de LATEX pour toutes les plateformes (voir les références).
Un document au format LATEX est un texte (au format ASCII) contenant des commandes de formatage. Ces commandes servent à structurer le texte (chapitres, sections, etc.) en laissant au compilateur le soin de rendre cette structure au mieux en fonction du format de sortie (texte imprimé, fichier PDF, sortie HTML pour mettre sur un site Web). Elles gèrent aussi l’affichage des symboles mathématiques, la numérotation des chapitres (chapter), sections, sous-sections (section, subsection), les réfèrences (on place un repère nom avec label puis on se réfère à nom avec ref ou pageref)
\label{toto} puis \ref{toto} ou \pageref{toto}
ou permettent de créer automatiquement la table des matières (\ -.05truein tableofcontents). Une fois saisi, le texte source LATEX doit être compilé (parfois deux fois de suite pour mettre à jour les références et la table des matières). Le compilateur ne tient pas compte de la mise en page du texte source, le nombre d’espace entre deux mots est ignoré de même que le passage à la ligne. Seuls les sauts de lignes sont interprétés comme signalant un début de paragraphe.
La syntaxe d’une commande de formatage LATEX est :
\command[option]{argument}
Il existe dix caractères réservés qui ne sont donc pas imprimés
tels quels :
$ & % # _ { } \
Pour les imprimer, il faut taper :
\$ \& \% \# \_ \{ \} \circonflexe \tild \symbol{92}
Le passage à la ligne (changement de paragraphe) se fait en insérant une ligne vide, la ligne suivante est alors indentée1
Un espace est crée avec \ -.07truein ⊔.
Pour éditer votre texte en LATEX, vous devez utiliser un éditeur comme pour taper le code source d’un programme. Vous pouvez utiliser n’importe quel éditeur si vous en connaissez déjà un, comme par exemple emacs (un éditeur de fichiers sources C/C++, Java, Python, LaTeX, ... très puissant mais qui nécessite un apprentissage...). Sinon, vous pouvez apprendre TexMaker qui est un environnement facilitant beaucoup l’apprentissage de LaTeX avec des raccourcis clavier compatibles Windows et des assistants et barres d’icones pour saisir les symboles mathématiques,
Recherchez Texmaker dans les programmes (menu Bureau,
pour l’installer sur votre
ordinateur, voir les liens en fin de document)
ou ouvrez un terminal
(menu Accessoires) et tapez la commande
texmaker &
(Si vous avez oublié le &, tapez Ctrl-Z puis bg).
Cliquez sur Nouveau puis sur Assistant dans la barre d’icones, sélectionnez utf8x au lieu de latin1
comme encodage. Ajouter ensuite la partie du texte ci-dessous entre
\begin{document}
et \end{document}
.
Téléchargez le document
www-fourier.ujf-grenoble.fr/~parisse/info/essai.tex
Ouvrez un terminal, puis éditez le document dans le terminal, par exemple avec Emacs :
emacs essai.tex &
(Si vous avez oublié le &, tapez Ctrl-Z puis bg).
Vous pouvez aussi créer un nouveau document à
partir d’un fichier vide et taper les lignes suivantes
(sans les commentaires qui commencent par %).
\documentclass[a4paper,11pt]{article} % 11 ou 12pt, article ou report ou book \usepackage[utf8]{inputenc} % caractères accentués en UTF8 \usepackage[T1]{fontenc} % idem \usepackage[francais]{babel} % français (chapter -> chapitre...) \usepackage{graphicx} % graphiques \usepackage{amsmath,amsfonts,amssymb} % symboles AMS \newcommand{\N}{{\mathbb{N}}} % définit la commande \N \title{Un essai\\Stage latex M1} % définit le titre (ici sur 2 lignes) \author{Mon Nom} % indiquez votre nom \begin{document} % début du document \maketitle % écrit le titre (cf. \title et \author) \section{Calcul de $ A^P \pmod{N}$} % un paragraphe Soit $A \in \N$ un entier, ... % on utilise la commande \N \subsection{Traduction Algorithmique} % un sous paragraphe \label{sec:tradu} % définit un label L'algorithme de la puissance rapide se compose de plusieurs parties \begin{enumerate} \item On commence par ... \item Ensuite ... \end{enumerate} \subsection{Le programme en $C^{++}$} % un autre sous paragraphe On a vu (section \ref{sec:tradu}) ... % une référence au label \newpage % nouvelle page \tableofcontents % table des matières \end{document} % fin du document
Pour traduire les différentes commandes de votre texte, il faut le compiler.
Vous devez d’abord sauver votre texte, à la souris, icone disquette ou menu Fichier -> Enregistrer ou au clavier Ctrl-S. Cliquez ensuite sur l’icone à gauche de Compilation rapide dans la barre d’icones (vous pouvez sélectionner un autre format de rendu: par exemple le format Latex et le rendu DVI, ce dernier se met à jour automatiquement). S’il y a des erreurs, elles apparaissent numérotées en-dessous, en cliquant sur le numéro, on positionne le curseur dans le texte source à l’endroit de l’erreur.
Vous devez d’abord sauver votre texte, par exemple
avec emacs à la souris, icone disquette
ou menu Files -> Save current buffer ou au clavier en tapant
(Ctrl-X Ctrl-S sous emacs).
Puis compilez en tapant
dans la fenêtre de commandes (Konsole ou xterm) :
latex essai
Dans emacs, vous pouvez aussi utiliser le menu Tex-> Tex file.
La compilation se fait avec traduction en un fichier essai.dvi ou, avec un arrêt à la première erreur rencontrée. Lorsque une erreur est détectée depuis emacs, un message apparait indiquant, la nature de l’erreur et la ligne où elle se situe.
Tapez sur la touche
Entree
pour continuer ou tapez x
puis Entree
pour interrompre la compilation. Corrigez votre erreur dans
l’éditeur et recompilez. Si vous avez compilé avec le menu
Tex->Tex file d’emacs, vous pouvez consulter le fichier essai.log pour
déterminer les erreurs à corriger.
Pour visualiser votre texte avant l’impression, utilisez
le menu Tex->Tex view dans emacs ou tapez dans la fenêtre
de commandes :
xdvi essai &
Si la page de visualisation n’est pas mise à jour lorsque
vous compilez à nouveau, vous devez quitter xdvi
en tapant
sur la touche q
et le relancer comme ci-dessus.
Pour imprimer (attention ne le faites pas maintenant!),
vous cliquerez dans TexMaker sur l’icone d’imprimante
ou vous taperez dans le fenêtre de commandes :
dvips essai
Si vous utilisez la commande pdflatex à la place de la
commande latex, le compilateur génére un fichier
.pdf au format PDF (que l’on peut lire avec Acrobrat Reader
ou sous Unix avec gv ou evince
). On peut aussi convertir un fichier
DVI en fichier PDF par la commande dvipdf.
Pour obtenir une sortie HTML, utilisez la commande hevea ou latex2html (disponible sur certains systèmes seulement).
Dans TexMaker, les commandes correspondantes se trouvent dans le menu LaTeX.
C’est une partie du document délimitée par:
\begin{type d'environnement}...\end{type d'environnement}
Voici quelques environnements souvent utilisés :
\begin{verbatim}
... \end{verbatim}
:
pas d’interprétation des commandes,
le texte est mis en style \ -.05truein texttt
(contrairement à {\ -.05truein tt...} qui met en style
\ -.05truein texttt mais interpréte...)
\begin{itemize}
... \end{itemize}
ou
\begin{enumerate}
... \end{enumerate}
:
permet d’énumerer une liste ; chaque élement de la liste doit commencer par
\ -.05truein item\begin{center}
... \end{center}
permet de centrer
un texte
\begin{tabular}{|l|c|r|r|}
... \end{tabular}
:
crée un tableau. Le nombre d’arguments (ici 4) indique le nombre de
colonnes. Ces arguments définissent l’alignement
l (left),c (center), r (right). On tape les lignes du
tableau en séparant les colonnes par &. Chaque ligne est terminée par
la commande \ -.07truein\ . Si on écrit la commande
\ -.05truein hline après une fin de ligne, cela affichera un
trait de séparation horizontal, Pour les traits de séparation
verticaux, utiliser | dans l’argument.
{\em ... }
, en gras {\bf ...}
.
Dans TexMaker, les commandes correspondantes se trouvent dans le menu Maths.
Dans le corps d’un texte, les formules mathématiques sont délimitées par un dollar, alors que les formules devant apparaître sur une ligne séparée sont délimitées par deux dollars. On tape par exemple :
Considérons les équations $x+y=0$ et $x-y=2$.
et on obtient :
Considérons les équations x+y=0 et x−y=2
alors que si on tape :
Considérons les équations \[x+y=0 \ \mbox{et} \ x-y=2\]
on obtient (la commande \ -.05truein mbox permet d’écrire du texte dans une formule) :
Considérons les équations
x+y=0 et x−y=2 |
On peut aussi obtenir une équation numérotée avec l’environnement
equation
:
\begin{equation} \label{eq:def_x} x = \sqrt{y+z} \end{equation}
ce qui donne :
x = | √ |
| (1) |
Une fraction s’obtient avec la commande \ -.05truein frac (\ -.05truein overline surligne)
\[\frac{x}{2y}=0.4\overline{230769}\]
donne :
| =0.4 |
|
Les indices s’obtiennent avec le caractère _ , les exposants avec le caractère et les flèches de vecteurs avec la commande \ -.05truein overrightarrow
Exemple :
\[x_1={(a^2+b^2)}^\frac{ 1 }{2}\] \[\overrightarrow{OA_{1,i}}=x^{2t}\cdot \overrightarrow{OB_i}\]
donne :
x1=(a2+b2) |
|
| =x2t· |
|
Une racine s’obtient avec la commande :
\[\sqrt{x^2+1}\] \[\sqrt[3]{x^2+1}\]
donne :
√ |
|
∛ |
|
Une limite s’obtient avec la commande : \ -.05truein lim { ...}
Pour écrire les fonctions mathématiques on les fait précéder de \ . On tape :
\[\lim_{x \rightarrow +\infty} \ln (x) = +\infty\]
pour obtenir :
| ln(x) = +∞ |
\[\left(\begin{array}{ccc} 2 & 3 & 4\\ x & x^2 & x^3\\ 5 & 6 & 7 \end{array}\right)\]
donne
⎛ ⎜ ⎜ ⎝ |
| ⎞ ⎟ ⎟ ⎠ |
\[\int_a^b f(t) \; dt\]
donne
∫ |
| f(t) dt |
$\sum_{i=0}^{+\infty} \frac{1}{i^2}$ et \[\sum_{i=0}^{+\infty} \frac{1}{i^2}\]
donne : ∑i=0+∞ 1/i2 et
|
|
On utilise la commande \ -.05truein prime ou ’
\[ f'(x)=(\exp(2x))^\prime=2\exp(2x)\]
donne
f′(x)=(exp(2x))′=2exp(2x) |
Pour la dérivée seconde, utiliser f'{'}
.
Pour les derivées partielles on utilise \ -.05truein partial :
\[ \frac{\partial f(x,y)}{\partial x}=2\exp(2x)\]
donne
| =2exp(2x) |
Pour mettre en valeur théorèmes, propositions, lemmes et autres
corollaires, on crée des environnements avec la commande
newtheorem
. Ces environnements peuvent partager le même
compteur ou avoir des compteurs séparés. On saisit au début du
document :
\newtheorem{thm}{Théorème} \newtheorem{prop}[thm]{Proposition} \newtheorem{defn}{D\'efinition}
Ici, thm
et prop
partagent le même compteur, mais pas
defn
.
Puis pour créer un énoncé, on tape
\begin{thm}
\'Enonc\'e du th\'eor\`eme
\end{thm}
et on obtient
On crée explicitement une référence avec la commande \label{}
et
un nom de label entre les accolades. La référence correspond au numéro de
section, sauf si on se trouve dans une environnement d’équation numérotée.
On y fait ensuite référence avec
la commande \ref{}
(et \pageref{}
pour indiquer la page).
Certaines commandes, comme \tableofcontents
utilisent des références
crées implicitement (numéro de section).
Les citations d’oeuvre sont en général gérées par un programme externe, bibtex
à partir d’un fichier de base de données bibliographiques. On utilise
les commandes (menu LaTeX
dans Texmaker)
\cite{}
pour citer une oeuvre, avec en paramètre la référence de l’oeuvre
\bibliiography{}
pour indiquer le nom de fichier de la base de données
bibliographique,
\bibliographystyle{abbrv}
pour spécifier un style d’affichage des citations
(ici abbrv
pour abrégé),
Exemple, on crée un fichier mabiblio.bib
contenant (dans
Texmaker, utilisez le menu Bibliographie
pour aider la saisie) :
@ book {Leborgne, AUTHOR="D. Leborgne", TITLE="{Calcul diff\'erentiel et g\'eom\'etrie}", PUBLISHER="PUF", YEAR="1982" }
puis on ajoute dans le source latex une fois \bibliiography{mabiblio.bib}
et \bibliographystyle{abbrv}
, et \cite{Leborgne}
autant de fois que
nécessaire. Sauvegarder le fichier mabiblio.bib
.
Depuis texmaker, revenir au fichier tex, puis avant-dernier menu
de la barre d’outil, faire une compilation
latex ou pdflatex, puis sélectionner bibtex comme compilateur,
compiler, puis sélectionner à nouveau latex ou pdflatex et
compiler 2 fois. En ligne de commande, taper
latex essai
bibtex essai
latex essai
latex essai
La philosophie de LATEX est de laisser le compilateur gérer les
espaces, cependant il peut se produire qu’il soit nécessaire
d’en ajouter. Les commandes \, \ \quad \qquad
permettent d’ajouter un espacement horizontal de taille de plus en
plus grande. On peut aussi utiliser \hspace{0.3cm}
où
l’argument est une longueur (avec une unité) pour un espacement
horizontal, \vspace{0.2cm}
pour un espacement vertical.
L’espacement en début de paragraphe peut être omis par la
commande \noindent
.
La commande \\
force un saut de ligne,
la commande \pagebreak
force un saut de page.
Les règles de ponctuation en français imposent de mettre
toujours un espace après le signe de ponctuation, et d’en mettre
un avant si le signe de ponctuation possède deux composantes
connexes. Dans ce cas on utilise un espace insécable ~
pour éviter que le signe de ponctuation se trouve tout seul sur une
ligne.
En principe, LATEX sait où couper dans un mot pour passer
à la ligne, mais il peut être nécessaire de l’aider, en
particulier si le mot contient des accents, on ajoute alors des \-
pour séparer les syllabes du mot.
On peut insérer une image au format EPS (encapsulated postscript) dans un source LATEX de la manière suivante :
\includegraphics[width=\textwidth]{image}
où image désigne le nom du fichier image.eps
.
On peut aussi indiquer
une largeur en centimètres après width=
.
La commande Unix convert permet de convertir une image
d’un autre format vers le format Encapsulated Postscript,
par exemple
convert image.png image.eps
Il faut avoir déclaré en tête (avant \begin{document}
)
du fichier source :
\usepackage{graphicx}
Pour créer des transparents, on utilise fréquemment la classe de document beamer
.
Cf. par exemple le tutoriel sur
http://www.tuteurs.ens.fr/logiciels/latex/beamer.html
.
De nombreux logiciels de calcul scientifique permettent d’interagir avec LATEX, on donne deux exemples dans cette section.
Depuis Xcas, vous pouvez copier dans le presse-papier la traduction LATEX d’une expression ou sous-expression en la sélectionnant et en utilisant le raccourci Ctrl-T. On peut aussi générer facilement un graphique insérable dans un fichier LATEX(menu M à droite du graphique, puis Exporter).
Vous pouvez compiler avec hevea
un fichier source LATEX
contenant des commandes de calcul
en un document HTML5 interactif permettant au lecteur de modifier
et/ou exécuter les commandes de calcul
depuis le navigateur avec lequel il consulte le document,
pour plus de détails, cf.
http://www-fourier.ujf-grenoble.fr/~parisse/giac/test_fr.tex
http://www-fourier.ujf-grenoble.fr/~parisse/giac/castex.html
Sous linux, vous pouvez générer les deux formats de sortie
PDF et HTML5 interactif en utilisant la commande icas ou giac au lieu de pdflatex. Il suffit de créer un document
latex normal, y ajouter (juste après \begin{document}
)
\begin{giacjsonline}
et (juste avant \end{document}
)
\end{giacjsonline}
, puis taper des commandes telles que
\giacinputbigmath{factor(x^10-1)}
ou
\giacinput{plot(sin(x))}
.
La compilation s’effectue alors depuis un terminal en tapant la
commande
giac nomfichier
Enfin pgiac est un programme qui permet de faire calculer
automatiquement par Giac (le moteur de calcul formel de Xcas)
certaines expressions d’un fichier source au format LATEX.
Voir le site de J.Michel Sarlat pour des exemples
http://melusine.eu.org/syracuse/giac/
texmacs est un programme permettant de saisir des documents
mathématiques avec une interface similaire à celle
des logiciels de traitement de texte usuels tout en conservant
une qualité typographique comparable à LATEX.
Il permet d’importer et d’exporter au format LATEX.
Il possède également une interface pour lancer certains
logiciel de calcul (Menu Inserer, sous-menu session).
Pour lancer texmacs sous Unix, tapez la commande :
texmacs &
http://miktex.org/
http://www.tug.org/mactex/
www.xm1math.net/texmaker/index_fr.html
http://fr.wikibooks.org/wiki/Programmation_LaTeX
http://www.tuteurs.ens.fr/logiciels/latex/
http://tex.loria.fr/index.html
http://fr.groups.yahoo.com/group/AmiTeX/
hevea.inria.fr
Ce document a été traduit de LATEX par HEVEA