summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-01-08 03:01:04 +0000
committerNorbert Preining <norbert@preining.info>2022-01-08 03:01:04 +0000
commitcd2e7ab7ef89a5c3c1935281009729bff0f357e2 (patch)
treeb2cb311dd3561c52157b2482d6558f9ef76f7136 /macros
parentf69513397ac0e1f02c6b4a5f50588d411413271a (diff)
CTAN sync 202201080301
Diffstat (limited to 'macros')
-rw-r--r--macros/latex/contrib/csvsimple/CHANGES.md7
-rw-r--r--macros/latex/contrib/csvsimple/README.md4
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-doc.sty8
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-example.pdfbin75627 -> 75628 bytes
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-example.tex4
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-l3.pdfbin1069621 -> 1087253 bytes
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-l3.sty14
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-l3.tex4
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-legacy.pdfbin810667 -> 823839 bytes
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-legacy.sty6
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple-legacy.tex4
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple.pdfbin309079 -> 309007 bytes
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple.sty6
-rw-r--r--macros/latex/contrib/csvsimple/csvsimple.tex4
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx11
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin595245 -> 595293 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex6
-rw-r--r--macros/latex/contrib/pascaltriangle/README.md56
-rwxr-xr-xmacros/latex/contrib/pascaltriangle/build.sh8
-rw-r--r--macros/latex/contrib/pascaltriangle/pascaltriangle.pdfbin0 -> 165670 bytes
-rw-r--r--macros/latex/contrib/pascaltriangle/pascaltriangle.sty397
-rw-r--r--macros/latex/contrib/pascaltriangle/pascaltriangle.tex389
-rw-r--r--macros/latex/contrib/tcolorbox/CHANGES.md14
-rw-r--r--macros/latex/contrib/tcolorbox/README.md4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbbreakable.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbexternal.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbfitting.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbhooks.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcblistings.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcblistingscore.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbmagazine.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbminted.code.tex43
-rw-r--r--macros/latex/contrib/tcolorbox/tcbposter.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbprocessing.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbraster.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbskins.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbtheorems.code.tex50
-rw-r--r--macros/latex/contrib/tcolorbox/tcbvignette.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbxparse.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdfbin281300 -> 281298 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example.pdfbin469092 -> 469092 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example.tex2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdfbin455894 -> 456130 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex20
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.pdfbin7597754 -> 7594786 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.sty6
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.tex8
-rw-r--r--macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man2
53 files changed, 1000 insertions, 145 deletions
diff --git a/macros/latex/contrib/csvsimple/CHANGES.md b/macros/latex/contrib/csvsimple/CHANGES.md
index db4d888f5b..717bee870a 100644
--- a/macros/latex/contrib/csvsimple/CHANGES.md
+++ b/macros/latex/contrib/csvsimple/CHANGES.md
@@ -17,6 +17,13 @@ and this project adheres to
+## [2.2.1] - 2022-01-07
+
+### Fixed
+- Option `late after first line` ignored for `csvsimple-l3` (issue #17)
+
+
+
## [2.2.0] - 2021-09-09
### Added
diff --git a/macros/latex/contrib/csvsimple/README.md b/macros/latex/contrib/csvsimple/README.md
index 0aa089a195..64b189014c 100644
--- a/macros/latex/contrib/csvsimple/README.md
+++ b/macros/latex/contrib/csvsimple/README.md
@@ -1,7 +1,7 @@
-# The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+# The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
-> Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+> Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
> This work may be distributed and/or modified under the
> conditions of the LaTeX Project Public License, either version 1.3
diff --git a/macros/latex/contrib/csvsimple/csvsimple-doc.sty b/macros/latex/contrib/csvsimple/csvsimple-doc.sty
index dc0b054c61..913d36faa0 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-doc.sty
+++ b/macros/latex/contrib/csvsimple/csvsimple-doc.sty
@@ -1,9 +1,9 @@
% !TeX encoding=UTF-8
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple-doc.sty: style file for the documentation
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,8 +18,8 @@
%%
%% This work consists of all files listed in README.md
%%
-\def\version{2.2.0}%
-\def\datum{2021/09/09}%
+\def\version{2.2.1}%
+\def\datum{2022/01/07}%
\IfFileExists{csvsimple-doc.cfg}{\input{csvsimple-doc.cfg}}{}\providecommand\csvpkgprefix{}
diff --git a/macros/latex/contrib/csvsimple/csvsimple-example.pdf b/macros/latex/contrib/csvsimple/csvsimple-example.pdf
index f9fe37f142..5bf8775667 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-example.pdf
+++ b/macros/latex/contrib/csvsimple/csvsimple-example.pdf
Binary files differ
diff --git a/macros/latex/contrib/csvsimple/csvsimple-example.tex b/macros/latex/contrib/csvsimple/csvsimple-example.tex
index 9cfce5bf2f..9c06e60240 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-example.tex
+++ b/macros/latex/contrib/csvsimple/csvsimple-example.tex
@@ -1,8 +1,8 @@
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple-example.tex: an example for csvsimple
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/macros/latex/contrib/csvsimple/csvsimple-l3.pdf b/macros/latex/contrib/csvsimple/csvsimple-l3.pdf
index 9cfe37716d..e456d428df 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-l3.pdf
+++ b/macros/latex/contrib/csvsimple/csvsimple-l3.pdf
Binary files differ
diff --git a/macros/latex/contrib/csvsimple/csvsimple-l3.sty b/macros/latex/contrib/csvsimple/csvsimple-l3.sty
index 1d8e036ce7..12230aa6e6 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-l3.sty
+++ b/macros/latex/contrib/csvsimple/csvsimple-l3.sty
@@ -1,8 +1,8 @@
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple-l3.sty: Simple LaTeX CSV file processing (LaTeX3)
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README.md
%%
-\ProvidesExplPackage{csvsimple-l3}{2021/09/09}{2.2.0}
+\ProvidesExplPackage{csvsimple-l3}{2022/01/07}{2.2.1}
{LaTeX3 CSV file processing}
@@ -106,6 +106,7 @@
\tl_new:N \g__csvsim_hook_late_after_head_tl
\tl_new:N \g__csvsim_hook_late_after_last_line_tl
\tl_new:N \g__csvsim_hook_late_after_line_tl
+\tl_new:N \g__csvsim_hook_late_after_line_application_tl
\tl_new:N \g__csvsim_hook_table_begin_tl
\tl_new:N \g__csvsim_hook_table_end_tl
\tl_new:N \g__csvsim_preprocessor_tl
@@ -297,6 +298,11 @@
}
% read body lines
+ \tl_gset:Nn \g__csvsim_hook_late_after_line_application_tl
+ {
+ \g__csvsim_hook_late_after_first_line_tl
+ \tl_gset_eq:NN \g__csvsim_hook_late_after_line_application_tl \g__csvsim_hook_late_after_line_tl
+ }
\bool_gset_true:N \g__csvsim_line_firstline_bool
\bool_until_do:nn {\ior_if_eof_p:N \g__csvsim_ior}
{
@@ -337,7 +343,7 @@
\bool_gset_false:N \g__csvsim_line_firstline_bool
}
{
- \g__csvsim_hook_late_after_line_tl
+ \g__csvsim_hook_late_after_line_application_tl
\g__csvsim_hook_after_filter_tl
\g__csvsim_hook_before_line_tl
\g__csvsim_body_tl
diff --git a/macros/latex/contrib/csvsimple/csvsimple-l3.tex b/macros/latex/contrib/csvsimple/csvsimple-l3.tex
index ec9dd0b47f..a8ed99a34b 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-l3.tex
+++ b/macros/latex/contrib/csvsimple/csvsimple-l3.tex
@@ -1,10 +1,10 @@
% \LaTeX-Main\
% !TeX encoding=UTF-8
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple.tex: Manual
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/macros/latex/contrib/csvsimple/csvsimple-legacy.pdf b/macros/latex/contrib/csvsimple/csvsimple-legacy.pdf
index 09ac043fd8..2679c11d73 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-legacy.pdf
+++ b/macros/latex/contrib/csvsimple/csvsimple-legacy.pdf
Binary files differ
diff --git a/macros/latex/contrib/csvsimple/csvsimple-legacy.sty b/macros/latex/contrib/csvsimple/csvsimple-legacy.sty
index b25fc3b516..8451131c6e 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-legacy.sty
+++ b/macros/latex/contrib/csvsimple/csvsimple-legacy.sty
@@ -1,8 +1,8 @@
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple-legacy.sty: Simple LaTeX CSV file processing (LaTeX2e)
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README.md
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{csvsimple-legacy}[2021/09/09 version 2.2.0 LaTeX2e CSV file processing]
+\ProvidesPackage{csvsimple-legacy}[2022/01/07 version 2.2.1 LaTeX2e CSV file processing]
%---- check package
diff --git a/macros/latex/contrib/csvsimple/csvsimple-legacy.tex b/macros/latex/contrib/csvsimple/csvsimple-legacy.tex
index 4db0f7f875..711798f4a9 100644
--- a/macros/latex/contrib/csvsimple/csvsimple-legacy.tex
+++ b/macros/latex/contrib/csvsimple/csvsimple-legacy.tex
@@ -1,10 +1,10 @@
% \LaTeX-Main\
% !TeX encoding=UTF-8
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple.tex: Manual
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/macros/latex/contrib/csvsimple/csvsimple.pdf b/macros/latex/contrib/csvsimple/csvsimple.pdf
index fd2185cb6f..8ef7047fb2 100644
--- a/macros/latex/contrib/csvsimple/csvsimple.pdf
+++ b/macros/latex/contrib/csvsimple/csvsimple.pdf
Binary files differ
diff --git a/macros/latex/contrib/csvsimple/csvsimple.sty b/macros/latex/contrib/csvsimple/csvsimple.sty
index 55a6b32498..9d8f85bbb3 100644
--- a/macros/latex/contrib/csvsimple/csvsimple.sty
+++ b/macros/latex/contrib/csvsimple/csvsimple.sty
@@ -1,8 +1,8 @@
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple.sty: Simple LaTeX CSV file processing
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -19,7 +19,7 @@
%%
\RequirePackage{l3keys2e}
-\ProvidesExplPackage{csvsimple}{2021/09/09}{2.2.0}
+\ProvidesExplPackage{csvsimple}{2022/01/07}{2.2.1}
{LaTeX CSV file processing}
\cs_if_exist:NT \c__csvsim_package_expl_bool
diff --git a/macros/latex/contrib/csvsimple/csvsimple.tex b/macros/latex/contrib/csvsimple/csvsimple.tex
index 968c43bc0c..0f98435406 100644
--- a/macros/latex/contrib/csvsimple/csvsimple.tex
+++ b/macros/latex/contrib/csvsimple/csvsimple.tex
@@ -1,10 +1,10 @@
% \LaTeX-Main\
% !TeX encoding=UTF-8
-%% The LaTeX package csvsimple - version 2.2.0 (2021/09/09)
+%% The LaTeX package csvsimple - version 2.2.1 (2022/01/07)
%% csvsimple.tex: Manual
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2008-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2008-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index 16cdd91b88..7dadbd6f00 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2022/01/05}{1.42P}
+\ProvidesExplClass{easybook}{2022/01/06}{1.43}
{Typeset Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -306,7 +306,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2022/01/05}{1.42P}
+\ProvidesExplPackage{easybase}{2022/01/06}{1.43}
{Typeset Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -1850,14 +1850,15 @@
\SetEnumitemValue{font}{sf}{\color{ctex@emph}\normalfont\sffamily}
\SetEnumitemValue{ref}{enumii}{\arabic{enumi}.\alph*}
\SetEnumitemValue{ref}{enumiii}{\arabic{enumi}.\alph{enumii}.\roman*}
-\setlist{nosep,align = left,mode = unboxed,leftmargin = *,listparindent = 2em}
+\setlist{nosep,align = left,mode = unboxed}
+\setlist*{leftmargin = *,labelsep = 0.5em,listparindent = 2em}
\setlist[itemize,1]{label = bullet}
\setlist[itemize,2]{label = endash}
\setlist[itemize,3]{label = asterisk}
\setlist[enumerate,1]{label = arabic,ref = \arabic*}
\setlist[enumerate,2]{label = alph,ref = enumii}
\setlist[enumerate,3]{label = roman,ref = enumiii}
-\setlist[description]{font = sf,labelwidth = *,leftmargin = 2em}
+\setlist[description]{font = sf,style = standard}
\newlist{eb@outline@list}{itemize}{1}
\newlist{eb@exercise@list}{enumerate}{2}
\newlist{eb@eqcomp@list}{description}{1}
@@ -2422,7 +2423,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2022/01/05}{1.42P}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2022/01/06}{1.43}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \setexercise #1
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index 4ad198fe22..ac276244b6 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index 7b654d9281..c5aacaa0e1 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -20,8 +20,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK 使用手册,
- version = v1.42P,
- date = 2022/01/05,
+ version = v1.43,
+ date = 2022/01/06,
authors = 瞿毅,
info = 排版简体中文学位论文和书籍,
email = q1jx@foxmail.com,
@@ -44,7 +44,7 @@
\addtokomafont{subsubsection}{\normalfont\sffamily}
\DeclareTOCStyleEntry[entryformat = \sffamily]{default}{section}
\geometry{margin = 1in,marginparwidth = 0.65in}
-\setlist{nosep,labelindent = \parindent,leftmargin = *}
+\setlist{nosep,labelindent = \parindent,leftmargin = *,labelsep = 0.5em}
\setlist[itemize,1]{label = \small\color{Blue}\textbullet}
\setcounter{tocdepth}{2}
\SetTblrInner{hline{1,Z} = {0.8pt,Blue}}
diff --git a/macros/latex/contrib/pascaltriangle/README.md b/macros/latex/contrib/pascaltriangle/README.md
new file mode 100644
index 0000000000..495ca2b985
--- /dev/null
+++ b/macros/latex/contrib/pascaltriangle/README.md
@@ -0,0 +1,56 @@
+Pascal triangles(Yanghui triangles) generator package based on TikZ developed with LaTeX3.
+=======
+
+`pascaltriangle` is a Pascal triangle(Yanghui triangle) generation package based on TikZ developed with LaTeX3, which provides a unique drawing macro `\pascal` and can generate isosceles or right-angle triangles with different macro options or `\pascalset` macro.
+
+You can read the manual (in Chinese/English) for more details and examples.
+
+Contributing
+------------
+
+1. github repository:
+ 1. repository: [pascaltriangle](https://github.com/registor/pascaltriangle)
+ 2. Issues and pull requests are welcome. [issue](https://github.com/registor/pascaltriangle/issues) or [pull request](https://github.com/registor/pascaltriangle/pulls).
+
+2. gitee repository:
+ 1. repository: [pascaltriangle](https://gitee.com/nwafu_nan/pascaltriangle)
+ 2. Issues and pull requests are welcome. [issue](https://gitee.com/nwafu_nan/pascaltriangle/issues) or [pull request](https://gitee.com/nwafu_nan/pascaltriangle/pulls).
+
+基于TikZ用LaTeX3开发的Pascal三角形(杨辉三角形)生成宏包
+=======
+
+`pascaltriangle`一个基于TikZ用LaTeX3开发的Pascal三角形(杨辉三角形)生成宏包,它提供了一个唯一的绘图命令`\pascal`,并可以通过不同命令的命令选项或`\pascalset`命令的设置生成等腰或直角Pascal三角形(杨辉三角形)。
+
+可以通过阅读宏包手册(中文/英文)以也解该宏包更多的使用细节和使用样例。
+
+### 参与贡献
+---------------------
+
+1. github仓库:
+ (1). 仓库地址: [pascaltriangle](https://github.com/registor/pascaltriangle)
+ (2). Issues和PR: [issue](https://github.com/registor/pascaltriangle/issues) or [pull request](https://github.com/registor/pascaltriangle/pulls).
+
+2. gitee仓库:
+ (1). 仓库地址: [pascaltriangle](https://gitee.com/nwafu_nan/pascaltriangle)
+ (2). Issues and PR: [issue](https://gitee.com/nwafu_nan/pascaltriangle/issues) or [pull request](https://gitee.com/nwafu_nan/pascaltriangle/pulls).
+
+Copyright and Licence
+---------------------
+
+ Copyright (C) 2020-2022 by Nan Geng <nangeng@nwafu.edu.cn>
+ ----------------------------------------------------------------------
+
+ 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. This version of this license is in
+ http://www.latex-project.org/lppl/lppl-1-3c.txt
+ and the latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+ and version 1.3 or later is part of all distributions of
+ LaTeX version 2005/12/01 or later.
+
+ This work has the LPPL maintenance status "maintained".
+
+ The Current Maintainer of this work is Nan Geng.
+
diff --git a/macros/latex/contrib/pascaltriangle/build.sh b/macros/latex/contrib/pascaltriangle/build.sh
new file mode 100755
index 0000000000..bd7c2c5aa3
--- /dev/null
+++ b/macros/latex/contrib/pascaltriangle/build.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+xelatex pascaltriangle.tex &&\
+makeindex -s gind.ist -o pascaltriangle.ind pascaltriangle.idx &&\
+makeindex -s gglo.ist -o pascaltriangle.gls pascaltriangle.glo &&\
+xelatex pascaltriangle.tex &&\
+xelatex pascaltriangle.tex &&\
+xelatex pascaltriangle.tex
diff --git a/macros/latex/contrib/pascaltriangle/pascaltriangle.pdf b/macros/latex/contrib/pascaltriangle/pascaltriangle.pdf
new file mode 100644
index 0000000000..961e826e40
--- /dev/null
+++ b/macros/latex/contrib/pascaltriangle/pascaltriangle.pdf
Binary files differ
diff --git a/macros/latex/contrib/pascaltriangle/pascaltriangle.sty b/macros/latex/contrib/pascaltriangle/pascaltriangle.sty
new file mode 100644
index 0000000000..6c4be46ac3
--- /dev/null
+++ b/macros/latex/contrib/pascaltriangle/pascaltriangle.sty
@@ -0,0 +1,397 @@
+%%% ----------------------------------------------------------------------------
+%%% pascaltriangle: Typeset Pascal triangle figure with LaTeX3
+%%% Author : Nan Geng <nangeng@nwafu.edu.cn>
+%%% Repository: https://github.com/registor/pascaltriangle or https://gitee.com/nwafu_nan/pascaltriangle
+%%% License : The LaTeX Project Public License 1.3c
+%%% ----------------------------------------------------------------------------
+
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{expl3}
+\ProvidesExplPackage{pascaltriangle}{2022-01-07}{v1.0.0}
+ {Typeset Pascal triangle figure with LaTeX3}
+
+\RequirePackage{xparse}
+
+%% \tl_if_eq:NnTF 与texlive 2020的兼容性设置
+\cs_if_exist:NF \tl_if_eq:NnTF
+ {
+ \tl_new:N \l__tblr_backport_b_tl
+ \prg_new_protected_conditional:Npnn \tl_if_eq:Nn #1 #2 { T, F, TF }
+ {
+ \group_begin:
+ \tl_set:Nn \l__tblr_backport_b_tl {#2}
+ \exp_after:wN
+ \group_end:
+ \if_meaning:w #1 \l__tblr_backport_b_tl
+ \prg_return_true:
+ \else:
+ \prg_return_false:
+ \fi:
+ }
+ \prg_generate_conditional_variant:Nnn \tl_if_eq:Nn { c } { TF, T, F }
+ }
+
+\cs_if_exist:NF \seq_map_indexed_function:NN
+ {
+ \cs_set_eq:NN \seq_map_indexed_function:NN \seq_indexed_map_function:NN
+ }
+
+%% 解决TikZ库无法在Expl3中载入问题
+\RequirePackage {amsmath, tikz, etoolbox}
+\ExplSyntaxOff
+\patchcmd
+{\tcb@input@library@in}
+ {%
+ \input\tcbpkgprefix#1\relax%
+ }
+ {%
+ \@pushfilename
+ \input\tcbpkgprefix#1\relax%
+ \@popfilename
+ }
+ {}{}
+
+\patchcmd
+{\pgfutil@InputIfFileExists}
+ {\input #1}
+ {%
+ \@pushfilename
+ \xdef\@currname{#1}%
+ \input #1 %
+ \@popfilename
+ }
+ {}{}
+\ExplSyntaxOn
+\usetikzlibrary{shapes.geometric}
+
+%% 定义变量
+\bool_new:N \l__pascal_num_cell_bool % 是否绘制行列号
+\bool_new:N \l__pascal_binom_cell_bool % 是否仅绘制二项式表达式
+
+\tl_new:N \l__pascal_cell_color_tl % 单元格填充颜色
+\tl_new:N \l__pascal_shift_col_pt_tl % 列变换坐标
+\tl_new:N \l__pascal_shift_row_pt_tl % 行变换坐标
+\tl_new:N \l__pascal_font_size_tl % 文件大小
+
+\int_new:N \l__pascal_shape_type_int % 形状(1---等腰,2---直角)
+\int_new:N \l__pascal_row_idx_int % 行索引(从0计数)
+\int_new:N \l__pascal_col_idx_int % 列索引(从0计数)
+\int_new:N \l__pascal_row_top_int % 各列最大行数
+\int_new:N \l__pascal_total_idx_int % 索引总数
+\int_new:N \l__pascal_fill_row_int % 填充行号(最大值与当前列数有关,从顶向下从0计数)
+\int_new:N \l__pascal_fill_col_int % 填充列号(从0计数)
+
+\dim_new:N \l__pascal_cell_radius_dim % 单元格大小(中心到顶点的半径)
+
+%% 选项设计
+\keys_define:nn { pascal }
+ {
+ % 是否需要行列编号
+ withnum .bool_set:N = \l__pascal_num_cell_bool,
+ withnum .default:n = true,
+ withnum .initial:n = false,
+
+ % 是否仅绘制二项式表达式
+ binom .bool_set:N = \l__pascal_binom_cell_bool,
+ binom .default:n = true,
+ binom .initial:n = false,
+
+ % 形状选择(iso---等腰三角形, rt---直角三角形)
+ shape .choice:,
+ shape .value_required:n = true,
+ shape .choices:nn =
+ { iso, rt }
+ { \int_set_eq:NN \l__pascal_shape_type_int \l_keys_choice_int },
+ shape .initial:n = iso,
+
+ % 单元格半径(中心到顶点)
+ radius .dim_set:N = \l__pascal_cell_radius_dim,
+ radius .initial:n = 0.5cm,
+
+ % 文字大小
+ fontsize .tl_set:N = \l__pascal_font_size_tl,
+ fontsize .initial:n = \small,
+
+ % 要填充单元格行数(按列从顶向下,从0开始计数)
+ fillr .int_set:N = \l__pascal_fill_row_int,
+ fillr .initial:n = 1 ,
+ % 要填充单元格列数(从左向右,从0开始计数)
+ fillc .int_set:N = \l__pascal_fill_col_int,
+ fillc .initial:n = 1 ,
+ fillrc .meta:n = { fillr = #1 , fillc = #1 },
+
+ unknown .code:n = { \__pascal_error:n { unknown-option } }
+ }
+
+\msg_new:nnn { pascal } { unknown-option }
+ { package~ option~ "\l_keys_key_tl"~ is~ unknown. }
+
+%% 参数设置用户接口
+\NewDocumentCommand \pascalset { m }
+ { \keys_set:nn { pascal } {#1} }
+
+%% 利用LaTeX3的fact阶乘计算函数计算组合数
+\cs_set:Npn \__pascal_binomcoeff:nn #1#2
+ {
+ \fp_eval:n { fact(#1) / (fact(#2) * fact(#1 - #2)) }
+ }
+
+%% 组合数计算用户接口
+\NewDocumentCommand{\binomc}{m m}
+ {
+ \__pascal_binomcoeff:nn{#1}{#2}
+ }
+
+%% 绘制Pascal三角形
+%% 注意":"无法使用造成极坐标不能用的问题,以下网站给出了解决方案
+%% https://tex.stackexchange.com/questions/501333/how-to-use-colon-as-part-of-tikz-syntax-while-in-explsyntaxon-environment
+%% 将":"用\c_colon_str代替
+
+%% 根据形状类型计算列变换坐标(极坐标)
+\cs_set:Npn \__pascal_shift_col_pt:n #1
+ {
+ \int_case:nn { \l__pascal_shape_type_int }
+ {
+ {1}{
+ \tl_set:Nn \l__pascal_shift_col_pt_tl { -60 \c_colon_str
+ \fp_eval:n {sqrt(3) * \l__pascal_cell_radius_dim * #1}pt
+ }
+ }
+ {2}{
+ \tl_set:Nn \l__pascal_shift_col_pt_tl { -45 \c_colon_str
+ \fp_eval:n {2 * \l__pascal_cell_radius_dim * #1}pt
+ }
+ }
+ }
+ }
+
+%% 根据形状类型计算行变换坐标(极坐标)
+\cs_set:Npn \__pascal_shift_row_pt:n #1
+ {
+ \int_case:nn { \l__pascal_shape_type_int }
+ {
+ {1}{
+ \tl_set:Nn \l__pascal_shift_row_pt_tl { -120 \c_colon_str
+ \fp_eval:n {sqrt(3) * \l__pascal_cell_radius_dim * #1}pt
+ }
+ }
+ {2}{
+ \tl_set:Nn \l__pascal_shift_row_pt_tl { -90 \c_colon_str
+ \fp_eval:n {sqrt(2) * \l__pascal_cell_radius_dim * #1}pt
+ }
+ }
+ }
+ }
+
+%% 正六边形闭合路径代码
+\cs_set:Npn \__pascal_hex_cell:
+ {
+ (30 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (90 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (150 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (210 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (270 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (330 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ cycle (90 \c_colon_str 0)
+ }
+
+%% 正方形闭合路径代码
+\cs_set:Npn \__pascal_square_cell:
+ {
+ (45 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (134 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (225 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ (-45 \c_colon_str \fp_eval:n{\l__pascal_cell_radius_dim}pt) --
+ cycle (90 \c_colon_str 0)
+ }
+
+%% 绘制行列编号标记单元格
+\cs_set:Npn \__pascal_num_draw:nnn #1#2#3
+ {
+ \int_case:nn { \l__pascal_shape_type_int }
+ {
+ {1}{% 正六边形
+ \int_compare:nNnT { #1 } = {0}% 最左列
+ {
+ \int_compare:nNnT { #2 } = { #3 - 1 }% 最底行
+ {
+ \begin{scope}[shift={(-150\c_colon_str {\fp_eval:n{3*\l__pascal_cell_radius_dim}pt})}]
+ \draw[dashed, top~color=gray!10,bottom~color=gray!20]
+ \__pascal_hex_cell:
+ node[rotate=-45] {$m,n$};
+ \end{scope}
+ }
+ }
+ \int_compare:nNnT { #1 } = { 0 }% 最左列
+ {
+ \begin{scope}[shift={(-180\c_colon_str {\fp_eval:n{sqrt(3)*\l__pascal_cell_radius_dim}pt})}]
+ \draw[dashed, top~color=gray!10,bottom~color=gray!20]
+ \__pascal_hex_cell:
+ node{$(\int_eval:n {#2})$};
+ \end{scope}
+ }
+ \int_compare:nNnT { #2 } = { #3 - 1 }% 最底行
+ {
+ \begin{scope}[shift={(-120\c_colon_str {\fp_eval:n{sqrt(3)*\l__pascal_cell_radius_dim}pt})}]
+ \draw[dashed, top~color=gray!10,bottom~color=gray!20]
+ \__pascal_hex_cell:
+ node {$(\int_eval:n {#1})$};
+ \end{scope}
+ }
+ }
+ {2}{% 正方形
+ \int_compare:nNnT { #1 } = {0}% 最左列
+ {
+ \int_compare:nNnT { #2 } = { #3 - 1 }% 最底行
+ {
+ \begin{scope}[shift={(-135\c_colon_str {\fp_eval:n{2*\l__pascal_cell_radius_dim}pt})}]
+ \draw[dashed, top~color=gray!10,bottom~color=gray!20]
+ \__pascal_square_cell:
+ node[scale=0.8,rotate=-45] {$m,n$};
+ \end{scope}
+ }
+ }
+ \int_compare:nNnT { #1 } = { 0 }% 最左列
+ {
+ \begin{scope}[shift={(-180\c_colon_str {\fp_eval:n{sqrt(2)*\l__pascal_cell_radius_dim}pt})}]
+ \draw[dashed, top~color=gray!10,bottom~color=gray!20]
+ \__pascal_square_cell:
+ node{$(\int_eval:n {#2})$};
+ \end{scope}
+ }
+ \int_compare:nNnT { #2 } = { #3 - 1 }% 最底行
+ {
+ \begin{scope}[shift={(-90\c_colon_str {\fp_eval:n{sqrt(2)*\l__pascal_cell_radius_dim}pt})}]
+ \draw[dashed, top~color=gray!10,bottom~color=gray!20]
+ \__pascal_square_cell:
+ node {$(\int_eval:n {#1})$};
+ \end{scope}
+ }
+ }
+ }
+ }
+
+%% 绘制三角形单元格
+\cs_set:Npn \__pascal_cell_draw:nn #1#2
+ {
+ \int_case:nn { \l__pascal_shape_type_int }
+ {
+ {1}{% 正六边形
+ \draw[top~color=\l__pascal_cell_color_tl!20,bottom~color=\l__pascal_cell_color_tl!60]
+ \__pascal_hex_cell:
+ \bool_if:NTF \l__pascal_binom_cell_bool
+ {
+ node {$\binom{\int_eval:n {#1}}{\int_eval:n {#2}}$};
+ }
+ {
+ node {$\__pascal_binomcoeff:nn {#1}{#2}$};
+ }
+ }
+ {2}{% 正方形
+ \draw[top~color=\l__pascal_cell_color_tl!20,bottom~color=\l__pascal_cell_color_tl!60]
+ \__pascal_square_cell:
+ \bool_if:NTF \l__pascal_binom_cell_bool
+ {
+ node {$\binom{\int_eval:n {#1}}{\int_eval:n {#2}}$};
+ }
+ {
+ node {$\__pascal_binomcoeff:nn {#1}{#2}$};
+ }
+ }
+ }
+ }
+
+%% 绘制Pascal三角形
+% 等腰三角形的绘制原理参考了 https://texample.net/tikz/examples/pascal-triangle/
+% Author: M.H. Ahmadi
+\cs_set:Npn \__pascal_triangle_draw:n #1
+ {
+ % 设置正常单元格为灰色
+ \tl_set:Nn \l__pascal_cell_color_tl {gray}
+ % 记录绘制列数
+ \int_set:Nn \l_tmpa_int {#1}
+
+ % 使用TikZ绘制
+ \begin{tikzpicture}[font=\l__pascal_font_size_tl]
+ % 列循环
+ \int_step_inline:nn {\l_tmpa_int}
+ {
+ % 调整为从0计数,以便于后续计算
+ \int_set:Nn \l__pascal_col_idx_int { ##1 - 1 }
+
+ % 计算列变换坐标(极坐标)
+ \__pascal_shift_col_pt:n {\l__pascal_col_idx_int}
+
+ % 用scope环境变换各列到指定位置
+ \begin{scope}[shift={(\l__pascal_shift_col_pt_tl)}]
+ % 计算每列最多行数
+ \int_set:Nn \l__pascal_row_top_int {\l_tmpa_int - ##1 + 1}
+
+ % 行循环
+ \int_step_inline:nn { \l__pascal_row_top_int }
+ {
+ % 调整为从0计数,以便于后续计算
+ \int_set:Nn \l__pascal_row_idx_int { ####1 - 1 }
+
+ % 计算组合数计算中的行数
+ \int_zero:N \l__pascal_total_idx_int
+ \int_add:Nn \l__pascal_total_idx_int { \l__pascal_row_idx_int }
+ \int_add:Nn \l__pascal_total_idx_int { \l__pascal_col_idx_int }
+
+ % 为指定行设置绘制颜色
+ \int_case:nn { \l__pascal_col_idx_int }
+ {
+ {0}{
+ \tl_set:Nn \l__pascal_cell_color_tl { pink }
+ }
+ {1}{
+ \tl_set:Nn \l__pascal_cell_color_tl { yellow }
+ }
+ {2}{
+ \tl_set:Nn \l__pascal_cell_color_tl { blue }
+ }
+ {3}{
+ \tl_set:Nn \l__pascal_cell_color_tl { green }
+ }
+ {\l__pascal_fill_col_int - 1}{
+ \int_compare:nNnTF{\l__pascal_row_idx_int} < { \l__pascal_fill_row_int + 1 }
+ {\tl_set:Nn \l__pascal_cell_color_tl { purple }}
+ {\tl_set:Nn \l__pascal_cell_color_tl { gray }}
+ }
+ {\l__pascal_fill_col_int}{
+ \int_compare:nNnTF{\l__pascal_row_idx_int} = { \l__pascal_fill_row_int }
+ {\tl_set:Nn \l__pascal_cell_color_tl { purple }}
+ {\tl_set:Nn \l__pascal_cell_color_tl { gray }}
+ }
+ }
+
+ % 计算行变换坐标(极坐标)
+ \__pascal_shift_row_pt:n {\l__pascal_row_idx_int}
+ % 用scope环境变换各行到指定位置
+ \begin{scope}[shift={(\l__pascal_shift_row_pt_tl)}]
+ % 是否绘制行列编号
+ \bool_if:NT \l__pascal_num_cell_bool
+ {
+ \__pascal_num_draw:nnn { \l__pascal_col_idx_int }
+ { \l__pascal_row_idx_int }
+ { \l__pascal_row_top_int }
+ }
+ % 绘制一个单元格
+ \__pascal_cell_draw:nn{\l__pascal_total_idx_int}{\l__pascal_col_idx_int}
+ \end{scope}
+ }
+ \end{scope}
+ }
+ \end{tikzpicture}
+ }
+
+%% 绘制Pascal三角形用户接口
+\NewDocumentCommand{\pascal}{O{} m}
+ {
+ \IfNoValueF{#1}{ \keys_set:nn { pascal } {#1} }
+ \group_begin:
+ \__pascal_triangle_draw:n{#2}
+ \group_end:
+ }
+
+\endinput
diff --git a/macros/latex/contrib/pascaltriangle/pascaltriangle.tex b/macros/latex/contrib/pascaltriangle/pascaltriangle.tex
new file mode 100644
index 0000000000..ff9536f62f
--- /dev/null
+++ b/macros/latex/contrib/pascaltriangle/pascaltriangle.tex
@@ -0,0 +1,389 @@
+\documentclass[full]{l3doc}
+\usepackage[scheme=plain]{ctex}
+\usepackage{enumitem}
+\usepackage{indentfirst}
+\usepackage{titling}
+\usepackage{geometry}
+\usepackage{fancyvrb-ex}
+\usepackage{pascaltriangle}
+
+\IndexPrologue
+ {
+ \section*{Index}
+ \markboth{Index}{Index}
+ \addcontentsline{toc}{section}{Index}
+ The~italic~numbers~denote~the~pages~where~the~
+ corresponding~entry~is~described,~
+ numbers~underlined~point~to~the~definition,~
+ all~others~indicate~the~places~where~it~is~used.
+ }
+
+\newcommand\tikzmark[1]{\tikz \coordinate[overlay, remember picture] (#1);}
+
+\geometry{
+ left=4.5cm,
+ right=2cm,
+ top=2cm,
+ bottom=2cm,
+}
+\hypersetup {
+ CJKbookmarks,
+ bookmarksopen,
+ bookmarksopenlevel=3,
+ pdfstartview=FitH,
+ pdfinfo = {
+ Title = The package pascaltriangle ,
+ Subject = A LaTeX3 package ,
+ Author = Geng Nan
+ }
+}
+
+\DoNotIndex{\begin, \end}
+\setlength{\parskip}{\medskipamount}
+\DeclareDocumentEnvironment { noteen } { +b } {
+ \par\textbf{\textsf{NOTE:~}}#1\par
+} {}
+\DeclareDocumentEnvironment { notezh } { +b } {
+ \par\textbf{\textsf{注意:~}}#1\par
+} {}
+
+\AtEndDocument{
+ \newgeometry{
+ left=2cm,
+ right=2cm,
+ top=2cm,
+ bottom=2cm
+ }
+ \PrintIndex
+}
+
+\ExplSyntaxOn
+\dim_new:N \l__my_syntax_dim
+\box_new:N \g__my_syntax_box
+\NewDocumentEnvironment { Syntax } { s }
+ {
+ \dim_set:Nn \l__my_syntax_dim
+ { \textwidth }
+ \hbox_gset:Nw \g__my_syntax_box
+ \small \ttfamily
+ \begin{minipage}[t]{\l__my_syntax_dim}
+ \raggedright\obeyspaces\obeylines
+ }
+ {
+ \end{minipage}
+ \hbox_gset_end:
+ \IfValueF { #1 } { \smallskip }
+ \box_use_drop:N \g__my_syntax_box
+ \smallskip
+ }
+
+\DeclareDocumentEnvironment { Description } { o +b } {
+ \hbox_set:Nn \l_tmpa_box { #1 }
+ \dim_set:Nn \l_tmpa_dim { \box_wd:N \l_tmpa_box }
+ \begin{itemize}[labelwidth=\l_tmpa_dim, align=left]
+ #2
+ \end{itemize}
+} { }
+
+\keys_define:nn { pascal/doc } {
+ opt .tl_set:N = \l_opt_tl,
+ desc .tl_set:N = \l_desc_tl,
+ init .tl_set:N = \l_init_tl,
+ init .initial:n = init-none,
+}
+
+\box_new:N \l__option_box
+\NewDocumentEnvironment { option } { m +b } {
+ \keys_set:nn { pascal/doc } { #1 }
+ \hbox_set:Nw \l__option_box
+ \small \ttfamily
+ \begin{minipage}[t]{\textwidth}
+ \obeyspaces\obeylines
+ \textcolor{red}{
+ \l_opt_tl
+ \exp_args:Nx\SpecialOptionIndex{\l_opt_tl}
+ }
+ {~}\l_desc_tl
+ \hfill(
+ \tl_if_eq:NnTF \l_init_tl { init-none } { no~value }
+ { initially~\texttt{\l_init_tl} }
+ )
+ \end{minipage}
+ \hbox_gset_end:
+ \box_use_drop:N \l__option_box
+ #2
+ \medskip
+} { }
+
+\DeclareDocumentCommand \opt { O{} m }
+ { \__codedoc_cmd:no {#1} { #2 } }
+\ExplSyntaxOff
+
+\def\vers{\texttt{v1.0.0}
+\thanks{\url{https://github.com/registor/pascaltriangle}}
+\thanks{\url{https://gitee.com/nwafu_nan/pascaltriangle}}
+}
+
+\begin{document}
+\title{
+ \pkg{pascaltriangle} 宏包
+ \rlap{\makebox[4cm][r]{
+ \normalsize $\Longrightarrow$ \color{red}
+ \protect\hyperlink{en}{English Version}
+ \protect\hypertarget{zh}{}
+ }}
+}
+\author{\textit{耿楠} \texttt{<nangeng@nwafu.edu.cn>}}
+\date{\the\year 年\the\month 月\the\day 日\qquad \vers
+}
+\maketitle
+
+{\small
+\tableofcontents
+}
+\newpage
+
+\begin{documentation}
+
+\section{引言}
+\pkg{pascaltriangle}是一个基于\pkg{TikZ}用\pkg{expl3}开发的
+Pascal三角形(杨辉三角形)生成宏包,它提供了一个唯一的绘图命令
+\tn{pascal},并可以通过不同命令的命令选项或\tn{pascalset}命令
+设置生成不同外观的等腰或直角Pascal三角形。
+
+\section{用户接口}
+
+\subsection{\cs{pascal}绘图命令}
+
+\begin{function}{\pascal}
+ \begin{syntax}
+ \cs{pascal} \oarg{外观选项} \marg{层数}
+ \end{syntax}
+
+\end{function}
+
+ 用于绘制一个Pascal三角形。
+
+ 该命令仅有一个必选参数\marg{层数},用于指定Pascal三角形的层数。
+
+ 在\oarg{外观选项}中可以通过key-value方式设置三角形形状、大小等外观。
+
+ 三角形的外观也可以通过\cs{pascalset}命令的逗号分隔key-value列表进行设置
+
+\subsection{\cs{pascalset}}
+\begin{function}{\pascalset}
+ \begin{syntax}
+ \cs{pascalset} \marg{外观选项}
+ \end{syntax}
+
+\end{function}
+
+ 用于设置一个Pascal三角形的外观。
+
+ 在\marg{外观选项}中可以通过key-value方式设置三角形形状、大小等外观。
+
+\section{外观选项}
+
+\begin{option}{ opt = shape, desc = {= \meta{形状}}, init=iso }
+ 设置Pascal三角形的形状,目前支持|iso|---等腰三角形和
+ |rt|---直角三角形。
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.65\linewidth,gobble=2]
+ \centering
+ \pascal{5}\qquad
+ \pascal[shape=rt]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{ opt = radius, desc = {= \meta{半径}}, init=0.5cm }
+ 设置三角形每个单元外接圆半径,注意需要带有单位。
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.65\linewidth,gobble=2]
+ \centering
+ \pascal[radius=0.8cm]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{ opt = fontsize, desc = {= \meta{字号命令}}, init=\cs{small} }
+ 设置三角形每个单元中数字文本大小。
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.65\linewidth,gobble=2]
+ \centering
+ \pascal[radius=0.8cm,
+ fontsize=\Huge]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{opt=withnum, desc={= \meta{布尔值}}, init=false}
+ 设置是否显示Pascal三角形的行列编号。
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.63\linewidth,gobble=2]
+ \centering
+ \pascal[withnum]{4}
+ \pascal[withnum,shape=rt]{4}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{opt = binom, desc = {= \meta{布尔值}}, init=false}
+ 设置是否显示用二项式表达式显示各元素值。
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.63\linewidth,gobble=2]
+ \centering
+ \pascal[binom]{5}
+ \pascal[binom,shape=rt]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{ opt = fillr, desc = {= \meta{整数}}, init=1 }
+ 设置需要表示前列累加的单元格行号,注意行号是当前列自顶向下从0开始计数。
+\end{option}
+
+\begin{option}{ opt = fillc, desc = {= \meta{整数}}, init=1 }
+ 设置需要表示前列累加的单元格列号,注意列号是自左向右从0开始计数。
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.64\linewidth,gobble=2]
+ \centering
+ \pascalset{fillr=2,fillc=6,
+ radius=0.4cm}
+ \pascal{10}\\
+ \pascal[shape=rt]{10}
+\end{SideBySideExample}
+
+\bigskip
+
+\title{
+ Package \pkg{pascaltriangle}
+ \rlap{\makebox[4cm][r]{
+ \normalsize $\Longrightarrow$ \color{red}
+ \protect\hyperlink{zh}{中文版本}
+ \protect\hypertarget{en}{}
+ }}
+}
+\author{Nan Geng \texttt{<nangeng@nwafu.edu.cn>}}
+\date{\today\qquad \vers}
+\maketitle
+
+\section{Introduction}
+
+\pkg{pascaltriangle} is a Pascal triangle(Yanghui triangle) generation package
+based on TikZ developed in expl3, which provides a unique drawing command \cs{pascal},
+and can be set by different options or \cs{pascalset} macro to
+generates isosceles or right-angle Pascal triangles with different appearances.
+
+\section{Interfaces}
+
+\subsection{\cs{pascal} macro}
+
+\begin{function}{\pascal}
+ \begin{syntax}
+ \cs{pascal} \oarg{options} \marg{order}
+ \end{syntax}
+\end{function}
+Used to draw a Pascal triangle.
+
+This macro has only one mandatory parameter \marg{order},
+which specifies the number of layers of the Pascal triangle.
+
+In \oarg{options} you can set the appearance of the triangle shape,
+size, etc. by key-value method.
+
+The appearance of the triangle can also be set via the comma-separated
+key-value list of the \cs{pascalset} macro
+
+\subsection{\cs{pascalset} macro}
+
+\begin{function}{\pascalset}
+ \begin{syntax}
+ \cs{pascalset} \marg{options}
+ \end{syntax}
+\end{function}
+
+Used to set the appearance of Pascal triangle.
+
+In \oarg{options} you can set the appearance of the triangle shape,
+size, etc. by key-value method.
+
+\section{options}
+
+\begin{option}{ opt = shape, desc = {= \meta{shape}}, init=iso }
+ Sets the shape of Pascal triangle
+ currently supporting |iso|---isosceles triangles and |rt|---right-angle triangles.
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.65\linewidth,gobble=2]
+ \centering
+ \pascal{5}\qquad
+ \pascal[shape=rt]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{ opt = radius, desc = {= \meta{radius}}, init=0.5cm }
+ Set the radius of the outer circle of each cell of the triangle,
+ note that it needs to have units.
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.65\linewidth,gobble=2]
+ \centering
+ \pascal[radius=0.8cm]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{ opt = fontsize, desc = {= \meta{fontsize}}, init=\cs{small} }
+ Sets the fontsize of each cell of the triangle.
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.65\linewidth,gobble=2]
+ \centering
+ \pascal[radius=0.8cm,
+ fontsize=\Huge]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{opt=withnum, desc={= \meta{bool}}, init=false}
+ Sets whether to show the Pascal triangle row/col numbers or not.
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.63\linewidth,gobble=2]
+ \centering
+ \pascal[withnum]{4}
+ \pascal[withnum,shape=rt]{4}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{opt = binom, desc = {= \meta{bool}}, init=false}
+ Sets whether to show each element value with binomial expressions or not.
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.63\linewidth,gobble=2]
+ \centering
+ \pascal[binom]{5}
+ \pascal[binom,shape=rt]{5}
+\end{SideBySideExample}
+
+\bigskip
+
+\begin{option}{ opt = fillr, desc = {= \meta{integer}}, init=1 }
+ Set the row number of the cell that needs to indicate the sum of the pre-column,
+ note that the row number is in the current column counted from the top down based 0.
+\end{option}
+
+\begin{option}{ opt = fillc, desc = {= \meta{integer}}, init=1 }
+ Set the col number of the cell that needs to indicate the sum of the pre-column,
+ note that the col number is counted from the left to right based 0.
+\end{option}\\
+\begin{SideBySideExample}[frame=single,numbers=left,xrightmargin=.64\linewidth,gobble=2]
+ \centering
+ \pascalset{fillr=2,fillc=6,
+ radius=0.4cm}
+ \pascal{10}\\
+ \pascal[shape=rt]{10}
+\end{SideBySideExample}
+
+\end{documentation}
+
+
+\end{document}
diff --git a/macros/latex/contrib/tcolorbox/CHANGES.md b/macros/latex/contrib/tcolorbox/CHANGES.md
index be2c2e58e2..cd0cb3a989 100644
--- a/macros/latex/contrib/tcolorbox/CHANGES.md
+++ b/macros/latex/contrib/tcolorbox/CHANGES.md
@@ -22,6 +22,20 @@ and this project adheres to
+## [5.0.2] - 2022-01-07
+
+### Changed
+- Library `minted`: Temporary patch `\tcbTemporaryPatchMintedFancyvrb` removed
+ because of update for package `minted` (2021/12/24). This is now the required
+ version for `tcolorbox` (issue #158)
+
+### Fixed
+- Using the `documentation` library with `minted` was broken
+- Library `theorems`: New implementation had title expansion with problems (issue #165)
+
+
+
+
## [5.0.1] - 2021-12-20
### Fixed
diff --git a/macros/latex/contrib/tcolorbox/README.md b/macros/latex/contrib/tcolorbox/README.md
index 4a01a52f29..38f71ac584 100644
--- a/macros/latex/contrib/tcolorbox/README.md
+++ b/macros/latex/contrib/tcolorbox/README.md
@@ -1,7 +1,7 @@
-# The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+# The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
-> Copyright (c) 2006-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+> Copyright (c) 2006-2022 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
> This work may be distributed and/or modified under the
> conditions of the LaTeX Project Public License, either version 1.3
diff --git a/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex b/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex
index e572f2834e..543d767c67 100644
--- a/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbbreakable.code.tex: Code for breakable colorboxes
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\RequirePackage{pdfcol}
\pdfcolInitStack{tcb@breakable}
diff --git a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex
index 60f9990277..7a97196d34 100644
--- a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbdocumentation.code.tex: Code for LaTeX documentations
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{listings,skins,xparse,external,raster}
diff --git a/macros/latex/contrib/tcolorbox/tcbexternal.code.tex b/macros/latex/contrib/tcolorbox/tcbexternal.code.tex
index 7f78d61f52..cdc0c2b9e8 100644
--- a/macros/latex/contrib/tcolorbox/tcbexternal.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbexternal.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbexternal.code.tex: Code for externalization
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{pro@cessing}
diff --git a/macros/latex/contrib/tcolorbox/tcbfitting.code.tex b/macros/latex/contrib/tcolorbox/tcbfitting.code.tex
index 8a1a39963f..1259be495c 100644
--- a/macros/latex/contrib/tcolorbox/tcbfitting.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbfitting.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbfitting.code.tex: Code for fit boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\newdimen\tcbfitdim
\newdimen\tcb@lowerfitdim
diff --git a/macros/latex/contrib/tcolorbox/tcbhooks.code.tex b/macros/latex/contrib/tcolorbox/tcbhooks.code.tex
index a61fa09947..f3197fbcf5 100644
--- a/macros/latex/contrib/tcolorbox/tcbhooks.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbhooks.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbhooks.code.tex: Code for adding hooks
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbset{%
before upper app/.code={\appto\kvtcb@before@upper{#1}},%
diff --git a/macros/latex/contrib/tcolorbox/tcblistings.code.tex b/macros/latex/contrib/tcolorbox/tcblistings.code.tex
index 8235485a0b..7d74e9ad6e 100644
--- a/macros/latex/contrib/tcolorbox/tcblistings.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcblistings.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcblistings.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\RequirePackage{listings}[2007/02/22]
diff --git a/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex b/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex
index 4068e214ce..d461068fe2 100644
--- a/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcblistingscode.code.tex: Auxiliary code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{pro@cessing}
diff --git a/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex b/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex
index c64ef9c42b..0946a01a81 100644
--- a/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcblistingsutf8.code.tex: Code for colorboxes with listings in UTF-8
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{listings}
diff --git a/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex b/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
index 8db9256b13..0ba0c9f278 100644
--- a/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbmagazine.code.tex: Code for box sets and magazine styles
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{breakable}
diff --git a/macros/latex/contrib/tcolorbox/tcbminted.code.tex b/macros/latex/contrib/tcolorbox/tcbminted.code.tex
index 5197990109..802f48e902 100644
--- a/macros/latex/contrib/tcolorbox/tcbminted.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbminted.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbminted.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -18,43 +18,13 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
-\RequirePackage{minted}[2011/09/17]
+\RequirePackage{minted}[2021/12/24]
% to be removed, if integrated into the minted package (#281)
\minted@def@optcl{envname}{-P envname}{#1}
-% to be removed, if minted becomes newer than v2.5 (2017/07/19)
-% and resolves the package clash with fancyvrb
-\ProvideDocumentCommand\tcbTemporaryPatchMintedFancyvrb{}{%
- \@ifpackagelater{minted}{2021/12/01}{}{\@ifpackagelater{fancyvrb}{2021/11/19}{%
- % patch from muzimuzhi
- \RequirePackage{regexpatch}%
- \def\minted@use@FancyVerbStartNum{\the\numexpr\FancyVerbStartNum}%
- \def\minted@use@FancyVerbStopNum{\the\numexpr\FancyVerbStopNum}%
- % patch for fivesum computation
- \xpatchcmd*\minted@pygmentize%
- {\ifx\FancyVerbStartNum\z@ 0\else\FancyVerbStartNum\fi}%
- {\minted@use@FancyVerbStartNum\relax}%
- {}{}%
- \xpatchcmd*\minted@pygmentize%
- {\ifx\FancyVerbStopNum\z@ 0\else\FancyVerbStopNum\fi}%
- {\minted@use@FancyVerbStopNum\relax}%
- {}{}%
- % patch for option "autogobble"
- \xpatchcmd\minted@autogobble%
- {\ifx\FancyVerbStartNum\z@ 0\else\FancyVerbStartNum\fi}%
- {\minted@use@FancyVerbStartNum}%
- {}{}%
- \xpatchcmd\minted@autogobble%
- {\ifx\FancyVerbStopNum\z@ 0\else\FancyVerbStopNum\fi}%
- {\minted@use@FancyVerbStopNum}%
- {}{}%
-}{}}}
-
-\tcbTemporaryPatchMintedFancyvrb
-
\tcbuselibrary{listings@core}
\ExplSyntaxOn
@@ -66,9 +36,12 @@
\usemintedstyle { #4 }
}
\tl_set:Nn \l_tmpa_tl { \inputminted[#1 }
- \str_if_eq:VnT \tcb@listing@capture { hbox }
+ \cs_if_exist:NT \tcb@listing@capture
{
- \tl_put_right:Nn \l_tmpa_tl { ,envname=BVerbatim }
+ \str_if_eq:VnT \tcb@listing@capture { hbox }
+ {
+ \tl_put_right:Nn \l_tmpa_tl { ,envname=BVerbatim }
+ }
}
\tl_put_right:Nn \l_tmpa_tl { ] }
\file_if_exist:nTF { \minted@outputdir #3 }
diff --git a/macros/latex/contrib/tcolorbox/tcbposter.code.tex b/macros/latex/contrib/tcolorbox/tcbposter.code.tex
index 399017a7e0..7a4ec1aa60 100644
--- a/macros/latex/contrib/tcolorbox/tcbposter.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbposter.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbposter.code.tex: Code for posters
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{breakable,magazine,skins,fitting}
diff --git a/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex b/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
index b776656cf4..1575b8e990 100644
--- a/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbprocessing.code.tex: Code for conditional processing
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\RequirePackage{pdftexcmds}
\RequirePackage{shellesc}
diff --git a/macros/latex/contrib/tcolorbox/tcbraster.code.tex b/macros/latex/contrib/tcolorbox/tcbraster.code.tex
index 7cf3d8db2a..78c1ba5505 100644
--- a/macros/latex/contrib/tcolorbox/tcbraster.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbraster.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\newcounter{tcbrastercolumn}
\newcounter{tcbrasterrow}
diff --git a/macros/latex/contrib/tcolorbox/tcbskins.code.tex b/macros/latex/contrib/tcolorbox/tcbskins.code.tex
index 40e2704067..3d048c71c3 100644
--- a/macros/latex/contrib/tcolorbox/tcbskins.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbskins.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbskins.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\RequirePackage{tikz}[2010/10/13]
diff --git a/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex b/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
index 3851f4e87e..3fe250f208 100644
--- a/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{skins}
diff --git a/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex b/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex
index 2d8f2caa79..f1b4820ebc 100644
--- a/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbtheorems.code.tex: Code for theorems in colorboxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\RequirePackage{amsmath}
@@ -33,15 +33,21 @@
\tl_new:N \l__tcobox_theo_label_separator_tl
\tl_new:N \l__tcobox_theo_separatorsign_tl
\tl_new:N \l__tcobox_theo_terminatorsign_tl
+\bool_new:N \l__tcobox_theo_headempty_bool
\cs_new_nopar:Npn \__tcobox_theo_format_name_number:nn #1#2
{
\tl_if_empty:nTF { #1 }
{
- #2
+ \tl_if_empty:nF { #2 }
+ {
+ \bool_set_false:N \l__tcobox_theo_headempty_bool
+ #2
+ }
}
{
+ \bool_set_false:N \l__tcobox_theo_headempty_bool
#1
\tl_if_empty:nF { #2 }
{
@@ -58,6 +64,26 @@
}
+\cs_new_nopar:Npn \__tcobox_theo_format_name:nn #1#2
+ {
+ \tl_if_empty:nF { #1 }
+ {
+ \bool_set_false:N \l__tcobox_theo_headempty_bool
+ #1
+ }
+ }
+
+
+\cs_new_nopar:Npn \__tcobox_theo_format_number:nn #1#2
+ {
+ \tl_if_empty:nF { #2 }
+ {
+ \bool_set_false:N \l__tcobox_theo_headempty_bool
+ #2
+ }
+ }
+
+
\cs_new:Npn \__tcobox_theo_format_description_standard:n #1
{
\l__tcobox_theo_description_color_tl
@@ -68,26 +94,24 @@
}
+
\cs_new:Npn \__tcobox_theo_title:nnn #1#2#3
{
% format and save display name and number
- \tl_set:Nx \l_tmpa_tl { \__tcobox_theo_format:nn{#1}{#2} }
+ \bool_set_true:N \l__tcobox_theo_headempty_bool
\tl_if_empty:nTF { #3 }
{
% no theorem title; insert name and number
- \l_tmpa_tl
+ \__tcobox_theo_format:nn{#1}{#2}
\l__tcobox_theo_terminatorsign_tl
}
{
% box display name and number
- \tl_if_empty:NTF \l_tmpa_tl
- {
- \box_clear:N \l_tmpa_box
- }
+ \hbox_set:Nn \l_tmpa_box
{
- \hbox_set:Nn \l_tmpa_box
+ \__tcobox_theo_format:nn{#1}{#2}
+ \bool_if:NF \l__tcobox_theo_headempty_bool
{
- \tl_use:N \l_tmpa_tl
\l__tcobox_theo_separatorsign_tl
\nobreakspace
}
@@ -186,11 +210,11 @@
},
theorem~name/.code =
{
- \cs_set_eq:NN \__tcobox_theo_format:nn \use_i:nn
+ \cs_set_eq:NN \__tcobox_theo_format:nn \__tcobox_theo_format_name:nn
},
theorem~number/.code =
{
- \cs_set_eq:NN \__tcobox_theo_format:nn \use_ii:nn
+ \cs_set_eq:NN \__tcobox_theo_format:nn \__tcobox_theo_format_number:nn
},
separator~sign/ .tl_set:N = \l__tcobox_theo_separatorsign_tl,
terminator~sign/ .tl_set:N = \l__tcobox_theo_terminatorsign_tl,
diff --git a/macros/latex/contrib/tcolorbox/tcbvignette.code.tex b/macros/latex/contrib/tcolorbox/tcbvignette.code.tex
index 12cbaae28d..f6da2fd7f6 100644
--- a/macros/latex/contrib/tcolorbox/tcbvignette.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbvignette.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbvignette.code.tex: Code for ornamental frames
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\tcbuselibrary{skins}
diff --git a/macros/latex/contrib/tcolorbox/tcbxparse.code.tex b/macros/latex/contrib/tcolorbox/tcbxparse.code.tex
index 15e77b2b75..f2fba3e0d8 100644
--- a/macros/latex/contrib/tcolorbox/tcbxparse.code.tex
+++ b/macros/latex/contrib/tcolorbox/tcbxparse.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcbxparse.code.tex: Code for xparse features
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{5.0.1}
+\tcb@set@library@version{5.0.2}
\RequirePackage{xparse}[2013/12/31]
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf
index 1871f9e64c..53ea3b5652 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex
index 696c53d6bc..3b2234d594 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcolorbox-example-poster.tex: a poster example for tcolorbox
%%
%% -------------------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf
index b3b5ac88d0..e90054c665 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-example.tex b/macros/latex/contrib/tcolorbox/tcolorbox-example.tex
index 80371dbb4a..aa1a23e52f 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-example.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-example.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcolorbox-example.tex: an example for tcolorbox
%%
%% -------------------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf
index cc343d1aa5..89224955ff 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex
index 0db2af1fe9..9653f7fcd7 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex
@@ -1,5 +1,5 @@
% \LaTeX-Main\
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcolorbox-tutorial-poster.tex: a tutorial for poster creation with tcolorbox
%%
%% -------------------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex
index 2aa5b31974..82b5d9f77b 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex
@@ -533,26 +533,6 @@ For examples of different styles, see
See further options in \Vref{sec:commonlistingkeys}.
-\medskip
-
-\begin{docCommand}[doc new=2021-12-16]{tcbTemporaryPatchMintedFancyvrb}{}
- \begin{marker}
- There is a package clash between the package |minted| (version 2.5)
- and the package |fancyvrb| (from version 4.0 on) which is used by
- package |minted|. This is results in compilation errors, if the
- |autogobble| option is used by the \mylib{minted} library.
- At the time of writing this package clash is unresolved by official releases.
- Therefore, the \mylib{minted} library contains a patch
- \refCom{tcbTemporaryPatchMintedFancyvrb} which is automatically applied
- (do not use this manually).\par
- To deactivate the patch, define \refCom{tcbTemporaryPatchMintedFancyvrb}
- with any content \emph{before} the \mylib{minted} library is loaded.\par
- This patch is going to be removed as soon as the package clash is
- resolved by official releases of |minted| (or |fancyvrb|).
- \end{marker}
-\end{docCommand}
-
-
\clearpage
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.pdf b/macros/latex/contrib/tcolorbox/tcolorbox.pdf
index 5752a30847..5d613e89a5 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.pdf
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.pdf
Binary files differ
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.sty b/macros/latex/contrib/tcolorbox/tcolorbox.sty
index 5efef3cce0..a836c92d46 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.sty
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcolorbox.sty: Text color boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,8 +18,8 @@
%% This work consists of all files listed in README
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tcolorbox}[2021/12/20 version 5.0.1 text color boxes]
-\def\tcb@version{5.0.1}
+\ProvidesPackage{tcolorbox}[2022/01/07 version 5.0.2 text color boxes]
+\def\tcb@version{5.0.2}
\RequirePackage{pgf}[2008/01/15]
\RequirePackage{verbatim}[2003/08/22]
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.tex b/macros/latex/contrib/tcolorbox/tcolorbox.tex
index b11b1084b8..2287a74e47 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.tex
@@ -1,5 +1,5 @@
% \LaTeX-Main\
-%% The LaTeX package tcolorbox - version 5.0.1 (2021/12/20)
+%% The LaTeX package tcolorbox - version 5.0.2 (2022/01/07)
%% tcolorbox.tex: Manual
%%
%% -------------------------------------------------------------------------------------------
@@ -44,8 +44,8 @@
\setlength{\bibitemsep}{\smallskipamount}
\addbibresource{tcolorbox.doc.bib}
-\def\version{5.0.1}%
-\def\datum{2021/12/20}%
+\def\version{5.0.2}%
+\def\datum{2022/01/07}%
\makeindex
\hypersetup{
@@ -63,7 +63,7 @@
%\geometry{showframe}
%\tcbset{draftmode}
\tcbset{/tcb/external/-}% for final run
-%\includeonly{tcolorbox.doc.sidebyside}
+%\includeonly{tcolorbox.doc.listings}
%\hypersetup{colorlinks=false}
diff --git a/macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man b/macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man
index 2f931b9c3e..c11ab07300 100644
--- a/macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man
+++ b/macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man
@@ -1,4 +1,4 @@
-.TH "mptopdf" "1" "01-01-2021" "version 1.4.1" "convert MetaPost figures to PDF"
+.TH "mptopdf" "1" "01-01-2022" "version 1.4.1" "convert MetaPost figures to PDF"
.SH NAME
mptopdf - convert MetaPost figures to PDF
.SH SYNOPSIS