diff options
Diffstat (limited to 'macros/latex/contrib/yathesis/source/yathesis.dtx')
-rw-r--r-- | macros/latex/contrib/yathesis/source/yathesis.dtx | 329 |
1 files changed, 303 insertions, 26 deletions
diff --git a/macros/latex/contrib/yathesis/source/yathesis.dtx b/macros/latex/contrib/yathesis/source/yathesis.dtx index 7b59e2b682..75a07ebde0 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.8 +- `yathesis` --- Yet Another Thesis Class, version 1.0.9 - 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 @@ -62,6 +62,270 @@ Typesetting the documentation of the class requires: latexmk -norc -r ./latexmkrc yathesis-fr %</readme> +%<*changelog> +# [Unreleased] + +# [1.0.9] - 2021-10-13 + +## Fixed +- Bug gh #90 (https://git.io/JKO3L). +- Bug gh #87 (https://git.io/JKO3Z). +- Bug gh #86 (https://git.io/JKO3W). + +# [1.0.8] - 2021-07-13 + +## Fixed +- Bug gh #85 (https://git.io/JCTjv). +- Bug gh #84 (https://git.io/JCTpu). +- Bug gh #83 (https://git.io/JYfz8). + +## Changed +- The fix of #85 above renders ineffective the `\includeonly` command when the + option `\localbibs` is used. This is an incompatible change but only for + a command that is used only temporarily, so we don't increment the major + version number. +- Again expose `\listoflistings` in the samples. + +# [1.0.7] - 2021-03-24 + +## Removed +- Useless and confusing file in the samples removed (no functional changes). + +## Changed +- Don't expose `\listoflistings` in the samples (bug gh #83, + https://git.io/JYfz8). + +# [1.0.6] - 2021-03-23 + +## Added +- Command allowing, for each chapter, to specify a text inserted between its + head and its possible automatic local table of contents (issue gh #82, + https://git.io/JYeVe). + +## Changed +- Table listing the members of the committee: + - with \textwidth as width, + - with 3 and not 4 columns in case president is not specified. +- Documentation revised. + +## Fixed +- Bug gh #81 (https://git.io/JYeVY). + +# [1.0.5] - 2021-02-05 + +## Changed +- The class now relies on the new LaTeX core hooks. +- Documentation revised. + +## Fixed +- Setting the main language was not taken into account by some packages + (e.g. `csquotes`). + +# [1.0.4] - 2020-10-14 + +## Changed +- Documentation revised. +- The class now relies on `datetime2` and not on `datetime`. + +## Fixed +- Bug gh #76 (https://git.io/JTTpX). +- Bug gh #77 (https://git.io/JTTpu). +- Bug gh #78 (https://git.io/JTTpQ). + +# [1.0.3] - 2020-06-16 + +## Changed +- Documentation revised. +- Specimens improved. +- Package `titlesec` used instead of `titleps`: possible (hopefully slight) layout discrepancies. + +## Fixed +- Bug gh #74 (https://git.io/Jf64U). +- Bug gh #65 (https://git.io/Jf64k), continuation and (hopefully) ending. + +# [1.0.2] - 2020-04-13 + +## Changed + +- Specimens now highlight the automatic local tocs and local bibs features of + the class. +- Verso of the asbtract page now with empty footer. +- Completion file for TeXstudio improved and updated. + +## Fixed +- Switches between pages styles robustified. +- Bug #65 now for bibtex as well. +- French rules were applied to glossaries and acronyms even in case of + `mainlanguage=english`. +- Subtitles were too close to multiline titles. + +# [1.0.1] - 2020-03-28 + +## Changed +- Documentation revised. +- Specimens improved. + +## Fixed +- Bug gh #73. + + +# [1.0.0] - 2020-03-26 + +## Added +- (Partial) CHANGELOG file (following https://keepachangelog.com/en/1.0.0/). +- Semantic versionning (following https://semver.org/). +- Colophon automatically added to the thesis, with possibility to: + - remove it, + - change: + - its location from 2nd cover to 3rd one, + - its content. + +## Changed +- `\disclaimer` replaced by (and alias of) `\disclaimertext`. +- Warnings and error messages now contain (expected) accented characters. + +## Fixed +- Several bug fixes (among others gh #65 and #67). + + +# [0.99u] - 2019-03-28 + +## Added +- `\maketitle` option `noaim` for (slight) customization of the title pages. +- `\institute`, `\coinstitute` and `\company` option `nologo` for (slight) + customization of the title pages (gh #51). + +## Changed +- Documentation revised and extended. +- Key expressions "Titre de la thèse" and "Titre de l’habilitation à diriger les + recherches" (and English equivalents) now empty. +- Key expression "Directeurs" (and English equivalent) introducing the list of + the "HDR" directors now replaced by "Habilitation dirigée par" (and English + equivalent). +- Options `noinstitute`, `nodoctoralschool`, `nolaboratory`, `nodate`, + `noacademicfield`: now turn off on title pages the display of the + corresponding elements (as well as the co-institute for `noinstitute` and + specialty for `noacademicfield`). +- On the title page (s) in French, automatic gender agreement in expressions + keys introducing the groups member of the committee. + +## Fixed +- Several bug fixes (among others gh #43). + + +# [0.99t] - 2018-07-09 + +## Fixed +- Several bug fixes. + + +# [0.99s] - 2018-06-22 + +## Fixed +- Several bug fixes (among others gh #58 and #60). + + +# [0.99s] - 2018-06-21 + +## Fixed +- Several bug fixes (among others gh #59). + + +# [0.99r] - 2018-06-02 + +## Fixed +- Several bug fixes. + + +# [0.99q] - 2018-05-04 + +## Removed +- Useless files on CTAN (no functional changes). + + +# [0.99q] - 2018-04-10 + +## Fixed +- Several bug fixes (among others gh #57). + + +# [0.99p] - 2016-12-08 + +## Added +- `\chapter` and `\section` have an extra optional argument for an alternative + title in header different from the one in the ToC. +- Simplification of the use of all starred structuring commands (their + substructuring commands don't need to be starred). + +## Changed +- Documentation revised and extended. + + +# [0.99o] - 2016-10-30 + +## Added +- Automatic local (by chapter) tables of contents (thanks to Jean-François + Burnol's etoc and help): option `localtocs` (gh #45). +- Automatic local (by chapter) bibliographies: option `localbibs`. + +## Changed +- Documentation revised and revised and extended. (index of concepts). +- English translation of "MCF" ("Associate Professor" instead of "Lecturer"). + +## Removed +- Useless warning from `iflang` package. + +## Fixed +- Several bug fixes. + + +# [0.99n] - 2016-06-11 + +## Changed +- Documentation revised and extended. +- Reorganization and change of names of specimens and templates. + + +# [0.99m] - 2016-05-22 + +## Added +- Documentation can be compiled with `pdflatex`. +- Specimens and templates included in the PDF of the documentation as `.zip` + archive. + + +## Changed +- Documentation revised and extended. +- Reorganization and change of names of specimens and templates. + + +# [0.99l] - 2014-10-23 + +## Changed +- Documentation revised and extended. +- Reorganization and change of names of specimens and templates. + +# [0.99k] - 2014-10-01 + +## Added +- Macro \submissiondate + +## Changed +- Documentation revised and extended. +- Page numbers on first page of each chapters (with numberred pages). + +## Removed +- Class option `bookmark`. + +## Fixed +- Several bug fixes. + + +# [0.99j] - 2014-07-18 + +## Added +- Initial CTAN release of the `yathesis` class (2014-07-27). +%</changelog> %<*internal> \fi \def\nameofplainTeX{plain} @@ -70,8 +334,8 @@ Typesetting the documentation of the class requires: \fi %</internal> %<*class|install> -\def\yathesisversion{1.0.8} -\def\yathesisdate{2021-07-13} +\def\yathesisversion{1.0.9} +\def\yathesisdate{2021-10-13} %</class|install> %<*install> \input docstrip.tex @@ -137,6 +401,10 @@ This work consists of the file yathesis.dtx \nopreamble\nopostamble \file{README.md}{\from{\jobname.dtx}{readme}} }% +\generate{ + \nopreamble\nopostamble + \file{CHANGELOG.md}{\from{\jobname.dtx}{changelog}} +}% \usedir{tex/latex/\YAD@classname} \generate{% \file{\YAD@classname.cls}{\from{\jobname.dtx}{class}} @@ -1852,9 +2120,9 @@ This work consists of the file yathesis.dtx % On fait en sorte que la clé "corporation", obsolète et remplacée par la clé % "corps", soit un alias de ce dernier. % \begin{macrocode} - % \ifthenelse{\equal{\cmdKV@YAD@corporation}{}}{% + % \YAD@ifemptyorundef{\cmdKV@YAD@corporation}{% % }{% - % \ifthenelse{\equal{\cmdKV@YAD@corps}{}}{% + % \YAD@ifemptyorundef{\cmdKV@YAD@corps}{% % \yadsetup{#1,corps=\cmdKV@YAD@corporation}% % }{% % }% @@ -2263,7 +2531,7 @@ This work consists of the file yathesis.dtx \ifthenelse{\DTLiseq{\YAD@committeemember@corps}{}}{% \YAD@committeemember@affiliation% }{% - \ifthenelse{\equal{\YAD@committeemember@sepcorpaffil}{}}{% + \YAD@ifemptyorundef{\YAD@committeemember@sepcorpaffil}{% \YAD@if@starts@with@vowel{\YAD@committeemember@affiliation}{\YAD@al}{\YAD@au}\YAD@committeemember@affiliation% }{% \YAD@committeemember@sepcorpaffil\YAD@committeemember@affiliation% @@ -2530,7 +2798,7 @@ This work consists of the file yathesis.dtx }% % \boolfalse{YAD@nolink}% \yadsetup{##1}% - \ifthenelse{\equal{\cmdKV@YAD@url}{}}{% + \YAD@ifemptyorundef{\cmdKV@YAD@url}{% \ifdraft{% \YAD@reach@file{% \YAD@texte% @@ -2561,7 +2829,7 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \csdef{print#2address}{% \yadsetup{##1}% - \ifthenelse{\equal{\cmdKV@YAD@address}{}}{% + \YAD@ifemptyorundef{\cmdKV@YAD@address}{% \YAD@reach@file{\YAD@generic@argument@translate{address#2}}% }{% \YAD@reach@file{\cmdKV@YAD@address}% @@ -2573,7 +2841,7 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \csdef{print#2telephone}{% \yadsetup{##1}% - \ifthenelse{\equal{\cmdKV@YAD@telephone}{}}{% + \YAD@ifemptyorundef{\cmdKV@YAD@telephone}{% \YAD@reach@file{\YAD@generic@argument@translate{telephone#2}}% }{% \YAD@reach@file{\cmdKV@YAD@telephone}% @@ -2585,7 +2853,7 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \csdef{print#2fax}{% \yadsetup{##1}% - \ifthenelse{\equal{\cmdKV@YAD@fax}{}}{% + \YAD@ifemptyorundef{\cmdKV@YAD@fax}{% \YAD@reach@file{\YAD@generic@argument@translate{fax#2}}% }{% \YAD@reach@file{\cmdKV@YAD@fax}% @@ -2598,7 +2866,7 @@ This work consists of the file yathesis.dtx % \begin{macrocode} \csdef{print#2email}{% \YAD@reach@file{% - \ifthenelse{\equal{\cmdKV@YAD@email}{}}{% + \YAD@ifemptyorundef{\cmdKV@YAD@email}{% % \ifbool{YAD@nolink}{% % \YAD@generic@argument@translate{#2email}% % }{% @@ -2647,11 +2915,12 @@ This work consists of the file yathesis.dtx }{% }% \renewcommand*\YAD@logo{% - \ifthenelse{\equal{\cmdKV@YAD@logo}{}}{% + \YAD@ifemptyorundef{\cmdKV@YAD@logo}{% \YAD@reach@file{\YAD@generic@argument@translate{logo#2}}% }{% \YAD@reach@file{% \includegraphics[height=\cmdKV@YAD@logoheight]{\cmdKV@YAD@logo}% + \renewcommand*\cmdKV@YAD@logo{}% }% }% }% @@ -2660,7 +2929,7 @@ This work consists of the file yathesis.dtx % \ifbool{YAD@nolink}{% % \YAD@logo% % }{% - \ifthenelse{\equal{\cmdKV@YAD@url}{}}{% + \YAD@ifemptyorundef{\cmdKV@YAD@url}{% % \YAD@href{www.#2.fr}{ \YAD@logo% % }% @@ -2670,7 +2939,7 @@ This work consists of the file yathesis.dtx % }% \fi% \setlength\cmdKV@YAD@logoheight{\YAD@default@logoheight}% - \boolfalse{YAD@nologo} + \boolfalse{YAD@nologo}% \booltrue{YAD@logo@before}% }% }% @@ -3139,7 +3408,7 @@ This work consists of the file yathesis.dtx % 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. +% (numérotés ou pas) dans la table des matières. % % \begin{macro}{\tableofcontents} % \begin{macrocode} @@ -3320,7 +3589,7 @@ This work consists of the file yathesis.dtx % \end{macrocode} % \end{macro} % 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. +% débutent pas par des tables des matières locales. % \begin{macrocode} \AddToHook{begindocument}{% \setcounter{secnumdepth}{-10}% @@ -5001,7 +5270,7 @@ This work consists of the file yathesis.dtx % 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). +% suivant). % \begin{macrocode} % it will be easy to globally shift the TOC horizontally if needed \def\YAD@leftmargin {0pt} @@ -5083,14 +5352,14 @@ This work consists of the file yathesis.dtx \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 @@ -5101,7 +5370,7 @@ This work consists of the file yathesis.dtx \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}% @@ -5170,7 +5439,7 @@ This work consists of the file yathesis.dtx \leavevmode\leaders\hrule\@height\p@\hfill\kern\z@\par \bigskip \if@restonecol \twocolumn \fi } - % % + % % \etocsetstyle{section} {% \advance\leftskip\YAD@numwidthC\relax% } {% @@ -5194,7 +5463,7 @@ This work consists of the file yathesis.dtx {} {% \advance\leftskip-\YAD@numwidthC\relax% } - % % + % % \YAD@setlinestyle {subsection}{\YAD@numwidthD}% \YAD@setlinestyle {subsubsection}{\YAD@numwidthE}% \YAD@setlinestyle {paragraph}{\YAD@numwidthF}% @@ -5211,7 +5480,7 @@ This work consists of the file yathesis.dtx % % \begin{macrocode} \newcommand*\YAD@computenumwidths@ [2] {% #1 pour `etoc' ou `local', #2=pour le - % \kern + % \kern \begingroup \def\YAD@numwidthB {0pt}% \def\YAD@numwidthC {0pt}% @@ -5238,7 +5507,7 @@ This work consists of the file yathesis.dtx \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 @@ -5517,7 +5786,11 @@ This work consists of the file yathesis.dtx \let\YAD@ORI@sectionmark\sectionmark% \renewcommand\sectionmark[1]{}% \YAD@ORI@section{#3}% - \YAD@ORI@sectionmark{#2}% + \ifbool{YAD@nonnumbered@section}{% + \YAD@ORI@sectionmark{#2}% + }{% + \YAD@ORI@sectionmark{\thesection. #2}% + }% \let\sectionmark\YAD@ORI@sectionmark% }% }{% @@ -5527,7 +5800,11 @@ This work consists of the file yathesis.dtx \let\YAD@ORI@sectionmark\sectionmark% \renewcommand\sectionmark[1]{}% \YAD@ORI@section[#1]{#3}% - \YAD@ORI@sectionmark{#2}% + \ifbool{YAD@nonnumbered@section}{% + \YAD@ORI@sectionmark{#2}% + }{% + \YAD@ORI@sectionmark{\thesection. #2}% + }% \let\sectionmark\YAD@ORI@sectionmark% }% }% |