summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-10-24 03:03:39 +0000
committerNorbert Preining <norbert@preining.info>2022-10-24 03:03:39 +0000
commit74697976d2ffe935077542593ccbb18a00603251 (patch)
treeca88ce389275df22be5c2c843de613d8003bf684
parent588d4f81788b3a24bd9bd480ec40bb55be4d1da1 (diff)
CTAN sync 202210240303
-rw-r--r--FILES.byname505
-rw-r--r--FILES.byname.gzbin2470423 -> 2470470 bytes
-rw-r--r--FILES.last07days413
-rw-r--r--biblio/ctan-bibdata/ctan.bib39
-rw-r--r--biblio/ctan-bibdata/ctan.pdfbin3619759 -> 3620353 bytes
-rw-r--r--graphics/pgf/contrib/tikz-ext/README.md1
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-calendar.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-calendar.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-intro.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-intro.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-calendar-plus.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-misc.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-misc.tex)113
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-node-families.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-node-families.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.arcto.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.arcto.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.ortho.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.ortho.tex)6
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.timer.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-patterns.images.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-positioning-plus.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-topaths.arcthrough.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-topaths.arcthrough.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-trans.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-trans.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-body.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-body.tex)12
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-preamble.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-preamble.tex)17
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlearrow.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-heatmark.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-rectround.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-superellipse.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-uncentered.tex99
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-trans.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-trans.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.bib (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.bib)59
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.pdf (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.pdf)bin534933 -> 574442 bytes
-rw-r--r--graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.tex (renamed from graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.tex)0
-rw-r--r--graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex2
-rw-r--r--graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfkeyslibraryext.pgfkeys-plus.code.tex139
-rw-r--r--graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.pgfkeys-plus.code.tex11
-rw-r--r--graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.uncenteredrectangle.code.tex307
-rw-r--r--graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.misc.code.tex77
-rw-r--r--graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex4
-rw-r--r--graphics/pstricks/base/Changes5
-rw-r--r--graphics/pstricks/base/doc/pst-news22.pdfbin79990 -> 93124 bytes
-rw-r--r--graphics/pstricks/base/doc/pst-news22.tex46
-rw-r--r--graphics/pstricks/base/dvips/pstricks.pro10
-rw-r--r--graphics/pstricks/base/generic/pstricks.tex21
-rw-r--r--graphics/pstricks/base/latex/pstricks.sty7
-rw-r--r--macros/latex/contrib/iexec/iexec.dtx26
-rw-r--r--macros/latex/contrib/iexec/iexec.pdfbin326148 -> 327771 bytes
-rw-r--r--macros/latex/contrib/siunitx/CHANGELOG.md12
-rw-r--r--macros/latex/contrib/siunitx/siunitx-code.pdfbin617674 -> 617655 bytes
-rw-r--r--macros/latex/contrib/siunitx/siunitx-complex.dtx48
-rw-r--r--macros/latex/contrib/siunitx/siunitx.dtx2
-rw-r--r--macros/latex/contrib/siunitx/siunitx.pdfbin665420 -> 666267 bytes
-rw-r--r--macros/latex/contrib/siunitx/siunitx.tex10
-rw-r--r--macros/latex/contrib/srdp-mathematik/README.md2
-rw-r--r--macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdfbin180179 -> 180259 bytes
-rw-r--r--macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty588
-rw-r--r--macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex2
-rw-r--r--macros/latex/required/babel/base/README.md27
-rw-r--r--macros/latex/required/babel/base/babel.dtx205
-rw-r--r--macros/latex/required/babel/base/babel.ins2
-rw-r--r--macros/latex/required/babel/base/babel.pdfbin885961 -> 885304 bytes
-rw-r--r--macros/latex/required/babel/base/bbcompat.dtx2
-rw-r--r--macros/luatex/latex/piton/piton-french.pdfbin154819 -> 217579 bytes
-rw-r--r--macros/luatex/latex/piton/piton-french.tex543
-rw-r--r--macros/luatex/latex/piton/piton.dtx857
-rw-r--r--macros/luatex/latex/piton/piton.pdfbin308546 -> 407293 bytes
-rw-r--r--macros/unicodetex/latex/njuthesis/njuthesis.dtx1239
-rw-r--r--macros/unicodetex/latex/njuthesis/njuthesis.ins4
-rw-r--r--macros/unicodetex/latex/njuthesis/njuthesis.pdfbin1185691 -> 1200264 bytes
-rw-r--r--support/TeX4ht/source/ChangeLog6
-rw-r--r--support/TeX4ht/source/tex4ht-html4.tex17
-rw-r--r--support/TeX4ht/source/tex4ht-mathjax.tex21
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl9
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb266
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc14
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2424044 -> 2422804 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/pr.ini8
-rw-r--r--systems/win32/miktex/tm/packages/pr.ini8
-rw-r--r--timestamp2
78 files changed, 4109 insertions, 1708 deletions
diff --git a/FILES.byname b/FILES.byname
index c989bd2006..195fb06ae1 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2035,12 +2035,12 @@
2022/09/23 | 1673 | biblio/citation-style-language/README.md
2022/09/23 | 11958 | biblio/citation-style-language/vancouver.csl
2022/09/23 | 591448 | biblio/citation-style-language.zip
-2022/10/22 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2022/10/23 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2022/10/22 | 2741526 | biblio/ctan-bibdata/ctan.bib
-2022/10/22 | 3617779 | biblio/ctan-bibdata/ctan.pdf
+2022/10/23 | 2741887 | biblio/ctan-bibdata/ctan.bib
+2022/10/23 | 3619759 | biblio/ctan-bibdata/ctan.pdf
2022/10/08 | 1415 | biblio/ctan-bibdata/README
-2022/10/22 | 4008758 | biblio/ctan-bibdata.zip
+2022/10/23 | 4011931 | biblio/ctan-bibdata.zip
2022/02/06 | 3110 | biblio/pbibtex/pbibtex-base/cpp.awk
2022/02/06 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh
2022/02/06 | 22422 | biblio/pbibtex/pbibtex-base/jabbrv.bst
@@ -5414,7 +5414,7 @@
1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
-2022/10/22 | 187668 | FILES.last07days
+2022/10/23 | 163812 | FILES.last07days
2021/07/24 | 1139410 | fonts/aboensis/Aboensis.glyphs
2021/07/24 | 18907382 | fonts/aboensis/aboensis.pdf
2021/07/24 | 137860 | fonts/aboensis/Aboensis-Regular.otf
@@ -159926,51 +159926,55 @@
2020/06/30 | 590 | graphics/pgf/contrib/tikzducks/tikzlibraryducks.code.tex
2020/06/30 | 1603 | graphics/pgf/contrib/tikzducks/t-tikzducks.mkiv
2020/06/30 | 469453 | graphics/pgf/contrib/tikzducks.zip
-2022/10/09 | 12485 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.bib
-2022/10/09 | 4172 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-calendar.tex
-2022/10/01 | 1053 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-intro.tex
-2022/10/01 | 2962 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex
-2022/10/01 | 8719 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-misc.tex
-2022/10/01 | 5784 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-node-families.tex
-2022/08/21 | 3948 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.arcto.tex
-2022/10/01 | 9088 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.ortho.tex
-2022/10/01 | 3526 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex
-2022/10/01 | 1689 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex
-2022/10/01 | 8730 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex
-2022/08/21 | 2265 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-topaths.arcthrough.tex
-2022/09/18 | 5464 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-trans.tex
-2022/10/09 | 7837 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-body.tex
-2022/10/01 | 12400 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-preamble.tex
-2022/10/01 | 3661 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
-2022/10/01 | 2593 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
-2022/10/01 | 3389 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex
-2022/09/11 | 2673 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex
-2022/10/01 | 4047 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex
-2022/10/01 | 5465 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-trans.tex
-2022/10/09 | 534933 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.pdf
-2022/10/09 | 772 | graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.tex
-2022/10/09 | 933 | graphics/pgf/contrib/tikz-ext/README.md
-2022/10/09 | 15023 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex
-2022/09/11 | 3395 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex
-2022/09/10 | 8698 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex
-2022/09/18 | 6480 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.heatmark.code.tex
-2022/08/27 | 11354 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex
-2022/08/27 | 7901 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.superellipse.code.tex
-2022/08/14 | 3357 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.transformations.mirror.code.tex
-2022/10/01 | 2672 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.calendar-plus.code.tex
-2022/09/18 | 9536 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.misc.code.tex
-2022/10/09 | 13006 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.node-families.code.tex
-2022/10/01 | 1535 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.node-families.shapes.geometric.code.tex
-2022/10/09 | 13557 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex
-2022/10/01 | 29169 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.ortho.code.tex
-2022/08/14 | 8121 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.timer.code.tex
-2022/09/18 | 2442 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.patterns.images.code.tex
-2022/09/18 | 10180 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.positioning-plus.code.tex
-2022/08/16 | 2497 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.topaths.arcthrough.code.tex
-2022/09/18 | 4722 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.transformations.mirror.code.tex
-2022/08/21 | 257 | graphics/pgf/contrib/tikz-ext/tex/latex/tikz-ext/pgfcalendar-ext.sty
-2022/08/21 | 297 | graphics/pgf/contrib/tikz-ext/tex/plain/tikz-ext/pgfcalendar-ext.tex
-2022/10/10 | 571141 | graphics/pgf/contrib/tikz-ext.zip
+2022/10/23 | 14799 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.bib
+2022/10/11 | 4172 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-calendar.tex
+2022/10/11 | 1053 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-intro.tex
+2022/10/11 | 2962 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-calendar-plus.tex
+2022/10/23 | 11063 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-misc.tex
+2022/10/11 | 5784 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-node-families.tex
+2022/10/23 | 3948 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.arcto.tex
+2022/10/23 | 9091 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.ortho.tex
+2022/10/11 | 3526 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.timer.tex
+2022/10/11 | 1689 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-patterns.images.tex
+2022/10/11 | 8730 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-positioning-plus.tex
+2022/10/11 | 2265 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-topaths.arcthrough.tex
+2022/10/11 | 5464 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-trans.tex
+2022/10/23 | 8205 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-body.tex
+2022/10/23 | 13056 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-preamble.tex
+2022/10/11 | 3661 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
+2022/10/11 | 2593 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
+2022/10/11 | 3389 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-heatmark.tex
+2022/10/11 | 2673 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-rectround.tex
+2022/10/11 | 4047 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-superellipse.tex
+2022/10/23 | 4603 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-uncentered.tex
+2022/10/11 | 5465 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-trans.tex
+2022/10/23 | 574442 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.pdf
+2022/10/09 | 772 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.tex
+2022/10/23 | 971 | graphics/pgf/contrib/tikz-ext/README.md
+2022/10/23 | 15025 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex
+2022/10/23 | 4072 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfkeyslibraryext.pgfkeys-plus.code.tex
+2022/10/11 | 242 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.pgfkeys-plus.code.tex
+2022/10/11 | 3395 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex
+2022/10/11 | 8698 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex
+2022/10/11 | 6480 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.heatmark.code.tex
+2022/10/11 | 11354 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex
+2022/10/11 | 7901 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.superellipse.code.tex
+2022/10/17 | 10088 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.uncenteredrectangle.code.tex
+2022/10/11 | 3357 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.transformations.mirror.code.tex
+2022/10/11 | 2672 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.calendar-plus.code.tex
+2022/10/11 | 6890 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.misc.code.tex
+2022/10/11 | 13006 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.node-families.code.tex
+2022/10/11 | 1535 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.node-families.shapes.geometric.code.tex
+2022/10/19 | 13553 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex
+2022/10/11 | 29169 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.ortho.code.tex
+2022/10/11 | 8121 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.timer.code.tex
+2022/10/11 | 2442 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.patterns.images.code.tex
+2022/10/11 | 10180 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.positioning-plus.code.tex
+2022/10/11 | 2497 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.topaths.arcthrough.code.tex
+2022/10/11 | 4722 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.transformations.mirror.code.tex
+2022/10/11 | 257 | graphics/pgf/contrib/tikz-ext/tex/latex/tikz-ext/pgfcalendar-ext.sty
+2022/10/11 | 297 | graphics/pgf/contrib/tikz-ext/tex/plain/tikz-ext/pgfcalendar-ext.tex
+2022/10/23 | 614033 | graphics/pgf/contrib/tikz-ext.zip
2019/08/19 | 2649 | graphics/pgf/contrib/tikz-feynhand/changes.txt
2019/08/19 | 1924 | graphics/pgf/contrib/tikz-feynhand/README.md
2016/08/12 | 48826 | graphics/pgf/contrib/tikz-feynhand/shell_escape.jpg
@@ -162686,7 +162690,7 @@
1995/04/26 | 830 | graphics/pstex/readme.dos
1995/04/26 | 1436 | graphics/pstex/std.h
2006/05/21 | 60272 | graphics/pstex.zip
-2022/09/11 | 3870 | graphics/pstricks/base/Changes
+2022/10/23 | 3912 | graphics/pstricks/base/Changes
2021/08/26 | 2081 | graphics/pstricks/base/config/distiller.cfg
2021/08/26 | 14970 | graphics/pstricks/base/config/dvips.cfg
2021/08/26 | 4938 | graphics/pstricks/base/config/dvipsone.cfg
@@ -162735,8 +162739,8 @@
2021/08/26 | 4946 | graphics/pstricks/base/doc/pst-news20.tex
2021/09/24 | 129526 | graphics/pstricks/base/doc/pst-news21.pdf
2021/09/24 | 8869 | graphics/pstricks/base/doc/pst-news21.tex
-2022/09/11 | 79990 | graphics/pstricks/base/doc/pst-news22.pdf
-2022/08/30 | 1818 | graphics/pstricks/base/doc/pst-news22.tex
+2022/10/23 | 93124 | graphics/pstricks/base/doc/pst-news22.pdf
+2022/10/23 | 2331 | graphics/pstricks/base/doc/pst-news22.tex
2021/08/26 | 3459 | graphics/pstricks/base/doc/pst-news.sty
2021/08/26 | 9735 | graphics/pstricks/base/doc/pst-news.tex
2021/08/26 | 3978 | graphics/pstricks/base/doc/PSTricks.bib
@@ -162750,7 +162754,7 @@
2020/06/07 | 4734 | graphics/pstricks/base/dvips/pst-dots97.pro
2022/09/08 | 18367 | graphics/pstricks/base/dvips/pst-dots.pro
2021/07/23 | 12327 | graphics/pstricks/base/dvips/pstricks97.pro
-2022/01/12 | 37318 | graphics/pstricks/base/dvips/pstricks.pro
+2022/09/22 | 37460 | graphics/pstricks/base/dvips/pstricks.pro
2021/08/26 | 23492 | graphics/pstricks/base/generic/pst-fp.tex
2021/08/26 | 2787 | graphics/pstricks/base/generic/pst-key.tex
2021/09/07 | 70662 | graphics/pstricks/base/generic/pstricks97.tex
@@ -162758,7 +162762,7 @@
2021/09/23 | 4629 | graphics/pstricks/base/generic/pstricks-color.tex
2021/09/15 | 15065 | graphics/pstricks/base/generic/pstricks.con
2022/08/30 | 10017 | graphics/pstricks/base/generic/pstricks-dots.tex
-2022/09/11 | 125297 | graphics/pstricks/base/generic/pstricks.tex
+2022/10/23 | 125369 | graphics/pstricks/base/generic/pstricks.tex
2022/08/27 | 3363 | graphics/pstricks/base/generic/pstricks-tex.def
2021/08/26 | 1004 | graphics/pstricks/base/generic/pstricks-xetex.def
2022/08/30 | 26127 | graphics/pstricks/base/History
@@ -162766,9 +162770,9 @@
2021/08/26 | 899 | graphics/pstricks/base/latex/pstcol.sty
2021/08/26 | 249 | graphics/pstricks/base/latex/pst-key.sty
2021/08/26 | 5261 | graphics/pstricks/base/latex/pstricks-pdf.sty
-2021/09/24 | 8044 | graphics/pstricks/base/latex/pstricks.sty
+2022/10/23 | 8045 | graphics/pstricks/base/latex/pstricks.sty
2021/08/26 | 4651 | graphics/pstricks/base/README
-2022/09/11 | 8107410 | graphics/pstricks/base.zip
+2022/10/23 | 8106386 | graphics/pstricks/base.zip
2014/07/25 | 3769 | graphics/pstricks/contrib/dsptricks/dspblocks.sty
2014/07/24 | 9254 | graphics/pstricks/contrib/dsptricks/dspfunctions.sty
2014/07/25 | 212782 | graphics/pstricks/contrib/dsptricks/dspTricksManual.pdf
@@ -189937,7 +189941,7 @@
2021/11/10 | 657160 | install/macros/latex/contrib/sdaps.tds.zip
2022/09/27 | 1456618 | install/macros/latex/contrib/se2thesis.tds.zip
2019/12/10 | 544332 | install/macros/latex/contrib/selinput.tds.zip
-2022/10/04 | 1513335 | install/macros/latex/contrib/siunitx.tds.zip
+2022/10/23 | 1514332 | install/macros/latex/contrib/siunitx.tds.zip
2019/10/15 | 315856 | install/macros/latex/contrib/skmath.tds.zip
2019/10/16 | 345652 | install/macros/latex/contrib/skrapport.tds.zip
2019/12/15 | 357584 | install/macros/latex/contrib/soulutf8.tds.zip
@@ -190003,7 +190007,7 @@
2022/09/23 | 7340097 | install/macros/latex-dev/required/latex-tools-dev.tds.zip
2022/07/05 | 38317838 | install/macros/latex/latex-base.tds.zip
2020/06/01 | 1578753 | install/macros/latex/required/amscls.tds.zip
-2022/10/04 | 3016644 | install/macros/latex/required/babel-base.tds.zip
+2022/10/23 | 3018925 | install/macros/latex/required/babel-base.tds.zip
2022/06/08 | 2794804 | install/macros/latex/required/latex-amsmath.tds.zip
2022/06/14 | 242625 | install/macros/latex/required/latexbug.tds.zip
2022/06/16 | 1352652 | install/macros/latex/required/latex-cyrillic.tds.zip
@@ -197473,7 +197477,7 @@
2013/04/01 | 14776 | macros/context/contrib/context-visualcounter/tex/context/third/visualcounter/t-visualcounter.mkvi
2018/03/05 | 11 | macros/context/contrib/context-visualcounter/VERSION
2018/03/22 | 276789 | macros/context/contrib/context-visualcounter.zip
-2022/10/21 | 115441744 | macros/context/latest/cont-tmf.zip
+2022/10/22 | 115441566 | macros/context/latest/cont-tmf.zip
2016/04/21 | 32846 | macros/cstex/base/cmexb.tar.gz
2016/06/26 | 1728262 | macros/cstex/base/csfonts-t1.tar.gz
2007/03/01 | 187106 | macros/cstex/base/csfonts.tar.gz
@@ -220747,13 +220751,13 @@
2015/08/26 | 130521 | macros/latex/contrib/IEEEtran/tools/IEEEtrantools.sty
2015/08/27 | 4190 | macros/latex/contrib/IEEEtran/tools/README
2015/08/28 | 1727001 | macros/latex/contrib/IEEEtran.zip
-2022/10/22 | 51 | macros/latex/contrib/iexec/DEPENDS.txt
-2022/10/22 | 13937 | macros/latex/contrib/iexec/iexec.dtx
-2022/10/22 | 2625 | macros/latex/contrib/iexec/iexec.ins
-2022/10/22 | 326148 | macros/latex/contrib/iexec/iexec.pdf
-2022/10/22 | 1083 | macros/latex/contrib/iexec/LICENSE.txt
-2022/10/22 | 1369 | macros/latex/contrib/iexec/README.md
-2022/10/22 | 329071 | macros/latex/contrib/iexec.zip
+2022/10/23 | 51 | macros/latex/contrib/iexec/DEPENDS.txt
+2022/10/23 | 14557 | macros/latex/contrib/iexec/iexec.dtx
+2022/10/23 | 2625 | macros/latex/contrib/iexec/iexec.ins
+2022/10/23 | 327771 | macros/latex/contrib/iexec/iexec.pdf
+2022/10/23 | 1083 | macros/latex/contrib/iexec/LICENSE.txt
+2022/10/23 | 1369 | macros/latex/contrib/iexec/README.md
+2022/10/23 | 330864 | macros/latex/contrib/iexec.zip
2004/10/19 | 24919 | macros/latex/contrib/ifacmtg/ifac.bst
2003/06/12 | 62063 | macros/latex/contrib/ifacmtg/ifacmtg.cls
1999/04/22 | 1681 | macros/latex/contrib/ifacmtg/ifacsam.bib
@@ -230814,33 +230818,33 @@
2007/12/02 | 2971 | macros/latex/contrib/SIunits/SIunits.ins
2007/12/02 | 328621 | macros/latex/contrib/SIunits/SIunits.pdf
2007/12/02 | 296391 | macros/latex/contrib/SIunits.zip
-2022/10/04 | 69260 | macros/latex/contrib/siunitx/CHANGELOG.md
-2022/10/04 | 996 | macros/latex/contrib/siunitx/README.md
-2022/10/04 | 10812 | macros/latex/contrib/siunitx/siunitx-abbreviation.dtx
-2022/10/04 | 4748 | macros/latex/contrib/siunitx/siunitx-abbreviations.cfg
-2022/10/04 | 16709 | macros/latex/contrib/siunitx/siunitx-angle.dtx
-2022/10/04 | 1729 | macros/latex/contrib/siunitx/siunitx-binary.cfg
-2022/10/04 | 2883 | macros/latex/contrib/siunitx/siunitx-binary.dtx
-2022/10/04 | 617674 | macros/latex/contrib/siunitx/siunitx-code.pdf
-2022/10/04 | 2620 | macros/latex/contrib/siunitx/siunitx-code.tex
-2022/10/04 | 8798 | macros/latex/contrib/siunitx/siunitx-command.dtx
-2022/10/04 | 37954 | macros/latex/contrib/siunitx/siunitx-complex.dtx
-2022/10/04 | 33799 | macros/latex/contrib/siunitx/siunitx-compound.dtx
-2022/10/04 | 21683 | macros/latex/contrib/siunitx/siunitx.dtx
-2022/10/04 | 32418 | macros/latex/contrib/siunitx/siunitx-emulation.dtx
-2022/10/04 | 3687 | macros/latex/contrib/siunitx/siunitx.ins
-2022/10/04 | 5481 | macros/latex/contrib/siunitx/siunitx-locale.dtx
-2022/10/04 | 147297 | macros/latex/contrib/siunitx/siunitx-number.dtx
-2022/10/04 | 665420 | macros/latex/contrib/siunitx/siunitx.pdf
-2022/10/04 | 35916 | macros/latex/contrib/siunitx/siunitx-print.dtx
-2022/10/04 | 15611 | macros/latex/contrib/siunitx/siunitx-quantity.dtx
-2022/10/04 | 9912 | macros/latex/contrib/siunitx/siunitx-symbol.dtx
-2022/10/04 | 50961 | macros/latex/contrib/siunitx/siunitx-table.dtx
-2022/10/04 | 158390 | macros/latex/contrib/siunitx/siunitx.tex
-2022/10/04 | 103909 | macros/latex/contrib/siunitx/siunitx-unit.dtx
-2022/10/04 | 273398 | macros/latex/contrib/siunitx/siunitx-v2.sty
-2022/10/04 | 31738 | macros/latex/contrib/siunitx/siunitx-version-1.cfg
-2022/10/04 | 1469084 | macros/latex/contrib/siunitx.zip
+2022/10/23 | 69530 | macros/latex/contrib/siunitx/CHANGELOG.md
+2022/10/23 | 996 | macros/latex/contrib/siunitx/README.md
+2022/10/23 | 10812 | macros/latex/contrib/siunitx/siunitx-abbreviation.dtx
+2022/10/23 | 4748 | macros/latex/contrib/siunitx/siunitx-abbreviations.cfg
+2022/10/23 | 16709 | macros/latex/contrib/siunitx/siunitx-angle.dtx
+2022/10/23 | 1729 | macros/latex/contrib/siunitx/siunitx-binary.cfg
+2022/10/23 | 2883 | macros/latex/contrib/siunitx/siunitx-binary.dtx
+2022/10/23 | 617655 | macros/latex/contrib/siunitx/siunitx-code.pdf
+2022/10/23 | 2620 | macros/latex/contrib/siunitx/siunitx-code.tex
+2022/10/23 | 8798 | macros/latex/contrib/siunitx/siunitx-command.dtx
+2022/10/23 | 38097 | macros/latex/contrib/siunitx/siunitx-complex.dtx
+2022/10/23 | 33799 | macros/latex/contrib/siunitx/siunitx-compound.dtx
+2022/10/23 | 21683 | macros/latex/contrib/siunitx/siunitx.dtx
+2022/10/23 | 32418 | macros/latex/contrib/siunitx/siunitx-emulation.dtx
+2022/10/23 | 3687 | macros/latex/contrib/siunitx/siunitx.ins
+2022/10/23 | 5481 | macros/latex/contrib/siunitx/siunitx-locale.dtx
+2022/10/23 | 147297 | macros/latex/contrib/siunitx/siunitx-number.dtx
+2022/10/23 | 666267 | macros/latex/contrib/siunitx/siunitx.pdf
+2022/10/23 | 35916 | macros/latex/contrib/siunitx/siunitx-print.dtx
+2022/10/23 | 15611 | macros/latex/contrib/siunitx/siunitx-quantity.dtx
+2022/10/23 | 9912 | macros/latex/contrib/siunitx/siunitx-symbol.dtx
+2022/10/23 | 50961 | macros/latex/contrib/siunitx/siunitx-table.dtx
+2022/10/23 | 158763 | macros/latex/contrib/siunitx/siunitx.tex
+2022/10/23 | 103909 | macros/latex/contrib/siunitx/siunitx-unit.dtx
+2022/10/23 | 273398 | macros/latex/contrib/siunitx/siunitx-v2.sty
+2022/10/23 | 31738 | macros/latex/contrib/siunitx/siunitx-version-1.cfg
+2022/10/23 | 1470100 | macros/latex/contrib/siunitx.zip
2011/06/03 | 662398 | macros/latex/contrib/skb/doc/skb.pdf
2011/03/15 | 1485 | macros/latex/contrib/skb/doc/user-guide/database/acronyms.tex
2011/03/15 | 722 | macros/latex/contrib/skb/doc/user-guide/database/bibliography.tex
@@ -231603,12 +231607,12 @@
2004/11/06 | 1611 | macros/latex/contrib/srcltx/srcltx.ins
2006/12/06 | 130115 | macros/latex/contrib/srcltx/srcltx.pdf
2006/12/07 | 120683 | macros/latex/contrib/srcltx.zip
-2022/10/02 | 986 | macros/latex/contrib/srdp-mathematik/README.md
-2022/10/02 | 180179 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdf
-2022/10/02 | 78447 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty
-2022/10/02 | 48433 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex
+2022/10/23 | 986 | macros/latex/contrib/srdp-mathematik/README.md
+2022/10/23 | 180259 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdf
+2022/10/23 | 78837 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty
+2022/10/23 | 48433 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex
2021/11/09 | 112313 | macros/latex/contrib/srdp-mathematik/srdp-tables.sty
-2022/10/02 | 190297 | macros/latex/contrib/srdp-mathematik.zip
+2022/10/23 | 190706 | macros/latex/contrib/srdp-mathematik.zip
2013/09/06 | 64496 | macros/latex/contrib/sseq/sseq.dtx
2009/04/10 | 112 | macros/latex/contrib/sseq/sseq.ins
2013/09/06 | 215050 | macros/latex/contrib/sseq/sseq.pdf
@@ -238016,14 +238020,14 @@
2022/06/08 | 454511 | macros/latex/required/amsmath/testmath.pdf
2022/06/08 | 82371 | macros/latex/required/amsmath/testmath.tex
2022/06/08 | 2762704 | macros/latex/required/amsmath.zip
-2022/10/04 | 748623 | macros/latex/required/babel/base/babel.dtx
-2022/10/04 | 7869 | macros/latex/required/babel/base/babel.ins
-2022/10/04 | 885961 | macros/latex/required/babel/base/babel.pdf
-2022/10/04 | 21890 | macros/latex/required/babel/base/bbcompat.dtx
-2022/10/04 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
-2022/10/04 | 838464 | macros/latex/required/babel/base/locale.zip
-2022/10/04 | 2179 | macros/latex/required/babel/base/README.md
-2022/10/04 | 1922500 | macros/latex/required/babel/base.zip
+2022/10/23 | 748005 | macros/latex/required/babel/base/babel.dtx
+2022/10/23 | 7869 | macros/latex/required/babel/base/babel.ins
+2022/10/23 | 885304 | macros/latex/required/babel/base/babel.pdf
+2022/10/23 | 21890 | macros/latex/required/babel/base/bbcompat.dtx
+2022/10/23 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
+2022/10/23 | 839829 | macros/latex/required/babel/base/locale.zip
+2022/10/23 | 2277 | macros/latex/required/babel/base/README.md
+2022/10/23 | 1922922 | macros/latex/required/babel/base.zip
2022/06/16 | 5612 | macros/latex/required/cyrillic/changes.txt
2022/06/16 | 57710 | macros/latex/required/cyrillic/cyinpenc.dtx
2022/06/16 | 215413 | macros/latex/required/cyrillic/cyinpenc.pdf
@@ -239356,13 +239360,13 @@
2012/02/06 | 135018 | macros/luatex/latex/pgfmolbio/SampleScf.scf
2012/03/09 | 867 | macros/luatex/latex/pgfmolbio/SampleUniprot.txt
2013/07/31 | 923987 | macros/luatex/latex/pgfmolbio.zip
-2022/10/08 | 48244 | macros/luatex/latex/piton/piton.dtx
-2022/10/08 | 154819 | macros/luatex/latex/piton/piton-french.pdf
-2022/10/08 | 14705 | macros/luatex/latex/piton/piton-french.tex
+2022/10/23 | 69555 | macros/luatex/latex/piton/piton.dtx
+2022/10/23 | 217579 | macros/luatex/latex/piton/piton-french.pdf
+2022/10/23 | 27754 | macros/luatex/latex/piton/piton-french.tex
2022/08/26 | 1430 | macros/luatex/latex/piton/piton.ins
-2022/10/08 | 308546 | macros/luatex/latex/piton/piton.pdf
+2022/10/23 | 407293 | macros/luatex/latex/piton/piton.pdf
2022/09/29 | 900 | macros/luatex/latex/piton/README.md
-2022/10/08 | 344799 | macros/luatex/latex/piton.zip
+2022/10/23 | 476329 | macros/luatex/latex/piton.zip
2017/08/26 | 36035 | macros/luatex/latex/placeat/placeat.dtx
2017/08/26 | 4438 | macros/luatex/latex/placeat/placeat.lua
2017/08/26 | 97006 | macros/luatex/latex/placeat/placeat.pdf
@@ -247660,12 +247664,12 @@
2020/09/29 | 211 | macros/unicodetex/latex/lilyglyphs/tex/README-tex
2020/09/29 | 49 | macros/unicodetex/latex/lilyglyphs/VERSION
2020/09/29 | 2283370 | macros/unicodetex/latex/lilyglyphs.zip
-2022/08/08 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE
-2022/08/08 | 291009 | macros/unicodetex/latex/njuthesis/njuthesis.dtx
-2022/08/08 | 3096 | macros/unicodetex/latex/njuthesis/njuthesis.ins
-2022/08/08 | 1185691 | macros/unicodetex/latex/njuthesis/njuthesis.pdf
-2022/08/08 | 1077 | macros/unicodetex/latex/njuthesis/README.md
-2022/08/08 | 1252119 | macros/unicodetex/latex/njuthesis.zip
+2022/10/23 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE
+2022/10/23 | 298140 | macros/unicodetex/latex/njuthesis/njuthesis.dtx
+2022/10/23 | 3094 | macros/unicodetex/latex/njuthesis/njuthesis.ins
+2022/10/23 | 1200264 | macros/unicodetex/latex/njuthesis/njuthesis.pdf
+2022/10/23 | 1077 | macros/unicodetex/latex/njuthesis/README.md
+2022/10/23 | 1266830 | macros/unicodetex/latex/njuthesis.zip
2021/08/05 | 269 | macros/unicodetex/latex/nwafuthesis/build.sh
2021/08/05 | 263 | macros/unicodetex/latex/nwafuthesis/build-win.bat
2021/08/05 | 218987 | macros/unicodetex/latex/nwafuthesis/logo/building.jpg
@@ -284216,9 +284220,9 @@
2022/03/13 | 42852 | systems/texlive/tlnet/archive/chemmacros.r62655.tar.xz
2021/01/22 | 794728 | systems/texlive/tlnet/archive/chemnum.doc.r57490.tar.xz
2021/01/22 | 11532 | systems/texlive/tlnet/archive/chemnum.r57490.tar.xz
-2022/10/10 | 914092 | systems/texlive/tlnet/archive/chemobabel.doc.r64665.tar.xz
-2022/10/10 | 4304 | systems/texlive/tlnet/archive/chemobabel.r64665.tar.xz
-2022/10/10 | 15364 | systems/texlive/tlnet/archive/chemobabel.source.r64665.tar.xz
+2022/10/23 | 926456 | systems/texlive/tlnet/archive/chemobabel.doc.r64778.tar.xz
+2022/10/23 | 4496 | systems/texlive/tlnet/archive/chemobabel.r64778.tar.xz
+2022/10/23 | 16168 | systems/texlive/tlnet/archive/chemobabel.source.r64778.tar.xz
2021/09/26 | 970944 | systems/texlive/tlnet/archive/chemplants.doc.r60606.tar.xz
2021/09/26 | 7704 | systems/texlive/tlnet/archive/chemplants.r60606.tar.xz
2019/02/28 | 291444 | systems/texlive/tlnet/archive/chemschemex.doc.r46723.tar.xz
@@ -284603,7 +284607,7 @@
2020/03/04 | 408 | systems/texlive/tlnet/archive/collection-langpolish.r54074.tar.xz
2020/03/04 | 392 | systems/texlive/tlnet/archive/collection-langportuguese.r54074.tar.xz
2020/03/07 | 380 | systems/texlive/tlnet/archive/collection-langspanish.r54141.tar.xz
-2022/10/22 | 6780 | systems/texlive/tlnet/archive/collection-latexextra.r64770.tar.xz
+2022/10/23 | 6792 | systems/texlive/tlnet/archive/collection-latexextra.r64783.tar.xz
2022/06/10 | 700 | systems/texlive/tlnet/archive/collection-latex.r63515.tar.xz
2022/06/12 | 736 | systems/texlive/tlnet/archive/collection-latexrecommended.r63547.tar.xz
2022/09/15 | 920 | systems/texlive/tlnet/archive/collection-luatex.r64393.tar.xz
@@ -288004,9 +288008,9 @@
2022/04/06 | 17644 | systems/texlive/tlnet/archive/ieejtran.r62957.tar.xz
2019/02/28 | 3464 | systems/texlive/tlnet/archive/ietfbibs.doc.r41332.tar.xz
2019/02/28 | 456 | systems/texlive/tlnet/archive/ietfbibs.r41332.tar.xz
-2022/10/22 | 322424 | systems/texlive/tlnet/archive/iexec.doc.r64771.tar.xz
-2022/10/22 | 2296 | systems/texlive/tlnet/archive/iexec.r64771.tar.xz
-2022/10/22 | 5072 | systems/texlive/tlnet/archive/iexec.source.r64771.tar.xz
+2022/10/23 | 323620 | systems/texlive/tlnet/archive/iexec.doc.r64779.tar.xz
+2022/10/23 | 2380 | systems/texlive/tlnet/archive/iexec.r64779.tar.xz
+2022/10/23 | 5260 | systems/texlive/tlnet/archive/iexec.source.r64779.tar.xz
2021/07/24 | 175068 | systems/texlive/tlnet/archive/ifallfalse.doc.r60027.tar.xz
2021/07/24 | 1248 | systems/texlive/tlnet/archive/ifallfalse.r60027.tar.xz
2021/07/24 | 3084 | systems/texlive/tlnet/archive/ifallfalse.source.r60027.tar.xz
@@ -289596,8 +289600,8 @@
2022/08/25 | 48104 | systems/texlive/tlnet/archive/lua-widow-control.source.r64191.tar.xz
2021/10/08 | 123428 | systems/texlive/tlnet/archive/luaxml.doc.r60709.tar.xz
2021/10/08 | 32276 | systems/texlive/tlnet/archive/luaxml.r60709.tar.xz
-2022/10/17 | 83536 | systems/texlive/tlnet/archive/lutabulartools.doc.r64724.tar.xz
-2022/10/17 | 6712 | systems/texlive/tlnet/archive/lutabulartools.r64724.tar.xz
+2022/10/23 | 86196 | systems/texlive/tlnet/archive/lutabulartools.doc.r64780.tar.xz
+2022/10/23 | 6956 | systems/texlive/tlnet/archive/lutabulartools.r64780.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/lwarp.aarch64-linux.r46208.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/lwarp.amd64-freebsd.r43292.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/lwarp.amd64-netbsd.r43292.tar.xz
@@ -291071,6 +291075,9 @@
2021/08/01 | 179788 | systems/texlive/tlnet/archive/palette.doc.r60119.tar.xz
2021/08/01 | 1768 | systems/texlive/tlnet/archive/palette.r60119.tar.xz
2021/08/01 | 3848 | systems/texlive/tlnet/archive/palette.source.r60119.tar.xz
+2022/10/23 | 96716 | systems/texlive/tlnet/archive/pangram.doc.r64783.tar.xz
+2022/10/23 | 1920 | systems/texlive/tlnet/archive/pangram.r64783.tar.xz
+2022/10/23 | 4764 | systems/texlive/tlnet/archive/pangram.source.r64783.tar.xz
2019/02/28 | 131280 | systems/texlive/tlnet/archive/papercdcase.doc.r15878.tar.xz
2019/02/28 | 3824 | systems/texlive/tlnet/archive/papercdcase.r15878.tar.xz
2019/02/28 | 10444 | systems/texlive/tlnet/archive/papercdcase.source.r15878.tar.xz
@@ -291417,8 +291424,8 @@
2019/02/28 | 352 | systems/texlive/tlnet/archive/pedigree-perl.x86_64-linuxmusl.r46840.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/pedigree-perl.x86_64-linux.r25962.tar.xz
2019/02/28 | 348 | systems/texlive/tlnet/archive/pedigree-perl.x86_64-solaris.r25962.tar.xz
-2022/10/16 | 39264 | systems/texlive/tlnet/archive/penlight.doc.r64709.tar.xz
-2022/10/16 | 107112 | systems/texlive/tlnet/archive/penlight.r64709.tar.xz
+2022/10/23 | 55904 | systems/texlive/tlnet/archive/penlight.doc.r64781.tar.xz
+2022/10/23 | 108264 | systems/texlive/tlnet/archive/penlight.r64781.tar.xz
2021/01/24 | 966168 | systems/texlive/tlnet/archive/penrose.doc.r57508.tar.xz
2021/01/24 | 7448 | systems/texlive/tlnet/archive/penrose.r57508.tar.xz
2021/01/24 | 13256 | systems/texlive/tlnet/archive/penrose.source.r57508.tar.xz
@@ -294028,7 +294035,7 @@
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz
-2022/10/22 | 422916 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64768.tar.xz
+2022/10/23 | 422964 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64776.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz
2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz
@@ -294052,7 +294059,7 @@
2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz
-2022/10/22 | 113656 | systems/texlive/tlnet/archive/texlive-scripts.r64768.tar.xz
+2022/10/23 | 113656 | systems/texlive/tlnet/archive/texlive-scripts.r64776.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2022/04/19 | 36296 | systems/texlive/tlnet/archive/texlive-scripts.win32.r63068.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -294875,8 +294882,8 @@
2019/02/28 | 159876 | systems/texlive/tlnet/archive/ucharcat.doc.r38907.tar.xz
2019/02/28 | 1184 | systems/texlive/tlnet/archive/ucharcat.r38907.tar.xz
2019/02/28 | 2324 | systems/texlive/tlnet/archive/ucharcat.source.r38907.tar.xz
-2022/03/04 | 143316 | systems/texlive/tlnet/archive/ucharclasses.doc.r62377.tar.xz
-2022/03/04 | 8936 | systems/texlive/tlnet/archive/ucharclasses.r62377.tar.xz
+2022/10/23 | 143504 | systems/texlive/tlnet/archive/ucharclasses.doc.r64782.tar.xz
+2022/10/23 | 9188 | systems/texlive/tlnet/archive/ucharclasses.r64782.tar.xz
2022/08/14 | 1215552 | systems/texlive/tlnet/archive/ucs.doc.r64114.tar.xz
2019/11/09 | 427212 | systems/texlive/tlnet/archive/ucsmonograph.doc.r52698.tar.xz
2019/11/09 | 4664 | systems/texlive/tlnet/archive/ucsmonograph.r52698.tar.xz
@@ -295899,16 +295906,16 @@
2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz
2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz
2022/07/17 | 124404 | systems/texlive/tlnet/install-tl
-2022/10/22 | 5833526 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2022/10/22 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2022/10/22 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/10/23 | 5834425 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/10/23 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/10/23 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2021/04/11 | 4945 | systems/texlive/tlnet/install-tl-windows.bat
-2022/10/22 | 20433143 | systems/texlive/tlnet/install-tl-windows.exe
-2022/10/22 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2022/10/22 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/10/22 | 25518484 | systems/texlive/tlnet/install-tl.zip
-2022/10/22 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2022/10/22 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/10/23 | 20436762 | systems/texlive/tlnet/install-tl-windows.exe
+2022/10/23 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/10/23 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/10/23 | 25518492 | systems/texlive/tlnet/install-tl.zip
+2022/10/23 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/10/23 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2022/04/03 | 1229 | systems/texlive/tlnet/README.md
2022/04/03 | 0 | systems/texlive/tlnet/TEXLIVE_2022
2022/02/28 | 7791 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -295918,7 +295925,7 @@
2022/02/28 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2022/10/09 | 49938 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2022/10/21 | 7018 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2022/10/22 | 7048 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/10/13 | 225403 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt
2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe
2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt
@@ -295961,12 +295968,12 @@
2021/05/16 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2021/12/21 | 27582 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2022/10/22 | 17785105 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2022/10/22 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/10/23 | 17786591 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/10/23 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2022/04/18 | 86658 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2022/10/22 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2022/10/22 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/10/22 | 2421624 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/10/23 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/10/23 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/10/23 | 2424044 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2022/09/14 | 58922 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2022/10/04 | 42404 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2021/12/21 | 16130 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -301366,7 +301373,7 @@
2020/10/03 | 318630 | systems/win32/miktex/tm/packages/filehook.tar.lzma
2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma
2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma
-2022/10/22 | 668296 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/10/23 | 668296 | systems/win32/miktex/tm/packages/files.csv.lzma
2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma
2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma
2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma
@@ -303098,9 +303105,9 @@
2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma
2022/07/26 | 39695 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma
2022/10/15 | 43540 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/10/22 | 299917 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/10/22 | 1507524 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/10/22 | 1384528 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/10/23 | 299968 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/10/23 | 1508233 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/10/23 | 1383673 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
2022/07/26 | 13519 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma
2022/10/15 | 14426 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma
2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma
@@ -303349,102 +303356,102 @@
2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma
2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma
2021/03/17 | 232249 | systems/win32/miktex/tm/packages/newverbs.tar.lzma
-2022/10/22 | 667232 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2022/10/22 | 57318 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2022/10/22 | 1161753 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2022/10/22 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/10/22 | 35265 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/10/22 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2022/10/22 | 95468 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2022/10/22 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/10/22 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2022/10/22 | 394144 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2022/10/22 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2022/10/22 | 57505 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/10/22 | 270467 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2022/10/22 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
-2022/10/22 | 103245 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2022/10/22 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2022/10/22 | 481896 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/10/22 | 52036 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2022/10/22 | 325981 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2022/10/22 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/10/22 | 135466 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2022/10/22 | 1458153 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2022/10/22 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2022/10/22 | 48851 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/10/22 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2022/10/22 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2022/10/22 | 155431 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2022/10/22 | 79065 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2022/10/22 | 81449 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2022/10/22 | 295946 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2022/10/22 | 25119 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2022/10/22 | 112879 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2022/10/22 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/10/22 | 115579 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2022/10/22 | 43890 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/10/22 | 565081 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2022/10/22 | 247208 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
-2022/10/22 | 169679 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2022/10/22 | 109651 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2022/10/22 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2022/10/22 | 30570 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2022/10/22 | 682216 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/10/22 | 599104 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2022/10/22 | 527570 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/10/22 | 103597 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2022/10/22 | 2023134 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2022/10/22 | 74100 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2022/10/22 | 32073 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2022/10/22 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2022/10/22 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2022/10/22 | 286685 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2022/10/22 | 104922 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2022/10/22 | 140013 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2022/10/22 | 325484 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2022/10/22 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2022/10/22 | 55320 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2022/10/22 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2022/10/22 | 43619 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/10/22 | 48038 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2022/10/22 | 52370 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/10/22 | 213848 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2022/10/22 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
-2022/10/22 | 824995 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2022/10/22 | 203420 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2022/10/22 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2022/10/22 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2022/10/22 | 1323744 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2022/10/22 | 23951 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2022/10/22 | 37507 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/10/22 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/10/22 | 58633 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2022/10/22 | 769653 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2022/10/22 | 1503053 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2022/10/22 | 52627 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2022/10/22 | 63803 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2022/10/22 | 27465 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2022/10/22 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/10/22 | 70939 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2022/10/22 | 173177 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2022/10/22 | 68146 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2022/10/22 | 107436 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/10/22 | 2821671 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2022/10/22 | 62360 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2022/10/22 | 41191 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2022/10/22 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2022/10/22 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/10/22 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/10/22 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2022/10/22 | 630434 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2022/10/22 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/10/22 | 299965 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/10/22 | 1506563 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2022/10/22 | 1384061 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2022/10/22 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/10/23 | 667232 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/10/23 | 57317 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/10/23 | 1161750 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/10/23 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/10/23 | 35265 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/10/23 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/10/23 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/10/23 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/10/23 | 31563 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/10/23 | 394142 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/10/23 | 37051 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/10/23 | 57506 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/10/23 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/10/23 | 196213 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/10/23 | 103247 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2022/10/23 | 24212 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/10/23 | 481894 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/10/23 | 52037 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/10/23 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/10/23 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/10/23 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/10/23 | 1458151 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/10/23 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/10/23 | 48852 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/10/23 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/10/23 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/10/23 | 155431 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/10/23 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/10/23 | 81446 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/10/23 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/10/23 | 25118 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/10/23 | 112878 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/10/23 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/10/23 | 115580 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/10/23 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/10/23 | 565081 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/10/23 | 247207 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2022/10/23 | 169677 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/10/23 | 109651 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/10/23 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/10/23 | 30571 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/10/23 | 682214 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/10/23 | 599104 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/10/23 | 527566 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/10/23 | 103598 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/10/23 | 2023133 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/10/23 | 74098 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/10/23 | 32074 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/10/23 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/10/23 | 209138 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/10/23 | 286685 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/10/23 | 104921 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/10/23 | 140011 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/10/23 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/10/23 | 181725 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/10/23 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/10/23 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/10/23 | 43617 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/10/23 | 48037 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/10/23 | 52370 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/10/23 | 213846 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/10/23 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/10/23 | 824995 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/10/23 | 203420 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/10/23 | 245152 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/10/23 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/10/23 | 1323745 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/10/23 | 23951 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/10/23 | 37508 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/10/23 | 72980 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/10/23 | 58634 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/10/23 | 769650 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/10/23 | 1503055 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/10/23 | 52627 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/10/23 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/10/23 | 27464 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/10/23 | 18510 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/10/23 | 70939 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/10/23 | 173176 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/10/23 | 68146 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/10/23 | 107438 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/10/23 | 2821672 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/10/23 | 62360 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/10/23 | 41190 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/10/23 | 33864 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/10/23 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/10/23 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/10/23 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/10/23 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/10/23 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/10/23 | 299975 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/10/23 | 1506303 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/10/23 | 1384607 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/10/23 | 14435 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma
-2022/10/22 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/10/23 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma
2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma
2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma
@@ -303961,7 +303968,7 @@
2022/02/22 | 6917 | systems/win32/miktex/tm/packages/preview.tar.lzma
2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma
2021/04/23 | 274028 | systems/win32/miktex/tm/packages/principia.tar.lzma
-2022/10/22 | 990 | systems/win32/miktex/tm/packages/pr.ini
+2022/10/23 | 990 | systems/win32/miktex/tm/packages/pr.ini
2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma
2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma
2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma
@@ -305949,7 +305956,7 @@
2014/07/05 | 611 | systems/win32/yandy/README
2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz
2014/07/05 | 1012416 | systems/win32/yandy.zip
-2022/10/23 | 186 | timestamp
+2022/10/24 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2022/02/28 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index e56dad227c..f49812857d 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index 79314b226d..ab34421e68 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,172 +1,257 @@
-2022/10/22 | 990 | systems/win32/miktex/tm/packages/pr.ini
+2022/10/23 | 996 | macros/latex/contrib/siunitx/README.md
+2022/10/23 | 9912 | macros/latex/contrib/siunitx/siunitx-symbol.dtx
+2022/10/23 | 990 | systems/win32/miktex/tm/packages/pr.ini
+2022/10/23 | 986 | macros/latex/contrib/srdp-mathematik/README.md
+2022/10/23 | 971 | graphics/pgf/contrib/tikz-ext/README.md
+2022/10/23 | 96716 | systems/texlive/tlnet/archive/pangram.doc.r64783.tar.xz
+2022/10/23 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/10/23 | 93124 | graphics/pstricks/base/doc/pst-news22.pdf
+2022/10/23 | 926456 | systems/texlive/tlnet/archive/chemobabel.doc.r64778.tar.xz
+2022/10/23 | 9188 | systems/texlive/tlnet/archive/ucharclasses.r64782.tar.xz
+2022/10/23 | 9091 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.ortho.tex
+2022/10/23 | 885304 | macros/latex/required/babel/base/babel.pdf
+2022/10/23 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/10/23 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/10/23 | 8798 | macros/latex/contrib/siunitx/siunitx-command.dtx
+2022/10/23 | 86196 | systems/texlive/tlnet/archive/lutabulartools.doc.r64780.tar.xz
+2022/10/23 | 839829 | macros/latex/required/babel/base/locale.zip
+2022/10/23 | 824995 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/10/23 | 8205 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-body.tex
+2022/10/23 | 81446 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/10/23 | 8106386 | graphics/pstricks/base.zip
+2022/10/23 | 8045 | graphics/pstricks/base/latex/pstricks.sty
+2022/10/23 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/10/23 | 78837 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty
+2022/10/23 | 7869 | macros/latex/required/babel/base/babel.ins
+2022/10/23 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/10/23 | 769650 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/10/23 | 748005 | macros/latex/required/babel/base/babel.dtx
+2022/10/23 | 74098 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/10/23 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/10/23 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/10/23 | 72980 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/10/23 | 70939 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/10/23 | 6956 | systems/texlive/tlnet/archive/lutabulartools.r64780.tar.xz
+2022/10/23 | 69555 | macros/luatex/latex/piton/piton.dtx
+2022/10/23 | 69530 | macros/latex/contrib/siunitx/CHANGELOG.md
+2022/10/23 | 682214 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/10/23 | 68146 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/10/23 | 6792 | systems/texlive/tlnet/archive/collection-latexextra.r64783.tar.xz
+2022/10/23 | 668296 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/10/23 | 667232 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/10/23 | 666267 | macros/latex/contrib/siunitx/siunitx.pdf
+2022/10/23 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/10/23 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/10/23 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/10/23 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/10/23 | 62360 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/10/23 | 617655 | macros/latex/contrib/siunitx/siunitx-code.pdf
+2022/10/23 | 614033 | graphics/pgf/contrib/tikz-ext.zip
+2022/10/23 | 599104 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/10/23 | 58634 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/10/23 | 5834425 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/10/23 | 57506 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/10/23 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/10/23 | 574442 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.pdf
+2022/10/23 | 57317 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/10/23 | 565081 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/10/23 | 55904 | systems/texlive/tlnet/archive/penlight.doc.r64781.tar.xz
+2022/10/23 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/10/23 | 5481 | macros/latex/contrib/siunitx/siunitx-locale.dtx
+2022/10/23 | 527566 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/10/23 | 52627 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/10/23 | 5260 | systems/texlive/tlnet/archive/iexec.source.r64779.tar.xz
+2022/10/23 | 52370 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/10/23 | 52037 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/10/23 | 51 | macros/latex/contrib/iexec/DEPENDS.txt
+2022/10/23 | 50961 | macros/latex/contrib/siunitx/siunitx-table.dtx
+2022/10/23 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/10/23 | 48852 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/10/23 | 48433 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex
+2022/10/23 | 481894 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/10/23 | 48037 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/10/23 | 4764 | systems/texlive/tlnet/archive/pangram.source.r64783.tar.xz
+2022/10/23 | 476329 | macros/luatex/latex/piton.zip
+2022/10/23 | 4748 | macros/latex/contrib/siunitx/siunitx-abbreviations.cfg
+2022/10/23 | 4603 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-uncentered.tex
+2022/10/23 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/10/23 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/10/23 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/10/23 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/10/23 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/10/23 | 4496 | systems/texlive/tlnet/archive/chemobabel.r64778.tar.xz
+2022/10/23 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/10/23 | 43617 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/10/23 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/10/23 | 422964 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64776.tar.xz
+2022/10/23 | 41190 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/10/23 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/10/23 | 4072 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfkeyslibraryext.pgfkeys-plus.code.tex
+2022/10/23 | 407293 | macros/luatex/latex/piton/piton.pdf
+2022/10/23 | 4011931 | biblio/ctan-bibdata.zip
+2022/10/23 | 3948 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.arcto.tex
+2022/10/23 | 394142 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/10/23 | 3912 | graphics/pstricks/base/Changes
+2022/10/23 | 38097 | macros/latex/contrib/siunitx/siunitx-complex.dtx
+2022/10/23 | 37508 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/10/23 | 37051 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/10/23 | 3687 | macros/latex/contrib/siunitx/siunitx.ins
+2022/10/23 | 3619759 | biblio/ctan-bibdata/ctan.pdf
+2022/10/23 | 35916 | macros/latex/contrib/siunitx/siunitx-print.dtx
+2022/10/23 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
+2022/10/23 | 35265 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/10/23 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/10/23 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/10/23 | 33864 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/10/23 | 33799 | macros/latex/contrib/siunitx/siunitx-compound.dtx
+2022/10/23 | 330864 | macros/latex/contrib/iexec.zip
+2022/10/23 | 327771 | macros/latex/contrib/iexec/iexec.pdf
+2022/10/23 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/10/23 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/10/23 | 32418 | macros/latex/contrib/siunitx/siunitx-emulation.dtx
+2022/10/23 | 323620 | systems/texlive/tlnet/archive/iexec.doc.r64779.tar.xz
+2022/10/23 | 32074 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/10/23 | 31738 | macros/latex/contrib/siunitx/siunitx-version-1.cfg
+2022/10/23 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/10/23 | 31563 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/10/23 | 3094 | macros/unicodetex/latex/njuthesis/njuthesis.ins
+2022/10/23 | 30571 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/10/23 | 3018925 | install/macros/latex/required/babel-base.tds.zip
+2022/10/23 | 299975 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/10/23 | 299968 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/10/23 | 298140 | macros/unicodetex/latex/njuthesis/njuthesis.dtx
+2022/10/23 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/10/23 | 2883 | macros/latex/contrib/siunitx/siunitx-binary.dtx
+2022/10/23 | 286685 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/10/23 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/10/23 | 2821672 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/10/23 | 27754 | macros/luatex/latex/piton/piton-french.tex
+2022/10/23 | 27464 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/10/23 | 2741887 | biblio/ctan-bibdata/ctan.bib
+2022/10/23 | 273398 | macros/latex/contrib/siunitx/siunitx-v2.sty
+2022/10/23 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/10/23 | 2625 | macros/latex/contrib/iexec/iexec.ins
+2022/10/23 | 2620 | macros/latex/contrib/siunitx/siunitx-code.tex
+2022/10/23 | 25518492 | systems/texlive/tlnet/install-tl.zip
+2022/10/23 | 25118 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/10/23 | 247207 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2022/10/23 | 245152 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/10/23 | 2424044 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/10/23 | 24212 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/10/23 | 23951 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/10/23 | 2380 | systems/texlive/tlnet/archive/iexec.r64779.tar.xz
+2022/10/23 | 2331 | graphics/pstricks/base/doc/pst-news22.tex
+2022/10/23 | 2277 | macros/latex/required/babel/base/README.md
+2022/10/23 | 21890 | macros/latex/required/babel/base/bbcompat.dtx
+2022/10/23 | 217579 | macros/luatex/latex/piton/piton-french.pdf
+2022/10/23 | 21683 | macros/latex/contrib/siunitx/siunitx.dtx
+2022/10/23 | 213846 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/10/23 | 209138 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/10/23 | 20436762 | systems/texlive/tlnet/install-tl-windows.exe
+2022/10/23 | 203420 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/10/23 | 2023133 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/10/23 | 196213 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/10/23 | 1922922 | macros/latex/required/babel/base.zip
+2022/10/23 | 1920 | systems/texlive/tlnet/archive/pangram.r64783.tar.xz
+2022/10/23 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE
+2022/10/23 | 190706 | macros/latex/contrib/srdp-mathematik.zip
+2022/10/23 | 18510 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/10/23 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/10/23 | 181725 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/10/23 | 180259 | macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdf
+2022/10/23 | 17786591 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/10/23 | 173176 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/10/23 | 1729 | macros/latex/contrib/siunitx/siunitx-binary.cfg
+2022/10/23 | 169677 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/10/23 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2022/10/23 | 16709 | macros/latex/contrib/siunitx/siunitx-angle.dtx
+2022/10/23 | 16168 | systems/texlive/tlnet/archive/chemobabel.source.r64778.tar.xz
+2022/10/23 | 158763 | macros/latex/contrib/siunitx/siunitx.tex
+2022/10/23 | 15611 | macros/latex/contrib/siunitx/siunitx-quantity.dtx
+2022/10/23 | 155431 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/10/23 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/10/23 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/10/23 | 1514332 | install/macros/latex/contrib/siunitx.tds.zip
+2022/10/23 | 1508233 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/10/23 | 1506303 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/10/23 | 1503055 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/10/23 | 15025 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex
+2022/10/23 | 14799 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.bib
+2022/10/23 | 147297 | macros/latex/contrib/siunitx/siunitx-number.dtx
+2022/10/23 | 1470100 | macros/latex/contrib/siunitx.zip
+2022/10/23 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/10/23 | 1458151 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/10/23 | 14557 | macros/latex/contrib/iexec/iexec.dtx
+2022/10/23 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/10/23 | 14435 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/10/23 | 143504 | systems/texlive/tlnet/archive/ucharclasses.doc.r64782.tar.xz
+2022/10/23 | 140011 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/10/23 | 1384607 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/10/23 | 1383673 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/10/23 | 1369 | macros/latex/contrib/iexec/README.md
+2022/10/23 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/10/23 | 1323745 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/10/23 | 13056 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-preamble.tex
+2022/10/23 | 1266830 | macros/unicodetex/latex/njuthesis.zip
+2022/10/23 | 125369 | graphics/pstricks/base/generic/pstricks.tex
+2022/10/23 | 1200264 | macros/unicodetex/latex/njuthesis/njuthesis.pdf
+2022/10/23 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/10/23 | 1161750 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/10/23 | 115580 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/10/23 | 113656 | systems/texlive/tlnet/archive/texlive-scripts.r64776.tar.xz
+2022/10/23 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/10/23 | 112878 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/10/23 | 11063 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-misc.tex
+2022/10/23 | 109651 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/10/23 | 1083 | macros/latex/contrib/iexec/LICENSE.txt
+2022/10/23 | 108264 | systems/texlive/tlnet/archive/penlight.r64781.tar.xz
+2022/10/23 | 10812 | macros/latex/contrib/siunitx/siunitx-abbreviation.dtx
+2022/10/23 | 1077 | macros/unicodetex/latex/njuthesis/README.md
+2022/10/23 | 107438 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/10/23 | 104921 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/10/23 | 103909 | macros/latex/contrib/siunitx/siunitx-unit.dtx
+2022/10/23 | 103598 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/10/23 | 103247 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
2022/10/22 | 97934 | macros/luatex/generic/lutabulartools.zip
-2022/10/22 | 95468 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
2022/10/22 | 93393 | graphics/chemobabel/example-ja.pdf
2022/10/22 | 8854 | macros/luatex/generic/lutabulartools/lutabulartools.sty
-2022/10/22 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2022/10/22 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
2022/10/22 | 8816 | systems/texlive/tlnet/archive/qrbill.r64773.tar.xz
2022/10/22 | 86128 | systems/texlive/tlnet/archive/qrbill.doc.r64773.tar.xz
-2022/10/22 | 824995 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2022/10/22 | 81449 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
2022/10/22 | 81099 | graphics/chemobabel/images-for-doc.tar.gz
-2022/10/22 | 79065 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2022/10/22 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/10/22 | 769653 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2022/10/22 | 74100 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2022/10/22 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/10/22 | 73263 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/10/22 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/10/22 | 70939 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/10/22 | 7048 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/10/22 | 687975 | graphics/chemobabel/chemobabel-ja.pdf
-2022/10/22 | 682216 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/10/22 | 68146 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2022/10/22 | 6780 | systems/texlive/tlnet/archive/collection-latexextra.r64770.tar.xz
-2022/10/22 | 668296 | systems/win32/miktex/tm/packages/files.csv.lzma
-2022/10/22 | 667232 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2022/10/22 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2022/10/22 | 63803 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2022/10/22 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2022/10/22 | 630434 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
2022/10/22 | 6300 | systems/texlive/tlnet/archive/tipauni.r64774.tar.xz
-2022/10/22 | 62360 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2022/10/22 | 599104 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
2022/10/22 | 59406 | macros/luatex/generic/penlight/penlight.pdf
-2022/10/22 | 58633 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2022/10/22 | 5833526 | systems/texlive/tlnet/install-tl-unx.tar.gz
2022/10/22 | 581582 | graphics/chemobabel/chemobabel-en.pdf
-2022/10/22 | 57505 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/10/22 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2022/10/22 | 57318 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2022/10/22 | 565081 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2022/10/22 | 55320 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2022/10/22 | 527570 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/10/22 | 52627 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
2022/10/22 | 52588 | graphics/chemobabel/chemobabel.dtx
-2022/10/22 | 52370 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/10/22 | 52036 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2022/10/22 | 51 | macros/latex/contrib/iexec/DEPENDS.txt
-2022/10/22 | 5072 | systems/texlive/tlnet/archive/iexec.source.r64771.tar.xz
-2022/10/22 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
-2022/10/22 | 48851 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/10/22 | 481896 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/10/22 | 48038 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2022/10/22 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/10/22 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/10/22 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2022/10/22 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/10/22 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
-2022/10/22 | 43890 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/10/22 | 43619 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/10/22 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
2022/10/22 | 425636 | macros/luatex/generic/penlight/penlight.lua
-2022/10/22 | 422916 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64768.tar.xz
-2022/10/22 | 41191 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2022/10/22 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
2022/10/22 | 410540 | systems/texlive/tlnet/archive/tipauni.doc.r64774.tar.xz
-2022/10/22 | 4008758 | biblio/ctan-bibdata.zip
-2022/10/22 | 394144 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2022/10/22 | 37507 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/10/22 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
2022/10/22 | 37024 | systems/texlive/tlnet/archive/beamertheme-simpleplus.doc.r64770.tar.xz
-2022/10/22 | 3617779 | biblio/ctan-bibdata/ctan.pdf
-2022/10/22 | 35265 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/10/22 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/10/22 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2022/10/22 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
2022/10/22 | 3348 | macros/luatex/generic/penlight/penlight.sty
-2022/10/22 | 329071 | macros/latex/contrib/iexec.zip
-2022/10/22 | 326148 | macros/latex/contrib/iexec/iexec.pdf
-2022/10/22 | 325981 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
2022/10/22 | 3259452 | systems/texlive/tlnet/archive/univie-ling.doc.r64772.tar.xz
-2022/10/22 | 325484 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2022/10/22 | 322424 | systems/texlive/tlnet/archive/iexec.doc.r64771.tar.xz
-2022/10/22 | 32073 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2022/10/22 | 31587 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/10/22 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2022/10/22 | 30570 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2022/10/22 | 299965 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/10/22 | 299917 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/10/22 | 295946 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2022/10/22 | 286685 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2022/10/22 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2022/10/22 | 2821671 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2022/10/22 | 27465 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2022/10/22 | 2741526 | biblio/ctan-bibdata/ctan.bib
-2022/10/22 | 270467 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
2022/10/22 | 2698076 | systems/texlive/tlnet/archive/simpleicons.r64769.tar.xz
-2022/10/22 | 2625 | macros/latex/contrib/iexec/iexec.ins
2022/10/22 | 25603 | macros/luatex/generic/penlight/penlightextras.lua
-2022/10/22 | 25518484 | systems/texlive/tlnet/install-tl.zip
-2022/10/22 | 25119 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2022/10/22 | 247208 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
-2022/10/22 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2022/10/22 | 2421624 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
-2022/10/22 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2022/10/22 | 23951 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2022/10/22 | 2296 | systems/texlive/tlnet/archive/iexec.r64771.tar.xz
-2022/10/22 | 213848 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2022/10/22 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2022/10/22 | 20433143 | systems/texlive/tlnet/install-tl-windows.exe
-2022/10/22 | 203420 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2022/10/22 | 2023134 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
2022/10/22 | 1979080 | systems/texlive/tlnet/archive/simpleicons.doc.r64769.tar.xz
-2022/10/22 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2022/10/22 | 1904 | systems/texlive/tlnet/archive/beamertheme-simpleplus.r64770.tar.xz
2022/10/22 | 185314 | macros/luatex/generic/penlight.zip
-2022/10/22 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/10/22 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
2022/10/22 | 1820 | graphics/chemobabel/example-ja.tex
2022/10/22 | 181 | graphics/chemobabel/chemobabel.ins
-2022/10/22 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2022/10/22 | 17785105 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2022/10/22 | 173177 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
2022/10/22 | 1726 | graphics/chemobabel/README.md
-2022/10/22 | 169679 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2022/10/22 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/22 | 1623 | macros/luatex/generic/lutabulartools/README.md
2022/10/22 | 16156 | macros/luatex/generic/lutabulartools/lutabulartools.tex
2022/10/22 | 160408 | systems/texlive/tlnet/archive/univie-ling.r64772.tar.xz
-2022/10/22 | 155431 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
2022/10/22 | 15400 | systems/texlive/tlnet/archive/qrbill.source.r64773.tar.xz
-2022/10/22 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
2022/10/22 | 15393 | graphics/chemobabel/chemobabel.sty
-2022/10/22 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2022/10/22 | 1507524 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/10/22 | 1506563 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2022/10/22 | 1503053 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
2022/10/22 | 1473 | graphics/chemobabel/example-en.tex
-2022/10/22 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2022/10/22 | 1458153 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2022/10/22 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2022/10/22 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2022/10/22 | 14416 | systems/texlive/tlnet/archive/tipauni.source.r64774.tar.xz
-2022/10/22 | 140013 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2022/10/22 | 13937 | macros/latex/contrib/iexec/iexec.dtx
-2022/10/22 | 1384528 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
-2022/10/22 | 1384061 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
2022/10/22 | 13826 | macros/latex/contrib/pangram/pangram.dtx
-2022/10/22 | 1369 | macros/latex/contrib/iexec/README.md
-2022/10/22 | 135466 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
2022/10/22 | 1338 | graphics/chemobabel/LICENSE
2022/10/22 | 1325653 | graphics/chemobabel.zip
-2022/10/22 | 1323744 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
2022/10/22 | 132001 | graphics/chemobabel/example-en.pdf
2022/10/22 | 1296 | macros/luatex/generic/penlight/README.md
2022/10/22 | 11855 | macros/luatex/generic/lutabulartools/lutabulartools.lua
-2022/10/22 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
-2022/10/22 | 1161753 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2022/10/22 | 115579 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2022/10/22 | 113656 | systems/texlive/tlnet/archive/texlive-scripts.r64768.tar.xz
-2022/10/22 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2022/10/22 | 112879 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/10/22 | 115441566 | macros/context/latest/cont-tmf.zip
2022/10/22 | 110213 | macros/luatex/generic/lutabulartools/lutabulartools.pdf
-2022/10/22 | 109651 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2022/10/22 | 1083 | macros/latex/contrib/iexec/LICENSE.txt
-2022/10/22 | 107436 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/10/22 | 104922 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2022/10/22 | 103597 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2022/10/22 | 103245 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
2022/10/22 | 10321 | macros/luatex/generic/penlight/penlight.tex
2022/10/22 | 101549 | macros/latex/contrib/pangram.zip
2022/10/22 | 100389 | macros/latex/contrib/pangram/pangram.pdf
@@ -174,7 +259,6 @@
2022/10/21 | 96796 | systems/texlive/tlnet/archive/glossaries-extra.r64764.tar.xz
2022/10/21 | 944832 | systems/texlive/tlnet/archive/tex4ht.r64766.tar.xz
2022/10/21 | 8529 | systems/win32/miktex/tm/packages/urw-base35__doc.tar.lzma
-2022/10/21 | 7018 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/10/21 | 69720 | macros/unicodetex/latex/tipauni/tipauni-commands.pdf
2022/10/21 | 686 | macros/latex/contrib/beamer-contrib/themes/beamertheme-simpleplus/beamerthemeSimplePlus.sty
2022/10/21 | 665 | fonts/simpleicons/README.md
@@ -291,7 +375,6 @@
2022/10/21 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsEight.tfm
2022/10/21 | 1228 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsOne.tfm
2022/10/21 | 11 | usergrps/gutenberg/VERSION
-2022/10/21 | 115441744 | macros/context/latest/cont-tmf.zip
2022/10/21 | 1119 | fonts/simpleicons/map/simpleicons.map
2022/10/21 | 10900 | macros/unicodetex/latex/tipauni/tipauni-example.tex
2022/10/21 | 108222 | macros/unicodetex/latex/tipauni/tipauni-example.pdf
@@ -939,6 +1022,7 @@
2022/10/19 | 1375 | macros/latex/contrib/glossaries-extra/samples/sample-alttree-sym.tex
2022/10/19 | 1371 | macros/latex/contrib/glossaries-extra/glossaries-extra-manual-examples/glossaries-extra-manual-example126.tex
2022/10/19 | 1367 | macros/latex/contrib/glossaries-extra/samples/sample-trans.tex
+2022/10/19 | 13553 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex
2022/10/19 | 134679 | macros/latex/contrib/glossaries-extra/samples/sample-header.pdf
2022/10/19 | 13459 | macros/latex/contrib/glossaries-extra/glossaries-extra-manual-examples/glossaries-extra-manual-example153.png
2022/10/19 | 1342 | macros/latex/contrib/glossaries-extra/glossaries-extra-manual-examples/glossaries-extra-manual-example119.tex
@@ -1444,7 +1528,6 @@
2022/10/17 | 873 | macros/latex/contrib/glossaries/samples/sample-dual.tex
2022/10/17 | 861 | macros/latex/contrib/glossaries/samples/database1.tex
2022/10/17 | 86116 | macros/latex/contrib/glossaries/samples/sampleaccsupp.pdf
-2022/10/17 | 83536 | systems/texlive/tlnet/archive/lutabulartools.doc.r64724.tar.xz
2022/10/17 | 827620 | macros/latex/contrib/adjustbox.zip
2022/10/17 | 8172 | macros/latex/contrib/glossaries/glossaries-user-examples/glossaries-user-example002.png
2022/10/17 | 80852 | macros/latex/contrib/adjustbox/trimclip.dtx
@@ -1467,7 +1550,6 @@
2022/10/17 | 68914 | macros/latex/contrib/glossaries/samples/sampleAcr.pdf
2022/10/17 | 6850 | macros/latex/contrib/glossaries/glossaries-user-examples/glossaries-user-example006.png
2022/10/17 | 671 | macros/latex/contrib/glossaries/glossaries-user-examples/glossaries-user-example025.png
-2022/10/17 | 6712 | systems/texlive/tlnet/archive/lutabulartools.r64724.tar.xz
2022/10/17 | 65 | macros/latex/contrib/glossaries/DEPENDS.txt
2022/10/17 | 6434 | macros/latex/contrib/glossaries/samples/glossary-lipsum-examples.tex
2022/10/17 | 64302 | macros/latex/contrib/glossaries/samples/sampletree.pdf
@@ -1653,65 +1735,6 @@
2022/10/17 | 101605 | macros/latex/contrib/glossaries/samples/sampleSort.pdf
2022/10/17 | 1015 | macros/latex/contrib/glossaries/glossaries-user-examples/glossaries-user-example003.tex
2022/10/17 | 10096 | macros/latex/contrib/glossaries/samples/samplexdy.tex
+2022/10/17 | 10088 | graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.uncenteredrectangle.code.tex
2022/10/17 | 10078 | macros/latex/contrib/glossaries/glossaries-user-examples/glossaries-user-example025.pdf
2022/10/17 | 1002460 | macros/unicodetex/latex/bithesis.zip
-2022/10/16 | 993 | macros/eplain/doc/demo/Makefile
-2022/10/16 | 9596 | systems/texlive/tlnet/archive/huawei.source.r64718.tar.xz
-2022/10/16 | 90093 | macros/eplain/doc/ChangeLog
-2022/10/16 | 89453 | macros/eplain/doc/lscommnt.jpg
-2022/10/16 | 88280 | systems/texlive/tlnet/archive/spbmark.doc.r64706.tar.xz
-2022/10/16 | 8724 | macros/eplain/doc/NEWS
-2022/10/16 | 8178 | macros/eplain/doc/demo/xhyper.tex
-2022/10/16 | 775348 | macros/eplain/doc/eplain.pdf
-2022/10/16 | 725721 | macros/eplain/doc/eplain.html
-2022/10/16 | 724 | systems/texlive/tlnet/archive/nlctdoc.doc.r64708.tar.xz
-2022/10/16 | 688 | macros/latex/contrib/huaz/README
-2022/10/16 | 657 | macros/eplain/doc/AUTHORS
-2022/10/16 | 6412 | systems/texlive/tlnet/archive/huawei.r64718.tar.xz
-2022/10/16 | 611096 | systems/texlive/tlnet/archive/easybook.doc.r64706.tar.xz
-2022/10/16 | 585636 | systems/texlive/tlnet/archive/apxproof.doc.r64715.tar.xz
-2022/10/16 | 5539060 | systems/texlive/tlnet/archive/bib2gls.doc.r64710.tar.xz
-2022/10/16 | 486775 | macros/latex/contrib/frenchmath.zip
-2022/10/16 | 479690 | macros/latex/contrib/frenchmath/frenchmath.pdf
-2022/10/16 | 4644 | systems/texlive/tlnet/archive/apxproof.r64715.tar.xz
-2022/10/16 | 409768 | systems/texlive/tlnet/archive/huawei.doc.r64718.tar.xz
-2022/10/16 | 395250 | macros/eplain/doc/eplain.info
-2022/10/16 | 39264 | systems/texlive/tlnet/archive/penlight.doc.r64709.tar.xz
-2022/10/16 | 36739 | macros/eplain/tex/btxmac.tex
-2022/10/16 | 3420 | systems/texlive/tlnet/archive/spbmark.r64706.tar.xz
-2022/10/16 | 332295 | macros/latex/contrib/huaz.zip
-2022/10/16 | 327838 | macros/latex/contrib/huaz/huaz.pdf
-2022/10/16 | 295080 | systems/texlive/tlnet/archive/pagella-otf.doc.r64705.tar.xz
-2022/10/16 | 258094 | macros/eplain/source/eplain-source-3.13.zip
-2022/10/16 | 2493 | macros/eplain/doc/util/trimsee
-2022/10/16 | 24487 | macros/eplain/tex/arrow.tex
-2022/10/16 | 23920 | systems/texlive/tlnet/archive/nlctdoc.r64708.tar.xz
-2022/10/16 | 2349112 | systems/texlive/tlnet/archive/circuit-macros.doc.r64713.tar.xz
-2022/10/16 | 2332 | systems/texlive/tlnet/archive/pagella-otf.r64705.tar.xz
-2022/10/16 | 22710 | macros/latex/contrib/frenchmath/frenchmath.dtx
-2022/10/16 | 21927176 | systems/texlive/tlnet/archive/pst-fractal.doc.r64714.tar.xz
-2022/10/16 | 21740 | macros/latex/contrib/huaz/huaz.tex
-2022/10/16 | 2173 | macros/eplain/doc/demo/lscommnt.tex
-2022/10/16 | 20294 | macros/latex/contrib/huaz/huaz.sty
-2022/10/16 | 1996 | macros/latex/contrib/frenchmath/frenchmath.ins
-2022/10/16 | 187986 | macros/eplain/source/xeplain.tex
-2022/10/16 | 186 | macros/eplain/tex/eplain.aux
-2022/10/16 | 1859 | macros/eplain/doc/README
-2022/10/16 | 18523 | macros/eplain/doc/eplain.man1.pdf
-2022/10/16 | 1846 | macros/eplain/doc/eplain.1
-2022/10/16 | 18011 | macros/eplain/doc/COPYING
-2022/10/16 | 17721 | macros/eplain/doc/xhyper.jpg
-2022/10/16 | 1745708 | systems/texlive/tlnet/archive/bib2gls.r64710.tar.xz
-2022/10/16 | 1660204 | systems/texlive/tlnet/archive/bib2gls.source.r64710.tar.xz
-2022/10/16 | 16564 | systems/texlive/tlnet/archive/easybook.r64706.tar.xz
-2022/10/16 | 16460 | systems/texlive/tlnet/archive/easybook.source.r64706.tar.xz
-2022/10/16 | 16428 | systems/texlive/tlnet/archive/apxproof.source.r64715.tar.xz
-2022/10/16 | 1502578 | install/macros/eplain.tds.zip
-2022/10/16 | 1501779 | macros/eplain.zip
-2022/10/16 | 1496 | systems/texlive/tlnet/archive/circuit-macros.r64713.tar.xz
-2022/10/16 | 1449 | macros/eplain/doc/util/idxuniq
-2022/10/16 | 139058 | macros/eplain/tex/eplain.tex
-2022/10/16 | 1270 | macros/eplain/doc/INSTALL
-2022/10/16 | 121 | macros/eplain/tex/eplain.ini
-2022/10/16 | 10716 | systems/texlive/tlnet/archive/pst-fractal.r64714.tar.xz
-2022/10/16 | 107112 | systems/texlive/tlnet/archive/penlight.r64709.tar.xz
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index 11f2cc7eb5..20109f8b26 100644
--- a/biblio/ctan-bibdata/ctan.bib
+++ b/biblio/ctan-bibdata/ctan.bib
@@ -1,7 +1,7 @@
%% bib file of all CTAN packages
%% (C) Herbert Voß
%%
-%% created at 23-10-2022, 02:01:14
+%% created at 24-10-2022, 02:01:10
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -5042,8 +5042,8 @@
title = {The \texttt{babel} package},
subtitle = {Multilingual support for \LaTeX{}, LuaLaTeX, \XeLaTeX{}, and Plain \TeX{}},
author = {Javier Bezos López and Johannes L. Braams},
- date = {2022-10-04},
- version = {3.81},
+ date = {2022-10-23},
+ version = {3.82},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/required/babel/base},
url = {https://ctan.org/pkg/babel},
@@ -32466,8 +32466,8 @@
title = {The \texttt{iexec} package},
subtitle = {Execute shell commands and input their output},
author = {Yegor Bugayenko},
- date = {2022-10-22},
- version = {0.11.0},
+ date = {2022-10-23},
+ version = {0.11.1},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/iexec},
url = {https://ctan.org/pkg/iexec},
@@ -47503,7 +47503,7 @@
subtitle = {\LaTeX{} thesis template for Nanjing University},
author = {Yichen Zhao and Yu Xiong},
date = {2019-01-01},
- version = {1.0.0},
+ version = {1.1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/unicodetex/latex/njuthesis},
url = {https://ctan.org/pkg/njuthesis},
@@ -49842,7 +49842,7 @@
title = {The \texttt{pangram} package},
subtitle = {A \LaTeX{} package for testing fonts},
author = {Tingxuan Zhang},
- date = {2022-10-22},
+ date = {2022-10-23},
version = {0.0b},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/pangram},
@@ -52048,8 +52048,8 @@
title = {The \texttt{piton} package},
subtitle = {Typeset Python listings with LPEG},
author = {François Pantigny},
- date = {2022-10-08},
- version = {0.7},
+ date = {2022-10-23},
+ version = {0.8},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/luatex/latex/piton},
url = {https://ctan.org/pkg/piton},
@@ -55635,8 +55635,8 @@
title = {The \texttt{pstricks-base} package},
subtitle = {PostScript macros for \TeX{}},
author = {Herbert Voß and Denis Girou and Timothy Van Zandt},
- date = {2022-09-11},
- version = {3.16},
+ date = {2022-10-23},
+ version = {3.17},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/graphics/pstricks/base},
url = {https://ctan.org/pkg/pstricks-base},
@@ -61363,8 +61363,8 @@
title = {The \texttt{siunitx} package},
subtitle = {A comprehensive (SI) units package},
author = {Joseph Wright},
- date = {2022-10-04},
- version = {3.1.8},
+ date = {2022-10-23},
+ version = {3.1.9},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/siunitx},
url = {https://ctan.org/pkg/siunitx},
@@ -62864,8 +62864,8 @@
title = {The \texttt{srdp-mathematik} package},
subtitle = {Typeset Austrian SRDP in mathematics},
author = {Christoph Weberndorfer},
- date = {2022-10-02},
- version = {1.10.2},
+ date = {2022-10-23},
+ version = {1.10.3},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/srdp-mathematik},
url = {https://ctan.org/pkg/srdp-mathematik},
@@ -62873,8 +62873,9 @@
the Austrian sRDP (Standardisierte Reife- und Diplomprüfung)
in mathematics. Furthermore, it includes ways to implement
answers in the file which can optionally be
- displayed in the pdf file, and it offers a way to vary the answers
- in order to create different groups (e. g. for tests) easily.},
+ displayed in the file, and it offers a way to
+ vary the answers in order to create different groups
+ (e. g. for tests) easily.},
}
@manual{ctan-srhyphc,
@@ -68014,8 +68015,8 @@
title = {The \texttt{tikz-ext} package},
subtitle = {A collection of libraries for PGF/TikZ},
author = {{Unknown}},
- date = {2022-10-10},
- version = {0.4},
+ date = {2022-10-23},
+ version = {0.4.1},
license = {fdl,lppl},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tikz-ext},
url = {https://ctan.org/pkg/tikz-ext},
diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf
index a69102b58b..d82cb2e40a 100644
--- a/biblio/ctan-bibdata/ctan.pdf
+++ b/biblio/ctan-bibdata/ctan.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/tikz-ext/README.md b/graphics/pgf/contrib/tikz-ext/README.md
index 33ec46d366..76ea094357 100644
--- a/graphics/pgf/contrib/tikz-ext/README.md
+++ b/graphics/pgf/contrib/tikz-ext/README.md
@@ -31,6 +31,7 @@ These are
* `ext.shapes.heatmark`
* `ext.shapes.rectangleroundedcorners`
* `ext.shapes.superellipse`
+ * `ext.shapes.uncenteredrectangle`
These were developed in response to questions on tex.stackexchange.com.
Some of these can be find by searching for my [user id](https://tex.stackexchange.com/search?q=user%3A16595+%22my+library%22). \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-calendar.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-calendar.tex
index 09bd261a21..09bd261a21 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-calendar.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-calendar.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-intro.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-intro.tex
index f9468175cb..f9468175cb 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-intro.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-intro.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-calendar-plus.tex
index bdfd225f3c..bdfd225f3c 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-calendar-plus.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-misc.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-misc.tex
index 163097e6a1..44228a5445 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-misc.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-misc.tex
@@ -136,14 +136,38 @@ them in |"|.
(intersection of @--[shift=(vecB)]@ and B--A) coordinate (A);}
\end{tikzpicture}
\end{codeexample}
-\pagebreak
+
+\subsection{\pgfname for}
+
+Instead of |\foreach \var in {start, start + delta, ..., end}| one can use
+|\foreach \var[use int=start to end step delta]|.
+
+\begin{key}{/pgf/foreach/use int=\meta{start}|to|\meta{end}\opt{|step|\meta{delta}}}
+The values \meta{start}, \meta{end} and \meta{delta} are evaluates by \pgfname math at initialization.
+The part |step |\meta{delta} is optional (\meta{delta} = 1).
+\end{key}
+
+\begin{key}{/pgf/foreach/use float=\meta{start}|to|\meta{end}\opt{|step|\meta{delta}}}
+Same as above, however the results are not truncated.
+\end{key}
+
+%TODO: edges to and edges through
+%\pagebreak
+
\subsection{\pgfname keys}
-%
+\begin{pgfkeyslibrary}{ext.pgfkeys-plus}
+ This extends \pgfname keys and adds helpful |/utils| keys as well as handlers.
+ This library gets loaded by the |ext.misc| library.%
+ \footnote{\texttt{\string\usepgfkeyslibrary} is an upcoming feature of \pgfname/\tikzname.
+ For now, you need to load \texttt{ext.misc}
+ or manually \texttt{\string\input} the file \texttt{pgfkeyslibraryext.pgfkeys-plus.code.tex}
+ with \texttt{@} being a letter.}
+\end{pgfkeyslibrary}
+
\begin{multicols}{2}
-%
\subsubsection{Conditionals}
-\begin{key}{/utils/if=\meta{cond}\meta{true}\opt{\meta{false}}}
+\begin{key}{/utils/if=\marg{cond}\marg{true}\opt{\marg{false}}}
This key checks the conditional \meta{cond} and applies the styles \meta{true}
if \meta{cond} is true, otherwise \meta{false}.
\meta{cond} can be anything that \pgfname math understands.
@@ -155,7 +179,7 @@ them in |"|.
The following keys use \TeX' macros |\if|, |\ifx|, |\ifnum| and |\ifdim| for faster
executions.
-\begin{key}{/utils/TeX/if=\meta{token A}\meta{token B}\meta{true}\opt{\meta{false}}}
+\begin{key}{/utils/TeX/if=\meta{token A}\meta{token B}\marg{true}\opt{\marg{false}}}
This key checks via |\if| if \meta{token A} matches \meta{token B}
and applies the styles \meta{true} if it does, otherwise \meta{false}.
@@ -163,28 +187,31 @@ executions.
actually optional.
\end{key}
-\begin{key}{/utils/TeX/ifx=\meta{token A}\meta{token B}\meta{true}\opt{\meta{false}}}
- As above.
+\begin{key}{/utils/TeX/ifx=\meta{token A}\meta{token B}\marg{true}\opt{\marg{false}}}
+ As above but via |\ifx|.
\end{key}
-\begin{key}{/utils/TeX/ifnum=\meta{num cond}\meta{true}\\opt{\meta{false}}}
+\begin{key}{/utils/TeX/ifnum=\marg{num cond}\marg{true}\opt{\marg{false}}}
This key checks |\ifnum|\meta{num cond}
and applies the styles \meta{true} if true, otherwise \meta{false}.
A delimiting |\relax| will be inserted after \meta{num cond}.
- As a side effect on how \pgfname keys parses argument, the \meta{false} argument is
+ As a side effect on how \pgfname keys parses arguments, the \meta{false} argument is
actually optional.
\end{key}
\begin{key}{/utils/TeX/ifdim=\meta{dim cond}\meta{true}\opt{\meta{false}}}
- As above.
+ As above but with |\ifdim|.
\end{key}
\begin{key}{/utils/TeX/ifempty=\meta{Text}\meta{true}\opt{\meta{false}}}
This checks whether \meta{Text} is empty and applies styles \meta{true} if true,
otherwise \meta{false}.
\end{key}
-
+\begin{key}{/utils/TeX/ifxempty=\meta{Text}\meta{true}\opt{\meta{false}}}
+ This checks whether fully expanded \meta{Text} is empty and applies styles \meta{true} if true,
+ otherwise \meta{false}.
+\end{key}
\subsubsection{Handlers}
@@ -193,27 +220,58 @@ not all of them are.
\begin{handler}{{.pgfmath}|=|\meta{eval}}
This handler evaluates \meta{eval} before it is handed to the key.
+
+ This handler works almost the same as the |.evaluated|\indexHandlerO{.evaluated}
+ handler but it does its evaluation in a group so that the result will
+ not overwrite any other results.
\end{handler}
\begin{handler}{{.pgfmath int}|=|\meta{eval}}
As above but truncates the result.
\end{handler}
-\begin{handler}{{.pgfmath strcat}|=|\meta{eval}}
- As above but uses the |strcat| function.
+\begin{handler}{{.pgfmath wrap}|=|\marg{wrapper}\marg{eval}}
+ This feeds the result of \meta{eval} as |#1| to \meta{wrapper}.
- In the example below, one could have used the |/pgf/foreach/evaluate| key from |\foreach|.
-\begin{codeexample}[width=3.7cm,preamble=\usetikzlibrary{misc}]
+ In the example below, one could have used the \referenceKeyandIndexO[/pgf/foreach/]{evaluate}
+ key from the |\foreach| loop.
+\begin{codeexample}[width=3.7cm,preamble=\usetikzlibrary{ext.pgfkeys-plus}]
\tikz\foreach \i in {0,10,...,100}
\draw[
- line width=+.2cm,
- color/.pgfmath strcat={"red!",sqrt(\i)*10,"!blue"}
+ line width=+.25cm,
+ % needs ## because its inside the \foreach body
+ color/.pgfmath wrap={red!##1!blue}{sqrt(\i)*10}
]
- (0,\i/50) -- +(right:3);
+ (0,\i/40) -- +(right:3);
\end{codeexample}
\end{handler}
-\begin{handler}{{.List}|=|\meta{\meta{e1}, \meta{e2}, \dots, \meta{en}}}
+\begin{handler}{{.pgfmath if}|=|\marg{cond}\marg{true}\opt{\marg{false}}}
+ Evaluates \meta{cond} with \pgfname Math and returns \meta{true} or \meta{false} to the used key respectively.
+\end{handler}
+\begin{handler}{{.if}|=|\meta{token A}\meta{token B}\marg{true}\opt{\marg{false}}}
+ Checks via |\if| if \meta{token A} matches \meta{token B}
+ and applies the value \meta{true} if it does, otherwise \meta{false}.
+\end{handler}
+\begin{handler}{{.ifx}|=|\meta{token A}\meta{token B}\marg{true}\opt{\marg{false}}}
+ As above but via |\ifx|.
+\end{handler}
+\begin{handler}{{.ifnum}|=|\marg{ifnum cond}\marg{true}\opt{\marg{false}}}
+ Checks via |\ifnum| if \meta{ifnum cond}
+ and applies the value \meta{true} if it does, otherwise \meta{false}.
+\end{handler}
+\begin{handler}{{.ifdim}|=|\marg{ifdim cond}\marg{true}\opt{\marg{false}}}
+ As above but via |\ifdim|.
+\end{handler}
+\begin{handler}{{.ifxempty}|=|\marg{Text}\marg{true}\opt{\marg{false}}}
+ Checks whether a fully expanded \meta{Text} is empty
+ and applies the value \meta{true} if it does, otherwise \meta{false}.
+\end{handler}
+\begin{handler}{{.ifempty}|=|\marg{Text}\marg{true}\opt{\marg{false}}}
+ Checks whether \meta{Text} is empty
+ and applies the value \meta{true} if it does, otherwise \meta{false}.
+\end{handler}
+\begin{handler}{{.List}|=|\marg{\meta{e1}, \meta{e2}, \dots, \meta{en}}}
This handler evaluates the given list with |\foreach| and concatenates the element and
the result is then given to the used key.
\end{handler}
@@ -221,26 +279,11 @@ not all of them are.
\begin{codeexample}[width=6cm,preamble=\usetikzlibrary{fit,ext.misc}]
\begin{tikzpicture}[nodes={draw, dashed, inner sep=+10pt}]
\foreach \point [count=\cnt] in {(0,0), (0,2), (2,0), (2,2), (3,3), (-1,-1)}
- \fill \point circle[radius=.1] coordinate (point-\cnt);
+ \node[circle, fill, inner sep=1pt, text=white] (point-\cnt) at \point {\cnt};
\node[gray, fit/.List={(point-1),(point-...),(point-4)}] {};
\node[red, fit/.List={(point-1),(point-...),(point-5)}] {};
\node[blue, fit/.List={(point-1),(point-...),(point-6)}] {};
\end{tikzpicture}
\end{codeexample}
-\subsection{\pgfname for}
-
-Instead of |\foreach \var in {start, start + delta, ..., end}| one can use
-|\foreach \var[use int=start to end step delta]|.
-
-\begin{key}{/pgf/foreach/use int=\meta{start}|to|\meta{end}\opt{|step|\meta{delta}}}
-The values \meta{start}, \meta{end} and \meta{delta} are evaluates by \pgfname math at initialization.
-The part |step |\meta{delta} is optional (\meta{delta} = 1).
-\end{key}
-
-\begin{key}{/pgf/foreach/use float=\meta{start}|to|\meta{end}\opt{|step|\meta{delta}}}
-Same as above, however the results are not truncated.
-\end{key}
-
-%TODO: edges to and edges through
\endinput \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-node-families.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-node-families.tex
index d4b274511c..d4b274511c 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-node-families.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-node-families.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.arcto.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.arcto.tex
index 8ed660b3a3..8ed660b3a3 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.arcto.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.arcto.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.ortho.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.ortho.tex
index ba78f47dcb..18264156c9 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.ortho.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.ortho.tex
@@ -128,7 +128,7 @@ these can be configured through the following keys.
\end{key}
\end{pathoperation}
-All distances can be set with on key.
+All distances can be set with one key.
\begin{key}{/tikz/ortho/udlr distance=\meta{length}}
Sets all the previous distances to the same value \meta{length}.
\end{key}
@@ -192,8 +192,8 @@ Installs the following shortcuts:\\
\pgfmanualbar-\pgfmanualbar & vertical horizontal vertical \\
\pgfmanualbar* & only vertical first \\
*\pgfmanualbar & only vertical second \\
- \pgfmanualbar* & only vertical first \\
- *\pgfmanualbar & only vertical second
+ -* & only horizontal first \\
+ *- & only horizontal second
\end{tabular}
}
\end{stylekey}
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.timer.tex
index 595a647917..595a647917 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.timer.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-patterns.images.tex
index c3c38a8517..c3c38a8517 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-patterns.images.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-positioning-plus.tex
index 56c81376aa..56c81376aa 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-positioning-plus.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-topaths.arcthrough.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-topaths.arcthrough.tex
index 1d9e5ba9df..1d9e5ba9df 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-topaths.arcthrough.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-topaths.arcthrough.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-trans.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-trans.tex
index 97011bc4d0..97011bc4d0 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-library-trans.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-trans.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-body.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-body.tex
index fd071e009e..41e56c390e 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-body.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-body.tex
@@ -8,7 +8,7 @@
% 2. under the GNU Free Documentation License.
%
\newcommand*\tikzextname{Ti\textit kZ-Extensions}
-\newcommand*\tikzextversion{0.4}
+\newcommand*\tikzextversion{0.4.1}
\begin{document}
{\colorlet{blue}{black}% links shall be black
\title{\bfseries The \tikzextname\space Package\\
@@ -125,6 +125,8 @@ These libraries (should) work with both \pgfname\space and \tikzname.
\include{tikz-ext-manual-en-pgf-shapes-heatmark}
\include{tikz-ext-manual-en-pgf-shapes-rectround}
\include{tikz-ext-manual-en-pgf-shapes-superellipse}
+\include{tikz-ext-manual-en-pgf-shapes-uncentered}
+
\part{Utilities}
\label{part:misc}
@@ -162,11 +164,19 @@ These libraries (should) work with both \pgfname\space and \tikzname.
%%% END
\newcommand*{\addTikz}[1]{Added \tikzname\space library \texttt{ext.#1}.}
\newcommand*{\addPGF}[1]{Added \pgfname\space library \texttt{ext.#1}.}
+\newcommand*{\addPGFkeys}[1]{Added \pgfname keys library \texttt{ext.#1}.}
\newcommand*{\addShape}[2][]{Added shape \texttt{\ifx\\#1\\#2\else#1\fi}\\(\pgfname\space library \texttt{ext.shapes.#2}).}
\part{Changelog, Index \& References}
\section*{Changelog}\addcontentsline{toc}{section}{Changelog}
\begin{multicols}{2}\raggedright
\noindent
+Version 0.4.1
+\begin{itemize}
+\item Cleaned up directory structure of documentary.
+\item \addPGFkeys{pgfkeys-plus}
+\item \addShape[uncentered rectangle]{uncenteredrectangle}
+\item Fixed |ext.paths.arcto| -- again \cite{GH2}.
+\end{itemize}
Version 0.4
\begin{itemize}
\item CTAN version of 0.3.1
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-preamble.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-preamble.tex
index 494d63e012..2ba6defa10 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-main-preamble.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-preamble.tex
@@ -41,6 +41,21 @@
\tracinglostchars=3
\input{pgfmanual-en-macros}
+\newenvironment{pgfkeyslibrary}[1]{% from pgfmanual-en-macros
+ \begin{pgfmanualentry}%
+ \pgfmanualentryheadline{%
+ \pgfmanualpdflabel{#1}{}%
+ \textbf{pgfkeys Library} \texttt{\declare{#1}}}%
+ \index{#1@\protect\texttt{#1} pgfkeys library}%
+ \index{pgfkeys Libraries!#1@\protect\texttt{#1}}%
+ \vskip.25em
+ {{\ttfamily\char`\\usepgfkeyslibrary\char`\{\declare{#1}\char`\}\space\space \char`\%\space\space \LaTeX\space and plain \TeX}}\\
+ {{\ttfamily\char`\\usepgfkeyslibrary[\declare{#1}]\space \char`\%\space\space Con\TeX t}}\\[.5em]%
+ \pgfmanualbody
+}%
+{%
+ \end{pgfmanualentry}%
+}
\usepackage{unicode-math}
\setmathfont[Scale=MatchUppercase]{libertinusmath-regular.otf}
@@ -105,10 +120,12 @@
ext.shapes.circlecrosssplit,
ext.shapes.rectangleroundedcorners,
ext.shapes.superellipse,
+ ext.shapes.uncenteredrectangle,
ext.topaths.arcthrough,
ext.transformations.mirror,
%
calc,
+ cd,
fit,
matrix,
shapes.geometric,
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
index e26711bb35..e26711bb35 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
index e7b2b9ba5a..e7b2b9ba5a 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-heatmark.tex
index fa13cb0000..fa13cb0000 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-heatmark.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-rectround.tex
index 78bab76925..78bab76925 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-rectround.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-superellipse.tex
index 580ef0d93f..580ef0d93f 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-superellipse.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-uncentered.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-uncentered.tex
new file mode 100644
index 0000000000..cb79e4ac7b
--- /dev/null
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-shapes-uncentered.tex
@@ -0,0 +1,99 @@
+% !TeX spellcheck = en_US
+% !TeX root = tikz-ext-manual.tex
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+
+\section{Shape: Uncentered Rectangle}
+\begin{pgflibrary}{ext.shapes.uncenteredrectangle}
+ A rectangle that has a variable horizontal center with three node parts.
+ \inspiration{UncRectCD-Q,UncRectForest-Q}{UncRectCD-A,UncRectForest-A}
+\end{pgflibrary}
+\begin{shape}{uncentered rectangle}
+
+For some alignment problems, this shape could be useful.
+
+It has three node parts: the standard |text| part,
+the |left| part that is to the left of |text|
+and the |right| part that is to the right of |text|.
+
+When edges are to be connected with this shape, the
+following key changes to which inner center this shape will
+calculate the appropriate point on the border.
+\begin{key}{/pgf/uncentered rectangle center=\meta{left}\textrm{ or }\meta{text}\textrm{ or }\meta{right}\textrm{ or }\meta{real} (initially text)}
+ Sets the center that is to be used for connecting edges.
+
+ This will also move the anchors |north|, |mid|, |base| and |south| along.
+ In the picture below, this are marked red.
+\end{key}
+
+For support of the \referenceLibraryandIndexO{cd} library of the |tikz-cd| package,
+this shape also supports a dynamic $y$ value for its anchors |center|, |west| and |east|.
+\begin{key}{/pgf/uncentered rectangle center yshift=\meta{dimension} (initially \{\})}
+ This determines the distance between the baseline and the |center| anchors.
+
+ If \meta{dimension} is empty, the real center will be used which is the default.
+
+ For use with |cd|, set this to |axis_height|.
+ Due to a bug with \referenceKeyandIndexO{execute at end node}
+ this needs a lot of fixing to be able to use in a commutative diagram, though.
+
+\tikzexternaldisable
+\catcode`\|=12
+\begin{codeexample}[leave comments, preamble=\usetikzlibrary{cd, ext.shapes.uncenteredrectangle}]
+\makeatletter
+\tikzcdset{
+ every diagram/.append style={
+ /pgf/uncentered rectangle center=text,
+ /tikz/math align/.style={
+ shape=uncentered rectangle,
+ /pgf/uncentered rectangle center yshift=axis_height,
+ commutative diagrams/math mode=false},
+ /tikz/math align left/.style={
+ math align,
+ /utils/exec={\def\mathalign####1=####2;{$####2$\nodepart{left}$####1={}$}}},
+ /tikz/math align right/.style={
+ math align,
+ /utils/exec={\def\mathalign####1=####2;{$####1$\nodepart{right}${}=####2$}}},
+ /tikz/matrix of math nodes/.style={
+ matrix of nodes,
+ nodes={
+ execute at begin node=\iftikzcd@mathmode$\fi,
+ execute at end node =\iftikzcd@mathmode$\fi}}}}
+\makeatother
+\tikzcdset{install C shortcut/.code=\newcommand*\C[1]{C_{\%_{##1}}}}
+\begin{tikzcd}[
+ install C shortcut,
+ sep=tiny,
+ arrows={-, gray},
+ cells={font=\strut, inner xsep=.2ex, inner ysep=.1ex}
+]
+\C{1} \drar & & |[math align right]| \mathalign m_{r_1} = \C{2}-C_\%; \dlar\\
+ & C_\% \\
+\C{2} \urar & & |[math align right]| \mathalign m_{r_2} = \C{1}-C_\%; \ular
+\end{tikzcd}
+\end{codeexample}
+\end{key}
+\pagebreak
+\begin{codeexample}[preamble=\usepgflibrary{ext.shapes.uncenteredrectangle}]
+\begin{tikzpicture}[style north/.style=red, style south/.style=red, style center/.style=red, style base/.style=red, style mid/.style=red]
+\Huge
+\node[shape example, name=n, uncentered rectangle]
+ {centered \nodepart{left} Un \nodepart{right} \space Rectangle\vrule width 1pt height 2cm}
+ foreach \anchor/\pos in {
+ north west/above left, north/below, north east/above right, real north/above, left north/above, right north/above, text north/above,
+ west/left, center/above, east/right, real center/above, left center/above,right center/above,text center/below,
+ mid west/left, mid/left, mid east/right, real mid/above, left mid/above, right mid/above, text mid/above,
+ base west/left, base/right, base east/right, real base/below, left base/below, right base/below, text base/below,
+ south west/below left, south/above, south east/below right, real south/below, left south/below, right south/below, text south/below,
+ 10/right, 130/below, left/left, right/right, text/right}{
+ plot[mark=x, only marks] coordinates {(n.\anchor)}
+ node[inner sep=.1em, style \anchor/.try, style/.expand once=\pos] {\tiny\ttfamily\anchor}};
+\end{tikzpicture}
+\end{codeexample}
+\end{shape}
+\endinput \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-trans.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-trans.tex
index ccd378a6e7..ccd378a6e7 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual-en-pgf-trans.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-pgf-trans.tex
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.bib b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.bib
index 5a13e91d41..60cf094472 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.bib
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.bib
@@ -319,4 +319,63 @@
year = {2022},
}
+'
+@Software{GH2,
+ abstract = {{clockwise/counter clockwise does not seem to work reliably}},
+ author = {marmotghost},
+ month = oct,
+ title = {clockwise/counter clockwise does not seem to work reliably},
+ url = {https://github.com/Qrrbrbirlbel/tikz-extensions/issues/2},
+ urldate = {2022-10-23},
+ year = {2022},
+}
+
+'
+@Online{UncRectForest-Q,
+ author = {projetmbc},
+ file = {Snapshot:https\://tex.stackexchange.com/questions/661726/forest-automatic-setting-of-the-alignment-of-some-labels/661746#661746:text/html},
+ month = oct,
+ title = {forest - automatic setting of the alignment of some labels},
+ titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+ url = {https://tex.stackexchange.com/q/661726/16595},
+ urldate = {2022-10-23},
+ year = {2022},
+}
+
+@Online{UncRectForest-A,
+ author = {Qrrbrbirlbel},
+ file = {Snapshot:https\://tex.stackexchange.com/questions/661726/forest-automatic-setting-of-the-alignment-of-some-labels/661746#661746:text/html},
+ month = oct,
+ title = {Answer to \enquote{forest - automatic setting of the alignment of some labels}},
+ titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+ url = {https://tex.stackexchange.com/a/661746/16595},
+ urldate = {2022-10-23},
+ year = {2022},
+}
+
+'
+@Online{UncRectCD-Q,
+ author = {Szymankiewicz, Michał},
+ file = {Snapshot:https\://tex.stackexchange.com/questions/657432/how-to-draw-a-mixing-rule-chemistry/657449#657449:text/html},
+ month = sep,
+ shorttitle = {How to draw a mixing rule?},
+ title = {How to draw a mixing rule? \#chemistry},
+ titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+ url = {https://tex.stackexchange.com/q/657432/16595},
+ urldate = {2022-10-23},
+ year = {2022},
+}
+
+@Online{UncRectCD-A,
+ author = {Qrrbrbirlbel},
+ file = {Snapshot:https\://tex.stackexchange.com/questions/657432/how-to-draw-a-mixing-rule-chemistry/657449#657449:text/html},
+ month = sep,
+ shorttitle = {Answer to \enquote{How to draw a mixing rule?}},
+ title = {Answer to \enquote{How to draw a mixing rule? \#chemistry}},
+ titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+ url = {https://tex.stackexchange.com/a/657449/16595},
+ urldate = {2022-10-23},
+ year = {2022},
+}
+
@Comment{jabref-meta: databaseType:bibtex;}
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.pdf b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.pdf
index f4a31a8c6a..51ba04c7d1 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.pdf
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.tex b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.tex
index 253944ca7d..253944ca7d 100644
--- a/graphics/pgf/contrib/tikz-ext/doc/generic/tikz-ext/tikz-ext-manual.tex
+++ b/graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.tex
diff --git a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex
index 90b42a0011..fae3508e15 100644
--- a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex
+++ b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfcalendar-ext.code.tex
@@ -359,7 +359,7 @@
\pgfcalendar@launch@ifdate{#2}{#3}{#4}%
}
-\pgfqkeys{/pgf/calendar/week}{.value required,.code=\ifnum#1=\pgfcalendarifdateweek\relax\expandafter\pgfcalendarmatchestrue\fi}
+\pgfqkeys{/pgf/calendar/week}{.value required,.code={\ifnum#1=\pgfcalendarifdateweek\relax\expandafter\pgfcalendarmatchestrue\fi}}
% Overwriting shorthands of pgfcalendar
\expandafter\def\csname pgfcalendar@shorthand@d-\endcsname{%
diff --git a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfkeyslibraryext.pgfkeys-plus.code.tex b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfkeyslibraryext.pgfkeys-plus.code.tex
new file mode 100644
index 0000000000..49aedb64c6
--- /dev/null
+++ b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgfkeyslibraryext.pgfkeys-plus.code.tex
@@ -0,0 +1,139 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+
+\input pgfmath.tex
+
+%% Handlers
+%% .pgfmath evaluates values given to keys in PGFmath before handing them over.
+%% .pgfmath int truncates the result
+%% .pgfmath strcat concatenates the given values
+\pgfqkeys{/handlers}{
+ .pgfmath/.code=%
+ \begingroup
+ \pgfmathparse{#1}%
+ \expandafter\endgroup\expandafter
+ \pgfkeys@exp@call\expandafter{\pgfmathresult},
+ .pgfmath int/.code=%
+ \begingroup
+ \pgfmathint{#1}%
+ \expandafter\endgroup\expandafter
+ \pgfkeys@exp@call\expandafter{\pgfmathresult},
+ .pgfmath wrap/.code 2 args={%
+ \def\pgfkeys@temp##1{\def\pgfkeys@temp{#1}}%
+ \begingroup
+ \pgfmathparse{#2}%
+ \expandafter\pgfkeys@temp\expandafter{\pgfmathresult}%
+ \expandafter\endgroup\expandafter
+ \pgfkeys@exp@call\expandafter{\pgfkeys@temp}%
+ },
+ .pgfmath if/.code n args={3}{%
+ \begingroup
+ \pgfmathifthenelse{#1}{"1"}{"0"}%
+ \expandafter\endgroup\expandafter
+ \ifcase\pgfmathresult\relax
+ \expandafter\pgfutil@firstoftwo
+ \else
+ \expandafter\pgfutil@secondoftwo
+ \fi
+ {\pgfkeys@exp@call{#3}}%
+ {\pgfkeys@exp@call{#2}}%
+ },
+ .if/.code n args={4}{%
+ \if#1#2%
+ \expandafter\pgfutil@firstoftwo
+ \else
+ \expandafter\pgfutil@secondoftwo
+ \fi
+ {\pgfkeys@exp@call{#3}}%
+ {\pgfkeys@exp@call{#4}}%
+ },
+ .ifnum/.code n args={3}{%
+ \ifnum#1\relax
+ \expandafter\pgfutil@firstoftwo
+ \else
+ \expandafter\pgfutil@secondoftwo
+ \fi
+ {\pgfkeys@exp@call{#2}}%
+ {\pgfkeys@exp@call{#3}}%
+ },
+ .ifdim/.code n args={3}{%
+ \ifdim#1\relax
+ \expandafter\pgfutil@firstoftwo
+ \else
+ \expandafter\pgfutil@secondoftwo
+ \fi
+ {\pgfkeys@exp@call{#2}}%
+ {\pgfkeys@exp@call{#3}}%
+ },
+ .ifx/.code n args={4}{%
+ \ifx#1#2%
+ \expandafter\pgfutil@firstoftwo
+ \else
+ \expandafter\pgfutil@secondoftwo
+ \fi
+ {\pgfkeys@exp@call{#3}}%
+ {\pgfkeys@exp@call{#4}}%
+ },
+ .ifxempty/.code n args={3}{%
+ \edef\pgfkeys@temp{#1}%
+ \pgfutil@ifxempty\pgfkeys@temp{\pgfkeys@exp@call{#2}}{\pgfkeys@exp@call{#3}}%
+ },
+ .ifempty/.code n args={3}{%
+ \pgfutil@ifempty{#1}{\pgfkeys@exp@call{#2}}{\pgfkeys@exp@call{#3}}%
+ },
+ %% http://tex.stackexchange.com/a/144187/16595
+ %% key/.List={(point-1),(point-2),(point-...),(point-6)} will call
+ %% key=(point-1)(point-2)(point-3)(point-4)(point-5),(point-6)
+ .List/.code=%
+ \let\pgfkeys@global@temp\pgfutil@empty
+ \foreach\pgfkeys@temp in{#1}{%
+ \expandafter\pgfutil@g@addto@macro\expandafter\pgfkeys@global@temp\expandafter{\pgfkeys@temp}%
+ }%
+ \expandafter\pgfkeys@exp@call\expandafter{\pgfkeys@global@temp}%
+}
+
+\pgfqkeys{/utils}{
+ if/.code n args={3}{%
+ \begingroup
+ \pgfmathifthenelse{#1}{"1"}{"0"}%
+ \expandafter\endgroup\expandafter
+ \ifcase\pgfmathresult\relax
+ \expandafter\pgfutil@firstoftwo
+ \else
+ \expandafter\pgfutil@secondoftwo
+ \fi
+ {\pgfkeysalso{#3}}
+ {\pgfkeysalso{#2}}%
+ },
+ TeX/if/.code n args={4}{%
+ \if#1#2\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
+ {\pgfkeysalso{#3}}{\pgfkeysalso{#4}}%
+ },
+ TeX/ifnum/.code n args={3}{%
+ \ifnum#1\relax\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
+ {\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
+ },
+ TeX/ifdim/.code n args={3}{%
+ \ifdim#1\relax\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
+ {\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
+ },
+ TeX/ifx/.code n args={4}{%
+ \ifx#1#2\relax\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
+ {\pgfkeysalso{#3}}{\pgfkeysalso{#4}}%
+ },
+ TeX/ifxempty/.code n args={3}{%
+ \edef\pgfkeys@temp{#1}%
+ \pgfutil@ifxempty\pgfkeys@temp{\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
+ },
+ TeX/ifempty/.code n args={3}{%
+ \pgfutil@ifempty{#1}{\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
+ },
+ tex/.search also=/utils/TeX,
+}
+
+\endinput \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.pgfkeys-plus.code.tex b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.pgfkeys-plus.code.tex
new file mode 100644
index 0000000000..6101ca8cad
--- /dev/null
+++ b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.pgfkeys-plus.code.tex
@@ -0,0 +1,11 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+
+\input pgfkeyslibraryext.pgfkeys-plus.code.tex
+
+\endinput \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.uncenteredrectangle.code.tex b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.uncenteredrectangle.code.tex
new file mode 100644
index 0000000000..630a22da14
--- /dev/null
+++ b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/pgflibraryext.shapes.uncenteredrectangle.code.tex
@@ -0,0 +1,307 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\pgfutil@IfUndefined{pgfnodepartthreebox}{%
+ \newbox\pgfnodepartleftbox
+ \newbox\pgfnodepartrightbox
+}{%
+ \let\pgfnodepartleftbox\pgfnodeparttwobox
+ \let\pgfnodepartrightbox\pgfnodepartthreebox
+}
+\pgfset{
+ uncentered rectangle center yshift/.initial=,
+ uncentered rectangle center/@center/.initial=2,
+ uncentered rectangle center/.is choice,
+ uncentered rectangle center/real/.code=\pgfkeyssetvalue{/pgf/uncentered rectangle center/@center}{0},
+ uncentered rectangle center/left/.code=\pgfkeyssetvalue{/pgf/uncentered rectangle center/@center}{1},
+ uncentered rectangle center/text/.code=\pgfkeyssetvalue{/pgf/uncentered rectangle center/@center}{2},
+ uncentered rectangle center/right/.code=\pgfkeyssetvalue{/pgf/uncentered rectangle center/@center}{3}}
+
+\pgfdeclareshape{uncentered rectangle}{%
+ \nodeparts{text,left,right}%
+ \savedanchor\middleCenter{%
+ \pgf@x=.5\wd\pgfnodeparttextbox
+ %
+ \pgf@y=\dp\pgfnodeparttextbox
+ \ifdim\dp\pgfnodepartleftbox>\pgf@y
+ \pgf@y=\dp\pgfnodepartleftbox
+ \fi
+ \ifdim\dp\pgfnodepartrightbox>\pgf@y
+ \pgf@y=\dp\pgfnodepartrightbox
+ \fi
+ %
+ \pgf@ya=\ht\pgfnodeparttextbox
+ \ifdim\ht\pgfnodepartleftbox>\pgf@ya
+ \pgf@ya=\ht\pgfnodepartleftbox
+ \fi
+ \ifdim\ht\pgfnodepartrightbox>\pgf@ya
+ \pgf@ya=\ht\pgfnodepartrightbox
+ \fi
+ \advance\pgf@ya by -\pgf@y
+ \pgf@y=.5\pgf@ya
+ }%
+ \savedanchor\leftCenter{%
+ % y should be still the same as before
+ \pgf@x=-.5\wd\pgfnodepartleftbox
+ }%
+ \savedanchor\rightCenter{%
+ % y should be still the same as before
+ \pgf@x=.5\wd\pgfnodepartrightbox
+ \advance\pgf@x by \wd\pgfnodeparttextbox
+ }%
+ \savedanchor\realCenter{%
+ % y should be still the same as before
+ \pgf@x=-.5\wd\pgfnodepartleftbox
+ \advance\pgf@x by .5\wd\pgfnodeparttextbox
+ \advance\pgf@x by .5\wd\pgfnodepartrightbox
+ }%
+ \savedanchor\southwest{%
+ % total width
+ \pgf@xa=\wd\pgfnodepartleftbox
+ \advance\pgf@xa by\wd\pgfnodepartrightbox
+ \advance\pgf@xa by\wd\pgfnodeparttextbox
+ %
+ \pgfmathsetlength\pgf@xc{\pgfkeysvalueof{/pgf/inner xsep}}%
+ \advance\pgf@xa by 2\pgf@xc
+ \pgfmathsetlength\pgf@xb{\pgfkeysvalueof{/pgf/minimum width}}%
+ \ifdim\pgf@xb>\pgf@xa
+ \pgf@xa=\pgf@xb
+ \fi
+ % left side of shape
+ \advance\pgf@x by -.5\pgf@xa
+ \pgfmathsetlength\pgf@xa{\pgfkeysvalueof{/pgf/outer xsep}}%
+ \advance\pgf@x by -\pgf@xa
+ %
+ % total height
+ \pgf@ya=\dp\pgfnodepartleftbox
+ \ifdim\pgf@ya<\dp\pgfnodeparttextbox
+ \pgf@ya=\dp\pgfnodeparttextbox
+ \fi
+ \ifdim\pgf@ya<\dp\pgfnodepartrightbox
+ \pgf@ya=\dp\pgfnodepartrightbox
+ \fi
+ \pgf@yb=\ht\pgfnodepartleftbox
+ \ifdim\pgf@yb<\ht\pgfnodeparttextbox
+ \pgf@yb=\ht\pgfnodeparttextbox
+ \fi
+ \ifdim\pgf@yb<\ht\pgfnodepartrightbox
+ \pgf@yb=\ht\pgfnodepartrightbox
+ \fi
+ \advance\pgf@ya by \pgf@yb
+ %
+ \pgfmathsetlength\pgf@yc{\pgfkeysvalueof{/pgf/inner ysep}}%
+ \advance\pgf@ya by 2\pgf@yc
+ \pgfmathsetlength\pgf@yb{\pgfkeysvalueof{/pgf/minimum height}}%
+ \ifdim\pgf@yb>\pgf@ya
+ \pgf@ya=\pgf@yb
+ \fi
+ % lower side of the shape
+ \advance\pgf@y by -.5\pgf@ya
+ \pgfmathsetlength\pgf@ya{\pgfkeysvalueof{/pgf/outer ysep}}%
+ \advance\pgf@y by -\pgf@ya
+ }%
+ \savedanchor\northeast{%
+ % first, let's calculate the real center again:
+ %
+ \pgf@x=-.5\wd\pgfnodepartleftbox
+ \advance\pgf@x by .5\wd\pgfnodeparttextbox
+ \advance\pgf@x by .5\wd\pgfnodepartrightbox
+ %
+ \pgf@y=\dp\pgfnodeparttextbox
+ \ifdim\dp\pgfnodepartleftbox>\pgf@y
+ \pgf@y=\dp\pgfnodepartleftbox
+ \fi
+ \ifdim\dp\pgfnodepartrightbox>\pgf@y
+ \pgf@y=\dp\pgfnodepartrightbox
+ \fi
+ %
+ \pgf@ya=\ht\pgfnodeparttextbox
+ \ifdim\ht\pgfnodepartleftbox>\pgf@ya
+ \pgf@ya=\ht\pgfnodepartleftbox
+ \fi
+ \ifdim\ht\pgfnodepartrightbox>\pgf@ya
+ \pgf@ya=\ht\pgfnodepartrightbox
+ \fi
+ \advance\pgf@ya by -\pgf@y
+ \pgf@y=.5\pgf@ya
+ %
+ % now we can calculate the anchor
+ % total width
+ %
+ \pgf@xa=\wd\pgfnodepartleftbox
+ \advance\pgf@xa by\wd\pgfnodepartrightbox
+ \advance\pgf@xa by\wd\pgfnodeparttextbox
+ %
+ \pgfmathsetlength\pgf@xc{\pgfkeysvalueof{/pgf/inner xsep}}%
+ \advance\pgf@xa by 2\pgf@xc
+ \pgfmathsetlength\pgf@xb{\pgfkeysvalueof{/pgf/minimum width}}%
+ \ifdim\pgf@xb>\pgf@xa
+ \pgf@xa=\pgf@xb
+ \fi
+ % right side of shape
+ \advance\pgf@x by .5\pgf@xa
+ \pgfmathsetlength\pgf@xa{\pgfkeysvalueof{/pgf/outer xsep}}%
+ \advance\pgf@x by \pgf@xa
+ %
+ % total height
+ \pgf@ya=\dp\pgfnodepartleftbox
+ \ifdim\pgf@ya<\dp\pgfnodeparttextbox
+ \pgf@ya=\dp\pgfnodeparttextbox
+ \fi
+ \ifdim\pgf@ya<\dp\pgfnodepartrightbox
+ \pgf@ya=\dp\pgfnodepartrightbox
+ \fi
+ \pgf@yb=\ht\pgfnodepartleftbox
+ \ifdim\pgf@yb<\ht\pgfnodeparttextbox
+ \pgf@yb=\ht\pgfnodeparttextbox
+ \fi
+ \ifdim\pgf@yb<\ht\pgfnodepartrightbox
+ \pgf@yb=\ht\pgfnodepartrightbox
+ \fi
+ \advance\pgf@ya by \pgf@yb
+ %
+ \pgfmathsetlength\pgf@yc{\pgfkeysvalueof{/pgf/inner ysep}}%
+ \advance\pgf@ya by 2\pgf@yc
+ \pgfmathsetlength\pgf@yb{\pgfkeysvalueof{/pgf/minimum height}}%
+ \ifdim\pgf@yb>\pgf@ya
+ \pgf@ya=\pgf@yb
+ \fi
+ % upper side of the shape
+ \advance\pgf@y by .5\pgf@ya
+ \pgfmathsetlength\pgf@ya{\pgfkeysvalueof{/pgf/outer ysep}}%
+ \advance\pgf@y by \pgf@ya
+ }%
+ %
+ \anchor{center}{%
+ \ifcase\pgfkeysvalueof{/pgf/uncentered rectangle center/@center}\relax
+ \realCenter\or
+ \leftCenter\or
+ \middleCenter\or
+ \rightCenter\else
+ \realCenter
+ \fi
+ \pgfkeysgetvalue{/pgf/uncentered rectangle center yshift}\pgf@temp
+ \pgfutil@ifxempty\pgf@temp{% real center used
+ }{% calculate center
+ \pgfmathsetlength\pgf@y{\pgf@temp}%
+ }%
+ }%
+ \anchor{left} {\leftCenter \multiply\pgf@x by2 \pgf@y=0pt }
+ \anchor{right} {\middleCenter\multiply\pgf@x by2 \pgf@y=0pt }
+ \anchor{real center} {\realCenter}
+ \anchor{left center} {\leftCenter}
+ \anchor{right center}{\rightCenter}
+ \anchor{text center} {\middleCenter}
+ \anchor{south west} {\southwest}
+ \anchor{north east} {\northeast}
+ \anchor{mid}{%
+ \csname pgf@anchor@uncentered rectangle@center\endcsname
+ \pgfmathsetlength\pgf@y{.5ex}}%
+ \anchor{base}{%
+ \csname pgf@anchor@uncentered rectangle@center\endcsname
+ \pgf@y=0pt }%
+ \anchor{left mid} {\leftCenter \pgfmathsetlength\pgf@y{+.5ex}}
+ \anchor{text mid} {\middleCenter\pgfmathsetlength\pgf@y{+.5ex}}
+ \anchor{right mid} {\rightCenter \pgfmathsetlength\pgf@y{+.5ex}}
+ \anchor{real mid} {\realCenter \pgfmathsetlength\pgf@y{+.5ex}}
+ \anchor{left base} {\leftCenter \pgf@y=0pt }
+ \anchor{text base} {\middleCenter\pgf@y=0pt }
+ \anchor{right base} {\rightCenter \pgf@y=0pt }
+ \anchor{real base} {\realCenter \pgf@y=0pt }
+ \anchor{real south} {\pgf@anchor@rectangle@south}
+ \anchor{real north} {\pgf@anchor@rectangle@north}
+ \anchor{text north} {\pgf@anchor@rectangle@north\pgf@ya=\pgf@y\middleCenter\pgf@y=\pgf@ya}
+ \anchor{left north} {\pgf@anchor@rectangle@north\pgf@ya=\pgf@y\leftCenter \pgf@y=\pgf@ya}
+ \anchor{right north}{\pgf@anchor@rectangle@north\pgf@ya=\pgf@y\rightCenter \pgf@y=\pgf@ya}
+ \anchor{text south} {\pgf@anchor@rectangle@south\pgf@ya=\pgf@y\middleCenter\pgf@y=\pgf@ya}
+ \anchor{left south} {\pgf@anchor@rectangle@south\pgf@ya=\pgf@y\leftCenter \pgf@y=\pgf@ya}
+ \anchor{right south}{\pgf@anchor@rectangle@south\pgf@ya=\pgf@y\rightCenter \pgf@y=\pgf@ya}
+ \anchor{north}{%
+ \pgf@anchor@rectangle@north
+ \pgf@ya=\pgf@y
+ \csname pgf@anchor@uncentered rectangle@center\endcsname
+ \pgf@y=\pgf@ya
+ }
+ \anchor{south}{%
+ \pgf@anchor@rectangle@south
+ \pgf@ya=\pgf@y
+ \csname pgf@anchor@uncentered rectangle@center\endcsname
+ \pgf@y=\pgf@ya
+ }
+ %\anchor{base right}{\middleCenter\pgf@xa=2\pgf@x}% TODO
+ \anchor{real west}{%
+ \pgf@process{\northeast}%
+ \pgf@ya=.5\pgf@y
+ \pgf@process{\southwest}%
+ \pgf@y=.5\pgf@y
+ \advance\pgf@y by \pgf@ya
+ }%
+ \anchor{real east}{%
+ \pgf@process{\southwest}%
+ \pgf@ya=.5\pgf@y
+ \pgf@process{\northeast}%
+ \pgf@y=.5\pgf@y
+ \advance\pgf@y by \pgf@ya
+ }%
+ \anchor{west}{%
+ \pgf@process{\southwest}%
+ \pgf@xa=\pgf@x
+ \pgf@process{\csname pgf@anchor@uncentered rectangle@center\endcsname}%
+ \pgf@x=\pgf@xa
+ }%
+ \anchor{east}{%
+ \pgf@process{\northeast}%
+ \pgf@xa=\pgf@x
+ \pgf@process{\csname pgf@anchor@uncentered rectangle@center\endcsname}%
+ \pgf@x=\pgf@xa
+ }%
+ \inheritanchor[from=rectangle]{south west}
+ \inheritanchor[from=rectangle]{north west}
+ \inheritanchor[from=rectangle]{south east}
+ \inheritanchor[from=rectangle]{north east}
+ \inheritanchor[from=rectangle]{mid west}
+ \inheritanchor[from=rectangle]{mid east}
+ \inheritanchor[from=rectangle]{base west}
+ \inheritanchor[from=rectangle]{base east}
+ \inheritbackgroundpath[from=rectangle]
+ \anchorborder{%
+ % xa/ya is target
+ \pgf@xa=\pgf@x
+ \pgf@ya=\pgf@y
+ % xc/yc is "center"
+ \pgf@sh@reanchor{uncentered rectangle}{center}%
+ \pgf@xc=\pgf@x
+ \pgf@yc=\pgf@y
+ \ifdim\pgf@xa<0pt
+ % left side
+ \southwest
+ \advance\pgf@x by -\pgf@xc
+ \advance\pgf@y by -\pgf@yc
+ \pgf@x=-\pgf@x
+ \pgf@y=-\pgf@y
+ \edef\pgf@marshal{%
+ \noexpand\pgfpointborderrectangle
+ {\noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@ya}}
+ {\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}%
+ }%
+ \else
+ % right side
+ \northeast
+ \advance\pgf@x by -\pgf@xc
+ \advance\pgf@y by -\pgf@yc
+ \edef\pgf@marshal{%
+ \noexpand\pgfpointborderrectangle
+ {\noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@ya}}
+ {\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}%
+ }%
+ \fi
+ \pgf@process{\pgf@marshal}%
+ \advance\pgf@x by\pgf@xc
+ \advance\pgf@y by\pgf@yc
+ }%
+}
+\endinput \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.misc.code.tex b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.misc.code.tex
index 830b3513e5..a5a982020f 100644
--- a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.misc.code.tex
+++ b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.misc.code.tex
@@ -5,6 +5,8 @@
% 1. under the LaTeX Project Public License and/or
% 2. under the GNU Free Documentation License.
%
+\usepgflibrary{ext.pgfkeys-plus}%
+
%% full arc
%% https://tex.stackexchange.com/a/144297/16595
%% The postfix operator R is added to PGFmath,
@@ -73,28 +75,6 @@
{\tikzext@pgf@foreach@no@listfalse\pgffor@macro@list\tikzext@pgf@foreach@no@list@list}
{\pgffor@@vars}}}}}%
-%% Handlers
-%% .pgfmath evaluates values given to keys in PGFmath before handing them over.
-%% .pgfmath int truncates the result
-%% .pgfmath strcat concatenates the given values
-\pgfkeys{/handlers/.pgfmath/.code=\pgfmathparse{#1}\expandafter\pgfkeys@exp@call\expandafter{\pgfmathresult}}
-\pgfkeys{/handlers/.pgfmath int/.code=\pgfmathint{#1}\expandafter\pgfkeys@exp@call\expandafter{\pgfmathresult}}
-\pgfkeys{/handlers/.pgfmath strcat/.code=\pgfmathstrcat{#1}\expandafter\pgfkeys@exp@call\expandafter{\pgfmathresult}}
-
-%% http://tex.stackexchange.com/a/144187/16595
-%% key/.List={(point-1),(point-2),(point-...),(point-6)} will call
-%% key=(point-1)(point-2)(point-3)(point-4)(point-5),(point-6)
-\pgfkeys{/handlers/.List/.code={%
- \let\pgfkeys@global@temp\pgfutil@empty
- \foreach \pgfkeys@temp in{#1}{
- \ifx\pgfkeys@global@temp\pgfutil@empty
- \global\let\pgfkeys@global@temp\pgfkeys@temp
- \else
- \expandafter\pgfutil@g@addto@macro\expandafter\pgfkeys@global@temp\expandafter
- {\pgfkeys@temp}%
- \fi}%
- \expandafter\pgfkeys@exp@call\expandafter{\pgfkeys@global@temp}}}
-
%% PGFmath
%% strrepeat("x", 5) = "xxxxx"
\pgfmathdeclarefunction{strrepeat}{2}{%
@@ -175,62 +155,11 @@
\pgfmathdeclarefunction{isEmpty}{1}{%
\begingroup
- \edef\pgfmath@temp{#1}%
+ \def\pgfmath@temp{#1}%
\pgfutil@ifxempty\pgfmath@temp{\def\pgfmathresult{1}}{\def\pgfmathresult{0}}%
\pgfmath@smuggleone\pgfmathresult
\endgroup}
-\pgfqkeys{/utils}{
- if/.code n args=3{%
- \pgfmathparse{#1}%
- \ifdim\pgfmathresult pt=0pt
- \expandafter\pgfutil@firstoftwo
- \else
- \expandafter\pgfutil@secondoftwo
- \fi
- {\pgfkeysalso{#3}}%
- {\pgfkeysalso{#2}}},
- IF/.code args={(#1)#2}{%
- \pgfmathparse{#1}%
- \pgfutil@in@{else}{#2}%
- \ifpgfutil@in@
- \expandafter\pgfutil@firstoftwo
- \else
- \expandafter\pgfutil@secondoftwo
- \fi
- {\tikzext@misc@handle@else#2\pgf@stop}{\tikzext@misc@handle@else#2else\pgf@stop}%
- },
- TeX/if/.code n args={4}{%
- \if#1#2\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
- {\pgfkeysalso{#3}}{\pgfkeysalso{#4}}%
- },
- TeX/ifnum/.code n args={3}{%
- \ifnum#1\relax\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
- {\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
- },
- TeX/ifdim/.code n args={3}{%
- \ifdim#1\relax\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
- {\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
- },
- TeX/ifx/.code n args={4}{%
- \ifx#1#2\relax\expandafter\pgfutil@firstoftwo\else\expandafter\pgfutil@secondoftwo\fi
- {\pgfkeysalso{#3}}{\pgfkeysalso{#4}}%
- },
- TeX/ifempty/.code n args={3}{%
- \edef\pgfkeys@temp{#1}%
- \pgfutil@ifxempty\pgfkeys@temp{\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
- },
- tex/.search also=/utils/TeX,
-}
-\def\tikzext@misc@handle@else#1else#2\pgf@stop{%
- \ifdim\pgfmathresult pt=0pt
- \expandafter\pgfutil@firstoftwo
- \else
- \expandafter\pgfutil@secondoftwo
- \fi
- {\pgfkeysalso{#2}}%
- {\pgfkeysalso{#1}}}
-
\pgfset{
declare constant/.code={%
\let\pgfmathdeclareconstant@@@\pgfutil@empty
diff --git a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex
index c75f31b60a..e97bbf939d 100644
--- a/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex
+++ b/graphics/pgf/contrib/tikz-ext/tex/generic/tikz-ext/tikzlibraryext.paths.arcto.code.tex
@@ -306,12 +306,12 @@
% make sure direction is properly followed
\ifdim\pgf@arcto@fS pt=1pt
% counter clockwise
- \ifdim\pgf@arcto@theta@end pt<\pgf@arcto@theta@start path
+ \ifdim\pgf@arcto@theta@end pt<\pgf@arcto@theta@start pt
\pgfmathsetmacro\pgf@arcto@theta@end{\pgf@arcto@theta@end+360}%
\fi
\else
% clockwise
- \ifdim\pgf@arcto@theta@end pt>\pgf@arcto@theta@start path
+ \ifdim\pgf@arcto@theta@end pt>\pgf@arcto@theta@start pt
\pgfmathsetmacro\pgf@arcto@theta@end{\pgf@arcto@theta@end-360}%
\fi
\fi
diff --git a/graphics/pstricks/base/Changes b/graphics/pstricks/base/Changes
index 64e75d7521..6f46436197 100644
--- a/graphics/pstricks/base/Changes
+++ b/graphics/pstricks/base/Changes
@@ -1,4 +1,4 @@
-% $Id: Changes 604 2022-09-11 14:17:36Z herbert $
+% $Id: Changes 644 2022-10-23 18:29:03Z herbert $
For all changes see file History! Here are only the last one changes
listed.
@@ -11,7 +11,8 @@ pstricks.tex --------
versions like 2.47a have only changes in other files, but not
in this main package.
-3.16 2022-09-11 - internal fix for an unneded tab character in \begingroup
+3.17 2022-10-23 - fix for \pgfforeach
+3.16 2022-09-11 - internal fix for an unneeded tab character in \begingroup
3.15 2022-09-11 - fix lualatex and pstricks code on the first page
3.14a 2022-09-08 - fix for wrong pro files
3.14 2022-08-30 - bugfix for \psdots* in pstricks-dots.tex
diff --git a/graphics/pstricks/base/doc/pst-news22.pdf b/graphics/pstricks/base/doc/pst-news22.pdf
index 92159f537f..fd93b6e939 100644
--- a/graphics/pstricks/base/doc/pst-news22.pdf
+++ b/graphics/pstricks/base/doc/pst-news22.pdf
Binary files differ
diff --git a/graphics/pstricks/base/doc/pst-news22.tex b/graphics/pstricks/base/doc/pst-news22.tex
index bfc5e2b7a1..9d8c674368 100644
--- a/graphics/pstricks/base/doc/pst-news22.tex
+++ b/graphics/pstricks/base/doc/pst-news22.tex
@@ -1,4 +1,4 @@
-%% $Id: pst-news22.tex 595 2022-08-30 18:08:22Z herbert $
+%% $Id: pst-news21.tex 382 2021-12-29 19:19:18Z herbert $
\RequirePackage{pdfmanagement-testphase}
\DeclareDocumentMetadata{}
\documentclass[11pt,english,BCOR=10mm,DIV=12,bibliography=totoc,parskip=false,headings=small,
@@ -27,35 +27,43 @@
\part{\texttt{pstricks} -- package}
+This version of the News was run with \verb|lualatex| \emph{without} using Ghostscript.
+The PDF file was created in a direkt way by Lua. If you run \texttt{lualatex} then the
+packahe \texttt{luapstricks} is automatically loaded.
+
+
+%--------------------------------------------------------------------------------------
+\section{\texttt{pstricks.sty}}
+%--------------------------------------------------------------------------------------
+The optional argument \texttt{gsfonts} can be used to load only the symbol font from GhostScript.
+Otherwise the one from URW or the system is used, which is the default.
+
+
%--------------------------------------------------------------------------------------
-\section{\texttt{pstricks.tex} (v. 3.14 -- 2022/08/30)}
+\section{\texttt{pstricks.tex} (v. 3.17 -- 2022/10/22)}
%--------------------------------------------------------------------------------------
-Bugfix for \Lcs{psdots*}:
-\begin{LTXexample}[width=5cm]
-\begin{pspicture}[showgrid=true](3,2)
- \psdot[dotstyle=pentagon,dotscale=5](1.5,1.5)
- \psdots[dotsize=.4cm,dotstyle=square,
- linecolor=red](0,0)(0.5,0)(1,1)(1.5,1)(2,2)(2.5,2)
- \psdots*(2.5,0.6)\psdot(2.5,0.2)
-\end{pspicture}
-\end{LTXexample}
+\subsection{pgf library}
+This version fixes a problem with the upcoming pgf from which PSTricks uses the \Lcs{foreach}
+command as \Lcs{pgfforeach}.
-\begin{LTXexample}[width=5cm]
-\begin{pspicture}[showgrid=true](3,2)
- \psdot*[dotstyle=pentagon,dotscale=5](1.5,1.5)
- \psdots*[dotsize=.4cm,dotstyle=square,
- linecolor=red](0,0)(0.5,0)(1,1)(1.5,1)(2,2)(2.5,2)
- \psdots*(2.5,0.6)\psdot(2.5,0.2)
-\end{pspicture}
-\end{LTXexample}
+\subsection{Arrows}
+There are new arrow types and a new optional argument \Lkeyword{tipcolor}.
+Checking \Lkeyword{tipcolor} can be suppressed by setting
+\begin{verbatim}
+\makeatletter
+\ps@check@tipcplor{}
+\makeatother
+\end{verbatim}
+This is only needed in some rare cases, e.g. \Lcs{pscustom} with \Lcs{code} and
+color setting on PS level.
\nocite{*}
diff --git a/graphics/pstricks/base/dvips/pstricks.pro b/graphics/pstricks/base/dvips/pstricks.pro
index 47e9fd6631..c25657b9b9 100644
--- a/graphics/pstricks/base/dvips/pstricks.pro
+++ b/graphics/pstricks/base/dvips/pstricks.pro
@@ -1,4 +1,4 @@
-% $Id: pstricks.pro 407 2022-01-12 17:06:33Z herbert $
+% $Id: pstricks.pro 615 2022-09-22 08:39:26Z herbert $
%
%% PostScript prologue for pstricks.tex.
%% Version 1.41, 2021/11/16
@@ -379,7 +379,7 @@ tx@Dict begin
%
%
/TruchetFill { % on stack: scaling factor
- 10 dict begin
+ 20 dict begin
dup dup scale
1 exch div round /penroseFactor ED
a 0 dtransform round exch round exch
@@ -445,7 +445,11 @@ tx@Dict begin
{ 0 h T 1 -1 scale } if
w neg h moveto
0 0 L w h L w neg a neg rlineto
- gsave fill grestore
+ gsave
+% gsave w neg h lineto CLW 0.5 add setlinewidth % test für border beim Pfeil
+% 1 setgray 0 setlinejoin closepath stroke
+% grestore
+ fill grestore
} def
%
/ArrowD { % the sides are drawn as curves (hv 20071211)
diff --git a/graphics/pstricks/base/generic/pstricks.tex b/graphics/pstricks/base/generic/pstricks.tex
index 244b469e50..9d741d115a 100644
--- a/graphics/pstricks/base/generic/pstricks.tex
+++ b/graphics/pstricks/base/generic/pstricks.tex
@@ -74,15 +74,18 @@
%\@ifnextchar[\ProvidesPackageRCS@i{\ProvidesPackageRCS@i[] }}%$
%\def\ProvidesPackageRCS@i[#1]#2{}
-\ifx\pgfkeysloaded\relax\else
- \input pgfutil-common.tex
- \input pgfkeys.code.tex
- \input pgffor.code.tex
+\ifx\pgfkeysloaded\relax\else
+ \ifdefined\@latexerr % format is latex
+ \RequirePackage{pgffor} % pgffor depends on pgfkeys
+ \else % format is plaintex
+ \input pgffor.tex
+ \fi
\fi
+
\let\pgfforeach\foreach
%
-\def\fileversion{3.16}
-\def\filedate{2022/09/11}
+\def\fileversion{3.17}
+\def\filedate{2022/10/23}
\pst@addfams{pstricks}
%
%\define@boolkey[psset]{pstricks}[Pst@]{useURWfonts}[true]{}
@@ -1486,9 +1489,9 @@
\ignorespaces%
}
\def\begin@OpenObj{%
- \begin@ClosedObj%
- \let\pst@linetype\pst@arrowtype%
- \pst@addarrowdef%
+ \begin@ClosedObj
+ \let\pst@linetype\pst@arrowtype
+ \pst@addarrowdef
}
\def\begin@AltOpenObj{%
\begin@ClosedObj
diff --git a/graphics/pstricks/base/latex/pstricks.sty b/graphics/pstricks/base/latex/pstricks.sty
index 30de94d110..6e256a7e05 100644
--- a/graphics/pstricks/base/latex/pstricks.sty
+++ b/graphics/pstricks/base/latex/pstricks.sty
@@ -1,4 +1,4 @@
-% $Id: pstricks.sty 262 2021-09-24 09:02:54Z herbert $
+% $Id: pstricks.sty 644 2022-10-23 18:29:03Z herbert $
%%
%% This is file `pstricks.sty'.
%%
@@ -17,7 +17,8 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{pstricks}[2021/08/23 v0.71 LaTeX wrapper for `PSTricks' (RN,HV)]
+
+\ProvidesPackage{pstricks}[2022/19/23 v0.72 LaTeX wrapper for `PSTricks' (RN,HV)]
%
\def\documentclass{%
\edef\@tempa{\jobname.tex }%
@@ -99,7 +100,7 @@
\ProvidesFile{pst-fp.tex}[\filedate\space v\fileversion\space `PST-fp' (hv)]
\IfFileExists{pstricks.pro}{%
\ProvidesFile{pstricks.pro}
- [2020/06/09 v. 1.31, PostScript prologue file (hv)]
+ [2020/11/16 v. 1.41, PostScript prologue file (hv)]
\@addtofilelist{pstricks.pro}}{}%
\IfFileExists{pst-algparser.pro}{%
\ProvidesFile{pst-algparser.pro}[2011/10/31 v. 0.04, PostScript prologue file (hv)]
diff --git a/macros/latex/contrib/iexec/iexec.dtx b/macros/latex/contrib/iexec/iexec.dtx
index 30f44bdbf9..94b924652a 100644
--- a/macros/latex/contrib/iexec/iexec.dtx
+++ b/macros/latex/contrib/iexec/iexec.dtx
@@ -50,12 +50,13 @@
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{iexec}
%<*package>
-[2022-10-22 0.11.0 Inputable Shell Executions]
+[2022-10-23 0.11.1 Inputable Shell Executions]
%</package>
%<*driver>
\documentclass{ltxdoc}
\usepackage[tt=false, type1=true]{libertine}
\usepackage{microtype}
+\usepackage{xcolor}
\usepackage[dtx]{docshots}
\usepackage{iexec}
\usepackage{href-ul}
@@ -77,6 +78,9 @@
%
% \maketitle
%
+% \textbf{\color{red}NB!}
+% This package doesn't work on Windows!
+%
% \section{Introduction}
%
% This package helps you execute shell commands right from the
@@ -324,7 +328,7 @@ This file won't be deleted: \iexec[stdout=me.txt]{whoami}.
\fi%
\begingroup%
% \end{macrocode}
-% Then, start the log from a clean line:
+% Then, we start the log from a clean line:
% \begin{macrocode}
\ifdefined\iexec@log%
\message{^^J}%
@@ -339,27 +343,28 @@ This file won't be deleted: \iexec[stdout=me.txt]{whoami}.
\let\{\@charlb%
\let\}\@charrb%
% \end{macrocode}
-% Then, we execute it:
+% Then, we execute it and save exit code into a file (where we also add \% in order to trim the content to exactly one number, as suggested \href{https://tex.stackexchange.com/questions/662756}{here}):
% \changes{0.10.0}{2022/10/19}{The ability to track exit code was added. Now, the code is saved into "iexec.ret" file, which is then read and checked for zero value.}
% \changes{0.8.0}{2022/10/05}{The option "null" was introduced, allowing redirection of stdout to "/dev/null". Doesn't work on Windows, though.}
% \changes{0.9.0}{2022/10/15}{The option "stderr" was introduced, allowing redirection of stderr to a file. Without this option specified, stderr will go to stdout.}
% \changes{0.11.0}{2022/10/22}{The file with exit code now contains just numbers, without end of line.}
+% \changes{0.11.1}{2022/10/23}{When exit code is printed to the file, we add percentchar at the end of line in order to avoid extra space when reading it back.}
% \begin{macrocode}
\def\iexec@cmd{(#2)
\ifdefined\iexec@append>\fi>
\ifdefined\iexec@null/dev/null\else\iexec@stdout\fi
\space\ifdefined\iexec@stderr2>\iexec@stderr\else2>&1\fi;
- /bin/echo -n $? >\iexec@exit}
+ /bin/echo -n $?\% >\iexec@exit}
\ShellEscape{\iexec@cmd}%
% \end{macrocode}
-% Then, a message is printed to TeX log:
+% Then, a message is printed to \TeX{} log:
% \begin{macrocode}
\ifdefined\iexec@log%
\message{iexec: [\iexec@cmd]^^J}%
\fi%
\endgroup%
% \end{macrocode}
-% Then, if required, the content of the stdout file will be printed to the log:
+% Then, if required, we print the content of the stdout file to \TeX{} log:
% \begin{macrocode}
\ifdefined\iexec@null\else%
\ifdefined\iexec@log%
@@ -368,11 +373,14 @@ This file won't be deleted: \iexec[stdout=me.txt]{whoami}.
\message{<EOF>^^J}%
\fi\fi%
% \end{macrocode}
-% Then, we check exit code, unless there is |ignore| option:
+% Then, we read back the exit code, from the file:
% \begin{macrocode}
\immediate\openin\iexec@exitfile=\iexec@exit%
\read\iexec@exitfile to \iexec@code%
\immediate\closein\iexec@exitfile%
+% \end{macrocode}
+% Then, we check whether it's zero or not (if not zero, we either print a message or fail the build, depending on the presence of |ignore| option):
+% \begin{macrocode}
\ifnum\iexec@code=0\else%
\ifdefined\iexec@ignore%
\ifdefined\iexec@log%
@@ -385,7 +393,7 @@ This file won't be deleted: \iexec[stdout=me.txt]{whoami}.
\fi%
\fi%
% \end{macrocode}
-% Then, include the produced output into the current document:
+% Then, we include the produced output into the current document:
% \begin{macrocode}
\ifdefined\iexec@null\else%
\ifdefined\iexec@quiet%
@@ -406,7 +414,7 @@ This file won't be deleted: \iexec[stdout=me.txt]{whoami}.
was included into the document^^J}%
\fi\fi%
% \end{macrocode}
-% Finally, delete the file or leave it untouched:
+% Finally, we delete the file or leave it untouched:
% \begin{macrocode}
\ifdefined\iexec@null\else%
\ifiexec@trace%
diff --git a/macros/latex/contrib/iexec/iexec.pdf b/macros/latex/contrib/iexec/iexec.pdf
index e4633ab765..c3d51f4982 100644
--- a/macros/latex/contrib/iexec/iexec.pdf
+++ b/macros/latex/contrib/iexec/iexec.pdf
Binary files differ
diff --git a/macros/latex/contrib/siunitx/CHANGELOG.md b/macros/latex/contrib/siunitx/CHANGELOG.md
index 7cdde2cf78..d1d7b1c61f 100644
--- a/macros/latex/contrib/siunitx/CHANGELOG.md
+++ b/macros/latex/contrib/siunitx/CHANGELOG.md
@@ -7,6 +7,15 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to
## [Unreleased]
+## [v3.1.9] - 2022-10-23
+
+### Added
+- Option `print-complex-unity`
+
+## Fixed
+- Printing of complex values of exactly one (see issue
+ [\#625](https://github.com/josephwright/siunitx/issues/625))
+
## [v3.1.8] - 2022-10-04
### Fixed
@@ -1817,7 +1826,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.1.8...HEAD
+[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.1.9...HEAD
+[v3.1.9]: https://github.com/josephwright/siunitx/compare/v3.1.8...v3.1.9
[v3.1.8]: https://github.com/josephwright/siunitx/compare/v3.1.7...v3.1.8
[v3.1.7]: https://github.com/josephwright/siunitx/compare/v3.1.6...v3.1.7
[v3.1.6]: https://github.com/josephwright/siunitx/compare/v3.1.5...v3.1.6
diff --git a/macros/latex/contrib/siunitx/siunitx-code.pdf b/macros/latex/contrib/siunitx/siunitx-code.pdf
index cf6bc8c78c..7bfe53e8a8 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-complex.dtx b/macros/latex/contrib/siunitx/siunitx-complex.dtx
index 9cd595d28f..8303c9f302 100644
--- a/macros/latex/contrib/siunitx/siunitx-complex.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-complex.dtx
@@ -164,6 +164,14 @@
% is |\mathrm{i}|.
% \end{function}
%
+% \begin{function}{print-complex-unity}
+% \begin{syntax}
+% |print-complex-unity| = |true|\verb"|"|false|
+% \end{syntax}
+% Switch to determine if the number \num{1} is printed for a complex
+% part which is exactly unity.
+% \end{function}
+%
% \end{documentation}
%
% \begin{implementation}
@@ -286,7 +294,9 @@
input-complex-root .tl_set:N =
\l_@@_input_root_tl ,
output-complex-root .tl_set:N =
- \l_@@_output_root_tl
+ \l_@@_output_root_tl ,
+ print-complex-unity .bool_set:N =
+ \l_@@_print_unity_bool
}
% \end{macrocode}
% \end{variable}
@@ -860,8 +870,7 @@
\cs_new_protected:Npn \@@_drop_exponent:nnnnnnn #1#2#3#4#5#6#7
{ \tl_set:Nn \l_@@_real_tl { {#1} {#2} {#3} {#4} {#5} { } { 0 } } }
% \end{macrocode}
-% Ensure the imaginary part has a sign, and also deal with the case
-% where there is no mantissa to print (as it is $1$).
+% Ensure the imaginary part has a sign.
% \begin{macrocode}
\cs_new_protected:Npn \@@_format_sign:nnnnnnn #1#2#3#4#5#6#7
{
@@ -873,14 +882,7 @@
{ \tl_if_empty:NF \l_@@_real_tl { + } }
{ \exp_not:n {#2} }
}
- \tl_if_blank:nTF {#4}
- {
- \str_if_eq:nnTF {#3} { 1 }
- { { } { } }
- { \exp_not:n { {#3} {#4} } }
- }
- { \exp_not:n { {#3} {#4} } }
- \exp_not:n { {#5} {#6} {#7} }
+ \exp_not:n { {#3} {#4} {#5} {#6} {#7} }
}
}
% \end{macrocode}
@@ -893,9 +895,12 @@
\q_nil #9 \q_stop
{
\tl_set:Nn \l_@@_sign_tl {#1#2}
- \bool_lazy_and:nnTF
- { \str_if_eq_p:nn {#3} { 1 } }
- { \tl_if_blank_p:n {#5} }
+ \bool_lazy_all:nTF
+ {
+ { ! \l_@@_print_unity_bool }
+ { \str_if_eq_p:nn {#3} { 1 } }
+ { \tl_if_blank_p:n {#5} }
+ }
{ \@@_extract_exponent_aux:nw {#6#7#8} }
{ \@@_extract_exponent_aux:nw {#3#4#5#6#7#8} }
#9 \q_stop
@@ -1200,13 +1205,14 @@
% \begin{macrocode}
\keys_set:nn { siunitx }
{
- complex-angle-unit = degrees ,
- complex-mode = input ,
- complex-root-position = after-number ,
- complex-symbol-angle = \angle ,
- complex-symbol-degree = \degree ,
- input-complex-root = ij ,
- output-complex-root = \mathrm { i }
+ complex-angle-unit = degrees ,
+ complex-mode = input ,
+ complex-root-position = after-number ,
+ complex-symbol-angle = \angle ,
+ complex-symbol-degree = \degree ,
+ input-complex-root = ij ,
+ output-complex-root = \mathrm { i } ,
+ print-complex-unity = false
}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/siunitx/siunitx.dtx b/macros/latex/contrib/siunitx/siunitx.dtx
index 3e61bbb85c..b39fdd662e 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-10-04} {3.1.8}
+\ProvidesExplPackage {siunitx} {2022-10-23} {3.1.9}
{A comprehensive (SI) units package}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/siunitx/siunitx.pdf b/macros/latex/contrib/siunitx/siunitx.pdf
index 15032f9957..92efe61c67 100644
--- a/macros/latex/contrib/siunitx/siunitx.pdf
+++ b/macros/latex/contrib/siunitx/siunitx.pdf
Binary files differ
diff --git a/macros/latex/contrib/siunitx/siunitx.tex b/macros/latex/contrib/siunitx/siunitx.tex
index 05c3e70ffa..1c4b9ab910 100644
--- a/macros/latex/contrib/siunitx/siunitx.tex
+++ b/macros/latex/contrib/siunitx/siunitx.tex
@@ -2055,6 +2055,7 @@ numbers; these are summarised in Table~\ref{tab:opt:num:complex}.
complex-symbol-degree & Literal & \cs{degree} \\
input-complex-root & Literal & ij \\
output-complex-root & Literal & \verb=\mathrm{i}= \\
+ print-complex-unity & Switch & false \\
\bottomrule
\end{tabular}
\end{table}
@@ -2121,6 +2122,15 @@ are controlled by the options \opt{complex-symbol-angle} and
\complexqty[complex-symbol-degree = d]{1:1}{\ohm}
\end{LaTeXdemo}
+\DescribeOption{print-complex-unity}
+When the complex part of a number is exactly \num{1}, it is possible to either
+print or suppress the value. This is controlled by the switch
+\opt{print-complex-unity}.
+\begin{LaTeXdemo}
+ \complexqty{1i}{\ohm} \\
+ \complexqty[print-complex-unity]{1i}{\ohm}
+\end{LaTeXdemo}
+
\subsection{Angles}
Angle processing provided by the \cs{ang} function has a set of options which
diff --git a/macros/latex/contrib/srdp-mathematik/README.md b/macros/latex/contrib/srdp-mathematik/README.md
index d9add6410e..7039bb45d1 100644
--- a/macros/latex/contrib/srdp-mathematik/README.md
+++ b/macros/latex/contrib/srdp-mathematik/README.md
@@ -1,4 +1,4 @@
-# srdp-mathematik.sty v1.10.2
+# srdp-mathematik.sty v1.10.3
This package provides basic commands for the defined formats of the Austrian sRDP in mathematics.
Furthermore, it includes ways to implement answers in the tex file, which can be voluntarily displayed in the pdf file and
diff --git a/macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdf b/macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdf
index 3fa05e4243..8f0b92a267 100644
--- a/macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdf
+++ b/macros/latex/contrib/srdp-mathematik/srdp-mathematik.pdf
Binary files differ
diff --git a/macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty b/macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty
index d0bbee7b01..db631f2e19 100644
--- a/macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty
+++ b/macros/latex/contrib/srdp-mathematik/srdp-mathematik.sty
@@ -10,7 +10,7 @@
%
\NeedsTeXFormat{LaTeX2e}[1996/12/26]
-\ProvidesPackage{srdp-mathematik}[2022/10/02 v1.10.2 Standard-Schularbeitsformate]
+\ProvidesPackage{srdp-mathematik}[2022/10/23 v1.10.3 Standard-Schularbeitsformate]
\usepackage{color}
@@ -934,41 +934,277 @@ Complete the following sentence by putting a cross next to one of the given poss
\ifthenelse{\numexpr#1 > 7}{\pgfmathrandomitem\z{group}\setcounter{antworth}{\z}\prunelist{group}}{}
\ifthenelse{\numexpr#1 > 8}{\pgfmathrandomitem\z{group}\setcounter{antworti}{\z}\prunelist{group}}{}
-%\begin{minipage}{0.85\linewidth}
+
\begin{tabu}{|A|c|c|}%
\hline%
\small \textsc{#2} & \small\textsc{Richtig} & \small \textsc{Falsch} \\ \hline
\forloop{ct}{1}{\value{ct}<\numexpr#1}%
-{\ifthenelse{\value{ct}=\theantworta}{\jeroen@get{L1}}{\ifthenelse{\value{ct}=\theantwortb}{\jeroen@get{L2}}{\ifthenelse{\value{ct}=\theantwortc}{\jeroen@get{L3}}{\ifthenelse{\value{ct}=\theantwortd}{\jeroen@get{L4}}{\ifthenelse{\value{ct}=\theantworte}{\jeroen@get{L5}}{\ifthenelse{\value{ct}=\theantwortf}{\jeroen@get{L6}}{\ifthenelse{\value{ct}=\theantwortg}{\jeroen@get{L7}}{\ifthenelse{\value{ct}=\theantworth}{\jeroen@get{L8}}{{\jeroen@get{L9}}}}}}}}}}&%
-%
+{\ifthenelse{\value{ct}=\theantworta}{\jeroen@get{L1}}{%
+\ifthenelse{\value{ct}=\theantwortb}{\jeroen@get{L2}}{%
+\ifthenelse{\value{ct}=\theantwortc}{\jeroen@get{L3}}{%
+\ifthenelse{\value{ct}=\theantwortd}{\jeroen@get{L4}}{%
+\ifthenelse{\value{ct}=\theantworte}{\jeroen@get{L5}}{%
+\ifthenelse{\value{ct}=\theantwortf}{\jeroen@get{L6}}{%
+\ifthenelse{\value{ct}=\theantwortg}{\jeroen@get{L7}}{%
+\ifthenelse{\value{ct}=\theantworth}{\jeroen@get{L8}}{{%
+\jeroen@get{L9}}}}}}}}}}&%
+%%%
%%% Spalte 'Richtig' %%%%
-%
-\ifnum\theAntworten=1%
-\ifthenelse{\jeroen@get{A1}=1 \OR \jeroen@get{A2}=1 \OR \jeroen@get{A3}=1\OR \jeroen@get{A4}=1 \OR \jeroen@get{A5}=1 \OR \jeroen@get{A6}=1 \OR \jeroen@get{A7}=1 \OR \jeroen@get{A8}=1 \OR \jeroen@get{A9}=1 \AND \value{ct}=\theantworta}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}\ifthenelse{\jeroen@get{A1}=2 \OR \jeroen@get{A2}=2 \OR \jeroen@get{A3}=2\OR \jeroen@get{A4}=2\OR \jeroen@get{A5}=2\OR \jeroen@get{A6}=2 \OR \jeroen@get{A7}=2 \OR \jeroen@get{A8}=2 \OR \jeroen@get{A9}=2 \AND \value{ct}=\theantwortb}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=3 \OR \jeroen@get{A2}=3 \OR \jeroen@get{A3}=3\OR \jeroen@get{A4}=3\OR \jeroen@get{A5}=3 \OR \jeroen@get{A6}=3 \OR \jeroen@get{A7}=3 \OR \jeroen@get{A8}=3 \OR \jeroen@get{A9}=3 \AND \value{ct}=\theantwortc}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}\ifthenelse{\jeroen@get{A1}=4 \OR \jeroen@get{A2}=4 \OR \jeroen@get{A3}=4\OR \jeroen@get{A4}=4\OR \jeroen@get{A5}=4\OR \jeroen@get{A6}=4 \OR \jeroen@get{A7}=4 \OR \jeroen@get{A8}=4 \OR \jeroen@get{A9}=4 \AND \value{ct}=\theantwortd}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=5 \OR \jeroen@get{A2}=5 \OR \jeroen@get{A3}=5\OR \jeroen@get{A4}=5\OR \jeroen@get{A5}=5\OR \jeroen@get{A6}=5 \OR \jeroen@get{A7}=5 \OR \jeroen@get{A8}=5 \OR \jeroen@get{A9}=5 \AND \value{ct}=\theantworte}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}\ifthenelse{\jeroen@get{A1}=6 \OR \jeroen@get{A2}=6 \OR \jeroen@get{A3}=6\OR \jeroen@get{A4}=6\OR \jeroen@get{A5}=6\OR \jeroen@get{A6}=6 \OR \jeroen@get{A7}=6 \OR \jeroen@get{A8}=6 \OR \jeroen@get{A9}=6 \AND \value{ct}=\theantwortf}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=7 \OR \jeroen@get{A2}=7 \OR \jeroen@get{A3}=7\OR \jeroen@get{A4}=7\OR \jeroen@get{A5}=7\OR \jeroen@get{A6}=7 \OR \jeroen@get{A7}=7 \OR \jeroen@get{A8}=7 \OR \jeroen@get{A9}=7 \AND \value{ct}=\theantwortg}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=8 \OR \jeroen@get{A2}=8 \OR \jeroen@get{A3}=8\OR \jeroen@get{A4}=8\OR \jeroen@get{A5}=8\OR \jeroen@get{A6}=8 \OR \jeroen@get{A7}=8 \OR \jeroen@get{A8}=8 \OR \jeroen@get{A9}=8 \AND \value{ct}=\theantworth}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=9 \OR \jeroen@get{A2}=9 \OR \jeroen@get{A3}=9\OR \jeroen@get{A4}=9\OR \jeroen@get{A5}=9\OR \jeroen@get{A6}=9 \OR \jeroen@get{A7}=9 \OR \jeroen@get{A8}=9 \OR \jeroen@get{A9}=9 \AND \value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
-\else%
-\Square\fi&%
-%
+%%%
+\ifthenelse{\theAntworten=1}{%
+\ifthenelse{%
+\jeroen@get{A1}=1\OR%
+\jeroen@get{A2}=1\OR%
+\jeroen@get{A3}=1\OR%
+\jeroen@get{A4}=1\OR%
+\jeroen@get{A5}=1\OR%
+\jeroen@get{A6}=1\OR%
+\jeroen@get{A7}=1\OR%
+\jeroen@get{A8}=1\OR%
+\jeroen@get{A9}=1\AND%
+\value{ct}=\theantworta}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=2\OR%
+\jeroen@get{A2}=2\OR%
+\jeroen@get{A3}=2\OR%
+\jeroen@get{A4}=2\OR%
+\jeroen@get{A5}=2\OR%
+\jeroen@get{A6}=2\OR%
+\jeroen@get{A7}=2\OR%
+\jeroen@get{A8}=2\OR%
+\jeroen@get{A9}=2\AND%
+\value{ct}=\theantwortb}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=3\OR%
+\jeroen@get{A2}=3\OR%
+\jeroen@get{A3}=3\OR%
+\jeroen@get{A4}=3\OR%
+\jeroen@get{A5}=3\OR%
+\jeroen@get{A6}=3\OR%
+\jeroen@get{A7}=3\OR%
+\jeroen@get{A8}=3\OR%
+\jeroen@get{A9}=3\AND%
+\value{ct}=\theantwortc}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=4\OR%
+\jeroen@get{A2}=4\OR%
+\jeroen@get{A3}=4\OR%
+\jeroen@get{A4}=4\OR%
+\jeroen@get{A5}=4\OR%
+\jeroen@get{A6}=4\OR%
+\jeroen@get{A7}=4\OR%
+\jeroen@get{A8}=4\OR%
+\jeroen@get{A9}=4\AND%
+\value{ct}=\theantwortd}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=5\OR%
+\jeroen@get{A2}=5\OR%
+\jeroen@get{A3}=5\OR%
+\jeroen@get{A4}=5\OR%
+\jeroen@get{A5}=5\OR%
+\jeroen@get{A6}=5\OR%
+\jeroen@get{A7}=5\OR%
+\jeroen@get{A8}=5\OR%
+\jeroen@get{A9}=5\AND%
+\value{ct}=\theantworte}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=6\OR%
+\jeroen@get{A2}=6\OR%
+\jeroen@get{A3}=6\OR%
+\jeroen@get{A4}=6\OR%
+\jeroen@get{A5}=6\OR%
+\jeroen@get{A6}=6\OR%
+\jeroen@get{A7}=6\OR%
+\jeroen@get{A8}=6\OR%
+\jeroen@get{A9}=6\AND%
+\value{ct}=\theantwortf}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=7\OR%
+\jeroen@get{A2}=7\OR%
+\jeroen@get{A3}=7\OR%
+\jeroen@get{A4}=7\OR%
+\jeroen@get{A5}=7\OR%
+\jeroen@get{A6}=7\OR%
+\jeroen@get{A7}=7\OR%
+\jeroen@get{A8}=7\OR%
+\jeroen@get{A9}=7\AND%
+\value{ct}=\theantwortg}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=8\OR%
+\jeroen@get{A2}=8\OR%
+\jeroen@get{A3}=8\OR%
+\jeroen@get{A4}=8\OR%
+\jeroen@get{A5}=8\OR%
+\jeroen@get{A6}=8\OR%
+\jeroen@get{A7}=8\OR%
+\jeroen@get{A8}=8\OR%
+\jeroen@get{A9}=8\AND%
+\value{ct}=\theantworth}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=9\OR%
+\jeroen@get{A2}=9\OR%
+\jeroen@get{A3}=9\OR%
+\jeroen@get{A4}=9\OR%
+\jeroen@get{A5}=9\OR%
+\jeroen@get{A6}=9\OR%
+\jeroen@get{A7}=9\OR%
+\jeroen@get{A8}=9\OR%
+\jeroen@get{A9}=9\AND%
+\value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
+}{\Square}&%
+%%%%
%%%% Spalte 'falsch'
-%
-\ifnum\theAntworten=1%
-\ifthenelse{\value{acheck}=0 \AND \value{ct}=\theantworta}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{bcheck}=0 \AND \value{ct}=\theantwortb}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{ccheck}=0 \AND \value{ct}=\theantwortc}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{dcheck}=0 \AND \value{ct}=\theantwortd}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{echeck}=0 \AND \value{ct}=\theantworte}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{fcheck}=0 \AND \value{ct}=\theantwortf}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{gcheck}=0 \AND \value{ct}=\theantwortg}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{hcheck}=0 \AND \value{ct}=\theantworth}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{icheck}=0 \AND \value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
-\else%
-\Square\fi\\ \hline}%
-%
+%%%%
+\ifthenelse{\theAntworten=1}{%
+\ifthenelse{\value{acheck}=0\AND%
+\value{ct}=\theantworta}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{bcheck}=0 \AND \value{ct}=\theantwortb}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{ccheck}=0 \AND \value{ct}=\theantwortc}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{dcheck}=0 \AND \value{ct}=\theantwortd}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{echeck}=0 \AND \value{ct}=\theantworte}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{fcheck}=0 \AND \value{ct}=\theantwortf}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{gcheck}=0 \AND \value{ct}=\theantwortg}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{hcheck}=0 \AND \value{ct}=\theantworth}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{icheck}=0 \AND \value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+}{\Square}\\ \hline}%
+
+%%%%
%%%%% Spalte 'richtig' (letzte Zeile)
-\ifthenelse{\theantworta=#1}{\jeroen@get{L1}}{\ifthenelse{\theantwortb=#1}{\jeroen@get{L2}}{\ifthenelse{\theantwortc=#1}{\jeroen@get{L3}}{\ifthenelse{\theantwortd=#1}{\jeroen@get{L4}}{\ifthenelse{\theantworte=#1}{\jeroen@get{L5}}{\ifthenelse{\theantwortf=#1}{\jeroen@get{L6}}{\ifthenelse{\theantwortg=#1}{\jeroen@get{L7}}{\ifthenelse{\theantworth=#1}{\jeroen@get{L8}}{{\jeroen@get{L9}}}}}}}}}} &%
-%
-%
-%
-\ifnum\theAntworten=1%
-\ifthenelse{\jeroen@get{A1}=1 \OR \jeroen@get{A2}=1 \OR \jeroen@get{A3}=1\OR \jeroen@get{A4}=1\OR \jeroen@get{A5}=1\OR \jeroen@get{A6}=1 \OR \jeroen@get{A7}=1 \OR \jeroen@get{A8}=1 \OR \jeroen@get{A9}=1 \AND \theantworta=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}\ifthenelse{\jeroen@get{A1}=2 \OR \jeroen@get{A2}=2 \OR \jeroen@get{A3}=2\OR \jeroen@get{A4}=2\OR \jeroen@get{A5}=2\OR \jeroen@get{A6}=2 \OR \jeroen@get{A7}=2 \OR \jeroen@get{A8}=2 \OR \jeroen@get{A9}=2 \AND \theantwortb=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=3 \OR \jeroen@get{A2}=3 \OR \jeroen@get{A3}=3\OR \jeroen@get{A4}=3\OR \jeroen@get{A5}=3\OR \jeroen@get{A6}=3 \OR \jeroen@get{A7}=3 \OR \jeroen@get{A8}=3 \OR \jeroen@get{A9}=3 \AND \theantwortc=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}\ifthenelse{\jeroen@get{A1}=4 \OR \jeroen@get{A2}=4 \OR \jeroen@get{A3}=4\OR \jeroen@get{A4}=4\OR \jeroen@get{A5}=4\OR \jeroen@get{A6}=4 \OR \jeroen@get{A7}=4 \OR \jeroen@get{A8}=4 \OR \jeroen@get{A9}=4 \AND \theantwortd=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=5 \OR \jeroen@get{A2}=5 \OR \jeroen@get{A3}=5\OR \jeroen@get{A4}=5\OR \jeroen@get{A5}=5\OR \jeroen@get{A6}=5 \OR \jeroen@get{A7}=5 \OR \jeroen@get{A8}=5 \OR \jeroen@get{A9}=5 \AND \theantworte=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}\ifthenelse{\jeroen@get{A1}=6 \OR \jeroen@get{A2}=6 \OR \jeroen@get{A3}=6\OR \jeroen@get{A4}=6\OR \jeroen@get{A5}=6\OR \jeroen@get{A6}=6 \OR \jeroen@get{A7}=6 \OR \jeroen@get{A8}=6 \OR \jeroen@get{A9}=6 \AND \theantwortf=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=7 \OR \jeroen@get{A2}=7 \OR \jeroen@get{A3}=7\OR \jeroen@get{A4}=7\OR \jeroen@get{A5}=7\OR \jeroen@get{A6}=7 \OR \jeroen@get{A7}=7 \OR \jeroen@get{A8}=7 \OR \jeroen@get{A9}=7 \AND \theantwortg=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=8 \OR \jeroen@get{A2}=8 \OR \jeroen@get{A3}=8\OR \jeroen@get{A4}=8\OR \jeroen@get{A5}=8\OR \jeroen@get{A6}=8 \OR \jeroen@get{A7}=8 \OR \jeroen@get{A8}=8 \OR \jeroen@get{A9}=8 \AND \theantworth=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=9 \OR \jeroen@get{A2}=9 \OR \jeroen@get{A3}=9\OR \jeroen@get{A4}=9\OR \jeroen@get{A5}=9\OR \jeroen@get{A6}=9 \OR \jeroen@get{A7}=9 \OR \jeroen@get{A8}=9 \OR \jeroen@get{A9}=9 \AND \theantworti=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
-\else%
-\Square\fi%
-&%
-%
+%%%%
+\ifthenelse{\theantworta=#1}{\jeroen@get{L1}}{%
+\ifthenelse{\theantwortb=#1}{\jeroen@get{L2}}{%
+\ifthenelse{\theantwortc=#1}{\jeroen@get{L3}}{%
+\ifthenelse{\theantwortd=#1}{\jeroen@get{L4}}{%
+\ifthenelse{\theantworte=#1}{\jeroen@get{L5}}{%
+\ifthenelse{\theantwortf=#1}{\jeroen@get{L6}}{%
+\ifthenelse{\theantwortg=#1}{\jeroen@get{L7}}{%
+\ifthenelse{\theantworth=#1}{\jeroen@get{L8}}{{%
+\jeroen@get{L9}}}}}}}}}}&%
+%%
+%%
+%%
+\ifthenelse{\theAntworten=1}{%
+\ifthenelse{%
+\jeroen@get{A1}=1\OR%
+\jeroen@get{A2}=1\OR%
+\jeroen@get{A3}=1\OR%
+\jeroen@get{A4}=1\OR%
+\jeroen@get{A5}=1\OR%
+\jeroen@get{A6}=1\OR%
+\jeroen@get{A7}=1\OR%
+\jeroen@get{A8}=1\OR%
+\jeroen@get{A9}=1\AND%
+\theantworta=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=2\OR%
+\jeroen@get{A2}=2\OR%
+\jeroen@get{A3}=2\OR%
+\jeroen@get{A4}=2\OR%
+\jeroen@get{A5}=2\OR%
+\jeroen@get{A6}=2\OR%
+\jeroen@get{A7}=2\OR%
+\jeroen@get{A8}=2\OR%
+\jeroen@get{A9}=2\AND%
+\theantwortb=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=3\OR%
+\jeroen@get{A2}=3\OR%
+\jeroen@get{A3}=3\OR%
+\jeroen@get{A4}=3\OR%
+\jeroen@get{A5}=3\OR%
+\jeroen@get{A6}=3\OR%
+\jeroen@get{A7}=3\OR%
+\jeroen@get{A8}=3\OR%
+\jeroen@get{A9}=3\AND%
+\theantwortc=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=4\OR%
+\jeroen@get{A2}=4\OR%
+\jeroen@get{A3}=4\OR%
+\jeroen@get{A4}=4\OR%
+\jeroen@get{A5}=4\OR%
+\jeroen@get{A6}=4\OR%
+\jeroen@get{A7}=4\OR%
+\jeroen@get{A8}=4\OR%
+\jeroen@get{A9}=4\AND%
+\theantwortd=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=5\OR%
+\jeroen@get{A2}=5\OR%
+\jeroen@get{A3}=5\OR%
+\jeroen@get{A4}=5\OR%
+\jeroen@get{A5}=5\OR%
+\jeroen@get{A6}=5\OR%
+\jeroen@get{A7}=5\OR%
+\jeroen@get{A8}=5\OR%
+\jeroen@get{A9}=5\AND%
+\theantworte=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=6\OR%
+\jeroen@get{A2}=6\OR%
+\jeroen@get{A3}=6\OR%
+\jeroen@get{A4}=6\OR%
+\jeroen@get{A5}=6\OR%
+\jeroen@get{A6}=6\OR%
+\jeroen@get{A7}=6\OR%
+\jeroen@get{A8}=6\OR%
+\jeroen@get{A9}=6\AND%
+\theantwortf=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=7\OR%
+\jeroen@get{A2}=7\OR%
+\jeroen@get{A3}=7\OR%
+\jeroen@get{A4}=7\OR%
+\jeroen@get{A5}=7\OR%
+\jeroen@get{A6}=7\OR%
+\jeroen@get{A7}=7\OR%
+\jeroen@get{A8}=7\OR%
+\jeroen@get{A9}=7\AND%
+\theantwortg=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=8\OR%
+\jeroen@get{A2}=8\OR%
+\jeroen@get{A3}=8\OR%
+\jeroen@get{A4}=8\OR%
+\jeroen@get{A5}=8\OR%
+\jeroen@get{A6}=8\OR%
+\jeroen@get{A7}=8\OR%
+\jeroen@get{A8}=8\OR%
+\jeroen@get{A9}=8\AND%
+\theantworth=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=9\OR%
+\jeroen@get{A2}=9\OR%
+\jeroen@get{A3}=9\OR%
+\jeroen@get{A4}=9\OR%
+\jeroen@get{A5}=9\OR%
+\jeroen@get{A6}=9\OR%
+\jeroen@get{A7}=9\OR%
+\jeroen@get{A8}=9\OR%
+\jeroen@get{A9}=9\AND%
+\theantworti=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
+}{\Square}&%
+%%%
%%%% Spalte 'falsch' (letzte Zeile)
-%
-\ifnum\theAntworten=1%
+%%%
+\ifthenelse{\theAntworten=1}{%
\ifthenelse{\theantworta=#1 \AND \value{acheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
\ifthenelse{\theantwortb=#1 \AND \value{bcheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
\ifthenelse{\theantwortc=#1 \AND \value{ccheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
@@ -979,8 +1215,7 @@ Complete the following sentence by putting a cross next to one of the given poss
\ifthenelse{\theantworth=#1 \AND \value{hcheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
\ifthenelse{\theantworti=#1 \AND \value{icheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
}}}}}}}}}%
-\else%
-\Square\fi\\ \hline
+}{\Square}\\ \hline
\end{tabu}\leer
\egroup}
@@ -1010,41 +1245,277 @@ Complete the following sentence by putting a cross next to one of the given poss
\ifthenelse{\numexpr#1 > 7}{\pgfmathrandomitem\z{group}\setcounter{antworth}{\z}\prunelist{group}}{}
\ifthenelse{\numexpr#1 > 8}{\pgfmathrandomitem\z{group}\setcounter{antworti}{\z}\prunelist{group}}{}
-%\begin{minipage}{0.85\linewidth}
+
\begin{tabu}{|A|c|c|}%
\hline%
\small \textsc{#2} & \small\textsc{True} & \small \textsc{False} \\ \hline
\forloop{ct}{1}{\value{ct}<\numexpr#1}%
-{\ifthenelse{\value{ct}=\theantworta}{\jeroen@get{L1}}{\ifthenelse{\value{ct}=\theantwortb}{\jeroen@get{L2}}{\ifthenelse{\value{ct}=\theantwortc}{\jeroen@get{L3}}{\ifthenelse{\value{ct}=\theantwortd}{\jeroen@get{L4}}{\ifthenelse{\value{ct}=\theantworte}{\jeroen@get{L5}}{\ifthenelse{\value{ct}=\theantwortf}{\jeroen@get{L6}}{\ifthenelse{\value{ct}=\theantwortg}{\jeroen@get{L7}}{\ifthenelse{\value{ct}=\theantworth}{\jeroen@get{L8}}{{\jeroen@get{L9}}}}}}}}}}&%
-%
+{\ifthenelse{\value{ct}=\theantworta}{\jeroen@get{L1}}{%
+\ifthenelse{\value{ct}=\theantwortb}{\jeroen@get{L2}}{%
+\ifthenelse{\value{ct}=\theantwortc}{\jeroen@get{L3}}{%
+\ifthenelse{\value{ct}=\theantwortd}{\jeroen@get{L4}}{%
+\ifthenelse{\value{ct}=\theantworte}{\jeroen@get{L5}}{%
+\ifthenelse{\value{ct}=\theantwortf}{\jeroen@get{L6}}{%
+\ifthenelse{\value{ct}=\theantwortg}{\jeroen@get{L7}}{%
+\ifthenelse{\value{ct}=\theantworth}{\jeroen@get{L8}}{{%
+\jeroen@get{L9}}}}}}}}}}&%
+%%%
%%% Spalte 'Richtig' %%%%
-%
-\ifnum\theAntworten=1%
-\ifthenelse{\jeroen@get{A1}=1 \OR \jeroen@get{A2}=1 \OR \jeroen@get{A3}=1\OR \jeroen@get{A4}=1 \OR \jeroen@get{A5}=1 \OR \jeroen@get{A6}=1 \OR \jeroen@get{A7}=1 \OR \jeroen@get{A8}=1 \OR \jeroen@get{A9}=1 \AND \value{ct}=\theantworta}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}\ifthenelse{\jeroen@get{A1}=2 \OR \jeroen@get{A2}=2 \OR \jeroen@get{A3}=2\OR \jeroen@get{A4}=2\OR \jeroen@get{A5}=2\OR \jeroen@get{A6}=2 \OR \jeroen@get{A7}=2 \OR \jeroen@get{A8}=2 \OR \jeroen@get{A9}=2 \AND \value{ct}=\theantwortb}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=3 \OR \jeroen@get{A2}=3 \OR \jeroen@get{A3}=3\OR \jeroen@get{A4}=3\OR \jeroen@get{A5}=3 \OR \jeroen@get{A6}=3 \OR \jeroen@get{A7}=3 \OR \jeroen@get{A8}=3 \OR \jeroen@get{A9}=3 \AND \value{ct}=\theantwortc}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}\ifthenelse{\jeroen@get{A1}=4 \OR \jeroen@get{A2}=4 \OR \jeroen@get{A3}=4\OR \jeroen@get{A4}=4\OR \jeroen@get{A5}=4\OR \jeroen@get{A6}=4 \OR \jeroen@get{A7}=4 \OR \jeroen@get{A8}=4 \OR \jeroen@get{A9}=4 \AND \value{ct}=\theantwortd}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=5 \OR \jeroen@get{A2}=5 \OR \jeroen@get{A3}=5\OR \jeroen@get{A4}=5\OR \jeroen@get{A5}=5\OR \jeroen@get{A6}=5 \OR \jeroen@get{A7}=5 \OR \jeroen@get{A8}=5 \OR \jeroen@get{A9}=5 \AND \value{ct}=\theantworte}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}\ifthenelse{\jeroen@get{A1}=6 \OR \jeroen@get{A2}=6 \OR \jeroen@get{A3}=6\OR \jeroen@get{A4}=6\OR \jeroen@get{A5}=6\OR \jeroen@get{A6}=6 \OR \jeroen@get{A7}=6 \OR \jeroen@get{A8}=6 \OR \jeroen@get{A9}=6 \AND \value{ct}=\theantwortf}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=7 \OR \jeroen@get{A2}=7 \OR \jeroen@get{A3}=7\OR \jeroen@get{A4}=7\OR \jeroen@get{A5}=7\OR \jeroen@get{A6}=7 \OR \jeroen@get{A7}=7 \OR \jeroen@get{A8}=7 \OR \jeroen@get{A9}=7 \AND \value{ct}=\theantwortg}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=8 \OR \jeroen@get{A2}=8 \OR \jeroen@get{A3}=8\OR \jeroen@get{A4}=8\OR \jeroen@get{A5}=8\OR \jeroen@get{A6}=8 \OR \jeroen@get{A7}=8 \OR \jeroen@get{A8}=8 \OR \jeroen@get{A9}=8 \AND \value{ct}=\theantworth}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=9 \OR \jeroen@get{A2}=9 \OR \jeroen@get{A3}=9\OR \jeroen@get{A4}=9\OR \jeroen@get{A5}=9\OR \jeroen@get{A6}=9 \OR \jeroen@get{A7}=9 \OR \jeroen@get{A8}=9 \OR \jeroen@get{A9}=9 \AND \value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
-\else%
-\Square\fi&%
-%
+%%%
+\ifthenelse{\theAntworten=1}{%
+\ifthenelse{%
+\jeroen@get{A1}=1\OR%
+\jeroen@get{A2}=1\OR%
+\jeroen@get{A3}=1\OR%
+\jeroen@get{A4}=1\OR%
+\jeroen@get{A5}=1\OR%
+\jeroen@get{A6}=1\OR%
+\jeroen@get{A7}=1\OR%
+\jeroen@get{A8}=1\OR%
+\jeroen@get{A9}=1\AND%
+\value{ct}=\theantworta}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=2\OR%
+\jeroen@get{A2}=2\OR%
+\jeroen@get{A3}=2\OR%
+\jeroen@get{A4}=2\OR%
+\jeroen@get{A5}=2\OR%
+\jeroen@get{A6}=2\OR%
+\jeroen@get{A7}=2\OR%
+\jeroen@get{A8}=2\OR%
+\jeroen@get{A9}=2\AND%
+\value{ct}=\theantwortb}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=3\OR%
+\jeroen@get{A2}=3\OR%
+\jeroen@get{A3}=3\OR%
+\jeroen@get{A4}=3\OR%
+\jeroen@get{A5}=3\OR%
+\jeroen@get{A6}=3\OR%
+\jeroen@get{A7}=3\OR%
+\jeroen@get{A8}=3\OR%
+\jeroen@get{A9}=3\AND%
+\value{ct}=\theantwortc}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=4\OR%
+\jeroen@get{A2}=4\OR%
+\jeroen@get{A3}=4\OR%
+\jeroen@get{A4}=4\OR%
+\jeroen@get{A5}=4\OR%
+\jeroen@get{A6}=4\OR%
+\jeroen@get{A7}=4\OR%
+\jeroen@get{A8}=4\OR%
+\jeroen@get{A9}=4\AND%
+\value{ct}=\theantwortd}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=5\OR%
+\jeroen@get{A2}=5\OR%
+\jeroen@get{A3}=5\OR%
+\jeroen@get{A4}=5\OR%
+\jeroen@get{A5}=5\OR%
+\jeroen@get{A6}=5\OR%
+\jeroen@get{A7}=5\OR%
+\jeroen@get{A8}=5\OR%
+\jeroen@get{A9}=5\AND%
+\value{ct}=\theantworte}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=6\OR%
+\jeroen@get{A2}=6\OR%
+\jeroen@get{A3}=6\OR%
+\jeroen@get{A4}=6\OR%
+\jeroen@get{A5}=6\OR%
+\jeroen@get{A6}=6\OR%
+\jeroen@get{A7}=6\OR%
+\jeroen@get{A8}=6\OR%
+\jeroen@get{A9}=6\AND%
+\value{ct}=\theantwortf}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=7\OR%
+\jeroen@get{A2}=7\OR%
+\jeroen@get{A3}=7\OR%
+\jeroen@get{A4}=7\OR%
+\jeroen@get{A5}=7\OR%
+\jeroen@get{A6}=7\OR%
+\jeroen@get{A7}=7\OR%
+\jeroen@get{A8}=7\OR%
+\jeroen@get{A9}=7\AND%
+\value{ct}=\theantwortg}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=8\OR%
+\jeroen@get{A2}=8\OR%
+\jeroen@get{A3}=8\OR%
+\jeroen@get{A4}=8\OR%
+\jeroen@get{A5}=8\OR%
+\jeroen@get{A6}=8\OR%
+\jeroen@get{A7}=8\OR%
+\jeroen@get{A8}=8\OR%
+\jeroen@get{A9}=8\AND%
+\value{ct}=\theantworth}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}\ifthenelse{%
+\jeroen@get{A1}=9\OR%
+\jeroen@get{A2}=9\OR%
+\jeroen@get{A3}=9\OR%
+\jeroen@get{A4}=9\OR%
+\jeroen@get{A5}=9\OR%
+\jeroen@get{A6}=9\OR%
+\jeroen@get{A7}=9\OR%
+\jeroen@get{A8}=9\OR%
+\jeroen@get{A9}=9\AND%
+\value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
+}{\Square}&%
+%%%%
%%%% Spalte 'falsch'
-%
-\ifnum\theAntworten=1%
-\ifthenelse{\value{acheck}=0 \AND \value{ct}=\theantworta}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{bcheck}=0 \AND \value{ct}=\theantwortb}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{ccheck}=0 \AND \value{ct}=\theantwortc}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{dcheck}=0 \AND \value{ct}=\theantwortd}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{echeck}=0 \AND \value{ct}=\theantworte}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{fcheck}=0 \AND \value{ct}=\theantwortf}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{gcheck}=0 \AND \value{ct}=\theantwortg}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{hcheck}=0 \AND \value{ct}=\theantworth}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}\ifthenelse{\value{icheck}=0 \AND \value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
-\else%
-\Square\fi\\ \hline}%
-%
+%%%%
+\ifthenelse{\theAntworten=1}{%
+\ifthenelse{\value{acheck}=0\AND%
+\value{ct}=\theantworta}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{bcheck}=0 \AND \value{ct}=\theantwortb}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{ccheck}=0 \AND \value{ct}=\theantwortc}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{dcheck}=0 \AND \value{ct}=\theantwortd}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{echeck}=0 \AND \value{ct}=\theantworte}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{fcheck}=0 \AND \value{ct}=\theantwortf}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{gcheck}=0 \AND \value{ct}=\theantwortg}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{hcheck}=0 \AND \value{ct}=\theantworth}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+\ifthenelse{%
+\value{icheck}=0 \AND \value{ct}=\theantworti}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{}%
+}{\Square}\\ \hline}%
+
+%%%%
%%%%% Spalte 'richtig' (letzte Zeile)
-\ifthenelse{\theantworta=#1}{\jeroen@get{L1}}{\ifthenelse{\theantwortb=#1}{\jeroen@get{L2}}{\ifthenelse{\theantwortc=#1}{\jeroen@get{L3}}{\ifthenelse{\theantwortd=#1}{\jeroen@get{L4}}{\ifthenelse{\theantworte=#1}{\jeroen@get{L5}}{\ifthenelse{\theantwortf=#1}{\jeroen@get{L6}}{\ifthenelse{\theantwortg=#1}{\jeroen@get{L7}}{\ifthenelse{\theantworth=#1}{\jeroen@get{L8}}{{\jeroen@get{L9}}}}}}}}}} &%
-%
-%
-%
-\ifnum\theAntworten=1%
-\ifthenelse{\jeroen@get{A1}=1 \OR \jeroen@get{A2}=1 \OR \jeroen@get{A3}=1\OR \jeroen@get{A4}=1\OR \jeroen@get{A5}=1\OR \jeroen@get{A6}=1 \OR \jeroen@get{A7}=1 \OR \jeroen@get{A8}=1 \OR \jeroen@get{A9}=1 \AND \theantworta=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}\ifthenelse{\jeroen@get{A1}=2 \OR \jeroen@get{A2}=2 \OR \jeroen@get{A3}=2\OR \jeroen@get{A4}=2\OR \jeroen@get{A5}=2\OR \jeroen@get{A6}=2 \OR \jeroen@get{A7}=2 \OR \jeroen@get{A8}=2 \OR \jeroen@get{A9}=2 \AND \theantwortb=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=3 \OR \jeroen@get{A2}=3 \OR \jeroen@get{A3}=3\OR \jeroen@get{A4}=3\OR \jeroen@get{A5}=3\OR \jeroen@get{A6}=3 \OR \jeroen@get{A7}=3 \OR \jeroen@get{A8}=3 \OR \jeroen@get{A9}=3 \AND \theantwortc=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}\ifthenelse{\jeroen@get{A1}=4 \OR \jeroen@get{A2}=4 \OR \jeroen@get{A3}=4\OR \jeroen@get{A4}=4\OR \jeroen@get{A5}=4\OR \jeroen@get{A6}=4 \OR \jeroen@get{A7}=4 \OR \jeroen@get{A8}=4 \OR \jeroen@get{A9}=4 \AND \theantwortd=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=5 \OR \jeroen@get{A2}=5 \OR \jeroen@get{A3}=5\OR \jeroen@get{A4}=5\OR \jeroen@get{A5}=5\OR \jeroen@get{A6}=5 \OR \jeroen@get{A7}=5 \OR \jeroen@get{A8}=5 \OR \jeroen@get{A9}=5 \AND \theantworte=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}\ifthenelse{\jeroen@get{A1}=6 \OR \jeroen@get{A2}=6 \OR \jeroen@get{A3}=6\OR \jeroen@get{A4}=6\OR \jeroen@get{A5}=6\OR \jeroen@get{A6}=6 \OR \jeroen@get{A7}=6 \OR \jeroen@get{A8}=6 \OR \jeroen@get{A9}=6 \AND \theantwortf=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=7 \OR \jeroen@get{A2}=7 \OR \jeroen@get{A3}=7\OR \jeroen@get{A4}=7\OR \jeroen@get{A5}=7\OR \jeroen@get{A6}=7 \OR \jeroen@get{A7}=7 \OR \jeroen@get{A8}=7 \OR \jeroen@get{A9}=7 \AND \theantwortg=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=8 \OR \jeroen@get{A2}=8 \OR \jeroen@get{A3}=8\OR \jeroen@get{A4}=8\OR \jeroen@get{A5}=8\OR \jeroen@get{A6}=8 \OR \jeroen@get{A7}=8 \OR \jeroen@get{A8}=8 \OR \jeroen@get{A9}=8 \AND \theantworth=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}\ifthenelse{\jeroen@get{A1}=9 \OR \jeroen@get{A2}=9 \OR \jeroen@get{A3}=9\OR \jeroen@get{A4}=9\OR \jeroen@get{A5}=9\OR \jeroen@get{A6}=9 \OR \jeroen@get{A7}=9 \OR \jeroen@get{A8}=9 \OR \jeroen@get{A9}=9 \AND \theantworti=#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
-\else%
-\Square\fi%
-&%
-%
+%%%%
+\ifthenelse{\theantworta=#1}{\jeroen@get{L1}}{%
+\ifthenelse{\theantwortb=#1}{\jeroen@get{L2}}{%
+\ifthenelse{\theantwortc=#1}{\jeroen@get{L3}}{%
+\ifthenelse{\theantwortd=#1}{\jeroen@get{L4}}{%
+\ifthenelse{\theantworte=#1}{\jeroen@get{L5}}{%
+\ifthenelse{\theantwortf=#1}{\jeroen@get{L6}}{%
+\ifthenelse{\theantwortg=#1}{\jeroen@get{L7}}{%
+\ifthenelse{\theantworth=#1}{\jeroen@get{L8}}{{%
+\jeroen@get{L9}}}}}}}}}}&%
+%%
+%%
+%%
+\ifthenelse{\theAntworten=1}{%
+\ifthenelse{%
+\jeroen@get{A1}=1\OR%
+\jeroen@get{A2}=1\OR%
+\jeroen@get{A3}=1\OR%
+\jeroen@get{A4}=1\OR%
+\jeroen@get{A5}=1\OR%
+\jeroen@get{A6}=1\OR%
+\jeroen@get{A7}=1\OR%
+\jeroen@get{A8}=1\OR%
+\jeroen@get{A9}=1\AND%
+\theantworta=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{acheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=2\OR%
+\jeroen@get{A2}=2\OR%
+\jeroen@get{A3}=2\OR%
+\jeroen@get{A4}=2\OR%
+\jeroen@get{A5}=2\OR%
+\jeroen@get{A6}=2\OR%
+\jeroen@get{A7}=2\OR%
+\jeroen@get{A8}=2\OR%
+\jeroen@get{A9}=2\AND%
+\theantwortb=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{bcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=3\OR%
+\jeroen@get{A2}=3\OR%
+\jeroen@get{A3}=3\OR%
+\jeroen@get{A4}=3\OR%
+\jeroen@get{A5}=3\OR%
+\jeroen@get{A6}=3\OR%
+\jeroen@get{A7}=3\OR%
+\jeroen@get{A8}=3\OR%
+\jeroen@get{A9}=3\AND%
+\theantwortc=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{ccheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=4\OR%
+\jeroen@get{A2}=4\OR%
+\jeroen@get{A3}=4\OR%
+\jeroen@get{A4}=4\OR%
+\jeroen@get{A5}=4\OR%
+\jeroen@get{A6}=4\OR%
+\jeroen@get{A7}=4\OR%
+\jeroen@get{A8}=4\OR%
+\jeroen@get{A9}=4\AND%
+\theantwortd=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{dcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=5\OR%
+\jeroen@get{A2}=5\OR%
+\jeroen@get{A3}=5\OR%
+\jeroen@get{A4}=5\OR%
+\jeroen@get{A5}=5\OR%
+\jeroen@get{A6}=5\OR%
+\jeroen@get{A7}=5\OR%
+\jeroen@get{A8}=5\OR%
+\jeroen@get{A9}=5\AND%
+\theantworte=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{echeck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=6\OR%
+\jeroen@get{A2}=6\OR%
+\jeroen@get{A3}=6\OR%
+\jeroen@get{A4}=6\OR%
+\jeroen@get{A5}=6\OR%
+\jeroen@get{A6}=6\OR%
+\jeroen@get{A7}=6\OR%
+\jeroen@get{A8}=6\OR%
+\jeroen@get{A9}=6\AND%
+\theantwortf=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{fcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=7\OR%
+\jeroen@get{A2}=7\OR%
+\jeroen@get{A3}=7\OR%
+\jeroen@get{A4}=7\OR%
+\jeroen@get{A5}=7\OR%
+\jeroen@get{A6}=7\OR%
+\jeroen@get{A7}=7\OR%
+\jeroen@get{A8}=7\OR%
+\jeroen@get{A9}=7\AND%
+\theantwortg=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{gcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=8\OR%
+\jeroen@get{A2}=8\OR%
+\jeroen@get{A3}=8\OR%
+\jeroen@get{A4}=8\OR%
+\jeroen@get{A5}=8\OR%
+\jeroen@get{A6}=8\OR%
+\jeroen@get{A7}=8\OR%
+\jeroen@get{A8}=8\OR%
+\jeroen@get{A9}=8\AND%
+\theantworth=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{hcheck}{1}}{}%
+\ifthenelse{%
+\jeroen@get{A1}=9\OR%
+\jeroen@get{A2}=9\OR%
+\jeroen@get{A3}=9\OR%
+\jeroen@get{A4}=9\OR%
+\jeroen@get{A5}=9\OR%
+\jeroen@get{A6}=9\OR%
+\jeroen@get{A7}=9\OR%
+\jeroen@get{A8}=9\OR%
+\jeroen@get{A9}=9\AND%
+\theantworti=#1}{%
+\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}\setcounter{icheck}{1}}{}%
+}{\Square}&%
+%%%
%%%% Spalte 'falsch' (letzte Zeile)
-%
-\ifnum\theAntworten=1%
+%%%
+\ifthenelse{\theAntworten=1}{%
\ifthenelse{\theantworta=#1 \AND \value{acheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
\ifthenelse{\theantwortb=#1 \AND \value{bcheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
\ifthenelse{\theantwortc=#1 \AND \value{ccheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
@@ -1055,8 +1526,7 @@ Complete the following sentence by putting a cross next to one of the given poss
\ifthenelse{\theantworth=#1 \AND \value{hcheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
\ifthenelse{\theantworti=#1 \AND \value{icheck}=0 \AND \value{counter}<#1}{\color[rgb]{1,0,0}\XBox\color[rgb]{0,0,0}}{\addtocounter{counter}{1}%
}}}}}}}}}%
-\else%
-\Square\fi\\ \hline
+}{\Square}\\ \hline
\end{tabu}\leer
\egroup}
diff --git a/macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex b/macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex
index 1c7d82e696..ad225837ed 100644
--- a/macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex
+++ b/macros/latex/contrib/srdp-mathematik/srdp-mathematik.tex
@@ -55,7 +55,7 @@ hidelinks
\vfill
-\Huge The \textit{srdp-mathematik} package v1.10.2\\[1cm]
+\Huge The \textit{srdp-mathematik} package v1.10.3\\[1cm]
Documentation \\ [1cm]
diff --git a/macros/latex/required/babel/base/README.md b/macros/latex/required/babel/base/README.md
index 173be3799d..c431f70b1e 100644
--- a/macros/latex/required/babel/base/README.md
+++ b/macros/latex/required/babel/base/README.md
@@ -1,6 +1,4 @@
-## Babel 3.81
-
-**Development**
+## Babel 3.82
This package manages culturally-determined typographical (and other)
rules, and hyphenation patterns for a wide range of languages. Many
@@ -10,9 +8,9 @@ is a set of ini files for about 250 languages.
The latest stable version is available on <https://ctan.org/pkg/babel>.
-Changes in version 3.81 are described in:
+Changes in version 3.82 are described in:
-https://latex3.github.io/babel/news/whats-new-in-babel-3.81.html
+https://latex3.github.io/babel/news/whats-new-in-babel-3.82.html
Apart from the manual, you can find information on some aspects of babel at:
@@ -48,14 +46,17 @@ respective authors.
### Summary of latest changes
```
-3.81 2022-10-04
- * Tibetan line breaking and justification (lines padded with
- trailing tshegs).
- * New option 'letters' for 'onchar'.
- * Conceal 'fontspec' warnings about unknown languages and
- scripts with \babelfont.
- * More updates to the CLDR 41: Burmese, Dutch, Kwasio, Malay,
- Marathi, Mazanderani, Nepali, Norwegian, Norwegian Nynorsk.
+3.82 2022-10-23
+ * Predefined transforms can be activated after the first
+ \babelprovide (lua).
+ * Tibetan for XeTeX.
+ * More updates to the CLDR 41: Albanian, Kinyarwanda, Maltese,
+ Odia, Ossetic, Pashto, Polish, Portuguese, Punjabi, Romanian,
+ Romansh, Russian, Sakha, Sinhala, Slovak, Slovenian, Somali.
+ * Fixes:
+ - \MakeXXXcase: a (hopefully) better hack for #189 (see
+ also #193).
+ - Thai (with xetex): #182 wasn’t quite fixed.
```
### Previous changes
diff --git a/macros/latex/required/babel/base/babel.dtx b/macros/latex/required/babel/base/babel.dtx
index 3d8eddc505..44ed19a8f2 100644
--- a/macros/latex/required/babel/base/babel.dtx
+++ b/macros/latex/required/babel/base/babel.dtx
@@ -32,7 +32,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2022/10/04 v3.81 The Babel package]
+\ProvidesFile{babel.dtx}[2022/10/23 v3.82 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -1232,18 +1232,6 @@ are incompatibilities with other packages.
written to the log file.\footnote{You can use alternatively the
package \textsf{silence}.}
-\Describe{strings=}{\texttt{generic} $\string|$ \texttt{unicode}
-$\string|$ \texttt{encoded} $\string|$ \meta{label} $\string|$
-\meta{font encoding}} Selects the encoding of strings in languages
-supporting this feature. Predefined labels are |generic| (for
-traditional \TeX, LICR and ASCII strings), |unicode| (for engines like
-\xetex{} and \luatex) and |encoded| (for special cases requiring mixed
-encodings). Other allowed values are font encoding codes (|T1|, |T2A|,
-|LGR|, |L7X|...), but only in languages supporting them. Be aware with
-|encoded| captions are protected, but they work in |\MakeUppercase|
-and the like (this feature misuses some internal \LaTeX\ tools, so use
-it only as a last resort).
-
\Describe{hyphenmap=}{\texttt{off} $\string|$ \texttt{first}
$\string|$ \texttt{select} $\string|$ \texttt{other} $\string|$
\texttt{other*}}
@@ -2503,11 +2491,11 @@ If the language has been loaded as an argument in |\documentclass| or
Unicode engines load the UTF-8 variants, while 8-bit engines load the
LICR (ie, with macros like |\'| or |\ss|) ones.
-\New{3.23} It may be used without a value. In such a case, the |ini|
-file set in the corresponding |babel-<language>.tex| (where
-|<language>| is the last argument in |\babelprovide|) is imported. See
-the list of recognized languages above. So, the previous example can
-be written:
+\New{3.23} It may be used without a value, and that is often the
+recommended option. In such a case, the |ini| file set in the
+corresponding |babel-<language>.tex| (where |<language>| is the last
+argument in |\babelprovide|) is imported. See the list of recognized
+languages above. So, the previous example is best written as:
\begin{verbatim}
\babelprovide[_import_]{hungarian}
\end{verbatim}
@@ -2616,8 +2604,7 @@ it acts on characters, not on spaces). There are currently two
‘actions’, which can be used at the same time (separated by a space):
with |ids| the |\language| and the |\localeid| are set to the values of
this locale; with |fonts|, the fonts are changed to those of this
-locale (as set with |\babelfont|). This option is not compatible with
-|mapfont|. Characters can be added or modified with
+locale (as set with |\babelfont|). Characters can be added or modified with
|\babelcharproperty|.
\New{3.81} Option |letters| restricts the ‘actions’ to letters, in the
@@ -2665,16 +2652,6 @@ It’s still somewhat experimental. Again, there is an explanation in the
\Describe{linebreaking=}{}
\New{3.59} Just a synonymous for \texttt{justification}.
-\Describe{mapfont=}{\texttt{direction}}
-Assigns the font for the writing direction of this language (only with
-|bidi=basic|). Whenever possible, instead of this option use |onchar|,
-based on the script, which usually makes more sense. More precisely,
-what |mapfont=direction| means is, ‘when a character has the same
-direction as the script for the “provided” language, then change its
-font to that set for this language’. There are 3 directions, following
-the bidi Unicode algorithm, namely, Arabic-like, Hebrew-like and left
-to right. So, there should be at most 3 directives of this kind.
-
\begin{note}
(1) If you need shorthands, you can define them with |\useshorthands|
and |\defineshorthand| as described above. (2) Captions and |\today|
@@ -5176,8 +5153,8 @@ help from Bernd Raichle, for which I am grateful.
% \section{Tools}
%
% \begin{macrocode}
-%<<version=3.81>>
-%<<date=2022/10/04>>
+%<<version=3.82>>
+%<<date=2022/10/23>>
% \end{macrocode}
%
% \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -5202,6 +5179,10 @@ help from Bernd Raichle, for which I am grateful.
{\def#1{#2}}%
{\expandafter\def\expandafter#1\expandafter{#1#2}}}
\def\bbl@xin@{\@expandtwoargs\in@}
+\def\bbl@carg#1#2{\expandafter#1\csname#2\endcsname}%
+\def\bbl@ncarg#1#2#3{\expandafter#1\expandafter#2\csname#3\endcsname}%
+\def\bbl@ccarg#1#2#3{%
+ \expandafter#1\csname#2\expandafter\endcsname\csname#3\endcsname}%
\def\bbl@csarg#1#2{\expandafter#1\csname bbl@#2\endcsname}%
\def\bbl@cs#1{\csname bbl@#1\endcsname}
\def\bbl@cl#1{\csname bbl@#1@\languagename\endcsname}
@@ -5340,8 +5321,8 @@ help from Bernd Raichle, for which I am grateful.
\def\bbl@ifblank#1{%
\bbl@ifblank@i#1\@nil\@nil\@secondoftwo\@firstoftwo\@nil}
\long\def\bbl@ifblank@i#1#2\@nil#3#4#5\@nil{#4}
-\def\bbl@ifset#1#2#3{%
- \bbl@ifunset{#1}{#3}{\bbl@exp{\\\bbl@ifblank{#1}}{#3}{#2}}}
+\def\bbl@ifset#1#2#3{%
+ \bbl@ifunset{#1}{#3}{\bbl@exp{\\\bbl@ifblank{\@nameuse{#1}}}{#3}{#2}}}
% \end{macrocode}
% \end{macro}
%
@@ -7054,7 +7035,7 @@ help from Bernd Raichle, for which I am grateful.
\def\bbl@redefine@long#1{%
\edef\bbl@tempa{\bbl@stripslash#1}%
\expandafter\let\csname org@\bbl@tempa\endcsname#1%
- \expandafter\long\expandafter\def\csname\bbl@tempa\endcsname}
+ \long\expandafter\def\csname\bbl@tempa\endcsname}
\@onlypreamble\bbl@redefine@long
% \end{macrocode}
%
@@ -7631,7 +7612,7 @@ help from Bernd Raichle, for which I am grateful.
\bbl@csarg\edef{normal@#2}{%
\noexpand\active@prefix\noexpand#1%
\expandafter\noexpand\csname normal@char#2\endcsname}%
- \expandafter\let\expandafter#1\csname bbl@normal@#2\endcsname
+ \bbl@ncarg\let#1{bbl@normal@#2}%
% \end{macrocode}
%
% The next level of the code checks whether a user has defined a
@@ -8018,10 +7999,8 @@ help from Bernd Raichle, for which I am grateful.
\@notshorthand{#2}%
\else
\initiate@active@char{#2}%
- \expandafter\let\csname active@char\string#2\expandafter\endcsname
- \csname active@char\string#1\endcsname
- \expandafter\let\csname normal@char\string#2\expandafter\endcsname
- \csname normal@char\string#1\endcsname
+ \bbl@ccarg\let{active@char\string#2}{active@char\string#1}%
+ \bbl@ccarg\let{normal@char\string#2}{normal@char\string#1}%
\bbl@activate{#2}%
\fi
\fi}%
@@ -8714,22 +8693,46 @@ help from Bernd Raichle, for which I am grateful.
% A temporary hack:
\ifx\BabelCaseHack\@undefined
\AtBeginDocument{%
- \bbl@exp{%
- \\\in@{\string\@uclclist}%
- {\expandafter\meaning\csname MakeUppercase \endcsname}}%
+ \bbl@xin@{\string\@uclclist}%
+ {\bbl@carg\meaning{MakeUppercase }}%
\ifin@\else
- \expandafter\let\expandafter\bbl@newuc\csname MakeUppercase \endcsname
+ \chardef\bbl@ulflag\z@
+ \bbl@ncarg\let\bbl@newuc{MakeUppercase }%
\protected\@namedef{MakeUppercase }#1{{%
- \def\reserved@a##1##2{\let##1##2\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
- \protected@edef\reserved@a{\bbl@newuc{#1}}\reserved@a}}%
- \expandafter\let\expandafter\bbl@newlc\csname MakeLowercase \endcsname
+ \chardef\bbl@ulflag\@ne
+ \ifx\bbl@uclc\@undefined
+ \bbl@newuc{#1}%
+ \else
+ \bbl@ifunset{\languagename @bbl@uclc}%
+ {\bbl@newuc{#1}}%
+ {\def\reserved@a##1##2{\let##1##2\reserved@a}%
+ \bbl@uclc\reserved@a\reserved@b{\reserved@b\@gobble}%
+ \protected@edef\reserved@a{\bbl@newuc{#1}}% Pre-expand
+ \reserved@a}%
+ \fi}}%
+ \bbl@ncarg\let\bbl@newlc{MakeLowercase }%
\protected\@namedef{MakeLowercase }#1{{%
- \def\reserved@a##1##2{\let##2##1\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
- \protected@edef\reserved@a{\bbl@newlc{#1}}\reserved@a}}%
+ \chardef\bbl@ulflag\tw@
+ \ifx\bbl@uclc\@undefined
+ \bbl@newlc{#1}%
+ \else
+ \bbl@ifunset{\languagename @bbl@uclc}%
+ {\bbl@newlc{#1}}%
+ {\def\reserved@a##1##2{\let##2##1\reserved@a}%
+ \bbl@uclc\reserved@a\reserved@b{\reserved@b\@gobble}%
+ \protected@edef\reserved@a{\bbl@newlc{#1}}% Pre-expand
+ \reserved@a}%
+ \fi}}%
+ \def\bbl@cased{%
+ \ifcase\bbl@ulflag
+ \expandafter\@firstofone
+ \or
+ \expandafter\MakeUppercase
+ \or
+ \expandafter\MakeLowercase
+ \fi}%
\fi}
-\fi
+\fi
% \end{macrocode}
%
% \begin{macrocode}
@@ -9012,12 +9015,9 @@ help from Bernd Raichle, for which I am grateful.
\newcommand\SetCase[3][]{%
\bbl@patchuclc
\bbl@forlang\bbl@tempa{%
- \expandafter\bbl@encstring
- \csname\bbl@tempa @bbl@uclc\endcsname{\bbl@tempa##1}%
- \expandafter\bbl@encstring
- \csname\bbl@tempa @bbl@uc\endcsname{##2}%
- \expandafter\bbl@encstring
- \csname\bbl@tempa @bbl@lc\endcsname{##3}}}%
+ \bbl@carg\bbl@encstring{\bbl@tempa @bbl@uclc}{\bbl@tempa##1}%
+ \bbl@carg\bbl@encstring{\bbl@tempa @bbl@uc}{##2}%
+ \bbl@carg\bbl@encstring{\bbl@tempa @bbl@lc}{##3}}}%
%<</Macros local to BabelCommands>>
% \end{macrocode}
%
@@ -9520,7 +9520,7 @@ help from Bernd Raichle, for which I am grateful.
% \begin{macrocode}
\def\umlauthigh{%
\def\bbl@umlauta##1{\leavevmode\bgroup%
- \expandafter\accent\csname\f@encoding dqpos\endcsname
+ \accent\csname\f@encoding dqpos\endcsname
##1\bbl@allowhyphens\egroup}%
\let\bbl@umlaute\bbl@umlauta}
\def\umlautlow{%
@@ -9566,10 +9566,10 @@ help from Bernd Raichle, for which I am grateful.
\leavevmode\bgroup
\U@D 1ex%
{\setbox\z@\hbox{%
- \expandafter\char\csname\f@encoding dqpos\endcsname}%
+ \char\csname\f@encoding dqpos\endcsname}%
\dimen@ -.45ex\advance\dimen@\ht\z@
\ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}%
- \expandafter\accent\csname\f@encoding dqpos\endcsname
+ \accent\csname\f@encoding dqpos\endcsname
\fontdimen5\font\U@D #1%
\egroup}
% \end{macrocode}
@@ -9953,7 +9953,7 @@ help from Bernd Raichle, for which I am grateful.
\ifin@\else\bbl@xin@{/k}{/\bbl@cl{lnbrk}}\fi
\ifin@\bbl@arabicjust\fi
\bbl@xin@{/p}{/\bbl@cl{lnbrk}}%
- \ifin@\AtBeginDocument{\bbl@tibetanjust}\fi
+ \ifin@\AtBeginDocument{\@nameuse{bbl@tibetanjust}}\fi
% == Line breaking: hyphenate.other.(locale|script) ==
\ifx\bbl@lbkflag\@empty
\bbl@ifunset{bbl@hyotl@\languagename}{}%
@@ -10104,8 +10104,20 @@ help from Bernd Raichle, for which I am grateful.
{\bbl@pre@fs}%
{\bbl@post@fs}%
\fi
- % == Release saved transforms ==
- \bbl@release@transforms\relax % \relax closes the last item.
+ % == transforms ==
+ \ifodd\bbl@engine
+ \ifx\bbl@KVP@transforms\@nnil\else
+ \def\bbl@elt##1##2##3{%
+ \in@{$transforms.}{$##1}%
+ \ifin@
+ \def\bbl@tempa{##1}%
+ \bbl@replace\bbl@tempa{transforms.}{}%
+ \bbl@carg\bbl@transforms{babel\bbl@tempa}{##2}{##3}%
+ \fi}%
+ \csname bbl@inidata@\languagename\endcsname
+ \bbl@release@transforms\relax % \relax closes the last item.
+ \fi
+ \fi
% == main ==
\ifx\bbl@KVP@main\@nnil % Restore only if not 'main'
\let\languagename\bbl@savelangname
@@ -10911,44 +10923,40 @@ help from Bernd Raichle, for which I am grateful.
%
% \begin{macrocode}
\let\bbl@release@transforms\@empty
-\@namedef{bbl@inikv@transforms.prehyphenation}{%
- \bbl@transforms\babelprehyphenation}
-\@namedef{bbl@inikv@transforms.posthyphenation}{%
- \bbl@transforms\babelposthyphenation}
+\bbl@csarg\let{inikv@transforms.prehyphenation}\bbl@inikv
+\bbl@csarg\let{inikv@transforms.posthyphenation}\bbl@inikv
\def\bbl@transforms@aux#1#2#3#4,#5\relax{%
#1[#2]{#3}{#4}{#5}}
\begingroup % A hack. TODO. Don't require an specific order
\catcode`\%=12
\catcode`\&=14
\gdef\bbl@transforms#1#2#3{&%
- \ifx\bbl@KVP@transforms\@nnil\else
- \directlua{
- local str = [==[#2]==]
- str = str:gsub('%.%d+%.%d+$', '')
- tex.print([[\def\string\babeltempa{]] .. str .. [[}]])
- }&%
- \bbl@xin@{,\babeltempa,}{,\bbl@KVP@transforms,}&%
+ \directlua{
+ local str = [==[#2]==]
+ str = str:gsub('%.%d+%.%d+$', '')
+ tex.print([[\def\string\babeltempa{]] .. str .. [[}]])
+ }&%
+ \bbl@xin@{,\babeltempa,}{,\bbl@KVP@transforms,}&%
+ \ifin@
+ \in@{.0$}{#2$}&%
\ifin@
- \in@{.0$}{#2$}&%
- \ifin@
- \directlua{
- local str = string.match([[\bbl@KVP@transforms]],
- '%(([^%(]-)%)[^%)]-\babeltempa')
- if str == nil then
- tex.print([[\def\string\babeltempb{}]])
- else
- tex.print([[\def\string\babeltempb{,attribute=]] .. str .. [[}]])
- end
- }
- \toks@{#3}&%
- \bbl@exp{&%
- \\\g@addto@macro\\\bbl@release@transforms{&%
- \relax &% Closes previous \bbl@transforms@aux
- \\\bbl@transforms@aux
- \\#1{label=\babeltempa\babeltempb}{\languagename}{\the\toks@}}}&%
- \else
- \g@addto@macro\bbl@release@transforms{, {#3}}&%
- \fi
+ \directlua{&% (\attribute) syntax
+ local str = string.match([[\bbl@KVP@transforms]],
+ '%(([^%(]-)%)[^%)]-\babeltempa')
+ if str == nil then
+ tex.print([[\def\string\babeltempb{}]])
+ else
+ tex.print([[\def\string\babeltempb{,attribute=]] .. str .. [[}]])
+ end
+ }
+ \toks@{#3}&%
+ \bbl@exp{&%
+ \\\g@addto@macro\\\bbl@release@transforms{&%
+ \relax &% Closes previous \bbl@transforms@aux
+ \\\bbl@transforms@aux
+ \\#1{label=\babeltempa\babeltempb}{\languagename}{\the\toks@}}}&%
+ \else
+ \g@addto@macro\bbl@release@transforms{, {#3}}&%
\fi
\fi}
\endgroup
@@ -10996,7 +11004,8 @@ help from Bernd Raichle, for which I am grateful.
in the current font, and therefore the hyphen\\%
will be printed. Try changing the fontspec's\\%
'HyphenChar' to another value, but be aware\\%
- this setting is not safe (see the manual)}%
+ this setting is not safe (see the manual).\\%
+ Reported}%
\hyphenchar\font\defaulthyphenchar
\fi\fi
\fi}%
@@ -12369,7 +12378,7 @@ help from Bernd Raichle, for which I am grateful.
%
% \begin{macrocode}
\ifx\bbl@opt@main\@nnil\else
- \bbl@csarg\let{loadmain\expandafter}\csname ds@\bbl@opt@main\endcsname
+ \bbl@ncarg\let\bbl@loadmain{ds@\bbl@opt@main}%
\expandafter\let\csname ds@\bbl@opt@main\endcsname\relax
\fi
% \end{macrocode}
@@ -13246,7 +13255,7 @@ help from Bernd Raichle, for which I am grateful.
\<bbl@xeipn@\languagename>}%
\\\bbl@toglobal\<extras\languagename>%
\\\bbl@add\<noextras\languagename>{%
- \XeTeXlinebreaklocale "en"}%
+ \XeTeXlinebreaklocale ""}%
\\\bbl@toglobal\<noextras\languagename>}%
\ifx\bbl@ispacesize\@undefined
\gdef\bbl@ispacesize{\bbl@cl{xeisp}}%
diff --git a/macros/latex/required/babel/base/babel.ins b/macros/latex/required/babel/base/babel.ins
index a40cfd79f3..5128ec755d 100644
--- a/macros/latex/required/babel/base/babel.ins
+++ b/macros/latex/required/babel/base/babel.ins
@@ -26,7 +26,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-\def\filedate{2022/10/04}
+\def\filedate{2022/10/23}
\def\batchfile{babel.ins}
\input docstrip.tex
diff --git a/macros/latex/required/babel/base/babel.pdf b/macros/latex/required/babel/base/babel.pdf
index c667f527ac..161bd23b21 100644
--- a/macros/latex/required/babel/base/babel.pdf
+++ b/macros/latex/required/babel/base/babel.pdf
Binary files differ
diff --git a/macros/latex/required/babel/base/bbcompat.dtx b/macros/latex/required/babel/base/bbcompat.dtx
index 0bc850a585..2ad2e626b7 100644
--- a/macros/latex/required/babel/base/bbcompat.dtx
+++ b/macros/latex/required/babel/base/bbcompat.dtx
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2022/10/04 v3.81]
+\ProvidesFile{bbcompat.dtx}[2022/10/23 v3.82]
%</dtx>
%
%% File 'bbcompat.dtx'
diff --git a/macros/luatex/latex/piton/piton-french.pdf b/macros/luatex/latex/piton/piton-french.pdf
index fe034629ee..44eaa5fb0e 100644
--- a/macros/luatex/latex/piton/piton-french.pdf
+++ b/macros/luatex/latex/piton/piton-french.pdf
Binary files differ
diff --git a/macros/luatex/latex/piton/piton-french.tex b/macros/luatex/latex/piton/piton-french.tex
index 1b9854cb15..a5c5a1407f 100644
--- a/macros/luatex/latex/piton/piton-french.tex
+++ b/macros/luatex/latex/piton/piton-french.tex
@@ -1,9 +1,12 @@
% -*- coding: utf-8 ; -*-
\documentclass[dvipsnames]{article}
+
+\usepackage{fontspec}
+
\usepackage[french]{babel}
\frenchsetup{og = « , fg = »}
-\usepackage[escape-inside=$$]{piton}
+\usepackage[footnotehyper,escape-inside=$$]{piton}
\usepackage{xcolor}
@@ -17,13 +20,13 @@
\usepackage{booktabs}
\usepackage{caption}
-\captionsetup{labelfont = bf}
% We use \MakeShortVerb of shortvrb and not \DefineShortVerb of fancyvrb
% because we don't want the contents of short verbatim colored in gray
\usepackage{shortvrb}
\MakeShortVerb{\|}
+\usepackage{varwidth}
\skip\footins = 2\bigskipamount
@@ -39,8 +42,6 @@
\def\interitem{\vspace{7mm plus 2 mm minus 3mm}}
-\usepackage{footnote}
-
\usepackage[hyperfootnotes = false]{hyperref}
\hypersetup
@@ -80,7 +81,7 @@ en utilisant la bibliothèque Lua LPEG. L'extension \pkg{piton} nécessite l'emp
\section{Présentation}
-L'extension \pkg{piton} utilise la librarie Lua nommée LPEG\footnote{LPEG est une librairie de capture de motifs
+L'extension \pkg{piton} utilise la librairie Lua nommée LPEG\footnote{LPEG est une librairie de capture de motifs
(\emph{pattern-matching} en anglais) pour Lua, écrite en C, fondée sur les PEG (\emph{parsing expression
grammars}): \url{http://www.inf.puc-rio.br/~roberto/lpeg/}} pour «parser» le code Python et le composer avec un
coloriage syntaxique. Comme elle utilise du code Lua, elle fonctionne uniquement avec |lualatex| (et ne va pas
@@ -96,21 +97,20 @@ Voici un exemple de code Python composé avec l'environnement |{Piton}| proposé
from math import pi
def arctan(x,n=10):
- """Compute the value of arctan(x)
- n is the number of terms if the sum"""
+ '''Compute the value of arctan(x)
+ n is the number of terms if the sum'''
if x < 0:
- return -arctan(-x) # recursive call
+ return -arctan(-x) # appel récursif
elif x > 1:
- return pi/2 - arctan(1/x)
- ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)\footnote{Cet échappement vers LaTeX a été obtenu en débutant par \ttfamily\#\#.}
- else
- s = 0
- for k in range(n):
- s += (-1)**k/(2*k+1)*x**(2*k+1)
- return s
+ return pi/2 - arctan(1/x)
+ ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\pi/2$ pour $x>0$)\footnote{Cet échappement vers LaTeX a été obtenu en débutant par \ttfamily\#\#.}
+ else:
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
\end{Piton}
-
\bigskip
L'extension LaTeX \pkg{piton} est entièrement contenue dans le fichier |piton.sty|. Ce
@@ -120,8 +120,17 @@ d'installer \pkg{piton} avec une distribution TeX comme MiKTeX, TeX~Live ou MacT
\section{Utilisation de l'extension}
-Pour utiliser l'extension \pkg{piton}, l'utilisateur final a seulement à charger l'extension dans son document avec
-la commande classique |\usepackage| et se souvenir que la compilation doit être faite avec LuaLaTeX.
+L'extension \pkg{piton} se charge simplement avec la commande |\usepackage| : |\usepackage{piton}|.
+
+On a néanmoins deux remarques à formuler :
+\begin{itemize}
+\item l'extension \pkg{piton} utilise l'extension \pkg{xcolor} (néanmoins \pkg{piton} charge pas \pkg{xcolor} : si
+\pkg{xcolor} n'est pas chargée avant le |\begin{document}|, une erreur fatale sera levée) ;
+
+\item l'extension \pkg{piton} n'est utilisable qu'avec LuaLaTeX : si un autre moteur de compilation (comme |latex|,
+|pdflatex| ou |xelatex|) est utilisé, une erreur fatale sera levée.
+\end{itemize}
+
\medskip
L'extension \pkg{piton} fournit trois outils pour composer du code Python: la commande |\piton|, l'environnement
@@ -133,14 +142,17 @@ paragraphe. \emph{Attention} : Cette fonction prend son argument en mode \emph{v
\verb|\verb|) et, de ce fait, cette fonction ne peut pas être utilisée à l'intérieur d'un argument d'une autre
fonction (on peut néanmoins l'utiliser à l'intérieur d'un environnement).
-\item L'environnement |{Piton}| doit être utilisé pour composer des codes de plusieurs lignes.
+\item L'environnement |{Piton}| doit être utilisé pour composer des codes de plusieurs lignes. Pour les besoins de
+personnalisation, il est possible de définir de nouveaux environnements similaires à |{Piton}| en utilisant la
+commande |\NewPitonEnvironment| : cf. partie \ref{NewPitonEnvironment} p.~\pageref{NewPitonEnvironment}.
\item La commande |\PitonInputFile| doit être utilisée pour insérer et composer un fichier extérieur.
\end{itemize}
\bigskip
Il est possible de composer des commentaires en LaTeX en commençant par |##| (c'est un échappement vers LaTeX). Les
-caractères |##| eux-mêmes ne seront pas imprimés et les espaces qui les suivent sont supprimés.
+caractères |##| eux-mêmes ne seront pas imprimés et les espaces qui les suivent sont supprimés. Ces commentaires
+seront simplement appelés «commentaires LaTeX» dans ce document.
\section{Personnalisation}
@@ -148,7 +160,7 @@ caractères |##| eux-mêmes ne seront pas imprimés et les espaces qui les suive
\subsection{La commande \textbackslash PitonOptions}
La commande |\PitonOptions| prend en argument une liste de couples \textsl{clé=valeur}. La portée des réglages
-effectués par cette commande est le groupe TeX courant.
+effectués par cette commande est le groupe TeX courant.\footnote{On rappelle que tout environnement LaTeX est, en particulier, un groupe.}
\begin{itemize}
\item La clé |gobble| peut comme valeur un entier positif $n$ : les $n$ premiers caractères de chaque ligne sont
@@ -166,20 +178,23 @@ et dans les listings produits par la commande |\PitonInputFile|.
\item Avec la clé |all-line-numbers|, \emph{toutes} les lignes sont numérotées, y compris les lignes vides.
-\item \colorbox{yellow!50}{\textbf{Nouveau 0.7}}\enskip Avec la clé |resume|, le compteur de lignes n'est pas remis à
-zéro comme il l'est normalement au début d'un environnement |{Piton}| ou bien au début d'un listing produit par
-|\PitonInputFile|.
+\item Avec la clé |resume|, le compteur de lignes n'est pas remis à zéro comme il l'est normalement au début d'un
+environnement |{Piton}| ou bien au début d'un listing produit par |\PitonInputFile|.
-\item \colorbox{yellow!50}{\textbf{Nouveau 0.7}}\enskip La clé |splittable| autorise un saut de page
-dans les environnements |{Piton}| et les listings produits par |\PitonInputFile|.
+\item La clé |splittable| autorise un saut de page dans les environnements |{Piton}| et les listings produits par
+|\PitonInputFile|.
-\item \colorbox{yellow!50}{\textbf{Nouveau 0.7}}\enskip La clé |background-color| fixe la couleur de fond des
-environnements |{Piton}| et des listings produits par |\PitonInputFile| (ce fond a une largeur égale à la valeur
-courante de |\linewidth|). Même avec une couleur de fond, les sauts de page sont possibles, à partir du moment où
-la clé |splittable| est utilisée.\footnote{Un environnement |{Piton}| est sécable même dans un environnement de
- \pkg{tcolorbox}, à patir du moment où la clé |breakable| de \pkg{tcolorbox} est utilisée. On précise cela parce
- que, en revanche, un environnement de \pkg{tcolorbox} inclus dans un autre environnement de \pkg{tcolorbox} n'est
- pas sécable, même quand les deux utilisent la clé |breakable|.}
+\item La clé |background-color| fixe la couleur de fond des environnements |{Piton}| et des listings produits par
+|\PitonInputFile| (ce fond a une largeur égale à la valeur courante de |\linewidth|). Même avec une couleur de
+fond, les sauts de page sont possibles, à partir du moment où la clé |splittable| est utilisée.\footnote{Un
+ environnement |{Piton}| est sécable même dans un environnement de \pkg{tcolorbox}, à partir du moment où la clé
+ |breakable| de \pkg{tcolorbox} est utilisée. On précise cela parce que, en revanche, un environnement de
+ \pkg{tcolorbox} inclus dans un autre environnement de \pkg{tcolorbox} n'est pas sécable, même quand les deux
+ utilisent la clé |breakable|.}
+
+\item \colorbox{yellow!50}{\textbf{Nouveau 0.8}}\enskip La clé |left-margin| fixe une marge sur la gauche. Cette
+clé peut être utile, en particulier, en conjonction avec l'une des clés |line-numbers| et |all-line-numbers| si on
+ne souhaite pas que les numéros de ligne soient dans une position en débordement sur la gauche.
\end{itemize}
\bigskip
@@ -192,18 +207,18 @@ la clé |splittable| est utilisée.\footnote{Un environnement |{Piton}| est séc
from math import pi
def arctan(x,n=10):
- """Compute the value of arctan(x)
- n is the number of terms if the sum"""
+ '''Compute the value of arctan(x)
+ n is the number of terms if the sum'''
if x < 0:
- return -arctan(-x) # recursive call
+ return -arctan(-x) # appel récursif
elif x > 1:
- return pi/2 - arctan(1/x)
- ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)
- else
- s = 0
- for k in range(n):
- s += (-1)**k/(2*k+1)*x**(2*k+1)
- return s
+ return pi/2 - arctan(1/x)
+ ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\pi/2$ pour $x>0$)
+ else:
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
\end{Piton}
\end{Verbatim}
\endgroup
@@ -214,18 +229,18 @@ la clé |splittable| est utilisée.\footnote{Un environnement |{Piton}| est séc
from math import pi
def arctan(x,n=10):
- """Compute the value of arctan(x)
- n is the number of terms if the sum"""
+ '''Compute the value of arctan(x)
+ n is the number of terms if the sum'''
if x < 0:
- return -arctan(-x) # recursive call
+ return -arctan(-x) # appel récursif
elif x > 1:
- return pi/2 - arctan(1/x)
- ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)
- else
- s = 0
- for k in range(n):
- s += (-1)**k/(2*k+1)*x**(2*k+1)
- return s
+ return pi/2 - arctan(1/x)
+ ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\pi/2$ pour $x>0$)
+ else:
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
\end{Piton}
\endgroup
@@ -268,23 +283,25 @@ def fact(n):
\bigskip
\emph{Attention} : L'échappement vers LaTeX permis par les caractères de |escape-inside| n'est pas actif dans les
chaînes de caractères ni dans les commentaires (pour avoir un commentaire entièrement en échappement vers LaTeX,
-il suffit de le faire débuter par |##|).
+c'est-à-dire ce qui est
+appelé dans ce document «commentaire LateX», il suffit de le faire débuter par |##|).
\subsection{Les styles}
+\label{styles}
+
L'extension \pkg{piton} fournit la commande |\SetPitonStyle| pour personnaliser les différents styles utilisés pour
formater les éléments syntaxiques des listings Python. Ces personnalisations ont une portée qui correspond au
-groupe TeX courant.
+groupe TeX courant.\footnote{On rappelle que tout environnement LaTeX est, en particulier, un groupe.}
\bigskip
La commande |\SetPitonStyle| prend en argument une liste de couples \textsl{clé=valeur}. Les clés sont les noms des
styles et les valeurs sont les instructions LaTeX de formatage correspondantes.
\bigskip
-Ces instructions LaTeX doivent être des instructions de formatage du type de |\color{...}|, |\bseries|,
-|\slshape|, etc. (les commandes de ce type sont parfois qualifiées de \emph{semi-globales}). Il est aussi possible
-de mettre, \emph{à la fin de la liste d'instructions}, une commande LaTeX prenant exactement un
-argument.
+Ces instructions LaTeX doivent être des instructions de formatage du type de |\bfseries|, |\slshape|,
+|\color{...}|, etc. (les commandes de ce type sont parfois qualifiées de \emph{semi-globales}). Il est aussi
+possible de mettre, \emph{à la fin de la liste d'instructions}, une commande LaTeX prenant exactement un argument.
\bigskip
Voici un exemple qui change le style utilisé pour le nom d'une fonction Python, au moment de sa définition
@@ -296,7 +313,8 @@ Voici un exemple qui change le style utilisé pour le nom d'une fonction Python,
\end{Verbatim}
Dans cet exemple, |\colorbox{yellow!50}| doit être considéré comme le nom d'une fonction LaTeX qui prend exactement
-un argument, puisque, habituellement, elle est utilisée avec la syntaxe |\colorbox{yellow!50}{text}|.
+un argument, puisque, habituellement, elle est utilisée avec la syntaxe
+|\colorbox{yellow!50}{|\texttt{\slshape text}|}|.
\medskip
\begingroup
@@ -306,13 +324,15 @@ Avec ce réglage, on obtient : \piton{def cube(x) : return x * x * x }
\endgroup
-
-\medskip
-Les différents styles sont décrits dans la table \ref{Semantic}.
+\bigskip
+Les différents styles sont décrits dans la table \ref{Semantic}. Les réglages initiaux effectués par \pkg{piton}
+dans |piton.sty| sont inspirés par le style \pkg{manni} de Pygments.\footnote{Voir
+ \url{https://pygments.org/styles/}. À remarquer que, par défaut, Pygments propose pour le style \pkg{manni} un
+ fond coloré dont la couleur est la couleur HTML |#F0F3F3|.}
\begin{table}[htb]
\centering
-\caption{Usage des différents styles}
+\caption{Les styles proposés par \pkg{piton}}
\label{Semantic}
\begin{tabularx}{0.9\textwidth}{@{}>{\ttfamily}l>{\raggedright\arraybackslash}X@{}}
\toprule
@@ -335,8 +355,8 @@ Name.Namespace & le nom des modules (= bibliothèques extérieures) \\
Name.Class & le nom des classes au moment de leur définition \\
Exception & le nom des exceptions prédéfinies (eg: SyntaxError) \\
Comment & les commentaires commençant par \texttt{\#} \\
-Comment.LaTeX & les commentaires commençant par \texttt{\#\#} qui sont composés en LaTeX par \pkg{piton}
- (\texttt{\#\#} est une séquence d'échappement vers LaTeX) \\
+Comment.LaTeX & les commentaires commençant par \texttt{\#\#} qui sont composés en LaTeX par \pkg{piton} (et
+ appelés simplement «commentaires LaTeX» dans ce document) \\
Keyword.Constant & |True|, |False| et |None| \\
Keyword & les mots-clés suivants :
\ttfamily assert, break, case, continue, del,
@@ -352,9 +372,11 @@ Keyword & les mots-clés suivants :
\subsection{Définition de nouveaux environnements}
+\label{NewPitonEnvironment}
+
Comme l'environnement |{Piton}| a besoin d'absorber son contenu d'une manière spéciale (à peu près comme du texte
verbatim), il n'est pas possible de définir de nouveaux environnements directement au-dessus de l'environnement
-|{Piton}|.
+|{Piton}| avec les commandes classiques |\newenvironment| et |\NewDocumentEnvironment|.
C'est pourquoi \pkg{piton} propose une commande |\NewPitonEnvironment|. Cette commande a la même syntaxe que la
commande classique |\NewDocumentEnvironment|.
@@ -363,7 +385,14 @@ commande classique |\NewDocumentEnvironment|.
Par exemple, avec l'instruction suivante, un nouvel environnement |{Python}| sera défini avec le même comportement
que l'environnement |{Piton}|:
-\verb|\NewPitonEnvironment{Python}{}{}{}|
+{\color{gray}\verb|\NewPitonEnvironment{Python}{}{}{}|}
+
+
+\bigskip
+Si on souhaite un environnement |{Python}| qui prenne en argument optionnel entre crochets les clés de
+|\PitonOptions|, on peut écrire :
+
+{\color{gray}\verb|\NewPitonEnvironment{Python}{O{}}{\PitonOptions{#1}}{}|}
\bigskip
Si on souhaite un environnement |{Python}| qui compose le code inclus dans une boîte de \pkg{tcolorbox}, on peut
@@ -376,4 +405,382 @@ Si on souhaite un environnement |{Python}| qui compose le code inclus dans une b
\end{verbatim}
+\section{Fonctionnalités avancées}
+
+\bigskip
+\subsection{Notes de pied de page dans les environnements de piton}
+
+\label{footnote}
+
+Si vous voulez mettre des notes de pied de page dans un environnement de \pkg{piton} (ou bien dans un listing
+produit par |\PitonInputFile|, bien que cela paraisse moins pertinent dans ce cas-là) vous pouvez utiliser une
+paire |\footnotemark|--|\footnotetext|.
+
+\smallskip
+Il est aussi possible d'extraire les notes de pieds de page avec l'extension \pkg{footnote} ou bien l'extension
+\pkg{footnotehyper}.
+
+\smallskip
+Si \pkg{piton} est chargée avec l'option |footnote| (avec |\usepackage[footnote]{piton}|) l'extension
+\pkg{footnote} est chargée (si elle ne l'est pas déjà) et elle est utilisée pour extraire les notes de pied de
+page.
+
+\smallskip
+Si \pkg{piton} est chargée avec l'option |footnotehyper|, l'extension \pkg{footnotehyper} est chargée (si
+elle ne l'est pas déjà) et elle est utilisée pour extraire les notes de pied de page.
+
+\smallskip
+Attention : Les extensions \pkg{footnote} et \pkg{footnotehyper} sont incompatibles.
+L'extension \pkg{footnotehyper} est le successeur de l'extension \pkg{footnote}
+et devrait être utilisée préférentiellement. L'extension \pkg{footnote} a quelques défauts ;
+en particulier, elle doit être chargée après l'extension \pkg{xcolor} et elle n'est pas parfaitement
+compatible avec \pkg{hyperref}.
+
+\medskip
+Dans ce document, l'extension \pkg{piton} a été chargée avec l'option |footnotehyper| et c'est pourquoi des notes
+peuvent être mises dans les environnements |{Piton}|: cf. première page de ce document.
+
+
+
+\section{Exemples}
+
+\PitonOptions{splittable}
+
+
+\subsection{Numérotation des lignes}
+
+Par défaut, les numéros de ligne sont composés par \pkg{piton} en débordement à gauche (en utilisant en interne la commande |\llap| de LaTeX).
+
+Si on ne veut pas de débordement, il faut réserver une place à gauche pour les numéros de lignes avec la clé |left-margin|.
+
+
+\begingroup
+\fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+\begin{Verbatim}
+~emphase&\PitonOptions{background-color=gray!10, left-margin = 5mm, line-numbers}@
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x) ## (appel récursif)
+ elif x > 1:
+ return pi/2 - arctan(1/x) ## (autre appel récursif)
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\end{Verbatim}
+\endgroup
+
+
+
+\begingroup
+\PitonOptions{background-color=gray!10,left-margin = 5mm, line-numbers}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x) ## (appel récursif)
+ elif x > 1:
+ return pi/2 - arctan(1/x) ## (autre appel récursif)
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\endgroup
+
+
+
+
+\subsection{Formatage des commentaires LaTeX}
+
+
+On peut modifier le style |Comment.LaTeX| (avec |\SetPitonStyle|) pour faire afficher les commentaires
+LaTeX (qui débutent par |##|) en butée à droite.
+
+\begingroup
+\fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+\begin{Verbatim}
+\PitonOptions{background-color=gray!10}
+~emphase&\SetPitonStyle{Comment.LaTeX = \hfill \normalfont\color{gray}}@
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x) ## appel récursif
+ elif x > 1:
+ return pi/2 - arctan(1/x) ## autre appel récursif
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\end{Verbatim}
+\endgroup
+
+\begingroup
+\PitonOptions{background-color=gray!10}
+\SetPitonStyle{Comment.LaTeX = \hfill \normalfont\color{gray}}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x) ## appel récursif
+ elif x > 1:
+ return pi/2 - arctan(1/x) ## autre appel récursif
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\endgroup
+
+
+\vspace{1cm}
+On peut aussi faire afficher les commentaires dans une deuxième colonne à droite si on limite la largeur du code
+proprement dit avec un environnement |{minipage}| de LaTeX.
+
+
+\begingroup
+\fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+\begin{Verbatim}
+\PitonOptions{background-color=gray!10}
+~emphase&\NewDocumentCommand{\MyLaTeXCommand}{m}{\hfill \normalfont\itshape\rlap{\quad #1}}@
+~emphase&\SetPitonStyle{Comment.LaTeX = \MyLaTeXCommand}@
+~emphase&\begin{minipage}{12cm}@
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x) ## appel récursif
+ elif x > 1:
+ return pi/2 - arctan(1/x) ## autre appel récursif
+ else:
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
+\end{Piton}
+~emphase&\end{minipage}@
+\end{Verbatim}
+\endgroup
+
+
+
+\begingroup
+\PitonOptions{background-color=gray!10}
+\NewDocumentCommand{\MyLaTeXCommand}{m}{\hfill \normalfont\itshape\rlap{\quad #1}}
+\SetPitonStyle{Comment.LaTeX = \MyLaTeXCommand}
+\begin{minipage}{12cm}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x) ## appel récursif
+ elif x > 1:
+ return pi/2 - arctan(1/x) ## autre appel récursif
+ else:
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
+\end{Piton}
+\end{minipage}
+\endgroup
+
+
+
+\subsection{Notes dans les listings}
+
+Pour pouvoir extraire les notes (introduites par |\footnote|), l'extension |piton| doit être chargée, soit avec la
+clé |footnote|, soit avec la clé |footnotehyper|, comme expliqué à la section \ref{footnote} p.~\pageref{footnote}.
+Dans le présent document, l'extension \pkg{piton} a été chargée par la clé |footnotehyper|.
+
+Bien entendu, une commande |\footnote| ne peut apparaître que dans un commentaire LaTeX (qui débute par |##|). Un
+tel commentaire peut se limiter à cette unique commande |\footnote|, comme dans l'exemple suivant.
+
+\begingroup
+\fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+\begin{Verbatim}
+\PitonOptions{background-color=gray!10}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x)~emphase&##\footnote{Un premier appel récursif.}]@
+ elif x > 1:
+ return pi/2 - arctan(1/x)~emphase&##\footnote{Un deuxième appel récursif.}@
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\end{Verbatim}
+\endgroup
+
+\begingroup
+\PitonOptions{background-color=gray!10}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x)##\footnote{Un premier appel récursif.}
+ elif x > 1:
+ return pi/2 - arctan(1/x)##\footnote{Un deuxième appel récursif.}
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\endgroup
+
+
+\vspace{1cm}
+
+Si on utilise l'environnement |{Piton}| dans un environnement |{minipage}| de LaTeX, les notes sont, bien entendu,
+composées au bas de l'environnement |{minipage}|. Rappelons qu'une telle |{minipage}| ne peut être coupée par un
+saut de page.
+
+
+\begingroup
+\fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+\begin{Verbatim}
+\PitonOptions{background-color=gray!10}
+\emphase\begin{minipage}{\linewidth}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x)~emphase&##\footnote{Un premier appel récursif.}@
+ elif x > 1:
+ return pi/2 - arctan(1/x)~emphase&##\footnote{Un deuxième appel récursif.}@
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\end{minipage}
+\end{Verbatim}
+\endgroup
+
+\begingroup
+\PitonOptions{background-color=gray!10}
+\begin{minipage}{\linewidth}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x)##\footnote{Un premier appel récursif.}
+ elif x > 1:
+ return pi/2 - arctan(1/x)##\footnote{Un deuxième appel récursif.}
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\end{minipage}
+\endgroup
+
+
+\vspace{1cm}
+Si on encapsule l'environnement |{Piton}| dans un environnement |{minipage}| pour, typiquement, limiter la largeur
+d'un fond coloré, il faut encadrer l'ensemble dans un environnement |{savenotes}| (de \pkg{footnote} ou
+\pkg{footnotehyper}) si on veut avoir les notes reportées en pied de page.
+
+\begingroup
+\fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+\begin{Verbatim}
+\PitonOptions{background-color=gray!10}
+~emphase&\begin{savenotes}@
+\begin{minipage}{13cm}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x)~emphase&##\footnote{Un premier appel récursif.}@
+ elif x > 1:
+ return pi/2 - arctan(1/x)~emphase&##\footnote{Un deuxième appel récursif.}@
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\end{minipage}
+~emphase&\end{savenotes}@
+\end{Verbatim}
+\endgroup
+
+
+
+\begin{savenotes}
+\PitonOptions{background-color=gray!10}
+\begin{minipage}{13cm}
+\begin{Piton}
+def arctan(x,n=10):
+ if x < 0:
+ return -arctan(-x)##\footnote{Un premier appel récursif.}
+ elif x > 1:
+ return pi/2 - arctan(1/x)##\footnote{Un deuxième appel récursif.}
+ else:
+ return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+\end{Piton}
+\end{minipage}
+\end{savenotes}
+
+\subsection{Un exemple de réglage des styles}
+
+Les styles graphiques ont été présentés à la partie \ref{styles}, p.~\pageref{styles}.
+
+\smallskip
+On présente ici un réglage de ces styles adapté pour les documents en noir et blanc. On l'utilise avec la fonte
+\emph{DejaVu Sans Mono}\footnote{Voir: \url{https://dejavu-fonts.github.io}} spécifiée avec la commande
+ |\setmonofont| de \pkg{fontspec}.
+
+
+\begin{Verbatim}
+\setmonofont[Scale=0.85]{DejaVu Sans Mono}
+
+\SetPitonStyle
+ {
+ Number = ,
+ String = \itshape ,
+ String.Doc = \color{gray} \itshape ,
+ Operator = ,
+ Operator.Word = \bfseries ,
+ Name.Builtin = ,
+ Name.Function = \bfseries \colorbox{gray!20} ,
+ Comment = \color{gray} ,
+ Comment.LaTeX = \color{gray},
+ Keyword = \bfseries ,
+ Name.Namespace = ,
+ Name.Class = ,
+ Name.Type = ,
+ InitialValues = \color{gray}
+ }
+\end{Verbatim}
+
+
+
+\setmonofont[Scale=0.85]{DejaVu Sans Mono}
+
+\SetPitonStyle
+ {
+ Number = ,
+ String = \itshape ,
+ String.Doc = \color{gray} \itshape ,
+ Operator = ,
+ Operator.Word = \bfseries ,
+ Name.Builtin = ,
+ Name.Function = \bfseries \colorbox{gray!20} ,
+ Comment = \color{gray} ,
+ Comment.LaTeX = \color{gray},
+ Keyword = \bfseries ,
+ Name.Namespace = ,
+ Name.Class = ,
+ Name.Type = ,
+ InitialValues = \color{gray}
+ }
+
+
+\bigskip
+
+\begin{Piton}
+from math import pi
+
+def arctan(x,n=10):
+ '''Compute the value of arctan(x)
+ n is the number of terms if the sum'''
+ if x < 0:
+ return -arctan(-x) # appel récursif
+ elif x > 1:
+ return pi/2 - arctan(1/x)
+ ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\pi/2$ pour $x>0$)
+ else:
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
+\end{Piton}
+
+
+
+\section*{Autre documentation}
+
+Le document |piton.pdf| (fourni avec l'extension \pkg{piton}) contient une traduction anglaise de la
+documentation ici présente, ainsi que le code source commenté et un historique des versions.
+
+
\end{document} \ No newline at end of file
diff --git a/macros/luatex/latex/piton/piton.dtx b/macros/luatex/latex/piton/piton.dtx
index 4aeabac72b..7d7a94fa1d 100644
--- a/macros/luatex/latex/piton/piton.dtx
+++ b/macros/luatex/latex/piton/piton.dtx
@@ -1,5 +1,4 @@
-% \iffalse -*- coding: utf-8 ; -*- \fi
-% \iffalse meta-comment
+% \iffalse -*- coding: utf-8 ; -*- \fi \iffalse meta-comment
%
% Copyright (C) 2022 by F. Pantigny
% -----------------------------------
@@ -16,8 +15,8 @@
%
% \fi
% \iffalse
-\def\myfileversion{0.7}
-\def\myfiledate{2022/10/08}
+\def\myfileversion{0.8}
+\def\myfiledate{2022/10/23}
%
%
%<*batchfile>
@@ -57,38 +56,13 @@ version 2005/12/01 or later.
\fvset{commandchars=\~\#\@,formatcom=\color{gray}}
\captionsetup{labelfont = bf}
\usepackage{ragged2e}
-\usepackage[escape-inside=$$]{piton} % $$
+\usepackage[footnotehyper,escape-inside=$$]{piton} % $$
\def\interitem{\vskip 7mm plus 2 mm minus 3mm}
\parindent 0pt
\skip\footins = 2\bigskipamount
-\begin{filecontents}[noheader,overwrite]{example1.txt}
-from math import pi
-
-def arctan(x,n=10):
- """Compute the value of arctan(x)
- n is the number of terms if the sum"""
- if x < 0:
- return -arctan(-x) # recursive call
- elif x > 1:
- return pi/2 - arctan(1/x)
- ## (we have used that $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ for $x>0$)\footnote{This LaTeX escape has been done by beginning the comment by \ttfamily\#\#.}
- else
- s = 0
- for k in range(n):
- s += (-1)**k/(2*k+1)*x**(2*k+1)
- return s
-\end{filecontents}
-
-\begin{filecontents}[noheader,overwrite]{example2.txt}
-def fact(n):
- if n==0:
- return 1
- else:
- $\colorbox{yellow!50}{$return n*fact(n-1)$}$
-\end{filecontents}
-
+\PitonOptions{gobble=2}
\EnableCrossrefs
@@ -126,8 +100,25 @@ def fact(n):
% Here is an exemple of code typeset by \pkg{piton}, with the environment |{Piton}|.
%
% \bigskip
-% \PitonInputFile{Example1.txt}
%
+% \begin{Piton}
+% from math import pi
+%
+% def arctan(x,n=10):
+% '''Compute the value of arctan(x)
+% n is the number of terms of the sum'''
+% if x < 0:
+% return -arctan(-x) # recursive call
+% elif x > 1:
+% return pi/2 - arctan(1/x)
+% ## (we have used that $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ for $x>0$)\footnote{This LaTeX escape has been done by beginning the comment by \ttfamily\#\#.}
+% else:
+% s = 0
+% for k in range(n):
+% s += (-1)**k/(2*k+1)*x**(2*k+1)
+% return s
+% \end{Piton}
+%
%
% \bigskip
%
@@ -139,10 +130,20 @@ def fact(n):
%
% \section{Use of the package}
%
-% In order to use the package \pkg{piton}, one has only to load the package in
-% its document with the standard command |\usepackage| and remember that the
-% compilation must be done with |lualatex| (and no other LaTeX engine).
+% The package \pkg{piton} should be loaded with the classical command
+% |\usepackage|: |\usepackage{piton}|.
%
+% \smallskip
+% Nevertheless, we have two remarks:
+% \begin{itemize}
+% \item the package \pkg{piton} uses the package \pkg{xcolor} (but \pkg{piton}
+% does \emph{not} load \pkg{xcolor}: if \pkg{xcolor} is not loaded before the
+% |\begin{document}|, a fatal error will be raised).
+% \item the package \pkg{piton} must be used with LuaLaTeX exclusively: if
+% another LaTeX engine (|latex|, |pdflatex|, |xelatex|,\dots ) is used, a
+% fatal error will be raised.
+% \end{itemize}
+%
% \medskip
% The package \pkg{piton} provides three tools to typeset Python code: the
% command |\piton|, the environment |{Piton}| and the command |\PitonInputFile|.
@@ -153,15 +154,18 @@ def fact(n):
% \emph{verbatim}. Therefore, it cannot be used in the argument of another
% command (however, it can be used within an environment).
% \item The environment |{Piton}| should be used to typeset multi-lines code.
-%
+% For sake of customization, it's possible to define new environments similar to
+% the environment |{Piton}| with the command |\NewPitonEnvironment|:
+% cf.~\ref{NewPitonEnvironment} p.~\pageref{NewPitonEnvironment}.
% \item The command |\PitonInputFile| is used to insert and typeset a whole
-% external file.
+% external file.
% \end{itemize}
%
% \bigskip
-% It's possible to compose comments in LaTeX by beginning with |##| (it's a
+% It's possible to compose comments in LaTeX by beginning them with |##| (it's a
% ``LaTeX escape''). The characters |##| themselves won't be printed and the
-% spaces after |##| are removed.
+% spaces after |##| are removed. These comments will be called ``LaTeX
+% comments'' in this document.
%
% \section{Customization}
%
@@ -169,7 +173,8 @@ def fact(n):
%
% The command |\PitonOptions| takes in as argument a comma-separated list of
% \textsl{key=value} pairs. The scope of the settings done by that command is
-% the current TeX group.
+% the current TeX group.\footnote{We remind that an LaTeX environment is, in
+% particular, a TeX group.}
%
% \begin{itemize}
% \item The key |gobble| takes in as value a positive integer~$n$: the first $n$
@@ -194,23 +199,27 @@ def fact(n):
% \item With the key |all-line-numbers|, \emph{all} the lines are numbered,
% including the empty ones.
%
-% \item \colorbox{yellow!50}{\textbf{New 0.7}}\enskip By default, the counter of
-% lines is set to zero at the beginning of each environment |{Piton}| or use of
-% |\PitonInputFile|. With the key |resume|, that reinitialisation is not done.
+% \item By default, the counter of lines is set to zero at the beginning of each
+% environment |{Piton}| or use of |\PitonInputFile|. With the key |resume|, that
+% reinitialisation is not done.
%
-% \item \colorbox{yellow!50}{\textbf{New 0.7}}\enskip The key |splittable| allows
-% pages breaks within the environments |{Piton}| and the listings produced by
+% \item The key |splittable| allows pages breaks within the environments
+% |{Piton}| and the listings produced by
% |\PitonInputFile|.
%
-% \item \colorbox{yellow!50}{\textbf{New 0.7}}\enskip The key |background-color|
-% sets the background color of the environments |{Piton}| and the listings
-% produced by |\PitonInputFile| (that background has a width of |\linewidth|).
-% Even with a background color, the pages breaks are allowed, as soon as the key
-% |splittable| is in force.\footnote{The environments \texttt{\{Piton\}} are breakable,
-% even whithin a breakable environment of \pkg{tcolorbox}. Remind that an
-% environment of \pkg{tcolorbox} included in another environment of
-% \pkg{tcolorbox} is \emph{not} breakable, even when both environments use the
-% key |breakable| of \pkg{tcolorbox}.}
+% \item The key |background-color| sets the background color of the environments
+% |{Piton}| and the listings produced by |\PitonInputFile| (that background has
+% a width of |\linewidth|). Even with a background color, the pages breaks are
+% allowed, as soon as the key |splittable| is in force.\footnote{The
+% environments \texttt{\{Piton\}} are breakable, even within a breakable
+% environment of \pkg{tcolorbox}. Remind that an environment of \pkg{tcolorbox}
+% included in another environment of \pkg{tcolorbox} is \emph{not} breakable,
+% even when both environments use the key |breakable| of \pkg{tcolorbox}.}
+%
+% \item \colorbox{yellow!50}{\textbf{New 0.8}}\enskip The key |left-margin|
+% corresponds to a margin on the left. That key may be useful in conjonction
+% with the key |line-numbers| or the key |line-all-numbers| if one does not want
+% the numbers in an overlapping position on the left.
% \end{itemize}
%
% \bigskip
@@ -223,26 +232,41 @@ def fact(n):
% from math import pi
%
% def arctan(x,n=10):
-% """Compute the value of arctan(x)
-% n is the number of terms if the sum"""
+% '''Compute the value of arctan(x)
+% n is the number of terms of the sum'''
% if x < 0:
-% return -arctan(-x) # recursive call
+% return -arctan(-x) # recursive call
% elif x > 1:
-% return pi/2 - arctan(1/x)
-% ## (we have used that $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)
+% return pi/2 - arctan(1/x)
+% ## (we have used that $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)
% else
-% s = 0
-% for k in range(n):
-% s += (-1)**k/(2*k+1)*x**(2*k+1)
-% return s
+% s = 0
+% for k in range(n):
+% s += (-1)**k/(2*k+1)*x**(2*k+1)
+% return s
% \end{Piton}
% \end{Verbatim}
% \endgroup
%
-%
% \begingroup
-% \PitonOptions{line-numbers,auto-gobble,background-color = gray!15}
-% \PitonInputFile{Example1.txt}
+% \PitonOptions{line-numbers,background-color = gray!15}
+% \begin{Piton}
+% from math import pi
+%
+% def arctan(x,n=10):
+% '''Compute the value of arctan(x)
+% n is the number of terms of the sum'''
+% if x < 0:
+% return -arctan(-x) # recursive call
+% elif x > 1:
+% return pi/2 - arctan(1/x)
+% ## (we have used that $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ for $x>0$)
+% else
+% s = 0
+% for k in range(n):
+% s += (-1)**k/(2*k+1)*x**(2*k+1)
+% return s
+% \end{Piton}
% \endgroup
%
% \subsection{The key escape-inside}
@@ -251,7 +275,7 @@ def fact(n):
% (that is to say in the instruction |\usepackage|). For technical reasons, it
% can't be used in the command |\PitonOptions|. That option takes in as value
% two characters which will be used to delimit pieces of code which will
-% thrown directly to LaTeX (and composed by LaTeX).e
+% thrown directly to LaTeX (and composed by LaTeX).
%
% \medskip
% In the following example, we assume that the extension \pkg{piton} has been
@@ -275,21 +299,31 @@ def fact(n):
% \end{Piton}
% \end{Verbatim}
%
-% \PitonInputFile{Example2.txt}
-%
+% \begin{Piton}
+% def fact(n):
+% if n==0:
+% return 1
+% else:
+% $\colorbox{yellow!50}{$return n*fact(n-1)$}$
+% \end{Piton}
+%
% \bigskip
%
% \emph{Caution} : The escape to LaTeX allowed by the characters of
% |escape-inside| is not active in the strings nor in the Python comments
% (however, it's possible to have a whole Python comment composed in LaTeX by
-% beginning it with |##|).
+% beginning it with |##|; such comments are merely called ``LaTeX comments'' in
+% this document).
%
%
% \subsection{The styles}
%
+% \label{styles}
+%
% The package \pkg{piton} provides the command |\SetPitonStyle| to customize the
% different styles used to format the syntactic elements of the Python listings.
-% The customizations done by that command are limited to the current TeX group.
+% The customizations done by that command are limited to the current TeX
+% group.\footnote{We remind that an LaTeX environment is, in particuilar, a TeX group.}
%
% \bigskip
% The command |\SetPitonStyle| takes in as argument a comma-separated list of
@@ -323,8 +357,12 @@ def fact(n):
% With that setting, we will have : \piton{def cube(x) : return x * x * x }
% \endgroup
%
-% \medskip
-% The different styles are described in the table \ref{Semantic}.
+% \bigskip
+% The different styles are described in the table \ref{Semantic}. The initial
+% settings done by \pkg{piton} in |piton.sty| are inspired by the style
+% \pkg{manni} de Pygments.\footnote{See: \url{https://pygments.org/styles/}.
+% Remark that, by default, Pygments provides for its style \pkg{manni} a colored
+% background whose color is the HTML color \texttt{\#F0F3F3}.}
%
%
%
@@ -355,8 +393,8 @@ def fact(n):
% Name.Class & the name of the classes at the point of their definition \\
% Exception & the names of the exceptions (eg: \texttt{SyntaxError}) \\
% Comment & the comments beginning with \verb|#| \\
-% LaTeX & the comments beginning by \verb|##| which are composed in LaTeX by
-% \pkg{piton} (\verb|##| is an espace sequence to LaTeX) \\
+% Comment.LaTeX & the comments beginning by \verb|##| which are composed in LaTeX by
+% \pkg{piton} (and called merely ``LaTeX comments'' in this document) \\
% Keyword.Constant & |True|, |False| and |None| \\
% Keyword & the following keywords :
% \ttfamily assert, break, case, continue, del,
@@ -373,9 +411,12 @@ def fact(n):
%
% \subsection{Creation of new environments}
%
+% \label{NewPitonEnvironment}
+%
% Since the environment |{Piton}| has to catch its body in a special way (more
% or less as verbatim text), it's not possible to construct new environments
-% directly over the environment |{Piton}|
+% directly over the environment |{Piton}| with the classical commands
+% |\newenvironment| or |\NewDocumentEnvironment|.
%
% That's why \pkg{piton} provides a command |\NewPitonEnvironment|. That
% command takes in three mandatory arguments.
@@ -387,7 +428,14 @@ def fact(n):
% With the following instruction, a new environment |{Python}| will be
% constructed with the same behaviour as |{Piton}|:
%
-% \verb|\NewPitonEnvironment{Python}{}{}{}|
+% {\color{gray}\verb|\NewPitonEnvironment{Python}{}{}{}|}
+%
+% \bigskip
+% If one wishes an environment |{Python}| with takes in as optional argument
+% (between square brackets) the keys of the command |\PitonOptions|, it's
+% possible to program as follows:
+%
+% {\color{gray}\verb|\NewPitonEnvironment{Python}{O{}}{\PitonOptions{#1}}{}|}
%
% \bigskip
% If one wishes to format Python code in a box of \pkg{tcolorbox}, it's possible
@@ -400,6 +448,397 @@ def fact(n):
% \end{verbatim}
%
%
+% \section{Advanced features}
+%
+% \subsection{Footnotes in the environments of piton}
+%
+% \label{footnote}
+% If you want to put footnotes in an environment |{Piton}| or
+% (or, more unlikely, in a listing produced by |\PitonInputFile|), you can use a
+% pair |\footnotemark|--|\footnotetext|.
+%
+% \smallskip
+% It's also possible to extract the footnotes with the help of the package
+% \pkg{footnote} or the package \pkg{footnotehyper}.
+%
+% \smallskip
+% If \pkg{piton} is loaded with the option |footnote| (with
+% |\usepackage[footnote]{piton}| or with |\PassOptionsToPackage|), the
+% package \pkg{footnote} is loaded (if it is not yet loaded) and it is used to
+% extract the footnotes.
+%
+% \smallskip
+% If \pkg{piton} is loaded with the option |footnotehyper|, the package
+% \pkg{footnotehyper} is loaded (if it is not yet loaded) ant it is used to
+% extract footnotes.
+%
+% \smallskip
+% Caution: The packages \pkg{footnote} and \pkg{footnotehyper} are incompatible.
+% The package \pkg{footnotehyper} is the successor of the package \pkg{footnote}
+% and should be used preferently. The package \pkg{footnote} has some drawbacks,
+% in particular: it must be loaded after the package \pkg{xcolor} and it is not
+% perfectly compatible with \pkg{hyperref}.
+%
+% \medskip
+% In this document, the package \pkg{piton} has been loaded with the option
+% |footnotehyper|: see the first page of this document for an example of a
+% footnote in an environment |{Piton}|.
+%
+%
+% \section{Examples}
+%
+%
+% \subsection{Line numbering}
+%
+% By default, the numbers of the lines are composed by \pkg{piton} in an
+% overlapping position on the left (by using internally the command |\llap| of LaTeX).
+%
+% In order to avoid that overlapping, it's necessary to reserve a place for the
+% number of the lines with the key |left-margin|.
+%
+%
+%
+% \begingroup
+% \fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+% \begin{Verbatim}
+% ~emphase&\PitonOptions{background-color=gray!10, left-margin = 5mm, line-numbers}@
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x) ## (appel récursif)
+% elif x > 1:
+% return pi/2 - arctan(1/x) ## (autre appel récursif)
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \end{Verbatim}
+% \endgroup
+%
+%
+%
+% \begingroup
+% \PitonOptions{background-color=gray!10,left-margin = 5mm, line-numbers}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x) ## (appel récursif)
+% elif x > 1:
+% return pi/2 - arctan(1/x) ## (autre appel récursif)
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \endgroup
+%
+%
+%
+%
+% \subsection{Formatting of the LaTeX comments}
+%
+% It's possible to modify the style |Comment.LaTeX| (with |\SetPitonStyle|) in
+% order to display the LaTeX comments (which begin with |##|) aligned on the
+% right margin.
+%
+%
+% \begingroup
+% \fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+% \begin{Verbatim}
+% \PitonOptions{background-color=gray!10}
+% ~emphase&\SetPitonStyle{Comment.LaTeX = \hfill \normalfont\color{gray}}@
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x) ## appel récursif
+% elif x > 1:
+% return pi/2 - arctan(1/x) ## autre appel récursif
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \end{Verbatim}
+% \endgroup
+%
+% \begingroup
+% \PitonOptions{background-color=gray!10}
+% \SetPitonStyle{Comment.LaTeX = \hfill \normalfont\color{gray}}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x) ## appel récursif
+% elif x > 1:
+% return pi/2 - arctan(1/x) ## autre appel récursif
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \endgroup
+%
+%
+% \vspace{1cm}
+% It's also possible to display these LaTeX comments in a kind of second column
+% by limiting the width of the Python code by an environment |{minipage}| of LaTeX.
+%
+%
+% \begingroup
+% \fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+% \begin{Verbatim}
+% \PitonOptions{background-color=gray!10}
+% ~emphase&\NewDocumentCommand{\MyLaTeXCommand}{m}{\hfill \normalfont\itshape\rlap{\quad #1}}@
+% ~emphase&\SetPitonStyle{Comment.LaTeX = \MyLaTeXCommand}@
+% ~emphase&\begin{minipage}{12cm}@
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x) ## appel récursif
+% elif x > 1:
+% return pi/2 - arctan(1/x) ## autre appel récursif
+% else:
+% s = 0
+% for k in range(n):
+% s += (-1)**k/(2*k+1)*x**(2*k+1)
+% return s
+% \end{Piton}
+% ~emphase&\end{minipage}@
+% \end{Verbatim}
+% \endgroup
+%
+%
+%
+% \begingroup
+% \PitonOptions{background-color=gray!10}
+% \NewDocumentCommand{\MyLaTeXCommand}{m}{\hfill \normalfont\itshape\rlap{\quad #1}}
+% \SetPitonStyle{Comment.LaTeX = \MyLaTeXCommand}
+% \begin{minipage}{12cm}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x) ## appel récursif
+% elif x > 1:
+% return pi/2 - arctan(1/x) ## autre appel récursif
+% else:
+% s = 0
+% for k in range(n):
+% s += (-1)**k/(2*k+1)*x**(2*k+1)
+% return s
+% \end{Piton}
+% \end{minipage}
+% \endgroup
+%
+%
+%
+% \subsection{Notes in the listings}
+%
+% In order to be able to extract the notes (which are typeset with the command
+% |\footnote|, the extension \pkg{piton} must be loaded with the key |footnote|
+% or the key |footenotehyper| as explained in the section \ref{footnote}
+% p.~\pageref{footnote}. In this document, the extension \pkg{piton} has been
+% loaded with the key |footnotehyper|.
+%
+% Of course, in an environment |{Piton}|, a command |\footnote| may appear only
+% within a LaTeX comment (which begins with |##|). It's possible to have comments
+% which contain only that command |\footnote|. That's the case in the following example.
+%
+%
+%
+% \begingroup
+% \fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+% \begin{Verbatim}
+% \PitonOptions{background-color=gray!10}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x)~emphase&##\footnote{First recursive call.}]@
+% elif x > 1:
+% return pi/2 - arctan(1/x)~emphase&##\footnote{Second recursive call.}@
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \end{Verbatim}
+% \endgroup
+%
+% \begingroup
+% \PitonOptions{background-color=gray!10}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x)##\footnote{First recursive call.}
+% elif x > 1:
+% return pi/2 - arctan(1/x)##\footnote{Second recursive call.}
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \endgroup
+%
+%
+% \vspace{1cm}
+%
+% If an environment |{Piton}| is used in an environment |{minipage}| of LaTeX,
+% the notes are composed, of course, at the foot of the environment
+% |{minipage}|. Recall that such |{minipage}| can't be broken by a page break.
+
+%
+% \begingroup
+% \fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+% \begin{Verbatim}
+% \PitonOptions{background-color=gray!10}
+% \emphase\begin{minipage}{\linewidth}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x)~emphase&##\footnote{First recursive call.}@
+% elif x > 1:
+% return pi/2 - arctan(1/x)~emphase&##\footnote{Second recursive call.}@
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \end{minipage}
+% \end{Verbatim}
+% \endgroup
+%
+% \begingroup
+% \PitonOptions{background-color=gray!10}
+% \begin{minipage}{\linewidth}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x)##\footnote{First recursive call.}
+% elif x > 1:
+% return pi/2 - arctan(1/x)##\footnote{Second recursive call.}
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \end{minipage}
+% \endgroup
+%
+%
+% \vspace{1cm}
+% If one embed an environment |{Piton}| in an environment |{minipage}|
+% (typically in order to limit the width of a colored background), it's
+% necessary to embed the whole environment |{minipage}| in an environment
+% |{savenotes}| (of \pkg{footnote} or \pkg{footnotehyper}) in order to have the
+% footnotes composed at the bottom of the page.
+%
+% \begingroup
+% \fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+% \begin{Verbatim}
+% \PitonOptions{background-color=gray!10}
+% ~emphase&\begin{savenotes}@
+% \begin{minipage}{13cm}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x)~emphase&##\footnote{First recursive call.}@
+% elif x > 1:
+% return pi/2 - arctan(1/x)~emphase&##\footnote{Second recursive call.}@
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \end{minipage}
+% ~emphase&\end{savenotes}@
+% \end{Verbatim}
+% \endgroup
+%
+%
+%
+% \begin{savenotes}
+% \PitonOptions{background-color=gray!10}
+% \begin{minipage}{13cm}
+% \begin{Piton}
+% def arctan(x,n=10):
+% if x < 0:
+% return -arctan(-x)##\footnote{First recursive call.}
+% elif x > 1:
+% return pi/2 - arctan(1/x)##\footnote{Second recursive call.}
+% else:
+% return sum( (-1)**k/(2*k+1)*x**(2*k+1) for k in range(n) )
+% \end{Piton}
+% \end{minipage}
+% \end{savenotes}
+%
+%
+% \subsection{An example of tuning of the styles}
+%
+% The graphical styles have been presented in the section \ref{styles},
+% p.~\pageref{styles}.
+%
+% \smallskip
+% We present now an example of tuning of these styles adapted to the documents
+% in black and white. We use the font \emph{DejaVu Sans Mono}\footnote{See:
+% \url{https://dejavu-fonts.github.io}} specified by the command |\setmonofont| of
+% \pkg{fontspec}.
+%
+%
+% \begin{Verbatim}
+% \setmonofont[Scale=0.85]{DejaVu Sans Mono}
+%
+% \SetPitonStyle
+% {
+% Number = ,
+% String = \itshape ,
+% String.Doc = \color{gray} \slshape ,
+% Operator = ,
+% Operator.Word = \bfseries ,
+% Name.Builtin = ,
+% Name.Function = \bfseries \colorbox{gray!20} ,
+% Comment = \color{gray} ,
+% Comment.LaTeX = \color{gray},
+% Keyword = \bfseries ,
+% Name.Namespace = ,
+% Name.Class = ,
+% Name.Type = ,
+% InitialValues = \color{gray}
+% }
+% \end{Verbatim}
+%
+%
+% \begingroup
+%
+% \setmonofont[Scale=0.85]{DejaVu Sans Mono}
+%
+% \PitonOptions{splittable}
+%
+% \SetPitonStyle
+% {
+% Number = ,
+% String = \itshape ,
+% String.Doc = \color{gray} \slshape ,
+% Operator = ,
+% Operator.Word = \bfseries ,
+% Name.Builtin = ,
+% Name.Function = \bfseries \colorbox{gray!20} ,
+% Comment = \color{gray} ,
+% Comment.LaTeX = \color{gray} ,
+% Keyword = \bfseries ,
+% Name.Namespace = ,
+% Name.Class = ,
+% Name.Type = ,
+% InitialValues = \color{gray}
+% }
+%
+%
+% \bigskip
+%
+% \begin{Piton}
+% from math import pi
+%
+% def arctan(x,n=10):
+% '''Compute the value of arctan(x)
+% n is the number of terms if the sum'''
+% if x < 0:
+% return -arctan(-x) # appel récursif
+% elif x > 1:
+% return pi/2 - arctan(1/x)
+% ## (we have used that $\arctan(x)+\arctan(1/x)=\pi/2$ for $x>0$)
+% else:
+% s = 0
+% for k in range(n):
+% s += (-1)**k/(2*k+1)*x**(2*k+1)
+% return s
+% \end{Piton}
+%
+% \endgroup
+%
+%
+% \bigskip
+% The previous example has been composed while the key |splittable| (of
+% |\PitonOptions|) is in force. That's why a page break may have occurred.
% \clearpage
%
% \section{Implementation}
@@ -427,10 +866,27 @@ def fact(n):
% \end{macrocode}
%
% \bigskip
+% The boolean |\c_@@_footnotehyper_bool| will indicate if the option
+% |footnotehyper| is used.
+% \begin{macrocode}
+\bool_new:N \c_@@_footnotehyper_bool
+% \end{macrocode}
+%
+% \medskip
+% The boolean |\c_@@_footnote_bool| will indicate if the option |footnote| is
+% used, but quicky, it will also be set to |true| if the option |footnotehyper|
+% is used.
+% \begin{macrocode}
+\bool_new:N \c_@@_footnote_bool
+% \end{macrocode}
+%
+% \bigskip
% We define a set of keys for the options at load-time.
% \begin{macrocode}
\keys_define:nn { piton / package }
{
+ footnote .bool_set:N = \c_@@_footnote_bool ,
+ footnotehyper .bool_set:N = \c_@@_footnotehyper_bool ,
escape-inside .tl_set:N = \c_@@_escape_inside_tl ,
escape-inside .initial:n = ,
unknown .code:n = \msg_error:nn { piton } { unknown~key~for~package }
@@ -441,9 +897,9 @@ def fact(n):
\msg_new:nnn { piton } { unknown~key~for~package }
{
Unknown~key.\\
- You~have~used~the~key~'\l_keys_key_str'~but~the~only~key~available~here~
- is~the~key~'escape-inside'.~Other~keys~are~available~in~\token_to_str:N
- \PitonOptions.\\
+ You~have~used~the~key~'\l_keys_key_str'~but~the~only~keys~available~here~
+ are~'escape-inside',~'footnote'~and~'footnotehyper'.~Other~keys~are~
+ available~in~\token_to_str:N \PitonOptions.\\
That~key~will~be~ignored.
}
% \end{macrocode}
@@ -490,10 +946,79 @@ def fact(n):
% \end{macrocode}
%
%
+% \begin{macrocode}
+\msg_new:nnn { piton } { footnote~with~footnotehyper~package }
+ {
+ Footnote~forbidden.\\
+ You~can't~use~the~option~'footnote'~because~the~package~
+ footnotehyper~has~already~been~loaded.~
+ If~you~want,~you~can~use~the~option~'footnotehyper'~and~the~footnotes~
+ within~the~environments~of~piton~will~be~extracted~with~the~tools~
+ of~the~package~footnotehyper.\\
+ If~you~go~on,~the~package~footnote~won't~be~loaded.
+ }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\msg_new:nnn { piton } { footnotehyper~with~footnote~package }
+ {
+ You~can't~use~the~option~'footnotehyper'~because~the~package~
+ footnote~has~already~been~loaded.~
+ If~you~want,~you~can~use~the~option~'footnote'~and~the~footnotes~
+ within~the~environments~of~piton~will~be~extracted~with~the~tools~
+ of~the~package~footnote.\\
+ If~you~go~on,~the~package~footnotehyper~won't~be~loaded.
+ }
+% \end{macrocode}
+%
+% \medskip
+% \begin{macrocode}
+\bool_if:NT \c_@@_footnote_bool
+ {
+% \end{macrocode}
+% The class \cls{beamer} has its own system to extract footnotes and that's why
+% we have nothing to do if \cls{beamer} is used.
+% \begin{macrocode}
+ \@ifclassloaded { beamer }
+ { \bool_set_false:N \c_@@_footnote_bool }
+ {
+ \@ifpackageloaded { footnotehyper }
+ { \@@_error:n { footnote~with~footnotehyper~package } }
+ { \usepackage { footnote } }
+ }
+ }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\bool_if:NT \c_@@_footnotehyper_bool
+ {
+% \end{macrocode}
+% The class \cls{beamer} has its own system to extract footnotes and that's why
+% we have nothing to do if \cls{beamer} is used.
+% \begin{macrocode}
+ \@ifclassloaded { beamer }
+ { \bool_set_false:N \c_@@_footnote_bool }
+ {
+ \@ifpackageloaded { footnote }
+ { \@@_error:n { footnotehyper~with~footnote~package } }
+ { \usepackage { footnotehyper } }
+ \bool_set_true:N \c_@@_footnote_bool
+ }
+ }
+% \end{macrocode}
+% The flag |\c_@@_footnote_bool| is raised and so, we will only have to test
+% |\c_@@_footnote_bool| in order to know if we have to insert an environment
+% |{savenotes}|.
%
% \medskip
% \subsection{Parameters}
%
+% The following token list will contains the (potential) informations to write
+% on the |aux| (to be used in the next compilation).
+% \begin{macrocode}
+\tl_new:N \g_@@_aux_tl
+% \end{macrocode}
+%
% \medskip
% The following flag corresponds to the key |splittable| of |\PitonOptions|.
% \begin{macrocode}
@@ -501,11 +1026,41 @@ def fact(n):
% \end{macrocode}
%
% \medskip
-% The following string corresponds to the key |background-color|.
+% The following string corresponds to the key |background-color| of |\PitonOptions|.
% \begin{macrocode}
\str_new:N \l_@@_background_color_str
% \end{macrocode}
+%
+% \medskip
+% We will compute the maximal width of the lines of an environment |{Piton}| in
+% |\l_@@_width_dim|.
+% \begin{macrocode}
+\dim_new:N \l_@@_width_dim
+% \end{macrocode}
+% The value of that dimension as written on the |aux| file will be stored in
+% |\l_@@_width_on_aux_dim|.
+% \begin{macrocode}
+\dim_new:N \l_@@_width_on_aux_dim
+% \end{macrocode}
+%
+% \medskip
+% We will count the environments |{Piton}| (and, in fact, also the commands
+% |\PitonInputFile|, despite the name |\g_@@_env_int|).
+% \begin{macrocode}
+\int_new:N \g_@@_env_int
+% \end{macrocode}
%
+% \medskip
+% The following boolean corresponds to the key |slim| of |\PitonOptions|.
+% \begin{macrocode}
+\bool_new:N \l_@@_slim_bool
+% \end{macrocode}
+%
+% \medskip
+% The following dimension corresponds to the key |left-margin| of |\PitonOptions|.
+% \begin{macrocode}
+\dim_new:N \l_@@_left_margin_dim
+% \end{macrocode}
%
% \subsection{The gobbling mechanism}
%
@@ -531,14 +1086,24 @@ def fact(n):
% \begin{macrocode}
\cs_set_protected:Npn \@@_begin_line: #1 \@@_end_line:
{
+ \bool_lazy_and:nnT \l_@@_splittable_bool \c_@@_footnote_bool
+ { \begin { savenotes } }
% \end{macrocode}
-% Be careful: the following |\hbox_set:Nn| et |\hbox_set_to_wd:Nnn| take in an
-% argument by curryfication.
+%
+% Be careful: there is curryfication in the following lines.
% \begin{macrocode}
- \str_if_empty:NTF \l_@@_background_color_str
+ \bool_if:NTF \l_@@_slim_bool
{ \hbox_set:Nn \l_tmpa_box }
- { \hbox_set_to_wd:Nnn \l_tmpa_box \linewidth }
{
+ \str_if_empty:NTF \l_@@_background_color_str
+ { \hbox_set_to_wd:Nnn \l_tmpa_box \linewidth }
+ {
+ \hbox_set_to_wd:Nnn \l_tmpa_box
+ { \dim_eval:n { \linewidth - 0.5 em } }
+ }
+ }
+ {
+ \skip_horizontal:N \l_@@_left_margin_dim
\bool_if:NT \l_@@_line_numbers_bool
{
\bool_if:NF \l_@@_all_line_numbers_bool
@@ -547,26 +1112,35 @@ def fact(n):
}
\strut
\str_if_empty:NF \l_@@_background_color_str \space
- #1 \hfill
+ #1 \hfil
}
- \box_set_dp:Nn \l_tmpa_box { \box_dp:N \l_tmpa_box + 1 pt }
- \box_set_ht:Nn \l_tmpa_box { \box_ht:N \l_tmpa_box + 1.5 pt }
+% \end{macrocode}
+% We compute in |\l_@@_width_dim| the maximal width of the lines of the
+% environments.
+% \begin{macrocode}
+ \dim_compare:nNnT { \box_wd:N \l_tmpa_box } > \l_@@_width_dim
+ { \dim_set:Nn \l_@@_width_dim { \box_wd:N \l_tmpa_box } }
+ \box_set_dp:Nn \l_tmpa_box { \box_dp:N \l_tmpa_box + 1.25 pt }
+ \box_set_ht:Nn \l_tmpa_box { \box_ht:N \l_tmpa_box + 1.25 pt }
\tl_if_empty:NTF \l_@@_background_color_str
{ \box_use_drop:N \l_tmpa_box }
{
\vbox_top:n
{
- \hbox_to_wd:nn \linewidth
+ \hbox:n
{
\exp_args:NV \color \l_@@_background_color_str
\vrule height \box_ht:N \l_tmpa_box
depth \box_dp:N \l_tmpa_box
- width \linewidth
+ width \l_@@_width_on_aux_dim
}
\skip_vertical:n { - \box_ht_plus_dp:N \l_tmpa_box }
- \box_use_drop:N \l_tmpa_box
+ \box_set_wd:Nn \l_tmpa_box \l_@@_width_on_aux_dim
+ \box_use_drop:N \l_tmpa_box
}
}
+ \bool_lazy_and:nnT \l_@@_splittable_bool \c_@@_footnote_bool
+ { \end { savenotes } }
\vspace { - 2.5 pt }
}
% \end{macrocode}
@@ -610,10 +1184,14 @@ def fact(n):
all-line-numbers .value_forbidden:n = true ,
resume .bool_set:N = \l_@@_resume_bool ,
resume .value_forbidden:n = true ,
- splittable .bool_set:N = \l_@@_splittable_bool ,
- splittable .default:n = true ,
+ splittable .bool_set:N = \l_@@_splittable_bool ,
+ splittable .default:n = true ,
background-color .str_set:N = \l_@@_background_color_str ,
background-color .value_required:n = true ,
+ slim .bool_set:N = \l_@@_slim_bool ,
+ slim .default:n = true ,
+ left-margin .dim_set:N = \l_@@_left_margin_dim ,
+ left-margin .value_required:n = true ,
unknown .code:n =
\msg_error:nn { piton } { Unknown~key~for~PitonOptions }
}
@@ -626,7 +1204,7 @@ def fact(n):
Unknown~key. \\
The~key~'\l_keys_key_str'~is~unknown~for~\token_to_str:N \PitonOptions.~The~
available~keys~are:~all-line-numbers,~auto-gobble,~env-gobble,~gobble,~
- line-numbers,~resume~and~splittable.\\
+ left-margin,~line-numbers,~resume,~slim~and~splittable.\\
If~you~go~on,~that~key~will~be~ignored.
}
% \end{macrocode}
@@ -655,12 +1233,49 @@ def fact(n):
\hbox_overlap_left:n
{
{ \color { gray } \footnotesize \int_to_arabic:n \g_@@_line_int }
- \quad
+ \skip_horizontal:n { 0.4 em }
}
}
% \end{macrocode}
%
%
+% \medskip
+% \subsection{The command to write on the aux file}
+%
+%
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_write_aux:
+ {
+ \tl_if_empty:NF \g_@@_aux_tl
+ {
+ \iow_now:Nn \@mainaux { \ExplSyntaxOn }
+ \iow_now:Nx \@mainaux
+ {
+ \tl_gset:cn { c_@@_ \int_use:N \g_@@_env_int _ tl }
+ { \exp_not:V \g_@@_aux_tl }
+ }
+ \iow_now:Nn \@mainaux { \ExplSyntaxOff }
+ }
+ \tl_gclear:N \g_@@_aux_tl
+ }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_width_to_aux:
+ {
+ \bool_if:NT \l_@@_slim_bool
+ {
+ \str_if_empty:NF \l_@@_background_color_str
+ {
+ \tl_gput_right:Nx \g_@@_aux_tl
+ {
+ \dim_set:Nn \l_@@_width_on_aux_dim
+ { \dim_use:N \l_@@_width_dim + 0.5 em }
+ }
+ }
+ }
+ }
+% \end{macrocode}
%
% \medskip
% \subsection{The main commands and environments for the final user}
@@ -695,12 +1310,24 @@ def fact(n):
% \begin{macrocode}
\NewDocumentCommand { \PitonInputFile } { m }
{
+ \int_gincr:N \g_@@_env_int
+ \tl_gclear:N \g_@@_aux_tl
+ \tl_if_exist:cT { c_@@ _ \int_use:N \g_@@_env_int _ tl }
+ { \use:c { c_@@ _ \int_use:N \g_@@_env_int _ tl } }
+ \bool_if:NF \l_@@_splittable_bool
+ { \bool_if:NT \c_@@_footnote_bool { \begin { savenotes } } }
+ \dim_compare:nNnT \l_@@_width_on_aux_dim = \c_zero_dim
+ { \dim_set_eq:NN \l_@@_width_on_aux_dim \linewidth }
\bool_if:NF \l_@@_resume_bool { \int_gzero:N \g_@@_line_int }
\group_begin:
\dim_set_eq:NN \parindent \c_zero_dim
\ttfamily
\lua_now:e { ParseFile(token.scan_argument()) } { #1 }
+ \@@_width_to_aux:
\group_end:
+ \@@_write_aux:
+ \bool_if:NF \l_@@_splittable_bool
+ { \bool_if:NT \c_@@_footnote_bool { \end { savenotes } } }
}
% \end{macrocode}
%
@@ -708,7 +1335,8 @@ def fact(n):
% \bigskip
% \begin{macrocode}
\NewDocumentCommand { \NewPitonEnvironment } { m m m m }
- {
+ {
+ \dim_zero:N \parindent
% \end{macrocode}
% We construct a TeX macro which will catch as argument all the tokens until
% |\end{|\texttt{\textsl{name_env}}|}| with, in that
@@ -725,8 +1353,17 @@ def fact(n):
}
{
\group_end:
- \mode_if_vertical:TF \mode_leave_vertical: \newline
- \bool_if:NF \l_@@_splittable_bool \vbox_top:n
+ \mode_if_vertical:TF
+ { \mode_leave_vertical: }
+ \newline
+% \end{macrocode}
+% Be careful: there is curryfication in the following code.
+% \begin{macrocode}
+ \bool_if:NF \l_@@_splittable_bool
+ {
+ \bool_if:NT \c_@@_footnote_bool { \begin { savenotes } }
+ \vbox_top:n
+ }
{
\ttfamily
\dim_zero:N \lineskip
@@ -748,12 +1385,16 @@ def fact(n):
}
{ ##1 }
\vspace { 2.5 pt }
+ \@@_width_to_aux:
}
+ \bool_if:NF \l_@@_splittable_bool
+ { \bool_if:NT \c_@@_footnote_bool { \end { savenotes } } }
% \end{macrocode}
% The following |\end{#1}| is only for the groups and the stack of
% environments of LaTeX.
% \begin{macrocode}
\end { #1 }
+ \@@_write_aux:
}
% \end{macrocode}
%
@@ -766,6 +1407,12 @@ def fact(n):
\NewDocumentEnvironment { #1 } { #2 }
{
#3
+ \int_gincr:N \g_@@_env_int
+ \tl_gclear:N \g_@@_aux_tl
+ \tl_if_exist:cT { c_@@ _ \int_use:N \g_@@_env_int _ tl }
+ { \use:c { c_@@ _ \int_use:N \g_@@_env_int _ tl } }
+ \dim_compare:nNnT \l_@@_width_on_aux_dim = \c_zero_dim
+ { \dim_set_eq:NN \l_@@_width_on_aux_dim \linewidth }
\bool_if:NF \l_@@_resume_bool { \int_gzero:N \g_@@_line_int }
\group_begin:
\box_clear:N \l_tmpa_box
@@ -999,7 +1646,10 @@ lpeg.locale(lpeg) -- mandatory
local alpha , digit , space , punct = lpeg.alpha , lpeg.digit , lpeg.space , lpeg.punct
-local letter = alpha + S"âàçéèêëïîôûüÂÀÇÉÈÊËÏÎÔÛÜ_"
+-- Remember that à, â, ç, etc. are strings of length 2 (2 bytes)
+local letter = alpha + P "_"
+ + P "â" + P "à" + P "ç" + P "é" + P "è" + P "ê" + P "ë" + P "ï" + P "î" + P "ô" + P "û" + P "ü" +
+ P "Â" + P "À" + P "Ç" + P "É" + P "È" + P "Ê" + P "Ë" + P "Ï" + P "Î" + P "Ô" + P "Û" + P "Ü"
local alphanum = letter + digit
@@ -1310,7 +1960,6 @@ local Set = C ( P "{" )
* ItemOfSet * ( C ( P "," ) * ItemOfSet ) ^ 0
* C ( P "}" )
-
local Operator = K ( P "!=" + P "==" + P "<<" + P ">>" + S "-~+/*%=<>&.@|" , 'Operator')
local OperatorWord = K ( P "in" + P "is" + P "and" + P "or" + P "not" , 'Operator.Word')
@@ -1450,8 +2099,14 @@ end
% New keys |resume|, |splittable| and |background-color| in |\PitonOptions|.
%
% The file |piton.lua| has been embedded in the file |piton.sty|. That means
-% that the extension \pkg{piton} is now enterily contained in the file |piton.sty|.
+% that the extension \pkg{piton} is now entirely contained in the file |piton.sty|.
+%
+% \subsection*{Changes between versions 0.7 and 0.8}
%
+% New keys |footnote| and |footnotehyper| at load-time.
+%
+% New key |left-margin|.
+%
% \end{document}
%
%
diff --git a/macros/luatex/latex/piton/piton.pdf b/macros/luatex/latex/piton/piton.pdf
index 13e8b7f729..f13c17881b 100644
--- a/macros/luatex/latex/piton/piton.pdf
+++ b/macros/luatex/latex/piton/piton.pdf
Binary files differ
diff --git a/macros/unicodetex/latex/njuthesis/njuthesis.dtx b/macros/unicodetex/latex/njuthesis/njuthesis.dtx
index ced6a7f27e..b3da068451 100644
--- a/macros/unicodetex/latex/njuthesis/njuthesis.dtx
+++ b/macros/unicodetex/latex/njuthesis/njuthesis.dtx
@@ -20,8 +20,9 @@
% This work consists of the files njuthesis.dtx,
% and the derived files njuthesis.ins,
% njuthesis.cls,
-% njuthesis-undergraduate.def,
% njuthesis-graduate.def,
+% njuthesis-postdoctoral.def,
+% njuthesis-undergraduate.def,
% njuthesis.pdf,
% and README.md.
%
@@ -61,7 +62,7 @@ the LaTeX Project Public License, either version 1.3c 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
+ 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.
@@ -118,7 +119,7 @@ To produce the documentation run the original source files ending with
%<*!(driver|install)>
% ^^A 诚耀百廿,雄创一流
% ^^A 南京大学一百二十周年华诞邀您共襄盛举!
-%<+!driver>\GetIdInfo $Id: njuthesis.dtx 1.0.0 2022-08-08 14:50:00
+%<+!driver>\GetIdInfo $Id: njuthesis.dtx 1.1.0 2022-10-23 12:30:00
%<+!driver> +0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
%<class> {Thesis template for Nanjing University}
%<class>\ProvidesExplClass{njuthesis}
@@ -134,15 +135,17 @@ To produce the documentation run the original source files ending with
%<*driver>
\ProvidesFile{njuthesis.dtx}
\documentclass[fontset=fandol]{ctxdoc}
-\usepackage{listings,njuvisual,tabularray,unicode-math,zhlineskip}
+\usepackage{listings,njuvisual,tabularray,unicode-math,xeCJKfntef,zhlineskip}
\usepackage[firstpage=true]{background}
\backgroundsetup{
contents={\njuemblem[white!85!gray]{22cm}{!}},
scale=1, angle=0, hshift=-4cm
}
\definecolor{olgreen}{HTML}{138a07}
+\renewcommand\emph[1]{\CJKunderdot[textformat=\itshape]{#1}}
\newcommand\olbutton[1]{\textcolor{olgreen}{\bfseries #1}}
\newcommand\tikzlogo{Ti\emph{k}Z}
+\newcommand\OPT[1]{\textcolor{njuyellow}{\bfseries#1}}
\hypersetup{
pdftitle = {
The njuthesis class -
@@ -216,7 +219,8 @@ To produce the documentation run the original source files ending with
alsoletter = {*, -, .},
texcsstyle = *\color{njuviolet},
emphstyle = [1]\color{nju-ai-orange},
- emphstyle = [2]\color{nju-cs-green}
+ emphstyle = [2]\color{nju-cs-green},
+ emphstyle = [3]\bfseries\color{njuyellow}
}
\lstnewenvironment{shellexample}[1][]{%
\lstset{style=style@shell, #1}}{}
@@ -351,7 +355,7 @@ To produce the documentation run the original source files ending with
% \thanks{E-mail: \href{mailto:git+nju-lug-email-3104-issue-@yaoge123.cn}
% {git+nju-lug-email-3104-issue-@yaoge123.cn}}}
%
-% \date{v1.0.0 \quad 2022-08-08}
+% \date{v1.1.0 \quad 2022-10-23}
%
% \changes{v0.1}{2021/09/04}{开始开发。}
% \changes{v0.2}{2021/09/07}{初步搭建了可用的模板。}
@@ -389,17 +393,17 @@ To produce the documentation run the original source files ending with
% \maketitle
%
% \begin{abstract}
-% 南京大学学位论文 \LaTeX 模板 \cls{njuthesis} 基于本科生院的论文撰写
-% 规范制作,同时参考研究生院提供的硕士、博士学位材料包,用于生成符合南京大学学
-% 位论文排版要求和相应的国家规范、行业标准的学位论文,旨在为同学提供毕业论文书
-% 写的方便。
+% \cls{njuthesis} 是制作南京大学本科生毕业论文、研究生学位论文、博士后出站报告的
+% \LaTeX 文档类。本模板基于本科生院的论文撰写规范制作,同时参考研究生院提供的硕士、
+% 博士学位材料包,用于生成符合南京大学排版要求和相应的国家规范、行业标准的学位论
+% 文,力求通过 \LaTeX3 语法实现清晰的实现逻辑、较高的可定制性以及友好的用户接口。
% \end{abstract}
%
% \def\abstractname{Abstract}
% \begin{abstract}
% The \cls{njuthesis} class is intended for typesetting Nanjing University
% dissertations with \LaTeX, providing support for bachelor, master,
-% and doctoral thesis.
+% doctoral theses as well as postdoctoral reports.
% \end{abstract}
%
% \vspace{2cm}
@@ -652,6 +656,7 @@ To produce the documentation run the original source files ending with
% \file{njuthesis-sample.bib} & 示例参考文献列表 \\
% \file{njuthesis-sample.tex} & 示例文档,不妨以此为基础撰写论文 \\
% \file{njuthesis-graduate.def} & 研究生参数配置文件 \\
+% \file{njuthesis-postdoctoral.def} & 博士后参数配置文件 \\
% \file{njuthesis-undergraduate.def} & 本科生参数配置文件 \\
% \file{README.md} & 自述文件 \\
% \bottomrule
@@ -829,7 +834,7 @@ To produce the documentation run the original source files ending with
% \begin{description}
% \item[Perl] 一般预装于 macOS 和 Linux,而 Windows 用户需要单独安装
% \href{https://strawberryperl.com/}{Strawberry Perl}。
-% \item[\pkg{latexmk}] 如果终端找不到 |latexmk| 命令,需使用包管理器单独安装。
+% \item[\normalfont\pkg{latexmk}] 如果终端找不到 |latexmk| 命令,需使用包管理器单独安装。
% \end{description}
%
% 该命令的使用方法为
@@ -960,15 +965,15 @@ To produce the documentation run the original source files ending with
% \subsubsection{学位信息}
% \begin{function}[added=2021-09-07,updated=2022-07-23]{type}
% \begin{syntax}
-% type = <(bachelor)|master|doctor|postdoc>
+% \OPT{type} = <(bachelor)|master|doctor|postdoc>
% \end{syntax}
-% 选择毕业论文模板类型,这将决定模板整体的外观。
-% 可选值分别为学士(本科生)、硕士研究生和博士研究生,默认为学士。
+% 选择毕业论文模板类型,这将决定模板整体的外观。可选值分别为
+% 学士(本科生)、硕士研究生、博士研究生和博士后,默认为学士。
% \end{function}
%
% \begin{function}[added=2021-09-07,updated=2022-07-01]{degree}
% \begin{syntax}
-% degree = <(academic)|professional>
+% \OPT{degree} = <(academic)|professional>
% \end{syntax}
% 选择研究生的学位类型。可选值分别学术型和专业型,默认为学术型。
% \end{function}
@@ -978,7 +983,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2021-09-07,updated=2022-07-05]{nl-cover}
% \begin{syntax}
-% nl-cover = <\TFF>
+% \OPT{nl-cover} = <\TFF>
% \end{syntax}
% 是否使用国家图书馆封面,默认关闭。
% \end{function}
@@ -988,7 +993,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[updated=2022-01-06]{decl-page}
% \begin{syntax}
-% decl-page = <\TFF>
+% \OPT{decl-page} = <\TFF>
% \end{syntax}
% 是否需要自动生成声明页面,默认关闭。
% \end{function}
@@ -1009,7 +1014,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-01-14]{oneside,twoside}
% \begin{syntax}
-% <oneside|(twoside)>
+% <\OPT{oneside}|(\OPT{twoside})>
% \end{syntax}
% 开启单面或双面模式,默认为双面模式。
% \end{function}
@@ -1022,7 +1027,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2021-12-15]{draft}
% \begin{syntax}
-% draft = <\TFF>
+% \OPT{draft} = <\TFF>
% \end{syntax}
% 是否开启草稿模式,默认关闭。
% \end{function}
@@ -1042,9 +1047,9 @@ To produce the documentation run the original source files ending with
% 宏包的代码环境不会显示内容,具体效果需要参照各个宏包的说明文档。
% 如需抵消草稿模式的影响,请使用 \opt{final} 选项载入相关宏包。
%
-% \begin{function}[added=2022-04-19,updated=2022-07-04]{anonymous}
+% \begin{function}[added=2022-04-19,updated=2022-09-26]{anonymous}
% \begin{syntax}
-% anonymous = <\TFF>
+% \OPT{anonymous} = <\TFF>
% \end{syntax}
% 是否开启盲审模式。
% \end{function}
@@ -1054,6 +1059,7 @@ To produce the documentation run the original source files ending with
% \item 不显示校名校徽图片
% \item 不显示“南京大学”字样
% \item 不显示作者、导师等基本信息
+% \item 不显示声明页、致谢页
% \end{itemize}
%
%
@@ -1068,31 +1074,31 @@ To produce the documentation run the original source files ending with
% footmisc,
% unicode-math}
% \begin{syntax}
-% biblatex = <\TTF>
-% cleveref = <\TTF>
-% ntheorem = <\TTF>
-% enumitem = <\TTF>
-% footmisc = <\TTF>
-% unicode-math = <\TTF>
+% \OPT{biblatex} = <\TTF>
+% \OPT{cleveref} = <\TTF>
+% \OPT{ntheorem} = <\TTF>
+% \OPT{enumitem} = <\TTF>
+% \OPT{footmisc} = <\TTF>
+% \OPT{unicode-math} = <\TTF>
% \end{syntax}
% 是否默认载入某些宏包,默认均是。选项名和宏包名是一致的。
% \end{function}
%
% \begin{function}[added=2022-08-03]{minimal}
% \begin{syntax}
-% <minimal>
+% <\OPT{minimal}>
% \end{syntax}
% 最小化模式,禁用所有上述宏包。
% \end{function}
%
% 本模板内置了一系列宏包以进行功能扩展。这些宏包为:
% \begin{description}
-% \item[\pkg{biblatex}] 复杂参考文献数据的处理。
-% \item[\pkg{cleveref}] 按来源类型自动处理引用标签。
-% \item[\pkg{ntheorem}] 定理类环境定制。
-% \item[\pkg{enumitem}] 列表环境样式定制。
-% \item[\pkg{footmisc}] 脚注样式定制。
-% \item[\pkg{unicode-math}] 支持 Unicode 数学字体。
+% \item[\normalfont\pkg{biblatex}] 复杂参考文献数据的处理。
+% \item[\normalfont\pkg{cleveref}] 按来源类型自动处理引用标签。
+% \item[\normalfont\pkg{ntheorem}] 定理类环境定制。
+% \item[\normalfont\pkg{enumitem}] 列表环境样式定制。
+% \item[\normalfont\pkg{footmisc}] 脚注样式定制。
+% \item[\normalfont\pkg{unicode-math}] 支持 Unicode 数学字体。
% \end{description}
%
% 在某些情况下,这些宏包会与旧有的经验方法冲突,可以使用上述选项在模板
@@ -1102,7 +1108,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-02-23]{config}
% \begin{syntax}
-% config = \Arg{文件}
+% \OPT{config} = \Arg{文件}
% \end{syntax}
% 配置文件路径。
% \end{function}
@@ -1118,8 +1124,8 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2021-09-07,updated=2021-12-18]{cjk-font,latin-font}
% \begin{syntax}
-% cjk-font = <win|mac|fandol|founder|noto|source|none>
-% latin-font = <win|mac|gyre|none>
+% \OPT{cjk-font} = <win|mac|fandol|founder|noto|source|none>
+% \OPT{latin-font} = <win|mac|gyre|none>
% \end{syntax}
% 手动指定字体。
% \end{function}
@@ -1202,18 +1208,19 @@ To produce the documentation run the original source files ending with
% 字体配置。Windows 和 macOS 以外的系统采用 \opt{gyre} 配置。
%
% \begin{table}[!htbp]
+% \def\TG#1{TG~#1~\TA}
% \centering
% \begin{talltblr} [
% caption = {西文字体配置},
-% label = {tab:latin-fontset},
+% label = {tab:latin-fontset},
% note{a} = {TG 表示 \href{http://www.gust.org.pl/projects/e-foundry/tex-gyre}{\TeX~Gyre}。} ]
% { colspec = {cccc} }
% \toprule
-% 配置名称 & 衬线体 & 无衬线体 & 等宽字体 \\
+% 配置名称 & 衬线体 & 无衬线体 & 等宽字体 \\
% \midrule
-% \opt{win} & Times~New~Roman & Arial & Courier~New \\
-% \opt{mac} & Times~New~Roman & Arial & Menlo \\
-% \opt{gyre} & TG Termes & TG Heros & TG Cursor \\
+% \opt{win} & Times~New~Roman & Arial & Courier~New \\
+% \opt{mac} & Times~New~Roman & Arial & Menlo \\
+% \opt{gyre} & \TG{Termes} & \TG{Heros} & \TG{Cursor} \\
% \bottomrule
% \end{talltblr}
% \end{table}
@@ -1223,39 +1230,40 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-02]{math-font}
% \begin{syntax}
-% math-font=<asana|cambria|fira|garamond|lm|...|termes|xits|none>
+% \OPT{math-font} = <asana|cambria|fira|garamond|lm|...|termes|(xits)|none>
% \end{syntax}
-% 设置数学字体。
+% 设置数学字体。完整列表见表 {tab:math-fontset}。
% \end{function}
%
-% 本模板采用 \pkg{unicode-math} 宏包配置数学公式环境中使用的字体。
-% 与原生 \LaTeX{} 最接近的字体对应 \opt{lm},
-% 与 MS Word 最接近的字体对应 \opt{cambria}。
+% 本模板默认采用 \pkg{unicode-math} 宏包配置数学模式下使用的字体。
+% 与原生 \LaTeX{} 最接近的字体对应 \opt{lm},MS Word 预装的字体对应 \opt{cambria}。
%
% \begin{table}[!htbp]
+% \def\NCM{New Computer Modern}
% \centering
% \begin{talltblr} [
% caption = {数学字体配置},
-% label = {tab:math-fontset},
+% label = {tab:math-fontset},
% note{a} = {TG 表示 \href{http://www.gust.org.pl/projects/e-foundry/tex-gyre}{\TeX~Gyre}。},
% note{b} = {粗体使用 XITS Math Bold。} ]
% { colspec = {ccl} }
% \toprule
-% 配置名称 & 字体名称 & 描述 \\
+% 配置名称 & 字体名称 & 描述 \\
% \midrule
-% \opt{asana} & Asana Math & \\
-% \opt{cambria} & Cambria Math & 微软 Office 预装的数学字体 \\
-% \opt{fira} & Fira Math & 无衬线数学字体,Fira 风格 \\
-% \opt{garamond} & Garamond Math & Garamond 风格 \\
-% \opt{lm} & Latin Modern Math & Computer Modern 风格 \\
-% \opt{libertinus} & Libertinus Math & \\
-% \opt{stix} & STIX Math & Times 风格 \\
-% \opt{bonum} & TG Bonum Math \TblrNote{a} & \\
-% \opt{dejavu} & TG DejaVu Math \TblrNote{a} & DejaVu 风格 \\
-% \opt{pagella} & TG Pagella Math \TblrNote{a} & Palatino 风格 \\
-% \opt{schola} & TG Schola Math \TblrNote{a} & \\
-% \opt{termes} & TG Termes Math \TblrNote{a} & Times 风格 \\
-% \opt{xits} & XITS Math \TblrNote{b} & 基于 STIX,Times 风格 \\
+% \opt{asana} & Asana Math & \\
+% \opt{cambria} & Cambria Math & 微软 Office 预装的数学字体 \\
+% \opt{fira} & Fira Math & 无衬线数学字体,Fira 风格 \\
+% \opt{garamond} & Garamond Math & Garamond 风格 \\
+% \opt{lm} & Latin Modern Math & Computer Modern 风格 \\
+% \opt{libertinus} & Libertinus Math & \\
+% \opt{newcm} & \NCM~Math & Computer Modern 风格 \\
+% \opt{stix} & STIX Math & Times 风格 \\
+% \opt{bonum} & TG Bonum Math \TA & \\
+% \opt{dejavu} & TG DejaVu Math \TA & DejaVu 风格 \\
+% \opt{pagella} & TG Pagella Math \TA & Palatino 风格 \\
+% \opt{schola} & TG Schola Math \TA & \\
+% \opt{termes} & TG Termes Math \TA & Times 风格 \\
+% \opt{xits} & XITS Math \TB & 基于 STIX,Times 风格 \\
% \bottomrule
% \end{talltblr}
% \end{table}
@@ -1264,7 +1272,7 @@ To produce the documentation run the original source files ending with
%
% 本节提及的字库中,中文字库只有方正书宋、方正黑体、方正楷体、方正仿宋、
% 两种思源字体和四种Fandol字体能够\emph{免费商用};
-% 英文字库中只有 Times New Roman、XITS 和三种 \TeX Gyre字体能够\emph{免费商用}。
+% 英文字库中只有 Times New Roman、XITS 和三种 \TeX~Gyre字体能够\emph{免费商用}。
% 因此,若需要将本模板用于商业相关的活动,请咨询专业人士。
%
%
@@ -1280,49 +1288,53 @@ To produce the documentation run the original source files ending with
% 根据可选参数填写方式不同,\tn{njusetup} 共有四种等效的使用方式,
% 可以根据实际情况进行灵活选择。
%
-% 在键路径留空时,为最基础的用法。此时设置项的参数是一个使用英文
-% 半角逗号分隔的键值列表,通常形如 \meta{key}|=|\meta{value}。
+% 在键路径留空时,为最基础的用法。此时设置项的参数是一个使用
+% \emph{英文半角逗号}分隔的键值列表,通常形如 \meta{key}|=|\meta{value}。
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib},
+% emph={[3]title,author,resource}]
% \njusetup{
% info/title = {奇文},
% info/author = {佚名},
-% bib/resource = {ref1.bib, ref1.bib}
+% bib/resource = {ref1.bib, ref2.bib}
% }
% \end{latexexample}
%
% 以上为最基础的填写方法,可以分组为:
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib},
+% emph={[3]title,author,resource}]
% \njusetup{
% info = {
% title = {奇文},
% author = {佚名}
% },
% bib = {
-% resource = {ref1.bib, ref1.bib},
+% resource = {ref1.bib, ref2.bib},
% }
% }
% \end{latexexample}
%
% 在键路径填入模块(类)时,只能设定当前模块下的选项。此时参数是键值列表。
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib},
+% emph={[3]title,author,resource}]
% \njusetup[info]{
% title = {奇文},
% author = {佚名}
% }
% \njusetup[bib]{
-% resource = {ref1.bib, ref1.bib}
+% resource = {ref1.bib, ref2.bib}
% }
% \end{latexexample}
%
% 在键路径填入具体选项名称时,只能设定该选项的值。
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info,bib},
+% emph={[3]title,author,resource}]
% \njusetup[info/title]{奇文}
% \njusetup[info/author]{佚名}
-% \njusetup[bib/resource]{ref1.bib, ref1.bib}
+% \njusetup[bib/resource]{ref1.bib, ref2.bib}
% \end{latexexample}
%
%
@@ -1333,8 +1345,8 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[updated=2022-01-14]{info/title,info/title*}
% \begin{syntax}
-% title = \Arg{标题}
-% title* = \Arg{英文标题}
+% \OPT{title} = \Arg{标题}
+% \OPT{title*} = \Arg{英文标题}
% \end{syntax}
% 题目。由于封面上提供给中文题目的横线长度有限\footnote{单行最长约为15
% 个汉字,建议总长度不超过45字,当然你也可以对照 \ref{subsubsec:modify-length}
@@ -1352,8 +1364,8 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[updated=2021-10-01]{info/keywords,info/keywords*}
% \begin{syntax}
-% keywords = \Arg{关键词}
-% keywords* = \Arg{英文关键词}
+% \OPT{keywords} = \Arg{关键词}
+% \OPT{keywords*} = \Arg{英文关键词}
% \end{syntax}
% 关键词列表。关键词之间需要使用英文半角逗号隔开,
% 含有空格的关键字需要使用花括号包裹以避免歧义。可以参照下方的填写示例。
@@ -1361,14 +1373,14 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[updated=2021-10-01]{info/grade}
% \begin{syntax}
-% grade = \Arg{20XX}
+% \OPT{grade} = \Arg{20XX}
% \end{syntax}
% 年级,推荐格式为“20XX”。
% \end{function}
%
% \begin{function}[updated=2021-10-01]{info/student-id}
% \begin{syntax}
-% student-id = \Arg{学号或工号}
+% \OPT{student-id} = \Arg{学号或工号}
% \end{syntax}
% 学号或工号。南京大学本科生为9位数字学号,
% 研究生为两位大写字母标识加上数字组成的学号(2022级改为纯数字)。
@@ -1376,55 +1388,55 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[updated=2021-10-01]{info/author,info/author*}
% \begin{syntax}
-% author = \Arg{你的名字}
-% author* = \Arg{姓名拼音}
+% \OPT{author} = \Arg{你的名字}
+% \OPT{author*} = \Arg{姓名拼音}
% \end{syntax}
% 姓名。
% \end{function}
%
% \begin{function}[updated=2021-10-01]{info/department,info/department*}
% \begin{syntax}
-% department = \Arg{院系}
-% department* = \Arg{院系}
+% \OPT{department} = \Arg{院系}
+% \OPT{department*} = \Arg{院系}
% \end{syntax}
% 院系。
% \end{function}
%
% \begin{function}[updated=2021-10-01]{info/major,info/major*}
% \begin{syntax}
-% major = \Arg{专业}
-% major* = \Arg{专业}
+% \OPT{major} = \Arg{专业}
+% \OPT{major*} = \Arg{专业}
% \end{syntax}
% 专业。
% \end{function}
%
% \begin{function}[updated=2021-10-01]{info/field,info/field*}
% \begin{syntax}
-% field = \Arg{方向}
-% field* = \Arg{方向}
+% \OPT{field} = \Arg{方向}
+% \OPT{field*} = \Arg{方向}
% \end{syntax}
% 研究领域。只有研究生存在研究领域的说法,本科生无需填写。
% \end{function}
%
% \begin{function}[updated=2022-01-12]{info/supervisor,info/supervisor*}
% \begin{syntax}
-% supervisor = \Arg{导师姓名,职称}
-% supervisor* = \Arg{导师英文全称}
+% \OPT{supervisor} = \Arg{导师姓名,职称}
+% \OPT{supervisor*} = \Arg{导师英文全称}
% \end{syntax}
% 导师全称。请使用逗号( |,| )分隔导师的中文姓名与职称,英文名则不需添加逗号。
% \end{function}
%
% \begin{function}[updated=2021-01-12]{info/supervisor-ii,info/supervisor-ii*}
% \begin{syntax}
-% supervisor-ii = \Arg{第二导师姓名,职称}
-% supervisor-ii* = \Arg{第二导师英文全称}
+% \OPT{supervisor-ii} = \Arg{第二导师姓名,职称}
+% \OPT{supervisor-ii*} = \Arg{第二导师英文全称}
% \end{syntax}
% 第二导师全称。无第二导师时不填即可。
% \end{function}
%
% \begin{function}[updated=2022-01-14]{info/submit-date}
% \begin{syntax}
-% submit-date = \Arg{yyyy-mm-dd}
+% \OPT{submit-date} = \Arg{yyyy-mm-dd}
% \end{syntax}
% 提交日期。中英文日期现在可以由 ISO 日期格式\cite{gb-t-7408-2005}
% 的字符串统一生成。如果在等号后留空,则原本中文日期处使用空白的年月日字样;
@@ -1433,29 +1445,29 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[updated=2022-01-14]{info/defend-date}
% \begin{syntax}
-% defend-date = \Arg{yyyy-mm-dd}
+% \OPT{defend-date} = \Arg{yyyy-mm-dd}
% \end{syntax}
% 答辩日期,只对研究生有效,要求同提交日期。
% \end{function}
%
% \begin{function}[updated=2022-05-23]{info/confer-date}
% \begin{syntax}
-% confer-date = \Arg{yyyy-mm-dd}
+% \OPT{confer-date} = \Arg{yyyy-mm-dd}
% \end{syntax}
% 学位授予日期,只用于国家图书馆封面,要求同提交日期。
% \end{function}
%
% \begin{function}[updated=2022-05-23]{info/bottom-date}
% \begin{syntax}
-% bottom-date = \Arg{yyyy-mm-dd}
+% \OPT{bottom-date} = \Arg{yyyy-mm-dd}
% \end{syntax}
% 底部日期,只用于国家图书馆封面,要求同提交日期。
% \end{function}
%
% \begin{function}[updated=2022-05-27]{info/chairman,info/reviewer}
% \begin{syntax}
-% chairman = \Arg{答辩主席姓名职称}
-% reviewer = \Arg{答辩评委姓名职称}
+% \OPT{chairman} = \Arg{答辩主席姓名职称}
+% \OPT{reviewer} = \Arg{答辩评委姓名职称}
% \end{syntax}
% 答辩委员会信息,分别为评审委员会主席及成员的姓名加职称,只对研究生有效。
% 评审成员名单以逗号分隔的列表形式存储,填写方法同关键词。
@@ -1465,10 +1477,10 @@ To produce the documentation run the original source files ending with
% \begin{function}[updated=2021-10-01]{info/clc,info/secret-level,
% info/udc,info/supervisor-contact}
% \begin{syntax}
-% clc = \Arg{中图分类号}
-% secret-level = <不涉密|秘密|机密|绝密>
-% udc = \Arg{udc}
-% supervisor-contact = \Arg{导师联系方式}
+% \OPT{clc} = \Arg{中图分类号}
+% \OPT{secret-level} = <不涉密|秘密|机密|绝密>
+% \OPT{udc} = \Arg{UDC 分类号}
+% \OPT{supervisor-contact} = \Arg{导师联系方式}
% \end{syntax}
% 国家图书馆封面相关,包括中图分类号、密级、UDC 分类号和导师联系方式。
% \end{function}
@@ -1478,10 +1490,12 @@ To produce the documentation run the original source files ending with
%
% 本科生可以参考如下范例输入个人信息。注意不能有空行。
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info},emph={[3]title,title*,
+% keywords,keywords*,grade,student-id,author,author*,department,department*,
+% major,major*,supervisor,supervisor*,submit-date}]
% \njusetup[info]{
% title = {第一行标题\\第二行标题},
-% title* = {My title in English},
+% title* = {My Awesome Work},
% keywords = {我,就是,充数的,关键词},
% keywords* = {Dummy, Keywords, Here, {it is}},
% grade = {2018},
@@ -1500,10 +1514,12 @@ To produce the documentation run the original source files ending with
%
% 研究生可以参考如下列表输入个人信息
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info},emph={[3]title,title*,
+% keywords,keywords*,grade,student-id,author,author*,department,department*,
+% major,major*,field,field*,supervisor,supervisor*,submit-date,defend-date,email}]
% \njusetup[info]{
% title = {第一行标题\\第二行标题\\第三行标题},
-% title* = {My title in English},
+% title* = {My Awesome Work},
% keywords = {我,就是,充数的,关键词},
% keywords* = {Dummy,Keywords,Here,{it is}},
% grade = {2018},
@@ -1526,7 +1542,8 @@ To produce the documentation run the original source files ending with
%
% 如果需要国家图书馆封面,还需要加入如下信息
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info},emph={[3]confer-date,
+% bottom-date,chairman,reviewer,clc,secret-level,udc,supervisor-contact}]
% \njusetup[info]{
% confer-date = {2022-05-20},
% bottom-date = {2022-05-21},
@@ -1541,10 +1558,11 @@ To produce the documentation run the original source files ending with
%
% 博士后可以参考如下范例输入个人信息。
%
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]info},emph={[3]title,title*,
+% keywords,keywords*,student-id,author,department,major,supervisor,submit-date}]
% \njusetup[info]{
% title = {第一行标题\\第二行标题},
-% title* = {My title in English},
+% title* = {My Awesome Work},
% keywords = {我,就是,充数的,关键词},
% keywords* = {Dummy, Keywords, Here, {it is}},
% student-id = {189114514},
@@ -1588,8 +1606,8 @@ To produce the documentation run the original source files ending with
%
% \begin{function}{header/content,header/content*,footer/content,footer/content*}
% \begin{syntax}
-% content = \{\Arg{位置}\Arg{内容},\Arg{位置}\Arg{内容},...\}
-% content* = \{\Arg{位置}\Arg{内容},\Arg{位置}\Arg{内容},...\}
+% \OPT{content} = \{\Arg{位置}\Arg{内容},\Arg{位置}\Arg{内容},...\}
+% \OPT{content*} = \{\Arg{位置}\Arg{内容},\Arg{位置}\Arg{内容},...\}
% \end{syntax}
% 页眉页脚的格式与内容设置。带有星号的设置项供单面模式下使用。
% \end{function}
@@ -1604,7 +1622,7 @@ To produce the documentation run the original source files ending with
% 并将页眉格式设置成五号黑体,奇数页左侧为节名,右侧为页码,
% 偶数页左侧为页码,右侧为章名。
% \begin{latexexample}[moretexcs={\njusetup,\sffamily,\njusetformat},
-% emph={[2]header,footer}]
+% emph={[2]header,footer},emph={[3]content}]
% \njusetup[header/content]{
% { OR } { \thepage }, { OL } { \rightmark },
% { EL } { \thepage }, { ER } { \leftmark }
@@ -1639,19 +1657,36 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-08-06]{image/path}
% \begin{syntax}
-% path = \{\marg{路径1},\marg{路径2},...\}
+% \OPT{path} = \{\marg{路径1},\marg{路径2},...\}
% \end{syntax}
% 图片搜索路径,等效于 \tn{graphicspath}。这个选项仅能设置一次。
% \end{function}
%
% \subsubsection{脚注}
%
-% \begin{function}[added=2022-05-01,updated=2022-08-03]{footnote/style}
+% \begin{function}[added=2022-05-01,updated=2022-10-16]{footnote/style}
+% \begin{syntax}
+% \OPT{style} = <(plain)|pifont|circled|circled*>
+% \end{syntax}
+% 设置脚注编号样式。默认为普通数字;使用 \opt{pifont} 可修改为带圈数字,
+% 此样式受到字符闲置,单页不建议超过10条脚注;使用 \opt{circled} 或 \opt{circled*}
+% 选项同样可修改为带圈数字,且不受单页脚注数量的限制,带星号的选项为黑底白字(阴文)。
+% \footnote{此功能依赖的 \pkg{circledtext} 宏包于 2022 年 4 月发布,可能需要手动安装。}
+% \end{function}
+%
+% \begin{function}[added=2022-10-16]{footnote/circledtext-option}
+% \begin{syntax}
+% \OPT{circledtext-option} = \meta{选项列表}
+% \end{syntax}
+% \opt{circled} 或 \opt{circled*} 选项的带圈数字编号使用 \pkg{circledtext}
+% 宏包绘制,可使用本选项载入更多定制设置,详见其手册。
+% \end{function}
+%
+% \begin{function}[added=2022-10-16]{footnote/hang}
% \begin{syntax}
-% style = <(plain)|pifont>
+% \OPT{hang} = \TTF
% \end{syntax}
-% 设置脚注编号样式。默认为普通数字,使用 |pifont|
-% 选项可修改为带圈数字。单一页面内请尽量避免超过 10 条脚注。
+% 是否进行悬挂缩进。默认为是,缩进宽度为 \qty{1.5}{em}。
% \end{function}
%
% 脚注样式的调整依赖 \pkg{footmisc}。如果希望使用 \LaTeX 的默认样式,
@@ -1678,13 +1713,15 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-31]{math/style}
% \begin{syntax}
-% style = <TeX|ISO|(GB)>
+% \OPT{style} = <TeX|ISO|(GB)>
% \end{syntax}
% 数学符号风格。
% \end{function}
%
% 默认的国标风格 \opt{GB} 相当于在导言区设置了
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]math}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]math},
+% emph={[3]integral,integral-limits,less-than-or-equal,
+% math-ellipsis,partial,real-part,vector,uppercase-greek}]
% \njusetup[math]{
% integral = upright,
% integral-limits = false,
@@ -1701,7 +1738,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-31]{math/integral}
% \begin{syntax}
-% integral = <upright|slanted>
+% \OPT{integral} = <upright|slanted>
% \end{syntax}
% 积分号的正/斜体。
% 该选项需要字体的支持,目前仅限 \opt{xits}、\opt{newcm}。
@@ -1709,7 +1746,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-31]{math/integral-limits}
% \begin{syntax}
-% integral-limits = <\TF>
+% \OPT{integral-limits} = <\TF>
% \end{syntax}
% 积分号上下限的位置,可选:\opt{true}(在上下)、\opt{false}(在右侧)。
% 这个设置只影响行间公式,行内公式统一居右侧,不受影响。
@@ -1717,7 +1754,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-31]{math/less-than-or-equal}
% \begin{syntax}
-% less-than-or-equal = <slanted|horizontal>
+% \OPT{less-than-or-equal} = <slanted|horizontal>
% \end{syntax}
% 小于等于号和大于等于号的字形。
% 这将控制 \tn{le}、\tn{ge}、\tn{leq} 和 \tn{geq} 的符号是
@@ -1726,7 +1763,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-31]{math/math-ellipsis}
% \begin{syntax}
-% math-ellipsis = <centered|lower>
+% \OPT{math-ellipsis} = <centered|lower>
% \end{syntax}
% 省略号 \tn{dots} 的样式,可选:\opt{centered}(按照中文的习惯固定居中)、
% \opt{lower}(取决于前后符号的位置)。
@@ -1735,28 +1772,28 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-31]{math/partial}
% \begin{syntax}
-% partial = <upright|italic>
+% \OPT{partial} = <upright|italic>
% \end{syntax}
% 偏微分符号的正/斜体。
% \end{function}
%
% \begin{function}[added=2022-07-31]{math/real-part}
% \begin{syntax}
-% real-part = <roman|fraktur>
+% \OPT{real-part} = <roman|fraktur>
% \end{syntax}
% 实部 \tn{Re} 和虚部 \tn{Im} 的字体。
% \end{function}
%
% \begin{function}[added=2022-07-31]{math/vector}
% \begin{syntax}
-% vector = <boldfont|arrow>
+% \OPT{vector} = <boldfont|arrow>
% \end{syntax}
% 向量的表示方法,可选粗斜体或箭头。
% \end{function}
%
% \begin{function}[added=2022-07-31]{math/uppercase-greek}
% \begin{syntax}
-% uppercase-greek = <upright|italic>
+% \OPT{uppercase-greek} = <upright|italic>
% \end{syntax}
% 大写希腊字母的正/斜体。
% 有限增量符号 $\increment x$ 固定使用正体,推荐使用 \tn{increment} 表示。
@@ -1787,28 +1824,28 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-04-21]{theorem/style}
% \begin{syntax}
-% style = <(plain)|break|change|margin|empty|...>
+% \OPT{style} = <(plain)|break|change|margin|empty|...>
% \end{syntax}
% 定理基本样式。等效于 \tn{theoremstyle}\marg{样式名称}。
% \end{function}
%
% \begin{function}[added=2022-04-21]{theorem/header-font}
% \begin{syntax}
-% header-font = \meta{头部字体格式}
+% \OPT{header-font} = \meta{头部字体格式}
% \end{syntax}
% 定理头部字体格式。等效于 \tn{theoremheaderfont}\marg{格式}。
% \end{function}
%
% \begin{function}[added=2022-04-21]{theorem/body-font}
% \begin{syntax}
-% body-font = \meta{内部字体格式}
+% \OPT{body-font} = \meta{内部字体格式}
% \end{syntax}
% 定理内部字体格式。等效于 \tn{theorembodyfont}\marg{格式}。
% \end{function}
%
% \begin{function}[added=2022-04-21]{theorem/qed-symbol}
% \begin{syntax}
-% qed-symbol = \meta{证毕符号}
+% \OPT{qed-symbol} = \meta{证毕符号}
% \end{syntax}
% 证毕符号。等效于 \tn{theoremsymbol}\marg{符号}。默认为空心方块(\mdlgwhtsquare)。
% 禁用 \pkg{unicode-math} 时为实心黑色方块(\rule{1ex}{1ex})。
@@ -1816,7 +1853,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-04-21]{theorem/counter}
% \begin{syntax}
-% counter = <part|(chapter)|section|...>
+% \OPT{counter} = <part|(chapter)|section|...>
% \end{syntax}
% 定理计数器范围。
% \end{function}
@@ -1824,7 +1861,7 @@ To produce the documentation run the original source files ending with
% 模板的默认设置等效于
%
% \begin{latexexample}[moretexcs={\njusetup,\bfseries,\itshape,\mdlgwhtsquare},
-% emph={[2]theorem}]
+% emph={[2]theorem},emph={[3]style,header-font,body-font,qed-symbol,counter}]
% \njusetup[theorem]{
% style = plain,
% header-font = \normalfont \bfseries ,
@@ -1838,7 +1875,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-08-05]{theorem/type}
% \begin{syntax}
-% type = \{\marg{环境名,类型标识} \marg{头名称},...\}
+% \OPT{type} = \{\marg{环境名,类型标识} \marg{头名称},...\}
% \end{syntax}
% 需要定义的定理类型列表。在可选的 \meta{类型标识} 中,含有\emph{星号}表示
% 需要编号,含有\emph{加号}需要证毕符号。该选项存储的是用来定义环境的参数,
@@ -1846,28 +1883,29 @@ To produce the documentation run the original source files ending with
% \end{function}
%
% \opt{theorem/type} 初始定义的环境列表如表~\ref{tab:mathenv} 所示。
-% 其中证明环境较为特殊,不编号且会在结尾添加证毕符号。
% 这些环境并没有预先创建,使用方法见下面的例子。
%
% \begin{table}[htbp]
% \centering
-% \caption{预置的数学定理环境}
-% \label{tab:mathenv}
-% \begin{tabular}{cc|cc}
+% \begin{talltblr} [
+% caption = {预置的数学定理环境},
+% label = {tab:mathenv},
+% note{a} = {证明环境较为特殊,不编号且会在结尾添加证毕符号。} ]
+% { colspec = {cc|cc} }
% \toprule
-% \bf 标签 & \bf 名称 & \bf 标签 & \bf 名称 \\
+% 标签 & 名称 & 标签 & 名称 \\
% \midrule
-% axiom & 公理 & lemma & 引理 \\
-% corollary & 推论 & proof & 证明 \\
-% definition & 定义 & theorem & 定理 \\
-% example & 例 & & \\
+% axiom & 公理 & lemma & 引理 \\
+% corollary & 推论 & proof \TA & 证明 \\
+% definition & 定义 & theorem & 定理 \\
+% example & 例 & & \\
% \bottomrule
-% \end{tabular}
+% \end{talltblr}
% \end{table}
%
% \begin{function}[added=2022-08-05]{theorem/define}
% \begin{syntax}
-% <define>
+% <\OPT{define}>
% \end{syntax}
% 创建定理环境。
% \end{function}
@@ -1880,9 +1918,9 @@ To produce the documentation run the original source files ending with
% 宋体,定义了 \env{exercise} 和 \env{solution} 两种定理环境,后者没有编号。
%
% \begin{latexexample}[moretexcs={\njusetup,\normalfont},
-% emph={[2]theorem}]
+% emph={[2]theorem},emph={[3]define,body-font,type}]
% \njusetup[theorem]{
-% define,
+% define ,
% body-font = \normalfont ,
% type = {
% { {exercise} {习题} },
@@ -1897,9 +1935,9 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-07-31]{label-sep/figure,label-sep/table,label-sep/equation}
% \begin{syntax}
-% figure = \meta{符号}
-% table = \meta{符号}
-% equation = \meta{符号}
+% \OPT{figure} = \meta{符号}
+% \OPT{table} = \meta{符号}
+% \OPT{equation} = \meta{符号}
% \end{syntax}
% 图片、表格、公式编号中的连接符样式,默认为短横线(en dash)。
% \end{function}
@@ -1921,7 +1959,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2021-12-19]{bib/style}
% \begin{syntax}
-% style = <(numeric)|author-year|\meta{自定义样式}>
+% \OPT{style} = <(numeric)|author-year|\meta{自定义样式}>
% \end{syntax}
% 参考文献样式。可选顺序编码制 \opt{numeric} 和著者-出版年制 \opt{author-year},
% 或自行填入任意其他 \pkg{biblatex} 样式。默认为顺序编码制。
@@ -1945,7 +1983,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-02-15]{bib/option}
% \begin{syntax}
-% option = \meta{选项列表}
+% \OPT{option} = \meta{选项列表}
% \end{syntax}
% 待传入 \pkg{biblatex} 宏包的额外选项列表。
% \end{function}
@@ -1955,7 +1993,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2021-12-19]{bib/resource}
% \begin{syntax}
-% resource = \Arg{文件}
+% \OPT{resource} = \Arg{文件}
% \end{syntax}
% 参考文献数据源。类似于 \tn{addbibresource} 命令,但可以使用逗号分隔的
% 列表形式。必须使用带扩展名(\file{.bib})的完整文件名。
@@ -1973,7 +2011,8 @@ To produce the documentation run the original source files ending with
% 可以参考如下范例进行参考文献设置。
% 其中 \opt{bib/option} 的内容旨在关闭部分不需显示的文献信息,
% 并采取仅首字母大写的作者姓名格式,可根据需要使用。
-% \begin{latexexample}[moretexcs={\njusetup},emph={[2]bib}]
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]bib},
+% emph={[3]style,resource,option}]
% \njusetup[bib]{
% style = author-year,
% resource = {njuthesis-sample.bib},
@@ -2050,16 +2089,15 @@ To produce the documentation run the original source files ending with
% note{a} = {在此样式下 \tn{parencite} 效果等同于 \tn{cite}。} ]
% { colspec = {cll} }
% \toprule
-% 引用方式 & 命令 & 排版效果 \\
+% 引用方式 & 命令 & 排版效果 \\
% \midrule
-% 单篇文献 & \tn{cite}\TblrNote{a} &
-% 作者加年份用括号包围可设置页码 \\
-% 多篇文献 & \tn{cite} & 分号隔开 \\
-% 标注页码 & \tn{pagescite} & 作者加年份用括号包围自动页码 \\
-% 标注年份 & \tn{yearcite} & 用括号包围的年份 \\
-% 标注年份、页码 & \tn{yearpagescite} & 提供年份用括号包围自动页码 \\
-% 标注作者 & \tn{textcite} & 作者为主语加加括号包围年份 \\
-% 完整脚注 & \tn{footfullcite} & 脚注方式 \\
+% 单篇文献 & \tn{cite} \TA & 作者加年份用括号包围可设置页码 \\
+% 多篇文献 & \tn{cite} & 分号隔开 \\
+% 标注页码 & \tn{pagescite} & 作者加年份用括号包围自动页码 \\
+% 标注年份 & \tn{yearcite} & 用括号包围的年份 \\
+% 标注年份、页码 & \tn{yearpagescite} & 提供年份用括号包围自动页码 \\
+% 标注作者 & \tn{textcite} & 作者为主语加加括号包围年份 \\
+% 完整脚注 & \tn{footfullcite} & 脚注方式 \\
% \bottomrule
% \end{talltblr}
% \end{table}
@@ -2111,8 +2149,8 @@ To produce the documentation run the original source files ending with
% \begin{function}[added=2021-12-23,updated=2022-08-06]{
% image/nju-emblem,image/nju-name}
% \begin{syntax}
-% nju-emblem = \Arg{文件}
-% nju-name = \Arg{文件}
+% \OPT{nju-emblem} = \Arg{文件}
+% \OPT{nju-name} = \Arg{文件}
% \end{syntax}
% 校名、校徽图片文件路径。
% \end{function}
@@ -2141,7 +2179,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-02-04,updated=2022-07-31]{abstract/toc-entry}
% \begin{syntax}
-% toc-entry = <\TTF>
+% \OPT{toc-entry} = <\TTF>
% \end{syntax}
% 是否将摘要条目插入目录,默认开启。
% 关闭此选项后摘要页将不会出现在目录中,仅保留其 PDF 书签。
@@ -2149,7 +2187,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-03-26,updated=2022-07-31]{abstract/title-style}
% \begin{syntax}
-% title-style = <(strict)|centered|natural>
+% \OPT{title-style} = <(strict)|centered|natural>
% \end{syntax}
% 选择研究生摘要标题样式。
% 默认为严格模式(\opt{strict}),即完全模仿材料包要求。
@@ -2191,7 +2229,7 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2022-08-08]{tableofcontents/dotline}
% \begin{syntax}
-% dotline = <chapter|(section)>
+% \OPT{dotline} = <chapter|(section)>
% \end{syntax}
% 目录中的引导线设置。选择 \opt{chapter} 会为章标题后添加引导线。
% \end{function}
@@ -2200,7 +2238,7 @@ To produce the documentation run the original source files ending with
% tableofcontents/toc-entry,listoffigures/toc-entry,
% listoftables/toc-entry}
% \begin{syntax}
-% toc-entry = <\TTF>
+% \OPT{toc-entry} = <\TTF>
% \end{syntax}
% 是否在目录中显示目录自身的条目,默认开启。关闭后目录、
% 插图目录和表格目录将不会出现在目录中,仅保留其 PDF 书签。
@@ -2208,7 +2246,7 @@ To produce the documentation run the original source files ending with
% \end{function}
%
% 如果仅需要禁用插图目录和表格目录的条目,可以这样设置
-% \begin{latexexample}[moretexcs={\njusetup},
+% \begin{latexexample}[moretexcs={\njusetup},emph={[3]toc-entry},
% emph={[2]tableofcontents,listoffigures,listoftables}]
% \njusetup{
% tableofcontents/toc-entry = true, % 仅作展示,无需手动启用
@@ -2236,7 +2274,8 @@ To produce the documentation run the original source files ending with
% \subsubsection{致谢页}
%
% \DescribeEnv{acknowledgement}
-% 同前言,使用 \env{acknowledgement} 环境。
+% 使用 \env{acknowledgement} 环境生成致谢页,附带有相应目录条目。
+% 在开启盲审模式时,仅显示该目录条目。
%
% \begin{latexexample}[emph={[1]acknowledgement}]
% \begin{acknowledgement}
@@ -2421,6 +2460,9 @@ To produce the documentation run the original source files ending with
% \item \pkg{fandol}、\pkg{tex-gyre}、\pkg{tex-gyre-math}、\pkg{xits} 等,
% 提供自由字体。
% \item \pkg{emptypage},在双面模式下清空空白页的页眉、页脚和页码。
+% \item \pkg{circledtext} 和 \pkg{l3experimental},用于在 \opt{footnote/circled}
+% 和 \opt{footnote/circled*} 选项下生成脚注圈码。
+% \item \pkg{pifont},用于在 \opt{footnote/pifont} 选项下生成脚注圈码。
% \item \pkg{tikz} 和 \pkg{njuvisual},用于绘制封面的校名校徽。
% \item \pkg{tabularray},用于绘制研究生的出版授权书信息表格。
% \item \pkg{xeCJKfntef} 或 \pkg{lua-ul},用于在对应引擎下绘制下划线。
@@ -2465,8 +2507,8 @@ To produce the documentation run the original source files ending with
% \bibitem{install-latex-guide-zh-cn}
% 王然.
% \newblock \textit{一份简短的关于 \LaTeX 安装的介绍} [EB/OL].
-% \newblock version 2021.12.1,
-% \newblock (2021-12-01)
+% \newblock version 2022.10.1,
+% \newblock (2022-10-01)
% \urlprefix\url{https://ctan.org/pkg/install-latex-guide-zh-cn}
% \urlprefix\CTANurl[文档:]{info/install-latex-guide-zh-cn/install-latex-guide-zh-cn.pdf}
%
@@ -2546,8 +2588,8 @@ To produce the documentation run the original source files ending with
% \bibitem{biblatex-gb7714-2015}
% 胡振震.
% \newblock \textit{符合 GB/T 7714-2015 标准的 biblatex 参考文献样式} [EB/OL].
-% \newblock version 1.1b,
-% \newblock (2021-12-11)
+% \newblock version 1.1j,
+% \newblock (2022-08-29)
% \urlprefix\url{https://ctan.org/pkg/biblatex-gb7714-2015}
% \urlprefix\CTANurl[文档:]{biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.pdf}
%
@@ -2559,6 +2601,14 @@ To produce the documentation run the original source files ending with
% \urlprefix\url{https://ctan.org/pkg/ctex}
% \urlprefix\CTANurl[文档及源代码:]{language/chinese/ctex/ctex.pdf}
%
+% \bibitem{circledtext}
+% 耿楠.
+% \newblock \textit{Create circled text} [EB/OL].
+% \newblock version 1.1.0,
+% \newblock (2022-04-28)
+% \urlprefix\url{https://ctan.org/pkg/circledtext}
+% \urlprefix\CTANurl[文档:]{macros/latex/contrib/circledtext/circledtext.pdf}
+%
% \bibitem{latexmk}
% \textsc{Collins J}.
% \newblock \textit{Fully automated \LaTeX document generation} [EB/OL].
@@ -2763,8 +2813,8 @@ To produce the documentation run the original source files ending with
%
% \subsection{定义变量}
%
-% 本模板的变量名称通式为 |\|\meta{作用域}|_@@_|\meta{族}|_|\meta{描述}|_|\meta{类型}
-% (出现在源代码中)或 |\|\meta{作用域}|__nju_|\meta{族}|_|\meta{描述}|_|\meta{类型}
+% 本模板的变量名称通式为 \cs[no-index]{\meta{作用域}_@@_\meta{族}_\meta{描述}_\meta{类型}}
+% (出现在源代码中)或 \cs[no-index,replace=false]{\meta{作用域}_@@_\meta{族}_\meta{描述}_\meta{类型}}
% (出现在文档中)。作用域为单个字母,|l| 代表局部变量,|g| 代表全局变量,|c| 代表常
% 量。最后一个下划线后的内容指示其类型,但引擎不会根据名称检查变量类型。
%
@@ -2788,38 +2838,32 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{
-% \g_@@_info_degree_int,
-% \g_@@_info_type_int}
-% 用于存储学位类型的变量。
+% \begin{variable}{\g_@@_info_type_int}
+% 用于存储论文类型的变量。
% \begin{macrocode}
-\int_new:N \g_@@_info_degree_int
\int_new:N \g_@@_info_type_int
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{
-% \g_@@_info_degree_tl,
-% \g_@@_info_type_en_tl}
-% 用于存储学位名称的变量。
+% \begin{variable}{\g_@@_opt_academic_bool}
+% 用于判断学术型或专业型学位的变量。
% \begin{macrocode}
-\tl_new:N \g_@@_info_degree_tl
-\tl_new:N \g_@@_info_type_en_tl
+\bool_new:N \g_@@_opt_academic_bool
% \end{macrocode}
% \end{variable}
%
% \begin{variable}{\g_@@_opt_twoside_bool}
% 定义用于判断是否使用双面模式的变量,初始值为使用双面模式。
% \begin{macrocode}
-\bool_new:N \g_@@_opt_twoside_bool
+\bool_new:N \g_@@_opt_twoside_bool
\bool_set_true:N \g_@@_opt_twoside_bool
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{\l_@@_second_supvbool}
+% \begin{variable}{\g_@@_opt_second_supv_bool}
% 定义用于判断是否有第二导师的变量。
% \begin{macrocode}
-\bool_new:N \l_@@_second_supvbool
+\bool_new:N \g_@@_opt_second_supv_bool
% \end{macrocode}
% \end{variable}
%
@@ -2856,7 +2900,6 @@ To produce the documentation run the original source files ending with
% 是否使用独立的字体文件。
% \begin{macrocode}
\bool_new:N \g_@@_font_path_bool
-\bool_gset_false:N \g_@@_font_path_bool
% \end{macrocode}
% \end{variable}
%
@@ -2867,23 +2910,6 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{\g_@@_thm_type_clist}
-% 默认定理类型、头名称,以及是否需要编号和证毕符号。
-% \begin{macrocode}
-\clist_new:N \g_@@_thm_type_clist
-\clist_gset:Nn \g_@@_thm_type_clist
- {
- { axiom } { 公理 },
- { corollary } { 推论 },
- { definition } { 定义 },
- { example } { 例 },
- { lemma } { 引理 },
- { proof, *+ } { 证明 },
- { theorem } { 定理 }
- }
-% \end{macrocode}
-% \end{variable}
-%
% \begin{variable}{\c_@@_today_tl}
% 编译当天日期,格式为 |yyyy-mm-dd|。
% \begin{macrocode}
@@ -2896,18 +2922,13 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{
-% \c_@@_name_type_clist,
-% \c_@@_name_type_en_clist,
-% \c_@@_name_degree_clist}
+% \begin{variable}{\c_@@_name_type_clist,\c_@@_name_type_en_clist}
% 论文类型与学位类型。
% \begin{macrocode}
\clist_const:Nn \c_@@_name_type_clist
{ 学士, 硕士, 博士 }
\clist_const:Nn \c_@@_name_type_en_clist
{ Bachelor, Master, Doctor~of~Philosophy }
-\clist_const:Nn \c_@@_name_degree_clist
- { \c_empty_tl, 专业 }
% \end{macrocode}
% \end{variable}
%
@@ -2922,27 +2943,29 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{
-% \c_@@_name_anon_clist,
-% \c_@@_name_anon_en_clist,
-% \c_@@_name_anonlist_clist}
-% 盲审模式下不显示的个人信息项。
+% \begin{variable}{\c_@@_name_anon_clist,\c_@@_name_anon_en_clist}
+% 盲审模式下不显示的个人信息键名。
% \begin{macrocode}
\clist_const:Nn \c_@@_name_anon_clist
{
- author, chairman, clc, dept, email, field, grade,
- id, major, secretlv, supvcont, udc
+ author, chairman, email, student-id, reviewer,
+ supervisor-contact, supervisor, supervisor-ii
}
\clist_const:Nn \c_@@_name_anon_en_clist
- { author, dept, field, major, supv, supvii }
-\clist_const:Nn \c_@@_name_anonlist_clist
- { reviewer, supv, supvii }
+ { author, supervisor, supervisor-ii }
% \end{macrocode}
% \end{variable}
%
%
% \subsection{内部函数}
%
+% \begin{macro}{\@@_null:}
+% 等价于 \LaTeXe{} 中的 \tn{null}。
+% \begin{macrocode}
+\cs_new:Nn \@@_null: { \hbox:n { } }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_quad:,\@@_qquad:}
% 等价于 \LaTeXe{} 中的 \tn{quad} 和 \tn{qquad}。
% \begin{macrocode}
@@ -3041,7 +3064,7 @@ To produce the documentation run the original source files ending with
% \end{macro}
%
% \begin{macro}{\@@_box_ulined_info:Nn}
-% 以上盒子只用来打印 \cs{g_@@_info_\meta{描述}_tl} 变量。
+% 以上盒子只用来打印 \cs[no-index]{g_@@_info_\meta{描述}_tl} 变量。
% \begin{macrocode}
\cs_new_protected:Npn \@@_box_ulined_info:Nn #1#2
{ \@@_box_ulined:Nc #1 { g_@@_info_ #2 _tl } }
@@ -3062,13 +3085,13 @@ To produce the documentation run the original source files ending with
\cs_new_protected:Npn \@@_box_spread:NNn #1#2#3
{
\mode_leave_vertical:
- \@@_get_width:Nn \l_@@_tmpa_dim { #2 #3 }
+ \@@_get_width:Nn \l_@@_tmp_skip { #2 #3 }
\hbox_to_wd:nn { #1 }
{
- \dim_compare:nTF { \l_@@_tmpa_dim > #1 }
+ \dim_compare:nTF { \l_@@_tmp_skip > #1 }
{
\tex_hfil:D \scalebox
- { \dim_to_decimal_in_unit:nn { #1 } { \l_@@_tmpa_dim } }
+ { \dim_to_decimal_in_unit:nn { #1 } { \l_@@_tmp_skip } }
[ 1.0 ] { #2 #3 } \tex_hfil:D
}
{ #2 \tl_map_inline:nn { #3 } { ##1 \tex_hfil:D } \tex_unskip:D }
@@ -3079,7 +3102,7 @@ To produce the documentation run the original source files ending with
% \end{macro}
%
% \begin{macro}{\@@_box_spread_name:Nn,\@@_box_spread_name:NNn}
-% 以上盒子只用来打印 \cs{c_@@_name_\meta{描述}_tl} 变量。
+% 以上盒子只用来打印 \cs[no-index]{c_@@_name_\meta{描述}_tl} 变量。
% \begin{macrocode}
\cs_new_protected:Npn \@@_box_spread_name:Nn #1#2
{ \@@_box_spread:NNv #1 \c_empty_tl { c_@@_name_ #2 _tl } }
@@ -3184,9 +3207,9 @@ To produce the documentation run the original source files ending with
% \item |dim| 型变量
% \item 文本 |clist|
% \end{arguments}
-% 当 \cs{l_@@_tmpa_clist} 非空时,弹出最后一个元素赋给 \cs{l_@@_tmpa_tl},
+% 当 \cs{l_@@_tmp_clist} 非空时,弹出最后一个元素赋给 \cs{l_@@_tmpa_tl},
% 获取其长度后与 |#1| 进行比较,二者中较大的那一个将成为 |#1| 的新值。
-% 不断循环,直至 \cs{l_@@_tmpa_clist} 为空。
+% 不断循环,直至 \cs{l_@@_tmp_clist} 为空。
% \begin{macrocode}
\cs_new:Npn \@@_get_max_width:NN #1#2
{
@@ -3199,55 +3222,53 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_full_uline:Nn,\@@_full_uline:Nx}
+% \begin{macro}{\@@_get_width_print:Nn,\@@_get_width_print:Nv,
+% \@@_get_width_print:Nx}
% 横跨整页的下划线。
% \begin{arguments}
% \item 宽度,|dim| 型变量
% \item 文本
% \end{arguments}
-% 先使用 \cs{@@_get_text_width:Nn} 获取文本内容宽度,
+% 先使用 \cs{@@_get_width:Nn} 获取文本内容到右边距的宽度,
% 该宽度存储在调用的 |dim| 型变量中。随后输出文本内容。
% \begin{macrocode}
-\cs_new_protected:Npn \@@_full_uline:Nn #1#2
+\cs_new_protected:Npn \@@_get_width_print:Nn #1#2
{
\@@_get_width:Nn #1 { #2 }
\dim_set:Nn #1 { \textwidth - #1 } #2
}
-\cs_generate_variant:Nn \@@_full_uline:Nn { Nx }
+\cs_generate_variant:Nn \@@_get_width_print:Nn { Nv }
+\cs_generate_variant:Nn \@@_get_width_print:Nn { Nx }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_uline_entry:Nnnn}
+% \begin{macro}{\@@_uline_entry:Nn}
% 生成占整页宽度的下划线条目。
% \begin{arguments}
% \item 宽度,|dim| 型变量
% \item 文本
-% \item 文本
-% \item 分隔符
% \end{arguments}
% \begin{macrocode}
-\cs_new_protected:Npn \@@_uline_entry:Nnnn #1#2#3#4
+\cs_new_protected:Npn \@@_uline_entry:Nn #1#2
{
- \@@_full_uline:Nx #1 { \@@_name:n { #2 } #4 }
- \@@_box_ulined_info:Nn #1 { #3 }
+ \@@_get_width_print:Nv #1 { c_@@_name_ #2 _tl }
+ \@@_box_ulined_info:Nn #1 { #2 }
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_uline_bientry:Nnnn}
+% \begin{macro}{\@@_uline_bientry:Nn}
% 生成占半页宽度的下划线条目。
% \begin{arguments}
% \item 宽度,|dim| 型变量
% \item 文本
-% \item 文本
-% \item 分隔符
% \end{arguments}
% \begin{macrocode}
-\cs_new_protected:Npn \@@_uline_bientry:Nnnn #1#2#3#4
+\cs_new_protected:Npn \@@_uline_bientry:Nn #1#2
{
- \@@_full_uline:Nx #1 { \@@_name:n { #2 } #4 }
+ \@@_get_width_print:Nv #1 { c_@@_name_ #2 _tl }
\dim_sub:Nn #1 { \textwidth / 2 }
- \@@_box_ulined_info:Nn #1 { #3 }
+ \@@_box_ulined_info:Nn #1 { #2 }
}
% \end{macrocode}
% \end{macro}
@@ -3677,10 +3698,10 @@ To produce the documentation run the original source files ending with
bottom-skip = \l_@@_bottom_skip,
align =
{
- l = { \cs_set_eq:NN \@@_align: \raggedright },
- r = { \cs_set_eq:NN \@@_align: \raggedleft },
- c = { \cs_set_eq:NN \@@_align: \centering },
- n = { \__nju_cs_clear:N \@@_align: }
+ l = { \cs_set_eq:NN \@@_align: \raggedright },
+ r = { \cs_set_eq:NN \@@_align: \raggedleft },
+ c = { \cs_set_eq:NN \@@_align: \centering },
+ n = { \cs_set:Nn \@@_align: { } }
}
}
{
@@ -3802,9 +3823,9 @@ To produce the documentation run the original source files ending with
% \changes{v1.0}{2022/06/30}{修改类型选项。}
% 学位,默认为学士。
% \begin{macrocode}
- type .choices:nn = { bachelor, master, doctor, postdoc }
+ type .choices:nn = { bachelor, master, doctor, postdoc }
{ \int_gset_eq:NN \g_@@_info_type_int \l_keys_choice_int },
- type .initial:n = bachelor,
+ type .initial:n = bachelor,
% \end{macrocode}
% \end{macro}
%
@@ -3812,9 +3833,12 @@ To produce the documentation run the original source files ending with
% \changes{v1.0}{2022/06/30}{修改学位选项。}
% 研究生的学位类型,默认为学术学位。
% \begin{macrocode}
- degree .choices:nn = { academic, professional }
- { \int_gset_eq:NN \g_@@_info_degree_int \l_keys_choice_int },
- degree .initial:n = academic,
+ degree .choice:,
+ degree / academic .code:n =
+ { \bool_set_true:N \g_@@_opt_academic_bool },
+ degree / professional .code:n =
+ { \bool_set_false:N \g_@@_opt_academic_bool },
+ degree .initial:n = academic,
% \end{macrocode}
% \end{macro}
%
@@ -3822,8 +3846,8 @@ To produce the documentation run the original source files ending with
% 是否需要国家图书馆封面。本选项仅用于研究生模板,默认关闭。
% \footnote{nl 代表 National Library。}
% \begin{macrocode}
- nl-cover .bool_set:N = \g_@@_opt_nlcover_bool,
- nl-cover .initial:n = false,
+ nl-cover .bool_set:N = \g_@@_opt_nlcover_bool,
+ nl-cover .initial:n = false,
% \end{macrocode}
% \end{macro}
%
@@ -3834,8 +3858,8 @@ To produce the documentation run the original source files ending with
% \footnote{原创性声明的英文翻译为 Declaration of Originality,
% 为了使选项表义更清晰同时缩减名称长度,将其修改为“声明页”这一名称。}
% \begin{macrocode}
- decl-page .bool_set:N = \g_@@_opt_decl_bool,
- decl-page .initial:n = false,
+ decl-page .bool_set:N = \g_@@_opt_decl_bool,
+ decl-page .initial:n = false,
% \end{macrocode}
% \end{macro}
%
@@ -3843,8 +3867,8 @@ To produce the documentation run the original source files ending with
% \changes{v0.13}{2021/12/15}{新增草稿模式选项。}
% 是否开启草稿模式(默认关闭)。
% \begin{macrocode}
- draft .bool_gset:N = \g_@@_opt_draft_bool,
- draft .initial:n = false,
+ draft .bool_gset:N = \g_@@_opt_draft_bool,
+ draft .initial:n = false,
% \end{macrocode}
% \end{macro}
%
@@ -3852,9 +3876,9 @@ To produce the documentation run the original source files ending with
% \changes{v0.14}{2022/01/14}{新增单双面模式选项。}
% 单双面模式(默认为双面)。
% \begin{macrocode}
- oneside .value_forbidden:n = true,
- twoside .value_forbidden:n = true,
- oneside .bool_gset_inverse:N = \g_@@_opt_twoside_bool,
+ oneside .value_forbidden:n = true,
+ twoside .value_forbidden:n = true,
+ oneside .bool_gset_inverse:N = \g_@@_opt_twoside_bool,
% \end{macrocode}
% \end{macro}
%
@@ -3864,8 +3888,8 @@ To produce the documentation run the original source files ending with
% \begin{macro}{\g_@@_opt_anon_bool}
% 盲审模式。
% \begin{macrocode}
- anonymous .bool_set:N = \g_@@_opt_anon_bool,
- anonymous .initial:n = false,
+ anonymous .bool_set:N = \g_@@_opt_anon_bool,
+ anonymous .initial:n = false,
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3874,10 +3898,10 @@ To produce the documentation run the original source files ending with
% \changes{v0.14}{2021/12/12}{简化字体选项名称。}
% 中英文字体选项。
% \begin{macrocode}
- latin-font .choices:nn =
+ latin-font .choices:nn =
{ gyre, mac, win, none }
{ \tl_set_eq:NN \g_@@_font_latin_tl \l_keys_choice_tl },
- cjk-font .choices:nn =
+ cjk-font .choices:nn =
{ fandol, founder, mac, noto, source, win, none }
{ \tl_set_eq:NN \g_@@_font_cjk_tl \l_keys_choice_tl },
% \end{macrocode}
@@ -3888,23 +3912,23 @@ To produce the documentation run the original source files ending with
% 数学字体选项。
% 由 \pkg{unicode-math} 指定 \XeTeX 和 \LuaTeX 下使用的数学字体。
% \begin{macrocode}
- math-font .choices:nn =
+ math-font .choices:nn =
{
asana, cambria, fira, garamond, lm, libertinus, newcm,
stix, bonum, dejavu, pagella, schola, termes, xits, none
}
{ \tl_set_eq:NN \g_@@_font_math_tl \l_keys_choice_tl },
- math-font .initial:n = xits,
+ math-font .initial:n = xits,
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{font-path}
% 独立字体文件的路径。
% \begin{macrocode}
- font-path .code:n =
+ font-path .code:n =
{
\bool_set_true:N \g_@@_font_path_bool
- \tl_set_eq:NN \g_@@_font_path_tl \l_keys_choice_tl
+ \tl_set_eq:NN \g_@@_font_path_tl \l_keys_value_tl
},
% \end{macrocode}
% \end{macro}
@@ -3914,8 +3938,8 @@ To produce the documentation run the original source files ending with
% \begin{macro}{\g_@@_opt_zihao_tl}
% 字号。默认为小四号。
% \begin{macrocode}
- zihao .tl_set:N = \g_@@_opt_zihao_tl,
- zihao .initial:n = -4,
+ zihao .tl_set:N = \g_@@_opt_zihao_tl,
+ zihao .initial:n = -4,
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3927,8 +3951,8 @@ To produce the documentation run the original source files ending with
% Word 行距,故默认值为 $1.5\times\frac{1.3}{1.2} = 1.625$。
% 更详细的说明请参考 \pkg{zhlineskip} 宏包文档。
% \begin{macrocode}
- linespread .tl_set:N = \g_@@_opt_linespread_tl,
- linespread .initial:n = 1.625,
+ linespread .tl_set:N = \g_@@_opt_linespread_tl,
+ linespread .initial:n = 1.625,
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3937,7 +3961,7 @@ To produce the documentation run the original source files ending with
% \changes{v0.16}{2022/02/23}{新增 \opt{config} 选项。}
% 配置文件路径。
% \begin{macrocode}
- config .clist_set:N = \g_@@_config_clist
+ config .clist_set:N = \g_@@_config_clist
}
% \end{macrocode}
% \end{macro}
@@ -4035,6 +4059,13 @@ To produce the documentation run the original source files ending with
{ \tl_const:Nn \c_@@_name_pagemode_tl { oneside } }
% \end{macrocode}
%
+% \changes{v1.1}{2022/09/26}{盲审模式下不显示声明页。}
+% 盲审模式下不显示声明页。
+% \begin{macrocode}
+\bool_if:NT \g_@@_opt_anon_bool
+ { \bool_set_false:N \g_@@_opt_decl_bool }
+% \end{macrocode}
+%
%
% \subsection{用户接口}
%
@@ -4053,6 +4084,19 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\@@_keys_set:nn}
+% \changes{v1.1}{2022/09/26}{使用 \cs{keys_set_filter:nnn} 重构盲审模式。}
+% 在开启盲审模式时,屏蔽被编入 \opt{annoymous} 分组的键值对输入。
+% \begin{macrocode}
+\bool_if:NTF \g_@@_opt_anon_bool
+ {
+ \cs_new:Npn \@@_keys_set:nn #1#2
+ { \keys_set_filter:nnn {#1} { anonymous } {#2} }
+ }
+ { \cs_new_eq:NN \@@_keys_set:nn \keys_set:nn }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\njusetup}
% \changes{v0.6}{2021/09/10}{改用键值对输入信息。}
% \changes{v1.0}{2022/08/01}{增加输入键路径的可选参数。}
@@ -4070,11 +4114,11 @@ To produce the documentation run the original source files ending with
\NewDocumentCommand \njusetup { o m }
{
\tl_if_novalue:nTF { #1 }
- { \keys_set:nn { nju } { #2 } }
+ { \@@_keys_set:nn { nju } { #2 } }
{
\tl_if_in:nnTF { #1 } { / }
- { \keys_set:nn { nju } { #1 = {#2} } }
- { \keys_set:nn { nju / #1 } {#2} }
+ { \@@_keys_set:nn { nju } { #1 = {#2} } }
+ { \@@_keys_set:nn { nju / #1 } {#2} }
}
}
% \end{macrocode}
@@ -4182,10 +4226,13 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\clist_map_inline:nn
{
- { no-math } { fontspec },
- { perpage } { footmisc },
- { capitalise, nameinlink, noabbrev }
- { cleveref }
+% \end{macrocode}
+% 隐藏 |does not contain script "CJK"| 警告。
+% \begin{macrocode}
+ { quiet } { xeCJK },
+ { no-math } { fontspec },
+ { perpage } { footmisc },
+ { capitalise, nameinlink, noabbrev } { cleveref }
}
{ \PassOptionsToPackage #1 }
% \end{macrocode}
@@ -4274,7 +4321,7 @@ To produce the documentation run the original source files ending with
\sys_if_engine_luatex:T
{
\RequirePackage { lua-ul }
- \NewDocumentCommand \njuline { m } { \underLine{#1} \null }
+ \NewDocumentCommand \njuline { m } { \underLine{#1} \@@_null: }
}
% \end{macrocode}
% \end{macro}
@@ -4407,10 +4454,10 @@ To produce the documentation run the original source files ending with
% \changes{v0.14}{2022/01/14}{将标题断行控制符修改为 |\\|。}
% 题目。中文题目可使用 |\\| 手动断行。以下标注星号(|*|)的皆为对应的英文字段。
% \begin{macrocode}
- title .tl_set:N = \g_@@_info_title_tl,
- title .initial:n = { 空 },
- title* .tl_set:N = \g_@@_info_title_en_tl,
- title* .initial:n = { Empty },
+ title .tl_set:N = \g_@@_info_title_tl ,
+ title .initial:n = { 空 } ,
+ title* .tl_set:N = \g_@@_info_title_en_tl ,
+ title* .initial:n = { Empty } ,
% \end{macrocode}
% \end{macro}
%
@@ -4418,30 +4465,30 @@ To produce the documentation run the original source files ending with
% \changes{v0.11}{2021/10/01}{修改了添加关键词的方式。}
% 关键词列表。
% \begin{macrocode}
- keywords .clist_set:N = \g_@@_info_keywords_clist,
- keywords* .clist_set:N = \g_@@_info_keywords_en_clist,
+ keywords .clist_set:N = \g_@@_info_keywords_clist ,
+ keywords* .clist_set:N = \g_@@_info_keywords_en_clist ,
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{info/grade,info/student-id,info/author,info/author*}
% 年级、学号、姓名。
% \begin{macrocode}
- grade .tl_set:N = \g_@@_info_grade_tl,
- student-id .tl_set:N = \g_@@_info_id_tl,
- author .tl_set:N = \g_@@_info_author_tl,
- author* .tl_set:N = \g_@@_info_author_en_tl,
+ grade .tl_set:N = \g_@@_info_grade_tl ,
+ student-id .tl_set:N = \g_@@_info_id_tl ,
+ author .tl_set:N = \g_@@_info_author_tl ,
+ author* .tl_set:N = \g_@@_info_author_en_tl ,
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{info/department,info/department*,info/major,info/major*,info/field,info/field*}
% 院系、专业、方向。
% \begin{macrocode}
- department .tl_set:N = \g_@@_info_dept_tl,
- department* .tl_set:N = \g_@@_info_dept_en_tl,
- major .tl_set:N = \g_@@_info_major_tl,
- major* .tl_set:N = \g_@@_info_major_en_tl,
- field .tl_set:N = \g_@@_info_field_tl,
- field* .tl_set:N = \g_@@_info_field_en_tl,
+ department .tl_set:N = \g_@@_info_dept_tl ,
+ department* .tl_set:N = \g_@@_info_dept_en_tl ,
+ major .tl_set:N = \g_@@_info_major_tl ,
+ major* .tl_set:N = \g_@@_info_major_en_tl ,
+ field .tl_set:N = \g_@@_info_field_tl ,
+ field* .tl_set:N = \g_@@_info_field_en_tl ,
% \end{macrocode}
% \end{macro}
%
@@ -4450,16 +4497,16 @@ To produce the documentation run the original source files ending with
% \changes{v0.14}{2022/01/12}{精简导师信息选项。}
% 导师信息。中文导师全称使用 |clist| 存储,便于在本科生封面中进行分割。
% \begin{macrocode}
- supervisor .clist_set:N = \g_@@_info_supv_clist,
- supervisor* .tl_set:N = \g_@@_info_supv_en_tl,
+ supervisor .clist_set:N = \g_@@_info_supv_clist ,
+ supervisor* .tl_set:N = \g_@@_info_supv_en_tl ,
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{info/supervisor-ii,info/supervisor-ii*}
% 第二导师信息。
% \begin{macrocode}
- supervisor-ii .clist_set:N = \g_@@_info_supvii_clist,
- supervisor-ii* .tl_set:N = \g_@@_info_supvii_en_tl,
+ supervisor-ii .clist_set:N = \g_@@_info_supvii_clist ,
+ supervisor-ii* .tl_set:N = \g_@@_info_supvii_en_tl ,
% \end{macrocode}
% \end{macro}
%
@@ -4467,8 +4514,8 @@ To produce the documentation run the original source files ending with
% \changes{v0.14}{2022/01/14}{精简提交日期选项。}
% 提交日期,初始值为编译当天日期。
% \begin{macrocode}
- submit-date .tl_set:N = \g_@@_info_submitdate_raw_tl,
- submit-date .initial:V = \c_@@_today_tl,
+ submit-date .tl_set:N = \g_@@_info_submitdate_raw_tl ,
+ submit-date .initial:V = \c_@@_today_tl ,
% \end{macrocode}
% \end{macro}
%
@@ -4476,8 +4523,8 @@ To produce the documentation run the original source files ending with
% \changes{v0.14}{2022/01/14}{精简答辩日期选项。}
% 答辩日期。
% \begin{macrocode}
- defend-date .tl_set:N = \g_@@_info_defenddate_raw_tl,
- defend-date .initial:V = \c_@@_today_tl,
+ defend-date .tl_set:N = \g_@@_info_defenddate_raw_tl ,
+ defend-date .initial:V = \c_@@_today_tl ,
% \end{macrocode}
% \end{macro}
%
@@ -4485,8 +4532,8 @@ To produce the documentation run the original source files ending with
% \changes{v0.19}{2022/05/23}{新增国家图书馆封面的学位授予日期设置项。}
% 学位授予日期。
% \begin{macrocode}
- confer-date .tl_set:N = \g_@@_info_conferdate_raw_tl,
- confer-date .initial:V = \c_@@_today_tl,
+ confer-date .tl_set:N = \g_@@_info_conferdate_raw_tl ,
+ confer-date .initial:V = \c_@@_today_tl ,
% \end{macrocode}
% \end{macro}
%
@@ -4494,26 +4541,26 @@ To produce the documentation run the original source files ending with
% \changes{v0.19}{2022/05/23}{新增国家图书馆封面的底部日期设置项。}
% 底部日期。
% \begin{macrocode}
- bottom-date .tl_set:N = \g_@@_info_bottomdate_raw_tl,
- bottom-date .initial:V = \c_@@_today_tl,
+ bottom-date .tl_set:N = \g_@@_info_bottomdate_raw_tl ,
+ bottom-date .initial:V = \c_@@_today_tl ,
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{info/defend-date,info/chairman,info/reviewer}
% 答辩委员会信息。
% \begin{macrocode}
- chairman .tl_set:N = \g_@@_info_chairman_tl,
- reviewer .clist_set:N = \g_@@_info_reviewer_clist,
+ chairman .tl_set:N = \g_@@_info_chairman_tl ,
+ reviewer .clist_set:N = \g_@@_info_reviewer_clist ,
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{info/clc,info/secret-level,info/udc,info/supervisor-contact}
% 国家图书馆封面相关信息。
% \begin{macrocode}
- clc .tl_set:N = \g_@@_info_clc_tl,
- secret-level .tl_set:N = \g_@@_info_secretlv_tl,
- udc .tl_set:N = \g_@@_info_udc_tl,
- supervisor-contact .tl_set:N = \g_@@_info_supvcont_tl,
+ clc .tl_set:N = \g_@@_info_clc_tl ,
+ secret-level .tl_set:N = \g_@@_info_secretlv_tl ,
+ udc .tl_set:N = \g_@@_info_udc_tl ,
+ supervisor-contact .tl_set:N = \g_@@_info_supvcont_tl ,
% \end{macrocode}
% \end{macro}
%
@@ -4523,56 +4570,33 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
email .tl_set:N = \g_@@_info_email_tl
}
+\clist_map_inline:Nn \c_@@_name_anon_clist
+ { \keys_define:nn { nju / info } { #1 .groups:n = { anonymous } } }
+\clist_map_inline:Nn \c_@@_name_anon_en_clist
+ { \keys_define:nn { nju / info } { #1 * .groups:n = { anonymous } } }
% \end{macrocode}
% \end{macro}
%
-% \changes{v0.16}{2022/03/06}{正确处理学位和类型信息。}
-% 设置学位信息。该设置需要放在 \tn{ProcessKeysOptions}
-% 命令以及载入配置文件中的常量信息后进行。
-% \begin{macrocode}
-\tl_set:Nx \g_@@_info_type_tl
- {
- \clist_item:Nn \c_@@_name_type_clist
- { \g_@@_info_type_int }
- }
-\tl_set:Nx \g_@@_info_degree_tl
- {
- \g_@@_info_type_tl
- \clist_item:Nn \c_@@_name_degree_clist
- { \g_@@_info_degree_int }
- }
-% \end{macrocode}
-%
% \changes{v0.15}{2022/01/22}{正确处理双导师信息。}
% 在导言区录入用户信息后进行变量设置。此处使用到了 \pkg{ctex} 提供的命令,
% 应当位于载入文档类之后。
% \begin{macrocode}
-\ctex_at_end_preamble:n
+\@@_at_begin_document:n
{
% \end{macrocode}
-% 设置类型信息。
-% \begin{macrocode}
- \tl_set:Nx \g_@@_info_type_en_tl
- { \clist_item:Nn \c_@@_name_type_en_clist { \g_@@_info_type_int } }
-% \end{macrocode}
% 拼合双导师的姓名和职称。
% \begin{macrocode}
- \bool_set:Nn \l_@@_second_supvbool
- { ! \clist_if_empty_p:N \g_@@_info_supvii_clist }
- \tl_set:Nx \g_@@_info_supvfull_tl
+ \clist_map_inline:nn
+ { \g_@@_info_supv_clist, \g_@@_info_supvii_clist }
{
- \clist_use:Nn \g_@@_info_supv_clist { \@@_hskip: }
- \bool_if:NT \l_@@_second_supvbool
- {
- \@@_quad:
- \clist_use:Nn \g_@@_info_supvii_clist { \@@_hskip: }
- }
+ \tl_gput_right:Nx \g_@@_info_supvfull_tl
+ { \clist_use:Nn #1 { \@@_hskip: } \@@_quad: }
}
- \tl_set:Nx \g_@@_info_supvfull_en_tl
+ \tl_gput_right:Nn \g_@@_info_supvfull_tl { \tex_unskip:D }
+ \tl_set:Nn \g_@@_info_supvfull_en_tl
{
- \g_@@_info_supv_en_tl
- \bool_if:NT \l_@@_second_supvbool
- { \@@_quad: \g_@@_info_supvii_en_tl }
+ \g_@@_info_supv_en_tl \@@_quad:
+ \g_@@_info_supvii_en_tl \tex_unskip:D
}
}
%</class>
@@ -4624,22 +4648,46 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{variable}
%
-% 盲审模式下抹去个人信息和学校名称。
+% \changes{v0.16}{2022/03/06}{正确处理学位和类型信息。}
+% 设置学位信息。该设置需要放在 \tn{ProcessKeysOptions} 命令后进行。
+%
+% \begin{variable}{\g_@@_info_type_tl}
+% 文档类型字样。
+% \begin{macrocode}
+%<*def-g>
+\tl_new:N \g_@@_info_type_tl
+\tl_set:Nx \g_@@_info_type_tl
+ { \clist_item:Nn \c_@@_name_type_clist { \g_@@_info_type_int } }
+% \end{macrocode}
+% \end{variable}
+%
+% \begin{variable}{\g_@@_info_type_en_tl}
+% 英文的学位字样。
+% \begin{macrocode}
+\tl_new:N \g_@@_info_type_en_tl
+\tl_set:Nx \g_@@_info_type_en_tl
+ { \clist_item:Nn \c_@@_name_type_en_clist { \g_@@_info_type_int } }
+% \end{macrocode}
+% \end{variable}
+%
+% \begin{variable}{\g_@@_info_degree_tl}
+% 学位类型字样。
+% \begin{macrocode}
+\tl_new:N \g_@@_info_degree_tl
+\tl_set_eq:NN \g_@@_info_degree_tl \g_@@_info_type_tl
+\bool_if:NF \g_@@_opt_academic_bool
+ { \tl_put_right:Nn \g_@@_info_degree_tl { 专业 } }
+%</def-g>
+% \end{macrocode}
+% \end{variable}
+%
+% 盲审模式下抹去学校名称。
% \begin{macrocode}
%<*class>
\bool_if:NT \g_@@_opt_anon_bool
{
- \ctex_at_end_preamble:n
- {
- \clist_map_inline:Nn \c_@@_name_anon_clist
- { \tl_gclear:c { g_@@_info_ #1 _tl } }
- \clist_map_inline:Nn \c_@@_name_anon_en_clist
- { \tl_gclear:c { g_@@_info_ #1 _en_tl } }
- \clist_map_inline:Nn \c_@@_name_anonlist_clist
- { \clist_gclear:c { g_@@_info_ #1 _clist } }
- \tl_gclear:N \c_@@_name_nju_tl
- \tl_gclear:N \c_@@_name_nju_en_tl
- }
+ \tl_gclear:N \c_@@_name_nju_tl
+ \tl_gclear:N \c_@@_name_nju_en_tl
}
% \end{macrocode}
%
@@ -4789,17 +4837,18 @@ To produce the documentation run the original source files ending with
\cs_new_protected:Npn \@@_loadfont_cjk_mac:
{
\@@_hide_no_script_msg:
- \setCJKmainfont{Songti~SC~Light}[
- BoldFont=Songti~SC~Bold,
- ItalicFont=Kaiti~SC,
- BoldItalicFont=Kaiti~SC~Bold]
- \setCJKsansfont{Heiti~SC~Light}[BoldFont=Heiti~SC~Medium]
- \setCJKmonofont{STFangsong}
- \setCJKfamilyfont{zhsong}{Songti~SC~Light}[BoldFont=Songti~SC~Bold]
- \setCJKfamilyfont{zhhei}{Heiti~SC~Light}[BoldFont=Heiti~SC~Medium]
- \setCJKfamilyfont{zhfs}{STFangsong}
- \setCJKfamilyfont{zhkai}{Kaiti~SC}[BoldFont=Kaiti~SC~Bold]
- \setCJKfamilyfont{zhnewhei}{PingFang~SC}
+ \setCJKmainfont { Songti~SC~Light }
+ [
+ BoldFont = Songti~SC~Bold,
+ ItalicFont = Kaiti~SC,
+ BoldItalicFont = Kaiti~SC~Bold
+ ]
+ \setCJKsansfont { Heiti~SC~Light } [ BoldFont = Heiti~SC~Medium ]
+ \setCJKmonofont { STFangsong }
+ \setCJKfamilyfont { zhsong } { Songti~SC~Light } [ BoldFont = Songti~SC~Bold ]
+ \setCJKfamilyfont { zhhei } { Heiti~SC~Light } [ BoldFont = Heiti~SC~Medium ]
+ \setCJKfamilyfont { zhfs } { STFangsong }
+ \setCJKfamilyfont { zhkai } { Kaiti~SC } [ BoldFont = Kaiti~SC~Bold ]
}
% \end{macrocode}
% \end{macro}
@@ -4851,7 +4900,8 @@ To produce the documentation run the original source files ending with
\cs_new_protected:Npn \@@_loadfont_cjk_founder:
{
% \end{macrocode}
-% 调整方正字体括号位置。\footnote{\XeTeX 的调整方法来自 \url{https://www.zhihu.com/question/46241367/answer/101660183}。}
+% 调整方正字体括号位置。
+% \footnote{\XeTeX 的调整方法来自 \url{https://www.zhihu.com/question/46241367/answer/101660183}。}
% \begin{macrocode}
\sys_if_engine_xetex:T
{ \xeCJKEditPunctStyle {quanjiao} { optimize-kerning = true } }
@@ -5502,14 +5552,6 @@ To produce the documentation run the original source files ending with
% \end{variable}
%
% \begin{macrocode}
-\msg_new:nnn { njuthesis } { extra-bib-style }
- {
- Wrongly-placed~ bib~ style.\\
- Please~ use~ the~ `bib/style`~ field.
- }
-% \end{macrocode}
-%
-% \begin{macrocode}
\keys_define:nn { nju / bib }
{
% \end{macrocode}
@@ -5543,17 +5585,13 @@ To produce the documentation run the original source files ending with
% \changes{v0.15}{2022/02/15}{提供传入 \pkg{biblatex} 宏包选项的接口。}
% 待传入 \pkg{biblatex} 的额外宏包选项,以列表形式储存。
% 更为常见的参考文献样式设置已由 \opt{bib/style} 提供,
-% 此处对重复的样式设置进行了检查。本设置项等效于在导言区使用
-% |\PassoptionToPackage{|\meta{key}|=|\meta{value}|}{biblatex}| 命令。
+% 两者中后传入的设置会覆盖已有的设定。本设置项等效于在导言区使用
+% |\PassoptionsToPackage{|\meta{key}|=|\meta{value}|}{biblatex}| 命令。
% \begin{macrocode}
option .code:n =
{
- \tl_if_in:VnTF \l_keys_value_tl { style = }
- { \msg_error:nn { njuthesis } { extra-bib-style } }
- {
\clist_gput_right:NV \g_@@_blx_option_clist
\l_keys_value_tl
- }
},
% \end{macrocode}
% \end{macro}
@@ -5563,10 +5601,7 @@ To produce the documentation run the original source files ending with
% 参考文献数据源,以列表形式储存。
% \begin{macrocode}
resource .code:n =
- {
- \clist_gput_right:NV \g_@@_blx_resource_clist
- \l_keys_value_tl
- },
+ { \clist_gput_right:NV \g_@@_blx_resource_clist \l_keys_value_tl },
}
% \end{macrocode}
% \end{macro}
@@ -5592,8 +5627,7 @@ To produce the documentation run the original source files ending with
{
\cs_undefine:N \addbibresource
\clist_gput_right:Nn \g_@@_blx_option_clist { backend = biber }
- \exp_args:NV \PassOptionsToPackage
- \g_@@_blx_option_clist { biblatex }
+ \exp_args:NV \PassOptionsToPackage \g_@@_blx_option_clist { biblatex }
}
% \end{macrocode}
% \end{macro}
@@ -5626,9 +5660,9 @@ To produce the documentation run the original source files ending with
% 使用 \pkg{etoolbox} 提供的 \tn{BeforeBeginEnvironment},在 \env{document} 环境
% 开始的钩子前载入 \pkg{biblatex} 并进行相关设置。
% \begin{macrocode}
-\BeforeBeginEnvironment { document }
+\bool_if:NT \g_@@_opt_load_blx_bool
{
- \bool_if:NT \g_@@_opt_load_blx_bool
+ \BeforeBeginEnvironment { document }
{
\@@_blx_pre_setup:
\RequirePackage { biblatex }
@@ -5704,61 +5738,105 @@ To produce the documentation run the original source files ending with
%
% \subsection{脚注}
% \changes{v0.18}{2022/05/01}{提供脚注设置项。}
-% ^^A 来自 fduthesis
+% ^^A 借鉴 fduthesis
+%
+% \begin{variable}{\g_@@_fn_ctext_option_clist}
+% 存储传入 \pkg{circledtext} 宏包的选项列表。
+% 由于当前版本放在编号位置的带圈数字无法正确缩放,这里手动指定了字体大小。
+% \begin{macrocode}
+\clist_set:Nn \g_@@_fn_ctext_option_clist { charf = \scriptsize }
+% \end{macrocode}
+% \end{variable}
+%
% \begin{macrocode}
-\tl_new:N \g_@@_fn_style_tl
\keys_define:nn { nju / footnote }
{
% \end{macrocode}
% \begin{macro}{footnote/style}
+% \changes{v1.1}{2022/10/16}{增加 \opt{circled} 和 \opt{circled*} 选项。}
+% 脚注编号的样式。
% \begin{macrocode}
- style .choices:nn = { plain, pifont }
+ style .choices:nn = { plain, pifont, circled, circled* }
+ {
+ \int_case:nnF { \l_keys_choice_int }
+ {
% \end{macrocode}
-% 若使用 \opt{pifont} 类型,则需引入 \pkg{pifont} 宏包。
+% \opt{pifont} 类型,用作对旧发行版的兼容选项。
% \begin{macrocode}
- {
- \tl_gset_eq:NN \g_@@_fn_style_tl \l_keys_choice_tl
- \int_compare:nT { \l_keys_choice_int = 2 }
- { \RequirePackage { pifont } }
- }
- }
+ { 2 }
+ {
+ \RequirePackage { pifont }
+ \cs_set_eq:NN \@@_fn_number:N \@@_fn_number_pifont:N
+ }
+% \end{macrocode}
+% \opt{circled} 类型,带星号的版本为阴文,需引入 \pkg{circledtext} 宏包。
+% \begin{macrocode}
+ { 3 }
+ {
+ \RequirePackage { circledtext }
+ \cs_set:Npn \@@_fn_number:N
+ { \@@_fn_number_circled:NV \c_false_bool }
+ }
+ { 4 }
+ {
+ \RequirePackage { circledtext }
+ \cs_set:Npn \@@_fn_number:N
+ { \@@_fn_number_circled:NV \c_true_bool }
+ }
+ }
+% \end{macrocode}
+% \opt{plain} 或未知类型直接使用计数器的值。
+% \begin{macrocode}
+ { \cs_set_eq:NN \@@_fn_number:N \int_use:N }
+ },
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_fn_symbol_pifont:n}
-% \opt{pifont} 普通版。以下四种都只包含 \numrange{1}{10}。
+% \begin{macro}{footnote/circledtext-option}
+% \changes{v1.1}{2022/10/16}{将生成脚注圈码的 \pkg{pifont} 替换为 \pkg{circledtext}。}
+% \pkg{circledtext} 宏包选项。
% \begin{macrocode}
-\cs_new:Npn \@@_fn_symbol_pifont:n #1
- { \ding { \int_eval:n { 171 + #1 } } }
+ circledtext-option .code:n =
+ { \clist_gput_right:Nn \g_@@_fn_ctext_option_clist {#1} },
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_footnote_number:N}
-% 脚注编号样式。
+% \begin{macro}{footnote/hang}
+% \changes{v1.1}{2022/10/16}{新增悬挂缩进选项。}
+% 是否悬挂缩进。
% \begin{macrocode}
-\tl_const:Nn \c_@@_fn_style_plain_tl { plain }
-\tl_const:Nn \c_@@_fn_style_pifont_tl { pifont }
-\cs_new:Npn \@@_footnote_number:N #1
- {
- \tl_case:NnF \g_@@_fn_style_tl
- {
+ hang .bool_gset:N = \g_@@_fn_hang_bool,
+ hang .initial:n = true
+ }
% \end{macrocode}
-% \opt{plain} 类型直接使用计数器 |footnote| 的值。
+% \end{macro}
+%
+% \begin{macro}{\@@_fn_number_pifont:N}
+% \opt{pifont} 选项提供的带圈数字。
% \begin{macrocode}
- \c_@@_fn_style_plain_tl
- { \int_use:N #1 }
+\cs_new:Npn \@@_fn_number_pifont:N #1 { \ding { \int_eval:n { 171 + #1 } } }
% \end{macrocode}
-% \opt{pifont} 类型无需进行额外的操作。
+% \end{macro}
+%
+% \begin{macro}{\@@_fn_number_circled:Nn,\@@_fn_number_circled:NV}
+% \opt{circled} 选项提供的带圈数字。
% \begin{macrocode}
- \c_@@_fn_style_pifont_tl
- { \@@_fn_symbol_pifont:n {#1} }
- }
+\cs_generate_variant:Nn \__circledtext_handle:nn { Vn }
+\cs_new_protected:Npn \@@_fn_number_circled:Nn #1#2
+ {
+ \group_begin:
+ \bool_set_eq:NN \l__circledtext_negative_bool #1
+ \__circledtext_handle:Vn \g_@@_fn_ctext_option_clist { #2 }
+ \group_end:
+ }
+\cs_generate_variant:Nn \@@_fn_number_circled:Nn { NV }
% \end{macrocode}
-% 变量 \cs{l_@@_fn_style_tl} 保存的类型未知时,默认使用 \opt{plain}
-% 类型。
+% \end{macro}
+%
+% \begin{macro}{\@@_fn_number:N}
+% 脚注编号。默认使用计数器 |footnote| 的值。
% \begin{macrocode}
- { \int_use:N #1 }
- }
+\cs_new_eq:NN \@@_fn_number:N \int_use:N
% \end{macrocode}
% \end{macro}
%
@@ -5767,21 +5845,28 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\bool_if:NT \g_@@_opt_load_fm_bool
{
- \cs_set:Npn \thefootnote { \@@_footnote_number:N \c@footnote }
+ \cs_set:Npn \thefootnote { \@@_fn_number:N \c@footnote }
% \end{macrocode}
% \end{macro}
%
% \subsubsection{整体样式}
%
% \begin{macro}[int]{\@makefntext}
-% 重定义内部脚注文字命令,使脚注编号不使用上标,宽度为 \qty{1.5}{em}。
+% 重定义内部脚注文字命令,使脚注编号不使用上标,宽度为 \qty{1.5}{em}
% \footnote{\url{http://tex.stackexchange.com/q/19844},
-% \url{https://www.zhihu.com/question/53030087}}
+% \url{https://www.zhihu.com/question/53030087}},
+% 并自行实现悬挂缩进。注意这个操作会使 \pkg{footmisc} 宏包内建的 \opt{hang} 选项失效。
% \begin{macrocode}
\cs_set:Npn \@makefntext #1
{
\mode_leave_vertical:
- \hbox_to_wd:nn { 1.5 em } { \@thefnmark \tex_hfil:D }
+ \hbox_to_wd:nn { \c_@@_fnhang_dim } { \@thefnmark \tex_hfil:D }
+ \tex_penalty:D \@M
+ \bool_if:NT \g_@@_fn_hang_bool
+ {
+ \int_set:Nn \tex_hangafter:D { 1 }
+ \dim_set_eq:NN \tex_hangindent:D \c_@@_fnhang_dim
+ }
#1
}
}
@@ -5792,7 +5877,7 @@ To produce the documentation run the original source files ending with
% \subsection{图片表格}
%
% \begin{macro}{image/path}
-% \changes{v1.0}{2021/08/06}{提供图片路径设置。}
+% \changes{v1.0}{2022/08/06}{提供图片路径设置。}
% 外置图片路径,等效于 \tn{graphicspath}。
% \begin{macrocode}
\keys_define:nn { nju / image } { path .code:n = { \graphicspath {#1} } }
@@ -5860,7 +5945,7 @@ To produce the documentation run the original source files ending with
% \end{macro}
%
% \begin{macro}{label-sep/figure,label-sep/table,label-sep/equation}
-% \changes{1.0}{2022/07/31}{添加编号连接符设置项。}
+% \changes{v1.0}{2022/07/31}{添加编号连接符设置项。}
% 修改图片、表格、公式编号中的连接符。
% \footnote{\url{https://tex.stackexchange.com/q/61756/}}
% \begin{macrocode}
@@ -5929,10 +6014,26 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{theorem/type,theorem/define}
-% 定义和创建定理类环境的接口。
+% \begin{macro}{theorem/type}
+% 定义定理类环境。
+% \begin{macrocode}
+ type .clist_gset:N = \g_@@_thm_type_clist,
+ type .initial:n =
+ {
+ { axiom } { 公理 },
+ { corollary } { 推论 },
+ { definition } { 定义 },
+ { example } { 例 },
+ { lemma } { 引理 },
+ { proof, *+ } { 证明 },
+ { theorem } { 定理 }
+ },
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{theorem/define}
+% 创建定理类环境。
% \begin{macrocode}
- type .clist_set:N = \g_@@_thm_type_clist,
define .value_forbidden:n = true,
define .code:n =
{
@@ -6218,8 +6319,8 @@ To produce the documentation run the original source files ending with
\use:c { @@_loadfont_math_ \g_@@_font_math_tl : }
\bool_if:NT \g_@@_opt_math_leq_bool
{
- \cs_set_eq:NN \le \leslant
- \cs_set_eq:NN \ge \geslant
+ \cs_set_eq:NN \le \leqslant
+ \cs_set_eq:NN \ge \geqslant
\cs_set_eq:NN \leq \leqslant
\cs_set_eq:NN \geq \geqslant
}
@@ -6321,7 +6422,7 @@ To produce the documentation run the original source files ending with
\@@_cover_entry:NNNnn #1 \l_@@_tmpb_dim #4 { grade } { id }
\@@_cover_entry:NNNn #1 #2 #4 { author }
\@@_cover_entry_supv:NNNn #1 \l_@@_tmpb_dim #4 { supv }
- \bool_if:NT \l_@@_second_supvbool
+ \bool_if:NT \g_@@_opt_second_supv_bool
{ \@@_cover_entry_supv:NNNn #1 \l_@@_tmpb_dim #4 { supvii } }
\@@_cover_entry:NNNn #1 #2 #4 { submitdate }
}
@@ -6567,10 +6668,8 @@ To produce the documentation run the original source files ending with
{
content =
\c_@@_text_cover_en_tl \@@_vskip:
- \textsc { \clist_item:Nn \c_@@_name_type_en_clist
- { \g_@@_info_degree_int } }
- \@@_vskip: { in } \@@_vskip:
- \g_@@_info_major_en_tl,
+ \group_begin: \scshape \g_@@_info_type_en_tl \group_end:
+ \@@_vskip: { in } \@@_vskip: \g_@@_info_major_en_tl,
bottom-skip = 2 cm
}
% \end{macrocode}
@@ -6679,14 +6778,15 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_cover_top_nl:
{
- \dim_set:Nn \l_@@_tmpa_dim { 3.2 em }
- \dim_set:Nn \l_@@_tmpb_dim { 9 em }
- \@@_box_spread_name:Nn \l_@@_tmpa_dim { clc } \@@_hskip:
- \@@_box_ulined_info:Nn \l_@@_tmpb_dim { clc } \tex_hfill:D
+ \dim_set:Nn \l_@@_tmpa_dim { 38.6 pt }
+ \dim_set:Nn \l_@@_tmpb_dim { 109 pt }
+ \@@_box_spread_name:Nn \l_@@_tmpa_dim { clc } \@@_hskip:
+ \@@_box_ulined_info:Nn \l_@@_tmpb_dim { clc } \tex_hfill:D
\@@_box_spread_name:Nn \l_@@_tmpa_dim { secretlv } \@@_hskip:
\@@_box_ulined_info:Nn \l_@@_tmpb_dim { secretlv } \tex_par:D
- \@@_box_spread_name:Nn \l_@@_tmpa_dim { udc } \@@_hskip:
- \@@_box_ulined_info:Nn \l_@@_tmpb_dim { udc } \tex_hfill:D \hbox:n { }
+ \@@_box_spread_name:Nn \l_@@_tmpa_dim { udc } \@@_hskip:
+ \@@_box_ulined_info:Nn \l_@@_tmpb_dim { udc } \tex_hfill:D
+ \@@_null:
}
% \end{macrocode}
% \end{macro}
@@ -6715,20 +6815,28 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_cover_info_nl:
{
- \skip_set:Nn \l_@@_tmp_skip { 1 em plus 1 fill }
- \@@_uline_list:NNn \c_@@_name_supvinfo_tl \l_@@_tmp_skip
+ \tl_set:Nx \l_@@_tmpa_tl
{
\clist_use:Nn \g_@@_info_supv_clist { ~ }
\clist_use:Nn \g_@@_info_supvii_clist { ~ }
\@@_hskip: \g_@@_info_supvcont_tl
}
- \@@_uline_bientry:Nnnn \l_@@_tmpa_dim { degree } { degree } { }
- \@@_uline_bientry:Nnnn \l_@@_tmpa_dim { majorb } { major } { }
- \tex_par:D
- \@@_uline_bientry:Nnnn \l_@@_tmpa_dim { submitdate } { submitdate } { }
- \@@_uline_bientry:Nnnn \l_@@_tmpa_dim { defenddate } { defenddate } { }
+ \skip_set:Nn \l_@@_tmp_skip { .5 em plus 1 fill }
+ \@@_uline_list:NNn \l_@@_tmpa_tl \l_@@_tmp_skip
+ { \c_@@_name_supvinfo_tl }
+% \end{macrocode}
+% 临时替换显示的名称字样。
+% \begin{macrocode}
+ \group_begin:
+ \tl_set_eq:NN \c_@@_name_major_tl \c_@@_name_majorb_tl
+ \@@_uline_bientry:Nn \l_@@_tmpa_dim { degree }
+ \@@_uline_bientry:Nn \l_@@_tmpa_dim { major }
+ \tex_par:D
+ \group_end:
+ \@@_uline_bientry:Nn \l_@@_tmpa_dim { submitdate }
+ \@@_uline_bientry:Nn \l_@@_tmpa_dim { defenddate }
\tex_par:D
- \@@_uline_entry:Nnnn \l_@@_tmpa_dim { confer } { confer } { }
+ \@@_uline_entry:Nn \l_@@_tmpa_dim { confer }
}
% \end{macrocode}
% \end{macro}
@@ -6850,13 +6958,14 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_degree_checkbox:n}
+% \begin{macro}{\@@_degree_checkbox:Nn}
% 信息栏的学位复选框。打勾符号对应 |U+2713|。
% \begin{macrocode}
-\cs_new_protected:Npn \@@_degree_checkbox:n #1
+\cs_new_protected:Npn \@@_degree_checkbox:Nn #1#2
{
- \int_compare:nNnTF { #1 } { = }
- { \g_@@_info_degree_int * \g_@@_info_type_int }
+ \bool_lazy_and:nnTF
+ { \g_@@_opt_academic_bool && #1 }
+ { \int_compare_p:n { \g_@@_info_type_int = #2 } }
{
\makebox [ 0 pt ] [l] { \ensuremath { \mdwhtsquare } }
\hspace { 0.1 em } \ensuremath { \checkmark }
@@ -6874,31 +6983,28 @@ To produce the documentation run the original source files ending with
\begin{tblr}
{
hlines, vlines, hspan=minimal,
- cells = {font=\normalsize},
- colspec = {cX[c]cX[c]cX[c]},
+ cells = { font = \normalsize },
+ colspec = { c X[c] c X[c] c X[c] },
cell{1}{2} = {c=5}{m}, cell{3}{2} = {c=5}{m},
cell{4}{2} = {c=5}{m}, cell{5}{2} = {c=5}{m}
}
\c_@@_name_titlec_tl & \g_@@_info_title_tl \\
\c_@@_name_ida_tl & \g_@@_info_id_tl &
\c_@@_name_depta_tl & \g_@@_info_dept_tl &
- \c_@@_name_year_tl &
+ \c_@@_name_year_tl &
\tl_range:Nnn \g_@@_info_submitdate_raw_tl {1} {4} \\
\c_@@_name_degreea_tl &
{
- \@@_degree_checkbox:n { 2 } 学术学位硕士 \qquad{}
- \@@_degree_checkbox:n { 4 } 专业学位硕士 \\
- \@@_degree_checkbox:n { 3 } 学术学位博士 \qquad{}
- \@@_degree_checkbox:n { 6 } 专业学位博士
+ \@@_degree_checkbox:Nn \c_true_bool { 2 } 学术学位硕士 \qquad
+ \@@_degree_checkbox:Nn \c_false_bool { 2 } 专业学位硕士 \\
+ \@@_degree_checkbox:Nn \c_true_bool { 3 } 学术学位博士 \qquad
+ \@@_degree_checkbox:Nn \c_false_bool { 3 } 专业学位博士
} \\
- \c_@@_name_email_tl & \g_@@_info_email_tl \\
+ \c_@@_name_email_tl & \g_@@_info_email_tl \\
\c_@@_name_supvb_tl &
- \clist_item:Nn \g_@@_info_supv_clist {1}
- \bool_if:NT \l_@@_second_supvbool
- {
- \@@_quad:
- \clist_item:Nn \g_@@_info_supvii_clist {1}
- } \\
+ \clist_item:Nn \g_@@_info_supv_clist { 1 }
+ \bool_if:NT \g_@@_opt_second_supv_bool
+ { \@@_quad: \clist_item:Nn \g_@@_info_supvii_clist { 1 } } \\
\end{tblr}
}
% \end{macrocode}
@@ -7094,9 +7200,9 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_p_decl_sign:nn #1#2
{
- \@@_name:n {#1} \c_@@_name_colon_tl \hfill
+ \@@_name:n {#1} \c_@@_name_colon_tl \tex_hfill:D
\@@_name:n {#2} \c_@@_name_colon_tl
- \skip_horizontal:n { 160 pt } \null \@@_vskip:
+ \skip_horizontal:n { 160 pt } \@@_null: \@@_vskip:
}
%</def-p>
% \end{macrocode}
@@ -7602,7 +7708,7 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% 专业、年级、姓名。
% \begin{macrocode}
- \@@_full_uline:Nx \l_@@_tmp_skip
+ \@@_get_width_print:Nx \l_@@_tmp_skip
{
\dim_set:Nn \l_@@_tmpa_dim { 11 em }
\dim_set:Nn \l_@@_tmpb_dim { 4 em }
@@ -7615,7 +7721,7 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% 导师姓名、职称。
% \begin{macrocode}
- \@@_full_uline:Nx \l_@@_tmpa_dim { \c_@@_name_supva_tl #1 }
+ \@@_get_width_print:Nx \l_@@_tmpa_dim { \c_@@_name_supva_tl #1 }
\@@_box_ulined_info:Nn \l_@@_tmpa_dim { supvfull }
}
% \end{macrocode}
@@ -7792,10 +7898,14 @@ To produce the documentation run the original source files ending with
% 单独制作的前言致谢页。
% \begin{macrocode}
\NewDocumentEnvironment { preface } { +b }
- { \@@_chapter:V \c_@@_name_preface_tl #1 }
+ { \@@_chapter:V \c_@@_name_preface_tl #1 }
{ \cleardoublepage }
\NewDocumentEnvironment { acknowledgement } { +b }
- { \@@_chapter:V \c_@@_name_acknowledgement_tl #1 }
+ {
+ \bool_if:NTF \g_@@_opt_anon_bool
+ { \@@_bookmark_toc:V \c_@@_name_acknowledgementa_tl }
+ { \@@_chapter:V \c_@@_name_acknowledgement_tl #1 }
+ }
{ \cleardoublepage }
% \end{macrocode}
% \end{environment}
@@ -7944,110 +8054,111 @@ To produce the documentation run the original source files ending with
%<*(def-u|def-g|def-p)>
\clist_map_inline:nn
{
- { acknowledgement } { 致 \qquad{} 谢 },
-%<def-g> { apply } {(申请 \g_@@_info_degree_tl 学位)},
-%<def-g> { auth decl } { 学位论文出版授权书 },
-%<def-p> { auth decl } { 研究报告使用授权书 },
-%<def-p> { author } { 作者 },
+ { acknowledgement } { 致 \qquad{} 谢 },
+ { acknowledgement a } { 致谢(盲审阶段,暂时隐去) },
+%<def-g> { apply } {(申请 \g_@@_info_degree_tl 学位)},
+%<def-g> { auth decl } { 学位论文出版授权书 },
+%<def-p> { auth decl } { 研究报告使用授权书 },
+%<def-p> { author } { 作者 },
% \end{macrocode}
% 用于摘要的作者名称字样
% \begin{macrocode}
-%<def-u> { author a } { 本科生姓名 },
-%<def-g> { author a } { \g_@@_info_type_tl 生姓名 },
-%<def-g> { auth sign } { 作者签名:\njuline{\hspace{6em}} },
-%<def-p> { auth sign } { 本人签名 },
-%<def-p> { auth sign a } { 导师签名 },
-%<def-g> { chairman } { 答辩委员会主席: },
-%<def-g> { clc } { 分类号 },
-%<def-g> { confer } { 学位授予单位和日期 },
- { date } { 日期 },
-%<def-g> { defend date } { 论文答辩日期 },
-%<def-g> { degree } { 申请学位级别 },
+%<def-u> { author a } { 本科生姓名 },
+%<def-g> { author a } { \g_@@_info_type_tl 生姓名 },
+%<def-g> { auth sign } { 作者签名:\njuline{\hspace{6em}} },
+%<def-p> { auth sign } { 本人签名 },
+%<def-p> { auth sign a } { 导师签名 },
+%<def-g> { chairman } { 答辩委员会主席: },
+%<def-g> { clc } { 分类号 },
+%<def-g> { confer } { 学位授予单位和日期 },
+ { date } { 日期 },
+%<def-g> { defend date } { 论文答辩日期 },
+%<def-g> { degree } { 申请学位级别 },
% \end{macrocode}
% 用于出版授权书的学位名称字样
% \begin{macrocode}
-%<def-g> { degree a } { 论文级别 },
-%<def-p> { dept } { 系别 },
+%<def-g> { degree a } { 论文级别 },
+%<def-p> { dept } { 系别 },
% \end{macrocode}
% 用于出版授权书的院系名称字样
% \begin{macrocode}
-%<def-g> { dept a } { 所在院系 },
-%<def-g> { email } { 作者 Email },
-%<def-g> { field } { 研究方向 },
-%<def-u> { grade } { 年级 },
-%<def-g> { grade } { 级 },
-%<def-u|def-g> { id } { 学号 },
-%<def-p> { id } { 工号 },
+%<def-g> { dept a } { 所在院系 },
+%<def-g> { email } { 作者 Email },
+%<def-g> { field } { 研究方向 },
+%<def-u> { grade } { 年级 },
+%<def-g> { grade } { 级 },
+%<def-u|def-g> { id } { 学号 },
+%<def-p> { id } { 工号 },
% \end{macrocode}
% 用于出版授权书的学号名称字样
% \begin{macrocode}
-%<def-g> { id a } { 研究生学号 },
- { listoffigures } { 插图目录 },
- { listoftables } { 表格目录 },
-%<def-p> { major } { 学科专业 },
+%<def-g> { id a } { 研究生学号 },
+ { listoffigures } { 插图目录 },
+ { listoftables } { 表格目录 },
+%<def-p> { major } { 学科专业 },
% \end{macrocode}
% 用于摘要的专业名称字样
% \begin{macrocode}
-%<def-g> { major a } { 专业 },
+%<def-g> { major a } { 专业 },
% \end{macrocode}
% 用于国家图书馆封面的专业名称字样
% \begin{macrocode}
-%<def-g> { major b } { 专业名称 },
- { notation } { 符号表 },
-%<def-u> { orig decl }
-%<def-u> { 南京大学本科毕业论文(设计) \\ 诚信承诺书 },
-%<def-g> { orig decl } { 南京大学学位论文原创性声明 },
-%<def-p> { orig decl } { 研究报告原创性声明 },
-%<def-u> { orig sign } { 作者签名 },
-%<def-g> { orig sign } { 研究生签名 },
-%<def-p> { orig sign } { 研究报告作者签名 },
- { paper list } { 发表文章目录 },
- { pdf creator } { LaTeX~ with~ njuthesis~ class },
- { preface } { 前 \qquad{} 言 },
-%<def-p> { report } { 博士后研究工作报告 },
-%<def-g> { reviewer } { 评阅人: },
-%<def-g> { secret lv } { 密级 },
-%<def-g> { secret status } { 论文涉密情况: },
-%<def-g> { secret free } { 不保密 },
-%<def-g> { secret date }
+%<def-g> { major b } { 专业名称 },
+ { notation } { 符号表 },
+%<def-u> { orig decl }
+%<def-u> { 南京大学本科毕业论文(设计) \\ 诚信承诺书 },
+%<def-g> { orig decl } { 南京大学学位论文原创性声明 },
+%<def-p> { orig decl } { 研究报告原创性声明 },
+%<def-u> { orig sign } { 作者签名 },
+%<def-g> { orig sign } { 研究生签名 },
+%<def-p> { orig sign } { 研究报告作者签名 },
+ { paper list } { 发表文章目录 },
+ { pdf creator } { LaTeX~ with~ njuthesis~ class },
+ { preface } { 前 \qquad{} 言 },
+%<def-p> { report } { 博士后研究工作报告 },
+%<def-g> { reviewer } { 评阅人: },
+%<def-g> { secret lv } { 密级 },
+%<def-g> { secret status } { 论文涉密情况: },
+%<def-g> { secret free } { 不保密 },
+%<def-g> { secret date }
%<def-g> { 保密,保密期( \c_@@_name_blankdatea_tl 至
-%<def-g> \c_@@_name_blankdatea_tl ) },
-%<def-g> { sign } { (签字) },
-%<def-u> { submit date } { 提交日期 },
-%<def-g> { submit date } { 论文提交日期 },
-%<def-p> { submit date } { 完成日期 },
-%<def-g> { subtitle } { (题名和副题名) },
-%<def-u> { supv } { 指导教师 },
-%<def-g> { supv } { 导师 },
-%<def-p> { supv full } { 合作导师 },
+%<def-g> \c_@@_name_blankdatea_tl ) },
+%<def-g> { sign } { (签字) },
+%<def-u> { submit date } { 提交日期 },
+%<def-g> { submit date } { 论文提交日期 },
+%<def-p> { submit date } { 完成日期 },
+%<def-g> { subtitle } { (题名和副题名) },
+%<def-u> { supv } { 指导教师 },
+%<def-g> { supv } { 导师 },
+%<def-p> { supv full } { 合作导师 },
% \end{macrocode}
% 用于摘要的导师名称字样
% \begin{macrocode}
-%<def-g> { supv a } { 指导教师(姓名、职称) },
+%<def-g> { supv a } { 指导教师(姓名、职称) },
% \end{macrocode}
% 用于出版授权书的导师名称字样
% \begin{macrocode}
-%<def-g> { supv b } { 导师姓名 },
-%<def-g> { supv info }
-%<def-g> { 指导教师姓名、职务、职称、学位、单位名称及地址 },
- { supv ii } { 第二导师 },
- { supv title } { 职称 },
- { tableofcontents } { 目 \qquad{} 录 },
-%<def-p> { title } { 报告题目 },
+%<def-g> { supv b } { 导师姓名 },
+%<def-g> { supv info }
+%<def-g> { 指导教师姓名、职务、职称、学位、单位名称及地址 },
+ { supv ii } { 第二导师 },
+ { supv title } { 职称 },
+ { tableofcontents } { 目 \qquad{} 录 },
+%<def-p> { title } { 报告题目 },
% \end{macrocode}
% 用于摘要的标题名称字样
% \begin{macrocode}
-%<def-g> { title a } { 毕业论文题目 },
+%<def-g> { title a } { 毕业论文题目 },
% \end{macrocode}
% 用于国家图书馆封面的标题名称字样
% \begin{macrocode}
-%<def-g> { title b } { 学位论文 },
+%<def-g> { title b } { 学位论文 },
% \end{macrocode}
% 用于出版授权书的标题名称字样
% \begin{macrocode}
-%<def-g> { title c } { 论文题名 },
-%<def-g> { udc } { U D C },
-%<def-g> { year } { 学位年度 }
+%<def-g> { title c } { 论文题名 },
+%<def-g> { udc } { U D C },
+%<def-g> { year } { 学位年度 }
}
{ \@@_define_name:nn #1 }
% \end{macrocode}
@@ -8099,7 +8210,7 @@ To produce the documentation run the original source files ending with
% 对专业硕士的封面条目进行临时修改。
% \begin{macrocode}
%<*def-g>
-\int_compare:nT { \g_@@_info_degree_int == 2 }
+\bool_if:NF \g_@@_opt_academic_bool
{ \tl_set:Nn \c_@@_name_major_tl { 专业学位类别(领域) } }
%</def-g>
% \end{macrocode}
@@ -8236,7 +8347,11 @@ To produce the documentation run the original source files ending with
% 章节标题前后间距。
% \begin{macrocode}
{ chapter before } { 10 pt },
- { chapter after } { 60 pt }
+ { chapter after } { 60 pt },
+% \end{macrocode}
+% 脚注编号宽度。
+% \begin{macrocode}
+ { fn hang } { 13.5 pt }
}
{ \@@_define_dim:nn #1 }
% \end{macrocode}
diff --git a/macros/unicodetex/latex/njuthesis/njuthesis.ins b/macros/unicodetex/latex/njuthesis/njuthesis.ins
index 944922a626..82a71afd74 100644
--- a/macros/unicodetex/latex/njuthesis/njuthesis.ins
+++ b/macros/unicodetex/latex/njuthesis/njuthesis.ins
@@ -15,7 +15,7 @@
%% or (at your option) any later version. The latest version of this
%% license is in:
%%
-%% http://www.latex-project.org/lppl.txt
+%% 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.
@@ -38,7 +38,7 @@ the LaTeX Project Public License, either version 1.3c 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
+ 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.
diff --git a/macros/unicodetex/latex/njuthesis/njuthesis.pdf b/macros/unicodetex/latex/njuthesis/njuthesis.pdf
index 4dd4b08be9..a02d764b62 100644
--- a/macros/unicodetex/latex/njuthesis/njuthesis.pdf
+++ b/macros/unicodetex/latex/njuthesis/njuthesis.pdf
Binary files differ
diff --git a/support/TeX4ht/source/ChangeLog b/support/TeX4ht/source/ChangeLog
index a8c6076c1f..31e91303c0 100644
--- a/support/TeX4ht/source/ChangeLog
+++ b/support/TeX4ht/source/ChangeLog
@@ -1,3 +1,9 @@
+2022-10-23 Michal Hoftich <michal.h21@gmail.com>
+
+ * tex4ht-html4.tex (html4.4ht): added the Gin-percent option. It
+ sets the dimention of images in percent of the page width.
+ https://tex.stackexchange.com/a/563314/2891
+
2022-10-20 Michal Hoftich <michal.h21@gmail.com>
* tex4ht-4ht.tex (floatrow.4ht): basic support for the Floatrow
diff --git a/support/TeX4ht/source/tex4ht-html4.tex b/support/TeX4ht/source/tex4ht-html4.tex
index d72179ac89..55989c36fc 100644
--- a/support/TeX4ht/source/tex4ht-html4.tex
+++ b/support/TeX4ht/source/tex4ht-html4.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-html4.tex 1218 2022-10-19 12:57:24Z michal_h21 $
+% $Id: tex4ht-html4.tex 1220 2022-10-23 18:52:19Z michal_h21 $
% Compile 4 times: latex tex4ht-html4
% Copy html4.4ht into the work directory before all but the last compilation.
%
@@ -13923,13 +13923,20 @@ for margin pars.
\fi
class="includegraphics"
}
+\else \:CheckOption{Gin-percent} \if:Option
+\ExplSyntaxOn
+\Configure{Gin-dim}
+ {\if:boundingbox{style="max-width:\fp_eval:n{round(\Gin@req@width/\textwidth*100,2)}\char_generate:nn { `\% } { 12 }"}{}}
+\ExplSyntaxOff
\else
- \Log:Note{for key dimensions try the option
- `Gin-dim'; for key dimensions when bounding box is unavailable
- try `Gin-dim+'; neither is recommended}
+ \Log:Note{for setting image dimensions, try the option
+ `Gin-dim'; to use percents instead of units, use
+ `Gin-perecent'; for key dimensions when bounding
+ box is unavailable try `Gin-dim+';
+ neither is recommended}
\Configure{Gin-dim}
{\if:boundingbox{|<graphics width/height|>}{}}
-\fi \fi
+\fi \fi \fi
>>>
\<pixels graphics width/height\><<<
diff --git a/support/TeX4ht/source/tex4ht-mathjax.tex b/support/TeX4ht/source/tex4ht-mathjax.tex
index 97ac94d20d..e93531455a 100644
--- a/support/TeX4ht/source/tex4ht-mathjax.tex
+++ b/support/TeX4ht/source/tex4ht-mathjax.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-mathjax.tex 1214 2022-10-11 12:25:01Z michal_h21 $
+% $Id: tex4ht-mathjax.tex 1215 2022-10-17 13:58:09Z michal_h21 $
% compile: latex tex4ht-mathjax
%
% Copyright 2018-2022 TeX Users Group
@@ -72,12 +72,29 @@ We still use regula expressions to escape invalid XML characters to entities, so
>>>
-Provide configuratio for MathJax
+Provide configuration for MathJax
\<defined commands\><<<
\NewConfigure{MathJaxConfig}{1}
>>>
+The MathJaxMacros configuration includes a file with TeX macro
+definitions, and include them at the beginning of each HTML page.
+MathJax then interprets them, so they are available in math.
+This is an alternative to JavaScript method using MathJaxConfig.
+
+The file cannot contain any other commands than newcommand,
+all characters that could cause issues in the HTML parsing must
+be escaped, so \verb|<| should became \verb|&lt;|, for example.
+
+\<defined commands\><<<
+\NewConfigure{MathJaxMacros}[1]{%
+\Configure{@BODY}{\bgroup\NoFonts\ttfamily\detokenize{\(}%
+ \special{t4ht*<#1}%
+\detokenize{\)}\EndNoFonts\egroup}%
+}
+>>>
+
The following commands are used for patching of the standard math commands and
environments. They will then keep the LaTeX code unchanged.
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index 98bba62ce8..785866689e 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -12,6 +12,7 @@ $mirrors = {
'China' => {
'https://mirror.bjtu.edu.cn/CTAN/' => 1,
'https://mirrors.bfsu.edu.cn/CTAN/' => 1,
+ 'https://mirrors.cloud.tencent.com/CTAN/' => 1,
'https://mirrors.sustech.edu.cn/CTAN/' => 1,
'https://mirrors.tuna.tsinghua.edu.cn/CTAN/' => 1,
'https://mirrors.ustc.edu.cn/CTAN/' => 1,
@@ -38,11 +39,14 @@ $mirrors = {
},
'Korea' => {
'http://ftp.ktug.org/tex-archive/' => 1,
- 'https://cran.asia/tex/' => 1,
'https://ftp.kaist.ac.kr/pub/tex-archive/' => 1,
'https://lab.uklee.pe.kr/tex-archive/' => 1,
+ 'https://mirror.kakao.com/CTAN/' => 1,
'https://mirror.navercorp.com/CTAN/' => 1,
},
+ 'Philippines' => {
+ 'http://mirror.rise.ph/ctan/' => 1,
+ },
'Singapore' => {
'https://download.nus.edu.sg/mirror/ctan/' => 1,
},
@@ -58,9 +62,6 @@ $mirrors = {
'https://mirror.easyname.at/ctan/' => 1,
'https://mirror.kumi.systems/ctan/' => 1,
},
- 'Belarus' => {
- 'https://mirror.datacenter.by/pub/mirrors/CTAN/' => 1,
- },
'Czech Republic' => {
'http://ftp.cvut.cz/tex-archive/' => 1,
'https://mirrors.nic.cz/tex-archive/' => 1,
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 7314139fcc..dcebb2a36b 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2022
-depend revision/64783
+depend revision/64796
name 00texlive.image
category TLCore
-revision 64783
+revision 64797
shortdesc TeX Live files only in the source repository
longdesc The files here are not copied by the installer and containers
longdesc are not built for them; they exist only in the source
@@ -4660,7 +4660,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 64776
+revision 64785
shortdesc TeX Live standalone installer package
longdesc This package defines the files to go into the installer
longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the
@@ -28245,7 +28245,7 @@ catalogue-version 1.0
name babel
category Package
-revision 64614
+revision 64797
shortdesc Multilingual support for LaTeX, LuaLaTeX, XeLaTeX, and Plain TeX
relocated 1
longdesc This package manages culturally-determined typographical (and
@@ -28258,22 +28258,22 @@ longdesc has to be done for each language. Included is also a set of ini
longdesc files for about 250 languages. Many language styles work with
longdesc pdfLaTeX, as well as with XeLaTeX and LuaLaTeX, out of the box.
longdesc A few even work with plain formats.
-containersize 192408
-containerchecksum 1c69ff276834f3581bd006eb1d20428884b268c213e1aed29b3e426d57015e821a268aecf9abf76035716609db76e858d3d550dc2fc3ccfc3320c648958c0a22
-doccontainersize 872556
-doccontainerchecksum f74f6acff9e4263c11d434b4cfc9e874ef7c2d7862f204e3f5344538211c347e84f4c0c0b0842cc3c2cdb3af18596e8e0827f5cd01b2ab3274864fdf94ef7d58
+containersize 192812
+containerchecksum 07b4f725dc99d1bc64186a00a43d0ffc0012bd06858272b0f75ea199fc610423f2d8208a0c0fa2e97d26bfb0b9041f95014fea2e417b2a9a4ba489f3c49d90b1
+doccontainersize 871804
+doccontainerchecksum 8803378370c46f26984f1e3b7622ff0f2409a267c2090cb34e9a3bc8bc109d9264d6fce95a0a49a64468c6b94c469552d77463872ea2c93f0dc78166ff78ad32
docfiles size=218
RELOC/doc/latex/babel/README.md details="Readme"
RELOC/doc/latex/babel/babel.pdf details="Package documentation"
-srccontainersize 715732
-srccontainerchecksum 6020850841e08aaf47e23df71b5d201cad79f1c8578b0c468b2a91e7d25cb227c29d11ebb3669efc7cac5c594a4cb512c4144059ae6559a51b9ae36db31afead
-srcfiles size=397
+srccontainersize 716104
+srccontainerchecksum 1ba777c1f70823a027f427e02e90ea1202abbde44d740168047b0e1d7723cc0bb04ca496bb7af33ca07d07b0b5d9ddb96670fed27419ad755927a9bb0e5bb5e4
+srcfiles size=398
RELOC/source/latex/babel/babel.dtx
RELOC/source/latex/babel/babel.ins
RELOC/source/latex/babel/bbcompat.dtx
RELOC/source/latex/babel/bbidxglo.dtx
RELOC/source/latex/babel/locale.zip
-runfiles size=1020
+runfiles size=1022
RELOC/makeindex/babel/bbglo.ist
RELOC/makeindex/babel/bbind.ist
RELOC/tex/generic/babel/UKenglish.sty
@@ -28781,6 +28781,8 @@ runfiles size=1020
RELOC/tex/generic/babel/locale/ps/babel-pashto.tex
RELOC/tex/generic/babel/locale/ps/babel-ps.ini
RELOC/tex/generic/babel/locale/pt/babel-brazilian.tex
+ RELOC/tex/generic/babel/locale/pt/babel-brazilianportuguese.tex
+ RELOC/tex/generic/babel/locale/pt/babel-europeanportuguese.tex
RELOC/tex/generic/babel/locale/pt/babel-portuguese-br.tex
RELOC/tex/generic/babel/locale/pt/babel-portuguese-brazil.tex
RELOC/tex/generic/babel/locale/pt/babel-portuguese-portugal.tex
@@ -29022,7 +29024,7 @@ catalogue-contact-repository https://github.com/latex3/babel
catalogue-ctan /macros/latex/required/babel/base
catalogue-license lppl1.3
catalogue-topics multilingual
-catalogue-version 3.81
+catalogue-version 3.82
name babel-albanian
category Package
@@ -57265,16 +57267,16 @@ binfiles arch=x86_64-solaris size=1
name chktex
category TLCore
-revision 52851
+revision 64797
shortdesc Check for errors in LaTeX documents
longdesc The program reports typographic and other errors in LaTeX
longdesc documents. Filters are also provided for checking the LaTeX
longdesc parts of CWEB documents.
depend chktex.ARCH
-containersize 9944
-containerchecksum 918392b98262e29503fff544c735b9c7d8da07340362d258b88b09a940d6c8495d761c416ae79b99711ad0fafc559b4ec3b71511e881adac3f3d55c617ddc2cc
-doccontainersize 425800
-doccontainerchecksum 5c24c5fe8f3100346e52104d0f65b096b9e3af7cdf02318fdc1977c7b9ded9b2a40fb06bd13a77866a34a9bfe77365038303e0cd09a327afcfe6c81b3dc36fdf
+containersize 9920
+containerchecksum 7c28847e87e788d0f50c07c1c3140962a70173d2a36997720f3066755740744060ecd03272662aff563de39102052e91a4582a4bb63e35f918ad8f517dff55e6
+doccontainersize 425796
+doccontainerchecksum 28df4bed075d66d9f25bcbe332731f1d5f0bb0f7f92bd2f3618c84adf788d0f429bd0c6e75381ebf7bbeac98409d94f85d17ebd752f9e4af707d9e3373d45f97
docfiles size=112
texmf-dist/doc/chktex/ChkTeX.pdf details="System documentation"
texmf-dist/doc/man/man1/chktex.1
@@ -57289,9 +57291,9 @@ runfiles size=8
texmf-dist/scripts/chktex/deweb.pl
catalogue-contact-home http://www.nongnu.org/chktex/
catalogue-ctan /support/chktex
-catalogue-license gpl2
+catalogue-license gpl2+
catalogue-topics debug-supp
-catalogue-version 1.7.6
+catalogue-version 1.7.8
name chktex.aarch64-linux
category TLCore
@@ -147124,7 +147126,7 @@ catalogue-version 1.0.0
name iexec
category Package
-revision 64779
+revision 64797
shortdesc Execute shell commands and input their output
relocated 1
longdesc With the help of the \iexec command, you can execute a shell
@@ -147134,16 +147136,16 @@ longdesc command.
depend tools
depend xkeyval
containersize 2380
-containerchecksum 86803709dc5f130da24cf78bdc97ca7fd385b5f6e5e4cde160b1e33c11d74d41aa9d4c7649dc88dc4556d57de34565e7a9ca9bc87764a1a958c164e04798d5d5
-doccontainersize 323620
-doccontainerchecksum 227a99283ebdf635e96005b99312b32ef15c65adb40b9de503735f18f4093b15832005ca25ca3b7c1316431eca50eb4742b78e9781f25d3d21c6168b11fe16c5
-docfiles size=83
+containerchecksum ccc19590a66d2a948bb8bc5a59a76dcc6e413a2321a7608df798ce845edea774b85a24ff97d094877e35d915a4bc211c5e341d2ee95007d267e7eec0ef2212f6
+doccontainersize 325224
+doccontainerchecksum 30dfca9aba5c8736106db075c2e8ef98c536540ed4e7a534b2f5778ef847d3588005fa1a518639ba08a70639557fb7a6c79b0cfdc480161f795963970a3f6dd7
+docfiles size=84
RELOC/doc/latex/iexec/DEPENDS.txt
RELOC/doc/latex/iexec/LICENSE.txt
RELOC/doc/latex/iexec/README.md details="Readme"
RELOC/doc/latex/iexec/iexec.pdf details="Package documentation"
-srccontainersize 5260
-srccontainerchecksum dcb48e2c1eba3ec6c64bfcdbda16f755a850748f36ff06b9bbebb41df32612b00421c57e4898487f5172fda9774064ed98171351dc38b37731b652cbeceb7308
+srccontainersize 5472
+srccontainerchecksum 8a1904bf930b37c067de9b4301b3967bb69f02559c69395bc135c357b2f7736abd5a5919672b1ae6845d0999a46ca5e3af39aef10f7deb712e8c06b7f6333eed
srcfiles size=5
RELOC/source/latex/iexec/iexec.dtx
RELOC/source/latex/iexec/iexec.ins
@@ -147153,7 +147155,7 @@ catalogue-contact-repository https://github.com/yegor256/iexec
catalogue-ctan /macros/latex/contrib/iexec
catalogue-license mit
catalogue-topics sys-supp exec-foreign
-catalogue-version 0.11.0
+catalogue-version 0.11.1
name ifallfalse
category Package
@@ -160891,7 +160893,7 @@ catalogue-version 1.0
name jobname-suffix
category Package
-revision 64512
+revision 64797
shortdesc Compile differently based on the filename
relocated 1
longdesc This package allows to compile a document differently depending
@@ -160899,13 +160901,13 @@ longdesc on the portion of the document's file name (internally, the
longdesc \jobname) that comes after the first "-" character. This allows
longdesc one to have one source file and multiple links to this source
longdesc file that each compile differently.
-containersize 1752
-containerchecksum e1f50191f48a953e6707278dc45d838436b7b7d753e9e72d7e3673aeb6ab764f22c17c1fc0cb3d1c6ef6b7631c8352b07f453487bce7a9145b519e42c15f40c0
-doccontainersize 440624
-doccontainerchecksum 621c441b64715bc88b26a4a50ec5d7b9fd9ce46bab73b81ba2c2d303013d57bac71c5d2c81eb956821a0bb43f2bbb9d9e7a65fe40b69a4bc4e7311ad7b7229ea
+containersize 1756
+containerchecksum b2e5a82d5bb8575e3708a3e2c30e23a3ceb129c6cd78882126061321350c3ad72e36ccf41392eca7556203be713530d3169bcb39210f91d720159c49975eddf7
+doccontainersize 440628
+doccontainerchecksum fbe45bf364098e30deb8e040dfbb59b3b81cf53720793ca02dce59ec113ea57b86c1a3a8465ce6029ac1fa7b19b2220fdddc71f71285969e8f91eeafcabc3bfb
docfiles size=110
RELOC/doc/latex/jobname-suffix/README.md details="Readme"
- RELOC/doc/latex/jobname-suffix/jobname-suffix.pdf
+ RELOC/doc/latex/jobname-suffix/jobname-suffix.pdf details="Package documentation"
RELOC/doc/latex/jobname-suffix/jobname-suffix.tex
runfiles size=1
RELOC/tex/latex/jobname-suffix/jobname-suffix.sty
@@ -224262,7 +224264,7 @@ catalogue-version 0.0.1
name njuthesis
category Package
-revision 64081
+revision 64797
shortdesc LaTeX thesis template for Nanjing University
relocated 1
longdesc The njuthesis class is intended for typesetting Nanjing
@@ -224270,20 +224272,20 @@ longdesc University dissertations with LaTeX, providing support for
longdesc bachelor, master, and doctoral theses as well as postdoctoral
longdesc reports. Compilation of this class requires either XeLaTeX or
longdesc LuaLaTeX.
-containersize 19264
-containerchecksum 68c6c77d4ec73ab1c6beffcb4e888131b8e11e6ad612da2eb8f1685b4c421d5a34d17f00bb29b39f5a7676cf1a9b351b55dae21870113c9f4a4cda4ae9eed81a
-doccontainersize 1177448
-doccontainerchecksum 41bee57e5659b0999d6d62095ef9f11899654a9b539950be66d191d222370e222dc43726e217b312c5c74543d3f48c1aae111fe116de88689f52caa90e9188c8
-docfiles size=296
+containersize 19416
+containerchecksum 8f09d2cd0d11e0334e6627c496be260dd95dbbc5aeb48aedd493814cd25f599ddc729d4de41e46c883f335a3c66f03b873f486d135913ef9296cfff72fe73db7
+doccontainersize 1189824
+doccontainerchecksum b6f015ef40ddd85a774a26a386c0c3d444c1b6ce8d001802fcc0d659412c9c1472766f1c7c4447813e6bace14641163fef2d42e3c4e722b36f1edad48706ac5d
+docfiles size=300
RELOC/doc/latex/njuthesis/LICENSE
RELOC/doc/latex/njuthesis/README.md details="Readme"
RELOC/doc/latex/njuthesis/njuthesis.pdf details="Package documentation" language="zh"
-srccontainersize 63452
-srccontainerchecksum e04627bc5a836db3ef6c7859f4c0bad0affdca7b60a9450d2e2641eb8f250dd94e899639d21b87a258e7b97623997e0ca63ba6e78be4dd7cb5d2733dd2f7e7eb
-srcfiles size=73
+srccontainersize 64580
+srccontainerchecksum b924dec82bae5368009fc624c3ff760b5789b325d27c03afdcd168fc4739bf695ce56586bf2edce427681e2cd30225b13686114679f0a24fd4a8a84a4994dc11
+srcfiles size=74
RELOC/source/latex/njuthesis/njuthesis.dtx
RELOC/source/latex/njuthesis/njuthesis.ins
-runfiles size=28
+runfiles size=29
RELOC/tex/latex/njuthesis/njuthesis-graduate.def
RELOC/tex/latex/njuthesis/njuthesis-postdoctoral.def
RELOC/tex/latex/njuthesis/njuthesis-undergraduate.def
@@ -224296,7 +224298,7 @@ catalogue-contact-support https://github.com/nju-lug/NJUThesis/discussions
catalogue-ctan /macros/unicodetex/latex/njuthesis
catalogue-license lppl1.3c
catalogue-topics class dissertation proposal expl3 latex3 chinese
-catalogue-version 1.0.0
+catalogue-version 1.1.0
name njuvisual
category Package
@@ -247341,32 +247343,32 @@ catalogue-topics doc-supp
name piton
category Package
-revision 64656
+revision 64797
shortdesc Typeset Python listings with LPEG
relocated 1
longdesc This package uses the Lua library LPEG to typeset and highlight
longdesc Python listings.
-containersize 7136
-containerchecksum 4ba99964c96301b9c82f55d8ca49345318fc221527ed85b2d507959403c93c7f669a97da901731e1178bf90ba56521c66fe753d8c72cd982e3c28dc93073fbe3
-doccontainersize 296024
-doccontainerchecksum a5b7c950097e502f3a1b32baa48191bab6ed85c58aabf8986ff5a5d36edabd35b0d24c5399f241b9bbb00984dfc274d30a51a6689a6d12d3c42663273f43b7ac
-docfiles size=119
+containersize 7872
+containerchecksum 0fa66173122f81bfba9454a2df11bd5e535506ec20e6554c8b85cffd0682e2fd519f3c3587186f26a5c3e9bdf8c71d6f5a46e5aa9b914339d26a8738519e7bc6
+doccontainersize 397012
+doccontainerchecksum 4ddeb22362d8e728e7ca570537b6a34fc5254373df9f31b032dac9848fdd14e295bcfe662e59ab2bd90009a4b688c58474f72c67387221ef41701ac11719d049
+docfiles size=162
RELOC/doc/lualatex/piton/README.md details="Readme"
RELOC/doc/lualatex/piton/piton-french.pdf details="Package documentation" language="fr"
RELOC/doc/lualatex/piton/piton-french.tex
RELOC/doc/lualatex/piton/piton.pdf details="Package documentation"
-srccontainersize 12784
-srccontainerchecksum 09c63d708ada91d25c98a80daf2a5d8a52219c1ed880c831847cb080ca85153cfe0a00da538243ab1d77da0562255aff74650ced50fcdcbfad6a4361c34d87be
-srcfiles size=13
+srccontainersize 16016
+srccontainerchecksum 7ae3c5199f7495e177d34f03fc7f5c48f4a8cc809e0a5cc16b5750150e70be27a1d03997833e409e8f8857d1be40ae0d67aba80897536ef7ee3592ebfe51fb88
+srcfiles size=18
RELOC/source/lualatex/piton/piton.dtx
RELOC/source/lualatex/piton/piton.ins
-runfiles size=7
+runfiles size=9
RELOC/tex/lualatex/piton/piton.sty
catalogue-also codehigh
catalogue-ctan /macros/luatex/latex/piton
catalogue-license lppl1.3
catalogue-topics listing synt-hlt luatex
-catalogue-version 0.7
+catalogue-version 0.8
name pittetd
category Package
@@ -259952,7 +259954,7 @@ catalogue-version 1.5e
name pstricks
category Package
-revision 64360
+revision 64797
catalogue pstricks-base
shortdesc PostScript macros for TeX
relocated 1
@@ -259972,11 +259974,11 @@ longdesc pdftricks package, to generate a PDF inclusion from a PSTricks
longdesc diagram. PSTricks macros can also generate PDF output when the
longdesc document is processed XeTeX, without the need for other
longdesc supporting packages.
-containersize 87876
-containerchecksum 4892106270fb8726fcdb0d80bfe79ce7d0dac346a424a239ba097aa35d697a7c6b44cbd399d752348c1a8c562731d6bd4d7f5bcacc7983f9811a7fdfbc11ea9c
-doccontainersize 7600064
-doccontainerchecksum 4426915c9c83573df44c45ef14cd897168f7d990732dbdcd74576921a25181a3ce82ddec87bc6e6d8a3acf6a4c54c1750c4f4ba124532d33c0ea530a8e4c7c5c
-docfiles size=2313
+containersize 87896
+containerchecksum 36d5ec1cec97a0047d6c14c092479d3431708000a63f381deedf783da1d1946e351d2d8f2d558407e68428b4d910a8d32e4c426734a590167026c29009c945c5
+doccontainersize 7596068
+doccontainerchecksum 158609d5c00b10b38b16e280e1c21dfba245801c12101ae7934d90ed95f6d9b2bd335886accdf9faa319696df3fdadd98728c9daee69b9f5a624c3ef0ae8a9d5
+docfiles size=2316
RELOC/doc/generic/pstricks/PSTricks.bib
RELOC/doc/generic/pstricks/README details="Readme"
RELOC/doc/generic/pstricks/ctandir.sty
@@ -260061,12 +260063,11 @@ runfiles size=130
catalogue-alias pstricks
catalogue-also pstricks-add
catalogue-contact-home https://tug.org/PSTricks/main.cgi/
-catalogue-contact-repository https://archiv.dante.de/~herbert/TeXnik/
catalogue-contact-support https://tug.org/mailman/listinfo/pstricks
catalogue-ctan /graphics/pstricks/base
catalogue-license lppl1.3
catalogue-topics graphics-in-tex colour pstricks dvips-special xetex
-catalogue-version 3.16
+catalogue-version 3.17
name pstricks-add
category Package
@@ -281667,7 +281668,7 @@ catalogue-version 1.36
name siunitx
category Package
-revision 64612
+revision 64797
shortdesc A comprehensive (SI) units package
relocated 1
longdesc Typesetting values with units requires care to ensure that the
@@ -281692,17 +281693,17 @@ longdesc The package relies on LaTeX 3 support from the l3kernel and
longdesc l3packages bundles.
depend l3kernel
depend l3packages
-containersize 65620
-containerchecksum ca21355abf35001ce66c1e1a3b437f07c365e5025e96d48589586d9454c46ca8b879d12da9a134c170e71d8e2998ba1f0427b3b36230730dd2ae9a85efb2c5c8
-doccontainersize 1242156
-doccontainerchecksum 06b62f2f22c06974fa2ec38cae01dccd8d5dafacc371c4cc77b9b42e4f966bee9aa8652ad03e598e7dbf6b8bd7b0a150c2b7906a8661ad31dfcc426f38457dc5
+containersize 65640
+containerchecksum d735a12b4080d6200ca38da6896c439754a6619221f41b0de9059ba1d1881d1217e2de1ac319f370bc1a6f7237842e790faa9a429d349ca86e22a5ea10383d2f
+doccontainersize 1242984
+doccontainerchecksum 3dc708909025ffd44d120ba66a6a5c56bce95480be06f22dea466873b88f0dca7449cccc7a30789f7171e1c96d315e3c0fb57801a639fb25717d9be23c195ca8
docfiles size=332
RELOC/doc/latex/siunitx/CHANGELOG.md
RELOC/doc/latex/siunitx/README.md details="Readme"
RELOC/doc/latex/siunitx/siunitx-code.pdf details="Code documentation"
RELOC/doc/latex/siunitx/siunitx.pdf details="User manual"
-srccontainersize 116744
-srccontainerchecksum ccadf34f471aa2fd679bbedee4acddb6114eaf4913f276e997be7574ee52c171f548e50d28aa3333075b99c1019f452c4c3d5659adb635a25f9ed579945780d3
+srccontainersize 116788
+srccontainerchecksum e4fb89038de4e41c10394923fc83cd26f44084bdc1247b1d4c86f3c0f00d615786d58d00992c4acfaffe543bf6c440f8ff170f21aff72e79a90ce1fce69e5df4
srcfiles size=179
RELOC/source/latex/siunitx/siunitx-abbreviation.dtx
RELOC/source/latex/siunitx/siunitx-angle.dtx
@@ -281734,7 +281735,7 @@ catalogue-contact-repository https://github.com/josephwright/siunitx
catalogue-ctan /macros/latex/contrib/siunitx
catalogue-license lppl1.3c
catalogue-topics units scientific-docs expl3
-catalogue-version 3.1.8
+catalogue-version 3.1.9
name skak
category Package
@@ -288904,7 +288905,7 @@ binfiles arch=x86_64-solaris size=1
name srdp-mathematik
category Package
-revision 64583
+revision 64797
shortdesc Typeset Austrian SRDP in mathematics
relocated 1
longdesc This package provides basic commands for the defined formats of
@@ -288913,13 +288914,13 @@ longdesc mathematics. Furthermore, it includes ways to implement answers
longdesc in the tex file which can optionally be displayed in the pdf
longdesc file, and it offers a way to vary the answers in order to
longdesc create different groups (e. g. for tests) easily.
-containersize 30400
-containerchecksum 3b015109c89a20d74c784c7cfdf77f2cdc2d2cfa1bd3f21dd765903386ee95966ee23ea2f27fb8b0392ca4f39577227841bc8dc0a0b0c606d64434f6f725843c
-doccontainersize 150792
-doccontainerchecksum 544065241b47f02bcb11b0ad6f93b23511d7a6468ee3ede1b3dc88ee24a9b723d66211ae9e79817a005444b37e97c1d763a2ed76a17ed284b8c5b6c5dc3ab1cc
-docfiles size=57
+containersize 30484
+containerchecksum d7f3a97e99b56c9b46286c7a271d9af24e7974c1d4b63ab57934e5bcbf380a9ea29b3fc30a3dfffb73865d3795661f158e94fe4bf0456ac42a897c348cb81851
+doccontainersize 150860
+doccontainerchecksum 6332a3ce862554a9180cc3639d7883b4875f0881f1f7f7b1e1cfe5cae93ee9a7348a61b3a0c74bf76c90b4e701370f902ab453bf5c933abae696f0a34da0452f
+docfiles size=58
RELOC/doc/latex/srdp-mathematik/README.md details="Readme"
- RELOC/doc/latex/srdp-mathematik/srdp-mathematik.pdf details="Package documentation"
+ RELOC/doc/latex/srdp-mathematik/srdp-mathematik.pdf details="Package documentation" language="de-at"
RELOC/doc/latex/srdp-mathematik/srdp-mathematik.tex
runfiles size=48
RELOC/tex/latex/srdp-mathematik/srdp-mathematik.sty
@@ -288927,7 +288928,7 @@ runfiles size=48
catalogue-ctan /macros/latex/contrib/srdp-mathematik
catalogue-license lppl1.3c
catalogue-topics exam maths std-conform
-catalogue-version 1.10.2
+catalogue-version 1.10.3
name sseq
category Package
@@ -291725,7 +291726,7 @@ catalogue-version 1.0
name sty2dtx
category Package
-revision 64746
+revision 64797
shortdesc Create a .dtx file from a .sty file
longdesc The package provides a Perl script that converts a .sty file
longdesc (LaTeX package) to .dtx format (documented LaTeX source), by
@@ -291741,25 +291742,25 @@ longdesc file from 'dtxtut' is used. User level macros are added
longdesc automatically to the 'Usage' section of the .dtx file. A
longdesc corresponding .ins file can be generated as well.
depend sty2dtx.ARCH
-containersize 8784
-containerchecksum 0fa962d1baaeef4981aef8743dcb9350458e1051208cf92bb9c0630d7670a21c30ed89c6fd94b52d6ab81f32c3c91a05a6bb32e45b70d4d363be7cf225dc6c80
+containersize 8752
+containerchecksum b1aa4aecfb6d1e9c6f3d367610c940742f354beb6d347c26069820ecb336c3553be3e40397d5eba2b2524bb4d84805c9d2d9145b9d875c37366a2c7bef760ce8
doccontainersize 184132
-doccontainerchecksum bd4fe0913963188e32133a2634adff87f7c9e97a9cbd9aad05356eb20d89ea381856eac60e8660cdc8eb1b9754ba865553882775906252b5eed1c675128b550a
+doccontainerchecksum d4e5f508ffbf97579c92f7c092173cf70b5fc74def36d44eb23494c62bafa19349e56a81dbf28fbb61a7c2979b25c5012facaf4104adae206af71495bc1be5fc
docfiles size=52
texmf-dist/doc/man/man1/sty2dtx.1
texmf-dist/doc/man/man1/sty2dtx.man1.pdf
- texmf-dist/doc/support/sty2dtx/README.txt
+ texmf-dist/doc/support/sty2dtx/README.txt details="Readme"
texmf-dist/doc/support/sty2dtx/sty2dtx.pdf
runfiles size=8
texmf-dist/scripts/sty2dtx/sty2dtx.pl
catalogue-also makedtx
-catalogue-contact-bugs https://sourceforge.net/p/sty2dtx/tickets/
-catalogue-contact-home https://sourceforge.net/p/sty2dtx/
-catalogue-contact-repository https://sourceforge.net/p/sty2dtx/code/ci/default/tree/
+catalogue-contact-bugs https://github.com/MartinScharrer/sty2dtx/issues
+catalogue-contact-home https://github.com/MartinScharrer/sty2dtx
+catalogue-contact-repository https://github.com/MartinScharrer/sty2dtx
catalogue-ctan /support/sty2dtx
catalogue-license gpl3
catalogue-topics package-devel
-catalogue-version 2.3
+catalogue-version 2.4
name sty2dtx.aarch64-linux
category Package
@@ -298514,7 +298515,7 @@ binfiles arch=x86_64-solaris size=1
name tex4ht
category Package
-revision 64766
+revision 64796
shortdesc Convert (La)TeX to HTML/XML
longdesc A converter from TeX and LaTeX to SGML-based formats such as
longdesc (X)HTML, MathML, OpenDocument, and Docbook, providing a
@@ -298535,10 +298536,10 @@ longdesc files from them is nontrivial, and generally done with the
longdesc Makefile in development, from which the TeX4ht package in TeX
longdesc Live is updated.
depend tex4ht.ARCH
-containersize 944832
-containerchecksum ffda91fa027043d1b70eb9e60ccbe64823d37d316ccb3f51e8c717b57df42aeea801fbe44c1c38d7e9bed53148b593e7ca597c630e5a72331e0a48554e6fc718
+containersize 944956
+containerchecksum 6c9175c0c6dd35f9ad941895006c2a52c6991e9033246331c7607dc76dc8fc28d0b3d9fbaefc8f17c0d508ffe7f5d0cde1e35928873250c9688c0417700f74f2
doccontainersize 136384
-doccontainerchecksum 533ef87a3506b36e4af762177fd60a5b0f24a98f162d3f145602b8fd10df6b3d495372735341c6e20a0cab28c0eef92f9d3e9ce79eec117e3fc2dfea0d5e95ce
+doccontainerchecksum ea6672918712797649cc7824e46b668d2c7b97e42a950c30c77c38543fd4e3d32bbe806b43e73a8eb39f4dda32188d9b3df7c20a465999da7fc85326346782dc
docfiles size=260
texmf-dist/doc/generic/tex4ht/Makefile
texmf-dist/doc/generic/tex4ht/README details="Readme"
@@ -298610,8 +298611,8 @@ docfiles size=260
texmf-dist/doc/generic/tex4ht/mn56.html
texmf-dist/doc/generic/tex4ht/mn5x.png
texmf-dist/doc/generic/tex4ht/mn6x.png
-srccontainersize 1274332
-srccontainerchecksum 16a3682bfa4c12e63e5400be7d8d4e9cb6a126ded4ad51a9f0ebd4faf6b6cf78ed481db49970514a0b606828879bc5ac92e3588fd35780b1d5b4cef7efff010d
+srccontainersize 1273692
+srccontainerchecksum c6db086e58dcaf5d2c4cd1c311921c2ea654b4ef1ddf37c0f455f98b13336d9a54978eaa4706dd20ccc53d6b41e5a5321d65910f105f0ee4b2b7546e58add74b
srcfiles size=3871
texmf-dist/source/generic/tex4ht/ChangeLog
texmf-dist/source/generic/tex4ht/Makefile
@@ -309259,7 +309260,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 64776
+revision 64785
shortdesc TeX Live infrastructure programs
longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for
longdesc tlmgr to run but still ours. Not included in tlcritical.
@@ -309267,10 +309268,10 @@ depend texlive-scripts.ARCH
depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
-containersize 113656
-containerchecksum 907e20e863b4f1089015204c009198c679c53e44e8e8e8950cc78bf3a079ab0a886cbca58612cd220039a9fefe3865522bb07879edc91ae1ac5432386f7ac61c
-doccontainersize 422964
-doccontainerchecksum 3dab3d36e29989376f37dc2dcfc50890372391e1521a22acf245c393ee0f95f8bdbc905b0564805efc439caa406180e53e839e5d852345ca3fec3834ec561b46
+containersize 113652
+containerchecksum 35f4084b41bf245b0d14efe38f5e49043eb254950eb9ff2ff12b98d55d89e05869aced00d3e3226a12a7766d1d4fd180099494263e94b77a851298b3f17c7984
+doccontainersize 422948
+doccontainerchecksum cbbe0c4571d2163c51fa8c8e756d5b314f52118bb924586351dd86dbaf332c11c4a23244d552a2616bd1993dbe55732023aabf4e148721e3021fae131dc573b8
docfiles size=531
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
@@ -315179,7 +315180,7 @@ catalogue-version 1.0
name tikz-ext
category Package
-revision 64670
+revision 64797
shortdesc A collection of libraries for PGF/TikZ
relocated 1
longdesc This is a collection of libraries for PGF/TikZ. Currently these
@@ -315187,11 +315188,11 @@ longdesc are transformations.mirror, paths.arcto, paths.ortho,
longdesc paths.timer, patterns.images, topaths.arcthrough and misc. Most
longdesc of these libraries were developed in response to questions on
longdesc TeX.stackexchange.com.
-containersize 22376
-containerchecksum e23462295c0d45baed05d8a54d9874b8326428f41901e8fb2cec52d2a5832ffd155ba5d5563e11377664d62aac7e5eba0574564a79c482b190a782e22d5b31b3
-doccontainersize 489892
-doccontainerchecksum 231190b52f1eebab78bdda8420ed0310f7a191aaddcfe7d1f207ebca7593aefe9aa87e5a49804cff4f111a510120ece815da89512c403e4f7db24f2ec59fc86e
-docfiles size=171
+containersize 23540
+containerchecksum 234f4bac7f268e478436bb71d7503736de9971bd55652e2391a39893b260cc71de160edb611fe5b11b9391a60e576b778f5db962d9d0e6b1b9b431aea2c88f90
+doccontainersize 529764
+doccontainerchecksum 5e85e4657238125073b55005d37c3e3d889254f83952b2e832ddf54c10ca492cbbf956e504ee0ecb862e9a4492bec5a4c146e253ab2ce1886cbb6b74f9895436
+docfiles size=184
RELOC/doc/latex/tikz-ext/README.md details="Readme"
RELOC/doc/latex/tikz-ext/tikz-ext-manual-en-calendar.tex
RELOC/doc/latex/tikz-ext/tikz-ext-manual-en-intro.tex
@@ -315212,19 +315213,23 @@ docfiles size=171
RELOC/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex
RELOC/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex
RELOC/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex
+ RELOC/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-uncentered.tex
RELOC/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-trans.tex
RELOC/doc/latex/tikz-ext/tikz-ext-manual.bib
RELOC/doc/latex/tikz-ext/tikz-ext-manual.pdf details="Package documentation"
RELOC/doc/latex/tikz-ext/tikz-ext-manual.tex
-runfiles size=48
+runfiles size=52
RELOC/tex/latex/tikz-ext/pgfcalendar-ext.code.tex
RELOC/tex/latex/tikz-ext/pgfcalendar-ext.sty
RELOC/tex/latex/tikz-ext/pgfcalendar-ext.tex
+ RELOC/tex/latex/tikz-ext/pgfkeyslibraryext.pgfkeys-plus.code.tex
+ RELOC/tex/latex/tikz-ext/pgflibraryext.pgfkeys-plus.code.tex
RELOC/tex/latex/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex
RELOC/tex/latex/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex
RELOC/tex/latex/tikz-ext/pgflibraryext.shapes.heatmark.code.tex
RELOC/tex/latex/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex
RELOC/tex/latex/tikz-ext/pgflibraryext.shapes.superellipse.code.tex
+ RELOC/tex/latex/tikz-ext/pgflibraryext.shapes.uncenteredrectangle.code.tex
RELOC/tex/latex/tikz-ext/pgflibraryext.transformations.mirror.code.tex
RELOC/tex/latex/tikz-ext/tikzlibraryext.calendar-plus.code.tex
RELOC/tex/latex/tikz-ext/tikzlibraryext.misc.code.tex
@@ -315244,7 +315249,7 @@ catalogue-contact-repository https://github.com/Qrrbrbirlbel/tikz-extensions
catalogue-ctan /graphics/pgf/contrib/tikz-ext
catalogue-license fdl lppl
catalogue-topics pgf-tikz
-catalogue-version 0.4
+catalogue-version 0.4.1
name tikz-feynhand
category Package
@@ -332642,17 +332647,22 @@ catalogue-version 1.6
name unigrazpub
category Package
-revision 64699
+revision 64797
+shortdesc LaTeX templates for University of Graz Library Publishing Services
relocated 1
-containersize 5728
-containerchecksum 8f6f6f14b7bf061e78ce83a2018fd5c3bbba50103fded2678ad37596f2812b8e16dce689d5f227f73e3961bbab804eaf0b5125c6582d62fcc447701b569765fe
-doccontainersize 134740
-doccontainerchecksum 9a41ad3c56c521b5c73e346a8eba44ef16ae61bbc8ffc446e5ddef5788f070d8a025a8bc380169936857d9f033b6aa2f3e5d5e396a784a3c3f18ed3b0019c934
+longdesc This package provides a LaTeX class matching the preparation
+longdesc guidelines of the Library Publishing Services of University of
+longdesc Graz. The bundle also includes a comprehensive set of example
+longdesc files for books and collections.
+containersize 5952
+containerchecksum e97b38083929bb67c306bb3c306c5293dd5a024ff58eef5d11d5742ae0cc2bbf39c8505c89014b4c0a769d0e923f91db39173da1a4b374f3d1179a017b8d6052
+doccontainersize 134736
+doccontainerchecksum dd7a27267e4a7e16f9152ff393b15d4255aba7cbeeef7e5bd7211a8059dcf25473e244cdb02340e05324d982b4e973ac76a1812a82f787fa6bb504dc9713451d
docfiles size=51
- RELOC/doc/latex/unigrazpub/DEMO-monografie.pdf
- RELOC/doc/latex/unigrazpub/DEMO-sammelband.pdf
+ RELOC/doc/latex/unigrazpub/DEMO-monografie.pdf details="Example of use (1)"
+ RELOC/doc/latex/unigrazpub/DEMO-sammelband.pdf details="Example of use (2)"
RELOC/doc/latex/unigrazpub/LICENSE.md
- RELOC/doc/latex/unigrazpub/README.md
+ RELOC/doc/latex/unigrazpub/README.md details="Readme"
RELOC/doc/latex/unigrazpub/examples/monografie/DEMO-monografie.tex
RELOC/doc/latex/unigrazpub/examples/monografie/impressum.tex
RELOC/doc/latex/unigrazpub/examples/monografie/kapitel1.tex
@@ -332661,14 +332671,20 @@ docfiles size=51
RELOC/doc/latex/unigrazpub/examples/sammelband/beitrag1.bib
RELOC/doc/latex/unigrazpub/examples/sammelband/beitrag1.tex
RELOC/doc/latex/unigrazpub/examples/sammelband/impressum.tex
- RELOC/doc/latex/unigrazpub/unigrazpub.pdf
+ RELOC/doc/latex/unigrazpub/unigrazpub.pdf details="Package documentation"
srccontainersize 8892
-srccontainerchecksum 331af11cab0a5bbd7883d6739524c6876a210f0e010a1e1da94f5c2c654d7c5cb85256768ca94b438c69debea9e86e4b5e8ded50e1200dc6080dc0ba777fc65b
+srccontainerchecksum 157f4f6770f276cb6567647321637a82df9c9562e9bc661723ca56c2a7893daef5de2e75a8d8fc93d1e80b646147f87e4c294d0b0d936d9c5d9784fda27bd652
srcfiles size=8
RELOC/source/latex/unigrazpub/unigrazpub.dtx
RELOC/source/latex/unigrazpub/unigrazpub.ins
runfiles size=5
RELOC/tex/latex/unigrazpub/unigrazpub.cls
+catalogue-contact-bugs https://github.com/peiTeX/unigrazpub/issues
+catalogue-contact-repository https://github.com/peiTeX/unigrazpub
+catalogue-ctan /macros/latex/contrib/unigrazpub
+catalogue-license lppl1.3c
+catalogue-topics class doc-templ book-pub std-conform expl3
+catalogue-version 1.00
name uninormalize
category Package
@@ -342063,7 +342079,7 @@ catalogue-version 1.10
name wargame
category Package
-revision 64522
+revision 64797
shortdesc A LaTeX package to prepare hex'n'counter wargames
relocated 1
longdesc This package can help make classic Hex'n'Counter wargames using
@@ -342078,10 +342094,10 @@ longdesc for units. The package uses TikZ for most things. The package
longdesc support exporting the game to a VASSAL module See also the
longdesc README.md file for more, and of course the documentation
longdesc (including the tutorial in tutorial/game.pdf).
-containersize 194216
-containerchecksum 4533cea1d27de88d445e1798b60031c4476a1d602522c224d55a0d6a819d42848c42c3b9ef85afe6481269226073d47382768fb422418be21030ae02428c468e
-doccontainersize 2352972
-doccontainerchecksum b137b187b219ad516eadab9b369831dca12042b76bef315c205ce28ee8818c53cbd3529d1cffd5d9744a14000d85da5b17a8b96763ff1ab24408e5134fcf402b
+containersize 194220
+containerchecksum b06a6c8099942833cf1df089a6f2dbbfa8416a6f3bf74ea5d5411c098f1256261eb9101f95d1a61937552fe5141ed7462e774e1ed9876b2c03330a92162b4c21
+doccontainersize 2352976
+doccontainerchecksum c75c95bc543167b74466eab3b0f9a030165bca914757a5c281ea44a4cf32d1eafa61f2e6d53e811d81dbdac36942f923fc8fd82e77e718b230cfa1a430bf77c3
docfiles size=644
RELOC/doc/latex/wargame/README.md details="Readme"
RELOC/doc/latex/wargame/compat.pdf
@@ -342095,7 +342111,7 @@ docfiles size=644
RELOC/doc/latex/wargame/tutorial/patch.py
RELOC/doc/latex/wargame/wargame.pdf details="Package documentation"
srccontainersize 153572
-srccontainerchecksum c97603d1af2381ded87cda539505c13279e495a76fb0e02d034cd239eee5f88b5850d90bb3b742766593bf1ea510a7c8fd301861aa82d860fdee5dfcfe80c816
+srccontainerchecksum 16e6ef9e59d0469a037a14833e234ed46cf3e693d5f3468bde9519585f2e0ca659aa66717f5a07f506ceb3540079396fc397e75508ecf06470b20dfb39a970e4
srcfiles size=281
RELOC/source/latex/wargame/Makefile
RELOC/source/latex/wargame/chit/core.dtx
@@ -342178,7 +342194,7 @@ catalogue-contact-home https://gitlab.com/wargames_tex/wargame_tex
catalogue-contact-repository https://gitlab.com/wargames_tex/wargame_tex
catalogue-contact-support https://gitlab.com/wargames_tex/wargame_tex
catalogue-ctan /macros/latex/contrib/wargame
-catalogue-license cc-by-nc-4
+catalogue-license cc-by-sa-4
catalogue-topics pgf-tikz games symbol-supp
catalogue-version 0.3.2
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index ea1c408e21..2c7996d1bd 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-44ae5ea8010e654a336ee8a4e60f5e4d texlive.tlpdb
+409df5a390ad20dd59f0c7e919e175e0 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index f0adabe4a5..b4a8efa426 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-34798cfb075af559fab98eee91c6fa3feb072cf92b6738ed461ebb3356e169db355e92d0aa50ba154c59c62ee0b75d2f4bea45e19cd51e542213c7d60eb02e97 texlive.tlpdb
+0caf9ec6675fabaf3d1e5b7cc5e3e9084911eedeb04e4eed0638b302ffc2c279eb8932869f2712555816848a5be0162bbe9cefc3eff83e7e2acab022c4e98844 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 75f6eb4d5f..d397763945 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,10 +1,10 @@
-----BEGIN PGP SIGNATURE-----
-iQEcBAEBCgAGBQJjVIMvAAoJEEzhh34ZQ4xwCIAH/3UUhn5+W81XtUuQSdyCajdY
-fovflXfafstJmVl0LmSx+apIB8uaqmDBk1UkYRTNMyt84xp7iHinCWJQiTDRpdoR
-+f8n+7X9q+E1WRhaIpC0bzCWPmkhMjZZp7zlugnWnN5OVYq/R8QWsCKL3viRUBUs
-ufCTk2SEiJecWw73yE8u8xkx+TCdSEkVaXN+X3LLwNgfohKI7wUTooHu8xyfKh8W
-dIb9GbtsiBLZVqSLmGC+JbklKTUDPjjojo/fJiAJSUeSjoSlT5mJfuMS/aTVqxz3
-nBZcuX+PXL8QahzWjoAlo3Ar+rlbwJlb0VbuBjEWKCCmn6ABbjJ8nSEq0DcOQ7w=
-=F44Q
+iQEcBAEBCgAGBQJjVdTIAAoJEEzhh34ZQ4xwAZQH/3gYBsIjyP/lGKg/2t/mgXc6
+9nm8N10V/ahntvJyiiTx2MrXBastdu1T33MTShMNZDx2skxq/Eww6uJVVHQqZJ9e
+M10snSOd5Ma/iVu60MIcLFM6mGWZlfDTwAI9hKVJhYqGnmrP08UR6hKtIWGFWyzY
+RCBQ7A6UKfC26sOsiz3vI5rlGqMImUGjtZWe4xAshTc4ojE5YrVcc5b0MakYskkn
+ro6NIo7U0V36QRevLJLWahipzTC9nRO79e3eLzMQpAJw9UxizYWqXk8cdJE/Sk3B
+XxRe+6JxWsYSh1DEbVrV9the0QRVpAvPtTHamkJy5tdCh1Aw/i055AKFiPCCjWk=
+=/cB1
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 54b24fc572..c149ca0090 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini
index 1106644ef0..1ec56785da 100644
--- a/systems/win32/miktex/tm/packages/next/pr.ini
+++ b/systems/win32/miktex/tm/packages/next/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1666469816
+date=1666556213
lastupd=miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-x64-2.9 miktex-cjkutils-bin-x64-2.9 miktex-console-bin-x64-2.9 miktex-curl-bin-x64-2.9 miktex-cweb-bin-x64-2.9 miktex-devnag-bin-x64-2.9 miktex-doc miktex-dvicopy-bin-x64-2.9 miktex-dvipdfmx-bin-x64-2.9 miktex-dvipng-bin-x64-2.9 miktex-dvips-bin-x64-2.9
-lstdigest=57789b237779b733b17d41590bda2ad4
+lstdigest=2b71ac215ba95c3e913c6c27a8a225c5
numpkg=6103
relstate=next
-version=8330
+version=8331
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: wS+yO/YXC/jvSh2bU7+b23W5JfvEWhMX6TixcYuKXEoVWD6vFmtcnulufBOT1dj+7k+T0IBuOQlJHLyGwnlmhB2Fp1t7Q30TRgo+Hmu8eXppycc96lLRebmcvd5mrR8W5jZb7Lw/aGMWgW5TCnAViSMVb4GA6/l3f4M4vwY+orVePuVxoMozpeyV3MUJrgSFSBdVoO2Wc7wAlzczd+hkh+XS9NVXvsRr8yIQfboy01EZNV9PzX23ChMRaksZYsCh67Ex+grm/U2PCPN+0+OU8tsKsSiKF3PRWrF6eqq/rpA2SL587Jv78IjnCQ96GFPgFtnl+m3zYgdVCdOjF94Nnw==
+;;;; signature/miktex: v9Gw+y1OIsigzB+kHKxN8X0w0Z8wF2W3XJkECnCL7epOPymAWgXDoYsHOKyT5merEDDRHjfBKggWMqlc6Y9NtHlIyqyd7weFCVPsLyAQZ1hXgCHa+GxUFDkvszBlV53+xUzu6V5Gg1YttVzQAQHJgo8wshYZqDZMTTrKAgoAwQPspM6vLXp/2/AAi3sdjyDE0hPLryYYTXeLJB8ZWaHvv4DLcKuUO1nw0CMjUVOy+mMXKD31fjqrT5NRWAlDKQ9MGwhv0DLUVULwhqy+l3FmP5mkTXd6hwBZd38sZORg4Nj1mTif8+rXFS2sgrjU8FQUcyNveVvRAPOIkk/kUK3ELw==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini
index ab06e65421..5f9076e3b8 100644
--- a/systems/win32/miktex/tm/packages/pr.ini
+++ b/systems/win32/miktex/tm/packages/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1666469513
+date=1666555910
lastupd=pgf-periodictable pgf-periodictable__doc pgf-periodictable__source urw-base35 urw-base35__doc urw-base35__source miktex-runtime-bin-x64-2.9 standalone was was__doc was__source xcharter-math xcharter-math__doc xcharter-math__source abntexto abntexto__doc abntexto__source algpseudocodex algpseudocodex__doc algpseudocodex__source
-lstdigest=e0f1b301dddf252159334645fd7b2cbf
+lstdigest=342460b967d92864aa41890f51516066
numpkg=6103
relstate=stable
-version=8330
+version=8331
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: j/mPsPT93qotkMUrqyB+2iOm8gUlXtnxtzNwj1K+jqmSDgUftuC/N9Uoe2bkfgpLXJwfbTbqf2UY7FN1x1IX4Wtvi9XL2vDrc2CMPGQh6vRzbZoqBhe6Fkc6nI+9RsMaCRzMagRsgaoP/+LX2lOQa++rvDgxAhw834k7j3uRZ5j0I7vB0skQTKz2fEaQ5UW+Vkr9JXGb5WUAXE4ImRXnahhWU8/THMbIjZmdog58TEMv+P1lLQtds7KucogCirkGVcjwQkHt1ep6WJKdkglPj9dR1zYIqdFQOtIoLecSW/w9Mpg1A5VUAHCWvfVr69WwzSkxfOuhgFZ/7+utHqIsjg==
+;;;; signature/miktex: eok9mqQ43HIyvNE/Cy0u6x6MJZ1ukUjurHMtKAYMHbz19kA4e5/NTBFalcT9xTeu2U3jdStFFWxqgWSmug6cR5kUODxZ5Z13kLuEXyKqb77oTDhXj3ZoBrc45tqYW2gghP6b5j8nTj2FmfNA5xH/fzgyoDXbUX0We1GStu4QMHimkTlNmcX07VWUYK+xXS32FH8Oe5aWHEz8GywYs6g0DEUuAB90mSV+rFnxIDCFi5C7xe9i85Vk2GmxOB7MBYTyb4AeOsvSjuPqpQGwVXfU/v/uP9jyVzkxMFL4OKAGUXuAnUpqiHUlSy2iZaj9Av9wj1fK5u6cNFbooXsc0aTR0g==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/timestamp b/timestamp
index 8632264233..40ff774a54 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2022-10-23-02-02
+2022-10-24-02-02