summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/yathesis/source/yathesis.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/yathesis/source/yathesis.dtx')
-rw-r--r--macros/latex/contrib/yathesis/source/yathesis.dtx329
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%
}%
}%