From c7235aafe4ddb8f9800cdf784212d4c53bb53e32 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Tue, 14 Apr 2020 03:02:32 +0000 Subject: CTAN sync 202004140302 --- macros/latex/contrib/yathesis/source/yathesis.dtx | 601 +++++++++------------- 1 file changed, 243 insertions(+), 358 deletions(-) (limited to 'macros/latex/contrib/yathesis/source/yathesis.dtx') diff --git a/macros/latex/contrib/yathesis/source/yathesis.dtx b/macros/latex/contrib/yathesis/source/yathesis.dtx index f273156bbe..984be7e0ae 100644 --- a/macros/latex/contrib/yathesis/source/yathesis.dtx +++ b/macros/latex/contrib/yathesis/source/yathesis.dtx @@ -23,7 +23,7 @@ %<*readme> ----------------------------------------------------------------------- -- `yathesis` --- Yet Another Thesis Class, version 1.0.1 +- `yathesis` --- Yet Another Thesis Class, version 1.0.2 - E-mail: `denis.bitouze@univ-littoral.fr` - Released under the LaTeX Project Public License v1.3c or later. See http://www.latex-project.org/lppl.txt @@ -69,11 +69,15 @@ Typesetting the documentation of the class requires: \expandafter\begingroup \fi % +%<*class|install> +\def\yathesisfileversion{1.0.2} +\def\yathesisfiledate{2020-04-13} +% %<*install> \input docstrip.tex \Msg{********************************************************} \Msg{* Installation} -\Msg{* Class: yathesis 2020-03-28 v1.0.1} +\Msg{* Class: yathesis \yathesisfiledate\space v\yathesisfileversion} \Msg{* that helps to write thesis following French rules (DB)} \Msg{********************************************************} \keepsilent @@ -128,7 +132,7 @@ This work consists of the file yathesis.dtx \def\YAD@treesample{\YAD@examples/\YAD@sample/en-arborescence} % %<*install> -\usedir{doc/latex/\YAD@classname/} +\usedir{doc/latex/\YAD@classname} \generate{ \nopreamble\nopostamble \file{README.md}{\from{\jobname.dtx}{readme}} @@ -265,15 +269,7 @@ This work consists of the file yathesis.dtx \fi % % \fi -% \def\YADnblastversion{1.0.1} -% \def\YADdatelastversion{\today} -% \def\fileversion{v\YADnblastversion} -% \def\filedate{\YADdatelastversion} % \iffalse -%<*class> -\def\fileversion{v1.0.1} -\def\filedate{2020/03/28} -% %<*driver> \ProvidesFile{yathesis.dtx} \RequirePackage{scrlfile} @@ -364,7 +360,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1999/12/01] -\ProvidesClass{yathesis}[\filedate\space\fileversion\space Yet another class for writing thesis (DB)] +\ProvidesClass{yathesis}[\yathesisfiledate\space v\yathesisfileversion\space Yet another class for writing thesis (DB)] % \end{macrocode} % % Pour pouvoir définir des macros dont les arguments puissent être @@ -448,8 +444,10 @@ This work consists of the file yathesis.dtx \newbool{YAD@valid@month} \newbool{YAD@valid@year} \newbool{YAD@mainmatter@used} +\newbool{YAD@mainmatter} \newbool{YAD@backmatter} \newbool{YAD@localtocs}% +\newbool{YAD@localbibs@used}% \newbool{YAD@nextwithlocaltoc}% \newbool{YAD@nonnumbered@chapter}% \newbool{YAD@nonnumbered@section}% @@ -3080,7 +3078,6 @@ This work consists of the file yathesis.dtx \cleardoublepage% \sethead[\thepage][][\nomname]{\nomname}{}{\thepage}\headrule% \YAD@ORI@printnomenclature% - \pagestyle{preliminary}% }% }{% }% @@ -3124,8 +3121,7 @@ This work consists of the file yathesis.dtx % aux frontières des chapitres non numérotés ne soient pas % erronés). % \begin{macrocode} -\xpretocmd{\pagestyle}{\cleardoublepage}{}{}% -% \xapptocmd{\pagestyle}{\YAD@setfoot}{}{}% +\pretocmd{\pagestyle}{\cleardoublepage}{}{}% % \end{macrocode} % \end{macro} % @@ -3143,9 +3139,8 @@ This work consists of the file yathesis.dtx \let\YAD@ORI@tableofcontents\tableofcontents% \let\YAD@ORI@localtableofcontents\localtableofcontents% \renewcommand{\tableofcontents}{% - \pagestyle{preliminary}% \booltrue{YAD@tableofcontents@used}% - \cleardoublepage% + \pagestyle{preliminary}% \YAD@phantomsection% % \renewcommand{\contentsname}{\cmdKV@YAD@name} \@ifnextchar[{\tableofcontents@YAD@with@argument}{\tableofcontents@YAD@without@argument}%] @@ -3158,6 +3153,16 @@ This work consists of the file yathesis.dtx \let\cmdKV@YAD@depth\YAD@tocdepth% \let\cmdKV@YAD@name\contentsname% \YAD@localstyle % pour les local TOCs qui suivent + \ifbool{YAD@mainmatter}% + {% + \pagestyle{mainmatter}% + }{% + }% + \ifbool{YAD@backmatter}% + {% + \pagestyle{backmatter}% + }{% + }% }% \newcommand\tableofcontents@YAD@with@argument[1][]{% \yadsetup{#1}% @@ -3183,6 +3188,16 @@ This work consists of the file yathesis.dtx \let\cmdKV@YAD@depth\YAD@tocdepth% \let\cmdKV@YAD@name\contentsname% \YAD@localstyle % pour les local TOCs qui suivent + \ifbool{YAD@mainmatter}% + {% + \pagestyle{mainmatter}% + }{% + }% + \ifbool{YAD@backmatter}% + {% + \pagestyle{backmatter}% + }{% + }% }% }% % \end{macrocode} @@ -3273,7 +3288,7 @@ This work consists of the file yathesis.dtx % \begin{macro}{\YAD@chapter@header} % Définition de titres courants % \begin{macrocode} -\newcommand*{\YAD@chapter@header}{% +\DeclareRobustCommand{\YAD@chapter@header}{% \ifboolexpr{ ((test {\ifnumcomp{\value{secnumdepth}}{>}{-1}} or (not bool {YAD@nonnumbered@chapter})) and test {\ifnumcomp{\value{chapter}}{>}{0}}) and @@ -3289,11 +3304,20 @@ This work consists of the file yathesis.dtx % % \begin{macro}{\YAD@section@header} % \begin{macrocode} -\newcommand*{\YAD@section@header}{% +\DeclareRobustCommand{\YAD@section@header}{% \ifboolexpr{ - ((test {\ifnumcomp{\value{secnumdepth}}{>}{0}} or (not bool - {YAD@nonnumbered@section})) and test {\ifnumcomp{\value{chapter}}{>}{0}}) and - (not bool {YAD@backmatter})% + ( + ( + test {\ifnumcomp{\value{secnumdepth}}{>}{0}} + or + (not bool {YAD@nonnumbered@section}) + ) + and + test {\ifnumcomp{\value{chapter}}{>}{0}}) + and + (not bool {YAD@backmatter}) + and + (not bool {YAD@localbibs@used}) }{% \thesection. }{% @@ -3311,6 +3335,22 @@ This work consists of the file yathesis.dtx \boolfalse{YAD@localtocs}% }% % \end{macrocode} +% +% Code de débogage pour localiser les styles de pages appliqués. +% \begin{macrocode} +% \RequirePackage{background} +% \xapptocmd{\pagestyle}{% +% \SetBgContents{#1} +% \SetBgScale{2} +% \SetBgAngle{0} +% \SetBgOpacity{1} +% \SetBgColor{blue} +% \SetBgPosition{current page.south west} +% \SetBgHshift{3cm} +% \SetBgVshift{1cm} +% }{}{}% +% \end{macrocode} +% % Définition du style de page des titres % \begin{macrocode} \newpagestyle{titles}[]{% @@ -3362,13 +3402,17 @@ This work consists of the file yathesis.dtx % géométrie restaurée mais toujours pas de titres courants % \begin{macrocode} \newpagestyle{prepreliminary}[]{% + \sethead{}{}{}% + \setfoot{}{}{}% + \setheadrule{0pt}% + \setfootrule{0pt}% % \end{macrocode} % Dans la partie pré-préliminaire, aucun élément de structuration n'est % 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} \setcounter{secnumdepth}{-10}% - \YAD@setfoot% + % \YAD@setfoot% }% % \end{macrocode} % Définition du style de page de la partie préliminaire: début @@ -3399,45 +3443,9 @@ This work consists of the file yathesis.dtx \YAD@setfoot% }% % \end{macrocode} -% Définition du style de page de la partie liminaire -% \begin{macrocode} -\newpagestyle{ordinary}[]{% - \sethead[\thepage]% - []% - [\YAD@chapter@header]% - {% - \ifthenelse{% - \equal{\sectiontitle}{}% - }{% - \YAD@chapter@header% - }{% - \YAD@section@header% - }% - }% - {}% - {\thepage}% - \headrule% -% \end{macrocode} -% Dans la partie liminaire, aucun élément de structuration n'est -% numéroté et la profondeur de la table des matières est fixée à son -% niveau par défaut (sous-sections) -% \begin{macrocode} - \setcounter{secnumdepth}{-10}% - \YAD@setfoot% -}% -% \end{macrocode} % Définition du style de page de la partie principale % \begin{macrocode} \newpagestyle{mainmatter}[]{% - \ifthenelse{\equal{\YAD@interligne}{single}}{% - \singlespacing% - }{% - \ifthenelse{\equal{\YAD@interligne}{double}}{% - \doublespacing% - }{% - \onehalfspacing% - }% - }% \sethead[\thepage]% []% [\YAD@chapter@header]% @@ -3467,12 +3475,22 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \xapptocmd{\mainmatter}{% \booltrue{YAD@mainmatter@used}% + \booltrue{YAD@mainmatter}% + \pagestyle{mainmatter}% \ifbool{YAD@localtocs@classoption}% {% \booltrue{YAD@localtocs}% }{% - } - \pagestyle{mainmatter}% + }% + \ifthenelse{\equal{\YAD@interligne}{single}}{% + \singlespacing% + }{% + \ifthenelse{\equal{\YAD@interligne}{double}}{% + \doublespacing% + }{% + \onehalfspacing% + }% + }% }{}{}% % \end{macrocode} % Vérification, en fin de document, de l'usage de la commande "\mainmatter" et @@ -3493,89 +3511,50 @@ This work consists of the file yathesis.dtx }% }% % \end{macrocode} -% Définition du style de page de la partie annexe -% \begin{macrocode} -\newpagestyle{appendix}[]{% - \singlespacing% - \sethead[\thepage]% - []% - [% - \ifthenelse{% - \value{secnumdepth}>-1 - \and - \value{chapter}>0 - }{% - \MakeUppercase\appendixname{} \thechapter.\ - }{% - } - \chaptertitle% - ]% - {% - \ifthenelse{% - \equal{\sectiontitle}{}% - }{% - \ifthenelse{% - \value{secnumdepth}>-1 - \and - \value{chapter}>0 - }{% - \MakeUppercase\appendixname{} \thechapter.\ - }{% - } - \chaptertitle% - }{% - \YAD@section@header% - }% - }% - {}% - {\thepage}% - \headrule% -% \end{macrocode} -% Dans la partie annexe, la numérotation des paragraphes est fixée à -% son niveau par défaut (sous-sections) -% \begin{macrocode} - \YAD@phantomsection% - \YAD@setsecnumdepth{\YAD@secnumdepth}% - \YAD@bookmarksetup{startatroot}% - \YAD@setfoot% -}% -% \end{macrocode} -% Extension de la commande "\appendix" de sorte qu'elle applique le style de -% page "appendix". +% Pour que les bibliographies locales apparaissent automatiquement à chaque fin de +% chapitre, la commande "\chapter" est redéfinie de manière à commencer par +% l'insertion de la bibliographie locale ("\printlocalbibs") du, donc, chapitre +% précédent (affichée seulement si celle-ci n'est pas vide). Ceci fonctionne +% bien, sauf : +% \begin{itemize} +% \item pour les chapitres séparés par des commandes intermédiaires ("\part", +% "\mainmatter", "\appendix", etc.) +% \item en fin de document ("\enddocument"). +% \end{itemize} +% Il est donc nécessaire que ces commandes commencent donc elles-mêmes par +% l'insertion de la bibliographie locale du chapitre précédent +% ("\printlocalbibs"), commande assurant que les chapitres suivant +% (éventuellement) ces commandes ne l'afficheront pas en double. % \begin{macro}{\appendix} % \begin{macrocode} -\xapptocmd{\appendix}{% - \pagestyle{appendix}% -}{}{}% -% \end{macrocode} -% \end{macro} -% Définition du style de page de la partie biblio -% \begin{macrocode} -\newpagestyle{biblio}[]{% -% \end{macrocode} -% Dans la partie biblio, aucun élément de structuration n'est -% numéroté -% \begin{macrocode} - \setcounter{secnumdepth}{-10}% -% \end{macrocode} -% \begin{macrocode} - \singlespacing% - \sethead[\thepage]% - []% - [\YAD@chapter@header]% - {\YAD@chapter@header}% - {}% - {\thepage}% - \headrule% +\AtEndPreamble{% + \xpretocmd{\part}{% + \printlocalbibs{}% + }{}{}% + \pretocmd{\mainmatter}{% + \printlocalbibs{}% + \cleardoublepage% + }{}{}% + \pretocmd{\appendix}{% + \printlocalbibs{}% + \cleardoublepage% + }{}{}% + \pretocmd{\backmatter}{% + \printlocalbibs{}% + \cleardoublepage% + }{}{}% + \pretocmd{\enddocument}{% + \printlocalbibs{}% + }{}{}% +} % \end{macrocode} -% On demande que la bibliographie apparaisse au plus haut niveau des -% signets +% Extension de la commande "\appendix" de sorte que les chapitres d'annexe +% soient correctement nommés. % \begin{macrocode} - % \cleardoublepage% - \YAD@phantomsection% - \YAD@bookmarksetup{startatroot}% - \YAD@setfoot% -}% + \apptocmd{\appendix}{% + \renewcommand\chaptername{\appendixname}% + \singlespacing% + }{}{}% % \end{macrocode} % Définition du style de page de la partie finale % \begin{macrocode} @@ -3617,73 +3596,6 @@ This work consists of the file yathesis.dtx }{}{}% % \end{macrocode} % \end{macro} -% Définition du style de page de la table des matières -% \begin{macrocode} -\newpagestyle{contents}[]{% - \cleardoublepage% - \YAD@phantomsection% - \YAD@bookmarksetup{startatroot}% - \singlespacing% - \sethead[\thepage]% - []% - [\cmdKV@YAD@name]% - {\cmdKV@YAD@name}% - {}% - {\thepage}% - \headrule% -% \end{macrocode} -% Dans la partie glossaire, aucun élément de structuration n'est -% numéroté -% \begin{macrocode} - \setcounter{secnumdepth}{-10}% - \YAD@setfoot% -}% -% \end{macrocode} -% Définition du style de page de la partie glossaire -% \begin{macrocode} -\newpagestyle{glossaire}[]{% - \cleardoublepage% - \YAD@phantomsection% - \YAD@bookmarksetup{startatroot}% - \singlespacing% - \sethead[\thepage]% - []% - [\YAD@chapter@header]% - {\YAD@chapter@header}% - {}% - {\thepage}% - \headrule% -% \end{macrocode} -% Dans la partie glossaire, aucun élément de structuration n'est -% numéroté -% \begin{macrocode} - \setcounter{secnumdepth}{-10}% - \YAD@setfoot% -}% -% \end{macrocode} -% Définition du style de page de la partie index -% \begin{macrocode} -\newpagestyle{index}[]{% - \singlespacing% - \sethead[\thepage]% - []% - [\YAD@chapter@header]% - {\YAD@chapter@header}% - {}% - {\thepage}% - \headrule% -% \end{macrocode} -% Dans la partie index, aucun élément de structuration n'est -% numéroté -% \begin{macrocode} - \setcounter{secnumdepth}{-10}% - \cleardoublepage% - \YAD@phantomsection% - \YAD@setsecnumdepth{\YAD@secnumdepth}% - \YAD@bookmarksetup{startatroot}% - \YAD@setfoot% -}% -% \end{macrocode} % Définition du style de page de la partie \textquote{4\ieme{} de % couverture} (\emph{blub} en anglais). % \begin{macrocode} @@ -3774,11 +3686,15 @@ This work consists of the file yathesis.dtx \yadsetup{#1} \setlength{\fboxsep}{10pt}% \setlength{\YAD@titleboxwidth}{\linewidth-2\fboxsep-2\fboxrule}% - \renewcommand*{\do}[1]{% -% \end{macrocode} % Appel du style de page propre au(x) titre(s) % \begin{macrocode} \pagestyle{titles}% +% \end{macrocode} + \renewcommand*{\do}[1]{% +% \end{macrocode} +% Chaque nouvelle page de titre commence en page impaire. +% \begin{macrocode} + \cleardoublepage% % \end{macrocode} % On passe dans la langue choisie en option (en français si rien n'est % spécifié). @@ -3810,7 +3726,7 @@ This work consists of the file yathesis.dtx }% \noindent% \begin{minipage}{\linewidth-2\fboxsep-2\fboxrule} - \onehalfspacing% + % \onehalfspacing% \noindent% \ifthenelse{\equal{\cmdKV@YAD@frametitle}{none}}{% }{% @@ -3840,8 +3756,10 @@ This work consists of the file yathesis.dtx }% \ifundef{\printsubtitle}{% }{% - \ifdraft{}{\vspace*{\stretch{.15}}}% - % \vspace*{\stretch{.15}}% + \ifdraft{}{% + \vskip0.5em% + % \vspace*{\stretch{.15}}% + }% \par% \centering% \Large\printsubtitle% @@ -4291,7 +4209,6 @@ This work consists of the file yathesis.dtx \@ifstar{\@tempswatrue\csuse{YAD@starnostar@makekeywords}}{\@tempswafalse\csuse{YAD@starnostar@makekeywords}}% }% \csdef{YAD@starnostar@makekeywords}{% - \cleardoublepage% % \end{macrocode} % Appel du style de page propre à la partie préliminaire % \begin{macrocode} @@ -4324,8 +4241,8 @@ This work consists of the file yathesis.dtx \else% \vspace*{\stretch{1}}% \fi - \expandafter\selectlanguage\expandafter{\YAD@mainlanguage}% \pagestyle{preliminary}% + \expandafter\selectlanguage\expandafter{\YAD@mainlanguage}% }% % \end{macrocode} % \end{macro} @@ -4424,7 +4341,6 @@ This work consists of the file yathesis.dtx \@ifstar{\@tempswatrue\csuse{YAD@starnostar@makelaboratory}}{\@tempswafalse\csuse{YAD@starnostar@makelaboratory}}% }% \csdef{YAD@starnostar@makelaboratory}{% - \cleardoublepage% % \end{macrocode} % Appel du style de page propre à la partie préliminaire % \begin{macrocode} @@ -4795,36 +4711,19 @@ This work consists of the file yathesis.dtx % Page de présentation (résumés) % \begin{macrocode} \newcommand{\makeabstract}{% + \pagestyle{preliminary}% + \bgroup% \ifbool{YAD@nomakeabstract}{% }{% \YAD@alarm@noabstract% }% - \pagestyle{preliminary}% \YAD@phantomsection% \addcontentsline{toc}{chapter}{\abstractname}% - \booltrue{YAD@makeabstract@used}% - \bgroup% \addtolength{\footskip}{6pt minus 6pt}% \setfootrule{0pt}% - \setfoot[][% - \ifboolexpr{% - bool {YAD@inprogress@work}% - or bool {YAD@inprogress@work@star}% - }{% - \textsc{\translate{lbl-inprogressfoottext} \today}% - }{% - \ifboolexpr{% - bool {YAD@submitted@work@star}% - }{% - \textsc{\translate{lbl-submittedfoottext} \today}% - }{% - }% - }% - ][]{% - % \medskip\par% + \setfoot[][][]{% \YAD@laboratory@abstract@page% }{}{}% - \cleardoublepage% \renewcommand{\YAD@chapter@header}{\abstractname}% \renewcommand{\YAD@section@header}{\abstractname}% \YAD@abstract@page% @@ -4838,6 +4737,8 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \YAD@nolaboratorytrue% \YAD@nolaboratoryaddresstrue% +% + \booltrue{YAD@makeabstract@used}% }% % \end{macrocode} % \end{macro} @@ -4918,6 +4819,7 @@ This work consists of the file yathesis.dtx % Éléments communs de la page de présentation % \begin{macrocode} \newcommand{\makebackcover}{% + \printlocalbibs{}% \pagestyle{backcover}% % \end{macrocode} % On insère le code pour l'éventuel colophon @@ -4942,7 +4844,6 @@ This work consists of the file yathesis.dtx }% \csdef{YAD@starnostar@makededications}{% \pagestyle{prepreliminary}% - \cleardoublepage% \if@tempswa% \else% \vspace*{\stretch{2}}% @@ -4958,9 +4859,6 @@ This work consists of the file yathesis.dtx permettant de préparer des dédicaces, n'a pas été utilisée.% }% }{% -% \end{macrocode} -% Appel du style de page propre à la partie préliminaire -% \begin{macrocode} \begin{flushright} \itshape% \DTLforeach*{dedications}{% @@ -4994,6 +4892,7 @@ This work consists of the file yathesis.dtx \else% \vspace*{\stretch{2}}% \fi + \pagestyle{preliminary}% }% % \end{macrocode} % \end{macro} @@ -5006,7 +4905,7 @@ This work consists of the file yathesis.dtx }% \csdef{YAD@starnostar@makefrontepigraphs}{% \patchcmd{\epigraphs}{\qitemlabel}{\qitemlabel\itemsep=1.5\baselineskip}{}{}% - \cleardoublepage% + \pagestyle{prepreliminary}% \if@tempswa% \else% \vspace*{\stretch{2}}% @@ -5027,9 +4926,6 @@ This work consists of the file yathesis.dtx }{% }% }{% -% \end{macrocode} -% Appel du style de page propre à la partie préliminaire -% \begin{macrocode} \begin{epigraphs} \DTLforeach*{frontepigraphs}{% \YAD@epigraphlanguage=epigraphlanguage,% @@ -5072,39 +4968,10 @@ This work consists of the file yathesis.dtx \else% \vspace*{\stretch{2}}% \fi -}% -% \end{macrocode} -% \end{macro} -% -% \begin{environment}{epigraphspage} -% Environnement de la page des épigraphes globales à la thèse -% \begin{macrocode} -\newenvironment{epigraphspage}{% -% \end{macrocode} -% Redéfinition locale de la commande d'épigraphe -% \begin{macrocode} - \patchcmd{\epigraphs}{\qitemlabel}{\qitemlabel\itemsep=1.5\baselineskip}{}{} - \cleardoublepage% - \vspace*{\stretch{1}}% -}{% - \vspace*{\stretch{1}}% -}% -% \end{macrocode} -% Appel du style de page propre à la partie préliminaire du -% document, notamment début de l'insertion des titres courants (on -% ajoute le style de page "prepreliminary" avant que l'environnement -% "epigraphspage" ne débute, de sorte que sa portée ne soit pas -% limitée à cet environnement). -% \begin{macrocode} -\BeforeBeginEnvironment{epigraphspage}{% - \pagestyle{prepreliminary}% -}% -\AfterEndEnvironment{epigraphspage}{% \pagestyle{preliminary}% }% % \end{macrocode} -% \end{environment} -% +% \end{macro} % %\section{Commandes et styles pour les tables des matières locales} % @@ -5411,6 +5278,24 @@ This work consists of the file yathesis.dtx }{}{}% % \end{macrocode} % \end{environment} +% +% Le code pour l'affichage des bibliographies locales, utilisé à plusieurs +% endroits, est stocké dans une macro. +% \begin{macrocode} +\newcommand{\printlocalbibs}{% + \ifbool{YAD@localbibs}{% + \ifbool{YAD@localbibs@used}{% + }{% + \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% + \booltrue{YAD@localbibs@used}% + }% + }{% + }% +}% +% \end{macrocode} % On redéfinit la commande "\chapter" de sorte que, dans un chapitre non % numéroté ("\chapter*") : % \begin{itemize} @@ -5431,14 +5316,10 @@ This work consists of the file yathesis.dtx \LetLtxMacro{\YAD@ORI@chapter}{\chapter}% \AfterPreamble{% delay the redefinition when titlesec has done its own \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% - }{% - } + \printlocalbibs{}% + \boolfalse{YAD@localbibs@used}% \cleardoublepage% + \renewcommand{\sectiontitle}{}% \YAD@phantomsection% \ifbool{YAD@output@paper}{% }{% @@ -5487,7 +5368,7 @@ This work consists of the file yathesis.dtx \boolfalse{YAD@nonnumbered@paragraph}% \boolfalse{YAD@nonnumbered@subparagraph}% \if@mainmatter% - \YAD@setsecnumdepth{\YAD@secnumdepth} + \YAD@setsecnumdepth{\YAD@secnumdepth}% \fi% \YAD@tmp@chapter[#1][#2]{#3}% }% @@ -5514,7 +5395,7 @@ This work consists of the file yathesis.dtx % tables des matières. % \end{itemize} % \begin{macrocode} -\LetLtxMacro{\YAD@ORI@section}{\section} +\LetLtxMacro{\YAD@ORI@section}{\section}% \renewcommand\section{% \if@mainmatter% \ifbool{YAD@nonnumbered@chapter}{% @@ -5523,7 +5404,7 @@ This work consists of the file yathesis.dtx }% \fi% \@ifstar{\YAD@starred@section}{\YAD@unstarred@section}% -} +}% \newcommandtwoopt*{\YAD@tmp@section}[3][][]{% \ifthenelse{\isempty{#1}}{% \ifthenelse{\isempty{#2}}{% @@ -5575,7 +5456,7 @@ This work consists of the file yathesis.dtx % "\section". % \end{itemize} % \begin{macrocode} -\LetLtxMacro{\YAD@ORI@subsection}{\subsection} +\LetLtxMacro{\YAD@ORI@subsection}{\subsection}% \renewcommand\subsection{% \if@mainmatter% \ifbool{YAD@nonnumbered@section}{% @@ -5584,7 +5465,7 @@ This work consists of the file yathesis.dtx }% \fi% \@ifstar{\YAD@starred@subsection}{\YAD@unstarred@subsection}% -} +}% \newcommand*{\YAD@tmp@subsection}[2][]{% \ifthenelse{\isempty{#1}}{% \YAD@ORI@subsection{#2}% @@ -5613,7 +5494,7 @@ This work consists of the file yathesis.dtx \YAD@tmp@subsection[#1]{#2}% }% % -\LetLtxMacro{\YAD@ORI@subsubsection}{\subsubsection} +\LetLtxMacro{\YAD@ORI@subsubsection}{\subsubsection}% \renewcommand\subsubsection{% \if@mainmatter% \ifbool{YAD@nonnumbered@subsection}{% @@ -5622,7 +5503,7 @@ This work consists of the file yathesis.dtx }% \fi% \@ifstar{\YAD@starred@subsubsection}{\YAD@unstarred@subsubsection}% -} +}% \newcommand*{\YAD@tmp@subsubsection}[2][]{% \ifthenelse{\isempty{#1}}{% \YAD@ORI@subsubsection{#2}% @@ -5649,7 +5530,7 @@ This work consists of the file yathesis.dtx \YAD@tmp@subsubsection[#1]{#2}% }% % -\LetLtxMacro{\YAD@ORI@paragraph}{\paragraph} +\LetLtxMacro{\YAD@ORI@paragraph}{\paragraph}% \renewcommand\paragraph{% \if@mainmatter% \ifbool{YAD@nonnumbered@subsubsection}{% @@ -5658,7 +5539,7 @@ This work consists of the file yathesis.dtx }% \fi% \@ifstar{\YAD@starred@paragraph}{\YAD@unstarred@paragraph}% -} +}% \newcommand*{\YAD@tmp@paragraph}[2][]{% \ifthenelse{\isempty{#1}}{% \YAD@ORI@paragraph{#2}% @@ -5683,7 +5564,7 @@ This work consists of the file yathesis.dtx \YAD@tmp@paragraph[#1]{#2}% }% % -\LetLtxMacro{\YAD@ORI@subparagraph}{\subparagraph} +\LetLtxMacro{\YAD@ORI@subparagraph}{\subparagraph}% \renewcommand\subparagraph{% \if@mainmatter% \ifbool{YAD@nonnumbered@paragraph}{% @@ -5692,7 +5573,7 @@ This work consists of the file yathesis.dtx }% \fi% \@ifstar{\YAD@starred@subparagraph}{\YAD@unstarred@subparagraph}% -} +}% \newcommand*{\YAD@tmp@subparagraph}[2][]{% \ifthenelse{\isempty{#1}}{% \YAD@ORI@subparagraph{#2}% @@ -6124,7 +6005,7 @@ This work consists of the file yathesis.dtx \defbibheading{YAD@localbibs@heading}[\translate{lbl-localbibname}]{% \renewcommand\addcontentsline[3]{}% \section*{#1}% - \let\addcontentsline\YAD@addcontentsline + \let\addcontentsline\YAD@addcontentsline% }% % \end{macrocode} % @@ -6145,20 +6026,24 @@ This work consists of the file yathesis.dtx \booltrue{YAD@printbibliography@used}% % \end{macrocode} % -% Hack aimablement fourni par samcarter +% Un hack aimablement fourni par samcarter % (\url{https://texnique.fr/osqa/questions/6977/header-avec-biblatex/6978}) -% qui évite que l'entête de la bibliographie, en dernière page de celle-ci, ne -% contienne pas seulement \enquote{Bibliographie} mais \enquote{CHAPITRE -% XXX. Bibliographie}. +% a permis d'éviter que l'entête de la bibliographie, en dernière page de +% celle-ci, ne contienne pas seulement \enquote{Bibliographie} mais +% \enquote{CHAPITRE XXX. Bibliographie}. % \begin{macrocode} - \pagestyle{biblio}% + \singlespace% \chapter*{\bibname}% - \begingroup% - \let\cleardoublepage\relax% \YAD@printbibliography@ORI[heading=none,#1]% - \endgroup% + \endsinglespace% }% }{% + \BeforeBeginEnvironment{thebibliography}{% + \singlespacing% + }% + \AtEndEnvironment{thebibliography}{% + \clearpage% + }% }% }% % \end{macrocode} @@ -6301,6 +6186,26 @@ This work consists of the file yathesis.dtx }% % \end{macrocode} % +% Le code suivant, aimablement fourni par touhami +% (\url{https://texnique.fr/osqa/questions/8358/packages-glossaries-et-yathesis-pepin-de-forme-plurielle-glspl}) +% perme tque, dans le cas d'un mémoire en anglais (option +% "mainlanguage=english"), les règles s'appliquant aux glossaires et acronymes +% soient bien celles de l'anglais (et non du français). +% \begin{macrocode} +\AtEndPreamble{% + \@ifpackageloaded{glossaries}{% + \IfLanguageName{english}{% + \makeatletter + \let\glossariescaptionsenglish\undefined + \input{glossaries-english.ldf} + \makeatother + }{% + }% + }{% + }% +}% +% \end{macrocode} +% % \subsection{Fichiers importés par la classe} % % La \yatcl charge les fichiers de configuration locale et de données @@ -6571,49 +6476,48 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} # mode: yathesis.cls -# denisbitouze, 2020-03-26 +# denisbitouze, 2020-04-05 # -#include:class-book -#include:latex-document -#include:latex-mathsymbols -#include:tex -#include:pgfopts +#include:adjustbox +#include:array +#include:babel +#include:biblatex +#include:bookmark +#include:colophon +#include:csquotes +#include:datatool +#include:datetime +#include:draftwatermark +#include:environ +#include:epigraph +#include:etoc #include:etoolbox -#include:xpatch -#include:morewrites% #include:filehook -#include:hopatch -#include:xifthen -#include:xkeyval% +#include:fncychap #include:geometry #include:graphicx -#include:environ -#include:adjustbox -#include:array -#include:xstring -#include:textcase -#include:translator +#include:hopatch +#include:hypcap +#include:ifdraft +#include:iflang #include:iftex -#include:epigraph -#include:tcolorbox +#include:letltxmacro #include:marvosym +#include:morewrites +#include:nonumonpart +#include:pgfopts #include:setspace -#include:etoc +#include:tcolorbox +#include:textcase +#include:titleps #include:tocbibind -#include:nonumonpart +#include:translator +#include:twoopt #include:xcolor -#include:datatool -#include:fncychap -#include:titleps -#include:ifdraft -#include:colophon -#include:draftwatermark -#include:babel -#include:iflang -#include:datetime -#include:hypcap -#include:bookmark -#include:glossaries-babel +#include:xifthen +#include:xkeyval +#include:xpatch +#include:xstring # # Document class #keyvals:\documentclass/yathesis @@ -6704,39 +6608,17 @@ datetime \doctoralschool[%]{nom de l'école doctorale%text}#n \laboratory[%]{%}{%}#n # -#keyvals:\pres -logo= -logoheight= -url= -#endkeyvals -#keyvals:\comue -logo= -logoheight= -url= -#endkeyvals -#keyvals:\institute -logo= -logoheight= -url= -nologo -#endkeyvals -#keyvals:\coinstitute +#keyvals:\pres,\comue,\doctoralschool logo= logoheight= url= -nologo #endkeyvals -#keyvals:\company +#keyvals:\institute,\coinstitute,\company logo= logoheight= url= nologo #endkeyvals -#keyvals:\doctoralschool -logo= -logoheight= -url= -#endkeyvals #keyvals:\laboratory logo= logoheight= @@ -6993,7 +6875,7 @@ name= \AfterEndPreamble{ \pretocmd{\tableofcontents@YAD@without@argument}{\cleardoublepage\zlabel{tableofcontents-withoutargument}}{}{} \pretocmd{\tableofcontents@YAD@with@argument}{\cleardoublepage\zlabel{tableofcontents-withargument}}{}{} - \pretocmd{\YAD@insert@colophon}{\clearpage\zlabel{colophon}}{}{} + \pretocmd{\printcolophontext}{\zlabel{colophon}}{}{} \pretocmd{\maketitle}{\zlabel{fr-title}}{}{}% \pretocmd{\makedisclaimer}{\cleardoublepage\zlabel{disclaimer}}{}{} \pretocmd{\makekeywords}{\cleardoublepage\zlabel{keywords}}{}{} @@ -7019,6 +6901,9 @@ name= \ifthenelse{\equal{#3}{Introduction générale}}{\cleardoublepage\zlabel{introduction}% }{% }% + \ifthenelse{\equal{#3}{Développement}}{\zlabel{localbib}% + }{% + }% \ifthenelse{\equal{#3}{Contexte du chaos du rire}}{\cleardoublepage\zlabel{chapter}% }{% }% -- cgit v1.2.3