texlive[74605] Master/texmf-dist: gzt (13mar25)

commits+karl at tug.org commits+karl at tug.org
Thu Mar 13 20:37:49 CET 2025


Revision: 74605
          https://tug.org/svn/texlive?view=revision&revision=74605
Author:   karl
Date:     2025-03-13 20:37:49 +0100 (Thu, 13 Mar 2025)
Log Message:
-----------
gzt (13mar25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/gzt/CHANGELOG.md
    trunk/Master/texmf-dist/doc/latex/gzt/french/gzt-fr.pdf
    trunk/Master/texmf-dist/source/latex/gzt/gzt.dtx
    trunk/Master/texmf-dist/tex/latex/gzt/gzt.cls
    trunk/Master/texmf-dist/tex/latex/gzt/gztarticle.cls

Modified: trunk/Master/texmf-dist/doc/latex/gzt/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/gzt/CHANGELOG.md	2025-03-13 19:37:40 UTC (rev 74604)
+++ trunk/Master/texmf-dist/doc/latex/gzt/CHANGELOG.md	2025-03-13 19:37:49 UTC (rev 74605)
@@ -1,5 +1,9 @@
 # [Unreleased]
 
+# [1.1.5] - 2025-03-13
+
+Minor changes
+
 # [1.1.4] - 2024-03-09
 
 ## Fixed

Modified: trunk/Master/texmf-dist/doc/latex/gzt/french/gzt-fr.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/gzt/gzt.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/gzt/gzt.dtx	2025-03-13 19:37:40 UTC (rev 74604)
+++ trunk/Master/texmf-dist/source/latex/gzt/gzt.dtx	2025-03-13 19:37:49 UTC (rev 74605)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 % 
-% File: gzt.dtx Copyright (C) 2014-2024 by
+% File: gzt.dtx Copyright (C) 2014-2025 by
 % Denis Bitouzé <denis.bitouze at univ-littoral.fr>
 %
 % It may be distributed and/or modified under the conditions of the
@@ -94,7 +94,7 @@
 % This field contains the version of the package.
 % The value is optional.
 % The value is restricted to 32 characters.
-\version{1.1.4 2024-03-09}
+\version{1.1.5 2025-03-13}
 % -------------------------------------------------------------------------
 % This field contains the name of the author(s).
 % The value is optional.
@@ -214,6 +214,10 @@
 %    \end{macrocode}
 # [Unreleased]
 
+# [1.1.5] - 2025-03-13
+
+Minor changes
+
 # [1.1.4] - 2024-03-09
 
 ## Fixed
@@ -349,8 +353,8 @@
 \fi
 %</internal>
 %<*class|class-article|install>
-\def\gztfileversion{1.1.4}
-\def\gztfiledate{2024-03-09}
+\def\gztfileversion{1.1.5}
+\def\gztfiledate{2025-03-13}
 %</class|class-article|install>
 %<*install>
 \input l3docstrip.tex
@@ -1677,7 +1681,7 @@
 %
 % We now declare some private string constants.
 %
-% \begin{macro}{\c_@@_journal_short_title_string_tl,\c_@@_journal_title_string_tl,\c_@@_editors_in_chief_string_tl,\c_@@_editors_string_tl,\c_@@_editorial_board_string_tl,\c_@@_editorial_secretariat_string_tl,\c_@@_phone_string_tl,\c_@@_fax_string_tl,\c_@@_informations_string_tl,\c_@@_publishingdirector_string_tl,\c_@@_issn_string_tl,\c_@@_isbn_string_tl,\c_@@_latexclass_string_tl,\c_@@_font_string_tl,\c_@@_configuration_file_string_tl,\c_@@_cover_string_tl,\c_@@_artistic_director_string_tl,\c_@@_editorial_heading_string_tl,\c_@@_toc_string_tl,\c_@@_message_string_tl,\c_@@_president_signatory_string_tl,\c_@@_editorinchief_signatory_string_tl,\c_@@_issue_bib_file_tl,\c_@@_about_frontcover_string_tl,\c_@@_credit_frontcover_string_tl,\c_@@_authors_instructions_string_tl}
+% \begin{macro}{\c_@@_journal_short_title_string_tl,\c_@@_journal_title_string_tl,\c_@@_editors_in_chief_string_tl,\c_@@_editors_string_tl,\c_@@_editorial_board_string_tl,\c_@@_editorial_secretariat_string_tl,\c_@@_phone_string_tl,\c_@@_fax_string_tl,\c_@@_informations_string_tl,\g_@@_publishingdirector_string_tl,\c_@@_issn_string_tl,\c_@@_isbn_string_tl,\c_@@_latexclass_string_tl,\c_@@_font_string_tl,\c_@@_configuration_file_string_tl,\c_@@_cover_string_tl,\c_@@_artistic_director_string_tl,\c_@@_editorial_heading_string_tl,\c_@@_toc_string_tl,\c_@@_message_string_tl,\g_@@_president_signatory_string_tl,\c_@@_editorinchief_signatory_string_tl,\c_@@_issue_bib_file_tl,\c_@@_about_frontcover_string_tl,\c_@@_credit_frontcover_string_tl,\c_@@_authors_instructions_string_tl}
 % For the journal's short and long titles.
 %    \begin{macrocode}
 \tl_const:Nn \c_@@_journal_short_title_string_tl {Gazette}
@@ -1698,13 +1702,9 @@
 {
   \int_compare:nNnTF { \g_@@_editors_in_chief_int } > { 1 }
   { \c_@@_editorsinchief_string_tl }
-  { \c_@@_editorinchief_string_tl }
+  { \g_@@_editorinchief_string_tl }
 }
 %    \end{macrocode}
-% For the editor in chief.
-%    \begin{macrocode}
-\tl_const:Nn \c_@@_editorinchief_string_tl {R\'edacteur~ en~ chef }
-%    \end{macrocode}
 % For the editors in chief (plural form of the previous one).
 %    \begin{macrocode}
 \tl_const:Nn \c_@@_editorsinchief_string_tl {R\'edacteurs~ en~ chef }
@@ -1740,10 +1740,6 @@
 %    \begin{macrocode}
 \tl_const:Nn \c_@@_informations_string_tl {Renseignements}
 %    \end{macrocode}
-% For the publishing director.
-%    \begin{macrocode}
-\tl_const:Nn \c_@@_publishingdirector_string_tl {Directeur~ de~ la~ publication}
-%    \end{macrocode}
 % For the \textsc{issn}.
 %    \begin{macrocode}
 \tl_const:Nn \c_@@_issn_string_tl {\textsc{issn}}
@@ -1778,24 +1774,10 @@
   }
 }
 %    \end{macrocode}
-% For the editor in chief.
-%    \begin{macrocode}
-\tl_const:Nn \c_@@_editorinchief_signatory_string_tl {
-  \c_@@_editorinchief_string_tl~ de~ la~ \c_@@_journal_title_string_tl
-}
-%    \end{macrocode}
 % For the table of contents.
 %    \begin{macrocode}
 \tl_const:Nn \c_@@_toc_string_tl {Sommaire}
 %    \end{macrocode}
-% For the president message.
-%    \begin{macrocode}
-\tl_const:Nn \c_@@_president_message_string_tl {Mot~ du~ pr\'esident}
-%    \end{macrocode}
-% For the president.
-%    \begin{macrocode}
-\tl_const:Nn \c_@@_president_signatory_string_tl {pr\'esident~ de~ la~ \g_@@_smf_short_string_tl}
-%    \end{macrocode}
 % For the date of the editor in chief's message.
 %    \begin{macrocode}
 \tl_const:Nn \c_@@_editorinchief_message_date_string_tl {Le~ \displaydate{@@_editorinchief_message_date}}
@@ -2094,7 +2076,7 @@
 % We now declare the booleans that will be used.
 %
 % \begin{macro}{\g_@@_frontcover_bool,\g_@@_inside_frontcover_bool,\g_@@_inside_backcover_bool,\g_@@_frontmatter_bool,\g_@@_rubric_bool,\g_@@_interview_rubric_bool,\g_@@_mainmatter_bool,\g_@@_backmatter_bool,\g_@@_backcover_bool}
-%   The following booleans will be used to test wheter we are respectively in the
+%   The following booleans will be used to test whether we are respectively in the
 %   front cover, in the inside front cover, in the frontmatter, in (first page
 %   of) a rubric, in the mainmatter.
 %    \begin{macrocode}
@@ -2125,7 +2107,7 @@
 % \end{macro}
 %
 % \begin{macro}{\g_@@_advertisement_bool}
-%   The following boolean will be used to test wheter we are inside
+%   The following boolean will be used to test whether we are inside
 %   an advertisement page.
 %    \begin{macrocode}
 \bool_new:N \g_@@_advertisement_bool
@@ -2133,7 +2115,7 @@
 % \end{macro}
 %
 % \begin{macro}{\g_@@_multicols_bool}
-%   The following boolean will be used to test wheter we are inside
+%   The following boolean will be used to test whether we are inside
 %   a \pkg{multicol}'s ×multicols× environment.
 %    \begin{macrocode}
 \bool_new:N \g_@@_multicols_bool
@@ -2141,12 +2123,11 @@
 % \end{macro}
 %
 % \begin{macro}{\g_@@_refsection_bool}
-%   The following boolean will be used to test wheter we are inside
+%   The following boolean will be used to test whether we are inside
 %   a \pkg{biblatex}'s ×refsection× environment.
 %    \begin{macrocode}
 \bool_new:N \g_@@_refsection_bool
 %    \end{macrocode}
-% \end{macro}
 %
 % \subsubsection{Dimensions}
 %
@@ -2700,8 +2681,16 @@
 \tl_new:N \l_@@_journal_url_tl
 \tl_new:N \l_@@_journal_issn_tl
 \tl_new:N \l_@@_journal_isbn_tl
+\tl_new:N \g_@@_journal_president_wording_tl
+\tl_new:N \g_@@_president_message_string_tl
+\tl_new:N \g_@@_editorinchief_string_tl
 %    \end{macrocode}
-% \end{macro}
+% We know that's bad but, by default, we suppose both the president, the
+% editor in chief and the publishing director to be males.
+\tl_gset:Nn \g_@@_journal_president_wording_tl {Mot~ du~     pr\'esident }
+\tl_gset:Nn \g_@@_president_signatory_string_tl {pr\'esident~ de~ la~ \g_@@_smf_short_string_tl}
+\tl_gset:Nn \g_@@_editorinchief_string_tl {R\'edacteur~ en~ chef }
+\tl_gset:Nn \g_@@_publishingdirector_string_tl {Directeur~ de~ la~ publication}
 %
 % \begin{macro}{publisher,address,phone,fax,email,url,issn,isbn}
 % The keys options are created.
@@ -2716,6 +2705,24 @@
   url .tl_set:N = \l_@@_journal_url_tl,
   issn .tl_set:N = \l_@@_journal_issn_tl,
   isbn .tl_set:N = \l_@@_journal_isbn_tl,
+  president~ gender .choice:,
+  president~ gender /   male .code:n = { },
+  president~ gender / female .code:n = {
+    \tl_gset:Nn \g_@@_journal_president_wording_tl {Mot~ de~ la~ pr\'esidente}
+    \tl_gset:Nn \g_@@_president_signatory_string_tl {pr\'esidente~ de~ la~ \g_@@_smf_short_string_tl}
+  },
+  editorinchief~ gender .choice:,
+  editorinchief~ gender /   male .code:n = { },
+  editorinchief~ gender / female .code:n = {
+    \tl_gset:Nn \g_@@_editorinchief_string_tl {R\'edactrice~ ~ en~ chef }
+  },
+  publishingdirector~ gender .choice:,
+  publishingdirector~ gender /   male .code:n = { },
+  publishingdirector~ gender / female .code:n = {
+    \tl_gset:Nn \g_@@_publishingdirector_string_tl {Directrice~ de~ la~ publication}
+
+  },
+,
 %    \end{macrocode}
 %
 % All these options, when used, must receive a value.
@@ -3044,7 +3051,7 @@
 % \subsection{Miscellaneous patches}
 %
 % We patch the \pkg{biblatex}'s ×refsection× environment definition by adding
-% a flag that will be used to test wheter we are inside such an environment or
+% a flag that will be used to test whether we are inside such an environment or
 % not.
 %    \begin{macrocode}
 \AddToHook{env/multicols/begin}{
@@ -3273,7 +3280,7 @@
     ,\l_@@_people_photo_tl=photo
     ,\l_@@_people_speciality=speciality
     ,\l_@@_people_role_tl=role
-    ,\l_@@_people_webpage_tl=webpage
+    ,\g_@@_people_webpage_tl=webpage
   }{
     \tl_if_in:NnTF \l_@@_people_role_tl { editor } {
     \item[
@@ -3328,10 +3335,10 @@
                 \par
                 \href{mailto:\l_@@_people_email_tl}{\nolinkurl{\l_@@_people_email_tl}}
               }
-              \tl_if_empty:NF \l_@@_people_webpage_tl
+              \tl_if_empty:NF \g_@@_people_webpage_tl
               {
                 \par
-                \url{\l_@@_people_webpage_tl}
+                \url{\g_@@_people_webpage_tl}
               }
               \tl_if_empty:NF \l_@@_people_minibio_tl
               {
@@ -3342,6 +3349,9 @@
             \end{description}
           \end{adjustbox}
         }
+        % \tl_show:N \g_@@_people_webpage_tl
+        \tl_gclear:N \g_@@_people_webpage_tl
+        % \tl_show:N \g_@@_people_webpage_tl
       }{
         \_@@_citeauthor_no_firstinits:n {\c_@@_issue_bib_key_tl -#1-
           \exp_not:V\DTLcurrentindex}
@@ -3535,12 +3545,11 @@
         \@@_display_people_by_role:n { secretary }\par
         \l_@@_journal_address_tl\par
         \c_@@_phone_string_tl{}~ :~ \l_@@_journal_phone_tl{} \c_space_tl\textendash{}\c_space_tl
-        \c_@@_fax_string_tl{}~ :~ \l_@@_journal_fax_tl\par
         \href{mailto:\l_@@_journal_email_tl}{\nolinkurl{\l_@@_journal_email_tl}}
         % \newline
         \c_space_tl\textendash{}\c_space_tl
         \url{\l_@@_journal_url_tl}
-      \item[\c_@@_publishingdirector_string_tl{}~ :]
+      \item[\g_@@_publishingdirector_string_tl{}~ :]
         \@@_display_people_by_role:n { president }
       \item[\c_@@_issn_string_tl{}~ :] \l_@@_journal_issn_tl
         \tl_if_empty:NF \l_@@_journal_isbn_tl
@@ -4952,6 +4961,48 @@
 %<*class|class-article>
 %    \end{macrocode}
 %
+% \subsection{Displaying the president's message}
+%
+% We create an internal function that displays the president's message.
+%    \begin{macrocode}
+\AddToHook{begindocument/before}{
+\tl_set_eq:NN \g_@@_president_message_string_tl \g_@@_journal_president_wording_tl
+\cs_new_protected:Nn \_@@_before_display_presidentmessage:
+{
+  \_@@_before_editorial_presidentmessage:nn {\c_@@_smf_logo_file_string_tl}{\g_@@_president_message_string_tl}
+  \phantomsection
+  \par
+  \addcontentsline{toc}{part}{\g_@@_smf_short_string_tl}
+  \addcontentsline{toc}{chapter}{\g_@@_president_message_string_tl}
+}
+\cs_new_protected:Nn \_@@_after_display_presidentmessage:
+{
+  \_@@_after_editorial_presidentmessage: {}
+  \hspace*{\fill}
+  \c_@@_president_message_date_string_tl
+  \displaydate{@@_president_message_date}
+  \\[1.5mm]
+  \hspace*{\fill}
+  \@@_display_people_by_role:n { president }
+  ,\c_space_tl
+  \g_@@_president_signatory_string_tl
+  \_@@_after_frontmatter_stuff: {}
+}
+\cs_new_protected:Nn \_@@_display_president_message:
+{
+  \_@@_before_display_presidentmessage: {}
+  \file_input:n {\c_@@_president_message_file_string_tl}
+  \_@@_after_display_presidentmessage: {}
+}
+\NewDocumentCommand \presidentmessage {}
+{
+  \bool_if:NF {\g_@@_for_authors_bool} {
+    \_@@_display_president_message: {}
+  }
+}
+}
+%    \end{macrocode}
+%
 % \subsection{Special tools common to the editorial, the table of contents and the
 % president message}
 %
@@ -5176,45 +5227,6 @@
 %<*class|class-article>
 %    \end{macrocode}
 %
-% \subsection{Displaying the president's message}
-%
-% We create an internal function that displays the president's message.
-%    \begin{macrocode}
-\cs_new_protected:Nn \_@@_before_display_presidentmessage:
-{
-  \_@@_before_editorial_presidentmessage:nn {\c_@@_smf_logo_file_string_tl}{\c_@@_president_message_string_tl}
-  \phantomsection
-  \par
-  \addcontentsline{toc}{part}{\g_@@_smf_short_string_tl}
-  \addcontentsline{toc}{chapter}{\c_@@_president_message_string_tl}
-}
-\cs_new_protected:Nn \_@@_after_display_presidentmessage:
-{
-  \_@@_after_editorial_presidentmessage: {}
-  \hspace*{\fill}
-  \c_@@_president_message_date_string_tl
-  \displaydate{@@_president_message_date}
-  \\[1.5mm]
-  \hspace*{\fill}
-  \@@_display_people_by_role:n { president }
-  ,\c_space_tl
-  \c_@@_president_signatory_string_tl
-  \_@@_after_frontmatter_stuff: {}
-}
-\cs_new_protected:Nn \_@@_display_president_message:
-{
-  \_@@_before_display_presidentmessage: {}
-  \file_input:n {\c_@@_president_message_file_string_tl}
-  \_@@_after_display_presidentmessage: {}
-}
-\NewDocumentCommand \presidentmessage {}
-{
-  \bool_if:NF {\g_@@_for_authors_bool} {
-    \_@@_display_president_message: {}
-  }
-}
-%    \end{macrocode}
-%
 % \subsection{Chapter, sections, etc. customization}
 %
 % Thanks to \Pkg{titlesec}, the chapter, section, subsection and subsubsection
@@ -6788,7 +6800,7 @@
 %    \end{macrocode}
 %
 % We create a variant of the ×\input× macro which cleans the local
-% customizations if any and, if necessary open and close the ×refsection× and
+% customizations if any and, if necessary opens and closes the ×refsection× and
 % ×multicols× environments.
 %    \begin{macrocode}
 \NewDocumentCommand \gztinput { m m } {
@@ -7334,7 +7346,7 @@
   \tl_clear:N \l_@@_newtheorem_frenchtitle_tl
   \tl_clear:N \l_@@_newtheorem_englishtitle_tl
   \tl_set:Nn \l_@@_newtheorem_englishtitle_tl {
-    \text_titlecase:n {#2}
+    \text_titlecase_first:n {#2}
   }
   \tl_set:Nf \l_@@_newtheorem_frenchtitle_tl {
     \l_@@_newtheorem_englishtitle_tl

Modified: trunk/Master/texmf-dist/tex/latex/gzt/gzt.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/gzt/gzt.cls	2025-03-13 19:37:40 UTC (rev 74604)
+++ trunk/Master/texmf-dist/tex/latex/gzt/gzt.cls	2025-03-13 19:37:49 UTC (rev 74605)
@@ -11,8 +11,8 @@
 %%  E-mail:| denis.bitouze at univ-littoral.fr
 %% License:| Released under the LaTeX Project Public License v1.3c or later
 %%     See:| http://www.latex-project.org/lppl.txt
-\def\gztfileversion{1.1.4}
-\def\gztfiledate{2024-03-09}
+\def\gztfileversion{1.1.5}
+\def\gztfiledate{2025-03-13}
 \def\sectioncommandslist{}
 \let\saved at ifdefinable\@ifdefinable
 \let\saved@@ifdefinable\@@ifdefinable
@@ -315,9 +315,8 @@
 {
   \int_compare:nNnTF { \g__gzt_editors_in_chief_int } > { 1 }
   { \c__gzt_editorsinchief_string_tl }
-  { \c__gzt_editorinchief_string_tl }
+  { \g__gzt_editorinchief_string_tl }
 }
-\tl_const:Nn \c__gzt_editorinchief_string_tl {R\'edacteur~ en~ chef }
 \tl_const:Nn \c__gzt_editorsinchief_string_tl {R\'edacteurs~ en~ chef }
 \tl_const:Nn \c__gzt_editors_string_tl {R\'edacteurs }
 \tl_const:Nn \c__gzt_editorial_board_string_tl {Comit\'e~ de~ r\'edaction}
@@ -329,7 +328,6 @@
 \tl_const:Nn \c__gzt_phone_string_tl {T\'el.}
 \tl_const:Nn \c__gzt_fax_string_tl {Fax}
 \tl_const:Nn \c__gzt_informations_string_tl {Renseignements}
-\tl_const:Nn \c__gzt_publishingdirector_string_tl {Directeur~ de~ la~ publication}
 \tl_const:Nn \c__gzt_issn_string_tl {\textsc{issn}}
 \tl_const:Nn \c__gzt_isbn_string_tl {\textsc{isbn}}
 \tl_const:Nn \c__gzt_latexclass_string_tl {Classe~ \LaTeX{}}
@@ -343,12 +341,7 @@
     \tl_const:Nn \c__gzt_editorial_heading_string_tl {\'Editorial}
   }
 }
-\tl_const:Nn \c__gzt_editorinchief_signatory_string_tl {
-  \c__gzt_editorinchief_string_tl~ de~ la~ \c__gzt_journal_title_string_tl
-}
 \tl_const:Nn \c__gzt_toc_string_tl {Sommaire}
-\tl_const:Nn \c__gzt_president_message_string_tl {Mot~ du~ pr\'esident}
-\tl_const:Nn \c__gzt_president_signatory_string_tl {pr\'esident~ de~ la~ \g__gzt_smf_short_string_tl}
 \tl_const:Nn \c__gzt_editorinchief_message_date_string_tl {Le~ \displaydate{__gzt_editorinchief_message_date}}
 \tl_const:Nn \c__gzt_president_message_date_string_tl {Le~ }
 \tl_const:Nn \c__gzt_special_edition_string_tl {\c_space_tl{}sp{\'e}cial}
@@ -859,6 +852,13 @@
 \tl_new:N \l__gzt_journal_url_tl
 \tl_new:N \l__gzt_journal_issn_tl
 \tl_new:N \l__gzt_journal_isbn_tl
+\tl_new:N \g__gzt_journal_president_wording_tl
+\tl_new:N \g__gzt_president_message_string_tl
+\tl_new:N \g__gzt_editorinchief_string_tl
+\tl_gset:Nn \g__gzt_journal_president_wording_tl {Mot~ du~     pr\'esident }
+\tl_gset:Nn \g__gzt_president_signatory_string_tl {pr\'esident~ de~ la~ \g__gzt_smf_short_string_tl}
+\tl_gset:Nn \g__gzt_editorinchief_string_tl {R\'edacteur~ en~ chef }
+\tl_gset:Nn \g__gzt_publishingdirector_string_tl {Directeur~ de~ la~ publication}
 \keys_define:nn { gzt/journalsetup }
 {
   publisher .tl_set:N = \l__gzt_journal_publisher_tl,
@@ -869,6 +869,24 @@
   url .tl_set:N = \l__gzt_journal_url_tl,
   issn .tl_set:N = \l__gzt_journal_issn_tl,
   isbn .tl_set:N = \l__gzt_journal_isbn_tl,
+  president~ gender .choice:,
+  president~ gender /   male .code:n = { },
+  president~ gender / female .code:n = {
+    \tl_gset:Nn \g__gzt_journal_president_wording_tl {Mot~ de~ la~ pr\'esidente}
+    \tl_gset:Nn \g__gzt_president_signatory_string_tl {pr\'esidente~ de~ la~ \g__gzt_smf_short_string_tl}
+  },
+  editorinchief~ gender .choice:,
+  editorinchief~ gender /   male .code:n = { },
+  editorinchief~ gender / female .code:n = {
+    \tl_gset:Nn \g__gzt_editorinchief_string_tl {R\'edactrice~ ~ en~ chef }
+  },
+  publishingdirector~ gender .choice:,
+  publishingdirector~ gender /   male .code:n = { },
+  publishingdirector~ gender / female .code:n = {
+    \tl_gset:Nn \g__gzt_publishingdirector_string_tl {Directrice~ de~ la~ publication}
+
+  },
+,
   publisher .value_required:n = true,
   address .value_required:n = true,
   phone .value_required:n = true,
@@ -1183,7 +1201,7 @@
     ,\l__gzt_people_photo_tl=photo
     ,\l__gzt_people_speciality=speciality
     ,\l__gzt_people_role_tl=role
-    ,\l__gzt_people_webpage_tl=webpage
+    ,\g__gzt_people_webpage_tl=webpage
   }{
     \tl_if_in:NnTF \l__gzt_people_role_tl { editor } {
     \item[
@@ -1238,10 +1256,10 @@
                 \par
                 \href{mailto:\l__gzt_people_email_tl}{\nolinkurl{\l__gzt_people_email_tl}}
               }
-              \tl_if_empty:NF \l__gzt_people_webpage_tl
+              \tl_if_empty:NF \g__gzt_people_webpage_tl
               {
                 \par
-                \url{\l__gzt_people_webpage_tl}
+                \url{\g__gzt_people_webpage_tl}
               }
               \tl_if_empty:NF \l__gzt_people_minibio_tl
               {
@@ -1252,6 +1270,9 @@
             \end{description}
           \end{adjustbox}
         }
+        % \tl_show:N \g__gzt_people_webpage_tl
+        \tl_gclear:N \g__gzt_people_webpage_tl
+        % \tl_show:N \g__gzt_people_webpage_tl
       }{
         \__gzt_citeauthor_no_firstinits:n {\c__gzt_issue_bib_key_tl -#1-
           \exp_not:V\DTLcurrentindex}
@@ -1427,12 +1448,11 @@
         \__gzt_display_people_by_role:n { secretary }\par
         \l__gzt_journal_address_tl\par
         \c__gzt_phone_string_tl{}~ :~ \l__gzt_journal_phone_tl{} \c_space_tl\textendash{}\c_space_tl
-        \c__gzt_fax_string_tl{}~ :~ \l__gzt_journal_fax_tl\par
         \href{mailto:\l__gzt_journal_email_tl}{\nolinkurl{\l__gzt_journal_email_tl}}
         % \newline
         \c_space_tl\textendash{}\c_space_tl
         \url{\l__gzt_journal_url_tl}
-      \item[\c__gzt_publishingdirector_string_tl{}~ :]
+      \item[\g__gzt_publishingdirector_string_tl{}~ :]
         \__gzt_display_people_by_role:n { president }
       \item[\c__gzt_issn_string_tl{}~ :] \l__gzt_journal_issn_tl
         \tl_if_empty:NF \l__gzt_journal_isbn_tl
@@ -2382,6 +2402,42 @@
         }
       }
     }{}
+\AddToHook{begindocument/before}{
+\tl_set_eq:NN \g__gzt_president_message_string_tl \g__gzt_journal_president_wording_tl
+\cs_new_protected:Nn \__gzt_before_display_presidentmessage:
+{
+  \__gzt_before_editorial_presidentmessage:nn {\c__gzt_smf_logo_file_string_tl}{\g__gzt_president_message_string_tl}
+  \phantomsection
+  \par
+  \addcontentsline{toc}{part}{\g__gzt_smf_short_string_tl}
+  \addcontentsline{toc}{chapter}{\g__gzt_president_message_string_tl}
+}
+\cs_new_protected:Nn \__gzt_after_display_presidentmessage:
+{
+  \__gzt_after_editorial_presidentmessage: {}
+  \hspace*{\fill}
+  \c__gzt_president_message_date_string_tl
+  \displaydate{__gzt_president_message_date}
+  \\[1.5mm]
+  \hspace*{\fill}
+  \__gzt_display_people_by_role:n { president }
+  ,\c_space_tl
+  \g__gzt_president_signatory_string_tl
+  \__gzt_after_frontmatter_stuff: {}
+}
+\cs_new_protected:Nn \__gzt_display_president_message:
+{
+  \__gzt_before_display_presidentmessage: {}
+  \file_input:n {\c__gzt_president_message_file_string_tl}
+  \__gzt_after_display_presidentmessage: {}
+}
+\NewDocumentCommand \presidentmessage {}
+{
+  \bool_if:NF {\g__gzt_for_authors_bool} {
+    \__gzt_display_president_message: {}
+  }
+}
+}
 \tl_new:N \g__gzt_boxed_issue_number_tl
 \tl_gset:Nn \g__gzt_boxed_issue_number_tl {
   \tcbox{\Large\No\g__gzt_issue_number_int}
@@ -2555,39 +2611,6 @@
   \end{__gzt_minitoc_list}
   \cs_set_eq:NN \item \__gzt_orig_item
 }
-\cs_new_protected:Nn \__gzt_before_display_presidentmessage:
-{
-  \__gzt_before_editorial_presidentmessage:nn {\c__gzt_smf_logo_file_string_tl}{\c__gzt_president_message_string_tl}
-  \phantomsection
-  \par
-  \addcontentsline{toc}{part}{\g__gzt_smf_short_string_tl}
-  \addcontentsline{toc}{chapter}{\c__gzt_president_message_string_tl}
-}
-\cs_new_protected:Nn \__gzt_after_display_presidentmessage:
-{
-  \__gzt_after_editorial_presidentmessage: {}
-  \hspace*{\fill}
-  \c__gzt_president_message_date_string_tl
-  \displaydate{__gzt_president_message_date}
-  \\[1.5mm]
-  \hspace*{\fill}
-  \__gzt_display_people_by_role:n { president }
-  ,\c_space_tl
-  \c__gzt_president_signatory_string_tl
-  \__gzt_after_frontmatter_stuff: {}
-}
-\cs_new_protected:Nn \__gzt_display_president_message:
-{
-  \__gzt_before_display_presidentmessage: {}
-  \file_input:n {\c__gzt_president_message_file_string_tl}
-  \__gzt_after_display_presidentmessage: {}
-}
-\NewDocumentCommand \presidentmessage {}
-{
-  \bool_if:NF {\g__gzt_for_authors_bool} {
-    \__gzt_display_president_message: {}
-  }
-}
 \titleformat{\chapter}
 [block]
 {\Huge\bfseries}
@@ -4026,7 +4049,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_titlecase:n {#2}
+    \text_titlecase_first:n {#2}
   }
   \tl_set:Nf \l__gzt_newtheorem_frenchtitle_tl {
     \l__gzt_newtheorem_englishtitle_tl

Modified: trunk/Master/texmf-dist/tex/latex/gzt/gztarticle.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/gzt/gztarticle.cls	2025-03-13 19:37:40 UTC (rev 74604)
+++ trunk/Master/texmf-dist/tex/latex/gzt/gztarticle.cls	2025-03-13 19:37:49 UTC (rev 74605)
@@ -11,8 +11,8 @@
 %%  E-mail:| denis.bitouze at univ-littoral.fr
 %% License:| Released under the LaTeX Project Public License v1.3c or later
 %%     See:| http://www.latex-project.org/lppl.txt
-\def\gztfileversion{1.1.4}
-\def\gztfiledate{2024-03-09}
+\def\gztfileversion{1.1.5}
+\def\gztfiledate{2025-03-13}
 \RequirePackage{xpatch}
 \patchcmd
   {\use@@tikzlibrary}
@@ -229,9 +229,8 @@
 {
   \int_compare:nNnTF { \g__gzt_editors_in_chief_int } > { 1 }
   { \c__gzt_editorsinchief_string_tl }
-  { \c__gzt_editorinchief_string_tl }
+  { \g__gzt_editorinchief_string_tl }
 }
-\tl_const:Nn \c__gzt_editorinchief_string_tl {R\'edacteur~ en~ chef }
 \tl_const:Nn \c__gzt_editorsinchief_string_tl {R\'edacteurs~ en~ chef }
 \tl_const:Nn \c__gzt_editors_string_tl {R\'edacteurs }
 \tl_const:Nn \c__gzt_editorial_board_string_tl {Comit\'e~ de~ r\'edaction}
@@ -243,7 +242,6 @@
 \tl_const:Nn \c__gzt_phone_string_tl {T\'el.}
 \tl_const:Nn \c__gzt_fax_string_tl {Fax}
 \tl_const:Nn \c__gzt_informations_string_tl {Renseignements}
-\tl_const:Nn \c__gzt_publishingdirector_string_tl {Directeur~ de~ la~ publication}
 \tl_const:Nn \c__gzt_issn_string_tl {\textsc{issn}}
 \tl_const:Nn \c__gzt_isbn_string_tl {\textsc{isbn}}
 \tl_const:Nn \c__gzt_latexclass_string_tl {Classe~ \LaTeX{}}
@@ -257,12 +255,7 @@
     \tl_const:Nn \c__gzt_editorial_heading_string_tl {\'Editorial}
   }
 }
-\tl_const:Nn \c__gzt_editorinchief_signatory_string_tl {
-  \c__gzt_editorinchief_string_tl~ de~ la~ \c__gzt_journal_title_string_tl
-}
 \tl_const:Nn \c__gzt_toc_string_tl {Sommaire}
-\tl_const:Nn \c__gzt_president_message_string_tl {Mot~ du~ pr\'esident}
-\tl_const:Nn \c__gzt_president_signatory_string_tl {pr\'esident~ de~ la~ \g__gzt_smf_short_string_tl}
 \tl_const:Nn \c__gzt_editorinchief_message_date_string_tl {Le~ \displaydate{__gzt_editorinchief_message_date}}
 \tl_const:Nn \c__gzt_president_message_date_string_tl {Le~ }
 \tl_const:Nn \c__gzt_special_edition_string_tl {\c_space_tl{}sp{\'e}cial}
@@ -773,6 +766,13 @@
 \tl_new:N \l__gzt_journal_url_tl
 \tl_new:N \l__gzt_journal_issn_tl
 \tl_new:N \l__gzt_journal_isbn_tl
+\tl_new:N \g__gzt_journal_president_wording_tl
+\tl_new:N \g__gzt_president_message_string_tl
+\tl_new:N \g__gzt_editorinchief_string_tl
+\tl_gset:Nn \g__gzt_journal_president_wording_tl {Mot~ du~     pr\'esident }
+\tl_gset:Nn \g__gzt_president_signatory_string_tl {pr\'esident~ de~ la~ \g__gzt_smf_short_string_tl}
+\tl_gset:Nn \g__gzt_editorinchief_string_tl {R\'edacteur~ en~ chef }
+\tl_gset:Nn \g__gzt_publishingdirector_string_tl {Directeur~ de~ la~ publication}
 \keys_define:nn { gzt/journalsetup }
 {
   publisher .tl_set:N = \l__gzt_journal_publisher_tl,
@@ -783,6 +783,24 @@
   url .tl_set:N = \l__gzt_journal_url_tl,
   issn .tl_set:N = \l__gzt_journal_issn_tl,
   isbn .tl_set:N = \l__gzt_journal_isbn_tl,
+  president~ gender .choice:,
+  president~ gender /   male .code:n = { },
+  president~ gender / female .code:n = {
+    \tl_gset:Nn \g__gzt_journal_president_wording_tl {Mot~ de~ la~ pr\'esidente}
+    \tl_gset:Nn \g__gzt_president_signatory_string_tl {pr\'esidente~ de~ la~ \g__gzt_smf_short_string_tl}
+  },
+  editorinchief~ gender .choice:,
+  editorinchief~ gender /   male .code:n = { },
+  editorinchief~ gender / female .code:n = {
+    \tl_gset:Nn \g__gzt_editorinchief_string_tl {R\'edactrice~ ~ en~ chef }
+  },
+  publishingdirector~ gender .choice:,
+  publishingdirector~ gender /   male .code:n = { },
+  publishingdirector~ gender / female .code:n = {
+    \tl_gset:Nn \g__gzt_publishingdirector_string_tl {Directrice~ de~ la~ publication}
+
+  },
+,
   publisher .value_required:n = true,
   address .value_required:n = true,
   phone .value_required:n = true,
@@ -1097,7 +1115,7 @@
     ,\l__gzt_people_photo_tl=photo
     ,\l__gzt_people_speciality=speciality
     ,\l__gzt_people_role_tl=role
-    ,\l__gzt_people_webpage_tl=webpage
+    ,\g__gzt_people_webpage_tl=webpage
   }{
     \tl_if_in:NnTF \l__gzt_people_role_tl { editor } {
     \item[
@@ -1152,10 +1170,10 @@
                 \par
                 \href{mailto:\l__gzt_people_email_tl}{\nolinkurl{\l__gzt_people_email_tl}}
               }
-              \tl_if_empty:NF \l__gzt_people_webpage_tl
+              \tl_if_empty:NF \g__gzt_people_webpage_tl
               {
                 \par
-                \url{\l__gzt_people_webpage_tl}
+                \url{\g__gzt_people_webpage_tl}
               }
               \tl_if_empty:NF \l__gzt_people_minibio_tl
               {
@@ -1166,6 +1184,9 @@
             \end{description}
           \end{adjustbox}
         }
+        % \tl_show:N \g__gzt_people_webpage_tl
+        \tl_gclear:N \g__gzt_people_webpage_tl
+        % \tl_show:N \g__gzt_people_webpage_tl
       }{
         \__gzt_citeauthor_no_firstinits:n {\c__gzt_issue_bib_key_tl -#1-
           \exp_not:V\DTLcurrentindex}
@@ -1341,12 +1362,11 @@
         \__gzt_display_people_by_role:n { secretary }\par
         \l__gzt_journal_address_tl\par
         \c__gzt_phone_string_tl{}~ :~ \l__gzt_journal_phone_tl{} \c_space_tl\textendash{}\c_space_tl
-        \c__gzt_fax_string_tl{}~ :~ \l__gzt_journal_fax_tl\par
         \href{mailto:\l__gzt_journal_email_tl}{\nolinkurl{\l__gzt_journal_email_tl}}
         % \newline
         \c_space_tl\textendash{}\c_space_tl
         \url{\l__gzt_journal_url_tl}
-      \item[\c__gzt_publishingdirector_string_tl{}~ :]
+      \item[\g__gzt_publishingdirector_string_tl{}~ :]
         \__gzt_display_people_by_role:n { president }
       \item[\c__gzt_issn_string_tl{}~ :] \l__gzt_journal_issn_tl
         \tl_if_empty:NF \l__gzt_journal_isbn_tl
@@ -2103,6 +2123,42 @@
 \file_if_exist:nT { \c__gzt_acronyms_file_string_tl } {
   \AddToHook{begindocument/before}{\loadglsentries{\c__gzt_acronyms_file_string_tl}}
 }
+\AddToHook{begindocument/before}{
+\tl_set_eq:NN \g__gzt_president_message_string_tl \g__gzt_journal_president_wording_tl
+\cs_new_protected:Nn \__gzt_before_display_presidentmessage:
+{
+  \__gzt_before_editorial_presidentmessage:nn {\c__gzt_smf_logo_file_string_tl}{\g__gzt_president_message_string_tl}
+  \phantomsection
+  \par
+  \addcontentsline{toc}{part}{\g__gzt_smf_short_string_tl}
+  \addcontentsline{toc}{chapter}{\g__gzt_president_message_string_tl}
+}
+\cs_new_protected:Nn \__gzt_after_display_presidentmessage:
+{
+  \__gzt_after_editorial_presidentmessage: {}
+  \hspace*{\fill}
+  \c__gzt_president_message_date_string_tl
+  \displaydate{__gzt_president_message_date}
+  \\[1.5mm]
+  \hspace*{\fill}
+  \__gzt_display_people_by_role:n { president }
+  ,\c_space_tl
+  \g__gzt_president_signatory_string_tl
+  \__gzt_after_frontmatter_stuff: {}
+}
+\cs_new_protected:Nn \__gzt_display_president_message:
+{
+  \__gzt_before_display_presidentmessage: {}
+  \file_input:n {\c__gzt_president_message_file_string_tl}
+  \__gzt_after_display_presidentmessage: {}
+}
+\NewDocumentCommand \presidentmessage {}
+{
+  \bool_if:NF {\g__gzt_for_authors_bool} {
+    \__gzt_display_president_message: {}
+  }
+}
+}
 \tl_new:N \g__gzt_boxed_issue_number_tl
 \tl_gset:Nn \g__gzt_boxed_issue_number_tl {
   \tcbox{\Large\No\g__gzt_issue_number_int}
@@ -2225,39 +2281,6 @@
     }
   }
 }
-\cs_new_protected:Nn \__gzt_before_display_presidentmessage:
-{
-  \__gzt_before_editorial_presidentmessage:nn {\c__gzt_smf_logo_file_string_tl}{\c__gzt_president_message_string_tl}
-  \phantomsection
-  \par
-  \addcontentsline{toc}{part}{\g__gzt_smf_short_string_tl}
-  \addcontentsline{toc}{chapter}{\c__gzt_president_message_string_tl}
-}
-\cs_new_protected:Nn \__gzt_after_display_presidentmessage:
-{
-  \__gzt_after_editorial_presidentmessage: {}
-  \hspace*{\fill}
-  \c__gzt_president_message_date_string_tl
-  \displaydate{__gzt_president_message_date}
-  \\[1.5mm]
-  \hspace*{\fill}
-  \__gzt_display_people_by_role:n { president }
-  ,\c_space_tl
-  \c__gzt_president_signatory_string_tl
-  \__gzt_after_frontmatter_stuff: {}
-}
-\cs_new_protected:Nn \__gzt_display_president_message:
-{
-  \__gzt_before_display_presidentmessage: {}
-  \file_input:n {\c__gzt_president_message_file_string_tl}
-  \__gzt_after_display_presidentmessage: {}
-}
-\NewDocumentCommand \presidentmessage {}
-{
-  \bool_if:NF {\g__gzt_for_authors_bool} {
-    \__gzt_display_president_message: {}
-  }
-}
 \titleformat{\chapter}
 [block]
 {\Huge\bfseries}
@@ -3234,7 +3257,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_titlecase:n {#2}
+    \text_titlecase_first:n {#2}
   }
   \tl_set:Nf \l__gzt_newtheorem_frenchtitle_tl {
     \l__gzt_newtheorem_englishtitle_tl



More information about the tex-live-commits mailing list.