summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/minimalist
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-06-07 03:02:21 +0000
committerNorbert Preining <norbert@preining.info>2021-06-07 03:02:21 +0000
commit1ba2ae020aea220436899cf65f5a85c1686940cd (patch)
tree1a212dbc995aba6b72a39941cad6b3ded5d2516e /macros/latex/contrib/minimalist
parent4338972cc175be565a3441c4ae8a6aa0dfcbe9f9 (diff)
CTAN sync 202106070302
Diffstat (limited to 'macros/latex/contrib/minimalist')
-rw-r--r--macros/latex/contrib/minimalist/README.md10
-rw-r--r--macros/latex/contrib/minimalist/minimalist-doc.pdfbin79955 -> 81352 bytes
-rw-r--r--macros/latex/contrib/minimalist/minimalist-doc.tex129
-rw-r--r--macros/latex/contrib/minimalist/minimalist.sty226
-rw-r--r--macros/latex/contrib/minimalist/minimart.cls71
-rw-r--r--macros/latex/contrib/minimalist/minimbook.cls71
6 files changed, 368 insertions, 139 deletions
diff --git a/macros/latex/contrib/minimalist/README.md b/macros/latex/contrib/minimalist/README.md
index 05a62e0477..7ff27be22e 100644
--- a/macros/latex/contrib/minimalist/README.md
+++ b/macros/latex/contrib/minimalist/README.md
@@ -11,8 +11,8 @@ with a simple and clear design. It mainly consists of two parts.
- `minimbook.cls` : class for typesetting books
They can be used with any major TeX engine. Currently they have native
- support to English, French and German typesetting (more language to be
- added).
+ support to English, French, German, Italian, Portuguese
+ (European and Brazilian) and Spanish typesetting.
- Derivative part (they have separate pages on CTAN):
@@ -21,9 +21,9 @@ with a simple and clear design. It mainly consists of two parts.
They are similar to the main classes, but have unicode support, thus can
only be used with either XeLaTeX or LuaLaTeX. Currently they have native
- support to Chinese (both simplified and traditional), English, French,
- German, Japanese and Russian typesetting (more language to be added), and
- also use more beautiful fonts.
+ support to Chinese (simplified and traditional), English, French, German,
+ Italian, Japanese, Portuguese (European and Brazilian), Russian and Spanish
+ typesetting, and also use more beautiful fonts.
# License
diff --git a/macros/latex/contrib/minimalist/minimalist-doc.pdf b/macros/latex/contrib/minimalist/minimalist-doc.pdf
index c89d0a2595..969688dff0 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 0b1b537bc8..1ba08ae37f 100644
--- a/macros/latex/contrib/minimalist/minimalist-doc.tex
+++ b/macros/latex/contrib/minimalist/minimalist-doc.tex
@@ -1,5 +1,8 @@
%! TEX program = xelatex
-\documentclass{minimart}
+\documentclass[puretext]{minimart}
+
+\CreateTheorem{definition}<highest>
+\CreateTheorem{theorem}<highest>
\linenumbers % Enable line numbers
@@ -34,8 +37,8 @@
}
\providecommand{\meta}[1]{$\langle${\normalfont\itshape#1}$\rangle$}
\lstset{moretexcs=%
- {linenumbers,nolinenumbers,subsection,
- color,CreateTheorem,proofideanameEN,cref,dnf,needgraph,UseLanguage,UseOtherLanguage,AddLanguageSetting,maketitle,address,curraddr,email,keywords,subjclass,thanks,dedicatory,PJLdate,ProjLib
+ {linenumbers,nolinenumbers,subsection,href,
+ color,NameTheorem,CreateTheorem,proofideanameEN,cref,dnf,needgraph,UseLanguage,UseOtherLanguage,AddLanguageSetting,maketitle,address,curraddr,email,keywords,subjclass,thanks,dedicatory,PJLdate,ProjLib
}
}
\lstnewenvironment{code}%
@@ -45,25 +48,25 @@
{\ResumeLineNumbers}
%%================================
-%% remind
+%% tip
%%================================
\usepackage[many]{tcolorbox}
-\newenvironment{remind}[1][Remind]{%
+\newenvironment{tip}[1][Tip]{%
\LocallyStopLineNumbers%
\begin{tcolorbox}[breakable,
enhanced,
width = \textwidth,
- colback = white, colbacktitle = paper,
+ colback = paper, colbacktitle = paper,
colframe = gray!50, boxrule=0.2mm,
coltitle = black,
fonttitle = \sffamily,
- attach boxed title to top left = {yshift=-\tcboxedtitleheight/2, xshift=\tcboxedtitlewidth/4},
+ 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,
- title={\sffamily #1}]%
+ title={\scshape\sffamily #1}]%
}{\end{tcolorbox}\ResumeLineNumbers}
%%================================
@@ -82,15 +85,15 @@
\title{\minimalist{}, write your articles or books in a simple and clear way}
\author{Jinwen XU}
-\thanks{Corresponding to: \texttt{\minimalist{} 2021/05/23}}
-\date{May 2021, Beijing}
+\thanks{Corresponding to: \texttt{\minimalist{} 2021/06/07}}
+\date{June 2021, Beijing}
\maketitle
\begin{abstract}
\minimalist{} is a series of styles and classes for you to typeset your articles or books in a simple and clear manner. My original intention in designing this series was to write drafts and notes that look simple yet not shabby.
- The entire collection includes \verb|minimalist.sty|, which is the main style shared by all of the following classes; \verb|minimart.cls| for typesetting articles and \verb|minimbook.cls| for typesetting books. They compile with any major \TeX{} engine, with native support to English, French and German typesetting via \lstinline|\UseLanguage| (see the instruction below for detail).
+ The entire collection includes \verb|minimalist.sty|, which is the main style shared by all of the following classes; \verb|minimart.cls| for typesetting articles and \verb|minimbook.cls| for typesetting books. They compile with any major \TeX{} engine, with native support to English, French, German, Italian, Portuguese (European and Brazilian) and Spanish typesetting via \lstinline|\UseLanguage| (see the instruction below for detail).
You can also found \einfart{} and \simplivre{} on CTAN. They are the enhanced version of \minimart{} and \minimbook{} with unicode support. With this, they can access to more beautiful fonts, and also have native support for Chinese, Japanese and Russian typesetting. On the other hand, they need to be compiled with \hologo{XeLaTeX} or \hologo{LuaLaTeX} (not pdf\LaTeX).
@@ -100,10 +103,10 @@
\tableofcontents
-\bigskip
-\begin{remind}
+\medskip
+\begin{tip}
Multi-language support, theorem-like environments, draft marks and some other features are provided by the \ProjLib{} toolkit. Here we only briefly discuss how to use it with this document class. For more detailed information, you can refer to the documentation of \ProjLib{}.
-\end{remind}
+\end{tip}
\clearpage
\section{Initialization}
@@ -145,12 +148,12 @@ And of course, you can also use the default classes \textsf{article} or \textsf{
\end{itemize}
\end{itemize}
-\begin{remind}
+\begin{tip}
\begin{itemize}
- \item During the draft stage, it is recommended to use the \verb|fast| option to speed up compilation. At the end, one should remove the ``fast'' option to get the final version. When in \verb|fast| mode, there will be a watermark "DRAFT" to indicate that you are currently in the draft mode.
+ \item During the draft stage, it is recommended to use the \verb|fast| option to speed up compilation. At the end, one should remove the ``fast'' option to get the final version. When in \verb|fast| mode, there will be a watermark ``DRAFT'' to indicate that you are currently in the draft mode.
\item \texttt{allowbf} + \texttt{classical} is probably a good choice if you prefer traditional style.
\end{itemize}
-\end{remind}
+\end{tip}
\bigskip
Additionally, \minimart{} and \minimbook{} offers the following options:
@@ -159,41 +162,39 @@ Additionally, \minimart{} and \minimbook{} offers the following options:
\begin{itemize}
\item Optional paper size. The default paper size is 7in $\times$ 10in.
\end{itemize}
+ \item \texttt{palatino}, \texttt{times}, \texttt{garamond}, \texttt{biolinum}
+ \begin{itemize}
+ \item Font options. As the name suggest, font with corresponding name will be loaded.
+ \end{itemize}
\end{itemize}
-% \section{On the fonts}
-% By default, \minimart{} and \minimbook{} uses Palatino Linotype as the English font, FounderType's YouSong and YouHei GBK as the Chinese fonts, and partially uses Neo Euler as the math font. Among them, Neo Euler can be downloaded at \url{https://github.com/khaledhosny/euler-otf}. The other fonts are not free, you need to purchase and use them on your own. (For the Chinese fonts, visit FounderType's website for detail: \url{https://www.foundertype.com} ).
-
-% % \begin{itemize}
-% % \item English main font. \textsf{English sans serif font}.
-% % \item 中文主要字体, \textsf{中文无衬线字体}
-% % \item Math demonstration: \( \alpha, \beta, \gamma, \delta, 1,2,3,4, a,b,c,d \), \[\mathrm{li}(x)\coloneqq \int_2^{\infty} \frac{1}{\log t}\,\mathrm{d}t \]
-% % \end{itemize}
-% When the corresponding font is not installed, fonts that comes with TeX Live will be used instead. In this case, the experience might be reduced.
-
-\section{Some instructions}
+\section{Instructions}
Many of the features described next are provided by the \ProjLib{} toolkit. Only the basic usage is mentioned here. For more details, please refer to its user documentation.
\subsection{Language configuration}
-\minimart{} has multi-language support, including simplified Chinese, traditional Chinese, English, French, German, Japanese, and Russian. The language can be selected by the following macros:
+\minimart{} has multi-language support, including English, French, German, Italian, Portuguese (European and Brazilian) and Spanish. The language can be selected by the following macros:
\begin{itemize}
- \item \lstinline|\UseLanguage{|\meta{language name}\lstinline|}| is used to specify the language. The corresponding setting of the language will be applied after it. It can be used either in the preamble or in the main body. When no language is specified, ``English" is selected by default.
+ \item \lstinline|\UseLanguage{|\meta{language name}\lstinline|}| is used to specify the language. The corresponding setting of the language will be applied after it. It can be used either in the preamble or in the main body. When no language is specified, ``English'' is selected by default.
\item \lstinline|\UseOtherLanguage{|\meta{language name}\lstinline|}{|\meta{content}\lstinline|}|, which uses the specified language settings to typeset \meta{content}. Compared with \lstinline|\UseLanguage|, it will not modify the line spacing, so line spacing would remain stable when CJK and Western texts are mixed.
\end{itemize}
-\meta{language name} can be:
+\meta{language name} can be (it is not case sensitive, for example, \texttt{French} and \texttt{french} have the same effect):
\begin{itemize}
- \item Simplified Chinese: \texttt{Chinese}, \texttt{chinese}, \texttt{SChinese}, \texttt{schinese}, \texttt{SimplifiedChinese} or \texttt{simplifiedchinese}
- \item Traditional Chinese: \texttt{TChinese}, \texttt{tchinese}, \texttt{TraditionalChinese} or \texttt{traditionalchinese}
- \item English: \texttt{English} or \texttt{english}
- \item French: \texttt{French} or \texttt{french}
- \item German: \texttt{German}, \texttt{german} or \texttt{ngerman}
- \item Japanese: \texttt{Japanese} or \texttt{japanese}
- \item Russian: \texttt{Russian} or \texttt{russian}
+ \item Simplified Chinese: \texttt{CN}, \texttt{Chinese}, \texttt{SChinese} or \texttt{SimplifiedChinese}
+ \item Traditional Chinese: \texttt{TC}, \texttt{TChinese} or \texttt{TraditionalChinese}
+ \item English: \texttt{EN} or \texttt{English}
+ \item French: \texttt{FR} or \texttt{French}
+ \item German: \texttt{DE}, \texttt{German} or \texttt{ngerman}
+ \item Italian: \texttt{IT} or \texttt{Italian}
+ \item Portuguese: \texttt{PT} or \texttt{Portuguese}
+ \item Portuguese (Brazilian): \texttt{BR} or \texttt{Brazilian}
+ \item Spanish: \texttt{ES} or \texttt{Spanish}
+ \item Japanese: \texttt{JP} or \texttt{Japanese}
+ \item Russian: \texttt{RU} or \texttt{Russian}
\end{itemize}
\medskip
@@ -213,14 +214,14 @@ For example, \lstinline|\AddLanguageSetting(German){\color{orange}}| can make al
\subsection{Theorems and how to reference them}
-Environments such as definitions and theorems have been pre-defined and can be used directly.
+Environments such as \texttt{definition} and \texttt{theorem} have been pre-defined and can be used directly.
More specifically, preset environments include:
-\texttt{assumption}, \texttt{axiom}, \texttt{conjecture}, \texttt{convention}, \texttt{corollary}, \texttt{definition}, \texttt{definition-proposition}, \texttt{definition-theorem}, \texttt{example}, \texttt{exercise}, \texttt{fact}, \texttt{hypothesis}, \texttt{lemma}, \texttt{notation}, \texttt{problem}, \texttt{property}, \texttt{proposition}, \texttt{question}, \texttt{remark}, \texttt{theorem}, and the corresponding unnumbered version with an asterisk \lstinline|*| in the name. The display of these environments will change according to the current language.
+\texttt{assumption}, \texttt{axiom}, \texttt{conjecture}, \texttt{convention}, \texttt{corollary}, \texttt{definition}, \texttt{definition-proposition}, \texttt{definition-theorem}, \texttt{example}, \texttt{exercise}, \texttt{fact}, \texttt{hypothesis}, \texttt{lemma}, \texttt{notation}, \texttt{observation}, \texttt{problem}, \texttt{property}, \texttt{proposition}, \texttt{question}, \texttt{remark}, \texttt{theorem}, and the corresponding unnumbered version with an asterisk \lstinline|*| in the name. The titles will change with the current language. For example, \texttt{theorem} will be displayed as ``Theorem" in English mode and ``Théorème" in French mode.
-When referencing a theorem-like environment, it is recommended to use clever reference \lstinline|\cref{|\meta{label}\texttt{\}}. In this way, there is no need to explicitly write down the name of the corresponding environment every time.
+When referencing a theorem-like environment, it is recommended to use \lstinline|\cref{|\meta{label}\texttt{\}}. In this way, there is no need to explicitly write down the name of the corresponding environment every time.
-\begin{remind}[Example]
+\begin{tip}[Example]
\begin{code}
\begin{definition}[Strange things] \label{def: strange} ...
\end{code}
@@ -240,27 +241,20 @@ After using \lstinline|\UseLanguage{French}|, a theorem will be displayed as:
\end{theorem}
By default, when referenced, the name of the theorem always matches the language of the context in which the theorem is located. For example, the definition above is still displayed in English in the current French mode: \cref{def: strange} and \cref{thm}. If you want the name of the theorem to match the current context when referencing, you can add \texttt{regionalref} to the global options.
-\end{remind}
+\end{tip}
\UseLanguage{English}
\subsection{Define a new theorem-like environment}
-If you need to define a new theorem-like environment, you must first define the name of the environment in the language used: \lstinline|\|\meta{name of environment}\meta{language abbr}, where \meta{language abbr} is the abbreviation of language, which can be:
-% \vspace{-.5\baselineskip}
-\begin{longtable}{ll|ll}
- \texttt{CN} & Simplified Chinese & \texttt{DE} & German\\
- \texttt{TC} & Traditional Chinese & \texttt{JP} & Japanese\\
- \texttt{EN} & English & \texttt{RU} & Russian\\
- \texttt{FR} & French & &\\
-\end{longtable}
-
-\vspace{-.5\baselineskip}
-\begin{remind}
- If you want to define an environment with an asterisk \lstinline|*| after the name, you don't need to write an asterisk in the \meta{name of environment} above. See the example below.
-\end{remind}
+If you need to define a new theorem-like environment, you must first define the name of the environment in the language to use:
+\begin{itemize}
+ \item \lstinline|\NameTheorem[|\meta{language name}\lstinline|]{|\meta{name of environment}\lstinline|}{|\meta{name string}\lstinline|}|
+\end{itemize}
+For \meta{language name}, please refer to the section on language configuration. When \meta{language name} is not specified, the name will be set for all supported languages. In addition, environments with or without asterisk share the same name, therefore, \lstinline|\NameTheorem{envname*}{...}| has the same effect as \lstinline|\NameTheorem{envname}{...}| .
+\medskip
And then define this environment in one of following five ways:
\begin{itemize}
\item \lstinline|\CreateTheorem*{|\meta{name of environment}\lstinline|}|
@@ -275,9 +269,10 @@ And then define this environment in one of following five ways:
\begin{itemize}
\item Define a numbered environment \meta{name of environment}, which shares the counter \meta{numbered like}
\end{itemize}
+ \clearpage
\item \lstinline|\CreateTheorem{|\meta{name of environment}\lstinline|}<|\meta{numbered within}\lstinline|>|
\begin{itemize}
- \item Define a numbered environment \meta{name of environment}, numbered within the \\counter \meta{numbered within}
+ \item Define a numbered environment \meta{name of environment}, numbered within the counter \meta{numbered within}
\end{itemize}
\item \lstinline|\CreateTheorem{|\meta{name of environment}\lstinline|}(|\meta{existed environment}\lstinline|)|\\
\lstinline|\CreateTheorem*{|\meta{name of environment}\lstinline|}(|\meta{existed environment}\lstinline|)|
@@ -285,17 +280,18 @@ And then define this environment in one of following five ways:
\item Identify \meta{name of environment} with \meta{existed environment} or \meta{existed environment}\lstinline|*|.
\item This method is usually useful in the following two situations:
\begin{enumerate}
- \item To use a more concise name. For example, with \lstinline|\CreateTheorem{thm}|\\\lstinline|(theorem)|, one can then use the name \texttt{thm} to write theorem.
- \item To remove the numbering. For example, one can remove the numbering of the \texttt{remark} environment with \lstinline|\CreateTheorem{remark}(remark*)|.
+ \item To use a more concise name. For example, with \lstinline|\CreateTheorem{thm}(theorem)|, one can then use the name \texttt{thm} to write theorem.
+ \item To remove the numbering of some environments. For example, one can remove the numbering of the \texttt{remark} environment with \lstinline|\CreateTheorem{remark}(remark*)|.
\end{enumerate}
\end{itemize}
\end{itemize}
-\begin{remind}
- It uses \textsf{amsthm} internally, so the traditional \texttt{theoremstyle} is also applicable to it. One only needs declare the style before the relevant definitions.
-\end{remind}
+\begin{tip}
+ This macro utilizes the feature of \textsf{amsthm} internally, so the traditional \texttt{theoremstyle} is also applicable to it. One only needs declare the style before the relevant definitions.
+\end{tip}
-\def\proofideanameEN{Idea}
+% \def\proofideanameEN{Idea}
+\NameTheorem[EN]{proofidea}{Idea}
\CreateTheorem*{proofidea*}
\CreateTheorem{proofidea}<subsection>
@@ -303,7 +299,7 @@ And then define this environment in one of following five ways:
Here is an example. The following code:
\begin{code}
- \def\proofideanameEN{Idea}
+ \NameTheorem[EN]{proofidea}{Idea}
\CreateTheorem*{proofidea*}
\CreateTheorem{proofidea}<subsection>
\end{code}
@@ -338,7 +334,7 @@ Therefore, the title part can either be written in the usual way, in accordance
\begin{code}
\title{(*\meta{title}*)}
- \author{(*\meta{author}*)}
+ \author{(*\meta{author}*)\thanks{(*\meta{text}*)}}
\date{(*\meta{date}*)}
\maketitle
\begin{abstract}
@@ -354,6 +350,7 @@ or written in the way of \AmS{} classes:
\begin{code}
\title{(*\meta{title}*)}
\author{(*\meta{author}*)}
+ \thanks{(*\meta{text}*)}
\address{(*\meta{address}*)}
\email{(*\meta{email}*)}
\date{(*\meta{date}*)}
@@ -397,7 +394,7 @@ This is a disadvantage brought about by the underline decoration of the title.
\begin{itemize}[itemsep=.6em]
\item The font settings are still not perfect.
- \item Since many features are based on the \ProjLib{} toolkit, \minimalist{} (and hence \minimart{} and \minimbook{}) inherits all its problems. For details, please refer to the "Known Issues" section of the \ProjLib{} documentation.
+ \item Since many features are based on the \ProjLib{} toolkit, \minimalist{} (and hence \minimart{} and \minimbook{}) inherits all its problems. For details, please refer to the ``Known Issues'' section of the \ProjLib{} documentation.
\item The error handling mechanism is incomplete: there is no corresponding error prompt when some problems occur.
\item There are still many things that can be optimized in the code.
\end{itemize}
diff --git a/macros/latex/contrib/minimalist/minimalist.sty b/macros/latex/contrib/minimalist/minimalist.sty
index 12a4b33407..11d2e62035 100644
--- a/macros/latex/contrib/minimalist/minimalist.sty
+++ b/macros/latex/contrib/minimalist/minimalist.sty
@@ -17,7 +17,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2020-10-01]
\ProvidesPackage{minimalist}
- [2021/05/23 A simple and clear style for articles and books]
+ [2021/06/07 A simple and clear style for articles and books]
\RequirePackage{kvoptions}
\RequirePackage{etoolbox}
\SetupKeyvalOptions{%
@@ -26,6 +26,8 @@
}
\DeclareBoolOption[false]{draft}
\DeclareBoolOption[false]{fast}
+\DeclareBoolOption[false]{puretext}
+\DeclareBoolOption[false]{nothms}
\DeclareBoolOption[false]{allowbf}
\DeclareBoolOption[false]{classical}
\ProcessKeyvalOptions*\relax
@@ -33,6 +35,9 @@
\if@minimalist@draft
\@minimalist@fasttrue
\fi
+\if@minimalist@puretext
+ \@minimalist@nothmstrue
+\fi
\if@minimalist@allowbf
\newcommand{\conditionalbfseries}{\bfseries\colorlet{PJLtempcolor}{.}\color{PJLtempcolor!83!paper}}
@@ -41,7 +46,7 @@
\fi
\newif\ifIsBook
-\ifdefined\chapter\IsBooktrue\else\IsBookfalse\fi
+\ifdefined\c@chapter\IsBooktrue\else\IsBookfalse\fi
%%================================
%% Title fonts
@@ -471,6 +476,7 @@
{\color{gray}\thmnote{\ensuremath{(\text{#3})}~~}}}
\fi
\else
+\def\simpleqed{\hfill\makebox[1em]{\rlap{\textcolor{gray!25!paper}{\rule[-0.1em]{.95em}{.95em}}}{\kern.07em\raisebox{.07em}{\textcolor{paper}{\rule[-0.1em]{.81em}{.81em}}}\kern.07em}}}
\newtheoremstyle{simple}%
{}{}%
{\normalfont}{}%
@@ -478,7 +484,7 @@
{0pt}%
{{\conditionalbfseries\thmname{#1}\thmnumber{ #2}}\hspace{.4em}%
\textcolor{gray!55!paper}{$|$}\hspace{.4em}%
- \color{gray}\thmnote{\ensuremath{(\text{#3})}~~}\pushQED{\qed}}
+ \color{gray}\thmnote{\ensuremath{(\text{#3})}~~}\pushQED{\simpleqed}}
\def\@endtheorem{\popQED\endtrivlist\@endpefalse }
\fi
@@ -495,67 +501,155 @@
\RequirePackage{hyperref}
\fi
-\RequirePackage[nothms]{PJLthm}
-
-%% Redefine English theorems names
-\def\theoremnameEN{\textsc{Theorem}}
-\def\lemmanameEN{\textsc{Lemma}}
-\def\propositionnameEN{\textsc{Proposition}}
-\def\corollarynameEN{\textsc{Corollary}}
-\def\propertynameEN{\textsc{Property}}
-\def\factnameEN{\textsc{Fact}}
-\def\conjecturenameEN{\textsc{Conjecture}}
-\def\definitionnameEN{\textsc{Definition}}
-\def\axiomnameEN{\textsc{Axiom}}
-\def\assumptionnameEN{\textsc{Assumption}}
-\def\conventionnameEN{\textsc{Convention}}
-\def\hypothesisnameEN{\textsc{Hypothesis}}
-\def\notationnameEN{\textsc{Notation}}
-\def\examplenameEN{\textsc{Example}}
-\def\problemnameEN{\textsc{Problem}}
-\def\questionnameEN{\textsc{Question}}
-\def\exercisenameEN{\textsc{Exercise}}
-\def\remarknameEN{\textsc{Remark}}
-
-%% Redefine French theorems names
-\def\theoremnameFR{\textsc{Théorème}}
-\def\lemmanameFR{\textsc{Lemme}}
-\def\propositionnameFR{\textsc{Proposition}}
-\def\corollarynameFR{\textsc{Corollaire}}
-\def\propertynameFR{\textsc{Propriété}}
-\def\factnameFR{\textsc{Fait}}
-\def\conjecturenameFR{\textsc{Conjecture}}
-\def\definitionnameFR{\textsc{Définition}}
-\def\axiomnameFR{\textsc{Axiome}}
-\def\assumptionnameFR{\textsc{Supposition}}
-\def\conventionnameFR{\textsc{Convention}}
-\def\hypothesisnameFR{\textsc{Hypothèse}}
-\def\notationnameFR{\textsc{Notation}}
-\def\examplenameFR{\textsc{Exemple}}
-\def\problemnameFR{\textsc{Problème}}
-\def\questionnameFR{\textsc{Question}}
-\def\exercisenameFR{\textsc{Exercice}}
-\def\remarknameFR{\textsc{Remarque}}
-
-%% Redefine German theorems names
-\def\theoremnameDE{\textsc{Satz}}
-\def\lemmanameDE{\textsc{Lemma}}
-\def\propositionnameDE{\textsc{Proposition}}
-\def\corollarynameDE{\textsc{Korollar}}
-\def\propertynameDE{\textsc{Eigenschaft}}
-\def\factnameDE{\textsc{Fakt}}
-\def\conjecturenameDE{\textsc{Vermutung}}
-\def\definitionnameDE{\textsc{Definition}}
-\def\axiomnameDE{\textsc{Axiom}}
-\def\assumptionnameDE{\textsc{Annahme}}
-\def\conventionnameDE{\textsc{Konvention}}
-\def\hypothesisnameDE{\textsc{Hypothese}}
-\def\notationnameDE{\textsc{Notation}}
-\def\examplenameDE{\textsc{Beispiel}}
-\def\problemnameDE{\textsc{Problem}}
-\def\questionnameDE{\textsc{Frage}}
-\def\exercisenameDE{\textsc{Übung}}
-\def\remarknameDE{\textsc{Bemerkung}}
+\PassOptionsToPackage{nothms}{PJLthm}
+\RequirePackage{PJLthm}
+
+%% Adjust English theorems names
+\pretocmd{\theoremnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\lemmanameEN}{\textsc}{}{\FAIL}
+\pretocmd{\propositionnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\corollarynameEN}{\textsc}{}{\FAIL}
+\pretocmd{\propertynameEN}{\textsc}{}{\FAIL}
+\pretocmd{\factnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\conjecturenameEN}{\textsc}{}{\FAIL}
+\pretocmd{\definitionnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\axiomnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\assumptionnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\conventionnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\hypothesisnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\notationnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\examplenameEN}{\textsc}{}{\FAIL}
+\pretocmd{\problemnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\questionnameEN}{\textsc}{}{\FAIL}
+\pretocmd{\exercisenameEN}{\textsc}{}{\FAIL}
+\pretocmd{\remarknameEN}{\textsc}{}{\FAIL}
+\pretocmd{\observationnameEN}{\textsc}{}{\FAIL}
+
+%% Adjust French theorems names
+\pretocmd{\theoremnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\lemmanameFR}{\textsc}{}{\FAIL}
+\pretocmd{\propositionnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\corollarynameFR}{\textsc}{}{\FAIL}
+\pretocmd{\propertynameFR}{\textsc}{}{\FAIL}
+\pretocmd{\factnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\conjecturenameFR}{\textsc}{}{\FAIL}
+\pretocmd{\definitionnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\axiomnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\assumptionnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\conventionnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\hypothesisnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\notationnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\examplenameFR}{\textsc}{}{\FAIL}
+\pretocmd{\problemnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\questionnameFR}{\textsc}{}{\FAIL}
+\pretocmd{\exercisenameFR}{\textsc}{}{\FAIL}
+\pretocmd{\remarknameFR}{\textsc}{}{\FAIL}
+\pretocmd{\observationnameFR}{\textsc}{}{\FAIL}
+
+%% Adjust German theorems names
+\pretocmd{\theoremnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\lemmanameDE}{\textsc}{}{\FAIL}
+\pretocmd{\propositionnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\corollarynameDE}{\textsc}{}{\FAIL}
+\pretocmd{\propertynameDE}{\textsc}{}{\FAIL}
+\pretocmd{\factnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\conjecturenameDE}{\textsc}{}{\FAIL}
+\pretocmd{\definitionnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\axiomnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\assumptionnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\conventionnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\hypothesisnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\notationnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\examplenameDE}{\textsc}{}{\FAIL}
+\pretocmd{\problemnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\questionnameDE}{\textsc}{}{\FAIL}
+\pretocmd{\exercisenameDE}{\textsc}{}{\FAIL}
+\pretocmd{\remarknameDE}{\textsc}{}{\FAIL}
+\pretocmd{\observationnameDE}{\textsc}{}{\FAIL}
+
+%% Adjust Italian theorems names
+\pretocmd{\theoremnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\lemmanameIT}{\textsc}{}{\FAIL}
+\pretocmd{\propositionnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\corollarynameIT}{\textsc}{}{\FAIL}
+\pretocmd{\propertynameIT}{\textsc}{}{\FAIL}
+\pretocmd{\factnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\conjecturenameIT}{\textsc}{}{\FAIL}
+\pretocmd{\definitionnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\axiomnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\assumptionnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\conventionnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\hypothesisnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\notationnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\examplenameIT}{\textsc}{}{\FAIL}
+\pretocmd{\problemnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\questionnameIT}{\textsc}{}{\FAIL}
+\pretocmd{\exercisenameIT}{\textsc}{}{\FAIL}
+\pretocmd{\remarknameIT}{\textsc}{}{\FAIL}
+\pretocmd{\observationnameIT}{\textsc}{}{\FAIL}
+
+%% Adjust Portuguese theorems names
+\pretocmd{\theoremnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\lemmanamePT}{\textsc}{}{\FAIL}
+\pretocmd{\propositionnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\corollarynamePT}{\textsc}{}{\FAIL}
+\pretocmd{\propertynamePT}{\textsc}{}{\FAIL}
+\pretocmd{\factnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\conjecturenamePT}{\textsc}{}{\FAIL}
+\pretocmd{\definitionnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\axiomnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\assumptionnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\conventionnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\hypothesisnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\notationnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\examplenamePT}{\textsc}{}{\FAIL}
+\pretocmd{\problemnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\questionnamePT}{\textsc}{}{\FAIL}
+\pretocmd{\exercisenamePT}{\textsc}{}{\FAIL}
+\pretocmd{\remarknamePT}{\textsc}{}{\FAIL}
+\pretocmd{\observationnamePT}{\textsc}{}{\FAIL}
+
+%% Adjust Brazilian theorems names
+\pretocmd{\theoremnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\lemmanameBR}{\textsc}{}{\FAIL}
+\pretocmd{\propositionnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\corollarynameBR}{\textsc}{}{\FAIL}
+\pretocmd{\propertynameBR}{\textsc}{}{\FAIL}
+\pretocmd{\factnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\conjecturenameBR}{\textsc}{}{\FAIL}
+\pretocmd{\definitionnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\axiomnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\assumptionnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\conventionnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\hypothesisnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\notationnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\examplenameBR}{\textsc}{}{\FAIL}
+\pretocmd{\problemnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\questionnameBR}{\textsc}{}{\FAIL}
+\pretocmd{\exercisenameBR}{\textsc}{}{\FAIL}
+\pretocmd{\remarknameBR}{\textsc}{}{\FAIL}
+\pretocmd{\observationnameBR}{\textsc}{}{\FAIL}
+
+%% Adjust Spanish theorems names
+\pretocmd{\theoremnameES}{\textsc}{}{\FAIL}
+\pretocmd{\lemmanameES}{\textsc}{}{\FAIL}
+\pretocmd{\propositionnameES}{\textsc}{}{\FAIL}
+\pretocmd{\corollarynameES}{\textsc}{}{\FAIL}
+\pretocmd{\propertynameES}{\textsc}{}{\FAIL}
+\pretocmd{\factnameES}{\textsc}{}{\FAIL}
+\pretocmd{\conjecturenameES}{\textsc}{}{\FAIL}
+\pretocmd{\definitionnameES}{\textsc}{}{\FAIL}
+\pretocmd{\axiomnameES}{\textsc}{}{\FAIL}
+\pretocmd{\assumptionnameES}{\textsc}{}{\FAIL}
+\pretocmd{\conventionnameES}{\textsc}{}{\FAIL}
+\pretocmd{\hypothesisnameES}{\textsc}{}{\FAIL}
+\pretocmd{\notationnameES}{\textsc}{}{\FAIL}
+\pretocmd{\examplenameES}{\textsc}{}{\FAIL}
+\pretocmd{\problemnameES}{\textsc}{}{\FAIL}
+\pretocmd{\questionnameES}{\textsc}{}{\FAIL}
+\pretocmd{\exercisenameES}{\textsc}{}{\FAIL}
+\pretocmd{\remarknameES}{\textsc}{}{\FAIL}
+\pretocmd{\observationnameES}{\textsc}{}{\FAIL}
%% Theorem environments
\theoremstyle{simple}
@@ -564,6 +658,7 @@
}{
\newaliascnt{highest}{section}
}
+\if@minimalist@nothms\else
\CreateTheorem{theorem}<highest>
\CreateTheorem{lemma}[theorem]
\CreateTheorem{proposition}[theorem]
@@ -604,6 +699,9 @@
\CreateTheorem*{exercise*}
\CreateTheorem{remark}<highest>
\CreateTheorem*{remark*}
+\CreateTheorem{observation}<highest>
+\CreateTheorem*{observation*}
+\fi
\setlength{\parindent}{2em}
diff --git a/macros/latex/contrib/minimalist/minimart.cls b/macros/latex/contrib/minimalist/minimart.cls
index 9b19f187b1..cf4f084590 100644
--- a/macros/latex/contrib/minimalist/minimart.cls
+++ b/macros/latex/contrib/minimalist/minimart.cls
@@ -17,7 +17,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2020-10-01]
\ProvidesClass{minimart}
- [2021/05/23 A simple and clear article style]
+ [2021/06/07 A simple and clear article style]
\def\minimclass@baseclass{article}
\RequirePackage{kvoptions}
\RequirePackage{etoolbox}
@@ -28,6 +28,11 @@
\DeclareBoolOption[false]{draft}
\DeclareBoolOption[false]{fast}
\DeclareBoolOption[false]{classical}
+\DeclareBoolOption[false]{palatino}
+\DeclareBoolOption[false]{times}
+\DeclareBoolOption[false]{garamond}
+\DeclareBoolOption[false]{biolinum}
+\DeclareBoolOption[false]{customfont}
\newif\if@minimclass@bfivepaper\@minimclass@bfivepaperfalse
\DeclareVoidOption{b5paper}{\@minimclass@bfivepapertrue}
@@ -40,6 +45,18 @@
\if@minimclass@draft
\@minimclass@fasttrue
\fi
+\if@minimclass@palatino
+ \@minimclass@customfonttrue
+\fi
+\if@minimclass@times
+ \@minimclass@customfonttrue
+\fi
+\if@minimclass@garamond
+ \@minimclass@customfonttrue
+\fi
+\if@minimclass@biolinum
+ \@minimclass@customfonttrue
+\fi
%%================================
%% Page layout
@@ -93,13 +110,63 @@
\RequirePackage[T1]{fontenc}
\RequirePackage{inputenc}
\fi
+\if@minimclass@customfont\else
\RequirePackage{mathpazo}
\RequirePackage{newpxtext}
+\fi
\RequirePackage{amssymb}
+\if@minimclass@palatino
+ \RequirePackage{amssymb}
+ \RequirePackage{mathpazo}
+ \PassOptionsToPackage{defaultsups}{newpxtext}
+ \RequirePackage{newpxtext}
+ \RequirePackage{newpxmath}
+ \let\openbox\relax
+ \PJLsetlinespacing{\setstretch{1.07}}
+\fi
+
+\if@minimclass@times
+ \RequirePackage{amssymb}
+ \PassOptionsToPackage{defaultsups}{newtxtext}
+ \RequirePackage{newtxtext}
+ \RequirePackage{newtxmath}
+ \let\openbox\relax
+ \PJLsetlinespacing{\setstretch{1.00}}
+\fi
+
+\if@minimclass@garamond
+ \RequirePackage{amssymb}
+ \PassOptionsToPackage{lining}{ebgaramond}
+ \RequirePackage{ebgaramond-maths}
+ \RequirePackage{ebgaramond}
+ % \RequirePackage{garamondlibre}
+ \PJLsetlinespacing{\setstretch{1.00}}
+\fi
+
+\if@minimclass@biolinum
+ \RequirePackage{amssymb}
+ % \RequirePackage{mathpazo}
+ % \RequirePackage[sansmath]{libertinust1math}
+ \ifPDFTeX
+ \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 ]
+ \fi
+ \PJLsetlinespacing{\setstretch{1.05}}
+ \RequirePackage[italic,defaultmathsizes]{mathastext}
+\fi
+
\def\PJL@font@alreadyset{}
-\RequirePackage[verbose=silent]{microtype}
+\PassOptionsToPackage{verbose=silent}{microtype}
+\RequirePackage{microtype}
%%================================
%% Graphics
diff --git a/macros/latex/contrib/minimalist/minimbook.cls b/macros/latex/contrib/minimalist/minimbook.cls
index b998e53dd7..ec1c656a15 100644
--- a/macros/latex/contrib/minimalist/minimbook.cls
+++ b/macros/latex/contrib/minimalist/minimbook.cls
@@ -17,7 +17,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2020-10-01]
\ProvidesClass{minimbook}
- [2021/05/23 A simple and clear book style]
+ [2021/06/07 A simple and clear book style]
\def\minimclass@baseclass{book}
\RequirePackage{kvoptions}
\RequirePackage{etoolbox}
@@ -28,6 +28,11 @@
\DeclareBoolOption[false]{draft}
\DeclareBoolOption[false]{fast}
\DeclareBoolOption[false]{classical}
+\DeclareBoolOption[false]{palatino}
+\DeclareBoolOption[false]{times}
+\DeclareBoolOption[false]{garamond}
+\DeclareBoolOption[false]{biolinum}
+\DeclareBoolOption[false]{customfont}
\newif\if@minimclass@bfivepaper\@minimclass@bfivepaperfalse
\DeclareVoidOption{b5paper}{\@minimclass@bfivepapertrue}
@@ -40,6 +45,18 @@
\if@minimclass@draft
\@minimclass@fasttrue
\fi
+\if@minimclass@palatino
+ \@minimclass@customfonttrue
+\fi
+\if@minimclass@times
+ \@minimclass@customfonttrue
+\fi
+\if@minimclass@garamond
+ \@minimclass@customfonttrue
+\fi
+\if@minimclass@biolinum
+ \@minimclass@customfonttrue
+\fi
%%================================
%% Page layout
@@ -93,13 +110,63 @@
\RequirePackage[T1]{fontenc}
\RequirePackage{inputenc}
\fi
+\if@minimclass@customfont\else
\RequirePackage{mathpazo}
\RequirePackage{newpxtext}
+\fi
\RequirePackage{amssymb}
+\if@minimclass@palatino
+ \RequirePackage{amssymb}
+ \RequirePackage{mathpazo}
+ \PassOptionsToPackage{defaultsups}{newpxtext}
+ \RequirePackage{newpxtext}
+ \RequirePackage{newpxmath}
+ \let\openbox\relax
+ \PJLsetlinespacing{\setstretch{1.07}}
+\fi
+
+\if@minimclass@times
+ \RequirePackage{amssymb}
+ \PassOptionsToPackage{defaultsups}{newtxtext}
+ \RequirePackage{newtxtext}
+ \RequirePackage{newtxmath}
+ \let\openbox\relax
+ \PJLsetlinespacing{\setstretch{1.00}}
+\fi
+
+\if@minimclass@garamond
+ \RequirePackage{amssymb}
+ \PassOptionsToPackage{lining}{ebgaramond}
+ \RequirePackage{ebgaramond-maths}
+ \RequirePackage{ebgaramond}
+ % \RequirePackage{garamondlibre}
+ \PJLsetlinespacing{\setstretch{1.00}}
+\fi
+
+\if@minimclass@biolinum
+ \RequirePackage{amssymb}
+ % \RequirePackage{mathpazo}
+ % \RequirePackage[sansmath]{libertinust1math}
+ \ifPDFTeX
+ \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 ]
+ \fi
+ \PJLsetlinespacing{\setstretch{1.05}}
+ \RequirePackage[italic,defaultmathsizes]{mathastext}
+\fi
+
\def\PJL@font@alreadyset{}
-\RequirePackage[verbose=silent]{microtype}
+\PassOptionsToPackage{verbose=silent}{microtype}
+\RequirePackage{microtype}
%%================================
%% Graphics