summaryrefslogtreecommitdiff
path: root/macros/latex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-spbasic/Changes4
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.bib44
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.pdfbin71043 -> 73881 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.tex35
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.bbx116
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.cbx64
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.lbx478
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx89
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin593159 -> 593346 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex16
-rw-r--r--macros/latex/contrib/gzt/doc/french/gzt-fr.pdfbin539021 -> 541777 bytes
-rw-r--r--macros/latex/contrib/gzt/source/gzt.dtx166
-rw-r--r--macros/latex/contrib/mindflow/mindflow.dtx38
-rw-r--r--macros/latex/contrib/mindflow/mindflow.pdfbin208084 -> 172607 bytes
-rw-r--r--macros/latex/contrib/minimalist/minimalist-doc.pdfbin98036 -> 112379 bytes
-rw-r--r--macros/latex/contrib/minimalist/minimalist-doc.tex4
-rw-r--r--macros/latex/contrib/minimalist/minimalist.sty45
-rw-r--r--macros/latex/contrib/minimalist/minimart.cls6
-rw-r--r--macros/latex/contrib/minimalist/minimbook.cls6
-rw-r--r--macros/latex/contrib/moderncv/CHANGELOG5
-rw-r--r--macros/latex/contrib/moderncv/README.md2
-rw-r--r--macros/latex/contrib/moderncv/moderncv.cls21
-rw-r--r--macros/latex/contrib/moderncv/moderncvbodyi.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvbodyiii.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvbodyiv.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvbodyv.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcollection.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolorblack.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolorblue.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolorburgundy.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolorgreen.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolorgrey.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolororange.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolorpurple.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcolorred.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvcompatibility.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvdebugtools.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvfooti.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvheadi.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvheadii.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvheadiii.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvheadiv.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvheadv.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvheadvi.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncviconsacademic.sty54
-rw-r--r--macros/latex/contrib/moderncv/moderncviconsawesome.sty38
-rw-r--r--macros/latex/contrib/moderncv/moderncviconsletters.sty18
-rw-r--r--macros/latex/contrib/moderncv/moderncviconsmarvosym.sty251
-rw-r--r--macros/latex/contrib/moderncv/moderncviconssymbols.sty33
-rw-r--r--macros/latex/contrib/moderncv/moderncviconstikz.sty466
-rw-r--r--macros/latex/contrib/moderncv/moderncvskillmatrix.sty2
-rw-r--r--macros/latex/contrib/moderncv/moderncvstylebanking.sty10
-rw-r--r--macros/latex/contrib/moderncv/moderncvstylecasual.sty10
-rw-r--r--macros/latex/contrib/moderncv/moderncvstyleclassic.sty10
-rw-r--r--macros/latex/contrib/moderncv/moderncvstyleempty.sty10
-rw-r--r--macros/latex/contrib/moderncv/moderncvstylefancy.sty10
-rw-r--r--macros/latex/contrib/moderncv/moderncvstyleoldstyle.sty2
-rw-r--r--macros/latex/contrib/moderncv/template.tex19
-rw-r--r--macros/latex/contrib/projlib/ProjLib-doc-cn.pdfbin322521 -> 322407 bytes
-rw-r--r--macros/latex/contrib/projlib/ProjLib-doc-en.pdfbin200811 -> 200297 bytes
-rw-r--r--macros/latex/contrib/projlib/ProjLib-doc-fr.pdfbin202446 -> 201834 bytes
-rw-r--r--macros/latex/contrib/projlib/ProjLib-doc.dtx103
-rw-r--r--macros/latex/contrib/projlib/ProjLib.dtx27
-rw-r--r--macros/latex/contrib/spbmark/spbmark.pdfbin68252 -> 68292 bytes
-rw-r--r--macros/latex/contrib/spbmark/spbmark.sty26
-rw-r--r--macros/latex/contrib/spbmark/spbmark.tex14
-rw-r--r--macros/latex/contrib/tcolorbox/CHANGES.md (renamed from macros/latex/contrib/tcolorbox/CHANGES)240
-rw-r--r--macros/latex/contrib/tcolorbox/README95
-rw-r--r--macros/latex/contrib/tcolorbox/README.md96
-rw-r--r--macros/latex/contrib/tcolorbox/tcbbreakable.code.tex12
-rw-r--r--macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex10
-rw-r--r--macros/latex/contrib/tcolorbox/tcbexternal.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbfitting.code.tex20
-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.tex134
-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.tex14
-rw-r--r--macros/latex/contrib/tcolorbox/tcbskins.code.tex44
-rw-r--r--macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcbtheorems.code.tex296
-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.pdfbin281257 -> 281300 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example-poster.tex2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example.pdfbin468990 -> 469092 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-example.tex2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.pdfbin455955 -> 455894 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.bib2
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex3
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex4
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex44
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty47
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex63
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex52
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.pdfbin7270565 -> 7598115 bytes
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.sty115
-rw-r--r--macros/latex/contrib/tcolorbox/tcolorbox.tex9
103 files changed, 2581 insertions, 1055 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/Changes b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/Changes
index 49fc0d39a0..da56be7468 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/Changes
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/Changes
@@ -1,3 +1,7 @@
--- biblatex-spbasic.bbx|cbx
+0.02 2021/12/15 - fix for hyperref option
+ - added lbx file
+ - fix for double dot after title
+ - add option pubstate to print the publication state
0.01 2021/07/12 - first CTAN version
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.bib b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.bib
new file mode 100644
index 0000000000..864a5da5d3
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.bib
@@ -0,0 +1,44 @@
+% Encoding: UTF-8
+
+@Article{Daan1984,
+ author = {Daan, S. and Beersma, D. G. and Borbely, A. A.},
+ journal = {Am J Physiol},
+ title = {Timing of human sleep: recovery process gated by a circadian pacemaker},
+ year = {1984},
+ pages = {161--183},
+ volume = {246},
+ groups = {Imported MODELLE-WITTE-BUCH.bib},
+ owner = {we},
+ timestamp = {2015.12.12},
+}
+
+@Article{Young2018,
+ author = {Young, Michael W.},
+ title = {Time travels: a 40-year journey from \emph{{D}rosophila}'s clock mutants to human circadian disorders ({N}obel {L}ecture).},
+ issue = {36},
+ pages = {11532--11539},
+ pubstate = {published},
+ volume = {57},
+ chemicals = {Circadian Rhythm Signaling Peptides and Proteins},
+ completed = {2019-08-14},
+ country = {Germany},
+ issn-linking = {1433-7851},
+ journal = {Angewandte Chemie (International ed. in English)},
+ nlm-id = {0370543},
+ owner = {NLM},
+ pmid = {30003624},
+ pubmodel = {Print-Electronic},
+ revised = {2020-05-04},
+ year = {2018},
+}
+
+@Book{McClure1966,
+ author = {McClure, F. A.},
+ title = {The bamboos. A fresh perspective},
+ publisher = {Harvard Univ. Press},
+ owner = {we},
+ timestamp = {2016.08.04},
+ year = {1966},
+}
+
+@Comment{jabref-meta: databaseType:bibtex;}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.pdf
index 820bf91239..781b743a49 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.tex b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.tex
index c9b17c5883..31451056da 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.tex
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/doc/biblatex-spbasic.tex
@@ -1,6 +1,7 @@
% biblatex-spbasic documentation 2021/07/11
%
% Copyright (c) 2021 Herbert Voß hvoss@tug.org
+%% $Id: biblatex-spbasic.tex 347 2021-12-16 08:40:36Z herbert $
\documentclass[toc=graduated,parskip=half-,DIV=13,fontsize=11pt,paper=a4]{scrartcl}
@@ -10,38 +11,29 @@
\usepackage[english]{babel}
\usepackage{listings}
\lstset{basicstyle=\ttfamily}
-\usepackage{dtk-logos}
+\usepackage{hvlogos}
+\usepackage{xcolor}
\usepackage{enumitem}
\setlist{nosep}
\usepackage[babel]{csquotes}
\usepackage{xurl}
-\usepackage[style=biblatex-spbasic]{biblatex}
+\usepackage[style=biblatex-spbasic,hyperref]{biblatex}
\usepackage{xspace}
\addbibresource{biblatex-examples.bib}
+\addbibresource{\jobname.bib}
\def\bibsp{\texttt{biblatex-spbasic}\xspace}
\def\bib{\texttt{biblatex}\xspace}
\def\cs#1{\texttt{\textbackslash#1}}
-\usepackage{mdframed,xcolor}
-\def\showbib#1{%
-\begin{mdframed}[
- leftmargin=0pt,
- rightmargin=0pt,
- linecolor=black,
- backgroundcolor=black!10]
-\vspace{-\normalbaselineskip}
-\printbibliography
-\end{mdframed}}
-
-\usepackage[colorlinks,linktocpage]{hyperref}
+\usepackage[colorlinks,linktocpage,citecolor=blue!100!black!60]{hyperref}
\begin{document}
\title{biblatex-spbasic}
-\subtitle{Ver. 0.01}
+\subtitle{Ver. 0.02}
\author{Herbert Voß}
\maketitle
@@ -70,6 +62,7 @@ installed, then copy the two files
\begin{verbatim}
biblatex-spbasic.bbx
biblatex-spbasic.cbx
+biblatex-spbasic.lbx
\end{verbatim}
into your local \TeX\ directory and update the so-called file name database by running \texttt{texhash}.
@@ -88,14 +81,20 @@ It is obvious that using \texttt{biblatex-spbasic} needs the \texttt{biblatex} p
\texttt{biblatex-spbasic}is loaded by
\begin{verbatim}
-\usepackage[style=biblatex-spbasic]{biblatex}
+\usepackage[style=biblatex-spbasic,pubstate=<true|false>]{biblatex}
\end{verbatim}
It is possible to load additional optional arguments which refer to \texttt{biblatex}, the package
-\texttt{biblatex-spbasic} itself has no special arguments.
+\texttt{biblatex-spbasic} itself has only the option \texttt{pubstate}, which is set by default to false. There
+is no need to set it, if you want this presettings. For printing the publication state use \texttt{pubstate=true}.
+
+\section{Example}
+This is some senseless\footfullcite{Young2018} text but with a citation (\verb|\parencite|).~\parencite[See][pp.~16]{Daan1984}
+And this is a \verb|\textcite|, what \textcite[See][pp.~16]{Young2018} already wrote. Remember, this
+text is nonsense for this example!\footcite{Young2018}
\nocite{*}
-\printbibliography[title=Example-Bibliography]
+\printbibliography[title=Bibliography]
\end{document}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.bbx
index 65c09bc05b..17e77dacda 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.bbx
@@ -1,3 +1,5 @@
+%% $Id: biblatex-spbasic.bbx 346 2021-12-15 20:24:43Z herbert $
+%
% biblatex-spbasic.bbx, Herbert Voß
% Herbert Voß -- 2021
% this style is an biblatex style for Springer's spbasic.bst
@@ -6,10 +8,18 @@
%% See https://latex-project.org/lppl/ for the details of that license.
%%
%
-\ProvidesFile{biblatex-spbasic.bbx}[2021/07/12 v0.01 biblatex bibliography style]
+\ProvidesFile{biblatex-spbasic.bbx}[2021/12/15 v0.02 biblatex bibliography style]
% Release Notes can be found in the README
\RequireBibliographyStyle{authoryear}
+
+\DeclareLanguageMapping{english}{biblatex-spbasic}
+
+\newbool{bbx:pubstate}
+\setbool{bbx:pubstate}{false}
+
+\DeclareBibliographyOption[boolean]{pubstate}[true]{\setbool{bbx:pubstate}{#1}}
+
\ExecuteBibliographyOptions{maxnames=3,minnames=1,terseinits,giveninits}
\DeclareDelimFormat[bib,biblist]{nametitledelim}{\space}
@@ -18,9 +28,17 @@
\renewcommand*{\finentrypunct}{}% abschliessenden Punkt entfernen
\renewcommand*{\newunitpunct}{\addspace}% Punkte entfernen
-\DeclareFieldFormat[article]{title}{#1.\isdot}% keine Anfuehrungsstriche und .
-\DeclareFieldFormat{title}{\mkbibemph{#1}.}% Punkt hinter Titel
+\DeclareFieldFormat{title}{\mkbibemph{#1}\adddot}% Punkt hinter Titel
+\DeclareFieldFormat[article]{title}{#1\adddot}% keine Anfuehrungsstriche und .
\DeclareFieldFormat[article]{number}{\mkbibparens{#1}}% (No)
+\DeclareFieldFormat{pages}{\mkpageprefix[bookpagination]{#1}}
+
+\renewbibmacro*{addendum+pubstate}{%
+ \printfield{addendum}%
+ \ifbool{bbx:pubstate}%
+ {\iffieldundef{pubstate}{}{\setunit*{\addcomma\space}\printfield{pubstate}}}%
+ {}%
+}
\renewbibmacro*{publisher+location+date}{% Reihenfolge aendern
\printlist{publisher}\setunit*{\addcomma\space}\printlist{location}\newunit}
@@ -30,7 +48,11 @@
\iffieldundef{series}{}{\newunit\printfield{series}\setunit{\addspace}}%
\printfield{volume}\printfield{number}\setunit{\addcomma\space}%
\printfield{eid}\setunit{\addspace}%
- \usebibmacro{issue+date}\setunit{\addcolon\space}\usebibmacro{issue}\newunit}
+ \usebibmacro{issue+date}%
+ \setunit{\addcolon\space}%
+ \usebibmacro{issue}%
+ \newunit
+}
\DeclareNameAlias{sortname}{family-given}
\renewcommand*{\revsdnamepunct}{}
@@ -41,5 +63,91 @@
\DeclareDelimAlias{finalnamedelim}{multinamedelim}
+\iffalse
+\newbibmacro*{journal+issuetitle}{%
+ \usebibmacro{journal}%
+ \setunit*{\addspace}%
+ \iffieldundef{series}
+ {}
+ {\newunit
+ \printfield{series}%
+ \setunit{\addspace}}%
+ \usebibmacro{volume+number+eid}%
+ \setunit{\addcolon}%
+ \usebibmacro{issue+date}%
+ \setunit{\addcolon\space}%
+ \usebibmacro{issue}%
+ \newunit
+}
+\fi
+
+\renewcommand*{\bibpagespunct}{\addcolon}
+
+\newbibmacro*{note+pages}{%
+ \printfield{note}%
+ %\setunit{
+ \bibpagespunct%}%
+ \printfield{pages}%
+ \newunit}
+
+\renewbibmacro*{title}{%
+ \ifboolexpr{
+ test {\iffieldundef{title}}
+ and
+ test {\iffieldundef{subtitle}}
+ }%
+ {}%
+ {\printtext[title]{%
+ \printfield[titlecase]{title}%
+ \setunit{\subtitlepunct}%
+ \printfield[titlecase]{subtitle}%
+ }%
+ \newunit
+ }%
+ \iffieldundef{titleaddon}{}{\printfield{titleaddon}}%
+}
+
+
+\iffalse
+\DeclareBibliographyDriver{article}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/translator+others}%
+ \setunit{\printdelim{nametitledelim}}\newblock
+ \usebibmacro{title}%
+ \newunit
+ \printlist{language}%
+ \newunit\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \usebibmacro{bytranslator+others}%
+ \newunit\newblock
+ \printfield{version}%
+ \newunit\newblock
+ \usebibmacro{in:}%
+ \usebibmacro{journal+issuetitle}%
+ \newunit
+ \usebibmacro{byeditor+others}%
+ \newunit
+ \usebibmacro{note+pages}%
+ \newunit\newblock
+ \iftoggle{bbx:isbn}
+ {\printfield{issn}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{doi+eprint+url}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \newunit\newblock
+ \iftoggle{bbx:related}
+ {\usebibmacro{related:init}%
+ \usebibmacro{related}}
+ {}%
+ \usebibmacro{finentry}}
+\fi
+
+
\endinput
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.cbx
index aa2c6ce23c..4c819a8566 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.cbx
@@ -5,10 +5,72 @@
%% This material is subject to the LaTeX Project Public License.
%% See https://latex-project.org/lppl/ for the details of that license.
%%
-\ProvidesFile{biblatex-spbasic.cbx}[2021/07/12 v0.01 biblatex bibliography style]
+\ProvidesFile{biblatex-spbasic.cbx}[2021/12/15 v0.02 biblatex bibliography style]
% Release Notes can be found in the README
\RequireCitationStyle{authoryear}
+\renewbibmacro*{textcite}{%
+ \ifnameundef{labelname}
+ {\iffieldundef{shorthand}
+ {\usebibmacro{cite:label}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+ \printtext[bibhyperref]{\printdelim{nonameyeardelim}\bibopenparen}}%
+ \ifnumequal{\value{citecount}}{1}
+ {\usebibmacro{prenote}}
+ {}%
+ \usebibmacro{cite:labeldate+extradate}}
+ {\usebibmacro{cite:shorthand}}}
+ {\printtext[bibhyperref]{\printnames{labelname}}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+% \printtext[bibhyperref]{\printdelim{nameyeardelim}\bibopenparen}}%
+ \printdelim{nameyeardelim}\bibopenparen}%
+ \ifnumequal{\value{citecount}}{1}
+ {\usebibmacro{prenote}}
+ {}%
+ \usebibmacro{citeyear}}}
+
+\renewbibmacro*{cite}{%
+ \iffieldundef{shorthand}
+ {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
+ {\usebibmacro{cite:label}%
+ \setunit{\printdelim{nonameyeardelim}}}
+ {\printtext[bibhyperref]{\printnames{labelname}}%
+ \setunit{\printdelim{nameyeardelim}}}%
+ \usebibmacro{cite:labeldate+extradate}}
+ {\usebibmacro{cite:shorthand}}}
+
+\renewbibmacro*{textcite:postnote}{%
+ \iffieldundef{postnote}%
+ {\ifbool{cbx:parens}%
+ {\bibcloseparen}%
+% {\printtext[bibhyperref]{\bibcloseparen}}%
+ {}}%
+ {\ifbool{cbx:parens}%
+% {\setunit{\printtext[bibhyperref]{\printdelim{postnotedelim}}}}%
+ {\setunit{\printdelim{postnotedelim}}}%
+% {\setunit{\printtext[bibhyperref]{\printdelim{extpostnotedelim}\bibopenparen}}}%
+ {\setunit{\printdelim{extpostnotedelim}\bibopenparen}}%
+ \printtext[bibhyperref]{\printfield{postnote}}\bibcloseparen}}
+
+\renewbibmacro*{prenote}{%
+ \iffieldundef{prenote}
+ {}
+ {\printtext[bibhyperref]{\printfield{prenote}}%
+% \setunit{\printtext[bibhyperref]{\printdelim{prenotedelim}}}}}
+ \setunit{\printdelim{prenotedelim}}}}
+
+\renewbibmacro*{postnote}{%
+ \iffieldundef{postnote}
+ {}
+% {\setunit{\printtext[bibhyperref]{\printdelim{postnotedelim}}}%
+ {\setunit{\printdelim{postnotedelim}}%
+ \printtext[bibhyperref]{\printfield{postnote}}}}
+
+
+
+
\endinput
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.lbx
new file mode 100644
index 0000000000..ce596a604e
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-spbasic/latex/biblatex-spbasic.lbx
@@ -0,0 +1,478 @@
+% biblatex-spbasic.lbx, Herbert Voß
+% Herbert Voß -- 2021
+% this style is an biblatex style for Springer's spbasic.bst
+%
+%% This material is subject to the LaTeX Project Public License.
+%% See https://latex-project.org/lppl/ for the details of that license.
+%%
+\ProvidesFile{biblatex-spbasic.lbx}[2021/12/15 v0.02 biblatex bibliography style]
+% Release Notes can be found in the README
+
+\InheritBibliographyExtras{english}
+
+\DeclareBibliographyStrings{%
+ bibliography = {{Bibliography}{Bibliography}},
+ references = {{References}{References}},
+ shorthands = {{List of Abbreviations}{Abbreviations}},
+ editor = {{editor}{ed\adddot}},
+ editors = {{editors}{eds\adddot}},
+ compiler = {{compiler}{comp\adddot}},
+ compilers = {{compilers}{comp\adddot}},
+ redactor = {{redactor}{red\adddot}},
+ redactors = {{redactors}{red\adddot}},
+ reviser = {{reviser}{rev\adddot}},
+ revisers = {{revisers}{rev\adddot}},
+ founder = {{founder}{found\adddot}},
+ founders = {{founders}{found\adddot}},
+ continuator = {{continued}{cont\adddot}},% FIXME: unsure
+ continuators = {{continued}{cont\adddot}},% FIXME: unsure
+ collaborator = {{collaborator}{collab\adddot}},% FIXME: unsure
+ collaborators = {{collaborators}{collab\adddot}},% FIXME: unsure
+ translator = {{translator}{trans\adddot}},
+ translators = {{translators}{trans\adddot}},
+ commentator = {{commentator}{comm\adddot}},
+ commentators = {{commentators}{comm\adddot}},
+ annotator = {{annotator}{annot\adddot}},
+ annotators = {{annotators}{annot\adddot}},
+ commentary = {{commentary}{comm\adddot}},
+ annotations = {{annotations}{annot\adddot}},
+ introduction = {{introduction}{intro\adddot}},
+ foreword = {{foreword}{forew\adddot}},
+ afterword = {{afterword}{afterw\adddot}},
+ editortr = {{editor and translator}%
+ {ed\adddotspace and trans\adddot}},
+ editorstr = {{editors and translators}%
+ {eds\adddotspace and trans\adddot}},
+ editorco = {{editor and commentator}%
+ {ed\adddotspace and comm\adddot}},
+ editorsco = {{editors and commentators}%
+ {eds\adddotspace and comm\adddot}},
+ editoran = {{editor and annotator}%
+ {ed\adddotspace and annot\adddot}},
+ editorsan = {{editors and annotators}%
+ {eds\adddotspace and annot\adddot}},
+ editorin = {{editor and introduction}%
+ {ed\adddotspace and introd\adddot}},
+ editorsin = {{editors and introduction}%
+ {eds\adddotspace and introd\adddot}},
+ editorfo = {{editor and foreword}%
+ {ed\adddotspace and forew\adddot}},
+ editorsfo = {{editors and foreword}%
+ {eds\adddotspace and forew\adddot}},
+ editoraf = {{editor and afterword}%
+ {ed\adddotspace and afterw\adddot}},
+ editorsaf = {{editors and afterword}%
+ {eds\adddotspace and afterw\adddot}},
+ editortrco = {{editor, translator\finalandcomma\ and commentator}%
+ {ed.,\addabbrvspace trans\adddot\finalandcomma\ and comm\adddot}},
+ editorstrco = {{editors, translators\finalandcomma\ and commentators}%
+ {eds.,\addabbrvspace trans\adddot\finalandcomma\ and comm\adddot}},
+ editortran = {{editor, translator\finalandcomma\ and annotator}%
+ {ed.,\addabbrvspace trans\adddot\finalandcomma\ and annot\adddot}},
+ editorstran = {{editors, translators\finalandcomma\ and annotators}%
+ {eds.,\addabbrvspace trans\adddot\finalandcomma\ and annot\adddot}},
+ editortrin = {{editor, translator\finalandcomma\ and introduction}%
+ {ed.,\addabbrvspace trans\adddot\finalandcomma\ and introd\adddot}},
+ editorstrin = {{editors, translators\finalandcomma\ and introduction}%
+ {eds.,\addabbrvspace trans\adddot\finalandcomma\ and introd\adddot}},
+ editortrfo = {{editor, translator\finalandcomma\ and foreword}%
+ {ed.,\addabbrvspace trans\adddot\finalandcomma\ and forew\adddot}},
+ editorstrfo = {{editors, translators\finalandcomma\ and foreword}%
+ {eds.,\addabbrvspace trans\adddot\finalandcomma\ and forew\adddot}},
+ editortraf = {{editor, translator\finalandcomma\ and afterword}%
+ {ed.,\addabbrvspace trans\adddot\finalandcomma\ and afterw\adddot}},
+ editorstraf = {{editors, translators\finalandcomma\ and afterword}%
+ {eds.,\addabbrvspace trans\adddot\finalandcomma\ and afterw\adddot}},
+ editorcoin = {{editor, commentator\finalandcomma\ and introduction}%
+ {ed.,\addabbrvspace comm\adddot\finalandcomma\ and introd\adddot}},
+ editorscoin = {{editors, commentators\finalandcomma\ and introduction}%
+ {eds.,\addabbrvspace comm\adddot\finalandcomma\ and introd\adddot}},
+ editorcofo = {{editor, commentator\finalandcomma\ and foreword}%
+ {ed.,\addabbrvspace comm\adddot\finalandcomma\ and forew\adddot}},
+ editorscofo = {{editors, commentators\finalandcomma\ and foreword}%
+ {eds.,\addabbrvspace comm\adddot\finalandcomma\ and forew\adddot}},
+ editorcoaf = {{editor, commentator\finalandcomma\ and afterword}%
+ {ed.,\addabbrvspace comm\adddot\finalandcomma\ and afterw\adddot}},
+ editorscoaf = {{editors, commentators\finalandcomma\ and afterword}%
+ {eds.,\addabbrvspace comm\adddot\finalandcomma\ and afterw\adddot}},
+ editoranin = {{editor, annotator\finalandcomma\ and introduction}%
+ {ed.,\addabbrvspace annot\adddot\finalandcomma\ and introd\adddot}},
+ editorsanin = {{editors, annotators\finalandcomma\ and introduction}%
+ {eds.,\addabbrvspace annot\adddot\finalandcomma\ and introd\adddot}},
+ editoranfo = {{editor, annotator\finalandcomma\ and foreword}%
+ {ed.,\addabbrvspace annot\adddot\finalandcomma\ and forew\adddot}},
+ editorsanfo = {{editors, annotators\finalandcomma\ and foreword}%
+ {eds.,\addabbrvspace annot\adddot\finalandcomma\ and forew\adddot}},
+ editoranaf = {{editor, annotator\finalandcomma\ and afterword}%
+ {ed.,\addabbrvspace annot\adddot\finalandcomma\ and afterw\adddot}},
+ editorsanaf = {{editors, annotators\finalandcomma\ and afterword}%
+ {eds.,\addabbrvspace annot\adddot\finalandcomma\ and afterw\adddot}},
+ editortrcoin = {{editor, translator, commentator\finalandcomma\ and introduction}%
+ {ed.,\addabbrvspace trans., comm\adddot\finalandcomma\ and introd\adddot}},
+ editorstrcoin = {{editors, translators, commentators\finalandcomma\ and introduction}%
+ {eds.,\addabbrvspace trans., comm\adddot\finalandcomma\ and introd\adddot}},
+ editortrcofo = {{editor, translator, commentator\finalandcomma\ and foreword}%
+ {ed.,\addabbrvspace trans., comm\adddot\finalandcomma\ and forew\adddot}},
+ editorstrcofo = {{editors, translators, commentators\finalandcomma\ and foreword}%
+ {eds.,\addabbrvspace trans., comm\adddot\finalandcomma\ and forew\adddot}},
+ editortrcoaf = {{editor, translator, commentator\finalandcomma\ and afterword}%
+ {ed.,\addabbrvspace trans., comm\adddot\finalandcomma\ and afterw\adddot}},
+ editorstrcoaf = {{editors, translators, commentators\finalandcomma\ and afterword}%
+ {eds.,\addabbrvspace trans., comm\adddot\finalandcomma\ and afterw\adddot}},
+ editortranin = {{editor, translator, annotator\finalandcomma\ and introduction}%
+ {ed.,\addabbrvspace trans., annot\adddot\finalandcomma\ and introd\adddot}},
+ editorstranin = {{editors, translators, annotators\finalandcomma\ and introduction}%
+ {eds.,\addabbrvspace trans., annot\adddot\finalandcomma\ and introd\adddot}},
+ editortranfo = {{editor, translator, annotator\finalandcomma\ and foreword}%
+ {ed.,\addabbrvspace trans., annot\adddot\finalandcomma\ and forew\adddot}},
+ editorstranfo = {{editors, translators, annotators\finalandcomma\ and foreword}%
+ {eds.,\addabbrvspace trans., annot\adddot\finalandcomma\ and forew\adddot}},
+ editortranaf = {{editor, translator, annotator\finalandcomma\ and afterword}%
+ {ed.,\addabbrvspace trans., annot\adddot\finalandcomma\ and afterw\adddot}},
+ editorstranaf = {{editors, translators, annotators\finalandcomma\ and afterword}%
+ {eds.,\addabbrvspace trans., annot\adddot\finalandcomma\ and afterw\adddot}},
+ translatorco = {{translator and commentator}%
+ {trans\adddot\ and comm\adddot}},
+ translatorsco = {{translators and commentators}%
+ {trans\adddot\ and comm\adddot}},
+ translatoran = {{translator and annotator}%
+ {trans\adddot\ and annot\adddot}},
+ translatorsan = {{translators and annotators}%
+ {trans\adddot\ and annot\adddot}},
+ translatorin = {{translation and introduction}%
+ {trans\adddot\ and introd\adddot}},
+ translatorsin = {{translation and introduction}%
+ {trans\adddot\ and introd\adddot}},
+ translatorfo = {{translation and foreword}%
+ {trans\adddot\ and forew\adddot}},
+ translatorsfo = {{translation and foreword}%
+ {trans\adddot\ and forew\adddot}},
+ translatoraf = {{translation and afterword}%
+ {trans\adddot\ and afterw\adddot}},
+ translatorsaf = {{translation and afterword}%
+ {trans\adddot\ and afterw\adddot}},
+ translatorcoin = {{translation, commentary\finalandcomma\ and introduction}%
+ {trans., comm\adddot\finalandcomma\ and introd\adddot}},
+ translatorscoin = {{translation, commentary\finalandcomma\ and introduction}%
+ {trans., comm\adddot\finalandcomma\ and introd\adddot}},
+ translatorcofo = {{translation, commentary\finalandcomma\ and foreword}%
+ {trans., comm\adddot\finalandcomma\ and forew\adddot}},
+ translatorscofo = {{translation, commentary\finalandcomma\ and foreword}%
+ {trans., comm\adddot\finalandcomma\ and forew\adddot}},
+ translatorcoaf = {{translation, commentary\finalandcomma\ and afterword}%
+ {trans., comm\adddot\finalandcomma\ and afterw\adddot}},
+ translatorscoaf = {{translation, commentary\finalandcomma\ and afterword}%
+ {trans., comm\adddot\finalandcomma\ and afterw\adddot}},
+ translatoranin = {{translation, annotations\finalandcomma\ and introduction}%
+ {trans., annot\adddot\finalandcomma\ and introd\adddot}},
+ translatorsanin = {{translation, annotations\finalandcomma\ and introduction}%
+ {trans., annot\adddot\finalandcomma\ and introd\adddot}},
+ translatoranfo = {{translation, annotations\finalandcomma\ and foreword}%
+ {trans., annot\adddot\finalandcomma\ and forew\adddot}},
+ translatorsanfo = {{translation, annotations\finalandcomma\ and foreword}%
+ {trans., annot\adddot\finalandcomma\ and forew\adddot}},
+ translatoranaf = {{translation, annotations\finalandcomma\ and afterword}%
+ {trans., annot\adddot\finalandcomma\ and afterw\adddot}},
+ translatorsanaf = {{translation, annotations\finalandcomma\ and afterword}%
+ {trans., annot\adddot\finalandcomma\ and afterw\adddot}},
+ organizer = {{organizer}{org\adddot}},
+ organizers = {{organizers}{orgs\adddot}},
+ byorganizer = {{organized by}{org\adddotspace by}},
+ byauthor = {{by}{by}},
+ byeditor = {{edited by}{ed\adddotspace by}},
+ bycompiler = {{compiled by}{comp\adddotspace by}},
+ byredactor = {{redacted by}{red\adddotspace by}},
+ byreviser = {{revised by}{rev\adddotspace by}},
+ byreviewer = {{reviewed by}{rev\adddotspace by}},
+ byfounder = {{founded by}{found\adddotspace by}},
+ bycontinuator = {{continued by}{cont\adddotspace by}},
+ bycollaborator = {{in collaboration with}{in collab\adddotspace with}},% FIXME: unsure
+ bytranslator = {{translated \lbx@lfromlang\ by}{trans\adddot\ \lbx@sfromlang\ by}},
+ bycommentator = {{commented by}{comm\adddot\ by}},
+ byannotator = {{annotated by}{annot\adddot\ by}},
+ withcommentator = {{with a commentary by}{with a comment\adddot\ by}},
+ withannotator = {{with annotations by}{with annots\adddot\ by}},
+ withintroduction = {{with an introduction by}{with an intro\adddot\ by}},
+ withforeword = {{with a foreword by}{with a forew\adddot\ by}},
+ withafterword = {{with an afterword by}{with an afterw\adddot\ by}},
+ byeditortr = {{edited and translated \lbx@lfromlang\ by}%
+ {ed\adddotspace and trans\adddot\ \lbx@sfromlang\ by}},
+ byeditorco = {{edited and commented by}%
+ {ed\adddotspace and comm\adddot\ by}},
+ byeditoran = {{edited and annotated by}%
+ {ed\adddotspace and annot\adddot\ by}},
+ byeditorin = {{edited, with an introduction, by}%
+ {ed.,\addabbrvspace with an introd., by}},
+ byeditorfo = {{edited, with a foreword, by}%
+ {ed.,\addabbrvspace with a forew., by}},
+ byeditoraf = {{edited, with an afterword, by}%
+ {ed.,\addabbrvspace with an afterw., by}},
+ byeditortrco = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm\adddot\ by}},
+ byeditortran = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot\adddot\ by}},
+ byeditortrin = {{edited and translated \lbx@lfromlang, with an introduction, by}%
+ {ed\adddotspace and trans\adddot\ \lbx@sfromlang, with an introd., by}},
+ byeditortrfo = {{edited and translated \lbx@lfromlang, with a foreword, by}%
+ {ed\adddotspace and trans\adddot\ \lbx@sfromlang, with a forew., by}},
+ byeditortraf = {{edited and translated \lbx@lfromlang, with an afterword, by}%
+ {ed\adddotspace and trans\adddot\ \lbx@sfromlang, with an afterw., by}},
+ byeditorcoin = {{edited and commented, with an introduction, by}%
+ {ed\adddotspace and comm., with an introd., by}},
+ byeditorcofo = {{edited and commented, with a foreword, by}%
+ {ed\adddotspace and comm., with a forew., by}},
+ byeditorcoaf = {{edited and commented, with an afterword, by}%
+ {ed\adddotspace and comm., with an afterw., by}},
+ byeditoranin = {{edited and annotated, with an introduction, by}%
+ {ed\adddotspace and annot., with an introd., by}},
+ byeditoranfo = {{edited and annotated, with a foreword, by}%
+ {ed\adddotspace and annot., with a forew., by}},
+ byeditoranaf = {{edited and annotated, with an afterword, by}%
+ {ed\adddotspace and annot., with an afterw., by}},
+ byeditortrcoin = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented, with an introduction, by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm., with an introd., by}},
+ byeditortrcofo = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented, with a foreword, by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm., with a forew., by}},
+ byeditortrcoaf = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented, with an afterword, by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm., with an afterw., by}},
+ byeditortranin = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated, with an introduction, by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot., with an introd., by}},
+ byeditortranfo = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated, with a foreword, by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot., with a forew., by}},
+ byeditortranaf = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated, with an afterword, by}%
+ {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot., with an afterw., by}},
+ bytranslatorco = {{translated \lbx@lfromlang\ and commented by}%
+ {trans\adddot\ \lbx@sfromlang\ and comm\adddot\ by}},
+ bytranslatoran = {{translated \lbx@lfromlang\ and annotated by}%
+ {trans\adddot\ \lbx@sfromlang\ and annot\adddot\ by}},
+ bytranslatorin = {{translated \lbx@lfromlang, with an introduction, by}%
+ {trans\adddot\ \lbx@sfromlang, with an introd., by}},
+ bytranslatorfo = {{translated \lbx@lfromlang, with a foreword, by}%
+ {trans\adddot\ \lbx@sfromlang, with a forew., by}},
+ bytranslatoraf = {{translated \lbx@lfromlang, with an afterword, by}%
+ {trans\adddot\ \lbx@sfromlang, with an afterw., by}},
+ bytranslatorcoin = {{translated \lbx@lfromlang\ and commented, with an introduction, by}%
+ {trans\adddot\ \lbx@sfromlang\ and comm., with an introd., by}},
+ bytranslatorcofo = {{translated \lbx@lfromlang\ and commented, with a foreword, by}%
+ {trans\adddot\ \lbx@sfromlang\ and comm., with a forew., by}},
+ bytranslatorcoaf = {{translated \lbx@lfromlang\ and commented, with an afterword, by}%
+ {trans\adddot\ \lbx@sfromlang\ and comm., with an afterw., by}},
+ bytranslatoranin = {{translated \lbx@lfromlang\ and annotated, with an introduction, by}%
+ {trans\adddot\ \lbx@sfromlang\ and annot., with an introd., by}},
+ bytranslatoranfo = {{translated \lbx@lfromlang\ and annotated, with a foreword, by}%
+ {trans\adddot\ \lbx@sfromlang\ and annot., with a forew., by}},
+ bytranslatoranaf = {{translated \lbx@lfromlang\ and annotated, with an afterword, by}%
+ {trans\adddot\ \lbx@sfromlang\ and annot., with an afterw., by}},
+ and = {{and}{and}},
+ andothers = {{et\addabbrvspace al\adddot}{et\addabbrvspace al\adddot}},
+ andmore = {{et\addabbrvspace al\adddot}{et\addabbrvspace al\adddot}},
+ volume = {{volume}{vol\adddot}},
+ volumes = {{volumes}{vols\adddot}},
+ involumes = {{in}{in}},
+ jourvol = {{volume}{vol\adddot}},
+ jourser = {{series}{ser\adddot}},
+ book = {{book}{book}},
+ part = {{part}{part}},
+ issue = {{issue}{issue}},
+ newseries = {{new series}{new ser\adddot}},
+ oldseries = {{old series}{old ser\adddot}},
+ edition = {{edition}{ed\adddot}},
+ reprint = {{reprint}{repr\adddot}},
+ reprintof = {{reprint of}{repr\adddotspace of}},
+ reprintas = {{reprinted as}{rpt\adddotspace as}},
+ reprintfrom = {{reprinted from}{repr\adddotspace from}},
+ reviewof = {{review of}{rev\adddotspace of}},
+ translationof = {{translation of}{trans\adddotspace of}},
+ translationas = {{translated as}{trans\adddotspace as}},
+ translationfrom = {{translated from}{trans\adddotspace from}},
+ origpubas = {{originally published as}{orig\adddotspace pub\adddotspace as}},
+ origpubin = {{originally published in}{orig\adddotspace pub\adddotspace in}},
+ astitle = {{as}{as}},
+ bypublisher = {{by}{by}},
+ nodate = {{no date}{n\adddot d\adddot}},
+ pages = {{}{}},
+ page = {{}{}},
+ column = {{column}{col\adddot}},
+ columns = {{columns}{cols\adddot}},
+ line = {{line}{l\adddot}},
+ lines = {{lines}{ll\adddot}},
+ verse = {{verse}{v\adddot}},
+ verses = {{verses}{vv\adddot}},
+ section = {{section}{\S}},
+ sections = {{sections}{\S\S}},
+ paragraph = {{paragraph}{par\adddot}},
+ paragraphs = {{paragraphs}{par\adddot}},
+ pagetotal = {{page}{p\adddot}},
+ pagetotals = {{pages}{pp\adddot}},
+ columntotal = {{column}{col\adddot}},
+ columntotals = {{columns}{cols\adddot}},
+ linetotal = {{line}{l\adddot}},
+ linetotals = {{lines}{ll\adddot}},
+ versetotal = {{verse}{v\adddot}},
+ versetotals = {{verses}{vv\adddot}},
+ sectiontotal = {{section}{\S}},
+ sectiontotals = {{sections}{\S\S}},
+ paragraphtotal = {{paragraph}{par\adddot}},
+ paragraphtotals = {{paragraphs}{par\adddot}},
+ in = {{in}{in}},
+ inseries = {{in}{in}},
+ ofseries = {{of}{of}},
+ number = {{number}{no\adddot}},
+ chapter = {{chapter}{chap\adddot}},
+ bathesis = {{Bachelor's thesis}{BA\addabbrvspace thesis}},
+ mathesis = {{Master's thesis}{MA\addabbrvspace thesis}},
+ phdthesis = {{PhD\addabbrvspace thesis}{PhD\addabbrvspace thesis}},
+ candthesis = {{Candidate thesis}{Cand\adddotspace thesis}},
+ resreport = {{research report}{research rep\adddot}},
+ techreport = {{technical report}{tech\adddotspace rep\adddot}},
+ software = {{computer software}{comp\adddotspace software}},
+ datacd = {{CD-ROM}{CD-ROM}},
+ audiocd = {{audio CD}{audio CD}},
+ version = {{version}{version}},
+ url = {{address}{address}},
+ urlfrom = {{available from}{available from}},
+ urlseen = {{visited on}{visited on}},
+ inpreparation = {{in preparation}{in preparation}},
+ submitted = {{submitted}{submitted}},
+ forthcoming = {{forthcoming}{forthcoming}},
+ inpress = {{in press}{in press}},
+ prepublished = {{pre-published}{pre-published}},
+ citedas = {{henceforth cited as}{henceforth cited as}},
+ thiscite = {{especially}{esp\adddot}},
+ seenote = {{see note}{see n\adddot}},
+ quotedin = {{quoted in}{qtd\adddotspace in}},
+ idem = {{idem}{idem}},
+ idemsm = {{idem}{idem}},
+ idemsf = {{eadem}{eadem}},
+ idemsn = {{idem}{idem}},
+ idempm = {{eidem}{eidem}},
+ idempf = {{eaedem}{eaedem}},
+ idempn = {{eadem}{eadem}},
+ idempp = {{eidem}{eidem}},
+ ibidem = {{ibidem}{ibid\adddot}},
+ opcit = {{op\adddotspace cit\adddot}{op\adddotspace cit\adddot}},
+ loccit = {{loc\adddotspace cit\adddot}{loc\adddotspace cit\adddot}},
+ confer = {{cf\adddot}{cf\adddot}},
+ sequens = {{sq\adddot}{sq\adddot}},
+ sequentes = {{sqq\adddot}{sqq\adddot}},
+ passim = {{passim}{pass\adddot}},
+ see = {{see}{see}},
+ seealso = {{see also}{see also}},
+ backrefpage = {{cited on page}{cit\adddotspace on p\adddot}},
+ backrefpages = {{cited on pages}{cit\adddotspace on pp\adddot}},
+ january = {{January}{Jan\adddot}},
+ february = {{February}{Feb\adddot}},
+ march = {{March}{Mar\adddot}},
+ april = {{April}{Apr\adddot}},
+ may = {{May}{May}},
+ june = {{June}{June}},
+ july = {{July}{July}},
+ august = {{August}{Aug\adddot}},
+ september = {{September}{Sept\adddot}},
+ october = {{October}{Oct\adddot}},
+ november = {{November}{Nov\adddot}},
+ december = {{December}{Dec\adddot}},
+ langamerican = {{American}{American}},
+ langbasque = {{Basque}{Basque}},
+ langbrazilian = {{Brazilian}{Brazilian}},
+ langbulgarian = {{Bulgarian}{Bulgarian}},
+ langcatalan = {{Catalan}{Catalan}},
+ langcroatian = {{Croatian}{Croatian}},
+ langczech = {{Czech}{Czech}},
+ langdanish = {{Danish}{Danish}},
+ langdutch = {{Dutch}{Dutch}},
+ langenglish = {{English}{English}},
+ langestonian = {{Estonian}{Estonian}},
+ langfinnish = {{Finnish}{Finnish}},
+ langfrench = {{French}{French}},
+ langgalician = {{Galician}{Galician}},
+ langgerman = {{German}{German}},
+ langgreek = {{Greek}{Greek}},
+ langhungarian = {{Hungarian}{Hungarian}},
+ langitalian = {{Italian}{Italian}},
+ langjapanese = {{Japanese}{Japanese}},
+ langlatin = {{Latin}{Latin}},
+ langlatvian = {{Latvian}{Latvian}},
+ langlithuanian = {{Lithuanian}{Lithuanian}},
+ langnorwegian = {{Norwegian}{Norwegian}},
+ langpolish = {{Polish}{Polish}},
+ langportuguese = {{Portuguese}{Portuguese}},
+ langrussian = {{Russian}{Russian}},
+ langserbian = {{Serbian}{Serbian}},
+ langslovak = {{Slovak}{Slovak}},
+ langslovene = {{Slovene}{Slovene}},
+ langspanish = {{Spanish}{Spanish}},
+ langswedish = {{Swedish}{Swedish}},
+ langturkish = {{Turkish}{Turkish}},
+ langukrainian = {{Ukrainian}{Ukrainian}},
+ fromamerican = {{from the American}{from the American}},
+ frombasque = {{from the Basque}{from the Basque}},
+ frombrazilian = {{from the Brazilian}{from the Brazilian}},
+ frombulgarian = {{from the Bulgarian}{from the Bulgarian}},
+ fromcatalan = {{from the Catalan}{from the Catalan}},
+ fromcroatian = {{from the Croatian}{from the Croatian}},
+ fromczech = {{from the Czech}{from the Czech}},
+ fromdanish = {{from the Danish}{from the Danish}},
+ fromdutch = {{from the Dutch}{from the Dutch}},
+ fromenglish = {{from the English}{from the English}},
+ fromestonian = {{from the Estonian}{from the Estonian}},
+ fromfinnish = {{from the Finnish}{from the Finnish}},
+ fromfrench = {{from the French}{from the French}},
+ fromgalician = {{from the Galician}{from the Galician}},
+ fromgerman = {{from the German}{from the German}},
+ fromgreek = {{from the Greek}{from the Greek}},
+ fromhungarian = {{from the Hungarian}{from the Hungarian}},
+ fromitalian = {{from the Italian}{from the Italian}},
+ fromjapanese = {{from the Japanese}{from the Japanese}},
+ fromlatin = {{from the Latin}{from the Latin}},
+ fromlatvian = {{from the Latvian}{from the Latvian}},
+ fromlithuanian = {{from the Lithuanian}{from the Lithuanian}},
+ fromnorwegian = {{from the Norwegian}{from the Norwegian}},
+ frompolish = {{from the Polish}{from the Polish}},
+ fromportuguese = {{from the Portuguese}{from the Portuguese}},
+ fromrussian = {{from the Russian}{from the Russian}},
+ fromserbian = {{from the Serbian}{from the Serbian}},
+ fromslovak = {{from the Slovak}{from the Slovak}},
+ fromslovene = {{from the Slovene}{from the Slovene}},
+ fromspanish = {{from the Spanish}{from the Spanish}},
+ fromswedish = {{from the Swedish}{from the Swedish}},
+ fromturkish = {{from the Turkish}{from the Turkish}},
+ fromukrainian = {{from the Ukrainian}{from the Ukrainian}},
+ countryde = {{Germany}{DE}},
+ countryeu = {{European Union}{EU}},
+ countryep = {{European Union}{EP}},
+ countryfr = {{France}{FR}},
+ countryuk = {{United Kingdom}{GB}},
+ countryus = {{United States of America}{US}},
+ patent = {{patent}{pat\adddot}},
+ patentde = {{German patent}{German pat\adddot}},
+ patenteu = {{European patent}{European pat\adddot}},
+ patentfr = {{French patent}{French pat\adddot}},
+ patentuk = {{British patent}{British pat\adddot}},
+ patentus = {{U.S\adddotspace patent}{U.S\adddotspace pat\adddot}},
+ patreq = {{patent request}{pat\adddot\ req\adddot}},
+ patreqde = {{German patent request}{German pat\adddot\ req\adddot}},
+ patreqeu = {{European patent request}{European pat\adddot\ req\adddot}},
+ patreqfr = {{French patent request}{French pat\adddot\ req\adddot}},
+ patrequk = {{British patent request}{British pat\adddot\ req\adddot}},
+ patrequs = {{U.S\adddotspace patent request}{U.S\adddotspace pat\adddot\ req\adddot}},
+ file = {{file}{file}},
+ library = {{library}{library}},
+ abstract = {{abstract}{abstract}},
+ annotation = {{annotations}{annotations}},
+ commonera = {{Common Era}{CE}},
+ beforecommonera = {{Before Common Era}{BCE}},
+ annodomini = {{Anno Domini}{AD}},
+ beforechrist = {{Before Christ}{BC}},
+ circa = {{circa}{ca\adddot}},
+ spring = {{Spring}{Spr\adddot}},
+ summer = {{Summer}{Sum\adddot}},
+ autumn = {{Autumn}{Aut\adddot}},
+ winter = {{Winter}{Win\adddot}},
+ am = {{AM}{AM}},
+ pm = {{PM}{PM}},
+}
+
+
+\endinput
+
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index 0765fb3ecc..655d567ae0 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}{2021/12/15}{1.41U}
+\ProvidesExplClass{easybook}{2021/12/15}{1.41V}
{Typeset Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -79,7 +79,6 @@
\cs_new_eq:NN \eb_set_family:nnn \ctex_ltj_set_family:nnn
\cs_new_eq:NN \eb_switch_family:n \ctex_ltj_switch_family:n
}
-\cs_generate_variant:Nn \eb_switch_family:n { V }
\cs_new_protected:Npn \eb_setmainfont:nn #1#2
{ \__fontspec_main_setmainfont:nn {#2} {#1} }
\cs_new_protected:Npn \eb_setsansfont:nn #1#2
@@ -101,7 +100,7 @@
\RenewDocumentCommand{\newCJKfontfamily}{omO{}mO{}}
{
\tl_set:Nx \l_tmpa_tl { \tl_if_novalue:nTF {#1} { \cs_to_str:N #2 } {#1} }
- \cs_new_protected:Npx #2 { \eb_switch_family:V \l_tmpa_tl }
+ \cs_new_protected:Npx #2 { \eb_switch_family:n { \l_tmpa_tl } }
\eb_set_family:nnn { \l_tmpa_tl } {#3,#5} {#4}
}
@@ -308,7 +307,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2021/12/15}{1.41U}
+\ProvidesExplPackage{easybase}{2021/12/15}{1.41V}
{Typeset Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -534,7 +533,7 @@
{ fancyhdr } { 2021/01/28 },
{ siunitx } { 2021/06/22 },
{ tabularray } { 2021/07/01 },
- { spbmark } { 2021/06/30 }
+ { spbmark } { 2021/12/15 }
}
{ \eb_package_date_check:nn #1 }
@@ -727,7 +726,7 @@
\bool_if:NF \l__eb_ps_used_bool { \pagestyle{fancy} }
\tl_if_empty:NF \l_eb_graphics_path_tl
{ \exp_args:NV \graphicspath \l_eb_graphics_path_tl }
- \cs_if_exist:NF \kaishu { \cs_gset_eq:NN \kaishu \itshape }
+ \providecommand{\kaishu}{\itshape}
}
\ctex_define:nn { style }
@@ -781,10 +780,10 @@
{ s } { \eb_int_to_symbols:n }
}
}
-\cs_new_protected:Npn \eb_fnmate_normal_label_set:nn #1#2
+\cs_new_protected:Npn \eb_fnmate_normal_label_set:Nn #1#2
{
- \tl_set:Nn \l__eb_fnmate_number_type_tl {#1}
- \cs_set:cpx {#2}
+ \tl_set:Nn \l__eb_fnmate_number_type_tl {#2}
+ \cs_set:Npx #1
{
\str_case:VnT \l__eb_fnmate_number_type_tl
{
@@ -802,20 +801,20 @@
{ \exp_not:N \c@footnote }
}
}
-\cs_new_protected:Npn \eb_fnmate_short_label_set:nn #1#2
+\cs_new_protected:Npn \eb_fnmate_short_label_set:Nn #1#2
{
- \tl_set:Nn \l__eb_fnmate_short_tokens_tl {#1}
+ \tl_set:Nn \l__eb_fnmate_short_tokens_tl {#2}
\eb_seq_map_inline:nn
{ A,a,1,I,i,c,s }
{
- \tl_if_in:nnT {#1} {##1}
+ \tl_if_in:nnT {#2} {##1}
{
\tl_replace_once:Nnn \l__eb_fnmate_short_tokens_tl {##1}
{ \eb_int_format_trans:NN ##1 \c@footnote }
\seq_map_break:
}
}
- \cs_set_eq:cN {#2} \l__eb_fnmate_short_tokens_tl
+ \cs_set_eq:NN #1 \l__eb_fnmate_short_tokens_tl
}
\cs_new_protected:Npn \eb_footnote_value_handle:n #1
{
@@ -892,14 +891,14 @@
fnmark-num .choices:nn =
{ plain,pifont,pifont*,pifont-sans,pifont-sans* }
- { \eb_fnmate_normal_label_set:nn {#1} { the@footnote } },
+ { \eb_fnmate_normal_label_set:Nn \the@up@footnote {#1} },
fnmark-num .value_required:n = true,
- fnmark-num/unknown .code:n = \eb_fnmate_short_label_set:nn {#1} { the@footnote },
+ fnmark-num/unknown .code:n = \eb_fnmate_short_label_set:Nn \the@up@footnote {#1},
fntext-num .choices:nn =
{ plain,pifont,pifont*,pifont-sans,pifont-sans* }
- { \eb_fnmate_normal_label_set:nn {#1} { thefootnote } },
+ { \eb_fnmate_normal_label_set:Nn \thefootnote {#1} },
fntext-num .value_required:n = true,
- fntext-num/unknown .code:n = \eb_fnmate_short_label_set:nn {#1} { thefootnote },
+ fntext-num/unknown .code:n = \eb_fnmate_short_label_set:Nn \thefootnote {#1},
fnmate-num .meta:n = { fntext-num = #1,fnmark-num = #1 },
fnmate-num .initial:n = plain,
unknown .code:n = \eb_msg_abandon_option:n { hdrset }
@@ -1016,12 +1015,12 @@
\tl_if_eq:NnT \l__eb_footnote_value_tl { hang } { \par }
\group_end:
}
-\cs_set_eq:NN \eb@makefntext \@makefntext
+\cs_set_eq:NN \eb@makefntext@save \@makefntext
\ctex_at_end_package:nn { footmisc }
{
\notbool{FN@para}
{
- \cs_set_eq:NN \@makefntext \eb@makefntext
+ \cs_set_eq:NN \@makefntext \eb@makefntext@save
\msg_warning:nn { easybase } { footmisc }
}{}
}
@@ -1035,7 +1034,7 @@
\cs_set_protected:Npn \footref #1
{
\group_begin:
- \unrestored@protected@xdef\eb@thefnmark{\ref{#1}}
+ \unrestored@protected@xdef\@the@up@fnmark{\ref{#1}}
\group_end:
\H@@footnotemark
}
@@ -1045,9 +1044,9 @@
{ \@xfootnote }
{
\exp_args:NV \stepcounter \@mpfn
- \eb_current_label:n { @footnote }
+ \eb_current_label:n { @up@footnote }
\protected@xdef\@thefnmark{\thempfn}
- \protected@xdef\eb@thefnmark{\the@footnote}
+ \protected@xdef\@the@up@fnmark{\the@up@footnote}
\@footnotemark
\@footnotetext
}
@@ -1058,12 +1057,12 @@
{ \@xfootnotemark }
{
\stepcounter{footnote}
- \protected@xdef\eb@thefnmark{\the@footnote}
+ \protected@xdef\@the@up@fnmark{\the@up@footnote}
\@footnotemark
}
}
\eb_patch_cmd:wnn { \@footnotetext,\@mpfootnotetext }
- { \footnotesize }
+ { \reset@font }
{
\setspread{\fp_use:N \l__eb_spread_footnote_fp}
\tl_use:N \l__eb_subfont_footnote_tl
@@ -1074,7 +1073,7 @@
{
\group_begin:
\setcounter{footnote}{#1}
- \unrestored@protected@xdef\eb@thefnmark{\the@footnote}
+ \unrestored@protected@xdef\@the@up@fnmark{\the@up@footnote}
\group_end:
\H@@footnotemark
}
@@ -1105,8 +1104,7 @@
\bool_if:NT \l__eb_fncust_format_match_bool
{ \tl_clear:N \l__eb_fnmate_format_tl }
}
- \bool_if:NF \l__eb_fnmate_format_match_bool
- { \spbset{super-format = { }} }
+ \bool_if:NF \l__eb_fnmate_format_match_bool { \spbset{spcmd = { }} }
\tl_use:N \l__eb_subfont_footnote_tl
}
\bool_set_true:N \l__eb_normal_footnote_bool
@@ -1118,7 +1116,7 @@
{
\eb_fnmate_format_initial:
\tl_if_eq:NnTF \@mpfn { footnote }
- { \eb@fnmate@super{\eb@thefnmark} }
+ { \eb@fnmate@super{\@the@up@fnmark} }
{ \eb@fnmate@super{\@thefnmark} }
}
}
@@ -1140,13 +1138,13 @@
}
\tl_clear:N \@thefnmark
-\tl_new:N \eb@thefnmark
+\tl_new:N \@the@up@fnmark
\cs_new:Npn \eb@@makefnmark #1#2
{
\tl_if_empty:oF {#2}
{
\group_begin:
- \unrestored@protected@xdef\eb@thefnmark{#1}
+ \unrestored@protected@xdef\@the@up@fnmark{#1}
\unrestored@protected@xdef\@thefnmark{#2}
\group_end:
}
@@ -1272,7 +1270,7 @@
\ctex_define:nn { tocset }
{
- lolskip .skip_set:N = \eb@toc@lolskip,
+ lolskip .skip_set:N = \eb@toc@lol@skip,
lolskip .initial:n = 10pt,
between .tl_set:N = \l__eb_toc_main_between_hook_tl,
between .initial:n =
@@ -1467,8 +1465,8 @@
{
\eb_appto_cmd:Nn \@chapter
{
- \skip_if_eq:nnF { \eb@toc@lolskip } { \c_zero_skip }
- { \addtocontents{lol}{\protect\addvspace{\skip_use:N \eb@toc@lolskip}} }
+ \skip_if_eq:nnF { \eb@toc@lol@skip } { \c_zero_skip }
+ { \addtocontents{lol}{\protect\addvspace{\skip_use:N \eb@toc@lol@skip}} }
}
}
@@ -1712,9 +1710,8 @@
},
caption-every .initial:n = \sffamily\small,
footnote .tl_set:N = \l__eb_subfont_footnote_tl,
- footnote .initial:n = \rmfamily\footnotesize,
marginpar .tl_set:N = \l__eb_subfont_marginpar_tl,
- marginpar .initial:n = \rmfamily\footnotesize,
+ marginpar .initial:n = \footnotesize,
unknown .code:n = \eb_msg_abandon_option:n { subfont }
}
\cs_new_protected:Npn \addtosubfont #1#2
@@ -1743,7 +1740,7 @@
table .fp_set:N = \l__eb_spread_table_fp,
table .initial:n = 1.354,
math .fp_set:N = \l__eb_spread_math_fp,
- math .initial:n = 1.2,
+ math .initial:n = 1.3,
footnote .fp_set:N = \l__eb_spread_footnote_fp,
footnote .initial:n = 1.2,
caption-table .fp_set:N = \l__eb_spread_cap_table_fp,
@@ -1976,7 +1973,7 @@
\eb_thm_biname_set:nnn {#1} {#2} {#3}
\declaretheorem{#1}[
name = \tl_use:c { l__eb_thm_biname_#1_tl },
- style = eb-theorem,#5
+ style = fancy,#5
]
\eb_if_thmframe_with_tcolorbox:TF
{
@@ -2049,7 +2046,7 @@
\clist_put_right:Nx
\c__eb_thmtools_entry_clist { notebraces = \l__eb_thm_notebraces_tl }
\exp_last_unbraced:NNV
- \declaretheoremstyle[\c__eb_thmtools_entry_clist]{eb-theorem}
+ \declaretheoremstyle[\c__eb_thmtools_entry_clist]{fancy}
\deftheorem{proof}{证明}[numbered = no,qed = \qedsymbol]
\deftheorem{remark}{注}[numbered = no]
\deftheorem{proposition}{性质}
@@ -2138,12 +2135,12 @@
bibstyle .initial:n = numerical,
citestyle .code:n = \tl_set:Nn \l__eb_bib_cite_style_tl {#1},
datafile .clist_set:N = \l__eb_bib_datafile_clist,
- bitoc-title .tl_set:N = \l__eb_bib_en_bitoc_title_tl,
- bitoc-title .initial:n = Reference,
+ bititle .tl_set:N = \l__eb_bib_en_bitoc_title_tl,
+ bititle .initial:n = Bibliography,
unknown .code:n = \eb_msg_abandon_option:n { bibset }
}
-\cs_new_protected:Npn \eb_natbib_bibtex_set:
+\cs_new_protected:Npn \eb_bibtex_natbib_set:
{
\LoadPackage[sort&compress]{natbib}
\str_case:VnTF \l__eb_bib_both_style_tl
@@ -2180,7 +2177,7 @@
}
\cs_new_protected:Npn \eb_put_biblatex:n #1
{ \PassOptionsToPackage{#1}{biblatex} }
-\cs_new_protected:Npn \eb_biblatex_biber_set:
+\cs_new_protected:Npn \eb_biber_biblatex_set:
{
\str_case:VnF \l__eb_bib_both_style_tl
{
@@ -2204,8 +2201,8 @@
\clist_if_empty:NF \l__eb_bib_datafile_clist
{
\bool_if:NTF \l__eb_backend_bibtex_bool
- { \eb_natbib_bibtex_set: }
- { \eb_biblatex_biber_set: }
+ { \eb_bibtex_natbib_set: }
+ { \eb_biber_biblatex_set: }
}
}
@@ -2394,7 +2391,7 @@
\labelformat{chapter}{\CTEXthechapter}
\labelformat{figure}{\figurename~#1}
\labelformat{table}{\tablename~#1}
-\cs_if_free:NT \bibname { \cs_set_eq:NN \bibname \refname }
+\providecommand{\bibname}{\refname}
\ctex_define:n
{
lstlistlistingname .tl_set:N = \listlstlistingname,
@@ -2432,7 +2429,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2021/12/15}{1.41U}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2021/12/15}{1.41V}
{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 8676768a4a..1369c58630 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 f52cbce436..9773c1cd4a 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -20,7 +20,7 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK 使用手册,
- version = v1.41U,
+ version = v1.41V,
date = 2021/12/15,
authors = 瞿毅,
info = 排版简体中文学位论文和书籍,
@@ -356,12 +356,12 @@
\end{commands}
\subsection{上标和下标}
-上标和下标的功能来自 \pkg*{spbmark} 宏包,下面三个命令可以用于输出上标和下标。可以使用键值列表的形式对上下标格式进行局部或全局设置,这些命令两个可选参数的键值列表是等效的。全局设置的详情见\ref{subsubsec:super-sub-script}。
+上标和下标的功能来自 \pkg*{spbmark} 宏包,下面三个命令可以用于输出上标和下标。可以使用键值列表的形式对上下标格式进行局部或全局设置,下面命令中两个可选参数的键值列表是等效的。全局设置的详情见\ref{subsubsec:super-sub-script}。
\begin{commands}
\command{super}[\oarg{键值列表1}\splitoarg{高度,深度}\marg{内容}\oarg{键值列表2}]
输出上标的命令,与简短命令 \cs{sp} 等效。
\command{sub}[\oarg{键值列表1}\splitoarg{高度,深度}\marg{内容}\oarg{键值列表2}]
- 输出下标的命令,与简短命令 \cs{sp} 等效。用法和参数与上标命令 \cs{super} 类似。
+ 输出下标的命令,与简短命令 \cs{sb} 等效。用法和参数与上标命令 \cs{super} 类似。
\command{supersub}[\oarg{键值列表1}\marg{上标内容}\marg{下标内容}\oarg{键值列表2}]
同时输出上标和下标的命令,与简短命令 \cs{spb} 等效。
\end{commands}
@@ -511,7 +511,7 @@
正文行距因子,注意 C\TeX 宏集原有的行距选项 \option*{linespread} 失效。
\keyval-{table}{数值}\Default{1.354}
表格内容行距因子,对传统表格 \env*{tabular} 和 \env*{tabularx} 等环境以及 \pkg*{tabularray} 宏包的 \env{tblr} 环境生效,同时 \env{tblr} 也自带有 \option*{stretch} 选项设置行距系数。
- \keyval-{math}{数值}\Default{1.2}
+ \keyval-{math}{数值}\Default{1.3}
数学环境的行距因子,包含了 \pkg*{amsmath} 和 \pkg*{mathtools} 宏包提供的公式环境。
\keyval-{caption-figure}{数值}\Default{1.2}
图片题注的行距因子。
@@ -542,9 +542,9 @@
代码题注的字体设置,包括字体族、字体系列、字体尺寸和字体形状命令。
\keyval-{caption-every}{字体命令}\Default{\cs*{sffamily}\cs*{small}}
同时设置图片、表格和代码题注的字体命令。
- \keyval-{footnote}{字体命令}\Default{\cs*{rmfamily}\cs*{footnotesize}}
+ \keyval-{footnote}{字体命令}\Default
设置脚注标记与内容的字体,包括字体族、字体系列、字体尺寸和字体形状命令。
- \keyval-{marginpar}{字体命令}\Default{\cs*{rmfamily}\cs*{footnotesize}}
+ \keyval-{marginpar}{字体命令}\Default{\cs*{footnotesize}}
边注的字体设置,包括字体族、字体系列、字体尺寸和字体形状命令。
\end{options}
@@ -600,7 +600,7 @@
\subsection{定理样式}
\label{subsec:theorem of style}
-文档类已预置 12 个定理环境,环境名及对应的定理名见\ref{subsec:theorem},它们均使用预置的定理样式 \code{eb-theorem}。下面 \module*{thmset} 模块选项的用法名称与 \pkg*{thmtools} 宏包基本一致,且仅对预置定理样式生效。如果下面的选项不满足需求,可使用支持完整选项的相关命令创建定理环境。
+文档类已预置 12 个定理环境,环境名及对应的定理名见\ref{subsec:theorem},它们均使用预置的定理样式 \code{fancy}。下面 \module*{thmset} 模块选项的用法名称与 \pkg*{thmtools} 宏包基本一致,且仅对预置定理样式生效。如果下面的选项不满足需求,可使用支持完整选项的相关命令创建定理环境。
\begin{options}
\keybool{thmframe}\Module{thmset}\Default{false}
给定理环境使用彩色盒子。这个特殊选项在本模块中使用 \pkg*{tcolorbox} 宏包来支持,\meta{盒子风格} 默认为 \code{tc-theorem}。注意它应当在定理声明命令前使用。\pkg*{thmtools} 具有类似的选项 \option*{thmbox}。
@@ -655,7 +655,7 @@
\item 中英文模式下定理标题自动切换。针对中文定理标题的特点将 \meta{中文标题} 设计为必选参数,\meta{英文标题} 则默认为首字母大写的 \meta{环境名}。
\item 自动定义交叉引用的格式,引用标签前缀为相应定理名。
\item 定理盒子选项 \option{thmframe} 仍然生效,\meta{盒子风格} 可以使用 \cs{deftcbstyle} 命令创建。
- \item 新建定理环境默认使用的 \meta{定理样式} 为 \code{eb-theorem},而不是 \pkg*{thmtools} 的默认样式。
+ \item 新建定理环境默认使用的 \meta{定理样式} 为 \code{fancy},而不是 \pkg*{thmtools} 的默认样式。
\end{itemize}
下面新建一个与\ref{exam:new theorem env} 相同的定理环境猜想,并使用 \cs{addtotcbstyle} 命令调整 \option{thmframe} 开启时默认的盒子风格。它的第一个参数为 \code{tc-theorem},关于命令的介绍在\ref{subsec:box}。
diff --git a/macros/latex/contrib/gzt/doc/french/gzt-fr.pdf b/macros/latex/contrib/gzt/doc/french/gzt-fr.pdf
index a727c46b26..53f04a5010 100644
--- a/macros/latex/contrib/gzt/doc/french/gzt-fr.pdf
+++ b/macros/latex/contrib/gzt/doc/french/gzt-fr.pdf
Binary files differ
diff --git a/macros/latex/contrib/gzt/source/gzt.dtx b/macros/latex/contrib/gzt/source/gzt.dtx
index 50d03f6642..ce19443f14 100644
--- a/macros/latex/contrib/gzt/source/gzt.dtx
+++ b/macros/latex/contrib/gzt/source/gzt.dtx
@@ -70,10 +70,155 @@ $quote_filenames = 0;
% \end{macrocode}
%
% \begin{macrocode}
+%<*ctanomat>
+% \end{macrocode}
+% This is a description file for ctan-o-mat.
+% It manages uploads of a package to
+% CTAN -- the Comprehensive TeX Archive Network.
+%
+% The syntax is roughly oriented towards (La)TeX.
+% Two form of the macros are used. The simple macros take one argument
+% in braces. Here the argument may not contain embedded macros.
+%
+% The second form uses an environment enclosed in \begin{}/\end{}.
+% In the long text fields logo macros can be used.
+%
+% You should enter your values between the begin and the end of the
+% named type.
+% -------------------------------------------------------------------------
+% This field contains the CTAN id of the package.
+% The value is optional.
+% The value is restricted to 32 characters.
+\pkg{gzt}
+% -------------------------------------------------------------------------
+% This field contains the version of the package.
+% The value is optional.
+% The value is restricted to 32 characters.
+\version{1.1.1 2021-12-16}
+% -------------------------------------------------------------------------
+% This field contains the name of the author(s).
+% The value is optional.
+% The value is restricted to 128 characters.
+\author{Denis Bitouzé}
+% -------------------------------------------------------------------------
+% This field contains the email address of the uploader.
+% The value is an email address.
+% The value is restricted to 255 characters.
+\email{denis.bitouze@univ-littoral.fr}
+% -------------------------------------------------------------------------
+% This field contains the name of the uploader.
+% The value is restricted to 255 characters.
+\uploader{Denis Bitouzé}
+% -------------------------------------------------------------------------
+% This field contains the directory on CTAN.
+% The value is optional.
+% The value is restricted to 255 characters.
+\ctanPath{/macros/latex/contrib/gzt}
+% -------------------------------------------------------------------------
+% This field contains the license.
+% The value is optional.
+% The value is restricted to 2048 characters.
+% Multiple values are allowed.
+\license{lppl1.3c}
+% -------------------------------------------------------------------------
+% This field contains the URL of the home page.
+% The value is optional.
+% The value is a URL.
+% The value is restricted to 255 characters.
+% Multiple values are allowed.
+\home{}
+% -------------------------------------------------------------------------
+% This field contains the URL of the bug tracker.
+% The value is optional.
+% The value is a URL.
+% The value is restricted to 255 characters.
+% Multiple values are allowed.
+\bugtracker{https://github.com/dbitouze/gzt/issues/}
+% -------------------------------------------------------------------------
+% This field contains the support channel.
+% The value is optional.
+% The value is a URL.
+% The value is restricted to 255 characters.
+% Multiple values are allowed.
+\support{}
+% -------------------------------------------------------------------------
+% This field contains the version management.
+% The value is optional.
+% The value is a URL.
+% The value is restricted to 255 characters.
+% Multiple values are allowed.
+\repository{https://github.com/dbitouze/gzt/}
+% -------------------------------------------------------------------------
+% This field contains the developer's channel.
+% The value is optional.
+% The value is a URL.
+% The value is restricted to 255 characters.
+% Multiple values are allowed.
+\development{}
+% -------------------------------------------------------------------------
+% This field contains the update indicator; true for update.
+% The value is optional.
+% The value is restricted to 8 characters.
+\update{true}
+% -------------------------------------------------------------------------
+% This field contains the topics id.
+% The value is optional.
+% The value is restricted to 1024 characters.
+% Multiple values are allowed.
+\topic{}
+% -------------------------------------------------------------------------
+% This field contains the text for the mail announcement.
+% The value is optional.
+% The value is restricted to 8192 characters.
+\begin{announcement}
+\end{announcement}
+% -------------------------------------------------------------------------
+% This field contains the one-liner for the package.
+% The value is optional.
+% The value is restricted to 128 characters.
+\summary{Bundle of classes for “La Gazette de la Société Mathématique de France”}
+% -------------------------------------------------------------------------
+% This field contains the descriptive abstract for the package.
+% The value is optional.
+% The value is restricted to 4096 characters.
+\begin{description}
+This bundle provides two classes and `BibLaTeX` styles for the French journal
+[“La Gazette de la Société Mathématique de
+France”](https://smf.emath.fr/les-publications/la-gazette):
+
+- gzt for the complete issues of the journal, aimed at the Gazette’s team,
+- gztarticle, intended for authors who wish to publish an article in the
+ Gazette. This class’s goals are to
+ - faithfully reproduce the layout of the Gazette, thus enabling the authors to
+ be able to work their document in actual conditions, and
+ - provide a number of tools (commands and environments) to facilitate the
+ drafting of documents, in particular those containing mathematical formulas.
+\end{description}
+% -------------------------------------------------------------------------
+% This field contains the note to the CTAN upload managers.
+% The value is optional.
+% The value is restricted to 2048 characters.
+\begin{note}
+\end{note}
+% -------------------------------------------------------------------------
+% This field contains the archive file.
+% The value is the file name of the archive to be uploaded.
+% It may have a relative or absolute directory.
+\file{../dtx-forge/gzt.zip}
+% \begin{macrocode}
+%</ctanomat>
+% \end{macrocode}
+%
+% \begin{macrocode}
%<*changelog>
% \end{macrocode}
# [Unreleased]
+# [1.1.1] - 2021-12-16
+
+## Fixed
+All bibliographic numeric labels equal 0
+
# [1.1.0] - 2021-11-30
## Added
@@ -180,8 +325,8 @@ Gazette de la Société Mathématique de France”](https://smf.emath.fr/les-pub
\fi
%</internal>
%<*class|class-article|install>
-\def\gztfileversion{1.1.0}
-\def\gztfiledate{2021-11-30}
+\def\gztfileversion{1.1.1}
+\def\gztfiledate{2021-12-16}
%</class|class-article|install>
%<*install>
\input l3docstrip.tex
@@ -236,6 +381,11 @@ Running "make install" installs the files in the local TeX tree.
%</install>
%<install>\endbatchfile
%<*internal>
+\usedir{.}
+\generate{
+ \nopreamble\nopostamble
+ \file{\GZT@classname.pkg}{\from{\jobname.dtx}{ctanomat}}
+}%
\usedir{source/latex/\GZT@classname}
\generate{
\file{\GZT@classname.ins}{\from{\jobname.dtx}{install}}
@@ -315,6 +465,7 @@ Running "make install" installs the files in the local TeX tree.
% \changes{v1.0.0}{2020-03-17}{Eighth CTAN version.}
% \changes{v1.0.1}{2021-02-14}{Nineth CTAN version.}
% \changes{v1.1.0}{2021-11-30}{Tenth CTAN version.}
+% \changes{v1.1.1}{2021-12-16}{Eleventh CTAN version.}
%
% \begin{abstract}
% This bundle provides two classes and \Pkg{biblatex} styles for the French journal
@@ -6551,13 +6702,16 @@ Running "make install" installs the files in the local TeX tree.
% If we don't ask the cover page (only), the inside back cover and back cover
% pages are automatically included at the end of the document, the former
% containing some condensed instructions to authors. But, this cannot be done
-% within ×\AddToHook{enddocument}× and ×\preto\@enddocumenthook× should be used instead
-% (see \url{https://tex.stackexchange.com/q/240318/18401}). (Update (2021-02-14):
-% we now rely on the new ×\AddToHook{env/document/end}×.)
+% within ×\AddToHook{enddocument}× and ×\preto\@enddocumenthook× should be used
+% instead (see \url{https://tex.stackexchange.com/q/240318/18401}). (Update
+% (2021-02-14): we now rely on the new ×\AddToHook{env/document/end}×.) (Update
+% (2021-12-16): we have to be more carefull with the hooks, see
+% \url{https://github.com/plk/biblatex/issues/1197}.)
% \begin{macrocode}
+\DeclareHookRule{enddocument}{citations}{before}{biblatex}
\bool_if:NF {\g_@@_coverpage_bool} {
\bool_if:NF {\g_@@_inside_pages_bool} {
- \AddToHook{enddocument}{
+ \AddToHook{enddocument}[citations]{
\bool_gset_true:N \g_@@_backmatter_bool
\g_@@_display_inside_backcover_tl
\newpage
diff --git a/macros/latex/contrib/mindflow/mindflow.dtx b/macros/latex/contrib/mindflow/mindflow.dtx
index b8f60fe220..8111c872ec 100644
--- a/macros/latex/contrib/mindflow/mindflow.dtx
+++ b/macros/latex/contrib/mindflow/mindflow.dtx
@@ -18,7 +18,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{mindflow}
%<*package>
- [2021/09/15 mindflow environment]
+ [2021/12/16 mindflow environment]
%</package>
%
%<*driver>
@@ -82,7 +82,7 @@
\lstnewenvironment{code*}%
{\setkeys{lst}{columns=fullflexible,keepspaces=true}}{}
\lstnewenvironment{code}%
-{\setkeys{lst}{columns=fullflexible,keepspaces=true,numbers=left,numberstyle=\scriptsize, stepnumber=1, numbersep=5pt,lastline=263}}{}
+{\setkeys{lst}{columns=fullflexible,keepspaces=true,numbers=left,numberstyle=\scriptsize, stepnumber=1, numbersep=5pt,lastline=231}}{}
\EnableCrossrefs
\CodelineIndex
\RecordChanges
@@ -393,7 +393,7 @@
%%================================
%% Initialization
%%================================
-\RequirePackage{lineno}
+\RequirePackage{linenoamsmath}
\RequirePackage{xcolor}
\colorlet{mfSavedColor}{.}
@@ -597,38 +597,6 @@
\newcommand{\mindflowset}[1]{%
\setkeys{mindflow}{#1}%
}
-
-%%================================
-%% lineno patch
-%%================================
-\ifdefined\linenomathpatch\else
- \RequirePackage{amsmath}
- \RequirePackage{etoolbox}
- \newcommand*\linenomathpatch[1]{%
- \cspreto{#1}{\linenomath}%
- \cspreto{#1*}{\linenomath}%
- \csappto{end#1}{\endlinenomath}%
- \csappto{end#1*}{\endlinenomath}%
- }
- \newcommand*\linenomathpatchAMS[1]{%
- \cspreto{#1}{\linenomathAMS}%
- \cspreto{#1*}{\linenomathAMS}%
- \csappto{end#1}{\endlinenomath}%
- \csappto{end#1*}{\endlinenomath}%
- }
- \expandafter\ifx\linenomath\linenomathWithnumbers
- \let\linenomathAMS\linenomathWithnumbers
- \patchcmd\linenomathAMS{\advance\postdisplaypenalty\linenopenalty}{}{}{}
- \else
- \let\linenomathAMS\linenomathNonumbers
- \fi
- \linenomathpatch{equation}
- \linenomathpatchAMS{gather}
- \linenomathpatchAMS{multline}
- \linenomathpatchAMS{align}
- \linenomathpatchAMS{alignat}
- \linenomathpatchAMS{flalign}
-\fi
% \end{code}
%
% \Finale
diff --git a/macros/latex/contrib/mindflow/mindflow.pdf b/macros/latex/contrib/mindflow/mindflow.pdf
index 0da7c9b6c1..5771109955 100644
--- a/macros/latex/contrib/mindflow/mindflow.pdf
+++ b/macros/latex/contrib/mindflow/mindflow.pdf
Binary files differ
diff --git a/macros/latex/contrib/minimalist/minimalist-doc.pdf b/macros/latex/contrib/minimalist/minimalist-doc.pdf
index 6e77ea33b0..4cf1db38d8 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 dc178f15b3..28577a6bcc 100644
--- a/macros/latex/contrib/minimalist/minimalist-doc.tex
+++ b/macros/latex/contrib/minimalist/minimalist-doc.tex
@@ -98,9 +98,9 @@
\title{\minimalist{}, write your articles or books in a simple and clear way}
\author{Jinwen XU}
-\thanks{Corresponding to: \texttt{\minimalist{} 2021/11/09}}
+\thanks{Corresponding to: \texttt{\minimalist{} 2021/12/16}}
\email{\href{mailto:ProjLib@outlook.com}{ProjLib@outlook.com}}
-\date{November 2021, in Paris}
+\date{December 2021, in Paris}
\maketitle
diff --git a/macros/latex/contrib/minimalist/minimalist.sty b/macros/latex/contrib/minimalist/minimalist.sty
index 418ffb55e4..85a64926d6 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/11/09 A simple and clear style for articles and books]
+ [2021/12/16 A simple and clear style for articles and books]
\RequirePackage{kvoptions}
\RequirePackage{etoolbox}
\SetupKeyvalOptions{%
@@ -198,40 +198,10 @@
%% Line numbers
%%================================
\PassOptionsToPackage{pagewise,mathlines}{lineno}
-\RequirePackage{lineno}
+\RequirePackage{linenoamsmath}
\renewcommand\linenumberfont{\ttfamily\color{maintext!7!paper}\footnotesize}
\setlength\linenumbersep{1em}
-\RequirePackage{mathtools}
-
-\ifdefined\linenomathpatch\else
-\newcommand*\linenomathpatch[1]{%
- \cspreto{#1}{\linenomath}%
- \cspreto{#1*}{\linenomath}%
- \csappto{end#1}{\endlinenomath}%
- \csappto{end#1*}{\endlinenomath}%
-}
-\newcommand*\linenomathpatchAMS[1]{%
- \cspreto{#1}{\linenomathAMS}%
- \cspreto{#1*}{\linenomathAMS}%
- \csappto{end#1}{\endlinenomath}%
- \csappto{end#1*}{\endlinenomath}%
-}
-\expandafter\ifx\linenomath\linenomathWithnumbers
- \let\linenomathAMS\linenomathWithnumbers
- \patchcmd\linenomathAMS{\advance\postdisplaypenalty\linenopenalty}{}{}{}
-\else
- \let\linenomathAMS\linenomathNonumbers
-\fi
-
-\linenomathpatch{equation}
-\linenomathpatchAMS{gather}
-\linenomathpatchAMS{multline}
-\linenomathpatchAMS{align}
-\linenomathpatchAMS{alignat}
-\linenomathpatchAMS{flalign}
-\fi
-
\newif\ifLNturnsON
\def\LocallyStopLineNumbers{\LNturnsONfalse%
\ifLineNumbers\LNturnsONtrue\fi\nolinenumbers}
@@ -490,7 +460,7 @@
ref = \arabic{enumi}.\emph{\roman{enumii}}.\emph{\alph*}$)$}
\setlist[description]{font=\normalfont\conditionalbfseries}
\if@minimalist@classical
-\newcommand\desculine{\bgroup\markoverwith{\color{maintext!27!paper}%
+\newcommand\desculine{\colorlet{currentcolor}{.}\bgroup\markoverwith{\color{currentcolor!50!paper}%
\rule[-.45ex]{2pt}{.75pt}}\ULon}
\renewcommand{\descriptionlabel}[1]{%
\hspace{\labelsep}\normalfont\desculine{#1}%
@@ -498,10 +468,10 @@
\fi
\setlist[itemize]{leftmargin=*}
-\gappto{\PJLlang@langconfig@common}{\setlist[itemize,1]{label=\textcolor{maintext!25}{$\bullet$}}}
-\gappto{\PJLlang@langconfig@FR}{\setlist[itemize,1]{label=\textcolor{maintext!50}{---}}}
-\setlist[itemize,2]{label=\textcolor{maintext!27}{--}}
-\setlist[itemize,3]{label=\textcolor{maintext!27}{\texttt{*}}}
+\gappto{\PJLlang@langconfig@common}{\setlist[itemize,1]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{$\bullet$}}}
+\gappto{\PJLlang@langconfig@FR}{\setlist[itemize,1]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!50!paper}{---}}}
+\setlist[itemize,2]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{--}}
+\setlist[itemize,3]{label=\colorlet{currentcolor}{.}\textcolor{currentcolor!27!paper}{\texttt{*}}}
%%================================
%% Blank page
@@ -525,6 +495,7 @@
%%================================
%% Theorems
%%================================
+\RequirePackage{mathtools}
\RequirePackage{amsthm}
\if@minimalist@classical
\def\simpleqedsymbol{%
diff --git a/macros/latex/contrib/minimalist/minimart.cls b/macros/latex/contrib/minimalist/minimart.cls
index f3193c183b..e671b25d65 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/11/09 A simple and clear article style]
+ [2021/12/16 A simple and clear article style]
\def\minimclass@baseclass{article}
\RequirePackage{kvoptions}
\RequirePackage{etoolbox}
@@ -213,10 +213,6 @@
\PassOptionsToPackage{verbose=silent}{microtype}
\RequirePackage{microtype}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\bfseries\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\sffamily\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\ttfamily\scshape}\microtypesetup{reactivate}}}
\PassOptionsToPackage{all}{nowidow}
\RequirePackage{nowidow}
\RequirePackage{embrac}
diff --git a/macros/latex/contrib/minimalist/minimbook.cls b/macros/latex/contrib/minimalist/minimbook.cls
index d67e657c15..384451f8f1 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/11/09 A simple and clear book style]
+ [2021/12/16 A simple and clear book style]
\def\minimclass@baseclass{book}
\RequirePackage{kvoptions}
\RequirePackage{etoolbox}
@@ -213,10 +213,6 @@
\PassOptionsToPackage{verbose=silent}{microtype}
\RequirePackage{microtype}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\bfseries\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\sffamily\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\ttfamily\scshape}\microtypesetup{reactivate}}}
\PassOptionsToPackage{all}{nowidow}
\RequirePackage{nowidow}
\RequirePackage{embrac}
diff --git a/macros/latex/contrib/moderncv/CHANGELOG b/macros/latex/contrib/moderncv/CHANGELOG
index 5509461d13..325e2b7f35 100644
--- a/macros/latex/contrib/moderncv/CHANGELOG
+++ b/macros/latex/contrib/moderncv/CHANGELOG
@@ -1,3 +1,8 @@
+version 2.3.0 (2021-12-16)
+- Remove font loading from class (#87)
+- Add Matrix and Signal icon (#84)
+- Improved symbol loading (#84)
+
version: 2.2.0 (2021-07-28)
- Remove dot in cventry when using moderncvbodyi.
- Remove http baseurl in hyperref.
diff --git a/macros/latex/contrib/moderncv/README.md b/macros/latex/contrib/moderncv/README.md
index d87ba73ad0..53adf48fad 100644
--- a/macros/latex/contrib/moderncv/README.md
+++ b/macros/latex/contrib/moderncv/README.md
@@ -8,6 +8,8 @@ Most commands are defined in such a way that arguments are optional.
Until a decent manual is written, one can always look in the `template.tex` file for an example. It can be compiled to pdf via `latexmk -pdf ./template.tex`.
+If using [`academicons`](https://ctan.org/tex-archive/fonts/academicons) in the template, you need to use a Xe(La)TeX or Lua(La)TeX engine for them to render. Otherwise an alternative will be used automatically.
+
## Licence
moderncv is licensed under the [LPPL-1.3c](https://spdx.org/licenses/LPPL-1.3c.html).
diff --git a/macros/latex/contrib/moderncv/moderncv.cls b/macros/latex/contrib/moderncv/moderncv.cls
index b14fc53e24..2c1f9a0ef0 100644
--- a/macros/latex/contrib/moderncv/moderncv.cls
+++ b/macros/latex/contrib/moderncv/moderncv.cls
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{moderncv}[2021-07-28 v2.2.0 modern curriculum vitae and letter document class]
+\ProvidesClass{moderncv}[2021-12-16 v2.3.0 modern curriculum vitae and letter document class]
%-------------------------------------------------------------------------------
@@ -83,8 +83,8 @@
% color
\RequirePackage[table]{xcolor}
-% font loading
-\RequirePackage{ifxetex,ifluatex}
+% tex compiler checking for symbol loading
+\RequirePackage{iftex}
\newif\ifxetexorluatex
\ifxetex
\xetexorluatextrue
@@ -96,21 +96,6 @@
\fi
\fi
-% for luatex and xetex, do not use inputenc and fontenc
-% see https://tex.stackexchange.com/a/496643
-\ifxetexorluatex
- \RequirePackage{fontspec}
- \defaultfontfeatures{Ligatures=TeX}
- \RequirePackage{unicode-math}
- \setmainfont{Latin Modern Roman}
- \setsansfont{Latin Modern Sans}
- \setmonofont{Latin Modern Mono}
- \setmathfont{Latin Modern Math}
-\else
- \RequirePackage[utf8]{inputenc}
- \RequirePackage[T1]{fontenc}
- \RequirePackage{lmodern}
-\fi
% hyper links (hyperref is loaded at the end of the preamble to pass options required by loaded packages such as CJK)
\newcommand*\pdfpagemode{UseNone}% do not show thumbnails or bookmarks on opening (on supporting browsers); set \pdfpagemode to "UseOutlines" to show bookmarks
diff --git a/macros/latex/contrib/moderncv/moderncvbodyi.sty b/macros/latex/contrib/moderncv/moderncvbodyi.sty
index d45364133a..c83b7da6b7 100644
--- a/macros/latex/contrib/moderncv/moderncvbodyi.sty
+++ b/macros/latex/contrib/moderncv/moderncvbodyi.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyi}[2021-07-28 v2.2.0 modern curriculum vitae and letter body variant: 1]
+\ProvidesPackage{moderncvbodyi}[2021-12-16 v2.3.0 modern curriculum vitae and letter body variant: 1]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvbodyiii.sty b/macros/latex/contrib/moderncv/moderncvbodyiii.sty
index 53a61a716f..4f542b779e 100644
--- a/macros/latex/contrib/moderncv/moderncvbodyiii.sty
+++ b/macros/latex/contrib/moderncv/moderncvbodyiii.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyiii}[2021-07-28 v2.2.0 modern curriculum vitae and letter body variant: 3]
+\ProvidesPackage{moderncvbodyiii}[2021-12-16 v2.3.0 modern curriculum vitae and letter body variant: 3]
% rules type options: "fullrules", "shortrules", "mixedrules" (default) or "norules"
\@initializeif{\if@fullrules}\@fullrulesfalse
diff --git a/macros/latex/contrib/moderncv/moderncvbodyiv.sty b/macros/latex/contrib/moderncv/moderncvbodyiv.sty
index c00896d6a5..b3c03a158d 100644
--- a/macros/latex/contrib/moderncv/moderncvbodyiv.sty
+++ b/macros/latex/contrib/moderncv/moderncvbodyiv.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyiv}[2021-07-28 v2.2.0 modern curriculum vitae and letter body variant: 4]
+\ProvidesPackage{moderncvbodyiv}[2021-12-16 v2.3.0 modern curriculum vitae and letter body variant: 4]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvbodyv.sty b/macros/latex/contrib/moderncv/moderncvbodyv.sty
index ffeaf8f1d9..fd6f760299 100644
--- a/macros/latex/contrib/moderncv/moderncvbodyv.sty
+++ b/macros/latex/contrib/moderncv/moderncvbodyv.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyv}[2021-07-28 v2.2.0 modern curriculum vitae and letter body variant: 5]
+\ProvidesPackage{moderncvbodyv}[2021-12-16 v2.3.0 modern curriculum vitae and letter body variant: 5]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcollection.sty b/macros/latex/contrib/moderncv/moderncvcollection.sty
index aec3beae81..3c5ee25358 100644
--- a/macros/latex/contrib/moderncv/moderncvcollection.sty
+++ b/macros/latex/contrib/moderncv/moderncvcollection.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcollection}[2021-07-28 v2.2.0 moderncv collections]
+\ProvidesPackage{moderncvcollection}[2021-12-16 v2.3.0 moderncv collections]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolorblack.sty b/macros/latex/contrib/moderncv/moderncvcolorblack.sty
index 96bf928896..d594d184af 100644
--- a/macros/latex/contrib/moderncv/moderncvcolorblack.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolorblack.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorblack}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: black]
+\ProvidesPackage{moderncvcolorblack}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: black]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolorblue.sty b/macros/latex/contrib/moderncv/moderncvcolorblue.sty
index 09d1770ffa..35229cff33 100644
--- a/macros/latex/contrib/moderncv/moderncvcolorblue.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolorblue.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorblue}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: blue]
+\ProvidesPackage{moderncvcolorblue}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: blue]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolorburgundy.sty b/macros/latex/contrib/moderncv/moderncvcolorburgundy.sty
index a27690ea1f..454658b1c5 100644
--- a/macros/latex/contrib/moderncv/moderncvcolorburgundy.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolorburgundy.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorburgundy}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: burgundy]
+\ProvidesPackage{moderncvcolorburgundy}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: burgundy]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolorgreen.sty b/macros/latex/contrib/moderncv/moderncvcolorgreen.sty
index 0f4de1fabc..36bdf64a09 100644
--- a/macros/latex/contrib/moderncv/moderncvcolorgreen.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolorgreen.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorgreen}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: green]
+\ProvidesPackage{moderncvcolorgreen}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: green]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolorgrey.sty b/macros/latex/contrib/moderncv/moderncvcolorgrey.sty
index 46e9bed487..0a9a80528c 100644
--- a/macros/latex/contrib/moderncv/moderncvcolorgrey.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolorgrey.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorgrey}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: grey]
+\ProvidesPackage{moderncvcolorgrey}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: grey]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolororange.sty b/macros/latex/contrib/moderncv/moderncvcolororange.sty
index 6a63e65eb8..5d4cae58cb 100644
--- a/macros/latex/contrib/moderncv/moderncvcolororange.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolororange.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolororange}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: orange]
+\ProvidesPackage{moderncvcolororange}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: orange]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolorpurple.sty b/macros/latex/contrib/moderncv/moderncvcolorpurple.sty
index c1c44e195a..f67530ed08 100644
--- a/macros/latex/contrib/moderncv/moderncvcolorpurple.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolorpurple.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorpurple}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: purple]
+\ProvidesPackage{moderncvcolorpurple}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: purple]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcolorred.sty b/macros/latex/contrib/moderncv/moderncvcolorred.sty
index e9a689bb1c..6a6445e66e 100644
--- a/macros/latex/contrib/moderncv/moderncvcolorred.sty
+++ b/macros/latex/contrib/moderncv/moderncvcolorred.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorred}[2021-07-28 v2.2.0 modern curriculum vitae and letter color scheme: red]
+\ProvidesPackage{moderncvcolorred}[2021-12-16 v2.3.0 modern curriculum vitae and letter color scheme: red]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvcompatibility.sty b/macros/latex/contrib/moderncv/moderncvcompatibility.sty
index e2a29aaadc..f9155f6245 100644
--- a/macros/latex/contrib/moderncv/moderncvcompatibility.sty
+++ b/macros/latex/contrib/moderncv/moderncvcompatibility.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcompatibility}[2021-07-28 v2.2.0 modern curriculum vitae and letter compatibility patches]
+\ProvidesPackage{moderncvcompatibility}[2021-12-16 v2.3.0 modern curriculum vitae and letter compatibility patches]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvdebugtools.sty b/macros/latex/contrib/moderncv/moderncvdebugtools.sty
index a19a1928ac..577406130e 100644
--- a/macros/latex/contrib/moderncv/moderncvdebugtools.sty
+++ b/macros/latex/contrib/moderncv/moderncvdebugtools.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvdebugtools}[2021-07-28 v2.2.0 modern curriculum vitae and letter debug tools]
+\ProvidesPackage{moderncvdebugtools}[2021-12-16 v2.3.0 modern curriculum vitae and letter debug tools]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvfooti.sty b/macros/latex/contrib/moderncv/moderncvfooti.sty
index b2e8657d99..45ca74e66b 100644
--- a/macros/latex/contrib/moderncv/moderncvfooti.sty
+++ b/macros/latex/contrib/moderncv/moderncvfooti.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvfooti}[2021-07-28 v2.2.0 modern curriculum vitae and letter footer variant: 1]
+\ProvidesPackage{moderncvfooti}[2021-12-16 v2.3.0 modern curriculum vitae and letter footer variant: 1]
%-------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/moderncv/moderncvheadi.sty b/macros/latex/contrib/moderncv/moderncvheadi.sty
index c7e4af54cb..86a0e54c67 100644
--- a/macros/latex/contrib/moderncv/moderncvheadi.sty
+++ b/macros/latex/contrib/moderncv/moderncvheadi.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadi}[2021-07-28 v2.2.0 modern curriculum vitae and letter header variant: 1]
+\ProvidesPackage{moderncvheadi}[2021-12-16 v2.3.0 modern curriculum vitae and letter header variant: 1]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
diff --git a/macros/latex/contrib/moderncv/moderncvheadii.sty b/macros/latex/contrib/moderncv/moderncvheadii.sty
index dccd2fc97b..1444b39c1f 100644
--- a/macros/latex/contrib/moderncv/moderncvheadii.sty
+++ b/macros/latex/contrib/moderncv/moderncvheadii.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadii}[2021-07-28 v2.2.0 modern curriculum vitae and letter header variant: 2]
+\ProvidesPackage{moderncvheadii}[2021-12-16 v2.3.0 modern curriculum vitae and letter header variant: 2]
% details options: "details" or "nodetails" (default)
\@initializeif{\if@details}\@detailsfalse
diff --git a/macros/latex/contrib/moderncv/moderncvheadiii.sty b/macros/latex/contrib/moderncv/moderncvheadiii.sty
index c13f1bfce4..0a022de802 100644
--- a/macros/latex/contrib/moderncv/moderncvheadiii.sty
+++ b/macros/latex/contrib/moderncv/moderncvheadiii.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadiii}[2021-07-28 v2.2.0 modern curriculum vitae and letter header variant: 3]
+\ProvidesPackage{moderncvheadiii}[2021-12-16 v2.3.0 modern curriculum vitae and letter header variant: 3]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
diff --git a/macros/latex/contrib/moderncv/moderncvheadiv.sty b/macros/latex/contrib/moderncv/moderncvheadiv.sty
index d8cf4f5b26..f5a534e25a 100644
--- a/macros/latex/contrib/moderncv/moderncvheadiv.sty
+++ b/macros/latex/contrib/moderncv/moderncvheadiv.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadiv}[2021-07-28 v2.2.0 modern curriculum vitae and letter header variant: 4]
+\ProvidesPackage{moderncvheadiv}[2021-12-16 v2.3.0 modern curriculum vitae and letter header variant: 4]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
diff --git a/macros/latex/contrib/moderncv/moderncvheadv.sty b/macros/latex/contrib/moderncv/moderncvheadv.sty
index 1bed0962c9..1a5d9391db 100644
--- a/macros/latex/contrib/moderncv/moderncvheadv.sty
+++ b/macros/latex/contrib/moderncv/moderncvheadv.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadv}[2021-07-28 v2.2.0 modern curriculum vitae and letter header variant: 5]
+\ProvidesPackage{moderncvheadv}[2021-12-16 v2.3.0 modern curriculum vitae and letter header variant: 5]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
diff --git a/macros/latex/contrib/moderncv/moderncvheadvi.sty b/macros/latex/contrib/moderncv/moderncvheadvi.sty
index 0734552487..1169e21dc5 100644
--- a/macros/latex/contrib/moderncv/moderncvheadvi.sty
+++ b/macros/latex/contrib/moderncv/moderncvheadvi.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadvi}[2021-07-28 v2.2.0 modern curriculum vitae and letter header: 6]
+\ProvidesPackage{moderncvheadvi}[2021-12-16 v2.3.0 modern curriculum vitae and letter header: 6]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
diff --git a/macros/latex/contrib/moderncv/moderncviconsacademic.sty b/macros/latex/contrib/moderncv/moderncviconsacademic.sty
new file mode 100644
index 0000000000..280eb9b70d
--- /dev/null
+++ b/macros/latex/contrib/moderncv/moderncviconsacademic.sty
@@ -0,0 +1,54 @@
+%% start of file `moderncviconsacademic.sty'.
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2021 moderncv maintainers (github.com/moderncv).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncviconsacademic}[2021-12-16 v2.3.0 modern curriculum vitae icons: academicons]
+
+
+%-------------------------------------------------------------------------------
+% required packages
+%-------------------------------------------------------------------------------
+% Package for academic icons
+\RequirePackage{academicons}
+
+
+%-------------------------------------------------------------------------------
+% all symbols described in moderncv.cls
+%-------------------------------------------------------------------------------
+%\newcommand*{\listitemsymbol} {\labelitemi~}
+%\newcommand*{\addresssymbol} {}
+%\newcommand*{\bornsymbol} {}
+%\newcommand*{\mobilephonesymbol} {}
+%\newcommand*{\fixedphonesymbol} {}
+%\newcommand*{\faxphonesymbol} {}
+%\newcommand*{\emailsymbol} {}
+%\newcommand*{\homepagesymbol} {}
+%\newcommand*{\linkedinsocialsymbol} {}
+%\newcommand*{\xingsocialsymbol} {}
+%\newcommand*{\twittersocialsymbol} {}
+%\newcommand*{\githubsocialsymbol} {}
+%\newcommand*{\gitlabsocialsymbol} {}
+%\newcommand*{\stackoverflowsocialsymbol}{}
+%\newcommand*{\bitbucketsocialsymbol} {}
+%\newcommand*{\skypesocialsymbol} {}
+\renewcommand*{\orcidsocialsymbol} {{\small\aiOrcid}~}
+\renewcommand*{\researchgatesocialsymbol} {{\small\aiResearchGateSquare}~} % alternative: \aiResearchGate
+\renewcommand*{\researcheridsocialsymbol} {{\small\aiResearcherIDSquare}~} % alternative: \aiResearcherID
+\renewcommand*{\googlescholarsocialsymbol}{{\small\aiGoogleScholar}~}
+%\newcommand*{\telegramsocialsymbol} {}
+%\newcommand*{\whatsappsocialsymbol} {}
+%\newcommand*{\matrixsocialsymbol} {}
+%\newcommand*{\signalsocialsymbol} {}
+
+
+\endinput
+
+%% end of file `moderncviconsacademic.sty'.
diff --git a/macros/latex/contrib/moderncv/moderncviconsawesome.sty b/macros/latex/contrib/moderncv/moderncviconsawesome.sty
index 4c833d32d6..bef20b362c 100644
--- a/macros/latex/contrib/moderncv/moderncviconsawesome.sty
+++ b/macros/latex/contrib/moderncv/moderncviconsawesome.sty
@@ -10,50 +10,46 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconsawesome}[2021-07-28 v2.2.0 modern curriculum vitae and letter icons: awesome]
+\ProvidesPackage{moderncviconsawesome}[2021-12-16 v2.3.0 modern curriculum vitae icons: awesome]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
% Font Awesome font
\RequirePackage{fontawesome5}
-% Package for academic icons
-\RequirePackage{academicons}
-
%-------------------------------------------------------------------------------
-% symbols definition
+% all symbols described in moderncv.cls
%-------------------------------------------------------------------------------
-\renewcommand*{\labelitemi} {\strut\textcolor{color1}{\tiny\faCircle}}
+\renewcommand*{\labelitemi} {\strut\textcolor{color1}{\tiny\faCircle[regular]}} % alternative: \faCircle (solid style)
%\renewcommand*{\labelitemii} {\strut\textcolor{color1}{\large\bfseries-}} % no change from default in moderncv.cls
%\renewcommand*{\labelitemiii} {\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% no change from default in moderncv.cls
%\renewcommand*{\labelitemiv} {\labelitemiii} % no change from default in moderncv.cls
-\renewcommand*{\addresssymbol} {}
-\renewcommand*{\mobilephonesymbol} {{\small\faMobile}~}
-\renewcommand*{\fixedphonesymbol} {{\small\faPhone}~}
+%\renewcommand*{\addresssymbol} {}
+\renewcommand*{\mobilephonesymbol} {{\small\faMobile*}~} % alternative: \faMobile (solid style)
+\renewcommand*{\fixedphonesymbol} {{\small\faPhone*}~} % alternative: \faPhone (reversed)
\renewcommand*{\faxphonesymbol} {{\small\faFax}~} % alternative: \faPrint
-\renewcommand*{\emailsymbol} {{\small\faEnvelope}~} % alternative: \faInbox
-\renewcommand*{\homepagesymbol} {{\small\faGlobe}~} % alternative: \faHome
-\renewcommand*{\linkedinsocialsymbol} {{\small\faLinkedin}~} % alternative: \faLinkedinSquare
+\renewcommand*{\emailsymbol} {{\small\faEnvelope[regular]}~} % alternative: \faInbox, \faEnvelope (solid style)
+\renewcommand*{\homepagesymbol} {{\small\faGlobeAmericas}~} % alternative: \faHome, \faGlobe, \faGlobeEurope, \faGlobeAfrica, \faGlobeAsia
+\renewcommand*{\linkedinsocialsymbol} {{\small\faLinkedinIn}~} % alternative: \faLinkedin
\renewcommand*{\xingsocialsymbol} {{\small\faXing}~} % alternative: \faXingSquare
\renewcommand*{\twittersocialsymbol} {{\small\faTwitter}~} % alternative: \faTwitterSquare
-\renewcommand*{\githubsocialsymbol} {{\small\faGithub}~} % alternative: \faGithubSquare, \faGithubSquare
+\renewcommand*{\githubsocialsymbol} {{\small\faGithub}~} % alternative: \faGithubSquare, \faGithub*
\renewcommand*{\gitlabsocialsymbol} {{\small\faGitlab}~}
\renewcommand*{\stackoverflowsocialsymbol}{{\small\faStackOverflow}~}
\renewcommand*{\bitbucketsocialsymbol} {{\small\faBitbucket}~}
\renewcommand*{\skypesocialsymbol} {{\small\faSkype}~}
-\renewcommand*{\orcidsocialsymbol} {{\small\aiOrcid}~}
-\renewcommand*{\researchgatesocialsymbol} {{\small\aiResearchGate}~}
-\renewcommand*{\researcheridsocialsymbol} {{\small\aiResearcherID}~} % alternative: \aiResearcherIDSquare
-\renewcommand*{\telegramsocialsymbol} {{\small\faTelegram}~}
-\renewcommand*{\googlescholarsocialsymbol}{{\small\aiGoogleScholar}~}
+\renewcommand*{\orcidsocialsymbol} {{\small\faOrcid}~}
+\renewcommand*{\researchgatesocialsymbol} {{\small\faResearchgate}~}
+%\renewcommand*{\researcheridsocialsymbol} {}
+%\renewcommand*{\googlescholarsocialsymbol}{}
\renewcommand*{\telegramsocialsymbol} {{\small\faTelegram}~}
\renewcommand*{\whatsappsocialsymbol} {{\small\faWhatsapp}~}
-\renewcommand*{\signalsocialsymbol} {}
-\renewcommand*{\matrixsocialsymbol} {}
-\renewcommand*{\bornsymbol} {{\small\faAsterisk}~}
+%\renewcommand*{\signalsocialsymbol} {}
+%\renewcommand*{\matrixsocialsymbol} {}
+\renewcommand*{\bornsymbol} {{\small\faAsterisk}~} % alternative: \faBabyCarriage
\endinput
diff --git a/macros/latex/contrib/moderncv/moderncviconsletters.sty b/macros/latex/contrib/moderncv/moderncviconsletters.sty
index 20c74f655c..edce723d15 100644
--- a/macros/latex/contrib/moderncv/moderncviconsletters.sty
+++ b/macros/latex/contrib/moderncv/moderncviconsletters.sty
@@ -10,25 +10,13 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconsletters}[2021-07-28 v2.2.0 modern curriculum vitae and letter icons: letters]
-
-
-%-------------------------------------------------------------------------------
-% required packages
-%-------------------------------------------------------------------------------
-% MarVoSym font
-%\RequirePackage{marvosym}
-\newcommand*{\marvosymbol}[1]{}
-%\ifxetexorluatex
-% \renewcommand*{\marvosymbol}[1]{{\fontspec{MarVoSym}\char#1}}
-%\else
- \renewcommand*{\marvosymbol}[1]{{\fontfamily{mvs}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char#1}}
-%\fi
-
+\ProvidesPackage{moderncviconsletters}[2021-12-16 v2.3.0 modern curriculum vitae icons: letter]
%-------------------------------------------------------------------------------
% symbols definition
%-------------------------------------------------------------------------------
+\newcommand*{\marvosymbol}[1]{{\fontfamily{mvs}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char#1}}
+
\renewcommand*{\labelitemi} {\strut\textcolor{color1}{\marvosymbol{123}}} % equivalent to \Neutral from marvosym package; alternative: \fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102}
%\renewcommand*{\labelitemii} {\strut\textcolor{color1}{\large\bfseries-}} % no change from default in moderncv.cls
%\renewcommand*{\labelitemiii} {\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% no change from default in moderncv.cls
diff --git a/macros/latex/contrib/moderncv/moderncviconsmarvosym.sty b/macros/latex/contrib/moderncv/moderncviconsmarvosym.sty
index 34962fab46..ea2dddfa70 100644
--- a/macros/latex/contrib/moderncv/moderncviconsmarvosym.sty
+++ b/macros/latex/contrib/moderncv/moderncviconsmarvosym.sty
@@ -10,265 +10,20 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconsmarvosym}[2021-07-28 v2.2.0 modern curriculum vitae and letter icons: marvosym]
-
+\ProvidesPackage{moderncviconsmarvosym}[2021-12-16 v2.3.0 modern curriculum vitae icons: marvosym]
%-------------------------------------------------------------------------------
-% required packages
+% all symbols described in moderncv.cls
%-------------------------------------------------------------------------------
-% MarVoSym font
-%\RequirePackage{marvosym}
-\newcommand*{\marvosymbol}[1]{}
-%\ifxetexorluatex
-% \renewcommand*{\marvosymbol}[1]{{\fontspec{MarVoSym}\char#1}}
-%\else
- \renewcommand*{\marvosymbol}[1]{{\fontfamily{mvs}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char#1}}
-%\fi
-
-% tikz drawings
-\RequirePackage{tikz}
-
+\newcommand*{\marvosymbol}[1]{{\fontfamily{mvs}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char#1}}
-%-------------------------------------------------------------------------------
-% symbols definition
-%-------------------------------------------------------------------------------
\renewcommand*{\labelitemi} {\strut\textcolor{color1}{\marvosymbol{123}}} % equivalent to \Neutral from marvosym package; alternative: \fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102}
-%\renewcommand*{\labelitemii} {\strut\textcolor{color1}{\large\bfseries-}} % no change from default in moderncv.cls
-%\renewcommand*{\labelitemiii} {\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% no change from default in moderncv.cls
-%\renewcommand*{\labelitemiv} {\labelitemiii} % no change from default in moderncv.cls
-\renewcommand*{\addresssymbol} {}
\renewcommand*{\mobilephonesymbol} {\marvosymbol{72}~}
\renewcommand*{\fixedphonesymbol} {\marvosymbol{84}~}
\renewcommand*{\faxphonesymbol} {\marvosymbol{117}~}
\renewcommand*{\emailsymbol} {\marvosymbol{66}~}
\renewcommand*{\homepagesymbol} {{\Large\marvosymbol{205}}~}
-\renewcommand*{\linkedinsocialsymbol}{%
- \protect\raisebox{-0.165em}{%
- \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt]
- \protect\begin{scope}[cm={{0.60,0.0,0.0,0.60,(346.39,123.07)}}]
- \protect\path[fill=color2]
- (381,202) -- (434,202) .. controls (439,202) and (442,205) ..
- (442,210) -- (442,264) .. controls (442,268) and (439,272) ..
- (434,272) -- (381,272) .. controls (376,272) and (372,268) ..
- (372,264) -- (372,210) .. controls (372,205) and (376,202) ..
- (381,202) -- cycle;
- \protect\begin{scope}[xscale=0.98, yscale=1.02, fill=white]
- \protect\path[fill=white]
- (403,253) -- (403,224) -- (394,224) -- (394,253) --
- cycle(398,211) .. controls (397,211) and (395,212) ..
- (395,213) .. controls (394,213) and (393,215) ..
- (393,216) .. controls (393,217) and (394,218) ..
- (395,219) .. controls (395,220) and (397,220) ..
- (398,220) .. controls (400,220) and (401,220) ..
- (402,219) .. controls (402,218) and (403,217) ..
- (403,216) .. controls (403,215) and (402,213) ..
- (402,213) .. controls (401,212) and (400,211) ..
- (398,211) -- cycle;
- \protect\path[fill=white]
- (410,253) -- (419,253) --
- (419,236) .. controls (419,236) and (419,235) ..
- (419,235) .. controls (419,235) and (419,234) ..
- (419,234) .. controls (419,233) and (420,232) ..
- (421,232) .. controls (422,231) and (423,231) ..
- (424,231) .. controls (425,231) and (427,231) ..
- (427,232) .. controls (428,234) and (428,235) ..
- (428,237) -- (428,253) -- (437,253) --
- (437,236) .. controls (437,232) and (436,228) ..
- (434,226) .. controls (433,224) and (430,223) ..
- (427,223) .. controls (425,223) and (423,224) ..
- (421,225) .. controls (420,226) and (419,227) ..
- (418,228) -- (418,228) -- (417,224) --
- (410,224) .. controls (410,225) and (410,227) ..
- (410,228) .. controls (410,230) and (410,231) ..
- (410,233) -- cycle;
- \protect\end{scope}%
- \protect\end{scope}%
- \protect\end{tikzpicture}}%
- ~}
-\renewcommand*{\xingsocialsymbol}{}
-\renewcommand*{\twittersocialsymbol} {%
- \protect\raisebox{0em}{%
- \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.005, yscale=-0.005, inner sep=0pt, outer sep=0pt]
- \protect\path[fill=color2]
- (2000, 192) .. controls (1926, 225) and (1847, 247) ..
- (1764, 257) .. controls (1849, 206) and (1914, 126) ..
- (1945, 30) .. controls (1865, 77) and (1778, 111) ..
- (1684, 130) .. controls (1609, 50) and (1503, 0) ..
- (1385, 0) .. controls (1158, 0) and ( 974, 184) ..
- ( 974, 410) .. controls ( 974, 442) and ( 978, 474) ..
- ( 985, 504) .. controls ( 644, 487) and ( 342, 323) ..
- ( 139, 75) .. controls ( 104, 136) and ( 84, 206) ..
- ( 84, 281) .. controls ( 84, 424) and ( 156, 549) ..
- ( 266, 623) .. controls ( 199, 621) and ( 136, 602) ..
- ( 80, 572) .. controls ( 80, 573) and ( 80, 575) ..
- ( 80, 577) .. controls ( 80, 776) and ( 222, 941) ..
- ( 409, 979) .. controls ( 375, 988) and ( 339, 993) ..
- ( 301, 993) .. controls ( 275, 993) and ( 249, 991) ..
- ( 224, 986) .. controls ( 276,1149) and ( 428,1268) ..
- ( 607,1271) .. controls ( 467,1381) and ( 290,1447) ..
- ( 98,1447) .. controls ( 65,1447) and ( 32,1445) ..
- ( 0,1441) .. controls ( 182,1557) and ( 397,1625) ..
- ( 629,1625) .. controls (1384,1625) and (1796,1000) ..
- (1796, 458) .. controls (1796, 440) and (1796, 422) ..
- (1795, 405) .. controls (1875, 347) and (1945, 275) ..
- (2000, 192);
- \protect\end{tikzpicture}}%
- ~}
-\renewcommand*{\githubsocialsymbol} {%
- \protect\raisebox{-0.15em}{%
- \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt]
- \protect\begin{scope}[shift={(507,387)}]
- \protect\path[fill=color2]
- (117, 60) .. controls (117, 71) and (108, 81) ..
- ( 96, 81) .. controls ( 85, 81) and ( 75, 71) ..
- ( 75, 60) .. controls ( 75, 48) and ( 85, 39) ..
- ( 96, 39) .. controls (108, 39) and (117, 48) ..
- (117, 60) -- cycle;
- \protect\path[cm={{0.88,0.0,0.0,0.88,(11.10,6.89)}}, fill=white]
- (117, 60) .. controls (117, 71) and (108, 81) ..
- ( 96, 81) .. controls ( 85, 81) and ( 75, 71) ..
- ( 75, 60) .. controls ( 75, 48) and ( 85, 39) ..
- ( 96, 39) .. controls (108, 39) and (117, 48) ..
- (117, 60) -- cycle;
- \protect\path[fill=color2, nonzero rule]
- (103, 45) .. controls (103, 45) and (101, 46) ..
- (101, 47) -- (100, 47) --
- ( 99, 47) .. controls ( 99, 47) and ( 98, 47) ..
- ( 97, 47) .. controls ( 94, 47) and ( 93, 47) ..
- ( 92, 47) -- ( 92, 47) --
- ( 91, 47) .. controls ( 90, 46) and ( 88, 45) ..
- ( 88, 45) .. controls ( 88, 45) and ( 88, 45) ..
- ( 87, 45) .. controls ( 87, 45) and ( 87, 45) ..
- ( 87, 45) .. controls ( 86, 46) and ( 86, 48) ..
- ( 86, 49) -- ( 87, 50) --
- ( 86, 51) .. controls ( 85, 51) and ( 85, 52) ..
- ( 85, 53) .. controls ( 85, 54) and ( 85, 57) ..
- ( 85, 58) .. controls ( 85, 58) and ( 85, 58) ..
- ( 82, 59) .. controls ( 79, 59) and ( 77, 59) ..
- ( 77, 59) .. controls ( 77, 59) and ( 77, 59) ..
- ( 78, 59) .. controls ( 80, 59) and ( 83, 59) ..
- ( 85, 59) .. controls ( 85, 59) and ( 85, 59) ..
- ( 85, 59) .. controls ( 86, 59) and ( 86, 59) ..
- ( 86, 59) .. controls ( 86, 59) and ( 85, 59) ..
- ( 84, 59) .. controls ( 82, 60) and ( 80, 60) ..
- ( 79, 60) .. controls ( 78, 61) and ( 77, 61) ..
- ( 77, 61) .. controls ( 77, 61) and ( 78, 61) ..
- ( 79, 61) .. controls ( 81, 60) and ( 83, 60) ..
- ( 85, 60) .. controls ( 86, 60) and ( 86, 60) ..
- ( 86, 60) .. controls ( 86, 60) and ( 87, 61) ..
- ( 88, 62) .. controls ( 89, 63) and ( 90, 63) ..
- ( 92, 63) .. controls ( 92, 63) and ( 93, 64) ..
- ( 93, 64) .. controls ( 93, 64) and ( 93, 64) ..
- ( 93, 64) .. controls ( 92, 64) and ( 92, 65) ..
- ( 92, 65) .. controls ( 92, 66) and ( 90, 66) ..
- ( 89, 66) .. controls ( 88, 66) and ( 88, 66) ..
- ( 87, 65) .. controls ( 87, 64) and ( 86, 63) ..
- ( 86, 63) .. controls ( 85, 63) and ( 84, 63) ..
- ( 84, 63) .. controls ( 84, 63) and ( 84, 63) ..
- ( 84, 63) .. controls ( 85, 64) and ( 86, 65) ..
- ( 86, 66) .. controls ( 87, 67) and ( 87, 68) ..
- ( 88, 68) .. controls ( 89, 68) and ( 89, 68) ..
- ( 90, 68) -- ( 92, 68) -- ( 92, 70) -- ( 92, 72) --
- ( 91, 72) .. controls ( 91, 72) and ( 91, 73) ..
- ( 91, 73) .. controls ( 90, 73) and ( 90, 73) ..
- ( 91, 73) .. controls ( 92, 73) and ( 92, 73) ..
- ( 92, 73) .. controls ( 93, 73) and ( 93, 73) ..
- ( 93, 70) .. controls ( 93, 67) and ( 93, 67) ..
- ( 94, 66) -- ( 94, 66) --
- ( 94, 69) .. controls ( 94, 71) and ( 94, 73) ..
- ( 94, 73) .. controls ( 94, 73) and ( 94, 73) ..
- ( 93, 74) .. controls ( 93, 74) and ( 93, 74) ..
- ( 93, 74) .. controls ( 93, 74) and ( 93, 74) ..
- ( 94, 74) .. controls ( 94, 74) and ( 95, 74) ..
- ( 96, 73) .. controls ( 96, 72) and ( 96, 71) ..
- ( 96, 68) -- ( 96, 66) -- ( 96, 66) --
- ( 96, 69) .. controls ( 96, 72) and ( 96, 72) ..
- ( 97, 73) .. controls ( 97, 74) and ( 99, 74) ..
- ( 99, 74) .. controls ( 99, 74) and ( 99, 74) ..
- ( 99, 73) .. controls ( 99, 73) and ( 98, 73) ..
- ( 98, 72) .. controls ( 98, 72) and ( 98, 66) ..
- ( 98, 66) .. controls ( 98, 66) and ( 99, 66) ..
- ( 99, 66) .. controls ( 99, 67) and ( 99, 67) ..
- ( 99, 69) .. controls ( 99, 71) and ( 99, 72) ..
- ( 99, 72) .. controls ( 99, 73) and (100, 73) ..
- (100, 73) .. controls (101, 73) and (101, 73) ..
- (101, 73) .. controls (102, 73) and (102, 73) ..
- (102, 73) .. controls (101, 72) and (101, 72) ..
- (101, 69) .. controls (101, 66) and (101, 65) ..
- (100, 65) .. controls (100, 64) and (100, 64) ..
- (100, 64) -- ( 99, 64) --
- (100, 63) .. controls (101, 63) and (102, 63) ..
- (103, 63) .. controls (104, 62) and (106, 61) ..
- (106, 60) -- (106, 60) --
- (107, 60) .. controls (109, 60) and (113, 60) ..
- (115, 61) .. controls (115, 61) and (115, 61) ..
- (115, 61) .. controls (115, 60) and (111, 60) ..
- (108, 59) .. controls (107, 59) and (107, 59) ..
- (107, 59) .. controls (107, 59) and (107, 59) ..
- (107, 59) -- (107, 59) --
- (108, 59) .. controls (110, 59) and (112, 59) ..
- (114, 59) .. controls (115, 59) and (115, 59) ..
- (115, 59) .. controls (115, 59) and (112, 59) ..
- (109, 59) .. controls (108, 58) and (107, 58) ..
- (107, 58) .. controls (107, 58) and (107, 58) ..
- (107, 58) .. controls (107, 57) and (107, 56) ..
- (107, 55) .. controls (107, 53) and (107, 53) ..
- (107, 53) .. controls (107, 52) and (106, 51) ..
- (106, 50) -- (105, 50) --
- (105, 48) .. controls (105, 47) and (105, 46) ..
- (105, 46) -- (105, 45) --
- (104, 45) .. controls (104, 45) and (104, 45) ..
- (103, 45) -- cycle;
- \protect\end{scope}%
- \protect\end{tikzpicture}}%
- ~}
-\renewcommand*{\gitlabsocialsymbol}{}
-\renewcommand*{\stackoverflowsocialsymbol}{}
-\renewcommand*{\googlescholarsocialsymbol}{}
-\renewcommand*{\telegramsocialsymbol}{}
-\renewcommand*{\whatsappsocialsymbol}{}
-\renewcommand*{\signalsocialsymbol}{}
-\renewcommand*{\matrixsocialsymbol}{}
-\renewcommand*{\orcidsocialsymbol}{}
-\renewcommand*{\researchgatesocialsymbol}{}
-\renewcommand*{\researcheridsocialsymbol}{}
-\renewcommand*{\bitbucketsocialsymbol}{}
-\renewcommand*{\skypesocialsymbol} {%
- \protect\raisebox{-0.15em}{%
- \protect\begin{tikzpicture}[y=0.08em, x=0.08em, xscale=0.020, yscale=-0.020, inner sep=0pt, outer sep=0pt]
- \protect\begin{scope}[shift={(507,387)}]
- \protect\path[fill=color2,even odd rule]
- (487.6550,288.9690) .. controls (489.0610,278.5690) and (489.8700,267.9960) ..
- (489.8700,257.2330) .. controls (489.8700,128.0770) and (384.5990,23.3610) ..
- (254.7670,23.3610) .. controls (241.8630,23.3610) and (229.2120,24.4210) ..
- (216.9010,26.4410) .. controls (194.8280,12.0570) and (168.5590,3.6740) ..
- (140.2880,3.6740) .. controls (62.7660,3.6740) and (0.0000,66.4820) ..
- (0.0000,143.9800) .. controls (0.0000,172.1780) and (8.2990,198.3740) ..
- (22.5900,220.3690) .. controls (20.6650,232.3860) and (19.6810,244.6920) ..
- (19.6810,257.2290) .. controls (19.6810,386.4050) and (124.8980,491.1100) ..
- (254.7660,491.1100) .. controls (269.4230,491.1100) and (283.6930,489.6840) ..
- (297.5620,487.1780) .. controls (319.1120,500.5470) and (344.4960,508.3260) ..
- (371.7080,508.3260) .. controls (449.2100,508.3260) and (512.0010,445.5020) ..
- (512.0010,368.0120) .. controls (511.9980,338.7190) and (503.0410,311.4840) ..
- (487.6550,288.9690) -- cycle(276.7400,429.5960) .. controls (202.0340,433.4870) and (167.0750,416.9590) .. (135.0500,386.9050) .. controls (99.2850,353.3370) and (113.6520,315.0500) ..
- (142.7900,313.1040) .. controls (171.9120,311.1590) and (189.3980,346.1160) ..
- (204.9410,355.8400) .. controls (220.4650,365.5280) and (279.5340,387.6000) ..
- (310.7350,351.9320) .. controls (344.7100,313.1040) and (288.1410,293.0120) ..
- (246.6760,286.9300) .. controls (187.4730,278.1640) and (112.7260,246.1370) ..
- (118.5410,183.0230) .. controls (124.3580,119.9490) and (172.1230,87.6090) ..
- (222.3910,83.0470) .. controls (286.4680,77.2300) and (328.1820,92.7540) ..
- (361.1760,120.9070) .. controls (399.3270,153.4360) and (378.6840,189.8010) ..
- (354.3770,192.7270) .. controls (330.1660,195.6360) and (302.9730,139.2230) ..
- (249.5860,138.3750) .. controls (194.5590,137.5110) and (157.3690,195.6360) ..
- (225.3000,212.1590) .. controls (293.2660,228.6640) and (366.0500,235.4450) ..
- (392.2610,297.5760) .. controls (418.4900,359.7130) and (351.5070,425.7010) ..
- (276.7400,429.5960) -- cycle;
- \protect\end{scope}%
- \protect\end{tikzpicture}}%
- ~}
- \renewcommand*{\bornsymbol}{}
-
\endinput
diff --git a/macros/latex/contrib/moderncv/moderncviconssymbols.sty b/macros/latex/contrib/moderncv/moderncviconssymbols.sty
new file mode 100644
index 0000000000..b728536357
--- /dev/null
+++ b/macros/latex/contrib/moderncv/moderncviconssymbols.sty
@@ -0,0 +1,33 @@
+%% start of file `moderncviconssymbols.sty'.
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2021 moderncv maintainers (github.com/moderncv).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncviconssymbols}[2021-12-12 v2.2.0 modern curriculum vitae icons selector]
+
+
+\ifxetexorluatex
+ \RequirePackage{moderncviconsawesome}
+ \RequirePackage{moderncviconsacademic}
+\else
+ \ClassWarningNoLine{moderncv}{"academicons requires xetex/luatex to work. Using alternatives."}
+ \ifpdftex
+ \RequirePackage{moderncviconsawesome}
+ \else
+ \RequirePackage{moderncviconsmarvosym}
+ \fi
+\fi
+
+% Define symbols that are not defined at this level
+\RequirePackage{moderncviconstikz}
+
+\endinput
+
+%% end of file `moderncviconssymbols.sty'. \ No newline at end of file
diff --git a/macros/latex/contrib/moderncv/moderncviconstikz.sty b/macros/latex/contrib/moderncv/moderncviconstikz.sty
new file mode 100644
index 0000000000..078a0e99f7
--- /dev/null
+++ b/macros/latex/contrib/moderncv/moderncviconstikz.sty
@@ -0,0 +1,466 @@
+%% start of file `moderncviconstikz.sty'.
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2021 moderncv maintainers (github.com/moderncv).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncviconstikz}[2021-12-16 v2.3.0 modern curriculum vitae and letter icons: tickz]
+
+
+%-------------------------------------------------------------------------------
+% required packages
+%-------------------------------------------------------------------------------
+\RequirePackage{tikz}
+\RequirePackage{etoolbox}
+
+
+%-------------------------------------------------------------------------------
+% all symbols described in moderncv.cls
+% only redefine symbols that are not defined at this level
+%-------------------------------------------------------------------------------
+\ifdefempty{\linkedinsocialsymbol} {
+ \renewcommand*{\linkedinsocialsymbol} {
+ \protect\raisebox{-0.165em}{
+ \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[cm={{0.60,0.0,0.0,0.60,(346.39,123.07)}}]
+ \protect\path[fill=color2]
+ (381,202) -- (434,202) .. controls (439,202) and (442,205) ..
+ (442,210) -- (442,264) .. controls (442,268) and (439,272) ..
+ (434,272) -- (381,272) .. controls (376,272) and (372,268) ..
+ (372,264) -- (372,210) .. controls (372,205) and (376,202) ..
+ (381,202) -- cycle;
+ \protect\begin{scope}[xscale=0.98, yscale=1.02, fill=white]
+ \protect\path[fill=white]
+ (403,253) -- (403,224) -- (394,224) -- (394,253) --
+ cycle(398,211) .. controls (397,211) and (395,212) ..
+ (395,213) .. controls (394,213) and (393,215) ..
+ (393,216) .. controls (393,217) and (394,218) ..
+ (395,219) .. controls (395,220) and (397,220) ..
+ (398,220) .. controls (400,220) and (401,220) ..
+ (402,219) .. controls (402,218) and (403,217) ..
+ (403,216) .. controls (403,215) and (402,213) ..
+ (402,213) .. controls (401,212) and (400,211) ..
+ (398,211) -- cycle;
+ \protect\path[fill=white]
+ (410,253) -- (419,253) --
+ (419,236) .. controls (419,236) and (419,235) ..
+ (419,235) .. controls (419,235) and (419,234) ..
+ (419,234) .. controls (419,233) and (420,232) ..
+ (421,232) .. controls (422,231) and (423,231) ..
+ (424,231) .. controls (425,231) and (427,231) ..
+ (427,232) .. controls (428,234) and (428,235) ..
+ (428,237) -- (428,253) -- (437,253) --
+ (437,236) .. controls (437,232) and (436,228) ..
+ (434,226) .. controls (433,224) and (430,223) ..
+ (427,223) .. controls (425,223) and (423,224) ..
+ (421,225) .. controls (420,226) and (419,227) ..
+ (418,228) -- (418,228) -- (417,224) --
+ (410,224) .. controls (410,225) and (410,227) ..
+ (410,228) .. controls (410,230) and (410,231) ..
+ (410,233) -- cycle;
+ \protect\end{scope}
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+\ifdefempty{\twittersocialsymbol} {
+ \renewcommand*{\twittersocialsymbol} {
+ \protect\raisebox{0em}{%
+ \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.005, yscale=-0.005, inner sep=0pt, outer sep=0pt]
+ \protect\path[fill=color2]
+ (2000, 192) .. controls (1926, 225) and (1847, 247) ..
+ (1764, 257) .. controls (1849, 206) and (1914, 126) ..
+ (1945, 30) .. controls (1865, 77) and (1778, 111) ..
+ (1684, 130) .. controls (1609, 50) and (1503, 0) ..
+ (1385, 0) .. controls (1158, 0) and ( 974, 184) ..
+ ( 974, 410) .. controls ( 974, 442) and ( 978, 474) ..
+ ( 985, 504) .. controls ( 644, 487) and ( 342, 323) ..
+ ( 139, 75) .. controls ( 104, 136) and ( 84, 206) ..
+ ( 84, 281) .. controls ( 84, 424) and ( 156, 549) ..
+ ( 266, 623) .. controls ( 199, 621) and ( 136, 602) ..
+ ( 80, 572) .. controls ( 80, 573) and ( 80, 575) ..
+ ( 80, 577) .. controls ( 80, 776) and ( 222, 941) ..
+ ( 409, 979) .. controls ( 375, 988) and ( 339, 993) ..
+ ( 301, 993) .. controls ( 275, 993) and ( 249, 991) ..
+ ( 224, 986) .. controls ( 276,1149) and ( 428,1268) ..
+ ( 607,1271) .. controls ( 467,1381) and ( 290,1447) ..
+ ( 98,1447) .. controls ( 65,1447) and ( 32,1445) ..
+ ( 0,1441) .. controls ( 182,1557) and ( 397,1625) ..
+ ( 629,1625) .. controls (1384,1625) and (1796,1000) ..
+ (1796, 458) .. controls (1796, 440) and (1796, 422) ..
+ (1795, 405) .. controls (1875, 347) and (1945, 275) ..
+ (2000, 192);
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+\ifdefempty{\githubsocialsymbol} {
+ \renewcommand*{\githubsocialsymbol} {
+ \protect\raisebox{-0.15em} {
+ \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507,387)}]
+ \protect\path[fill=color2]
+ (117, 60) .. controls (117, 71) and (108, 81) ..
+ ( 96, 81) .. controls ( 85, 81) and ( 75, 71) ..
+ ( 75, 60) .. controls ( 75, 48) and ( 85, 39) ..
+ ( 96, 39) .. controls (108, 39) and (117, 48) ..
+ (117, 60) -- cycle;
+ \protect\path[cm={{0.88,0.0,0.0,0.88,(11.10,6.89)}}, fill=white]
+ (117, 60) .. controls (117, 71) and (108, 81) ..
+ ( 96, 81) .. controls ( 85, 81) and ( 75, 71) ..
+ ( 75, 60) .. controls ( 75, 48) and ( 85, 39) ..
+ ( 96, 39) .. controls (108, 39) and (117, 48) ..
+ (117, 60) -- cycle;
+ \protect\path[fill=color2, nonzero rule]
+ (103, 45) .. controls (103, 45) and (101, 46) ..
+ (101, 47) -- (100, 47) --
+ ( 99, 47) .. controls ( 99, 47) and ( 98, 47) ..
+ ( 97, 47) .. controls ( 94, 47) and ( 93, 47) ..
+ ( 92, 47) -- ( 92, 47) --
+ ( 91, 47) .. controls ( 90, 46) and ( 88, 45) ..
+ ( 88, 45) .. controls ( 88, 45) and ( 88, 45) ..
+ ( 87, 45) .. controls ( 87, 45) and ( 87, 45) ..
+ ( 87, 45) .. controls ( 86, 46) and ( 86, 48) ..
+ ( 86, 49) -- ( 87, 50) --
+ ( 86, 51) .. controls ( 85, 51) and ( 85, 52) ..
+ ( 85, 53) .. controls ( 85, 54) and ( 85, 57) ..
+ ( 85, 58) .. controls ( 85, 58) and ( 85, 58) ..
+ ( 82, 59) .. controls ( 79, 59) and ( 77, 59) ..
+ ( 77, 59) .. controls ( 77, 59) and ( 77, 59) ..
+ ( 78, 59) .. controls ( 80, 59) and ( 83, 59) ..
+ ( 85, 59) .. controls ( 85, 59) and ( 85, 59) ..
+ ( 85, 59) .. controls ( 86, 59) and ( 86, 59) ..
+ ( 86, 59) .. controls ( 86, 59) and ( 85, 59) ..
+ ( 84, 59) .. controls ( 82, 60) and ( 80, 60) ..
+ ( 79, 60) .. controls ( 78, 61) and ( 77, 61) ..
+ ( 77, 61) .. controls ( 77, 61) and ( 78, 61) ..
+ ( 79, 61) .. controls ( 81, 60) and ( 83, 60) ..
+ ( 85, 60) .. controls ( 86, 60) and ( 86, 60) ..
+ ( 86, 60) .. controls ( 86, 60) and ( 87, 61) ..
+ ( 88, 62) .. controls ( 89, 63) and ( 90, 63) ..
+ ( 92, 63) .. controls ( 92, 63) and ( 93, 64) ..
+ ( 93, 64) .. controls ( 93, 64) and ( 93, 64) ..
+ ( 93, 64) .. controls ( 92, 64) and ( 92, 65) ..
+ ( 92, 65) .. controls ( 92, 66) and ( 90, 66) ..
+ ( 89, 66) .. controls ( 88, 66) and ( 88, 66) ..
+ ( 87, 65) .. controls ( 87, 64) and ( 86, 63) ..
+ ( 86, 63) .. controls ( 85, 63) and ( 84, 63) ..
+ ( 84, 63) .. controls ( 84, 63) and ( 84, 63) ..
+ ( 84, 63) .. controls ( 85, 64) and ( 86, 65) ..
+ ( 86, 66) .. controls ( 87, 67) and ( 87, 68) ..
+ ( 88, 68) .. controls ( 89, 68) and ( 89, 68) ..
+ ( 90, 68) -- ( 92, 68) -- ( 92, 70) -- ( 92, 72) --
+ ( 91, 72) .. controls ( 91, 72) and ( 91, 73) ..
+ ( 91, 73) .. controls ( 90, 73) and ( 90, 73) ..
+ ( 91, 73) .. controls ( 92, 73) and ( 92, 73) ..
+ ( 92, 73) .. controls ( 93, 73) and ( 93, 73) ..
+ ( 93, 70) .. controls ( 93, 67) and ( 93, 67) ..
+ ( 94, 66) -- ( 94, 66) --
+ ( 94, 69) .. controls ( 94, 71) and ( 94, 73) ..
+ ( 94, 73) .. controls ( 94, 73) and ( 94, 73) ..
+ ( 93, 74) .. controls ( 93, 74) and ( 93, 74) ..
+ ( 93, 74) .. controls ( 93, 74) and ( 93, 74) ..
+ ( 94, 74) .. controls ( 94, 74) and ( 95, 74) ..
+ ( 96, 73) .. controls ( 96, 72) and ( 96, 71) ..
+ ( 96, 68) -- ( 96, 66) -- ( 96, 66) --
+ ( 96, 69) .. controls ( 96, 72) and ( 96, 72) ..
+ ( 97, 73) .. controls ( 97, 74) and ( 99, 74) ..
+ ( 99, 74) .. controls ( 99, 74) and ( 99, 74) ..
+ ( 99, 73) .. controls ( 99, 73) and ( 98, 73) ..
+ ( 98, 72) .. controls ( 98, 72) and ( 98, 66) ..
+ ( 98, 66) .. controls ( 98, 66) and ( 99, 66) ..
+ ( 99, 66) .. controls ( 99, 67) and ( 99, 67) ..
+ ( 99, 69) .. controls ( 99, 71) and ( 99, 72) ..
+ ( 99, 72) .. controls ( 99, 73) and (100, 73) ..
+ (100, 73) .. controls (101, 73) and (101, 73) ..
+ (101, 73) .. controls (102, 73) and (102, 73) ..
+ (102, 73) .. controls (101, 72) and (101, 72) ..
+ (101, 69) .. controls (101, 66) and (101, 65) ..
+ (100, 65) .. controls (100, 64) and (100, 64) ..
+ (100, 64) -- ( 99, 64) --
+ (100, 63) .. controls (101, 63) and (102, 63) ..
+ (103, 63) .. controls (104, 62) and (106, 61) ..
+ (106, 60) -- (106, 60) --
+ (107, 60) .. controls (109, 60) and (113, 60) ..
+ (115, 61) .. controls (115, 61) and (115, 61) ..
+ (115, 61) .. controls (115, 60) and (111, 60) ..
+ (108, 59) .. controls (107, 59) and (107, 59) ..
+ (107, 59) .. controls (107, 59) and (107, 59) ..
+ (107, 59) -- (107, 59) --
+ (108, 59) .. controls (110, 59) and (112, 59) ..
+ (114, 59) .. controls (115, 59) and (115, 59) ..
+ (115, 59) .. controls (115, 59) and (112, 59) ..
+ (109, 59) .. controls (108, 58) and (107, 58) ..
+ (107, 58) .. controls (107, 58) and (107, 58) ..
+ (107, 58) .. controls (107, 57) and (107, 56) ..
+ (107, 55) .. controls (107, 53) and (107, 53) ..
+ (107, 53) .. controls (107, 52) and (106, 51) ..
+ (106, 50) -- (105, 50) --
+ (105, 48) .. controls (105, 47) and (105, 46) ..
+ (105, 46) -- (105, 45) --
+ (104, 45) .. controls (104, 45) and (104, 45) ..
+ (103, 45) -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+\ifdefempty{\gitlabsocialsymbol} {
+ \renewcommand*{\gitlabsocialsymbol} {
+ \protect\raisebox{-0.12em}{
+ \protect\begin{tikzpicture}[x=0.11em, y=0.11em, xscale=0.015, yscale=-0.015, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507,387)}]
+ \path[fill=color2,line width=0.057pt]
+ (105.2000,24.9000) .. controls (102.1000,16.0000) and (89.5000,16.0000) ..
+ (86.3000,24.9000) -- (29.8000,199.7000) -- (161.7000,199.7000) .. controls
+ (161.7000,199.7000) and (105.2000,24.9000) .. (105.2000,24.9000) -- cycle
+ (0.9000,287.7000) .. controls (-1.7000,295.7000) and (1.2000,304.6000) ..
+ (8.0000,309.7000) -- (255.9000,493.7000) -- (29.7000,199.7000) -- cycle
+ (161.7000,199.7000) -- (161.7000,199.7000) -- (256.0000,493.7000) -- (350.3000,199.7000) -- cycle
+ (511.1000,287.7000) -- (482.3000,199.7000) -- (256.0000,493.7000) --
+ (503.9000,309.7000) .. controls (510.8000,304.6000) and (513.6000,295.7000) ..
+ (511.1000,287.7000) -- cycle(425.7000,24.9000) .. controls (422.6000,16.0000)
+ and (410.0000,16.0000) .. (406.8000,24.9000) -- (350.2000,199.7000) -- (482.2000,199.7000) -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+\ifdefempty{\skypesocialsymbol} {
+ \renewcommand*{\skypesocialsymbol} {
+ \protect\raisebox{-0.15em}{
+ \protect\begin{tikzpicture}[y=0.08em, x=0.08em, xscale=0.020, yscale=-0.020, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507,387)}]
+ \protect\path[fill=color2,even odd rule]
+ (487.6550,288.9690) .. controls (489.0610,278.5690) and (489.8700,267.9960) ..
+ (489.8700,257.2330) .. controls (489.8700,128.0770) and (384.5990,23.3610) ..
+ (254.7670,23.3610) .. controls (241.8630,23.3610) and (229.2120,24.4210) ..
+ (216.9010,26.4410) .. controls (194.8280,12.0570) and (168.5590,3.6740) ..
+ (140.2880,3.6740) .. controls (62.7660,3.6740) and (0.0000,66.4820) ..
+ (0.0000,143.9800) .. controls (0.0000,172.1780) and (8.2990,198.3740) ..
+ (22.5900,220.3690) .. controls (20.6650,232.3860) and (19.6810,244.6920) ..
+ (19.6810,257.2290) .. controls (19.6810,386.4050) and (124.8980,491.1100) ..
+ (254.7660,491.1100) .. controls (269.4230,491.1100) and (283.6930,489.6840) ..
+ (297.5620,487.1780) .. controls (319.1120,500.5470) and (344.4960,508.3260) ..
+ (371.7080,508.3260) .. controls (449.2100,508.3260) and (512.0010,445.5020) ..
+ (512.0010,368.0120) .. controls (511.9980,338.7190) and (503.0410,311.4840) ..
+ (487.6550,288.9690) -- cycle(276.7400,429.5960) .. controls (202.0340,433.4870) and (167.0750,416.9590) .. (135.0500,386.9050) .. controls (99.2850,353.3370) and (113.6520,315.0500) ..
+ (142.7900,313.1040) .. controls (171.9120,311.1590) and (189.3980,346.1160) ..
+ (204.9410,355.8400) .. controls (220.4650,365.5280) and (279.5340,387.6000) ..
+ (310.7350,351.9320) .. controls (344.7100,313.1040) and (288.1410,293.0120) ..
+ (246.6760,286.9300) .. controls (187.4730,278.1640) and (112.7260,246.1370) ..
+ (118.5410,183.0230) .. controls (124.3580,119.9490) and (172.1230,87.6090) ..
+ (222.3910,83.0470) .. controls (286.4680,77.2300) and (328.1820,92.7540) ..
+ (361.1760,120.9070) .. controls (399.3270,153.4360) and (378.6840,189.8010) ..
+ (354.3770,192.7270) .. controls (330.1660,195.6360) and (302.9730,139.2230) ..
+ (249.5860,138.3750) .. controls (194.5590,137.5110) and (157.3690,195.6360) ..
+ (225.3000,212.1590) .. controls (293.2660,228.6640) and (366.0500,235.4450) ..
+ (392.2610,297.5760) .. controls (418.4900,359.7130) and (351.5070,425.7010) ..
+ (276.7400,429.5960) -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+\ifdefempty{\gitlabsocialsymbol} {
+ \renewcommand*{\gitlabsocialsymbol} {
+ \protect\raisebox{-0.12em}{
+ \protect\begin{tikzpicture}[x=0.11em, y=0.11em, xscale=0.015, yscale=-0.015, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507,387)}]
+ \path[fill=color2,line width=0.057pt]
+ (105.2000,24.9000) .. controls (102.1000,16.0000) and (89.5000,16.0000) ..
+ (86.3000,24.9000) -- (29.8000,199.7000) -- (161.7000,199.7000) .. controls
+ (161.7000,199.7000) and (105.2000,24.9000) .. (105.2000,24.9000) -- cycle
+ (0.9000,287.7000) .. controls (-1.7000,295.7000) and (1.2000,304.6000) ..
+ (8.0000,309.7000) -- (255.9000,493.7000) -- (29.7000,199.7000) -- cycle
+ (161.7000,199.7000) -- (161.7000,199.7000) -- (256.0000,493.7000) -- (350.3000,199.7000) -- cycle
+ (511.1000,287.7000) -- (482.3000,199.7000) -- (256.0000,493.7000) --
+ (503.9000,309.7000) .. controls (510.8000,304.6000) and (513.6000,295.7000) ..
+ (511.1000,287.7000) -- cycle(425.7000,24.9000) .. controls (422.6000,16.0000)
+ and (410.0000,16.0000) .. (406.8000,24.9000) -- (350.2000,199.7000) -- (482.2000,199.7000) -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+\ifdefempty{\googlescholarsocialsymbol} {
+ \renewcommand*{\googlescholarsocialsymbol} {
+ \protect\raisebox{-0.12em}{
+ \protect\begin{tikzpicture}[y=2.0pt, x=2.0pt, yscale=-0.1, xscale=0.1, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507,387)}]
+ \path[fill=color2] (25.0000,2.0000) .. controls (12.3095,2.0000) and (2.0000,12.3095)
+ .. (2.0000,25.0000) .. controls (2.0000,37.6905) and (12.3095,48.0000) ..
+ (25.0000,48.0000) .. controls (37.6905,48.0000) and (48.0000,37.6905) ..
+ (48.0000,25.0000) .. controls (48.0000,12.3095) and (37.6905,2.0000) ..
+ (25.0000,2.0000) -- cycle(25.0000,4.0000) .. controls (36.6095,4.0000) and
+ (46.0000,13.3905) .. (46.0000,25.0000) .. controls (46.0000,36.6095) and
+ (36.6095,46.0000) .. (25.0000,46.0000) .. controls (13.3905,46.0000) and
+ (4.0000,36.6095) .. (4.0000,25.0000) .. controls (4.0000,13.3905) and
+ (13.3905,4.0000) .. (25.0000,4.0000) -- cycle(21.0000,11.0000) --
+ (11.0000,20.0000) -- (17.7812,20.0000) .. controls (17.8012,22.8470) and
+ (19.9675,25.7305) .. (23.7695,25.7305) .. controls (24.1295,25.7305) and
+ (24.5297,25.6904) .. (24.9297,25.6504) .. controls (24.7497,26.1004) and
+ (24.5605,26.4701) .. (24.5605,27.0801) .. controls (24.5605,28.2301) and
+ (25.1404,28.9201) .. (25.6504,29.5801) .. controls (24.0204,29.6901) and
+ (20.9898,29.8795) .. (18.7598,31.2695) .. controls (16.6298,32.5595) and
+ (15.9805,34.4300) .. (15.9805,35.7500) .. controls (15.9805,38.4700) and
+ (18.5005,41.0000) .. (23.7305,41.0000) .. controls (29.9305,41.0000) and
+ (33.2207,37.5105) .. (33.2207,34.0605) .. controls (33.2207,31.5305) and
+ (31.7795,30.2799) .. (30.1895,28.9199) -- (28.9004,27.8906) .. controls
+ (28.5004,27.5706) and (27.9492,27.1203) .. (27.9492,26.3203) .. controls
+ (27.9492,25.5103) and (28.5007,24.9898) .. (28.9707,24.5098) .. controls
+ (30.4807,23.3098) and (32.0000,21.9602) .. (32.0000,19.2402) .. controls
+ (32.0000,18.1972) and (31.7562,17.3484) .. (31.4082,16.6504) --
+ (35.0000,13.5703) -- (35.0000,17.2773) .. controls (34.4050,17.6233) and
+ (34.0000,18.2610) .. (34.0000,19.0000) -- (34.0000,25.0000) .. controls
+ (34.0000,26.1040) and (34.8960,27.0000) .. (36.0000,27.0000) .. controls
+ (37.1040,27.0000) and (38.0000,26.1040) .. (38.0000,25.0000) --
+ (38.0000,19.0000) .. controls (38.0000,18.2620) and (37.5950,17.6243) ..
+ (37.0000,17.2773) -- (37.0000,12.0000) .. controls (37.0000,11.9570) and
+ (36.9806,11.9209) .. (36.9746,11.8789) -- (38.0000,11.0000) --
+ (21.0000,11.0000) -- cycle(24.2695,14.2402) .. controls (27.2695,14.2402) and
+ (28.8203,18.3500) .. (28.8203,21.0000) .. controls (28.8203,21.6500) and
+ (28.7399,22.8199) .. (27.9199,23.6699) .. controls (27.3399,24.2599) and
+ (26.3709,24.6992) .. (25.4609,24.6992) .. controls (22.3709,24.6992) and
+ (20.9492,20.6202) .. (20.9492,18.1602) .. controls (20.9492,17.2102) and
+ (21.1400,16.2209) .. (21.7500,15.4609) .. controls (22.3300,14.7109) and
+ (23.3395,14.2402) .. (24.2695,14.2402) -- cycle(26.0391,30.6094) .. controls
+ (26.4091,30.6094) and (26.5909,30.6104) .. (26.8809,30.6504) .. controls
+ (29.6209,32.6304) and (30.8008,33.6202) .. (30.8008,35.4902) .. controls
+ (30.8008,37.7602) and (28.9700,39.4609) .. (25.5000,39.4609) .. controls
+ (21.6400,39.4609) and (19.1602,37.5905) .. (19.1602,34.9805) .. controls
+ (19.1602,32.3705) and (21.4598,31.4992) .. (22.2598,31.1992) .. controls
+ (23.7698,30.6792) and (25.7191,30.6094) .. (26.0391,30.6094) -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+~}
+}{}\par
+
+\ifdefempty{\matrixsocialsymbol} {
+ \renewcommand*{\matrixsocialsymbol} {
+ \protect\raisebox{-0.12em}{
+ \protect\begin{tikzpicture}[y=1.8pt, x=1.8pt, yscale=-0.15, xscale=0.15, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507,387)}]
+ \path[fill=color2]
+ (0.9360,0.7320) .. controls (0.9360,10.9053) and (0.9360,21.0787) ..
+ (0.9360,31.2520) .. controls (1.6673,31.2520) and (2.3987,31.2520) ..
+ (3.1300,31.2520) .. controls (3.3452,32.0075) and (2.8778,32.0803) ..
+ (2.2413,31.9840) .. controls (1.5258,31.9840) and (0.8104,31.9840) ..
+ (0.0950,31.9840) .. controls (0.0950,21.3240) and (0.0950,10.6640) ..
+ (0.0950,0.0040) .. controls (1.1063,0.0040) and (2.1177,0.0040) ..
+ (3.1290,0.0040) .. controls (3.3442,0.7598) and (2.8768,0.8319) ..
+ (2.2403,0.7344) .. controls (1.8055,0.7336) and (1.3708,0.7328) ..
+ (0.9360,0.7320) -- cycle(9.3860,10.4070) .. controls (9.4181,10.9043) and
+ (9.3236,11.5281) .. (9.4300,11.9510) .. controls (10.7306,9.8293) and
+ (14.1727,9.3918) .. (15.8298,11.2910) .. controls (16.3916,12.8310) and
+ (17.3334,10.0899) .. (18.5637,10.2414) .. controls (20.4575,9.7636) and
+ (23.0149,10.3893) .. (23.6011,12.4937) .. controls (24.0197,14.2344) and
+ (23.7678,16.0478) .. (23.8370,17.8238) .. controls (23.8370,19.1536) and
+ (23.8370,20.4833) .. (23.8370,21.8130) .. controls (22.7947,21.8130) and
+ (21.7523,21.8130) .. (20.7100,21.8130) .. controls (20.6777,19.2218) and
+ (20.7833,16.6250) .. (20.6389,14.0382) .. controls (20.4668,12.0762) and
+ (17.2764,12.0985) .. (16.8890,13.9332) .. controls (16.5424,15.7480) and
+ (16.7622,17.6175) .. (16.7000,19.4583) .. controls (16.7000,20.2432) and
+ (16.7000,21.0281) .. (16.7000,21.8130) .. controls (15.6573,21.8130) and
+ (14.6147,21.8130) .. (13.5720,21.8130) .. controls (13.5377,19.1909) and
+ (13.6502,16.5608) .. (13.4952,13.9452) .. controls (13.2700,12.0546) and
+ (10.3372,12.2098) .. (9.8050,13.8370) .. controls (9.3690,15.2175) and
+ (9.6378,16.6981) .. (9.5630,18.1268) .. controls (9.5630,19.3556) and
+ (9.5630,20.5843) .. (9.5630,21.8130) .. controls (8.5200,21.8130) and
+ (7.4770,21.8130) .. (6.4340,21.8130) .. controls (6.4340,18.0097) and
+ (6.4340,14.2063) .. (6.4340,10.4030) .. controls (7.4180,10.4043) and
+ (8.4020,10.4057) .. (9.3860,10.4070) -- cycle(30.0980,31.2470) .. controls
+ (30.0980,21.0737) and (30.0980,10.9003) .. (30.0980,0.7270) .. controls
+ (29.3667,0.7270) and (28.6353,0.7270) .. (27.9040,0.7270) .. controls
+ (27.6888,-0.0285) and (28.1562,-0.1013) .. (28.7927,-0.0050) .. controls
+ (29.5082,-0.0050) and (30.2236,-0.0050) .. (30.9390,-0.0050) .. controls
+ (30.9390,10.6550) and (30.9390,21.3150) .. (30.9390,31.9750) .. controls
+ (29.9273,31.9750) and (28.9157,31.9750) .. (27.9040,31.9750) .. controls
+ (27.6888,31.2192) and (28.1562,31.1471) .. (28.7927,31.2446) .. controls
+ (29.2278,31.2454) and (29.6629,31.2462) .. (30.0980,31.2470) -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+\ifdefempty{\signalsocialsymbol} {
+ \renewcommand*{\signalsocialsymbol} {
+ \protect\raisebox{-0.12em}{
+ \protect\begin{tikzpicture}[y=0.1pt, x=0.1pt, yscale=-0.13, xscale=0.13, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507,387)}]
+ \path[fill=color2]
+ (430.1000,180.9000) -- (437.8000,211.9000) .. controls (407.6000,219.3000)
+ and (378.7000,231.3000) .. (352.1000,247.3000) -- (335.7000,220.0000) ..
+ controls (365.0000,202.3000) and (396.9000,189.1000) .. (430.1000,180.9000) --
+ cycle(593.9000,180.9000) -- (586.2000,211.9000) .. controls
+ (616.4000,219.3000) and (645.3000,231.3000) .. (671.9000,247.3000) --
+ (688.4000,219.9000) .. controls (659.0000,202.3000) and (627.2000,189.1000) ..
+ (593.9000,180.9000) -- cycle(220.0000,335.7000) .. controls
+ (202.3000,365.0000) and (189.1000,396.9000) .. (180.9000,430.1000) --
+ (211.9000,437.8000) .. controls (219.3000,407.6000) and (231.3000,378.7000) ..
+ (247.3000,352.1000) -- cycle(202.9000,512.0000) .. controls
+ (202.9000,496.5000) and (204.0000,481.0000) .. (206.4000,465.7000) --
+ (174.8000,460.9000) .. controls (169.7000,494.8000) and (169.7000,529.2000) ..
+ (174.8000,563.1000) -- (206.4000,558.3000) .. controls (204.1000,543.0000) and
+ (202.9000,527.5000) .. (202.9000,512.0000) -- cycle(688.3000,804.0000) --
+ (671.9000,776.6000) .. controls (645.3000,792.7000) and (616.5000,804.6000) ..
+ (586.3000,812.0000) -- (594.0000,843.0000) .. controls (627.2000,834.8000) and
+ (659.0000,821.7000) .. (688.3000,804.0000) -- cycle(821.1000,512.0000) ..
+ controls (821.1000,527.5000) and (820.0000,543.0000) .. (817.6000,558.3000) --
+ (849.2000,563.1000) .. controls (854.3000,529.2000) and (854.3000,494.8000) ..
+ (849.2000,460.9000) -- (817.6000,465.7000) .. controls (819.9000,481.0000) and
+ (821.1000,496.5000) .. (821.1000,512.0000) -- cycle(843.1000,593.8000) --
+ (812.1000,586.1000) .. controls (804.7000,616.3000) and (792.7000,645.2000) ..
+ (776.7000,671.8000) -- (804.1000,688.3000) .. controls (821.7000,659.0000) and
+ (834.9000,627.1000) .. (843.1000,593.8000) -- cycle(558.3000,817.6000) ..
+ controls (527.6000,822.2000) and (496.4000,822.2000) .. (465.7000,817.6000) --
+ (460.9000,849.2000) .. controls (494.8000,854.3000) and (529.2000,854.3000) ..
+ (563.1000,849.2000) -- cycle(760.8000,695.3000) .. controls
+ (742.4000,720.3000) and (720.3000,742.3000) .. (695.3000,760.7000) --
+ (714.3000,786.4000) .. controls (741.9000,766.1000) and (766.2000,741.9000) ..
+ (786.6000,714.4000) -- cycle(695.3000,263.2000) .. controls
+ (720.3000,281.6000) and (742.4000,303.7000) .. (760.8000,328.7000) --
+ (786.5000,309.5000) .. controls (766.2000,282.0000) and (741.9000,257.7000) ..
+ (714.5000,237.5000) -- cycle(263.2000,328.7000) .. controls
+ (281.6000,303.7000) and (303.7000,281.6000) .. (328.7000,263.2000) --
+ (309.5000,237.5000) .. controls (282.0000,257.8000) and (257.7000,282.1000) ..
+ (237.5000,309.5000) -- cycle(804.0000,335.7000) -- (776.6000,352.1000) ..
+ controls (792.7000,378.7000) and (804.6000,407.5000) .. (812.0000,437.7000) --
+ (843.0000,430.0000) .. controls (834.9000,396.8000) and (821.7000,365.0000) ..
+ (804.0000,335.7000) -- cycle(465.7000,206.4000) .. controls
+ (496.4000,201.8000) and (527.6000,201.8000) .. (558.3000,206.4000) --
+ (563.1000,174.8000) .. controls (529.2000,169.7000) and (494.8000,169.7000) ..
+ (460.9000,174.8000) -- cycle(279.6000,795.0000) -- (213.6000,810.4000) --
+ (229.0000,744.4000) -- (197.9000,737.1000) -- (182.5000,803.1000) .. controls
+ (180.0000,813.9000) and (183.2000,825.2000) .. (191.0000,833.0000) .. controls
+ (198.8000,840.8000) and (210.1000,844.0000) .. (220.9000,841.5000) --
+ (286.9000,826.4000) -- cycle(204.5000,708.5000) -- (235.6000,715.7000) --
+ (246.3000,669.9000) .. controls (230.8000,643.8000) and (219.2000,615.5000) ..
+ (211.9000,586.0000) -- (180.9000,593.7000) .. controls (187.9000,622.0000) and
+ (198.4000,649.2000) .. (212.3000,674.7000) -- cycle(353.7000,777.8000) --
+ (308.0000,788.5000) -- (315.2000,819.6000) -- (348.9000,811.8000) .. controls
+ (374.5000,825.7000) and (401.7000,836.3000) .. (430.0000,843.2000) --
+ (437.7000,812.2000) .. controls (408.3000,804.9000) and (380.1000,793.2000) ..
+ (354.0000,777.6000) -- cycle(512.0000,234.9000) .. controls
+ (411.2000,235.0000) and (318.3000,289.8000) .. (269.6000,378.0000) .. controls
+ (220.9000,466.2000) and (223.9000,574.0000) .. (277.6000,659.4000) --
+ (251.0000,773.1000) -- (364.7000,746.5000) .. controls (464.4000,809.3000) and
+ (592.9000,802.2000) .. (685.1000,728.8000) .. controls (777.3000,655.4000) and
+ (812.9000,531.7000) .. (774.0000,420.5000) .. controls (734.8000,309.2000) and
+ (629.8000,234.8000) .. (512.0000,234.9000) -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
+
+
+\endinput
+
+%% end of file `moderncviconstikz.sty'.
diff --git a/macros/latex/contrib/moderncv/moderncvskillmatrix.sty b/macros/latex/contrib/moderncv/moderncvskillmatrix.sty
index 479edeecb1..696448a2db 100644
--- a/macros/latex/contrib/moderncv/moderncvskillmatrix.sty
+++ b/macros/latex/contrib/moderncv/moderncvskillmatrix.sty
@@ -203,7 +203,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvskillmatrix}[2021-07-28 v2.2.0 modern curriculum vitae and letter skill matrix]
+\ProvidesPackage{moderncvskillmatrix}[2021-12-16 v2.3.0 modern curriculum vitae and letter skill matrix]
% The definitions need to be adjusted depending on which moderncvbody<i-v>.sty style is usde.
% body type options: "moderncvbodyi" (default), "moderncvbodyii", "moderncvbodyiii", "moderncvbodyiv" or "moderncvbodyv"
diff --git a/macros/latex/contrib/moderncv/moderncvstylebanking.sty b/macros/latex/contrib/moderncv/moderncvstylebanking.sty
index 2cfc75e98a..756d4be1ee 100644
--- a/macros/latex/contrib/moderncv/moderncvstylebanking.sty
+++ b/macros/latex/contrib/moderncv/moderncvstylebanking.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstylebanking}[2021-07-28 v2.2.0 modern curriculum vitae and letter style scheme: banking]
+\ProvidesPackage{moderncvstylebanking}[2021-12-16 v2.3.0 modern curriculum vitae and letter style scheme: banking]
% body rules type options: "fullrules", "shortrules", "mixedrules" (default) or "norules"
\@initializecommand{\moderncvstylebodyoptions}{}
@@ -55,13 +55,9 @@
% symbols
\if@symbols
- \ifxetexorluatex
- \moderncvicons{awesome} % use font-awesome symbols if lualatex or xelatex is used
- \else
- \moderncvicons{marvosym} % use marvosym symbols pdflatex is used
- \fi
+ \moderncvicons{symbols} % use symbols
\else
- \moderncvicons{letters} % do not use symbols, use letters
+ \moderncvicons{letters} % do not use symbols, use letters
\fi
diff --git a/macros/latex/contrib/moderncv/moderncvstylecasual.sty b/macros/latex/contrib/moderncv/moderncvstylecasual.sty
index f5918309f5..3f8cb8c78e 100644
--- a/macros/latex/contrib/moderncv/moderncvstylecasual.sty
+++ b/macros/latex/contrib/moderncv/moderncvstylecasual.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstylecasual}[2021-07-28 v2.2.0 modern curriculum vitae and letter style scheme: casual]
+\ProvidesPackage{moderncvstylecasual}[2021-12-16 v2.3.0 modern curriculum vitae and letter style scheme: casual]
% head section alignment options: "left" (default) or "right"
\@initializecommand{\moderncvstyleheadoptions}{}
@@ -42,13 +42,9 @@
% symbols
\if@symbols
- \ifxetexorluatex
- \moderncvicons{awesome} % use font-awesome symbols if lualatex or xelatex is used
- \else
- \moderncvicons{marvosym} % use marvosym symbols pdflatex is used
- \fi
+ \moderncvicons{symbols} % use symbols
\else
- \moderncvicons{letters} % do not use symbols, use letters
+ \moderncvicons{letters} % do not use symbols, use letters
\fi
diff --git a/macros/latex/contrib/moderncv/moderncvstyleclassic.sty b/macros/latex/contrib/moderncv/moderncvstyleclassic.sty
index fe4a511eec..2c119e6d81 100644
--- a/macros/latex/contrib/moderncv/moderncvstyleclassic.sty
+++ b/macros/latex/contrib/moderncv/moderncvstyleclassic.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstyleclassic}[2021-07-28 v2.2.0 modern curriculum vitae and letter style scheme: classic]
+\ProvidesPackage{moderncvstyleclassic}[2021-12-16 v2.3.0 modern curriculum vitae and letter style scheme: classic]
% head section alignment options: "left" (default) or "right"
\@initializecommand{\moderncvstyleheadoptions}{}
@@ -42,13 +42,9 @@
% symbols
\if@symbols
- \ifxetexorluatex
- \moderncvicons{awesome} % use font-awesome symbols if lualatex or xelatex is used
- \else
- \moderncvicons{marvosym} % use marvosym symbols pdflatex is used
- \fi
+ \moderncvicons{symbols} % use symbols
\else
- \moderncvicons{letters} % do not use symbols, use letters
+ \moderncvicons{letters} % do not use symbols, use letters
\fi
diff --git a/macros/latex/contrib/moderncv/moderncvstyleempty.sty b/macros/latex/contrib/moderncv/moderncvstyleempty.sty
index f41e0680b6..c19c132114 100644
--- a/macros/latex/contrib/moderncv/moderncvstyleempty.sty
+++ b/macros/latex/contrib/moderncv/moderncvstyleempty.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstyleempty}[2021-07-28 v2.2.0 modern curriculum vitae scheme: empty]
+\ProvidesPackage{moderncvstyleempty}[2021-12-16 v2.3.0 modern curriculum vitae scheme: empty]
%-------------------------------------------------------------------------------
% required packages
@@ -37,13 +37,9 @@
%-------------------------------------------------------------------------------
% symbols
\if@symbols
- \ifxetexorluatex
- \moderncvicons{awesome} % use font-awesome symbols if lualatex or xelatex is used
- \else
- \moderncvicons{marvosym} % use marvosym symbols pdflatex is used
- \fi
+ \moderncvicons{symbols} % use symbols
\else
- \moderncvicons{letters} % do not use symbols, use letters
+ \moderncvicons{letters} % do not use symbols, use letters
\fi
% see moderncv.cls for command declarations that needs to be implemented, e.g. \maketitle, \section, \subsections, \cvline, etc
diff --git a/macros/latex/contrib/moderncv/moderncvstylefancy.sty b/macros/latex/contrib/moderncv/moderncvstylefancy.sty
index 5756eec86b..b23e530ae7 100644
--- a/macros/latex/contrib/moderncv/moderncvstylefancy.sty
+++ b/macros/latex/contrib/moderncv/moderncvstylefancy.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstylefancy}[2021-07-28 v2.2.0 modern curriculum vitae and letter style scheme: fancy]
+\ProvidesPackage{moderncvstylefancy}[2021-12-16 v2.3.0 modern curriculum vitae and letter style scheme: fancy]
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
@@ -38,13 +38,9 @@
% symbols
\if@symbols
- \ifxetexorluatex
- \moderncvicons{awesome} % use font-awesome symbols if lualatex or xelatex is used
- \else
- \moderncvicons{marvosym} % use marvosym symbols pdflatex is used
- \fi
+ \moderncvicons{symbols} % use symbols
\else
- \moderncvicons{letters} % do not use symbols, use letters
+ \moderncvicons{letters} % do not use symbols, use letters
\fi
diff --git a/macros/latex/contrib/moderncv/moderncvstyleoldstyle.sty b/macros/latex/contrib/moderncv/moderncvstyleoldstyle.sty
index 6a2921e681..c4a29281e6 100644
--- a/macros/latex/contrib/moderncv/moderncvstyleoldstyle.sty
+++ b/macros/latex/contrib/moderncv/moderncvstyleoldstyle.sty
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstyleoldstyle}[2021-07-28 v2.2.0 modern curriculum vitae and letter style scheme: oldstyle]
+\ProvidesPackage{moderncvstyleoldstyle}[2021-12-16 v2.3.0 modern curriculum vitae and letter style scheme: oldstyle]
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
diff --git a/macros/latex/contrib/moderncv/template.tex b/macros/latex/contrib/moderncv/template.tex
index 1083fc8758..34abd843f3 100644
--- a/macros/latex/contrib/moderncv/template.tex
+++ b/macros/latex/contrib/moderncv/template.tex
@@ -20,10 +20,27 @@
% adjust the page margins
\usepackage[scale=0.75]{geometry}
-\setlength{\footskip}{122.40004pt} % depending on the amount of information in the footer, you need to change this value. comment this line out and set it to the size given in the warning
+\setlength{\footskip}{136.00005pt} % depending on the amount of information in the footer, you need to change this value. comment this line out and set it to the size given in the warning
%\setlength{\hintscolumnwidth}{3cm} % if you want to change the width of the column with the dates
%\setlength{\makecvheadnamewidth}{10cm} % for the 'classic' style, if you want to force the width allocated to your name and avoid line breaks. be careful though, the length is normally calculated to avoid any overlap with your personal info; use this at your own typographical risks...
+% font loading
+% for luatex and xetex, do not use inputenc and fontenc
+% see https://tex.stackexchange.com/a/496643
+\ifxetexorluatex
+ \usepackage{fontspec}
+ \usepackage{unicode-math}
+ \defaultfontfeatures{Ligatures=TeX}
+ \setmainfont{Latin Modern Roman}
+ \setsansfont{Latin Modern Sans}
+ \setmonofont{Latin Modern Mono}
+ \setmathfont{Latin Modern Math}
+\else
+ \usepackage[utf8]{inputenc}
+ \usepackage[T1]{fontenc}
+ \usepackage{lmodern}
+\fi
+
% personal data
\name{John}{Doe}
\title{Résumé title} % optional, remove / comment the line if not wanted
diff --git a/macros/latex/contrib/projlib/ProjLib-doc-cn.pdf b/macros/latex/contrib/projlib/ProjLib-doc-cn.pdf
index b4072bab6f..254abce622 100644
--- a/macros/latex/contrib/projlib/ProjLib-doc-cn.pdf
+++ b/macros/latex/contrib/projlib/ProjLib-doc-cn.pdf
Binary files differ
diff --git a/macros/latex/contrib/projlib/ProjLib-doc-en.pdf b/macros/latex/contrib/projlib/ProjLib-doc-en.pdf
index c0e738d0ea..b6acacad5a 100644
--- a/macros/latex/contrib/projlib/ProjLib-doc-en.pdf
+++ b/macros/latex/contrib/projlib/ProjLib-doc-en.pdf
Binary files differ
diff --git a/macros/latex/contrib/projlib/ProjLib-doc-fr.pdf b/macros/latex/contrib/projlib/ProjLib-doc-fr.pdf
index 22e221b53e..c64a69a816 100644
--- a/macros/latex/contrib/projlib/ProjLib-doc-fr.pdf
+++ b/macros/latex/contrib/projlib/ProjLib-doc-fr.pdf
Binary files differ
diff --git a/macros/latex/contrib/projlib/ProjLib-doc.dtx b/macros/latex/contrib/projlib/ProjLib-doc.dtx
index f874a9f029..be967754ec 100644
--- a/macros/latex/contrib/projlib/ProjLib-doc.dtx
+++ b/macros/latex/contrib/projlib/ProjLib-doc.dtx
@@ -54,7 +54,7 @@
}
\providecommand{\meta}[1]{$\langle${\normalfont\itshape#1}$\rangle$}
\lstset{moretexcs=%
- {color,NameTheorem,CreateTheorem,proofideanameCN,proofideanameEN,proofideanameFR,cref,dnf,needgraph,UseLanguage,UseOtherLanguage,AddLanguageSetting,maketitle,address,curraddr,email,keywords,subjclass,thanks,dedicatory,PLdate,PJLdate,ProjLib,
+ {color,NameTheorem,CreateTheorem,proofideanameCN,proofideanameEN,proofideanameFR,cref,dnf,needgraph,UseLanguage,UseOtherLanguage,AddLanguageSetting,maketitle,address,curraddr,email,keywords,subjclass,thanks,dedicatory,TheDate,PLdate,PJLdate,ProjLib,
mathfrak,mf,frak,mfA,mathbb,bb,N,Z,Q,R,C,F,A,mathcal,mc,cal,mathscr,ms,scr,
abs,norm,injection,surjection,bijection,legendre,tlegendre,dlegendre,pmod
}
@@ -107,25 +107,25 @@
%<*ProjLib-doc-cn>
\title{\ProjLib{} 工具集\\[.3\baselineskip]\normalsize 使用指南}
\author{许锦文}
-\thanks{对应版本.~~\texttt{\ProjLib{}~2021/11/09}}
+\thanks{对应版本.~~\texttt{\ProjLib{}~2021/12/16}}
\email{\href{mailto:ProjLib@outlook.com}{ProjLib@outlook.com}}
-\date{2021年11月,巴黎}
+\date{2021年12月,巴黎}
%</ProjLib-doc-cn>
%
%<*ProjLib-doc-en>
\title{\ProjLib{}~\,Toolkit\\[.3\baselineskip]\normalsize User Manual}
\author{Jinwen XU}
-\thanks{Corresponding to: \texttt{\ProjLib{}~2021/11/09}}
+\thanks{Corresponding to: \texttt{\ProjLib{}~2021/12/16}}
\email{\href{mailto:ProjLib@outlook.com}{ProjLib@outlook.com}}
-\date{November 2021, in Paris}
+\date{December 2021, in Paris}
%</ProjLib-doc-en>
%
%<*ProjLib-doc-fr>
\title{La boîte à outils~\,\ProjLib{}\\[.3\baselineskip]\normalsize Manuel d'utilisation}
\author{Jinwen XU}
-\thanks{Correspondant à : \texttt{\ProjLib{}~2021/11/09}}
+\thanks{Correspondant à : \texttt{\ProjLib{}~2021/12/16}}
\email{\href{mailto:ProjLib@outlook.com}{ProjLib@outlook.com}}
-\date{Novembre 2021, à Paris}
+\date{Décembre 2021, à Paris}
%</ProjLib-doc-fr>
\maketitle
@@ -250,7 +250,7 @@ Just add the following line to your preamble:
\subsection{Comment l'ajouter}
-Ajoutez simplement la ligne suivante à votre préambule :
+Ajoutez simplement la ligne suivante à votre préambule :
\begin{code}
\usepackage{ProjLib}
@@ -495,7 +495,7 @@ In addition, you can also write the abstract before \lstinline|\maketitle|, as t
\date{\PLdate{2022-04-01}}
\end{code}
-Cette partie est le titre et le bloc d'informations de l'auteur. L'exemple montre l'utilisation la plus fondamentale, mais en fait, vous pouvez également écrire comme :
+Cette partie est le titre et le bloc d'informations de l'auteur. L'exemple montre l'utilisation la plus fondamentale, mais en fait, vous pouvez également écrire comme :
\begin{code}
\author{(*\meta{author 1}*)}
\address{(*\meta{address 1}*)}
@@ -510,13 +510,13 @@ De plus, si la simulation d'\AmS{} est activée, alors vous pouvez également é
\begin{code}
\usepackage[amsfashion,palatino]{ProjLib}
\end{code}
-Et en conséquence, vous pourrez également utiliser ces macros :
+Et en conséquence, vous pourrez également utiliser ces macros :
\begin{code}
\dedicatory{(*\meta{dedicatory}*)}
\subjclass{*****}
\keywords{(*\meta{keywords}*)}
\end{code}
-De plus, vous pouvez également placé le résumé avant \lstinline|\maketitle|, comme requis dans les classes \AmS{} :
+De plus, vous pouvez également placé le résumé avant \lstinline|\maketitle|, comme requis dans les classes \AmS{} :
\begin{code}
\begin{abstract}
(*\meta{abstract text}*)
@@ -649,7 +649,7 @@ In addition, there are also some options of the components that should be passed
%<*ProjLib-doc-fr>
\section{Options du package principal}
-\ProjLibPackage{} a les options suivantes :
+\ProjLibPackage{} a les options suivantes :
\begin{itemize}
\item \texttt{draft} ou \texttt{fast}
\begin{itemize}
@@ -812,9 +812,9 @@ For example, \lstinline|\AddLanguageSetting(German){\color{orange}}| can make al
%</ProjLib-doc-en>
%
%<*ProjLib-doc-fr>
-\subsubsection{PJLlang : support multilingue}
+\subsubsection{PJLlang : support multilingue}
-\PJLlang{} offre le support multilingue, notamment : chinois simplifié, chinois traditionnel, anglais, français, allemand, japonais et russe (parmi eux, le chinois, le japonais et le russe requièrent des moteurs \TeX{} et des polices appropriés).
+\PJLlang{} offre le support multilingue, notamment : chinois simplifié, chinois traditionnel, anglais, français, allemand, japonais et russe (parmi eux, le chinois, le japonais et le russe requièrent des moteurs \TeX{} et des polices appropriés).
\medskip
\PJLlang{} fournit des options de langue. Les noms de ces options ont trois types, qui sont des abréviations (comme \texttt{EN}), des minuscules (comme \texttt{english}) et des majuscules (comme \texttt{English}). Pour les noms d'options d'une langue spécifique, veuillez vous référer à \meta{language name} ci-dessous. Parmi eux, la première langue spécifiée \meta{first language} sera considérée comme langue par défaut, ce qui équivaut à spécifier \lstinline|\UseLanguage{|\meta{first language}\lstinline|}| au début de votre document.
@@ -824,31 +824,31 @@ For example, \lstinline|\AddLanguageSetting(German){\color{orange}}| can make al
\end{tip}
\medskip
-La langue peut être sélectionnée par les macros suivantes :
+La langue peut être sélectionnée par les macros suivantes :
\begin{itemize}
- \item \lstinline|\UseLanguage{|\meta{language name}\lstinline|}| est utilisé pour spécifier la langue. Le réglage correspondant de la langue sera appliqué après celui-ci. Il peut être utilisé soit dans le préambule ou dans le texte. Lorsqu'aucune langue n'est spécifiée, « English » est sélectionné par défaut.
+ \item \lstinline|\UseLanguage{|\meta{language name}\lstinline|}| est utilisé pour spécifier la langue. Le réglage correspondant de la langue sera appliqué après celui-ci. Il peut être utilisé soit dans le préambule ou dans le texte. Lorsqu'aucune langue n'est spécifiée, « English » est sélectionné par défaut.
\item \lstinline|\UseOtherLanguage{|\meta{language name}\lstinline|}{|\meta{content}\lstinline|}|, qui utilise les paramètres de langue spécifiés pour composer \meta{content}. Par rapport à \lstinline|\UseLanguage|, il ne modifiera pas l'interligne, donc l'interligne restera stable lorsque les textes CJK et occidentaux sont mélangés.
\end{itemize}
\medskip
-\meta{language name} peut être (il n'est pas sensible à la casse, par exemple, \texttt{French} et \texttt{french} ont le même effet) :
+\meta{language name} peut être (il n'est pas sensible à la casse, par exemple, \texttt{French} et \texttt{french} ont le même effet) :
\begin{itemize}
\item chinois simplifié : \texttt{CN}, \texttt{Chinese}, \texttt{SChinese} ou \texttt{SimplifiedChinese}
- \item chinois traditionnel : \texttt{TC}, \texttt{TChinese} ou \texttt{TraditionalChinese}
- \item anglais : \texttt{EN} ou \texttt{English}
+ \item chinois traditionnel : \texttt{TC}, \texttt{TChinese} ou \texttt{TraditionalChinese}
+ \item anglais : \texttt{EN} ou \texttt{English}
\item français : \texttt{FR} ou \texttt{French}
- \item allemand : \texttt{DE}, \texttt{German} ou \texttt{ngerman}
- \item italien : \texttt{IT} ou \texttt{Italian}
- \item portugais : \texttt{PT} ou \texttt{Portuguese}
- \item portugais (brésilien) : \texttt{BR} ou \texttt{Brazilian}
- \item espagnol : \texttt{ES} ou \texttt{Spanish}
- \item japonais : \texttt{JP} ou \texttt{Japanese}
- \item russe : \texttt{RU} ou \texttt{Russian}
+ \item allemand : \texttt{DE}, \texttt{German} ou \texttt{ngerman}
+ \item italien : \texttt{IT} ou \texttt{Italian}
+ \item portugais : \texttt{PT} ou \texttt{Portuguese}
+ \item portugais (brésilien) : \texttt{BR} ou \texttt{Brazilian}
+ \item espagnol : \texttt{ES} ou \texttt{Spanish}
+ \item japonais : \texttt{JP} ou \texttt{Japanese}
+ \item russe : \texttt{RU} ou \texttt{Russian}
\end{itemize}
\medskip
-De plus, vous pouvez également ajouter de nouveaux paramètres à la langue sélectionnée :
+De plus, vous pouvez également ajouter de nouveaux paramètres à la langue sélectionnée :
\begin{itemize}
\item \lstinline|\AddLanguageSetting{|\meta{settings}\lstinline|}|
\begin{itemize}
@@ -1208,7 +1208,7 @@ or set the names while defining them (for \lstinline|proofidea*| and \lstinline|
%</ProjLib-doc-en>
%
%<*ProjLib-doc-fr>
-\subsubsection{PJLthm : environnements de type théorème avec référence intelligente et support multilingue}
+\subsubsection{PJLthm : environnements de type théorème avec référence intelligente et support multilingue}
\PJLthm{} offre la configuration d'environnements de type théorème. Il a l'option suivante :
@@ -1232,13 +1232,13 @@ or set the names while defining them (for \lstinline|proofidea*| and \lstinline|
\end{itemize}
\item \texttt{regionalref}, \texttt{originalref}
\begin{itemize}
- \item Lors du référencement, si le nom de l'environnement de type théorème change avec la langue actuelle. Par défaut \texttt{regionalref} est activé, c'est-à-dire que le nom correspondant à la langue courante est utilisé ; par exemple, lors du référencement d'un environnement de type théorème dans un contexte français, les noms «~Théorème, Définition ...~» seront utilisés quel que soit le contexte linguistique dans lequel se trouve l'environnement d'origine. Si \texttt{originalref} est activé, alors le nom restera toujours le même que l'environnement d'origine ; par exemple, lors du référencement d'un théorème écrit dans le contexte français, même si l'on est actuellement dans le contexte anglais, il sera toujours affiché comme «~Théorème~».
+ \item Lors du référencement, si le nom de l'environnement de type théorème change avec la langue actuelle. Par défaut \texttt{regionalref} est activé, c'est-à-dire que le nom correspondant à la langue courante est utilisé ; par exemple, lors du référencement d'un environnement de type théorème dans un contexte français, les noms «~Théorème, Définition ...~» seront utilisés quel que soit le contexte linguistique dans lequel se trouve l'environnement d'origine. Si \texttt{originalref} est activé, alors le nom restera toujours le même que l'environnement d'origine ; par exemple, lors du référencement d'un théorème écrit dans le contexte français, même si l'on est actuellement dans le contexte anglais, il sera toujours affiché comme «~Théorème~».
\item En mode \texttt{fast}, l'option \texttt{originalref} n'aura aucun effet.
\end{itemize}
\end{itemize}
\medskip
-Les environnements prédéfinis incluent : \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}, et la version non numérotée correspondante avec un astérisque \lstinline|*| dans le nom. Les titres changeront avec la langue actuelle. Par exemple, \texttt{theorem} sera affiché comme «~Theorem~» en mode anglais et «~Théorème~» en mode français. Pour plus de détails sur la façon de sélectionner une langue, veuillez vous référer à la section sur \PJLlang{}.
+Les environnements prédéfinis incluent : \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}, et la version non numérotée correspondante avec un astérisque \lstinline|*| dans le nom. Les titres changeront avec la langue actuelle. Par exemple, \texttt{theorem} sera affiché comme «~Theorem~» en mode anglais et «~Théorème~» en mode français. Pour plus de détails sur la façon de sélectionner une langue, veuillez vous référer à la section sur \PJLlang{}.
\begin{tip}
Lors du référencement d'un environnement de type théorème, il est recommandé d'utiliser \lstinline|\cref{|\meta{label}\texttt{\}}. De cette façon, il n'est pas nécessaire d'écrire explicitement le nom de l'environnement correspondant à chaque fois.
@@ -1251,7 +1251,7 @@ Si vous avez besoin de définir un nouvel environnement de type théorème, vous
\begin{itemize}
\item Cette approche ne définit qu'un seul nom principal. Les autres noms, tels que ceux utilisés pour référence intelligente, sont définis pour être identiques (en particulier, pour référence intelligente, les noms singulier et pluriel ne seront pas distingués). Lorsque \meta{language name} n'est pas spécifié, le nom sera défini pour toutes les langues prises en charge. De plus, les environnements avec ou sans astérisque partagent le même nom, donc, \lstinline|\NameTheorem{envname*}| a le même effet que \lstinline|\NameTheorem{envname}| .
\end{itemize}
- \item Paramètres détaillés (recommandés) :
+ \item Paramètres détaillés (recommandés) :
\begin{code}
\NameTheorem{(*\meta{name of environment}*)}{
(*\meta{language name 1}*)={
@@ -1275,7 +1275,7 @@ ou
}
\end{code}
\begin{itemize}
- \item Cette approche définit tous les noms. Lorsque \meta{language name} n'est pas spécifié, l'interface complète sera activée ; lorsqu'il est spécifié, seuls les noms de la langue correspondante sont définis. De même, les environnements avec ou sans astérisque partagent le même nom, donc \lstinline|\NameTheorem{envname*}| a le même effet que \lstinline|\NameTheorem{envname}| .
+ \item Cette approche définit tous les noms. Lorsque \meta{language name} n'est pas spécifié, l'interface complète sera activée ; lorsqu'il est spécifié, seuls les noms de la langue correspondante sont définis. De même, les environnements avec ou sans astérisque partagent le même nom, donc \lstinline|\NameTheorem{envname*}| a le même effet que \lstinline|\NameTheorem{envname}| .
\end{itemize}
\end{itemize}
@@ -1283,7 +1283,7 @@ ou
De plus, vous pouvez également nommer un environnement de type théorème tout en le définissant, voir la description de \lstinline|\CreateTheorem| plus tard.
\end{tip}
-Ensuite, créez cet environnement de l'une des cinq manières suivantes :
+Ensuite, créez cet environnement de l'une des cinq manières suivantes :
\vspace{-.3\baselineskip}
\begin{itemize}
\item \lstinline|\CreateTheorem*{|\meta{name of environment}\lstinline|}|
@@ -1319,7 +1319,7 @@ Ensuite, créez cet environnement de l'une des cinq manières suivantes :
\end{tip}
\bigskip
-Vous pouvez également nommer un environnement de type théorème lors de sa définition, en ajoutant ensuite un groupe de parenthèses contenant les paramètres :
+Vous pouvez également nommer un environnement de type théorème lors de sa définition, en ajoutant ensuite un groupe de parenthèses contenant les paramètres :
\begin{code}
\CreateTheorem{(*\meta{name of environment}*)}{
(*\meta{language name 1}*)={
@@ -1344,7 +1344,7 @@ Voici un exemple. Le code suivant :
\CreateTheorem*{proofidea*}
\CreateTheorem{proofidea}<subsection>
\end{code}
-définit un environnement non numéroté \lstinline|proofidea*| et un environnement numéroté \lstinline|proofidea| (numérotés dans la sous-section) respectivement. Ils peuvent être utilisés dans le contexte français. L'effet est le suivant (le style réel est lié à votre classe de document) :
+définit un environnement non numéroté \lstinline|proofidea*| et un environnement numéroté \lstinline|proofidea| (numérotés dans la sous-section) respectivement. Ils peuvent être utilisés dans le contexte français. L'effet est le suivant (le style réel est lié à votre classe de document) :
\begin{proofidea*}
La environnement \lstinline|proofidea*| .
@@ -1355,7 +1355,7 @@ définit un environnement non numéroté \lstinline|proofidea*| et un environnem
\end{proofidea}
\medskip
-Bien sûr, vous pouvez également utiliser un ensemble de nom plus détaillé :
+Bien sûr, vous pouvez également utiliser un ensemble de nom plus détaillé :
\begin{code}
\NameTheorem{proofidea}{
FR = {
@@ -1367,7 +1367,7 @@ Bien sûr, vous pouvez également utiliser un ensemble de nom plus détaillé :
\CreateTheorem*{proofidea*}
\CreateTheorem{proofidea}<subsection>
\end{code}
-ou définissez les noms en les définissant (pour \lstinline|proofidea*| et \lstinline|proofidea|, définir une fois suffit) :
+ou définissez les noms en les définissant (pour \lstinline|proofidea*| et \lstinline|proofidea|, définir une fois suffit) :
\begin{code}
\CreateTheorem*{proofidea*}
\CreateTheorem{proofidea}<subsection>{
@@ -1453,7 +1453,7 @@ In addition, you can use the option \texttt{amsfashion} to enable the \AmS{} fas
%</ProjLib-doc-en>
%
%<*ProjLib-doc-fr>
-\subsubsection{PJLauthor : bloc auteur amélioré}
+\subsubsection{PJLauthor : bloc auteur amélioré}
\PJLauthor{} propose les macros \lstinline|\address|, \lstinline|\curraddr| et \lstinline|\email|, et vous permet de saisir plusieurs groupes d'informations sur l'auteur. L'utilisation standard est comme ceci :
\begin{code}
@@ -1483,7 +1483,8 @@ De plus, vous pouvez utiliser l'option \texttt{amsfashion} pour écrire à la ma
%<*ProjLib-doc-cn>
\subsubsection{PJLdate:智能日期处理}
-\PJLdatePackage{} 提供了 \lstinline|\PLdate|\meta{yyyy-mm-dd} (或 \lstinline|\PJLdate|\meta{yyyy-mm-dd}) 命令,以将 \meta{yyyy-mm-dd} 转换为当前语言的日期格式显示。例如,在当前的中文语境下,\lstinline|\PLdate{2022-04-01}| 会被显示为“\PJLdate{2022-04-01}”,而在英文语境下则会被显示为“\UseOtherLanguage{English}{\PJLdate{2022-04-01}}”。
+\PJLdatePackage{} 提供了 \lstinline|\TheDate|\meta{yyyy-mm-dd} 命令,以将 \meta{yyyy-mm-dd} 转换为当前语言的日期格式显示。例如,在当前的中文语境下,\lstinline|\TheDate{2022-04-01}| 会被显示为“\TheDate{2022-04-01}”,而在英文语境下则会被显示为“\UseOtherLanguage{English}{\TheDate{2022-04-01}}”。
+% 也可使用名称 \lstinline|\PJLdate| 或 \lstinline|\PLdate|,与\lstinline|\TheDate| 效果是相同的。
关于如何选定语言,请参阅关于 \PJLlang{} 的小节。
%</ProjLib-doc-cn>
@@ -1491,15 +1492,17 @@ De plus, vous pouvez utiliser l'option \texttt{amsfashion} pour écrire à la ma
%<*ProjLib-doc-en>
\subsubsection{PJLdate: date-time processing}
-\PJLdatePackage{} offers the \lstinline|\PLdate|\meta{yyyy-mm-dd} (or \lstinline|\PJLdate|\meta{yyyy-mm-dd}) macro to convert \meta{yyyy-mm-dd} into the date format of the currently selected language. For example, in current English context, \lstinline|\PLdate{2022-04-01}| would become ``\PLdate{2022-04-01}'', while in French context as ``\UseOtherLanguage{French}{\PLdate{2022-04-01}}''.
+\PJLdatePackage{} offers the macro \lstinline|\TheDate|\meta{yyyy-mm-dd} to convert \meta{yyyy-mm-dd} into the date format of the currently selected language. For example, in current English context, \lstinline|\TheDate{2022-04-01}| would become ``\TheDate{2022-04-01}'', while in French context as ``\UseOtherLanguage{French}{\TheDate{2022-04-01}}''.
+% Alternatively, you can use the macro names \lstinline|\PJLdate| or \lstinline|\PLdate|, which are the same as \lstinline|\TheDate|.
For details on how to select a language, please refer to the section on \PJLlang{}.
%</ProjLib-doc-en>
%
%<*ProjLib-doc-fr>
-\subsubsection{PJLdate : traitement de date-heure}
+\subsubsection{PJLdate : traitement de date-heure}
-\PJLdatePackage{} propose la macro \lstinline|\PLdate|\meta{yyyy-mm-dd} (ou \lstinline|\PJLdate|\meta{yyyy-mm-dd}) pour convertir \meta{yyyy-mm-dd} dans le format de date de la langue actuellement sélectionnée. Par exemple, dans le contexte français actuel, \lstinline|\PLdate{2022-04-01}| deviendrait «~\PLdate{2022-04-01}~», tandis que dans le contexte anglais «~\UseOtherLanguage{English}{\PLdate{2022-04-01}}~».
+\PJLdatePackage{} propose la macro \lstinline|\TheDate|\meta{yyyy-mm-dd} pour convertir \meta{yyyy-mm-dd} dans le format de date de la langue actuellement sélectionnée. Par exemple, dans le contexte français actuel, \lstinline|\TheDate{2022-04-01}| deviendrait «~\TheDate{2022-04-01}~», tandis que dans le contexte anglais «~\UseOtherLanguage{English}{\TheDate{2022-04-01}}~».
+% Vous pouvez également utiliser les noms \lstinline|\PJLdate| ou \lstinline|\PLdate|, qui sont identiques à \lstinline|\TheDate|.
Pour plus de détails sur la façon de sélectionner une langue, veuillez vous référer à la section sur \PJLlang{}.
%</ProjLib-doc-fr>
@@ -1529,9 +1532,9 @@ For details on how to select a language, please refer to the section on \PJLlang
%</ProjLib-doc-en>
%
%<*ProjLib-doc-fr>
-\subsubsection{PJLdraft : marques de brouillon}
+\subsubsection{PJLdraft : marques de brouillon}
-\PJLdraft{} propose les macros suivantes :
+\PJLdraft{} propose les macros suivantes :
\begin{itemize}
\item \lstinline|\dnf| ou \lstinline|\dnf<...>|. L'effet est : \dnf~ ou \dnf<...>. \\Le texte à l'intérieur changera en fonction de la langue actuelle. Par exemple, il sera affiché sous la forme \UseOtherLanguage{English}{\dnf} en mode anglais.
\item \lstinline|\needgraph| ou \lstinline|\needgraph<...>|. L'effet est : \needgraph ou \needgraph<...>Le texte de l'invite change en fonction de la langue actuelle. Par exemple, en mode anglais, il sera affiché sous la forme \UseOtherLanguage{English}{\needgraph}
@@ -1713,11 +1716,11 @@ These shortcuts and symbols are defined in such a way that they will not conflic
%</ProjLib-doc-en>
%
%<*ProjLib-doc-fr>
-\subsubsection{PJLmath : symboles et raccourcis mathématiques}
+\subsubsection{PJLmath : symboles et raccourcis mathématiques}
-\PJLmath{} propose les raccourcis suivants :
+\PJLmath{} propose les raccourcis suivants :
\begin{enumerate}[label=\roman*)]
- \item \lstinline|\mathfrak{|$\cdot$\lstinline|}| $\longrightarrow$ \lstinline|\mf|$\cdot$ ou \lstinline|\frak|$\cdot$ . Par exemple, \lstinline|\mfA| (ou \lstinline|\mf{A}|) a le même effet que \lstinline|\mathfrak{A}|. Cela fonctionne à la fois pour l'alphabet majuscule et minuscule, produisant :
+ \item \lstinline|\mathfrak{|$\cdot$\lstinline|}| $\longrightarrow$ \lstinline|\mf|$\cdot$ ou \lstinline|\frak|$\cdot$ . Par exemple, \lstinline|\mfA| (ou \lstinline|\mf{A}|) a le même effet que \lstinline|\mathfrak{A}|. Cela fonctionne à la fois pour l'alphabet majuscule et minuscule, produisant :
\begin{align*}
\mfa\mfb\mfc\mfd\mfe\mff\mfg\mfh\mfi\mfj\mfk\mfl\mfm\mfn&\mfo\mfp\mfq\mfr\mfs\mft\mfu\mfv\mfw\mfx\mfy\mfz\\
\mfA\mfB\mfC\mfD\mfE\mfF\mfG\mfH\mfI\mfJ\mfK\mfL\mfM\mfN&\mfO\mfP\mfQ\mfR\mfS\mfT\mfU\mfV\mfW\mfX\mfY\mfZ
@@ -1867,10 +1870,10 @@ Il est recommandé de les passer comme options globales de la classe de document
\begin{itemize}[itemsep=.6em]
\item \PJLauthor{} est encore à son stade préliminaire, son effet n'est pas aussi bon que le \textsf{authblk} qui est relativement mature.
- \item \PJLlang{} : C'est encore assez problématique avec la configuration de \textsf{polyglossia}, donc les fonctionnalités principales sont implémentées via \textsf{babel} pour le moment.
+ \item \PJLlang{} : C'est encore assez problématique avec la configuration de \textsf{polyglossia}, donc les fonctionnalités principales sont implémentées via \textsf{babel} pour le moment.
\item \PJLpaper{} : l'option \texttt{preview} est principalement implémentée à l'aide du package \textsf{geometry}, elle ne fonctionne donc pas aussi bien dans les classes de documents \textsc{\textsf{Koma}}.
- \item \PJLthm{} : les paramètres de numérotation et de style théorème des environnements de type théorème ne sont actuellement pas accessibles à l'utilisateur.
- \item \PJLthm{} : la localisation de \textsf{cleveref} n'est pas encore finie pour toutes les langues prises en charge par \PJLlang{}, en particulier pour le chinois, le japonais et le russe.
+ \item \PJLthm{} : les paramètres de numérotation et de style théorème des environnements de type théorème ne sont actuellement pas accessibles à l'utilisateur.
+ \item \PJLthm{} : la localisation de \textsf{cleveref} n'est pas encore finie pour toutes les langues prises en charge par \PJLlang{}, en particulier pour le chinois, le japonais et le russe.
\item Le mécanisme de gestion des erreurs est incomplet : pas de messages correspondants lorsque certains problèmes surviennent.
\item Il y a encore beaucoup de choses qui peuvent être optimisées dans le code. Certains codes prennent trop de temps à s'exécuter, en particulier la configuration d'environnements de type théorème dans \PJLthm{}.
\end{itemize}
diff --git a/macros/latex/contrib/projlib/ProjLib.dtx b/macros/latex/contrib/projlib/ProjLib.dtx
index df6346d91f..adfc509e76 100644
--- a/macros/latex/contrib/projlib/ProjLib.dtx
+++ b/macros/latex/contrib/projlib/ProjLib.dtx
@@ -18,47 +18,47 @@
%
%<*ProjLib>
\ProvidesPackage{ProjLib}
- [2021/11/09 The collective interface of ProjLib toolkit]
+ [2021/12/16 The collective interface of ProjLib toolkit]
%</ProjLib>
%
%<*PJLauthor>
\ProvidesPackage{PJLauthor}
- [2021/11/09 Enhanced author information block]
+ [2021/12/16 Enhanced author information block]
%</PJLauthor>
%
%<*PJLdate>
\ProvidesPackage{PJLdate}
- [2021/11/09 Convert yyyy-mm-dd to normal datetime format]
+ [2021/12/16 Convert yyyy-mm-dd to normal datetime format]
%</PJLdate>
%
%<*PJLdraft>
\ProvidesPackage{PJLdraft}
- [2021/11/09 Some useful macros for the draft stage]
+ [2021/12/16 Some useful macros for the draft stage]
%</PJLdraft>
%
%<*PJLlang>
\ProvidesPackage{PJLlang}
- [2021/11/09 Multi-language configuration]
+ [2021/12/16 Multi-language configuration]
%</PJLlang>
%
%<*PJLlogo>
\ProvidesPackage{PJLlogo}
- [2021/11/09 The ProjLib logo]
+ [2021/12/16 The ProjLib logo]
%</PJLlogo>
%
%<*PJLmath>
\ProvidesPackage{PJLmath}
- [2021/11/09 Useful math macros and shortcuts]
+ [2021/12/16 Useful math macros and shortcuts]
%</PJLmath>
%
%<*PJLpaper>
\ProvidesPackage{PJLpaper}
- [2021/11/09 Paper style configuration]
+ [2021/12/16 Paper style configuration]
%</PJLpaper>
%
%<*PJLthm>
\ProvidesPackage{PJLthm}
- [2021/11/09 Theorem setup and configuration]
+ [2021/12/16 Theorem setup and configuration]
%</PJLthm>
%
%# 下面两行引入宏包的代码是所有文件共用的。
@@ -380,8 +380,9 @@
\if@PJLdate@draft
\@PJLdate@fasttrue
\fi
-%# 将 PJLdate 与 PLdate 等同
-%# To make PLdate and PJLdate equivalent
+%# 定义 \PJLdate 的同义指令
+%# Define synonym macros of \PJLdate
+\DeclareDocumentCommand{\TheDate}{}{\PJLdate}
\DeclareDocumentCommand{\PLdate}{}{\PJLdate}
%# 快速模式下直接输出原日期字符串
%# Directly output the original date string in fast mode
@@ -3677,10 +3678,6 @@
%# 使用 microtype 优化排版细节
%# Use `microtype` to get details better
\RequirePackage{microtype}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\bfseries\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\sffamily\scshape}\microtypesetup{reactivate}}}
-\AtEndPreamble{\AtBeginDocument{\microtypesetup{deactivate}{\ttfamily\scshape}\microtypesetup{reactivate}}}
%</ProjLib>
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/spbmark/spbmark.pdf b/macros/latex/contrib/spbmark/spbmark.pdf
index 2bdd91a752..a7d8f24997 100644
--- a/macros/latex/contrib/spbmark/spbmark.pdf
+++ b/macros/latex/contrib/spbmark/spbmark.pdf
Binary files differ
diff --git a/macros/latex/contrib/spbmark/spbmark.sty b/macros/latex/contrib/spbmark/spbmark.sty
index 099f871f20..37be59700c 100644
--- a/macros/latex/contrib/spbmark/spbmark.sty
+++ b/macros/latex/contrib/spbmark/spbmark.sty
@@ -9,7 +9,7 @@
% https://creativecommons.org/licenses/by/4.0/legalcode
\NeedsTeXFormat{LaTeX2e}[2018/12/31]
\RequirePackage{xparse,l3keys2e}
-\ProvidesExplPackage{spbmark}{2021/12/15}{1.2}
+\ProvidesExplPackage{spbmark}{2021/12/15}{1.2A}
{Customize superscripts and subscripts}
\cs_generate_variant:Nn \dim_max:nn { VV }
@@ -128,6 +128,18 @@
\use:c { hbox_overlap_#1:n }
{ \spb_boxb_move_down:V \l__spb_supersub_vsep_dim }
}
+\cs_set_eq:NN \spb@textsuperscript@save \textsuperscript
+\cs_set_eq:NN \spb@textsubscript@save \textsubscript
+\cs_set_eq:NN \spb@sp@save \sp
+\cs_set_eq:NN \spb@sb@save \sb
+\cs_new:Npn \spb_math:nn #1
+ {
+ \str_case:nn {#1}
+ {
+ { super } { \spb@sp@save }
+ { sub } { \spb@sb@save }
+ }
+ }
\cs_new:Npn \spb_math_print_store_i:nn #1#2
{
\hbox_set:Nn \l_tmpa_box
@@ -163,18 +175,6 @@
{ \spb@textsubscript@save{#2} }
}
}
-\cs_set_eq:NN \spb@textsuperscript@save \textsuperscript
-\cs_set_eq:NN \spb@textsubscript@save \textsubscript
-\cs_set_eq:NN \spb@sp@save \sp
-\cs_set_eq:NN \spb@sb@save \sb
-\cs_new:Npn \spb_math:nn #1
- {
- \str_case:nn {#1}
- {
- { super } { \spb@sp@save }
- { sub } { \spb@sb@save }
- }
- }
\cs_new_protected:Npn \spb_box_ht_dp_assign:nn #1#2
{
\tl_if_empty:nF {#1} { \box_set_ht:Nn \l_tmpb_box {#1} }
diff --git a/macros/latex/contrib/spbmark/spbmark.tex b/macros/latex/contrib/spbmark/spbmark.tex
index 9387433d0f..8a4e5d9a92 100644
--- a/macros/latex/contrib/spbmark/spbmark.tex
+++ b/macros/latex/contrib/spbmark/spbmark.tex
@@ -6,7 +6,7 @@
{
package = spbmark,
title = the spbmark package,
- version = v1.2,
+ version = v1.2A,
date = 2021/12/15,
authors = Qu Yi,
info = Customize superscript and subscript,
@@ -104,9 +104,9 @@ The following list of keys control the format both of superscript or subscript.
Cancel the horizontal offset of superscript and subscript at the same time.
\opt{novshift}\Default!
Cancel the vertical offset of superscript and subscript at the same time.
- \keyval{spcmd}{format code}\Default
+ \keyval{spcmd}{format cmds}\Default
Control the format of superscript, the last command in the code can take an argument, which is a superscript.
- \keyval{sbcmd}{format code}\Default
+ \keyval{sbcmd}{format cmds}\Default
Control the format of subscript, the last command in the code can take an argument, which is a subscript.
\end{options}
@@ -116,8 +116,8 @@ The following list of keys control the format of superscript and subscript.
\begin{options}
\keyval{spbhshift}{fixed length}\Default{0pt}
Extra vertical shift of the superscript and the subscript.
- \kvsplit{spbcmd}{super code}{sub code}\Default
- Control the format of superscript or subscript. The first part is in superscript format, and the latter part is in subscript format. The two are separated by commas, or only the first part exists.
+ \kvsplit{spbcmd}{super cmds}{sub cmds}\Default
+ Control the format of superscript or subscript. The first part is in superscript format, and the latter part is in subscript format. They are separated by commas, or only the first part exists.
\keyval{vsep}{fixed length}\Default{0.3ex}
The distance between superscript and subscript, its default value is \code{0.3ex}.
\keychoice{halign}{l,c,r}\Default{l}
@@ -147,9 +147,9 @@ It can also be used with the \pkg*{siunitx} package to output superscript and su
If you need to use the original definitions of \cs{textsuperscript}, \cs{textsubscript}, \cs{sp} and \cs{sb} after using the \option{text} or \option{math} option, then you can use the following commands:
\begin{commands}
\command{spb@textsuperscript@save}[\marg{content}]
- Save the original definition of the \cs{textsuperscript} command, output superscript in the text.
+ Save the original definition of the \cs{textsuperscript} command, output superscript in the text mode.
\command{spb@textsubscript@save}[\marg{content}]
- Save the original definition of the \cs{textsubscript} command, output subscript in the text.
+ Save the original definition of the \cs{textsubscript} command, output subscript in the text mode.
\command{spb@sp@save}[\marg{content}]
Save the original definition of the \cs{sp} command, output superscript in the math mode.
\command{spb@sb@save}[\marg{content}]
diff --git a/macros/latex/contrib/tcolorbox/CHANGES b/macros/latex/contrib/tcolorbox/CHANGES.md
index a8166b7894..382ed3d10b 100644
--- a/macros/latex/contrib/tcolorbox/CHANGES
+++ b/macros/latex/contrib/tcolorbox/CHANGES.md
@@ -1,21 +1,166 @@
-%% The LaTeX package tcolorbox - version 4.51 (2021/06/14)
-%%
-%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2021 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
-%% of this license or (at your option) any later version.
-%% The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2005/12/01 or later.
-%%
-%% This work has the LPPL maintenance status `author-maintained'.
-%%
-%% This work consists of all files listed in README
-%%
+# Changelog
+All notable changes to this project will be documented in this file.
+
+The format is based on
+[Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
+and this project adheres to
+[Semantic Versioning](http://semver.org/spec/v2.0.0.html).
+
+## [Unreleased]
+
+### Added
+
+### Changed
+
+### Deprecated
+
+### Removed
+
+### Fixed
+
+### Security
+
+
+
+## [5.0.0] - 2021-12-16
+
+### Added
+- Library `skins`: Option `attach boxed title to top text left`
+- Library `skins`: Option `attach boxed title to top text right`
+- Library `skins`: Option `attach boxed title to bottom text left`
+- Library `skins`: Option `attach boxed title to bottom text right`
+- Library `theorems`: Option `theorem number`
+- Library `minted`: Option `default minted options`
+- Library `minted`: Temporary patch `\tcbTemporaryPatchMintedFancyvrb`
+ for the current minted/fancyvrb package clash (issue #158)
+
+### Changed
+- Changelog is switched to Markdown for entries from 2021 on
+ [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
+- From now on version numbers adhere to
+ [Semantic Versioning](http://semver.org/spec/v2.0.0.html)
+- Library `documentation`: warn about not installed `marvosym` and `pifont` (issue #153)
+- Environments wrapped with `\tcolorboxenvironment` are now compatible with
+ all three capture modes `minipage`, `hbox`, and `fitbox` (issue #154)
+- Meaningful error prompts when using unknown capture modes (issue #156)
+- Library `raster`: Inside a raster, `tcbrasternum` can now be
+ referenced using `label={mylabel}`, if the box is not numbered otherwise (issue #81 and #119)
+- Library `theorem`: Theorems with empty display name are now possible without glitches
+- Library `theorem`: Major code parts rewritten in expl3 code
+- Internal layer accounting changed from LaTeX to TeX code to avoid problems with counter macro
+ manipulations by amsmath alignment environments (issue #160)
+- Library `minted`: Option `minted options` now initialized with `default minted options`
+- Library `minted`: Code parts rewritten in expl3 code
+
+### Removed
+- Library 'theorems': `\tcbmaketheorem` removed which is deprecated since version 2.40 (2013/07/15).
+ Use `\newtcbtheorem` instead.
+
+### Fixed
+- Library `documentation`: Inconsistent local/global assignment corrected (issue #144)
+- Documentation: Changed bibtex link corrected (issue #145)
+- Library `breakable`: Option `use color stack` was order dependant (issue #157)
+- Library `raster`: Numbering for rasters inside rasters
+- In certain situations options were set twice
+
+
+
+## [4.51] - 2021-06-14
+
+### Changed
+- Library `documentation`: Package loading of `marvosym` and `pifont`
+ removed. Symbols are accessed directly now by `documentation`.
+
+### Fixed
+- Allocation error for write registers
+
+
+
+## [4.50] - 2021-05-21
+
+### Added
+- Library `skins`: Option `opacitybacklower`
+- Library `skins`: Option `bicolor jigsaw`
+- Library `skins`: Option `bicolorfirst jigsaw`
+- Library `skins`: Option `bicolormiddle jigsaw`
+- Library `skins`: Option `bicolorlast jigsaw`
+- Library `theorems`: Option `theorem hanging indent` (issue #126)
+
+### Changed
+- Documentation: Using group around arguments for title in the examples (issue #125)
+- Documentation: Recommend to use initialization options after loading hyperref (issue #135)
+- Documentation: Warn user about white title color becoming invisible
+ for the skin `empty` (issue #118)
+- Documentation: Corrections (issue #127)
+- Documentation of library `skins` is split into a general part and the catalog of skins
+- Allocate write registers `\tcb@out` and `\tcb@record@out` only when needed (issue #134)
+- `\tcblistof` enhanced to take an optional short title and mimic
+ `\listoffigures` where applicable (issue #124)
+- Library `skins`: Implementation of bicolor overhauled
+- Skin documentation complemented with sidebyside examples
+- Library `vignette`: Documentation examples for fading styles for every side added (issue #136)
+- Library `raster`: `\thetcbrasternum` changed to output the content of a counter (issue #119)
+- LaTeX counter `tcbrasterrow`, `tcbrastercolumn`, `tcbrasternum` documented.
+
+
+
+## [4.42] - 2020-10-09
+
+### Added
+- Library `breakble`: Option `use color stack`
+
+### Changed
+- Due to several problems with the color algorithm introduced with version 4.32,
+ essentially reversion to the proven pre 4.32 method.
+ - support of luacolor persists (since 4.32)
+ - color stacks (by pdfcol) are not mandatory any more,
+ but are optional now with `use color stack`. Note that effects of whatsits
+ on the vertical space have to be expected.
+
+
+
+## [4.41] - 2020-09-29
+
+### Fixed
+- Color bleeding for xelatex and breakable boxes (since 4.32) (issue #120)
+
+
+
+## [4.40] - 2020-09-25
+
+### Added
+- Support `hbox` for `minted` listings (issue #2)
+- New default vertical space options (issue #115)
+ - Option `before skip balanced`
+ - Option `after skip balanced`
+ - Option `beforeafter skip balanced`
+ - NOTE: These options replace the current default options
+ `parskip`, `noparskip`, `autoparskip`
+ - WARNING: Old documents may need adapted manual page breaks where used.
+ Otherwise: Use `\tcbsetforeverylayer{autoparskip}`
+ to restore the old behavior!
+
+### Changed
+- `capture=hbox` applies `\@parboxrestore` now to allow e.g. hbox style
+ listings inside indented environments like itemize (issue #113)
+- `before skip` and `before skip balanced` do not insert glue now, if
+ the tcolorbox is the first element in a minipage (or sourrounding tcolorbox)
+
+### Deprecated
+- Option `parskip`
+- Option `noparskip`
+- Option `autoparskip`
+
+### Fixed
+- `IfBooleanT`, `IfBooleanF` (issue #114)
+- `widget` set `toprule at break` and needed the breakable library (issue #117)
+- `marker` set `breakable` and needed the breakable library
+
+
+
+The following entries are following the old style (no Markdown, switched timeflow)
+==================================================================================
+
(2006-2011): pre publication usage
@@ -1165,62 +1310,3 @@ version 4.32 (2020/09/17)
* new options (#111): 'IfNoValueT', 'IfNoValueF', 'IfValueT', 'IfValueF',
'IfBooleanT', 'IfBooleanF'
-version 4.40 (2020/09/25)
-- bug fix (#114): 'IfBooleanT', 'IfBooleanF'
-- bug fix (#117): 'widget' set 'toprule at break' and needed the breakable library
-- (bug) fix: style 'marker' set 'breakable' and needed the breakable library
-- (#113) 'capture=hbox' applies '\@parboxrestore' now to allow e.g. hbox style
- listings inside indented environments like itemize
-- (#2) support 'hbox' for 'minted' listings
-- (#115) New default vertical space options
- 'before skip balanced', 'after skip balanced', 'beforeafter skip balanced'
- NOTE: These options replace the current default options
- 'parskip', 'noparskip', 'autoparskip'
- WARNING: Old documents may need adapted manual page breaks where used.
- Otherwise: Use \tcbsetforeverylayer{autoparskip}
- to restore the old behavior!
-- 'before skip' and 'before skip balanced' do not insert glue now, if
- the tcolorbox is the first element in a minipage (or sourrounding tcolorbox)
-
-version 4.41 (2020/09/29)
-- bug fix (#120): color bleeding for xelatex and breakable boxes (since 4.32)
-
-version 4.42 (2020/10/09)
-- due to several problems with the color algorithm introduced with version 4.32,
- essentially reversion to the proven pre 4.32 method.
- * support of luacolor persists (since 4.32)
- * color stacks (by pdfcol) are not mandatory any more,
- but are optional now with 'use color stack'. Note that effects of whatsits
- on the vertical space have to be expected.
-
-version 4.50 (2021/05/21)
-- bug fix (#128): 'tcbincludepdf' ignored some raster options
-- bug fix (#138): visible seam for 'bicolor' and 'tile' in 'sidebyside' mode
- around the lower (i.e. rightward) part
-- (#125) Using group around arguments for title in the examples
-- (#134) Allocate write registers \tcb@out and \tcb@record@out only when needed
-- (#135) Documentation: recommend to use initialization options after loading hyperref
-- (#118) Documentation: warn user about white title color becoming invisible
- for the skin 'empty'
-- documentation correction (#127)
-- documentation of library skins is split into a general part and the catalog of skins
-- (#124) '\tcblistof' enhanced to take an optional short title and mimic
- '\listoffigures' where applicable
-- library 'skins':
- * new option 'opacitybacklower'
- * new jigsaw variant of 'bicolor':
- 'bicolor jigsaw', 'bicolorfirst jigsaw', 'bicolormiddle jigsaw', 'bicolorlast jigsaw'
- * implementation of bicolor overhauled
- * skin documentation complemented with sidebyside examples.
-- library 'theorems':
- * (#126) new option 'theorem hanging indent'
-- library 'vignette':
- * (#133) documentation examples for fading styles for every side added
-- library 'raster':
- * (#119) '\thetcbrasternum' changed output the content of a counter.
- LaTeX counter 'tcbrasterrow', 'tcbrastercolumn', 'tcbrasternum' documented.
-
-version 4.51 (2021/06/14)
-- bug fix: allocation error for write registers
-- (#139) library 'documentation': package loading of 'marvosym' and 'pifont'
- removed. Symbols are accessed directly now by 'documentation'.
diff --git a/macros/latex/contrib/tcolorbox/README b/macros/latex/contrib/tcolorbox/README
deleted file mode 100644
index 5f0ebb3370..0000000000
--- a/macros/latex/contrib/tcolorbox/README
+++ /dev/null
@@ -1,95 +0,0 @@
-%% The LaTeX package tcolorbox - version 4.51 (2021/06/14)
-%%
-%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2021 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
-%% of this license or (at your option) any later version.
-%% The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2005/12/01 or later.
-%%
-%% This work has the LPPL maintenance status `author-maintained'.
-%%
-%% This work consists of all files listed in README
-%%
-
-tcolorbox provides an environment for colored and framed text boxes with a
-heading line. Optionally, such a box can be split in an upper and a lower
-part. The package tcolorbox can be used for the setting of LaTeX examples where
-one part of the box displays the source code and the other part shows the
-output. Another common use case is the setting of theorems. The package supports
-saving and reuse of source code and text parts.
-
-Contents of the package
-=======================
- 'README' this file
- 'CHANGES' log of changes (history)
- 'tcolorbox.sty' LaTeX package file (style file)
- 'tcbbreakable.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbdocumenation.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbexternal.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbfitting.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbhooks.code.tex' LaTeX package file (library of tcolorbox)
- 'tcblistings.code.tex' LaTeX package file (library of tcolorbox)
- 'tcblistingscore.code.tex' LaTeX package file (library of tcolorbox)
- 'tcblistingsutf8.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbmagazine.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbminted.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbposter.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbprocessing.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbraster.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbskins.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbskinsjigsaw.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbtheorems.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbvignette.code.tex' LaTeX package file (library of tcolorbox)
- 'tcbxparse.code.tex' LaTeX package file (library of tcolorbox)
- 'blueshade.png' Picture (package)
- 'crinklepaper.png' Picture (package)
- 'goldshade.png' Picture (package)
- 'pink_marble.png' Picture (package)
- 'tcolorbox.pdf' Documentation for tcolorbox
- 'tcolorbox.tex' Source code of the documentation (main file)
- '*.doc.*' Source code of the documentation (include files)
- 'tcolorbox-tutorial-poster.pdf' Tutorial for poster creation
- 'tcolorbox-tutorial-poster.tex' Source code of the tutorial
- 'tcolorbox-example.tex' Example file for package usage
- 'tcolorbox-example.pdf' Compiled example
- 'tcolorbox-example-poster.tex' Example file for package usage
- 'tcolorbox-example-poster.pdf' Compiled example
- 'Basilica_5.png' Example picture
- 'lichtspiel.jpg' Example picture
-
-Installation
-============
-Copy the contents of the 'tcolorbox.tds.zip' from CTAN to your local TeX file tree.
-
-Alternatively, put the files to their respective locations within the TeX installation:
- 'tcolorbox.sty' -> /tex/latex/tcolorbox
- 'tcbbreakable.code.tex' -> /tex/latex/tcolorbox
- 'tcbdocumenation.code.tex' -> /tex/latex/tcolorbox
- 'tcbexternal.code.tex' -> /tex/latex/tcolorbox
- 'tcbfitting.code.tex' -> /tex/latex/tcolorbox
- 'tcbhooks.code.tex' -> /tex/latex/tcolorbox
- 'tcblistings.code.tex' -> /tex/latex/tcolorbox
- 'tcblistingscore.code.tex' -> /tex/latex/tcolorbox
- 'tcblistingsutf8.code.tex' -> /tex/latex/tcolorbox
- 'tcbmagazine.code.tex' -> /tex/latex/tcolorbox
- 'tcbminted.code.tex' -> /tex/latex/tcolorbox
- 'tcbposter.code.tex' -> /tex/latex/tcolorbox
- 'tcbprocessing.code.tex' -> /tex/latex/tcolorbox
- 'tcbraster.code.tex' -> /tex/latex/tcolorbox
- 'tcbskins.code.tex' -> /tex/latex/tcolorbox
- 'tcbskinsjigsaw.code.tex' -> /tex/latex/tcolorbox
- 'tcbtheorems.code.tex' -> /tex/latex/tcolorbox
- 'tcbvignette.code.tex' -> /tex/latex/tcolorbox
- 'tcbxparse.code.tex' -> /tex/latex/tcolorbox
- 'blueshade.png' -> /tex/latex/tcolorbox
- 'crinklepaper.png' -> /tex/latex/tcolorbox
- 'goldshade.png' -> /tex/latex/tcolorbox
- 'pink_marble.png' -> /tex/latex/tcolorbox
-
- all other files -> /doc/latex/tcolorbox
diff --git a/macros/latex/contrib/tcolorbox/README.md b/macros/latex/contrib/tcolorbox/README.md
new file mode 100644
index 0000000000..7948f69f80
--- /dev/null
+++ b/macros/latex/contrib/tcolorbox/README.md
@@ -0,0 +1,96 @@
+# The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
+
+
+> Copyright (c) 2006-2021 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
+> of this license or (at your option) any later version.
+> The latest version of this license is in
+> http://www.latex-project.org/lppl.txt
+> and version 1.3 or later is part of all distributions of LaTeX
+> version 2005/12/01 or later.
+
+> This work has the LPPL maintenance status author-maintained.
+
+> This work consists of all files listed in README.md
+
+
+`tcolorbox` provides an environment for colored and framed text boxes with a
+heading line. Optionally, such a box can be split in an upper and a lower
+part. The package `tcolorbox` can be used for the setting of *LaTeX* examples where
+one part of the box displays the source code and the other part shows the
+output. Another common use case is the setting of theorems. The package supports
+saving and reuse of source code and text parts.
+
+
+## Contents of the package
+
+- `README.md` this file
+- `CHANGES.md` log of changes (history)
+- `tcolorbox.sty` LaTeX package file (style file)
+- `tcbbreakable.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbdocumenation.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbexternal.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbfitting.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbhooks.code.tex` LaTeX package file (library of tcolorbox)
+- `tcblistings.code.tex` LaTeX package file (library of tcolorbox)
+- `tcblistingscore.code.tex` LaTeX package file (library of tcolorbox)
+- `tcblistingsutf8.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbmagazine.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbminted.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbposter.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbprocessing.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbraster.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbskins.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbskinsjigsaw.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbtheorems.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbvignette.code.tex` LaTeX package file (library of tcolorbox)
+- `tcbxparse.code.tex` LaTeX package file (library of tcolorbox)
+- `blueshade.png` Picture (package)
+- `crinklepaper.png` Picture (package)
+- `goldshade.png` Picture (package)
+- `pink_marble.png` Picture (package)
+- `tcolorbox.pdf` Documentation for tcolorbox
+- `tcolorbox.tex` Source code of the documentation (main file)
+- `*.doc.*` Source code of the documentation (include files)
+- `tcolorbox-tutorial-poster.pdf` Tutorial for poster creation
+- `tcolorbox-tutorial-poster.tex` Source code of the tutorial
+- `tcolorbox-example.tex` Example file for package usage
+- `tcolorbox-example.pdf` Compiled example
+- `tcolorbox-example-poster.tex` Example file for package usage
+- `tcolorbox-example-poster.pdf` Compiled example
+- `Basilica_5.png` Example picture
+- `lichtspiel.jpg` Example picture
+
+
+## Installation
+
+Copy the contents of the `tcolorbox.tds.zip` from CTAN to your local TeX file tree.
+
+Alternatively, put the files to their respective locations within the TeX installation:
+
+- `tcolorbox.sty` -> /tex/latex/tcolorbox
+- `tcbbreakable.code.tex` -> /tex/latex/tcolorbox
+- `tcbdocumenation.code.tex` -> /tex/latex/tcolorbox
+- `tcbexternal.code.tex` -> /tex/latex/tcolorbox
+- `tcbfitting.code.tex` -> /tex/latex/tcolorbox
+- `tcbhooks.code.tex` -> /tex/latex/tcolorbox
+- `tcblistings.code.tex` -> /tex/latex/tcolorbox
+- `tcblistingscore.code.tex` -> /tex/latex/tcolorbox
+- `tcblistingsutf8.code.tex` -> /tex/latex/tcolorbox
+- `tcbmagazine.code.tex` -> /tex/latex/tcolorbox
+- `tcbminted.code.tex` -> /tex/latex/tcolorbox
+- `tcbposter.code.tex` -> /tex/latex/tcolorbox
+- `tcbprocessing.code.tex` -> /tex/latex/tcolorbox
+- `tcbraster.code.tex` -> /tex/latex/tcolorbox
+- `tcbskins.code.tex` -> /tex/latex/tcolorbox
+- `tcbskinsjigsaw.code.tex` -> /tex/latex/tcolorbox
+- `tcbtheorems.code.tex` -> /tex/latex/tcolorbox
+- `tcbvignette.code.tex` -> /tex/latex/tcolorbox
+- `tcbxparse.code.tex` -> /tex/latex/tcolorbox
+- `blueshade.png` -> /tex/latex/tcolorbox
+- `crinklepaper.png` -> /tex/latex/tcolorbox
+- `goldshade.png` -> /tex/latex/tcolorbox
+- `pink_marble.png` -> /tex/latex/tcolorbox
+- all other files -> /doc/latex/tcolorbox
diff --git a/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex b/macros/latex/contrib/tcolorbox/tcbbreakable.code.tex
index 90724439f4..9b51bcdc38 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbbreakable.code.tex: Code for breakable colorboxes
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\RequirePackage{pdfcol}
\pdfcolInitStack{tcb@breakable}
@@ -912,7 +912,7 @@
}
-\def\tcb@init@breakability{%
+\def\tcb@init@breakable{%
\let\tcb@savebox=\tcb@vbox%
\let\endtcb@savebox=\endtcb@vbox%
\let\tcb@drawcolorbox=\tcb@drawcolorbox@breakable%
@@ -927,16 +927,16 @@
\tcbset{%
breakable@true/.code={%
- \tcb@init@breakability%
+ \tcb@isbreakabletrue%
\let\tcb@defToTotalHeight=\tcb@defToTotalHeightBreakable},
breakable@unlimited/.code={%
- \tcb@init@breakability%
+ \tcb@isbreakabletrue%
\let\tcb@defToTotalHeight=\tcb@defToTotalHeightUnlimited},
breakable/.style={breakable@#1},
breakable/.default=true,%
unbreakable/.style={breakable=false},%
enforce breakable/.code={%
- \tcb@init@breakability%
+ \tcb@isbreakabletrue%
\let\tcb@defToTotalHeight=\tcb@defToTotalHeightBreakable},
title after break/.store in=\kvtcb@followingtitle,%
notitle after break/.style={title after break=},%
diff --git a/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex b/macros/latex/contrib/tcolorbox/tcbdocumentation.code.tex
index 0264f5406d..1c9689d7a7 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbdocumentation.code.tex: Code for LaTeX documentations
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{listings,skins,xparse,external,raster}
@@ -25,6 +25,8 @@
\RequirePackage{refcount}[2011/10/16]
\RequirePackage{hyperref}[2012/02/06]
\ifdefined\marginnote\else\RequirePackage{marginnote}[2012/03/29]\fi
+\IfFileExists{pifont.sty}{}{\tcb@warning{Library 'documentation' may need symbols from package 'pifont' (not installed)}}
+\IfFileExists{marvosym.sty}{}{\tcb@warning{Library 'documentation' may need symbols from package 'marvosym' (not installed)}}
\definecolor{Option}{rgb}{0.118,0.546,0.222}
\definecolor{Definition}{rgb}{0.784,0.06,0.176}
@@ -371,7 +373,7 @@
{
\tcbset{doc~name=, doc~parameter=, doc~description=, #1}
\begin{tcb@manual@entry}
- \seq_clear:N \g__tcobox_label_seq
+ \seq_gclear:N \g__tcobox_label_seq
\begin{tcbraster}[raster~columns=1,raster~row~skip=0pt,
raster~after~skip=4.1pt,raster~force~size=false,doc@raster@#3]
\seq_set_from_clist:Nn \l_tmpa_seq {#2}
@@ -391,7 +393,7 @@
\group_end:
}
\end{tcbraster}
- \seq_clear:N \g__tcobox_label_seq
+ \seq_gclear:N \g__tcobox_label_seq
\nobreak
\tcbset{before~upper=}
\use:c { kvtcb@doc@body@#3@before }
diff --git a/macros/latex/contrib/tcolorbox/tcbexternal.code.tex b/macros/latex/contrib/tcolorbox/tcbexternal.code.tex
index ffddc26eb5..fedb6fc58c 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbexternal.code.tex: Code for externalization
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{pro@cessing}
diff --git a/macros/latex/contrib/tcolorbox/tcbfitting.code.tex b/macros/latex/contrib/tcolorbox/tcbfitting.code.tex
index f3498292ed..d65e520c9b 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\newdimen\tcbfitdim
\newdimen\tcb@lowerfitdim
@@ -71,7 +71,21 @@
\def\tcb@@capture@fitbox{%
\let\endtcolorbox=\relax%
- \Collect@Body\tcbox@inner@fitbox@collected%
+ \iftcb@wrap@environment%
+ \expandafter\@firstoftwo%
+ \else%
+ \expandafter\@secondoftwo%
+ \fi%
+ {\begingroup\tcb@hack@currenvir%
+ \Collect@Body\tcbox@inner@fitbox@collected@for@wrapping}%
+ {\Collect@Body\tcbox@inner@fitbox@collected}%
+}
+
+\long\def\tcbox@inner@fitbox@collected@for@wrapping#1\end#2{%
+ \endgroup%
+ \let\tcb@end@tcolorboxenvironment\relax%
+ \tcbox@inner@fitbox@collected{#1\end{#2}}%
+ \end{tcolorbox}%
}
\def\tcbfontsize#1{\fontsize{#1\tcbfitdim}{#1\dimexpr\kvtcb@fit@skip\tcbfitdim}\selectfont}
diff --git a/macros/latex/contrib/tcolorbox/tcbhooks.code.tex b/macros/latex/contrib/tcolorbox/tcbhooks.code.tex
index 8337770bdb..8ae95cee03 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\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 992259c371..b519862468 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\RequirePackage{listings}[2007/02/22]
diff --git a/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex b/macros/latex/contrib/tcolorbox/tcblistingscore.code.tex
index 328ba79163..3ec7dd5ae5 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{pro@cessing}
diff --git a/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex b/macros/latex/contrib/tcolorbox/tcblistingsutf8.code.tex
index 76cb24dc43..1f1d771f59 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{listings}
diff --git a/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex b/macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
index a5bde8d84a..ca10489bee 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{breakable}
diff --git a/macros/latex/contrib/tcolorbox/tcbminted.code.tex b/macros/latex/contrib/tcolorbox/tcbminted.code.tex
index 8417ab97cd..6c3a2eea6b 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbminted.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -18,60 +18,128 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\RequirePackage{minted}[2011/09/17]
% 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}%
+ {}{}%
+ \xpatchcmd*\minted@pygmentize%
+ {\ifx\FancyVerbStopNum\z@ 0\else\FancyVerbStopNum\fi}%
+ {\minted@use@FancyVerbStopNum}%
+ {}{}%
+ % 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}
-\def\tcb@minted@input@listing#1#2#3#4{%
- \edef\temp@a{#4}%
- \ifx\temp@a\@empty%
- \else%
- \toks@=\expandafter{#4}%
- \edef\tcb@temp{\noexpand\usemintedstyle{\the\toks@}}%
- \tcb@temp%
- \fi%
- \ifdefstring{\tcb@listing@capture}{hbox}{%
- \toks@=\expandafter{#1,envname=BVerbatim}%
- }{%
- \toks@=\expandafter{#1}%
- }%
- \edef\tcb@temp{\noexpand\inputminted[\the\toks@]}%
- \IfFileExists{\minted@outputdir#3}%
- {\tcb@temp{#2}{\minted@outputdir#3}}%
- {\tcb@temp{#2}{#3}}%
-}
+\ExplSyntaxOn
-\def\tcb@minted@uselistinglisting{%
- \tcb@minted@input@listing{\kvtcb@minted@options}{\kvtcb@minted@language}{\kvtcb@listingfile}{\kvtcb@minted@style}%
-}%
+\cs_new_nopar:Npn \__tcobox_minted_input_listing:nnnn #1#2#3#4
+ {
+ \tl_if_empty:nF { #4 }
+ {
+ \usemintedstyle { #4 }
+ }
+ \tl_set:Nn \l_tmpa_tl { \inputminted[#1 }
+ \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 }
+ {
+ \l_tmpa_tl { #2 }{ \minted@outputdir #3 }
+ }
+ {
+ \l_tmpa_tl { #2 }{ #3 }
+ }
+ }
-\def\tcb@minted@usetemplisting{%
- \tcb@minted@input@listing{\kvtcb@minted@options}{\kvtcb@minted@language}{\kvtcb@tempfile}{\kvtcb@minted@style}%
-}%
+\cs_generate_variant:Nn \__tcobox_minted_input_listing:nnnn {VVVV}
+
+
+\cs_new_nopar:Npn \__tcbbox_minted_uselistinglisting:
+ {
+ \__tcobox_minted_input_listing:VVVV
+ \kvtcb@minted@options
+ \kvtcb@minted@language
+ \kvtcb@listingfile
+ \kvtcb@minted@style
+ }
+
+
+\cs_new_nopar:Npn \__tcbbox_minted_usetemplisting:
+ {
+ \__tcobox_minted_input_listing:VVVV
+ \kvtcb@minted@options
+ \kvtcb@minted@language
+ \kvtcb@tempfile
+ \kvtcb@minted@style
+ }
+
+
+\cs_new_nopar:Npn \__tcbbox_minted_doc_usetemplisting:
+ {
+ \__tcobox_minted_input_listing:VVVV
+ \kvtcb@docmintoptions
+ \kvtcb@docminted@language
+ \kvtcb@tempfile
+ \kvtcb@docmintstyle
+ }
+
+
+\tcbset
+ {
+ listing~engine/minted/.code=
+ {
+ \cs_set_eq:NN \tcbuselistinglisting \__tcbbox_minted_uselistinglisting:
+ \cs_set_eq:NN \tcbusetemplisting \__tcbbox_minted_usetemplisting:
+ \cs_set_eq:NN \tcb@doc@usetemplisting \__tcbbox_minted_doc_usetemplisting:
+ },
+ }
+
+\ExplSyntaxOff
-\def\tcb@minted@doc@usetemplisting{%
- \tcb@minted@input@listing{\kvtcb@docmintoptions}{\kvtcb@docminted@language}{\kvtcb@tempfile}{\kvtcb@docmintstyle}%
-}
\tcbset{%
minted language/.store in=\kvtcb@minted@language,
minted options/.store in=\kvtcb@minted@options,
+ default@minted@options/.store in=\kvtcb@default@minted@options,
+ default minted options/.style={default@minted@options={#1},minted options={#1}},
minted style/.store in=\kvtcb@minted@style,
- listing engine/minted/.code={\let\tcbuselistinglisting\tcb@minted@uselistinglisting%
- \let\tcbusetemplisting\tcb@minted@usetemplisting%
- \let\tcb@doc@usetemplisting\tcb@minted@doc@usetemplisting},
}
\tcbset{%
+ default@minted@options={tabsize=2,fontsize=\small,breaklines,autogobble},
reset@minted/.style={%
minted language=latex,
- minted options={tabsize=2,fontsize=\small,breaklines,autogobble},
+ code={\let\kvtcb@minted@options\kvtcb@default@minted@options},
minted style=,
listing engine=minted,
},
diff --git a/macros/latex/contrib/tcolorbox/tcbposter.code.tex b/macros/latex/contrib/tcolorbox/tcbposter.code.tex
index b61f49a7b2..107d1f7bec 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbposter.code.tex: Code for posters
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{breakable,magazine,skins,fitting}
diff --git a/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex b/macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
index 37fb7d65e7..d23d783885 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbprocessing.code.tex: Code for conditional processing
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\RequirePackage{pdftexcmds}
\RequirePackage{shellesc}
diff --git a/macros/latex/contrib/tcolorbox/tcbraster.code.tex b/macros/latex/contrib/tcolorbox/tcbraster.code.tex
index 8905f8a0b6..350f949466 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
@@ -17,12 +17,18 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\newcounter{tcbrastercolumn}
\newcounter{tcbrasterrow}
\newcounter{tcbrasternum}
\newcounter{tcbraster}
+\def\tcb@raster@number{\@arabic\c@tcbraster}%
+\def\theHtcbrasternum{\tcb@raster@number.\@arabic\c@tcbrasternum}
+
+\setcounter{tcbrasternum}{1}
+\setcounter{tcbrastercolumn}{1}
+\setcounter{tcbrasterrow}{1}
\def\tcb@raster@ehg@all{%
\tcbset{equal height group={\kvtcb@raster@ehgid}}%
@@ -126,6 +132,7 @@
\tcb@layer@pushup%
\stepcounter{tcbraster}%
\edef\tcb@raster@number{\number\c@tcbraster}%
+ \edef\tcb@raster@save@num{\number\c@tcbrasternum}%
\edef\tcb@raster@save@column{\number\c@tcbrastercolumn}%
\edef\tcb@raster@save@row{\number\c@tcbrasterrow}%
\let\tcb@raster@change@fitbox\@empty%
@@ -179,6 +186,7 @@
\stepcounter{tcbrastercolumn}%
\fi},%
box align=\kvtcb@raster@valign,%
+ code={\preto\kvtcb@phantom{\addtocounter{tcbrasternum}{-1}\refstepcounter{tcbrasternum}}},%
}%
\tcbdimto\tcb@raster@box@width{(\tcb@raster@width+\tcb@raster@xskip-\tcb@raster@skip@left-\tcb@raster@skip@right)/\kvtcb@raster@columns-\tcb@raster@xskip}%
\tcb@raster@set@size{%
@@ -215,9 +223,9 @@
\addvspace{\glueexpr\tcb@raster@skip@after-\parskip}%
\endgroup%
\tcb@end@raster%
+ \setcounter{tcbrasternum}{\tcb@raster@save@num}%
\setcounter{tcbrastercolumn}{\tcb@raster@save@column}%
\setcounter{tcbrasterrow}{\tcb@raster@save@row}%
- \setcounter{tcbrasternum}{\the\numexpr(\c@tcbrasterrow-1)*\kvtcb@raster@columns+\c@tcbrastercolumn\relax}%
}
\newcommand{\tcbitem@following}[1][]{%
diff --git a/macros/latex/contrib/tcolorbox/tcbskins.code.tex b/macros/latex/contrib/tcolorbox/tcbskins.code.tex
index 54517b2ddd..0aaa34246d 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\RequirePackage{tikz}[2010/10/13]
@@ -1124,7 +1124,7 @@
\fi%
\tcbdimto\kvtcb@bottom{\kvtcb@bottom+\kvtcb@yinnershift@boxedtitle}%
},
- attach@title@boxed/.style n args={5}{%
+ attach@title@boxed/.style n args={6}{%
detach title,
code={\def\tcb@specialtitle@hook{%
\ifx\tcbtitletext\@empty\else%
@@ -1135,7 +1135,15 @@
\let\tcb@trans@boxedstyle\kvtcb@style@boxedtitle%
\setbox\tcb@titlebox\color@hbox\bgroup\color{tcbcoltitle}\kvtcb@fonttitle\kvtcb@before@boxedtitle\kvtcb@haligntitle\kvtcb@before@title\tcbtitletext\kvtcb@after@title\kvtcb@after@boxedtitle\egroup\color@endbox%
\setbox\tcb@titlebox\color@hbox\tcbox[skin=\tcb@trans@skin@current,colframe=tcbtranscol@frame,colback=tcbtranscol@back,%
- code={\pgfkeysalsofrom\tcb@trans@boxedsize\pgfkeysalsofrom\tcb@trans@boxedstyle}]{\box\tcb@titlebox}\color@endbox%
+ code={\pgfkeysalsofrom\tcb@trans@boxedsize\pgfkeysalsofrom\tcb@trans@boxedstyle%
+ \ifcase#6
+ \or%
+ \global\tcbdimto\tcb@xshift@boxedtitle@delta{\kvtcb@left@rule+\kvtcb@boxsep+\kvtcb@leftupper}%
+ \else%
+ \global\tcbdimto\tcb@xshift@boxedtitle@delta{\kvtcb@right@rule+\kvtcb@boxsep+\kvtcb@rightupper}%
+ \fi%
+ }%
+ ]{\box\tcb@titlebox}\color@endbox%
%
\tcbdimto\tcboxedtitleheight{\ht\tcb@titlebox+\dp\tcb@titlebox}%
\tcbdimto\tcboxedtitlewidth{\wd\tcb@titlebox}%
@@ -1143,8 +1151,16 @@
\let\tcb@specialgeonodes@first\relax%
\let\tcb@specialgeonodes@middle\relax%
\let\tcb@specialgeonodes@last\relax%
+ \ifcase#6
+ \tcbdimto\tcb@xshift@boxedtitle{\kvtcb@xshift@boxedtitle}%
+ \or%
+ \tcbdimto\tcb@xshift@boxedtitle{\kvtcb@left@rule+\kvtcb@boxsep+\kvtcb@leftupper-\tcb@xshift@boxedtitle@delta}%
+ \else%
+ \tcbdimto\tcb@xshift@boxedtitle{\tcb@xshift@boxedtitle@delta-(\kvtcb@right@rule+\kvtcb@boxsep+\kvtcb@rightupper)}%
+ \fi%
\def\tcb@specialgeonodes@unbroken{%
- \node[#4,name=title,at={([xshift=\kvtcb@xshift@boxedtitle,yshift=\kvtcb@yshift@boxedtitle]frame.#5)},
+ \node[#4,name=title,at={([xshift=\tcb@xshift@boxedtitle,yshift=\kvtcb@yshift@boxedtitle]frame.#5)},
+ line width=0mm,inner sep=0mm,outer sep=0mm,draw=none,fill=none,rectangle,
minimum width=\tcboxedtitlewidth,minimum height=\tcboxedtitleheight]{};}%
\cslet{tcb@specialgeonodes@#3}{\tcb@specialgeonodes@unbroken}%
\def\tcb@specialgeonodes@hook{\csname tcb@specialgeonodes@\tcb@split@state\endcsname}%
@@ -1152,15 +1168,17 @@
\cspreto{tcb@underlay@#3}{\tcb@underlay@boxedtitle\pgftext[at={\pgfpointanchor{title}{center}}]{\box\tcb@titlebox}}%
\fi}}%
},
- attach@title@boxed@top/.style n args={3}{attach@title@boxed={#1}{top}{first}{#2}{#3}},%
- attach@title@boxed@bottom/.style n args={3}{attach@title@boxed={#1}{bottom}{last}{#2}{#3}},%
%
- attach boxed title to top left/.style={attach@title@boxed@top={#1}{above right}{north west}},
- attach boxed title to top center/.style={attach@title@boxed@top={#1}{above}{north}},
- attach boxed title to top right/.style={attach@title@boxed@top={#1}{above left}{north east}},
- attach boxed title to bottom left/.style={attach@title@boxed@bottom={#1}{below right}{south west}},
- attach boxed title to bottom center/.style={attach@title@boxed@bottom={#1}{below}{south}},
- attach boxed title to bottom right/.style={attach@title@boxed@bottom={#1}{below left}{south east}},
+ attach boxed title to top left/.style = {attach@title@boxed={#1}{top}{first}{above right}{north west}{0}},
+ attach boxed title to top text left/.style = {attach@title@boxed={#1}{top}{first}{above right}{north west}{1}},
+ attach boxed title to top center/.style = {attach@title@boxed={#1}{top}{first}{above}{north}{0}},
+ attach boxed title to top text right/.style = {attach@title@boxed={#1}{top}{first}{above left}{north east}{2}},
+ attach boxed title to top right/.style = {attach@title@boxed={#1}{top}{first}{above left}{north east}{0}},
+ attach boxed title to bottom left/.style = {attach@title@boxed={#1}{bottom}{last}{below right}{south west}{0}},
+ attach boxed title to bottom text left/.style = {attach@title@boxed={#1}{bottom}{last}{below right}{south west}{1}},
+ attach boxed title to bottom center/.style = {attach@title@boxed={#1}{bottom}{last}{below}{south}{0}},
+ attach boxed title to bottom text right/.style = {attach@title@boxed={#1}{bottom}{last}{below left}{south east}{2}},
+ attach boxed title to bottom right/.style = {attach@title@boxed={#1}{bottom}{last}{below left}{south east}{0}},
reduce@vertical@rules/.code={%
\ifdim\dimexpr\kvtcb@left@rule<\dimexpr\kvtcb@right@rule\relax%
\tcbdimto\tcb@temp{\kvtcb@left@rule/2}%
diff --git a/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex b/macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
index beeccff856..138b4b1bae 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{skins}
diff --git a/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex b/macros/latex/contrib/tcolorbox/tcbtheorems.code.tex
index 3a992cad09..12a415fa4e 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbtheorems.code.tex: Code for theorems in colorboxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,44 +18,218 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\RequirePackage{amsmath}
-\def\tcb@hack@amsmath{\tcb@hack@currenvir\vskip-\abovedisplayskip}
-\def\tcb@theo@form@namenumber#1#2{\hbox{#1~#2}}
-\def\tcb@theo@form@numbername#1#2{\hbox{#2~#1}}
-\def\tcb@theo@form@name#1#2{\hbox{#1}}
+\ExplSyntaxOn
-\def\tcb@theo@desc@form@std#1{\tcb@desc@col\kvtcb@desc@font\kvtcb@desc@delim@left#1\kvtcb@desc@delim@right}
+\tl_new:N \l__tcobox_theo_description_color_tl
+\tl_new:N \l__tcobox_theo_description_delimiter_left_tl
+\tl_new:N \l__tcobox_theo_description_delimiter_right_tl
+\tl_new:N \l__tcobox_theo_description_font_tl
+\tl_new:N \l__tcobox_theo_hanging_indent_tl
+\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
-\def\tcb@theo@title@indent@std#1{\hangindent#1\hangafter=1\relax}
-\def\tcb@theo@title#1#2#3{%
- \ifdefempty{#2}{\setbox\z@=\color@hbox#1\color@endbox}{\setbox\z@=\tcb@theo@form{#1}{#2}}%
- \def\temp@a{#3}%
- \ifx\temp@a\@empty\relax%
- \unhbox\z@\kvtcb@terminatorsign%
- \else%
- \setbox\z@=\hbox{\unhbox\z@\kvtcb@separatorsign\ }%
- \tcb@theo@title@indent{\wd\z@}%
- \mbox{\unhbox\z@}{\tcb@theo@desc@form{#3}}\kvtcb@terminatorsign%
- \fi%
-}
+\cs_new_nopar:Npn \__tcobox_theo_format_name_number:nn #1#2
+ {
+ \tl_if_empty:nTF { #1 }
+ {
+ #2
+ }
+ {
+ #1
+ \tl_if_empty:nF { #2 }
+ {
+ \nobreakspace
+ #2
+ }
+ }
+ }
-\def\tcb@theo@listentry#1#2#3{%
- \def\kvtcb@listentry{\protect\numberline{#2}#3}%
-}
-\def\tcb@theo@label#1#2{%
- \def\temp@a{#2}%
- \ifx\temp@a\@empty%
- \else%
- \tcbset{label={#1\kvtcb@label@sep#2},%
- tcb@theo@full@label@supp={#1\kvtcb@label@sep#2},tcb@theo@label@supp={#2}}%
- \fi%
-}
+\cs_new_nopar:Npn \__tcobox_theo_format_number_name:nn #1#2
+ {
+ \__tcobox_theo_format_name_number:nn { #2 } { #1 }
+ }
+
+
+\cs_new:Npn \__tcobox_theo_format_description_standard:n #1
+ {
+ \l__tcobox_theo_description_color_tl
+ \l__tcobox_theo_description_font_tl
+ \l__tcobox_theo_description_delimiter_left_tl
+ #1
+ \l__tcobox_theo_description_delimiter_right_tl
+ }
+
+
+\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} }
+ \tl_if_empty:nTF { #3 }
+ {
+ % no theorem title; insert name and number
+ \l_tmpa_tl
+ \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
+ {
+ \tl_use:N \l_tmpa_tl
+ \l__tcobox_theo_separatorsign_tl
+ \nobreakspace
+ }
+ }
+ % set (hanging) indent for name and number
+ \str_if_eq:VnTF \l__tcobox_theo_hanging_indent_tl { auto }
+ {
+ \hangindent \box_wd:N \l_tmpa_box
+ \hangafter = 1
+ }
+ {
+ \dim_set:Nn \l_tmpa_dim { \l__tcobox_theo_hanging_indent_tl }
+ \if_dim:w \l_tmpa_dim = \c_zero_dim
+ \else:
+ \if_dim:w \l_tmpa_dim > \c_zero_dim
+ \hangindent \l_tmpa_dim
+ \hangafter = 1
+ \else:
+ \hangindent -\l_tmpa_dim
+ \hangafter = -1
+ \fi:
+ \fi:
+ }
+ % insert box with name and number
+ \mode_leave_vertical:
+ \box_use_drop:N \l_tmpa_box
+ % insert formated title
+ \group_begin:
+ \__tcobox_theo_format_description:n{#3}
+ \group_end:
+ \l__tcobox_theo_terminatorsign_tl
+ }
+ }
+
+
+\NewDocumentCommand \new@tcbtheorem { O{} m m +m m }
+ {
+ \@@newtcolorbox[auto~counter,#1]{#2}[3][]
+ {
+ #4,
+ title = {\__tcobox_theo_title:nnn{#3}{\thetcbcounter}{##2}},
+ list~entry = {\protect\numberline{\thetcbcounter}##2},
+ nameref = {##2},
+ theo@label = {#5}{##3},
+ ##1
+ }
+ \@@newtcolorbox[#1,no~counter,list~inside=]{#2*}[2][]
+ {
+ #4,
+ title = {\__tcobox_theo_title:nnn{#3}{}{##2}},
+ ##1
+ }
+ }
+
+
+\NewDocumentCommand \newtcbtheorem {}
+ {
+ \cs_set_eq:NN \@@newtcolorbox \newtcolorbox
+ \new@tcbtheorem
+ }
+
+
+\NewDocumentCommand \renewtcbtheorem {}
+ {
+ \cs_set_eq:NN \@@newtcolorbox \renewtcolorbox
+ \new@tcbtheorem
+ }
+
+
+\tcbset
+ {
+ theo@label/.code~n~args = {2}
+ {
+ \tl_if_empty:nF { #2 }
+ {
+ \tcbset
+ {
+ label = {#1\l__tcobox_theo_label_separator_tl#2},
+ tcb@theo@full@label@supp = {#1\l__tcobox_theo_label_separator_tl#2},
+ tcb@theo@label@supp = {#2}
+ }
+ }
+ },
+ theorem/.style~n~args = {4}
+ {
+ step~and~label={#2}{#4},
+ title={\__tcobox_theo_title:nnn{#1}{\cs:w the#2\cs_end:}{#3}}
+ },
+ theorem~name~and~number/.code =
+ {
+ \cs_set_eq:NN \__tcobox_theo_format:nn \__tcobox_theo_format_name_number:nn
+ },
+ theorem~number~and~name/.code =
+ {
+ \cs_set_eq:NN \__tcobox_theo_format:nn \__tcobox_theo_format_number_name:nn
+ },
+ theorem~name/.code =
+ {
+ \cs_set_eq:NN \__tcobox_theo_format:nn \use_i:nn
+ },
+ theorem~number/.code =
+ {
+ \cs_set_eq:NN \__tcobox_theo_format:nn \use_ii:nn
+ },
+ separator~sign/ .tl_set:N = \l__tcobox_theo_separatorsign_tl,
+ terminator~sign/ .tl_set:N = \l__tcobox_theo_terminatorsign_tl,
+ label~separator/ .tl_set:N = \l__tcobox_theo_label_separator_tl,
+ theorem~hanging~indent/ .tl_set:N = \l__tcobox_theo_hanging_indent_tl,
+ theorem~hanging~indent/.default=auto,
+ description~delimiters/.code~n~args = {2}
+ {
+ \tl_set:Nn \l__tcobox_theo_description_delimiter_left_tl { #1 }
+ \tl_set:Nn \l__tcobox_theo_description_delimiter_right_tl { #2 }
+ },
+ description~color/.code =
+ {
+ \tl_if_empty:nTF { #1 }
+ {
+ \tl_clear:N \l__tcobox_theo_description_color_tl
+ }
+ {
+ \tl_set:Nn \l__tcobox_theo_description_color_tl { \color{#1} }
+ }
+ },
+ description~color/.default=,
+ description~font/.tl_set:N = \l__tcobox_theo_description_font_tl,
+ description~font/.default =,
+ description~formatter/.code =
+ {
+ \cs_set_eq:NN \__tcobox_theo_format_description:n #1
+ },
+ description~formatter/.default = \__tcobox_theo_format_description_standard:n,
+ }
+
+\ExplSyntaxOff
+
+
+\newtcbox{\tcboxmath}[1][]{nobeforeafter,math upper,tcbox raise base,#1}
+\newtcbox{\tcbhighmath}[1][]{highlight math,nobeforeafter,math upper,tcbox raise base,#1}
+
+
+\def\tcb@hack@amsmath{\tcb@hack@currenvir\vskip-\abovedisplayskip}
\if@fleqn%
\tcbset{%
@@ -74,9 +248,6 @@
\fi
\tcbset{
- theorem/.style args={#1#2#3#4}{%
- step and label={#2}{#4},%
- title={\letcs\tcb@temp{the#2}\tcb@theo@title{#1}{\tcb@temp}{#3}}},%
math upper/.style={before upper*=$\displaystyle,after upper*=$},%
math lower/.style={before lower*=$\displaystyle,after lower*=$},%
math/.style={math upper,math lower},%
@@ -98,28 +269,14 @@
ams nodisplayskip lower/.style={before lower=\vskip-\abovedisplayskip},%
ams nodisplayskip/.style={ams nodisplayskip upper,ams nodisplayskip lower},%
highlight math style/.style={highlight math/.style={notitle,nophantom,#1}},%
- separator sign/.store in=\kvtcb@separatorsign,%
separator sign colon/.style={separator sign={:}},%
- separator sign dash/.style={separator sign={\ --}},%
+ separator sign dash/.style={separator sign={\nobreakspace --}},%
separator sign none/.style={separator sign=},%
- terminator sign/.store in=\kvtcb@terminatorsign,%
terminator sign colon/.style={terminator sign={:}},%
- terminator sign dash/.style={terminator sign={\ --}},%
+ terminator sign dash/.style={terminator sign={\nobreakspace --}},%
terminator sign none/.style={terminator sign=},%
- label separator/.store in=\kvtcb@label@sep,%
- description delimiters/.code n args={2}{\def\kvtcb@desc@delim@left{#1}\def\kvtcb@desc@delim@right{#2}},%
description delimiters parenthesis/.style={description delimiters=()},
description delimiters none/.style={description delimiters={}{}},
- description color/.code={\def\temp@a{#1}\ifx\temp@a\@empty\relax%
- \def\tcb@desc@col{}\else\def\tcb@desc@col{\color{#1}}\fi},%
- description color/.default=,
- description font/.store in=\kvtcb@desc@font,
- description font/.default=,
- description formatter/.code={\let\tcb@theo@desc@form=#1},%
- description formatter/.default={\tcb@theo@desc@form@std},%
- theorem name and number/.code={\let\tcb@theo@form=\tcb@theo@form@namenumber},
- theorem number and name/.code={\let\tcb@theo@form=\tcb@theo@form@numbername},
- theorem name/.code={\let\tcb@theo@form=\tcb@theo@form@name},
theorem style/.is choice,
theorem style/standard/.style={separator sign colon,description delimiters none,
terminator sign none,theorem name and number,attach title},
@@ -137,45 +294,8 @@
theorem style/margin break/.style={theorem style=margin,attach title to upper={\par}},
theorem label supplement/.style={tcb@theo@label@supp/.style={#1}},
theorem full label supplement/.style={tcb@theo@full@label@supp/.style={#1}},
- theorem hanging indent/.code={%
- \ifstrequal{#1}{auto}{%
- \let\tcb@theo@title@indent\tcb@theo@title@indent@std%
- }{%
- \def\tcb@theo@title@indent##1{%
- \ifdim#1=0pt\relax%
- \else%
- \ifdim#1>0pt\relax%
- \hangindent#1\hangafter=1\relax%
- \else%
- \hangindent\dimexpr-#1\relax\hangafter=-1\relax%
- \fi%
- \fi
- }%
- }%
- },
- theorem hanging indent/.default=auto,
-}
-
-\newcommand{\new@tcbtheorem}[5][]{%
- \@@newtcolorbox[auto counter,#1]{#2}[3][]{#4,%
- title={\tcb@theo@title{#3}{\thetcbcounter}{##2}},%
- list entry={\protect\numberline{\thetcbcounter}##2},%
- nameref={##2},%
- code={\tcb@theo@label{#5}{##3}},%
- ##1}%
- \@@newtcolorbox[#1,no counter,list inside=]{#2*}[2][]{#4,%
- title={\tcb@theo@title{#3}{\@empty}{##2}},%
- ##1}%
}
-\def\newtcbtheorem{\let\@@newtcolorbox\newtcolorbox%
- \new@tcbtheorem}
-
-\def\renewtcbtheorem{\let\@@newtcolorbox\renewtcolorbox%
- \new@tcbtheorem}
-
-\newtcbox{\tcboxmath}[1][]{nobeforeafter,math upper,tcbox raise base,#1}
-\newtcbox{\tcbhighmath}[1][]{highlight math,nobeforeafter,math upper,tcbox raise base,#1}
\tcbset{%
reset@theorems/.style={%
@@ -188,7 +308,3 @@
initialize@reset=reset@theorems,
}
-% DEPRECATED
-\newcommand{\tcbmaketheorem}[5]{%
- \newtcolorbox{#1}[3][]{#3,theorem={#2}{#4}{##2}{#5\kvtcb@label@sep##3},##1}%
-}
diff --git a/macros/latex/contrib/tcolorbox/tcbvignette.code.tex b/macros/latex/contrib/tcolorbox/tcbvignette.code.tex
index 2dd113a57c..56a837171e 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcbvignette.code.tex: Code for ornamental frames
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{4.51}
+\tcb@set@library@version{5.0.0}
\tcbuselibrary{skins}
diff --git a/macros/latex/contrib/tcolorbox/tcbxparse.code.tex b/macros/latex/contrib/tcolorbox/tcbxparse.code.tex
index e07be17169..cdefe0ab27 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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{4.51}
+\tcb@set@library@version{5.0.0}
\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 06f648a861..5141f13bb7 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 b84a2b2e0e..ca5965fa4e 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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 9aa9a2d302..f204554be2 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 c09a093519..4bce9e1069 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% 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 dfd5b1eb58..7df55268d2 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 851302103d..07a4e01a24 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcolorbox-tutorial-poster.tex: a tutorial for poster creation with tcolorbox
%%
%% -------------------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib b/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib
index be37700ea1..5569800e3d 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.bib
@@ -54,7 +54,7 @@
address = {Hannover},
edition = 12,
series = {IT-Handb\"ucher},
- url = {https://www.luis.uni-hannover.de/buch.html?&titel=latex},
+ url = {https://www.luis.uni-hannover.de/de/services/schulung-beratung-und-support/handbuecher/it-handbuecher-und-ebooks/details/manuals/latex/},
date = {2019-07},
language = {german}
}
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex
index 7fe459fc94..42679d832a 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex
@@ -4532,7 +4532,8 @@ B
For example, if several box environments with the same environment name
are nested, for the outer environment \refKey{/tcb/void} cannot be used,
since the end of the inner environment will be misinterpreted as
- end of the outer environment.
+ end of the outer environment. Also, \refKey{/tcb/void} cannot be used
+ for environments wrapped with \refCom{tcolorboxenvironment}.
\end{marker}
\end{docTcbKey}
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex
index a9cf444206..385c662154 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.documentation.tex
@@ -21,6 +21,8 @@ the library \mylib{listings}, see \Vref{sec:listings},
the library \mylib{xparse}, see \Vref{sec:xparse},
and a bunch of packages, namely
|makeidx|, |marginnote|, |refcount|, and |hyperref|.
+The packages |pifont| and |marvosym| should be installed for some symbols, but
+need not to be loaded.
\begin{marker}
The package |makeidx| is loaded only, if \docAuxCommand*{printindex} is
@@ -1241,7 +1243,7 @@ keys to insert code before (or after) the description texts.
Used for \refKey{/tcb/listing engine}|=listings| only.
\end{docTcbKey}
-\begin{docTcbKey}{documentation minted options}{=\meta{minted style}}{no default,\\\hspace*{\fill} initially |tabsize=2,fontsize=\textbackslash small|}
+\begin{docTcbKey}{documentation minted options}{=\meta{key list}}{no default,\\\hspace*{\fill} initially |tabsize=2,fontsize=\textbackslash small|}
Sets the options from the package |minted| \cite{poore:minted}
which are used during typesetting of the listing, if used.
Note that this is not identical to the key
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex
index d6b884dc19..2aa5b31974 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.listings.tex
@@ -474,10 +474,11 @@ Sets a \meta{programming language} known to |Pygments| \cite{pygments:web}.
\end{docTcbKey}
-\begin{docTcbKey}[][doc updated={2017-07-05}]{minted options}{=\meta{key list}}{no default, initially
- |tabsize=2,fontsize=\textbackslash small,|\linebreak|breaklines,autogobble|}
+\begin{docTcbKey}[][doc updated={2021-12-15}]{minted options}{=\meta{key list}}{no default, initially
+ \linebreak see \refKey{/tcb/default minted options}}
Sets the options from the package |minted| \cite{poore:minted}
which are used during typesetting of the listing.
+ Also see \refKey{/tcb/minted options app} and \refKey{/tcb/minted options pre}.
\begin{dispExample}
% \tcbuselibrary{skins}
\newtcblisting{myjava}{listing engine=minted,
@@ -500,7 +501,25 @@ Sets a \meta{programming language} known to |Pygments| \cite{pygments:web}.
\end{dispExample}
\end{docTcbKey}
+
\clearpage
+\begin{docTcbKey}[][doc new={2021-12-15}]{default minted options}{=\meta{key list}}{no default, initially
+ |tabsize=2,fontsize=\textbackslash small,|\linebreak|breaklines,autogobble|}
+ Sets the options from the package |minted| \cite{poore:minted}
+ which are used during typesetting of the listing, if
+ \refKey{/tcb/minted options} are \emph{not} used. The intended use is
+ inside the preamble to change the default behavior.
+ Note that setting \refKey{/tcb/default minted options} also resets \refKey{/tcb/minted options}.
+\begin{dispListing}
+% inside the preamble
+\tcbset{%
+ default minted options={tabsize=4,fontsize=\normalsize},
+}
+\end{dispListing}
+\end{docTcbKey}
+
+
+
\begin{docTcbKey}{minted style}{=\meta{style}}{no default, initially unset}
Sets a \meta{style} known to |Pygments| \cite{pygments:web}. This is
independent from \refKey{/tcb/minted options}. Note that styles are always
@@ -514,6 +533,27 @@ 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
\subsection{Common Option Keys of all Libraries}\label{sec:commonlistingkeys}
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty b/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty
index 63944de20a..4c4a85dce1 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty
@@ -4,38 +4,22 @@
\renewcommand*\l@subsubsection{\@dottedtocline{3}{4.2em}{3.2em}}
\RequirePackage[T1]{fontenc}
-\RequirePackage[latin1]{inputenc}
+\RequirePackage[utf8]{inputenc}
\RequirePackage[english]{babel}
\RequirePackage{lmodern,parskip,array,ifthen,calc}
\RequirePackage{amsmath,amssymb}
\RequirePackage[svgnames,table,hyperref]{xcolor}
-\RequirePackage{tikz}
-\RequirePackage{varioref}
-%\RequirePackage[makeindex]{imakeidx}
-\RequirePackage[pdftex,bookmarks,raiselinks,pageanchor,hyperindex,colorlinks]{hyperref}
-\RequirePackage{bookmark,varwidth,cleveref,incgraph}
-
-\RequirePackage[a4paper,left=2.5cm,right=2.5cm,top=1.5cm,bottom=1.5cm,
- marginparsep=3mm,marginparwidth=18mm,
- headheight=0mm,headsep=0cm,
- footskip=1.5cm,includeheadfoot%,showframe
- ]{geometry}
-\RequirePackage{fancyhdr}
-\fancyhf{}
-\fancyfoot[C]{\thepage}%
-\renewcommand{\headrulewidth}{0pt}
-\renewcommand{\footrulewidth}{0pt}
-\pagestyle{fancy}
-\tolerance=2000%
-\setlength{\emergencystretch}{20pt}%
-
+\RequirePackage{tikz}
\usetikzlibrary{shadings,shadows}
\usetikzlibrary{decorations.pathmorphing}
\usetikzlibrary{patterns}
\usetikzlibrary{spy}
\usetikzlibrary{arrows.meta}
+\RequirePackage[nospace]{varioref}
+
+\RequirePackage{bookmark,varwidth,incgraph}
\RequirePackage{array,tabularx}
\RequirePackage{amsmath}
\RequirePackage{lipsum}
@@ -46,11 +30,32 @@
\RequirePackage{\tcbpkgprefix tcolorbox}
\tcbuselibrary{most,documentation}
+
\tcbifexternal{}{%
\tcbuselibrary{minted}%
\tcbset{listing engine=listings,initialize@reset={listing engine=listings}}%
}
+\RequirePackage{hyperref}
+
+
+\RequirePackage[a4paper,left=2.5cm,right=2.5cm,top=1.5cm,bottom=1.5cm,
+ marginparsep=3mm,marginparwidth=18mm,
+ headheight=0mm,headsep=0cm,
+ footskip=1.5cm,includeheadfoot%,showframe
+ ]{geometry}
+\RequirePackage{fancyhdr}
+\fancyhf{}
+\fancyfoot[C]{\thepage}%
+\renewcommand{\headrulewidth}{0pt}
+\renewcommand{\footrulewidth}{0pt}
+\pagestyle{fancy}
+\tolerance=2000%
+\setlength{\emergencystretch}{20pt}%
+
+\RequirePackage{cleveref}
+
+
\tcbset{skin=enhanced,
doc head={colback=yellow!10!white,interior style=fill},
doc head key={colback=magenta!5!white,interior style=fill},
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
index 1f3833a7f7..73d93d228b 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
@@ -443,6 +443,18 @@ the top left corner of the main box.
\end{exdispExample*}
\end{docTcbKey}
+\begin{docTcbKey}[][doc new=2021-07-30]{attach boxed title to top text left}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
+The title is boxed with a \refCom{tcbox} and attached to
+the top left corner of the main box
+and shifted to match title text and box text.
+\begin{exdispExample*}{attach_boxed_title_to_top_text_left}{sbs,lefthand ratio=0.66}
+\begin{tcolorbox}[enhanced,title=My title,
+ attach boxed title to top text left]
+ This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{exdispExample*}
+\end{docTcbKey}
+
\begin{docTcbKey}{attach boxed title to top center}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
The title is boxed with a \refCom{tcbox} and attached to
the top of the main box.
@@ -454,6 +466,20 @@ the top of the main box.
\end{exdispExample*}
\end{docTcbKey}
+\begin{docTcbKey}[][doc new=2021-07-30]{attach boxed title to top text right}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
+The title is boxed with a \refCom{tcbox} and attached to
+the top right corner of the main box
+and shifted to match title text and box text.
+\begin{exdispExample*}{attach_boxed_title_to_top_text_right}{sbs,lefthand ratio=0.66}
+\begin{tcolorbox}[enhanced,title=My title,
+ halign=right,
+ attach boxed title to top text right]
+ This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{exdispExample*}
+\end{docTcbKey}
+
+
\begin{docTcbKey}{attach boxed title to top right}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
The title is boxed with a \refCom{tcbox} and attached to
the top right corner of the main box.
@@ -465,6 +491,8 @@ the top right corner of the main box.
\end{exdispExample*}
\end{docTcbKey}
+\clearpage
+
\begin{docTcbKey}{attach boxed title to bottom left}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
The title is boxed with a \refCom{tcbox} and attached to
the bottom left corner of the main box.
@@ -476,7 +504,20 @@ the bottom left corner of the main box.
\end{exdispExample*}
\end{docTcbKey}
-\enlargethispage*{1cm}
+
+\begin{docTcbKey}[][doc new=2021-07-30]{attach boxed title to bottom text left}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
+The title is boxed with a \refCom{tcbox} and attached to
+the bottom left corner of the main box
+and shifted to match title text and box text.
+Note that this matches the \emph{upper} part, even, if there is a \emph{lower} part.
+\begin{exdispExample*}{attach_boxed_title_to_bottom_text_left}{sbs,lefthand ratio=0.66}
+\begin{tcolorbox}[enhanced,title=My title,
+ attach boxed title to bottom text left]
+ This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{exdispExample*}
+\end{docTcbKey}
+
\begin{docTcbKey}{attach boxed title to bottom center}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
The title is boxed with a \refCom{tcbox} and attached to
@@ -489,6 +530,22 @@ the bottom of the main box.
\end{exdispExample*}
\end{docTcbKey}
+
+\begin{docTcbKey}[][doc new=2021-07-30]{attach boxed title to bottom text right}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
+The title is boxed with a \refCom{tcbox} and attached to
+the bottom right corner of the main box
+and shifted to match title text and box text.
+Note that this matches the \emph{upper} part, even, if there is a \emph{lower} part.
+\begin{exdispExample*}{attach_boxed_title_to_bottom_text_right}{sbs,lefthand ratio=0.66}
+\begin{tcolorbox}[enhanced,title=My title,
+ halign=right,
+ attach boxed title to bottom text right]
+ This is a \textbf{tcolorbox}.
+\end{tcolorbox}
+\end{exdispExample*}
+\end{docTcbKey}
+
+
\begin{docTcbKey}{attach boxed title to bottom right}{\colOpt{=\marg{boxtitle options}}}{style, default empty}
The title is boxed with a \refCom{tcbox} and attached to
the bottom right corner of the main box.
@@ -728,8 +785,8 @@ the \meta{options} are is appended.
colframe=red!50!black,colback=red!10!white,
arc=1mm,colbacktitle=red!10!white,
fonttitle=\bfseries,coltitle=red!50!black,
- attach boxed title to top left=
- {xshift=3.2mm,yshift=-0.50mm},
+ attach boxed title to top text left=
+ {yshift=-0.50mm},
boxed title style={skin=enhancedfirst jigsaw,
size=small,arc=1mm,bottom=-1mm,
interior style={fill=none,
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex
index abaf34a4d4..51d680c388 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex
@@ -83,27 +83,6 @@ To switch off the \texttt{nameref} feature permanently, add
\end{docCommand}
-\begin{docCommand}{tcbmaketheorem}{\marg{name}\marg{display name}\marg{options}\marg{counter}\marg{prefix}}
-\smallskip\begin{marker}
-\refCom{newtcbtheorem} supersedes this macro.
-\end{marker}
-\begin{deprecated}
- Creates a new environment \meta{name} based on |tcolorbox| to frame a
- (mathematical) theorem. The \meta{display name} is used in the title line
- with a number, e.\,g. \mbox{\flqq Theorem 5.1\frqq}.
- The \meta{options} are given to the underlying |tcolorbox| to control
- the appearance.
- The \meta{counter} is used for automatic numbering.
- The new environment \meta{name} takes one optional and two mandatory
- parameters. The optional parameter supplements the options and should be
- used only in rare cases.
- The first mandatory parameter is the title text for the theorem and
- the second mandatory parameter is a \meta{marker}. The theorem is
- automatically labeled with \meta{prefix}\meta{separator}\meta{marker}
- where \meta{separator} is predefined as \enquote{|:|}, see \refKey{/tcb/label separator}.
-\end{deprecated}
-\end{docCommand}
-
\clearpage
\begin{docCommand}{tcboxmath}{\oarg{options}\marg{mathematical box content}}
Creates a \refEnv{tcolorbox} which is fitted to the width of the given
@@ -507,18 +486,34 @@ My theorem text.
Prints theorem name without number inside the title.
\begin{dispExample}
\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
- {colback=white,colframe=red!50!black,fonttitle=\bfseries,
- theorem name,enhanced,watermark text={\thetcbcounter}}{theo}
+ {enhanced,colback=white,colframe=red!50!black,fonttitle=\bfseries,
+ theorem name,watermark text={\thetcbcounter}}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\enlargethispage*{20mm}
+
+\begin{docTcbKey}[][doc new=2021-12-03]{theorem number}{}{style, no value}
+Prints theorem name without name inside the title.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+ {enhanced,colback=white,colframe=red!50!black,fonttitle=\bfseries,
+ theorem number}{theo}
\begin{sometheorem}{My example}{}
My theorem text.
\end{sometheorem}
\end{dispExample}
\end{docTcbKey}
+
\clearpage
\begin{docTcbKey}{theorem}{=\marg{display name}\marg{counter}\marg{title}\marg{marker}}{no default}
- This key is internally used by \refCom{tcbmaketheorem}, but can be used
- directly in a |tcolorbox| for a more flexible approach.
+ This key can be used
+ directly in a |tcolorbox| for a more flexible approach to create a
+ theorem type box.
The \meta{display name} is used together with the increased \meta{counter} value
and the \meta{title} for the title line of the box. Additionally, a
|\label| with the given \meta{marker} is created.
@@ -531,8 +526,7 @@ Here, we see the test \ref{myMarker}.
\end{dispExample}
For a common appearance inside the document, the key |theorem| should not be
used directly as in the example above, but as part of a new environment
-created by hand or using \refCom{tcbmaketheorem} or using its successor
-\refCom{newtcbtheorem}.
+created by hand or using \refCom{newtcbtheorem}.
\end{docTcbKey}
\clearpage
@@ -896,7 +890,7 @@ This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
%
\clearpage
\subsection{Examples for Definitions and Theorems}
-In the following, the application of \refCom{tcbmaketheorem}
+In the following, the application of \refCom{newtcbtheorem}
to highlight mathematical definitions, theorems, or the like is demonstrated.
At first, additional |tcb| keys are created for the appearance of
@@ -917,7 +911,7 @@ Now, everything is prepared for the following examples.
\begin{dispExample}
The following theorem is numbered as \Cref{theo:diffbarstetig} and
-referenced with the marker \texttt{theo:diffbarstetig}.\bigskip
+referenced with the marker \texttt{theo:diffbarstetig}.
\begin{Theorem}{Differenzierbarkeit bedingt Stetigkeit, wobei diese Benennung
zu Testzwecken ungew\"{o}hnlich lang ist}{diffbarstetig}%
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.pdf b/macros/latex/contrib/tcolorbox/tcolorbox.pdf
index 27d0c1e5e4..482a4a615f 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 47a03bc0cb..a60f658eb3 100644
--- a/macros/latex/contrib/tcolorbox/tcolorbox.sty
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcolorbox.sty: Text color boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,8 +18,8 @@
%% This work consists of all files listed in README
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tcolorbox}[2021/06/14 version 4.51 text color boxes]
-\def\tcb@version{4.51}
+\ProvidesPackage{tcolorbox}[2021/12/16 version 5.0.0 text color boxes]
+\def\tcb@version{5.0.0}
\RequirePackage{pgf}[2008/01/15]
\RequirePackage{verbatim}[2003/08/22]
@@ -42,6 +42,8 @@
\newif\iftcb@ignorenobreak
\newif\iftcb@checkpage
\newif\iftcb@resetcounteronoverlays
+\newif\iftcb@wrap@environment
+\newif\iftcb@isbreakable
\newbox\tcb@titlebox
\newbox\tcb@upperbox
@@ -90,7 +92,7 @@
\tcbset{autoparskip}%
}
-\def\tcb@hack@currenvir{\edef\tcb@temp{\noexpand\def\noexpand\@currenvir{\kvtcb@savedelimiter}}\tcb@temp}
+\def\tcb@hack@currenvir{\edef\@currenvir{\kvtcb@savedelimiter}}
\def\tcb@sbs@quota@leftwidth{%
\tcbdimto\tcb@w@upper{\kvtcb@sbs@ratio}%
@@ -132,6 +134,13 @@
\pgfkeys{/handlers/.dimstore in/.code=\pgfkeysalso{\pgfkeyscurrentpath/.code=\def#1{\the\dimexpr##1\relax}}}
\pgfkeys{/handlers/.colorlet/.code=\pgfkeysalso{\pgfkeyscurrentpath/.code=\colorlet{#1}{##1}}}
+\ExplSyntaxOn
+
+\pgfkeys{/handlers/.tl_set:N/.code=\pgfkeysalso{\pgfkeyscurrentpath/.code=\tl_set:Nn#1{##1}}}
+
+\ExplSyntaxOff
+
+
\newcommand\tcbtitle{\ifx\tcbtitletext\@empty\else%
\leavevmode{\color{tcbcoltitle}\kvtcb@fonttitle\kvtcb@haligntitle\kvtcb@before@title\tcbtitletext\kvtcb@after@title}\fi}
@@ -708,15 +717,17 @@
lefthand ratio/.code={\def\kvtcb@sbs@ratio{#1}\let\tcb@sbs@quota=\tcb@sbs@quota@leftratio},
righthand ratio/.code={\def\kvtcb@sbs@ratio{#1}\let\tcb@sbs@quota=\tcb@sbs@quota@rightratio},
breakable@false/.code={%
- \let\tcb@savebox=\tcb@lrbox%
- \let\endtcb@savebox=\endtcb@lrbox%
+ \tcb@isbreakablefalse%
\let\tcb@defToTotalHeight=\tcb@defToTotalHeightStandard%
- \let\tcb@drawcolorbox=\tcb@drawcolorbox@standalone%
- \def\tcb@upperdraw@begin@hook{\color{tcbcolupper}}%
- \def\tcb@lowerdraw@begin@hook{\color{tcbcollower}}%
},
code/.code={#1},
- capture/.store in=\kvtcb@capture,%
+ capture/.code={%
+ \def\kvtcb@capture{#1}%
+ \ifcsname tcb@@capture@\kvtcb@capture\endcsname\else%
+ \tcb@error{Unknown capture mode `\kvtcb@capture'. Use `minipage', `hbox', or `fitbox'}{}%
+ \def\kvtcb@capture{minipage}%
+ \fi%
+ },%
hbox/.style={capture=hbox},%
minipage/.style={capture=minipage},%
void/.style={capture=v@@d,capture/.code=,options@for/.code=,code={\def\tcbinputlisting@core{}}},
@@ -808,16 +819,12 @@
verbatim ignore percent/true/.code={\def\tcb@verbatim@change@percent{\catcode`\^^e=9}},
verbatim ignore percent/false/.code={\let\tcb@verbatim@change@percent\@empty},
verbatim ignore percent/.default=true,
+ wrap@environment/.is if=tcb@wrap@environment,
}
\def\kvtcb@beforebox{}
\def\kvtcb@afterbox{}
-\tcbset{%
- autoparskip,minipage,savedelimiter=tcolorbox,%
- set@extensions@preframe=,set@extensions@postframe=,set@extensions@final=,%
-}%
-
\def\tcb@set@label#1{%
\ifx\kvtcb@label@type\@empty%
\label{#1}%
@@ -1031,8 +1038,29 @@
}
\def\tcb@@capture@hbox{%
- \let\endtcolorbox=\relax%
- \Collect@Body\tcbox@inner@hbox@collected%
+ \let\endtcolorbox\relax%
+ \iftcb@wrap@environment%
+ \expandafter\@firstoftwo%
+ \else%
+ \expandafter\@secondoftwo%
+ \fi%
+ {\begingroup\tcb@hack@currenvir%
+ \Collect@Body\tcbox@inner@hbox@collected@for@wrapping}%
+ {\Collect@Body\tcbox@inner@hbox@collected}%
+}
+
+\long\def\tcbox@inner@hbox@collected@for@wrapping#1\end#2{%
+ \endgroup%
+ \let\tcb@end@tcolorboxenvironment\relax%
+ \tcbox@inner@hbox@collected{#1\end{#2}}%
+ \end{tcolorbox}%
+}
+
+% will be overwritten in `fitting` library
+\def\tcb@@capture@fitbox{%
+ \tcb@error{You need to load `fitting' library to use capture mode `fitbox'}{}%
+ % fallback
+ \tcb@@capture@minipage%
}
% save 'comment' from 'verbatim'
@@ -1055,7 +1083,7 @@
}
\def\tcb@count@boxes{%
- \global\advance\c@tcolorbox@number by 1\relax%
+ \global\advance\c@tcolorbox@number 1\relax%
\edef\thetcolorboxnumber{\number\c@tcolorbox@number}%
\expandafter\ifx\csname tcolorboxpage@\thetcolorboxnumber\endcsname\relax%
\edef\thetcolorboxpage{\number\c@page}%
@@ -1097,10 +1125,10 @@
\def\tcb@managed@layers@max{0}
\def\tcbsetmanagedlayers#1{%
- \setcounter{tcblayer}{\tcb@managed@layers@max}%
+ \global\c@tcblayer\tcb@managed@layers@max\relax%
\ifnum\c@tcblayer<#1\relax%
\loop
- \stepcounter{tcblayer}%
+ \global\advance\c@tcblayer 1\relax%
\newbox\tcb@temp%
\cslet{tcb@footnote@\romannumeral\c@tcblayer}{\tcb@temp}%
\tcbset{every box on layer \number\c@tcblayer/.style={reset,every box}}
@@ -1108,7 +1136,7 @@
\else%
\fi%
\xdef\tcb@managed@layers@max{#1}%
- \setcounter{tcblayer}{0}%
+ \global\c@tcblayer 0\relax%
}
\@onlypreamble\tcbsetmanagedlayers
\tcbsetmanagedlayers{4}%
@@ -1121,7 +1149,7 @@
\def\tcb@layer@inc{%
\tcb@count@boxes%
- \stepcounter{tcblayer}%
+ \global\advance\c@tcblayer 1\relax%
\ifnum\c@tcblayer>1\relax%
\tcbset{breakable@true/.code=}%
\else%
@@ -1138,8 +1166,8 @@
\def\tcb@layer@pushup{%
\tcb@count@boxes%
- \global\advance\c@tcolorbox@number by -1\relax%
- \stepcounter{tcblayer}%
+ \global\advance\c@tcolorbox@number -1\relax%
+ \global\advance\c@tcblayer 1\relax%
\ifnum\c@tcblayer>1\relax%
\tcbset{breakable@true/.code=}%
\else%
@@ -1152,7 +1180,7 @@
\tcbset{every box on layer \number\c@tcblayer}%
\tcbset{every box on layer \number\c@tcblayer/.code=}%
\fi%
- \addtocounter{tcblayer}{-1}%
+ \global\advance\c@tcblayer -1\relax%
}
\def\tcb@layer@dec{%
@@ -1161,17 +1189,34 @@
\expandafter\global\setbox\@mpfootins\box\csname tcb@footnote@\romannumeral\c@tcblayer\endcsname%
\setcounter{mpfootnote}{\csname tcb@footnote@cnt@\romannumeral\c@tcblayer\endcsname}%
\fi%
- \addtocounter{tcblayer}{-1}%
+ \global\advance\c@tcblayer -1\relax%
}
\let\tcbtextheight\tcb@zpt%
+\def\tcb@init@breakable{}
+
+\def\tcb@init@unbreakable{%
+ \let\tcb@savebox=\tcb@lrbox%
+ \let\endtcb@savebox=\endtcb@lrbox%
+ \let\tcb@drawcolorbox=\tcb@drawcolorbox@standalone%
+ \def\tcb@upperdraw@begin@hook{\color{tcbcolupper}}%
+ \def\tcb@lowerdraw@begin@hook{\color{tcbcollower}}%
+}%
+
\long\def\tcb@apply@box@options#1{%
\let\tcb@space\tcb@zpt%
\let\tcb@outer@textheight\tcbtextheight%
\let\tcbtextheight\tcb@zpt%
\let\tcbtextwidth\tcb@zpt%
- \tcbset{#1}\tcb@lateoptions@hook\tcb@afteroptions@hook%
+ \tcbset{#1}%
+ \tcb@lateoptions@hook\let\tcb@lateoptions@hook\@empty%
+ \tcb@afteroptions@hook%
+ \iftcb@isbreakable%
+ \tcb@init@breakable%
+ \else%
+ \tcb@init@unbreakable%
+ \fi%
\let\iftcb@minipage\if@minipage%
\let\iftcb@nobreak\if@nobreak%
}
@@ -2041,8 +2086,13 @@
\tcb@process@newenvironment}
\newcommand{\tcolorboxenvironment}[2]{%
- \BeforeBeginEnvironment{#1}{\begin{tcolorbox}[savedelimiter={#1},#2]}%
- \AfterEndEnvironment{#1}{\end{tcolorbox}}%
+ \AddToHook{env/#1/before}{%
+ \begin{tcolorbox}[savedelimiter={#1},#2,wrap@environment,%
+ code={\def\tcb@end@tcolorboxenvironment{\end{tcolorbox}}}]%
+ }%
+ \AddToHook{env/#1/after}{%
+ \tcb@end@tcolorboxenvironment%
+ }%
}
% auxiliary code to remove a leading backspace
@@ -2299,12 +2349,17 @@
list entry=,no label type,
opacityupper=1.0,opacitylower=1.0,opacitytitle=1.0,opacityframe=1.0,opacityback=1.0,@opacitybacktitle=1.0,
subtitle style=,title filled=false,every float=,ignore nobreak=false,before nobreak=\noindent,
- tcbox width=auto,
+ tcbox width=auto,wrap@environment=false,
},
initialize@reset=reset@core,
shield externalize=false,
}
+\tcbset{%
+ autoparskip,minipage,savedelimiter=tcolorbox,%
+ set@extensions@preframe=,set@extensions@postframe=,set@extensions@final=,%
+}%
+
\def\tcbsetforeverylayer#1{\tcbset{initialize@reset={#1}}}
% libraries
diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.tex b/macros/latex/contrib/tcolorbox/tcolorbox.tex
index 6bd27975ce..d7b89ec1ee 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 4.51 (2021/06/14)
+%% The LaTeX package tcolorbox - version 5.0.0 (2021/12/16)
%% tcolorbox.tex: Manual
%%
%% -------------------------------------------------------------------------------------------
@@ -25,6 +25,7 @@
% arara: pdflatex: { shell: yes, synctex: yes }
% arara: pdflatex: { shell: yes, synctex: yes }
%
+\PassOptionsToPackage{pdftex,bookmarks,raiselinks,pageanchor,hyperindex,colorlinks}{hyperref}
\documentclass[a4paper,11pt]{ltxdoc}
\usepackage{tcolorbox.doc.s_main}
@@ -43,8 +44,8 @@
\setlength{\bibitemsep}{\smallskipamount}
\addbibresource{tcolorbox.doc.bib}
-\def\version{4.51}%
-\def\datum{2021/06/14}%
+\def\version{5.0.0}%
+\def\datum{2021/12/16}%
\makeindex
\hypersetup{
@@ -62,7 +63,7 @@
%\geometry{showframe}
%\tcbset{draftmode}
\tcbset{/tcb/external/-}% for final run
-%\includeonly{tcolorbox.doc.documentation}
+%\includeonly{tcolorbox.doc.listings}
%\hypersetup{colorlinks=false}