summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-04-20 03:01:20 +0000
committerNorbert Preining <norbert@preining.info>2023-04-20 03:01:20 +0000
commit4753a39245d0925a73cb20409999377eb9d2fd66 (patch)
tree2e19e9f381b805bc9ab96da2f6c3e733d7689e09
parent10bb4d468226c290e5e87e3fa367dc6fd2dcb84b (diff)
CTAN sync 202304200301
-rw-r--r--FILES.byname562
-rw-r--r--FILES.byname.gzbin2527786 -> 2528088 bytes
-rw-r--r--FILES.last07days348
-rw-r--r--biblio/ctan-bibdata/ctan.bib73
-rw-r--r--biblio/ctan-bibdata/ctan.pdfbin3665816 -> 3665074 bytes
-rw-r--r--graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdfbin490717 -> 468164 bytes
-rw-r--r--graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex79
-rw-r--r--graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdfbin501108 -> 503873 bytes
-rw-r--r--graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex69
-rw-r--r--graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty3
-rw-r--r--macros/generic/hitex-def/hhitex.def343
-rw-r--r--macros/generic/hitex-def/hilatex.ini9
-rw-r--r--macros/generic/hitex-def/hiltxpage.tex76
-rw-r--r--macros/generic/hitex-def/hiplainpage.tex66
-rw-r--r--macros/generic/hitex-def/hitex.ini7
-rw-r--r--macros/generic/hitex-def/ifhint.tex9
-rw-r--r--macros/latex/contrib/l3backend/CHANGELOG.md15
-rw-r--r--macros/latex/contrib/l3backend/README.md2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-basics.dtx14
-rw-r--r--macros/latex/contrib/l3backend/l3backend-box.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-code.pdfbin933580 -> 934066 bytes
-rw-r--r--macros/latex/contrib/l3backend/l3backend-color.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-draw.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-graphics.dtx37
-rw-r--r--macros/latex/contrib/l3backend/l3backend-header.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-opacity.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-pdf.dtx12
-rw-r--r--macros/latex/contrib/l3experimental/CHANGELOG.md11
-rw-r--r--macros/latex/contrib/l3experimental/README.md2
-rw-r--r--macros/latex/contrib/l3experimental/l3benchmark.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3benchmark.pdfbin308403 -> 308937 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3bitset.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3bitset.pdfbin404278 -> 404794 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-boxes.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-code.pdfbin679499 -> 679710 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-layers.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-paths.dtx8
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-points.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-scopes.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-softpath.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-state.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-transforms.dtx6
-rw-r--r--macros/latex/contrib/l3experimental/l3draw.dtx6
-rw-r--r--macros/latex/contrib/l3experimental/l3draw.pdfbin517668 -> 518188 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3galley.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3galley.pdfbin408782 -> 409299 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3graphics.dtx22
-rw-r--r--macros/latex/contrib/l3experimental/l3graphics.pdfbin382031 -> 384038 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3opacity.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3opacity.pdfbin313467 -> 313994 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3str-format.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3str-format.pdfbin367903 -> 368426 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3sys-shell.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3sys-shell.pdfbin347924 -> 348450 bytes
-rw-r--r--macros/latex/contrib/l3experimental/xcoffins.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/xcoffins.pdfbin394348 -> 394864 bytes
-rw-r--r--macros/latex/contrib/l3experimental/xgalley.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/xgalley.pdfbin299507 -> 300021 bytes
-rw-r--r--macros/latex/contrib/l3kernel/CHANGELOG.md24
-rw-r--r--macros/latex/contrib/l3kernel/README.md2
-rw-r--r--macros/latex/contrib/l3kernel/expl3.dtx4
-rw-r--r--macros/latex/contrib/l3kernel/expl3.pdfbin622894 -> 623355 bytes
-rw-r--r--macros/latex/contrib/l3kernel/interface3.pdfbin1741657 -> 1725275 bytes
-rw-r--r--macros/latex/contrib/l3kernel/interface3.tex2
-rw-r--r--macros/latex/contrib/l3kernel/l3basics.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3bootstrap.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3box.dtx223
-rw-r--r--macros/latex/contrib/l3kernel/l3candidates.dtx226
-rw-r--r--macros/latex/contrib/l3kernel/l3cctab.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3clist.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3coffins.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3color.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3debug.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3deprecation.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3doc.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3doc.pdfbin557821 -> 558346 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3docstrip.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3docstrip.pdfbin151614 -> 152135 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3expan.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3file.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3flag.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-assign.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-aux.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-basics.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-convert.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-expo.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-extended.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-logic.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-parse.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-random.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-round.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-traps.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-trig.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fparray.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3int.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3intarray.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3kernel-functions.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3keys.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3legacy.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3luatex.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3msg.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3names.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3news.pdfbin395876 -> 395876 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news01.pdfbin122710 -> 122710 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news02.pdfbin150674 -> 150674 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news03.pdfbin148706 -> 148706 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news04.pdfbin114586 -> 114586 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news05.pdfbin112485 -> 112485 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news06.pdfbin151569 -> 151569 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news07.pdfbin128316 -> 128316 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news08.pdfbin163456 -> 163456 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news09.pdfbin250136 -> 250136 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news10.pdfbin150283 -> 150283 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news11.pdfbin170076 -> 170076 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news12.pdfbin204992 -> 204992 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3pdf.dtx4
-rw-r--r--macros/latex/contrib/l3kernel/l3prefixes.pdfbin81640 -> 81640 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3prg.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3prop.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3quark.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3regex.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3seq.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3skip.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3sort.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3str-convert.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3str.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3styleguide.pdfbin296152 -> 296617 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3styleguide.tex2
-rw-r--r--macros/latex/contrib/l3kernel/l3syntax-changes.pdfbin242796 -> 243260 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3syntax-changes.tex2
-rw-r--r--macros/latex/contrib/l3kernel/l3sys.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3term-glossary.pdfbin215323 -> 215775 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3term-glossary.tex2
-rw-r--r--macros/latex/contrib/l3kernel/l3text-case.dtx122
-rw-r--r--macros/latex/contrib/l3kernel/l3text-map.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3text-purify.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3text.dtx31
-rw-r--r--macros/latex/contrib/l3kernel/l3tl-analysis.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3tl.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3token.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3unicode.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/source3.pdfbin7339540 -> 7327044 bytes
-rw-r--r--macros/latex/contrib/l3kernel/source3.tex2
-rw-r--r--macros/latex/contrib/nicematrix/nicematrix-french.pdfbin551953 -> 553017 bytes
-rw-r--r--macros/latex/contrib/nicematrix/nicematrix-french.tex292
-rw-r--r--macros/latex/contrib/nicematrix/nicematrix.dtx581
-rw-r--r--macros/latex/contrib/nicematrix/nicematrix.pdfbin1364573 -> 1380299 bytes
-rw-r--r--macros/latex/contrib/oststud/LICENSE.txt428
-rw-r--r--macros/latex/contrib/oststud/Makefile64
-rw-r--r--macros/latex/contrib/oststud/README.md53
-rw-r--r--macros/latex/contrib/oststud/hsrstud-classes.dtx594
-rw-r--r--macros/latex/contrib/oststud/hsrstud-classes.pdfbin0 -> 127717 bytes
-rw-r--r--macros/latex/contrib/oststud/hsrstud.dtx619
-rw-r--r--macros/latex/contrib/oststud/hsrstud.ins56
-rw-r--r--macros/latex/contrib/oststud/hsrstud.pdfbin0 -> 143177 bytes
-rw-r--r--macros/latex/contrib/oststud/oststud.dtx664
-rw-r--r--macros/latex/contrib/oststud/oststud.ins54
-rw-r--r--macros/latex/contrib/oststud/oststud.pdfbin0 -> 145415 bytes
-rw-r--r--macros/latex/contrib/photobook/photobook.cls92
-rw-r--r--macros/latex/contrib/photobook/photobook.pdfbin142873 -> 143331 bytes
-rwxr-xr-xmacros/latex/contrib/photobook/scripts/cls2tex.sh15
-rw-r--r--macros/latex/contrib/photobook/scripts/make-spreads.sh9
-rw-r--r--macros/unicodetex/latex/nwafuthesis/README.md4
-rw-r--r--[-rwxr-xr-x]macros/unicodetex/latex/nwafuthesis/build-win.bat0
-rw-r--r--macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx438
-rw-r--r--macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdfbin2346554 -> 2379457 bytes
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb190
-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.xzbin2446628 -> 2444724 bytes
-rw-r--r--timestamp2
173 files changed, 5488 insertions, 1266 deletions
diff --git a/FILES.byname b/FILES.byname
index 8000300f47..10b9d516f3 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2056,12 +2056,12 @@
2023/04/13 | 1675 | biblio/citation-style-language/README.md
2023/04/13 | 11957 | biblio/citation-style-language/vancouver.csl
2023/04/13 | 4516625 | biblio/citation-style-language.zip
-2023/04/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/04/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2023/04/18 | 2778851 | biblio/ctan-bibdata/ctan.bib
-2023/04/18 | 3664357 | biblio/ctan-bibdata/ctan.pdf
+2023/04/19 | 2778851 | biblio/ctan-bibdata/ctan.bib
+2023/04/19 | 3665816 | biblio/ctan-bibdata/ctan.pdf
2023/01/16 | 1489 | biblio/ctan-bibdata/README
-2023/04/18 | 4062031 | biblio/ctan-bibdata.zip
+2023/04/19 | 4062865 | biblio/ctan-bibdata.zip
2023/02/23 | 3126 | biblio/pbibtex/pbibtex-base/cpp.awk
2023/02/23 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh
2023/02/23 | 22362 | biblio/pbibtex/pbibtex-base/jabbrv.bst
@@ -5417,7 +5417,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
-2023/04/18 | 202228 | FILES.last07days
+2023/04/19 | 241428 | 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
@@ -160256,16 +160256,16 @@
2023/02/20 | 7141 | graphics/pgf/contrib/pixelart/pixelart.sty
2023/02/20 | 33668 | graphics/pgf/contrib/pixelart/pixelart.tex
2023/02/20 | 1049 | graphics/pgf/contrib/pixelart/README.md
-2023/01/25 | 36 | graphics/pgf/contrib/pixelarttikz/doc/base.csv
-2023/01/25 | 990 | graphics/pgf/contrib/pixelarttikz/doc/cap.csv
-2023/01/25 | 490717 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdf
-2023/01/25 | 16770 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex
-2023/01/25 | 501108 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdf
-2023/01/25 | 19194 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex
-2023/01/25 | 759 | graphics/pgf/contrib/pixelarttikz/doc/test1.csv
+2023/04/19 | 36 | graphics/pgf/contrib/pixelarttikz/doc/base.csv
+2023/04/19 | 990 | graphics/pgf/contrib/pixelarttikz/doc/cap.csv
+2023/04/19 | 468164 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdf
+2023/04/19 | 16771 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex
+2023/04/19 | 503873 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdf
+2023/04/19 | 20004 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex
+2023/04/19 | 759 | graphics/pgf/contrib/pixelarttikz/doc/test1.csv
2023/01/25 | 411 | graphics/pgf/contrib/pixelarttikz/README.md
-2023/01/25 | 9058 | graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty
-2023/01/26 | 962444 | graphics/pgf/contrib/pixelarttikz.zip
+2023/04/19 | 9091 | graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty
+2023/04/19 | 945801 | graphics/pgf/contrib/pixelarttikz.zip
2023/02/20 | 397652 | graphics/pgf/contrib/pixelart.zip
2019/09/30 | 649 | graphics/pgf/contrib/prooftrees/manifest.txt
2019/09/30 | 755 | graphics/pgf/contrib/prooftrees/prooftrees_biber.bib
@@ -194410,10 +194410,10 @@
2023/04/17 | 9949201 | install/macros/latex/contrib/koma-script.tds.zip
2015/12/09 | 171418 | install/macros/latex/contrib/ksp-thesis.tds.zip
2019/12/19 | 302191 | install/macros/latex/contrib/kvdefinekeys.tds.zip
-2023/03/30 | 972034 | install/macros/latex/contrib/l3backend.tds.zip
+2023/04/19 | 972462 | install/macros/latex/contrib/l3backend.tds.zip
2023/03/27 | 819288 | install/macros/latex/contrib/l3build.tds.zip
-2023/03/30 | 4453546 | install/macros/latex/contrib/l3experimental.tds.zip
-2023/03/30 | 14001400 | install/macros/latex/contrib/l3kernel.tds.zip
+2023/04/19 | 4460822 | install/macros/latex/contrib/l3experimental.tds.zip
+2023/04/19 | 13978731 | install/macros/latex/contrib/l3kernel.tds.zip
2023/02/02 | 2252631 | install/macros/latex/contrib/l3packages.tds.zip
2023/04/12 | 596346 | install/macros/latex/contrib/lastpage.tds.zip
2009/09/02 | 556672 | install/macros/latex/contrib/layouts.tds.zip
@@ -201629,15 +201629,16 @@
2005/07/04 | 6513 | macros/context/contrib/context-bnf/tex/context/third/bnf/t-bnf.tex
2018/03/05 | 11 | macros/context/contrib/context-bnf/VERSION
2018/03/22 | 273660 | macros/context/contrib/context-bnf.zip
-2023/03/09 | 2965 | macros/context/contrib/context-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md
-2022/12/30 | 103780 | macros/context/contrib/context-calendar-examples/doc/context/third/calendar-examples/t-intervalcalendar-module-doc.pdf
+2023/04/15 | 2966 | macros/context/contrib/context-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md
2023/03/09 | 13 | macros/context/contrib/context-calendar-examples/LICENSE
-2023/01/20 | 12406 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex
-2023/04/14 | 10288 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex
-2023/03/23 | 7452 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex
-2023/01/20 | 4579 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex
-2023/04/14 | 12308 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex
-2023/04/14 | 10 | macros/context/contrib/context-calendar-examples/VERSION
+2023/04/15 | 605 | macros/context/contrib/context-calendar-examples/README.md
+2023/04/15 | 12662 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex
+2023/04/15 | 10918 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex
+2023/04/15 | 7835 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex
+2023/04/15 | 5216 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex
+2023/04/15 | 13090 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex
+2023/04/15 | 11 | macros/context/contrib/context-calendar-examples/VERSION
+2023/04/19 | 20779 | macros/context/contrib/context-calendar-examples.zip
2008/04/05 | 162815 | macros/context/contrib/context-chromato/doc/context/third/chromato/chromato-demo.pdf
2008/04/05 | 81559 | macros/context/contrib/context-chromato/doc/context/third/chromato/chromato-doc.pdf
2008/04/05 | 4603 | macros/context/contrib/context-chromato/tex/context/third/chromato/t-chromato.tex
@@ -201653,12 +201654,14 @@
2006/09/12 | 1525 | macros/context/contrib/context-cmttbf/tex/context/third/cmttbf/t-cmttbf.tex
2018/03/05 | 11 | macros/context/contrib/context-cmttbf/VERSION
2018/03/22 | 165690 | macros/context/contrib/context-cmttbf.zip
-2023/03/23 | 1495 | macros/context/contrib/context-collatingmarks/doc/context/third/collating-marks/README.md
-2023/03/23 | 140658 | macros/context/contrib/context-collatingmarks/doc/context/third/collating-marks/t-collatingmarks-module-doc.pdf
+2023/04/15 | 1679 | macros/context/contrib/context-collatingmarks/doc/context/third/collating-marks/README.md
+2023/04/15 | 140294 | macros/context/contrib/context-collatingmarks/doc/context/third/collating-marks/t-collatingmarks-module-doc.pdf
2023/03/23 | 136 | macros/context/contrib/context-collatingmarks/doc/context/third/collating-marks/t-collatingmarks-module-doc.tex
2023/03/09 | 13 | macros/context/contrib/context-collatingmarks/LICENSE
-2023/03/23 | 5905 | macros/context/contrib/context-collatingmarks/tex/context/third/collationg-marks/t-collatingmarks.tex
-2023/03/23 | 10 | macros/context/contrib/context-collatingmarks/VERSION
+2023/04/15 | 648 | macros/context/contrib/context-collatingmarks/README.md
+2023/04/15 | 5743 | macros/context/contrib/context-collatingmarks/tex/context/third/collating-marks/t-collatingmarks.tex
+2023/04/15 | 11 | macros/context/contrib/context-collatingmarks/VERSION
+2023/04/19 | 121406 | macros/context/contrib/context-collatingmarks.zip
2008/04/05 | 407738 | macros/context/contrib/context-construction-plan/doc/context/third/construction-plan/construction-plan-demo.pdf
2008/04/05 | 77353 | macros/context/contrib/context-construction-plan/doc/context/third/construction-plan/construction-plan-doc.pdf
2008/04/05 | 4700 | macros/context/contrib/context-construction-plan/tex/context/third/construction-plan/t-construction-plan.tex
@@ -201741,11 +201744,13 @@
2008/07/15 | 5667 | macros/context/contrib/context-inifile/tex/context/third/inifile/t-inifile.tex
2018/03/05 | 11 | macros/context/contrib/context-inifile/VERSION
2018/03/22 | 85333 | macros/context/contrib/context-inifile.zip
-2022/12/30 | 103780 | macros/context/contrib/context-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdf
+2023/04/15 | 104207 | macros/context/contrib/context-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdf
2023/03/09 | 13 | macros/context/contrib/context-interval-calendar/LICENSE
-2023/01/20 | 1098 | macros/context/contrib/context-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex
-2022/12/30 | 8053 | macros/context/contrib/context-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex
-2023/03/09 | 10 | macros/context/contrib/context-interval-calendar/VERSION
+2023/04/15 | 235 | macros/context/contrib/context-interval-calendar/README.md
+2023/04/15 | 1924 | macros/context/contrib/context-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex
+2023/04/15 | 8071 | macros/context/contrib/context-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex
+2023/04/15 | 11 | macros/context/contrib/context-interval-calendar/VERSION
+2023/04/19 | 102702 | macros/context/contrib/context-interval-calendar.zip
2007/06/27 | 216930 | macros/context/contrib/context-layout/doc/context/third/layout/t-layout.pdf
2007/06/27 | 12169 | macros/context/contrib/context-layout/tex/context/third/layout/t-layout.tex
2018/03/05 | 11 | macros/context/contrib/context-layout/VERSION
@@ -201806,19 +201811,21 @@
2011/04/02 | 12265 | macros/context/contrib/context-mathsets/tex/context/third/mathsets/t-mathsets.tex
2018/03/05 | 11 | macros/context/contrib/context-mathsets/VERSION
2018/03/22 | 404328 | macros/context/contrib/context-mathsets.zip
-2023/03/17 | 2615 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md
-2023/03/16 | 221337 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf
+2023/04/15 | 2650 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md
+2023/04/15 | 221130 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf
2023/03/16 | 194 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex
2023/03/09 | 270 | macros/context/contrib/context-pocketdiary/LICENSE
-2022/09/29 | 1613 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex
-2022/07/12 | 3310 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua
-2023/03/16 | 2303 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex
-2023/01/16 | 3054 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex
-2023/01/15 | 7348 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua
-2023/03/16 | 18581 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua
-2023/03/16 | 23845 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua
-2023/03/16 | 51967 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex
-2023/03/23 | 10 | macros/context/contrib/context-pocketdiary/VERSION
+2023/04/15 | 1025 | macros/context/contrib/context-pocketdiary/README.md
+2023/04/15 | 1877 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex
+2023/04/15 | 3317 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua
+2023/04/15 | 2701 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex
+2023/04/15 | 3317 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex
+2023/04/15 | 7356 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua
+2023/04/15 | 18587 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua
+2023/04/15 | 23826 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua
+2023/04/15 | 51990 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex
+2023/04/15 | 11 | macros/context/contrib/context-pocketdiary/VERSION
+2023/04/19 | 240708 | macros/context/contrib/context-pocketdiary.zip
2014/03/02 | 24876 | macros/context/contrib/context-rst/doc/context/third/rst/documentation.rst
2014/03/02 | 1083 | macros/context/contrib/context-rst/doc/context/third/rst/hybridtest.tex
2014/03/02 | 593 | macros/context/contrib/context-rst/doc/context/third/rst/inc-first.rst
@@ -202923,6 +202930,13 @@
2018/12/29 | 550901 | macros/generic/gtl/gtl.pdf
2018/12/29 | 663 | macros/generic/gtl/README.md
2018/12/29 | 560939 | macros/generic/gtl.zip
+2023/04/18 | 8419 | macros/generic/hitex-def/hhitex.def
+2023/02/18 | 221 | macros/generic/hitex-def/hilatex.ini
+2023/02/18 | 2667 | macros/generic/hitex-def/hiltxpage.tex
+2023/02/18 | 2308 | macros/generic/hitex-def/hiplainpage.tex
+2023/02/18 | 126 | macros/generic/hitex-def/hitex.ini
+2022/03/05 | 192 | macros/generic/hitex-def/ifhint.tex
+2023/04/19 | 6539 | macros/generic/hitex-def.zip
2017/08/08 | 379214 | macros/generic/hlist/hlist-fr.pdf
2017/08/08 | 23365 | macros/generic/hlist/hlist-fr.tex
2017/07/01 | 239 | macros/generic/hlist/hlist.sty
@@ -227342,20 +227356,20 @@
2022/10/05 | 401856 | macros/latex/contrib/kvsetkeys/kvsetkeys.pdf
2022/10/05 | 542 | macros/latex/contrib/kvsetkeys/README.md
2022/10/05 | 398855 | macros/latex/contrib/kvsetkeys.zip
-2023/03/30 | 9361 | macros/latex/contrib/l3backend/CHANGELOG.md
-2023/03/30 | 16092 | macros/latex/contrib/l3backend/l3backend-basics.dtx
-2023/03/30 | 14431 | macros/latex/contrib/l3backend/l3backend-box.dtx
-2023/03/30 | 933580 | macros/latex/contrib/l3backend/l3backend-code.pdf
-2023/03/30 | 1331 | macros/latex/contrib/l3backend/l3backend-code.tex
-2023/03/30 | 41332 | macros/latex/contrib/l3backend/l3backend-color.dtx
-2023/03/30 | 34288 | macros/latex/contrib/l3backend/l3backend-draw.dtx
-2023/03/30 | 29448 | macros/latex/contrib/l3backend/l3backend-graphics.dtx
-2023/03/30 | 14669 | macros/latex/contrib/l3backend/l3backend-header.dtx
-2023/03/30 | 4922 | macros/latex/contrib/l3backend/l3backend.ins
-2023/03/30 | 9916 | macros/latex/contrib/l3backend/l3backend-opacity.dtx
-2023/03/30 | 50809 | macros/latex/contrib/l3backend/l3backend-pdf.dtx
-2023/03/30 | 549 | macros/latex/contrib/l3backend/README.md
-2023/03/30 | 933781 | macros/latex/contrib/l3backend.zip
+2023/04/19 | 9614 | macros/latex/contrib/l3backend/CHANGELOG.md
+2023/04/19 | 16092 | macros/latex/contrib/l3backend/l3backend-basics.dtx
+2023/04/19 | 14431 | macros/latex/contrib/l3backend/l3backend-box.dtx
+2023/04/19 | 934066 | macros/latex/contrib/l3backend/l3backend-code.pdf
+2023/04/19 | 1331 | macros/latex/contrib/l3backend/l3backend-code.tex
+2023/04/19 | 41332 | macros/latex/contrib/l3backend/l3backend-color.dtx
+2023/04/19 | 34288 | macros/latex/contrib/l3backend/l3backend-draw.dtx
+2023/04/19 | 29575 | macros/latex/contrib/l3backend/l3backend-graphics.dtx
+2023/04/19 | 14669 | macros/latex/contrib/l3backend/l3backend-header.dtx
+2023/04/19 | 4922 | macros/latex/contrib/l3backend/l3backend.ins
+2023/04/19 | 9916 | macros/latex/contrib/l3backend/l3backend-opacity.dtx
+2023/04/19 | 50928 | macros/latex/contrib/l3backend/l3backend-pdf.dtx
+2023/04/19 | 549 | macros/latex/contrib/l3backend/README.md
+2023/04/19 | 934192 | macros/latex/contrib/l3backend.zip
2023/03/27 | 19850 | macros/latex/contrib/l3build/CHANGELOG.md
2023/03/27 | 1816 | macros/latex/contrib/l3build/l3build.1
2023/03/27 | 7796 | macros/latex/contrib/l3build/l3build-arguments.lua
@@ -227381,152 +227395,152 @@
2023/03/27 | 4150 | macros/latex/contrib/l3build/l3build-zip.lua
2023/03/27 | 1019 | macros/latex/contrib/l3build/README.md
2023/03/27 | 815439 | macros/latex/contrib/l3build.zip
-2023/03/30 | 7907 | macros/latex/contrib/l3experimental/CHANGELOG.md
-2023/03/30 | 16508 | macros/latex/contrib/l3experimental/l3benchmark.dtx
-2023/03/30 | 1558 | macros/latex/contrib/l3experimental/l3benchmark.ins
-2023/03/30 | 308403 | macros/latex/contrib/l3experimental/l3benchmark.pdf
-2023/03/30 | 18694 | macros/latex/contrib/l3experimental/l3bitset.dtx
-2023/03/30 | 1565 | macros/latex/contrib/l3experimental/l3bitset.ins
-2023/03/30 | 404278 | macros/latex/contrib/l3experimental/l3bitset.pdf
-2023/03/30 | 4323 | macros/latex/contrib/l3experimental/l3draw-boxes.dtx
-2023/03/30 | 679499 | macros/latex/contrib/l3experimental/l3draw-code.pdf
-2023/03/30 | 1360 | macros/latex/contrib/l3experimental/l3draw-code.tex
-2023/03/30 | 42558 | macros/latex/contrib/l3experimental/l3draw.dtx
-2023/03/30 | 1906 | macros/latex/contrib/l3experimental/l3draw.ins
-2023/03/30 | 5653 | macros/latex/contrib/l3experimental/l3draw-layers.dtx
-2023/03/30 | 32508 | macros/latex/contrib/l3experimental/l3draw-paths.dtx
-2023/03/30 | 517668 | macros/latex/contrib/l3experimental/l3draw.pdf
-2023/03/30 | 36026 | macros/latex/contrib/l3experimental/l3draw-points.dtx
-2023/03/30 | 10018 | macros/latex/contrib/l3experimental/l3draw-scopes.dtx
-2023/03/30 | 20451 | macros/latex/contrib/l3experimental/l3draw-softpath.dtx
-2023/03/30 | 4448 | macros/latex/contrib/l3experimental/l3draw-state.dtx
-2023/03/30 | 10136 | macros/latex/contrib/l3experimental/l3draw-transforms.dtx
-2023/03/30 | 96041 | macros/latex/contrib/l3experimental/l3galley.dtx
-2023/03/30 | 408782 | macros/latex/contrib/l3experimental/l3galley.pdf
-2023/03/30 | 25753 | macros/latex/contrib/l3experimental/l3graphics.dtx
-2023/03/30 | 1553 | macros/latex/contrib/l3experimental/l3graphics.ins
-2023/03/30 | 382031 | macros/latex/contrib/l3experimental/l3graphics.pdf
-2023/03/30 | 4011 | macros/latex/contrib/l3experimental/l3opacity.dtx
-2023/03/30 | 1547 | macros/latex/contrib/l3experimental/l3opacity.ins
-2023/03/30 | 313467 | macros/latex/contrib/l3experimental/l3opacity.pdf
-2023/03/30 | 31827 | macros/latex/contrib/l3experimental/l3str-format.dtx
-2023/03/30 | 367903 | macros/latex/contrib/l3experimental/l3str-format.pdf
-2023/03/30 | 1564 | macros/latex/contrib/l3experimental/l3str.ins
-2023/03/30 | 12361 | macros/latex/contrib/l3experimental/l3sys-shell.dtx
-2023/03/30 | 1565 | macros/latex/contrib/l3experimental/l3sys-shell.ins
-2023/03/30 | 347924 | macros/latex/contrib/l3experimental/l3sys-shell.pdf
-2023/03/30 | 4284 | macros/latex/contrib/l3experimental/README.md
-2023/03/30 | 35092 | macros/latex/contrib/l3experimental/xcoffins.dtx
-2023/03/30 | 1569 | macros/latex/contrib/l3experimental/xcoffins.ins
-2023/03/30 | 394348 | macros/latex/contrib/l3experimental/xcoffins.pdf
-2023/03/30 | 58083 | macros/latex/contrib/l3experimental/xgalley.dtx
-2023/03/30 | 1624 | macros/latex/contrib/l3experimental/xgalley.ins
-2023/03/30 | 299507 | macros/latex/contrib/l3experimental/xgalley.pdf
-2023/03/30 | 4415461 | macros/latex/contrib/l3experimental.zip
-2023/03/30 | 44988 | macros/latex/contrib/l3kernel/CHANGELOG.md
-2023/03/30 | 70859 | macros/latex/contrib/l3kernel/expl3.dtx
-2023/03/30 | 622894 | macros/latex/contrib/l3kernel/expl3.pdf
-2023/03/30 | 1741657 | macros/latex/contrib/l3kernel/interface3.pdf
-2023/03/30 | 2038 | macros/latex/contrib/l3kernel/interface3.tex
-2023/03/30 | 129545 | macros/latex/contrib/l3kernel/l3basics.dtx
-2023/03/30 | 14927 | macros/latex/contrib/l3kernel/l3bootstrap.dtx
-2023/03/30 | 79698 | macros/latex/contrib/l3kernel/l3box.dtx
-2023/03/30 | 68365 | macros/latex/contrib/l3kernel/l3candidates.dtx
-2023/03/30 | 32409 | macros/latex/contrib/l3kernel/l3cctab.dtx
-2023/03/30 | 82667 | macros/latex/contrib/l3kernel/l3clist.dtx
-2023/03/30 | 87463 | macros/latex/contrib/l3kernel/l3coffins.dtx
-2023/03/30 | 112270 | macros/latex/contrib/l3kernel/l3color.dtx
-2023/03/30 | 43212 | macros/latex/contrib/l3kernel/l3debug.dtx
-2023/03/30 | 23530 | macros/latex/contrib/l3kernel/l3deprecation.dtx
-2023/03/30 | 155616 | macros/latex/contrib/l3kernel/l3doc.dtx
-2023/03/30 | 557821 | macros/latex/contrib/l3kernel/l3doc.pdf
-2023/03/30 | 2390 | macros/latex/contrib/l3kernel/l3docstrip.dtx
-2023/03/30 | 151614 | macros/latex/contrib/l3kernel/l3docstrip.pdf
-2023/03/30 | 106443 | macros/latex/contrib/l3kernel/l3expan.dtx
-2023/03/30 | 136651 | macros/latex/contrib/l3kernel/l3file.dtx
-2023/03/30 | 9436 | macros/latex/contrib/l3kernel/l3flag.dtx
-2023/03/30 | 11781 | macros/latex/contrib/l3kernel/l3fparray.dtx
-2023/03/30 | 7454 | macros/latex/contrib/l3kernel/l3fp-assign.dtx
-2023/03/30 | 47216 | macros/latex/contrib/l3kernel/l3fp-aux.dtx
-2023/03/30 | 84785 | macros/latex/contrib/l3kernel/l3fp-basics.dtx
-2023/03/30 | 19641 | macros/latex/contrib/l3kernel/l3fp-convert.dtx
-2023/03/30 | 70279 | macros/latex/contrib/l3kernel/l3fp.dtx
-2023/03/30 | 49311 | macros/latex/contrib/l3kernel/l3fp-expo.dtx
-2023/03/30 | 51059 | macros/latex/contrib/l3kernel/l3fp-extended.dtx
-2023/03/30 | 23011 | macros/latex/contrib/l3kernel/l3fp-logic.dtx
-2023/03/30 | 105012 | macros/latex/contrib/l3kernel/l3fp-parse.dtx
-2023/03/30 | 25650 | macros/latex/contrib/l3kernel/l3fp-random.dtx
-2023/03/30 | 18532 | macros/latex/contrib/l3kernel/l3fp-round.dtx
-2023/03/30 | 12783 | macros/latex/contrib/l3kernel/l3fp-traps.dtx
-2023/03/30 | 73835 | macros/latex/contrib/l3kernel/l3fp-trig.dtx
-2023/03/30 | 6224 | macros/latex/contrib/l3kernel/l3.ins
-2023/03/30 | 34167 | macros/latex/contrib/l3kernel/l3intarray.dtx
-2023/03/30 | 92068 | macros/latex/contrib/l3kernel/l3int.dtx
-2023/03/30 | 26736 | macros/latex/contrib/l3kernel/l3kernel-functions.dtx
-2023/03/30 | 127087 | macros/latex/contrib/l3kernel/l3keys.dtx
-2023/03/30 | 4538 | macros/latex/contrib/l3kernel/l3legacy.dtx
-2023/03/30 | 23866 | macros/latex/contrib/l3kernel/l3luatex.dtx
-2023/03/30 | 74250 | macros/latex/contrib/l3kernel/l3msg.dtx
-2023/03/30 | 82260 | macros/latex/contrib/l3kernel/l3names.dtx
-2023/03/30 | 122710 | macros/latex/contrib/l3kernel/l3news01.pdf
-2023/03/30 | 4937 | macros/latex/contrib/l3kernel/l3news01.tex
-2023/03/30 | 150674 | macros/latex/contrib/l3kernel/l3news02.pdf
-2023/03/30 | 6677 | macros/latex/contrib/l3kernel/l3news02.tex
-2023/03/30 | 148706 | macros/latex/contrib/l3kernel/l3news03.pdf
-2023/03/30 | 6482 | macros/latex/contrib/l3kernel/l3news03.tex
-2023/03/30 | 114586 | macros/latex/contrib/l3kernel/l3news04.pdf
-2023/03/30 | 5429 | macros/latex/contrib/l3kernel/l3news04.tex
-2023/03/30 | 112485 | macros/latex/contrib/l3kernel/l3news05.pdf
-2023/03/30 | 4716 | macros/latex/contrib/l3kernel/l3news05.tex
-2023/03/30 | 151569 | macros/latex/contrib/l3kernel/l3news06.pdf
-2023/03/30 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex
-2023/03/30 | 128316 | macros/latex/contrib/l3kernel/l3news07.pdf
-2023/03/30 | 4977 | macros/latex/contrib/l3kernel/l3news07.tex
-2023/03/30 | 163456 | macros/latex/contrib/l3kernel/l3news08.pdf
-2023/03/30 | 9465 | macros/latex/contrib/l3kernel/l3news08.tex
-2023/03/30 | 250136 | macros/latex/contrib/l3kernel/l3news09.pdf
-2023/03/30 | 107383 | macros/latex/contrib/l3kernel/l3news09.tex
-2023/03/30 | 150283 | macros/latex/contrib/l3kernel/l3news10.pdf
-2023/03/30 | 9999 | macros/latex/contrib/l3kernel/l3news10.tex
-2023/03/30 | 170076 | macros/latex/contrib/l3kernel/l3news11.pdf
-2023/03/30 | 8481 | macros/latex/contrib/l3kernel/l3news11.tex
-2023/03/30 | 204992 | macros/latex/contrib/l3kernel/l3news12.pdf
-2023/03/30 | 14913 | macros/latex/contrib/l3kernel/l3news12.tex
-2023/03/30 | 395876 | macros/latex/contrib/l3kernel/l3news.pdf
-2023/03/30 | 4890 | macros/latex/contrib/l3kernel/l3news.tex
-2023/03/30 | 19161 | macros/latex/contrib/l3kernel/l3pdf.dtx
-2023/03/30 | 45418 | macros/latex/contrib/l3kernel/l3prefixes.csv
-2023/03/30 | 81640 | macros/latex/contrib/l3kernel/l3prefixes.pdf
-2023/03/30 | 2821 | macros/latex/contrib/l3kernel/l3prefixes.tex
-2023/03/30 | 66654 | macros/latex/contrib/l3kernel/l3prg.dtx
-2023/03/30 | 57974 | macros/latex/contrib/l3kernel/l3prop.dtx
-2023/03/30 | 35441 | macros/latex/contrib/l3kernel/l3quark.dtx
-2023/03/30 | 304752 | macros/latex/contrib/l3kernel/l3regex.dtx
-2023/03/30 | 90470 | macros/latex/contrib/l3kernel/l3seq.dtx
-2023/03/30 | 75926 | macros/latex/contrib/l3kernel/l3skip.dtx
-2023/03/30 | 40704 | macros/latex/contrib/l3kernel/l3sort.dtx
-2023/03/30 | 113427 | macros/latex/contrib/l3kernel/l3str-convert.dtx
-2023/03/30 | 78692 | macros/latex/contrib/l3kernel/l3str.dtx
-2023/03/30 | 296152 | macros/latex/contrib/l3kernel/l3styleguide.pdf
-2023/03/30 | 11884 | macros/latex/contrib/l3kernel/l3styleguide.tex
-2023/03/30 | 242796 | macros/latex/contrib/l3kernel/l3syntax-changes.pdf
-2023/03/30 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex
-2023/03/30 | 33656 | macros/latex/contrib/l3kernel/l3sys.dtx
-2023/03/30 | 215323 | macros/latex/contrib/l3kernel/l3term-glossary.pdf
-2023/03/30 | 6169 | macros/latex/contrib/l3kernel/l3term-glossary.tex
-2023/03/30 | 66037 | macros/latex/contrib/l3kernel/l3text-case.dtx
-2023/03/30 | 50921 | macros/latex/contrib/l3kernel/l3text.dtx
-2023/03/30 | 16633 | macros/latex/contrib/l3kernel/l3text-map.dtx
-2023/03/30 | 20359 | macros/latex/contrib/l3kernel/l3text-purify.dtx
-2023/03/30 | 62840 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx
-2023/03/30 | 145318 | macros/latex/contrib/l3kernel/l3tl.dtx
-2023/03/30 | 118796 | macros/latex/contrib/l3kernel/l3token.dtx
-2023/03/30 | 32935 | macros/latex/contrib/l3kernel/l3unicode.dtx
-2023/03/30 | 3929 | macros/latex/contrib/l3kernel/README.md
-2023/03/30 | 24841 | macros/latex/contrib/l3kernel/source3body.tex
-2023/03/30 | 7339540 | macros/latex/contrib/l3kernel/source3.pdf
-2023/03/30 | 2229 | macros/latex/contrib/l3kernel/source3.tex
-2023/03/30 | 13739132 | macros/latex/contrib/l3kernel.zip
+2023/04/19 | 8145 | macros/latex/contrib/l3experimental/CHANGELOG.md
+2023/04/19 | 16508 | macros/latex/contrib/l3experimental/l3benchmark.dtx
+2023/04/19 | 1558 | macros/latex/contrib/l3experimental/l3benchmark.ins
+2023/04/19 | 308937 | macros/latex/contrib/l3experimental/l3benchmark.pdf
+2023/04/19 | 18694 | macros/latex/contrib/l3experimental/l3bitset.dtx
+2023/04/19 | 1565 | macros/latex/contrib/l3experimental/l3bitset.ins
+2023/04/19 | 404794 | macros/latex/contrib/l3experimental/l3bitset.pdf
+2023/04/19 | 4323 | macros/latex/contrib/l3experimental/l3draw-boxes.dtx
+2023/04/19 | 679710 | macros/latex/contrib/l3experimental/l3draw-code.pdf
+2023/04/19 | 1360 | macros/latex/contrib/l3experimental/l3draw-code.tex
+2023/04/19 | 42560 | macros/latex/contrib/l3experimental/l3draw.dtx
+2023/04/19 | 1906 | macros/latex/contrib/l3experimental/l3draw.ins
+2023/04/19 | 5653 | macros/latex/contrib/l3experimental/l3draw-layers.dtx
+2023/04/19 | 32546 | macros/latex/contrib/l3experimental/l3draw-paths.dtx
+2023/04/19 | 518188 | macros/latex/contrib/l3experimental/l3draw.pdf
+2023/04/19 | 36026 | macros/latex/contrib/l3experimental/l3draw-points.dtx
+2023/04/19 | 10018 | macros/latex/contrib/l3experimental/l3draw-scopes.dtx
+2023/04/19 | 20451 | macros/latex/contrib/l3experimental/l3draw-softpath.dtx
+2023/04/19 | 4448 | macros/latex/contrib/l3experimental/l3draw-state.dtx
+2023/04/19 | 10138 | macros/latex/contrib/l3experimental/l3draw-transforms.dtx
+2023/04/19 | 96041 | macros/latex/contrib/l3experimental/l3galley.dtx
+2023/04/19 | 409299 | macros/latex/contrib/l3experimental/l3galley.pdf
+2023/04/19 | 25940 | macros/latex/contrib/l3experimental/l3graphics.dtx
+2023/04/19 | 1553 | macros/latex/contrib/l3experimental/l3graphics.ins
+2023/04/19 | 384038 | macros/latex/contrib/l3experimental/l3graphics.pdf
+2023/04/19 | 4011 | macros/latex/contrib/l3experimental/l3opacity.dtx
+2023/04/19 | 1547 | macros/latex/contrib/l3experimental/l3opacity.ins
+2023/04/19 | 313994 | macros/latex/contrib/l3experimental/l3opacity.pdf
+2023/04/19 | 31827 | macros/latex/contrib/l3experimental/l3str-format.dtx
+2023/04/19 | 368426 | macros/latex/contrib/l3experimental/l3str-format.pdf
+2023/04/19 | 1564 | macros/latex/contrib/l3experimental/l3str.ins
+2023/04/19 | 12361 | macros/latex/contrib/l3experimental/l3sys-shell.dtx
+2023/04/19 | 1565 | macros/latex/contrib/l3experimental/l3sys-shell.ins
+2023/04/19 | 348450 | macros/latex/contrib/l3experimental/l3sys-shell.pdf
+2023/04/19 | 4284 | macros/latex/contrib/l3experimental/README.md
+2023/04/19 | 35092 | macros/latex/contrib/l3experimental/xcoffins.dtx
+2023/04/19 | 1569 | macros/latex/contrib/l3experimental/xcoffins.ins
+2023/04/19 | 394864 | macros/latex/contrib/l3experimental/xcoffins.pdf
+2023/04/19 | 58083 | macros/latex/contrib/l3experimental/xgalley.dtx
+2023/04/19 | 1624 | macros/latex/contrib/l3experimental/xgalley.ins
+2023/04/19 | 300021 | macros/latex/contrib/l3experimental/xgalley.pdf
+2023/04/19 | 4422710 | macros/latex/contrib/l3experimental.zip
+2023/04/19 | 45592 | macros/latex/contrib/l3kernel/CHANGELOG.md
+2023/04/19 | 70859 | macros/latex/contrib/l3kernel/expl3.dtx
+2023/04/19 | 623355 | macros/latex/contrib/l3kernel/expl3.pdf
+2023/04/19 | 1725275 | macros/latex/contrib/l3kernel/interface3.pdf
+2023/04/19 | 2038 | macros/latex/contrib/l3kernel/interface3.tex
+2023/04/19 | 129545 | macros/latex/contrib/l3kernel/l3basics.dtx
+2023/04/19 | 14927 | macros/latex/contrib/l3kernel/l3bootstrap.dtx
+2023/04/19 | 87744 | macros/latex/contrib/l3kernel/l3box.dtx
+2023/04/19 | 60396 | macros/latex/contrib/l3kernel/l3candidates.dtx
+2023/04/19 | 32409 | macros/latex/contrib/l3kernel/l3cctab.dtx
+2023/04/19 | 82667 | macros/latex/contrib/l3kernel/l3clist.dtx
+2023/04/19 | 87463 | macros/latex/contrib/l3kernel/l3coffins.dtx
+2023/04/19 | 112270 | macros/latex/contrib/l3kernel/l3color.dtx
+2023/04/19 | 43212 | macros/latex/contrib/l3kernel/l3debug.dtx
+2023/04/19 | 23530 | macros/latex/contrib/l3kernel/l3deprecation.dtx
+2023/04/19 | 155616 | macros/latex/contrib/l3kernel/l3doc.dtx
+2023/04/19 | 558346 | macros/latex/contrib/l3kernel/l3doc.pdf
+2023/04/19 | 2390 | macros/latex/contrib/l3kernel/l3docstrip.dtx
+2023/04/19 | 152135 | macros/latex/contrib/l3kernel/l3docstrip.pdf
+2023/04/19 | 106443 | macros/latex/contrib/l3kernel/l3expan.dtx
+2023/04/19 | 136651 | macros/latex/contrib/l3kernel/l3file.dtx
+2023/04/19 | 9436 | macros/latex/contrib/l3kernel/l3flag.dtx
+2023/04/19 | 11781 | macros/latex/contrib/l3kernel/l3fparray.dtx
+2023/04/19 | 7454 | macros/latex/contrib/l3kernel/l3fp-assign.dtx
+2023/04/19 | 47216 | macros/latex/contrib/l3kernel/l3fp-aux.dtx
+2023/04/19 | 84785 | macros/latex/contrib/l3kernel/l3fp-basics.dtx
+2023/04/19 | 19641 | macros/latex/contrib/l3kernel/l3fp-convert.dtx
+2023/04/19 | 70279 | macros/latex/contrib/l3kernel/l3fp.dtx
+2023/04/19 | 49311 | macros/latex/contrib/l3kernel/l3fp-expo.dtx
+2023/04/19 | 51059 | macros/latex/contrib/l3kernel/l3fp-extended.dtx
+2023/04/19 | 23011 | macros/latex/contrib/l3kernel/l3fp-logic.dtx
+2023/04/19 | 105012 | macros/latex/contrib/l3kernel/l3fp-parse.dtx
+2023/04/19 | 25650 | macros/latex/contrib/l3kernel/l3fp-random.dtx
+2023/04/19 | 18532 | macros/latex/contrib/l3kernel/l3fp-round.dtx
+2023/04/19 | 12783 | macros/latex/contrib/l3kernel/l3fp-traps.dtx
+2023/04/19 | 73835 | macros/latex/contrib/l3kernel/l3fp-trig.dtx
+2023/04/19 | 6224 | macros/latex/contrib/l3kernel/l3.ins
+2023/04/19 | 34167 | macros/latex/contrib/l3kernel/l3intarray.dtx
+2023/04/19 | 92068 | macros/latex/contrib/l3kernel/l3int.dtx
+2023/04/19 | 26736 | macros/latex/contrib/l3kernel/l3kernel-functions.dtx
+2023/04/19 | 127087 | macros/latex/contrib/l3kernel/l3keys.dtx
+2023/04/19 | 4538 | macros/latex/contrib/l3kernel/l3legacy.dtx
+2023/04/19 | 23866 | macros/latex/contrib/l3kernel/l3luatex.dtx
+2023/04/19 | 74250 | macros/latex/contrib/l3kernel/l3msg.dtx
+2023/04/19 | 82260 | macros/latex/contrib/l3kernel/l3names.dtx
+2023/04/19 | 122710 | macros/latex/contrib/l3kernel/l3news01.pdf
+2023/04/19 | 4937 | macros/latex/contrib/l3kernel/l3news01.tex
+2023/04/19 | 150674 | macros/latex/contrib/l3kernel/l3news02.pdf
+2023/04/19 | 6677 | macros/latex/contrib/l3kernel/l3news02.tex
+2023/04/19 | 148706 | macros/latex/contrib/l3kernel/l3news03.pdf
+2023/04/19 | 6482 | macros/latex/contrib/l3kernel/l3news03.tex
+2023/04/19 | 114586 | macros/latex/contrib/l3kernel/l3news04.pdf
+2023/04/19 | 5429 | macros/latex/contrib/l3kernel/l3news04.tex
+2023/04/19 | 112485 | macros/latex/contrib/l3kernel/l3news05.pdf
+2023/04/19 | 4716 | macros/latex/contrib/l3kernel/l3news05.tex
+2023/04/19 | 151569 | macros/latex/contrib/l3kernel/l3news06.pdf
+2023/04/19 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex
+2023/04/19 | 128316 | macros/latex/contrib/l3kernel/l3news07.pdf
+2023/04/19 | 4977 | macros/latex/contrib/l3kernel/l3news07.tex
+2023/04/19 | 163456 | macros/latex/contrib/l3kernel/l3news08.pdf
+2023/04/19 | 9465 | macros/latex/contrib/l3kernel/l3news08.tex
+2023/04/19 | 250136 | macros/latex/contrib/l3kernel/l3news09.pdf
+2023/04/19 | 107383 | macros/latex/contrib/l3kernel/l3news09.tex
+2023/04/19 | 150283 | macros/latex/contrib/l3kernel/l3news10.pdf
+2023/04/19 | 9999 | macros/latex/contrib/l3kernel/l3news10.tex
+2023/04/19 | 170076 | macros/latex/contrib/l3kernel/l3news11.pdf
+2023/04/19 | 8481 | macros/latex/contrib/l3kernel/l3news11.tex
+2023/04/19 | 204992 | macros/latex/contrib/l3kernel/l3news12.pdf
+2023/04/19 | 14913 | macros/latex/contrib/l3kernel/l3news12.tex
+2023/04/19 | 395876 | macros/latex/contrib/l3kernel/l3news.pdf
+2023/04/19 | 4890 | macros/latex/contrib/l3kernel/l3news.tex
+2023/04/19 | 19169 | macros/latex/contrib/l3kernel/l3pdf.dtx
+2023/04/19 | 45418 | macros/latex/contrib/l3kernel/l3prefixes.csv
+2023/04/19 | 81640 | macros/latex/contrib/l3kernel/l3prefixes.pdf
+2023/04/19 | 2821 | macros/latex/contrib/l3kernel/l3prefixes.tex
+2023/04/19 | 66654 | macros/latex/contrib/l3kernel/l3prg.dtx
+2023/04/19 | 57974 | macros/latex/contrib/l3kernel/l3prop.dtx
+2023/04/19 | 35441 | macros/latex/contrib/l3kernel/l3quark.dtx
+2023/04/19 | 304752 | macros/latex/contrib/l3kernel/l3regex.dtx
+2023/04/19 | 90470 | macros/latex/contrib/l3kernel/l3seq.dtx
+2023/04/19 | 75926 | macros/latex/contrib/l3kernel/l3skip.dtx
+2023/04/19 | 40704 | macros/latex/contrib/l3kernel/l3sort.dtx
+2023/04/19 | 113427 | macros/latex/contrib/l3kernel/l3str-convert.dtx
+2023/04/19 | 78692 | macros/latex/contrib/l3kernel/l3str.dtx
+2023/04/19 | 296617 | macros/latex/contrib/l3kernel/l3styleguide.pdf
+2023/04/19 | 11884 | macros/latex/contrib/l3kernel/l3styleguide.tex
+2023/04/19 | 243260 | macros/latex/contrib/l3kernel/l3syntax-changes.pdf
+2023/04/19 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex
+2023/04/19 | 33656 | macros/latex/contrib/l3kernel/l3sys.dtx
+2023/04/19 | 215775 | macros/latex/contrib/l3kernel/l3term-glossary.pdf
+2023/04/19 | 6169 | macros/latex/contrib/l3kernel/l3term-glossary.tex
+2023/04/19 | 69893 | macros/latex/contrib/l3kernel/l3text-case.dtx
+2023/04/19 | 51753 | macros/latex/contrib/l3kernel/l3text.dtx
+2023/04/19 | 16633 | macros/latex/contrib/l3kernel/l3text-map.dtx
+2023/04/19 | 20359 | macros/latex/contrib/l3kernel/l3text-purify.dtx
+2023/04/19 | 62840 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx
+2023/04/19 | 145318 | macros/latex/contrib/l3kernel/l3tl.dtx
+2023/04/19 | 118796 | macros/latex/contrib/l3kernel/l3token.dtx
+2023/04/19 | 32935 | macros/latex/contrib/l3kernel/l3unicode.dtx
+2023/04/19 | 3929 | macros/latex/contrib/l3kernel/README.md
+2023/04/19 | 24841 | macros/latex/contrib/l3kernel/source3body.tex
+2023/04/19 | 7327044 | macros/latex/contrib/l3kernel/source3.pdf
+2023/04/19 | 2229 | macros/latex/contrib/l3kernel/source3.tex
+2023/04/19 | 13716203 | macros/latex/contrib/l3kernel.zip
2023/02/02 | 7253 | macros/latex/contrib/l3packages/CHANGELOG.md
2023/02/02 | 1444 | macros/latex/contrib/l3packages/l3keys2e-demo.tex
2023/02/02 | 12312 | macros/latex/contrib/l3packages/l3keys2e.dtx
@@ -230606,13 +230620,13 @@
1996/03/22 | 18862 | macros/latex/contrib/niceframe/umrandb.mf
2015/01/17 | 1370 | macros/latex/contrib/niceframe/umrand.mf
2015/01/17 | 287910 | macros/latex/contrib/niceframe.zip
-2023/03/31 | 782267 | macros/latex/contrib/nicematrix/nicematrix.dtx
-2023/03/31 | 551953 | macros/latex/contrib/nicematrix/nicematrix-french.pdf
-2023/03/31 | 217101 | macros/latex/contrib/nicematrix/nicematrix-french.tex
+2023/04/19 | 792775 | macros/latex/contrib/nicematrix/nicematrix.dtx
+2023/04/19 | 553017 | macros/latex/contrib/nicematrix/nicematrix-french.pdf
+2023/04/19 | 219077 | macros/latex/contrib/nicematrix/nicematrix-french.tex
2022/12/21 | 1423 | macros/latex/contrib/nicematrix/nicematrix.ins
-2023/03/31 | 1364573 | macros/latex/contrib/nicematrix/nicematrix.pdf
+2023/04/19 | 1380299 | macros/latex/contrib/nicematrix/nicematrix.pdf
2021/11/10 | 1023 | macros/latex/contrib/nicematrix/README.md
-2023/03/31 | 2084150 | macros/latex/contrib/nicematrix.zip
+2023/04/19 | 2103853 | macros/latex/contrib/nicematrix.zip
2015/11/21 | 217 | macros/latex/contrib/nicetext/ANNOUNCE.txt
2012/03/18 | 254582 | macros/latex/contrib/nicetext/demo/arseneau.pdf
2011/09/14 | 10 | macros/latex/contrib/nicetext/demo/iso.txt
@@ -231364,6 +231378,18 @@
2023/04/04 | 192843 | macros/latex/contrib/osda/osda.pdf
2023/04/04 | 2819 | macros/latex/contrib/osda/README.md
2023/04/05 | 344168 | macros/latex/contrib/osda.zip
+2022/11/22 | 17926 | macros/latex/contrib/oststud/hsrstud-classes.dtx
+2023/04/18 | 127717 | macros/latex/contrib/oststud/hsrstud-classes.pdf
+2022/11/22 | 14749 | macros/latex/contrib/oststud/hsrstud.dtx
+2022/11/18 | 1747 | macros/latex/contrib/oststud/hsrstud.ins
+2023/04/18 | 143177 | macros/latex/contrib/oststud/hsrstud.pdf
+2022/11/18 | 20138 | macros/latex/contrib/oststud/LICENSE.txt
+2023/04/18 | 2040 | macros/latex/contrib/oststud/Makefile
+2023/04/18 | 19959 | macros/latex/contrib/oststud/oststud.dtx
+2023/04/18 | 1629 | macros/latex/contrib/oststud/oststud.ins
+2023/04/18 | 145415 | macros/latex/contrib/oststud/oststud.pdf
+2023/04/18 | 1490 | macros/latex/contrib/oststud/README.md
+2023/04/19 | 387482 | macros/latex/contrib/oststud.zip
2011/08/20 | 74250 | macros/latex/contrib/othelloboard/example-rose-chps1-2.pdf
2011/08/20 | 32104 | macros/latex/contrib/othelloboard/example-rose-chps1-2.tex
2011/08/19 | 156198 | macros/latex/contrib/othelloboard/othelloboard.pdf
@@ -232667,17 +232693,17 @@
2017/04/21 | 1634 | macros/latex/contrib/phonrule/phonrule.sty
2017/04/21 | 492 | macros/latex/contrib/phonrule/README.md
2017/04/21 | 44782 | macros/latex/contrib/phonrule.zip
-2023/04/11 | 462 | macros/latex/contrib/photobook/DEPENDS.txt
-2023/04/11 | 1527 | macros/latex/contrib/photobook/LICENSE
-2023/04/11 | 10191 | macros/latex/contrib/photobook/Makefile
-2023/04/11 | 164576 | macros/latex/contrib/photobook/photobook.cls
-2023/04/11 | 142873 | macros/latex/contrib/photobook/photobook.pdf
-2023/04/11 | 1705 | macros/latex/contrib/photobook/README.md
-2023/04/11 | 4219 | macros/latex/contrib/photobook/scripts/cls2tex.sh
-2023/04/11 | 890 | macros/latex/contrib/photobook/scripts/make-spreads.cfg.example
-2023/04/11 | 16847 | macros/latex/contrib/photobook/scripts/make-spreads.sh
-2023/04/11 | 14221 | macros/latex/contrib/photobook/scripts/README.md
-2023/04/11 | 191658 | macros/latex/contrib/photobook.zip
+2023/04/19 | 462 | macros/latex/contrib/photobook/DEPENDS.txt
+2023/04/19 | 1527 | macros/latex/contrib/photobook/LICENSE
+2023/04/19 | 10191 | macros/latex/contrib/photobook/Makefile
+2023/04/19 | 166879 | macros/latex/contrib/photobook/photobook.cls
+2023/04/19 | 143331 | macros/latex/contrib/photobook/photobook.pdf
+2023/04/19 | 1705 | macros/latex/contrib/photobook/README.md
+2023/04/19 | 4172 | macros/latex/contrib/photobook/scripts/cls2tex.sh
+2023/04/19 | 890 | macros/latex/contrib/photobook/scripts/make-spreads.cfg.example
+2023/04/19 | 16935 | macros/latex/contrib/photobook/scripts/make-spreads.sh
+2023/04/19 | 14221 | macros/latex/contrib/photobook/scripts/README.md
+2023/04/19 | 192417 | macros/latex/contrib/photobook.zip
2004/07/15 | 1773 | macros/latex/contrib/photo/Makefile
2004/07/15 | 26571 | macros/latex/contrib/photo/photo.dtx
1999/07/25 | 595 | macros/latex/contrib/photo/photo.ins
@@ -253995,11 +254021,11 @@
2021/05/16 | 694569 | macros/unicodetex/latex/nwafuthesis/logo/nwafu-bar.pdf
2021/02/25 | 656165 | macros/unicodetex/latex/nwafuthesis/logo/nwafu-circle.pdf
2022/04/04 | 33865 | macros/unicodetex/latex/nwafuthesis/logo/workflow.pdf
-2022/05/29 | 62589 | macros/unicodetex/latex/nwafuthesis/nwafuthesis-doc.dtx
-2022/05/29 | 272913 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx
-2022/05/29 | 2346554 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf
-2022/04/04 | 1542 | macros/unicodetex/latex/nwafuthesis/README.md
-2022/05/29 | 3442045 | macros/unicodetex/latex/nwafuthesis.zip
+2023/04/19 | 62589 | macros/unicodetex/latex/nwafuthesis/nwafuthesis-doc.dtx
+2023/04/19 | 280971 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx
+2023/04/19 | 2379457 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf
+2023/04/19 | 1536 | macros/unicodetex/latex/nwafuthesis/README.md
+2023/04/19 | 3472890 | macros/unicodetex/latex/nwafuthesis.zip
2023/04/17 | 1033542 | macros/unicodetex/latex/polyglossia/polyglossia.dtx
2023/04/17 | 356479 | macros/unicodetex/latex/polyglossia/polyglossia.pdf
2023/04/17 | 1942 | macros/unicodetex/latex/polyglossia/README.md
@@ -289251,8 +289277,8 @@
2019/02/28 | 293444 | systems/texlive/tlnet/archive/algorithms.doc.r42428.tar.xz
2019/02/28 | 3472 | systems/texlive/tlnet/archive/algorithms.r42428.tar.xz
2019/02/28 | 11940 | systems/texlive/tlnet/archive/algorithms.source.r42428.tar.xz
-2023/04/18 | 351896 | systems/texlive/tlnet/archive/algpseudocodex.doc.r66869.tar.xz
-2023/04/18 | 9240 | systems/texlive/tlnet/archive/algpseudocodex.r66869.tar.xz
+2023/04/19 | 352600 | systems/texlive/tlnet/archive/algpseudocodex.doc.r66886.tar.xz
+2023/04/19 | 9268 | systems/texlive/tlnet/archive/algpseudocodex.r66886.tar.xz
2019/02/28 | 2568 | systems/texlive/tlnet/archive/alg.r15878.tar.xz
2019/02/28 | 5768 | systems/texlive/tlnet/archive/alg.source.r15878.tar.xz
2020/08/01 | 173088 | systems/texlive/tlnet/archive/algxpar.doc.r56006.tar.xz
@@ -289438,13 +289464,13 @@
2019/02/28 | 340 | systems/texlive/tlnet/archive/arara.amd64-freebsd.r29036.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/arara.amd64-netbsd.r30191.tar.xz
2019/02/28 | 336 | systems/texlive/tlnet/archive/arara.armhf-linux.r30015.tar.xz
-2022/06/30 | 5048852 | systems/texlive/tlnet/archive/arara.doc.r63760.tar.xz
+2023/04/19 | 4997096 | systems/texlive/tlnet/archive/arara.doc.r66881.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/arara.i386-freebsd.r29036.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/arara.i386-linux.r29036.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/arara.i386-netbsd.r30191.tar.xz
2019/02/28 | 336 | systems/texlive/tlnet/archive/arara.i386-solaris.r29036.tar.xz
-2022/06/30 | 11777640 | systems/texlive/tlnet/archive/arara.r63760.tar.xz
-2022/06/30 | 115456 | systems/texlive/tlnet/archive/arara.source.r63760.tar.xz
+2023/04/19 | 12147968 | systems/texlive/tlnet/archive/arara.r66881.tar.xz
+2023/04/19 | 115404 | systems/texlive/tlnet/archive/arara.source.r66881.tar.xz
2021/02/25 | 340 | systems/texlive/tlnet/archive/arara.universal-darwin.r57908.tar.xz
2023/02/20 | 2304 | systems/texlive/tlnet/archive/arara.windows.r65891.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/arara.x86_64-cygwin.r33557.tar.xz
@@ -289740,7 +289766,7 @@
2021/02/07 | 136588 | systems/texlive/tlnet/archive/babel-danish.doc.r57642.tar.xz
2021/02/07 | 2488 | systems/texlive/tlnet/archive/babel-danish.r57642.tar.xz
2021/02/07 | 5792 | systems/texlive/tlnet/archive/babel-danish.source.r57642.tar.xz
-2023/03/29 | 897908 | systems/texlive/tlnet/archive/babel.doc.r66698.tar.xz
+2023/04/19 | 898788 | systems/texlive/tlnet/archive/babel.doc.r66882.tar.xz
2021/08/30 | 157392 | systems/texlive/tlnet/archive/babel-dutch.doc.r60362.tar.xz
2021/08/30 | 2920 | systems/texlive/tlnet/archive/babel-dutch.r60362.tar.xz
2021/08/30 | 7968 | systems/texlive/tlnet/archive/babel-dutch.source.r60362.tar.xz
@@ -289829,7 +289855,7 @@
2021/07/10 | 146580 | systems/texlive/tlnet/archive/babel-portuges.doc.r59883.tar.xz
2021/07/10 | 2828 | systems/texlive/tlnet/archive/babel-portuges.r59883.tar.xz
2021/07/10 | 6692 | systems/texlive/tlnet/archive/babel-portuges.source.r59883.tar.xz
-2023/03/29 | 197416 | systems/texlive/tlnet/archive/babel.r66698.tar.xz
+2023/04/19 | 207536 | systems/texlive/tlnet/archive/babel.r66882.tar.xz
2021/04/07 | 113056 | systems/texlive/tlnet/archive/babel-romanian.doc.r58776.tar.xz
2021/04/07 | 2124 | systems/texlive/tlnet/archive/babel-romanian.r58776.tar.xz
2021/04/07 | 4308 | systems/texlive/tlnet/archive/babel-romanian.source.r58776.tar.xz
@@ -289860,7 +289886,7 @@
2021/11/07 | 209804 | systems/texlive/tlnet/archive/babel-sorbian.doc.r60975.tar.xz
2021/11/07 | 3156 | systems/texlive/tlnet/archive/babel-sorbian.r60975.tar.xz
2021/11/07 | 6328 | systems/texlive/tlnet/archive/babel-sorbian.source.r60975.tar.xz
-2023/03/29 | 726800 | systems/texlive/tlnet/archive/babel.source.r66698.tar.xz
+2023/04/19 | 776352 | systems/texlive/tlnet/archive/babel.source.r66882.tar.xz
2021/05/28 | 183140 | systems/texlive/tlnet/archive/babel-spanish.doc.r59367.tar.xz
2021/05/28 | 8876 | systems/texlive/tlnet/archive/babel-spanish.r59367.tar.xz
2021/05/28 | 29800 | systems/texlive/tlnet/archive/babel-spanish.source.r59367.tar.xz
@@ -294451,12 +294477,12 @@
2023/02/18 | 326880 | systems/texlive/tlnet/archive/hitex.amd64-freebsd.r65877.tar.xz
2023/02/20 | 284832 | systems/texlive/tlnet/archive/hitex.amd64-netbsd.r65957.tar.xz
2023/02/18 | 235884 | systems/texlive/tlnet/archive/hitex.armhf-linux.r65877.tar.xz
-2023/02/18 | 2670656 | systems/texlive/tlnet/archive/hitex.doc.r65883.tar.xz
+2023/04/19 | 2670660 | systems/texlive/tlnet/archive/hitex.doc.r66878.tar.xz
2023/02/18 | 265908 | systems/texlive/tlnet/archive/hitex.i386-freebsd.r65877.tar.xz
2023/02/18 | 263624 | systems/texlive/tlnet/archive/hitex.i386-linux.r65877.tar.xz
2023/02/20 | 227568 | systems/texlive/tlnet/archive/hitex.i386-netbsd.r65957.tar.xz
2023/02/26 | 248460 | systems/texlive/tlnet/archive/hitex.i386-solaris.r66145.tar.xz
-2023/02/18 | 2964 | systems/texlive/tlnet/archive/hitex.r65883.tar.xz
+2023/04/19 | 5548 | systems/texlive/tlnet/archive/hitex.r66878.tar.xz
2023/02/20 | 618380 | systems/texlive/tlnet/archive/hitex.universal-darwin.r65895.tar.xz
2023/02/20 | 279996 | systems/texlive/tlnet/archive/hitex.windows.r65891.tar.xz
2023/03/11 | 278608 | systems/texlive/tlnet/archive/hitex.x86_64-cygwin.r66544.tar.xz
@@ -295679,9 +295705,9 @@
2021/07/20 | 5380 | systems/texlive/tlnet/archive/letterswitharrows.source.r59993.tar.xz
2020/04/15 | 1005116 | systems/texlive/tlnet/archive/lettre.doc.r54722.tar.xz
2020/04/15 | 25428 | systems/texlive/tlnet/archive/lettre.r54722.tar.xz
-2022/09/26 | 286324 | systems/texlive/tlnet/archive/lettrine.doc.r64511.tar.xz
-2022/09/26 | 7224 | systems/texlive/tlnet/archive/lettrine.r64511.tar.xz
-2022/09/26 | 17184 | systems/texlive/tlnet/archive/lettrine.source.r64511.tar.xz
+2023/04/19 | 406792 | systems/texlive/tlnet/archive/lettrine.doc.r66888.tar.xz
+2023/04/19 | 5260 | systems/texlive/tlnet/archive/lettrine.r66888.tar.xz
+2023/04/19 | 13744 | systems/texlive/tlnet/archive/lettrine.source.r66888.tar.xz
2019/02/28 | 24736 | systems/texlive/tlnet/archive/levy.doc.r21750.tar.xz
2019/02/28 | 34736 | systems/texlive/tlnet/archive/levy.r21750.tar.xz
2019/02/28 | 40844 | systems/texlive/tlnet/archive/lewis.doc.r15878.tar.xz
@@ -296311,8 +296337,8 @@
2019/02/28 | 9164 | systems/texlive/tlnet/archive/lxfonts.source.r32354.tar.xz
2022/06/13 | 3652 | systems/texlive/tlnet/archive/ly1.doc.r63565.tar.xz
2022/06/13 | 54900 | systems/texlive/tlnet/archive/ly1.r63565.tar.xz
-2023/04/17 | 834028 | systems/texlive/tlnet/archive/lyluatex.doc.r66861.tar.xz
-2023/04/17 | 14752 | systems/texlive/tlnet/archive/lyluatex.r66861.tar.xz
+2023/04/19 | 834568 | systems/texlive/tlnet/archive/lyluatex.doc.r66880.tar.xz
+2023/04/19 | 14988 | systems/texlive/tlnet/archive/lyluatex.r66880.tar.xz
2021/08/02 | 190676 | systems/texlive/tlnet/archive/macrolist.doc.r60139.tar.xz
2021/08/02 | 2340 | systems/texlive/tlnet/archive/macrolist.r60139.tar.xz
2021/08/02 | 4528 | systems/texlive/tlnet/archive/macrolist.source.r60139.tar.xz
@@ -297720,9 +297746,9 @@
2019/02/28 | 147788 | systems/texlive/tlnet/archive/padcount.doc.r47621.tar.xz
2019/02/28 | 1360 | systems/texlive/tlnet/archive/padcount.r47621.tar.xz
2019/02/28 | 2952 | systems/texlive/tlnet/archive/padcount.source.r47621.tar.xz
-2023/02/16 | 464428 | systems/texlive/tlnet/archive/pagecolor.doc.r65843.tar.xz
-2023/02/16 | 3072 | systems/texlive/tlnet/archive/pagecolor.r65843.tar.xz
-2023/02/16 | 11996 | systems/texlive/tlnet/archive/pagecolor.source.r65843.tar.xz
+2023/04/19 | 464720 | systems/texlive/tlnet/archive/pagecolor.doc.r66885.tar.xz
+2023/04/19 | 3040 | systems/texlive/tlnet/archive/pagecolor.r66885.tar.xz
+2023/04/19 | 12048 | systems/texlive/tlnet/archive/pagecolor.source.r66885.tar.xz
2019/02/28 | 73804 | systems/texlive/tlnet/archive/pagecont.doc.r15878.tar.xz
2019/02/28 | 1344 | systems/texlive/tlnet/archive/pagecont.r15878.tar.xz
2019/02/28 | 2920 | systems/texlive/tlnet/archive/pagecont.source.r15878.tar.xz
@@ -298544,8 +298570,8 @@
2019/02/28 | 32696 | systems/texlive/tlnet/archive/prettyref.doc.r15878.tar.xz
2019/02/28 | 1212 | systems/texlive/tlnet/archive/prettyref.r15878.tar.xz
2019/02/28 | 2464 | systems/texlive/tlnet/archive/prettyref.source.r15878.tar.xz
-2022/07/09 | 372452 | systems/texlive/tlnet/archive/prettytok.doc.r63842.tar.xz
-2022/07/09 | 5376 | systems/texlive/tlnet/archive/prettytok.r63842.tar.xz
+2023/04/19 | 493056 | systems/texlive/tlnet/archive/prettytok.doc.r66884.tar.xz
+2023/04/19 | 6032 | systems/texlive/tlnet/archive/prettytok.r66884.tar.xz
2022/02/22 | 326124 | systems/texlive/tlnet/archive/preview.doc.r62130.tar.xz
2022/02/22 | 6984 | systems/texlive/tlnet/archive/preview.r62130.tar.xz
2022/02/22 | 22852 | systems/texlive/tlnet/archive/preview.source.r62130.tar.xz
@@ -298870,8 +298896,8 @@
2022/04/08 | 4748 | systems/texlive/tlnet/archive/pst-pulley.r62977.tar.xz
2019/02/28 | 24596 | systems/texlive/tlnet/archive/pst-qtree.doc.r15878.tar.xz
2019/02/28 | 1844 | systems/texlive/tlnet/archive/pst-qtree.r15878.tar.xz
-2022/11/22 | 10578276 | systems/texlive/tlnet/archive/pstricks-add.doc.r65067.tar.xz
-2022/11/22 | 21896 | systems/texlive/tlnet/archive/pstricks-add.r65067.tar.xz
+2023/04/19 | 10668848 | systems/texlive/tlnet/archive/pstricks-add.doc.r66887.tar.xz
+2023/04/19 | 21972 | systems/texlive/tlnet/archive/pstricks-add.r66887.tar.xz
2019/02/28 | 1133128 | systems/texlive/tlnet/archive/pstricks_calcnotes.doc.r34363.tar.xz
2019/02/28 | 512 | systems/texlive/tlnet/archive/pstricks_calcnotes.r34363.tar.xz
2022/12/24 | 11085932 | systems/texlive/tlnet/archive/pstricks.doc.r65346.tar.xz
@@ -299580,9 +299606,9 @@
2019/02/28 | 1565692 | systems/texlive/tlnet/archive/sduthesis.doc.r41401.tar.xz
2019/02/28 | 1230616 | systems/texlive/tlnet/archive/sduthesis.r41401.tar.xz
2019/02/28 | 24124 | systems/texlive/tlnet/archive/sduthesis.source.r41401.tar.xz
-2023/01/28 | 1420024 | systems/texlive/tlnet/archive/se2thesis.doc.r65645.tar.xz
-2023/01/28 | 8240 | systems/texlive/tlnet/archive/se2thesis.r65645.tar.xz
-2023/01/28 | 20964 | systems/texlive/tlnet/archive/se2thesis.source.r65645.tar.xz
+2023/04/19 | 1464132 | systems/texlive/tlnet/archive/se2thesis.doc.r66883.tar.xz
+2023/04/19 | 9132 | systems/texlive/tlnet/archive/se2thesis.r66883.tar.xz
+2023/04/19 | 23860 | systems/texlive/tlnet/archive/se2thesis.source.r66883.tar.xz
2019/02/28 | 256480 | systems/texlive/tlnet/archive/secdot.doc.r20208.tar.xz
2019/02/28 | 1572 | systems/texlive/tlnet/archive/secdot.r20208.tar.xz
2022/01/31 | 445424 | systems/texlive/tlnet/archive/secnum.doc.r61813.tar.xz
@@ -300716,7 +300742,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
-2023/04/18 | 426220 | systems/texlive/tlnet/archive/texlive-scripts.doc.r66866.tar.xz
+2023/04/19 | 426172 | systems/texlive/tlnet/archive/texlive-scripts.doc.r66876.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
@@ -300738,7 +300764,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
-2023/04/18 | 114056 | systems/texlive/tlnet/archive/texlive-scripts.r66866.tar.xz
+2023/04/19 | 112904 | systems/texlive/tlnet/archive/texlive-scripts.r66876.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2023/03/08 | 60300 | systems/texlive/tlnet/archive/texlive-scripts.windows.r66427.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -302594,16 +302620,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
2023/03/12 | 125532 | systems/texlive/tlnet/install-tl
-2023/04/18 | 5735798 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2023/04/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2023/04/18 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/04/19 | 5735721 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/04/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/04/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2023/02/19 | 5098 | systems/texlive/tlnet/install-tl-windows.bat
-2023/04/18 | 21036272 | systems/texlive/tlnet/install-tl-windows.exe
-2023/04/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2023/04/18 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/04/18 | 26025695 | systems/texlive/tlnet/install-tl.zip
-2023/04/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/04/18 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/04/19 | 21037767 | systems/texlive/tlnet/install-tl-windows.exe
+2023/04/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/04/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/04/19 | 26024505 | systems/texlive/tlnet/install-tl.zip
+2023/04/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/04/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2023/03/19 | 1229 | systems/texlive/tlnet/README.md
2023/03/19 | 0 | systems/texlive/tlnet/TEXLIVE_2023
2023/01/17 | 8401 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -302613,7 +302639,7 @@
2023/01/17 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2023/01/17 | 49938 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2023/04/17 | 7353 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2023/04/18 | 2048 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/01/11 | 216583 | 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
@@ -302655,12 +302681,12 @@
2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2023/04/18 | 18075867 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2023/04/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/04/19 | 18079918 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/04/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2023/02/20 | 86803 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2023/04/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2023/04/18 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/04/18 | 2444464 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/04/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/04/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/04/19 | 2446628 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2023/02/26 | 42350 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -313086,7 +313112,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
-2023/04/19 | 186 | timestamp
+2023/04/20 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index d86e5fcc45..5b50241881 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index edc070e3e2..98e978f074 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,3 +1,247 @@
+2023/04/19 | 9999 | macros/latex/contrib/l3kernel/l3news10.tex
+2023/04/19 | 9916 | macros/latex/contrib/l3backend/l3backend-opacity.dtx
+2023/04/19 | 990 | graphics/pgf/contrib/pixelarttikz/doc/cap.csv
+2023/04/19 | 972462 | install/macros/latex/contrib/l3backend.tds.zip
+2023/04/19 | 9614 | macros/latex/contrib/l3backend/CHANGELOG.md
+2023/04/19 | 96041 | macros/latex/contrib/l3experimental/l3galley.dtx
+2023/04/19 | 9465 | macros/latex/contrib/l3kernel/l3news08.tex
+2023/04/19 | 945801 | graphics/pgf/contrib/pixelarttikz.zip
+2023/04/19 | 9436 | macros/latex/contrib/l3kernel/l3flag.dtx
+2023/04/19 | 934192 | macros/latex/contrib/l3backend.zip
+2023/04/19 | 934066 | macros/latex/contrib/l3backend/l3backend-code.pdf
+2023/04/19 | 9268 | systems/texlive/tlnet/archive/algpseudocodex.r66886.tar.xz
+2023/04/19 | 92068 | macros/latex/contrib/l3kernel/l3int.dtx
+2023/04/19 | 9132 | systems/texlive/tlnet/archive/se2thesis.r66883.tar.xz
+2023/04/19 | 9091 | graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty
+2023/04/19 | 90470 | macros/latex/contrib/l3kernel/l3seq.dtx
+2023/04/19 | 898788 | systems/texlive/tlnet/archive/babel.doc.r66882.tar.xz
+2023/04/19 | 890 | macros/latex/contrib/photobook/scripts/make-spreads.cfg.example
+2023/04/19 | 87744 | macros/latex/contrib/l3kernel/l3box.dtx
+2023/04/19 | 87463 | macros/latex/contrib/l3kernel/l3coffins.dtx
+2023/04/19 | 8481 | macros/latex/contrib/l3kernel/l3news11.tex
+2023/04/19 | 84785 | macros/latex/contrib/l3kernel/l3fp-basics.dtx
+2023/04/19 | 834568 | systems/texlive/tlnet/archive/lyluatex.doc.r66880.tar.xz
+2023/04/19 | 82667 | macros/latex/contrib/l3kernel/l3clist.dtx
+2023/04/19 | 82260 | macros/latex/contrib/l3kernel/l3names.dtx
+2023/04/19 | 81640 | macros/latex/contrib/l3kernel/l3prefixes.pdf
+2023/04/19 | 8145 | macros/latex/contrib/l3experimental/CHANGELOG.md
+2023/04/19 | 792775 | macros/latex/contrib/nicematrix/nicematrix.dtx
+2023/04/19 | 78692 | macros/latex/contrib/l3kernel/l3str.dtx
+2023/04/19 | 776352 | systems/texlive/tlnet/archive/babel.source.r66882.tar.xz
+2023/04/19 | 759 | graphics/pgf/contrib/pixelarttikz/doc/test1.csv
+2023/04/19 | 75926 | macros/latex/contrib/l3kernel/l3skip.dtx
+2023/04/19 | 7454 | macros/latex/contrib/l3kernel/l3fp-assign.dtx
+2023/04/19 | 74250 | macros/latex/contrib/l3kernel/l3msg.dtx
+2023/04/19 | 73835 | macros/latex/contrib/l3kernel/l3fp-trig.dtx
+2023/04/19 | 7327044 | macros/latex/contrib/l3kernel/source3.pdf
+2023/04/19 | 70859 | macros/latex/contrib/l3kernel/expl3.dtx
+2023/04/19 | 70279 | macros/latex/contrib/l3kernel/l3fp.dtx
+2023/04/19 | 69893 | macros/latex/contrib/l3kernel/l3text-case.dtx
+2023/04/19 | 679710 | macros/latex/contrib/l3experimental/l3draw-code.pdf
+2023/04/19 | 6677 | macros/latex/contrib/l3kernel/l3news02.tex
+2023/04/19 | 66654 | macros/latex/contrib/l3kernel/l3prg.dtx
+2023/04/19 | 6539 | macros/generic/hitex-def.zip
+2023/04/19 | 6482 | macros/latex/contrib/l3kernel/l3news03.tex
+2023/04/19 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex
+2023/04/19 | 62840 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx
+2023/04/19 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex
+2023/04/19 | 62589 | macros/unicodetex/latex/nwafuthesis/nwafuthesis-doc.dtx
+2023/04/19 | 623355 | macros/latex/contrib/l3kernel/expl3.pdf
+2023/04/19 | 6224 | macros/latex/contrib/l3kernel/l3.ins
+2023/04/19 | 6169 | macros/latex/contrib/l3kernel/l3term-glossary.tex
+2023/04/19 | 60396 | macros/latex/contrib/l3kernel/l3candidates.dtx
+2023/04/19 | 6032 | systems/texlive/tlnet/archive/prettytok.r66884.tar.xz
+2023/04/19 | 58083 | macros/latex/contrib/l3experimental/xgalley.dtx
+2023/04/19 | 57974 | macros/latex/contrib/l3kernel/l3prop.dtx
+2023/04/19 | 5735721 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/04/19 | 5653 | macros/latex/contrib/l3experimental/l3draw-layers.dtx
+2023/04/19 | 558346 | macros/latex/contrib/l3kernel/l3doc.pdf
+2023/04/19 | 5548 | systems/texlive/tlnet/archive/hitex.r66878.tar.xz
+2023/04/19 | 553017 | macros/latex/contrib/nicematrix/nicematrix-french.pdf
+2023/04/19 | 549 | macros/latex/contrib/l3backend/README.md
+2023/04/19 | 5429 | macros/latex/contrib/l3kernel/l3news04.tex
+2023/04/19 | 5260 | systems/texlive/tlnet/archive/lettrine.r66888.tar.xz
+2023/04/19 | 518188 | macros/latex/contrib/l3experimental/l3draw.pdf
+2023/04/19 | 51753 | macros/latex/contrib/l3kernel/l3text.dtx
+2023/04/19 | 51059 | macros/latex/contrib/l3kernel/l3fp-extended.dtx
+2023/04/19 | 50928 | macros/latex/contrib/l3backend/l3backend-pdf.dtx
+2023/04/19 | 503873 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdf
+2023/04/19 | 4997096 | systems/texlive/tlnet/archive/arara.doc.r66881.tar.xz
+2023/04/19 | 4977 | macros/latex/contrib/l3kernel/l3news07.tex
+2023/04/19 | 4937 | macros/latex/contrib/l3kernel/l3news01.tex
+2023/04/19 | 49311 | macros/latex/contrib/l3kernel/l3fp-expo.dtx
+2023/04/19 | 493056 | systems/texlive/tlnet/archive/prettytok.doc.r66884.tar.xz
+2023/04/19 | 4922 | macros/latex/contrib/l3backend/l3backend.ins
+2023/04/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/04/19 | 4890 | macros/latex/contrib/l3kernel/l3news.tex
+2023/04/19 | 47216 | macros/latex/contrib/l3kernel/l3fp-aux.dtx
+2023/04/19 | 4716 | macros/latex/contrib/l3kernel/l3news05.tex
+2023/04/19 | 468164 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdf
+2023/04/19 | 464720 | systems/texlive/tlnet/archive/pagecolor.doc.r66885.tar.xz
+2023/04/19 | 462 | macros/latex/contrib/photobook/DEPENDS.txt
+2023/04/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/04/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/04/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/04/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/04/19 | 45592 | macros/latex/contrib/l3kernel/CHANGELOG.md
+2023/04/19 | 45418 | macros/latex/contrib/l3kernel/l3prefixes.csv
+2023/04/19 | 4538 | macros/latex/contrib/l3kernel/l3legacy.dtx
+2023/04/19 | 4460822 | install/macros/latex/contrib/l3experimental.tds.zip
+2023/04/19 | 4448 | macros/latex/contrib/l3experimental/l3draw-state.dtx
+2023/04/19 | 4422710 | macros/latex/contrib/l3experimental.zip
+2023/04/19 | 4323 | macros/latex/contrib/l3experimental/l3draw-boxes.dtx
+2023/04/19 | 43212 | macros/latex/contrib/l3kernel/l3debug.dtx
+2023/04/19 | 4284 | macros/latex/contrib/l3experimental/README.md
+2023/04/19 | 426172 | systems/texlive/tlnet/archive/texlive-scripts.doc.r66876.tar.xz
+2023/04/19 | 42560 | macros/latex/contrib/l3experimental/l3draw.dtx
+2023/04/19 | 4172 | macros/latex/contrib/photobook/scripts/cls2tex.sh
+2023/04/19 | 41332 | macros/latex/contrib/l3backend/l3backend-color.dtx
+2023/04/19 | 409299 | macros/latex/contrib/l3experimental/l3galley.pdf
+2023/04/19 | 40704 | macros/latex/contrib/l3kernel/l3sort.dtx
+2023/04/19 | 406792 | systems/texlive/tlnet/archive/lettrine.doc.r66888.tar.xz
+2023/04/19 | 4062865 | biblio/ctan-bibdata.zip
+2023/04/19 | 404794 | macros/latex/contrib/l3experimental/l3bitset.pdf
+2023/04/19 | 4011 | macros/latex/contrib/l3experimental/l3opacity.dtx
+2023/04/19 | 395876 | macros/latex/contrib/l3kernel/l3news.pdf
+2023/04/19 | 394864 | macros/latex/contrib/l3experimental/xcoffins.pdf
+2023/04/19 | 3929 | macros/latex/contrib/l3kernel/README.md
+2023/04/19 | 387482 | macros/latex/contrib/oststud.zip
+2023/04/19 | 384038 | macros/latex/contrib/l3experimental/l3graphics.pdf
+2023/04/19 | 36 | graphics/pgf/contrib/pixelarttikz/doc/base.csv
+2023/04/19 | 368426 | macros/latex/contrib/l3experimental/l3str-format.pdf
+2023/04/19 | 3665816 | biblio/ctan-bibdata/ctan.pdf
+2023/04/19 | 36026 | macros/latex/contrib/l3experimental/l3draw-points.dtx
+2023/04/19 | 35441 | macros/latex/contrib/l3kernel/l3quark.dtx
+2023/04/19 | 352600 | systems/texlive/tlnet/archive/algpseudocodex.doc.r66886.tar.xz
+2023/04/19 | 35092 | macros/latex/contrib/l3experimental/xcoffins.dtx
+2023/04/19 | 348450 | macros/latex/contrib/l3experimental/l3sys-shell.pdf
+2023/04/19 | 3472890 | macros/unicodetex/latex/nwafuthesis.zip
+2023/04/19 | 34288 | macros/latex/contrib/l3backend/l3backend-draw.dtx
+2023/04/19 | 34167 | macros/latex/contrib/l3kernel/l3intarray.dtx
+2023/04/19 | 33656 | macros/latex/contrib/l3kernel/l3sys.dtx
+2023/04/19 | 32935 | macros/latex/contrib/l3kernel/l3unicode.dtx
+2023/04/19 | 32546 | macros/latex/contrib/l3experimental/l3draw-paths.dtx
+2023/04/19 | 32409 | macros/latex/contrib/l3kernel/l3cctab.dtx
+2023/04/19 | 31827 | macros/latex/contrib/l3experimental/l3str-format.dtx
+2023/04/19 | 313994 | macros/latex/contrib/l3experimental/l3opacity.pdf
+2023/04/19 | 308937 | macros/latex/contrib/l3experimental/l3benchmark.pdf
+2023/04/19 | 304752 | macros/latex/contrib/l3kernel/l3regex.dtx
+2023/04/19 | 3040 | systems/texlive/tlnet/archive/pagecolor.r66885.tar.xz
+2023/04/19 | 300021 | macros/latex/contrib/l3experimental/xgalley.pdf
+2023/04/19 | 296617 | macros/latex/contrib/l3kernel/l3styleguide.pdf
+2023/04/19 | 29575 | macros/latex/contrib/l3backend/l3backend-graphics.dtx
+2023/04/19 | 2821 | macros/latex/contrib/l3kernel/l3prefixes.tex
+2023/04/19 | 280971 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx
+2023/04/19 | 2778851 | biblio/ctan-bibdata/ctan.bib
+2023/04/19 | 26736 | macros/latex/contrib/l3kernel/l3kernel-functions.dtx
+2023/04/19 | 2670660 | systems/texlive/tlnet/archive/hitex.doc.r66878.tar.xz
+2023/04/19 | 26024505 | systems/texlive/tlnet/install-tl.zip
+2023/04/19 | 25940 | macros/latex/contrib/l3experimental/l3graphics.dtx
+2023/04/19 | 25650 | macros/latex/contrib/l3kernel/l3fp-random.dtx
+2023/04/19 | 250136 | macros/latex/contrib/l3kernel/l3news09.pdf
+2023/04/19 | 24841 | macros/latex/contrib/l3kernel/source3body.tex
+2023/04/19 | 2446628 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/04/19 | 243260 | macros/latex/contrib/l3kernel/l3syntax-changes.pdf
+2023/04/19 | 240708 | macros/context/contrib/context-pocketdiary.zip
+2023/04/19 | 2390 | macros/latex/contrib/l3kernel/l3docstrip.dtx
+2023/04/19 | 23866 | macros/latex/contrib/l3kernel/l3luatex.dtx
+2023/04/19 | 23860 | systems/texlive/tlnet/archive/se2thesis.source.r66883.tar.xz
+2023/04/19 | 2379457 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf
+2023/04/19 | 23530 | macros/latex/contrib/l3kernel/l3deprecation.dtx
+2023/04/19 | 23011 | macros/latex/contrib/l3kernel/l3fp-logic.dtx
+2023/04/19 | 2229 | macros/latex/contrib/l3kernel/source3.tex
+2023/04/19 | 21972 | systems/texlive/tlnet/archive/pstricks-add.r66887.tar.xz
+2023/04/19 | 219077 | macros/latex/contrib/nicematrix/nicematrix-french.tex
+2023/04/19 | 215775 | macros/latex/contrib/l3kernel/l3term-glossary.pdf
+2023/04/19 | 2103853 | macros/latex/contrib/nicematrix.zip
+2023/04/19 | 21037767 | systems/texlive/tlnet/install-tl-windows.exe
+2023/04/19 | 20779 | macros/context/contrib/context-calendar-examples.zip
+2023/04/19 | 207536 | systems/texlive/tlnet/archive/babel.r66882.tar.xz
+2023/04/19 | 204992 | macros/latex/contrib/l3kernel/l3news12.pdf
+2023/04/19 | 20451 | macros/latex/contrib/l3experimental/l3draw-softpath.dtx
+2023/04/19 | 2038 | macros/latex/contrib/l3kernel/interface3.tex
+2023/04/19 | 20359 | macros/latex/contrib/l3kernel/l3text-purify.dtx
+2023/04/19 | 20004 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex
+2023/04/19 | 19641 | macros/latex/contrib/l3kernel/l3fp-convert.dtx
+2023/04/19 | 192417 | macros/latex/contrib/photobook.zip
+2023/04/19 | 19169 | macros/latex/contrib/l3kernel/l3pdf.dtx
+2023/04/19 | 1906 | macros/latex/contrib/l3experimental/l3draw.ins
+2023/04/19 | 18694 | macros/latex/contrib/l3experimental/l3bitset.dtx
+2023/04/19 | 18532 | macros/latex/contrib/l3kernel/l3fp-round.dtx
+2023/04/19 | 18079918 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/04/19 | 1725275 | macros/latex/contrib/l3kernel/interface3.pdf
+2023/04/19 | 1705 | macros/latex/contrib/photobook/README.md
+2023/04/19 | 170076 | macros/latex/contrib/l3kernel/l3news11.pdf
+2023/04/19 | 16935 | macros/latex/contrib/photobook/scripts/make-spreads.sh
+2023/04/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/04/19 | 16771 | graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex
+2023/04/19 | 166879 | macros/latex/contrib/photobook/photobook.cls
+2023/04/19 | 16633 | macros/latex/contrib/l3kernel/l3text-map.dtx
+2023/04/19 | 16508 | macros/latex/contrib/l3experimental/l3benchmark.dtx
+2023/04/19 | 163456 | macros/latex/contrib/l3kernel/l3news08.pdf
+2023/04/19 | 1624 | macros/latex/contrib/l3experimental/xgalley.ins
+2023/04/19 | 16092 | macros/latex/contrib/l3backend/l3backend-basics.dtx
+2023/04/19 | 1569 | macros/latex/contrib/l3experimental/xcoffins.ins
+2023/04/19 | 1565 | macros/latex/contrib/l3experimental/l3sys-shell.ins
+2023/04/19 | 1565 | macros/latex/contrib/l3experimental/l3bitset.ins
+2023/04/19 | 1564 | macros/latex/contrib/l3experimental/l3str.ins
+2023/04/19 | 1558 | macros/latex/contrib/l3experimental/l3benchmark.ins
+2023/04/19 | 155616 | macros/latex/contrib/l3kernel/l3doc.dtx
+2023/04/19 | 1553 | macros/latex/contrib/l3experimental/l3graphics.ins
+2023/04/19 | 1547 | macros/latex/contrib/l3experimental/l3opacity.ins
+2023/04/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/04/19 | 1536 | macros/unicodetex/latex/nwafuthesis/README.md
+2023/04/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/04/19 | 1527 | macros/latex/contrib/photobook/LICENSE
+2023/04/19 | 152135 | macros/latex/contrib/l3kernel/l3docstrip.pdf
+2023/04/19 | 151569 | macros/latex/contrib/l3kernel/l3news06.pdf
+2023/04/19 | 150674 | macros/latex/contrib/l3kernel/l3news02.pdf
+2023/04/19 | 150283 | macros/latex/contrib/l3kernel/l3news10.pdf
+2023/04/19 | 14988 | systems/texlive/tlnet/archive/lyluatex.r66880.tar.xz
+2023/04/19 | 14927 | macros/latex/contrib/l3kernel/l3bootstrap.dtx
+2023/04/19 | 14913 | macros/latex/contrib/l3kernel/l3news12.tex
+2023/04/19 | 148706 | macros/latex/contrib/l3kernel/l3news03.pdf
+2023/04/19 | 14669 | macros/latex/contrib/l3backend/l3backend-header.dtx
+2023/04/19 | 1464132 | systems/texlive/tlnet/archive/se2thesis.doc.r66883.tar.xz
+2023/04/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/04/19 | 145318 | macros/latex/contrib/l3kernel/l3tl.dtx
+2023/04/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/04/19 | 14431 | macros/latex/contrib/l3backend/l3backend-box.dtx
+2023/04/19 | 143331 | macros/latex/contrib/photobook/photobook.pdf
+2023/04/19 | 14221 | macros/latex/contrib/photobook/scripts/README.md
+2023/04/19 | 13978731 | install/macros/latex/contrib/l3kernel.tds.zip
+2023/04/19 | 1380299 | macros/latex/contrib/nicematrix/nicematrix.pdf
+2023/04/19 | 13744 | systems/texlive/tlnet/archive/lettrine.source.r66888.tar.xz
+2023/04/19 | 13716203 | macros/latex/contrib/l3kernel.zip
+2023/04/19 | 136651 | macros/latex/contrib/l3kernel/l3file.dtx
+2023/04/19 | 1360 | macros/latex/contrib/l3experimental/l3draw-code.tex
+2023/04/19 | 1331 | macros/latex/contrib/l3backend/l3backend-code.tex
+2023/04/19 | 129545 | macros/latex/contrib/l3kernel/l3basics.dtx
+2023/04/19 | 128316 | macros/latex/contrib/l3kernel/l3news07.pdf
+2023/04/19 | 12783 | macros/latex/contrib/l3kernel/l3fp-traps.dtx
+2023/04/19 | 127087 | macros/latex/contrib/l3kernel/l3keys.dtx
+2023/04/19 | 12361 | macros/latex/contrib/l3experimental/l3sys-shell.dtx
+2023/04/19 | 122710 | macros/latex/contrib/l3kernel/l3news01.pdf
+2023/04/19 | 12147968 | systems/texlive/tlnet/archive/arara.r66881.tar.xz
+2023/04/19 | 121406 | macros/context/contrib/context-collatingmarks.zip
+2023/04/19 | 12048 | systems/texlive/tlnet/archive/pagecolor.source.r66885.tar.xz
+2023/04/19 | 11884 | macros/latex/contrib/l3kernel/l3styleguide.tex
+2023/04/19 | 118796 | macros/latex/contrib/l3kernel/l3token.dtx
+2023/04/19 | 11781 | macros/latex/contrib/l3kernel/l3fparray.dtx
+2023/04/19 | 115404 | systems/texlive/tlnet/archive/arara.source.r66881.tar.xz
+2023/04/19 | 114586 | macros/latex/contrib/l3kernel/l3news04.pdf
+2023/04/19 | 113427 | macros/latex/contrib/l3kernel/l3str-convert.dtx
+2023/04/19 | 112904 | systems/texlive/tlnet/archive/texlive-scripts.r66876.tar.xz
+2023/04/19 | 112485 | macros/latex/contrib/l3kernel/l3news05.pdf
+2023/04/19 | 112270 | macros/latex/contrib/l3kernel/l3color.dtx
+2023/04/19 | 107383 | macros/latex/contrib/l3kernel/l3news09.tex
+2023/04/19 | 10668848 | systems/texlive/tlnet/archive/pstricks-add.doc.r66887.tar.xz
+2023/04/19 | 106443 | macros/latex/contrib/l3kernel/l3expan.dtx
+2023/04/19 | 105012 | macros/latex/contrib/l3kernel/l3fp-parse.dtx
+2023/04/19 | 102702 | macros/context/contrib/context-interval-calendar.zip
+2023/04/19 | 10191 | macros/latex/contrib/photobook/Makefile
+2023/04/19 | 10138 | macros/latex/contrib/l3experimental/l3draw-transforms.dtx
+2023/04/19 | 10018 | macros/latex/contrib/l3experimental/l3draw-scopes.dtx
2023/04/18 | 9948 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-osf-ot1.tfm
2023/04/18 | 9900 | fonts/ibarra/tfm/IbarraRealNova-Bold-lf-ot1.tfm
2023/04/18 | 985 | support/lyluatex/lyluatexmanual.cls
@@ -9,7 +253,6 @@
2023/04/18 | 9652 | fonts/ibarra/tfm/IbarraRealNova-Regular-osf-ot1.tfm
2023/04/18 | 93660 | macros/latex/contrib/pagecolor/pagecolor-example.pdf
2023/04/18 | 931908 | macros/latex/required/babel/base/locale.zip
-2023/04/18 | 9240 | systems/texlive/tlnet/archive/algpseudocodex.r66869.tar.xz
2023/04/18 | 912577 | macros/latex/required/babel/base/babel.pdf
2023/04/18 | 9119 | macros/latex/contrib/lettrine/lettrine-2018-08-18.sty
2023/04/18 | 89568 | fonts/ibarra/type1/IbarraRealNova-Italic.pfb
@@ -17,6 +260,7 @@
2023/04/18 | 863 | macros/latex/contrib/se2thesis/README.md
2023/04/18 | 863 | macros/latex/contrib/prettytok/README
2023/04/18 | 84457 | fonts/ibarra/type1/IbarraRealNova-Regular.pfb
+2023/04/18 | 8419 | macros/generic/hitex-def/hhitex.def
2023/04/18 | 840 | fonts/ibarra/vf/IbarraRealNova-SemiBoldItalic-osf-sc-ot1.vf
2023/04/18 | 840 | fonts/ibarra/vf/IbarraRealNova-SemiBoldItalic-lf-sc-ot1.vf
2023/04/18 | 83927 | fonts/ibarra/type1/IbarraRealNova-SemiBold.pfb
@@ -68,7 +312,6 @@
2023/04/18 | 59180 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-t1.tfm
2023/04/18 | 59152 | fonts/ibarra/tfm/IbarraRealNova-Italic-osf-t1.tfm
2023/04/18 | 58 | support/lyluatex/latexmkrc
-2023/04/18 | 5735798 | systems/texlive/tlnet/install-tl-unx.tar.gz
2023/04/18 | 57333 | macros/latex/contrib/se2thesis/se2thesis.dtx
2023/04/18 | 5556864 | systems/texlive/tlnet/archive/wintools.windows.r66874.tar.xz
2023/04/18 | 54436 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-lf-t1.tfm
@@ -104,17 +347,12 @@
2023/04/18 | 5084 | fonts/ibarra/tfm/IbarraRealNova-Bold-osf-sc-ot1.tfm
2023/04/18 | 504 | fonts/ibarra/vf/IbarraRealNova-Bold-lf-ts1.vf
2023/04/18 | 497691 | macros/latex/contrib/prettytok.zip
-2023/04/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2023/04/18 | 485862 | macros/latex/contrib/lettrine.zip
2023/04/18 | 485548 | macros/latex/contrib/prettytok/prettytok.pdf
2023/04/18 | 477 | macros/latex/contrib/prettytok/prettytok-test.tex
2023/04/18 | 46745 | macros/latex/contrib/pagecolor/pagecolor.dtx
2023/04/18 | 46041 | support/lyluatex/lyluatex.lua
2023/04/18 | 45959 | macros/latex/contrib/lettrine/lettrine.dtx
-2023/04/18 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/04/18 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2023/04/18 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/04/18 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2023/04/18 | 43616 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-lf-ly1.tfm
2023/04/18 | 43544 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-osf-ly1.tfm
2023/04/18 | 43316 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-lf-ly1.tfm
@@ -122,10 +360,8 @@
2023/04/18 | 43200 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-ly1.tfm
2023/04/18 | 43144 | fonts/ibarra/tfm/IbarraRealNova-Italic-osf-ly1.tfm
2023/04/18 | 4298 | macros/latex/contrib/lettrine/doc/lettrine-demo-lua.tex
-2023/04/18 | 426220 | systems/texlive/tlnet/archive/texlive-scripts.doc.r66866.tar.xz
2023/04/18 | 4226 | fonts/ibarra/doc/OFL.txt
2023/04/18 | 4165 | macros/latex/contrib/lettrine/contrib/pzc3.cfl
-2023/04/18 | 4062031 | biblio/ctan-bibdata.zip
2023/04/18 | 4046 | macros/latex/contrib/se2thesis/CHANGELOG.md
2023/04/18 | 39788 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-lf-sc-t1.tfm
2023/04/18 | 39764 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-osf-sc-t1.tfm
@@ -139,9 +375,7 @@
2023/04/18 | 382546 | macros/latex/contrib/se2thesis/se2thesis.pdf
2023/04/18 | 37956 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-sc-t1.tfm
2023/04/18 | 37936 | fonts/ibarra/tfm/IbarraRealNova-Italic-osf-sc-t1.tfm
-2023/04/18 | 3664357 | biblio/ctan-bibdata/ctan.pdf
2023/04/18 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
-2023/04/18 | 351896 | systems/texlive/tlnet/archive/algpseudocodex.doc.r66869.tar.xz
2023/04/18 | 3490 | fonts/ibarra/enc/ibrr_q6k3zb.enc
2023/04/18 | 34688 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-lf-sc-t1.tfm
2023/04/18 | 34672 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-osf-sc-t1.tfm
@@ -178,11 +412,9 @@
2023/04/18 | 2876 | systems/texlive/tlnet/archive/scrwfile.r66872.tar.xz
2023/04/18 | 2862 | fonts/ibarra/enc/ibrr_s4svbt.enc
2023/04/18 | 2845 | fonts/ibarra/enc/ibrr_miztrm.enc
-2023/04/18 | 2778851 | biblio/ctan-bibdata/ctan.bib
2023/04/18 | 27116 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-lf-sc-ly1.tfm
2023/04/18 | 27056 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-osf-sc-ly1.tfm
2023/04/18 | 26474 | macros/latex/contrib/se2thesis/se2packages.dtx
-2023/04/18 | 26025695 | systems/texlive/tlnet/install-tl.zip
2023/04/18 | 25816 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-sc-ly1.tfm
2023/04/18 | 25768 | fonts/ibarra/tfm/IbarraRealNova-Italic-osf-sc-ly1.tfm
2023/04/18 | 2529294 | install/macros/latex/contrib/se2thesis.tds.zip
@@ -191,7 +423,6 @@
2023/04/18 | 25032 | fonts/ibarra/tfm/IbarraRealNova-Bold-lf-sc-t1.tfm
2023/04/18 | 24912 | fonts/ibarra/tfm/IbarraRealNova-Bold-osf-sc-t1.tfm
2023/04/18 | 2464 | macros/latex/required/babel/base/README.md
-2023/04/18 | 2444464 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/04/18 | 24432 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-lf-sc-ly1.tfm
2023/04/18 | 24380 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-osf-sc-ly1.tfm
2023/04/18 | 23928 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-lf-sc-ly1.tfm
@@ -199,11 +430,12 @@
2023/04/18 | 23280 | fonts/ibarra/tfm/IbarraRealNova-Regular-lf-sc-ly1.tfm
2023/04/18 | 23180 | fonts/ibarra/tfm/IbarraRealNova-Regular-osf-sc-ly1.tfm
2023/04/18 | 21890 | macros/latex/required/babel/base/bbcompat.dtx
-2023/04/18 | 21036272 | systems/texlive/tlnet/install-tl-windows.exe
2023/04/18 | 2068 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-lf-ly1--base.tfm
2023/04/18 | 2064 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-osf-ly1--base.tfm
+2023/04/18 | 2048 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/04/18 | 2048 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-lf-ly1--base.tfm
2023/04/18 | 2046426 | macros/latex/required/babel/base.zip
+2023/04/18 | 2040 | macros/latex/contrib/oststud/Makefile
2023/04/18 | 2036 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-osf-sc-ly1--base.tfm
2023/04/18 | 2036 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-lf-sc-ly1--base.tfm
2023/04/18 | 2032 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-osf-ly1--base.tfm
@@ -218,6 +450,7 @@
2023/04/18 | 2008 | fonts/ibarra/tfm/IbarraRealNova-Italic-osf-ly1--base.tfm
2023/04/18 | 2000 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-sup-ly1.tfm
2023/04/18 | 1996 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-sup-ly1--base.tfm
+2023/04/18 | 19959 | macros/latex/contrib/oststud/oststud.dtx
2023/04/18 | 1980 | fonts/ibarra/tfm/IbarraRealNova-Italic-sup-ly1.tfm
2023/04/18 | 1980 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-lf-t1--base.tfm
2023/04/18 | 1976 | fonts/ibarra/tfm/IbarraRealNova-Italic-sup-ly1--base.tfm
@@ -245,7 +478,6 @@
2023/04/18 | 1894 | macros/latex/contrib/se2thesis/test.tex
2023/04/18 | 1893 | fonts/ibarra/README
2023/04/18 | 18288034 | support/arara.zip
-2023/04/18 | 18075867 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
2023/04/18 | 1768 | fonts/ibarra/tfm/IbarraRealNova-Regular-lf-ly1--base.tfm
2023/04/18 | 1764 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-lf-ly1--base.tfm
2023/04/18 | 1760 | fonts/ibarra/tfm/IbarraRealNova-Regular-osf-ly1--base.tfm
@@ -333,7 +565,6 @@
2023/04/18 | 1680 | fonts/ibarra/vf/IbarraRealNova-BoldItalic-sup-ly1.vf
2023/04/18 | 1680 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-osf-t1--base.tfm
2023/04/18 | 1680 | fonts/ibarra/tfm/IbarraRealNova-Regular-lf-t1--base.tfm
-2023/04/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2023/04/18 | 1676 | fonts/ibarra/vf/IbarraRealNova-Regular-sup-ly1.vf
2023/04/18 | 1676 | fonts/ibarra/vf/IbarraRealNova-Italic-sup-ly1.vf
2023/04/18 | 1676 | fonts/ibarra/vf/IbarraRealNova-Bold-sup-ly1.vf
@@ -348,6 +579,7 @@
2023/04/18 | 1648 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-lf-sc-t1--base.tfm
2023/04/18 | 1640 | fonts/ibarra/tfm/IbarraRealNova-Regular-osf-sc-t1--base.tfm
2023/04/18 | 1640 | fonts/ibarra/tfm/IbarraRealNova-Regular-lf-sc-t1--base.tfm
+2023/04/18 | 1629 | macros/latex/contrib/oststud/oststud.ins
2023/04/18 | 16269 | fonts/ibarra/map/ibarra.map
2023/04/18 | 1622988 | systems/texlive/tlnet/archive/pst-eucl.doc.r66868.tar.xz
2023/04/18 | 158 | support/lyluatex/ly/eight-systems.ly
@@ -357,9 +589,7 @@
2023/04/18 | 1552 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-osf-sc-ot1--base.tfm
2023/04/18 | 1548 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-sup-ot1.tfm
2023/04/18 | 1542 | macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.tex
-2023/04/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
2023/04/18 | 1536 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-sup-ot1.tfm
-2023/04/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2023/04/18 | 1528 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-sc-ot1--base.tfm
2023/04/18 | 1520 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-osf-sc-ot1--base.tfm
2023/04/18 | 152024 | fonts/ibarra/doc/specimen.pdf
@@ -367,6 +597,7 @@
2023/04/18 | 1504 | fonts/ibarra/tfm/IbarraRealNova-Italic-osf-sc-ot1--base.tfm
2023/04/18 | 1492 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-osf-ts1--base.tfm
2023/04/18 | 1492 | fonts/ibarra/tfm/IbarraRealNova-BoldItalic-lf-ts1--base.tfm
+2023/04/18 | 1490 | macros/latex/contrib/oststud/README.md
2023/04/18 | 1484 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-osf-ts1.tfm
2023/04/18 | 1484 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-lf-ts1.tfm
2023/04/18 | 1480 | fonts/ibarra/tfm/IbarraRealNova-SemiBoldItalic-osf-ts1--base.tfm
@@ -378,9 +609,9 @@
2023/04/18 | 1460 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-ts1.tfm
2023/04/18 | 1460 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-ts1--base.tfm
2023/04/18 | 14600 | macros/latex/contrib/prettytok/prettytok.tex
-2023/04/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/04/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/04/18 | 145415 | macros/latex/contrib/oststud/oststud.pdf
2023/04/18 | 14470 | macros/latex/contrib/lettrine/doc/W.pdf
+2023/04/18 | 143177 | macros/latex/contrib/oststud/hsrstud.pdf
2023/04/18 | 13992 | systems/texlive/tlnet/archive/scrwfile.source.r66872.tar.xz
2023/04/18 | 139142 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf
2023/04/18 | 1372 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-osf-ts1.tfm
@@ -403,6 +634,7 @@
2023/04/18 | 128266 | macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf
2023/04/18 | 12816 | macros/latex/contrib/se2thesis/se2colors.dtx
2023/04/18 | 1280 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-osf-sc-ot1--base.tfm
+2023/04/18 | 127717 | macros/latex/contrib/oststud/hsrstud-classes.pdf
2023/04/18 | 1276 | fonts/ibarra/tfm/IbarraRealNova-SemiBold-lf-sc-ot1--base.tfm
2023/04/18 | 1276 | fonts/ibarra/tfm/IbarraRealNova-Regular-sup-ot1.tfm
2023/04/18 | 1271748 | systems/texlive/tlnet/archive/profcollege.r66871.tar.xz
@@ -417,7 +649,6 @@
2023/04/18 | 11992 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.tex
2023/04/18 | 11900 | fonts/ibarra/tfm/IbarraRealNova-Italic-lf-ot1.tfm
2023/04/18 | 11896 | fonts/ibarra/tfm/IbarraRealNova-Italic-osf-ot1.tfm
-2023/04/18 | 114056 | systems/texlive/tlnet/archive/texlive-scripts.r66866.tar.xz
2023/04/18 | 1107 | support/lyluatex/lyluatexbase.cls
2023/04/18 | 1102663 | macros/latex/contrib/se2thesis/test.pdf
2023/04/18 | 1101208 | macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdf
@@ -468,7 +699,6 @@
2023/04/17 | 841 | support/arara/scripts/rules/arara-rule-tikzmake.yaml
2023/04/17 | 838 | support/arara/scripts/rules/arara-rule-biber.yaml
2023/04/17 | 83762 | macros/latex/contrib/koma-script/doc/scrbase-en.tex
-2023/04/17 | 834028 | systems/texlive/tlnet/archive/lyluatex.doc.r66861.tar.xz
2023/04/17 | 830 | support/arara/scripts/rules/arara-rule-nomencl.yaml
2023/04/17 | 8277 | macros/latex/contrib/koma-script/doc/variables-tikz.tex
2023/04/17 | 8271 | macros/latex/contrib/profcollege/latex/PfCBillard.tex
@@ -495,7 +725,6 @@
2023/04/17 | 75565 | macros/latex/contrib/koma-script/scrkernel-language.dtx
2023/04/17 | 7532 | macros/latex/contrib/koma-script/doc/common-compatibility-en.tex
2023/04/17 | 73777 | macros/latex/contrib/koma-script/tocbasic.dtx
-2023/04/17 | 7353 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/04/17 | 73295 | macros/latex/contrib/koma-script/scrhack.dtx
2023/04/17 | 73006 | macros/latex/contrib/koma-script/scrkernel-floats.dtx
2023/04/17 | 728 | graphics/pstricks/contrib/pstricks-add/doc/data/matrix2.data
@@ -847,7 +1076,6 @@
2023/04/17 | 14927 | macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex
2023/04/17 | 1488 | macros/latex/contrib/profcollege/latex/PfCScratch.tex
2023/04/17 | 1477 | support/arara/scripts/rules/arara-rule-asymptote.yaml
-2023/04/17 | 14752 | systems/texlive/tlnet/archive/lyluatex.r66861.tar.xz
2023/04/17 | 1469 | support/arara/scripts/rules/arara-rule-knitr.yaml
2023/04/17 | 146085 | macros/latex/contrib/koma-script/doc/tocbasic-de.tex
2023/04/17 | 1447 | support/arara/scripts/rules/arara-rule-dvisvgm.yaml
@@ -1579,8 +1807,10 @@
2023/04/15 | 81494 | systems/win32/miktex/tm/packages/miktex-lzma-bin-x64-2.9.tar.lzma
2023/04/15 | 81480 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
2023/04/15 | 81444 | systems/win32/miktex/tm/packages/miktex-fonts-bin-x64-2.9.tar.lzma
+2023/04/15 | 8071 | macros/context/contrib/context-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex
2023/04/15 | 78656 | systems/win32/miktex/tm/packages/miktex-bibtex-bin-x64-2.9.tar.lzma
2023/04/15 | 78642 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2023/04/15 | 7835 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex
2023/04/15 | 78075 | macros/latex/contrib/profcollege/metapost/PfCObjets.mp
2023/04/15 | 77663 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
2023/04/15 | 77624 | systems/win32/miktex/tm/packages/miktex-fmt-bin-x64-2.9.tar.lzma
@@ -1592,6 +1822,7 @@
2023/04/15 | 76027 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
2023/04/15 | 74694 | systems/win32/miktex/tm/packages/miktex-ps2pk-bin-x64-2.9.tar.lzma
2023/04/15 | 74511 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2023/04/15 | 7356 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua
2023/04/15 | 73295 | systems/win32/miktex/tm/packages/miktex-graphite2-bin-x64-2.9.tar.lzma
2023/04/15 | 73293 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
2023/04/15 | 72982 | systems/win32/miktex/tm/packages/latexindent.tar.lzma
@@ -1610,6 +1841,7 @@
2023/04/15 | 66284 | systems/win32/miktex/tm/packages/siunitx.tar.lzma
2023/04/15 | 661175 | systems/win32/miktex/tm/packages/elteiktdk__doc.tar.lzma
2023/04/15 | 6496042 | systems/win32/miktex/tm/packages/uantwerpendocs.tar.lzma
+2023/04/15 | 648 | macros/context/contrib/context-collatingmarks/README.md
2023/04/15 | 64609 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
2023/04/15 | 64593 | systems/win32/miktex/tm/packages/miktex-tdsutil-bin-x64.tar.lzma
2023/04/15 | 63666 | systems/win32/miktex/tm/packages/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
@@ -1618,6 +1850,7 @@
2023/04/15 | 608246 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
2023/04/15 | 607517 | systems/win32/miktex/tm/packages/miktex-yap-bin-x64-2.9.tar.lzma
2023/04/15 | 60711 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2023/04/15 | 605 | macros/context/contrib/context-calendar-examples/README.md
2023/04/15 | 6032 | systems/win32/miktex/tm/packages/elteikthesis.tar.lzma
2023/04/15 | 601000 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
2023/04/15 | 600941 | systems/win32/miktex/tm/packages/miktex-libressl-bin-x64-2.9.tar.lzma
@@ -1629,6 +1862,7 @@
2023/04/15 | 58488 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
2023/04/15 | 583040 | systems/win32/miktex/tm/packages/nostarch__doc.tar.lzma
2023/04/15 | 5769 | macros/latex/contrib/proflycee/tex/ProfLycee.sty
+2023/04/15 | 5743 | macros/context/contrib/context-collatingmarks/tex/context/third/collating-marks/t-collatingmarks.tex
2023/04/15 | 572 | systems/texlive/tlnet/archive/drawing-with-metapost.r66846.tar.xz
2023/04/15 | 569274 | macros/luatex/generic/evangelion-jfm.zip
2023/04/15 | 56022 | systems/win32/miktex/tm/packages/miktex-mpmcli-bin-x64-2.9.tar.lzma
@@ -1646,6 +1880,8 @@
2023/04/15 | 5262 | systems/win32/miktex/tm/packages/miktex-config-2.9.tar.lzma
2023/04/15 | 52549 | systems/win32/miktex/tm/packages/miktex-m-tx-bin-x64-2.9.tar.lzma
2023/04/15 | 52541 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2023/04/15 | 5216 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex
+2023/04/15 | 51990 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex
2023/04/15 | 505 | macros/luatex/generic/evangelion-jfm/make.sh
2023/04/15 | 500896 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
2023/04/15 | 500443 | systems/win32/miktex/tm/packages/miktex-ptex-bin-x64.tar.lzma
@@ -1706,6 +1942,8 @@
2023/04/15 | 33669 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
2023/04/15 | 33664 | systems/win32/miktex/tm/packages/miktex-makeindex-bin-x64-2.9.tar.lzma
2023/04/15 | 33436 | systems/win32/miktex/tm/packages/pst-func__source.tar.lzma
+2023/04/15 | 3317 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex
+2023/04/15 | 3317 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua
2023/04/15 | 329053 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
2023/04/15 | 328747 | systems/win32/miktex/tm/packages/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
2023/04/15 | 32631 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
@@ -1724,6 +1962,7 @@
2023/04/15 | 305414 | systems/win32/miktex/tm/packages/miktex-freetype2-bin-x64-2.9.tar.lzma
2023/04/15 | 305119 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
2023/04/15 | 2986 | systems/win32/miktex/tm/packages/elteiktdk.tar.lzma
+2023/04/15 | 2966 | macros/context/contrib/context-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md
2023/04/15 | 290302 | systems/win32/miktex/tm/packages/miktex-mo-bin-x64-2.9.tar.lzma
2023/04/15 | 290040 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
2023/04/15 | 28926 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
@@ -1747,6 +1986,8 @@
2023/04/15 | 271487 | systems/win32/miktex/tm/packages/miktex-console-bin-x64-2.9.tar.lzma
2023/04/15 | 27080 | systems/texlive/tlnet/archive/lua-typo.source.r66848.tar.xz
2023/04/15 | 27023 | systems/win32/miktex/tm/packages/bithesis.tar.lzma
+2023/04/15 | 2701 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex
+2023/04/15 | 2650 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md
2023/04/15 | 25456 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
2023/04/15 | 25456 | systems/win32/miktex/tm/packages/miktex-fribidixetex-bin-x64-2.9.tar.lzma
2023/04/15 | 25375 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
@@ -1759,12 +2000,15 @@
2023/04/15 | 243037 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
2023/04/15 | 24014 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
2023/04/15 | 23987 | systems/win32/miktex/tm/packages/miktex-popt-bin-x64-2.9.tar.lzma
+2023/04/15 | 23826 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua
2023/04/15 | 237786 | systems/win32/miktex/tm/packages/citation-style-language__doc.tar.lzma
+2023/04/15 | 235 | macros/context/contrib/context-interval-calendar/README.md
2023/04/15 | 234048 | macros/luatex/generic/evangelion-jfm/Eva-JFM_doc-en.pdf
2023/04/15 | 231486 | systems/win32/miktex/tm/packages/miktex-metafont-bin-x64-2.9.tar.lzma
2023/04/15 | 231266 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
2023/04/15 | 221713 | systems/win32/miktex/tm/packages/luatexja__source.tar.lzma
2023/04/15 | 22168 | systems/win32/miktex/tm/packages/l3packages.tar.lzma
+2023/04/15 | 221130 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf
2023/04/15 | 221129 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2023/04/15 | 221021 | systems/win32/miktex/tm/packages/miktex-curl-bin-x64-2.9.tar.lzma
2023/04/15 | 217700 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
@@ -1788,16 +2032,20 @@
2023/04/15 | 19638 | systems/win32/miktex/tm/packages/miktex-kpathsea-bin-x64-2.9.tar.lzma
2023/04/15 | 194102 | systems/win32/miktex/tm/packages/luatexja.tar.lzma
2023/04/15 | 19322 | macros/luatex/generic/evangelion-jfm/jfm-eva.lua
+2023/04/15 | 1924 | macros/context/contrib/context-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex
2023/04/15 | 1911889 | macros/latex/contrib/proflycee.zip
2023/04/15 | 1904175 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
2023/04/15 | 1903941 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
2023/04/15 | 18964 | graphics/pstricks/contrib/luapstricks/luapstricks-plugin-pstmarble.lua
+2023/04/15 | 1877 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex
+2023/04/15 | 18587 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua
2023/04/15 | 1833509 | systems/win32/miktex/tm/packages/l3packages__doc.tar.lzma
2023/04/15 | 182863 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
2023/04/15 | 182711 | systems/win32/miktex/tm/packages/miktex-mpfr-bin-x64-2.9.tar.lzma
2023/04/15 | 18081 | systems/win32/miktex/tm/packages/simpleicons__source.tar.lzma
2023/04/15 | 174340 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
2023/04/15 | 174318 | systems/win32/miktex/tm/packages/miktex-tex-bin-x64-2.9.tar.lzma
+2023/04/15 | 1679 | macros/context/contrib/context-collatingmarks/doc/context/third/collating-marks/README.md
2023/04/15 | 1668 | systems/texlive/tlnet/archive/collection-mathscience.r66844.tar.xz
2023/04/15 | 1667 | graphics/pstricks/contrib/luapstricks/README.md
2023/04/15 | 1658835 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
@@ -1815,16 +2063,23 @@
2023/04/15 | 140490 | systems/win32/miktex/tm/packages/photobook__doc.tar.lzma
2023/04/15 | 140411 | systems/win32/miktex/tm/packages/miktex-mktex-bin-x64-2.9.tar.lzma
2023/04/15 | 140303 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2023/04/15 | 140294 | macros/context/contrib/context-collatingmarks/doc/context/third/collating-marks/t-collatingmarks-module-doc.pdf
2023/04/15 | 137417 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
2023/04/15 | 137400 | systems/win32/miktex/tm/packages/miktex-dvips-bin-x64-2.9.tar.lzma
2023/04/15 | 13498 | systems/win32/miktex/tm/packages/papermas__source.tar.lzma
2023/04/15 | 134212 | graphics/pstricks/contrib/luapstricks/luapstricks.lua
2023/04/15 | 1341745 | systems/win32/miktex/tm/packages/miktex-poppler-bin-x64-2.9.tar.lzma
2023/04/15 | 1338453 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2023/04/15 | 13090 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex
2023/04/15 | 12967 | systems/win32/miktex/tm/packages/piton.tar.lzma
2023/04/15 | 1280733 | systems/win32/miktex/tm/packages/diffcoeff__doc.tar.lzma
2023/04/15 | 1272857 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma
+2023/04/15 | 12662 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex
2023/04/15 | 125612 | systems/win32/miktex/tm/packages/latexindent__source.tar.lzma
+2023/04/15 | 11 | macros/context/contrib/context-pocketdiary/VERSION
+2023/04/15 | 11 | macros/context/contrib/context-interval-calendar/VERSION
+2023/04/15 | 11 | macros/context/contrib/context-collatingmarks/VERSION
+2023/04/15 | 11 | macros/context/contrib/context-calendar-examples/VERSION
2023/04/15 | 1196500 | systems/win32/miktex/tm/packages/latexindent__doc.tar.lzma
2023/04/15 | 118276 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma
2023/04/15 | 117038 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
@@ -1843,6 +2098,7 @@
2023/04/15 | 1104728 | systems/win32/miktex/tm/packages/bithesis__doc.tar.lzma
2023/04/15 | 109746 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
2023/04/15 | 109734 | systems/win32/miktex/tm/packages/miktex-jpeg-bin-x64-2.9.tar.lzma
+2023/04/15 | 10918 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex
2023/04/15 | 108157 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
2023/04/15 | 108026 | systems/win32/miktex/tm/packages/miktex-mfware-bin-x64-2.9.tar.lzma
2023/04/15 | 1063 | macros/luatex/generic/evangelion-jfm/LICENSE
@@ -1852,10 +2108,12 @@
2023/04/15 | 105619 | systems/win32/miktex/tm/packages/miktex-gd-bin-x64-2.9.tar.lzma
2023/04/15 | 105547 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
2023/04/15 | 10535 | macros/luatex/generic/evangelion-jfm/figure/fig-tc.pdf
+2023/04/15 | 104207 | macros/context/contrib/context-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdf
2023/04/15 | 103848 | systems/win32/miktex/tm/packages/miktex-lua53-bin-x64-2.9.tar.lzma
2023/04/15 | 103804 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
2023/04/15 | 102937 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
2023/04/15 | 102906 | systems/win32/miktex/tm/packages/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2023/04/15 | 1025 | macros/context/contrib/context-pocketdiary/README.md
2023/04/15 | 10077 | macros/luatex/generic/evangelion-jfm/figure/fig-jp.pdf
2023/04/15 | 1002908 | systems/texlive/tlnet/archive/biblatex-gost.doc.r66847.tar.xz
2023/04/15 | 100165 | systems/win32/miktex/tm/packages/miktex-epstopdf-bin-x64-2.9.tar.lzma
@@ -2428,7 +2686,6 @@
2023/04/14 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsFour.tfm
2023/04/14 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsFive.tfm
2023/04/14 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsEight.tfm
-2023/04/14 | 12308 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex
2023/04/14 | 12302 | info/drawing-with-metapost/src/overlaps-missing-filler.pdf
2023/04/14 | 1228 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsTwo.tfm
2023/04/14 | 1228 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsOne.tfm
@@ -2470,7 +2727,6 @@
2023/04/14 | 11073 | info/drawing-with-metapost/src/eggs-moss.pdf
2023/04/14 | 110222 | graphics/pstricks/contrib/pst-func/doc/pst-func-doc.tex
2023/04/14 | 1100 | macros/latex/contrib/biblatex-contrib/biblatex-gost/tex/lbx/british-gost.lbx
-2023/04/14 | 10 | macros/context/contrib/context-calendar-examples/VERSION
2023/04/14 | 1098 | macros/latex/contrib/biblatex-contrib/biblatex-gost/tex/lbx/english-gost.lbx
2023/04/14 | 1093 | info/drawing-with-metapost/src/complex-operators.mp
2023/04/14 | 10934 | info/drawing-with-metapost/src/curves-parabola.pdf
@@ -2492,7 +2748,6 @@
2023/04/14 | 10351 | info/drawing-with-metapost/src/incircle.pdf
2023/04/14 | 1031 | info/drawing-with-metapost/src/rec-h-tree.mp
2023/04/14 | 1028 | info/drawing-with-metapost/src/closed-reuleaux-set.mp
-2023/04/14 | 10288 | macros/context/contrib/context-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex
2023/04/14 | 1027 | info/drawing-with-metapost/src/eggs-pentagons.mp
2023/04/14 | 10225 | info/drawing-with-metapost/src/verbatim-listing.pdf
2023/04/14 | 1005 | info/drawing-with-metapost/src/rec-general-tree.mp
@@ -2672,40 +2927,3 @@
2023/04/13 | 106400 | macros/luatex/latex/lua-typo/doc/lua-typo-fr.pdf
2023/04/13 | 10588 | biblio/citation-style-language/american-chemical-society.csl
2023/04/13 | 103395 | macros/latex/contrib/siunitx/siunitx-unit.dtx
-2023/04/12 | 95058 | macros/latex/contrib/lastpage/lastpage.dtx
-2023/04/12 | 86457 | macros/latex/contrib/papermas/papermas-example.pdf
-2023/04/12 | 8538 | support/TeX4ht/source/mktex4ht-cnf.tex
-2023/04/12 | 833466 | macros/latex/contrib/diffcoeff/diffcoeff.pdf
-2023/04/12 | 72912 | systems/texlive/tlnet/archive/latexindent.r66828.tar.xz
-2023/04/12 | 624141 | support/TeX4ht/source/tex4ht-html4.tex
-2023/04/12 | 614 | biblio/bibtex/bibtex-x/tests/bibtex8.test
-2023/04/12 | 612608 | systems/texlive/tlnet/archive/piton.doc.r66827.tar.xz
-2023/04/12 | 611 | biblio/bibtex/bibtex-x/tests/bibtexu.test
-2023/04/12 | 596346 | install/macros/latex/contrib/lastpage.tds.zip
-2023/04/12 | 578139 | macros/latex/contrib/lastpage.zip
-2023/04/12 | 5246 | macros/latex/contrib/lastpage/README
-2023/04/12 | 49083 | macros/latex/contrib/papermas/papermas.dtx
-2023/04/12 | 4555 | macros/latex/contrib/papermas/README
-2023/04/12 | 444471 | install/macros/latex/contrib/papermas.tds.zip
-2023/04/12 | 440853 | macros/latex/contrib/lastpage/lastpage.pdf
-2023/04/12 | 435394 | macros/latex/contrib/papermas.zip
-2023/04/12 | 36048 | systems/texlive/tlnet/archive/piton.source.r66827.tar.xz
-2023/04/12 | 35841 | macros/latex/contrib/diffcoeff/diffcoeff.sty
-2023/04/12 | 3546372 | systems/texlive/tlnet/archive/latexindent.windows.r66828.tar.xz
-2023/04/12 | 353390 | macros/latex/contrib/papermas/papermas.pdf
-2023/04/12 | 318985 | macros/latex/contrib/cleveref-usedon.zip
-2023/04/12 | 318914 | macros/latex/contrib/cleveref-usedon/cleveref-usedon.pdf
-2023/04/12 | 31596 | systems/texlive/tlnet/archive/photobook.r66826.tar.xz
-2023/04/12 | 2953 | macros/latex/contrib/cleveref-usedon/cleveref-usedon.ins
-2023/04/12 | 2616 | macros/latex/contrib/cleveref-usedon/README.md
-2023/04/12 | 24301 | macros/latex/contrib/cleveref-usedon/cleveref-usedon.dtx
-2023/04/12 | 222037 | support/TeX4ht/source/ChangeLog
-2023/04/12 | 20637 | biblio/bibtex/bibtex-x/ChangeLog
-2023/04/12 | 153572 | systems/texlive/tlnet/archive/photobook.doc.r66826.tar.xz
-2023/04/12 | 148027 | macros/latex/contrib/diffcoeff/diffcoeff.tex
-2023/04/12 | 1466 | macros/latex/contrib/diffcoeff/README.txt
-2023/04/12 | 1451232 | macros/latex/contrib/diffcoeff.zip
-2023/04/12 | 1320052 | systems/texlive/tlnet/archive/latexindent.doc.r66828.tar.xz
-2023/04/12 | 129504 | macros/latex/contrib/lastpage/lastpage-example.pdf
-2023/04/12 | 12760 | systems/texlive/tlnet/archive/piton.r66827.tar.xz
-2023/04/12 | 1158030 | support/TeX4ht/source/tex4ht-4ht.tex
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index 9b3553cc96..5cfc214b71 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 19-04-2023, 02:01:15
+%% created at 20-04-2023, 02:05:10
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -1485,8 +1485,8 @@
title = {The \texttt{algpseudocodex} package},
subtitle = {Package for typesetting pseudocode},
author = {Christian Matt},
- date = {2023-04-16},
- version = {1.1.1},
+ date = {2023-04-19},
+ version = {1.1.2},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/algpseudocodex},
url = {https://ctan.org/pkg/algpseudocodex},
@@ -14622,7 +14622,7 @@
title = {The \texttt{context-calendar-examples} package},
subtitle = {Collection of calendars based on the PocketDiary-module},
author = {Willi Egger},
- date = {2023-04-15},
+ date = {2023-04-19},
version = {},
license = {pd},
mirror = {https://mirror.ctan.org/macros/context/contrib/context-calendar-examples},
@@ -14675,7 +14675,7 @@
title = {The \texttt{context-collatingmarks} package},
subtitle = {Environment to place collating marks on the spine of a section},
author = {Willi Egger},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {pd},
mirror = {https://mirror.ctan.org/macros/context/contrib/context-collatingmarks},
@@ -14827,7 +14827,7 @@
title = {The \texttt{context-interval-calendar} package},
subtitle = {Date driven lists or lists driven by date-intervals},
author = {Willi Egger},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {pd},
mirror = {https://mirror.ctan.org/macros/context/contrib/context-interval-calendar},
@@ -14906,7 +14906,7 @@
title = {The \texttt{context-pocketdiary} package},
subtitle = {A personal organiser},
author = {Willi Egger},
- date = {2023-03-24},
+ date = {2023-04-19},
version = {},
license = {pd},
mirror = {https://mirror.ctan.org/macros/context/contrib/context-pocketdiary},
@@ -23793,7 +23793,7 @@
title = {The \texttt{expl3} package},
subtitle = {Wrapper package for experimental \LaTeX{}3},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel},
@@ -31459,11 +31459,21 @@
url = {https://ctan.org/pkg/hitec},
}
+@manual{ctan-hitex-def,
+ title = {The \texttt{hitex-def} package},
+ subtitle = {Support files for HiTeX},
+ author = {Martin Ruckert},
+ date = {2023-04-19},
+ license = {lppl1.3},
+ mirror = {https://mirror.ctan.org/macros/generic/hitex-def},
+ url = {https://ctan.org/pkg/hitex-def},
+}
+
@manual{ctan-hitex,
title = {The \texttt{hitex} package},
subtitle = {A \TeX{} extension writing HINT output for on-screen reading},
author = {Martin Ruckert},
- date = {2022-06-19},
+ date = {2023-04-19},
license = {x11},
url = {https://ctan.org/pkg/hitex},
}
@@ -36386,7 +36396,7 @@
title = {The \texttt{l3backend} package},
subtitle = {LaTeX3 backend drivers},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3backend},
@@ -36408,7 +36418,7 @@
title = {The \texttt{l3docstrip} package},
subtitle = {Strip documentation in \LaTeX{}3 source},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel},
@@ -36419,7 +36429,7 @@
title = {The \texttt{l3experimental} package},
subtitle = {Experimental \LaTeX{}3 concepts},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3experimental},
@@ -36430,7 +36440,7 @@
title = {The \texttt{l3kernel} package},
subtitle = {LaTeX3 programming conventions},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel},
@@ -36463,7 +36473,7 @@
title = {The \texttt{l3regex} package},
subtitle = {Regular expression facilities for \LaTeX{}},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel/l3regex.dtx},
@@ -47975,8 +47985,8 @@
title = {The \texttt{nicematrix} package},
subtitle = {Improve the typesetting of mathematical matrices with PGF},
author = {François Pantigny},
- date = {2023-03-31},
- version = {6.17},
+ date = {2023-04-19},
+ version = {6.18},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/nicematrix},
url = {https://ctan.org/pkg/nicematrix},
@@ -48979,8 +48989,8 @@
title = {The \texttt{nwafuthesis} package},
subtitle = {A thesis template package for Northwest A\&F University, China},
author = {Nan Geng},
- date = {2022-05-29},
- version = {1.15},
+ date = {2023-04-19},
+ version = {1.25},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/unicodetex/latex/nwafuthesis},
url = {https://ctan.org/pkg/nwafuthesis},
@@ -49844,6 +49854,17 @@
url = {https://ctan.org/pkg/osmanian},
}
+@manual{ctan-oststud,
+ title = {The \texttt{oststud} package},
+ subtitle = {Templates for the student organization at OST FH, Switzerland},
+ author = {Naoki Pross},
+ date = {2023-04-19},
+ version = {0.3},
+ license = {cc-by-sa-4},
+ mirror = {https://mirror.ctan.org/macros/latex/contrib/oststud},
+ url = {https://ctan.org/pkg/oststud},
+}
+
@manual{ctan-oswald,
title = {The \texttt{Oswald} package},
subtitle = {The Oswald family of fonts with support for \LaTeX{} and pdfLaTeX},
@@ -52361,8 +52382,8 @@
title = {The \texttt{photobook} package},
subtitle = {A document class for typesetting photo books},
author = {Alex A. Naanou},
- date = {2023-04-11},
- version = {0.1.18},
+ date = {2023-04-19},
+ version = {0.1.19},
license = {bsd3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/photobook},
url = {https://ctan.org/pkg/photobook},
@@ -52773,8 +52794,8 @@
title = {The \texttt{PixelArtTikz} package},
subtitle = {Work with PixelArts, with TikZ},
author = {Cédric Pierquet},
- date = {2023-01-28},
- version = {0.1.0},
+ date = {2023-04-19},
+ version = {0.1.1},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/pixelarttikz},
url = {https://ctan.org/pkg/pixelarttikz},
@@ -55298,8 +55319,8 @@
title = {The \texttt{pst-eucl} package},
subtitle = {Euclidian geometry with PSTricks},
author = {Dominique Rodriguez and Herbert Voß},
- date = {2020-09-29},
- version = {1.75},
+ date = {2023-04-19},
+ version = {1.77},
license = {lppl},
mirror = {https://mirror.ctan.org/graphics/pstricks/contrib/pst-eucl},
url = {https://ctan.org/pkg/pst-eucl},
@@ -75796,7 +75817,7 @@
title = {The \texttt{xcoffins} package},
subtitle = {Rich boxed material for \LaTeX{} 3},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3experimental},
@@ -76315,7 +76336,7 @@
title = {The \texttt{xgalley} package},
subtitle = {Control text feeding onto the page},
author = {{The \LaTeX{} Project Team}},
- date = {2023-03-30},
+ date = {2023-04-19},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3experimental/xgalley.dtx},
diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf
index 921fb596a6..cf41b4f20d 100644
--- a/biblio/ctan-bibdata/ctan.pdf
+++ b/biblio/ctan-bibdata/ctan.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdf b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdf
index f694421de1..ecfa1dad49 100644
--- a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdf
+++ b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex
index 000fddd55e..6558ad9b6a 100644
--- a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex
+++ b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-en.tex
@@ -3,10 +3,8 @@
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
\documentclass{article}
-\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
-\usepackage[table,svgnames]{xcolor}
\usepackage{amsmath,amssymb}
\usepackage{PixelArtTikz}
\usepackage{fontawesome5}
@@ -45,10 +43,9 @@
\hypersetup{pdfborder=0 0 0}
\usepackage[margin=1.5cm]{geometry}
\setlength{\parindent}{0pt}
-\definecolor{LightGray}{gray}{0.9}
-\def\TPversion{0.1.0}
-\def\TPdate{23/01/2023}
+\def\TPversion{0.1.1}
+\def\TPdate{19/04/2023}
\usepackage[most]{tcolorbox}
\tcbuselibrary{minted}
@@ -65,7 +62,7 @@
minted language=tex,minted options={tabsize=4,fontsize=\footnotesize,autogobble},
#2
}
-
+\usepackage[english]{babel}
\newcommand\Cle[1]{{\bfseries\sffamily\textlangle #1\textrangle}}
\begin{document}
@@ -149,7 +146,7 @@
~~
\PixlArtTikz[Codes=123469,Symbols={A,B,C,D,E,F},Symb,Style=\ttfamily,Unit=0.35]{test1.csv}
~~
-\PixlArtTikz[Codes=123469,Colors={Red,Brown,Yellow,Black,Blue,White},Correction,Unit=0.35]{test1.csv}
+\PixlArtTikz[Codes=123469,Colors={red,brown,yellow,black,blue,white},Correction,Unit=0.35]{test1.csv}
\end{center}
\vspace{0.5cm}
@@ -269,24 +266,38 @@ There's two ways to create PixelArt :
\end{EnvPixlArtTikz}
\end{PresentationCode}
-For the colors, its depending from the loaded packages.
+\section{Colors}
+
+Concerning colors, the user can use the colors loaded by the loaded packages !
\smallskip
-This documentation was compiled with \textsf{xcolor}, with \Cle{[table,svgnames]} options.
-
-%%\section{Petit aparté sur les fichiers csv}
-%%
-%%\textsf{CSV} désigne un format de fichiers dont le rôle est de présenter des données séparées par des virgules. Il s'agit d'une manière simplifiée d'afficher des données afin de les rendre transmissibles d'un programme à un autre.
-%%
-%%\smallskip
-%%
-%%Dans notre cas, le fichier \textsf{csv} contiendra les \textit{codes} qui seront analysés un par un et ligne par ligne pour avoir le rendu par \textit{code}, \textit{symbole} ou \textit{couleur}.
-%%
-%%\medskip
-%%
-%%Il \underline{doit} être préparé avec des caractères (codes) \textit{simples} pour que le code de \textsf{PixelArtTikz} puisse fonctionner.
-%
+Without extra package, avalaibles colors are :
+
+\smallskip
+
+\begin{tblr}{width=\linewidth,colspec={*{10}{X[m,c]}},cells={font=\small\ttfamily}}
+ \SetCell{bg=magenta} magenta &
+ \SetCell{bg=cyan} cyan &
+ \SetCell{bg=blue,fg=white} blue &
+ \SetCell{bg=green} green &
+ \SetCell{bg=red} red &
+ \SetCell{bg=darkgray,fg=white} darkgray &
+ \SetCell{bg=olive,fg=white} olive &
+ \SetCell{bg=lime} lime &
+ \SetCell{bg=brown} brown &
+ \SetCell{bg=lightgray} lightgray \\
+ \SetCell{bg=white} white &
+ \SetCell{bg=gray,fg=white} gray &
+ \SetCell{bg=black,fg=white} black &
+ \SetCell{bg=yellow} yellow &
+ \SetCell{bg=violet,fg=white} violet &
+ \SetCell{bg=teal,fg=white} teal &
+ \SetCell{bg=purple,fg=white} purple &
+ \SetCell{bg=pink} pink &
+ \SetCell{bg=orange} orange & \\
+\end{tblr}
+
\pagebreak
\part{Macros and environment}
@@ -397,9 +408,9 @@ The third argument, \textit{mandatory}, is the filename of the \textsf{csv}.
%empty case with -
\PixlArtTikz[Codes=123469,Style=\ttfamily,Unit=0.35]{test1.csv}
~~
-\PixlArtTikz[Codes=123469,Colors={Red,Brown,Yellow,Black,Blue,White},Correction,Unit=0.35]{test1.csv}
+\PixlArtTikz[Codes=123469,Colors={red,brown,yellow,black,blue,white},Correction,Unit=0.35]{test1.csv}
~~
-\PixlArtTikz[Codes=123469,Colors={Red,Brown,Yellow,Black,Blue,White},Correction,Unit=0.35,Border=false]{test1.csv}
+\PixlArtTikz[Codes=123469,Colors={red,brown,yellow,black,blue,white},Correction,Unit=0.35,Border=false]{test1.csv}
\end{PresentationCode}
\pagebreak
@@ -436,7 +447,7 @@ In the following example, les \textit{symbols} to print can't be used for the \t
\PixlArtTikz[Codes=ABCDFJ,Symbols={1,2,3,4,6,10},Symb,Style=\tiny\sffamily,Unit=0.35]{cap.csv}
~~
-\PixlArtTikz[Codes=ABCDFJ,Colors={Red,Brown,Yellow,Black,Blue,Gray},Correction,Unit=0.35]{cap.csv}
+\PixlArtTikz[Codes=ABCDFJ,Colors={red,brown,yellow,black,blue,gray},Correction,Unit=0.35]{cap.csv}
\end{PresentationCode}
\pagebreak
@@ -464,11 +475,11 @@ In this case :
\foreach \y in {0,-1,...,-24} \draw[very thin,gray] (3pt,\y)--(-3pt,\y)%
node[left,font=\scriptsize\sffamily] {\y} ;
%le PixelArt
- \PixlArtTikz*[Codes=123469,Colors={Red,Brown,Yellow,Black,Blue,White},Correction]{test1.csv}
+ \PixlArtTikz*[Codes=123469,Colors={red,brown,yellow,black,blue,white},Correction]{test1.csv}
%added code
- \filldraw[Blue] (14,-1) circle[radius=1] ;
- \filldraw[Yellow] (14,-1) circle[radius=0.8] ;
- \draw[ForestGreen,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
+ \filldraw[blue] (14,-1) circle[radius=1] ;
+ \filldraw[yellow] (14,-1) circle[radius=0.8] ;
+ \draw[green,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
node[right,font=\scriptsize\sffamily] {Code Ti\textit{k}Z} ;
\end{tikzpicture}
\end{center}
@@ -518,11 +529,11 @@ The symbols are at the nodes $(c\,;\,-l)$ where $l$ and $c$ are the row and colu
\begin{PresentationCode}{}
\begin{center}
\begin{EnvPixlArtTikz}%
- [Codes=123469,Colors={Red,Brown,Yellow,Black,Blue,White},Correction,Unit=0.25]
+ [Codes=123469,Colors={red,brown,yellow,black,blue,white},Correction,Unit=0.25]
{test1.csv}
- \filldraw[Blue] (14,-1) circle[radius=1] ;
- \filldraw[Yellow] (14,-1) circle[radius=0.8] ;
- \draw[ForestGreen,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
+ \filldraw[blue] (14,-1) circle[radius=1] ;
+ \filldraw[yellow] (14,-1) circle[radius=0.8] ;
+ \draw[green,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
node[right,font=\scriptsize\sffamily] {Ti\textit{k}Z code} ;
\end{EnvPixlArtTikz}
\end{center}
@@ -532,6 +543,8 @@ The symbols are at the nodes $(c\,;\,-l)$ where $l$ and $c$ are the row and colu
\part{Historique}
+\verb|v0.1.1|~:~~~~Bugfix with color
+
\verb|v0.1.0|~:~~~~Initial version
\end{document} \ No newline at end of file
diff --git a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdf b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdf
index 8865790e6d..b70f460265 100644
--- a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdf
+++ b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex
index fec2cca271..b65adfa8e5 100644
--- a/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex
+++ b/graphics/pgf/contrib/pixelarttikz/doc/PixelArtTikz-doc-fr.tex
@@ -3,10 +3,9 @@
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
\documentclass{article}
-\usepackage[french]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
-\usepackage[table,svgnames]{xcolor}
+%\usepackage[table,svgnames]{xcolor}
\usepackage{amsmath,amssymb}
\usepackage{PixelArtTikz}
\usepackage{fontawesome5}
@@ -21,7 +20,6 @@
\cfoot{\sffamily\small - \thepage{} -}
\rfoot{\hyperlink{matoc}{\small\faArrowAltCircleUp[regular]}}
-%\usepackage{hvlogos}
\usepackage{hologo}
\providecommand\tikzlogo{Ti\textit{k}Z}
\providecommand\TeXLive{\TeX{}Live\xspace}
@@ -44,10 +42,9 @@
\hypersetup{pdfborder=0 0 0}
\usepackage[margin=1.5cm]{geometry}
\setlength{\parindent}{0pt}
-\definecolor{LightGray}{gray}{0.9}
-\def\TPversion{0.1.0}
-\def\TPdate{23 Janvier 2023}
+\def\TPversion{0.1.1}
+\def\TPdate{19 avril 2023}
\usepackage[most]{tcolorbox}
\tcbuselibrary{minted}
@@ -65,6 +62,8 @@
#2
}
+\usepackage[french]{babel}
+
\newcommand\Cle[1]{{\bfseries\sffamily\textlangle #1\textrangle}}
\begin{document}
@@ -148,7 +147,7 @@
~~
\PixelArtTikz[Codes=123469,Symboles={A,B,C,D,E,F},Symb,Style=\ttfamily,Unite=0.35]{test1.csv}
~~
-\PixelArtTikz[Codes=123469,Couleurs={Red,Brown,Yellow,Black,Blue,White},Correction,Unite=0.35]{test1.csv}
+\PixelArtTikz[Codes=123469,Couleurs={red,brown,yellow,black,blue,white},Correction,Unite=0.35]{test1.csv}
\end{center}
\vspace{0.5cm}
@@ -270,11 +269,41 @@ Il existe deux manières de représenter un PixelArt :
\end{EnvPixelArtTikz}
\end{PresentationCode}
+\section{Les couleurs}
+
Concernant les couleurs, l'utilisateur utilisera celles disponibles avec les packages chargés.
+%\smallskip
+
+%La présente documentation a été compilée avec le package \textsf{xcolor}, chargé avec les options \Cle{[table,svgnames]}.
+
\smallskip
-La présente documentation a été compilée avec le package \textsf{xcolor}, chargé avec les options \Cle{[table,svgnames]}.
+Les couleurs disponibles sans autre package sont donc :
+
+\smallskip
+
+\begin{tblr}{width=\linewidth,colspec={*{10}{X[m,c]}},cells={font=\small\ttfamily}}
+ \SetCell{bg=magenta} magenta &
+ \SetCell{bg=cyan} cyan &
+ \SetCell{bg=blue,fg=white} blue &
+ \SetCell{bg=green} green &
+ \SetCell{bg=red} red &
+ \SetCell{bg=darkgray,fg=white} darkgray &
+ \SetCell{bg=olive,fg=white} olive &
+ \SetCell{bg=lime} lime &
+ \SetCell{bg=brown} brown &
+ \SetCell{bg=lightgray} lightgray \\
+ \SetCell{bg=white} white &
+ \SetCell{bg=gray,fg=white} gray &
+ \SetCell{bg=black,fg=white} black &
+ \SetCell{bg=yellow} yellow &
+ \SetCell{bg=violet,fg=white} violet &
+ \SetCell{bg=teal,fg=white} teal &
+ \SetCell{bg=purple,fg=white} purple &
+ \SetCell{bg=pink} pink &
+ \SetCell{bg=orange} orange & \\
+\end{tblr}
\section{Petit aparté sur les fichiers csv}
@@ -401,9 +430,9 @@ On rappelle que le fichier peut être créé au préalable, et placé dans le r
%une case vide sera codée par -
\PixelArtTikz[Codes=123469,Style=\ttfamily,Unite=0.35]{test1.csv}
~~
-\PixelArtTikz[Codes=123469,Couleurs={Red,Brown,Yellow,Black,Blue,White},Correction,Unite=0.35]{test1.csv}
+\PixelArtTikz[Codes=123469,Couleurs={red,brown,yellow,black,blue,white},Correction,Unite=0.35]{test1.csv}
~~
-\PixelArtTikz[Codes=123469,Couleurs={Red,Brown,Yellow,Black,Blue,White},Correction,Unite=0.35,BordCases=false]%
+\PixelArtTikz[Codes=123469,Couleurs={red,brown,yellow,black,blue,white},Correction,Unite=0.35,BordCases=false]%
{test1.csv}
\end{PresentationCode}
@@ -441,7 +470,7 @@ Dans l'exemple suivant, les \textit{symboles} à afficher ne peuvent pas servir
\PixelArtTikz[Codes=ABCDFJ,Symboles={1,2,3,4,6,10},Symb,Style=\tiny\sffamily,Unite=0.35]{cap.csv}
~~
-\PixelArtTikz[Codes=ABCDFJ,Couleurs={Red,Brown,Yellow,Black,Blue,Gray},Correction,Unite=0.35]{cap.csv}
+\PixelArtTikz[Codes=ABCDFJ,Couleurs={red,brown,yellow,black,blue,gray},Correction,Unite=0.35]{cap.csv}
\end{PresentationCode}
\pagebreak
@@ -469,11 +498,11 @@ Il est à noter que, dans ce cas :
\foreach \y in {0,-1,...,-24} \draw[very thin,gray] (3pt,\y)--(-3pt,\y)%
node[left,font=\scriptsize\sffamily] {\y} ;
%le PixelArt
- \PixelArtTikz*[Codes=123469,Couleurs={Red,Brown,Yellow,Black,Blue,White},Correction]{test1.csv}
+ \PixelArtTikz*[Codes=123469,Couleurs={red,brown,yellow,black,blue,white},Correction]{test1.csv}
%du code rajouté
- \filldraw[Blue] (14,-1) circle[radius=1] ;
- \filldraw[Yellow] (14,-1) circle[radius=0.8] ;
- \draw[ForestGreen,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
+ \filldraw[blue] (14,-1) circle[radius=1] ;
+ \filldraw[yellow] (14,-1) circle[radius=0.8] ;
+ \draw[green,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
node[right,font=\scriptsize\sffamily] {rajouté en Ti\textit{k}Z} ;
\end{tikzpicture}
\end{center}
@@ -525,11 +554,11 @@ Les symboles affichés dans les cases sont situés aux nœuds de coordonnées $(
\begin{PresentationCode}{}
\begin{center}
\begin{EnvPixelArtTikz}%
- [Codes=123469,Couleurs={Red,Brown,Yellow,Black,Blue,White},Correction,Unite=0.25]
+ [Codes=123469,Couleurs={red,brown,yellow,black,blue,white},Correction,Unite=0.25]
{test1.csv}
- \filldraw[Blue] (14,-1) circle[radius=1] ;
- \filldraw[Yellow] (14,-1) circle[radius=0.8] ;
- \draw[ForestGreen,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
+ \filldraw[blue] (14,-1) circle[radius=1] ;
+ \filldraw[yellow] (14,-1) circle[radius=0.8] ;
+ \draw[green,very thick,<-,>=latex] (15,-1) to[bend left=30] (18,-2)%
node[right,font=\scriptsize\sffamily] {rajouté en Ti\textit{k}Z} ;
\end{EnvPixelArtTikz}
\end{center}
@@ -539,6 +568,8 @@ Les symboles affichés dans les cases sont situés aux nœuds de coordonnées $(
\part{Historique}
+\verb|v0.1.1|~:~~~~Correction d'un bug avec les couleurs
+
\verb|v0.1.0|~:~~~~Version initiale
\end{document} \ No newline at end of file
diff --git a/graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty b/graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty
index e5f9e9ccb8..e56b33d479 100644
--- a/graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty
+++ b/graphics/pgf/contrib/pixelarttikz/tex/PixelArtTikz.sty
@@ -2,7 +2,8 @@
% licence........: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{PixelArtTikz}[2023/01/25 v0.1.0 PixelArts with csv and TikZ]
+\ProvidesPackage{PixelArtTikz}[2023/09/04 v0.1.1 PixelArts with csv and TikZ]
+% 0.1.1 Small bugfix with color
% 0.1.0 Version initiale
%------Option(s)
diff --git a/macros/generic/hitex-def/hhitex.def b/macros/generic/hitex-def/hhitex.def
new file mode 100644
index 0000000000..671d796a07
--- /dev/null
+++ b/macros/generic/hitex-def/hhitex.def
@@ -0,0 +1,343 @@
+%%% Preliminary Draft for testing
+%%
+%% This is file `hhitex.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx (with options: `pdftex,pdfform,outlines')
+%%
+%% Copyright
+%% 1995-2001 Sebastian Rahtz, with portions written by David Carlisle and Heiko Oberdiek,
+%% 2001-2015 Heiko Oberdiek.
+%% 2016-2019 Oberdiek Package Support Group
+%% 2019-2022 LaTeX Project
+%% https://github.com/latex3/hyperref/issues
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is the LaTeX Project.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+%% File: hyperref.dtx
+\ProvidesFile{hhitex.def}
+ [2022-09-22 v7.00t %
+ Hyperref driver for hiTeX]
+
+\chardef\Hy@VersionChecked=1 % prevent hyperref from checking the version.
+
+\ifHy@pdfpagelabels
+ \def\HyPL@StorePageLabel#1{%
+ \toks@\expandafter{\HyPL@Labels}%
+ \xdef\HyPL@Labels{%
+ \the\toks@
+ \the\Hy@abspage<<#1>>%
+ }%
+ }%
+% \RequirePackage{atveryend}[2009/12/07]%
+% \AtVeryEndDocument{%
+% \HyPL@SetPageLabels
+% }%
+\fi
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname pdf@escapestring\endcsname\relax
+ \begingroup
+ \catcode`\|=0 %
+ \@makeother\\%
+ |@firstofone{|endgroup
+ |def|Hy@pstringdef#1#2{%
+ |begingroup
+ |edef~{|string~}%
+ |xdef|Hy@gtemp{#2}%
+ |endgroup
+ |let#1|Hy@gtemp
+ |@onelevel@sanitize#1%
+ |edef#1{|expandafter|Hy@ExchangeBackslash#1\|@nil}%
+ |edef#1{|expandafter|Hy@ExchangeLeftParenthesis#1(|@nil}%
+ |edef#1{|expandafter|Hy@ExchangeRightParenthesis#1)|@nil}%
+ }%
+ |def|Hy@ExchangeBackslash#1\#2|@nil{%
+ #1%
+ |ifx|\#2|\%%
+ |else
+ \\%
+ |ltx@ReturnAfterFi{%
+ |Hy@ExchangeBackslash#2|@nil
+ }%
+ |fi
+ }%
+ }%
+ \def\Hy@ExchangeLeftParenthesis#1(#2\@nil{%
+ #1%
+ \ifx\\#2\\%
+ \else
+ \@backslashchar(%
+ \ltx@ReturnAfterFi{%
+ \Hy@ExchangeLeftParenthesis#2\@nil
+ }%
+ \fi
+ }%
+ \def\Hy@ExchangeRightParenthesis#1)#2\@nil{%
+ #1%
+ \ifx\\#2\\%
+ \else
+ \@backslashchar)%
+ \ltx@ReturnAfterFi{%
+ \Hy@ExchangeRightParenthesis#2\@nil
+ }%
+ \fi
+ }%
+\else
+ \def\Hy@pstringdef#1#2{%
+ \begingroup
+ \edef~{\string~}%
+ \xdef\Hy@gtemp{\pdf@escapestring{#2}}%
+ \endgroup
+ \let#1\Hy@gtemp
+ }%
+\fi
+\providecommand*{\XR@ext}{pdf}
+\Hy@setbreaklinks{true}
+\def\HyPat@ObjRef{%
+ [0-9]*[1-9][0-9]* 0 R%
+}
+
+\def\setpdflinkmargin#1{}%????
+\def\Hy@PutCatalog{}
+\Hy@WrapperDef\new@pdflink#1{%
+ \ifhmode
+ \@savsf\spacefactor
+ \fi
+ \Hy@SaveLastskip
+ \Hy@VerboseAnchor{#1}%
+ \Hy@pstringdef\Hy@pstringDest{\HyperDestNameFilter{#1}}%
+ \Hy@DestName\Hy@pstringDest\@pdfview
+ \Hy@RestoreLastskip
+ \ifhmode
+ \spacefactor\@savsf
+ \fi
+}
+\let\pdf@endanchor\@empty
+\def\Hy@DestName#1#2{%
+ \HINTdest name {#1}\relax
+}
+\providecommand*\@pdfborder{0 0 1}
+\providecommand*\@pdfborderstyle{}
+\def\Hy@undefinedname{UNDEFINED}
+\def\find@pdflink#1#2{%
+ \leavevmode
+ \protected@edef\Hy@testname{#2}%
+ \ifx\Hy@testname\@empty
+ \Hy@Warning{%
+ Empty destination name,\MessageBreak
+ using `\Hy@undefinedname'%
+ }%
+ \let\Hy@testname\Hy@undefinedname
+ \else
+ \Hy@pstringdef\Hy@testname{%
+ \expandafter\HyperDestNameFilter\expandafter{\Hy@testname}%
+ }%
+ \fi
+ \Hy@StartlinkName{%
+ %\ifHy@pdfa /F 4\fi
+% \Hy@setpdfborder
+% \Hy@setpdfhighlight
+% \ifx\CurrentBorderColor\relax
+% \else
+% /C[\CurrentBorderColor]%
+% \fi
+ }\Hy@testname
+ \expandafter\Hy@colorlink\csname @#1color\endcsname
+}
+\def\Hy@StartlinkName#1#2{%
+ \HINTstartlink goto name{#2}\relax
+}
+\def\close@pdflink{%
+ \Hy@endcolorlink
+ \Hy@VerboseLinkStop
+ \HINTendlink
+}
+\def\hyper@anchor#1{%
+ \new@pdflink{#1}\anchor@spot\pdf@endanchor
+}
+\def\hyper@anchorstart#1{%
+ \new@pdflink{#1}%
+ \Hy@activeanchortrue
+}
+\def\hyper@anchorend{%
+ \pdf@endanchor
+ \Hy@activeanchorfalse
+}
+\def\hyper@linkstart#1#2{%
+ \Hy@VerboseLinkStart{#1}{#2}%
+ \ltx@IfUndefined{@#1bordercolor}{%
+ \let\CurrentBorderColor\relax
+ }{%
+ \edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
+ }%
+ \find@pdflink{#1}{#2}%
+}
+\def\hyper@linkend{\close@pdflink}
+\def\hyper@link#1#2#3{%
+ \Hy@VerboseLinkStart{#1}{#2}%
+ \ltx@IfUndefined{@#1bordercolor}{%
+ \let\CurrentBorderColor\relax
+ }{%
+ \edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
+ }%
+ \find@pdflink{#1}{#2}#3\Hy@xspace@end
+ \close@pdflink
+}
+\let\CurrentBorderColor\@linkbordercolor
+\def\hyper@linkurl#1#2{}%
+\def\hyper@linkfile#1#2#3{}% anchor text, filename, linkname
+\def\@hyper@launch run:#1\\#2#3{}% filename, anchor text linkname
+\def\PDF@SetupDoc{}
+\def\PDF@FinishDoc{}%
+
+
+\def\Hy@writebookmark#1#2#3#4#5{%
+ % section number, text, label, level, file
+ \ifx\WriteBookmarks\relax%
+ \else
+ \HINToutline goto name{#3} depth #4 {#2}%
+ \fi
+}
+\def\Hy@currentbookmarklevel{0}
+\def\Hy@numberline#1{#1 }
+\def\Hy@OutlineRerunCheck{}
+\def\ReadBookmarks{}
+\def\Hy@OutlineName#1#2#3#4{}
+\ifHy@implicit
+\else
+ \expandafter\endinput
+\fi
+\newlength\Hy@SectionHShift
+\def\Hy@SectionAnchorHref#1{%
+ \ifx\protect\@typeset@protect
+ \Hy@@SectionAnchor{#1}%
+ \fi
+}
+\DeclareRobustCommand*{\Hy@@SectionAnchor}[1]{%
+ \leavevmode
+ \hbox to 0pt{%
+ \kern-\Hy@SectionHShift
+ \Hy@raisedlink{%
+ \hyper@anchorstart{#1}\hyper@anchorend
+ }%
+ \hss
+ }%
+}
+\@ifundefined{hyper@nopatch@sectioning}
+{
+\let\H@old@ssect\@ssect
+\def\@ssect#1#2#3#4#5{%
+ \Hy@MakeCurrentHrefAuto{section*}%
+ \setlength{\Hy@SectionHShift}{#1}%
+ \begingroup
+ \toks@{\H@old@ssect{#1}{#2}{#3}{#4}}%
+ \toks\tw@\expandafter{%
+ \expandafter\Hy@SectionAnchorHref\expandafter{\@currentHref}%
+ #5%
+ }%
+ \edef\x{\endgroup
+ \the\toks@{\the\toks\tw@}%
+ }\x
+}
+\let\H@old@schapter\@schapter
+\def\@schapter#1{%
+ \begingroup
+ \let\@mkboth\@gobbletwo
+ \Hy@MakeCurrentHrefAuto{\Hy@chapapp*}%
+ \Hy@raisedlink{%
+ \hyper@anchorstart{\@currentHref}\hyper@anchorend
+ }%
+ \endgroup
+ \H@old@schapter{#1}%
+}
+\ltx@IfUndefined{@chapter}{}{%
+ \let\Hy@org@chapter\@chapter
+ \def\@chapter{%
+ \def\Hy@next{%
+ \Hy@MakeCurrentHrefAuto{\Hy@chapapp*}%
+ \Hy@raisedlink{%
+ \hyper@anchorstart{\@currentHref}\hyper@anchorend
+ }%
+ }%
+ \ifnum\c@secnumdepth>\m@ne
+ \ltx@IfUndefined{if@mainmatter}%
+ \iftrue{\csname if@mainmatter\endcsname}%
+ \let\Hy@next\relax
+ \fi
+ \fi
+ \Hy@next
+ \Hy@org@chapter
+ }%
+}
+\let\H@old@part\@part
+\@ifundefined{chapter}
+ {\let\Hy@secnum@part\z@}
+ {\let\Hy@secnum@part\m@ne}
+\def\@part{%
+ \ifnum\Hy@secnum@part>\c@secnumdepth
+ \phantomsection
+ \fi
+ \H@old@part
+}
+\let\H@old@spart\@spart
+\def\@spart#1{%
+ \Hy@MakeCurrentHrefAuto{part*}%
+ \Hy@raisedlink{%
+ \hyper@anchorstart{\@currentHref}\hyper@anchorend
+ }%
+ \H@old@spart{#1}%
+}
+\let\H@old@sect\@sect
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \ifnum #2>\c@secnumdepth
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {%
+ \Hy@MakeCurrentHrefAuto{section*}%
+ \setlength{\Hy@SectionHShift}{#3}%
+ \begingroup
+ \toks@{\H@old@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]}%
+ \toks\tw@\expandafter{%
+ \expandafter\Hy@SectionAnchorHref\expandafter{\@currentHref}%
+ #8%
+ }%
+ \edef\x{\endgroup
+ \the\toks@{\the\toks\tw@}%
+ }\x
+ }{%
+ \H@old@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{#8}%
+ }%
+}
+}{}
+\expandafter\def\csname Parent-4\endcsname{}
+\expandafter\def\csname Parent-3\endcsname{}
+\expandafter\def\csname Parent-2\endcsname{}
+\expandafter\def\csname Parent-1\endcsname{}
+\expandafter\def\csname Parent0\endcsname{}
+\expandafter\def\csname Parent1\endcsname{}
+\expandafter\def\csname Parent2\endcsname{}
+\expandafter\def\csname Parent3\endcsname{}
+\expandafter\def\csname Parent4\endcsname{}
+\endinput
+%%
+%% End of file `hpdftex.def'.
diff --git a/macros/generic/hitex-def/hilatex.ini b/macros/generic/hitex-def/hilatex.ini
new file mode 100644
index 0000000000..af79c0ea02
--- /dev/null
+++ b/macros/generic/hitex-def/hilatex.ini
@@ -0,0 +1,9 @@
+% Karl Berry, 2022. Public domain.
+\scrollmode
+\let\dumpprimitiveforhilatex\dump % regain control after latex.ltx
+\let\dump\relax
+\input latex.ltx
+\input ifhint.tex
+\input hiltxpage.tex
+\dumpprimitiveforhilatex
+\endinput
diff --git a/macros/generic/hitex-def/hiltxpage.tex b/macros/generic/hitex-def/hiltxpage.tex
new file mode 100644
index 0000000000..c499b9d94b
--- /dev/null
+++ b/macros/generic/hitex-def/hiltxpage.tex
@@ -0,0 +1,76 @@
+% Copyright 2017-2022 Martin Ruckert, Hochschule Muenchen, Lothstrasse 64, 80336 Muenchen
+%
+% Permission is hereby granted, free of charge, to any person obtaining a copy
+% of this software and associated documentation files (the "Software"), to deal
+% in the Software without restriction, including without limitation the rights
+% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+% copies of the Software, and to permit persons to whom the Software is
+% furnished to do so, subject to the following conditions:
+%
+% The above copyright notice and this permission notice shall be
+% included in all copies or substantial portions of the Software.
+%
+% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+% COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+% WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT
+% OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+% THE SOFTWARE.
+%
+% Except as contained in this notice, the name of the copyright holders shall
+% not be used in advertising or otherwise to promote the sale, use or other
+% dealings in this Software without prior written authorization from the
+% copyright holders.
+
+\ifhint
+% Usefull settings for HINT files
+\pretolerance=1000
+\tolerance=2000
+\emergencystretch=16pt
+\overfullrule=0pt
+\textwidth=\hsize
+\textheight=\vsize
+% HINT page template for footnotes and topinserts
+\newinsert\topins
+\skip\topins=0pt % no space added when a topinsert is present
+\count\topins=1000 % magnification factor (1 to 1)
+\dimen\topins=\maxdimen % no limit per page
+\def\topinsert{\bgroup\setbox0\vbox\bgroup}
+\def\endinsert{\egroup
+ \insert\topins{%
+ \penalty100\splittopskip0pt\floatingpenalty0\box0\nobreak\bigskip\egroup}}
+\dimen0=1.25\hsize
+\advance\dimen0 by -9pt
+\dimen1=1.25\vsize
+\advance\dimen1 by -9pt
+\HINTsetpage1 = basic
+ priority 10
+ width \dimen0
+ height \dimen1
+{%
+ \maxdepth=4pt
+ \topskip=10pt
+ \HINTstream\topins %topinsert
+ \HINTstream0 %main text
+ \HINTstream\footins
+ \HINTsetstream\topins = %topinsert
+ preferred 0
+ {%
+ \HINTafter = {}
+ }
+ \HINTsetstream\footins =%footnotes
+ preferred 255
+ ratio 0
+ {%
+ \hsize=300pt
+ \count\footins=1000 % the magnification factor
+ \skip\footins=\bigskipamount % the extra space needed
+ \dimen\footins=\vsize % maximum height on the page
+ \HINTbefore =
+ {\vskip\skip\footins
+ \footnoterule}
+ \HINTafter = {}
+ }
+}% end page template
+\fi
diff --git a/macros/generic/hitex-def/hiplainpage.tex b/macros/generic/hitex-def/hiplainpage.tex
new file mode 100644
index 0000000000..4570af23dd
--- /dev/null
+++ b/macros/generic/hitex-def/hiplainpage.tex
@@ -0,0 +1,66 @@
+% Copyright 2017-2022 Martin Ruckert, Hochschule Muenchen, Lothstrasse 64, 80336 Muenchen
+%
+% Permission is hereby granted, free of charge, to any person obtaining a copy
+% of this software and associated documentation files (the "Software"), to deal
+% in the Software without restriction, including without limitation the rights
+% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+% copies of the Software, and to permit persons to whom the Software is
+% furnished to do so, subject to the following conditions:
+%
+% The above copyright notice and this permission notice shall be
+% included in all copies or substantial portions of the Software.
+%
+% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+% COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+% WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT
+% OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+% THE SOFTWARE.
+%
+% Except as contained in this notice, the name of the copyright holders shall
+% not be used in advertising or otherwise to promote the sale, use or other
+% dealings in this Software without prior written authorization from the
+% copyright holders.
+
+\ifhint
+% Usefull settings for HINT files
+ \pretolerance=1000
+ \tolerance=2000
+ \emergencystretch=16pt
+ \overfullrule=0pt
+% HINT page template for footnotes and topinserts
+ \dimen0=1.25\hsize
+ \advance\dimen0 by -9pt
+ \dimen1=1.25\vsize
+ \advance\dimen1 by -9pt
+\HINTsetpage1 = basic
+ priority 10
+ width \dimen0
+ height \dimen1
+{%
+ \maxdepth=4pt
+ \topskip=10pt
+ \HINTstream\topins %topinsert
+ \HINTstream0 %main text
+ \HINTstream\footins
+ \HINTsetstream\topins = %topinsert
+ preferred 0
+ {%
+ \HINTafter = {}
+ }
+ \HINTsetstream\footins =%footnotes
+ preferred 255
+ ratio 0
+ {%
+ \hsize=300pt
+ \count\footins=1000 % the magnification factor
+ \skip\footins=\bigskipamount % the extra space needed
+ \dimen\footins=\vsize % maximum height on the page
+ \HINTbefore =
+ {\vskip\skip\footins
+ \footnoterule}
+ \HINTafter = {}
+ }
+}% end page template
+\fi
diff --git a/macros/generic/hitex-def/hitex.ini b/macros/generic/hitex-def/hitex.ini
new file mode 100644
index 0000000000..206e378007
--- /dev/null
+++ b/macros/generic/hitex-def/hitex.ini
@@ -0,0 +1,7 @@
+% Karl Berry, 2022. Public domain.
+%\input plain.tex
+\input etex.src
+\input ifhint.tex
+\input hiplainpage.tex
+\dump
+\endinput
diff --git a/macros/generic/hitex-def/ifhint.tex b/macros/generic/hitex-def/ifhint.tex
new file mode 100644
index 0000000000..b27ed85919
--- /dev/null
+++ b/macros/generic/hitex-def/ifhint.tex
@@ -0,0 +1,9 @@
+% Public domain. Originally written by Martin Ruckert.
+
+\newif\ifhint
+% How to test for the HiTeX engine
+\expandafter\ifx\csname HINTversion\endcsname\relax
+ \hintfalse
+\else
+ \hinttrue
+\fi
diff --git a/macros/latex/contrib/l3backend/CHANGELOG.md b/macros/latex/contrib/l3backend/CHANGELOG.md
index 82228400e2..5877ce53d3 100644
--- a/macros/latex/contrib/l3backend/CHANGELOG.md
+++ b/macros/latex/contrib/l3backend/CHANGELOG.md
@@ -6,11 +6,19 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2023-04-19]
+
+### Changed
+- Pass additional attributes when loading graphics in PDF mode
+
+### Fixed
+- Remove a stray `>` from graphics inclusion code for `dvipdfmx`
+
## [2023-03-30]
### Changed
-- Integrate l3color and l3opacity with luaotfload to ensure that
- opacity specifications don't conflict.
+- Integrate `l3color` and `l3opacity` with `luaotfload` to ensure that
+ opacity specifications don't conflict
## [2023-01-16]
@@ -288,7 +296,8 @@ this project uses date-based 'snapshot' version identifiers.
- Include `l3backend` in file names
- Moved backend code to internal for each 'parent' module
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-03-30...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-04-19...HEAD
+[2023-04-19]: https://github.com/latex3/latex3/compare/2023-03-30...2023-04-19
[2023-03-30]: https://github.com/latex3/latex3/compare/2023-01-16...2023-03-30
[2023-01-16]: https://github.com/latex3/latex3/compare/2022-10-26...2023-01-16
[2022-10-26]: https://github.com/latex3/latex3/compare/2022-09-28...2022-10-26
diff --git a/macros/latex/contrib/l3backend/README.md b/macros/latex/contrib/l3backend/README.md
index 02fab16f9f..0aa2b14b5f 100644
--- a/macros/latex/contrib/l3backend/README.md
+++ b/macros/latex/contrib/l3backend/README.md
@@ -1,7 +1,7 @@
LaTeX3 Backend Drivers
======================
-Release 2023-03-30
+Release 2023-04-19
This package forms parts of `expl3`, and contains the code used to interface
with backends (drivers) across the `expl3` codebase. The functions here are
diff --git a/macros/latex/contrib/l3backend/l3backend-basics.dtx b/macros/latex/contrib/l3backend/l3backend-basics.dtx
index 1f821aff25..cf4ad444ba 100644
--- a/macros/latex/contrib/l3backend/l3backend-basics.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-basics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -70,27 +70,27 @@
% \begin{macrocode}
\ProvidesExplFile
%<*dvipdfmx>
- {l3backend-dvipdfmx.def}{2023-03-30}{}
+ {l3backend-dvipdfmx.def}{2023-04-19}{}
{L3 backend support: dvipdfmx}
%</dvipdfmx>
%<*dvips>
- {l3backend-dvips.def}{2023-03-30}{}
+ {l3backend-dvips.def}{2023-04-19}{}
{L3 backend support: dvips}
%</dvips>
%<*dvisvgm>
- {l3backend-dvisvgm.def}{2023-03-30}{}
+ {l3backend-dvisvgm.def}{2023-04-19}{}
{L3 backend support: dvisvgm}
%</dvisvgm>
%<*luatex>
- {l3backend-luatex.def}{2023-03-30}{}
+ {l3backend-luatex.def}{2023-04-19}{}
{L3 backend support: PDF output (LuaTeX)}
%</luatex>
%<*pdftex>
- {l3backend-pdftex.def}{2023-03-30}{}
+ {l3backend-pdftex.def}{2023-04-19}{}
{L3 backend support: PDF output (pdfTeX)}
%</pdftex>
%<*xetex>
- {l3backend-xetex.def}{2023-03-30}{}
+ {l3backend-xetex.def}{2023-04-19}{}
{L3 backend support: XeTeX}
%</xetex>
% \end{macrocode}
diff --git a/macros/latex/contrib/l3backend/l3backend-box.dtx b/macros/latex/contrib/l3backend/l3backend-box.dtx
index ae7e2281fc..6d8d4ede02 100644
--- a/macros/latex/contrib/l3backend/l3backend-box.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-box.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-code.pdf b/macros/latex/contrib/l3backend/l3backend-code.pdf
index 1ce7f2d3a8..6f9ea9a52e 100644
--- a/macros/latex/contrib/l3backend/l3backend-code.pdf
+++ b/macros/latex/contrib/l3backend/l3backend-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3backend/l3backend-color.dtx b/macros/latex/contrib/l3backend/l3backend-color.dtx
index 786282333e..5049aae5f9 100644
--- a/macros/latex/contrib/l3backend/l3backend-color.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-color.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-draw.dtx b/macros/latex/contrib/l3backend/l3backend-draw.dtx
index 6577bc3008..170f4090cd 100644
--- a/macros/latex/contrib/l3backend/l3backend-draw.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-draw.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-graphics.dtx b/macros/latex/contrib/l3backend/l3backend-graphics.dtx
index b042bd04e5..da7dc7516e 100644
--- a/macros/latex/contrib/l3backend/l3backend-graphics.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-graphics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -68,7 +68,7 @@
\cs_if_exist:NTF \hook_gput_code:nnn
{
\hook_gput_code:nnn
- { file / l3graphics.sty / after }
+ { package / l3graphics / after }
{ backend }
{#1}
}
@@ -148,7 +148,7 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{variable}{\l_@@_graphics_attr_tl}
+% \begin{variable}{\l_@@_attr_tl}
% In PDF mode, additional attributes of an graphic (such as page number) are
% needed both to obtain the bounding box and when inserting the graphic: this
% occurs as the graphic dictionary approach means they are read as part of
@@ -156,7 +156,7 @@
% attributes using a dedicated |tl| rather than build up the same data
% twice.
% \begin{macrocode}
-\tl_new:N \l_@@_graphics_attr_tl
+\tl_new:N \l_@@_attr_tl
% \end{macrocode}
% \end{variable}
%
@@ -185,14 +185,15 @@
{
\int_zero:N \l_@@_page_int
\tl_clear:N \l_@@_pagebox_tl
- \tl_set:Nx \l_@@_graphics_attr_tl
+ \tl_set:Nx \l_@@_attr_tl
{
\tl_if_empty:NF \l_@@_decodearray_str
{ :D \l_@@_decodearray_str }
\bool_if:NT \l_@@_interpolate_bool
{ :I }
+ \str_if_empty:NF \l_@@_pdf_str
+ { :X \l_@@_pdf_str }
}
- \tl_clear:N \l_@@_graphics_attr_tl
\@@_backend_getbb_auxi:n {#1}
}
\cs_new_eq:NN \@@_backend_getbb_jpeg:n \@@_backend_getbb_jpg:n
@@ -201,17 +202,19 @@
{
\tl_clear:N \l_@@_decodearray_str
\bool_set_false:N \l_@@_interpolate_bool
- \tl_set:Nx \l_@@_graphics_attr_tl
+ \tl_set:Nx \l_@@_attr_tl
{
: \l_@@_pagebox_tl
\int_compare:nNnT \l_@@_page_int > 1
{ :P \int_use:N \l_@@_page_int }
+ \str_if_empty:NF \l_@@_pdf_str
+ { :X \l_@@_pdf_str }
}
\@@_backend_getbb_auxi:n {#1}
}
\cs_new_protected:Npn \@@_backend_getbb_auxi:n #1
{
- \@@_bb_restore:xF { #1 \l_@@_graphics_attr_tl }
+ \@@_bb_restore:xF { #1 \l_@@_attr_tl }
{ \@@_backend_getbb_auxii:n {#1} }
}
% \end{macrocode}
@@ -225,16 +228,19 @@
{
\exp_args:Ne \@@_backend_getbb_auxiii:n
{ \@@_backend_dequote:w #1 " #1 " \s_@@_stop }
- \int_const:cn { c_@@_ #1 \l_@@_graphics_attr_tl _int }
+ \int_const:cn { c_@@_ #1 \l_@@_attr_tl _int }
{ \tex_the:D \tex_pdflastximage:D }
- \@@_bb_save:x { #1 \l_@@_graphics_attr_tl }
+ \@@_bb_save:x { #1 \l_@@_attr_tl }
}
\cs_new_protected:Npn \@@_backend_getbb_auxiii:n #1
{
\tex_immediate:D \tex_pdfximage:D
- \bool_lazy_or:nnT
- { \l_@@_interpolate_bool }
- { ! \tl_if_empty_p:N \l_@@_decodearray_str }
+ \bool_lazy_any:nT
+ {
+ { \l_@@_interpolate_bool }
+ { ! \tl_if_empty_p:N \l_@@_decodearray_str }
+ { ! \str_if_empty_p:N \l_@@_pdf_str }
+ }
{
attr ~
{
@@ -242,6 +248,7 @@
{ /Decode~[ \l_@@_decodearray_str ] }
\bool_if:NT \l_@@_interpolate_bool
{ /Interpolate~true }
+ \l_@@_pdf_str
}
}
\int_compare:nNnT \l_@@_page_int > 0
@@ -274,7 +281,7 @@
\cs_new_protected:Npn \@@_backend_include_jpg:n #1
{
\tex_pdfrefximage:D
- \int_use:c { c_@@_ #1 \l_@@_graphics_attr_tl _int }
+ \int_use:c { c_@@_ #1 \l_@@_attr_tl _int }
}
\cs_new_eq:NN \@@_backend_include_jpeg:n \@@_backend_include_jpg:n
\cs_new_eq:NN \@@_backend_include_pdf:n \@@_backend_include_jpg:n
@@ -522,7 +529,7 @@
\tl_if_empty:NF \l_@@_decodearray_str
{ /Decode~[ \l_@@_decodearray_str ] }
\bool_if:NT \l_@@_interpolate_bool
- { /Interpolate~true> }
+ { /Interpolate~true }
>>
}
}
diff --git a/macros/latex/contrib/l3backend/l3backend-header.dtx b/macros/latex/contrib/l3backend/l3backend-header.dtx
index 595e6a2924..0cb6767908 100644
--- a/macros/latex/contrib/l3backend/l3backend-header.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-header.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-opacity.dtx b/macros/latex/contrib/l3backend/l3backend-opacity.dtx
index 3f3dd1c84a..033ab150f0 100644
--- a/macros/latex/contrib/l3backend/l3backend-opacity.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-opacity.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-pdf.dtx b/macros/latex/contrib/l3backend/l3backend-pdf.dtx
index bb80237d4d..a95aff4070 100644
--- a/macros/latex/contrib/l3backend/l3backend-pdf.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-pdf.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -69,7 +69,11 @@
% \subsection{Shared code}
%
% A very small number of items that belong at the backend level but which
-% are common to all backends.
+% are common to most backends.
+%
+% \begin{macrocode}
+%<*!dvisvgm>
+% \end{macrocode}
%
% \begin{variable}{\l_@@_internal_box}
% \begin{macrocode}
@@ -77,6 +81,10 @@
% \end{macrocode}
% \end{variable}
%
+% \begin{macrocode}
+%</!dvisvgm>
+% \end{macrocode}
+%
% \subsection{\texttt{dvips} backend}
%
% \begin{macrocode}
diff --git a/macros/latex/contrib/l3experimental/CHANGELOG.md b/macros/latex/contrib/l3experimental/CHANGELOG.md
index a3be92ce0f..fa3928d933 100644
--- a/macros/latex/contrib/l3experimental/CHANGELOG.md
+++ b/macros/latex/contrib/l3experimental/CHANGELOG.md
@@ -7,6 +7,14 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2023-04-19]
+
+### Added
+- Key `pdf-attr` to `l3graphics` for additional attribute setting
+
+### Fixed
+- Grouping in `\draw_path_arc_axes:nnnn` (see \#1195)
+
## [2023-03-30]
### Fixed
@@ -262,7 +270,8 @@ this project uses date-based 'snapshot' version identifiers.
- New `l3color` module using `xcolor`-like expression syntax
- New `l3draw` module, based on `pgf` layer of the TikZ system
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-03-30...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-04-19...HEAD
+[2023-04-19]: https://github.com/latex3/latex3/compare/2023-03-30...2023-04-19
[2023-03-30]: https://github.com/latex3/latex3/compare/2023-01-24...2023-03-30
[2023-01-24]: https://github.com/latex3/latex3/compare/2022-04-20...2023-01-24
[2022-04-20]: https://github.com/latex3/latex3/compare/2022-04-10...2022-04-20
diff --git a/macros/latex/contrib/l3experimental/README.md b/macros/latex/contrib/l3experimental/README.md
index 9415c76d92..ebd40bba2e 100644
--- a/macros/latex/contrib/l3experimental/README.md
+++ b/macros/latex/contrib/l3experimental/README.md
@@ -1,7 +1,7 @@
Experimental LaTeX3 Concepts
============================
-Release 2023-03-30
+Release 2023-04-19
Overview
--------
diff --git a/macros/latex/contrib/l3experimental/l3benchmark.dtx b/macros/latex/contrib/l3experimental/l3benchmark.dtx
index e8290bc435..c8ea43e4ac 100644
--- a/macros/latex/contrib/l3experimental/l3benchmark.dtx
+++ b/macros/latex/contrib/l3experimental/l3benchmark.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -122,7 +122,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3benchmark}{2023-03-30}{}
+\ProvidesExplPackage{l3benchmark}{2023-04-19}{}
{L3 Experimental benchmarking}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3benchmark.pdf b/macros/latex/contrib/l3experimental/l3benchmark.pdf
index 7abb2355b2..e82c024dac 100644
--- a/macros/latex/contrib/l3experimental/l3benchmark.pdf
+++ b/macros/latex/contrib/l3experimental/l3benchmark.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3bitset.dtx b/macros/latex/contrib/l3experimental/l3bitset.dtx
index f3b7c26e1c..5eaffe8772 100644
--- a/macros/latex/contrib/l3experimental/l3bitset.dtx
+++ b/macros/latex/contrib/l3experimental/l3bitset.dtx
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
% \begin{documentation}
@@ -264,7 +264,7 @@
%<@@=bitset>
% \end{macrocode}
% \begin{macrocode}
-\ProvidesExplPackage{l3bitset}{2023-03-30}{}
+\ProvidesExplPackage{l3bitset}{2023-04-19}{}
{L3 Experimental bitset support}
% \end{macrocode}
% A bitset is a string variable.
diff --git a/macros/latex/contrib/l3experimental/l3bitset.pdf b/macros/latex/contrib/l3experimental/l3bitset.pdf
index b151ffb155..dfcf42b9ab 100644
--- a/macros/latex/contrib/l3experimental/l3bitset.pdf
+++ b/macros/latex/contrib/l3experimental/l3bitset.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3draw-boxes.dtx b/macros/latex/contrib/l3experimental/l3draw-boxes.dtx
index c03fa2770a..b07d763e83 100644
--- a/macros/latex/contrib/l3experimental/l3draw-boxes.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-boxes.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-code.pdf b/macros/latex/contrib/l3experimental/l3draw-code.pdf
index 3614cec3be..bdac951ab3 100644
--- a/macros/latex/contrib/l3experimental/l3draw-code.pdf
+++ b/macros/latex/contrib/l3experimental/l3draw-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3draw-layers.dtx b/macros/latex/contrib/l3experimental/l3draw-layers.dtx
index 36f3433092..e72350c26a 100644
--- a/macros/latex/contrib/l3experimental/l3draw-layers.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-layers.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-paths.dtx b/macros/latex/contrib/l3experimental/l3draw-paths.dtx
index 70b7608f2b..d747daf2f8 100644
--- a/macros/latex/contrib/l3experimental/l3draw-paths.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-paths.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -590,8 +590,10 @@
% \begin{macrocode}
\cs_new_protected:Npn \draw_path_arc_axes:nnnn #1#2#3#4
{
- \draw_transform_triangle:nnn { 0cm , 0cm } {#3} {#4}
- \draw_path_arc:nnn {#1} {#2} { 1pt }
+ \group_begin:
+ \draw_transform_triangle:nnn { 0cm , 0cm } {#3} {#4}
+ \draw_path_arc:nnn {#1} {#2} { 1pt }
+ \group_end:
}
% \end{macrocode}
% \end{macro}
diff --git a/macros/latex/contrib/l3experimental/l3draw-points.dtx b/macros/latex/contrib/l3experimental/l3draw-points.dtx
index 6467e01202..fea9203745 100644
--- a/macros/latex/contrib/l3experimental/l3draw-points.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-points.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-scopes.dtx b/macros/latex/contrib/l3experimental/l3draw-scopes.dtx
index 9727e9ce6e..2601b04f25 100644
--- a/macros/latex/contrib/l3experimental/l3draw-scopes.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-scopes.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-softpath.dtx b/macros/latex/contrib/l3experimental/l3draw-softpath.dtx
index 234c4930ef..3b1b4cdf07 100644
--- a/macros/latex/contrib/l3experimental/l3draw-softpath.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-softpath.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-state.dtx b/macros/latex/contrib/l3experimental/l3draw-state.dtx
index 86275a5226..aa4b539157 100644
--- a/macros/latex/contrib/l3experimental/l3draw-state.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-state.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-transforms.dtx b/macros/latex/contrib/l3experimental/l3draw-transforms.dtx
index e7d370a245..bc15d518bd 100644
--- a/macros/latex/contrib/l3experimental/l3draw-transforms.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-transforms.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -262,12 +262,12 @@
\@@_point_process:nnn
{
\@@_point_process:nn
- { \@@_tranform_triangle:nnnnnn }
+ { \@@_transform_triangle:nnnnnn }
{#1}
}
{#2} {#3}
}
-\cs_new_protected:Npn \@@_tranform_triangle:nnnnnn #1#2#3#4#5#6
+\cs_new_protected:Npn \@@_transform_triangle:nnnnnn #1#2#3#4#5#6
{
\use:x
{
diff --git a/macros/latex/contrib/l3experimental/l3draw.dtx b/macros/latex/contrib/l3experimental/l3draw.dtx
index c3d10d3b3e..8aafa2681e 100644
--- a/macros/latex/contrib/l3experimental/l3draw.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw.dtx
@@ -110,7 +110,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -340,7 +340,7 @@
% \draw_join_round:
% }
% \begin{syntax}
-% \cs{draw_cap_butt:}
+% \cs{draw_join_miter:}
% \end{syntax}
% Sets the style of stroke joins to one of bevel, miter or round.
% \end{function}
@@ -1173,7 +1173,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3draw}{2023-03-30}{}
+\ProvidesExplPackage{l3draw}{2023-04-19}{}
{L3 Experimental core drawing support}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3draw.pdf b/macros/latex/contrib/l3experimental/l3draw.pdf
index 30899fd0ca..b087608e83 100644
--- a/macros/latex/contrib/l3experimental/l3draw.pdf
+++ b/macros/latex/contrib/l3experimental/l3draw.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3galley.dtx b/macros/latex/contrib/l3experimental/l3galley.dtx
index 405b248b64..5ad2b5c90e 100644
--- a/macros/latex/contrib/l3experimental/l3galley.dtx
+++ b/macros/latex/contrib/l3experimental/l3galley.dtx
@@ -61,7 +61,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -686,7 +686,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3galley}{2023-03-30}{}
+\ProvidesExplPackage{l3galley}{2023-04-19}{}
{L3 Experimental galley code}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3galley.pdf b/macros/latex/contrib/l3experimental/l3galley.pdf
index 09c4291374..0470a5b137 100644
--- a/macros/latex/contrib/l3experimental/l3galley.pdf
+++ b/macros/latex/contrib/l3experimental/l3galley.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3graphics.dtx b/macros/latex/contrib/l3experimental/l3graphics.dtx
index 942b15fd7d..209660e870 100644
--- a/macros/latex/contrib/l3experimental/l3graphics.dtx
+++ b/macros/latex/contrib/l3experimental/l3graphics.dtx
@@ -22,9 +22,6 @@
%
% for those people who are interested.
%
-%<*driver|package>
-\RequirePackage{expl3}
-%</driver|package>
%<*driver>
\documentclass[full]{l3doc}
\begin{document}
@@ -46,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -81,6 +78,13 @@
% which may contain multiple pages.
% \end{variable}
%
+% \begin{variable}{pdf-attr}
+% Additional PDF-focussed attributes: available to allow control of
+% extended |.pdf| structures beyond those needed for graphic inclusion.
+% Due to backend restrictions, this key is only functional with direct
+% PDF mode (pdf\TeX{} and Lua\TeX{}).
+% \end{variable}
+%
% \begin{variable}{pagebox}
% The nature of the page box setting used to determine the bounding box of
% material: used for |.pdf| files which feature multiple page box
@@ -88,11 +92,6 @@
% The standard setting is |crop|.
% \end{variable}
%
-% \begin{variable}{draft}
-% Switch to enable draft mode: graphics are read but not included when this is
-% true.
-% \end{variable}
-%
% \begin{variable}{type}
% The type of graphic file beign included: if this key is not set, the
% \emph{type} is determined from the file extension.
@@ -185,7 +184,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3graphics}{2023-03-30}{}
+\ProvidesExplPackage{l3graphics}{2023-04-19}{}
{L3 Experimental graphics inclusion support}
% \end{macrocode}
%
@@ -214,6 +213,7 @@
% \l_@@_interpolate_bool ,
% \l_@@_page_int ,
% \l_@@_pagebox_tl ,
+% \l_@@_pdf_str ,
% \l_@@_type_str
% }
% Keys which control features of graphics. The standard value of |pagebox|
@@ -243,6 +243,8 @@
crop ,
page .int_set:N =
\l_@@_page_int ,
+ pdf-attr .str_set:N =
+ \l_@@_pdf_str ,
type . str_set:N =
\l_@@_type_str
}
diff --git a/macros/latex/contrib/l3experimental/l3graphics.pdf b/macros/latex/contrib/l3experimental/l3graphics.pdf
index 731fbae62e..3d5fb2bcc2 100644
--- a/macros/latex/contrib/l3experimental/l3graphics.pdf
+++ b/macros/latex/contrib/l3experimental/l3graphics.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3opacity.dtx b/macros/latex/contrib/l3experimental/l3opacity.dtx
index 4d2de0fc69..50dac87620 100644
--- a/macros/latex/contrib/l3experimental/l3opacity.dtx
+++ b/macros/latex/contrib/l3experimental/l3opacity.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -96,7 +96,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3opacity}{2023-03-30}{}
+\ProvidesExplPackage{l3opacity}{2023-04-19}{}
{L3 Experimental opacity support}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3opacity.pdf b/macros/latex/contrib/l3experimental/l3opacity.pdf
index 1ed2e3f71e..967c1ca92f 100644
--- a/macros/latex/contrib/l3experimental/l3opacity.pdf
+++ b/macros/latex/contrib/l3experimental/l3opacity.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3str-format.dtx b/macros/latex/contrib/l3experimental/l3str-format.dtx
index 05f466dbd4..2616f41a68 100644
--- a/macros/latex/contrib/l3experimental/l3str-format.dtx
+++ b/macros/latex/contrib/l3experimental/l3str-format.dtx
@@ -48,7 +48,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -166,7 +166,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3str-format}{2023-03-30}{}
+\ProvidesExplPackage{l3str-format}{2023-04-19}{}
{L3 Experimental string formatting}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3str-format.pdf b/macros/latex/contrib/l3experimental/l3str-format.pdf
index f44719f92a..d315eeffcd 100644
--- a/macros/latex/contrib/l3experimental/l3str-format.pdf
+++ b/macros/latex/contrib/l3experimental/l3str-format.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3sys-shell.dtx b/macros/latex/contrib/l3experimental/l3sys-shell.dtx
index f830455bf6..f27e540563 100644
--- a/macros/latex/contrib/l3experimental/l3sys-shell.dtx
+++ b/macros/latex/contrib/l3experimental/l3sys-shell.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -151,7 +151,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3sys-shell}{2023-03-30}{}
+\ProvidesExplPackage{l3sys-shell}{2023-04-19}{}
{L3 Experimental system shell functions}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3sys-shell.pdf b/macros/latex/contrib/l3experimental/l3sys-shell.pdf
index 2c80015c8f..81ed18d9eb 100644
--- a/macros/latex/contrib/l3experimental/l3sys-shell.pdf
+++ b/macros/latex/contrib/l3experimental/l3sys-shell.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/xcoffins.dtx b/macros/latex/contrib/l3experimental/xcoffins.dtx
index 7b41377cc2..49b65d6ff2 100644
--- a/macros/latex/contrib/l3experimental/xcoffins.dtx
+++ b/macros/latex/contrib/l3experimental/xcoffins.dtx
@@ -53,7 +53,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -672,7 +672,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xcoffins}{2023-03-30}{}
+\ProvidesExplPackage{xcoffins}{2023-04-19}{}
{L3 Experimental design level coffins}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/xcoffins.pdf b/macros/latex/contrib/l3experimental/xcoffins.pdf
index 09c8d7a162..d5a1678b8f 100644
--- a/macros/latex/contrib/l3experimental/xcoffins.pdf
+++ b/macros/latex/contrib/l3experimental/xcoffins.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/xgalley.dtx b/macros/latex/contrib/l3experimental/xgalley.dtx
index b450528125..f464ca8c02 100644
--- a/macros/latex/contrib/l3experimental/xgalley.dtx
+++ b/macros/latex/contrib/l3experimental/xgalley.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -731,7 +731,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xgalley}{2023-03-30}{}
+\ProvidesExplPackage{xgalley}{2023-04-19}{}
{L3 Experimental galley}
\RequirePackage{xtemplate,l3galley}
% \end{macrocode}
diff --git a/macros/latex/contrib/l3experimental/xgalley.pdf b/macros/latex/contrib/l3experimental/xgalley.pdf
index af229347da..26a7ab7d04 100644
--- a/macros/latex/contrib/l3experimental/xgalley.pdf
+++ b/macros/latex/contrib/l3experimental/xgalley.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/CHANGELOG.md b/macros/latex/contrib/l3kernel/CHANGELOG.md
index 7cbc8d71c0..0545e08858 100644
--- a/macros/latex/contrib/l3kernel/CHANGELOG.md
+++ b/macros/latex/contrib/l3kernel/CHANGELOG.md
@@ -7,8 +7,27 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
-## [2023-03-30]
+## [2023-04-19]
+
+### Added
+- `\box_set_clipped:N` and variants (renamed from `\box_clip:N`)
+- `\text_declare_lowercase_mapping:nn(n)`,
+ `\text_declare_titlecase_mapping:nn(n)`
+ and `\text_declare_uppercase_mapping:nn(n)` to allow customization of
+ case changing outcomes
+
+### Changed
+- `\box_set_trim:Nnnnn` and `\box_set_viewport:Nnnnn` moved to
+ stable kernel
+### Fixed
+- Incorrect internal name in `\pdf_pagesize_gset:nn`
+
+### Removed
+- Experimental `\box_clip:N` and variants (renamed to
+ `\box_set_clipped:N`)
+
+## [2023-03-30]
### Added
- `\tex_endlocalcontrol:D` as expl3 name for the LuaTeX primitive
@@ -1319,7 +1338,8 @@ this project uses date-based 'snapshot' version identifiers.
- Step functions have been added for dim variables,
e.g. `\dim_step_inline:nnnn`
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-03-30...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-04-19...HEAD
+[2023-04-19]: https://github.com/latex3/latex3/compare/2023-03-30...2023-04-19
[2023-03-30]: https://github.com/latex3/latex3/compare/2023-02-22...2023-03-30
[2023-02-22]: https://github.com/latex3/latex3/compare/2023-02-07...2023-02-22
[2023-02-07]: https://github.com/latex3/latex3/compare/2023-02-02...2023-02-07
diff --git a/macros/latex/contrib/l3kernel/README.md b/macros/latex/contrib/l3kernel/README.md
index 0df952a621..9438a5eea7 100644
--- a/macros/latex/contrib/l3kernel/README.md
+++ b/macros/latex/contrib/l3kernel/README.md
@@ -1,7 +1,7 @@
LaTeX3 Programming Conventions
==============================
-Release 2023-03-30
+Release 2023-04-19
Overview
--------
diff --git a/macros/latex/contrib/l3kernel/expl3.dtx b/macros/latex/contrib/l3kernel/expl3.dtx
index 263dff0730..b0392ded24 100644
--- a/macros/latex/contrib/l3kernel/expl3.dtx
+++ b/macros/latex/contrib/l3kernel/expl3.dtx
@@ -24,7 +24,7 @@
%
%<*driver|generic|package|2ekernel>
%</driver|generic|package|2ekernel>
-\def\ExplFileDate{2023-03-30}%
+\def\ExplFileDate{2023-04-19}%
%<*driver>
\documentclass[full]{l3doc}
\usepackage{graphicx}
@@ -51,7 +51,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/expl3.pdf b/macros/latex/contrib/l3kernel/expl3.pdf
index 067a893604..e99e454a52 100644
--- a/macros/latex/contrib/l3kernel/expl3.pdf
+++ b/macros/latex/contrib/l3kernel/expl3.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/interface3.pdf b/macros/latex/contrib/l3kernel/interface3.pdf
index 102275e76a..12a87f5da9 100644
--- a/macros/latex/contrib/l3kernel/interface3.pdf
+++ b/macros/latex/contrib/l3kernel/interface3.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/interface3.tex b/macros/latex/contrib/l3kernel/interface3.tex
index 6824f38aef..3f6b5732c7 100644
--- a/macros/latex/contrib/l3kernel/interface3.tex
+++ b/macros/latex/contrib/l3kernel/interface3.tex
@@ -62,7 +62,7 @@ for those people who are interested.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-03-30}
+\date{Released 2023-04-19}
\pagenumbering{roman}
\maketitle
diff --git a/macros/latex/contrib/l3kernel/l3basics.dtx b/macros/latex/contrib/l3kernel/l3basics.dtx
index 37af99717e..c8acfdf593 100644
--- a/macros/latex/contrib/l3kernel/l3basics.dtx
+++ b/macros/latex/contrib/l3kernel/l3basics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3bootstrap.dtx b/macros/latex/contrib/l3kernel/l3bootstrap.dtx
index 73064e4ce4..f757cc2a60 100644
--- a/macros/latex/contrib/l3kernel/l3bootstrap.dtx
+++ b/macros/latex/contrib/l3kernel/l3bootstrap.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3box.dtx b/macros/latex/contrib/l3kernel/l3box.dtx
index 26fb88edd9..bc24a673fa 100644
--- a/macros/latex/contrib/l3kernel/l3box.dtx
+++ b/macros/latex/contrib/l3kernel/l3box.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -874,6 +874,70 @@
% dependent on the height of the original and \emph{vice versa}.
% \end{function}
%
+% \section{Viewing part of a box}
+%
+% \begin{function}[updated = 2023-04-14]
+% {
+% \box_set_clipped:N, \box_set_clipped:c,
+% \box_gset_clipped:N, \box_gset_clipped:c
+% }
+% \begin{syntax}
+% \cs{box_set_clipped:N} \meta{box}
+% \end{syntax}
+% Clips the \meta{box} in the output so that only material inside the
+% bounding box is displayed in the output. The updated \meta{box} is an
+% hbox, irrespective of the nature of the \meta{box} before the clipping is
+% applied. Additional box levels are also generated by this operation.
+%
+% \begin{texnote}
+% Clipping is implemented by the driver, and as such the full content of
+% the box is placed in the output file. Thus clipping does not remove
+% any information from the raw output, and hidden material can therefore
+% be viewed by direct examination of the file.
+% \end{texnote}
+% \end{function}
+%
+% \begin{function}[added = 2019-01-23]
+% {
+% \box_set_trim:Nnnnn, \box_set_trim:cnnnn,
+% \box_gset_trim:Nnnnn, \box_gset_trim:cnnnn
+% }
+% \begin{syntax}
+% \cs{box_set_trim:Nnnnn} \meta{box} \Arg{left} \Arg{bottom} \Arg{right} \Arg{top}
+% \end{syntax}
+% Adjusts the bounding box of the \meta{box} \meta{left} is removed from
+% the left-hand edge of the bounding box, \meta{right} from the right-hand
+% edge and so fourth. All adjustments are \meta{dim exprs}.
+% Material outside of the bounding box is still displayed in the output
+% unless \cs{box_set_clipped:N} is subsequently applied.
+% The updated \meta{box} is an
+% hbox, irrespective of the nature of the \meta{box} before the trim
+% operation is applied.
+% Additional box levels are also generated by this operation.
+% The behavior of the operation where the trims requested is
+% greater than the size of the box is undefined.
+% \end{function}
+%
+% \begin{function}[added = 2019-01-23]
+% {
+% \box_set_viewport:Nnnnn, \box_set_viewport:cnnnn,
+% \box_gset_viewport:Nnnnn, \box_gset_viewport:cnnnn
+% }
+% \begin{syntax}
+% \cs{box_set_viewport:Nnnnn} \meta{box} \Arg{llx} \Arg{lly} \Arg{urx} \Arg{ury}
+% \end{syntax}
+% Adjusts the bounding box of the \meta{box} such that it has lower-left
+% co-ordinates (\meta{llx}, \meta{lly}) and upper-right co-ordinates
+% (\meta{urx}, \meta{ury}). All four co-ordinate positions are
+% \meta{dim exprs}. Material outside of the bounding box is
+% still displayed in the output unless \cs{box_set_clipped:N} is
+% subsequently applied.
+% The updated \meta{box} is an
+% hbox, irrespective of the nature of the \meta{box} before the viewport
+% operation is applied.
+% Additional box levels are also generated by this operation.
+% \end{function}
+%
% \section{Primitive box conditionals}
%
% \begin{function}[EXP]{\if_hbox:N}
@@ -2298,6 +2362,163 @@
% \end{macrocode}
% \end{macro}
%
+% \subsection{Viewing part of a box}
+%
+% \begin{macro}{\box_set_clipped:N, \box_set_clipped:c, \box_gset_clipped:N, \box_gset_clipped:c}
+% A wrapper around the driver-dependent code.
+% \begin{macrocode}
+\cs_new_protected:Npn \box_set_clipped:N #1
+ { \hbox_set:Nn #1 { \@@_backend_clip:N #1 } }
+\cs_generate_variant:Nn \box_set_clipped:N { c }
+\cs_new_protected:Npn \box_gset_clipped:N #1
+ { \hbox_gset:Nn #1 { \@@_backend_clip:N #1 } }
+\cs_generate_variant:Nn \box_gset_clipped:N { c }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}
+% {
+% \box_set_trim:Nnnnn, \box_set_trim:cnnnn,
+% \box_gset_trim:Nnnnn, \box_gset_trim:cnnnn
+% }
+% \begin{macro}{\@@_set_trim:NnnnnN}
+% Trimming from the left- and right-hand edges of the box is easy: kern the
+% appropriate parts off each side.
+% \begin{macrocode}
+\cs_new_protected:Npn \box_set_trim:Nnnnn #1#2#3#4#5
+ { \@@_set_trim:NnnnnN #1 {#2} {#3} {#4} {#5} \box_set_eq:NN }
+\cs_generate_variant:Nn \box_set_trim:Nnnnn { c }
+\cs_new_protected:Npn \box_gset_trim:Nnnnn #1#2#3#4#5
+ { \@@_set_trim:NnnnnN #1 {#2} {#3} {#4} {#5} \box_gset_eq:NN }
+\cs_generate_variant:Nn \box_gset_trim:Nnnnn { c }
+\cs_new_protected:Npn \@@_set_trim:NnnnnN #1#2#3#4#5#6
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \__kernel_kern:n { -#2 }
+ \box_use:N #1
+ \__kernel_kern:n { -#4 }
+ }
+% \end{macrocode}
+% For the height and depth, there is a need to watch the baseline is
+% respected. Material always has to stay on the correct side, so trimming
+% has to check that there is enough material to trim. First, the bottom
+% edge. If there is enough depth, simply set the depth, or if not move
+% down so the result is zero depth. \cs{box_move_down:nn} is used in both
+% cases so the resulting box always contains a \tn{lower} primitive.
+% The internal box is used here as it allows safe use of \cs{box_set_dp:Nn}.
+% \begin{macrocode}
+ \dim_compare:nNnTF { \box_dp:N #1 } > {#3}
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \box_move_down:nn \c_zero_dim
+ { \box_use_drop:N \l_@@_internal_box }
+ }
+ \box_set_dp:Nn \l_@@_internal_box { \box_dp:N #1 - (#3) }
+ }
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \box_move_down:nn { (#3) - \box_dp:N #1 }
+ { \box_use_drop:N \l_@@_internal_box }
+ }
+ \box_set_dp:Nn \l_@@_internal_box \c_zero_dim
+ }
+% \end{macrocode}
+% Same thing, this time from the top of the box.
+% \begin{macrocode}
+ \dim_compare:nNnTF { \box_ht:N \l_@@_internal_box } > {#5}
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \box_move_up:nn \c_zero_dim
+ { \box_use_drop:N \l_@@_internal_box }
+ }
+ \box_set_ht:Nn \l_@@_internal_box
+ { \box_ht:N \l_@@_internal_box - (#5) }
+ }
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \box_move_up:nn { (#5) - \box_ht:N \l_@@_internal_box }
+ { \box_use_drop:N \l_@@_internal_box }
+ }
+ \box_set_ht:Nn \l_@@_internal_box \c_zero_dim
+ }
+ #6 #1 \l_@@_internal_box
+ }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}
+% {
+% \box_set_viewport:Nnnnn, \box_set_viewport:cnnnn,
+% \box_gset_viewport:Nnnnn, \box_gset_viewport:cnnnn
+% }
+% \begin{macro}{\@@_viewport:NnnnnN}
+% The same general logic as for the trim operation, but with absolute
+% dimensions. As a result, there are some things to watch out for in the
+% vertical direction.
+% \begin{macrocode}
+\cs_new_protected:Npn \box_set_viewport:Nnnnn #1#2#3#4#5
+ { \@@_set_viewport:NnnnnN #1 {#2} {#3} {#4} {#5} \box_set_eq:NN }
+\cs_generate_variant:Nn \box_set_viewport:Nnnnn { c }
+\cs_new_protected:Npn \box_gset_viewport:Nnnnn #1#2#3#4#5
+ { \@@_set_viewport:NnnnnN #1 {#2} {#3} {#4} {#5} \box_gset_eq:NN }
+\cs_generate_variant:Nn \box_gset_viewport:Nnnnn { c }
+\cs_new_protected:Npn \@@_set_viewport:NnnnnN #1#2#3#4#5#6
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \__kernel_kern:n { -#2 }
+ \box_use:N #1
+ \__kernel_kern:n { #4 - \box_wd:N #1 }
+ }
+ \dim_compare:nNnTF {#3} < \c_zero_dim
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \box_move_down:nn \c_zero_dim
+ { \box_use_drop:N \l_@@_internal_box }
+ }
+ \box_set_dp:Nn \l_@@_internal_box { - \@@_dim_eval:n {#3} }
+ }
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ { \box_move_down:nn {#3} { \box_use_drop:N \l_@@_internal_box } }
+ \box_set_dp:Nn \l_@@_internal_box \c_zero_dim
+ }
+ \dim_compare:nNnTF {#5} > \c_zero_dim
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \box_move_up:nn \c_zero_dim
+ { \box_use_drop:N \l_@@_internal_box }
+ }
+ \box_set_ht:Nn \l_@@_internal_box
+ {
+ (#5)
+ \dim_compare:nNnT {#3} > \c_zero_dim
+ { - (#3) }
+ }
+ }
+ {
+ \hbox_set:Nn \l_@@_internal_box
+ {
+ \box_move_up:nn { - \@@_dim_eval:n {#5} }
+ { \box_use_drop:N \l_@@_internal_box }
+ }
+ \box_set_ht:Nn \l_@@_internal_box \c_zero_dim
+ }
+ #6 #1 \l_@@_internal_box
+ }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+
+%
% \begin{macrocode}
%</package>
% \end{macrocode}
diff --git a/macros/latex/contrib/l3kernel/l3candidates.dtx b/macros/latex/contrib/l3kernel/l3candidates.dtx
index 3b804316c2..23208c8220 100644
--- a/macros/latex/contrib/l3kernel/l3candidates.dtx
+++ b/macros/latex/contrib/l3kernel/l3candidates.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -84,68 +84,6 @@
% into the kernel. However, real use sometimes leads to better ideas, so functions from this module are
% \textbf{not necessarily stable} and we may have to adjust them!
%
-% \section{Additions to \pkg{l3box}}
-%
-% \begin{function}[updated = 2019-01-23]
-% {\box_clip:N, \box_clip:c, \box_gclip:N, \box_gclip:c}
-% \begin{syntax}
-% \cs{box_clip:N} \meta{box}
-% \end{syntax}
-% Clips the \meta{box} in the output so that only material inside the
-% bounding box is displayed in the output. The updated \meta{box} is an
-% hbox, irrespective of the nature of the \meta{box} before the clipping is
-% applied.
-%
-% \textbf{These functions require the \LaTeX3 native drivers: they do
-% not work with the \LaTeXe{} \pkg{graphics} drivers!}
-%
-% \begin{texnote}
-% Clipping is implemented by the driver, and as such the full content of
-% the box is placed in the output file. Thus clipping does not remove
-% any information from the raw output, and hidden material can therefore
-% be viewed by direct examination of the file.
-% \end{texnote}
-% \end{function}
-%
-% \begin{function}[added = 2019-01-23]
-% {
-% \box_set_trim:Nnnnn, \box_set_trim:cnnnn,
-% \box_gset_trim:Nnnnn, \box_gset_trim:cnnnn
-% }
-% \begin{syntax}
-% \cs{box_set_trim:Nnnnn} \meta{box} \Arg{left} \Arg{bottom} \Arg{right} \Arg{top}
-% \end{syntax}
-% Adjusts the bounding box of the \meta{box} \meta{left} is removed from
-% the left-hand edge of the bounding box, \meta{right} from the right-hand
-% edge and so fourth. All adjustments are \meta{dim exprs}.
-% Material outside of the bounding box is still displayed in the output
-% unless \cs{box_clip:N} is subsequently applied.
-% The updated \meta{box} is an
-% hbox, irrespective of the nature of the \meta{box} before the trim
-% operation is applied.
-% The behavior of the operation where the trims requested is
-% greater than the size of the box is undefined.
-% \end{function}
-%
-% \begin{function}[added = 2019-01-23]
-% {
-% \box_set_viewport:Nnnnn, \box_set_viewport:cnnnn,
-% \box_gset_viewport:Nnnnn, \box_gset_viewport:cnnnn
-% }
-% \begin{syntax}
-% \cs{box_set_viewport:Nnnnn} \meta{box} \Arg{llx} \Arg{lly} \Arg{urx} \Arg{ury}
-% \end{syntax}
-% Adjusts the bounding box of the \meta{box} such that it has lower-left
-% co-ordinates (\meta{llx}, \meta{lly}) and upper-right co-ordinates
-% (\meta{urx}, \meta{ury}). All four co-ordinate positions are
-% \meta{dim exprs}. Material outside of the bounding box is
-% still displayed in the output unless \cs{box_clip:N} is
-% subsequently applied.
-% The updated \meta{box} is an
-% hbox, irrespective of the nature of the \meta{box} before the viewport
-% operation is applied.
-% \end{function}
-%
% \section{Additions to \pkg{l3expan}}
%
% \begin{function}[added = 2018-04-04, updated = 2019-02-08]
@@ -669,168 +607,6 @@
%<*package>
% \end{macrocode}
%
-% \subsection{Additions to \pkg{l3box}}
-%
-% \begin{macrocode}
-%<@@=box>
-% \end{macrocode}
-%
-% \subsubsection{Viewing part of a box}
-%
-% \begin{macro}{\box_clip:N, \box_clip:c, \box_gclip:N, \box_gclip:c}
-% A wrapper around the driver-dependent code.
-% \begin{macrocode}
-\cs_new_protected:Npn \box_clip:N #1
- { \hbox_set:Nn #1 { \@@_backend_clip:N #1 } }
-\cs_generate_variant:Nn \box_clip:N { c }
-\cs_new_protected:Npn \box_gclip:N #1
- { \hbox_gset:Nn #1 { \@@_backend_clip:N #1 } }
-\cs_generate_variant:Nn \box_gclip:N { c }
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}
-% {
-% \box_set_trim:Nnnnn, \box_set_trim:cnnnn,
-% \box_gset_trim:Nnnnn, \box_gset_trim:cnnnn
-% }
-% \begin{macro}{\@@_set_trim:NnnnnN}
-% Trimming from the left- and right-hand edges of the box is easy: kern the
-% appropriate parts off each side.
-% \begin{macrocode}
-\cs_new_protected:Npn \box_set_trim:Nnnnn #1#2#3#4#5
- { \@@_set_trim:NnnnnN #1 {#2} {#3} {#4} {#5} \box_set_eq:NN }
-\cs_generate_variant:Nn \box_set_trim:Nnnnn { c }
-\cs_new_protected:Npn \box_gset_trim:Nnnnn #1#2#3#4#5
- { \@@_set_trim:NnnnnN #1 {#2} {#3} {#4} {#5} \box_gset_eq:NN }
-\cs_generate_variant:Nn \box_gset_trim:Nnnnn { c }
-\cs_new_protected:Npn \@@_set_trim:NnnnnN #1#2#3#4#5#6
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \__kernel_kern:n { -#2 }
- \box_use:N #1
- \__kernel_kern:n { -#4 }
- }
-% \end{macrocode}
-% For the height and depth, there is a need to watch the baseline is
-% respected. Material always has to stay on the correct side, so trimming
-% has to check that there is enough material to trim. First, the bottom
-% edge. If there is enough depth, simply set the depth, or if not move
-% down so the result is zero depth. \cs{box_move_down:nn} is used in both
-% cases so the resulting box always contains a \tn{lower} primitive.
-% The internal box is used here as it allows safe use of \cs{box_set_dp:Nn}.
-% \begin{macrocode}
- \dim_compare:nNnTF { \box_dp:N #1 } > {#3}
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \box_move_down:nn \c_zero_dim
- { \box_use_drop:N \l_@@_internal_box }
- }
- \box_set_dp:Nn \l_@@_internal_box { \box_dp:N #1 - (#3) }
- }
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \box_move_down:nn { (#3) - \box_dp:N #1 }
- { \box_use_drop:N \l_@@_internal_box }
- }
- \box_set_dp:Nn \l_@@_internal_box \c_zero_dim
- }
-% \end{macrocode}
-% Same thing, this time from the top of the box.
-% \begin{macrocode}
- \dim_compare:nNnTF { \box_ht:N \l_@@_internal_box } > {#5}
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \box_move_up:nn \c_zero_dim
- { \box_use_drop:N \l_@@_internal_box }
- }
- \box_set_ht:Nn \l_@@_internal_box
- { \box_ht:N \l_@@_internal_box - (#5) }
- }
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \box_move_up:nn { (#5) - \box_ht:N \l_@@_internal_box }
- { \box_use_drop:N \l_@@_internal_box }
- }
- \box_set_ht:Nn \l_@@_internal_box \c_zero_dim
- }
- #6 #1 \l_@@_internal_box
- }
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}
-% {
-% \box_set_viewport:Nnnnn, \box_set_viewport:cnnnn,
-% \box_gset_viewport:Nnnnn, \box_gset_viewport:cnnnn
-% }
-% \begin{macro}{\@@_viewport:NnnnnN}
-% The same general logic as for the trim operation, but with absolute
-% dimensions. As a result, there are some things to watch out for in the
-% vertical direction.
-% \begin{macrocode}
-\cs_new_protected:Npn \box_set_viewport:Nnnnn #1#2#3#4#5
- { \@@_set_viewport:NnnnnN #1 {#2} {#3} {#4} {#5} \box_set_eq:NN }
-\cs_generate_variant:Nn \box_set_viewport:Nnnnn { c }
-\cs_new_protected:Npn \box_gset_viewport:Nnnnn #1#2#3#4#5
- { \@@_set_viewport:NnnnnN #1 {#2} {#3} {#4} {#5} \box_gset_eq:NN }
-\cs_generate_variant:Nn \box_gset_viewport:Nnnnn { c }
-\cs_new_protected:Npn \@@_set_viewport:NnnnnN #1#2#3#4#5#6
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \__kernel_kern:n { -#2 }
- \box_use:N #1
- \__kernel_kern:n { #4 - \box_wd:N #1 }
- }
- \dim_compare:nNnTF {#3} < \c_zero_dim
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \box_move_down:nn \c_zero_dim
- { \box_use_drop:N \l_@@_internal_box }
- }
- \box_set_dp:Nn \l_@@_internal_box { - \@@_dim_eval:n {#3} }
- }
- {
- \hbox_set:Nn \l_@@_internal_box
- { \box_move_down:nn {#3} { \box_use_drop:N \l_@@_internal_box } }
- \box_set_dp:Nn \l_@@_internal_box \c_zero_dim
- }
- \dim_compare:nNnTF {#5} > \c_zero_dim
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \box_move_up:nn \c_zero_dim
- { \box_use_drop:N \l_@@_internal_box }
- }
- \box_set_ht:Nn \l_@@_internal_box
- {
- (#5)
- \dim_compare:nNnT {#3} > \c_zero_dim
- { - (#3) }
- }
- }
- {
- \hbox_set:Nn \l_@@_internal_box
- {
- \box_move_up:nn { - \@@_dim_eval:n {#5} }
- { \box_use_drop:N \l_@@_internal_box }
- }
- \box_set_ht:Nn \l_@@_internal_box \c_zero_dim
- }
- #6 #1 \l_@@_internal_box
- }
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
% \subsection{Additions to \pkg{l3flag}}
%
% \begin{macrocode}
diff --git a/macros/latex/contrib/l3kernel/l3cctab.dtx b/macros/latex/contrib/l3kernel/l3cctab.dtx
index 8233acdc79..9337a4347a 100644
--- a/macros/latex/contrib/l3kernel/l3cctab.dtx
+++ b/macros/latex/contrib/l3kernel/l3cctab.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3clist.dtx b/macros/latex/contrib/l3kernel/l3clist.dtx
index c8a9d89bcb..3d92c2b3c5 100644
--- a/macros/latex/contrib/l3kernel/l3clist.dtx
+++ b/macros/latex/contrib/l3kernel/l3clist.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3coffins.dtx b/macros/latex/contrib/l3kernel/l3coffins.dtx
index 4a496da85f..d351a8b3e6 100644
--- a/macros/latex/contrib/l3kernel/l3coffins.dtx
+++ b/macros/latex/contrib/l3kernel/l3coffins.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3color.dtx b/macros/latex/contrib/l3kernel/l3color.dtx
index 017cad63c5..533e5411d7 100644
--- a/macros/latex/contrib/l3kernel/l3color.dtx
+++ b/macros/latex/contrib/l3kernel/l3color.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3debug.dtx b/macros/latex/contrib/l3kernel/l3debug.dtx
index 854f4f5b61..d46b1ceed5 100644
--- a/macros/latex/contrib/l3kernel/l3debug.dtx
+++ b/macros/latex/contrib/l3kernel/l3debug.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3deprecation.dtx b/macros/latex/contrib/l3kernel/l3deprecation.dtx
index 1e8af30022..5794a86fb3 100644
--- a/macros/latex/contrib/l3kernel/l3deprecation.dtx
+++ b/macros/latex/contrib/l3kernel/l3deprecation.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3doc.dtx b/macros/latex/contrib/l3kernel/l3doc.dtx
index f4f19d5aaa..0adf0d030d 100644
--- a/macros/latex/contrib/l3kernel/l3doc.dtx
+++ b/macros/latex/contrib/l3kernel/l3doc.dtx
@@ -85,7 +85,7 @@ and all files in that bundle must be distributed together.
% require you to do updates, if the class changes.}}
%
% \author{\Team}
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
% \maketitle
% \tableofcontents
%
diff --git a/macros/latex/contrib/l3kernel/l3doc.pdf b/macros/latex/contrib/l3kernel/l3doc.pdf
index fb8f1d82b3..9280d8c138 100644
--- a/macros/latex/contrib/l3kernel/l3doc.pdf
+++ b/macros/latex/contrib/l3kernel/l3doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3docstrip.dtx b/macros/latex/contrib/l3kernel/l3docstrip.dtx
index 750356ac9f..a97448cfac 100644
--- a/macros/latex/contrib/l3kernel/l3docstrip.dtx
+++ b/macros/latex/contrib/l3kernel/l3docstrip.dtx
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3docstrip.pdf b/macros/latex/contrib/l3kernel/l3docstrip.pdf
index b16829443d..8b7604532a 100644
--- a/macros/latex/contrib/l3kernel/l3docstrip.pdf
+++ b/macros/latex/contrib/l3kernel/l3docstrip.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3expan.dtx b/macros/latex/contrib/l3kernel/l3expan.dtx
index d8a6c8cc99..e73d77c8df 100644
--- a/macros/latex/contrib/l3kernel/l3expan.dtx
+++ b/macros/latex/contrib/l3kernel/l3expan.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3file.dtx b/macros/latex/contrib/l3kernel/l3file.dtx
index dfc1c6338d..ca59e7ab61 100644
--- a/macros/latex/contrib/l3kernel/l3file.dtx
+++ b/macros/latex/contrib/l3kernel/l3file.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3flag.dtx b/macros/latex/contrib/l3kernel/l3flag.dtx
index e30f49f7f2..b3feeda330 100644
--- a/macros/latex/contrib/l3kernel/l3flag.dtx
+++ b/macros/latex/contrib/l3kernel/l3flag.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-assign.dtx b/macros/latex/contrib/l3kernel/l3fp-assign.dtx
index 3efd565575..8ea284a32e 100644
--- a/macros/latex/contrib/l3kernel/l3fp-assign.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-assign.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
% \maketitle
%
% \begin{documentation}
diff --git a/macros/latex/contrib/l3kernel/l3fp-aux.dtx b/macros/latex/contrib/l3kernel/l3fp-aux.dtx
index 0391f3e34f..480e428a2b 100644
--- a/macros/latex/contrib/l3kernel/l3fp-aux.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-aux.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-basics.dtx b/macros/latex/contrib/l3kernel/l3fp-basics.dtx
index 9af50e5850..460f64c48e 100644
--- a/macros/latex/contrib/l3kernel/l3fp-basics.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-basics.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-convert.dtx b/macros/latex/contrib/l3kernel/l3fp-convert.dtx
index d7a1936e77..29d765afe6 100644
--- a/macros/latex/contrib/l3kernel/l3fp-convert.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-convert.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-expo.dtx b/macros/latex/contrib/l3kernel/l3fp-expo.dtx
index 1ea73e116e..5618124ff7 100644
--- a/macros/latex/contrib/l3kernel/l3fp-expo.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-expo.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-extended.dtx b/macros/latex/contrib/l3kernel/l3fp-extended.dtx
index 5384037de1..a42b35aa7b 100644
--- a/macros/latex/contrib/l3kernel/l3fp-extended.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-extended.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-logic.dtx b/macros/latex/contrib/l3kernel/l3fp-logic.dtx
index 2956f840a5..9e012f46b6 100644
--- a/macros/latex/contrib/l3kernel/l3fp-logic.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-logic.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-parse.dtx b/macros/latex/contrib/l3kernel/l3fp-parse.dtx
index ef58cd8600..7bc00e16b6 100644
--- a/macros/latex/contrib/l3kernel/l3fp-parse.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-parse.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-random.dtx b/macros/latex/contrib/l3kernel/l3fp-random.dtx
index a8929a1fae..59d7a42c7b 100644
--- a/macros/latex/contrib/l3kernel/l3fp-random.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-random.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-round.dtx b/macros/latex/contrib/l3kernel/l3fp-round.dtx
index e721fc76c5..5e02ed2a64 100644
--- a/macros/latex/contrib/l3kernel/l3fp-round.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-round.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-traps.dtx b/macros/latex/contrib/l3kernel/l3fp-traps.dtx
index c09a940b1b..9c99cfa009 100644
--- a/macros/latex/contrib/l3kernel/l3fp-traps.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-traps.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
% \maketitle
%
% \begin{documentation}
diff --git a/macros/latex/contrib/l3kernel/l3fp-trig.dtx b/macros/latex/contrib/l3kernel/l3fp-trig.dtx
index 07f5211c98..41c7fe98cf 100644
--- a/macros/latex/contrib/l3kernel/l3fp-trig.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-trig.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp.dtx b/macros/latex/contrib/l3kernel/l3fp.dtx
index 7cf429eaf8..ca8fcd7b9b 100644
--- a/macros/latex/contrib/l3kernel/l3fp.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fparray.dtx b/macros/latex/contrib/l3kernel/l3fparray.dtx
index 121be8ee5b..fe225b1a0e 100644
--- a/macros/latex/contrib/l3kernel/l3fparray.dtx
+++ b/macros/latex/contrib/l3kernel/l3fparray.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3int.dtx b/macros/latex/contrib/l3kernel/l3int.dtx
index b90f881036..d0095ef63d 100644
--- a/macros/latex/contrib/l3kernel/l3int.dtx
+++ b/macros/latex/contrib/l3kernel/l3int.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3intarray.dtx b/macros/latex/contrib/l3kernel/l3intarray.dtx
index 8dc10287a8..5cdfd9c81c 100644
--- a/macros/latex/contrib/l3kernel/l3intarray.dtx
+++ b/macros/latex/contrib/l3kernel/l3intarray.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3kernel-functions.dtx b/macros/latex/contrib/l3kernel/l3kernel-functions.dtx
index ddf3ed637e..39e4a93c7c 100644
--- a/macros/latex/contrib/l3kernel/l3kernel-functions.dtx
+++ b/macros/latex/contrib/l3kernel/l3kernel-functions.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3keys.dtx b/macros/latex/contrib/l3kernel/l3keys.dtx
index 4650975217..4d3efad154 100644
--- a/macros/latex/contrib/l3kernel/l3keys.dtx
+++ b/macros/latex/contrib/l3kernel/l3keys.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3legacy.dtx b/macros/latex/contrib/l3kernel/l3legacy.dtx
index dfb25ad07b..5002449bc7 100644
--- a/macros/latex/contrib/l3kernel/l3legacy.dtx
+++ b/macros/latex/contrib/l3kernel/l3legacy.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3luatex.dtx b/macros/latex/contrib/l3kernel/l3luatex.dtx
index e25d630c23..1b347b50fe 100644
--- a/macros/latex/contrib/l3kernel/l3luatex.dtx
+++ b/macros/latex/contrib/l3kernel/l3luatex.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3msg.dtx b/macros/latex/contrib/l3kernel/l3msg.dtx
index e2c93d9504..f223686e5a 100644
--- a/macros/latex/contrib/l3kernel/l3msg.dtx
+++ b/macros/latex/contrib/l3kernel/l3msg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3names.dtx b/macros/latex/contrib/l3kernel/l3names.dtx
index edf14241cd..8c1dc438bb 100644
--- a/macros/latex/contrib/l3kernel/l3names.dtx
+++ b/macros/latex/contrib/l3kernel/l3names.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3news.pdf b/macros/latex/contrib/l3kernel/l3news.pdf
index dcf940275b..7d4d69e615 100644
--- a/macros/latex/contrib/l3kernel/l3news.pdf
+++ b/macros/latex/contrib/l3kernel/l3news.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news01.pdf b/macros/latex/contrib/l3kernel/l3news01.pdf
index d9bb9779a1..c75a768729 100644
--- a/macros/latex/contrib/l3kernel/l3news01.pdf
+++ b/macros/latex/contrib/l3kernel/l3news01.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news02.pdf b/macros/latex/contrib/l3kernel/l3news02.pdf
index f8a160c4c0..2f8dc58422 100644
--- a/macros/latex/contrib/l3kernel/l3news02.pdf
+++ b/macros/latex/contrib/l3kernel/l3news02.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news03.pdf b/macros/latex/contrib/l3kernel/l3news03.pdf
index f33e9649cd..d6d820d1c3 100644
--- a/macros/latex/contrib/l3kernel/l3news03.pdf
+++ b/macros/latex/contrib/l3kernel/l3news03.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news04.pdf b/macros/latex/contrib/l3kernel/l3news04.pdf
index 93700a72d3..ce0b3c0887 100644
--- a/macros/latex/contrib/l3kernel/l3news04.pdf
+++ b/macros/latex/contrib/l3kernel/l3news04.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news05.pdf b/macros/latex/contrib/l3kernel/l3news05.pdf
index b922a0083f..bfef40d37c 100644
--- a/macros/latex/contrib/l3kernel/l3news05.pdf
+++ b/macros/latex/contrib/l3kernel/l3news05.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news06.pdf b/macros/latex/contrib/l3kernel/l3news06.pdf
index adfe4c942b..7997c8bb23 100644
--- a/macros/latex/contrib/l3kernel/l3news06.pdf
+++ b/macros/latex/contrib/l3kernel/l3news06.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news07.pdf b/macros/latex/contrib/l3kernel/l3news07.pdf
index 4c668945bb..53e6690730 100644
--- a/macros/latex/contrib/l3kernel/l3news07.pdf
+++ b/macros/latex/contrib/l3kernel/l3news07.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news08.pdf b/macros/latex/contrib/l3kernel/l3news08.pdf
index b536ddde2b..bcff1d2ee8 100644
--- a/macros/latex/contrib/l3kernel/l3news08.pdf
+++ b/macros/latex/contrib/l3kernel/l3news08.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news09.pdf b/macros/latex/contrib/l3kernel/l3news09.pdf
index 02d2819fd5..aaa5bb0779 100644
--- a/macros/latex/contrib/l3kernel/l3news09.pdf
+++ b/macros/latex/contrib/l3kernel/l3news09.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news10.pdf b/macros/latex/contrib/l3kernel/l3news10.pdf
index 0a1f80cd25..9ba010ae61 100644
--- a/macros/latex/contrib/l3kernel/l3news10.pdf
+++ b/macros/latex/contrib/l3kernel/l3news10.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news11.pdf b/macros/latex/contrib/l3kernel/l3news11.pdf
index de7dfb6e2c..964089be24 100644
--- a/macros/latex/contrib/l3kernel/l3news11.pdf
+++ b/macros/latex/contrib/l3kernel/l3news11.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news12.pdf b/macros/latex/contrib/l3kernel/l3news12.pdf
index 60fb03748a..b5daf9527a 100644
--- a/macros/latex/contrib/l3kernel/l3news12.pdf
+++ b/macros/latex/contrib/l3kernel/l3news12.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3pdf.dtx b/macros/latex/contrib/l3kernel/l3pdf.dtx
index eacb62eb6f..6e08bd818f 100644
--- a/macros/latex/contrib/l3kernel/l3pdf.dtx
+++ b/macros/latex/contrib/l3kernel/l3pdf.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -489,7 +489,7 @@
% \begin{macro}{\pdf_pagesize_gset:nn}
% \begin{macrocode}
\cs_new_protected:Npn \pdf_pagesize_gset:nn #1#2
- { \@@_pagesize_gset:nn {#1} {#2} }
+ { \@@_backend_pagesize_gset:nn {#1} {#2} }
% \end{macrocode}
% \end{macro}
%
diff --git a/macros/latex/contrib/l3kernel/l3prefixes.pdf b/macros/latex/contrib/l3kernel/l3prefixes.pdf
index 7d03b58f92..05cf98d3b6 100644
--- a/macros/latex/contrib/l3kernel/l3prefixes.pdf
+++ b/macros/latex/contrib/l3kernel/l3prefixes.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3prg.dtx b/macros/latex/contrib/l3kernel/l3prg.dtx
index 86e1e0e339..ebedfa06c0 100644
--- a/macros/latex/contrib/l3kernel/l3prg.dtx
+++ b/macros/latex/contrib/l3kernel/l3prg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3prop.dtx b/macros/latex/contrib/l3kernel/l3prop.dtx
index dc611ae192..e83bff42eb 100644
--- a/macros/latex/contrib/l3kernel/l3prop.dtx
+++ b/macros/latex/contrib/l3kernel/l3prop.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3quark.dtx b/macros/latex/contrib/l3kernel/l3quark.dtx
index 2f52ef9d1e..8420062530 100644
--- a/macros/latex/contrib/l3kernel/l3quark.dtx
+++ b/macros/latex/contrib/l3kernel/l3quark.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3regex.dtx b/macros/latex/contrib/l3kernel/l3regex.dtx
index 09d078cd54..416c383acd 100644
--- a/macros/latex/contrib/l3kernel/l3regex.dtx
+++ b/macros/latex/contrib/l3kernel/l3regex.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3seq.dtx b/macros/latex/contrib/l3kernel/l3seq.dtx
index 47e48b2e1e..a1d377e929 100644
--- a/macros/latex/contrib/l3kernel/l3seq.dtx
+++ b/macros/latex/contrib/l3kernel/l3seq.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3skip.dtx b/macros/latex/contrib/l3kernel/l3skip.dtx
index 36e70ce35a..0be87af099 100644
--- a/macros/latex/contrib/l3kernel/l3skip.dtx
+++ b/macros/latex/contrib/l3kernel/l3skip.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3sort.dtx b/macros/latex/contrib/l3kernel/l3sort.dtx
index e92a11b528..544122ad45 100644
--- a/macros/latex/contrib/l3kernel/l3sort.dtx
+++ b/macros/latex/contrib/l3kernel/l3sort.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3str-convert.dtx b/macros/latex/contrib/l3kernel/l3str-convert.dtx
index 09539a13de..c7d3483b5e 100644
--- a/macros/latex/contrib/l3kernel/l3str-convert.dtx
+++ b/macros/latex/contrib/l3kernel/l3str-convert.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3str.dtx b/macros/latex/contrib/l3kernel/l3str.dtx
index c9229b83b5..3e04178113 100644
--- a/macros/latex/contrib/l3kernel/l3str.dtx
+++ b/macros/latex/contrib/l3kernel/l3str.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3styleguide.pdf b/macros/latex/contrib/l3kernel/l3styleguide.pdf
index 885afe83a1..f65fc76303 100644
--- a/macros/latex/contrib/l3kernel/l3styleguide.pdf
+++ b/macros/latex/contrib/l3kernel/l3styleguide.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3styleguide.tex b/macros/latex/contrib/l3kernel/l3styleguide.tex
index 248f40b448..6a57059d33 100644
--- a/macros/latex/contrib/l3kernel/l3styleguide.tex
+++ b/macros/latex/contrib/l3kernel/l3styleguide.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-03-30}
+\date{Released 2023-04-19}
\begin{document}
diff --git a/macros/latex/contrib/l3kernel/l3syntax-changes.pdf b/macros/latex/contrib/l3kernel/l3syntax-changes.pdf
index 9c8164ddb4..f76ea7a1cb 100644
--- a/macros/latex/contrib/l3kernel/l3syntax-changes.pdf
+++ b/macros/latex/contrib/l3kernel/l3syntax-changes.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3syntax-changes.tex b/macros/latex/contrib/l3kernel/l3syntax-changes.tex
index 383af6cc44..1a018c7fc1 100644
--- a/macros/latex/contrib/l3kernel/l3syntax-changes.tex
+++ b/macros/latex/contrib/l3kernel/l3syntax-changes.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-03-30}
+\date{Released 2023-04-19}
\newcommand{\TF}{\textit{(TF)}}
diff --git a/macros/latex/contrib/l3kernel/l3sys.dtx b/macros/latex/contrib/l3kernel/l3sys.dtx
index 23115dde50..0ac5430031 100644
--- a/macros/latex/contrib/l3kernel/l3sys.dtx
+++ b/macros/latex/contrib/l3kernel/l3sys.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3term-glossary.pdf b/macros/latex/contrib/l3kernel/l3term-glossary.pdf
index a9bd06e070..6441ffcb73 100644
--- a/macros/latex/contrib/l3kernel/l3term-glossary.pdf
+++ b/macros/latex/contrib/l3kernel/l3term-glossary.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3term-glossary.tex b/macros/latex/contrib/l3kernel/l3term-glossary.tex
index ffa4204e75..1394f75588 100644
--- a/macros/latex/contrib/l3kernel/l3term-glossary.tex
+++ b/macros/latex/contrib/l3kernel/l3term-glossary.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-03-30}
+\date{Released 2023-04-19}
\newcommand{\TF}{\textit{(TF)}}
diff --git a/macros/latex/contrib/l3kernel/l3text-case.dtx b/macros/latex/contrib/l3kernel/l3text-case.dtx
index b93243040d..a71bbc38f4 100644
--- a/macros/latex/contrib/l3kernel/l3text-case.dtx
+++ b/macros/latex/contrib/l3kernel/l3text-case.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -153,7 +153,7 @@
% \begin{macro}[EXP]{\@@_change_case_exclude:nnNw}
% \begin{macro}[EXP]{\@@_change_case_exclude:nnNnn}
% \begin{macro}[EXP]{\@@_change_case_replace:nnN}
-% \begin{macro}[EXP]{\@@_change_case_replace:nnn}
+% \begin{macro}[EXP]{\@@_change_case_replace:nnn, \@@_change_case_replace:vnn}
% \begin{macro}[EXP]{\@@_change_case_switch:nnN}
% \begin{macro}[EXP]
% {
@@ -172,6 +172,14 @@
% \begin{macro}[EXP]{\@@_change_case_letterlike:nnnnN}
% \begin{macro}[EXP]
% {
+% \@@_change_case_custom_lower:nnn ,
+% \@@_change_case_custom_title:nnn ,
+% \@@_change_case_custom_upper:nnn ,
+% \@@_change_case_custom_titleonly:nnn
+% }
+% \begin{macro}[EXP]{\@@_change_case_custom:nnn}
+% \begin{macro}[EXP]
+% {
% \@@_change_case_codepoint_lower:nnn ,
% \@@_change_case_codepoint_upper:nnn ,
% \@@_change_case_codepoint_title:nnn ,
@@ -439,7 +447,7 @@
{ \@@_change_case_exclude:nnN {#1} {#2} }
{
\@@_codepoint_process:nN
- { \use:c { @@_change_case_codepoint_ #1 :nnn } {#1} {#2} }
+ { \use:c { @@_change_case_custom_ #1 :nnn } {#1} {#2} }
}
#3
}
@@ -497,13 +505,14 @@
{
\cs_if_exist:cTF { l_@@_case_ \token_to_str:N #3 _tl }
{
- \exp_args:Nv \@@_change_case_replace:nnn
+ \@@_change_case_replace:vnn
{ l_@@_case_ \token_to_str:N #3 _tl } {#1} {#2}
}
{ \@@_change_case_switch:nnN {#1} {#2} #3 }
}
\cs_new:Npn \@@_change_case_replace:nnn #1#2#3
{ \@@_change_case_loop:nnw {#2} {#3} #1 }
+\cs_generate_variant:Nn \@@_change_case_replace:nnn { v }
% \end{macrocode}
% Allow for manually-controlled case switching.
% \begin{macrocode}
@@ -570,6 +579,42 @@
}
}
% \end{macrocode}
+% Check for a customised codepoint result.
+% \begin{macrocode}
+\cs_new:Npn \@@_change_case_custom_lower:nnn #1#2#3
+ {
+ \@@_change_case_custom:nnnnn {#1} {#2} {#3} {#1}
+ { \use:c { @@_change_case_codepoint_ #1 :nnn } {#1} {#2} {#3} }
+ }
+\cs_new_eq:NN \@@_change_case_custom_upper:nnn
+ \@@_change_case_custom_lower:nnn
+\cs_new:Npn \@@_change_case_custom_title:nnn #1#2#3
+ {
+ \@@_change_case_custom:nnnnn { title } {#2} {#3} {#1}
+ {
+ \@@_change_case_custom:nnnnn { upper } {#2} {#3} {#1}
+ { \use:c { @@_change_case_codepoint_ #1 :nnn } {#1} {#2} {#3} }
+ }
+ }
+\cs_new_eq:NN \@@_change_case_custom_titleonly:nnn
+ \@@_change_case_custom_title:nnn
+\cs_new:Npn \@@_change_case_custom:nnnnn #1#2#3#4#5
+ {
+ \tl_if_exist:cTF { l_@@_ #1 case _ \tl_to_str:n {#3} _ #2 _tl }
+ {
+ \@@_change_case_replace:vnn
+ { l_@@_ #1 case _ \tl_to_str:n {#3} _ #2 _tl } {#4} {#2}
+ }
+ {
+ \tl_if_exist:cTF { l_@@_ #1 case _ \tl_to_str:n {#3} _tl }
+ {
+ \@@_change_case_replace:vnn
+ { l_@@_ #1 case _ \tl_to_str:n {#3} _tl } {#4} {#2}
+ }
+ {#5}
+ }
+ }
+% \end{macrocode}
% For upper- and lowercase changes, once we get to this stage there are only
% a couple of questions remaining: is there a language-specific mapping and
% is there the special case of a terminal sigma. If not, then we pass to
@@ -806,6 +851,8 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
+% \end{macro}
%
% \begin{macro}{\text_declare_case_equivalent:Nn}
% Create equivalents to allow replacement.
@@ -818,6 +865,62 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}
+% {
+% \text_declare_lowercase_mapping:nn ,
+% \text_declare_titlecase_mapping:nn ,
+% \text_declare_uppercase_mapping:nn
+% }
+% \begin{macro}
+% {\@@_declare_case_mapping:nnn, \@@_declare_case_mapping_aux:nnn}
+% \begin{macro}
+% {
+% \text_declare_lowercase_mapping:nnn ,
+% \text_declare_titlecase_mapping:nnn ,
+% \text_declare_uppercase_mapping:nnn
+% }
+% \begin{macro}
+% {\@@_declare_case_mapping:nnnn, \@@_declare_case_mapping_aux:nnnn}
+% Codepoint customisation.
+% \begin{macrocode}
+\cs_new_protected:Npn \text_declare_lowercase_mapping:nn #1#2
+ { \@@_declare_case_mapping:nnn { lower } {#1} {#2} }
+\cs_new_protected:Npn \text_declare_titlecase_mapping:nn #1#2
+ { \@@_declare_case_mapping:nnn { title } {#1} {#2} }
+\cs_new_protected:Npn \text_declare_uppercase_mapping:nn #1#2
+ { \@@_declare_case_mapping:nnn { upper } {#1} {#2} }
+\cs_new_protected:Npn \@@_declare_case_mapping:nnn #1#2#3
+ {
+ \exp_args:Ne \@@_declare_case_mapping_aux:nnn
+ { \codepoint_str_generate:n {#2} } {#1} {#3}
+ }
+\cs_new_protected:Npn \@@_declare_case_mapping_aux:nnn #1#2#3
+ {
+ \tl_clear_new:c { l_@@_ #2 case _ #1 _tl }
+ \tl_set:cn { l_@@_ #2 case _ #1 _ tl } {#3}
+ }
+\cs_new_protected:Npn \text_declare_lowercase_mapping:nnn #1#2#3
+ { \@@_declare_case_mapping:nnnn { lower } {#1} {#2} {#3} }
+\cs_new_protected:Npn \text_declare_titlecase_mapping:nnn #1#2#3
+ { \@@_declare_case_mapping:nnnn { title } {#1} {#2} {#3} }
+\cs_new_protected:Npn \text_declare_uppercase_mapping:nnn #1#2#3
+ { \@@_declare_case_mapping:nnnn { upper } {#1} {#2} {#3} }
+\cs_new_protected:Npn \@@_declare_case_mapping:nnnn #1#2#3#4
+ {
+ \exp_args:Ne \@@_declare_case_mapping_aux:nnnn
+ { \codepoint_str_generate:n {#2} } {#1} {#3} {#4}
+ }
+\cs_new_protected:Npn \@@_declare_case_mapping_aux:nnnn #1#2#3#4
+ {
+ \tl_clear_new:c { l_@@_ #2 case _ #1 _ #3 _tl }
+ \tl_set:cn { l_@@_ #2 case _ #1 _ #3 _ tl } {#4}
+ }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
% \begin{macro}{\text_case_switch:nnnn}
% \begin{macro}{\@@_case_switch_marker:}
% Set up the mechanism for manual case switching.
@@ -2038,6 +2141,17 @@
}
% \end{macrocode}
%
+% A few adjustments to case mapping for combining chars: these are not needed
+% for the Unicode engines
+% \begin{macrocode}
+\bool_lazy_or:nnF
+ { \sys_if_engine_luatex_p: }
+ { \sys_if_engine_xetex_p: }
+ {
+ \text_declare_uppercase_mapping:nn { "01F0 } { \v { J } }
+ }
+% \end{macrocode}
+%
% \begin{macrocode}
%</package>
% \end{macrocode}
diff --git a/macros/latex/contrib/l3kernel/l3text-map.dtx b/macros/latex/contrib/l3kernel/l3text-map.dtx
index 8d35064933..c30686b6c3 100644
--- a/macros/latex/contrib/l3kernel/l3text-map.dtx
+++ b/macros/latex/contrib/l3kernel/l3text-map.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3text-purify.dtx b/macros/latex/contrib/l3kernel/l3text-purify.dtx
index 247dd7a0c3..a1d3413c60 100644
--- a/macros/latex/contrib/l3kernel/l3text-purify.dtx
+++ b/macros/latex/contrib/l3kernel/l3text-purify.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3text.dtx b/macros/latex/contrib/l3kernel/l3text.dtx
index eb5d2bede7..40c8e5a6a2 100644
--- a/macros/latex/contrib/l3kernel/l3text.dtx
+++ b/macros/latex/contrib/l3kernel/l3text.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
@@ -102,7 +102,7 @@
% }
% \begin{syntax}
% \cs{text_uppercase:n} \Arg{tokens}
-% \cs{text_uppercase:nn} \Arg{language} \Arg{tokens}
+% \cs{text_uppercase:nn} \Arg{BCP-47} \Arg{tokens}
% \end{syntax}
% Takes user input \meta{text} first applies \cs{text_expand}, then
% transforms the case of character tokens as specified by the
@@ -145,9 +145,9 @@
% \texttt{SpecialCasing.txt}. For \pTeX{}, only the ASCII range is
% covered as the engine treats input outside of this range as east Asian.
%
-% Language-sensitive conversions are enabled using the \meta{language}
+% Locale-sensitive conversions are enabled using the \meta{BCP-47}
% argument, and follow Unicode Consortium guidelines. Currently, the
-% languages recognised for special handling are as follows.
+% locale strings recognized for special handling are as follows.
% \begin{itemize}
% \item Armenian (\texttt{hy} and \texttt{hy-x-yiwn})
% The setting \texttt{hy} maps the codepoint U+0587, the ligature of
@@ -172,7 +172,6 @@
% which converts the \textit{ypogegrammeni} (subscript muted iota)
% to capital iota when uppercasing: the standard version retains the
% subscript versions.
-% capital iota.
% \item Lithuanian (\texttt{lt}).
% The lowercase letters i and j should retain a dot above when the
% accents grave, acute or tilde are present. This is implemented for
@@ -181,7 +180,7 @@
% combining dot is removed when uppercasing in these cases. Note that
% \emph{only} the accents used in Lithuanian are covered: the behaviour
% of other accents are not modified.
-% \item Medieval Latin (\texttt{la-xmedieval}).
+% \item Medieval Latin (\texttt{la-x-medieval}).
% The characters |u| and |V| are interchanged on case changing.
% \item Dutch (\texttt{nl}).
% Capitalisation of \texttt{ij} at the beginning of titlecased
@@ -217,6 +216,26 @@
% \meta{cmd} (a single token) is encountered during case changing.
% \end{function}
%
+% \begin{function}[added = 2023-04-11]
+% {
+% \text_declare_lowercase_mapping:nn ,
+% \text_declare_lowercase_mapping:nnn ,
+% \text_declare_titlecase_mapping:nn ,
+% \text_declare_titlecase_mapping:nnn ,
+% \text_declare_uppercase_mapping:nn ,
+% \text_declare_uppercase_mapping:nnn
+% }
+% \begin{syntax}
+% \cs{text_declare_lowercase_mapping:nn} \Arg{codeppoint} \Arg{replacement}
+% \cs{text_declare_lowercase_mapping:nnn} \Arg{codeppoint} \Arg{BCP-47} \Arg{replacement}
+% \end{syntax}
+% Declares that the \meta{replacement} tokens should be used when case mapping
+% the \meta{codepoint}, rather than the standard mapping given in the
+% Unicode data files. The \texttt{nnn} version takes a BCP-47 tag, which
+% can be used to specify that the customisation only applies to that
+% locale.
+% \end{function}
+%
% \begin{function}[EXP, added = 2022-07-04]{\text_case_switch:nnnn}
% \begin{syntax}
% \cs{text_case_switch:nnnn} \Arg{normal} \Arg{upper} \Arg{lower} \Arg{title}
diff --git a/macros/latex/contrib/l3kernel/l3tl-analysis.dtx b/macros/latex/contrib/l3kernel/l3tl-analysis.dtx
index 8a281accd7..c64b79604b 100644
--- a/macros/latex/contrib/l3kernel/l3tl-analysis.dtx
+++ b/macros/latex/contrib/l3kernel/l3tl-analysis.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3tl.dtx b/macros/latex/contrib/l3kernel/l3tl.dtx
index 70f545d0cf..a21d18fd93 100644
--- a/macros/latex/contrib/l3kernel/l3tl.dtx
+++ b/macros/latex/contrib/l3kernel/l3tl.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3token.dtx b/macros/latex/contrib/l3kernel/l3token.dtx
index ad94a32847..710fcab68b 100644
--- a/macros/latex/contrib/l3kernel/l3token.dtx
+++ b/macros/latex/contrib/l3kernel/l3token.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3unicode.dtx b/macros/latex/contrib/l3kernel/l3unicode.dtx
index 664a788f4f..bd78db18ba 100644
--- a/macros/latex/contrib/l3kernel/l3unicode.dtx
+++ b/macros/latex/contrib/l3kernel/l3unicode.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-03-30}
+% \date{Released 2023-04-19}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/source3.pdf b/macros/latex/contrib/l3kernel/source3.pdf
index 0caa972f9f..10f47a1fd3 100644
--- a/macros/latex/contrib/l3kernel/source3.pdf
+++ b/macros/latex/contrib/l3kernel/source3.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/source3.tex b/macros/latex/contrib/l3kernel/source3.tex
index ba0668514c..ea8d5af892 100644
--- a/macros/latex/contrib/l3kernel/source3.tex
+++ b/macros/latex/contrib/l3kernel/source3.tex
@@ -53,7 +53,7 @@ for those people who are interested.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-03-30}
+\date{Released 2023-04-19}
\pagenumbering{roman}
\maketitle
diff --git a/macros/latex/contrib/nicematrix/nicematrix-french.pdf b/macros/latex/contrib/nicematrix/nicematrix-french.pdf
index a054c4fadf..efad4b58ef 100644
--- a/macros/latex/contrib/nicematrix/nicematrix-french.pdf
+++ b/macros/latex/contrib/nicematrix/nicematrix-french.pdf
Binary files differ
diff --git a/macros/latex/contrib/nicematrix/nicematrix-french.tex b/macros/latex/contrib/nicematrix/nicematrix-french.tex
index 4ec05bce2c..920c184433 100644
--- a/macros/latex/contrib/nicematrix/nicematrix-french.tex
+++ b/macros/latex/contrib/nicematrix/nicematrix-french.tex
@@ -20,7 +20,7 @@
% On utilise \MakeShortVerb de shortvrb et pas \DefineShortVerb de fancyvrb
% car on ne veut pas que le contenu des petits éléments en verbatim soit colorié
-% en grise
+% en gris
\usepackage{shortvrb}
\MakeShortVerb{\|}
@@ -63,6 +63,12 @@
\setlength{\parindent}{0pt}
\skip \footins = 2 \bigskipamount
+
+\NewDocumentCommand{\Definition}{m}
+ {{\setlength{\fboxsep}{1pt}\colorbox{gray!20}{\ttfamily \vphantom{gl}#1}}}
+
+
+
\begin{document}
\VerbatimFootnotes
@@ -488,9 +494,6 @@ $\begin{bNiceArray}{cw{c}{1cm}c|c}[margin]
0 & \Cdots& 0 & 0
\end{bNiceArray}$
-\NewDocumentCommand{\Definition}{m}
- {{\setlength{\fboxsep}{1pt}\colorbox{gray!20}{\ttfamily \vphantom{gl}#1}}}
-
\interitem
La commande |\Block| accepte en premier argument optionnel (entre crochets) une
@@ -809,7 +812,6 @@ Rang & \Block[C]{1-3}{Premier groupe} & & & \Block{1-3}{Deuxième groupe} \\
\subsection{Positionnement vertical du contenu des blocs}
-\colorbox{yellow!50}{\textbf{Nouveau 6.14}}
Concernant le positionnement vertical, la commande |\Block| admet les clés
|v-center|\footnote{Cette clé ne peut être nommée \texttt{c} car la clé
@@ -827,11 +829,13 @@ ligne de base de la première rangée concernée par le bloc.
|\\|) est alignée avec la ligne de base de la dernière des rangées du tableau
impliquées dans le bloc.
-\item Avec la clé |T|, le contenu du bloc est calé vers le haut (avec une marge
-égale au paramètre |inner ysep| de PGF/Tikz --- que l'on peut régler avec |\pgfset|).
+\item Avec la clé |T|, le contenu du bloc est calé vers le haut.
+
+\colorbox{yellow!50}{Modification 6.18}\enskip Il n'y a plus de marge verticale.
+Néanmoins, le contenu du bloc est (toujours) composé en interne dans une |{minipage}|, un
+|{tabular}| ou un |{array}|, ce qui fait qu'il y souvent déjà une marge.
-\item Avec la clé |B|, le contenu du bloc est calé vers le bas (avec une marge
-égale au paramètre |inner ysep| de PGF/Tikz).
+\item Avec la clé |B|, le contenu du bloc est calé vers le bas.
\end{itemize}
Quand aucune clé n'est donnée, c'est la clé |v-center| qui s'applique (sauf pour
@@ -850,19 +854,19 @@ les blocs mono-rangée).
\begin{BVerbatim}[baseline=c,boxwidth=10cm]
\begin{NiceTabular}{ccc}
\Block[fill=red!10,~emphase#t@,l]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
\end{BVerbatim}
\begin{NiceTabular}{ccc}
\Block[fill=red!10,t,l]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
@@ -871,19 +875,19 @@ text & text \\
\begin{BVerbatim}[baseline=c,boxwidth=10cm]
\begin{NiceTabular}{ccc}
\Block[fill=red!10,~emphase#b@,r]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
\end{BVerbatim}
\begin{NiceTabular}{ccc}
\Block[fill=red!10,b,r]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
@@ -891,19 +895,19 @@ text & text \\
\begin{BVerbatim}[baseline=c,boxwidth=10cm]
\begin{NiceTabular}{ccc}
\Block[fill=red!10,~emphase#T@,l]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
\end{BVerbatim}
\begin{NiceTabular}{ccc}
\Block[fill=red!10,T,l]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
@@ -912,19 +916,19 @@ text & text \\
\begin{BVerbatim}[baseline=c,boxwidth=10cm]
\begin{NiceTabular}{ccc}
\Block[fill=red!10,~emphase#B@,r]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
\end{BVerbatim}
\begin{NiceTabular}{ccc}
\Block[fill=red!10,B,r]{4-2}{two\\lines}
- & & \Huge first\\
- & & second \\
- & & third \\
- & & fourth \\
+ & & \Huge Un\\
+ & & deux \\
+ & & trois \\
+ & & \Huge quatre \\
text & text \\
\end{NiceTabular}
@@ -1207,6 +1211,12 @@ arum & iris & jacinthe & muguet
\end{NiceTabular}
\end{center}
+\medskip
+On remarquera que quand la clé |rounded-corners| est utilisée pour
+l'environnement |{NiceTabular}|, la clé |hvlines| trace des coins
+arrondis pour le tableau : cf. partie~\ref{tabular-rounded-corners},
+p.~\pageref{tabular-rounded-corners}.
+
\medskip
La clé |hvlines-except-borders| est similaire à la clé |hvlines| mais ne trace
@@ -1260,9 +1270,12 @@ A & A & A & A & A & A \\
\medskip
-Quand la clé |corners| est utilisée, \pkg{nicematrix} calcule les coins vides et
-ces coins sont alors pris en compte par les outils de tracés de filets (les
-filets ne seront pas tracés dans ces coins vides).
+Quand la clé |corners|\footnote{La clé \texttt{corners} dont on parle là
+ n'a pas de rapport direct avec la clé \texttt{rounded-corners},
+ décrite dans la partie \ref{tabular-rounded-corners},
+ p.~\pageref{tabular-rounded-corners}.} est utilisée, \pkg{nicematrix} calcule
+les coins vides et ces coins sont alors pris en compte par les outils de tracés
+de filets (les filets ne seront pas tracés dans ces coins vides).
\medskip
\begin{BVerbatim}[boxwidth=11cm,baseline=c]
@@ -1319,7 +1332,7 @@ doivent être séparés par des virgules).
\end{NiceTabular}
-\medskip
+\bigskip
$\triangleright$ Les coins sont également pris en compte par les outils de
coloriage dans le |\CodeBefore|. Ces outils ne colorient pas les cases qui sont
dans les coins (cf.~p.~\pageref{color-in-code-before}).
@@ -1664,21 +1677,37 @@ De nouvelles commandes sont disponibles dans ce |\CodeBefore|: |\cellcolor|,
p.~\pageref{nodes-i}.}
\label{code-before}
-\medskip
-Toutes ces commandes acceptent un argument optionnel (entre crochets et en
-première position) qui est le modèle colorimétrique pour la spécification des
-couleurs.
\medskip
Ces commandes ne colorient pas les cases qui se trouvent dans les «coins» si la
clé |corners| a été utilisée. La description de cette clé a été faite
p.~\pageref{corners}.
+\medskip
+Ces commandes respectent les coins arrondis si la clé |rounded-corners| (décrite
+à la partie \ref{tabular-rounded-corners}, p.~\pageref{tabular-rounded-corners})
+a été utilisée.
+
+\medskip
+Toutes ces commandes acceptent un argument optionnel, entre crochets et en
+première position. Cet argument optionel peut contenir deux éléments (séparés
+par une virgule) :
+\begin{itemize}
+\item le modèle colorimétrique (|RGB|, |rgb|, |HTML|, etc.) comme spécifié par
+l'extension \pkg{xcolor} ;
+\item \colorbox{yellow!50}{\textbf{Nouveau 6.18}}
+
+une spécification d'opacité selon la forme \texttt{opacity = \textsl{valeur}}.
+\end{itemize}
+
+
+\medskip
+On détaille maintenant ces différentes commandes.
\medskip
\begin{itemize}
-\item La commande |\cellcolor| tient son nom de la commande |\cellcolor| de
-\pkg{colortbl}.
+\item La commande \Definition{\textbackslash cellcolor} tient son nom de la
+commande |\cellcolor| de \pkg{colortbl}.
Elle prend en arguments obligatoires une couleur et une liste de cases sous le
format $i$-$j$ où $i$ est le numéro de ligne et $j$ le numéro de colonne. Malgré
@@ -1710,9 +1739,9 @@ h & i & j \\
\medskip
-\item La commande |\rectanglecolor| prend trois arguments obligatoires. Le
-premier est la couleur, les deux suivants fournissent la case en haut à gauche
-et la case en bas à droite du rectangle.
+\item La commande \Definition{\textbackslash rectanglecolor} prend trois
+arguments obligatoires. Le premier est la couleur, les deux suivants fournissent
+la case en haut à gauche et la case en bas à droite du rectangle.
\medskip
\begin{scope}
@@ -1739,15 +1768,16 @@ h & i & j \\
\medskip
-\item La commande |\arraycolor| prend en argument obligatoire une couleur et
-colorie tout le tableau (sauf les éventuelles rangées et colonnes extérieures:
-cf.~p.~\pageref{exterior}) avec cette couleur. Ce n'est qu'un cas particulier de
-la commande |\rectanglecolor|.
+\item La commande \Definition{\textbackslash arraycolor} prend en argument
+obligatoire une couleur et colorie tout le tableau (sauf les éventuelles rangées
+et colonnes extérieures: cf.~p.~\pageref{exterior}) avec cette couleur. Ce n'est
+qu'un cas particulier de la commande |\rectanglecolor|.
\medskip
\item \label{chessboardcolors}%
-La commande |\chessboardcolors| prend en arguments obligatoires deux
-couleurs et colorie les cases en quinconces avec les deux couleurs.
+La commande \Definition{\textbackslash chessboardcolors} prend en arguments
+obligatoires deux couleurs et colorie les cases en quinconces avec les deux
+couleurs.
\medskip
\begin{scope}
@@ -1778,11 +1808,11 @@ droite (cf. p.~\pageref{columns-type}).
\medskip
-\item La commande |\rowcolor| doit son nom à la commande |\rowcolor| de
-\pkg{colortbl}. Son premier argument obligatoire est la couleur et le deuxième
-est une liste de numéros de rangées ou bien d'intervalles de rangées sous la
-forme $a$-$b$ (un intervalle de la forme $a$- représente toutes les rangées à
-partir de la rangée~$a$).
+\item La commande \Definition{\textbackslash rowcolor} doit son nom à la
+commande |\rowcolor| de \pkg{colortbl}. Son premier argument obligatoire est la
+couleur et le deuxième est une liste de numéros de rangées ou bien d'intervalles
+de rangées sous la forme $a$-$b$ (un intervalle de la forme $a$- représente
+toutes les rangées à partir de la rangée~$a$).
\medskip
@@ -1826,13 +1856,14 @@ a_{10} & b_{10} & c_{10} \\
\medskip
-\item La commande |\columncolor| doit son nom à la commande |\columncolor| de
-\pkg{colortbl}. Sa syntaxe est similaire à celle de |\rowcolor|.
+\item La commande \Definition{\textbackslash columncolor} doit son nom à la
+commande |\columncolor| de \pkg{colortbl}. Sa syntaxe est similaire à celle de
+|\rowcolor|.
\medskip
-\item La commande |\rowcolors| (avec un \emph{s}) doit son nom à la commande
-|\rowcolors| de \pkg{colortbl}. Le \emph{s} rappelle
-qu'il y a deux couleurs. Elle colorie alternativement les rangées avec les deux
+\item La commande \Definition{\textbackslash rowcolors} (avec un \emph{s}) doit
+son nom à la commande |\rowcolors| de \pkg{colortbl}. Le \emph{s} rappelle qu'il
+y a deux couleurs. Elle colorie alternativement les rangées avec les deux
couleurs à partir de la rangée dont le numéro est donné en premier argument
(obligatoire), comme le fait la commande |\rowcolors| de \pkg{xcolor}.
@@ -1843,10 +1874,10 @@ l'intervalle constitué de toutes les rangées du tableau à partir de la rangé
\medskip
-La commande |\rowcolors| accepte une liste de couples \textsl{clé=valeur} comme
-argument optionnel en dernière position (l'argument optionnel en première
-position correspond à l'espace colorimétrique). Les clés disponibles sont
-|cols|, |restart| et |respect-blocks|.
+La commande |\rowcolors| accepte une liste de couples
+\textsl{clé=valeur} comme argument optionnel en dernière position (l'argument
+optionnel en première position correspond à l'espace colorimétrique). Les clés
+disponibles sont |cols|, |restart| et |respect-blocks|.
\begin{itemize}
\item La clé |cols| décrit un ensemble de colonnes sur lesquelles portera
l'effet de |\rowcolors|. Cet ensemble de colonnes est une liste d'intervalles de
@@ -1940,11 +1971,11 @@ Henri & 14 \\
\medskip
-\item L'extension \pkg{nicematrix} propose aussi une commande |\rowlistcolors|.
-Cette commande généralise la commande |\rowcolors|: au lieu de prendre deux
-arguments successifs pour les couleurs, elle prend un seul argument qui est une
-liste de couleurs séparées par des virgules. Dans cette liste, le symbole |=|
-représente une couleur identique à la précédente.
+\item L'extension \pkg{nicematrix} propose aussi une commande \Definition{\textbackslash
+ rowlistcolors}. Cette commande généralise la commande |\rowcolors|: au lieu de
+prendre deux arguments successifs pour les couleurs, elle prend un seul argument
+qui est une liste de couleurs séparées par des virgules. Dans cette liste, le
+symbole |=| représente une couleur identique à la précédente.
\smallskip
\begin{BVerbatim}[boxwidth=10cm,baseline=c]
@@ -2189,7 +2220,7 @@ de même nom (cf. p.~\pageref{cell-space}).
\item La clé |rowcolor| fixe la couleur de fond et la clé |color| fixe la
couleur du texte.\footnote{La clé |color| utilise la commande |\color| mais
insère aussi une instruction |\leavevmode| devant. Cela évite un espace
- vertical parasite dans les cellules qui correspondent à des colonnes de type
+ vertical parasite dans les cases qui correspondent à des colonnes de type
|p|, |b|, |m|, |X| et |V| (qui débutent en mode vertical).}
\item La clé |bold| impose des caractères gras aux éléments de la rangée, qu'ils
@@ -2493,7 +2524,7 @@ Dans le cadre de
\pkg{nicematrix}, l'un des intérêts des colonnes de type |V| par rapport aux
colonnes de type |p|, |m| ou |b| est que, pour les cases d'une telle colonne,
le nœud PGF-TikZ créé pour le contenu d'une telle case a une largeur ajustée
-au contenu de la cellule en question : cf. p.~\pageref{node-V}.
+au contenu de la case en question : cf. p.~\pageref{node-V}.
\medskip
@@ -3655,7 +3686,7 @@ Comme on le voit, le tracé effectué par la commande |\MyDraw| est \emph{relati
Les commandes |\OverBrace| and |\UnderBrace| permettent de placer des accolades
horizontales sur une partie du tableau. Ces commandes prennent trois arguments :
\begin{itemize}
-\item le premier argument est le coin supérieur gauche du rectangle de cellules
+\item le premier argument est le coin supérieur gauche du rectangle de cases
impliquées dans l'accolade avec la syntaxe habituelle $i$|-|$j$ où $i$ est le
numéro de rangée et $j$ le numéro de colonne ;
@@ -4116,6 +4147,55 @@ utile l'utilisation de \pkg{threeparttable} en conjonction avec \pkg{nicematrix}
\section{Autres fonctionnalités}
+\subsection{La clé rounded-corners de \{NiceTabular\}}
+
+\label{tabular-rounded-corners}
+
+\colorbox{yellow!50}{\textbf{Nouveau 6.18}}\par\nobreak
+
+\smallskip
+La clé |rounded-corners| que l'on décrit maintenant n'a pas de lien direct avec
+la clé |corners| (qui sert à spécifier les «coins vides») décrite à la
+partie~\ref{corners}, p.~\pageref{corners}.
+
+\smallskip
+L'environnement |{NiceTabular}| propose une clé |rounded-corners| qui spécifie
+que le tableau devra avoir des coins arrondis avec le rayon égal à la valeur
+de cette clé (la valeur par défaut est 4~pt\footnote{Cette valeur est la valeur
+ par défaut des «\texttt{rounded corners}» de PGF/Tikz.}). Plus précisément,
+cette clé a deux effets que l'on décrit maintenant.
+\begin{itemize}
+\item Toutes les commandes de coloriage de cases, colonnes et rangées (que ce
+soit dans le |\CodeBefore| ou bien directement dans le tableau (quand la clé
+|colortbl-like| est utilisée) respectent ces coins arrondis pour le tableau.
+
+\item Quand la clé |hvlines| est utilisée, les filets extérieurs sont tracés
+avec des coins arrondis.
+\end{itemize}
+
+\bigskip
+\begin{BVerbatim}[baseline=c,boxwidth=9.5cm]
+\begin{NiceTabular}{ccc}[hvlines,~emphase#rounded-corners@]
+\CodeBefore
+ \rowcolor{red!15}{1}
+\Body
+ Nom & Prénom & Profession \\
+ Arvy & Jacques & Dentiste \\
+ Jalon & Amandine & Dentiste \\
+\end{NiceTabular}
+\end{BVerbatim}
+\begin{NiceTabular}{ccc}[hvlines,rounded-corners]
+\CodeBefore
+ \rowcolor{red!15}{1}
+\Body
+ Nom & Prénom & Profession \\
+ Arvy & Jacques & Dentiste \\
+ Jalon & Amandine & Dentiste \\
+ Sept & Huit & Neuf
+\end{NiceTabular}
+
+
+
\subsection{Commande \textbackslash ShowCellNames}
@@ -4168,7 +4248,7 @@ $\begin{pNiceArray}{ScW{c}{1cm}c}[nullify-dots,first-row]
\end{pNiceArray}$
\medskip
-En revanche, les colonnes |d| de l'extension \pkg{dcolumn} ne sont pas prises en
+En revanche, les colonnes |d| de l'extension \pkg{dcolumn} ne sont \emph{pas} prises en
charge par \pkg{nicematrix}.
@@ -4656,9 +4736,9 @@ contenir au moins une instruction comme |\pgfusepath|, |\pgfusepathqstroke|,
\label{node-V}
Quand l'extension \pkg{varwidth} est chargée, les colonnes de type |V| définies
par \pkg{varwidth} sont prises en charge par \pkg{nicematrix}. Il peut être
-intéressant de préciser que, pour une cellule située dans une colonne de type
-|V|, le nœud PGF-TikZ créé par \pkg{nicematrix} pour le contenu de cette cellule
-a une largeur ajustée au contenu de cette cellule. Cela est en contraste avec le
+intéressant de préciser que, pour une case située dans une colonne de type
+|V|, le nœud PGF-TikZ créé par \pkg{nicematrix} pour le contenu de cette case
+a une largeur ajustée au contenu de cette case. Cela est en contraste avec le
cas des colonnes de type |p|, |m| ou |b| dans lesquelles les nœuds ont toujours
une largeur égale à la largeur de la colonne. Dans l'exemple suivant, la
commande |\lipsum| est fournie par l'extension éponyme.
@@ -4920,7 +5000,7 @@ Voici un exemple d'utilisation de ces nœuds dans le |\CodeAfter|.
\hline
u_n &-& u_0 &=& nr \\
\CodeAfter
- \tikz[very thick, red, opacity=0.4,name suffix = -medium]
+ \tikz[very thick, red, opacity=0.4, name suffix = -medium]
\draw (1-1.north west) -- (2-3.south east)
(2-1.north west) -- (3-3.south east)
(3-1.north west) -- (4-3.south east)
@@ -5112,7 +5192,7 @@ compilation supplémentaire (car les instructions sont écrites dans le fichier
\medskip
\emph{Exemple} : On souhaite écrire une commande |\crossbox| qui barre en croix
-la cellule courante. Cette commande prendra en argument optionnel une liste de
+la case courante. Cette commande prendra en argument optionnel une liste de
couples \textsl{clé}-\textsl{valeur} qui sera passée à TikZ avant que la croix
ne soit tracée.
@@ -5559,32 +5639,6 @@ tous les filets sauf ceux sur les bords (qui sont, bien entendu, ajoutés par
\end{center}
-\vspace{1cm}
-Cet exemple montre l'utilisation de \pkg{nicematrix} en conjonction avec
-\pkg{tcolorbox}. Si on souhaite seulement faire un tableau avec un cadre
-extérieur aux coins arrondis, il n'est pas nécessaire d'utiliser \pkg{tcolorbox} :
-on peut tracer un |\Block| avec la commande |rounded-corners|.
-
-\medskip
-\begin{BVerbatim}[baseline=c,boxwidth=10.5cm]
-\begin{NiceTabular}{rcl}[hvlines-except-borders]
-\Block[draw,transparent,~emphase#rounded-corners@]{*-*}{}
- One & Two & Three \\
- Men & Mice & Lions \\
- Upper & Middle & Lower
-\end{NiceTabular}
-\end{BVerbatim}
-\begin{NiceTabular}{rcl}[hvlines-except-borders]
-\Block[draw,transparent,rounded-corners]{*-*}{}
- One & Two & Three \\
- Men & Mice & Lions \\
- Upper & Middle & Lower
-\end{NiceTabular}
-
-\medskip
-On a utilisé la clé |transparent| de manière à avoir les filets spécifiés par
-|hvlines-except-borders| tracés dans le bloc (par défaut, les filets ne sont
-pas tracés dans les blocs).
\subsection{Notes dans les tableaux}
@@ -6291,7 +6345,7 @@ On considère maintenant la matrice suivante. Si on veut surligner chaque rangé
de la matrice, on peut utiliser la technique précédente trois fois.
\begin{Verbatim}
-\[\begin{pNiceArray}{ccc}[last-col]
+\[\begin{pNiceArray}{ccc}[last-col, margin = 2pt]
\CodeBefore [create-cell-nodes]
\begin{tikzpicture}
~emphase# \node [highlight = (1-1) (1-3)] {} ;@
@@ -6305,7 +6359,7 @@ a & a & a & L_3
\end{pNiceArray}\]
\end{Verbatim}
-\[\begin{pNiceArray}{ccc}[last-col]
+\[\begin{pNiceArray}{ccc}[last-col, margin = 2pt]
\CodeBefore [create-cell-nodes]
\begin{tikzpicture}
\node [highlight = (1-1) (1-3)] {} ;
@@ -6323,7 +6377,7 @@ Le résultat peut paraître décevant. On peut l'améliorer en utilisant les «n
moyens» au lieu des «nœuds normaux».
\begin{Verbatim}
-\[\begin{pNiceArray}{ccc}[last-col,create-medium-nodes]
+\[\begin{pNiceArray}{ccc}[last-col, margin = 2pt, create-medium-nodes]
\CodeBefore [create-cell-nodes]
\begin{tikzpicture} ~emphase#[name suffix = -medium]@
\node [highlight = (1-1) (1-3)] {} ;
@@ -6338,7 +6392,7 @@ a & a & a & L_3
\end{Verbatim}
-\[\begin{pNiceArray}{ccc}[last-col,create-medium-nodes]
+\[\begin{pNiceArray}{ccc}[last-col, margin = 2pt, create-medium-nodes]
\CodeBefore [create-cell-nodes]
\begin{tikzpicture} [name suffix = -medium]
\node [highlight = (1-1) (1-3)] {} ;
@@ -6441,7 +6495,7 @@ de parenthèses ont été rajoutées avec |\SubMatrix| dans le |\CodeBefore|.
\label{triangular}
Dans l'exemple suivant, on utilise le style PGF/Tikz |nicematrix/cell-node| pour faire
-tourner le contenu des cellules (rotation que l'on compense ensuite en faisant
+tourner le contenu des cases (rotation que l'on compense ensuite en faisant
tourner tout le tableau avec la commande |\adjustbox| de l'extension éponyme,
qui doit donc être chargée préalablement).
diff --git a/macros/latex/contrib/nicematrix/nicematrix.dtx b/macros/latex/contrib/nicematrix/nicematrix.dtx
index 3620cc0f4b..c22ed30da1 100644
--- a/macros/latex/contrib/nicematrix/nicematrix.dtx
+++ b/macros/latex/contrib/nicematrix/nicematrix.dtx
@@ -17,8 +17,8 @@
%
% \fi
% \iffalse
-\def\myfileversion{6.17}
-\def\myfiledate{2023/03/31}
+\def\myfileversion{6.18}
+\def\myfiledate{2023/04/19}
%
%
%<*batchfile>
@@ -850,7 +850,6 @@ version 2005/12/01 or later.
%
% \subsection{Vertical position of the content of the block}
%
-% \colorbox{yellow!50}{\textbf{New 6.14}}
%
% For the vertical position, the command |\Blocks| accepts the keys
% |v-center|\footnote{That key could not have been named |c| since the key |c|
@@ -866,11 +865,14 @@ version 2005/12/01 or later.
% block (we recall that the content of a block may contains several lines
% separated by |\\|) is aligned with the baseline of the last of the rows of the
% array involved in the block.
-% \item With the key |T|, the content of the block is set upwards with only a
-% margin equal to the PGF/Tikz parameter |inner ysep| (use |\pgfset| to change
-% the value of that parameter).
-% \item With the key |B|, the content of the block is set downwards with only a
-% margin equal to the PGF/Tikz parameter |inner ysep|.
+% \item With the key |T|, the content of the block is set upwards.
+%
+% \colorbox{yellow!50}{\textbf{Modification 6.18}}\enskip No vertical margin is
+% added. However, the contents of the block is (always) composed by
+% \pkg{nicematrix} in a |{minipage}|, a |{tabular}| or an |{array}| and, hence,
+% there will still remain a margin (in most cases).
+%
+% \item With the key |B|, the content of the block is set downwards.
% \end{itemize}
%
% When no key is given, the key |v-center| applies (excepted in the mono-row blocks).
@@ -890,19 +892,19 @@ version 2005/12/01 or later.
% \begin{BVerbatim}[baseline=c,boxwidth=10cm]
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,~emphase#t@,l]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
% \end{BVerbatim}
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,t,l]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
%
@@ -911,19 +913,19 @@ version 2005/12/01 or later.
% \begin{BVerbatim}[baseline=c,boxwidth=10cm]
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,~emphase#b@,r]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
% \end{BVerbatim}
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,b,r]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
%
@@ -931,19 +933,19 @@ version 2005/12/01 or later.
% \begin{BVerbatim}[baseline=c,boxwidth=10cm]
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,~emphase#T@,l]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
% \end{BVerbatim}
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,T,l]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
%
@@ -952,22 +954,23 @@ version 2005/12/01 or later.
% \begin{BVerbatim}[baseline=c,boxwidth=10cm]
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,~emphase#B@,r]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
% \end{BVerbatim}
% \begin{NiceTabular}{ccc}
% \Block[fill=red!10,B,r]{4-2}{two\\lines}
-% & & \Huge first\\
-% & & second \\
-% & & third \\
-% & & fourth \\
+% & & \Huge Un\\
+% & & deux \\
+% & & trois \\
+% & & \Huge quatre \\
% text & text \\
% \end{NiceTabular}
%
+%
% \end{scope}
%
%
@@ -1235,9 +1238,15 @@ version 2005/12/01 or later.
% \end{center}
%
% \bigskip
+% It's worth noting that, when the key |rounded-corners| is used for the
+% environment |{NiceTabular}|, the key |hvlines| draws rounded corners for the
+% exterior frame of the tabular: cf. part~\ref{tabular-rounded-corners},
+% p.~\pageref{tabular-rounded-corners}.
+%
+% \bigskip
% The key |hvlines-except-borders| is similar to the key |hvlines| but does not
% draw the rules on the horizontal and vertical borders of the array. For an
-% example of use of that key, see the part ``Use with tcolorbox`,
+% example of use of that key, see the part ``Use with tcolorbox'',
% p.~\pageref{tcolorbox}.
%
% \subsubsection{The (empty) corners}
@@ -1255,7 +1264,7 @@ version 2005/12/01 or later.
% natural. The precise definition of a ``non-empty cell'' is given below (cf.
% p.~\pageref{empty-cells}).}
%
-% However, it's possible, for a cell without content, to require \pkg{nicemarix}
+% However, it's possible, for a cell without content, to require \pkg{nicematrix}
% to consider that cell as not empty with the key |\NotEmpty|.
%
%\bigskip
@@ -1283,9 +1292,12 @@ version 2005/12/01 or later.
% \end{NiceTabular}
%
% \bigskip
-% When the key |corners| is used, \pkg{nicematrix} computes the (empty) corners
-% and these corners will be taken into account by the tools for drawing the
-% rules (the rules won't be drawn in the corners).
+% When the key |corners|\footnote{The key \texttt{corners} that we describe now
+% has no direct link with the key \texttt{rounded-corners} described in the part
+% \ref{tabular-rounded-corners}, p.~\pageref{tabular-rounded-corners}} is used,
+% \pkg{nicematrix} computes the (empty) corners and these corners will be taken
+% into account by the tools for drawing the rules (the rules won't be drawn in
+% the corners).
%
% \bigskip
% \begin{BVerbatim}[boxwidth=11cm,baseline=c]
@@ -1675,18 +1687,33 @@ version 2005/12/01 or later.
% \label{code-before}
%
% \medskip
-% All these commands accept an optional argument (between square brackets and
-% in first position) which is the color model for the specification of the
-% colors.
+% These commands don't color the cells which are in the ``corners'' if the key
+% |corners| is used. That key has been described p.~\pageref{corners}.
%
% \medskip
-% These commands don't color the cells which are in the ``corners'' if the key
-% |corners| is used. This key has been described p.~\pageref{corners}.
+% These commands respect the rounded corners if the key |rounded-corners|
+% (described in the part \ref{tabular-rounded-corners} at the
+% page~\pageref{tabular-rounded-corners}) has been used.
+%
+% \medskip
+% All these commands accept an optional argument, between square brackets and
+% in first position. That optional argument may contain two elements (separated
+% by a comma)
+% \begin{itemize}
+% \item the colorimetric space (|RGB|, |rgb|, |HTML|, etc) as specified by the
+% the extension \pkg{xcolor};
+% \item \colorbox{yellow!50}{\textbf{New 6.18}}\par\nobreak
+% a specification of opacity f the form \texttt{opacity = \textsl{value}}.
+% \end{itemize}
%
+% \bigskip
+%
+% We describe now in detail those commands.
+%
% \medskip
% \begin{itemize}
-% \item The command |\cellcolor| takes its name from the command |\cellcolor| of
-% \pkg{colortbl}.
+% \item The command \Definition{\textbackslash cellcolor} takes its name from
+% the command |\cellcolor| of \pkg{colortbl}.
%
% This command takes in as mandatory arguments a color and a list of cells, each
% of which with the format $i$-$j$ where $i$ is the number of the row and $j$ the
@@ -1718,9 +1745,9 @@ version 2005/12/01 or later.
% \end{scope}
%
% \bigskip
-% \item The command |\rectanglecolor| takes three mandatory arguments. The first
-% is the color. The second is the upper-left cell of the rectangle and the third
-% is the lower-right cell of the rectangle.
+% \item The command \Definition{\textbackslash rectanglecolor} takes three
+% mandatory arguments. The first is the color. The second is the upper-left cell
+% of the rectangle and the third is the lower-right cell of the rectangle.
%
% \medskip
% \begin{scope}
@@ -1746,15 +1773,16 @@ version 2005/12/01 or later.
% \end{scope}
%
% \bigskip
-% \item The command |\arraycolor| takes in as mandatory argument a color and
-% color the whole tabular with that color (excepted the potential exterior rows
-% and columns: cf.~p.~\pageref{exterior}). It's only a particular case of
-% |\rectanglecolor|.
+% \item The command \Definition{\textbackslash arraycolor} takes in as mandatory
+% argument a color and color the whole tabular with that color (excepted the
+% potential exterior rows and columns: cf.~p.~\pageref{exterior}). It's only a
+% particular case of |\rectanglecolor|.
%
%
% \bigskip
-% \item The command |\chessboardcolors| takes in as mandatory arguments two colors
-% and it colors the cells of the tabular in quincunx with these colors.
+% \item The command \Definition{\textbackslash chessboardcolors} takes in as
+% mandatory arguments two colors and it colors the cells of the tabular in
+% quincunx with these colors.
%
% \medskip
% \begin{scope}
@@ -1785,10 +1813,11 @@ version 2005/12/01 or later.
%
%
% \bigskip
-% \item The command |\rowcolor| takes its name from the command |\rowcolor| of
-% \pkg{colortbl}. Its first mandatory argument is the color and the second is a
-% comma-separated list of rows or interval of rows with the form $a$-$b$ (an
-% interval of the form $a$- represent all the rows from the row $a$ until the end).
+% \item The command \Definition{\textbackslash rowcolor} takes its name from the
+% command |\rowcolor| of \pkg{colortbl}. Its first mandatory argument is the
+% color and the second is a comma-separated list of rows or interval of rows
+% with the form $a$-$b$ (an interval of the form $a$- represent all the rows
+% from the row $a$ until the end).
%
% \medskip
% \begin{scope}
@@ -1829,17 +1858,17 @@ version 2005/12/01 or later.
%
%
% \bigskip
-% \item The command |\columncolor| takes its name from the command
-% |\columncolor| of \pkg{colortbl}. Its syntax is similar to the syntax of
-% |\rowcolor|.
+% \item The command \Definition{\textbackslash columncolor} takes its name from
+% the command |\columncolor| of \pkg{colortbl}. Its syntax is similar to the
+% syntax of |\rowcolor|.
%
% \bigskip
-% \item The command |\rowcolors| (with a \emph{s}) takes its name from the
-% command |\rowcolors| of \pkg{colortbl}. The \emph{s} emphasizes
-% the fact that there is \emph{two} colors. This command colors alternately the
-% rows of the tabular with the two colors (provided in second and third
-% argument), beginning with the row whose number is given in first (mandatory)
-% argument.
+% \item The command \Definition{\textbackslash rowcolors} (with a \emph{s})
+% takes its name from the command |\rowcolors| of \pkg{colortbl}. The \emph{s}
+% emphasizes the fact that there is \emph{two} colors. This command colors
+% alternately the rows of the tabular with the two colors (provided in second
+% and third argument), beginning with the row whose number is given in first
+% (mandatory) argument.
%
% In fact, the first (mandatory) argument is, more generally, a comma separated
% list of intervals describing the rows involved in the action of |\rowcolors|
@@ -1936,11 +1965,11 @@ version 2005/12/01 or later.
%
%
% \bigskip
-% \item The extension \pkg{nicematrix} provides also a command |\rowlistcolors|.
-% This command generalises the command |\rowcolors|: instead of two successive
-% arguments for the colors, this command takes in an argument which is a
-% (comma-separated) list of colors. In that list, the symbol |=| represent a
-% color identical to the previous one.
+% \item The extension \pkg{nicematrix} provides also a command
+% \Definition{\textbackslash rowlistcolors}. This command generalises the
+% command |\rowcolors|: instead of two successive arguments for the colors, this
+% command takes in an argument which is a (comma-separated) list of colors. In
+% that list, the symbol |=| represent a color identical to the previous one.
%
% \smallskip
% \begin{BVerbatim}[boxwidth=10cm,baseline=c]
@@ -4068,15 +4097,63 @@ version 2005/12/01 or later.
%
% \section{Other features}
%
+% \subsection{The key rounded-corners of \{NiceTabular\}}
+%
+% \label{tabular-rounded-corners}
+% \colorbox{yellow!50}{\textbf{New 6.18}}\par\nobreak
+%
+% \smallskip
+% The key |rounded-corners| that we will descrite now has no direct link with
+% the key |corners| (which is used to specify ``empty corners'') described in
+% the part~\ref{corners}, p.~\pageref{corners}.
+%
+% \smallskip
+% The environment |{NiceTabular}| provides also a key |rounded-corners| which
+% specify that the tabular should have rounded corners with a radius equal to
+% the value of that key (the default value is 4~pt\footnote{This value is the
+% initial value of the \emph{rounded corners} of Tikz.}). More precisely, that
+% key has two effects that we describe now.
+% \begin{itemize}
+% \item All the commands for coloring the cells, columns and rows (in the
+% |\CodeBefore| but also directly in the array if the key |colortbl-like| is
+% used) will respect those rounded corners.
+%
+% \item When the key |hvlines| is used, the exterior rules will be drawn with
+% rounded corners.
+% \end{itemize}
+% \bigskip
+% \begin{BVerbatim}[baseline=c,boxwidth=9cm]
+% \begin{NiceTabular}
+% [hvlines,~emphase#rounded-corners@]
+% {ccc}
+% \CodeBefore
+% \rowcolor{red!15}{1}
+% \Body
+% Last name & First name & Profession \\
+% Arvy & Jacques & Physicist \\
+% Jalon & Amandine & Physicist
+% \end{NiceTabular}
+% \end{BVerbatim}
+% \begin{NiceTabular}{ccc}[hvlines,rounded-corners]
+% \CodeBefore
+% \rowcolor{red!15}{1}
+% \Body
+% Last name & First name & Profession \\
+% Arvy & Jacques & Physicist \\
+% Jalon & Amandine & Physicist
+% \end{NiceTabular}
+%
+%
% \subsection{Command \textbackslash ShowCellNames}
%
% The command |\ShowCellNames|, which may be used in the |\CodeBefore| and in
-% the |\CodeAfter| display the name (with the form $i$-$j$) of each cell. When
+% the |\CodeAfter| displays the name (with the form $i$-$j$) of each cell. When
% used in the |\CodeAfter|, that command applies a semi-transparent white
% rectangle to fade the array (caution: some \textsc{pdf} readers don't support
% transparency).
%
+% \medskip
% \begin{BVerbatim}[baseline=c,boxwidth=10.6cm]
% \begin{NiceTabular}{ccc}[hvlines,cell-space-limits=3pt]
% \Block{2-2}{} & & test \\
@@ -4858,7 +4935,7 @@ version 2005/12/01 or later.
% \hline
% u_n &-& u_0 &=& nr \\
% \CodeAfter
-% \tikz[very thick, red, opacity=0.4,name suffix = -medium]
+% \tikz[very thick, red, opacity=0.4, name suffix = -medium]
% \draw (1-1.north west) -- (2-3.south east)
% (2-1.north west) -- (3-3.south east)
% (3-1.north west) -- (4-3.south east)
@@ -4878,7 +4955,7 @@ version 2005/12/01 or later.
% \hline
% u_n &-& u_0 &=& nr \\
% \CodeAfter
-% \tikz[very thick, red, opacity=0.4,name suffix = -medium]
+% \tikz[very thick, red, opacity=0.4, name suffix = -medium]
% \draw (1-1.north west) -- (2-3.south east)
% (2-1.north west) --(3-3.south east)
% (3-1.north west) -- (4-3.south east)
@@ -6200,7 +6277,7 @@ version 2005/12/01 or later.
% this matrix, we can use the previous technique three times.
%
% \begin{Verbatim}
-% \[\begin{pNiceArray}{ccc}[last-col]
+% \[\begin{pNiceArray}{ccc}[last-col, margin = 2pt]
% \CodeBefore [create-cell-nodes]
% \begin{tikzpicture}
% ~emphase# \node [highlight = (1-1) (1-3)] {} ;@
@@ -6215,7 +6292,7 @@ version 2005/12/01 or later.
% \end{Verbatim}
%
%
-% \[\begin{pNiceArray}{ccc}[last-col]
+% \[\begin{pNiceArray}{ccc}[last-col, margin = 2pt]
% \CodeBefore [create-cell-nodes]
% \begin{tikzpicture}
% \node [highlight = (1-1) (1-3)] {} ;
@@ -6233,7 +6310,7 @@ version 2005/12/01 or later.
% nodes'' instead of the ``normal nodes''.
%
% \begin{Verbatim}
-% \[\begin{pNiceArray}{ccc}[last-col,create-medium-nodes]
+% \[\begin{pNiceArray}{ccc}[last-col, margin = 2pt, create-medium-nodes]
% \CodeBefore [create-cell-nodes]
% \begin{tikzpicture} ~emphase#[name suffix = -medium]@
% \node [highlight = (1-1) (1-3)] {} ;
@@ -6248,7 +6325,7 @@ version 2005/12/01 or later.
% \end{Verbatim}
%
%
-%\[\begin{pNiceArray}{ccc}[last-col,create-medium-nodes]
+%\[\begin{pNiceArray}{ccc}[last-col, margin = 2pt, create-medium-nodes]
% \CodeBefore [create-cell-nodes]
% \begin{tikzpicture} [name suffix = -medium]
% \node [highlight = (1-1) (1-3)] {} ;
@@ -6597,27 +6674,25 @@ version 2005/12/01 or later.
% \end{macrocode}
%
% \bigskip
-% Here, the box |\l_tmpa_box| will be used as sandbox to take our security test.
+% Here, the box |\l_tmpa_box| will be used as sandbox to take our security test.
+% This code has benne modified in version 6.18 (see question 682891 on TeX
+% StackExchange).
% \begin{macrocode}
-\hook_gput_code:nnn { begindocument } { . }
+\hook_gput_code:nnn { begindocument / after } { . }
{
\@ifpackageloaded { mdwtab }
{ \@@_fatal:n { mdwtab~loaded } }
{
- \@ifpackageloaded { fontspec }
- { }
+ \bool_if:NF \c_@@_no_test_for_array_bool
{
- \bool_if:NF \c_@@_no_test_for_array_bool
- {
- \group_begin:
- \hbox_set:Nn \l_tmpa_box
- {
- \begin { tabular } { c > { \@@_security_test:n } c c }
- text & & text
- \end { tabular }
- }
- \group_end:
- }
+ \group_begin:
+ \hbox_set:Nn \l_tmpa_box
+ {
+ \begin { tabular } { c > { \@@_security_test:n } c c }
+ text & & text
+ \end { tabular }
+ }
+ \group_end:
}
}
}
@@ -7174,6 +7249,13 @@ version 2005/12/01 or later.
% \end{macrocode}
%
% \bigskip
+% The following dimension will be used by the command |\Block| for the blocks
+% with a key of vertical position equal to |T| or |B|.
+% \begin{macrocode}
+\dim_new:N \l_@@_block_ysep_dim
+% \end{macrocode}
+%
+% \bigskip
% The following dimension correspond to the key |width| (which may be fixed in
% |\NiceMatrixOptions| but also in an environment |{NiceTabular}|).
% \begin{macrocode}
@@ -7377,6 +7459,9 @@ version 2005/12/01 or later.
% \end{macrocode}
%
% \bigskip
+% The value of the key |code-before| will be added to the left of
+% |\g_@@_pre_code_before_tl|. Idem for the code between |\CodeBefore| and
+% |\Body|.
% \begin{macrocode}
\tl_new:N \g_nicematrix_code_before_tl
\tl_new:N \g_@@_pre_code_before_tl
@@ -7586,7 +7671,7 @@ version 2005/12/01 or later.
%
% \medskip
% The following flag will be raised if the key |width| is used in an environment
-% |{NiceTabular}| (not in a comamnd |\NiceMatrixOptions|). You use it to raise
+% |{NiceTabular}| (not in a command |\NiceMatrixOptions|). You use it to raise
% an error when this key is used while no column |X| is used.
% \begin{macrocode}
\bool_new:N \l_@@_width_used_bool
@@ -7648,6 +7733,15 @@ version 2005/12/01 or later.
% |corners| is used).
%
% \medskip
+% The following dimension corresponds to the key |rounded-corners| available in
+% an individual environment |{NiceTabular}|. When that key is used, a clipping
+% is applied in the |\CodeBefore| of the environment in order to have rounded
+% corners for the potential colored panels.
+% \begin{macrocode}
+\dim_new:N \l_@@_tab_rounded_corners_dim
+% \end{macrocode}
+%
+% \medskip
% The following token list correspond to the key |color| of the command |\Block|
% and also the key |color| of the command |\RowStyle|.
% \begin{macrocode}
@@ -7712,11 +7806,20 @@ version 2005/12/01 or later.
\dim_new:N \l_@@_submatrix_left_xshift_dim
\dim_new:N \l_@@_submatrix_right_xshift_dim
\clist_new:N \l_@@_hlines_clist
-\clist_new:N \l_@@_vlines_clist
+\clist_new:N \l_@@_vlines_clist
\clist_new:N \l_@@_submatrix_hlines_clist
\clist_new:N \l_@@_submatrix_vlines_clist
% \end{macrocode}
%
+% \medskip
+% The following key is set when the keys |hvlines| and |hvlines-except-borders|
+% are used. It's used only to change slightly the clipping path set by the key
+% |rounded-corners| (for a |{tabular}|).
+% \begin{macrocode}
+\bool_new:N \l_@@_hvlines_bool
+% \end{macrocode}
+%
+%
%
% \bigskip
% The following flag will be used by (for instance) |\@@_vline_ii:|.
@@ -8475,6 +8578,7 @@ version 2005/12/01 or later.
% \begin{macrocode}
\tl_new:N \l_@@_delimiters_color_tl
% \end{macrocode}
+%
%
% \bigskip
% Sometimes, we want to have several arrays vertically juxtaposed in order to
@@ -8619,6 +8723,7 @@ version 2005/12/01 or later.
vlines-in-sub-matrix .value_required:n = true ,
hvlines .code:n =
{
+ \bool_set_true:N \l_@@_hvlines_bool
\clist_set:Nn \l_@@_vlines_clist { all }
\clist_set:Nn \l_@@_hlines_clist { all }
} ,
@@ -8626,6 +8731,7 @@ version 2005/12/01 or later.
{
\clist_set:Nn \l_@@_vlines_clist { all }
\clist_set:Nn \l_@@_hlines_clist { all }
+ \bool_set_true:N \l_@@_hvlines_bool
\bool_set_true:N \l_@@_except_borders_bool
} ,
parallelize-diags .bool_set:N = \l_@@_parallelize_diags_bool ,
@@ -8996,6 +9102,8 @@ version 2005/12/01 or later.
width .code:n = \dim_set:Nn \l_@@_width_dim { #1 }
\bool_set_true:N \l_@@_width_used_bool ,
width .value_required:n = true ,
+ rounded-corners .dim_set:N = \l_@@_tab_rounded_corners_dim ,
+ rounded-corners .default:n = 4 pt ,
notes .code:n = \keys_set:nn { NiceMatrix / notes } { #1 } ,
tabularnote .tl_gset:N = \g_@@_tabularnote_tl ,
tabularnote .value_required:n = true ,
@@ -9745,7 +9853,7 @@ version 2005/12/01 or later.
\cs_set_eq:NN \Block \@@_Block:
\cs_set_eq:NN \rotate \@@_rotate:
\cs_set_eq:NN \OnlyMainNiceMatrix \@@_OnlyMainNiceMatrix:n
- \cs_set_eq:NN \dotfill \@@_old_dotfill:
+ \cs_set_eq:NN \dotfill \@@_dotfill:
\cs_set_eq:NN \CodeAfter \@@_CodeAfter:
\cs_set_eq:NN \diagbox \@@_diagbox:nn
\cs_set_eq:NN \NotEmpty \@@_NotEmpty:
@@ -10989,7 +11097,11 @@ version 2005/12/01 or later.
\keys_set:nn { NiceMatrix / ColumnTypes } { #1 }
\@@_patch_preamble:n
}
- { \@@_fatal:nn { unknown~column~type } { #1 } }
+ {
+ \tl_if_eq:nnT { #1 } { S }
+ { \@@_fatal:n { unknown~column~type~S } }
+ { \@@_fatal:nn { unknown~column~type } { #1 } }
+ }
}
}
}
@@ -12027,7 +12139,11 @@ version 2005/12/01 or later.
\@@_W: { \@@_patch_m_preamble_v:nnnn { \@@_special_W: } #1 }
\q_stop { }
}
- { \@@_fatal:nn { unknown~column~type } { #1 } }
+ {
+ \tl_if_eq:nnT { #1 } { S }
+ { \@@_fatal:n { unknown~column~type~S } }
+ { \@@_fatal:nn { unknown~column~type } { #1 } }
+ }
}
% \end{macrocode}
%
@@ -13294,6 +13410,36 @@ version 2005/12/01 or later.
{ \dim_set_eq:NN \l_@@_width_dim \linewidth }
\str_gset:Nn \g_@@_name_env_str { NiceTabular }
\keys_set:nn { NiceMatrix / NiceTabular } { #1 , #3 }
+ \int_compare:nNnT \l_@@_tab_rounded_corners_dim > \c_zero_dim
+ {
+ \bool_if:NT \l_@@_hvlines_bool
+ {
+ \bool_set_true:N \l_@@_except_borders_bool
+ % we should try to be more efficient in the number of lines of code here
+ \tl_if_empty:NTF \l_@@_rules_color_tl
+ {
+ \tl_gput_right:Nn \g_@@_pre_code_after_tl
+ {
+ \@@_stroke_block:nnn
+ { rounded-corners = \dim_use:N \l_@@_tab_rounded_corners_dim }
+ { 1-1 }
+ { \int_use:N \c@iRow - \int_use:N \c@jCol }
+ }
+ }
+ {
+ \tl_gput_right:Nn \g_@@_pre_code_after_tl
+ {
+ \@@_stroke_block:nnn
+ {
+ rounded-corners = \dim_use:N \l_@@_tab_rounded_corners_dim ,
+ draw = \l_@@_rules_color_tl
+ }
+ { 1-1 }
+ { \int_use:N \c@iRow - \int_use:N \c@jCol }
+ }
+ }
+ }
+ }
\tl_if_empty:NF \l_@@_short_caption_tl
{
\tl_if_empty:NT \l_@@_caption_tl
@@ -15748,18 +15894,114 @@ version 2005/12/01 or later.
{
\pgfpicture
\pgf@relevantforpicturesizefalse
+% \end{macrocode}
+% If the final user has used the key |rounded-corners| for the environment
+% |{NiceTabular}|, we will clip to a rectangle with rounded corners before
+% filling the rectangles.
+% \begin{macrocode}
+ \dim_compare:nNnT \l_@@_tab_rounded_corners_dim > \c_zero_dim
+ {
+ \pgfsetcornersarced
+ {
+ \pgfpoint
+ { \l_@@_tab_rounded_corners_dim }
+ { \l_@@_tab_rounded_corners_dim }
+ }
+% \end{macrococde}
+% Because we want \pkg{nicematrix} compatible with arrays constructed by
+% \pkg{array}, the nodes for the rows and columns (that is to say the nodes
+% |row-|\textsl{i} and |col-|\textsl{j}) have not always the expected position,
+% that is to say, there is sometimes a slight shifting of something such as
+% |\arrayrulewidth|. Now, for the clipping, we have to change slightly the
+% position of that clipping whether a rounded rectangle around the array is
+% required. That's the point which is tested in the following line.
+% \begin{macrocode}
+ \bool_if:NTF \l_@@_hvlines_bool
+ {
+ \pgfpathrectanglecorners
+ {
+ \pgfpointadd
+ { \@@_qpoint:n { row-1 } }
+ { \pgfpoint { 0.5 \arrayrulewidth } { \c_zero_dim } }
+ }
+ {
+ \pgfpointadd
+ {
+ \@@_qpoint:n
+ { \int_eval:n { \int_max:nn \c@iRow \c@jCol + 1 } }
+ }
+ { \pgfpoint \c_zero_dim { 0.5 \arrayrulewidth } }
+ }
+ }
+ {
+ \pgfpathrectanglecorners
+ { \@@_qpoint:n { row-1 } }
+ {
+ \pgfpointadd
+ {
+ \@@_qpoint:n
+ { \int_eval:n { \int_max:nn \c@iRow \c@jCol + 1 } }
+ }
+ { \pgfpoint \c_zero_dim \arrayrulewidth }
+ }
+ }
+ \pgfusepath { clip }
+ }
\seq_map_indexed_inline:Nn \g_@@_colors_seq
{
- \color ##2
- \use:c { g_@@_color _ ##1 _tl }
- \tl_gclear:c { g_@@_color _ ##1 _tl }
- \pgfusepath { fill }
+ \begin { pgfscope }
+ \@@_color_opacity ##2
+ \use:c { g_@@_color _ ##1 _tl }
+ \tl_gclear:c { g_@@_color _ ##1 _tl }
+ \pgfusepath { fill }
+ \end { pgfscope }
}
\endpgfpicture
}
% \end{macrocode}
-%
%
+% \bigskip
+% The following command will extract the potential key |opacity| in its optional
+% argument (between square brackets) and (of course) then apply the command |\color|.
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_color_opacity
+ {
+ \peek_meaning:NTF [
+ { \@@_color_opacity:w }
+ { \@@_color_opacity:w [ ] }
+ }
+% \end{macrocode}
+%
+% \bigskip
+% The command |\@@_color_opacity:w| takes in as argument only the optional
+% argument. One may consider that the second argument (the actual definition of
+% the color) is provided by currification.
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_color_opacity:w [ #1 ]
+ {
+ \tl_clear:N \l_tmpa_tl
+ \keys_set_known:nnN { nicematrix / color-opacity } { #1 } \l_tmpb_tl
+% \end{macrocode}
+% |\l_tmpa_tl| (if not empty) is now the opacity and |\l_tmpb_tl| (if not empty) is now the colorimetric space.
+% \begin{macrocode}
+ \tl_if_empty:NF \l_tmpa_tl { \exp_args:NV \pgfsetfillopacity \l_tmpa_tl }
+ \tl_if_empty:NTF \l_tmpb_tl
+ { \@declaredcolor }
+ { \use:x { \exp_not:N \@undeclaredcolor [ \l_tmpb_tl ] } }
+ }
+% \end{macrocode}
+%
+% \bigskip
+% The following set of keys is used by the command |\@@_color_opacity:wn|.
+% \begin{macrocode}
+\keys_define:nn { nicematrix / color-opacity }
+ {
+ opacity .tl_set:N = \l_tmpa_tl ,
+ opacity .value_required:n = true
+ }
+% \end{macrocode}
+%
+% \bigskip
% \begin{macrocode}
\cs_new_protected:Npn \@@_cartesian_color:nn #1 #2
{
@@ -18237,7 +18479,16 @@ version 2005/12/01 or later.
% because we want to be able to take into account a potential instruction of
% color of the font in |\g_@@_row_style_tl|.
% \begin{macrocode}
- \int_compare:nNnT { #1 } = 1 \g_@@_row_style_tl
+ \int_compare:nNnT { #1 } = 1
+ {
+ \int_compare:nNnTF \c@iRow = 0
+ \l_@@_code_for_first_row_tl
+ {
+ \int_compare:nNnT \c@iRow = \l_@@_last_row_int
+ \l_@@_code_for_last_row_tl
+ }
+ \g_@@_row_style_tl
+ }
\group_begin:
\bool_if:NF \l_@@_respect_arraystretch_bool
{ \cs_set:Npn \arraystretch { 1 } }
@@ -18897,20 +19148,6 @@ version 2005/12/01 or later.
}
% \end{macrocode}
%
-% We take into account the case of a block of one row in the ``first row'' or
-% the ``last row''.
-% \begin{macrocode}
- \int_compare:nNnT { #1 } = 0
- {
- \int_compare:nNnT { #3 } = 0
- { \l_@@_code_for_first_row_tl }
- }
- \int_compare:nNnT { #1 } = \l_@@_last_row_int
- {
- \int_compare:nNnT { #3 } = \l_@@_last_row_int
- { \l_@@_code_for_last_row_tl }
- }
-% \end{macrocode}
%
% \medskip
% Now, we will put the label of the block.
@@ -18980,7 +19217,11 @@ version 2005/12/01 or later.
}
{ \l_tmpa_tl }
}
- \pgfset { inner~xsep = \c_zero_dim }
+ \pgfset
+ {
+ inner~xsep = \c_zero_dim ,
+ inner~ysep = \l_@@_block_ysep_dim
+ }
\pgfnode
{ rectangle }
{ \l_tmpa_tl }
@@ -19484,19 +19725,15 @@ version 2005/12/01 or later.
% case of use of |\dotfill| ``internally'' in the cell (e.g. |\hbox to 1cm {\dotfill}|).
% \begin{macrocode}
\@@_old_dotfill
- \bool_if:NT \l_@@_NiceTabular_bool
- { \group_insert_after:N \@@_dotfill_ii: }
- { \group_insert_after:N \@@_dotfill_i: }
+ \tl_gput_right:Nn \g_@@_cell_after_hook_tl \@@_dotfill_i:
}
-\cs_new_protected:Npn \@@_dotfill_i: { \group_insert_after:N \@@_dotfill_ii: }
-\cs_new_protected:Npn \@@_dotfill_ii: { \group_insert_after:N \@@_dotfill_iii: }
% \end{macrocode}
% Now, if the box if not empty (unfornately, we can't actually test whether the
% box is empty and that's why we only consider it's width), we insert
% |\@@_dotfill| (which is the saved version of |\dotfill|) in the cell of the
% array, and it will extend, since it is no longer in |\l_@@_cell_box|.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_dotfill_iii:
+\cs_new_protected:Npn \@@_dotfill_i:
{ \dim_compare:nNnT { \box_wd:N \l_@@_cell_box } = \c_zero_dim \@@_old_dotfill }
% \end{macrocode}
%
@@ -20946,19 +21183,38 @@ version 2005/12/01 or later.
\seq_if_in:NVTF \g_@@_types_of_matrix_seq \g_@@_name_env_str
{
\int_compare:nNnTF \l_@@_last_col_int = { -2 }
- { \@@_fatal:n { too~much~cols~for~matrix } }
- {
- \int_compare:nNnTF \l_@@_last_col_int = { -1 }
- { \@@_fatal:n { too~much~cols~for~matrix } }
- {
- \bool_if:NF \l_@@_last_col_without_value_bool
- { \@@_fatal:n { too~much~cols~for~matrix~with~last~col } }
- }
- }
+ { \@@_fatal:n { too~much~cols~for~matrix } }
+ {
+ \int_compare:nNnTF \l_@@_last_col_int = { -1 }
+ { \@@_fatal:n { too~much~cols~for~matrix } }
+ {
+ \bool_if:NF \l_@@_last_col_without_value_bool
+ { \@@_fatal:n { too~much~cols~for~matrix~with~last~col } }
+ }
+ }
+ }
+ {
+ \bool_lazy_and:nnTF
+ { \bool_if_p:n \c_@@_tabularx_loaded_bool }
+ { ! \str_if_eq_p:Vn \g_@@_name_env_str { NiceTabularX } }
+ {
+ \int_compare:nNnTF \c@iRow = \c_zero_int
+ { \@@_fatal:n { X~columns~with~tabularx } }
+ {
+ \@@_fatal:nn { too~much~cols~for~array }
+ {
+ However,~this~message~may~be~erroneous:~
+ maybe~you~have~used~X~columns~while~'tabularx'~is~loaded,~
+ ~which~is~forbidden~(however,~it's~still~possible~to~use~
+ X~columns~in~{NiceTabularX}).
+ }
+ }
+ }
+ { \@@_fatal:nn { too~much~cols~for~array } { } }
}
- { \@@_fatal:n { too~much~cols~for~array } }
}
% \end{macrocode}
+%
%
% The following command must \emph{not} be protected since it's used in an error message.
% \begin{macrocode}
@@ -21025,12 +21281,22 @@ version 2005/12/01 or later.
~you~try~to~use~more~columns~than~allowed~by~your~
\@@_full_name_env:.\@@_message_hdotsfor:\ The~maximal~number~of~columns~is~
\int_use:N \g_@@_static_num_of_col_int\
- ~(plus~the~potential~exterior~ones).~
+ ~(plus~the~potential~exterior~ones).~#1
This~error~is~fatal.
}
% \end{macrocode}
%
-
+% \medskip
+% \begin{macrocode}
+\@@_msg_new:nn { X~columns~with~tabularx }
+ {
+ There~is~a~problem.\\
+ You~have~probably~used~X~columns~in~your~environment~{\g_@@_name_env_str}.~
+ That's~not~allowed~because~'tabularx'~is~loaded~(however,~you~can~use~X~columns~
+ in~an~environment~{NiceTabularX}).\\
+ This~error~is~fatal.
+ }
+% \end{macrocode}
%
% \begin{macrocode}
\@@_msg_new:nn { columns~not~used }
@@ -21538,6 +21804,17 @@ version 2005/12/01 or later.
% \end{macrocode}
%
% \begin{macrocode}
+\@@_msg_new:nn { unknown~column~type~S }
+ {
+ Bad~column~type.\\
+ The~column~type~'S'~in~your~\@@_full_name_env:\ is~unknown. \\
+ If~you~want~to~use~the~column~type~'S'~of~siunitx,~you~should~
+ load~that~package. \\
+ This~error~is~fatal.
+ }
+% \end{macrocode}
+%
+% \begin{macrocode}
\@@_msg_new:nn { tabularnote~forbidden }
{
Forbidden~command.\\
@@ -22061,6 +22338,7 @@ version 2005/12/01 or later.
renew-dots,~
respect-arraystretch,~
right-margin,~
+ rounded-corners,~
rules~(with~the~subkeys~'color'~and~'width'),~
short-caption,~
t,~
@@ -22116,6 +22394,19 @@ version 2005/12/01 or later.
% \nolinkurl{https:www.tug.org/svn/texlive/trunk/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty}
% }
%
+% \subsection*{Changes between version 6.17 and 6.18}
+%
+% New key |opacity| in the commands to color cells, rows and columns.
+%
+% New key |rounded-corners| for a whole tabular.
+%
+%
+% \subsection*{Changes between version 6.16 and 6.17}
+%
+% New PGF/Tikz style |nicematrix/cell-node|.
+%
+% New key |pgf-node-code|
+%
% \subsection*{Changes between version 6.15 and 6.16}
%
% It's now possible to put any LaTeX extensible delimiter (|\lgroup|, |\langle|,
diff --git a/macros/latex/contrib/nicematrix/nicematrix.pdf b/macros/latex/contrib/nicematrix/nicematrix.pdf
index 3e990cb257..7b447a8a11 100644
--- a/macros/latex/contrib/nicematrix/nicematrix.pdf
+++ b/macros/latex/contrib/nicematrix/nicematrix.pdf
Binary files differ
diff --git a/macros/latex/contrib/oststud/LICENSE.txt b/macros/latex/contrib/oststud/LICENSE.txt
new file mode 100644
index 0000000000..a73481c4be
--- /dev/null
+++ b/macros/latex/contrib/oststud/LICENSE.txt
@@ -0,0 +1,428 @@
+Attribution-ShareAlike 4.0 International
+
+=======================================================================
+
+Creative Commons Corporation ("Creative Commons") is not a law firm and
+does not provide legal services or legal advice. Distribution of
+Creative Commons public licenses does not create a lawyer-client or
+other relationship. Creative Commons makes its licenses and related
+information available on an "as-is" basis. Creative Commons gives no
+warranties regarding its licenses, any material licensed under their
+terms and conditions, or any related information. Creative Commons
+disclaims all liability for damages resulting from their use to the
+fullest extent possible.
+
+Using Creative Commons Public Licenses
+
+Creative Commons public licenses provide a standard set of terms and
+conditions that creators and other rights holders may use to share
+original works of authorship and other material subject to copyright
+and certain other rights specified in the public license below. The
+following considerations are for informational purposes only, are not
+exhaustive, and do not form part of our licenses.
+
+ Considerations for licensors: Our public licenses are
+ intended for use by those authorized to give the public
+ permission to use material in ways otherwise restricted by
+ copyright and certain other rights. Our licenses are
+ irrevocable. Licensors should read and understand the terms
+ and conditions of the license they choose before applying it.
+ Licensors should also secure all rights necessary before
+ applying our licenses so that the public can reuse the
+ material as expected. Licensors should clearly mark any
+ material not subject to the license. This includes other CC-
+ licensed material, or material used under an exception or
+ limitation to copyright. More considerations for licensors:
+ wiki.creativecommons.org/Considerations_for_licensors
+
+ Considerations for the public: By using one of our public
+ licenses, a licensor grants the public permission to use the
+ licensed material under specified terms and conditions. If
+ the licensor's permission is not necessary for any reason--for
+ example, because of any applicable exception or limitation to
+ copyright--then that use is not regulated by the license. Our
+ licenses grant only permissions under copyright and certain
+ other rights that a licensor has authority to grant. Use of
+ the licensed material may still be restricted for other
+ reasons, including because others have copyright or other
+ rights in the material. A licensor may make special requests,
+ such as asking that all changes be marked or described.
+ Although not required by our licenses, you are encouraged to
+ respect those requests where reasonable. More considerations
+ for the public:
+ wiki.creativecommons.org/Considerations_for_licensees
+
+=======================================================================
+
+Creative Commons Attribution-ShareAlike 4.0 International Public
+License
+
+By exercising the Licensed Rights (defined below), You accept and agree
+to be bound by the terms and conditions of this Creative Commons
+Attribution-ShareAlike 4.0 International Public License ("Public
+License"). To the extent this Public License may be interpreted as a
+contract, You are granted the Licensed Rights in consideration of Your
+acceptance of these terms and conditions, and the Licensor grants You
+such rights in consideration of benefits the Licensor receives from
+making the Licensed Material available under these terms and
+conditions.
+
+
+Section 1 -- Definitions.
+
+ a. Adapted Material means material subject to Copyright and Similar
+ Rights that is derived from or based upon the Licensed Material
+ and in which the Licensed Material is translated, altered,
+ arranged, transformed, or otherwise modified in a manner requiring
+ permission under the Copyright and Similar Rights held by the
+ Licensor. For purposes of this Public License, where the Licensed
+ Material is a musical work, performance, or sound recording,
+ Adapted Material is always produced where the Licensed Material is
+ synched in timed relation with a moving image.
+
+ b. Adapter's License means the license You apply to Your Copyright
+ and Similar Rights in Your contributions to Adapted Material in
+ accordance with the terms and conditions of this Public License.
+
+ c. BY-SA Compatible License means a license listed at
+ creativecommons.org/compatiblelicenses, approved by Creative
+ Commons as essentially the equivalent of this Public License.
+
+ d. Copyright and Similar Rights means copyright and/or similar rights
+ closely related to copyright including, without limitation,
+ performance, broadcast, sound recording, and Sui Generis Database
+ Rights, without regard to how the rights are labeled or
+ categorized. For purposes of this Public License, the rights
+ specified in Section 2(b)(1)-(2) are not Copyright and Similar
+ Rights.
+
+ e. Effective Technological Measures means those measures that, in the
+ absence of proper authority, may not be circumvented under laws
+ fulfilling obligations under Article 11 of the WIPO Copyright
+ Treaty adopted on December 20, 1996, and/or similar international
+ agreements.
+
+ f. Exceptions and Limitations means fair use, fair dealing, and/or
+ any other exception or limitation to Copyright and Similar Rights
+ that applies to Your use of the Licensed Material.
+
+ g. License Elements means the license attributes listed in the name
+ of a Creative Commons Public License. The License Elements of this
+ Public License are Attribution and ShareAlike.
+
+ h. Licensed Material means the artistic or literary work, database,
+ or other material to which the Licensor applied this Public
+ License.
+
+ i. Licensed Rights means the rights granted to You subject to the
+ terms and conditions of this Public License, which are limited to
+ all Copyright and Similar Rights that apply to Your use of the
+ Licensed Material and that the Licensor has authority to license.
+
+ j. Licensor means the individual(s) or entity(ies) granting rights
+ under this Public License.
+
+ k. Share means to provide material to the public by any means or
+ process that requires permission under the Licensed Rights, such
+ as reproduction, public display, public performance, distribution,
+ dissemination, communication, or importation, and to make material
+ available to the public including in ways that members of the
+ public may access the material from a place and at a time
+ individually chosen by them.
+
+ l. Sui Generis Database Rights means rights other than copyright
+ resulting from Directive 96/9/EC of the European Parliament and of
+ the Council of 11 March 1996 on the legal protection of databases,
+ as amended and/or succeeded, as well as other essentially
+ equivalent rights anywhere in the world.
+
+ m. You means the individual or entity exercising the Licensed Rights
+ under this Public License. Your has a corresponding meaning.
+
+
+Section 2 -- Scope.
+
+ a. License grant.
+
+ 1. Subject to the terms and conditions of this Public License,
+ the Licensor hereby grants You a worldwide, royalty-free,
+ non-sublicensable, non-exclusive, irrevocable license to
+ exercise the Licensed Rights in the Licensed Material to:
+
+ a. reproduce and Share the Licensed Material, in whole or
+ in part; and
+
+ b. produce, reproduce, and Share Adapted Material.
+
+ 2. Exceptions and Limitations. For the avoidance of doubt, where
+ Exceptions and Limitations apply to Your use, this Public
+ License does not apply, and You do not need to comply with
+ its terms and conditions.
+
+ 3. Term. The term of this Public License is specified in Section
+ 6(a).
+
+ 4. Media and formats; technical modifications allowed. The
+ Licensor authorizes You to exercise the Licensed Rights in
+ all media and formats whether now known or hereafter created,
+ and to make technical modifications necessary to do so. The
+ Licensor waives and/or agrees not to assert any right or
+ authority to forbid You from making technical modifications
+ necessary to exercise the Licensed Rights, including
+ technical modifications necessary to circumvent Effective
+ Technological Measures. For purposes of this Public License,
+ simply making modifications authorized by this Section 2(a)
+ (4) never produces Adapted Material.
+
+ 5. Downstream recipients.
+
+ a. Offer from the Licensor -- Licensed Material. Every
+ recipient of the Licensed Material automatically
+ receives an offer from the Licensor to exercise the
+ Licensed Rights under the terms and conditions of this
+ Public License.
+
+ b. Additional offer from the Licensor -- Adapted Material.
+ Every recipient of Adapted Material from You
+ automatically receives an offer from the Licensor to
+ exercise the Licensed Rights in the Adapted Material
+ under the conditions of the Adapter's License You apply.
+
+ c. No downstream restrictions. You may not offer or impose
+ any additional or different terms or conditions on, or
+ apply any Effective Technological Measures to, the
+ Licensed Material if doing so restricts exercise of the
+ Licensed Rights by any recipient of the Licensed
+ Material.
+
+ 6. No endorsement. Nothing in this Public License constitutes or
+ may be construed as permission to assert or imply that You
+ are, or that Your use of the Licensed Material is, connected
+ with, or sponsored, endorsed, or granted official status by,
+ the Licensor or others designated to receive attribution as
+ provided in Section 3(a)(1)(A)(i).
+
+ b. Other rights.
+
+ 1. Moral rights, such as the right of integrity, are not
+ licensed under this Public License, nor are publicity,
+ privacy, and/or other similar personality rights; however, to
+ the extent possible, the Licensor waives and/or agrees not to
+ assert any such rights held by the Licensor to the limited
+ extent necessary to allow You to exercise the Licensed
+ Rights, but not otherwise.
+
+ 2. Patent and trademark rights are not licensed under this
+ Public License.
+
+ 3. To the extent possible, the Licensor waives any right to
+ collect royalties from You for the exercise of the Licensed
+ Rights, whether directly or through a collecting society
+ under any voluntary or waivable statutory or compulsory
+ licensing scheme. In all other cases the Licensor expressly
+ reserves any right to collect such royalties.
+
+
+Section 3 -- License Conditions.
+
+Your exercise of the Licensed Rights is expressly made subject to the
+following conditions.
+
+ a. Attribution.
+
+ 1. If You Share the Licensed Material (including in modified
+ form), You must:
+
+ a. retain the following if it is supplied by the Licensor
+ with the Licensed Material:
+
+ i. identification of the creator(s) of the Licensed
+ Material and any others designated to receive
+ attribution, in any reasonable manner requested by
+ the Licensor (including by pseudonym if
+ designated);
+
+ ii. a copyright notice;
+
+ iii. a notice that refers to this Public License;
+
+ iv. a notice that refers to the disclaimer of
+ warranties;
+
+ v. a URI or hyperlink to the Licensed Material to the
+ extent reasonably practicable;
+
+ b. indicate if You modified the Licensed Material and
+ retain an indication of any previous modifications; and
+
+ c. indicate the Licensed Material is licensed under this
+ Public License, and include the text of, or the URI or
+ hyperlink to, this Public License.
+
+ 2. You may satisfy the conditions in Section 3(a)(1) in any
+ reasonable manner based on the medium, means, and context in
+ which You Share the Licensed Material. For example, it may be
+ reasonable to satisfy the conditions by providing a URI or
+ hyperlink to a resource that includes the required
+ information.
+
+ 3. If requested by the Licensor, You must remove any of the
+ information required by Section 3(a)(1)(A) to the extent
+ reasonably practicable.
+
+ b. ShareAlike.
+
+ In addition to the conditions in Section 3(a), if You Share
+ Adapted Material You produce, the following conditions also apply.
+
+ 1. The Adapter's License You apply must be a Creative Commons
+ license with the same License Elements, this version or
+ later, or a BY-SA Compatible License.
+
+ 2. You must include the text of, or the URI or hyperlink to, the
+ Adapter's License You apply. You may satisfy this condition
+ in any reasonable manner based on the medium, means, and
+ context in which You Share Adapted Material.
+
+ 3. You may not offer or impose any additional or different terms
+ or conditions on, or apply any Effective Technological
+ Measures to, Adapted Material that restrict exercise of the
+ rights granted under the Adapter's License You apply.
+
+
+Section 4 -- Sui Generis Database Rights.
+
+Where the Licensed Rights include Sui Generis Database Rights that
+apply to Your use of the Licensed Material:
+
+ a. for the avoidance of doubt, Section 2(a)(1) grants You the right
+ to extract, reuse, reproduce, and Share all or a substantial
+ portion of the contents of the database;
+
+ b. if You include all or a substantial portion of the database
+ contents in a database in which You have Sui Generis Database
+ Rights, then the database in which You have Sui Generis Database
+ Rights (but not its individual contents) is Adapted Material,
+
+ including for purposes of Section 3(b); and
+ c. You must comply with the conditions in Section 3(a) if You Share
+ all or a substantial portion of the contents of the database.
+
+For the avoidance of doubt, this Section 4 supplements and does not
+replace Your obligations under this Public License where the Licensed
+Rights include other Copyright and Similar Rights.
+
+
+Section 5 -- Disclaimer of Warranties and Limitation of Liability.
+
+ a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
+ EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
+ AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
+ ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
+ IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
+ WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
+ PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
+ ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
+ KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
+ ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
+
+ b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
+ TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
+ NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
+ INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
+ COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
+ USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
+ ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
+ DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
+ IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
+
+ c. The disclaimer of warranties and limitation of liability provided
+ above shall be interpreted in a manner that, to the extent
+ possible, most closely approximates an absolute disclaimer and
+ waiver of all liability.
+
+
+Section 6 -- Term and Termination.
+
+ a. This Public License applies for the term of the Copyright and
+ Similar Rights licensed here. However, if You fail to comply with
+ this Public License, then Your rights under this Public License
+ terminate automatically.
+
+ b. Where Your right to use the Licensed Material has terminated under
+ Section 6(a), it reinstates:
+
+ 1. automatically as of the date the violation is cured, provided
+ it is cured within 30 days of Your discovery of the
+ violation; or
+
+ 2. upon express reinstatement by the Licensor.
+
+ For the avoidance of doubt, this Section 6(b) does not affect any
+ right the Licensor may have to seek remedies for Your violations
+ of this Public License.
+
+ c. For the avoidance of doubt, the Licensor may also offer the
+ Licensed Material under separate terms or conditions or stop
+ distributing the Licensed Material at any time; however, doing so
+ will not terminate this Public License.
+
+ d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
+ License.
+
+
+Section 7 -- Other Terms and Conditions.
+
+ a. The Licensor shall not be bound by any additional or different
+ terms or conditions communicated by You unless expressly agreed.
+
+ b. Any arrangements, understandings, or agreements regarding the
+ Licensed Material not stated herein are separate from and
+ independent of the terms and conditions of this Public License.
+
+
+Section 8 -- Interpretation.
+
+ a. For the avoidance of doubt, this Public License does not, and
+ shall not be interpreted to, reduce, limit, restrict, or impose
+ conditions on any use of the Licensed Material that could lawfully
+ be made without permission under this Public License.
+
+ b. To the extent possible, if any provision of this Public License is
+ deemed unenforceable, it shall be automatically reformed to the
+ minimum extent necessary to make it enforceable. If the provision
+ cannot be reformed, it shall be severed from this Public License
+ without affecting the enforceability of the remaining terms and
+ conditions.
+
+ c. No term or condition of this Public License will be waived and no
+ failure to comply consented to unless expressly agreed to by the
+ Licensor.
+
+ d. Nothing in this Public License constitutes or may be interpreted
+ as a limitation upon, or waiver of, any privileges and immunities
+ that apply to the Licensor or You, including from the legal
+ processes of any jurisdiction or authority.
+
+
+=======================================================================
+
+Creative Commons is not a party to its public
+licenses. Notwithstanding, Creative Commons may elect to apply one of
+its public licenses to material it publishes and in those instances
+will be considered the “Licensor.” The text of the Creative Commons
+public licenses is dedicated to the public domain under the CC0 Public
+Domain Dedication. Except for the limited purpose of indicating that
+material is shared under a Creative Commons public license or as
+otherwise permitted by the Creative Commons policies published at
+creativecommons.org/policies, Creative Commons does not authorize the
+use of the trademark "Creative Commons" or any other trademark or logo
+of Creative Commons without its prior written consent including,
+without limitation, in connection with any unauthorized modifications
+to any of its public licenses or any other arrangements,
+understandings, or agreements concerning use of licensed material. For
+the avoidance of doubt, this paragraph does not form part of the
+public licenses.
+
+Creative Commons may be contacted at creativecommons.org.
+
diff --git a/macros/latex/contrib/oststud/Makefile b/macros/latex/contrib/oststud/Makefile
new file mode 100644
index 0000000000..a6035b941d
--- /dev/null
+++ b/macros/latex/contrib/oststud/Makefile
@@ -0,0 +1,64 @@
+TEX := xelatex
+TEXARGS := --synctex=1 --interaction=nonstopmode \
+ --shell-escape
+
+.PHONY: ins doc tests dist
+all: build ins doc tests
+
+build:
+ mkdir -p build
+
+dist: oststud.tar.gz
+
+
+# ZIP to distribute to CTAN
+oststud.tar.gz: Makefile README.md LICENSE.txt \
+ oststud.ins oststud.dtx build/oststud.pdf \
+ hsrstud.ins hsrstud.dtx build/hsrstud.pdf \
+ hsrstud-classes.dtx build/hsrstud-classes.pdf
+ tar cvzf $@ --transform 's,build/,,' --transform 's,^,oststud/,' $^
+
+# Installer file
+ins: build/oststud.sty build/hsrzf.cls build/hsrbericht.cls build/hsrstud.sty
+
+build/oststud.sty: oststud.ins oststud.dtx build
+ $(TEX) $(TEXARGS) --output-directory=build $<
+
+build/hsrzf.cls build/hsrbericht.cls build/hsrstud.sty: hsrstud.ins hsrstud-classes.dtx hsrstud.dtx build
+ $(TEX) $(TEXARGS) --output-directory=build $<
+
+
+# Documentation for packages
+doc: build/oststud.pdf build/hsrstud.pdf build/hsrstud-classes.pdf
+
+build/oststud.pdf: oststud.dtx ins build
+ $(TEX) $(TEXARGS) --output-directory=build $<
+ cd build && \
+ makeindex -s gind.ist -o oststud.ind oststud.idx && \
+ makeindex -s gglo.ist -o oststud.gls oststud.glo
+ $(TEX) $(TEXARGS) --output-directory=build $<
+ $(TEX) $(TEXARGS) --output-directory=build $<
+
+build/hsrstud.pdf: hsrstud.dtx ins build
+ $(TEX) $(TEXARGS) --output-directory=build $<
+ cd build && \
+ makeindex -s gind.ist -o hsrstud.ind hsrstud.idx && \
+ makeindex -s gglo.ist -o hsrstud.gls hsrstud.glo
+ $(TEX) $(TEXARGS) --output-directory=build $<
+ $(TEX) $(TEXARGS) --output-directory=build $<
+
+build/hsrstud-classes.pdf: hsrstud-classes.dtx ins build
+ $(TEX) $(TEXARGS) --output-directory=build $<
+ cd build && \
+ makeindex -s gind.ist -o hsrstud-classes.ind hsrstud-classes.idx && \
+ makeindex -s gglo.ist -o hsrstud-classes.gls hsrstud-classes.glo
+ $(TEX) $(TEXARGS) --output-directory=build $<
+ $(TEX) $(TEXARGS) --output-directory=build $<
+
+
+# Test files
+tests: build/test/bericht.pdf build/test/zf.pdf
+
+build/test/%.pdf: test/%.tex
+ mkdir -p build/test
+ $(TEX) $(TEXARGS) --output-directory=build/test $<
diff --git a/macros/latex/contrib/oststud/README.md b/macros/latex/contrib/oststud/README.md
new file mode 100644
index 0000000000..aaac61e79b
--- /dev/null
+++ b/macros/latex/contrib/oststud/README.md
@@ -0,0 +1,53 @@
+# OST-Stud LaTeX Style & Macros
+
+## Built it
+
+### Automagically with `make`
+
+It is as simple as it gets.
+```
+$ make
+```
+The output will be generated in a directory called `build`.
+
+### Manually
+
+This will generate many files including `oststud.sty` that can be placed in the
+folder of any other LaTeX project, which can access the library with
+`\usepackage{oststud}`
+```
+$ xelatex oststud.ins # generate oststud.sty
+```
+
+To get the documentation (in PDF) you can compile the respective `dtx` file
+```
+$ xelatex oststud.dtx # generate documentation oststud.pdf
+```
+
+## The older `hsrstud` package
+
+The previous version of thie package for the Hochschule für Technik Rapperswil,
+i.e. `hsrstud`, is still available for backwards compatibility. To get
+`hsrstud.sty` and its documentation run `make` or manually:
+```
+$ xelatex hsrstud.ins # generate hsrstud.sty
+$ xelatex hsrstud.dtx # generate documentation hsrstud.pdf
+```
+
+The `hsrstud` package has documentclasses which are not (yet) available in the
+newer version. To get `hsrbericht.cls` or `hsrzf.cls` without using `make` run
+```
+$ xelatex hsrstud-classes.ins # generate .cls files
+$ xelatex hsrstud-classes.dtx # generate documentation hsrstud-classes.pdf
+```
+
+
+## License
+```
+OSTStud (c) by Naoki Pross
+
+OSTStud is licensed under a Creative Commons Attribution-ShareAlike 4.0 Unported License.
+You should have received a copy of the license along with this work. If not, see
+
+http://creativecommons.org/licenses/by-sa/4.0/
+```
diff --git a/macros/latex/contrib/oststud/hsrstud-classes.dtx b/macros/latex/contrib/oststud/hsrstud-classes.dtx
new file mode 100644
index 0000000000..d5ea6500c2
--- /dev/null
+++ b/macros/latex/contrib/oststud/hsrstud-classes.dtx
@@ -0,0 +1,594 @@
+% \iffalse
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Documentation Builder
+%<*doc>
+\documentclass[a4paper]{ltxdoc}
+
+\usepackage{hsrstud}
+\usepackage[
+ type={CC},
+ modifier={by-sa},
+ version={4.0},
+]{doclicense}
+\usepackage[
+ margin=3.5cm,
+ left=4cm
+]{geometry}
+
+\usepackage{booktabs}
+\usepackage{enumitem}
+
+\CodelineIndex
+\EnableCrossrefs
+\RecordChanges
+
+%% Metadata
+\title{\textcolor{hsr-blue}{HSR}--Stud Document Classes}
+\author{Naoki Pross \texttt{<naoki.pross@ost.ch>}}
+\date{\today}
+
+\begin{document}
+\DocInput{\jobname.dtx}
+
+\end{document}
+%</doc>
+% \fi
+
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A Classes Documentation
+%
+% \maketitle
+% \tableofcontents
+%
+% \section{Purpose of these document classes}
+% The following document classes were made by and for the HSR-Stud organization.
+% These classes are intended to be used to create beautiful summaries and cheat
+% sheets. Available classes are:
+% \begin{description}[align=right]
+% \item[|hsrzf|] For summaries (Zusammenfassung)
+% \item[|hsrbericht|] For reports (Bericht)
+% \end{description}
+%
+%
+% \section{Class Options}
+% \begin{description}[align=right]
+% \item[\tt sans] Use Sans-Serif fonts (|cmbright| and |hfbright|).
+% \item[\tt slab] Use Slab-Serif fonts (|bitter| and |eulervm|).
+% \item[\tt margin=<size>] Sets up margins to reasonable size.
+% \item[\tt *] Any other given option is passed to the underlying class (article).
+% \end{description}
+%
+% \begin{table}\centering
+% \begin{tabular}{l r r l r r}
+% \toprule
+% Size & H & V & Size & H & V \\
+% \midrule
+% huge & 45 & 40 & small & 20 & 20 \\
+% large & 35 & 35 & tiny & 10 & 20 \\
+% big & 30 & 30 & minimal & 5 & 20 \\
+% normal & 25 & 30 \\
+% \bottomrule
+% \end{tabular}
+% \caption{Sizes for the {\tt margin} option. All sizes are in millimeters}
+% \end{table}
+%
+%
+% \section{Extra Metadata}
+% Thanks to the {\tt titling} package, normal metadata informations are available
+% throug the following commands: \cs{theauthor}, \cs{thedate}, \cs{thetitle}.
+% Additionally, more metadata variables have been created for this class, to
+% conserve informations related to the university course.
+% \begin{description}[align=right]
+% \item[\cs{course}] The degree programme of the discussed subject.
+% Example: |Elektrotechnik|
+% \item[\cs{module}] Short name of the module according to the class
+% schedule. Example: |ComEng1|
+% \item[\cs{semester}] Semester during which the summarized subject was
+% taught. Example: |FS20|
+% \item[\cs{institute}] Internal institute in which the module was taught.
+% This field is optional.
+% \item[\cs{authoremail}] Email of the author. This field is optional.
+% \item[\cs{maintainer}] Name of the person maintaining the work. This
+% field is optional.
+% \item[\cs{contributors}] List of names of those who have contributed to
+% the document. This field is optional.
+% \end{description}
+% Like \cs{date}, \cs{title}, etc. these fields have too an accessor macro
+% \cs{the<metadata>}. For example: \cs{thecourse}, \cs{themodule}, and so on.
+%
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A Zusammenfassung Class Documentation
+% \section{Zusammenfassung \texttt{hsrzf} class}
+% This class is intended to be used to write short summaries.
+%
+% \subsection{Class options}
+% \begin{description}[align=right]
+% \item[\tt header] Use the HSR--Stud standard header. The option
+% {\tt noheader} disables the header.
+% \end{description}
+%
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A Bericht Class Documentation
+% \section{Bericht \texttt{hsrbericht} class}
+% This class tries to conform to the indications given by the communication
+% department of the HSR. The specifications are found in the ``Werkzeugkastens
+% Technische Berichte''.
+%
+% \subsection{Metadata}
+% In addition to the metadata described in the previous section. This class
+% requires:
+% \begin{description}[align=right]
+% \item[\cs{subtitle}] Pretty self explanatory.
+% \item[\cs{category}] Category assigned to the project.
+% This field is optional.
+% \item[\cs{project}] Name or reference to your project.
+% \item[\cs{topic}] You chosen topic in the category.
+% \item[\cs{instructor}] Name of the instructor / academic that is
+% following or has assigned your work.
+% \item[\cs{startdate}] Date when you started the project.
+% \item[\cs{finishdate}] Date when you finished the project (can be set to
+% \cs{today} to keep automatically updated.
+% \item[\cs{address}] Address or place where your work is produced.
+% This field is optional.
+% \item[\cs{matriculationnr}] Your matriculation number.
+% \item[\cs{logo}] Code to insert your logo.
+% \item[\cs{clientlogo}] Code to insert the logo of the client / research
+% department / \dots .
+% \end{description}
+%
+% \section{Minimal working examples}
+%
+% ^^A TODO: fix this with `%'
+% \begin{lstlisting}
+% \documentclass[margin=normal]{hsrzf}
+%
+% % Packages
+% %% the HSRStud package
+% \usepackage{hsrstud}
+%
+% % Metadata
+% \course{Elektrotechnik}
+% \module{ModAbk}
+% \semester{Herbstsemester 2020}
+%
+% \authoremail{vname@hsr.ch}
+% \author{\textsl{Vorname Name} -- \texttt{\theauthoremail}}
+%
+% \title{\texttt{\themodule} Zusammenfassung}
+% \date{\thesemester}
+%
+% % document
+% \begin{document}
+% \maketitle
+% \tableofcontents
+% \section{Introduction}
+% \[
+% i\hbar \partial_t \left| \psi(t) \right\rangle
+% = \hat{H} \left| \psi(t) \right\rangle
+% \]
+%
+% \end{document}\end{lstlisting}
+%
+% \section{License}
+% \doclicenseThis
+%
+% \PrintChanges
+% \PrintIndex
+%
+% \section{Implementation}
+% \begin{macrocode}
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A Class Headers
+
+%<*hsrzf>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{hsrzf}[2020/04/05 v0.1 HSRStud Summary class]
+%</hsrzf>
+
+%<*hsrbericht>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{hsrbericht}[2020/05/05 v0.1 HSRStud Report class]
+%</hsrbericht>
+
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A Implementation
+%
+%<*hsrzf|hsrbericht>
+
+%% Coding Packages (Dependencies)
+\RequirePackage{iftex}
+\RequirePackage{kvoptions}
+\RequirePackage{etoolbox}
+
+%% Default font
+\RequirePackage{lmodern}
+
+%% Class options
+\SetupKeyvalOptions{
+ family=hsr,
+ prefix=hsr@
+}
+
+%% Use header and footer
+\DeclareBoolOption[false]{header}
+\DeclareComplementaryOption{noheader}{header}
+
+%% Use a sans-serif slab-serif or concrete font
+\DeclareBoolOption[false]{sans}
+\DeclareBoolOption[false]{slab}
+\DeclareBoolOption[false]{concrete}
+
+%% Configures the geometry package
+%%
+%% Possible values:
+%% - huge (45mm, 40mm)
+%% - large (35mm, 35mm)
+%% - big (30mm, 30mm)
+%% - normal (25mm, 30mm)
+%% - small (20mm, 20mm)
+%% - tiny (10mm, 20mm)
+%% - minimal ( 5mm, 20mm)
+\DeclareStringOption{margin}[huge]
+
+%% Configures the polyglossia package
+% \DeclareStringOption[]{lang}[german]
+
+
+%% Pass other options to the class
+\DeclareDefaultOption{%
+ \ifx\CurrentOptionValue\relax
+ \PackageWarningNoLine{\@currname}{%
+ Unknown option ``\CurrentOption''\MessageBreak
+ is passed to class ``article''%
+ }%
+ % Pass the option to package color.
+ % Again it is better to expand \CurrentOption.
+ \expandafter\PassOptionsToClass
+ \expandafter{\CurrentOption}{article}
+ \else
+ % Package color does not take options with values.
+ % We provide the standard LaTeX error.
+ \@unknownoptionerror
+ \fi
+}
+
+\ProcessKeyvalOptions{hsr}
+
+
+%% Create new metadata fields
+
+%% Required fields
+\newcommand\course[1]{\gdef\hsr@course{#1}}
+\newcommand\hsr@course{\ClassError{hsrzf}{no \noexpand\course given}{}}
+\newcommand\thecourse{\hsr@course}
+
+\newcommand\module[1]{\gdef\hsr@module{#1}}
+\newcommand\hsr@module{\ClassError{hsrzf}{no \noexpand\module given}{}}
+\newcommand\themodule{\hsr@module}
+
+\newcommand\semester[1]{\gdef\hsr@semester{#1}}
+\newcommand\hsr@semester{\ClassError{hsrzf}{no \noexpand\semester given}{}}
+\newcommand\thesemester{\hsr@semester}
+
+%% Optional fields
+\newcommand\institute[1]{\gdef\hsr@institute{#1}}
+\newcommand\hsr@institute{\ClassWarning{hsrzf}{no \noexpand\institute given}{}}
+\newcommand\theinstitute{\hsr@institute}
+
+\newcommand\authoremail[1]{\gdef\hsr@authoremail{#1}}
+\newcommand\hsr@authoremail{\ClassWarning{hsrzf}{no \noexpand\authoremail given}{}}
+\newcommand\theauthoremail{\hsr@authoremail}
+
+\newcommand\maintainer[1]{\gdef\hsr@maintainer{#1}}
+\newcommand\hsr@maintainer{\ClassWarning{hsrzf}{no \noexpand\maintainer given}{}}
+\newcommand\themaintainer{\hsr@maintainer}
+
+\newcommand\contributors[1]{\gdef\hsr@contributors{#1}}
+\newcommand\hsr@contributors{\ClassWarning{hsrzf}{no \noexpand\contributors given}{}}
+\newcommand\thecontributors{\hsr@contributors}
+%</hsrzf|hsrbericht>
+%<*hsrbericht>
+%% The report class has some extra metadata
+
+%% Extra title informations
+\newcommand\subtitle[1]{\gdef\hsr@subtitle{#1}}
+\newcommand\hsr@subtitle{\ClassError{hsrbericht}{no \noexpand\subtitle given}{}}
+\newcommand\thesubtitle{\hsr@subtitle}
+
+%% Project informations
+\newcommand\category[1]{\gdef\hsr@category{#1}}
+\newcommand\hsr@category{\ClassWarning{hsrbericht}{no \noexpand\category given}{}}
+\newcommand\thecategory{\hsr@category}
+
+\newcommand\project[1]{\gdef\hsr@project{#1}}
+\newcommand\hsr@project{\ClassError{hsrbericht}{no \noexpand\project given}{}}
+\newcommand\theproject{\hsr@project}
+
+\newcommand\topic[1]{\gdef\hsr@topic{#1}}
+\newcommand\hsr@topic{\ClassError{hsrbericht}{no \noexpand\topic given}{}}
+\newcommand\thetopic{\hsr@topic}
+
+\newcommand\version[1]{\gdef\hsr@version{#1}}
+\newcommand\hsr@version{\ClassError{hsrbericht}{no \noexpand\version given}{}}
+\newcommand\theversion{\hsr@version}
+
+\newcommand\instructor[1]{\gdef\hsr@instructor{#1}}
+\newcommand\hsr@instructor{\ClassError{hsrbericht}{no \noexpand\instructor given}{}}
+\newcommand\theinstructor{\hsr@instructor}
+
+\newcommand\startdate[1]{\gdef\hsr@startdate{#1}}
+\newcommand\hsr@startdate{\ClassError{hsrbericht}{no \noexpand\startdate given}{}}
+\newcommand\thestartdate{\hsr@startdate}
+
+\newcommand\finishdate[1]{\gdef\hsr@finishdate{#1}}
+\newcommand\hsr@finishdate{\ClassError{hsrbericht}{no \noexpand\finishdate given}{}}
+\newcommand\thefinishdate{\hsr@finishdate}
+
+%% Author informations
+\newcommand\address[1]{\gdef\hsr@address{#1}}
+\newcommand\hsr@address{\ClassWarning{hsrbericht}{no \noexpand\address given}{}}
+\newcommand\theaddress{\hsr@address}
+
+\newcommand\matriculationnr[1]{\gdef\hsr@matriculationnr{#1}}
+\newcommand\hsr@matriculationnr{\ClassError{hsrbericht}{no \noexpand\matriculationnr given}{}}
+\newcommand\thematriculationnr{\hsr@matriculationnr}
+
+%% Logos informations
+\newcommand\logo[1]{\gdef\hsr@logo{#1}}
+\newcommand\hsr@logo{\ClassWarning{hsrbericht}{no \noexpand\logo given}{}}
+\newcommand\thelogo{\hsr@logo}
+
+\newcommand\clientlogo[1]{\gdef\hsr@clientlogo{#1}}
+\newcommand\hsr@clientlogo{\ClassWarning{hsrbericht}{no \noexpand\clientlogo given}{}}
+\newcommand\theclientlogo{\hsr@clientlogo}
+%</hsrbericht>
+%<*hsrzf|hsrbericht>
+
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A Setup base class
+\LoadClass[a4paper]{article}
+
+%% Style deps
+\RequirePackage{geometry}
+\RequirePackage{fancyhdr}
+\RequirePackage{titling}
+\RequirePackage{totpages}
+\RequirePackage{array}
+
+%% Insert metadata in the pdf
+\PassOptionsToPackage{plainpages=false, pdfpagelabels, pdfusetitle}{hyperref}
+\RequirePackage{hyperref}
+
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A Setup Style
+%
+
+
+%% Configure Sans-Serif font
+\ifhsr@sans
+ \ifhsr@slab
+ \PackageError{hsrzf}{%
+ sans ans slab options cannot be used at the same time
+ }
+ \fi
+ \ifhsr@concrete{hsrzf}{%
+ sans and concrete options cannot be used at the same time
+ }
+ \fi
+
+ \PassOptionsToPackage{T1}{fontenc}
+ \RequirePackage{fontenc}
+ \RequirePackage{cmbright}
+ \RequirePackage{sfmath}
+\fi
+
+%% Configure Slab-Serif font
+\ifhsr@slab
+ \ifhsr@sans
+ \PackageError{hsrzf}{%
+ slab and sans options cannot be used at the same time
+ }
+ \fi
+ \ifhsr@concrete{hsrzf}{%
+ slab and concrete options cannot be used at the same time
+ }
+ \fi
+
+ \PassOptionsToPackage{T1}{fontenc}
+ \RequirePackage{fontenc}
+ \PassOptionsToPackage{rm,light}{roboto}
+ \RequirePackage{roboto}
+\fi
+
+%% Configure (secret) concrete font
+\ifhsr@concrete
+ \ifhsr@sans{hsrzf}{%
+ concrete and sans options cannot be used at the same time
+ }
+ \fi
+ \ifhsr@slab
+ \PackageError{hsrzf}{%
+ concrete ans slab options cannot be used at the same time
+ }
+ \fi
+
+ \PassOptionsToPackage{boldsans,amssymb}{concmath}
+ \RequirePackage{concmath}
+ \PassOptionsToPackage{T1}{fontenc}
+ \RequirePackage{fontenc}
+\fi
+
+%% configure geometry
+%% defaults to big
+\newlength{\hsr@hmarginwidth}
+\newlength{\hsr@vmarginheight}
+
+\ifx\hsr@margin\@empty
+ \setlength\hsr@hmarginwidth{30mm}
+ \setlength\hsr@vmarginheight{30mm}
+\else
+ \expandafter\ifstrequal\expandafter{\hsr@margin}{huge}{
+ \setlength\hsr@hmarginwidth{45mm}
+ \setlength\hsr@vmarginheight{40mm}}{}
+%%
+ \expandafter\ifstrequal\expandafter{\hsr@margin}{large}{
+ \setlength\hsr@hmarginwidth{35mm}
+ \setlength\hsr@vmarginheight{35mm}}{}
+%%
+ \expandafter\ifstrequal\expandafter{\hsr@margin}{big}{
+ \setlength\hsr@hmarginwidth{30mm}
+ \setlength\hsr@vmarginheight{30mm}}{}
+%%
+ \expandafter\ifstrequal\expandafter{\hsr@margin}{normal}{
+ \setlength\hsr@hmarginwidth{25mm}
+ \setlength\hsr@vmarginheight{30mm}}{}
+%%
+ \expandafter\ifstrequal\expandafter{\hsr@margin}{small}{
+ \setlength\hsr@hmarginwidth{20mm}
+ \setlength\hsr@vmarginheight{20mm}}{}
+%%
+ \expandafter\ifstrequal\expandafter{\hsr@margin}{tiny}{
+ \setlength\hsr@hmarginwidth{10mm}
+ \setlength\hsr@vmarginheight{20mm}}{}
+%%
+ \expandafter\ifstrequal\expandafter{\hsr@margin}{minimal}{
+ \setlength\hsr@hmarginwidth{ 5mm}
+ \setlength\hsr@vmarginheight{20mm}}{}
+%%
+ % TODO: fix this
+ % \ClassError{hsrzf}{Invalid margin size}
+ % \setlength\hsr@hmarginwidth{30mm}
+ % \setlength\hsr@vmarginheight{30mm}
+\fi
+
+%</hsrzf|hsrbericht>
+
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A HSR ZF specific
+%<*hsrzf>
+%% TODO: change vmarginheight if header is on
+\newgeometry{
+ hmargin=\hsr@hmarginwidth,
+ vmargin=\hsr@vmarginheight,
+ marginparsep=0pt,
+ marginpar=0pt,
+}
+
+\fancypagestyle{hsrzf}{%
+ \fancyhf{} % clear
+ \fancyhead[L]{\leftmark}
+ \fancyhead[C]{\themodule}
+ \fancyhead[R]{\@date}
+
+ \fancyfoot[L]{\href{https://github.com/HSR-Stud/}{\texttt{HSR-Stud}}}
+ \fancyfoot[C]{\texttt{CC BY-NC-SA}}
+ \fancyfoot[R]{\thepage ~/ \pageref{TotPages}}
+
+ \renewcommand{\headrulewidth}{.5pt}
+ \renewcommand{\footrulewidth}{.5pt}
+}
+
+\fancypagestyle{hsrzf-norulers}{%
+ \fancyhf{} % clear
+ \fancyhead[L]{\leftmark}
+ \fancyhead[C]{\themodule}
+ \fancyhead[R]{\@date}
+
+ \fancyfoot[L]{\href{https://github.com/HSR-Stud/}{\texttt{HSR-Stud}}}
+ \fancyfoot[C]{\texttt{CC BY-NC-SA}}
+ \fancyfoot[R]{\thepage ~/ \pageref{TotPages}}
+
+ \renewcommand{\headrulewidth}{0pt}
+ \renewcommand{\footrulewidth}{0pt}
+}
+
+\ifhsr@header
+\pagestyle{hsrzf}
+\fi
+%</hsrzf>
+
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%^^A HSR Bericht specific
+%<*hsrbericht>
+
+%% Redefine title and abstract
+\renewcommand\maketitle{%
+\begin{titlepage}
+ \thispagestyle{hsrbericht}
+ \begin{center}
+ \vspace*{6cm}
+ \textbf{\fontsize{48}{60}\selectfont \@title}
+ \vspace{1.5cm} \\
+ \textbf{\fontsize{24}{48}\selectfont \hsr@subtitle}
+ \vspace{1cm} \\
+ \textbf{\fontsize{22}{48}\selectfont \hsr@category}
+ \vspace{0.5cm} \\
+ \begin{tabular}{rl}
+ \textbf{Version:} & \hsr@version \\
+ \end{tabular}
+ \vspace{4cm} \\
+ \begin{tabular}{rl p{1.5cm} rl}
+ \textbf{Autor:} & \textbf{\@author} && Dozent: & \hsr@instructor \\
+ E-Mail: & \texttt{\hsr@authoremail} && Themengebiet: & \hsr@topic \\
+ Matrikelnummer: & \hsr@matriculationnr && Studiengang: & \hsr@course \\
+ Adresse: & \hsr@address && & \\
+ \end{tabular}{}
+ \vspace{2cm} \\
+ \begin{tabular}{rl}
+ \textbf{Erstellt am:} & \textbf{\hsr@startdate} \\
+ \textbf{Letze Änderung am:} & \textbf{\hsr@finishdate} \\
+ \end{tabular}
+ \end{center}
+\end{titlepage}}
+
+\renewenvironment{abstract}{%
+ \section*{Abstract}%
+ \newcommand\problem{\paragraph{Problem}}
+ \newcommand\goal{\paragraph{Ziel}}
+ \newcommand\method{\paragraph{Method / Vorgehen}}
+ \newcommand\results{\paragraph{Wesentliche Ergebnisse}}
+ \newcommand\suggestions{\paragraph{Empfehlungen}}
+ \newcommand\keywords{\paragraph{Schl\"usselw\"orter}}
+}{}
+
+%% TODO: twoside / book support
+%% Debug:
+%% \RequirePackage{showframe}
+
+\newgeometry{
+ hmargin=\hsr@hmarginwidth,
+ vmargin=\hsr@vmarginheight,
+ marginparsep=0pt,
+ marginpar=0pt,
+}
+
+%% Configure headers
+\fancypagestyle{hsrbericht}{%
+ \fancyhf{} % clear
+ \fancyhead[C]{\@title}
+ \fancyhead[R]{\hsr@clientlogo}
+ \fancyhead[L]{\hsr@logo}
+ \fancyfoot[R]{\thepage / \pageref{TotPages} }
+ \fancyfoot[L]{Dockument: \jobname \\ Druck: \finishdate}
+ \renewcommand{\headrulewidth}{.5pt}
+ \renewcommand{\footrulewidth}{.5pt}
+}
+
+\fancypagestyle{plain}{%
+ \fancyhf{} % clear
+ \fancyhead[C]{\@title}
+ \fancyhead[R]{\hsr@clientlogo}
+ \fancyhead[L]{\hsr@logo}
+ \fancyfoot[R]{\thepage / \pageref{TotPages} }
+ \fancyfoot[L]{Dockument: \jobname \\ Druck: \finishdate}
+ \renewcommand{\headrulewidth}{.5pt}
+ \renewcommand{\footrulewidth}{.5pt}
+}
+
+\pagestyle{hsrbericht}
+
+%</hsrbericht>
+% \end{macrocode}
+%
+% \Finale
+%^^A vim:set tw=80 sw=2 ts=2 et:
diff --git a/macros/latex/contrib/oststud/hsrstud-classes.pdf b/macros/latex/contrib/oststud/hsrstud-classes.pdf
new file mode 100644
index 0000000000..29590a39a7
--- /dev/null
+++ b/macros/latex/contrib/oststud/hsrstud-classes.pdf
Binary files differ
diff --git a/macros/latex/contrib/oststud/hsrstud.dtx b/macros/latex/contrib/oststud/hsrstud.dtx
new file mode 100644
index 0000000000..c82dbe2fe0
--- /dev/null
+++ b/macros/latex/contrib/oststud/hsrstud.dtx
@@ -0,0 +1,619 @@
+% \iffalse meta-comment
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Headers
+
+%<*package>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{hsrstud}[2021/08/04 v0.2 HSR-Stud Macros]
+%</package>
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Documentation
+%<*doc>
+\documentclass[a4paper]{ltxdoc}
+
+\usepackage{hypdoc}
+
+%% https://tex.stackexchange.com/questions/95882/avoid-multicol-error-error-saving-partial-page
+%% \setlength\IndexMin{100pt}
+
+\usepackage[left=4cm, right=4cm, top=3cm, bottom=3cm]{geometry}
+
+\usepackage{\jobname}
+
+\usepackage{fancyvrb}
+\usepackage{enumitem}
+\usepackage{framed}
+\usepackage{booktabs}
+\usepackage{tikz}
+\usepackage{xargs}
+\usepackage{bookmark}
+
+\usepackage[
+ type={CC},
+ modifier={by-sa},
+ version={4.0},
+]{doclicense}
+
+\CodelineIndex
+\EnableCrossrefs
+\RecordChanges
+
+\makeatletter
+\newlength\excodewidth
+\newenvironment{example}{%
+ \leftbar\VerbatimEnvironment%
+ \global\excodewidth=.5\linewidth%
+ \begin{VerbatimOut}{\jobname.vrb}%
+}{%
+ \end{VerbatimOut}%
+ \noindent%
+ \minipage[c]{\excodewidth}%
+ \vspace{0pt}\input{\jobname.vrb}%
+ \endminipage%
+ \minipage[c]{\dimexpr\linewidth-\excodewidth-2\fboxsep-2\fboxrule-\FrameSep\relax}%
+ \vspace{0pt}\lstinputlisting{\jobname.vrb}%
+ \endminipage%
+ \endleftbar%
+}
+
+\newenvironment{hexample}{%
+ \leftbar\VerbatimEnvironment%
+ \begin{VerbatimOut}{\jobname.vrb}%
+}{%
+ \end{VerbatimOut}%
+ \noindent%
+ \begingroup\centering%
+ \hspace{5pt}%
+ \minipage[t]{\linewidth}%
+ \vspace{0pt}\input{\jobname.vrb}%
+ \endminipage\\
+ \hspace{5pt}%
+ \minipage[t]{\linewidth}%
+ \vspace{0pt}\lstinputlisting{\jobname.vrb}%
+ \endminipage%
+ \endgroup%
+ \endleftbar%
+}
+
+
+\makeatother
+
+\begin{document}
+\GetFileInfo{\jobname.sty}
+\title{^^A
+ \texttt{\textcolor{hsr-blue}{hsr}stud} --- HSR-Stud Style and Macros\thanks{^^A
+ This file describes version \fileversion, last revised \filedate.^^A
+ }^^A
+}
+\author{Naoki Pross \texttt{<naoki.pross@ost.ch>}}
+\date{Released \filedate}
+\maketitle
+\tableofcontents
+
+\changes{v0.2}{2021/08/05}{Remove legacy code and update notation}
+\changes{v0.1}{2020/02/16}{Initial draft}
+
+\section{Purpose of this package}
+This package is made for the HSR Studenten organization to provide an easy to
+use interface to give a more consistent look and feel for the works produced by
+its the members. A secondary objective of this package is to eliminate the
+\emph{many} dispersed duplicate .tex files that fill the repositories of the
+HSR-Stud org.
+
+
+\section{Package Options} \label{sec:options}
+\begin{description}[align=right]
+ \item[|dontrenew|] Do not renew existing \LaTeX{} commands and
+ environments. This is useful when the package is loaded on a document
+ that is already partially written.
+
+ \item[|arrowvec|] Tells the package to use a vector notation with a small
+ arrow over the variables, as it were handwritten.
+
+ \item[|textvecdiff|] Disables the ``Nabla'' or ``Del'' notation for vector
+ derivatives. Instead the symbols \(\vec{\nabla}, \vec{\nabla}\dotp,
+ \vec{\nabla}\crossp, \nabla^2, \vec{\nabla}^2\) are be replaced with
+ grad, div, curl and div grad.
+\end{description}
+
+\section{Summary notation}
+
+\section{Default Theming}
+\subsection{Links with \texttt{hyperref}}
+
+\begin{example}
+Colors from
+\cite{bib:hsrcolors} see \\
+\url{https://intranet.hsr.ch}
+\end{example}
+
+\subsection{Source Code with \texttt{listings}}
+
+\begin{hexample}
+\begin{lstlisting}[language=C++]
+int main(int argc, char *argv[], char *envp[]) {
+ std::cout << "hello world" << std::endl;
+}
+\end{lstlisting}
+\end{hexample}
+
+\section{Mathematics}
+\subsection{Vectors}
+
+\begin{macro}{\vec}
+
+Vectors notation. Aliases: \cs{v}, \cs{vc}. If the option \texttt{arrowvec}
+described in \S \ref{sec:options} is enabled, the notation with a small
+arrow over the varible will be used \(\hsrvecarrow{x}\), otherwise the
+vector is bold \(\hsrvecbold{x}\). Takes one option \marg{letter}. \cs{v}
+is renamed to \cs{vaccent} and \cs{vec} to \cs{oldvec}.
+
+\begin{example}
+\[ \vec{F} = m\vec{a} \]
+\end{example}
+\end{macro}
+
+\begin{macro}{\uvec}
+Unit vector notation. Alias \cs{uv}. Takes \marg{letter}. It is implemented
+in terms of \cmd{\vec}, which means that the style is inherited.
+\begin{example}
+\[ \uvec{x} = \vec{x}/x \]
+\end{example}
+\end{macro}
+
+\subsubsection{Products}
+\begin{macro}{\dotp}
+Dot product between vectors.
+\begin{example}
+\[ \vec{u}\dotp\vec{v} \]
+\end{example}
+\end{macro}
+
+\begin{macro}{\crossp}
+Cross product between vectors.
+\begin{example}
+\[ \vec{u}\crossp\vec{v} \]
+\end{example}
+\end{macro}
+
+
+\subsection{Matrices}
+
+\begin{macro}{\mx}
+Matrix notation. Takes \marg{letter}.
+
+\begin{example}
+\[
+ \mx{J} = \begin{pmatrix}
+ 0 & 1 \\
+ 1 & 0
+ \end{pmatrix}
+\]
+\end{example}
+\end{macro}
+
+\subsection{Equalities}
+
+\begin{macro}{\heq}
+ L'H\^opital limit equality symbol.
+\begin{hexample}
+\[
+ \lim_{x\to\infty} \frac{x}{x^2 - 1}
+ \heq \lim_{x\to\infty} \frac{1}{2x}
+ = 0
+\]
+\end{hexample}
+\end{macro}
+
+\subsection{Derivatives}
+\subsubsection{Differentials}
+
+\begin{macro}{\dd}
+The differential element. It needs a \marg{var} and has the optional
+argument \oarg{order}.
+\begin{example}
+\[ \dd{x} \qquad \dd[4]{x} \]
+\end{example}
+\end{macro}
+
+\begin{macro}{\di}
+This is the same as \cs{dd} but with a small space in front, it is
+intended to be used in integrals for a nicer typesetting.
+\begin{hexample}
+\begin{align*}
+ I &= \int \vec{J}\dotp\dd{\vec{s}} \\
+ &= \iint \vec{J}\dotp\uvec{n}\di{x}\di{y}
+\end{align*}
+\end{hexample}
+\end{macro}
+
+\subsubsection{Scalar functions}
+
+\begin{macro}{\deriv}
+The derivative has arguments \marg{function}, \marg{var} and the optional
+argument \oarg{order}.
+\begin{example}
+\[
+ \deriv{y}{x} \qquad
+ \deriv[3]{y}{x}
+\]
+\end{example}
+\end{macro}
+
+%% TODO: add mixed partial derivatives (probably using xparse)
+\begin{macro}{\pderiv}
+The partial derivative has arguments \marg{function}, \marg{var} and the
+optional argument \oarg{order}.
+\begin{example}
+\[
+ \pderiv{y}{x} \qquad
+ \pderiv[3]{y}{x}
+\]
+\end{example}
+\end{macro}
+
+\subsubsection{Vector functions}
+
+\begin{macro}{\grad}
+The gradient vector operator.
+\begin{example}
+\[ \grad f \]
+\end{example}
+\end{macro}
+
+\begin{macro}{\div}
+The divergence operator, \cs{div} is renamed to \cs{divsymb}. If the option
+|donotrenew| is used \cs{divg} is also available.
+\begin{example}
+\[ \div \vec{f} \]
+\end{example}
+\end{macro}
+
+\begin{macro}{\curl}
+The curl operator.
+\begin{example}
+\[ \curl \vec{f} \]
+\end{example}
+\end{macro}
+
+\begin{macro}{\laplacian}
+The laplacian operator.
+\begin{example}
+\[
+ \laplacian f
+\]
+\end{example}
+\end{macro}
+
+\begin{macro}{\vlaplacian}
+The vector laplacian operator operator.
+\begin{example}
+\[
+ \vlaplacian \vec{F}
+\]
+\end{example}
+\end{macro}
+
+
+\section{Colors}
+\begin{center}
+\begin{tikzpicture}
+ \foreach \color/\y in {%
+ hsr-blue/7,
+ hsr-mauve/6,
+ hsr-lakegreen/5,
+ hsr-reed/4,
+ hsr-petrol/3,
+ hsr-basswood/2,
+ hsr-lightgrey/1,
+ hsr-black/0}{
+ \foreach \x/\a in {0/,1/80,2/60,3/40,4/20}{
+ \node[anchor=east] at (-.5,\y) {\texttt{\color}};
+ \fill[color=\color\a] (\x,\y-.25) rectangle ++(1,.5);
+ \node[anchor=west] at (\x,\y) {\texttt{\a}};
+ }
+ }
+\end{tikzpicture}
+\end{center}
+
+\section{License}
+\doclicenseThis
+
+\begin{thebibliography}{3}
+ \bibitem{bib:hsrcolors}
+ HSR Intern: Corporate Design / Farben,
+ \textit{Hochschule f\"ur Technik Rapperswil},
+ \url{https://intranet.hsr.ch/Farben.7715.0.html}
+\end{thebibliography}
+
+\PrintChanges
+\PrintIndex
+
+\DocInput{\jobname.dtx}
+
+\end{document}
+
+%</doc>
+%\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \appendix
+% \section{Implementation}
+% |hsrstud| package implementation with inline documentation
+
+%\iffalse
+%<*package>
+%\fi
+
+% \subsection{Dependencies}
+% \begin{macrocode}
+%% Dependencies ((
+\RequirePackage{amsmath}
+\RequirePackage{amssymb}
+\RequirePackage{bm}
+
+\RequirePackage{esint}
+\PassOptionsToPackage{b}{esvect}
+\RequirePackage{esvect}
+
+\RequirePackage{xcolor}
+\RequirePackage{hyperref}
+\RequirePackage{listings}
+
+\RequirePackage{iftex}
+\RequirePackage{kvoptions}
+%% ))
+% \end{macrocode}
+
+% \subsection{Package options}
+% \begin{macrocode}
+\SetupKeyvalOptions{
+ family=hsr,
+ prefix=hsr@
+}
+
+%% Do not renew LaTeX Macros
+\DeclareBoolOption[false]{dontrenew}
+
+%% Vector style
+\DeclareBoolOption[false]{arrowvec}
+\DeclareComplementaryOption{boldvec}{arrowvec}
+
+%% Vector derivative style
+\DeclareBoolOption[false]{textvecdiff}
+\DeclareComplementaryOption{delvecdiff}{textvecdiff}
+
+
+%% Process options
+\ProcessLocalKeyvalOptions*
+% \end{macrocode}
+
+
+% \subsection{Summary notation}
+% \begin{macrocode}
+%% TODO: change letters in german
+\newcommand{\bookref}[1]{\texttt{\textcolor{hsr-mauve}{P.#1}}}
+\newcommand{\notesref}[1]{\texttt{\textcolor{hsr-blue}{S.#1}}}
+\newcommand{\lectureref}[1]{\texttt{\textcolor{hsr-lakegreen}{L.#1}}}
+% \end{macrocode}
+
+% \subsection{Default theming}
+% \begin{macrocode}
+%% Theming for hyperref and listings ((
+\hypersetup{
+ colorlinks=true,
+ linkcolor=hsr-black,
+ citecolor=hsr-mauve,
+ filecolor=hsr-black,
+ urlcolor=hsr-blue,
+}
+
+%% Common listings settings
+\lstdefinestyle{hsr-base}{
+ belowcaptionskip=\baselineskip,
+ breaklines=true,
+ frame=none,
+ inputencoding=utf8,
+ % margin
+ xleftmargin=\parindent,
+ % numbers
+ numbers=left,
+ numbersep=5pt,
+ numberstyle=\ttfamily\footnotesize\color{hsr-black40},
+ % background
+ backgroundcolor=\color{white},
+ showstringspaces=false,
+ % default language
+ language=[LaTeX]TeX,
+ % break long lines, and show an arrow where the line was broken
+ breaklines=true,
+ postbreak=\mbox{\textcolor{hsr-blue}{$\hookrightarrow$}\space},
+ % font
+ basicstyle=\ttfamily\small,
+ identifierstyle=\color{hsr-black},
+ keywordstyle=\color{hsr-blue},
+ commentstyle=\color{hsr-black40},
+ stringstyle=\color{hsr-mauve80},
+}
+
+%% Define missing languages / aliases
+\lstdefinelanguage{LaTeX}{
+ language=[LaTeX]Tex
+}
+
+%% Set style
+\lstset{style=hsr-base, escapechar=`}
+%%))
+% \end{macrocode}
+
+% \subsection{Mathematics}
+% \subsubsection{Vectors}
+% \begin{macrocode}
+%% Vector ((
+\newcommand{\hsrvecbold}[1]{\mathbf{\bm{#1}}}
+\newcommand{\hsrvecarrow}[1]{\vv{\mathrm{#1}}} % from esvect
+
+\newcommand{\@hsrvecf}[1]{\hsrvecbold{#1}}
+\ifhsr@arrowvec
+ \renewcommand{\@hsrvecf}[1]{\hsrvecarrow{#1}}
+\fi
+
+\newcommand{\vc}{\@hsrvecf}
+\ifhsr@dontrenew\else
+ % save previous command
+ \newcommand{\vaccent}{\v}
+ \newcommand{\oldvec}{\vec}
+ % redefine
+ \renewcommand{\v}[1]{\@hsrvecf{#1}}
+ \renewcommand{\vec}[1]{\@hsrvecf{#1}}
+\fi
+%%))
+
+%% Unit vector ((
+\newcommand{\hsruvecbold}[1]{\vec{\hat{#1}}}
+\newcommand{\hsruvecarrow}[1]{\hat{\mathrm{#1}}}
+\newcommand{\@hsruvecf}[1]{\hsruvecbold{#1}}
+\ifhsr@arrowvec
+ \renewcommand{\@hsruvecf}[1]{\hsruvecarrow{#1}}
+\fi
+
+\newcommand{\uv}[1]{\@hsruvecf{#1}}
+\newcommand{\uvec}[1]{\@hsruvecf{#1}}
+%%))
+
+%% Products ((
+\newcommand{\dotp}{\boldsymbol\cdot}
+\newcommand{\crossp}{\boldsymbol\times}
+%%))
+% \end{macrocode}
+
+% \subsubsection{Matrices and Tensors}
+% \begin{macrocode}
+\newcommand{\mx}[1]{\bm{\mathrm{#1}}}
+% \end{macrocode}
+
+% \subsubsection{Equalities}
+% \begin{macrocode}
+\newcommand{\heq}{\stackrel{\hat{\texttt{H}}}{=}}
+% \end{macrocode}
+
+% \subsection{Derivatives}
+% \subsubsection{Differentials}
+% \begin{macrocode}
+\newcommand{\dd}[2][]{\mathrm{d}^{#1} #2}
+\newcommand{\di}[2][]{\,\dd[#1]{#2}}
+% \end{macrocode}
+
+% \subsubsection{Derivatives}
+% \begin{macrocode}
+\newcommand{\deriv}[3][]{\frac{\dd[#1]{#2}}{\dd[]{#3^{#1}}}}
+\newcommand{\pderiv}[3][]{\frac{\partial^{#1} #2}{\partial #3^{#1}}}
+% \end{macrocode}
+
+% \subsubsection{Vector derivatives}
+% \begin{macrocode}
+%% Gradient ((
+\ifhsr@textvecdiff
+ \DeclareMathOperator{\grad}{grad}
+\else
+ \newcommand{\grad}{\vec{\nabla}}
+\fi
+%% ))
+
+%% Divergence ((
+\ifhsr@textvecdiff
+ \newcommand{\@hsrdivf}{div}
+\else
+ \newcommand{\@hsrdivf}{\vec{\nabla}\dotp}
+\fi
+
+\DeclareMathOperator{\divg}{\@hsrdivf}
+\ifhsr@dontrenew\else
+ \let\divsymb=\div
+ \renewcommand{\div}{\operatorname{\@hsrdivf}}
+\fi
+%% ))
+
+%% Curl ((
+\ifhsr@textvecdiff
+ \DeclareMathOperator{\curl}{curl}
+\else
+ \DeclareMathOperator{\curl}{\vec{\nabla}\crossp}
+\fi
+%% ))
+
+%% laplacian ((
+\ifhsr@textvecdiff
+ \DeclareMathOperator{\laplacian}{div grad}
+\else
+ \DeclareMathOperator{\laplacian}{\nabla^2}
+\fi
+
+\ifhsr@textvecdiff
+ \DeclareMathOperator{\vlaplacian}{div grad}
+\else
+ \DeclareMathOperator{\vlaplacian}{\vec{\nabla}^2}
+\fi
+%% ))
+% \end{macrocode}
+
+% \subsection{Colors}
+% \begin{macrocode}
+\definecolor{hsr-blue}{HTML}{0065A3}
+\definecolor{hsr-blue80}{HTML}{3384B5}
+\definecolor{hsr-blue60}{HTML}{66A3C8}
+\definecolor{hsr-blue40}{HTML}{99C1DA}
+\definecolor{hsr-blue20}{HTML}{CCE0ED}
+
+\definecolor{hsr-mauve}{HTML}{6E1C50}
+\definecolor{hsr-mauve80}{HTML}{8B4973}
+\definecolor{hsr-mauve60}{HTML}{A87796}
+\definecolor{hsr-mauve40}{HTML}{C5A4B9}
+\definecolor{hsr-mauve20}{HTML}{E2D2DC}
+
+\definecolor{hsr-lakegreen}{HTML}{548C86}
+\definecolor{hsr-lakegreen80}{HTML}{76A39E}
+\definecolor{hsr-lakegreen60}{HTML}{98BAB6}
+\definecolor{hsr-lakegreen40}{HTML}{BBD1CF}
+\definecolor{hsr-lakegreen20}{HTML}{DDE8E7}
+
+\definecolor{hsr-reed}{HTML}{7B6951}
+\definecolor{hsr-reed80}{HTML}{958774}
+\definecolor{hsr-reed60}{HTML}{B0A597}
+\definecolor{hsr-reed40}{HTML}{CAC3B9}
+\definecolor{hsr-reed20}{HTML}{E5E1DC}
+
+\definecolor{hsr-petrol}{HTML}{00738D}
+\definecolor{hsr-petrol80}{HTML}{338FA4}
+\definecolor{hsr-petrol60}{HTML}{66ABBB}
+\definecolor{hsr-petrol40}{HTML}{99C7D1}
+\definecolor{hsr-petrol20}{HTML}{CCE3E8}
+
+\definecolor{hsr-basswood}{HTML}{BABD5D}
+\definecolor{hsr-basswood80}{HTML}{C8CA7D}
+\definecolor{hsr-basswood60}{HTML}{D6D79E}
+\definecolor{hsr-basswood40}{HTML}{E3E5BE}
+\definecolor{hsr-basswood20}{HTML}{F1F2DF}
+
+\definecolor{hsr-lightgrey}{HTML}{C6C7C8}
+\definecolor{hsr-lightgrey80}{HTML}{D1D2D3}
+\definecolor{hsr-lightgrey60}{HTML}{DDDDDE}
+\definecolor{hsr-lightgrey40}{HTML}{E8E8E9}
+\definecolor{hsr-lightgrey20}{HTML}{F4F4F4}
+
+\definecolor{hsr-black}{HTML}{1A171B}
+\definecolor{hsr-black80}{HTML}{484549}
+\definecolor{hsr-black60}{HTML}{767476}
+\definecolor{hsr-black40}{HTML}{A4A2A4}
+\definecolor{hsr-black20}{HTML}{D1D1D1}
+% \end{macrocode}
+
+% \iffalse
+% \begin{macrocode}
+%</package>
+% \end{macrocode}
+% \fi
+%
+%\Finale
diff --git a/macros/latex/contrib/oststud/hsrstud.ins b/macros/latex/contrib/oststud/hsrstud.ins
new file mode 100644
index 0000000000..ec7b232494
--- /dev/null
+++ b/macros/latex/contrib/oststud/hsrstud.ins
@@ -0,0 +1,56 @@
+\input docstrip.tex
+\preamble
+This document is part of the HSRStud LaTeX Package
+
+THE FOLLOWING WORK IS UNDER THE CC BY-SA 4.0 LICENSE
+
+You are free to
+---------------
+ * Share -- Copy and redistribute the material in any medium or format
+ * Adapt -- Remix, transform, and build upon the material for any
+ purpose, even commercially
+
+The licensor cannot revoke these freedoms as long as you follow the
+license terms.
+
+Under the following terms
+-------------------------
+ * Attribution
+ You must give appropriate credit, provide a link to the license, and
+ indicate if changes were made. You may do so in any reasonable
+ manner, but not in any way that suggests the licensor endorses you
+ or your use.
+
+ * ShareAlike
+ If you remix, transform, or build upon the material you must
+ distribute your contributions under the same license as the
+ original.
+
+ * No additional restrictions
+ You may not apply legal terms or technological measures that
+ legally restrict others from doing anything the license permits.
+
+Notice
+------
+You do not have to comply with the license for elements of the material
+in the public domain or where your use is permitted by an applicable
+exception or limitation.
+
+No warranties are given. The license may not give you all of the
+permissions necessary for your intended use. For example, other rights
+such as publicity, privacy, or moral rights may limit how you use the
+material.
+\endpreamble
+
+\keepsilent
+\askforoverwritefalse
+\usedir{tex/latex/hsrstud}
+
+\generate{
+ \file{hsrstud.sty}{\from{hsrstud.dtx}{package}}
+ \file{hsrzf.cls}{\from{hsrstud-classes.dtx}{hsrzf}}
+ \file{hsrbericht.cls}{\from{hsrstud-classes.dtx}{hsrbericht}}
+}
+\endbatchfile
+
+\endinput
diff --git a/macros/latex/contrib/oststud/hsrstud.pdf b/macros/latex/contrib/oststud/hsrstud.pdf
new file mode 100644
index 0000000000..cf1ad1e27f
--- /dev/null
+++ b/macros/latex/contrib/oststud/hsrstud.pdf
Binary files differ
diff --git a/macros/latex/contrib/oststud/oststud.dtx b/macros/latex/contrib/oststud/oststud.dtx
new file mode 100644
index 0000000000..35539e7b19
--- /dev/null
+++ b/macros/latex/contrib/oststud/oststud.dtx
@@ -0,0 +1,664 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2023 by Naoki Pross <np@0hm.ch>
+% -------------------------------------------------------
+%
+% OSTStud.dtx is licensed under a Creative Commons
+% Attribution-ShareAlike 4.0 International License.
+%
+% You should have received a copy of the license along
+% with this work. If not, see
+% <http://creativecommons.org/licenses/by-sa/4.0/>.
+%
+% \fi
+%
+% \iffalse
+%<*driver>
+\ProvidesFile{oststud.dtx}
+%</driver>
+%<package>\NeedsTeXFormat{LaTeX2e}[2005/12/01]
+%<package>\ProvidesPackage{oststud}
+%<*package>
+ [2023/04/18 v0.3 OST Student's package]
+%</package>
+%
+%<*driver>
+\documentclass{ltxdoc}
+
+\usepackage{oststud}
+\usepackage{enumitem}
+\usepackage{tikz}
+\usepackage{framed}
+\usepackage[
+ type={CC},
+ modifier={by-sa},
+ version={4.0},
+]{doclicense}
+
+
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+\begin{document}
+ \DocInput{oststud.dtx}
+ \PrintChanges
+ \PrintIndex
+\end{document}
+%</driver>
+% \fi
+%
+% \changes{v0.1}{2022/11/18}{Initial version}
+% \changes{v0.2}{2022/11/22}{Port features of \texttt{hsrstud}}
+% \changes{v0.3}{2023/04/18}{Cleanup for CTAN upload}
+%
+% \GetFileInfo{oststud.dtx}
+%
+% \DoNotIndex{\newcommand,\newenvironment,\fi,\else}
+%
+% \title{
+% \texttt{\textcolor{OSTBlackberry}{ost}stud} ---
+% OST-Stud Style and Macros\thanks{
+% This document corresponds to \textsf{oststud}~\fileversion, last
+% revised \filedate.
+% }
+% }
+% \author{Naoki Sean Pross \texttt{<np@0hm.ch>}}
+% \date{Released \filedate}
+%
+% \maketitle
+% \tableofcontents
+%
+% \section*{License}
+% \doclicenseThis
+%
+% \section{Purpose of this Package}
+%
+% This package is made for the OST Studenten organization to provide an easy to
+% use interface that gives a more consistent look and feel to the works
+% produced by its members. This package is the successor after the fusion of
+% the old |hsrstud| package.
+%
+% \section{Package Options}
+% \begin{description}[align=right]
+% \item[|dontrenew|] Do not renew existing \LaTeX{} commands and
+% environments. This is useful when the package is loaded on a document
+% that is already partially written.
+% \item[|textvecdiff|] Disables the ``Nabla'' or ``Del'' notation for vector
+% derivatives. Instead the symbols \(\vec{\nabla}, \vec{\nabla}\dotp,
+% \vec{\nabla}\crossp, \nabla^2, \vec{\nabla}^2\) are be replaced with
+% grad, div, curl and div grad.
+% \item[|bfemph|] \textit{Work in progress.}
+% \item[|bbprobability|] \textit{Work in progress.}
+% \item[|scrtransforms|] \textit{Work in progress.}
+% \end{description}
+%
+% \section{Usage}
+%
+% \subsection{Vectors and Vector Calculus}
+%
+% \DescribeMacro{\vec}
+% \DescribeMacro{\uvec}
+% In the physics used by electrical engineers it is common to use lowercase
+% bold letters for vectors (with the exception of electromagnetic fields
+% $\vec{E},\vec{B},\vec{A},\ldots$). If the |dontrenew| option is set a new
+% macro |\bvec| (bold |\vec|) that takes a \marg{symbol} defines the bold
+% vector notation. Otherwise the default vector notation with the tiny ugly
+% arrow ($\oldvec{u}$) is replaced by bold and the arrow notation saved in
+% |\oldvec|. In vector calculus it is common to denote unit vectors by putting
+% a hat, so there is a macro |\uvec| that does just that:
+% \[
+% \uvec{u} = \vec{u}/u.
+% \]
+%
+% \DescribeMacro{\dotp}
+% \DescribeMacro{\crossp}
+% To differentiate the dot and cross products (between vectors) from normal
+% product between scalars ($a \cdot b$ and $a \times b$), the macros |\dotp|
+% and |\crossp| provide a bold variant:
+% \[
+% \vec{u} \dotp \vec{v}, \qquad
+% \vec{u} \crossp \vec{v}.
+% \]
+%
+% \DescribeMacro{\grad}
+% \DescribeMacro{\div}
+% \DescribeMacro{\curl}
+% The macros |\grad|, |\div| and |\curl| provide symbols for the gradient,
+% divergence and curl operators used in vector calculus. If the option
+% |textvecdiff| is set, they symbols are written as words, otherwise they will
+% he written (ab)using the Nabla symbol, i.e. by pretending that the symbol
+% $\vec{\nabla}$ is a ``vector'' (sometime referred to as ``del'') of partial
+% derivates: $\vec{\nabla} = (\partial_x, \partial_y, \partial_z)^\mathsf{T}$.
+% Unless the option |dontrenew| is set, the division symbol is replaced by the
+% divergence and the symbol $\divsymb$ is saved in |\divsymb|. For a scalar
+% field $\phi$ or a vector field $\vec{F}$ the notation (in order) of the
+% gradient, divergence and curl appear as follows:
+% \[
+% \grad \phi, \quad
+% \div \vec{F}, \quad
+% \curl \vec{F}.
+% \]
+%
+% \DescribeMacro{\laplacian}
+% \DescribeMacro{\vlaplacian}
+% Continuing with the (ab)use of the ``Nabla'' or ``Del'' notation, the
+% there is a macro |\laplacian| for the Laplacian operator
+% \[
+% \laplacian \equiv \div \grad \equiv \sum_i \partial^2_i.
+% \]
+% Notice that the Nabla symbol is not bold, that is because the Laplacian
+% operator results in a scalar value. Though, sometimes in electrodynamics the
+% vector Laplacian is used (which applies the Laplacian operator to each
+% component). To differentiate the two there is a macro |\vlaplacian| which
+% uses the bold nabla symbol: $\vlaplacian$. If the option |dontrenew| is set
+% both symbols are replaced by div grad.
+%
+% \subsection{Linear Algebra}
+%
+% \DescribeMacro{\mx}
+% Similarly to vectors it is common to write matrices as uppercase bold
+% letters, thus the |\mx| macro takes a \marg{symbol} and typesets it as
+% upright bold.
+%
+% \DescribeMacro{\mt}
+% \DescribeMacro{\mh}
+% The ``normal'' and Hermitian (complex conjugate) transpose of a matrix
+% $\mx{F}$ are denoted by a superscript sans-serif T or H respectively
+% ($\mt{\mx{F}}$ resp. $\mh{\mx{F}}$). The |\mt| and |\mh| macros (matrix
+% transpose and Hermitian transpose) provide this notation; They both take a
+% \marg{symbol}. In abstract vector spaces the Hermitian transpose becomes the
+% adjoint, for which it is common to use a superscript dagger (adjoint of
+% $\mathcal{Q}$ is $\mathcal{Q}^\dagger$), but since it does not come up very
+% often this package does \emph{not} provide a macro for the adjoint.
+%
+% \DescribeMacro{\minv}
+% Another common matrix operation that is annoying to write is the matrix
+% inverse, which is usually written as a superscript -1. The |\minv| command
+% takes a \marg{matrix} and adds the -1 superscript.
+%
+% Using all of the above we can typeset the matrix form of the linear least
+% squares approximation by writing
+% \begin{leftbar}
+% |\vec{a} = \minv{(\mt{\mx{Q}} \mx{Q})} \mt{\mx{Q}}\vec{y}|
+% \end{leftbar}
+% \noindent which results in the following:
+% \[
+% \vec{a} = \minv{(\mt{\mx{Q}} \mx{Q})} \mt{\mx{Q}}\vec{y}
+% \iff
+% \argmin_{(a_1,a_2)} \left(\sum_{i=0}^n y_i - a_1 x_i + a_2\right).
+% \]
+%
+% \DescribeMacro{\tr}
+% This package also provides a macro for the trace of a matrix.
+%
+% \subsection{Complex Numbers}
+%
+% ^^A TODO: write section
+% \DescribeMacro{\Re}
+% \DescribeMacro{\Im}
+% AMS maths's default notation for the real and imaginary parts of a complex
+% number use the Fraktur font capital letters $\mathfrak{R}$ and
+% $\mathfrak{I}$. However, in engineering it is more common to see the notation
+% $\Re{z}$ and $\Im{z}$, thus, unless the |dontrenew| option is set this
+% package replaces the notation with the former symbols. Both of the macros
+% were also modified to take an argument \marg{expression}, to surround the
+% expression with opening and closing curly brackets.
+%
+% \subsection{Probability Operators}
+%
+% ^^A TODO: write section
+% \textit{Work in progress.}
+%
+% \subsection{Transformation Operators}
+%
+% ^^A TODO: write section
+% \textit{Work in progress.}
+% \[
+% \laplace\{f(t)\} = F(s) \corresponds f(t) \rcorresponds F(s)
+% \]
+%
+% \subsection{References}
+%
+% ^^A TODO: write section
+% \textit{Work in progress.}
+%
+% ^^A \DescribeMacro{\skriptum}
+% ^^A \DescribeMacro{\sref}
+%
+% ^^A \DescribeMacro{\textbook}
+% ^^A \DescribeMacro{\bref}
+%
+% \subsection{OST Colors}
+%
+% The official OST color palette provides the following ``primary'' or
+% ``accent'' colors.
+% \begin{center}
+% \begin{tikzpicture}
+% \begin{scope}
+% \foreach [count=\i] \c in {Black,Gray,Blackberry,Raspberry} {
+% \node[
+% thick, draw=white, fill={OST\c},
+% minimum width=3cm, minimum height=1cm,
+% ] (\c) at ({3.2cm*\i},0) {\texttt{OST\c}};
+% }
+% ^^A Because you can't see black on black
+% \node[text=white] at (Black) {\texttt{OSTBlack}};
+% \end{scope}
+% \end{tikzpicture}
+% \end{center}
+% And then there are the other ``design colors''.
+% \begin{center}
+% \begin{tikzpicture}
+% \begin{scope}[yshift=-2cm]
+% \foreach [count=\i] \c in {Orange,Red,Purple,Blue,Green} {
+% \foreach [count=\j] \s in {Dark,{},Light}{
+% \node[
+% thick, draw=white, fill={OST\s\c},
+% minimum width=3cm, minimum height=1cm,
+% ] (\c\s) at ({3.2cm*\j},{-1.2cm*\i}) {\texttt{OST\s\c}};
+% }
+% }
+% \end{scope}
+% \end{tikzpicture}
+% \end{center}
+%
+% \subsection{Sane Defaults}
+%
+% ^^A TODO: write section
+% \textit{Work in progress.}
+%
+% ^^A This macros separates the documentation from the implementation
+% \StopEventually{}
+%
+% \section{Implementation}
+%
+% \subsection{Dependencies and Parse Options}
+%
+% First, we have the dependencies necessary for typesetting.
+% \begin{macrocode}
+\RequirePackage{xcolor}
+\RequirePackage{amsmath}
+\RequirePackage{amssymb}
+\RequirePackage{bm}
+% \end{macrocode}
+% This package also sets sane defaults to the following packages.
+% \begin{macrocode}
+\RequirePackage{hyperref}
+\RequirePackage{listings}
+% \end{macrocode}
+% Then we create the options for the package.
+% \begin{macrocode}
+\SetupKeyvalOptions{
+ family=ost,
+ prefix=ost@
+}
+\DeclareBoolOption[false]{dontrenew}
+\DeclareBoolOption[false]{textvecdiff}
+\DeclareBoolOption[false]{bfemph}
+\DeclareBoolOption[false]{bbprobability}
+% \DeclareBoolOption[false]{scrtransforms}
+\ProcessLocalKeyvalOptions*
+% \end{macrocode}
+%
+% \subsection{Bold emphasis}
+%
+% \begin{macro}{\emph}
+% Change the behaviour of |\emph|.
+% \begin{macrocode}
+\ifost@bfemph
+ \ifost@dontrenew
+ \PackageError{The options \noexpand\dontrenew and \noexpand\bfemph cannot be used at the same time!}
+ \fi
+ \long\expandafter\def\csname em \endcsname{%
+ \@nomath\em
+ \if b\expandafter\@car\f@series\@nil
+ \itshape\else\bfseries\fi
+ }
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Vectors and Vector Calculus}
+%
+% \begin{macro}{\vec}
+% Set up bold notation for vectors.
+% \begin{macrocode}
+\newcommand{\ost@vec}[1]{\mathbf{\bm{#1}}}
+\ifost@dontrenew
+ \newcommand{\bvec}[1]{\ost@vec{#1}}
+\else
+ \let\oldvec\vec
+ \renewcommand{\vec}[1]{\ost@vec{#1}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\uvec}
+% In vector calculus unit vectors are usually denoted by a hat.
+% \begin{macrocode}
+\newcommand{\uvec}[1]{\vec{\hat{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\dotp,\crossp}
+% To differentiate them from |\cdot| and |\times| which are for scalars.
+% \begin{macrocode}
+\DeclareMathOperator{\dotp}{\boldsymbol\cdot}
+\DeclareMathOperator{\crossp}{\boldsymbol\times}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\grad}
+% Gradient of a vector valued scalar functon.
+% \begin{macrocode}
+\ifost@textvecdiff
+ \DeclareMathOperator{\grad}{grad}
+\else
+ \DeclareMathOperator{\grad}{\vec{\nabla}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\div}
+% Divergence operator. If the option |dontrenew| is a new macro |\divg| is
+% defined. Otherwise |\div| is renamed to |\divsymb|.
+% \begin{macrocode}
+\ifost@textvecdiff
+ \DeclareMathOperator{\ost@div}{div}
+\else
+ \DeclareMathOperator{\ost@div}{\vec{\nabla}\dotp}
+\fi
+\ifost@dontrenew
+ \DeclareMathOperator{\divg}{\ost@div}
+\else
+ \let\divsymb\div
+ \renewcommand{\div}{\ost@div}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\curl}
+% Curl of a vector field.
+% \begin{macrocode}
+\ifost@textvecdiff
+ \DeclareMathOperator{\curl}{curl}
+\else
+ \DeclareMathOperator{\curl}{\vec{\nabla}\crossp}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\laplacian,\vlaplacian}
+% Laplacian of a scalar and vector field.
+% \begin{macrocode}
+\ifost@textvecdiff
+ \DeclareMathOperator{\laplacian}{\div\grad}
+ \DeclareMathOperator{\vlaplacian}{\div\grad}
+\else
+ \DeclareMathOperator{\laplacian}{\nabla^2}
+ \DeclareMathOperator{\vlaplacian}{\vec{\nabla}^2}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Linear Algebra}
+%
+% \begin{macro}{\mx}
+% Notation for matrices as bold (uppercase) letters.
+% \begin{macrocode}
+\newcommand{\mx}[1]{\mathbf{\bm{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\mt,\mh}
+% Normal and Hermitian (conjugate) transpose of a matrix.
+% \begin{macrocode}
+\newcommand{\mt}[1]{{#1}^\mathsf{T}}
+\newcommand{\mh}[1]{{#1}^\mathsf{H}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\minv}
+% Matrix inverse.
+% \begin{macrocode}
+\newcommand{\minv}[1]{{#1}^{-1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\tr}
+% Trace of a matrix.
+% \begin{macrocode}
+\DeclareMathOperator{\tr}{tr}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Mathematical Programming}
+% \begin{macro}{\argmin,\argmax}
+% \begin{macrocode}
+\DeclareMathOperator*{\argmax}{arg\,max}
+\DeclareMathOperator*{\argmin}{arg\,min}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Complex Numbers}
+%
+% \begin{macro}{\Re,\Im}
+% Replace the real and imaginary operators to look ``normal'', that is not
+% using the Fraktur fonts.
+% \begin{macrocode}
+\ifost@dontrenew\else
+ \let\oldRe\Re \let\oldIm\Im
+ \renewcommand{\Re}[1]{\mathrm{Re} \left\{#1\right\}}
+ \renewcommand{\Im}[1]{\mathrm{Im} \left\{#1\right\}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Probability Operators}
+%
+% \begin{macro}{\E}
+% Expectation of a random variable.
+% \begin{macrocode}
+\ifost@bbprobability
+ \DeclareMathOperator{\ost@expectation}{\mathbb{E}}
+\else
+ \DeclareMathOperator{\ost@expectation}{E}
+\fi
+\newcommand{\E}[1]{\ost@expectation\left\{#1\right\}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\Var}
+% Variance of a random variable.
+% \begin{macrocode}
+\ifost@bbprobability
+ \DeclareMathOperator{\ost@variance}{\mathbb{V}}
+\else
+ \DeclareMathOperator{\ost@variance}{Var}
+\fi
+\newcommand{\Var}[1]{\ost@variance\left\{#1\right\}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\Pr}
+% Probability operator.
+% \begin{macrocode}
+\ifost@bbprobability
+ \DeclareMathOperator{\ost@probability}{\mathbb{P}}
+\else
+ \DeclareMathOperator{\ost@probability}{Pr}
+\fi
+\ifost@dontrenew
+ \newcommand{\P}[1]{\ost@probability\left\{#1\right\}}
+\else
+ \renewcommand{\Pr}[1]{\ost@probability\left\{#1\right\}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Transformation Operators}
+%
+% \begin{macro}{\fourier,\ifourier}
+% Fourier transform and its inverse.
+% \begin{macrocode}
+\DeclareMathOperator{\fourier}{\mathcal{F}}
+\DeclareMathOperator{\ifourier}{\mathcal{F}^{-1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\laplace,\ilaplace}
+% Laplace transform and its inverse.
+% \begin{macrocode}
+\DeclareMathOperator{\laplace}{\mathcal{L}}
+\DeclareMathOperator{\ilaplace}{\mathcal{L}^{-1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ztransf,\iztransf}
+% Z-transform and its inverse.
+% \begin{macrocode}
+\DeclareMathOperator{\ztransf}{\mathcal{Z}}
+\DeclareMathOperator{\iztransf}{\mathcal{Z}^{-1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\hilbert}
+% Hilbert transform.
+% \begin{macrocode}
+\DeclareMathOperator{\hilbert}{\mathcal{H}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\corresponds,\rcorresponds}
+% Correspondence symbols.
+% \begin{macrocode}
+\newcommand{\corresponds}{%
+ \mbox{\setlength{\unitlength}{0.1em}%
+ \begin{picture}(20,10)%
+ \put(5,3){\circle{4}}%
+ \put(7,3){\line(1,0){7}}%
+ \put(16,3){\circle*{4}}%
+ \end{picture}}}
+\newcommand{\rcorresponds}{%
+ \mbox{\setlength{\unitlength}{0.1em}%
+ \begin{picture}(20,10)%
+ \put(5,3){\circle*{4}}%
+ \put(7,3){\line(1,0){7}}%
+ \put(16,3){\circle{4}}%
+ \end{picture}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{References}
+%
+% \begin{macro}{\skriptum,\sref}
+% Reference material in the skriptum (lecture notes) of the course.
+% \begin{macrocode}
+\newcommand{\ost@skriptum}{\PackageWarning{No \noexpand\skriptum given}}
+\newcommand{\skriptum}[1]{\gdef\ost@skriptum{#1}}
+\newcommand{\sref}[1]{%
+ \texttt{\textcolor{OSTBlackberry}{#1}}\nocite{\ost@skriptum}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\textbook,\bref}
+% Reference material in the textbook of the course.
+% \begin{macrocode}
+\newcommand{\ost@textbook}{\PackageWarning{No \noexpand\textbook given}}
+\newcommand{\textbook}[1]{\gdef\ost@textbook{#1}}
+\newcommand{\bref}[1]{%
+ \texttt{\textcolor{OSTRaspberry}{#1}}\nocite{\ost@textbook}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{OST Colors}
+%
+% Define the colors according to the OST corporate design. The code was kindly
+% stolen from H. Badertscher's \texttt{OSTColors.sty}
+% \cite{hbadertscher-ostcolors}. First there are the ``primary colors''.
+% \begin{macrocode}
+\definecolor{OSTBlack}{RGB}{25,25,25}
+\definecolor{OSTGray}{RGB}{198,198,198}
+\definecolor{OSTBlackberry}{RGB}{140,25,95}
+\definecolor{OSTRaspberry}{RGB}{215,40,100}
+% \end{macrocode}
+% Then the ``design colors''.
+% \begin{macrocode}
+\definecolor{OSTPurple}{RGB}{149,96,164}
+\definecolor{OSTDarkPurple}{RGB}{107,56,129}
+\definecolor{OSTLightPurple}{RGB}{208,169,208}
+% \end{macrocode}
+% \begin{macrocode}
+\definecolor{OSTGreen}{RGB}{29,175,142}
+\definecolor{OSTDarkGreen}{RGB}{0,126,107}
+\definecolor{OSTLightGreen}{RGB}{167,213,194}
+% \end{macrocode}
+% \begin{macrocode}
+\definecolor{OSTRed}{RGB}{232,78,15}
+\definecolor{OSTDarkRed}{RGB}{195,46,21}
+\definecolor{OSTLightRed}{RGB}{243,154,139}
+% \end{macrocode}
+% \begin{macrocode}
+\definecolor{OSTBlue}{RGB}{0,134,205}
+\definecolor{OSTDarkBlue}{RGB}{0,115,176}
+\definecolor{OSTLightBlue}{RGB}{95,191,237}
+% \end{macrocode}
+% \begin{macrocode}
+\definecolor{OSTOrange}{RGB}{251,186,0}
+\definecolor{OSTDarkOrange}{RGB}{209,143,0}
+\definecolor{OSTLightOrange}{RGB}{253,214,175}
+% \end{macrocode}
+%
+% \subsection{Sane Defaults}
+%
+% First, set up |hyperref| to not look hideous.
+% \begin{macrocode}
+\hypersetup{
+ colorlinks=true,
+ linkcolor=OSTBlack,
+ citecolor=OSTBlackberry,
+ filecolor=OSTBlack,
+ urlcolor=OSTDarkBlue,
+}
+% \end{macrocode}
+% Then create a listings style.
+% \begin{macrocode}
+\lstdefinestyle{ost-base}{
+ belowcaptionskip=\baselineskip,
+ breaklines=true,
+ frame=none,
+ inputencoding=utf8,
+ % margin
+ xleftmargin=\parindent,
+ % numbers
+ numbers=left,
+ numbersep=5pt,
+ numberstyle=\ttfamily\footnotesize\color{OSTGray},
+ % background
+ backgroundcolor=\color{white},
+ showstringspaces=false,
+ % default language
+ language=TeX,
+ % break long lines, and show an arrow where the line was broken
+ breaklines=true,
+ postbreak=\mbox{\textcolor{OSTDarkBlue}{$\hookrightarrow$}\space},
+ % font
+ basicstyle=\ttfamily\small,
+ identifierstyle=\color{OSTBlack},
+ keywordstyle=\color{OSTBlue},
+ commentstyle=\color{OSTGray},
+ stringstyle=\color{OSTBlackberry},
+}
+% \end{macrocode}
+% Then we set this style to be default.
+% \begin{macrocode}
+\lstset{style=ost-base, escapechar=`}
+% \end{macrocode}
+%
+% ^^A\begin{thebibliography}{1}
+% ^^A\bibitem[hbadertscher-ostcolors] OST Colorscheme.
+% ^^A\url{https://github.com/HBadertscher/OSTReport/blob/master/header/OSTColors.sty}
+% ^^A\end{thebibliography}
+% \Finale
+\endinput
+% vim:ts=4 sw=4 et spell spelllang=en ft=tex:
diff --git a/macros/latex/contrib/oststud/oststud.ins b/macros/latex/contrib/oststud/oststud.ins
new file mode 100644
index 0000000000..de74922e32
--- /dev/null
+++ b/macros/latex/contrib/oststud/oststud.ins
@@ -0,0 +1,54 @@
+\input docstrip.tex
+\preamble
+This document is part of the HSRStud LaTeX Package
+
+THE FOLLOWING WORK IS UNDER THE CC BY-SA 4.0 LICENSE
+
+You are free to
+---------------
+ * Share -- Copy and redistribute the material in any medium or format
+ * Adapt -- Remix, transform, and build upon the material for any
+ purpose, even commercially
+
+The licensor cannot revoke these freedoms as long as you follow the
+license terms.
+
+Under the following terms
+-------------------------
+ * Attribution
+ You must give appropriate credit, provide a link to the license, and
+ indicate if changes were made. You may do so in any reasonable
+ manner, but not in any way that suggests the licensor endorses you
+ or your use.
+
+ * ShareAlike
+ If you remix, transform, or build upon the material you must
+ distribute your contributions under the same license as the
+ original.
+
+ * No additional restrictions
+ You may not apply legal terms or technological measures that
+ legally restrict others from doing anything the license permits.
+
+Notice
+------
+You do not have to comply with the license for elements of the material
+in the public domain or where your use is permitted by an applicable
+exception or limitation.
+
+No warranties are given. The license may not give you all of the
+permissions necessary for your intended use. For example, other rights
+such as publicity, privacy, or moral rights may limit how you use the
+material.
+\endpreamble
+
+\keepsilent
+\askforoverwritefalse
+\usedir{tex/latex/oststud}
+
+\generate{
+ \file{oststud.sty}{\from{oststud.dtx}{package}}
+}
+\endbatchfile
+
+\endinput
diff --git a/macros/latex/contrib/oststud/oststud.pdf b/macros/latex/contrib/oststud/oststud.pdf
new file mode 100644
index 0000000000..74abd99be0
--- /dev/null
+++ b/macros/latex/contrib/oststud/oststud.pdf
Binary files differ
diff --git a/macros/latex/contrib/photobook/photobook.cls b/macros/latex/contrib/photobook/photobook.cls
index 8dfe501db3..14016662b4 100644
--- a/macros/latex/contrib/photobook/photobook.cls
+++ b/macros/latex/contrib/photobook/photobook.cls
@@ -79,7 +79,7 @@
%%% NOTE: \def\<module-name>@[A-Z]+ macros will be visible to both the
%%% code and the generated docs...
-\edef\photobook@FILEVERSION{v0.1.18}
+\edef\photobook@FILEVERSION{v0.1.19}
\edef\photobook@FILEDATE{2023-04-11}
@@ -1537,8 +1537,8 @@
\end{adjustbox}}
-%M \DescribeEnv{CellContent}
-%M \DescribeEnv{CellContent*}
+%M \DescribeEnv{MinipageCellContent}
+%M \DescribeEnv{MinipageCellContent*}
%
%M \EXPERIMENTAL
%M
@@ -1817,6 +1817,9 @@
%
%% \EXPERIMENTAL
%%
+%% This a cell wrapper for |adjustbox|.
+%%
+% XXX DOC
\newenvironment{adjustcell*}[4][t]{%
\begin{adjustbox}{#2}%
\vspace{0pt}%
@@ -1963,13 +1966,78 @@
%
%% Clip content to parent cell.
%%
-\newenvironment{cliptocell}{%
- \begin{clipbox*}{0cm {\height - \cellheight} {\cellwidth} {\height}}%
- \begin{minipage}[t][\cellheight][t]{\cellwidth}%
- \ignorespaces%
-}{%
- \end{minipage}%
- \end{clipbox*}}
+%% >> \begin{cliptocell} ... \end{cliptocell}
+%%
+%% Clip content to cell adding bleeds
+%%
+%% >> \begin{cliptocell}[<size>] ... \end{cliptocell}
+%% >> \begin{cliptocell}[<horizontal> <vertical>] ... \end{cliptocell}
+%% >> \begin{cliptocell}[<left> <bottom> <right> <top>] ... \end{cliptocell}
+%%
+%% Clipping to bleeds will not affect the cell content positioning.
+%%
+\newlength\photobook@cliptocell@left
+\setlength\photobook@cliptocell@left{0mm}%
+\newlength\photobook@cliptocell@top
+\setlength\photobook@cliptocell@top{0mm}%
+\newlength\photobook@cliptocell@right
+\setlength\photobook@cliptocell@right{0mm}%
+\newlength\photobook@cliptocell@bottom
+\setlength\photobook@cliptocell@bottom{0mm}%
+
+\newenvironment{cliptocell}[1][0mm]{%
+ \begingroup%
+ \setsepchar{ }%
+ \readlist*\photobook@cliptocell@bleeds{#1}%
+ %
+ % bleed
+ \ifnum \photobook@cliptocell@bleedslen = 1%
+ \setlength\photobook@cliptocell@left{%
+ \photobook@cliptocell@bleeds[1]}%
+ \setlength\photobook@cliptocell@bottom{%
+ \photobook@cliptocell@bleeds[1]}%
+ \setlength\photobook@cliptocell@right{%
+ \photobook@cliptocell@bleeds[1]}%
+ \setlength\photobook@cliptocell@top{%
+ \photobook@cliptocell@bleeds[1]}\fi%
+ % horizontal vertical
+ \ifnum \photobook@cliptocell@bleedslen = 2%
+ \setlength\photobook@cliptocell@left{%
+ \photobook@cliptocell@bleeds[1]}%
+ \setlength\photobook@cliptocell@bottom{%
+ \photobook@cliptocell@bleeds[2]}%
+ \setlength\photobook@cliptocell@right{%
+ \photobook@cliptocell@bleeds[1]}%
+ \setlength\photobook@cliptocell@top{%
+ \photobook@cliptocell@bleeds[2]}\fi%
+ % left top right bottom
+ \ifnum \photobook@cliptocell@bleedslen = 4%
+ \setlength\photobook@cliptocell@left{%
+ \photobook@cliptocell@bleeds[1]}%
+ \setlength\photobook@cliptocell@bottom{%
+ \photobook@cliptocell@bleeds[2]}%
+ \setlength\photobook@cliptocell@right{%
+ \photobook@cliptocell@bleeds[3]}%
+ \setlength\photobook@cliptocell@top{%
+ \photobook@cliptocell@bleeds[4]}\fi%
+ %
+ % XXX the spaces at the end of each line here are significant...
+ \begin{trimbox}{{\photobook@cliptocell@left} %
+ {\photobook@cliptocell@bottom} %
+ {\photobook@cliptocell@right} %
+ {\photobook@cliptocell@top}}%
+ \begin{clipbox*}{{-\photobook@cliptocell@left} %
+ {\height - \cellheight - \photobook@cliptocell@bottom} %
+ {\cellwidth + \photobook@cliptocell@right} %
+ {\height + \photobook@cliptocell@top}}%
+ \begin{minipage}[t][\cellheight][t]{\cellwidth}%
+ \ignorespaces%
+ }{%
+ \end{minipage}%
+ \end{clipbox*}%
+ \end{trimbox}%
+ \endgroup}
+
@@ -2949,10 +3017,6 @@
%% but will not affect this either in size (block size) or in position
%% (top-left).
%%
-%\newenvironment{pagecell}{%
-% \begin{cell*}{\bleed,\bleed}{\pageblockwidth}{\pageblockheight}%
-%}{%
-% \end{cell*}}
\newenvironment{pagecell}{%
\begin{cell*}{%
\bleed + \ifnumodd{\thepage}{\bindingoffset}{0pt},%
diff --git a/macros/latex/contrib/photobook/photobook.pdf b/macros/latex/contrib/photobook/photobook.pdf
index a6f4a5d2d1..2dd314039c 100644
--- a/macros/latex/contrib/photobook/photobook.pdf
+++ b/macros/latex/contrib/photobook/photobook.pdf
Binary files differ
diff --git a/macros/latex/contrib/photobook/scripts/cls2tex.sh b/macros/latex/contrib/photobook/scripts/cls2tex.sh
index 9119cd6e82..5461207f05 100755
--- a/macros/latex/contrib/photobook/scripts/cls2tex.sh
+++ b/macros/latex/contrib/photobook/scripts/cls2tex.sh
@@ -54,13 +54,6 @@ printhelp(){
echo " in both the repo and in installed form, so .dtx is not used."
}
-# Usage: printerror MESSAGE...
-printerror(){
- echo Error: $@
- echo
- printusage
-}
-
# Usage: printmsg TEXT
printmsg(){
# print message...
@@ -88,21 +81,23 @@ while true ; do
;;
-p|--prefix)
PREFIX=$2
- shift
- shift
+ shift 2
+ continue
;;
-s|--strip)
STRIP_DOC=1
shift
+ continue
;;
-n|--no-msg)
NO_MSG=1
shift
+ continue
;;
# handle unknown options...
-*|--*)
- printerror "unknown option \"$1\""
+ echo "Error: unknown option: \"$1\"" >&2
exit
;;
diff --git a/macros/latex/contrib/photobook/scripts/make-spreads.sh b/macros/latex/contrib/photobook/scripts/make-spreads.sh
index 1b10fc56cc..6505e1091f 100644
--- a/macros/latex/contrib/photobook/scripts/make-spreads.sh
+++ b/macros/latex/contrib/photobook/scripts/make-spreads.sh
@@ -177,38 +177,45 @@ while true ; do
-a|--annotate)
ANOTATE_IMAGE_PATHS=1
shift
+ continue
;;
-c)
$CONFIG="$2"
[ -e "$CONFIG" ] \
&& source "$CONFIG"
shift 2
+ continue
;;
--templates)
TEMPLATE_DIR=$2
shift 2
+ continue
;;
--single-image-tpl)
IMAGE_SPREAD[1]=$2
shift 2
+ continue
;;
--double-image-tpl)
IMAGE_SPREAD[2]=$2
shift 2
+ continue
;;
--text-spread-tpl)
IMAGE_SPREAD[0]=$2
shift 2
+ continue
;;
--captions)
CAPTION_DIR=$2
shift 2
+ continue
;;
# handle unknown options...
-*|--*)
- echo "Error: unknown option \"$1\""
+ echo "Error: unknown option \"$1\"" >&2
exit
;;
diff --git a/macros/unicodetex/latex/nwafuthesis/README.md b/macros/unicodetex/latex/nwafuthesis/README.md
index c1faa1af66..5c2886cef0 100644
--- a/macros/unicodetex/latex/nwafuthesis/README.md
+++ b/macros/unicodetex/latex/nwafuthesis/README.md
@@ -1,5 +1,5 @@
The nwafuthesis Class
-LaTeX thesis template for Northwest A&F University, China, v1.11
+LaTeX thesis template for Northwest A&F University, China.
Overview
This template supports doctoral or master dissertion and undergraduate thesis in Chinese. With the help of modern LaTeX3 technology, nwafuthesis aims to create a simple interface, a normative format, as well as a hackable class for the users.
@@ -30,4 +30,4 @@ Issues and pull requests are always welcome.
License
This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version.
-Copyright (C) 2017–2022 by Nan Geng <nangeng@nwafu.edu.cn>.
+Copyright (C) 2019–2023 by Nan Geng <nangeng@nwafu.edu.cn>.
diff --git a/macros/unicodetex/latex/nwafuthesis/build-win.bat b/macros/unicodetex/latex/nwafuthesis/build-win.bat
index e8f223950b..e8f223950b 100755..100644
--- a/macros/unicodetex/latex/nwafuthesis/build-win.bat
+++ b/macros/unicodetex/latex/nwafuthesis/build-win.bat
diff --git a/macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx b/macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx
index 720524e68b..8d79d4580c 100644
--- a/macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx
+++ b/macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx
@@ -2,7 +2,7 @@
% !TeX program = XeLaTeX
% !TeX encoding = UTF-8
%
-% Copyright (C) 2019--2022 by Nan Geng <nangeng@nwafu.edu.cn>
+% Copyright (C) 2019--2023 by Nan Geng <nangeng@nwafu.edu.cn>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
@@ -43,7 +43,7 @@
\preamble
- Copyright (C) 2019--2022 by Nan Geng <nangeng@nwafu.edu.cn>
+ Copyright (C) 2019--2023 by Nan Geng <nangeng@nwafu.edu.cn>
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
@@ -110,7 +110,7 @@
%<class|doc>\NeedsTeXFormat{LaTeX2e}
%<class|doc>\RequirePackage{expl3}
%<*!(driver|install)>
-%<!readme>\GetIdInfo $Id: nwafuthesis.dtx 1.15 2022-05-29 Nan Geng <nangeng@nwafu.edu.cn> $
+%<!readme>\GetIdInfo $Id: nwafuthesis.dtx 1.25 2023-04-18 Nan Geng <nangeng@nwafu.edu.cn> $
%<class> {Thesis template for Northwest A\&F University}
%<class>\ProvidesExplClass{\ExplFileName}
%<definition> {Definition file for nwafuthesis}
@@ -143,7 +143,7 @@
\textbf{\nwafuthesis: 西北农林科技大学学位论文
\xpinyin[font=\sffamily,format=\color{MaterialIndigo800}]{模}{mu2}板}}}
\author{耿楠}
-\date{\today\quad v1.15%
+\date{\today\quad v1.25%
\thanks{\url{https://gitee.com/nwafu_nan/nwafuthesis-l3}.}}
\begin{document}
@@ -809,7 +809,16 @@
% \begin{nwafusyntax}[emph={[1]withsig}]
% withsig = (*<\TFF>*)
% \end{nwafusyntax}
-% 题名页是否需要签名。
+% 题名页是否需要签名,默认为不需要签名。
+% \end{function}
+%
+% \changes{v1.25}{2023/04/19}{添加盲审样式参数说明。}
+%
+% \begin{function}[added=2023-04-19]{style/anonymous}
+% \begin{nwafusyntax}[emph={[1]anonymous}]
+% anonymous = (*<\TFF>*)
+% \end{nwafusyntax}
+% 选择是否输出盲审格式论文,默认为不输出盲审格式论文。
% \end{function}
%
% \begin{function}[added=2022-05-24]{style/chapnum}
@@ -1815,6 +1824,16 @@
% \end{macrocode}
% \end{variable}
%
+% \changes{v1.25}{2023/04/18}{添加盲审判断变量。}
+%
+% \begin{variable}{\l_@@_anonymous_bool}
+% 是否输出盲审版论文(隐藏作者、导师、页眉等个人及学校信息)。
+% \begin{macrocode}
+\bool_new:N \l_@@_anonymous_bool
+% \end{macrocode}
+% \end{variable}
+%
+%
% \changes{v1.12}{2022/05/24}{添加本科生中文章编号处理。}
%
% \begin{variable}{\g_@@_chapnum_int}
@@ -2270,12 +2289,21 @@
% \end{macrocode}
% \end{variable}
%
+% \changes{v1.25}{2023/04/18}{添加盲审隐藏导师承诺中研究生姓名。}
+%
% \begin{variable}{\c_@@_super_decl_text_tl}
% 研究生学位导师承诺。
% \begin{macrocode}
\tl_const:Nn \c_@@_super_decl_text_tl
{
- 本人承诺{\c_@@_fwid_colon_tl}我的研究生{\@@_text_uline:V \l_@@_info_author_tl}%
+ 本人承诺{\c_@@_fwid_colon_tl}我的研究生{%
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \@@_text_uline:V \c_@@_name_anonname_tl
+ }{
+ \@@_text_uline:V \l_@@_info_author_tl
+ }
+ }%
所呈交的学位论文是在我指导下独立开展研究工作及取得的研究结果%
{\c_@@_fwid_comma_tl}属于我现岗职务工作的结果{\c_@@_fwid_comma_tl}%
并严格按照学校{\c_@@_fwid_left_title_tl}关于规范西北农林科技大学研%
@@ -2499,9 +2527,13 @@
% 研究生与本科生相同的中英文字段。
% \begin{macrocode}
%
+% \changes{v1.25}{2023/04/19}{添加盲审隐藏信息符号常量。}
+%
\clist_map_inline:nn
{
- { supervisor } { 指导教师 } { Supervisor },
+ { supervisor } { 指导教师 } { Supervisor },
+ { anonid } { ********** } { ********** },
+ { anonname } { **** } { **** },
}
{ \@@_define_name:nnn #1 }
%
@@ -3893,11 +3925,31 @@
withchapter .bool_set:N = \l_@@_withchap_bool,
withchapter .default:n = true,
withchapter .initial:n = true,
-
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{是否预留签名位置}
+%
+% \begin{macro}{withsig}
+% 设置是否预留下签名。
+% \begin{macrocode}
+\keys_define:nn { nwafu / style }
+ {
withsig .bool_set:N = \l_@@_withsignature_bool,
withsig .default:n = true,
withsig .initial:n = false,
-
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{章编号格式设置}
+%
+% \begin{macro}{withchapter}
+% 设置论文章标题编号格式(中文/阿拉伯数字)。
+% \begin{macrocode}
+\keys_define:nn { nwafu / style }
+ {
chapnum .choice:,
chapnum .value_required:n = true,
chapnum .choices:nn =
@@ -3908,6 +3960,22 @@
% \end{macrocode}
% \end{macro}
%
+% \changes{v1.25}{2023/04/18}{添加盲审判断变量。}
+%
+% \subsection{是否盲审}
+%
+% \begin{macro}{anonymous}
+% 设置是否为盲审论文输出。
+% \begin{macrocode}
+\keys_define:nn { nwafu / style }
+ {
+ anonymous .bool_set:N = \l_@@_anonymous_bool,
+ anonymous .default:n = true,
+ anonymous .initial:n = false,
+ }
+% \end{macrocode}
+% \end{macro}
+%
% \changes{v1.11}{2022/04/02}{修订本科生subsubsection编号两端括号为中文全角括号。}
%
% |\keys_set:nn{ctex}| 实际相当于调用 \cs{ctexset}。
@@ -5066,6 +5134,7 @@
% \begin{macrocode}
\cs_new:Npn \@@_blank_underline:n #1
{ \rule [ -0.5 ex ] {#1} { 0.4 pt } }
+\cs_generate_variant:Nn \@@_blank_underline:n { V }
% \end{macrocode}
% \end{macro}
%
@@ -5093,6 +5162,8 @@
% \end{macrocode}
% \end{macro}
%
+% \changes{v1.25}{2023/04/18}{添加盲审隐藏学号。}
+%
% \subsubsection{封面各部件}
%
% \begin{macro}{\@@_cover_id:,\@@_cover_id_aux:n}
@@ -5144,12 +5215,22 @@
% 将学校代码、研究生学号变量值存入逗号分隔列表,并计算最宽宽度赋给
% \cs{l_@@_tmpd_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpd_clist
- {
- { \l_@@_info_school_id_tl },
- { },
- { \l_@@_info_student_id_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpd_clist
+ {
+ { \l_@@_info_school_id_tl },
+ { },
+ { \c_@@_name_anonid_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpd_clist
+ {
+ { \l_@@_info_school_id_tl },
+ { },
+ { \l_@@_info_student_id_tl }
+ }
+ }
\@@_get_max_text_width:NN \l_@@_tmpd_dim \l_@@_tmpd_clist
% \end{macrocode}
% 用minipage环境通过循环输出结果。
@@ -5202,7 +5283,12 @@
{
\tl_use:c { c_@@_name_ #1 _tl }
\c_@@_fwid_colon_tl
- \@@_text_uline:n {\tl_use:c { l_@@_info_ #1 _tl }}
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \@@_text_uline:V \c_@@_name_anonid_tl
+ }{
+ \@@_text_uline:n {\tl_use:c { l_@@_info_ #1 _tl }}
+ }
}
% \end{macrocode}
% \end{macro}
@@ -5275,6 +5361,8 @@
% \end{macrocode}
% \end{macro}
%
+% \changes{v1.25}{2023/04/18}{添加盲审隐藏中文作者与导师。}
+%
% \begin{macro}{\@@_cover_info:}
% 作者信息栏。
% \begin{macrocode}
@@ -5309,15 +5397,28 @@
% 读取作者信息变量值,并将最宽者的宽度赋给
% \cs{l_@@_tmpb_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- { \l_@@_info_major_tl },
- { \l_@@_info_researchfield_tl },
- { \l_@@_info_author_tl },
- { \l_@@_info_supervisor_tl },
- { \l_@@_info_cosupervisor_tl },
- { \l_@@_info_date_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_tl },
+ { \l_@@_info_researchfield_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \l_@@_info_date_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_tl },
+ { \l_@@_info_researchfield_tl },
+ { \l_@@_info_author_tl },
+ { \l_@@_info_supervisor_tl },
+ { \l_@@_info_cosupervisor_tl },
+ { \l_@@_info_date_tl }
+ }
+ }
\@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist
}
% \end{macrocode}
@@ -5348,15 +5449,28 @@
% 读取作者信息变量值,并将最宽者的宽度赋给
% \cs{l_@@_tmpb_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- { \l_@@_info_major_tl },
- { \l_@@_info_researchfield_tl },
- { \l_@@_info_author_tl },
- { \l_@@_info_supervisor_tl },
- { \l_@@_info_cosupervisor_tl },
- { \l_@@_info_date_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_tl },
+ { \l_@@_info_researchfield_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \l_@@_info_date_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_tl },
+ { \l_@@_info_researchfield_tl },
+ { \l_@@_info_author_tl },
+ { \l_@@_info_supervisor_tl },
+ { \l_@@_info_cosupervisor_tl },
+ { \l_@@_info_date_tl }
+ }
+ }
\@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist
}
% \end{macrocode}
@@ -5381,15 +5495,28 @@
% 读取作者信息变量值,并将最宽者的宽度赋给
% \cs{l_@@_tmpb_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- { \l_@@_info_professionaltype_tl },
- { \l_@@_info_professionalfield_tl },
- { \l_@@_info_author_tl },
- { \l_@@_info_supervisor_tl },
- { \l_@@_info_cosupervisor_tl },
- { \l_@@_info_date_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_professionaltype_tl },
+ { \l_@@_info_professionalfield_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \l_@@_info_date_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_professionaltype_tl },
+ { \l_@@_info_professionalfield_tl },
+ { \l_@@_info_author_tl },
+ { \l_@@_info_supervisor_tl },
+ { \l_@@_info_cosupervisor_tl },
+ { \l_@@_info_date_tl }
+ }
+ }
\@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist
}
}
@@ -5417,16 +5544,30 @@
% 读取作者信息变量值,并将最宽者的宽度赋给
% \cs{l_@@_tmpb_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- { \l_@@_info_department_tl },
- { \l_@@_info_major_tl },
- { \l_@@_info_enroll_tl 级 \l_@@_info_class_id_tl 班 },
- { \l_@@_info_author_tl },
- { \l_@@_info_supervisor_tl },
- { \l_@@_info_cosupervisor_tl },
- { \l_@@_info_date_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_department_tl },
+ { \l_@@_info_major_tl },
+ { \l_@@_info_enroll_tl 级 \l_@@_info_class_id_tl 班 },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \l_@@_info_date_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_department_tl },
+ { \l_@@_info_major_tl },
+ { \l_@@_info_enroll_tl 级 \l_@@_info_class_id_tl 班 },
+ { \l_@@_info_author_tl },
+ { \l_@@_info_supervisor_tl },
+ { \l_@@_info_cosupervisor_tl },
+ { \l_@@_info_date_tl }
+ }
+ }
\@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist
}
}
@@ -5448,6 +5589,8 @@
% \end{macrocode}
% \end{macro}
%
+% \changes{v1.25}{2023/04/18}{添加盲审隐藏英文作者与导师。}
+%
% \begin{macro}{\@@_cover_info_en:}
% 英文作者信息栏,仅对研究生有效。
% \begin{macrocode}
@@ -5493,15 +5636,28 @@
% 读取作者信息变量值,并将最宽者的宽度赋给
% \cs{l_@@_tmpb_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- { \l_@@_info_major_en_tl },
- { \l_@@_info_researchfield_en_tl },
- { \l_@@_info_author_en_tl },
- { \l_@@_info_supervisor_en_tl },
- { \l_@@_info_cosupervisor_en_tl },
- { \l_@@_info_date_en_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_en_tl },
+ { \l_@@_info_researchfield_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \l_@@_info_date_en_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_en_tl },
+ { \l_@@_info_researchfield_en_tl },
+ { \l_@@_info_author_en_tl },
+ { \l_@@_info_supervisor_en_tl },
+ { \l_@@_info_cosupervisor_en_tl },
+ { \l_@@_info_date_en_tl }
+ }
+ }
% \end{macrocode}
% 用循环输出各字段。
% \begin{macrocode}
@@ -5562,15 +5718,28 @@
% 读取作者信息变量值,并将最宽者的宽度赋给
% \cs{l_@@_tmpb_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- { \l_@@_info_major_en_tl },
- { \l_@@_info_researchfield_en_tl },
- { \l_@@_info_author_en_tl },
- { \l_@@_info_supervisor_en_tl },
- { \l_@@_info_cosupervisor_en_tl },
- { \l_@@_info_date_en_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_en_tl },
+ { \l_@@_info_researchfield_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \l_@@_info_date_en_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \l_@@_info_major_en_tl },
+ { \l_@@_info_researchfield_en_tl },
+ { \l_@@_info_author_en_tl },
+ { \l_@@_info_supervisor_en_tl },
+ { \l_@@_info_cosupervisor_en_tl },
+ { \l_@@_info_date_en_tl }
+ }
+ }
% \end{macrocode}
% 用循环输出各字段。
% \begin{macrocode}
@@ -5627,15 +5796,28 @@
% 读取作者信息变量值,并将最宽者的宽度赋给
% \cs{l_@@_tmpb_dim}。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- { Master ~ of ~ \l_@@_info_professionaltype_en_tl },
- { \l_@@_info_professionalfield_en_tl },
- { \l_@@_info_author_en_tl },
- { \l_@@_info_supervisor_en_tl },
- { \l_@@_info_cosupervisor_en_tl },
- { \l_@@_info_date_en_tl }
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { Master ~ of ~ \l_@@_info_professionaltype_en_tl },
+ { \l_@@_info_professionalfield_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \c_@@_name_anonname_en_tl },
+ { \l_@@_info_date_en_tl }
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { Master ~ of ~ \l_@@_info_professionaltype_en_tl },
+ { \l_@@_info_professionalfield_en_tl },
+ { \l_@@_info_author_en_tl },
+ { \l_@@_info_supervisor_en_tl },
+ { \l_@@_info_cosupervisor_en_tl },
+ { \l_@@_info_date_en_tl }
+ }
+ }
% \end{macrocode}
% 用循环输出各字段。
% \begin{macrocode}
@@ -5659,6 +5841,7 @@
% \end{macro}
%
% \changes{v1.15}{2022/05/29}{为研究生题名页签字位置留空位。}
+% \changes{v1.25}{2023/04/18}{添加盲审隐藏作者、导师、指导小组等。}
%
% \begin{macro}{\@@_cover_instructors:}
% 题名页作者、指导教师、指导小组签名,仅对研究生有效。
@@ -5712,12 +5895,22 @@
% \end{macrocode}
% 作者、导师、指导小组信息变量值,并取得最宽宽度。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- {\l_@@_info_author_tl },
- {\l_@@_info_supervisor_tl },
- {\l_@@_tmpa_tl },
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ {\l_@@_info_author_tl },
+ {\l_@@_info_supervisor_tl },
+ {\l_@@_tmpa_tl },
+ }
+ }
\@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist
% \end{macrocode}
% 计算小页宽度。
@@ -5779,11 +5972,20 @@
% \end{macrocode}
% 作者、导师信息,并取得最宽宽度。
% \begin{macrocode}
- \clist_set:Nx \l_@@_tmpb_clist
- {
- {\l_@@_info_author_tl },
- {\l_@@_info_supervisor_tl },
- }
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ { \c_@@_name_anonname_tl },
+ { \c_@@_name_anonname_tl },
+ }
+ }{
+ \clist_set:Nx \l_@@_tmpb_clist
+ {
+ {\l_@@_info_author_tl },
+ {\l_@@_info_supervisor_tl },
+ }
+ }
\@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist
\dim_add:Nn \l_@@_tmpb_dim { \l_@@_tmpb_dim }
% \end{macrocode}
@@ -5812,6 +6014,8 @@
% \end{macrocode}
% \end{macro}
%
+% \changes{v1.25}{2023/04/18}{添加盲审隐藏答辩委员会。}
+%
% \begin{macro}{\@@_cover_defensecommittees:}
% 答辩委员会名单,仅对研究生有效。
% \begin{macrocode}
@@ -5859,23 +6063,28 @@
% \end{macrocode}
% 输出答辩委员会信息。
% \begin{macrocode}
- \begin{minipage} [ c ] { \textwidth }
- \centering
- \bool_until_do:nn { \clist_if_empty_p:N \l_@@_tmpa_clist }
- {
- \clist_pop:NN \l_@@_tmpa_clist \l_@@_tmpa_tl
- \clist_pop:NN \l_@@_tmpb_clist \l_@@_tmpb_tl
- \clist_pop:NN \l_@@_tmpc_clist \l_@@_tmpc_tl
- \@@_spread_box:Vn \l_@@_tmpa_dim { \l_@@_tmpa_tl }
- \@@_center_box:Vn \l_@@_tmpb_dim { \l_@@_tmpb_tl }
- \@@_spread_box:Vn \l_@@_tmpc_dim { \l_@@_tmpc_tl }
- \skip_vertical:n { 0.5 ex }
- }
- \end{minipage}
+ \bool_if:NF \l_@@_anonymous_bool
+ {
+ \begin{minipage} [ c ] { \textwidth }
+ \centering
+ \bool_until_do:nn { \clist_if_empty_p:N \l_@@_tmpa_clist }
+ {
+ \clist_pop:NN \l_@@_tmpa_clist \l_@@_tmpa_tl
+ \clist_pop:NN \l_@@_tmpb_clist \l_@@_tmpb_tl
+ \clist_pop:NN \l_@@_tmpc_clist \l_@@_tmpc_tl
+ \@@_spread_box:Vn \l_@@_tmpa_dim { \l_@@_tmpa_tl }
+ \@@_center_box:Vn \l_@@_tmpb_dim { \l_@@_tmpb_tl }
+ \@@_spread_box:Vn \l_@@_tmpc_dim { \l_@@_tmpc_tl }
+ \skip_vertical:n { 0.5 ex }
+ }
+ \end{minipage}
+ }
}
% \end{macrocode}
% \end{macro}
%
+% \changes{v1.25}{2023/04/18}{添加盲审隐藏项目资助列表。}
+%
% \begin{macro}{\@@_cover_foundation:}
% 项目资助列表,仅对研究生有效。
% \begin{macrocode}
@@ -5926,11 +6135,26 @@
\indent
\@@_qquad:
本研究得到
- \l_@@_tmpa_tl
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \c_@@_name_anonname_tl,
+ }{
+ \l_@@_tmpa_tl
+ }
\c_@@_fwid_colon_tl
- \l_@@_tmpb_tl
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \c_@@_name_anonname_tl,
+ }{
+ \l_@@_tmpb_tl
+ }
(编号\c_@@_fwid_colon_tl
- \l_@@_tmpc_tl
+ \bool_if:NTF \l_@@_anonymous_bool
+ {
+ \c_@@_name_anonname_tl,
+ }{
+ \l_@@_tmpc_tl
+ }
)资助
\par
}
diff --git a/macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf b/macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf
index 9b7bd35d2d..0d434617a4 100644
--- a/macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf
+++ b/macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf
Binary files differ
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 19cf694a52..7c2c843f52 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/2023
-depend revision/66888
+depend revision/66898
name 00texlive.image
category TLCore
-revision 66888
+revision 66898
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
@@ -3173,6 +3173,7 @@ runfiles size=13029
tlpkg/tlpsrc/orientation.tlpsrc
tlpkg/tlpsrc/orkhun.tlpsrc
tlpkg/tlpsrc/oscola.tlpsrc
+ tlpkg/tlpsrc/oststud.tlpsrc
tlpkg/tlpsrc/oswald.tlpsrc
tlpkg/tlpsrc/ot-tableau.tlpsrc
tlpkg/tlpsrc/othello.tlpsrc
@@ -4729,7 +4730,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 66876
+revision 66897
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
@@ -72942,7 +72943,7 @@ containerchecksum 508276fe37018f3d9773fc7cda0cb37edcdd28e9cf8ab54ed5be16b07c2066
name collection-publishers
category Collection
-revision 66821
+revision 66894
shortdesc Publisher styles, theses, etc.
relocated 1
depend aastex
@@ -73105,6 +73106,7 @@ depend nwafuthesis
depend nwejm
depend onrannual
depend opteng
+depend oststud
depend oup-authoring-template
depend philosophersimprint
depend pittetd
@@ -73224,7 +73226,7 @@ depend yazd-thesis
depend yb-book
depend york-thesis
containersize 1696
-containerchecksum ef1efd16bebe2cdf48a20571dd9ec68da490934eb6c1e5bbdcdeca64184343cfa372423eb03a5c9f9f38327be71663ca98b896503418829d8b47491e04061817
+containerchecksum d2ca1c69d348e10cbda64d7e48362c1c4cc6a274652b459d1bbc4f0d454a98868637b887686d33fe1b095facc8bfa021d7655cad70c5fa7394e61c2fd4528b88
name collection-texworks
category Collection
@@ -147451,47 +147453,41 @@ catalogue-version 1.0
name ibarra
category Package
-revision 64567
+revision 66892
shortdesc LaTeX support for the Ibarra Real Nova family of fonts
relocated 1
longdesc The Ibarra Real Nova is a revival of a typeface designed by
longdesc Geronimo Gil for the publication of Don Quixote for the Real
longdesc Academia de la Lengua in 1780. Joaquin Ibarra was the printer.
execute addMap ibarra.map
-containersize 1106004
-containerchecksum 1e837bc577e185fc2e79abdb3e353939eab98e824369096e536afa03f4030d0e4789080c2e51a49cc4451a4c6d7ddaf59c9def438f7a033ecf981320121c6e8f
-doccontainersize 213588
-doccontainerchecksum c48b49d4d0d63948c17a8116fa691e0e75b3d659e40c983082bad98b8fc21ff75f8e87ec4ce1048b0d03bbe12597e4a3d720054ff6d367c5c3ec14452fcec4c3
-docfiles size=63
+containersize 788124
+containerchecksum 7de51f4d206481dadbd4409a0c98dafb36a415e75053b78f40349edfd8b122e9449e749967eada07507ada1f6f22658c02b0a4993e39c2b0e97334076072d6a8
+doccontainersize 229984
+doccontainerchecksum 318a4bb5d2fd012c783053f457023604d53cdb2b02739ef8a1780f1856d5a63713774568cfa7a230f8ca1eb4711fa65f99d5a99b5c4e9235fb1b449751bc50b0
+docfiles size=67
RELOC/doc/fonts/ibarra/OFL.txt
RELOC/doc/fonts/ibarra/README details="Readme"
RELOC/doc/fonts/ibarra/ibarra-samples.pdf details="Package documentation"
RELOC/doc/fonts/ibarra/ibarra-samples.tex
RELOC/doc/fonts/ibarra/specimen.pdf
-runfiles size=1112
- RELOC/fonts/enc/dvips/ibarra/ibrr_2qacnp.enc
+runfiles size=1016
RELOC/fonts/enc/dvips/ibarra/ibrr_6jlwjs.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_a3lg2q.enc
- RELOC/fonts/enc/dvips/ibarra/ibrr_bqfkme.enc
+ RELOC/fonts/enc/dvips/ibarra/ibrr_dmmd3u.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_eocuub.enc
- RELOC/fonts/enc/dvips/ibarra/ibrr_gj2f64.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_ifilzm.enc
- RELOC/fonts/enc/dvips/ibarra/ibrr_j5nrvp.enc
+ RELOC/fonts/enc/dvips/ibarra/ibrr_jzetup.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_miztrm.enc
- RELOC/fonts/enc/dvips/ibarra/ibrr_qbzklr.enc
- RELOC/fonts/enc/dvips/ibarra/ibrr_rszbuw.enc
+ RELOC/fonts/enc/dvips/ibarra/ibrr_mqbgzl.enc
+ RELOC/fonts/enc/dvips/ibarra/ibrr_q6k3zb.enc
+ RELOC/fonts/enc/dvips/ibarra/ibrr_qwj6yz.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_s4svbt.enc
+ RELOC/fonts/enc/dvips/ibarra/ibrr_w55u3i.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_xjlkg7.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_xx2mp7.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_yt2suz.enc
RELOC/fonts/enc/dvips/ibarra/ibrr_yyhfj4.enc
RELOC/fonts/map/dvips/ibarra/ibarra.map
- RELOC/fonts/opentype/public/ibarra/IbarraRealNova-Bold.otf
- RELOC/fonts/opentype/public/ibarra/IbarraRealNova-BoldItalic.otf
- RELOC/fonts/opentype/public/ibarra/IbarraRealNova-Italic.otf
- RELOC/fonts/opentype/public/ibarra/IbarraRealNova-Regular.otf
- RELOC/fonts/opentype/public/ibarra/IbarraRealNova-SemiBold.otf
- RELOC/fonts/opentype/public/ibarra/IbarraRealNova-SemiBoldItalic.otf
RELOC/fonts/tfm/public/ibarra/IbarraRealNova-Bold-lf-ly1--base.tfm
RELOC/fonts/tfm/public/ibarra/IbarraRealNova-Bold-lf-ly1.tfm
RELOC/fonts/tfm/public/ibarra/IbarraRealNova-Bold-lf-ot1.tfm
@@ -147678,6 +147674,12 @@ runfiles size=1112
RELOC/fonts/tfm/public/ibarra/IbarraRealNova-SemiBoldItalic-sup-ot1.tfm
RELOC/fonts/tfm/public/ibarra/IbarraRealNova-SemiBoldItalic-sup-t1--base.tfm
RELOC/fonts/tfm/public/ibarra/IbarraRealNova-SemiBoldItalic-sup-t1.tfm
+ RELOC/fonts/truetype/public/ibarra/IbarraRealNova-Bold.ttf
+ RELOC/fonts/truetype/public/ibarra/IbarraRealNova-BoldItalic.ttf
+ RELOC/fonts/truetype/public/ibarra/IbarraRealNova-Italic.ttf
+ RELOC/fonts/truetype/public/ibarra/IbarraRealNova-Regular.ttf
+ RELOC/fonts/truetype/public/ibarra/IbarraRealNova-SemiBold.ttf
+ RELOC/fonts/truetype/public/ibarra/IbarraRealNova-SemiBoldItalic.ttf
RELOC/fonts/type1/public/ibarra/IbarraRealNova-Bold.pfb
RELOC/fonts/type1/public/ibarra/IbarraRealNova-BoldItalic.pfb
RELOC/fonts/type1/public/ibarra/IbarraRealNova-Italic.pfb
@@ -170847,7 +170849,7 @@ catalogue-version 1.1
name l3backend
category Package
-revision 66710
+revision 66896
shortdesc LaTeX3 backend drivers
relocated 1
longdesc This package forms parts of expl3, and contains the code used
@@ -170856,17 +170858,17 @@ longdesc The functions here are defined differently depending on the
longdesc engine in use. As such, these are distributed separately from
longdesc l3kernel to allow this code to be updated on an independent
longdesc schedule.
-containersize 16200
-containerchecksum 98c018f90dcc0f3c82737e27cfbc47cc9aa7cef1d956d3722f4e251b4f5089a6dca9765bcd10ff8afdaa225ee1d2f90335fbe24d259b0ded49043a3ee3a47beb
-doccontainersize 888076
-doccontainerchecksum cab1765579b829ab44fde09d7f4f48c93349291215b4990ae3be288824e7dbb20cdc5eaffd730de0c89bb878c1284bbb7bb1101df7314aff257f666a4632aa5a
-docfiles size=233
+containersize 16240
+containerchecksum 6a9d1f0778ea64255988c85a95810d490f88ad8e34e8b41d493f8986bf1359822df34617c7db78d8916693c45cb3873fec4a1002c63ca2e1fa6174c1926e4931
+doccontainersize 888376
+doccontainerchecksum 965eeb732bcee7dfc878b42986525d6fb90f59005fa31797a268a64bcf9494104fe534df209dcbd348ad4e2702e6658606df16e22056b8ea5b1e24d34e5822a2
+docfiles size=234
RELOC/doc/latex/l3backend/CHANGELOG.md
RELOC/doc/latex/l3backend/README.md details="Readme"
RELOC/doc/latex/l3backend/l3backend-code.pdf details="Package documentation"
RELOC/doc/latex/l3backend/l3backend-code.tex
-srccontainersize 33844
-srccontainerchecksum ae3bf877600a61ca6046510bb8e790eccca341f88f6fc8cbbbfdb020d65eaff09f83dc23eeb1f1564a926d450532575a009f389862f1cc04a7942927d76a3b59
+srccontainersize 33852
+srccontainerchecksum 5d5a1b90a1aa9c3721e0fbedba14123aa48697400f5d9e2ac549f471b9f1d12df534a03a8e77cdfa27407fade9d84d280b33f36a54f1d98f79881fdf5786ce73
srcfiles size=58
RELOC/source/latex/l3backend/l3backend-basics.dtx
RELOC/source/latex/l3backend/l3backend-box.dtx
@@ -171086,7 +171088,7 @@ binfiles arch=x86_64-solaris size=1
name l3experimental
category Package
-revision 66710
+revision 66896
shortdesc Experimental LaTeX3 concepts
relocated 1
longdesc The l3experimental packages are a collection of experimental
@@ -171106,11 +171108,11 @@ longdesc series of 'handle' positions, supplementing the simple TeX
longdesc reference point; xgalley, which controls boxes receiving text
longdesc for typesetting.
depend l3kernel
-containersize 23656
-containerchecksum 8f8481f370a1552413ba225b04a75ee11dc26c1994137a11886eac33291f5eb92a072e0ab0b4651fb7c69b52d0c5041aabbede7edae5f9790875fa4214cfd81a
-doccontainersize 3496112
-doccontainerchecksum 2626dcfd91c1bd3335746516c44f472a26775f3a2f2fc6f64e7b9774d3791c04cd2fa095b058a0c5a27b458c40459e34c6824f16d1614f66c93f7c8ce0099045
-docfiles size=1090
+containersize 23664
+containerchecksum 3f633cac20ce5557a93666b397d921ece2cfa4e4ec3b1623790672c8fa2d9d036df0145a114a6d6056caa6c8f5a3f31b94f64bea9b5bc5a9e585f99a23d7aa24
+doccontainersize 3498280
+doccontainerchecksum 148fa0c4161b49295f980e98e69047f25e509113e14abd604a8fa532c04c6cf94e69f0883da16f6447b4272143761689a29abba7b4fa210e1088dbcbb995fc02
+docfiles size=1091
RELOC/doc/latex/l3experimental/CHANGELOG.md
RELOC/doc/latex/l3experimental/README.md details="Readme"
RELOC/doc/latex/l3experimental/l3benchmark/l3benchmark.pdf details="l3benchmark documentation"
@@ -171125,8 +171127,8 @@ docfiles size=1090
RELOC/doc/latex/l3experimental/xcoffins/xcoffins.pdf details="xcoffins documentation"
RELOC/doc/latex/l3experimental/xgalley/l3galley.pdf
RELOC/doc/latex/l3experimental/xgalley/xgalley.pdf details="xgalley documentation"
-srccontainersize 80088
-srccontainerchecksum 52f0ebc684303dc403038b9306359663f5710b869a71a1af6a36ac9ca032b01616ea5859d71e4b5375ea4f88937629c71b7e122f9b1abaf2d41d3d7b0b704ef3
+srccontainersize 80196
+srccontainerchecksum 69b7e1790c9578c0317892203ca782d72aaabd05622a712ecfb9fc291415d8a657f248c798905197b2a4fcffcbd89dc7e51f16f8183edf8eaa37fdef66506b5c
srcfiles size=132
RELOC/source/latex/l3experimental/l3benchmark/l3benchmark.dtx
RELOC/source/latex/l3experimental/l3benchmark/l3benchmark.ins
@@ -171174,7 +171176,7 @@ catalogue-topics macro-supp layout latex3 pre-release
name l3kernel
category Package
-revision 66710
+revision 66896
shortdesc LaTeX3 programming conventions
relocated 1
longdesc The l3kernel bundle provides an implementation of the LaTeX3
@@ -171184,11 +171186,11 @@ longdesc LaTeX3 kernel and other future code are built: it is an API for
longdesc TeX programmers. The packages are set up so that the LaTeX3
longdesc conventions can be used with regular LaTeX2e packages.
depend l3backend
-containersize 175004
-containerchecksum 01da02e515ceabfd8fd30d1509f29be49bc3c92cc3a136470ece2c6f649778f0322292d9a6d543ece6b07ec273c639a1b8bc2c7751f2236cd1e64afcb1ce76aa
-doccontainersize 11993992
-doccontainerchecksum 0e3047e8efdc6c771d044265610741ef399a63ac410c205047e1c6ec76d0d46cb8d17aa991fe1b34170f764a47f46df070aaf560fd8952b21119159403d13d59
-docfiles size=3418
+containersize 175348
+containerchecksum e37c0d21704da7626083f2a3fc0683362982aa9268e00a13fd68d3d7b6d12296b4d8a4de328722a4bc896b4a026c98bbf57e96d3dacc7e5193682953b3fa94cf
+doccontainersize 11971196
+doccontainerchecksum 8a7fe36a53b2c5c3b8e51cac8a0acd6b9cf1691878ca192c490a41d6c0de93b5e8b4ec416f27e3697b9ad82b0bc7bc9de137e80632388f525cd0af424337c316
+docfiles size=3412
RELOC/doc/latex/l3kernel/CHANGELOG.md
RELOC/doc/latex/l3kernel/README.md details="Readme"
RELOC/doc/latex/l3kernel/expl3.pdf details="The LaTeX3 Programming Language"
@@ -171235,9 +171237,9 @@ docfiles size=3418
RELOC/doc/latex/l3kernel/source3.pdf
RELOC/doc/latex/l3kernel/source3.tex
RELOC/doc/latex/l3kernel/source3body.tex
-srccontainersize 599948
-srccontainerchecksum ee10f03209fa3b3c13a9612f7a9482e49da6532f5e44136c8b13818c6fe07fa147b7cc0e8d33e78f9c102cb6d7c7862a10a6e3f849d6e2a10c5c9d1baff1a372
-srcfiles size=925
+srccontainersize 600616
+srccontainerchecksum a3aa8bfdf2c72c3dc85cba7a6e8c9b519b4dc809e68283fc1c57b0bbc6eee5e968f5c4c7fc7a384a70a7af758b2ac5b2ab6675d11f7d1b1e817a98d9628e8738
+srcfiles size=926
RELOC/source/latex/l3kernel/expl3.dtx
RELOC/source/latex/l3kernel/l3.ins
RELOC/source/latex/l3kernel/l3basics.dtx
@@ -234143,7 +234145,7 @@ catalogue-version 0.0.1
name nwafuthesis
category Package
-revision 63438
+revision 66895
shortdesc A thesis template package for Northwest A&F University, China
relocated 1
longdesc This template supports doctoral and master dissertations and
@@ -234153,11 +234155,11 @@ longdesc normative format, as well as a hackable class for the users. At
longdesc present, nwafuthesis only supports XeTeX and LuaTeX engines.
longdesc nwafuthesis only allows UTF-8 encoding. nwafuthesis is based on
longdesc the fduthesis template.
-containersize 19760
-containerchecksum fb446200dd57be37bca4e526506124bcfe3c35c3af452cbe542bf3f5e7c56f3108d5482131641a9bb8b379c4aa713152fdc13ee9f1aedb6a97c545328c0f04a1
-doccontainersize 2263888
-doccontainerchecksum 009615c925755952d8a26a8d51f6d8d066b644a9168e241b339a137e56365bb17452016c8befe3fa3dbdccf6ae68daea3f29b99ae8d8c8e50e8028570620da2f
-docfiles size=982
+containersize 20060
+containerchecksum f3bbd684f063f59ea0fc53df99ac0e84f3106651d6ce5cd48d58cbcc7cfc205a9330db5d4c7988a213563d6fb215a1c6d90c240396894ded1b7ccef0ea4253c8
+doccontainersize 2293432
+doccontainerchecksum 4a5395c215dd135488bec466dd4fb210402bdca2e54deb727264b02bd621bdf16ea60b4c16c86497b016f30f2dc5c291d0d432bbd99beea84d59533d29c2557d
+docfiles size=990
RELOC/doc/latex/nwafuthesis/README.md details="Readme"
RELOC/doc/latex/nwafuthesis/logo/building.jpg
RELOC/doc/latex/nwafuthesis/logo/motto.png
@@ -234166,21 +234168,21 @@ docfiles size=982
RELOC/doc/latex/nwafuthesis/logo/workflow.pdf
RELOC/doc/latex/nwafuthesis/nwafudoc.cls
RELOC/doc/latex/nwafuthesis/nwafuthesis.pdf details="Package documentation" language="zh"
-srccontainersize 62492
-srccontainerchecksum d2544ff7f20410b3f84459776d5f5b29c0b0b88e3cd9a1da6f3280f6e536996ca04c15cfb831c859b2c7a95d9bc8c93ca45b4a5fd3967d9c5b4d49969b9e7c06
-srcfiles size=85
+srccontainersize 63032
+srccontainerchecksum d6188d94c3c35c2fc63efbbc37263a3f0c584974de022978671701e8e0d25d26b11e3dc92edb594ffadab231e754745b35498f09d9f95e00a114f09f790d103f
+srcfiles size=87
RELOC/source/latex/nwafuthesis/build-win.bat
RELOC/source/latex/nwafuthesis/build.sh
RELOC/source/latex/nwafuthesis/nwafuthesis-doc.dtx
RELOC/source/latex/nwafuthesis/nwafuthesis.dtx
-runfiles size=33
+runfiles size=35
RELOC/tex/latex/nwafuthesis/nwafuthesis.cls
catalogue-contact-bugs https://gitee.com/nwafu_nan/nwafuthesis-l3/issues
catalogue-contact-repository https://gitee.com/nwafu_nan/nwafuthesis-l3
catalogue-ctan /macros/unicodetex/latex/nwafuthesis
catalogue-license lppl1.3c
catalogue-topics class doc-templ dissertation chinese expl3
-catalogue-version 1.15
+catalogue-version 1.25
name nwejm
category Package
@@ -238648,6 +238650,52 @@ catalogue-license lppl1.3
catalogue-topics legal biblatex
catalogue-version 1.7
+name oststud
+category Package
+revision 66894
+shortdesc Templates for the student organization at OST FH, Switzerland
+relocated 1
+longdesc This package is made by the student organization at the
+longdesc University of Applied Sciences of Eastern Switzerland
+longdesc (Ostschweizer Fachhochschule) to provide an easy to use
+longdesc interface for newbies and give a more consistent look and feel
+longdesc to the works produced by the organization's members. This
+longdesc package also contains hsrstud.{ins,dtx} which is the older
+longdesc version of the oststud package before the school changed its
+longdesc name in 2021. We would like to keep it for backwards
+longdesc compatibility when compiling old documents that have not been
+longdesc migrated yet.
+containersize 6872
+containerchecksum 16f0cab06b563a5e6f2402c4aca9522707eddcc009a949d1728a97d63342aba8e568b521ac5145ed8cbd954f45b9223d2be67cb8ebe2061d89f1113908b8c4c8
+doccontainersize 354252
+doccontainerchecksum 03b0065af756e474f2ab2e6e6e9e055a8a0b7e4ef49a88ca79e01c1fc39539ece9610ee71477e78559802c6ec39542e1160a6898aaeb291e5edf690ee2ad7c66
+docfiles size=109
+ RELOC/doc/latex/oststud/LICENSE.txt
+ RELOC/doc/latex/oststud/README.md details="Readme"
+ RELOC/doc/latex/oststud/hsrstud-classes.pdf
+ RELOC/doc/latex/oststud/hsrstud.pdf
+ RELOC/doc/latex/oststud/oststud.pdf details="Package documentation"
+srccontainersize 14892
+srccontainerchecksum e1a4337313b1c18c375c38e4f7644e1f25d5b89a3e7ac6314f10487dd56e678ca85b782481ba23e9cf81068fdc024ef356a14e14d70257f20a6f47582969c00a
+srcfiles size=17
+ RELOC/source/latex/oststud/Makefile
+ RELOC/source/latex/oststud/hsrstud-classes.dtx
+ RELOC/source/latex/oststud/hsrstud.dtx
+ RELOC/source/latex/oststud/hsrstud.ins
+ RELOC/source/latex/oststud/oststud.dtx
+ RELOC/source/latex/oststud/oststud.ins
+runfiles size=10
+ RELOC/tex/latex/oststud/hsrbericht.cls
+ RELOC/tex/latex/oststud/hsrstud.sty
+ RELOC/tex/latex/oststud/hsrzf.cls
+ RELOC/tex/latex/oststud/oststud.sty
+catalogue-contact-bugs https://github.com/HSR-Stud/HSRStud-Package/issues
+catalogue-contact-repository https://github.com/HSR-Stud/HSRStud-Package
+catalogue-ctan /macros/latex/contrib/oststud
+catalogue-license cc-by-sa-4
+catalogue-topics doc-templ
+catalogue-version 0.3
+
name oswald
category Package
revision 60784
@@ -249258,16 +249306,16 @@ catalogue-version 1.0.2
name pixelarttikz
category Package
-revision 65649
+revision 66893
shortdesc Work with PixelArts, with TikZ
relocated 1
longdesc The package defines commands and an environment for displaying
longdesc pixel arts.
-containersize 1912
-containerchecksum a22bc217cbb20081d44684180f40da9883a17f133f8214ef141ba25924657f51517189d567c08f71e76b6cd3704eae4050d4757479925f23a9e5b5a8faa90ff2
-doccontainersize 813496
-doccontainerchecksum 2a3e6ed9f865fb75a3ae7089e00e3e8cfb4ab5ad20eca21f697022af5342f292505de24814b6137a31d6aa05f204618cb94f1628d8bd51e64530d898b6cba5a0
-docfiles size=257
+containersize 1928
+containerchecksum 9074e640506f75f8d9742636391f5f3dfdaeb51b8458efb7d65484a3e188696f355c772a168ce29d8622d182a1195925ba41ab72014ad6ab8dce32e5fb78ee0c
+doccontainersize 781276
+doccontainerchecksum 27ecac01158531f7dbcab1d850571652444f35605462325380600b786c67b62717451efa9651a6e90f63b9a2589738cc73a9123ad87f38e83605b69598adc5f4
+docfiles size=253
RELOC/doc/latex/pixelarttikz/PixelArtTikz-doc-en.pdf details="Package documentation (English)"
RELOC/doc/latex/pixelarttikz/PixelArtTikz-doc-en.tex
RELOC/doc/latex/pixelarttikz/PixelArtTikz-doc-fr.pdf details="Package documentation (French)" language="fr"
@@ -249283,7 +249331,7 @@ catalogue-contact-repository https://github.com/cpierquet/PixelArtTikz
catalogue-ctan /graphics/pgf/contrib/pixelarttikz
catalogue-license lppl1.3c
catalogue-topics graphics pgf-tikz
-catalogue-version 0.1.0
+catalogue-version 0.1.1
name pkfix
category Package
@@ -312249,7 +312297,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 66876
+revision 66897
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.
@@ -312258,9 +312306,9 @@ depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
containersize 112904
-containerchecksum ea51d699a12ccbfce077227b951ca67f339201725f1990686993786712c174d549f7099a578f79998f083efab18b946fdb883a5ecbab1602821fca3a46d9159c
-doccontainersize 426172
-doccontainerchecksum 32056b902b4fa3039d29cfc4a0f954517bf665c0b58410e42ae4e89901067159788961cf42530c7ba4becf84c6bde946551f17af5e77f0f9d615afe48f8ec212
+containerchecksum 2ba2bad18d891920e07ef084263aae79e6fc7be12a72c4e5653a07334bc105ac29659f6bdfe6929600a970b2fa553538e7425d9a6b1a3822c083fa980d73c069
+doccontainersize 426112
+doccontainerchecksum 0e30841db41293ab3639a33a836427cbe69eb4ed159fb48fd704bd2c5d233d3dc68b92968aee9aaaed09bfd2dbf63e5b89a54c1345f2161a2fa2a3dfb1cb5f04
docfiles size=543
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index fdbdb6b6dc..b25baba89d 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-fa610a7bdc0bc8dfbea7a9f934790d1a texlive.tlpdb
+768bc9fadc8a06c3cf5dc107828586ea texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index b2df6e1138..d02ee026ca 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-db66bbb81747585f98bdd934d3c5cd9376856133517cb7ea837711856a50ba4d03da6d03ffa0ca76548f976b6923492631264e0bf4bf258102919a506852f290 texlive.tlpdb
+2eeab7d4a6c26a1ecf22812d7b1d9149c17a6d556854ef96043d7e604ec44a0b3c452a2fcb95907e1420679f2a4359296ebb083ae7e3380958b1f66b3d57dffe texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 5eab439d97..84bbf4255d 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-----
-iQEcBAEBCgAGBQJkPy19AAoJEEzhh34ZQ4xwtP0IALRGVDn+kt+Ge081WKCOdue8
-MiCdtREWl0BTua1oi7Y0L+hwyE2EJdsfgwBd7+DY/++WYJ4XiaeBsoIxarC1ETjX
-7Z9sVDj9aOKwVk89fIxpybsejjbbNkeXBqfzeDogG9w/9ni6tOJc/4x5SJUvwfTW
-KAyiKdcgAnhlG3rhz/Mr9BPYeK2bxXiWbuOGl9X9boyMcG5TJH5sYc9ft8TEo/zp
-xj/MLEKzSd+tjoFgUumySvF0HuMXoSxw+YwUwRwZMHSRXqV9dmmt1bWQgRFhRrWM
-gBOFYcbRRQI+1/HYNF86iPeJipSYbys0fap4CdRwPXWPzSrhmwsV4mSvFPyhoHY=
-=gif+
+iQEcBAEBCgAGBQJkQH6lAAoJEEzhh34ZQ4xw/6IIAKqSfLKuDq7LBpoMdWbX9vPJ
+AZtOGfm5rAxwLXsvbUOjEJQunNfD6kN4vfs+lkAGvF2o0bHtyKDlAf9bmWzBcYs3
+WFQURJURnz49eCnqN05lMi7Y2nk4IftPMS103T6jBajGaJPJdJ9oZdCNFHb2slB2
+1sgwp7u9dRzYTrDQMZWkDf21VTZdlYvC8QxZhO9hvkTrsstmZ/bBRVxia+MQSt9u
+CAgCE7hnwPCo0bOnn8qAOH4yEuYF6heyrbztiniy+pQpRTBckbO+jkQx548l4Fug
+0M4nV/aG3FFFsR1q3rGLWd0202awmuYxh/QftbxnAPP64ZUVBHgRjPDc68UnYg4=
+=Illd
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 54f484c42a..61e7989159 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/timestamp b/timestamp
index f05f817dd3..3389eaf164 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:
-2023-04-19-02-02
+2023-04-20-02-02