diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/yathesis/yathesis.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/yathesis/yathesis.dtx | 503 |
1 files changed, 392 insertions, 111 deletions
diff --git a/Master/texmf-dist/source/latex/yathesis/yathesis.dtx b/Master/texmf-dist/source/latex/yathesis/yathesis.dtx index 710516d793a..8c1309da9e9 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.99o +- `yathesis` --- Yet Another Thesis Class, version 0.99p - 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 @@ -55,19 +55,12 @@ Typesetting the documentation of the class requires: with `yathesis-demo` package load at first place. If `latexmk` is available, it is easier to run: - latexmk -g -pdf -jobname=these -pdflatex="pdflatex %O '\RequirePackage{etoolbox}\AtEndPreamble{\RequirePackage{yathesis-demo}}\input{%S}'" these.tex + latexmk -g -norc -r ./latexmkrc -jobname=these -pdflatex="pdflatex %O '\RequirePackage{etoolbox}\AtEndPreamble{\RequirePackage{yathesis-demo}}\input{%S}'" these.tex - to compile `yathesis.tex` to be found in the `.../yathesis/doc/latex/yathesis/documentation/french` directory as follows: - 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 + latexmk -norc -r ./latexmkrc yathesis-fr %</readme> %<*internal> \fi @@ -80,7 +73,7 @@ Typesetting the documentation of the class requires: \input docstrip.tex \Msg{********************************************************} \Msg{* Installation} -\Msg{* Class: yathesis 2016-10-30 v0.99o} +\Msg{* Class: yathesis 2016-12-08 v0.99p} \Msg{* that helps to write thesis following French rules (DB)} \Msg{********************************************************} \keepsilent @@ -135,7 +128,7 @@ This work consists of the file yathesis.dtx \def\YAD@treesample{\YAD@examples/\YAD@sample/en-arborescence} %</install> %<*install> -\usedir{/} +\usedir{doc/latex/\YAD@classname/} \generate{ \nopreamble\nopostamble \file{README.md}{\from{\jobname.dtx}{readme}} @@ -144,6 +137,7 @@ This work consists of the file yathesis.dtx \generate{% \file{\YAD@classname.cls}{\from{\jobname.dtx}{class}} \file{\YAD@classname-demo.sty}{\from{\jobname.dtx}{demopkg}} + \file{\YAD@classname-translations.tex}{\from{\jobname.dtx}{translations}} }% %</install> %<install>\endbatchfile @@ -153,12 +147,6 @@ 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/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/french/\YAD@flattemplate} \generate{ \nopreamble\nopostamble @@ -277,14 +265,14 @@ This work consists of the file yathesis.dtx \fi %</internal> % \fi -% \def\YADnblastversion{0.99o} +% \def\YADnblastversion{0.99p} % \def\YADdatelastversion{\today} % \def\fileversion{v\YADnblastversion} % \def\filedate{\YADdatelastversion} % \iffalse %<*class> -\def\fileversion{v0.99o} -\def\filedate{2016/10/30} +\def\fileversion{v0.99p} +\def\filedate{2016/12/08} %</class> %<*driver> \ProvidesFile{yathesis.dtx} @@ -410,6 +398,14 @@ This work consists of the file yathesis.dtx \RequirePackage{filehook}[2011/10/12]% \RequirePackage{hopatch}[2012/05/28]% % \end{macrocode} +% Assignation "\let" pour macros à arguments optionnels améliorée +% \begin{macrocode} +\RequirePackage{letltxmacro}[2010/09/02]% +% \end{macrocode} +% Definitions with two optional arguments +% \begin{macrocode} +\RequirePackage{twoopt}[1999/04/12]% +% \end{macrocode} % Pour la gestion des tests conditionnels % \begin{macrocode} \RequirePackage{xifthen}[2009/04/17]% @@ -454,6 +450,12 @@ This work consists of the file yathesis.dtx \newbool{YAD@mainmatter@used} \newbool{YAD@localtocs}% \newbool{YAD@nextwithlocaltoc}% +\newbool{YAD@nonnumbered@chapter}% +\newbool{YAD@nonnumbered@section}% +\newbool{YAD@nonnumbered@subsection}% +\newbool{YAD@nonnumbered@subsubsection}% +\newbool{YAD@nonnumbered@paragraph}% +\newbool{YAD@nonnumbered@subparagraph}% % \newlength{\cmdKV@YAD@logoheight} \newlength{\YAD@max@logoheight} @@ -1066,7 +1068,7 @@ This work consists of the file yathesis.dtx % \end{macrocode} % Pour gérer les titres courants (entêtes) et bas de page % \begin{macrocode} -\RequirePackage{titleps}[2011/12/15]% +\RequirePackage[nopatches]{titleps}[2011/12/15]% % \end{macrocode} % Pour supprimer le numéro de page sur la page de titre d'une partie % \begin{macrocode} @@ -1356,6 +1358,14 @@ This work consists of the file yathesis.dtx % \end{macrocode} % \end{macro} % +% On définit la macro privée où est stocké le nom du fichier contenant +% les traductions de la classe. +% \begin{macro}{\YAD@characteristics@file} +% \begin{macrocode} +\newcommand*{\YAD@translations@file}{yathesis-translations.tex} +% \end{macrocode} +% \end{macro} +% % \begin{macrocode} %</class> % \end{macrocode} @@ -1412,7 +1422,7 @@ This work consists of the file yathesis.dtx \YAD@href{\YAD@configuration@directory/#1}{#2}% }{% \YAD@href{\jobname.tex}{#2}% - } + }% }{% #2% }% @@ -1508,7 +1518,7 @@ This work consists of the file yathesis.dtx \YAD@reach@file[\YAD@configuration@file]{% \translate{lbl-#1}% }% - \end{tabular} + \end{tabular}% }% }{% \translate{lbl-#1}% @@ -1557,7 +1567,7 @@ This work consists of the file yathesis.dtx \end{enumerate} Pour plus de d\'etails, consulter la documentation de la classe \textsl{yathesis}.% - \end{minipage} + \end{minipage}% }% \end{center} }{% @@ -2053,7 +2063,7 @@ This work consists of the file yathesis.dtx \newcommand{\YAD@display@staff}[1]{% \DTLforeach*{#1}{% \YAD@committeemember@lastname=lastname,% - \YAD@committeemember@fistname=firstname,% + \YAD@committeemember@firstname=firstname,% \YAD@committeemember@role=role,% \YAD@committeemember@corps=corps,% \YAD@committeemember@sepcorpaffil=% @@ -2095,10 +2105,10 @@ This work consists of the file yathesis.dtx % Prénom \YAD@reach@file{% % - \ifthenelse{\DTLiseq{\YAD@committeemember@fistname}{}}{% + \ifthenelse{\DTLiseq{\YAD@committeemember@firstname}{}}{% \YAD@generic@argument@translate{firstname}% }{% - \YAD@committeemember@fistname% + \YAD@committeemember@firstname% }% % \end{macrocode} % L'accolade suivante ne doit pas être suivie d'un "%" sans quoi il @@ -2173,14 +2183,14 @@ This work consists of the file yathesis.dtx \small% \DTLifdbempty{YAD@staffs}{}{% \ifthenelse{\DTLrowcount{YAD@supervisors}>1}{% - \newcolumntype{u}{>{\itshape}lll} + \newcolumntype{u}{>{\itshape}lll}% }{% - \newcolumntype{u}{>{\itshape}l@{ }ll} + \newcolumntype{u}{>{\itshape}l@{ }ll}% }% \begin{tabular}[t]{u} \DTLforeach*{YAD@supervisors}{% \YAD@committeemember@lastname=lastname,% - \YAD@committeemember@fistname=firstname,% + \YAD@committeemember@firstname=firstname,% \YAD@committeemember@role=role% }{% % Nature des membres du jury @@ -2198,10 +2208,10 @@ This work consists of the file yathesis.dtx % Prénom \YAD@reach@file{% % - \ifthenelse{\DTLiseq{\YAD@committeemember@fistname}{}}{% + \ifthenelse{\DTLiseq{\YAD@committeemember@firstname}{}}{% \YAD@generic@argument@translate{firstname}% }{% - \YAD@committeemember@fistname% + \YAD@committeemember@firstname% }% } % Nom @@ -2237,7 +2247,7 @@ This work consists of the file yathesis.dtx \\ }% }% - \end{tabular} + \end{tabular}% }{% }% }% @@ -2253,7 +2263,7 @@ This work consists of the file yathesis.dtx % \YAD@display@staff{\YAD@the@staff}% }% - \end{tabular} + \end{tabular}% }% % \end{macrocode} % @@ -2734,7 +2744,7 @@ This work consists of the file yathesis.dtx % \YAD@firstname@author{} \bsc{\YAD@lastname@author}% % }{% \ifthenelse{\isempty{#1}}{% - \YAD@firstname@author{} \bsc{\YAD@lastname@author} + \YAD@firstname@author{} \bsc{\YAD@lastname@author}% }{% \YAD@href{mailto:\YAD@email@author}{\YAD@firstname@author{} \bsc{\YAD@lastname@author}}% }% @@ -3015,8 +3025,8 @@ This work consists of the file yathesis.dtx \YAD@globalstyle \YAD@computenumwidths\relax% \etoctableofcontents% - \etocsetnexttocdepth{\YAD@tocdepth} - \let\cmdKV@YAD@depth\YAD@tocdepth + \etocsetnexttocdepth{\YAD@tocdepth}% + \let\cmdKV@YAD@depth\YAD@tocdepth% \let\cmdKV@YAD@name\contentsname% \YAD@localstyle % pour les local TOCs qui suivent }% @@ -3040,8 +3050,8 @@ This work consists of the file yathesis.dtx \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 + \etocsettocdepth{\YAD@tocdepth}% + \let\cmdKV@YAD@depth\YAD@tocdepth% \let\cmdKV@YAD@name\contentsname% \YAD@localstyle % pour les local TOCs qui suivent }% @@ -3120,10 +3130,10 @@ This work consists of the file yathesis.dtx % Globalement dans le document, la table des matières et la % numérotation des paragraphes vont jusqu'aux sous-sections % \begin{macrocode} - \etocsettocdepth{\YAD@tocdepth} + \etocsettocdepth{\YAD@tocdepth}% \AtBeginDocument{% % \yadsetup{#1}% - \YAD@setsecnumdepth{\YAD@secnumdepth} + \YAD@setsecnumdepth{\YAD@secnumdepth}% } % \renewcommand{\setcounter}[2]{}% % @@ -3400,6 +3410,7 @@ This work consists of the file yathesis.dtx \MakeUppercase\appendixname{} \thechapter.\ }{% } + \chaptertitle% }{% \YAD@section@header% }% @@ -3726,9 +3737,9 @@ This work consists of the file yathesis.dtx \end{minipage}% \ifthenelse{\equal{\cmdKV@YAD@frametitle}{none}}{% }{% - \end{tcolorbox} + \end{tcolorbox}% }% - \end{lrbox} + \end{lrbox}% \settototalheight{\YAD@titleboxheight}{\YAD@titlebox}% \setlength{\YAD@otherboxheight}{0.3\paperheight-\YAD@titleboxheight}% % \end{macrocode} @@ -3959,7 +3970,7 @@ This work consists of the file yathesis.dtx }% \ifdraft{}{\vspace*{\stretch{.1}}}% % \vspace*{\stretch{.1}}% - \end{minipage} + \end{minipage}% \ifthenelse{\equal{\cmdKV@YAD@frametitle}{none}}{% }{% % \ifdraft{}{\vspace*{\stretch{2}}}% @@ -4294,7 +4305,7 @@ This work consists of the file yathesis.dtx \YAD@reach@file{\YAD@generic@argument@translate{laboratory}}% \\[.1cm] \YAD@reach@file{\YAD@generic@argument@translate{laboratoryaddress}}% - \end{minipage} + \end{minipage}% }{% }% \DTLforeach*{laboratories}{% @@ -4380,7 +4391,7 @@ This work consists of the file yathesis.dtx }% }% \end{tabular}% - \end{minipage} + \end{minipage}% \ifthenelse{\DTLiseq{\YAD@laboratory@logo}{}}{% }{% \hspace{\stretch{1}}% @@ -4616,7 +4627,7 @@ This work consists of the file yathesis.dtx \\% }{% \newline% - } + }% \printlaboratoryaddress{\YAD@laboratory@address}% \ifthenelse{\value{DTLrowi}=\cmdKV@YAD@numlaboratories}{\dtlbreak}{}% }% @@ -4843,7 +4854,7 @@ This work consists of the file yathesis.dtx \setlength\epigraphrule{0pt}% \begin{epigraphs} \qitem{\YAD@generic@argument@translate{epigraphs}}{}% - \end{epigraphs} + \end{epigraphs}% \YAD@ClassError{% \protect\makefrontepigraphs\space utilisee/\protect\frontepigraph\space non utilisee% @@ -5027,6 +5038,7 @@ This work consists of the file yathesis.dtx % \end{macrocode} % style pour les local TOCs % \begin{macrocode} +\let\YAD@addcontentsline\addcontentsline \newcommand\YAD@localstyle {% \etocsettocstyle {% \if@twocolumn @@ -5038,11 +5050,20 @@ This work consists of the file yathesis.dtx \setbox\YAD@leaderbox\hbox to \YAD@leaderboxwidth{\hss.\hss}% \parindent\z@ \dimen@ 2.25em % soon to be \leftskip +% \end{macrocode} +% We don't want the "section" containing the localtoc to be itself in (global +% or local) TOCs. For this, it is enough to \enquote{relax} "\addcontentsline". +% \begin{macrocode} + \renewcommand\addcontentsline[3]{}% \section *{\kern\dimen@ % \dimen@ works here by sheer luck % \contentsname% % \@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}% \large\textbf{\translate{lbl-localtocname}}% }% +% \end{macrocode} +% We restore the original behavior of "\addcontentsline". +% \begin{macrocode} + \let\addcontentsline\YAD@addcontentsline \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 @@ -5187,7 +5208,7 @@ This work consists of the file yathesis.dtx \boolfalse{YAD@nextwithlocaltoc}% % \boolfalse{YAD@localtocs@classoption}% }{% - } + }% }{% }% }{}{}% @@ -5199,20 +5220,31 @@ This work consists of the file yathesis.dtx % \item les (sous-(sous-))sections n'aient pas besoin d'être étoilées à leur % tour pour être non numérotées ; % \item il ne soit pas nécessaire de faire appel aux commandes cryptiques -% "\addcontentsline{toc}{...}{...}" ; +% "\addcontentsline{toc}{...}{...}" pour que ce qui est non numéroté figure +% dans la (les) table(s) des matières ; % \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 les précédant). +% numérotés les précédant) ; +% \item elle dispose d'un argument optionnel supplémentaire permettant de +% spécifier un titre courant différent des titres du texte et de la (des) +% tables des matières. % \end{itemize} % \begin{macrocode} -\let\YAD@ORI@chapter\chapter% +% \let\YAD@ORI@chapter\chapter% +\LetLtxMacro{\YAD@ORI@chapter}{\chapter}% \AfterPreamble{% delay the redefinition when titlesec has done its own - \renewcommand\chapter - {% + \renewcommand\chapter{% + \boolfalse{YAD@nonnumbered@chapter}% + \boolfalse{YAD@nonnumbered@section}% + \boolfalse{YAD@nonnumbered@subsection}% + \boolfalse{YAD@nonnumbered@subsubsection}% + \boolfalse{YAD@nonnumbered@paragraph}% + \boolfalse{YAD@nonnumbered@subparagraph}% + % \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]% + \YAD@printbibliography@ORI[segment=\therefsegment,heading=YAD@localbibs@heading]% \let\blx@warn@bibempty\YAD@ORI@blx@warn@bibempty% }{% } @@ -5224,9 +5256,32 @@ This work consists of the file yathesis.dtx }% \@ifstar{\YAD@starred@chapter}{\YAD@unstarred@chapter}% }% - \newcommand{\YAD@starred@chapter}{% - \setcounter{secnumdepth}{-10}% - \YAD@ORI@chapter% + \newcommandtwoopt{\YAD@tmp@chapter}[3][][]{% + \ifthenelse{\isempty{#1}}{% + \ifthenelse{\isempty{#2}}{% + \YAD@ORI@chapter{#3}% + }{% + \YAD@ORI@chapter{#3}% + \chaptermark{#2}% + }% + }{% + \ifthenelse{\isempty{#2}}{% + \YAD@ORI@chapter[#1]{#3}% + }{% + \YAD@ORI@chapter[#1]{#3}% + \chaptermark{#2}% + }% + }% + }% + \newcommandtwoopt{\YAD@starred@chapter}[3][][]{% + \booltrue{YAD@nonnumbered@chapter}% + \booltrue{YAD@nonnumbered@section}% + \booltrue{YAD@nonnumbered@subsection}% + \booltrue{YAD@nonnumbered@subsubsection}% + \booltrue{YAD@nonnumbered@paragraph}% + \booltrue{YAD@nonnumbered@subparagraph}% + \YAD@setsecnumdepth{none}% + \YAD@tmp@chapter[#1][#2]{#3}% }% % \end{macrocode} % La numérotation des chapitres non étoilés au niveau initial @@ -5234,11 +5289,11 @@ This work consists of the file yathesis.dtx % ("\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}{% + \newcommandtwoopt{\YAD@unstarred@chapter}[3][][]{% \if@mainmatter% \YAD@setsecnumdepth{\YAD@secnumdepth} \fi% - \YAD@ORI@chapter% + \YAD@tmp@chapter[#1][#2]{#3}% }% % \end{macrocode} % On ne veut pas utiliser cette nouvelle définition de "\chapter*" pour @@ -5257,6 +5312,188 @@ This work consists of the file yathesis.dtx \xpretocmd{\printindex}{\renewcommand{\YAD@localtoc}{}}{}{}% \xapptocmd{\printindex}{\renewcommand{\YAD@localtoc}{\YAD@default@localtoc}}{}{}% % \end{macrocode} +% On redéfinit la commande "\section" de sorte que, comme la commande +% "\chapter", elle dispose d'un argument optionnel supplémentaire permettant de +% spécifier un titre courant différent des titres du texte et de la (des) +% tables des matières. +% \end{itemize} +% \begin{macrocode} +\LetLtxMacro{\YAD@ORI@section}{\section} +\renewcommand\section{% + % \boolfalse{YAD@nonnumbered@section}% + % \boolfalse{YAD@nonnumbered@subsection}% + % \boolfalse{YAD@nonnumbered@subsubsection}% + % \boolfalse{YAD@nonnumbered@paragraph}% + % \boolfalse{YAD@nonnumbered@subparagraph}% + \if@mainmatter% + \ifbool{YAD@nonnumbered@chapter}{% + }{% + \YAD@setsecnumdepth{\YAD@secnumdepth}% + }% + \fi% + \@ifstar{\YAD@starred@section}{\YAD@unstarred@section}% +} +\newcommandtwoopt*{\YAD@tmp@section}[3][][]{% + \ifthenelse{\isempty{#1}}{% + \ifthenelse{\isempty{#2}}{% + \YAD@ORI@section{#3}% + }{% + \let\YAD@ORI@sectionmark\sectionmark% + \renewcommand\sectionmark[1]{}% + \YAD@ORI@section{#3}% + \YAD@ORI@sectionmark{#2}% + \let\sectionmark\YAD@ORI@sectionmark% + }% + }{% + \ifthenelse{\isempty{#2}}{% + \YAD@ORI@section[#1]{#3}% + }{% + \let\YAD@ORI@sectionmark\sectionmark% + \renewcommand\sectionmark[1]{}% + \YAD@ORI@section[#1]{#3}% + \YAD@ORI@sectionmark{#2}% + \let\sectionmark\YAD@ORI@sectionmark% + }% + }% +}% +\newcommandtwoopt{\YAD@starred@section}[3][][]{% + \booltrue{YAD@nonnumbered@section}% + \booltrue{YAD@nonnumbered@subsection}% + \booltrue{YAD@nonnumbered@subsubsection}% + \booltrue{YAD@nonnumbered@paragraph}% + \booltrue{YAD@nonnumbered@subparagraph}% + \YAD@setsecnumdepth{none}% + \YAD@tmp@section[#1][#2]{#3}% +}% +\newcommandtwoopt{\YAD@unstarred@section}[3][][]{% + \YAD@tmp@section[#1][#2]{#3}% +}% +% \end{macrocode} +% On redéfinit la commande "\subsection" de sorte que sa version étoilée dispose +% des mêmes facilités que les versions étoilées des commandes "\chapter" et +% "\section". +% \end{itemize} +% \begin{macrocode} +\LetLtxMacro{\YAD@ORI@subsection}{\subsection} +\renewcommand\subsection{% + % \boolfalse{YAD@nonnumbered@subsection}% + % \boolfalse{YAD@nonnumbered@subsubsection}% + % \boolfalse{YAD@nonnumbered@paragraph}% + % \boolfalse{YAD@nonnumbered@subparagraph}% + \if@mainmatter% + \ifbool{YAD@nonnumbered@section}{% + }{% + \YAD@setsecnumdepth{\YAD@secnumdepth}% + }% + \fi% + \@ifstar{\YAD@starred@subsection}{\YAD@unstarred@subsection}% +} +\newcommand*{\YAD@tmp@subsection}[2][]{% + \ifthenelse{\isempty{#1}}{% + \YAD@ORI@subsection{#2}% + }{% + \YAD@ORI@subsection[#1]{#2}% + }% +}% +\newcommand{\YAD@starred@subsection}[2][]{% + \booltrue{YAD@nonnumbered@subsection}% + \booltrue{YAD@nonnumbered@subsubsection}% + \booltrue{YAD@nonnumbered@paragraph}% + \booltrue{YAD@nonnumbered@subparagraph}% + \YAD@setsecnumdepth{none}% + \YAD@tmp@subsection[#1]{#2}% +}% +\newcommand{\YAD@unstarred@subsection}[2][]{% + \YAD@tmp@subsection[#1]{#2}% +}% +% +\LetLtxMacro{\YAD@ORI@subsubsection}{\subsubsection} +\renewcommand\subsubsection{% + % \boolfalse{YAD@nonnumbered@subsubsection}% + % \boolfalse{YAD@nonnumbered@paragraph}% + % \boolfalse{YAD@nonnumbered@subparagraph}% + \if@mainmatter% + \ifbool{YAD@nonnumbered@subsection}{% + }{% + \YAD@setsecnumdepth{\YAD@secnumdepth}% + }% + \fi% + \@ifstar{\YAD@starred@subsubsection}{\YAD@unstarred@subsubsection}% +} +\newcommand*{\YAD@tmp@subsubsection}[2][]{% + \ifthenelse{\isempty{#1}}{% + \YAD@ORI@subsubsection{#2}% + }{% + \YAD@ORI@subsubsection[#1]{#2}% + }% +}% +\newcommand{\YAD@starred@subsubsection}[2][]{% + \booltrue{YAD@nonnumbered@subsubsection}% + \booltrue{YAD@nonnumbered@paragraph}% + \booltrue{YAD@nonnumbered@subparagraph}% + \YAD@setsecnumdepth{none}% + \YAD@tmp@subsubsection[#1]{#2}% +}% +\newcommand{\YAD@unstarred@subsubsection}[2][]{% + \YAD@tmp@subsubsection[#1]{#2}% +}% +% +\LetLtxMacro{\YAD@ORI@paragraph}{\paragraph} +\renewcommand\paragraph{% + % \boolfalse{YAD@nonnumbered@paragraph}% + % \boolfalse{YAD@nonnumbered@subparagraph}% + \if@mainmatter% + \ifbool{YAD@nonnumbered@subsubsection}{% + }{% + \YAD@setsecnumdepth{\YAD@secnumdepth}% + }% + \fi% + \@ifstar{\YAD@starred@paragraph}{\YAD@unstarred@paragraph}% +} +\newcommand*{\YAD@tmp@paragraph}[2][]{% + \ifthenelse{\isempty{#1}}{% + \YAD@ORI@paragraph{#2}% + }{% + \YAD@ORI@paragraph[#1]{#2}% + }% +}% +\newcommand{\YAD@starred@paragraph}[2][]{% + \booltrue{YAD@nonnumbered@paragraph}% + \booltrue{YAD@nonnumbered@subparagraph}% + \YAD@setsecnumdepth{none}% + \YAD@tmp@paragraph[#1]{#2}% +}% +\newcommand{\YAD@unstarred@paragraph}[2][]{% + \YAD@tmp@paragraph[#1]{#2}% +}% +% +\LetLtxMacro{\YAD@ORI@subparagraph}{\subparagraph} +\renewcommand\subparagraph{% + % \boolfalse{YAD@nonnumbered@subparagraph}% + \if@mainmatter% + \ifbool{YAD@nonnumbered@paragraph}{% + }{% + \YAD@setsecnumdepth{\YAD@secnumdepth}% + }% + \fi% + \@ifstar{\YAD@starred@subparagraph}{\YAD@unstarred@subparagraph}% +} +\newcommand*{\YAD@tmp@subparagraph}[2][]{% + \ifthenelse{\isempty{#1}}{% + \YAD@ORI@subparagraph{#2}% + }{% + \YAD@ORI@subparagraph[#1]{#2}% + }% +}% +\newcommand{\YAD@starred@subparagraph}[2][]{% + \booltrue{YAD@nonnumbered@subparagraph}% + \YAD@setsecnumdepth{none}% + \YAD@tmp@subparagraph[#1]{#2}% +}% +\newcommand{\YAD@unstarred@subparagraph}[2][]{% + \YAD@tmp@subparagraph[#1]{#2}% +}% +% \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 % qui peuvent être créées. @@ -5638,11 +5875,10 @@ This work consists of the file yathesis.dtx \AtEndPreamble{% \@ifpackageloaded{biblatex}{% \defbibheading{bibintoc}[\bibname]{\chapter*{#1}}% - % \defbibheading{subbibintoc}[\bibname]{\section*{#1}}% \defbibheading{YAD@localbibs@heading}[\translate{lbl-localbibname}]{% - % \YAD@setsecnumdepth{none}% + \renewcommand\addcontentsline[3]{}% \section*{#1}% - % \YAD@setsecnumdepth{\YAD@secnumdepth}% + \let\addcontentsline\YAD@addcontentsline }% % \end{macrocode} % @@ -5951,12 +6187,25 @@ This work consists of the file yathesis.dtx \expression{meta-ordernumber}{num\'ero d'ordre}{order number}% % \end{macrocode} % +% The following translations are gathered in the +% \file{yathesis-translations.tex} file that has to be input in the class. +% \begin{macrocode} +\InputIfFileExists{\YAD@translations@file}{}{% + \ClassError{% + Fichier \`YAD@translations@file' non trouve% + }{% + Le fichier \`YAD@translations@file' n'a pas ete trouve.\MessageBreak% + Veuillez verifier votre installation de la classe `yathesis'.% + }% +} +% \end{macrocode} +% % \begin{macrocode} %</class> % \end{macrocode} % % \begin{macrocode} -%<*class|translations> +%<*translations> % \end{macrocode} % Traduction des expressions clés de la thèse. % \begin{macrocode} @@ -6025,31 +6274,29 @@ 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{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}% \expression{supervisedby-hdr}{Directeurs}{Supervisors}% -\expression{thesisdefendedby}{Th\`ese pr\'esent\'ee par}{Thesis defended - by}% +\expression{thesisdefendedby}{Th\`ese pr\'esent\'ee par}{Thesis defended by}% \expression{thesisdefendedby-hdr}{Habilitation \`a diriger les recherches pr\'esent\'ee par}{Habilitation to conduct research defended by}% \expression{thesistitle}{Titre de la th\`ese}{Thesis Title}% -\expression{thesistitle-hdr}{Titre de l'habilitation \`a diriger les recherches}{Habilitation to conduct research's Title}% +\expression{thesistitle-hdr}{Titre de l'habilitation \`a diriger les + recherches}{Habilitation to conduct research's Title}% \expression{inprogress}{travail en cours}{work in progress}% -\expression{universitydepartment}{Unit\'e de recherche}{University - Department}% -%<!translations>\expression{versiondate}{Version interm\'ediaire en date -%<!translations>du}{Work in progress as of}% -%<translations>\expression{inprogressfoottext}{Version interm\'ediaire en -%<translations>date du}{Work in progress as of}% -%<class>\expression{inprogressfoottext}{\translate{lbl-versiondate}}{\translate{lbl-versiondate}}% -\expression{submittedfoottext}{Version soumise en date du}{Submitted work - as of}% +\expression{universitydepartment}{Unit\'e de recherche}{University Department}% +\expression{versiondate}{Version interm\'ediaire en date du}{Work in progress as + of}% +\expression{inprogressfoottext}{\translate{lbl-versiondate}}{\translate{lbl-versiondate}}% +\expression{submittedfoottext}{Version soumise en date du}{Submitted work as + of}% % \end{macrocode} % % \begin{macrocode} -%</class|translations> +%</translations> % \end{macrocode} % % \chapter{Fichier de complétion} @@ -6061,7 +6308,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} # mode: yathesis.cls -# denisbitouze, 30.10.2016 +# denisbitouze, 2016-12-01 # #include:class-book #include:latex-document @@ -6161,34 +6408,35 @@ datetime \author[%<email%>]{%<prénom%>}{%<nom%>}#n # # Title, etc. -\title[%<titre dans la langue secondaire%>]{%<titre dans la langue principale%>}#n -\subtitle[%<sous-titre dans la langue secondaire%>]{%<sous-titre dans la langue principale%>}#n -\academicfield[%<discipline dans la langue secondaire%>]{%<discipline dans la langue principale%>}#n -\speciality[%<spécialité dans la langue secondaire%>]{%<spécialité dans la langue principale%>}#n -\subject[%<sujet dans la langue secondaire%>]{%<sujet dans la langue principale%>}#n +\title[titre dans la langue secondaire%text]{titre dans la langue principale%text}#n +\subtitle[sous-titre dans la langue secondaire%text]{sous-titre dans la langue principale%text}#n +\academicfield[discipline dans la langue secondaire%text]{discipline dans la langue principale%text}#n +\speciality[spécialité dans la langue secondaire%text]{spécialité dans la langue principale%text}#n +\subject[sujet dans la langue secondaire%text]{sujet dans la langue principale%text}#n # -\title{%<titre%>}#n -\subtitle{%<sous-titre%>}#n -\academicfield{%<discipline%>}#n -\speciality{%<spécialité%>}#n -\subject{%<sujet%>}#n +\title{titre%text}#n +\subtitle{sous-titre%text}#n +\academicfield{discipline%text}#n +\speciality{spécialité%text}#n +\subject{sujet%text}#n \date{%<jour%>}{%<mois%>}{%<année%>}#n +\submissiondate{%<jour%>}{%<mois%>}{%<année%>}#n # # 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 +\institute{nom de l'institut%text}#n +\coinstitute{nom de l'institut de cotutelle%text}#n \company{%<nom de l'entreprise%>}#n -\doctoralschool{%<nom de l'école doctorale%>}#n -\laboratory{%<nom du laboratoire%>}{adresse du laboratoire%>}#n +\doctoralschool{nom de l'école doctorale%text}#n +\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 +\institute[%<précision(s)%>]{nom de l'institut%text}#n +\coinstitute[%<précision(s)%>]{nom de l'institut de cotutelle%text}#n \company[%<précision(s)%>]{%<nom de l'entreprise%>}#n -\doctoralschool[%<précision(s)%>]{%<nom de l'école doctorale%>}#n +\doctoralschool[%<précision(s)%>]{nom de l'école doctorale%text}#n \laboratory[%<précision(s)%>]{%<nom du laboratoire%>}{%<adresse du laboratoire%>}#n # #keyvals:\pres @@ -6329,23 +6577,22 @@ juniorresearcher* # Misc \ordernumber[%<numéro d'ordre%>]#n \ordernumber#n* -\submissiondate{%<jour%>}{%<mois%>}{%<année%>}#n # -# Preliminary pages +# Preliminary part # -\disclaimer{%<clause%>}#n +\disclaimer{clause%text}#n \makedisclaimer#n \makedisclaimer*#n -\keywords{%<mots clés dans la langue principale%>}{%<mots clés dans la langue secondaire%>}#n +\keywords{mots clés dans la langue principale%text}{mots clés dans la langue secondaire%text}#n \makekeywords#n \makekeywords*#n \makelaboratory#n \makelaboratory*#n -\dedication{%<dédicace%>}#n +\dedication{dédicace%text}#n \makededications#n \makededications*#n -\frontepigraph{%<épigraphe%>}{%<auteur%>} -\frontepigraph[%<langue%>]{%<épigraphe%>}{%<auteur%>} +\frontepigraph{épigraphe%text}{%<auteur%>} +\frontepigraph[%<langue%>]{épigraphe%text}{%<auteur%>} #keyvals:\frontepigraph afrikaans bahasa @@ -6393,11 +6640,11 @@ welsh \makefrontepigraphs#n \makefrontepigraphs*#n \begin{abstract}#n -\begin{abstract}[%<intitulé alternatif%>]#n* +\begin{abstract}[intitulé alternatif%text]#n* \end{abstract}#n \makeabstract#n -\newglssymbol{%<label%>}{%<symbole%>}{%<nom%>}{%<description%>}#n -\newglssymbol[%<classement%>]{%<label%>}{%<symbole%>}{%<nom%>}{%<description%>}#n +\newglssymbol{%<label%>}{%<symbole%>}{%<nom%>}{description%text}#n +\newglssymbol[%<classement%>]{%<label%>}{%<symbole%>}{%<nom%>}{description%text}#n \tableofcontents#n* \tableofcontents[%<précision(s)%>]#n* # @@ -6406,17 +6653,51 @@ depth=#part,chapter,section,subsection,subsubsection,paragraph,subparagraph name= #endkeyvals # -# Main pages +# Main part # -# Appendix pages +\chapter{titre%title}#L1 +\chapter*{titre%title}#L1 +\chapter[titre alt. pour TdM et entête%short title]{titre%title}#L1 +\chapter*[titre alt. pour TdM et entête%short title]{titre%title}#L1 +\chapter[titre alt. pour TdM%short title][titre alt. pour entête%short title]{titre%title}#L1 +\chapter*[titre alt. pour TdM%short title][titre alt. pour entête%short title]{titre%title}#L1 +\section{titre%title}#L2 +\section*{titre%title}#L2 +\section[titre alt. pour TdM et entête%short title]{titre%title}#L2 +\section*[titre alt. pour TdM et entête%short title]{titre%title}#L2 +\section[titre alt. pour TdM%short title][titre alt. pour entête%short title]{titre%title}#L2 +\section*[titre alt. pour TdM%short title][titre alt. pour entête%short title]{titre%title}#L2 +\subsection{titre%title}#L3 +\subsection*{titre%title}#L3 +\subsection[titre alt. pour TdM et entête%short title]{titre%title}#L3 +\subsection*[titre alt. pour TdM et entête%short title]{titre%title}#L3 +\subsubsection{titre%title}#L4 +\subsubsection*{titre%title}#L4 +\subsubsection[titre alt. pour TdM et entête%short title]{titre%title}#L4 +\subsubsection*[titre alt. pour TdM et entête%short title]{titre%title}#L4 +\paragraph{titre%title}#L5 +\paragraph*{titre%title}#L5 +\paragraph[titre alt. pour TdM et entête%short title]{titre%title}#L5 +\paragraph*[titre alt. pour TdM et entête%short title]{titre%title}#L5 +\subparagraph{titre%title}#L6 +\subparagraph[titre alt. pour TdM et entête%short title]{titre%title}#L6 # -# Back matter pages +# Appendix part +# +# Back matter part # \makebackcover # +# All parts +# +\startlocaltocs +\stoplocaltocs +\nextwithlocaltoc +\nextwithoutlocaltoc +# # Customization # -\expression{%<label%>}{%<valeur (en français)%>}{%<valeur (en anglais)%>}#n* +\expression{%<label%>}{valeur (en français)%text}{valeur (en anglais)%text}#n* % \end{macrocode} % % \begin{macrocode} |