diff options
Diffstat (limited to 'macros/latex')
29 files changed, 817 insertions, 3929 deletions
diff --git a/macros/latex/contrib/adjmulticol/README b/macros/latex/contrib/adjmulticol/README index 62d899f95b..c3c9fcbe51 100644 --- a/macros/latex/contrib/adjmulticol/README +++ b/macros/latex/contrib/adjmulticol/README @@ -11,4 +11,6 @@ Changes: v1.1 Changed calculations for unicolumn layout which might previously lead to loss of text - v1.2 Bug fix: now adjmulticols works inside a box too.
\ No newline at end of file + v1.2 Bug fix: now adjmulticols works inside a box too. + + v1.3 Big fix: disappearing material in one column output
\ No newline at end of file diff --git a/macros/latex/contrib/adjmulticol/adjmulticol.dtx b/macros/latex/contrib/adjmulticol/adjmulticol.dtx index 12c5e4ca73..9ce7012f03 100644 --- a/macros/latex/contrib/adjmulticol/adjmulticol.dtx +++ b/macros/latex/contrib/adjmulticol/adjmulticol.dtx @@ -1,6 +1,6 @@ % \iffalse % -%% Copyright 2020, Boris Veytsman <borisv@lk.net> +%% Copyright 2022, Boris Veytsman <borisv@lk.net> %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3 of this license or (at your option) any @@ -87,7 +87,7 @@ %% %<*gobble> % \fi -% \CheckSum{184} +% \CheckSum{0} % % %% \CharacterTable @@ -126,7 +126,7 @@ % \GetFileInfo{adjmulticol.sty} % % \title{Adjusting Margins for Multicolumn and Unicolumn -% Output\thanks{\copyright Boris Veytsman, 2020} \thanks{Note: This +% Output\thanks{\copyright Boris Veytsman, 2022} \thanks{Note: This % package is released under terms which affect its use in commercial % applications. Please see the details at the top of the source file}} % \author{Boris Veytsman} @@ -308,7 +308,7 @@ %</gobble> %<style>\ProvidesPackage{adjmulticol} %<*style> -[2020/03/06 v1.2 Adjusted margins for multicolumn layout] +[2022/03/27 v1.3 Adjusted margins for multicolumn layout] % \end{macrocode} % % @@ -363,6 +363,7 @@ %\label{sec:start} % % \begin{macro}{\adjmulticols} +% \changes{v1.3}{2022/03/27}{Do not try to balance one-column version} % We have three mandatory arguments instead of one for |multicols|: % the number of columns, the left margin delta and the right margin % delta: @@ -390,6 +391,10 @@ \MessageBreak I therefore use 10 columns instead}% \col@number10 \fi + \ifnum\col@number=\@ne\relax + \let\balance@columns@out + \multi@column@out + \fi % \end{macrocode} % % @@ -466,6 +471,7 @@ % % \begin{macro}{\endadjmulticols} % \changes{v1.2}{2020/03/06}{Redefined macro} +% \changes{v1.3}{2022/03/27}{Added \cs{vfill} for one-column environment} % Here we use the standard environment end. Note that it uses % |\@checkend|, so we need to redefine it to fool the % check. We need to do it globally to work inside a box too. @@ -473,6 +479,7 @@ \def\endadjmulticols{% \global\let\@ADJMC@checkend\@checkend \gdef\@checkend##1{}% + \ifnum\col@number=\@ne\relax\vfill\fi \endmulticols \global\let\@checkend\@ADJMC@checkend} % \end{macrocode} diff --git a/macros/latex/contrib/adjmulticol/adjmulticol.pdf b/macros/latex/contrib/adjmulticol/adjmulticol.pdf Binary files differindex d2709950d5..05999ddfdc 100644 --- a/macros/latex/contrib/adjmulticol/adjmulticol.pdf +++ b/macros/latex/contrib/adjmulticol/adjmulticol.pdf diff --git a/macros/latex/contrib/adjmulticol/sample.pdf b/macros/latex/contrib/adjmulticol/sample.pdf Binary files differindex a55f9bf1c2..af96fd4aa2 100644 --- a/macros/latex/contrib/adjmulticol/sample.pdf +++ b/macros/latex/contrib/adjmulticol/sample.pdf diff --git a/macros/latex/contrib/colorist/colorart.cls b/macros/latex/contrib/colorist/colorart.cls index cbacee3853..fd6bc08f62 100644 --- a/macros/latex/contrib/colorist/colorart.cls +++ b/macros/latex/contrib/colorist/colorart.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {colorart} - {2022/03/19} {} + {2022/03/28} {} {A colorful article style} \tl_const:Nn \l__colorclass_base_class_tl { article } @@ -151,6 +151,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/colorist/colorbook.cls b/macros/latex/contrib/colorist/colorbook.cls index ce2d27ce8b..07389ebc5c 100644 --- a/macros/latex/contrib/colorist/colorbook.cls +++ b/macros/latex/contrib/colorist/colorbook.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {colorbook} - {2022/03/19} {} + {2022/03/28} {} {A colorful book style} \tl_const:Nn \l__colorclass_base_class_tl { book } @@ -151,6 +151,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/colorist/colorist-doc.pdf b/macros/latex/contrib/colorist/colorist-doc.pdf Binary files differindex 6320e9f13e..e187bcbc51 100644 --- a/macros/latex/contrib/colorist/colorist-doc.pdf +++ b/macros/latex/contrib/colorist/colorist-doc.pdf diff --git a/macros/latex/contrib/colorist/colorist-doc.tex b/macros/latex/contrib/colorist/colorist-doc.tex index 98804ad9b3..064648846c 100644 --- a/macros/latex/contrib/colorist/colorist-doc.tex +++ b/macros/latex/contrib/colorist/colorist-doc.tex @@ -1,13 +1,5 @@ \documentclass[English,Chinese,French,use boldface,simple name]{colorart} -\setsansfont{texgyreheros}[ - Scale=MatchUppercase, - UprightFont=*-regular, - BoldFont=*-bold, - ItalicFont=*-italic, - BoldItalicFont=*-bolditalic, -] - %%================================ %% Import toolkit %%================================ @@ -99,7 +91,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{{\normalfont\bfseries\color{main-text}\colorist{}}\\write your articles or books in a colorful way} \author{Jinwen XU} diff --git a/macros/latex/contrib/colorist/colorist-fancy.sty b/macros/latex/contrib/colorist/colorist-fancy.sty index 2161c7065d..cb625ce8ac 100644 --- a/macros/latex/contrib/colorist/colorist-fancy.sty +++ b/macros/latex/contrib/colorist/colorist-fancy.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {colorist-fancy} - {2022/03/19} {} + {2022/03/28} {} {The fancy style of colorist} \@ifpackageloaded { colorist } {} @@ -99,34 +99,82 @@ \fancypagestyle { fancy } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\sffamily\textcolor{main-text!30!paper}{ \small \l_colorist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\textbf{\thepage}}}} - \fancyfoot[LE]{\leavevmode\sffamily\llap{\textcolor{main-text!75!paper}{\textbf{\thepage}} - \nobreakspace\nobreakspace\nobreakspace\nobreakspace} - \textcolor{main-text!30!paper}{ \l_colorist_leftmark_tl }} + \fancyfoot[RO] + { + \sffamily + \textcolor { main-text!30!paper } { \small \l_colorist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \sffamily + \llap + { + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + \textcolor { main-text!30!paper } { \l_colorist_leftmark_tl } + } \else - \fancyfoot[R]{\textcolor{main-text!30!paper}{ \l_colorist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\textbf{\thepage}}}} + \fancyfoot[R] + { + \sffamily + \textcolor { main-text!30!paper } { \small \l_colorist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } -\pagestyle{fancy} +\pagestyle { fancy } \fancypagestyle { plain } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\sffamily - \nobreakspace\rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\textbf{\thepage}}}} - \fancyfoot[LE]{\leavevmode\sffamily\llap{\textcolor{main-text!75!paper}{\textbf{\thepage}} - \nobreakspace\nobreakspace}} + \fancyfoot[RO] + { + \sffamily + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \sffamily + \llap + { + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + } \else - \fancyfoot[R]{\sffamily - \nobreakspace\nobreakspace\nobreakspace\rlap{\textcolor{main-text!75!paper}{\textbf{\thepage}}}} + \fancyfoot[R] + { + \sffamily + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } \bool_if:NTF \l__colorist_is_book_bool @@ -220,8 +268,10 @@ } %% Chapter - % Numbered chapter title: \TheChapter{<number>}{<title>} - \newcommand{\TheChapter}[2] + % Numbered chapter title + \cs_new_protected:Nn \colorist_chapter_inner:nn + % #1 = number + % #2 = title { \tcbsidebyside[enhanced,sidebyside~adapt=right,sidebyside~align=bottom, colback=paper,frame~hidden, @@ -232,8 +282,9 @@ -- (segmentation.south);} ]{\filleft#2}{\normalfont\textcolor{maintheme}{\scalebox{4}{#1}}} } - % Numberless chapter title: \TheChapterSingle{<title>} - \newcommand{\TheChapterSingle}[1] + % Numberless chapter title + \cs_new_protected:Nn \colorist_chapter_inner:n + % #1 = title { \begin{tcolorbox}[ enhanced, @@ -254,7 +305,7 @@ { \g_colorist_title_font_chapter_tl \scshape\huge} % Format {} % Label {0mm} % Sep - {\TheChapter{\thechapter}{#1}} % Before-code + { \colorist_chapter_inner:nn { \thechapter } { #1 } } % Before-code \titlespacing*{name=\chapter} {0em}{*2}{0em} % {left}{before-sep}{after-sep} @@ -262,7 +313,7 @@ {\filcenter \g_colorist_title_font_chapter_tl \scshape\huge} {} {0mm} - {\TheChapterSingle{#1}} + { \colorist_chapter_inner:n { #1 } } \titlespacing*{name=\chapter, numberless} {0em}{*2}{0em} @@ -419,7 +470,20 @@ %%================================ %% Blank page %%================================ -\newcommand{\blinkpagetext}{This~page~is~intentionally~left~blank} +\projlib_langauge_define_multilingual_text:Nn \bl@nkpagetext + { + , EN = This~page~is~intentionally~left~blank + , FR = Cette~page~a~été~intentionellement~laissée~vide + , DE = Diese~Seite~wurde~absichtlich~leer~gelassen + , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente + , PT = Esta~página~foi~intencionalmente~deixada~em~branco + , BR = Esta~página~foi~intencionalmente~deixada~em~branco + , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , CN = 此页为有意留为空白 + , TC = 此頁為有意留為空白 + , JP = このページは意図的に空白にしてあります + , RU = Эта~страница~намеренно~оставлена~пустой + } \renewcommand{\cleardoublepage}{ \relax \clearpage @@ -428,7 +492,7 @@ \hook_gput_next_code:nn { shipout/background } { \put(0.5\paperwidth,-0.5\paperheight){ - \makebox[0pt]{\large\color{main-text!10!paper}\blinkpagetext}} + \makebox[0pt]{\large\color{main-text!10!paper}\bl@nkpagetext}} } \null\newpage\fi\fi } @@ -963,55 +1027,79 @@ \theoremstyle{simple} -\bool_if:NF \l__colorist_is_book_bool { - %%================================ %% Title block style %%================================ -\renewcommand{\@maketitle}{ -\begin{center} - \color{maintheme} - {\Large\sffamily\scshape \colorist_bfseries: \@title}\\\bigskip - \color{main-text!80!paper} - {\scshape\@author}\par\smallskip - {\@date} -\end{center} -\ifx\@date\@empty\bigskip\fi -\medskip -} +\bool_if:NTF \l__colorist_is_book_bool + { + \hook_gput_code:nnn { package/projlib-author/after } { colorist } + { + \tl_gset:Nn \g__projlib_author_font_author_tl { \normalfont \scshape } + \tl_gset:Nn \g__projlib_author_font_institute_tl { \large \normalfont } + \tl_gset:Nn \g__projlib_author_font_address_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_curraddr_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_email_tl { \large \normalfont \ttfamily } + } -\hook_gput_code:nnn { cmd/maketitle/after } { colorist } { \thispagestyle{fancy} } + \RequirePackage { projlib-titlepage } + \renewcommand{\maketitle}{ + \LocallyStopLineNumbers + \ProjLibTitlePage + { + , title = \@title + , author = \@author + , date = \@date + } + \ResumeLineNumbers + } + } + { + \renewcommand{\@maketitle} + { + \begin{center} + \color{maintheme} + {\Large\sffamily\scshape \colorist_bfseries: \@title}\\\bigskip + \color{main-text!80!paper} + {\scshape\@author}\par\smallskip + {\@date} + \end{center} + \ifx\@date\@empty\bigskip\fi + \medskip + } + + \hook_gput_code:nnn { cmd/maketitle/after } { colorist } { \thispagestyle{fancy} } %%================================ %% Abstract style %%================================ -\renewenvironment{abstract} -{\small{\centerline{\textsc{ \colorist_bfseries: \sffamily\abstractname}}\vspace{-0.3\baselineskip}} - \color{main-text!80!paper}\begin{quotation}} -{\end{quotation}\medskip} + \renewenvironment{abstract} + {\small{\centerline{\textsc{ \colorist_bfseries: \sffamily\abstractname}}\vspace{-0.3\baselineskip}} + \color{main-text!80!paper}\begin{quotation}} + {\end{quotation}\medskip} %%================================ %% Keyword environment %%================================ -\DefineMultilingualText { \keywordname } - { - EN = Keywords , - FR = Mots~clés , - DE = Schlüsselwörter , - IT = Parole~chiave , - PT = Palavras~chave , - BR = Palavras~chave , - ES = Palabras~clave , - CN = 关键词 , - TC = 關鍵詞 , - JP = キーワード , - RU = Ключевые~слова , - } + \DefineMultilingualText { \keywordname } + { + EN = Keywords , + FR = Mots~clés , + DE = Schlüsselwörter , + IT = Parole~chiave , + PT = Palavras~chave , + BR = Palavras~chave , + ES = Palabras~clave , + CN = 关键词 , + TC = 關鍵詞 , + JP = キーワード , + RU = Ключевые~слова , + } -\newenvironment{keyword} -{\small\centerline{{ \colorist_bfseries: \keywordname}}\vspace{-0.3\baselineskip} - \color{main-text!80!paper}\begin{center}} -{\end{center}\medskip} + \newenvironment{keyword} + {\small\centerline{{ \colorist_bfseries: \keywordname}}\vspace{-0.3\baselineskip} + \color{main-text!80!paper}\begin{center}} + {\end{center}\medskip} + } % end of \bool_if:NTF \l__colorist_is_book_bool %%================================ %% Simulate features of amsart @@ -1019,8 +1107,6 @@ \PassOptionsToPackage { amsfashion } { projlib-author } \RequirePackage { projlib-author } -} - \endinput %% %% End of file `colorist/colorist-fancy.sty'. diff --git a/macros/latex/contrib/colorist/colorist.sty b/macros/latex/contrib/colorist/colorist.sty index 6da2938455..ad936a1081 100644 --- a/macros/latex/contrib/colorist/colorist.sty +++ b/macros/latex/contrib/colorist/colorist.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {colorist} - {2022/03/19} {} + {2022/03/28} {} {A colorful style for articles and books} \keys_define:nn { colorist } diff --git a/macros/latex/contrib/minimalist/minimalist-classical.sty b/macros/latex/contrib/minimalist/minimalist-classical.sty index beef4ed857..11b9b94ad3 100644 --- a/macros/latex/contrib/minimalist/minimalist-classical.sty +++ b/macros/latex/contrib/minimalist/minimalist-classical.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {minimalist-classical} - {2022/03/19} {} + {2022/03/28} {} {The classical style of minimalist} \@ifpackageloaded { minimalist } {} @@ -113,34 +113,91 @@ \fancypagestyle { fancy } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\small\textcolor{main-text!30!paper}{ \l_minimalist_rightmark_tl } - \nobreakspace\nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} - \fancyfoot[LE]{\small\leavevmode\llap{\thepage - \nobreakspace\nobreakspace\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }} - \nobreakspace\nobreakspace\textcolor{main-text!30!paper}{ \l_minimalist_leftmark_tl }} + \fancyfoot[RO] + { + \small + \textcolor { main-text!30!paper } { \l_minimalist_rightmark_tl } + \nobreakspace \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } + \fancyfoot[LE] + { + \small + \leavevmode + \llap + { + \thepage + \nobreakspace \nobreakspace + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + } + \nobreakspace \nobreakspace + \textcolor { main-text!30!paper } { \l_minimalist_leftmark_tl } + } \else - \fancyfoot[R]{\small\textcolor{main-text!30!paper}{ \l_minimalist_rightmark_tl } - \nobreakspace\nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} + \fancyfoot[R] + { + \small + \textcolor { main-text!30!paper } { \l_minimalist_rightmark_tl } + \nobreakspace \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } -\pagestyle{fancy} +\pagestyle { fancy } \fancypagestyle { plain } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\small - \nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} - \fancyfoot[LE]{\small\leavevmode\llap{\thepage - \nobreakspace\nobreakspace\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }}} + \fancyfoot[RO] + { + \small + \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } + \fancyfoot[LE] + { + \small + \leavevmode + \llap + { + \thepage + \nobreakspace \nobreakspace + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + } + } \else - \fancyfoot[R]{\small - \nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} + \fancyfoot[R] + { + \small + \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } \bool_if:NTF \l__minimalist_is_book_bool @@ -150,35 +207,31 @@ \newcommand{ \minimalist_draw_help_line: }{} } { - \newcommand{ \minimalist_draw_help_line: }{ + \newcommand{ \minimalist_draw_help_line: } + { \begin{tikzpicture}[remember~picture,overlay] - \foreach\i in {0,1,...,5}{ - \fill[opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,2pt)$) - rectangle ($(current~page~text~area.north~east) - +(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); - \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] - ($(current~page~text~area.south~east) - +(-\i*0.5em-.025em,-2pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - } + \foreach\i in {0,1,...,5}{ + \fill[opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,2pt)$) + rectangle ($(current~page~text~area.north~east)+(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); + \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] + ($(current~page~text~area.south~east)+(-\i*0.5em-.025em,-2pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + } \end{tikzpicture} - } + } } - \fancypagestyle{part}{ - \fancyhf{} - \renewcommand{\headrulewidth}{0pt} - \fancyhead[C]{ \minimalist_draw_help_line: } - } - \addtolength{\headheight}{20pt} - \addtolength{\topmargin}{-20pt} + \fancypagestyle { part } + { + \fancyhf { } + \renewcommand { \headrulewidth } { 0pt } + \fancyhead[C] { \minimalist_draw_help_line: } + } + \addtolength { \headheight } { 20pt } + \addtolength { \topmargin } { -20pt } \if@twoside \renewcommand{\chaptermark}[1]{\markboth{\textsc{#1}}{}} \else @@ -234,11 +287,11 @@ } \AddLanguageSetting [ schinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ tchinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ japanese ] { @@ -406,7 +459,7 @@ \titlecontents{part} [0em] {\addvspace{1.5pc}\filcenter\normalfont} - {\thecontentslabel\nopagebreak\\\nopagebreak\uppercase} + { \minimalist_apply_title_numbering_style:N { \thecontentslabel } \nopagebreak\\\nopagebreak\uppercase} {} {} % without page number [\addvspace{.5pc}] @@ -487,7 +540,20 @@ %%================================ %% Blank page %%================================ -\newcommand{\blinkpagetext}{This~page~is~intentionally~left~blank} +\projlib_langauge_define_multilingual_text:Nn \bl@nkpagetext + { + , EN = This~page~is~intentionally~left~blank + , FR = Cette~page~a~été~intentionellement~laissée~vide + , DE = Diese~Seite~wurde~absichtlich~leer~gelassen + , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente + , PT = Esta~página~foi~intencionalmente~deixada~em~branco + , BR = Esta~página~foi~intencionalmente~deixada~em~branco + , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , CN = 此页为有意留为空白 + , TC = 此頁為有意留為空白 + , JP = このページは意図的に空白にしてあります + , RU = Эта~страница~намеренно~оставлена~пустой + } \renewcommand{\cleardoublepage}{ \relax \clearpage @@ -496,7 +562,7 @@ \hook_gput_next_code:nn { shipout/background } { \put(0.5\paperwidth,-0.5\paperheight){ - \makebox[0pt]{\large\color{main-text!10!paper}\blinkpagetext}} + \makebox[0pt]{\large\color{main-text!10!paper}\bl@nkpagetext}} } \null\newpage\fi\fi } @@ -741,104 +807,128 @@ %% Index %%================================ \hook_gput_code:nnn { begindocument/before } { minimalist } -{ - \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } - \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } -} - -\bool_if:NF \l__minimalist_is_book_bool { + { + \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } + \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } + } %%================================ %% Title block style %%================================ -\renewcommand{\@maketitle}{ - \LocallyStopLineNumbers - \noindent - {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}} - % \vspace{-\parskip} - \vspace{-.5\baselineskip} - \begin{flushright} - \let\footnote\thanks - {\minimalist_bfseries:\@title}\\\medskip - \color{main-text!80!paper} - {\small\scshape\@author} - \par\vspace{-\parskip}\vspace{2pt} - {\small\@date} - \end{flushright} - % \vspace{-\parskip} - \vspace{-.5\baselineskip} - \ifx\@date\@empty - \vspace{\baselineskip} - \vspace{1.2\parskip} - \else - \vspace{-.5\baselineskip} - \fi - {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}\par} - \ResumeLineNumbers -} +\bool_if:NTF \l__minimalist_is_book_bool + { + \hook_gput_code:nnn { package/projlib-author/after } { minimalist } + { + \tl_gset:Nn \g__projlib_author_font_author_tl { \normalfont \scshape } + \tl_gset:Nn \g__projlib_author_font_institute_tl { \large \normalfont } + \tl_gset:Nn \g__projlib_author_font_address_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_curraddr_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_email_tl { \large \normalfont \ttfamily } + } + + \RequirePackage { projlib-titlepage } + \renewcommand{\maketitle}{ + \LocallyStopLineNumbers + \ProjLibTitlePage [ style = simple ] + { + , title = \@title + , author = \@author + , date = \@date + } + \ResumeLineNumbers + } + } + { + \renewcommand{\@maketitle} + { + \LocallyStopLineNumbers + \noindent + {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}} + % \vspace{-\parskip} + \vspace{-.5\baselineskip} + \begin{flushright} + \let\footnote\thanks + {\minimalist_bfseries:\@title}\\\medskip + \color{main-text!80!paper} + {\small\scshape\@author} + \par\vspace{-\parskip}\vspace{2pt} + {\small\@date} + \end{flushright} + % \vspace{-\parskip} + \vspace{-.5\baselineskip} + \ifx\@date\@empty + \vspace{\baselineskip} + \vspace{1.2\parskip} + \else + \vspace{-.5\baselineskip} + \fi + {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}\par} + \ResumeLineNumbers + } -\hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } + \hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } %%================================ %% Abstract style %%================================ -\renewenvironment{abstract} - { - \LocallyStopLineNumbers - \begin{flushright} - { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\par - \vspace{-\parskip} - \vspace{-.25\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em - } - { - \end{minipage} - \end{flushright} - \bigskip - \ResumeLineNumbers - } + \renewenvironment{abstract} + { + \LocallyStopLineNumbers + \begin{flushright} + { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\par + \vspace{-\parskip} + \vspace{-.25\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + } + { + \end{minipage} + \end{flushright} + \bigskip + \ResumeLineNumbers + } %%================================ %% Keyword environment %%================================ -\DefineMultilingualText { \keywordname } - { - EN = Keywords , - FR = Mots~clés , - DE = Schlüsselwörter , - IT = Parole~chiave , - PT = Palavras~chave , - BR = Palavras~chave , - ES = Palabras~clave , - CN = 关键词 , - TC = 關鍵詞 , - JP = キーワード , - RU = Ключевые~слова , - } - -\newenvironment{keyword}{ - \LocallyStopLineNumbers - \vspace{-.5\baselineskip} - \begin{flushright} - {\minimalist_bfseries:\scshape\small\keywordname}\par - \vspace{-\parskip} - \vspace{-.30\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em - \raggedleft -}{ - \end{minipage} - \end{flushright} - \bigskip - \ResumeLineNumbers -} + \DefineMultilingualText { \keywordname } + { + EN = Keywords , + FR = Mots~clés , + DE = Schlüsselwörter , + IT = Parole~chiave , + PT = Palavras~chave , + BR = Palavras~chave , + ES = Palabras~clave , + CN = 关键词 , + TC = 關鍵詞 , + JP = キーワード , + RU = Ключевые~слова , + } + + \newenvironment{keyword}{ + \LocallyStopLineNumbers + \vspace{-.5\baselineskip} + \begin{flushright} + {\minimalist_bfseries:\scshape\small\keywordname}\par + \vspace{-\parskip} + \vspace{-.30\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + \raggedleft + }{ + \end{minipage} + \end{flushright} + \bigskip + \ResumeLineNumbers + } + } % end of \bool_if:NTF \l__minimalist_is_book_bool %%================================ %% Simulate features of amsart @@ -846,8 +936,6 @@ \PassOptionsToPackage { amsfashion } { projlib-author } \RequirePackage { projlib-author } -} - \endinput %% %% End of file `minimalist/minimalist-classical.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist-doc.pdf b/macros/latex/contrib/minimalist/minimalist-doc.pdf Binary files differindex d8557ff023..4a834618d8 100644 --- a/macros/latex/contrib/minimalist/minimalist-doc.pdf +++ b/macros/latex/contrib/minimalist/minimalist-doc.pdf diff --git a/macros/latex/contrib/minimalist/minimalist-doc.tex b/macros/latex/contrib/minimalist/minimalist-doc.tex index 925ce47eeb..5ff51c62cc 100644 --- a/macros/latex/contrib/minimalist/minimalist-doc.tex +++ b/macros/latex/contrib/minimalist/minimalist-doc.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,7 +95,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{\minimalist{}, write your articles or books in a simple and clear way} \author{Jinwen XU} @@ -512,7 +511,6 @@ You can use \lstinline|\dnf| to mark the unfinished part. For example: \item \lstinline|\dnf| or \lstinline|\dnf<...>|. The effect is: \dnf~ or \dnf<...>. \\The prompt text changes according to the current language. For example, it will be displayed as \UseOtherLanguage{French}{\dnf} in French mode. \end{itemize} -% \clearpage \LevelTwoTitle{Title, abstract and keywords} \minimart{} has both the features of standard classes and that of the \AmS{} classes. diff --git a/macros/latex/contrib/minimalist/minimalist-plain.sty b/macros/latex/contrib/minimalist/minimalist-plain.sty index 9c7cd650d2..3481c630dc 100644 --- a/macros/latex/contrib/minimalist/minimalist-plain.sty +++ b/macros/latex/contrib/minimalist/minimalist-plain.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {minimalist-plain} - {2022/03/19} {} + {2022/03/28} {} {The plain style of minimalist} \@ifpackageloaded { minimalist } {} @@ -54,7 +54,7 @@ \tl_new:N \g_minimalist_title_font_paragraph_tl \tl_gset:Nn \g_minimalist_title_font_part_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl } -\tl_gset:Nn \g_minimalist_title_font_chapter_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl } +\tl_gset:Nn \g_minimalist_title_font_chapter_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl \scshape } \tl_gset:Nn \g_minimalist_title_font_section_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl \scshape } \tl_gset:Nn \g_minimalist_title_font_subsection_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl \scshape } \tl_gset:Nn \g_minimalist_title_font_subsubsection_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl } @@ -113,34 +113,77 @@ \fancypagestyle { fancy } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\textcolor{main-text!30!paper}{ \small \l_minimalist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} - \fancyfoot[LE]{\leavevmode\llap{\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage} - \nobreakspace\nobreakspace\nobreakspace\nobreakspace} - \textcolor{main-text!30!paper}{ \l_minimalist_leftmark_tl }} + \fancyfoot[RO] + { + \textcolor { main-text!30!paper } { \small \l_minimalist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \llap + { + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + \textcolor { main-text!30!paper } { \small \l_minimalist_leftmark_tl } + } \else - \fancyfoot[R]{\textcolor{main-text!30!paper}{ \l_minimalist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} + \fancyfoot[R] + { + \textcolor { main-text!30!paper } { \small \l_minimalist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } -\pagestyle{fancy} +\pagestyle { fancy } \fancypagestyle { plain } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{ - \nobreakspace\rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} - \fancyfoot[LE]{\leavevmode\llap{\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage} - \nobreakspace\nobreakspace}} + \fancyfoot[RO] + { + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \llap + { + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + \nobreakspace + } \else - \fancyfoot[R]{ - \nobreakspace\nobreakspace\nobreakspace\rlap{\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} + \fancyfoot[R] + { + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } \bool_if:NTF \l__minimalist_is_book_bool @@ -150,35 +193,31 @@ \newcommand{ \minimalist_draw_help_line: }{} } { - \newcommand{ \minimalist_draw_help_line: }{ + \newcommand{ \minimalist_draw_help_line: } + { \begin{tikzpicture}[remember~picture,overlay] - \foreach\i in {0,1,...,5}{ - \fill[opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,2pt)$) - rectangle ($(current~page~text~area.north~east) - +(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); - \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] - ($(current~page~text~area.south~east) - +(-\i*0.5em-.025em,-2pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - } + \foreach\i in {0,1,...,5}{ + \fill[opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,2pt)$) + rectangle ($(current~page~text~area.north~east)+(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); + \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] + ($(current~page~text~area.south~east)+(-\i*0.5em-.025em,-2pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + } \end{tikzpicture} - } + } } - \fancypagestyle{part}{ - \fancyhf{} - \renewcommand{\headrulewidth}{0pt} - \fancyhead[C]{ \minimalist_draw_help_line: } - } - \addtolength{\headheight}{20pt} - \addtolength{\topmargin}{-20pt} + \fancypagestyle { part } + { + \fancyhf { } + \renewcommand { \headrulewidth } { 0pt } + \fancyhead[C] { \minimalist_draw_help_line: } + } + \addtolength { \headheight } { 20pt } + \addtolength { \topmargin } { -20pt } \if@twoside \renewcommand{\chaptermark}[1]{\markboth{\textsc{#1}}{}} \else @@ -236,11 +275,11 @@ } \AddLanguageSetting [ schinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ tchinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ japanese ] { @@ -290,16 +329,29 @@ {\thispagestyle{fancy} \LocallyStopLineNumbers \color{main-text!80!paper}\g_minimalist_title_font_chapter_tl\fontsize{16}{0}\selectfont}{}{0em} - {\rlap{\hspace*{-.5em}{\color{main-text!12!paper} - \fontsize{80}{0}\selectfont\raisebox{-7pt}{\thechapter}}}#1} + { + \rlap + { + \hspace*{-.5em} + \color{main-text!10!paper} + \fontsize{90}{0}\selectfont\raisebox{-10pt}{ \usefont{U}{zeur}{b}{n} \thechapter } + } + #1 + } [\ResumeLineNumbers] \titleformat{name=\chapter,numberless} {\thispagestyle{fancy} \LocallyStopLineNumbers % \phantomsection\addcontentsline{toc}{chapter}{#1} - \color{main-text!80!paper}\g_minimalist_title_font_chapter_tl\fontsize{16}{0}\selectfont}{}{0em} - {\rlap{\hspace*{-.5em}{\color{main-text!12!paper} - \fontsize{80}{0}\selectfont\normalfont\raisebox{-7pt}{\phantom{*}}}}#1} + \color{main-text!90!paper}\g_minimalist_title_font_chapter_tl\fontsize{16}{0}\selectfont}{}{0em} + { + \rlap + { + \hspace*{-.5em} + \fontsize{80}{0}\selectfont\raisebox{-10pt}{ \phantom{*} } + } + #1 + } [\ResumeLineNumbers] } { @@ -380,7 +432,7 @@ \titlecontents{part} [0em] {\addvspace{1.5pc}\filcenter\normalfont} - {\thecontentslabel\nopagebreak\\\nopagebreak\uppercase} + { \minimalist_apply_title_numbering_style:N { \thecontentslabel } \nopagebreak\\\nopagebreak\uppercase} {} {} % without page number [\addvspace{.5pc}] @@ -456,7 +508,20 @@ %%================================ %% Blank page %%================================ -\newcommand{\blinkpagetext}{This~page~is~intentionally~left~blank} +\projlib_langauge_define_multilingual_text:Nn \bl@nkpagetext + { + , EN = This~page~is~intentionally~left~blank + , FR = Cette~page~a~été~intentionellement~laissée~vide + , DE = Diese~Seite~wurde~absichtlich~leer~gelassen + , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente + , PT = Esta~página~foi~intencionalmente~deixada~em~branco + , BR = Esta~página~foi~intencionalmente~deixada~em~branco + , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , CN = 此页为有意留为空白 + , TC = 此頁為有意留為空白 + , JP = このページは意図的に空白にしてあります + , RU = Эта~страница~намеренно~оставлена~пустой + } \renewcommand{\cleardoublepage}{ \relax \clearpage @@ -465,7 +530,7 @@ \hook_gput_next_code:nn { shipout/background } { \put(0.5\paperwidth,-0.5\paperheight){ - \makebox[0pt]{\large\color{main-text!10!paper}\blinkpagetext}} + \makebox[0pt]{\large\color{main-text!10!paper}\bl@nkpagetext}} } \null\newpage\fi\fi } @@ -697,93 +762,117 @@ %% Index %%================================ \hook_gput_code:nnn { begindocument/before } { minimalist } -{ - \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } - \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } -} - -\bool_if:NF \l__minimalist_is_book_bool { + { + \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } + \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } + } %%================================ %% Title block style %%================================ -\renewcommand{\@maketitle}{ - \LocallyStopLineNumbers - \begin{center} - \let\footnote\thanks - {\minimalist_bfseries:\sffamily\scshape\Large\@title}\\\bigskip - \color{main-text!80!paper} - {\small\scshape\@author} - \par\smallskip\vspace{-\parskip} - {\small\@date} - \end{center} - \ifx\@date\@empty\medskip\fi - \medskip\par - \ResumeLineNumbers -} +\bool_if:NTF \l__minimalist_is_book_bool + { + \hook_gput_code:nnn { package/projlib-author/after } { minimalist } + { + \tl_gset:Nn \g__projlib_author_font_author_tl { \normalfont \scshape } + \tl_gset:Nn \g__projlib_author_font_institute_tl { \large \normalfont } + \tl_gset:Nn \g__projlib_author_font_address_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_curraddr_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_email_tl { \large \normalfont \ttfamily } + } -\hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } + \RequirePackage { projlib-titlepage } + \renewcommand{\maketitle}{ + \LocallyStopLineNumbers + \ProjLibTitlePage [ style = simple ] + { + , title = \@title + , author = \@author + , date = \@date + } + \ResumeLineNumbers + } + } + { + \renewcommand{\@maketitle} + { + \LocallyStopLineNumbers + \begin{center} + \let\footnote\thanks + {\minimalist_bfseries:\sffamily\scshape\Large\@title}\\\bigskip + \color{main-text!80!paper} + {\small\scshape\@author} + \par\smallskip\vspace{-\parskip} + {\small\@date} + \end{center} + \ifx\@date\@empty\medskip\fi + \medskip\par + \ResumeLineNumbers + } + + \hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } %%================================ %% Abstract style %%================================ -\renewenvironment{abstract} - { - \LocallyStopLineNumbers - \vspace{-.5\baselineskip} - \begin{center} - { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\\ - \vspace{-.3\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em - } - { - \end{minipage} - \end{center} - \medskip - \ResumeLineNumbers - } + \renewenvironment{abstract} + { + \LocallyStopLineNumbers + \vspace{-.5\baselineskip} + \begin{center} + { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\\ + \vspace{-.3\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + } + { + \end{minipage} + \end{center} + \medskip + \ResumeLineNumbers + } %%================================ %% Keyword environment %%================================ -\DefineMultilingualText { \keywordname } - { - EN = Keywords , - FR = Mots~clés , - DE = Schlüsselwörter , - IT = Parole~chiave , - PT = Palavras~chave , - BR = Palavras~chave , - ES = Palabras~clave , - CN = 关键词 , - TC = 關鍵詞 , - JP = キーワード , - RU = Ключевые~слова , - } - -\newenvironment{keyword}{ - \LocallyStopLineNumbers - \vspace{-.75\baselineskip} - \begin{center} - {\minimalist_bfseries:\scshape\small\keywordname}\\ - \vspace{-.3\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em + \DefineMultilingualText { \keywordname } + { + EN = Keywords , + FR = Mots~clés , + DE = Schlüsselwörter , + IT = Parole~chiave , + PT = Palavras~chave , + BR = Palavras~chave , + ES = Palabras~clave , + CN = 关键词 , + TC = 關鍵詞 , + JP = キーワード , + RU = Ключевые~слова , + } + + \newenvironment{keyword}{ + \LocallyStopLineNumbers + \vspace{-.75\baselineskip} \begin{center} -}{ + {\minimalist_bfseries:\scshape\small\keywordname}\\ + \vspace{-.3\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + \begin{center} + }{ + \end{center} + \end{minipage} \end{center} - \end{minipage} - \end{center} - \medskip - \ResumeLineNumbers -} + \medskip + \ResumeLineNumbers + } + } % end of \bool_if:NTF \l__minimalist_is_book_bool %%================================ %% Simulate features of amsart @@ -791,8 +880,6 @@ \PassOptionsToPackage { amsfashion } { projlib-author } \RequirePackage { projlib-author } -} - \endinput %% %% End of file `minimalist/minimalist-plain.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist.sty b/macros/latex/contrib/minimalist/minimalist.sty index 50148e29fd..9a7a7fbd06 100644 --- a/macros/latex/contrib/minimalist/minimalist.sty +++ b/macros/latex/contrib/minimalist/minimalist.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {minimalist} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear style for articles and books} \keys_define:nn { minimalist } diff --git a/macros/latex/contrib/minimalist/minimart.cls b/macros/latex/contrib/minimalist/minimart.cls index 1340e14853..b9b2a86689 100644 --- a/macros/latex/contrib/minimalist/minimart.cls +++ b/macros/latex/contrib/minimalist/minimart.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {minimart} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear article style} \tl_const:Nn \l__minimclass_base_class_tl { article } @@ -169,6 +169,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/minimalist/minimbook.cls b/macros/latex/contrib/minimalist/minimbook.cls index 995334db6c..65c08a2fdc 100644 --- a/macros/latex/contrib/minimalist/minimbook.cls +++ b/macros/latex/contrib/minimalist/minimbook.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {minimbook} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear book style} \tl_const:Nn \l__minimclass_base_class_tl { book } @@ -169,6 +169,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/projlib/ProjLib.dtx b/macros/latex/contrib/projlib/ProjLib.dtx index 32903be29b..dd0b2e393f 100644 --- a/macros/latex/contrib/projlib/ProjLib.dtx +++ b/macros/latex/contrib/projlib/ProjLib.dtx @@ -20,72 +20,79 @@ %<*ProjLib> \ProvidesExplPackage {ProjLib} - {2022/03/21} {} + {2022/03/28} {} {Collective interface of the ProjLib toolkit} %</ProjLib> % %<*projlib-author> \ProvidesExplPackage {projlib-author} - {2022/03/21} {} + {2022/03/28} {} {Enhanced author information block} %</projlib-author> % %<*projlib-datetime> \ProvidesExplPackage {projlib-datetime} - {2022/03/21} {} + {2022/03/28} {} {Convert numeric date-time string to natural language} %</projlib-datetime> % %<*projlib-draft> \ProvidesExplPackage {projlib-draft} - {2022/03/21} {} + {2022/03/28} {} {Useful commands during draft stage} %</projlib-draft> % %<*projlib-font> \ProvidesExplPackage {projlib-font} - {2022/03/21} {} + {2022/03/28} {} {Font selection and configuration} %</projlib-font> % %<*projlib-language> \ProvidesExplPackage {projlib-language} - {2022/03/21} {} + {2022/03/28} {} {Multi-language configuration} %</projlib-language> % %<*projlib-logo> \ProvidesExplPackage {projlib-logo} - {2022/03/21} {} + {2022/03/28} {} {The ProjLib logo} %</projlib-logo> % %<*projlib-math> \ProvidesExplPackage {projlib-math} - {2022/03/21} {} + {2022/03/28} {} {Efficient math setup} %</projlib-math> % %<*projlib-paper> \ProvidesExplPackage {projlib-paper} - {2022/03/21} {} + {2022/03/28} {} {Configuration of the paper style} %</projlib-paper> % %<*projlib-theorem> \ProvidesExplPackage {projlib-theorem} - {2022/03/21} {} + {2022/03/28} {} {Configuration of theorem-like environments} %</projlib-theorem> +% +%<*projlib-titlepage> +\ProvidesExplPackage + {projlib-titlepage} + {2022/03/28} {} + {Commands for rendering the title page} +%</projlib-titlepage> %<*ProjLib> \keys_define:nn { ProjLib } @@ -99,6 +106,10 @@ , ams-fashion .initial:n = { false } , ams~fashion .bool_set:N = \l__projlib_main_amsfashion_bool , ams fashion .bool_set:N = \l__projlib_main_amsfashion_bool + , title-page .bool_set:N = \l__projlib_main_titlepage_bool + , title-page .initial:n = { false } + , title~page .bool_set:N = \l__projlib_main_titlepage_bool + , title page .bool_set:N = \l__projlib_main_titlepage_bool , unknown .code:n = { \PassOptionsToPackage { \CurrentOption } { projlib-language } \PassOptionsToPackage { \CurrentOption } { projlib-author } @@ -132,6 +143,11 @@ \RequirePackage { projlib-math } \RequirePackage { projlib-paper } +\bool_if:NT \l__projlib_main_titlepage_bool + { + \RequirePackage { projlib-titlepage } + } + \RequirePackage { projlib-theorem } %</ProjLib> % @@ -2240,7 +2256,7 @@ $\rangle$ \nobreakspace \IfNoValueF { #1 } { : ~ } - #1 \\ + #1 \newline } } @@ -4750,5 +4766,96 @@ } } %</projlib-theorem> +% +%<*projlib-titlepage> +\keys_define:nn { projlib-titlepage } + { + , unknown .code:n = {} + } +\ProcessKeysOptions { projlib-titlepage } + +\RequirePackage { projlib-paper } + +\RequirePackage { tikz } +\ExplSyntaxOff +\usetikzlibrary { calc } +\ExplSyntaxOn + +\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_date_tl +\tl_new:N \l_projlib_titlepage_style_tl + +\NewDocumentCommand \ProjLibTitlePage { O{} m } + { + \keys_set:nn { projlib-titlepage-config } { #1 } + \projlib_titlepage_render:n { #2 } + } +\ProvideDocumentCommand \TitlePage { O{} m } + { + \ProjLibTitlePage [ #1 ] { #2 } + } + +\cs_new_protected:Nn \projlib_titlepage_set_color:nn + { + \colorlet { titlepage- #1 } { #2 } + } + +\keys_define:nn { projlib-titlepage-config } + { + , logo .tl_set:N = \l_projlib_titlepage_logo_tl + , logo .initial:n = { \scalebox { 2 } { \ProjLib } } + , title .tl_set:N = \l_projlib_titlepage_title_tl + , subtitle .tl_set:N = \l_projlib_titlepage_subtitle_tl + , author .tl_set:N = \l_projlib_titlepage_author_tl + , date .tl_set:N = \l_projlib_titlepage_date_tl + , style .tl_set:N = \l_projlib_titlepage_style_tl + , style .initial:n = { default } + , color .code:n = { + \keyval_parse:nnn + { \use_none:n } + { \projlib_titlepage_set_color:nn } + { #1 } + } + , unknown .code:n = {} + } + +\colorlet { titlepage-main } { blue!50!cyan!50!black } +\colorlet { titlepage-back } { blue!50!cyan!10!yellow!30 } + +\cs_new_protected:Nn \projlib_titlepage_render:n + { + \keys_set:nn { projlib-titlepage-config } { #1 } + \begin { titlepage } + \cs_if_exist_use:c { projlib_titlepage_render_with_style_ \l_projlib_titlepage_style_tl : } + \end { titlepage } + \setcounter { page } { 0 } + } + +\cs_new_protected:Nn \projlib_titlepage_render_with_style_default: + { + \begin{tikzpicture}[overlay,remember~picture] + \fill [color=titlepage-main] ($(current~page.south~west)$) rectangle ($(current~page.north~east)+(0,-.3\paperheight)$); + \fill [color=titlepage-back] ($(current~page.south~west)$) rectangle ($(current~page.north~west)+(.125\paperwidth,-.3\paperheight)$); + \fill [color=titlepage-main] ($(current~page.north~west)$) rectangle ($(current~page.north~west)+(.125\paperwidth,-.3\paperheight)$); + \fill [color=titlepage-back] ($(current~page.north~east)$) rectangle ($(current~page.north~west)+(.125\paperwidth,-.3\paperheight)$); + \node[text~width=.3\paperwidth,text~height=.2\paperheight] at ($(current~page.north~west)+(.32\paperwidth,-.17\paperheight)$) { \l_projlib_titlepage_logo_tl }; + \node[text~width=.4\paperwidth,text~height=.3\paperheight,scale=2.5] at ($(current~page.north~west)+(.67\paperwidth,-.15\paperheight)$) {\textcolor{titlepage-back}{\sffamily\textsc{ \l_projlib_titlepage_title_tl }\\[.5em]\footnotesize{ \l_projlib_titlepage_subtitle_tl }}}; + \node[text~width=.3\paperwidth,text~height=.3\paperheight] at ($(current~page.south)+(.2\paperwidth,.3\paperheight)$) {\color{titlepage-back}\begin{flushright}\fontsize{16pt}{0pt}\selectfont\textsc{ \l_projlib_titlepage_author_tl }\\[1em]\fontsize{12pt}{0pt}\selectfont \l_projlib_titlepage_date_tl \end{flushright} }; + \end{tikzpicture} + } + +\cs_new_protected:Nn \projlib_titlepage_render_with_style_simple: + { + \begin{tikzpicture}[overlay,remember~picture] + \fill[color=titlepage-main] ($(current~page.south~west)$) rectangle ($(current~page.north~east)+(0,-.3\paperheight)$); + \node[text~width=.3\paperwidth,text~height=.2\paperheight] at ($(current~page.north~west)+(.28\paperwidth,-.15\paperheight)$) { \l_projlib_titlepage_logo_tl }; + \node[text~width=.4\paperwidth,text~height=.3\paperheight,scale=2.5] at ($(current~page.north~west)+(.63\paperwidth,-.15\paperheight)$) {\textcolor{paper}{\sffamily\textsc{ \l_projlib_titlepage_title_tl }\\[.5em]\footnotesize{ \l_projlib_titlepage_subtitle_tl }}}; + \node[text~width=.3\paperwidth,text~height=.3\paperheight] at ($(current~page.south)+(.2\paperwidth,.3\paperheight)$) {\color{paper}\begin{flushright}\fontsize{16pt}{0pt}\selectfont\textsc{ \l_projlib_titlepage_author_tl }\\[1em]\fontsize{12pt}{0pt}\selectfont \l_projlib_titlepage_date_tl \end{flushright} }; + \end{tikzpicture} + } +%</projlib-titlepage> \endinput
\ No newline at end of file diff --git a/macros/latex/contrib/projlib/ProjLib.ins b/macros/latex/contrib/projlib/ProjLib.ins index ca73cff446..6aac97bf77 100644 --- a/macros/latex/contrib/projlib/ProjLib.ins +++ b/macros/latex/contrib/projlib/ProjLib.ins @@ -49,6 +49,7 @@ and version 1.3c or later is part of all distributions of LaTeX version \generate{\file{projlib-math.sty}{\from{ProjLib.dtx}{projlib-math}}} \generate{\file{projlib-paper.sty}{\from{ProjLib.dtx}{projlib-paper}}} \generate{\file{projlib-theorem.sty}{\from{ProjLib.dtx}{projlib-theorem}}} +\generate{\file{projlib-titlepage.sty}{\from{ProjLib.dtx}{projlib-titlepage}}} \obeyspaces \Msg{*************************************************************} @@ -66,6 +67,7 @@ and version 1.3c or later is part of all distributions of LaTeX version \Msg{* projlib-math.sty *} \Msg{* projlib-paper.sty *} \Msg{* projlib-theorem.sty *} +\Msg{* projlib-titlepage.sty *} \Msg{* *} \Msg{* Happy TeXing! *} \Msg{* *} diff --git a/macros/latex/contrib/projlib/README.md b/macros/latex/contrib/projlib/README.md index cfac379f40..3e927c0fb5 100644 --- a/macros/latex/contrib/projlib/README.md +++ b/macros/latex/contrib/projlib/README.md @@ -4,32 +4,13 @@ # The `ProjLib` Toolkit -The bundle is dated 2022/03/21 +This bundle is dated 2022/03/28. Please note that the documentations are not yet up-to-date. -## **Important note** - -The whole project is being rewritten with `expl3`. The new modules are basically finished but are **not yet documented**. They have filenames with the prefix `projlib-`, and they are in many ways better and more powerful than their predecessors. - -The new modules are: -- projlib-author -- projlib-datetime -- projlib-draft -- projlib-font -- projlib-language -- projlib-logo -- projlib-math -- projlib-paper -- projlib-theorem - -Below is the old README. - ---- - -> **ProjLib** can be interpreted as "***Proj**ect **Lib**rary*" (in English), or as "***Proj**et **Lib**re*" (in French). +> **ProjLib** can be interpreted as "***Proj**ect **Lib**rary*" (in English), or as "***Proj**et **Lib**re*" (in French, meaning "*Free Project*"). ## Introduction -`ProjLib` is a collection of tools that help you write LaTeX document. With the package `ProjLib` loaded (note that it is case-sensitive), you no longer need to set up the theorem-like environments nor to manually configure the appropriate multilingual settings. In addition, a series of auxiliary functionalities are introduced. +`ProjLib` is a collection of tools that help you write LaTeX document. With the main package `ProjLib` loaded (note that it is *case-sensitive*), you no longer need to manually configure the appropriate multilingual settings nor to set up the theorem-like environments. In addition, a series of auxiliary functionalities are introduced. To get started, simply put this line in your preamble: ```latex @@ -37,38 +18,44 @@ To get started, simply put this line in your preamble: ``` > For the options and detailed usage, please refer to the documentation. -## The components -The components include: -1. `PJLauthor.sty` - - Enhanced author information block - - Offers `\address`, `\curraddr` and `\email` - - Write in the AMS fashion (with option `amsfashion`): + +## The modules + +> Each module correspond to a separate package, for example, the module `theorem` is `projlib-theorem.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` - `\thanks` can be written outside `\author`; - The `abstract` environment can be placed before `\maketitle`. -1. `PJLdate.sty` - - Offers a macro `\PLdate` (or `\PJLdate`) to convert `yyyy-mm-dd` to normal datetime format, with multi-language support -1. `PJLdraft.sty` - - Useful macros during the draft stage: `\dnf` and `\needgraph`, with multi-language support -1. `PJLlang.sty` - - Multi-language configuration based on `babel` or `polyglossia` - - Offers `\UseLanguage`, `\UseOtherLanguage` and `\AddLanguageSetting` - - Currently support Chinese (simplified and traditional), English, French, German, Italien, Japanese, Portuguese (European and Brazilian), Russian and Spanish -1. `PJLlogo.sty` - - Draw the ProjLib logo -1. `PJLmath.sty` - - Useful math macros and shortcuts -1. `PJLpaper.sty` - - Paper style configuration: yellow theme, dark theme and nord theme -1. `PJLthm.sty` - - Theorem setup and configuration - - Offers a macro `\CreateTheorem` for creating theorem-like environments with multi-language support - - Preset environments include: `assumption`, `axiom`, `conjecture`, `convention`, `corollary`, `definition`, `definition-proposition`, `definition-theorem`, `example`, `exercise`, `fact`, `hypothesis`, `lemma`, `notation`, `observation`, `problem`, `property`, `proposition`, `question`, `remark`, `theorem`, and the corresponding unnumbered version with an asterisk `*` in the name. -1. `PJLtoolkit.sty` (this is the internal name of the `ProjLib` package) - - A collective interface of ProjLib Toolkit, loading all the packages above - - Provide some pre-defined font configuration - -> Since `PJLthm.sty` (and thus `ProjLib.sty`) uses `cleveref`, it should be loaded after `varioref` and `hyperref`. +1. module `datetime` - *Convert numeric date-time string to natural language* + - Offering `\TheDate` and `\Thedate` to convert numeric date-time string to normal datetime format, with multi-language support (if the command names `\TheDate` or `\Thedate` are occupied, then one can switch to the longer version `\ProjLibDate` and `\ProjLibdate`). + - Offering `\ProjLibToday` and `\ProjLibToday` (with the module `language` enabled, `\today` is redefined into `\ProjLibToday`, and thus supports the arguments like `only-year-month`). + - Multiple input and output format available. +1. module `draft` - *Useful commands during draft stage* + - Offering `\dnf` for marking unfinished part. In addition, a report of all unfinished places shall be printed at the last of your document. +1. module `font` - *Font selection and configuration* + - Supporting Palatino, Times, Garamond, Biolinum, Noto, etc. +1. module `language` - *Multi-language configuration* + - Offering `\UseLanguage`, `\UseOtherLanguage` for selecting languages, and `\AddLanguageSetting` for adding language-specific settings. + - Define multilingual text string with `\DefineMultilingualText`. + - Currently support Chinese (simplified and traditional), English, French, German, Italien, Japanese, Portuguese (European and Brazilian), Russian and Spanish. +1. module `logo` - *The ProjLib logo* + - Draw the `ProjLib` logo in colorful or colorless fashion. +1. module `math` - *Efficient math setup* + - Offering `\DefineOperator` and `\DefineShortcut` for setting up math macros efficiently +1. module `paper` - *Configuration of the paper style* + - Paper style configuration, with the themes `yellow`, `green`, `light gray`, `gray`, `dark`, etc. +1. module `theorem` - *Configuration of theorem-like environments* + - Set up theorem-like environments based on the package `create-theorem`, and in particular, support options `name as is` and `name as context` for referencing names + - Support options `simple name` and `complex name` for referencing names + - Preset environments include: `assertion`, `assumption`, `axiom`, `conclusion`, `conjecture`, `convention`, `corollary`, `definition`, `definition-proposition`, `definition-theorem`, `example`, `exercise`, `fact`, `hypothesis`, `lemma`, `notation`, `observation`, `postulate`, `problem`, `property`, `proposition`, `question`, `remark`, `theorem`, and the corresponding unnumbered version with an asterisk `*` in the name. +1. module `titlepage` - *Commands for rendering the title page* + - Currently support two title page styles: `default` and `simple`. + +> Since module `theorem.sty` (and thus `ProjLib`) uses `cleveref`, it should be loaded after `varioref` and `hyperref`. ## How to get these files You can get the `.sty` files mentioned above simply by compiling `ProjLib.ins`: @@ -88,51 +75,6 @@ It is recommended to use `latexmk` with option `-xelatex`: latexmk -xelatex ProjLib-doc-**.tex ``` -## An example -```latex -\documentclass{amsart} -\usepackage[a4paper,margin=.75in]{geometry} -\usepackage[hidelinks]{hyperref} -\usepackage[palatino]{ProjLib} - -%% You can also comment the above lines and try the following (require xelatex or lualatex): -% \documentclass[a4paper,allowbf]{lebhart} -% \usepackage[amsfashion]{ProjLib} - -%% Using \UseLanguage to select language, by default "English" is selected -\UseLanguage{French} % Use French from here - -\begin{document} - -\title{Le Titre} -\author{Auteur 1} -\address{Adresse 1} -\email{\href{Courriel 1}{Courriel 1}} -\author{Auteur 1} -\address{Adresse 1} -\email{\href{Courriel 2}{Courriel 2}} -\date{\PLdate{2022-04-01}} -\subjclass{*****} -\keywords{...} - -\begin{abstract} - Ceci est un résumé. \dnf<Some hint> -\end{abstract} - -\maketitle - -\section{Un théorème} - -%% Theorem-like environments can be used directly -\begin{theorem}\label{thm:abc} - Ceci est un théorème. -\end{theorem} - -Référence du théorème: \cref{thm:abc} % It is recommended to use clever reference - -\end{document} -``` - # License This work is released under the LaTeX Project Public License, v1.3c or later. diff --git a/macros/latex/contrib/projlib/old-modules/PJLauthor.sty b/macros/latex/contrib/projlib/old-modules/PJLauthor.sty deleted file mode 100644 index 67e1dbd76b..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLauthor.sty +++ /dev/null @@ -1,245 +0,0 @@ -%% -%% This is file `PJLauthor.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLauthor} - [2021/12/16 Enhanced author information block] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLauthor, - prefix = @PJLauthor@, -} -\DeclareBoolOption[false]{amsfashion} -\ProcessKeyvalOptions*\relax - -\ifdefined\subjclass\endinput\fi - -%%================================ -%% Font and style -%%================================ -\def\PJLauthor@font@author{\normalsize\normalfont\scshape} -\def\PJLauthor@font@address{\small\normalfont\itshape} -\def\PJLauthor@font@curraddr{\small\normalfont\itshape} -\def\PJLauthor@font@email{\small\normalfont\ttfamily} - -%%================================ -%% Lengths -%%================================ -\newlength{\PJLauthor@length@innersep} -\setlength{\PJLauthor@length@innersep}{.3\baselineskip} -\newlength{\PJLauthor@length@sep} -\setlength{\PJLauthor@length@sep}{.5\baselineskip} -\newlength{\PJLauthor@length@aftersep} -\setlength{\PJLauthor@length@aftersep}{.3\baselineskip} - -%%================================ -%% The macros -%%================================ -\newif\if@PJLauthor@affilon -\renewcommand*{\author}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \vspace{\PJLauthor@length@sep}% - \PJLauthor@font@author{#1}\\\phantom{} - \@PJLauthor@affilonfalse}} -\providecommand*{\address}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \if@PJLauthor@affilon\else% - \vspace{\PJLauthor@length@innersep}% - \fi% - \@PJLauthor@affilontrue% - \PJLauthor@font@address{#1}\\\phantom{}}% -} -\providecommand*{\curraddr}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \if@PJLauthor@affilon\else% - \vspace{\PJLauthor@length@innersep}% - \fi% - \@PJLauthor@affilontrue% - \PJLauthor@font@curraddr{#1}\\\phantom{}}% -} -\providecommand*{\email}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \if@PJLauthor@affilon\else% - \vspace{\PJLauthor@length@innersep}% - \fi% - \@PJLauthor@affilontrue% - \PJLauthor@font@email{#1}\\\phantom{}}% -} - -%%================================ -%% Adjustment -%%================================ -\patchcmd{\@maketitle}{\begin{tabular}[t]{c}}{}{}{} -\patchcmd{\@maketitle}{\end{tabular}}{}{}{} -\def\@author{} -\pretocmd{\@maketitle}{% - \pretocmd{\@author}{\vspace{-\PJLauthor@length@sep}}{}{\FAIL}% - \apptocmd{\@author}{% - \vspace{-\baselineskip}% - \if@PJLauthor@affilon% - \vspace{\PJLauthor@length@aftersep}% - \fi% - }{}{\FAIL}% -}{}{\FAIL} - -\ifbool{@PJLauthor@amsfashion}{ - -\RequirePackage{PJLlang} -\RequirePackage{calc} - -\providecommand{\conditionalbfseries}{\bfseries} - -\def\keywordsnameEN{\textsc{Key words and phrases}} -\def\keywordsnameFR{\textsc{Mots et phrases clés}} -\def\keywordsnameDE{\textsc{Schlüsselwörter und Phrasen}} -\def\keywordsnameIT{\textsc{Parole e frasi chiave}} -\def\keywordsnamePT{\textsc{Palavras e frases chave}} -\def\keywordsnameBR{\textsc{Palavras e frases chave}} -\def\keywordsnameES{\textsc{Palabras y frases clave}} -\def\keywordsnameCN{关键词} -\def\keywordsnameTC{關鍵詞} -\def\keywordsnameJP{キーワード} -\def\keywordsnameRU{Ключевые слова и фразы} - -\def\PJL@keywords{} -\providecommand*{\keywords}[1]{\def\PJL@keywords{#1}} - -\def\PJL@dedicatory{} -\providecommand*{\dedicatory}[1]{\def\PJL@dedicatory{#1}} - -\AtEndPreamble{ -\let\footnotemark@PJLoriginal\footnotemark% -\let\footnotemark\relax% -\let\thanks@PJLoriginal\thanks% -\newlength\PJL@starlength -\setlength{\PJL@starlength}{\widthof{*}} -\newcommand*{\PJL@prethanks}[1]{\thanks@PJLoriginal{\hspace*{-\PJL@starlength}#1}} -\renewcommand*{\thanks}[1]{% - \ifx#1\@empty\else% - \apptocmd{\@title}{% - \thanks@PJLoriginal{\hspace*{-\PJL@starlength}#1}% - }{}{\FAIL}% - \fi} -\let\author@PJLoriginal\author -\renewcommand{\author}[1]{% - \author@PJLoriginal{% - \let\footnotemark\footnotemark@PJLoriginal% - \let\thanks\thanks@PJLoriginal% - #1% - \let\footnotemark\relax% - }% -} -} - -\let\abstract@PJLoriginal\abstract% -\let\endabstract@PJLoriginal\endabstract% -\newif\if@PJLauthor@maketitle\@PJLauthor@maketitlefalse -\newif\if@PJLauthor@absbefore\@PJLauthor@absbeforefalse -\RequirePackage{fancyvrb} -\providecommand*\protected@iwrite[3]{% - \begingroup - \let\thepage\relax - #2% - \let\protect\@unexpandable@protect - \edef\reserved@a{\immediate\write#1{#3}}\reserved@a - \endgroup - \if@nobreak\ifvmode\nobreak\fi\fi -} -\patchcmd{\FVB@VerbatimOut} - {\immediate\write\FV@OutFile} - {\protected@iwrite\FV@OutFile{}} - {}{} -\renewenvironment{abstract}{% - \VerbatimOut{\jobname.pjlabs}% -}{ - \endVerbatimOut% - \if@PJLauthor@maketitle% - \begin{abstract@PJLoriginal}% - \input{\jobname.pjlabs}% - \end{abstract@PJLoriginal}% - % \ifx\PJL@keywords\@empty\else% - % \par\smallskip\noindent{\conditionalbfseries\csname keywordsname\csname\languagename ABBR\endcsname\endcsname.}~\PJL@keywords% - % \fi% - \else% - \global\@PJLauthor@absbeforetrue% - \fi% -} - -\AtEndPreamble{% -\patchcmd{\@maketitle}{\@date}{% - \ifx\@date\@empty\vspace{-2\baselineskip}% - \else\@date\fi% - \ifx\PJL@dedicatory\@empty\else% - \ifx\@date\@empty\vspace{2\baselineskip}\fi% - \par\vspace{-\parskip}\bigskip% - {\itshape\PJL@dedicatory}% - \ifx\@date\@empty% - \vspace{-1.7\baselineskip}% - \vspace{-\parskip}% - \fi% - \fi% -}{}{\FAIL} -\pretocmd{\maketitle}{% - \ifx\PJL@keywords\@empty\else% - \PJL@prethanks{{\protect\conditionalbfseries% - \csname keywordsname\csname\languagename ABBR\endcsname\endcsname.}% - ~\PJL@keywords}% - \fi}{}{\FAIL} -\apptocmd{\maketitle}{% - \if@PJLauthor@absbefore% - \begin{abstract@PJLoriginal}% - \input{\jobname.pjlabs}% - % \ifx\PJL@keywords\@empty\else% - % \par\smallskip\noindent{\conditionalbfseries\csname keywordsname\csname\languagename ABBR\endcsname\endcsname.}~\PJL@keywords% - % \fi% - \end{abstract@PJLoriginal}% - \fi% - \global\let\address\relax - \global\let\curraddr\relax - \global\let\email\relax - \global\let\dedicatory\relax - \global\let\keywords\relax - \global\@PJLauthor@maketitletrue -}{}{\FAIL} -} - -\newcommand*\subjclass[2][2020]{% - \def\@subjclass{#2}% - \@ifundefined{subjclassname@#1}{% - \ClassWarning{\@currname}{Unknown edition (#1) of Mathematics - Subject Classification; using '2020'}% - \expandafter\let\expandafter\subjclassname\csname subjclassname@2020\endcsname - }{% - \expandafter\let\expandafter\subjclassname\csname subjclassname@#1\endcsname - }% - \PJL@prethanks{{\itshape\subjclassname.}\enspace\@subjclass{}.} -} -\@namedef{subjclassname@1991}{% - \textup{1991} Mathematics Subject Classification} -\@namedef{subjclassname@2000}{% - \textup{2000} Mathematics Subject Classification} -\@namedef{subjclassname@2010}{% - \textup{2010} Mathematics Subject Classification} -\@namedef{subjclassname@2020}{% - \textup{2020} Mathematics Subject Classification} - -} - -\endinput -%% -%% End of file `PJLauthor.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLdate.sty b/macros/latex/contrib/projlib/old-modules/PJLdate.sty deleted file mode 100644 index 783f164e7a..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLdate.sty +++ /dev/null @@ -1,74 +0,0 @@ -%% -%% This is file `PJLdate.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLdate} - [2021/12/16 Convert yyyy-mm-dd to normal datetime format] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLdate, - prefix = @PJLdate@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\ProcessKeyvalOptions*\relax -\if@PJLdate@draft - \@PJLdate@fasttrue -\fi -\DeclareDocumentCommand{\TheDate}{}{\PJLdate} -\DeclareDocumentCommand{\PLdate}{}{\PJLdate} -\if@PJLdate@fast\let\PJLdate\relax\endinput\fi - -\RequirePackage{PJLlang} - -\robustify\@latex@warning@no@line - -\RequirePackage{silence} -\WarningFilter*{datetime2}{Date-Time Language Module} -\PassOptionsToPackage{fr-FR,en-US}{datetime2} -\RequirePackage{datetime2} -\RequirePackage{zhnumber} - -\let\@DTMdate@PJLoriginal\@DTMdate -\gappto{\PJLlang@langconfig@common}{% - \let\@DTMdate\@DTMdate@PJLoriginal% -} -\gappto{\PJLlang@langconfig@CN}{% - \renewcommand*{\@DTMdate}[1]{% - \expandafter\@dtm@parsedate#1\@dtm@endparsedate% - \zhdate{\@dtm@year/\@dtm@month/\@dtm@day}% - }% -} -\gappto{\PJLlang@langconfig@TC}{% - \renewcommand*{\@DTMdate}[1]{% - \expandafter\@dtm@parsedate#1\@dtm@endparsedate% - \zhdate{\@dtm@year/\@dtm@month/\@dtm@day}% - }% -} -\gappto{\PJLlang@langconfig@JP}{% - \renewcommand*{\@DTMdate}[1]{% - \expandafter\@dtm@parsedate#1\@dtm@endparsedate% - \zhdate{\@dtm@year/\@dtm@month/\@dtm@day}% - }% -} - -\providecommand*{\PJLdate}[1]{\DTMdate{#1}} - -\endinput -%% -%% End of file `PJLdate.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLdraft.sty b/macros/latex/contrib/projlib/old-modules/PJLdraft.sty deleted file mode 100644 index 8657326842..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLdraft.sty +++ /dev/null @@ -1,104 +0,0 @@ -%% -%% This is file `PJLdraft.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLdraft} - [2021/12/16 Some useful macros for the draft stage] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLdraft, - prefix = @PJLdraft@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\ProcessKeyvalOptions*\relax -\if@PJLdraft@draft - \@PJLdraft@fasttrue -\fi - -\RequirePackage{PJLlang} -\RequirePackage{xcolor} - -\def\dnfFont{\ttfamily} -\def\needgraphFont{\ttfamily} - -\def\dnfTextEN{To be finished} -\def\needgraphTextEN{A graph is needed here} -\def\dnfTextFR{Pas encore fini} -\def\needgraphTextFR{Il manque une image ici} -\def\dnfTextDE{Nicht beendet} -\def\needgraphTextDE{Benötigen Sie ein Bild} -\def\dnfTextIT{Per essere finito} -\def\needgraphTextIT{Manca un'immagine qui} -\def\dnfTextPT{Não terminou} -\def\needgraphTextPT{Precisa de uma foto aqui} -\def\dnfTextBR{Não terminou} -\def\needgraphTextBR{Precisa de uma foto aqui} -\def\dnfTextES{Estar terminado} -\def\needgraphTextES{Falta una imagen aquí} -\def\dnfTextCN{这里尚未完成} -\def\needgraphTextCN{这里需要一张图片} -\def\dnfTextTC{這裡尚未完成} -\def\needgraphTextTC{這裡需要一張圖片} -\def\dnfTextJP{終わってない} -\def\needgraphTextJP{まだ画像が必要です} -\def\dnfTextRU{Не закончен} -\def\needgraphTextRU{Еще нужна картинка} - -\definecolor{dnfColor}{RGB}{21,122,20} -\definecolor{needgraphColor}{RGB}{70,130,180} - -\if@PJLdraft@fast - \newcommand{\plainBox}[2][-paper]{\textcolor{#1}{% - \setlength{\fboxsep}{1.5pt}% - \setlength{\fboxrule}{1.2pt}% - \fbox{#2}}} -\else - \PassOptionsToPackage{many}{tcolorbox} - \RequirePackage{tcolorbox} - \newtcbox{\plainBox}[1][-paper]{enhanced jigsaw,% - on line, arc = 1.2pt, outer arc = 1pt,breakable,% - colframe = #1,colupper=#1,opacityback=0,% - boxsep = 1pt,boxrule = 1.2pt,% - left = 1pt, right = 1pt, top = 0pt, bottom = 0pt,% - } -\fi - -\newcounter{dnfcnt} -\newcounter{needgraphcnt} - -\NewDocumentCommand{\dnf}{d<>}{% - \noindent\plainBox[dnfColor]% - {\normalfont\dnfFont\bfseries\small% - \csname dnfText\csname\languagename ABBR\endcsname\endcsname% - \stepcounter{dnfcnt}~\#\thednfcnt% - \IfNoValueF{#1}{\,: #1}}% -} -\NewDocumentCommand{\needgraph}{d<>}{% - \begin{center}% - \plainBox[needgraphColor]% - {\normalfont\needgraphFont\bfseries\small% - \csname needgraphText\csname\languagename ABBR\endcsname\endcsname% - \stepcounter{needgraphcnt}~\#\theneedgraphcnt% - \IfNoValueF{#1}{\,: #1}}% - \end{center}% -} - -\endinput -%% -%% End of file `PJLdraft.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLlang.sty b/macros/latex/contrib/projlib/old-modules/PJLlang.sty deleted file mode 100644 index 9470226adb..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLlang.sty +++ /dev/null @@ -1,358 +0,0 @@ -%% -%% This is file `PJLlang.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLlang} - [2021/12/16 Multi-language configuration] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{% - family = @PJLlang, - prefix = @PJLlang@ -} -\DeclareBoolOption[false]{polyglossia} - -\newif\if@PJLlang@enable@all\@PJLlang@enable@alltrue -\newif\if@PJLlang@enable@EN\@PJLlang@enable@ENfalse -\newif\if@PJLlang@enable@FR\@PJLlang@enable@FRfalse -\newif\if@PJLlang@enable@DE\@PJLlang@enable@DEfalse -\newif\if@PJLlang@enable@IT\@PJLlang@enable@ITfalse -\newif\if@PJLlang@enable@PT\@PJLlang@enable@PTfalse -\newif\if@PJLlang@enable@BR\@PJLlang@enable@BRfalse -\newif\if@PJLlang@enable@ES\@PJLlang@enable@ESfalse -\newif\if@PJLlang@enable@CN\@PJLlang@enable@CNfalse -\newif\if@PJLlang@enable@TC\@PJLlang@enable@TCfalse -\newif\if@PJLlang@enable@JP\@PJLlang@enable@JPfalse -\newif\if@PJLlang@enable@RU\@PJLlang@enable@RUfalse -\def\PJLlang@babeloptions{} -\DeclareVoidOption{EN}{\@PJLlang@enable@allfalse\@PJLlang@enable@ENtrue\providecommand{\PJLlang@mainlang}{EN}\gpreto{\PJLlang@babeloptions}{,english}} -\DeclareVoidOption{english}{\@PJLlang@enable@allfalse\@PJLlang@enable@ENtrue\providecommand{\PJLlang@mainlang}{EN}\gpreto{\PJLlang@babeloptions}{,english}} -\DeclareVoidOption{English}{\@PJLlang@enable@allfalse\@PJLlang@enable@ENtrue\providecommand{\PJLlang@mainlang}{EN}\gpreto{\PJLlang@babeloptions}{,english}} -\DeclareVoidOption{FR}{\@PJLlang@enable@allfalse\@PJLlang@enable@FRtrue\providecommand{\PJLlang@mainlang}{FR}\gpreto{\PJLlang@babeloptions}{,french}} -\DeclareVoidOption{french}{\@PJLlang@enable@allfalse\@PJLlang@enable@FRtrue\providecommand{\PJLlang@mainlang}{FR}\gpreto{\PJLlang@babeloptions}{,french}} -\DeclareVoidOption{French}{\@PJLlang@enable@allfalse\@PJLlang@enable@FRtrue\providecommand{\PJLlang@mainlang}{FR}\gpreto{\PJLlang@babeloptions}{,french}} -\DeclareVoidOption{DE}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{german}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{ngerman}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{German}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{IT}{\@PJLlang@enable@allfalse\@PJLlang@enable@ITtrue\providecommand{\PJLlang@mainlang}{IT}\gpreto{\PJLlang@babeloptions}{,italian}} -\DeclareVoidOption{italian}{\@PJLlang@enable@allfalse\@PJLlang@enable@ITtrue\providecommand{\PJLlang@mainlang}{IT}\gpreto{\PJLlang@babeloptions}{,italian}} -\DeclareVoidOption{Italian}{\@PJLlang@enable@allfalse\@PJLlang@enable@ITtrue\providecommand{\PJLlang@mainlang}{IT}\gpreto{\PJLlang@babeloptions}{,italian}} -\DeclareVoidOption{PT}{\@PJLlang@enable@allfalse\@PJLlang@enable@PTtrue\providecommand{\PJLlang@mainlang}{PT}\gpreto{\PJLlang@babeloptions}{,portuguese}} -\DeclareVoidOption{portuguese}{\@PJLlang@enable@allfalse\@PJLlang@enable@PTtrue\providecommand{\PJLlang@mainlang}{PT}\gpreto{\PJLlang@babeloptions}{,portuguese}} -\DeclareVoidOption{Portuguese}{\@PJLlang@enable@allfalse\@PJLlang@enable@PTtrue\providecommand{\PJLlang@mainlang}{PT}\gpreto{\PJLlang@babeloptions}{,portuguese}} -\DeclareVoidOption{BR}{\@PJLlang@enable@allfalse\@PJLlang@enable@BRtrue\providecommand{\PJLlang@mainlang}{BR}\gpreto{\PJLlang@babeloptions}{,brazilian}} -\DeclareVoidOption{brazilian}{\@PJLlang@enable@allfalse\@PJLlang@enable@BRtrue\providecommand{\PJLlang@mainlang}{BR}\gpreto{\PJLlang@babeloptions}{,brazilian}} -\DeclareVoidOption{Brazilian}{\@PJLlang@enable@allfalse\@PJLlang@enable@BRtrue\providecommand{\PJLlang@mainlang}{BR}\gpreto{\PJLlang@babeloptions}{,brazilian}} -\DeclareVoidOption{ES}{\@PJLlang@enable@allfalse\@PJLlang@enable@EStrue\providecommand{\PJLlang@mainlang}{ES}\gpreto{\PJLlang@babeloptions}{,spanish}} -\DeclareVoidOption{spanish}{\@PJLlang@enable@allfalse\@PJLlang@enable@EStrue\providecommand{\PJLlang@mainlang}{ES}\gpreto{\PJLlang@babeloptions}{,spanish}} -\DeclareVoidOption{Spanish}{\@PJLlang@enable@allfalse\@PJLlang@enable@EStrue\providecommand{\PJLlang@mainlang}{ES}\gpreto{\PJLlang@babeloptions}{,spanish}} -\DeclareVoidOption{CN}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{chinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{Chinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{schinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{SChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{simplifiedchinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{SimplifiedChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{TC}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{tchinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{TChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{traditionalchinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{TraditionalChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{JP}{\@PJLlang@enable@allfalse\@PJLlang@enable@JPtrue\providecommand{\PJLlang@mainlang}{JP}\gpreto{\PJLlang@babeloptions}{,japanese}} -\DeclareVoidOption{japanese}{\@PJLlang@enable@allfalse\@PJLlang@enable@JPtrue\providecommand{\PJLlang@mainlang}{JP}\gpreto{\PJLlang@babeloptions}{,japanese}} -\DeclareVoidOption{Japanese}{\@PJLlang@enable@allfalse\@PJLlang@enable@JPtrue\providecommand{\PJLlang@mainlang}{JP}\gpreto{\PJLlang@babeloptions}{,japanese}} -\DeclareVoidOption{RU}{\@PJLlang@enable@allfalse\@PJLlang@enable@RUtrue\providecommand{\PJLlang@mainlang}{RU}\gpreto{\PJLlang@babeloptions}{,russian}} -\DeclareVoidOption{russian}{\@PJLlang@enable@allfalse\@PJLlang@enable@RUtrue\providecommand{\PJLlang@mainlang}{RU}\gpreto{\PJLlang@babeloptions}{,russian}} -\DeclareVoidOption{Russian}{\@PJLlang@enable@allfalse\@PJLlang@enable@RUtrue\providecommand{\PJLlang@mainlang}{RU}\gpreto{\PJLlang@babeloptions}{,russian}} -\ProcessKeyvalOptions*\relax - -\ExplSyntaxOn -\cs_new_protected:cpn { @clearglobaloption } #1 - { - \clist_remove_all:cn { @classoptionslist } { #1 } - } -\ExplSyntaxOff - -\@clearglobaloption{chinese} -\@clearglobaloption{Chinese} - -\providecommand{\PJLlang@mainlang}{EN} - -\if@PJLlang@enable@all - \@PJLlang@enable@ENtrue - \@PJLlang@enable@FRtrue - \@PJLlang@enable@DEtrue - \@PJLlang@enable@ITtrue - \@PJLlang@enable@PTtrue - \@PJLlang@enable@BRtrue - \@PJLlang@enable@EStrue - \@PJLlang@enable@CNtrue - \@PJLlang@enable@TCtrue - \@PJLlang@enable@JPtrue - \@PJLlang@enable@RUtrue -\fi - -\newcommand\englishABBR{EN} -\newcommand\frenchABBR{FR} -\newcommand\ngermanABBR{DE} -\newcommand\italianABBR{IT} -\newcommand\portugueseABBR{PT} -\newcommand\brazilianABBR{BR} -\newcommand\spanishABBR{ES} -\newcommand\schineseABBR{CN} -\newcommand\tchineseABBR{TC} -\newcommand\japaneseABBR{JP} -\newcommand\russianABBR{RU} - -\ExplSyntaxOn -\NewExpandableDocumentCommand{\StrToABBR}{m} - { - \str_case_e:nn { \str_foldcase:n { #1 } } - { - {cn} {CN} - {chinese} {CN} - {schinese} {CN} - {simplifiedchinese} {CN} - {tc} {TC} - {tchinese} {TC} - {traditionalchinese} {TC} - {jp} {JP} - {japanese} {JP} - {en} {EN} - {english} {EN} - {fr} {FR} - {french} {FR} - {de} {DE} - {ngerman} {DE} - {it} {IT} - {italian} {IT} - {pt} {PT} - {portuguese} {PT} - {br} {BR} - {brazilian} {BR} - {es} {ES} - {spanish} {ES} - {german} {DE} - {ru} {RU} - {russian} {RU} - } - } - -\NewExpandableDocumentCommand{\StrToTYPE}{m} - { - \str_case_e:nn { \str_foldcase:n { #1 } } - { - {cn} {CJK} - {chinese} {CJK} - {schinese} {CJK} - {simplifiedchinese} {CJK} - {tc} {CJK} - {tchinese} {CJK} - {traditionalchinese} {CJK} - {jp} {CJK} - {japanese} {CJK} - {en} {Latin} - {english} {Latin} - {fr} {Latin} - {french} {Latin} - {de} {Latin} - {ngerman} {Latin} - {it} {Latin} - {italian} {Latin} - {pt} {Latin} - {portuguese} {Latin} - {br} {Latin} - {brazilian} {Latin} - {es} {Latin} - {spanish} {Latin} - {german} {Latin} - {ru} {Latin} - {russian} {Latin} - } - } -\ExplSyntaxOff - -\RequirePackage{iftex} -\ifPDFTeX -\RequirePackage[T1]{fontenc} -\RequirePackage{inputenc} -\fi - -\if@PJLlang@polyglossia - \RequirePackage{polyglossia} - \setdefaultlanguage{english} - \setotherlanguage[frenchpart=false]{french} - \setotherlanguage{ngerman} - \setotherlanguage{spanish} - \setotherlanguage{portuguese} - \setotherlanguage[variant=brazilian]{portuguese} - \setotherlanguage{italian} - \ifPDFTeX\else - \setotherlanguage{russian} - \setotherlanguage{japanese} - \RequirePackage{silence} - \WarningFilter{polyglossia}{Asking to add empty feature to latin font(Script="CJK" to scripttag "")} - \fi -\else - \if@PJLlang@enable@all - \ifPDFTeX\else - \PassOptionsToPackage{japanese,russian}{babel} - \fi - \PassOptionsToPackage{italian,portuguese,brazilian,spanish,es-notilde,es-noquoting,ngerman,french,english,shorthands=off}{babel} - \else - \PassOptionsToPackage{\PJLlang@babeloptions}{babel} - \fi - \PassOptionsToPackage{italian,brazilian,spanish,ngerman,french,english}{cleveref} - \RequirePackage{babel} - \if@PJLlang@enable@FR - \frenchsetup{PartNameFull=false} - \fi - \if@PJLlang@enable@PT - \let\PJL@babelord\ord - \let\ord\relax - \AtBeginDocument{ - \@ifundefined{ord}{} - { - \let\PJL@userord\ord - \let\ord\relax - \newcommand{\ord}{% - \ifmmode\expandafter\PJL@userord\else\expandafter\PJL@babelord\fi% - } - } - } - \fi - - \babelprovide{schinese} - \babelprovide{tchinese} -\fi - -\let\today@PJLoriginal\today -\newcommand{\PJLlang@langconfig@common}{% - \ifdefined\DTMtoday% - \let\today\DTMtoday% - \else% - \let\today\today@PJLoriginal% - \fi% -} - -\newcommand{\PJLlang@langconfig@CN}{% - \def\abstractname{摘要}% - \def\proofname{证明}% - \def\contentsname{目录}% - \def\listfigurename{插图}% - \def\listtablename{表格}% - \def\figurename{图}% - \def\tablename{表}% - \def\indexname{索引}% - \def\appendixname{附录}% - \def\refname{参考文献}% - \def\bibname{参考文献}% - \let\today\zhtoday% - \renewcommand{\languagename}{schinese}% -} -\newcommand{\PJLlang@langconfig@TC}{% - \def\abstractname{摘要}% - \def\proofname{證明}% - \def\contentsname{目錄}% - \def\listfigurename{插圖}% - \def\listtablename{表格}% - \def\figurename{圖}% - \def\tablename{表}% - \def\indexname{索引}% - \def\appendixname{附錄}% - \def\refname{參考文獻}% - \def\bibname{參考文獻}% - \let\today\zhtoday% - \renewcommand{\languagename}{tchinese}% -} -\newcommand{\PJLlang@langconfig@JP}{% - \selectlanguage{japanese}% -} -\newcommand{\PJLlang@langconfig@EN}{% - \selectlanguage{english}% -} -\newcommand{\PJLlang@langconfig@FR}{% - \selectlanguage{french}% - \def\frenchpartname{Partie}% -} -\newcommand{\PJLlang@langconfig@DE}{% - \selectlanguage{ngerman}% -} -\newcommand{\PJLlang@langconfig@IT}{% - \selectlanguage{italian}% -} -\newcommand{\PJLlang@langconfig@PT}{% - \selectlanguage{portuguese}% -} -\newcommand{\PJLlang@langconfig@BR}{% - \selectlanguage{brazilian}% -} -\newcommand{\PJLlang@langconfig@ES}{% - \selectlanguage{spanish}% -} -\newcommand{\PJLlang@langconfig@RU}{% - \selectlanguage{russian}% -} - -\NewDocumentCommand\AddLanguageSetting{d()m}{% -\IfNoValueTF{#1}% - {\gappto{\PJLlang@langconfig@common}{#2}}% - {\expandafter\gappto\expandafter{\csname PJLlang@langconfig@\StrToABBR{#1}\endcsname}{#2}}% -} - -\RequirePackage{setspace} -\def\PJL@config@linespacing{\setstretch{1.00}} -\def\PJL@config@CJKlinespacing{\onehalfspacing} -\newcommand{\PJLsetlinespacing}[1]{\renewcommand{\PJL@config@linespacing}{#1}} -\newcommand{\PJLsetCJKlinespacing}[1]{\renewcommand{\PJL@config@CJKlinespacing}{#1}} -\@ifclassloaded{beamer}{ - \def\PJL@config@parindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{0em}}} - \def\PJL@config@CJKparindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{0em}}} -}{ - \def\PJL@config@parindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{1.5em}}} - \def\PJL@config@CJKparindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{2em}}} -} -\newcommand{\PJLsetparindent}[1]{\renewcommand{\PJL@config@parindent}{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{#1}}}} -\newcommand{\PJLsetCJKparindent}[1]{\renewcommand{\PJL@config@CJKparindent}{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{#1}}}} -\def\PJL@config@CJK{\PJL@config@CJKlinespacing\PJL@config@CJKparindent} -\def\PJL@config@Latin{\PJL@config@linespacing\PJL@config@parindent} -\NewDocumentCommand{\UseLanguageCORE}{m}{% - \PJLlang@langconfig@common% - \csname PJL@config@\StrToTYPE{#1}\endcsname% - \csname PJLlang@langconfig@\StrToABBR{#1}\endcsname% -} -\NewDocumentCommand{\UseLanguage}{m}{% - \ifx\@onlypreamble\@notprerr% - \UseLanguageCORE{#1}% - \else% - \AfterEndPreamble{\UseLanguageCORE{#1}}% - \fi% -} -\NewDocumentCommand{\UseOtherLanguage}{mm}{% -\begingroup\begingroup% - \PJLlang@langconfig@common% - \csname PJLlang@langconfig@\StrToABBR{#1}\endcsname% - #2% -\endgroup\endgroup% -} - -\expandafter\UseLanguage\expandafter{\PJLlang@mainlang} - -\endinput -%% -%% End of file `PJLlang.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLlogo.sty b/macros/latex/contrib/projlib/old-modules/PJLlogo.sty deleted file mode 100644 index 7d24239fdc..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLlogo.sty +++ /dev/null @@ -1,72 +0,0 @@ -%% -%% This is file `PJLlogo.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLlogo} - [2021/12/16 The ProjLib logo] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLlogo, - prefix = @PJLlogo@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\ProcessKeyvalOptions*\relax -\if@PJLlogo@draft - \@PJLlogo@fasttrue -\fi -\if@PJLlogo@fast\def\ProjLib{{\normalfont ProjLib}}\endinput\fi - -\RequirePackage{xcolor} -\RequirePackage{graphicx} -\ifdefined\fontspec - \newfontface{\PJLlogo@font}{LinBiolinum_R.otf} -\else - \RequirePackage[T1]{fontenc} - \newcommand{\PJLlogo@font}{\fontfamily{LinuxBiolinumT-TLF}\selectfont} -\fi - -\newcommand{\PJLSigmaJ}{% - \vbox{\offinterlineskip - \ialign{% - \hfil##\hfil\cr - \hidewidth\hskip0.15ex\scalebox{0.4}{\rotatebox{-10}{\usefont{U}{zeur}{b}{n}\symbol{"06}}}\hidewidth\cr - \noalign{\kern0.15ex} - \j\cr - }% - }% -} - -\newcommand{\ProjLib@generic}[1]{% - \begingroup - \normalfont\PJLlogo@font - \textcolor{blue!60!cyan}{P}% - \textcolor{blue!45!cyan}{r}% - \textcolor{blue!30!cyan}{o}% - \textcolor{green!70!black}{#1}% - \textcolor{red!20!yellow}{L}% - \textcolor{red!40!yellow}{i}% - \textcolor{red!60!yellow}{b}% - \endgroup -} -\DeclareRobustCommand*{\ProjLib}{\ProjLib@generic{\PJLSigmaJ}} -\DeclareRobustCommand*{\ProjLibText}{\ProjLib@generic{j}} - -\endinput -%% -%% End of file `PJLlogo.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLmath.sty b/macros/latex/contrib/projlib/old-modules/PJLmath.sty deleted file mode 100644 index 3bd389ef50..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLmath.sty +++ /dev/null @@ -1,315 +0,0 @@ -%% -%% This is file `PJLmath.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLmath} - [2021/12/16 Useful math macros and shortcuts] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\RequirePackage{mathtools} -\RequirePackage{mathrsfs} -\@ifpackageloaded{unicode-math}{}{\RequirePackage{amssymb}} - -%%================================ -%% Shorthands -%%================================ -\providecommand{\N}{\ensuremath{\mathbb{N}}} -\providecommand{\Z}{\ensuremath{\mathbb{Z}}} -\providecommand{\Q}{\ensuremath{\mathbb{Q}}} -\providecommand{\R}{\ensuremath{\mathbb{R}}} -\providecommand{\C}{\ensuremath{\mathbb{C}}} -\providecommand{\F}{\ensuremath{\mathbb{F}}} -\providecommand{\A}{\ensuremath{\mathbb{A}}} - -\providecommand{\bb}[1]{\ensuremath{\mathbb{#1}}} -\providecommand{\bbA}{\ensuremath{\mathbb{A}}} -\providecommand{\bbB}{\ensuremath{\mathbb{B}}} -\providecommand{\bbC}{\ensuremath{\mathbb{C}}} -\providecommand{\bbD}{\ensuremath{\mathbb{D}}} -\providecommand{\bbE}{\ensuremath{\mathbb{E}}} -\providecommand{\bbF}{\ensuremath{\mathbb{F}}} -\providecommand{\bbG}{\ensuremath{\mathbb{G}}} -\providecommand{\bbH}{\ensuremath{\mathbb{H}}} -\providecommand{\bbI}{\ensuremath{\mathbb{I}}} -\providecommand{\bbJ}{\ensuremath{\mathbb{J}}} -\providecommand{\bbK}{\ensuremath{\mathbb{K}}} -\providecommand{\bbL}{\ensuremath{\mathbb{L}}} -\providecommand{\bbM}{\ensuremath{\mathbb{M}}} -\providecommand{\bbN}{\ensuremath{\mathbb{N}}} -\providecommand{\bbO}{\ensuremath{\mathbb{O}}} -\providecommand{\bbP}{\ensuremath{\mathbb{P}}} -\providecommand{\bbQ}{\ensuremath{\mathbb{Q}}} -\providecommand{\bbR}{\ensuremath{\mathbb{R}}} -\providecommand{\bbS}{\ensuremath{\mathbb{S}}} -\providecommand{\bbT}{\ensuremath{\mathbb{T}}} -\providecommand{\bbU}{\ensuremath{\mathbb{U}}} -\providecommand{\bbV}{\ensuremath{\mathbb{V}}} -\providecommand{\bbW}{\ensuremath{\mathbb{W}}} -\providecommand{\bbX}{\ensuremath{\mathbb{X}}} -\providecommand{\bbY}{\ensuremath{\mathbb{Y}}} -\providecommand{\bbZ}{\ensuremath{\mathbb{Z}}} - -\providecommand{\mc}[1]{\ensuremath{\mathcal{#1}}} -\providecommand{\mcA}{\ensuremath{\mathcal{A}}} -\providecommand{\mcB}{\ensuremath{\mathcal{B}}} -\providecommand{\mcC}{\ensuremath{\mathcal{C}}} -\providecommand{\mcD}{\ensuremath{\mathcal{D}}} -\providecommand{\mcE}{\ensuremath{\mathcal{E}}} -\providecommand{\mcF}{\ensuremath{\mathcal{F}}} -\providecommand{\mcG}{\ensuremath{\mathcal{G}}} -\providecommand{\mcH}{\ensuremath{\mathcal{H}}} -\providecommand{\mcI}{\ensuremath{\mathcal{I}}} -\providecommand{\mcJ}{\ensuremath{\mathcal{J}}} -\providecommand{\mcK}{\ensuremath{\mathcal{K}}} -\providecommand{\mcL}{\ensuremath{\mathcal{L}}} -\providecommand{\mcM}{\ensuremath{\mathcal{M}}} -\providecommand{\mcN}{\ensuremath{\mathcal{N}}} -\providecommand{\mcO}{\ensuremath{\mathcal{O}}} -\providecommand{\mcP}{\ensuremath{\mathcal{P}}} -\providecommand{\mcQ}{\ensuremath{\mathcal{Q}}} -\providecommand{\mcR}{\ensuremath{\mathcal{R}}} -\providecommand{\mcS}{\ensuremath{\mathcal{S}}} -\providecommand{\mcT}{\ensuremath{\mathcal{T}}} -\providecommand{\mcU}{\ensuremath{\mathcal{U}}} -\providecommand{\mcV}{\ensuremath{\mathcal{V}}} -\providecommand{\mcW}{\ensuremath{\mathcal{W}}} -\providecommand{\mcX}{\ensuremath{\mathcal{X}}} -\providecommand{\mcY}{\ensuremath{\mathcal{Y}}} -\providecommand{\mcZ}{\ensuremath{\mathcal{Z}}} - -\providecommand{\cal}[1]{\ensuremath{\mathcal{#1}}} -\providecommand{\calA}{\ensuremath{\mathcal{A}}} -\providecommand{\calB}{\ensuremath{\mathcal{B}}} -\providecommand{\calC}{\ensuremath{\mathcal{C}}} -\providecommand{\calD}{\ensuremath{\mathcal{D}}} -\providecommand{\calE}{\ensuremath{\mathcal{E}}} -\providecommand{\calF}{\ensuremath{\mathcal{F}}} -\providecommand{\calG}{\ensuremath{\mathcal{G}}} -\providecommand{\calH}{\ensuremath{\mathcal{H}}} -\providecommand{\calI}{\ensuremath{\mathcal{I}}} -\providecommand{\calJ}{\ensuremath{\mathcal{J}}} -\providecommand{\calK}{\ensuremath{\mathcal{K}}} -\providecommand{\calL}{\ensuremath{\mathcal{L}}} -\providecommand{\calM}{\ensuremath{\mathcal{M}}} -\providecommand{\calN}{\ensuremath{\mathcal{N}}} -\providecommand{\calO}{\ensuremath{\mathcal{O}}} -\providecommand{\calP}{\ensuremath{\mathcal{P}}} -\providecommand{\calQ}{\ensuremath{\mathcal{Q}}} -\providecommand{\calR}{\ensuremath{\mathcal{R}}} -\providecommand{\calS}{\ensuremath{\mathcal{S}}} -\providecommand{\calT}{\ensuremath{\mathcal{T}}} -\providecommand{\calU}{\ensuremath{\mathcal{U}}} -\providecommand{\calV}{\ensuremath{\mathcal{V}}} -\providecommand{\calW}{\ensuremath{\mathcal{W}}} -\providecommand{\calX}{\ensuremath{\mathcal{X}}} -\providecommand{\calY}{\ensuremath{\mathcal{Y}}} -\providecommand{\calZ}{\ensuremath{\mathcal{Z}}} - -\providecommand{\mf}[1]{\ensuremath{\mathfrak{#1}}} -\providecommand{\mfa}{\ensuremath{\mathfrak{a}}} -\providecommand{\mfb}{\ensuremath{\mathfrak{b}}} -\providecommand{\mfc}{\ensuremath{\mathfrak{c}}} -\providecommand{\mfd}{\ensuremath{\mathfrak{d}}} -\providecommand{\mfe}{\ensuremath{\mathfrak{e}}} -\providecommand{\mff}{\ensuremath{\mathfrak{f}}} -\providecommand{\mfg}{\ensuremath{\mathfrak{g}}} -\providecommand{\mfh}{\ensuremath{\mathfrak{h}}} -\providecommand{\mfi}{\ensuremath{\mathfrak{i}}} -\providecommand{\mfj}{\ensuremath{\mathfrak{j}}} -\providecommand{\mfk}{\ensuremath{\mathfrak{k}}} -\providecommand{\mfl}{\ensuremath{\mathfrak{l}}} -\providecommand{\mfm}{\ensuremath{\mathfrak{m}}} -\providecommand{\mfn}{\ensuremath{\mathfrak{n}}} -\providecommand{\mfo}{\ensuremath{\mathfrak{o}}} -\providecommand{\mfp}{\ensuremath{\mathfrak{p}}} -\providecommand{\mfq}{\ensuremath{\mathfrak{q}}} -\providecommand{\mfr}{\ensuremath{\mathfrak{r}}} -\providecommand{\mfs}{\ensuremath{\mathfrak{s}}} -\providecommand{\mft}{\ensuremath{\mathfrak{t}}} -\providecommand{\mfu}{\ensuremath{\mathfrak{u}}} -\providecommand{\mfv}{\ensuremath{\mathfrak{v}}} -\providecommand{\mfw}{\ensuremath{\mathfrak{w}}} -\providecommand{\mfx}{\ensuremath{\mathfrak{x}}} -\providecommand{\mfy}{\ensuremath{\mathfrak{y}}} -\providecommand{\mfz}{\ensuremath{\mathfrak{z}}} -\providecommand{\mfA}{\ensuremath{\mathfrak{A}}} -\providecommand{\mfB}{\ensuremath{\mathfrak{B}}} -\providecommand{\mfC}{\ensuremath{\mathfrak{C}}} -\providecommand{\mfD}{\ensuremath{\mathfrak{D}}} -\providecommand{\mfE}{\ensuremath{\mathfrak{E}}} -\providecommand{\mfF}{\ensuremath{\mathfrak{F}}} -\providecommand{\mfG}{\ensuremath{\mathfrak{G}}} -\providecommand{\mfH}{\ensuremath{\mathfrak{H}}} -\providecommand{\mfI}{\ensuremath{\mathfrak{I}}} -\providecommand{\mfJ}{\ensuremath{\mathfrak{J}}} -\providecommand{\mfK}{\ensuremath{\mathfrak{K}}} -\providecommand{\mfL}{\ensuremath{\mathfrak{L}}} -\providecommand{\mfM}{\ensuremath{\mathfrak{M}}} -\providecommand{\mfN}{\ensuremath{\mathfrak{N}}} -\providecommand{\mfO}{\ensuremath{\mathfrak{O}}} -\providecommand{\mfP}{\ensuremath{\mathfrak{P}}} -\providecommand{\mfQ}{\ensuremath{\mathfrak{Q}}} -\providecommand{\mfR}{\ensuremath{\mathfrak{R}}} -\providecommand{\mfS}{\ensuremath{\mathfrak{S}}} -\providecommand{\mfT}{\ensuremath{\mathfrak{T}}} -\providecommand{\mfU}{\ensuremath{\mathfrak{U}}} -\providecommand{\mfV}{\ensuremath{\mathfrak{V}}} -\providecommand{\mfW}{\ensuremath{\mathfrak{W}}} -\providecommand{\mfX}{\ensuremath{\mathfrak{X}}} -\providecommand{\mfY}{\ensuremath{\mathfrak{Y}}} -\providecommand{\mfZ}{\ensuremath{\mathfrak{Z}}} - -\providecommand{\frak}[1]{\ensuremath{\mathfrak{#1}}} -\providecommand{\fraka}{\ensuremath{\mathfrak{a}}} -\providecommand{\frakb}{\ensuremath{\mathfrak{b}}} -\providecommand{\frakc}{\ensuremath{\mathfrak{c}}} -\providecommand{\frakd}{\ensuremath{\mathfrak{d}}} -\providecommand{\frake}{\ensuremath{\mathfrak{e}}} -\providecommand{\frakf}{\ensuremath{\mathfrak{f}}} -\providecommand{\frakg}{\ensuremath{\mathfrak{g}}} -\providecommand{\frakh}{\ensuremath{\mathfrak{h}}} -\providecommand{\fraki}{\ensuremath{\mathfrak{i}}} -\providecommand{\frakj}{\ensuremath{\mathfrak{j}}} -\providecommand{\frakk}{\ensuremath{\mathfrak{k}}} -\providecommand{\frakl}{\ensuremath{\mathfrak{l}}} -\providecommand{\frakm}{\ensuremath{\mathfrak{m}}} -\providecommand{\frakn}{\ensuremath{\mathfrak{n}}} -\providecommand{\frako}{\ensuremath{\mathfrak{o}}} -\providecommand{\frakp}{\ensuremath{\mathfrak{p}}} -\providecommand{\frakq}{\ensuremath{\mathfrak{q}}} -\providecommand{\frakr}{\ensuremath{\mathfrak{r}}} -\providecommand{\fraks}{\ensuremath{\mathfrak{s}}} -\providecommand{\frakt}{\ensuremath{\mathfrak{t}}} -\providecommand{\fraku}{\ensuremath{\mathfrak{u}}} -\providecommand{\frakv}{\ensuremath{\mathfrak{v}}} -\providecommand{\frakw}{\ensuremath{\mathfrak{w}}} -\providecommand{\frakx}{\ensuremath{\mathfrak{x}}} -\providecommand{\fraky}{\ensuremath{\mathfrak{y}}} -\providecommand{\frakz}{\ensuremath{\mathfrak{z}}} -\providecommand{\frakA}{\ensuremath{\mathfrak{A}}} -\providecommand{\frakB}{\ensuremath{\mathfrak{B}}} -\providecommand{\frakC}{\ensuremath{\mathfrak{C}}} -\providecommand{\frakD}{\ensuremath{\mathfrak{D}}} -\providecommand{\frakE}{\ensuremath{\mathfrak{E}}} -\providecommand{\frakF}{\ensuremath{\mathfrak{F}}} -\providecommand{\frakG}{\ensuremath{\mathfrak{G}}} -\providecommand{\frakH}{\ensuremath{\mathfrak{H}}} -\providecommand{\frakI}{\ensuremath{\mathfrak{I}}} -\providecommand{\frakJ}{\ensuremath{\mathfrak{J}}} -\providecommand{\frakK}{\ensuremath{\mathfrak{K}}} -\providecommand{\frakL}{\ensuremath{\mathfrak{L}}} -\providecommand{\frakM}{\ensuremath{\mathfrak{M}}} -\providecommand{\frakN}{\ensuremath{\mathfrak{N}}} -\providecommand{\frakO}{\ensuremath{\mathfrak{O}}} -\providecommand{\frakP}{\ensuremath{\mathfrak{P}}} -\providecommand{\frakQ}{\ensuremath{\mathfrak{Q}}} -\providecommand{\frakR}{\ensuremath{\mathfrak{R}}} -\providecommand{\frakS}{\ensuremath{\mathfrak{S}}} -\providecommand{\frakT}{\ensuremath{\mathfrak{T}}} -\providecommand{\frakU}{\ensuremath{\mathfrak{U}}} -\providecommand{\frakV}{\ensuremath{\mathfrak{V}}} -\providecommand{\frakW}{\ensuremath{\mathfrak{W}}} -\providecommand{\frakX}{\ensuremath{\mathfrak{X}}} -\providecommand{\frakY}{\ensuremath{\mathfrak{Y}}} -\providecommand{\frakZ}{\ensuremath{\mathfrak{Z}}} - -\providecommand{\ms}[1]{\ensuremath{\mathscr{#1}}} -\providecommand{\msA}{\ensuremath{\mathscr{A}}} -\providecommand{\msB}{\ensuremath{\mathscr{B}}} -\providecommand{\msC}{\ensuremath{\mathscr{C}}} -\providecommand{\msD}{\ensuremath{\mathscr{D}}} -\providecommand{\msE}{\ensuremath{\mathscr{E}}} -\providecommand{\msF}{\ensuremath{\mathscr{F}}} -\providecommand{\msG}{\ensuremath{\mathscr{G}}} -\providecommand{\msH}{\ensuremath{\mathscr{H}}} -\providecommand{\msI}{\ensuremath{\mathscr{I}}} -\providecommand{\msJ}{\ensuremath{\mathscr{J}}} -\providecommand{\msK}{\ensuremath{\mathscr{K}}} -\providecommand{\msL}{\ensuremath{\mathscr{L}}} -\providecommand{\msM}{\ensuremath{\mathscr{M}}} -\providecommand{\msN}{\ensuremath{\mathscr{N}}} -\providecommand{\msO}{\ensuremath{\mathscr{O}}} -\providecommand{\msP}{\ensuremath{\mathscr{P}}} -\providecommand{\msQ}{\ensuremath{\mathscr{Q}}} -\providecommand{\msR}{\ensuremath{\mathscr{R}}} -\providecommand{\msS}{\ensuremath{\mathscr{S}}} -\providecommand{\msT}{\ensuremath{\mathscr{T}}} -\providecommand{\msU}{\ensuremath{\mathscr{U}}} -\providecommand{\msV}{\ensuremath{\mathscr{V}}} -\providecommand{\msW}{\ensuremath{\mathscr{W}}} -\providecommand{\msX}{\ensuremath{\mathscr{X}}} -\providecommand{\msY}{\ensuremath{\mathscr{Y}}} -\providecommand{\msZ}{\ensuremath{\mathscr{Z}}} - -\providecommand{\scr}[1]{\ensuremath{\mathscr{#1}}} -\providecommand{\scrA}{\ensuremath{\mathscr{A}}} -\providecommand{\scrB}{\ensuremath{\mathscr{B}}} -\providecommand{\scrC}{\ensuremath{\mathscr{C}}} -\providecommand{\scrD}{\ensuremath{\mathscr{D}}} -\providecommand{\scrE}{\ensuremath{\mathscr{E}}} -\providecommand{\scrF}{\ensuremath{\mathscr{F}}} -\providecommand{\scrG}{\ensuremath{\mathscr{G}}} -\providecommand{\scrH}{\ensuremath{\mathscr{H}}} -\providecommand{\scrI}{\ensuremath{\mathscr{I}}} -\providecommand{\scrJ}{\ensuremath{\mathscr{J}}} -\providecommand{\scrK}{\ensuremath{\mathscr{K}}} -\providecommand{\scrL}{\ensuremath{\mathscr{L}}} -\providecommand{\scrM}{\ensuremath{\mathscr{M}}} -\providecommand{\scrN}{\ensuremath{\mathscr{N}}} -\providecommand{\scrO}{\ensuremath{\mathscr{O}}} -\providecommand{\scrP}{\ensuremath{\mathscr{P}}} -\providecommand{\scrQ}{\ensuremath{\mathscr{Q}}} -\providecommand{\scrR}{\ensuremath{\mathscr{R}}} -\providecommand{\scrS}{\ensuremath{\mathscr{S}}} -\providecommand{\scrT}{\ensuremath{\mathscr{T}}} -\providecommand{\scrU}{\ensuremath{\mathscr{U}}} -\providecommand{\scrV}{\ensuremath{\mathscr{V}}} -\providecommand{\scrW}{\ensuremath{\mathscr{W}}} -\providecommand{\scrX}{\ensuremath{\mathscr{X}}} -\providecommand{\scrY}{\ensuremath{\mathscr{Y}}} -\providecommand{\scrZ}{\ensuremath{\mathscr{Z}}} - -%%================================ -%% General symbols -%%================================ -\providecommand{\abs}[1]{\lvert#1\rvert} -\providecommand{\norm}[1]{\lVert#1\rVert} - -\providecommand*{\injection}{\ensuremath{\hookrightarrow}} -\providecommand*{\surjection}{\ensuremath{\twoheadrightarrow}} -\providecommand*{\bijection}{\ensuremath{\xrightarrow{\sim}}} - -%%================================ -%% Symbols for number theory -%%================================ -\ifdefined\@@pmod\else -\let\@@pmod\pmod -\DeclareRobustCommand{\pmod}{\@ifstar\@pmods\@@pmod} -\def\@pmods#1{\mkern4mu({\operator@font mod}\mkern 6mu#1)} -\fi - -\providecommand{\genlegendre}[4]{% - \genfrac{(}{)}{}{#1}{#3}{#4}% - \if\relax\detokenize{#2}\relax\else_{\!#2}\fi% -} -\providecommand{\legendre}[3][]{\genlegendre{}{#1}{#2}{#3}} -\providecommand{\dlegendre}[3][]{\genlegendre{0}{#1}{#2}{#3}} -\providecommand{\tlegendre}[3][]{\genlegendre{1}{#1}{#2}{#3}} - -\endinput -%% -%% End of file `PJLmath.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLpaper.sty b/macros/latex/contrib/projlib/old-modules/PJLpaper.sty deleted file mode 100644 index 4b963c069a..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLpaper.sty +++ /dev/null @@ -1,96 +0,0 @@ -%% -%% This is file `PJLpaper.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLpaper} - [2021/12/16 Paper style configuration] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\RequirePackage{ifthen} - -\SetupKeyvalOptions{% - family = @PJLpaper, - prefix = @PJLpaper@, - setkeys=\kvsetkeys -} - -\DeclareStringOption[normal]{paperstyle} -\DeclareVoidOption{yellowpaper}{\kvsetkeys{@PJLpaper}{paperstyle=yellow}} -\DeclareVoidOption{darkpaper}{\kvsetkeys{@PJLpaper}{paperstyle=dark}} -\DeclareVoidOption{nordpaper}{\kvsetkeys{@PJLpaper}{paperstyle=nord}} -\DeclareBoolOption[false]{preview} -\ProcessKeyvalOptions*\relax - -%%================================ -%% Preview mode -%%================================ -\ifdefined\PJLnoPreview\else% - \if@PJLpaper@preview% - \RequirePackage{calc} - \AtEndPreamble{% - \setlength{\paperwidth}{\textwidth*\real{1.05}}% - \setlength{\paperheight}{% - (\textheight+\headheight+\headsep+\footskip)*\real{1.05}}% - \setlength{\oddsidemargin}{(\paperwidth-\textwidth)/2-1in}% - \setlength{\evensidemargin}{(\paperwidth-\textwidth)/2-1in}% - \setlength{\topmargin}{(\paperheight-\textheight-\headheight-\headsep-\footskip)/2- 1in}% - } - \fi -\fi - -%%================================ -%% Paper color -%%================================ -\RequirePackage{xcolor} -\definecolor{paper}{RGB}{255,255,255} -\definecolor{maintext}{RGB}{0,0,0} - -\ifthenelse{\equal{\@PJLpaper@paperstyle}{yellow}} -{ - \definecolor{paper}{RGB}{247,246,233} -} -{\relax} - -\ifthenelse{\equal{\@PJLpaper@paperstyle}{dark}} -{ - \definecolor{paper}{RGB}{30,30,30} - \definecolor{maintext}{RGB}{207,207,207} -} -{\relax} - -\ifthenelse{\equal{\@PJLpaper@paperstyle}{nord}} -{ - \definecolor{paper}{RGB}{46,52,64} - \definecolor{maintext}{RGB}{214,220,230} -} -{\relax} - -\newcommand{\PJLglobalcolor}[1]{% - \color{#1}\global\let\default@color\current@color -} - -\pagecolor{paper} -\PJLglobalcolor{maintext} -\AtEndPreamble{ -\ifdefined\tcbset% - \tcbset{colupper=maintext,collower=maintext} -\fi -} - -\endinput -%% -%% End of file `PJLpaper.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLthm.sty b/macros/latex/contrib/projlib/old-modules/PJLthm.sty deleted file mode 100644 index 4e6d00d4d2..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLthm.sty +++ /dev/null @@ -1,2019 +0,0 @@ -%% -%% This is file `PJLthm.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLthm} - [2021/12/16 Theorem setup and configuration] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{% - family = @PJLthm, - prefix = @PJLthm@ -} -\DeclareBoolOption[false]{nothms} -\DeclareBoolOption[false]{delaythms} -\DeclareBoolOption[false]{nothmnum} -\DeclareStringOption{thmnum}[PJL@thmnum@default] -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\DeclareBoolOption[true]{regionalref} -\DeclareBoolOption[false]{originalref} -\DeclareBoolOption[true]{complexname} -\DeclareBoolOption[false]{simplename} -\ProcessKeyvalOptions*\relax -\if@PJLthm@originalref - \@PJLthm@regionalreffalse -\fi -\if@PJLthm@simplename - \@PJLthm@complexnamefalse -\fi -\if@PJLthm@draft - \@PJLthm@fasttrue -\fi -\if@PJLthm@fast - \@PJLthm@regionalreftrue -\fi - -\@ifclassloaded{beamer}{% - \RequirePackage{silence} - \WarningFilter{cleveref}{hyperref package loaded with implicit=false option} - \@PJLthm@nothmnumtrue% - \if@PJLthm@nothms\else% - \let\theorem\relax - \let\lemma\relax - \let\corollary\relax - \let\definition\relax - \let\fact\relax - \let\example\relax - \let\problem\relax - \fi -}{} - -\RequirePackage{PJLlang} -\RequirePackage{amsmath,amsthm} -\RequirePackage{aliascnt} -\PassOptionsToPackage{nameinlink}{cleveref} -\RequirePackage{crefthe} - -\RequirePackage{xparse} -\RequirePackage{xstring} -\NewDocumentCommand{\NameTheorem}{omm}{% - \protected@edef\PJLthm@temp{#2}% - \expandafter\IfEndWith\expandafter{\PJLthm@temp}{*}{% - \expandafter\StrGobbleRight\expandafter{\PJLthm@temp}{1}[\PJLthm@temp]% - }{}% - \IfSubStr{\detokenize{#3}}{=}{% key-value mode - \IfValueTF{#1}{% - \CreateTheoremSetKeys{\PJLthm@temp}{#1={#3}}% - }{% - \CreateTheoremSetKeys{\PJLthm@temp}{#3}% - }% - }{% simple mode - \IfValueTF{#1}{% - \expandafter\def\csname\PJLthm@temp name\StrToABBR{#1}\endcsname{#3}% - }{% - \expandafter\def\csname\PJLthm@temp nameEN\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameFR\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameDE\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameIT\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp namePT\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameBR\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameES\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameCN\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameTC\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameJP\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameRU\endcsname{#3}% - }% - }% -} - -\newcommand\PassFirstToSecond[2]{#2{#1}}% -\NewDocumentCommand{\CreateTheorem}{sm}{% - \begingroup - \protected@edef\PJLthm@temp{#2}% - \expandafter\IfEndWith\expandafter{\PJLthm@temp}{*}{% - \expandafter\StrGobbleRight\expandafter{\PJLthm@temp}{1}[\PJLthm@temp]% - \PassFirstToSecond{*}% - }{% - \PassFirstToSecond{}% - }% - {\expandafter\PassFirstToSecond% - \expandafter{\PJLthm@temp}{\endgroup\InnerCreateTheorem{#1}}}% -}% -\if@PJLthm@regionalref -\NewDocumentCommand{\InnerCreateTheorem}{mmmod<>d()g}{% - \IfBooleanTF{#1}{% - \IfValueTF{#4} - {\@firstoftwo} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}% - }{% - \IfValueTF{#4} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}{ - \@secondoftwo} - }% - {% - \GenericError{}% - {\string\CreateTheorem\space syntax error\on@line}{% - You cannot call the starred variant with optional argument,\MessageBreak - nor call the unstarred variant with several optional arguments.}% - {}% - }{% - \IfValueTF{#6}{% - \IfBooleanTF{#1}{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - {\newenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - }{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - {\newenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - } - }{% - \IfBooleanTF{#1}{% - \newtheorem*{#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname} - }{% - \IfValueTF{#5}{% - \newtheorem{PJL#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname}[#5]% - \newaliascnt{#2#3}{PJL#2#3}% - }{% - \IfValueTF{#4}{% - \newtheorem{PJL#2#3}[#4]{\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - }{% - \newtheorem{PJL#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - \newaliascnt{#2#3}{PJL#2#3}% - }% - }% - \ifcsname cref@PJL#2#3@name\endcsname\else% - \crefname{PJL#2#3}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - \fi% - \ifcsname Cref@PJL#2#3@name\endcsname\else% - \Crefname{PJL#2#3}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - \fi% - \NewDocumentEnvironment{#2#3}{} - {\begin{PJL#2#3}} - {\end{PJL#2#3}} - }% - }% - }% - \IfValueTF{#7}{% - \NameTheorem{#2}{#7}% - }{}% -}% -\else -\NewDocumentCommand{\InnerCreateTheorem}{mmmod<>d()g}{% - \IfBooleanTF{#1}{% - \IfValueTF{#4} - {\@firstoftwo} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}% - }{% - \IfValueTF{#4} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}{ - \@secondoftwo} - }% - {% - \GenericError{}% - {\string\CreateTheorem\space syntax error\on@line}{% - You cannot call the starred variant with optional argument,\MessageBreak - nor call the unstarred variant with several optional arguments.}% - {% - Allowed usage:\MessageBreak\MessageBreak - \CreateTheorem*{(name of environment)}\MessageBreak - \CreateTheorem{(name of environment)}\MessageBreak - \CreateTheorem{(name of environment)}[(numbered like)]\MessageBreak - \CreateTheorem{(name of environment)}<(numbered within)>\MessageBreak - \CreateTheorem{(name of environment)}((existed environment))\MessageBreak - }% - }{% - \IfValueTF{#6}{% - \IfBooleanTF{#1}{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - {\newenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - }{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - {\newenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - } - }{% - \IfBooleanTF{#1}{% - \if@PJLlang@enable@EN\expandafter\PassFirstToSecond\expandafter{\csname#2nameEN\endcsname}{\newtheorem*{#2EN#3}}\fi% - \if@PJLlang@enable@FR\expandafter\PassFirstToSecond\expandafter{\csname#2nameFR\endcsname}{\newtheorem*{#2FR#3}}\fi% - \if@PJLlang@enable@DE\expandafter\PassFirstToSecond\expandafter{\csname#2nameDE\endcsname}{\newtheorem*{#2DE#3}}\fi% - \if@PJLlang@enable@IT\expandafter\PassFirstToSecond\expandafter{\csname#2nameIT\endcsname}{\newtheorem*{#2IT#3}}\fi% - \if@PJLlang@enable@PT\expandafter\PassFirstToSecond\expandafter{\csname#2namePT\endcsname}{\newtheorem*{#2PT#3}}\fi% - \if@PJLlang@enable@BR\expandafter\PassFirstToSecond\expandafter{\csname#2nameBR\endcsname}{\newtheorem*{#2BR#3}}\fi% - \if@PJLlang@enable@ES\expandafter\PassFirstToSecond\expandafter{\csname#2nameES\endcsname}{\newtheorem*{#2ES#3}}\fi% - \if@PJLlang@enable@CN\expandafter\PassFirstToSecond\expandafter{\csname#2nameCN\endcsname}{\newtheorem*{#2CN#3}}\fi% - \if@PJLlang@enable@TC\expandafter\PassFirstToSecond\expandafter{\csname#2nameTC\endcsname}{\newtheorem*{#2TC#3}}\fi% - \if@PJLlang@enable@JP\expandafter\PassFirstToSecond\expandafter{\csname#2nameJP\endcsname}{\newtheorem*{#2JP#3}}\fi% - \if@PJLlang@enable@RU\expandafter\PassFirstToSecond\expandafter{\csname#2nameRU\endcsname}{\newtheorem*{#2RU#3}}\fi% - }{% - \IfValueTF{#5}{% - \newcounter{#2#3}[{#5}]% - \expandafter\renewcommand\expandafter*% - \csname the#2#3\expandafter\endcsname% - \expandafter{\csname the#5\endcsname.\arabic{#2#3}}% - }{% - \IfValueTF{#4} - {\newaliascnt{#2#3}{#4}} - {\newcounter{#2#3}}% - }% - %--------------------------------------------------------------- - \if@PJLlang@enable@EN\CreateTheoremNumberedLikeAliasCounter{#2}{EN}{#3}\fi% - \if@PJLlang@enable@FR\CreateTheoremNumberedLikeAliasCounter{#2}{FR}{#3}\fi% - \if@PJLlang@enable@DE\CreateTheoremNumberedLikeAliasCounter{#2}{DE}{#3}\fi% - \if@PJLlang@enable@IT\CreateTheoremNumberedLikeAliasCounter{#2}{IT}{#3}\fi% - \if@PJLlang@enable@PT\CreateTheoremNumberedLikeAliasCounter{#2}{PT}{#3}\fi% - \if@PJLlang@enable@BR\CreateTheoremNumberedLikeAliasCounter{#2}{BR}{#3}\fi% - \if@PJLlang@enable@ES\CreateTheoremNumberedLikeAliasCounter{#2}{ES}{#3}\fi% - \if@PJLlang@enable@CN\CreateTheoremNumberedLikeAliasCounter{#2}{CN}{#3}\fi% - \if@PJLlang@enable@TC\CreateTheoremNumberedLikeAliasCounter{#2}{TC}{#3}\fi% - \if@PJLlang@enable@JP\CreateTheoremNumberedLikeAliasCounter{#2}{JP}{#3}\fi% - \if@PJLlang@enable@RU\CreateTheoremNumberedLikeAliasCounter{#2}{RU}{#3}\fi% - %--------------------------------------------------------------- - }% - \NewDocumentEnvironment{#2#3}{} - {\csname#2\csname\languagename ABBR\endcsname#3\endcsname}% - {\csname end#2\csname\languagename ABBR\endcsname#3\endcsname}% - }% - }% - \IfValueTF{#7}{% - \NameTheorem{#2}{#7}% - }{}% -}% -\NewDocumentCommand{\CreateTheoremNumberedLikeAliasCounter}{mmm}{% - \newaliascnt{#1#2#3}{#1#3}% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}{\newtheorem{#1#2#3}[{#1#2#3}]}% - \aliascntresetthe{#1#2#3}% - \ifcsname cref@#1#2#3@name\endcsname\else% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {\crefname{#1#2#3}}% - }% - \fi% - \ifcsname Cref@#1#2#3@name\endcsname\else% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {\Crefname{#1#2#3}}% - }% - \fi% -}% -\fi - -\ExplSyntaxOn - -\cs_new:Nn \PJLthm_exchange_i_iii_ii:nnn { #1 {#3} {#2} } -\cs_new:Nn \__PJLthm_languageprefix: {} -\cs_new:Nn \__PJLthm_countername: {} - -\msg_new:nnnn {PJLthm} - {Undefined Language Dependent Specification Class} - {\token_to_str:N \CreateTheorem :\ Value\ `\tl_to_str:n{#2}'\ for\ invalid\ key\ `#1'.} - {Providing\ Language-dependent\ specifications\ for\ element\ `#1'\ is\ currently\ not\ implemented.} - - -\NewDocumentCommand \CreateTheoremSetKeys { mm } { - \cs_set:Nn \__PJLthm_countername: {#1} - \keyval_parse:nnn { \PJLthm_exchange_i_iii_ii:nnn { \PJLthm_setlanguagespecificparameters:nn } {} } - { \PJLthm_setlanguagespecificparameters:nn } - { #2 } -} - -\cs_new_protected:Nn \PJLthm_setlanguagespecificparameters:nn { - \cs_set:Nx \__PJLthm_languageprefix: {\StrToABBR{#1}} - \exp_args:No \tl_if_empty:nTF {\__PJLthm_languageprefix:} - { \msg_error:nn { PJLthm } - { No~language~"\exp_not:n{#1}"~defined } - }% - {% - \keys_set:nn { PJLthm } { #2 } - }% -}% - -\keys_define:nn { PJLthm } { - crefname.code:n = \cs_if_exist:NTF \crefname { - \ifbool{@PJLthm@regionalref}{ - \exp_args:Nx \PJLthm@setcrefinnername{PJL\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - \exp_args:Nx \PJLthm@setcrefname{PJL\__PJLthm_countername: } - }{ - \exp_args:Nx \crefname {\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - } - }{}, - crefname.value_required:n = true, - Crefname.code:n = \cs_if_exist:NTF \Crefname { - \ifbool{@PJLthm@regionalref}{ - \exp_args:Nx \PJLthm@setCrefinnername{PJL\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - \exp_args:Nx \PJLthm@setCrefname{PJL\__PJLthm_countername: } - }{ - \exp_args:Nx \Crefname {\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - } - }{}, - Crefname.value_required:n = true, - name.code:n = \exp_args:Nx \cs_set:cpn {\__PJLthm_countername: name \__PJLthm_languageprefix:} {#1}, - name.value_required:n = true, - autorefname.code:n = \exp_args:Nx \cs_set:cpn {\__PJLthm_countername: \__PJLthm_languageprefix: autorefname} {#1}, - autorefname.value_required:n = true, - theoremheading.code:n= \exp_args:Nx \cs_set:cpn {\__PJLthm_countername: \__PJLthm_languageprefix: heading} {#1}, - theoremheading.value_required:n = true, - the.code:n= \exp_args:Nx \cs_set:cpn {the \__PJLthm_countername: \__PJLthm_languageprefix: } {#1}, - the.value_required:n = true, - % - % Define keys for more Language Dependent Specification Classes. - % - unknown.code:n = \msg_error:nnxx {PJLthm} - {Undefined Language Dependent Specification Class} - {\exp_args:No \exp_not:n \l_keys_key_str} - {\exp_not:n{#1}}, -} - -\ExplSyntaxOff - -\newcommand{\PJLthm@setcrefinnername}[3]{% - \expandafter\def\csname PJLthm@cref@#1@name\endcsname{#2}% - \expandafter\def\csname PJLthm@cref@#1@name@plural\endcsname{#3}% -} -\newcommand{\PJLthm@setCrefinnername}[3]{% - \expandafter\def\csname PJLthm@Cref@#1@name\endcsname{#2}% - \expandafter\def\csname PJLthm@Cref@#1@name@plural\endcsname{#3}% -} - -\newcommand{\PJLthm@setcrefname}[1]{% - \crefname{#1}% - {\csname PJLthm@cref@#1\csname\languagename ABBR\endcsname @name\endcsname}% - {\csname PJLthm@cref@#1\csname\languagename ABBR\endcsname @name@plural\endcsname}% -} -\newcommand{\PJLthm@setCrefname}[1]{% - \Crefname{#1}% - {\csname PJLthm@Cref@#1\csname\languagename ABBR\endcsname @name\endcsname}% - {\csname PJLthm@Cref@#1\csname\languagename ABBR\endcsname @name@plural\endcsname}% -} - -\ifbool{@PJLthm@complexname}{ - \NameTheorem{theorem}{ - EN = { - name = {Theorem}, - crefname = {theorem}{theorems}, - Crefname = {Theorem}{Theorems}, - }, - FR = { - name = {Théorème}, - crefname = {\crefthemark{le} théorème}{\crefthemark{les} théorèmes}, - Crefname = {Le théorème}{Les théorèmes}, - }, - DE = { - name = {Satz}, - crefname = {Satz}{Sätze}, - Crefname = {Satz}{Sätze}, - }, - IT = { - name = {Teorema}, - crefname = {\crefthemark{il} teorema}{\crefthemark{i} teoremi}, - Crefname = {Il teorema}{I teoremi}, - }, - PT = { - name = {Teorema}, - crefname = {\crefthemark{o} teorema}{\crefthemark{os} teoremas}, - Crefname = {O teorema}{Os teoremas}, - }, - BR = { - name = {Teorema}, - crefname = {\crefthemark{o} teorema}{\crefthemark{os} teoremas}, - Crefname = {O teorema}{Os teoremas}, - }, - ES = { - name = {Teorema}, - crefname = {\crefthemark{el} teorema}{los teoremas}, - Crefname = {El teorema}{Los teoremas}, - }, - CN = { - name = {定理}, - crefname = {定理}{定理}, - Crefname = {定理}{定理}, - }, - TC = { - name = {定理}, - crefname = {定理}{定理}, - Crefname = {定理}{定理}, - }, - JP = { - name = {定理}, - crefname = {定理}{定理}, - Crefname = {定理}{定理}, - }, - RU = { - name = {Теорема}, - crefname = {теорема}{теоремы}, - Crefname = {Теорема}{Теоремы}, - }, - } - \NameTheorem{lemma}{ - EN = { - name = {Lemma}, - crefname = {lemma}{Lemmas}, - Crefname = {Lemma}{Lemmas}, - }, - FR = { - name = {Lemme}, - crefname = {\crefthemark{le} lemme}{\crefthemark{les} lemmes}, - Crefname = {Le lemme}{Les lemmes}, - }, - DE = { - name = {Lemma}, - crefname = {Lemma}{Lemmata}, - Crefname = {Lemma}{Lemmata}, - }, - IT = { - name = {Lemma}, - crefname = {\crefthemark{il} lemma}{\crefthemark{i} lemmi}, - Crefname = {Il lemma}{I lemmi}, - }, - PT = { - name = {Lema}, - crefname = {\crefthemark{o} lema}{\crefthemark{os} lemas}, - Crefname = {O lema}{Os lemas}, - }, - BR = { - name = {Lema}, - crefname = {\crefthemark{o} lema}{\crefthemark{os} lemas}, - Crefname = {O lema}{Os lemas}, - }, - ES = { - name = {Lema}, - crefname = {\crefthemark{el} lema}{las lemas}, - Crefname = {El lema}{Las lemas}, - }, - CN = { - name = {引理}, - crefname = {引理}{引理}, - Crefname = {引理}{引理}, - }, - TC = { - name = {引理}, - crefname = {引理}{引理}, - Crefname = {引理}{引理}, - }, - JP = { - name = {補題}, - crefname = {補題}{補題}, - Crefname = {補題}{補題}, - }, - RU = { - name = {Лемма}, - crefname = {лемма}{леммы}, - Crefname = {Лемма}{Леммы}, - }, - } - \NameTheorem{proposition}{ - EN = { - name = {Proposition}, - crefname = {proposition}{propositions}, - Crefname = {Proposition}{Propositions}, - }, - FR = { - name = {Proposition}, - crefname = {\crefthemark{la} proposition}{\crefthemark{les} propositions}, - Crefname = {La proposition}{Les propositions}, - }, - DE = { - name = {Proposition}, - crefname = {Proposition}{Propositionen}, - Crefname = {Proposition}{Propositionen}, - }, - IT = { - name = {Proposizione}, - crefname = {\crefthemark{la} proposizione}{\crefthemark{le} proposte}, - Crefname = {La proposizione}{Le proposte}, - }, - PT = { - name = {Proposição}, - crefname = {\crefthemark{a} proposição}{\crefthemark{as} proposições}, - Crefname = {A proposição}{As proposições}, - }, - BR = { - name = {Proposição}, - crefname = {\crefthemark{a} proposição}{\crefthemark{as} proposições}, - Crefname = {A proposição}{As proposições}, - }, - ES = { - name = {Proposición}, - crefname = {la proposición}{las proposiciones}, - Crefname = {La proposición}{Las proposiciones}, - }, - CN = { - name = {命题}, - crefname = {命题}{命题}, - Crefname = {命题}{命题}, - }, - TC = { - name = {命題}, - crefname = {命題}{命題}, - Crefname = {命題}{命題}, - }, - JP = { - name = {命題}, - crefname = {命題}{命題}, - Crefname = {命題}{命題}, - }, - RU = { - name = {Предложение}, - crefname = {предложение}{предложения}, - Crefname = {Предложение}{Предложения}, - }, - } - \NameTheorem{corollary}{ - EN = { - name = {Corollary}, - crefname = {corollary}{corollaries}, - Crefname = {Corollary}{Corollaries}, - }, - FR = { - name = {Corollaire}, - crefname = {\crefthemark{le} corollaire}{\crefthemark{les} corollaires}, - Crefname = {Le corollaire}{Les corollaires}, - }, - DE = { - name = {Korollar}, - crefname = {Korollar}{Korollare}, - Crefname = {Korollar}{Korollare}, - }, - IT = { - name = {Corollario}, - crefname = {\crefthemark{il} corollario}{\crefthemark{i} corollari}, - Crefname = {Il corollario}{I corollari}, - }, - PT = { - name = {Corolário}, - crefname = {\crefthemark{o} corolário}{\crefthemark{os} corolários}, - Crefname = {O corolário}{Os corolários}, - }, - BR = { - name = {Corolário}, - crefname = {\crefthemark{o} corolário}{\crefthemark{os} corolários}, - Crefname = {O corolário}{Os corolários}, - }, - ES = { - name = {Corolario}, - crefname = {\crefthemark{el} corolario}{los corolarios}, - Crefname = {El corolario}{Los corolarios}, - }, - CN = { - name = {推论}, - crefname = {推论}{推论}, - Crefname = {推论}{推论}, - }, - TC = { - name = {推論}, - crefname = {推論}{推論}, - Crefname = {推論}{推論}, - }, - JP = { - name = {系}, - crefname = {系}{系}, - Crefname = {系}{系}, - }, - RU = { - name = {Следствие}, - crefname = {следствие}{следствия}, - Crefname = {Следствие}{Следствия}, - }, - } - \NameTheorem{property}{ - EN = { - name = {Property}, - crefname = {property}{properties}, - Crefname = {Property}{Properties}, - }, - FR = { - name = {Propriété}, - crefname = {\crefthemark{la} propriété}{\crefthemark{les} propriétés}, - Crefname = {La propriété}{Les propriétés}, - }, - DE = { - name = {Eigenschaft}, - crefname = {Eigenschaft}{Eigenschaften}, - Crefname = {Eigenschaft}{Eigenschaften}, - }, - IT = { - name = {Proprietà}, - crefname = {\crefthemark{la} proprietà}{\crefthemark{le} proprietà}, - Crefname = {La proprietà}{Le proprietà}, - }, - PT = { - name = {Propriedade}, - crefname = {\crefthemark{a} propriedade}{\crefthemark{as} propriedades}, - Crefname = {A propriedade}{As propriedades}, - }, - BR = { - name = {Propriedade}, - crefname = {\crefthemark{a} propriedade}{\crefthemark{as} propriedades}, - Crefname = {A propriedade}{As propriedades}, - }, - ES = { - name = {Propiedad}, - crefname = {la propiedad}{las propiedades}, - Crefname = {La propiedad}{Las propiedades}, - }, - CN = { - name = {性质}, - crefname = {性质}{性质}, - Crefname = {性质}{性质}, - }, - TC = { - name = {性質}, - crefname = {性質}{性質}, - Crefname = {性質}{性質}, - }, - JP = { - name = {性質}, - crefname = {性質}{性質}, - Crefname = {性質}{性質}, - }, - RU = { - name = {Имущество}, - crefname = {имущество}{имущества}, - Crefname = {Имущество}{Имущества}, - }, - } - \NameTheorem{fact}{ - EN = { - name = {Fact}, - crefname = {fact}{facts}, - Crefname = {Fact}{Facts}, - }, - FR = { - name = {Fait}, - crefname = {\crefthemark{le} fait}{\crefthemark{les} faits}, - Crefname = {Le fait}{Les faits}, - }, - DE = { - name = {Fakt}, - crefname = {Fakt}{Fakten}, - Crefname = {Fakt}{Fakten}, - }, - IT = { - name = {Fatto}, - crefname = {\crefthemark{il} fatto}{\crefthemark{i} fatti}, - Crefname = {Il fatto}{I fatti}, - }, - PT = { - name = {Facto}, - crefname = {\crefthemark{o} facto}{\crefthemark{os} factos}, - Crefname = {O facto}{Os factos}, - }, - BR = { - name = {Fato}, - crefname = {\crefthemark{o} fato}{\crefthemark{os} fatos}, - Crefname = {O fato}{Os fatos}, - }, - ES = { - name = {Hecho}, - crefname = {\crefthemark{el} hecho}{los hechos}, - Crefname = {El hecho}{Los hechos}, - }, - CN = { - name = {事实}, - crefname = {事实}{事实}, - Crefname = {事实}{事实}, - }, - TC = { - name = {事實}, - crefname = {事實}{事實}, - Crefname = {事實}{事實}, - }, - JP = { - name = {事実}, - crefname = {事実}{事実}, - Crefname = {事実}{事実}, - }, - RU = { - name = {Факт}, - crefname = {факт}{факты}, - Crefname = {Факт}{Факты}, - }, - } - \NameTheorem{conjecture}{ - EN = { - name = {Conjecture}, - crefname = {conjecture}{conjectures}, - Crefname = {Conjecture}{Conjectures}, - }, - FR = { - name = {Conjecture}, - crefname = {\crefthemark{la} conjecture}{\crefthemark{les} conjectures}, - Crefname = {La conjecture}{Les conjectures}, - }, - DE = { - name = {Vermutung}, - crefname = {Vermutung}{Vermutungen}, - Crefname = {Vermutung}{Vermutungen}, - }, - IT = { - name = {Congettura}, - crefname = {\crefthemark{la} congettura}{\crefthemark{le} congetture}, - Crefname = {La congettura}{Le congetture}, - }, - PT = { - name = {Conjetura}, - crefname = {\crefthemark{a} conjetura}{\crefthemark{as} conjeturas}, - Crefname = {A conjetura}{As conjeturas}, - }, - BR = { - name = {Conjectura}, - crefname = {\crefthemark{a} conjectura}{\crefthemark{as} conjecturas}, - Crefname = {A conjectura}{As conjecturas}, - }, - ES = { - name = {Conjetura}, - crefname = {la conjetura}{las conjeturas}, - Crefname = {La conjetura}{Las conjeturas}, - }, - CN = { - name = {猜想}, - crefname = {猜想}{猜想}, - Crefname = {猜想}{猜想}, - }, - TC = { - name = {猜想}, - crefname = {猜想}{猜想}, - Crefname = {猜想}{猜想}, - }, - JP = { - name = {予想}, - crefname = {予想}{予想}, - Crefname = {予想}{予想}, - }, - RU = { - name = {Гипотеза}, - crefname = {гипотеза}{гипотезы}, - Crefname = {Гипотеза}{Гипотезы}, - }, - } - \NameTheorem{definition}{ - EN = { - name = {Definition}, - crefname = {definition}{definitions}, - Crefname = {Definition}{Definitions}, - }, - FR = { - name = {Définition}, - crefname = {\crefthemark{la} définition}{\crefthemark{les} définitions}, - Crefname = {La définition}{Les définitions}, - }, - DE = { - name = {Definition}, - crefname = {Definition}{Definitionen}, - Crefname = {Definition}{Definitionen}, - }, - IT = { - name = {Definizione}, - crefname = {\crefthemark{la} definizione}{\crefthemark{le} definizioni}, - Crefname = {La definizione}{Le definizioni}, - }, - PT = { - name = {Definição}, - crefname = {\crefthemark{a} definição}{\crefthemark{as} definições}, - Crefname = {A definição}{As definições}, - }, - BR = { - name = {Definição}, - crefname = {\crefthemark{a} definição}{\crefthemark{as} definições}, - Crefname = {A definição}{As definições}, - }, - ES = { - name = {Definición}, - crefname = {la definición}{las definiciones}, - Crefname = {La definición}{Las definiciones}, - }, - CN = { - name = {定义}, - crefname = {定义}{定义}, - Crefname = {定义}{定义}, - }, - TC = { - name = {定義}, - crefname = {定義}{定義}, - Crefname = {定義}{定義}, - }, - JP = { - name = {定義}, - crefname = {定義}{定義}, - Crefname = {定義}{定義}, - }, - RU = { - name = {Определение}, - crefname = {определение}{определения}, - Crefname = {Определение}{Определения}, - }, - } - \NameTheorem{axiom}{ - EN = { - name = {Axiom}, - crefname = {axiom}{axioms}, - Crefname = {Axiom}{Axioms}, - }, - FR = { - name = {Axiome}, - crefname = {\crefthemark{l'}axiome}{\crefthemark{les} axiomes}, - Crefname = {L'axiome}{Les axiomes}, - }, - DE = { - name = {Axiom}, - crefname = {Axiom}{Axiome}, - Crefname = {Axiom}{Axiome}, - }, - IT = { - name = {Assioma}, - crefname = {\crefthemark{l'}assioma}{\crefthemark{gli} assiomi}, - Crefname = {L'assioma}{Gli assiomi}, - }, - PT = { - name = {Axioma}, - crefname = {\crefthemark{o} axioma}{\crefthemark{os} axiomas}, - Crefname = {O axioma}{Os axiomas}, - }, - BR = { - name = {Axioma}, - crefname = {\crefthemark{o} axioma}{\crefthemark{os} axiomas}, - Crefname = {O axioma}{Os axiomas}, - }, - ES = { - name = {Axioma}, - crefname = {\crefthemark{el} axioma}{los axiomas}, - Crefname = {El axioma}{Los axiomas}, - }, - CN = { - name = {公理}, - crefname = {公理}{公理}, - Crefname = {公理}{公理}, - }, - TC = { - name = {公理}, - crefname = {公理}{公理}, - Crefname = {公理}{公理}, - }, - JP = { - name = {公理}, - crefname = {公理}{公理}, - Crefname = {公理}{公理}, - }, - RU = { - name = {Аксиома}, - crefname = {аксиома}{аксиомы}, - Crefname = {Аксиома}{Аксиомы}, - }, - } - \NameTheorem{assumption}{ - EN = { - name = {Assumption}, - crefname = {assumption}{assumptions}, - Crefname = {Assumption}{Assumptions}, - }, - FR = { - name = {Supposition}, - crefname = {\crefthemark{la} supposition}{\crefthemark{les} suppositions}, - Crefname = {La supposition}{Les suppositions}, - }, - DE = { - name = {Annahme}, - crefname = {Annahme}{Annahmen}, - Crefname = {Annahme}{Annahmen}, - }, - IT = { - name = {Supposizione}, - crefname = {\crefthemark{la} supposizione}{\crefthemark{le} supposizioni}, - Crefname = {La supposizione}{Le supposizioni}, - }, - PT = { - name = {Suposição}, - crefname = {\crefthemark{a} suposição}{\crefthemark{as} suposições}, - Crefname = {A suposição}{As suposições}, - }, - BR = { - name = {Suposição}, - crefname = {\crefthemark{a} suposição}{\crefthemark{as} suposições}, - Crefname = {A suposição}{As suposições}, - }, - ES = { - name = {Suposición}, - crefname = {la suposición}{las suposiciones}, - Crefname = {La suposición}{Las suposiciones}, - }, - CN = { - name = {假定}, - crefname = {假定}{假定}, - Crefname = {假定}{假定}, - }, - TC = { - name = {假定}, - crefname = {假定}{假定}, - Crefname = {假定}{假定}, - }, - JP = { - name = {仮定}, - crefname = {仮定}{仮定}, - Crefname = {仮定}{仮定}, - }, - RU = { - name = {Предположение}, - crefname = {предположение}{предположения}, - Crefname = {Предположение}{Предположения}, - }, - } - \NameTheorem{convention}{ - EN = { - name = {Convention}, - crefname = {convention}{conventions}, - Crefname = {Convention}{Conventions}, - }, - FR = { - name = {Convention}, - crefname = {\crefthemark{la} convention}{\crefthemark{les} conventions}, - Crefname = {La convention}{Les conventions}, - }, - DE = { - name = {Konvention}, - crefname = {Konvention}{Konventionen}, - Crefname = {Konvention}{Konventionen}, - }, - IT = { - name = {Convenzione}, - crefname = {\crefthemark{la} convenzione}{\crefthemark{le} convenzioni}, - Crefname = {La convenzione}{Le convenzioni}, - }, - PT = { - name = {Convenção}, - crefname = {\crefthemark{a} convenção}{\crefthemark{as} convenções}, - Crefname = {A convenção}{As convenções}, - }, - BR = { - name = {Convenção}, - crefname = {\crefthemark{a} convenção}{\crefthemark{as} convenções}, - Crefname = {A convenção}{As convenções}, - }, - ES = { - name = {Convención}, - crefname = {la convención}{las convenciones}, - Crefname = {La convención}{Las convenciones}, - }, - CN = { - name = {约定}, - crefname = {约定}{约定}, - Crefname = {约定}{约定}, - }, - TC = { - name = {約定}, - crefname = {約定}{約定}, - Crefname = {約定}{約定}, - }, - JP = { - name = {慣例}, - crefname = {慣例}{慣例}, - Crefname = {慣例}{慣例}, - }, - RU = { - name = {Конвенция}, - crefname = {конвенция}{конвенции}, - Crefname = {Конвенция}{Конвенции}, - }, - } - \NameTheorem{hypothesis}{ - EN = { - name = {Hypothesis}, - crefname = {hypothesis}{hypotheses}, - Crefname = {Hypothesis}{Hypotheses}, - }, - FR = { - name = {Hypothèse}, - crefname = {\crefthemark{l'}hypothèse}{\crefthemark{les} hypothèses}, - Crefname = {L'hypothèse}{Les hypothèses}, - }, - DE = { - name = {Hypothese}, - crefname = {Hypothese}{Hypothesen}, - Crefname = {Hypothese}{Hypothesen}, - }, - IT = { - name = {Ipotesi}, - crefname = {\crefthemark{l'}ipotesi}{\crefthemark{le} ipotesi}, - Crefname = {L'ipotesi}{Le ipotesi}, - }, - PT = { - name = {Hipótese}, - crefname = {\crefthemark{a} hipótese}{\crefthemark{as} hipóteses}, - Crefname = {A hipótese}{As hipóteses}, - }, - BR = { - name = {Hipótese}, - crefname = {\crefthemark{a} hipótese}{\crefthemark{as} hipóteses}, - Crefname = {A hipótese}{As hipóteses}, - }, - ES = { - name = {Hipótesis}, - crefname = {la hipótesis}{las hipótesis}, - Crefname = {La hipótesis}{Las hipótesis}, - }, - CN = { - name = {假设}, - crefname = {假设}{假设}, - Crefname = {假设}{假设}, - }, - TC = { - name = {假設}, - crefname = {假設}{假設}, - Crefname = {假設}{假設}, - }, - JP = { - name = {仮設}, - crefname = {仮設}{仮設}, - Crefname = {仮設}{仮設}, - }, - RU = { - name = {Гипотеза}, - crefname = {гипотеза}{гипотезы}, - Crefname = {Гипотеза}{Гипотезы}, - }, - } - \NameTheorem{notation}{ - EN = { - name = {Notation}, - crefname = {notation}{notations}, - Crefname = {Notation}{Notations}, - }, - FR = { - name = {Notation}, - crefname = {\crefthemark{la} notation}{\crefthemark{les} notations}, - Crefname = {La notation}{Les notations}, - }, - DE = { - name = {Notation}, - crefname = {Notation}{Notationen}, - Crefname = {Notation}{Notationen}, - }, - IT = { - name = {Notazione}, - crefname = {\crefthemark{la} notazione}{\crefthemark{le} notazioni}, - Crefname = {La notazione}{Le notazioni}, - }, - PT = { - name = {Notação}, - crefname = {\crefthemark{a} notação}{\crefthemark{as} notações}, - Crefname = {A notação}{As notações}, - }, - BR = { - name = {Notação}, - crefname = {\crefthemark{a} notação}{\crefthemark{as} notações}, - Crefname = {A notação}{As notações}, - }, - ES = { - name = {Notación}, - crefname = {la notación}{las notaciones}, - Crefname = {La notación}{Las notaciones}, - }, - CN = { - name = {记号}, - crefname = {记号}{记号}, - Crefname = {记号}{记号}, - }, - TC = { - name = {記號}, - crefname = {記號}{記號}, - Crefname = {記號}{記號}, - }, - JP = { - name = {記法}, - crefname = {記法}{記法}, - Crefname = {記法}{記法}, - }, - RU = { - name = {Нотация}, - crefname = {нотация}{нотации}, - Crefname = {Нотация}{Нотации}, - }, - } - \NameTheorem{example}{ - EN = { - name = {Example}, - crefname = {example}{examples}, - Crefname = {Example}{Examples}, - }, - FR = { - name = {Exemple}, - crefname = {\crefthemark{l'}example}{\crefthemark{les} examples}, - Crefname = {L'example}{Les examples}, - }, - DE = { - name = {Beispiel}, - crefname = {Beispiel}{Beispiele}, - Crefname = {Beispiel}{Beispiele}, - }, - IT = { - name = {Esempio}, - crefname = {\crefthemark{l'}esempio}{\crefthemark{gli} esempi}, - Crefname = {L'esempio}{Gli esempi}, - }, - PT = { - name = {Exemplo}, - crefname = {\crefthemark{o} exemplo}{\crefthemark{os} exemplos}, - Crefname = {O exemplo}{Os exemplos}, - }, - BR = { - name = {Exemplo}, - crefname = {\crefthemark{o} exemplo}{\crefthemark{os} exemplos}, - Crefname = {O exemplo}{Os exemplos}, - }, - ES = { - name = {Ejemplo}, - crefname = {\crefthemark{el} ejemplo}{los ejemplos}, - Crefname = {El ejemplo}{Los ejemplos}, - }, - CN = { - name = {例}, - crefname = {例}{例}, - Crefname = {例}{例}, - }, - TC = { - name = {例}, - crefname = {例}{例}, - Crefname = {例}{例}, - }, - JP = { - name = {例}, - crefname = {例}{例}, - Crefname = {例}{例}, - }, - RU = { - name = {Пример}, - crefname = {пример}{примеры}, - Crefname = {Пример}{Примеры}, - }, - } - \NameTheorem{problem}{ - EN = { - name = {Problem}, - crefname = {problem}{problems}, - Crefname = {Problem}{Problems}, - }, - FR = { - name = {Problème}, - crefname = {\crefthemark{le} problème}{\crefthemark{les} problèmes}, - Crefname = {Le problème}{Les problèmes}, - }, - DE = { - name = {Problem}, - crefname = {Problem}{Probleme}, - Crefname = {Problem}{Probleme}, - }, - IT = { - name = {Problema}, - crefname = {\crefthemark{il} problema}{\crefthemark{i} problemi}, - Crefname = {Il problema}{I problemi}, - }, - PT = { - name = {Problema}, - crefname = {\crefthemark{o} problema}{\crefthemark{os} problemas}, - Crefname = {O problema}{Os problemas}, - }, - BR = { - name = {Problema}, - crefname = {\crefthemark{o} problema}{\crefthemark{os} problemas}, - Crefname = {O problema}{Os problemas}, - }, - ES = { - name = {Problema}, - crefname = {\crefthemark{el} problema}{los problemas}, - Crefname = {El problema}{Los problemas}, - }, - CN = { - name = {问题}, - crefname = {问题}{问题}, - Crefname = {问题}{问题}, - }, - TC = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - JP = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - RU = { - name = {Проблема}, - crefname = {проблема}{проблемы}, - Crefname = {Проблема}{Проблемы}, - }, - } - \NameTheorem{question}{ - EN = { - name = {Question}, - crefname = {question}{questions}, - Crefname = {Question}{Questions}, - }, - FR = { - name = {Question}, - crefname = {\crefthemark{la} question}{\crefthemark{les} questions}, - Crefname = {La question}{Les questions}, - }, - DE = { - name = {Frage}, - crefname = {Frage}{Fragen}, - Crefname = {Frage}{Fragen}, - }, - IT = { - name = {Domanda}, - crefname = {\crefthemark{la} domanda}{\crefthemark{le} domande}, - Crefname = {La domanda}{Le domande}, - }, - PT = { - name = {Pergunta}, - crefname = {\crefthemark{a} pergunta}{\crefthemark{as} perguntas}, - Crefname = {A pergunta}{As perguntas}, - }, - BR = { - name = {Pergunta}, - crefname = {\crefthemark{a} pergunta}{\crefthemark{as} perguntas}, - Crefname = {A pergunta}{As perguntas}, - }, - ES = { - name = {Pregunta}, - crefname = {la pregunta}{las preguntas}, - Crefname = {La pregunta}{Las preguntas}, - }, - CN = { - name = {问题}, - crefname = {问题}{问题}, - Crefname = {问题}{问题}, - }, - TC = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - JP = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - RU = { - name = {Вопрос}, - crefname = {вопрос}{вопросы}, - Crefname = {Вопрос}{Вопросы}, - }, - } - \NameTheorem{exercise}{ - EN = { - name = {Exercise}, - crefname = {exercise}{exercises}, - Crefname = {Exercise}{Exercises}, - }, - FR = { - name = {Exercice}, - crefname = {\crefthemark{l'}exercice}{\crefthemark{les} exercices}, - Crefname = {L'exercice}{Les exercices}, - }, - DE = { - name = {Übung}, - crefname = {Übung}{Übungen}, - Crefname = {Übung}{Übungen}, - }, - IT = { - name = {Esercizio}, - crefname = {\crefthemark{l'}esercizio}{\crefthemark{gli} esercizi}, - Crefname = {L'esercizio}{Gli esercizi}, - }, - PT = { - name = {Exercício}, - crefname = {\crefthemark{o} exercício}{\crefthemark{os} exercícios}, - Crefname = {O exercício}{Os exercícios}, - }, - BR = { - name = {Exercício}, - crefname = {\crefthemark{o} exercício}{\crefthemark{os} exercícios}, - Crefname = {O exercício}{Os exercícios}, - }, - ES = { - name = {Ejercicio}, - crefname = {\crefthemark{el} ejercicio}{los ejercicios}, - Crefname = {El ejercicio}{Los ejercicios}, - }, - CN = { - name = {练习}, - crefname = {练习}{练习}, - Crefname = {练习}{练习}, - }, - TC = { - name = {練習}, - crefname = {練習}{練習}, - Crefname = {練習}{練習}, - }, - JP = { - name = {練習}, - crefname = {練習}{練習}, - Crefname = {練習}{練習}, - }, - RU = { - name = {Упражнение}, - crefname = {упражнение}{упражнения}, - Crefname = {Упражнение}{Упражнения}, - }, - } - \NameTheorem{remark}{ - EN = { - name = {Remark}, - crefname = {remark}{remarks}, - Crefname = {Remark}{Remarks}, - }, - FR = { - name = {Remarque}, - crefname = {\crefthemark{la} remarque}{\crefthemark{les} remarques}, - Crefname = {La remarque}{Les remarques}, - }, - DE = { - name = {Bemerkung}, - crefname = {Bemerkung}{Bemerkungen}, - Crefname = {Bemerkung}{Bemerkungen}, - }, - IT = { - name = {Commento}, - crefname = {\crefthemark{il} commento}{\crefthemark{i} commenti}, - Crefname = {Il commento}{I commenti}, - }, - PT = { - name = {Comentário}, - crefname = {\crefthemark{o} comentário}{\crefthemark{os} comentários}, - Crefname = {O comentário}{Os comentários}, - }, - BR = { - name = {Comentário}, - crefname = {\crefthemark{o} comentário}{\crefthemark{os} comentários}, - Crefname = {O comentário}{Os comentários}, - }, - ES = { - name = {Comentario}, - crefname = {\crefthemark{el} comentario}{los comentarios}, - Crefname = {El comentario}{Los comentarios}, - }, - CN = { - name = {备注}, - crefname = {备注}{备注}, - Crefname = {备注}{备注}, - }, - TC = { - name = {備註}, - crefname = {備註}{備註}, - Crefname = {備註}{備註}, - }, - JP = { - name = {注釈}, - crefname = {注釈}{注釈}, - Crefname = {注釈}{注釈}, - }, - RU = { - name = {Замечание}, - crefname = {замечание}{замечания}, - Crefname = {Замечание}{Замечания}, - }, - } - \NameTheorem{observation}{ - EN = { - name = {Observation}, - crefname = {observation}{observations}, - Crefname = {Observation}{Observations}, - }, - FR = { - name = {Observation}, - crefname = {\crefthemark{la} observation}{\crefthemark{les} observations}, - Crefname = {La observation}{Les observations}, - }, - DE = { - name = {Beobachtung}, - crefname = {Beobachtung}{Beobachtungen}, - Crefname = {Beobachtung}{Beobachtungen}, - }, - IT = { - name = {Osservazione}, - crefname = {\crefthemark{l'}osservazione}{\crefthemark{le} osservazioni}, - Crefname = {L'osservazione}{Le osservazioni}, - }, - PT = { - name = {Observação}, - crefname = {\crefthemark{a} observação}{\crefthemark{as} observações}, - Crefname = {A observação}{As observações}, - }, - BR = { - name = {Observação}, - crefname = {\crefthemark{a} observação}{\crefthemark{as} observações}, - Crefname = {A observação}{As observações}, - }, - ES = { - name = {Observación}, - crefname = {la observación}{las observaciones}, - Crefname = {La observación}{Las observaciones}, - }, - CN = { - name = {观察}, - crefname = {观察}{观察}, - Crefname = {观察}{观察}, - }, - TC = { - name = {觀察}, - crefname = {觀察}{觀察}, - Crefname = {觀察}{觀察}, - }, - JP = { - name = {観察}, - crefname = {観察}{観察}, - Crefname = {観察}{観察}, - }, - RU = { - name = {Наблюдение}, - crefname = {наблюдение}{наблюдения}, - Crefname = {Наблюдение}{Наблюдения}, - }, - } - \NameTheorem{definition-proposition}{ - EN = { - name = {\definitionnameEN-\propositionnameEN}, - crefname = {definition-proposition}{definitions-propositions}, - Crefname = {Definition-proposition}{Definitions-propositions}, - }, - FR = { - name = {\definitionnameFR-\propositionnameFR}, - crefname = {\crefthemark{la} définition-proposition}{\crefthemark{les} définitions-propositions}, - Crefname = {La définition-proposition}{Les définitions-propositions}, - }, - DE = { - name = {\definitionnameDE-\propositionnameDE}, - crefname = {Definition-Proposition}{Definitionen-Propositionen}, - Crefname = {Definition-Proposition}{Definitionen-Propositionen}, - }, - IT = { - name = {\definitionnameIT-\propositionnameIT}, - crefname = {\crefthemark{la} definizione-proposizione}{\crefthemark{le} definizioni-proposte}, - Crefname = {La definizione-proposizione}{Le definizioni-proposte}, - }, - PT = { - name = {\definitionnamePT-\propositionnamePT}, - crefname = {\crefthemark{a} definição-proposição}{\crefthemark{as} definições-proposições}, - Crefname = {A definição-proposição}{As definições-proposições}, - }, - BR = { - name = {\definitionnameBR-\propositionnameBR}, - crefname = {\crefthemark{a} definição-proposição}{\crefthemark{as} definições-proposições}, - Crefname = {A definição-proposição}{As definições-proposições}, - }, - ES = { - name = {\definitionnameES-\propositionnameES}, - crefname = {la definición-proposición}{las definiciones-proposiciones}, - Crefname = {La definición-proposición}{Las definiciones-proposiciones}, - }, - CN = { - name = {\definitionnameCN-\propositionnameCN}, - crefname = {\definitionnameCN-\propositionnameCN}{\definitionnameCN-\propositionnameCN}, - Crefname = {\definitionnameCN-\propositionnameCN}{\definitionnameCN-\propositionnameCN}, - }, - TC = { - name = {\definitionnameTC-\propositionnameTC}, - crefname = {\definitionnameTC-\propositionnameTC}{\definitionnameTC-\propositionnameTC}, - Crefname = {\definitionnameTC-\propositionnameTC}{\definitionnameTC-\propositionnameTC}, - }, - JP = { - name = {\definitionnameJP-\propositionnameJP}, - crefname = {\definitionnameJP-\propositionnameJP}{\definitionnameJP-\propositionnameJP}, - Crefname = {\definitionnameJP-\propositionnameJP}{\definitionnameJP-\propositionnameJP}, - }, - RU = { - name = {\definitionnameRU-\propositionnameRU}, - crefname = {определение-предложение}{определения-предложения}, - Crefname = {Определение-предложение}{Определения-предложение}, - }, - } - \NameTheorem{definition-theorem}{ - EN = { - name = {\definitionnameEN-\theoremnameEN}, - crefname = {definition-theorem}{definitions-theorems}, - Crefname = {Definition-theorem}{Definitions-theorems}, - }, - FR = { - name = {\definitionnameFR-\theoremnameFR}, - crefname = {\crefthemark{la} définition-théorème}{\crefthemark{les} définitions-théorèmes}, - Crefname = {La définition-théorème}{Les définitions-théorèmes}, - }, - DE = { - name = {\definitionnameDE-\theoremnameDE}, - crefname = {Definition-Satz}{Definitionen-Sätze}, - Crefname = {Definition-Satz}{Definitionen-Sätze}, - }, - IT = { - name = {\definitionnameIT-\theoremnameIT}, - crefname = {\crefthemark{la} definizione-teorema}{\crefthemark{le} definizioni-teoremi}, - Crefname = {La definizione-teorema}{Le definizioni-teoremi}, - }, - PT = { - name = {\definitionnamePT-\theoremnamePT}, - crefname = {\crefthemark{a} definição-teorema}{\crefthemark{as} definições-teoremas}, - Crefname = {A definição-teorema}{As definições-teoremas}, - }, - BR = { - name = {\definitionnameBR-\theoremnameBR}, - crefname = {\crefthemark{a} definição-teorema}{\crefthemark{as} definições-teoremas}, - Crefname = {A definição-teorema}{As definições-teoremas}, - }, - ES = { - name = {\definitionnameES-\theoremnameES}, - crefname = {la definición-teorema}{las definiciones-teoremas}, - Crefname = {La definición-teorema}{Las definiciones-teoremas}, - }, - CN = { - name = {\definitionnameCN-\theoremnameCN}, - crefname = {\definitionnameCN-\theoremnameCN}{\definitionnameCN-\theoremnameCN}, - Crefname = {\definitionnameCN-\theoremnameCN}{\definitionnameCN-\theoremnameCN}, - }, - TC = { - name = {\definitionnameTC-\theoremnameTC}, - crefname = {\definitionnameTC-\theoremnameTC}{\definitionnameTC-\theoremnameTC}, - Crefname = {\definitionnameTC-\theoremnameTC}{\definitionnameTC-\theoremnameTC}, - }, - JP = { - name = {\definitionnameJP-\theoremnameJP}, - crefname = {\definitionnameJP-\theoremnameJP}{\definitionnameJP-\theoremnameJP}, - Crefname = {\definitionnameJP-\theoremnameJP}{\definitionnameJP-\theoremnameJP}, - }, - RU = { - name = {\definitionnameRU-\theoremnameRU}, - crefname = {определение-теорема}{определения-теоремы}, - Crefname = {Определение-теорема}{Определения-теорема}, - }, - } -}{ - \def\theoremnameEN{{Theorem}} - \def\lemmanameEN{{Lemma}} - \def\propositionnameEN{{Proposition}} - \def\corollarynameEN{{Corollary}} - \def\propertynameEN{{Property}} - \def\factnameEN{{Fact}} - \def\conjecturenameEN{{Conjecture}} - \def\definitionnameEN{{Definition}} - \def\axiomnameEN{{Axiom}} - \def\assumptionnameEN{{Assumption}} - \def\conventionnameEN{{Convention}} - \def\hypothesisnameEN{{Hypothesis}} - \def\notationnameEN{{Notation}} - \def\examplenameEN{{Example}} - \def\problemnameEN{{Problem}} - \def\questionnameEN{{Question}} - \def\exercisenameEN{{Exercise}} - \def\remarknameEN{{Remark}} - \def\observationnameEN{{Observation}} - \expandafter\def\csname definition-propositionnameEN\endcsname{\definitionnameEN-\propositionnameEN} - \expandafter\def\csname definition-theoremnameEN\endcsname{\definitionnameEN-\theoremnameEN} - - \def\theoremnameFR{{Théorème}} - \def\lemmanameFR{{Lemme}} - \def\propositionnameFR{{Proposition}} - \def\corollarynameFR{{Corollaire}} - \def\propertynameFR{{Propriété}} - \def\factnameFR{{Fait}} - \def\conjecturenameFR{{Conjecture}} - \def\definitionnameFR{{Définition}} - \def\axiomnameFR{{Axiome}} - \def\assumptionnameFR{{Supposition}} - \def\conventionnameFR{{Convention}} - \def\hypothesisnameFR{{Hypothèse}} - \def\notationnameFR{{Notation}} - \def\examplenameFR{{Exemple}} - \def\problemnameFR{{Problème}} - \def\questionnameFR{{Question}} - \def\exercisenameFR{{Exercice}} - \def\remarknameFR{{Remarque}} - \def\observationnameFR{{Observation}} - \expandafter\def\csname definition-propositionnameFR\endcsname{\definitionnameFR-\propositionnameFR} - \expandafter\def\csname definition-theoremnameFR\endcsname{\definitionnameFR-\theoremnameFR} - - \def\theoremnameDE{{Satz}} - \def\lemmanameDE{{Lemma}} - \def\propositionnameDE{{Proposition}} - \def\corollarynameDE{{Korollar}} - \def\propertynameDE{{Eigenschaft}} - \def\factnameDE{{Fakt}} - \def\conjecturenameDE{{Vermutung}} - \def\definitionnameDE{{Definition}} - \def\axiomnameDE{{Axiom}} - \def\assumptionnameDE{{Annahme}} - \def\conventionnameDE{{Konvention}} - \def\hypothesisnameDE{{Hypothese}} - \def\notationnameDE{{Notation}} - \def\examplenameDE{{Beispiel}} - \def\problemnameDE{{Problem}} - \def\questionnameDE{{Frage}} - \def\exercisenameDE{{Übung}} - \def\remarknameDE{{Bemerkung}} - \def\observationnameDE{{Beobachtung}} - \expandafter\def\csname definition-propositionnameDE\endcsname{\definitionnameDE-\propositionnameDE} - \expandafter\def\csname definition-theoremnameDE\endcsname{\definitionnameDE-\theoremnameDE} - - \def\theoremnameIT{{Teorema}} - \def\lemmanameIT{{Lemma}} - \def\propositionnameIT{{Proposizione}} - \def\corollarynameIT{{Corollario}} - \def\propertynameIT{{Proprietà}} - \def\factnameIT{{Fatto}} - \def\conjecturenameIT{{Congettura}} - \def\definitionnameIT{{Definizione}} - \def\axiomnameIT{{Assioma}} - \def\assumptionnameIT{{Supposizione}} - \def\conventionnameIT{{Convenzione}} - \def\hypothesisnameIT{{Ipotesi}} - \def\notationnameIT{{Notazione}} - \def\examplenameIT{{Esempio}} - \def\problemnameIT{{Problema}} - \def\questionnameIT{{Domanda}} - \def\exercisenameIT{{Esercizio}} - \def\remarknameIT{{Commento}} - \def\observationnameIT{{Osservazione}} - \expandafter\def\csname definition-propositionnameIT\endcsname{\definitionnameIT-\propositionnameIT} - \expandafter\def\csname definition-theoremnameIT\endcsname{\definitionnameIT-\theoremnameIT} - - \def\theoremnamePT{{Teorema}} - \def\lemmanamePT{{Lema}} - \def\propositionnamePT{{Proposição}} - \def\corollarynamePT{{Corolário}} - \def\propertynamePT{{Propriedade}} - \def\factnamePT{{Facto}} - \def\conjecturenamePT{{Conjetura}} - \def\definitionnamePT{{Definição}} - \def\axiomnamePT{{Axioma}} - \def\assumptionnamePT{{Suposição}} - \def\conventionnamePT{{Convenção}} - \def\hypothesisnamePT{{Hipótese}} - \def\notationnamePT{{Notação}} - \def\examplenamePT{{Exemplo}} - \def\problemnamePT{{Problema}} - \def\questionnamePT{{Pergunta}} - \def\exercisenamePT{{Exercício}} - \def\remarknamePT{{Comentário}} - \def\observationnamePT{{Observação}} - \expandafter\def\csname definition-propositionnamePT\endcsname{\definitionnamePT-\propositionnamePT} - \expandafter\def\csname definition-theoremnamePT\endcsname{\definitionnamePT-\theoremnamePT} - - \def\theoremnameBR{{Teorema}} - \def\lemmanameBR{{Lema}} - \def\propositionnameBR{{Proposição}} - \def\corollarynameBR{{Corolário}} - \def\propertynameBR{{Propriedade}} - \def\factnameBR{{Fato}} - \def\conjecturenameBR{{Conjectura}} - \def\definitionnameBR{{Definição}} - \def\axiomnameBR{{Axioma}} - \def\assumptionnameBR{{Suposição}} - \def\conventionnameBR{{Convenção}} - \def\hypothesisnameBR{{Hipótese}} - \def\notationnameBR{{Notação}} - \def\examplenameBR{{Exemplo}} - \def\problemnameBR{{Problema}} - \def\questionnameBR{{Pergunta}} - \def\exercisenameBR{{Exercício}} - \def\remarknameBR{{Comentário}} - \def\observationnameBR{{Observação}} - \expandafter\def\csname definition-propositionnameBR\endcsname{\definitionnameBR-\propositionnameBR} - \expandafter\def\csname definition-theoremnameBR\endcsname{\definitionnameBR-\theoremnameBR} - - \def\theoremnameES{{Teorema}} - \def\lemmanameES{{Lema}} - \def\propositionnameES{{Proposición}} - \def\corollarynameES{{Corolario}} - \def\propertynameES{{Propiedad}} - \def\factnameES{{Hecho}} - \def\conjecturenameES{{Conjetura}} - \def\definitionnameES{{Definición}} - \def\axiomnameES{{Axioma}} - \def\assumptionnameES{{Suposición}} - \def\conventionnameES{{Convención}} - \def\hypothesisnameES{{Hipótesis}} - \def\notationnameES{{Notación}} - \def\examplenameES{{Ejemplo}} - \def\problemnameES{{Problema}} - \def\questionnameES{{Pregunta}} - \def\exercisenameES{{Ejercicio}} - \def\remarknameES{{Comentario}} - \def\observationnameES{{Observación}} - \expandafter\def\csname definition-propositionnameES\endcsname{\definitionnameES-\propositionnameES} - \expandafter\def\csname definition-theoremnameES\endcsname{\definitionnameES-\theoremnameES} - - \def\theoremnameCN{{定理}} - \def\lemmanameCN{{引理}} - \def\propositionnameCN{{命题}} - \def\corollarynameCN{{推论}} - \def\propertynameCN{{性质}} - \def\factnameCN{{事实}} - \def\conjecturenameCN{{猜想}} - \def\definitionnameCN{{定义}} - \def\axiomnameCN{{公理}} - \def\assumptionnameCN{{假定}} - \def\conventionnameCN{{约定}} - \def\hypothesisnameCN{{假设}} - \def\notationnameCN{{记号}} - \def\examplenameCN{{例}} - \def\problemnameCN{{问题}} - \def\questionnameCN{{问题}} - \def\exercisenameCN{{练习}} - \def\remarknameCN{{备注}} - \def\observationnameCN{{观察}} - \expandafter\def\csname definition-propositionnameCN\endcsname{\definitionnameCN-\propositionnameCN} - \expandafter\def\csname definition-theoremnameCN\endcsname{\definitionnameCN-\theoremnameCN} - - \def\theoremnameTC{{定理}} - \def\lemmanameTC{{引理}} - \def\propositionnameTC{{命題}} - \def\corollarynameTC{{推論}} - \def\propertynameTC{{性質}} - \def\factnameTC{{事實}} - \def\conjecturenameTC{{猜想}} - \def\definitionnameTC{{定義}} - \def\axiomnameTC{{公理}} - \def\assumptionnameTC{{假定}} - \def\conventionnameTC{{約定}} - \def\hypothesisnameTC{{假設}} - \def\notationnameTC{{記號}} - \def\examplenameTC{{例}} - \def\problemnameTC{{問題}} - \def\questionnameTC{{問題}} - \def\exercisenameTC{{練習}} - \def\remarknameTC{{備註}} - \def\observationnameTC{{觀察}} - \expandafter\def\csname definition-propositionnameTC\endcsname{\definitionnameTC-\propositionnameTC} - \expandafter\def\csname definition-theoremnameTC\endcsname{\definitionnameTC-\theoremnameTC} - - \def\theoremnameJP{{定理}} - \def\lemmanameJP{{補題}} - \def\propositionnameJP{{命題}} - \def\corollarynameJP{{系}} - \def\propertynameJP{{性質}} - \def\factnameJP{{事実}} - \def\conjecturenameJP{{予想}} - \def\definitionnameJP{{定義}} - \def\axiomnameJP{{公理}} - \def\assumptionnameJP{{仮定}} - \def\conventionnameJP{{慣例}} - \def\hypothesisnameJP{{仮設}} - \def\notationnameJP{{記法}} - \def\examplenameJP{{例}} - \def\problemnameJP{{問題}} - \def\questionnameJP{{問題}} - \def\exercisenameJP{{練習}} - \def\remarknameJP{{注釈}} - \def\observationnameJP{{観察}} - \expandafter\def\csname definition-propositionnameJP\endcsname{\definitionnameJP-\propositionnameJP} - \expandafter\def\csname definition-theoremnameJP\endcsname{\definitionnameJP-\theoremnameJP} - - \def\theoremnameRU{{Теорема}} % Теоре́ма - \def\lemmanameRU{{Лемма}} % Ле́мма - \def\propositionnameRU{{Предложение}} % Предложе́ние - \def\corollarynameRU{{Следствие}} % Сле́дствие - \def\propertynameRU{{Имущество}} % Иму́щество - \def\factnameRU{{Факт}} - \def\conjecturenameRU{{Гипотеза}} % Гипо́теза % Конъектура Конъекту́ра - \def\definitionnameRU{{Определение}} % Определе́ние - \def\axiomnameRU{{Аксиома}} % Аксио́ма - \def\assumptionnameRU{{Предположение}} % Предположе́ние - \def\conventionnameRU{{Конвенция}} % Конве́нция - \def\hypothesisnameRU{{Гипотеза}} % Гипо́теза - \def\notationnameRU{{Нотация}} % Нота́ция - \def\examplenameRU{{Пример}} % Приме́р - \def\problemnameRU{{Проблема}} % Пробле́ма - \def\questionnameRU{{Вопрос}} % Вопро́с - \def\exercisenameRU{{Упражнение}} % Упражне́ние - \def\remarknameRU{{Замечание}} % Замеча́ние - \def\observationnameRU{{Наблюдение}} % Наблюде́ние - \expandafter\def\csname definition-propositionnameRU\endcsname{\definitionnameRU-\propositionnameRU} - \expandafter\def\csname definition-theoremnameRU\endcsname{\definitionnameRU-\theoremnameRU} -} - -\newif\ifPJLthm@IsBook -\ifdefined\c@chapter\PJLthm@IsBooktrue\else\PJLthm@IsBookfalse\fi -\ifbool{PJLthm@IsBook}{ - \newaliascnt{PJLthm@highest}{chapter} -}{ - \newaliascnt{PJLthm@highest}{section} -} -\NewDocumentCommand{\CreateTheorem@thmnum}{m}{ - \expandafter\ifstrempty\expandafter{\@PJLthm@thmnum}{ - \CreateTheorem{#1}<PJLthm@highest> - }{ - \expandafter\ifstrequal\expandafter{\@PJLthm@thmnum}{PJL@thmnum@default}{ - \CreateTheorem{#1} - }{ - \CreateTheorem{#1}<\@PJLthm@thmnum> - } - } -} - -\def\PJLthm@definethms{ -\if@PJLthm@nothms\else -\if@PJLthm@nothmnum -\CreateTheorem*{theorem} -\CreateTheorem*{lemma} -\CreateTheorem*{proposition} -\CreateTheorem*{corollary} -\CreateTheorem*{definition-proposition} -\CreateTheorem*{definition-theorem} -\CreateTheorem*{property} -\CreateTheorem*{fact} -\CreateTheorem*{conjecture} -\else -\CreateTheorem@thmnum{theorem} -\CreateTheorem{lemma}[theorem] -\CreateTheorem{proposition}[theorem] -\CreateTheorem{corollary}[theorem] -\CreateTheorem{definition-proposition}[theorem] -\CreateTheorem{definition-theorem}[theorem] -\CreateTheorem{property}[theorem] -\CreateTheorem{fact}[theorem] -\CreateTheorem{conjecture}[theorem] -\fi -\CreateTheorem*{theorem*} -\CreateTheorem*{lemma*} -\CreateTheorem*{proposition*} -\CreateTheorem*{corollary*} -\CreateTheorem*{definition-proposition*} -\CreateTheorem*{definition-theorem*} -\CreateTheorem*{property*} -\CreateTheorem*{fact*} -\CreateTheorem*{conjecture*} - -\theoremstyle{definition} -\if@PJLthm@nothmnum -\CreateTheorem*{definition} -\CreateTheorem*{axiom} -\CreateTheorem*{assumption} -\CreateTheorem*{convention} -\CreateTheorem*{hypothesis} -\CreateTheorem*{notation} -\CreateTheorem*{example} -\CreateTheorem*{problem} -\CreateTheorem*{question} -\CreateTheorem*{exercise} -\else -\CreateTheorem{definition}[theorem] -\CreateTheorem{axiom}[theorem] -\CreateTheorem{assumption}[theorem] -\CreateTheorem{convention}[theorem] -\CreateTheorem{hypothesis}[theorem] -\CreateTheorem{notation}[theorem] -\CreateTheorem{example}[theorem] -\CreateTheorem{problem}[theorem] -\CreateTheorem{question}[theorem] -\CreateTheorem{exercise}[theorem] -\fi -\CreateTheorem*{definition*} -\CreateTheorem*{axiom*} -\CreateTheorem*{assumption*} -\CreateTheorem*{convention*} -\CreateTheorem*{hypothesis*} -\CreateTheorem*{notation*} -\CreateTheorem*{example*} -\CreateTheorem*{problem*} -\CreateTheorem*{question*} -\CreateTheorem*{exercise*} - -\theoremstyle{remark} -\if@PJLthm@nothmnum -\CreateTheorem*{remark} -\CreateTheorem*{observation} -\else -\CreateTheorem@thmnum{remark} -\CreateTheorem@thmnum{observation} -\fi -\CreateTheorem*{remark*} -\CreateTheorem*{observation*} - -\theoremstyle{definition} -\fi - -\expandafter\ifstrempty\expandafter{\@PJLthm@thmnum}{ - \numberwithin{equation}{PJLthm@highest} -}{ - \expandafter\ifstrequal\expandafter{\@PJLthm@thmnum}{PJL@thmnum@default}{ - }{ - \numberwithin{equation}{\@PJLthm@thmnum} - } -} - -} % End of \PJLthm@definethms - -\if@PJLthm@delaythms - \AtEndPreamble{\PJLthm@definethms} -\else - \PJLthm@definethms -\fi - -\gappto{\PJLlang@langconfig@CN}{% - \crefname{equation}{式}{式}% - \crefname{figure}{图}{图}% - \crefname{table}{表}{表}% - \crefname{appendix}{附录}{附录}% - \Crefname{equation}{式}{式}% - \Crefname{figure}{图}{图}% - \Crefname{table}{表}{表}% - \Crefname{appendix}{附录}{附录}% - \def\crefpairconjunction{、}% - \def\crefmiddleconjunction{、}% - \def\creflastconjunction{~和~}% - \def\crefpairgroupconjunction{~和~}% - \def\crefmiddlegroupconjunction{、}% - \def\creflastgroupconjunction{~以及~}% - \def\crefrangeconjunction{~}% -} -\gappto{\PJLlang@langconfig@TC}{% - \crefname{equation}{式}{式}% - \crefname{figure}{圖}{圖}% - \crefname{table}{表}{表}% - \crefname{appendix}{附錄}{附錄}% - \Crefname{equation}{式}{式}% - \Crefname{figure}{圖}{圖}% - \Crefname{table}{表}{表}% - \Crefname{appendix}{附錄}{附錄}% - \def\crefpairconjunction{、}% - \def\crefmiddleconjunction{、}% - \def\creflastconjunction{~與~}% - \def\crefpairgroupconjunction{~與~}% - \def\crefmiddlegroupconjunction{、}% - \def\creflastgroupconjunction{~以及~}% - \def\crefrangeconjunction{~}% -} -\gappto{\PJLlang@langconfig@JP}{% - \crefname{equation}{式}{式}% - \crefname{figure}{図}{図}% - \crefname{table}{表}{表}% - \Crefname{appendix}{付録}{付録}% - \Crefname{equation}{式}{式}% - \Crefname{figure}{図}{図}% - \Crefname{table}{表}{表}% - \Crefname{appendix}{付録}{付録}% - \def\crefpairconjunction{~と~}% - \def\crefmiddleconjunction{~と~}% - \def\creflastconjunction{~と~}% - \def\crefpairgroupconjunction{~と~}% - \def\crefmiddlegroupconjunction{~と~}% - \def\creflastgroupconjunction{~及び~}% - \def\crefrangeconjunction{~}% -} -\gappto{\PJLlang@langconfig@RU}{% - \crefname{equation}{уравнение}{уравнения}% - \crefname{figure}{рис.}{рис.}% - \crefname{table}{таблица}{таблицы}% - \crefname{appendix}{приложение}{приложения}% - \Crefname{equation}{Уравнение}{Уравнения}% - \Crefname{figure}{Рис.}{Рис.}% - \Crefname{table}{Таблица}{Таблицы}% - \Crefname{appendix}{Приложение}{Приложения}% - \def\crefpairconjunction{~и~}% - \def\crefmiddleconjunction{,~}% - \def\creflastconjunction{~и~}% - \def\crefpairgroupconjunction{~и~}% - \def\crefmiddlegroupconjunction{,~}% - \def\creflastgroupconjunction{~и~}% - \def\crefrangeconjunction{~\textasciitilde~}% -} -\gappto{\PJLlang@langconfig@PT}{% - \crefname{equation}{eq.}{eqs.}% - \crefname{figure}{fig.}{figs.}% - \crefname{table}{tabela}{tabelas}% - \crefname{appendix}{apêndice}{apêndices}% - \Crefname{equation}{Eq.}{Eqs.}% - \Crefname{figure}{Fig.}{Figs.}% - \Crefname{table}{Tabela}{Tabelas}% - \Crefname{appendix}{Apêndice}{Apêndices}% - \def\crefpairconjunction{ e\nobreakspace}% - \def\crefmiddleconjunction{, }% - \def\creflastconjunction{ e\nobreakspace}% - \def\crefpairgroupconjunction{ e\nobreakspace}% - \def\crefmiddlegroupconjunction{, }% - \def\creflastgroupconjunction{ e\nobreakspace}% - \def\crefrangeconjunction{ a\nobreakspace}% -} - -\endinput -%% -%% End of file `PJLthm.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLtoolkit.sty b/macros/latex/contrib/projlib/old-modules/PJLtoolkit.sty deleted file mode 100644 index b11b34a2a7..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLtoolkit.sty +++ /dev/null @@ -1,184 +0,0 @@ -%% -%% This is file `ProjLib.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% This work may be distributed and/or modified under the conditions of the -%% LaTeX Project Public License, either version 1.3c of this license or (at -%% your option) any later version. The latest version of this license is in -%% -%% http://www.latex-project.org/lppl.txt -%% -%% and version 1.3c or later is part of all distributions of LaTeX version -%% 2005/12/01 or later. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLtoolkit} - [2021/12/16 The collective interface of ProjLib toolkit] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @ProjLib, - prefix = @ProjLib@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\DeclareBoolOption[false]{author} -\DeclareBoolOption[false]{amsfashion} -\DeclareBoolOption[false]{nothms} -\DeclareBoolOption[false]{delaythms} -\DeclareBoolOption[false]{nothmnum} -\DeclareStringOption{thmnum}[PJL@thmnum@default] -\DeclareBoolOption[true]{regionalref} -\DeclareBoolOption[false]{originalref} -\DeclareBoolOption[true]{complexname} -\DeclareBoolOption[false]{simplename} -\DeclareBoolOption[false]{useosf} -\DeclareBoolOption[false]{lmodern} -\DeclareBoolOption[false]{palatino} -\DeclareBoolOption[false]{times} -\DeclareBoolOption[false]{garamond} -\DeclareBoolOption[false]{noto} -\DeclareBoolOption[false]{biolinum} -\ProcessKeyvalOptions*\relax - -\if@ProjLib@originalref - \@ProjLib@regionalreffalse -\fi -\if@ProjLib@simplename - \@ProjLib@complexnamefalse -\fi -\if@ProjLib@draft - \@ProjLib@fasttrue -\fi - -\if@ProjLib@fast - \PassOptionsToPackage{fast}{PJLdate} - \PassOptionsToPackage{fast}{PJLdraft} - \PassOptionsToPackage{fast}{PJLlogo} - \PassOptionsToPackage{fast}{PJLthm} -\fi -\if@ProjLib@nothms - \PassOptionsToPackage{nothms}{PJLthm} -\fi -\if@ProjLib@delaythms - \PassOptionsToPackage{delaythms}{PJLthm} -\fi -\if@ProjLib@nothmnum - \PassOptionsToPackage{nothmnum}{PJLthm} -\fi -\expandafter\ifstrempty\expandafter{\@ProjLib@thmnum}{}{ - \expandafter\ifstrequal\expandafter{\@ProjLib@thmnum}{PJL@thmnum@default}{ - \PassOptionsToPackage{thmnum}{PJLthm} - }{ - \PassOptionsToPackage{thmnum=\@ProjLib@thmnum}{PJLthm} - } -} -\if@ProjLib@regionalref\else - \PassOptionsToPackage{originalref}{PJLthm} -\fi -\if@ProjLib@complexname\else - \PassOptionsToPackage{simplename}{PJLthm} -\fi - -\if@ProjLib@amsfashion - \PassOptionsToPackage{amsfashion}{PJLauthor} - \RequirePackage{PJLauthor} -\fi -\if@ProjLib@author - \RequirePackage{PJLauthor} -\fi -\RequirePackage{PJLdate} -\RequirePackage{PJLdraft} -\RequirePackage{PJLlogo} -\RequirePackage{PJLmath} -\RequirePackage{PJLpaper} -\RequirePackage{PJLthm} - -\ifdefined\PJL@font@alreadyset\else - -\if@ProjLib@lmodern - \RequirePackage{amssymb} - \if@ProjLib@useosf - \RequirePackage{cfr-lm} - \else - \RequirePackage{lmodern} - \fi - \PJLsetlinespacing{\setstretch{1.00}} -\fi - -\if@ProjLib@palatino - % \RequirePackage{amssymb} - \RequirePackage{mathpazo} - \PassOptionsToPackage{defaultsups}{newpxtext} - \RequirePackage{newpxtext} - % \RequirePackage{newpxmath} - \let\openbox\relax - \PJLsetlinespacing{\setstretch{1.07}} - \if@ProjLib@useosf\useosf\fi -\fi - -\if@ProjLib@times - % \RequirePackage{amssymb} - \PassOptionsToPackage{defaultsups}{newtxtext} - \RequirePackage{newtxtext} - \RequirePackage{newtxmath} - \let\openbox\relax - \PJLsetlinespacing{\setstretch{1.00}} - \if@ProjLib@useosf\useosf\fi -\fi - -\if@ProjLib@garamond - % \RequirePackage{amssymb} - \if@ProjLib@useosf\else - \PassOptionsToPackage{lining}{ebgaramond} - \fi - \RequirePackage{ebgaramond-maths} - \RequirePackage{ebgaramond} - % \RequirePackage{garamondlibre} - \PJLsetlinespacing{\setstretch{1.00}} -\fi - -\if@ProjLib@noto - \if@ProjLib@useosf - \PassOptionsToPackage{oldstyle}{notomath} - \fi - \RequirePackage{anyfontsize} - \RequirePackage{notomath} - \PJLsetlinespacing{\setstretch{1.00}} -\fi - -\if@ProjLib@biolinum - % \RequirePackage{amssymb} - % \RequirePackage{mathpazo} - % \RequirePackage[sansmath]{libertinust1math} - \ifPDFTeX - \if@ProjLib@useosf - \PassOptionsToPackage{osf}{biolinum} - \fi - \RequirePackage{biolinum} - \renewcommand*\familydefault{\biolinum@family} - \else - \PassOptionsToPackage{no-math}{fontspec} - \RequirePackage{fontspec} - \setmainfont{LinBiolinum_R.otf}[ - BoldFont = LinBiolinum_RB.otf , - ItalicFont = LinBiolinum_RI.otf , - BoldItalicFont = LinBiolinum_RBO.otf, - \if@ProjLib@useosf Numbers = OldStyle\fi ] - \fi - \PJLsetlinespacing{\setstretch{1.05}} - \RequirePackage[italic,defaultmathsizes]{mathastext} -\fi - -\fi - -\WarningFilter{microtype}{Unable} -\RequirePackage{microtype} - -\endinput -%% -%% End of file `ProjLib.sty'. |