diff options
author | Karl Berry <karl@freefriends.org> | 2024-03-01 21:44:48 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2024-03-01 21:44:48 +0000 |
commit | 94943b79e7d0bd2346bf2d6dd285d381edcebe92 (patch) | |
tree | 393b4de2a0ffd2dead00f42407f8677eb7f8a1ef | |
parent | 94f23157f94a5129effb7c4794ac4886798d4a18 (diff) |
projlib (1mar24)
git-svn-id: svn://tug.org/texlive/trunk@70305 c570f23f-e606-0410-a88d-b1316a301751
14 files changed, 297 insertions, 207 deletions
diff --git a/Master/texmf-dist/doc/latex/projlib/README.md b/Master/texmf-dist/doc/latex/projlib/README.md index 207a68fe124..4ff60d3f875 100644 --- a/Master/texmf-dist/doc/latex/projlib/README.md +++ b/Master/texmf-dist/doc/latex/projlib/README.md @@ -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 @@ To get started, simply put this line in your preamble: ## 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 @@ The modules include: - 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 diff --git a/Master/texmf-dist/source/latex/projlib/ProjLib.dtx b/Master/texmf-dist/source/latex/projlib/ProjLib.dtx index d961221c89a..50dc24d9fe2 100644 --- a/Master/texmf-dist/source/latex/projlib/ProjLib.dtx +++ b/Master/texmf-dist/source/latex/projlib/ProjLib.dtx @@ -19,84 +19,84 @@ %<*ProjLib> \ProvidesExplPackage {ProjLib} - {2024/02/24} {} + {2024/03/01} {} {Collective interface of the ProjLib toolkit} %</ProjLib> % %<*projlib-author> \ProvidesExplPackage {projlib-author} - {2024/02/24} {} + {2024/03/01} {} {Enhanced author information block} %</projlib-author> % %<*projlib-datetime> \ProvidesExplPackage {projlib-datetime} - {2024/02/24} {} + {2024/03/01} {} {Convert numeric date-time string to natural language} %</projlib-datetime> % %<*projlib-draft> \ProvidesExplPackage {projlib-draft} - {2024/02/24} {} + {2024/03/01} {} {Useful commands during draft stage} %</projlib-draft> % %<*projlib-font> \ProvidesExplPackage {projlib-font} - {2024/02/24} {} + {2024/03/01} {} {Font selection and configuration} %</projlib-font> % %<*projlib-language> \ProvidesExplPackage {projlib-language} - {2024/02/24} {} + {2024/03/01} {} {Multi-language configuration} %</projlib-language> % %<*projlib-logo> \ProvidesExplPackage {projlib-logo} - {2024/02/24} {} + {2024/03/01} {} {The ProjLib logo} %</projlib-logo> % %<*projlib-math> \ProvidesExplPackage {projlib-math} - {2024/02/24} {} + {2024/03/01} {} {Efficient math setup} %</projlib-math> % %<*projlib-paper> \ProvidesExplPackage {projlib-paper} - {2024/02/24} {} + {2024/03/01} {} {Configuration of the paper style} %</projlib-paper> % %<*projlib-text> \ProvidesExplPackage {projlib-text} - {2024/02/24} {} + {2024/03/01} {} {Text-related commands} %</projlib-text> % %<*projlib-theorem> \ProvidesExplPackage {projlib-theorem} - {2024/02/24} {} + {2024/03/01} {} {Configuration of theorem-like environments} %</projlib-theorem> % %<*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,15 +4214,15 @@ \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 } \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,33 +7170,33 @@ \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 } } \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,19 +7301,19 @@ { \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)$) { \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> diff --git a/Master/texmf-dist/tex/latex/projlib/ProjLib.sty b/Master/texmf-dist/tex/latex/projlib/ProjLib.sty index 280eb7630c7..a47e4e612a9 100644 --- a/Master/texmf-dist/tex/latex/projlib/ProjLib.sty +++ b/Master/texmf-dist/tex/latex/projlib/ProjLib.sty @@ -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 } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-author.sty b/Master/texmf-dist/tex/latex/projlib/projlib-author.sty index 6c397755efc..9a50ebce04c 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-author.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-author.sty @@ -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 } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty b/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty index 9e671dec414..6844cc75bbb 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-datetime.sty @@ -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 diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty b/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty index 856b5e019a9..52a41ef34f5 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-draft.sty @@ -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 { ] } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-font.sty b/Master/texmf-dist/tex/latex/projlib/projlib-font.sty index 3cc047231b9..01b03dba657 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-font.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-font.sty @@ -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 } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-language.sty b/Master/texmf-dist/tex/latex/projlib/projlib-language.sty index c7c004b3065..ca08940f1dc 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-language.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-language.sty @@ -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 diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty b/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty index 837d8777db2..4a3d1f64a85 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-logo.sty @@ -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 } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-math.sty b/Master/texmf-dist/tex/latex/projlib/projlib-math.sty index 29db2d8d91e..cb11e96d5f7 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-math.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-math.sty @@ -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 } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty b/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty index 5a61b90071b..4068a575e76 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-paper.sty @@ -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 } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-text.sty b/Master/texmf-dist/tex/latex/projlib/projlib-text.sty index e25d2dad158..3ac767858a8 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-text.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-text.sty @@ -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 } diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty b/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty index 057de6aec27..6ae361f34ff 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-theorem.sty @@ -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,15 +289,15 @@ \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 } \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* } } { diff --git a/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty b/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty index e5916b6fd63..9ac50f0471d 100644 --- a/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty +++ b/Master/texmf-dist/tex/latex/projlib/projlib-titlepage.sty @@ -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,33 +102,33 @@ \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 } } \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,19 +232,19 @@ { \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)$) { \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} } |