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 /Master/texmf-dist/source | |
parent | 94f23157f94a5129effb7c4794ac4886798d4a18 (diff) |
projlib (1mar24)
git-svn-id: svn://tug.org/texlive/trunk@70305 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r-- | Master/texmf-dist/source/latex/projlib/ProjLib.dtx | 236 |
1 files changed, 137 insertions, 99 deletions
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> |