diff options
author | Norbert Preining <norbert@preining.info> | 2024-02-24 03:01:46 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-02-24 03:01:46 +0000 |
commit | f325bd88d1d4db13f51277bc59c8ff8814e937bc (patch) | |
tree | e39af6619c91d812dd93cb57d25149da5a84d801 /macros/latex/contrib/minimalist | |
parent | e7a321bba289c40f39563c19bbeac355f7c0eeeb (diff) |
CTAN sync 202402240301
Diffstat (limited to 'macros/latex/contrib/minimalist')
-rw-r--r-- | macros/latex/contrib/minimalist/README.md | 21 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimalist-classical.sty | 21 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimalist-classicthesis.sty | 679 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimalist-default.sty | 21 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimalist-flow.sty | 21 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimalist-plain.sty | 21 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimalist-stream.sty | 23 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimalist.sty | 12 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimart.cls | 2 | ||||
-rw-r--r-- | macros/latex/contrib/minimalist/minimbook.cls | 2 |
10 files changed, 773 insertions, 50 deletions
diff --git a/macros/latex/contrib/minimalist/README.md b/macros/latex/contrib/minimalist/README.md index 93ddc3fadc..4e46eb1e0a 100644 --- a/macros/latex/contrib/minimalist/README.md +++ b/macros/latex/contrib/minimalist/README.md @@ -11,13 +11,20 @@ It mainly consists of two parts. - Main part: - - `minimalist.sty` : interface of the main style - - `minimalist-default.sty` : the default style - - `minimalist-classical.sty` : the style "classical" - - `minimalist-flow.sty` : the style "flow" - - `minimalist-plain.sty` : the style "plain" - - `minimalist-stream.sty` : the style "stream" - - ... and more styles to come (currently on schedule: "modern") + - `minimalist.sty` : *interface of the main style* + - `minimalist-plain.sty` : *the style "plain"* + - The best choice for formal usage. + - `minimalist-default.sty` : *the default style* + - Slightly fancier than the plain style. + - `minimalist-flow.sty` : *the style "flow"* + - Suitable for writing course notes: sections and theorems are numbered together to create a storytelling atmosphere; proofs are colored by default. + - `minimalist-stream.sty` : *the style "stream"* + - Numbers are placed in the left margin; sections and theorems are numbered together to gain a streamlined feeling. + - `minimalist-classical.sty` : *the style "classical"* + - Originated in the typewriter style, now modernized. + - `minimalist-classicthesis.sty` + - Use your favorite design of [ClassicThesis](https://ctan.org/pkg/classicthesis) (and its carefully designed styles such as [ArsClassica](https://ctan.org/pkg/arsclassica)), while still have access to the features provided here, such as preconfigured theorem environments, multilingual support, enhanced author info block, etc. + - ... and more styles to come (currently on schedule: "elegant", "french", "modern", "typewriter") - `minimart.cls` : class for typesetting articles - `minimbook.cls` : class for typesetting books diff --git a/macros/latex/contrib/minimalist/minimalist-classical.sty b/macros/latex/contrib/minimalist/minimalist-classical.sty index 9b0dc1f76e..908de05e44 100644 --- a/macros/latex/contrib/minimalist/minimalist-classical.sty +++ b/macros/latex/contrib/minimalist/minimalist-classical.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-classical} - {2024/02/20} {} + {2024/02/23} {} {The "classical" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -769,7 +769,7 @@ heading_suffix "}\n" } \newtheoremstyle{simple-var} {.5\baselineskip}{.5\baselineskip} - { \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } }{} + { \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } }{} {\normalfont}{} {\newline} { @@ -794,7 +794,7 @@ heading_suffix "}\n" } \newtheoremstyle{simple-var} {.5\baselineskip}{.5\baselineskip} - { \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } }{} + { \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } }{} {\normalfont}{} {0pt} { @@ -864,13 +864,19 @@ heading_suffix "}\n" \SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } } +\hook_gput_code:nnn { env/proof/begin } { minimalist } { \let\simpleqed\relax } +\hook_gput_code:nnn { env/proof*/begin } { minimalist } { \let\simpleqed\relax } + \bool_if:NT \l__minimalist_colored_proof_bool { - \hook_gput_code:nnn { env/proof/begin } { minimalist } + \clist_map_inline:nn { proof, proof* } { - \Hy@SaveLastskip - \color{ \l__minimalist_colored_proof_tl } - \Hy@RestoreLastskip + \hook_gput_code:nnn { env/ #1 /begin } { minimalist } + { + \Hy@SaveLastskip + \color{ \l__minimalist_colored_proof_tl } + \Hy@RestoreLastskip + } } } @@ -1144,6 +1150,7 @@ heading_suffix "}\n" %% Special adjustment %%================================ + \endinput %% %% End of file `minimalist/minimalist-classical.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist-classicthesis.sty b/macros/latex/contrib/minimalist/minimalist-classicthesis.sty new file mode 100644 index 0000000000..f22987b5a2 --- /dev/null +++ b/macros/latex/contrib/minimalist/minimalist-classicthesis.sty @@ -0,0 +1,679 @@ +%% +%% This is file `minimalist/minimalist-classicthesis.sty', +%% generated with the docstrip utility. +%% +%% Copyright (C) 2021-2024 by Jinwen XU +%% +%% This is part of the minimalist class series. +%% +%% 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}[2022-06-01] +\ProvidesExplPackage + {minimalist-classicthesis} + {2024/02/23} {} + {The "classicthesis" style of minimalist} + +\IfPackageLoadedTF { minimalist } {} + { + \msg_new:nnn { \@currname } + { minimalist-not-loaded } + { "#1"~is~an~internal~style~of~"minimalist".~To~use~it,~you~must~load~the~package~"minimalist"~first. } + \msg_warning:nnx { \@currname } { minimalist-not-loaded } { \@currname } + \endinput + } + +\bool_new:N \l__minimalist_colored_proof_bool +\bool_set_true:N \l__minimalist_colored_proof_bool +\tl_if_eq:NnTF \l__minimalist_colored_proof_tl { * } + { + \bool_set_false:N \l__minimalist_colored_proof_bool + } + { + \tl_if_eq:NnT \l__minimalist_colored_proof_tl { false } + { + \bool_set_false:N \l__minimalist_colored_proof_bool + } + } + +%%================================ +%% Title fonts +%%================================ +\RequirePackage { relsize } +\RequirePackage { anyfontsize } + +\cs_new:Nn \minimalist_bfseries: {} +\cs_new:Nn \minimalist_sffamily: {} +\cs_new:Nn \minimalist_scshape: {} + +\hook_gput_code:nnn { begindocument } { minimalist } + { + \@ifpackageloaded{classicthesis-arsclassica} + { + \cs_set:Nn \minimalist_sffamily: { \sffamily } + } + { + \cs_set:Nn \minimalist_sffamily: {} + } + } + +\tl_new:N \g_minimalist_title_font_common_tl + +\tl_new:N \g_minimalist_title_font_part_tl +\tl_new:N \g_minimalist_title_font_chapter_tl +\tl_new:N \g_minimalist_title_font_section_tl +\tl_new:N \g_minimalist_title_font_subsection_tl +\tl_new:N \g_minimalist_title_font_subsubsection_tl +\tl_new:N \g_minimalist_title_font_paragraph_tl + +\tl_gset:Nn \g_minimalist_title_font_part_tl { \minimalist_bfseries:\minimalist_sffamily: \g_minimalist_title_font_common_tl } +\tl_gset:Nn \g_minimalist_title_font_chapter_tl { \minimalist_bfseries:\minimalist_sffamily: \g_minimalist_title_font_common_tl \minimalist_scshape: } +\tl_gset:Nn \g_minimalist_title_font_section_tl { \minimalist_bfseries:\minimalist_sffamily: \g_minimalist_title_font_common_tl \minimalist_scshape: } +\tl_gset:Nn \g_minimalist_title_font_subsection_tl { \minimalist_bfseries:\minimalist_sffamily: \g_minimalist_title_font_common_tl \minimalist_scshape: } +\tl_gset:Nn \g_minimalist_title_font_subsubsection_tl { \minimalist_bfseries:\minimalist_sffamily: \g_minimalist_title_font_common_tl } +\tl_gset:Nn \g_minimalist_title_font_paragraph_tl { \minimalist_bfseries:\minimalist_sffamily: \g_minimalist_title_font_common_tl \minimalist_scshape: } + +\bool_if:NF \l__minimalist_fast_bool + { + \RequirePackage { tikz } + \ExplSyntaxOff + \usetikzlibrary{calc,shadings} + \ExplSyntaxOn + \RequirePackage { tikzpagenodes } % For `current page text area` + } + + + +%%================================ +%% Blank page +%%================================ +\projlib_langauge_define_multilingual_text:Nn \bl@nkpagetext + { + , EN = This~page~is~intentionally~left~blank + , FR = Cette~page~est~intentionnellement~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~ha~sido~intencionalmente~dejada~en~blanco + , CN = \ziju{0.2} 此页为有意留为空白 + , TC = \ziju{0.2} 此頁為有意留為空白 + , JP = このページは意図的に空白にしてあります + , RU = Эта~страница~намеренно~оставлена~пустой + } +\renewcommand{\cleardoublepage}{ + \relax + \clearpage + \if@twoside\ifodd\c@page\relax\else + \thispagestyle{empty} + \hook_gput_next_code:nn { shipout/background } + { + \put(0.5\paperwidth,-0.5\paperheight){ + \makebox[0pt]{\large\color{main-text!10!paper}\g_minimalist_title_font_common_tl\bl@nkpagetext}} + } + \null\newpage\fi\fi +} + +%%================================ +%% Index +%%================================ +\RequirePackage { imakeidx } +\makeindex[intoc] + +\RequirePackage { silence } +\ExplSyntaxOff +\WarningFilter{latex}{Writing or overwriting file} +\begin{filecontents*}[overwrite]{\jobname.mst} +delim_0 "\\IndexDotfill " % Filler between section heading and page number +delim_1 "\\IndexDotfill " % Filler between subsection heading and page number +headings_flag 1 +heading_prefix "\\IndexHeading{" +heading_suffix "}\n" +\end{filecontents*} +\ExplSyntaxOn + +\projlib_langauge_define_multilingual_text:Nn \index_symbols_name + { + , EN = Symbols + , FR = Symboles + , DE = Symbole + , IT = Simboli + , PT = Símbolos + , BR = Símbolos + , ES = Símbolos + , CN = 符号 + , TC = 符號 + , JP = 記号 + , RU = Символы + } + +\newcommand*{\IndexDotfill} + { + \null\nobreak + \leaders \hbox to .67em {\hss \textcolor{main-text!15!paper}{.} \hss} \hskip1em plus1fill + } +\newcommand*{\IndexLinebreak} + { + \nobreakspace\textcolor{main-text!45!paper}{\raisebox{.4ex}{.}\raisebox{.2ex}{.}} + \item\hspace*{\hangindent} + \textcolor{main-text!45!paper}{\raisebox{.45ex}{.}\raisebox{.25ex}{.}}\: + \unskip + } + +\newcommand*{\IndexHeading}[1] + { + \str_if_eq:nnTF { #1 } { Symbols } + { \tl_set:Nn \l_tmpa_tl { \index_symbols_name } } + { \tl_set:Nn \l_tmpa_tl { #1 } } + \centerline{ \minimalist_sffamily: { \l_tmpa_tl } } + \nopagebreak + \par + \vspace{.3\baselineskip} + } + +\renewcommand*{\indexspace} + { + \par + \vspace{2pc plus .5pc minus .3pc} + } + +\bool_new:N \l__minimalist_if_first_subitem_bool +\renewcommand*{\@idxitem} + { + \par\hangindent40\p@ + \bool_set_true:N \l__minimalist_if_first_subitem_bool + } +\renewcommand*{\subitem} + { + \par\hangindent40\p@ + \bool_if:NT \l__minimalist_if_first_subitem_bool + { + \nobreak + \bool_set_false:N \l__minimalist_if_first_subitem_bool + } + \hspace*{20\p@} + } + +\hook_gput_code:nnn { begindocument/before } { minimalist } + { + \bool_if:NF \l__minimalist_fast_bool + { + \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \bookmarksetup{startatroot} } + } + \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } + \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } + } + +%%================================ +%% Draft mark +%%================================ +\RequirePackage { projlib-draft } + +%%================================ +%% Theorems +%%================================ +\RequirePackage { mathtools } +\RequirePackage { amsthm } + +\tl_const:Nn \c_minimalist_l_mathparen_latin_tl { $($ } +\tl_const:Nn \c_minimalist_r_mathparen_latin_tl { $)$ } +\tl_const:Nn \c_minimalist_l_mathparen_cjk_tl { \!\,( } +\tl_const:Nn \c_minimalist_r_mathparen_cjk_tl { )\!\, } +\cs_new:Nn \minimalist_insert_l_mathparen: + { + \tl_use:c { c_minimalist_l_mathparen_ \l_projlib_language_current_languagetype_tl _tl } + } +\cs_new:Nn \minimalist_insert_r_mathparen: + { + \tl_use:c { c_minimalist_r_mathparen_ \l_projlib_language_current_languagetype_tl _tl } + } + +%% Change equation numbers to gray +\def\tagform@#1{\maketag@@@{\textcolor{.!39!paper}{(\ignorespaces#1\unskip\@@italiccorr)}}} + +\PassOptionsToPackage { nopatch = eqnum } { microtype } + +\def\simpleqedsymbol{ + \makebox[1em]{\rlap{\textcolor{.!12!paper}{\rule[-0.1em]{.95em}{.95em}}}{\kern.07em\raisebox{.07em}{\textcolor{paper}{\rule[-0.1em]{.81em}{.81em}}}\kern.07em}}} +\DeclareRobustCommand{\simpleqed}{% + \ifmmode \quad\hbox{\simpleqedsymbol} + \else + \leavevmode\unskip\penalty9999 \hbox{}\nobreak\hfill + \quad\hbox{\simpleqedsymbol}% + \fi +} + +\bool_if:NTF \l__minimalist_theorem_in_new_line_bool + { + \newtheoremstyle{simple} + {.75\baselineskip}{} + { + \normalfont + \parindent=0pt + \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip + }{} + {\normalfont}{} + {0pt} + { + \rlap{\vbox{\hbox{\parbox{\linewidth}{ + {\thmname{#1}\thmnumber{\nobreakspace #2}} + {\color{.!50!paper}\thmnote{\hspace{.4em} \minimalist_insert_l_mathparen: #3 \minimalist_insert_r_mathparen: }} + }}\hbox{\strut}\vspace{0pt}}} + \bool_if:NT \l__minimalist_theorem_with_qed_bool + { + \pushQED{\simpleqed} + } + } + \newtheoremstyle{simple-var} + {.75\baselineskip}{} + { + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } + \parindent=0pt + \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip + }{} + {\normalfont}{} + {0pt} + { + \rlap{\vbox{\hbox{\parbox{\linewidth}{ + {\thmname{#1}\thmnumber{\nobreakspace #2}} + {\color{.!50!paper}\thmnote{\hspace{.4em} \minimalist_insert_l_mathparen: #3 \minimalist_insert_r_mathparen: }} + }}\hbox{\strut}\vspace{0pt}}} + \bool_if:NT \l__minimalist_theorem_with_qed_bool + { + \pushQED{\simpleqed} + } + } + } + { + \newtheoremstyle{simple} + {}{} + { + \normalfont + \parindent=0pt + \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip + }{} + {\normalfont}{} + {0pt} + { + {\thmname{#1}\thmnumber{\nobreakspace #2}} + {\color{.!50!paper}\thmnote{\hspace{.4em} \minimalist_insert_l_mathparen: #3 \minimalist_insert_r_mathparen: }} + \minimalist_bfseries:\minimalist_sffamily: . + \nobreakspace\nobreakspace + % {\normalfont\textcolor{.!27!paper}{---}} + \bool_if:NT \l__minimalist_theorem_with_qed_bool + { + \pushQED{\simpleqed} + } + } + \newtheoremstyle{simple-var} + {}{} + { + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } + \parindent=0pt + \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip + }{} + {\normalfont}{} + {0pt} + { + {\thmname{#1}\thmnumber{\nobreakspace #2}} + {\color{.!50!paper}\thmnote{\hspace{.4em} \minimalist_insert_l_mathparen: #3 \minimalist_insert_r_mathparen: }} + \minimalist_bfseries:\minimalist_sffamily: . + \nobreakspace\nobreakspace + % {\normalfont\textcolor{.!27!paper}{---}} + \bool_if:NT \l__minimalist_theorem_with_qed_bool + { + \pushQED{\simpleqed} + } + } + } + +\theoremstyle{simple} + +\bool_if:NT \l__minimalist_theorem_with_qed_bool + { + \def\@endtheorem{\popQED\endtrivlist\@endpefalse} + } + +\newcommand{\customqedsymbol}{ + \makebox[1em]{\color{.!27!paper}\rule[-0.1em]{.95em}{.95em}}} +\let\qedsymbol\customqedsymbol + +%% Special treatments for the Q.E.D. symbol +\def\noQED{\let\popQED\relax} +\let\noqed\noQED +\def\proofless{\pushQED{\qed}} + +\bool_if:NTF \l__minimalist_fast_bool + { + \RequirePackage { hyperref } + \hypersetup { draft } + } + { + \RequirePackage { hyperref } + \RequirePackage { bookmark } + \hypersetup{ hidelinks, linktoc = all } + \bookmarksetup{ numbered } + \renewcommand\Hy@numberline[1]{#1.~} + % https://tex.stackexchange.com/a/1821 + % Add the bookmark of ToC + \bool_if:NTF \l__minimalist_is_book_bool + { + \hook_gput_code:nnn { cmd/tableofcontents/before } { minimalist } + { + \if@openright\cleardoublepage\else\clearpage\fi + \pdfbookmark[0]{\contentsname}{toc} + } + } + { + \hook_gput_code:nnn { cmd/tableofcontents/before } { minimalist } + { + \pdfbookmark[1]{\contentsname}{toc} + } + } + } + + +\PassOptionsToPackage + { + theorem-style = { + theorem = simple-var, lemma = simple-var, proposition = simple-var, corollary = simple-var, property = simple-var, axiom = simple-var, construction = simple-var, + theorems = simple-var, lemmas = simple-var, propositions = simple-var, corollaries = simple-var, properties = simple-var, axioms = simple-var, constructions = simple-var, + theorem-with-name = simple-var, + } + } { projlib-theorem } + +\RequirePackage { projlib-theorem } + +\SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } } + +\hook_gput_code:nnn { env/proof/begin } { minimalist } { \let\simpleqed\relax } +\hook_gput_code:nnn { env/proof*/begin } { minimalist } { \let\simpleqed\relax } + +\bool_if:NT \l__minimalist_colored_proof_bool + { + \clist_map_inline:nn { proof, proof* } + { + \hook_gput_code:nnn { env/ #1 /begin } { minimalist } + { + \Hy@SaveLastskip + \color{ \l__minimalist_colored_proof_tl } + \Hy@RestoreLastskip + } + } + } + + +\exp_args:No \SetTheorem { \c_projlib_theorem_supported_clist, theorem-with-name } + { + name style = { + , heading style = { + , english = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , french = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , ngerman = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , italian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , portuguese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , brazilian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , spanish = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , schinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , tchinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , japanese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + } + } + +\SetTheorem { remark } + { + name style = { + , heading style = { + , english = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , french = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , ngerman = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , italian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , portuguese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , brazilian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , spanish = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , schinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , tchinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , japanese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + } + } + +\bool_if:NF \l__projlib_theorem_complexname_bool + { + \exp_args:No \SetTheorem { \c_projlib_theorem_supported_clist, theorem-with-name } + { + name style = { + , crefname style = { + , english = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , french = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , ngerman = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , italian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , portuguese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , brazilian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , spanish = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , schinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , tchinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , japanese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + , Crefname style = { + , english = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , french = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , ngerman = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , italian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , portuguese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , brazilian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , spanish = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textsc + , schinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , tchinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , japanese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + , numbering style = { + \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + } + } + + \SetTheorem { remark } + { + name style = { + , crefname style = { + , english = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , french = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , ngerman = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , italian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , portuguese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , brazilian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , spanish = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , schinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , tchinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , japanese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + , Crefname style = { + , english = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , french = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , ngerman = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , italian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , portuguese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , brazilian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , spanish = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl\textit + , schinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , tchinese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , japanese = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + , russian = \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + , numbering style = { + \minimalist_bfseries:\minimalist_sffamily:\g_minimalist_title_font_common_tl + } + } + } + } + +\PassOptionsToPackage { many } { tcolorbox } +\RequirePackage { tcolorbox } +\bool_if:NT \l__minimalist_fast_bool { \tcbstartdraftmode } + + +\NewDocumentEnvironment { emphasis } { } + { + \LocallyStopLineNumbers + \enlargethispage{2mm} + \begin{tcolorbox} + [ + enhanced ~ jigsaw, breakable, oversize, + % nobeforeafter, + left = .5em, right=0mm, top=0.5mm, bottom=0mm, boxrule=0pt, + colback=main-text!2!paper, frame ~ hidden, + borderline ~ west = {.3em} {0mm} {main-text!25!paper}, + arc = 0.2mm, + ] + } + { + \end{tcolorbox} + \ResumeLineNumbers + } + + +%%================================ +%% Title block style +%%================================ +\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 \minimalist_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 } + \RenewDocumentCommand \maketitle { O{} } + { + \LocallyStopLineNumbers + \ProjLibTitlePage [ style = simple, #1 ] + { + , title = \@title + , author = \@author + , date = \@date + } + \ResumeLineNumbers + } + } + { + \renewcommand{\@maketitle} + { + \LocallyStopLineNumbers + \begin{center} + \let\footnote\thanks + {\minimalist_sffamily:\Large\@title}\\\bigskip + \color{main-text!80!paper} + {\small\minimalist_scshape:\@author} + \par\smallskip\vspace{-\parskip} + {\small\@date} + \end{center} + \projlib_author_if_content_empty:nT { \@date } { \medskip } + \medskip\par + \ResumeLineNumbers + } + + +%%================================ +%% Abstract style +%%================================ + \renewenvironment{abstract} + { + \LocallyStopLineNumbers + \vspace{-.5\baselineskip} + \begin{center} + { \small\spacedlowsmallcaps{\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} + { \small\spacedlowsmallcaps{\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} + \medskip + \ResumeLineNumbers + } + } % end of \bool_if:NTF \l__minimalist_is_book_bool + +%%================================ +%% Simulate features of amsart +%%================================ +\PassOptionsToPackage { amsfashion } { projlib-author } +\RequirePackage { projlib-author } + +%%================================ +%% Special adjustment +%%================================ + +%%================================ +%% Load the main design +%%================================ +\hook_gput_code:nnn { begindocument/before } { minimalist } + { + \RequirePackage { classicthesis } + } + +\endinput +%% +%% End of file `minimalist/minimalist-classicthesis.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist-default.sty b/macros/latex/contrib/minimalist/minimalist-default.sty index 32d64df661..ea3aa22eb9 100644 --- a/macros/latex/contrib/minimalist/minimalist-default.sty +++ b/macros/latex/contrib/minimalist/minimalist-default.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-default} - {2024/02/20} {} + {2024/02/23} {} {The default style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -756,7 +756,7 @@ heading_suffix "}\n" \newtheoremstyle{simple-var} {.75\baselineskip}{} { - \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } \parindent=0pt \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip }{} @@ -797,7 +797,7 @@ heading_suffix "}\n" \newtheoremstyle{simple-var} {}{} { - \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } \parindent=0pt \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip }{} @@ -875,13 +875,19 @@ heading_suffix "}\n" \SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } } +\hook_gput_code:nnn { env/proof/begin } { minimalist } { \let\simpleqed\relax } +\hook_gput_code:nnn { env/proof*/begin } { minimalist } { \let\simpleqed\relax } + \bool_if:NT \l__minimalist_colored_proof_bool { - \hook_gput_code:nnn { env/proof/begin } { minimalist } + \clist_map_inline:nn { proof, proof* } { - \Hy@SaveLastskip - \color{ \l__minimalist_colored_proof_tl } - \Hy@RestoreLastskip + \hook_gput_code:nnn { env/ #1 /begin } { minimalist } + { + \Hy@SaveLastskip + \color{ \l__minimalist_colored_proof_tl } + \Hy@RestoreLastskip + } } } @@ -1152,6 +1158,7 @@ heading_suffix "}\n" \crefformat { subsubsection } { \nobreak \crefthemark { \crefthe_retrieve_space: } \nobreak #2 \minimalist_apply_title_numbering_style_static:n {#1} #3 } \labelcrefformat { subsubsection } { #2 \minimalist_apply_title_numbering_style_static:n {#1} #3 } + \endinput %% %% End of file `minimalist/minimalist-default.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist-flow.sty b/macros/latex/contrib/minimalist/minimalist-flow.sty index 671ceef5c2..737d61eaa9 100644 --- a/macros/latex/contrib/minimalist/minimalist-flow.sty +++ b/macros/latex/contrib/minimalist/minimalist-flow.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-flow} - {2024/02/20} {} + {2024/02/23} {} {The "flow" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -767,7 +767,7 @@ heading_suffix "}\n" \newtheoremstyle{simple-var} {.75\baselineskip}{} { - \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } \parindent=0pt \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip }{} @@ -805,7 +805,7 @@ heading_suffix "}\n" \newtheoremstyle{simple-var} {}{} { - \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } \parindent=0pt \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip }{} @@ -880,13 +880,19 @@ heading_suffix "}\n" \SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } } +\hook_gput_code:nnn { env/proof/begin } { minimalist } { \let\simpleqed\relax } +\hook_gput_code:nnn { env/proof*/begin } { minimalist } { \let\simpleqed\relax } + \bool_if:NT \l__minimalist_colored_proof_bool { - \hook_gput_code:nnn { env/proof/begin } { minimalist } + \clist_map_inline:nn { proof, proof* } { - \Hy@SaveLastskip - \color{ \l__minimalist_colored_proof_tl } - \Hy@RestoreLastskip + \hook_gput_code:nnn { env/ #1 /begin } { minimalist } + { + \Hy@SaveLastskip + \color{ \l__minimalist_colored_proof_tl } + \Hy@RestoreLastskip + } } } @@ -1158,6 +1164,7 @@ heading_suffix "}\n" \crefformat { subsubsection } { \nobreak \crefthemark { \crefthe_retrieve_space: } \nobreak #2 \minimalist_apply_title_numbering_style_static:n {#1} #3 } \labelcrefformat { subsubsection } { #2 \minimalist_apply_title_numbering_style_static:n {#1} #3 } + \endinput %% %% End of file `minimalist/minimalist-flow.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist-plain.sty b/macros/latex/contrib/minimalist/minimalist-plain.sty index 577f4b24e1..761cc4f258 100644 --- a/macros/latex/contrib/minimalist/minimalist-plain.sty +++ b/macros/latex/contrib/minimalist/minimalist-plain.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-plain} - {2024/02/20} {} + {2024/02/23} {} {The "plain" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -730,7 +730,7 @@ heading_suffix "}\n" \newtheoremstyle{simple-var} {.75\baselineskip}{} { - \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } \parindent=0pt \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip }{} @@ -771,7 +771,7 @@ heading_suffix "}\n" \newtheoremstyle{simple-var} {}{} { - \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } + \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } \parindent=0pt \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip }{} @@ -849,13 +849,19 @@ heading_suffix "}\n" \SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } } +\hook_gput_code:nnn { env/proof/begin } { minimalist } { \let\simpleqed\relax } +\hook_gput_code:nnn { env/proof*/begin } { minimalist } { \let\simpleqed\relax } + \bool_if:NT \l__minimalist_colored_proof_bool { - \hook_gput_code:nnn { env/proof/begin } { minimalist } + \clist_map_inline:nn { proof, proof* } { - \Hy@SaveLastskip - \color{ \l__minimalist_colored_proof_tl } - \Hy@RestoreLastskip + \hook_gput_code:nnn { env/ #1 /begin } { minimalist } + { + \Hy@SaveLastskip + \color{ \l__minimalist_colored_proof_tl } + \Hy@RestoreLastskip + } } } @@ -1118,6 +1124,7 @@ heading_suffix "}\n" %% Special adjustment %%================================ + \endinput %% %% End of file `minimalist/minimalist-plain.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist-stream.sty b/macros/latex/contrib/minimalist/minimalist-stream.sty index cef220e623..51acfcbb7f 100644 --- a/macros/latex/contrib/minimalist/minimalist-stream.sty +++ b/macros/latex/contrib/minimalist/minimalist-stream.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-stream} - {2024/02/20} {} + {2024/02/23} {} {The "stream" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -836,7 +836,7 @@ heading_suffix "}\n" } \newtheoremstyle{simple-newline-var} {-.2\baselineskip plus 2pt minus .1\baselineskip}{.3\baselineskip plus 2pt minus .1\baselineskip} - { \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } }{} + { \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } }{} {\normalfont}{} {0pt} { @@ -858,7 +858,7 @@ heading_suffix "}\n" } \dim_new:N \l_minimalist_space_before_inline_theorem_dim -\AtBeginDocument +\hook_gput_code:nnn { begindocument } { minimalist } { \dim_set:Nn \l_minimalist_space_before_inline_theorem_dim { @@ -889,7 +889,7 @@ heading_suffix "}\n" \newtheoremstyle{simple-inline-var} % {.3\baselineskip plus 2pt minus .1\baselineskip}{.3\baselineskip plus 2pt minus .1\baselineskip} {\l_minimalist_space_before_inline_theorem_dim}{\l_minimalist_space_before_inline_theorem_dim} - { \bool_if:NTF \l__minimalist_emphasis_theorem_bool { \itshape } { \normalfont } }{} + { \bool_if:NTF \l__minimalist_emphasize_theorem_bool { \itshape } { \normalfont } }{} {\normalfont}{} {0pt} { @@ -1003,13 +1003,19 @@ heading_suffix "}\n" \SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } } +\hook_gput_code:nnn { env/proof/begin } { minimalist } { \let\simpleqed\relax } +\hook_gput_code:nnn { env/proof*/begin } { minimalist } { \let\simpleqed\relax } + \bool_if:NT \l__minimalist_colored_proof_bool { - \hook_gput_code:nnn { env/proof/begin } { minimalist } + \clist_map_inline:nn { proof, proof* } { - \Hy@SaveLastskip - \color{ \l__minimalist_colored_proof_tl } - \Hy@RestoreLastskip + \hook_gput_code:nnn { env/ #1 /begin } { minimalist } + { + \Hy@SaveLastskip + \color{ \l__minimalist_colored_proof_tl } + \Hy@RestoreLastskip + } } } @@ -1248,6 +1254,7 @@ heading_suffix "}\n" \crefformat { subsubsection } { \nobreak \crefthemark { \crefthe_retrieve_space: } \nobreak #2 \minimalist_apply_title_numbering_style_static:n {#1} #3 } \labelcrefformat { subsubsection } { #2 \minimalist_apply_title_numbering_style_static:n {#1} #3 } + \endinput %% %% End of file `minimalist/minimalist-stream.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist.sty b/macros/latex/contrib/minimalist/minimalist.sty index 9b50bd5349..034a9cc8c6 100644 --- a/macros/latex/contrib/minimalist/minimalist.sty +++ b/macros/latex/contrib/minimalist/minimalist.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist} - {2024/02/20} {} + {2024/02/23} {} {A simple and clear style for articles and books} \keys_define:nn { minimalist } @@ -81,10 +81,10 @@ , indent lists .dim_set:N = \l__minimalist_item_indentation_dim , indent lists .default:n = { \parindent } - , emphasis-theorems .bool_set:N = \l__minimalist_emphasis_theorem_bool - , emphasis-theorems .initial:n = { false } - , emphasis~theorems .bool_set:N = \l__minimalist_emphasis_theorem_bool - , emphasis theorems .bool_set:N = \l__minimalist_emphasis_theorem_bool + , emphasize-theorems .bool_set:N = \l__minimalist_emphasize_theorem_bool + , emphasize-theorems .initial:n = { false } + , emphasize~theorems .bool_set:N = \l__minimalist_emphasize_theorem_bool + , emphasize theorems .bool_set:N = \l__minimalist_emphasize_theorem_bool , theorem-in-new-line .bool_set:N = \l__minimalist_theorem_in_new_line_bool , theorem-in-new-line .initial:n = { false } @@ -120,6 +120,8 @@ } \ProcessKeyOptions [ minimalist ] +\PassOptionsToPackage { dvipsnames } { xcolor } + \bool_new:N \l__minimalist_is_book_bool \cs_if_exist:cTF { c@chapter } { diff --git a/macros/latex/contrib/minimalist/minimart.cls b/macros/latex/contrib/minimalist/minimart.cls index f208d3ccd6..67411f25a8 100644 --- a/macros/latex/contrib/minimalist/minimart.cls +++ b/macros/latex/contrib/minimalist/minimart.cls @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplClass {minimart} - {2024/02/20} {} + {2024/02/23} {} {A simple and clear article style} \tl_const:Nn \l__minimclass_base_class_tl { article } diff --git a/macros/latex/contrib/minimalist/minimbook.cls b/macros/latex/contrib/minimalist/minimbook.cls index c36dc2b239..727572c73a 100644 --- a/macros/latex/contrib/minimalist/minimbook.cls +++ b/macros/latex/contrib/minimalist/minimbook.cls @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplClass {minimbook} - {2024/02/20} {} + {2024/02/23} {} {A simple and clear book style} \tl_const:Nn \l__minimclass_base_class_tl { book } |