1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
|
\chapter{Packages chargés (ou pas) par la \yatcl}\label{cha-packages-charges}
\section{Packages chargés par la classe}\label{sec-packages-charges-par}
On a vu \vref{sec-options-passer-aux} que, pour plusieurs de ses
fonctionnalités, la \yatcl s'appuie sur des packages qu'elle charge
automatiquement. Ceux-ci sont répertoriés, selon leur ordre de chargement, dans
la liste suivante qui indique leur fonction et le cas échéant :
\begin{itemize}
\item la ou les options avec lesquelles ils sont chargés ;
\item les options de la \yatcl{} ou leurs commandes propres permettant de les
personnaliser ;
\item ceux qui, dans le cadre d'un usage standard de la \yatcl{}, peuvent être
utiles à l'utilisateur final : leur nom est alors un hyperlien vers la page
qui leur est dédiée sur le \acrshort{ctan}.
\end{itemize}
\begin{description}
\item[\package{pgfopts} :] gestion d'options sous la forme
\meta{clé}|=|\meta{valeur} ;
\item[\package{etoolbox} :] outils de programmation ;
\item[\package{xpatch} :] extension du package précédent ;
\item[\package{morewrites} :] accès à autant de \enquote{flots} d'écriture
(dans des fichiers annexes) que nécessaire ;
\item[\package{filehook} :] \enquote{hameçons} (\foreignquote{english}{hooks})
pour fichiers importés ;
\item[\package{hopatch} :] emballage de \enquote{hameçons} pour packages et
classes ;
\item[\package{xifthen} :] tests conditionnels ;
\item[\package{xkeyval} :] robustification du \Package{keyval} chargé par le
\Package{geometry} ;
\item[\package*{geometry} :] gestion de la géométrie de la page ;
\begin{description}
\item[option par défaut :] \docAuxKey{a4paper} ;
\item[personnalisation :] commande propre \docAuxCommand*{geometry} ;
\end{description}
\item[\package*{graphicx} :] inclusion d'images, notamment des logos ;
\begin{description}
\item[personnalisation :] option \refKey{graphicx} de la \yatcl ;
\end{description}
\item[\package{environ} :] stockage du contenu d'un environnement dans une
macro ;
\item[\package{adjustbox} :] ajustement de la position des matériels
\LaTeX{} ;
\begin{description}
\item[option par défaut :] \docAuxKey{export} ;
\item[personnalisation :] option \refKey{adjustbox} de la \yatcl ;
\end{description}
\item[\package*{array} :] mise en forme automatique de colonnes de tableaux
(notamment) ;
\item[\package{xstring} :] manipulation de chaînes de caractères ;
\item[\package*{textcase} :] amélioration des commandes de changement de
casse ;
\item[\package{translator} :] traduction d'expressions ;
\item[\package{fixltx2e} :] corrections de bogues de \hologo{LaTeX2e} ;
\item[\package*{iftex} :] détection du moteur (\hologo{pdfTeX}, \hologo{XeTeX}
ou \hologo{LuaTeX}) utilisé pour la compilation ;
\item[\package*{epigraph} :] gestion des épigraphes ;
\item[\package*{tcolorbox} :] boîtes élaborées en couleurs et encadrées ;
\begin{description}
\item[librairie chargée par défaut :] \docValue{skins} ;
\item[personnalisation :] commandes propres \docAuxCommand*{tcbuselibrary} et
\docAuxCommand*{tcbset} ;
\end{description}
\item[\package*{marvosym} :] accès à des symboles spéciaux ;
\item[\package*{setspace} :] gestion de l'espace interligne ;
\begin{description}
\item[personnalisation :] option \refKey{setspace} de la \yatcl ;
\end{description}
\item[\package{shorttoc} :] création de sommaire ;
\item[\package{tocvsec2} :] gestion des profondeurs de numérotation des
sections et de la table des matières ;
\item[\package{tocbibind} :] table des matières et index dans la table des
matières ;
\item[\package{nonumonpart} :] suppression des numéros de pages sur les pages
de garde des parties ;
\item[\package*{fncychap} :] têtes de chapitres améliorées ;
\begin{description}
\item[option par défaut :] \docAuxKey{PetersLenny} ;
\item[personnalisation :] option \refKey{fncychap} de la \yatcl ;
\end{description}
\item[\package*{titleps} :] %^^A
% ^^A \changes{v0.99j}{2014/07/18}{Package \package{titleps} remplacé par le
% ^^A \Package{titlesec}}% ^^A
gestion des styles de pages ;
\begin{description}
% ^^A \item[option par défaut :] \docAuxKey{pagestyles} ;
\item[personnalisation :] option \refKey{titleps} de la \yatcl ;
\end{description}
% ^^A \begin{dbwarning}{Package \package{titlesec} : à utiliser avec
% ^^A discernement}{}
% ^^A Le \Package{titlesec} est à utiliser avec discernement car :
% ^^A \begin{itemize}
% ^^A \item sa personnalisation au moyen de l'option \refKey{titlesec}
% ^^A désactive l'effet du \Package{fncychap}
% ^^A (cf. \vref{sec-chapitres-numerotes}) et
% ^^A de l'option \refKey{fncychap} ;
% ^^A \item l'emploi de certaines de ses commandes peut éventuellement
% ^^A conduire à des incompatibilités avec la \yatcl{} ;
% ^^A \end{itemize}
% ^^A\end{dbwarning}
\item[\package*{xcolor} :] gestion des couleurs ;
\begin{description}
\item[personnalisation :] option \refKey{xcolor} de la \yatcl ;
\end{description}
\item[\package{datatool} :] gestion de bases de données (membres du jury,
etc.) ;
\begin{description}
\item[personnalisation :] option \refKey{datatool} de la \yatcl ;
\end{description}
\item[\package{ifdraft} :] test conditionnel du mode brouillon ;
\item[\package*{draftwatermark} :] texte en filigrane\footnote{Chargé seulement
si l'une ou l'autre des valeurs \docValue{draft} ou \docValue{inprogress*}
est passée à la clé \refKey{version}.} ;
\begin{description}
\item[personnalisation :] option \refKey{draftwatermark} de la \yatcl ;
\end{description}
\item[\package*{babel} :] gestion des langues ;
\begin{description}
\item[personnalisation :] option \refKey{babel} de la \yatcl ;
\end{description}
\item[\package{iflang} :] test de la langue en cours ;
\item[\package*{datetime} :] gestion des dates ;
\begin{description}
\item[personnalisation :] option \refKey{datetime} de la \yatcl ;
\end{description}
\item[\package{hypcap} :] liens hypertextes pointant au début des
flottants\ifscreenoutput ;
\begin{description}
\item[option par défaut :] \docValue*{all} ;
\end{description}
\item[\package*{bookmark} :] gestion des signets\ifscreenoutput ;
\begin{description}
\item[personnalisation :] commande propre \docAuxCommand*{bookmarksetup} ;
\end{description}
\item[\package{glossaries-babel} :] traduction d'expressions propres aux
glossaires\footnote{Chargé seulement si le \Package{glossaries} l'est.}.
\end{description}
\begin{dbremark}{Disposer d'une distribution \TeX{} à jour est fortement
recommandé}{packages-anciens}
Si on ne dispose pas de versions suffisamment récentes des packages
automatiquement chargés, des avertissements sont émis car le bon
fonctionnement de la \yatcl{} peut alors être sérieusement altéré, voire être
bloqué par une erreur de compilation \aside*{éventuellement absconse}. Il
est très fortement recommandé de mettre sa distribution \TeX{} à jour et, si
le problème persiste dans le cas de la distribution \enquote{MiK\TeX{}},
d'installer plutôt la distribution \enquote{\TeX~Live} dont les versions (à
jour) à partir de la \enquote{2014} fournissent des packages suffisamment
récents pour la \yatcl.
\end{dbremark}
\section{Packages non chargés par la classe}\label{sec-packages-non-charges}
La liste suivante répertorie des packages non chargés par la \yatcl{} mais
pouvant se révéler très utiles, notamment aux doctorants. Elle est loin d'être
exhaustive et ne mentionne notamment pas les packages nécessaires :
\begin{itemize}
\item \package{inputenc} et \package{fontenc}, si on utilise \hologo{LaTeX} ou
\hologo{pdfLaTeX} ;
\item \package{fontspec} et \package{xunicode}, si on utilise \hologo{XeLaTeX}
ou \hologo{LuaLaTeX}.
\end{itemize}
Elle ne mentionne pas non plus les packages de fontes PostScript tels que
\package{lmodern}, \package*{kpfonts}, \package*{fourier}, \package*{libertine},
etc. \aside*{presque indispensables si on utilise \hologo{LaTeX} ou
\hologo{pdfLaTeX}}. Des exemples de préambules complets figurent
\vref{cha-specimen-canevas}.
En outre, lorsqu'ils sont chargés manuellement par l'utilisateur, certains des
packages suivants se voient fixés par la \yatcl{} des options ou réglages dont
les plus notables sont précisés.
\begin{description}
\item[\package*{booktabs} :] tableaux plus professionnels ;
\item[\package*{siunitx} :] gestion des nombres, angles et unités ;
\begin{description}
\item[option par défaut :]\
\begin{itemize}
\item \docAuxKey{detect-all} ;
\item \docAuxKey{locale}|=|\docValue{FR} ou
\docAuxKey{locale}|=|\docValue{UK}\selonlangue{} ;
\end{itemize}
\end{description}
\item[\package*{pgfplots} :] graphiques plus professionnels,
notamment de données expérimentales ;
\item[\package*{listings} :] insertion de listings informatiques ;
\item[\package*{microtype} :] raffinements typographiques
automatiques (et subliminaux) ;
% ^^A \footnote{Ce package peut poser problème s'il est déjà présent alors qu'une
% ^^A fonte est utilisée pour la première fois. Il est donc à charger plutôt en
% ^^A fin de rédaction, lors de la finition de la mise en page.}
\item[\package*{floatrow} :] gestion puissante (mais complexe) des
flottants ;
\item[\package*{caption} :] personnalisation des légendes ;
\item[\package*{todonotes} :] insertion de
\foreignquote{english}{TODOs}\footnote{Rappels de points qu'il ne
faut pas oublier d'ajouter, de compléter, de réviser, etc.} ;
\item[\package*{varioref} :] références croisées améliorées ;
\item[\package*{imakeidx} ou \package*{index} :] gestion du ou des
index\footnote{Pour la gestion d'index, le \Package{makeidx} est plus courant
mais les packages \package*{imakeidx} et \package*{index}, aux syntaxes très
voisines, l'améliorent et offrent des fonctionnalités supplémentaires,
notamment pour produire des index multiples.} ;
\item[\package*{csquotes} :] pour les citations informelles et formelles (avec
citation des sources) ;
\begin{description}
\item[réglage par défaut] (si le \Package*{biblatex} est chargé) :
|\SetCiteCommand{\autocite}| ;
\end{description}
\item[\package*{biblatex} :] gestion puissante de la bibliographie ;
\item[\package*{hyperref} :] \changes*{v0.99h}{2014/07/14}{Packages
\package{hyperref}, \package{varioref}, \package{index} et
\package{idxlayout}, plus automatiquement chargés par la
\yatcl{}\protect\footnote{Les utilisateurs qui ont l'usage de ces packages
doivent donc désormais les charger manuellement (au moyen de la commande
\protect\docAuxCommand{usepackage}).}.}%^^A
%^^A
liens hypertextes ;
\begin{description}
\item[option par défaut :]\
\begin{itemize}
\item \docAuxKey{final} ;
\item \docAuxKey{unicode} ;
\item \docAuxKey{breaklinks} ;
\item |hyperfootnotes=false| ;
\item |hyperindex=false|\footnote{Sans quoi certaines fonctionnalités sont
ignorées, par exemple \protect\lstinline+see+ pour les index.} ;
\item |plainpages=false| ;
\item |pdfpagemode=UseOutlines| ;
\item |pdfpagelayout=TwoPageRight| ;
\end{itemize}
\end{description}
\item[\package*{glossaries} :] gestion puissante des glossaires,
acronymes et liste de symboles ;
\item[\package*{cleveref} :] gestion puissante des références croisées.
\end{description}
%
\iffalse
%%% Local Variables:
%%% mode: latex
%%% eval: (latex-mode)
%%% ispell-local-dictionary: "fr_FR"
%%% TeX-engine: xetex
%%% TeX-master: "../yathesis.dtx"
%%% End:
\fi
|