summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-10-26 03:03:53 +0000
committerNorbert Preining <norbert@preining.info>2024-10-26 03:03:53 +0000
commitbcdaee1dcafa3d6898089a20f60acf2aee48c3e5 (patch)
treee81d67d4063802d5da5dc191986c89dd6e50e745
parenta3db9684ce0769b0457614e0706b8c86e039b4f9 (diff)
CTAN sync 202410260303
-rw-r--r--FILES.byname321
-rw-r--r--FILES.byname.gzbin2681781 -> 2681971 bytes
-rw-r--r--FILES.last07days551
-rw-r--r--biblio/ctan-bibdata/ctan.bib167
-rw-r--r--fonts/concmath-otf/Concrete-Math-Bold.otfbin148324 -> 148324 bytes
-rw-r--r--fonts/concmath-otf/Concrete-Math.otfbin381668 -> 383256 bytes
-rw-r--r--fonts/concmath-otf/README.md7
-rw-r--r--fonts/concmath-otf/concmath-otf.ltx36
-rw-r--r--fonts/concmath-otf/concmath-otf.pdfbin165061 -> 167878 bytes
-rw-r--r--fonts/concmath-otf/concmath-otf.sty4
-rw-r--r--fonts/concmath-otf/unimath-concrete.pdfbin1847203 -> 1810711 bytes
-rw-r--r--fonts/simpleicons/doc/simpleicons.pdfbin2542627 -> 2541375 bytes
-rw-r--r--fonts/simpleicons/doc/simpleicons.tex2
-rw-r--r--fonts/simpleicons/opentype/SimpleIcons.otfbin2464876 -> 2463616 bytes
-rw-r--r--fonts/simpleicons/tex/simpleicons.sty2
-rw-r--r--fonts/simpleicons/tex/usimpleiconseight.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsfive.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsfour.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsnine.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsone.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsoneone.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsonethree.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsonetwo.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsonezero.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsseven.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconssix.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconsthree.fd2
-rw-r--r--fonts/simpleicons/tex/usimpleiconstwo.fd2
-rw-r--r--fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfmbin1232 -> 1232 bytes
-rw-r--r--fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfmbin1232 -> 1232 bytes
-rw-r--r--fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfmbin1232 -> 1232 bytes
-rw-r--r--fonts/simpleicons/type1/SimpleIcons.pfbbin2269931 -> 2268648 bytes
-rw-r--r--fonts/xcharter-math/README.md6
-rw-r--r--fonts/xcharter-math/XCharter-Math-Bold.otfbin145720 -> 145720 bytes
-rw-r--r--fonts/xcharter-math/XCharter-Math.ltx8
-rw-r--r--fonts/xcharter-math/XCharter-Math.otfbin363276 -> 365552 bytes
-rw-r--r--fonts/xcharter-math/XCharter-Math.pdfbin206035 -> 204086 bytes
-rw-r--r--fonts/xcharter-math/unimath-xcharter.pdfbin1825149 -> 1826273 bytes
-rw-r--r--fonts/xcharter-math/xcharter-otf.sty4
-rw-r--r--macros/latex/contrib/algxpar/README.md16
-rw-r--r--macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex6
-rw-r--r--macros/latex/contrib/algxpar/algxpar-doc.pdfbin765435 -> 838611 bytes
-rw-r--r--macros/latex/contrib/algxpar/algxpar-doc.tex299
-rw-r--r--macros/latex/contrib/algxpar/algxpar-english.kw.tex2
-rw-r--r--macros/latex/contrib/algxpar/algxpar-lzw.tex19
-rw-r--r--macros/latex/contrib/algxpar/algxpar-versionchanges.sty404
-rw-r--r--macros/latex/contrib/algxpar/algxpar.sty511
-rw-r--r--macros/latex/contrib/algxpar/license416
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/LICENSE416
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/README.md22
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.pdfbin0 -> 782406 bytes
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.tex166
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamerthemeMirage.sty166
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.pdfbin0 -> 186164 bytes
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.tex138
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.pdfbin0 -> 88084 bytes
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.tex136
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.pdfbin0 -> 280976 bytes
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.tex172
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.pdfbin0 -> 151425 bytes
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.tex164
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/miragesup.pngbin0 -> 58719 bytes
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/sample-refs.bib16
-rw-r--r--macros/latex/contrib/cora-macs/LICENSE21
-rw-r--r--macros/latex/contrib/cora-macs/README.md91
-rw-r--r--macros/latex/contrib/cora-macs/cora-macs-doc.pdfbin0 -> 183263 bytes
-rw-r--r--macros/latex/contrib/cora-macs/cora-macs-doc.tex119
-rw-r--r--macros/latex/contrib/cora-macs/cora-macs.sty198
-rw-r--r--macros/latex/contrib/easybook/README.md2
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx26
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin648559 -> 648441 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex10
-rw-r--r--macros/latex/contrib/huawei/DEPENDS.txt1
-rw-r--r--macros/latex/contrib/huawei/README.md20
-rw-r--r--macros/latex/contrib/huawei/huawei.dtx211
-rw-r--r--macros/latex/contrib/huawei/huawei.pdfbin809033 -> 735500 bytes
-rw-r--r--macros/latex/contrib/jsonparse/README.md2
-rw-r--r--macros/latex/contrib/jsonparse/jsonparse-doc.pdfbin434099 -> 434426 bytes
-rw-r--r--macros/latex/contrib/jsonparse/jsonparse-doc.tex5
-rw-r--r--macros/latex/contrib/jsonparse/jsonparse.sty4
-rw-r--r--macros/latex/contrib/mathfixs/README.txt2
-rw-r--r--macros/latex/contrib/mathfixs/mathfixs.dtx16
-rw-r--r--macros/latex/contrib/mathfixs/mathfixs.pdfbin382758 -> 383074 bytes
-rw-r--r--macros/latex/contrib/naive-ebnf/LICENSE.txt2
-rw-r--r--macros/latex/contrib/naive-ebnf/naive-ebnf.dtx9
-rw-r--r--macros/latex/contrib/naive-ebnf/naive-ebnf.ins4
-rw-r--r--macros/latex/contrib/naive-ebnf/naive-ebnf.pdfbin772430 -> 592942 bytes
-rw-r--r--support/TeX4ht/source/ChangeLog9
-rw-r--r--support/TeX4ht/source/tex4ht-4ht.tex15
-rw-r--r--support/TeX4ht/source/tex4ht-mathjax.tex5
-rw-r--r--support/pdflatexpicscale/README4
-rw-r--r--support/pdflatexpicscale/pdflatexpicscale.pdfbin117642 -> 127589 bytes
-rwxr-xr-xsupport/pdflatexpicscale/pdflatexpicscale.pl488
-rw-r--r--support/pdflatexpicscale/pdflatexpicscale.tex100
-rw-r--r--support/pdflatexpicscale/testprinter.ps2
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl1
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb265
-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.asc16
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2605812 -> 2606948 bytes
-rw-r--r--timestamp2
102 files changed, 4565 insertions, 1292 deletions
diff --git a/FILES.byname b/FILES.byname
index a7cd26a1b3..859bd324c5 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2147,12 +2147,12 @@
2024/10/05 | 1837 | biblio/citation-style-language/README.md
2024/10/05 | 12878 | biblio/citation-style-language/vancouver.csl
2024/10/05 | 4673585 | biblio/citation-style-language.zip
-2024/10/24 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2024/10/25 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2024/10/24 | 2895384 | biblio/ctan-bibdata/ctan.bib
-2024/10/24 | 3790528 | biblio/ctan-bibdata/ctan.pdf
+2024/10/25 | 2895400 | biblio/ctan-bibdata/ctan.bib
+2024/10/25 | 3790528 | biblio/ctan-bibdata/ctan.pdf
2023/01/16 | 1489 | biblio/ctan-bibdata/README
-2024/10/24 | 4207660 | biblio/ctan-bibdata.zip
+2024/10/25 | 4207692 | 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
@@ -5514,7 +5514,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
-2024/10/24 | 131090 | FILES.last07days
+2024/10/25 | 157844 | 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
@@ -27383,15 +27383,15 @@
1999/03/18 | 4749 | fonts/concmath/mf/xccsy7.mf
1999/03/18 | 4732 | fonts/concmath/mf/xccsy8.mf
1999/03/18 | 4765 | fonts/concmath/mf/xccsy9.mf
-2024/03/01 | 23345 | fonts/concmath-otf/concmath-otf.ltx
-2024/03/01 | 165061 | fonts/concmath-otf/concmath-otf.pdf
-2024/03/01 | 5589 | fonts/concmath-otf/concmath-otf.sty
-2024/03/01 | 148324 | fonts/concmath-otf/Concrete-Math-Bold.otf
-2024/03/01 | 381668 | fonts/concmath-otf/Concrete-Math.otf
-2024/03/01 | 5071 | fonts/concmath-otf/README.md
-2024/03/01 | 16886 | fonts/concmath-otf/unimath-concrete.ltx
-2024/03/01 | 1847203 | fonts/concmath-otf/unimath-concrete.pdf
-2024/03/01 | 2306278 | fonts/concmath-otf.zip
+2024/10/25 | 23480 | fonts/concmath-otf/concmath-otf.ltx
+2024/10/25 | 167878 | fonts/concmath-otf/concmath-otf.pdf
+2024/10/25 | 5589 | fonts/concmath-otf/concmath-otf.sty
+2024/10/25 | 148324 | fonts/concmath-otf/Concrete-Math-Bold.otf
+2024/10/25 | 383256 | fonts/concmath-otf/Concrete-Math.otf
+2024/10/25 | 5295 | fonts/concmath-otf/README.md
+2024/10/25 | 16886 | fonts/concmath-otf/unimath-concrete.ltx
+2024/10/25 | 1810711 | fonts/concmath-otf/unimath-concrete.pdf
+2024/10/25 | 2275557 | fonts/concmath-otf.zip
1999/03/18 | 2379 | fonts/concmath/README
1999/03/18 | 916 | fonts/concmath/tfm/xccam10.tfm
1999/03/18 | 928 | fonts/concmath/tfm/xccam5.tfm
@@ -140921,56 +140921,56 @@
2008/10/27 | 1415 | fonts/shuffle/shuffle.mf
2008/10/27 | 295904 | fonts/shuffle/shuffle.pdf
2008/10/27 | 288258 | fonts/shuffle.zip
-2024/10/18 | 184212 | fonts/simpleicons/doc/bindings.tex
-2024/10/18 | 2542627 | fonts/simpleicons/doc/simpleicons.pdf
-2024/10/18 | 1813 | fonts/simpleicons/doc/simpleicons.tex
-2024/10/18 | 3514 | fonts/simpleicons/enc/simpleiconseight.enc
-2024/10/18 | 3925 | fonts/simpleicons/enc/simpleiconsfive.enc
-2024/10/18 | 3517 | fonts/simpleicons/enc/simpleiconsfour.enc
-2024/10/18 | 3542 | fonts/simpleicons/enc/simpleiconsnine.enc
-2024/10/18 | 3937 | fonts/simpleicons/enc/simpleiconsone.enc
-2024/10/18 | 3726 | fonts/simpleicons/enc/simpleiconsoneone.enc
-2024/10/18 | 2953 | fonts/simpleicons/enc/simpleiconsonethree.enc
-2024/10/18 | 3481 | fonts/simpleicons/enc/simpleiconsonetwo.enc
-2024/10/18 | 3698 | fonts/simpleicons/enc/simpleiconsonezero.enc
-2024/10/18 | 3682 | fonts/simpleicons/enc/simpleiconsseven.enc
-2024/10/18 | 3388 | fonts/simpleicons/enc/simpleiconssix.enc
-2024/10/18 | 3791 | fonts/simpleicons/enc/simpleiconsthree.enc
-2024/10/18 | 3640 | fonts/simpleicons/enc/simpleiconstwo.enc
-2024/10/18 | 1476 | fonts/simpleicons/map/simpleicons.map
-2024/10/18 | 2464876 | fonts/simpleicons/opentype/SimpleIcons.otf
-2024/10/18 | 1207 | fonts/simpleicons/README.md
-2024/10/18 | 310109 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
-2024/10/18 | 302739 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex
-2024/10/18 | 1745 | fonts/simpleicons/tex/simpleicons.sty
-2024/10/18 | 264 | fonts/simpleicons/tex/usimpleiconseight.fd
-2024/10/18 | 259 | fonts/simpleicons/tex/usimpleiconsfive.fd
-2024/10/18 | 259 | fonts/simpleicons/tex/usimpleiconsfour.fd
-2024/10/18 | 259 | fonts/simpleicons/tex/usimpleiconsnine.fd
-2024/10/18 | 254 | fonts/simpleicons/tex/usimpleiconsone.fd
-2024/10/18 | 269 | fonts/simpleicons/tex/usimpleiconsoneone.fd
-2024/10/18 | 279 | fonts/simpleicons/tex/usimpleiconsonethree.fd
-2024/10/18 | 269 | fonts/simpleicons/tex/usimpleiconsonetwo.fd
-2024/10/18 | 274 | fonts/simpleicons/tex/usimpleiconsonezero.fd
-2024/10/18 | 264 | fonts/simpleicons/tex/usimpleiconsseven.fd
-2024/10/18 | 254 | fonts/simpleicons/tex/usimpleiconssix.fd
-2024/10/18 | 264 | fonts/simpleicons/tex/usimpleiconsthree.fd
-2024/10/18 | 254 | fonts/simpleicons/tex/usimpleiconstwo.fd
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconseight.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfive.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
-2024/10/18 | 1236 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsnine.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsoneone.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsone.tfm
-2024/10/18 | 784 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonethree.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonetwo.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsseven.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconssix.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconstwo.tfm
-2024/10/18 | 2269931 | fonts/simpleicons/type1/SimpleIcons.pfb
-2024/10/18 | 6391952 | fonts/simpleicons.zip
+2024/10/25 | 184212 | fonts/simpleicons/doc/bindings.tex
+2024/10/25 | 2541375 | fonts/simpleicons/doc/simpleicons.pdf
+2024/10/25 | 1813 | fonts/simpleicons/doc/simpleicons.tex
+2024/10/25 | 3514 | fonts/simpleicons/enc/simpleiconseight.enc
+2024/10/25 | 3925 | fonts/simpleicons/enc/simpleiconsfive.enc
+2024/10/25 | 3517 | fonts/simpleicons/enc/simpleiconsfour.enc
+2024/10/25 | 3542 | fonts/simpleicons/enc/simpleiconsnine.enc
+2024/10/25 | 3937 | fonts/simpleicons/enc/simpleiconsone.enc
+2024/10/25 | 3726 | fonts/simpleicons/enc/simpleiconsoneone.enc
+2024/10/25 | 2953 | fonts/simpleicons/enc/simpleiconsonethree.enc
+2024/10/25 | 3481 | fonts/simpleicons/enc/simpleiconsonetwo.enc
+2024/10/25 | 3698 | fonts/simpleicons/enc/simpleiconsonezero.enc
+2024/10/25 | 3682 | fonts/simpleicons/enc/simpleiconsseven.enc
+2024/10/25 | 3388 | fonts/simpleicons/enc/simpleiconssix.enc
+2024/10/25 | 3791 | fonts/simpleicons/enc/simpleiconsthree.enc
+2024/10/25 | 3640 | fonts/simpleicons/enc/simpleiconstwo.enc
+2024/10/25 | 1476 | fonts/simpleicons/map/simpleicons.map
+2024/10/25 | 2463616 | fonts/simpleicons/opentype/SimpleIcons.otf
+2024/10/25 | 1207 | fonts/simpleicons/README.md
+2024/10/25 | 310109 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
+2024/10/25 | 302739 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex
+2024/10/25 | 1745 | fonts/simpleicons/tex/simpleicons.sty
+2024/10/25 | 264 | fonts/simpleicons/tex/usimpleiconseight.fd
+2024/10/25 | 259 | fonts/simpleicons/tex/usimpleiconsfive.fd
+2024/10/25 | 259 | fonts/simpleicons/tex/usimpleiconsfour.fd
+2024/10/25 | 259 | fonts/simpleicons/tex/usimpleiconsnine.fd
+2024/10/25 | 254 | fonts/simpleicons/tex/usimpleiconsone.fd
+2024/10/25 | 269 | fonts/simpleicons/tex/usimpleiconsoneone.fd
+2024/10/25 | 279 | fonts/simpleicons/tex/usimpleiconsonethree.fd
+2024/10/25 | 269 | fonts/simpleicons/tex/usimpleiconsonetwo.fd
+2024/10/25 | 274 | fonts/simpleicons/tex/usimpleiconsonezero.fd
+2024/10/25 | 264 | fonts/simpleicons/tex/usimpleiconsseven.fd
+2024/10/25 | 254 | fonts/simpleicons/tex/usimpleiconssix.fd
+2024/10/25 | 264 | fonts/simpleicons/tex/usimpleiconsthree.fd
+2024/10/25 | 254 | fonts/simpleicons/tex/usimpleiconstwo.fd
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconseight.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfive.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
+2024/10/25 | 1236 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsnine.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsoneone.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsone.tfm
+2024/10/25 | 784 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonethree.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonetwo.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsseven.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconssix.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconstwo.tfm
+2024/10/25 | 2268648 | fonts/simpleicons/type1/SimpleIcons.pfb
+2024/10/25 | 6388813 | fonts/simpleicons.zip
2002/02/27 | 3750 | fonts/skull/skull.dtx
2002/02/27 | 156 | fonts/skull/skull.ins
2002/02/27 | 2973 | fonts/skull/skull.mf
@@ -154785,15 +154785,15 @@
2024/06/08 | 3517 | fonts/xcharter/enc/xch_z3wvjz.enc
2024/06/08 | 3736 | fonts/xcharter/enc/xch_zr4od3.enc
2024/06/08 | 66515 | fonts/xcharter/map/XCharter.map
-2024/07/10 | 4973 | fonts/xcharter-math/README.md
-2024/07/10 | 17127 | fonts/xcharter-math/unimath-xcharter.ltx
-2024/07/10 | 1825149 | fonts/xcharter-math/unimath-xcharter.pdf
-2024/07/10 | 145720 | fonts/xcharter-math/XCharter-Math-Bold.otf
-2024/07/10 | 27415 | fonts/xcharter-math/XCharter-Math.ltx
-2024/07/10 | 363276 | fonts/xcharter-math/XCharter-Math.otf
-2024/07/10 | 206035 | fonts/xcharter-math/XCharter-Math.pdf
-2024/07/10 | 7098 | fonts/xcharter-math/xcharter-otf.sty
-2024/07/10 | 2325017 | fonts/xcharter-math.zip
+2024/10/25 | 5238 | fonts/xcharter-math/README.md
+2024/10/25 | 17127 | fonts/xcharter-math/unimath-xcharter.ltx
+2024/10/25 | 1826273 | fonts/xcharter-math/unimath-xcharter.pdf
+2024/10/25 | 145720 | fonts/xcharter-math/XCharter-Math-Bold.otf
+2024/10/25 | 27393 | fonts/xcharter-math/XCharter-Math.ltx
+2024/10/25 | 365552 | fonts/xcharter-math/XCharter-Math.otf
+2024/10/25 | 204086 | fonts/xcharter-math/XCharter-Math.pdf
+2024/10/25 | 7098 | fonts/xcharter-math/xcharter-otf.sty
+2024/10/25 | 2327131 | fonts/xcharter-math.zip
2024/06/08 | 115108 | fonts/xcharter/opentype/XCharter-BoldItalic.otf
2022/02/20 | 134920 | fonts/xcharter/opentype/XCharter-Bold.otf
2022/02/20 | 136468 | fonts/xcharter/opentype/XCharter-BoldSlanted.otf
@@ -225291,14 +225291,15 @@
2022/10/09 | 826 | macros/latex/contrib/algpseudocodex/README.md
2023/04/17 | 361368 | macros/latex/contrib/algpseudocodex.zip
2003/05/26 | 1445 | macros/latex/contrib/alg/readme.txt
-2023/06/21 | 886 | macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex
-2023/06/27 | 765435 | macros/latex/contrib/algxpar/algxpar-doc.pdf
-2023/06/27 | 46571 | macros/latex/contrib/algxpar/algxpar-doc.tex
-2023/06/25 | 1243 | macros/latex/contrib/algxpar/algxpar-english.kw.tex
-2023/06/25 | 1258 | macros/latex/contrib/algxpar/algxpar-lzw.tex
-2023/06/27 | 25346 | macros/latex/contrib/algxpar/algxpar.sty
-2023/06/27 | 1107 | macros/latex/contrib/algxpar/README.md
-2023/06/27 | 757042 | macros/latex/contrib/algxpar.zip
+2024/10/24 | 906 | macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex
+2024/10/24 | 838611 | macros/latex/contrib/algxpar/algxpar-doc.pdf
+2024/10/24 | 52757 | macros/latex/contrib/algxpar/algxpar-doc.tex
+2024/10/24 | 1285 | macros/latex/contrib/algxpar/algxpar-english.kw.tex
+2024/10/24 | 28810 | macros/latex/contrib/algxpar/algxpar.sty
+2024/10/24 | 11854 | macros/latex/contrib/algxpar/algxpar-versionchanges.sty
+2024/10/24 | 19106 | macros/latex/contrib/algxpar/license
+2024/10/24 | 936 | macros/latex/contrib/algxpar/README.md
+2024/10/25 | 840235 | macros/latex/contrib/algxpar.zip
2005/04/28 | 7064 | macros/latex/contrib/alg.zip
2018/04/04 | 5228 | macros/latex/contrib/aligned-overset/aligned-overset.dtx
2018/04/04 | 378549 | macros/latex/contrib/aligned-overset/aligned-overset.pdf
@@ -226792,6 +226793,22 @@
2019/01/29 | 4156 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light/beamertheme-light.sty
2019/01/29 | 456 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light/README
2019/01/29 | 99991 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light.zip
+2024/10/25 | 782406 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.pdf
+2024/10/25 | 6183 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.tex
+2024/10/25 | 6117 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamerthemeMirage.sty
+2024/10/25 | 19106 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/LICENSE
+2024/10/25 | 186164 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.pdf
+2024/10/25 | 4096 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.tex
+2024/10/25 | 88084 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.pdf
+2024/10/25 | 4129 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.tex
+2024/10/25 | 280976 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.pdf
+2024/10/25 | 5698 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.tex
+2024/10/25 | 151425 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.pdf
+2024/10/25 | 5449 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.tex
+2024/10/25 | 58719 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/miragesup.png
+2024/10/25 | 1011 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/README.md
+2024/10/25 | 576 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/sample-refs.bib
+2024/10/25 | 1522419 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage.zip
2020/08/24 | 5324 | macros/latex/contrib/beamer-contrib/themes/beamerthemenord/beamercolorthemeNord.sty
2020/08/24 | 1062 | macros/latex/contrib/beamer-contrib/themes/beamerthemenord/beamerfontthemeNord.sty
2020/08/24 | 71830 | macros/latex/contrib/beamer-contrib/themes/beamerthemenord/beamerthemeNord.pdf
@@ -231619,6 +231636,12 @@
2011/12/09 | 7283 | macros/latex/contrib/copyrightbox/copyrightbox.tex
2011/12/10 | 797 | macros/latex/contrib/copyrightbox/README
2011/12/11 | 3041744 | macros/latex/contrib/copyrightbox.zip
+2024/10/25 | 183263 | macros/latex/contrib/cora-macs/cora-macs-doc.pdf
+2024/10/25 | 5916 | macros/latex/contrib/cora-macs/cora-macs-doc.tex
+2024/10/25 | 7997 | macros/latex/contrib/cora-macs/cora-macs.sty
+2024/09/02 | 1084 | macros/latex/contrib/cora-macs/LICENSE
+2024/09/05 | 3164 | macros/latex/contrib/cora-macs/README.md
+2024/10/25 | 184478 | macros/latex/contrib/cora-macs.zip
2017/04/04 | 619067 | macros/latex/contrib/correctmathalign/doc/aligned-org.pdf
2017/04/04 | 173766 | macros/latex/contrib/correctmathalign/doc/correctmathalign.pdf
2017/04/04 | 3079 | macros/latex/contrib/correctmathalign/doc/correctmathalign.tex
@@ -233508,12 +233531,12 @@
2008/02/10 | 19110 | macros/latex/contrib/ean13isbn/License.txt
2021/01/24 | 422 | macros/latex/contrib/ean13isbn/README
2021/01/24 | 322624 | macros/latex/contrib/ean13isbn.zip
-2024/10/23 | 93281 | macros/latex/contrib/easybook/easybook.dtx
+2024/10/25 | 93822 | macros/latex/contrib/easybook/easybook.dtx
2024/01/04 | 2081 | macros/latex/contrib/easybook/easybook.ins
-2024/10/23 | 648559 | macros/latex/contrib/easybook/easybook.pdf
-2024/10/23 | 113032 | macros/latex/contrib/easybook/easybook.tex
-2024/10/23 | 913 | macros/latex/contrib/easybook/README.md
-2024/10/23 | 702870 | macros/latex/contrib/easybook.zip
+2024/10/25 | 648441 | macros/latex/contrib/easybook/easybook.pdf
+2024/10/25 | 113106 | macros/latex/contrib/easybook/easybook.tex
+2024/10/25 | 913 | macros/latex/contrib/easybook/README.md
+2024/10/25 | 702779 | macros/latex/contrib/easybook.zip
2009/06/17 | 82589 | macros/latex/contrib/easy/doc/docbib.pdf
2009/06/17 | 78378 | macros/latex/contrib/easy/doc/docbmat.pdf
2009/06/17 | 99132 | macros/latex/contrib/easy/doc/doceqn.pdf
@@ -239171,14 +239194,14 @@
2024/01/09 | 1083 | macros/latex/contrib/href-ul/LICENSE.txt
2024/01/09 | 1244 | macros/latex/contrib/href-ul/README.md
2024/01/09 | 288348 | macros/latex/contrib/href-ul.zip
-2024/02/14 | 677 | macros/latex/contrib/huawei/DEPENDS.txt
-2024/02/14 | 253724 | macros/latex/contrib/huawei/huawei-cover-picture.pdf
-2024/02/14 | 33660 | macros/latex/contrib/huawei/huawei.dtx
-2024/02/14 | 2626 | macros/latex/contrib/huawei/huawei.ins
-2024/02/14 | 809033 | macros/latex/contrib/huawei/huawei.pdf
-2024/02/14 | 1083 | macros/latex/contrib/huawei/LICENSE.txt
-2024/02/14 | 1632 | macros/latex/contrib/huawei/README.md
-2024/02/14 | 1051694 | macros/latex/contrib/huawei.zip
+2024/10/25 | 691 | macros/latex/contrib/huawei/DEPENDS.txt
+2024/10/25 | 253724 | macros/latex/contrib/huawei/huawei-cover-picture.pdf
+2024/10/25 | 36315 | macros/latex/contrib/huawei/huawei.dtx
+2024/10/25 | 2626 | macros/latex/contrib/huawei/huawei.ins
+2024/10/25 | 735500 | macros/latex/contrib/huawei/huawei.pdf
+2024/10/25 | 1083 | macros/latex/contrib/huawei/LICENSE.txt
+2024/10/25 | 1652 | macros/latex/contrib/huawei/README.md
+2024/10/25 | 963513 | macros/latex/contrib/huawei.zip
2024/05/05 | 371130 | macros/latex/contrib/huaz/huaz.pdf
2024/05/05 | 28917 | macros/latex/contrib/huaz/huaz.sty
2024/05/05 | 36297 | macros/latex/contrib/huaz/huaz.tex
@@ -241441,12 +241464,12 @@
2024/08/08 | 3965 | macros/latex/contrib/jsonparse/jason/jason.pdf
2024/05/09 | 7658 | macros/latex/contrib/jsonparse/jason/jason.svg
2024/08/08 | 14806 | macros/latex/contrib/jsonparse/jason/jason.tex
-2024/10/03 | 434099 | macros/latex/contrib/jsonparse/jsonparse-doc.pdf
-2024/10/03 | 29661 | macros/latex/contrib/jsonparse/jsonparse-doc.tex
-2024/10/03 | 39604 | macros/latex/contrib/jsonparse/jsonparse.sty
+2024/10/24 | 434426 | macros/latex/contrib/jsonparse/jsonparse-doc.pdf
+2024/10/24 | 29762 | macros/latex/contrib/jsonparse/jsonparse-doc.tex
+2024/10/24 | 39604 | macros/latex/contrib/jsonparse/jsonparse.sty
2024/04/05 | 19105 | macros/latex/contrib/jsonparse/LICENCE
-2024/10/03 | 1741 | macros/latex/contrib/jsonparse/README.md
-2024/10/03 | 440632 | macros/latex/contrib/jsonparse.zip
+2024/10/24 | 1741 | macros/latex/contrib/jsonparse/README.md
+2024/10/25 | 440970 | macros/latex/contrib/jsonparse.zip
2015/06/02 | 141342 | macros/latex/contrib/jumplines/jumplines_doc.pdf
2015/06/02 | 10822 | macros/latex/contrib/jumplines/jumplines_doc.tex
2015/06/02 | 110248 | macros/latex/contrib/jumplines/jumplines_example.pdf
@@ -243428,11 +243451,11 @@
2020/01/23 | 5432 | macros/latex/contrib/mathfam256/mathfam256.tex
2020/01/23 | 1083 | macros/latex/contrib/mathfam256/README.md
2020/01/23 | 92454 | macros/latex/contrib/mathfam256.zip
-2024/10/23 | 73859 | macros/latex/contrib/mathfixs/mathfixs.dtx
+2024/10/25 | 74006 | macros/latex/contrib/mathfixs/mathfixs.dtx
2024/10/23 | 959 | macros/latex/contrib/mathfixs/mathfixs.ins
-2024/10/23 | 382758 | macros/latex/contrib/mathfixs/mathfixs.pdf
-2024/10/23 | 1191 | macros/latex/contrib/mathfixs/README.txt
-2024/10/23 | 374393 | macros/latex/contrib/mathfixs.zip
+2024/10/25 | 383074 | macros/latex/contrib/mathfixs/mathfixs.pdf
+2024/10/25 | 1192 | macros/latex/contrib/mathfixs/README.txt
+2024/10/25 | 374721 | macros/latex/contrib/mathfixs.zip
2023/09/11 | 326006 | macros/latex/contrib/mathfont/mathfont_code.dtx
2023/09/11 | 377615 | macros/latex/contrib/mathfont/mathfont_code.pdf
2023/09/11 | 51361 | macros/latex/contrib/mathfont/mathfont_example_cormorant.pdf
@@ -244942,13 +244965,13 @@
2011/11/27 | 437781 | macros/latex/contrib/nag/nag.pdf
2007/02/25 | 333 | macros/latex/contrib/nag/README
2011/12/03 | 453680 | macros/latex/contrib/nag.zip
-2024/09/06 | 208 | macros/latex/contrib/naive-ebnf/DEPENDS.txt
-2024/09/06 | 1078 | macros/latex/contrib/naive-ebnf/LICENSE.txt
-2024/09/06 | 16987 | macros/latex/contrib/naive-ebnf/naive-ebnf.dtx
-2024/09/06 | 2630 | macros/latex/contrib/naive-ebnf/naive-ebnf.ins
-2024/09/06 | 772430 | macros/latex/contrib/naive-ebnf/naive-ebnf.pdf
-2024/09/06 | 1493 | macros/latex/contrib/naive-ebnf/README.md
-2024/09/06 | 767257 | macros/latex/contrib/naive-ebnf.zip
+2024/10/25 | 208 | macros/latex/contrib/naive-ebnf/DEPENDS.txt
+2024/10/25 | 1083 | macros/latex/contrib/naive-ebnf/LICENSE.txt
+2024/10/25 | 17084 | macros/latex/contrib/naive-ebnf/naive-ebnf.dtx
+2024/10/25 | 2640 | macros/latex/contrib/naive-ebnf/naive-ebnf.ins
+2024/10/25 | 592942 | macros/latex/contrib/naive-ebnf/naive-ebnf.pdf
+2024/10/25 | 1493 | macros/latex/contrib/naive-ebnf/README.md
+2024/10/25 | 560302 | macros/latex/contrib/naive-ebnf.zip
2024/01/10 | 68498 | macros/latex/contrib/nameauth/beamer01.pdf
2024/01/10 | 68500 | macros/latex/contrib/nameauth/beamer02.pdf
2024/01/10 | 68492 | macros/latex/contrib/nameauth/beamer03.pdf
@@ -301940,12 +301963,12 @@
2024/06/28 | 148376 | support/pdfjam/tests.zip
2024/06/28 | 20 | support/pdfjam/VERSION
2024/06/28 | 178818 | support/pdfjam.zip
-2018/02/12 | 117642 | support/pdflatexpicscale/pdflatexpicscale.pdf
-2018/02/12 | 7442 | support/pdflatexpicscale/pdflatexpicscale.pl
-2018/02/12 | 13520 | support/pdflatexpicscale/pdflatexpicscale.tex
-2018/02/12 | 887 | support/pdflatexpicscale/README
-2018/02/12 | 2814 | support/pdflatexpicscale/testprinter.ps
-2018/02/12 | 92036 | support/pdflatexpicscale.zip
+2024/10/25 | 127589 | support/pdflatexpicscale/pdflatexpicscale.pdf
+2024/10/25 | 14448 | support/pdflatexpicscale/pdflatexpicscale.pl
+2024/10/25 | 15161 | support/pdflatexpicscale/pdflatexpicscale.tex
+2024/10/25 | 920 | support/pdflatexpicscale/README
+2024/10/25 | 2814 | support/pdflatexpicscale/testprinter.ps
+2024/10/25 | 101277 | support/pdflatexpicscale.zip
2012/01/12 | 15650 | support/pdfrack/doc/BasicIdea.eps
2012/01/12 | 12386 | support/pdfrack/doc/Details.eps
2012/01/12 | 239300 | support/pdfrack/doc/pdfrack.pdf
@@ -309991,8 +310014,8 @@
2019/02/28 | 596344 | systems/texlive/tlnet/archive/commado.doc.r38875.tar.xz
2019/02/28 | 2816 | systems/texlive/tlnet/archive/commado.r38875.tar.xz
2019/02/28 | 4420 | systems/texlive/tlnet/archive/commado.source.r38875.tar.xz
-2024/10/23 | 75632 | systems/texlive/tlnet/archive/commalists-tools.doc.r72618.tar.xz
-2024/10/23 | 1732 | systems/texlive/tlnet/archive/commalists-tools.r72618.tar.xz
+2024/10/25 | 75804 | systems/texlive/tlnet/archive/commalists-tools.doc.r72641.tar.xz
+2024/10/25 | 1748 | systems/texlive/tlnet/archive/commalists-tools.r72641.tar.xz
2019/02/28 | 1696 | systems/texlive/tlnet/archive/comma.r18259.tar.xz
2019/02/28 | 101092 | systems/texlive/tlnet/archive/commath.doc.r15878.tar.xz
2019/02/28 | 2460 | systems/texlive/tlnet/archive/commath.r15878.tar.xz
@@ -310551,8 +310574,8 @@
2019/02/28 | 230940 | systems/texlive/tlnet/archive/dashrule.doc.r29579.tar.xz
2019/02/28 | 1488 | systems/texlive/tlnet/archive/dashrule.r29579.tar.xz
2019/02/28 | 6080 | systems/texlive/tlnet/archive/dashrule.source.r29579.tar.xz
-2024/10/19 | 56508 | systems/texlive/tlnet/archive/dashrulex.doc.r72581.tar.xz
-2024/10/19 | 1472 | systems/texlive/tlnet/archive/dashrulex.r72581.tar.xz
+2024/10/25 | 56648 | systems/texlive/tlnet/archive/dashrulex.doc.r72642.tar.xz
+2024/10/25 | 1468 | systems/texlive/tlnet/archive/dashrulex.r72642.tar.xz
2021/03/06 | 916556 | systems/texlive/tlnet/archive/dashundergaps.doc.r58150.tar.xz
2021/03/06 | 3512 | systems/texlive/tlnet/archive/dashundergaps.r58150.tar.xz
2021/03/06 | 13284 | systems/texlive/tlnet/archive/dashundergaps.source.r58150.tar.xz
@@ -313944,7 +313967,7 @@
2019/02/28 | 3972 | systems/texlive/tlnet/archive/koma-moderncvclassic.r25025.tar.xz
2022/07/08 | 563260 | systems/texlive/tlnet/archive/koma-script-examples.doc.r63833.tar.xz
2022/07/08 | 516 | systems/texlive/tlnet/archive/koma-script-examples.r63833.tar.xz
-2024/10/16 | 7255288 | systems/texlive/tlnet/archive/koma-script.r72553.tar.xz
+2024/10/25 | 7256416 | systems/texlive/tlnet/archive/koma-script.r72643.tar.xz
2019/02/28 | 37524 | systems/texlive/tlnet/archive/koma-script-sfs.doc.r26137.tar.xz
2019/02/28 | 3400 | systems/texlive/tlnet/archive/koma-script-sfs.r26137.tar.xz
2024/08/08 | 122504 | systems/texlive/tlnet/archive/korigamik.doc.r71991.tar.xz
@@ -316297,9 +316320,9 @@
2019/02/28 | 7064 | systems/texlive/tlnet/archive/niceframe.source.r36086.tar.xz
2024/07/20 | 516 | systems/texlive/tlnet/archive/niceframe-type1.doc.r71849.tar.xz
2024/07/20 | 275504 | systems/texlive/tlnet/archive/niceframe-type1.r71849.tar.xz
-2024/08/23 | 2499608 | systems/texlive/tlnet/archive/nicematrix.doc.r72084.tar.xz
-2024/08/23 | 43112 | systems/texlive/tlnet/archive/nicematrix.r72084.tar.xz
-2024/08/23 | 92428 | systems/texlive/tlnet/archive/nicematrix.source.r72084.tar.xz
+2024/10/25 | 2516280 | systems/texlive/tlnet/archive/nicematrix.doc.r72644.tar.xz
+2024/10/25 | 42804 | systems/texlive/tlnet/archive/nicematrix.r72644.tar.xz
+2024/10/25 | 92936 | systems/texlive/tlnet/archive/nicematrix.source.r72644.tar.xz
2019/02/28 | 2473836 | systems/texlive/tlnet/archive/nicetext.doc.r38914.tar.xz
2019/02/28 | 54740 | systems/texlive/tlnet/archive/nicetext.r38914.tar.xz
2019/02/28 | 28908 | systems/texlive/tlnet/archive/nicetext.source.r38914.tar.xz
@@ -317153,8 +317176,8 @@
2020/10/10 | 1928 | systems/texlive/tlnet/archive/pgfopts.r56615.tar.xz
2020/10/10 | 6008 | systems/texlive/tlnet/archive/pgfopts.source.r56615.tar.xz
2024/08/15 | 2403676 | systems/texlive/tlnet/archive/pgfornament.doc.r72029.tar.xz
-2024/09/24 | 1530540 | systems/texlive/tlnet/archive/pgfornament-han.doc.r72357.tar.xz
-2024/09/24 | 96564 | systems/texlive/tlnet/archive/pgfornament-han.r72357.tar.xz
+2024/10/25 | 2297192 | systems/texlive/tlnet/archive/pgfornament-han.doc.r72640.tar.xz
+2024/10/25 | 96704 | systems/texlive/tlnet/archive/pgfornament-han.r72640.tar.xz
2024/08/15 | 616696 | systems/texlive/tlnet/archive/pgfornament.r72029.tar.xz
2024/09/10 | 5678472 | systems/texlive/tlnet/archive/pgf-periodictable.doc.r72236.tar.xz
2024/09/10 | 516812 | systems/texlive/tlnet/archive/pgf-periodictable.r72236.tar.xz
@@ -317543,8 +317566,8 @@
2024/09/06 | 1365548 | systems/texlive/tlnet/archive/profcollege.r72198.tar.xz
2022/04/27 | 134096 | systems/texlive/tlnet/archive/proflabo.doc.r63147.tar.xz
2022/04/27 | 2748 | systems/texlive/tlnet/archive/proflabo.r63147.tar.xz
-2024/10/23 | 2559008 | systems/texlive/tlnet/archive/proflycee.doc.r72621.tar.xz
-2024/10/23 | 396420 | systems/texlive/tlnet/archive/proflycee.r72621.tar.xz
+2024/10/25 | 2563420 | systems/texlive/tlnet/archive/proflycee.doc.r72645.tar.xz
+2024/10/25 | 396636 | systems/texlive/tlnet/archive/proflycee.r72645.tar.xz
2024/10/23 | 430540 | systems/texlive/tlnet/archive/profmaquette.doc.r72622.tar.xz
2024/10/23 | 35432 | systems/texlive/tlnet/archive/profmaquette.r72622.tar.xz
2024/05/20 | 578468 | systems/texlive/tlnet/archive/profsio.doc.r71302.tar.xz
@@ -318172,8 +318195,8 @@
2019/02/28 | 5340 | systems/texlive/tlnet/archive/randbild.source.r15878.tar.xz
2024/07/24 | 229972 | systems/texlive/tlnet/archive/randexam.doc.r71883.tar.xz
2024/07/24 | 11892 | systems/texlive/tlnet/archive/randexam.r71883.tar.xz
-2024/09/26 | 87252 | systems/texlive/tlnet/archive/randintlist.doc.r72383.tar.xz
-2024/09/26 | 2008 | systems/texlive/tlnet/archive/randintlist.r72383.tar.xz
+2024/10/25 | 87168 | systems/texlive/tlnet/archive/randintlist.doc.r72646.tar.xz
+2024/10/25 | 2020 | systems/texlive/tlnet/archive/randintlist.r72646.tar.xz
2020/04/15 | 78384 | systems/texlive/tlnet/archive/random.doc.r54723.tar.xz
2019/02/28 | 391560 | systems/texlive/tlnet/archive/randomlist.doc.r45281.tar.xz
2019/02/28 | 4996 | systems/texlive/tlnet/archive/randomlist.r45281.tar.xz
@@ -318963,8 +318986,8 @@
2024/06/01 | 1682276 | systems/texlive/tlnet/archive/spath3.doc.r71396.tar.xz
2024/06/01 | 25664 | systems/texlive/tlnet/archive/spath3.r71396.tar.xz
2024/06/01 | 37744 | systems/texlive/tlnet/archive/spath3.source.r71396.tar.xz
-2024/10/16 | 93800 | systems/texlive/tlnet/archive/spbmark.doc.r72560.tar.xz
-2024/10/16 | 4256 | systems/texlive/tlnet/archive/spbmark.r72560.tar.xz
+2024/10/25 | 93872 | systems/texlive/tlnet/archive/spbmark.doc.r72647.tar.xz
+2024/10/25 | 4260 | systems/texlive/tlnet/archive/spbmark.r72647.tar.xz
2022/09/28 | 80968 | systems/texlive/tlnet/archive/spectral.doc.r64528.tar.xz
2022/09/28 | 3545188 | systems/texlive/tlnet/archive/spectral.r64528.tar.xz
2023/01/30 | 2103268 | systems/texlive/tlnet/archive/spectralsequences.doc.r65667.tar.xz
@@ -319843,7 +319866,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
-2024/10/22 | 438568 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72616.tar.xz
+2024/10/25 | 438524 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72648.tar.xz
2024/07/09 | 908 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r71749.tar.xz
2024/07/09 | 920 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r71749.tar.xz
2024/07/09 | 908 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r71749.tar.xz
@@ -319865,7 +319888,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
-2024/10/22 | 114408 | systems/texlive/tlnet/archive/texlive-scripts.r72616.tar.xz
+2024/10/25 | 114416 | systems/texlive/tlnet/archive/texlive-scripts.r72648.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2024/05/10 | 60592 | systems/texlive/tlnet/archive/texlive-scripts.windows.r71215.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -321828,16 +321851,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
2024/07/20 | 125851 | systems/texlive/tlnet/install-tl
-2024/10/24 | 5756553 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2024/10/24 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2024/10/24 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2024/10/25 | 5756426 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2024/10/25 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2024/10/25 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2024/04/13 | 5743 | systems/texlive/tlnet/install-tl-windows.bat
-2024/10/24 | 27714513 | systems/texlive/tlnet/install-tl-windows.exe
-2024/10/24 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2024/10/24 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2024/10/24 | 34429460 | systems/texlive/tlnet/install-tl.zip
-2024/10/24 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2024/10/24 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2024/10/25 | 27714546 | systems/texlive/tlnet/install-tl-windows.exe
+2024/10/25 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2024/10/25 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2024/10/25 | 34429460 | systems/texlive/tlnet/install-tl.zip
+2024/10/25 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2024/10/25 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2024/03/13 | 1229 | systems/texlive/tlnet/README.md
2024/03/13 | 0 | systems/texlive/tlnet/TEXLIVE_2024
2024/01/02 | 9011 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -321889,12 +321912,12 @@
2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2024/05/02 | 5898 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2024/10/24 | 19648292 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2024/10/24 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2024/10/25 | 19649415 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2024/10/25 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2024/06/22 | 87725 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2024/10/24 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2024/10/24 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2024/10/24 | 2606436 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2024/10/25 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2024/10/25 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2024/10/25 | 2605812 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2023/06/11 | 42749 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -333687,7 +333710,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
-2024/10/25 | 186 | timestamp
+2024/10/26 | 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 4f0705ff9e..9dd6899a04 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index e95bc36fce..2d8f97b7fe 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,3 +1,159 @@
+2024/10/25 | 96704 | systems/texlive/tlnet/archive/pgfornament-han.r72640.tar.xz
+2024/10/25 | 963513 | macros/latex/contrib/huawei.zip
+2024/10/25 | 93872 | systems/texlive/tlnet/archive/spbmark.doc.r72647.tar.xz
+2024/10/25 | 93822 | macros/latex/contrib/easybook/easybook.dtx
+2024/10/25 | 92936 | systems/texlive/tlnet/archive/nicematrix.source.r72644.tar.xz
+2024/10/25 | 920 | support/pdflatexpicscale/README
+2024/10/25 | 913 | macros/latex/contrib/easybook/README.md
+2024/10/25 | 88084 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.pdf
+2024/10/25 | 87168 | systems/texlive/tlnet/archive/randintlist.doc.r72646.tar.xz
+2024/10/25 | 840235 | macros/latex/contrib/algxpar.zip
+2024/10/25 | 7997 | macros/latex/contrib/cora-macs/cora-macs.sty
+2024/10/25 | 784 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonethree.tfm
+2024/10/25 | 782406 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.pdf
+2024/10/25 | 75804 | systems/texlive/tlnet/archive/commalists-tools.doc.r72641.tar.xz
+2024/10/25 | 74006 | macros/latex/contrib/mathfixs/mathfixs.dtx
+2024/10/25 | 735500 | macros/latex/contrib/huawei/huawei.pdf
+2024/10/25 | 7256416 | systems/texlive/tlnet/archive/koma-script.r72643.tar.xz
+2024/10/25 | 7098 | fonts/xcharter-math/xcharter-otf.sty
+2024/10/25 | 702779 | macros/latex/contrib/easybook.zip
+2024/10/25 | 691 | macros/latex/contrib/huawei/DEPENDS.txt
+2024/10/25 | 648441 | macros/latex/contrib/easybook/easybook.pdf
+2024/10/25 | 6388813 | fonts/simpleicons.zip
+2024/10/25 | 6183 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.tex
+2024/10/25 | 6117 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamerthemeMirage.sty
+2024/10/25 | 592942 | macros/latex/contrib/naive-ebnf/naive-ebnf.pdf
+2024/10/25 | 5916 | macros/latex/contrib/cora-macs/cora-macs-doc.tex
+2024/10/25 | 58719 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/miragesup.png
+2024/10/25 | 576 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/sample-refs.bib
+2024/10/25 | 5756426 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2024/10/25 | 5698 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.tex
+2024/10/25 | 56648 | systems/texlive/tlnet/archive/dashrulex.doc.r72642.tar.xz
+2024/10/25 | 560302 | macros/latex/contrib/naive-ebnf.zip
+2024/10/25 | 5589 | fonts/concmath-otf/concmath-otf.sty
+2024/10/25 | 5449 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.tex
+2024/10/25 | 5295 | fonts/concmath-otf/README.md
+2024/10/25 | 5238 | fonts/xcharter-math/README.md
+2024/10/25 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2024/10/25 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2024/10/25 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2024/10/25 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2024/10/25 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2024/10/25 | 440970 | macros/latex/contrib/jsonparse.zip
+2024/10/25 | 438524 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72648.tar.xz
+2024/10/25 | 42804 | systems/texlive/tlnet/archive/nicematrix.r72644.tar.xz
+2024/10/25 | 4260 | systems/texlive/tlnet/archive/spbmark.r72647.tar.xz
+2024/10/25 | 4207692 | biblio/ctan-bibdata.zip
+2024/10/25 | 4129 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.tex
+2024/10/25 | 4096 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.tex
+2024/10/25 | 396636 | systems/texlive/tlnet/archive/proflycee.r72645.tar.xz
+2024/10/25 | 3937 | fonts/simpleicons/enc/simpleiconsone.enc
+2024/10/25 | 3925 | fonts/simpleicons/enc/simpleiconsfive.enc
+2024/10/25 | 383256 | fonts/concmath-otf/Concrete-Math.otf
+2024/10/25 | 383074 | macros/latex/contrib/mathfixs/mathfixs.pdf
+2024/10/25 | 3791 | fonts/simpleicons/enc/simpleiconsthree.enc
+2024/10/25 | 3790528 | biblio/ctan-bibdata/ctan.pdf
+2024/10/25 | 374721 | macros/latex/contrib/mathfixs.zip
+2024/10/25 | 3726 | fonts/simpleicons/enc/simpleiconsoneone.enc
+2024/10/25 | 3698 | fonts/simpleicons/enc/simpleiconsonezero.enc
+2024/10/25 | 3682 | fonts/simpleicons/enc/simpleiconsseven.enc
+2024/10/25 | 365552 | fonts/xcharter-math/XCharter-Math.otf
+2024/10/25 | 3640 | fonts/simpleicons/enc/simpleiconstwo.enc
+2024/10/25 | 36315 | macros/latex/contrib/huawei/huawei.dtx
+2024/10/25 | 3542 | fonts/simpleicons/enc/simpleiconsnine.enc
+2024/10/25 | 3517 | fonts/simpleicons/enc/simpleiconsfour.enc
+2024/10/25 | 3514 | fonts/simpleicons/enc/simpleiconseight.enc
+2024/10/25 | 3481 | fonts/simpleicons/enc/simpleiconsonetwo.enc
+2024/10/25 | 34429460 | systems/texlive/tlnet/install-tl.zip
+2024/10/25 | 3388 | fonts/simpleicons/enc/simpleiconssix.enc
+2024/10/25 | 310109 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
+2024/10/25 | 302739 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex
+2024/10/25 | 2953 | fonts/simpleicons/enc/simpleiconsonethree.enc
+2024/10/25 | 2895400 | biblio/ctan-bibdata/ctan.bib
+2024/10/25 | 2814 | support/pdflatexpicscale/testprinter.ps
+2024/10/25 | 280976 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.pdf
+2024/10/25 | 279 | fonts/simpleicons/tex/usimpleiconsonethree.fd
+2024/10/25 | 27714546 | systems/texlive/tlnet/install-tl-windows.exe
+2024/10/25 | 274 | fonts/simpleicons/tex/usimpleiconsonezero.fd
+2024/10/25 | 27393 | fonts/xcharter-math/XCharter-Math.ltx
+2024/10/25 | 269 | fonts/simpleicons/tex/usimpleiconsonetwo.fd
+2024/10/25 | 269 | fonts/simpleicons/tex/usimpleiconsoneone.fd
+2024/10/25 | 264 | fonts/simpleicons/tex/usimpleiconsthree.fd
+2024/10/25 | 264 | fonts/simpleicons/tex/usimpleiconsseven.fd
+2024/10/25 | 264 | fonts/simpleicons/tex/usimpleiconseight.fd
+2024/10/25 | 2640 | macros/latex/contrib/naive-ebnf/naive-ebnf.ins
+2024/10/25 | 2626 | macros/latex/contrib/huawei/huawei.ins
+2024/10/25 | 2605812 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2024/10/25 | 259 | fonts/simpleicons/tex/usimpleiconsnine.fd
+2024/10/25 | 259 | fonts/simpleicons/tex/usimpleiconsfour.fd
+2024/10/25 | 259 | fonts/simpleicons/tex/usimpleiconsfive.fd
+2024/10/25 | 2563420 | systems/texlive/tlnet/archive/proflycee.doc.r72645.tar.xz
+2024/10/25 | 254 | fonts/simpleicons/tex/usimpleiconstwo.fd
+2024/10/25 | 254 | fonts/simpleicons/tex/usimpleiconssix.fd
+2024/10/25 | 254 | fonts/simpleicons/tex/usimpleiconsone.fd
+2024/10/25 | 2541375 | fonts/simpleicons/doc/simpleicons.pdf
+2024/10/25 | 253724 | macros/latex/contrib/huawei/huawei-cover-picture.pdf
+2024/10/25 | 2516280 | systems/texlive/tlnet/archive/nicematrix.doc.r72644.tar.xz
+2024/10/25 | 2463616 | fonts/simpleicons/opentype/SimpleIcons.otf
+2024/10/25 | 23480 | fonts/concmath-otf/concmath-otf.ltx
+2024/10/25 | 2327131 | fonts/xcharter-math.zip
+2024/10/25 | 2297192 | systems/texlive/tlnet/archive/pgfornament-han.doc.r72640.tar.xz
+2024/10/25 | 2275557 | fonts/concmath-otf.zip
+2024/10/25 | 2268648 | fonts/simpleicons/type1/SimpleIcons.pfb
+2024/10/25 | 208 | macros/latex/contrib/naive-ebnf/DEPENDS.txt
+2024/10/25 | 204086 | fonts/xcharter-math/XCharter-Math.pdf
+2024/10/25 | 2020 | systems/texlive/tlnet/archive/randintlist.r72646.tar.xz
+2024/10/25 | 19649415 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2024/10/25 | 19106 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/LICENSE
+2024/10/25 | 186164 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.pdf
+2024/10/25 | 184478 | macros/latex/contrib/cora-macs.zip
+2024/10/25 | 184212 | fonts/simpleicons/doc/bindings.tex
+2024/10/25 | 183263 | macros/latex/contrib/cora-macs/cora-macs-doc.pdf
+2024/10/25 | 1826273 | fonts/xcharter-math/unimath-xcharter.pdf
+2024/10/25 | 1813 | fonts/simpleicons/doc/simpleicons.tex
+2024/10/25 | 1810711 | fonts/concmath-otf/unimath-concrete.pdf
+2024/10/25 | 1748 | systems/texlive/tlnet/archive/commalists-tools.r72641.tar.xz
+2024/10/25 | 1745 | fonts/simpleicons/tex/simpleicons.sty
+2024/10/25 | 17127 | fonts/xcharter-math/unimath-xcharter.ltx
+2024/10/25 | 17084 | macros/latex/contrib/naive-ebnf/naive-ebnf.dtx
+2024/10/25 | 16886 | fonts/concmath-otf/unimath-concrete.ltx
+2024/10/25 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2024/10/25 | 167878 | fonts/concmath-otf/concmath-otf.pdf
+2024/10/25 | 1652 | macros/latex/contrib/huawei/README.md
+2024/10/25 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2024/10/25 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2024/10/25 | 1522419 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage.zip
+2024/10/25 | 15161 | support/pdflatexpicscale/pdflatexpicscale.tex
+2024/10/25 | 151425 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.pdf
+2024/10/25 | 1493 | macros/latex/contrib/naive-ebnf/README.md
+2024/10/25 | 148324 | fonts/concmath-otf/Concrete-Math-Bold.otf
+2024/10/25 | 1476 | fonts/simpleicons/map/simpleicons.map
+2024/10/25 | 1468 | systems/texlive/tlnet/archive/dashrulex.r72642.tar.xz
+2024/10/25 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2024/10/25 | 145720 | fonts/xcharter-math/XCharter-Math-Bold.otf
+2024/10/25 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2024/10/25 | 14448 | support/pdflatexpicscale/pdflatexpicscale.pl
+2024/10/25 | 127589 | support/pdflatexpicscale/pdflatexpicscale.pdf
+2024/10/25 | 1236 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsnine.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconstwo.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconssix.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsseven.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonetwo.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsone.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsoneone.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfive.tfm
+2024/10/25 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconseight.tfm
+2024/10/25 | 1207 | fonts/simpleicons/README.md
+2024/10/25 | 1192 | macros/latex/contrib/mathfixs/README.txt
+2024/10/25 | 114416 | systems/texlive/tlnet/archive/texlive-scripts.r72648.tar.xz
+2024/10/25 | 113106 | macros/latex/contrib/easybook/easybook.tex
+2024/10/25 | 1083 | macros/latex/contrib/naive-ebnf/LICENSE.txt
+2024/10/25 | 1083 | macros/latex/contrib/huawei/LICENSE.txt
+2024/10/25 | 101277 | support/pdflatexpicscale.zip
+2024/10/25 | 1011 | macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/README.md
2024/10/24 | 99544 | macros/latex/contrib/koma-script/doc/scrguide.cls
2024/10/24 | 9726 | graphics/pgf/contrib/pgfornament-han/beamerthemeTianQing.sty
2024/10/24 | 9663 | macros/latex/contrib/koma-script/MANIFEST.md
@@ -11,6 +167,7 @@
2024/10/24 | 9387 | macros/latex/contrib/koma-script/doc/common-fontsize-de.tex
2024/10/24 | 9382 | graphics/pgf/contrib/pgfornament-han/han/han75.pgf
2024/10/24 | 93787 | macros/latex/contrib/koma-script/doc/scrlayer-de.tex
+2024/10/24 | 936 | macros/latex/contrib/algxpar/README.md
2024/10/24 | 936053 | macros/latex/contrib/nicematrix/nicematrix.pdf
2024/10/24 | 9346 | macros/latex/contrib/koma-script/doc/scraddr-en.tex
2024/10/24 | 927 | graphics/pgf/contrib/pgfornament-han/han/han25.pgf
@@ -20,12 +177,14 @@
2024/10/24 | 9225165 | macros/latex/contrib/koma-script.zip
2024/10/24 | 9222 | macros/latex/contrib/koma-script/scrlfile.dtx
2024/10/24 | 9154 | macros/latex/contrib/koma-script/doc/common-options-en.tex
+2024/10/24 | 906 | macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex
2024/10/24 | 88677 | macros/latex/contrib/randintlist.zip
2024/10/24 | 88166 | macros/latex/contrib/koma-script/doc/scrbookreportarticle-experts-en.tex
2024/10/24 | 88016 | macros/latex/contrib/koma-script/doc/typearea-en.tex
2024/10/24 | 866649 | macros/latex/contrib/paracol/impl.dtx
2024/10/24 | 85020 | macros/latex/contrib/koma-script/scrkernel-fonts.dtx
2024/10/24 | 845 | graphics/pgf/contrib/pgfornament-han/han/han48.pgf
+2024/10/24 | 838611 | macros/latex/contrib/algxpar/algxpar-doc.pdf
2024/10/24 | 8382 | graphics/pgf/contrib/pgfornament-han/han/han69.pgf
2024/10/24 | 83762 | macros/latex/contrib/koma-script/doc/scrbase-en.tex
2024/10/24 | 8333 | graphics/pgf/contrib/pgfornament-han/beamerthemeHeavenlyClouds.sty
@@ -72,7 +231,6 @@
2024/10/24 | 59561 | macros/latex/contrib/koma-script/scrkernel-letterclassoptions.dtx
2024/10/24 | 59520 | macros/latex/contrib/koma-script/doc/scrlayer-scrpage-de.tex
2024/10/24 | 588 | graphics/pgf/contrib/pgfornament-han/han/han9.pgf
-2024/10/24 | 5756553 | systems/texlive/tlnet/install-tl-unx.tar.gz
2024/10/24 | 5752 | graphics/pgf/contrib/pgfornament-han/beamerthemeXiaoshan.sty
2024/10/24 | 567 | graphics/pgf/contrib/pgfornament-han/han/han42.pgf
2024/10/24 | 566 | graphics/pgf/contrib/pgfornament-han/han/han36.pgf
@@ -85,6 +243,7 @@
2024/10/24 | 5376 | macros/latex/contrib/koma-script/doc/common-oddorevenpage-de.tex
2024/10/24 | 53636 | systems/texlive/tlnet/archive/letgut.r72638.tar.xz
2024/10/24 | 53457 | macros/latex/contrib/koma-script/doc/scrlayer-scrpage-en.tex
+2024/10/24 | 52757 | macros/latex/contrib/algxpar/algxpar-doc.tex
2024/10/24 | 509 | graphics/pgf/contrib/pgfornament-han/han/han76.pgf
2024/10/24 | 509 | graphics/pgf/contrib/pgfornament-han/han/han39.pgf
2024/10/24 | 5096 | macros/latex/contrib/paracol/README
@@ -92,12 +251,7 @@
2024/10/24 | 4980 | macros/latex/contrib/koma-script/doc/preface-en.tex
2024/10/24 | 49380 | systems/texlive/tlnet/archive/passopt.doc.r72638.tar.xz
2024/10/24 | 4913 | macros/latex/contrib/koma-script/doc/common-marginpar-de.tex
-2024/10/24 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2024/10/24 | 48943 | macros/latex/contrib/koma-script/scrkernel-listsof.dtx
-2024/10/24 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2024/10/24 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2024/10/24 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2024/10/24 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2024/10/24 | 48745 | macros/latex/contrib/koma-script/doc/common-textmarkup-de.tex
2024/10/24 | 4836 | graphics/pgf/contrib/pgfornament-han/samples/tianqing-poster-sample.tex
2024/10/24 | 47550 | macros/latex/contrib/koma-script/doc/common-pagestylemanipulation-en.tex
@@ -119,20 +273,20 @@
2024/10/24 | 44457 | macros/latex/contrib/koma-script/doc/letter-example-21-en.pdf
2024/10/24 | 44156 | macros/latex/contrib/koma-script/doc/common-textmarkup-en.tex
2024/10/24 | 435 | graphics/pgf/contrib/pgfornament-han/han/han45.pgf
+2024/10/24 | 434426 | macros/latex/contrib/jsonparse/jsonparse-doc.pdf
2024/10/24 | 4320 | macros/latex/contrib/koma-script/doc/common-draftmode-en.tex
2024/10/24 | 43145 | macros/latex/contrib/koma-script/doc/letter-example-23-de.pdf
2024/10/24 | 43145 | macros/latex/contrib/koma-script/doc/letter-example-22-de.pdf
2024/10/24 | 42838 | macros/latex/contrib/koma-script/doc/letter-example-21-de.pdf
-2024/10/24 | 4207660 | biblio/ctan-bibdata.zip
2024/10/24 | 40740 | macros/latex/contrib/koma-script/scrkernel-miscellaneous.dtx
2024/10/24 | 4068 | macros/latex/contrib/proflycee/tex/proflycee-tools-cliparts.tex
2024/10/24 | 40627 | macros/latex/contrib/koma-script/doc/scrlttr2-experts-de.tex
2024/10/24 | 3980 | macros/latex/contrib/koma-script/doc/linkalias.tex
+2024/10/24 | 39604 | macros/latex/contrib/jsonparse/jsonparse.sty
2024/10/24 | 38864 | macros/latex/contrib/koma-script/doc/scrlayer-notecolumn-de.tex
2024/10/24 | 3874442 | graphics/pgf/contrib/pgfornament-han.zip
2024/10/24 | 3864 | systems/texlive/tlnet/archive/mathfixs.r72638.tar.xz
2024/10/24 | 380416 | systems/texlive/tlnet/archive/asymptote.r72638.tar.xz
-2024/10/24 | 3790528 | biblio/ctan-bibdata/ctan.pdf
2024/10/24 | 3788 | macros/latex/contrib/koma-script/doc/scrlayer-notecolumn-example-de.tex
2024/10/24 | 375507 | graphics/pgf/contrib/pgfornament-han/samples/xiaoshan-poster-sample.pdf
2024/10/24 | 36723 | macros/latex/contrib/koma-script/doc/common-lists-de.tex
@@ -146,7 +300,6 @@
2024/10/24 | 350 | graphics/pgf/contrib/pgfornament-han/han/han32.pgf
2024/10/24 | 3487 | graphics/pgf/contrib/pgfornament-han/samples/xiaoshan-poster-sample.tex
2024/10/24 | 3464 | macros/latex/contrib/koma-script/scrstrip.inc
-2024/10/24 | 34429460 | systems/texlive/tlnet/install-tl.zip
2024/10/24 | 34192 | macros/latex/contrib/koma-script/scrkernel-title.dtx
2024/10/24 | 34111 | macros/latex/contrib/koma-script/doc/scrlttr2-experts-en.tex
2024/10/24 | 340168 | systems/texlive/tlnet/archive/zugferd.doc.r72638.tar.xz
@@ -191,6 +344,7 @@
2024/10/24 | 29932 | macros/latex/contrib/koma-script/doc/letter-example-15-de.pdf
2024/10/24 | 29930 | macros/latex/contrib/koma-script/doc/letter-example-13-de.pdf
2024/10/24 | 29906 | macros/latex/contrib/koma-script/doc/letter-example-14-de.pdf
+2024/10/24 | 29762 | macros/latex/contrib/jsonparse/jsonparse-doc.tex
2024/10/24 | 2973 | macros/latex/contrib/koma-script/doc/scrguide-body.tex
2024/10/24 | 2911 | macros/latex/contrib/koma-script/doc/common-typearea-en.tex
2024/10/24 | 29054 | macros/latex/contrib/koma-script/doc/letter-example-11-de.pdf
@@ -198,8 +352,8 @@
2024/10/24 | 29052 | macros/latex/contrib/koma-script/doc/letter-example-10-de.pdf
2024/10/24 | 29052 | macros/latex/contrib/koma-script/doc/letter-example-08-de.pdf
2024/10/24 | 29034 | macros/latex/contrib/koma-script/doc/letter-example-09-de.pdf
-2024/10/24 | 2895384 | biblio/ctan-bibdata/ctan.bib
2024/10/24 | 289509 | graphics/pgf/contrib/pgfornament-han/samples/hangzhou-arch.jpg
+2024/10/24 | 28810 | macros/latex/contrib/algxpar/algxpar.sty
2024/10/24 | 287 | graphics/pgf/contrib/pgfornament-han/han/han41.pgf
2024/10/24 | 28736 | macros/latex/contrib/koma-script/doc/common-titles-en.tex
2024/10/24 | 2865703 | macros/latex/contrib/paracol.zip
@@ -208,7 +362,6 @@
2024/10/24 | 2824 | graphics/pgf/contrib/pgfornament-han/samples/heavenlyclouds-beamer-sample.tex
2024/10/24 | 2793 | macros/latex/contrib/koma-script/doc/scrextend.html
2024/10/24 | 27924 | macros/latex/contrib/koma-script/scrkernel-bibliography.dtx
-2024/10/24 | 27714513 | systems/texlive/tlnet/install-tl-windows.exe
2024/10/24 | 274 | graphics/pgf/contrib/pgfornament-han/han/han16.pgf
2024/10/24 | 27490 | macros/latex/contrib/koma-script/koma-script-source-doc.dtx
2024/10/24 | 27309 | macros/latex/contrib/koma-script/scrkernel-paragraphs.dtx
@@ -224,7 +377,6 @@
2024/10/24 | 2632 | macros/latex/contrib/koma-script/doc/scrlogo-de.tex
2024/10/24 | 26283 | macros/latex/contrib/koma-script/doc/common-footnotes-en.tex
2024/10/24 | 261027 | graphics/pgf/contrib/pgfornament-han/samples/heavenlyclouds-poster-sample.pdf
-2024/10/24 | 2606436 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2024/10/24 | 2602 | macros/latex/contrib/koma-script/doc/scrlfile-hook.html
2024/10/24 | 25838 | macros/latex/contrib/koma-script/scrtime.dtx
2024/10/24 | 25766 | graphics/pgf/contrib/pgfornament-han/han/han50.pgf
@@ -294,7 +446,6 @@
2024/10/24 | 19924 | systems/texlive/tlnet/archive/easybook.source.r72638.tar.xz
2024/10/24 | 1975 | macros/latex/contrib/koma-script/scrstrop.inc
2024/10/24 | 1972358 | macros/latex/contrib/paracol/paracol.pdf
-2024/10/24 | 19648292 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
2024/10/24 | 1949 | graphics/pgf/contrib/pgfornament-han/han/han58.pgf
2024/10/24 | 19404 | macros/latex/contrib/koma-script/doc/letter-example-05-en.pdf
2024/10/24 | 19403 | macros/latex/contrib/koma-script/doc/letter-example-06-en.pdf
@@ -303,6 +454,7 @@
2024/10/24 | 19343 | macros/latex/contrib/koma-script/doc/letter-example-03-en.pdf
2024/10/24 | 19310 | macros/latex/contrib/koma-script/doc/letter-example-02-en.pdf
2024/10/24 | 19110 | macros/latex/contrib/koma-script/lppl.txt
+2024/10/24 | 19106 | macros/latex/contrib/algxpar/license
2024/10/24 | 19106 | graphics/pgf/contrib/pgfornament-han/lppl-1-3c.txt
2024/10/24 | 19100 | macros/latex/contrib/koma-script/doc/terms-en.tex
2024/10/24 | 19015 | macros/latex/contrib/koma-script/doc/letter-example-01-en.pdf
@@ -318,6 +470,7 @@
2024/10/24 | 17659 | macros/latex/contrib/koma-script/doc/letter-example-02-de.pdf
2024/10/24 | 1764 | graphics/pgf/contrib/pgfornament-han/han/han4.pgf
2024/10/24 | 17513 | macros/latex/contrib/koma-script/doc/scrlayer-scrpage-experts-en.tex
+2024/10/24 | 1741 | macros/latex/contrib/jsonparse/README.md
2024/10/24 | 17413 | macros/latex/contrib/koma-script/doc/letter-example-01-de.pdf
2024/10/24 | 1736 | graphics/pgf/contrib/pgfornament-han/han/han74.pgf
2024/10/24 | 17343 | macros/latex/contrib/koma-script/scrkernel-listsandtabulars.dtx
@@ -327,7 +480,6 @@
2024/10/24 | 168576 | macros/latex/contrib/koma-script/scrlayer.dtx
2024/10/24 | 1680 | graphics/pgf/contrib/pgfornament-han/han/han14.pgf
2024/10/24 | 16794 | macros/latex/contrib/koma-script/doc/introduction-en.tex
-2024/10/24 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2024/10/24 | 16567 | macros/latex/contrib/koma-script/scrkernel-variables.dtx
2024/10/24 | 163 | graphics/pgf/contrib/pgfornament-han/han/han15.pgf
2024/10/24 | 16128 | macros/latex/contrib/koma-script/doc/letter-example-00-en.pdf
@@ -336,15 +488,11 @@
2024/10/24 | 1562 | graphics/pgf/contrib/pgfornament-han/samples/xiaoshan-beamer-sample.tex
2024/10/24 | 155794 | macros/latex/contrib/koma-script/doc/tocbasic-de.tex
2024/10/24 | 1545 | graphics/pgf/contrib/pgfornament-han/han/han56.pgf
-2024/10/24 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2024/10/24 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2024/10/24 | 15234 | macros/latex/contrib/koma-script/doc/plength-tikz.tex
2024/10/24 | 15175 | macros/latex/contrib/koma-script/japanlco.dtx
2024/10/24 | 149685 | graphics/pgf/contrib/pgfornament-han/samples/Cloud_types_en.pdf
2024/10/24 | 14943 | macros/latex/contrib/koma-script/doc/letter-example-00-de.pdf
2024/10/24 | 1476432 | systems/texlive/tlnet/archive/mp-geom2d.doc.r72638.tar.xz
-2024/10/24 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2024/10/24 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
2024/10/24 | 1449 | graphics/pgf/contrib/pgfornament-han/han/han26.pgf
2024/10/24 | 1437 | graphics/pgf/contrib/pgfornament-han/han/han22.pgf
2024/10/24 | 14241 | macros/latex/contrib/koma-script/doc/common-interleafpage-en.tex
@@ -369,6 +517,7 @@
2024/10/24 | 13210 | macros/latex/contrib/koma-script/doc/scrdate-en.tex
2024/10/24 | 13094 | macros/latex/contrib/koma-script/doc/scrdate-de.tex
2024/10/24 | 1289 | macros/latex/contrib/koma-script/doc/book-remarkbox-patch-en.tex
+2024/10/24 | 1285 | macros/latex/contrib/algxpar/algxpar-english.kw.tex
2024/10/24 | 12839 | macros/latex/contrib/proflycee/tex/ProfLycee-Light.sty
2024/10/24 | 1281 | graphics/pgf/contrib/pgfornament-han/han/han10.pgf
2024/10/24 | 127172 | macros/latex/contrib/koma-script/scrkernel-typearea.dtx
@@ -384,6 +533,7 @@
2024/10/24 | 12139 | macros/latex/contrib/koma-script/doc/common-parmarkup-de.tex
2024/10/24 | 12016 | macros/latex/contrib/koma-script/doc/typearea-experts-en.tex
2024/10/24 | 11863 | macros/latex/contrib/koma-script/doc/common-dictum-de.tex
+2024/10/24 | 11854 | macros/latex/contrib/algxpar/algxpar-versionchanges.sty
2024/10/24 | 11848 | macros/latex/contrib/koma-script/doc/common-parmarkup-en.tex
2024/10/24 | 1180 | graphics/pgf/contrib/pgfornament-han/README.md
2024/10/24 | 1145 | graphics/pgf/contrib/pgfornament-han/han/han72.pgf
@@ -414,13 +564,11 @@
2024/10/23 | 94364 | macros/latex/contrib/spelatex/spelatex-spel/4.1.3.0.0-1.ogg
2024/10/23 | 94259 | macros/latex/contrib/spelatex/Example/example.pdf
2024/10/23 | 93981 | macros/latex/contrib/spelatex/spelatex-spel/4.2.0.0.0-5.ogg
-2024/10/23 | 93281 | macros/latex/contrib/easybook/easybook.dtx
2024/10/23 | 93092 | macros/latex/contrib/spelatex/spelatex-spel/1.2.1.0.0-2.ogg
2024/10/23 | 9283 | macros/latex/contrib/randintlist/doc/randintlist-doc.tex
2024/10/23 | 92521 | macros/latex/contrib/spelatex/spelatex-spel/4.1.5.0.0-4.ogg
2024/10/23 | 91572 | macros/latex/contrib/spelatex/spelatex.dtx
2024/10/23 | 91450 | macros/latex/contrib/spelatex/spelatex-spel/3.2.2.0.0-3.ogg
-2024/10/23 | 913 | macros/latex/contrib/easybook/README.md
2024/10/23 | 90454 | macros/latex/contrib/spelatex/spelatex-spel/2.3.0.0.0-1.ogg
2024/10/23 | 90002 | macros/latex/contrib/spbmark/spbmark.pdf
2024/10/23 | 88539 | macros/latex/contrib/zugferd/zugferd.dtx
@@ -452,12 +600,10 @@
2024/10/23 | 7606 | macros/latex/contrib/zugferd/zugferd-invoice.sty
2024/10/23 | 75953 | macros/latex/contrib/spelatex/spelatex-spel/1.3.0.0.0-6.ogg
2024/10/23 | 75832 | macros/latex/contrib/spelatex/spelatex-spel/1.3.0.0.0-3.ogg
-2024/10/23 | 75632 | systems/texlive/tlnet/archive/commalists-tools.doc.r72618.tar.xz
2024/10/23 | 752 | macros/latex/contrib/spelatex/spelatex-spel/7.9.0.0.0.m3u
2024/10/23 | 74100 | macros/latex/contrib/spelatex/spelatex-spel/4.1.4.0.0-2.ogg
2024/10/23 | 74019 | macros/latex/contrib/spelatex/Example/example-spel/2.1.0.0.0.0-2.ogg
2024/10/23 | 73889 | macros/latex/contrib/commalists-tools/doc/commalists-tools-doc.pdf
-2024/10/23 | 73859 | macros/latex/contrib/mathfixs/mathfixs.dtx
2024/10/23 | 73657 | macros/latex/contrib/spelatex/spelatex-spel/6.4.0.0.0-2.ogg
2024/10/23 | 73497 | macros/latex/contrib/spelatex/spelatex-spel/3.2.2.0.0-2.ogg
2024/10/23 | 73250 | macros/latex/contrib/spelatex/spelatex-spel/6.3.1.0.0-1.ogg
@@ -468,7 +614,6 @@
2024/10/23 | 70900 | macros/latex/contrib/spelatex/spelatex-spel/6.6.2.0.0-2.ogg
2024/10/23 | 70606 | macros/latex/contrib/spelatex/spelatex-spel/4.1.4.0.0-1.ogg
2024/10/23 | 702 | macros/latex/contrib/dashrulex/README.md
-2024/10/23 | 702870 | macros/latex/contrib/easybook.zip
2024/10/23 | 69856 | macros/latex/contrib/spelatex/spelatex-spel/6.7.0.0.0-11.ogg
2024/10/23 | 69409 | macros/latex/contrib/spelatex/spelatex-spel/4.1.1.0.0-2.ogg
2024/10/23 | 692 | macros/latex/contrib/spelatex/spelatex-spel/8.0.0.0.0.m3u
@@ -482,7 +627,6 @@
2024/10/23 | 66745 | macros/latex/contrib/spelatex/spelatex-spel/4.1.7.0.0-4.ogg
2024/10/23 | 65725 | macros/latex/contrib/spelatex/spelatex-spel/3.2.1.0.0-4.ogg
2024/10/23 | 65448 | macros/latex/contrib/spelatex/spelatex-spel/2.2.1.0.0-1.ogg
-2024/10/23 | 648559 | macros/latex/contrib/easybook/easybook.pdf
2024/10/23 | 64306 | macros/latex/contrib/spelatex/spelatex-spel/7.0.0.0.0-1.ogg
2024/10/23 | 64185 | macros/latex/contrib/spelatex/spelatex-spel/4.1.5.0.0-3.ogg
2024/10/23 | 63694 | macros/latex/contrib/spelatex/spelatex-spel/4.1.1.0.0-3.ogg
@@ -568,15 +712,12 @@
2024/10/23 | 410 | macros/latex/contrib/spelatex/spelatex-spel/1.1.0.0.0.m3u
2024/10/23 | 39732 | macros/latex/contrib/spelatex/Example/example-spel/1.0.0.0.0.0-1.ogg
2024/10/23 | 39646 | macros/latex/contrib/spelatex/Example/example-spel/2.1.0.0.0.0-3.ogg
-2024/10/23 | 396420 | systems/texlive/tlnet/archive/proflycee.r72621.tar.xz
2024/10/23 | 3956 | macros/luatex/latex/letgut/doc/localconf.tex
2024/10/23 | 39304 | macros/latex/contrib/spelatex/Example/example-spel/2.3.0.0.0.0-1.ogg
2024/10/23 | 38837 | macros/latex/contrib/spelatex/spelatex-spel/2.3.0.0.0-3.ogg
2024/10/23 | 387377 | macros/luatex/latex/letgut/doc/letgut.pdf
-2024/10/23 | 382758 | macros/latex/contrib/mathfixs/mathfixs.pdf
2024/10/23 | 377218 | macros/latex/contrib/zugferd.zip
2024/10/23 | 37521 | macros/latex/contrib/spelatex/Example/example-spel/3.1.0.0.0.0-1.ogg
-2024/10/23 | 374393 | macros/latex/contrib/mathfixs.zip
2024/10/23 | 3724 | systems/texlive/tlnet/archive/sshrc-insight.r72623.tar.xz
2024/10/23 | 37206 | macros/latex/contrib/spelatex/spelatex-spel/3.2.1.0.0-5.ogg
2024/10/23 | 36972 | macros/latex/contrib/spelatex/spelatex-spel/6.4.0.0.0-1.ogg
@@ -651,7 +792,6 @@
2024/10/23 | 258831 | macros/latex/contrib/nicematrix/nicematrix-french.tex
2024/10/23 | 258116 | macros/latex/contrib/nicematrix/nicematrix.tex
2024/10/23 | 255 | macros/luatex/latex/letgut/doc/listings-conf.tex
-2024/10/23 | 2559008 | systems/texlive/tlnet/archive/proflycee.doc.r72621.tar.xz
2024/10/23 | 2553 | macros/latex/contrib/dashrulex/dashrulex.sty
2024/10/23 | 2538 | macros/latex/contrib/spelatex/spelatex-spel/1.0.0.0.0.m3u
2024/10/23 | 25176 | macros/latex/contrib/spelatex/spelatex-spel/4.1.9.0.0.ogg
@@ -745,7 +885,6 @@
2024/10/23 | 17487 | macros/latex/contrib/spelatex/spelatex-spel/2.4.0.0.0.ogg
2024/10/23 | 17439 | macros/latex/contrib/spelatex/spelatex-spel/4.1.7.0.0-2.ogg
2024/10/23 | 17379 | macros/latex/contrib/spelatex/spelatex-spel/6.4.0.0.0.ogg
-2024/10/23 | 1732 | systems/texlive/tlnet/archive/commalists-tools.r72618.tar.xz
2024/10/23 | 16931 | macros/latex/contrib/spelatex/spelatex-spel/1.1.0.0.0.ogg
2024/10/23 | 16905 | macros/latex/contrib/spelatex/spelatex-spel/4.1.0.0.0-5.ogg
2024/10/23 | 16847 | macros/latex/contrib/spelatex/spelatex-spel/6.6.1.0.0-3.ogg
@@ -825,7 +964,6 @@
2024/10/23 | 1212 | macros/latex/contrib/spelatex/spelatex-spel/2.2.1.0.0.m3u
2024/10/23 | 12070028 | systems/texlive/tlnet/archive/l3kernel.doc.r72625.tar.xz
2024/10/23 | 120483 | macros/latex/contrib/spelatex/spelatex-spel/1.1.0.0.0-3.ogg
-2024/10/23 | 1191 | macros/latex/contrib/mathfixs/README.txt
2024/10/23 | 118238 | macros/latex/contrib/spelatex/spelatex-spel/1.2.1.0.0-3.ogg
2024/10/23 | 118189 | macros/latex/contrib/spelatex/spelatex-spel/2.2.4.0.0-3.ogg
2024/10/23 | 117608 | macros/latex/contrib/spelatex/spelatex-spel/1.3.0.0.0-10.ogg
@@ -834,7 +972,6 @@
2024/10/23 | 113818 | macros/latex/contrib/spelatex/spelatex-spel/4.1.6.0.0-1.ogg
2024/10/23 | 113548 | macros/latex/contrib/spelatex/spelatex-spel/6.7.0.0.0-1.ogg
2024/10/23 | 113548 | macros/latex/contrib/spelatex/Example/example-spel/2.2.0.0.0.0-1.ogg
-2024/10/23 | 113032 | macros/latex/contrib/easybook/easybook.tex
2024/10/23 | 112516 | macros/latex/contrib/spelatex/spelatex-spel/1.3.0.0.0-11.ogg
2024/10/23 | 1124 | macros/latex/contrib/spelatex/spelatex-spel/6.7.0.0.0.m3u
2024/10/23 | 1124 | macros/latex/contrib/spelatex/spelatex-spel/1.3.0.0.0.m3u
@@ -997,7 +1134,6 @@
2024/10/22 | 4450 | support/make4ht/make4ht-xtpipes.lua
2024/10/22 | 443 | graphics/metapost/contrib/macros/mp-geom2d/doc/exemples/fonctions/fonction1.mp
2024/10/22 | 44084 | macros/latex/contrib/tcolorbox/tcolorbox-tutorial-poster.tex
-2024/10/22 | 438568 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72616.tar.xz
2024/10/22 | 437 | graphics/metapost/contrib/macros/mp-geom2d/doc/exemples/reperes/mpxerr.tex
2024/10/22 | 43448 | support/make4ht/README
2024/10/22 | 43235 | macros/latex/required/l3kernel/l3sys.dtx
@@ -1232,7 +1368,6 @@
2024/10/22 | 115 | graphics/metapost/contrib/macros/mp-geom2d/doc/exemples/vecteur/vecteur.mp
2024/10/22 | 1156 | graphics/metapost/contrib/macros/mp-geom2d/metapost/geom2d-tra.mp
2024/10/22 | 114754 | macros/latex/required/l3kernel/l3news04.pdf
-2024/10/22 | 114408 | systems/texlive/tlnet/archive/texlive-scripts.r72616.tar.xz
2024/10/22 | 1143 | support/make4ht/formats/make4ht-docbook.lua
2024/10/22 | 11418 | graphics/metapost/contrib/macros/mp-geom2d/doc/exemples/transformations/inversion-1.pdf
2024/10/22 | 113912 | systems/texlive/tlnet/archive/fontscale.doc.r72614.tar.xz
@@ -1517,7 +1652,6 @@
2024/10/20 | 10028 | systems/win32/miktex/tm/packages/tikzquads.tar.lzma
2024/10/19 | 9884 | systems/texlive/tlnet/archive/tikzquads.r72580.tar.xz
2024/10/19 | 96694 | macros/generic/witharrows/witharrows-french.tex
-2024/10/19 | 9252 | support/TeX4ht/source/mktex4ht-cnf.tex
2024/10/19 | 913429 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf
2024/10/19 | 874836 | systems/texlive/tlnet/archive/piton.doc.r72587.tar.xz
2024/10/19 | 874765 | macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf
@@ -1532,7 +1666,6 @@
2024/10/19 | 626486 | indexing/xindex/doc/xindex-doc.pdf
2024/10/19 | 623204 | systems/texlive/tlnet/archive/fmtcount.doc.r72583.tar.xz
2024/10/19 | 6098 | indexing/xindex/lualatex/xindex-norsk.lua
-2024/10/19 | 56508 | systems/texlive/tlnet/archive/dashrulex.doc.r72581.tar.xz
2024/10/19 | 541580 | systems/texlive/tlnet/archive/ufrgscca.doc.r72586.tar.xz
2024/10/19 | 532 | macros/latex/contrib/tutodoc/README.md
2024/10/19 | 531626 | macros/generic/witharrows/witharrows-french.pdf
@@ -1556,7 +1689,6 @@
2024/10/19 | 2764 | indexing/xindex/lualatex/xindex-cfg-no_uca.lua
2024/10/19 | 2733 | indexing/xindex/lualatex/xindex-AU.lua
2024/10/19 | 27310 | macros/latex/contrib/tutodoc/code/tutodoc.cls
-2024/10/19 | 263615 | support/TeX4ht/source/ChangeLog
2024/10/19 | 2604 | indexing/xindex/lualatex/xindex-DIN2.lua
2024/10/19 | 2554068 | systems/texlive/tlnet/archive/simpleicons.doc.r72579.tar.xz
2024/10/19 | 25400 | systems/texlive/tlnet/archive/ufrgscca.r72586.tar.xz
@@ -1564,11 +1696,9 @@
2024/10/19 | 1769107 | macros/latex/contrib/tutodoc.zip
2024/10/19 | 1691 | macros/latex/contrib/tutodoc/MANIFEST.md
2024/10/19 | 1499768 | systems/texlive/tlnet/archive/tex4ht.source.r72589.tar.xz
-2024/10/19 | 1472 | systems/texlive/tlnet/archive/dashrulex.r72581.tar.xz
2024/10/19 | 136388 | systems/texlive/tlnet/archive/tex4ht.doc.r72589.tar.xz
2024/10/19 | 1292991 | macros/generic/witharrows.zip
2024/10/19 | 12743 | indexing/xindex/lualatex/xindex-base.lua
-2024/10/19 | 1213920 | support/TeX4ht/source/tex4ht-4ht.tex
2024/10/19 | 1137832 | systems/texlive/tlnet/archive/tex4ht.r72589.tar.xz
2024/10/19 | 1135701 | macros/generic/witharrows/witharrows.pdf
2024/10/19 | 11083 | indexing/xindex/lualatex/xindex-HAdW-eKO.lua
@@ -1576,348 +1706,3 @@
2024/10/19 | 1050 | macros/latex/contrib/tutodoc/code/tutodoc-locale-main-fr.cfg.cls.sty
2024/10/19 | 1014 | macros/latex/contrib/tutodoc/code/tutodoc-locale-main-en.cfg.cls.sty
2024/10/19 | 10136 | indexing/xindex/lualatex/xindex-lapp.lua
-2024/10/18 | 98870 | systems/win32/miktex/tm/packages/odsfile__doc.tar.lzma
-2024/10/18 | 9866 | systems/win32/miktex/tm/packages/postnotes.tar.lzma
-2024/10/18 | 9862998 | systems/win32/miktex/tm/packages/bookshelf__source.tar.lzma
-2024/10/18 | 9523 | systems/win32/miktex/tm/packages/se2thesis.tar.lzma
-2024/10/18 | 94432 | systems/win32/miktex/tm/packages/udiss__source.tar.lzma
-2024/10/18 | 94352 | macros/latex/contrib/ppt-slides/socrates.jpg
-2024/10/18 | 929643 | systems/win32/miktex/tm/packages/xcolor__doc.tar.lzma
-2024/10/18 | 926872 | macros/latex/contrib/ppt-slides.zip
-2024/10/18 | 92172 | systems/win32/miktex/tm/packages/mathtools__source.tar.lzma
-2024/10/18 | 9183 | systems/win32/miktex/tm/packages/fontscale.tar.lzma
-2024/10/18 | 9178 | systems/win32/miktex/tm/packages/penlightplus__source.tar.lzma
-2024/10/18 | 9127 | systems/win32/miktex/tm/packages/latex-firstaid-dev__source.tar.lzma
-2024/10/18 | 9014464 | systems/win32/miktex/tm/packages/pdfmanagement-testphase__doc.tar.lzma
-2024/10/18 | 894092 | systems/win32/miktex/tm/packages/babel__source.tar.lzma
-2024/10/18 | 8925 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma
-2024/10/18 | 8882955 | systems/win32/miktex/tm/packages/latex-lab-dev__doc.tar.lzma
-2024/10/18 | 88803 | systems/win32/miktex/tm/packages/spbmark__doc.tar.lzma
-2024/10/18 | 8872 | systems/win32/miktex/tm/packages/jlreq__source.tar.lzma
-2024/10/18 | 886117 | systems/win32/miktex/tm/packages/nfssext-cfr__doc.tar.lzma
-2024/10/18 | 87996 | systems/win32/miktex/tm/packages/hvlogos__doc.tar.lzma
-2024/10/18 | 854895 | systems/win32/miktex/tm/packages/koma-script__source.tar.lzma
-2024/10/18 | 854214 | macros/latex/contrib/ppt-slides/ppt-slides.pdf
-2024/10/18 | 845457 | systems/win32/miktex/tm/packages/unbtex__doc.tar.lzma
-2024/10/18 | 839 | systems/win32/miktex/tm/packages/pst-jtree.tar.lzma
-2024/10/18 | 839800 | systems/win32/miktex/tm/packages/asy-overview__source.tar.lzma
-2024/10/18 | 8303 | systems/win32/miktex/tm/packages/pmdraw.tar.lzma
-2024/10/18 | 8293 | systems/win32/miktex/tm/packages/notebeamer__source.tar.lzma
-2024/10/18 | 823047 | systems/win32/miktex/tm/packages/hduthesis__doc.tar.lzma
-2024/10/18 | 8125 | systems/win32/miktex/tm/packages/suanpan-l3.tar.lzma
-2024/10/18 | 811692 | systems/win32/miktex/tm/packages/mp-geom2d__source.tar.lzma
-2024/10/18 | 8043 | systems/win32/miktex/tm/packages/udiss.tar.lzma
-2024/10/18 | 8013 | systems/win32/miktex/tm/packages/fontscale__source.tar.lzma
-2024/10/18 | 7976 | systems/win32/miktex/tm/packages/sunpath__source.tar.lzma
-2024/10/18 | 789261 | systems/win32/miktex/tm/packages/latex-base-dev__source.tar.lzma
-2024/10/18 | 784 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonethree.tfm
-2024/10/18 | 78082 | systems/win32/miktex/tm/packages/penlightplus__doc.tar.lzma
-2024/10/18 | 7799493 | systems/win32/miktex/tm/packages/venturisadf__doc.tar.lzma
-2024/10/18 | 77641 | systems/win32/miktex/tm/packages/xcolor__source.tar.lzma
-2024/10/18 | 772823 | systems/win32/miktex/tm/packages/bithesis__doc.tar.lzma
-2024/10/18 | 7512 | macros/latex/contrib/fmtcount/fc-lang.tex
-2024/10/18 | 747367 | install/macros/latex/contrib/fmtcount.tds.zip
-2024/10/18 | 745771 | systems/win32/miktex/tm/packages/l3build__doc.tar.lzma
-2024/10/18 | 728941 | systems/win32/miktex/tm/packages/electrumadf.tar.lzma
-2024/10/18 | 727740 | systems/win32/miktex/tm/packages/ucph-revy__doc.tar.lzma
-2024/10/18 | 7263 | systems/win32/miktex/tm/packages/bookshelf__doc.tar.lzma
-2024/10/18 | 72350 | systems/win32/miktex/tm/packages/commalists-tools__doc.tar.lzma
-2024/10/18 | 71826 | systems/win32/miktex/tm/packages/unimath-plain-xetex__doc.tar.lzma
-2024/10/18 | 71649 | systems/win32/miktex/tm/packages/hduthesis.tar.lzma
-2024/10/18 | 709423 | systems/win32/miktex/tm/packages/l3kernel-dev__source.tar.lzma
-2024/10/18 | 70349 | systems/win32/miktex/tm/packages/markdown.tar.lzma
-2024/10/18 | 689147 | macros/latex/contrib/fmtcount.zip
-2024/10/18 | 68842 | systems/win32/miktex/tm/packages/letgut__source.tar.lzma
-2024/10/18 | 6819 | systems/win32/miktex/tm/packages/bookcover.tar.lzma
-2024/10/18 | 68154 | systems/win32/miktex/tm/packages/siunitx.tar.lzma
-2024/10/18 | 67424 | systems/win32/miktex/tm/packages/pst-jtree__source.tar.lzma
-2024/10/18 | 67188 | systems/win32/miktex/tm/packages/latex-amsmath-dev__source.tar.lzma
-2024/10/18 | 669760 | systems/win32/miktex/tm/packages/biblatex-abnt__source.tar.lzma
-2024/10/18 | 668 | macros/latex/contrib/ppt-slides/DEPENDS.txt
-2024/10/18 | 6684 | systems/win32/miktex/tm/packages/sim-os-menus__source.tar.lzma
-2024/10/18 | 649263 | systems/win32/miktex/tm/packages/mp-geom2d__doc.tar.lzma
-2024/10/18 | 6412 | systems/win32/miktex/tm/packages/sansmathfonts__source.tar.lzma
-2024/10/18 | 6391952 | fonts/simpleicons.zip
-2024/10/18 | 6386206 | systems/win32/miktex/tm/packages/koma-script__doc.tar.lzma
-2024/10/18 | 6345373 | systems/win32/miktex/tm/packages/latex-tools-dev__doc.tar.lzma
-2024/10/18 | 629727 | macros/latex/contrib/fmtcount/fmtcount.pdf
-2024/10/18 | 6165 | systems/win32/miktex/tm/packages/odsfile.tar.lzma
-2024/10/18 | 6151258 | systems/win32/miktex/tm/packages/cfr-lm__doc.tar.lzma
-2024/10/18 | 61482 | macros/latex/contrib/fmtcount/fmtcount.perl
-2024/10/18 | 6141 | systems/win32/miktex/tm/packages/spbmark__source.tar.lzma
-2024/10/18 | 613034 | systems/win32/miktex/tm/packages/sim-os-menus__doc.tar.lzma
-2024/10/18 | 6042 | systems/win32/miktex/tm/packages/jsonparse.tar.lzma
-2024/10/18 | 593881 | systems/win32/miktex/tm/packages/jlreq__doc.tar.lzma
-2024/10/18 | 593665 | macros/latex/contrib/ufrgscca.zip
-2024/10/18 | 590319 | systems/win32/miktex/tm/packages/se2thesis__doc.tar.lzma
-2024/10/18 | 590168 | systems/win32/miktex/tm/packages/adfsymbols__doc.tar.lzma
-2024/10/18 | 58982 | systems/win32/miktex/tm/packages/numbersets__doc.tar.lzma
-2024/10/18 | 5833 | systems/win32/miktex/tm/packages/sim-os-menus.tar.lzma
-2024/10/18 | 57700 | systems/win32/miktex/tm/packages/zref-clever__source.tar.lzma
-2024/10/18 | 5725 | systems/win32/miktex/tm/packages/reptheorem__source.tar.lzma
-2024/10/18 | 5715 | systems/win32/miktex/tm/packages/tikz-decofonts.tar.lzma
-2024/10/18 | 5536 | systems/texlive/tlnet/archive/temporal-logic.source.r72575.tar.xz
-2024/10/18 | 55265 | systems/win32/miktex/tm/packages/pdfmanagement-testphase.tar.lzma
-2024/10/18 | 5511 | systems/win32/miktex/tm/packages/updatemarks.tar.lzma
-2024/10/18 | 544156 | systems/win32/miktex/tm/packages/pst-circ__source.tar.lzma
-2024/10/18 | 53597 | systems/win32/miktex/tm/packages/letgut.tar.lzma
-2024/10/18 | 533168 | systems/win32/miktex/tm/packages/adforn__doc.tar.lzma
-2024/10/18 | 530317 | systems/win32/miktex/tm/packages/useclass__doc.tar.lzma
-2024/10/18 | 521448 | systems/texlive/tlnet/archive/temporal-logic.doc.r72575.tar.xz
-2024/10/18 | 5125 | macros/latex/contrib/fmtcount/CHANGES
-2024/10/18 | 5102 | systems/win32/miktex/tm/packages/ucph-revy.tar.lzma
-2024/10/18 | 503016 | systems/win32/miktex/tm/packages/updatemarks__doc.tar.lzma
-2024/10/18 | 5023641 | systems/win32/miktex/tm/packages/venturisadf.tar.lzma
-2024/10/18 | 498606 | systems/win32/miktex/tm/packages/minted__doc.tar.lzma
-2024/10/18 | 498081 | systems/win32/miktex/tm/packages/babel-italian__doc.tar.lzma
-2024/10/18 | 48956 | systems/texlive/tlnet/archive/luaxml.r72574.tar.xz
-2024/10/18 | 4883 | systems/win32/miktex/tm/packages/fancyqr.tar.lzma
-2024/10/18 | 4799 | systems/win32/miktex/tm/packages/updatemarks__source.tar.lzma
-2024/10/18 | 47901 | systems/win32/miktex/tm/packages/passopt__doc.tar.lzma
-2024/10/18 | 4763566 | systems/win32/miktex/tm/packages/tcolorbox__doc.tar.lzma
-2024/10/18 | 4762 | systems/win32/miktex/tm/packages/bookshelf.tar.lzma
-2024/10/18 | 472639 | systems/win32/miktex/tm/packages/romandeadf.tar.lzma
-2024/10/18 | 46810 | systems/win32/miktex/tm/packages/latex-tools-dev.tar.lzma
-2024/10/18 | 46726 | systems/win32/miktex/tm/packages/latex-lab-dev.tar.lzma
-2024/10/18 | 466522 | macros/latex/contrib/exframe/exframe.pdf
-2024/10/18 | 4648 | systems/win32/miktex/tm/packages/numbersets__source.tar.lzma
-2024/10/18 | 4600 | systems/win32/miktex/tm/packages/atveryend__source.tar.lzma
-2024/10/18 | 448894 | graphics/pgf/contrib/tikzquads.zip
-2024/10/18 | 4464 | systems/win32/miktex/tm/packages/spbmark.tar.lzma
-2024/10/18 | 4452 | systems/win32/miktex/tm/packages/useclass__source.tar.lzma
-2024/10/18 | 4320075 | systems/win32/miktex/tm/packages/univie-ling__doc.tar.lzma
-2024/10/18 | 430985 | systems/win32/miktex/tm/packages/suanpan-l3__doc.tar.lzma
-2024/10/18 | 4293397 | systems/win32/miktex/tm/packages/sansmathfonts.tar.lzma
-2024/10/18 | 421007 | systems/win32/miktex/tm/packages/luakeys__doc.tar.lzma
-2024/10/18 | 42076 | systems/win32/miktex/tm/packages/postnotes__source.tar.lzma
-2024/10/18 | 420699 | systems/win32/miktex/tm/packages/baskervaldadf.tar.lzma
-2024/10/18 | 4189 | systems/win32/miktex/tm/packages/commalists-tools__source.tar.lzma
-2024/10/18 | 4132 | systems/win32/miktex/tm/packages/babel-italian.tar.lzma
-2024/10/18 | 4120 | systems/win32/miktex/tm/packages/homework.tar.lzma
-2024/10/18 | 411156 | systems/win32/miktex/tm/packages/pmdraw__doc.tar.lzma
-2024/10/18 | 4091772 | systems/win32/miktex/tm/packages/basiclatex-ru.tar.lzma
-2024/10/18 | 408650 | systems/win32/miktex/tm/packages/jsonparse__doc.tar.lzma
-2024/10/18 | 4078 | systems/win32/miktex/tm/packages/latex-firstaid-dev.tar.lzma
-2024/10/18 | 402782 | macros/xetex/latex/bhcexam.zip
-2024/10/18 | 399803 | macros/luatex/latex/piton/piton-french.pdf
-2024/10/18 | 3995 | macros/latex/contrib/ppt-slides/ppt-templates/ppt-9x6.tex
-2024/10/18 | 394772 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
-2024/10/18 | 3937 | fonts/simpleicons/enc/simpleiconsone.enc
-2024/10/18 | 3925 | fonts/simpleicons/enc/simpleiconsfive.enc
-2024/10/18 | 391794 | systems/win32/miktex/tm/packages/sansmathfonts__doc.tar.lzma
-2024/10/18 | 389861 | systems/win32/miktex/tm/packages/sunpath__doc.tar.lzma
-2024/10/18 | 38377435 | systems/win32/miktex/tm/packages/latex-base-dev__doc.tar.lzma
-2024/10/18 | 3807 | macros/latex/contrib/fmtcount/fmtcount.ins
-2024/10/18 | 380127 | systems/win32/miktex/tm/packages/libertinus-fonts__doc.tar.lzma
-2024/10/18 | 3791 | fonts/simpleicons/enc/simpleiconsthree.enc
-2024/10/18 | 37883 | systems/win32/miktex/tm/packages/berenisadf__source.tar.lzma
-2024/10/18 | 3782 | systems/win32/miktex/tm/packages/litetable.tar.lzma
-2024/10/18 | 375772 | systems/win32/miktex/tm/packages/homework__doc.tar.lzma
-2024/10/18 | 3726 | fonts/simpleicons/enc/simpleiconsoneone.enc
-2024/10/18 | 37262 | systems/win32/miktex/tm/packages/l3build.tar.lzma
-2024/10/18 | 3698 | fonts/simpleicons/enc/simpleiconsonezero.enc
-2024/10/18 | 3682 | fonts/simpleicons/enc/simpleiconsseven.enc
-2024/10/18 | 3655 | systems/win32/miktex/tm/packages/tikz-decofonts__source.tar.lzma
-2024/10/18 | 3640 | fonts/simpleicons/enc/simpleiconstwo.enc
-2024/10/18 | 36104 | systems/win32/miktex/tm/packages/cfr-lm__source.tar.lzma
-2024/10/18 | 35871 | systems/win32/miktex/tm/packages/adforn.tar.lzma
-2024/10/18 | 3553131 | systems/win32/miktex/tm/packages/hvfloat__source.tar.lzma
-2024/10/18 | 3542 | fonts/simpleicons/enc/simpleiconsnine.enc
-2024/10/18 | 3517 | fonts/simpleicons/enc/simpleiconsfour.enc
-2024/10/18 | 3514 | fonts/simpleicons/enc/simpleiconseight.enc
-2024/10/18 | 3481 | fonts/simpleicons/enc/simpleiconsonetwo.enc
-2024/10/18 | 3468 | systems/win32/miktex/tm/packages/to-be-determined__source.tar.lzma
-2024/10/18 | 3388 | fonts/simpleicons/enc/simpleiconssix.enc
-2024/10/18 | 333835 | macros/latex/contrib/fmtcount/fmtcount.dtx
-2024/10/18 | 32831 | systems/win32/miktex/tm/packages/venturisadf__source.tar.lzma
-2024/10/18 | 328087 | systems/win32/miktex/tm/packages/udiss__doc.tar.lzma
-2024/10/18 | 32664 | systems/win32/miktex/tm/packages/l3build__source.tar.lzma
-2024/10/18 | 326484 | systems/win32/miktex/tm/packages/biblatex-abnt__doc.tar.lzma
-2024/10/18 | 3199 | systems/win32/miktex/tm/packages/pst-circ__doc.tar.lzma
-2024/10/18 | 3168479 | systems/win32/miktex/tm/packages/animate__doc.tar.lzma
-2024/10/18 | 316720 | macros/luatex/latex/piton/piton.dtx
-2024/10/18 | 31549 | systems/win32/miktex/tm/packages/se2thesis__source.tar.lzma
-2024/10/18 | 31538 | systems/win32/miktex/tm/packages/animate__source.tar.lzma
-2024/10/18 | 315067 | systems/win32/miktex/tm/packages/litetable__doc.tar.lzma
-2024/10/18 | 31497 | systems/win32/miktex/tm/packages/latex-amsmath-dev.tar.lzma
-2024/10/18 | 31413 | systems/win32/miktex/tm/packages/bithesis__source.tar.lzma
-2024/10/18 | 3132777 | systems/win32/miktex/tm/packages/luatexja__doc.tar.lzma
-2024/10/18 | 3101 | systems/win32/miktex/tm/packages/hvlogos.tar.lzma
-2024/10/18 | 310109 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
-2024/10/18 | 309371 | systems/win32/miktex/tm/packages/chess-problem-diagrams__doc.tar.lzma
-2024/10/18 | 30488 | systems/win32/miktex/tm/packages/l3kernel-dev.tar.lzma
-2024/10/18 | 302739 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex
-2024/10/18 | 29928 | macros/xetex/latex/bhcexam/examples/logo.png
-2024/10/18 | 2953 | fonts/simpleicons/enc/simpleiconsonethree.enc
-2024/10/18 | 29513 | systems/win32/miktex/tm/packages/fontscripts__source.tar.lzma
-2024/10/18 | 29418 | systems/win32/miktex/tm/packages/nfssext-cfr__source.tar.lzma
-2024/10/18 | 29367 | systems/win32/miktex/tm/packages/tkz-grapheur__source.tar.lzma
-2024/10/18 | 29321 | systems/win32/miktex/tm/packages/ucph-revy__source.tar.lzma
-2024/10/18 | 2902989 | systems/win32/miktex/tm/packages/citation-style-language.tar.lzma
-2024/10/18 | 2891 | systems/win32/miktex/tm/packages/fancyqr__source.tar.lzma
-2024/10/18 | 2887 | systems/win32/miktex/tm/packages/hvlogos__source.tar.lzma
-2024/10/18 | 28753596 | systems/win32/miktex/tm/packages/hvfloat__doc.tar.lzma
-2024/10/18 | 285503 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
-2024/10/18 | 2841 | macros/xetex/latex/bhcexam/README.md
-2024/10/18 | 282175 | systems/win32/miktex/tm/packages/atveryend__doc.tar.lzma
-2024/10/18 | 279 | fonts/simpleicons/tex/usimpleiconsonethree.fd
-2024/10/18 | 27816 | systems/win32/miktex/tm/packages/electrumadf__source.tar.lzma
-2024/10/18 | 274 | fonts/simpleicons/tex/usimpleiconsonezero.fd
-2024/10/18 | 270588 | systems/win32/miktex/tm/packages/latex-firstaid-dev__doc.tar.lzma
-2024/10/18 | 269 | fonts/simpleicons/tex/usimpleiconsonetwo.fd
-2024/10/18 | 269 | fonts/simpleicons/tex/usimpleiconsoneone.fd
-2024/10/18 | 26903211 | systems/win32/miktex/tm/packages/faq-fr-gutenberg.tar.lzma
-2024/10/18 | 264 | fonts/simpleicons/tex/usimpleiconsthree.fd
-2024/10/18 | 264 | fonts/simpleicons/tex/usimpleiconsseven.fd
-2024/10/18 | 264 | fonts/simpleicons/tex/usimpleiconseight.fd
-2024/10/18 | 2642 | macros/latex/contrib/ppt-slides/ppt-slides.ins
-2024/10/18 | 263481 | systems/win32/miktex/tm/packages/to-be-determined__doc.tar.lzma
-2024/10/18 | 262501 | systems/win32/miktex/tm/packages/fancyqr__doc.tar.lzma
-2024/10/18 | 26152 | systems/win32/miktex/tm/packages/zref-clever.tar.lzma
-2024/10/18 | 259 | fonts/simpleicons/tex/usimpleiconsnine.fd
-2024/10/18 | 259 | fonts/simpleicons/tex/usimpleiconsfour.fd
-2024/10/18 | 259 | fonts/simpleicons/tex/usimpleiconsfive.fd
-2024/10/18 | 2591599 | systems/win32/miktex/tm/packages/tkz-grapheur__doc.tar.lzma
-2024/10/18 | 25663 | systems/win32/miktex/tm/packages/babel-italian__source.tar.lzma
-2024/10/18 | 2558 | systems/win32/miktex/tm/packages/passopt__source.tar.lzma
-2024/10/18 | 254 | fonts/simpleicons/tex/usimpleiconstwo.fd
-2024/10/18 | 254 | fonts/simpleicons/tex/usimpleiconssix.fd
-2024/10/18 | 254 | fonts/simpleicons/tex/usimpleiconsone.fd
-2024/10/18 | 25462 | systems/win32/miktex/tm/packages/adfsymbols.tar.lzma
-2024/10/18 | 2542627 | fonts/simpleicons/doc/simpleicons.pdf
-2024/10/18 | 25381 | systems/win32/miktex/tm/packages/chess-problem-diagrams__source.tar.lzma
-2024/10/18 | 25171 | systems/win32/miktex/tm/packages/bithesis.tar.lzma
-2024/10/18 | 251282 | macros/latex/contrib/exframe/exframe.dtx
-2024/10/18 | 250428 | systems/win32/miktex/tm/packages/latex-base-dev.tar.lzma
-2024/10/18 | 249585 | systems/win32/miktex/tm/packages/citation-style-language__doc.tar.lzma
-2024/10/18 | 2493328 | systems/win32/miktex/tm/packages/latex-graphics-dev__doc.tar.lzma
-2024/10/18 | 24889 | systems/win32/miktex/tm/packages/univie-ling__source.tar.lzma
-2024/10/18 | 248283 | systems/win32/miktex/tm/packages/reptheorem__doc.tar.lzma
-2024/10/18 | 2464876 | fonts/simpleicons/opentype/SimpleIcons.otf
-2024/10/18 | 2438 | systems/win32/miktex/tm/packages/notebeamer.tar.lzma
-2024/10/18 | 243410 | systems/win32/miktex/tm/packages/pst-jtree__doc.tar.lzma
-2024/10/18 | 243028 | systems/win32/miktex/tm/packages/latex-tools-dev__source.tar.lzma
-2024/10/18 | 2424516 | systems/win32/miktex/tm/packages/latex-amsmath-dev__doc.tar.lzma
-2024/10/18 | 24136 | systems/win32/miktex/tm/packages/animate.tar.lzma
-2024/10/18 | 240062 | systems/win32/miktex/tm/packages/libris.tar.lzma
-2024/10/18 | 237414 | systems/win32/miktex/tm/packages/babel.tar.lzma
-2024/10/18 | 234858 | systems/win32/miktex/tm/packages/tcolorbox.tar.lzma
-2024/10/18 | 23417 | systems/win32/miktex/tm/packages/miktex-misc.tar.lzma
-2024/10/18 | 2301348 | systems/win32/miktex/tm/packages/berenisadf__doc.tar.lzma
-2024/10/18 | 2292 | macros/xetex/latex/bhcexam/README-zh.md
-2024/10/18 | 2278430 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
-2024/10/18 | 22767 | systems/win32/miktex/tm/packages/jsonparse__source.tar.lzma
-2024/10/18 | 2269931 | fonts/simpleicons/type1/SimpleIcons.pfb
-2024/10/18 | 222679 | systems/win32/miktex/tm/packages/luatexja__source.tar.lzma
-2024/10/18 | 21096 | macros/latex/contrib/ppt-slides/ppt-slides.dtx
-2024/10/18 | 2101 | systems/win32/miktex/tm/packages/useclass.tar.lzma
-2024/10/18 | 2083 | systems/win32/miktex/tm/packages/reptheorem.tar.lzma
-2024/10/18 | 20784 | systems/win32/miktex/tm/packages/mathtools.tar.lzma
-2024/10/18 | 20721 | systems/win32/miktex/tm/packages/baskervaldadf__source.tar.lzma
-2024/10/18 | 20389623 | systems/win32/miktex/tm/packages/faq-fr-gutenberg__source.tar.lzma
-2024/10/18 | 2032 | systems/win32/miktex/tm/packages/sunpath.tar.lzma
-2024/10/18 | 202689 | macros/xetex/latex/bhcexam/examples/example_teacher_paper.pdf
-2024/10/18 | 20237 | macros/xetex/latex/bhcexam/examples/example_teacher_paper.tex
-2024/10/18 | 20228 | macros/xetex/latex/bhcexam/examples/example_student_paper.tex
-2024/10/18 | 20151 | systems/win32/miktex/tm/packages/unbtex__source.tar.lzma
-2024/10/18 | 2008 | macros/latex/contrib/exframe/README.txt
-2024/10/18 | 19946 | systems/win32/miktex/tm/packages/biblatex-abnt.tar.lzma
-2024/10/18 | 19781 | systems/win32/miktex/tm/packages/romandeadf__source.tar.lzma
-2024/10/18 | 193512 | systems/win32/miktex/tm/packages/luatexja.tar.lzma
-2024/10/18 | 1908 | systems/texlive/tlnet/archive/temporal-logic.r72575.tar.xz
-2024/10/18 | 1901 | systems/win32/miktex/tm/packages/commalists-tools.tar.lzma
-2024/10/18 | 18982 | systems/win32/miktex/tm/packages/libris__source.tar.lzma
-2024/10/18 | 189703 | systems/win32/miktex/tm/packages/latex-doc-ptr.tar.lzma
-2024/10/18 | 18655 | systems/win32/miktex/tm/packages/minted.tar.lzma
-2024/10/18 | 18511 | systems/win32/miktex/tm/packages/xcolor.tar.lzma
-2024/10/18 | 184212 | fonts/simpleicons/doc/bindings.tex
-2024/10/18 | 1823511 | systems/win32/miktex/tm/packages/asy-overview.tar.lzma
-2024/10/18 | 1813 | fonts/simpleicons/doc/simpleicons.tex
-2024/10/18 | 18136 | systems/win32/miktex/tm/packages/tkz-grapheur.tar.lzma
-2024/10/18 | 1808 | systems/texlive/tlnet/archive/collection-publishers.r72576.tar.xz
-2024/10/18 | 18027 | systems/win32/miktex/tm/packages/keytheorems.tar.lzma
-2024/10/18 | 1796 | systems/texlive/tlnet/archive/collection-mathscience.r72575.tar.xz
-2024/10/18 | 1796159 | systems/win32/miktex/tm/packages/libertinus-fonts.tar.lzma
-2024/10/18 | 1789 | systems/win32/miktex/tm/packages/to-be-determined.tar.lzma
-2024/10/18 | 1777346 | systems/win32/miktex/tm/packages/bookcover__doc.tar.lzma
-2024/10/18 | 1766735 | systems/win32/miktex/tm/packages/csvsimple__doc.tar.lzma
-2024/10/18 | 1766647 | systems/win32/miktex/tm/packages/berenisadf.tar.lzma
-2024/10/18 | 1745 | fonts/simpleicons/tex/simpleicons.sty
-2024/10/18 | 17451 | systems/win32/miktex/tm/packages/luakeys__source.tar.lzma
-2024/10/18 | 16632 | systems/win32/miktex/tm/packages/odsfile__source.tar.lzma
-2024/10/18 | 1662 | systems/win32/miktex/tm/packages/numbersets.tar.lzma
-2024/10/18 | 166111 | systems/win32/miktex/tm/packages/univie-ling.tar.lzma
-2024/10/18 | 163333 | systems/win32/miktex/tm/packages/uptex-base__doc.tar.lzma
-2024/10/18 | 16306 | systems/win32/miktex/tm/packages/bookcover__source.tar.lzma
-2024/10/18 | 1613 | macros/latex/contrib/ppt-slides/README.md
-2024/10/18 | 1613332 | systems/win32/miktex/tm/packages/fontscripts__doc.tar.lzma
-2024/10/18 | 1588 | macros/latex/contrib/fmtcount/README
-2024/10/18 | 15748 | systems/win32/miktex/tm/packages/hvfloat.tar.lzma
-2024/10/18 | 1536523 | systems/win32/miktex/tm/packages/electrumadf__doc.tar.lzma
-2024/10/18 | 1529 | macros/latex/contrib/exframe/exframe.ins
-2024/10/18 | 15246 | systems/win32/miktex/tm/packages/unimath-plain-xetex__source.tar.lzma
-2024/10/18 | 150890 | systems/win32/miktex/tm/packages/keytheorems__doc.tar.lzma
-2024/10/18 | 1507957 | systems/win32/miktex/tm/packages/romandeadf__doc.tar.lzma
-2024/10/18 | 150184 | systems/win32/miktex/tm/packages/cfr-lm.tar.lzma
-2024/10/18 | 1476 | fonts/simpleicons/map/simpleicons.map
-2024/10/18 | 1469611 | systems/win32/miktex/tm/packages/libris__doc.tar.lzma
-2024/10/18 | 146568 | systems/texlive/tlnet/archive/luaxml.doc.r72574.tar.xz
-2024/10/18 | 146283 | systems/win32/miktex/tm/packages/pdfmanagement-testphase__source.tar.lzma
-2024/10/18 | 14547 | systems/win32/miktex/tm/packages/luakeys.tar.lzma
-2024/10/18 | 145088 | macros/xetex/latex/bhcexam/examples/example_student_paper.pdf
-2024/10/18 | 1429 | systems/win32/miktex/tm/packages/passopt.tar.lzma
-2024/10/18 | 142933 | systems/win32/miktex/tm/packages/jlreq.tar.lzma
-2024/10/18 | 1426 | macros/latex/contrib/ppt-slides/ppt-schemes/ppt-light.tex
-2024/10/18 | 1426 | macros/latex/contrib/ppt-slides/ppt-schemes/ppt-light-mono.tex
-2024/10/18 | 1426 | macros/latex/contrib/ppt-slides/ppt-schemes/ppt-dark.tex
-2024/10/18 | 1426 | macros/latex/contrib/ppt-slides/ppt-schemes/ppt-dark-mono.tex
-2024/10/18 | 14219 | macros/xetex/latex/bhcexam/examples/To7VxKXpZaOWO5Qq9qzeZGtlwYTwJ5KF.jpg
-2024/10/18 | 14131 | systems/win32/miktex/tm/packages/mp-geom2d.tar.lzma
-2024/10/18 | 1386 | systems/win32/miktex/tm/packages/atveryend.tar.lzma
-2024/10/18 | 136303 | systems/win32/miktex/tm/packages/markdown__source.tar.lzma
-2024/10/18 | 1361827 | systems/win32/miktex/tm/packages/baskervaldadf__doc.tar.lzma
-2024/10/18 | 133286 | systems/win32/miktex/tm/packages/tikz-decofonts__doc.tar.lzma
-2024/10/18 | 1331460 | systems/win32/miktex/tm/packages/letgut__doc.tar.lzma
-2024/10/18 | 1328973 | systems/win32/miktex/tm/packages/markdown__doc.tar.lzma
-2024/10/18 | 130644 | systems/win32/miktex/tm/packages/latex-lab-dev__source.tar.lzma
-2024/10/18 | 1303352 | systems/win32/miktex/tm/packages/minted__source.tar.lzma
-2024/10/18 | 1289903 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma
-2024/10/18 | 128484 | systems/win32/miktex/tm/packages/koma-script.tar.lzma
-2024/10/18 | 12637 | systems/win32/miktex/tm/packages/chess-problem-diagrams.tar.lzma
-2024/10/18 | 123733 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma
-2024/10/18 | 1236 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsnine.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconstwo.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconssix.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsseven.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonetwo.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsone.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsoneone.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfive.tfm
-2024/10/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconseight.tfm
-2024/10/18 | 12139 | systems/win32/miktex/tm/packages/unbtex.tar.lzma
-2024/10/18 | 12124 | systems/win32/miktex/tm/packages/csvsimple.tar.lzma
-2024/10/18 | 1207 | fonts/simpleicons/README.md
-2024/10/18 | 11966965 | systems/win32/miktex/tm/packages/l3kernel-dev__doc.tar.lzma
-2024/10/18 | 11930 | macros/xetex/latex/bhcexam/BHCexam.cls
-2024/10/18 | 11806 | systems/win32/miktex/tm/packages/penlightplus.tar.lzma
-2024/10/18 | 11805 | systems/win32/miktex/tm/packages/adfsymbols__source.tar.lzma
-2024/10/18 | 11692 | systems/win32/miktex/tm/packages/keytheorems__source.tar.lzma
-2024/10/18 | 11417 | systems/win32/miktex/tm/packages/litetable__source.tar.lzma
-2024/10/18 | 1137421 | systems/win32/miktex/tm/packages/mathtools__doc.tar.lzma
-2024/10/18 | 1115314 | systems/win32/miktex/tm/packages/babel__doc.tar.lzma
-2024/10/18 | 10966 | systems/win32/miktex/tm/packages/pmdraw__source.tar.lzma
-2024/10/18 | 1089337 | macros/luatex/latex/piton/piton.pdf
-2024/10/18 | 10878 | systems/win32/miktex/tm/packages/latex-doc-ptr__source.tar.lzma
-2024/10/18 | 1084 | macros/latex/contrib/ppt-slides/LICENSE.txt
-2024/10/18 | 108084 | macros/luatex/latex/piton/piton-french.tex
-2024/10/18 | 1075377 | systems/win32/miktex/tm/packages/zref-clever__doc.tar.lzma
-2024/10/18 | 10605 | systems/win32/miktex/tm/packages/hduthesis__source.tar.lzma
-2024/10/18 | 1052736 | systems/win32/miktex/tm/packages/postnotes__doc.tar.lzma
-2024/10/18 | 104574 | systems/win32/miktex/tm/packages/notebeamer__doc.tar.lzma
-2024/10/18 | 1036369 | macros/luatex/latex/piton.zip
-2024/10/18 | 103047 | systems/win32/miktex/tm/packages/fontscale__doc.tar.lzma
-2024/10/18 | 10188 | systems/win32/miktex/tm/packages/suanpan-l3__source.tar.lzma
-2024/10/18 | 10109 | systems/win32/miktex/tm/packages/adforn__source.tar.lzma
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index b285035be4..444cfb57ad 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 25-10-2024, 02:00:02
+%% created at 26-10-2024, 02:00:02
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -1564,12 +1564,12 @@
title = {The \texttt{algxpar} package},
subtitle = {Support multiple lines of pseudocode},
author = {Jander Moreira},
- date = {2023-06-27},
- version = {0.99},
+ date = {2024-10-25},
+ version = {0.99.2},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/algxpar},
url = {https://ctan.org/pkg/algxpar},
- annotation = {This package extends the package
+ annotation = {This package extends the package
to support long text which spans over multiple lines.},
}
@@ -3849,7 +3849,7 @@
title = {The \texttt{atendofenv} package},
subtitle = {Add a custom symbol at the end of an environment},
author = {Fangyi Zhou},
- date = {2022-03-08},
+ date = {2024-10-25},
version = {0.2},
license = {pd},
mirror = {https://mirror.ctan.org/macros/latex/contrib/atendofenv},
@@ -6237,6 +6237,17 @@
url = {https://ctan.org/pkg/beamertheme-metropolis},
}
+@manual{ctan-beamertheme-mirage,
+ title = {The \texttt{beamertheme-mirage} package},
+ subtitle = {A beamer theme with dark and light colour schemes},
+ author = {LianTze Lim},
+ date = {2024-10-25},
+ version = {1.1},
+ license = {lppl1.3c},
+ mirror = {https://mirror.ctan.org/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage},
+ url = {https://ctan.org/pkg/beamertheme-mirage},
+}
+
@manual{ctan-beamertheme-npbt,
title = {The \texttt{beamertheme-npbt} package},
subtitle = {A collection of \LaTeX{} beamer themes},
@@ -8081,7 +8092,7 @@
title = {The \texttt{biblatex-unified} package},
subtitle = {BibLaTeX implementation of the unified stylesheet for linguistics journals},
author = {Kai von Fintel},
- date = {2022-11-08},
+ date = {2024-10-25},
version = {1.20},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/biblatex-contrib/biblatex-unified},
@@ -10096,7 +10107,7 @@
title = {The \texttt{bubblesort} package},
subtitle = {Bubble sorts a list},
author = {Laurence R Taylor},
- date = {2020-07-29},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/bubblesort},
@@ -11044,7 +11055,7 @@
title = {The \texttt{cascade} package},
subtitle = {Constructions with braces to present mathematical demonstrations},
author = {François Pantigny},
- date = {2023-02-08},
+ date = {2024-10-25},
version = {1.2a},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/cascade},
@@ -11984,10 +11995,9 @@
@manual{ctan-checklistings,
title = {The \texttt{checklistings} package},
- subtitle = {Pass verbatim contents through a compiler
- and reincorporate the resulting output},
+ subtitle = {Pass verbatim contents through a compiler and reincorporate the resulting output},
author = {Timothy Bourke},
- date = {2017-04-18},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.2},
mirror = {https://mirror.ctan.org/macros/latex/contrib/checklistings},
@@ -12934,7 +12944,7 @@
title = {The \texttt{citeref} package},
subtitle = {Add reference-page-list to bibliography-items},
author = {Björn Briel},
- date = {2018-04-29},
+ date = {2024-10-25},
version = {1.1},
license = {bsd4},
mirror = {https://mirror.ctan.org/macros/latex/contrib/citeref},
@@ -13085,7 +13095,7 @@
title = {The \texttt{clara} package},
subtitle = {A serif font family},
author = {Daniel Benjamin Miller},
- date = {2020-01-20},
+ date = {2024-10-25},
version = {},
license = {ofl,gpl2+},
mirror = {https://mirror.ctan.org/fonts/clara},
@@ -14280,7 +14290,7 @@
title = {The \texttt{colorblind} package},
subtitle = {Easy colorblind-safe typesetting},
author = {Simon Pfahler},
- date = {2024-05-19},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/colorblind},
@@ -14338,7 +14348,7 @@
title = {The \texttt{coloremoji} package},
subtitle = {Style package for directly including color emojis in \LaTeX{} documents},
author = {Alec Jacobson},
- date = {2018-09-26},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/coloremoji},
@@ -14892,9 +14902,9 @@
title = {The \texttt{concmath-otf} package},
subtitle = {Concrete based OpenType Math font},
author = {Daniel Flipo},
- date = {2024-03-01},
- version = {0.63},
- license = {ofl,lppl1.3},
+ date = {2024-10-25},
+ version = {0.64},
+ license = {ofl,lppl1.3c},
mirror = {https://mirror.ctan.org/fonts/concmath-otf},
url = {https://ctan.org/pkg/concmath-otf},
}
@@ -15831,7 +15841,7 @@
title = {The \texttt{cooperhewitt} package},
subtitle = {LaTeX, pdfLaTeX, \XeLaTeX{} and LuaLaTeX support for the Cooper Hewitt family of sans serif fonts},
author = {Bob Tennent},
- date = {2022-11-03},
+ date = {2024-10-25},
version = {},
license = {ofl,lppl},
mirror = {https://mirror.ctan.org/fonts/cooperhewitt},
@@ -15907,6 +15917,17 @@
the matter created by the .},
}
+@manual{ctan-cora-macs,
+ title = {The \texttt{cora-macs} package},
+ subtitle = {Macros for continuous sets and neural networks in the context of cyber-physical systems},
+ author = {Tobias Ladner and Lukas Koller},
+ date = {2024-10-25},
+ version = {},
+ license = {mit},
+ mirror = {https://mirror.ctan.org/macros/latex/contrib/cora-macs},
+ url = {https://ctan.org/pkg/cora-macs},
+}
+
@manual{ctan-corelfonts,
title = {The \texttt{corelfonts} package},
subtitle = {An installation script for Corel Ventura fonts},
@@ -20858,7 +20879,7 @@
title = {The \texttt{dynamicnumber} package},
subtitle = {Dynamically typeset numbers and values in \LaTeX{} through “symbolic links”},
author = {Olivier Pieters},
- date = {2017-04-18},
+ date = {2024-10-25},
version = {0.1.3},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/dynamicnumber},
@@ -20946,9 +20967,9 @@
@manual{ctan-easing,
title = {The \texttt{easing} package},
- subtitle = {easing functions for pgfmath},
+ subtitle = {Easing functions for pgfmath},
author = {Ka-tsun Loh},
- date = {2021-07-19},
+ date = {2024-10-25},
version = {0.1},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/easing},
@@ -21003,8 +21024,8 @@
title = {The \texttt{easybook} package},
subtitle = {Easily typesetting Chinese theses or books},
author = {Qu Yi},
- date = {2024-10-23},
- version = {2024eq},
+ date = {2024-10-25},
+ version = {2024es},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/easybook},
url = {https://ctan.org/pkg/easybook},
@@ -22719,7 +22740,7 @@
title = {The \texttt{enverb} package},
subtitle = {Read an environment verbatim},
author = {Jonathan P. Spratte},
- date = {2024-09-01},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/enverb},
@@ -24472,7 +24493,7 @@
title = {The \texttt{exercises} package},
subtitle = {Typeset exercises and solutions with automatic addition of points},
author = {Roger Jud},
- date = {2020-05-17},
+ date = {2024-10-25},
version = {1.1},
license = {lppl1.2},
mirror = {https://mirror.ctan.org/macros/latex/contrib/exercises},
@@ -25477,7 +25498,7 @@
title = {The \texttt{featpost} package},
subtitle = {MetaPost macros for 3D},
author = {Luís Nobre Gonçalves},
- date = {2018-01-06},
+ date = {2024-10-25},
version = {0.8.8},
license = {gpl},
mirror = {https://mirror.ctan.org/graphics/metapost/contrib/macros/featpost},
@@ -26665,7 +26686,7 @@
title = {The \texttt{flexipage} package},
subtitle = {Flexible page geometry with marginalia},
author = {Anton Vrba},
- date = {2023-03-18},
+ date = {2024-10-25},
version = {1.02},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/flexipage},
@@ -27164,7 +27185,7 @@
title = {The \texttt{foliono} package},
subtitle = {Use folio numbers to replace page numbers},
author = {Tommi Syrjänen},
- date = {2021-04-15},
+ date = {2024-10-25},
version = {1.000},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/foliono},
@@ -32335,7 +32356,7 @@
title = {The \texttt{hexboard} package},
subtitle = {For drawing Hex boards and games},
author = {Peter Rowlett and Chris Sangwin},
- date = {2022-02-23},
+ date = {2024-10-25},
version = {1.0},
license = {cc-by-sa-4},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/hexboard},
@@ -33040,8 +33061,8 @@
title = {The \texttt{huawei} package},
subtitle = {Template for Huawei documents},
author = {Yegor Bugayenko},
- date = {2024-02-14},
- version = {0.18.3},
+ date = {2024-10-25},
+ version = {0.19.0},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/huawei},
url = {https://ctan.org/pkg/huawei},
@@ -34439,7 +34460,7 @@
title = {The \texttt{ijsra} package},
subtitle = {LaTeX document class for the International Journal of Student Research in Archaeology},
author = {Lukas C. Bossert},
- date = {2017-07-24},
+ date = {2024-10-25},
version = {1.1},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/ijsra},
@@ -36496,8 +36517,8 @@
title = {The \texttt{jsonparse} package},
subtitle = {Parse, store and access JSON data in \LaTeX{} documents},
author = {Jasper Habicht},
- date = {2024-10-03},
- version = {0.9.2},
+ date = {2024-10-25},
+ version = {0.9.3},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/jsonparse},
url = {https://ctan.org/pkg/jsonparse},
@@ -36975,7 +36996,7 @@
title = {The \texttt{keyparse} package},
subtitle = {Key based parser},
author = {Erwann Rogard},
- date = {2021-08-20},
+ date = {2024-10-25},
version = {1.1},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/keyparse},
@@ -41791,10 +41812,9 @@
@manual{ctan-lshort-japanese,
title = {The \texttt{lshort-japanese} package},
- subtitle = {Japanese version of A Short
- Introduction to \LaTeX{}2e},
+ subtitle = {Japanese version of A Short Introduction to \LaTeX{}2e},
author = {Nomura Masataka},
- date = {2020-06-17},
+ date = {2024-10-25},
license = {gpl},
mirror = {https://mirror.ctan.org/info/lshort/japanese},
url = {https://ctan.org/pkg/lshort-japanese},
@@ -42949,7 +42969,7 @@
title = {The \texttt{LuaMML} package},
subtitle = {Automatically generate MathML from LuaLaTeX math mode material},
author = {Marcel Krüger},
- date = {2024-09-01},
+ date = {2024-10-25},
version = {0.1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/luatex/latex/luamml},
@@ -43822,7 +43842,7 @@
title = {The \texttt{makecell} package},
subtitle = {Tabular column heads and multilined cells},
author = {Olga Lapko},
- date = {2019-08-14},
+ date = {2024-10-25},
version = {0.1e},
license = {lppl},
mirror = {https://mirror.ctan.org/macros/latex/contrib/makecell},
@@ -44453,10 +44473,9 @@
@manual{ctan-match_parens,
title = {The \texttt{match\_parens} package},
- subtitle = {Find mismatches of parentheses, braces, (angle) brackets,
- in texts},
+ subtitle = {Find mismatches of parentheses, braces, (angle) brackets, in texts},
author = {Wybo H. Dekker},
- date = {2023-03-23},
+ date = {2024-10-25},
version = {1.44},
license = {gpl},
mirror = {https://mirror.ctan.org/support/match_parens},
@@ -44668,8 +44687,8 @@
title = {The \texttt{mathfixs} package},
subtitle = {Fix various layout issues in math mode},
author = {Niklas Beisert},
- date = {2024-10-23},
- version = {1.1},
+ date = {2024-10-25},
+ version = {1.11},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/mathfixs},
url = {https://ctan.org/pkg/mathfixs},
@@ -48800,8 +48819,8 @@
title = {The \texttt{naive-ebnf} package},
subtitle = {EBNF in plain text},
author = {Yegor Bugayenko},
- date = {2024-09-06},
- version = {0.0.16},
+ date = {2024-10-25},
+ version = {0.0.17},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/naive-ebnf},
url = {https://ctan.org/pkg/naive-ebnf},
@@ -48844,7 +48863,7 @@
title = {The \texttt{namedtensor} package},
subtitle = {Macros for named tensor notation},
author = {David Chiang},
- date = {2022-12-21},
+ date = {2024-10-25},
version = {0.4},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/namedtensor},
@@ -51300,7 +51319,7 @@
title = {The \texttt{OldStandardT1} package},
subtitle = {Type 1 versions of Old Standard fonts with \LaTeX{} support},
author = {Bob Tennent},
- date = {2018-01-07},
+ date = {2024-10-25},
version = {},
license = {ofl},
mirror = {https://mirror.ctan.org/obsolete/fonts/oldstandardt1},
@@ -51423,7 +51442,7 @@
title = {The \texttt{oops} package},
subtitle = {A framework for making definitions, typically mathematical, inline},
author = {Erwann Rogard},
- date = {2020-04-16},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/obsolete/macros/latex/contrib/oops},
@@ -53295,8 +53314,8 @@
title = {The \texttt{pdflatexpicscale} package},
subtitle = {Support software for downscaling graphics to be included by pdfLaTeX},
author = {Peter Willadt},
- date = {2018-02-12},
- version = {0.32},
+ date = {2024-10-25},
+ version = {0.50},
license = {lppl},
mirror = {https://mirror.ctan.org/support/pdflatexpicscale},
url = {https://ctan.org/pkg/pdflatexpicscale},
@@ -53521,7 +53540,7 @@
title = {The \texttt{pdftex-djgpp} package},
subtitle = {An msdos-djgpp binary of the pdfTeX engine},
author = {Luis Rivera},
- date = {2019-10-05},
+ date = {2024-10-25},
version = {},
license = {gpl2+},
mirror = {https://mirror.ctan.org/systems/msdos/djgpp-contrib/pdftex-djgpp},
@@ -58049,7 +58068,7 @@
title = {The \texttt{pst-rputover} package},
subtitle = {Place text over objects without obscuring background colors},
author = {Thomas Söll and Martin J. Osborne},
- date = {2017-07-01},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/pstricks/contrib/pst-rputover},
@@ -59338,7 +59357,7 @@
title = {The \texttt{qualitype} package},
subtitle = {The QualiType font collection},
author = {Daniel Benjamin Miller},
- date = {2020-01-01},
+ date = {2024-10-25},
version = {},
license = {ofl,gpl2+},
mirror = {https://mirror.ctan.org/fonts/qualitype},
@@ -59960,7 +59979,7 @@
title = {The \texttt{ReadableCV} package},
subtitle = {A highly readable and good looking CV and letter class},
author = {Philip Stone},
- date = {2023-08-19},
+ date = {2024-10-25},
version = {4.0},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/readablecv},
@@ -60626,7 +60645,7 @@
title = {The \texttt{responsive} package},
subtitle = {Responsive design methods for \LaTeX{}},
author = {Michal Hoftich},
- date = {2024-07-14},
+ date = {2024-10-25},
version = {0.1a},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/responsive},
@@ -64420,8 +64439,8 @@
title = {The \texttt{simpleicons} package},
subtitle = {Simple Icons for \LaTeX{}},
author = {Inesh Bose},
- date = {2024-10-18},
- version = {13.14.0},
+ date = {2024-10-25},
+ version = {13.14.1},
license = {cc-by-1},
mirror = {https://mirror.ctan.org/fonts/simpleicons},
url = {https://ctan.org/pkg/simpleicons},
@@ -66450,7 +66469,7 @@
title = {The \texttt{statistics} package},
subtitle = {Compute and typeset statistics tables and graphics},
author = {Julien Rivaud},
- date = {2023-05-17},
+ date = {2024-10-25},
version = {2.2},
license = {gpl3+},
mirror = {https://mirror.ctan.org/macros/latex/contrib/statistics},
@@ -68925,7 +68944,7 @@
title = {The \texttt{testhyphens} package},
subtitle = {Testing hyphenation patterns},
author = {Claudio Beccari},
- date = {2016-06-24},
+ date = {2024-10-25},
version = {0.7},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/testhyphens},
@@ -71720,7 +71739,7 @@
title = {The \texttt{tikz-layers} package},
subtitle = {TikZ provides graphical layers on TikZ: "behind", "above" and "glass"},
author = {Rui Moutinho},
- date = {2019-03-02},
+ date = {2024-10-25},
version = {0.9},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tikz-layers},
@@ -71781,7 +71800,7 @@
title = {The \texttt{tikz-opm} package},
subtitle = {Typeset OPM diagrams},
author = {Torben Hoffmann},
- date = {2016-06-24},
+ date = {2024-10-25},
version = {0.1.1},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tikz-opm},
@@ -71814,7 +71833,7 @@
title = {The \texttt{tikz-page} package},
subtitle = {Small macro to help building nice and complex layout materials},
author = {Sébastien Gross},
- date = {2017-04-18},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tikz-page},
@@ -71867,7 +71886,7 @@
title = {The \texttt{tikz-relay} package},
subtitle = {TikZ library for typesetting electrical diagrams},
author = {Luís Paulo Laus},
- date = {2022-08-07},
+ date = {2024-10-25},
version = {1.3},
license = {lppl1},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tikz-relay},
@@ -74945,7 +74964,7 @@
title = {The \texttt{udes-genie-these} package},
subtitle = {A thesis class file for the Faculté de génie at the Université de Sherbrooke},
author = {Charles-Antoine Brunet},
- date = {2023-09-01},
+ date = {2024-10-25},
version = {3.1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/udes-genie-these},
@@ -76157,10 +76176,9 @@
@manual{ctan-urcls,
title = {The \texttt{urcls} package},
- subtitle = {Beamer and scrlttr2 classes and styles
- for the University of Regensburg},
+ subtitle = {Beamer and scrlttr2 classes and styles for the University of Regensburg},
author = {Marei Peischl},
- date = {2019-02-01},
+ date = {2024-10-25},
version = {2.1},
license = {lppl},
mirror = {https://mirror.ctan.org/macros/latex/contrib/urcls},
@@ -78819,8 +78837,8 @@
title = {The \texttt{xcharter-math} package},
subtitle = {XCharter-based OpenType Math font for LuaTeX and XeTeX},
author = {Daniel Flipo},
- date = {2024-07-10},
- version = {0.63},
+ date = {2024-10-25},
+ version = {0.64},
license = {ofl,lppl1.3c},
mirror = {https://mirror.ctan.org/fonts/xcharter-math},
url = {https://ctan.org/pkg/xcharter-math},
@@ -79117,10 +79135,9 @@
@manual{ctan-xecyrmongolian,
title = {The \texttt{xecyrmongolian} package},
- subtitle = {Basic support for the typesetting of Cyrillic Mongolian
- documents using (Xe|Lua)LaTeX},
+ subtitle = {Basic support for the typesetting of Cyrillic Mongolian documents using (Xe|Lua)LaTeX},
author = {Apostolos Syropoulos},
- date = {2019-12-21},
+ date = {2024-10-25},
version = {1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/language/mongolian/xecyrmongolian},
diff --git a/fonts/concmath-otf/Concrete-Math-Bold.otf b/fonts/concmath-otf/Concrete-Math-Bold.otf
index 82c08659dc..e986312812 100644
--- a/fonts/concmath-otf/Concrete-Math-Bold.otf
+++ b/fonts/concmath-otf/Concrete-Math-Bold.otf
Binary files differ
diff --git a/fonts/concmath-otf/Concrete-Math.otf b/fonts/concmath-otf/Concrete-Math.otf
index 71a1184246..0bc96793d8 100644
--- a/fonts/concmath-otf/Concrete-Math.otf
+++ b/fonts/concmath-otf/Concrete-Math.otf
Binary files differ
diff --git a/fonts/concmath-otf/README.md b/fonts/concmath-otf/README.md
index a8ed1b0fc9..87e8226962 100644
--- a/fonts/concmath-otf/README.md
+++ b/fonts/concmath-otf/README.md
@@ -41,7 +41,7 @@ Version 1.1. This license is available with a FAQ at:
http://scripts.sil.org/OFL
* The other files are distributed under the terms of the LaTeX Project
Public License from CTAN archives in directory macros/latex/base/lppl.txt.
-Either version 1.3 or, at your option, any later version.
+Either version 1.3c or, at your option, any later version.
## Changes
@@ -113,6 +113,11 @@ Either version 1.3 or, at your option, any later version.
- Glyph mfrakZ (U+2128) corrected.
- Concrete-Math-Bold: missing italic correction added for int.up.
- Concrete-Math-Bold: added missing features +ss03, +ss04, +ss05.
+* v0.64:
+ - Added lmoustache, rmoustache (U+23B0, U+23B1).
+ - Added \lgroup (U+27EE), \rgroup (U+27EF), and their vertical extensions.
+ - Overbraces and underbraces resized.
+ - Fixed inconsistency in composed radicals.
---
Copyright 2022-2024 Daniel Flipo
diff --git a/fonts/concmath-otf/concmath-otf.ltx b/fonts/concmath-otf/concmath-otf.ltx
index ddd37fa296..3c63b05fc7 100644
--- a/fonts/concmath-otf/concmath-otf.ltx
+++ b/fonts/concmath-otf/concmath-otf.ltx
@@ -9,7 +9,7 @@
\usepackage{realscripts}
\usepackage{microtype}
\usepackage{hyperref}
-\hypersetup{pdftitle={Concrete-Math OpenType User’s Guide},
+\hypersetup{pdftitle={Concrete Math OpenType User’s Guide},
pdfauthor={Daniel FLIPO},
bookmarksopen,
colorlinks
@@ -24,10 +24,10 @@
\newcommand*{\showmchar}[1]{\cmd{#1}~$(\csname #1\endcsname)$}
\newcommand*{\showmchardollar}[1]{\texttt{\$\cmd{#1}\$}~$(\csname #1\endcsname)$}
-\title{Concrete Math font, OTF version}
+\title{Concrete-Math font, OTF version}
\author{Daniel Flipo \\ \texttt{daniel.flipo@free.fr}}
-\newcommand*{\version}{0.63}
+\newcommand*{\version}{0.64}
\begin{document}
\maketitle
@@ -83,7 +83,7 @@ A (recommended) alternative is:\\[.5\baselineskip]
\verb+ ]{concmath-otf}+\\[.5\baselineskip]
it loads \pkg{unicode-math} with the default options, sets Concrete-Math
as maths font and Concrete text fonts as Roman fonts
-(families \textit{sf} and \textit{tt} left unchanged) but does a bit more:
+(families \textit{sf} and \textit{tt} left unchanged) and does a bit more:
\begin{enumerate}
\item it checks at \verb+\begin{document}+ if packages \pkg{amssymb} or
\pkg{latexsym} are loaded and issues warnings in case they are;
@@ -105,7 +105,7 @@ together with roman text fonts other than Concrete.
\CCM{} provides all glyphs available in the \pkg{concmath}, \pkg{amssymb} and
\pkg{latexsym} packages and more.
-Therefore, these two packages \emph{should not} be loaded as they might
+Therefore, the latter two packages \emph{should not} be loaded as they might
override \CCM{} glyphs.
A full list of available glyphs is shown in file \file{unimath-concrete.pdf}.
@@ -163,8 +163,8 @@ Other possible customisation: $\nabla$ is printed upright and $\partial$ is
printed slanted by default, but \opt{nabla=italic} and
\opt{partial=upright} can change this.
-All these options are offered by the \pkg{unicode-math} package but they can
-be added to the \cmd{setmathfont} call%
+All these options are offered by the \pkg{unicode-math} package, they can
+be added to the \cmd{setmathfont} call as well%
\footnote{IMHO it is easier to add \emph{all options} to the \cmd{setmathfont}
command.}, for example:
@@ -193,7 +193,7 @@ $\symup{α}$, $\symup{β}$, $\symup{Γ}$,… for \cmd{alpha}, \cmd{beta},
\subsection{Character variants}
\label{ssection-cv}
-\CCM{} provides ten ``Character Variants’’ options, listed on
+\CCM{} provides ten ``Character Variants'' options, listed on
table~\vref{cv}, to choose between different glyphs for Greek characters
and some others.
@@ -236,12 +236,12 @@ Similarly with \opt{math-style=french}, \verb+\epsilon+ and \verb+\phi+
are output as $\symup{\varepsilon}$ and $\symup{\varphi}$ (upright).
Please note that curly braces are mandatory whenever more than one
-``Character Variant’’ is selected.
+``Character Variant'' is selected.
Note: \pkg{unicode-math} defines \cmd{hbar} as
\cmd{hslash} (U+210F) while \pkg{amsmath} provides two different glyphs
-(italic h with horizontal or diagonal stroke).\\
-\pkg{concmath-otf} follows \pkg{unicode-math}; the italic h with horizontal
+(italic $h$ with horizontal or diagonal stroke).\\
+\pkg{concmath-otf} follows \pkg{unicode-math}; the italic $h$ with horizontal
stroke can be printed using \cmd{hslash} or \cmd{hbar} together with character
variant \opt{cv01} or with \cmd{mithbar} (replacement for AMS’ command
\cmd{hbar}).
@@ -250,7 +250,7 @@ variant \opt{cv01} or with \cmd{mithbar} (replacement for AMS’ command
\subsection{Stylistic sets}
\label{ssection-ss}
-\CCM{} provides four ``Stylistic Sets’’ options to choose between different
+\CCM{} provides four ``Stylistic Sets'' options to choose between different
glyphs for families of maths symbols.
\verb+StylisticSet=4+, alias%
@@ -368,10 +368,10 @@ variants, see table~\vref{ss03}.
\end{table}
\setmathfont{Concrete-Math.otf}
-\subsection{Standard \LaTeX{} math commands}
+\subsection{Standard LaTeX math commands}
\label{ssec-math-commands}
-All standard \LaTeX{} maths commands, all \pkg{amssymb} commands and all
+All standard LaTeX maths commands, all \pkg{amssymb} commands and all
\pkg{latexsym} commands are supported by \CCM{}, for some of them loading
\pkg{concmath-otf.sty} is required.
@@ -465,7 +465,8 @@ Various wide accents are also supported:
All the extensible arrows provided by the \pkg{mathtools} package are
available in the Concrete Math font (loading \pkg{concmath-otf.sty} is
required), f.i.:
-\[X \xLeftrightarrow{above} Y \xhookrightarrow[under]{} Z\xmapsto{above} W\]
+\[X \xLeftrightarrow{\text{above}} Y \xhookrightarrow[\text{under}]{}
+ Z\xmapsto{\text{above}} W\]
\subsection{Mathematical alphabets}
@@ -515,9 +516,10 @@ $\symfrak{ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz}$
\subsection{Bold variant}
+\setmathfont{Concrete-Math.otf}[BoldFont=Concrete-Math-Bold.otf]
In case short maths formulas have to be printed in section titles,
a \emph{limited} bold variant has been added in version~0.60.
-Example of usage:\\
+Example of usage: \quad\textbf{\boldmath Einstein’s equation $E=mc^2$}\\
\verb+\setmathfont{Concrete-Math-Bold.otf}[version=bold, +\textit{options}\verb+]+
\\
\verb+\section{\mathversion{bold} Einstein’s equation $E=mc^2$}+
@@ -545,7 +547,7 @@ scaling is possible, multiple character ranges are separated with commas:\\
\verb+\setmathfont{Asana-Math.otf}[range={"294A-"2951,"2964,"2ABB-"2ABE}]+
Let’s mention \pkg{albatross}, a useful tool to find out the list of fonts
-providing a given glyph: f.i. type in a terminal ``\texttt{albatross U+2964}’’,
+providing a given glyph: f.i. type in a terminal ``\texttt{albatross U+2964}'',
see the manpage or \file{albatross-manual.pdf}.
\section{Acknowledgements}
diff --git a/fonts/concmath-otf/concmath-otf.pdf b/fonts/concmath-otf/concmath-otf.pdf
index ccfb8b5428..1bc924b388 100644
--- a/fonts/concmath-otf/concmath-otf.pdf
+++ b/fonts/concmath-otf/concmath-otf.pdf
Binary files differ
diff --git a/fonts/concmath-otf/concmath-otf.sty b/fonts/concmath-otf/concmath-otf.sty
index 159646bdf9..c2c1d41e2a 100644
--- a/fonts/concmath-otf/concmath-otf.sty
+++ b/fonts/concmath-otf/concmath-otf.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\def\fileversion{0.63}
-\def\filedate{2024-03-01}
+\def\fileversion{0.64}
+\def\filedate{2024-10-25}
\ProvidesPackage{concmath-otf}[\filedate\space\fileversion]
% Ensure luatex or xetex engine
diff --git a/fonts/concmath-otf/unimath-concrete.pdf b/fonts/concmath-otf/unimath-concrete.pdf
index 20ff9f8ca6..cb638a1ea3 100644
--- a/fonts/concmath-otf/unimath-concrete.pdf
+++ b/fonts/concmath-otf/unimath-concrete.pdf
Binary files differ
diff --git a/fonts/simpleicons/doc/simpleicons.pdf b/fonts/simpleicons/doc/simpleicons.pdf
index c8e97ba641..5ebacede45 100644
--- a/fonts/simpleicons/doc/simpleicons.pdf
+++ b/fonts/simpleicons/doc/simpleicons.pdf
Binary files differ
diff --git a/fonts/simpleicons/doc/simpleicons.tex b/fonts/simpleicons/doc/simpleicons.tex
index 4d49228e51..480b8a5d64 100644
--- a/fonts/simpleicons/doc/simpleicons.tex
+++ b/fonts/simpleicons/doc/simpleicons.tex
@@ -14,7 +14,7 @@
Simple Icons (Font)\\%
Inesh Bose (\LaTeX{} package)%
}
-\date{13.14.0 -- \today}\maketitle
+\date{13.14.1 -- \today}\maketitle
This package provides \LaTeX{} support for the Simple Icons logos.
To use Simple Icons in your document, include the package with |\usepackage{simpleicons}|.
diff --git a/fonts/simpleicons/opentype/SimpleIcons.otf b/fonts/simpleicons/opentype/SimpleIcons.otf
index 188ad45ff8..efeb9f5d57 100644
--- a/fonts/simpleicons/opentype/SimpleIcons.otf
+++ b/fonts/simpleicons/opentype/SimpleIcons.otf
Binary files differ
diff --git a/fonts/simpleicons/tex/simpleicons.sty b/fonts/simpleicons/tex/simpleicons.sty
index f459886f0f..2f2bb11ba4 100644
--- a/fonts/simpleicons/tex/simpleicons.sty
+++ b/fonts/simpleicons/tex/simpleicons.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{simpleicons}[2024/10/18 13.14.0 Simple Icons 13.14.0 Logos]
+\ProvidesPackage{simpleicons}[2024/10/25 13.14.1 Simple Icons 13.14.1 Logos]
\RequirePackage{iftex}
diff --git a/fonts/simpleicons/tex/usimpleiconseight.fd b/fonts/simpleicons/tex/usimpleiconseight.fd
index 58de45538c..353b004619 100644
--- a/fonts/simpleicons/tex/usimpleiconseight.fd
+++ b/fonts/simpleicons/tex/usimpleiconseight.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconseight.fd}[2024/10/18 Font definitions for U/simpleiconseight.]
+ \ProvidesFile{usimpleiconseight.fd}[2024/10/25 Font definitions for U/simpleiconseight.]
\DeclareFontFamily{U}{simpleiconseight}{}
\DeclareFontShape{U}{simpleiconseight}{m}{n}{<-> SimpleIcons--simpleiconseight}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsfive.fd b/fonts/simpleicons/tex/usimpleiconsfive.fd
index 5a385343dc..f2b8d5b87b 100644
--- a/fonts/simpleicons/tex/usimpleiconsfive.fd
+++ b/fonts/simpleicons/tex/usimpleiconsfive.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsfive.fd}[2024/10/18 Font definitions for U/simpleiconsfive.]
+ \ProvidesFile{usimpleiconsfive.fd}[2024/10/25 Font definitions for U/simpleiconsfive.]
\DeclareFontFamily{U}{simpleiconsfive}{}
\DeclareFontShape{U}{simpleiconsfive}{m}{n}{<-> SimpleIcons--simpleiconsfive}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsfour.fd b/fonts/simpleicons/tex/usimpleiconsfour.fd
index 5e6e84c799..9cf9b56823 100644
--- a/fonts/simpleicons/tex/usimpleiconsfour.fd
+++ b/fonts/simpleicons/tex/usimpleiconsfour.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsfour.fd}[2024/10/18 Font definitions for U/simpleiconsfour.]
+ \ProvidesFile{usimpleiconsfour.fd}[2024/10/25 Font definitions for U/simpleiconsfour.]
\DeclareFontFamily{U}{simpleiconsfour}{}
\DeclareFontShape{U}{simpleiconsfour}{m}{n}{<-> SimpleIcons--simpleiconsfour}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsnine.fd b/fonts/simpleicons/tex/usimpleiconsnine.fd
index 1018b154f8..cf76687430 100644
--- a/fonts/simpleicons/tex/usimpleiconsnine.fd
+++ b/fonts/simpleicons/tex/usimpleiconsnine.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsnine.fd}[2024/10/18 Font definitions for U/simpleiconsnine.]
+ \ProvidesFile{usimpleiconsnine.fd}[2024/10/25 Font definitions for U/simpleiconsnine.]
\DeclareFontFamily{U}{simpleiconsnine}{}
\DeclareFontShape{U}{simpleiconsnine}{m}{n}{<-> SimpleIcons--simpleiconsnine}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsone.fd b/fonts/simpleicons/tex/usimpleiconsone.fd
index ffbbb9ab27..c4b58a589f 100644
--- a/fonts/simpleicons/tex/usimpleiconsone.fd
+++ b/fonts/simpleicons/tex/usimpleiconsone.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsone.fd}[2024/10/18 Font definitions for U/simpleiconsone.]
+ \ProvidesFile{usimpleiconsone.fd}[2024/10/25 Font definitions for U/simpleiconsone.]
\DeclareFontFamily{U}{simpleiconsone}{}
\DeclareFontShape{U}{simpleiconsone}{m}{n}{<-> SimpleIcons--simpleiconsone}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsoneone.fd b/fonts/simpleicons/tex/usimpleiconsoneone.fd
index e8ab7a4c57..8e8cdf4a32 100644
--- a/fonts/simpleicons/tex/usimpleiconsoneone.fd
+++ b/fonts/simpleicons/tex/usimpleiconsoneone.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsoneone.fd}[2024/10/18 Font definitions for U/simpleiconsoneone.]
+ \ProvidesFile{usimpleiconsoneone.fd}[2024/10/25 Font definitions for U/simpleiconsoneone.]
\DeclareFontFamily{U}{simpleiconsoneone}{}
\DeclareFontShape{U}{simpleiconsoneone}{m}{n}{<-> SimpleIcons--simpleiconsoneone}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsonethree.fd b/fonts/simpleicons/tex/usimpleiconsonethree.fd
index 9f280eb64c..3a9740cebc 100644
--- a/fonts/simpleicons/tex/usimpleiconsonethree.fd
+++ b/fonts/simpleicons/tex/usimpleiconsonethree.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsonethree.fd}[2024/10/18 Font definitions for U/simpleiconsonethree.]
+ \ProvidesFile{usimpleiconsonethree.fd}[2024/10/25 Font definitions for U/simpleiconsonethree.]
\DeclareFontFamily{U}{simpleiconsonethree}{}
\DeclareFontShape{U}{simpleiconsonethree}{m}{n}{<-> SimpleIcons--simpleiconsonethree}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsonetwo.fd b/fonts/simpleicons/tex/usimpleiconsonetwo.fd
index 2d7df5feff..159b23f656 100644
--- a/fonts/simpleicons/tex/usimpleiconsonetwo.fd
+++ b/fonts/simpleicons/tex/usimpleiconsonetwo.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsonetwo.fd}[2024/10/18 Font definitions for U/simpleiconsonetwo.]
+ \ProvidesFile{usimpleiconsonetwo.fd}[2024/10/25 Font definitions for U/simpleiconsonetwo.]
\DeclareFontFamily{U}{simpleiconsonetwo}{}
\DeclareFontShape{U}{simpleiconsonetwo}{m}{n}{<-> SimpleIcons--simpleiconsonetwo}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsonezero.fd b/fonts/simpleicons/tex/usimpleiconsonezero.fd
index d17836d8dd..cb39ffded4 100644
--- a/fonts/simpleicons/tex/usimpleiconsonezero.fd
+++ b/fonts/simpleicons/tex/usimpleiconsonezero.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsonezero.fd}[2024/10/18 Font definitions for U/simpleiconsonezero.]
+ \ProvidesFile{usimpleiconsonezero.fd}[2024/10/25 Font definitions for U/simpleiconsonezero.]
\DeclareFontFamily{U}{simpleiconsonezero}{}
\DeclareFontShape{U}{simpleiconsonezero}{m}{n}{<-> SimpleIcons--simpleiconsonezero}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsseven.fd b/fonts/simpleicons/tex/usimpleiconsseven.fd
index d8807a7497..93b1223cb7 100644
--- a/fonts/simpleicons/tex/usimpleiconsseven.fd
+++ b/fonts/simpleicons/tex/usimpleiconsseven.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsseven.fd}[2024/10/18 Font definitions for U/simpleiconsseven.]
+ \ProvidesFile{usimpleiconsseven.fd}[2024/10/25 Font definitions for U/simpleiconsseven.]
\DeclareFontFamily{U}{simpleiconsseven}{}
\DeclareFontShape{U}{simpleiconsseven}{m}{n}{<-> SimpleIcons--simpleiconsseven}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconssix.fd b/fonts/simpleicons/tex/usimpleiconssix.fd
index fdfb130a47..d9ca3f175d 100644
--- a/fonts/simpleicons/tex/usimpleiconssix.fd
+++ b/fonts/simpleicons/tex/usimpleiconssix.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconssix.fd}[2024/10/18 Font definitions for U/simpleiconssix.]
+ \ProvidesFile{usimpleiconssix.fd}[2024/10/25 Font definitions for U/simpleiconssix.]
\DeclareFontFamily{U}{simpleiconssix}{}
\DeclareFontShape{U}{simpleiconssix}{m}{n}{<-> SimpleIcons--simpleiconssix}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconsthree.fd b/fonts/simpleicons/tex/usimpleiconsthree.fd
index 5246135872..783184b1a9 100644
--- a/fonts/simpleicons/tex/usimpleiconsthree.fd
+++ b/fonts/simpleicons/tex/usimpleiconsthree.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsthree.fd}[2024/10/18 Font definitions for U/simpleiconsthree.]
+ \ProvidesFile{usimpleiconsthree.fd}[2024/10/25 Font definitions for U/simpleiconsthree.]
\DeclareFontFamily{U}{simpleiconsthree}{}
\DeclareFontShape{U}{simpleiconsthree}{m}{n}{<-> SimpleIcons--simpleiconsthree}{}
\endinput
diff --git a/fonts/simpleicons/tex/usimpleiconstwo.fd b/fonts/simpleicons/tex/usimpleiconstwo.fd
index d73cd58396..37133d0df8 100644
--- a/fonts/simpleicons/tex/usimpleiconstwo.fd
+++ b/fonts/simpleicons/tex/usimpleiconstwo.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconstwo.fd}[2024/10/18 Font definitions for U/simpleiconstwo.]
+ \ProvidesFile{usimpleiconstwo.fd}[2024/10/25 Font definitions for U/simpleiconstwo.]
\DeclareFontFamily{U}{simpleiconstwo}{}
\DeclareFontShape{U}{simpleiconstwo}{m}{n}{<-> SimpleIcons--simpleiconstwo}{}
\endinput
diff --git a/fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm b/fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
index 5155bb4472..8c68a440db 100644
--- a/fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
+++ b/fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
Binary files differ
diff --git a/fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm b/fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm
index 8e864665ee..76c351848e 100644
--- a/fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm
+++ b/fonts/simpleicons/tfm/SimpleIcons--simpleiconsonezero.tfm
Binary files differ
diff --git a/fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm b/fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm
index c8527d3f4c..37e18d0788 100644
--- a/fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm
+++ b/fonts/simpleicons/tfm/SimpleIcons--simpleiconsthree.tfm
Binary files differ
diff --git a/fonts/simpleicons/type1/SimpleIcons.pfb b/fonts/simpleicons/type1/SimpleIcons.pfb
index 74d9918fde..e75fc3165d 100644
--- a/fonts/simpleicons/type1/SimpleIcons.pfb
+++ b/fonts/simpleicons/type1/SimpleIcons.pfb
Binary files differ
diff --git a/fonts/xcharter-math/README.md b/fonts/xcharter-math/README.md
index dd290bb8dc..ac0b674ed6 100644
--- a/fonts/xcharter-math/README.md
+++ b/fonts/xcharter-math/README.md
@@ -113,6 +113,12 @@ Either version 1.3c or, at your option, any later version.
* v0.63:
- Added lmoustache, rmoustache (U+23B0, U+23B1).
- Superscripts BbbE.st and BbbE.sst fixed (U+EA04, U+ED04).
+* v0.64:
+ - Added missing \rightcurvedarrow (U+2933) \leftcurvedarrow (U+2B3F)
+ and glyphs U+2334 to U+2937.
+ - Fixed height of 'over' arrows.
+ - Added \lgroup (U+27EE), \rgroup (U+27EF), and their vertical extensions.
+ - Overbraces and underbraces resized.
---
Copyright 2022-2024 Daniel Flipo
diff --git a/fonts/xcharter-math/XCharter-Math-Bold.otf b/fonts/xcharter-math/XCharter-Math-Bold.otf
index 8c44cef058..6fa1d1530a 100644
--- a/fonts/xcharter-math/XCharter-Math-Bold.otf
+++ b/fonts/xcharter-math/XCharter-Math-Bold.otf
Binary files differ
diff --git a/fonts/xcharter-math/XCharter-Math.ltx b/fonts/xcharter-math/XCharter-Math.ltx
index 09ba452346..535c8d504f 100644
--- a/fonts/xcharter-math/XCharter-Math.ltx
+++ b/fonts/xcharter-math/XCharter-Math.ltx
@@ -34,7 +34,7 @@
\title{\decofourleft\,\XCotf\,\decofourright}
\author{Daniel Flipo \\ \texttt{daniel.flipo@free.fr}}
-\newcommand*{\version}{0.63}
+\newcommand*{\version}{0.64}
\begin{document}
\maketitle
@@ -605,10 +605,10 @@ from another maths font if needed, i.e.
\setmathfont{XCharter-Math.otf}[BoldFont=XCharter-Math-Bold.otf]
In case short maths formulas have to be printed in section titles,
-a \emph{limited} bold variant has been added in version~0.35.
-Example of usage: \quad\textbf{\boldmath Einstein’s equation $E=mc^2$}\\
+a \emph{limited} bold variant has been added.
+Example of usage: \textbf{\boldmath Einstein’s equation $E=mc^2$}\\
\verb+\setmathfont{XCharter-Math-Bold.otf}[version=bold, +\textit{options}\verb+]+\\
-\verb+\section{\mathversion{bold} Einstein’s equation $E=mc^2$}+
+\verb+\section{\mathversion{bold}Einstein’s equation $E=mc^2$}+
It is also possible to use the \verb+\boldmath+ command:\\
\verb+\setmathfont{XCharter-Math.otf}[BoldFont=XCharter-Math-Bold.otf]+\\
diff --git a/fonts/xcharter-math/XCharter-Math.otf b/fonts/xcharter-math/XCharter-Math.otf
index 36818253de..c3cdb78212 100644
--- a/fonts/xcharter-math/XCharter-Math.otf
+++ b/fonts/xcharter-math/XCharter-Math.otf
Binary files differ
diff --git a/fonts/xcharter-math/XCharter-Math.pdf b/fonts/xcharter-math/XCharter-Math.pdf
index 501ffbff4c..647d9fc72b 100644
--- a/fonts/xcharter-math/XCharter-Math.pdf
+++ b/fonts/xcharter-math/XCharter-Math.pdf
Binary files differ
diff --git a/fonts/xcharter-math/unimath-xcharter.pdf b/fonts/xcharter-math/unimath-xcharter.pdf
index a375861be9..51a316d0b6 100644
--- a/fonts/xcharter-math/unimath-xcharter.pdf
+++ b/fonts/xcharter-math/unimath-xcharter.pdf
Binary files differ
diff --git a/fonts/xcharter-math/xcharter-otf.sty b/fonts/xcharter-math/xcharter-otf.sty
index 12f4ecab35..a8fc24c864 100644
--- a/fonts/xcharter-math/xcharter-otf.sty
+++ b/fonts/xcharter-math/xcharter-otf.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\def\fileversion{0.63}
-\def\filedate{2024-07-10}
+\def\fileversion{0.64}
+\def\filedate{2024-10-25}
\ProvidesPackage{xcharter-otf}[\filedate\space\fileversion]
% Ensure luatex or xetex engine
diff --git a/macros/latex/contrib/algxpar/README.md b/macros/latex/contrib/algxpar/README.md
index 717f316923..6a967b1438 100644
--- a/macros/latex/contrib/algxpar/README.md
+++ b/macros/latex/contrib/algxpar/README.md
@@ -2,12 +2,12 @@
This package extends the algorithmicx package (algpseudocode) to support multiline text.
## How to use
-Copy `algxpar.sty` and `*.kw.tex` from `src` to somewhere in your TeX path.
+Copy `algxpar.sty` and `*.kw.tex` to somewhere in your TeX path.
-**Important**: as `algxpar` is included in the CTAN/Tex Live distribution, make sure this versions comes first in the search path when outdated.
+From CTAN: https://ctan.org/pkg/algxpar (check version!)
## Licence
-Copyright (C) 2019-2023 by Jander Moreira (moreira.jander@gmail.com)
+Copyright (C) 2019-2024 by Jander Moreira (moreira.jander@gmail.com)
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
@@ -23,12 +23,8 @@ The Current Maintainer of this work is Jander Moreira.
Files to use the package:
* algxpar.sty
-* algxpar-english.kw.tex
-* algxpar-brazilian.kw.tex
+* algxpar-*.kw.tex (keywords)
-Manual:
-* algxpar-doc.pdf .
-
-Files to compile the manual (requires `pygmentize`)
+Manual (requires `pygmentize`):
* algxpar-doc.tex
-* algxpar-lzw.tex
+* algxpar-versionchanges.sty
diff --git a/macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex b/macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex
index 899c01b903..a697a48be6 100644
--- a/macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex
+++ b/macros/latex/contrib/algxpar/algxpar-brazilian.kw.tex
@@ -4,8 +4,8 @@
description = Descrição,
input = Entrada,
output = Saída,
- require = {Pré-condição},
- ensure = {Pós-condição},
+ require = {Requer},
+ ensure = {Assegura},
end = fim,
if = se,
then = então,
@@ -30,6 +30,8 @@
function = função,
procedure = procedimento,
return = retorne,
+ byref = ref,
+ byvalue = val,
true = Verdadeiro,
false = Falso,
nil = Nil,
diff --git a/macros/latex/contrib/algxpar/algxpar-doc.pdf b/macros/latex/contrib/algxpar/algxpar-doc.pdf
index 04c22e9193..b8270427b7 100644
--- a/macros/latex/contrib/algxpar/algxpar-doc.pdf
+++ b/macros/latex/contrib/algxpar/algxpar-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/algxpar/algxpar-doc.tex b/macros/latex/contrib/algxpar/algxpar-doc.tex
index c864162f1e..ca7c9ba0bb 100644
--- a/macros/latex/contrib/algxpar/algxpar-doc.tex
+++ b/macros/latex/contrib/algxpar/algxpar-doc.tex
@@ -8,7 +8,6 @@
\usepackage{amsmath}
\usepackage{textcomp}
\usepackage[all]{nowidow}
-\usepackage{tikz}
% \usepackage{array}
@@ -44,11 +43,11 @@
\makeindex
% minted
-\usepackage[outputdir = ../out]{minted}
+\usepackage[outputdir = ./out]{minted}
% \usemintedstyle{borland}
\newminted{latex}{autogobble, breaklines, bgcolor = blue!5, fontsize = \footnotesize}
\newmintinline{latex}{}
-%
+
% tcolorbox
\usepackage{tcolorbox}
\usepackage{color}
@@ -69,6 +68,33 @@
listing engine = minted,
}
+% Versions
+\usepackage{algxpar-versionchanges}
+
+
+\begin{filecontents}[overwrite, nosearch, noheader]{algxpar-lzw.tex}
+ \begin{algorithmic}[1]
+ \Description LZW Compression using a table with all known sequences of bytes.
+ \Input A flow of bytes
+ \Output A flow of bits with the compressed representation of the input bytes
+ \Statex
+ \Statep{Initialize a table with all bytes}[each position of the table has a single byte]
+ \Statep{Initilize \Id{sequence} with the first byte in the input flow}
+ \While{there are bytes in the input}[wait until all bytes are processed]
+ \Statep{Get a single byte from input and store it in \Id{byte}}
+ \If{the concatention of \Id{sequence} and \Id{byte} is in the table}
+ \Statep{Set \Id{sequence} to $\Id{sequence} + \Id{byte}$}[concatenate without producing any output]
+ \Else
+ \Statep{Output the code for \Id{sequence}}[i.e., the binary representation of its position in the table]
+ \Statep{Add the concatention of \Id{sequence} and \Id{byte} to the table}[the table learns a longer sequence]
+ \Statep{Set \Id{sequence} to \Id{byte}}[starts a new sequence with the remaining byte]
+ \EndIf
+ \EndWhile
+ \Statep{Output the code for \Id{sequence}}[the remaining sequence of bits]
+ \end{algorithmic}
+\end{filecontents}
+
+
%% Text support
% macro arguments formats
@@ -173,7 +199,9 @@
[
title = {%
\hspace{-2em}\OptionInd{#1}%
- \ifdim\docassignment>0pt\Option{ = #2}\fi%
+ \ifdim
+ \docassignment>0pt\Option{ = #2}
+ \fi%
\IfValueT{#3}{\hfill\textit{Default:} \Option{#3}}
},
description,
@@ -198,6 +226,7 @@
\medskip%
}
+
%% Repetitive text
\NewDocumentCommand{\MacroOptionsText}{}{%
Any \Argument{options} specified uniquely affect this macro.%
@@ -210,10 +239,10 @@
\title{%
The \PackageName{algxpar} package\thanks{This document corresponds to \PackageName{algxpar}~v\AlgVersion, dated \AlgDate.
- This text was last revised \today.}%
+ This text was last compiled \today.}%
}
-\author{Jander Moreira \texttt{moreira.jander@gmail.com}}
-\date{June 26, 2023}
+\author{Jander Moreira -- \texttt{moreira.jander@gmail.com}}
+\date{October 23, 2024}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -228,6 +257,12 @@
\tableofcontents
+\VCRegisterVersion{0.9}{2019-11-12}
+\VCRegisterVersion{0.91}{2020-08-01}
+\VCRegisterVersion{0.99}{2023-06-28}
+\VCRegisterVersion{0.99.1}{2024/05/05}
+\VCRegisterVersion{0.99.2}{2024/10/23}
+
\begin{figure}
\tcbinputlisting{listing file = algxpar-lzw.tex, listing only}
\vspace{3em}
@@ -242,6 +277,8 @@
% \changes{v0.91}{2020/06/14}{New macro for assignments, using $\gets$}
% \changes{v0.91}{2020/06/14}{New macro for assignments (verbose)}
+\VCPrintChanges
+
\section{Introduction}
I teach algorithms and programming and have adopted the \PackageName{algorithmicx} package (\PackageName{algpseudocode}) for writing my algorithms as it provides clear and easy to read pseudocodes with minimal effort to get a visually pleasing code.
@@ -252,6 +289,24 @@ The consequence of more verbose pseudocode leads, however, to longer sentences t
The \PackageName{algorithmx} and \PackageName{algpseudocode} packages do not natively support multi-line statements. This package therefore extends several macros to handle multiple lines correctly. Some new commands and a number of features have also been added.
+This package was first released as V0.9%
+\VCChange[disable]{
+ type = released,
+ version = 0.9,
+ description = Initial version,
+}%
+and almost totally rewritten in v0.99%
+\VCChange[disable]{
+ type = new,
+ version = 0.99,
+ description = The code was reviewd and almost entirely rewritten,
+}.
+\VCChange[disable]{
+ type = new,
+ version = 0.99.2,
+ description = Part of the code was rewritten using \PackageName{etoolbox}.,
+}.
+
\section{Package usage and options}\label{sec:package-usage-and-options}
This package depends on the following packages:
@@ -261,11 +316,12 @@ This package depends on the following packages:
\PackageName{algorithmicx} & (\url{https://ctan.org/pkg/algorithmicx}) \\
\PackageName{algpseudocode} & (\url{https://ctan.org/pkg/algorithmicx}) \\
\PackageName{amssymb} & (\url{https://ctan.org/pkg/amsfonts}) \\
- \PackageName{fancyvrb} & (\url{https://ctan.org/pkg/fancyvrb}) \\
+ \PackageName{etoolbox} & (\url{https://ctan.org/pkg/etoolbox}) \\
+ % \PackageName{fancyvrb} & (\url{https://ctan.org/pkg/fancyvrb}) \\
\PackageName{pgfmath} & (\url{https://ctan.org/pkg/pgf}) \\
\PackageName{pgfopts} & (\url{https://ctan.org/pkg/pgf}) \\
\PackageName{ragged2e} & (\url{https://ctan.org/pkg/ragged2e}) \\
- \PackageName{tcolorbox} & (\url{https://www.ctan.org/pkg/tcolorbox}) \\
+ % \PackageName{tcolorbox} & (\url{https://www.ctan.org/pkg/tcolorbox}) \\
\PackageName{varwidth} & (\url{https://www.ctan.org/pkg/varwidth}) \\
\PackageName{xcolor} & (\url{https://www.ctan.org/pkg/xcolor}) \\
\end{tabular}
@@ -275,7 +331,6 @@ This package depends on the following packages:
To use the package, simply request its use in the preamble of the document.
\begin{macro*}{usepackage}{\OArg{package options list}}[algxpar]
-
Currently, the list of package options includes the following.
\begin{option*}{\Argument{language name}}
@@ -307,11 +362,11 @@ To use the package, simply request its use in the preamble of the document.
\begin{option*}{\Option{noend}}
The \OptionInd{noend} suppresses the line that indicates the end of a block, keeping the indentation.
- See more information in \OptionRef{end} and \OptionInd{noend} options.
+ See more information in \OptionRef{end} and \OptionRef{noend} options.
\end{option*}
\begin{latexcode}
- % Supresses all end-lines that close a block
+ % Suppresses all end-lines that close a block
\usepackage[noend]{algxpar}
\end{latexcode}
\end{macro*}
@@ -338,7 +393,7 @@ An algorithm is composed of instructions and control structures such as conditio
\end{tcblisting}
\subsection{A preamble on comments}\label{sec:a-preamble-on-comments}
-This is the Euclid's algorithm as provided in the \PackageName{algorithmicx} package documentation\footnote{A label was supressed here.}.
+This is the Euclid's algorithm as provided in the \PackageName{algorithmicx} package documentation\footnote{A label was suppressed here.}.
\begingroup
%! formatter = off
@@ -383,8 +438,19 @@ Until \PackageName{algxpar} v0.95, they could be added as an optional parameter
\endgroup
%! formatter = on
-Using the comment before the text always bothered me somewhat, as it seemed more natural to put it after. Thus, as of v0.99, the comment can be placed after the text (as the second parameter of the macro), certainly making writing algorithms more user-friendly. To maintain backward compatibility, the use of comments before text is still supported, although it is discouraged.
-
+Using the comment before the text always bothered me somewhat, as it seemed more natural to put it after.
+\VCChange{
+ type = new,
+ version = 0.99,
+ description = Optional comments may be specified after the command
+}%
+Thus, as of v0.99, the comment can be placed after the text (as the second parameter of the macro), certainly making writing algorithms more user-friendly. To maintain backward compatibility, the use of comments before text is still supported, although it is discouraged.
+
+\VCChange{
+ type = new,
+ version = 0.99,
+ description = Lines that closes blocks can have comments
+}%
In addition to this change, the use of comments in the new format has been extended to most pseudocode macros, such as \MacroRef{EndWhile} for example.
%! formatter = off
@@ -398,7 +464,7 @@ In addition to this change, the use of comments in the new format has been exten
\State $a\gets b$
\State $b\gets r$
\State $r\gets a\bmod b$
- \EndWhile[end loop] % <-- Comment
+ \EndWhile[end of the loop] % <-- Comment
\Statep{\Keyword{return} $b$}[The gcd is b] % <-- Comment
\EndProcedure
\end{algorithmic}
@@ -413,6 +479,11 @@ Throughout this documentation, former style comments are denoted as \Argument{co
See more about comments in \cref{sec:comments}.
\subsection{A preamble on options}\label{sec:a-preamble-on-options}
+\VCChange{
+ type = new,
+ version = 0.99,
+ description = {The ``look and feel'' of the pseudocode can be set in the \Macro{begin}\latexinline{{algorithmic}}}
+}[Preamble options]%
As of version 0.99, a list of options can be added to each command, changing some algorithm presentation settings. These settings are optional and must be entered using angle brackets at the end of the command.
%! formatter = off
@@ -666,7 +737,12 @@ A few macros for well known constants were defined: \MacroDef{True} (\True), \Ma
The macro \Macro{Id} was created to handle ``program-like'' named identifiers, such as \Id{sum}, \Id{word\_counter} and so on.
\begin{macro}{Id}[\MArg{identifier}]
- Identifiers are in italics: \latexinline!\Id{value}! is \Id{value}. Its designed to work in both text and math modes: \latexinline!$\Id{offer}_k$! is $\Id{offer}_k$.
+ \VCChange{
+ type = updated,
+ version = 0.91,
+ description = {\Macro{Id} has been recoded to work in both text and math modes, preventing hyphenation},
+ }[\Macro{Id}]
+ Identifiers are emphasised: \latexinline!\Id{value}! is \Id{value}. Its designed to work in both text and math modes: \latexinline!$\Id{offer}_k$! is $\Id{offer}_k$.
\end{macro}
\subsection{Assignments and I/O}\label{sec:assignments-and-i/o}
@@ -681,23 +757,43 @@ To support teaching-like, basic pseudocode writing, the macros \MacroDef{Read} a
\end{algorithmic}
\end{tcblisting}
-The macro \Macro{Set} can be used for assignments.
+The \Macro{Set} macro, although obsolete, can be used for assignments.
\begin{macro}{Set}[\MArg{lvalue}\MArg{expression} \Deprecated]
+ \VCChange{
+ type = new,
+ version = 0.91,
+ %! parser = off
+ description = {\Macro{Set} can be used for assignments (deprecated in v0.99)},
+ %! parser = on
+ }[\Macro{Set}]%
This macro expands to \MacroRef{Id}\latexinline!{#1} \gets #2!.
- As the handling of text and math modes should be done and its usage brings no evident advantage, this macro will no longer be supported. It will be kept as is for backward compatibility however.
+ this macro will no longer be supported. It will be kept as is for backward compatibility however.
+ \VCChange{
+ type = deprecated,
+ version = 0.99,
+ description = {\Macro{Set} is deprecated and will no longer be supported},
+ }[\Macro{Set}]%
+ As the handling of text and math modes should be done and its usage brings no evident advantage,
+
+ \VCChange{
+ type = removed,
+ version = 0.99,
+ description = {\Macro{Setl} has been removed from the package},
+ }[\Macro{Setl}]%
+ The macro \MacroRefInd{Setl} has been removed.
\end{macro}
\subsection{Procedures and Functions}\label{sec:procedures-and-functions}
Modularization uses \Macro{Procedure} or \Macro{Function}.
+%! formatter = off
\begin{tcblisting}{}
\begin{algorithmic}
- \Procedure{SaveNode}{\Id{node}}
- [saves a B\textsuperscript{+}-tree node to disk]
+ \Procedure{SaveNode}{\Id{node}}[saves a B\textsuperscript{+}-tree node to disk]
\If{\Id{node}.\Id{is\_modified}}
- \If{$\Id{node}.\Id{address} == -1$}
+ \If{$\Id{node}.\Id{address} = -1$}
\Statep{Set file writting position after file's last byte}[creates a new node on disk]
\Else
\Statep{Set file writting position to \Id{node}.\Id{address}}[updates the node]
@@ -720,7 +816,7 @@ Modularization uses \Macro{Procedure} or \Macro{Function}.
\EndFunction
\end{algorithmic}
\end{tcblisting}
-
+%! formatter = on
\begin{macro}{Procedure}[\MArg{name}\MArg{argument list}\OArg{comment}\LArg{options}]
This macro creates a \Keyword{procedure} block that must be ended with \MacroRef{EndProcedure}.
@@ -822,17 +918,17 @@ A series of macros are defined to provide the header documentation for a pseudoc
\end{tcblisting}
\begin{macro}{Description}
- [~\Argument{description text}]
+[~\Argument{description text}]
The \Macro{Description} is intended to hold the general description of the pseudocode.
\end{macro}
\begin{macro}{Require}
- [~\Argument{pre-conditions}]
+[~\Argument{pre-conditions}]
The required initial state that the code relies on. These are \textit{pre-conditions}.
\end{macro}
\begin{macro}{Ensure}
- [~\Argument{post-conditions}]
+[~\Argument{post-conditions}]
The final state produced by the code. These are \textit{post-conditions}.
\end{macro}
@@ -845,11 +941,11 @@ A series of macros are defined to provide the header documentation for a pseudoc
\end{tcblisting}
\begin{macro}{Input}
- [~\Argument{inputs}]
+[~\Argument{inputs}]
This works as an alternative to \MacroRef{Require}, presenting \Keyword{input}.
\end{macro}
\begin{macro}{Output}
- [~\Argument{outputs}]
+[~\Argument{outputs}]
This works as an alternative to \MacroRef{Ensure}, presenting \Keyword{output}.
\end{macro}
@@ -937,9 +1033,77 @@ Sometimes some settings need to be applied exclusively to one command, for examp
%! formatter = on
\subsection{Options}\label{sec:options}
+\VCChange{
+ type = new,
+ version = 0.99,
+ description = {Added support to style the main components of the pseudocode, such as keywords, comments and text and widths}
+}[Options]%
This section presents the options that can be specified for the algorithms, either using \MacroRef{AlgSet} or the \Argument{options} parameter of the various macros.
-\begin{option}{language}{\Argument{language}}[english]
+\begin{option}{indent lines}{\Option{true} | \Option{false}}[true]
+ \VCChange{
+ type = new,
+ version = 0.99.1,
+ description = Added experimental support to show vertical indentantion lines,
+ }[\Option{indent lines}]%
+ With \Option{indent lines} vertical indentation lines are displayed in the pseudocode. This feature only works correctly if the start and end of the block are on the same page and at least two compilation steps are required for the lines to be positioned correctly.
+
+ To change the style for the lines, use \OptionRef{line style}
+
+ \textit{This feature is still experimental and incomplete.}
+\end{option}
+
+%! formatter = off
+\begin{tcblisting}{}
+ \begin{algorithmic}<indent lines>
+ \For{$i \gets 0$ \To $N - 1$}
+ \For{$j \gets$ \To $N - 1$}
+ \If{$m_{ij} < 0$}
+ \Statep{$m_{ij} \gets 0$}
+ \EndIf
+ \EndFor
+ \EndFor
+ \end{algorithmic}
+
+ \begin{algorithmic}<indent lines, noend>
+ \For{$i \gets 0$ \To $N - 1$}
+ \For{$j \gets$ \To $N - 1$}
+ \If{$m_{ij} < 0$}
+ \Statep{$m_{ij} \gets 0$}
+ \EndIf
+ \EndFor
+ \EndFor
+ \end{algorithmic}
+\end{tcblisting}
+%! formatter = on
+
+\begin{option}{line style}{\Argument{style}}
+ \VCChange{
+ suppress,
+ version = 0.99.1,
+ description = SUPRESSED???,
+ }[\Option{line style}]%
+ Almost anything Ti\emph{k}Z can apply to a line can be used to set the indentation lines.
+
+ To show indentation lines in algorithms, \OptionRef{indent lines} must be set to true.
+\end{option}
+
+%! formatter = off
+\begin{tcblisting}{}
+ \begin{algorithmic}<indent lines, line style = {orange, dotted, -latex, ultra thick}>
+ \For{$i \gets 0$ \To $N - 1$}
+ \For{$j \gets$ \To $N - 1$}
+ \If{$m_{ij} < 0$}
+ \Statep{$m_{ij} \gets 0$}
+ \EndIf
+ \EndFor
+ \EndFor
+ \end{algorithmic}
+\end{tcblisting}
+%! formatter = on
+
+
+\begin{option}{language}{\Argument{language}}
This key is used to choose the keyword language set for the current scope. The language keyword set should already have been loaded through the package options (see \cref{sec:package-usage-and-options}).
\end{option}
@@ -950,23 +1114,24 @@ This section presents the options that can be specified for the algorithms, eith
The result is similar to a program written in Python.
\end{option}
+
\begin{option}{end}{}
- This option reverses the behaviour of \OptionRef{end}, and the closing line of a block presented.
+ This option reverses the behaviour of \OptionRef{noend}, and the closing line of a block presented.
\end{option}
+%! formatter = off
\begin{tcblisting}{}
- \begin{algorithmic}
- <noend>
+ \begin{algorithmic}<noend>
\For{$i \gets 0$ \To $N - 1$}
\For{$j \gets$ \To $N - 1$}
- \If{$m_{ij} < 0$}
- <end>
+ \If{$m_{ij} < 0$}<end>
\Statep{$m_{ij} \gets 0$}
\EndIf
\EndFor
\EndFor
\end{algorithmic}
\end{tcblisting}
+%! formatter = on
\begin{option}{keywords}{\Argument{list of keywords assignments}}
This option allows to change a keyword (or define a new one). See \cref{sec:languages-and-translations} for more information on keywords and translations.
@@ -991,19 +1156,19 @@ This section presents the options that can be specified for the algorithms, eith
\end{tcblisting}
%! formatter = on
-\begin{option}{algorithmic indent}{\Argument{width}}[1em]
+\begin{option}{algorithmic indent}{\Argument{width}}
The algorithmic indent is the amount of horizontal space used for indentation inner commands.
This option actually sets the \PackageName{algorithmicx}'s \Macro{algorithmicindent}.
\end{option}
-\begin{option}{comment symbol}{\Argument{symbol}}[\Macro{triangleright}]
+\begin{option}{comment symbol}{\Argument{symbol}}
The default symbol that preceeds the text in comments is \Macro{triangleright} (\CommentSymbol), as used by \PackageName{algorithmicx}, and can be changed with this key.
The current comment symbol is available with \MacroDef{CommentSymbol}. Do not change this symbol by redefining \Macro{CommentSymbol}, as font, shape and color settings will no longer be respected. Always use \Option{comment symbol}.
\end{option}
-\begin{option}{comment symbol right}{\Argument{symbol}}[\Macro{triangleleft}]
+\begin{option}{comment symbol right}{\Argument{symbol}}
This is the symbol that closes a \MacroRef{CommentIn}. This symbol is set to \CommentSymbolRight\ and can be retrieved with the \MacroDef{CommentSymbolRight} macro. Do not attempt to change the symbol by redefining \Macro{CommentSymbolRight}, as font, shape and color settings will no longer be respected. Always use \Option{comment symbol right}.
\end{option}
@@ -1012,25 +1177,25 @@ The options ins this section allows setting font family, shape, weight and size
Notice that color are handled separately (see \cref{sec:colors}) and using \Macro{color} with font options will tend to break the document.
-\begin{option}{text font}{\Argument{font, shape and size}}[\Empty]
+\begin{option}{text font}{\Argument{font, shape and size}}
This setting corresponds to the font family, its shape and size and applies to the \Argument{text} field in each of the commands.
\end{option}
-\begin{option}{comment font}{\Argument{font, shape and size}}[\Macro{slshape}]
+\begin{option}{comment font}{\Argument{font, shape and size}}
This setting corresponds to the font family, its shape and size and applies to all comments.
\end{option}
-\begin{option}{keyword font}{\Argument{font, shape and size}}[\Macro{bfseries}]
+\begin{option}{keyword font}{\Argument{font, shape and size}}
This setting sets the font family, shape, and size, and applies to all keywords, such as \Keyword{function} or \Keyword{end}.
\end{option}
-\begin{option}{constant font}{\Argument{font, shape and size}}[\Macro{scshape}]
+\begin{option}{constant font}{\Argument{font, shape and size}}
This setting sets the font family, shape, and size, and applies to all constants, such as \Nil, \True\ and \False.
This setting also applies when \MacroRef{Constant} is used.
\end{option}
-\begin{option}{module font}{\Argument{font, shape and size}}[\Macro{scshape}]
+\begin{option}{module font}{\Argument{font, shape and size}}
This setting sets the font family, shape, and size, and applies to both procedure and function identifiers, as well as their callings with \MacroRef{Call}.
\end{option}
@@ -1038,31 +1203,32 @@ Notice that color are handled separately (see \cref{sec:colors}) and using \Macr
Colors are defined using the \PackageName{xcolors} package.
\begin{option}{text color}{\Argument{color}}
- [.\mbox{\normalfont\normalcolor\normalsize~(dot)}]
This setting corresponds to the color that applies to the \Argument{text} field in each of the commands.
\end{option}
-\begin{option}{comment color}{\Argument{color}}[.!70]
+\begin{option}{comment color}{\Argument{color}}
This setting corresponds to the color that applies to all comments.
\end{option}
\begin{option}{keyword color}{\Argument{color}}
- [.\mbox{\normalfont\normalcolor\normalsize~(dot)}]
This key is used to set the color for all keywords.
\end{option}
\begin{option}{constant color}{\Argument{color}}
- [.\mbox{\normalfont\normalcolor\normalsize~(dot)}]
This setting corresponds to the color that applies to the defined constant (see \cref{sec:constants-and-identifiers}) and also when macro \MacroRef{Constant} is used.
\end{option}
\begin{option}{module color}{\Argument{color}}
- [.\mbox{\normalfont\normalcolor\normalsize~(dot)}]
This color is applied to the identifier used in both \MacroRef{Procedure} and \MacroRef{Function} definitions, as well as module calls with \MacroRef{Call}. Notice that the arguments use \Option{text color}.
\end{option}
\subsubsection{Paragraphs}
Multi-line support are internally handled by \Macro{parbox}es.
+\VCChange{
+ type = updated,
+ version = 0.99.2,
+ description = {Wrong spacing between parboxes were fixed.}
+}
\medskip
%! formatter = off
@@ -1084,23 +1250,23 @@ Multi-line support are internally handled by \Macro{parbox}es.
\medskip
The options in this section should be used to set how these paragraphs will be presented.
-\begin{option}{text style}{\Argument{style}}[\Macro{RaggedRight}]
+\begin{option}{text style}{\Argument{style}}
This \Argument{style} is applied to the paragraph box that holds the \Argument{text} field in all commands.
\end{option}
-\begin{option}{comment style}{\Argument{style}}[\Macro{RaggedRight}]
+\begin{option}{comment style}{\Argument{style}}
This \Argument{style} is applied to the paragraph box that holds the \Argument{comment} field in all algorithmic commands. This setting will not be used with \MacroRef{Comment}, \MacroRef{Commentl} or \MacroRef{CommentIn}.
\end{option}
-\begin{option}{comment separator width}{\Argument{width}}[1em]
+\begin{option}{comment separator width}{\Argument{width}}
The minimum space between the text box and the \Macro{CommentSymbol}. This affects the available space in a line for keywords, text and comment.
\end{option}
-\begin{option}{statement indent}{\Argument{width}}[1em]
+\begin{option}{statement indent}{\Argument{width}}
This is the \Macro{hangindent} set inside \MacroRef{Statep} statements.
\end{option}
-\begin{option}{comment width}{\Option{auto}|\Option{nice}|\Argument{width}}[auto]
+\begin{option}{comment width}{\Option{auto}|\Option{nice}|\Argument{width}}
There are two ways to balance the lengths of \Argument{text} and \Argument{comments} on a line, each providing different visual experiences.
In automatic mode (\Option{auto}), the balance is chosen considering the widths that the actual text and comment have, trying to reduce the total number of lines, given there is not enough space in a single line for the keywords, text , comment and comment symbol. The consequence is that each line with a comment will have its own balance.
@@ -1116,6 +1282,11 @@ The options in this section should be used to set how these paragraphs will be p
\end{comment}
\subsection{Languages and translations}\label{sec:languages-and-translations}
+\VCChange{
+ type = new,
+ version = 0.99,
+ description = {New mechanism to translation with separate files for each language},
+}[Languages]%
A simple mechanism is employed to allow keywords to be translated into other languages.
%! formatter = off
@@ -1173,11 +1344,17 @@ The mechanism behind \MacroRef{AlgLanguageSet} uses the \Macro{SetKeyword} macro
\begin{tcblisting}{}
\SetKeyword[german]{if}{wenn} % new
- Depending on the language, a keyword can take different forms: \Keyword{if} (English), \Keyword[german]{if} (german) or \Keyword[brazilian]{if} (Brazilian Portuguese).
+ Depending on the language, a keyword can take different forms: \Keyword{if} (English), \Keyword[german]{if} (German) or \Keyword[brazilian]{if} (Brazilian Portuguese).
\end{tcblisting}
\subsection{Other features}
+\VCChange{
+ version = 0.99,
+ description = Added support to style named constants and function/procedures identifiers,
+}[Features]%
+These macros were added to support the styles defined for named constants and function and procedure identifiers.
+
\begin{macro}{Constant}[\OArg{name}]
This macro presents \Argument{name} using font, shape, size and color defined for constants.
\end{macro}
@@ -1187,6 +1364,16 @@ The mechanism behind \MacroRef{AlgLanguageSet} uses the \Macro{SetKeyword} macro
\end{macro}
+\section{``Forgotten'' features}
+
+\VCChange{
+ type = removed,
+ version = 0.99,
+ description = {Macros \Macro{TextString} and \Macro{VisibleSpace} accidentally removed},
+}
+Some features were forgotten from v0.91 to v.99, although it was not intentional. The macros \Macro{TextString} and \Macro{VisibleSpace} simply vanished into thin air.
+
+
\section{To do}
This is a \textit{todo} list:
\begin{itemize}
@@ -1213,7 +1400,7 @@ This is a \textit{todo} list:
comment width = nice,
comment style = \raggedleft,
}
-\input{algxpar-lzw}
+\input{algxpar-lzw.tex}
\endgroup
\subsection{LZW revisited again}
@@ -1225,6 +1412,7 @@ This is a \textit{todo} list:
text font = \itshape,
comment font = \footnotesize,
algorithmic indent = 1.5em,
+ indent lines,
noend,
}
\end{latexcode}
@@ -1235,9 +1423,10 @@ This is a \textit{todo} list:
text font = \itshape,
comment font = \footnotesize,
algorithmic indent = 1.5em,
+ indent lines,
noend,
}
-\input{algxpar-lzw}
+\input{algxpar-lzw.tex}
\endgroup
diff --git a/macros/latex/contrib/algxpar/algxpar-english.kw.tex b/macros/latex/contrib/algxpar/algxpar-english.kw.tex
index 55505ff5e6..58fce1f354 100644
--- a/macros/latex/contrib/algxpar/algxpar-english.kw.tex
+++ b/macros/latex/contrib/algxpar/algxpar-english.kw.tex
@@ -30,6 +30,8 @@
function = function,
procedure = procedure,
return = return,
+ byref = byref,
+ byvalue = byvalue,
true = True,
false = False,
nil = Nil,
diff --git a/macros/latex/contrib/algxpar/algxpar-lzw.tex b/macros/latex/contrib/algxpar/algxpar-lzw.tex
deleted file mode 100644
index 37fd820c5f..0000000000
--- a/macros/latex/contrib/algxpar/algxpar-lzw.tex
+++ /dev/null
@@ -1,19 +0,0 @@
-\begin{algorithmic}[1]
- \Description LZW Compression using a table with all known sequences of bytes.
- \Input A flow of bytes
- \Output A flow of bits with the compressed representation of the input bytes
- \Statex
- \Statep{Initialize a table with all bytes}[each position of the table has a single byte]
- \Statep{Initilize \Id{sequence} with the first byte in the input flow}
- \While{there are bytes in the input}[wait until all bytes are processed]
- \Statep{Get a single byte from input and store it in \Id{byte}}
- \If{the concatention of \Id{sequence} and \Id{byte} is in the table}
- \Statep{Set \Id{sequence} to $\Id{sequence} + \Id{byte}$}[concatenate without producing any output]
- \Else
- \Statep{Output the code for \Id{sequence}}[i.e., the binary representation of its position in the table]\label{alg:lzw:output}
- \Statep{Add the concatention of \Id{sequence} and \Id{byte} to the table}[the table learns a longer sequence]\label{alg:lzw:add-to-table}
- \Statep{Set \Id{sequence} to \Id{byte}}[starts a new sequence with the remaining byte]
- \EndIf
- \EndWhile
- \Statep{Output the code for \Id{sequence}}[the remaining sequence of bits]
-\end{algorithmic} \ No newline at end of file
diff --git a/macros/latex/contrib/algxpar/algxpar-versionchanges.sty b/macros/latex/contrib/algxpar/algxpar-versionchanges.sty
new file mode 100644
index 0000000000..22aa4f21c1
--- /dev/null
+++ b/macros/latex/contrib/algxpar/algxpar-versionchanges.sty
@@ -0,0 +1,404 @@
+%! Package = versionchanges
+%! Author = Jander Moreira
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{versionchanges}[2024/05/03 v0.1 This package provides means to track changes to a document]
+\NewDocumentCommand{\VCVersion}{}{0.1}
+\NewDocumentCommand{\VCDate}{}{2024/05/03}
+
+\RequirePackage{pgfkeys}
+\RequirePackage{multicol}
+\RequirePackage{ragged2e}
+\RequirePackage{todonotes}
+
+\setlength{\marginparwidth}{2cm}
+\RequirePackage{marginnote}
+\let\marginpar\marginnote
+
+%% Options
+\pgfkeys{
+ /version changes/.cd,
+ version prefix/.store in = \vc@VersionPrefix,
+ version style/.store in = \vc@VersionStyle,
+ change style/.store in = \vc@ChangeStyle,
+}
+
+\NewDocumentCommand{\VCSet}{ > { \TrimSpaces } m }{%
+ \pgfkeys{
+ /version changes/.cd,
+ #1,
+ }%
+}
+
+\VCSet{
+ version prefix = {v},
+ version style = \bfseries\footnotesize,
+ change style = \footnotesize\RaggedRight,
+}
+
+% defaults
+
+
+%% Internal commands
+\ExplSyntaxOn
+
+% StepChangeCounter: proceeds to a new change
+\int_zero_new:N \g_vc_change_counter_int
+\NewDocumentCommand{\vc@StepChangeCounter}{}{
+ \int_gadd:Nn \g_vc_change_counter_int { 1 }
+}
+\NewDocumentCommand{\vc@CurrentChangeCounter}{}{
+ \int_use:N \g_vc_change_counter_int
+}
+
+% SetChangeAttribute: sets the an attribute of the current change record
+% #1: attribute
+% #2: value
+\cs_new:Npn \set_change_attribute:nn #1#2 {
+ \tl_clear_new:c { g_vc_change_ \int_use:N \g_vc_change_counter_int _#1_tl }
+ \tl_gset:cn { g_vc_change_ \int_use:N \g_vc_change_counter_int _#1_tl } { #2 }
+}
+\NewDocumentCommand{\vc@SetChangeAttribute}{ m m }{
+ \set_change_attribute:nn { #1 } { #2 }
+}
+
+% SetChangeAttributeExpanded: sets the an attribute of the current change record
+% #1: attribute
+% #2: value
+\NewDocumentCommand{\vc@SetChangeAttributeExpanded}{ m m }{
+ \exp_args:Nnf \set_change_attribute:nn { #1 } { #2 }
+}
+
+% GetChangeInfo: returns the field of a change
+% #1: number of the change
+% #2: field
+% #3: (optional) sets macro instead of returning value
+\NewDocumentCommand{\vc@GetChangeInfo}{ m m o }{
+ \IfValueTF{#3}{
+ \tl_set:Nx #3 { \tl_use:c { g_vc_change_#1_#2_tl } }
+ }{
+ \tl_use:c { g_vc_change_#1_#2_tl }
+ }
+}
+
+% SetMacroChangeInfo: sets a macro with the field of a change
+% #1: macro
+% #2: number of the change
+% #3: field
+\NewDocumentCommand{\vc@SetMacroChangeInfo}{ m m m }{
+ \tl_clear_new:N #1
+ \exp_args:NNc \tl_set:NV #1 { g_vc_change_#2_#3_tl }
+}
+
+% RunChangesList: apply a macro to each change of a version
+% #1: version
+% #2: macro with a single mandatory argument
+\NewDocumentCommand{\vc@RunChangesList}{ m m }{
+ \seq_map_inline:cn { g_version_#1_seq } { #2 { ##1 } }
+}
+
+
+% RegisterVersion: add a version to the list os versions if it doesn't exist
+% #1: version
+\seq_new:N \g_vc_versions_list_seq
+\cs_new:Npn \register_version:nn #1#2 {
+ \seq_if_in:NnTF \g_vc_versions_list_seq { #1 } { } {% else
+ \seq_put_right:Nn \g_vc_versions_list_seq { #1 }
+ \tl_clear_new:c { g_vc_version_#1_date_tl }
+ \tl_gset:cn { g_vc_version_#1_date_tl } { #2 }
+ \seq_new:c { g_version_#1_seq }
+ }
+}
+\NewDocumentCommand{\VCRegisterVersion}{ m m }{
+ \register_version:nn { #1 } { #2 }
+}
+
+% VersionDate: returns the date of a version OR sets a macro
+% with its (expanded) value
+% #1: version
+% #2: (optional) macro to store the value
+\NewDocumentCommand{\vc@VersionDate}{ m o }{
+ \IfValueTF{#2}{
+ \tl_set:Nx #2 { \tl_use:c { g_vc_version_#1_date_tl } }
+ }{
+ \tl_use:c { g_vc_version_#1_date_tl }
+ }
+}
+
+
+% AddChangeToVersion: add a change reference to the list of the version
+% (a new list will be created if necessary)
+% #1: version
+\cs_new:Npn \add_change_to_version:n #1 {
+ % Add a reference (change number) to the list
+ % \tl_clear_new:N \l_change_number_tl
+ % \exp_args:NNe \tl_set:Nn \l_change_number_tl { \int_use:N \g_vc_change_counter_int }
+ \exp_args:Nco \seq_gput_right:Nn { g_version_#1_seq } { \int_use:N \g_vc_change_counter_int }
+}
+\NewDocumentCommand{\vc@AddChangeToVersion}{ }{
+ \add_change_to_version:n {
+ \tl_use:c { g_vc_change_ \int_use:N \g_vc_change_counter_int _version_tl }
+ }
+}
+
+
+% RunVersionList: apply a macro to each version of the list
+% #1: macro with a single mandatory argument
+\NewDocumentCommand{\vc@RunVersionList}{ m }{
+ \seq_map_inline:Nn \g_vc_versions_list_seq { #1 { ##1 } }
+}
+
+\ExplSyntaxOff
+
+%%
+
+\newif\ifvc@SuppressInListing\vc@SuppressInListingfalse
+\pgfkeys{
+ /version changes/changes/.cd,
+ version/.code = {\vc@SetChangeAttribute{version}{#1}},
+% date/.code = {\vc@SetChangeAttribute{date}{#1}},
+ description/.code = {\vc@SetChangeAttribute{description}{#1}},
+ page/.code = {\vc@SetChangeAttributeExpanded{page}{#1}},
+ suppress/.is if = vc@SuppressInListing,
+ type/.is choice,
+ type/released/.code = {\vc@SetChangeAttribute{type}{Released}},
+ type/new/.code = {\vc@SetChangeAttribute{type}{New in}},
+ type/updated/.code = {\vc@SetChangeAttribute{type}{Updated in}},
+ type/removed/.code = {\vc@SetChangeAttribute{type}{Removed in}},
+ type/deprecated/.code = {\vc@SetChangeAttribute{type}{Deprecated in}},
+ .unknown/.code = {\pgfkeysalso{type = \pgfkeyscurrentname}},
+}
+
+% #1: (optional) todonotes options
+% #2: text
+\NewDocumentCommand{\vc@MarginNote}{ O{} > { \TrimSpaces } m }{%
+ \todo[bordercolor = blue!20, backgroundcolor = blue!10,
+ linecolor = blue!20, tickmarkheight = 0.2ex, size = \tiny,
+ noline, #1]{%
+ #2
+ }%
+}
+
+% Change: records a change
+% #1: (optional) todonotes options
+% #2: comma-separated list with change description
+\NewDocumentCommand{\VCChange}{ O{} > { \TrimSpaces } m o }{%
+ \vc@StepChangeCounter%
+ \pgfkeys{
+ /version changes/changes/.cd,
+ suppress = false,
+ type = new,
+ page = \thepage,
+ #2,
+ }%
+ \hspace{0pt}%
+ \vc@AddChangeToVersion%
+ %! formatter = off
+ \ifvc@SuppressInListing% starred VCPrintChange?
+ \vc@SetChangeAttribute{star}{*}%
+ \else
+ \vc@SetChangeAttribute{star}{}%
+ \fi%
+ %! formatter = on
+ \vc@SetChangeAttributeExpanded{label}{\vc@CurrentChangeCounter}%
+ \vc@GetChangeInfo{\vc@CurrentChangeCounter}{label}[\vc@InfoResult]%
+ \expandafter\label\expandafter{\vc@InfoResult:change}%
+ \vc@MarginNote[#1]{%
+ \IfValueT{#3}{\textbf{#3}:\\}%
+ \vc@GetChangeInfo{\vc@CurrentChangeCounter}{type}
+ \vc@VersionPrefix\vc@GetChangeInfo{\vc@CurrentChangeCounter}{version}%
+ }%
+}
+
+%%
+
+% Internal commands
+\ExplSyntaxOn
+
+% Reading from file
+\ior_new:N \g_vc_input_io
+
+% LoadFile: reads a previous compiled version changes
+\cs_new:Nn \load_file: {
+ \tl_clear_new:N \g_vc_file_contents_tl
+ \ior_open:NnTF \g_vc_input_io { \jobname.vcind } {
+ \ior_map_inline:Nn \g_vc_input_io {
+ \tl_gput_right:Nn \g_vc_file_contents_tl { ##1 }
+ }
+ }{}
+}
+\NewDocumentCommand{\vc@LoadChanges}{}{
+ \load_file:
+}
+\NewDocumentCommand{\vc@FileContentsNotEmpty}{ +m }{
+ \tl_if_empty:NTF \g_vc_file_contents_tl {} {
+ #1
+ }
+}
+
+% File contents
+\NewDocumentCommand{\vc@FileContents}{}{
+ \tl_use:N \g_vc_file_contents_tl
+}
+
+% Writing to file
+\iow_new:N \g_vc_output_io
+\tl_new:N \g_vc_output_buffer_tl
+
+% OpenFile: open file for writing
+\NewDocumentCommand{\vc@OpenFile}{ }{
+ \iow_open:Nn \g_vc_output_io { \jobname.vcind }
+}
+
+% CloseFile: close file
+\NewDocumentCommand{\vc@CloseFile}{ }{
+ \iow_close:N \g_vc_output_io
+}
+
+% WriteBuffer: write to file
+\cs_generate_variant:Nn \iow_now:Nn { NV }
+\NewDocumentCommand{\vc@WriteBuffer}{ }{
+ \iow_now:NV \g_vc_output_io \g_vc_output_buffer_tl
+ \tl_clear:N \g_vc_output_buffer_tl
+}
+
+\NewDocumentCommand{\vc@AddToBuffer}{ +m }{
+ \tl_gput_right:Nn \g_vc_output_buffer_tl { #1 }
+}
+
+\cs_generate_variant:Nn \tl_gput_right:Nn { Nx }
+\NewDocumentCommand{\vc@AddCharToBuffer}{ m }{
+ \tl_gput_right:Nx \g_vc_output_buffer_tl { \iow_char:N #1 }
+}
+\ExplSyntaxOff
+
+% WriteVersionChange: write to file a single change
+% #1: change number
+\NewDocumentCommand{\vc@WriteVersionChange}{ m }{%
+ \vc@AddToBuffer{ \VCPrintChange}%
+ \vc@SetMacroChangeInfo{\vc@InfoResult}{#1}{star}%
+ \expandafter\vc@AddToBuffer\expandafter{\vc@InfoResult}%
+ % version number
+ \vc@AddCharToBuffer{\{}%
+ \vc@SetMacroChangeInfo{\vc@InfoResult}{#1}{description}%
+ \expandafter\vc@AddToBuffer\expandafter{\vc@InfoResult}%
+ \vc@AddCharToBuffer{\}}%
+ % date
+ \vc@AddCharToBuffer{\{}%
+ \vc@SetMacroChangeInfo{\vc@InfoResult}{#1}{page}%
+ \expandafter\vc@AddToBuffer\expandafter{\vc@InfoResult}%
+ \vc@AddCharToBuffer{\}}%
+ % label
+ \vc@AddCharToBuffer{\{}%
+ \vc@SetMacroChangeInfo{\vc@InfoResult}{#1}{label}%
+ \expandafter\vc@AddToBuffer\expandafter{\vc@InfoResult}%
+ \vc@AddCharToBuffer{\}}%
+ \vc@WriteBuffer
+}
+
+\NewDocumentCommand{\vc@WriteVersion}{ m }{%
+%! parser = off
+ \vc@AddToBuffer{\begin{vcversionitem}}%
+ %! parser = on
+ \vc@AddCharToBuffer{\{}%
+ \vc@AddToBuffer{#1}%
+ \vc@AddCharToBuffer{\}}%
+ \vc@AddCharToBuffer{\{}%
+ \vc@VersionDate{#1}[\vc@InfoResult]%
+ \expandafter\vc@AddToBuffer\expandafter{\vc@InfoResult}%
+ \vc@AddCharToBuffer{\}}%
+ \vc@WriteBuffer
+ \vc@RunChangesList{#1}{\vc@WriteVersionChange}%
+%! parser = off
+ \vc@AddToBuffer{\end{vcversionitem}}%
+ %! parser = on
+ \vc@WriteBuffer
+}
+
+\NewDocumentCommand{\vc@SaveChanges}{}{%
+ \vc@OpenFile%
+ \vc@RunVersionList{\vc@WriteVersion}%
+ \vc@WriteBuffer
+ \vc@CloseFile%
+}
+
+\NewDocumentCommand{\VCPrintChanges}{ O{} }{%
+ \vc@FileContentsNotEmpty{
+ \VCSet{#1}
+ \section*{Change History}
+ \begin{multicols}{2}
+ \vc@FileContents%
+ \end{multicols}
+ }
+}
+
+%% Printing the list of changes
+\NewDocumentEnvironment{vcversionitem}{ m m }{%
+ \par\noindent%
+ {\vc@VersionStyle\vc@VersionPrefix#1 (#2)}
+ \vspace*{0.2em}\par%
+ \begingroup%
+ \setlength{\tabcolsep}{0pt}%
+ \vc@ChangeStyle%
+ }{%
+ \endgroup%
+ \vspace{0.5em}%
+}
+
+\newlength{\vc@PageNumberWidth}
+\setlength{\vc@PageNumberWidth}{1cm}
+\NewDocumentCommand{\VCPrintChange}{ s m m m }{%
+ \IfBooleanF{#1}{%
+ \hspace{0.25cm}%
+ \parbox[b]{\dimexpr \linewidth - \vc@PageNumberWidth - 0.25cm}{%
+ \setlength{\hangindent}{0.7cm}#2\dotfill%
+ }\hspace{-0.05cm}\dotfill~\hspace{0.05cm}\hyperref[#4:change]{#3}%
+ \par\vspace{0.5em}
+ }
+}
+
+%% Version numbering
+\ExplSyntaxOn
+
+\tl_new:N \g_vc_prefix_text_tl
+\tl_new:N \g_vc_number_tl % todo: turn to int?
+\tl_new:N \g_vc_suffix_text_tl
+\regex_new:N \g_versioning_regex
+\regex_set:Nn \g_versioning_regex { [^\.]+ }
+\regex_new:N \g_subversioning_regex
+\regex_set:Nn \g_subversioning_regex { ([^\d]*)(\d+)(.*) }
+
+\cs_new:Npn \subversioning_check:n #1 {
+ \seq_clear_new:N \l_subparts_seq
+ \regex_extract_all:NnNTF \g_subversioning_regex { #1 } \l_subparts_seq {
+ \tl_gset:Nx \g_vc_prefix_text_tl { \seq_item:Nn \l_subparts_seq {2} }
+ \tl_gset:Nx \g_vc_number_tl { \seq_item:Nn \l_subparts_seq {3} }
+ \tl_gset:Nx \g_vc_suffix_text_tl { \seq_item:Nn \l_subparts_seq {4} }
+ }{
+ \tl_gset:Nx \g_vc_prefix_text_tl { #1 }
+ \tl_gclear:N \g_vc_number_tl
+ \tl_gclear:N \g_vc_suffix_text_tl
+ }
+}
+\cs_new:Npn \versioning_check:n #1 {
+ \seq_clear_new:N \l_parts_seq
+ \regex_extract_all:NnN \g_versioning_regex { #1 } \l_parts_seq
+ \seq_map_inline:Nn \l_parts_seq {
+ \subversioning_check:n { ##1 }
+ <<(\tl_use:N \g_vc_prefix_text_tl)
+ (\tl_use:N \g_vc_number_tl)
+ (\tl_use:N \g_vc_suffix_text_tl)>>
+ }
+}
+\NewDocumentCommand{\VCVersioningCheck}{ m }{
+ \par\noindent[\texttt{#1}:~\versioning_check:n { #1 }]\bigskip\par
+}
+
+\ExplSyntaxOff
+
+% Hooks
+\AtBeginDocument{%
+ \reversemarginpar%
+ \vc@LoadChanges%
+}
+\AtEndDocument{\vc@SaveChanges} \ No newline at end of file
diff --git a/macros/latex/contrib/algxpar/algxpar.sty b/macros/latex/contrib/algxpar/algxpar.sty
index 3da15d9415..e5ffa55b56 100644
--- a/macros/latex/contrib/algxpar/algxpar.sty
+++ b/macros/latex/contrib/algxpar/algxpar.sty
@@ -2,12 +2,14 @@
%! Author: Jander Moreira
%! Email = moreira.jander@gmail.com
+%! suppress = FileNotFound
+
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
-\ProvidesPackage{algxpar}[2023/06/26 v0.99 Algorithms with multi-line/paragraph support and some enhancements]
+\ProvidesPackage{algxpar}[2024/10/23 v0.99.2 Algorithms with multi-line/paragraph support and some enhancements]
%% Documentation
-\NewDocumentCommand{\AlgVersion}{}{0.99}
-\NewDocumentCommand{\AlgDate}{}{2023/06/26}
+\NewDocumentCommand{\AlgVersion}{}{0.99.2}
+\NewDocumentCommand{\AlgDate}{}{2024/10/23}
%% Required packages
@@ -20,7 +22,10 @@
\RequirePackage{amssymb}
\RequirePackage{pgfmath}
\RequirePackage{varwidth}
-\RequirePackage{ifthen}
+% \RequirePackage{ifthen}
+\RequirePackage{tikz}
+\usetikzlibrary{calc, arrows}
+\RequirePackage{etoolbox}
% \RequirePackage{listings} % to load verbatim with tabs
% \RequirePackage{tcolorbox} % to save verbatim
@@ -90,17 +95,26 @@
}
-% RenewFullyExpandedDocumentCommand: fully expands argument before
+% axp@RenewFullyExpandedDocumentCommand: fully expands argument before
% renewing document command
% #1: macro
% #2: value
-\NewDocumentCommand{\RenewFullyExpandedDocumentCommand} { m m }{
+\NewDocumentCommand{\axp@RenewFullyExpandedDocumentCommand} { m m }{
\exp_args:NNnV \RenewDocumentCommand #1 { } { #2 }
}
\ExplSyntaxOff
+%% Settings
+\newif\ifaxp@NoEnd\axp@NoEndfalse % whether line with 'end' is used or not
+\newif\ifaxp@IsStatement\axp@IsStatementfalse % set in \Statep
+\newif\ifaxp@ShowBoxes\axp@ShowBoxesfalse % show parboxes for debugging
+\newif\ifaxp@LineBalanceAuto % true for 'auto'; false for 'fixed'
+\newif\ifaxp@IndentLines\axp@IndentLinesfalse % draw lines in blocks
+
+
\NewDocumentCommand{\axp@DisableEnds}{}{%
+ \axp@NoEndtrue%
\RenewDocumentCommand{\ALG@noend}{}{t}%
\algtext*{EndWhile}%
\algtext*{EndFor}%
@@ -114,6 +128,7 @@
}
\NewDocumentCommand{\axp@EnableEnds}{}{%
+ \axp@NoEndfalse%
\RenewDocumentCommand{\ALG@noend}{}{f}%
\algrenewtext{EndWhile}{\Keyword{endwhile}}%
\algrenewtext{EndFor}{\Keyword{endfor}}%
@@ -127,19 +142,12 @@
}
\axp@EnableEnds % update end-line texts
-%% Settings
-\newif\ifaxp@NoEnd\axp@NoEndfalse % whether line with 'end' is used or not
-\newif\ifaxp@IsStatement\axp@IsStatementfalse % set in \Statep
-\newif\ifaxp@ShowBoxes\axp@ShowBoxesfalse % show parboxes for debugging
-\newif\ifaxp@LineBalanceAuto % true for 'auto'; false for 'fixed'
-
%% General options
-%! formatter = off
\pgfkeys{
/algxpar/options/.cd,
- % language
+% language
language/.store in = \axp@Language,
- % styles
+% styles
text font/.store in = \axp@TextFont,
text color/.store in = \axp@TextColor,
text style/.store in = \axp@TextStyle,
@@ -152,24 +160,27 @@
constant color/.store in = \axp@ConstantColor,
module font/.store in = \axp@ModuleFont,
module color/.store in = \axp@ModuleColor,
- %
+%
comment symbol/.store in = \axp@CommentSymbol,
comment symbol right/.store in = \axp@CommentSymbolRight,
comment separator width/.store in = \axp@CommentSeparatorWidth,
- %
+%
noend/.code = {\axp@DisableEnds},
no end/.code = {\axp@DisableEnds},
end/.code = {\axp@EnableEnds},
- %
- % keywords/.code = {\pgfkeysalso{/algxpar/languages/.cd, \trim@spaces{#1}}},
+%
+% keywords/.code = {\pgfkeysalso{/algxpar/languages/.cd, \trim@spaces{#1}}},
keywords/.code = {\axp@LanguageSet{#1}},
- %
+%
algorithmic indent/.store in = \algorithmicindent,
statement indent/.store in = \axp@StatementIndent,
parameter indent/.store in = \axp@ParameterIndent,
- %
+%
+ indent lines/.is if = axp@IndentLines,
+ line style/.code = {\tikzset{line style/.style = {#1}}},
+%
show boxes/.is if = axp@ShowBoxes,
- %
+%
comment width/.code = {%
\axp@LineBalanceAutotrue%
\ifthenelse{\equal{auto}{#1}}{%
@@ -183,8 +194,9 @@
}%
}%
},
+%
+% style/.style = {\pgfkeysalso{/algxpar/styles/#}},
}
-%! formatter = on
\NewDocumentCommand{\AlgSet}{ > { \TrimSpaces } m }{%
\pgfkeys{%
@@ -194,6 +206,14 @@
}
+% %% Styles
+% \NewDocumentCommand{\AlgStyle}{ > { \TrimSpaces } m > { \TrimSpaces m }{%
+% \pgfkeys{
+% /algxpar/style/.cd,
+% #1/.style = {#2}
+% }
+% }
+
%% Languages and translations
\pgfkeys{
/algxpar/languages/.cd,
@@ -201,11 +221,11 @@
}
\NewDocumentCommand{\AlgLanguageSet}{ > { \TrimSpaces } m > { \TrimSpaces } m }{%
- \AlgSet{language = #1}
+ \AlgSet{language = #1}%
\pgfkeys{
/algxpar/languages/.cd,
#2
- }
+ }%
}
\NewDocumentCommand{\axp@LanguageSet}{ > { \TrimSpaces } m }{%
\pgfkeys{
@@ -238,6 +258,8 @@
algorithmic indent = 1.5em,
statement indent = 1em,
parameter indent = 0pt,
+ indent lines = false,
+ line style = {lightgray, thick},
show boxes = false,
comment width = auto,
}
@@ -249,9 +271,8 @@
language/.store in = \axp@Language,
noend/.is if = axp@NoEnd,
.unknown/.code = {
- %! suppress = FileNotFound
+ \axp@RenewFullyExpandedDocumentCommand{\axp@Language}{\pgfkeyscurrentname}
\input{algxpar-\pgfkeyscurrentname.kw}
- \RenewFullyExpandedDocumentCommand{\axp@Language}{\pgfkeyscurrentname}
}
}
\pgfkeys{
@@ -295,16 +316,74 @@
% #3: text after token
\newlength{\axp@TokenWidth}
\NewDocumentCommand{\axp@MakeSingleToken}{ m m m }{%
- \settowidth{\axp@TokenWidth}{#2}%
- \ifdim\axp@TokenWidth>0pt\relax#1\fi%
+ \axp@SetToWidth{\axp@TokenWidth}{#2}%
+ \ifdimcomp{\axp@TokenWidth}{>}{0pt}{#1}{}%
#2%
- \ifdim\axp@TokenWidth>0pt\relax#3\fi%
+ \ifdimcomp{\axp@TokenWidth}{>}{0pt}{#3}{}%
}
\newif\ifaxp@NoCommentPresent
\newlength{\axp@TextWidth}
\newlength{\axp@CommentWidth}
+%%%%%%%% LINES
+
+\NewDocumentCommand{\axp@MarkLineBegin}{}{%
+ \ifbool{axp@IndentLines}{%
+ \stepcounter{axp@BlockLevelCounter}%
+ \tikz[remember picture] \coordinate (axp-block-start-\theaxp@BlockLevelCounter) (0, 0);%
+ % \tikz[remember picture, overlay] \draw[<-] (axp-block-start-\theaxp@BlockLevelCounter) -- ++ (-4em, 0.5ex) node[anchor = east] {B:\theaxp@BlockLevelCounter};%
+ }{}%
+}%
+
+\NewDocumentCommand{\axp@MarkLineEndShort}{}{%
+ \ifbool{axp@IndentLines}{%
+ \tikz[remember picture] \coordinate (axp-block-end-\theaxp@BlockLevelCounter) (0, 0);%
+ \begin{tikzpicture}[remember picture, overlay]
+ \draw[line style]
+ ($ (axp-block-start-\theaxp@BlockLevelCounter) + (0.3ex, -1ex) $)
+ --
+ ($ (axp-block-end-\theaxp@BlockLevelCounter) + (0.3ex, 1em) $);
+ \end{tikzpicture}%
+ \addtocounter{axp@BlockLevelCounter}{-1}%
+ }%
+}
+
+\NewDocumentCommand{\axp@MarkLineEndCont}{}{%
+ \ifbool{axp@IndentLines}{%
+ \tikz[remember picture] \coordinate (axp-block-end-\theaxp@BlockLevelCounter) (0, 0);%
+ \begin{tikzpicture}[remember picture, overlay]
+ \draw[line style]
+ ($ (axp-block-start-\theaxp@BlockLevelCounter) + (0.3ex, -1ex) $)
+ --
+ ($ (axp-block-end-\theaxp@BlockLevelCounter) + (0.3ex, 1em) $);
+ \end{tikzpicture}%
+ \addtocounter{axp@BlockLevelCounter}{-1}%
+ }%
+}
+
+\NewDocumentCommand{\axp@MarkLineEndFinal}{}{%
+ \ifbool{axp@IndentLines}{%
+ \tikz[remember picture] \coordinate (axp-block-end-\theaxp@BlockLevelCounter) (0, 0);%
+ \begin{tikzpicture}[remember picture, overlay]
+ \draw[line style]
+ ($ (axp-block-start-\theaxp@BlockLevelCounter) + (0.3ex, -1ex) $)
+ --
+ ($ (axp-block-end-\theaxp@BlockLevelCounter) + (0.3ex, 0) $)
+ |- ++ (1ex, 0);
+ \end{tikzpicture}%
+ \addtocounter{axp@BlockLevelCounter}{-1}%
+ }%
+}
+
+% % ***********************************************
+% % For debugging!
+\NewDocumentCommand{\msg}{ m O{-1} }{%
+ \begin{tikzpicture}[overlay]
+ \draw[black!30] (0, 0.1) -- (#2, 0.3) node[fill=black!5, anchor=east] {\scriptsize\color{darkgray}#1};
+ \end{tikzpicture}%
+}
+
% axp@CalculateDimensions: evaluate space needed for text and comments
% #1: nesting ajustment (1 when openning a block; 0 when closing)
@@ -319,50 +398,62 @@
\newlength{\axp@CurrentLineWidth}
\newlength{\axp@RemainingWidth}
\NewDocumentCommand{\axp@CalculateDimensions}{ m m m }{%
+ \booltrue{axp@NoCommentPresent}%
\axp@SetToWidth{\axp@FullTextWidth}{\axp@TextFont#2}% text
\axp@SetToWidth{\axp@FullCommentWidth}{\axp@CommentFont#3}% comment
- %! formatter = off
- \ifdim\axp@FullCommentWidth=0pt\relax%
- % No comments present
- \axp@NoCommentPresenttrue%
+ \ifdimcomp{\axp@FullCommentWidth}{=}{0pt}{%
+ % No comments present
+ % \msg{no comment!}%
+ \global\booltrue{axp@NoCommentPresent}%
+ % \ifbool{axp@LineBalanceAuto}{%
\setlength{\axp@TextWidth}{
\dimexpr \linewidth - \axp@CurrentTokenWidth - (\algorithmicindent)*(\theALG@nested - #1)
}%
- \else
- % Yep, we have a comment
- \axp@NoCommentPresentfalse%
- \settowidth{\axp@CommentSymbolWidth}{\hspace{\axp@CommentSeparatorWidth}\CommentSymbol~}%
- \setlength{\axp@CurrentLineWidth}{
- \dimexpr \linewidth - \axp@CurrentTokenWidth - (\algorithmicindent)*(\theALG@nested - #1)
+ \ifdimcomp{\axp@FullTextWidth}{<}{\axp@TextWidth}{%
+ \axp@TextWidth\axp@FullTextWidth% makes the parbox fit the actual text width
+ }{}%
+ % }{}
+ }{%
+ % Yep, we have a comment in this line
+ % \msg{got a comment!}%
+ \global\boolfalse{axp@NoCommentPresent}%
+ \axp@SetToWidth{\axp@CommentSymbolWidth}{\hspace{\axp@CommentSeparatorWidth}\CommentSymbol~}%
+ \deflength{\axp@CurrentLineWidth}{
+ \linewidth - \axp@CurrentTokenWidth - (\algorithmicindent)*(\theALG@nested - #1)
}%
- \ifaxp@LineBalanceAuto%
- % 'auto': decide here how to balance text and comment widths
+ \ifbool{axp@LineBalanceAuto}{%
+ % 'auto': decide here how to balance text and comment widths
\setlength{\axp@RemainingWidth}{
\dimexpr \axp@CurrentLineWidth - \axp@FullTextWidth - \axp@FullCommentWidth - \axp@CommentSymbolWidth
}%
- \ifdim\axp@RemainingWidth>0pt\relax%
- % Both text and comment fit the line
+ \null% I don't understand the difference this null makes here!
+ % \msg{\the\axp@RemainingWidth}%
+ \ifdimcomp{\axp@RemainingWidth}{>}{0pt}{%
+ % Both text and comment fit the line
\axp@TextWidth\axp@FullTextWidth%
\axp@CommentWidth\axp@FullCommentWidth%
- \else%
- % Text/comment will go multi-line
+ % \msg{fits \the\axp@RemainingWidth}%
+ }{%
+ % Text/comment will go multi-line
+ % \msg{not fit \the\axp@RemainingWidth}%
\pgfmathsetmacro{\axp@CurrentRatio}{
int(round(\axp@FullTextWidth/(\axp@FullTextWidth + \axp@FullCommentWidth) * 100))
}%
- \ifnum\axp@CurrentRatio<25\relax% never less than 0.25
+ \ifnumcomp{\axp@CurrentRatio}{<}{25}{% never less than 0.25
\edef\axp@CurrentRatio{25}%
- \fi%
- \ifnum\axp@CurrentRatio>75\relax% never more than 0.75
- \edef\axp@CurrentRatio{75}%
- \fi%
+ }{%
+ \ifnumcomp{\axp@CurrentRatio}{>}{75}{% never more than 0.75
+ \edef\axp@CurrentRatio{75}%
+ }{}%
+ }%
\pgfmathparse{
- \axp@CurrentRatio/100 * \axp@CurrentLineWidth - \axp@CommentSymbolWidth/2
+ (100 - \axp@CurrentRatio)/100 * \axp@CurrentLineWidth - \axp@CommentSymbolWidth
}%
- \setlength{\axp@TextWidth}{\pgfmathresult pt}%
- \pgfmathparse{\axp@CurrentLineWidth - \axp@TextWidth - \axp@CommentSymbolWidth}%
\setlength{\axp@CommentWidth}{\pgfmathresult pt}%
+ \pgfmathparse{\axp@CurrentLineWidth - \axp@CommentWidth - \axp@CommentSymbolWidth}%
+ \setlength{\axp@TextWidth}{\pgfmathresult pt}%
% fine tunning the widths
- \settowidth{\axp@CommentWidth}{%
+ \axp@SetToWidth{\axp@CommentWidth}{%
\begin{varwidth}[t]{\axp@CommentWidth}%
\axp@CommentStyle%
\textcolor{\axp@CommentColor}{\axp@CommentFont#3}\strut%
@@ -370,44 +461,51 @@
}%
\pgfmathparse{\axp@CurrentLineWidth - \axp@CommentWidth - \axp@CommentSymbolWidth}%
\setlength{\axp@TextWidth}{\pgfmathresult pt}%
- \fi%
- \else%
- % 'fixed': limit comment width
- % todo: think about using \axp@CurrentLineWidth instead of \linewidth
+ % \msg{\the\axp@TextWidth}%
+ }%
+ }{%
+ % 'fixed': limit comment width
+ % todo: think about using \axp@CurrentLineWidth instead of \linewidth
\setlength{\axp@CommentWidth}{\axp@CommentFixedWidth}%
\setlength{\axp@TextWidth}{
\dimexpr \axp@CurrentLineWidth - \axp@CommentWidth - \axp@CommentSymbolWidth
}%
- \fi%
+ }%
\setlength{\axp@RemainingWidth}{
\dimexpr \linewidth - \axp@CurrentTokenWidth -
(\algorithmicindent)*(\theALG@nested - #1) -
\axp@CommentWidth - \axp@CommentSymbolWidth
}%
- \fi%
- %
- \ifdim\axp@FullTextWidth<\axp@TextWidth\relax%
- \axp@TextWidth\axp@FullTextWidth% makes the parbox fit the actual text width
- \fi%
- %! formatter = on
+ }%
}
+\newcounter{cont}
+\newif\ifaxp@CloseBlock
% axp@MakeCommand: builds the command (see axp@DefineCommand)
% #1 (star): star = end block; no star = begin block
\NewDocumentCommand{\axp@MakeCommand}{ s }{%
- \axp@DoCommand{% ajustment for opening/closing blocks
- \IfBooleanTF{#1}{0}{1}%
- }{% command or module+name
- \axp@MakeSingleToken{}{\axp@CommandKeyword}{\ifaxp@IsModule(\else\ \fi}%
- }{% text or module arguments
- \axp@CommandText\ifaxp@IsModule)\fi%
- }{% command complement
- \axp@MakeSingleToken{ }{\axp@CommandComplementKeyword}{}%
- }{% comment
- \axp@CommentText%
- }{% options
- \axp@CommandOptions%
- }%
+\IfBooleanTF{#1}{%
+ \axp@MarkLineEndShort%
+}{%
+ \ifaxp@CloseBlock%
+ \axp@MarkLineEndCont%
+ \axp@CloseBlockfalse%
+ \fi%
+ \axp@MarkLineBegin%
+}%
+\axp@DoCommand{% ajustment for opening/closing blocks
+ \IfBooleanTF{#1}{0}{1}%
+}{% command or module+name
+\axp@MakeSingleToken{}{\axp@CommandKeyword}{\ifaxp@IsModule(\else\ \fi}%
+}{% text or module arguments
+\axp@CommandText\ifaxp@IsModule)\fi%
+}{% command complement
+\axp@MakeSingleToken{ }{\axp@CommandComplementKeyword}{}%
+}{% comment
+\axp@CommentText%
+}{% options
+\axp@CommandOptions%
+}%
}
%! formatter = off
@@ -426,7 +524,6 @@
\usebox{\axp@SaveBox}%
\fi%
}
-%! formatter = on
% axp@DoCommand: builds the command (see axp@DefineCommand)
@@ -438,16 +535,15 @@
% #6: options
\newlength{\axp@CurrentTokenWidth}
\NewDocumentCommand{\axp@DoCommand}{ m m m m m m }{%
- \AlgSet{#6}%
- % Dimensions
- \settowidth{\axp@CurrentTokenWidth}{#2}%
- \axp@CalculateDimensions{#1}{{\axp@TextStyle\axp@TextFont#3}#4}{#5}%
- %
- % Making the line: body
- #2%
- %! formatter = off
+\AlgSet{#6}%
+% Dimensions
+\axp@SetToWidth{\axp@CurrentTokenWidth}{#2}%
+\axp@CalculateDimensions{#1}{{\axp@TextStyle\axp@TextFont#3}#4}{#5}%
+%
+% Making the line: body
+#2%
\begin{axp@FBox}%
- \ifaxp@IsModule\hspace{\axp@ParameterIndent}\fi%
+ \ifbool{axp@IsModule}{\hspace{\axp@ParameterIndent}}{}%
\parbox[t]{\axp@TextWidth}{%
\ifaxp@IsStatement%
\setlength{\hangindent}{\axp@StatementIndent}%
@@ -457,23 +553,22 @@
}%
\end{axp@FBox}%
% Making the line: comment
- \ifaxp@NoCommentPresent\else%
+ \ifbool{axp@NoCommentPresent}{}{%
\hspace{\axp@CommentSeparatorWidth}\hfill\CommentSymbol~%
\begin{axp@FBox}%
- \ifaxp@LineBalanceAuto
+ \ifbool{axp@LineBalanceAuto}{%
\begin{varwidth}[t]{\axp@CommentWidth}%
\axp@CommentStyle%
\textcolor{\axp@CommentColor}{\axp@CommentFont#5}\strut%
\end{varwidth}%
- \else
+ }{%
\parbox[t]{\axp@CommentWidth}{%
\axp@CommentStyle%
- \textcolor{\axp@CommentColor}{\axp@CommentFont{#5}}\strut%
+ \textcolor{\axp@CommentColor}{\axp@CommentFont#5}\strut%
}%
- \fi%
+ }%
\end{axp@FBox}%
- \fi%
- %! formatter = on
+ }%
}
@@ -485,12 +580,14 @@
\NewDocumentCommand{\Break}{}{\Keyword{break}}
\RenewDocumentCommand{\Return}{}{\axp@MakeSingleToken{}{\Keyword{return}}{ }}
+\NewDocumentCommand{\ByRef}{}{\Constant{byref}}
+\NewDocumentCommand{\ByValue}{}{\Constant{byvalue}}
\NewDocumentCommand{\True}{}{\Constant{true}}
\NewDocumentCommand{\False}{}{\Constant{false}}
\NewDocumentCommand{\Nil}{}{\Constant{nil}}
-\newcommand{\Id}[1]{\ensuremath{\textit{\rmfamily#1}}}
+\newcommand{\Id}[1]{\ensuremath{\emph{\rmfamily#1}}}
% \newcommand{\TextString}[1]{\textrm{\normalfont``{\ttfamily\mbox{#1}}''}}
% \algnewcommand{\VisibleSpace}{\textrm{\color{black!70}\textvisiblespace}}
@@ -503,35 +600,39 @@
% Read, write
\NewDocumentCommand{\Set}{ m m }{%
- \PackageWarning{alxpar}{The macro \string\Set\ is no longer supported.}%
- \Id{#1} \gets #2%
+\PackageWarning{alxpar}{The macro \string\Set\ is no longer supported.}%
+\Id{#1} \gets #2%
}
\NewDocumentCommand{\Read}{}{\Keyword{read} }
\NewDocumentCommand{\Write}{}{\Keyword{write} }
% %% Comments
\algnewcommand{\CommentIn}[1]{%
- \begin{axp@FBox}
- \textcolor{\axp@CommentColor}{\CommentSymbol~\axp@CommentFont#1~\CommentSymbolRight}%
- \end{axp@FBox}%
+\begin{axp@FBox}
+\textcolor{\axp@CommentColor}{\CommentSymbol~\axp@CommentFont#1~\CommentSymbolRight}%
+\end{axp@FBox}%
}
\NewDocumentCommand{\Commentl}{ m D<>{} }{%
- \begingroup%
- \AlgSet{#2}%
- \textcolor{\axp@CommentColor}{\CommentSymbol~\axp@CommentFont#1\strut}%
- \endgroup%
+\begingroup%
+\AlgSet{#2}%
+\textcolor{\axp@CommentColor}{\CommentSymbol~\axp@CommentFont#1\strut}%
+\endgroup%
}
\RenewDocumentCommand{\Comment}{ m D<>{} }{%
- \hfill\Commentl{#1}<#2>%
+\hfill\Commentl{#1}<#2>%
}
\newlength{\axp@CurrentIndent}
-\NewDocumentCommand{\axp@BeginGroup}{}{\begingroup}
+\newcounter{axp@BlockCounter}
+\newcounter{axp@BlockLevelCounter}
+\NewDocumentCommand{\axp@BeginGroup}{}{%
+\begingroup%
+}
\NewDocumentCommand{\axp@EndGroup}{}{%
- \global\edef\axp@SaveIndent{\the\ALG@tlm}%
- \endgroup%
- \setlength{\ALG@tlm}{\axp@SaveIndent}%
+\global\edef\axp@SaveIndent{\the\ALG@tlm}%
+\endgroup%
+\setlength{\ALG@tlm}{\axp@SaveIndent}%
}
@@ -541,12 +642,12 @@
% #3: comments
% #4: options
\NewDocumentCommand{\Statep}{ O{} +m O{} D<>{} }{%
- \axp@IsStatementtrue%
- \State\axp@DoCommand{1}{}{#2}{}{#1#3}{#4}%
- \axp@IsStatementfalse%
+\axp@IsStatementtrue%
+\State\axp@DoCommand{1}{}{#2}{}{#1#3}{#4}%
+\axp@IsStatementfalse%
}
\RenewDocumentCommand{\Statex}{}{%
- \item[]\strut%
+\item[]\strut%
}
@@ -557,16 +658,17 @@
% #3: comment
% #4: options
\RenewDocumentCommand{\While}{ O{} m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{while}}{#2}{\Keyword{do}}{#1#3}{#4}%
- \ALG@makeentity{While}%
+\axp@BeginGroup%
+\axp@DefineCommand{\Keyword{while}}{#2}{\Keyword{do}}{#1#3}{#4}%
+\ALG@makeentity{While}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndWhile}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endwhile}}{}{}{#1}{#2}%
- \ALG@makeentity{EndWhile}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endwhile}}{}{}{#1}{#2}%
+\ALG@makeentity{EndWhile}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup%
}
@@ -575,18 +677,19 @@
% #1: comments
% #2: options
\RenewDocumentCommand{\Repeat}{ O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{repeat}}{}{}{#1}{#2}%
- \ALG@makeentity{Repeat}%
+\axp@BeginGroup%
+\axp@DefineCommand{\Keyword{repeat}}{}{}{#1}{#2}%
+\ALG@makeentity{Repeat}%
}
% #1: old style comment
% #2: text
% #3: comment
% #4: options
\RenewDocumentCommand{\Until}{ O{} m O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{until}}{#2}{}{#1#3}{#4}%
- \ALG@makeentity{Until}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{until}}{#2}{}{#1#3}{#4}%
+\ALG@makeentity{Until}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup%
}
%% Loop
@@ -594,16 +697,17 @@
% #1: comment
% #2: options
\RenewDocumentCommand{\Loop}{ O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{loop}}{}{}{#1}{#2}%
- \ALG@makeentity{Loop}%
+\axp@BeginGroup%
+\axp@DefineCommand{\Keyword{loop}}{}{}{#1}{#2}%
+\ALG@makeentity{Loop}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndLoop}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endloop}}{}{}{#1}{#2}%
- \ALG@makeentity{EndLoop}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endloop}}{}{}{#1}{#2}%
+\ALG@makeentity{EndLoop}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup%
}
@@ -618,30 +722,33 @@
% #3: comment
% #4: options
\RenewDocumentCommand{\If}{ O{} m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{if}}{#2}{\Keyword{then}}{#1#3}{#4}%
- \ALG@makeentity{If}%
+\axp@BeginGroup%
+\axp@DefineCommand{\Keyword{if}}{#2}{\Keyword{then}}{#1#3}{#4}%
+\ALG@makeentity{If}%
}
% #1: old style comment
% #2: text
% #3: comment
% #4: options
\RenewDocumentCommand{\ElsIf}{ O{} m O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{else}~\Keyword{if}}{#2}{\Keyword{then}}{#1#3}{#4}%
- \ALG@makeentity{ElsIf}%
+\axp@DefineCommand{\Keyword{else}~\Keyword{if}}{#2}{\Keyword{then}}{#1#3}{#4}%
+\axp@CloseBlocktrue%
+\ALG@makeentity{ElsIf}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\Else}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{else}}{}{}{#1}{#2}%
- \ALG@makeentity{Else}%
+\axp@DefineCommand{\Keyword{else}}{}{}{#1}{#2}%
+\axp@CloseBlocktrue%
+\ALG@makeentity{Else}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndIf}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endif}}{}{}{#1}{#2}%
- \ALG@makeentity{EndIf}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endif}}{}{}{#1}{#2}%
+\ALG@makeentity{EndIf}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup%
}
@@ -656,46 +763,49 @@
% #3: comment
% #4: options
\RenewDocumentCommand{\Switch}{ O{} m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{switch}}{#2}{}{#1#3}{#4}%
- \ALG@makeentity{Switch}%
+\axp@BeginGroup
+\axp@DefineCommand{\Keyword{switch}}{#2}{}{#1#3}{#4}%
+\ALG@makeentity{Switch}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndSwitch}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endswitch}}{}{}{#1}{#2}%
- \ALG@makeentity{EndSwitch}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endswitch}}{}{}{#1}{#2}%
+\ALG@makeentity{EndSwitch}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup
}
% #1: old style comment
% #2: text
% #3: comment
% #4: options
\RenewDocumentCommand{\Case}{ O{} m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{case}}{#2}{\Keyword{do}}{#1#3}{#4}%
- \ALG@makeentity{Case}%
+\axp@BeginGroup
+\axp@DefineCommand{\Keyword{case}}{#2}{\Keyword{do}}{#1#3}{#4}%
+\ALG@makeentity{Case}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndCase}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endcase}}{}{}{#1}{#2}%
- \ALG@makeentity{EndCase}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endcase}}{}{}{#1}{#2}%
+\ALG@makeentity{EndCase}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup
}
% #1: comment
% #2: options
\RenewDocumentCommand{\Otherwise}{ O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{otherwise}}{}{}{#1}{#2}%
- \ALG@makeentity{Otherwise}%
+\axp@BeginGroup
+\axp@DefineCommand{\Keyword{otherwise}}{}{}{#1}{#2}%
+\ALG@makeentity{Otherwise}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndOtherwise}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endotherwise}}{}{}{#1}{#2}%
- \ALG@makeentity{EndOtherwise}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endotherwise}}{}{}{#1}{#2}%
+\ALG@makeentity{EndOtherwise}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup
}
@@ -718,34 +828,35 @@
% #3: comment
% #4: options
\RenewDocumentCommand{\For}{ O{} m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{for}}{#2}{\Keyword{do}}{#1#3}{#4}%
- \ALG@makeentity{For}%
+\axp@BeginGroup
+\axp@DefineCommand{\Keyword{for}}{#2}{\Keyword{do}}{#1#3}{#4}%
+\ALG@makeentity{For}%
}
% #1: old style comment
% #2: text
% #3: comment
% #4: options
\RenewDocumentCommand{\ForEach}{ O{} m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{foreach}}{#2}{\Keyword{do}}{#1#3}{#4}%
- \ALG@makeentity{ForEach}%
+\axp@BeginGroup
+\axp@DefineCommand{\Keyword{foreach}}{#2}{\Keyword{do}}{#1#3}{#4}%
+\ALG@makeentity{ForEach}%
}
% #1: old style comment
% #2: text
% #3: comment
% #4: options
\RenewDocumentCommand{\ForAll}{ O{} m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@DefineCommand{\Keyword{forall}}{#2}{\Keyword{do}}{#1#3}{#4}%
- \ALG@makeentity{For}%
+\axp@BeginGroup
+\axp@DefineCommand{\Keyword{forall}}{#2}{\Keyword{do}}{#1#3}{#4}%
+\ALG@makeentity{For}%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndFor}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endfor}}{}{}{#1}{#2}%
- \ALG@makeentity{EndFor}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endfor}}{}{}{#1}{#2}%
+\ALG@makeentity{EndFor}%
+\ifaxp@NoEnd\axp@MarkLineEndFinal\fi%
+\axp@EndGroup
}
@@ -758,18 +869,19 @@
% #4: comment
% #5: options
\RenewDocumentCommand{\Procedure}{ O{} m m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@IsModuletrue%
- \axp@DefineCommand{\Keyword{procedure}~\Module{#2}}{#3}{}{#4}{#5}%
- \ALG@makeentity{Procedure}%
- \axp@IsModulefalse%
+\axp@BeginGroup
+\axp@IsModuletrue%
+\axp@DefineCommand{\Keyword{procedure}~\Module{#2}}{#3}{}{#1#4}{#5}%
+\ALG@makeentity{Procedure}%
+\axp@IsModulefalse%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndProcedure}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endprocedure}}{}{}{#1}{#2}%
- \ALG@makeentity{EndProcedure}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endprocedure}}{}{}{#1}{#2}%
+\axp@MarkLineEndFinal%
+\ALG@makeentity{EndProcedure}%
+\axp@EndGroup
}
\algblockdefx[Function]{Function}{EndFunction}{\axp@MakeCommand}{\axp@MakeCommand*}
@@ -779,25 +891,26 @@
% #4: comment
% #5: options
\RenewDocumentCommand{\Function}{ O{} m m O{} D<>{} }{%
- \axp@BeginGroup
- \axp@IsModuletrue%
- \axp@DefineCommand{\Keyword{function}~\Module{#2}}{#3}{}{#4}{#5}%
- \ALG@makeentity{Function}%
- \axp@IsModulefalse%
+\axp@BeginGroup
+\axp@IsModuletrue%
+\axp@DefineCommand{\Keyword{function}~\Module{#2}}{#3}{}{#1#4}{#5}%
+\ALG@makeentity{Function}%
+\axp@IsModulefalse%
}
% #1: comment
% #2: options
\RenewDocumentCommand{\EndFunction}{ O{} D<>{} }{%
- \axp@DefineCommand{\Keyword{endfunction}}{}{}{#1}{#2}%
- \ALG@makeentity{EndFunction}%
- \axp@EndGroup
+\axp@DefineCommand{\Keyword{endfunction}}{}{}{#1}{#2}%
+\axp@MarkLineEndFinal%
+\ALG@makeentity{EndFunction}%
+\axp@EndGroup
}
\RenewDocumentCommand{\Call}{ m m D<>{} }{%
- \begingroup%
- \AlgSet{#3}%
- \Module{#1}\textcolor{\axp@TextColor}{\axp@TextFont(#2)}%
- \endgroup%
+\begingroup%
+\AlgSet{#3}%
+\Module{#1}\textcolor{\axp@TextColor}{\axp@TextFont(#2)}%
+\endgroup%
}
@@ -822,13 +935,13 @@
\NewCommandCopy{\axp@AlgorithmicxAlgorithmic}{\algorithmic}
\NewCommandCopy{\axp@AlgorithmicxEndAlgorithmic}{\endalgorithmic}
\RenewDocumentCommand{\algorithmic}{ O{} D<>{} }{%
- \begingroup%
- \AlgSet{#2}%
- \axp@AlgorithmicxAlgorithmic[#1]%
+\begingroup%
+\AlgSet{#2}%
+\axp@AlgorithmicxAlgorithmic[#1]%
}
\RenewDocumentCommand{\endalgorithmic}{}{%
- \axp@AlgorithmicxEndAlgorithmic%
- \endgroup%
+\axp@AlgorithmicxEndAlgorithmic%
+\endgroup%
}
-\endinput \ No newline at end of file
+\endinput
diff --git a/macros/latex/contrib/algxpar/license b/macros/latex/contrib/algxpar/license
new file mode 100644
index 0000000000..2244313901
--- /dev/null
+++ b/macros/latex/contrib/algxpar/license
@@ -0,0 +1,416 @@
+The LaTeX Project Public License
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+LPPL Version 1.3c 2008-05-04
+
+Copyright 1999 2002-2008 LaTeX3 Project
+ Everyone is allowed to distribute verbatim copies of this
+ license document, but modification of it is not allowed.
+
+
+PREAMBLE
+========
+
+The LaTeX Project Public License (LPPL) is the primary license under
+which the LaTeX kernel and the base LaTeX packages are distributed.
+
+You may use this license for any work of which you hold the copyright
+and which you wish to distribute. This license may be particularly
+suitable if your work is TeX-related (such as a LaTeX package), but
+it is written in such a way that you can use it even if your work is
+unrelated to TeX.
+
+The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE',
+below, gives instructions, examples, and recommendations for authors
+who are considering distributing their works under this license.
+
+This license gives conditions under which a work may be distributed
+and modified, as well as conditions under which modified versions of
+that work may be distributed.
+
+We, the LaTeX3 Project, believe that the conditions below give you
+the freedom to make and distribute modified versions of your work
+that conform with whatever technical specifications you wish while
+maintaining the availability, integrity, and reliability of
+that work. If you do not see how to achieve your goal while
+meeting these conditions, then read the document `cfgguide.tex'
+and `modguide.tex' in the base LaTeX distribution for suggestions.
+
+
+DEFINITIONS
+===========
+
+In this license document the following terms are used:
+
+ `Work'
+ Any work being distributed under this License.
+
+ `Derived Work'
+ Any work that under any applicable law is derived from the Work.
+
+ `Modification'
+ Any procedure that produces a Derived Work under any applicable
+ law -- for example, the production of a file containing an
+ original file associated with the Work or a significant portion of
+ such a file, either verbatim or with modifications and/or
+ translated into another language.
+
+ `Modify'
+ To apply any procedure that produces a Derived Work under any
+ applicable law.
+
+ `Distribution'
+ Making copies of the Work available from one person to another, in
+ whole or in part. Distribution includes (but is not limited to)
+ making any electronic components of the Work accessible by
+ file transfer protocols such as FTP or HTTP or by shared file
+ systems such as Sun's Network File System (NFS).
+
+ `Compiled Work'
+ A version of the Work that has been processed into a form where it
+ is directly usable on a computer system. This processing may
+ include using installation facilities provided by the Work,
+ transformations of the Work, copying of components of the Work, or
+ other activities. Note that modification of any installation
+ facilities provided by the Work constitutes modification of the Work.
+
+ `Current Maintainer'
+ A person or persons nominated as such within the Work. If there is
+ no such explicit nomination then it is the `Copyright Holder' under
+ any applicable law.
+
+ `Base Interpreter'
+ A program or process that is normally needed for running or
+ interpreting a part or the whole of the Work.
+
+ A Base Interpreter may depend on external components but these
+ are not considered part of the Base Interpreter provided that each
+ external component clearly identifies itself whenever it is used
+ interactively. Unless explicitly specified when applying the
+ license to the Work, the only applicable Base Interpreter is a
+ `LaTeX-Format' or in the case of files belonging to the
+ `LaTeX-format' a program implementing the `TeX language'.
+
+
+
+CONDITIONS ON DISTRIBUTION AND MODIFICATION
+===========================================
+
+1. Activities other than distribution and/or modification of the Work
+are not covered by this license; they are outside its scope. In
+particular, the act of running the Work is not restricted and no
+requirements are made concerning any offers of support for the Work.
+
+2. You may distribute a complete, unmodified copy of the Work as you
+received it. Distribution of only part of the Work is considered
+modification of the Work, and no right to distribute such a Derived
+Work may be assumed under the terms of this clause.
+
+3. You may distribute a Compiled Work that has been generated from a
+complete, unmodified copy of the Work as distributed under Clause 2
+above, as long as that Compiled Work is distributed in such a way that
+the recipients may install the Compiled Work on their system exactly
+as it would have been installed if they generated a Compiled Work
+directly from the Work.
+
+4. If you are the Current Maintainer of the Work, you may, without
+restriction, modify the Work, thus creating a Derived Work. You may
+also distribute the Derived Work without restriction, including
+Compiled Works generated from the Derived Work. Derived Works
+distributed in this manner by the Current Maintainer are considered to
+be updated versions of the Work.
+
+5. If you are not the Current Maintainer of the Work, you may modify
+your copy of the Work, thus creating a Derived Work based on the Work,
+and compile this Derived Work, thus creating a Compiled Work based on
+the Derived Work.
+
+6. If you are not the Current Maintainer of the Work, you may
+distribute a Derived Work provided the following conditions are met
+for every component of the Work unless that component clearly states
+in the copyright notice that it is exempt from that condition. Only
+the Current Maintainer is allowed to add such statements of exemption
+to a component of the Work.
+
+ a. If a component of this Derived Work can be a direct replacement
+ for a component of the Work when that component is used with the
+ Base Interpreter, then, wherever this component of the Work
+ identifies itself to the user when used interactively with that
+ Base Interpreter, the replacement component of this Derived Work
+ clearly and unambiguously identifies itself as a modified version
+ of this component to the user when used interactively with that
+ Base Interpreter.
+
+ b. Every component of the Derived Work contains prominent notices
+ detailing the nature of the changes to that component, or a
+ prominent reference to another file that is distributed as part
+ of the Derived Work and that contains a complete and accurate log
+ of the changes.
+
+ c. No information in the Derived Work implies that any persons,
+ including (but not limited to) the authors of the original version
+ of the Work, provide any support, including (but not limited to)
+ the reporting and handling of errors, to recipients of the
+ Derived Work unless those persons have stated explicitly that
+ they do provide such support for the Derived Work.
+
+ d. You distribute at least one of the following with the Derived Work:
+
+ 1. A complete, unmodified copy of the Work;
+ if your distribution of a modified component is made by
+ offering access to copy the modified component from a
+ designated place, then offering equivalent access to copy
+ the Work from the same or some similar place meets this
+ condition, even though third parties are not compelled to
+ copy the Work along with the modified component;
+
+ 2. Information that is sufficient to obtain a complete,
+ unmodified copy of the Work.
+
+7. If you are not the Current Maintainer of the Work, you may
+distribute a Compiled Work generated from a Derived Work, as long as
+the Derived Work is distributed to all recipients of the Compiled
+Work, and as long as the conditions of Clause 6, above, are met with
+regard to the Derived Work.
+
+8. The conditions above are not intended to prohibit, and hence do not
+apply to, the modification, by any method, of any component so that it
+becomes identical to an updated version of that component of the Work as
+it is distributed by the Current Maintainer under Clause 4, above.
+
+9. Distribution of the Work or any Derived Work in an alternative
+format, where the Work or that Derived Work (in whole or in part) is
+then produced by applying some process to that format, does not relax or
+nullify any sections of this license as they pertain to the results of
+applying that process.
+
+10. a. A Derived Work may be distributed under a different license
+ provided that license itself honors the conditions listed in
+ Clause 6 above, in regard to the Work, though it does not have
+ to honor the rest of the conditions in this license.
+
+ b. If a Derived Work is distributed under a different license, that
+ Derived Work must provide sufficient documentation as part of
+ itself to allow each recipient of that Derived Work to honor the
+ restrictions in Clause 6 above, concerning changes from the Work.
+
+11. This license places no restrictions on works that are unrelated to
+the Work, nor does this license place any restrictions on aggregating
+such works with the Work by any means.
+
+12. Nothing in this license is intended to, or may be used to, prevent
+complete compliance by all parties with all applicable laws.
+
+
+NO WARRANTY
+===========
+
+There is no warranty for the Work. Except when otherwise stated in
+writing, the Copyright Holder provides the Work `as is', without
+warranty of any kind, either expressed or implied, including, but not
+limited to, the implied warranties of merchantability and fitness for a
+particular purpose. The entire risk as to the quality and performance
+of the Work is with you. Should the Work prove defective, you assume
+the cost of all necessary servicing, repair, or correction.
+
+In no event unless required by applicable law or agreed to in writing
+will The Copyright Holder, or any author named in the components of the
+Work, or any other party who may distribute and/or modify the Work as
+permitted above, be liable to you for damages, including any general,
+special, incidental or consequential damages arising out of any use of
+the Work or out of inability to use the Work (including, but not limited
+to, loss of data, data being rendered inaccurate, or losses sustained by
+anyone as a result of any failure of the Work to operate with any other
+programs), even if the Copyright Holder or said author or said other
+party has been advised of the possibility of such damages.
+
+
+MAINTENANCE OF THE WORK
+=======================
+
+The Work has the status `author-maintained' if the Copyright Holder
+explicitly and prominently states near the primary copyright notice in
+the Work that the Work can only be maintained by the Copyright Holder
+or simply that it is `author-maintained'.
+
+The Work has the status `maintained' if there is a Current Maintainer
+who has indicated in the Work that they are willing to receive error
+reports for the Work (for example, by supplying a valid e-mail
+address). It is not required for the Current Maintainer to acknowledge
+or act upon these error reports.
+
+The Work changes from status `maintained' to `unmaintained' if there
+is no Current Maintainer, or the person stated to be Current
+Maintainer of the work cannot be reached through the indicated means
+of communication for a period of six months, and there are no other
+significant signs of active maintenance.
+
+You can become the Current Maintainer of the Work by agreement with
+any existing Current Maintainer to take over this role.
+
+If the Work is unmaintained, you can become the Current Maintainer of
+the Work through the following steps:
+
+ 1. Make a reasonable attempt to trace the Current Maintainer (and
+ the Copyright Holder, if the two differ) through the means of
+ an Internet or similar search.
+
+ 2. If this search is successful, then enquire whether the Work
+ is still maintained.
+
+ a. If it is being maintained, then ask the Current Maintainer
+ to update their communication data within one month.
+
+ b. If the search is unsuccessful or no action to resume active
+ maintenance is taken by the Current Maintainer, then announce
+ within the pertinent community your intention to take over
+ maintenance. (If the Work is a LaTeX work, this could be
+ done, for example, by posting to comp.text.tex.)
+
+ 3a. If the Current Maintainer is reachable and agrees to pass
+ maintenance of the Work to you, then this takes effect
+ immediately upon announcement.
+
+ b. If the Current Maintainer is not reachable and the Copyright
+ Holder agrees that maintenance of the Work be passed to you,
+ then this takes effect immediately upon announcement.
+
+ 4. If you make an `intention announcement' as described in 2b. above
+ and after three months your intention is challenged neither by
+ the Current Maintainer nor by the Copyright Holder nor by other
+ people, then you may arrange for the Work to be changed so as
+ to name you as the (new) Current Maintainer.
+
+ 5. If the previously unreachable Current Maintainer becomes
+ reachable once more within three months of a change completed
+ under the terms of 3b) or 4), then that Current Maintainer must
+ become or remain the Current Maintainer upon request provided
+ they then update their communication data within one month.
+
+A change in the Current Maintainer does not, of itself, alter the fact
+that the Work is distributed under the LPPL license.
+
+If you become the Current Maintainer of the Work, you should
+immediately provide, within the Work, a prominent and unambiguous
+statement of your status as Current Maintainer. You should also
+announce your new status to the same pertinent community as
+in 2b) above.
+
+
+WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE
+======================================================
+
+This section contains important instructions, examples, and
+recommendations for authors who are considering distributing their
+works under this license. These authors are addressed as `you' in
+this section.
+
+Choosing This License or Another License
+----------------------------------------
+
+If for any part of your work you want or need to use *distribution*
+conditions that differ significantly from those in this license, then
+do not refer to this license anywhere in your work but, instead,
+distribute your work under a different license. You may use the text
+of this license as a model for your own license, but your license
+should not refer to the LPPL or otherwise give the impression that
+your work is distributed under the LPPL.
+
+The document `modguide.tex' in the base LaTeX distribution explains
+the motivation behind the conditions of this license. It explains,
+for example, why distributing LaTeX under the GNU General Public
+License (GPL) was considered inappropriate. Even if your work is
+unrelated to LaTeX, the discussion in `modguide.tex' may still be
+relevant, and authors intending to distribute their works under any
+license are encouraged to read it.
+
+A Recommendation on Modification Without Distribution
+-----------------------------------------------------
+
+It is wise never to modify a component of the Work, even for your own
+personal use, without also meeting the above conditions for
+distributing the modified component. While you might intend that such
+modifications will never be distributed, often this will happen by
+accident -- you may forget that you have modified that component; or
+it may not occur to you when allowing others to access the modified
+version that you are thus distributing it and violating the conditions
+of this license in ways that could have legal implications and, worse,
+cause problems for the community. It is therefore usually in your
+best interest to keep your copy of the Work identical with the public
+one. Many works provide ways to control the behavior of that work
+without altering any of its licensed components.
+
+How to Use This License
+-----------------------
+
+To use this license, place in each of the components of your work both
+an explicit copyright notice including your name and the year the work
+was authored and/or last substantially modified. Include also a
+statement that the distribution and/or modification of that
+component is constrained by the conditions in this license.
+
+Here is an example of such a notice and statement:
+
+ %% pig.dtx
+ %% Copyright 2005 M. Y. Name
+ %
+ % 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 M. Y. Name.
+ %
+ % This work consists of the files pig.dtx and pig.ins
+ % and the derived file pig.sty.
+
+Given such a notice and statement in a file, the conditions
+given in this license document would apply, with the `Work' referring
+to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being
+generated from `pig.dtx' using `pig.ins'), the `Base Interpreter'
+referring to any `LaTeX-Format', and both `Copyright Holder' and
+`Current Maintainer' referring to the person `M. Y. Name'.
+
+If you do not want the Maintenance section of LPPL to apply to your
+Work, change `maintained' above into `author-maintained'.
+However, we recommend that you use `maintained', as the Maintenance
+section was added in order to ensure that your Work remains useful to
+the community even when you can no longer maintain and support it
+yourself.
+
+Derived Works That Are Not Replacements
+---------------------------------------
+
+Several clauses of the LPPL specify means to provide reliability and
+stability for the user community. They therefore concern themselves
+with the case that a Derived Work is intended to be used as a
+(compatible or incompatible) replacement of the original Work. If
+this is not the case (e.g., if a few lines of code are reused for a
+completely different task), then clauses 6b and 6d shall not apply.
+
+
+Important Recommendations
+-------------------------
+
+ Defining What Constitutes the Work
+
+ The LPPL requires that distributions of the Work contain all the
+ files of the Work. It is therefore important that you provide a
+ way for the licensee to determine which files constitute the Work.
+ This could, for example, be achieved by explicitly listing all the
+ files of the Work near the copyright notice of each file or by
+ using a line such as:
+
+ % This work consists of all files listed in manifest.txt.
+
+ in that place. In the absence of an unequivocal list it might be
+ impossible for the licensee to determine what is considered by you
+ to comprise the Work and, in such a case, the licensee would be
+ entitled to make reasonable conjectures as to which files comprise
+ the Work.
+
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/LICENSE b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/LICENSE
new file mode 100644
index 0000000000..2244313901
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/LICENSE
@@ -0,0 +1,416 @@
+The LaTeX Project Public License
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+LPPL Version 1.3c 2008-05-04
+
+Copyright 1999 2002-2008 LaTeX3 Project
+ Everyone is allowed to distribute verbatim copies of this
+ license document, but modification of it is not allowed.
+
+
+PREAMBLE
+========
+
+The LaTeX Project Public License (LPPL) is the primary license under
+which the LaTeX kernel and the base LaTeX packages are distributed.
+
+You may use this license for any work of which you hold the copyright
+and which you wish to distribute. This license may be particularly
+suitable if your work is TeX-related (such as a LaTeX package), but
+it is written in such a way that you can use it even if your work is
+unrelated to TeX.
+
+The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE',
+below, gives instructions, examples, and recommendations for authors
+who are considering distributing their works under this license.
+
+This license gives conditions under which a work may be distributed
+and modified, as well as conditions under which modified versions of
+that work may be distributed.
+
+We, the LaTeX3 Project, believe that the conditions below give you
+the freedom to make and distribute modified versions of your work
+that conform with whatever technical specifications you wish while
+maintaining the availability, integrity, and reliability of
+that work. If you do not see how to achieve your goal while
+meeting these conditions, then read the document `cfgguide.tex'
+and `modguide.tex' in the base LaTeX distribution for suggestions.
+
+
+DEFINITIONS
+===========
+
+In this license document the following terms are used:
+
+ `Work'
+ Any work being distributed under this License.
+
+ `Derived Work'
+ Any work that under any applicable law is derived from the Work.
+
+ `Modification'
+ Any procedure that produces a Derived Work under any applicable
+ law -- for example, the production of a file containing an
+ original file associated with the Work or a significant portion of
+ such a file, either verbatim or with modifications and/or
+ translated into another language.
+
+ `Modify'
+ To apply any procedure that produces a Derived Work under any
+ applicable law.
+
+ `Distribution'
+ Making copies of the Work available from one person to another, in
+ whole or in part. Distribution includes (but is not limited to)
+ making any electronic components of the Work accessible by
+ file transfer protocols such as FTP or HTTP or by shared file
+ systems such as Sun's Network File System (NFS).
+
+ `Compiled Work'
+ A version of the Work that has been processed into a form where it
+ is directly usable on a computer system. This processing may
+ include using installation facilities provided by the Work,
+ transformations of the Work, copying of components of the Work, or
+ other activities. Note that modification of any installation
+ facilities provided by the Work constitutes modification of the Work.
+
+ `Current Maintainer'
+ A person or persons nominated as such within the Work. If there is
+ no such explicit nomination then it is the `Copyright Holder' under
+ any applicable law.
+
+ `Base Interpreter'
+ A program or process that is normally needed for running or
+ interpreting a part or the whole of the Work.
+
+ A Base Interpreter may depend on external components but these
+ are not considered part of the Base Interpreter provided that each
+ external component clearly identifies itself whenever it is used
+ interactively. Unless explicitly specified when applying the
+ license to the Work, the only applicable Base Interpreter is a
+ `LaTeX-Format' or in the case of files belonging to the
+ `LaTeX-format' a program implementing the `TeX language'.
+
+
+
+CONDITIONS ON DISTRIBUTION AND MODIFICATION
+===========================================
+
+1. Activities other than distribution and/or modification of the Work
+are not covered by this license; they are outside its scope. In
+particular, the act of running the Work is not restricted and no
+requirements are made concerning any offers of support for the Work.
+
+2. You may distribute a complete, unmodified copy of the Work as you
+received it. Distribution of only part of the Work is considered
+modification of the Work, and no right to distribute such a Derived
+Work may be assumed under the terms of this clause.
+
+3. You may distribute a Compiled Work that has been generated from a
+complete, unmodified copy of the Work as distributed under Clause 2
+above, as long as that Compiled Work is distributed in such a way that
+the recipients may install the Compiled Work on their system exactly
+as it would have been installed if they generated a Compiled Work
+directly from the Work.
+
+4. If you are the Current Maintainer of the Work, you may, without
+restriction, modify the Work, thus creating a Derived Work. You may
+also distribute the Derived Work without restriction, including
+Compiled Works generated from the Derived Work. Derived Works
+distributed in this manner by the Current Maintainer are considered to
+be updated versions of the Work.
+
+5. If you are not the Current Maintainer of the Work, you may modify
+your copy of the Work, thus creating a Derived Work based on the Work,
+and compile this Derived Work, thus creating a Compiled Work based on
+the Derived Work.
+
+6. If you are not the Current Maintainer of the Work, you may
+distribute a Derived Work provided the following conditions are met
+for every component of the Work unless that component clearly states
+in the copyright notice that it is exempt from that condition. Only
+the Current Maintainer is allowed to add such statements of exemption
+to a component of the Work.
+
+ a. If a component of this Derived Work can be a direct replacement
+ for a component of the Work when that component is used with the
+ Base Interpreter, then, wherever this component of the Work
+ identifies itself to the user when used interactively with that
+ Base Interpreter, the replacement component of this Derived Work
+ clearly and unambiguously identifies itself as a modified version
+ of this component to the user when used interactively with that
+ Base Interpreter.
+
+ b. Every component of the Derived Work contains prominent notices
+ detailing the nature of the changes to that component, or a
+ prominent reference to another file that is distributed as part
+ of the Derived Work and that contains a complete and accurate log
+ of the changes.
+
+ c. No information in the Derived Work implies that any persons,
+ including (but not limited to) the authors of the original version
+ of the Work, provide any support, including (but not limited to)
+ the reporting and handling of errors, to recipients of the
+ Derived Work unless those persons have stated explicitly that
+ they do provide such support for the Derived Work.
+
+ d. You distribute at least one of the following with the Derived Work:
+
+ 1. A complete, unmodified copy of the Work;
+ if your distribution of a modified component is made by
+ offering access to copy the modified component from a
+ designated place, then offering equivalent access to copy
+ the Work from the same or some similar place meets this
+ condition, even though third parties are not compelled to
+ copy the Work along with the modified component;
+
+ 2. Information that is sufficient to obtain a complete,
+ unmodified copy of the Work.
+
+7. If you are not the Current Maintainer of the Work, you may
+distribute a Compiled Work generated from a Derived Work, as long as
+the Derived Work is distributed to all recipients of the Compiled
+Work, and as long as the conditions of Clause 6, above, are met with
+regard to the Derived Work.
+
+8. The conditions above are not intended to prohibit, and hence do not
+apply to, the modification, by any method, of any component so that it
+becomes identical to an updated version of that component of the Work as
+it is distributed by the Current Maintainer under Clause 4, above.
+
+9. Distribution of the Work or any Derived Work in an alternative
+format, where the Work or that Derived Work (in whole or in part) is
+then produced by applying some process to that format, does not relax or
+nullify any sections of this license as they pertain to the results of
+applying that process.
+
+10. a. A Derived Work may be distributed under a different license
+ provided that license itself honors the conditions listed in
+ Clause 6 above, in regard to the Work, though it does not have
+ to honor the rest of the conditions in this license.
+
+ b. If a Derived Work is distributed under a different license, that
+ Derived Work must provide sufficient documentation as part of
+ itself to allow each recipient of that Derived Work to honor the
+ restrictions in Clause 6 above, concerning changes from the Work.
+
+11. This license places no restrictions on works that are unrelated to
+the Work, nor does this license place any restrictions on aggregating
+such works with the Work by any means.
+
+12. Nothing in this license is intended to, or may be used to, prevent
+complete compliance by all parties with all applicable laws.
+
+
+NO WARRANTY
+===========
+
+There is no warranty for the Work. Except when otherwise stated in
+writing, the Copyright Holder provides the Work `as is', without
+warranty of any kind, either expressed or implied, including, but not
+limited to, the implied warranties of merchantability and fitness for a
+particular purpose. The entire risk as to the quality and performance
+of the Work is with you. Should the Work prove defective, you assume
+the cost of all necessary servicing, repair, or correction.
+
+In no event unless required by applicable law or agreed to in writing
+will The Copyright Holder, or any author named in the components of the
+Work, or any other party who may distribute and/or modify the Work as
+permitted above, be liable to you for damages, including any general,
+special, incidental or consequential damages arising out of any use of
+the Work or out of inability to use the Work (including, but not limited
+to, loss of data, data being rendered inaccurate, or losses sustained by
+anyone as a result of any failure of the Work to operate with any other
+programs), even if the Copyright Holder or said author or said other
+party has been advised of the possibility of such damages.
+
+
+MAINTENANCE OF THE WORK
+=======================
+
+The Work has the status `author-maintained' if the Copyright Holder
+explicitly and prominently states near the primary copyright notice in
+the Work that the Work can only be maintained by the Copyright Holder
+or simply that it is `author-maintained'.
+
+The Work has the status `maintained' if there is a Current Maintainer
+who has indicated in the Work that they are willing to receive error
+reports for the Work (for example, by supplying a valid e-mail
+address). It is not required for the Current Maintainer to acknowledge
+or act upon these error reports.
+
+The Work changes from status `maintained' to `unmaintained' if there
+is no Current Maintainer, or the person stated to be Current
+Maintainer of the work cannot be reached through the indicated means
+of communication for a period of six months, and there are no other
+significant signs of active maintenance.
+
+You can become the Current Maintainer of the Work by agreement with
+any existing Current Maintainer to take over this role.
+
+If the Work is unmaintained, you can become the Current Maintainer of
+the Work through the following steps:
+
+ 1. Make a reasonable attempt to trace the Current Maintainer (and
+ the Copyright Holder, if the two differ) through the means of
+ an Internet or similar search.
+
+ 2. If this search is successful, then enquire whether the Work
+ is still maintained.
+
+ a. If it is being maintained, then ask the Current Maintainer
+ to update their communication data within one month.
+
+ b. If the search is unsuccessful or no action to resume active
+ maintenance is taken by the Current Maintainer, then announce
+ within the pertinent community your intention to take over
+ maintenance. (If the Work is a LaTeX work, this could be
+ done, for example, by posting to comp.text.tex.)
+
+ 3a. If the Current Maintainer is reachable and agrees to pass
+ maintenance of the Work to you, then this takes effect
+ immediately upon announcement.
+
+ b. If the Current Maintainer is not reachable and the Copyright
+ Holder agrees that maintenance of the Work be passed to you,
+ then this takes effect immediately upon announcement.
+
+ 4. If you make an `intention announcement' as described in 2b. above
+ and after three months your intention is challenged neither by
+ the Current Maintainer nor by the Copyright Holder nor by other
+ people, then you may arrange for the Work to be changed so as
+ to name you as the (new) Current Maintainer.
+
+ 5. If the previously unreachable Current Maintainer becomes
+ reachable once more within three months of a change completed
+ under the terms of 3b) or 4), then that Current Maintainer must
+ become or remain the Current Maintainer upon request provided
+ they then update their communication data within one month.
+
+A change in the Current Maintainer does not, of itself, alter the fact
+that the Work is distributed under the LPPL license.
+
+If you become the Current Maintainer of the Work, you should
+immediately provide, within the Work, a prominent and unambiguous
+statement of your status as Current Maintainer. You should also
+announce your new status to the same pertinent community as
+in 2b) above.
+
+
+WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE
+======================================================
+
+This section contains important instructions, examples, and
+recommendations for authors who are considering distributing their
+works under this license. These authors are addressed as `you' in
+this section.
+
+Choosing This License or Another License
+----------------------------------------
+
+If for any part of your work you want or need to use *distribution*
+conditions that differ significantly from those in this license, then
+do not refer to this license anywhere in your work but, instead,
+distribute your work under a different license. You may use the text
+of this license as a model for your own license, but your license
+should not refer to the LPPL or otherwise give the impression that
+your work is distributed under the LPPL.
+
+The document `modguide.tex' in the base LaTeX distribution explains
+the motivation behind the conditions of this license. It explains,
+for example, why distributing LaTeX under the GNU General Public
+License (GPL) was considered inappropriate. Even if your work is
+unrelated to LaTeX, the discussion in `modguide.tex' may still be
+relevant, and authors intending to distribute their works under any
+license are encouraged to read it.
+
+A Recommendation on Modification Without Distribution
+-----------------------------------------------------
+
+It is wise never to modify a component of the Work, even for your own
+personal use, without also meeting the above conditions for
+distributing the modified component. While you might intend that such
+modifications will never be distributed, often this will happen by
+accident -- you may forget that you have modified that component; or
+it may not occur to you when allowing others to access the modified
+version that you are thus distributing it and violating the conditions
+of this license in ways that could have legal implications and, worse,
+cause problems for the community. It is therefore usually in your
+best interest to keep your copy of the Work identical with the public
+one. Many works provide ways to control the behavior of that work
+without altering any of its licensed components.
+
+How to Use This License
+-----------------------
+
+To use this license, place in each of the components of your work both
+an explicit copyright notice including your name and the year the work
+was authored and/or last substantially modified. Include also a
+statement that the distribution and/or modification of that
+component is constrained by the conditions in this license.
+
+Here is an example of such a notice and statement:
+
+ %% pig.dtx
+ %% Copyright 2005 M. Y. Name
+ %
+ % 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 M. Y. Name.
+ %
+ % This work consists of the files pig.dtx and pig.ins
+ % and the derived file pig.sty.
+
+Given such a notice and statement in a file, the conditions
+given in this license document would apply, with the `Work' referring
+to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being
+generated from `pig.dtx' using `pig.ins'), the `Base Interpreter'
+referring to any `LaTeX-Format', and both `Copyright Holder' and
+`Current Maintainer' referring to the person `M. Y. Name'.
+
+If you do not want the Maintenance section of LPPL to apply to your
+Work, change `maintained' above into `author-maintained'.
+However, we recommend that you use `maintained', as the Maintenance
+section was added in order to ensure that your Work remains useful to
+the community even when you can no longer maintain and support it
+yourself.
+
+Derived Works That Are Not Replacements
+---------------------------------------
+
+Several clauses of the LPPL specify means to provide reliability and
+stability for the user community. They therefore concern themselves
+with the case that a Derived Work is intended to be used as a
+(compatible or incompatible) replacement of the original Work. If
+this is not the case (e.g., if a few lines of code are reused for a
+completely different task), then clauses 6b and 6d shall not apply.
+
+
+Important Recommendations
+-------------------------
+
+ Defining What Constitutes the Work
+
+ The LPPL requires that distributions of the Work contain all the
+ files of the Work. It is therefore important that you provide a
+ way for the licensee to determine which files constitute the Work.
+ This could, for example, be achieved by explicitly listing all the
+ files of the Work near the copyright notice of each file or by
+ using a line such as:
+
+ % This work consists of all files listed in manifest.txt.
+
+ in that place. In the absence of an unequivocal list it might be
+ impossible for the licensee to determine what is considered by you
+ to comprise the Work and, in such a case, the licensee would be
+ entitled to make reasonable conjectures as to which files comprise
+ the Work.
+
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/README.md b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/README.md
new file mode 100644
index 0000000000..34495c7bab
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/README.md
@@ -0,0 +1,22 @@
+# "Mirage" beamer theme “蜃楼” beamer 主题
+
+A beamer theme inspired by the [album art](https://www.instagram.com/juncenart/p/C5LuwoSrBnW/?img_index=2) of Zhou Shen's song [_Mirage_](https://open.spotify.com/track/1PR9aOkY0dyRRL81YXv9a4).
+
+Two modes are available: the default with a dark look; and a `light` mode is available. Sample .tex files for beamer presentations and posters are provided.
+
+
+基于周深《[反深](https://y.qq.com/n/ryqq/albumDetail/003szpvI3LMhQ7)[代词](https://music.163.com/#/album?id=190605791)》专辑的先行曲[《蜃楼》歌曲封面](http://xhslink.com/a/oF7IHZ0uUYkY)二创的beamer主题。
+
+两种模式可选:默认模式颜色深沉,`light`模式颜色较浅。详细使用方法可参考示范.tex文档。
+
+```latex
+\usetheme{Mirage}
+% or
+\usetheme[light]{Mirage}
+```
+
+## Maintainer 宏包维护
+LianTze Lim 林莲枝 (liantze@gmail.com)
+
+## License 许可协议
+[LaTeX Project Public License (LPPL 1.3c)](https://www.latex-project.org/lppl/lppl-1-3c/) \ No newline at end of file
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.pdf
new file mode 100644
index 0000000000..42a118135e
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.tex b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.tex
new file mode 100644
index 0000000000..be933dc0d7
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamertheme-mirage-doc.tex
@@ -0,0 +1,166 @@
+\documentclass{article}
+\usepackage{xeCJK}
+\usepackage[lining,tabular]{carlito}
+\usepackage{caladea}
+\usepackage{microtype}
+\usepackage{titling}
+\pretitle{\begin{center}\LARGE\bfseries}
+\posttitle{\par\end{center}}
+\usepackage[a4paper,columnsep=3em,margin=0.5in,footskip=2em]{geometry}
+\usepackage{fancyvrb}
+\usepackage{paracol}
+\usepackage{hologo}
+\usepackage{graphicx}
+\usepackage{pgffor}
+\usepackage{enumitem}
+\setlist{leftmargin=*}
+\usepackage[colorlinks]{hyperref}
+
+
+\title{``Mirage'' Beamer Theme “蜃楼”beamer主题}
+\author{LianTze Lim 林莲枝}
+\date{v1.1: 2024-10-24\\\url{https://github.com/liantze/beamerthemeMirage}}
+
+\begin{document}
+\maketitle
+
+\begin{paracol}{2}
+\begin{abstract}
+A beamer theme inspired by the
+\href{https://www.instagram.com/juncenart/p/C5LuwoSrBnW/?img_index=2}{album art} of Zhou Shen's song \href{https://open.spotify.com/track/1PR9aOkY0dyRRL81YXv9a4}{\emph{Mirage}},
+the lead single from his album \href{https://open.spotify.com/album/6IcyslRZfwWzpdhnFML6cd}{\emph{Shenself}}.
+\end{abstract}
+
+\switchcolumn
+
+\renewcommand*{\abstractname}{摘要}
+\begin{abstract}
+基于周深《\href{https://y.qq.com/n/ryqq/albumDetail/003szpvI3LMhQ7}{反深}\href{https://music.163.com/\#/album?id=190605791}{代词}》专辑的先行曲\href{http://xhslink.com/a/oF7IHZ0uUYkY}{《蜃楼》歌曲封面},二创的beamer主题。
+\end{abstract}
+\end{paracol}
+
+\begin{center}
+\includegraphics[page=1,width=.495\hsize]{mirage-beamer-zh.pdf}
+\includegraphics[page=5,width=.495\hsize]{mirage-beamer-zh.pdf}
+\end{center}
+
+\begin{paracol}{2}
+\section{Basic Usage}
+
+Two modes are available: the default has a dark look, while the
+\texttt{light} mode may be more suitable for printouts.
+
+\switchcolumn
+
+\section{基本用法}
+
+两种模式可选:默认模式颜色深沉,\texttt{light}模式颜色较浅,较适合列印。详细使用方法可参考示范 .tex 文档。
+
+\end{paracol}
+
+\begin{center}
+\begin{BVerbatim}
+\usetheme{Mirage} OR \usetheme[light]{Mirage}
+\end{BVerbatim}
+\end{center}
+
+
+\begin{paracol}{2}
+The English sample files \texttt{*-en.tex} can be compiled with \hologo{pdfLaTeX}, \hologo{XeLaTeX} or \hologo{LuaLaTeX}; but compile the Chinese sample files \texttt{*-zh.tex} with \hologo{XeLaTeX}. Compile twice to get the correct total number of frames in the footer.
+
+\switchcolumn
+
+英文示范文档 \texttt{*-en.tex} 可用 \hologo{pdfLaTeX}, \hologo{XeLaTeX} 或 \hologo{LuaLaTeX}
+编译。中文示范文档 \texttt{*-zh.tex} 请用中文编译。页脚里的幻灯片帧数需多次编译才能正确显示。
+
+\switchcolumn*
+\setlength{\fboxsep}{0pt}
+
+\begin{center}
+\foreach \n in {1,...,6} {\fbox{\includegraphics[page=\n,width=.49\hsize]{mirage-beamer-zh.pdf}} }
+\end{center}
+
+\switchcolumn
+
+\begin{center}
+\foreach \n in {1,...,6} {\fbox{\includegraphics[page=\n,width=.49\hsize]{mirage-beamer-en.pdf}} }
+\end{center}
+
+\switchcolumn*
+
+
+\section{Posters}
+
+With some modificatons, the Mirage theme can be used for creating posters the \texttt{beamerposter} package. See sample files \texttt{mirage-poster-en.tex} and \texttt{mirage-poster-zh.tex} for examples.
+
+\switchcolumn
+
+\section{海报}
+
+“蜃楼”主题也可以和\texttt{beamerposter}搭配使用制作海报(一些设置需些许修改),请参照\texttt{mirage-poster-zh.tex}及\texttt{mirage-poster-en.tex}.
+
+\switchcolumn*
+
+\begin{center}
+\fbox{\includegraphics[width=.8\hsize]{mirage-poster-en.pdf}}
+\end{center}
+
+\switchcolumn
+
+\begin{center}
+\fbox{\includegraphics[width=.8\hsize]{mirage-poster-zh.pdf}}
+\end{center}
+
+\switchcolumn*
+
+\section{Some simple customisationoptions}
+
+\begin{itemize}
+\item The Mirage theme itself doesn't set any body fonts, so you can load your own preferred fonts in your \texttt{.tex} files.
+
+\item The sample \texttt{.tex} files load the font packages \texttt{caladea}, \texttt{carlito}, \texttt{newtxsf} for the English (\hologo{pdfLaTeX}) samples, and \texttt{Fira Math} for the Chinese (\hologo{XeLaTeX}) samples. You can change these as you like.
+
+\item \texttt{pullquote} used in frame 4 is a custom environment. You can change its beamer font and color, or re-define the \verb|\MiragePullquoteOpen| marker (see frame 4).
+
+\item Other markers that can be \verb|\renewcommand|:
+\begin{itemize}[nosep]
+ \item \verb|\MirageFrametitlePrefix|
+ \item \verb|\MirageProofPrefix|
+ \item \verb|\MirageTheoremPrefix|
+\end{itemize}
+for prefix icons of the frame title, \texttt{proof} block title and \texttt{theorem}-like block titles. (See commented code before frame 5.)
+
+\item The Mirage theme loads \texttt{fontawesome5}, so you can use
+icons provided by this package.
+
+\item \verb|\MirageGlowRadius| is a length controlling the size of the glowy circle in the footline; especially useful when creating posters with \texttt{beamerposter}.
+\end{itemize}
+
+\switchcolumn
+
+\section{一些可调整的元素}
+\begin{itemize}
+\item “蜃楼”本身并没有设置任何字体,用户可以自行在\texttt{.tex}导言曲加载自己喜欢的宏包或设置字体。
+
+\item 示范的 \texttt{.tex} 档案导言区加载了\texttt{caladea}、\texttt{carlito}、 \texttt{newtxsf} (仅限英文\hologo{pdfLaTeX}示范文档) 、\texttt{Fira Math} (仅限中文\hologo{XeLaTeX}示范文档)。这些都是可以自行更换的!
+
+\item 第4帧幻灯片里用的\texttt{pullquote}环境是“蜃楼”主题自定义的。它的beamer font、color都是可以更换的, 也可重新定义前缀装饰 \verb|\MiragePullquoteOpen| marker(详见第4帧幻灯片示范代码)。
+
+\item 其它可以 \verb|\renewcommand|的装饰:
+\begin{itemize}[nosep]
+ \item \verb|\MirageFrametitlePrefix|
+ \item \verb|\MirageProofPrefix|
+ \item \verb|\MirageTheoremPrefix|
+\end{itemize}
+这些是frame title、\texttt{proof} block title 以及\texttt{theorem}之类block titles的前缀装饰。(详见第5帧幻灯片之前的注释)
+
+\item “蜃楼”主题已加载\texttt{fontawesome5}宏包,可以尽情使用此宏包提供的符号。
+
+\item \verb|\MirageGlowRadius| 是用来控制页脚的小光球半径的length;制作海报时可以酌量加大。
+\end{itemize}
+
+\end{paracol}
+
+
+
+\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamerthemeMirage.sty b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamerthemeMirage.sty
new file mode 100644
index 0000000000..262d2e2a5d
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/beamerthemeMirage.sty
@@ -0,0 +1,166 @@
+% beamerthemeMirage.sty v1.1 2024/10/24
+% by LianTze Lim (liantze@gmail.com)
+% A beamer theme inspired by Zhou Shen's `Mirage' song poster
+% 基于周深《反深代词》先行曲《蜃楼》歌曲海报色调的beamer主题
+\ProvidesPackage{beamerthemeMirage}
+
+\newif\ifMirage@light
+\DeclareOptionBeamer{light}{\Mirage@lighttrue}
+\ProcessOptionsBeamer
+
+\RequirePackage{regexpatch}
+\RequirePackage[fixed]{fontawesome5}
+\RequirePackage{relsize}
+
+\definecolor{MirageGray0}{RGB}{30,30,30}
+\definecolor{MirageGray1}{RGB}{48,48,48}
+\definecolor{MirageGray2}{RGB}{140,140,140}
+\definecolor{MirageGray3}{RGB}{60,66,71}
+\definecolor{MiragePink}{RGB}{212,183,183}
+\definecolor{MirageBlue}{RGB}{156,185,220}
+
+\ifMirage@light
+ \setbeamercolor{normal text}{fg=MirageGray3,bg=white}
+ \setbeamercolor{structure}{fg=MirageBlue!80!MirageGray0}
+ \setbeamercolor{item}{fg=MirageBlue!50!MirageGray0}
+\else
+ \setbeamercolor{normal text}{bg=MirageGray3,fg=white}
+ \setbeamercolor{structure}{fg=MirageBlue}
+ \setbeamercolor{item}{fg=MirageBlue!70!MirageGray0}
+\fi
+\setbeamercolor{alerted text}{fg=MiragePink!60!red!80!MirageGray0}
+\setbeamercolor{section in head/foot}{fg=structure!80}
+\setbeamercolor{page number in head/foot}{fg=structure!80}
+
+\xpatchcmd{\beamerboxesrounded}{#2}{\vspace*{0.5ex}#2\vspace*{0.5ex}}{}{}
+\xpatchcmd{\beamerboxesrounded}{\vskip2pt}{\vskip0.5ex}{}{}
+\pretocmd{\endbeamerboxesrounded}{\par\vspace*{0.5ex}}{}{}
+\usetheme[compress]{Singapore}
+\setbeamertemplate{blocks}[rounded]
+
+\setbeamerfont{block title}{family=\rmfamily,series=\bfseries}
+
+\ifMirage@light
+ \setbeamercolor{block body}{bg=MirageBlue!90,fg=MirageBlue!40!black}
+\else
+ \setbeamercolor{block body}{fg=MirageBlue,bg=MirageBlue!40!black}
+\fi
+\setbeamercolor{block title}{fg=MirageBlue!90,bg=MirageBlue!30!black}
+
+\setbeamercolor{block body example}{fg=MirageGray3,bg=MirageBlue!40}
+\setbeamercolor{block title example}{bg=MirageBlue!90,fg=MirageBlue!30!black}
+
+\setbeamercolor{block body alerted}{fg=MirageGray3,bg=MiragePink!30}
+\ifMirage@light
+ \setbeamercolor{block title alerted}{fg=MiragePink!60!red!80!MirageGray0,bg=MiragePink!80}
+\else
+ \setbeamercolor{block title alerted}{fg=MiragePink!60!red!80!MirageGray0,bg=MiragePink}
+\fi
+
+\newcommand{\MirageProofPrefix}{\faEllipsisH}
+\newcommand{\MirageTheoremPrefix}{\faChevronCircleRight}
+
+\addtobeamertemplate{proof begin}{%
+ \let\oldinsertproofname\insertproofname%
+ \def\insertproofname{{\color{block title.fg!50!block title.bg}\relsize{-1}\MirageProofPrefix}\oldinsertproofname}%
+}{}
+
+\addtobeamertemplate{theorem begin}{%
+ \let\oldinserttheoremname\inserttheoremname%
+ \def\inserttheoremname{{\color{block title.fg!50!block title.bg}\relsize{-1}\MirageTheoremPrefix}\oldinserttheoremname}%
+}{}
+
+
+\ifMirage@light
+ \setbeamercolor{pullquote}{fg=MiragePink!90!normal text.fg}
+\else
+ \setbeamercolor{pullquote}{fg=MiragePink}
+\fi
+\setbeamerfont{pullquote}{family=\rmfamily,size=\Large,shape=\itshape}
+\newcommand{\MiragePullquoteOpen}{\faQuoteLeft}
+\newcommand{\MiragePullquoteClose}{\faQuoteRight}
+\newenvironment{pullquote}{%
+ \usebeamercolor{pullquote}%
+ \color{pullquote.fg!15!normal text.bg}\hrule width \hsize height 0.15ex\vskip2ex%
+ \begin{beamercolorbox}[colsep=1ex,leftskip=1em]{pullquote}%
+ \usebeamerfont{pullquote}%
+ \raisebox{0pt}[0pt][0pt]{\makebox[0pt]{\color{pullquote.fg!30!normal text.bg}\hskip-1em\huge\MiragePullquoteOpen}}%
+ \ignorespaces%
+}{%
+ \end{beamercolorbox}%
+ \vskip2ex\hrule width \hsize height 0.15ex%
+}
+
+
+\setbeamertemplate{itemize items}[circle]
+\setbeamertemplate{navigation symbols}{}
+\setbeamertemplate{frametitle continuation}[from second]
+\ifMirage@light
+ \pgfdeclareverticalshading{mirage@headfade}{\the\paperwidth}{%
+ color(0ex)=(white);%
+ color(0.2ex)=(MirageBlue);%
+ color(1.3ex)=(MiragePink);%
+ color(1.7ex)=(white)%
+ }
+\else
+ \pgfdeclareverticalshading{mirage@headfade}{\the\paperwidth}{%
+ color(0ex)=(MirageGray0);%
+ color(0.2ex)=(MirageBlue);%
+ color(1.3ex)=(MiragePink);%
+ color(1.7ex)=(MirageGray1)%
+ }
+\fi
+\addtobeamertemplate{headline}{}{%
+ \vskip1ex%
+ \pgfpathrectangle{\pgfpoint{0pt}{0pt}}{\pgfpoint{\paperwidth}{1.7ex}}
+ \pgfuseshading{mirage@headfade}
+ \vskip-2ex%
+}{}
+
+\RequirePackage{tikz}
+\usetikzlibrary{shadows}
+
+\pgfdeclareradialshading{tikz@lib@fade@circle@50}{\pgfpointorigin}{
+ color(0pt)=(pgftransparent!0); color(20bp)=(pgftransparent!0);
+ color(25bp)=(pgftransparent!100); color(80bp)=(pgftransparent!100)}%
+\pgfdeclarefading{circle with fuzzy edge 50 percent}{\pgfuseshading{tikz@lib@fade@circle@50}}%
+
+\newcommand{\MirageFootlineContents}{\insertframenumber{} of \inserttotalframenumber{}}
+\newlength{\MirageGlowRadius}
+\setlength{\MirageGlowRadius}{0.2ex}
+\newbox{\Mirage@smalleclipse}
+\AddToHook{begindocument/before}{
+ \savebox{\Mirage@smalleclipse}{%
+ \usebeamercolor{normal text}%
+ \tikz{\node[anchor=center,circle,circular glow={fill=MiragePink,shadow scale=2.5, path fading={circle with fuzzy edge 50 percent}},draw=normal text.fg,fill=normal text.fg,outer sep=0pt,inner sep=\MirageGlowRadius](O){};%
+ \draw[line width=0.1ex,draw=normal text.fg](0.3ex,0pt) -- ++(0.75\paperwidth,0pt);%
+ }%
+ }%
+}
+
+\setbeamertemplate{footline}{%
+ \begin{beamercolorbox}[ht=2.5ex,dp=1ex,right,sep=0.5ex]{page number in head/foot}%
+ \leavevmode\usebox{\Mirage@smalleclipse}%
+ \vskip-1ex%
+ \MirageFootlineContents\hspace*{1ex}%
+ \end{beamercolorbox}%
+}{}
+
+\setbeamertemplate{frametitle}[default][left]
+\AddToHook{begindocument}{
+\ifdefined\addfontfeatures
+ \setbeamerfont{title}{family=\rmfamily\addfontfeatures{LetterSpace=5}}
+\else
+ \RequirePackage[letterspace=50]{microtype}
+ \setbeamerfont{title}{family=\rmfamily\lsstyle}
+\fi
+}
+\setbeamerfont{title}{size=\LARGE,series=\bfseries}
+\setbeamerfont{frametitle}{family=\rmfamily,size=\Large,series=\bfseries}
+
+\newcommand{\MirageFrametitlePrefix}{\faBorderStyle}
+\addtobeamertemplate{frametitle}{%
+ \let\oldinsertframetitle\insertframetitle%
+ \renewcommand{\insertframetitle}{{\relsize{-1}\color{frametitle.fg!50!frametitle.bg}\MirageFrametitlePrefix}\oldinsertframetitle}%
+}
+
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.pdf
new file mode 100644
index 0000000000..b4d7004b70
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.tex b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.tex
new file mode 100644
index 0000000000..91c4fc06fa
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-en.tex
@@ -0,0 +1,138 @@
+\documentclass[aspectratio=1610]{beamer}
+% This can be compiled with pdflatex.
+% Load fontspec so that you can load OTF/TTF fonts if you want to; but then you must compile with xelatex or lualatex!
+% \usepackage{fontspec}
+
+% beamerthemeMirage.sty v1.0 2024/04/14
+% by LianTze Lim (liantze@gmail.com)
+% A beamer theme inspired by Zhou Shen's `Mirage' song poster
+% \usetheme{Mirage} % Default = dark mode
+\usetheme[light]{Mirage} % Alternative light mode
+
+% The glowy light in the footnline
+% \setlength{\MirageGlowRadius}{0.25ex}
+
+% Mirage theme loads the fontawesome5 package
+
+\title{Mirage Theme}
+\subtitle{Inspired by the song poster of the lead single, \emph{Mirage}}
+\author{LianTze Lim}
+\institute{The full album \emph{Shenself} now available on all major music platforms}
+\date{2024/10/22}
+
+\usepackage{iftex}
+
+% These fonts will work with pdflatex, xelatex, lualatex
+\usepackage[lining,tabular]{carlito}
+\usepackage{caladea}
+
+\ifboolexpr{bool{xetex} or bool{luatex}}{
+ % Unicode-math and TTF/OTF fonts will only work with xelatex, lualatex
+ \usepackage{unicode-math}
+ % \setmathfont{STIX Two Math}
+ % \setmathfont{Erewhon Math}
+ \setmathfont{Fira Math}
+}{% Sans math font in pdflatex:
+ \usepackage[T1]{fontenc}
+ \usepackage{newtxsf}
+}
+
+
+\begin{document}
+
+\frame{\maketitle}
+
+\section{Intro}
+\begin{frame}
+\frametitle{Introduction}
+
+\begin{itemize}
+ \item Behold the mechanical dove \faDove{} flying through the air
+ \item How might its eyes be lit \faEye[regular] that it appears lifelike
+
+\begin{enumerate}
+ \item Are digital dawns and dusks \faCloudSun{} more colourful? \faCloudMoon
+ \item Are bionic lovers \faGrinHearts{} more faithful? \faGrin*[regular]
+\end{enumerate}
+
+ \item Push this one door open \faDoorOpen{} and there are thousands more \faDoorClosed{\small\faDoorClosed}{\footnotesize\faDoorClosed}{\scriptsize\faDoorClosed}{\tiny\faDoorClosed}
+\end{itemize}
+
+\end{frame}
+
+\subsection{Lists}
+\begin{frame}
+\frametitle{The ancient gaze from aeons ago}
+ \begin{enumerate}
+ \item How might it discern if this moment is fantasy or real
+ \begin{enumerate}
+ \item Is man-made talent true inherent wisdom?
+ \begin{enumerate}
+ \item Do cloned bodies have souls?
+ \item Forever questioning, but ever without a conclusion
+ \end{enumerate}
+ \end{enumerate}
+ \item \alert{Can it be real}
+ \end{enumerate}
+
+\end{frame}
+
+\section{Blocks}
+
+\begin{frame}[c]
+\frametitle{The Heavenward Staircase of Wisdom is ever endless}
+\begin{columns}
+\begin{column}[b]{.35\textwidth}
+\begin{pullquote}
+ Can it be real\\
+ The world is a mirage
+\end{pullquote}
+\end{column}
+
+\begin{column}[t]{.65\textwidth}
+\setbeamercolor{pullquote}{fg=MirageBlue}
+\renewcommand{\MiragePullquoteOpen}{«}
+\begin{pullquote}
+Amidst barren hills of electronic fantasies\\
+I search for oases of truth\\
+Though as small as mayflies\\
+I dare gaze at the galaxies
+\end{pullquote}
+\end{column}
+\end{columns}
+\end{frame}
+
+
+% \renewcommand{\MirageFrametitlePrefix}{\faDove}
+% \renewcommand{\MirageProofPrefix}{\faCheckSquare[regular]}
+% \renewcommand{\MirageTheoremPrefix}{\faCogs}
+
+\begin{frame}[allowframebreaks]{Blocks blocks blocks 123}
+
+ \begin{exampleblock}{Gosh I've no idea what I'm writing, do you?}
+ Now solve $x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}$. This should be easy, right?
+ \end{exampleblock}
+
+ \begin{alertblock}{Gosh I've no idea what I'm writing, do you?}
+ \[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+ \end{alertblock}
+
+ \begin{block}{Gosh I've no idea what I'm writing, do you?}
+ \[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+ \end{block}
+
+ \begin{proof}
+ As everyone can clearly see, $1+1=2$.
+ \end{proof}
+
+ \begin{theorem}
+ A wonderful thing is about to happen -- it \emph{will} eventually happen.
+ \end{theorem}
+
+ \begin{definition}
+ A wonderful thing is about to happen -- it \emph{will} eventually happen.
+ \end{definition}
+\end{frame}
+
+
+\end{document}
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.pdf
new file mode 100644
index 0000000000..edd2d751c9
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.tex b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.tex
new file mode 100644
index 0000000000..08f8aeb104
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-beamer-zh.tex
@@ -0,0 +1,136 @@
+% 中文请用ctexbeamer, 个人觉得行距linespread宽一点看起来比较舒服。XeLaTeX编译。
+\documentclass[aspectratio=1610,linespread=1.4,t]{ctexbeamer}
+
+% If this is an English-only deck, you don't need ctexbeamer nor the wider linespread
+% \documentclass[aspectratio=1610,t]{beamer}
+% But load fontspec so that you can load OTF/TTF fonts if you want to!
+% \usepackage{fontspec}
+
+% beamerthemeMirage.sty v1.0 2024/04/14
+% by LianTze Lim (liantze@gmail.com)
+% A beamer theme inspired by Zhou Shen's `Mirage' song poster
+% 基于周深《反深代词》先行曲《蜃楼》歌曲海报色调的beamer主题
+\usetheme{Mirage} % Default = dark mode
+% \usetheme[light]{Mirage} % Alternative light mode
+
+% The glowy light in the footnline
+% \setlength{\MirageGlowRadius}{0.25ex}
+
+% Mirage theme loads the fontawesome5 package
+
+\title{Mirage Theme 蜃楼}
+\subtitle{此主题为基于《蜃楼》歌曲海报的二创}
+\author{林莲枝}
+\institute{《反深代词》专辑已在各大音乐平台上线}
+\date{2024/10/22}
+
+% These fonts will work with pdflatex, xelatex, lualatex. If you're using ctexbeamer it's best to compile in xelatex.
+\usepackage[lining,tabular]{carlito}
+\usepackage{caladea}
+
+% But unicode-math and TTF/OTF fonts will only work with xelatex, lualatex
+\usepackage{unicode-math}
+% \setmathfont{STIX Two Math}
+% \setmathfont{Erewhon Math}
+\setmathfont{Fira Math}
+
+\begin{document}
+
+\frame{\maketitle}
+
+\section{Intro}
+\begin{frame}
+\frametitle{Introduction}
+
+\begin{itemize}
+ \item 看机械的白鸽\faDove{} 从空中飞过
+ \item 要如何点睛\faEye[regular] 它才堪称鲜活
+
+\begin{enumerate}
+ \item 数字的晨昏\faCloudSun{} 是否更缤纷\faCloudMoon
+ \item 仿生的情人\faGrinHearts{} 是否更忠贞\faGrin*[regular]
+\end{enumerate}
+
+ \item 推开一扇门\faDoorOpen{} 还有万千重门\faDoorClosed{\small\faDoorClosed}{\footnotesize\faDoorClosed}{\scriptsize\faDoorClosed}{\tiny\faDoorClosed}
+\end{itemize}
+
+\end{frame}
+
+\subsection{Lists}
+\begin{frame}
+\frametitle{那来自过去 古老的眼神}
+ \begin{enumerate}
+ \item 如何能辨认 此刻是幻是真
+ \begin{enumerate}
+ \item 人造的天分 是否算慧根
+ \begin{enumerate}
+ \item 克隆的肉身 是否有灵魂
+ \item 永远在追问 却从来都没结论
+ \end{enumerate}
+ \end{enumerate}
+ \item \alert{Can it be real}
+ \end{enumerate}
+
+\end{frame}
+
+\section{其它示范}
+
+\begin{frame}[c]
+\frametitle{智慧的天梯从来都没尽头}
+\begin{columns}
+\begin{column}{.4\textwidth}
+\begin{pullquote}
+ Can it be real\\
+ The world is a mirage
+\end{pullquote}
+\end{column}
+
+\begin{column}{.53\textwidth}
+\setbeamercolor{pullquote}{fg=MirageBlue}
+\renewcommand{\MiragePullquoteOpen}{\hskip-.2\ccwd『}
+\begin{pullquote}
+在电幻的荒丘 寻真实的绿洲\\
+渺小得如蜉蝣 也仰望着宇宙
+\end{pullquote}
+\end{column}
+\end{columns}
+\end{frame}
+
+
+% \renewcommand{\MirageFrametitlePrefix}{\faDove}
+% \renewcommand{\MirageProofPrefix}{\faCheckSquare[regular]}
+% \renewcommand{\MirageTheoremPrefix}{\faCogs}
+
+\begin{frame}[allowframebreaks]{各种block 123}
+
+ \begin{exampleblock}{算了我也不知道在写什么,do you?}
+ Now solve $x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}$. 对各位同学来说应该挑战不大。
+ \end{exampleblock}
+
+\begin{columns}[T]
+\column{0.48\textwidth}
+ \begin{alertblock}{算了我也不知道在写什么,do you?}
+ \[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+ \end{alertblock}
+
+\column{0.48\textwidth}
+ \begin{block}{算了我也不知道在写什么,do you?}
+ \[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+ \end{block}
+\end{columns}
+
+ \begin{proof}
+ 显而易见,$1+1=2$.
+ \end{proof}
+
+ \begin{theorem}
+ 有一件很美好的事情将要发生,它终会发生。
+ \end{theorem}
+
+ \begin{definition}
+ 有一件很美好的事情将要发生,它终会发生。
+ \end{definition}
+\end{frame}
+
+
+\end{document}
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.pdf
new file mode 100644
index 0000000000..3efba7d947
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.tex b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.tex
new file mode 100644
index 0000000000..ee26690d04
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-en.tex
@@ -0,0 +1,172 @@
+\documentclass{beamer}
+
+\usepackage[size=a3,orientation=portrait,scale=1.4]{beamerposter}
+
+% (Mirage theme already loads fontawesome5)
+% \usetheme{Mirage}
+\usetheme[light]{Mirage}
+
+\usepackage{iftex}
+
+% These fonts will work with pdflatex, xelatex, lualatex
+\usepackage[lining,tabular]{carlito}
+\usepackage{caladea}
+
+\ifboolexpr{bool{xetex} or bool{luatex}}{
+ % Unicode-math and TTF/OTF fonts will only work with xelatex, lualatex
+ \usepackage{unicode-math}
+ % \setmathfont{STIX Two Math}
+ % \setmathfont{Erewhon Math}
+ \setmathfont{Fira Math}
+}{% Sans math font in pdflatex:
+ \usepackage[T1]{fontenc}
+ \usepackage{newtxsf}
+}
+
+
+% beamer slides -> poster = some adjustments needed
+\setbeamerfont{headline}{size=\huge}
+\setbeamerfont{footline}{size=\large}
+\setbeamercolor{bibliography item}{fg=block body.fg}
+\setbeamercolor{bibliography entry author}{fg=block body.fg}
+\setbeamercolor{bibliography entry title}{fg=block body.fg}
+\setbeamercolor{bibliography entry location}{fg=block body.fg}
+\setbeamercolor{bibliography entry note}{fg=block body.fg}
+\setlength{\MirageGlowRadius}{0.5ex}
+
+% _slightly_ more prominent colours for the headline... but not so much
+\makeatletter
+\ifMirage@light
+ \setbeamercolor{section in head/foot}{fg=structure!80!MirageGray0}
+ \setbeamercolor{page number in head/foot}{fg=structure!80!MirageGray0}
+\else
+ \setbeamercolor{section in head/foot}{fg=structure!90}
+ \setbeamercolor{page number in head/foot}{fg=structure!90}
+\fi
+\makeatother
+\setbeamerfont{title}{size=\Huge}
+\setbeamerfont{author}{size=\large}
+% might need some extra vertical space when using [t]
+\addtobeamertemplate{headline}{}{\vspace*{1ex}}
+
+% yes I've sinned by abusing and re-defining \insertnavigation to quickly
+% insert the title and author in the headline...
+\renewcommand*{\insertnavigation}[1]{\centering\vspace*{-1ex}%
+ {\usebeamerfont{title}%
+ \insertshorttitle[width=0.95\hsize,respectlinebreaks,center]\par}%
+ \vspace*{0.5ex}%
+ {\usebeamerfont{author}%
+ \insertshortauthor[width=0.95\hsize,respectlinebreaks,center]\par}%
+}
+
+
+% adjust itemize/enumerate list indents if necessary
+\setlength{\leftmarginii}{1.75em}
+\setlength{\leftmarginiii}{2.5em}
+
+\usepackage{graphicx}
+\usepackage[style=numeric,natbib]{biblatex}
+\addbibresource{sample-refs.bib}
+
+
+\title{Using the Mirage theme for posters}
+\author{John Doe, Jane Smith and A.~N.~Other }
+\renewcommand{\MirageFootlineContents}{Dept of XX, Uni of YY, other information as appropriate}
+
+\begin{document}
+
+\begin{frame}
+
+\begin{columns}[T]
+\column{.47\textwidth}
+\begin{block}{Introduction}
+
+\begin{itemize}
+ \item Behold the mechanical dove \faDove{} flying through the air
+ \item How might its eyes be lit \faEye[regular] that it appears lifelike
+
+\begin{enumerate}
+ \item Are digital dawns and dusks \faCloudSun{} more colourful? \faCloudMoon
+ \item Are bionic lovers \faGrinHearts{} more faithful? \faGrin*[regular]
+\end{enumerate}
+
+ \item Push this one door open \faDoorOpen{} and there are thousands more \faDoorClosed{\small\faDoorClosed}{\footnotesize\faDoorClosed}{\scriptsize\faDoorClosed}{\tiny\faDoorClosed}
+\end{itemize}
+
+\end{block}
+
+\begin{block}{The ancient gaze from aeons ago}
+ \begin{enumerate}
+ \item How might it discern if this moment is fantasy or real
+ \begin{enumerate}
+ \item Is man-made talent true inherent wisdom?
+ \begin{enumerate}
+ \item Do cloned bodies have souls?
+ \item Forever questioning, but ever without a conclusion
+ \end{enumerate}
+ \end{enumerate}
+ \item \alert{Can it be real}
+ \end{enumerate}
+\end{block}
+
+\begin{pullquote}
+ Can it be real\\
+ The world is a mirage
+\end{pullquote}
+
+\bigskip
+
+\setbeamercolor{pullquote}{fg=MirageBlue}
+\renewcommand{\MiragePullquoteOpen}{«}
+\begin{pullquote}
+Amidst barren hills of electronic fantasies\\
+I search for oases of truth\\
+Though as small as mayflies\\
+I dare gaze at the galaxies
+\end{pullquote}
+
+\column{.47\textwidth}
+\begin{exampleblock}{Gosh I've no idea what I'm writing, do you?}
+Now solve $x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}$. This should be easy, right?
+\end{exampleblock}
+
+\begin{alertblock}{Gosh I've no idea what I'm writing, do you?}
+\[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+\end{alertblock}
+
+\begin{block}{Gosh I've no idea what I'm writing, do you?}
+\[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+\end{block}
+
+\begin{proof}
+As everyone can clearly see, $1+1=2$.
+\end{proof}
+
+\begin{theorem}
+A wonderful thing is about to happen -- it \emph{will} eventually happen.
+\end{theorem}
+
+\begin{definition}
+A wonderful thing is about to happen -- it \emph{will} eventually happen.
+\end{definition}
+
+\end{columns}
+
+\begin{block}{Superior Images and False Horizons \citep{Mirage-Greenler1980,AtmRefrac-Hyperphysics}}
+\begin{center}\includegraphics[width=0.95\hsize]{miragesup.png}\end{center}
+A superior image can be produced when warm air exists over cold water. Again, using the pattern from Greenler, the vertical scale and the curvature are greatly exaggerated to show the effect. Such images are often seen at great distances in the arctic region when the air is significantly warmer than the water. Since the geometry of the mirage images depends on the details of the temperature contour, a great variety of mirage images can be formed.
+
+Source: \url{http://hyperphysics.phy-astr.gsu.edu/hbase/atmos/mirage.html}
+\end{block}
+
+\vfill
+
+\begin{block}{\refname}
+\renewcommand*{\bibfont}{\small}
+\addtolength{\bibitemsep}{-0.5ex}
+\setlength{\biblabelsep}{0.25em}
+\printbibliography[heading=none]
+\end{block}
+
+\end{frame}
+\end{document}
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.pdf
new file mode 100644
index 0000000000..2852ddbfc4
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.tex b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.tex
new file mode 100644
index 0000000000..1f34757d1f
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/mirage-poster-zh.tex
@@ -0,0 +1,164 @@
+% Just use beamer, not ctexbeamer, if you're not typesetting Chinese
+% \documentclass{beamer}
+\documentclass[linespread=1.4]{ctexbeamer}
+
+\usepackage[size=a3,orientation=portrait,scale=1.4]{beamerposter}
+
+% (Mirage theme already loads fontawesome5)
+\usetheme{Mirage}
+% \usetheme[light]{Mirage}
+
+% fonts
+\usepackage[lining,tabular]{carlito}
+\usepackage{caladea}
+\usepackage{unicode-math}
+\setmathfont{Erewhon Math}
+
+
+% beamer slides -> poster = some adjustments needed
+\setbeamerfont{headline}{size=\huge}
+\setbeamerfont{footline}{size=\large}
+\setbeamercolor{bibliography item}{fg=block body.fg}
+\setbeamercolor{bibliography entry author}{fg=block body.fg}
+\setbeamercolor{bibliography entry title}{fg=block body.fg}
+\setbeamercolor{bibliography entry location}{fg=block body.fg}
+\setbeamercolor{bibliography entry note}{fg=block body.fg}
+\setlength{\MirageGlowRadius}{0.5ex}
+
+% _slightly_ more prominent colours for the headline... but not so much
+\makeatletter
+\ifMirage@light
+ \setbeamercolor{section in head/foot}{fg=structure!80!MirageGray0}
+ \setbeamercolor{page number in head/foot}{fg=structure!80!MirageGray0}
+\else
+ \setbeamercolor{section in head/foot}{fg=structure!90}
+ \setbeamercolor{page number in head/foot}{fg=structure!90}
+\fi
+\makeatother
+\setbeamerfont{title}{size=\Huge}
+\setbeamerfont{author}{size=\large}
+% might need some extra vertical space when using [t]
+\addtobeamertemplate{headline}{}{\vspace*{1ex}}
+
+% yes I've sinned by abusing and re-defining \insertnavigation to quickly
+% insert the title and author in the headline...
+\renewcommand*{\insertnavigation}[1]{\centering\vspace*{-1ex}%
+ {\usebeamerfont{title}%
+ \insertshorttitle[width=0.95\hsize,respectlinebreaks,center]\par}%
+ \vspace*{0.5ex}%
+ {\usebeamerfont{author}%
+ \insertshortauthor[width=0.95\hsize,respectlinebreaks,center]\par}%
+}
+
+
+% adjust itemize/enumerate list indents if necessary
+\setlength{\leftmarginii}{1.75em}
+\setlength{\leftmarginiii}{2.5em}
+
+\usepackage{graphicx}
+\usepackage[style=numeric,natbib]{biblatex}
+\addbibresource{sample-refs.bib}
+
+
+\title{当蜃楼Mirage主题拿来做海报}
+\author{作者甲、作者乙、作者丙}
+\renewcommand{\MirageFootlineContents}{Dept of XX, Uni of YY, 某某大学,其它适合资讯}
+
+\begin{document}
+
+\begin{frame}
+
+\begin{columns}[T]
+\column{.47\textwidth}
+\begin{block}{Introduction}
+
+\begin{itemize}
+ \item 看机械的白鸽\faDove{} 从空中飞过
+ \item 要如何点睛\faEye[regular] 它才堪称鲜活
+
+\begin{enumerate}
+ \item 数字的晨昏\faCloudSun{} 是否更缤纷\faCloudMoon
+ \item 仿生的情人\faGrinHearts{} 是否更忠贞\faGrin*[regular]
+\end{enumerate}
+
+ \item 推开一扇门\faDoorOpen{} 还有万千重门\faDoorClosed{\small\faDoorClosed}{\footnotesize\faDoorClosed}{\scriptsize\faDoorClosed}{\tiny\faDoorClosed}
+\end{itemize}
+
+\end{block}
+
+\begin{block}{那来自过去 古老的眼神}
+ \begin{enumerate}
+ \item 如何能辨认 此刻是幻是真
+ \begin{enumerate}
+ \item 人造的天分 是否算慧根
+ \begin{enumerate}
+ \item 克隆的肉身 是否有灵魂
+ \item 永远在追问 却从来都没结论
+ \end{enumerate}
+ \end{enumerate}
+ \item \alert{Can it be real}
+ \end{enumerate}
+\end{block}
+
+\begin{pullquote}
+ Can it be real\\
+ The world is a mirage
+\end{pullquote}
+
+\bigskip
+
+\setbeamercolor{pullquote}{fg=MirageBlue}
+\renewcommand{\MiragePullquoteOpen}{\hskip-.2\ccwd『}
+\begin{pullquote}
+在电幻的荒丘 寻真实的绿洲\\
+渺小得如蜉蝣 也仰望着宇宙
+\end{pullquote}
+
+\column{.47\textwidth}
+\begin{exampleblock}{算了我也不知道在写什么,do you?}
+Now solve $x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}$. 对各位同学来说应该挑战不大。
+\end{exampleblock}
+
+\begin{alertblock}{算了我也不知道在写什么,do you?}
+\[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+\end{alertblock}
+
+\begin{block}{算了我也不知道在写什么,do you?}
+\[ x = \frac{-b \pm \sqrt{b^2 -4ac}}{2a}, \quad\therefore \alpha \neq \Omega \]
+\end{block}
+
+\begin{proof}
+显而易见,$1+1=2$.
+\end{proof}
+
+\begin{theorem}
+有一件很美好的事情将要发生,它终会发生。
+\end{theorem}
+
+\begin{definition}
+有一件很美好的事情将要发生,它终会发生。
+\end{definition}
+
+\end{columns}
+
+\begin{block}{Superior Images and False Horizons \citep{Mirage-Greenler1980,AtmRefrac-Hyperphysics}}
+\begin{center}\includegraphics[width=0.95\hsize]{miragesup.png}\end{center}
+% locally change the linespread for this English-only paragraph.
+\linespread{1}\selectfont
+A superior image can be produced when warm air exists over cold water. Again, using the pattern from Greenler, the vertical scale and the curvature are greatly exaggerated to show the effect. Such images are often seen at great distances in the arctic region when the air is significantly warmer than the water. Since the geometry of the mirage images depends on the details of the temperature contour, a great variety of mirage images can be formed.
+
+Source: \url{http://hyperphysics.phy-astr.gsu.edu/hbase/atmos/mirage.html}
+\end{block}
+
+\vfill
+
+\begin{block}{\refname}
+% All English refs, so...
+\renewcommand*{\bibfont}{\small\linespread{1}\selectfont}
+\setlength{\biblabelsep}{0.25em}
+\addtolength{\bibitemsep}{-0.5ex}
+\printbibliography[heading=none]
+\end{block}
+
+\end{frame}
+\end{document}
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/miragesup.png b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/miragesup.png
new file mode 100644
index 0000000000..fbab14be92
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/miragesup.png
Binary files differ
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/sample-refs.bib b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/sample-refs.bib
new file mode 100644
index 0000000000..d4b9f9f524
--- /dev/null
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage/sample-refs.bib
@@ -0,0 +1,16 @@
+@misc{AtmRefrac-Hyperphysics,
+ author={Carl Rod Nave},
+ year={2000},
+ title={Mirages and other atomospheric optic phenomena},
+ url={http://hyperphysics.phy-astr.gsu.edu/hbase/atmos/mirage.html},
+ urldate={2024-09-20},
+ organization={HyperPhysics, Department of Physics and Astronomy, Georgia State University}
+}
+@inbook{Mirage-Greenler1980,
+ author={Greenler, Robert},
+ title={Atmospheric refraction :mirages, twinkling stars, and the green flash},
+ booktitle={Rainbows, Halos, and Glories},
+ publisher={Cambridge University Press},
+ year={1980},
+ chapter={7}
+} \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/LICENSE b/macros/latex/contrib/cora-macs/LICENSE
new file mode 100644
index 0000000000..bbcc4848cc
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2024 Tobias Ladner, Lukas Koller
+
+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
+AUTHORS OR 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.
diff --git a/macros/latex/contrib/cora-macs/README.md b/macros/latex/contrib/cora-macs/README.md
new file mode 100644
index 0000000000..7cf36ee8af
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/README.md
@@ -0,0 +1,91 @@
+# `cora-macs` LaTeX Package
+
+## Overview
+
+The `cora-macs` package is a LaTeX package designed to assist in the representation and manipulation of continuous sets, operations, neural networks, and color schemes tailored for use in the context of cyber-physical systems. It provides a comprehensive set of macros that streamline the process of documenting complex mathematical objects and operations.
+
+## Authors
+
+- **Tobias Ladner**
+- **Lukas Koller**
+
+TUM - Cyber-Physical Systems Group
+
+Visit our website: [TUM CPS Group](https://www.ce.cit.tum.de/cps)
+
+## Features
+
+- **Continuous Sets**: Macros for defining and working with intervals, zonotopes, polynomial zonotopes, and other set-based representations.
+- **Operations**: A collection of macros for common mathematical operations used in cyber-physical systems analysis.
+- **Neural Networks**: Notations for layers, activations, set propagation, and more.
+- **Color Schemes**: Predefined color palettes including TUM-specific colors and custom `cora-macs` colors.
+
+## Installation
+
+To use the `cora-macs` package in your LaTeX documents, follow these steps:
+
+1. **Download the Package**: Download the `cora-macs.sty` file and save it to your project directory or in a directory where LaTeX can find it (e.g., in the local `texmf` tree).
+
+2. **Include the Package**: Add the following line to the preamble of your LaTeX document:
+ ```latex
+ \usepackage[options]{cora-macs}
+ ```
+ Replace `[options]` with the desired options (e.g., `sets`, `operations`, `nn`, `colors`, `tumcolors`).
+
+## Usage
+
+### Basic Example
+
+Here’s a simple example of how to use some of the features provided by the `cora-macs` package:
+
+```latex
+\documentclass{article}
+\usepackage[sets, operations]{cora-macs}
+
+\begin{document}
+
+% Define a set
+\contSet{X} = \shortContSet{a}{b}{X}
+
+% Use an operation
+\diag{A} = \operator{diag}{A}
+
+\end{document}
+```
+
+### Options
+
+- **`sets`**: Enables macros for working with continuous sets.
+- **`operations`**: Enables macros for common operations in mathematical analysis.
+- **`nn`**: Enables macros related to neural networks.
+- **`colors`**: Defines a set of colors specific to the `cora-macs` package.
+- **`tumcolors`**: Defines TUM-specific colors.
+
+You can combine these options as needed when including the package.
+
+## Documentation
+
+For detailed documentation, including a complete list of commands and options, please refer to the [documentation](./documentation.pdf).
+
+## License
+
+This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
+
+## Acknowledgments
+
+This package was developed as part of the work done by the Cyber-Physical Systems Group at TUM. We would like to thank the contributors and users who provided valuable feedback.
+
+## Contributing
+
+If you wish to contribute to the `cora-macs` package, feel free to submit a pull request or open an issue on the repository.
+
+## Contact
+
+For questions, issues, or suggestions, please contact:
+
+- Tobias Ladner - [tobias.ladner@tum.de](mailto:tobias.ladner@tum.de)
+- Lukas Koller - [lukas.koller@tum.de](mailto:lukas.koller@tum.de)
+
+---
+
+Developed at TUM - Cyber-Physical Systems Group \ No newline at end of file
diff --git a/macros/latex/contrib/cora-macs/cora-macs-doc.pdf b/macros/latex/contrib/cora-macs/cora-macs-doc.pdf
new file mode 100644
index 0000000000..4da722f6c4
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/cora-macs-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/cora-macs/cora-macs-doc.tex b/macros/latex/contrib/cora-macs/cora-macs-doc.tex
new file mode 100644
index 0000000000..825fe50836
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/cora-macs-doc.tex
@@ -0,0 +1,119 @@
+\documentclass{article}
+\usepackage{amsmath}
+\usepackage{amssymb}
+\usepackage{hyperref}
+\usepackage[sets,operations,nn,colors]{cora-macs}
+
+\title{The \texttt{cora-macs} Package}
+\author{Tobias Ladner, Lukas Koller\\
+ TUM - Cyber-Physical Systems Group\\
+ \texttt{\small tobias.ladner@tum.de, lukas.koller@tum.de}}
+\date{2024-10-25}
+
+\begin{document}
+\maketitle
+
+\begin{abstract}
+The \texttt{cora-macs} package provides tools for working with continuous sets, operations, neural networks, and color schemes tailored for use in the context of cyber-physical systems. This document serves as the official documentation for the package, detailing the available commands and options.
+\end{abstract}
+
+\tableofcontents
+
+\section{Introduction}
+The \texttt{cora-macs} package is designed to assist in the representation and manipulation of various mathematical objects such as sets, intervals, zonotopes, and operations often encountered in cyber-physical systems analysis. It also includes predefined color schemes based on the TUM corporate design and other custom colors.
+
+\section{Installation}
+To install the \texttt{cora-macs} package, follow these steps:
+\begin{enumerate}
+ \item Place the \texttt{cora.sty} file in your working directory or in a directory where LaTeX can find it (e.g., in the local \texttt{texmf} tree).
+ \item Include the package in your LaTeX document with the command:
+ \begin{verbatim}
+ \usepackage{cora}
+ \end{verbatim}
+\end{enumerate}
+
+\section{Package Options}
+The \texttt{cora-macs} package provides several options that can be passed when loading the package. These options control the inclusion of different sets of commands.
+
+\begin{itemize}
+ \item \texttt{sets}: Includes commands for continuous set notation and operations.
+ \item \texttt{operations}: Includes commands for various mathematical operations.
+ \item \texttt{nn}: Includes commands for working with neural networks.
+ \item \texttt{colors}: Defines a set of colors specific to the \texttt{cora-macs} package.
+ \item \texttt{tumcolors}: Defines TUM-specific colors.
+\end{itemize}
+
+Example usage:
+\begin{verbatim}
+\usepackage[sets, operations]{cora}
+\end{verbatim}
+
+\section{Commands and Environments}
+
+\subsection{Sets (\texttt{sets} option)}
+When the \texttt{sets} option is enabled, the package provides several commands for defining and manipulating continuous sets.
+
+\begin{itemize}
+ \item \texttt{\textbackslash contSet\{name\}}: Defines a set in calligraphic font, e.g., $\contSet{A}$.
+ \item \texttt{\textbackslash shortContSet[abbr]\{content\}\{set\}}: Defines a short-hand notation for continuous sets with optional abbreviation.
+ \item \texttt{\textbackslash defContSet\{elements\}\{conditions\}}: Defines a set using the format $\{x \mid \text{conditions}\}$.
+ \item \texttt{\textbackslash defContSetSplit\{elements\}\{conditions\}}: Defines a set with split conditions for better formatting in large equations.
+ \item \texttt{\textbackslash shortI\{a\}\{b\}}: Defines a closed interval $[a, b]$.
+ \item \texttt{\textbackslash defZ}: Defines a zonotope.
+ \item \texttt{\textbackslash defPZ}: Defines a polynomial zonotope.
+\end{itemize}
+
+\subsection{Operations (\texttt{operations} option)}
+Enabling the \texttt{operations} option introduces a variety of operations that are useful in mathematical and cyber-physical systems contexts.
+
+\begin{itemize}
+ \item \texttt{\textbackslash operator\{name\}\{args\}}: Defines a custom operator with the given name and arguments.
+ \item \texttt{\textbackslash opEnclose\{set1\}\{set2\}}: Encapsulates a set within another.
+ \item \texttt{\textbackslash opIntervalEnclosure\{interval\}}: Specifies an interval enclosure.
+ \item \texttt{\textbackslash opProject\{dimension\}}: Projects a set onto a given dimension.
+ \item \texttt{\textbackslash diag\{matrix\}}: Produces the diagonal matrix of the given input.
+\end{itemize}
+
+\subsection{Neural Networks (\texttt{nn} option)}
+The \texttt{nn} option introduces commands related to neural networks, including notation for layers, inputs, outputs, and propagations.
+
+\begin{itemize}
+ \item \texttt{\textbackslash NN}: Represents the symbol for a neural network $\NN$.
+ \item \texttt{\textbackslash nnLayer\{layer\}\{input\}}: Represents a neural network layer with a specified input.
+ \item \texttt{\textbackslash nnInput}, \texttt{\textbackslash nnOutput}: Notation for input and output points in a neural network.
+\end{itemize}
+
+\subsection{Colors (\texttt{colors} and \texttt{tumcolors} options)}
+The \texttt{colors} and \texttt{tumcolors} options define a variety of colors that can be used in your documents.
+
+\begin{itemize}
+ \item \texttt{\textbackslash definecolor\{CORAcolorReachSet\}}: A predefined color for reachability sets (blue).
+ \item \texttt{\textbackslash definecolor\{TUMblue\}}: TUM corporate blue color.
+\end{itemize}
+
+\section{Examples}
+Here are some examples demonstrating how to use the commands from the \texttt{cora-macs} package.
+
+\subsection{Set Notation}
+\begin{verbatim}
+\contSet{X} = \shortContSet{a}{b}{X}
+\end{verbatim}
+This code will produce $\contSet{X} = \left<a, b\right>_X$.
+
+\subsection{Operations}
+\begin{verbatim}
+\diag{A} = \operator{diag}{A}
+\end{verbatim}
+This code will produce $\diag{A} = \text{\normalfont\small diag}(A)$.
+
+\subsection{Neural Networks}
+\begin{verbatim}
+\NN(\nnInput) = \nnLayer{1}{\nnInput}
+\end{verbatim}
+This code will produce $\NN(\nnInput) = L_1(\nnInput)$.
+
+\section{Concluding Remarks}
+The \texttt{cora-macs} package offers a comprehensive set of tools for researchers working in cyber-physical systems. By providing a consistent notation and color scheme, this package simplifies the process of documenting complex mathematical objects and operations.
+
+For more information, visit the \href{https://www.ce.cit.tum.de/cps}{TUM CPS Group website}.
+\end{document}
diff --git a/macros/latex/contrib/cora-macs/cora-macs.sty b/macros/latex/contrib/cora-macs/cora-macs.sty
new file mode 100644
index 0000000000..3fcee03d45
--- /dev/null
+++ b/macros/latex/contrib/cora-macs/cora-macs.sty
@@ -0,0 +1,198 @@
+
+% package information --------------------------------------------------------------------------------------------------
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{cora-macs}[2024-10-25]
+
+% Authors: Tobias Ladner, Lukas Koller
+% TUM - Cyber-Physical Systems Group
+% Website: https://www.ce.cit.tum.de/cps
+
+% Based on: https://www.overleaf.com/learn/latex/Writing_your_own_package
+
+% required packages ----------------------------------------------------------------------------------------------------
+
+\RequirePackage{xifthen}
+\RequirePackage{xstring}
+\RequirePackage{amsfonts}
+\RequirePackage{xcolor}
+
+% pre-processing -------------------------------------------------------------------------------------------------------
+
+% for better logging
+\newcommand{\DeclareCORAOption}[2]{
+ \DeclareOption{#1}{
+ % display information
+ \PackageInfo{cora-macs}{Loading '#1' option..}
+ % content
+ #2
+ }
+}
+
+% nice to have
+\providecommand{\R}{\ensuremath{\mathbb{R}}}
+\providecommand{\N}{\ensuremath{\mathbb{N}}}
+
+% all sets should be written in mathcal
+\newcommand{\contSet}[1]{\ensuremath{\mathcal{#1}}}
+
+% process options ------------------------------------------------------------------------------------------------------
+
+\DeclareCORAOption{sets}{ % --- continuous sets
+ % contSet ---
+
+ % formatting
+ \newcommand{\neghphantom}[1]{\settowidth{\dimen0}{#1}\hspace*{-\dimen0}}
+
+ % short-hand notation (including nice punctuation for large sets)
+ \newcommand{\shortContSet}[3][]{\ensuremath{% \defContSet[punctuation]{abbreviation}{cs parameters of set}
+ \left<#2\right>_{#3\,}%
+ \ifthenelse{\isempty{#1}}% add abbreviation
+ {} % none given
+ {\neghphantom{\scriptsize #3}#1\neghphantom{#1}\hphantom{\scriptsize #3}}
+ }}
+ \newcommand{\defContSet}[2]{\left\{ #1 \ \middle|\ #2 \right\}}
+ \newcommand{\defContSetSplit}[2]{\left\{ #1 \vphantom{#2} \ \right| \\ &\qquad \left. \vphantom{#1} #2 \right\}}
+
+ % interval ---
+ \providecommand{\I}{\contSet{I}}
+ \newcommand{\shortI}[2]{\ensuremath{\left[#1,#2\right]}}
+
+ % zonotope ---
+ \providecommand{\Z}{\contSet{Z}}
+ \newcommand{\shortZ}[3][]{\shortContSet[#1]{#2,#3}{Z}}
+ \newcommand{\defZ}{\left\{ c + \sum_{i=1}^{p} \beta_i G_{(\cdot,i)} ~\middle|~ \beta_i \in [-1,1] \right\}}
+
+ % polynomial zonotope ---
+ \providecommand{\PZ}{\contSet{PZ}}
+ \newcommand{\shortPZ}[5][]{\shortContSet[#1]{#2,#3,#4,#5}{PZ}}
+ \newcommand{\defPZmain}{c + \sum_{i=1}^h \left(\prod_{k=1}^p \alpha_k^{E_{(k,i)}}\right) G_{(\cdot, i)} + \sum_{j=1}^{q} \beta_j G_{I(\cdot, j)}}
+ \newcommand{\defPZcond}{\alpha_k, \beta_j \in \left[-1,1\right]}
+ \newcommand{\defPZ}{\defContSet{\defPZmain}{\defPZcond}}
+ \newcommand{\defPZSplit}{\defContSetSplit{\defPZmain}{\defPZcond}}
+}
+
+
+\DeclareCORAOption{operations}{ % --- operations
+
+ % define monospace operator including inline operator
+ \newcommand{\operator}[3][]{%
+ \text{\normalfont\small#2}%
+ \IfSubStr{#1}{inline}% if inline
+ {(#3)}% no \left/\right
+ {\left(#3\right)}}
+ \newcommand{\operatortt}[3][]{\operator[#1]{{\ensuremath{\mathtt{#2}}}}{#3}}
+
+ % enclosure
+ \newcommand{\opEnclose}[3][]{\operatortt[#1]{enclose}{#2,#3}}
+ \newcommand{\opEnclosePrime}[3][]{\operatortt[#1]{enclose}{#2,#3}}
+ \newcommand{\opIntervalEnclosure}[2][]{\operatortt[#1]{interval}{#2}}
+ \newcommand{\opBoxEnclosure}[2][]{\operatortt[#1]{box}{#2}}
+ \newcommand{\opBound}[2][]{\operatortt[#1]{bound}{#1}}
+ \newcommand{\opZonotopeEnclosure}[2][]{\operatortt[#1]{zonotope}{#2}}
+ \newcommand{\opZonoEnclosure}[2][]{\operatortt[#1]{zono}{#2}}
+ \newcommand{\opPolyZonotopeEnclosure}[2][]{\operatortt[#1]{polyZonotope}{#2}}
+ \newcommand{\opPolyZonoEnclosure}[2][]{\operatortt[#1]{polyZono}{#2}}
+
+ % further operations
+ \newcommand{\opProject}[2][]{\operatortt{project}{#2}}
+
+ % operations that should be stantard latex operations
+ \newcommand{\diag}[2][]{\operator[#1]{diag}{#2}}
+ \providecommand{\Diag}[2][]{\operator[#1]{Diag}{#2}}
+ \providecommand{\mod}[3][]{\operator[#1]{mod}{#2,#3}}
+ \newcommand{\dia}[2][]{\operator[#1]{dia}{#2}}
+ \newcommand{\sign}[2][]{\operator[#1]{sign}{#2}}
+}
+
+
+\DeclareCORAOption{nn}{ % ------ neural networks
+
+ % neural network
+ \newcommand{\NN}[0]{\ensuremath{\Phi}}
+ \newcommand{\numLayers}[0]{\ensuremath{\kappa}}
+ \newcommand{\numNeurons}[0]{\ensuremath{n}}
+
+ % layers
+ \newcommand{\nnLayerName}[2]{\ensuremath{L_{#1}^\text{#2}}}
+ \newcommand{\nnLayer}[3]{\ensuremath{\nnLayerName{#1}{#2}\left(#3\right)}}
+ \newcommand{\nnActFun}{\ensuremath{\phi}}
+ \newcommand{\actfun}{\nnActFun} % remove?
+
+ % point propagation
+ \newcommand{\nnInput}[0]{\ensuremath{x}}
+ \newcommand{\nnHidden}[0]{\ensuremath{h}}
+ \newcommand{\nnOutput}[0]{\ensuremath{y}}
+ \newcommand{\nnGrad}{\ensuremath{g}}
+
+ % set propagation
+ \newcommand{\nnInputSet}[0]{\contSet{X}}
+ \newcommand{\nnHiddenSet}[0]{\contSet{H}}
+ \newcommand{\nnHiddenSetExact}[0]{\nnHiddenSet^*}
+ \newcommand{\nnOutputSet}[0]{\contSet{Y}}
+ \newcommand{\nnOutputSetExact}[0]{\nnOutputSet^*}
+ \newcommand{\nnGradSet}{\contSet{G}}
+
+ % set-based training
+ \newcommand{\nnTarget}{\ensuremath{t}}
+
+ % other
+ \newcommand{\nnPertRadius}{\epsilon}
+
+ % specification
+ \newcommand{\unsafeSet}[0]{\contSet{S}}
+
+}
+
+% --- colors
+
+\DeclareCORAOption{colors}{ % --- cora colors
+
+ % cora colors (see CORAcolor in cora)
+ \definecolor{CORAcolorReachSet}{rgb}{0.2706, 0.5882, 1.0000} % blue
+ \definecolor{CORAcolorReachSet2}{rgb}{0.6902, 0.8235, 1.0000} % light-blue
+ \definecolor{CORAcolorOnitialSet}{rgb}{1, 1, 1} % white
+ \definecolor{CORAcolorFinalSet}{rgb}{0.9000, 0.9000, 0.9000} % light-gray
+ \definecolor{CORAcolorSimulations}{rgb}{0.9000, 0.9000, 0.9000} % black
+ \definecolor{CORAcolorUnsafe}{rgb}{0.9451, 0.5529, 0.5686} % red
+ \definecolor{CORAcolorUnsafeLight}{rgb}{0.9059, 0.7373, 0.7373} % light red
+ \definecolor{CORAcolorSafe}{rgb}{0.4706, 0.7725, 0.4980} % light green
+ \colorlet{CORAcolorInvariant}{CORAcolorSafe} % light green
+
+ % default colors (also default matlab colors)
+ \definecolor{CORAcolorBlue}{rgb}{0, 0.4470, 0.7410}
+ \definecolor{CORAcolorRed}{rgb}{0.8500, 0.3250, 0.0980}
+ \definecolor{CORAcolorYellow}{rgb}{0.9290, 0.6940, 0.1250}
+ \definecolor{CORAcolorPurple}{rgb}{0.4940, 0.1840, 0.5560}
+ \definecolor{CORAcolorGreen}{rgb}{0.4660, 0.6740, 0.1880}
+ \definecolor{CORAcolorLightBlue}{rgb}{0.3010, 0.7450, 0.9330}
+ \definecolor{CORAcolorDarkRed}{rgb}{0.6350, 0.0780, 0.1840}
+
+ % define order of colors (see useCORAcolors in cora)
+ \colorlet{CORAcolor1}{CORAcolorBlue}
+ \colorlet{CORAcolor2}{CORAcolorRed}
+ \colorlet{CORAcolor3}{CORAcolorYellow}
+ \colorlet{CORAcolor4}{CORAcolorPurple}
+ \colorlet{CORAcolor5}{CORAcolorGreen}
+ \colorlet{CORAcolor6}{CORAcolorLightBlue}
+ \colorlet{CORAcolor7}{CORAcolorDarkRed}
+
+ \definecolor{CORAcolorHighlight1}{rgb}{1.0000,0.6824,0.2980} % 'CORA:highlight1 (orange)'
+ \definecolor{CORAcolorHighlight2}{rgb}{0.3804,0.6275,1.0000} % 'CORA:highlight2 (lightblue)'
+}
+
+\DeclareCORAOption{tumcolors}{ % ---- tum colors
+
+ \definecolor{TUMblue}{rgb}{0.00, 0.40, 0.74}
+ \definecolor{TUMgray}{rgb}{0.85, 0.85, 0.86}
+ \definecolor{TUMpantone285C}{rgb}{0.00, 0.45, 0.81}
+ \definecolor{TUMpantone300C}{RGB}{27, 94, 170} %uncorrected TUMpantone300C
+ \definecolor{lightblue}{rgb}{0.7529,0.8118,0.9333}
+
+}
+
+
+% process all options
+\ProcessOptions\relax
+
+% post-processing ------------------------------------------------------------------------------------------------------
diff --git a/macros/latex/contrib/easybook/README.md b/macros/latex/contrib/easybook/README.md
index fa435b3304..3dc4af0b3c 100644
--- a/macros/latex/contrib/easybook/README.md
+++ b/macros/latex/contrib/easybook/README.md
@@ -1,5 +1,5 @@
# The `easybook` document class
-Easily typesetting Chinese theses or books (v2024eq)
+Easily typesetting Chinese theses or books (v2024es)
## Abstract
`easybook` is a pure academic template created based on the `ctexbook` book document class. It also has the functions of `book` and `article` document class. Combined with the general framework design of the theses of many universities in China, providing multiple commands and interfaces allows users to easily customize the theses templates. Its basic macro package `easybase` can also be used with `ctex` and standard document classes.
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index b300439862..1afeaabacc 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -14,7 +14,7 @@
% This work has the LPPL maintenance status `maintained'.
%<class|package>\NeedsTeXFormat{LaTeX2e}[2021/11/15]
%<*class>
-\ProvidesExplClass{easybook}{2024/10/22}{2024eq}
+\ProvidesExplClass{easybook}{2024/10/25}{2024es}
{Easily typesetting Chinese theses or books}
\bool_new:N \l__eb_compile_draft_bool
@@ -302,7 +302,7 @@
%</class>
%<*package>
\RequirePackage{etoolbox}
-\ProvidesExplPackage{easybase}{2024/10/22}{2024eq}
+\ProvidesExplPackage{easybase}{2024/10/25}{2024es}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -1495,8 +1495,16 @@
}
}
-\cs_new_protected:Npn \SetTocOuter #1
- { \keys_set:nn { eb/tocouter } {#1} }
+\NewDocumentCommand{\SetTocOuter}{om}
+ {
+ \IfNoValueTF{#1}
+ {\keys_set:nn { eb/tocouter } {#2}}
+ {
+ \clist_if_exist:cF { l__eb_toc_outer_kv_#1_clist }
+ { \clist_clear_new:c { l__eb_toc_outer_kv_#1_clist } }
+ \clist_put_right:cn { l__eb_toc_outer_kv_#1_clist } {#2}
+ }
+ }
\tl_new:N \eb@bitoc@title
\bool_new:N \l__eb_toc_notitle_bool
\newbool{bitoc}
@@ -1630,10 +1638,17 @@
{ \par }
}
}
+\cs_generate_variant:Nn \keys_set:nn { nv }
+\cs_new_protected:Npn \eb_toc_outer_kv_initial:n #1
+ {
+ \clist_if_exist:cT { l__eb_toc_outer_kv_#1_clist }
+ { \keys_set:nv { eb/tocouter } { l__eb_toc_outer_kv_#1_clist } }
+ }
\cs_new_protected:Npn \eb_toc_list_struct_parse:nnnnn #1#2#3#4#5
{
\group_begin:
\tl_set_eq:Nc \eb@toc@title { list#4name }
+ \eb_toc_outer_kv_initial:n {#5}
\IfValueT{#3}{\keys_set:nn { eb/tocouter } {#3}}
\eb_toc_title_level_cmd:n {#1}
\eb_toc_if_title_between_hook:nn {#1} {#4}
@@ -1695,6 +1710,7 @@
{ \section* }
}
}
+ \eb_toc_outer_kv_initial:n { toc }
\IfValueT{#3}{\keys_set:nn { eb/tocouter } {#3}}
\bool_if:NT \l__eb_toc_plan_cn_bool
{
@@ -2916,7 +2932,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/10/22}{2024eq}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/10/25}{2024es}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index 32f935b932..d454dd490d 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index 24683871c2..a956350235 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -23,8 +23,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK使用手册,
- version = v2024eq,
- date = 2024/10/22,
+ version = v2024es,
+ date = 2024/10/25,
authors = 瞿毅,
info = 简便地排版中文学位论文或书籍,
email = toquyi@163.com,
@@ -1092,8 +1092,8 @@ $\blacktriangleright$需要注意正确\textbf{编译索引}要增加 \code{-she
输出代码目录命令。带有星号参数的命令不输出目录标题。
如果需要局部而不是全文范围的目录或其它类型的目录,可以查看\ref{subsec:contents} 和 \pkg*{titletoc} 宏包的相关示例。如果需要双语图表目录,可以查看 \pkg*{bicaption} 宏包的相关示例。上面目录命令的可选参数改进了原本单一的功能,也提供了配置命令 \cs{SetTocOuter} 在目录命令外设置选项默认值。
- \command{SetTocOuter}[\marg{键值列表}]
- 统一设置上述所有目录可选参数的默认值\footnote{由于目录命令通常只在文中使用一次,因此不设计为可以分别指定不同目录的参数。},其中 \meta{键值列表} 的选项如下:
+ \command{SetTocOuter}[\oarg{扩展名}\marg{键值列表}]\newtagv[Changed]{2024es}%
+ 设置上述不同类型目录可选参数的默认值。若不指定目录文件的 \meta{扩展名},则除了 \option{title} 和章节标题目录的 \option{level} 选项外对所有目录生效。其中 \meta{键值列表} 的选项如下:
\keyval{level}{标题命令}
设定输出目录标题的命令。如果使用 \option{title} 选项设置了双语标题则需要配合双语标题命令。
\begin{ctexexam}
@@ -1109,7 +1109,7 @@ $\blacktriangleright$需要注意正确\textbf{编译索引}要增加 \code{-she
\keyval{multoc}{整数}\Default{2}
设置目录的排版栏数。\meta{整数} 代表目录栏数,不指定栏数的值则默认为双栏。
\kvsplit{title}{中文目录标题,英文目录标题}
- 用于更改目录的双语标题。标题之间用一个英文逗号分开,对主目录来说前部分为中文目录标题,后部分为英文目录标题,对图表和代码目录来说后部分则是加入英文目录的条目。也可以只有一部分,表示中文目录的标题。
+ 用于更改目录的双语标题。标题之间用一个英文逗号分开,对章节标题目录来说前部分为中文目录标题,后部分为英文目录标题,对图表和代码目录来说后部分则是加入英文目录的条目。也可以只有一部分,表示中文目录的标题。
\keychoice{bilist}{mix,\fbox{new}}
确定章节标题目录中双语标题条目的输出排列方式。选项 \code{mix} 使每个英文标题条目在中文目录中跟随对应的中文标题输出,\code{new} 则在新建的英文目录中输出英文标题,此新目录的扩展名为 \code{tec}。这是个全局选项,在所有目录的可选参数中使用均可生效,但推荐在章节标题目录中使用。
\command{ebifbitoc}[\marg{英文目录代码}\marg{中文目录代码}]
diff --git a/macros/latex/contrib/huawei/DEPENDS.txt b/macros/latex/contrib/huawei/DEPENDS.txt
index 4ce226b22d..5275c3fb46 100644
--- a/macros/latex/contrib/huawei/DEPENDS.txt
+++ b/macros/latex/contrib/huawei/DEPENDS.txt
@@ -33,6 +33,7 @@ hard svg
hard tcolorbox
hard textpos
hard tikzfill
+hard titlesec
hard titling
hard transparent
hard trimspaces
diff --git a/macros/latex/contrib/huawei/README.md b/macros/latex/contrib/huawei/README.md
index e2f585d214..64ded9b802 100644
--- a/macros/latex/contrib/huawei/README.md
+++ b/macros/latex/contrib/huawei/README.md
@@ -1,3 +1,5 @@
+# LaTeX Document Class
+
[![make](https://github.com/yegor256/huawei.cls/actions/workflows/l3build.yml/badge.svg)](https://github.com/yegor256/huawei.cls/actions/workflows/l3build.yml)
[![CTAN](https://img.shields.io/ctan/v/huawei)](https://ctan.org/pkg/huawei)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/yegor256/huawei.cls/blob/master/LICENSE.txt)
@@ -7,8 +9,9 @@ This package is created in order to help some people working
with Huawei or inside Huawei to render some documents in LaTeX format.
You are welcome to use it at your own risk.
-First, [install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages)
-from [CTAN](https://ctan.org/pkg/huawei)
+First,
+[install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages)
+from [CTAN](https://ctan.org/pkg/huawei)
and then use in the preamble:
```tex
@@ -21,15 +24,18 @@ Hello, world!
\end{document}
```
-Otherwise, you can download [`huawei.cls`](https://yegor256.github.io/huawei.cls/huawei.sty) and add to your project.
+Otherwise, you can download
+[`huawei.cls`](https://yegor256.github.io/huawei.cls/huawei.cls)
+and add to your project.
-Read the detailed documentation [in PDF](http://mirrors.ctan.org/macros/latex/contrib/huawei/huawei.pdf).
+Read the detailed documentation
+[in PDF](http://mirrors.ctan.org/macros/latex/contrib/huawei/huawei.pdf).
-If you need more formatting options,
-[submit an issue](https://github.com/yegor256/huawei.cls/issues),
+If you need more formatting options,
+[submit an issue](https://github.com/yegor256/huawei.cls/issues),
I'll implement them.
-If you want to contribute yourself, make a fork, then create a branch,
+If you want to contribute yourself, make a fork, then create a branch,
then run `make` in the root directory.
It should compile everything without errors. If not, submit an issue and wait.
Otherwise, make your changes and then run `make` again. If the build is
diff --git a/macros/latex/contrib/huawei/huawei.dtx b/macros/latex/contrib/huawei/huawei.dtx
index 1140958502..266de33387 100644
--- a/macros/latex/contrib/huawei/huawei.dtx
+++ b/macros/latex/contrib/huawei/huawei.dtx
@@ -50,7 +50,7 @@
%<class>\NeedsTeXFormat{LaTeX2e}
%<class>\ProvidesClass{huawei}
%<*class>
-[2024-02-14 0.18.3 Template for Huawei Documents]
+[2024-10-25 0.19.0 Template for Huawei Documents]
%</class>
%<*driver>
\documentclass{ltxdoc}
@@ -354,10 +354,12 @@ $pdflatex = 'pdflatex %O --shell-escape %S';
% Then, we parse class options:
% \changes{v0.15.0}{2022/12/13}{A new package option \texttt{breaks} introduced, which forces all sections to start from a new page.}
% \changes{v0.18.0}{2023/08/09}{Now we use \texttt{pfgopts} for parsing class options.}
+% \changes{v0.19.0}{2024/10/25}{New option \texttt{boring} added, making the layout of the document more compliant with the expectations of Huawei.}
% \begin{macrocode}
\RequirePackage{pgfopts}
\pgfkeys{
/huawei/.cd,
+ boring/.store in=\huawei@boring,
breaks/.store in=\huawei@breaks,
slides/.store in=\huawei@slides,
nosecurity/.store in=\huawei@nosecurity,
@@ -372,20 +374,41 @@ $pdflatex = 'pdflatex %O --shell-escape %S';
\ProcessPgfPackageOptions{/huawei}
% \end{macrocode}
-% Then, we redefine |\section| command in order to break pages for each section:
+% Then, we set Helvetica as the default font for the entire document, if the |boring| document option is used:
% \begin{macrocode}
-\makeatletter\ifdefined\huawei@breaks
-\let\huawei@oldsection\section
-\renewcommand\section{\clearpage\huawei@oldsection}
-\fi\makeatother
+\ifdefined\huawei@boring
+ \usepackage[scaled]{helvet}
+ \renewcommand\familydefault{\sfdefault}
+\fi
+% \end{macrocode}
+
+% Then, we redefine |\section| command in order to break pages for each section, with the help of |titlesec| package:
+% \begin{macrocode}
+\RequirePackage{titlesec}
+\ifdefined\huawei@boring
+ \def\huawei@sectioncolor{red}
+\else
+ \def\huawei@sectioncolor{black}
+\fi
+\makeatletter
+\titleformat
+ {\section}
+ {\color{\huawei@sectioncolor}\ifdefined\huawei@breaks\clearpage\fi\normalfont\Large\bfseries}
+ {\color{\huawei@sectioncolor}\thesection}{1em}{}
+\makeatother
% \end{macrocode}
% Then, we set the size of the page:
% \begin{macrocode}
\RequirePackage{geometry}
\makeatletter\ifdefined\huawei@landscape
- \geometry{paperwidth=16in, paperheight=9in,
- left=4in, right=2in, top=1.5in, bottom=1.5in}
+ \ifdefined\huawei@boring
+ \geometry{paperwidth=16in, paperheight=9in,
+ left=3in, right=2.5in, top=1in, bottom=1.8in}
+ \else
+ \geometry{paperwidth=16in, paperheight=9in,
+ left=4in, right=2in, top=1.5in, bottom=1.5in}
+ \fi
\else
\geometry{a4paper, left=1.5in, right=1in,
top=1.2in, bottom=1.2in}
@@ -513,13 +536,27 @@ $pdflatex = 'pdflatex %O --shell-escape %S';
% \begin{macrocode}
\PassOptionsToPackage{table}{xcolor}
\RequirePackage{xcolor}
-\definecolor{red}{HTML}{CF0A2C}
-\definecolor{black}{HTML}{232527}
-\definecolor{gray}{HTML}{878C8F}
-\definecolor{yellow}{HTML}{F2DC5D}
-\definecolor{blue}{HTML}{2274A5}
-\definecolor{green}{HTML}{499167}
-\definecolor{orange}{HTML}{F06543}
+\makeatletter
+\ifdefined\huawei@boring
+ \definecolor{red}{HTML}{8C1A11}
+ \definecolor{black}{HTML}{000000}
+ \definecolor{gray}{HTML}{878C8F}
+ \definecolor{lightgray}{HTML}{DCDDDF}
+ \definecolor{yellow}{HTML}{F6C342}
+ \definecolor{blue}{HTML}{2B62BA}
+ \definecolor{green}{HTML}{499167}
+ \definecolor{orange}{HTML}{F7CEA1}
+\else
+ \definecolor{red}{HTML}{CF0A2C}
+ \definecolor{black}{HTML}{232527}
+ \definecolor{gray}{HTML}{878C8F}
+ \definecolor{lightgray}{HTML}{DCDDDF}
+ \definecolor{yellow}{HTML}{F2DC5D}
+ \definecolor{blue}{HTML}{2274A5}
+ \definecolor{green}{HTML}{499167}
+ \definecolor{orange}{HTML}{F06543}
+\fi
+\makeatother
% \end{macrocode}
% \begin{macro}{\huawei@header}
@@ -542,10 +579,39 @@ $pdflatex = 'pdflatex %O --shell-escape %S';
% Then, we define |\huawei@bar|:
% \begin{macrocode}
\makeatletter\newcommand\huawei@bar{%
- \begin{textblock}{1}[0,0](0,0)%
- \tikz \node[fill=red,minimum width=\TPHorizModule,
- minimum height=16\TPVertModule] {};%
- \end{textblock}%
+ \ifdefined\huawei@boring%
+ \begin{textblock}{16}[0,1](0,16)%
+ \tikz \node[fill=lightgray,minimum width=16\TPHorizModule,
+ minimum height=1.5\TPVertModule] {};%
+ \end{textblock}%
+ \begin{textblock}{8}[1,0.5](15,15.25)%
+ \raggedleft\huawei@logo{1.4}
+ \end{textblock}%
+ \ifdefined\huawei@nobrand\else%
+ \begin{textblock}{8}[0,0.5](1,15.25)%
+ \large\textcolor{gray}{\thecompany{}}%
+ \end{textblock}%
+ \fi%
+ \ifdefined\huawei@nosecurity\else%
+ \begin{textblock}{8}[0.5,0.5](7,15.25)%
+ \large\centering\textcolor{gray}{\thesecurity}%
+ \end{textblock}%
+ \fi%
+ \ifdefined\huawei@nopaging\else%
+ \begin{textblock}{8}[1,0.5](12,15.25)%
+ \raggedleft\large%
+ \textcolor{gray}{Page \#\thepage{} of \pageref*{LastPage}}%
+ \end{textblock}%
+ \fi%
+ \begin{textblock}{2}[1,0.5](14,15.25)%
+ \tikz \path[scale=0.3, draw=none, rotate=40, fill=white] (0,0) .. controls (3,1) .. (16,0) -- (16,3) .. controls (8, 2) .. (0, 3) -- (0,0);
+ \end{textblock}%
+ \else%
+ \begin{textblock}{1}[0,0](0,0)%
+ \tikz \node[fill=red,minimum width=\TPHorizModule,
+ minimum height=16\TPVertModule] {};%
+ \end{textblock}%
+ \fi%
}\makeatother
% \end{macrocode}
% \end{macro}
@@ -556,6 +622,7 @@ $pdflatex = 'pdflatex %O --shell-escape %S';
\makeatletter\newcommand\huawei@logo[1]{
\def\BLACK{\ifdefined\huawei@dark white\else black\fi}
\def\BLANK{\ifdefined\huawei@dark black\else white\fi}
+\definecolor{logo-red}{HTML}{CF0A2C}
\begin{tikzpicture}[y=0.80pt, x=0.80pt, yscale=-#1,
xscale=#1, inner sep=0pt, outer sep=0pt]
\begin{scope}[even odd rule,line width=0.800pt]
@@ -594,7 +661,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
\path[fill=\BLANK] (15.8594,31.7207) -- (16.7149,33.7008) --
(16.7119,33.7008) -- (16.7701,33.8374) -- (14.9552,33.8374) --
(15.0127,33.7008) -- (15.0117,33.7008) -- cycle;
-\path[fill=red] (15.2113,0.0001) .. controls (14.7353,0.0422) and
+\path[fill=logo-red] (15.2113,0.0001) .. controls (14.7353,0.0422) and
(13.4491,0.3349) .. (13.4491,0.3349) -- (13.4486,0.3349) .. controls
(10.5495,1.0843) and (9.8643,3.7151) .. (9.8643,3.7151) .. controls
(9.7227,4.1575) and (9.6584,4.6109) .. (9.6395,5.0380) --
@@ -606,7 +673,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
(16.8633,19.9296) .. (16.8633,19.9296) --
(16.8654,19.9301) .. controls (18.4416,4.1760) and
(15.2113,0.0001) .. (15.2113,0.0001) -- (15.2113,0.0001) -- cycle;
-\path[fill=red] (20.4192,0.0000) .. controls (20.4192,0.0000) and
+\path[fill=logo-red] (20.4192,0.0000) .. controls (20.4192,0.0000) and
(17.1748,4.1782) .. (18.7521,19.9415) --
(18.7542,19.9415) .. controls (18.7664,20.0416) and
(18.8374,20.0624) ..(18.8374,20.0624) .. controls
@@ -617,7 +684,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
(25.7636,3.7150) and (25.0470,1.0434) ..(22.1442,0.3375) .. controls
(22.1442,0.3375) and (21.3077,0.1251) .. (20.4193,0.0000) --
(20.4192,0.0000) -- cycle;
-\path[fill=red] (5.4542,4.7294) .. controls (5.4542,4.7294) and
+\path[fill=logo-red] (5.4542,4.7294) .. controls (5.4542,4.7294) and
(2.6920,7.3513) .. (2.5547,10.1307) -- (2.5558,10.1307) --
(2.5558,10.5519) .. controls (2.5579,10.5836) and
(2.5595,10.6157) .. (2.5615,10.6480) .. controls
@@ -631,7 +698,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
(15.3683,20.8109) .. (15.3663,20.8065) --
(15.3669,20.8065) .. controls (11.1809,11.6620) and
(5.4543,4.7294) .. (5.4543,4.7294) -- (5.4542,4.7294) -- cycle;
-\path[fill=red] (30.1695,4.7294) .. controls (30.1695,4.7294) and
+\path[fill=logo-red] (30.1695,4.7294) .. controls (30.1695,4.7294) and
(24.4602,11.6403) .. (20.2761,20.7662) --
(20.2777,20.7657) .. controls (20.2777,20.7657) and
(20.2283,20.8715) .. (20.3082,20.9399) .. controls
@@ -643,7 +710,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
(31.2563,14.2162) and (32.9686,12.8412) ..
(33.0583,10.6334) .. controls (33.2560,7.5672) and
(30.1696,4.7294) .. (30.1696,4.7294) -- (30.1695,4.7294) -- cycle;
-\path[fill=red] (35.3082,13.8080) .. controls (35.3082,13.8080) and
+\path[fill=logo-red] (35.3082,13.8080) .. controls (35.3082,13.8080) and
(26.0003,18.8031) .. (21.1876,22.0494) -- (21.1882,22.0499) --
(21.1893,22.0509) .. controls (21.1893,22.0509) and
(21.1019,22.1081) .. (21.1324,22.2106) .. controls
@@ -657,7 +724,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
(35.6246,15.7531) .. controls (35.6206,15.1563) and
(35.5365,14.4957) .. (35.3083,13.8080) --
(35.3082,13.8080) -- cycle;
-\path[fill=red] (0.3129,13.8313) .. controls (-0.5339,16.4531) and
+\path[fill=logo-red] (0.3129,13.8313) .. controls (-0.5339,16.4531) and
(0.6062,18.5656) .. (0.6080,18.5690) .. controls
(1.7962,21.0795) and (4.0641,21.8401) ..
(4.0641,21.8401) .. controls (5.1112,22.2703) and
@@ -670,7 +737,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
(14.4439,22.0584) .. (14.4439,22.0584) --
(14.4450,22.0578) .. controls (9.6347,18.8126) and
(0.3130,13.8315) .. (0.3130,13.8315) -- (0.3129,13.8313) -- cycle;
-\path[fill=red] (14.1782,23.1010) -- (3.2285,23.4850) .. controls
+\path[fill=logo-red] (14.1782,23.1010) -- (3.2285,23.4850) .. controls
(4.4160,25.6018) and (6.4158,27.2469) ..
(8.4990,26.7416) .. controls (9.9366,26.3822) and
(13.1935,24.1105) .. (14.2687,23.3429) --
@@ -678,7 +745,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
(14.3188,23.2045) .. (14.3188,23.2045) .. controls
(14.2913,23.1062) and (14.1783,23.1063) .. (14.1783,23.1063) --
(14.1782,23.1010) -- cycle;
-\path[fill=red] (21.4305,23.1090) -- (21.4294,23.1130) .. controls
+\path[fill=logo-red] (21.4305,23.1090) -- (21.4294,23.1130) .. controls
(21.4294,23.1130) and (21.3333,23.1252) ..
(21.3064,23.1972) .. controls (21.3064,23.1972) and
(21.2831,23.2956) .. (21.3478,23.3445) --
@@ -715,55 +782,61 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
\makeatletter\fancyhead[L]{
\ifnum\value{page}=1\else%
\ifdefined\huawei@nobrand\else%
- \begin{textblock}{8}[0,0](1.2,0.2)%
- \huawei@logo{\ifdefined\huawei@slides 1.8\else 1\fi}%
- \end{textblock}%
+ \ifdefined\huawei@boring\else%
+ \begin{textblock}{8}[0,0](1.2,0.2)%
+ \huawei@logo{\ifdefined\huawei@slides 1.8\else 1\fi}%
+ \end{textblock}%
+ \fi
\fi%
\fi%
}\makeatother
\makeatletter\fancyhead[R]{
- \begin{textblock}{8}[1,0](15.8,0.2)%
- \raggedleft\huawei@header{%
- \ifdefined\huawei@nosecurity\else%
- \thesecurity%
- \fi%
- }%
- \end{textblock}%
+ \ifdefined\huawei@boring\else%
+ \begin{textblock}{8}[1,0](15.8,0.2)%
+ \raggedleft\huawei@header{%
+ \ifdefined\huawei@nosecurity\else%
+ \thesecurity%
+ \fi%
+ }%
+ \end{textblock}%
+ \fi%
}\makeatother
\makeatletter\fancyfoot[R]{
- \begin{textblock}{8}[0,1](1.2,15.8)%
- \ifnum\value{page}=1\else%
- \huawei@header{\raggedright%
- \ifdefined\huawei@anonymous\else%
- \theauthor%
- \ifdefined\huawei@nosecurity\else%
- \ifx\theid\empty\else, \theid\fi%
+ \ifdefined\huawei@boring\else%
+ \begin{textblock}{8}[0,1](1.2,15.8)%
+ \ifnum\value{page}=1\else%
+ \huawei@header{\raggedright%
+ \ifdefined\huawei@anonymous\else%
+ \theauthor%
+ \ifdefined\huawei@nosecurity\else%
+ \ifx\theid\empty\else, \theid\fi%
+ \fi%
+ \ifdefined\huawei@nobrand\else%
+ \newline
+ \fi%
\fi%
\ifdefined\huawei@nobrand\else%
- \newline
+ \thecompany{}%
+ \fi%
+ }%
+ \fi%
+ \end{textblock}%
+ \begin{textblock}{8}[1,1](15.8,15.8)%
+ \raggedleft\huawei@header{%
+ \ifnum\value{page}=1\else%
+ \ifdefined\huawei@nopaging\else%
+ Page \#\thepage{} of \pageref*{LastPage}%
+ \ifdefined\huawei@nodate\else%
+ \\
+ \fi%
\fi%
\fi%
- \ifdefined\huawei@nobrand\else%
- \thecompany{}%
+ \ifdefined\huawei@nodate\else%
+ \today{} \settimeformat{daytime}\currenttime{}%
\fi%
}%
- \fi%
- \end{textblock}%
- \begin{textblock}{8}[1,1](15.8,15.8)%
- \raggedleft\huawei@header{%
- \ifnum\value{page}=1\else%
- \ifdefined\huawei@nopaging\else%
- Page \#\thepage{} of \pageref*{LastPage}%
- \ifdefined\huawei@nodate\else%
- \\
- \fi%
- \fi%
- \fi%
- \ifdefined\huawei@nodate\else%
- \today{} \settimeformat{daytime}\currenttime{}%
- \fi%
- }%
- \end{textblock}%
+ \end{textblock}%
+ \fi%
}\makeatother
% \end{macrocode}
@@ -782,7 +855,13 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
% \begin{macrocode}
\makeatletter\renewcommand\maketitle{%
\vspace*{18pt}%
- {\bfseries{\begin{spacing}{.9}\Huge\raggedright\thetitle\par\end{spacing}}}%
+ {%
+ \bfseries{\begin{spacing}{.9}\Huge\raggedright%
+ \ifdefined\huawei@boring%
+ \color{red}%
+ \fi%
+ \thetitle\par\end{spacing}}%
+ }%
\ifx\thesubtitle\empty\else%
{\color{gray!50!black}\large\raggedright\thesubtitle\par}%
\fi%
@@ -916,7 +995,7 @@ xscale=#1, inner sep=0pt, outer sep=0pt]
\newpage%
\vspace*{1in}%
\begin{center}%
- \begin{minipage}{0.6\columnwidth}\raggedright%
+ \begin{minipage}{0.8\columnwidth}\raggedright%
\normalsize%
\setlength{\parskip}{6pt}%
{\Huge\color{red}\textbf{Thank you!}}%
diff --git a/macros/latex/contrib/huawei/huawei.pdf b/macros/latex/contrib/huawei/huawei.pdf
index c0c742fa02..2fa35a673f 100644
--- a/macros/latex/contrib/huawei/huawei.pdf
+++ b/macros/latex/contrib/huawei/huawei.pdf
Binary files differ
diff --git a/macros/latex/contrib/jsonparse/README.md b/macros/latex/contrib/jsonparse/README.md
index fe146d1b99..e7dfc3a3e2 100644
--- a/macros/latex/contrib/jsonparse/README.md
+++ b/macros/latex/contrib/jsonparse/README.md
@@ -1,4 +1,4 @@
-![Version 0.9.2](https://img.shields.io/badge/version-0.9.2-blue)
+![Version 0.9.3](https://img.shields.io/badge/version-0.9.3-blue)
![Jason, the JSON parsing horse](https://github.com/jasperhabicht/jsonparse/assets/6378801/ddfddc70-bf5f-4121-ba45-4b9128875d85)
diff --git a/macros/latex/contrib/jsonparse/jsonparse-doc.pdf b/macros/latex/contrib/jsonparse/jsonparse-doc.pdf
index 91059d1911..58b6bc55ab 100644
--- a/macros/latex/contrib/jsonparse/jsonparse-doc.pdf
+++ b/macros/latex/contrib/jsonparse/jsonparse-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/jsonparse/jsonparse-doc.tex b/macros/latex/contrib/jsonparse/jsonparse-doc.tex
index 1f2259eae0..8f99efa270 100644
--- a/macros/latex/contrib/jsonparse/jsonparse-doc.tex
+++ b/macros/latex/contrib/jsonparse/jsonparse-doc.tex
@@ -11,8 +11,8 @@
% This work has the LPPL maintenance status `maintained'.
%
\documentclass[a4paper]{article}
-\def\jsonparsefileversion{0.9.2}
-\def\jsonparsefiledate{2 October 2024}
+\def\jsonparsefileversion{0.9.3}
+\def\jsonparsefiledate{24 October 2024}
\usepackage[T1]{fontenc}
\usepackage{Alegreya}
@@ -202,6 +202,7 @@
\changes{v0.8.7}{2024/08/08}{Corrections in documentation, error messages.}
\changes{v0.9.0}{2024/08/27}{Adaption to updated verbatim tokenization.}
\changes{v0.9.1}{2024/09/21}{Added functions to test for valid JSON numbers.}
+\changes{v0.9.3}{2024/10/24}{Fixed a bug that prevented tabs in source from being parsed properly.}
\begin{document}
\vspace*{-1cm}
diff --git a/macros/latex/contrib/jsonparse/jsonparse.sty b/macros/latex/contrib/jsonparse/jsonparse.sty
index 916d33d793..78e4213eda 100644
--- a/macros/latex/contrib/jsonparse/jsonparse.sty
+++ b/macros/latex/contrib/jsonparse/jsonparse.sty
@@ -10,7 +10,7 @@
%
% This work has the LPPL maintenance status `maintained'.
%
-\ProvidesExplPackage {jsonparse} {2024-10-02} {0.9.2}
+\ProvidesExplPackage {jsonparse} {2024-10-24} {0.9.3}
{JSON Parse}
\bool_new:N \l__jsonparse_debug_mode_bool
@@ -280,13 +280,13 @@
\bool_new:N \l__jsonparse_prop_map_first_bool
\bool_new:N \l__jsonparse_externalize_load_bool
-\ior_new:N \l__jsonparse_json_ior
\iow_new:N \g__jsonparse_externalize_iow
% ===
\cctab_const:Nn \c__jsonparse_json_escape_cctab {
\cctab_select:N \c_str_cctab
+ \char_set_catcode_space:n { 9 }
\char_set_catcode_escape:n { 92 }
\bool_lazy_or:nnF
{ \sys_if_engine_xetex_p: } { \sys_if_engine_luatex_p: }
diff --git a/macros/latex/contrib/mathfixs/README.txt b/macros/latex/contrib/mathfixs/README.txt
index 29837a69ed..a8e8b312a0 100644
--- a/macros/latex/contrib/mathfixs/README.txt
+++ b/macros/latex/contrib/mathfixs/README.txt
@@ -1,4 +1,4 @@
-mathfixs v1.1
+mathfixs v1.11
Copyright 2018-2024 Niklas Beisert
mathfixs is a LaTeX2e package to fix some odd behaviour in math mode
diff --git a/macros/latex/contrib/mathfixs/mathfixs.dtx b/macros/latex/contrib/mathfixs/mathfixs.dtx
index 0f4360eb4b..00d95b801c 100644
--- a/macros/latex/contrib/mathfixs/mathfixs.dtx
+++ b/macros/latex/contrib/mathfixs/mathfixs.dtx
@@ -18,10 +18,10 @@
% and the derived files mathfixs.sty and mafxsamp.tex.
%
%<package|sample>\NeedsTeXFormat{LaTeX2e}[1996/12/01]
-%<package>\ProvidesPackage{mathfixs}[2024/10/23 v1.1 various fixes for math mode]
-%<sample>\ProvidesFile{mafxsamp.tex}[2024/10/23 v1.1 sample for mathfixs]
+%<package>\ProvidesPackage{mathfixs}[2024/10/25 v1.11 various fixes for math mode]
+%<sample>\ProvidesFile{mafxsamp.tex}[2024/10/25 v1.11 sample for mathfixs]
%<*driver>
-\def\thedate#1{2024/10/23}\def\theversion#1{v1.1}
+\def\thedate#1{2024/10/25}\def\theversion#1{v1.11}
\ProvidesFile{mathfixs.dtx}[\thedate{} \theversion{} mathfixs reference manual file]
\PassOptionsToClass{10pt,a4paper}{article}
\documentclass{ltxdoc}
@@ -1160,6 +1160,14 @@ offering a more advanced implementation.
\subsection{Revision History}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\paragraph{v1.11:} 2024/10/25
+
+\begin{itemize}
+\item
+fixed misspelled definition |\End|
+\end{itemize}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{v1.1:} 2024/10/23
\begin{itemize}
@@ -2102,7 +2110,7 @@ z\defeq x+\iunit y=r\econst^{\iunit\theta}\in\Complex,
% \begin{macrocode}
\define@key{mafx@}{mapclass}[]{%
\let\Hom=\mafx@Hom
- \let\Eng=\mafx@Eng
+ \let\End=\mafx@End
\let\Isom=\mafx@Isom
\let\Aut=\mafx@Aut
}
diff --git a/macros/latex/contrib/mathfixs/mathfixs.pdf b/macros/latex/contrib/mathfixs/mathfixs.pdf
index 4103cae3f6..6743e280a5 100644
--- a/macros/latex/contrib/mathfixs/mathfixs.pdf
+++ b/macros/latex/contrib/mathfixs/mathfixs.pdf
Binary files differ
diff --git a/macros/latex/contrib/naive-ebnf/LICENSE.txt b/macros/latex/contrib/naive-ebnf/LICENSE.txt
index 412bdfe98e..f158d5e3f9 100644
--- a/macros/latex/contrib/naive-ebnf/LICENSE.txt
+++ b/macros/latex/contrib/naive-ebnf/LICENSE.txt
@@ -1,6 +1,6 @@
(The MIT License)
-Copyright (c) 2023 Yegor Bugayenko
+Copyright (c) 2023-2024 Yegor Bugayenko
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the 'Software'), to deal
diff --git a/macros/latex/contrib/naive-ebnf/naive-ebnf.dtx b/macros/latex/contrib/naive-ebnf/naive-ebnf.dtx
index 0a7b7e39bd..54e0955f8d 100644
--- a/macros/latex/contrib/naive-ebnf/naive-ebnf.dtx
+++ b/macros/latex/contrib/naive-ebnf/naive-ebnf.dtx
@@ -1,7 +1,7 @@
% \iffalse meta-comment
% (The MIT License)
%
-% Copyright (c) 2023 Yegor Bugayenko
+% Copyright (c) 2023-2024 Yegor Bugayenko
%
% Permission is hereby granted, free of charge, to any person obtaining a copy
% of this software and associated documentation files (the 'Software'), to deal
@@ -50,7 +50,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{naive-ebnf}
%<*package>
-[2024/09/06 0.0.16 EBNF in Plain Text]
+[2024/10/25 0.0.17 EBNF in Plain Text]
%</package>
%<*driver>
\documentclass{ltxdoc}
@@ -246,7 +246,7 @@
% \begin{document}
% \begin{ebnf}
% <x> := "beginning" \\
-% ||| ( <y> | <z> ) \\
+% ||| ( <y> | <z> ) \\
% ||| "ending" \\
% \end{ebnf}
% \end{document}
@@ -432,16 +432,19 @@
\regex_replace_all:nnN
{ /(.+?)/ }%
{\c{ebnf@regexp}{\1}} \ebnf_tmp%
+ \cs_undefine:N\ebnf_curled%
\cs_new:Npn\ebnf_curled{%
\regex_replace_all:nnNT
{ \{\s(([^\s]*(\s[^\}\{]|\s(\}|\{)[^\s])?)*)\s\}(\+)? }%
{\c{ebnf@repetition}[\5]{\1}} \ebnf_tmp \ebnf_curled}%
\ebnf_curled%
+ \cs_undefine:N\ebnf_brackets%
\cs_new:Npn\ebnf_brackets{%
\regex_replace_all:nnNT
{ \(\s(([^\s]*(\s[^\)\(]|\s(\)|\()[^\s])?)*)\s\) }%
{\c{ebnf@grouping}{\1}} \ebnf_tmp \ebnf_brackets}%
\ebnf_brackets%
+ \cs_undefine:N\ebnf_squares%
\cs_new:Npn\ebnf_squares{%
\regex_replace_all:nnNT
{ \[\s(([^\s]*(\s[^\]\[]|\s(\]|\[)[^\s])?)*)\s\] }%
diff --git a/macros/latex/contrib/naive-ebnf/naive-ebnf.ins b/macros/latex/contrib/naive-ebnf/naive-ebnf.ins
index ba41686ec6..d4ffc863ef 100644
--- a/macros/latex/contrib/naive-ebnf/naive-ebnf.ins
+++ b/macros/latex/contrib/naive-ebnf/naive-ebnf.ins
@@ -1,6 +1,6 @@
%% (The MIT License)
%%
-%% Copyright (c) 2023 Yegor Bugayenko
+%% Copyright (c) 2023-2024 Yegor Bugayenko
%%
%% Permission is hereby granted, free of charge, to any person obtaining a copy
%% of this software and associated documentation files (the 'Software'), to deal
@@ -26,7 +26,7 @@
\preamble
(The MIT License)
-Copyright (c) 2023 Yegor Bugayenko
+Copyright (c) 2023-2024 Yegor Bugayenko
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the 'Software'), to deal
diff --git a/macros/latex/contrib/naive-ebnf/naive-ebnf.pdf b/macros/latex/contrib/naive-ebnf/naive-ebnf.pdf
index 6b65d1f271..ecf3ffa545 100644
--- a/macros/latex/contrib/naive-ebnf/naive-ebnf.pdf
+++ b/macros/latex/contrib/naive-ebnf/naive-ebnf.pdf
Binary files differ
diff --git a/support/TeX4ht/source/ChangeLog b/support/TeX4ht/source/ChangeLog
index 5bcc34c2d9..8f7bdcdf03 100644
--- a/support/TeX4ht/source/ChangeLog
+++ b/support/TeX4ht/source/ChangeLog
@@ -1,3 +1,12 @@
+2024-10-25 Michal Hoftich <michal.h21@gmail.com>
+
+ * tex4ht-mathjax.tex (mathjax-latex-4ht.4ht): restore math
+ environments before \tikz@installcommands, to fix issues with
+ the matrix environment.
+
+ * tex4ht-4ht.tex (french.4ht): fixed \part command in TOC.
+ https://github.com/michal-h21/make4ht/issues/155
+
2024-10-18 Michal Hoftich <michal.h21@gmail.com>
* tex4ht-4ht.tex (caption.4ht): fixed support for the \caption
diff --git a/support/TeX4ht/source/tex4ht-4ht.tex b/support/TeX4ht/source/tex4ht-4ht.tex
index 59b417a419..5f6d639772 100644
--- a/support/TeX4ht/source/tex4ht-4ht.tex
+++ b/support/TeX4ht/source/tex4ht-4ht.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-4ht.tex 1584 2024-10-18 15:00:09Z michal_h21 $
+% $Id: tex4ht-4ht.tex 1588 2024-10-25 14:32:49Z michal_h21 $
% tex tex4ht-4ht or ht tex tex4ht-4ht
%
% Copyright 2009-2024 TeX Users Group
@@ -16657,7 +16657,6 @@ DIV.right
\<memoir.4ht\><<<
% memoir.4ht (|version), generated from |jobname.tex
% Copyright |CopyYear.2003. Eitan M. Gurari
-% Copyright 2003-2024 TeX Users Group
|<TeX4ht copywrite|>
\input book.4ht
\input verse.4ht
@@ -26043,6 +26042,7 @@ CTAN:language/mongolian/montex/examples
|<french 4ht|>
\Configure{special}{\csname @s@ORI\endcsname}
\fi
+|<french part|>
\Hinput{french}
\endinput
>>> \AddFile{7}{french}
@@ -26077,6 +26077,17 @@ CTAN:language/mongolian/montex/examples
\fi
>>>
+This should fix part commands in TOC. Bug report is
+\Link[https://github.com/michal-h21/make4ht/issues/155]{}{}here\EndLink
+
+\<french part\><<<
+\DeclareRobustCommand*{\FB@emptypart}{\def\thepart{}}
+\HAssign\french:part=0
+\def\tocpart#1#2#3{\par
+ \HAdvance\french:part 1\relax%
+ \HCode{<span class="partToc" \a:LRdir>}\uppercase\expandafter{\romannumeral\french:part\relax}\ \ #2\HCode{</span>}\par}%
+>>>
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Chapter{Verbatim}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/support/TeX4ht/source/tex4ht-mathjax.tex b/support/TeX4ht/source/tex4ht-mathjax.tex
index 90d4498dc1..0e96e2b270 100644
--- a/support/TeX4ht/source/tex4ht-mathjax.tex
+++ b/support/TeX4ht/source/tex4ht-mathjax.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-mathjax.tex 1562 2024-09-27 11:07:49Z michal_h21 $
+% $Id: tex4ht-mathjax.tex 1589 2024-10-25 14:47:14Z michal_h21 $
% compile: latex tex4ht-mathjax
%
% Copyright 2018-2024 TeX Users Group
@@ -309,7 +309,8 @@ inside TikZ etc.
\<restore environments\><<<
\@ifpackageloaded{tikz}{%
-\tikzset{every picture/.append code={\:ignoretikzmatrix\RestoreMathJaxEnvironments}}
+%\tikzset{every picture/.append code={\:ignoretikzmatrix\RestoreMathJaxEnvironments}}
+\pend:def\tikz@installcommands{\RestoreMathJaxEnvironments}
}{}
>>>
diff --git a/support/pdflatexpicscale/README b/support/pdflatexpicscale/README
index 56b00b6b36..f95ecc2dd0 100644
--- a/support/pdflatexpicscale/README
+++ b/support/pdflatexpicscale/README
@@ -3,11 +3,11 @@ to a target resolution before creating a PDF document
with PdfLaTeX.
*Version*
-2018-02-12 (version of bundle)
+2024-10-18 (version of bundle)
For version details check pdflatexpicscale.pdf.
*Requirements*
-Perl and ImageMagick have to be installed.
+Perl and some Perl modules have to be installed - see pdflatexpicscale.pdf.
*Basic usage*
pdflatex article
diff --git a/support/pdflatexpicscale/pdflatexpicscale.pdf b/support/pdflatexpicscale/pdflatexpicscale.pdf
index 8e42d2a18f..729034176f 100644
--- a/support/pdflatexpicscale/pdflatexpicscale.pdf
+++ b/support/pdflatexpicscale/pdflatexpicscale.pdf
Binary files differ
diff --git a/support/pdflatexpicscale/pdflatexpicscale.pl b/support/pdflatexpicscale/pdflatexpicscale.pl
index ef16ea8639..22e608b33e 100755
--- a/support/pdflatexpicscale/pdflatexpicscale.pl
+++ b/support/pdflatexpicscale/pdflatexpicscale.pl
@@ -16,37 +16,71 @@
# with the documentation, even when the perl code does not change.
# 2017-02-01 pdflatexpicscale did not work correct when log lines were
# wrapped twice. This is fixed.
+# 2024-10-18 Replaced dependency of external ImageMagick software in favor
+# of GD library.
#
use strict;
+
+use GD;
+use Image::ExifTool;
+
use File::Basename;
use File::Spec;
use File::Copy;
+
use Getopt::Long;
-my $version = '0.32';
-my $versiondate = '2018-02-12'; #version %version
+my $version = '0.50';
+my $versiondate = '2024-10-18'; #version %version
my $showversion;
-my $verbose;
-my $help;
+# command line inouts
+my $verbose = 0;
+my $help = 0;
+my $draftoption = 0;
+my $finaloption = 0;
my $TeXproject;
# folders for scaled graphics, relative names
-my $printfolderprefix = 'printimg';
-my $previewfolderprefix = 'previewimg';
-my $srcfolder = '';
+my $outputfolderprefix = undef;
+my $srcfolder = '';
-# final resolution. special b/w handling not implemented yet
-my $printdpi = 300;
-my $printbwdpi = 4 * $printdpi;
-my $previewdpi = 72;
-my $tolerance = 20;
+my %customsettings = (
+ 'name' => 'from command line',
+ 'outputdpi' => 300,
+ 'outputfolder' => 'printimg',
+ 'jpegquality' => 80,
+ 'outputbwdpi' => 1200
+ );
-# file formats
+my %finalsettings = (
+ 'name' => 'final',
+ 'outputdpi' => 300,
+ 'jpegquality' => 80,
+ 'outputfolder' => 'finalimg',
+ 'outputbwdpi' => 1200
+ );
+
+my %draftsettings = (
+ 'name' => 'draft',
+ 'outputdpi' => 96,
+ 'jpegquality' => 50,
+ 'outputfolder' => 'webimg',
+ 'outputbwdpi' => 300
+ );
+
+my $outputdpi = undef; # final resolution.
+my $outputbwdpi = undef; # final resolution for pure b/w art
+my $tolerance = 20; # avoid resampling of almost fitting images
+my $jpegquality = undef; # 50 is mostly acceptable, 80 is fine.
+
+# supported file formats (by extension)
my %canhandle =
-( JPG => '1',
- PNG => '1',
-);
+ (
+ 'JPEG' => '1',
+ 'JPG' => '1',
+ 'PNG' => '1',
+ );
# bookkeeping
my %processedimages;
@@ -54,17 +88,183 @@ my $copied = 0;
my $scaled = 0;
my $skipped = 0;
-sub printInplaceError
+# the following is required by Image::ExifTool
+our $AUTOLOAD;
+sub AUTOLOAD
{
+ Image::ExifTool::DoAutoLoad($AUTOLOAD, @_);
+}
+
+sub printError
+{
+ my $filename = shift;
+ my $kind = shift;
+ if ($kind eq 'i') {
+ print "I will not do inplace modification of graphics:\n" .
+ "($filename) will not be processed. (Missing path?)\n";
+ } elsif ($kind eq 'm') {
+ print "I can't find ($filename). (What have you done?)\n";
+ } elsif ($kind eq 'f') {
+ print "File $filename has an unexpected or wrong format.\n";
+ } elsif ($kind eq 's') {
+ print "Trying to copy '$filename' leads to system error # $_.\n";
+ } elsif ($kind eq 'd') {
+ print "Directory '$filename' does not exist\n"
+ . "in actual folder and I can't create it (sys error # $_).\n"
+ . "Please check permissions. Aborting.\n";
+ } else {
+ print "I got trouble with '$filename'.\n";
+ }
+}
+
+sub getDestFilename
+{
+ my @dstdirs;
my $filename = shift;
- print "I will not do inplace modification of graphics:\n" .
- "($filename) will not be processed. (Missing path?)\n";
+ my $dstfilename = undef;;
+ $dstdirs[0] = '.';
+ $dstdirs[1] = $outputfolderprefix;
+ $dstfilename = File::Spec->catfile(@dstdirs, basename($filename));
+ return $dstfilename;
}
-sub printMissingError
+sub getSourceFilename
{
+ my @srcdirs;
my $filename = shift;
- print "I can not find ($filename). (What have you done?)\n";
+ my $srcfilename = undef;
+ if (defined($srcfolder) and $srcfolder gt '') {
+ $srcdirs[0] = '$srcfolder';
+ $srcfilename = File::Spec->catfile(@srcdirs, basename($filename));
+ $filename = $srcfilename;
+ }
+ unless (-e $filename){
+ printError($filename, 'm');
+ return undef;
+ }
+ return $filename;
+}
+
+sub fileYounger
+{
+ my @filename = @_;
+ my ($mtime1, $mtime2, $size1, $size2, $idstring2, $existwidth);
+ my ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size,
+ $atime, $ctime, $blksize, $blocks);
+ ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size,
+ $atime, $mtime1, $ctime, $blksize, $blocks)
+ = stat($filename[0]);
+ ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size,
+ $atime, $mtime2, $ctime, $blksize, $blocks)
+ = stat($filename[1]);
+ if($mtime1 >= $mtime2) {
+ return 1;
+ }
+ return 0;
+
+}
+
+sub numberInRange
+{
+ my $realwidth = shift;
+ my $wantedwidth = shift;
+ if (($realwidth >= $wantedwidth * 100 / (100 + $tolerance)) and
+ ($realwidth <= $wantedwidth * (100 + $tolerance) / 100)) {
+ return 1;
+ } else {
+ return 0;
+ }
+}
+
+sub loadImage
+{
+ my %result = (
+ 'filename' => undef,
+ 'image' => undef, 'canhandle' => 0,
+ 'format' => undef, 'width' => 0,
+ 'height' => 0, 'monochrome' => 0,
+ 'quality' => 50
+ );
+ $result{'filename'} = shift;
+ my $maketruecolor = shift || 0;
+ my $exifTool = Image::ExifTool->new;
+ my $imageinfo = $exifTool->ImageInfo($result{'filename'});
+# foreach (sort keys %$imageinfo) {
+# print "$_ => $$imageinfo{$_}\n";
+# }
+ $result{'image'} = GD::Image->new($result{'filename'});
+ $result{'width'} = $$imageinfo{'ImageWidth'};
+ $result{'height'} = $$imageinfo{'ImageHeight'};
+ if ( ($$imageinfo{'FileType'} eq 'PNG') or
+ ($$imageinfo{'FileType'} eq 'JPEG')) {
+ $result{'format'} = $$imageinfo{'FileType'};
+ $result{'canhandle'} = 1;
+ }
+ if (defined($$imageinfo{'BitDepth'}) and $$imageinfo{'BitDepth'} == 1) {
+ $result{'monochrome'} = 1;
+ } elsif (defined($result{'image'})) {
+ $result{'canhandle'} = 1;
+ if (defined ($result{'image'}->colorsTotal) and
+ $result{'image'}->colorsTotal < 3) {
+ $result{'monochrome'} = 1;
+ }
+ unless (defined($result{'width'})) {
+ $result{'width'} = $result{'image'}->width;
+ }
+ unless (defined($result{'height'})) {
+ $result{'height'} = $result{'image'}->height;
+ }
+ }
+ return %result;
+}
+
+sub writeImage
+{
+ my %dst = @_;
+ my $imagedata = undef;
+ my $realfilename = $dst{'filename'};
+ open(OUT, '>', $realfilename) or die;
+ binmode OUT;
+ if ($dst{'format'} eq 'PNG') {
+ $dst{'image'}->interlaced(undef); # else PFDTEX has to do it.
+ $imagedata = $dst{'image'}->png(9);
+ } elsif ($dst{'format'} eq 'JPEG') {
+ $imagedata = $dst{'image'}->jpeg($jpegquality);
+ }
+ print OUT $imagedata;
+ close(OUT);
+ return 1;
+}
+
+sub GDscale
+{
+ my $srcfilename = shift;
+ my $dstfilename = shift;
+ my $dstwidth = shift;
+ my $dstheight = shift;
+ # my $interpolationmethod = GD_BICUBIC;
+ # Unfortunately not exported by GD and item of an enum.
+ # So I guess:
+ my $interpolationmethod = 4;
+ my %src = loadImage($srcfilename, 0);
+ $src{'destwidth'} = $dstwidth;
+ $src{'destheight'} = $dstheight;
+ $src{'image'}->interpolationMethod($interpolationmethod);
+ # what I will not copy: image, width, height, filename
+ my @properties = qw (
+ canhandle format monochrome
+ );
+ my %dstimage = ();
+ foreach (@properties) {
+ $dstimage{$_} = $src{$_};
+ }
+ $dstimage{'width'} = $src{'destwidth'};
+ $dstimage{'height'} = $src{'destheight'};
+ $dstimage{'filename'} = $dstfilename;
+ $dstimage{'image'} = $src{'image'}->copyScaleInterpolated(
+ $dstimage{'width'}, $dstimage{'height'});
+ writeImage(%dstimage);
+ return 1;
}
sub handleImage
@@ -72,98 +272,90 @@ sub handleImage
my $filename = shift;
my $dstwidth = shift;
my $dstheight = shift;
- my ($srcwidth, $srcheight, $srcdepth);
- my $dstfilename;
- my $xfilename;
- my @xsrcdirs;
- my @dstdirs;
+ my ($srcwidth, $srcheight, $srcdepth, $monochrome, $existwidth);
+ my ($dstfilename, $xfilename);
my @convertargs;
- my $idstring;
- print "$filename\n";
- $dstdirs[0] = '.';
- $dstdirs[1] = $printfolderprefix;
- $dstfilename = File::Spec->catfile(@dstdirs, basename($filename));
- if($filename eq $dstfilename){
- unless ($srcfolder gt ' ') {
- printInplaceError($filename);
- $skipped++;
- return;
- }
- $xsrcdirs[0] = $srcfolder;
- $xfilename = File::Spec->catfile(@xsrcdirs, basename($filename));
- unless (-e $xfilename){
- printMissingError($xfilename);
- $skipped++;
- return;
- }
+ my %srcimage = ();
+ my %dstimage = ();
+ print "$filename, " if $verbose;
+ $dstfilename = getDestFilename($filename);
+ $xfilename = getSourceFilename($filename);
+ if (defined($xfilename)) {
$filename = $xfilename;
+ } else {
+ printError($filename, 'm');
+ $skipped++;
+ return 0;
+ }
+ if($filename eq $dstfilename) {
+ printError($filename, 'i');
+ $skipped++;
+ return 0;
}
# check for image width and height
- $idstring = `identify -format "%w x %h %[depth] " $filename`;
- return unless $idstring =~ /(\d+) x (\d+) (\d+)/;
- $srcwidth = $1; $srcheight = $2; $srcdepth = $3;
- if($srcdepth == 1) { # hires for bw pix
- $dstwidth = int($dstwidth * $printbwdpi / 72.27 + .5);
- $dstheight = int($dstheight * $printbwdpi / 72.27 + .5);
- }else { # moderate res for any other
- $dstwidth = int($dstwidth * $printdpi / 72.27 + .5);
- $dstheight = int($dstheight * $printdpi / 72.27 + .5);
+ %srcimage = loadImage($filename);
+ if ($srcimage{'canhandle'} == 0 or ! defined($srcimage{'image'})) {
+ # copy from source to dest.
+ print "I Can't deal with $filename, so I will just\n"
+ . "copy it to $dstfilename\n" if $verbose;
+ copy($filename, $dstfilename);
+ $copied++;
+ return 1;
}
- if(-e $dstfilename){
- # if younger and requested size: skip
- my ($mtime1, $mtime2, $size1, $size2, $idstring2, $existwidth);
- my ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size,
- $atime, $ctime, $blksize, $blocks);
- ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size,
- $atime, $mtime1, $ctime, $blksize, $blocks)
- = stat($dstfilename);
- ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size,
- $atime, $mtime2, $ctime, $blksize, $blocks)
- = stat($filename);
- if($mtime1 >= $mtime2){
- $idstring2 = `identify -format "%w x %h %[depth] " $dstfilename`;
- if($idstring2 =~ /(\d+) x (\d+) (\d+)/){
- $existwidth = $1;
- if($existwidth == $dstwidth){
- $processedimages{$filename} = $existwidth;
- $skipped++;
- return;
- }
- }
- }
+ $srcwidth = $srcimage{'width'};
+ $srcheight = $srcimage{'height'};
+ $monochrome = $srcimage{'monochrome'};
+ if($monochrome == 1) { # hires for bw pix
+ $dstwidth = int($dstwidth * $outputbwdpi / 72.27 + .5);
+ $dstheight = int($dstheight * $outputbwdpi / 72.27 + .5);
+ }else { # moderate res for any other
+ $dstwidth = int($dstwidth * $outputdpi / 72.27 + .5);
+ $dstheight = int($dstheight * $outputdpi / 72.27 + .5);
}
- if(($dstwidth >= $srcwidth) ||
- ($dstwidth *(100 + $tolerance)/100 >= $srcwidth)) {
- # we do no upscaling, but will probably copy the file.
- if (defined $processedimages{$filename}){
- $skipped++;
- }else {
- $processedimages{$filename} = $srcwidth;
- print "will copy $filename to $dstfilename\n" if $verbose;
- copy($filename, $dstfilename);
- $copied++;
- return;
- }
- }else {
+ if(-e $dstfilename and fileYounger($dstfilename, $filename)) {
+ # if requested size already processed: skip
if((defined $processedimages{$filename}) &&
($processedimages{$filename} >= $dstwidth)) {
+ # if known, already processed and large enough: skip
$skipped++;
- return;
+ return 1;
+ }
+ %dstimage = loadImage($dstfilename);
+ $existwidth = $dstimage{'width'};
+ # if requested size already there: make known and skip
+ if(numberInRange($existwidth, $dstwidth)) {
+ $processedimages{$filename} = $existwidth;
+ $skipped++;
+ return 1;
}
- # we do some downscaling
- $processedimages{$filename} = $dstwidth;
- $convertargs[0] = 'convert';
- $convertargs[1] = ${filename};
- $convertargs[2] = '-resize';
-# $convertargs[3] = "${dstwidth}x${dstheight}!";
- $convertargs[3] = "${dstwidth}x${dstheight}";
- $convertargs[4] = "-density";
- $convertargs[5] = $printdpi;
- $convertargs[6] = ${dstfilename};
- print "will @convertargs\n" if $verbose;
- system(@convertargs);
+ }
+ if (numberInRange($dstwidth, $srcwidth) or $dstwidth > $srcwidth) {
+ # we do no upscaling, but will probably copy the file.
+ $processedimages{$filename} = $srcwidth;
+ print "will copy $filename to $dstfilename\n" if $verbose;
+ copy($filename, $dstfilename);
+ $copied++;
+ return 1;
+ }else {
+ GDscale($xfilename, $dstfilename, $dstwidth, $dstheight);
$scaled++;
}
+ return 1;
+}
+
+sub createOutputFolder
+{
+ my @dstdirs;
+ $dstdirs[0] = '.';
+ my $dstdirname = File::Spec->catfile(@dstdirs, $outputfolderprefix);
+ if (mkdir($dstdirname) == 0) {
+ printError($dstdirname, 'd');
+ return 0;
+ }
+ if ($verbose) {
+ print "Created directory $outputfolderprefix\n";
+ }
+ return 1;
}
sub readlog
@@ -172,10 +364,18 @@ sub readlog
$logfilename .= '.log';
my ($picname, $picext, $picwidth, $picheight);
my ($picextu, $state, $buffer);
- open LOGFILE, "<$logfilename" or die "Cannot read $logfilename";
+ open LOGFILE, "<$logfilename" or die "Cannot read $logfilename.\n"
+ . 'Please run pdfLaTeX before pdflatexpicscale.';
$state = 0;
+ unless (-d $outputfolderprefix) {
+ if (createOutputFolder() == 0) {
+ close LOGFILE;
+ return;
+ }
+ }
+ print "Processing " if $verbose;
while (<LOGFILE>){
- if (/^Package pdftex\.def\sInfo\:\s/){
+ if (/^Package\spdftex\.def\sInfo\:\s/){
$buffer = $_;
unless ($buffer =~ /\sused/){
chomp $buffer;
@@ -185,14 +385,16 @@ sub readlog
chomp $buffer;
$buffer .= <LOGFILE>;
}
- if($buffer =~ /Info:\s(\S*)\.(\w+)\sused/){
+ if($buffer =~ /Info:\s(\S*)\.(\w+)\s+used/){
$picname = $1;
$picext = $2;
($picextu = $picext) =~ tr/a-z/A-Z/;
if(defined $canhandle{$picextu}){
$state = 1;
- next;
+ next; # width/height information will follow
}
+ } else {
+ print "Log file apparently damaged at line $.\n";
}
}
next unless ($state == 1);
@@ -202,34 +404,84 @@ sub readlog
handleImage("$picname.$picext", $picwidth, $picheight);
$state = 0;
}
+ close LOGFILE;
+}
+
+sub initializeGlobals
+{
+ my $settinghash = undef;
+ if($draftoption == 1) {
+ $settinghash = \%draftsettings;
+ } elsif ($finaloption == 1) {
+ $settinghash = \%finalsettings;
+ } else {
+ $settinghash = \%customsettings;
+ }
+ if ($verbose != 0) {
+ print 'Using settings: ' . $$settinghash{'name'} . "\n";
+ }
+ unless (defined ($outputdpi)) {
+ $outputdpi = $$settinghash{'outputdpi'} || 300;
+ }
+ unless (defined ($outputbwdpi)) {
+ $outputbwdpi = 4 * $outputdpi;
+ }
+ unless (defined ($outputfolderprefix)) {
+ $outputfolderprefix = $$settinghash{'outputfolder'} || 'printimg';
+ }
+ unless (defined ($jpegquality)) {
+ $jpegquality = $$settinghash{'jpegquality'} || 80;
+ }
}
sub usage
{
- print <<'_endusage';
+ print <<'_endusagehead';
pdflatexpicscale will downscale large raster images for your TeX project
to reasonable size.
Basic usage:
pdflatexpicscale myarticle
where your main LaTeX file is called 'myarticle.tex' and a log file exists.
-Fine tuning:
+General options:
+--help (show this message)
+--usage (show this message)
+--verbose (let the script tell, what it attempts to do)
+--version (show software version)
+If you are comfortable with defaults (see manual), you may use one of the
+following options:
+_endusagehead
+ my %optiondumper = (
+ 'name' => 'Option name',
+ 'outputfolder' => 'Output folder',
+ 'outputdpi' => 'Output density',
+ 'outputbwdpi' => 'same for B/W',
+ 'jpegquality' => 'JPEG quality'
+);
+ print <<'_endusagefoot';
+Option name --final --draft
+Output folder finalimg webimg
+JPEG quality 80% 50%
+output density 300 dpi 96 dpi
+same for B/W 1200 dpi 300 dpi
+tolerance 20% 20%
+If not, you may do some fine tuning:
--destdir=folder (relative path, must exist,
defaults to 'printimg' subfolder of current folder)
--srcdir=folder (folder to find original images, if this software
can't figure it out on it's own, because you already
- used the target directory.)
+ named the target directory inside your LaTex document.)
--printdpi=XXX (default 300)
---tolerance=XX (default 20 Percents over printdpi to ignore scaling)
---verbose (if you want to know what the script attempts to do)
---version (show software version)
-_endusage
+--tolerance=XX (default 20 percent over printdpi to ignore scaling)
+_endusagefoot
}
GetOptions('verbose' => \$verbose,
- 'printdpi=i' => \$printdpi,
- 'destdir=s' => \$printfolderprefix,
+ 'printdpi=i' => \$outputdpi,
+ 'destdir=s' => \$outputfolderprefix,
'tolerance=i' => \$tolerance,
'srcdir=s' => \$srcfolder,
+ 'draft' => \$draftoption,
+ 'final' => \$finaloption,
'version' => \$showversion,
'help' => \$help,
'usage' => \$help,
@@ -242,17 +494,23 @@ if($showversion){
if($help){
usage();
+ exit(0);
}
+my $settinghash = \%customsettings;
+
+initializeGlobals();
+
$TeXproject = shift;
if((defined $TeXproject) && ($TeXproject gt ' ')){
readlog($TeXproject);
if($verbose) {
- print "pdflatexpicscale Version $version:\n"
+ print "\npdflatexpicscale Version $version:\n"
. "$copied file(s) copied, $scaled file(s) converted " .
"and $skipped occurence(s) skipped for:\n${TeXproject}.log.\n";
}
}else {
usage();
+ exit(1);
}
diff --git a/support/pdflatexpicscale/pdflatexpicscale.tex b/support/pdflatexpicscale/pdflatexpicscale.tex
index e3b740a51a..a54bf283ec 100644
--- a/support/pdflatexpicscale/pdflatexpicscale.tex
+++ b/support/pdflatexpicscale/pdflatexpicscale.tex
@@ -5,7 +5,7 @@
\usepackage{url}
\title{pdflatexpicscale}
\author{Peter Willadt\footnote{willadt at t-online.de}}
-\date{2018-02-12} %version #version
+\date{2024-10-18} %version #version
\begin{document}
\maketitle
@@ -54,39 +54,50 @@ scale graphics according to the output intent.
\subsection{Prerequisites}
-You have to install ImageMagick and Perl. If you are using Linux, please use
-the tools of your distribution, if they are not already installed. As a
-windows user, you may probably use the official ImageMagick distribution at
-\url{http://www.imagemagick.org/script/download.php}. For Perl, you got more
-options. I have tested pdflatexpicscale with ActiveState ActivePerl, but other
-distributions should work too.
-You also need the following Perl modules: \texttt{File::Basename},
-\texttt{File::Spec}, \texttt{File::Copy}, and \texttt{Getopt::Long}. There are
-several ways to get these modules, if you have not got them already:
+You \label{section:requisites} have to install Perl version~5, if it is not
+installed already. If you are using Linux, I recommend to use the tools of
+your distribution. As a windows user, you may probably use Strawberry Perl.
+You also need the following Perl modules:
+\begin{itemize}
+\item \texttt{GD} (at least version 2.2),
+\item \texttt{Image::ExifTool},
+\item \texttt{File::Basename},
+\item \texttt{File::Spec},
+\texttt{File::Copy}, and
+\item \texttt{Getopt::Long}.
+\end{itemize}
+
+There are no further requirements for the versions of the software to install,
+but it may be wise to use recent releases.
+There are several ways to get these modules, if you have not got them
+already. The most popular are probably:
\begin{itemize}
\item use your Linux distribution's software manager
\item use the Perl CPAN module
-\item use ActiveState's \texttt{ppm} software, if you use ActivePerl.
+\item use ActiveState's \texttt{ppm} software, if you happen to use
+ ActivePerl.
\end{itemize}
-Detailled description of these procedures is beyond the scope of this
-document.
+Detailed description of these procedures is beyond the scope of this
+document.
-There are no special requirements for the versions of the software to install,
-but it may be wise to use recent versions, as there have been security flaws
-with ImageMagick.
+As of 2024, no further external software is needed, in contrast to earlier
+versions.
\subsection{Installation}
-If the prerequisites have been fulfilled (which is perhaps standard for a
-Linux computer), it is sufficient to move the file
-\texttt{pdflatexpicscale.pl} to a place that is included in your PATH and to
-make it executable. Of course, there are alternatives. You may perhaps
-prefer to type\\
+If pdflatexpicscale.pl is part of your \TeX\ distribution,
+chances are good that you only have to install missing Perl modules, if
+any. Otherwise the following should apply:
+
+Having installed Perl and the required modules, it is sufficient to move
+the file \texttt{pdflatexpicscale.pl} to a place that is included in your PATH
+and to make it executable. Of course, there are alternatives. You may perhaps
+prefer to type the following instead:
+
\texttt{perl /path/to/pdflatexpicscale.pl myarticle}\\
-instead.
\section{Basic usage}
@@ -127,7 +138,8 @@ Some other text...
You hopefully do not have distinct pictures with the same name in the listed
folders. With \verb|\graphicspath| you have to use double braces, even if you
-use only one directory.
+use only one directory. The best place for the \verb|\graphicspath| statement
+is probably near the beginning of your \LaTeX\ file.
\subsection{Preparing your \LaTeX\ file, Part~2}
@@ -172,7 +184,7 @@ again on \texttt{myarticle}. I have told you to use double braces with
\verb|\graphicspath|, haven't I? If you still are curious, you can again
check the size of \texttt{myarticle.pdf}.
-When it gets to preparing a print version, you create a directory for images
+When it is time to prepare a print version, you create a directory for images
with more detail, say \texttt{printpix}. You reset the \verb|\graphicspath|,
run Pdf\LaTeX, issue\\
\texttt{pdflatexpicscale --printdpi=300 --destdir=printpix myarticle}\\
@@ -180,11 +192,10 @@ and set \verb|\graphicspath{{printpix/}}| before the next Pdf\LaTeX\ run.
\section{Advanced usage}
-
\subsection{Excluding files from scaling}
You will probably exclude files from scaling when you think that scaling will
-do damage. You may achieve this by several means. Before you ask. Enumerating
+harm. You may achieve this by several means. Before you ask: Enumerating
files to exclude is not really cool, so this is not supported.
\begin{enumerate}
@@ -208,6 +219,19 @@ directories. Before the first \LaTeX\ run, you say\\
and after pdflatexpicscale is through, you change it to\\
\verb|\graphicspath{{hires/}{printimg/}}|
+\subsection{Monochrome Images}
+
+While \label{section:monochrome}Pdf\TeX\ supports JBIG2 files,
+pdflatexpicscale does not. Scaling JBIG2 files down looks like a bad idea,
+anyway.
+
+Scaling monochrome\footnote{\emph{Monochrome} in the technical sense of one
+ bit per pixel as opposed to grayscale or color images that use only one
+ color.} images may lead to bad results. I recommend converting them to
+grayscale before scaling, as blurred details are perhaps better than missing
+details. pdflatexpicsacle will scale B/W images only if their resolution is at
+least two times higher as requested.
+
\subsection{Gory details}
pdflatexpicscale reads the log file, not the \LaTeX\ source. So you have to
@@ -256,12 +280,16 @@ pictures remain unscaled because they are near the target resolution. Default
is 20, that means 20~percent. If target resolution is 300~dpi, files up to
320~dpi get accepted too. Change to 0 if you want no tolerance.
+\paragraph{draft/final} Setting one of these options will use reasonable
+defaults, if you do not want to use any of the further options.
+Please call \texttt{pdflatexpicscale.pl --help} to see concrete values.
+
\paragraph{verbose} entertains you by showing what the program is about to
do.
\paragraph{version} shows the software version.
-Calling pdflatexpicscale without any options and without a project name will
+Calling pdflatexpicscale.pl without any options and without a project name will
display a short usage text.
\subsection{Printer testing}
@@ -335,5 +363,23 @@ this document, the option \texttt{tolerance} had been listed as
As the TUGboat article corresponding to pdflatexpicscale is freely available
now, the link on page~\pageref{tugboatart} has been adjusted.
+\paragraph{2024-10-18}
+
+Added section~{section:monochrome} with hints for B/W images to
+documentation. Also did some minor edits, especially to accompany the
+following changes (see section~\ref{section:requisites}).
+
+As there have been issues with ImagMagick, pdflatexpicscale no longer uses
+external software; Perl's GD and Image::ExifTool modules are used instead.
+
+Added new shortcut options \texttt{--draft} and \texttt{--final}.
+
+Refactored pdflatexpicscale.pl, hopefully without bad side effects.
+
% for file version please see line 8
\end{document}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: t
+%%% End:
diff --git a/support/pdflatexpicscale/testprinter.ps b/support/pdflatexpicscale/testprinter.ps
index 900fe5dc8e..71856a45e4 100644
--- a/support/pdflatexpicscale/testprinter.ps
+++ b/support/pdflatexpicscale/testprinter.ps
@@ -4,7 +4,7 @@
% PostScript by Example.
% First printing, 1992, P. 544 ff
% Willadt 2016-07-27
-% version 2018-02-12 #version %version
+% version 2024-10-18 #version %version
% for information on usage and changes see pdflatexpicscale.pdf
/prozente 20 string def
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index d20b79d2b6..4ef31fc192 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -101,7 +101,6 @@ $mirrors = {
'Germany' => {
'http://sendinnsky.selfhost.co/tex-archive/' => 1,
'http://vesta.informatik.rwth-aachen.de/ftp/pub/mirror/ctan/' => 1,
- 'https://ctan.joethei.xyz/' => 1,
'https://ctan.mc1.root.project-creative.net/' => 1,
'https://ctan.mirror.norbert-ruehl.de/' => 1,
'https://ctan.net/' => 1,
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 66dd6297bc..f45e782418 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/2024
-depend revision/72648
+depend revision/72662
name 00texlive.image
category TLCore
-revision 72638
+revision 72656
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
@@ -713,6 +713,7 @@ runfiles size=14487
tlpkg/tlpsrc/beamertheme-gotham.tlpsrc
tlpkg/tlpsrc/beamertheme-light.tlpsrc
tlpkg/tlpsrc/beamertheme-metropolis.tlpsrc
+ tlpkg/tlpsrc/beamertheme-mirage.tlpsrc
tlpkg/tlpsrc/beamertheme-npbt.tlpsrc
tlpkg/tlpsrc/beamertheme-phnompenh.tlpsrc
tlpkg/tlpsrc/beamertheme-pure-minimalistic.tlpsrc
@@ -1294,6 +1295,7 @@ runfiles size=14487
tlpkg/tlpsrc/coordsys.tlpsrc
tlpkg/tlpsrc/copyedit.tlpsrc
tlpkg/tlpsrc/copyrightbox.tlpsrc
+ tlpkg/tlpsrc/cora-macs.tlpsrc
tlpkg/tlpsrc/cormorantgaramond.tlpsrc
tlpkg/tlpsrc/correctmathalign.tlpsrc
tlpkg/tlpsrc/coseoul.tlpsrc
@@ -4962,7 +4964,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 72616
+revision 72662
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
@@ -16811,30 +16813,31 @@ catalogue-version 1.1.2
name algxpar
category Package
-revision 67495
+revision 72657
shortdesc Support multiple lines of pseudocode
relocated 1
longdesc This package extends the package algorithmicx to support long
longdesc text which spans over multiple lines.
-containersize 6568
-containerchecksum 3ea0ccb08a088e16c3fd47f5455ec1c3980d242c4f9db838ad07dad089326bead01c03708fe25fe3a14ab3abfdee93c864d1c633f5e0fe043b31962ca1dfe462
-doccontainersize 751752
-doccontainerchecksum 196b2539e23d96f2f7967272d59243af9eabfd588c8ad4cf69174493084f5f3af0c088e3e5ee51df96a6a5de02a7d3a84f7f4f7b3f0cfec0fa4463fb929055ed
-docfiles size=201
+containersize 9868
+containerchecksum 6bfc5c7436bdb13f36b38c1b0caf7efa5b7111be748cbc20e5c3fb345b491893dde5da380d2f1309a06c880cc7b664e661c179d0cde67d4809d7b6c0642bf4f0
+doccontainersize 830152
+doccontainerchecksum b971d1c91a4706e4ebcd8c17c8c828b2bdfbb2796505321b2be77493b512553901c9281ada7c14451094050a666dd655257352b3c8a079fea85ab132b5748b25
+docfiles size=224
RELOC/doc/latex/algxpar/README.md details="Readme"
RELOC/doc/latex/algxpar/algxpar-doc.pdf details="Package documentation"
RELOC/doc/latex/algxpar/algxpar-doc.tex
- RELOC/doc/latex/algxpar/algxpar-lzw.tex
-runfiles size=9
+ RELOC/doc/latex/algxpar/license
+runfiles size=13
RELOC/tex/latex/algxpar/algxpar-brazilian.kw.tex
RELOC/tex/latex/algxpar/algxpar-english.kw.tex
+ RELOC/tex/latex/algxpar/algxpar-versionchanges.sty
RELOC/tex/latex/algxpar/algxpar.sty
catalogue-contact-bugs https://github.com/jandermoreira/algxpar/issues
catalogue-contact-repository https://github.com/jandermoreira/algxpar
catalogue-ctan /macros/latex/contrib/algxpar
catalogue-license lppl1.3
catalogue-topics pseudocode expl3
-catalogue-version 0.99
+catalogue-version 0.99.2
name aligned-overset
category Package
@@ -35327,6 +35330,41 @@ catalogue-license other-free
catalogue-topics presentation
catalogue-version 1.2
+name beamertheme-mirage
+category Package
+revision 72656
+shortdesc A beamer theme with dark and light colour schemes
+relocated 1
+longdesc A beamer theme inspired by the album art of Zhou Shen's song
+longdesc Mirage, with a default dark and alternative light mode. Sample
+longdesc .tex files for beamer presentations and posters are provided.
+containersize 2428
+containerchecksum ab160d3ee037a522595fad76746fc0a8d6a2e37d88f67e70c82b584c641c7931cde88dfd1a0f2fe05f8fdeb99ba046deb89073d9dcc4b416d47c26bd22d91b0c
+doccontainersize 791604
+doccontainerchecksum 0922c5f0d6e74304f74fd9b0d95772c919fa2321a8284a867e50aba5b548563f4f74f808876ea3e16e9151df6a4bf64dd9711188f52d81a4253b763fc80c38c0
+docfiles size=397
+ RELOC/doc/latex/beamertheme-mirage/LICENSE
+ RELOC/doc/latex/beamertheme-mirage/README.md details="Readme"
+ RELOC/doc/latex/beamertheme-mirage/beamertheme-mirage-doc.pdf details="Package documentation" language="en,zh"
+ RELOC/doc/latex/beamertheme-mirage/beamertheme-mirage-doc.tex
+ RELOC/doc/latex/beamertheme-mirage/mirage-beamer-en.pdf details="Example of the beamer theme (English)"
+ RELOC/doc/latex/beamertheme-mirage/mirage-beamer-en.tex
+ RELOC/doc/latex/beamertheme-mirage/mirage-beamer-zh.pdf details="Example of the beamer theme (Chinese)" language="zh"
+ RELOC/doc/latex/beamertheme-mirage/mirage-beamer-zh.tex
+ RELOC/doc/latex/beamertheme-mirage/mirage-poster-en.pdf details="Example of the poster theme (English)"
+ RELOC/doc/latex/beamertheme-mirage/mirage-poster-en.tex
+ RELOC/doc/latex/beamertheme-mirage/mirage-poster-zh.pdf details="Example of the poster theme (Chinese)" language="zh"
+ RELOC/doc/latex/beamertheme-mirage/mirage-poster-zh.tex
+ RELOC/doc/latex/beamertheme-mirage/miragesup.png
+ RELOC/doc/latex/beamertheme-mirage/sample-refs.bib
+runfiles size=2
+ RELOC/tex/latex/beamertheme-mirage/beamerthemeMirage.sty
+catalogue-contact-repository https://github.com/liantze/beamerthemeMirage
+catalogue-ctan /macros/latex/contrib/beamer-contrib/themes/beamertheme-mirage
+catalogue-license lppl1.3c
+catalogue-topics presentation
+catalogue-version 1.1
+
name beamertheme-npbt
category Package
revision 54512
@@ -72710,7 +72748,7 @@ containerchecksum e2186a4295eb854d56e838deaae8330e47ced975d28ad83b51d8ada6955a5a
name collection-latexextra
category Collection
-revision 72387
+revision 72656
shortdesc LaTeX additional packages
relocated 1
longdesc A very large collection of add-on packages for LaTeX.
@@ -72801,6 +72839,7 @@ depend beamertheme-focus
depend beamertheme-gotham
depend beamertheme-light
depend beamertheme-metropolis
+depend beamertheme-mirage
depend beamertheme-npbt
depend beamertheme-phnompenh
depend beamertheme-pure-minimalistic
@@ -74290,7 +74329,7 @@ depend zugferd
depend zwgetfdate
depend zwpagelayout
containersize 7288
-containerchecksum e51af3e7dfedb894a69e3f1f0a019f2a3f60cce48e7f39bd6ec1f52e2bc07ececb0dfcb2ff857f2ed7b17533b782d70d0e2fb06b6a254840665f50e8ec5d7b49
+containerchecksum 07a02833cc78e3a217771ec09165eb189a99354a74c76a4430736ad07c97ec7f44a90c58be849e3d8ccb5e4935ef21a9b2a40cc9244d1ec3b4ca05f65ecab4a6
name collection-latexrecommended
category Collection
@@ -74496,7 +74535,7 @@ containerchecksum db570ce04f9068f5ae55a4d5cb9c6adf3c3317cd03fb63ebd96ea55ad5b8b8
name collection-mathscience
category Collection
-revision 72575
+revision 72655
shortdesc Mathematics, natural sciences, computer science packages
relocated 1
depend 12many
@@ -74563,6 +74602,7 @@ depend computational-complexity
depend concmath
depend concrete
depend conteq
+depend cora-macs
depend correctmathalign
depend cryptocode
depend cs-techrep
@@ -74775,8 +74815,8 @@ depend youngtab
depend yquant
depend ytableau
depend zx-calculus
-containersize 1796
-containerchecksum 50440470ae19450201c7390aef27a3833b8d735f90b01279af54ea700feeb41261d6d91b7f8bd17581fb1dbaebdb16bb762214b177c0d4e2b99664c199e29f4d
+containersize 1804
+containerchecksum b2c0bfa30f1dd02ff0a952b5545ae85cd52b39d03d22ecb427570290c3702f44aaf45577db5636e8b382828b9b7103aed2ef2c064db9f5e78123b4aa9b361415
name collection-metapost
category Collection
@@ -77565,18 +77605,18 @@ catalogue-topics font font-mf font-maths
name concmath-otf
category Package
-revision 70294
+revision 72660
shortdesc Concrete based OpenType Math font
relocated 1
longdesc This package provides an OpenType version of the Concrete Math
longdesc font created by Ulrik Vieth in Metafont. "concmath-otf.sty" is
longdesc a replacement for the original "concmath.sty" package to be
longdesc used with LuaTeX or XeTeX engines.
-containersize 255476
-containerchecksum 4279c715bd6126cb4cba3733f55fb585faa81feafadc8b0fb4bd7140320a65cb651d3029e45456e452fa25b437d64995cf35b2bf3f210847c495b514e5c70aab
-doccontainersize 1935736
-doccontainerchecksum 0254cf4e959c65864e3281576b6c95d0afbd03b25874bd087d90738e365aee9db928d0ccd4d863a44959c8df0f83229c0319c56fbc734b568462370e5b59c59d
-docfiles size=505
+containersize 255936
+containerchecksum 6320cddf5c0896e74627c12dd3d6963cb4dbbae75fb4eee8215fdbdeec26211d08a245e8b0d5ec7bf52a409d1ae5a3a86c54f8457e068bef6da5e7ddc7c851fb
+doccontainersize 1902976
+doccontainerchecksum 9216da4e961c690ce8e7a46bfe6c0f9319de71252520336e54fa3037f853668b1b1e81d30ab5bc8dd09396069f0d0ebf95ba88b62a0592281997f944837ca59c
+docfiles size=497
RELOC/doc/fonts/concmath-otf/README.md details="Readme"
RELOC/doc/fonts/concmath-otf/concmath-otf.ltx
RELOC/doc/fonts/concmath-otf/concmath-otf.pdf details="Package documentation"
@@ -77587,9 +77627,9 @@ runfiles size=133
RELOC/fonts/opentype/public/concmath-otf/Concrete-Math.otf
RELOC/tex/latex/concmath-otf/concmath-otf.sty
catalogue-ctan /fonts/concmath-otf
-catalogue-license ofl lppl1.3
+catalogue-license ofl lppl1.3c
catalogue-topics font font-otf font-maths font-supp
-catalogue-version 0.63
+catalogue-version 0.64
name concprog
category Package
@@ -85530,6 +85570,33 @@ catalogue-license lppl
catalogue-topics typesetting
catalogue-version 0.1
+name cora-macs
+category Package
+revision 72655
+shortdesc Macros for continuous sets and neural networks in the context of cyber-physical systems
+relocated 1
+longdesc This LaTeX package has been designed to assist in the
+longdesc representation and manipulation of continuous sets, operations,
+longdesc neural networks, and color schemes tailored for use in the
+longdesc context of cyber-physical systems. It provides a comprehensive
+longdesc set of macros that streamline the process of documenting
+longdesc complex mathematical objects and operations.
+containersize 2796
+containerchecksum 97397ea4c6cd8d143c57d2cfc736d94ba268a25f2678c21b2dc6620c853d8762ca0c0dbfa1ec94d26c40b80e0b9bf682fec30498813d8c037bfc574b17af0a4a
+doccontainersize 182512
+doccontainerchecksum 679a18a7fcb7e90fff1587fb2916a61ee3b4c42bf9975b38c7ebfa634ad4a82c9a83de639af9639fe4b5ac786382b4a3f64314eec44ea55ad9f55f815f7922d2
+docfiles size=49
+ RELOC/doc/latex/cora-macs/LICENSE
+ RELOC/doc/latex/cora-macs/README.md details="Readme"
+ RELOC/doc/latex/cora-macs/cora-macs-doc.pdf details="Package documentation"
+ RELOC/doc/latex/cora-macs/cora-macs-doc.tex
+runfiles size=2
+ RELOC/tex/latex/cora-macs/cora-macs.sty
+catalogue-contact-home https://cora.in.tum.de/
+catalogue-ctan /macros/latex/contrib/cora-macs
+catalogue-license mit
+catalogue-topics physics maths
+
name cormorantgaramond
category Package
revision 71057
@@ -170686,17 +170753,17 @@ catalogue-version 1.13
name jsonparse
category Package
-revision 72453
+revision 72654
shortdesc Parse, store and access JSON data in LaTeX documents
relocated 1
longdesc This package provides an easy way to read in JSON data from
longdesc files or strings in LaTeX documents, parse the data and store
longdesc it in a user-defined token variable.
-containersize 5864
-containerchecksum 915c9124b6bcc1fd1e5ccf0356d5ceade4849db7f85bc61dbe3521b630510c752af3809903f9b6a9ca7dbbc076e782d7ce5286106d1ebe412672d14773f68a08
-doccontainersize 425028
-doccontainerchecksum 384a5a68881665e4df25bae71e89ffd37772e80cb723b9df30992523054ac7a38ca237335887f5f23a98e354f6413666dbf7d05d08537d126c6dab25417e3f15
-docfiles size=127
+containersize 5860
+containerchecksum 6159ac88d7f6d29f88920184dfa777b3e0e467f12c43360936b613231f7dc193861fa64033eac068406404b47caa8cf8f25ff32c7a6b108b689df112ae0680b6
+doccontainersize 425384
+doccontainerchecksum 8565d940885ced7a9f0a861b9fc5693e4c77b7ae5651cb1dee9b51143fcfd6ed7821b8b6aa118615c3af4421669b5410fc801cca70416a93ab66018bcd93f5aa
+docfiles size=128
RELOC/doc/latex/jsonparse/LICENCE
RELOC/doc/latex/jsonparse/README.md details="Readme"
RELOC/doc/latex/jsonparse/jason/jason.pdf
@@ -170711,7 +170778,7 @@ catalogue-contact-repository https://github.com/jasperhabicht/jsonparse
catalogue-ctan /macros/latex/contrib/jsonparse
catalogue-license lppl1.3c
catalogue-topics data-manip expl3
-catalogue-version 0.9.2
+catalogue-version 0.9.3
name jumplines
category Package
@@ -213344,23 +213411,23 @@ catalogue-version 0.5
name mathfixs
category Package
-revision 72638
+revision 72653
shortdesc Fix various layout issues in math mode
relocated 1
longdesc This is a LaTeX2e package to fix some odd behaviour in math
longdesc mode such as spacing around fractions and roots, math symbols
longdesc within bold text as well as capital Greek letters. It also adds
longdesc some related macros.
-containersize 3864
-containerchecksum 94cbb2c637e9cdfc9ccd71d84b70efff939d58fbd46817c6b0bb555410086881aa32e62906fb6be5cfaf1aacb6bfc99a1e067c04c3be97d17a0526a27d46bd65
-doccontainersize 357624
-doccontainerchecksum 563bba3e820e0567074b064b42619d6fad7d9381a5ad6033723c70ac1b363bce7df9b5fce67e7b95addb218cd4f420edac0aedf1f9997246917de4a4c2e5e78b
+containersize 3868
+containerchecksum 47a6268381b78d01e654dc928c1b0be3cb08e7adca94e5491ddc155ed16ef7cfd93f01dff3bbb586e935d3d7a8da5471c26718c846140125d02291a4e5a5856f
+doccontainersize 357944
+doccontainerchecksum dbce886bd7c13b3f6ab96a110298f84a4e080472a3366fb8a19f98b1e6e4b5c8fc62bd82817fc0a28824d8afd48e14f0187db054a1a601854c530239551ec734
docfiles size=96
RELOC/doc/latex/mathfixs/README.txt details="Readme"
RELOC/doc/latex/mathfixs/mafxsamp.tex
RELOC/doc/latex/mathfixs/mathfixs.pdf details="Package documentation"
-srccontainersize 17288
-srccontainerchecksum 8ec430ace08db687c102273d124258056509d308b177b345d57446dd96982ecaa2651b29fa39a04148421c10c3d659c0d58102117156a720ca7bdb464f237f3f
+srccontainersize 17296
+srccontainerchecksum 847718ee0616641e60037cb25c291a9a57b3c55add7399f2a5c120f7d4e3a64170989cf9086e00d4981a6d77feb40a9e1f5b4a05b0f0606bd3a42daa6d61a34a
srcfiles size=20
RELOC/source/latex/mathfixs/mathfixs.dtx
RELOC/source/latex/mathfixs/mathfixs.ins
@@ -213369,7 +213436,7 @@ runfiles size=4
catalogue-ctan /macros/latex/contrib/mathfixs
catalogue-license lppl1.3
catalogue-topics maths bugfix
-catalogue-version 1.1
+catalogue-version 1.11
name mathfont
category Package
@@ -233024,7 +233091,7 @@ catalogue-version 0.7
name naive-ebnf
category Package
-revision 72212
+revision 72652
shortdesc EBNF in plain text
relocated 1
longdesc With the help of this LaTeX package a context-free grammar
@@ -233033,17 +233100,17 @@ longdesc Extended Backus-Naur Form (EBNF) notation.
depend filecontentsdef
depend l3kernel
depend pgfopts
-containersize 2428
-containerchecksum 0255abee1153f247ae0548053622e4bb362ccc02cea9b80f1612f4d097fa7243b86977dbc5376a9ca41cb3354c358913db312c940332eae6b0535a642261f641
-doccontainersize 705792
-doccontainerchecksum 1c589ae959f700471b1b330949b5a5858ed7b732916cfc8321b3375c2a29f2f6e057990efa65d8ad1fa033db312c018ab79d17a6eea72f3e153282e680174f9f
-docfiles size=192
+containersize 2448
+containerchecksum f6db6ed77dae32af24648b836c121a46f24e4c60c7aaed6cb3774620be337979c54c5cb4825b0d775fc6fc01450a3345d132cee94f8f4fc4882f39c26b1e7a68
+doccontainersize 506872
+doccontainerchecksum b016db38503a2a2f3027d8f04c8bc770ab60b2d7c0619d2e6c6b4fdfdf873dfb4aea349e95a0981fa769e5548a50753dddb1ac7c217b2f72eb2a0600244d1a24
+docfiles size=148
RELOC/doc/latex/naive-ebnf/DEPENDS.txt
RELOC/doc/latex/naive-ebnf/LICENSE.txt
RELOC/doc/latex/naive-ebnf/README.md details="Readme"
RELOC/doc/latex/naive-ebnf/naive-ebnf.pdf details="Package documentation"
-srccontainersize 5896
-srccontainerchecksum 70a4d54050bf72ff93bb11673d11bc729ea5c93d71eb8764c08ae7495713333601c31f37be3b1a0e89512f292e77f3fa676c993f85d60d8224b689b083538174
+srccontainersize 5900
+srccontainerchecksum f963b574de1715a3876b93dc2a6ab7eb48e55efddacc7e936bac39cbf49af7b15e6a6868219d3da902269afa04e4270ee3c2e86bb25db24eba62b273caeac8fd
srcfiles size=6
RELOC/source/latex/naive-ebnf/naive-ebnf.dtx
RELOC/source/latex/naive-ebnf/naive-ebnf.ins
@@ -233053,7 +233120,7 @@ catalogue-contact-repository https://github.com/yegor256/naive-ebnf
catalogue-ctan /macros/latex/contrib/naive-ebnf
catalogue-license mit
catalogue-topics formal-spec
-catalogue-version 0.0.16
+catalogue-version 0.0.17
name nameauth
category Package
@@ -254628,25 +254695,25 @@ catalogue-version 0.1.0
name paracol
category Package
-revision 49560
+revision 72651
shortdesc Multiple columns with texts "in parallel"
relocated 1
longdesc The package provides yet another multi-column typesetting
longdesc mechanism by which you produce multi-column (e.g., bilingual)
longdesc document switching and sychronizing each corresponding part in
longdesc "parallel".
-containersize 18856
-containerchecksum ff7f60734dcf6d1db89a0b80747b31eb95bb28ac90ea5d83546feb08389fe890c6e3b4c44995b115d3e9d446823e81e27bf08337ae2d236a5a89c2c79258f741
-doccontainersize 2088752
-doccontainerchecksum a5711614d817193cf34cce405fc57f00dc17f3757b8c945dd174ba03453943c22e9c66b19a0f83444abd61f486e5df10246556e59d281f10f95452ad1931fb49
-docfiles size=544
+containersize 19428
+containerchecksum 9af1832a5af05e44ae72f1a5f4a3d9b82d54544a935ab402ea305f63382d6545ef14a8677114ac001b8b8b6ff69a5165cc9647dc1a56af1673e8639fdd432b43
+doccontainersize 2466756
+doccontainerchecksum cc1d4681ececf6e5ba6dd386180cea2cdc5d14866e3cd03bb085e3e7e013fe0875126fb369b3757b940859ddc6cea3760ef6a88075ee89e1218501418bf2e06b
+docfiles size=657
RELOC/doc/latex/paracol/README details="Readme"
- RELOC/doc/latex/paracol/paracol-man.pdf details="Package documentation"
+ RELOC/doc/latex/paracol/paracol-man.pdf details="User manual"
RELOC/doc/latex/paracol/paracol-man.tex
- RELOC/doc/latex/paracol/paracol.pdf
-srccontainersize 211364
-srccontainerchecksum cfa0bb83368dc27a7d71fb5e8772aa1c0ab69f597b2b00630fa1a95cf448684e6b59d46bd6dbe011953c51c0195b5cd0981a2df8d7d5fb951aecdee0a9ed0576
-srcfiles size=267
+ RELOC/doc/latex/paracol/paracol.pdf details="Complete package documentation"
+srccontainersize 211664
+srccontainerchecksum d2219958d964c781e732083ee4f2e0f5ab398d2f29d9e09fd6c4d9e2a97fad8e784e59dec85bb4d53f96276a6d6dd27429eadc2c017b9b6c1bd2206b8306de15
+srcfiles size=268
RELOC/source/latex/paracol/bgpaint.dtx
RELOC/source/latex/paracol/impl.dtx
RELOC/source/latex/paracol/man.dtx
@@ -254656,13 +254723,15 @@ srcfiles size=267
RELOC/source/latex/paracol/probs.dtx
RELOC/source/latex/paracol/pwfnote.dtx
RELOC/source/latex/paracol/ref.dtx
-runfiles size=26
+runfiles size=53
+ RELOC/tex/latex/paracol/paracol-2018-12-31.sty
RELOC/tex/latex/paracol/paracol.sty
catalogue-also parallel parcolumns
+catalogue-contact-repository https://codeberg.org/mgkurtz/paracol
catalogue-ctan /macros/latex/contrib/paracol
catalogue-license lppl
catalogue-topics parallel linguistic
-catalogue-version 1.35
+catalogue-version 1.36
name parades
category Package
@@ -257569,26 +257638,26 @@ binfiles arch=x86_64-solaris size=1
name pdflatexpicscale
category Package
-revision 46617
+revision 72650
shortdesc Support software for downscaling graphics to be included by pdfLaTeX
longdesc The package provides a script to scale pictures down to a
longdesc target resolution before creating a PDF document with pdfLaTeX.
depend pdflatexpicscale.ARCH
-containersize 3124
-containerchecksum d36dcc4d70156d52bcaf668d620c8eee5db8914473f943412ea5ad5c8bde673a6715fd5a69d13e502a5d4fe0b1e0e55099432c4e0e5e02bd5f6155ca5804c3f3
-doccontainersize 86376
-doccontainerchecksum 64440f794e88c08bfeeac75d6d4174eccb800125c8d57e3b0be3ac6883c04790d422cb05cbed6be7335ab2e4d2e6bb2c8c0137c04160db126674960ddb7603e1
-docfiles size=35
+containersize 4992
+containerchecksum 28ad8e727fe96c9da016aa121cc8da857019ade17929357b95c1b7d86295099d108caa12f0b38fcf645ee6235a01fbeeb873f535074587d3a2ea22a6b79246e0
+doccontainersize 93316
+doccontainerchecksum 7b55764bb7864c365fba5b6a2fa3f9d0846048417fedc2b1b72a1026dabd0b6fab831aa5df8621f9cfaf8927e4c1e04dd2d705061a9db7a317aa48fcad86eda4
+docfiles size=38
texmf-dist/doc/support/pdflatexpicscale/README details="Readme"
texmf-dist/doc/support/pdflatexpicscale/pdflatexpicscale.pdf details="Package documentation"
texmf-dist/doc/support/pdflatexpicscale/pdflatexpicscale.tex
texmf-dist/doc/support/pdflatexpicscale/testprinter.ps
-runfiles size=2
+runfiles size=4
texmf-dist/scripts/pdflatexpicscale/pdflatexpicscale.pl
catalogue-ctan /support/pdflatexpicscale
catalogue-license lppl
catalogue-topics graphics-prep
-catalogue-version 0.32
+catalogue-version 0.50
name pdflatexpicscale.aarch64-linux
category Package
@@ -299426,7 +299495,7 @@ catalogue-version 1.6a
name simpleicons
category Package
-revision 72579
+revision 72659
shortdesc Simple Icons for LaTeX
relocated 1
longdesc Similar to FontAwesome icons being provided on LaTeX by the
@@ -299434,16 +299503,16 @@ longdesc fontawesome package, this package aims to do the same with
longdesc Simple Icons. For reference, visit their website:
longdesc https://simpleicons.org/.
execute addMap simpleicons.map
-containersize 3509704
-containerchecksum 188dc3a7e9d6e935a5f39404315701a1236b1322c5aa80fc1c857de6efa75e68657fad81b523f9091f18156a29ed2b447e47104adbdc8816d58eff9336e2bae5
-doccontainersize 2554068
-doccontainerchecksum 48f4badfbb4e146590e9f8322a009e9ccebc976cd16047799e1dfd6e907e439e177ec717c305071805f5b38c6083f8c267d07123ccbc456156fd059d5951525f
+containersize 3507812
+containerchecksum 1c8dcff7e15d5132e3a240b01208d3e8251dddd7477a65332418e36097d1c9b8fb7f3b06e51f8048b5c3f21acfb4c6426324ad73b0e7f8bafbf12cec07692ede
+doccontainersize 2552772
+doccontainerchecksum 7c3f7f89b3f1154345a941391e6fa7fcdee336134e7acd2fb26275538c812eb8eea926a5ebcd1a3019dcc7962955b49ac9bf3c9dacd3b0be7319956e026a2a7d
docfiles size=668
RELOC/doc/fonts/simpleicons/README.md details="Readme"
RELOC/doc/fonts/simpleicons/bindings.tex
RELOC/doc/fonts/simpleicons/simpleicons.pdf details="Package documentation"
RELOC/doc/fonts/simpleicons/simpleicons.tex
-runfiles size=1348
+runfiles size=1347
RELOC/fonts/enc/dvips/simpleicons/simpleiconseight.enc
RELOC/fonts/enc/dvips/simpleicons/simpleiconsfive.enc
RELOC/fonts/enc/dvips/simpleicons/simpleiconsfour.enc
@@ -299494,7 +299563,7 @@ catalogue-contact-repository https://github.com/ineshbose/simple-icons-latex
catalogue-ctan /fonts/simpleicons
catalogue-license cc-by-1
catalogue-topics font font-symbol font-supp-symbol font-otf font-type1
-catalogue-version 13.14.0
+catalogue-version 13.14.1
name simpleinvoice
category Package
@@ -317903,7 +317972,7 @@ binfiles arch=x86_64-solaris size=1
name tex4ht
category Package
-revision 72589
+revision 72661
shortdesc Convert (La)TeX to HTML/XML
longdesc A converter from TeX and LaTeX to SGML-based formats such as
longdesc (X)HTML, MathML, OpenDocument, and Docbook, providing a
@@ -317924,10 +317993,10 @@ longdesc files from them is nontrivial, and generally done with the
longdesc Makefile in development, from which the TeX4ht package in TeX
longdesc Live is updated.
depend tex4ht.ARCH
-containersize 1137832
-containerchecksum 958339a409d7b61f9636a77511b2ac5f94ed0c75346c044649207bee9ccaf57b67f8b66d8fb533284d2463e872f4478f286b93f53b42a70d839c3421c607d48a
-doccontainersize 136388
-doccontainerchecksum da8c77f7b86d7e1c19b07e0093db2a07a8d85c1981e5e08fa2fc2ea090259ca2c50b19ad43ccbf8cb7718a82d213a53f2656f5023a23f7d6e792234bcc37efc3
+containersize 1137804
+containerchecksum a8b20c005122e9a27a26f2c2905753b39e1681c0e3f444bf14ca7808f71511d752e8cdb451c5a635e058b2e20baa983e6f297cd7941e1e1befc4f1fc45879363
+doccontainersize 136384
+doccontainerchecksum 12b22da55dbd91c6b3b512db0875d774d00bbfab40b9c70bbd0821dc21255ea8238cea9aa7be775c9400a2c5815feb52405e533a32e49079473b211b45603f86
docfiles size=260
texmf-dist/doc/generic/tex4ht/Makefile
texmf-dist/doc/generic/tex4ht/README details="Readme"
@@ -317999,8 +318068,8 @@ docfiles size=260
texmf-dist/doc/generic/tex4ht/mn56.html
texmf-dist/doc/generic/tex4ht/mn5x.png
texmf-dist/doc/generic/tex4ht/mn6x.png
-srccontainersize 1499768
-srccontainerchecksum 6b24fe399b7e90f824c86807a2e0bf9ac9c23c0c40e27e09ae88e9ad09a12295fe906505497875578771caf85d3a2395f6780128489ea2826424e36483531b34
+srccontainersize 1504660
+srccontainerchecksum 9138dfa69ef36db25b55ba22e2f930546352da9d7ae2c78ae2d433e5019e3b4e66fadba433d61d1b91b9091f0ed16c7e02b39862d16255fa76bb56bb4539da89
srcfiles size=4662
texmf-dist/source/generic/tex4ht/ChangeLog
texmf-dist/source/generic/tex4ht/Makefile
@@ -330443,7 +330512,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 72648
+revision 72662
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.
@@ -330451,11 +330520,11 @@ depend texlive-scripts.ARCH
depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
-containersize 114416
-containerchecksum a78cdb827dddbf7307f1bc53b9e11688aed766c9adaf9aa841dd0a83d2ab75bfdcc1e1e75d26933c8b096da68bad598e3d74d9d033a6d3766a21b0ef25f5740c
-doccontainersize 438524
-doccontainerchecksum c94ff78aba2b1eb8493e7785ee54ecc3d898486b6585d64a9354d0fe7bb160d1632294b22841aa546e5b66755a5488e90942572d40d3d9f959ae2c2d18129bcb
-docfiles size=569
+containersize 114404
+containerchecksum 513c20a9fd0789a7067cd945c0ecce788fa96c117725a790c332ed0119414945c49059d086e8668b5191205269371af33804f360ba818317e2ad8db63e1b674e
+doccontainersize 438644
+doccontainerchecksum 639bad6aa9e6992479eaaa85fe8c2310eceb45de49d97b2d7e2f0b686eba00cb8644c5bc2f78b4599a270ffbaab075984c1de8f834a84009470720a1265d67a8
+docfiles size=570
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
texmf-dist/doc/man/man1/fmtutil-sys.man1.pdf
@@ -370222,31 +370291,31 @@ catalogue-version 1.26
name xcharter-math
category Package
-revision 71883
+revision 72658
shortdesc XCharter-based OpenType Math font for LuaTeX and XeTeX
relocated 1
longdesc This package provides an Unicode Math font XCharter-Math.otf
longdesc meant to be used together with XCharter Opentype Text fonts
longdesc (extension of Bitstream Charter) in LuaLaTeX or XeLaTeX
longdesc documents.
-containersize 262188
-containerchecksum 2fe3eb2ab1cc966b1c1fe0c053666ed4e1d34f6c0d184434779ef5e1a13f42c4ee6938021522bcffa614766fade5bfc899d8467a468d9bbe0cbe7274f972054a
-doccontainersize 1951100
-doccontainerchecksum b9b171f494521197091baac156fcbb5ffdcd1e2dc4fb6c1fa40a4f077315f8e1cb40805ccd62a9d9ad5eb566dc8ff5901c20a9b4fd3458481108456f6dde9976
-docfiles size=511
+containersize 264020
+containerchecksum ba50fd386cb1ce831533901a6590e915b7ea41afb304b8b957c85b71745cb342270dad353d4e13b65d166cfa1943db6c3f516a274e28c7a5492d9b6dff33d93f
+doccontainersize 1951916
+doccontainerchecksum 25c9f5d19696441b11f267cef388f30079bae6b4be7024db6d13303b162a3ad772ff29706f2b443b82afb4ad1d26147913d0fde451ce856c733c0f0a3ae3a8b9
+docfiles size=510
RELOC/doc/fonts/xcharter-math/README.md details="Readme"
RELOC/doc/fonts/xcharter-math/XCharter-Math.ltx
RELOC/doc/fonts/xcharter-math/XCharter-Math.pdf details="Package documentation"
RELOC/doc/fonts/xcharter-math/unimath-xcharter.ltx
RELOC/doc/fonts/xcharter-math/unimath-xcharter.pdf details="List of glyphs"
-runfiles size=127
+runfiles size=128
RELOC/fonts/opentype/public/xcharter-math/XCharter-Math-Bold.otf
RELOC/fonts/opentype/public/xcharter-math/XCharter-Math.otf
RELOC/tex/latex/xcharter-math/xcharter-otf.sty
catalogue-ctan /fonts/xcharter-math
catalogue-license ofl lppl1.3c
catalogue-topics font font-otf font-maths font-supp-maths
-catalogue-version 0.63
+catalogue-version 0.64
name xcite
category Package
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 93e393a6e3..f8e23e2e8b 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-38e026baf841756e49a6f4df015462b8 texlive.tlpdb
+61f9d9cd92feb4c789e4a15e4358b12e texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index 82ac998b90..709a92d023 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-45f854e8ea41514088f62c200fa513735b0239516373704989321bb083d8bfcc66223c5a4b51f01d82ed8c51ff70e25e76feaa7af043b558a113b6f3134a7718 texlive.tlpdb
+e8b1dc0926a7bcd99121b93a81b71465a5e12e2e6c31d99657ffd95ad2765b7b3a2c58c4611c5d38fa8541b739997bbf83915ccd596fbdcd6012ba4ce24d1380 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index aac6dfa4e0..bf06a7f842 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,11 +1,11 @@
-----BEGIN PGP SIGNATURE-----
-iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmca3K0ACgkQTOGHfhlD
-jHAwYQf/YUoEVz5juiHaTff0x5Uc0Vuly8njq2tmZhlUXjc7MNxiMm1S21tFaH5T
-yDnPEzFkrQDIUvUCgqKA8jFToPHnEOoq0hD2IguijHuBzEptgRrR8nsB/+QWgfT3
-Qs51Gg5cVfM8tkfGejT2KOFy3wCPkTvKS3aDCOAnOmbX83lKv08BYf6U4CCBCg5d
-5RUKK6EpghJZcmQUaup4U8vN1g9abonlbvE/6m4mZTBivu4J39iaw871VibDlaPp
-Z2Qxm2liytnksUBYrt/zHcrZfnRl43MeW8ywS7okNpPkXEH+xBHLQyj7Bat2pkk2
-p1oUCnMvfXp+N6mZA3NKdidAqMADPA==
-=CBsg
+iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmccLscACgkQTOGHfhlD
+jHDTQAf/Xw7lxznEvuGMsl4VpLlkMiru+a3Bd1xuhoYFZ6/n3MntIh62Qv/vGA5U
+83J8+dy+Sz+lcg8CPiWHmU7Oh/CONhUjiPP4mBQONvlT+LD9uwaKRU8D1Cn3/8VR
+KUeJUA60BtnNncqUhcf5rKZFkq22HN2YOxDak5jIXB5mxX/vVFC57aj0pabU7hvO
+GvT84v/08pMQoEqELkmjzvhZlepnb2K0ShPk8hcbxPZXay6pO3nmnWMT25cyONEP
+dB2DP1Rn6lTfZ1wl9QX9Oqrfu1ydzW3NDbjiM4Q2PH/ZNfDjrRZxSg/wq1IX2C87
+LqAmN9qCHcpqvHooMvV+HyrQLGUx3w==
+=zFZU
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 5abd908b12..99dcbef211 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 afcb90e1f4..48eb9cd147 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
irony.dante.de
# The year-month-day-hour-minute of this site's material:
-2024-10-25-02-02
+2024-10-26-02-02