summaryrefslogtreecommitdiff
path: root/macros/latex/contrib
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-02-05 03:00:59 +0000
committerNorbert Preining <norbert@preining.info>2022-02-05 03:00:59 +0000
commit08ccf305ee79ab8e5ba9d1a8f3d22e74dccedd80 (patch)
tree814254dfa55b15022a4361ba4e12cccdcdac1f2a /macros/latex/contrib
parentb7a48c5e229d2c195b6a32bfd73a1036a31f2df3 (diff)
CTAN sync 202202050300
Diffstat (limited to 'macros/latex/contrib')
-rw-r--r--macros/latex/contrib/animate/ChangeLog3
-rw-r--r--macros/latex/contrib/animate/animate.pdfbin3753532 -> 3753810 bytes
-rw-r--r--macros/latex/contrib/animate/animate.sty43
-rw-r--r--macros/latex/contrib/crefthe/README.md19
-rw-r--r--macros/latex/contrib/crefthe/crefthe-doc.pdfbin108754 -> 110051 bytes
-rw-r--r--macros/latex/contrib/crefthe/crefthe-doc.tex14
-rw-r--r--macros/latex/contrib/crefthe/crefthe.sty564
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx16
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin576025 -> 576018 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex4
-rw-r--r--macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdfbin40813 -> 40811 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdfbin201045 -> 201045 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/1-criticalnotes.pdfbin199196 -> 199196 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/1-sidenotes.pdfbin295847 -> 295847 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/1-tabular.pdfbin284803 -> 284803 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdfbin200373 -> 200373 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/1-verses.pdfbin200204 -> 200204 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-antilabe.pdfbin209856 -> 209856 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-cross_referencing.pdfbin199199 -> 199199 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdfbin202702 -> 202702 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-glossaries.pdfbin284462 -> 284462 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-indexing.pdfbin283598 -> 283598 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdfbin277764 -> 277764 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdfbin293260 -> 293260 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-linespacing.pdfbin288423 -> 288423 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdfbin290106 -> 290106 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-notes-width.pdfbin205925 -> 205925 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdfbin211562 -> 211562 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-performances.pdfbin286175 -> 286175 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdfbin31497 -> 31501 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdfbin309311 -> 309311 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdfbin287548 -> 287548 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdfbin199051 -> 199051 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdfbin23428 -> 23425 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdfbin174535 -> 174535 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdfbin32047 -> 32047 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdfbin288679 -> 288679 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdfbin199948 -> 199948 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdfbin199183 -> 199183 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdfbin177026 -> 177026 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdfbin199590 -> 199590 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdfbin198522 -> 198522 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdfbin198573 -> 198573 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdfbin198707 -> 198707 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdfbin213256 -> 213256 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdfbin211867 -> 211867 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdfbin204143 -> 204143 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdfbin297127 -> 297127 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdfbin203251 -> 203251 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdfbin224508 -> 224508 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdfbin249192 -> 249192 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdfbin203970 -> 203970 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdfbin199821 -> 199821 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdfbin301523 -> 301523 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdfbin206311 -> 206311 bytes
-rw-r--r--macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdfbin195383 -> 195383 bytes
-rw-r--r--macros/latex/contrib/reledmac/migration.pdfbin368877 -> 368877 bytes
-rw-r--r--macros/latex/contrib/reledmac/reledmac.dtx7
-rw-r--r--macros/latex/contrib/reledmac/reledmac.pdfbin2064848 -> 2065249 bytes
-rw-r--r--macros/latex/contrib/reledmac/reledpar.pdfbin1006705 -> 1006705 bytes
-rw-r--r--macros/latex/contrib/siunitx/CHANGELOG.md8
-rw-r--r--macros/latex/contrib/siunitx/siunitx-code.pdfbin607585 -> 607726 bytes
-rw-r--r--macros/latex/contrib/siunitx/siunitx-number.dtx24
-rw-r--r--macros/latex/contrib/siunitx/siunitx-print.dtx27
-rw-r--r--macros/latex/contrib/siunitx/siunitx.dtx2
-rw-r--r--macros/latex/contrib/siunitx/siunitx.pdfbin639462 -> 639466 bytes
66 files changed, 404 insertions, 327 deletions
diff --git a/macros/latex/contrib/animate/ChangeLog b/macros/latex/contrib/animate/ChangeLog
index b43af114e4..e2ef9c8a9e 100644
--- a/macros/latex/contrib/animate/ChangeLog
+++ b/macros/latex/contrib/animate/ChangeLog
@@ -1,3 +1,6 @@
+2022-02-04
+ * fix: ocg method: moving back to /OC method (instead of BDC/EMC)
+
2022-01-31
* improvement: optimizing XObject nesting for smaller output files
diff --git a/macros/latex/contrib/animate/animate.pdf b/macros/latex/contrib/animate/animate.pdf
index 7fe63d0830..1046dfa24c 100644
--- a/macros/latex/contrib/animate/animate.pdf
+++ b/macros/latex/contrib/animate/animate.pdf
Binary files differ
diff --git a/macros/latex/contrib/animate/animate.sty b/macros/latex/contrib/animate/animate.sty
index 9a4fed2374..c18e4f3657 100644
--- a/macros/latex/contrib/animate/animate.sty
+++ b/macros/latex/contrib/animate/animate.sty
@@ -13,7 +13,7 @@
\NeedsTeXFormat{LaTeX2e}[2020-10-01]
-\def\@anim@version{2022/01/31}
+\def\@anim@version{2022/02/04}
\ProvidesPackage{animate}
[\@anim@version\space PDF & SVG animations from files and inline graphics]
@@ -411,12 +411,7 @@
\ifdim\@anim@curdp=\@anim@animdepth\else\def\@anim@needresize{1}\fi%
% resize content to final dimensions, if necessary
\ifnum\@anim@needresize>\z@\relax%
- \setbox#3=\hbox{%
- \raisebox{-\@anim@animdepth}{%
- \resizebox*{\@anim@animwidth}{%
- \@anim@animtotalheight}{\raisebox{\depth}{\box#3}}%
- }%
- }%
+ \setbox#3=\hbox{\resizebox{\@anim@animwidth}{\@anim@animheight}{\box#3}}%
\fi%
\ifthenelse{\equal{#4}{newfile}\OR\equal{#4}{inline}}{%
\@anim@xform{1}{1}{}{}{#3}%
@@ -488,6 +483,11 @@
\if@anim@export%
\setboolean{@anim@singleref}{false}\def\@anim@framexform{}%
\fi%
+ % ... also, for method=ocg, we prefer packing content in an xform, as it allows
+ % higher frame rates
+ \ifnum\@anim@method=\tw@\if@anim@dvisvgm\else%
+ \setboolean{@anim@singleref}{false}\def\@anim@framexform{}%
+ \fi\fi%
\if@anim@singleref\else%
% put frame content in a box if necessary
\setbox\@anim@box=\hbox to \@anim@animwidth{%
@@ -501,13 +501,12 @@
\setbox\@anim@box=\hbox{\rotatebox{90}{\box\@anim@box}}%
\fi%
\fi%
- % convert it to an xform
- \if@anim@export\else%
+ \fi%
+ \ifcase\@anim@method% icon based
+ \if@anim@singleref\else%
\@anim@xform{0}{1}{}{}{\@anim@box}%
\let\@anim@framexform\@anim@lastxform%
\fi%
- \fi%
- \ifcase\@anim@method% icon based
%initial visibility
\ifnum\@anim@poster>\@anim@mtwo\relax% insert poster frame
\ifnum#2=\@anim@poster\relax%
@@ -547,6 +546,10 @@
\fi%
\fi%
%frame insertion
+ \if@anim@singleref\else%
+ \@anim@xform{0}{1}{}{}{\@anim@box}%
+ \let\@anim@framexform\@anim@lastxform%
+ \fi%
\@anim@widget{\@anim@animwidth}{\@anim@animheight}{\@anim@animdepth}{%
/Subtype/Widget%
\@anim@annotflag%
@@ -579,9 +582,21 @@
\fi%
\fi%
%frame insertion
- \ocgbase@oc@bdc{\@anim@curocg}%
- \@anim@refxform{\@anim@framexform}%
- \ocgbase@oc@emc%
+ \if@anim@dvisvgm%
+ \if@anim@singleref\else%
+ \@anim@xform{0}{1}{}{}{\@anim@box}%
+ \let\@anim@framexform\@anim@lastxform%
+ \fi%
+ % `marked content' method for dvisvgm
+ \ocgbase@oc@bdc{\@anim@curocg}%
+ \@anim@refxform{\@anim@framexform}%
+ \ocgbase@oc@emc%
+ \else%
+ % /OC method for PDF output, higher frame rates than
+ % with marked content (BDC/EMC)
+ \@anim@xform{0}{1}{}{/OC \@anim@curocg}{\@anim@box}%
+ \@anim@refxform{\@anim@lastxform}%
+ \fi%
\fi%
\fi%
}
diff --git a/macros/latex/contrib/crefthe/README.md b/macros/latex/contrib/crefthe/README.md
index e8460c7ae9..db578d078f 100644
--- a/macros/latex/contrib/crefthe/README.md
+++ b/macros/latex/contrib/crefthe/README.md
@@ -1,4 +1,4 @@
-<!-- Copyright (C) 2021 by Jinwen XU -->
+<!-- Copyright (C) 2021-2022 by Jinwen XU -->
# crefthe - cross referencing with proper definite articles
@@ -28,20 +28,25 @@ which is wrong, as the correct result should be:
## The solution
Thus, it would be better to have a new command `\crefthe[<prep>]{<labels>}`, and to use it like
-```
+```latex
\crefthe[de]{thm1,thm2,prop3}
```
in order to get "*des théorèmes 1 et 2 et de la proposition 3*".
# Usage
-Just load the package with
+Simply load the package with:
```latex
\usepackage{crefthe}
```
> "crefthe" uses "cleveref" internally, thus it should usually be placed at the last of your preamble.
-And then you can use the command `\crefthe` as follows:
+Before everything, you need to define the names, which can be done with `\crefthename`. Its syntax is similar to `\crefname`, but now you can specify the definite articles, for example:
+```latex
+\crefthename{theorem}[le]{théorème}[les]{théorèmes}
+```
+
+Then you can use the command `\crefthe` as follows:
- `\crefthe[<prep>]{<labels>}`
- This will pass the preposition `<prep>` to the definite articles that follows. Its behavior depends on the current language (for example, in Spanish, `<prep>` is passed only to the first definite article, while in French it is passed to everyone).
- `\crefthe-[<prep>]{<labels>}` and `\crefthe+[<prep>]{<labels>}`
@@ -49,11 +54,7 @@ And then you can use the command `\crefthe` as follows:
> There is also a stared version `\crefthe*` for generating the same text but without hyperlinks.
-However, before using it, you should first define the `\crefname`s carefully. The definite article in `\crefname`s needs to be marked manually using `\crefthemark`, for example:
-```latex
-\crefname{theorem}{\crefthemark{le} théorème}{\crefthemark{les} théorèmes}
-```
-
+*For more information, please refer to its documentation.*
# License
diff --git a/macros/latex/contrib/crefthe/crefthe-doc.pdf b/macros/latex/contrib/crefthe/crefthe-doc.pdf
index 10ac58da25..7175c64abc 100644
--- a/macros/latex/contrib/crefthe/crefthe-doc.pdf
+++ b/macros/latex/contrib/crefthe/crefthe-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/crefthe/crefthe-doc.tex b/macros/latex/contrib/crefthe/crefthe-doc.tex
index 736f44876b..39d53e76b0 100644
--- a/macros/latex/contrib/crefthe/crefthe-doc.tex
+++ b/macros/latex/contrib/crefthe/crefthe-doc.tex
@@ -89,8 +89,8 @@
\title{\crefthepackage{} - cross referencing with proper definite articles}
\author{Jinwen XU}
-\thanks{Corresponding to: \texttt{\crefthepackage{} 2022/01/29}}
-\date{January 2022, in Paris}
+\thanks{Corresponding to: \texttt{\crefthepackage{} 2022/02/04}}
+\date{February 2022, in Paris}
\maketitle
@@ -226,15 +226,17 @@ Of course you will have to define the \lstinline|\Crefthename|s separately, for
\crefthepackage{} loads \textsf{cleveref} automatically and pass all the options to it. All its commands, used without optional arguments, degenerate to those in \textsf{cleveref}. For example, \lstinline|\crefthe{...}| is the same as \lstinline|\cref{...}|, and \lstinline|\crefthename| is the same as \lstinline|\crefname| if the definite articles are not specified. That said, you can safely use the command \lstinline|\crefthe| everywhere in your document without causing extra trouble.
+With the option \texttt{overwrite}, user commands in \textsf{cleveref} will be replaced by those offered here, thus you can simply write \lstinline|\cref| for \lstinline|\crefthe| -- and similarly for \lstinline|\Cref|, \lstinline|\crefname| and \lstinline|\Crefname|.
+
\section{For multi-language documents}
-To place hyperlinks at the right place, \lstinline|\crefthename| touches the corresponding \lstinline|\crefformat| internally, which makes it language-dependent. If you are writing multi-language documents, you may like to consider putting \lstinline|\crefthename| inside your language configuration so as to reset it each time you select a new language.
+To place hyperlinks at the right place, \lstinline|\crefthename| touches the corresponding \lstinline|\crefformat| internally, which makes the format language-dependent. If you are writing multi-language documents, you may consider putting \lstinline|\crefthename| inside your language configuration so as to reset it each time you select a new language.
\section{Known issues}
\begin{itemize}
- \item \crefthepackage{} currently only works for French, Italian, Portuguese (European and Brazilian) and Spanish, certainly more would be added to this list.
- \item The current mechanism does not work for German. However, the author has planed to adopt a more refined approach in later versions in order to support the various situations in German.
- \item For now, the automatic case changing mechanism only works properly under Unicode based engines. If you are using pdf\LaTeX{} or typing accented letters with text commands, \lstinline|\Crefthe| will not work as expected.
+ \item \crefthepackage{} currently works for French, Italian, Portuguese (European and Brazilian) and Spanish, certainly more would be added to this list.
+ \item The current mechanism does not work for German. The author plans to adopt a more refined approach in later versions in order to support the various situations in German.
+ \item For now, the automatic case changing mechanism only works properly under Unicode based engines. If you are using pdf\LaTeX{} or typing accented letters with text commands, \lstinline|\Crefthe| may not work as expected.
% \item In case that the initial letter of \meta{prep} is capitalized, \crefthepackage{} cannot yet handle the case changes automatically. However, this should be a rare occurrence.
\item The names of theorem-like environments are not provided --- for the moment you need to define them all by yourself. However, users are encouraged to use the \ProjLib{} toolkit, which already handles everything for you.
\end{itemize}
diff --git a/macros/latex/contrib/crefthe/crefthe.sty b/macros/latex/contrib/crefthe/crefthe.sty
index ad752f87b5..2da1714334 100644
--- a/macros/latex/contrib/crefthe/crefthe.sty
+++ b/macros/latex/contrib/crefthe/crefthe.sty
@@ -10,281 +10,327 @@
%% http://www.latex-project.org/lppl.txt
%%
\NeedsTeXFormat{LaTeX2e}[2020-10-01]
+\RequirePackage{l3keys2e}
\ProvidesExplPackage
{crefthe}
- {2022/01/29}
- {}
+ {2022/02/04} {}
{Cross referencing with proper definite articles}
-\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{cleveref}}
-\ProcessOptions\relax
+
+\keys_define:nn {crefthe}
+ {
+ , overwrite .bool_set:N = \l__crefthe_overwrite_bool
+ , overwrite .initial:n = { false }
+ , unknown .code:n =
+ {
+ \PassOptionsToPackage { \CurrentOption } {cleveref}
+ }
+ }
+\ProcessKeysOptions{crefthe}
+
\RequirePackage{cleveref}
-\tl_gset:Nn \g_crefthe_prepf_tl {}
-\tl_gset:Nn \g_crefthe_prep_tl {}
-\tl_gset:Nn \g_crefthe_sep_tl {}
-\cs_new:Nn \crefthe_case:n {#1}
-\cs_new:Nn \crefthe_nochange:n {#1}
-\cs_new:Nn \crefthe_atbegindocument:n {#1}
+\cs_set_eq:cc {crefthe_cref_original:n} {cref}
+\cs_set_eq:cc {crefthe_Cref_original:n} {Cref}
+\cs_set_eq:cc {crefthe_crefname_original:n} {crefname}
+\cs_set_eq:cc {crefthe_Crefname_original:n} {Crefname}
-\cs_new:Nn \crefthe_set_status_atbegindocument: {
- \cs_if_eq:NNTF \@onlypreamble \@notprerr {
- \cs_gset_eq:NN \crefthe_atbegindocument:n \crefthe_nochange:n
- }{
- \cs_gset_eq:NN \crefthe_atbegindocument:n \AtBeginDocument
- }
-}
+\bool_if:NT \l__crefthe_overwrite_bool
+ {
+ \hook_gput_next_code:nn {package/crefthe/after}
+ {
+ \cs_set_eq:cc {cref} {crefthe}
+ \cs_set_eq:cc {Cref} {Crefthe}
+ \cs_set_eq:cc {crefname} {crefthename}
+ \cs_set_eq:cc {Crefname} {Crefthename}
+ }
+ }
-\NewDocumentCommand{\crefthe}{st-t+O{}m}{
- \IfBooleanTF{ #2 }{
- \tl_gset:Nn \g_crefthe_prepf_tl { #4 }
- }{
- \IfBooleanTF{ #3 }{
- \tl_gset:Nn \g_crefthe_prep_tl { #4 }
- }{
- \str_case_e:nn { \crefthe_prep_mode:nn } {
- { - } { \tl_gset:Nn \g_crefthe_prepf_tl { #4 } }
- { + } { \tl_gset:Nn \g_crefthe_prep_tl { #4 } }
- }
- }
- }
- \IfBooleanTF{ #1 } { \cref*{#5} } { \cref{#5} }
- \tl_gset:Nn \g_crefthe_prep_tl {}
-}
+\tl_new:N \g__crefthe_prep_once_tl
+\tl_new:N \g__crefthe_prep_each_tl
-\NewDocumentCommand{\Crefthe}{st-t+O{}m}{
- \cs_gset_eq:NN \crefthe_case:n \text_titlecase:n
- \IfBooleanTF{ #2 }{
- \tl_gset:Nn \g_crefthe_prepf_tl { #4 }
- }{
- \IfBooleanTF{ #3 }{
- \tl_gset:Nn \g_crefthe_prep_tl { #4 }
- }{
- \str_case_e:nn { \crefthe_prep_mode:nn } {
- { - } { \tl_gset:Nn \g_crefthe_prepf_tl { #4 } }
- { + } { \tl_gset:Nn \g_crefthe_prep_tl { #4 } }
- }
- }
- }
- \IfBooleanTF{ #1 } { \Cref*{#5} } { \Cref{#5} }
- \tl_gset:Nn \g_crefthe_prep_tl {}
-}
+\tl_new:N \l__crefthe_prep_mode_tl
-\NewDocumentCommand{\crefthename}{mO{}mO{}m}{
- \str_if_eq:eeTF {#2} {} {
- \crefname{#1}{#3}{#5}
- \cs_set:cn {cref_#1_format:nnn} {##2#3~##1##3}
- \cs_set:cn {cref_#1_format_first:nnn} {##2#5~##1##3}
- }{
- \crefname{#1}{\crefthemark{#2} \g_crefthe_sep_tl #3}{\crefthemark{#4} \g_crefthe_sep_tl #5}
- \cs_set:cn {cref_#1_format:nnn} {\crefthemark{#2} \g_crefthe_sep_tl ##2#3~##1##3}
- \cs_set:cn {cref_#1_format_first:nnn} {\crefthemark{#4} \g_crefthe_sep_tl ##2#5~##1##3}
- }
- \crefthe_set_status_atbegindocument:
- \crefthe_atbegindocument:n {
- \cs_set_eq:cc {cref@#1@format} {cref_#1_format:nnn}
- \cs_set_eq:cc {cref@#1@format@first} {cref_#1_format_first:nnn}
- }
-}
+\cs_new:Nn \crefthe_case:n { #1 }
+\cs_new:Nn \crefthe_nochange:n { #1 }
-\NewDocumentCommand{\Crefthename}{mO{}mO{}m}{
- \str_if_eq:eeTF {#2} {} {
- \Crefname{#1}{#3}{#5}
- \cs_set:cn {Cref_#1_format:nnn} {##2#3~##1##3}
- \cs_set:cn {Cref_#1_format_first:nnn} {##2#5~##1##3}
- }{
- \Crefname{#1}{\crefthemark{#2} \g_crefthe_sep_tl #3}{\crefthemark{#4} \g_crefthe_sep_tl #5}
- \cs_set:cn {Cref_#1_format:nnn} {\crefthemark{#2} \g_crefthe_sep_tl ##2#3~##1##3}
- \cs_set:cn {Cref_#1_format_first:nnn} {\crefthemark{#4} \g_crefthe_sep_tl ##2#5~##1##3}
- }
- \crefthe_set_status_atbegindocument:
- \crefthe_atbegindocument:n {
- \cs_set_eq:cc {Cref@#1@format} {Cref_#1_format:nnn}
- \cs_set_eq:cc {Cref@#1@format@first} {Cref_#1_format_first:nnn}
- }
-}
+\NewDocumentCommand \crefthe { s t- t+ O{} m }
+ {
+ \bool_if:nTF { #2 }
+ {
+ \tl_gset:Nn \g__crefthe_prep_once_tl { #4 }
+ }
+ {
+ \bool_if:nTF { #3 }
+ {
+ \tl_gset:Nn \g__crefthe_prep_each_tl { #4 }
+ }
+ {
+ \exp_args:Nx \str_case:nn \l__crefthe_prep_mode_tl
+ {
+ { - } { \tl_gset:Nn \g__crefthe_prep_once_tl { #4 } }
+ { + } { \tl_gset:Nn \g__crefthe_prep_each_tl { #4 } }
+ }
+ }
+ }
+ \bool_if:nTF { #1 } { \crefthe_cref_original:n * { #5 } } { \crefthe_cref_original:n { #5 } }
+ \tl_gset:Nn \g__crefthe_prep_each_tl {}
+ }
-\NewDocumentCommand{\crefthemark}{m}{
- \crefthe_contraction:nn { \crefthe_case:n \g_crefthe_prep_tl }{
- \crefthe_contraction:nn { \crefthe_case:n \g_crefthe_prepf_tl }{#1}
- }
- \tl_gset:Nn \g_crefthe_prepf_tl {}
- \tl_gset:Nx \g_crefthe_prep_tl { \text_lowercase:n \g_crefthe_prep_tl }
- \str_case_e:nnF {\str_tail:n {#1}} {
- {'} { \tl_gset:Nn \g_crefthe_sep_tl {} }
- }
- { \tl_gset:Nn \g_crefthe_sep_tl {~} }
- \cs_gset_eq:NN \crefthe_case:n \crefthe_nochange:n
- % \cs_gset_eq:NN \crefthe_case:n \text_lowercase:n
-}
+\NewDocumentCommand \Crefthe { s t- t+ O{} m }
+ {
+ \cs_gset:Npn \crefthe_case:n ##1 { \text_titlecase:n {##1} }
+ \bool_if:nTF { #2 }
+ {
+ \tl_gset:Nn \g__crefthe_prep_once_tl { #4 }
+ }
+ {
+ \bool_if:nTF { #3 }
+ {
+ \tl_gset:Nn \g__crefthe_prep_each_tl { #4 }
+ }
+ {
+ \exp_args:Nx \str_case:nn \l__crefthe_prep_mode_tl
+ {
+ { - } { \tl_gset:Nn \g__crefthe_prep_once_tl { #4 } }
+ { + } { \tl_gset:Nn \g__crefthe_prep_each_tl { #4 } }
+ }
+ }
+ }
+ \bool_if:nTF { #1 } { \crefthe_Cref_original:n * { #5 } } { \crefthe_Cref_original:n { #5 } }
+ \tl_gset:Nn \g__crefthe_prep_each_tl {}
+ }
+
+\NewDocumentCommand \crefthename { m O{} m O{} m }
+ {
+ \tl_if_blank:eTF { #2 }
+ {
+ \crefthe_crefname_original:n { #1 } { #3 } { #5 }
+ \cs_set:cn { cref_#1_format:nnn } { ##2 #3 ~ ##1 ##3 }
+ \cs_set:cn { cref_#1_format_first:nnn } { ##2 #5 ~ ##1 ##3 }
+ }
+ {
+ \crefthe_crefname_original:n { #1 } { \crefthemark{ #2 } #3 } { \crefthemark{ #4 } #5 }
+ \cs_set:cn { cref_#1_format:nnn } { \crefthemark { #2 } ##2 #3 ~ ##1 ##3 }
+ \cs_set:cn { cref_#1_format_first:nnn } { \crefthemark { #4 } ##2 #5 ~ ##1 ##3 }
+ }
+ \hook_gput_next_code:nn { begindocument }
+ {
+ \cs_set_eq:cc { cref@ #1 @format } { cref_#1_format:nnn }
+ \cs_set_eq:cc { cref@ #1 @format@first } { cref_#1_format_first:nnn }
+ }
+ }
-\cs_set:Npn \crefthe_prep_mode:nn {
- \str_case_e:nn { \languagename }
+\NewDocumentCommand \Crefthename { m O{} m O{} m }
+ {
+ \tl_if_blank:eTF { #2 }
+ {
+ \crefthe_Crefname_original:n { #1 } { #3 } { #5 }
+ \cs_set:cn { Cref_#1_format:nnn } { ##2 #3 ~ ##1 ##3 }
+ \cs_set:cn { Cref_#1_format_first:nnn } { ##2 #5 ~ ##1 ##3 }
+ }
+ {
+ \crefthe_Crefname_original:n { #1 } { \crefthemark{ #2 } #3 }{ \crefthemark{ #4 } #5 }
+ \cs_set:cn { Cref_#1_format:nnn } { \crefthemark { #2 } ##2 #3 ~ ##1 ##3 }
+ \cs_set:cn { Cref_#1_format_first:nnn } { \crefthemark { #4 } ##2 #5 ~ ##1 ##3 }
+ }
+ \hook_gput_next_code:nn { begindocument }
+ {
+ \cs_set_eq:cc { Cref@ #1 @format } { Cref_#1_format:nnn }
+ \cs_set_eq:cc { Cref@ #1 @format@first } { Cref_#1_format_first:nnn }
+ }
+ }
+
+\NewDocumentCommand \crefthemark { m }
+ {
+ \crefthe_contraction:nn { \crefthe_case:n \g__crefthe_prep_each_tl }
+ {
+ \crefthe_contraction:nn { \crefthe_case:n \g__crefthe_prep_once_tl } { #1 }
+ }
+ \tl_gset:Nn \g__crefthe_prep_once_tl {}
+ \tl_gset:Nx \g__crefthe_prep_each_tl { \text_lowercase:n \g__crefthe_prep_each_tl }
+ \str_if_eq:eeF { \str_tail:n { #1 } } { ' } { ~ }
+ \cs_gset:Npn \crefthe_case:n ##1 { \crefthe_nochange:n {##1} }
+ % \cs_gset:Npn \crefthe_case:n ##1 { \text_lowercase:n {##1} }
+ }
+
+\tl_set:Nn \l__crefthe_prep_mode_tl {
+ \str_case_e:nn { \languagename }
{
- {french} { + }
- {italian} { + }
- {spanish} { - }
- {portuguese} { + }
- {brazilian} { + }
+ {french} { + }
+ {italian} { + }
+ {spanish} { - }
+ {portuguese} { + }
+ {brazilian} { + }
}
}
-\cs_set:Npn \crefthe_contraction:nn #1#2 {
- \str_if_eq:eeTF {#1} {} {#2} {
- \str_case_e:nn { \languagename }
- {
- {french}{
- \str_case_e:nnF {#1~\text_lowercase:n{#2}} {
- {à~le} {au}
- {à~les} {aux}
- {de~le} {du}
- {de~les} {des}
- {À~le} {Au}
- {À~les} {Aux}
- {De~le} {Du}
- {De~les} {Des}
- }{#1~\text_lowercase:n{#2}}
- }
- {italian}{
- \str_case_e:nnF {#1~\text_lowercase:n{#2}} {
- {a~il} {al}
- {a~lo} {allo}
- {a~l'} {all'}
- {a~la} {alla}
- {di~il} {del}
- {di~lo} {dello}
- {di~l'} {dell'}
- {di~la} {della}
- {da~il} {dal}
- {da~lo} {dallo}
- {da~l'} {dall'}
- {da~la} {dalla}
- {in~il} {nel}
- {in~lo} {nello}
- {in~l'} {nell'}
- {in~la} {nella}
- {su~il} {sul}
- {su~lo} {sullo}
- {su~l'} {sull'}
- {su~la} {sulla}
- {a~i} {ai}
- {a~gli} {agli}
- {a~le} {alle}
- {di~i} {dei}
- {di~gli} {degli}
- {di~le} {delle}
- {da~i} {dai}
- {da~gli} {dagli}
- {da~le} {dalle}
- {in~i} {nei}
- {in~gli} {negli}
- {in~le} {nelle}
- {su~i} {sui}
- {su~gli} {sugli}
- {su~le} {sulle}
- {A~il} {Al}
- {A~lo} {Allo}
- {A~l'} {All'}
- {A~la} {Alla}
- {Di~il} {Del}
- {Di~lo} {Dello}
- {Di~l'} {Dell'}
- {Di~la} {Della}
- {Da~il} {Dal}
- {Da~lo} {Dallo}
- {Da~l'} {Dall'}
- {Da~la} {Dalla}
- {In~il} {Nel}
- {In~lo} {Nello}
- {In~l'} {Nell'}
- {In~la} {Nella}
- {Su~il} {Sul}
- {Su~lo} {Sullo}
- {Su~l'} {Sull'}
- {Su~la} {Sulla}
- {A~i} {Ai}
- {A~gli} {Agli}
- {A~le} {Alle}
- {Di~i} {Dei}
- {Di~gli} {Degli}
- {Di~le} {Delle}
- {Da~i} {Dai}
- {Da~gli} {Dagli}
- {Da~le} {Dalle}
- {In~i} {Nei}
- {In~gli} {Negli}
- {In~le} {Nelle}
- {Su~i} {Sui}
- {Su~gli} {Sugli}
- {Su~le} {Sulle}
- }{#1~\text_lowercase:n{#2}}
- }
- {portuguese}{
- \str_case_e:nnF {#1~\text_lowercase:n{#2}} {
- {a~o} {ao}
- {a~a} {à}
- {a~os} {aos}
- {a~as} {às}
- {de~o} {do}
- {de~a} {da}
- {de~os} {dos}
- {de~as} {das}
- {em~o} {no}
- {em~a} {na}
- {em~os} {nos}
- {em~as} {nas}
- {A~o} {Ao}
- {A~a} {À}
- {A~os} {Aos}
- {A~as} {Às}
- {De~o} {Do}
- {De~a} {Da}
- {De~os} {Dos}
- {De~as} {Das}
- {Em~o} {No}
- {Em~a} {Na}
- {Em~os} {Nos}
- {Em~as} {Nas}
- }{#1~\text_lowercase:n{#2}}
- }
- {brazilian}{
- \str_case_e:nnF {#1~\text_lowercase:n{#2}} {
- {a~o} {ao}
- {a~a} {à}
- {a~os} {aos}
- {a~as} {às}
- {de~o} {do}
- {de~a} {da}
- {de~os} {dos}
- {de~as} {das}
- {em~o} {no}
- {em~a} {na}
- {em~os} {nos}
- {em~as} {nas}
- {A~o} {Ao}
- {A~a} {À}
- {A~os} {Aos}
- {A~as} {Às}
- {De~o} {Do}
- {De~a} {Da}
- {De~os} {Dos}
- {De~as} {Das}
- {Em~o} {No}
- {Em~a} {Na}
- {Em~os} {Nos}
- {Em~as} {Nas}
- }{#1~\text_lowercase:n{#2}}
- }
- {spanish}{
- \str_case_e:nnF {#1~\text_lowercase:n{#2}} {
- {a~el} {al}
- {de~el} {del}
- {A~el} {Al}
- {De~el} {Del}
- }{#1~\text_lowercase:n{#2}}
- }
- }
- }
-}
+\cs_new:Npn \crefthe_contraction:nn #1#2
+ {
+ \tl_if_blank:eTF { #1 }
+ { #2 }
+ {
+ \tl_if_exist:cTF { crefthe_contraction_rule_ \languagename _tl }
+ {
+ \exp_args:Nnx \str_case_e:nnF { #1~\text_lowercase:n{ #2 } }
+ {
+ \tl_use:c { crefthe_contraction_rule_ \languagename _tl }
+ }
+ { #1~\text_lowercase:n{ #2 } }
+ }
+ { #1 ~ #2 }
+ }
+ }
+
+\tl_gset:Nn \crefthe_contraction_rule_french_tl
+ {
+ { à~le } { au }
+ { à~les } { aux }
+ { de~le } { du }
+ { de~les } { des }
+ { À~le } { Au }
+ { À~les } { Aux }
+ { De~le } { Du }
+ { De~les } { Des }
+ }
+
+\tl_gset:Nn \crefthe_contraction_rule_italian_tl
+ {
+ { a~il } { al }
+ { a~lo } { allo }
+ { a~l' } { all' }
+ { a~la } { alla }
+ { di~il } { del }
+ { di~lo } { dello }
+ { di~l' } { dell' }
+ { di~la } { della }
+ { da~il } { dal }
+ { da~lo } { dallo }
+ { da~l' } { dall' }
+ { da~la } { dalla }
+ { in~il } { nel }
+ { in~lo } { nello }
+ { in~l' } { nell' }
+ { in~la } { nella }
+ { su~il } { sul }
+ { su~lo } { sullo }
+ { su~l' } { sull' }
+ { su~la } { sulla }
+ { a~i } { ai }
+ { a~gli } { agli }
+ { a~le } { alle }
+ { di~i } { dei }
+ { di~gli } { degli }
+ { di~le } { delle }
+ { da~i } { dai }
+ { da~gli } { dagli }
+ { da~le } { dalle }
+ { in~i } { nei }
+ { in~gli } { negli }
+ { in~le } { nelle }
+ { su~i } { sui }
+ { su~gli } { sugli }
+ { su~le } { sulle }
+ { A~il } { Al }
+ { A~lo } { Allo }
+ { A~l' } { All' }
+ { A~la } { Alla }
+ { Di~il } { Del }
+ { Di~lo } { Dello }
+ { Di~l' } { Dell' }
+ { Di~la } { Della }
+ { Da~il } { Dal }
+ { Da~lo } { Dallo }
+ { Da~l' } { Dall' }
+ { Da~la } { Dalla }
+ { In~il } { Nel }
+ { In~lo } { Nello }
+ { In~l' } { Nell' }
+ { In~la } { Nella }
+ { Su~il } { Sul }
+ { Su~lo } { Sullo }
+ { Su~l' } { Sull' }
+ { Su~la } { Sulla }
+ { A~i } { Ai }
+ { A~gli } { Agli }
+ { A~le } { Alle }
+ { Di~i } { Dei }
+ { Di~gli } { Degli }
+ { Di~le } { Delle }
+ { Da~i } { Dai }
+ { Da~gli } { Dagli }
+ { Da~le } { Dalle }
+ { In~i } { Nei }
+ { In~gli } { Negli }
+ { In~le } { Nelle }
+ { Su~i } { Sui }
+ { Su~gli } { Sugli }
+ { Su~le } { Sulle }
+ }
+
+\tl_gset:Nn \crefthe_contraction_rule_spanish_tl
+ {
+ { a~el } { al }
+ { de~el } { del }
+ { A~el } { Al }
+ { De~el } { Del }
+ }
+
+\tl_gset:Nn \crefthe_contraction_rule_portuguese_tl
+ {
+ { a~o } { ao }
+ { a~a } { à }
+ { a~os } { aos }
+ { a~as } { às }
+ { de~o } { do }
+ { de~a } { da }
+ { de~os } { dos }
+ { de~as } { das }
+ { em~o } { no }
+ { em~a } { na }
+ { em~os } { nos }
+ { em~as } { nas }
+ { A~o } { Ao }
+ { A~a } { À }
+ { A~os } { Aos }
+ { A~as } { Às }
+ { De~o } { Do }
+ { De~a } { Da }
+ { De~os } { Dos }
+ { De~as } { Das }
+ { Em~o } { No }
+ { Em~a } { Na }
+ { Em~os } { Nos }
+ { Em~as } { Nas }
+ }
+
+\tl_gset:Nn \crefthe_contraction_rule_brazilian_tl
+ {
+ { a~o } { ao }
+ { a~a } { à }
+ { a~os } { aos }
+ { a~as } { às }
+ { de~o } { do }
+ { de~a } { da }
+ { de~os } { dos }
+ { de~as } { das }
+ { em~o } { no }
+ { em~a } { na }
+ { em~os } { nos }
+ { em~as } { nas }
+ { A~o } { Ao }
+ { A~a } { À }
+ { A~os } { Aos }
+ { A~as } { Às }
+ { De~o } { Do }
+ { De~a } { Da }
+ { De~os } { Dos }
+ { De~as } { Das }
+ { Em~o } { No }
+ { Em~a } { Na }
+ { Em~os } { Nos }
+ { Em~as } { Nas }
+ }
+
\endinput
%%
%% End of file `crefthe.sty'.
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index e1040bbc69..577ee50f49 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2022/02/03}{1.61}
+\ProvidesExplClass{easybook}{2022/02/04}{1.62}
{Typeset Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -305,7 +305,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2022/02/03}{1.61}
+\ProvidesExplPackage{easybase}{2022/02/04}{1.62}
{Typeset Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -349,6 +349,8 @@
\eb_seq_map_inline:nn {#1}
{ \AtBeginEnvironment{##1}{#2} }
}
+\cs_new_protected:Npn \eb_at_end_preamble:n
+ { \BeforeBeginEnvironment{document} }
\cs_new_protected:Npn \eb_match_load_package:n #1
{
\regex_match:nnTF { \[ } {#1}
@@ -399,8 +401,6 @@
\seq_map_function:NN
\l_tmpb_seq \eb_match_load_package:n
}
-\cs_new_protected:Npn \eb_at_end_preamble:n
- { \BeforeBeginEnvironment{document} }
\cs_gset_eq:NN \PackageWarning \PackageInfo
\msg_redirect_module:nnn { hooks } { warning } { info }
@@ -836,7 +836,7 @@
{ flush }
{
\tl_set:Nn \l__eb_footnote_value_tl { default }
- \clist_push:Nn \l__eb_footnote_mulchoice_clist {#1}
+ \clist_push:Nn \l__eb_footnote_value_clist {#1}
}
}
{
@@ -868,7 +868,7 @@
\bool_new:N \l__eb_fnpara_bottom_bool
\tl_new:N \l__eb_fnmate_format_tl
\tl_new:N \l__eb_fncust_format_tl
-\clist_new:N \l__eb_footnote_mulchoice_clist
+\clist_new:N \l__eb_footnote_value_clist
\ctex_define:nn { hdrset }
{
fnindent .dim_set:N = \footindent,
@@ -992,7 +992,7 @@
\cs_new_protected:Npn \eb_footnote_direct_default:
{
\noindent
- \clist_if_in:NnT \l__eb_footnote_mulchoice_clist { flush }
+ \clist_if_in:NnT \l__eb_footnote_value_clist { flush }
{ \dim_zero:N \footindent }
\int_case:nn { \dim_sign:V \footindent }
{
@@ -2332,7 +2332,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2022/02/03}{1.61}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2022/02/04}{1.62}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index a6a70491a3..175389e7c8 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 2ea2f54526..ccfee80c8c 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -21,8 +21,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK 使用手册,
- version = v1.61,
- date = 2022/02/03,
+ version = v1.62,
+ date = 2022/02/04,
authors = 瞿毅,
info = 排版简体中文学位论文和书籍,
email = q1jx@foxmail.com,
diff --git a/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf b/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf
index 25e411bfee..52e0ee69b9 100644
--- a/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf
+++ b/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf b/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf
index 5508c9dee7..0e13a6a783 100644
--- a/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf
+++ b/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf b/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf
index bdc6f89546..0ca6fbf7b4 100644
--- a/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf
+++ b/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf b/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf
index 6aa81e85f9..dacdb815cc 100644
--- a/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf
+++ b/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/1-tabular.pdf b/macros/latex/contrib/reledmac/examples/1-tabular.pdf
index 1bbeb4fd91..24f9234d3a 100644
--- a/macros/latex/contrib/reledmac/examples/1-tabular.pdf
+++ b/macros/latex/contrib/reledmac/examples/1-tabular.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf b/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf
index 157ac911ed..0dbfd26819 100644
--- a/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf
+++ b/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/1-verses.pdf b/macros/latex/contrib/reledmac/examples/1-verses.pdf
index 46243e854b..4714d36aaa 100644
--- a/macros/latex/contrib/reledmac/examples/1-verses.pdf
+++ b/macros/latex/contrib/reledmac/examples/1-verses.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-antilabe.pdf b/macros/latex/contrib/reledmac/examples/2-antilabe.pdf
index 5c8c304cb9..b2f7d9dbd1 100644
--- a/macros/latex/contrib/reledmac/examples/2-antilabe.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-antilabe.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf b/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf
index 130232e15e..f7fe778829 100644
--- a/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf b/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf
index f7d4ebcb3a..a8b2878c6a 100644
--- a/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-glossaries.pdf b/macros/latex/contrib/reledmac/examples/2-glossaries.pdf
index 0f534f6f3e..4d774ab937 100644
--- a/macros/latex/contrib/reledmac/examples/2-glossaries.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-glossaries.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-indexing.pdf b/macros/latex/contrib/reledmac/examples/2-indexing.pdf
index 16762558c7..e6c2e394ad 100644
--- a/macros/latex/contrib/reledmac/examples/2-indexing.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-indexing.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf b/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf
index b6a8ec6d75..8910032e30 100644
--- a/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf b/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf
index 545e48c5cd..71b8ef74fa 100644
--- a/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-linespacing.pdf b/macros/latex/contrib/reledmac/examples/2-linespacing.pdf
index 44261f6be4..4e3bb139ff 100644
--- a/macros/latex/contrib/reledmac/examples/2-linespacing.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-linespacing.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf b/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf
index e452cb8bcd..a1cae283ac 100644
--- a/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-notes-width.pdf b/macros/latex/contrib/reledmac/examples/2-notes-width.pdf
index 37dd2e0a30..9c6aac015c 100644
--- a/macros/latex/contrib/reledmac/examples/2-notes-width.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-notes-width.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf b/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf
index e12f08af62..de9737c957 100644
--- a/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-performances.pdf b/macros/latex/contrib/reledmac/examples/2-performances.pdf
index ffc140c8e4..5e5f81f926 100644
--- a/macros/latex/contrib/reledmac/examples/2-performances.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-performances.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf b/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf
index 0795c78465..0c5923f736 100644
--- a/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf b/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf
index 55a65d9500..6a5768b2c3 100644
--- a/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf b/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf
index 5e2874adb8..890775aa8f 100644
--- a/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf b/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf
index 987a5f6c15..4888687cb7 100644
--- a/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf
+++ b/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf
index 5a0f3385cb..77e54cad8e 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf
index a8c277f77d..aeff29034d 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf
index bf1a0e6db3..9b784e226f 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf
index ec05bc76de..37a5e0cbfd 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf
index 9f72177583..8b011435c7 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf
index 5585d7ce33..004d0254ba 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf
index 513c08d554..562dcc24e5 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf
index 57d0b68005..c00cfc3dc3 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf
index 6c89b00e4c..093826dca2 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf
index 3e2bff636a..0cc644e116 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf
index ab17873202..3bcff728d7 100644
--- a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf
+++ b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf
index 497d6e385d..5c93f1889e 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf
index 837f77ff7d..9567cce5d6 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf
index 740a7c02c1..6c1a1367f4 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf
index a93ae66e92..0a591cbfa6 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf
index 65a91b1bd2..360c29f86c 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf
index 08f903586b..29e9d5d4f9 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf
index fdc7cfc611..646f208859 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf
index 8a6c262f89..5c849ca877 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf
index 499e7b28ec..6d2d332fec 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf
index 0b28dd10f5..a8082e7469 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf
index 7c9ae89801..d9a17ed624 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf
index 46303da21a..f3cd521397 100644
--- a/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf
+++ b/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/migration.pdf b/macros/latex/contrib/reledmac/migration.pdf
index da50fc071d..ea2f620516 100644
--- a/macros/latex/contrib/reledmac/migration.pdf
+++ b/macros/latex/contrib/reledmac/migration.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/reledmac.dtx b/macros/latex/contrib/reledmac/reledmac.dtx
index 84f70591be..33fe898c87 100644
--- a/macros/latex/contrib/reledmac/reledmac.dtx
+++ b/macros/latex/contrib/reledmac/reledmac.dtx
@@ -590,6 +590,7 @@
% \changes{v2.38.2}{2021/11/03}{Fix bug when using \protect\cs{applabel} in conjunction with \protect\package{hyperref} package.}
% \changes{v2.38.2}{2021/11/03}{Fix some trouble in indentation in stanza, when switching to some language with \protect\package{polyglossia}.}
% \changes{v2.39.0}{2021/01/11}{Add \protect\cs{Xnotboxingsubline} and \protect\cs{Xendnotboxingsubline} hooks.}
+% \changes{v2.39.1}{2021/02/04}{Fix bug with index in familiar and critical footnotes.}
% Typeset scholarly editions with \LaTeX\thanks{This file (\dtxfilename)
% has version number \fileversion, last revised \filedate.}}
%
@@ -4502,7 +4503,7 @@
% \begin{macrocode}
%<*code>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{reledmac}[2022/01/11 v2.39.0 typesetting critical editions]%
+\ProvidesPackage{reledmac}[2022/02/04 v2.39.1 typesetting critical editions]%
% \end{macrocode}
%
% \subsection{Package options}
@@ -15214,7 +15215,8 @@
% \changes{v1.23.0}{2015/04/29}{Prevent spurious spaces when \protect\cs{Afootnote} and similar commands are followed by spaces (bug added on 1.0.0!).}
% \begin{macrocode}
\global\notbool{parapparatus@}{\expandafter\newcommand\expandafter *}{\expandafter\newcommand}\csname #1footnote\endcsname[2][]{%
- \nottoggle{Xnonote@#1}{%
+ \xdef\@currentseries{#1}%
+ \nottoggle{Xnonote@#1}{%
\advance \edtext@notes by 1%
\if@edtext@secondarg@%
\ifledRcol%
@@ -15383,6 +15385,7 @@
% \begin{macrocode}
\global\expandafter\newcommand\csname footnote#1\endcsname[2][]{%
+ \xdef\@currentseries{#1}%
\nottoggle{nonoteX@#1}{%
\begingroup%
\prepare@prenotesX{#1}%
diff --git a/macros/latex/contrib/reledmac/reledmac.pdf b/macros/latex/contrib/reledmac/reledmac.pdf
index 58db8402ef..39b184defb 100644
--- a/macros/latex/contrib/reledmac/reledmac.pdf
+++ b/macros/latex/contrib/reledmac/reledmac.pdf
Binary files differ
diff --git a/macros/latex/contrib/reledmac/reledpar.pdf b/macros/latex/contrib/reledmac/reledpar.pdf
index 16114f12d1..46cfe195bf 100644
--- a/macros/latex/contrib/reledmac/reledpar.pdf
+++ b/macros/latex/contrib/reledmac/reledpar.pdf
Binary files differ
diff --git a/macros/latex/contrib/siunitx/CHANGELOG.md b/macros/latex/contrib/siunitx/CHANGELOG.md
index 8a218bd89c..ba5c3de075 100644
--- a/macros/latex/contrib/siunitx/CHANGELOG.md
+++ b/macros/latex/contrib/siunitx/CHANGELOG.md
@@ -7,6 +7,11 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to
## [Unreleased]
+## [v3.0.47] - 2022-02-03
+
+### Changed
+- Better handling of `\mathord` in text mode
+
## [v3.0.46] - 2022-02-02
### Fixed
@@ -1698,7 +1703,8 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to
### Added
- First public testing release (as `si`)
-[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.0.46...HEAD
+[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.0.47...HEAD
+[v3.0.47]: https://github.com/josephwright/siunitx/compare/v3.0.46...v3.0.47
[v3.0.46]: https://github.com/josephwright/siunitx/compare/v3.0.45...v3.0.46
[v3.0.45]: https://github.com/josephwright/siunitx/compare/v3.0.44...v3.0.45
[v3.0.44]: https://github.com/josephwright/siunitx/compare/v3.0.43...v3.0.44
diff --git a/macros/latex/contrib/siunitx/siunitx-code.pdf b/macros/latex/contrib/siunitx/siunitx-code.pdf
index ecd6faf3e6..d6d131b16c 100644
--- a/macros/latex/contrib/siunitx/siunitx-code.pdf
+++ b/macros/latex/contrib/siunitx/siunitx-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/siunitx/siunitx-number.dtx b/macros/latex/contrib/siunitx/siunitx-number.dtx
index a7bd0b7e16..98f52307c2 100644
--- a/macros/latex/contrib/siunitx/siunitx-number.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-number.dtx
@@ -3169,7 +3169,6 @@
% \begin{macro}[rEXP]{\@@_output_comparator:nn}
% \begin{macro}[rEXP]{\@@_output_sign:nnn}
% \begin{macro}[rEXP]{\@@_output_sign:nN}
-% \begin{macro}[rEXP]{\@@_output_sign:N}
% \begin{macro}[rEXP]
% {\@@_output_sign_color:w, \@@_output_sign_brackets:w}
% \begin{macro}[rEXP]{\@@_output_integer:nnn}
@@ -3310,7 +3309,7 @@
{
\bool_if:NTF \l_@@_bracket_negative_bool
{ \@@_output_sign_brackets:w }
- { \@@_output_sign:nN {#1} #2 }
+ { \@@_output_sign:nN {#1} - }
}
{ \@@_output_sign:nN {#1} #2 }
}
@@ -3319,14 +3318,9 @@
\cs_new:Npn \@@_output_sign:nN #1#2
{
\tl_if_blank:nTF {#1}
- { \@@_output_sign:N #2 }
- { \exp_not:n { \mathord {#2} } }
- }
-\cs_new:Npn \@@_output_sign:N #1
- {
- \bool_if:NTF \l_@@_tight_bool
- { \exp_not:n { \mathord {#1} } }
- { \exp_not:n {#1} }
+ { \use:n }
+ { \mathord }
+ { \exp_not:n {#2} }
}
\cs_new:Npn
\@@_output_sign_brackets:w #1 \@@_output_end:
@@ -3481,7 +3475,10 @@
\str_if_eq:VnTF \l_@@_uncert_mode_tl { separate }
{
\exp_not:n {#2}
- \@@_output_sign:N \pm
+ \bool_if:NTF \l_@@_tight_bool
+ { \mathord }
+ { \use:n }
+ { \exp_not:n { \pm } }
\exp_not:n {#2}
\@@_output_uncert_S_aux:nnn
{ \int_eval:n { \tl_count:n {#4} - \tl_count:n {#1} } }
@@ -3617,9 +3614,9 @@
\bool_lazy_and:nnT
{ \l_@@_implicit_plus_bool }
{ ! \str_if_eq_p:nn {#2} { 0 } }
- { \@@_output_sign:N + }
+ { + }
}
- { \@@_output_sign:N #1 }
+ { \exp_not:n {#1} }
\@@_output_digits:nn { integer } {#2}
}
% \end{macrocode}
@@ -3660,7 +3657,6 @@
% \end{macro}
% \end{macro}
% \end{macro}
-% \end{macro}
%
% \subsection{Miscellaneous tools}
%
diff --git a/macros/latex/contrib/siunitx/siunitx-print.dtx b/macros/latex/contrib/siunitx/siunitx-print.dtx
index 8f1e4bb467..10a316da89 100644
--- a/macros/latex/contrib/siunitx/siunitx-print.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-print.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% File: siunitx-print.dtx Copyright (C) 2016-2019,2021 Joseph Wright
+% File: siunitx-print.dtx Copyright (C) 2016-2019,2021,2022 Joseph Wright
%
% It may be distributed and/or modified under the conditions of the
% LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -791,6 +791,7 @@
%
% \begin{macro}{\siunitx_print_text:n}
% \begin{macro}{\@@_text_replace:n, \@@_text_replace_aux:n}
+% \begin{macro}[EXP]{\@@_text_replace_first:N}
% \begin{macro}{\@@_text_replace:N}
% \begin{macro}{\@@_text_replace:NNn}
% \begin{macro}{\@@_text_replace:Nnnn}
@@ -844,28 +845,31 @@
\tl_if_empty:NF \l_siunitx_unit_font_tl
{ \exp_after:wN \cs_set_eq:NN \l_siunitx_unit_font_tl \use:n }
\cs_set:Npn \mathord ##1
- {
- \str_case:nnF {##1}
- {
- { \cdot } { \exp_not:N \textperiodcentered }
- { \pm } { \exp_not:N \textpm }
- { \times } { \exp_not:N \texttimes }
- }
- {##1}
- }
+ { \@@_text_replace_first:N ##1 }
\cs_set:Npn \pm { \: \exp_not:N \textpm \: }
\tl_map_inline:nn
{ \mp \ge \le \gg \ll }
{ \cs_set:Npn ##1 { \exp_not:N \ensuremath { \exp_not:N ##1 } } }
\cs_set:Npn \cdot { \: \exp_not:N \textperiodcentered \: }
\cs_set:Npn \times { \: \exp_not:N \texttimes \: }
- \protected@edef \l_@@_tmp_tl { \l_@@_tmp_tl }
+ \protected@edef \l_@@_tmp_tl
+ { \exp_after:wN \@@_text_replace_first:N \l_@@_tmp_tl }
\@@_text_replace:N \l_@@_tmp_tl
\@@_text_replace_aux:n { \tl_use:N \l_@@_tmp_tl }
}
\group_end:
}
\cs_new_protected:Npn \@@_text_replace_aux:n #1 {#1}
+\cs_new:Npn \@@_text_replace_first:N #1
+ {
+ \str_case:nnF {#1}
+ {
+ { \cdot } { \exp_not:N \textperiodcentered }
+ { \pm } { \exp_not:N \textpm }
+ { \times } { \exp_not:N \texttimes }
+ }
+ {#1}
+ }
\cs_new_protected:Npx \@@_text_replace:N #1
{
\exp_not:N \@@_text_replace:NNn #1
@@ -1022,6 +1026,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \subsection{Standard settings for module options}
%
diff --git a/macros/latex/contrib/siunitx/siunitx.dtx b/macros/latex/contrib/siunitx/siunitx.dtx
index e860a803b3..d1d4e125ab 100644
--- a/macros/latex/contrib/siunitx/siunitx.dtx
+++ b/macros/latex/contrib/siunitx/siunitx.dtx
@@ -121,7 +121,7 @@
%
% Identify the package and give the over all version information.
% \begin{macrocode}
-\ProvidesExplPackage {siunitx} {2022-02-02} {3.0.46}
+\ProvidesExplPackage {siunitx} {2022-02-03} {3.0.47}
{A comprehensive (SI) units package}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/siunitx/siunitx.pdf b/macros/latex/contrib/siunitx/siunitx.pdf
index c4f79568c0..5563799b59 100644
--- a/macros/latex/contrib/siunitx/siunitx.pdf
+++ b/macros/latex/contrib/siunitx/siunitx.pdf
Binary files differ