summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/minimalist
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-09-04 03:01:15 +0000
committerNorbert Preining <norbert@preining.info>2022-09-04 03:01:15 +0000
commit909458d2a89fa74c77683cbaf6f3b83861b186c3 (patch)
tree793c802255d76003c7d3ddc6b26275be75087914 /macros/latex/contrib/minimalist
parentaad0212913f1ba7176d3d187a33e955804ad271d (diff)
CTAN sync 202209040301
Diffstat (limited to 'macros/latex/contrib/minimalist')
-rw-r--r--macros/latex/contrib/minimalist/minimalist-classical.sty73
-rw-r--r--macros/latex/contrib/minimalist/minimalist-doc.pdfbin104902 -> 104027 bytes
-rw-r--r--macros/latex/contrib/minimalist/minimalist-doc.tex145
-rw-r--r--macros/latex/contrib/minimalist/minimalist-plain.sty83
-rw-r--r--macros/latex/contrib/minimalist/minimalist.sty7
-rw-r--r--macros/latex/contrib/minimalist/minimart.cls71
-rw-r--r--macros/latex/contrib/minimalist/minimbook.cls71
7 files changed, 283 insertions, 167 deletions
diff --git a/macros/latex/contrib/minimalist/minimalist-classical.sty b/macros/latex/contrib/minimalist/minimalist-classical.sty
index cb0e3df249..d52f7f51f5 100644
--- a/macros/latex/contrib/minimalist/minimalist-classical.sty
+++ b/macros/latex/contrib/minimalist/minimalist-classical.sty
@@ -15,11 +15,10 @@
%% and version 1.3c or later is part of all distributions of LaTeX version
%% 2005/12/01 or later.
%%
-\NeedsTeXFormat{LaTeX2e}[2020-10-01]
-\RequirePackage{l3keys2e}
+\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplPackage
{minimalist-classical}
- {2022/06/16} {}
+ {2022/09/03} {}
{The classical style of minimalist}
\IfPackageLoadedTF { minimalist } {}
@@ -469,9 +468,15 @@
\titleformat{\paragraph}[runin]
{ \g_minimalist_title_font_paragraph_tl }{\theparagraph}{1em}{#1}
-\titlespacing{\section}{0pt}{\baselineskip}{.6\baselineskip}
-\titlespacing{\subsection}{0pt}{.75\baselineskip}{.4\baselineskip}
-\titlespacing{\subsubsection}{0pt}{.5\baselineskip}{.3\baselineskip}
+\titlespacing{\section}{0pt}{1\baselineskip plus .5\baselineskip minus .2\baselineskip}{.6\baselineskip plus .3\baselineskip minus .2\baselineskip}
+\titlespacing{\subsection}{0pt}{.75\baselineskip plus .3\baselineskip minus .2\baselineskip}{.4\baselineskip plus .2\baselineskip minus .1\baselineskip}
+\bool_if:NTF \l__minimalist_runin_bool
+ {
+ \titlespacing{\subsubsection}{0pt}{.5\baselineskip plus .2\baselineskip minus .1\baselineskip}{0pt}
+ }
+ {
+ \titlespacing{\subsubsection}{0pt}{.5\baselineskip plus .2\baselineskip minus .1\baselineskip}{.3\baselineskip plus .2\baselineskip minus .1\baselineskip}
+ }
%%================================
%% ToC format
@@ -540,26 +545,26 @@
\setlistdepth{10}
\setlist{noitemsep, topsep=.33\topsep-.5\parskip}
\setlist[enumerate]{labelsep=*, leftmargin=*}
-\setlist[enumerate,1]{label=\arabic*$)$,
- ref = \arabic*$)$}
-\setlist[enumerate,2]{label=\emph{\roman*}$)$,
- ref = \arabic{enumi}.\emph{\roman*}$)$}
-\setlist[enumerate,3]{label=\emph{\alph*}$)$,
- ref = \arabic{enumi}.\emph{\roman{enumii}}.\emph{\alph*}$)$}
+\setlist[enumerate,1]{label = \normalfont\arabic*$\mskip-.5mu\big)$,
+ ref = \normalfont\color{.!45!paper}\arabic*$\mskip-.5mu\big)$}
+\setlist[enumerate,2]{label = \normalfont\emph{\roman*}$\mskip-.5mu\big)$,
+ ref = \normalfont\color{.!45!paper}\arabic{enumi}.\emph{\roman*}$\mskip-.5mu\big)$}
+\setlist[enumerate,3]{label = \normalfont\emph{\alph*}$\mskip-.5mu\big)$,
+ ref = \normalfont\color{.!45!paper}\arabic{enumi}.\emph{\roman{enumii}}.\emph{\alph*}$\mskip-.5mu\big)$}
\setlist[description]{font=\normalfont\minimalist_bfseries:}
-\newcommand\desculine{\colorlet{currentcolor}{.}\bgroup\markoverwith{\color{currentcolor!55!paper}
+\newcommand\desculine{\bgroup\markoverwith{\color{.!55!paper}
\rule[-.45ex]{2pt}{.75pt}}\ULon}
\renewcommand{\descriptionlabel}[1]{
\hspace{\labelsep}\normalfont\desculine{#1}
}
\renewlist{itemize}{itemize}{10}
-\setlist[itemize]{leftmargin=*,label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\cdot$}}
-\AddLanguageSetting { \setlist[itemize,1]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\bullet$}} }
-\AddLanguageSetting [french] { \setlist[itemize,1]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{\rule[.2\baselineskip]{.8em}{.75pt}}} }
-\setlist[itemize,2]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{\rule[.2\baselineskip]{.5em}{.75pt}}}
-\setlist[itemize,3]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\circ$}}
-\setlist[itemize,4]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\ast$}}
+\setlist[itemize]{leftmargin=*,label=\textcolor{.!27!paper}{$\cdot$}}
+\AddLanguageSetting { \setlist[itemize,1]{label=\textcolor{.!27!paper}{$\bullet$},leftmargin=\maxof{\parindent}{1.5em}} }
+\AddLanguageSetting [french] { \setlist[itemize,1]{label=\textcolor{.!39!paper}{\rule[.2\baselineskip]{.8em}{.75pt}},leftmargin=\maxof{\parindent}{1.5em}} }
+\setlist[itemize,2]{label=\textcolor{.!27!paper}{\rule[.2\baselineskip]{.55em}{.75pt}}}
+\setlist[itemize,3]{label=\textcolor{.!27!paper}{$\circ$}}
+\setlist[itemize,4]{label=\textcolor{.!27!paper}{$\ast$}}
%%================================
%% Blank page
@@ -626,8 +631,17 @@ heading_suffix "}\n"
\newcommand*{\IndexDotfill}
{
- \leaders \hbox to .67em {\hss \textcolor{main-text!15!paper}{.} \hss} \hfill
+ \null\nobreak
+ \leaders \hbox to .67em {\hss \textcolor{main-text!15!paper}{.} \hss} \hskip1em plus1fill
+ }
+\newcommand*{\IndexLinebreak}
+ {
+ \nobreakspace\textcolor{main-text!50!paper}{\raisebox{.25ex}{.}\raisebox{.05ex}{.}}
+ \item\hspace*{\hangindent}
+ \textcolor{main-text!50!paper}{\raisebox{.35ex}{.}\raisebox{.15ex}{.}}\,
+ \unskip
}
+
\newcommand*{\IndexHeading}[1]
{
\str_if_eq:nnTF { #1 } { Symbols }
@@ -642,7 +656,7 @@ heading_suffix "}\n"
\renewcommand*{\indexspace}
{
\par
- \vspace{2pc ~ plus ~ .5pc ~ minus ~ .3pc}
+ \vspace{2pc plus .5pc minus .3pc}
}
\bool_new:N \l__minimalist_if_first_subitem_bool
@@ -679,6 +693,10 @@ heading_suffix "}\n"
\RequirePackage { mathtools }
\RequirePackage { amsthm }
+\def\tagform@#1{\maketag@@@{\textcolor{main-text!39!paper}{(\ignorespaces#1\unskip\@@italiccorr)}}}
+
+\PassOptionsToPackage { nopatch = eqnum } { microtype }
+
\def\simpleqedsymbol{
\makebox[1em]{\rlap{\textcolor{main-text!12!paper}{\rule[-0.1em]{.95em}{.95em}}}{\kern.07em\raisebox{.07em}{\textcolor{paper}{\rule[-0.1em]{.81em}{.81em}}}\kern.07em}}}
\bool_if:NTF \l__minimalist_theorem_in_new_line_bool
@@ -715,9 +733,9 @@ heading_suffix "}\n"
\theoremstyle{simple}
-\renewcommand{\qedsymbol}{
+\newcommand{\customqedsymbol}{
\makebox[1em]{\color{main-text!27!paper}\rule[-0.1em]{.95em}{.95em}}}
-\let\qedsymbolOriginal\qedsymbol
+\let\qedsymbol\customqedsymbol
\bool_if:NTF \l__minimalist_fast_bool
{
@@ -732,10 +750,19 @@ heading_suffix "}\n"
\hypersetup{ hidelinks, linktoc = all }
\bookmarksetup{ numbered }
\renewcommand\Hy@numberline[1]{#1.~}
+ % https://tex.stackexchange.com/a/1821
+ % Add the bookmark of ToC
+ \hook_gput_code:nnn { cmd/tableofcontents/before } { minimalist }
+ {
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \pdfbookmark[0]{\contentsname}{toc}
+ }
}
\RequirePackage { projlib-theorem }
+\SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } }
+
\exp_args:No \SetTheorem { \c_projlib_theorem_supported_clist, theorem-with-name }
{
name style = {
diff --git a/macros/latex/contrib/minimalist/minimalist-doc.pdf b/macros/latex/contrib/minimalist/minimalist-doc.pdf
index 03d2289372..444dbbe2f2 100644
--- a/macros/latex/contrib/minimalist/minimalist-doc.pdf
+++ b/macros/latex/contrib/minimalist/minimalist-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/minimalist/minimalist-doc.tex b/macros/latex/contrib/minimalist/minimalist-doc.tex
index a59d90ca4d..717e31d600 100644
--- a/macros/latex/contrib/minimalist/minimalist-doc.tex
+++ b/macros/latex/contrib/minimalist/minimalist-doc.tex
@@ -9,8 +9,6 @@
\usepackage{longtable} % breakable tables
\usepackage{hologo} % more TeX logo
-\usepackage{relsize}
-
\usepackage{blindtext}
\UseLanguage{English}
@@ -19,46 +17,73 @@
%% For typesetting code
%%================================
\usepackage{listings}
-\definecolor{maintheme}{RGB}{70,130,180}
-\definecolor{forestgreen}{RGB}{21,122,81}
-\definecolor{lightergray}{gray}{0.99}
-\lstset{language=[LaTeX]TeX,
- keywordstyle=\color{maintheme},
- basicstyle=\ttfamily,
- commentstyle=\color{forestgreen}\ttfamily,
- stringstyle=\rmfamily,
- showstringspaces=false,
- breaklines=true,
- frame=lines,
- backgroundcolor=\color{lightergray},
- flexiblecolumns=true,
- escapeinside={(*}{*)},
- % numbers=left,
- numberstyle=\scriptsize, stepnumber=1, numbersep=5pt,
- % firstnumber=last,
-}
-\providecommand{\meta}[1]{$\langle${\normalfont\itshape#1}$\rangle$}
-\lstset{moretexcs=%
- {linenumbers,nolinenumbers,part,parttext,chapter,section,subsection,subsubsection,frontmatter,mainmatter,backmatter,tableofcontents,href,
- color,NameTheorem,CreateTheorem,cref,DNF,UseLanguage,UseOtherLanguage,AddLanguageSetting,maketitle,address,curraddr,email,keywords,subjclass,thanks,dedicatory,TheDate,ProjLib,qedhere
- }
+\usepackage{xcolor}
+\usepackage{setspace}
+\definecolor{code-main}{RGB}{70,130,180}
+\definecolor{code-expl3}{RGB}{240,50,60}
+\definecolor{code-option}{RGB}{40,110,20}
+\definecolor{code-keys}{RGB}{100,130,150}
+\definecolor{code-comment}{RGB}{20,120,80}
+\definecolor{code-background}{gray}{0.99}
+\lstset{
+ language = [LaTeX]TeX,
+ basicstyle = \ttfamily,
+ keywordstyle = \color{code-main},
+ commentstyle = \color{code-comment},
+ showstringspaces = false,
+ breaklines = true,
+ frame = lines,
+ backgroundcolor = \color{code-background},
+ flexiblecolumns = true,
+ escapeinside = {(*}{*)},
+ alsoletter = {_,:},
+ % numbers = left,
+ % firstnumber = last,
+ numberstyle = \scriptsize\ttfamily,
+ stepnumber = 1,
+ numbersep = 5pt,
}
-\lstnewenvironment{code}%
-{\setstretch{1.07}\LocallyStopLineNumbers%
-\setkeys{lst}{columns=fullflexible,keepspaces=true}%
+\newcommand{\meta}[1]{$\langle${\normalfont\itshape#1}$\rangle$}
+\lstset{% LaTeX2 commands
+ classoffset = 0,
+ texcsstyle =* \color{code-main},
+ moretexcs =
+ {
+ linenumbers,nolinenumbers,
+ part,parttext,chapter,section,subsection,subsubsection,
+ frontmatter,mainmatter,backmatter,
+ tableofcontents,
+ href,
+ color,
+ NameTheorem,CreateTheorem,
+ cref,
+ ProjLib,
+ DNF,
+ UseLanguage,UseOtherLanguage,AddLanguageSetting,
+ maketitle,address,curraddr,email,keywords,subjclass,thanks,dedicatory,TheDate,
+ qedhere,
+ }
}
-{\ResumeLineNumbers}
-\lstnewenvironment{code*}%
-{\setstretch{1.07}\LocallyStopLineNumbers%
-\setkeys{lst}{numbers=left,columns=fullflexible,keepspaces=true}%
+\lstset{% LaTeX3 commands
+ classoffset = 1,
+ texcsstyle =* \color{code-expl3},
+ moretexcs =
+ {
+ }
}
-{\ResumeLineNumbers}
+\lstnewenvironment{code}{\setstretch{1.05}\LocallyStopLineNumbers}{\ResumeLineNumbers\vspace{-.3\baselineskip}\vspace{-.5\parskip}}
+\lstnewenvironment{code*}{\setstretch{1.05}\lstset{numbers=left}\LocallyStopLineNumbers}{\ResumeLineNumbers\vspace{-.3\baselineskip}\vspace{-.5\parskip}}
+
+\newcommand{\classoption}[1]{\texttt{\textcolor{code-option}{#1}}}
+\newcommand{\packageoption}[1]{\texttt{\textcolor{code-option}{#1}}}
+\newcommand{\commandoption}[1]{\texttt{\textcolor{code-keys}{#1}}}
%%================================
%% tip
%%================================
\usepackage[many]{tcolorbox}
-\newenvironment{tip}[1][Tip]{%
+\newenvironment{tip}[1][Tip]
+ {%
\LocallyStopLineNumbers%
\begin{tcolorbox}[breakable,
enhanced,
@@ -69,12 +94,16 @@
fonttitle = \sffamily,
attach boxed title to top left = {yshift=-\tcboxedtitleheight/2, xshift=.5cm},
boxed title style = {boxrule=0pt, colframe=paper},
- before skip = 0.3cm,
- after skip = 0.3cm,
- top = 3mm,
- bottom = 3mm,
+ before skip = 3mm,
+ after skip = 3mm,
+ top = 2.5mm,
+ bottom = 1.5mm,
title={\scshape\sffamily #1}]%
-}{\end{tcolorbox}\ResumeLineNumbers}
+ }
+ {%
+ \end{tcolorbox}%
+ \ResumeLineNumbers%
+ }
%%================================
%% Names
@@ -97,7 +126,7 @@
%%================================
\begin{document}
-\def\PackageVersion{2022/06/16}
+\def\PackageVersion{2022/09/03}
\title{\minimalist{}, write your articles or books in a simple and clear way}
\author{Jinwen XU}
@@ -110,14 +139,10 @@
\begin{abstract}
\minimalist{} is a series of styles and classes for you to typeset your articles or books in a simple and clear manner. The original intention in designing this series was to write drafts and notes that look simple yet not shabby. With the help of the \ProjLib{} toolkit, also developed by the author, the classes provided here have multi-language support, preset theorem-like environments with clever reference support, and many other functionalities. Notably, using these classes, one can organize the author information in the \AmS{} fashion, makes it easy to switch to journal classes later for publication.
- Finally, this documentation is typeset using the \minimart{} class (with the option \texttt{classical}). You can think of it as a short introduction and demonstration.
+ Finally, this documentation is typeset using the \minimart{} class (with the option \classoption{classical}). You can think of it as a short introduction and demonstration.
\end{abstract}
-\begin{tip}
- This documentation has not been fully up-to-date with the new \texttt{expl3} version of this class series. Some options or commands introduced here might be obsolete.
-\end{tip}
-
\setcounter{tocdepth}{2}
\tableofcontents
@@ -365,13 +390,13 @@ In the next section, we will go through the options available.
\minimalist{} offers the following options:
-\begin{itemize}
- \item The language options \texttt{EN} / \texttt{english} / \texttt{English}, \texttt{FR} / \texttt{french} / \texttt{French}, etc.
+\begin{itemize}[label=,leftmargin=1.25em,itemindent=-1.25em]
+ \item The language options \classoption{EN} / \classoption{english} / \classoption{English}, \classoption{FR} / \classoption{french} / \classoption{French}, etc.
\begin{itemize}
\item For the option names of a specific language, please refer to \meta{language name} in the next section. The first specified language will be used as the default language.
\item The language options are optional, mainly for increasing the compilation speed. Without them the result would be the same, only slower.
\end{itemize}
- \item \texttt{draft} or \texttt{fast}
+ \item \classoption{draft} or \classoption{fast}
\begin{itemize}
\item The option \verb|fast| enables a faster but slightly rougher style, main differences are:
\begin{itemize}
@@ -383,46 +408,46 @@ In the next section, we will go through the options available.
\begin{tip}
During the draft stage, it is recommended to use the \verb|fast| option to speed up compilation. When in \verb|fast| mode, there will be a watermark ``DRAFT'' to indicate that you are currently in the draft mode.
\end{tip}
- \item \texttt{use boldface}
+ \item \classoption{use boldface}
\begin{itemize}
\item Allow boldface. When this option is enabled, the main title, the titles of all levels and the names of theorem-like environments will be bolded.
\end{itemize}
- \item \texttt{classical}
+ \item \classoption{classical}
\begin{itemize}
\item Classic mode. An antique-looking style will be used when this option is enabled, like in the current documentation.
\end{itemize}
- \item \texttt{runin}
+ \item \classoption{runin}
\begin{itemize}
\item Use the ``runin'' style for \lstinline|\subsubsection|
\end{itemize}
- \item \texttt{nothms}
+ \item \classoption{nothms}
\begin{itemize}
\item Pure text mode. Do not load theorem-like environments.
\end{itemize}
- \item \texttt{nothmnum}, \texttt{thmnum} or \texttt{thmnum=}\meta{counter}
+ \item \classoption{nothmnum}, \classoption{thmnum} or \classoption{thmnum=}\meta{counter}
\begin{itemize}
\item Theorem-like environments will not be numbered / numbered in order 1, 2, 3... / numbered within \meta{counter}. If no option is used, they will be numbered within \texttt{chapter} (book) or \texttt{section} (article).
\end{itemize}
- \item \texttt{regionalref}, \texttt{originalref}
+ \item \classoption{regionalref}, \classoption{originalref}
\begin{itemize}
- \item When referencing, whether the name of the theorem-like environment changes with the current language. The default is \texttt{regionalref}, \emph{i.e.}, the name corresponding to the current language is used; for example, when referencing a theorem-like environment in English context, the names "Theorem, Definition..." will be used no matter which language context the original environment is in. If \texttt{originalref} is enabled, then the name will always remain the same as the original place; for example, when referencing a theorem written in the French context, even if one is currently in the English context, it will still be displayed as ``Théorème''.
- \item In \texttt{fast} mode, the option \texttt{originalref} will have no effect.
+ \item When referencing, whether the name of the theorem-like environment changes with the current language. The default is \classoption{regionalref}, \emph{i.e.}, the name corresponding to the current language is used; for example, when referencing a theorem-like environment in English context, the names "Theorem, Definition..." will be used no matter which language context the original environment is in. If \classoption{originalref} is enabled, then the name will always remain the same as the original place; for example, when referencing a theorem written in the French context, even if one is currently in the English context, it will still be displayed as ``Théorème''.
+ \item In \texttt{fast} mode, the option \classoption{originalref} will have no effect.
\end{itemize}
\end{itemize}
\bigskip
Additionally, \minimart{} and \minimbook{} offers the following options:
\begin{itemize}
- \item \texttt{a4paper} or \texttt{b5paper}
+ \item \classoption{a4paper} or \classoption{b5paper}
\begin{itemize}
\item Optional paper size. The default paper size is 7in $\times$ 10in.
\end{itemize}
- \item \texttt{palatino}, \texttt{times}, \texttt{garamond}, \texttt{noto}, \texttt{biolinum} ~$|$~ \texttt{useosf}
+ \item \classoption{palatino}, \classoption{times}, \classoption{garamond}, \classoption{noto}, \classoption{biolinum} ~$|$~ \classoption{useosf}
\begin{itemize}
\item Font options. As the name suggest, font with corresponding name will be loaded.
- \item The \texttt{useosf} option is used to enable the old-style figures.
+ \item The \classoption{useosf} option is used to enable the old-style figures.
\end{itemize}
- \item \texttt{useindent}
+ \item \classoption{useindent}
\begin{itemize}
\item Use paragraph indentation instead of inter-paragraph spacing.
\end{itemize}
diff --git a/macros/latex/contrib/minimalist/minimalist-plain.sty b/macros/latex/contrib/minimalist/minimalist-plain.sty
index 6afa15b14e..051a773624 100644
--- a/macros/latex/contrib/minimalist/minimalist-plain.sty
+++ b/macros/latex/contrib/minimalist/minimalist-plain.sty
@@ -15,11 +15,10 @@
%% and version 1.3c or later is part of all distributions of LaTeX version
%% 2005/12/01 or later.
%%
-\NeedsTeXFormat{LaTeX2e}[2020-10-01]
-\RequirePackage{l3keys2e}
+\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplPackage
{minimalist-plain}
- {2022/06/16} {}
+ {2022/09/03} {}
{The plain style of minimalist}
\IfPackageLoadedTF { minimalist } {}
@@ -443,9 +442,15 @@
\titleformat{\paragraph}[runin]
{ \g_minimalist_title_font_paragraph_tl }{\theparagraph}{1em}{#1}
-\titlespacing{\section}{0pt}{\baselineskip}{.6\baselineskip}
-\titlespacing{\subsection}{0pt}{.75\baselineskip}{.4\baselineskip}
-\titlespacing{\subsubsection}{0pt}{.5\baselineskip}{.3\baselineskip}
+\titlespacing{\section}{0pt}{1\baselineskip plus .5\baselineskip minus .2\baselineskip}{.6\baselineskip plus .3\baselineskip minus .2\baselineskip}
+\titlespacing{\subsection}{0pt}{.75\baselineskip plus .3\baselineskip minus .2\baselineskip}{.4\baselineskip plus .2\baselineskip minus .1\baselineskip}
+\bool_if:NTF \l__minimalist_runin_bool
+ {
+ \titlespacing{\subsubsection}{0pt}{.5\baselineskip plus .2\baselineskip minus .1\baselineskip}{0pt}
+ }
+ {
+ \titlespacing{\subsubsection}{0pt}{.5\baselineskip plus .2\baselineskip minus .1\baselineskip}{.3\baselineskip plus .2\baselineskip minus .1\baselineskip}
+ }
%%================================
%% ToC format
@@ -514,21 +519,21 @@
\setlistdepth{10}
\setlist{noitemsep, topsep=.33\topsep-.5\parskip}
\setlist[enumerate]{labelsep=*, leftmargin=*}
-\setlist[enumerate,1]{label=\arabic*$)$,
- ref = \arabic*$)$}
-\setlist[enumerate,2]{label=\emph{\roman*}$)$,
- ref = \arabic{enumi}.\emph{\roman*}$)$}
-\setlist[enumerate,3]{label=\emph{\alph*}$)$,
- ref = \arabic{enumi}.\emph{\roman{enumii}}.\emph{\alph*}$)$}
+\setlist[enumerate,1]{label = \normalfont\arabic*$\mskip-.5mu\big)$,
+ ref = \normalfont\color{.!45!paper}\arabic*$\mskip-.5mu\big)$}
+\setlist[enumerate,2]{label = \normalfont\emph{\roman*}$\mskip-.5mu\big)$,
+ ref = \normalfont\color{.!45!paper}\arabic{enumi}.\emph{\roman*}$\mskip-.5mu\big)$}
+\setlist[enumerate,3]{label = \normalfont\emph{\alph*}$\mskip-.5mu\big)$,
+ ref = \normalfont\color{.!45!paper}\arabic{enumi}.\emph{\roman{enumii}}.\emph{\alph*}$\mskip-.5mu\big)$}
\setlist[description]{font=\normalfont\minimalist_bfseries:}
\renewlist{itemize}{itemize}{10}
-\setlist[itemize]{leftmargin=*,label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\cdot$}}
-\AddLanguageSetting { \setlist[itemize,1]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\bullet$}} }
-\AddLanguageSetting [french] { \setlist[itemize,1]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{\rule[.2\baselineskip]{.8em}{.75pt}}} }
-\setlist[itemize,2]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{\rule[.2\baselineskip]{.5em}{.75pt}}}
-\setlist[itemize,3]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\circ$}}
-\setlist[itemize,4]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\ast$}}
+\setlist[itemize]{leftmargin=*,label=\textcolor{.!27!paper}{$\cdot$}}
+\AddLanguageSetting { \setlist[itemize,1]{label=\textcolor{.!27!paper}{$\bullet$},leftmargin=\maxof{\parindent}{1.5em}} }
+\AddLanguageSetting [french] { \setlist[itemize,1]{label=\textcolor{.!39!paper}{\rule[.2\baselineskip]{.8em}{.75pt}},leftmargin=\maxof{\parindent}{1.5em}} }
+\setlist[itemize,2]{label=\textcolor{.!27!paper}{\rule[.2\baselineskip]{.55em}{.75pt}}}
+\setlist[itemize,3]{label=\textcolor{.!27!paper}{$\circ$}}
+\setlist[itemize,4]{label=\textcolor{.!27!paper}{$\ast$}}
%%================================
%% Blank page
@@ -595,8 +600,17 @@ heading_suffix "}\n"
\newcommand*{\IndexDotfill}
{
- \leaders \hbox to .67em {\hss \textcolor{main-text!15!paper}{.} \hss} \hfill
+ \null\nobreak
+ \leaders \hbox to .67em {\hss \textcolor{main-text!15!paper}{.} \hss} \hskip1em plus1fill
}
+\newcommand*{\IndexLinebreak}
+ {
+ \nobreakspace\textcolor{main-text!50!paper}{\raisebox{.25ex}{.}\raisebox{.05ex}{.}}
+ \item\hspace*{\hangindent}
+ \textcolor{main-text!50!paper}{\raisebox{.35ex}{.}\raisebox{.15ex}{.}}\,
+ \unskip
+ }
+
\newcommand*{\IndexHeading}[1]
{
\str_if_eq:nnTF { #1 } { Symbols }
@@ -611,7 +625,7 @@ heading_suffix "}\n"
\renewcommand*{\indexspace}
{
\par
- \vspace{2pc ~ plus ~ .5pc ~ minus ~ .3pc}
+ \vspace{2pc plus .5pc minus .3pc}
}
\bool_new:N \l__minimalist_if_first_subitem_bool
@@ -648,11 +662,19 @@ heading_suffix "}\n"
\RequirePackage { mathtools }
\RequirePackage { amsthm }
+\def\tagform@#1{\maketag@@@{\textcolor{main-text!39!paper}{(\ignorespaces#1\unskip\@@italiccorr)}}}
+
+\PassOptionsToPackage { nopatch = eqnum } { microtype }
+
\bool_if:NTF \l__minimalist_theorem_in_new_line_bool
{
\newtheoremstyle{simple}
{.75\baselineskip}{}
- {\normalfont}{}
+ {
+ \normalfont
+ \parindent=0pt
+ \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip
+ }{}
{\normalfont}{}
{0pt}
{
@@ -665,7 +687,11 @@ heading_suffix "}\n"
{
\newtheoremstyle{simple}
{}{}
- {\normalfont}{}
+ {
+ \normalfont
+ \parindent=0pt
+ \parskip=.3333\baselineskip plus .0667\baselineskip minus .0833\baselineskip
+ }{}
{\normalfont}{}
{0pt}
{{\thmname{#1}\thmnumber{\nobreakspace #2}}
@@ -674,9 +700,9 @@ heading_suffix "}\n"
\theoremstyle{simple}
-\renewcommand{\qedsymbol}{
+\newcommand{\customqedsymbol}{
\makebox[1em]{\color{main-text!27!paper}\rule[-0.1em]{.95em}{.95em}}}
-\let\qedsymbolOriginal\qedsymbol
+\let\qedsymbol\customqedsymbol
\bool_if:NTF \l__minimalist_fast_bool
{
@@ -691,10 +717,19 @@ heading_suffix "}\n"
\hypersetup{ hidelinks, linktoc = all }
\bookmarksetup{ numbered }
\renewcommand\Hy@numberline[1]{#1.~}
+ % https://tex.stackexchange.com/a/1821
+ % Add the bookmark of ToC
+ \hook_gput_code:nnn { cmd/tableofcontents/before } { minimalist }
+ {
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \pdfbookmark[0]{\contentsname}{toc}
+ }
}
\RequirePackage { projlib-theorem }
+\SetTheorem { proof, proof* } { qed-symbol = { \customqedsymbol } }
+
\exp_args:No \SetTheorem { \c_projlib_theorem_supported_clist, theorem-with-name }
{
name style = {
diff --git a/macros/latex/contrib/minimalist/minimalist.sty b/macros/latex/contrib/minimalist/minimalist.sty
index 910f1e7960..77be9865b6 100644
--- a/macros/latex/contrib/minimalist/minimalist.sty
+++ b/macros/latex/contrib/minimalist/minimalist.sty
@@ -15,11 +15,10 @@
%% and version 1.3c or later is part of all distributions of LaTeX version
%% 2005/12/01 or later.
%%
-\NeedsTeXFormat{LaTeX2e}[2020-10-01]
-\RequirePackage{l3keys2e}
+\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplPackage
{minimalist}
- {2022/06/16} {}
+ {2022/09/03} {}
{A simple and clear style for articles and books}
\keys_define:nn { minimalist }
@@ -74,7 +73,7 @@
\PassOptionsToPackage { \CurrentOption } { projlib-theorem }
}
}
-\ProcessKeysOptions { minimalist }
+\ProcessKeyOptions [ minimalist ]
\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 5ad7607932..4620adb745 100644
--- a/macros/latex/contrib/minimalist/minimart.cls
+++ b/macros/latex/contrib/minimalist/minimart.cls
@@ -15,11 +15,10 @@
%% and version 1.3c or later is part of all distributions of LaTeX version
%% 2005/12/01 or later.
%%
-\NeedsTeXFormat{LaTeX2e}[2020-10-01]
-\RequirePackage{l3keys2e}
+\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplClass
{minimart}
- {2022/06/16} {}
+ {2022/09/03} {}
{A simple and clear article style}
\tl_const:Nn \l__minimclass_base_class_tl { article }
@@ -72,7 +71,7 @@
\PassOptionsToPackage { \CurrentOption } { minimalist }
}
}
-\ProcessKeysOptions { minimclass }
+\ProcessKeyOptions [ minimclass ]
\LoadClass{\l__minimclass_base_class_tl}
@@ -143,9 +142,6 @@
\RequirePackage { minimalist }
-\raggedbottom
-\hfuzz=2pt
-\vfuzz=2pt
%%================================
%% Fonts
@@ -153,6 +149,15 @@
\WarningFilter { latexfont } { Font~shape }
\WarningFilter { latexfont } { Some~font }
+\hook_gput_code:nnn { begindocument/before } { minimclass }
+ {
+ \IfPackageLoadedTF { biblatex }
+ {
+ \PassOptionsToPackage { biblatex } { embrac }
+ } {}
+ \RequirePackage { embrac }
+ }
+
\cs_new_protected:Nn \__minimclass_load_file_or_config:Nnn
{
\bool_if:NT #1
@@ -175,6 +180,7 @@
{
\RequirePackage { mathpazo }
\RequirePackage { newpxtext }
+ \bool_if:NT \l__projlib_font_useosf_bool { \useosf }
\RequirePackage { amssymb }
\sys_if_engine_pdftex:F
{
@@ -187,12 +193,40 @@
BoldItalicFont = *-bolditalic ,
]
}
+ % Adjusting the kerning of 'embrac' for 'newpxtext'
+ \hook_gput_code:nnn { begindocument/before } { minimclass }
+ {
+ \RenewEmph{[}{]}
+ \RenewEmph{(}{)}
+ }
}
}
-\PassOptionsToPackage { all } { nowidow }
-\RequirePackage { nowidow }
+%%================================
+%% Graphics
+%%================================
+\RequirePackage { graphicx }
+\graphicspath { { images/ } }
+\RequirePackage { wrapfig }
+\RequirePackage { float }
+\RequirePackage { caption }
+\captionsetup { font = small }
+
+%%================================
+%% Icing on the cake
+%%================================
+\bool_if:NT \l__minimclass_fast_bool { \endinput }
+
+\sys_if_engine_luatex:TF
+ {
+ \RequirePackage { lua-widow-control }
+ \lwcsetup { balanced }
+ }
+ {
+ \PassOptionsToPackage { all } { nowidow }
+ \RequirePackage { nowidow }
+ }
\sys_if_engine_xetex:T
{
@@ -206,25 +240,6 @@
}
}
-\hook_gput_code:nnn { begindocument/before } { minimclass }
- {
- \IfPackageLoadedTF { biblatex }
- {
- \PassOptionsToPackage { biblatex } { embrac }
- } {}
- \RequirePackage { embrac }
- }
-
-%%================================
-%% Graphics
-%%================================
-\RequirePackage { graphicx }
-\graphicspath { { images/ } }
-\RequirePackage { wrapfig }
-\RequirePackage { float }
-\RequirePackage { caption }
-\captionsetup { font = small }
-
\endinput
%%
%% End of file `minimalist/minimart.cls'.
diff --git a/macros/latex/contrib/minimalist/minimbook.cls b/macros/latex/contrib/minimalist/minimbook.cls
index f844f26ffb..45908a0e44 100644
--- a/macros/latex/contrib/minimalist/minimbook.cls
+++ b/macros/latex/contrib/minimalist/minimbook.cls
@@ -15,11 +15,10 @@
%% and version 1.3c or later is part of all distributions of LaTeX version
%% 2005/12/01 or later.
%%
-\NeedsTeXFormat{LaTeX2e}[2020-10-01]
-\RequirePackage{l3keys2e}
+\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplClass
{minimbook}
- {2022/06/16} {}
+ {2022/09/03} {}
{A simple and clear book style}
\tl_const:Nn \l__minimclass_base_class_tl { book }
@@ -72,7 +71,7 @@
\PassOptionsToPackage { \CurrentOption } { minimalist }
}
}
-\ProcessKeysOptions { minimclass }
+\ProcessKeyOptions [ minimclass ]
\LoadClass{\l__minimclass_base_class_tl}
@@ -143,9 +142,6 @@
\RequirePackage { minimalist }
-\raggedbottom
-\hfuzz=2pt
-\vfuzz=2pt
%%================================
%% Fonts
@@ -153,6 +149,15 @@
\WarningFilter { latexfont } { Font~shape }
\WarningFilter { latexfont } { Some~font }
+\hook_gput_code:nnn { begindocument/before } { minimclass }
+ {
+ \IfPackageLoadedTF { biblatex }
+ {
+ \PassOptionsToPackage { biblatex } { embrac }
+ } {}
+ \RequirePackage { embrac }
+ }
+
\cs_new_protected:Nn \__minimclass_load_file_or_config:Nnn
{
\bool_if:NT #1
@@ -175,6 +180,7 @@
{
\RequirePackage { mathpazo }
\RequirePackage { newpxtext }
+ \bool_if:NT \l__projlib_font_useosf_bool { \useosf }
\RequirePackage { amssymb }
\sys_if_engine_pdftex:F
{
@@ -187,12 +193,40 @@
BoldItalicFont = *-bolditalic ,
]
}
+ % Adjusting the kerning of 'embrac' for 'newpxtext'
+ \hook_gput_code:nnn { begindocument/before } { minimclass }
+ {
+ \RenewEmph{[}{]}
+ \RenewEmph{(}{)}
+ }
}
}
-\PassOptionsToPackage { all } { nowidow }
-\RequirePackage { nowidow }
+%%================================
+%% Graphics
+%%================================
+\RequirePackage { graphicx }
+\graphicspath { { images/ } }
+\RequirePackage { wrapfig }
+\RequirePackage { float }
+\RequirePackage { caption }
+\captionsetup { font = small }
+
+%%================================
+%% Icing on the cake
+%%================================
+\bool_if:NT \l__minimclass_fast_bool { \endinput }
+
+\sys_if_engine_luatex:TF
+ {
+ \RequirePackage { lua-widow-control }
+ \lwcsetup { balanced }
+ }
+ {
+ \PassOptionsToPackage { all } { nowidow }
+ \RequirePackage { nowidow }
+ }
\sys_if_engine_xetex:T
{
@@ -206,25 +240,6 @@
}
}
-\hook_gput_code:nnn { begindocument/before } { minimclass }
- {
- \IfPackageLoadedTF { biblatex }
- {
- \PassOptionsToPackage { biblatex } { embrac }
- } {}
- \RequirePackage { embrac }
- }
-
-%%================================
-%% Graphics
-%%================================
-\RequirePackage { graphicx }
-\graphicspath { { images/ } }
-\RequirePackage { wrapfig }
-\RequirePackage { float }
-\RequirePackage { caption }
-\captionsetup { font = small }
-
\endinput
%%
%% End of file `minimalist/minimbook.cls'.