diff options
Diffstat (limited to 'Master/texmf-dist/source/latex')
7 files changed, 858 insertions, 368 deletions
diff --git a/Master/texmf-dist/source/latex/yathesis/factorielle.c b/Master/texmf-dist/source/latex/yathesis/factorielle.c new file mode 100644 index 00000000000..958d5e06e75 --- /dev/null +++ b/Master/texmf-dist/source/latex/yathesis/factorielle.c @@ -0,0 +1,6 @@ +int factorielle(int n) +{ + if (n > 2) return n * factorielle(n - 1); + return n; +} + diff --git a/Master/texmf-dist/source/latex/yathesis/heure.c b/Master/texmf-dist/source/latex/yathesis/heure.c new file mode 100644 index 00000000000..4c3bf45fc5b --- /dev/null +++ b/Master/texmf-dist/source/latex/yathesis/heure.c @@ -0,0 +1,27 @@ +#include <stdio.h> +int heures, minutes, secondes; + +/****************************************************/ +/* */ +/* print_heure */ +/* */ +/* But: */ +/* Imprime l'heure */ +/* */ +/* Interface: */ +/* Utilise les variables globales */ +/* heures, minutes, secondes */ +/* */ +/****************************************************/ + +void print_heure(void) +{ + printf("Il est %d heure",heures); + if (heures > 1) printf("s"); + printf(" %d minute",minutes); + if (minutes > 1) printf("s"); + printf(" %d seconde",secondes); + if (secondes > 1) printf("s"); + printf("\n"); +} + diff --git a/Master/texmf-dist/source/latex/yathesis/ltxdoc.cfg b/Master/texmf-dist/source/latex/yathesis/ltxdoc.cfg new file mode 100644 index 00000000000..bc88aaf7416 --- /dev/null +++ b/Master/texmf-dist/source/latex/yathesis/ltxdoc.cfg @@ -0,0 +1,8 @@ +% \AfterEndPreamble{% +% \OnlyDescription% Comment out for implementation details +% \EnableCrossrefs% +% \CodelineIndex% +% }% +% \AtEndDocument{% +% % \PrintIndex% +% } diff --git a/Master/texmf-dist/source/latex/yathesis/yathesis-samples-templates.dtx b/Master/texmf-dist/source/latex/yathesis/yathesis-samples-templates.dtx index f198a1420ea..2df428f650b 100644 --- a/Master/texmf-dist/source/latex/yathesis/yathesis-samples-templates.dtx +++ b/Master/texmf-dist/source/latex/yathesis/yathesis-samples-templates.dtx @@ -122,6 +122,7 @@ %<*flat-sample|acronyms-sample> \newacronym{pres}{pres}{Pôle de Recherche et d'Enseignement Supérieur} +\newacronym{comue}{comue}{Communauté d'universités et établissements} \newacronym{ulco}{ulco}{Université du Littoral Côte d'Opale} \newacronym{edspi}{edspi}{École Doctorale Sciences Pour l'Ingénieur} @@ -302,7 +303,7 @@ % obligatoire) et dans la langue secondaire (argument optionnel) %COMMENT %<flat-template|characteristics-master>% \subtitle[]{} -%<characteristics-sample|flat-sample>\subtitle[Chaos' laugh]{Le rire du chaos} +%<characteristics-sample|flat-sample>\subtitle[Chaos' Laugh]{Le rire du chaos} %<<COMMENT % % Champ disciplinaire dans la langue principale (argument obligatoire) et dans @@ -339,11 +340,11 @@ %<characteristics-sample|flat-sample>\subject[Chaotic Laugh]{Rire chaotique} %<<COMMENT % -% (Facultatif) Nom (argument obligatoire) du PRES +% (Facultatif) Nom (argument obligatoire) de la ComUE %COMMENT -%<flat-template|characteristics-master>\pres[logo=,url=]{} -%<characteristics-sample>\pres[logo=images/pres]{Université Lille Nord de France} -%<flat-sample>\pres[logo=pres]{Université Lille Nord de France} +%<flat-template|characteristics-master>\comue[logo=,url=]{} +%<characteristics-sample>\comue[logo=images/comue]{ComUE Lille Nord de France} +%<flat-sample>\comue[logo=comue]{ComUE Lille Nord de France} %<<COMMENT % % Nom (argument obligatoire) de l'institut (principal en cas de cotutelle) @@ -406,9 +407,10 @@ % 2 arguments obligatoires, successivement les prénom et nom de chaque % personne. Si besoin est, on peut apporter certaines précisions en argument % optionnel, essentiellement au moyen des clés suivantes : -% - « professor », « seniorresearcher », « mcf », « mcf* », -% « juniorresearcher », « juniorresearcher* » (qui peuvent ne pas prendre de -% valeur) pour stipuler le corps auquel appartient la personne ; +% - « professor », « seniorresearcher », « associateprofessor », +% « associateprofessor* », « juniorresearcher », « juniorresearcher* » (qui +% peuvent ne pas prendre de valeur) pour stipuler le corps auquel appartient +% la personne ; % - « affiliation » pour stipuler l'institut auquel est affiliée la personne ; % - « female » pour stipuler que la personne est une femme pour que certains % mots clés soient accordés en genre. @@ -417,9 +419,9 @@ %<flat-template|characteristics-master>\supervisor[,affiliation=]{}{} %<characteristics-sample|flat-sample>\supervisor[professor,affiliation=ULCO]{Michel}{de Montaigne} %<flat-template|characteristics-master>% \cosupervisor[,affiliation=]{}{} -%<characteristics-sample|flat-sample>\cosupervisor[mcf*,affiliation=ULCO]{Charles}{Baudelaire} +%<characteristics-sample|flat-sample>\cosupervisor[associateprofessor*,affiliation=ULCO]{Charles}{Baudelaire} %<flat-template|characteristics-master>% \comonitor[,affiliation=]{}{} -%<characteristics-sample|flat-sample>\comonitor[mcf,affiliation=ULCO]{Étienne}{de la Boétie} +%<characteristics-sample|flat-sample>\comonitor[associateprofessor,affiliation=ULCO]{Étienne}{de la Boétie} %<flat-template|characteristics-master>\referee[,affiliation=]{}{} %<characteristics-sample|flat-sample>\referee[professor,affiliation=IHP]{René}{Descartes} %<flat-template|characteristics-master>\referee[,affiliation=]{}{} @@ -427,7 +429,7 @@ %<flat-template|characteristics-master>\committeepresident[,affiliation=]{}{} %<characteristics-sample|flat-sample>\committeepresident[professor,affiliation=ENS Lyon]{Victor}{Hugo} %<flat-template|characteristics-master>\examiner[,affiliation=]{}{} -%<characteristics-sample|flat-sample>\examiner[mcf,affiliation=Université de Paris~13]{Sophie}{Germain} +%<characteristics-sample|flat-sample>\examiner[associateprofessor,affiliation=Université de Paris~13]{Sophie}{Germain} %<flat-template|characteristics-master>\examiner[,affiliation=]{}{} %<characteristics-sample|flat-sample>\examiner[juniorresearcher,affiliation=INRIA]{Joseph}{Fourier} %<flat-template|characteristics-master>\examiner[,affiliation=]{}{} @@ -487,9 +489,9 @@ %<dedications-sample|dedications-master>% Dédicace(s) %<flat-template|dedications-master>\dedication{} %<flat-template|dedications-master>\dedication{} -%<dedications-sample|flat-sample>\dedication{Je dédie ce travail\\à tous ceux qui le méritent} %<dedications-sample|flat-sample>\dedication{À mon directeur bien-aimé !} -%<dedications-sample|flat-sample>\dedication{À mon co-directeur bien-co-aimé !} +%<dedications-sample|flat-sample>\dedication{À mon co-directeur bien-co-aimé aussi !} +%<dedications-sample|flat-sample>\dedication{Je dédie également ce travail\\à tous ceux qui le méritent} %<dedications-sample|dedications-master>% Production de la page de dédicace(s) %<flat-template|flat-sample>% (Facultatif) Production de la page de dédicace(s) \makededications @@ -810,6 +812,7 @@ suis certain qu'il sera \og hors-texte\fg{} : %</these-sample|flat-sample|flat-template|these-master|position-problemeI-sample> %<*these-sample|flat-sample|flat-template|these-master> %<<COMMENT +% % Deuxième chapitre %COMMENT %</these-sample|flat-sample|flat-template|these-master> @@ -984,6 +987,7 @@ optionnel de la commande de sectionnement qui a permis cela. %</these-sample|flat-sample|flat-template|these-master|developpementI-sample> %<*these-sample|flat-sample|flat-template|these-master> %<<COMMENT +% % Troisième chapitre %COMMENT %</these-sample|flat-sample|flat-template|these-master> @@ -1047,6 +1051,7 @@ Dans ce chapitre, nous concluons l'étude du chaos du rire. %</these-sample|flat-sample|flat-template|these-master|position-problemeII-sample> %<*these-sample|flat-sample|flat-template|these-master> %<<COMMENT +% % Cinquième chapitre %COMMENT %</these-sample|flat-sample|flat-template|these-master> @@ -1079,6 +1084,7 @@ celui de la figure\vref{sin-x*sin-y}. %</these-sample|flat-sample|flat-template|these-master|developpementII-sample> %<*these-sample|flat-sample|flat-template|these-master> %<<COMMENT +% % Sixième chapitre %COMMENT %</these-sample|flat-sample|flat-template|these-master> @@ -1178,6 +1184,7 @@ Cette partie regroupe les documents juridiques officiels. %</juridique-sample|flat-sample> %<*these-sample|flat-sample|flat-template|these-master> %<<COMMENT +% % Deuxième chapitre annexe (éventuel) %COMMENT %</these-sample|flat-sample|flat-template|these-master> @@ -1362,7 +1369,3 @@ Vous pouvez stocker les images de votre thèse dans le présent répertoire. % \end{macrocode} % \endinput -% Local Variables: -% mode: doctex -% TeX-master: t -% End: diff --git a/Master/texmf-dist/source/latex/yathesis/yathesis.drv b/Master/texmf-dist/source/latex/yathesis/yathesis.drv new file mode 100644 index 00000000000..68796608749 --- /dev/null +++ b/Master/texmf-dist/source/latex/yathesis/yathesis.drv @@ -0,0 +1,56 @@ +%% +%% This is file `yathesis.drv', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% yathesis.dtx (with options: `driver') +%% ----------------------------------------------------------------------- +%% yathesis --- Yet Another Thesis Class +%% E-mail: denis.bitouze@lmpa.univ-littoral.fr +%% Released under the LaTeX Project Public License v1.3c or later +%% See http://www.latex-project.org/lppl.txt +%% ----------------------------------------------------------------------- +\ProvidesFile{yathesis.dtx} +\RequirePackage{scrlfile} +\ReplaceClass{article}{report} +\BeforePackage{doc}{\let\oldmaketitle\maketitle} +\documentclass[english,french]{ltxdoc} +\usepackage{denisbdoc} +\lstMakeShortInline[style=dbtex]" +\usepackage[lining]{libertine} +\renewcommand{\ttdefault}{lmtt} +\makeatletter +\@ifpackageloaded{glossaries}{% +}{% + \usepackage[xindy,toc,hyperfirst=false]{glossaries}% + \makeglossaries + \setglossarystyle{indexhypergroup} + \setacronymstyle{long-sc-short} +} +\makeatother +\addbibresource{yathesis.bib} +\InputIfFileExists{includeall-includeonly}{}{} +\begin{document} +\DocInput{\jobname.dtx} +\end{document} +%% ---------------------------------------------------------------------------------- +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `maintained'. +%% +%% The Current Maintainer of this work is Denis Bitouzé. +%% +%% This work consists of the file yathesis.dtx +%% and the derived files yathesis.cls, +%% yathesis.ins, +%% yathesis.pdf, +%% and a number of configuration files. +%% +%% End of file `yathesis.drv'. diff --git a/Master/texmf-dist/source/latex/yathesis/yathesis.dtx b/Master/texmf-dist/source/latex/yathesis/yathesis.dtx index 80ef92c339b..710516d793a 100644 --- a/Master/texmf-dist/source/latex/yathesis/yathesis.dtx +++ b/Master/texmf-dist/source/latex/yathesis/yathesis.dtx @@ -23,7 +23,7 @@ %<*readme> ----------------------------------------------------------------------- -- `yathesis` --- Yet Another Thesis Class, version 0.99m +- `yathesis` --- Yet Another Thesis Class, version 0.99o - E-mail: `denis.bitouze@lmpa.univ-littoral.fr` - Released under the LaTeX Project Public License v1.3c or later. See http://www.latex-project.org/lppl.txt @@ -36,33 +36,38 @@ following French rules.** The class is supplied in `.dtx` format. If you want to unpack the `.dtx` yourself, running: - pdftex yathesis.dtx + pdftex yathesis.dtx will extract the class whereas: - pdflatex yathesis.dtx + pdflatex yathesis.dtx -will extract it and also typeset the documentation. +will extract it and also typeset the documentation of the code. -Typesetting the documentation requires: +Typesetting the documentation of the class requires: - a number of packages in addition to those needed to use the `yathesis` classes. To compile the documentation without error, you will need, among others, my personal (dirty) package `denisbdoc` for documenting the classes I've written. - a complete `pdflatex` run of `these.tex` to be found in the - `.../yathesis/doc/latex/yathesis/exemples/specimen/a-plat` directory, with - `yathesis-demo` package load at first place. If `latexmk` is available, it is - easier to run: + `.../yathesis/doc/latex/yathesis/french/exemples/specimen/a-plat` directory, + with `yathesis-demo` package load at first place. If `latexmk` is available, + it is easier to run: - latexmk -f -pdf -jobname=these -pdflatex= \ - "pdflatex %O '\RequirePackage{yathesis-demo}\input{%S}'" these.tex + latexmk -g -pdf -jobname=these -pdflatex="pdflatex %O '\RequirePackage{etoolbox}\AtEndPreamble{\RequirePackage{yathesis-demo}}\input{%S}'" these.tex -- to run `pdflatex` on `yathesis.tex` to be found in the - `.../yathesis/doc/latex/yathesis/documentation` directory. If `latexmk` is - available, it is easier to run: +- to compile `yathesis.tex` to be found in the + `.../yathesis/doc/latex/yathesis/documentation/french` directory as follows: - latexmk yathesis.dtx + pdflatex yathesis-fr.tex + biber yathesis-fr.tex + makeglossaries yathesis-fr + texindy -L french -M denisbdoc-chng.xdy yathesis-fr-changes.idx + texindy -M denisbdoc.xdy -L french commands.idx + texindy -M denisbdoc.xdy -L french yathesis-fr.idx + pdflatex yathesis-fr.tex + pdflatex yathesis-fr.tex %</readme> %<*internal> \fi @@ -75,7 +80,7 @@ Typesetting the documentation requires: \input docstrip.tex \Msg{********************************************************} \Msg{* Installation} -\Msg{* Class: yathesis 2016/05/22 v0.99m} +\Msg{* Class: yathesis 2016-10-30 v0.99o} \Msg{* that helps to write thesis following French rules (DB)} \Msg{********************************************************} \keepsilent @@ -89,7 +94,7 @@ See http://www.latex-project.org/lppl.txt ----------------------------------------------------------------------- \endpreamble \postamble -% Copyright (C) 2012-2016 by Denis Bitouz'e <denis.bitouze@lmpa.univ-littoral.fr> +% Copyright (C) 2012-2016 by Denis Bitouzé <denis.bitouze@lmpa.univ-littoral.fr> ---------------------------------------------------------------------------------- This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 @@ -101,7 +106,7 @@ version 2005/12/01 or later. This work has the LPPL maintenance status `maintained'. -The Current Maintainer of this work is Denis Bitouz'e. +The Current Maintainer of this work is Denis Bitouzé. This work consists of the file yathesis.dtx and the derived files yathesis.cls, @@ -148,39 +153,39 @@ This work consists of the file yathesis.dtx \file{\YAD@classname.ins}{\from{\jobname.dtx}{install}} \file{\YAD@classname.drv}{\from{\jobname.dtx}{driver}}% }% -\usedir{doc/latex/\YAD@classname/\YAD@documentation} +\usedir{doc/latex/\YAD@classname/french/\YAD@documentation} \generate{ \nopreamble\nopostamble % \file{latexmkrc}{\from{\jobname.dtx}{class-latexmkrc}} \file{translations.tex}{\from{\jobname.dtx}{translations}} }% -\usedir{doc/latex/\YAD@classname/\YAD@flattemplate} +\usedir{doc/latex/\YAD@classname/french/\YAD@flattemplate} \generate{ \nopreamble\nopostamble \file{latexmkrc}{\from{\jobname.dtx}{samples-templates-latexmkrc}} \file{these.tex}{\from{\YAD@sampletemplates.dtx}{flat-template}} }% -\usedir{doc/latex/\YAD@classname/\YAD@flatsample} +\usedir{doc/latex/\YAD@classname/french/\YAD@flatsample} \generate{ \nopreamble\nopostamble \file{latexmkrc}{\from{\jobname.dtx}{samples-templates-latexmkrc}} \file{these.tex}{\from{\YAD@sampletemplates.dtx}{flat-sample}} \file{bibliographie.bib}{\from{\YAD@sampletemplates.dtx}{bibliography-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treesample} +\usedir{doc/latex/\YAD@classname/french/\YAD@treesample} \generate{ \nopreamble\nopostamble \file{latexmkrc}{\from{\jobname.dtx}{samples-templates-latexmkrc}} \file{these.tex}{\from{\YAD@sampletemplates.dtx}{these-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treesample/configuration} +\usedir{doc/latex/\YAD@classname/french/\YAD@treesample/configuration} \generate{ \nopreamble\nopostamble \file{characteristics.tex}{\from{\YAD@sampletemplates.dtx}{characteristics-sample}} \file{thesis.cfg}{\from{\YAD@sampletemplates.dtx}{cfg-sample}} \file{macros.tex}{\from{\YAD@sampletemplates.dtx}{macros-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treesample/corps} +\usedir{doc/latex/\YAD@classname/french/\YAD@treesample/corps} \generate{ \nopreamble\nopostamble \file{conclusion.tex}{\from{\YAD@sampletemplates.dtx}{conclusion-sample}} @@ -192,7 +197,7 @@ This work consists of the file yathesis.dtx \file{developpementII.tex}{\from{\YAD@sampletemplates.dtx}{developpementII-sample}} \file{introduction.tex}{\from{\YAD@sampletemplates.dtx}{introduction-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treesample/liminaires} +\usedir{doc/latex/\YAD@classname/french/\YAD@treesample/liminaires} \generate{ \nopreamble\nopostamble \file{dedicaces.tex}{\from{\YAD@sampletemplates.dtx}{dedications-sample}} @@ -202,19 +207,19 @@ This work consists of the file yathesis.dtx \file{remerciements.tex}{\from{\YAD@sampletemplates.dtx}{acknowledgments-sample}} \file{resumes.tex}{\from{\YAD@sampletemplates.dtx}{abstract-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treesample/annexes} +\usedir{doc/latex/\YAD@classname/french/\YAD@treesample/annexes} \generate{ \nopreamble\nopostamble \file{juridique.tex}{\from{\YAD@sampletemplates.dtx}{juridique-sample}} \file{listings.tex}{\from{\YAD@sampletemplates.dtx}{listings-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treesample/annexes/programmes} +\usedir{doc/latex/\YAD@classname/french/\YAD@treesample/annexes/programmes} \generate{ \nopreamble\nopostamble \file{factorielle.c}{\from{\YAD@sampletemplates.dtx}{factorielle-sample}} \file{heure.c}{\from{\YAD@sampletemplates.dtx}{heure-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treesample/auxiliaires} +\usedir{doc/latex/\YAD@classname/french/\YAD@treesample/auxiliaires} \generate{ \nopreamble\nopostamble \file{acronymes.tex}{\from{\YAD@sampletemplates.dtx}{acronyms-sample}} @@ -222,37 +227,37 @@ This work consists of the file yathesis.dtx \file{symboles.tex}{\from{\YAD@sampletemplates.dtx}{symbols-sample}} \file{bibliographie.bib}{\from{\YAD@sampletemplates.dtx}{bibliography-sample}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treetemplate} +\usedir{doc/latex/\YAD@classname/french/\YAD@treetemplate} \generate{ \nopreamble\nopostamble \file{latexmkrc}{\from{\jobname.dtx}{samples-templates-latexmkrc}} \file{these.tex}{\from{\YAD@sampletemplates.dtx}{these-master}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treetemplate/configuration} +\usedir{doc/latex/\YAD@classname/french/\YAD@treetemplate/configuration} \generate{ \nopreamble\nopostamble \file{characteristics.tex}{\from{\YAD@sampletemplates.dtx}{characteristics-master}} \file{thesis.cfg}{\from{\YAD@sampletemplates.dtx}{cfg-master}} \file{macros.tex}{\from{\YAD@sampletemplates.dtx}{macros-master}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treetemplate/auxiliaires} +\usedir{doc/latex/\YAD@classname/french/\YAD@treetemplate/auxiliaires} \generate{ \nopreamble\nopostamble \file{bibliographie.bib}{\from{\YAD@sampletemplates.dtx}{bibliography-master}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treetemplate/annexes} +\usedir{doc/latex/\YAD@classname/french/\YAD@treetemplate/annexes} \generate{ \nopreamble\nopostamble \file{annexeI.tex}{\from{\YAD@sampletemplates.dtx}{annexe-masterI}} \file{annexeII.tex}{\from{\YAD@sampletemplates.dtx}{annexe-masterII}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treetemplate/corps} +\usedir{doc/latex/\YAD@classname/french/\YAD@treetemplate/corps} \generate{ \nopreamble\nopostamble \file{conclusion.tex}{\from{\YAD@sampletemplates.dtx}{conclusion-master}} \file{introduction.tex}{\from{\YAD@sampletemplates.dtx}{introduction-master}} }% -\usedir{doc/latex/\YAD@classname/\YAD@treetemplate/liminaires} +\usedir{doc/latex/\YAD@classname/french/\YAD@treetemplate/liminaires} \generate{ \nopreamble\nopostamble \file{dedicaces.tex}{\from{\YAD@sampletemplates.dtx}{dedications-master}} @@ -272,14 +277,14 @@ This work consists of the file yathesis.dtx \fi %</internal> % \fi -% \def\YADnblastversion{0.99m} +% \def\YADnblastversion{0.99o} % \def\YADdatelastversion{\today} % \def\fileversion{v\YADnblastversion} % \def\filedate{\YADdatelastversion} % \iffalse %<*class> -\def\fileversion{v0.99m} -\def\filedate{2016/05/22} +\def\fileversion{v0.99o} +\def\filedate{2016/10/30} %</class> %<*driver> \ProvidesFile{yathesis.dtx} @@ -447,6 +452,9 @@ This work consists of the file yathesis.dtx \newbool{YAD@valid@month} \newbool{YAD@valid@year} \newbool{YAD@mainmatter@used} +\newbool{YAD@localtocs}% +\newbool{YAD@nextwithlocaltoc}% +% \newlength{\cmdKV@YAD@logoheight} \newlength{\YAD@max@logoheight} \newlength{\YAD@default@logoheight} @@ -630,6 +638,8 @@ This work consists of the file yathesis.dtx \YAD@create@boolean{noprintbibliography}% \YAD@create@boolean{nofrontcover}% \YAD@create@boolean{hdr}% +\YAD@create@boolean{localtocs@classoption}% +\YAD@create@boolean{localbibs}% % \yadsetup{noerror=true}% % @@ -639,6 +649,8 @@ This work consists of the file yathesis.dtx \YAD@create@boolean{professor}% \YAD@create@boolean{mcf}% \YAD@create@boolean{mcf*}% +\YAD@create@boolean{associateprofessor}% +\YAD@create@boolean{associateprofessor*}% \YAD@create@boolean{juniorresearcher}% \YAD@create@boolean{juniorresearcher*}% \YAD@create@boolean{seniorresearcher}% @@ -649,6 +661,8 @@ This work consists of the file yathesis.dtx professor=false,% mcf=false,% mcf*=false,% + associateprofessor=false,% + associateprofessor*=false,% juniorresearcher=false,% juniorresearcher*=false,% seniorresearcher=false,% @@ -761,6 +775,95 @@ This work consists of the file yathesis.dtx }% % \end{macrocode} % +% On définit la clé de classe "localtocs" qui fait que les titres des chapitres +% de la partie principale sont automatiquement suivis d'une table des matières +% locale à ce chapitre, de profondeur pouvant être précisée mais par défaut +% celle par défaut de la table des matières. +% \begin{macrocode} +\def\YAD@localtocsdepth{\YAD@tocdepth}% +\yadsetup{% + localtocs/.is family,% + localtocs/.code={% + \booltrue{YAD@localtocs@classoption}% + },% + localtocs/depth/.code={% + \pgfkeysalso{localtocs}% + \ifboolexpr{% + test {\ifstrempty{#1}} + or % + test {\ifstrequal{#1}{part}} + or % + test {\ifstrequal{#1}{chapter}} + }{% + \def\YAD@localtocsdepth{\YAD@tocdepth}% + }{% + \def\YAD@localtocsdepth{#1}% + }% + \ifboolexpr{% + test {\@ifundefined {Etoc@\YAD@localtocsdepth @@}} + or % + test {\ifstrequal{#1}{part}} + or % + test {\ifstrequal{#1}{chapter}} + }{% + \YAD@ClassWarningNoLine{% + La valeur (`#1') passee a la cle\MessageBreak% + `localtocs/depth'\MessageBreak% + en option de classe n'est pas un des niveaux de\MessageBreak% + sectionnement acceptes :\MessageBreak% + `section', `subsection',`subsubsection',\MessageBreak% + `paragraph', `subparagraph'.\MessageBreak% + Le niveau `\YAD@tocdepth' va etre utilise a la place% + }% + }{% + }% + },% +}% +% \end{macrocode} +% +% On définit la clé de classe "localbibs" qui fait que les chapitres +% contenant des références bibliographiques sont automatiquement terminées par +% leurs bibliographies locales. +% \begin{macrocode} +\newcommand\YAD@localbibs@common@code[1]{% + \booltrue{YAD@localbibs}% + \AtEndPreamble{% + \@ifpackageloaded{biblatex}{% + }{% + \@ifpackageloaded{csquotes}{% + }{% + \RequirePackage{csquotes}% + }% + \YAD@ClassWarningNoLine{% + L'ajout automatique des bibliographies locales en fin\MessageBreak% + de chapitres fourni par l'option de classe\MessageBreak% + `localbibs' repose sur le package `biblatex'\MessageBreak% + que vous n'avez pas charge.\MessageBreak% + La classe `yathesis' va le faire pour vous mais\MessageBreak% + le recours a ce package pour la bibliographie sera\MessageBreak% + alors necessaire et exclura tout autre outil\MessageBreak% + de production de la bibliographie\MessageBreak% + (notamment `BibTeX')% + }% + \RequirePackage{biblatex}% + }% + \ExecuteBibliographyOptions{% + refsegment=chapter,% + defernumbers=#1% + }% + \AfterEndPreamble{\newrefsegment}% + }% +} +\yadsetup{% + localbibs*/.code={% + \YAD@localbibs@common@code{true}% + },% + localbibs/.code={% + \YAD@localbibs@common@code{false}% + }% +} +% \end{macrocode} +% % \begin{macrocode} % \def\YAD@interligne{single}% % \define@choicekey*{yathesis.cls}{space}{single,onehalf,double}[single]% @@ -920,15 +1023,6 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \RequirePackage{textcase}[2004/10/07]% % \end{macrocode} -% Pour pouvoir assurer facilement les traductions de certains mots ou -% expressions clés du canevas de thèse (notamment dans les pages de titre) -% \begin{macrocode} -\RequirePackage{translator}[2010/06/12]% -% \end{macrocode} -% Pour fixer quelques bugs (en général sans conséquence) de \hologo{LaTeX2e} -% \begin{macrocode} -\RequirePackage{fixltx2e}[2006/09/13]% -% \end{macrocode} % Pour tester le moteur employé % \begin{macrocode} \RequirePackage{iftex}[2013/04/04]% @@ -949,15 +1043,11 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \RequirePackage{setspace}[2011/12/19]% % \end{macrocode} -% Pour pouvoir afficher un sommaire c-à-d une table des matières réduite -% \begin{macrocode} -\RequirePackage{shorttoc}[2002/08/20]% -% \end{macrocode} -% Pour régler finement la profondeur de la table des matières et de la -% numérotation -% \begin{macrocode} -\RequirePackage{tocvsec2}[2014/03/10]% -% \end{macrocode} +% % Pour régler finement la profondeur de la table des matières et de la +% % numérotation +% % \begin{macrocode} +% \RequirePackage{tocvsec2}[2014/03/10]% +% % \end{macrocode} % Pour faire figurer les table des matières, bibliographie et index % dans la table des matières % \begin{macrocode} @@ -1017,10 +1107,19 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \RequirePackage{babel}[2014/03/24] % \end{macrocode} +% Pour pouvoir afficher un sommaire c-à-d une table des matières réduite +% \begin{macrocode} +\RequirePackage{etoc}[2016/09/29]% +% \end{macrocode} % Pour tester la langue en cours % \begin{macrocode} \RequirePackage{iflang}[2007/11/11]% % \end{macrocode} +% Pour pouvoir assurer facilement les traductions de certains mots ou +% expressions clés du canevas de thèse (notamment dans les pages de titre) +% \begin{macrocode} +\RequirePackage{translator}[2010/06/12]% +% \end{macrocode} % Pour générer les dates (sans affichage du jour de la semaine). % \begin{macrocode} \RequirePackage{datetime}[2013/09/10]% @@ -1548,6 +1647,8 @@ This work consists of the file yathesis.dtx professor=false,% mcf=false,% mcf*=false,% + associateprofessor=false,% + associateprofessor*=false,% juniorresearcher=false,% juniorresearcher*=false,% seniorresearcher=false,% @@ -1596,12 +1697,20 @@ This work consists of the file yathesis.dtx }% }{% }% - \ifboolexpr{ bool {YAD@mcf} }{% - \yadsetup{corps=mcf,#1}% + \ifboolexpr{ + bool {YAD@mcf} + or + bool {YAD@associateprofessor} + }{% + \yadsetup{corps=associateprofessor,#1}% }{% }% - \ifboolexpr{ bool {YAD@mcf*} }{% - \yadsetup{corps=mcf*,#1}% + \ifboolexpr{ + bool {YAD@mcf*} + or + bool {YAD@associateprofessor*} + }{% + \yadsetup{corps=associateprofessor*,#1}% }{% }% \ifboolexpr{ bool {YAD@juniorresearcher} }{% @@ -2064,11 +2173,12 @@ This work consists of the file yathesis.dtx \small% \DTLifdbempty{YAD@staffs}{}{% \ifthenelse{\DTLrowcount{YAD@supervisors}>1}{% - \begin{tabular}[t]{>{\itshape}lll} - }{% - \begin{tabular}[t]{>{\itshape}l@{ }ll} - }% - \DTLforeach*{YAD@supervisors}{% + \newcolumntype{u}{>{\itshape}lll} + }{% + \newcolumntype{u}{>{\itshape}l@{ }ll} + }% + \begin{tabular}[t]{u} + \DTLforeach*{YAD@supervisors}{% \YAD@committeemember@lastname=lastname,% \YAD@committeemember@fistname=firstname,% \YAD@committeemember@role=role% @@ -2156,7 +2266,7 @@ This work consists of the file yathesis.dtx % Commande où seront stockés les logos (avec écrasement à chaque % nouveau logo). % \begin{macrocode} - \newcommand*\YAD@logo{}% +\newcommand*\YAD@logo{}% % \end{macrocode} % % On crée une commande créant des commandes. @@ -2519,6 +2629,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} \YAD@create@macro[entite]{pres} +\YAD@create@macro[entite]{comue} \YAD@create@macro[entite]{institute} \YAD@create@macro[entite]{coinstitute} \YAD@create@macro[entite]{company} @@ -2745,7 +2856,7 @@ This work consists of the file yathesis.dtx and bool {YAD@valid@year}% }{% \csdef{printdate}{% - \formatdate{\YAD@daydate}{\YAD@monthdate}{\YAD@yeardate}% + \formatdate{#1}{#2}{#3}% }% }{% \csdef{printdate}{% @@ -2766,7 +2877,7 @@ This work consists of the file yathesis.dtx and bool {YAD@valid@year}% }{% \csdef{printsubmissiondate}{% - \formatdate{\YAD@daydate}{\YAD@monthdate}{\YAD@yeardate}% + \formatdate{#1}{#2}{#3}% }% }{% \csdef{printsubmissiondate}{% @@ -2879,150 +2990,143 @@ This work consists of the file yathesis.dtx % \end{macrocode} % \end{macro} % -% \begin{macro}{\YAD@starttoc} -% On définit la commande "\YAD@starttoctoc", analogue à -% "\starttoc" fournie par \file{latex.ltx}, ne concernant que la -% table des matières ("toc"), qui génère mais n'importe pas le -% \File{.toc}. -% \begin{macrocode} -\newcommand{\YAD@starttoctoc}{% - \begingroup - \if@filesw - \expandafter\newwrite\csname tf@toc\endcsname - \immediate\openout \csname tf@toc\endcsname \jobname.toc\relax - \fi - \@nobreakfalse - \endgroup} -% \end{macrocode} -% On fait générer le \File{.toc}, en s'assurant que cela se fera -% après la commande "\shorttableofcontents" du \Package{shorttoc} -% utilisée dans la redéfinition de la commande "\tableofcontents" -% ci-après (obligation de ce package). -% \begin{macrocode} -\AtEndDocument{\YAD@starttoctoc} -% \end{macrocode} -% \end{macro} -% -% Redéfinition de la commande "\tableofcontents" de sorte qu'elle -% admette un argument optionnel permettant d'afficher une table des -% matières supplémentaire jusqu'à un niveau donné. Cette commande -% s'appuie sur le \Package{shorttoc}, avec hack de sorte qu'elle -% soit compatible avec (et exprimée en les même termes que) le -% \Package{tocvsec2}. On lui applique le style de page propre à la -% partie liminaire du document, notamment début de la prise en -% compte des chapitres et sections (numérotés ou pas) dans la table -% des matières. -% -% % Pour commencer, on doit faire en sorte que la commande -% % "\shorttableofcontents" utilise la définition originale de la commande -% % "\chapter" et pas celle qu'on a patchée dans le but de simplifier l'usage de -% % sa version étoilée. -% % \begin{macrocode} -% \xpatchcmd{\shorttableofcontents}{\chapter}{\YAD@ORI@chapter}{}{} -% % \end{macrocode} +% Redéfinition de la commande "\tableofcontents" de sorte qu'elle admette un +% argument optionnel permettant d'afficher une table des matières supplémentaire +% jusqu'à un niveau donné. Cette commande, qui s'appuie sur le \Package{etoc}, +% est exprimée en les même termes que le \Package{tocvsec2} (désormais non +% chargé). On lui applique le style de page propre à la partie liminaire du +% document, notamment début de la prise en compte des chapitres et sections +% (numérotés ou pas) dans la table des matières. % % \begin{macro}{\tableofcontents} % \begin{macrocode} -\let\YAD@ORI@setcounter\setcounter% -\let\YAD@ORI@tableofcontents\tableofcontents% -\newif\if@YAD@knownsect% + \AfterEndPreamble{% + \let\YAD@ORI@tableofcontents\tableofcontents% + \let\YAD@ORI@localtableofcontents\localtableofcontents% + \renewcommand{\tableofcontents}{% + \pagestyle{preliminary}% + \booltrue{YAD@tableofcontents@used}% + \cleardoublepage% + \YAD@phantomsection% + % \renewcommand{\contentsname}{\cmdKV@YAD@name} + \@ifnextchar[{\tableofcontents@YAD@with@argument}{\tableofcontents@YAD@without@argument}%] + }% + \newcommand\tableofcontents@YAD@without@argument{% + \YAD@globalstyle + \YAD@computenumwidths\relax% + \etoctableofcontents% + \etocsetnexttocdepth{\YAD@tocdepth} + \let\cmdKV@YAD@depth\YAD@tocdepth + \let\cmdKV@YAD@name\contentsname% + \YAD@localstyle % pour les local TOCs qui suivent + }% + \newcommand\tableofcontents@YAD@with@argument[1][]{% + \yadsetup{#1}% + \@ifundefined {Etoc@\cmdKV@YAD@depth @@} + {% + \YAD@ClassWarningNoLine{% + La valeur (`\cmdKV@YAD@depth') passee a la cle `depth'\MessageBreak% + en argument de la commande \string\tableofcontents\space n'est pas\MessageBreak% + un des niveaux de sectionnement connus :\MessageBreak% + `part', `chapter', `section', `subsection',\MessageBreak% + `subsubsection', `paragraph', `subparagraph', `none' et `all'.\MessageBreak% + Le niveau `\YAD@tocdepth' va etre utilise a la place% + }% + \let\cmdKV@YAD@depth\YAD@tocdepth + }{% + }% + \YAD@globalstyle + \etocsetnexttocdepth{\cmdKV@YAD@depth}% + \YAD@computenumwidths\relax% note: a effet global + \etocsetnexttocdepth{\cmdKV@YAD@depth}% on doit le répéter, car c'est un truc à un coup seulement + \etoctableofcontents% + \etocsettocdepth{\YAD@tocdepth} + \let\cmdKV@YAD@depth\YAD@tocdepth + \let\cmdKV@YAD@name\contentsname% + \YAD@localstyle % pour les local TOCs qui suivent + }% + }% % \end{macrocode} -% On redéfinit la commande "\shorttableofcontents" du \Package{shorttoc} en -% retirant "\@mkboth{\uppercase{#1}}{\uppercase{#1}}" qui provoque sinon une -% erreur au niveau de la commande "\tableofcontents" si elle est employée avec -% un argument optionnel. +% \end{macro} +% +% On crée la macro "\YAD@setsecnumdepth", analogue à "\@setseccntt@c" du \Package{tocvsec2}, qui fixe +% la valeur du compteur "secnumdepth" selon l'argument donné sous la forme du +% nom d'une commande de sectionnement % \begin{macrocode} -\def\shorttableofcontents#1#2{\bgroup\c@tocdepth=#2\@restonecolfalse - \if@tightshtoc - \parsep\z@ - \fi - \if@twocolumn\@restonecoltrue\onecolumn\fi - \chapter*{#1}% - \@startshorttoc{toc}\if@restonecol\twocolumn\fi\egroup} -\renewcommand{\tableofcontents}{% - \booltrue{YAD@tableofcontents@used}% - \cleardoublepage% - \YAD@phantomsection% - \let\cmdKV@YAD@name\contentsname% - \@ifnextchar[{\tableofcontents@YAD@with@argument}{\tableofcontents@YAD@without@argument}%] -}% -\newcommand\tableofcontents@YAD@without@argument{% - \YAD@ORI@tableofcontents% -}% -\newcommand\tableofcontents@YAD@with@argument[1][]{% - \yadsetup{#1}% - \renewcommand{\setcounter}[2]{}% - % - \ifthenelse{\equal{\cmdKV@YAD@depth}{none}}{% - \shorttableofcontents{\cmdKV@YAD@name}{-10}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{part}}{% - \shorttableofcontents{\cmdKV@YAD@name}{-1}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{chapter}}{% - \shorttableofcontents{\cmdKV@YAD@name}{0}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{section}}{% - \shorttableofcontents{\cmdKV@YAD@name}{1}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{subsection}}{% - \shorttableofcontents{\cmdKV@YAD@name}{2}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{subsubsection}}{% - \shorttableofcontents{\cmdKV@YAD@name}{3}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{paragraph}}{% - \shorttableofcontents{\cmdKV@YAD@name}{4}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{subparagraph}}{% - \shorttableofcontents{\cmdKV@YAD@name}{5}% - \@YAD@knownsecttrue% - }{% - }% - \ifthenelse{\equal{\cmdKV@YAD@depth}{all}}{% - \shorttableofcontents{\cmdKV@YAD@name}{100}% - \@YAD@knownsecttrue% - }{% - }% - \if@YAD@knownsect% - \else% - \shorttableofcontents{\cmdKV@YAD@name}{3}% - \YAD@ClassWarningNoLine{% - La valeur (`\cmdKV@YAD@depth') passee a la cle `depth'\MessageBreak% - en argument de la commande \string\tableofcontents\space n'est - pas\MessageBreak% - un des niveaux de sectionnement connus (`part', `chapter',\MessageBreak% - `section', `subsection', `subsubsection', `paragraph',\MessageBreak% - `subparagraph' et `all').\MessageBreak% - Le niveau `subsection' va etre utilise\MessageBreak% - a la place% - }% - \fi% - \let\setcounter\YAD@ORI@setcounter% - \resettocdepth*% -}% + \newcommand{\YAD@setsecnumdepth}[1]{% + \newif\if@YAD@knownsect% + \ifthenelse{\equal{#1}{none}}{% + \setcounter{secnumdepth}{-10}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{part}}{% + \setcounter{secnumdepth}{-1}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{chapter}}{% + \setcounter{secnumdepth}{0}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{section}}{% + \setcounter{secnumdepth}{1}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{subsection}}{% + \setcounter{secnumdepth}{2}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{subsubsection}}{% + \setcounter{secnumdepth}{3}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{paragraph}}{% + \setcounter{secnumdepth}{4}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{subparagraph}}{% + \setcounter{secnumdepth}{5}% + \@YAD@knownsecttrue% + }{% + }% + \ifthenelse{\equal{#1}{all}}{% + \setcounter{secnumdepth}{100}% + \@YAD@knownsecttrue% + }{% + }% + \if@YAD@knownsect% + \else% + \setcounter{secnumdepth}{3}% + \YAD@ClassWarningNoLine{% + La valeur (`\YAD@secnumdepth') passee a la cle `secnumdepth'\MessageBreak% + en argument de la commande \string\documentclass\space n'est + pas\MessageBreak% + un des niveaux de sectionnement connus (`part', `chapter',\MessageBreak% + `section', `subsection', `subsubsection', `paragraph',\MessageBreak% + `subparagraph', `none' et `all').\MessageBreak% + Le niveau `subsection' va etre utilise\MessageBreak% + a la place% + }% + \fi% + } % \end{macrocode} -% \end{macro} % % Globalement dans le document, la table des matières et la % numérotation des paragraphes vont jusqu'aux sous-sections % \begin{macrocode} -\AtBeginDocument{\maxtocdepth{\YAD@tocdepth}}% -\AtBeginDocument{\maxsecnumdepth{\YAD@secnumdepth}}% + \etocsettocdepth{\YAD@tocdepth} + \AtBeginDocument{% + % \yadsetup{#1}% + \YAD@setsecnumdepth{\YAD@secnumdepth} + } + % \renewcommand{\setcounter}[2]{}% + % % \end{macrocode} % % Définition des styles de pages (basées sur le \Package{titleps}) @@ -3059,11 +3163,13 @@ This work consists of the file yathesis.dtx }% % \end{macrocode} % \end{macro} -% Par défaut, rien n'est numéroté au début du document. +% Par défaut, au début du document rien n'est numéroté et les chapitres ne +% débutent pas par des tables des matières locales. % \begin{macrocode} \AtBeginDocument{% - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% \frontmatter% + \boolfalse{YAD@localtocs}% }% % \end{macrocode} % Définition du style de page des titres @@ -3075,7 +3181,7 @@ This work consists of the file yathesis.dtx % table des matières % \begin{macrocode} % \settocdepth{none}% - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% \ifdraft{% \newgeometry{centering,nomarginpar,bottom=1cm,top=1cm,headheight=\YAD@max@logoheight,margin=0.5cm,tmargin=\YAD@max@logoheight+1cm}% }{% @@ -3090,6 +3196,11 @@ This work consists of the file yathesis.dtx \booltrue{YAD@logo@before}% }{% }% + \ifdef{\printcomuelogo}{% + \printcomuelogo% + \booltrue{YAD@logo@before}% + }{% + }% \ifdef{\printinstitutelogo}{% \ifbool{YAD@logo@before}{% \hspace{\stretch{1}}% @@ -3134,8 +3245,7 @@ This work consists of the file yathesis.dtx % numéroté, les titres courants sont absents et la profondeur de la table des % matières est fixée à son niveau par défaut (sous-sections) % \begin{macrocode} - \setsecnumdepth{none}% - \resettocdepth*% + \setcounter{secnumdepth}{-10}% \YAD@setfoot% }% % \end{macrocode} @@ -3163,8 +3273,7 @@ This work consists of the file yathesis.dtx % numéroté et la profondeur de la table des matières est fixée à son % niveau par défaut (sous-sections) % \begin{macrocode} - \setsecnumdepth{none}% - \resettocdepth*% + \setcounter{secnumdepth}{-10}% \YAD@setfoot% }% % \end{macrocode} @@ -3191,8 +3300,7 @@ This work consists of the file yathesis.dtx % numéroté et la profondeur de la table des matières est fixée à son % niveau par défaut (sous-sections) % \begin{macrocode} - \setsecnumdepth{none}% - \resettocdepth*% + \setcounter{secnumdepth}{-10}% \YAD@setfoot% }% % \end{macrocode} @@ -3227,16 +3335,21 @@ This work consists of the file yathesis.dtx % Dans la partie principale, la profondeur de la table des matières % est fixée à son niveau par défaut (sous-sections). % \begin{macrocode} - \resettocdepth*% - \setsecnumdepth{\YAD@secnumdepth}% + \YAD@setsecnumdepth{\YAD@secnumdepth}% \YAD@setfoot% }% % \end{macrocode} % Extension de la commande "\mainmatter" de sorte qu'elle applique le style de -% page "mainmatter". +% page "mainmatter" et que les chapitres qui s'y trouvent débutent +% automatiquement par des tables des matières locales. % \begin{macrocode} \xapptocmd{\mainmatter}{% \booltrue{YAD@mainmatter@used}% + \ifbool{YAD@localtocs@classoption}% + {% + \booltrue{YAD@localtocs}% + }{% + } \pagestyle{mainmatter}% }{}{}% % \end{macrocode} @@ -3299,7 +3412,7 @@ This work consists of the file yathesis.dtx % son niveau par défaut (sous-sections) % \begin{macrocode} \YAD@phantomsection% - \setsecnumdepth{\YAD@secnumdepth}% + \YAD@setsecnumdepth{\YAD@secnumdepth}% \YAD@bookmarksetup{startatroot}% \YAD@setfoot% }% @@ -3320,7 +3433,7 @@ This work consists of the file yathesis.dtx % Dans la partie biblio, aucun élément de structuration n'est % numéroté % \begin{macrocode} - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% % \end{macrocode} % \begin{macrocode} \singlespacing% @@ -3364,17 +3477,19 @@ This work consists of the file yathesis.dtx % Dans la partie finale, rien n'est numéroté % \begin{macrocode} \YAD@phantomsection% - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% \YAD@bookmarksetup{startatroot}% \YAD@setfoot% }% % \end{macrocode} % Extension de la commande "\backmatter" de sorte qu'elle applique le style de -% page "backmatter". +% page "backmatter" et que les chapitres qui s'y trouvent ne débutent pas par +% des tables des matières locales. % \begin{macro}{\backmatter} % \begin{macrocode} \xapptocmd{\backmatter}{% \pagestyle{backmatter}% + \boolfalse{YAD@localtocs}% }{}{}% % \end{macrocode} % \end{macro} @@ -3396,7 +3511,7 @@ This work consists of the file yathesis.dtx % Dans la partie glossaire, aucun élément de structuration n'est % numéroté % \begin{macrocode} - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% \YAD@setfoot% }% % \end{macrocode} @@ -3418,7 +3533,7 @@ This work consists of the file yathesis.dtx % Dans la partie glossaire, aucun élément de structuration n'est % numéroté % \begin{macrocode} - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% \YAD@setfoot% }% % \end{macrocode} @@ -3437,10 +3552,10 @@ This work consists of the file yathesis.dtx % Dans la partie index, aucun élément de structuration n'est % numéroté % \begin{macrocode} - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% \cleardoublepage% \YAD@phantomsection% - \setsecnumdepth{\YAD@secnumdepth}% + \YAD@setsecnumdepth{\YAD@secnumdepth}% \YAD@bookmarksetup{startatroot}% \YAD@setfoot% }% @@ -3466,13 +3581,12 @@ This work consists of the file yathesis.dtx % Dans la partie \textquote{4\ieme{} de couverture}, aucun élément % de structuration n'est numéroté % \begin{macrocode} - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% }% % \end{macrocode} % % \begin{macro}{\printlaboratory} % \begin{macrocode} -% \newcommand*{\printlaboratory}{\@ifstar{\@tempswatrue\YAD@laboratory@name@temp}{\@tempswafalse\YAD@laboratory@name@temp}}% \newcommand*{\printlaboratory}[2][]{% \YAD@ifemptyorundef{#2}{% \YAD@reach@file{\YAD@generic@argument@translate{laboratory}}% @@ -3624,24 +3738,27 @@ This work consists of the file yathesis.dtx \noindent% \ifcsdef{printordernumber}{% % \end{macrocode} -% On n'affiche le numéro d'ordre de la thèse que sur la 1\iere{} page du -% document : 1\iere{} de couverture s'il y a, page de titre en langue -% principale sinon. +% S'il est demandé, le numéro d'ordre de la thèse n'est affiché que sur la +% 1\iere{} page du document : 1\iere{} de couverture s'il y a, page de titre en +% langue principale sinon. % \begin{macrocode} + \newcommand\YAD@printedordernumber{% + \itshape% + \sffamily% + \YAD@translation{ordernumber}% + \IfLanguageName{french}{% + \FBcolonspace% + }{% + }: \printordernumber% + } + \ifdraft{}{\vspace*{\stretch{1}}}% \ifboolexpr{% bool {YAD@cover@page}% or (bool {YAD@nofrontcover} and test {\IfLanguageName{\YAD@mainlanguage}})% }{% - \ifdraft{}{\vspace*{\stretch{1}}}% % \vspace*{\stretch{1}}% \raggedleft{% - \itshape% - \sffamily% - \YAD@translation{ordernumber}% - \IfLanguageName{french}{% - \FBcolonspace% - }{% - }: \printordernumber% + \YAD@printedordernumber% }% }{% }% @@ -4815,6 +4932,267 @@ This work consists of the file yathesis.dtx }% % \end{macrocode} % \end{environment} +% +% +%\section{Commandes et styles pour les tables des matières locales} +% +% Les commandes et styles suivants, ainsi que toute la machinerie permettant de +% faire débuter les chapitres par leurs tables des matières locales s'appuient +% sur le \pkg{etoc} de Jean-François Burnol (qui a aimablement fourni le code +% suivant). +% \begin{macrocode} +% it will be easy to globally shift the TOC horizontally if needed +\def\YAD@leftmargin {0pt} +\def\YAD@rightmargin {2.55em}% like LaTeX’s \@tocrmarg +% \end{macrocode} +% this is for dotted leaders +% \begin{macrocode} +\newbox\YAD@leaderbox +\def\YAD@leaderboxwidth {0.7777em}% about like what standard classes do +% \end{macrocode} +% vertical spacing +% \begin{macrocode} +\def\YAD@verysmallvskip {0pt plus .2pt} +\def\YAD@globalmedvskip {1em plus 1pt} +\def\YAD@localmedvskip {.25em plus .25pt} +\def\YAD@bigvskip {2.25em plus 1pt} +% \end{macrocode} +% the ‘‘numwidths’’ for typesetting the numbering of division units. +% I don’t recall exactly how (and for which fonts) these figures were chosen. +% They quickly prove too small if using Roman numerals (as do too the book +% class defaults even though they are a bit larger). +% \begin{macrocode} +\def\YAD@numwidthB {1.5em} % chapter +\def\YAD@numwidthC {2.278em}% section, I think default is 2.3em +\def\YAD@numwidthD {3.056em}% analog in standard class is 3.2em +\def\YAD@numwidthE {3.833em}% analog in standard class is 4.1em +\def\YAD@numwidthF {4.611em}% analog in standard class is 5em +\def\YAD@numwidthG {5.389em}% analog in standard class is 6em +% \end{macrocode} +% +% \begin{macrocode} +\newcommand\YAD@setlinestyle [2]{% #1= unit, #2= numwidth as macro + \etocsetstyle{#1} + {\advance\leftskip#2\relax} + {\vskip \YAD@verysmallvskip\relax + \leavevmode + {\interlinepenalty\@M + \etocifnumbered + {\llap{\makebox[#2][l]{\etocnumber}}}{\advance\leftskip-#2\relax}% + \etocname + \nobreak\leaders \copy\YAD@leaderbox + \hfil\makebox[-\parfillskip][r]{\etocpage}% + \par }% + } + {} + {\advance\leftskip-#2\relax}% +} +% \end{macrocode} +% \begin{macrocode} +\newcommand\YAD@globalstyle {% encapsule le style pour les global TOCs + \etocsettocstyle {\if@twocolumn \@restonecoltrue \onecolumn \else + \@restonecolfalse \fi + \parindent\z@ \leftskip\z@skip \rightskip \z@skip + \setbox\YAD@leaderbox\hbox to \YAD@leaderboxwidth{\hss.\hss}% + \chapter *[\cmdKV@YAD@name]{\noindent\kern\YAD@leftmargin\relax % uses "pt"... + \cmdKV@YAD@name% + }% + \rightskip \YAD@rightmargin\relax + \parfillskip -\rightskip % or a smaller value if desired + \leftskip \YAD@leftmargin \relax } {\if@restonecol \twocolumn + \fi\cleardoublepage}% + % + \etocsetstyle{part} {} {\addpenalty {-\@highpenalty}% + \addvspace \YAD@bigvskip \leavevmode {\large + \bfseries % use a group to limit font change + \interlinepenalty\@M \etocifnumbered{\etocnumber\hspace{1em}}{}% + \etocname \nobreak\hfil\makebox[-\parfillskip][r]{\etocpage}}\par + \nobreak } {} {} + % + \etocsetstyle{chapter} {\advance\leftskip\YAD@numwidthB\relax} {\addpenalty + {-\@highpenalty }% + \vskip \YAD@globalmedvskip\relax \leavevmode {\interlinepenalty\@M \etocifnumbered + {\llap{\makebox[\YAD@numwidthB][l]{\bfseries\etocnumber}}} + {\advance\leftskip-\YAD@numwidthB\relax}% + \bfseries\etocname + \nobreak\hfil\makebox[-\parfillskip][r]{\etocpage}\par }% + \penalty \@highpenalty } {} {\advance\leftskip-\YAD@numwidthB\relax} + % + \YAD@setlinestyle {section}{\YAD@numwidthC}% + \YAD@setlinestyle {subsection}{\YAD@numwidthD}% + \YAD@setlinestyle {subsubsection}{\YAD@numwidthE}% + \YAD@setlinestyle {paragraph}{\YAD@numwidthF}% + \YAD@setlinestyle {subparagraph}{\YAD@numwidthG}% +} +% \end{macrocode} +% style pour les local TOCs +% \begin{macrocode} +\newcommand\YAD@localstyle {% + \etocsettocstyle {% + \if@twocolumn + \@restonecoltrue + \onecolumn + \else + \@restonecolfalse + \fi% + \setbox\YAD@leaderbox\hbox to \YAD@leaderboxwidth{\hss.\hss}% + \parindent\z@ + \dimen@ 2.25em % soon to be \leftskip + \section *{\kern\dimen@ % \dimen@ works here by sheer luck + % \contentsname% + % \@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}% + \large\textbf{\translate{lbl-localtocname}}% + }% + \parskip \z@skip \vspace{-1.25\baselineskip}% somewhat ad hoc + \leftskip 2.25em \rightskip 4.5em \advance\rightskip-\YAD@rightmargin\relax + \leavevmode\leaders\hrule\@height\p@\hfill\kern\z@\par + \rightskip 4.5em + \parfillskip -\YAD@rightmargin\relax% + }{% + \nobreak\vskip-.5\baselineskip + \leavevmode\leaders\hrule\@height\p@\hfill\kern\z@\par + \bigskip \if@restonecol \twocolumn \fi + } + % % + \etocsetstyle{section} {% + \advance\leftskip\YAD@numwidthC\relax% + } {% + \addpenalty + \@secpenalty \etociffirst{}{\addvspace{\YAD@localmedvskip}}% + \leavevmode {% + \interlinepenalty\@M \bfseries% + \etocifnumbered + {% + \llap{% + \makebox[\YAD@numwidthC][l]{\etocnumber}% + }% + } + {% + \advance\leftskip-\YAD@numwidthC% + }% + \etocname\nobreak\hfil\makebox[-\parfillskip][r]{\etocpage}\par% + }% + \penalty \@highpenalty% + } + {} {% + \advance\leftskip-\YAD@numwidthC\relax% + } + % % + \YAD@setlinestyle {subsection}{\YAD@numwidthD}% + \YAD@setlinestyle {subsubsection}{\YAD@numwidthE}% + \YAD@setlinestyle {paragraph}{\YAD@numwidthF}% + \YAD@setlinestyle {subparagraph}{\YAD@numwidthG}% +} +% \end{macrocode} +% \begin{macrocode} +\newcommand*\YAD@computenumwidths@ [2] {% #1 pour `etoc' ou `local', #2=pour le + % \kern + \begingroup + \def\YAD@numwidthB {0pt}% + \def\YAD@numwidthC {0pt}% + \def\YAD@numwidthD {0pt}% + \def\YAD@numwidthE {0pt}% + \def\YAD@numwidthF {0pt}% + \def\YAD@numwidthG {0pt}% + \etocsetstyle{part}{}{}{}{}% + \etocsetstyle{chapter}{} + {\setbox0\hbox{\bfseries\etocthenumber\kern#2}} + {\ifdim\wd0>\YAD@numwidthB\edef\YAD@numwidthB{\the\wd0}\fi}{}% + \etocsetstyle{section}{} + {\setbox0\hbox{\bfseries\etocthenumber\kern#2}} + {\ifdim\wd0>\YAD@numwidthC\edef\YAD@numwidthC{\the\wd0}\fi}{}% + \etocsetstyle{subsection}{} + {\setbox0\hbox{\etocthenumber\kern#2}} + {\ifdim\wd0>\YAD@numwidthD\edef\YAD@numwidthD{\the\wd0}\fi}{}% + \etocsetstyle{subsubsection}{} + {\setbox0\hbox{\etocthenumber\kern#2}} + {\ifdim\wd0>\YAD@numwidthE\edef\YAD@numwidthE{\the\wd0}\fi}{}% + \etocsetstyle{paragraph}{} + {\setbox0\hbox{\etocthenumber\kern#2}} + {\ifdim\wd0>\YAD@numwidthF\edef\YAD@numwidthF{\the\wd0}\fi}{}% + \etocsetstyle{subparagraph}{} + {\setbox0\hbox{\etocthenumber\kern#2}} + {\ifdim\wd0>\YAD@numwidthG\edef\YAD@numwidthG{\the\wd0}\fi}{}% + % + \etocsettocstyle{} + {\global\let\YAD@numwidthB\YAD@numwidthB + \global\let\YAD@numwidthC\YAD@numwidthC + \global\let\YAD@numwidthD\YAD@numwidthD + \global\let\YAD@numwidthE\YAD@numwidthE + \global\let\YAD@numwidthF\YAD@numwidthF + \global\let\YAD@numwidthG\YAD@numwidthG}% + \etocnopar + \csname YAD@ORI@#1tableofcontents\endcsname + \endgroup +}% +% \end{macrocode} +% \begin{macrocode} +\newcommand*\YAD@computenumwidths [1][0.5em]{% + \YAD@computenumwidths@ {}{#1}% +} +\newcommand*\YAD@computelocalnumwidths [1][0.5em]{% + \YAD@computenumwidths@ {local}{#1}% +} +% \end{macrocode} +% +% \section{Machinerie pour les tables des matières locales} +% +% Les tables des matières locales ne sont pas imprimées si elles sont vides. +% \begin{macrocode} +\etocchecksemptiness +% \end{macrocode} +% +% Ajout automatique de tables des matières locales. +% \begin{macrocode} +\newcommand{\YAD@default@localtoc}{% + \ifbool{YAD@localtocs}% + {% + \bgroup + \YAD@localstyle% + \YAD@computelocalnumwidths\relax% + \@ifundefined {Etoc@\YAD@localtocsdepth @@} + {% + }{% + \etocsetnexttocdepth{\YAD@localtocsdepth}% + } + \localtableofcontents% + \YAD@globalstyle + \egroup + }{% + }% +} +\newcommand{\YAD@localtoc}{\YAD@default@localtoc} +\newcommand{\stoplocaltocs}{% + \boolfalse{YAD@localtocs}% +} +\newcommand{\startlocaltocs}{% + \booltrue{YAD@localtocs}% +} +\newcommand{\nextwithoutlocaltoc}{% + \renewcommand{\YAD@localtoc}{}% +} +\newcommand{\nextwithlocaltoc}{% + \renewcommand{\YAD@localtoc}{\YAD@default@localtoc}% + \booltrue{YAD@localtocs}% + \booltrue{YAD@nextwithlocaltoc}% +} +\apptocmd{\@makechapterhead}{% + \ifbool{YAD@localtocs}% + {% + \YAD@localtoc% + \renewcommand{\YAD@localtoc}{\YAD@default@localtoc}% + \ifbool{YAD@nextwithlocaltoc}% + {% + \boolfalse{YAD@localtocs}% + \boolfalse{YAD@nextwithlocaltoc}% + % \boolfalse{YAD@localtocs@classoption}% + }{% + } + }{% + }% +}{}{}% +% \end{macrocode} +% \end{environment} % On redéfinit la commande "\chapter" de sorte que, dans un chapitre non % numéroté ("\chapter*") : % \begin{itemize} @@ -4824,33 +5202,20 @@ This work consists of the file yathesis.dtx % "\addcontentsline{toc}{...}{...}" ; % \item les titres courants soient corrects (par défaut, les titres courants % des chapitres et sections non numérotés sont ceux des chapitre et section -% numérotés précédents). +% numérotés les précédant). % \end{itemize} -% Pour ce faire, on recourt aux bascules "\setsecnumdepth{none}" and -% "\resetsecnumdepth" du \Package{tocvsec2}. -% % Mais, avant cela, on redéfinit la -% % macro "\resetsecnumdepth" qui souffre de \enquote{spurious spaces} dans les -% % versions antérieures à celles en date du 2014/03/10. -% % \begin{macrocode} -% \@ifpackagelater{tocvsec2}{2014/03/10}{% -% }{% -% \renewcommand\resetsecnumdepth{% -% \@ifstar{% -% \setcounter{secnumdepth}{\value{max@secnumdepth}}% -% \edef\stack@secnumdepth{\the\c@secnumdepth\relax}% -% }{% -% \ifx\stack@secnumdepth\@empty% -% \PackageWarning{tocvsec2}{There is no previous value for secnumdepth}% -% \else% -% \afterassignment\gobble@secnumdepth% -% \expandafter\c@secnumdepth\expandafter\numexpr\stack@secnumdepth\@nil% -% \fi% -% }% -% }% -% }% +% \begin{macrocode} \let\YAD@ORI@chapter\chapter% \AfterPreamble{% delay the redefinition when titlesec has done its own - \renewcommand\chapter{% + \renewcommand\chapter + {% + \ifbool{YAD@localbibs}{% + \let\YAD@ORI@blx@warn@bibempty\blx@warn@bibempty% + \def\blx@warn@bibempty{}% + \YAD@printbibliography@ORI[segment=\therefsegment,heading=YAD@localbibs@heading]% + \let\blx@warn@bibempty\YAD@ORI@blx@warn@bibempty% + }{% + } \cleardoublepage% \YAD@phantomsection% \ifbool{YAD@output@paper}{% @@ -4860,42 +5225,37 @@ This work consists of the file yathesis.dtx \@ifstar{\YAD@starred@chapter}{\YAD@unstarred@chapter}% }% \newcommand{\YAD@starred@chapter}{% - \setsecnumdepth{none}% + \setcounter{secnumdepth}{-10}% \YAD@ORI@chapter% }% - \newcommand{\YAD@unstarred@chapter}{% % \end{macrocode} % La numérotation des chapitres non étoilés au niveau initial % ("\resetsecnumdepth*") n'est activée qu'à partir de la partie principale % ("\mainmatter"), sans quoi les (sous-)sections de la partie "\frontmatter" % sont numérotées, alors que rien ne doit l'être dans cette partie. % \begin{macrocode} + \newcommand{\YAD@unstarred@chapter}{% \if@mainmatter% - \resetsecnumdepth*% + \YAD@setsecnumdepth{\YAD@secnumdepth} \fi% \YAD@ORI@chapter% }% - % \newcommand{\YAD@arg@chapter}[2][]{% - % \ifthenelse{\isempty{#1}}{% - % \YAD@ORI@chapter{#2}% - % \def\chaptertitle{#2}% - % }{% - % \YAD@ORI@chapter[#1]{#2}% - % \def\chaptertitle{#1}% - % }% - % }% - % \newcommand{\YAD@noarg@chapter}[1]{% - % \YAD@ORI@chapter{#1}% - % \def\chaptertitle{#1}% - % }% % \end{macrocode} % On ne veut pas utiliser cette nouvelle définition de "\chapter*" pour % "\tableofcontents" et les listes similaires. % \begin{macrocode} - % \xpatchcmd{\tableofcontents}{\chapter}{\YAD@ORI@chapter}{}{}% - % \xpatchcmd{\shorttableofcontents}{\chapter}{\YAD@ORI@chapter}{}{}% - % \xpatchcmd{\listoftables}{\chapter}{\YAD@ORI@chapter}{}{}% - % \xpatchcmd{\listoffigures}{\chapter}{\YAD@ORI@chapter}{}{}% +\xpretocmd{\tableofcontents}{\renewcommand{\YAD@localtoc}{}}{}{}% +\xapptocmd{\tableofcontents}{\renewcommand{\YAD@localtoc}{\YAD@default@localtoc}}{}{}% +\xpretocmd{\listoftables}{\renewcommand{\YAD@localtoc}{}}{}{}% +\xapptocmd{\listoftables}{\renewcommand{\YAD@localtoc}{\YAD@default@localtoc}}{}{}% +\xpretocmd{\listoffigures}{\renewcommand{\YAD@localtoc}{}}{}{}% +\xapptocmd{\listoffigures}{\renewcommand{\YAD@localtoc}{\YAD@default@localtoc}}{}{}% +\xpretocmd{\printbibliography}{\renewcommand{\YAD@localtoc}{}}{}{}% +\xapptocmd{\printbibliography}{\renewcommand{\YAD@localtoc}{\YAD@default@localtoc}}{}{}% +\xpretocmd{\printglossary}{\renewcommand{\YAD@localtoc}{}}{}{}% +\xapptocmd{\printglossary}{\renewcommand{\YAD@localtoc}{\YAD@default@localtoc}}{}{}% +\xpretocmd{\printindex}{\renewcommand{\YAD@localtoc}{}}{}{}% +\xapptocmd{\printindex}{\renewcommand{\YAD@localtoc}{\YAD@default@localtoc}}{}{}% % \end{macrocode} % Si le \Package{floatrow} est chargé, on doit aussi ne pas utiliser cette % nouvelle définition de "\chapter*" pour les listes de flottants personnalisés @@ -4920,7 +5280,7 @@ This work consists of the file yathesis.dtx % \end{macrocode} % Les parties sont par défaut numérotées. % \begin{macrocode} -\xpretocmd{\part}{\setsecnumdepth{\YAD@secnumdepth}}{}{}% +\xpretocmd{\part}{\YAD@setsecnumdepth{\YAD@secnumdepth}}{}{}% % \end{macrocode} % % % On crée une commande créant des chapitres. Celle-ci a un argument optionnel, @@ -5057,7 +5417,7 @@ This work consists of the file yathesis.dtx % % à son niveau par défaut (par défaut sous-sections). % % \begin{macrocode} % \newenvironment{introduction}[1][\YAD@trintroduction]{% -% \setsecnumdepth{\YAD@secnumdepth}% +% \YAD@setsecnumdepth{\YAD@secnumdepth}% % \YAD@introduction@begin[#1]% % \Collect@Body\YAD@introduction% % }{% @@ -5078,7 +5438,7 @@ This work consists of the file yathesis.dtx % % avant qu'elle ne commence. % % \begin{macrocode} % \newenvironment{introduction*}[1][\YAD@trintroduction]{% -% \setsecnumdepth{none}% +% \setcounter{secnumdepth}{-10}% % \YAD@introduction@begin[#1]% % \Collect@Body\YAD@introduction% % }{% @@ -5093,7 +5453,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} % \BeforeBeginEnvironment{introduction*}{\pagestyle{mainmatter}} % \AfterEndEnvironment{introduction*}{% -% \setsecnumdepth{\YAD@secnumdepth}% +% \YAD@setsecnumdepth{\YAD@secnumdepth}% % }% % % \end{macrocode} % % @@ -5163,7 +5523,7 @@ This work consists of the file yathesis.dtx % % Environnement de conclusion générale numérotée. % % \begin{macrocode} % \newenvironment{conclusion}[1][\YAD@trconclusion]{% -% \setsecnumdepth{\YAD@secnumdepth}% +% \YAD@setsecnumdepth{\YAD@secnumdepth}% % \YAD@conclusion@begin[#1]% % \Collect@Body\YAD@conclusion% % }{% @@ -5178,7 +5538,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} % \BeforeBeginEnvironment{conclusion}{% % \YAD@phantomsection% -% \setsecnumdepth{\YAD@secnumdepth}% +% \YAD@setsecnumdepth{\YAD@secnumdepth}% % \YAD@bookmarksetup{startatroot}% % }% % \AfterEndEnvironment{conclusion}{\appendix} @@ -5190,7 +5550,7 @@ This work consists of the file yathesis.dtx % % chargé avant qu'elle ne commence. % % \begin{macrocode} % \newenvironment{conclusion*}[1][\YAD@trconclusion]{% -% \setsecnumdepth{none}% +% \setcounter{secnumdepth}{-10}% % \YAD@conclusion@begin[#1]% % \Collect@Body\YAD@conclusion% % }{% @@ -5205,12 +5565,12 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} % \BeforeBeginEnvironment{conclusion*}{% % \YAD@phantomsection% -% \setsecnumdepth{\YAD@secnumdepth}% +% \YAD@setsecnumdepth{\YAD@secnumdepth}% % \YAD@bookmarksetup{startatroot}% % }% % \AfterEndEnvironment{conclusion*}{% % \appendix% -% \setsecnumdepth{\YAD@secnumdepth}% +% \YAD@setsecnumdepth{\YAD@secnumdepth}% % }% % % \end{macrocode} % % @@ -5273,12 +5633,17 @@ This work consists of the file yathesis.dtx % \end{macrocode} % % Réglage nécessaire sans quoi le titre courant \textquote{BIBLIOGRAPHIE} -% apparaît en trop en entête et en pied de page +% apparaît en trop en entête et en pied de page (see \url{http://tex.stackexchange.com/q/89884/18401}). % \begin{macrocode} \AtEndPreamble{% \@ifpackageloaded{biblatex}{% \defbibheading{bibintoc}[\bibname]{\chapter*{#1}}% - \defbibheading{subbibintoc}[\bibname]{\section{#1}}% + % \defbibheading{subbibintoc}[\bibname]{\section*{#1}}% + \defbibheading{YAD@localbibs@heading}[\translate{lbl-localbibname}]{% + % \YAD@setsecnumdepth{none}% + \section*{#1}% + % \YAD@setsecnumdepth{\YAD@secnumdepth}% + }% % \end{macrocode} % % Références bibliographiques des citations formelles (cf. \Package{biblatex}): @@ -5549,6 +5914,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} \expression{meta-logopres}{logo PRES}{logo PRES} +\expression{meta-logocomue}{logo ComUE}{logo ComUE} \expression{meta-logoinstitute}{logo de l'institut}{logo de l'institut} \expression{meta-institute}{institut principal}{institut principal} \expression{meta-coinstitute}{institut de cotutelle}{institut de cotutelle} @@ -5601,6 +5967,7 @@ This work consists of the file yathesis.dtx \expression{phone}{\Telefon}{\Telefon}% \expression{fax}{\Fax}{\Fax}% \expression{caution}{Avertissement}{Caution}% +\expression{localbibname}{Bibliographie du pr\'esent chapitre}{Bibliography of the current chapter}% \expression{draft}{brouillon}{draft}% \expression{prepared-at}{Cette th\`ese a \'et\'e pr\'epar\'ee au}{This thesis has been prepared at}% @@ -5644,8 +6011,10 @@ This work consists of the file yathesis.dtx \expression{guests}{Invit\'e}{Guest}% \expression{guests-pl}{Invit\'es}{Guests}% % \expression{introduction}{Introduction}{Introduction}% -\expression{mcf}{\textsc{mcf}}{Lecturer}% -\expression{mcf*}{\textsc{mcf} \textsc{hdr}}{\textsc{hdr} Lecturer}% +% \expression{mcf}{\textsc{mcf}}{Associate Professor}% +% \expression{mcf*}{\textsc{mcf} \textsc{hdr}}{\textsc{hdr} Associate Professor}% +\expression{associateprofessor}{\textsc{mcf}}{Associate Professor}% +\expression{associateprofessor*}{\textsc{mcf} \textsc{hdr}}{\textsc{hdr} Associate Professor}% \expression{keywords}{Mots cl\'es}{Keywords}% \expression{ordernumber}{Num\'ero d'ordre}{Order Number}% % \expression{preface}{Pr\'eface}{Preface}% @@ -5656,6 +6025,7 @@ This work consists of the file yathesis.dtx \expression{referees}{Rapporteur}{Referee}% \expression{referees-pl}{Rapporteurs}{Referees}% \expression{website}{Site}{Web Site}% +\expression{localtocname}{Sommaire du pr\'esent chapitre}{Outline of the current chapter}% \expression{defendedon}{Soutenue le}{Defended on}% \expression{speciality}{Sp\'ecialit\'e}{Speciality}% \expression{supervisedby}{Th\`ese dirig\'ee par}{Thesis supervised by}% @@ -5691,7 +6061,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} # mode: yathesis.cls -# denisbitouze, 16.05.2014 +# denisbitouze, 30.10.2016 # #include:class-book #include:latex-document @@ -5713,14 +6083,12 @@ This work consists of the file yathesis.dtx #include:xstring #include:textcase #include:translator -#include:fixltx2e #include:iftex #include:epigraph #include:tcolorbox #include:marvosym #include:setspace -#include:shorttoc -#include:tocvsec2 +#include:etoc #include:tocbibind #include:nonumonpart #include:xcolor @@ -5747,6 +6115,10 @@ sepcorpaffilfrench= sepcorpaffilenglish= version=#inprogress,inprogress*,submitted,submitted*,final,draft output=#screen,paper,paper* +localtocs +localtocs/depth=#section,subsection,subsubsection,paragraph,subparagraph +localbibs +localbibs* 10pt 11pt 12pt @@ -5804,6 +6176,7 @@ datetime # # Institute and entities \pres{%<nom du PRES%>}#n +\comue{%<nom de la ComUE%>}#n \institute{%<nom de l'institut%>}#n \coinstitute{%<nom de l'institut de cotutelle%>}#n \company{%<nom de l'entreprise%>}#n @@ -5811,6 +6184,7 @@ datetime \laboratory{%<nom du laboratoire%>}{adresse du laboratoire%>}#n # \pres[%<précision(s)%>]{%<nom du PRES%>}#n +\comue[%<précision(s)%>]{%<nom de la ComUE%>}#n \institute[%<précision(s)%>]{%<nom de l'institut%>}#n \coinstitute[%<précision(s)%>]{%<nom de l'institut de cotutelle%>}#n \company[%<précision(s)%>]{%<nom de l'entreprise%>}#n @@ -5822,6 +6196,11 @@ logo= logoheight= url= #endkeyvals +#keyvals:\comue +logo= +logoheight= +url= +#endkeyvals #keyvals:\institute logo= logoheight= @@ -5875,6 +6254,8 @@ professor seniorresearcher mcf mcf* +associateprofessor +associateprofessor* juniorresearcher juniorresearcher* #endkeyvals @@ -5884,6 +6265,8 @@ professor seniorresearcher mcf mcf* +associateprofessor +associateprofessor* juniorresearcher juniorresearcher* #endkeyvals @@ -5893,6 +6276,8 @@ professor seniorresearcher mcf mcf* +associateprofessor +associateprofessor* juniorresearcher juniorresearcher* #endkeyvals @@ -5902,6 +6287,8 @@ professor seniorresearcher mcf mcf* +associateprofessor +associateprofessor* juniorresearcher juniorresearcher* #endkeyvals @@ -5911,6 +6298,8 @@ professor seniorresearcher mcf mcf* +associateprofessor +associateprofessor* juniorresearcher juniorresearcher* #endkeyvals @@ -5920,6 +6309,8 @@ professor seniorresearcher mcf mcf* +associateprofessor +associateprofessor* juniorresearcher juniorresearcher* #endkeyvals @@ -5929,6 +6320,8 @@ professor seniorresearcher mcf mcf* +associateprofessor +associateprofessor* juniorresearcher juniorresearcher* #endkeyvals @@ -6031,42 +6424,6 @@ name= % \end{macrocode} % % \begin{macrocode} -%<*samples-templates-latexmkrc> -% \end{macrocode} -% -% \begin{macrocode} -$pdf_mode = 1; - -$bibtex_use = 1; -$bibtex = 'biber %O %B'; - -add_cus_dep('glo', 'gls', 0, 'makeglossaries'); -add_cus_dep('glo2', 'gls2', 0, 'makeglossaries'); -add_cus_dep('acn', 'acr', 0, 'makeglossaries'); -add_cus_dep('slo', 'sls', 0, 'makeglossaries'); -sub makeglossaries{ - system( "makeglossaries \"$_[0]\"" ); -} - -$makeindex = 'texindy -L french'; - -add_cus_dep('idx', 'ind', 0, 'texindy'); -sub texindy{ - system("texindy -L french \"$_[0].idx\""); -} - -@generated_exts = qw(aux idx ind lo* out toc acn acr alg bbl bcf fls gl* ist -run.xml sbl* sl* sym* xdy unq synctex.gz mw *~ - -$clean_ext = 'synctex.gz synctex.gz(busy) run.xml tex.bak bbl bcf fdb_latexmk run tdo listing' -); -% \end{macrocode} -% -% \begin{macrocode} -%</samples-templates-latexmkrc> -% \end{macrocode} -% -% \begin{macrocode} %<*demopkg> % \end{macrocode} % @@ -6078,22 +6435,19 @@ $clean_ext = 'synctex.gz synctex.gz(busy) run.xml tex.bak bbl bcf fdb_latexmk ru \RequirePackage{xifthen} \RequirePackage[user,abspage]{zref} % -\AtEndPreamble{% - \xpretocmd{\tableofcontents@YAD@with@argument}{\cleardoublepage\zlabel{tableofcontents-withargument}}{}{} - \xpretocmd{\tableofcontents@YAD@without@argument}{\cleardoublepage\zlabel{tableofcontents-withoutargument}}{}{} -} -% -\AfterEndPreamble{% - \xpretocmd{\maketitle}{\zlabel{fr-title}}{}{}% - \xpretocmd{\makedisclaimer}{\cleardoublepage\zlabel{disclaimer}}{}{} - \xpretocmd{\makekeywords}{\cleardoublepage\zlabel{keywords}}{}{} - \xpretocmd{\makelaboratory}{\cleardoublepage\zlabel{laboratory}}{}{} - \xpretocmd{\makededications}{\cleardoublepage\zlabel{dedications}}{}{} - \xpretocmd{\makefrontepigraphs}{\cleardoublepage\zlabel{frontepigraphs}}{}{} - \xpretocmd{\acknowledgements}{\cleardoublepage\zlabel{acknowledgements}}{}{} - \xpretocmd{\caution}{\cleardoublepage\zlabel{caution}}{}{} - \xpretocmd{\makeabstract}{\cleardoublepage\zlabel{abstract}}{}{} - \xpretocmd{\foreword}{\cleardoublepage\zlabel{foreword}}{}{} +\AfterEndPreamble{ + \pretocmd{\tableofcontents@YAD@without@argument}{\cleardoublepage\zlabel{tableofcontents-withoutargument}}{}{} + \pretocmd{\tableofcontents@YAD@with@argument}{\cleardoublepage\zlabel{tableofcontents-withargument}}{}{} + \pretocmd{\maketitle}{\zlabel{fr-title}}{}{}% + \pretocmd{\makedisclaimer}{\cleardoublepage\zlabel{disclaimer}}{}{} + \pretocmd{\makekeywords}{\cleardoublepage\zlabel{keywords}}{}{} + \pretocmd{\makelaboratory}{\cleardoublepage\zlabel{laboratory}}{}{} + \pretocmd{\makededications}{\cleardoublepage\zlabel{dedications}}{}{} + \pretocmd{\makefrontepigraphs}{\cleardoublepage\zlabel{frontepigraphs}}{}{} + \pretocmd{\acknowledgements}{\cleardoublepage\zlabel{acknowledgements}}{}{} + \pretocmd{\caution}{\cleardoublepage\zlabel{caution}}{}{} + \pretocmd{\makeabstract}{\cleardoublepage\zlabel{abstract}}{}{} + \pretocmd{\foreword}{\cleardoublepage\zlabel{foreword}}{}{} \let\YAD@demo@chapter@ORI\chapter% \RenewDocumentCommand\chapter{som}{% \IfBooleanTF{#1} @@ -6145,12 +6499,48 @@ $clean_ext = 'synctex.gz synctex.gz(busy) run.xml tex.bak bbl bcf fdb_latexmk ru %</demopkg> % \end{macrocode} % +% \begin{macrocode} +%<*samples-templates-latexmkrc> +% \end{macrocode} +% +% \begin{macrocode} +$pdf_mode = 1; + +$bibtex_use = 1; +$bibtex = 'biber %O %B'; + +add_cus_dep('glo', 'gls', 0, 'makeglossaries'); +add_cus_dep('acn', 'acr', 0, 'makeglossaries'); +add_cus_dep('slo', 'sls', 0, 'makeglossaries'); +sub makeglossaries{ + system( "makeglossaries \"$_[0]\"" ); +} + +$makeindex = 'texindy -L french'; + +add_cus_dep('idx', 'ind', 0, 'texindy'); +sub texindy{ + system("texindy -L french \"$_[0].idx\""); +} + +push @generated_exts, 'acn', 'acr', 'alg', 'bbl', 'bcf', 'fls', 'gl*', 'idx', +'ind', 'ist', 'sbl*', 'sl*', 'sym*' ; + +$clean_ext .= 'synctex.gz* run.xml tex.bak out bbl bcf fdb_latexmk run tdo listing *~ lo* unq mw' ; +); +% \end{macrocode} +% +% \begin{macrocode} +%</samples-templates-latexmkrc> +% \end{macrocode} +% % \Finale \endinput %%% Local Variables: -%%% mode: latex +%%% mode: tex %%% eval: (doctex-mode) -%%% TeX-master: t %%% ispell-local-dictionary: "francais" +%%% TeX-command-default: "TeX" +%%% TeX-master: t %%% End: diff --git a/Master/texmf-dist/source/latex/yathesis/yathesis.ins b/Master/texmf-dist/source/latex/yathesis/yathesis.ins index eba07a9f850..b65c4a5fa60 100644 --- a/Master/texmf-dist/source/latex/yathesis/yathesis.ins +++ b/Master/texmf-dist/source/latex/yathesis/yathesis.ins @@ -14,7 +14,7 @@ \input docstrip.tex \Msg{********************************************************} \Msg{* Installation} -\Msg{* Class: yathesis 2016/05/22 v0.99m} +\Msg{* Class: yathesis 2016-10-30 v0.99o} \Msg{* that helps to write thesis following French rules (DB)} \Msg{********************************************************} \keepsilent @@ -39,7 +39,7 @@ version 2005/12/01 or later. This work has the LPPL maintenance status `maintained'. -The Current Maintainer of this work is Denis Bitouz'e. +The Current Maintainer of this work is Denis Bitouzé. This work consists of the file yathesis.dtx and the derived files yathesis.cls, @@ -81,7 +81,7 @@ This work consists of the file yathesis.dtx %% %% This work has the LPPL maintenance status `maintained'. %% -%% The Current Maintainer of this work is Denis Bitouz'e. +%% The Current Maintainer of this work is Denis Bitouzé. %% %% This work consists of the file yathesis.dtx %% and the derived files yathesis.cls, |