Vous êtes sur la page 1sur 24

aide-mmoire LaTeX

Prambule standard
\documentclass[a4paper]{article}%autreschoix:book,report
\usepackage[utf8]{inputenc}%gestiondesaccents(source)
\usepackage[T1]{fontenc}%gestiondesaccents(PDF)
\usepackage[francais]{babel}%gestiondufranais
\usepackage{textcomp}%caractresadditionnels
\usepackage{mathtools,amssymb,amsthm}%packagesdelAMS+mathtools
\usepackage{lmodern}%policedecaractre
\usepackage{geometry}%gestiondesmarges
\usepackage{graphicx}%gestiondesimages
\usepackage{xcolor}%gestiondescouleurs
\usepackage{array}%gestionamlioredestableaux
\usepackage{calc}%syntaxenaturellepourlescalculs
\usepackage{titlesec}%pourlessections
\usepackage{titletoc}%pourlatabledesmatires
\usepackage{fancyhdr}%pourlesen-ttes
\usepackage{titling}%pourletitre
\usepackage{enumitem}%pourleslistesnumrotes
\usepackage{hyperref}%gestiondeshyperliens
\hypersetup{pdfstartview=XYZ}%zoompardfaut
\begin{document}
...
\end{document}
Options de classe
Voici les options quon peut donner \documentclass.
option description
10pt le texte est en 10pt
11pt le texte est en 11pt
12pt le texte est en 12pt
notitlepage le titre nest pas sur une page part
titlepage page de titre
openany saut de page simple avant les chapitres
openright un chapitre commence toujours sur
une page impaire
option description
a4paper taille de la page A4
onecolumn texte sur une colonne
twocolumn texte sur deux colonnes
oneside pour impression en recto uniquement
twoside pour impression en recto-verso
leqno les numros dquation sont gauche
fleqn les formules mises en vidences sont
alignes gauche
Exemple dutilisation : \documentclass[twocolumn,titlepage]{article} met le texte sur deux colonnes et
le titre sur une page part.
1
Spcicit du code source
Caractres spciaux
\ dbut dune commande
% commentaire (tout ce qui suit sur la ligne est ignor)
# identicateur de numro dargument dans une macro
{ dlimiteur ouvrant
} dlimiteur fermant
$ dbut/n de mode mathmatique
exposant (mode mathmatique uniquement)
_ indice (mode mathmatiques uniquement)
& changement de colonne dans un tableau
espace inscable
Comportement des espaces
Les espaces sont ignors en dbut de ligne ; plusieurs espaces ne comptent que comme un seul ; un saut de
ligne est un espace ; les espaces aprs les commandes-mots sont avals ; les espaces aprs les commandes-caractres
sont pris en compte. Voici un exemple de ces rgles en application (chaque espace est marqu par ).
code rsultat
Lalivresterlingaperdu
20~\%desavaleurenquelquesmois.
Aujourdhui,1\poundsnevautplus
rien.
La livre sterling a perdu 20 % de sa valeur en quelques
mois. Aujourdhui, 1 ne vaut plus rien.
Table des symboles spciaux
-- tiret demi-cadratin
--- tiret cadratin
# \# croisillon
{ \{ accolade ouvrante
} \} accolade fermante
$ \$ dollar
_ \_ underscore
& \& esperlute
\oe diphtongue
\ae diphtongue
\OE diphtongue
\AE diphtongue
\ss eszett
\og guillemets
franais ouvrants
\fg{} guillemets
franais fermants
(accents graves) guillemets anglais
ouvrants
(apostrophes) guillemets anglais
fermants
1
er
1\ier{} premier
1
re
1\iere{} premire
4
e
4\ieme{} quatrime
1
ers
1\iers{} premiers
1
res
1\ieres{} premires
4
es
4\iemes{} quatrimes
M
me
M\up{me} Madame
n
o
\no numro
n
os
\nos numros
N
o
\No Numro
N
os
\Nos Numros
\textonesuperior lettre sup. 1
\texttwosuperior lettre sup. 2
\textthreesuperior lettre sup. 3
\textcopyright copyright
\textregistered registred
\texttrademark trademark
% \% pourcent
\textperthousand pourmille
\texteuro euro
^ \textasciicircum circonexe
~ \textasciitilde tilde
Remarque. Les caractres suivants peuvent tre taps normalement : , , , @, (degr). Laccent grave
sobtient sur la touche 7 dun clavier de PC et lapostrophe sur la touche 4.
2
Polices de caractres
Taille de la police
{\tiny...} AaBbCcDdEeFfGgHhIiJjKkLlMm
{\scriptsize...} AaBbCcDdEeFfGgHhIiJjKk
{\footnotesize...} AaBbCcDdEeFfGgHhIiJjK
{\small...} AaBbCcDdEeFfGgHhIiJ
{\normalsize...} AaBbCcDdEeFfGgHhI
{\large...} AaBbCcDdEeFfGg
{\Large...} AaBbCcDdEeFf
{\LARGE...} AaBbCcDdEe
{\huge...} AaBbCcDd
{\Huge...} AaBbCcD
{\fontsize{10pt}{12pt}\selectfont...}
texte de 10pt, interligne de 12pt - 10pt = 2pt.
Style de la police
\textrm{...} {\rmfamily...} romain
\textsf{...} {\sffamily...} sans srif
\texttt{...} {\ttfamily...} tltype
\textmd{...} {\mdseries...} graisse normale
\textbf{...} {\bfseries...} gras
\textup{...} {\upshape...} droit
\textit{...} {\itshape...} italique
\emph{...} {\em...} emphase
\textsc{...} {\scshape...} petites capitales
\MakeUppercase{...} CAPITALES
\MakeLowercase{...} minuscules
\textnormal{...} {\normalfont...} annule les changements
Polices mathmatiques et de texte
Voici les packages disponibles (ne pas oublier de charger aussi \usepackage{lmodern}) :
\usepackage{lmodern} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\usepackage{txfonts} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\usepackage{pxfonts} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\usepackage[garamond]{mathdesign} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\usepackage[charter]{mathdesign} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\usepackage[utopia]{mathdesign} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\usepackage{fourier} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\usepackage{kpfonts} AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
Maths complexes =viter txfonts et pxfonts ; pour le texte, fourier = mathdesign/utopia, mais = pour les maths.
Autres polices pour les titres, sections, codes informatiques, etc.
Changer la police courante pour pnc : \fontfamily{pnc}\selectfont.
Changer la police sans srif pour pag : \renewcommand{\sfdefault}{pag}.
Changer la police tltype pour fvm : \renewcommand{\ttdefault}{fvm}.
Liste des principales polices (voir http://www.tug.dk/FontCatalogue/ pour une liste complte) :
nom code
Antiqua uaq
Bera Serif fve
Bookman pbk
Century Schoolbook pnc
Charter bch
Garamond ugm
Palatino ppl
Times ptm
Utopia put
nom code
Arev fav
Avant Garde pag
Bera Sans fvs
Grotesq ugq
Helvetica phv
LM Sans lmss
Optima uop
nom code
Bera Sans Mono fvm
courier pcr
CM Teletype cmtt
Letter Gothic ulg
Luximono ul9
TX Teletype txtt
Inconsolata fi4
Si le document comporte des mathmatiques, ne pas faire un changement de police direct, mais utiliser un
des packages dcrit ci-dessus (fourier, mathdesign, etc.).
3
Macros personnelles
Syntaxe de la dnition de macros
\newcommand{\Z}{\mathbb{Z}} macro sans argument
\newcommand{\definir}[1]{\emph{#1}} macro un argument
\newcommand{\nompropre}[2]{#1\textsc{#2}} macro deux arguments
\newcommand{\ZnZ}[1][n]{\Z/#1\Z} macro un argument optionnel
\newcommand{\strong}[2][red]{\textcolor{#1}{#2}} macro un argument obligatoire et un optionnel
Si la commande existe dj, utiliser \renewcommand. Pour dnir une commande uniquement si elle nexiste pas
dj, utiliser \providecommand.
Pour dnir un environnement {questions} bas sur {enumerate}, utiliser
\newenvironment{questions}{\begin{enumerate}[label=\alph*.]}{\end{enumerate}}
Il y a aussi \renewenvironment pour rednir un environnement.
Macros avec un @ dans leur nom
Les macros contenant un @ dans leur nom sont des macros internes et doivent tre entoures de \makeatletter
et \makeatother. Voici un exemple (voir page 7) :
\makeatletter
\titleformat{\paragraph}[runin]
{\normalfont\normalsize\bfseries}{\theparagraph}{1em}{}[\@addpunct{.}]
\makeatother
Espacement autour des macros et environnements
Espacement automatique aprs une macro avec le package xspace :
\newcommand{\ssi}{sietseulementsi\xspace}
Pas despaces parasites autour dun environnement :
\newenvironment{petit}{\small\ignorespaces}{\ignorespacesafterend}
Macros qui dnissent des macros
Utile pour les titres :
\newcommand{\theuniversite}{}
\newcommand{\universite}[1]{\renewcommand{\theuniversite}{#1}}
Package xargs
Le package xargs permet de dnir des macros plusieurs paramtres optionnels. Voici un exemple :
\newcommandx{\suite}[3][1=n,3=\in\mathbb{N}]{(#2_{#1})_{#1#3}}
Rsultat :
$\suite{u}$ (u
n
)
nN
$\suite[k]{u}$ (u
k
)
kN
$\suite{u}[\geq1]$ (u
n
)
n1
$\suite[k]{u}[\geq1]$ (u
k
)
k1
Voir la documentation (en franais) pour plus de prcisions :
http://mirror.ctan.org/macros/latex/contrib/xargs/xargs-fr.pdf
4
Titre du document
Titre standard
Dans le prambule :
\title{Titredudocument}
\author{Nomdupremierauteur\andNomdusecondauteur}
\date{Datedudocument}%vide=pasdedate;absent=datedujour
puis, aprs \begin{document}, l o doit apparatre le titre :
\maketitle
Page de titre personnalise
Remplacer \maketitle par
\begin{titlepage}
\fontfamily{phv}\selectfont
\vspace*{\stretch{1}}
\begin{flushright}\LARGE
VictorHugo
\end{flushright}
\hrule
\begin{flushleft}\huge\bfseries
Lesmisrables
\end{flushleft}
\vspace*{\stretch{2}}
\begin{center}
ditionsLavarice
2009
\end{center}
\end{titlepage}
Victor Hugo
Les misrables
ditions Lavarice
2009
Personnalisation avec le package titling
Voici la syntaxe du package titling :
\setlength{\droptitle}{-1cm}%asjutementdelespaceavantletitre
\renewcommand{\maketitlehooka}{}%matrielavantletitre
\pretitle{\begin{center}\LARGE}
\posttitle{\par\end{center}\vspace{0.5em}}
\renewcommand{\maketitlehookb}{}%matrielentretitreetauteur
\preauthor{\begin{center}\large
\begin{tabular}[t]{c}}
\postauthor{\end{tabular}\par\end{center}}
\renewcommand{\maketitlehookc}{}%matrielentreauteuretdate
\predate{\begin{center}\large}
\postdate{\par\end{center}}
\renewcommand{\maketitlehookd}{}%matrielaprsladate
5
Rsum du document
Syntaxe
\begin{abstract}
Blablablablabla...
\end{abstract}
Pour changer le nom du rsum, rednir (dans le prambule) \abstractname avec :
\addto\captionsfrench{\renewcommand{\abstractname}{Plan}}
Rsums en plusieurs langues
Aprs avoir charg chaque langue avec le package babel (voir page 15), il est possible de faire un rsum par
langue avec
\selectlanguage{francais}%onsassurequelalangueestbienlefranais
\begin{abstract}
Blablablablabla...
\end{abstract}
\selectlanguage{english}%onchangedelanguepourlersumenanglais
\begin{abstract}
Blablablablabla...
\end{abstract}
\selectlanguage{francais}%onrevientlalanguedorigine
Personnalisation avec le package abtract
Chargement du package abstract
\usepackage{abstract}%options:addtotoc,runin
Voici une liste des lments personnalisables :
\renewcommand{\abstractnamefont}{\normalfont\small\bfseries} Police utilise par le titre du rsum
\renewcommand{\abstracttextfont}{\normalfont\small} Police utilise par le texte du rsum
\abslabeldelim{:} Ponctuation aprs le titre du rsum (avec runin)
\renewcommand{\absnamepos}{center} Alignement du titre (sans runin)
\setlength{\abstitleskip}{2cm} Espace entre le titre et le texte du rsum
\setlength{\absleftindent}{0cm} Marge gauche du rsum
\setlength{\absrightindent}{0cm} Marge droite du rsum
Exemples dutilisations du package abstract
\renewcommand{\abstractnamefont}{%
\normalfont\small\itshape}
\setlength{\abstitleskip}{-1em}
%...
\begin{abstract}
Blablabla...
\end{abstract}
Rsum
Bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla.
\usepackage[runin]{abstract}
\abslabeldelim{.~---}
\setlength{\abstitleskip}{-\parindent}
%...
\begin{abstract}
Blablabla...
\end{abstract}
Rsum. Bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla.
6
Sections
Commandes de sectionnement
Syntaxe. Section numrote : \section[titre sommaire/en-ttes/signets PDF]{Titre normal}
Section non numrote : \section*{Titre}
Liste des commandes. \part, \chapter (non disponible en classe article), \section, \subsection, \subsubsection,
\paragraph, \subparagraph.
Numrotation des sections
Pour ajuster la profondeur de numrotation des sections, utiliser \setcounter{secnumdepth}{1} (dans le
prambule) o la correspondance profondeur/numrotation est donne par le tableau suivant.
niveau nom
1 part
0 (en classe article)
niveau nom
0 chapter
1 section
niveau nom
2 subsection
3 subsubsection
niveau nom
4 paragraph
5 subparagraph
Pour changer la faon dont apparat le numro dune section, faire (voir page 20 pour les compteurs)
\renewcommand{\thesection}{\arabic{section}}
Personnalisation avec le package titlesec
Le package titlesec fournit les commandes \titleformat et \titlespacing pour personnaliser les titres
de sections. Voici ces commandes pour les principaux niveaux de sectionnement :
\titleformat{\chapter}%
[display]%style:hang,display,runin,leftmargin,...
{\bfseries}%changementdefontenumro+titre
{\huge\chaptertitlename~\thechapter}%numro
{20pt}%espaceentrelenumroetletitre
{\Huge}%changementdefontedutitre
\titlespacing*{\chapter}%
{0pt}%retraitgauche
{50pt}%espaceavant
{40pt}%espaceaprs
[0pt]%retraitdroite
\titleformat{\section}
[hang]%style:hang,display,runin,leftmargin,...
{\normalfont\Large\bfseries}%fontenumro+titre
{\thesection}%numro
{1em}%espaceentrelenumroetletitre
{}%fontetitre
\titlespacing*{\section}
{0pt}%retraitgauche
{3.5explus1exminus.2ex}%espaceavant
{2.3explus.2ex}%espaceaprs
[0pt]%retraitdroite
\titleformat{\subsection}
[hang]%style:hang,display,runin,leftmargin,...
{\normalfont\large\bfseries}%fontenumro+titre
{\thesubsection}%numro
{1em}%espaceentrelenumroetletitre
{}%fontetitre
\titlespacing*{\subsection}
{0pt}%retraitgauche
{3.25explus1exminus.2ex}%espaceavant
{1.5explus.2ex}%espaceaprs
[0pt]%retraitdroite
\titleformat{\subsubsection}
[hang]%style:hang,display,runin,leftmargin,...
{\normalfont\normalsize\bfseries}%fontenumro+titre
{\thesubsubsection}%numro
{1em}%espaceentrelenumroetletitre
{}%fontetitre
\titlespacing*{\subsubsection}
{0pt}%retraitgauche
{3.25explus1exminus.2ex}%espaceavant
{1.5explus.2ex}%espaceaprs
[0pt]%retraitdroite
\titleformat{\paragraph}
[runin]%style:hang,display,runin,leftmargin,...
{\normalfont\normalsize\bfseries}%fontenumro+titre
{\theparagraph}%numro
{1em}%espaceentrelenumroetletitre
{}%fontetitre
[]%aprsletitre,p.ex."\@addpunct{.}"deamsmath
\titlespacing*{\paragraph}
{0pt}%retraitgauche
{3.25explus1exminus.2ex}%espaceavant
{1em}%espaceaprs
\titleformat{\subparagraph}
[runin]%style:hang,display,runin,leftmargin,...
{\normalfont\normalsize\bfseries}%fontenumro+titre
{\thesubparagraph}%numro
{1em}%espaceentrelenumroetletitre
{}%fontetitre
[]%aprsletitre,p.ex."\@addpunct{.}"deamsmath
\titlespacing*{\subparagraph}
{\parindent}%retraitgauche
{3.25explus1exminus.2ex}%espaceavant
{1em}%espaceaprs
Pour pouvoir utiliser \@addpunct (qui rajoute la ponctuation au besoin), il faut mettre \titleformat entre \makeatletter et \makeatother, voir page 4.
Exemples dutilisations de titlesec
\titleformat{\section}[block]
{\normalfont\bfseries\filcenter}
{\fbox{\itshape\thesection}}
{0.5em}{}
1 Titre long qui va sur
plusieurs lignes et qui continue
Bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
\titleformat{\section}[wrap]
{\normalfont\bfseries\filright}
{\thesection.}{.5em}{}
\titlespacing{\section}{2.5cm}
{1emplus.1emminus.1em}{1em}
1. Titre qui est
un peu long
Bla bla bla bla
bla bla bla bla
bla bla bla bla
bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla
1
\titleformat{\section}[frame]
{\normalfont}
{\filright\footnotesize\enspace
SECTION\thesection\enspace}
{8pt}
{\Large\bfseries\filcenter}
SECTION 1
Titre
Bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
Bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
\titleformat{\section}[leftmargin]
{\normalfont\vspace{6pt}%
\bfseries\filleft}
{\thesection}{.5em}{}
\titlespacing{\section}{2cm}
{1emplus.1emminus.1em}{1em}
1 Titre trs
long
Bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla
7
Table des matires
Insrer une table des matires
Cration de la table des matires. LaTeX cr automatiquement une table des matires lendroit o apparat
\tableofcontents
Changer le nom de la table. Rednir \contentsname dans le pramble avec
\addto\captionsfrench{\renewcommand{\contentsname}{Sommaire}}
Ajuster la profondeur. Changer la valeur du compteur tocdepth (voir page 20 pour les compteurs) :
\setcounter{tocdepth}{1}
Ajouter du matriel la table des matires
\addcontentsline{toc}{section}{Nomdelentre}
Package titletoc
Voici les dnitions pour les classes book et report (pour article, dcaler dun niveau vers le haut les
dnitions) :
\titlecontents{chapter}%
[1.5em]%retraitgauche
{\addvspace{1emplus0pt}\bfseries}%matrielavant
%communauxentresnumrotesoupas
{\contentslabel{1.3em}}%avantlorsquilyaunnumro
{\hspace{-1.3em}}%avantlorsquilnyapasdenumro
{\hfill\contentspage}%pointsdesuspensionetnopage
[\addvspace{0pt}]%matrielaprs
1 Titre du chapitre 3
1.1 Titre de section . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Titre de sous-section . . . . . . . . . . . . . . . 4
1.1.2 Titre de sous-section . . . . . . . . . . . . . . . 5
1.2 Titre de section . . . . . . . . . . . . . . . . . . . . . 7
\dottedcontents{section}%
[3.8em]%retraitgauche
{\addvspace{0pt}}%matrielavant
{2.3em}%espacementdecontentslabel
{0.75em}%espaceentreles....
[\addvspace{0pt}]%matrielaprs
\dottedcontents{subsection}%
[7.0em]%retraitgauche
{\addvspace{0pt}}%matrielavant
{3.2em}%espacementdecontentslabel
{0.75em}%espaceentreles....
[\addvspace{0pt}]%matrielaprs
Nom Niveau book et report article
retrait contentslabel retrait contentslabel
part 1/0 0 em 0 em
chapter 0 1.5 em 1.5 em
section 1 3.8 em 2.3 em 1.5 em 1.5 em
subsection 2 7.0 em 3.2 em 3.8 em 2.3 em
subsubsection 3 11.1 em 4.1 em 7.0 em 3.2 em
paragraph 4 16.1 em 5.0 em 11.1 em 4.1 em
subparagraph 5 22.1 em 6.0 em 16.1 em 5.0 em
Il existe une variante toile de \titlecontents pour mettre les entres de la table des matires sur une
mme ligne.
\setcounter{secnumdepth}{1}
\titlecontents*{subsection}
[6em]%retraitgauche
{\small}%matrielavantcommuntouteslesentres
{\thecontentslabel.}%avantlorsquilyaunnumro
{}%avantlorsquilnyapasdenumro
{,\thecontentspage}%affichagedunumrodepage
[.---]%ponctuationentrelesentres
[.]%ponctuationlafindesentres
1 Titre du chapitre 3
1.1 Titre de section . . . . . . . . . . . . . . . . . . . . . 3
1.1.1. Titre de sous-section, 4. 1.1.2. Titre de sous-
section, 5.
1.2 Titre de section . . . . . . . . . . . . . . . . . . . . . 7
Autres packages concernant les tables des matires
shorttoc (rajouter un sommaire plus court), minitoc (rajouter des sommaires par chapitre).
8
Thormes avec amsthm
Syntaxe de base
Pour les thormes, utiliser le package amsthm (il y a aussi le package ntheorem qui propose plus de fonction-
nalits, mais qui a un certain nombre de bugs). Pour dnir un thorme appel Thorme correspondant
lenvironnement {theoreme}, utiliser \newtheorem{theoreme}{Thorme}. Lenvironnement {theorem} a
un argument optionnel :
\begin{theoreme}
Blablablablabla.
\end{theoreme}
\begin{theoreme}[Fermat]
Blablablablabla.
\end{theoreme}
Thorme 1. Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla.
Thorme 2 (Fermat). Bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla bla bla.
Styles de thormes. Voici les trois styles de base disponibles :
\theoremstyle{plain}
\newtheorem{theoreme}{Thorme}
\theoremstyle{definition}
\newtheorem{exercice}{Exercice}
\theoremstyle{remark}
\newtheorem{corrige}{Corrig}
Thorme 1. Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla.
Exercice 1. Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla.
Corrig 1. Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla.
Numrotation des thormes. Voici les options de numrotation :
\theoremstyle{plain}
\newtheorem{theoreme}{Thorme}[section]
\newtheorem{corollaire}[theoreme]{
Corollaire}
\newtheorem{lemme}[theoreme]{Lemme}
\newtheorem*{axiome}{Axiome}
Axiome. Bla bla bla bla bla bla bla bla bla.
Lemme 1.1. Bla bla bla bla bla bla bla bla bla.
Thorme 1.2. Bla bla bla bla bla bla bla bla bla.
Corollaire 1.3. Bla bla bla bla bla bla bla bla bla.
Dmonstrations
Pour les dmonstrations, utiliser lenvironnement {proof}. Si jamais le carr de n de dmonstration est mal
plac, utiliser \qedhere pour le mettre au bon endroit. On peut changer le symbole de n de dmonstration
avec \renewcommand{\qedsymbol}{C.Q.F.D.}.
Personnalisation des thormes
Il est possible de dnir de nouveaux styles ou de
rednir les styles existants. Voici, titre dexemple,
la dnition des trois styles plain, definition et
remark :
\newtheoremstyle{plain}%
{\topsep}%espaceavant
{\topsep}%espaceaprs
{\itshape}%policeducorpsduthorme
{}%indentation(videpourrien,\parindent)
{\bfseries}%policedutitreduthorme
{.}%ponctuationaprslethorme
{}%aprsletitreduthorme(espaceou\newline)
{}%spcificationsdutitre
\newtheoremstyle{definition}%
{\topsep}%espaceavant
{\topsep}%espaceaprs
{\upshape}%policeducorpsduthorme
{}%indentation(videpourrien,\parindent)
{\bfseries}%policedutitreduthorme
{.}%ponctuationaprslethorme
{}%aprsletitreduthorme(espaceou\newline)
{}%spcificationsdutitre
\newtheoremstyle{remark}%
{\topsep}%espaceavant
{\topsep}%espaceaprs
{\upshape}%policeducorpsduthorme
{}%indentation(videpourrien,\parindent)
{\itshape}%policedutitreduthorme
{.}%ponctuationaprslethorme
{}%aprsletitreduthorme(espaceou\newline)
{}%spcificationsdutitre
La valeur par dfaut du dernier argument est
1
\thmname{#1}\thmnumber{\textup
{#2}}\thmnote{\textnormal{(#3)}}
o #1 est le titre, #2 le numro et #3 largument op-
tionnel du thorme.
1. En fait, la dnition est lgrement plus complique pour prendre en compte le fait que #1 peut tre vide.
9
Mathmatiques
Taper une formule
quation dans le texte $...$
quation hors-texte \[...\]
quation hors-texte numrote \begin{equation}
\label{eq-nom}
...
\end{equation}
Rfrence une quation \eqref{eq-nom}
Texte dans une quation \text{...}
Spcier le numro* \tag{$(E)$}
Enlever le numro \nonumber
Encadrer une formule \boxed{...}
(en mode mathmatique)
* Ne pas utiliser \tag avec {equation}, cela cause des problmes avec hyperref, mais remplacer {equation} par {gather}.
quations alignes. Pour numroter chacune des quations, enlever ltoile.
\begin{align*}
...&=...\\
&=...
\end{align*}
=
=
\begin{gather*}
...\\
...
\end{gather*}
\begin{multline*}
...\\
...
\end{multline*}
Mettre \allowdisplaybreaks dans le prambule pour permettre les sauts de pages dans les quations.
Syntaxe des mathmatiques
$x_1^2$ x
2
1
$\prescript{t}{}{V}$
t
V
$\prescript{}{2}{F}_1^{}$
2
F
1
\[\sum_{\substack{d\midn\\

d|n
d=n
a
d
d\neqn}}a_d\]
$\sqrt{2}$

2
$\sqrt[3]{2}$
3

2
code d
a
n
s
l
e
t
e
x
t
e
h
o
r
s
-
t
e
x
t
e
code d
a
n
s
l
e
t
e
x
t
e
h
o
r
s
-
t
e
x
t
e
$\frac{a}{b}$
a
b
a
b
$\binom{n}{k}$
_
n
k
_

n
k

$\tfrac{a}{b}$
a
b
a
b
$\tbinom{n}{k}$
_
n
k
_ _
n
k
_
$\dfrac{a}{b}$
a
b
a
b
$\dbinom{n}{k}$

n
k

n
k

Forcer le style hors-texte : \displaystyle ; forcer le style dans le texte : \textstyle.


Matrices et distinction de cas
\begin{matrix}a&b\\
c&d\end{matrix}
a b
c d
\begin{pmatrix}a&b\\
c&d\end{pmatrix}

a b
c d

\begin{bmatrix}a&b\\
c&d\end{bmatrix}

a b
c d

\begin{Bmatrix}a&b\\
c&d\end{Bmatrix}

a b
c d

\begin{vmatrix}a&b\\
c&d\end{vmatrix}

a b
c d

\begin{Vmatrix}a&b\\
c&d\end{Vmatrix}
_
_
_
_
a b
c d
_
_
_
_
(\begin{smallmatrix}a&b\\
c&d\end{smallmatrix})
(
a b
c d
)
\begin{pmatrix}a&b&c\\
\hdotsfor{3}\end{pmatrix}

a b c
. . . . . . . .

Changer le nombre maximal de colonnes : \setcounter{MaxMatrixCols}{50} (valeur par dfaut = 10).


\[f(x)=\begin{cases}x&\text{si$x>0$,}\\
-x&\text{sinon}\end{cases}\]
f(x) =

x si x > 0,
x sinon
Congruences et modules
$a\equivb\modm$ a b mod m
$a\equivb\pmodm$ a b (mod m)
$a\equivb\podm$ a b (m)
$\gcd(n,m\bmodn)$ gcd(n, m mod n)
Placement vertical au dessus ou en-dessous
$\underset{x\to0}{\sim}$
x0
$\overset{\mathrm{def}}{=}$
def
=
10
Symboles mathmatiques
Pour une liste complte, voir http://tug.ctan.org/pkg/comprehensive
Alphabets mathmatiques
commande exemple
\mathnormal 1C111G1 . . . oococ)jI. . . oi6Sp
\mathit ABCDEFGH . . . abcdefgh . . . 0123456789
\mathbf ABCDEFGH. . . abcdefgh. . . 0123456789
\boldsymbol ABCD. . . abcd . . . 0123 . . . . . . . . .
\mathsf ABCDEFGH. . . abcdefgh . . . 0123456789
commande exemple
\mathcal ,B(TcT]7|//AC11ST | . . .
\mathscr ABCDE FGH IJK LMN OPQ. . .
\mathbb ABC|EFGH",K'MNP1. . . k (\Bbbk)
\mathfrak ABCDEFGH. . . abcdefgh . . . 0123456789
Alphabet grec
\alpha
\beta
\gamma
\delta
c \epsilon
\varepsilon
\zeta
\eta
\theta
\vartheta
\iota
\kappa
\varkappa
\lambda
j \mu
\nu
\xi
\pi
c \varpi
\rho
\rho
\sigma
\varsigma
\tau
\upsilon
\phi
\varphi
\chi
\psi
\omega
} \digamma
\Gamma
\Delta
\Theta
\Lambda
\Xi
\Pi
\Sigma
\Upsilon
\Phi
\Psi
\Omega
Symboles alphanumriques
\aleph
Q \beth
\gimel
\daleth
/ \ell
\infty
\partial
\wp
\forall
\exists
! \exists!
\varnothing
\neg
\nabla
Lois de composition
+ +
-
\pm
\mp
\times
\cdot
\div
*
- \star
\circ
\cup
\cap
| \sqcup
| \sqcap
U \amalg
, \vartriangle
\oplus
\otimes
\wedge
\vee
< \lhd
\rhd
\rtimes
\ltimes
U \amalg
; \wr
\bot
\top
Symboles de relation
galits.
= = ,= \neq
:= \coloneqq :,= \vcentcolon\neq
\equiv , \not\equiv
\propto , \not\propto
> \asymp ,> \not\asymp
\sim , \not\sim
\simeq , \not\simeq
\approx , \not\approx
\approxeq , \not\approxeq

= \cong ,

= \not\cong
Inclusions.
\subset
, \not\subset
\supset
, \not\supset
\subseteq
_ \nsubseteq
\supseteq
_ \nsupseteq
_ \subsetneq
_ \supsetneq
_ \varsubsetneq
_ \varsupsetneq
\subseteqq
\nsubseteqq
\supseteqq
\nsupseteqq
_ \subsetneqq
_ \supsetneqq
\varsubsetneqq
\varsupsetneqq
\sqsubset
, \not\sqsubset
\sqsupset
, \not\sqsupset
[ \sqsubseteq
,[ \not\sqsubseteq
\sqsupseteq
, \not\sqsupseteq
Ingalits.
< < > \leq \geq \leqslant \geqslant _ \ll \gg
Flches
\to
\mapsto
\hookrightarrow
\twoheadrightarrow
= \implies
\iff
, = \centernot\implies
(pkg centernot)
, \centernot\iff
(pkg centernot)
, \nearrow
_ \swarrow
\rightleftarrows
\rightrightarrows
\nrightarrow
\mapstochar\nrightarrow
~ \rightsquigarrow
--- \dashrightarrow
Flches extensibles. \xrightarrow{f} donne
f
et \xrightarrow[dessous]{dessus} donne
dessus

dessous
.
\xleftarrow
\xrightarrow
\xmapsto
\xleftrightarrow
= \xRightarrow
= \xLeftarrow
\xLeftrightarrow
\xrightharpoondown
\xrightharpoonup
\xleftharpoondown
\xleftharpoonup

\xrightleftharpoons

\xleftrightharpoons
\xhookleftarrow
\xhookrightarrow
11
Fonctions usuelles
\ln ln
\exp exp
\lim lim
\max max
\sup sup
\min min
\cos cos
\sin sin
\tan tan
\cot cot
\arccos arccos
\arcsin arcsin
\arctan arctan
\sinh sinh
\cosh cosh
\tanh tanh
\coth coth
\inf inf
\deg deg
\det det
\dim dim
\ker ker
\arg arg
\gcd gcd
\hom hom
\lg lg
\log log
\liminf liminf
\varliminf lim
\limsup limsup
\varlimsup lim
\projlim proj lim
\varprojlim lim

\injlim inj lim


\varinjlim lim

Pour dnir de nouvelles fonctions : \DeclareMathOperator{\Vect}{Vect}


Dlimiteurs
dlimiteurs ouvrants et fermants dlimiteurs mdiants
(a) (x) [a[ \lvert x\rvert a) \langle x\rangle / [ |
[a] [x] |a| \lVert x\rVert a \llbracket x\rrbracket
(stmaryrd)
\ \backslash | \|
a \{x\} ]a| \lfloor x\rfloor a| \lceil x\rceil
Pour ]1 ; 1[, utiliser la commande \intervalleoo ci-dessous.
Pour changer la taille : \left, \right, \middle, \big, \bigl, \bigm, \bigr (ainsi que Big, bigg et Bigg)
\left et \right sont certaines fois trop grands :
_
_

i
a
i

j
x
i,j

p
_
_
1/p
contre

i
a
i

j
x
i,j

1/p
.
Grands oprateurs
\int
_
_
\sum

\prod


\iint
__
__
\coprod


\bigcup

_
\iiint
___
___
\bigcap


\bigsqcup

_
\idotsint
_

_
_

_
\bigoplus


\bigotimes


\oint
_
_
\bigwedge
_

\bigvee
_

Utilisation de \limits, \nolimits et \displaystyle ainsi que \sideset


n

k=1
Accents mathmatiques
\bar o
\vec o
\tilde o
\breve o
\hat o \check o \acute o \grave ` o \dot o \ddot o \dddot
...
o \ddddot
....
o \mathring o
Accents extensibles. $\underbracket{ABC}_{bas}$ donne ABC
bas
et $\overbrace{ABC}^{haut}$ donne
haut
..
ABC.
\overbrace
..
1C . . .
\overline 1C . . .
\overrightarrow

1C . . .
\overleftarrow

1C . . .
\overleftrightarrow

1C . . .
\overbracket 1C . . .
\underbrace 1C . . .
. .
\underline 1C . . .
\underrightarrow 1C . . .

\underleftarrow 1C . . .

\underleftrightarrow 1C . . .

\underbracket 1C . . .
\widetilde

1C111G
\widehat

1C111G
\widetriangle

1C111G
\wideparen

1C111G
\widering

1C111G
Points de suspension
. . . ou (automatique) \dots . . . \ldots \cdots
.
.
. \vdots
.
.
. \ddots .
.
.
\iddots
(pkg mathdots)
Le package mathdots permet davoir des points de suspension corrects en indice ou exposant.
Raccourcis utiles pour les maths
\newcommand{\diff}{\mathop{}\mathopen{}\mathrm{d}}
\newcommand{\intervalle}[4]{\mathopen{#1}#2\mathpunct{};#3\mathclose{#4}}
\newcommand{\intervalleff}[2]{\intervalle{[}{#1}{#2}{]}}
\newcommand{\intervalleof}[2]{\intervalle{]}{#1}{#2}{]}}
\newcommand{\intervallefo}[2]{\intervalle{[}{#1}{#2}{[}}
\newcommand{\intervalleoo}[2]{\intervalle{]}{#1}{#2}{[}}
12
Bibliographies avec ou sans BibTeX
Bibliographie faite la main
Voir\cite{SGA5}et\cite[p.~167]{Eucl.elts}.
\begin{thebibliography}{SGA~5}
\bibitem{Eucl.elts}\textsc{Euclide},\emph{Les
lments}.
\bibitem[SGA~5]{SGA5}\textsc{Grothendieck},\emph{
SGA5}.
\end{thebibliography}
Voir [SGA 5] et [1, p. 167].
Bibliographie
[1] Euclide, Les lments.
[SGA 5] Grothendieck, SGA5.
Largument de {thebibliography} est ltiquette la plus longue ( SGA 5 dans lexemple prcdent).
Bibliographie automatique avec BibTeX
\bibliographystyle{smfalpha}
\bibliography{biblio}
Compilation. Compiler avec latex puis bibtex puis deux fois latex.
Fichier bib. Le chier biblio.bib contient les entres bibliographiques de la forme suivante.
@BOOK{DD.syst,
AUTHOR="Durand,AnatoleandDupont,Georges",
TITLE="{Nouveautraitdanalysedesdonnes
systmiques}",
PUBLISHER="Vuibert",
YEAR="2002",
NOTE=""
}
@ARTICLE{Dup.nouvdem,
AUTHOR="Dupont,Georges",
TITLE="{Unenouvelledmonstrationduthorme
fondamentaldesanalysesdedonnessystmiques}",
JOURNAL="JournalofSystemicData",
YEAR="1995",
VOLUME="4",
PAGES="456-561",
NOTE=""
}
Autres types dentres : @INPROCEEDINGS, @MISC, @PHDTHESIS.
Styles BibTeX
Pour un texte en anglais, il y a les styles plain, alpha, etc. Pour un texte en franais, utiliser
style smfplain style smfalpha
[1] A. Durand et G. Dupont Trait danalyse des
donnes systmiques, Vuibert, 2002.
[2] G. Dupont Sur lanalyse systmique , Journal
of Systemic Data 4 (1995), p. 456-561.
[3] A. Durand Analyses des donnes systmiques
Une introduction, Masson, 1987.
[DD02] A. Durand et G. Dupont Trait danalyse
des donnes systmiques, Vuibert, 2002.
[Dup95] G. Dupont Sur lanalyse systmique ,
Journal of Systemic Data 4 (1995), p. 456-561.
[Dur87] A. Durand Analyses des donnes syst-
miques Une introduction, Masson, 1987.
Raccourcis dans BibTeX
On peut utiliser @STRING pour ne pas rpter du texte ; pour concatner deux chanes, utiliser # :
@STRING{GDupont="Dupont,Georges"}
@STRING{ADurand="Durand,Anatole"}
@BOOK{DD.syst,
AUTHOR=GDupont#"and"#ADurand,
}
On peut aussi dnir des commandes LaTeX avec @PREAMBLE an dtre sr quelles soient prsentes :
@PREAMBLE{"\newcommand{\arxivlink}[1]{\href{http://arxiv.org/abs/#1}{arXiv:#1}}"}
@ARTICLE{Perelman.ricci.surgery,
NOTE="\arxivlink{math/0303109}"
}
ce qui mettra arXiv:math/0303109 lentre correspondante.
13
Mise en page, en-ttes et pieds de pages
Mise en page
On peut personnaliser la mise en page en passant les arguments suivants la commande \geometry.
option description
landscape mode paysage (page en largeur)
portrait mode portrait
margin=3cm toutes les marges 3cm
vmargin=3cm marges hautes et basses 3cm
hmargin=3cm marges gauches et droites 3cm
option description
top=3cm marge haute 3cm
right=3cm marge droite 3cm
bottom=3cm marge basse 3cm
left=3cm marge gauche 3cm
autres options dans la doc de geometry
Exemple dutilisation : pour obtenir des marges de 2,5 cm gauche et droite et 5 cm en haut et en bas, utiliser
\geometry{hmargin=2.5cm,vmargin=5cm}.
Commandes de style pour les en-ttes et pieds de pages
commande effet
\pagestyle style de page du document
\thispagestyle style de la page courante
style description
empty page vide
plain numro en bas centr
headings style standard
Personnaliser les en-ttes et pieds de pages
Voici la syntaxe du package fancyhdr.
\pagestyle{fancy}
\fancyhf{}%effacetoutcequilyavaitavant
\fancyhead[LO,RE]{\leftmark}%LO=gauche/impair;RE=droite/pair
\fancyhead[RO,LE]{\rightmark}%RO=droite/impair;LE=gauche/pair
\fancyfoot[C]{\thepage}%C=centr
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
La commande \nouppercase permet dviter que les en-ttes soient en lettres capitales. Exemple :
\fancyhead{\nouppercase\leftmark}
La signication de \rightmark et \leftmark dpend de la classe de document :
book/report article
\leftmark chapter section
book/report article
\rightmark section subsection
Rednir les styles existants
Voici les dnitions en terme de fancyhdr des styles plain et empty :
\fancypagestyle{plain}{%
\fancyhf{}%remisezro
\fancyfoot[C]{\thepage}%nopagecentr
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}}
\fancypagestyle{empty}{%
\fancyhf{}%remisezro
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}}
Marques den-ttes
Si jamais on veut changer le contenu des en-ttes, on peut utiliser \markboth et \markright pour changer
le contenu de \leftmark et \rightmark :
\markboth{left}{right}
\markright{right}
Cest utile pour mettre des en-ttes aux chapitres toiles, ou effacer les en-ttes de la table des matires.
14
Autres commandes de base
Notes de bas de page
...bla\footnote{Blablablablabla.}blabla.
Bien penser coller la note au mot qui la prcde. Pour changer la numrotation (voir page 20 sur les compteurs) :
\renewcommand{\thefootnote}{\fnsymbol{footnote}}
Les packages footmisc et loption francais de babel permettent de personnaliser les \footnote.
Rfrences un lment
\label{definition.importante} Marque llment numrot qui prcde (section, thorme, etc.)
\ref{definition.importante} Fait rfrence au numro de section, thorme, etc.
\pageref{definition.importante} Fait rfrence au numro de page de la section, du thorme, etc.
\eqref{definition.importante} Variante de \ref utiliser pour les quations
Insertion de chiers
commande effet
\input{fichier.tex} inclut le chier fichier.tex
\include{chapitre1.tex} saute une page puis inclut le chier
\inludeonly{chapitre1.tex} ninclut que chapitre1.tex parmi les chiers inclus avec \include (sutilise
uniquement dans le prambule et ne marche pas avec \input)
Changer de langue
\usepackage[francais,english]{babel} puis \selectlanguage{francais}.
langue option de babel
Allemand ngerman
Anglais english
Espagnol spanish
langue option de babel
Franais francais
Italien italian
Latin latin
langue option de babel
Nerlandais dutch
Portugais portuges
Une liste complte des langages est disponible dans la documentation de babel.
Paragraphes
\setlength{\parindent}{15pt} ajuste la valeur de lindentation des paragraphes
\noindent supprime lindentation du paragraphe si plac au tout dbut de celui-ci. utiliser avec parcimonie.
Blocs de texte
aucun 1er juin 1944 :
Bercent mon coeur dune lan-
gueur monotone
{center}
\centering
1er juin 1944 :
Bercent mon coeur dune
langueur monotone
{flushleft}
\raggedright
1er juin 1944 :
Bercent mon coeur dune
langueur monotone
{flushright}
\raggedleft
1er juin 1944 :
Bercent mon coeur dune
langueur monotone
{quote} 1er juin 1944 :
Bercent mon coeur
dune langueur mono-
tone
{quotation} 1er juin 1944 :
Bercent mon
coeur dune langueur
monotone
{verse} 1er juin 1944 :
Bercent mon coeur
dune langueur mo-
notone
Bien noter que left et right sont inverss entre {flushleft} et \raggedright et {flushright} et \raggedleft.
15
Tableaux
Syntaxe des tableaux
Packages ncessaires. Toujours utiliser le package array.
Syntaxe. Les positions possibles sont c (centr), t (align en haut) et b (align en bas).
\begin{tabular}[position]{spcication colonnes}
...
\end{tabular}
Spcications de colonnes.
l colonne aligne gauche
r colonne aligne droite
c colonne centre
p{5cm} colonne forme dun paragraphe de 5cm
m{5cm} idem, mais centr verticalement
b{5cm} idem, mais align en bas
@{$\to$} met $\to$ entre les colonnes
!{$\to$} idem, mais garde lespace entre les colonnes
| trait vertical entre les colonnes
>{\bfseries} Met \bfseries au dbut de la colonne
<{\texteuro} Met \texteuro la n de la colonne
*{6}{l@{,}r} rptition du motif l@{,}r six fois
>{\centering\arraybackslash}p{5cm} colonne p{5cm} avec texte centr horizontalement
Commandes.
& Changement de colonne
\\ Changement de ligne
\\[3pt] idem mais rajoute 3pt despace vertical
partir de la ligne de base
\hline Trait horizontal
\cline{2-5} Trait horizontal entre les 2
e
et 5
e
colonnes
Fusion de cellules.
Fusion de colonnes \multicolumn{3}{c}{Titre}
Fusion de lignes \multirow{3}{*}{Titre} (package multirow)
Fusion de lignes et de colonnes \multicolumn{3}{c}{\multirow{3}{*}{Titre}} (package multirow)
Espacement du tableau.
\setlength{\tabcolsep}{0.5em} rgle despace entre les colonnes
\renewcommand{\arraystretch}{1.25} multiplie lespace entre les lignes par 1,25
Couleurs dans les tableaux. Rajouter au package xcolor avec option table : \usepackage[table]{xcolor}.
\cellcolor{blue!10} cellule de couleur
\rowcolors{2}{white}{blue!10} alterne les deux couleurs spcis partir de la ligne n
o
1
\rowcolor{blue!10} ligne de couleur
\columncolor{green!5} colonne de couleur
Exemples de tableaux
\begin{center}
\rowcolors{2}{white}{blue!10}
\begin{tabular}{lll}
Titre&Titre&Titre\\
Texte&Texte&Texte\\
Texte&Texte&Texte\\
Texte&Texte&Texte\\
Texte&Texte&Texte\\
\end{tabular}\end{center}
Titre Titre Titre
Texte Texte Texte
Texte Texte Texte
Texte Texte Texte
Texte Texte Texte
\begin{center}\begin{tabular}{|l|l|l|}
\cline{2-3}
\multicolumn{1}{c|}{}&Titre&Titre\\
\hline
Titre&Texte&Texte\\\hline
Titre&\multicolumn{2}{c|}{\multirow{2}{*}{--}}
\\
\cline{1-1}
Titre&\multicolumn{2}{c|}{}\\\hline
\end{tabular}\end{center}
Titre Titre
Titre Texte Texte
Titre

Titre
\begin{center}\begin{tabular}{|>{\columncolor{gray!20}}l|r@{,}l<{\$}|}
\hline
\multicolumn{1}{|>{\columncolor{gray!20}}c|}{\bfseriesDenre}&
\multicolumn{2}{c|}{\bfseriesPrix}\\
\hline
Lait&0&80\\
\OEuf&3&75\\
Poulet&8&35\\
Lessiveenpoudre&10&02\\
\hline
\end{tabular}\end{center}
Denre Prix
Lait 0,80$
uf 3,75$
Poulet 8,35$
Lessive en poudre 10,02$
Pour des tableaux avec lgende, utiliser lenvironnement {table} (voir page 17).
16
Images et graphiques
Inclusion dimages
Pour inclure une image, utiliser le package graphicx. Les formats accepts lorsquon produit directement du
PDF sont .jpg, .png, .pdf. Voici la syntaxe pour inclure limage appele, disons, tiger.png :
\includegraphics{tiger} inclut limage tiger.png (pas besoin de prciser lextension)
\includegraphics[scale=0.2]{tiger} idem, mais lchelle 0,2
\includegraphics[width=1cm]{tiger} idem, mais avec une largeur de 1cm
\includegraphics[height=0.5cm]{tiger} idem, mais avec une hauteur de 1cm
Inclusion de pages entires dun PDF
Pour inclure des pages entires dun PDF, utiliser le package pdfpages puis la commande \includepdf
\includepdf[pages=-]{document} inclure toutes les pages du chier document.pdf
\includepdf[pages=3-5]{document} inclure les pages 3 5 du chier document.pdf
Placement dimages
placement manuel placement automatique
\usepackage{caption}
%...
\begin{center}
\includegraphics{tiger}
\captionof{figure}{Imageduntigre}
\label{image-tigre}
\end{center}
\begin{figure}\centering
\includegraphics{tiger}
\caption{Imageduntigre}
\label{image-tigre}
\end{figure}
(Noter que \label est toujours aprs \caption.)
Pour les tableaux (voir page 16), on utilisera {table} au lieu de {figure}.
Liste des gures
Pour faire une liste des gures, utiliser \listoffigures (pour une liste des tables, cest \listoftables).
Texte autour dune gure
Pour mettre du texte autour dune gure, utiliser le package wrapfig (il vaut mieux viter picinpar qui
pose un certain nombre de problmes). Voici la syntaxe :
\begin{wrapfigure}{r}{0cm}%rdroiteetlpourgauche
\includegraphics{...}
\end{wrapfigure}
Ne pas utiliser lintrieur dune liste ou dun {center}. Le \begin{wrapfigure} se place la n de la ligne
prcdent lendroit o lon veut que la gure apparaisse, mme si cest au milieu dun mot.
Letigreestunmammifrecarnivoredelafa-%
\begin{wrapfigure}{r}{0cm}
\includegraphics[width=2cm]{tiger-crop}
\end{wrapfigure}%
milledesflidsdugenrePanthera.Aisment
reconnaissablesafourrurerousserayede
noir,ilestleplusgrandflinsauvagedu
monde.Lespceestdiviseenneufsous-
espcespossdantdesdiffrencesmineuresen
termesdetailleoudecomportement.
Le tigre est un mammifre carnivore de la fa-
mille des flids du genre Pan-
thera. Aisment reconnaissable
sa fourrure rousse raye de noir,
il est le plus grand flin sauvage
du monde. Lespce est divise en
neuf sous-espces possdant des
diffrences mineures en termes
de taille ou de comportement.
(Texte provenant de larticle Tigre sur wi-
kipdia.)
17
Couleurs, espacements, rglures, url, effets spciaux
Couleurs
Pour changer la couleur, il y a la commande \textcolor{gray} et la bascule \color{gray} qui mettent
toutes les deux le texte dans la couleur gray. Voici une petite liste des couleurs prdnies :
black darkgray gray lightgray white
red orange yellow green blue violet
purple pink magenta cyan brown
On peut mlanger ses couleurs pour en obtenir dautres ; par exemple, green!60!black est du vert fonc auquel
on peut donner le nom darkgreen en faisant \colorlet{darkgreen}{green!60!black}. On peut aussi faire
\definecolor{bordeaux}{rgb}{.5,0,0} pour dnir une couleur en RVB (les nombres sont entre 0 et 1).
commande rsultat
{\color{gray}texte} texte
\textcolor{gray}{texte} texte
\normalcolor couleur normale
\pagecolor{blue!5} met le fond de la page et de toutes celles qui suivent en blue!5
commande rsultat
\fbox{texte} texte
\colorbox{gray!20}{texte} texte
\fcolorbox{black}{gray!20}{texte} texte
Espacements
commande effet
\hspace{1cm} espace horizontal de 1cm
\hspace*{1cm} idem, mais ne disparat jamais
\hspace{\stretch{1}} ressort horizontal de force 1
\hfill ressort horizontal (force 1)
~ espace-mot inscable
\, espace ne (inscable)
\quad espace cadratin
commande effet
\vspace{1cm} espacement vertical de 1cm
\vspace*{1cm} idem, mais ne disparat jamais
\addvspace{1cm} rajoute au plus 1cm despace
\vspace{\stretch{1}} ressort vertical de force 1
\vfill ressort vertical (force 1)
\bigskip grand espace vertical
\medskip espace vertical moyen
\smallskip petit espace vertical
Pour les diffrentes units possibles, voir lentre sur les longueurs page 20.
Filets et rglures
code description
\hrule let horizontal (sur toute la longueur)
\hrulefill ressort consistant dun let horizontal
\vrule let vertical (sur la hauteur disponible)
code description
\rule{1cm}{1pt} rglure de 1cm le long et dune pais-
seur de 1pt :
\rule[5pt]{1cm}{1pt} idem, mais 5pt plus haut :
Effets spciaux
commande rsultat
\rotatebox{30}{texte} t
e
x
t
e
\rotatebox[origin=c]{180}{texte}
t e x t e
\reflectbox{texte} t e x t e
\url{http://www.google.fr} http://www.google.fr
\href{http://www.google.fr}{google} google
\href{mailto:moi@woo.com}{moi@woo.com} moi@woo.com
commande rsultat
\verb"\macro" \macro
\verb|\symbol{"90}| \symbol{"90}
\begin{verbatim}
#~$^_}{&\"| #~$^_}{&\"|
\end{verbatim}
Remarque : les autres possibilits pour origin dans \rotatebox sont l, r, c, t, b et B. Pour prsenter du code informatique, voir page 22
18
Listes puces ou numrotes, descriptions
Types de listes
\begin{itemize}
\itemUn.
\itemDeux.
\item[$\cdot$]Trois.
\end{itemize}
Un.
Deux.
Trois.
\begin{enumerate}
\itemUn.
\itemDeux.
\itemTrois.
\end{enumerate}
1. Un.
2. Deux.
3. Trois.
\begin{description}
\item[primo]Un.
\item[secondo]Deux.
\item[tercio]Trois.
\end{description}
primo Un.
secondo Deux.
tercio Trois.
Paramtres du package enumitem
Une fois le package enumitem charg, les listes prennent toutes un argument optionnel permettant de changer
leur prsentation (pour {itemize}, mettre \frenchbsetup{StandardLists=true} dans le prambule).
\begin{enumerate}[label=\bfseries\alph*.,ref=\alph*.,leftmargin=\parindent]
numrotera (voir page 20 pour les compteurs) les item a., b., c., . . . tandis que lutilisation de \ref donnera
a., b., c., . . . et la marge gauche sera gale la valeur du retrait dalina (\parindent). La police dune
{description} se change via font. Les paramtres de distances possibles sont (\parskip est un paramtre de
distance global qui nest pas spcique aux listes)
Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla.

labelsep
itemindent
Bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla.
listparindent
Bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla.

labelsep
itemindent
Bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla.
Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla.
partopsep (si ligne blanche avant la liste)
topsep+parskip
parsep
itemsep+parsep
topsep+parskip
partopsep (si ligne blanche avant la liste)
leftmargin rightmargin
topsep : espace avant et aprs
partopsep : espace avant si la liste est pr-
cde dune ligne blanche
itemsep : sparation entre les item
parsep : sparation entre les paragraphes
dun item
leftmargin : marge gauche
rightmargin : marge droite
labelsep : distance tiquette/texte
itemindent : indentation du premier pa-
ragraphe dun item
listparindent : indentation des autres
paragraphes dun item
Personnalisation globale des listes avec enumitem
Listes puces. Pour changer tous les {itemize}, utiliser \setitemize[1] (o 1 est la profondeur) :
\frenchbsetup{StandardLists=true}%dsactivelactiondebabel/francais
\setitemize[1]{label=--,partopsep=\parskip,topsep=-\parskip,itemsep=0pt,parsep=0pt}
Listes numrotes. Pour changer tous les {enumerate}, utiliser \setitemize[1] (o 1 est la profondeur) :
\setenumerate[1]{label=\arabic*.}\setenumerate[2]{label=\alph*.,ref=\theenumi.\alph*}
Descriptions. Pour changer toutes les {description}, utiliser \setdescription :
\setdescription{font=\bfseries\sffamily}
Changer makelabel avec enumitem
Ltiquette des listes est imprime laide dune commande appele \makelabel. Celle-ci vaut \hss\llap
{#1} pour {itemize} et {enumerate}, ce qui a pour effet de mettre ltiquette, aussi grande soit-elle, gauche du
texte. Pour {description}, cest \hspace{\labelsep}\normalfont\bfseries#1. Il est possible de changer
\makelabel avec le package enumitem en utilisant la clef before :
\newcommand{\nouveaumakelabel}[1]{#1}
\begin{enumerate}[before=\renewcommand{\makelabel}{\nouveaumakelabel}]
19
Registres de compteurs et de longueurs
Compteurs
commande effet
\newcounter{compte} Dnit le compteur compte
\newcounter{compte}[section] Dnit le compteur compte et le rinitialise chaque
changement de section
\refstepcounter{compte} Incrmente le compteur compte
\setcounter{compte}{6} Met le compteur compte 6
\value{compte} Valeur numrique du compteur
\thecompte Afchage du compteur
\setcounter{compte}{\numexpr\value{compte}+10} Rajoute 10 compte
\renewcommand{\thecompte}{\Roman{compte}} Rgle lafchage du compteur en chiffres I, II, III, . . .
\renewcommand{\thecompte}{\thesection.\arabic{compte}} Rajoute le numro de section devant celui de compte
\numberwithin{equation}{section} Rend le compteur dquation dpendant du compteur
de section
\makeatletter
\@removefromreset{section}{chapter}
\makeatother
Rend le compteur section indpendant de chapter
(ncessite le package remreset)
Formats de compteurs. Voici les afchages disponibles pour les compteurs :
\arabic 1, 2, 3, 4, 5, 6, etc.
\fnsymbol , , , , , , etc.
\Roman I, II, III, IV, V, VI, etc.
\roman i, ii, iii, iv, v, vi, etc.
\Alph A, B, C, D, E, F, etc.
\alph a, b, c, d, e, f, etc.
Pour dnir dautres afchages :
\makeatletter
\newcommand{\astsymbol}[1]{\ensuremath{\ifcase\value{#1}\or{*}\or{*}{*}\or
{*}{*}{*}\or{*}{*}{*}\else\@ctrerr\fi}}
\makeatother
Longueurs
\newlength{\longueur} Cre la dimension \longueur
\setlength{\longueur}{3pt} Met la dimension \longueur 3pt
\addtolength{\longueur}{3pt} Ajoute 3pt la dimension \longueur
\settowidth{\longueur}{texte} Met la dimension \longueur la largeur de texte
\settoheight{\longueur}{texte} Met la dimension \longueur la hauteur de texte
\settodepth{\longueur}{texte} Met la dimension \longueur la profondeur de texte
\setlength{\longueur}{\dimexpr\longueur*12/10} Multiplie la dimension \longueur par 12/10
\the\longueur Valeur de la longueur (en points)
Units de longueur
Units de base
point pt 0,35114 mm
millimtre mm 2,84526 pt
hauteur de x ex * 4,2 5,5 pt
cadratin em * 10 pt
centimtre cm 28,4526 pt
* Ces deux units dpendent de la police courante. Valeurs don-
nes pour une police de 10 pt.
Autres units disponibles
scaled point sp 0,0000153 pt
math unit mu 0,05555 em
big point bp 1,00374 pt
didot point dd 1,07000 pt
pica pc 0,42172 cm
cicero cc 0,45125 cm
inch in 2,54000 cm
20
Index
Cration de lindex
Dans le prambule, rajouter
\usepackage{makeidx}
\makeindex
puis, lendroit o lindex doit apparatre (gnralement la n du document), mettre
\printindex
Point de vue de la compilation, il faut compiler avec latex puis avec makeindex puis une autre fois avec latex.
Sous TeXmaker, cela se fait en appuyant sur F6, F12 puis F6.
Commandes dindexation
Lettres accentues. Mettre \index{etude@tude} pour que le classement soit correct (makeindex prend mal en
charge les accents)
Formatage dune entre. Utiliser \index{Euler,Leonhard@\textsc{Euler},Leonhard} pour mettre Euler
en petites capitales :
Euler, Leonhard, 16
Reclassement dune entre. Utiliser \index{alpha@$\alpha$} pour mettre alpha :
alpes, 43
, 65
alphabet, 78
Sous-entre. Utiliser \index{hypergomtrique!fonction} et \index{hypergomtrique!quation} (en
fait, cause des accents, il faut mieux crire \index{hypergeometrique@hypergomtrique!fonction} et
\index{hypergeometrique@hypergomtrique!quation}) :
hypergomtrique
fonction, 10
quation, 12
Rfrence croise. Utiliser \index{lemmedeSchur|see{Schur}}
lemme de Schur, voir Schur
Indexer une plage de pages. Utiliser \index{mot_a_indexer|(} au dbut et \index{mot_a_indexer|)} la
n.
calcul de (2), 514
Formattage spcial du numro de page. Les commandes \index{constantedEuler|textit} la page 5,
\index{constantedEuler} aux pages 8 et 12 et \index{constantedEuler|textbf} la page 13 don-
neront :
constante dEuler, 5, 8, 12, 13
Bien entendu, il vaut mieux dnir des commandes personnelles pour toutes ces questions de formattage. Par
exemple si 5 dsigne un exemple important dapplication du thorme et 13 sa dmonstration, ce sera plus
pertinent de dnir deux commandes
\newcommand{\indexexempleimportant}[1]{\textit{#1}}
\newcommand{\indexdemotheoreme}[1]{\textbf{#1}}
En suite, en tapant \index{constantedEuler|indexexempleimportant} la page 5, \index{constante
dEuler} aux pages 8 et 12 et \index{constantedEuler|indexdemotheoreme} la page 13, on obtiendra
constante dEuler, 5, 8, 12, 13
Pour prserver les hyperliens dans lindex, il faut lgrement modier les dnitions des commandes prcdentes :
\newcommand{\indexexempleimportant}[1]{\textit{\hyperpage{#1}}}
\newcommand{\indexdemotheoreme}[1]{\textbf{\hyperpage{#1}}}
21
Code informatique avec listings
Conguration de base
\usepackage{listings}%packagelistingsversion1.4
options toujours mettre options de prsentation
\lstset{upquote=true,
columns=flexible,
keepspaces=true,
breaklines,
breakindent=0pt}
\lstset{basicstyle=\ttfamily,
commentstyle=\itshape,
keywordstyle=\bfseries,
language=[LaTeX]TeX,
texcsstyle=*\bfseries}
Commandes de base
Il y a \lstinline"\macro{...}" qui donne \macro{...}. Pour faire plusieurs lignes :
\begin{lstlisting}[language={[LaTeX]TeX}]
...
\end{lstlisting}
Ne jamais crire \begin{lstlisting}%, cela cause des problmes. Pour dnir un environnement de type
{lstlisting}, utiliser
\lstnewenvironment{pascalcode}[1][]
{\lstset{language=pascal,numbers=left,numberstyle=\tiny,#1}}
{}
Liste des languages les plus courants
[LaTeX]TeX
Metapost
Postscript
PSTricks
command.com (Batch)
bash
HTML
XML
PHP
SQL
R
Scilab
MuPad
Matlab
Mathematica
Gnuplot
Python
Ruby
Perl
Lisp
VBScript
Caml
[Objective]Caml
Java
C
C++
Asssembler
Basic
Cobol
Delphi
Fortran
Pascal
Options de prsentation
Voici quelques options de prsentation :
\lstset{xleftmargin=2em,xrightmargin=2em,aboveskip=\topsep,belowskip=\topsep,
frame=single,rulecolor=\color{blue},backgroundcolor=\color{blue!5}}
Pour numroter les lignes, utiliser par exemple
\lstset{numbers=left,numberstyle=\tiny,stepnumber=2,numbersep=5pt}
Nouveaux languages
Voici comment dnir un nouveau language pour BibTeX ( mettre dans le prambule) :
\lstdefinelanguage{BibTeX}
{morekeywords={@BOOK,@ARTICLE,@STRING,@PREAMBLE,@BOOKLET,@CONFERENCE,
@INBOOK,@INCOLLECTION,@INPROCEEDINGS,@MANUAL,@MASTERSTHESIS,
@MISC,@PHDTHESIS,@PROCEEDINGS,@TECHREPORT,@UNPUBLISHED,
AUTHOR,TITLE,PUBLISHER,YEAR,NOTE,JOURNAL,VOLUME,PAGES,NUMBER,
MONTH,SERIES,EDITION,HOWPUBLISHED,ADDRESS,ORGANIZATION,
EDITOR,BOOKTITLE,CHAPTER,INSTITUTION},
sensitive=false,
morestring=[b]",
}
22
Rudiments de programmation
Tests
La commande \ifnum permet de comparer des nombres avec =, < ou >. Voici un exemple :
\renewcommand{\thechapter}{%
\ifnum\value{chapter}=1
premier%
\else
\Roman{chapter}%
\fi
}
valeur afchage
du compteur du compteur
1 premier
2 II
3 III
4 IV
5 V
Pour les dimensions, on dispose de \ifdim.
Macros toiles
Pour faire des variantes toiles dune macro, on utiliser \@ifstar. Par exemple \section pourrait se dnir
avec
\makeatletter
\newcommand{\section}{\@ifstar\section@star\section@nostar}
\newcommand{\section@star}[1]{...}
\newcommand{\section@nostar}[2][]{...}
\makeatother
Calculs
On peut faire des calculs avec \numexpr (sur les nombres) et avec \dimexpr (sur les dimensions). La
syntaxe est \number\numexpr...\relax et \the\dimexpr...\relax (\number et \the ne sont pas toujours
ncessaires). Voici un exemple qui rpte un symbole un certain nombre de fois. Par exemple, \cloner{*}{5}
donne *****.
\newcommand{\cloner}[2]{%
\ifnum#2<1
%
\else
#1\cloner{#1}{\number\numexpr#2-1\relax}%
\fi
}
Voici maintenant une commande qui imprime bla bla un nombre de fois donn en argument optionnel :
\newcommand{\blabla}[1][25]{Bla\auxblabla[\numexpr#1-1\relax].}
\def\auxblabla[#1]{%
\ifnum#1<1\else
\spacebla\auxblabla[\numexpr#1-1\relax]%
\fi
}
Voici pour nir une commande qui calcule la factorielle dun nombre :
\newcommand{\fact}[1]{%
\ifnum#1<2
1%
\else
\number\numexpr#1*\fact{\numexpr#1-1\relax}\relax
\fi
}
23
Trouver de laide sur LaTeX
Recherche sur google sur le message derreur, sur le thme, etc. permet souvent dobtenir de linformation
pertinente, mais ce nest pas toujours la faon la plus efcace de faire.
Documents dapprentissage
Une courte (?) introduction LaTeX (http://ctan.org/pkg/lshort-french)
Framabook LaTeX (http://www.framabook.org/latex.html)
Polycopi du module LM204 (2008-2009) (http://www.math.jussieu.fr/~mpg/lm204/)
Feuilles de TP du module LM204 (2009-2010) (http://www.math.jussieu.fr/~goutet/latex/)
Documents de rfrences
http://mirror.ctan.org/info/latex2e-help-texinfo/latex2e.pdf : liste de la plupart des com-
mandes disponibles sous LaTeX.
http://ctan.org/get/info/symbols/comprehensive/symbols-a4.pdf : liste complte des sym-
boles disponible avec LaTeX.
http://detexify.kirelabs.org/classify.html recherche visuelle des symboles.
http://ctan.org/get/info/math/voss/mathmode/Mathmode.pdf : document qui propose un cer-
tain nombre de solutions des problmes courants rencontr dans la mise en forme dquations.
Documentations des packages
Aller les chercher dans C:\ProgramFiles\MiKTeX2.9\doc\latex ou, en ligne de commande, utiliser
texdocgeometry pour obtenir la documentation de geometry ; sinon, rechercher le nom du package sur
http://ctan.org/search.html#byName.
Forums daide
http://forum.mathematex.net/latex-f6/
http://www.les-mathematiques.net/phorum/list.php?10
http://www.developpez.net/forums/f149/autres-langages/autres-langages/latex/
http://tex.stackexchange.com/ (en anglais)
Foires aux questions (FAQ)
http://www.grappa.univ-lille3.fr/FAQ-LaTeX/
http://www.tex.ac.uk/cgi-bin/texfaq2html (en anglais)
http://ctan.org/get/info/visualFAQ/visualFAQ.pdf (version visuelle de la FAQ anglaise)
Livres
Bitouz & Charpentier, LaTeX, Pearson ducation (27 euros). Un bon livre dintroduction avec exercices
corrigs.
LaTeX pour limpatient, 3
e
dition, H&K (15 euros). Un livre concret avec exercices corrigs ; bien faire
attention de prendre la 3
e
dition qui corrige les erreurs des prcdentes ditions.
LaTeX Companion, Pearson ducation (55 euros) [existe aussi en anglais]. Louvrage de rfrence dcrivant
le fonctionnement de la plupart des packages courants.
Usenet
Cest un endroit frquent par beaucoup de spcialistes ; on peut y accder par les newsgroups ou par google :
http://groups.google.fr/group/fr.comp.text.tex
http://groups.google.fr/group/comp.text.tex (en anglais)
Pour faire une recherche, utiliser http://groups.google.fr/advanced_search? et spcier le groupe (il
arrive que la recherche normale ne donne pas de rsultats exploitables).
24

Centres d'intérêt liés