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
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
|
\chapter{Personnalisation}\label{cha-configuration}
% Cette section passe en revue les outils de personnalisation propres ou pas à la
% \yatCl{} :
% \begin{enumerate}
% \item options de classe ;
% \item options de préambule ;
% \item commandes (et options de commandes) de la \yatCl{};
% \item packages chargés par la \yatCl{} ;
% \item packages chargés manuellement.
% \end{enumerate}
\section{Options de classe}\label{options-classe}
\index{option!de \yatcl{}|(}
Les \meta{options} de classe de la \yatCl{} sont à passer selon la syntaxe
usuelle :
\begin{preamblecode}
\documentclass["\meta{options}"]{yathesis}
\end{preamblecode}
% Tester et documenter la commande |\yasetup|.
% La \yatCl{} accepte, en sus des options qui lui sont propres, celles de la
% \Class{book} sur laquelle est elle basée.
\subsection{Options de la classe \textsf{book}}\label{sec-options-usuelles-de}
\index{option!de la \Class{book}}
Parmi les \meta{options} de \yatcl{} figurent celles de la \Class{book},
notamment :
\begin{itemize}
\item\index{taille des caractères}%
\docAuxKey{10pt} (défaut), \docAuxKey{11pt}, \docAuxKey{12pt}, pour fixer
la taille de base des caractères ;
\item éventuellement :
\begin{itemize}
\item\index{équation!numéro à gauche}%
\docAuxKey{leqno} pour afficher les numéros d'équations à gauche ;
\item\index{équation!alignement à gauche}%
\docAuxKey{fleqn} pour que les équations hors texte soient toutes
alignées à gauche avec un même retrait d'alinéa ;
\item%
\index{pagination}%
\indexsee{recto}{pagination}%
\indexsee{verso}{pagination}%
\docAuxKey{oneside} pour une \gls{pagination} en recto
seulement\footnote{Les chapitres commencent alors indifféremment sur une
page paire ou impaire\index{page!paire/impaire} (c'est-à-dire sur une page
de gauche ou de droite\index{page!gauche/droite}).}.
\end{itemize}
\end{itemize}
\begin{dbwarning}{Options usuelles de la \Class{book} : à utiliser avec
discernement}{}
Dans le cadre d'un usage de la \yatCl{}, il est \emph{fortement} déconseillé de
recourir à d'autres options usuelles de la \Class{book} que celles
ci-dessus : cela risquerait de produire des résultats non souhaités.
\end{dbwarning}
% \subsection{Options de la \yatCl{}}\label{sec-options-yatCl{}}
%
% Les \meta{options} discutées dans cette section, propres à la \yatCl{},
% permettent de contrôler les grandes lignes du document.
\subsection{Langues (principale, secondaire, supplémentaires)}
\label{sec-langues}%
\index{langue}%
\index{langue!principale}%
\index{langue!secondaire}%
\indexsee{français}{langue}%
\indexsee{anglais}{langue}%
Par défaut, un mémoire créé avec la \yatCl{} est composé :
\begin{itemize}
\item en français comme langue principale;
\item en anglais comme langue secondaire\footnote{Utilisée ponctuellement pour
des éléments supplémentaires tels qu'une page de titre, un résumé ou des
mots clés.}.
\end{itemize}
%
\begin{docKey}{mainlanguage}{=\docValue{french}\textbar\docValue{english}}{pas
de valeur par défaut, initialement \docValue{french}}
\indexdef{langue!principale}%
\indexdef{langue!secondaire}%
Pour que la langue principale \aside{et activée par défaut} soit l'anglais, il
suffit de le stipuler au moyen de l'option |mainlanguage=english|. Le français
devient alors automatiquement la langue secondaire.
\end{docKey}
\begin{dbwarning}{Langues principales et secondaires prises en charge}{}
Les seules langues \emph{principale} et \emph{secondaire} prises en charge
par la \yatCl{} sont le français (\docValue{french}) et l'anglais
(\docValue{english}).
\end{dbwarning}
\begin{dbremark}{Langues supplémentaires}{languessupplementaires}
\index{langue!supplémentaire}%
Il est cependant possible de faire usage de langues \emph{supplémentaires},
autres que le français et l'anglais, en les stipulant en option de
\docAuxCommand{documentclass}\footnote{Ces langues doivent être supportées par
le \Package{babel}.} et en les employant selon la syntaxe du
\Package*{babel}.
\end{dbremark}
\begin{dbexample}{Langue supplémentaire pour thèse
multilingue principalement en français}{}
\indexex{langue!supplémentaire}%
Pour composer un mémoire ayant pour langue principale le français et
supplémentaire l'espagnol \aside{cas par exemple d'une thèse en linguistique
espagnole}, il suffit de passer l'option suivante à la \yatCl{}.
\begin{preamblecode}
\documentclass[spanish]{yathesis}
\end{preamblecode}
\end{dbexample}
\begin{dbexample}{Langue supplémentaire pour thèse
multilingue principalement en anglais}{}
\indexex{langue!principale}%
\indexex{langue!secondaire}%
\indexex{langue!supplémentaire}%
Pour composer un mémoire ayant pour langue principale l'anglais (donc
secondaire le français) et supplémentaire l'espagnol \aside{cas par exemple
d'une thèse en linguistique espagnole}, il suffit de passer les options
suivantes à la \yatCl{}.
\begin{preamblecode}
\documentclass[mainlanguage=english,spanish]{yathesis}
\end{preamblecode}
\end{dbexample}
\subsection{Tables des matières locales automatiques}
\label{sec-localtoc}%
\index{table des matières!locale}%
\subsubsection{Génération}
\label{sec:generation}
\changes{v0.99o}{2016-10-30}{Nouvelle option de classe \protect\refKey{localtocs}
permettant de faire automatiquement débuter les chapitres par leurs \gls{tdml}}%
\changes*{v1.0.6}{2021-03-23}{La correction du bug
\href{https://github.com/dbitouze/yathesis/issues/81}{81} a nécessité de
remplacer une section non numérotée par une émulation de
celle-ci}
\begin{docKey}[][doc new=2016-10-30]{localtocs}{}{par défaut \docValue{true},
initialement \docValue{false}}
\indexdef{table des matières!locale}%
Cette clé fait automatiquement débuter les chapitres de la partie
principale\footnote{C'est-à-dire entre \refCom{mainmatter} et
\refCom{backmatter}.} par leurs \gls{tdml}.
\end{docKey}
Ces \gls{tdml} sont introduites par une (émulation de) section
non numérotée, intitulée \translateexpression{localtocname}.
\subsubsection{Profondeur}
\label{sec:profondeur}
Par défaut, les \gls{tdml} générées grâce à la clé
\refKey{localtocs} ont comme \enquote{niveau de profondeur} les
sous-sections\footnote{Ce niveau est donc par défaut identique à celui des
\hyperref[sec-table-des-matieres]{tables des matières
\enquote{globales}}.}. Il est possible d'en spécifier un autre grâce à la
clé \refKey{localtocs/depth}.
{%
\tcbset{before lower=\vspace*{.5\baselineskip}\par}
\begin{docKey}[][doc
new=2016-10-30]{localtocs/depth}{=\docValue{section}\textbar\docValue{subsection}\textbar\docValue{subsubsection}\textbar\docValue{paragraph}\textbar\docValue{subparagraph}}{par
défaut \docValue{subsection}, pas de valeur initiale}
\index{table des matières!locale!profondeur}%
\index{profondeur!table des matières!locale}%
Cette clé :
\begin{enumerate}
\item actionne la clé \refKey{localtocs} ;
\item modifie le \enquote{niveau de profondeur} des \gls{tdml},
respectivement jusqu'aux : sections, sous-sections, sous-sous-sections,
paragraphes, sous-paragraphes\footnote{La clé \refKey{localtocs/depth} ne
peut pas prendre comme valeurs \docValue{part} ou \docValue{chapter}
puisque les \gls{tdm} \emph{locales aux chapitres} ne peuvent
être de \enquote{niveau de profondeur} \emph{supérieur ou égal} aux
chapitres.}.
\end{enumerate}
\end{docKey}
}
\begin{dbexample}{\gls{tdml} automatiques}{}
\indexex{table des matières!locale}%
Pour que chaque chapitre de la partie principale du mémoire débute
automatiquement par sa \gls{tdml}, il suffit de passer l'option suivante à la
\yatCl{}.
\begin{preamblecode}
\documentclass[localtocs]{yathesis}
\end{preamblecode}
Dans l'exemple précédent (illustré \vref{fig-introduction}), les \gls{tdml}
vont jusqu'aux sous-sections. Pour qu'elles aillent par exemple jusqu'aux
sous-sous-sections, on recourra à :
\begin{preamblecode}
\documentclass[localtocs/depth=subsubsection]{yathesis}
\end{preamblecode}
\end{dbexample}
La \yatCl{} fournit aussi des commandes permettant d'activer ou de désactiver
semi-globalement ou localement l'insertion automatique de \gls{tdml} et ce,
indépendamment du recours à l'option \refKey{localtocs}.
\begin{docCommand}[doc new=2016-10-30]{startlocaltocs}{}
\index{table des matières!locale}%
Cette commande est une bascule \emph{activant} jusqu'à nouvel ordre
l'insertion automatique de \gls{tdml}.
\end{docCommand}
\begin{docCommand}[doc new=2016-10-30]{stoplocaltocs}{}
\index{table des matières!locale}%
Cette commande est une bascule \emph{désactivant} jusqu'à nouvel ordre
l'insertion automatique de \gls{tdml}.
\end{docCommand}
\begin{docCommand}[doc new=2016-10-30]{nextwithlocaltoc}{}
\index{table des matières!locale}%
Cette commande \emph{active}, pour le \emph{chapitre suivant seulement},
l'insertion automatique de \gls{tdml}.
\end{docCommand}
\begin{docCommand}[doc new=2016-10-30]{nextwithoutlocaltoc}{}
\index{table des matières!locale}%
Cette commande \emph{désactive}, pour le \emph{chapitre suivant seulement},
l'insertion automatique de \gls{tdml}.
\end{docCommand}
\subsubsection{Texte introductif}
\label{sec:texte-introductif}
\changes{v1.0.6}{2021-03-23}{Nouvelle commande \protect\refCom{leadchapter}
permettant, pour chaque chapitre, de spécifier un texte inséré entre sa tête
et son éventuelle \gls{tdml} automatique.}%
Les chapitres voient leurs têtes automatiquement et immédiatement suivies par
leur éventuelle \gls{tdml}. La commande \refCom{leadchapter} suivante offre la
possibilité d'insérer entre les deux un texte introductif\footnote{À voir comme
une sorte de
\href{https://fr.wikipedia.org/wiki/Chapeau_(presse)}{\enquote{chapeau}} de chapitre.}.
\begin{docCommand}[doc new=2021-03-23]{leadchapter}{\marg{texte}}
% \indexsee{chapeau}{texte introductif}%
\index{table des matières!locale!texte introductif}%
Cette commande permet, pour chaque chapitre, de spécifier un \meta{texte}
(introductif) inséré (automatiquement) entre sa tête et son éventuelle
\gls{tdml} automatique.
\end{docCommand}
\begin{dbwarning}{Commande \protect\refCom*{leadchapter} à insérer (juste)
avant le chapitre souhaité}{}
La commande \refCom{leadchapter} peut être employée autant de fois que
souhaité. Chacune de ses occurrences doit être insérée (de préférence juste)
avant le chapitre souhaité.
\end{dbwarning}
\subsection{Bibliographies locales automatiques}
\label{sec-localbibs}%
\index{bibliographie!locale}%
%
\changes{v0.99o}{2016-10-30}{Nouvelle option de classe
\protect\refKey{localbibs} permettant de faire automatiquement finir les
chapitres par leurs bibliographies locales}%
\begin{docKey}[][doc new=2016-10-30]{localbibs}{}{par défaut \docValue{true},
initialement \docValue{false}}
\indexdef{bibliographie!locale}%
Cette clé fait automatiquement finir les chapitres (contenant au moins une
référence bibliographique) par leurs bibliographies locales\footnote{Pour
éviter de pénibles occurrences multiples d'un avertissement inutile dans ce
cas (à la fois bibliographies par chapitres et bibliographie globale), la
commande \docAuxCommand*{BiblatexSplitbibDefernumbersWarningOff} (liée
à l'option \docAuxKey*{defernumbers}, cf. ci-après) est alors
automatiquement insérée.}.
\end{docKey}
\begin{docKey}[][doc new=2016-10-30]{localbibs*}{}{par défaut \docValue{true},
initialement \docValue{false}}
\indexdef{bibliographie!locale}%
Cette clé a le même effet que \refKey{localbibs} sauf que l'option
\docAuxKey{defernumbers} du \Package*{biblatex} est alors
activée\footnote{\label{defernumbers}Cf. la documentation de
\package*{biblatex} pour plus de détails sur l'option
\docAuxKey*{defernumbers}, et éventuellement des discussions sur ses
avantages et inconvénients
à \url{https://tex.stackexchange.com/q/332431/18401} et
à \url{https://github.com/plk/biblatex/issues/493}.}.
\end{docKey}
\begin{dbwarning}{Package \package*{biblatex} nécessaire pour les bibliographies
locales}{}
Cette fonctionnalité d'ajout automatique des bibliographies locales en fin de
chapitres repose sur le \Package{biblatex} (cf. \vref{sec-refer-bibl}) :
\begin{itemize}
\item donc nécessite, pour la bibliographie de la thèse, le recours à ce
package \alert{à l'exclusion de tout autre outil de production de
bibliographie} (notamment \hologo{BibTeX}) ;
\item notamment sur sa notion de segments de bibliographies et plus
particulièrement sur l'option |refsegment=chapter| qui devra être prise
compte si d'autres segments sont souhaités.
\end{itemize}
\end{dbwarning}
\changes*{v1.0.8}{2021-07-13}{Commande \docAuxCommand{includeonly} inopérante en
cas de bibliographies locales}%
\begin{dbwarning}{\docAuxCommand{includeonly} inopérante en cas de
bibliographies locales}{}
Pour des raisons techniques, la commande \docAuxCommand{includeonly} est
inopérante lorsque l'option \refKey{localbibs} est utilisée. Le seul moyen de
temporairement ne compiler que certains fichiers inclus est alors de
temporairement commenter l'inclusion des autres.
\end{dbwarning}
\begin{dbexample}{Bibliographies locales automatiques}{}
\indexex{bibliographie!locale}%
Pour que chaque chapitre finisse automatiquement par sa bibliographie locale
il suffit de passer l'option suivante à la \yatCl{}.
\begin{preamblecode}
\documentclass[localbibs]{yathesis}
\end{preamblecode}
\end{dbexample}
Les bibliographies locales sont introduites par une section (non numérotée)
intitulée \translateexpression{localbibname}.
La \vref{fig-localbib} illustre cette fonctionnalité.
\begin{figure}[htbp]
\centering
\screenshot{localbib}
\caption{Bibliographie locale}
\label{fig-localbib}
\end{figure}
\subsection{Versions du mémoire}\label{sec-versions}
\index{version du mémoire}%
Au moyen de la clé \refKey{version}, la \yatCl{} permet de facilement produire
différentes versions du document : \enquote{intermédiaire} (par défaut),
\enquote{à soumettre}, \enquote{finale} et \enquote{brouillon}.
{\tcbset{before lower=\vspace*{.5\baselineskip}\par}
\begin{docKey}{version}{=\docValue{inprogress}\textbar\docValue{inprogress*}\textbar\docValue{submitted}\textbar\docValue{submitted*}\textbar\docValue{final}\textbar\docValue{draft}}{pas
de valeur par défaut, initialement \docValue{inprogress}}
\indexdef{version du mémoire}%
Cette clé permet, au moyen des valeurs suivantes, de spécifier la version du
document à produire.
\begin{description}
\item[\docValue{inprogress}.]%
\indexdef{version du mémoire!intermédiaire}%
Cette valeur produit une version
\enquote{intermédiaire} du document\footnote{Une telle version est
éventuellement destinée à être diffusée à des relecteurs.}. Ses
caractéristiques sont les suivantes.
\begin{enumerate}
\item\label{item:inprogress:1} Pour indiquer clairement qu'il s'agit d'une
version \enquote{intermédiaire}, (presque) tous les pieds de
page\index{pied de page} contiennent en petites capitales la mention
\translateexpression{inprogressfoottext}.
\item\label{item:inprogress:2} Aucun élément \enquote{obligatoire}
(cf. \vref{sec-comm-oblig}) manquant n'est signalé.
\end{enumerate}
\item[\docValue{inprogress*}.]%
\indexdef{version du mémoire!intermédiaire}%
Cette valeur produit le même effet que la valeur \docValue{inprogress}
sauf que le caractère non définitif de la version est renforcé par la
mention \translateexpression{inprogress}, figurant en
filigrane\index{filigrane} et en capitales sur toutes les pages.
\item[\docValue{submitted}.]%
\indexdef{version du mémoire!soumise aux rapporteurs}%
Cette valeur produit une version du document
destinée à être \enquote{soumise} aux rapporteurs. \emph{Contrairement à}
la version par défaut :
\begin{enumerate}
\item l'affichage en pied de page\index{pied de page} de la mention
\enquote{Version intermédiaire en date du \meta{date du jour}} ou
\foreignquote{english}{Work in progress as of \meta{date du jour}} est
désactivé ;
\item \changes*{v0.99f}{2014-07-11}{En versions \enquote{à soumettre},
date de soutenance et composition du jury absentes des pages de titre
(et non obligatoires)}%
%
sur les pages de titre, la composition du jury est masquée et la date de
soutenance est supprimée\footnote{En versions soumises aux rapporteurs,
le doctorant ne peut préjuger ni d'un jury ni d'une date de
soutenance, ne sachant pas encore s'il va être autorisé à soutenir.} ;
\item tout élément \enquote{obligatoire} (cf. \vref{sec-comm-oblig})
manquant est signalé par une erreur de compilation\footnote{La date de
soutenance est normalement \enquote{obligatoire}, sauf dans les
versions soumises aux rapporteurs où elle ne figure nulle part.}.
\end{enumerate}
\item[\docValue{submitted*}.] %
\indexdef{version du mémoire!soumise aux rapporteurs}%
%
Cette valeur produit le même effet que la valeur \docValue{submitted} sauf
que le caractère \enquote{à soumettre} de la version est renforcé par
l'affichage, sur (presque) tous les pieds de pages\index{pied de page} et
en petites capitales, de la mention \enquote{Version soumise en date du
\meta{date}} ou \translateexpression{submittedfoottext}. Ici, la
\meta{date} est par défaut celle du jour, mais il est possible d'en
spécifier une autre au moyen de la commande \refCom{submissiondate}.
\item[\docValue{final}.]
\indexdef{version du mémoire!finale}%
Cette valeur produit une version \enquote{finale}
du document. \emph{Contrairement à} la version par défaut :
\begin{enumerate}
\item l'affichage en pied de page\index{pied de page} de la mention
\enquote{Version intermédiaire en date du \meta{date du jour}} ou
\foreignquote{english}{Work in progress as of \meta{date du jour}} est
désactivé ;
\item si un élément \enquote{obligatoire} (cf. \vref{sec-comm-oblig})
manque, une erreur de compilation signale l'omission.
\end{enumerate}
\item[\docValue{draft}.]
\indexdef{version du mémoire!brouillon}%
Cette valeur produit une version
\enquote{brouillon} du document\footnote{Une telle version est \emph{a
priori} à usage exclusif de l'utilisateur et n'est en particulier pas
destinée à être diffusée.}. Ses caractéristiques sont les suivantes :
\begin{itemize}
\item \emph{comme} la version par défaut, si un élément
\enquote{obligatoire} (cf. \vref{sec-comm-oblig}) manque, aucune erreur
de compilation ne signale l'omission ;
\item \emph{contrairement à} la version par défaut, la mention
\enquote{Version intermédiaire en date du \meta{date du jour}} ou
\foreignquote{english}{Work in progress as of \meta{date du jour}} ne
figure pas ;
\item \emph{en plus de} la version par défaut :
\begin{enumerate}
\item Les différentes zones de la page, notamment celle allouée au
texte, sont matérialisées et les dépassements de marges sont signalés
par une barre verticale noire dans la marge.
\item La mention \translateexpression{draft} figure en
filigrane\index{filigrane} (et en capitales) sur toutes les pages du
document.
\item Sur certaines pages, notamment celles de titre :
\begin{enumerate}
\item les données caractéristiques de la thèse\footnote{Auteur,
(sous-)titre, institut(s), directeurs, rapporteurs, examinateurs,
etc.} sont des hyperliens vers le fichier de configuration de la
thèse\footnote{Cf. \vref{sec-lieu-de-saisie}.} où il est possible de
les (re)définir (cf. \vref{sec-expressions-cles});
\item\label{item-expression} les expressions fournies par la
\yatCl{}\footnote{\enquote{Thèse présentée par},
\foreignquote{english}{In order to become Doctor from},
\foreignquote{english}{draft}, \enquote{Version intermédiaire en
date du}, etc. insérées de façon automatique sur certaines pages
du mémoire.} sont :
\begin{itemize}
\item estampillées du label qui les identifie;
\item des hyperliens vers le fichier de configuration de la thèse
(cf. \vref{rq-configurationfile}) où il est possible de les
(re)définir (cf. \vref{sec-expressions-cles}).
\end{itemize}
\end{enumerate}
Si le système d'exploitation est correctement configuré, un simple
clic sur ces hyperliens ouvre le fichier correspondant dans l'éditeur
de texte \LaTeX{} par défaut.
\end{enumerate}
\end{itemize}
\end{description}
\end{docKey}
}
Les versions \enquote{à soumettre} et \enquote{finale} d'un mémoire de thèse ne
sont à produire qu'exceptionnellement, en toute fin de rédaction. De ce fait :
\begin{dbwarning}{Par défaut, documents en version intermédiaire}{}
Un document composé avec la \yatCl{} est par défaut en version
\emph{intermédiaire}. Autrement dit, la clé \refKey{version} a pour valeur
initiale \docValue*{inprogress}.
\end{dbwarning}
\subsection{Formats de sortie}
\label{sec-formats-de-sortie}
\index{format du mémoire}%
Les documents composés avec la \yatCl{} peuvent avoir deux formats de sortie :
\enquote{écran} (par défaut) et \enquote{papier}, stipulés au moyen de la clé
\refKey{output}.
\begin{docKey}{output}{=\docValue{screen}\textbar\docValue{paper}\textbar\docValue{paper*}}{pas
de valeur par défaut, initialement \docValue{screen}}
\indexdef{format du mémoire}%
Cette clé permet, au moyen des valeurs suivantes, de spécifier le format de
sortie du document.
\begin{description}
\item[\docValue{screen}.]%
\indexdef{format du mémoire!écran}%
Avec cette valeur, le document a un format de sortie destiné à être
visualisé à l'écran. Ce format ne présente pas de spécificités
particulières.
\item[\docValue{paper}.]%
\indexdef{format du mémoire!papier}%
Avec cette valeur, le document a un format de sortie
destiné à être imprimé sur papier. Les différences par rapport au format
\enquote{écran} sont les suivantes :
\begin{enumerate}
\item%
\index{lien hypertexte}%
si le \Package{hyperref} est chargé par l'utilisateur,
\begin{enumerate}
\item\label{item-paper-1}%
sa commande |\href{|\meta{\normalfont\ttfamily\glsxtrshort*{url}}|}{|\meta{texte}|}| est
automatiquement remplacée par :
\lstset{deletekeywords={url},deletekeywords={[2]url}}%
\begin{itemize}
\item
\meta{texte}\lstinline+\footnote{\url{+\meta{\normalfont\ttfamily\glsxtrshort*{url}}|}}|
%
si elle figure dans le texte ordinaire ;
\item \meta{texte}
\lstinline+(\url{+\meta{\normalfont\ttfamily\glsxtrshort*{url}}|})|
si elle figure en note de bas de page ;
\end{itemize}
\item les liens hypertextes sont systématiquement matérialisés comme le
fait par défaut le \Package{hyperref}, c'est-à-dire par des cadres
rectangulaires de couleurs (qui ne figurent pas sur le document
papier). Ainsi, si l'utilisateur recourt à la commande
|\hypersetup{colorlinks=true}| pour que, en sortie \enquote{écran}, les
hyperliens soient composés en couleur et non pas encadrés, il n'a pas
besoin de modifier ce choix pour que, en sortie \enquote{papier}, cette
coloration soit désactivée ;
\end{enumerate}
\item%
\label{item-paper-2}%
les barres de navigation affichées par certains styles de
glossaires\footnote{Telles qu'on peut en voir
\vref{fig-printacronyms,fig-printglossary}.} \emph{sont} masquées.
\end{enumerate}
\item[\docValue{paper*}.]%
\indexdef{format du mémoire!papier}%
Cette valeur produit le même effet que la valeur \docValue{paper} sauf que
son \vref{item-paper-2} est inversé : les barres de navigation \emph{ne}
sont \emph{pas} masquées.
\end{description}
\end{docKey}
\begin{dbwarning}{Mises en page éventuellement différentes en formats
\enquote{écran} et \enquote{papier}}{}
Du fait des \cref{item-paper-1,item-paper-2} précédents, les mises en page des
formats \enquote{écran} et \enquote{papier} peuvent être différentes, et il
pourra être opportun de les comparer, par exemple à l'aide d'un logiciel
comparateur de fichiers \glsxtrshort{pdf}. Si on souhaite que les sorties
\enquote{écran} et \enquote{papier} soient absolument identiques, il suffit
d'imprimer la première ; mais il faut avoir conscience du fait que, dans ce
cas, si le mémoire contient des références vers des \glsxtrshort{url} (par
exemple fournies par
|\href{|\meta{\normalfont\ttfamily\glsxtrshort*{url}}|}{|\meta{texte}|}|), leurs
cibles ne figureront nulle part en sortie \enquote{papier}.
\end{dbwarning}
\subsection{Profondeur de la numérotation}\label{sec-profondeur-de-la}
\index{profondeur!numérotation des unités}%
\index{numérotation!des unités!profondeur}%
Par défaut, la numérotation des unités a pour \enquote{niveau de
profondeur} les sous-sections. Autrement dit, seuls les titres des parties
(éventuelles), chapitres, sections et sous-sections sont numérotés. L'option
\refKey{secnumdepth} suivante permet de spécifier un autre niveau de
profondeur.
%
{%
\tcbset{before lower=\vspace*{.5\baselineskip}\par}
\begin{docKey}{secnumdepth}{=\docValue{part}\textbar\docValue{chapter}\textbar\docValue{section}\textbar\docValue{subsection}\textbar\docValue{subsubsection}\textbar\docValue{paragraph}\textbar\docValue{subparagraph}}{pas
de valeur par défaut, initialement \docValue{subsection}}
\indexdef{profondeur!numérotation des unités}%
\indexdef{numérotation!des unités!profondeur}%
Cette clé permet de modifier le \enquote{niveau de profondeur} de la
numérotation des unités jusqu'aux, respectivement : parties,
chapitres, sections, sous-sections, sous-sous-sections, paragraphes,
sous-paragraphes.
\end{docKey}
}
\subsection{Espace interligne}\label{sec-interligne}
\index{espace!interligne}%
L'interligne du document est par défaut \enquote{simple} mais, au moyen de
l'option \refKey{space} suivante, il est possible de spécifier un interligne
\enquote{un et demi} ou \enquote{double}.
\begin{docKey}{space}{=\docValue{single}\textbar\docValue{onehalf}\textbar\docValue{double}}{pas de valeur par défaut,
initialement \docValue{single}}
\indexdef{espace!interligne}%
Cette clé permet de spécifier un interligne \docValue{single} (simple),
\docValue{onehalf} (un et demi) ou \docValue{double} (double).
\end{docKey}
\begin{dbwarning}{Option d'interligne : seulement dans la partie
principale}{space-setspace}
Contrairement à l'option \refKey{setspace} qui a un effet (semi-)global et
prend effet dès le début du document, l'option \refKey{space} ne prend effet
qu'à la partie principale du document (cf. \vref{cha-corps}) et se termine
avec elle, avant la partie annexe (cf. \vref{cha-annexes}).
\end{dbwarning}
Si on souhaite changer d'interligne ailleurs dans le mémoire, on recourra aux
commandes du \Package*{setspace} \aside*{chargé par la \yatCl{}}.
\subsection{Style des têtes de chapitres}\label{sec-style-des-tetes}
Pour gérer les têtes de chapitres, la \yatCl{} s'appuie sur le
\Package*{fncychap}, par défaut chargé avec le style \docValue{PetersLenny}. La
clé \refKey{fncychap} suivante permet de spécifier un autre style de ce
package\footnote{Par souci de compatibilité ascendante, la clé désormais
obsolète \docAuxKey{chap-style} est un alias de la clé
\refKey{fncychap}.}.%
%
{%
\tcbset{before lower=\vspace*{.5\baselineskip}\par}
\begin{docKey}{fncychap}{=\docValue{Sonny}\textbar\docValue{Lenny}\textbar\docValue{Glenn}\textbar\docValue{Conny}\textbar\docValue{Rejne}\textbar\docValue{Bjarne}\textbar\docValue{PetersLenny}\textbar\docValue{Bjornstrup}\textbar\docValue{none}}{pas
de valeur par défaut, initialement \docValue{PetersLenny}}
\index{chapitre!style de tête}%
\index{style!de tête de chapitre}%
\changes{v0.99g}{2014-07-13}{Clé \protect\refAux{chap-style} remplacée par
(et alias de) la clé \protect\refKey{fncychap}}%
%
Cette clé permet de spécifier un autre style du \Package{fncychap}.
Le \enquote{style} supplémentaire \docValue{none} permet de désactiver le
chargement de \package{fncychap} pour retrouver comme style des têtes de
chapitres celui usuel de la \Class{book}.
\end{docKey}
}
\subsection{Colophon}
\label{sec-coloplhon}
\index{colophon}%
\indexsee{achevé d'imprimer}{colophon}%
De manière générale, un colophon (ou achevé d'imprimer) est une note indiquant
le plus souvent le titre de l'œuvre, son auteur, l'imprimeur et la date
d'impression. Figurant autrefois à la fin d'un imprimé, il se trouve désormais
souvent au début.
\changes{v1.0.0}{2020-03-26}{Désormais, colophon automatiquement ajouté au
mémoire.}%
%
La \yatCl{} insère automatiquement un colophon tel que celui de la
\vref{fig-colophon}.
\begin{figure}[htbp]
\centering
\screenshot{colophon}%
\caption{Colophon}
\label{fig-colophon}
\end{figure}
Par défaut, ce colophon se trouve en 2\ieme{} de couverture, est intitulé
\enquote{Colophon} et a pour contenu une phrase semblable à\selonlangue{} :
\begin{displayquote}
Mémoire de thèse intitulé \frquote{\meta{titre}}, écrit par \meta{auteur},
achevé le \meta{date du jour de la compilation}, composé au moyen du système
de préparation de document \LaTeX{} et de la \yatCl{} dédiée aux thèses
préparées en France.
\end{displayquote}
ou :
\begin{foreigndisplayquote}{english}
Doctoral dissertation entitled “\meta{titre}”, written by \meta{auteur},
completed on \meta{date du jour de la compilation}, typeset with the document
preparation system \LaTeX{} and the \yatCl{} dedicated to theses prepared in
France.
\end{foreigndisplayquote}
où le \meta{titre} et l'\meta{auteur} sont ceux définis par les commandes
\refCom{title} et \refCom{author}.
Ce colophon peut être personnalisé au moyen de l'option
\refKey{colophon-location} et de la commande \refCom{colophontext} suivantes.
{\tcbset{before lower=\vspace*{.5\baselineskip}\par}
\begin{docKey}[][doc
new=2020-03-26]{colophon-location}{=\docValue{verso-frontcover}\textbar\docValue{recto-backcover}\textbar\docValue{nowhere}}{pas
de valeur par défaut, initialement \docValue{verso-frontcover}}
%
\changes{v1.0.0}{2020-03-26}{Nouvelle option de classe
\protect\refKey{colophon-location} permettant de modifier l'emplacement par
défaut (en 2\ieme{} de couverture) du colophon ou de le
supprimer\protect\footnote{Pour retrouver le comportement antérieur (pas
de colophon), il suffit de spécifier \protect\lstinline|colophon-location=nowhere|.}.}%
%
Cette clé permet, au moyen des valeurs suivantes, de spécifier l'emplacement
du colophon dans le mémoire.
\begin{description}
\indexdef{colophon!emplacement}%
\item[\docValue{verso-frontcover}.]%
\indexdef{colophon!emplacement!2\ieme{} de couverture}%
Avec cette valeur, le colophon apparaît en 2\ieme{} de couverture,
c'est-à-dire au dos :
\begin{itemize}
\item soit de la 1\iere{} de couverture ;
\item soit de la (1\iere{}) page de titre (en l'absence de 1\iere{} de
couverture, cf. \refKey{nofrontcover}).
\end{itemize}
\item[\docValue{recto-backcover}.]%
\indexdef{colophon!emplacement!3\ieme{} de couverture}%
Avec cette valeur, le colophon apparaît en 3\ieme{} de couverture (sous
réserve de 4\ieme{} de couverture, cf. \refCom{makebackcover}).
\item[\docValue{nowhere}.]%
\indexdef{colophon!suppression}%
Avec cette valeur, le colophon ne figure nulle part dans le mémoire.
\end{description}
\end{docKey}
}
\begin{docCommand}[doc new=2020-03-26]{colophontext}{\marg{texte}}
\index{colophon!modification du texte}%
\changes{v1.0.0}{2020-03-26}{Nouvelle commande \protect\refCom{colophontext}
permettant de modifier le texte par défaut du colophon.}%
%
Cette commande permet de redéfinir le \meta{texte} par défaut du colophon.
\end{docCommand}
La \yatCl{} s'appuie sur le \Package{colophon} pour composer le colophon. De ce
fait, ce dernier peut être davantage personnalisé au moyen des commandes de ce
package.
\begin{dbwarning}{Commandes du \Package{colophon} : à utiliser avec
discernement}{}
Dans le cadre d’un usage de la \yatCl{}, il est fortement déconseillé de
recourir aux commandes \docAuxCommand{colophonpagestyle},
\docAuxCommand{colophonclrpg}, \docAuxCommand{colophontopspace} et
\docAuxCommand{colophonbotspace} du \Package{colophon} : cela risquerait de
produire des résultats non souhaités.
\end{dbwarning}
\subsection{Habilitations à diriger les recherches}
\label{sec-hdr}%
% \index{hdr (habilitation)@\glsxtrshort{hdr} (habilitation)}%
Grâce à sa clé \refKey{hdr}, la \yatCl{} peut être utilisée pour les
\glspl{hdr}.
\begin{docKey}{hdr}{=\docValue{true}\textbar\docValue{false}}{par défaut
\docValue{true}, initialement \docValue{false}}
% \indexdef{hdr (habilitation)@\glsxtrshort{hdr} (habilitation)}%
\changes{v0.99f}{2014-07-11}{Nouvelle clé \protect\refKey{hdr} permettant de
d'utiliser la \yatCl{} pour une habilitation à diriger les recherches}%
%
Cette clé spécifie que le mémoire est pour une \gls{hdr}.
\end{docKey}
Les seuls effets de la clé \refKey{hdr} sont :
\begin{itemize}
\item d'adapter un certain nombre d'expressions clés de la \yatCl{}, en
remplaçant par exemple
\enquote{\foreignlanguage{french}{\translate{thesisdefendedby}}} par
\enquote{\foreignlanguage{french}{\translate{thesisdefendedby-hdr}}}. Les
expressions propres aux habilitations à diriger les recherches sont celles
dont les labels sont suffixés par \enquote{\texttt{-hdr}} dans le
\vref{tab-expressions-cles} ;
\item de ne pas rendre \enquote{obligatoire} (cf. \vref{sec-comm-oblig}), la
spécification de l'école doctorale\footnote{Les \glspl{hdr} ne sont pas
préparées sous l'égide d'écoles doctorales (cf.
\url{https://www.legifrance.gouv.fr/loda/id/JORFTEXT000000298904}).}
(commande \refCom{doctoralschool}) ;
\item de masquer sur la ou les pages de titre tout ce qui aurait pu être
spécifié au moyen de \refCom{doctoralschool}.
\end{itemize}
\subsection{Expressions séparant corporations et affiliations des membres du jury}
\label{sec-expr-separ-les}%
\index{expression!séparant corporation et affiliation}%
Sur les pages de titre, chaque membre du jury peut être précisé notamment par :
\begin{itemize}
\item sa corporation, cf. \refKey{professor}, \refKey{associateprofessor},
\refKey{associateprofessor*}, \refKey{seniorresearcher},
\refKey{juniorresearcher} et \refKey{juniorresearcher*} ;
\item son affiliation, cf. \refKey{affiliation}.
\end{itemize}
Comme illustré \vref{fig-maketitle}, si ces deux précisions sont présentes,
elles sont par défaut séparées :
\begin{description}
\item[en français] par l'une des deux expressions contextuelles suivantes :
\begin{itemize}
\item \enquote{\textvisiblespace{}à l'}\footnote{Le symbole
\enquote{\textvisiblespace{}} matérialise une espace.} ;
\item \enquote{\textvisiblespace{}au\textvisiblespace{}} ;
\end{itemize}
où l'article défini est automatiquement élidé selon l'initiale (voyelle ou
consonne) de l'affiliation ;
\item[en anglais] par l'expression fixe (non contextuelle)
\enquote{\textvisiblespace{}at\textvisiblespace{}}.
\end{description}
\begin{dbwarning}{Élision automatique non robuste}{elision-separateurs}
\index{expression!élision}%
L'élision automatique des expressions contextuelles en français n'est pas
robuste : elle peut en effet ne pas donner le résultat escompté si la valeur
de la clé \refKey{affiliation}, définissant l'affiliation, a pour initiale :
\begin{itemize}
\item une consonne, mais est de genre féminin ;
\item une voyelle, mais par le truchement d'une commande\commandeacronyme, et
non pas \enquote{directement}.
\end{itemize}
\end{dbwarning}
Au moyen des clés \refKey{sepcorpaffilfrench} et \refKey{sepcorpaffilenglish}
suivantes, les expressions séparatrices en français et en anglais peuvent être
redéfinies, globalement ou localement.
\begin{docKey}{sepcorpaffilfrench}{=\meta{expression}}{pas de valeur par défaut,
initialement \lstinline[showspaces]+\ +\texttt{à}\lstinline[showspaces]+\ +\texttt{l'} ou
\lstinline[showspaces]+\ au\ +}
\indexdef{expression!séparant corporation et affiliation}%
Cette option permet de redéfinir l'\meta{expression} employée en français pour
séparer les corporations et affiliations des membres du jury. Elle peut être
employée :
\begin{description}
\item[globalement:] elle est alors à spécifier en option de la classe de
document ;
\item[localement:] elle est alors à spécifier en option de l'une des
commandes de définition des membres du jury (cf.
\vref{sec-definition-jury}).
\end{description}
\end{docKey}
\begin{docKey}{sepcorpaffilenglish}{=\meta{expression}}{pas valeur par
défaut, initialement \lstinline[showspaces]+\ at\ +}
\indexdef{expression!séparant corporation et affiliation}%
Cette option, analogue à \refKey{sepcorpaffilfrench}, permet de redéfinir
l'\meta{expression} employée en anglais pour séparer les corporations et
affiliations des membres du jury.
\end{docKey}
\begin{dbwarning}{Expressions séparatrices débutant ou finissant par un espace}{}
Si les valeurs des clés \refKey{sepcorpaffilfrench} ou
\refKey{sepcorpaffilenglish} doivent \emph{débuter} ou \emph{finir} par un
espace, celui-ci doit être saisi au moyen de
%
\lstinline[showspaces]+\ +
%
% ou de
%
% \lstinline[deletekeywords={[2]space}]+\space+,
%
et non pas seulement de
%
\lstinline[showspaces]+ +.
%
\end{dbwarning}
\begin{dbexample}{Redéfinition (globale) de l'expression séparant corporations
et affiliations}{}
\indexex{expression!séparant corporation et affiliation}%
L'exemple suivant montre comment remplacer l'expression (par défaut) séparant
corporations et affiliations par une virgule, et ce :
\begin{itemize}
\item globalement pour tous les membres du jury;
\item en anglais.
\end{itemize}
\begin{preamblecode}[listing options={showspaces}]
\documentclass[sepcorpaffilenglish={,\ }]{yathesis}
\end{preamblecode}
\end{dbexample}
\begin{dbexample}{Redéfinition (locale) de l'expression séparant corporation et
affiliation}{}
\indexex{expression!séparant corporation et affiliation}%
L'exemple suivant montre comment remplacer l'expression séparant corporation et
affiliation par \enquote{\textvisiblespace{}à la\textvisiblespace{}}, et ce :
\begin{itemize}
\item localement (pour un membre du jury particulier);
\item en français.
\end{itemize}
\begin{bodycode}[listing options={showspaces}]
\referee[professor,sepcorpaffilfrench=\ à la\ ,affiliation=Cité des sciences]{René}{Descartes}
\end{bodycode}
\end{dbexample}
\subsection{Nombre de laboratoires sur les pages de résumés et de 4\ieme{} de couverture}
\label{sec-nombre-de-labor}
\index{résumé}%
\index{quatrième de couverture}%
Par défaut, seul le laboratoire principal (avec son adresse) est affiché sur les
pages de résumés et de 4\ieme{} de couverture (cf. \vref{sec-abstract,sec-quatr-de-couv}). Mais la clé
\refKey{numlaboratories} suivante permet de faire figurer un nombre arbitraire
de laboratoires parmi ceux définis au moyen de la commande \refCom{laboratory}.%
%
\changes{v0.99j}{2014-07-18}{Nouvelle clé \protect\refKey{numlaboratories}
permettant de spécifier le nombre ($\geqslant 0$) de laboratoires devant
figurer sur les pages de résumés et de 4\ieme{} de couverture}%
\begin{docKey}{numlaboratories}{=\meta{nombre}}{pas de valeur par
défaut, initialement \docValue*{1}}
\index{laboratoire!multiple!nombre}%
Cette clé permet de spécifier le \meta{nombre} (entier positif ou nul) de
laboratoires dont les noms et adresses doivent figurer sur la page de résumés
et de 4\ieme{} de couverture. Ces laboratoires sont pris dans l'ordre de
leurs définitions au moyen de la commande \refCom{laboratory}.
\end{docKey}
Pour gagner de la place sur les pages concernées, la composition des noms et
adresses des laboratoires est un peu condensée si \meta{nombre} dépasse $1$.
\section{Options à passer aux packages chargés par la \yatCl{}}
\label{sec-options-passer-aux}%
\index{option!de package chargé par \yatcl{}}%
\changes{v0.99g}{2014-07-13}{Possibilité de passer des options aux packages
chargés par \yat{}}%
%
Pour plusieurs de ses fonctionnalités, la \yatCl{} s'appuie sur des packages
(listés \vref{sec-packages-charges-par}) qu'elle charge automatiquement. Aussi
son comportement par défaut et sa personnalisation sont-ils également gouvernés
par le comportement par défaut et la personnalisation de ces packages.
\begin{dbwarning}{Packages automatiquement chargés à ne pas charger
manuellement}{packages-a-ne-pas-charger}
Les packages qui sont automatiquement chargés par la \yatCl{} ne doivent pas
être chargés manuellement (au moyen de la commande
\docAuxCommand{usepackage}), sous peine de provoquer des conflits d'options
(tel que signalé à la \vref{faq-option-clash}).
\end{dbwarning}
De ce fait, la personnalisation des packages automatiquement chargés par le
biais d'arguments optionnels passés à la commande \docAuxCommand{usepackage}
n'est pas possible. Pour pallier cela, \yat{} fournit des options de classe
permettant de passer à certains de ces packages une ou plusieurs options sous
la forme d'une liste de clés/valeurs. Les packages concernés sont précisément
ceux :
\begin{itemize}
\item (éventuellement) utiles à l'utilisateur final ;
\item dont la personnalisation se fait habituellement par le biais d'options
à passer en argument optionnel de la commande \docAuxCommand{usepackage} (et
seulement par ce biais-là\footnote{En particulier, ne sont pas concernés les
packages dont les options peuvent être passées indifféremment en argument
optionnel de \protect\docAuxCommand{usepackage} ou au moyen d'une commande
de configuration propre ; il en est ainsi du \Package{bookmark} qui dispose
de la commande \protect\docAuxCommand*{bookmarksetup}.}).
\end{itemize}
Ces options, qui ont même nom que celui du package concerné, sont les suivantes
(charge à l'utilisateur de consulter la documentation des packages concernés
pour savoir s'ils peuvent lui être utiles et, le cas échéant, quelles valeurs
peuvent être passées à leurs options).
\begin{docKey}{graphicx}{=\marg{option(s)}}{pas valeur par défaut,
initialement vide}
\index{option!de package chargé par \yatcl{}!graphicx@\package*{graphicx}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{graphicx}.
\end{docKey}
\begin{docKey}{adjustbox}{=\marg{option(s)}}{pas valeur par défaut,
initialement \docValue*{export}}
\index{option!de package chargé par \yatcl{}!adjustbox@\package*{adjustbox}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{adjustbox}.
\end{docKey}
\begin{docKey}{setspace}{=\marg{option(s)}}{pas valeur par défaut,
initialement vide}
\index{option!de package chargé par \yatcl{}!setspace@\package*{setspace}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{setspace}.
Contrairement à l'option \refKey{space} qui ne prend effet qu'à la partie
principale du document et se termine avec elle, l'option \refKey{setspace}
a un effet (semi-)global et prend effet dès le début du document
(cf. \vref{wa-space-setspace}).
\end{docKey}
\begin{docKey}{xcolor}{=\marg{option(s)}}{pas valeur par défaut,
initialement vide}
\index{option!de package chargé par \yatcl{}!xcolor@\package*{xcolor}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{xcolor}.
\end{docKey}
\begin{docKey}{datatool}{=\marg{option(s)}}{pas valeur par défaut,
initialement vide}
\index{option!de package chargé par \yatcl{}!datatool@\package*{datatool}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{datatool}.
\end{docKey}
\begin{docKey}{titlesec}{=\marg{option(s)}}{pas valeur par défaut, initialement
vide}
\index{option!de package chargé par \yatcl{}!titlesec@\package*{titlesec}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{titlesec}.
\end{docKey}
\begin{docKey}{draftwatermark}{=\marg{option(s)}}{pas valeur par défaut,
initialement vide}
\index{option!de package chargé par
\yatcl{}!draftwatermark@\package*{draftwatermark}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{draftwatermark}.
\end{docKey}
\begin{docKey}{babel}{=\marg{option(s)}}{pas valeur par défaut,
initialement vide}
\index{option!de package chargé par \yatcl{}!babel@\package*{babel}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{babel}.
\end{docKey}
\begin{docKey}{datetime2}{=\marg{option(s)}}{pas valeur par défaut,
initialement \docValue*{nodayofweek}}
\index{option!de package chargé par \yatcl{}!datetime2@\package*{datetime2}}%
Cette option permet de passer une ou plusieurs \meta{option(s)} au
\Package{datetime2}.
\end{docKey}
%
\changes*{v0.99k}{2014-10-01}{%
Option de classe \protect\docAuxKey*{bookmark} supprimée%
}%
\begin{dbexample}{Passage d'options à un package automatiquement chargés par \yat}{}
L'exemple suivant montre comment passer au \Package{xcolor} les options
\docValue*{dvipsnames} et \docValue*{table}.
\begin{preamblecode}[listing options={showspaces}]
\documentclass[xcolor={dvipsnames,table}]{yathesis}
\end{preamblecode}
\end{dbexample}
% \section{Options de préambule}
% \label{sec-options-de-preambule}
%
% Pour des raisons techniques, les options de la \yatCl{} listées à la
% \vref{options-classe}, ne peuvent être passées qu'en argument optionnel de
% \docAuxCommand{documentclass}. Les options de la présente section peuvent être
% passées indifféremment :
% \begin{itemize}
% \item en argument optionnel de \docAuxCommand{documentclass} ;
% \item en préambule, en argument de la commande \refCom{yadsetup}.
% \end{itemize}
%
% \begin{docCommand}{yadsetup}{\marg{options}}
% Cette commande permet de spécifier certaines \meta{options} de la \yatCl{}.
% \end{docCommand}
%
% \subsection{Profondeur de la numérotation}\label{sec-profondeur-de-la}
% \index{profondeur!numérotation des unités}%
% \index{numérotation!des unités!profondeur}%
%
% Par défaut, la numérotation des unités a pour \enquote{niveau de
% profondeur} les sous-sections. Autrement dit, seuls les titres des parties
% (éventuelles), chapitres, sections et sous-sections sont numérotés. L'option
% \refKey{secnumdepth} suivante permet de spécifier un autre niveau de
% profondeur.
% %
% {%
% \tcbset{before lower=\vspace*{\baselineskip}\par}
% \begin{docKey}{secnumdepth}{=\docValue{part}\textbar\docValue{chapter}\textbar\docValue{section}\textbar\docValue{subsection}\textbar\docValue{subsubsection}\textbar\docValue{paragraph}\textbar\docValue{subparagraph}}{pas
% de valeur par défaut, initialement \docValue{subsection}}
% \indexdef{profondeur!numérotation des unités}%
% \indexdef{numérotation des unités!profondeur}%
% Cette clé permet de modifier le \enquote{niveau de profondeur} de la
% numérotation des unités jusqu'aux, respectivement : parties,
% chapitres, sections, sous-sections, sous-sous-sections, paragraphes,
% sous-paragraphes.
% \end{docKey}
% }
%
% \subsection{Espace interligne}\label{sec-interligne}
% \index{espace!interligne}%
%
% L'interligne du document est par défaut \enquote{simple} mais, au moyen de
% l'option \refKey{space} suivante, il est possible de spécifier un interligne
% \enquote{un et demi} ou \enquote{double}.
%
% \begin{docKey}{space}{=\docValue{single}\textbar\docValue{onehalf}\textbar\docValue{double}}{pas de valeur par défaut,
% initialement \docValue{single}}
% \indexdef{espace!interligne}%
% Cette clé permet de spécifier un interligne \docValue{single} (simple),
% \docValue{onehalf} (un et demi) ou \docValue{double} (double).
% \end{docKey}
%
% \begin{dbwarning}{Option d'interligne : seulement dans la partie
% principale}{space-setspace}
% Contrairement à l'option \refKey{setspace} qui a un effet (semi-)global et
% prend effet dès le début du document, l'option \refKey{space} ne prend effet
% qu'à la partie principale du document (cf. \vref{cha-corps}) et se termine
% avec elle, avant la partie annexe (cf. \vref{cha-annexes}).
% \end{dbwarning}
%
% Si on souhaite changer d'interligne ailleurs dans le mémoire, on recourra aux
% commandes du \Package*{setspace} \aside*{chargé par la \yatCl{}}.
\section{Commandes et options de commandes de la \yatCl{}}
\index{commandes de personnalisation!lieu de spécification}%
\index{option!de \yatcl{}!lieu de spécification}%
\begin{dbremark}{Lieu des commandes de personnalisation}{configurationfile}
Les commandes de personnalisation listées dans cette section (et donc propres
à \yatCl{}) ou fournies par les packages chargés manuellement peuvent être
saisies :
\begin{itemize}
\item soit directement dans le (préambule du) fichier (parent) de la thèse ;
\item%
\index{fichier!de configuration de \yatcl{}}%
\index{dossier!de configuration}%
soit dans un fichier (prévu à cet effet) à nommer \file{\configurationfile}
et à placer dans un sous-dossier (prévu à cet effet) à nommer
\folder{\configurationdirectory}\footnote{Ces fichier et sous-dossier sont
à créer au besoin mais le canevas de thèse \enquote{en arborescence} livré
avec la \yatCl{}, décrit \vref{sec-canevas-arborescence}, les fournit.}.
\end{itemize}
\end{dbremark}
\begin{dbwarning}{Fichier de configuration à ne pas importer manuellement}{}
Le \File{\configurationfile} est \emph{automatiquement} importé par la
\yatCl{} et il doit donc \emph{ne pas} être explicitement importé : on
\emph{ne} recourra donc \emph{pas} à la commande
|\input{|\file{\configurationfile}|}| (ou autre commande d'importation
similaire à \docAuxCommand{input}).
\end{dbwarning}
\subsection{(Re)Définition des expressions de la
thèse}\label{sec-expressions-cles}%
\index{expression!(re)définition}%
Un mémoire de thèse composé avec la \yatCl{} est émaillé d'expressions insérées
de façon automatique sur certaines pages (titre, mots clés, laboratoire,
résumés, etc.). Que ces expressions soient définies par la \yatCl{} ou bien
standard, il est possible de les redéfinir.
\subsubsection{Expressions définies par la classe}
\label{sec-expr-defin-par}%
\index{expression!redéfinition}%
Les expressions \meta{en français} et \meta{en anglais} définies par la \yatCl{}
sont listées\footnote{Et classées par ordre alphabétique des expressions
\meta{en français}.} dans le \vref{tab-expressions-cles} et y sont identifiées
par un \meta{label} permettant de les redéfinir (voire de les définir, cf.
\vref{ex-doctor}) au moyen de la commande \refCom{expression} suivante.
%
%
\changes*{v0.99u}{2019-03-28}{Expressions clés \enquote{Titre de la thèse} et
\enquote{Titre de l’habilitation à diriger les recherches} (et équivalents en
anglais) désormais vides}%
\changes*{v0.99u}{2019-03-28}{Les expressions clés \enquote{Directeurs} et
\enquote{Supervisors} introduisant la liste des directeurs d'une
\protect\glsxtrshort*{hdr} désormais remplacées par \enquote{Habilitation
dirig\'ee par} et \enquote{Habilitation supervised by}}%
%
\begin{docCommand}{expression}{\marg{label}\marg{en français}\marg{en anglais}}
\indexdef{expression!redéfinition}%
Cette commande permet de redéfinir les valeurs \meta{en français} et
\meta{en anglais} de l'expression identifiée par \meta{label}.
\end{docCommand}
%
\bgroup
\newtoggle{YAD@firstline}
\renewcommand{\expression}[3]{%
\iftoggle{YAD@firstline}{}{\\}%
\global\togglefalse{YAD@firstline}%
\ifthenelse{\isempty{#2}}{%
\meta{vide}%
}{%
#2%
}%
&
\ifthenelse{\isempty{#3}}{%
\meta{vide}%
}{%
#3%
}%
&
#1%
% \midrule%
}
%
% \footnotesize%
\small%
\LTXtable{\textwidth}{tableaux/expressions}%
\egroup
%
\begin{dbexample}{Modification d'expression définie par la classe}{}
\indexex{expression!redéfinition}%
Pour remplacer l'expression en français \enquote{Unit\'e de recherche} (dont le label est
|universitydepartment|) par \enquote{Laboratoire}, il suffit de
saisir :
%
\begin{preamblecode}[title=Par exemple dans le \File{\configurationfile}]
\expression{universitydepartment}{Laboratoire}{University Department}
\end{preamblecode}
\end{dbexample}
%
\begin{dbexample}{Suppression d'expression définie par la classe}{}
\indexex{expression!redéfinition}%
Si on souhaite supprimer des pages de titre les mentions \enquote{Thèse présentée par} et \foreignquote{english}{Thesis defended by} (expressions dont le label
est |thesisdefendedby|), il suffit de saisir :
\begin{preamblecode}[title=Par exemple dans le \File{\configurationfile}]
\expression{thesisdefendedby}{}{}
\end{preamblecode}
\end{dbexample}
\begin{dbremark}{Modification d'expressions facilitée par la version
\enquote{brouillon}}{}
On a vu \vref{sec-versions} que l'option
\lstinline[deletekeywords={version}]|version=draft| permet de facilement
retrouver les labels des expressions et atteindre le \File{\configurationfile}
pour y modifier celles-ci.
\end{dbremark}
\subsubsection{Expressions standard}
\label{sec-expressions-standard}%
\index{expression!redéfinition}%
Le \vref{tab-expressions-standard} liste les expressions \LaTeX{} standard
telles que traduites par la \yatCl{}. Il s'agit en fait des traductions en
français et en anglais fournies par les modules \package*+{babel-french} et
\package*+{english} du \Package{babel}, à l'exception de l'expression française
figurant en légende des tableaux flottants (\enquote{Table} est remplacée par
\enquote{Tableau}).%
\changes*{v0.99j}{2014-07-18}{Les légendes des tableaux flottants sont
introduites par l'expression \enquote{\textsc{Tableau}} et non plus plus
\enquote{\textsc{Table}}}%
Si on souhaite redéfinir ces expressions, il suffit de recourir aux commandes
|\addto|, |\captionsfrench| et |\captionsenglish| du \Package{babel} au moyen
de la syntaxe suivante.
\begin{preamblecode}[title=Par exemple dans le \File{\configurationfile}]
\addto\captionsfrench{\def\"\meta{commande}"{"\meta{en français}"}}
\addto\captionsenglish{\def\"\meta{commande}"{"\meta{en anglais}"}}
\end{preamblecode}
\begin{table}[hb]
\centering
\caption{Valeurs et commandes d'expressions \LaTeX{} standard fournies par la \yatCl{}}
\label{tab-expressions-standard}
\input{tableaux/expressions-standard}
\end{table}
%
\begin{dbexample}{Redéfinition d'expressions du \Package{babel}}{}
\indexex{expression!redéfinition}%
\indexex{nom!résumé}%
\begin{preamblecode}[title=Redéfinition des expressions pour les résumés]
\addto\captionsfrench{\def\abstractname{Aperçu de notre travail}}
\addto\captionsenglish{\def\abstractname{Overview of our work}}
\end{preamblecode}
\end{dbexample}
En cas d'usage des packages \package{glossaries} et \package{biblatex}, la
syntaxe précédente est inopérante avec les commandes
\docAuxCommand{glossaryname} et \docAuxCommand{bibname} (ainsi que
\docAuxCommand{refname}). Dans ce cas, pour donner un \meta{titre} (ou
\meta{nom}) \meta{alternatif} :
\begin{itemize}
\item%
\index{nom!glossaire}%
\index{nom!liste d'acronymes}%
\index{nom!liste de symboles}%
aux glossaire(s), liste d'acronymes et liste de symboles, on recourra
à l'une ou l'autre des instructions suivantes :
\begin{bodycode}[listing options={morekeywords={[2]title}}]
\printglossary[title="\meta{titre alternatif}"]
\printglossaries[title="\meta{titre alternatif}"]
\printacronyms[title="\meta{titre alternatif}"]
\printsymbols[title="\meta{titre alternatif}"]
\end{bodycode}
\item%
\index{nom!bibliographie}%
à la bibliographie, on recourra à :
\begin{bodycode}[listing options={morekeywords={[2]title}}]
\printbibliography[title="\meta{titre alternatif}"]
\end{bodycode}
\end{itemize}
En outre, en cas d'usage du \Package*{listings}, un \meta{titre alternatif}
pourra être donné à la liste des listings, au moyen de:
\begin{preamblecode}[title=Par exemple dans le \File{\configurationfile}]
\renewcommand\lstlistingname{"\meta{titre alternatif}"}
\end{preamblecode}
\subsection{Nouvelles corporations}\label{sec-nouveaux-corps}
\index{corporation!non prédéfinie}%
\index{expression!définition!corporation}%
On a vu \vref{sec-jury} que des options des commandes définissant les
directeurs de thèse et membres du jury permettent de spécifier si ceux-ci
appartiennent aux corporations \emph{prédéfinies} :
\begin{itemize}
\item des professeurs ou des maîtres de conférences (\glspl{hdrpeople} ou pas) des
universités ;
\item des directeurs de recherche ou des chargé(e)s de recherche (\glspl{hdrpeople} ou
pas) du \gls{cnrs}.
\end{itemize}
La clé \refKey{corps} suivante permet de spécifier de \emph{nouvelles}
corporations (ou nouveaux corps) à \emph{définir} au moyen de la commande
\refCom{expression}.
\begin{docKey}{corps}{=\meta{label}}{pas de valeur par défaut, initialement
vide}
\indexdef{expression!définition!corporation}%
\changes{v0.99e}{2014-06-15}{Clé \protect\refAux{corporation} remplacée par
(et alias de) la clé \protect\refKey{corps}}%
%
L'option |corps=|\meta{label} permet de stipuler une \meta{corporation en
français} et une \meta{corporation en anglais} où \meta{label} identifie une
expression listée au \vref{tab-expressions-cles} ou à définir au moyen de la
commande \refCom{expression}.
\end{docKey}
\begin{dbexample}{Nouvelle corporation}{doctor}
\indexex{expression!définition}%
\indexex{expression!non prédéfinie}%
\indexex{corporation!non prédéfinie}%
Si on souhaite spécifier que certains membres du jury sont docteurs, il
suffit de définir \aside{une seule fois} l'expression suivante de label (par
exemple) |doctor| :
\begin{preamblecode}[title=Par exemple dans le \File{\configurationfile}]
\expression{doctor}{docteur}{Doctor}
\end{preamblecode}
pour pouvoir ensuite l'utiliser \aside{autant de fois que souhaité}, par
exemple ainsi :
\begin{bodycode}
\examiner[corps=doctor]{Joseph}{Fourier}
\examiner[corps=doctor]{Paul}{Verlaine}
\end{bodycode}
\end{dbexample}
\subsection{Nouveaux rôles}\label{sec-nouveaux-roles}
\index{rôle!non prédéfini}%
\index{expression!définition!rôle}%
On a pu noter \vref{sec-jury} que des rôles, figurant automatiquement sur les
pages de titre, sont attachés :
\begin{itemize}
\item aux directeurs de thèse définis au moyen des commandes
\refCom{supervisor}, \refCom{cosupervisor} et \refCom{comonitor} :
\enquote{directeur}, \enquote{co-directeur} et \enquote{co-encadrant} ;
\item au président du jury défini au moyen de la commande
\refCom{committeepresident} : \enquote{président du jury}.
\end{itemize}
La clé \refKey{role} suivante permet de spécifier de \emph{nouveaux} rôles
à \emph{définir} au moyen de la commande \refCom{expression}.
% Il est même possible de \emph{définir} de \emph{nouveaux} rôles au moyen
% de la commande \refCom{expression}.
\begin{docKey}{role}{=\meta{label}}{pas de valeur par défaut, initialement
vide}
\indexdef{expression!définition!rôle}%
\changes{v0.99f}{2014-07-11}{Nouvelle clé \protect\refKey{role} permettant de
spécifier ou définir de nouveaux rôles pour les personnes}%
%
L'option |role=|\meta{label} permet de stipuler un \meta{rôle en français} et
un \meta{rôle en anglais} où \meta{label} identifie une expression listée au
\vref{tab-expressions-cles} ou à définir au moyen de la commande
\refCom{expression}.
\end{docKey}
\index{option!de \yatcl{}|)}
\section{Packages chargés manuellement}
\label{sec-options-de-classes}
Si on souhaite recourir à des packages qui ne sont pas appelés par la \yatCl{},
on les chargera manuellement, par exemple en préambule du fichier (parent) de
la thèse.
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../yathesis-fr"
%%% End:
|