texlive[70305] Master/texmf-dist: projlib (1mar24)

commits+karl at tug.org commits+karl at tug.org
Fri Mar 1 22:44:49 CET 2024


Revision: 70305
          https://tug.org/svn/texlive?view=revision&revision=70305
Author:   karl
Date:     2024-03-01 22:44:48 +0100 (Fri, 01 Mar 2024)
Log Message:
-----------
projlib (1mar24)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/projlib/README.md
    trunk/Master/texmf-dist/source/latex/projlib/ProjLib.dtx
    trunk/Master/texmf-dist/tex/latex/projlib/ProjLib.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-author.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-font.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-language.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-math.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-text.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty
    trunk/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty

Modified: trunk/Master/texmf-dist/doc/latex/projlib/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/projlib/README.md	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/doc/latex/projlib/README.md	2024-03-01 21:44:48 UTC (rev 70305)
@@ -5,7 +5,7 @@
 
 # The `ProjLib` Toolkit
 
-> **This bundle is dated 2024/02/24.**
+> **This bundle is dated 2024/03/01.**
 
 > **New documentations are still being written. For now, only the core code is included in TeX Live 2024 and MiKTeX (old documentations have been removed from the distribution).**
 
@@ -24,18 +24,18 @@
 
 ## The modules
 
-> Each module corresponds to a separate package, for example, the module `theorem` is `projlib-theorem.sty`.
+> Each module corresponds to a separate package, for example, the module `theorem` is `projlib-theorem.sty`. These modules are managed by the main package `ProjLib.sty`.
 
 The modules include:
 1. module `author` - *Enhanced author information block*
-    - Offering `\address`, `\curraddr` and `\email`.
-    - Write in the AMS fashion (with option `ams-fashion`):
-        - Support `\dedicatory`, `\keywords` and `\subjclass`
+    - Offering `\address`, `\curraddr` and `\email`, etc.
+    - Allow writing in the AMS fashion (with option `ams-fashion`):
+        - support `\dedicatory`, `\keywords` and `\subjclass`;
         - `\thanks` can be written outside `\author`;
-        - The `abstract` environment can be placed before `\maketitle`.
+        - the `abstract` environment can be placed before `\maketitle`.
 1. module `datetime` - *Convert numeric date-time string to natural language*
     - `\TheDate` and `\Thedate` for converting numeric date-time string to natural language, with multi-language support (if the command names `\TheDate` or `\Thedate` are occupied, then one can switch to the longer version `\ProjLibDate` and `\ProjLibdate`).
-    - `\ProjLibToday` and `\ProjLibToday` (with the module `language` enabled, `\today` is redefined into `\ProjLibToday`, and thus supports the arguments like `only-year-month`).
+    - `\ProjLibToday` and `\ProjLibToday` (with the module `language` enabled, `\today` is redefined into `\ProjLibToday`, and thus supports additional arguments like `only-year-month`).
     - Multiple input and output format available.
 1. module `draft` - *Useful commands during draft stage*
     - `\DNF` for marking unfinished part. In addition, a report of all unfinished places shall be printed at the last of your document.
@@ -60,14 +60,28 @@
     - Setting up theorem-like environments based on the package `create-theorem`
         - `\CreateTheorem`, `\SetTheorem` and more...
         - In particular, supporting the modes `name as is` and `name as context` for the referencing names.
-    - Supporting the modes `simple name` and `complex name` for the referencing names.
+    - Offering two modes `complex names` (default) and `simple names` (better visual effect but less correct grammar) for the referencing names of those supported theorem-like environments.
     - `\SwitchTheoremNumbering` and `\DisableTheoremNumbering` for manipulating the numbering.
-    - Preset environments include: `application`, `assertion`, `assumption`, `axiom`, `claim`, `conclusion`, `conjecture`, `construction`, `convention`, `corollary`, `definition`, `definition-proposition`, `definition-theorem`, `example`, `exercise`, `fact`, `hypothesis`, `lemma`, `notation`, `observation`, `postulate`, `problem`, `property`, `proposition`, `question`, `recall`, `remark`, `theorem`, and the corresponding unnumbered version with an asterisk `*` in the name.
+    - Preset environments include: `application`, `assertion`, `assumption`, `axiom`, `claim`, `commentary`, `conclusion`, `conjecture`, `construction`, `convention`, `corollary`, `definition`, `definition-proposition`, `definition-theorem`, `example`, `exercise`, `fact`, `hypothesis`, `lemma`, `motivation`, `notation`, `observation`, `postulate`, `problem`, `property`, `proposition`, `question`, `recall`, `remark`, `theorem`, their plural version (among the most commonly used are `examples`, `facts` and `notations`), and the corresponding unnumbered version with an asterisk `*` in the name.
 1. module `titlepage` - *Interface for title page rendering*
     - Currently support four title page styles: `default`, `academic`, `simple` and `fancy`.
 
 > Since the module `theorem` uses `cleveref`, it should be loaded after `varioref` and `hyperref` (same for the main package `ProjLib`).
 
+> Package dependencies:
+> - module `author`: [`regexpatch`](https://ctan.org/pkg/regexpatch), [`scontents`](https://ctan.org/pkg/scontents); it loads the module `language` internally.
+> - module `datetime`: [`relsize`](https://ctan.org/pkg/relsize).
+> - module `draft`: [`pgf`](https://ctan.org/pkg/pgf), [`ulem`](https://ctan.org/pkg/ulem); it loads the module `language` internally.
+> - module `font`: [`anyfontsize`](https://ctan.org/pkg/anyfontsize), [`microtype`](https://ctan.org/pkg/microtype), [`setspaceenhanced`](https://ctan.org/pkg/setspaceenhanced), and a number of font packages depending on the specified option.
+> - module `language`: [`babel`](https://ctan.org/pkg/babel), [`csquotes`](https://ctan.org/pkg/csquotes), [`setspaceenhanced`](https://ctan.org/pkg/setspaceenhanced), [`silence`](https://ctan.org/pkg/silence).
+> - module `logo`: [`pgf`](https://ctan.org/pkg/pgf).
+> - module `math`: [`amsfonts`](https://ctan.org/pkg/amsfonts), [`mathrsfs`](https://ctan.org/pkg/mathrsfs), [`mathtools`](https://ctan.org/pkg/mathtools).
+> - module `paper`: [`xcolor`](https://ctan.org/pkg/xcolor).
+> - module `text`: it loads the module `paper` internally.
+> - module `theorem`: [`amsthm`](https://ctan.org/pkg/amsthm), [`create-theorem`](https://ctan.org/pkg/create-theorem), [`mathtools`](https://ctan.org/pkg/mathtools), [`silence`](https://ctan.org/pkg/silence); it loads the module `language` internally.
+> - module `titlepage`: [`pgf`](https://ctan.org/pkg/pgf); it loads the modules `logo` and `paper` internally.
+
+
 <!-- ## Regarding the files and the compilation of documentations -->
 
 ### How to get these files

Modified: trunk/Master/texmf-dist/source/latex/projlib/ProjLib.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/projlib/ProjLib.dtx	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/source/latex/projlib/ProjLib.dtx	2024-03-01 21:44:48 UTC (rev 70305)
@@ -19,7 +19,7 @@
 %<*ProjLib>
 \ProvidesExplPackage
   {ProjLib}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Collective interface of the ProjLib toolkit}
 %</ProjLib>
 %
@@ -26,7 +26,7 @@
 %<*projlib-author>
 \ProvidesExplPackage
   {projlib-author}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Enhanced author information block}
 %</projlib-author>
 %
@@ -33,7 +33,7 @@
 %<*projlib-datetime>
 \ProvidesExplPackage
   {projlib-datetime}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Convert numeric date-time string to natural language}
 %</projlib-datetime>
 %
@@ -40,7 +40,7 @@
 %<*projlib-draft>
 \ProvidesExplPackage
   {projlib-draft}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Useful commands during draft stage}
 %</projlib-draft>
 %
@@ -47,7 +47,7 @@
 %<*projlib-font>
 \ProvidesExplPackage
   {projlib-font}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Font selection and configuration}
 %</projlib-font>
 %
@@ -54,7 +54,7 @@
 %<*projlib-language>
 \ProvidesExplPackage
   {projlib-language}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Multi-language configuration}
 %</projlib-language>
 %
@@ -61,7 +61,7 @@
 %<*projlib-logo>
 \ProvidesExplPackage
   {projlib-logo}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {The ProjLib logo}
 %</projlib-logo>
 %
@@ -68,7 +68,7 @@
 %<*projlib-math>
 \ProvidesExplPackage
   {projlib-math}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Efficient math setup}
 %</projlib-math>
 %
@@ -75,7 +75,7 @@
 %<*projlib-paper>
 \ProvidesExplPackage
   {projlib-paper}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Configuration of the paper style}
 %</projlib-paper>
 %
@@ -82,7 +82,7 @@
 %<*projlib-text>
 \ProvidesExplPackage
   {projlib-text}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Text-related commands}
 %</projlib-text>
 %
@@ -89,7 +89,7 @@
 %<*projlib-theorem>
 \ProvidesExplPackage
   {projlib-theorem}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Configuration of theorem-like environments}
 %</projlib-theorem>
 %
@@ -96,7 +96,7 @@
 %<*projlib-titlepage>
 \ProvidesExplPackage
   {projlib-titlepage}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Interface for title page rendering}
 %</projlib-titlepage>
 
@@ -476,27 +476,27 @@
           }
       }
 
-      \tl_new:N \l_projlib_author_subjclassname_tl
-      \tl_new:N \l_projlib_author_subjclass_tl
+      \tl_new:N \l__projlib_author_subjclassname_tl
+      \tl_new:N \l__projlib_author_subjclass_tl
       \msg_new:nnn { projlib-author }
         { unknown-msc-edition }
         { Unknown~edition~(#1)~of~Mathematics~Subject~Classification;~using~'2020' }
       \NewDocumentCommand \subjclass { O{2020} m }
         {
-          \tl_set:Nn \l_projlib_author_subjclass_tl { #2 }
+          \tl_set:Nn \l__projlib_author_subjclass_tl { #2 }
           \tl_if_exist:cTF { subjclassname_#1 }
             {
-              \tl_set:Nn \l_projlib_author_subjclassname_tl { \tl_use:c { subjclassname_#1 } }
+              \tl_set:Nn \l__projlib_author_subjclassname_tl { \tl_use:c { subjclassname_#1 } }
             }
             {
               \msg_warning:nnn { projlib-author } { unknown-msc-edition } { #1 }
-              \tl_set:Nn \l_projlib_author_subjclassname_tl { \tl_use:c { subjclassname_2020 } }
+              \tl_set:Nn \l__projlib_author_subjclassname_tl { \tl_use:c { subjclassname_2020 } }
             }
           \projlib_author_pre_thanks:n
             {
-              \textit{ \l_projlib_author_subjclassname_tl \c_projlib_author_dot_tl }
+              \textit{ \l__projlib_author_subjclassname_tl \c_projlib_author_dot_tl }
               \enspace
-              \l_projlib_author_subjclass_tl .
+              \l__projlib_author_subjclass_tl .
             }
         }
       \tl_const:cn { subjclassname_1991 } { \textup{1991}~Mathematics~Subject~Classification }
@@ -2199,7 +2199,7 @@
     }\ULon { #1 }
   }
 
-  \bool_if:NTF \l__projlib_draft_fast_bool
+\bool_if:NTF \l__projlib_draft_fast_bool
   {
     \tl_const:Nn \l_projlib_draft_plain_box_begin_tl { [ }
     \tl_const:Nn \l_projlib_draft_plain_box_after_tl { ] }
@@ -3978,9 +3978,15 @@
     , complex-name                .initial:n          = { true }
     , complex~name                .bool_set:N         = \l__projlib_theorem_complexname_bool
     , complex name                .bool_set:N         = \l__projlib_theorem_complexname_bool
+    , complex-names               .bool_set:N         = \l__projlib_theorem_complexname_bool
+    , complex~names               .bool_set:N         = \l__projlib_theorem_complexname_bool
+    , complex names               .bool_set:N         = \l__projlib_theorem_complexname_bool
     , simple-name                 .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
     , simple~name                 .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
     , simple name                 .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
+    , simple-names                .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
+    , simple~names                .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
+    , simple names                .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
     , no-preset-names             .bool_set_inverse:N = \l__projlib_theorem_presetname_bool
     , no-preset-names             .initial:n          = { false }
     , no~preset~names             .bool_set_inverse:N = \l__projlib_theorem_presetname_bool
@@ -4176,11 +4182,11 @@
 \crthm_counter_alias:nn { theorem-with-name } { theorem }
 % \crthm_counter_alias:nn { proof } { theorem }
 
-\tl_new:N \l_projlib_theorem_name_of_theorem_with_name_tl
+\tl_new:N \l__projlib_theorem_name_of_theorem_with_name_tl
 \CreateTheorem { theorem-with-name_inner }
   {
     , name = {
-               , heading = { \l_projlib_theorem_name_of_theorem_with_name_tl }
+               , heading = { \l__projlib_theorem_name_of_theorem_with_name_tl }
                , crefname = {}{}
                , Crefname = {}{}
              }
@@ -4190,7 +4196,7 @@
 
 \NewDocumentEnvironment { theorem-with-name } { m O{} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_theorem_with_name_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_theorem_with_name_tl { #1 }
     \begin { theorem-with-name_inner } [ #2 ]
   }
   {
@@ -4198,7 +4204,7 @@
   }
 \NewDocumentEnvironment { theorem-with-name* } { m O{} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_theorem_with_name_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_theorem_with_name_tl { #1 }
     \begin { theorem-with-name_inner* } [ #2 ]
   }
   {
@@ -4208,8 +4214,8 @@
 \SetTheoremBinding { theorem-with-name } { theorem-with-name_inner }
 \SetTheoremBinding { theorem-with-name* } { theorem-with-name_inner* }
 
-\tl_new:N \l_projlib_theorem_name_of_proof_tl
-\CreateTheorem { proof_inner } { name = { heading = { \l_projlib_theorem_name_of_proof_tl } }, create-starred-version, qed, shared-counter = proof }
+\tl_new:N \l__projlib_theorem_name_of_proof_tl
+\CreateTheorem { proof_inner } { name = { heading = { \l__projlib_theorem_name_of_proof_tl } }, create-starred-version, qed, shared-counter = proof }
 
 \cs_undefine:c { proof }
 \cs_undefine:c { endproof }
@@ -4216,7 +4222,7 @@
 
 \NewDocumentEnvironment { proof } { O{\proofname} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_proof_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_proof_tl { #1 }
     \begin { proof_inner }
   }
   {
@@ -4224,7 +4230,7 @@
   }
 \NewDocumentEnvironment { proof* } { O{\proofname} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_proof_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_proof_tl { #1 }
     \begin { proof_inner* }
   }
   {
@@ -7097,19 +7103,19 @@
 \usetikzlibrary { calc }
 \ExplSyntaxOn
 
-\tl_new:N \l_projlib_titlepage_title_page_name_tl
-\tl_new:N \l_projlib_titlepage_license_page_name_tl
-\tl_set:Nn \l_projlib_titlepage_title_page_name_tl   { Cover   }
-\tl_set:Nn \l_projlib_titlepage_license_page_name_tl { License }
+\tl_new:N \l__projlib_titlepage_title_page_name_tl
+\tl_new:N \l__projlib_titlepage_license_page_name_tl
+\tl_set:Nn \l__projlib_titlepage_title_page_name_tl   { Cover   }
+\tl_set:Nn \l__projlib_titlepage_license_page_name_tl { License }
 
-\tl_new:N \l_projlib_titlepage_logo_tl
-\tl_new:N \l_projlib_titlepage_title_tl
-\tl_new:N \l_projlib_titlepage_subtitle_tl
-\tl_new:N \l_projlib_titlepage_author_tl
-\tl_new:N \l_projlib_titlepage_info_tl
-\tl_new:N \l_projlib_titlepage_license_tl
-\tl_new:N \l_projlib_titlepage_date_tl
-\tl_new:N \l_projlib_titlepage_style_tl
+\tl_new:N \l__projlib_titlepage_logo_tl
+\tl_new:N \l__projlib_titlepage_title_tl
+\tl_new:N \l__projlib_titlepage_subtitle_tl
+\tl_new:N \l__projlib_titlepage_author_tl
+\tl_new:N \l__projlib_titlepage_info_tl
+\tl_new:N \l__projlib_titlepage_license_tl
+\tl_new:N \l__projlib_titlepage_date_tl
+\tl_new:N \l__projlib_titlepage_style_tl
 
 \NewDocumentCommand \ProjLibTitlePage { O{} m }
   {
@@ -7128,23 +7134,23 @@
 
 \keys_define:nn { projlib-titlepage-config }
   {
-    , logo              .code:n             = { \tl_set:Nn \l_projlib_titlepage_logo_tl { \tl_trim_spaces:n { #1 } } }
+    , logo              .code:n             = { \tl_set:Nn \l__projlib_titlepage_logo_tl { \tl_trim_spaces:n { #1 } } }
     , logo              .initial:n          = { * }
-    , title             .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_tl { \tl_trim_spaces:n { #1 } } }
-    , subtitle          .code:n             = { \tl_set:Nn \l_projlib_titlepage_subtitle_tl { \tl_trim_spaces:n { #1 } } }
-    , author            .code:n             = { \tl_set:Nn \l_projlib_titlepage_author_tl { \tl_trim_spaces:n { #1 } } }
-    , date              .code:n             = { \tl_set:Nn \l_projlib_titlepage_date_tl { \tl_trim_spaces:n { #1 } } }
-    , title-page-name   .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , title~page~name   .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , title page name   .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , license-page-name .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , license~page~name .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , license page name .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , info              .code:n             = { \tl_set:Nn \l_projlib_titlepage_info_tl { \tl_trim_spaces:n { #1 } } }
+    , title             .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_tl { \tl_trim_spaces:n { #1 } } }
+    , subtitle          .code:n             = { \tl_set:Nn \l__projlib_titlepage_subtitle_tl { \tl_trim_spaces:n { #1 } } }
+    , author            .code:n             = { \tl_set:Nn \l__projlib_titlepage_author_tl { \tl_trim_spaces:n { #1 } } }
+    , date              .code:n             = { \tl_set:Nn \l__projlib_titlepage_date_tl { \tl_trim_spaces:n { #1 } } }
+    , title-page-name   .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , title~page~name   .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , title page name   .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , license-page-name .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , license~page~name .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , license page name .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , info              .code:n             = { \tl_set:Nn \l__projlib_titlepage_info_tl { \tl_trim_spaces:n { #1 } } }
     , info              .initial:n          = { }
-    , license           .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_tl { \tl_trim_spaces:n { #1 } } }
+    , license           .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_tl { \tl_trim_spaces:n { #1 } } }
     , license           .initial:n          = { }
-    , style             .tl_set:N           = \l_projlib_titlepage_style_tl
+    , style             .tl_set:N           = \l__projlib_titlepage_style_tl
     , style             .initial:n          = { default }
     , color             .code:n             = {
                                                 \keyval_parse:nnn
@@ -7152,6 +7158,10 @@
                                                   { \projlib_titlepage_set_color:nn }
                                                   { #1 }
                                               }
+    , author-info-on-the-right .bool_set:N  = \l__projlib_titlepage_show_author_info_on_the_right_bool
+    , author-info-on-the-right .initial:n   = { false }
+    , author~info~on~the~right .bool_set:N  = \l__projlib_titlepage_show_author_info_on_the_right_bool
+    , author info on the right .bool_set:N  = \l__projlib_titlepage_show_author_info_on_the_right_bool
     , unknown           .code:n             = {}
   }
 
@@ -7160,12 +7170,12 @@
 
 \cs_new_protected:Nn \projlib_titlepage_show_logo:n
   {
-    \tl_if_eq:NnTF \l_projlib_titlepage_logo_tl { \tl_trim_spaces:n { * } }
+    \tl_if_eq:NnTF \l__projlib_titlepage_logo_tl { \tl_trim_spaces:n { * } }
       {
         #1
       }
       {
-        \tl_use:N \l_projlib_titlepage_logo_tl
+        \tl_use:N \l__projlib_titlepage_logo_tl
       }
   }
 
@@ -7172,21 +7182,21 @@
 \cs_new_protected:Nn \projlib_titlepage_render:n
   {
     \keys_set:nn { projlib-titlepage-config } { #1 }
-    \tl_set_eq:NN \thepage \l_projlib_titlepage_title_page_name_tl
+    \tl_set_eq:NN \thepage \l__projlib_titlepage_title_page_name_tl
     \begin { titlepage }
-      \cs_if_exist_use:c { projlib_titlepage_render_with_style_ \l_projlib_titlepage_style_tl : }
+      \cs_if_exist_use:c { projlib_titlepage_render_with_style_ \l__projlib_titlepage_style_tl : }
     \end   { titlepage }
-    \tl_set_eq:NN \thepage \l_projlib_titlepage_license_page_name_tl
+    \tl_set_eq:NN \thepage \l__projlib_titlepage_license_page_name_tl
     \thispagestyle{empty}
     \null\vfill
     % \begin{flushleft}
     \group_begin:
       \noindent
-      \tl_use:N \l_projlib_titlepage_info_tl
+      \tl_use:N \l__projlib_titlepage_info_tl
     \group_end:
     % \end{flushleft}
     \group_begin:
-      \tl_use:N \l_projlib_titlepage_license_tl
+      \tl_use:N \l__projlib_titlepage_license_tl
     \group_end:
     \cleardoublepage
     \setcounter{page}{0}
@@ -7207,10 +7217,10 @@
         at ($(current~page.north~west)+(.57\paperwidth,-.15\paperheight)$)
           {
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \textbf{ \l_projlib_titlepage_title_tl } }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \textbf{ \l__projlib_titlepage_title_tl } }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
       % \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
         % at ($(current~page.south)+(.135\paperwidth,.35\paperheight)$)
@@ -7220,9 +7230,9 @@
             % \color{.!50}
             % \begin{flushright}
               \fontsize{16pt}{24pt}\selectfont
-              \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+              \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
               \fontsize{12pt}{18pt}\selectfont
-              \l_projlib_titlepage_date_tl
+              \l__projlib_titlepage_date_tl
             % \end{flushright}
           };
     \end{tikzpicture}
@@ -7243,22 +7253,36 @@
           {
             \color{white}
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \l_projlib_titlepage_title_tl }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \l__projlib_titlepage_title_tl }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
-      \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
-        at ($(current~page.south)+(.135\paperwidth,.35\paperheight)$)
-          {
-            \color{white}
-            \begin{flushright}
+      \bool_if:NTF \l__projlib_titlepage_show_author_info_on_the_right_bool
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+            at ($(current~page.south)+(.135\paperwidth,.4\paperheight)$)
+              {
+                \color{white}
+                \begin{flushright}
+                  \fontsize{16pt}{24pt}\selectfont
+                  \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
+                  \fontsize{12pt}{18pt}\selectfont
+                  \l__projlib_titlepage_date_tl
+                \end{flushright}
+              };
+        }
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+          at ($(current~page.south~west)+(.38\paperwidth,.4\paperheight)$)
+            {
+              \color{white}
               \fontsize{16pt}{24pt}\selectfont
-              \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+              \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
               \fontsize{12pt}{18pt}\selectfont
-              \l_projlib_titlepage_date_tl
-            \end{flushright}
-          };
+              \l__projlib_titlepage_date_tl
+            };
+        }
     \end{tikzpicture}
   }
 
@@ -7277,10 +7301,10 @@
           {
             \color{titlepage-main}
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \l_projlib_titlepage_title_tl }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \l__projlib_titlepage_title_tl }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
       \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~center]
         at ($(current~page.south)+(0pt,.36\paperheight)$)
@@ -7287,9 +7311,9 @@
           {
             \color{white}
             \fontsize{16pt}{24pt}\selectfont
-            \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+            \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
             \fontsize{12pt}{18pt}\selectfont
-            \l_projlib_titlepage_date_tl
+            \l__projlib_titlepage_date_tl
           };
     \end{tikzpicture}
   }
@@ -7311,22 +7335,36 @@
           {
             \color{titlepage-back}
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \l_projlib_titlepage_title_tl }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \l__projlib_titlepage_title_tl }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
-      \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
-        at ($(current~page.south)+(.135\paperwidth,.35\paperheight)$)
-          {
-            \color{titlepage-back}
-            \begin{flushright}
+      \bool_if:NTF \l__projlib_titlepage_show_author_info_on_the_right_bool
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+            at ($(current~page.south)+(.135\paperwidth,.4\paperheight)$)
+              {
+                \color{titlepage-back}
+                \begin{flushright}
+                  \fontsize{16pt}{24pt}\selectfont
+                  \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
+                  \fontsize{12pt}{18pt}\selectfont
+                  \l__projlib_titlepage_date_tl
+                \end{flushright}
+              };
+        }
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+          at ($(current~page.south~west)+(.433\paperwidth,.4\paperheight)$)
+            {
+              \color{titlepage-back}
               \fontsize{16pt}{24pt}\selectfont
-              \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+              \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
               \fontsize{12pt}{18pt}\selectfont
-              \l_projlib_titlepage_date_tl
-            \end{flushright}
-          };
+              \l__projlib_titlepage_date_tl
+            };
+        }
     \end{tikzpicture}
   }
 %</projlib-titlepage>

Modified: trunk/Master/texmf-dist/tex/latex/projlib/ProjLib.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/ProjLib.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/ProjLib.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {ProjLib}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Collective interface of the ProjLib toolkit}
 
 \keys_define:nn { ProjLib }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-author.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-author.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-author.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-author}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Enhanced author information block}
 
 \keys_define:nn { projlib-author }
@@ -328,27 +328,27 @@
           }
       }
 
-      \tl_new:N \l_projlib_author_subjclassname_tl
-      \tl_new:N \l_projlib_author_subjclass_tl
+      \tl_new:N \l__projlib_author_subjclassname_tl
+      \tl_new:N \l__projlib_author_subjclass_tl
       \msg_new:nnn { projlib-author }
         { unknown-msc-edition }
         { Unknown~edition~(#1)~of~Mathematics~Subject~Classification;~using~'2020' }
       \NewDocumentCommand \subjclass { O{2020} m }
         {
-          \tl_set:Nn \l_projlib_author_subjclass_tl { #2 }
+          \tl_set:Nn \l__projlib_author_subjclass_tl { #2 }
           \tl_if_exist:cTF { subjclassname_#1 }
             {
-              \tl_set:Nn \l_projlib_author_subjclassname_tl { \tl_use:c { subjclassname_#1 } }
+              \tl_set:Nn \l__projlib_author_subjclassname_tl { \tl_use:c { subjclassname_#1 } }
             }
             {
               \msg_warning:nnn { projlib-author } { unknown-msc-edition } { #1 }
-              \tl_set:Nn \l_projlib_author_subjclassname_tl { \tl_use:c { subjclassname_2020 } }
+              \tl_set:Nn \l__projlib_author_subjclassname_tl { \tl_use:c { subjclassname_2020 } }
             }
           \projlib_author_pre_thanks:n
             {
-              \textit{ \l_projlib_author_subjclassname_tl \c_projlib_author_dot_tl }
+              \textit{ \l__projlib_author_subjclassname_tl \c_projlib_author_dot_tl }
               \enspace
-              \l_projlib_author_subjclass_tl .
+              \l__projlib_author_subjclass_tl .
             }
         }
       \tl_const:cn { subjclassname_1991 } { \textup{1991}~Mathematics~Subject~Classification }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-datetime}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Convert numeric date-time string to natural language}
 
 \tl_new:N   \g__projlib_datetime_input_format_tl

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-draft}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Useful commands during draft stage}
 
 \keys_define:nn { projlib-draft }
@@ -49,7 +49,7 @@
     }\ULon { #1 }
   }
 
-  \bool_if:NTF \l__projlib_draft_fast_bool
+\bool_if:NTF \l__projlib_draft_fast_bool
   {
     \tl_const:Nn \l_projlib_draft_plain_box_begin_tl { [ }
     \tl_const:Nn \l_projlib_draft_plain_box_after_tl { ] }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-font.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-font.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-font.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-font}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Font selection and configuration}
 
 \keys_define:nn { projlib-font }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-language.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-language.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-language.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-language}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Multi-language configuration}
 
 \clist_const:Nn \c__projlib_language_supported_clist

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-logo}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {The ProjLib logo}
 
 \keys_define:nn { projlib-logo }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-math.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-math.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-math.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-math}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Efficient math setup}
 
 \keys_define:nn { projlib-math }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-paper}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Configuration of the paper style}
 
 \keys_define:nn { projlib-paper }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-text.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-text.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-text.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-text}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Text-related commands}
 
 \keys_define:nn { projlib-text }

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-theorem}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Configuration of theorem-like environments}
 
 \keys_define:nn { projlib-theorem }
@@ -59,9 +59,15 @@
     , complex-name                .initial:n          = { true }
     , complex~name                .bool_set:N         = \l__projlib_theorem_complexname_bool
     , complex name                .bool_set:N         = \l__projlib_theorem_complexname_bool
+    , complex-names               .bool_set:N         = \l__projlib_theorem_complexname_bool
+    , complex~names               .bool_set:N         = \l__projlib_theorem_complexname_bool
+    , complex names               .bool_set:N         = \l__projlib_theorem_complexname_bool
     , simple-name                 .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
     , simple~name                 .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
     , simple name                 .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
+    , simple-names                .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
+    , simple~names                .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
+    , simple names                .bool_set_inverse:N = \l__projlib_theorem_complexname_bool
     , no-preset-names             .bool_set_inverse:N = \l__projlib_theorem_presetname_bool
     , no-preset-names             .initial:n          = { false }
     , no~preset~names             .bool_set_inverse:N = \l__projlib_theorem_presetname_bool
@@ -251,11 +257,11 @@
 \newcounter { proof }
 \crthm_counter_alias:nn { theorem-with-name } { theorem }
 
-\tl_new:N \l_projlib_theorem_name_of_theorem_with_name_tl
+\tl_new:N \l__projlib_theorem_name_of_theorem_with_name_tl
 \CreateTheorem { theorem-with-name_inner }
   {
     , name = {
-               , heading = { \l_projlib_theorem_name_of_theorem_with_name_tl }
+               , heading = { \l__projlib_theorem_name_of_theorem_with_name_tl }
                , crefname = {}{}
                , Crefname = {}{}
              }
@@ -265,7 +271,7 @@
 
 \NewDocumentEnvironment { theorem-with-name } { m O{} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_theorem_with_name_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_theorem_with_name_tl { #1 }
     \begin { theorem-with-name_inner } [ #2 ]
   }
   {
@@ -273,7 +279,7 @@
   }
 \NewDocumentEnvironment { theorem-with-name* } { m O{} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_theorem_with_name_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_theorem_with_name_tl { #1 }
     \begin { theorem-with-name_inner* } [ #2 ]
   }
   {
@@ -283,8 +289,8 @@
 \SetTheoremBinding { theorem-with-name } { theorem-with-name_inner }
 \SetTheoremBinding { theorem-with-name* } { theorem-with-name_inner* }
 
-\tl_new:N \l_projlib_theorem_name_of_proof_tl
-\CreateTheorem { proof_inner } { name = { heading = { \l_projlib_theorem_name_of_proof_tl } }, create-starred-version, qed, shared-counter = proof }
+\tl_new:N \l__projlib_theorem_name_of_proof_tl
+\CreateTheorem { proof_inner } { name = { heading = { \l__projlib_theorem_name_of_proof_tl } }, create-starred-version, qed, shared-counter = proof }
 
 \cs_undefine:c { proof }
 \cs_undefine:c { endproof }
@@ -291,7 +297,7 @@
 
 \NewDocumentEnvironment { proof } { O{\proofname} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_proof_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_proof_tl { #1 }
     \begin { proof_inner }
   }
   {
@@ -299,7 +305,7 @@
   }
 \NewDocumentEnvironment { proof* } { O{\proofname} }
   {
-    \tl_set:Nn \l_projlib_theorem_name_of_proof_tl { #1 }
+    \tl_set:Nn \l__projlib_theorem_name_of_proof_tl { #1 }
     \begin { proof_inner* }
   }
   {

Modified: trunk/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty	2024-03-01 21:44:35 UTC (rev 70304)
+++ trunk/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty	2024-03-01 21:44:48 UTC (rev 70305)
@@ -18,7 +18,7 @@
 \NeedsTeXFormat{LaTeX2e}[2022-06-01]
 \ProvidesExplPackage
   {projlib-titlepage}
-  {2024/02/24} {}
+  {2024/03/01} {}
   {Interface for title page rendering}
 
 \keys_define:nn { projlib-titlepage }
@@ -35,19 +35,19 @@
 \usetikzlibrary { calc }
 \ExplSyntaxOn
 
-\tl_new:N \l_projlib_titlepage_title_page_name_tl
-\tl_new:N \l_projlib_titlepage_license_page_name_tl
-\tl_set:Nn \l_projlib_titlepage_title_page_name_tl   { Cover   }
-\tl_set:Nn \l_projlib_titlepage_license_page_name_tl { License }
+\tl_new:N \l__projlib_titlepage_title_page_name_tl
+\tl_new:N \l__projlib_titlepage_license_page_name_tl
+\tl_set:Nn \l__projlib_titlepage_title_page_name_tl   { Cover   }
+\tl_set:Nn \l__projlib_titlepage_license_page_name_tl { License }
 
-\tl_new:N \l_projlib_titlepage_logo_tl
-\tl_new:N \l_projlib_titlepage_title_tl
-\tl_new:N \l_projlib_titlepage_subtitle_tl
-\tl_new:N \l_projlib_titlepage_author_tl
-\tl_new:N \l_projlib_titlepage_info_tl
-\tl_new:N \l_projlib_titlepage_license_tl
-\tl_new:N \l_projlib_titlepage_date_tl
-\tl_new:N \l_projlib_titlepage_style_tl
+\tl_new:N \l__projlib_titlepage_logo_tl
+\tl_new:N \l__projlib_titlepage_title_tl
+\tl_new:N \l__projlib_titlepage_subtitle_tl
+\tl_new:N \l__projlib_titlepage_author_tl
+\tl_new:N \l__projlib_titlepage_info_tl
+\tl_new:N \l__projlib_titlepage_license_tl
+\tl_new:N \l__projlib_titlepage_date_tl
+\tl_new:N \l__projlib_titlepage_style_tl
 
 \NewDocumentCommand \ProjLibTitlePage { O{} m }
   {
@@ -66,23 +66,23 @@
 
 \keys_define:nn { projlib-titlepage-config }
   {
-    , logo              .code:n             = { \tl_set:Nn \l_projlib_titlepage_logo_tl { \tl_trim_spaces:n { #1 } } }
+    , logo              .code:n             = { \tl_set:Nn \l__projlib_titlepage_logo_tl { \tl_trim_spaces:n { #1 } } }
     , logo              .initial:n          = { * }
-    , title             .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_tl { \tl_trim_spaces:n { #1 } } }
-    , subtitle          .code:n             = { \tl_set:Nn \l_projlib_titlepage_subtitle_tl { \tl_trim_spaces:n { #1 } } }
-    , author            .code:n             = { \tl_set:Nn \l_projlib_titlepage_author_tl { \tl_trim_spaces:n { #1 } } }
-    , date              .code:n             = { \tl_set:Nn \l_projlib_titlepage_date_tl { \tl_trim_spaces:n { #1 } } }
-    , title-page-name   .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , title~page~name   .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , title page name   .code:n             = { \tl_set:Nn \l_projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , license-page-name .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , license~page~name .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , license page name .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
-    , info              .code:n             = { \tl_set:Nn \l_projlib_titlepage_info_tl { \tl_trim_spaces:n { #1 } } }
+    , title             .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_tl { \tl_trim_spaces:n { #1 } } }
+    , subtitle          .code:n             = { \tl_set:Nn \l__projlib_titlepage_subtitle_tl { \tl_trim_spaces:n { #1 } } }
+    , author            .code:n             = { \tl_set:Nn \l__projlib_titlepage_author_tl { \tl_trim_spaces:n { #1 } } }
+    , date              .code:n             = { \tl_set:Nn \l__projlib_titlepage_date_tl { \tl_trim_spaces:n { #1 } } }
+    , title-page-name   .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , title~page~name   .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , title page name   .code:n             = { \tl_set:Nn \l__projlib_titlepage_title_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , license-page-name .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , license~page~name .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , license page name .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_page_name_tl { \tl_trim_spaces:n { #1 } } }
+    , info              .code:n             = { \tl_set:Nn \l__projlib_titlepage_info_tl { \tl_trim_spaces:n { #1 } } }
     , info              .initial:n          = { }
-    , license           .code:n             = { \tl_set:Nn \l_projlib_titlepage_license_tl { \tl_trim_spaces:n { #1 } } }
+    , license           .code:n             = { \tl_set:Nn \l__projlib_titlepage_license_tl { \tl_trim_spaces:n { #1 } } }
     , license           .initial:n          = { }
-    , style             .tl_set:N           = \l_projlib_titlepage_style_tl
+    , style             .tl_set:N           = \l__projlib_titlepage_style_tl
     , style             .initial:n          = { default }
     , color             .code:n             = {
                                                 \keyval_parse:nnn
@@ -90,6 +90,10 @@
                                                   { \projlib_titlepage_set_color:nn }
                                                   { #1 }
                                               }
+    , author-info-on-the-right .bool_set:N  = \l__projlib_titlepage_show_author_info_on_the_right_bool
+    , author-info-on-the-right .initial:n   = { false }
+    , author~info~on~the~right .bool_set:N  = \l__projlib_titlepage_show_author_info_on_the_right_bool
+    , author info on the right .bool_set:N  = \l__projlib_titlepage_show_author_info_on_the_right_bool
     , unknown           .code:n             = {}
   }
 
@@ -98,12 +102,12 @@
 
 \cs_new_protected:Nn \projlib_titlepage_show_logo:n
   {
-    \tl_if_eq:NnTF \l_projlib_titlepage_logo_tl { \tl_trim_spaces:n { * } }
+    \tl_if_eq:NnTF \l__projlib_titlepage_logo_tl { \tl_trim_spaces:n { * } }
       {
         #1
       }
       {
-        \tl_use:N \l_projlib_titlepage_logo_tl
+        \tl_use:N \l__projlib_titlepage_logo_tl
       }
   }
 
@@ -110,21 +114,21 @@
 \cs_new_protected:Nn \projlib_titlepage_render:n
   {
     \keys_set:nn { projlib-titlepage-config } { #1 }
-    \tl_set_eq:NN \thepage \l_projlib_titlepage_title_page_name_tl
+    \tl_set_eq:NN \thepage \l__projlib_titlepage_title_page_name_tl
     \begin { titlepage }
-      \cs_if_exist_use:c { projlib_titlepage_render_with_style_ \l_projlib_titlepage_style_tl : }
+      \cs_if_exist_use:c { projlib_titlepage_render_with_style_ \l__projlib_titlepage_style_tl : }
     \end   { titlepage }
-    \tl_set_eq:NN \thepage \l_projlib_titlepage_license_page_name_tl
+    \tl_set_eq:NN \thepage \l__projlib_titlepage_license_page_name_tl
     \thispagestyle{empty}
     \null\vfill
     % \begin{flushleft}
     \group_begin:
       \noindent
-      \tl_use:N \l_projlib_titlepage_info_tl
+      \tl_use:N \l__projlib_titlepage_info_tl
     \group_end:
     % \end{flushleft}
     \group_begin:
-      \tl_use:N \l_projlib_titlepage_license_tl
+      \tl_use:N \l__projlib_titlepage_license_tl
     \group_end:
     \cleardoublepage
     \setcounter{page}{0}
@@ -144,10 +148,10 @@
         at ($(current~page.north~west)+(.57\paperwidth,-.15\paperheight)$)
           {
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \textbf{ \l_projlib_titlepage_title_tl } }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \textbf{ \l__projlib_titlepage_title_tl } }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
       % \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
         % at ($(current~page.south)+(.135\paperwidth,.35\paperheight)$)
@@ -157,9 +161,9 @@
             % \color{.!50}
             % \begin{flushright}
               \fontsize{16pt}{24pt}\selectfont
-              \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+              \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
               \fontsize{12pt}{18pt}\selectfont
-              \l_projlib_titlepage_date_tl
+              \l__projlib_titlepage_date_tl
             % \end{flushright}
           };
     \end{tikzpicture}
@@ -180,22 +184,36 @@
           {
             \color{white}
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \l_projlib_titlepage_title_tl }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \l__projlib_titlepage_title_tl }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
-      \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
-        at ($(current~page.south)+(.135\paperwidth,.35\paperheight)$)
-          {
-            \color{white}
-            \begin{flushright}
+      \bool_if:NTF \l__projlib_titlepage_show_author_info_on_the_right_bool
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+            at ($(current~page.south)+(.135\paperwidth,.4\paperheight)$)
+              {
+                \color{white}
+                \begin{flushright}
+                  \fontsize{16pt}{24pt}\selectfont
+                  \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
+                  \fontsize{12pt}{18pt}\selectfont
+                  \l__projlib_titlepage_date_tl
+                \end{flushright}
+              };
+        }
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+          at ($(current~page.south~west)+(.38\paperwidth,.4\paperheight)$)
+            {
+              \color{white}
               \fontsize{16pt}{24pt}\selectfont
-              \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+              \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
               \fontsize{12pt}{18pt}\selectfont
-              \l_projlib_titlepage_date_tl
-            \end{flushright}
-          };
+              \l__projlib_titlepage_date_tl
+            };
+        }
     \end{tikzpicture}
   }
 
@@ -214,10 +232,10 @@
           {
             \color{titlepage-main}
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \l_projlib_titlepage_title_tl }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \l__projlib_titlepage_title_tl }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
       \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~center]
         at ($(current~page.south)+(0pt,.36\paperheight)$)
@@ -224,9 +242,9 @@
           {
             \color{white}
             \fontsize{16pt}{24pt}\selectfont
-            \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+            \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
             \fontsize{12pt}{18pt}\selectfont
-            \l_projlib_titlepage_date_tl
+            \l__projlib_titlepage_date_tl
           };
     \end{tikzpicture}
   }
@@ -248,22 +266,36 @@
           {
             \color{titlepage-back}
             \sffamily
-            \fontsize{24pt}{36pt}\selectfont
-            \textsc{ \l_projlib_titlepage_title_tl }\\[1.5em]
-            \fontsize{18pt}{27pt}\selectfont
-            \l_projlib_titlepage_subtitle_tl
+            \fontsize{28pt}{42pt}\selectfont
+            \textsc{ \l__projlib_titlepage_title_tl }\\[1.5em]
+            \fontsize{20pt}{30pt}\selectfont
+            \l__projlib_titlepage_subtitle_tl
           };
-      \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
-        at ($(current~page.south)+(.135\paperwidth,.35\paperheight)$)
-          {
-            \color{titlepage-back}
-            \begin{flushright}
+      \bool_if:NTF \l__projlib_titlepage_show_author_info_on_the_right_bool
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+            at ($(current~page.south)+(.135\paperwidth,.4\paperheight)$)
+              {
+                \color{titlepage-back}
+                \begin{flushright}
+                  \fontsize{16pt}{24pt}\selectfont
+                  \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
+                  \fontsize{12pt}{18pt}\selectfont
+                  \l__projlib_titlepage_date_tl
+                \end{flushright}
+              };
+        }
+        {
+          \node[text~width=.5\paperwidth, text~height=.4\paperheight, align=flush~left]
+          at ($(current~page.south~west)+(.433\paperwidth,.4\paperheight)$)
+            {
+              \color{titlepage-back}
               \fontsize{16pt}{24pt}\selectfont
-              \textsc{ \l_projlib_titlepage_author_tl }\\[1em]
+              \textsc{ \l__projlib_titlepage_author_tl }\\[1em]
               \fontsize{12pt}{18pt}\selectfont
-              \l_projlib_titlepage_date_tl
-            \end{flushright}
-          };
+              \l__projlib_titlepage_date_tl
+            };
+        }
     \end{tikzpicture}
   }
 



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