summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/gzt/gztarticle.cls
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-02-16 22:12:37 +0000
committerKarl Berry <karl@freefriends.org>2021-02-16 22:12:37 +0000
commit4ffe448c72373378e2a6320248f24d613eefc3bc (patch)
treed7000bf8df3c17014c88900c545121aba6ee08dc /Master/texmf-dist/tex/latex/gzt/gztarticle.cls
parent36a155c5782a22bcb5bd256ba9f77cbc2103e9dc (diff)
gzt (16feb21)
git-svn-id: svn://tug.org/texlive/trunk@57765 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/gzt/gztarticle.cls')
-rw-r--r--Master/texmf-dist/tex/latex/gzt/gztarticle.cls284
1 files changed, 157 insertions, 127 deletions
diff --git a/Master/texmf-dist/tex/latex/gzt/gztarticle.cls b/Master/texmf-dist/tex/latex/gzt/gztarticle.cls
index 9ddb63cade8..78173f28dd8 100644
--- a/Master/texmf-dist/tex/latex/gzt/gztarticle.cls
+++ b/Master/texmf-dist/tex/latex/gzt/gztarticle.cls
@@ -7,12 +7,14 @@
%% gzt.dtx (with options: `class-article')
%% -----------------------------------------------------------------------------
%% gzt --- SMF bundle of classes for the French journal "La Gazette des
-%% Math'ematiciens", version 1.0.0
+%% Math'ematiciens"
%%
%% 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
%% -----------------------------------------------------------------------------
+\def\gztfileversion{1.0.1}
+\def\gztfiledate{2021-02-14}
\RequirePackage{silence}%
\WarningFilter{kpfonts}{With 'easyscsl' option}
\RequirePackage{xpatch}%
@@ -61,14 +63,15 @@
\ExplSyntaxOn
\ProvidesExplClass
{gztarticle}
- {2020-03-17}
- {1.0.0}
+ {\gztfiledate}
+ {\gztfileversion}
{
SMF~class~for~the~French~journal^^J
"La~Gazette~des~Math'ematiciens".
~(Author~version.)
}
\NeedsTeXFormat{LaTeX2e}
+\bool_new:N \g__gzt_moral_report_bool
\bool_new:N \g__gzt_special_edition_bool
\bool_new:N \g__gzt_for_authors_bool
\bool_new:N \g__gzt_for_printer_bool
@@ -78,6 +81,43 @@
\bool_new:N \g__gzt_no_inside_backcover_bool
\bool_gset_true:N \g__gzt_for_authors_bool%
\bool_gset_true:N \g__gzt_inside_pages_bool%
+\tl_gset:Nn \g__gzt_moral_report_common_option_tl {%
+ \AddToHook{begindocument/before} {%
+ \bool_gset_true:N \g__gzt_moral_report_bool
+ \bool_gset_true:N \g__gzt_frontcover_without_minitoc_bool
+ \title[short={\bfseries\c__gzt_moralreport_rubric_string_tl}]{}
+ \tl_gset:Nn \g__gzt_rubric_title_tl {\c__gzt_moralreport_rubric_string_tl}
+ }
+}
+\keys_define:nn { gztarticle }
+{
+ editorial .code:n = {%
+ \AddToHook{begindocument}{%
+ \__gzt_before_display_editorial:n {}%
+ }
+ \AddToHook{enddocument}{%
+ \__gzt_after_display_editorial: {}%
+ }
+ },%
+ presidentmessage .code:n = {%
+ \AddToHook{begindocument}{%
+ \__gzt_before_display_presidentmessage: {}%
+ }
+ \AddToHook{enddocument}{%
+ \__gzt_after_display_presidentmessage: {}%
+ }
+ },%
+ moralreport .code:n = {
+ \g__gzt_moral_report_common_option_tl
+ \keys_set:nn { gztarticle / moralreport } {#1}
+ },
+ moralreport / title .code:n = {%
+ \tl_gset:Nn \g__gzt_moral_report_title_tl {#1}
+ },%
+ moralreport / short~title .code:n = {%
+ \tl_gset:Nn \g__gzt_moral_report_short_title_tl {#1}
+ },%
+}%
\PassOptionsToClass{openany,english,french}{book}
\LoadClass { book }
\PassOptionsToPackage{table,cmyk}{xcolor}%
@@ -124,7 +164,6 @@
\RequirePackage{mathtools}
\RequirePackage{rsfso}
\RequirePackage{esvect}
-\RequirePackage{everypage}
\RequirePackage{translator}%
\RequirePackage{geometry}
\RequirePackage{babel}%
@@ -203,7 +242,7 @@
\tl_const:Nn \c__gzt_printer_string_tl {Impression}
\tl_const:Nn \c__gzt_configuration_file_string_tl {gzt.cfg}
\tl_const:Nn \c__gzt_artistic_director_string_tl {Conception~graphique}
-\AtEndPreamble{
+\AddToHook{begindocument/before}{
\bool_if:NTF {\g__gzt_special_edition_bool} {
\tl_const:Nn \c__gzt_editorial_heading_string_tl {Avant-propos}
}{
@@ -219,7 +258,7 @@
\tl_const:Nn \c__gzt_special_edition_string_tl {\c_space_tl{}sp{\'e}cial}
\tl_const:Nn \c__gzt_long_special_edition_string_tl {Numéro\c__gzt_special_edition_string_tl}%
\tl_const:Nn \c__gzt_short_special_edition_string_tl {\No{}\c__gzt_special_edition_string_tl}%
-\AtEndPreamble{
+\AddToHook{begindocument/before}{
\tl_const:Nn \c__gzt_frontcover_header_string_tl {
\bool_if:NT {\g__gzt_special_edition_bool} {
\text_uppercase:n {\c__gzt_long_special_edition_string_tl}
@@ -239,21 +278,25 @@
}
\clist_const:Nn \c__gzt__graphics_extensions_clist {png,PNG,jpg,JPG,jpeg,JPEG,pdf,PDF}
\tl_const:Nn \c__gzt_pdftitle_string_tl {
- \c__gzt_journal_title_string_tl
- % \c_space_tl
- % \textendash{}
- % \c_space_tl
- % \l__gzt_uppercased_date_format{\displaydate{__gzt_date}}
- \c_space_tl
- \textendash{}
- \c_space_tl
- N°
- \bool_if:NTF {\g__gzt_special_edition_bool} {
- \c__gzt_special_edition_string_tl
- \c_space_tl
- \g__gzt_special_edition_title_tl
+ \bool_if:NTF {\g__gzt_moral_report_bool} {
+ \c__gzt_moralreport_rubric_string_tl
}{
- \int_use:N\g__gzt_issue_number_int
+ \c__gzt_journal_title_string_tl
+ % \c_space_tl
+ % \textendash{}
+ % \c_space_tl
+ % \l__gzt_uppercased_date_format{\displaydate{__gzt_date}}
+ \c_space_tl
+ \textendash{}
+ \c_space_tl
+ N°
+ \bool_if:NTF {\g__gzt_special_edition_bool} {
+ \c__gzt_special_edition_string_tl
+ \c_space_tl
+ \g__gzt_special_edition_title_tl
+ }{
+ \int_use:N\g__gzt_issue_number_int
+ }
}
}
\tl_const:Nn \c__gzt_frontmatter_directory_string_tl {frontmatter}
@@ -328,15 +371,19 @@
\c_space_tl
\textcolor{__gzt_date_color}{
\textendash{}\c_space_tl
- \text_uppercase:n {\c__gzt_journal_short_title_string_tl}
- \bool_if:nF { \g__gzt_inside_frontcover_bool || \g__gzt_backmatter_bool || {\int_compare_p:nNn {\g__gzt_issue_number_int}={0}} }
- {
- \c_space_tl\textendash{}\c_space_tl
- \l__gzt_uppercased_date_format\displaydate{__gzt_date}
- \bool_if:NF {\g__gzt_special_edition_bool} {
- \c_space_tl
- \textendash{}\c_space_tl
- \textcolor{__gzt_smf_number_color}{\No\int_use:N\g__gzt_issue_number_int}
+ \bool_if:NTF {\g__gzt_moral_report_bool} {
+ \text_uppercase:n { \c__gzt_moralreport_rubric_string_tl }
+ }{
+ \text_uppercase:n {\c__gzt_journal_short_title_string_tl}
+ \bool_if:nF { \g__gzt_inside_frontcover_bool || \g__gzt_backmatter_bool || {\int_compare_p:nNn {\g__gzt_issue_number_int}={0}} }
+ {
+ \c_space_tl\textendash{}\c_space_tl
+ \l__gzt_uppercased_date_format\displaydate{__gzt_date}
+ \bool_if:NF {\g__gzt_special_edition_bool} {
+ \c_space_tl
+ \textendash{}\c_space_tl
+ \textcolor{__gzt_smf_number_color}{\No\int_use:N\g__gzt_issue_number_int}
+ }
}
}
}
@@ -350,9 +397,9 @@
\tl_const:Nn \c__gzt_issue_bib_file_string_tl {\c_sys_jobname_str\c__gzt_issue_bib_file_suffix_string_tl.bib}
\tl_const:Nn \c__gzt_issue_bib_path_string_tl {\c__gzt_issue_bib_file_string_tl}
\bool_if:NTF {\g__gzt_special_edition_bool} {
- \tl_const:Nn \c__gzt_issue_bib_key_tl {\int_use:N \g__gzt_issue_number_int}
-}{
\tl_const:Nn \c__gzt_issue_bib_key_tl {special-edition}
+}{
+ \tl_const:Nn \c__gzt_issue_bib_key_tl {\int_use:N \g__gzt_issue_number_int}
}
\tl_const:Nn \c__gzt_interview_title_string_tl {En~apart\'e~avec~}
\tl_const:Nn \c__gzt_aside_string_tl {--}
@@ -870,16 +917,16 @@
\colorlet{__gzt_book_advertisement_bg_color}{white}
\colorlet{__gzt_book_advertisement_frame_color}{__gzt_generic_dark_color}
\colorlet{__gzt_default_cover_color}{white}
-\AtBeginEnvironment{multicols}{
+\AddToHook{env/multicols/begin}{
\bool_gset_true:N \g__gzt_multicols_bool
}
-\AtEndEnvironment{multicols}{
+\AddToHook{env/multicols/end}{
\bool_gset_false:N \g__gzt_multicols_bool
}
-\AtBeginEnvironment{refsection}{
+\AddToHook{env/refsection/begin}{
\bool_gset_true:N \g__gzt_refsection_bool
}
-\AtEndEnvironment{refsection}{
+\AddToHook{env/refsection/end}{
\bool_gset_false:N \g__gzt_refsection_bool
}
\tl_const:Nn \c__gzt_footer_size_font_tl {
@@ -930,28 +977,16 @@
\tl_gset:Nn \g__gzt_pdfauthor_string_tl {
\g__gzt_smf_string_tl
}
-\AtEndPreamble{%
+\AddToHook{begindocument/before}{%
\hypersetup{%
pdftitle=\g__gzt_pdftitle_string_tl,
pdfauthor=\g__gzt_pdfauthor_string_tl%
}
}
-\DTLnewdb{__gzt_authors}
-\cs_new_protected:Nn \__gzt_authors:nnnnnn
- {
- \DTLnewrow{__gzt_authors}%
- \DTLnewdbentry{__gzt_authors}{first-last-name}{#1}%
- \DTLnewdbentry{__gzt_authors}{affiliation}{#2}%
- \DTLnewdbentry{__gzt_authors}{email}{#3}%
- \DTLnewdbentry{__gzt_authors}{minibio}{#4}%
- \DTLnewdbentry{__gzt_authors}{photo}{#5}%
- \DTLnewdbentry{__gzt_authors}{webpage}{#6}%
- }
\cs_new_protected:Nn \__gzt_email:n
{
\href{mailto:#1}{\nolinkurl{#1}}%
}
-\cs_generate_variant:Nn \__gzt_authors:nnnnnn { nVVVVV }
\cs_new_protected:Nn \__gzt_display_author:nnnnn
{
\begin{tabular}[t]{p{\c__gzt_authors_photos_box_width_dim}p{0.75\linewidth}}
@@ -984,15 +1019,6 @@
\end{tabular}
}
\cs_generate_variant:Nn \__gzt_display_author:nnnnn { VVVVV }
-\DTLnewdb{__gzt_interviewees}
-\cs_new_protected:Nn \__gzt_interviewees:nnn
- {
- \DTLnewrow{__gzt_interviewees}%
- \DTLnewdbentry{__gzt_interviewees}{first-last-name}{#1}%
- \DTLnewdbentry{__gzt_interviewees}{minibio}{#2}%
- \DTLnewdbentry{__gzt_interviewees}{photo}{#3}%
- }
-\cs_generate_variant:Nn \__gzt_interviewees:nnn { nVV }
\DTLnewdb{people}
\tl_new:N \l__gzt_crossref_tl
\cs_new_protected:Nn \__gzt_people:nnnnnnnn
@@ -1035,12 +1061,14 @@
\cs_new_protected:Nn \__gzt_display_academic_signature:n
{
\bigskip
+ \begin{__gzt_minibiographies_acknowledgements_tcbox}
#1
+ \end{__gzt_minibiographies_acknowledgements_tcbox}
}
\cs_new_protected:Nn \__gzt_display_people_by_role:n
{
\DTLforeach*[\DTLiseq{\l__gzt_people_role_tl}{#1}]{people}{%
- \l__gzt_firstlastname=first-last-name%
+ \l__gzt_firstlastname_tl=first-last-name%
,\l__gzt_people_affiliation_tl=affiliation%
,\l__gzt_people_email_tl=email%
,\l__gzt_people_minibio_tl=minibio%
@@ -1062,26 +1090,29 @@
\newline%
\href{mailto:\l__gzt_people_email_tl}{\nolinkurl{\l__gzt_people_email_tl}}%
}
- \DTLiflastrow{%
- }{%
- \medskip%
- }
+ \medskip%
}{
\tl_if_in:NnTF \l__gzt_people_role_tl { author } {
- \footnotesize%
- % \noindent%
- \dim_set:Nn \l__gzt_minibio_width_dim {\linewidth-1em - \c__gzt_authors_photos_box_width_dim}
- \tl_if_empty:NTF \l__gzt_people_photo_tl
- {%
- \dim_add:Nn \l__gzt_minibio_width_dim {\c__gzt_authors_photos_box_width_dim}
- }{%
- \begin{adjustbox}{valign=t,minipage=\c__gzt_authors_photos_box_width_dim}
- \includegraphics[width=\c__gzt_authors_photos_width_dim]{\l__gzt_people_photo_tl}
- \end{adjustbox}%
- \quad%
- }
- \begin{adjustbox}{valign=t,minipage=\l__gzt_minibio_width_dim}
- \begin{description}[leftmargin=1em,style=nextline]
+ \tl_if_empty:NF \l__gzt_firstlastname_tl {
+ \footnotesize%
+ % \noindent%
+ \DTLiffirstrow{%
+ }{
+ \DTLpar%
+ \medskip%
+ }
+ \dim_set:Nn \l__gzt_minibio_width_dim {\linewidth-1em - \c__gzt_authors_photos_box_width_dim}
+ \tl_if_empty:NTF \l__gzt_people_photo_tl
+ {%
+ \dim_add:Nn \l__gzt_minibio_width_dim {\c__gzt_authors_photos_box_width_dim}
+ }{%
+ \begin{adjustbox}{valign=t,minipage=\c__gzt_authors_photos_box_width_dim}
+ \includegraphics[width=\c__gzt_authors_photos_width_dim]{\l__gzt_people_photo_tl}
+ \end{adjustbox}%
+ \quad%
+ }
+ \begin{adjustbox}{valign=t,minipage=\l__gzt_minibio_width_dim}
+ \begin{description}[leftmargin=1em,style=nextline]
\item[%
\textcolor{__gzt_people_color}{%
\__gzt_citeauthor_no_firstinits:n {\c__gzt_issue_bib_key_tl -#1- \exp_not:V\DTLcurrentindex}%
@@ -1112,10 +1143,6 @@
}
\end{description}
\end{adjustbox}
- \DTLiflastrow{%
- }{
- \DTLpar%
- \medskip%
}
}{
\__gzt_citeauthor_no_firstinits:n {\c__gzt_issue_bib_key_tl -#1-
@@ -1300,7 +1327,7 @@
\bool_if:NT {\g__gzt_credit_frontcover_bool} {
\c_space_tl(\c__gzt_credit_frontcover_string_tl{}~:~%
\DTLforeach*[\DTLiseq{\l__gzt_people_role_tl}{frontcovercredit}]{people}{%
- \l__gzt_firstlastname=first-last-name%
+ \l__gzt_firstlastname_tl=first-last-name%
,\l__gzt_people_role_tl=role%
}{%
\__gzt_citeauthor_no_firstinits:n
@@ -1468,6 +1495,11 @@
\bool_gset_true:N \g__gzt_frontcover_without_minitoc_bool
\keys_set:nn { gzt/specialedition } {#1}
}
+\NewDocumentCommand \moralreportsetup { m } {
+ \bool_gset_true:N \g__gzt_moral_report_bool
+ \bool_gset_true:N \g__gzt_frontcover_without_minitoc_bool
+ \keys_set:nn { gzt/moralreport } {#1}
+}
\NewDocumentCommand \journalsetup { m } {
\keys_set:nn { gzt/journalsetup } { #1 }
}
@@ -1531,7 +1563,7 @@
\newdateformat{l__gzt_uppercased_date_format}{
\__gzt_uppercased_monthname_french:n {\THEMONTH}~\THEYEAR
}
-\AtBeginDocument{%
+\AddToHook{begindocument}{%
\tl_new:N \g__gzt_bib_issue_date_tl
\tl_gset:Nn \g__gzt_bib_issue_date_tl {
\int_use:N \g__gzt_issue_year_int-
@@ -1629,10 +1661,30 @@
\SetParskip{\c__gzt_mainmatter_parskip_skip}
\pagestyle{__gzt_mainmatter_ps}%
}
-\tl_new:N \g__gzt_article_acknowledgements_tl%
+\tl_new:N \l__gzt_article_acknowledgements_tl%
\cs_new_protected:Nn \__gzt_article_acknowledgements:n
{
- \tl_gset:Nn \g__gzt_article_acknowledgements_tl { #1 }
+ \tl_set:Nn \l__gzt_article_acknowledgements_tl { #1 }
+}
+\cs_new_protected:Nn \__gzt_display_localtoc:
+{
+ \etocsettocstyle{\section*{\contentsname}}{}%
+ \etocsetstyle {section}
+ {}
+ {\leavevmode\leftskip 0cm\relax}
+ {\bfseries\normalsize\makebox[.6cm][l]{\etocnumber}%
+ \etocname\nobreak\hfill\nobreak%
+ \makebox[.5cm][r]{%
+ \etocpage%
+ }%
+ \par%
+ }
+ {\medskip}
+ \localtableofcontentswithrelativedepth{+1}
+}
+\NewDocumentCommand \gztlocaltableofcontents {}
+{
+ \__gzt_display_localtoc: {}
}
\tl_new:N \g__gzt_article_bib_key_tl%
\tl_new:N \l__gzt_people_first_last_names_tl
@@ -1964,7 +2016,7 @@
}
}
\file_if_exist:nT { \c__gzt_acronyms_file_string_tl } {%
- \AtEndPreamble{\loadglsentries{\c__gzt_acronyms_file_string_tl}}
+ \AddToHook{begindocument/before}{\loadglsentries{\c__gzt_acronyms_file_string_tl}}
}
\tl_new:N \g__gzt_boxed_issue_number_tl%
\tl_gset:Nn \g__gzt_boxed_issue_number_tl {%
@@ -2056,7 +2108,7 @@
\__gzt_citeauthor_no_firstinits:n {\c__gzt_issue_bib_key_tl -editorinchief- 1}
}{
\DTLforeach*[\DTLiseq{\l__gzt_people_role_tl}{editorinchief}]{people}{%
- \l__gzt_firstlastname=first-last-name%
+ \l__gzt_firstlastname_tl=first-last-name%
,\l__gzt_people_role_tl=role%
}{%
\__gzt_citeauthor_no_firstinits:n {\c__gzt_issue_bib_key_tl -editorinchief- \exp_not:V\DTLcurrentindex}%
@@ -2074,7 +2126,7 @@
}
\__gzt_after_display_editorial: {}
}
-\AtEndPreamble{%
+\AddToHook{begindocument/before}{%
\tl_set_eq:NN \g__gzt_editorial_heading_tl \c__gzt_editorial_heading_string_tl
\bool_if:NT {\g__gzt_special_edition_bool} {
\tl_if_empty:NF \g__gzt_special_edition_editorial_heading_tl {%
@@ -2156,7 +2208,7 @@
{}
{\c_zero_dim}
{}
-\AtBeginDocument{%
+\AddToHook{begindocument}{%
\graphicspath{{\c__gzt_issue_images_path_string_tl//}{../\c__gzt_issue_images_path_string_tl//}}
% \glsdisablehyper
\g__gzt_mainmatter_switch_tl
@@ -2299,7 +2351,7 @@
}%
{\c__gzt_footer_size_font_tl\thepage}%
}%
-\AddEverypageHook{%
+\AddToHook{shipout/background}{
\bool_if:NF {\g__gzt_advertisement_bool} {
\tikz[remember~picture,overlay] { \g__gzt_background_footer_tl }%
}%
@@ -2366,26 +2418,23 @@
\FloatBarrier%
\begin{__gzt_minibiographies_acknowledgements_tcbox}
\__gzt_display_people_by_role:n { author-art-\int_use:N \g__gzt_articles_int }
- \tl_if_empty:NF \g__gzt_article_acknowledgements_tl
+ \DTLsavelastrowcount{\__gzt_authors_number}
+ \tl_if_empty:NF \l__gzt_article_acknowledgements_tl
{%
- \par%
- \bigskip%
+ \footnotesize
+ \int_compare:nNnT {\__gzt_authors_number}>{0}
+ {
+ \par%
+ \bigskip%
+ }
\begin{adjustbox}{valign=t,minipage=\linewidth}
\color{__gzt_acknowledgements_color}%
- \g__gzt_article_acknowledgements_tl
+ \setlength{\parskip}{\c__gzt_mainmatter_parskip_skip}
+ \l__gzt_article_acknowledgements_tl
\end{adjustbox}
- }
+ }
+ \bool_gset_true:N \g__gzt_previous_article_with_bibliography_or_minibio_bool
\end{__gzt_minibiographies_acknowledgements_tcbox}
- \bool_gset_true:N \g__gzt_previous_article_with_bibliography_or_minibio_bool
- %
- \tl_gclear:N \g__gzt_people_affiliation_tl
- \tl_gclear:N \g__gzt_people_email_tl
- \tl_gclear:N \g__gzt_people_minibio_tl
- \tl_gclear:N \g__gzt_people_photo_tl
- \tl_gclear:N \g__gzt_people_webpage_tl
- \tl_gclear:N \g__gzt_article_acknowledgements_tl
- \DTLgcleardb{__gzt_authors}
- \DTLgcleardb{__gzt_interviewees}
}
\let\printauthorsdetails\printminibios
\cs_set_eq:NN \__gzt_printbibliography \printbibliography
@@ -2624,7 +2673,7 @@
inputencoding=utf8/latin1
}%
\DeclareTotalTCBox{\gztverb}{ v }{verbatim,blank,fuzzy~halo=0pt~with~__gzt_light_generic_dark_color!8}{#1}
-\NewTCBListing{gztcode}{ O{} }{%
+\NewTCBListing{gztcode}{ !O{} }{%
listing~style=__gzt_lst_style,
listing~only,
enlarge~top~by=\medskipamount,
@@ -2766,27 +2815,8 @@
\bool_gset_false:N \g__gzt_advertisement_bool
\bool_gset_true:N \g__gzt_mainmatter_bool
}
-\keys_define:nn { gztarticle }
-{
- editorial .code:n = {%
- \AtBeginDocument{%
- \__gzt_before_display_editorial:n {}%
- }
- \AtEndDocument{%
- \__gzt_after_display_editorial: {}%
- }
- },%
- presidentmessage .code:n = {%
- \AtBeginDocument{%
- \__gzt_before_display_presidentmessage: {}%
- }
- \AtEndDocument{%
- \__gzt_after_display_presidentmessage: {}%
- }
- },%
-}%
\ProcessKeysOptions { gztarticle }
-\AtEndDocument{%
+\AddToHook{enddocument}{%
\bool_if:NT {\g__gzt_multicols_bool} {
\end{multicols}%
}
@@ -2962,7 +2992,7 @@
enlarge~left~by=\c__gzt_inside_cover_offset_dim,
}
}
-\AtEndPreamble{%
+\AddToHook{begindocument/before}{%
\bool_if:NTF {\g__gzt_special_edition_bool} {
\tcbset{
__gzt_tcb_inside_frontcover_style/.append~style={%
@@ -3084,7 +3114,7 @@
\tl_clear:N \l__gzt_newtheorem_frenchtitle_tl
\tl_clear:N \l__gzt_newtheorem_englishtitle_tl
\tl_set:Nn \l__gzt_newtheorem_englishtitle_tl {
- \text_uppercase:n {#2}
+ \text_titlecase:n {#2}
}
\tl_set:Nf \l__gzt_newtheorem_frenchtitle_tl {
\l__gzt_newtheorem_englishtitle_tl