summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FILES.byname977
-rw-r--r--FILES.byname.gzbin2454178 -> 2454445 bytes
-rw-r--r--FILES.last07days724
-rw-r--r--fonts/alegreya/README2
-rw-r--r--fonts/alegreya/doc/alegreya-samples.pdfbin905406 -> 1103219 bytes
-rw-r--r--fonts/alegreya/doc/alegreya-samples.tex18
-rw-r--r--fonts/alegreya/latex/Alegreya.sty3
-rw-r--r--fonts/alegreya/latex/AlegreyaSans.sty3
-rw-r--r--fonts/atkinson/README2
-rw-r--r--fonts/atkinson/doc/atkinson-samples.pdfbin20149 -> 26640 bytes
-rw-r--r--fonts/atkinson/latex/atkinson.sty3
-rw-r--r--macros/jptex/latex/jsclasses/LICENSE2
-rw-r--r--macros/jptex/latex/jsclasses/README.md2
-rw-r--r--macros/jptex/latex/jsclasses/jsclasses.dtx33
-rw-r--r--macros/jptex/latex/jsclasses/jsclasses.pdfbin412473 -> 426004 bytes
-rw-r--r--macros/jptex/latex/jsclasses/jslogo.dtx5
-rw-r--r--macros/jptex/latex/jsclasses/jslogo.pdfbin76779 -> 78734 bytes
-rw-r--r--macros/jptex/latex/jsclasses/jsverb.dtx3
-rw-r--r--macros/jptex/latex/jsclasses/jsverb.pdfbin75649 -> 77479 bytes
-rw-r--r--macros/jptex/latex/jsclasses/okumacro.dtx3
-rw-r--r--macros/jptex/latex/jsclasses/okumacro.pdfbin175557 -> 180851 bytes
-rw-r--r--macros/jptex/latex/jsclasses/okuverb.dtx3
-rw-r--r--macros/jptex/latex/jsclasses/okuverb.pdfbin59902 -> 61261 bytes
-rw-r--r--macros/latex/contrib/asmeconf/README.md9
-rw-r--r--macros/latex/contrib/asmeconf/asmeconf-template.pdfbin271758 -> 599902 bytes
-rw-r--r--macros/latex/contrib/asmeconf/asmeconf-template.tex22
-rw-r--r--macros/latex/contrib/asmeconf/asmeconf.bst19
-rw-r--r--macros/latex/contrib/asmeconf/asmeconf.cls20
-rw-r--r--macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdfbin2930107 -> 2930072 bytes
-rw-r--r--macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex10
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md2
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty171
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdfbin181132 -> 177229 bytes
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex48
-rw-r--r--macros/latex/contrib/beamer/CHANGELOG.md13
-rw-r--r--macros/latex/contrib/beamer/base/beamer.cls2
-rw-r--r--macros/latex/contrib/beamer/base/beamerarticle.sty2
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseboxes.sty2
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseframesize.sty21
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasenavigation.sty18
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty1
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty10
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty2
-rw-r--r--macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdfbin343911 -> 343911 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdfbin547609 -> 547609 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdfbin441714 -> 441714 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-introduction.tex2
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-localstructure.tex12
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-overlays.tex6
-rw-r--r--macros/latex/contrib/beamer/doc/beameruserguide.pdfbin2251679 -> 2219543 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beameruserguide.tex4
-rw-r--r--macros/latex/contrib/csquotes/csq-compat.def2
-rw-r--r--macros/latex/contrib/csquotes/csquotes.def2
-rw-r--r--macros/latex/contrib/csquotes/csquotes.pdfbin304739 -> 304934 bytes
-rw-r--r--macros/latex/contrib/csquotes/csquotes.sty12
-rw-r--r--macros/latex/contrib/csquotes/csquotes.tex8
-rw-r--r--macros/latex/contrib/fixdif/fixdif-zh-cn.pdfbin163015 -> 163097 bytes
-rw-r--r--macros/latex/contrib/fixdif/fixdif-zh-cn.tex8
-rw-r--r--macros/latex/contrib/fixdif/fixdif.dtx8
-rw-r--r--macros/latex/contrib/fixdif/fixdif.pdfbin97323 -> 97323 bytes
-rw-r--r--macros/latex/contrib/stex/doc/Makefile2
-rw-r--r--macros/latex/contrib/stex/doc/img/vsc1.pngbin0 -> 25993 bytes
-rw-r--r--macros/latex/contrib/stex/doc/img/vsc2.pngbin0 -> 54764 bytes
-rw-r--r--macros/latex/contrib/stex/doc/img/vsc3.pngbin0 -> 49418 bytes
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-document-structure.tex26
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-features.tex12
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-hwexam.tex60
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-idesetup.tex61
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-mathhub.tex2
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-mathhubsetup.tex25
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-notesslides.tex (renamed from macros/latex/contrib/stex/doc/packages/stex-slides.tex)81
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-problem.tex97
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-proofs.tex425
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-references.tex90
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-setup.tex34
-rw-r--r--macros/latex/contrib/stex/doc/packages/stex-symbols.tex8
-rw-r--r--macros/latex/contrib/stex/doc/stex-doc.pdfbin1645539 -> 1802605 bytes
-rw-r--r--macros/latex/contrib/stex/doc/stex-doc.tex9
-rw-r--r--macros/latex/contrib/stex/doc/stex-docheader.tex101
-rw-r--r--macros/latex/contrib/stex/doc/stex-ide.pdfbin0 -> 378968 bytes
-rw-r--r--macros/latex/contrib/stex/doc/stex-ide.tex155
-rw-r--r--macros/latex/contrib/stex/doc/stex-manual.pdfbin983933 -> 1121031 bytes
-rw-r--r--macros/latex/contrib/stex/doc/stex-manual.tex154
-rw-r--r--macros/latex/contrib/stex/doc/stex-tutorial.tex2
-rw-r--r--macros/latex/contrib/stex/source/extensions/document-structure.dtx20
-rw-r--r--macros/latex/contrib/stex/source/extensions/hwexam.dtx51
-rw-r--r--macros/latex/contrib/stex/source/extensions/notesslides.dtx141
-rw-r--r--macros/latex/contrib/stex/source/extensions/problem.dtx167
-rw-r--r--macros/latex/contrib/stex/source/extensions/tikzinput.dtx19
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-basics.dtx29
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-features.dtx66
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-inheritance.dtx11
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-mathhub.dtx19
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-metatheory.dtx2
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-modules.dtx16
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-others.dtx4
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-proofs.dtx578
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-references.dtx573
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-statements.dtx6
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-symbols.dtx209
-rw-r--r--macros/latex/contrib/stex/source/stex/stex-terms.dtx182
-rw-r--r--macros/latex/contrib/stex/tex/etc/beamernotesthemesTeX.sty14
-rw-r--r--macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty94
-rw-r--r--macros/latex/contrib/stex/tex/etc/stex-backend-pdflatex.cfg2
-rw-r--r--macros/latex/contrib/stex/tex/etc/stex-backend-rustex.cfg10
-rw-r--r--macros/latex/contrib/stex/tex/etc/stex-backend-tex4ht.cfg13
-rw-r--r--macros/latex/contrib/stex/tex/etc/stexthm.sty69
-rw-r--r--macros/latex/contrib/stex/tex/ldf/problem-ngerman.ldf2
-rw-r--r--macros/luatex/latex/luatruthtable/README.txt9
-rw-r--r--macros/luatex/latex/luatruthtable/luatruthtable.bib20
-rw-r--r--macros/luatex/latex/luatruthtable/luatruthtable.pdfbin0 -> 119179 bytes
-rw-r--r--macros/luatex/latex/luatruthtable/luatruthtable.sty286
-rw-r--r--macros/luatex/latex/luatruthtable/luatruthtable.tex358
-rw-r--r--macros/luatex/latex/piton/README.md26
-rw-r--r--macros/luatex/latex/piton/piton-french.pdfbin0 -> 151124 bytes
-rw-r--r--macros/luatex/latex/piton/piton-french.tex361
-rw-r--r--macros/luatex/latex/piton/piton.dtx810
-rw-r--r--macros/luatex/latex/piton/piton.ins47
-rw-r--r--macros/luatex/latex/piton/piton.lua473
-rw-r--r--macros/luatex/latex/piton/piton.pdfbin0 -> 223287 bytes
-rw-r--r--support/TeX4ht/source/ChangeLog6
-rw-r--r--support/TeX4ht/source/mktex4ht-cnf.tex3
-rw-r--r--support/TeX4ht/source/tex4ht-4ht.tex24
-rw-r--r--support/TeX4ht/source/tex4ht-mathjax.tex4
-rw-r--r--systems/mac/mactex/ExtrasFolder.pdfbin38089 -> 38091 bytes
-rw-r--r--systems/mac/mactex/Licenses.txt4
-rw-r--r--systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm9
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl3
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb256
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc14
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2406196 -> 2405816 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/pr.ini8
-rw-r--r--systems/win32/miktex/tm/packages/pr.ini8
-rw-r--r--timestamp2
136 files changed, 6224 insertions, 2371 deletions
diff --git a/FILES.byname b/FILES.byname
index a6e219705e..5570d26a93 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -5283,7 +5283,7 @@
1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
-2022/09/13 | 63798 | FILES.last07days
+2022/09/14 | 71698 | 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
@@ -5751,8 +5751,8 @@
2003/07/10 | 3192 | fonts/ae/vf/laessb8.vf
2003/07/10 | 3164 | fonts/ae/vf/laessi8.vf
2007/07/04 | 236485 | fonts/ae.zip
-2019/10/09 | 905406 | fonts/alegreya/doc/alegreya-samples.pdf
-2019/10/09 | 2196 | fonts/alegreya/doc/alegreya-samples.tex
+2019/10/15 | 1103219 | fonts/alegreya/doc/alegreya-samples.pdf
+2019/10/12 | 2448 | fonts/alegreya/doc/alegreya-samples.tex
2019/10/09 | 4391 | fonts/alegreya/doc/OFL.txt
2019/10/08 | 3436 | fonts/alegreya/enc/algr_226fyf.enc
2019/10/08 | 2948 | fonts/alegreya/enc/algr_2vgxay.enc
@@ -5831,8 +5831,8 @@
2019/10/08 | 3363 | fonts/alegreya/enc/algr_zgz46n.enc
2019/10/08 | 2960 | fonts/alegreya/enc/algr_zsorhr.enc
2019/10/08 | 3345 | fonts/alegreya/enc/algr_zt4bhv.enc
-2019/10/12 | 11067 | fonts/alegreya/latex/AlegreyaSans.sty
-2019/10/12 | 8822 | fonts/alegreya/latex/Alegreya.sty
+2022/09/14 | 11033 | fonts/alegreya/latex/AlegreyaSans.sty
+2022/09/14 | 8788 | fonts/alegreya/latex/Alegreya.sty
2019/10/08 | 7139 | fonts/alegreya/latex/LGRAlegreya-Inf.fd
2019/10/08 | 7579 | fonts/alegreya/latex/LGRAlegreya-LF.fd
2019/10/08 | 7724 | fonts/alegreya/latex/LGRAlegreya-OsF.fd
@@ -5938,7 +5938,7 @@
2019/10/08 | 351644 | fonts/alegreya/opentype/AlegreyaSC-MediumItalic.otf
2019/10/08 | 341888 | fonts/alegreya/opentype/AlegreyaSC-Medium.otf
2019/10/08 | 339672 | fonts/alegreya/opentype/AlegreyaSC-Regular.otf
-2019/10/12 | 2818 | fonts/alegreya/README
+2022/09/14 | 2818 | fonts/alegreya/README
2019/10/08 | 1704 | fonts/alegreya/tfm/Alegreya-Black-inf-lgr--base.tfm
2019/10/08 | 1704 | fonts/alegreya/tfm/Alegreya-Black-inf-lgr.tfm
2019/10/08 | 1852 | fonts/alegreya/tfm/Alegreya-Black-inf-ly1--base.tfm
@@ -10307,7 +10307,7 @@
2019/10/08 | 1632 | fonts/alegreya/vf/AlegreyaSC-Regular-tosf-sc-lgr.vf
2019/10/08 | 1736 | fonts/alegreya/vf/AlegreyaSC-Regular-tosf-sc-ly1.vf
2019/10/08 | 1776 | fonts/alegreya/vf/AlegreyaSC-Regular-tosf-sc-t1.vf
-2019/10/12 | 37970453 | fonts/alegreya.zip
+2022/09/14 | 38168092 | fonts/alegreya.zip
2021/01/16 | 25187 | fonts/alfaslabone/doc/alfaslabone-samples.pdf
2021/01/16 | 423 | fonts/alfaslabone/doc/alfaslabone-samples.tex
2021/01/16 | 4430 | fonts/alfaslabone/doc/LICENSE.TXT
@@ -13162,7 +13162,7 @@
2002/08/09 | 4468 | fonts/astro/astrosym.xtr
2005/05/20 | 23181 | fonts/astro.zip
2021/02/05 | 56016 | fonts/atkinson/doc/Atkinson-Hyperlegible-Font-License-2020-1104.pdf
-2021/02/05 | 20149 | fonts/atkinson/doc/atkinson-samples.pdf
+2021/02/06 | 26640 | fonts/atkinson/doc/atkinson-samples.pdf
2021/02/05 | 451 | fonts/atkinson/doc/atkinson-samples.tex
2021/02/05 | 670623 | fonts/atkinson/doc/BIA_AtkinsonHyerlegible-Specimen_200210.pdf
2021/02/05 | 2890 | fonts/atkinson/enc/atksn_2covbz.enc
@@ -13175,7 +13175,7 @@
2021/02/05 | 2763 | fonts/atkinson/enc/atksn_w3wxei.enc
2021/02/05 | 2883 | fonts/atkinson/enc/atksn_wy3za2.enc
2021/02/05 | 3176 | fonts/atkinson/enc/atksn_ycy2xh.enc
-2021/02/05 | 3949 | fonts/atkinson/latex/atkinson.sty
+2022/09/14 | 3915 | fonts/atkinson/latex/atkinson.sty
2021/02/05 | 2024 | fonts/atkinson/latex/LY1atkinsn-LF.fd
2021/02/05 | 2057 | fonts/atkinson/latex/LY1atkinsn-Sup.fd
2021/02/05 | 2057 | fonts/atkinson/latex/LY1atkinsn-TLF.fd
@@ -13192,7 +13192,7 @@
2021/02/05 | 37304 | fonts/atkinson/opentype/Atkinson-Hyperlegible-BoldItalic-102.otf
2021/02/05 | 35656 | fonts/atkinson/opentype/Atkinson-Hyperlegible-Italic-102.otf
2021/02/05 | 34436 | fonts/atkinson/opentype/Atkinson-Hyperlegible-Regular-102.otf
-2021/02/05 | 2081 | fonts/atkinson/README
+2022/09/14 | 2081 | fonts/atkinson/README
2021/02/05 | 2000 | fonts/atkinson/tfm/atkinsn-BoldItalic-lf-ly1--base.tfm
2021/02/05 | 148 | fonts/atkinson/tfm/atkinsn-BoldItalic-lf-ly1--lcdfj.tfm
2021/02/05 | 12228 | fonts/atkinson/tfm/atkinsn-BoldItalic-lf-ly1.tfm
@@ -13369,7 +13369,7 @@
2021/02/05 | 804 | fonts/atkinson/vf/atkinsn-Regular-tlf-ot1.vf
2021/02/05 | 1704 | fonts/atkinson/vf/atkinsn-Regular-tlf-t1.vf
2021/02/05 | 504 | fonts/atkinson/vf/atkinsn-Regular-tlf-ts1.vf
-2021/02/05 | 1222867 | fonts/atkinson.zip
+2022/09/14 | 1226339 | fonts/atkinson.zip
2000/01/20 | 10806 | fonts/augie/afm/augie___.afm
2000/10/19 | 969 | fonts/augie/doc/augie.txt
2000/06/18 | 72 | fonts/augie/dvips/augie.map
@@ -188691,14 +188691,14 @@
2022/08/19 | 580030 | install/biblio/citation-style-language.tds.zip
2013/11/06 | 795801 | install/fonts/accanthis.tds.zip
2009/05/23 | 246025 | install/fonts/ae.tds.zip
-2019/10/12 | 38525845 | install/fonts/alegreya.tds.zip
+2022/09/14 | 38525814 | install/fonts/alegreya.tds.zip
2020/11/08 | 1388343 | install/fonts/algolrevived.tds.zip
2020/08/03 | 442395 | install/fonts/almendra.tds.zip
2013/01/25 | 5899080 | install/fonts/amsfonts.tds.zip
2022/02/17 | 4160084 | install/fonts/andika.tds.zip
2017/01/05 | 3301394 | install/fonts/arimo.tds.zip
2020/12/21 | 232406 | install/fonts/arvo.tds.zip
-2021/02/05 | 1241873 | install/fonts/atkinson.tds.zip
+2022/09/14 | 1245345 | install/fonts/atkinson.tds.zip
2020/06/07 | 2740859 | install/fonts/baskervillef.tds.zip
2012/04/28 | 198542 | install/fonts/bickham.tds.zip
2020/08/02 | 269387 | install/fonts/bitter.tds.zip
@@ -188841,6 +188841,7 @@
2014/08/28 | 1312858 | install/fonts/urw/classico.tds.zip
2016/01/09 | 254062 | install/fonts/verdana.tds.zip
2022/03/11 | 757127 | install/fonts/vntex-nonfree.tds.zip
+2022/09/14 | 708693835 | install/fonts.zip
2019/12/25 | 20258750 | install/graphics/ketcindy.tds.zip
2021/04/17 | 1248635 | install/graphics/mahjong.tds.zip
2012/12/03 | 1483078 | install/graphics/mfpic.tds.zip
@@ -188890,7 +188891,7 @@
2021/09/15 | 585368 | install/macros/generic/unicode-data.tds.zip
2022/06/11 | 4242531 | install/macros/generic/xint.tds.zip
2022/07/13 | 10946453 | install/macros/jptex/latex/jlreq.tds.zip
-2021/07/01 | 946668 | install/macros/jptex/latex/jsclasses.tds.zip
+2022/09/14 | 970564 | install/macros/jptex/latex/jsclasses.tds.zip
2021/12/11 | 1827908 | install/macros/jptex/latex/platex.tds.zip
2021/05/31 | 907477 | install/macros/jptex/latex/uplatex.tds.zip
2016/05/15 | 295442 | install/macros/latex/contrib/abc.tds.zip
@@ -188916,7 +188917,7 @@
2019/12/17 | 290839 | install/macros/latex/contrib/auxhook.tds.zip
2014/10/14 | 197718 | install/macros/latex/contrib/avremu.tds.zip
2015/11/14 | 148284 | install/macros/latex/contrib/bankstatement.tds.zip
-2022/05/17 | 3556821 | install/macros/latex/contrib/beamer.tds.zip
+2022/09/14 | 3528768 | install/macros/latex/contrib/beamer.tds.zip
2020/08/26 | 776175 | install/macros/latex/contrib/beilstein.tds.zip
2009/09/08 | 279114 | install/macros/latex/contrib/bez123.tds.zip
2019/01/28 | 1087181 | install/macros/latex/contrib/bezos.tds.zip
@@ -188954,7 +188955,7 @@
2008/05/22 | 339932 | install/macros/latex/contrib/conferences/active-conf.tds.zip
2008/05/21 | 226177 | install/macros/latex/contrib/conferences/icsv.tds.zip
2009/06/06 | 535939 | install/macros/latex/contrib/cpssp.tds.zip
-2022/09/09 | 348737 | install/macros/latex/contrib/csquotes.tds.zip
+2022/09/14 | 349032 | install/macros/latex/contrib/csquotes.tds.zip
2022/06/21 | 2119198 | install/macros/latex/contrib/csvsimple.tds.zip
2014/05/27 | 124630 | install/macros/latex/contrib/cv4tw.tds.zip
2013/03/29 | 241651 | install/macros/latex/contrib/dashrule.tds.zip
@@ -203184,25 +203185,25 @@
2019/04/01 | 3094 | macros/jptex/latex/jlreq/README-template.html
2022/01/07 | 3315 | macros/jptex/latex/jlreq/README-template.tex
2022/07/13 | 603041 | macros/jptex/latex/jlreq.zip
-2021/07/01 | 197349 | macros/jptex/latex/jsclasses/jsclasses.dtx
-2021/07/01 | 561 | macros/jptex/latex/jsclasses/jsclasses.ins
-2021/07/01 | 412473 | macros/jptex/latex/jsclasses/jsclasses.pdf
-2021/07/01 | 11305 | macros/jptex/latex/jsclasses/jslogo.dtx
-2021/07/01 | 233 | macros/jptex/latex/jsclasses/jslogo.ins
-2021/07/01 | 76779 | macros/jptex/latex/jsclasses/jslogo.pdf
-2021/07/01 | 8623 | macros/jptex/latex/jsclasses/jsverb.dtx
-2021/07/01 | 232 | macros/jptex/latex/jsclasses/jsverb.ins
-2021/07/01 | 75649 | macros/jptex/latex/jsclasses/jsverb.pdf
-2021/07/01 | 1392 | macros/jptex/latex/jsclasses/LICENSE
-2021/07/01 | 2811 | macros/jptex/latex/jsclasses/Makefile
-2021/07/01 | 40908 | macros/jptex/latex/jsclasses/okumacro.dtx
-2021/07/01 | 240 | macros/jptex/latex/jsclasses/okumacro.ins
-2021/07/01 | 175557 | macros/jptex/latex/jsclasses/okumacro.pdf
-2021/07/01 | 6087 | macros/jptex/latex/jsclasses/okuverb.dtx
-2021/07/01 | 236 | macros/jptex/latex/jsclasses/okuverb.ins
-2021/07/01 | 59902 | macros/jptex/latex/jsclasses/okuverb.pdf
-2021/07/01 | 1432 | macros/jptex/latex/jsclasses/README.md
-2021/07/01 | 860614 | macros/jptex/latex/jsclasses.zip
+2022/09/14 | 198551 | macros/jptex/latex/jsclasses/jsclasses.dtx
+2022/09/14 | 561 | macros/jptex/latex/jsclasses/jsclasses.ins
+2022/09/14 | 426004 | macros/jptex/latex/jsclasses/jsclasses.pdf
+2022/09/14 | 11344 | macros/jptex/latex/jsclasses/jslogo.dtx
+2022/09/14 | 233 | macros/jptex/latex/jsclasses/jslogo.ins
+2022/09/14 | 78734 | macros/jptex/latex/jsclasses/jslogo.pdf
+2022/09/14 | 8662 | macros/jptex/latex/jsclasses/jsverb.dtx
+2022/09/14 | 232 | macros/jptex/latex/jsclasses/jsverb.ins
+2022/09/14 | 77479 | macros/jptex/latex/jsclasses/jsverb.pdf
+2022/09/14 | 1392 | macros/jptex/latex/jsclasses/LICENSE
+2022/09/14 | 2811 | macros/jptex/latex/jsclasses/Makefile
+2022/09/14 | 40947 | macros/jptex/latex/jsclasses/okumacro.dtx
+2022/09/14 | 240 | macros/jptex/latex/jsclasses/okumacro.ins
+2022/09/14 | 180851 | macros/jptex/latex/jsclasses/okumacro.pdf
+2022/09/14 | 6126 | macros/jptex/latex/jsclasses/okuverb.dtx
+2022/09/14 | 236 | macros/jptex/latex/jsclasses/okuverb.ins
+2022/09/14 | 61261 | macros/jptex/latex/jsclasses/okuverb.pdf
+2022/09/14 | 1432 | macros/jptex/latex/jsclasses/README.md
+2022/09/14 | 884385 | macros/jptex/latex/jsclasses.zip
2021/12/11 | 137664 | macros/jptex/latex/platex/exppl2e.pdf
2021/12/11 | 13656 | macros/jptex/latex/platex/exppl2e.sty
2021/12/11 | 158330 | macros/jptex/latex/platex/jclasses.dtx
@@ -206658,29 +206659,29 @@
2020/10/22 | 39241 | macros/latex/contrib/askmaps/askmaps.tex
2020/10/22 | 814 | macros/latex/contrib/askmaps/README
2020/10/22 | 385765 | macros/latex/contrib/askmaps.zip
-2022/02/14 | 37844 | macros/latex/contrib/asmeconf/asmeconf.bst
-2022/07/05 | 95098 | macros/latex/contrib/asmeconf/asmeconf.cls
-2022/01/11 | 14286 | macros/latex/contrib/asmeconf/asmeconf-sample.bib
-2022/07/04 | 271758 | macros/latex/contrib/asmeconf/asmeconf-template.pdf
-2022/07/05 | 42659 | macros/latex/contrib/asmeconf/asmeconf-template.tex
+2022/09/14 | 38084 | macros/latex/contrib/asmeconf/asmeconf.bst
+2022/09/14 | 95602 | macros/latex/contrib/asmeconf/asmeconf.cls
+2022/09/14 | 14286 | macros/latex/contrib/asmeconf/asmeconf-sample.bib
+2022/09/14 | 599902 | macros/latex/contrib/asmeconf/asmeconf-template.pdf
+2022/09/14 | 43311 | macros/latex/contrib/asmeconf/asmeconf-template.tex
2022/03/10 | 596306 | macros/latex/contrib/asmeconf/examples/asmeconf-authorgrid-example.pdf
2021/12/26 | 42105 | macros/latex/contrib/asmeconf/examples/asmeconf-authorgrid-example.tex
2022/03/10 | 369381 | macros/latex/contrib/asmeconf/examples/asmeconf-fontspec.pdf
2022/03/10 | 27531 | macros/latex/contrib/asmeconf/examples/asmeconf-fontspec.tex
2022/03/10 | 254973 | macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.pdf
2022/03/10 | 9949 | macros/latex/contrib/asmeconf/examples/asmeconf-lualatex-ode-example.tex
-2022/03/10 | 2930107 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
-2022/03/10 | 16439 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
+2022/09/14 | 2930072 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
+2022/09/14 | 16574 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
2022/05/08 | 5758 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmewide.sty
2022/01/04 | 1237557 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/tesseral-harmonic.pdf
2022/01/04 | 1221215 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/zonal-harmonic2.pdf
2020/11/07 | 483046 | macros/latex/contrib/asmeconf/examples/CONTRACTOR-copyright-asmeconf-template.pdf
2020/11/07 | 482459 | macros/latex/contrib/asmeconf/examples/GOVT-copyright-asmeconf-template.pdf
-2022/07/04 | 10417 | macros/latex/contrib/asmeconf/README.md
+2022/09/14 | 10588 | macros/latex/contrib/asmeconf/README.md
2019/03/24 | 17689 | macros/latex/contrib/asmeconf/sample-figure-1.pdf
2019/07/08 | 95556 | macros/latex/contrib/asmeconf/sample-figure-2a.pdf
2019/07/08 | 91105 | macros/latex/contrib/asmeconf/sample-figure-2b.pdf
-2022/07/05 | 4184774 | macros/latex/contrib/asmeconf.zip
+2022/09/14 | 4527138 | macros/latex/contrib/asmeconf.zip
2021/12/23 | 42691 | macros/latex/contrib/asmejour/asmejour.bst
2022/06/26 | 45987 | macros/latex/contrib/asmejour/asmejour.cls
2022/01/11 | 19974 | macros/latex/contrib/asmejour/asmejour-sample.bib
@@ -207314,136 +207315,136 @@
2011/10/19 | 1058 | macros/latex/contrib/bchart/LICENSE.txt
2011/10/19 | 413 | macros/latex/contrib/bchart/README.md
2017/04/18 | 150314 | macros/latex/contrib/bchart.zip
-2022/05/17 | 1540 | macros/latex/contrib/beamer/AUTHORS.md
-2022/05/17 | 17080 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps
-2022/05/17 | 2958 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdf
-2022/05/17 | 26603 | macros/latex/contrib/beamer/base/art/beamericonarticle.eps
-2022/05/17 | 2936 | macros/latex/contrib/beamer/base/art/beamericonarticle.pdf
-2022/05/17 | 3464 | macros/latex/contrib/beamer/base/art/beamericonarticle.tex
-2022/05/17 | 24762 | macros/latex/contrib/beamer/base/art/beamericonbook.20.eps
-2022/05/17 | 2734 | macros/latex/contrib/beamer/base/art/beamericonbook.20.pdf
-2022/05/17 | 21219 | macros/latex/contrib/beamer/base/art/beamericonbook.eps
-2022/05/17 | 2667 | macros/latex/contrib/beamer/base/art/beamericonbook.pdf
-2022/05/17 | 3049 | macros/latex/contrib/beamer/base/art/beamericonbook.tex
-2022/05/17 | 33143 | macros/latex/contrib/beamer/base/art/beamericononline.20.eps
-2022/05/17 | 24451 | macros/latex/contrib/beamer/base/art/beamericononline.20.pdf
-2022/05/17 | 51776 | macros/latex/contrib/beamer/base/art/beamericononline.eps
-2022/05/17 | 24611 | macros/latex/contrib/beamer/base/art/beamericononline.pdf
-2022/05/17 | 1619 | macros/latex/contrib/beamer/base/beamerarticle.sty
-2022/05/17 | 3294 | macros/latex/contrib/beamer/base/beamerbasearticle.sty
-2022/05/17 | 24344 | macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty
-2022/05/17 | 7344 | macros/latex/contrib/beamer/base/beamerbaseboxes.sty
-2022/05/17 | 12589 | macros/latex/contrib/beamer/base/beamerbasecolor.sty
-2022/05/17 | 26232 | macros/latex/contrib/beamer/base/beamerbasecompatibility.sty
-2022/05/17 | 9407 | macros/latex/contrib/beamer/base/beamerbasedecode.sty
-2022/05/17 | 13642 | macros/latex/contrib/beamer/base/beamerbasefont.sty
-2022/05/17 | 12171 | macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty
-2022/05/17 | 9209 | macros/latex/contrib/beamer/base/beamerbaseframesize.sty
-2022/05/17 | 25572 | macros/latex/contrib/beamer/base/beamerbaseframe.sty
-2022/05/17 | 17683 | macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty
-2022/05/17 | 8313 | macros/latex/contrib/beamer/base/beamerbasemisc.sty
-2022/05/17 | 7574 | macros/latex/contrib/beamer/base/beamerbasemodes.sty
-2022/05/17 | 29020 | macros/latex/contrib/beamer/base/beamerbasenavigation.sty
-2022/05/17 | 5712 | macros/latex/contrib/beamer/base/beamerbasenotes.sty
-2022/05/17 | 1753 | macros/latex/contrib/beamer/base/beamerbaseoptions.sty
-2022/05/17 | 28508 | macros/latex/contrib/beamer/base/beamerbaseoverlay.sty
-2022/05/17 | 1593 | macros/latex/contrib/beamer/base/beamerbaserequires.sty
-2022/05/17 | 13733 | macros/latex/contrib/beamer/base/beamerbasesection.sty
-2022/05/17 | 5753 | macros/latex/contrib/beamer/base/beamerbasetemplates.sty
-2022/05/17 | 1140 | macros/latex/contrib/beamer/base/beamerbasethemes.sty
-2022/05/17 | 4548 | macros/latex/contrib/beamer/base/beamerbasetheorems.sty
-2022/05/17 | 5356 | macros/latex/contrib/beamer/base/beamerbasetitle.sty
-2022/05/17 | 7755 | macros/latex/contrib/beamer/base/beamerbasetoc.sty
-2022/05/17 | 637 | macros/latex/contrib/beamer/base/beamerbasetranslator.sty
-2022/05/17 | 1808 | macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty
-2022/05/17 | 4026 | macros/latex/contrib/beamer/base/beamerbaseverbatim.sty
-2022/05/17 | 12413 | macros/latex/contrib/beamer/base/beamer.cls
-2022/05/17 | 1741 | macros/latex/contrib/beamer/base/emulation/beamerfoils.sty
-2022/05/17 | 5966 | macros/latex/contrib/beamer/base/emulation/beamerprosper.sty
-2022/05/17 | 1881 | macros/latex/contrib/beamer/base/emulation/beamerseminar.sty
-2022/05/17 | 1240 | macros/latex/contrib/beamer/base/emulation/beamertexpower.sty
-2022/05/17 | 10543 | macros/latex/contrib/beamer/base/multimedia/multimedia.sty
-2022/05/17 | 1388 | macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty
-2022/05/17 | 6578 | macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty
-2022/05/17 | 6217 | macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty
-2022/05/17 | 2141 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty
-2022/05/17 | 1309 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty
-2022/05/17 | 1569 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty
-2022/05/17 | 1616 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty
-2022/05/17 | 7089 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
-2022/05/17 | 1050 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty
-2022/05/17 | 1651 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty
-2022/05/17 | 1368 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty
-2022/05/17 | 582 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty
-2022/05/17 | 2322 | macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty
-2022/05/17 | 835 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty
-2022/05/17 | 853 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty
-2022/05/17 | 1770 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty
-2022/05/17 | 1094 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty
-2022/05/17 | 720 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty
-2022/05/17 | 1475 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty
-2022/05/17 | 823 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty
-2022/05/17 | 1013 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty
-2022/05/17 | 1230 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty
-2022/05/17 | 4236 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty
-2022/05/17 | 333 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty
-2022/05/17 | 1008 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty
-2022/05/17 | 671 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty
-2022/05/17 | 702 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty
-2022/05/17 | 709 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty
-2022/05/17 | 402 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty
-2022/05/17 | 13080 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty
-2022/05/17 | 4252 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty
-2022/05/17 | 401 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty
-2022/05/17 | 1012 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty
-2022/05/17 | 6946 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
-2022/05/17 | 2190 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty
-2022/05/17 | 5103 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty
-2022/05/17 | 2754 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
-2022/05/17 | 5252 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty
-2022/05/17 | 4371 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty
-2022/05/17 | 3803 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty
-2022/05/17 | 2529 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty
-2022/05/17 | 2024 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty
-2022/05/17 | 485 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty
-2022/05/17 | 391 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty
-2022/05/17 | 378 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty
-2022/05/17 | 951 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty
-2022/05/17 | 504 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty
-2022/05/17 | 902 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty
-2022/05/17 | 3615 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty
-2022/05/17 | 471 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty
-2022/05/17 | 390 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty
-2022/05/17 | 407 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty
-2022/05/17 | 355 | macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty
-2022/05/17 | 462 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty
-2022/05/17 | 594 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty
-2022/05/17 | 425 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty
-2022/05/17 | 1054 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty
-2022/05/17 | 790 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty
-2022/05/17 | 501 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty
-2022/05/17 | 407 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty
-2022/05/17 | 393 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty
-2022/05/17 | 557 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty
-2022/05/17 | 351 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty
-2022/05/17 | 1247 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty
-2022/05/17 | 351 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty
-2022/05/17 | 959 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty
-2022/05/17 | 332 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty
-2022/05/17 | 569 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty
-2022/05/17 | 856 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty
-2022/05/17 | 459 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty
-2022/05/17 | 403 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty
-2022/05/17 | 433 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty
-2022/05/17 | 431 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty
-2022/05/17 | 701 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty
-2022/05/17 | 2144 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty
-2022/05/17 | 482 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty
-2022/05/17 | 558 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty
-2022/05/17 | 1306 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty
-2022/05/17 | 396 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty
-2022/05/17 | 580 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty
-2022/05/17 | 7204 | macros/latex/contrib/beamer/CHANGELOG.md
+2022/09/14 | 1540 | macros/latex/contrib/beamer/AUTHORS.md
+2022/09/14 | 17080 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps
+2022/09/14 | 2958 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdf
+2022/09/14 | 26603 | macros/latex/contrib/beamer/base/art/beamericonarticle.eps
+2022/09/14 | 2936 | macros/latex/contrib/beamer/base/art/beamericonarticle.pdf
+2022/09/14 | 3464 | macros/latex/contrib/beamer/base/art/beamericonarticle.tex
+2022/09/14 | 24762 | macros/latex/contrib/beamer/base/art/beamericonbook.20.eps
+2022/09/14 | 2734 | macros/latex/contrib/beamer/base/art/beamericonbook.20.pdf
+2022/09/14 | 21219 | macros/latex/contrib/beamer/base/art/beamericonbook.eps
+2022/09/14 | 2667 | macros/latex/contrib/beamer/base/art/beamericonbook.pdf
+2022/09/14 | 3049 | macros/latex/contrib/beamer/base/art/beamericonbook.tex
+2022/09/14 | 33143 | macros/latex/contrib/beamer/base/art/beamericononline.20.eps
+2022/09/14 | 24451 | macros/latex/contrib/beamer/base/art/beamericononline.20.pdf
+2022/09/14 | 51776 | macros/latex/contrib/beamer/base/art/beamericononline.eps
+2022/09/14 | 24611 | macros/latex/contrib/beamer/base/art/beamericononline.pdf
+2022/09/14 | 1619 | macros/latex/contrib/beamer/base/beamerarticle.sty
+2022/09/14 | 3294 | macros/latex/contrib/beamer/base/beamerbasearticle.sty
+2022/09/14 | 24344 | macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty
+2022/09/14 | 7355 | macros/latex/contrib/beamer/base/beamerbaseboxes.sty
+2022/09/14 | 12589 | macros/latex/contrib/beamer/base/beamerbasecolor.sty
+2022/09/14 | 26232 | macros/latex/contrib/beamer/base/beamerbasecompatibility.sty
+2022/09/14 | 9407 | macros/latex/contrib/beamer/base/beamerbasedecode.sty
+2022/09/14 | 13642 | macros/latex/contrib/beamer/base/beamerbasefont.sty
+2022/09/14 | 12171 | macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty
+2022/09/14 | 8974 | macros/latex/contrib/beamer/base/beamerbaseframesize.sty
+2022/09/14 | 25572 | macros/latex/contrib/beamer/base/beamerbaseframe.sty
+2022/09/14 | 17683 | macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty
+2022/09/14 | 8313 | macros/latex/contrib/beamer/base/beamerbasemisc.sty
+2022/09/14 | 7574 | macros/latex/contrib/beamer/base/beamerbasemodes.sty
+2022/09/14 | 29262 | macros/latex/contrib/beamer/base/beamerbasenavigation.sty
+2022/09/14 | 5712 | macros/latex/contrib/beamer/base/beamerbasenotes.sty
+2022/09/14 | 1753 | macros/latex/contrib/beamer/base/beamerbaseoptions.sty
+2022/09/14 | 28508 | macros/latex/contrib/beamer/base/beamerbaseoverlay.sty
+2022/09/14 | 1593 | macros/latex/contrib/beamer/base/beamerbaserequires.sty
+2022/09/14 | 13733 | macros/latex/contrib/beamer/base/beamerbasesection.sty
+2022/09/14 | 5753 | macros/latex/contrib/beamer/base/beamerbasetemplates.sty
+2022/09/14 | 1140 | macros/latex/contrib/beamer/base/beamerbasethemes.sty
+2022/09/14 | 4548 | macros/latex/contrib/beamer/base/beamerbasetheorems.sty
+2022/09/14 | 5356 | macros/latex/contrib/beamer/base/beamerbasetitle.sty
+2022/09/14 | 7755 | macros/latex/contrib/beamer/base/beamerbasetoc.sty
+2022/09/14 | 637 | macros/latex/contrib/beamer/base/beamerbasetranslator.sty
+2022/09/14 | 1808 | macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty
+2022/09/14 | 4026 | macros/latex/contrib/beamer/base/beamerbaseverbatim.sty
+2022/09/14 | 12413 | macros/latex/contrib/beamer/base/beamer.cls
+2022/09/14 | 1741 | macros/latex/contrib/beamer/base/emulation/beamerfoils.sty
+2022/09/14 | 5966 | macros/latex/contrib/beamer/base/emulation/beamerprosper.sty
+2022/09/14 | 1881 | macros/latex/contrib/beamer/base/emulation/beamerseminar.sty
+2022/09/14 | 1240 | macros/latex/contrib/beamer/base/emulation/beamertexpower.sty
+2022/09/14 | 10543 | macros/latex/contrib/beamer/base/multimedia/multimedia.sty
+2022/09/14 | 1388 | macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty
+2022/09/14 | 6578 | macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty
+2022/09/14 | 6217 | macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty
+2022/09/14 | 2141 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty
+2022/09/14 | 1309 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty
+2022/09/14 | 1569 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty
+2022/09/14 | 1616 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty
+2022/09/14 | 7162 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
+2022/09/14 | 1050 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty
+2022/09/14 | 1651 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty
+2022/09/14 | 1368 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty
+2022/09/14 | 582 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty
+2022/09/14 | 2322 | macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty
+2022/09/14 | 835 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty
+2022/09/14 | 853 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty
+2022/09/14 | 1770 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty
+2022/09/14 | 1094 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty
+2022/09/14 | 720 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty
+2022/09/14 | 1475 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty
+2022/09/14 | 823 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty
+2022/09/14 | 1013 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty
+2022/09/14 | 1230 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty
+2022/09/14 | 4236 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty
+2022/09/14 | 333 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty
+2022/09/14 | 1008 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty
+2022/09/14 | 671 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty
+2022/09/14 | 702 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty
+2022/09/14 | 709 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty
+2022/09/14 | 402 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty
+2022/09/14 | 13080 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty
+2022/09/14 | 4252 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty
+2022/09/14 | 401 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty
+2022/09/14 | 1012 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty
+2022/09/14 | 6910 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
+2022/09/14 | 2190 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty
+2022/09/14 | 5103 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty
+2022/09/14 | 2765 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
+2022/09/14 | 5252 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty
+2022/09/14 | 4371 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty
+2022/09/14 | 3803 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty
+2022/09/14 | 2529 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty
+2022/09/14 | 2024 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty
+2022/09/14 | 485 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty
+2022/09/14 | 391 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty
+2022/09/14 | 378 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty
+2022/09/14 | 951 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty
+2022/09/14 | 504 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty
+2022/09/14 | 902 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty
+2022/09/14 | 3615 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty
+2022/09/14 | 471 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty
+2022/09/14 | 390 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty
+2022/09/14 | 407 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty
+2022/09/14 | 355 | macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty
+2022/09/14 | 462 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty
+2022/09/14 | 594 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty
+2022/09/14 | 425 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty
+2022/09/14 | 1054 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty
+2022/09/14 | 790 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty
+2022/09/14 | 501 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty
+2022/09/14 | 407 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty
+2022/09/14 | 393 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty
+2022/09/14 | 557 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty
+2022/09/14 | 351 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty
+2022/09/14 | 1247 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty
+2022/09/14 | 351 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty
+2022/09/14 | 959 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty
+2022/09/14 | 332 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty
+2022/09/14 | 569 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty
+2022/09/14 | 856 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty
+2022/09/14 | 459 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty
+2022/09/14 | 403 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty
+2022/09/14 | 433 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty
+2022/09/14 | 431 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty
+2022/09/14 | 701 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty
+2022/09/14 | 2144 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty
+2022/09/14 | 482 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty
+2022/09/14 | 558 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty
+2022/09/14 | 1306 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty
+2022/09/14 | 396 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty
+2022/09/14 | 580 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty
+2022/09/14 | 7530 | macros/latex/contrib/beamer/CHANGELOG.md
2018/01/15 | 2503 | macros/latex/contrib/beamer-contrib/appendixnumberbeamer/appendixnumberbeamer.sty
2018/01/15 | 598 | macros/latex/contrib/beamer-contrib/appendixnumberbeamer/README.md
2018/01/15 | 4 | macros/latex/contrib/beamer-contrib/appendixnumberbeamer/VERSION
@@ -207775,11 +207776,11 @@
2017/07/17 | 1681 | macros/latex/contrib/beamer-contrib/themes/beamerthemetamu/theme/beamerouterthemetamu.sty
2017/07/17 | 982 | macros/latex/contrib/beamer-contrib/themes/beamerthemetamu/theme/beamerthemetamu.sty
2017/07/17 | 182207 | macros/latex/contrib/beamer-contrib/themes/beamerthemetamu.zip
-2022/09/06 | 5500 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
-2022/09/06 | 181132 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf
-2022/09/06 | 7924 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex
-2022/09/06 | 393 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md
-2022/09/06 | 174857 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox.zip
+2022/09/14 | 7266 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
+2022/09/14 | 177229 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf
+2022/09/14 | 8440 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex
+2022/09/14 | 393 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md
+2022/09/14 | 171660 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox.zip
2021/11/18 | 8780 | macros/latex/contrib/beamer-contrib/themes/beamertheme-trigon/demo/frames.tex
2021/01/28 | 251052 | macros/latex/contrib/beamer-contrib/themes/beamertheme-trigon/demo/library.jpg
2022/05/08 | 416470 | macros/latex/contrib/beamer-contrib/themes/beamertheme-trigon/demo/trigon_demo.pdf
@@ -207893,74 +207894,74 @@
2013/04/11 | 2394 | macros/latex/contrib/beamer-contrib/themes/upenn-bc/color/beamercolorthemepenn.sty
2013/04/11 | 2060 | macros/latex/contrib/beamer-contrib/themes/upenn-bc/README
2013/04/12 | 385249 | macros/latex/contrib/beamer-contrib/themes/upenn-bc.zip
-2022/05/17 | 1354 | macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex
-2022/05/17 | 343911 | macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
-2022/05/17 | 547609 | macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
-2022/05/17 | 441714 | macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
-2022/05/17 | 490 | macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex
-2022/05/17 | 716 | macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex
-2022/05/17 | 2089 | macros/latex/contrib/beamer/doc/beamerlogo.pdf
-2022/05/17 | 464 | macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex
-2022/05/17 | 1542 | macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex
-2022/05/17 | 486 | macros/latex/contrib/beamer/doc/beamerthemeexample.tex
-2022/05/17 | 35658 | macros/latex/contrib/beamer/doc/beamerug-animations.tex
-2022/05/17 | 36306 | macros/latex/contrib/beamer/doc/beamerug-color.tex
-2022/05/17 | 12536 | macros/latex/contrib/beamer/doc/beamerug-compatibility.tex
-2022/05/17 | 33808 | macros/latex/contrib/beamer/doc/beamerug-elements.tex
-2022/05/17 | 32653 | macros/latex/contrib/beamer/doc/beamerug-emulation.tex
-2022/05/17 | 21365 | macros/latex/contrib/beamer/doc/beamerug-fonts.tex
-2022/05/17 | 76557 | macros/latex/contrib/beamer/doc/beamerug-frames.tex
-2022/05/17 | 39707 | macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex
-2022/05/17 | 9134 | macros/latex/contrib/beamer/doc/beamerug-graphics.tex
-2022/05/17 | 41261 | macros/latex/contrib/beamer/doc/beamerug-guidelines.tex
-2022/05/17 | 6319 | macros/latex/contrib/beamer/doc/beamerug-installation.tex
-2022/05/17 | 16465 | macros/latex/contrib/beamer/doc/beamerug-interaction.tex
-2022/05/17 | 14512 | macros/latex/contrib/beamer/doc/beamerug-introduction.tex
-2022/05/17 | 40720 | macros/latex/contrib/beamer/doc/beamerug-license.tex
-2022/05/17 | 63065 | macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
-2022/05/17 | 12465 | macros/latex/contrib/beamer/doc/beamerug-macros.tex
-2022/05/17 | 22108 | macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex
-2022/05/17 | 10910 | macros/latex/contrib/beamer/doc/beamerug-notes.tex
-2022/05/17 | 40585 | macros/latex/contrib/beamer/doc/beamerug-overlays.tex
-2022/05/17 | 2771 | macros/latex/contrib/beamer/doc/beamerug-solutions.tex
-2022/05/17 | 18534 | macros/latex/contrib/beamer/doc/beamerug-themes.tex
-2022/05/17 | 4373 | macros/latex/contrib/beamer/doc/beamerug-transparencies.tex
-2022/05/17 | 8317 | macros/latex/contrib/beamer/doc/beamerug-tricks.tex
-2022/05/17 | 24312 | macros/latex/contrib/beamer/doc/beamerug-tutorial.tex
-2022/05/17 | 7986 | macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex
-2022/05/17 | 12222 | macros/latex/contrib/beamer/doc/beamerug-workflow.tex
-2022/05/17 | 2251679 | macros/latex/contrib/beamer/doc/beameruserguide.pdf
-2022/05/17 | 8496 | macros/latex/contrib/beamer/doc/beameruserguide.tex
-2022/05/17 | 954 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex
-2022/05/17 | 1797 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex
-2022/05/17 | 12480 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex
-2022/05/17 | 10230 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex
-2022/05/17 | 20751 | macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex
-2022/05/17 | 342 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex
-2022/05/17 | 19301 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex
-2022/05/17 | 32823 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdf
-2022/05/17 | 861 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpg
-2022/05/17 | 1634 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpg
-2022/05/17 | 471 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpg
-2022/05/17 | 613 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpg
-2022/05/17 | 435 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpg
-2022/05/17 | 1244 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpg
-2022/05/17 | 380 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex
-2022/05/17 | 5514 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex
-2022/05/17 | 22964 | macros/latex/contrib/beamer/doc/licenses/fdl.txt
-2022/05/17 | 18092 | macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt
-2022/05/17 | 19106 | macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt
-2022/05/17 | 3444 | macros/latex/contrib/beamer/doc/licenses/manifest-code.txt
-2022/05/17 | 2045 | macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt
-2022/05/17 | 7558 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex
-2022/05/17 | 6858 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex
-2022/05/17 | 8300 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex
-2022/05/17 | 5492 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex
-2022/05/17 | 5073 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex
-2022/05/17 | 6039 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex
-2022/05/17 | 2961 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex
-2022/05/17 | 2627 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex
-2022/05/17 | 3072 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex
+2022/09/14 | 1354 | macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex
+2022/09/14 | 343911 | macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
+2022/09/14 | 547609 | macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
+2022/09/14 | 441714 | macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
+2022/09/14 | 490 | macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex
+2022/09/14 | 716 | macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex
+2022/09/14 | 2089 | macros/latex/contrib/beamer/doc/beamerlogo.pdf
+2022/09/14 | 464 | macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex
+2022/09/14 | 1542 | macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex
+2022/09/14 | 486 | macros/latex/contrib/beamer/doc/beamerthemeexample.tex
+2022/09/14 | 35658 | macros/latex/contrib/beamer/doc/beamerug-animations.tex
+2022/09/14 | 36306 | macros/latex/contrib/beamer/doc/beamerug-color.tex
+2022/09/14 | 12536 | macros/latex/contrib/beamer/doc/beamerug-compatibility.tex
+2022/09/14 | 33808 | macros/latex/contrib/beamer/doc/beamerug-elements.tex
+2022/09/14 | 32653 | macros/latex/contrib/beamer/doc/beamerug-emulation.tex
+2022/09/14 | 21365 | macros/latex/contrib/beamer/doc/beamerug-fonts.tex
+2022/09/14 | 76557 | macros/latex/contrib/beamer/doc/beamerug-frames.tex
+2022/09/14 | 39707 | macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex
+2022/09/14 | 9134 | macros/latex/contrib/beamer/doc/beamerug-graphics.tex
+2022/09/14 | 41261 | macros/latex/contrib/beamer/doc/beamerug-guidelines.tex
+2022/09/14 | 6319 | macros/latex/contrib/beamer/doc/beamerug-installation.tex
+2022/09/14 | 16465 | macros/latex/contrib/beamer/doc/beamerug-interaction.tex
+2022/09/14 | 14508 | macros/latex/contrib/beamer/doc/beamerug-introduction.tex
+2022/09/14 | 40720 | macros/latex/contrib/beamer/doc/beamerug-license.tex
+2022/09/14 | 63540 | macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
+2022/09/14 | 12465 | macros/latex/contrib/beamer/doc/beamerug-macros.tex
+2022/09/14 | 22108 | macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex
+2022/09/14 | 10910 | macros/latex/contrib/beamer/doc/beamerug-notes.tex
+2022/09/14 | 40596 | macros/latex/contrib/beamer/doc/beamerug-overlays.tex
+2022/09/14 | 2771 | macros/latex/contrib/beamer/doc/beamerug-solutions.tex
+2022/09/14 | 18534 | macros/latex/contrib/beamer/doc/beamerug-themes.tex
+2022/09/14 | 4373 | macros/latex/contrib/beamer/doc/beamerug-transparencies.tex
+2022/09/14 | 8317 | macros/latex/contrib/beamer/doc/beamerug-tricks.tex
+2022/09/14 | 24312 | macros/latex/contrib/beamer/doc/beamerug-tutorial.tex
+2022/09/14 | 7986 | macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex
+2022/09/14 | 12222 | macros/latex/contrib/beamer/doc/beamerug-workflow.tex
+2022/09/14 | 2219543 | macros/latex/contrib/beamer/doc/beameruserguide.pdf
+2022/09/14 | 8522 | macros/latex/contrib/beamer/doc/beameruserguide.tex
+2022/09/14 | 954 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex
+2022/09/14 | 1797 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex
+2022/09/14 | 12480 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex
+2022/09/14 | 10230 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex
+2022/09/14 | 20751 | macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex
+2022/09/14 | 342 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex
+2022/09/14 | 19301 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex
+2022/09/14 | 32823 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdf
+2022/09/14 | 861 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpg
+2022/09/14 | 1634 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpg
+2022/09/14 | 471 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpg
+2022/09/14 | 613 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpg
+2022/09/14 | 435 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpg
+2022/09/14 | 1244 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpg
+2022/09/14 | 380 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex
+2022/09/14 | 5514 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex
+2022/09/14 | 22964 | macros/latex/contrib/beamer/doc/licenses/fdl.txt
+2022/09/14 | 18092 | macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt
+2022/09/14 | 19106 | macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt
+2022/09/14 | 3444 | macros/latex/contrib/beamer/doc/licenses/manifest-code.txt
+2022/09/14 | 2045 | macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt
+2022/09/14 | 7558 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex
+2022/09/14 | 6858 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex
+2022/09/14 | 8300 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex
+2022/09/14 | 5492 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex
+2022/09/14 | 5073 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex
+2022/09/14 | 6039 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex
+2022/09/14 | 2961 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex
+2022/09/14 | 2627 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex
+2022/09/14 | 3072 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex
2015/08/19 | 656 | macros/latex/contrib/beamer-FUBerlin/Changes
2015/08/19 | 314575 | macros/latex/contrib/beamer-FUBerlin/doc/exampleClass.pdf
2009/07/24 | 829 | macros/latex/contrib/beamer-FUBerlin/doc/exampleClass.tex
@@ -207974,7 +207975,7 @@
2009/08/11 | 990 | macros/latex/contrib/beamer-FUBerlin/tex/latex/beamerthemeBerlinFU.sty
2015/08/14 | 5609 | macros/latex/contrib/beamer-FUBerlin/tex/latex/FUbeamer.cls
2015/08/19 | 609194 | macros/latex/contrib/beamer-FUBerlin.zip
-2022/05/17 | 1353 | macros/latex/contrib/beamer/LICENSE.md
+2022/09/14 | 1353 | macros/latex/contrib/beamer/LICENSE.md
2018/04/23 | 74500 | macros/latex/contrib/beamerposter/beamerposter.pdf
2018/04/23 | 12772 | macros/latex/contrib/beamerposter/beamerposter.sty
2018/04/23 | 1672 | macros/latex/contrib/beamerposter/beamerposter.tex
@@ -207987,8 +207988,8 @@
2018/04/23 | 1963 | macros/latex/contrib/beamerposter/example.tex
2018/04/23 | 2160 | macros/latex/contrib/beamerposter/README
2018/04/23 | 90339 | macros/latex/contrib/beamerposter.zip
-2022/05/17 | 1111 | macros/latex/contrib/beamer/README.md
-2022/05/17 | 3560207 | macros/latex/contrib/beamer.zip
+2022/09/14 | 1111 | macros/latex/contrib/beamer/README.md
+2022/09/14 | 3531833 | macros/latex/contrib/beamer.zip
2020/01/30 | 183957 | macros/latex/contrib/bearwear/baer.png
2020/04/21 | 17079 | macros/latex/contrib/bearwear/bearwear.dtx
2020/01/30 | 1655 | macros/latex/contrib/bearwear/bearwear.ins
@@ -212412,14 +212413,14 @@
2020/03/20 | 19110 | macros/latex/contrib/csbulletin/LICENSE.txt
2020/03/20 | 532 | macros/latex/contrib/csbulletin/README
2020/03/20 | 288252 | macros/latex/contrib/csbulletin.zip
-2022/09/09 | 3753 | macros/latex/contrib/csquotes/csq-compat.def
-2022/09/09 | 7068 | macros/latex/contrib/csquotes/csquotes.cfg
-2022/09/09 | 21994 | macros/latex/contrib/csquotes/csquotes.def
-2022/09/09 | 304739 | macros/latex/contrib/csquotes/csquotes.pdf
-2022/09/09 | 62527 | macros/latex/contrib/csquotes/csquotes.sty
-2022/09/09 | 123854 | macros/latex/contrib/csquotes/csquotes.tex
-2022/09/09 | 3282 | macros/latex/contrib/csquotes/README.md
-2022/09/09 | 348286 | macros/latex/contrib/csquotes.zip
+2022/09/14 | 3753 | macros/latex/contrib/csquotes/csq-compat.def
+2022/09/14 | 7068 | macros/latex/contrib/csquotes/csquotes.cfg
+2022/09/14 | 21994 | macros/latex/contrib/csquotes/csquotes.def
+2022/09/14 | 304934 | macros/latex/contrib/csquotes/csquotes.pdf
+2022/09/14 | 62761 | macros/latex/contrib/csquotes/csquotes.sty
+2022/09/14 | 123961 | macros/latex/contrib/csquotes/csquotes.tex
+2022/09/14 | 3282 | macros/latex/contrib/csquotes/README.md
+2022/09/14 | 348574 | macros/latex/contrib/csquotes.zip
2016/12/22 | 2097610 | macros/latex/contrib/css-colors/css-colors.pdf
2017/04/19 | 7201 | macros/latex/contrib/css-colors/css-colors.sty
2017/04/19 | 25397 | macros/latex/contrib/css-colors/css-colors.xlsx
@@ -216339,13 +216340,13 @@
2019/08/05 | 201807 | macros/latex/contrib/fixcmex/fixcmex.pdf
2019/08/05 | 810 | macros/latex/contrib/fixcmex/README
2019/08/05 | 203748 | macros/latex/contrib/fixcmex.zip
-2022/08/11 | 23446 | macros/latex/contrib/fixdif/fixdif.dtx
-2022/08/11 | 3179 | macros/latex/contrib/fixdif/fixdif.ins
-2022/08/11 | 97323 | macros/latex/contrib/fixdif/fixdif.pdf
-2022/08/11 | 163015 | macros/latex/contrib/fixdif/fixdif-zh-cn.pdf
-2022/08/11 | 16822 | macros/latex/contrib/fixdif/fixdif-zh-cn.tex
-2022/08/11 | 787 | macros/latex/contrib/fixdif/README.md
-2022/08/11 | 268190 | macros/latex/contrib/fixdif.zip
+2022/09/14 | 23446 | macros/latex/contrib/fixdif/fixdif.dtx
+2022/09/14 | 3179 | macros/latex/contrib/fixdif/fixdif.ins
+2022/09/14 | 97323 | macros/latex/contrib/fixdif/fixdif.pdf
+2022/09/14 | 163097 | macros/latex/contrib/fixdif/fixdif-zh-cn.pdf
+2022/09/14 | 16867 | macros/latex/contrib/fixdif/fixdif-zh-cn.tex
+2022/09/14 | 787 | macros/latex/contrib/fixdif/README.md
+2022/09/14 | 268305 | macros/latex/contrib/fixdif.zip
2010/02/20 | 56191 | macros/latex/contrib/fixfoot/fixfoot.pdf
2007/12/12 | 7792 | macros/latex/contrib/fixfoot/fixfoot.sty
2010/02/20 | 1925 | macros/latex/contrib/fixfoot/fixfoot.tex
@@ -230335,82 +230336,90 @@
2015/03/31 | 21481 | macros/latex/contrib/stellenbosch/tex/usthesis.sty
2015/03/31 | 7331 | macros/latex/contrib/stellenbosch/tex/ustitle.sty
2015/04/01 | 4724271 | macros/latex/contrib/stellenbosch.zip
-2022/02/25 | 464 | macros/latex/contrib/stex/doc/Makefile
-2022/05/23 | 1853 | macros/latex/contrib/stex/doc/packages/stex-basics.tex
-2022/04/25 | 7744 | macros/latex/contrib/stex/doc/packages/stex-document-structure.tex
-2022/04/24 | 8491 | macros/latex/contrib/stex/doc/packages/stex-features.tex
-2022/04/25 | 3929 | macros/latex/contrib/stex/doc/packages/stex-hwexam.tex
-2022/05/23 | 6194 | macros/latex/contrib/stex/doc/packages/stex-inheritance.tex
-2022/05/24 | 9870 | macros/latex/contrib/stex/doc/packages/stex-mathhub.tex
-2022/05/24 | 1546 | macros/latex/contrib/stex/doc/packages/stex-metatheory.tex
-2022/04/24 | 3238 | macros/latex/contrib/stex/doc/packages/stex-modules.tex
-2022/04/25 | 6847 | macros/latex/contrib/stex/doc/packages/stex-problem.tex
-2022/04/25 | 9700 | macros/latex/contrib/stex/doc/packages/stex-proofs.tex
-2022/04/24 | 217 | macros/latex/contrib/stex/doc/packages/stex-references.tex
-2022/04/25 | 9014 | macros/latex/contrib/stex/doc/packages/stex-slides.tex
-2022/04/24 | 6188 | macros/latex/contrib/stex/doc/packages/stex-statements.tex
-2022/05/24 | 25381 | macros/latex/contrib/stex/doc/packages/stex-symbols.tex
-2022/04/24 | 6861 | macros/latex/contrib/stex/doc/packages/stex-terms.tex
-2022/04/25 | 2868 | macros/latex/contrib/stex/doc/packages/stex-tikzinput.tex
-2022/04/22 | 1285 | macros/latex/contrib/stex/doc/stex-abstract.tex
-2022/05/14 | 12862 | macros/latex/contrib/stex/doc/stex-docheader.tex
-2022/05/24 | 1645539 | macros/latex/contrib/stex/doc/stex-doc.pdf
-2022/04/24 | 5793 | macros/latex/contrib/stex/doc/stex-doc.tex
-2022/05/24 | 983933 | macros/latex/contrib/stex/doc/stex-manual.pdf
-2022/05/23 | 24071 | macros/latex/contrib/stex/doc/stex-manual.tex
-2022/05/23 | 16284 | macros/latex/contrib/stex/doc/stex-tutorial.tex
-2022/02/24 | 156 | macros/latex/contrib/stex/Makefile
-2022/04/22 | 4585 | macros/latex/contrib/stex/README.md
-2022/05/24 | 17427 | macros/latex/contrib/stex/source/extensions/document-structure.dtx
-2022/05/24 | 16867 | macros/latex/contrib/stex/source/extensions/hwexam.dtx
-2022/02/26 | 368 | macros/latex/contrib/stex/source/extensions/Makefile
-2022/05/24 | 28293 | macros/latex/contrib/stex/source/extensions/notesslides.dtx
-2022/05/24 | 23747 | macros/latex/contrib/stex/source/extensions/problem.dtx
-2022/04/08 | 1116 | macros/latex/contrib/stex/source/extensions/stex-extensions.ins
-2022/05/24 | 5974 | macros/latex/contrib/stex/source/extensions/tikzinput.dtx
-2022/02/24 | 162 | macros/latex/contrib/stex/source/Makefile
-2022/02/25 | 362 | macros/latex/contrib/stex/source/stex/Makefile
-2022/05/24 | 18286 | macros/latex/contrib/stex/source/stex/stex-basics.dtx
-2022/05/22 | 37060 | macros/latex/contrib/stex/source/stex/stex-features.dtx
-2022/05/14 | 23219 | macros/latex/contrib/stex/source/stex/stex-inheritance.dtx
-2022/04/05 | 1215 | macros/latex/contrib/stex/source/stex/stex.ins
-2022/05/21 | 30030 | macros/latex/contrib/stex/source/stex/stex-mathhub.dtx
-2022/05/24 | 6586 | macros/latex/contrib/stex/source/stex/stex-metatheory.dtx
-2022/05/21 | 28547 | macros/latex/contrib/stex/source/stex/stex-modules.dtx
-2022/05/13 | 2496 | macros/latex/contrib/stex/source/stex/stex-others.dtx
-2022/05/21 | 20352 | macros/latex/contrib/stex/source/stex/stex-proofs.dtx
-2022/04/24 | 15752 | macros/latex/contrib/stex/source/stex/stex-references.dtx
-2022/05/13 | 29239 | macros/latex/contrib/stex/source/stex/stex-statements.dtx
-2022/05/21 | 45447 | macros/latex/contrib/stex/source/stex/stex-symbols.dtx
-2022/05/13 | 31046 | macros/latex/contrib/stex/source/stex/stex-terms.dtx
-2022/02/26 | 440 | macros/latex/contrib/stex/tex/etc/beamernotesthemesTeX.sty
-2022/05/21 | 1847 | macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty
-2022/02/24 | 896 | macros/latex/contrib/stex/tex/etc/hwexam-default.header
-2022/03/03 | 1826 | macros/latex/contrib/stex/tex/etc/lststex.sty
-2022/02/24 | 1825 | macros/latex/contrib/stex/tex/etc/rustex.sty
-2022/04/05 | 1332 | macros/latex/contrib/stex/tex/etc/stex-backend-latexml.cfg
-2022/04/05 | 332 | macros/latex/contrib/stex/tex/etc/stex-backend-pdflatex.cfg
-2022/05/22 | 1493 | macros/latex/contrib/stex/tex/etc/stex-backend-rustex.cfg
-2022/05/23 | 201 | macros/latex/contrib/stex/tex/etc/stex-logo.sty
-2022/03/07 | 2585 | macros/latex/contrib/stex/tex/etc/stexthm.sty
-2022/02/26 | 5083 | macros/latex/contrib/stex/tex/img/stex-cc-by-sa.png
-2022/02/26 | 1082 | macros/latex/contrib/stex/tex/img/stex-cc_somerights.png
-2022/02/26 | 2117 | macros/latex/contrib/stex/tex/img/stex-dangerous-bend.png
-2022/02/24 | 26566 | macros/latex/contrib/stex/tex/img/sTeX-logo.png
-2022/02/26 | 594 | macros/latex/contrib/stex/tex/ldf/document-structure-ngerman.ldf
-2022/02/25 | 840 | macros/latex/contrib/stex/tex/ldf/hwexam-finnish.ldf
-2022/02/25 | 786 | macros/latex/contrib/stex/tex/ldf/hwexam-french.ldf
-2022/02/25 | 811 | macros/latex/contrib/stex/tex/ldf/hwexam-ngerman.ldf
-2022/02/25 | 1005 | macros/latex/contrib/stex/tex/ldf/hwexam-russian.ldf
-2022/02/25 | 474 | macros/latex/contrib/stex/tex/ldf/problem-finnish.ldf
-2022/02/25 | 478 | macros/latex/contrib/stex/tex/ldf/problem-french.ldf
-2022/02/25 | 534 | macros/latex/contrib/stex/tex/ldf/problem-ngerman.ldf
-2022/02/25 | 546 | macros/latex/contrib/stex/tex/ldf/problem-russian.ldf
-2022/02/25 | 499 | macros/latex/contrib/stex/tex/ldf/sproof-finnish.ldf
-2022/02/25 | 524 | macros/latex/contrib/stex/tex/ldf/sproof-french.ldf
-2022/02/25 | 434 | macros/latex/contrib/stex/tex/ldf/sproof-ngerman.ldf
-2022/02/25 | 489 | macros/latex/contrib/stex/tex/ldf/sproof-russian.ldf
-2022/05/24 | 2722538 | macros/latex/contrib/stex.zip
+2022/09/09 | 25993 | macros/latex/contrib/stex/doc/img/vsc1.png
+2022/09/09 | 54764 | macros/latex/contrib/stex/doc/img/vsc2.png
+2022/09/09 | 49418 | macros/latex/contrib/stex/doc/img/vsc3.png
+2022/09/09 | 477 | macros/latex/contrib/stex/doc/Makefile
+2022/08/24 | 1853 | macros/latex/contrib/stex/doc/packages/stex-basics.tex
+2022/08/24 | 8053 | macros/latex/contrib/stex/doc/packages/stex-document-structure.tex
+2022/09/08 | 8805 | macros/latex/contrib/stex/doc/packages/stex-features.tex
+2022/09/07 | 3975 | macros/latex/contrib/stex/doc/packages/stex-hwexam.tex
+2022/09/10 | 2550 | macros/latex/contrib/stex/doc/packages/stex-idesetup.tex
+2022/08/24 | 6194 | macros/latex/contrib/stex/doc/packages/stex-inheritance.tex
+2022/09/09 | 1171 | macros/latex/contrib/stex/doc/packages/stex-mathhubsetup.tex
+2022/09/09 | 9886 | macros/latex/contrib/stex/doc/packages/stex-mathhub.tex
+2022/08/24 | 1546 | macros/latex/contrib/stex/doc/packages/stex-metatheory.tex
+2022/08/24 | 3238 | macros/latex/contrib/stex/doc/packages/stex-modules.tex
+2022/08/24 | 9946 | macros/latex/contrib/stex/doc/packages/stex-notesslides.tex
+2022/09/07 | 10741 | macros/latex/contrib/stex/doc/packages/stex-problem.tex
+2022/09/07 | 17503 | macros/latex/contrib/stex/doc/packages/stex-proofs.tex
+2022/08/24 | 5162 | macros/latex/contrib/stex/doc/packages/stex-references.tex
+2022/09/10 | 1796 | macros/latex/contrib/stex/doc/packages/stex-setup.tex
+2022/08/24 | 6188 | macros/latex/contrib/stex/doc/packages/stex-statements.tex
+2022/08/24 | 25445 | macros/latex/contrib/stex/doc/packages/stex-symbols.tex
+2022/08/24 | 6861 | macros/latex/contrib/stex/doc/packages/stex-terms.tex
+2022/08/24 | 2868 | macros/latex/contrib/stex/doc/packages/stex-tikzinput.tex
+2022/08/24 | 1285 | macros/latex/contrib/stex/doc/stex-abstract.tex
+2022/09/12 | 11503 | macros/latex/contrib/stex/doc/stex-docheader.tex
+2022/09/14 | 1802605 | macros/latex/contrib/stex/doc/stex-doc.pdf
+2022/09/09 | 5782 | macros/latex/contrib/stex/doc/stex-doc.tex
+2022/09/14 | 378968 | macros/latex/contrib/stex/doc/stex-ide.pdf
+2022/09/10 | 4181 | macros/latex/contrib/stex/doc/stex-ide.tex
+2022/09/14 | 1121031 | macros/latex/contrib/stex/doc/stex-manual.pdf
+2022/09/10 | 22403 | macros/latex/contrib/stex/doc/stex-manual.tex
+2022/08/24 | 16283 | macros/latex/contrib/stex/doc/stex-tutorial.tex
+2022/08/24 | 156 | macros/latex/contrib/stex/Makefile
+2022/08/24 | 4585 | macros/latex/contrib/stex/README.md
+2022/09/14 | 17403 | macros/latex/contrib/stex/source/extensions/document-structure.dtx
+2022/09/14 | 16674 | macros/latex/contrib/stex/source/extensions/hwexam.dtx
+2022/08/24 | 368 | macros/latex/contrib/stex/source/extensions/Makefile
+2022/09/14 | 28055 | macros/latex/contrib/stex/source/extensions/notesslides.dtx
+2022/09/14 | 25246 | macros/latex/contrib/stex/source/extensions/problem.dtx
+2022/08/24 | 1116 | macros/latex/contrib/stex/source/extensions/stex-extensions.ins
+2022/09/14 | 6328 | macros/latex/contrib/stex/source/extensions/tikzinput.dtx
+2022/08/24 | 162 | macros/latex/contrib/stex/source/Makefile
+2022/08/24 | 362 | macros/latex/contrib/stex/source/stex/Makefile
+2022/09/14 | 18536 | macros/latex/contrib/stex/source/stex/stex-basics.dtx
+2022/09/13 | 38807 | macros/latex/contrib/stex/source/stex/stex-features.dtx
+2022/09/13 | 23081 | macros/latex/contrib/stex/source/stex/stex-inheritance.dtx
+2022/08/24 | 1215 | macros/latex/contrib/stex/source/stex/stex.ins
+2022/08/24 | 30392 | macros/latex/contrib/stex/source/stex/stex-mathhub.dtx
+2022/08/24 | 6582 | macros/latex/contrib/stex/source/stex/stex-metatheory.dtx
+2022/08/25 | 28889 | macros/latex/contrib/stex/source/stex/stex-modules.dtx
+2022/08/24 | 2517 | macros/latex/contrib/stex/source/stex/stex-others.dtx
+2022/08/24 | 15013 | macros/latex/contrib/stex/source/stex/stex-proofs.dtx
+2022/09/09 | 23034 | macros/latex/contrib/stex/source/stex/stex-references.dtx
+2022/09/08 | 29335 | macros/latex/contrib/stex/source/stex/stex-statements.dtx
+2022/09/12 | 50685 | macros/latex/contrib/stex/source/stex/stex-symbols.dtx
+2022/08/24 | 34344 | macros/latex/contrib/stex/source/stex/stex-terms.dtx
+2022/09/09 | 3823 | macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty
+2022/08/24 | 896 | macros/latex/contrib/stex/tex/etc/hwexam-default.header
+2022/08/24 | 1826 | macros/latex/contrib/stex/tex/etc/lststex.sty
+2022/08/24 | 1825 | macros/latex/contrib/stex/tex/etc/rustex.sty
+2022/08/24 | 1332 | macros/latex/contrib/stex/tex/etc/stex-backend-latexml.cfg
+2022/08/24 | 431 | macros/latex/contrib/stex/tex/etc/stex-backend-pdflatex.cfg
+2022/08/24 | 1717 | macros/latex/contrib/stex/tex/etc/stex-backend-rustex.cfg
+2022/08/24 | 479 | macros/latex/contrib/stex/tex/etc/stex-backend-tex4ht.cfg
+2022/08/24 | 201 | macros/latex/contrib/stex/tex/etc/stex-logo.sty
+2022/08/24 | 2837 | macros/latex/contrib/stex/tex/etc/stexthm.sty
+2022/08/24 | 5083 | macros/latex/contrib/stex/tex/img/stex-cc-by-sa.png
+2022/08/24 | 1082 | macros/latex/contrib/stex/tex/img/stex-cc_somerights.png
+2022/08/24 | 2117 | macros/latex/contrib/stex/tex/img/stex-dangerous-bend.png
+2022/08/24 | 26566 | macros/latex/contrib/stex/tex/img/sTeX-logo.png
+2022/08/24 | 594 | macros/latex/contrib/stex/tex/ldf/document-structure-ngerman.ldf
+2022/08/24 | 840 | macros/latex/contrib/stex/tex/ldf/hwexam-finnish.ldf
+2022/08/24 | 786 | macros/latex/contrib/stex/tex/ldf/hwexam-french.ldf
+2022/08/24 | 811 | macros/latex/contrib/stex/tex/ldf/hwexam-ngerman.ldf
+2022/08/24 | 1005 | macros/latex/contrib/stex/tex/ldf/hwexam-russian.ldf
+2022/08/24 | 474 | macros/latex/contrib/stex/tex/ldf/problem-finnish.ldf
+2022/08/24 | 478 | macros/latex/contrib/stex/tex/ldf/problem-french.ldf
+2022/08/24 | 591 | macros/latex/contrib/stex/tex/ldf/problem-ngerman.ldf
+2022/08/24 | 546 | macros/latex/contrib/stex/tex/ldf/problem-russian.ldf
+2022/08/24 | 499 | macros/latex/contrib/stex/tex/ldf/sproof-finnish.ldf
+2022/08/24 | 524 | macros/latex/contrib/stex/tex/ldf/sproof-french.ldf
+2022/08/24 | 434 | macros/latex/contrib/stex/tex/ldf/sproof-ngerman.ldf
+2022/08/24 | 489 | macros/latex/contrib/stex/tex/ldf/sproof-russian.ldf
+2022/09/14 | 3473175 | macros/latex/contrib/stex.zip
2011/12/21 | 746 | macros/latex/contrib/storebox/README
2011/12/21 | 23894 | macros/latex/contrib/storebox/storebox.dtx
2011/12/21 | 246 | macros/latex/contrib/storebox/storebox.ins
@@ -237602,6 +237611,12 @@
2020/02/16 | 2024 | macros/luatex/latex/luatodonotes/path_point.lua
2020/02/16 | 1114 | macros/luatex/latex/luatodonotes/README.md
2020/02/17 | 254567 | macros/luatex/latex/luatodonotes.zip
+2022/09/14 | 346 | macros/luatex/latex/luatruthtable/luatruthtable.bib
+2022/09/14 | 119179 | macros/luatex/latex/luatruthtable/luatruthtable.pdf
+2022/09/14 | 5321 | macros/luatex/latex/luatruthtable/luatruthtable.sty
+2022/09/14 | 17200 | macros/luatex/latex/luatruthtable/luatruthtable.tex
+2022/09/14 | 1383 | macros/luatex/latex/luatruthtable/README.txt
+2022/09/14 | 101504 | macros/luatex/latex/luatruthtable.zip
2021/06/02 | 16794 | macros/luatex/latex/lua-typo/doc/lua-typo-demo.pdf
2021/06/02 | 2997 | macros/luatex/latex/lua-typo/doc/lua-typo-demo.tex
2021/06/02 | 64171 | macros/luatex/latex/lua-typo/doc/lua-typo-fr.pdf
@@ -237789,6 +237804,14 @@
2012/02/06 | 135018 | macros/luatex/latex/pgfmolbio/SampleScf.scf
2012/03/09 | 867 | macros/luatex/latex/pgfmolbio/SampleUniprot.txt
2013/07/31 | 923987 | macros/luatex/latex/pgfmolbio.zip
+2022/09/14 | 25771 | macros/luatex/latex/piton/piton.dtx
+2022/09/14 | 151124 | macros/luatex/latex/piton/piton-french.pdf
+2022/09/14 | 13185 | macros/luatex/latex/piton/piton-french.tex
+2022/08/26 | 1430 | macros/luatex/latex/piton/piton.ins
+2022/09/13 | 14903 | macros/luatex/latex/piton/piton.lua
+2022/09/14 | 223287 | macros/luatex/latex/piton/piton.pdf
+2022/08/31 | 855 | macros/luatex/latex/piton/README.md
+2022/09/14 | 306392 | macros/luatex/latex/piton.zip
2017/08/26 | 36035 | macros/luatex/latex/placeat/placeat.dtx
2017/08/26 | 4438 | macros/luatex/latex/placeat/placeat.lua
2017/08/26 | 97006 | macros/luatex/latex/placeat/placeat.pdf
@@ -282350,8 +282373,8 @@
2021/10/22 | 94164 | systems/texlive/tlnet/archive/c90.doc.r60830.tar.xz
2021/10/22 | 1924 | systems/texlive/tlnet/archive/c90.r60830.tar.xz
2021/10/22 | 9824 | systems/texlive/tlnet/archive/c90.source.r60830.tar.xz
-2020/07/23 | 49180 | systems/texlive/tlnet/archive/cabin.doc.r55907.tar.xz
-2020/07/23 | 2896420 | systems/texlive/tlnet/archive/cabin.r55907.tar.xz
+2022/09/14 | 229840 | systems/texlive/tlnet/archive/cabin.doc.r64371.tar.xz
+2022/09/14 | 2896396 | systems/texlive/tlnet/archive/cabin.r64371.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/cachepic.aarch64-linux.r46208.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/cachepic.amd64-freebsd.r16472.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/cachepic.amd64-netbsd.r30191.tar.xz
@@ -282818,8 +282841,8 @@
2022/01/24 | 386944 | systems/texlive/tlnet/archive/cleveref.doc.r61719.tar.xz
2022/01/24 | 28472 | systems/texlive/tlnet/archive/cleveref.r61719.tar.xz
2022/01/24 | 77476 | systems/texlive/tlnet/archive/cleveref.source.r61719.tar.xz
-2021/09/19 | 260244 | systems/texlive/tlnet/archive/clicks.doc.r60539.tar.xz
-2021/09/19 | 1548 | systems/texlive/tlnet/archive/clicks.r60539.tar.xz
+2022/09/14 | 263640 | systems/texlive/tlnet/archive/clicks.doc.r64374.tar.xz
+2022/09/14 | 1592 | systems/texlive/tlnet/archive/clicks.r64374.tar.xz
2019/02/28 | 161528 | systems/texlive/tlnet/archive/clipboard.doc.r47747.tar.xz
2019/02/28 | 1028 | systems/texlive/tlnet/archive/clipboard.r47747.tar.xz
2022/01/31 | 667032 | systems/texlive/tlnet/archive/clistmap.doc.r61811.tar.xz
@@ -282994,7 +283017,7 @@
2022/06/21 | 1616 | systems/texlive/tlnet/archive/collection-mathscience.r63667.tar.xz
2021/06/10 | 548 | systems/texlive/tlnet/archive/collection-metapost.r59531.tar.xz
2021/02/24 | 476 | systems/texlive/tlnet/archive/collection-music.r57878.tar.xz
-2022/08/27 | 1536 | systems/texlive/tlnet/archive/collection-pictures.r64199.tar.xz
+2022/09/14 | 1544 | systems/texlive/tlnet/archive/collection-pictures.r64373.tar.xz
2022/08/14 | 968 | systems/texlive/tlnet/archive/collection-plaingeneric.r64113.tar.xz
2021/12/17 | 812 | systems/texlive/tlnet/archive/collection-pstricks.r61329.tar.xz
2022/09/10 | 1640 | systems/texlive/tlnet/archive/collection-publishers.r64324.tar.xz
@@ -283330,9 +283353,9 @@
2019/02/28 | 468 | systems/texlive/tlnet/archive/crossrefware.x86_64-linuxmusl.r46840.tar.xz
2019/02/28 | 460 | systems/texlive/tlnet/archive/crossrefware.x86_64-linux.r45927.tar.xz
2019/02/28 | 468 | systems/texlive/tlnet/archive/crossrefware.x86_64-solaris.r45927.tar.xz
-2020/05/26 | 338744 | systems/texlive/tlnet/archive/crossword.doc.r55271.tar.xz
-2020/05/26 | 4232 | systems/texlive/tlnet/archive/crossword.r55271.tar.xz
-2020/05/26 | 15664 | systems/texlive/tlnet/archive/crossword.source.r55271.tar.xz
+2022/09/14 | 338704 | systems/texlive/tlnet/archive/crossword.doc.r64375.tar.xz
+2022/09/14 | 4236 | systems/texlive/tlnet/archive/crossword.r64375.tar.xz
+2022/09/14 | 15656 | systems/texlive/tlnet/archive/crossword.source.r64375.tar.xz
2019/02/28 | 215628 | systems/texlive/tlnet/archive/crosswrd.doc.r16896.tar.xz
2019/02/28 | 3616 | systems/texlive/tlnet/archive/crosswrd.r16896.tar.xz
2019/02/28 | 19500 | systems/texlive/tlnet/archive/crosswrd.source.r16896.tar.xz
@@ -286952,9 +286975,9 @@
2019/02/28 | 313268 | systems/texlive/tlnet/archive/langcode.doc.r27764.tar.xz
2019/02/28 | 3032 | systems/texlive/tlnet/archive/langcode.r27764.tar.xz
2019/02/28 | 2064 | systems/texlive/tlnet/archive/langcode.source.r27764.tar.xz
-2022/08/28 | 212772 | systems/texlive/tlnet/archive/langnames.doc.r64209.tar.xz
-2022/08/28 | 91112 | systems/texlive/tlnet/archive/langnames.r64209.tar.xz
-2022/08/28 | 4064 | systems/texlive/tlnet/archive/langnames.source.r64209.tar.xz
+2022/09/14 | 114752 | systems/texlive/tlnet/archive/langnames.doc.r64376.tar.xz
+2022/09/14 | 137980 | systems/texlive/tlnet/archive/langnames.r64376.tar.xz
+2022/09/14 | 6200 | systems/texlive/tlnet/archive/langnames.source.r64376.tar.xz
2020/07/16 | 112560 | systems/texlive/tlnet/archive/langsci-avm.doc.r55846.tar.xz
2020/07/16 | 3360 | systems/texlive/tlnet/archive/langsci-avm.r55846.tar.xz
2020/07/16 | 11436 | systems/texlive/tlnet/archive/langsci-avm.source.r55846.tar.xz
@@ -288257,8 +288280,8 @@
2019/02/28 | 104804 | systems/texlive/tlnet/archive/mdwtools.source.r15878.tar.xz
2021/08/29 | 221844 | systems/texlive/tlnet/archive/mecaso.doc.r60346.tar.xz
2021/08/29 | 2832 | systems/texlive/tlnet/archive/mecaso.r60346.tar.xz
-2022/08/13 | 126492 | systems/texlive/tlnet/archive/media4svg.doc.r64107.tar.xz
-2022/08/13 | 7824 | systems/texlive/tlnet/archive/media4svg.r64107.tar.xz
+2022/09/14 | 128748 | systems/texlive/tlnet/archive/media4svg.doc.r64377.tar.xz
+2022/09/14 | 8432 | systems/texlive/tlnet/archive/media4svg.r64377.tar.xz
2022/08/05 | 3637360 | systems/texlive/tlnet/archive/media9.doc.r64047.tar.xz
2022/08/05 | 1895928 | systems/texlive/tlnet/archive/media9.r64047.tar.xz
2022/08/05 | 1776700 | systems/texlive/tlnet/archive/media9.source.r64047.tar.xz
@@ -290166,8 +290189,8 @@
2019/02/28 | 317360 | systems/texlive/tlnet/archive/ppr-prv.doc.r15878.tar.xz
2019/02/28 | 5596 | systems/texlive/tlnet/archive/ppr-prv.r15878.tar.xz
2019/02/28 | 9460 | systems/texlive/tlnet/archive/ppr-prv.source.r15878.tar.xz
-2022/09/13 | 225672 | systems/texlive/tlnet/archive/ppt-slides.doc.r64348.tar.xz
-2022/09/13 | 2772 | systems/texlive/tlnet/archive/ppt-slides.r64348.tar.xz
+2022/09/14 | 225712 | systems/texlive/tlnet/archive/ppt-slides.doc.r64378.tar.xz
+2022/09/14 | 2860 | systems/texlive/tlnet/archive/ppt-slides.r64378.tar.xz
2022/01/24 | 386136 | systems/texlive/tlnet/archive/pracjourn.doc.r61719.tar.xz
2022/01/24 | 4628 | systems/texlive/tlnet/archive/pracjourn.r61719.tar.xz
2022/01/24 | 15248 | systems/texlive/tlnet/archive/pracjourn.source.r61719.tar.xz
@@ -290798,8 +290821,8 @@
2020/04/28 | 9792 | systems/texlive/tlnet/archive/quantikz.r54911.tar.xz
2022/04/06 | 1271516 | systems/texlive/tlnet/archive/quantumarticle.doc.r62944.tar.xz
2022/04/06 | 24760 | systems/texlive/tlnet/archive/quantumarticle.r62944.tar.xz
-2020/08/02 | 142552 | systems/texlive/tlnet/archive/quattrocento.doc.r56020.tar.xz
-2020/08/02 | 729188 | systems/texlive/tlnet/archive/quattrocento.r56020.tar.xz
+2022/09/14 | 147688 | systems/texlive/tlnet/archive/quattrocento.doc.r64372.tar.xz
+2022/09/14 | 729176 | systems/texlive/tlnet/archive/quattrocento.r64372.tar.xz
2019/02/28 | 181576 | systems/texlive/tlnet/archive/quicktype.doc.r42183.tar.xz
2019/02/28 | 1024 | systems/texlive/tlnet/archive/quicktype.r42183.tar.xz
2019/10/04 | 212988 | systems/texlive/tlnet/archive/quiz2socrative.doc.r52276.tar.xz
@@ -292332,7 +292355,7 @@
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz
-2022/09/13 | 420856 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64355.tar.xz
+2022/09/14 | 420868 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64369.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz
2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz
@@ -292356,7 +292379,7 @@
2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz
-2022/09/13 | 113660 | systems/texlive/tlnet/archive/texlive-scripts.r64355.tar.xz
+2022/09/14 | 113672 | systems/texlive/tlnet/archive/texlive-scripts.r64369.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2022/04/19 | 36296 | systems/texlive/tlnet/archive/texlive-scripts.win32.r63068.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -293662,6 +293685,8 @@
2022/03/05 | 85536 | systems/texlive/tlnet/archive/web.x86_64-linuxmusl.r62389.tar.xz
2022/03/05 | 78992 | systems/texlive/tlnet/archive/web.x86_64-linux.r62389.tar.xz
2022/03/05 | 86880 | systems/texlive/tlnet/archive/web.x86_64-solaris.r62391.tar.xz
+2022/09/14 | 663212 | systems/texlive/tlnet/archive/wheelchart.doc.r64373.tar.xz
+2022/09/14 | 4700 | systems/texlive/tlnet/archive/wheelchart.r64373.tar.xz
2020/01/16 | 465604 | systems/texlive/tlnet/archive/widetable.doc.r53409.tar.xz
2020/01/16 | 1468 | systems/texlive/tlnet/archive/widetable.r53409.tar.xz
2020/01/16 | 9224 | systems/texlive/tlnet/archive/widetable.source.r53409.tar.xz
@@ -294189,16 +294214,16 @@
2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz
2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz
2022/07/17 | 124404 | systems/texlive/tlnet/install-tl
-2022/09/13 | 5831864 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2022/09/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2022/09/13 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/09/14 | 5831810 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/09/14 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/09/14 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2021/04/11 | 4945 | systems/texlive/tlnet/install-tl-windows.bat
-2022/09/13 | 20437696 | systems/texlive/tlnet/install-tl-windows.exe
-2022/09/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2022/09/13 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/09/13 | 25516567 | systems/texlive/tlnet/install-tl.zip
-2022/09/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2022/09/13 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/09/14 | 20436234 | systems/texlive/tlnet/install-tl-windows.exe
+2022/09/14 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/09/14 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/09/14 | 25516585 | systems/texlive/tlnet/install-tl.zip
+2022/09/14 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/09/14 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2022/04/03 | 1229 | systems/texlive/tlnet/README.md
2022/04/03 | 0 | systems/texlive/tlnet/TEXLIVE_2022
2022/02/28 | 7791 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -294208,7 +294233,7 @@
2022/02/28 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2022/09/12 | 49769 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2022/09/12 | 7252 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2022/09/13 | 7279 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/07/21 | 222477 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt
2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe
2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt
@@ -294251,12 +294276,12 @@
2021/05/16 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2021/12/21 | 27582 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2022/09/13 | 17632414 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2022/09/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/09/14 | 17633572 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/09/14 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2022/04/18 | 86658 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2022/09/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2022/09/13 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/09/13 | 2404424 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/09/14 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/09/14 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/09/14 | 2406196 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2021/12/21 | 58848 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2022/08/01 | 42206 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2021/12/21 | 16130 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -299599,7 +299624,7 @@
2020/10/03 | 318630 | systems/win32/miktex/tm/packages/filehook.tar.lzma
2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma
2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma
-2022/09/13 | 662791 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/09/14 | 662791 | systems/win32/miktex/tm/packages/files.csv.lzma
2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma
2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma
2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma
@@ -301294,9 +301319,9 @@
2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma
2022/07/26 | 39695 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma
2022/08/27 | 43640 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/09/13 | 293378 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/09/13 | 1492298 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/09/13 | 1372041 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/09/14 | 293317 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/09/14 | 1492215 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/09/14 | 1372824 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
2022/07/26 | 13519 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma
2022/08/27 | 14450 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma
2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma
@@ -301541,102 +301566,102 @@
2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma
2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma
2021/03/17 | 232249 | systems/win32/miktex/tm/packages/newverbs.tar.lzma
-2022/09/13 | 662652 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2022/09/13 | 57317 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2022/09/13 | 1161751 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2022/09/13 | 31586 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/09/13 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/09/13 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2022/09/13 | 95467 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2022/09/13 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/09/13 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2022/09/13 | 394142 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2022/09/13 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2022/09/13 | 57504 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/09/13 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2022/09/13 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
-2022/09/13 | 103246 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2022/09/13 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2022/09/13 | 481894 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/09/13 | 52037 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2022/09/13 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2022/09/13 | 45794 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/09/13 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2022/09/13 | 1458152 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2022/09/13 | 112980 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2022/09/13 | 48851 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/09/13 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2022/09/13 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2022/09/13 | 155429 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2022/09/13 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2022/09/13 | 81448 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2022/09/13 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2022/09/13 | 25119 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2022/09/13 | 112880 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2022/09/13 | 73264 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/09/13 | 115580 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2022/09/13 | 43888 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/09/13 | 565080 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2022/09/13 | 247206 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
-2022/09/13 | 169677 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2022/09/13 | 109650 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2022/09/13 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2022/09/13 | 30571 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2022/09/13 | 682215 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/09/13 | 599102 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2022/09/13 | 527564 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/09/13 | 103596 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2022/09/13 | 2023134 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2022/09/13 | 74098 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2022/09/13 | 32073 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2022/09/13 | 8825 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2022/09/13 | 209138 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2022/09/13 | 286684 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2022/09/13 | 104920 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2022/09/13 | 140010 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2022/09/13 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2022/09/13 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2022/09/13 | 55320 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2022/09/13 | 35230 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2022/09/13 | 43617 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/09/13 | 48037 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2022/09/13 | 52368 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/09/13 | 213848 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2022/09/13 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
-2022/09/13 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2022/09/13 | 203419 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2022/09/13 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2022/09/13 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2022/09/13 | 1323743 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2022/09/13 | 23949 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2022/09/13 | 37503 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/09/13 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/09/13 | 58632 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2022/09/13 | 769652 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2022/09/13 | 1503055 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2022/09/13 | 52627 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2022/09/13 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2022/09/13 | 27463 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2022/09/13 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/09/13 | 70940 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2022/09/13 | 173176 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2022/09/13 | 68147 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2022/09/13 | 107437 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/09/13 | 2821670 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2022/09/13 | 62358 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2022/09/13 | 41191 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2022/09/13 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2022/09/13 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/09/13 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/09/13 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2022/09/13 | 630434 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2022/09/13 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/09/13 | 293345 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/09/13 | 1490445 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2022/09/13 | 1371925 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2022/09/13 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/09/14 | 662652 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/09/14 | 57318 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/09/14 | 1161753 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/09/14 | 31588 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/09/14 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/09/14 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/09/14 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/09/14 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/09/14 | 31563 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/09/14 | 394143 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/09/14 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/09/14 | 57505 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/09/14 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/09/14 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/09/14 | 103246 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2022/09/14 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/09/14 | 481894 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/09/14 | 52037 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/09/14 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/09/14 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/09/14 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/09/14 | 1458151 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/09/14 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/09/14 | 48852 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/09/14 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/09/14 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/09/14 | 155431 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/09/14 | 79063 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/09/14 | 81448 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/09/14 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/09/14 | 25118 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/09/14 | 112879 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/09/14 | 73264 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/09/14 | 115578 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/09/14 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/09/14 | 565076 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/09/14 | 247209 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2022/09/14 | 169678 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/09/14 | 109650 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/09/14 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/09/14 | 30568 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/09/14 | 682215 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/09/14 | 599107 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/09/14 | 527569 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/09/14 | 103598 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/09/14 | 2023133 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/09/14 | 74099 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/09/14 | 32074 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/09/14 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/09/14 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/09/14 | 286684 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/09/14 | 104922 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/09/14 | 140014 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/09/14 | 325484 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/09/14 | 181723 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/09/14 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/09/14 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/09/14 | 43618 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/09/14 | 48038 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/09/14 | 52369 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/09/14 | 213847 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/09/14 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/09/14 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/09/14 | 203419 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/09/14 | 245152 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/09/14 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/09/14 | 1323744 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/09/14 | 23951 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/09/14 | 37503 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/09/14 | 72978 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/09/14 | 58632 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/09/14 | 769651 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/09/14 | 1503053 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/09/14 | 52628 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/09/14 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/09/14 | 27465 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/09/14 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/09/14 | 70938 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/09/14 | 173177 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/09/14 | 68145 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/09/14 | 107437 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/09/14 | 2821670 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/09/14 | 62359 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/09/14 | 41191 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/09/14 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/09/14 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/09/14 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/09/14 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/09/14 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/09/14 | 43527 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/09/14 | 293274 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/09/14 | 1490369 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/09/14 | 1371656 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/09/14 | 14433 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma
-2022/09/13 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/09/14 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma
2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma
2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma
@@ -302128,7 +302153,7 @@
2022/02/22 | 6917 | systems/win32/miktex/tm/packages/preview.tar.lzma
2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma
2021/04/23 | 274028 | systems/win32/miktex/tm/packages/principia.tar.lzma
-2022/09/13 | 974 | systems/win32/miktex/tm/packages/pr.ini
+2022/09/14 | 974 | systems/win32/miktex/tm/packages/pr.ini
2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma
2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma
2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma
@@ -304100,7 +304125,7 @@
2004/06/04 | 404 | tds/tds.sed
2004/06/23 | 65418 | tds/tds.tex
2019/05/29 | 304264 | tds.zip
-2022/09/14 | 186 | timestamp
+2022/09/15 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2022/02/28 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index 2c41d2a91a..57417cbfaf 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index cb0fa9cacb..c9abf4611e 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,59 +1,455 @@
+2022/09/14 | 974 | systems/win32/miktex/tm/packages/pr.ini
+2022/09/14 | 97323 | macros/latex/contrib/fixdif/fixdif.pdf
+2022/09/14 | 970564 | install/macros/jptex/latex/jsclasses.tds.zip
+2022/09/14 | 959 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty
+2022/09/14 | 95602 | macros/latex/contrib/asmeconf/asmeconf.cls
+2022/09/14 | 954 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex
+2022/09/14 | 95469 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/09/14 | 951 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty
+2022/09/14 | 9407 | macros/latex/contrib/beamer/base/beamerbasedecode.sty
+2022/09/14 | 9134 | macros/latex/contrib/beamer/doc/beamerug-graphics.tex
+2022/09/14 | 902 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty
+2022/09/14 | 8974 | macros/latex/contrib/beamer/base/beamerbaseframesize.sty
+2022/09/14 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/09/14 | 884385 | macros/jptex/latex/jsclasses.zip
+2022/09/14 | 8826 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/09/14 | 8788 | fonts/alegreya/latex/Alegreya.sty
+2022/09/14 | 8662 | macros/jptex/latex/jsclasses/jsverb.dtx
+2022/09/14 | 861 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpg
+2022/09/14 | 856 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty
+2022/09/14 | 853 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty
+2022/09/14 | 8522 | macros/latex/contrib/beamer/doc/beameruserguide.tex
+2022/09/14 | 8440 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex
+2022/09/14 | 8432 | systems/texlive/tlnet/archive/media4svg.r64377.tar.xz
+2022/09/14 | 835 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty
+2022/09/14 | 8317 | macros/latex/contrib/beamer/doc/beamerug-tricks.tex
+2022/09/14 | 8313 | macros/latex/contrib/beamer/base/beamerbasemisc.sty
+2022/09/14 | 8300 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex
+2022/09/14 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/09/14 | 823 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty
+2022/09/14 | 81448 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/09/14 | 7986 | macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex
+2022/09/14 | 790 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty
+2022/09/14 | 79063 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/09/14 | 787 | macros/latex/contrib/fixdif/README.md
+2022/09/14 | 78734 | macros/jptex/latex/jsclasses/jslogo.pdf
+2022/09/14 | 7755 | macros/latex/contrib/beamer/base/beamerbasetoc.sty
+2022/09/14 | 77479 | macros/jptex/latex/jsclasses/jsverb.pdf
+2022/09/14 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/09/14 | 769651 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/09/14 | 76557 | macros/latex/contrib/beamer/doc/beamerug-frames.tex
+2022/09/14 | 7574 | macros/latex/contrib/beamer/base/beamerbasemodes.sty
+2022/09/14 | 7558 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex
+2022/09/14 | 7530 | macros/latex/contrib/beamer/CHANGELOG.md
+2022/09/14 | 74099 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/09/14 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/09/14 | 7355 | macros/latex/contrib/beamer/base/beamerbaseboxes.sty
+2022/09/14 | 73264 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/09/14 | 72978 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/09/14 | 729176 | systems/texlive/tlnet/archive/quattrocento.r64372.tar.xz
+2022/09/14 | 7266 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
+2022/09/14 | 720 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty
+2022/09/14 | 716 | macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex
+2022/09/14 | 7162 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
+2022/09/14 | 709 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty
+2022/09/14 | 70938 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/09/14 | 708693835 | install/fonts.zip
+2022/09/14 | 7068 | macros/latex/contrib/csquotes/csquotes.cfg
+2022/09/14 | 702 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty
+2022/09/14 | 701 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty
+2022/09/14 | 6910 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
+2022/09/14 | 6858 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex
+2022/09/14 | 682215 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/09/14 | 68145 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/09/14 | 671 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty
+2022/09/14 | 663212 | systems/texlive/tlnet/archive/wheelchart.doc.r64373.tar.xz
+2022/09/14 | 662791 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/09/14 | 662652 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/09/14 | 6578 | macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty
+2022/09/14 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/09/14 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/09/14 | 637 | macros/latex/contrib/beamer/base/beamerbasetranslator.sty
+2022/09/14 | 63540 | macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
+2022/09/14 | 6328 | macros/latex/contrib/stex/source/extensions/tikzinput.dtx
+2022/09/14 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/09/14 | 6319 | macros/latex/contrib/beamer/doc/beamerug-installation.tex
+2022/09/14 | 630433 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/09/14 | 62761 | macros/latex/contrib/csquotes/csquotes.sty
+2022/09/14 | 62359 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/09/14 | 6217 | macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty
+2022/09/14 | 6200 | systems/texlive/tlnet/archive/langnames.source.r64376.tar.xz
+2022/09/14 | 613 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpg
+2022/09/14 | 6126 | macros/jptex/latex/jsclasses/okuverb.dtx
+2022/09/14 | 61261 | macros/jptex/latex/jsclasses/okuverb.pdf
+2022/09/14 | 6039 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex
+2022/09/14 | 599902 | macros/latex/contrib/asmeconf/asmeconf-template.pdf
+2022/09/14 | 599107 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/09/14 | 5966 | macros/latex/contrib/beamer/base/emulation/beamerprosper.sty
+2022/09/14 | 594 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty
+2022/09/14 | 58632 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/09/14 | 5831810 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/09/14 | 582 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty
+2022/09/14 | 580 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty
+2022/09/14 | 5753 | macros/latex/contrib/beamer/base/beamerbasetemplates.sty
+2022/09/14 | 57505 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/09/14 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/09/14 | 57318 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/09/14 | 5712 | macros/latex/contrib/beamer/base/beamerbasenotes.sty
+2022/09/14 | 569 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty
+2022/09/14 | 565076 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/09/14 | 561 | macros/jptex/latex/jsclasses/jsclasses.ins
+2022/09/14 | 558 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty
+2022/09/14 | 557 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty
+2022/09/14 | 55319 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/09/14 | 5514 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex
+2022/09/14 | 5492 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex
+2022/09/14 | 547609 | macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
+2022/09/14 | 5356 | macros/latex/contrib/beamer/base/beamerbasetitle.sty
+2022/09/14 | 5321 | macros/luatex/latex/luatruthtable/luatruthtable.sty
+2022/09/14 | 527569 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/09/14 | 52628 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/09/14 | 5252 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty
+2022/09/14 | 52369 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/09/14 | 52037 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/09/14 | 51776 | macros/latex/contrib/beamer/base/art/beamericononline.eps
+2022/09/14 | 5103 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty
+2022/09/14 | 5073 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex
+2022/09/14 | 504 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty
+2022/09/14 | 501 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty
+2022/09/14 | 490 | macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex
+2022/09/14 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/09/14 | 48852 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/09/14 | 486 | macros/latex/contrib/beamer/doc/beamerthemeexample.tex
+2022/09/14 | 485 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty
+2022/09/14 | 482 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty
+2022/09/14 | 481894 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/09/14 | 48038 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/09/14 | 471 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpg
+2022/09/14 | 471 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty
+2022/09/14 | 4700 | systems/texlive/tlnet/archive/wheelchart.r64373.tar.xz
+2022/09/14 | 464 | macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex
+2022/09/14 | 462 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty
+2022/09/14 | 459 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty
+2022/09/14 | 45795 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/09/14 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/09/14 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/09/14 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/09/14 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/09/14 | 4548 | macros/latex/contrib/beamer/base/beamerbasetheorems.sty
+2022/09/14 | 4527138 | macros/latex/contrib/asmeconf.zip
+2022/09/14 | 441714 | macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
+2022/09/14 | 43889 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/09/14 | 4373 | macros/latex/contrib/beamer/doc/beamerug-transparencies.tex
+2022/09/14 | 4371 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty
+2022/09/14 | 43618 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/09/14 | 435 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpg
+2022/09/14 | 43527 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/09/14 | 433 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty
+2022/09/14 | 43311 | macros/latex/contrib/asmeconf/asmeconf-template.tex
+2022/09/14 | 431 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty
+2022/09/14 | 426004 | macros/jptex/latex/jsclasses/jsclasses.pdf
+2022/09/14 | 425 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty
+2022/09/14 | 4252 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty
+2022/09/14 | 4236 | systems/texlive/tlnet/archive/crossword.r64375.tar.xz
+2022/09/14 | 4236 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty
+2022/09/14 | 420868 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64369.tar.xz
+2022/09/14 | 41261 | macros/latex/contrib/beamer/doc/beamerug-guidelines.tex
+2022/09/14 | 41191 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/09/14 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/09/14 | 40947 | macros/jptex/latex/jsclasses/okumacro.dtx
+2022/09/14 | 407 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty
+2022/09/14 | 407 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty
+2022/09/14 | 40720 | macros/latex/contrib/beamer/doc/beamerug-license.tex
+2022/09/14 | 40596 | macros/latex/contrib/beamer/doc/beamerug-overlays.tex
+2022/09/14 | 403 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty
+2022/09/14 | 402 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty
+2022/09/14 | 4026 | macros/latex/contrib/beamer/base/beamerbaseverbatim.sty
+2022/09/14 | 401 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty
+2022/09/14 | 39707 | macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex
+2022/09/14 | 396 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty
+2022/09/14 | 394143 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/09/14 | 393 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md
+2022/09/14 | 393 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty
+2022/09/14 | 391 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty
+2022/09/14 | 3915 | fonts/atkinson/latex/atkinson.sty
+2022/09/14 | 390 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty
+2022/09/14 | 38525814 | install/fonts/alegreya.tds.zip
+2022/09/14 | 38168092 | fonts/alegreya.zip
+2022/09/14 | 380 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex
+2022/09/14 | 38084 | macros/latex/contrib/asmeconf/asmeconf.bst
+2022/09/14 | 3803 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty
+2022/09/14 | 378 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty
+2022/09/14 | 378968 | macros/latex/contrib/stex/doc/stex-ide.pdf
+2022/09/14 | 3753 | macros/latex/contrib/csquotes/csq-compat.def
+2022/09/14 | 37503 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/09/14 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/09/14 | 36306 | macros/latex/contrib/beamer/doc/beamerug-color.tex
+2022/09/14 | 3615 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty
+2022/09/14 | 35658 | macros/latex/contrib/beamer/doc/beamerug-animations.tex
+2022/09/14 | 355 | macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty
+2022/09/14 | 3531833 | macros/latex/contrib/beamer.zip
+2022/09/14 | 3528768 | install/macros/latex/contrib/beamer.tds.zip
+2022/09/14 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/09/14 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/09/14 | 35231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/09/14 | 351 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty
+2022/09/14 | 351 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty
+2022/09/14 | 349032 | install/macros/latex/contrib/csquotes.tds.zip
+2022/09/14 | 348574 | macros/latex/contrib/csquotes.zip
+2022/09/14 | 3473175 | macros/latex/contrib/stex.zip
+2022/09/14 | 346 | macros/luatex/latex/luatruthtable/luatruthtable.bib
+2022/09/14 | 3464 | macros/latex/contrib/beamer/base/art/beamericonarticle.tex
+2022/09/14 | 3444 | macros/latex/contrib/beamer/doc/licenses/manifest-code.txt
+2022/09/14 | 343911 | macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
+2022/09/14 | 342 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex
+2022/09/14 | 338704 | systems/texlive/tlnet/archive/crossword.doc.r64375.tar.xz
+2022/09/14 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/09/14 | 33808 | macros/latex/contrib/beamer/doc/beamerug-elements.tex
+2022/09/14 | 333 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty
+2022/09/14 | 332 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty
+2022/09/14 | 33143 | macros/latex/contrib/beamer/base/art/beamericononline.20.eps
+2022/09/14 | 3294 | macros/latex/contrib/beamer/base/beamerbasearticle.sty
+2022/09/14 | 3282 | macros/latex/contrib/csquotes/README.md
+2022/09/14 | 32823 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdf
+2022/09/14 | 32653 | macros/latex/contrib/beamer/doc/beamerug-emulation.tex
+2022/09/14 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/09/14 | 325484 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/09/14 | 32074 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/09/14 | 3179 | macros/latex/contrib/fixdif/fixdif.ins
+2022/09/14 | 31588 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/09/14 | 31563 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/09/14 | 3072 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex
+2022/09/14 | 306392 | macros/luatex/latex/piton.zip
+2022/09/14 | 30568 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/09/14 | 3049 | macros/latex/contrib/beamer/base/art/beamericonbook.tex
+2022/09/14 | 304934 | macros/latex/contrib/csquotes/csquotes.pdf
+2022/09/14 | 2961 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex
+2022/09/14 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/09/14 | 2958 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdf
+2022/09/14 | 2936 | macros/latex/contrib/beamer/base/art/beamericonarticle.pdf
+2022/09/14 | 293317 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/09/14 | 293274 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/09/14 | 2930072 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
+2022/09/14 | 29262 | macros/latex/contrib/beamer/base/beamerbasenavigation.sty
+2022/09/14 | 2896396 | systems/texlive/tlnet/archive/cabin.r64371.tar.xz
+2022/09/14 | 286684 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/09/14 | 2860 | systems/texlive/tlnet/archive/ppt-slides.r64378.tar.xz
+2022/09/14 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/09/14 | 28508 | macros/latex/contrib/beamer/base/beamerbaseoverlay.sty
+2022/09/14 | 2821670 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/09/14 | 2818 | fonts/alegreya/README
+2022/09/14 | 2811 | macros/jptex/latex/jsclasses/Makefile
+2022/09/14 | 28055 | macros/latex/contrib/stex/source/extensions/notesslides.dtx
+2022/09/14 | 2771 | macros/latex/contrib/beamer/doc/beamerug-solutions.tex
+2022/09/14 | 2765 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
+2022/09/14 | 27465 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/09/14 | 2734 | macros/latex/contrib/beamer/base/art/beamericonbook.20.pdf
+2022/09/14 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/09/14 | 268305 | macros/latex/contrib/fixdif.zip
+2022/09/14 | 2667 | macros/latex/contrib/beamer/base/art/beamericonbook.pdf
+2022/09/14 | 26603 | macros/latex/contrib/beamer/base/art/beamericonarticle.eps
+2022/09/14 | 263640 | systems/texlive/tlnet/archive/clicks.doc.r64374.tar.xz
+2022/09/14 | 2627 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex
+2022/09/14 | 26232 | macros/latex/contrib/beamer/base/beamerbasecompatibility.sty
+2022/09/14 | 25771 | macros/luatex/latex/piton/piton.dtx
+2022/09/14 | 25572 | macros/latex/contrib/beamer/base/beamerbaseframe.sty
+2022/09/14 | 25516585 | systems/texlive/tlnet/install-tl.zip
+2022/09/14 | 2529 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty
+2022/09/14 | 25246 | macros/latex/contrib/stex/source/extensions/problem.dtx
+2022/09/14 | 25118 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/09/14 | 24762 | macros/latex/contrib/beamer/base/art/beamericonbook.20.eps
+2022/09/14 | 247209 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2022/09/14 | 24611 | macros/latex/contrib/beamer/base/art/beamericononline.pdf
+2022/09/14 | 245152 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/09/14 | 24451 | macros/latex/contrib/beamer/base/art/beamericononline.20.pdf
+2022/09/14 | 24344 | macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty
+2022/09/14 | 24312 | macros/latex/contrib/beamer/doc/beamerug-tutorial.tex
+2022/09/14 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/09/14 | 240 | macros/jptex/latex/jsclasses/okumacro.ins
+2022/09/14 | 2406196 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/09/14 | 23951 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/09/14 | 236 | macros/jptex/latex/jsclasses/okuverb.ins
+2022/09/14 | 23446 | macros/latex/contrib/fixdif/fixdif.dtx
+2022/09/14 | 233 | macros/jptex/latex/jsclasses/jslogo.ins
+2022/09/14 | 232 | macros/jptex/latex/jsclasses/jsverb.ins
+2022/09/14 | 2322 | macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty
+2022/09/14 | 229840 | systems/texlive/tlnet/archive/cabin.doc.r64371.tar.xz
+2022/09/14 | 22964 | macros/latex/contrib/beamer/doc/licenses/fdl.txt
+2022/09/14 | 225712 | systems/texlive/tlnet/archive/ppt-slides.doc.r64378.tar.xz
+2022/09/14 | 223287 | macros/luatex/latex/piton/piton.pdf
+2022/09/14 | 2219543 | macros/latex/contrib/beamer/doc/beameruserguide.pdf
+2022/09/14 | 22108 | macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex
+2022/09/14 | 21994 | macros/latex/contrib/csquotes/csquotes.def
+2022/09/14 | 2190 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty
+2022/09/14 | 2144 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty
+2022/09/14 | 2141 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty
+2022/09/14 | 213847 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/09/14 | 21365 | macros/latex/contrib/beamer/doc/beamerug-fonts.tex
+2022/09/14 | 21219 | macros/latex/contrib/beamer/base/art/beamericonbook.eps
+2022/09/14 | 209139 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/09/14 | 2089 | macros/latex/contrib/beamer/doc/beamerlogo.pdf
+2022/09/14 | 2081 | fonts/atkinson/README
+2022/09/14 | 20751 | macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex
+2022/09/14 | 2045 | macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt
+2022/09/14 | 20436234 | systems/texlive/tlnet/install-tl-windows.exe
+2022/09/14 | 203419 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/09/14 | 2024 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty
+2022/09/14 | 2023133 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/09/14 | 198551 | macros/jptex/latex/jsclasses/jsclasses.dtx
+2022/09/14 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/09/14 | 19301 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex
+2022/09/14 | 19106 | macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt
+2022/09/14 | 1881 | macros/latex/contrib/beamer/base/emulation/beamerseminar.sty
+2022/09/14 | 18536 | macros/latex/contrib/stex/source/stex/stex-basics.dtx
+2022/09/14 | 18534 | macros/latex/contrib/beamer/doc/beamerug-themes.tex
+2022/09/14 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/09/14 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/09/14 | 181723 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/09/14 | 18092 | macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt
+2022/09/14 | 1808 | macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty
+2022/09/14 | 180851 | macros/jptex/latex/jsclasses/okumacro.pdf
+2022/09/14 | 1802605 | macros/latex/contrib/stex/doc/stex-doc.pdf
+2022/09/14 | 1797 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex
+2022/09/14 | 177229 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf
+2022/09/14 | 1770 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty
+2022/09/14 | 17683 | macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty
+2022/09/14 | 17633572 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/09/14 | 1753 | macros/latex/contrib/beamer/base/beamerbaseoptions.sty
+2022/09/14 | 1741 | macros/latex/contrib/beamer/base/emulation/beamerfoils.sty
+2022/09/14 | 17403 | macros/latex/contrib/stex/source/extensions/document-structure.dtx
+2022/09/14 | 173177 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/09/14 | 17200 | macros/luatex/latex/luatruthtable/luatruthtable.tex
+2022/09/14 | 171660 | macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox.zip
+2022/09/14 | 17080 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps
+2022/09/14 | 169678 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/09/14 | 16867 | macros/latex/contrib/fixdif/fixdif-zh-cn.tex
+2022/09/14 | 16674 | macros/latex/contrib/stex/source/extensions/hwexam.dtx
+2022/09/14 | 16574 | macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
+2022/09/14 | 1651 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty
+2022/09/14 | 16465 | macros/latex/contrib/beamer/doc/beamerug-interaction.tex
+2022/09/14 | 1634 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpg
+2022/09/14 | 163097 | macros/latex/contrib/fixdif/fixdif-zh-cn.pdf
+2022/09/14 | 1619 | macros/latex/contrib/beamer/base/beamerarticle.sty
+2022/09/14 | 1616 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty
+2022/09/14 | 1593 | macros/latex/contrib/beamer/base/beamerbaserequires.sty
+2022/09/14 | 1592 | systems/texlive/tlnet/archive/clicks.r64374.tar.xz
+2022/09/14 | 1569 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty
+2022/09/14 | 15656 | systems/texlive/tlnet/archive/crossword.source.r64375.tar.xz
+2022/09/14 | 155431 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/09/14 | 1544 | systems/texlive/tlnet/archive/collection-pictures.r64373.tar.xz
+2022/09/14 | 1542 | macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex
+2022/09/14 | 1540 | macros/latex/contrib/beamer/AUTHORS.md
+2022/09/14 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/09/14 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/09/14 | 151124 | macros/luatex/latex/piton/piton-french.pdf
+2022/09/14 | 1503053 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/09/14 | 1492215 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/09/14 | 1490369 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/09/14 | 147688 | systems/texlive/tlnet/archive/quattrocento.doc.r64372.tar.xz
+2022/09/14 | 1475 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty
+2022/09/14 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/09/14 | 1458151 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/09/14 | 14508 | macros/latex/contrib/beamer/doc/beamerug-introduction.tex
+2022/09/14 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/09/14 | 14433 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/09/14 | 1432 | macros/jptex/latex/jsclasses/README.md
+2022/09/14 | 14286 | macros/latex/contrib/asmeconf/asmeconf-sample.bib
+2022/09/14 | 140014 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/09/14 | 1392 | macros/jptex/latex/jsclasses/LICENSE
+2022/09/14 | 1388 | macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty
+2022/09/14 | 1383 | macros/luatex/latex/luatruthtable/README.txt
+2022/09/14 | 137980 | systems/texlive/tlnet/archive/langnames.r64376.tar.xz
+2022/09/14 | 13733 | macros/latex/contrib/beamer/base/beamerbasesection.sty
+2022/09/14 | 1372824 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/09/14 | 1371656 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/09/14 | 1368 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty
+2022/09/14 | 13642 | macros/latex/contrib/beamer/base/beamerbasefont.sty
+2022/09/14 | 1354 | macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex
+2022/09/14 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/09/14 | 1353 | macros/latex/contrib/beamer/LICENSE.md
+2022/09/14 | 1323744 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/09/14 | 13185 | macros/luatex/latex/piton/piton-french.tex
+2022/09/14 | 1309 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty
+2022/09/14 | 13080 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty
+2022/09/14 | 1306 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty
+2022/09/14 | 128748 | systems/texlive/tlnet/archive/media4svg.doc.r64377.tar.xz
+2022/09/14 | 12589 | macros/latex/contrib/beamer/base/beamerbasecolor.sty
+2022/09/14 | 12536 | macros/latex/contrib/beamer/doc/beamerug-compatibility.tex
+2022/09/14 | 12480 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex
+2022/09/14 | 1247 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty
+2022/09/14 | 12465 | macros/latex/contrib/beamer/doc/beamerug-macros.tex
+2022/09/14 | 1245345 | install/fonts/atkinson.tds.zip
+2022/09/14 | 1244 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpg
+2022/09/14 | 12413 | macros/latex/contrib/beamer/base/beamer.cls
+2022/09/14 | 1240 | macros/latex/contrib/beamer/base/emulation/beamertexpower.sty
+2022/09/14 | 123961 | macros/latex/contrib/csquotes/csquotes.tex
+2022/09/14 | 1230 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty
+2022/09/14 | 1226339 | fonts/atkinson.zip
+2022/09/14 | 12222 | macros/latex/contrib/beamer/doc/beamerug-workflow.tex
+2022/09/14 | 12171 | macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty
+2022/09/14 | 119179 | macros/luatex/latex/luatruthtable/luatruthtable.pdf
+2022/09/14 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/09/14 | 1161753 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/09/14 | 115578 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/09/14 | 114752 | systems/texlive/tlnet/archive/langnames.doc.r64376.tar.xz
+2022/09/14 | 1140 | macros/latex/contrib/beamer/base/beamerbasethemes.sty
+2022/09/14 | 113672 | systems/texlive/tlnet/archive/texlive-scripts.r64369.tar.xz
+2022/09/14 | 11344 | macros/jptex/latex/jsclasses/jslogo.dtx
+2022/09/14 | 112979 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/09/14 | 112879 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/09/14 | 1121031 | macros/latex/contrib/stex/doc/stex-manual.pdf
+2022/09/14 | 1111 | macros/latex/contrib/beamer/README.md
+2022/09/14 | 11033 | fonts/alegreya/latex/AlegreyaSans.sty
+2022/09/14 | 109650 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/09/14 | 1094 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty
+2022/09/14 | 10910 | macros/latex/contrib/beamer/doc/beamerug-notes.tex
+2022/09/14 | 107437 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/09/14 | 10588 | macros/latex/contrib/asmeconf/README.md
+2022/09/14 | 1054 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty
+2022/09/14 | 10543 | macros/latex/contrib/beamer/base/multimedia/multimedia.sty
+2022/09/14 | 1050 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty
+2022/09/14 | 104922 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/09/14 | 103598 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/09/14 | 103246 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2022/09/14 | 10230 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex
+2022/09/14 | 101504 | macros/luatex/latex/luatruthtable.zip
+2022/09/14 | 1013 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty
+2022/09/14 | 1012 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty
+2022/09/14 | 1008 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty
2022/09/13 | 9993 | systems/win32/miktex/tm/packages/srdp-mathematik__source.tar.lzma
-2022/09/13 | 974 | systems/win32/miktex/tm/packages/pr.ini
2022/09/13 | 963412 | systems/texlive/tlnet/archive/biber.source.r64367.tar.xz
-2022/09/13 | 95467 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
2022/09/13 | 930 | macros/latex/contrib/hereapplies/hereapplies-example.tex
2022/09/13 | 919830 | systems/win32/miktex/tm/packages/ebgaramond__doc.tar.lzma
2022/09/13 | 915084 | systems/texlive/tlnet/archive/ebgaramond.doc.r64343.tar.xz
-2022/09/13 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2022/09/13 | 8825 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
2022/09/13 | 8789 | systems/win32/miktex/tm/packages/newpax.tar.lzma
2022/09/13 | 8788 | systems/texlive/tlnet/archive/newpax.source.r64347.tar.xz
2022/09/13 | 87876 | systems/texlive/tlnet/archive/pstricks.r64360.tar.xz
2022/09/13 | 8635 | systems/win32/miktex/tm/packages/media4svg.tar.lzma
2022/09/13 | 8552 | systems/texlive/tlnet/archive/newpax.r64347.tar.xz
-2022/09/13 | 824996 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
2022/09/13 | 8212196 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
2022/09/13 | 82018 | systems/win32/miktex/tm/packages/pstricks.tar.lzma
-2022/09/13 | 81448 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
2022/09/13 | 8039 | macros/latex/contrib/hereapplies/hereapplies-doc.tex
-2022/09/13 | 79064 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
2022/09/13 | 7854 | systems/win32/miktex/tm/packages/democodetools.tar.lzma
2022/09/13 | 7828 | systems/texlive/tlnet/archive/se2thesis.r64364.tar.xz
2022/09/13 | 77886305 | systems/win32/miktex/tm/packages/notocondensed.tar.lzma
2022/09/13 | 772928 | systems/texlive/tlnet/archive/pmhanguljamo.doc.r64361.tar.xz
-2022/09/13 | 77211 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/09/13 | 769652 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
2022/09/13 | 7600064 | systems/texlive/tlnet/archive/pstricks.doc.r64360.tar.xz
2022/09/13 | 75820 | macros/latex/contrib/gene/crossword/cwpuzzle.dtx
2022/09/13 | 7476 | systems/win32/miktex/tm/packages/se2thesis.tar.lzma
2022/09/13 | 746342 | systems/win32/miktex/tm/packages/pmhanguljamo__doc.tar.lzma
2022/09/13 | 743 | macros/latex/contrib/hereapplies/package.json
2022/09/13 | 7413844 | systems/win32/miktex/tm/packages/pstricks__doc.tar.lzma
-2022/09/13 | 74098 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
2022/09/13 | 736 | systems/texlive/tlnet/archive/biber.r64367.tar.xz
-2022/09/13 | 73686 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/09/13 | 73264 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/09/13 | 72979 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/09/13 | 70940 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/09/13 | 7279 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/09/13 | 690552 | systems/texlive/tlnet/archive/beamerthemeamurmaple.doc.r64346.tar.xz
-2022/09/13 | 682215 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/09/13 | 68147 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
2022/09/13 | 6756 | systems/texlive/tlnet/archive/collection-latexextra.r64365.tar.xz
2022/09/13 | 67504 | systems/texlive/tlnet/archive/bibtexu.doc.r64339.tar.xz
2022/09/13 | 666 | macros/latex/contrib/langnames/README.md
-2022/09/13 | 662791 | systems/win32/miktex/tm/packages/files.csv.lzma
-2022/09/13 | 662652 | systems/win32/miktex/tm/packages/next/files.csv.lzma
2022/09/13 | 655976 | systems/win32/miktex/tm/packages/wheelchart__doc.tar.lzma
-2022/09/13 | 65130 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
2022/09/13 | 65025 | systems/win32/miktex/tm/packages/siunitx.tar.lzma
2022/09/13 | 6434 | systems/win32/miktex/tm/packages/menukeys.tar.lzma
-2022/09/13 | 63802 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
2022/09/13 | 6341 | systems/win32/miktex/tm/packages/pmhanguljamo.tar.lzma
-2022/09/13 | 63241 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2022/09/13 | 630434 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
2022/09/13 | 6241 | systems/win32/miktex/tm/packages/beamerthemeamurmaple.tar.lzma
-2022/09/13 | 62358 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
2022/09/13 | 61708 | systems/texlive/tlnet/archive/newpax.doc.r64347.tar.xz
2022/09/13 | 609607 | systems/win32/miktex/tm/packages/menukeys__doc.tar.lzma
2022/09/13 | 608 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-linuxmusl.r64356.tar.xz
@@ -62,7 +458,6 @@
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-darwinlegacy.r64356.tar.xz
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.i386-cygwin.r64356.tar.xz
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz
-2022/09/13 | 599102 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-solaris.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-linux.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -74,21 +469,10 @@
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.aarch64-linux.r64356.tar.xz
2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz
2022/09/13 | 5926 | systems/win32/miktex/tm/packages/dtxdescribe.tar.lzma
-2022/09/13 | 58632 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
2022/09/13 | 5851 | macros/latex/contrib/hereapplies/README.md
-2022/09/13 | 5831864 | systems/texlive/tlnet/install-tl-unx.tar.gz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
-2022/09/13 | 57504 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/09/13 | 57501 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
2022/09/13 | 5732 | systems/texlive/tlnet/archive/dtxdescribe.r64362.tar.xz
-2022/09/13 | 57317 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2022/09/13 | 565080 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
2022/09/13 | 56193 | systems/win32/miktex/tm/packages/newpax__doc.tar.lzma
-2022/09/13 | 55320 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2022/09/13 | 527564 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/09/13 | 52627 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2022/09/13 | 52368 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/09/13 | 52037 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
2022/09/13 | 51980 | systems/texlive/tlnet/archive/textcsc.doc.r64365.tar.xz
2022/09/13 | 5153 | systems/win32/miktex/tm/packages/democodetools__source.tar.lzma
2022/09/13 | 515066 | systems/win32/miktex/tm/packages/beamerthemeamurmaple__doc.tar.lzma
@@ -99,80 +483,44 @@
2022/09/13 | 50191 | systems/win32/miktex/tm/packages/textcsc__doc.tar.lzma
2022/09/13 | 49556 | macros/latex/contrib/hereapplies/hereapplies-example.pdf
2022/09/13 | 4952 | systems/win32/miktex/tm/packages/wheelchart.tar.lzma
-2022/09/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
-2022/09/13 | 48851 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/09/13 | 481894 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/09/13 | 48037 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
2022/09/13 | 459 | macros/latex/contrib/gene/crossword/LICENSE
-2022/09/13 | 45794 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/09/13 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/09/13 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2022/09/13 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/09/13 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2022/09/13 | 4408 | systems/win32/miktex/tm/packages/amsaddr__source.tar.lzma
2022/09/13 | 439573 | systems/win32/miktex/tm/packages/ufrgscca__doc.tar.lzma
-2022/09/13 | 43888 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/09/13 | 43617 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/09/13 | 43528 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
2022/09/13 | 432294 | macros/latex/contrib/hereapplies.zip
2022/09/13 | 4267 | macros/latex/contrib/gene/crossword/README.md
2022/09/13 | 4260117 | install/fonts/cabin.tds.zip
2022/09/13 | 4223357 | fonts/cabin.zip
-2022/09/13 | 420856 | systems/texlive/tlnet/archive/texlive-scripts.doc.r64355.tar.xz
-2022/09/13 | 41191 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2022/09/13 | 41180 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
2022/09/13 | 4101 | systems/win32/miktex/tm/packages/ppt-slides.tar.lzma
2022/09/13 | 4056 | systems/texlive/tlnet/archive/amsaddr.source.r64357.tar.xz
2022/09/13 | 4045 | fonts/cabin/latex/cabin.sty
-2022/09/13 | 394142 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/09/13 | 38807 | macros/latex/contrib/stex/source/stex/stex-features.dtx
2022/09/13 | 384318 | systems/win32/miktex/tm/packages/dtxdescribe__doc.tar.lzma
2022/09/13 | 382176 | systems/texlive/tlnet/archive/dtxdescribe.doc.r64362.tar.xz
-2022/09/13 | 37503 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/09/13 | 37050 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
2022/09/13 | 366039 | macros/latex/contrib/hereapplies/hereapplies-doc.pdf
2022/09/13 | 3551 | systems/win32/miktex/tm/packages/ppt-slides__source.tar.lzma
2022/09/13 | 353971 | macros/latex/contrib/gene/crossword.zip
-2022/09/13 | 35264 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/09/13 | 352464 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/09/13 | 35230 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
2022/09/13 | 350186 | systems/win32/miktex/tm/packages/democodetools__doc.tar.lzma
2022/09/13 | 348295 | systems/win32/miktex/tm/packages/notocondensed__doc.tar.lzma
2022/09/13 | 34523 | macros/latex/contrib/hereapplies/COPYING
2022/09/13 | 342802 | systems/win32/miktex/tm/packages/noto__doc.tar.lzma
2022/09/13 | 340432 | systems/texlive/tlnet/archive/noto.doc.r64351.tar.xz
-2022/09/13 | 33862 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
2022/09/13 | 337553 | macros/latex/contrib/gene/crossword/cwpuzzle.pdf
2022/09/13 | 326270 | systems/win32/miktex/tm/packages/csquotes__doc.tar.lzma
-2022/09/13 | 325980 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2022/09/13 | 325483 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
2022/09/13 | 3218 | fonts/quattrocento/latex/quattrocento.sty
-2022/09/13 | 32073 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
2022/09/13 | 316796 | macros/latex/contrib/langnames.zip
-2022/09/13 | 31586 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/09/13 | 31562 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
2022/09/13 | 3146 | macros/latex/contrib/clicks/clicks.tex
-2022/09/13 | 30571 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
2022/09/13 | 304662 | systems/win32/miktex/tm/packages/gofonts__doc.tar.lzma
2022/09/13 | 30434 | systems/win32/miktex/tm/packages/srdp-mathematik.tar.lzma
2022/09/13 | 304056 | systems/texlive/tlnet/archive/gofonts.doc.r64358.tar.xz
2022/09/13 | 30248 | systems/texlive/tlnet/archive/srdp-mathematik.r64349.tar.xz
2022/09/13 | 300 | systems/texlive/tlnet/archive/bibtexu.r64339.tar.xz
-2022/09/13 | 295944 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
2022/09/13 | 2953 | systems/win32/miktex/tm/packages/textcsc__source.tar.lzma
-2022/09/13 | 293378 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/09/13 | 293345 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/09/13 | 286684 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
2022/09/13 | 2853 | macros/latex/contrib/hereapplies/lyx-module/hereapplies.module
-2022/09/13 | 28510 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2022/09/13 | 2821670 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
2022/09/13 | 2817911 | systems/win32/miktex/tm/packages/univie-ling__doc.tar.lzma
2022/09/13 | 27 | macros/latex/contrib/clicks/DEPENDS.txt
2022/09/13 | 27853 | systems/win32/miktex/tm/packages/ufrgscca.tar.lzma
-2022/09/13 | 2772 | systems/texlive/tlnet/archive/ppt-slides.r64348.tar.xz
-2022/09/13 | 27463 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
2022/09/13 | 2737 | systems/win32/miktex/tm/packages/ffcode__source.tar.lzma
2022/09/13 | 27276 | systems/win32/miktex/tm/packages/luapstricks.tar.lzma
-2022/09/13 | 270466 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
2022/09/13 | 26996 | systems/texlive/tlnet/archive/luapstricks.r64345.tar.xz
2022/09/13 | 26607012 | systems/texlive/tlnet/archive/noto.r64351.tar.xz
2022/09/13 | 265488 | systems/texlive/tlnet/archive/biber.doc.r64367.tar.xz
@@ -182,57 +530,38 @@
2022/09/13 | 261653 | macros/latex/contrib/clicks/clicks.pdf
2022/09/13 | 2610 | macros/latex/contrib/hereapplies/ChangeLog.md
2022/09/13 | 2605 | fonts/quattrocento/README
-2022/09/13 | 25516567 | systems/texlive/tlnet/install-tl.zip
2022/09/13 | 25354284 | systems/texlive/tlnet/archive/roboto.r64350.tar.xz
2022/09/13 | 25334424 | systems/win32/miktex/tm/packages/roboto.tar.lzma
-2022/09/13 | 25119 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2022/09/13 | 247206 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
-2022/09/13 | 245151 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2022/09/13 | 24211 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
2022/09/13 | 2405 | macros/latex/contrib/clicks/clicks.sty
-2022/09/13 | 2404424 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
-2022/09/13 | 23949 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
2022/09/13 | 2314 | fonts/cabin/README
+2022/09/13 | 23081 | macros/latex/contrib/stex/source/stex/stex-inheritance.dtx
2022/09/13 | 227316 | systems/texlive/tlnet/archive/ffcode.doc.r64363.tar.xz
2022/09/13 | 226800 | systems/win32/miktex/tm/packages/ffcode__doc.tar.lzma
-2022/09/13 | 225672 | systems/texlive/tlnet/archive/ppt-slides.doc.r64348.tar.xz
2022/09/13 | 222809 | systems/win32/miktex/tm/packages/ppt-slides__doc.tar.lzma
2022/09/13 | 2193 | systems/win32/miktex/tm/packages/pst-bar__doc.tar.lzma
2022/09/13 | 21822 | systems/win32/miktex/tm/packages/se2thesis__source.tar.lzma
2022/09/13 | 2167 | systems/win32/miktex/tm/packages/amsaddr.tar.lzma
-2022/09/13 | 213848 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
2022/09/13 | 2119 | systems/win32/miktex/tm/packages/ffcode.tar.lzma
2022/09/13 | 21076 | systems/texlive/tlnet/archive/se2thesis.source.r64364.tar.xz
2022/09/13 | 2100491 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
2022/09/13 | 209817 | systems/win32/miktex/tm/packages/amsaddr__doc.tar.lzma
2022/09/13 | 209324 | systems/texlive/tlnet/archive/amsaddr.doc.r64357.tar.xz
-2022/09/13 | 209138 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
2022/09/13 | 20661 | systems/win32/miktex/tm/packages/dtxdescribe__source.tar.lzma
-2022/09/13 | 20437696 | systems/texlive/tlnet/install-tl-windows.exe
-2022/09/13 | 203419 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
2022/09/13 | 20272 | systems/texlive/tlnet/archive/dtxdescribe.source.r64362.tar.xz
2022/09/13 | 2023 | systems/win32/miktex/tm/packages/ptex-fonts__doc.tar.lzma
-2022/09/13 | 2023134 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
2022/09/13 | 19864 | macros/latex/contrib/hereapplies/hereapplies.sty
-2022/09/13 | 196212 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2022/09/13 | 1940 | systems/texlive/tlnet/archive/ffcode.r64363.tar.xz
2022/09/13 | 1936009 | systems/win32/miktex/tm/packages/simpleicons__doc.tar.lzma
2022/09/13 | 1932 | systems/texlive/tlnet/archive/amsaddr.r64357.tar.xz
2022/09/13 | 19048 | systems/win32/miktex/tm/packages/menukeys__source.tar.lzma
2022/09/13 | 18935 | macros/latex/contrib/langnames/langnames.dtx
-2022/09/13 | 18511 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/09/13 | 18382 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
2022/09/13 | 18330 | systems/win32/miktex/tm/packages/csquotes.tar.lzma
-2022/09/13 | 181724 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
2022/09/13 | 17944096 | systems/texlive/tlnet/archive/biber.x86_64-linuxmusl.r64367.tar.xz
2022/09/13 | 176863 | systems/win32/miktex/tm/packages/beamerthemeamurmaple__source.tar.lzma
-2022/09/13 | 17632414 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
2022/09/13 | 174473 | macros/latex/contrib/langnames/langnames.pdf
2022/09/13 | 17421 | systems/win32/miktex/tm/packages/simpleicons__source.tar.lzma
2022/09/13 | 173424 | systems/win32/miktex/tm/packages/pmhanguljamo__source.tar.lzma
-2022/09/13 | 173176 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
2022/09/13 | 1706304 | systems/win32/miktex/tm/packages/circuitikz__doc.tar.lzma
-2022/09/13 | 169677 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
2022/09/13 | 1685 | macros/latex/contrib/gene/crossword/makefile
2022/09/13 | 1662 | macros/latex/contrib/gene/crossword/cwpuzzle.ins
2022/09/13 | 16345 | macros/latex/contrib/hereapplies/hereapplies-doc.lyx
@@ -240,60 +569,35 @@
2022/09/13 | 160573 | systems/win32/miktex/tm/packages/circuitikz.tar.lzma
2022/09/13 | 159725 | systems/win32/miktex/tm/packages/univie-ling.tar.lzma
2022/09/13 | 15881 | systems/win32/miktex/tm/packages/ufrgscca__source.tar.lzma
-2022/09/13 | 155429 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2022/09/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2022/09/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2022/09/13 | 1524 | systems/texlive/tlnet/archive/luapstricks.doc.r64345.tar.xz
-2022/09/13 | 1503055 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
2022/09/13 | 150164 | systems/texlive/tlnet/archive/srdp-mathematik.doc.r64349.tar.xz
-2022/09/13 | 1492298 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/09/13 | 1490445 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2022/09/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2022/09/13 | 1458152 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/09/13 | 14903 | macros/luatex/latex/piton/piton.lua
2022/09/13 | 145239 | systems/win32/miktex/tm/packages/pst-bar__source.tar.lzma
-2022/09/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
2022/09/13 | 14460 | systems/win32/miktex/tm/packages/newpax__source.tar.lzma
-2022/09/13 | 14434 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2022/09/13 | 14419 | systems/win32/miktex/tm/packages/ptex-fonts.tar.lzma
2022/09/13 | 1422480 | systems/texlive/tlnet/archive/se2thesis.doc.r64364.tar.xz
2022/09/13 | 1422473 | systems/win32/miktex/tm/packages/se2thesis__doc.tar.lzma
2022/09/13 | 141470 | systems/win32/miktex/tm/packages/srdp-mathematik__doc.tar.lzma
-2022/09/13 | 140010 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
2022/09/13 | 13965896 | systems/win32/miktex/tm/packages/libertine.tar.lzma
2022/09/13 | 13903304 | systems/texlive/tlnet/archive/libertine.r64359.tar.xz
-2022/09/13 | 1372041 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
-2022/09/13 | 1371925 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
2022/09/13 | 1364368 | install/fonts/quattrocento.tds.zip
2022/09/13 | 1362891 | systems/win32/miktex/tm/packages/gofonts.tar.lzma
2022/09/13 | 1361720 | systems/texlive/tlnet/archive/gofonts.r64358.tar.xz
-2022/09/13 | 135465 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
2022/09/13 | 1345338 | fonts/quattrocento.zip
2022/09/13 | 13342 | systems/win32/miktex/tm/packages/gentombow__source.tar.lzma
-2022/09/13 | 1323743 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
2022/09/13 | 1310 | systems/win32/miktex/tm/packages/textcsc.tar.lzma
2022/09/13 | 128687 | systems/win32/miktex/tm/packages/media4svg__doc.tar.lzma
2022/09/13 | 1258 | macros/latex/contrib/clicks/README.md
2022/09/13 | 1245627 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma
2022/09/13 | 1226632 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
-2022/09/13 | 1172 | systems/win32/miktex/tm/packages/next/pr.ini
2022/09/13 | 116815 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma
-2022/09/13 | 1161751 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2022/09/13 | 115580 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
2022/09/13 | 11517137 | systems/win32/miktex/tm/packages/ebgaramond.tar.lzma
2022/09/13 | 11460988 | systems/texlive/tlnet/archive/ebgaramond.r64343.tar.xz
-2022/09/13 | 113660 | systems/texlive/tlnet/archive/texlive-scripts.r64355.tar.xz
-2022/09/13 | 112980 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
2022/09/13 | 1128877 | systems/win32/miktex/tm/packages/libertine__doc.tar.lzma
-2022/09/13 | 112880 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
2022/09/13 | 1120 | systems/texlive/tlnet/archive/textcsc.r64365.tar.xz
2022/09/13 | 1118984 | systems/texlive/tlnet/archive/libertine.doc.r64359.tar.xz
2022/09/13 | 11131 | systems/win32/miktex/tm/packages/gentombow.tar.lzma
-2022/09/13 | 109650 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2022/09/13 | 107437 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/09/13 | 104920 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
2022/09/13 | 10428 | systems/win32/miktex/tm/packages/wheelchart__source.tar.lzma
-2022/09/13 | 103596 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2022/09/13 | 103246 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
2022/09/12 | 97496 | macros/latex/contrib/dtxdescribe/dtxdescribe.dtx
2022/09/12 | 94352 | macros/latex/contrib/ppt-slides/socrates.jpg
2022/09/12 | 930 | macros/latex/contrib/dtxdescribe/README.txt
@@ -305,11 +609,11 @@
2022/09/12 | 843 | macros/latex/contrib/media4svg/ChangeLog
2022/09/12 | 8326 | macros/latex/contrib/media4svg/example/beamer-example.tex
2022/09/12 | 7896 | macros/latex/contrib/ppt-slides/ppt-slides.tex
-2022/09/12 | 7252 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/09/12 | 667591 | graphics/pgf/contrib/wheelchart.zip
2022/09/12 | 599 | macros/latex/contrib/se2thesis/CHANGELOG.md
2022/09/12 | 5854 | macros/latex/contrib/media4svg/README.md
2022/09/12 | 5816 | macros/latex/contrib/ppt-slides/ppt-slides.sty
+2022/09/12 | 50685 | macros/latex/contrib/stex/source/stex/stex-symbols.dtx
2022/09/12 | 497 | macros/latex/contrib/amsaddr/README.md
2022/09/12 | 49769 | systems/texlive/tlnet/tlpkg/installer/config.guess
2022/09/12 | 4480 | macros/latex/contrib/ffcode/ffcode.tex
@@ -357,6 +661,7 @@
2022/09/12 | 1420 | macros/latex/contrib/ppt-slides/ppt-schemes/ppt-dark-mono.tex
2022/09/12 | 1274 | macros/latex/contrib/ffcode/README.md
2022/09/12 | 1268 | macros/latex/contrib/amsaddr/amsaddr.ins
+2022/09/12 | 11503 | macros/latex/contrib/stex/doc/stex-docheader.tex
2022/09/12 | 1122539 | macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdf
2022/09/12 | 10273 | macros/latex/contrib/amsaddr/amsaddr.dtx
2022/09/11 | 986 | macros/latex/contrib/srdp-mathematik/README.md
@@ -455,6 +760,7 @@
2022/09/10 | 468 | fonts/ptex-fonts/tfm/jisgn.tfm
2022/09/10 | 457 | macros/latex/contrib/gentombow/pxgentombow.sty
2022/09/10 | 4506 | fonts/roboto/README
+2022/09/10 | 4181 | macros/latex/contrib/stex/doc/stex-ide.tex
2022/09/10 | 41513837 | install/fonts/roboto.tds.zip
2022/09/10 | 3986 | macros/latex/contrib/gentombow/bounddvi.sty
2022/09/10 | 369 | graphics/pstricks/contrib/pst-bar/latex/pst-bar.sty
@@ -472,8 +778,10 @@
2022/09/10 | 2588 | fonts/ptex-fonts/source/jis-v.pl
2022/09/10 | 2588 | fonts/ptex-fonts/source/jisn-v.pl
2022/09/10 | 2570 | fonts/ptex-fonts/source/jisn.pl
+2022/09/10 | 2550 | macros/latex/contrib/stex/doc/packages/stex-idesetup.tex
2022/09/10 | 23314 | macros/latex/contrib/beamer-contrib/themes/beamerthemeamurmaple/tex/beamerthemeAmurmaple.sty
2022/09/10 | 23109 | macros/latex/contrib/gentombow/pxgentombow.pdf
+2022/09/10 | 22403 | macros/latex/contrib/stex/doc/stex-manual.tex
2022/09/10 | 2196 | graphics/pstricks/contrib/pst-bar/Changes
2022/09/10 | 21707 | macros/latex/contrib/gentombow/gentombow-ja.tex
2022/09/10 | 2144 | macros/latex/contrib/gentombow/pxpdfpages.sty
@@ -483,6 +791,7 @@
2022/09/10 | 1930064 | systems/texlive/tlnet/archive/simpleicons.doc.r64321.tar.xz
2022/09/10 | 19290 | macros/latex/contrib/beamer-contrib/themes/beamerthemeamurmaple/doc/beamer-amurmaple-doc.tex
2022/09/10 | 18068 | systems/texlive/tlnet/archive/csquotes.r64323.tar.xz
+2022/09/10 | 1796 | macros/latex/contrib/stex/doc/packages/stex-setup.tex
2022/09/10 | 178279 | macros/latex/contrib/gentombow/gentombow-ja.pdf
2022/09/10 | 1742414 | macros/latex/contrib/beamer-contrib/themes/beamerthemeamurmaple.zip
2022/09/10 | 1719 | macros/unicodetex/latex/textcsc/textcsc.sty
@@ -609,6 +918,7 @@
2022/09/10 | 10048 | fonts/ptex-fonts/source/ngoth7.pl
2022/09/10 | 10048 | fonts/ptex-fonts/source/ngoth6.pl
2022/09/10 | 10048 | fonts/ptex-fonts/source/ngoth5.pl
+2022/09/09 | 9886 | macros/latex/contrib/stex/doc/packages/stex-mathhub.tex
2022/09/09 | 9804 | graphics/pgf/contrib/circuitikz/tex/pgfcircflow.tex
2022/09/09 | 9538 | graphics/pgf/contrib/circuitikz/tex/pgfcirccurrent.tex
2022/09/09 | 938 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.tex
@@ -622,7 +932,6 @@
2022/09/09 | 758991 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.6-body.tex
2022/09/09 | 751663 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.6.tex
2022/09/09 | 728 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4.sty
-2022/09/09 | 7068 | macros/latex/contrib/csquotes/csquotes.cfg
2022/09/09 | 690729 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3-body.tex
2022/09/09 | 683433 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.3.tex
2022/09/09 | 665 | fonts/simpleicons/README.md
@@ -635,10 +944,13 @@
2022/09/09 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3.sty
2022/09/09 | 631 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.4.6.sty
2022/09/09 | 626 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.0.sty
-2022/09/09 | 62527 | macros/latex/contrib/csquotes/csquotes.sty
+2022/09/09 | 5782 | macros/latex/contrib/stex/doc/stex-doc.tex
2022/09/09 | 56233 | graphics/pgf/contrib/circuitikz/tex/pgfcircmonopoles.tex
+2022/09/09 | 54764 | macros/latex/contrib/stex/doc/img/vsc2.png
2022/09/09 | 502939 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex
+2022/09/09 | 49418 | macros/latex/contrib/stex/doc/img/vsc3.png
2022/09/09 | 4789305 | fonts/simpleicons.zip
+2022/09/09 | 477 | macros/latex/contrib/stex/doc/Makefile
2022/09/09 | 45078 | graphics/pgf/contrib/circuitikz/doc/changelog.tex
2022/09/09 | 422295 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.8.3-body.tex
2022/09/09 | 418 | graphics/pgf/contrib/circuitikz/doc/compatibility.tex
@@ -646,22 +958,18 @@
2022/09/09 | 40468 | graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex
2022/09/09 | 403567 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.7-body.tex
2022/09/09 | 393884 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.6-body.tex
+2022/09/09 | 3823 | macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty
2022/09/09 | 3802 | graphics/pgf/contrib/circuitikz/README.md
2022/09/09 | 375417 | graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex
-2022/09/09 | 3753 | macros/latex/contrib/csquotes/csq-compat.def
2022/09/09 | 364117 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4-body.tex
2022/09/09 | 3590 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex
2022/09/09 | 35438 | graphics/pgf/contrib/circuitikz/tex/pgfcircvoltage.tex
-2022/09/09 | 348737 | install/macros/latex/contrib/csquotes.tds.zip
-2022/09/09 | 348286 | macros/latex/contrib/csquotes.zip
2022/09/09 | 33313 | graphics/pgf/contrib/circuitikz/tex/pgfcircshapes.tex
-2022/09/09 | 3282 | macros/latex/contrib/csquotes/README.md
2022/09/09 | 322541 | macros/latex/contrib/langnames/ln_fams_wals.tex
2022/09/09 | 3191289 | install/graphics/pgf/contrib/circuitikz.tds.zip
2022/09/09 | 3171995 | graphics/pgf/contrib/circuitikz.zip
2022/09/09 | 3150 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-legacy.tex
2022/09/09 | 312 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsOneZero.tfm
-2022/09/09 | 304739 | macros/latex/contrib/csquotes/csquotes.pdf
2022/09/09 | 2842 | fonts/simpleicons/enc/simpleiconsOne.enc
2022/09/09 | 2823976 | systems/texlive/tlnet/archive/univie-ling.doc.r64318.tar.xz
2022/09/09 | 280 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-example.tex
@@ -678,6 +986,7 @@
2022/09/09 | 259 | fonts/simpleicons/tex/usimpleiconsNine.fd
2022/09/09 | 259 | fonts/simpleicons/tex/usimpleiconsFour.fd
2022/09/09 | 259 | fonts/simpleicons/tex/usimpleiconsFive.fd
+2022/09/09 | 25993 | macros/latex/contrib/stex/doc/img/vsc1.png
2022/09/09 | 254 | fonts/simpleicons/tex/usimpleiconsTwo.fd
2022/09/09 | 254 | fonts/simpleicons/tex/usimpleiconsSix.fd
2022/09/09 | 254 | fonts/simpleicons/tex/usimpleiconsOne.fd
@@ -685,8 +994,8 @@
2022/09/09 | 2534 | fonts/simpleicons/enc/simpleiconsThree.enc
2022/09/09 | 2509 | fonts/simpleicons/enc/simpleiconsNine.enc
2022/09/09 | 2303 | fonts/simpleicons/enc/simpleiconsOneZero.enc
+2022/09/09 | 23034 | macros/latex/contrib/stex/source/stex/stex-references.dtx
2022/09/09 | 2231680 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.zip
-2022/09/09 | 21994 | macros/latex/contrib/csquotes/csquotes.def
2022/09/09 | 2188 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-romano.tex
2022/09/09 | 209212 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
2022/09/09 | 205496 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex
@@ -704,7 +1013,6 @@
2022/09/09 | 13737 | graphics/pgf/contrib/circuitikz/tex/circuitikz.sty
2022/09/09 | 13325007 | macros/latex/contrib/profcollege.zip
2022/09/09 | 124309 | fonts/simpleicons/doc/bindings.tex
-2022/09/09 | 123854 | macros/latex/contrib/csquotes/csquotes.tex
2022/09/09 | 1236 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsSeven.tfm
2022/09/09 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsTwo.tfm
2022/09/09 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsThree.tfm
@@ -714,6 +1022,7 @@
2022/09/09 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsFive.tfm
2022/09/09 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsEight.tfm
2022/09/09 | 1228 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsOne.tfm
+2022/09/09 | 1171 | macros/latex/contrib/stex/doc/packages/stex-mathhubsetup.tex
2022/09/09 | 114251 | graphics/pgf/contrib/circuitikz/tex/pgfcircquadpoles.tex
2022/09/09 | 112203 | graphics/pgf/contrib/circuitikz/tex/pgfcircmultipoles.tex
2022/09/09 | 1119 | fonts/simpleicons/map/simpleicons.map
@@ -722,6 +1031,7 @@
2022/09/09 | 1021798 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.2.7-body.tex
2022/09/09 | 1014383 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.2.7.tex
2022/09/08 | 9023 | macros/latex/contrib/univie-ling/README
+2022/09/08 | 8805 | macros/latex/contrib/stex/doc/packages/stex-features.tex
2022/09/08 | 7628 | systems/texlive/tlnet/archive/democodetools.r64314.tar.xz
2022/09/08 | 6716 | systems/texlive/tlnet/archive/ut-thesis.source.r64314.tar.xz
2022/09/08 | 6568 | systems/texlive/tlnet/archive/uwa-letterhead.source.r64314.tar.xz
@@ -747,6 +1057,7 @@
2022/09/08 | 322096 | systems/texlive/tlnet/archive/oup-authoring-template.doc.r64314.tar.xz
2022/09/08 | 30812 | systems/texlive/tlnet/archive/epstopdf.doc.r64314.tar.xz
2022/09/08 | 29957 | macros/latex/contrib/univie-ling/tex/univie-ling-wlg.cls
+2022/09/08 | 29335 | macros/latex/contrib/stex/source/stex/stex-statements.dtx
2022/09/08 | 2924 | systems/texlive/tlnet/archive/uwa-pcf.r64314.tar.xz
2022/09/08 | 29140 | macros/latex/contrib/univie-ling/tex/univie-ling-handout.cls
2022/09/08 | 28960 | macros/latex/contrib/univie-ling/doc/univie-ling-paper.tex
@@ -772,160 +1083,3 @@
2022/09/08 | 116640 | systems/texlive/tlnet/archive/siunitx.source.r64314.tar.xz
2022/09/08 | 116016 | macros/latex/contrib/univie-ling/doc/templates/template-expose-deutsch.pdf
2022/09/08 | 109 | systems/win32/miktex/setup/rpm/fedora-36.repo
-2022/09/07 | 996 | macros/latex/contrib/siunitx/README.md
-2022/09/07 | 9912 | macros/latex/contrib/siunitx/siunitx-symbol.dtx
-2022/09/07 | 97649 | systems/win32/miktex/tm/packages/etoc__source.tar.lzma
-2022/09/07 | 96916 | systems/texlive/tlnet/archive/texinfo.r64304.tar.xz
-2022/09/07 | 95583 | systems/win32/miktex/tm/packages/markdown__source.tar.lzma
-2022/09/07 | 9211 | systems/win32/miktex/tm/packages/covington.tar.lzma
-2022/09/07 | 91808 | systems/win32/miktex/tm/packages/luafindfont__doc.tar.lzma
-2022/09/07 | 90668 | systems/win32/miktex/tm/packages/biblatex-gb7714-2015__source.tar.lzma
-2022/09/07 | 887046 | systems/win32/miktex/tm/packages/l3backend__doc.tar.lzma
-2022/09/07 | 8798 | macros/latex/contrib/siunitx/siunitx-command.dtx
-2022/09/07 | 870576 | systems/win32/miktex/tm/packages/babel__doc.tar.lzma
-2022/09/07 | 8677 | systems/win32/miktex/tm/packages/mugsthesis__source.tar.lzma
-2022/09/07 | 86546 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
-2022/09/07 | 857121 | systems/win32/miktex/tm/packages/kaytannollista-latexia.tar.lzma
-2022/09/07 | 80539 | macros/latex/contrib/menukeys/menukeys.dtx
-2022/09/07 | 802473 | systems/win32/miktex/tm/packages/bithesis__doc.tar.lzma
-2022/09/07 | 801710 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
-2022/09/07 | 7956 | systems/win32/miktex/tm/packages/minimalist__source.tar.lzma
-2022/09/07 | 7874 | systems/win32/miktex/tm/packages/colorist__source.tar.lzma
-2022/09/07 | 775080 | systems/win32/miktex/tm/packages/etoc__doc.tar.lzma
-2022/09/07 | 755957 | systems/win32/miktex/tm/packages/darkmode__doc.tar.lzma
-2022/09/07 | 7345 | systems/win32/miktex/tm/packages/hereapplies__source.tar.lzma
-2022/09/07 | 7297389 | systems/win32/miktex/tm/packages/hvfloat__doc.tar.lzma
-2022/09/07 | 7295027 | systems/win32/miktex/tm/packages/latex2nemeth.tar.lzma
-2022/09/07 | 716329 | systems/win32/miktex/tm/packages/latex2nemeth__source.tar.lzma
-2022/09/07 | 711186 | systems/win32/miktex/tm/packages/babel__source.tar.lzma
-2022/09/07 | 69042 | macros/latex/contrib/siunitx/CHANGELOG.md
-2022/09/07 | 66977 | language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex
-2022/09/07 | 665418 | macros/latex/contrib/siunitx/siunitx.pdf
-2022/09/07 | 6536 | systems/win32/miktex/tm/packages/llncs__source.tar.lzma
-2022/09/07 | 65367 | systems/win32/miktex/tm/packages/teubner__source.tar.lzma
-2022/09/07 | 6409 | systems/win32/miktex/tm/packages/luaquotes__source.tar.lzma
-2022/09/07 | 625368 | macros/latex/contrib/menukeys.zip
-2022/09/07 | 622559 | macros/latex/contrib/menukeys/menukeys.pdf
-2022/09/07 | 617808 | macros/latex/contrib/siunitx/siunitx-code.pdf
-2022/09/07 | 61581 | systems/win32/miktex/tm/packages/letgut__source.tar.lzma
-2022/09/07 | 61478 | systems/win32/miktex/tm/packages/texshade.tar.lzma
-2022/09/07 | 6113 | systems/win32/miktex/tm/packages/unbtex.tar.lzma
-2022/09/07 | 600924 | systems/win32/miktex/tm/packages/exam-zh__source.tar.lzma
-2022/09/07 | 594983 | systems/win32/miktex/tm/packages/l3kernel__source.tar.lzma
-2022/09/07 | 594555 | language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.pdf
-2022/09/07 | 58515 | systems/win32/miktex/tm/packages/crefthe__doc.tar.lzma
-2022/09/07 | 573333 | systems/win32/miktex/tm/packages/latex2e-help-texinfo-fr__source.tar.lzma
-2022/09/07 | 5667 | systems/win32/miktex/tm/packages/luafindfont__source.tar.lzma
-2022/09/07 | 5642 | systems/win32/miktex/tm/packages/luafindfont.tar.lzma
-2022/09/07 | 5483 | systems/win32/miktex/tm/packages/unbtex__source.tar.lzma
-2022/09/07 | 5481 | macros/latex/contrib/siunitx/siunitx-locale.dtx
-2022/09/07 | 5478 | systems/win32/miktex/tm/packages/hereapplies.tar.lzma
-2022/09/07 | 516802 | systems/win32/miktex/tm/packages/covington__doc.tar.lzma
-2022/09/07 | 513049 | macros/latex/contrib/ufrgscca.zip
-2022/09/07 | 50961 | macros/latex/contrib/siunitx/siunitx-table.dtx
-2022/09/07 | 49621 | systems/win32/miktex/tm/packages/letgut.tar.lzma
-2022/09/07 | 49571 | systems/win32/miktex/tm/packages/dtk-bibliography__source.tar.lzma
-2022/09/07 | 4936 | systems/win32/miktex/tm/packages/einfart.tar.lzma
-2022/09/07 | 4916 | systems/win32/miktex/tm/packages/crefthe__source.tar.lzma
-2022/09/07 | 4912 | systems/win32/miktex/tm/packages/simplivre.tar.lzma
-2022/09/07 | 4829 | systems/win32/miktex/tm/packages/lebhart.tar.lzma
-2022/09/07 | 4806 | systems/win32/miktex/tm/packages/beaulivre.tar.lzma
-2022/09/07 | 47511 | systems/win32/miktex/tm/packages/biblatex-gb7714-2015.tar.lzma
-2022/09/07 | 4748 | macros/latex/contrib/siunitx/siunitx-abbreviations.cfg
-2022/09/07 | 462981 | systems/win32/miktex/tm/packages/beaulivre__doc.tar.lzma
-2022/09/07 | 46003 | systems/win32/miktex/tm/packages/markdown.tar.lzma
-2022/09/07 | 445168 | systems/win32/miktex/tm/packages/simplivre__doc.tar.lzma
-2022/09/07 | 416341 | systems/win32/miktex/tm/packages/hereapplies__doc.tar.lzma
-2022/09/07 | 4032 | systems/win32/miktex/tm/packages/darkmode__source.tar.lzma
-2022/09/07 | 395429 | systems/win32/miktex/tm/packages/mugsthesis__doc.tar.lzma
-2022/09/07 | 383916 | systems/win32/miktex/tm/packages/lebhart__doc.tar.lzma
-2022/09/07 | 381962 | systems/win32/miktex/tm/packages/dtk-bibliography.tar.lzma
-2022/09/07 | 37954 | macros/latex/contrib/siunitx/siunitx-complex.dtx
-2022/09/07 | 37500 | systems/win32/miktex/tm/packages/exam-zh.tar.lzma
-2022/09/07 | 3687 | macros/latex/contrib/siunitx/siunitx.ins
-2022/09/07 | 364590 | macros/latex/contrib/democodetools.zip
-2022/09/07 | 364184 | systems/win32/miktex/tm/packages/einfart__doc.tar.lzma
-2022/09/07 | 35916 | macros/latex/contrib/siunitx/siunitx-print.dtx
-2022/09/07 | 3538 | systems/win32/miktex/tm/packages/beamertheme-tcolorbox__source.tar.lzma
-2022/09/07 | 35008 | systems/win32/miktex/tm/packages/xindex.tar.lzma
-2022/09/07 | 346184 | systems/win32/miktex/tm/packages/xindex__doc.tar.lzma
-2022/09/07 | 3442 | systems/win32/miktex/tm/packages/crefthe.tar.lzma
-2022/09/07 | 34305 | systems/win32/miktex/tm/packages/bithesis__source.tar.lzma
-2022/09/07 | 33799 | macros/latex/contrib/siunitx/siunitx-compound.dtx
-2022/09/07 | 33034 | systems/win32/miktex/tm/packages/l3backend__source.tar.lzma
-2022/09/07 | 32418 | macros/latex/contrib/siunitx/siunitx-emulation.dtx
-2022/09/07 | 3217 | systems/win32/miktex/tm/packages/mugsthesis.tar.lzma
-2022/09/07 | 31738 | macros/latex/contrib/siunitx/siunitx-version-1.cfg
-2022/09/07 | 315398 | systems/win32/miktex/tm/packages/texshade__source.tar.lzma
-2022/09/07 | 2883 | macros/latex/contrib/siunitx/siunitx-binary.dtx
-2022/09/07 | 27801 | language/korean/pmhanguljamo/doc/pmhanguljamo-doc.tex
-2022/09/07 | 2777 | systems/win32/miktex/tm/packages/luaquotes.tar.lzma
-2022/09/07 | 273398 | macros/latex/contrib/siunitx/siunitx-v2.sty
-2022/09/07 | 2620 | macros/latex/contrib/siunitx/siunitx-code.tex
-2022/09/07 | 24827 | systems/win32/miktex/tm/packages/uni-titlepage__source.tar.lzma
-2022/09/07 | 24396 | systems/texlive/tlnet/archive/uni-titlepage.source.r64306.tar.xz
-2022/09/07 | 231055 | systems/win32/miktex/tm/packages/pedigree-perl__doc.tar.lzma
-2022/09/07 | 23072 | systems/win32/miktex/tm/packages/pedigree-perl__source.tar.lzma
-2022/09/07 | 22112 | systems/win32/miktex/tm/packages/bithesis.tar.lzma
-2022/09/07 | 21683 | macros/latex/contrib/siunitx/siunitx.dtx
-2022/09/07 | 2130 | systems/win32/miktex/tm/packages/beamertheme-tcolorbox.tar.lzma
-2022/09/07 | 203898 | systems/win32/miktex/tm/packages/llncs__doc.tar.lzma
-2022/09/07 | 199489 | systems/win32/miktex/tm/packages/pstricks__source.tar.lzma
-2022/09/07 | 19525 | systems/win32/miktex/tm/packages/latex2nemeth__doc.tar.lzma
-2022/09/07 | 191763 | systems/win32/miktex/tm/packages/babel.tar.lzma
-2022/09/07 | 1874130 | systems/win32/miktex/tm/packages/latex2e-help-texinfo-fr.tar.lzma
-2022/09/07 | 1860 | systems/texlive/tlnet/archive/beamertheme-tcolorbox.r64305.tar.xz
-2022/09/07 | 1855 | macros/latex/contrib/menukeys/menukeys.ins
-2022/09/07 | 1840796 | systems/texlive/tlnet/archive/uni-titlepage.doc.r64306.tar.xz
-2022/09/07 | 1839419 | systems/win32/miktex/tm/packages/uni-titlepage__doc.tar.lzma
-2022/09/07 | 17516 | language/korean/pmhanguljamo/tex/pmhanguljamo.sty
-2022/09/07 | 174823 | systems/win32/miktex/tm/packages/l3kernel.tar.lzma
-2022/09/07 | 173988 | systems/texlive/tlnet/archive/beamertheme-tcolorbox.doc.r64305.tar.xz
-2022/09/07 | 17383 | systems/win32/miktex/tm/packages/pedigree-perl.tar.lzma
-2022/09/07 | 1729 | macros/latex/contrib/siunitx/siunitx-binary.cfg
-2022/09/07 | 171741 | systems/win32/miktex/tm/packages/beamertheme-tcolorbox__doc.tar.lzma
-2022/09/07 | 1693 | systems/win32/miktex/tm/packages/darkmode.tar.lzma
-2022/09/07 | 169044 | systems/win32/miktex/tm/packages/xindex__source.tar.lzma
-2022/09/07 | 16831 | systems/win32/miktex/tm/packages/covington__source.tar.lzma
-2022/09/07 | 16771 | systems/win32/miktex/tm/packages/llncs.tar.lzma
-2022/09/07 | 16709 | macros/latex/contrib/siunitx/siunitx-angle.dtx
-2022/09/07 | 16479 | systems/win32/miktex/tm/packages/einfart__source.tar.lzma
-2022/09/07 | 163275 | language/korean/pmhanguljamo/doc/pmhanguljamo-doc.pdf
-2022/09/07 | 16121 | systems/win32/miktex/tm/packages/simplivre__source.tar.lzma
-2022/09/07 | 15979 | systems/win32/miktex/tm/packages/lebhart__source.tar.lzma
-2022/09/07 | 158390 | macros/latex/contrib/siunitx/siunitx.tex
-2022/09/07 | 15780 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
-2022/09/07 | 15611 | macros/latex/contrib/siunitx/siunitx-quantity.dtx
-2022/09/07 | 15579 | systems/win32/miktex/tm/packages/beaulivre__source.tar.lzma
-2022/09/07 | 15548 | systems/win32/miktex/tm/packages/l3backend.tar.lzma
-2022/09/07 | 1537 | language/korean/pmhanguljamo/README.md
-2022/09/07 | 1513253 | install/macros/latex/contrib/siunitx.tds.zip
-2022/09/07 | 1469065 | macros/latex/contrib/siunitx.zip
-2022/09/07 | 146762 | macros/latex/contrib/siunitx/siunitx-number.dtx
-2022/09/07 | 1444990 | systems/win32/miktex/tm/packages/unbtex__doc.tar.lzma
-2022/09/07 | 1441425 | systems/win32/miktex/tm/packages/fduthesis__doc.tar.lzma
-2022/09/07 | 143726 | language/korean/pmhanguljamo/doc/munjangganghwa.jpg
-2022/09/07 | 143293 | systems/win32/miktex/tm/packages/kaytannollista-latexia__source.tar.lzma
-2022/09/07 | 14227 | language/korean/pmhanguljamo/tex/pmhanguljamo-rrk.sty
-2022/09/07 | 1412 | macros/latex/contrib/menukeys/README
-2022/09/07 | 1401345 | systems/win32/miktex/tm/packages/exam-zh__doc.tar.lzma
-2022/09/07 | 1296486 | systems/win32/miktex/tm/packages/biblatex-gb7714-2015__doc.tar.lzma
-2022/09/07 | 1211922 | systems/win32/miktex/tm/packages/letgut__doc.tar.lzma
-2022/09/07 | 12106 | systems/win32/miktex/tm/packages/hvfloat.tar.lzma
-2022/09/07 | 1209012 | systems/win32/miktex/tm/packages/texshade__doc.tar.lzma
-2022/09/07 | 117930 | systems/win32/miktex/tm/packages/fduthesis__source.tar.lzma
-2022/09/07 | 11715066 | systems/win32/miktex/tm/packages/l3kernel__doc.tar.lzma
-2022/09/07 | 11188 | systems/win32/miktex/tm/packages/etoc.tar.lzma
-2022/09/07 | 108888 | systems/win32/miktex/tm/packages/fduthesis.tar.lzma
-2022/09/07 | 1086200 | systems/win32/miktex/tm/packages/teubner__doc.tar.lzma
-2022/09/07 | 10812 | macros/latex/contrib/siunitx/siunitx-abbreviation.dtx
-2022/09/07 | 10783 | systems/win32/miktex/tm/packages/colorist.tar.lzma
-2022/09/07 | 10775 | systems/win32/miktex/tm/packages/uni-titlepage.tar.lzma
-2022/09/07 | 107641 | systems/win32/miktex/tm/packages/minimalist__doc.tar.lzma
-2022/09/07 | 10592 | systems/texlive/tlnet/archive/uni-titlepage.r64306.tar.xz
-2022/09/07 | 105581 | systems/win32/miktex/tm/packages/luaquotes__doc.tar.lzma
-2022/09/07 | 105123 | systems/win32/miktex/tm/packages/colorist__doc.tar.lzma
-2022/09/07 | 10450 | systems/win32/miktex/tm/packages/minimalist.tar.lzma
-2022/09/07 | 103909 | macros/latex/contrib/siunitx/siunitx-unit.dtx
-2022/09/07 | 1025677 | systems/win32/miktex/tm/packages/markdown__doc.tar.lzma
-2022/09/07 | 10179 | systems/win32/miktex/tm/packages/teubner.tar.lzma
diff --git a/fonts/alegreya/README b/fonts/alegreya/README
index 45fbb4240f..a5a133eb20 100644
--- a/fonts/alegreya/README
+++ b/fonts/alegreya/README
@@ -1,4 +1,4 @@
-This is the README for the alegreya package, version 2019-10-12.
+This is the README for the alegreya package, version 2022-09-14.
This package provides LaTeX, pdfLaTeX, XeLaTeX and LuaLaTeX support
for the Alegreya and AlegreyaSans families of fonts, designed by
diff --git a/fonts/alegreya/doc/alegreya-samples.pdf b/fonts/alegreya/doc/alegreya-samples.pdf
index 965a42025d..68635d05b8 100644
--- a/fonts/alegreya/doc/alegreya-samples.pdf
+++ b/fonts/alegreya/doc/alegreya-samples.pdf
Binary files differ
diff --git a/fonts/alegreya/doc/alegreya-samples.tex b/fonts/alegreya/doc/alegreya-samples.tex
index b8f0f7b320..3be152c08d 100644
--- a/fonts/alegreya/doc/alegreya-samples.tex
+++ b/fonts/alegreya/doc/alegreya-samples.tex
@@ -21,6 +21,24 @@
\textbf{\textit{\lipsum[4]}}
+\subsection*{Medium}
+
+{\AlegreyaMedium\lipsum[8]}
+
+\subsection*{Medium Italic}
+
+{\AlegreyaMedium\textit{\lipsum[8]}}
+
+
+\subsection*{Extra Bold}
+
+{\AlegreyaExtraBold\lipsum[9]}
+
+
+\subsection*{Extra Bold Italic}
+
+{\AlegreyaExtraBold\textit{\lipsum[9]}}
+
\subsection*{Black}
{\AlegreyaBlack\lipsum[5]}
diff --git a/fonts/alegreya/latex/Alegreya.sty b/fonts/alegreya/latex/Alegreya.sty
index 13ad4c190c..52f090f17c 100644
--- a/fonts/alegreya/latex/Alegreya.sty
+++ b/fonts/alegreya/latex/Alegreya.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{Alegreya}[%
- 2019/10/12 (Bob Tennent) Supports Alegreya and AlegreyaSC fonts for all LaTeX engines. ]
+ 2022/09/14 (Bob Tennent) Supports Alegreya and AlegreyaSC fonts for all LaTeX engines. ]
\RequirePackage{ifxetex,ifluatex,textcomp}
@@ -150,7 +150,6 @@
\ifAlegreya@otf
\def\Alegreya@regular{Regular}
- \ifxetex\XeTeXtracingfonts=1\fi
\defaultfontfeatures{
Ligatures = TeX ,
Extension = .otf ,
diff --git a/fonts/alegreya/latex/AlegreyaSans.sty b/fonts/alegreya/latex/AlegreyaSans.sty
index c7ca828cfd..9c3ad18450 100644
--- a/fonts/alegreya/latex/AlegreyaSans.sty
+++ b/fonts/alegreya/latex/AlegreyaSans.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{AlegreyaSans}[%
- 2019/10/12 (Bob Tennent) Supports AlegreyaSans fonts for all LaTeX engines. ]
+ 2022/09/14 (Bob Tennent) Supports AlegreyaSans fonts for all LaTeX engines. ]
\RequirePackage{ifxetex,ifluatex,textcomp}
@@ -168,7 +168,6 @@
\ifAlegreyaSans@otf
\def\AlegreyaSans@regular{Regular}
- \ifxetex\XeTeXtracingfonts=1\fi
\defaultfontfeatures{
Ligatures = TeX ,
Extension = .otf ,
diff --git a/fonts/atkinson/README b/fonts/atkinson/README
index 82a191492c..455abaf470 100644
--- a/fonts/atkinson/README
+++ b/fonts/atkinson/README
@@ -1,5 +1,5 @@
This is the README for the atkinson package, version
-2021-02-05.
+2022-09-14.
This package provides LaTeX, pdfLaTeX, XeLaTeX and LuaLaTeX
support for the Atkinson Hyperlegible family of fonts,
diff --git a/fonts/atkinson/doc/atkinson-samples.pdf b/fonts/atkinson/doc/atkinson-samples.pdf
index c49d2aa8d4..c798214a85 100644
--- a/fonts/atkinson/doc/atkinson-samples.pdf
+++ b/fonts/atkinson/doc/atkinson-samples.pdf
Binary files differ
diff --git a/fonts/atkinson/latex/atkinson.sty b/fonts/atkinson/latex/atkinson.sty
index 70b90b827d..d9b0acdc99 100644
--- a/fonts/atkinson/latex/atkinson.sty
+++ b/fonts/atkinson/latex/atkinson.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{atkinson}
- [2021/02/05 (Bob Tennent) Supports Atkinson Hyperlegible fonts for all LaTeX engines.]
+ [2022/09/14 (Bob Tennent) Supports Atkinson Hyperlegible fonts for all LaTeX engines.]
\RequirePackage{ifxetex,ifluatex,xkeyval,textcomp}
@@ -67,7 +67,6 @@
\ifatkinson@otf
\def\atkinson@regular{Regular}
- \ifxetex\XeTeXtracingfonts=1\fi
\defaultfontfeatures{
Ligatures = TeX ,
Scale = \atkinsn@scale ,
diff --git a/macros/jptex/latex/jsclasses/LICENSE b/macros/jptex/latex/jsclasses/LICENSE
index 1f8bc0f533..7d331ec015 100644
--- a/macros/jptex/latex/jsclasses/LICENSE
+++ b/macros/jptex/latex/jsclasses/LICENSE
@@ -1,6 +1,6 @@
Copyright 1995-1999 ASCII MEDIA WORKS
Copyright 1999-2016 Haruhiko Okumura
-Copyright 2016-2020 Japanese TeX Development Community
+Copyright 2016-2022 Japanese TeX Development Community
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/macros/jptex/latex/jsclasses/README.md b/macros/jptex/latex/jsclasses/README.md
index 284efa7815..da6539d7bd 100644
--- a/macros/jptex/latex/jsclasses/README.md
+++ b/macros/jptex/latex/jsclasses/README.md
@@ -37,7 +37,7 @@ distributed separately.
## Release Date
-2021-07-01
+2022-09-13
Haruhiko Okumura,
Japanese TeX Development Community
diff --git a/macros/jptex/latex/jsclasses/jsclasses.dtx b/macros/jptex/latex/jsclasses/jsclasses.dtx
index 37567b64d9..39c85dcabe 100644
--- a/macros/jptex/latex/jsclasses/jsclasses.dtx
+++ b/macros/jptex/latex/jsclasses/jsclasses.dtx
@@ -9,13 +9,13 @@
% pLaTeX2ε新ドキュメントクラス(日本語 TeX 開発コミュニティ版)
% 原作者:奥村晴彦 <okumura@okumuralab.org>
%
-% Copyright 1993-2021
+% Copyright 1993-2022
% The LaTeX3 Project and any individual authors listed elsewhere
% in this file.
%
% Copyright 1995-1999 ASCII Corporation.
% Copyright 1999-2016 Haruhiko Okumura
-% Copyright 2016-2021 Japanese TeX Development Community
+% Copyright 2016-2022 Japanese TeX Development Community
%
% \fi
%
@@ -32,9 +32,10 @@
%<*driver>
\ProvidesFile{jsclasses.dtx}
%</driver>
- [2021/06/28 jsclasses (okumura, texjporg)]
+ [2022/09/13 jsclasses (okumura, texjporg)]
%<*driver>
-\documentclass{jsarticle}
+\RequirePackage{plautopatch}
+\documentclass[dvipdfmx]{jsarticle}
\usepackage{doc}
\xspcode"5C=1 %% \
\xspcode"22=1 %% "
@@ -481,10 +482,14 @@
% ようですので,少し小さくします。
% また,中央の要素も |\displaystyle| にします。
%
+% [2022-09-13] \LaTeXe~2021-11-15 (ltmath.dtx 2021/10/14 v1.2j)で
+% |\@currentcounter|が追加されましたので,追随します。
+%
% \begin{macrocode}
\def\eqnarray{%
\stepcounter{equation}%
\def\@currentlabel{\p@equation\theequation}%
+ \def\@currentcounter{equation}%
\global\@eqnswtrue
\m@th
\global\@eqcnt\z@
@@ -504,6 +509,9 @@
% \texttt{fleqn} で数式が本文左端から一定距離のところに出力されます。
% 森本さんにしたがって訂正しました。
%
+% [2022-09-13] \LaTeXe~2021-11-15 (ltmath.dtx 2021/10/14 v1.2j)で
+% |\@currentcounter|が追加されましたので,追随します。
+%
% \begin{macrocode}
\DeclareOption{leqno}{\input{leqno.clo}}
\DeclareOption{fleqn}{\input{fleqn.clo}%
@@ -511,6 +519,7 @@
\def\eqnarray{%
\stepcounter{equation}%
\def\@currentlabel{\p@equation\theequation}%
+ \def\@currentcounter{equation}%
\global\@eqnswtrue\m@th
\global\@eqcnt\z@
\tabskip\mathindent
@@ -771,9 +780,15 @@
% 発行する |\special| の中身を展開しておくようにしました。
% こうしないと,用紙サイズ設定を間違ってしまいます(Issue \#72)。
%
+% [2022-09-12] 次期\LaTeXe カーネルに|\stockwidth|,|\stockheight|が
+% 追加されるようですので,
+% クラスファイル側では未定義のときのみこれらの長さ変数を定義します。
+% h20y6mさん,ありがとうございます。
+%
% \begin{macrocode}
\iftombow
- \newdimen\stockwidth \newdimen\stockheight
+ \ifx\stockwidth\@undefined\newdimen\stockwidth\fi
+ \ifx\stockheight\@undefined\newdimen\stockheight\fi
\setlength{\stockwidth}{\paperwidth}
\setlength{\stockheight}{\paperheight}
\advance \stockwidth 2in
@@ -5589,6 +5604,13 @@
%
% [2018-03-11] |\next|などいくつかの内部命令を |\jsc@...| 付きの
% ユニークな名前にしました。
+%
+% [2022-09-13] \LaTeXe~2021-11-15 (ltfloat.dtx 2021/10/14 v1.2g)で
+% |\@currentcounter|が追加されましたので,追随します。
+% なお,\LaTeXe~2021-06-01 (ltfloat.dtx 2021/02/10 v1.2e)で
+% parhook対応として\cs{par}が追加されていますが,
+% 実は同時に\cs{color@endgroup}も\cs{endgraf}するように変更
+% されていますので,不要だと思います。というわけで追加しません。
% \begin{macrocode}
\long\def\@footnotetext{%
\insert\footins\bgroup
@@ -5597,6 +5619,7 @@
\splittopskip\footnotesep
\splitmaxdepth \dp\strutbox \floatingpenalty \@MM
\hsize\columnwidth \@parboxrestore
+ \def\@currentcounter{footnote}%
\protected@edef\@currentlabel{%
\csname p@footnote\endcsname\@thefnmark
}%
diff --git a/macros/jptex/latex/jsclasses/jsclasses.pdf b/macros/jptex/latex/jsclasses/jsclasses.pdf
index f41951d9e6..3a3f56fe36 100644
--- a/macros/jptex/latex/jsclasses/jsclasses.pdf
+++ b/macros/jptex/latex/jsclasses/jsclasses.pdf
Binary files differ
diff --git a/macros/jptex/latex/jsclasses/jslogo.dtx b/macros/jptex/latex/jsclasses/jslogo.dtx
index e8350bdb61..dc058e5ff4 100644
--- a/macros/jptex/latex/jsclasses/jslogo.dtx
+++ b/macros/jptex/latex/jsclasses/jslogo.dtx
@@ -15,7 +15,7 @@
% LaTeX 関連のロゴ(pLaTeX2ε新ドキュメントクラス付録)
%
% Copyright 1999-2016 Haruhiko Okumura
-% Copyright 2016-2019 Japanese TeX Development Community
+% Copyright 2016-2022 Japanese TeX Development Community
%
% \fi
%
@@ -29,7 +29,8 @@
%</driver>
[2019/07/25 okumura, texjporg]
%<*driver>
-\documentclass{jsarticle}
+\RequirePackage{plautopatch}
+\documentclass[dvipdfmx]{jsarticle}
\usepackage{doc}
\xspcode"5C=1 %% \
\xspcode"22=1 %% "
diff --git a/macros/jptex/latex/jsclasses/jslogo.pdf b/macros/jptex/latex/jsclasses/jslogo.pdf
index 6975d75515..d46e75216a 100644
--- a/macros/jptex/latex/jsclasses/jslogo.pdf
+++ b/macros/jptex/latex/jsclasses/jslogo.pdf
Binary files differ
diff --git a/macros/jptex/latex/jsclasses/jsverb.dtx b/macros/jptex/latex/jsclasses/jsverb.dtx
index ed6fefde63..a62afba435 100644
--- a/macros/jptex/latex/jsclasses/jsverb.dtx
+++ b/macros/jptex/latex/jsclasses/jsverb.dtx
@@ -22,7 +22,8 @@
%<jsverb>\NeedsTeXFormat{pLaTeX2e}
%<jsverb>\ProvidesFile{jsverb.sty}[2007/01/28 okumura]
%<*driver>
-\documentclass{jsarticle}
+\RequirePackage{plautopatch}
+\documentclass[dvipdfmx]{jsarticle}
\usepackage{doc}
\xspcode"5C=1 %% \
\xspcode"22=1 %% "
diff --git a/macros/jptex/latex/jsclasses/jsverb.pdf b/macros/jptex/latex/jsclasses/jsverb.pdf
index a2273084a5..6b323f735b 100644
--- a/macros/jptex/latex/jsclasses/jsverb.pdf
+++ b/macros/jptex/latex/jsclasses/jsverb.pdf
Binary files differ
diff --git a/macros/jptex/latex/jsclasses/okumacro.dtx b/macros/jptex/latex/jsclasses/okumacro.dtx
index e2d70e4770..9f20aaf31a 100644
--- a/macros/jptex/latex/jsclasses/okumacro.dtx
+++ b/macros/jptex/latex/jsclasses/okumacro.dtx
@@ -14,7 +14,8 @@
%<okumacro>\NeedsTeXFormat{pLaTeX2e}
%<okumacro>\ProvidesPackage{okumacro}[2021/07/01 okumura, texjporg]
%<*driver>
-\documentclass{jsarticle}
+\RequirePackage{plautopatch}
+\documentclass[dvipdfmx]{jsarticle}
\usepackage{doc}
\xspcode"5C=1 %% \
\xspcode"22=1 %% "
diff --git a/macros/jptex/latex/jsclasses/okumacro.pdf b/macros/jptex/latex/jsclasses/okumacro.pdf
index d01f531572..26cd6c2985 100644
--- a/macros/jptex/latex/jsclasses/okumacro.pdf
+++ b/macros/jptex/latex/jsclasses/okumacro.pdf
Binary files differ
diff --git a/macros/jptex/latex/jsclasses/okuverb.dtx b/macros/jptex/latex/jsclasses/okuverb.dtx
index b6cc0256ec..3694217245 100644
--- a/macros/jptex/latex/jsclasses/okuverb.dtx
+++ b/macros/jptex/latex/jsclasses/okuverb.dtx
@@ -20,7 +20,8 @@
%<okuverb>\NeedsTeXFormat{pLaTeX2e}
%<okuverb>\ProvidesFile{okuverb.sty}[2003/09/03 okumura]
%<*driver>
-\documentclass{jsarticle}
+\RequirePackage{plautopatch}
+\documentclass[dvipdfmx]{jsarticle}
\usepackage{doc}
\xspcode"5C=1 %% \
\xspcode"22=1 %% "
diff --git a/macros/jptex/latex/jsclasses/okuverb.pdf b/macros/jptex/latex/jsclasses/okuverb.pdf
index b8014b3c66..c0703b0c80 100644
--- a/macros/jptex/latex/jsclasses/okuverb.pdf
+++ b/macros/jptex/latex/jsclasses/okuverb.pdf
Binary files differ
diff --git a/macros/latex/contrib/asmeconf/README.md b/macros/latex/contrib/asmeconf/README.md
index e140c90277..ed1fece635 100644
--- a/macros/latex/contrib/asmeconf/README.md
+++ b/macros/latex/contrib/asmeconf/README.md
@@ -1,7 +1,7 @@
#asmeconf: A latex template for ASME conference papers#
- Version 1.31 dated 2022/07/04.
+ Version 1.32 dated 2022/09/14.
####Overview####
This class provides a LaTeX template for ASME Conference papers formatted according to
@@ -79,9 +79,14 @@
---
####Change log####
+ v1.32 (2022/09/14)
+ - Incorporate patch to correct bug in hyperxmp that had impaired pdf/a compliance.
+ - Add code to asmeconf.bst for empty page field in @article.
+
v1.31 (2022/07/04)
- Minor updates to address changes in the June 2022 release of LaTeX (PL 4) and the textcase package.
-- Add option to asmewide.sty to suppress final page column balancing, [raggedend], expand error message text.
+- Add option to asmewide.sty to suppress final page column balancing, \[raggedend\], expand error message text.
+
v1.30 (2022/03/14)
- Edit code loading fonts for Greek, Vietnamese, and cyrillic languages under pdflatex, to ensure compatibility with newtx v1.71. These options now require LaTeX distributions 2020/02/02 or later.
- Edit font loading for the case when luaLaTeX is called without fontspec.
diff --git a/macros/latex/contrib/asmeconf/asmeconf-template.pdf b/macros/latex/contrib/asmeconf/asmeconf-template.pdf
index 00c82e854c..59379fb80e 100644
--- a/macros/latex/contrib/asmeconf/asmeconf-template.pdf
+++ b/macros/latex/contrib/asmeconf/asmeconf-template.pdf
Binary files differ
diff --git a/macros/latex/contrib/asmeconf/asmeconf-template.tex b/macros/latex/contrib/asmeconf/asmeconf-template.tex
index 8b65781b7f..3788a13de4 100644
--- a/macros/latex/contrib/asmeconf/asmeconf-template.tex
+++ b/macros/latex/contrib/asmeconf/asmeconf-template.tex
@@ -4,7 +4,7 @@
%% This file is asmeconf-template.tex, a LaTeX template to format ASME Conference papers according to
%% the requirements on ASME's conference web pages, and including hypertext support for the pdf.
%%
-%% This file is version 1.31 dated 2022/07/04
+%% This file is version 1.32 dated 2022/09/14
%%
%% As of version 1.11, this template defaults to ASME's newer conference guidelines first posted July 2019.
%% Those guidelines changed the requested author block formatting to be inline.
@@ -84,6 +84,21 @@
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% New pdf management code (June 2021); with this, the class option [pdf-a] can be omitted.
+%% This change to the LaTeX kernel is being phased-in by the LaTeX3 team. Can delete if it gives you trouble.
+%% Under LuaLaTeX, choose pdfstandard=A-3b (and be cautious when loading extra fonts)
+
+%\RequirePackage{pdfmanagement-testphase}%
+% \DocumentMetadata{%
+% pdfstandard=A-3b,% A-2b, A-2u, A-3b, or A-3u
+% pdfversion=1.7,
+% lang=en-US,
+% }%
+ % 6 July 2022: this is breaking \hrefurl and \url. Not sure why, conflict with other parts of my code.
+ % \renewcommand\hrefurl[2]{{#1}{#2}} \renewcommand\url[1]{#1}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
%% Class options are described above. Change these options as desired.
%% If you are not using the language options, remove them (together with Appendices B and C)
%% Remove the [colorlinks] option before *final* submission to ASME, to get black text for printing,
@@ -94,7 +109,7 @@
%%%%% pdf metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\hypersetup{%
- pdfauthor={John H. Lienhard}, % <=== change to YOUR name[s]!
+ pdfauthor={John H. Lienhard},
pdftitle={ASME Conference Paper LaTeX Template}, % <=== change to YOUR pdf file title
pdfkeywords={ASME conference paper, LaTeX template, BibTeX style},% <=== change to YOUR pdf keywords
pdfsubject = {Describes the asmeconf LaTeX template}, % <=== change to YOUR subject
@@ -156,7 +171,6 @@
%%% \date{..} calls the same command.
\versionfootnote{Documentation for \texttt{asmeconf.cls}: Version~\versionno, \today.}% <=== Delete before final submission.
-
%%% Change these to your keywords. Keywords are automatically printed at the end of the abstract.
%%% This command MUST COME BEFORE the end of the abstract.
%%% If you don't want keywords, leave the argument of \keywords{} empty (or use the abstract* environment)
@@ -199,7 +213,6 @@ This paper is an example of and a {\upshape\LaTeX} template for typesetting ASM
\entry{$\infty$}{free stream value}
\end{nomenclature}
-
%%%%%%%%% BODY OF PAPER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Introduction}
@@ -222,7 +235,6 @@ After setting up the headers, authors, and title, issue the \verb|\maketitle| c
The abstract text must be placed into \verb|\begin{abstract}| \ldots \verb|\end{abstract}|. The abstract will automatically be italicized. Keywords may be included using the \verb|\keywords{..}| command. The \texttt{keyword} command \textit{must} be issued before the abstract environment.
-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Referring to Citations, Figures, and Equations}
diff --git a/macros/latex/contrib/asmeconf/asmeconf.bst b/macros/latex/contrib/asmeconf/asmeconf.bst
index 0e378d305d..8884ca5f21 100644
--- a/macros/latex/contrib/asmeconf/asmeconf.bst
+++ b/macros/latex/contrib/asmeconf/asmeconf.bst
@@ -4,7 +4,7 @@
%%%%% *** https://www.asme.org/publications-submissions/proceedings/author-guidelines/elements-of-a-paper/references ***
%%%%% *** The examples given by ASME do *not* cover all possibilities ***
%%%%%
-%%%%% This file is version 1.13 dated 2021/12/02 (and checked 2022/02/14)
+%%%%% This file is version 1.14 dated 2022/09/13
%%%%%
%%%%% Author: John H. Lienhard V
%%%%% Department of Mechanical Engineering
@@ -26,6 +26,9 @@
%%%%% Added: urlprefix = {}, format.web.urldate, bbl.urldate; urltype field changes "accessed" to something else.
%%%%% Added: venue and eventdate to @inproceedings
%%%%%
+%%%%% Edits in version 1.14, 2022/09/13
+%%%%% Add code to format.journal.pages to deal with empty pages
+%%%%%
%%%%% Edits in version 1.13, 2021/12/02
%%%%% Switched remaining http:// prefixes to https://
%%%%% Replace \href{}{} in \eprint by \url
@@ -1036,8 +1039,16 @@ FUNCTION {format.pages}
}
FUNCTION {format.journal.pages}
-{ pages duplicate$ empty$ 'pop$
- { swap$ duplicate$ empty$
+{ pages duplicate$ empty$
+ { "empty pages in " cite$ * warning$ }
+ 'skip$
+ if$
+ duplicate$ empty$
+ { pop$
+ " " *
+ format.year *
+ }
+ { swap$ duplicate$ empty$
{ pop$ pop$ format.pages }
{
" " *
@@ -1054,7 +1065,7 @@ FUNCTION {format.journal.pages}
*
}
if$
- }
+ }
if$
}
FUNCTION {format.journal.eid}
diff --git a/macros/latex/contrib/asmeconf/asmeconf.cls b/macros/latex/contrib/asmeconf/asmeconf.cls
index 97b2ce8404..c078785e01 100644
--- a/macros/latex/contrib/asmeconf/asmeconf.cls
+++ b/macros/latex/contrib/asmeconf/asmeconf.cls
@@ -5,8 +5,8 @@
%% ASME conference requirements as represented on ASME's conference web pages in 2022.
%%
%% This file's version and date:
- \def\versionno{1.31}
- \def\versiondate{2022/07/04\space}
+ \def\versionno{1.32}
+ \def\versiondate{2022/09/14\space}
%%
%% Author: John H. Lienhard, V
%% Department of Mechanical Engineering
@@ -1129,9 +1129,23 @@
\RequirePackage{hyperxmp}% improve transfer of metadata to pdf
+% Patch bug in hyperxmp, unless a more recent version is used.
+\ifdefined\hyxmp@no@bad@parts% \hyxmp@no@bad@parts is not def'd in TeX Live 2019 or older
+ \@ifpackagelater{hyperxmp}{2022/09/14}{% no new version at present, still 2020/11/22
+ \relax
+ }{%
+ \newcount\hypxmp@tempcnt
+ \define@key{Hyp}{pdfapart}{%
+ \afterassignment\hyxmp@no@bad@parts\hypxmp@tempcnt=0#1\relax
+ \hyxmp@pdfstringdef\@pdfapart{\the\hypxmp@tempcnt}%
+ }
+ }
+\else
+ \relax
+\fi
+
\RequirePackage[psdextra]{hyperref} % recent kernel transition suggests providing most hyperref options via \hypersetup,
% but setting psdextra here (for additional math support in bookmarks) 2021/12/01
-
\hypersetup{%
unicode, % Unicode encoded PDF strings
pdfborder={0 0 0},%
diff --git a/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf b/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
index cf119cdbde..de1e14c24a 100644
--- a/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
+++ b/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
Binary files differ
diff --git a/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex b/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
index 2456b0266d..a0f58488e4 100644
--- a/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
+++ b/macros/latex/contrib/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
@@ -7,6 +7,8 @@
%% * \begin{widetext[N] .. changes upper/lower separation of wide material from default 5pt to Npt
%% * \begin{widetext}[][tbn]: t = top line only; b = bottom line only; n = no lines. BOTH arguments are REQUIRED, even if first is left empty.
%%
+%% asmewide,sty supports one option, [raggedend], which suppresses final page column balancing: \usepackage[raggedend]{asmewide}
+%%
%% The widetext environment can only appear once per page. It clashes with floats and footnotes, as discussed herein.
%%
%% NB: the strip environment from cuted is incompatible with the [lineno] option to asmeconf!
@@ -14,7 +16,7 @@
\documentclass[nofoot,colorlinks,balance,pdf-acolorlinks,balance,pdf-a]{asmeconf}
\def\ACwidetextversion{1.1}
-\def\ACwidetextdate{February 15, 2022}
+\def\ACwidetextdate{September 14, 2022}
\usepackage{lipsum}% Latin filler text
\usepackage{asmewide}
@@ -114,7 +116,7 @@ to be read---the rest is simply filler to aid in layout.}
\centering{\includegraphics{tesseral-harmonic.pdf}}%
\subcaption{\label{fig:tesseral}}%
\end{subfigure}%
-\caption{A figure with two subfigures: (a) Zonal harmonic $n=1, m=0$, (b) Tesseral harmonic $n=2, m=3$. See Appendix~\ref{sec:sph-har}.\label{fig:1}}
+\caption{A figure with two subfigures: (a) Zonal harmonic $n=1, m=0$, (b) Tesseral harmonic $n=2, m=3$. See Appendix~\ref{sec:sph-har}.}\label{fig:1}
\end{figure*}
%%%%%%%%%%%%%%%%%%% end two column figure %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -265,7 +267,7 @@ until both are done\footnotemark. The single column table, Table~\ref{tab:3}, is
%%%%%%%%%%%%%%%%%%% begin linewidth table %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{table}[b]
\newcolumntype{C}{>{$}c<{$}} % math-mode version of "c" column type, from array package
-\caption{\label{tab:3}Table at full column width with columns in math mode}
+\caption{Table at full column width with columns in math mode}\label{tab:3}
\centering{%
\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}CCCC@{\extracolsep{\fill}}}
\hline\hline
@@ -320,7 +322,7 @@ q_\textrm{gray} & q_\textrm{int, $T_1$} & q_\textrm{int, $T_m$} & q_\textrm{exa
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\appendix
-\section{Spherical harmonics\label{sec:sph-har}}
+\section{Spherical harmonics}\label{sec:sph-har}
Without getting into the details, a regular function $f(\theta,\phi)$ on the surface of the unit sphere may be written
\begin{equation}
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md
index 17b1e7e79b..f950f9b51b 100644
--- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/README.md
@@ -2,7 +2,7 @@
A beamer inner theme which reproduces standard beamer blocks using tcolorboxes
-Current version: 2022/09/06 version v0.4
+Current version: 2022/09/14 version v0.5
This project is licensed under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txt
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
index 4b50b04ca1..7878e5620e 100644
--- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
@@ -12,40 +12,76 @@
% See http://www.latex-project.org/lppl.txt
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{beamerinnerthemetcolorbox}[2022/09/06 version v0.4 Beamer blocks with tcolorboxes]
+\ProvidesPackage{beamerinnerthemetcolorbox}[2022/09/14 version v0.5 Beamer blocks with tcolorboxes]
\RequirePackage{tcolorbox}
\tcbuselibrary{skins,hooks}
+\providecommand\@secondofthree[3]{#2}
+
\tcbset{
- beamer@tcb@iftitle/.code n args={1}{
- \ifbeamer@tcb@title
- \pgfkeysalso{#1}
- \fi
+ beamer@tcb@if/.code n args = {3}{%
+ \csname #1\endcsname\expandafter\@secondofthree\fi
+ \@secondoftwo{\pgfkeysalso{#2}}{\pgfkeysalso{#3}}%
}
}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Theme Options
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifbeamer@tcb@rounded
\newif\ifbeamer@tcb@shadow
\newif\ifbeamer@tcb@shaded
-\newif\ifbeamer@tcb@title
+\newif\ifbeamer@tcb@showtitle
\newif\ifbeamer@tcb@inmargin
+\newif\ifbeamer@tcb@color
+\newif\ifbeamer@tcb@left
+\newif\ifbeamer@tcb@right
+\newif\ifbeamer@tcb@center
+\newif\ifbeamer@tcb@titlepage
+\newif\ifbeamer@tcb@blocks
+\beamer@tcb@colortrue
\def\beamer@tcb@true{true}
+\tikzset{
+ /beamer@tcb/.cd,
+ wd/.store in = \beamer@tcb@wd,
+ wd = \textwidth,
+ dp/.code = \relax,
+ ht/.code = \relax,
+ left/.code = \beamer@tcb@lefttrue,
+ right/.code = \beamet@tcb@righttrue,
+ center/.code = \beamer@tcb@centertrue,
+ leftskip/.store in = \beamer@tcb@leftskip,
+ leftskip = 0.05cm,
+ rightskip/.store in = \beamer@tcb@rightskip,
+ rightskip = 0.05cm,
+ sep/.store in = \beamer@tcb@sep,
+ sep = 1mm,
+ colsep/.code = \relax,
+ colsep*/.code = \relax,
+ shadow/.code = \relax,
+ rounded/.code = \relax,
+ ignorebg/.code = \relax,
+ vmode/.code = \relax,
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Theme Options
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareOptionBeamer{shadow}[true]{\csname beamer@tcb@shadow#1\endcsname}
-\DeclareOptionBeamer{rounded}[true]{\csname beamer@tcb@rounded#1\endcsname\csname beamer@tcb@shaded#1\endcsname}
+\DeclareOptionBeamer{rounded}[true]{\csname beamer@tcb@rounded#1\endcsname\csname beamer@tcb@shaded#1\endcsname\csname beamer@tcb@showtitlefalse\endcsname}
\DeclareOptionBeamer{shaded}[true]{\csname beamer@tcb@shaded#1\endcsname}
\DeclareOptionBeamer{inmargin}[true]{\csname beamer@tcb@inmargin#1\endcsname}
+\DeclareOptionBeamer{showtitle}[true]{\csname beamer@tcb@showtitle#1\endcsname}
+\DeclareOptionBeamer{titlepage}[true]{\csname beamer@tcb@titlepage#1\endcsname}
+\DeclareOptionBeamer{blocks}[true]{\csname beamer@tcb@blocks#1\endcsname}
\ExecuteOptionsBeamer{shadow=false}
\ExecuteOptionsBeamer{rounded=false}
\ExecuteOptionsBeamer{shaded=false}
\ExecuteOptionsBeamer{inmargin=false}
+\ExecuteOptionsBeamer{showtitle=true}
+\ExecuteOptionsBeamer{titlepage=true}
+\ExecuteOptionsBeamer{blocks=true}
% check options from other themes
\ifdefined\beamer@themerounded@shadow
@@ -54,6 +90,7 @@
\ifx\beamer@themerounded@shadow\beamer@tcb@true
\beamer@tcb@shadowtrue
\fi
+ \beamer@tcb@showtitlefalse
\fi
\ifdefined\beamer@putleft
@@ -112,7 +149,6 @@
}
\else
\tcbsetforeverylayer{sharpish corners}
- \beamer@tcb@titletrue
\fi
\ifbeamer@tcb@shaded
@@ -143,58 +179,63 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\mode<presentation>
-% normal block
-\setbeamertemplate{block begin}{%
- \beamer@tcb@colini
- \ifx\insertblocktitle\@empty\else
- \beamer@tcb@titletrue
- \fi
- \begin{tcolorbox}[
- colback=beamer@tcb@bodybg,
- colbacktitle=beamer@tcb@titlebg,
- coltext=beamer@tcb@bodyfg,
- coltitle=beamer@tcb@titlefg,
- before title={\usebeamerfont{block title}},
- before upper={\usebeamercolor{block body}\usebeamerfont{block body}},
- beamer@tcb@iftitle={title={\insertblocktitle}}
- ]
-}
-\setbeamertemplate{block end}{\end{tcolorbox}}
-
-% alert block
-\setbeamertemplate{block alerted begin}{%
- \beamer@tcb@colini[ alerted]
- \ifx\insertblocktitle\@empty\else
- \beamer@tcb@titletrue
- \fi
- \begin{tcolorbox}[
- colback=beamer@tcb@bodybg,
- colbacktitle=beamer@tcb@titlebg,
- coltext=beamer@tcb@bodyfg,
- coltitle=beamer@tcb@titlefg,
- before title={\usebeamerfont{block title alerted}},
- before upper={\usebeamercolor{block body alerted}\usebeamerfont{block body alerted}},
- beamer@tcb@iftitle={title={\insertblocktitle}}
- ]
-}
-\setbeamertemplate{block alerted end}{\end{tcolorbox}}
-
-% example block
-\setbeamertemplate{block example begin}{%
- \beamer@tcb@colini[ example]
- \ifx\insertblocktitle\@empty\else
- \beamer@tcb@titletrue
- \fi
- \begin{tcolorbox}[
+\newtcolorbox{beamer@tcb@block}[1][]{
+ code={
+ \beamer@tcb@colini[#1]
+ \ifx\insertblocktitle\@empty\else
+ \beamer@tcb@showtitletrue
+ \fi
+ },
+ colback=beamer@tcb@bodybg,
+ colbacktitle=beamer@tcb@titlebg,
+ coltext=beamer@tcb@bodyfg,
+ coltitle=beamer@tcb@titlefg,
+ before title={\usebeamerfont{block title}},
+ before upper={\usebeamercolor{block body}\usebeamerfont{block body}},
+ beamer@tcb@if={ifbeamer@tcb@showtitle}{title={\insertblocktitle}}{},
+}
+
+\ifbeamer@tcb@blocks
+ \setbeamertemplate{block begin}{\begin{beamer@tcb@block}}
+ \setbeamertemplate{block end}{\end{beamer@tcb@block}}
+ \setbeamertemplate{block alerted begin}{\begin{beamer@tcb@block}[ alerted]}
+ \setbeamertemplate{block alerted end}{\end{beamer@tcb@block}}
+ \setbeamertemplate{block example begin}{\begin{beamer@tcb@block}[ example]}
+ \setbeamertemplate{block example end}{\end{beamer@tcb@block}}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% patch title page etc.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\beamer@tcb@patchcolorbox}{%
+ \renewtcolorbox{beamercolorbox}[2][]{%
+ code={%
+ \usebeamercolor{##2}%
+ \colorlet{beamer@tcb@bodybg}{##2.bg}%
+ \colorlet{beamer@tcb@bodyfg}{##2.fg}%
+ \ifbeamercolorempty[bg]{##2}{}{\beamer@tcb@colorfalse}%
+ \tikzset{/beamer@tcb/.cd,##1}%
+ },
colback=beamer@tcb@bodybg,
- colbacktitle=beamer@tcb@titlebg,
coltext=beamer@tcb@bodyfg,
- coltitle=beamer@tcb@titlefg,
- before title={\usebeamerfont{block title example}},
- before upper={\usebeamercolor{block body example}\usebeamerfont{block body example}},
- beamer@tcb@iftitle={title={\insertblocktitle}}
- ]
-}
-\setbeamertemplate{block example end}{\end{tcolorbox}}
+ beamer@tcb@if={ifbeamer@tcb@color}{no shadow}{boxsep=\beamer@tcb@sep},
+ width=\beamer@tcb@wd,
+ beamer@tcb@if={ifbeamer@tcb@center}{halign=center}{},
+ beamer@tcb@if={ifbeamer@tcb@left}{halign=left}{},
+ beamer@tcb@if={ifbeamer@tcb@right}{halign=right}{},
+ left=\beamer@tcb@leftskip,
+ right=\beamer@tcb@rightskip,
+ }%
+}
+
+\ifbeamer@tcb@titlepage
+ \addtobeamertemplate{title page}{\begingroup\beamer@tcb@patchcolorbox}{\endgroup}
+ \addtobeamertemplate{part page}{\begingroup\beamer@tcb@patchcolorbox}{\endgroup}
+ \addtobeamertemplate{section page}{\begingroup\beamer@tcb@patchcolorbox}{\endgroup}
+ \addtobeamertemplate{subsection page}{\begingroup\beamer@tcb@patchcolorbox}{\endgroup}
+\fi
\mode<all>
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf
index 07d7d84c78..6c7f2c6a11 100644
--- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex
index 234082375d..1adec46b48 100644
--- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.tex
@@ -68,6 +68,15 @@
\lstset{style=tcolorboxstyle}
+%\makeatletter
+\newcommand{\prefix}{./build}
+\tcbset{
+ compilable listing/.style={listing file={\prefix/\jobname-listing-\thetcblistingcount.tex}},
+ run pdflatex/.style={run@system@command={cd\space \prefix;\space pdflatex}{\jobname-listing-\thetcblistingcount.tex}},%
+}
+%\makeatother
+
+
% meta %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\title{The tcolorbox beamer inner theme}
\subtitle{A beamer inner theme to reproduce standard beamer blocks using tcolorboxes}
@@ -77,7 +86,7 @@
\url{https://github.com/samcarter/beamertheme-tcolorbox}\\
\url{https://www.ctan.org/pkg/beamertheme-tcolorbox}
}{samcarter}}
-\date{Version v0.4 \textendash{} 2022/09/06}
+\date{Version v0.5 \textendash{} 2022/09/14}
\begin{document}
\maketitle
@@ -89,9 +98,7 @@ Over the last decade of answering beamer problems and more recently also being o
For all these cases, there is now an alternative to the default beamer blocks: The tcolorbox inner beamer theme will replace the usual beamer mechanism to draw blocks with tcolorboxes. The tcolorboxes will automatically adopt the look and feel (round vs.\ sharp corners and shadows) as well as the colours of the normal beamer blocks.
-The package is included in \TeX{}Live
-%and MiK\TeX\
-and available from \textsc{CTAN} (\url{https://www.ctan.org/pkg/beamertheme-tcolorbox}).
+The package is included in \TeX{}Live and MiK\TeX\ and available from \textsc{CTAN} (\url{https://www.ctan.org/pkg/beamertheme-tcolorbox}).
The development version of this package is located at \url{https://github.com/samcarter/beamertheme-tcolorbox}. If you have any problems, ideas or other feedback, please make constructive use of the issue tracker.
Copyright \raisebox{0.2em}{\tiny\fontfamily{cmr}\selectfont\textcopyright} \texttt{samcarter}. Permission is granted to copy, distribute and\slash or modify this software under the terms of the LaTeX project public licence, version 1.3c or later \url{http://www.latex-project.org/lppl.txt}.
@@ -137,28 +144,19 @@ In this simple configuration, the look and feel of the new blocks will be taken
\section{Options}
-In addition to automatically adopting settings from the other themes, one can also influence the look and feel via these options:
+In addition to automatically adopting settings from other themes, one can also explicitly influence the look and feel via these options:
\begin{description}
-\item[inmargin] controls if the block titles are placed in the left sidebar instead of the top of the block, e.g. for themes like \lstinline|Bergen| (default: \lstinline|false|)
-\item[rounded] controls if corners are rounded or sharp (default: \lstinline|false|)
-\item[shadow] controls if the block has a shadow (default: \lstinline|false|)
-\item[shaded] controls if there is a short colour gradient between the title and the body or if there is a sharp border between the colours (Default: \lstinline|false|; if rounded corners are activated, it is \lstinline|true|)
+\item[blocks] controls if tcolorboxes should be used for beamer blocks (default: \lstinline|true|)
+\item[inmargin] controls if the block titles are placed in the left sidebar instead of the top of the block, e.g. for themes like \lstinline|Bergen| (default: \lstinline|false|, but set to \lstinline|true| if the \lstinline|inmargin| inner theme is detected)
+\item[rounded] controls if corners are rounded or sharp (default: \lstinline|false|, but set to \lstinline|true| if the \lstinline|rounded| inner theme is detected)
+\item[shaded] controls if there is a short colour gradient between the title and the body (default: \lstinline|false|, but set to \lstinline|true| if the block corners are rounded)
+\item[shadow] controls if the block has a shadow (default: \lstinline|false|, but set to \lstinline|true| if the \lstinline|shadow| outer theme is detected)
+\item[showtitle] controls if a small coloured stripe is shown for blocks with empty title (default: \lstinline|true|, but set to \lstinline|false| if the block has rounded corners)
+\item[titlepage] controls if tcolorboxes should be used for the title page, section page etc. (default: \lstinline|true|)
\end{description}
These options can be set to \lstinline|true| or \lstinline|false| (calling either option without explicit \lstinline|true| or \lstinline|false| will set it to \lstinline|true|).
-\begin{tcolorbox}[title={}]
-\begin{lstlisting}
-\useinnertheme[
- rounded,
- shadow=false,
- shaded,
- inmargin=false
-]{tcolorbox}
-\end{lstlisting}
-\end{tcolorbox}
-
-If one for example likes the Antibes theme, but prefers the blocks to have shadows, they can now easily be added:
-
+If one for example likes the Antibes theme, but prefers the blocks to have shadows, they can now easily be added: \nopagebreak
\begin{tcblisting}{
listing and comment,
pdf comment,
@@ -217,10 +215,4 @@ Beyond these two options, the users also has the myriads of options of the tcolo
\end{document}
\end{tcblisting}
-\section{Caveats and known issues}
-
-\begin{itemize}
-\item at the moment, this theme only applies to blocks. Things like the title page, which directly use beamercolorboxes, won't be replaced by tcolorboxes
-\end{itemize}
-
\end{document}
diff --git a/macros/latex/contrib/beamer/CHANGELOG.md b/macros/latex/contrib/beamer/CHANGELOG.md
index 9bfff6ad56..ff3c75b7a7 100644
--- a/macros/latex/contrib/beamer/CHANGELOG.md
+++ b/macros/latex/contrib/beamer/CHANGELOG.md
@@ -8,6 +8,16 @@ a major and minor version only.
## [Unreleased]
+## [v3.68]
+
+### Changed
+
+- simplified non-text links for navigation symbols and framezoom
+
+### Fixed
+- fixed height of non-text links to prevent overlaps in vertically stacked miniframes (see #780)
+- avoid problem with non-black black (see #772 and #659)
+
## [v3.67]
### Changed
@@ -202,7 +212,8 @@ a major and minor version only.
- Support for `noxcolor` with `beamerarticle` (see #483)
- Treatment of mixed overlay/alert specifications
-[Unreleased]: https://github.com/josephwright/beamer/compare/v3.67...HEAD
+[Unreleased]: https://github.com/josephwright/beamer/compare/v3.68...HEAD
+[v3.68]: https://github.com/josephwright/beamer/compare/v3.67...v3.68
[v3.67]: https://github.com/josephwright/beamer/compare/v3.66...v3.67
[v3.66]: https://github.com/josephwright/beamer/compare/v3.65...v3.66
[v3.65]: https://github.com/josephwright/beamer/compare/v3.64...v3.65
diff --git a/macros/latex/contrib/beamer/base/beamer.cls b/macros/latex/contrib/beamer/base/beamer.cls
index 7e5b558121..475d5d0ab6 100644
--- a/macros/latex/contrib/beamer/base/beamer.cls
+++ b/macros/latex/contrib/beamer/base/beamer.cls
@@ -12,7 +12,7 @@
% See the file doc/licenses/LICENSE for more details.
\ProvidesClass{beamer}
- [2022/05/17 v3.67 A class for typesetting presentations]
+ [2022/09/13 v3.68 A class for typesetting presentations]
% Setup modes and check for article option
% Also loads packages required by both beamer and beamerarticle
diff --git a/macros/latex/contrib/beamer/base/beamerarticle.sty b/macros/latex/contrib/beamer/base/beamerarticle.sty
index c56dbc55a3..1de9be15f6 100644
--- a/macros/latex/contrib/beamer/base/beamerarticle.sty
+++ b/macros/latex/contrib/beamer/base/beamerarticle.sty
@@ -12,7 +12,7 @@
% See the file doc/licenses/LICENSE for more details.
\ProvidesPackage{beamerarticle}
- [2022/05/17 v3.67 beamer input in article mode]
+ [2022/09/13 v3.68 beamer input in article mode]
% Setup modes and check for article option
% Also loads packages required by both beamer and beamerarticle
diff --git a/macros/latex/contrib/beamer/base/beamerbaseboxes.sty b/macros/latex/contrib/beamer/base/beamerbaseboxes.sty
index cf53f9544a..1248f957cd 100644
--- a/macros/latex/contrib/beamer/base/beamerbaseboxes.sty
+++ b/macros/latex/contrib/beamer/base/beamerbaseboxes.sty
@@ -169,7 +169,7 @@
%
% clipping is needed because shadow is typeset on top of box
\begin{pgfscope}
- \pgfsetcolor{black}
+ \pgfsetcolor{beamer@safeblack}
\pgfpathrectangle{\pgfpoint{4bp}{8.1bp}}{\pgfpoint{\bmb@boxwidth}{\bmb@boxheight-2bp}}
\pgfusepath{fill}
\end{pgfscope}
diff --git a/macros/latex/contrib/beamer/base/beamerbaseframesize.sty b/macros/latex/contrib/beamer/base/beamerbaseframesize.sty
index 0cac2fd8ad..a11ce6f4b1 100644
--- a/macros/latex/contrib/beamer/base/beamerbaseframesize.sty
+++ b/macros/latex/contrib/beamer/base/beamerbaseframesize.sty
@@ -51,21 +51,14 @@
\only<#1>{%
{\hypersetup{pdfhighlight={/P},pdfborder={0 0 \beamer@zoomborderwidth}}%
\global\setbox\@tempboxa=\vbox{\hyperlink{\beamer@labelzoomed}{%
- \expandafter\ifx\csname XeTeXrevision\endcsname\relax
- \vbox to #7{%
- \hbox to#6{\hfil}%
- \vfil%
- }%
+ \expandafter\ifx\csname XeTeXrevision\endcsname\relax%
\else%
- \begingroup%
- \normalsize%
- \begin{pgfpicture}{0pt}{0pt}{#6}{#7}%
- \pgfsetfillopacity{0}
- \pgftext[x=0cm,y=3pt]{.}
- \pgftext[x=#6,y=\dimexpr#7-\baselineskip+3pt]{.}
- \end{pgfpicture}%
- \endgroup%
- \fi%
+ \special{pdf:xann width #6 height #7 depth 0pt}%
+ \fi%
+ \vbox to #7{%
+ \hbox to#6{\hfil}%
+ \vfil%
+ }%
}}}%
\ht\@tempboxa=0pt%
\wd\@tempboxa=0pt%
diff --git a/macros/latex/contrib/beamer/base/beamerbasenavigation.sty b/macros/latex/contrib/beamer/base/beamerbasenavigation.sty
index 59886007c4..408fa4bfe4 100644
--- a/macros/latex/contrib/beamer/base/beamerbasenavigation.sty
+++ b/macros/latex/contrib/beamer/base/beamerbasenavigation.sty
@@ -213,11 +213,19 @@
\fi
{%
\def\beamer@linkspace#1{%
- \begin{pgfpicture}{0pt}{-1.5pt}{#1}{5.5pt}
- \pgfsetfillopacity{0}
- \pgftext[x=0pt,y=-1.5pt]{.}
- \pgftext[x=#1,y=5.5pt]{.}
- \end{pgfpicture}}
+ \@ifundefined{if@RTL}{%
+ \special{dvipdfmx:catch_phantom true height 8pt depth 1.5pt}%
+ \vbox to7.5pt{}\kern#1%
+ }{%
+ \if@RTL%
+ \vbox to7.5pt{}\kern#1%
+ \special{dvipdfmx:catch_phantom true height 8pt depth 1.5pt}%
+ \else%
+ \special{dvipdfmx:catch_phantom true height 8pt depth 1.5pt}%
+ \vbox to7.5pt{}\kern#1%
+ \fi%
+ }%
+ }%
}
\pgfdefobject{beamerslidenavlight}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
index acc9216b8c..68f5600799 100644
--- a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
@@ -12,6 +12,7 @@
\mode<presentation>
\definecolor{beamer@blendedblue}{rgb}{0.2,0.2,0.7} % use structure theme to change
+\colorlet{beamer@safeblack}{black} % safe copy of black for shadows etc.
\setbeamercolor{normal text}{fg=black,bg=white}
\setbeamercolor{alerted text}{fg=red}
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
index 3113bfb92a..0a25efc33b 100644
--- a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
@@ -21,18 +21,16 @@
\newcommand{\beamer@xelatex@fixminiframes}{%
\expandafter\ifx\csname XeTeXrevision\endcsname\relax
\else
- \pgfsetfillopacity{0}
- \pgftext[x=0cm,y=0.0cm]{.}
- \pgftext[x=0.1cm,y=0.1cm]{.}
+ \special{dvipdfmx:catch_phantom true height 0.1cm depth 0cm}%
\fi
}
\defbeamertemplate*{mini frame}{default}
{%
+ \beamer@xelatex@fixminiframes
\begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
\pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
\pgfusepath{fill,stroke}
- \beamer@xelatex@fixminiframes
\end{pgfpicture}%
}
[action]
@@ -42,19 +40,19 @@
\defbeamertemplate*{mini frame in current section}{default}
{%
+ \beamer@xelatex@fixminiframes
\begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
\pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
\pgfusepath{stroke}
- \beamer@xelatex@fixminiframes
\end{pgfpicture}%
}
\defbeamertemplate*{mini frame in current subsection}{default}
{%
+ \beamer@xelatex@fixminiframes
\begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
\pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
\pgfusepath{stroke}
- \beamer@xelatex@fixminiframes
\end{pgfpicture}%
}
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
index de2c9775cb..d0251deab0 100644
--- a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
@@ -65,7 +65,7 @@
\advance\beamer@tempdim by 2pt%
\begin{pgfpicture}{0pt}{0pt}{\paperwidth}{\beamer@tempdim}
\begin{pgfscope}
- \pgfsetfillcolor{black}%
+ \pgfsetfillcolor{beamer@safeblack}%
\pgfpathrectangle{\pgfpoint{0pt}{-4pt}}{\pgfpoint{\paperwidth}{8pt}}%
\pgfsetfading{beamer@topshadowmask}{}%
\pgfusepath{fill}%
diff --git a/macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf b/macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
index 7aebaaeccf..e18033ad3c 100644
--- a/macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
+++ b/macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf b/macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
index 5bad383bf6..cd5a3421d6 100644
--- a/macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
+++ b/macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf b/macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
index 54c13f9716..2555657089 100644
--- a/macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
+++ b/macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beamerug-introduction.tex b/macros/latex/contrib/beamer/doc/beamerug-introduction.tex
index c46e8842e2..317ab826bd 100644
--- a/macros/latex/contrib/beamer/doc/beamerug-introduction.tex
+++ b/macros/latex/contrib/beamer/doc/beamerug-introduction.tex
@@ -14,7 +14,7 @@
\section{Introduction}
-\beamer\ is a \LaTeX\ class for creating presentations that are held using a projector, but it can also be used to create transparency slides. Preparing presentations with \beamer\ is different from preparing them with \textsc{wysiwyg} programs like Libre-/OpenOffice.org Impress, Apple Keynote, KOffice KPresenter or Microsoft PowerPoint. A \beamer\ presentation is created like any other \LaTeX\ document: It has a preamble and a body, the body contains |\section|s and |\subsection|s, the different slides (called \emph{frames} in \beamer) are put in environments, they are structured using |itemize| and |enumerate| environments, and so on. The obvious disadvantage of this approach is that you have to know \LaTeX\ in order to use \beamer. The advantage is that if you know \LaTeX, you can use your knowledge of \LaTeX\ also when creating a presentation, not only when writing papers.
+\beamer\ is a \LaTeX\ class for creating presentations that are held using a projector, but it can also be used to create transparency slides. Preparing presentations with \beamer\ is different from preparing them with \textsc{wysiwyg} programs like Libre-/OpenOffice.org Impress, Apple Keynote, Calligra Stage or Microsoft PowerPoint. A \beamer\ presentation is created like any other \LaTeX\ document: It has a preamble and a body, the body contains |\section|s and |\subsection|s, the different slides (called \emph{frames} in \beamer) are put in environments, they are structured using |itemize| and |enumerate| environments, and so on. The obvious disadvantage of this approach is that you have to know \LaTeX\ in order to use \beamer. The advantage is that if you know \LaTeX, you can use your knowledge of \LaTeX\ also when creating a presentation, not only when writing papers.
\subsection{Main Features}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-localstructure.tex b/macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
index 1f58012eac..232979ac5c 100644
--- a/macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
+++ b/macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
@@ -1036,6 +1036,18 @@ Normally, \beamer\ uses \TeX's normal typesetting mechanism to position text and
The package |textpos| provides several commands for positioning text absolutely and it works together with \beamer. When using this package, you will typically have to specify the options |overlay| and perhaps |absolute|. For details on how to use the package, please see its documentation.
+Another package to conveniently position elements at specific positions on the frame is Ti\emph{k}Z. Besides the possibility to manually chose coordinates, this also allows to position elements in respect to the page:
+
+ \example
+\begin{verbatim}
+\usepackage{tikz}
+
+\begin{frame}
+ \tikz[remember picture, overlay] \node at (3.1415,1) {I'm here};
+
+ \tikz[remember picture, overlay] \node at (current page.center) {I'm the centre of the frame!};
+\end{frame}
+\end{verbatim}
\subsection{Verbatim and Fragile Text}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-overlays.tex b/macros/latex/contrib/beamer/doc/beamerug-overlays.tex
index c3d770701c..82767756f5 100644
--- a/macros/latex/contrib/beamer/doc/beamerug-overlays.tex
+++ b/macros/latex/contrib/beamer/doc/beamerug-overlays.tex
@@ -539,9 +539,9 @@ This section explains how to define new commands that are overlay specification-
\example
\begin{verbatim}
-\renewenvironment<>{verse}
-{\begin{actionenv}#1\begin{originalverse}}
-{\end{originalverse}\end{actionenv}}
+\renewenvironment<>{center}
+ {\begin{actionenv}#1\begin{originalcenter}}
+ {\end{originalcenter}\end{actionenv}}
\end{verbatim}
\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beameruserguide.pdf b/macros/latex/contrib/beamer/doc/beameruserguide.pdf
index 633300470c..2c93b611ac 100644
--- a/macros/latex/contrib/beamer/doc/beameruserguide.pdf
+++ b/macros/latex/contrib/beamer/doc/beameruserguide.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beameruserguide.tex b/macros/latex/contrib/beamer/doc/beameruserguide.tex
index b6ca2c0380..1380e2307d 100644
--- a/macros/latex/contrib/beamer/doc/beameruserguide.tex
+++ b/macros/latex/contrib/beamer/doc/beameruserguide.tex
@@ -13,7 +13,7 @@
\documentclass{ltxdoc}
-\def\beamerugversion{3.67}
+\def\beamerugversion{3.68}
\def\beamerugpgfversion{3.1.7}
\def\beamerugxcolorversion{2.00}
@@ -25,7 +25,7 @@
\usepackage{pifont}
\usepackage{makeidx}
\usepackage{pgf,xcolor}
-\usepackage[pdfborder={0 0 0},bookmarksnumbered]{hyperref}
+\AddToHook{package/hyperref/after}{\hypersetup{pdfborder={0 0 0},bookmarksnumbered}}
\usepackage[left=2.25cm,right=2.25cm,top=2.5cm,bottom=2.5cm,nohead]{geometry}
\usepackage{translator}
\usepackage{tikz}
diff --git a/macros/latex/contrib/csquotes/csq-compat.def b/macros/latex/contrib/csquotes/csq-compat.def
index 3e7a6ead61..9a19bf1fa4 100644
--- a/macros/latex/contrib/csquotes/csq-compat.def
+++ b/macros/latex/contrib/csquotes/csq-compat.def
@@ -1,5 +1,5 @@
\ProvidesFile{csq-compat.def}
- [2022-09-09 v5.2m csquotes backwards compatibility (JAW)]
+ [2022-09-14 v5.2n csquotes backwards compatibility (JAW)]
\def\csq@getversion#1{%
\expandafter\csq@getversion@i
diff --git a/macros/latex/contrib/csquotes/csquotes.def b/macros/latex/contrib/csquotes/csquotes.def
index a310943d57..80f8cb5713 100644
--- a/macros/latex/contrib/csquotes/csquotes.def
+++ b/macros/latex/contrib/csquotes/csquotes.def
@@ -1,5 +1,5 @@
\ProvidesFile{csquotes.def}
- [2022-09-09 v5.2m csquotes generic definitions (JAW)]
+ [2022-09-14 v5.2n csquotes generic definitions (JAW)]
% Set defaults
diff --git a/macros/latex/contrib/csquotes/csquotes.pdf b/macros/latex/contrib/csquotes/csquotes.pdf
index c1b26aaf79..c9e8a11c1e 100644
--- a/macros/latex/contrib/csquotes/csquotes.pdf
+++ b/macros/latex/contrib/csquotes/csquotes.pdf
Binary files differ
diff --git a/macros/latex/contrib/csquotes/csquotes.sty b/macros/latex/contrib/csquotes/csquotes.sty
index 4973fbbbe4..0a5cbb4e84 100644
--- a/macros/latex/contrib/csquotes/csquotes.sty
+++ b/macros/latex/contrib/csquotes/csquotes.sty
@@ -12,7 +12,7 @@
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{csquotes}
- [2022-09-09 v5.2m context-sensitive quotations (JAW)]
+ [2022-09-14 v5.2n context-sensitive quotations (JAW)]
%% Compatibility and requirements
@@ -1008,9 +1008,15 @@
% {<init>}{<endinit>}{<text>}
\long\def\csq@quote@i#1#2#3{%
- \csq@bqgroup#1\csq@oqopen@i{#3}\csq@qclose@i{#2}}
+ \csq@bqgroup\expandafter\let\expandafter\csq@font\the\font
+ #1\csq@oqopen@i#3%
+ \expandafter\ifx\the\font\csq@font\else\expandafter\csq@font\fi
+ \csq@qclose@i{#2}}
\long\def\csq@quote@ii#1#2#3{%
- \csq@bqgroup#1\csq@iqopen@i{#3}\csq@qclose@i{#2}}
+ \csq@bqgroup\expandafter\let\expandafter\csq@font\the\font
+ #1\csq@iqopen@i#3%
+ \expandafter\ifx\the\font\csq@font\else\expandafter\csq@font\fi
+ \csq@qclose@i{#2}}
% Plain quotes + language switching
diff --git a/macros/latex/contrib/csquotes/csquotes.tex b/macros/latex/contrib/csquotes/csquotes.tex
index 1b3ae93492..97c6e2e3cc 100644
--- a/macros/latex/contrib/csquotes/csquotes.tex
+++ b/macros/latex/contrib/csquotes/csquotes.tex
@@ -18,8 +18,8 @@
url={http://www.ctan.org/pkg/csquotes/},
author={Philipp Lehman, Joseph Wright},
email={joseph.wright@morningstar2.co.uk},
- revision={v5.2m},
- date={2022-09-09}}
+ revision={v5.2n},
+ date={2022-09-14}}
\hypersetup{%
pdftitle={The csquotes Package},
@@ -1554,6 +1554,10 @@ This revision history is a list of changes relevant to users of this package. Ch
\begin{changelog}
+\begin{release}{5.2n}{2022-09-14}
+\item Furtehr work to localise font changes inside quotes
+\end{release}
+
\begin{release}{5.2m}{2022-09-09}
\item Localise font changes inside quotes
\item Added Turkish and Slovenian styles
diff --git a/macros/latex/contrib/fixdif/fixdif-zh-cn.pdf b/macros/latex/contrib/fixdif/fixdif-zh-cn.pdf
index 4994a32680..8b18290433 100644
--- a/macros/latex/contrib/fixdif/fixdif-zh-cn.pdf
+++ b/macros/latex/contrib/fixdif/fixdif-zh-cn.pdf
Binary files differ
diff --git a/macros/latex/contrib/fixdif/fixdif-zh-cn.tex b/macros/latex/contrib/fixdif/fixdif-zh-cn.tex
index f54662ffff..d99e8933a6 100644
--- a/macros/latex/contrib/fixdif/fixdif-zh-cn.tex
+++ b/macros/latex/contrib/fixdif/fixdif-zh-cn.tex
@@ -1,5 +1,5 @@
\documentclass[letterpaper,11pt]{article}
-\date{2022/08/11\quad Version 1.4%
+\date{2022/09/14\quad Version 1.4a%
\thanks{源代码见~\hyperref{https://github.com/AlphaZTX/fixdif}{}{}{GitHub}
或~\hyperref{https://www.ctan.org/pkg/fixdif}{}{}{CTAN}。}
}
@@ -298,9 +298,9 @@ $\d x$ 和 \d x
\end{Verbatim}
这样 |\nabla| 和 |\grad| 都会得到微分算符 $\nabla$。
-{\attention[2]}如需得到原来的普通数学符号 \cs{\meta{csname}},只需在数学模式中输入
-\cs{\meta{csname}nondif}。例如\hyperlink{cs:partialnondif}{%
-\textcolor{titlecolor!75!black}{前面介绍的 \cs{partialnondif}}}。
+{\attention[2]}如需得到原来的普通数学符号 \texttt{\textbackslash}\meta{csname},
+只需在数学模式中输入 \texttt{\textbackslash}\meta{csname}\texttt{nondif}。
+例如\hyperlink{cs:partialnondif}{\textcolor{titlecolor!75!black}{前面介绍的 \cs{partialnondif}}}。
\noindent\textcolor{titlecolor}{\cs{letdif*}\marg{cmd}\marg{csname}}%
\DescribeMacro{\letdif*}\hfill(仅限在导言区使用)
diff --git a/macros/latex/contrib/fixdif/fixdif.dtx b/macros/latex/contrib/fixdif/fixdif.dtx
index 1155a130fa..bc6b3bfce5 100644
--- a/macros/latex/contrib/fixdif/fixdif.dtx
+++ b/macros/latex/contrib/fixdif/fixdif.dtx
@@ -131,7 +131,7 @@ Copyright (C) 2022 by Zhang Tingxuan <alphaztx@163.com>.
%</internal>
%
%<*driver>
-\ProvidesFile{fixdif.dtx}[2022/8/11 (c) Copyright 2022 by Zhang Tingxuan]
+\ProvidesFile{fixdif.dtx}[2022/9/14 (c) Copyright 2022 by Zhang Tingxuan]
\documentclass{ltxdoc}
\usepackage{xcolor}
@@ -150,7 +150,7 @@ Copyright (C) 2022 by Zhang Tingxuan <alphaztx@163.com>.
\title{The \pkg{fixdif} Package}
\author{Zhang Tingxuan}
-\date{2022/8/11\quad Version 1.4\thanks{\url{https://github.com/AlphaZTX/fixdif}}}
+\date{2022/9/14\quad Version 1.4a\thanks{\url{https://github.com/AlphaZTX/fixdif}}}
\usepackage{hyperref}
\hypersetup{
@@ -238,7 +238,7 @@ Copyright (C) 2022 by Zhang Tingxuan <alphaztx@163.com>.
% which is regarded bad. For example, |$\d y/\d x$| produces
% $\mathrm{d}y/\,\mathrm{d}x$;
%
-% \item This |\d| command cannot be used out of math mode. In another word,
+% \item This |\d| command cannot be used out of math mode. In other words,
% |\d{o}| would not produce ``\d{o}'' in text;
%
% \item The skip between ``d'' and the expression before it can be regarded
@@ -473,7 +473,7 @@ Copyright (C) 2022 by Zhang Tingxuan <alphaztx@163.com>.
% Check the \TeX{} format and provides the package name.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{fixdif}[2022/8/11 Interface for defining differential operators.]
+\ProvidesPackage{fixdif}[2022/9/14 Interface for defining differential operators.]
% \end{macrocode}
%
% \subsection{Control the skip between slashes and differential operator}
diff --git a/macros/latex/contrib/fixdif/fixdif.pdf b/macros/latex/contrib/fixdif/fixdif.pdf
index 4452ce66ff..e0422d40fc 100644
--- a/macros/latex/contrib/fixdif/fixdif.pdf
+++ b/macros/latex/contrib/fixdif/fixdif.pdf
Binary files differ
diff --git a/macros/latex/contrib/stex/doc/Makefile b/macros/latex/contrib/stex/doc/Makefile
index b727f2f94d..7544a3c2fd 100644
--- a/macros/latex/contrib/stex/doc/Makefile
+++ b/macros/latex/contrib/stex/doc/Makefile
@@ -2,7 +2,7 @@ STY = stex extensions
SPATH = $(STY:%=../source/%)
DTX = $(shell ls $(SPATH:%=%/*.dtx))
INS = $(shell ls $(SPATH:%=%/*.ins))
-DOC = stex-doc.pdf stex-manual.pdf
+DOC = stex-doc.pdf stex-manual.pdf stex-ide.pdf
TEXDIR = ../tex
TEXINPUTS = $(TEXDIR)//:
diff --git a/macros/latex/contrib/stex/doc/img/vsc1.png b/macros/latex/contrib/stex/doc/img/vsc1.png
new file mode 100644
index 0000000000..c6c3847f69
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/img/vsc1.png
Binary files differ
diff --git a/macros/latex/contrib/stex/doc/img/vsc2.png b/macros/latex/contrib/stex/doc/img/vsc2.png
new file mode 100644
index 0000000000..e6365ad802
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/img/vsc2.png
Binary files differ
diff --git a/macros/latex/contrib/stex/doc/img/vsc3.png b/macros/latex/contrib/stex/doc/img/vsc3.png
new file mode 100644
index 0000000000..d7b67ae278
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/img/vsc3.png
Binary files differ
diff --git a/macros/latex/contrib/stex/doc/packages/stex-document-structure.tex b/macros/latex/contrib/stex/doc/packages/stex-document-structure.tex
index f8d570ea5e..f2cabec6c0 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-document-structure.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-document-structure.tex
@@ -1,3 +1,4 @@
+\begin{sfragment}[id=sec:ds:intro]{Introduction}
The \pkg{document-structure} package supplies an infrastructure for writing {\omdoc} documents in {\LaTeX}.
This includes a simple structure sharing mechanism for \sTeX that allows to to move from
a copy-and-paste document development model to a copy-and-reference model, which
@@ -17,7 +18,9 @@ after translation.
DAG models of documents allow to replace the ``Copy and Paste'' in the source document
with a label-and-reference model where document are shared in the document source and the
formatter does the copying during document formatting/presentation.
+\end{sfragment}
+\begin{sfragment}{Package Options}
The \pkg{document-structure} package accepts the following options:
\begin{center}
\begin{tabular}{|l|p{10cm}|}\hline
@@ -26,7 +29,9 @@ The \pkg{document-structure} package accepts the following options:
\meta{sect} is \texttt{section}\\\hline
\end{tabular}
\end{center}
+\end{sfragment}
+\begin{sfragment}{Document Fragments}
\begin{environment}{sfragment}
The structure of the document is given by nested |sfragment| environments. In the
{\LaTeX} route, the |sfragment| environment is flexibly mapped to sectioning commands,
@@ -36,8 +41,8 @@ The \pkg{document-structure} package accepts the following options:
sfragment. The optional metadata argument has the keys |id| for an identifier,
|creators| and |contributors| for the Dublin Core metadata~\cite{DCMI:dmt03}. The option
|short| allows to give a short title for the generated section. If the title contains
- semantic macros, they need to be protected by |\protect|\ednote{MK: still?}, and we need
- to give the |loadmodules| key it needs no value. For instance we would have
+ semantic macros, we need to give the |loadmodules| key (it needs no value). For instance
+ we would have
\begin{latexcode}
\begin{smodule}{foo}
\symdef{bar}{B^a_r}
@@ -90,9 +95,8 @@ Here we use two levels of |blindfragment|:
the introductory remarks become a ``chapter'' instead of a ``part''.
\item The inner one groups the frontmatter\footnote{We shied away from redefining the
|frontmatter| to induce a blindfragment, but this may be the ``right'' way to go in
- the future.} and makes the preface of the book a section-level construct.\ednote{MK:
- We need a substitute for the ``Note that here the |display=flow| on the |sfragment|
- environment prevents numbering as is traditional for prefaces.''}
+ the future.} and makes the preface of the book a section-level construct. The
+ |frontmatter| environment also suppresses numbering as is traditional for prefaces.
\end{itemize}
\end{environment}
@@ -110,11 +114,13 @@ Here we use two levels of |blindfragment|:
will\ldots'' in an |sfragment| environment, where we do not know which sectioning level we
will end up.
\end{function}
+\end{sfragment}
+\begin{sfragment}{Ending Documents Prematurely}
\begin{function}{\prematurestop,\afterprematurestop}
For prematurely stopping the formatting of a document, \sTeX provides the
|\prematurestop| macro. It can be used everywhere in a document and ignores all input
- after that -- backing out of the |sfragment| environment as needed. After that -- and
+ after that -- backing out of the |sfragment| environments as needed. After that -- and
before the implicit |\end{document}| it calls the internal |\afterprematurestop|, which
can be customized to do additional cleanup or e.g. print the bibliography.
@@ -132,7 +138,12 @@ instance, the admin section of a course can be made course-independent (and ther
re-usable) by using variables (actually token registers) |courseAcronym| and |courseTitle|
instead of the text itself. The variables can then be set in the \sTeX preamble of the
course notes file.
-
+\end{sfragment}
+
+\begin{sfragment}{Global Document Variables}
+ To make document fragments more reusable, we sometimes want to make the content depend
+ on the context. We use \defemph{document variables} for that.
+
\begin{function}{\setSGvar,\useSGvar}
|\setSGvar{|\meta{vname}|}{|\meta{text}|}| to set the global variable \meta{vname} to
\meta{text} and |\useSGvar{|\meta{vname}|}| to reference it.
@@ -144,6 +155,7 @@ course notes file.
variable \meta{vname}, only if (after expansion) it is equal to \meta{val}, the
conditional text \meta{ctext} is formatted.
\end{function}
+\end{sfragment}
%%% Local Variables:
%%% mode: latex
diff --git a/macros/latex/contrib/stex/doc/packages/stex-features.tex b/macros/latex/contrib/stex/doc/packages/stex-features.tex
index b5ce5906d1..4e0cd21457 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-features.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-features.tex
@@ -144,8 +144,16 @@ and
be a \symname{monoid} on $\Int$ ...
}
- We will return to these two example later, when we also know
- how to handle the \emph{axioms} of a monoid.
+
+We will return to these two example later, when we also know how to handle the
+\emph{axioms} of a monoid.
+
+\begin{environment}{usestructure}
+ The |usestructure{<struct>}| environment is used in multilingual settings as a parallel
+ to the |mathstructure|. It opens a group and then issues a
+ |\usemodule{.../<struct>-structure}| that gives the body access to all the semantic
+ macros in the referenced structure.
+\end{environment}
\end{smodule}
\end{sfragment}
diff --git a/macros/latex/contrib/stex/doc/packages/stex-hwexam.tex b/macros/latex/contrib/stex/doc/packages/stex-hwexam.tex
index 5aced96e66..a3679d0d94 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-hwexam.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-hwexam.tex
@@ -1,15 +1,29 @@
-
+\begin{sfragment}{Introduction}
The \pkg{hwexam} package and class supplies an infrastructure that allows to format
nice-looking assignment sheets by simply including problems from problem files marked up
-with the \pkg{roblem} package. It is designed to be compatible with |problems.sty|, and
+with the \pkg{problem} package. It is designed to be compatible with |problems.sty|, and
inherits some of the functionality.
+\end{sfragment}
+\begin{sfragment}{Package Options}
\begin{variable}{solutions,notes,hints,gnotes,pts,min}
- The \pkg{wexam} package and class take the options |solutions|, |notes|, |hints|,
+ The \pkg{hwexam} package and class take the options |solutions|, |notes|, |hints|,
|gnotes|, |pts|, |min|, and |boxed| that are just passed on to the \pkg{problems}
package (cf. its documentation for a description of the intended behavior).
\end{variable}
+Furthermore, the \pkg{hwexam} package takes the option
+\DescribeMacro{multiple}|multiple| that allows to combine multiple assignment sheets
+into a compound document (the assignment sheets are treated as section, there is a table
+of contents, etc.).
+
+Finally, there is the option \DescribeMacro{test}|test| that modifies the behavior to
+facilitate formatting tests. Only in |test| mode, the macros |\testspace|,
+|\testnewpage|, and |\testemptypage| have an effect: they generate space for the
+students to solve the given problems. Thus they can be left in the {\LaTeX} source.
+\end{sfragment}
+
+\begin{sfragment}{Assignments}
This package supplies the \DescribeEnv{assignment}|assignment| environment that groups
problems into assignment sheets. It takes an optional KeyVal argument with the keys
\DescribeMacro{number}|number| (for the assignment number; if none is given, 1 is
@@ -19,23 +33,22 @@ is referenced in the title of the assignment sheet), \DescribeMacro{type}|type|
assignment type; e.g. ``quiz'', or ``homework''), \DescribeMacro{given}|given| (for the
date the assignment was given), and \DescribeMacro{due}|due| (for the date the
assignment is due).
+\end{sfragment}
-Furthermore, the \pkg{hwexam} package takes the option
-\DescribeMacro{multiple}|multiple| that allows to combine multiple assignment sheets
-into a compound document (the assignment sheets are treated as section, there is a table
-of contents, etc.).
-
-Finally, there is the option \DescribeMacro{test}|test| that modifies the behavior to
-facilitate formatting tests. Only in |test| mode, the macros |\testspace|,
-|\testnewpage|, and |\testemptypage| have an effect: they generate space for the
-students to solve the given problems. Thus they can be left in the {\LaTeX} source.
+\begin{sfragment}{Including Assignments}
+\begin{function}{\inputassignment}
+ The |\inputassignment| macro can be used to input an assignment from another file. It
+ takes an optional KeyVal argument and a second argument which is a path to the file
+ containing the problem (the macro assumes that there is only one |assignment|
+ environment in the included file). The keys |number|, |title|, |type|, |given|, and
+ |due| are just as for the |assignment| environment and (if given) overwrite the ones
+ specified in the |assignment| environment in the included file.
+\end{function}
+\end{sfragment}
-\DescribeMacro{\testspace}|\testspace| takes an argument that expands to a dimension,
-and leaves vertical space accordingly. \DescribeMacro{\testnewpage}|\testnewpage| makes
-a new page in |test| mode, and \DescribeMacro{\testemptypage}|\testemptypage| generates
-an empty page with the cautionary message that this page was intentionally left empty.
+\begin{sfragment}{Typesetting Exams}
-Finally, the \DescribeEnv{testheading}|\testheading| takes an optional keyword argument
+The \DescribeEnv{testheading}|\testheading| takes an optional keyword argument
where the keys \DescribeMacro{duration}|duration| specifies a string that specifies the
duration of the test, \DescribeMacro{min}|min| specifies the equivalent in number of
minutes, and \DescribeMacro{reqpts}|reqpts| the points that are required for a perfect
@@ -68,17 +81,12 @@ Will result in
\end{center}
\ednote{MK: The first three ``problems'' come from the stex examples above, how do we get rid
of this?}
-
-\begin{function}{\inputassignment}
- The |\inputassignment| macro can be used to input an assignment from another file. It
- takes an optional KeyVal argument and a second argument which is a path to the file
- containing the problem (the macro assumes that there is only one |assignment|
- environment in the included file). The keys |number|, |title|, |type|, |given|, and
- |due| are just as for the |assignment| environment and (if given) overwrite the ones
- specified in the |assignment| environment in the included file.
-\end{function}
+\end{sfragment}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../stex-manual"
%%% End:
+
+% LocalWords: hwexam solutions,notes,hints,gnotes,pts,min gnotes testemptypage reqpts
+% LocalWords: inputassignment reqpts hour,min 60,reqpts
diff --git a/macros/latex/contrib/stex/doc/packages/stex-idesetup.tex b/macros/latex/contrib/stex/doc/packages/stex-idesetup.tex
new file mode 100644
index 0000000000..b4d495b628
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/packages/stex-idesetup.tex
@@ -0,0 +1,61 @@
+\begin{sfragment}{Setting up the \sTeX IDE}
+
+ The \sTeX IDE consists of two components using the
+ \emph{Language Server Protocol (LSP)}: A \emph{client}
+ in the form of a VSCode extension, and a \emph{server}
+ included in the \mmt system. Installing the extension will
+ open up a setup routine that will guide you through the rest.
+
+ \begin{sfragment}{The \sTeX VSCode Extension}
+
+ If you have not already, you should first install the VSCode editor
+ available at \url{https://code.visualstudio.com/}.
+
+ Next, open VSCode and install the \sTeX extension by clicking on
+ the \emph{extensions} menu on the very left of the VSCode window
+ and searching for ``sTeX'' in the
+ \emph{``Search Extensions in Marketplace''} field, as in
+ \autoref{fig:install}, and clicking the \emph{Install}-button
+ of the \sTeX extension by KWARC.
+
+ \begin{figure}
+ \begin{center}
+ \includegraphics[width=0.6\textwidth]{img/vsc1.png}
+ \end{center}
+ \caption{Installing the \sTeX extension for VSCode}\label{fig:install}
+ \end{figure}
+
+ \end{sfragment}
+
+ \begin{sfragment}{Setting up \mmt}
+
+ Next, open any directory (\texttt{File $\to$ Open Folder...}) that contains
+ a \verb|.tex|-file, and a setup window as in \autoref{fig:setup}
+ will pop up. Clik on the highlighted link `\emph{here}' and download
+ the latest version of the \texttt{MMT.jar} file (at least version 23.0.0)
+ anywhere you like. Then click the \emph{``Browse...''}-button
+ and select your freshly downloaded \texttt{MMT.jar}.
+
+ If you have already set a system variable for your MathHub-directory,
+ you are now done and can click \emph{``Finish''}. If you have not,
+ you can now also enter a directory path in the lower text field,
+ and the VSCode extension will attempt to globally set one up
+ for you, depending on your operating system.
+
+ \begin{figure}
+ \begin{center}
+ \includegraphics[width=\textwidth]{img/vsc2.png}
+ \end{center}
+ \caption{\sTeX Setup Routine}\label{fig:setup}
+ \end{figure}
+
+ Once you click \emph{``Finish''}, the client will connect
+ to \url{https://stexmmt.mathhub.info/:sTeX}, query for
+ available archives, download the core libraries required
+ for all (or most) semantic services (\texttt{MMT/urtheories}
+ and \texttt{sTeX/meta-inf}) and set up \RusTeX for you
+ automatically.
+
+ \end{sfragment}
+
+ \end{sfragment} \ No newline at end of file
diff --git a/macros/latex/contrib/stex/doc/packages/stex-mathhub.tex b/macros/latex/contrib/stex/doc/packages/stex-mathhub.tex
index fb872acfba..eb09414ac7 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-mathhub.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-mathhub.tex
@@ -1,4 +1,4 @@
-\begin{sfragment}{The Local MathHub-Directory}
+\begin{sfragment}[id=sec:localmh]{The Local MathHub-Directory}
\stexcode"\usemodule", \stexcode"\importmodule",
\stexcode"\inputref" etc. allow for
including content modularly without having to specify absolute
diff --git a/macros/latex/contrib/stex/doc/packages/stex-mathhubsetup.tex b/macros/latex/contrib/stex/doc/packages/stex-mathhubsetup.tex
new file mode 100644
index 0000000000..7a653186b3
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/packages/stex-mathhubsetup.tex
@@ -0,0 +1,25 @@
+ \begin{sfragment}{Setting your MathHub Directory}
+ One of \sTeX's features is a proper \emph{module system}
+ of interconnected document snippets for mathematical
+ content. Analogously to \emph{object-oriented programming},
+ it allows for ``object-oriented mathematics'' via individual
+ combinable and, importantly, \emph{reusable} modules, developed
+ collaboratively.
+
+ To make use of such modules, the \sTeX system needs to be told
+ where to find them. There are several ways to do so (see
+ \sref[file=stex-mathhub]{sec:localmh}[in=../stex-manual,
+ title={\href{\basedocurl/stex-manual.pdf}{the \sTeX{}3 Manual}}]),
+ but the most convenient way to do so is via a system variable.
+
+ To do so, create a directory \texttt{MathHub} somewhere on
+ your local file system and set the environment
+ variable \texttt{MATHHUB} to the file path to that directory.
+
+ In linux, you can do so by writing
+ \begin{lstlisting}[language=bash]
+ export MATHHUB="/path/to/your/MathHub"
+ \end{lstlisting}
+ in your \verb|~/.profile| (for all shells) or \verb|~/.bashrc|
+ (for the bash terminal only) file.
+ \end{sfragment} \ No newline at end of file
diff --git a/macros/latex/contrib/stex/doc/packages/stex-slides.tex b/macros/latex/contrib/stex/doc/packages/stex-notesslides.tex
index a900c1fcbb..75fd9ee9e8 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-slides.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-notesslides.tex
@@ -1,4 +1,5 @@
-The \pkg{notesslides} document class is derived from |beamer.cls|~\cite{beamerclass:on},
+\begin{sfragment}{Introduction}
+ The \pkg{notesslides} document class is derived from |beamer.cls|~\cite{beamerclass:on},
it adds a ``notes version'' for course notes that is more suited to printing than the one
supplied by |beamer.cls|.
@@ -14,27 +15,36 @@ In practice we want to generate two documents from the same source: the slides f
presentation in the lecture and the course notes as a narrative document for home
study. To achieve this, the \pkg{notesslides} class has two modes: \emph{slides mode} and
\emph{notes mode} which are determined by the package option.
+\end{sfragment}
+
+\begin{sfragment}{Package Options}
+ The \pkg{notesslides} class takes a variety of class options:
+
+ \begin{variable}{slides,notes} The options |slides| and |notes| switch between slides
+ mode and notes mode (see \sref{sec:user:notesslides}).
+ \end{variable}
+
+ \begin{variable}{sectocframes} If the option |sectocframes| is given, then for the
+ |sfragment|s, special frames with the |sfragment| title (and number) are generated.
+ \end{variable}
+ \begin{variable}{frameimages,fiboxed}
+ If the option |frameimages| is set, then slide mode also shows the
+ |\frameimage|-generated frames (see \sref{sec:user:frameimage}). If also the |fiboxed|
+ option is given, the slides are surrounded by a box.
+ \end{variable}
+\end{sfragment}
+
+\begin{sfragment}[id=sec:user:notesslides]{Notes and Slides}
-\begin{variable}{slides,notes,sectocframes,frameimages,fiboxed}
- The \pkg{notesslides} class takes a variety of class options:
- \begin{itemize}
- \item The options |slides| and |notes| switch between slides mode and notes mode (see
- Section~\ref{sec:user:notesslides}).
- \item If the option |sectocframes| is given, then for the |sfragment|s, special frames
- with the |sfragment| title (and number) are generated.
- \item If the option |frameimages| is set, then slide mode also shows the
- |\frameimage|-generated frames (see section~\ref{sec:user:frameimage}). If also the
- |fiboxed| option is given, the slides are surrounded by a box.
- \end{itemize}
-\end{variable}
-
-\begin{environment}{frame,note}
+\begin{environment}{frame}
Slides are represented with the |frame| environment just like in the \pkg{beamer} class,
- see~\cite{Tantau:ugbc} for details. The \pkg{notesslides} class adds the |note|
- environment for encapsulating the course note fragments.\footnote{MK: it would be very
- nice, if we did not need this environment, and this should be possible in principle,
- but not without intensive LaTeX trickery. Hints to the author are welcome.}
+ see~\cite{Tantau:ugbc} for details.
+\end{environment}
+
+\begin{environment}{note}
+ The \pkg{notesslides} class adds the |note| environment for encapsulating the course
+ note fragments.
\end{environment}
\begin{dangerbox}
@@ -86,6 +96,7 @@ here:
least in conjunction with |\newpage|, frame numbering behaves funnily (we have tried to
fix this, but who knows).
\end{dangerbox}
+\end{sfragment}
\begin{function}{\inputref*}
If we want to transclude a the contents of a file as a note, we can use a new variant
@@ -101,6 +112,17 @@ here:
|ndefinition|, |nexample|, |nsproof|, and |nassertion| environments.
\end{environment}
+\begin{sfragment}{Customizing Header and Footer Lines}
+ The \pkg{notesslides} package and class comes with a simple default theme named
+ \pkg{sTeX} that provided by the \pkg{beamterthemesTeX}. It is assumed as the default
+ theme for \sTeX-based notes and slides.
+ The result in |notes| mode (which is like the |slides| version except that the slide
+ hight is variable) is
+
+ \includegraphics[width=.95\textwidth]{\libfolder{img/notes-frame}}
+
+The footer line can be customized. In particular the logos.
+
\begin{function} {\setslidelogo}
The default logo provided by the \pkg{notesslides} package is the {\sTeX} logo it can be
customized using |\setslidelogo{|\meta{logo name}|}|.
@@ -108,10 +130,9 @@ here:
\begin{function}{\setsource}
The default footer line of the \pkg{notesslides} package mentions copyright and
- licensing. In the \pkg{beamer} class, |\source| stores the author's name as the
- copyright holder . By default it is \emph{Michael Kohlhase} in the \pkg{notesslides}
- package since he is the main user and designer of this
- package. |\setsource{|\meta{name}|}| can change the writer's name.
+ licensing. In \pkg{notesslides} |\source| stores the author's name as the copyright
+ holder. By default it is the author's name as defined in the |\author| macro in the
+ preamble. |\setsource{|\meta{name}|}| can change the writer's name.
\end{function}
\begin{function}{\setlicensing}
@@ -120,8 +141,10 @@ here:
hyperlink to the license logo. |\setlicensing[|\meta{url}|]{|\meta{logo name}|}| is used
for customization, where \meta{url} is optional.
\end{function}
+\end{sfragment}
-Sometimes, we want to integrate slides as images after all -- e.g. because we already
+\begin{sfragment}[id=sec:user:frameimages]{Frame Images}
+ Sometimes, we want to integrate slides as images after all -- e.g. because we already
have a PowerPoint presentation, to which we want to add \sTeX notes.
\begin{function}{\frameimage,\mhframeimage}
@@ -150,21 +173,28 @@ argument is redundant, so we can just use
\begin{latexcode}
\mhframeimage{baz/foobar}
\end{latexcode}
+\end{sfragment}
\begin{function}{\textwarning}
The |\textwarning| macro generates a warning sign: \textwarning
\end{function}
+\begin{sfragment}[id=sec:user:excursions]{Excursions}
In course notes, we sometimes want to point to an ``excursion'' -- material that is either
presupposed or tangential to the course at the moment -- e.g. in an appendix. The typical
setup is the following:
\begin{latexcode}
-\excursion{founif}{../ex/founif}{We will cover first-order unification in}
+\excursion{founif}{../fragments/founif.en}
+ {We will cover first-order unification in}
...
\begin{appendix}\printexcursions\end{appendix}
\end{latexcode}
+It generates a paragraph that references the excursion whose source is in the file
+|../fragments/founif.en.tex| and automatically books the file for the |\printexcursions|
+command that is used here to put it into the appendix. We will look at the mechanics now.
+
\begin{function}{\excursion}
The |\excursion{|\meta{ref}|}{|\meta{path}|}{|\meta{text}|}| is syntactic sugar for
@@ -198,6 +228,7 @@ setup is the following:
\end{note}
\end{latexcode}
\end{function}
+\end{sfragment}
\begin{dangerbox}
When option |book| which uses |\pagestyle{headings}| is given and semantic macros are
diff --git a/macros/latex/contrib/stex/doc/packages/stex-problem.tex b/macros/latex/contrib/stex/doc/packages/stex-problem.tex
index a90c36412d..53316b28bc 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-problem.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-problem.tex
@@ -1,4 +1,5 @@
-The \pkg{problem} package supplies an infrastructure that allows specify problem. Problems
+\begin{sfragment}{Introduction}
+ The \pkg{problem} package supplies an infrastructure that allows specify problem. Problems
are text fragments that come with auxiliary functions: hints, notes, and
solutions\footnote{for the moment multiple choice problems are not supported, but may
well be in a future version}. Furthermore, we can specify how long the solution to a
@@ -7,7 +8,11 @@ solution.
Finally, the \pkg{problem} package facilitates the management of problems in small files,
so that problems can be re-used in multiple environment.
+\end{sfragment}
+
+\begin{sfragment}{Problems and Solutions}
+
\begin{function}{solutions,notes,hints,gnotes,pts,min,boxed,test}
The \pkg{problem} package takes the options |solutions| (should solutions be output?),
|notes| (should the problem notes be presented?), |hints| (do we give the hints?),
@@ -43,7 +48,7 @@ so that problems can be re-used in multiple environment.
\begin{exnote}
Justify your answer
\end{exnote}
-\begin{solution}[for=elefants,height=3cm]
+\begin{solution}[for=elefants]
Four, two in the front seats, and two in the back.
\begin{gnote}
if they do not give the justification deduct 5 pts
@@ -66,7 +71,7 @@ so that problems can be re-used in multiple environment.
\begin{environment}{hint,exnote,gnote}
The |hint| and |exnote| environments can be used in a |problem| environment to give
hints and to make notes that elaborate certain aspects of the problem. The |gnote|
- (grading notes) environment can be used to document situtations that may arise in
+ (grading notes) environment can be used to document situations that may arise in
grading.
\end{environment}
@@ -80,7 +85,22 @@ so that problems can be re-used in multiple environment.
Also, sometimes, we want content (e.g. in an exam with master solutions) conditional on
whether solutions are shown. This can be done with the |\ifsolutions| conditional.
\end{function}
+\end{sfragment}
+
+\begin{sfragment}{Markup for Added-Value Services}
+
+\begin{sparagraph}
+ The |problem| package is all about specifying the meaning of the various moving parts of
+ practice/exam problems. The motivation for the additional markup is that we can base
+ added-value services from these, for instance auto-grading and immediate feedback.
+ The simplest example of this are multiple-choice problems, where the |problem| package
+ allows to annotate answer options with the intended values and possibly feedback that
+ can be delivered to the users in an interactive setting. In this section we will give
+ some infrastructure for these, we expect that this will grow over time.
+\end{sparagraph}
+
+\begin{sfragment}{Multiple Choice Blocks}
\begin{environment}{mcb}
Multiple choice blocks can be formatted using the |mcb| environment, in which single
choices are marked up with |\mcc| macro.
@@ -96,8 +116,8 @@ so that problems can be re-used in multiple environment.
\item |feedback| for a short feedback text given to the student.
\end{itemize}
\end{function}
-
-If we start the solutions, then we get
+What we see when this is formatted to PDF depends on the context. In solutions mode (we
+start the solutions in the code fragment below) we get
\stexexample{%
\startsolutions
@@ -111,8 +131,8 @@ If we start the solutions, then we get
\end{mcb}
\end{sproblem}
}
-without solutions (that is what the students see during the exam/quiz)\ednote{MK: that did
-not work!}
+
+In ``exam mode'' where disable solutions (here via |\stopsolutions|)
\stexexample{%
\stopsolutions
\begin{sproblem}[title=Functions,name=functions1]
@@ -125,7 +145,44 @@ not work!}
\end{mcb}
\end{sproblem}
}
-
+we get the questions without solutions (that is what the students see during the
+exam/quiz).
+\end{sfragment}
+
+\begin{sfragment}{Filling-In Concrete Solutions}
+The next simplest situation, where we can implement auto-grading is the case where we
+have fill-in-the-blanks
+
+\begin{function}{\fillinsol}
+ The |\fillinsol| macro takes\Ednote{for now; more to come} an a single argument, which
+ contains a concrete solution (i.e. a number, a string, \ldots), which generates a
+ fill-in-box in test mode:
+\stexexample{%
+ \stopsolutions
+ \begin{sproblem}[id=elefants.fillin,title=Fitting Elefants]
+ How many Elefants can you fit into a Volkswagen beetle? \fillinsol{4}
+\end{sproblem}}
+ and the actual solution in solutions mode:
+\end{function}
+\stexexample{%
+ \begin{sproblem}[id=elefants.fillin,title=Fitting Elefants]
+ How many Elefants can you fit into a Volkswagen beetle? \fillinsol{4}
+ \end{sproblem}}
+If we do not want to leak information about the solution by the size of the blank we can
+also give |\fillinsol| an optional argument with a size: |\fillinsol[3cm]{12}| makes a box
+ three cm wide.
+
+ Obviously, the required argument of |\fillinsol| can be used for auto-grading. For
+ concrete data like numbers, this is immediate, for more complex data like strings ``soft
+ comparisons'' might be in order. \ednote{For the moment we only assume a single concrete
+ value as correct. In the future we will almost certainly want to extend the
+ functionality to multiple answer classes that allow different feedback like im
+ MCQ. This still needs a bit of design. Also we want to make the formatting of the
+ answer in solutions/test mode configurable.}
+\end{sfragment}
+\end{sfragment}
+
+\begin{sfragment}{Including Problems}
\begin{function}{\includeproblem}
The |\includeproblem| macro can be used to include a problem from another file. It takes
an optional KeyVal argument and a second argument which is a path to the file containing
@@ -144,8 +201,32 @@ The |\min| and |\pts| macros allow to specify (i.e. to print to the margin) the
distribution of time and reward to parts of a problem, if the |pts| and |pts| options are
set. This allows to give students hints about the estimated time and the points to be
awarded.
+\end{sfragment}
+
+\begin{sfragment}{Testing and Spacing}
+The |problem| package is often used by the |hwexam| package, which is used to create
+homework assignments and exams. Both of these have a ``test mode'' (invoked by the
+package option |test|), where certain information --master solutions or feedback -- is
+not shown in the presentation.
+
+\DescribeMacro{\testspace}|\testspace| takes an argument that expands to a dimension, and
+leaves vertical space accordingly. Specific instances exist:
+\DescribeMacro{\testsmallspace}|\testsmallspace|,
+\DescribeMacro{\testsmallspace}|\testsmallspace|,
+\DescribeMacro{\testsmallspace}|\testsmallspace| give small (1cm), medium (2cm), and big (3cm)
+vertical space.
+
+\DescribeMacro{\testnewpage}|\testnewpage| makes a new page in |test| mode, and
+\DescribeMacro{\testemptypage}|\testemptypage| generates an empty page with the cautionary
+message that this page was intentionally left empty.
+\end{sfragment}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../stex-manual"
%%% End:
+
+% LocalWords: solutions,notes,hints,gnotes,pts,min,boxed,test gnotes elefants,pts gnote
+% LocalWords: 2,title exnote hint,exnote,gnote ifsolutions mcb keyvals Ttext Ftext
+% LocalWords: Functions,name F,feedback Nooooooooo,feedback 2,title includeproblem
+% LocalWords: elefants.fillin,title
diff --git a/macros/latex/contrib/stex/doc/packages/stex-proofs.tex b/macros/latex/contrib/stex/doc/packages/stex-proofs.tex
index d06db1282f..9e6e44f5ca 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-proofs.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-proofs.tex
@@ -1,100 +1,308 @@
+\begin{sfragment}{Proofs}
+
The \pkg{stex-proof} package supplies macros and environment that allow to annotate the
structure of mathematical proofs in \sTeX document. This structure can be used by MKM
systems for added-value services, either directly from the \sTeX sources, or after
translation.
-We will go over the general intuition by way of a running example:
+Its central component is the |sproof|-environment, whose body consists
+of:
+\begin{itemize}
+ \item \emph{subproofs} via the |subproof|-environment,
+ \item \emph{proof steps} via the |\spfstep|, |\eqstep|
+ |\assumption|, and |\conclude| macros, and
+ \item \emph{comments}, via normal text without special markup.
+\end{itemize}
+
+|sproof|, |subproof| and the various proof step macros take the following
+optional arguments:
+\begin{itemize}
+ \item[|id|] (\meta{string}) for referencing,
+ \item[|method|] (\meta{string}) the proof method (e.g. contradiction, induction,...)
+ \item[|term|] (\meta{token list}) the (ideally semantically-marked up)
+ proposition that is derived/proven by this proof/subproof/proof step.
+\end{itemize}
+Additionally, they take one mandatory argument for the document text
+to be annotated, or (in the case of the environments)
+as an introductory description of the proof itself. Since
+the latter often contains the |term| to be derived
+as text, alternatively to providing it as
+an optional argument, the mandatory argument can use the
+|\yield|-macro to mark it up in the text.
+
+The |sproof| and |subproof| environments additionally take
+two optional arguments:
+\begin{itemize}
+ \item[|for|] the symbol identifier/name corresponding to the |sassertion|
+ to be proven. This too subsumes |\yield| and the |term|-argument.
+ \item[|hide|] In the pdf, this only shows the mandatory argument text
+ and hides the body of the environment. In the HTML (as served by \mmt),
+ the bodies of all |proof| and |subproof| environments are \emph{collapsible},
+ and |hide| collapses the body by default.
+\end{itemize}
+
+\begin{smodule}{sproofs}
+ \symdef{coprime}[args=2]{#1 \comp\bot #2}
+ \symdef{realroot}[args=1]{\sqrt{#1}}
+ \symdecl{irrational}[args=1]
+ \symdecl{rational}[args=1]
+ \symdef{eq}[args=2]{#1 \comp= #2}
+ \symdef{ratfrac}[args=2,prec=1]{\frac{#1}{#2}}
+ \symdef{intpow}[args=2,prec=-1]{{#1}^{#2}}
+ \symdef{ratpow}[args=2]{{#1}^{#2}}
+ \symdef{inset}[args=ai]{#1\comp\in#2}{##1\comp,##2}
+ \symdef{Int}{\comp{\mathbb Z}}
+ \symdef{PosInt}{\comp{{\mathbb Z}^+}}
+ \symdef{inttimes}[args=2]{#1 #2}
+ \symdef{divides}[args=2]{#1\comp\|#2}
+
+ \vardef{vara}{\comp a}
+ \vardef{varb}{\comp b}
+ \vardef{varc}{\comp c}
+
+ \def\contradiction{}
\begin{latexcode}
-\begin{sproof}[id=simple-proof]
+ \begin{sassertion}[type=theorem,name=sqrt2irr]
+ \conclusion{\irrational{$\arg{\realroot{2}}$ is \comp{irrational}}}.
+\end{sassertion}
+
+\begin{sproof}[for=sqrt2irr,method=contradiction]{By contradiction}
+ \assumption{Assume \yield{\rational{$\arg{\realroot{2}}$ is
+ \comp{rational}}}}
+ \begin{subproof}[method=straightforward]{Then
+ \yield{$\eq{\ratfrac{\intpow{\vara}{2}}{\intpow{\varb}2}}{2}$
+ for some $\inset{\vara,\varb}\PosInt$ with
+ \coprime{$\arg{\vara},\arg{\varb}$ \comp{coprime}}}}
+ \assumption{By assumption, \yield{there are
+ $\inset{\vara,\varb}\PosInt $ with
+ $\realroot{2}=\ratfrac{\vara}{\varb}$}}
+ \spfstep{wlog, we can assume \coprime{$\arg{\vara},\arg{\varb}$
+ to be \comp{coprime}}}
+ % a comment:
+ If not, reduce the fraction until numerator and denominator
+ are coprime, and let the resulting components be
+ $\vara $ and $\varb $
+ \spfstep{Then \yield{$\eq{\intpow{\ratfrac{\vara}{\varb}}2}2$}}
+ \eqstep{\ratfrac{\intpow{\vara}2}{\intpow{\varb}2}}
+ \end{subproof}
+ \begin{subproof}[term=\divides{2}{\vara},method=straightforward]{
+ Then $\vara $ is even}
+ \spfstep{Multiplying the equation by $\intpow{\varb}2$ yields
+ $\yield{\eq{\intpow{\vara}2}{\inttimes{2}{\intpow{\varb}2}}}$}
+ \spfstep[term=\divides{2}{\intpow{\vara}2}]{Hence
+ $\intpow{\vara}2$ is even}
+ \conclude[term=\divides{2}{\vara}]{Hence $\vara $ is even as well}
+ % another comment:
+ Hint: Think about the prime factorizations of $\vara $ and
+ $\intpow{\vara}2$
+ \end{subproof}
+ \begin{subproof}[term=\divides{2}{\varb},method=straightforward,]{
+ Then $\varb $ is also even}
+ \spfstep{Since $\vara $ is even, we have \yield{some $\varc $
+ such that $\eq{\inttimes{2}{\varc}}{\vara}$}}
+ \spfstep{Plugging into the above, we get
+ \yield{$\eq{\intpow{\inttimes{2}{\vara}}2}
+ {\inttimes{2}{\intpow{\varb}2}}$}}
+ \eqstep{\inttimes{4}{\intpow{\vara}2}}
+ \spfstep{Dividing both sides by $2$ yields
+ \yield{$\eq{\intpow{\varb}2}{\inttimes{2}{\intpow{\vara}2}}$}}
+ \spfstep[term=\divides{2}{\intpow{\varb}2}]{Hence
+ $\intpow{\varb}2$ is even}
+ \conclude[term=\divides{2}{\varb}]{Hence $\varb $ is even}
+ % one more comment:
+ By the same argument as above
+ \end{subproof}
+ \conclude[term=\contradiction]{Contradiction to $\vara,\varb $ being
+ \symname{coprime}.}
+\end{sproof}
+\end{latexcode}
+
+which will produce:
+
+\begin{mdframed}
+\begin{sassertion}[type=theorem,name=sqrt2irr]
+ \conclusion{\irrational{$\arg{\realroot2}$ is \comp{irrational}}}.
+\end{sassertion}
+
+\begin{sproof}[for=sqrt2irr,method=contradiction]{By contradiction}
+ \assumption{Assume \yield{\rational{$\arg{\realroot2}$ is \comp{rational}}}}
+ \begin{subproof}[method=straightforward]%
+ {Then \yield{$\eq{\ratfrac{\intpow \vara2}{\intpow \varb2}}{2}$ for some $\inset{\vara,\varb}\PosInt$ with \coprime{$\arg \vara,\arg \varb$ \comp{coprime}}}}
+ \assumption{By assumption, \yield{there are $\inset{\vara,\varb}\PosInt$ with $\realroot2=\ratfrac\vara\varb$}}
+ \spfstep{wlog, we can assume \coprime{$\arg{\vara},\arg{\varb}$ to be \comp{coprime}}}
+ If not, reduce the fraction until numerator and denominator are
+ coprime, and let the resulting components be $\vara$ and $\varb$
+ \spfstep{Then \yield{$\eq{\intpow{\ratfrac\vara\varb}2}2$}}
+ \eqstep{\ratfrac{\intpow\vara2}{\intpow\varb2}}
+ \end{subproof}
+ \begin{subproof}[term=\divides{2}{\vara},method=straightforward]{Then $\vara$ is even}
+ \spfstep{Multiplying the equation by $\intpow\varb2$ yields $\yield{\eq{\intpow\vara2}{\inttimes2{\intpow\varb2}}}$}
+ \spfstep[term=\divides{2}{\intpow\vara2}]{Hence $\intpow\vara2$ is even}
+ \conclude[term=\divides{2}{\vara}]{Hence $\vara$ is even as well}
+ Hint: Think about the prime factorizations of $\vara$ and $\intpow\vara2$
+ \end{subproof}
+ \begin{subproof}[term=\divides{2}{\varb},method=straightforward]{Then $\varb$ is also even}
+ \spfstep{Since $\vara$ is even, we have \yield{some $\varc$ such that $\eq{\inttimes2\varc}{\vara}$}}
+ \spfstep{Plugging into the above, we get \yield{$\eq{\intpow{\inttimes2\vara}2}{\inttimes2{\intpow\varb2}}$}}
+ \eqstep{\inttimes4{\intpow\vara2}}
+ \spfstep{Dividing both sides by $2$ yields \yield{$\eq{\intpow\varb2}{\inttimes2{\intpow\vara2}}$}}
+ \spfstep[term=\divides{2}{\intpow\varb2}]{Hence $\intpow\varb2$ is even}
+ \conclude[term=\divides{2}{\varb}]{Hence $\varb$ is even}
+ By the same argument as above
+ \end{subproof}
+ \conclude[term=\contradiction]{Contradiction to $\vara,\varb$ being \symname{coprime}.}
+\end{sproof}
+\end{mdframed}
+
+If we mark all subproofs with |hide|, we will obtain the following
+instead:
+
+\begin{mdframed}
+ \begin{sassertion}[type=theorem,name=sqrt2irr]
+ \conclusion{\irrational{$\arg{\realroot2}$ is \comp{irrational}}}.
+ \end{sassertion}
+
+ \begin{sproof}[for=sqrt2irr,method=contradiction]{By contradiction}
+ \assumption{Assume \yield{\rational{$\arg{\realroot2}$ is \comp{rational}}}}
+ \begin{subproof}[hide,method=straightforward]%
+ {Then \yield{$\eq{\ratfrac{\intpow \vara2}{\intpow \varb2}}{2}$ for some $\inset{\vara,\varb}\PosInt$ with \coprime{$\arg \vara,\arg \varb$ \comp{coprime}}}}
+ \assumption{By assumption, \yield{there are $\inset{\vara,\varb}\PosInt$ with $\realroot2=\ratfrac\vara\varb$}}
+ \spfstep{wlog, we can assume \coprime{$\arg{\vara},\arg{\varb}$ to be \comp{coprime}}}
+ If not, reduce the fraction until numerator and denominator are
+ coprime, and let the resulting components be $\vara$ and $\varb$
+ \spfstep{Then \yield{$\eq{\intpow{\ratfrac\vara\varb}2}2$}}
+ \eqstep{\ratfrac{\intpow\vara2}{\intpow\varb2}}
+ \end{subproof}
+ \begin{subproof}[hide,term=\divides{2}{\vara},method=straightforward]{Then $\vara$ is even}
+ \spfstep{Multiplying the equation by $\intpow\varb2$ yields $\yield{\eq{\intpow\vara2}{\inttimes2{\intpow\varb2}}}$}
+ \spfstep[term=\divides{2}{\intpow\vara2}]{Hence $\intpow\vara2$ is even}
+ \conclude[term=\divides{2}{\vara}]{Hence $\vara$ is even as well}
+ Hint: Think about the prime factorizations of $\vara$ and $\intpow\vara2$
+ \end{subproof}
+ \begin{subproof}[hide,term=\divides{2}{\varb},method=straightforward,]{Then $\varb$ is also even}
+ \spfstep{Since $\vara$ is even, we have \yield{some $\varc$ such that $\eq{\inttimes2\varc}{\vara}$}}
+ \spfstep{Plugging into the above, we get \yield{$\eq{\intpow{\inttimes2\vara}2}{\inttimes2{\intpow\varb2}}$}}
+ \eqstep{\inttimes4{\intpow\vara2}}
+ \spfstep{Dividing both sides by $2$ yields \yield{$\eq{\intpow\varb2}{\inttimes2{\intpow\vara2}}$}}
+ \spfstep[term=\divides{2}{\intpow\varb2}]{Hence $\intpow\varb2$ is even}
+ \conclude[term=\divides{2}{\varb}]{Hence $\varb$ is even}
+ By the same argument as above
+ \end{subproof}
+ \conclude[term=\contradiction]{Contradiction to $\vara,\varb$ being \symname{coprime}.}
+ \end{sproof}
+ \end{mdframed}
+
+ However, the hidden subproofs will still be shown in the HTML,
+ only in an expandable section which is collapsed by default.
+
+
+The above style of writing proofs is usually called \emph{structured proofs}.
+They have a huge advantage over the traditional purely prosaic style,
+in that (as the name suggests) the actual \emph{structure} of the proof
+is made explicit, which almost always makes it considerably more
+comprehensible. We, among many others, encourage the general use of
+structured proofs.
+
+Alas, most proofs are not written in this style, and we would
+do users a disservice by insisting on this style. For that reason,
+the |spfblock| environment turns all subproofs and proof step
+macros into presentationally neutral \emph{inline} annotations,
+as in the induction step of the following example:
+
+\begin{latexcode}
+\begin{sproof}[id=simple-proof,method=induction]
{We prove that $\sum_{i=1}^n{2i-1}=n^{2}$ by induction over $n$}
- \begin{spfcases}{For the induction we have to consider three cases:}
- \begin{spfcase}{$n=1$}
- \begin{spfstep}[type=inline] then we compute $1=1^2$\end{spfstep}
- \end{spfcase}
- \begin{spfcase}{$n=2$}
- \begin{spfcomment}[type=inline]
+ For the induction we have to consider three cases: % <- a comment
+ \begin{subproof}{$n=1$}
+ \spfstep*{then we compute $1=1^2$}
+ \end{subproof}
+ \begin{subproof}{$n=2$}
This case is not really necessary, but we do it for the
fun of it (and to get more intuition).
- \end{spfcomment}
- \begin{spfstep}[type=inline] We compute $1+3=2^{2}=4$.\end{spfstep}
- \end{spfcase}
- \begin{spfcase}{$n>1$}
- \begin{spfstep}[type=assumption,id=ind-hyp]
+ \spfstep*{We compute $1+3=2^{2}=4$.}
+ \end{subproof}
+ \begin{subproof}{$n>1$}\begin{spfblock}
+ \assumption[id=ind-hyp]{
Now, we assume that the assertion is true for a certain $k\geq 1$,
- i.e. $\sum_{i=1}^k{(2i-1)}=k^{2}$.
- \end{spfstep}
- \begin{spfcomment}
+ i.e. \yield{$\sum_{i=1}^k{(2i-1)}=k^{2}$}.
+ }
+
We have to show that we can derive the assertion for $n=k+1$ from
this assumption, i.e. $\sum_{i=1}^{k+1}{(2i-1)}=(k+1)^{2}$.
- \end{spfcomment}
- \begin{spfstep}
- We obtain $\sum_{i=1}^{k+1}{2i-1}=\sum_{i=1}^k{2i-1}+2(k+1)-1$
- \spfjust[method=arith:split-sum]{by splitting the sum}.
- \end{spfstep}
- \begin{spfstep}
- Thus we have $\sum_{i=1}^{k+1}{(2i-1)}=k^2+2k+1$
- \spfjust[method=fertilize]{by inductive hypothesis}.
- \end{spfstep}
- \begin{spfstep}[type=conclusion]
- We can \spfjust[method=simplify]{simplify} the right-hand side to
+
+ \spfstep{
+ We obtain $\yield{\sum_{i=1}^{k+1}{2i-1}=
+ \sum_{i=1}^k{2i-1}+2(k+1)-1}$
+ \spfjust{by \splitsum{\comp{splitting the sum}
+ \arg*{$\sum_{i=1}^{k+1}{(2i-1)}=(k+1)^{2}$}}}.
+ }
+ \spfstep{
+ Thus we have $\yield{\sum_{i=1}^{k+1}{(2i-1)}=k^2+2k+1}$
+ \spfjust{by \symname{induction-hypothesis}}.
+ }
+ \conclude{
+ We can \spfjust{\simplification{\comp{simplify} the right-hand side
+ \arg*{k^2+2k+1}}} to
${k+1}^2$, which proves the assertion.
- \end{spfstep}
- \end{spfcase}
- \begin{spfstep}[type=conclusion]
+ }
+ \end{spfblock}\end{subproof}
+ \conclude{
We have considered all the cases, so we have proven the assertion.
- \end{spfstep}
- \end{spfcases}
+ }
\end{sproof}
\end{latexcode}
+
+\symdecl{splitsum}[args=1]
+\symdecl{inducthypothesis}[name=induction-hypothesis]
+\symdecl{simplification}[args=1]
+
This yields the following result:
\begin{mdframed}
- \begin{sproof}[id=simple-proof]
- {We prove that $\sum_{i=1}^n{2i-1}=n^{2}$ by induction over $n$}
- \begin{spfcases}{For the induction we have to consider the following cases:}
- \begin{spfcase}{$n=1$}
- \begin{spfstep}[type=inline] then we compute $1=1^2$\end{spfstep}
- \end{spfcase}
- \begin{spfcase}{$n=2$}
- \begin{spfcomment}[type=inline]
- This case is not really necessary, but we do it for the fun
- of it (and to get more intuition).
- \end{spfcomment}
- \begin{spfstep}[type=inline]
- We compute $1+3=2^{2}=4$
- \end{spfstep}
- \end{spfcase}
- \begin{spfcase}{$n>1$}
- \begin{spfstep}[type=hypothesis,id=ind-hyp]
- Now, we assume that the assertion is true for a certain $k\geq 1$, i.e.
- $\sum_{i=1}^k{(2i-1)}=k^{2}$.
- \end{spfstep}
- \begin{spfcomment}
- We have to show that we can derive the assertion for $n=k+1$ from this
- assumption, i.e. $\sum_{i=1}^{k+1}{(2i-1)}=(k+1)^{2}$.
- \end{spfcomment}
- \begin{spfstep}[id=splitit]
- We obtain $\sum_{i=1}^{k+1}{(2i-1)}=\sum_{i=1}^k{(2i-1)}+2(k+1)-1$
- \spfjust[method=arith:split-sum]{by splitting the sum}.
- \end{spfstep}
- \begin{spfstep}[id=byindhyp]
- Thus we have $\sum_{i=1}^{k+1}{(2i-1)}=k^2+2k+1$
- \spfjust[method=fertilize]{by \premise[ind-hyp]{inductive hypothesis}}.
- \end{spfstep}
- \begin{spfstep}[type=conclusion]
- We can \spfjust[method=simplify-eq]{simplify the \justarg[rhs]{right-hand side}} to
- $(k+1)^2$, which proves the assertion.
- \end{spfstep}
- \end{spfcase}
- \begin{spfstep}[type=conclusion]
- We have considered all the cases, so we have proven the assertion.
- \end{spfstep}
- \end{spfcases}
-\end{sproof}
+ \begin{sproof}[id=simple-proof,method=induction]
+ {We prove that $\sum_{i=1}^n{2i-1}=n^{2}$ by induction over $n$}
+ For the induction we have to consider three cases: % <- a comment
+ \begin{subproof}{$n=1$}
+ \spfstep*{then we compute $1=1^2$}
+ \end{subproof}
+ \begin{subproof}{$n=2$}
+ This case is not really necessary, but we do it for the
+ fun of it (and to get more intuition).
+ \spfstep*{We compute $1+3=2^{2}=4$.}
+ \end{subproof}
+ \begin{subproof}{$n>1$}\begin{spfblock}
+ \assumption[id=ind-hyp]{
+ Now, we assume that the assertion is true for a certain $k\geq 1$,
+ i.e. \yield{$\sum_{i=1}^k{(2i-1)}=k^{2}$}.
+ }
+
+ We have to show that we can derive the assertion for $n=k+1$ from
+ this assumption, i.e. $\sum_{i=1}^{k+1}{(2i-1)}=(k+1)^{2}$.
+
+ \spfstep{
+ We obtain $\yield{\sum_{i=1}^{k+1}{2i-1}=\sum_{i=1}^k{2i-1}+2(k+1)-1}$
+ \spfjust{by \splitsum{\comp{splitting the sum}\arg*{$\sum_{i=1}^{k+1}{(2i-1)}=(k+1)^{2}$}}}.
+ }
+ \spfstep{
+ Thus we have $\yield{\sum_{i=1}^{k+1}{(2i-1)}=k^2+2k+1}$
+ \spfjust{by \symname{induction-hypothesis}}.
+ }
+ \conclude{
+ We can \spfjust{\simplification{\comp{simplify} the right-hand side
+ \arg*{k^2+2k+1}}} to
+ ${k+1}^2$, which proves the assertion.
+ }
+ \end{spfblock}\end{subproof}
+ \conclude{
+ We have considered all the cases, so we have proven the assertion.
+ }
+ \end{sproof}
\end{mdframed}
+\end{smodule}
+
\begin{environment}{sproof}
The |sproof| environment is the main container for proofs. It takes an optional |KeyVal|
argument that allows to specify the |id| (identifier) and |for| (for which assertion is
@@ -114,78 +322,39 @@ This yields the following result:
the proof.
\end{function}
-\begin{environment}{spfstep}
- Regular proof steps are marked up with the |step| environment, which takes an optional
+\begin{function}{\spfstep}
+ Regular proof steps are marked up with the |\spfstep| macro, which takes an optional
|KeyVal| argument for annotations. A proof step usually contains a local assertion
(the text of the step) together with some kind of evidence that this can be derived
from already established assertions.
-\end{environment}
+\end{function}
+
+\begin{function}{\yield}
+ See above
+\end{function}
\begin{function}{\spfjust}
This evidence is marked up with the |\spfjust| macro in the \pkg{stex-proofs}
package. This environment totally invisible to the formatted result; it wraps the text
- in the proof step that corresponds to the evidence. The environment takes an optional
- |KeyVal| argument, which can have the |method| key, whose value is the name of a proof
- method (this will only need to mean something to the application that consumes the
- semantic annotations). Furthermore, the justification can contain ``premises''
- (specifications to assertions that were used justify the step) and ``arguments''
- (other information taken into account by the proof method).
+ in the proof step that corresponds to the evidence (ideally, a
+ semantically marked-up term).
\end{function}
-\begin{function}{\premise}
- The |\premise| macro allows to mark up part of the text as reference to an assertion
- that is used in the argumentation. In the running example we have used the |\premise|
- macro to identify the inductive hypothesis.
+\begin{function}{\assumption}
+ The |\assumption| macro allows to mark up a (justified) assumption.
\end{function}
\begin{function}{\justarg}
- The |\justarg| macro is very similar to |\premise| with the difference that it is used
- to mark up arguments to the proof method. Therefore the content of the first argument
- is interpreted as a mathematical object rather than as an identifier as in the case of
- |\premise|. In our example, we specified that the simplification should take place on
- the right hand side of the equation. Other examples include proof methods that
- instantiate. Here we would indicate the substituted object in a |\justarg| macro.
\end{function}
-Note that both |\premise| and |\justarg| can be used with an empty second argument to
-mark up premises and arguments that are not explicitly mentioned in the text.
-
\begin{environment}{subproof}
- The |spfcases| environment is used to mark up a subproof. This environment takes an
+ The |subproof| environment is used to mark up a subproof. This environment takes an
optional |KeyVal| argument for semantic annotations and a second argument that allows
to specify an introductory comment (just like in the |proof| environment). The
|method| key can be used to give the name of the proof method
executed to make this subproof.
\end{environment}
-\begin{environment}{spfcases}
- The |spfcases| environment is used to mark up a proof by cases. Technically it is a
- variant of the |subproof| where the |method| is |by-cases|. Its contents are |spfcase|
- environments that mark up the cases one by one.
-\end{environment}
-
-\begin{environment}{spfcase}
- The content of a |spfcases| environment are a sequence of case proofs marked up in the
- |spfcase| environment, which takes an optional |KeyVal| argument for semantic
- annotations. The second argument is used to specify the the description of the case
- under consideration. The content of a |spfcase| environment is the same as that of a
- |sproof|, i.e. |spfstep|s, |spfcomment|s, and |spfcases| environments.
-\end{environment}
-
-\begin{function}{\spfcasesketch}
- |\spfcasesketch| is a variant of the |spfcase| environment that takes the same
- arguments, but instead of the |spfstep|s in the body uses a third argument for a proof
- sketch.
-\end{function}
-
-\begin{environment}{spfcomment}
- The |spfcomment| environment is much like a |step|, only that it does not have an
- object-level assertion of its own. Rather than asserting some fact that is relevant
- for the proof, it is used to explain where the proof is going, what we are attempting
- to to, or what we have achieved so far. As such, it cannot be the target of a
- |\premise|.
-\end{environment}
-
\begin{function}{\sproofend}
Traditionally, the end of a mathematical proof is marked with a little box at the end of
the last line of the proof (if there is space and on the end of the next line if there
@@ -205,10 +374,14 @@ in most cases, this is desirable to make the proof structure explicit, but somet
wastes space (especially, if a proof ends in a case analysis which will supply its own
proof end marker). To suppress it locally, just set |proofend={}| in them or use use
|\sProofEndSymbol{}|.
+\end{sfragment}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../stex-manual"
%%% End:
-% LocalWords: hypothesis,id geq splitit arith:split-sum byindhyp rhs proofend
+% LocalWords: hypothesis,id geq splitit arith:split-sum byindhyp rhs proofend eqstep
+% LocalWords: sproofs coprime ratfrac 2,prec intpow ratpow inttimes varb varc sqrt2irr
+% LocalWords: theorem,name sqrt2irr,method wlog hide,method hide,term spfblock splitsum
+% LocalWords: simple-proof,method inducthypothesis
diff --git a/macros/latex/contrib/stex/doc/packages/stex-references.tex b/macros/latex/contrib/stex/doc/packages/stex-references.tex
index 11de003e9b..3850d644ee 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-references.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-references.tex
@@ -1,6 +1,90 @@
-\begin{sfragment}[id=sec.references]{Referencing Symbols and Statements}
-\textcolor{red}{TODO: references documentation}
-\end{sfragment}
+If we take features like \stexcode"\inputref" and \stexcode"\mhinput"
+(and the \stexcode"sfragment"-environment, see
+\sref[file=stex-document-structure]{sec:ds:intro}[in=../stex-manual,title={the \sTeX{}3 manual}]) seriously,
+and build large documents modularly from individually compiling documents for sections, chapters
+and so on, cross-referencing becomes an interesting problem.
+
+Say, we have a document |main.tex|, which \stexcode"\inputref"s a section
+|section1.tex|, which references a definition with label |some_definition| in
+|section2.tex| (subsequently also inputted in |main.tex|).
+Then the numbering of the definition will depend on the \emph{document context}
+in which the document fragment |section2.tex| occurs - in |section2.tex| itself
+(as a standalone document), it might be \emph{Definition 1}, in |main.tex| it might
+be \emph{Definition 3.1}, and in |section1.tex|, the definition \emph{does not even occur}, so
+it needs to be referenced by some other text.
+
+What we would want in that instance is an equivalent of \stexcode"\autoref", that takes
+the document context into account to yield something like \emph{Definition 1}, \emph{Definition 3.1}
+or ``\emph{Definition 1 in the section on Foo}'' respectively.
+
+The \stexcode"\sref" command attempts to do precisely that. Unlike plain \stexcode"\ref", \stexcode"\autoref"
+etc., \stexcode"\sref" refers to not just a \emph{label}, but instead a pair consisting of a \emph{label}
+and the \emph{document} in whose context we want to refer to it. Conversely, every \emph{document}
+(i.e. standalone compilable |.tex|-file) keeps track of the ``names'' (\emph{Definition 3.1} etc.) for every
+label as determined in the context of the document, and stores them in a dedicated file |\jobname.sref|.
+Additionally, every document has a ``\emph{reference name}'' (e.g. ``\emph{the section on Foo}'').
+This allows us to refer to ``label $x$ in document $D$'' to yield ``\emph{Definition 1 in the section on Foo}''.
+And of course, \sTeX can decide based on the current document to either refer to the label by its
+``full name'' or directly as e.g. \emph{Definition 3.1} depending on whether the label occurs in
+the current document anyway (and link to it accordingly).
+
+\paragraph{} For that to work, we need to supply (up to) three pieces
+of information:
+\begin{itemize}
+ \item The \emph{label} of the reference target (e.g. |some_definition|),
+ \item (optionally) the \emph{file}/document containing the reference target
+ (e.g. |section2|).
+ This is not strictly necessary, but allows for additional disambiguation
+ between possibly duplicate labels across files, and
+ \item (optionally) the document context, in which we want to
+ refer to the reference target (e.g. |main|).
+\end{itemize}
+Additionally, the document in which we want to reference a label needs
+a title for external references.
+
+
+\begin{function}{\sref}
+ \begin{syntax} \cs{sref}|[archive=|\meta{archive1}|,file=|\meta{file}|]|%
+ \Arg{label}|[archive=|\meta{archive2}|,in=|\meta{document-context}|,title=|\meta{title}|]| \end{syntax}
+ This command references \meta{label} (declared in \meta{file} in \meta{archive1}).
+ If the object (section, figure, etc.) with that label occurs ultimately
+ in the same document, \cs{sref} will ignore the second set of optional arguments
+ and simply defer to \cs{autoref} if that command exists, or \cs{ref} if the \pkg{hyperref}
+ package is not included.
+
+ If the referenced object does \emph{not} occur in the current document however,
+ \cs{sref} will refer to it by the object's name as it occurs in
+ the file \meta{document-context} in \meta{archive2}.
+
+For example, the reference to the \stexcode"sfragment"-environment above
+will appear as ``subsection 7.2.1 (Introduction) in the \sTeX{}3 manual''
+if you are reading this in the package documentation for |stex-references|
+directly, but as a linked ``subsection 7.2.1'' in the full documentation
+or manual. This is achieved using
+
+\stexcode"\sref[file=stex-document-structure]{sec:ds:intro}[in=../stex-manual,title={the \sTeX{}3 manual}]".
+
+\end{function}
+
+For a further example, the following:
+\begin{center}
+ \sref[file=../stex-doc]{part:extends}[in=../stex-doc,title={the full \sTeX{}3 documentation}]
+\end{center}
+will say ``Part III'' (and link accordingly) in the full documentation,
+and ``Part III (Extensions) in the full \sTeX{}3 documentation''
+everywhere else. This is achieved using
+
+\stexcode"\sref[file=../stex-doc]{part:extends}[in=../stex-doc,title={the full \sTeX{}3 documentation}]".
+
+\begin{function}{\extref}
+ \begin{syntax} \cs{sref}|[archive=|\meta{archive1}|,file=|\meta{file}|]|%
+ \Arg{label}|{archive=|\meta{archive2}|,in=|\meta{document-context}|,title=|\meta{title}|}| \end{syntax}
+ The \cs{extref}-command behaves exactly like \cs{sref}, but takes
+ \emph{required} the document context argument and will always use it
+ for generating the document text, regardless of whether the label
+ occurs in the current document.
+\end{function}
+
%%% Local Variables:
%%% mode: latex
diff --git a/macros/latex/contrib/stex/doc/packages/stex-setup.tex b/macros/latex/contrib/stex/doc/packages/stex-setup.tex
new file mode 100644
index 0000000000..7e0e1fe4a4
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/packages/stex-setup.tex
@@ -0,0 +1,34 @@
+\begin{sfragment}{Setting up the \sTeX Package}
+
+ \begin{sfragment}[id=sec.minimal-setup]{Minimal Setup for the \sTeX Package}
+ In the best of all worlds, there is no setup, as you already have a new version of
+ {\TeX}Live on your system as a {\LaTeX} enthusiast. If not now is the time to
+ install it; see \cite{TeXLive:on}. You can usually update {\TeX}Live via a package
+ manager or the {\TeX}Live manager \textbf{tlmgr}.
+ \sTeX requires a \TeX{} kernel newer than February 2022.
+
+ Alternatively, you can install \sTeX from CTAN, the Comprehensive {\TeX} Archive
+ Network; see \cite{stexCTAN:on} for details. We
+ assume you have the \sTeX package in at least version 3.2 (September 2022).
+ \end{sfragment}
+
+ \begin{sfragment}[id=sec.git-setup]{GIT-based Setup for the \sTeX Development Version}
+ If you want use the latest and greatest \sTeX packages
+ that have not even been released to CTAN,
+ then you can directly clone them from the \sTeX development
+ repository \cite{sTeX:github:on} by the following command-line instructions:
+ \begin{lstlisting}[language=bash]
+ cd <stexdir>
+ git clone https://github.com/slatex/sTeX.git
+ \end{lstlisting}
+ and keep it updated by pulling updates via \lstinline|git pull| in the cloned \sTeX
+ directory.
+ Make sure to either clone the \sTeX repository into a local texmf-tree or to update your \lstinline|TEXINPUTS| environment variable, e.g. by placing the following line in your \lstinline|.bashrc|:
+ \begin{lstlisting}[language=bash]
+ export TEXINPUTS="$(TEXINPUTS):<sTeXDIR>//:"
+ \end{lstlisting}
+ \end{sfragment}
+
+ \input{packages/stex-mathhubsetup}
+
+\end{sfragment} \ No newline at end of file
diff --git a/macros/latex/contrib/stex/doc/packages/stex-symbols.tex b/macros/latex/contrib/stex/doc/packages/stex-symbols.tex
index e7bafeda6b..67e9a32e70 100644
--- a/macros/latex/contrib/stex/doc/packages/stex-symbols.tex
+++ b/macros/latex/contrib/stex/doc/packages/stex-symbols.tex
@@ -413,9 +413,9 @@ Note that the precise numbers used for precedences are pretty arbitrary - what m
which precedences are higher than which other precedences when used in conjunction.
\begin{variable}{\infprec,\neginfprec}
It is occasionally useful to have ``infinitely'' high or low precedences to enforce or
- forbid automated bracketing entirely -- for those purposes, \stexcode"\infprec" and
- \stexcode"\neginfprec" exist (which are implemented as the maximal and minimal integer
- values accordingly).
+ forbid automated bracketing entirely, e.g. for bracket-like notations such as intervals
+ -- for those purposes, \stexcode"\infprec" and \stexcode"\neginfprec" exist (which are
+ implemented as the maximal and minimal integer values accordingly).g
\end{variable}
\begin{dangerbox}
@@ -499,7 +499,7 @@ which precedences are higher than which other precedences when used in conjuncti
\vardef{varx}[name=x,type=\Nat]{\comp{x}}
Given a function $\varf!:\funtype{\Nat}{\Nat}$,
-by $\addition{\varf!,\varn}$ we mean the function
+by $\addition{\varf!,\varn}$ we mean the function\rustexBREAK
$\fun{\varx}{\varf{\addition{\varx,\varn}}}$
}
diff --git a/macros/latex/contrib/stex/doc/stex-doc.pdf b/macros/latex/contrib/stex/doc/stex-doc.pdf
index 0d0a36720c..e53c98213a 100644
--- a/macros/latex/contrib/stex/doc/stex-doc.pdf
+++ b/macros/latex/contrib/stex/doc/stex-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/stex/doc/stex-doc.tex b/macros/latex/contrib/stex/doc/stex-doc.tex
index 7a98ff49c2..d2ff005554 100644
--- a/macros/latex/contrib/stex/doc/stex-doc.tex
+++ b/macros/latex/contrib/stex/doc/stex-doc.tex
@@ -1,4 +1,7 @@
-\def\bibfolder#1{../lib/bib/#1}
+\def\libfolder#1{../lib/#1}
+\newif\ifinidedoc\inidedocfalse
+\newif\ifinfulldoc\inidedocfalse
+
\input{stex-docheader}
\infulldoctrue
@@ -9,8 +12,6 @@
}
\ExplSyntaxOff
-\expandafter\newif\csname if@infulldoc\expandafter\endcsname\csname @infulldoctrue\endcsname
-
\begin{document}
\title{
The {\stex{3}} Package Collection
@@ -185,7 +186,7 @@
\OmitDocInput{../source/stex/stex-others.dtx}
\DocInput{../source/stex/stex-metatheory.dtx}
-\part{Extensions}\label{part:extensions}
+\part{Extensions}\label{part:extensions}\slabel{part:extends}
\DocInput{../source/extensions/tikzinput.dtx}
\DocInput{../source/extensions/document-structure.dtx}
diff --git a/macros/latex/contrib/stex/doc/stex-docheader.tex b/macros/latex/contrib/stex/doc/stex-docheader.tex
index d16b19703b..c6bea9b3da 100644
--- a/macros/latex/contrib/stex/doc/stex-docheader.tex
+++ b/macros/latex/contrib/stex/doc/stex-docheader.tex
@@ -1,4 +1,5 @@
\RequirePackage{paralist}
+\ifcsname libfolder\endcsname\else\def\libfolder#1{../lib/#1}\fi
\documentclass[full,kernel]{l3doc}
\usepackage[dvipsnames]{xcolor}
\usepackage[utf8]{inputenc}
@@ -7,15 +8,14 @@
\RequirePackage{tikzinput}
\usetikzlibrary{fit}
-% \usepackage[debug=all,lang=en, mathhub=./tests]{stex}
-\usepackage[lang=en, mathhub=./tests]{stex}
-\usepackage{url,array,float,textcomp}
+\usepackage[lang=en, mathhub=./tests,debug=sref]{stex}
+\usepackage{url,array,float}
\usepackage[show]{ed}
\usepackage[hyperref=auto,style=alphabetic]{biblatex}
-\addbibresource{\bibfolder{kwarcpubs.bib}}
-\addbibresource{\bibfolder{extpubs.bib}}
-\addbibresource{\bibfolder{kwarccrossrefs.bib}}
-\addbibresource{\bibfolder{extcrossrefs.bib}}
+\addbibresource{\libfolder{bib/kwarcpubs.bib}}
+\addbibresource{\libfolder{bib/extpubs.bib}}
+\addbibresource{\libfolder{bib/kwarccrossrefs.bib}}
+\addbibresource{\libfolder{bib/extcrossrefs.bib}}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{xspace}
@@ -50,7 +50,9 @@
\\symbolname,\\binarysymbol,\\newbinarysymbol,\\addition,
\\summation,\\ascendingchain,\\quantforall,\\set,\\funtype,
\\Nat,\\successor,\\multiplication,\\Int,\\zero,\\uminus,
- \\intmonoid
+ \\intmonoid,\\divides,\\intpow,\\ratfrac,\\ratpow,\\inttimes,
+ \\inset,\\eq,\\rational,\\irrational,\\coprime,\\PosInt,
+ \\realroot
},
classoffset=2,keywordstyle=\color{blue},morekeywords={
\\symdecl,\\symdef,\\notation,\\vardef,\\varseq,\\instantiate,
@@ -64,11 +66,11 @@
classoffset=4,keywordstyle=\color{Purple},morekeywords={
\\definiendum,\\definame,\\symref,\\symname,\\comp,
\\compemph,\\definiens,\\svar,\\infprec,\\neginfprec,\\ellipses,
- \\Symname,\\arg
+ \\Symname,\\arg,\\yield,\\assumption,\\spfstep,\\eqstep,\\conclude
},
classoffset=5,keywordstyle=\color{magenta},morekeywords={
smodule,sdefinition,sassertion,sparagraph,sexample,
- sproof,subproof,spfcases,spfcase,spfstep,spfcomment,
+ sproof,subproof,spfcases,spfcase,spfstep,spfcomment,spfblock,
\\spfidea,\\spfsketch,\\spfcasesketch,\\sproofend,
\\spfjust,\\premise,\\justarg,
copymodule,interpretmodule,mathstructure,sexample
@@ -88,57 +90,12 @@
},
classoffset=8,keywordstyle=\color{red},morekeywords={
frame,note
+ },
+ classoffset=9,keywordstyle=\color{gray},morekeywords={
+ \\vara,\\varb,\\varc
}
}
-%\lstdefinestyle{mylatex}{
-% keywordstyle=\color{BurntOrange}
-%}
-%\lstdefinelanguage{mylatex}{
-% emphstyle=\underbar,
-% alsodigit={:},
-% %alsoletter={_},
-% alsoletter={\\}
-% sensitive=true,
-% classoffset=0,keywordstyle=\bfseries,
-% morekeywords={\\begin,\\end,\\ExplSyntaxOn,\\ExplSyntaxOff},
-% classoffset=1,keywordstyle=\color{blue},
-% morekeywords={
-% \\symdecl,
-% \\symdef,
-% \\notation,
-% \\abbrdef,
-% \\importmodule,
-% \\usemodule,
-% \\STEXwithbrackets,
-% \\symref
-% },
-% classoffset=2,keywordstyle=\color{Purple},
-% morekeywords={
-% \\stex_path_from_string:Nn,
-% \\stex_path_to_string:NN,
-% \\stex_path_to_string:N,
-% \\stex_require_repository:n,
-% \\stex_modules_current_namespace:,
-% \\stex_debug:n,
-% \\stex_set_current_repository:n,
-% \\stex_file_in_smsmode:nn,
-% \\stex_get_symbol:n,
-% },
-% classoffset=3,keywordstyle=\color{SkyBlue},
-% morekeywords={
-% \\l_stex_module_ns_str,
-% \\g_stex_currentfile_seq,
-% \\l_stex_current_module_prop,
-% \\l_stex_get_symbol_uri_str,
-% }
-% classoffset=0,
-%%^^A morecomment=[l][\color{Gray}]{//},
-%%^^A morecomment=[s][\color{Gray}]{/*}{*/},
-% morecomment=[s][\color{Green}]{$}{$},,
-% morecomment=[s][\color{OliveGreen}]{\\[}{\\]},
-%^^A morestring=[b][\color{Purple}]\$,
-%}
\lstnewenvironment{latexcode}[1][]{\lstset{language=sTeX,#1}}{}
\def\stexcode{\lstinline[language=sTeX]}
@@ -183,28 +140,6 @@
outer arc=4pt
}
-
-%\newtcolorbox{exampleborderbox}{
-% enhanced,
-% left=0pt,
-% title={Example \the\example@counter},
-% right=0pt,
-% top=8pt,
-% bottom=8pt,
-% colback=white,
-% colframe=blue,
-% width=\textwidth,
-% enlarge left by=0mm,
-% boxsep=5pt,
-% fontupper=\small,
-% arc=4pt,
-% outer arc=4pt,
-% leftupper=1.5cm,
-% fonttitle=\bfseries,
-% coltitle=blue,
-% boxed title style={empty,size=minimal,toprule=0pt,top=1pt,left=3mm,overlay={}},
-%}
-
\newenvironment{example@border}
{
\global\advance\example@counter by 1
@@ -262,7 +197,7 @@
Output:
\begin{stextest@output}
- \input{stextest.tex}
+ \csname @ @ input\endcsname{stextest.tex}
\end{stextest@output}
\end{example@border}
}
@@ -371,7 +306,7 @@
\def\atwintoo#1#2#3{{#1 #2 #3}\atwin{#1}{#2}{#3}}
\def\cT{\mathcal{T}}\def\cD{\mathcal{D}}
-\def\fileversion{3.1}
+\def\fileversion{3.2}
\def\filedate{\today}
\RequirePackage{pdfcomment}
@@ -446,4 +381,4 @@
\end{mdframed}\end{remarkbox}\endlist
}
-\usepackage{rustex}
+\usepackage{rustex} \ No newline at end of file
diff --git a/macros/latex/contrib/stex/doc/stex-ide.pdf b/macros/latex/contrib/stex/doc/stex-ide.pdf
new file mode 100644
index 0000000000..a04d7ddd60
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/stex-ide.pdf
Binary files differ
diff --git a/macros/latex/contrib/stex/doc/stex-ide.tex b/macros/latex/contrib/stex/doc/stex-ide.tex
new file mode 100644
index 0000000000..a563d277fb
--- /dev/null
+++ b/macros/latex/contrib/stex/doc/stex-ide.tex
@@ -0,0 +1,155 @@
+\ifcsname ifinfulldoc\endcsname\else
+ \expandafter\newif\csname ifinfulldoc\endcsname\infulldocfalse
+\fi
+\ifcsname ifinidedoc\endcsname\else
+ \expandafter\newif\csname ifinidedoc\endcsname\inidedoctrue
+\fi
+
+\ifinidedoc
+\input{stex-docheader}
+
+
+\begin{document}
+
+ \title{
+ The {\stex} VSCode IDE
+ \thanks{Version {\fileversion} (last revised {\filedate})}
+ }
+ \author{Michael Kohlhase, Dennis Müller\\
+ FAU Erlangen-Nürnberg\\
+ \url{http://kwarc.info/}
+ }
+ \pagenumbering{roman}
+ \maketitle
+
+ This is the user manual for the \sTeX Plugin for VSCode, available at
+ \url{https://marketplace.visualstudio.com/items?itemName=kwarc.stexide}.
+ For the manual for the \sTeX package itself, see \href{\basedocurl/stex-manual.pdf}{the \sTeX{}3 Manual}.
+
+ \makeatletter
+ \renewcommand\part{%
+ \clearpage
+ \thispagestyle{plain}%
+ \@tempswafalse
+ \null\vfil
+ \secdef\@part\@spart%
+ }
+ \newcounter{chapter}
+ \numberwithin{section}{chapter}
+ \renewcommand\thechapter{\@arabic\c@chapter}
+ \renewcommand\thesection{\thechapter.\@arabic\c@section}
+ \newcommand*\chaptermark[1]{}
+ \setcounter{secnumdepth}{2}
+ \newcommand\@chapapp{\chaptername}
+ %\newcommand\chaptername{Chapter}
+ \def\ps@headings{%
+ \let\@oddfoot\@empty
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\chaptermark##1{%
+ \markright{\MakeUppercase{%
+ \ifnum \c@secnumdepth >\m@ne
+ \@chapapp\ \thechapter. \ %
+ \fi
+ ##1}}%
+ }%
+ }
+ \newcommand\chapter{\clearpage
+ \thispagestyle{plain}%
+ \global\@topnum\z@
+ \@afterindentfalse
+ \secdef\@chapter\@schapter%
+ }
+ \def\@chapter[#1]#2{\refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}#1}%
+ \chaptermark{#1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \@makechapterhead{#2}%
+ \@afterheading%
+ }
+ \def\@makechapterhead#1{%
+ \vspace*{50\p@}%
+ {\parindent \z@ \raggedright \normalfont
+ \huge\bfseries \@chapapp\space \thechapter
+ \par\nobreak
+ \vskip 20\p@
+ \interlinepenalty\@M
+ \Huge \bfseries #1\par\nobreak
+ \vskip 40\p@
+ }%
+ }
+\newcommand*\l@chapter[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 1.0em \@plus\p@
+ \setlength\@tempdima{1.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil
+ \nobreak\hb@xt@\@pnumwidth{\hss #2%
+ \kern-\p@\kern\p@}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+\renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.8em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}}
+\renewcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}
+\def\partname{Part}
+\def\toclevel@part{-1}
+\def\maketitle{\chapter{\@title}}
+\let\thanks\@gobble
+\let\DelayPrintIndex\PrintIndex
+\let\PrintIndex\@empty
+\providecommand*{\hexnum}[1]{\text{\texttt{\char`\"}#1}}
+\makeatother
+
+\ExplSyntaxOn
+\int_set:Nn \l_document_structure_section_level_int {1}
+\ExplSyntaxOff
+
+\clearpage
+
+{%
+ \def\\{:}% fix "newlines" in the ToC
+ \tableofcontents
+}
+
+\clearpage
+\pagenumbering{arabic}
+
+\long\def\ignore#1{}
+
+\input{packages/stex-setup}
+\input{packages/stex-idesetup}
+
+\fi
+
+
+
+
+\ifinidedoc
+\newpage
+\printbibliography
+\end{document}
+\fi
+
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: t
+%%% End:
+
+% LocalWords: stex-docheader infulldoctrue l@subsubsection toclevel@part ExplSyntaxOff
+% LocalWords: l_document_structure_section_level_int dangerbox mmtbox omdoc OBJref lmh
+% LocalWords: own:fifom MueRabRot:rslffml20 sec.stexarchives stex-mathhub ngerman a,b
+% LocalWords: Metatheory sec.customhighlight sproof stexthm xspace stexpatchmodule
+% LocalWords: stexpatchexample stexpatchparagraph sexampleid amsthm sassertiontitle
+% LocalWords: sdefinitiontitle compemph varemph srefsymuri stex-hwexam TeXLive:on tlmgr
+% LocalWords: stexls:on,stexls-vscode-plugin:on
diff --git a/macros/latex/contrib/stex/doc/stex-manual.pdf b/macros/latex/contrib/stex/doc/stex-manual.pdf
index 32c1e047ca..2facc41ad1 100644
--- a/macros/latex/contrib/stex/doc/stex-manual.pdf
+++ b/macros/latex/contrib/stex/doc/stex-manual.pdf
Binary files differ
diff --git a/macros/latex/contrib/stex/doc/stex-manual.tex b/macros/latex/contrib/stex/doc/stex-manual.tex
index 31b9c4eaeb..547e238f54 100644
--- a/macros/latex/contrib/stex/doc/stex-manual.tex
+++ b/macros/latex/contrib/stex/doc/stex-manual.tex
@@ -1,19 +1,15 @@
-\makeatletter
-\ifcsname if@infulldoc\endcsname\else
- \expandafter\newif\csname if@infulldoc\endcsname\@infulldocfalse
-\fi
-\makeatother
-
-\csname if@infulldoc\endcsname\else
-
-\def\bibfolder#1{../lib/bib/#1}
-\input{stex-docheader}
+\ifcsname ifinfulldoc\endcsname\else
+ \expandafter\newif\csname ifinfulldoc\endcsname\infulldocfalse
+\fi
+\ifcsname ifinidedoc\endcsname\else
+ \expandafter\newif\csname ifinidedoc\endcsname\inidedocfalse
+\fi
-\infulldoctrue
+\ifinfulldoc\else
+ \input{stex-docheader}
\begin{document}
- \csname if@infulldoc\endcsname\else
\title{
The {\stex{3}} Manual
\thanks{Version {\fileversion} (last revised {\filedate})}
@@ -192,82 +188,55 @@ provided by several pieces of software:
\end{itemize}
\end{sfragment}
-
-\begin{sfragment}{Quickstart}
- \begin{sfragment}{Setup}
- There are two ways of using \sTeX: as a
- \begin{enumerate}
- \item way of writing {\LaTeX} more modularly (object-oriented Math) for creating PDF
- documents or
- \item foundation for authoring active documents in HTML5 instrumented with knowledge
- management services.
- \end{enumerate}
- Both are legitimate and useful. The first requires a significantly smaller
- tool-chain, so we describe it first. The second requires a much more substantial
- (and experimental) toolchain of knowledge management systems. Both workflows profit
- from an integrated development environment (IDE), which (also) automates setup as
- far as possible (see \sref{sec.sTeX-IDE}).
-
- \begin{sfragment}[id=sec.minimal-setup]{Minimal Setup for the PDF-only Workflow}
- In the best of all worlds, there is no setup, as you already have a new version of
- {\TeX}Live on your system as a {\LaTeX} enthusiast. If not now is the time to
- install it; see \cite{TeXLive:on}. You can usually update {\TeX}Live via a package
- manager or the {\TeX}Live manager \textbf{tlmgr}.
-
- Alternatively, you can install \sTeX from CTAN, the Comprehensive {\TeX} Archive
- Network; see \cite{stexCTAN:on} for details.
- \end{sfragment}
-
- \begin{sfragment}[id=sec.git-setup]{GIT-based Setup for the \sTeX Development Version}
- If you want use the latest and greatest \sTeX packages
- that have not even been released to CTAN,
- then you can directly clone them from the \sTeX development
- repository \cite{sTeX:github:on} by the following command-line instructions:
-\begin{lstlisting}[language=bash]
- cd <stexdir>
- git clone https://github.com/slatex/sTeX.git
-\end{lstlisting}
- and keep it updated by pulling updates via \lstinline|git pull| in the cloned \sTeX
- directory.
- Then update your \lstinline|TEXINPUTS| environment variable, e.g. by placing the following line in your \lstinline|.bashrc|:
-\begin{lstlisting}[language=bash]
-export TEXINPUTS="$(TEXINPUTS):<sTeXDIR>//:"
-\end{lstlisting}
- \end{sfragment}
-
- \begin{sfragment}[id=sec.stex-archives]{\sTeX Archives (Manual Setup)}
- Writing semantically annotated \sTeX becomes much easier, if we can use
- well-designed libraries of already annotated content. \sTeX provides such
- libraries as \sTeX archives -- i.e. GIT repositories at
- \url{https://gl.mathhub.info} -- most prominently the SMGLoM libraries at
- \url{https://gl.mathhub.info/smglom}.
-
- To do so, we set up a \textbf{local MathHub} by creating a MathHub directory
- \lstinline|<mhdir>|. Every \sTeX archive as an \textbf{archive path}
- \lstinline|<apath>| and a name \lstinline|<archive>|. We can clone the \sTeX
- archive by the following command-line instructions:
+\begin{sfragment}{Setup}
+ There are two ways of using \sTeX: as a
+ \begin{enumerate}
+ \item way of writing {\LaTeX} more modularly (object-oriented Math) for creating PDF
+ documents or
+ \item foundation for authoring active documents in HTML5 instrumented with knowledge
+ management services.
+ \end{enumerate}
+ Both are legitimate and useful. The first requires a significantly smaller
+ tool-chain, so we describe it first. The second requires a much more substantial
+ toolchain of knowledge management systems.
+
+ Luckily, the \sTeX-IDE will take care of much of the setup required
+ for the full toolchain, if you are willing to use it.
+
+ \input{packages/stex-setup}
+
+ \input{packages/stex-idesetup}
+
+ \begin{sfragment}{Manual Setup}
+
+ In lieu of using the \sTeX IDE, we can do the following:
+
+ \begin{sfragment}[id=sec.stex-archives]{\sTeX Archives (Manual Setup)}
+ Writing semantically annotated \sTeX becomes much easier, if we can use
+ well-designed libraries of already annotated content. \sTeX provides such
+ libraries as \sTeX archives -- i.e. GIT repositories at
+ \url{https://gl.mathhub.info} -- most prominently the SMGLoM libraries at
+ \url{https://gl.mathhub.info/smglom}.
+
+ To do so, we set up a \textbf{local MathHub} by creating a MathHub directory
+ \lstinline|<mhdir>|. Every \sTeX archive as an \textbf{archive path}
+ \lstinline|<apath>| and a name \lstinline|<archive>|. We can clone the \sTeX
+ archive by the following command-line instructions:
\begin{lstlisting}[language=bash]
- cd <mhdir>/<apath>
- git clone https://gl.mathhub.info/smglom/<archive>.git
+cd <mhdir>/<apath>
+git clone https://gl.mathhub.info/smglom/<archive>.git
\end{lstlisting}
- Note that \sTeX archives often depend on other archives, thus you should be
- prepared to clone these as well -- e.g. if \texttt{pdflatex} reports missing
- files.
- To make sure that \sTeX too knows where to find its archives, we need to set a global
- system variable |MATHHUB|, that points to your local |MathHub|-directory (see
- \sref{sec.stexarchives}).
+ Note that \sTeX archives often depend on other archives, thus you should be
+ prepared to clone these as well -- e.g. if \texttt{pdflatex} reports missing
+ files.
+ To make sure that \sTeX too knows where to find its archives, we need to set a global
+ system variable |MATHHUB|, that points to your local |MathHub|-directory (see
+ \sref{sec.stexarchives}).
\begin{lstlisting}[language=bash]
-export MATHHUB="<mhdir>''
+export MATHHUB="<mhdir>"
\end{lstlisting}
- \end{sfragment}
-
- \begin{sfragment}[id=sec.sTeX-IDE]{The \sTeX IDE}
- We are currently working on an \sTeX IDE as an \sTeX plugin for |VScode|;
- see~\cite{sTeX-IDE:on}. It will feature a setup procedure that automates the setup
- described above (and below). For additional functionality see the (now obsolete)
- plugin for \sTeX1 \cite{stexls:on,stexls-vscode-plugin:on}.
- \end{sfragment}
+ \end{sfragment}
\begin{sfragment}{Manual Setup for Active Documents and Knowledge Management Services}
Foregoing on the \sTeX IDE, we will need several additional (on top of the minimal
@@ -301,11 +270,15 @@ export MATHHUB="<mhdir>''
\end{itemize}
\end{sfragment}
\end{sfragment}
+\end{sfragment}
- \input{stex-tutorial}
-
+\begin{sfragment}[id=sec.sTeX-IDE]{The \sTeX IDE}
+ \input{stex-ide}
\end{sfragment}
+\input{stex-tutorial}
+
+
\begin{sfragment}{Creating \sTeX Content}
\input{packages/stex-basics}
@@ -453,7 +426,6 @@ export MATHHUB="<mhdir>''
\begin{sfragment}{\sTeX Statements}
\input{packages/stex-statements}
\input{packages/stex-proofs}
-\end{sfragment}
\begin{sfragment}[id=sec.customhighlight]{Highlighting and Presentation Customizations}
@@ -538,7 +510,7 @@ export MATHHUB="<mhdir>''
\begin{latexcode}
\protected\def\symrefemph@uri#1#2{
\pdftooltip{
- \srefsymuri{#2}{\symrefemph{#1}}
+ \symrefemph{#1}
}{
URI:~\detokenize{#2}
}
@@ -548,6 +520,10 @@ export MATHHUB="<mhdir>''
other three commands).
\end{function}
\end{sfragment}
+\end{sfragment}
+\begin{sfragment}[id=sec.references]{Cross References}
+ \input{packages/stex-references}
+\end{sfragment}
\begin{sfragment}{Additional Packages}
\begin{sfragment}{Tikzinput: Treating TIKZ code as images}
@@ -557,7 +533,7 @@ export MATHHUB="<mhdir>''
\input{packages/stex-document-structure}
\end{sfragment}
\begin{sfragment}{Slides and Course Notes}
- \input{packages/stex-slides}
+ \input{packages/stex-notesslides}
\end{sfragment}
\begin{sfragment}{Representing Problems and Solutions}
\input{packages/stex-problem}
@@ -567,7 +543,7 @@ export MATHHUB="<mhdir>''
\end{sfragment}
\end{sfragment}
-\csname if@infulldoc\endcsname\else
+\ifinfulldoc\else
\newpage
\printbibliography
\end{document}
diff --git a/macros/latex/contrib/stex/doc/stex-tutorial.tex b/macros/latex/contrib/stex/doc/stex-tutorial.tex
index dcd4c442e0..7b3b723826 100644
--- a/macros/latex/contrib/stex/doc/stex-tutorial.tex
+++ b/macros/latex/contrib/stex/doc/stex-tutorial.tex
@@ -21,7 +21,7 @@
\symdef{geometricSeries}[name=geometric-series]{\comp{S}}
\begin{sdefinition}[for=geometricSeries]
- The \definame{geometricSeries} is the \symname{?series}
+ The \definame{geometricSeries} is the \symname{series}
\[\defeq{\geometricSeries}{\definiens{
\infinitesum{\svar{n}}{1}{
\realdivide[frac]{1}{
diff --git a/macros/latex/contrib/stex/source/extensions/document-structure.dtx b/macros/latex/contrib/stex/source/extensions/document-structure.dtx
index b05e4d464c..a73e0fd856 100644
--- a/macros/latex/contrib/stex/source/extensions/document-structure.dtx
+++ b/macros/latex/contrib/stex/source/extensions/document-structure.dtx
@@ -9,7 +9,7 @@
%
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -42,14 +42,14 @@
%
% \tableofcontents
%
-% \input{../../doc/packages/stex-document-structure}
-% \fi
-%
-%
% \begin{documentation}\label{pkg:documentstructure:doc}
-%
+% \begin{sfragment}{The User Interface}
+% \input{../../doc/packages/stex-document-structure}
+% \end{sfragment}
% \end{documentation}
%
+% \fi
+%
% \begin{implementation}\label{pkg:documentstructure:impl}
%
% \begin{sfragment}{document-structure.sty Implementation}
@@ -57,7 +57,7 @@
% \begin{macrocode}
%<*package>
%<@@=document_structure>
-\ProvidesExplPackage{document-structure}{2022/05/24}{3.1.0}{Modular Document Structure}
+\ProvidesExplPackage{document-structure}{2022/09/14}{3.2.0}{Modular Document Structure}
\RequirePackage{l3keys2e}
% \end{macrocode}
%
@@ -72,7 +72,7 @@
\keys_define:nn{ document-structure }{
class .str_set_x:N = \c_document_structure_class_str,
- topsect .str_set_x:N = \c_document_structure_topsect_str,,
+ topsect .str_set_x:N = \c_document_structure_topsect_str,
unknown .code:n = {
\PassOptionsToClass{\CurrentOption}{stex}
\PassOptionsToClass{\CurrentOption}{tikzinput}
@@ -98,7 +98,7 @@
\AddToHook{begindocument}{
\ltx@ifpackageloaded{babel}{
\clist_set:Nx \l_tmpa_clist {\bbl@loaded}
- \clist_if_in:NnT \l_tmpa_clist {ngerman}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{ngerman}}{
\makeatletter\input{document-structure-ngerman.ldf}\makeatother
}
}{}
@@ -223,7 +223,6 @@
srccite .tl_set:N = \l_@@_sfragment_srccite_tl,
type .tl_set:N = \l_@@_sfragment_type_tl,
short .tl_set:N = \l_@@_sfragment_short_tl,
- display .tl_set:N = \l_@@_sfragment_display_tl,
intro .tl_set:N = \l_@@_sfragment_intro_tl,
imports .tl_set:N = \l_@@_sfragment_imports_tl,
loadmodules .bool_set:N = \l_@@_sfragment_loadmodules_bool
@@ -236,7 +235,6 @@
\tl_clear:N \l_@@_sfragment_srccite_tl
\tl_clear:N \l_@@_sfragment_type_tl
\tl_clear:N \l_@@_sfragment_short_tl
- \tl_clear:N \l_@@_sfragment_display_tl
\tl_clear:N \l_@@_sfragment_imports_tl
\tl_clear:N \l_@@_sfragment_intro_tl
\bool_set_false:N \l_@@_sfragment_loadmodules_bool
diff --git a/macros/latex/contrib/stex/source/extensions/hwexam.dtx b/macros/latex/contrib/stex/source/extensions/hwexam.dtx
index e166fd0397..de3538d53f 100644
--- a/macros/latex/contrib/stex/source/extensions/hwexam.dtx
+++ b/macros/latex/contrib/stex/source/extensions/hwexam.dtx
@@ -10,7 +10,7 @@
% \iffalse
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -32,8 +32,10 @@
% \url{http://kwarc.info/kohlhase}}
% \maketitle
%
-%\ifinfulldoc\else
-%\begin{abstract}
+% \begin{documentation}
+%\ifinfulldoc\else
+%
+%\begin{abstract}{}
% The |hwexam| package and class allows individual course assignment sheets and compound
% assignment documents using problem files marked up with the |problem| package.
%
@@ -43,12 +45,11 @@
% \end{abstract}
%
% \tableofcontents
-%
+% \begin{sfragment}{The User Intterface}
% \input{../../doc/packages/stex-hwexam}
+% \end{sfragment}
% \fi
%
-% \begin{documentation}
-%
% \end{documentation}
%
%\begin{implementation}
@@ -63,13 +64,14 @@
%
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{hwexam}{2022/05/24}{3.1.0}{homework assignments and exams}
+\ProvidesExplPackage{hwexam}{2022/09/14}{3.2.0}{homework assignments and exams}
\RequirePackage{l3keys2e}
\newif\iftest\testfalse
-\DeclareOption{test}{\testtrue}
+\DeclareOption{test}{\testtrue\PassOptionsToPackage{\CurrentOption}{problem}}
\newif\ifmultiple\multiplefalse
\DeclareOption{multiple}{\multipletrue}
+\DeclareOption{lang}{\PassOptionsToPackage{\CurrentOption}{problem}}
\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{problem}}
\ProcessOptions
% \end{macrocode}
@@ -86,9 +88,8 @@
\newcommand\hwexam@assignment@kw{Assignment}
\newcommand\hwexam@given@kw{Given}
\newcommand\hwexam@due@kw{Due}
-\newcommand\hwexam@testemptypage@kw{This~page~was~intentionally~left~
- blank~for~extra~space}
- \def\hwexam@minutes@kw{minutes}
+\newcommand\hwexam@testemptypage@kw{This~page~was~intentionally~left~blank~for~extra~space}
+\newcommand\hwexam@minutes@kw{minutes}
\newcommand\correction@probs@kw{prob.}
\newcommand\correction@pts@kw{total}
\newcommand\correction@reached@kw{reached}
@@ -104,16 +105,16 @@
\ltx@ifpackageloaded{babel}{
\makeatletter
\clist_set:Nx \l_tmpa_clist {\bbl@loaded}
- \clist_if_in:NnT \l_tmpa_clist {ngerman}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{ngerman}}{
\input{hwexam-ngerman.ldf}
}
- \clist_if_in:NnT \l_tmpa_clist {finnish}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{finnish}}{
\input{hwexam-finnish.ldf}
}
- \clist_if_in:NnT \l_tmpa_clist {french}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{french}}{
\input{hwexam-french.ldf}
}
- \clist_if_in:NnT \l_tmpa_clist {russian}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{russian}}{
\input{hwexam-russian.ldf}
}
\makeatother
@@ -265,7 +266,7 @@
}{
\global\setcounter{assignment}{\int_use:N\l_@@_assign_number_int}
}
- \setcounter{problem}{0}
+ \setcounter{sproblem}{0}
\renewcommand\prob@label[1]{\assignment@number.##1}
\def\current@section@level{\document@hwexamtype}
%\sref@label@id{\document@hwexamtype \thesection}
@@ -416,24 +417,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\testspace}
-% \begin{macrocode}
-\newcommand\testspace[1]{\iftest\vspace*{#1}\fi}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\testnewpage}
-% \begin{macrocode}
-\newcommand\testnewpage{\iftest\newpage\fi}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\testemptypage}
-% \begin{macrocode}
-\newcommand\testemptypage[1][]{\iftest\begin{center}\hwexam@testemptypage@kw\end{center}\vfill\eject\else\fi}
-% \end{macrocode}
-% \end{macro}
-%
% \begin{macro}{\@problem}
% This macro acts on a problem's record in the |*.aux| file. Here we redefine it (it was
% defined to do nothing in |problem.sty|) to generate the correction table.
diff --git a/macros/latex/contrib/stex/source/extensions/notesslides.dtx b/macros/latex/contrib/stex/source/extensions/notesslides.dtx
index ff06827660..e74693c26b 100644
--- a/macros/latex/contrib/stex/source/extensions/notesslides.dtx
+++ b/macros/latex/contrib/stex/source/extensions/notesslides.dtx
@@ -11,9 +11,8 @@
% \iffalse
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
-
\begin{document}
\DocInput{\jobname.dtx}
\end{document}
@@ -54,7 +53,9 @@
% see \href{\basedocurl/manual.pdf}{the \sTeX Manual} or the
% \href{\basedocurl/stex.pdf}{full \sTeX documentation}.
%
-% \input{../../doc/packages/stex-slides}
+% \begin{sfragment}{The User Interface}
+% \input{../../doc/packages/stex-notesslides}
+% \end{sfragment}
% \fi
%
% \begin{documentation}\label{pkg:notesslides:doc}
@@ -76,7 +77,7 @@
% \begin{macrocode}
%<*cls>
%<@@=notesslides>
-\ProvidesExplClass{notesslides}{2022/05/24}{3.1.0}{notesslides Class}
+\ProvidesExplClass{notesslides}{2022/09/14}{3.2.0}{notesslides Class}
\RequirePackage{l3keys2e}
\keys_define:nn{notesslides / cls}{
@@ -121,7 +122,7 @@
% now we do the same for the |notesslides| package.
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{notesslides}{2022/05/24}{3.1.0}{notesslides Package}
+\ProvidesExplPackage{notesslides}{2022/09/14}{3.2.0}{notesslides Package}
\RequirePackage{l3keys2e}
\keys_define:nn{notesslides / pkg}{
@@ -208,35 +209,23 @@
\RequirePackage[bookmarks,bookmarksopen,bookmarksnumbered,breaklinks,hidelinks]{hyperref}
}
\RequirePackage{stex-tikzinput}
-\RequirePackage{etoolbox}
-\RequirePackage{amssymb}
-\RequirePackage{amsmath}
\RequirePackage{comment}
-\RequirePackage{textcomp}
\RequirePackage{url}
\RequirePackage{graphicx}
\RequirePackage{pgf}
+\RequirePackage{bookmark}
% \end{macrocode}
%
% \subsection{Notes and Slides}\label{sec:impl:noteslides}
%
% For the lecture notes cases, we also provide the |\usetheme| macro that would otherwise
-% come from the the |beamer| class. While the latter loads
-% |beamertheme|\meta{theme}{.sty}, the notes version loads
-% |beamernotestheme|\meta{theme}|.sty|.\ednote{MK: This is not ideal, but I am not sure
-% that I want to be able to provide the full theme functionality there.}
+% come from the the |beamer| class.
% \begin{macrocode}
\bool_if:NT \c_@@_notes_bool {
- \renewcommand\usetheme[2][]{\usepackage[#1]{beamernotestheme#2}}
+ \renewcommand\usetheme[2][]{\usepackage[#1]{beamertheme#2}}
}
-
-
\NewDocumentCommand \libusetheme {O{} m} {
- \bool_if:NTF \c_@@_notes_bool {
- \libusepackage[#1]{beamernotestheme#2}
- }{
\libusepackage[#1]{beamertheme#2}
- }
}
% \end{macrocode}
@@ -485,8 +474,6 @@
\includegraphics[#1]{\mhpath\Gin@mhrepos{#2}}
}
-
-
\bool_if:NTF \c_@@_notes_bool {
\setlength{\slidelogoheight}{.4cm}
}{
@@ -506,10 +493,26 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\author}
+% In notes mode, we redefine the |\author| macro so that it does not disregard the
+% optional argument (as \pkg{beamerarticle} does). We want to use it to set the source
+% later.
+% \begin{macrocode}
+\bool_if:NT \c_@@_notes_bool {
+ \def\author{\@dblarg\ns@author}
+ \long\def\ns@author[#1]#2{%
+ \def\c_@@_shortauthor{#1}%
+ \def\@author{#2}
+ }
+}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\setsource}
-% |\source| stores the writer's name. By default it is {\it Michael Kohlhase} since he is the main user and designer of this package. |\setsource{|\meta{name}|}| can change the writer's name.
+% |\source| stores the writer's name. By default it is {\it Michael Kohlhase} since he
+% is the main user and designer of this package. |\setsource{|\meta{name}|}| can change
+% the writer's name.
% \begin{macrocode}
-\def\source{Michael Kohlhase}% customize locally
\newrobustcmd{\setsource}[1]{\def\source{#1}}
% \end{macrocode}
% \end{macro}
@@ -521,7 +524,13 @@
% logo. |\setlicensing[|\meta{url}|]{|\meta{logo name}|}| is used for customization,
% where ||\meta{url}|| is optional.
% \begin{macrocode}
-\def\copyrightnotice{\footnotesize\copyright :\hspace{.3ex}{\source}}
+\def\copyrightnotice{%
+ \footnotesize\copyright :\hspace{.3ex}%
+ \ifcsname source\endcsname\source\else%
+ \ifcsname c_@@_shortauthor\endcsname\c_@@_shortauthor\else%
+ \PackageWarning{notesslides}{Author/Source~undefined~in~copyright~notice}%
+ ?source/author?\fi%
+ \fi}
\newsavebox{\cclogo}
\sbox{\cclogo}{\includegraphics[height=\slidelogoheight]{stex-cc_somerights}}
\newif\ifcchref\cchreffalse
@@ -617,69 +626,6 @@
% \end{macrocode}
% \end{macro}
%
-% \subsection{Colors and Highlighting}\label{sec:impl:highlighting}
-%
-% We first specify sans serif fonts as the default.
-%
-% \begin{macrocode}
-\sffamily
-% \end{macrocode}
-%
-% Now, we set up an infrastructure for highlighting phrases in slides. Note that we use
-% content-oriented macros for highlighting rather than directly using color markup.
-% The first thing to to is to adapt the green so that it is dark enough for most beamers
-% \begin{macrocode}
-\AddToHook{begindocument}{
- \definecolor{green}{rgb}{0,.5,0}
- \definecolor{purple}{cmyk}{.3,1,0,.17}
-}
-% \end{macrocode}
-%
-% We customize the |\defemph|, |\symrefemph|, |\compemph|, and |\titleemph| macros with
-% colors. Furthermore we customize the |\__omtextlec| macro for the appearance of line end
-% comments in |\lec|.
-%
-% \begin{macrocode}
-% \def\STpresent#1{\textcolor{blue}{#1}}
-\def\defemph#1{{\textcolor{magenta}{#1}}}
-\def\symrefemph#1{{\textcolor{cyan}{#1}}}
-\def\compemph#1{{\textcolor{blue}{#1}}}
-\def\titleemph#1{{\textcolor{blue}{#1}}}
-\def\__omtext_lec#1{(\textcolor{green}{#1})}
-% \end{macrocode}
-%
-% I like to use the dangerous bend symbol for warnings, so we provide it here.
-% \begin{macro}{\textwarning}
-% as the macro can be used quite often we put it into a box register, so that it is only
-% loaded once.
-% \begin{macrocode}
-\pgfdeclareimage[width=.8em]{miko@small@dbend}{stex-dangerous-bend}
-\def\smalltextwarning{
- \pgfuseimage{miko@small@dbend}
- \xspace
-}
-\pgfdeclareimage[width=1.2em]{miko@dbend}{stex-dangerous-bend}
-\newrobustcmd\textwarning{
- \raisebox{-.05cm}{\pgfuseimage{miko@dbend}}
- \xspace
-}
-\pgfdeclareimage[width=2.5em]{miko@big@dbend}{stex-dangerous-bend}
-\newrobustcmd\bigtextwarning{
- \raisebox{-.05cm}{\pgfuseimage{miko@big@dbend}}
- \xspace
-}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macrocode}
-\newrobustcmd\putgraphicsat[3]{
- \begin{picture}(0,0)\put(#1){\includegraphics[#2]{#3}}\end{picture}
-}
-\newrobustcmd\putat[2]{
- \begin{picture}(0,0)\put(#1){#2}\end{picture}
-}
-% \end{macrocode}
-%
% \subsection{Sectioning}
%
% If the |sectocframes| option is set, then we make section frames. We first define
@@ -744,33 +690,48 @@
\ifcase\l_document_structure_section_level_int\or
\stepcounter{part}
\def\@@label{{\omdoc@part@kw}~\Roman{part}}
+ \addcontentsline{toc}{part}{\protect\numberline{\thepart}#2}
+ \pdfbookmark[0]{\thepart\ #2}{part.\thepart}
\def\currentsectionlevel{\omdoc@part@kw}
\or
\stepcounter{chapter}
\def\@@label{{\omdoc@chapter@kw}~\arabic{chapter}}
+ \addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}#2}
+ \pdfbookmark[1]{\thechapter\ #2}{chapter.\cs_if_exist:cT{thepart}\thepart.\thechapter}
\def\currentsectionlevel{\omdoc@chapter@kw}
\or
\stepcounter{section}
\def\@@label{\part@prefix\arabic{section}}
+ \addcontentsline{toc}{section}{\protect\numberline{\thesection}#2}
+ \pdfbookmark[2]{\cs_if_exist:cT{thechapter}{\thechapter.}\thesection\ #2}
+ {section.\cs_if_exist:cT{thepart}{\thepart}.\cs_if_exist:cT{thechapter}{\thechapter}.\thesection}
\def\currentsectionlevel{\omdoc@section@kw}
\or
\stepcounter{subsection}
\def\@@label{\part@prefix\arabic{section}.\arabic{subsection}}
+ \addcontentsline{toc}{subsection}{\protect\numberline{\thesubsection}#2}
+ \pdfbookmark[3]{\cs_if_exist:cT{thechapter}{\thechapter.}\thesection.\thesubsection\ #2}
+ {subsection.\cs_if_exist:cT{thepart}{\thepart}.\cs_if_exist:cT{thechapter}{\thechapter}.\thesection.\thesubsection}
\def\currentsectionlevel{\omdoc@subsection@kw}
\or
\stepcounter{subsubsection}
\def\@@label{\part@prefix\arabic{section}.\arabic{subsection}.\arabic{subsubsection}}
+ \addcontentsline{toc}{subsubsection}{\protect\numberline{\thesubsubsection}#2}
+ \pdfbookmark[4]{\cs_if_exist:cT{thechapter}{\thechapter.}\thesection.\thesubsection.\thesubsubsection\ #2}
+ {subsubsection.\cs_if_exist:cT{thepart}{\thepart}.\cs_if_exist:cT{thechapter}{\thechapter}.\thesection.\thesubsection.\thesubsubsection}
\def\currentsectionlevel{\omdoc@subsubsection@kw}
\or
\stepcounter{paragraph}
\def\@@label{\part@prefix\arabic{section}.\arabic{subsection}.\arabic{subsubsection}.\arabic{paragraph}}
+ \addcontentsline{toc}{paragraph}{\protect\numberline{\theparagraph}#2}
+ \pdfbookmark[5]{\cs_if_exist:cT{thechapter}{\thechapter.}\thesection.\thesubsection.\thesubsubsection.\theparagraph\ #2}
+ {paragraph.\cs_if_exist:cT{thepart}{\thepart}.\cs_if_exist:cT{thechapter}{\thechapter}.\thesection.\thesubsection.\thesubsubsection.\theparagraph}
\def\currentsectionlevel{\omdoc@paragraph@kw}
\else
\def\@@label{}
\def\currentsectionlevel{\omdoc@paragraph@kw}
\fi% end ifcase
- \@@label%\sref@label@id\@@label
- \quad #2%
+ \@@label\quad #2%
}%
\vfill%
\end{frame}%
diff --git a/macros/latex/contrib/stex/source/extensions/problem.dtx b/macros/latex/contrib/stex/source/extensions/problem.dtx
index 75a34eaf8e..3fcc3215ef 100644
--- a/macros/latex/contrib/stex/source/extensions/problem.dtx
+++ b/macros/latex/contrib/stex/source/extensions/problem.dtx
@@ -10,7 +10,7 @@
% \iffalse
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\RequirePackage[hints,solutions,notes]{problem}
@@ -32,6 +32,7 @@
% \maketitle
%
% \ifinfulldoc\else
+% \begin{documentation}
% \begin{abstract}
% This is the documentation for the \pkg{problem} package.
% For a more high-level introduction,
@@ -44,12 +45,13 @@
% \end{abstract}
%
% \tableofcontents
-%
-% \input{../../doc/packages/stex-problem}
+% \begin{sfragment}{User Interface}
+% \input{../../doc/packages/stex-problem}
+% \ednote{MK: the input does not work! it includes the commented stuff as well. }
+% \end{sfragment}
+% \end{documentation}
% \fi
%
-% \begin{documentation}
-% \end{documentation}
% \begin{implementation}
%
% \section{The Implementation}\label{sec:implementation}
@@ -63,8 +65,9 @@
% \begin{macrocode}
%<*package>
%<@@=problems>
-\ProvidesExplPackage{problem}{2022/05/24}{3.1.0}{Semantic Markup for Problems}
-\RequirePackage{l3keys2e,stex}
+\ProvidesExplPackage{problem}{2022/09/14}{3.2.0}{Semantic Markup for Problems}
+\RequirePackage{l3keys2e}
+\RequirePackage{amssymb}% for \Box
\keys_define:nn { problem / pkg }{
notes .default:n = { true },
@@ -81,7 +84,11 @@
min .bool_set:N = \c_@@_min_bool,
boxed .default:n = { true },
boxed .bool_set:N = \c_@@_boxed_bool,
- unknown .code:n = {}
+ test .default:n = { true },
+ test .bool_set:N = \c_@@_test_bool,
+ unknown .code:n = {
+ \PassOptionsToPackage{\CurrentOption}{stex}
+ }
}
\newif\ifsolutions
@@ -91,6 +98,7 @@
}{
\solutionsfalse
}
+\RequirePackage{stex}
% \end{macrocode}
%
% Then we make sure that the necessary packages are loaded (in the right versions).
@@ -117,6 +125,8 @@
\def\prob@gnote@kw{Grading}
\def\prob@pt@kw{pt}
\def\prob@min@kw{min}
+\def\prob@correct@kw{Correct}
+\def\prob@wrong@kw{Wrong}
% \end{macrocode}
% \end{macro}
%
@@ -126,16 +136,16 @@
\ltx@ifpackageloaded{babel}{
\makeatletter
\clist_set:Nx \l_tmpa_clist {\bbl@loaded}
- \clist_if_in:NnT \l_tmpa_clist {ngerman}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{ngerman}}{
\input{problem-ngerman.ldf}
}
- \clist_if_in:NnT \l_tmpa_clist {finnish}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{finnish}}{
\input{problem-finnish.ldf}
}
- \clist_if_in:NnT \l_tmpa_clist {french}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{french}}{
\input{problem-french.ldf}
}
- \clist_if_in:NnT \l_tmpa_clist {russian}{
+ \exp_args:NNx \clist_if_in:NnT \l_tmpa_clist {\detokenize{russian}}{
\input{problem-russian.ldf}
}
\makeatother
@@ -178,8 +188,10 @@
% Then we set up a counter for problems.
% \begin{macro}{\numberproblemsin}
% \begin{macrocode}
-\newcounter{problem}[section]
-\newcommand\numberproblemsin[1]{\@addtoreset{problem}{#1}}
+\newcounter{sproblem}[section]
+\newcommand\numberproblemsin[1]{\@addtoreset{sproblem}{#1}}
+\def\theplainsproblem{\arabic{sproblem}}
+\def\thesproblem{\thesection.\theplainsproblem}
% \end{macrocode}
% \end{macro}
%
@@ -200,10 +212,11 @@
\int_if_exist:NTF \l_@@_prob_refnum_int {
\prob@label{\int_use:N \l_@@_prob_refnum_int }
}{
- \prob@label\theproblem
+ \prob@label\theplainsproblem
}
}
}
+\def\sproblemautorefname{\prob@problem@kw}
% \end{macrocode}
% \end{macro}
%
@@ -216,10 +229,10 @@
\tl_if_exist:NTF \l_@@_inclprob_title_tl {
#2 \l_@@_inclprob_title_tl #3
}{
- \tl_if_exist:NTF \l_@@_prob_title_tl {
- #2 \l_@@_prob_title_tl #3
- }{
+ \tl_if_empty:NTF \l_@@_prob_title_tl {
#1
+ }{
+ #2 \l_@@_prob_title_tl #3
}
}
}
@@ -248,7 +261,7 @@
\newenvironment{sproblem}[1][]{
\_@@_prob_args:n{#1}%\sref@target%
\@in@omtexttrue% we are in a statement (for inline definitions)
- \stepcounter{problem}\record@problem
+ \refstepcounter{sproblem}\record@problem
\def\current@section@level{\prob@problem@kw}
\str_if_empty:NT \l_@@_prob_name_str {
@@ -315,7 +328,7 @@
}
}
\stex_ref_new_doc_target:n \sproblemid
- \stex_smsmode_do:
+ \stex_if_smsmode:TF \stex_smsmode_do: \ignorespacesandpars
}{
\__stex_modules_end_module:
\stex_if_smsmode:F{
@@ -408,35 +421,18 @@
% \begin{macrocode}
\keys_define:nn { problem / solution }{
id .str_set_x:N = \l_@@_solution_id_str ,
- for .tl_set:N = \l_@@_solution_for_tl ,
- height .dim_set:N = \l_@@_solution_height_dim ,
- creators .clist_set:N = \l_@@_solution_creators_clist ,
- contributors .clist_set:N = \l_@@_solution_contributors_clist ,
- srccite .tl_set:N = \l_@@_solution_srccite_tl
+ for .str_set_x:N = \l_@@_solution_for_str ,
+ type .str_set_x:N = \l_@@_solution_type_str ,
+ title .tl_set:N = \l_@@_solution_title_tl
}
\cs_new_protected:Nn \_@@_solution_args:n {
\str_clear:N \l_@@_solution_id_str
- \tl_clear:N \l_@@_solution_for_tl
- \tl_clear:N \l_@@_solution_srccite_tl
- \clist_clear:N \l_@@_solution_creators_clist
- \clist_clear:N \l_@@_solution_contributors_clist
- \dim_zero:N \l_@@_solution_height_dim
+ \str_clear:N \l_@@_solution_type_str
+ \str_clear:N \l_@@_solution_for_str
+ \tl_clear:N \l_@@_solution_title_tl
\keys_set:nn { problem / solution }{ #1 }
}
% \end{macrocode}
-% the next step is to define a helper macro that does what is needed to start a solution.
-% \begin{macrocode}
-\newcommand\@startsolution[1][]{
- \_@@_solution_args:n { #1 }
- \@in@omtexttrue% we are in a statement.
- \bool_if:NF \c_@@_boxed_bool { \hrule }
- \smallskip\noindent
- {\textbf\prob@solution@kw :\enspace}
- \begin{small}
- \def\current@section@level{\prob@solution@kw}
- \ignorespacesandpars
-}
-% \end{macrocode}
%
% \begin{macro}{\startsolutions}
% for the |\startsolutions| macro we use the |\specialcomment| macro from the |comment|
@@ -445,14 +441,20 @@
% \begin{macrocode}
\box_new:N \l_@@_solution_box
\newenvironment{solution}[1][]{
+ \_@@_solution_args:n{#1}
\stex_html_backend:TF{
\stex_if_do_html:T{
\begin{stex_annotate_env}{solution}{}
+ \str_if_empty:NF \l_@@_solution_type_str {
+ \par\noindent
+ \stex_annotate_invisible:nnn{typestrings}{\sexampletype}{}
+ }
+ \noindent\textbf{Solution\tl_if_empty:NF\l_@@_solution_title_tl{~(\l_@@_solution_title_tl)}: }~
}
}{
\setbox\l_@@_solution_box\vbox\bgroup
\par\smallskip\hrule\smallskip
- \noindent\textbf{Solution:}~
+ \noindent\textbf{Solution\tl_if_empty:NF\l_@@_solution_title_tl{~(\l_@@_solution_title_tl)}: }~
}
}{
\stex_html_backend:TF{
@@ -463,6 +465,7 @@
\smallskip\hrule
\egroup
\bool_if:NT \c_@@_solutions_bool {
+ \strut\par\noindent
\box\l_@@_solution_box
}
}
@@ -470,6 +473,7 @@
\newcommand\startsolutions{
\bool_set_true:N \c_@@_solutions_bool
+ \solutionstrue
% \specialcomment{solution}{\@startsolution}{
% \bool_if:NF \c_@@_boxed_bool {
% \hrule\medskip
@@ -485,19 +489,10 @@
%
% \begin{macro}{\stopsolutions}
% \begin{macrocode}
-\newcommand\stopsolutions{\bool_set_false:N \c_@@_solutions_bool}%\excludecomment{solution}}
+\newcommand\stopsolutions{\bool_set_false:N \c_@@_solutions_bool \solutionsfalse}%\excludecomment{solution}}
% \end{macrocode}
% \end{macro}
-%
-% so it only remains to start/stop solutions depending on what option was specified.
%
-% \begin{macrocode}
-\ifsolutions
- \startsolutions
-\else
- \stopsolutions
-\fi
-% \end{macrocode}
%
% \begin{environment}{exnote}
% \begin{macrocode}
@@ -550,8 +545,10 @@
}
% \end{macrocode}
% \end{environment}
+%
+% \subsection{Markup for Added Value Services}\label{sec:impl:avs}
%
-% \subsection{Multiple Choice Blocks}\label{sec:impl:mcq}
+% \subsubsection{Multiple Choice Blocks}\label{sec:impl:mcq}
%
% \begin{environment}{mcb}
% \ednote{MK: maybe import something better here from a dedicated MC package}
@@ -579,8 +576,8 @@
T .bool_set:N = \l_@@_mcc_t_bool ,
F .default:n = { false } ,
F .bool_set:N = \l_@@_mcc_f_bool ,
- Ttext .tl_set:N = \l_@@_mcc_Ttext_str ,
- Ftext .tl_set:N = \l_@@_mcc_Ftext_str
+ Ttext .tl_set:N = \l_@@_mcc_Ttext_tl ,
+ Ftext .tl_set:N = \l_@@_mcc_Ftext_tl
}
\cs_new_protected:Nn \l_@@_mcc_args:n {
\str_clear:N \l_@@_mcc_id_str
@@ -596,12 +593,12 @@
%
% \begin{macro}{\mcc}
% \begin{macrocode}
-\def\mccTrueText{\textbf{(true)~}}
-\def\mccFalseText{\textbf{(false)~}}
+\def\mccTrueText{\textbf{\prob@correct@kw!~}}
+\def\mccFalseText{\textbf{\prob@wrong@kw!~}}
\newcommand\mcc[2][]{
\l_@@_mcc_args:n{ #1 }
\item[$\Box$] #2
- \ifsolutions
+ \bool_if:NT \c_@@_solutions_bool{
\\
\bool_if:NT \l_@@_mcc_t_bool {
\tl_if_empty:NTF\l_@@_mcc_Ttext_tl\mccTrueText\l_@@_mcc_Ttext_tl
@@ -610,13 +607,27 @@
\tl_if_empty:NTF\l_@@_mcc_Ttext_tl\mccFalseText\l_@@_mcc_Ftext_tl
}
\tl_if_empty:NF \l_@@_mcc_feedback_tl {
- \emph{(\l_@@_mcc_feedback_tl)}
+ \emph{\l_@@_mcc_feedback_tl}
}
- \fi
+ }
} %solutions
% \end{macrocode}
% \end{macro}
+%
+% \subsubsection{Filling in Concrete Solutions}
%
+% \begin{macro}{\includeproblem}
+% This is embarrasingly simple, but can grow over time.
+% \begin{macrocode}
+\newcommand\fillinsol[2][]{%
+ \def\@test{#1}
+ \quad%
+ \ifsolutions\textcolor{red}{#1!}\else%
+ \fbox{\ifx\@test\@empty\phantom{\huge{21}}\else\hspace{#1}\fi}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
% \subsection{Including Problems}\label{sec:impl:includeproblem}
%
% \begin{macro}{\includeproblem}
@@ -780,15 +791,45 @@
%</package>
% \end{macrocode}
% \end{macro}
+%
+% \subsection{Testing and Spacing}
+%
+% \begin{macro}{\testspace}
+% \begin{macrocode}
+\newcommand\testspace[1]{\bool_if:NT \c_@@_boxed_bool {\vspace*{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\testnewpage}
+% \begin{macrocode}
+\newcommand\testnewpage{\bool_if:NT \c_@@_boxed_bool {\newpage}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\testemptypage}
+% \begin{macrocode}
+\newcommand\testemptypage[1][]{%
+\bool_if:NT \c_@@_boxed_bool {\begin{center}\hwexam@testemptypage@kw\end{center}\vfill\eject\else}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\test*space}
+% \begin{macrocode}
+\newcommand\testsmallspace{\testspace{1cm}}
+\newcommand\testmedspace{\testspace{2cm}}
+\newcommand\testbigspace{\testspace{3cm}}
+% \end{macrocode}
+% \end{macro}
+%
% \end{implementation}
% \ifinfulldoc\else\printbibliography\fi
\endinput
-% LocalWords: GPL structuresharing STR dtx pts keyval xcomment CPERL DefKeyVal iffalse
%%% Local Variables:
%%% mode: doctex
%%% TeX-master: t
%%% End:
% \fi
+% LocalWords: GPL structuresharing STR dtx pts keyval xcomment CPERL DefKeyVal iffalse
% LocalWords: RequirePackage Semiverbatim DefEnvironment OptionalKeyVals soln texttt baz
% LocalWords: exnote DefConstructor inclprob NeedsTeXFormat omd.sty textbackslash exfig
% LocalWords: stopsolution fileversion filedate maketitle setcounter tocdepth newpage
diff --git a/macros/latex/contrib/stex/source/extensions/tikzinput.dtx b/macros/latex/contrib/stex/source/extensions/tikzinput.dtx
index fb7bbf76c9..acb6e4bc94 100644
--- a/macros/latex/contrib/stex/source/extensions/tikzinput.dtx
+++ b/macros/latex/contrib/stex/source/extensions/tikzinput.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -67,7 +67,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{tikzinput}{2022/05/24}{3.1.0}{tikzinput package}
+\ProvidesExplPackage{tikzinput}{2022/09/14}{3.2.0}{tikzinput package}
\RequirePackage{l3keys2e}
\keys_define:nn { tikzinput } {
@@ -130,7 +130,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{stex-tikzinput}{2022/05/24}{3.1.0}{stex-tikzinput}
+\ProvidesExplPackage{stex-tikzinput}{2022/09/14}{3.2.0}{stex-tikzinput}
\RequirePackage{stex}
\RequirePackage{tikzinput}
@@ -207,5 +207,14 @@
%
% \PrintIndex
-% LocalWords: bibfolder jobname.dtx tikzinput.dtx usetikzlibrary Gin@ewidth Gin@eheight
-% LocalWords: resizebox ctikzinput mhtikzinput Gin@mhrepos mhpath
+% \endinput
+% Local Variables:
+% mode: doctex
+% TeX-master: t
+% End:
+
+% LocalWords: libfolder jobname.dtx tikzinput.dtx usetikzlibrary Gin@ewidth Gin@eheight
+% LocalWords: ctikzinput mhpath pgfkeys@spdef pgfutil@empty 1@atcode catcode l_tmpa_str
+% LocalWords: pgfutil@InputIfFileExists libusetikzlibrary msg_error:nnn notinarchive
+% LocalWords: seq_clear:N seq_set_eq:NN l_tmpa_seq c_stex_mathhub_seq seq_set_split:NnV
+% LocalWords: l_tmpb_seq seq_if_empty_p:N tikzlibrary seq_put_right:No seq_pop_left:NN
diff --git a/macros/latex/contrib/stex/source/stex/stex-basics.dtx b/macros/latex/contrib/stex/source/stex/stex-basics.dtx
index d58f56a49c..0387e16439 100644
--- a/macros/latex/contrib/stex/source/stex/stex-basics.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-basics.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -150,7 +150,7 @@
%%%%%%%%%%%%% basics.dtx %%%%%%%%%%%%%
\RequirePackage{expl3,l3keys2e}
-\ProvidesExplClass{stex}{2022/05/24}{3.1.0}{sTeX document class}
+\ProvidesExplClass{stex}{2022/09/14}{3.2.0}{sTeX document class}
\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{stex}}
\ProcessOptions
@@ -198,14 +198,14 @@
%%%%%%%%%%%%% basics.dtx %%%%%%%%%%%%%
\RequirePackage{expl3,l3keys2e,ltxcmds}
-\ProvidesExplPackage{stex}{2022/05/24}{3.1.0}{sTeX package}
+\ProvidesExplPackage{stex}{2022/09/14}{3.2.0}{sTeX package}
\bool_if_exist:NF \c_stex_document_class_bool {
\bool_set_false:N \c_stex_document_class_bool
\RequirePackage{standalone}
}
-\message{^^J*~This~is~sTeX~version~3.1.0~*^^J}
+\message{^^J*~This~is~sTeX~version~3.2.0~*^^J}
%\RequirePackage{morewrites}
%\RequirePackage{amsmath}
@@ -287,7 +287,7 @@
\msg_redirect_module:nnn{ stex }{ none }{ term }
}{
\clist_map_inline:Nn \c_stex_debug_clist {
- \msg_redirect_name:nnn{ stex }{ debug / ##1 }{ term }
+ \msg_redirect_name:nnn{ stex }{ debug / #1 }{ term }
}
}
@@ -367,14 +367,26 @@
% the \latexml-implementations resort to perl bindings.
%
% \begin{macrocode}
+\ifcsname if@rustex\endcsname\else
+ \expandafter\newif\csname if@rustex\endcsname
+ \@rustexfalse
+\fi
+\ifcsname if@latexml\endcsname\else
+ \expandafter\newif\csname if@latexml\endcsname
+ \@latexmlfalse
+\fi
\tl_if_exist:NF\stex@backend{
- \ifcsname if@rustex\endcsname
+ \if@rustex
\def\stex@backend{rustex}
\else
- \ifcsname if@latexml\endcsname
+ \if@latexml
\def\stex@backend{latexml}
\else
- \def\stex@backend{pdflatex}
+ \cs_if_exist:NTF\HCode{
+ \def\stex@backend{tex4ht}
+ }{
+ \def\stex@backend{pdflatex}
+ }
\fi
\fi
}
@@ -482,6 +494,7 @@
}
}
}
+
% \end{macrocode}
%
% \subsection{Persistence}
diff --git a/macros/latex/contrib/stex/source/stex/stex-features.dtx b/macros/latex/contrib/stex/source/stex/stex-features.dtx
index 3a5c8064b7..d770b76e42 100644
--- a/macros/latex/contrib/stex/source/stex/stex-features.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-features.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -385,6 +385,9 @@
{ \l_stex_import_ns_str } { \l_stex_import_archive_str }
{ \l_stex_import_path_str } { \l_stex_import_name_str }
}
+ \exp_args:Nx \stex_add_import_to_current_module:n{
+ \l_stex_import_ns_str ? \l_stex_import_name_str
+ }
\seq_map_inline:Nn \l_@@_copymodule_modules_seq {
\seq_map_inline:cn {c_stex_module_##1_constants}{
@@ -594,8 +597,12 @@
\str_clear:N \l_@@_name_str
\keys_set:nn { stex / features / structure } { #1 }
}
-
\NewDocumentEnvironment{mathstructure}{m O{}}{
+ \begin{mathstructure_inner}{#1}[#2]
+ \stex_smsmode_do:
+ \ignorespacesandpars
+ }{\end{mathstructure_inner}}
+\NewDocumentEnvironment{mathstructure_inner}{m O{}}{
\_@@_structure_args:n { #2 }
\str_if_empty:NT \l_@@_name_str {
\str_set:Nx \l_@@_name_str { #1 }
@@ -617,7 +624,6 @@
\exp_args:Nnnx
\begin{structural_feature_module}{ structure }
{ \l_@@_name_str }{}
- \stex_smsmode_do:
}{
\end{structural_feature_module}
\_stex_reset_up_to_module:n \l_stex_last_feature_str
@@ -696,7 +702,8 @@
\seq_map_inline:Nn \l_stex_all_modules_seq {
\prop_if_exist:cT {c_stex_module_##1_structures} {
\prop_map_inline:cn {c_stex_module_##1_structures} {
- \str_if_eq:eeT { \l_tmpa_str }{ \str_range:nnn {##1?####1}{-\l_tmpa_int}{-1}}{
+ \exp_args:No \str_if_eq:nnT \l_tmpa_str {####1}{
+ %\str_if_eq:eeT { \l_tmpa_str }{ \str_range:nnn {##1?####1}{-\l_tmpa_int}{-1}}{
\prop_map_break:n{\seq_map_break:n{
\tl_set:Nn \l_tmpa_tl {
\str_set:Nn \l_stex_get_structure_str {##1?####1}
@@ -716,6 +723,12 @@
% \begin{macro}{\instantiate}
% \begin{macrocode}
+\NewDocumentEnvironment{usestructure}{m}{
+ \stex_get_structure:n {#1}
+ \exp_args:Nnx \stex_debug:nn{features}{using~structure:~\l_stex_get_structure_module_str}
+ \exp_args:No \stex_activate_module:n \l_stex_get_structure_module_str
+}{}
+
\keys_define:nn { stex / instantiate } {
name .str_set_x:N = \l_@@_name_str
}
@@ -724,6 +737,37 @@
\keys_set:nn { stex / instantiate } { #1 }
}
+\NewDocumentEnvironment{extstructure}{m m O{}}{
+ \begin{mathstructure_inner}{#1}[#3]
+ \seq_set_split:Nnn\_@@_extstructure_imports_seq,{#2}
+ \seq_map_inline:Nn\_@@_extstructure_imports_seq {
+ \stex_get_structure:n {##1}
+ \exp_args:Nnx \stex_debug:nn{features}{importing~structure:~\l_stex_get_structure_module_str{}~into~\l_stex_current_module_str}
+ \exp_args:No \stex_activate_module:n \l_stex_get_structure_module_str
+ \stex_if_smsmode:F {
+ \stex_annotate_invisible:nnn
+ {import} {\l_stex_get_structure_module_str} {}
+ }
+ \exp_args:Nx \stex_add_import_to_current_module:n {
+ \l_stex_get_structure_module_str
+ }
+ \exp_args:Nx \stex_add_to_current_module:n {
+ \exp_args:No \stex_activate_module:n \l_stex_get_structure_module_str
+ }
+ }
+ \stex_smsmode_do:
+ \ignorespacesandpars
+}{
+ \end{mathstructure_inner}
+}
+
+\NewDocumentEnvironment{extstructure*}{m m O{}}{
+ % TODO
+ \begin{extstructure}{#1}{#2}[#3]
+}{
+ \end{extstructure}
+}
+
\NewDocumentCommand \instantiate {m O{} m m O{}}{
\begingroup
\stex_get_structure:n {#3}
@@ -775,7 +819,8 @@
name = \l_tmpa_str ,
args = \prop_item:cn {l_stex_symdecl_##1_prop}{args} ,
arity = \prop_item:cn {l_stex_symdecl_##1_prop}{arity} ,
- assocs = \prop_item:cn {l_stex_symdecl_##1_prop}{assocs}
+ assocs = \prop_item:cn {l_stex_symdecl_##1_prop}{assocs} ,
+ argnames = {\prop_item:cn {l_stex_symdecl_##1_prop}{argnames}}
}
\seq_clear:c {l_stex_symdecl_\l_stex_current_module_str?\l_tmpa_str _notations}
}
@@ -872,7 +917,7 @@
}
\cs_new_protected:Nn \_@@_symbolorvar_from_string:n {
- \prop_if_exist:cTF {l_stex_variable_#1 _prop}{
+ \prop_if_exist:cTF {l_stex_symdecl_var://#1 _prop}{
\bool_set_true:N \l_stex_symbol_or_var_bool
\str_set:Nn \l_stex_get_symbol_uri_str { #1 }
}{
@@ -935,12 +980,12 @@
\bool_if:NTF \l_stex_symbol_or_var_bool {
\exp_args:Nxx \str_if_eq:nnF
{\prop_item:cn{l_stex_symdecl_\l_@@_dom_str _prop}{args}}
- {\prop_item:cn{l_stex_variable_\l_stex_get_symbol_uri_str _prop}{args}}{
+ {\prop_item:cn{l_stex_symdecl_var://\l_stex_get_symbol_uri_str _prop}{args}}{
\msg_error:nnxxxx{stex}{error/incompatible}
{\l_@@_dom_str}
{\prop_item:cn{l_stex_symdecl_\l_@@_dom_str _prop}{args}}
{\l_stex_get_symbol_uri_str}
- {\prop_item:cn{l_stex_variable_\l_stex_get_symbol_uri_str _prop}{args}}
+ {\prop_item:cn{l_stex_symdecl_var://\l_stex_get_symbol_uri_str _prop}{args}}
}
\prop_put:Nxx \l_tmpa_prop {\seq_item:Nn \l_tmpb_seq 1} {\stex_invoke_variable:n {\l_stex_get_symbol_uri_str}}
}{
@@ -974,11 +1019,12 @@
}
\exp_args:NNx \tl_gput_right:Nn \g_@@_aftergroup_tl {
- \prop_set_from_keyval:cn { l_stex_variable_ \l_tmpa_str _prop}{
+ \prop_set_from_keyval:cn { l_stex_symdecl_ var://\l_tmpa_str _prop}{
name = \l_tmpa_str ,
args = \prop_item:cn {l_stex_symdecl_##1_prop}{args} ,
arity = \prop_item:cn {l_stex_symdecl_##1_prop}{arity} ,
- assocs = \prop_item:cn {l_stex_symdecl_##1_prop}{assocs}
+ assocs = \prop_item:cn {l_stex_symdecl_##1_prop}{assocs} ,
+ argnames = {\prop_item:cn {l_stex_symdecl_##1_prop}{argnames}} ,
}
\cs_set_eq:cc {stex_var_notation_\l_tmpa_str _cs}
{g_@@_tmpa_\l_tmpa_str _cs}
diff --git a/macros/latex/contrib/stex/source/stex/stex-inheritance.dtx b/macros/latex/contrib/stex/source/stex/stex-inheritance.dtx
index cde0cfa5c3..109f7af5c9 100644
--- a/macros/latex/contrib/stex/source/stex/stex-inheritance.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-inheritance.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -240,7 +240,9 @@
sexample,
sassertion,
sparagraph,
- mathstructure
+ mathstructure,
+ extstructure,
+ extstructure*
}
}
% \end{macrocode}
@@ -643,14 +645,11 @@
\stex_debug:nn{modules}{Importing~module:~
\l_stex_import_ns_str ? \l_stex_import_name_str
}
- \stex_import_require_module:nnnn
- { \l_stex_import_ns_str } { \l_stex_import_archive_str }
- { \l_stex_import_path_str } { \l_stex_import_name_str }
\stex_if_smsmode:F {
\stex_annotate_invisible:nnn
{import} {\l_stex_import_ns_str ? \l_stex_import_name_str} {}
}
- \exp_args:Nx \stex_add_to_current_module:n {
+ \stex_execute_in_module:x {
\stex_import_require_module:nnnn
{ \l_stex_import_ns_str } { \l_stex_import_archive_str }
{ \l_stex_import_path_str } { \l_stex_import_name_str }
diff --git a/macros/latex/contrib/stex/source/stex/stex-mathhub.dtx b/macros/latex/contrib/stex/source/stex/stex-mathhub.dtx
index 89da6af2fb..e7749dad93 100644
--- a/macros/latex/contrib/stex/source/stex/stex-mathhub.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-mathhub.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -245,6 +245,7 @@
% \begin{macro}{\stex_path_from_string:Nn}
% \begin{macrocode}
\cs_new_protected:Nn \stex_path_from_string:Nn {
+ \stex_debug:nn{files}{#2}
\str_set:Nx \l_tmpa_str { #2 }
\str_if_empty:NTF \l_tmpa_str {
\seq_clear:N #1
@@ -260,6 +261,7 @@
}
\stex_path_canonicalize:N #1
}
+ \stex_debug:nn{files}{Yields: \stex_path_to_string:N#1}
}
% \end{macrocode}
@@ -438,6 +440,7 @@
}
\seq_gset_eq:NN\g_stex_currentfile_seq\g_stex_currentfile_seq
\exp_args:NNo\seq_gpush:Nn\g_@@_stack\g_stex_currentfile_seq
+ \stex_get_document_uri:
}
% \end{macrocode}
% \end{macro}
@@ -454,6 +457,7 @@
\seq_get:NN\g_@@_stack\l_tmpa_seq
\seq_gset_eq:NN\g_stex_currentfile_seq\l_tmpa_seq
}
+ \stex_get_document_uri:
}
% \end{macrocode}
% \end{macro}
@@ -462,7 +466,11 @@
%
% \begin{macrocode}
\AddToHook{file/before}{
- \stex_filestack_push:n{\CurrentFilePath/\CurrentFile}
+ \tl_if_empty:NTF\CurrentFilePath{
+ \stex_filestack_push:n{\CurrentFile}
+ }{
+ \stex_filestack_push:n{\CurrentFilePath/\CurrentFile}
+ }
}
\AddToHook{file/after}{
\stex_filestack_pop:
@@ -483,6 +491,7 @@
\begingroup\escapechar=-1\catcode`\\=12
\exp_args:Nx\stex_kpsewhich:n{-expand-var~\c_percent_str MATHHUB\c_percent_str}
\exp_args:NNx\str_replace_all:Nnn\l_stex_kpsewhich_return_str{\c_backslash_str}/
+ \exp_args:NNx\str_if_eq:onT\l_stex_kpsewhich_return_str{\c_percent_str MATHHUB\c_percent_str}{\str_clear:N\l_stex_kpsewhich_return_str}
\exp_args:Nnx\use:nn{\endgroup}{\str_set:Nn\exp_not:N\l_stex_kpsewhich_return_str{\l_stex_kpsewhich_return_str}}
}{
\stex_kpsewhich:n{-var-value~MATHHUB}
@@ -498,15 +507,15 @@
}{
\stex_kpsewhich:n{-var-value~HOME}
}
- \ior_open:NnT \l_tmpa_ior{\l_stex_kpsewhich_return_str / .stex / mathhub.path}{
+ \ior_open:NnT \g_tmpa_ior{\l_stex_kpsewhich_return_str / .stex / mathhub.path}{
\begingroup\escapechar=-1\catcode`\\=12
- \ior_str_get:NN \l_tmpa_ior \l_tmpa_str
+ \ior_str_get:NN \g_tmpa_ior \l_tmpa_str
\sys_if_platform_windows:T{
\exp_args:NNx\str_replace_all:Nnn\l_tmpa_str{\c_backslash_str}/
}
\str_gset_eq:NN \c_stex_mathhub_str\l_tmpa_str
\endgroup
- \ior_close:N \l_tmpa_ior
+ \ior_close:N \g_tmpa_ior
}
}
\str_if_empty:NTF\c_stex_mathhub_str{
diff --git a/macros/latex/contrib/stex/source/stex/stex-metatheory.dtx b/macros/latex/contrib/stex/source/stex/stex-metatheory.dtx
index 8570531d17..5a9644ac5e 100644
--- a/macros/latex/contrib/stex/source/stex/stex-metatheory.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-metatheory.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
diff --git a/macros/latex/contrib/stex/source/stex/stex-modules.dtx b/macros/latex/contrib/stex/source/stex/stex-modules.dtx
index 5430bd153a..e76e1ead89 100644
--- a/macros/latex/contrib/stex/source/stex/stex-modules.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-modules.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -857,6 +857,20 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{environment}{mmtinterface}
+% \begin{macrocode}
+\NewDocumentEnvironment { mmtinterface } { O{} m m } {
+ \begin{smodule}[#1]{#3}
+ \str_set:Nx \l_stex_module_mmtfor_str {#2}
+ \MMTinclude{#2}
+ \stex_reactivate_macro:N \mmtdecl
+ \stex_reactivate_macro:N \mmtdef
+}{
+ \end{smodule}
+}
+% \end{macrocode}
+% \end{environment}
+%
% \begin{macrocode}
%</package>
% \end{macrocode}
diff --git a/macros/latex/contrib/stex/source/stex/stex-others.dtx b/macros/latex/contrib/stex/source/stex/stex-others.dtx
index e22aa88590..dd07d0e65c 100644
--- a/macros/latex/contrib/stex/source/stex/stex-others.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-others.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -97,6 +97,8 @@
\exp_args:Nx \stex_set_current_repository:n { \l_tmpa_str }
}
}
+
+\stex_get_document_uri:
% \end{macrocode}
%
%
diff --git a/macros/latex/contrib/stex/source/stex/stex-proofs.dtx b/macros/latex/contrib/stex/source/stex/stex-proofs.dtx
index c2cdb3b54e..7c48dc2f89 100644
--- a/macros/latex/contrib/stex/source/stex/stex-proofs.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-proofs.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -87,7 +87,9 @@
title .tl_set:N = \spftitle,
continues .tl_set:N = \l_@@_spf_continues_tl,
functions .tl_set:N = \l_@@_spf_functions_tl,
- method .tl_set:N = \l_@@_spf_method_tl
+ term .tl_set:N = \l_@@_spf_term_tl,
+ method .tl_set:N = \l_@@_spf_method_tl,
+ hide .bool_set:N = \l_@@_spf_hide_bool
}
\cs_new_protected:Nn \_@@_spf_args:n {
\str_clear:N \spfid
@@ -97,11 +99,13 @@
\str_clear:N \spftype
\tl_clear:N \spftitle
\tl_clear:N \l_@@_spf_continues_tl
+ \tl_clear:N \l_@@_spf_term_tl
\tl_clear:N \l_@@_spf_functions_tl
\tl_clear:N \l_@@_spf_method_tl
- \bool_set_false:N \l_@@_inc_counter_bool
+ \bool_set_false:N \l_@@_spf_hide_bool
\keys_set:nn { stex / spf }{ #1 }
}
+\bool_set_true:N \l_@@_inc_counter_bool
% \end{macrocode}
%
% \begin{macro}{\c_@@_flow_str}
@@ -275,168 +279,145 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{spfeq}
-% This is very similar to |\spfsketch|, but uses a computation array\ednote{This should
-% really be more like a tabular with an ensuremath in it. or invoke text on the last
-% column}\ednote{document above}
+% \begin{macro}{\_@@_maybe_comment:,\_@@_maybe_comment_end:,\_@@_start_comment:}
% \begin{macrocode}
-\newenvironment{spfeq}[2][]{
- \_@@_spf_args:n{#1}
- \let \premise \stex_proof_premise:
- \stex_if_smsmode:TF {
- \str_if_empty:NF \spfid {
- \stex_ref_new_doc_target:n \spfid
- }
- }{
- \seq_clear:N \l_tmpa_seq
- \clist_map_inline:Nn \l_@@_spf_for_clist {
- \tl_if_empty:nF{ ##1 }{
- \stex_get_symbol:n { ##1 }
- \exp_args:NNo \seq_put_right:Nn \l_tmpa_seq {
- \l_stex_get_symbol_uri_str
- }
- }
- }
- \exp_args:Nnnx
- \begin{stex_annotate_env}{spfeq}{\seq_use:Nn \l_tmpa_seq {,}}
- \str_if_empty:NF \spftype {
- \stex_annotate_invisible:nnn{type}{\spftype}{}
- }
+\bool_set_false:N \l_@@_in_spfblock_bool
- \clist_set:No \l_tmpa_clist \spftype
- \tl_clear:N \l_tmpa_tl
- \clist_map_inline:Nn \l_tmpa_clist {
- \tl_if_exist:cT {_@@_spfeq_##1_start:}{
- \tl_set:Nn \l_tmpa_tl {\use:c{_@@_spfeq_##1_start:}}
- }
- \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
- \tl_set:Nn \l_tmpa_tl {\use:n{}}
- }
- }
- \tl_if_empty:NTF \l_tmpa_tl {
- \_@@_spfeq_start:
- }{
- \l_tmpa_tl
- }{~#2}
- \str_if_empty:NF \spfid {
- \stex_ref_new_doc_target:n \spfid
- }
- \begin{displaymath}\begin{array}{rcll}
- }
- \stex_smsmode_do:
-}{
- \stex_if_smsmode:F {
- \end{array}\end{displaymath}
- \clist_set:No \l_tmpa_clist \spftype
- \tl_clear:N \l_tmpa_tl
- \clist_map_inline:Nn \l_tmpa_clist {
- \tl_if_exist:cT {_@@_spfeq_##1_end:}{
- \tl_set:Nn \l_tmpa_tl {\use:c{_@@_spfeq_##1_end:}}
- }
- }
- \tl_if_empty:NTF \l_tmpa_tl {
- \_@@_spfeq_end:
- }{
- \l_tmpa_tl
- }
- \end{stex_annotate_env}
+\cs_new_protected:Nn \_@@_maybe_comment: {
+ \bool_if:NF \l_@@_in_spfblock_bool {
+ \par \setbox \l_tmpa_box \vbox \bgroup \everypar{\_@@_start_comment:}
}
}
-
-\cs_new_protected:Nn \_@@_spfeq_start: {
- \titleemph{
- \tl_if_empty:NTF \spftitle {
- \spf@proof@kw
- }{
- \spftitle
- }
- }:
+\cs_new_protected:Nn \_@@_maybe_comment_end: {
+ \bool_if:NF \l_@@_in_spfblock_bool { \egroup }
}
-\cs_new_protected:Nn \_@@_spfeq_end: {\sproofend}
-
-\newcommand\stexpatchspfeq[3][] {
- \str_set:Nx \l_tmpa_str{ #1 }
- \str_if_empty:NTF \l_tmpa_str {
- \tl_set:Nn \_@@_spfeq_start: { #2 }
- \tl_set:Nn \_@@_spfeq_end: { #3 }
- }{
- \exp_after:wN \tl_set:Nn \csname _@@_spfeq_#1_start:\endcsname{ #2 }
- \exp_after:wN \tl_set:Nn \csname _@@_spfeq_#1_end:\endcsname{ #3 }
- }
+\cs_new_protected:Nn \_@@_start_comment: {
+ \csname @ @ par\endcsname\egroup\item[]\bgroup\stexcommentfont
}
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\stexcommentfont}
+% \begin{macrocode}
+\cs_new_protected:Npn \stexcommentfont {
+ \small\itshape
+}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{environment}{sproof}
% In this environment, we initialize the proof depth counter |\count10| to 10, and set
% up the description environment that will take the proof steps. At the end of the
% proof, we position the proof end into the last line.
% \begin{macrocode}
-\newenvironment{sproof}[2][]{
- \let \premise \stex_proof_premise:
+\cs_new_protected:Nn \_@@_start_env:nnn {
+ \seq_clear:N \l_tmpa_seq
+ \clist_map_inline:Nn \l_@@_spf_for_clist {
+ \tl_if_empty:nF{ ##1 }{
+ \stex_get_symbol:n { ##1 }
+ \exp_args:NNo \seq_put_right:Nn \l_tmpa_seq {
+ \l_stex_get_symbol_uri_str
+ }
+ }
+ }
+ \exp_args:Nnnx
+ \begin{stex_annotate_env}{#1}{\seq_use:Nn \l_tmpa_seq {,}}
+ \str_if_empty:NF \spftype {
+ \stex_annotate_invisible:nnn{type}{\spftype}{}
+ }
+ #3 {~\stex_annotate:nnn{spftitle}{}{#2}}
+ \str_if_empty:NF \spfid {
+ \stex_ref_new_doc_target:n \spfid
+ }
+ \begin{stex_annotate_env}{spfbody}{\bool_if:NTF \l_@@_spf_hide_bool {false}{true}}
+ \bool_if:NT \l_@@_spf_hide_bool{
+ \stex_html_backend:F{\setbox\l_tmpa_box\vbox\bgroup}
+ }
+ \begin{list}{}{
+ \setlength\topsep{0pt}
+ \setlength\parsep{0pt}
+ \setlength\rightmargin{0pt}
+
+ }\_@@_maybe_comment:
+}
+\cs_new_protected:Nn \_@@_end_env:n {
+ \stex_if_smsmode:F{
+ \_@@_maybe_comment_end:
+ \end{list}
+ \bool_if:NT \l_@@_spf_hide_bool{
+ \stex_html_backend:F{\egroup}
+ }
+ \clist_set:No \l_tmpa_clist \spftype
+ #1
+ \end{stex_annotate_env}
+ \end{stex_annotate_env}
+ }
+}
+\NewDocumentEnvironment{sproof}{s O{} m}{
\intarray_gzero:N \l_@@_counter_intarray
\intarray_gset:Nnn \l_@@_counter_intarray 1 1
- \_@@_spf_args:n{#1}
+ \stex_reactivate_macro:N \yield
+ \stex_reactivate_macro:N \eqstep
+ \stex_reactivate_macro:N \assumption
+ \stex_reactivate_macro:N \conclude
+ \stex_reactivate_macro:N \spfstep
+ \_@@_spf_args:n{#2}
\stex_if_smsmode:TF {
\str_if_empty:NF \spfid {
\stex_ref_new_doc_target:n \spfid
}
}{
- \seq_clear:N \l_tmpa_seq
- \clist_map_inline:Nn \l_@@_spf_for_clist {
- \tl_if_empty:nF{ ##1 }{
- \stex_get_symbol:n { ##1 }
- \exp_args:NNo \seq_put_right:Nn \l_tmpa_seq {
- \l_stex_get_symbol_uri_str
+ \_@@_start_env:nnn{sproof}{#3}{
+ \clist_set:No \l_tmpa_clist \spftype
+ \tl_clear:N \l_tmpa_tl
+ \clist_map_inline:Nn \l_tmpa_clist {
+ \tl_if_exist:cT {_@@_sproof_##1_start:}{
+ \tl_set:Nn \l_tmpa_tl {\use:c{_@@_sproof_##1_start:}}
+ }
+ \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
+ \tl_set:Nn \l_tmpa_tl {\use:n{}}
}
}
- }
- \exp_args:Nnnx
- \begin{stex_annotate_env}{sproof}{\seq_use:Nn \l_tmpa_seq {,}}
- \str_if_empty:NF \spftype {
- \stex_annotate_invisible:nnn{type}{\spftype}{}
- }
-
- \clist_set:No \l_tmpa_clist \spftype
- \tl_clear:N \l_tmpa_tl
- \clist_map_inline:Nn \l_tmpa_clist {
- \tl_if_exist:cT {_@@_sproof_##1_start:}{
- \tl_set:Nn \l_tmpa_tl {\use:c{_@@_sproof_##1_start:}}
- }
- \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
- \tl_set:Nn \l_tmpa_tl {\use:n{}}
+ \tl_if_empty:NTF \l_tmpa_tl {
+ \_@@_sproof_start:
+ }{
+ \l_tmpa_tl
}
}
- \tl_if_empty:NTF \l_tmpa_tl {
- \_@@_sproof_start:
- }{
- \l_tmpa_tl
- }{~#2}
+ }
+ \stex_smsmode_do:
+}{\_@@_end_env:n{
+ \tl_clear:N \l_tmpa_tl
+ \clist_map_inline:Nn \l_tmpa_clist {
+ \tl_if_exist:cT {_@@_sproof_##1_end:}{
+ \tl_set:Nn \l_tmpa_tl {\use:c{_@@_sproof_##1_end:}}
+ }
+ }
+ \tl_if_empty:NTF \l_tmpa_tl {
+ \_@@_sproof_end:
+ }{
+ \l_tmpa_tl
+ }
+}}
+\NewDocumentEnvironment{subproof}{s O{} m}{
+ \_@@_spf_args:n{#2}
+ \stex_if_smsmode:TF {
\str_if_empty:NF \spfid {
\stex_ref_new_doc_target:n \spfid
}
- \begin{description}
+ }{
+ \_@@_start_env:nnn{subproof}{\item[\sproofnumber]\ignorespacesandpars #3}{}
}
+ \_@@_add_counter:
\stex_smsmode_do:
-}{
- \stex_if_smsmode:F{
- \end{description}
- \clist_set:No \l_tmpa_clist \spftype
- \tl_clear:N \l_tmpa_tl
- \clist_map_inline:Nn \l_tmpa_clist {
- \tl_if_exist:cT {_@@_sproof_##1_end:}{
- \tl_set:Nn \l_tmpa_tl {\use:c{_@@_sproof_##1_end:}}
- }
- }
- \tl_if_empty:NTF \l_tmpa_tl {
- \_@@_sproof_end:
- }{
- \l_tmpa_tl
- }
- \end{stex_annotate_env}
+}{\_@@_remove_counter:\_@@_end_env:n{}
+ \bool_if:NT \l_@@_inc_counter_bool {
+ \_@@_inc_counter:
}
+ \aftergroup\_@@_maybe_comment:
}
+\AddToHook{env/subproof/before}{\_@@_maybe_comment_end:}
\cs_new_protected:Nn \_@@_sproof_start: {
\par\noindent\titleemph{
@@ -461,290 +442,103 @@
}
% \end{macrocode}
% \end{environment}
-%
-% \begin{macro}{\spfidea}
-% \begin{macrocode}
-\newcommand\spfidea[2][]{
- \_@@_spf_args:n{#1}
- \titleemph{
- \tl_if_empty:NTF \spftype {Proof~Idea}{
- \spftype
- }:
- }~#2
- \sproofend
-}
-% \end{macrocode}
-% \end{macro}
%
-% The next two environments (proof steps) and comments, are mostly semantical, they take
-% |KeyVal| arguments that specify their semantic role. In draft mode, they read these
-% values and show them. If the surrounding proof had |display=flow|, then no new |\item| is
-% generated, otherwise it is. In any case, the proof step number (at the current level) is
-% incremented.
-% \begin{environment}{spfstep}
+% \begin{macro}{\pstep,\conclude,\assumption,\have,\eqstep}
% \begin{macrocode}
-\newenvironment{spfstep}[1][]{
- \_@@_spf_args:n{#1}
- \stex_if_smsmode:TF {
- \str_if_empty:NF \spfid {
- \stex_ref_new_doc_target:n \spfid
- }
- }{
- \@in@omtexttrue
- \clist_set:No \l_tmpa_clist \spftype
- \tl_set:Nn \l_tmpa_tl {
- \item[\sproofnumber]
- \bool_set_true:N \l_@@_inc_counter_bool
- }
- \clist_map_inline:Nn \l_tmpa_clist {
- \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
- \tl_clear:N \l_tmpa_tl
- }
- }
- \l_tmpa_tl
- \seq_clear:N \l_tmpa_seq
- \clist_map_inline:Nn \l_@@_spf_for_clist {
- \tl_if_empty:nF{ ##1 }{
- \stex_get_symbol:n { ##1 }
- \exp_args:NNo \seq_put_right:Nn \l_tmpa_seq {
- \l_stex_get_symbol_uri_str
- }
- }
- }
- \exp_args:Nnnx
- \begin{stex_annotate_env}{spfstep}{\seq_use:Nn \l_tmpa_seq {,}}
- \str_if_empty:NF \spftype {
- \stex_annotate_invisible:nnn{type}{\spftype}{}
- }
- \tl_if_empty:NF \spftitle {
- {(\titleemph{\spftitle})\enspace}
- }
- \str_if_empty:NF \spfid {
- \stex_ref_new_doc_target:n \spfid
- }
- }
- \stex_smsmode_do:
- \ignorespacesandpars
-}{
- \bool_if:NT \l_@@_inc_counter_bool {
- \_@@_inc_counter:
- }
- \stex_if_smsmode:F {
- \end{stex_annotate_env}
- }
+
+\keys_define:nn { stex / spfsteps } {
+ id .str_set_x:N = \spfstepid,
+ for .clist_set:N = \l_@@_spf_for_clist ,
+ type .str_set_x:N = \spftype,
+ title .tl_set:N = \spftitle,
+ method .tl_set:N = \l_@@_spf_method_tl,
+ term .tl_set:N = \l_@@_spf_term_tl
}
-% \end{macrocode}
-% \end{environment}
-%
-% \begin{environment}{spfcomment}
-% \begin{macrocode}
-\newenvironment{spfcomment}[1][]{
- \_@@_spf_args:n{#1}
- \clist_set:No \l_tmpa_clist \spftype
- \tl_set:Nn \l_tmpa_tl {
- \item[\sproofnumber]
- \bool_set_true:N \l_@@_inc_counter_bool
- }
- \clist_map_inline:Nn \l_tmpa_clist {
- \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
- \tl_clear:N \l_tmpa_tl
- }
- }
- \l_tmpa_tl
-}{
- \bool_if:NT \l_@@_inc_counter_bool {
- \_@@_inc_counter:
- }
+\cs_new_protected:Nn \_@@_spfstep_args:n {
+ \str_clear:N \spfstepid
+ \clist_clear:N \l_@@_spf_for_clist
+ \str_clear:N \spftype
+ \tl_clear:N \l_@@_spf_method_tl
+ \tl_clear:N \l_@@_spf_term_tl
+ %\bool_set_false:N \l_@@_inc_counter_bool
+ \keys_set:nn { stex / spfsteps }{ #1 }
}
-% \end{macrocode}
-% \end{environment}
-%
-% The next two environments also take a |KeyVal| argument, but also a regular one, which
-% contains a start text. Both environments start a new numbered proof level.
-%
-% \begin{environment}{subproof}
-% In the |subproof| environment, a new (lower-level) proproofof environment is started.
-% \begin{macrocode}
-\newenvironment{subproof}[2][]{
- \_@@_spf_args:n{#1}
- \stex_if_smsmode:TF{
- \str_if_empty:NF \spfid {
- \stex_ref_new_doc_target:n \spfid
- }
- }{
- \seq_clear:N \l_tmpa_seq
- \clist_map_inline:Nn \l_@@_spf_for_clist {
- \tl_if_empty:nF{ ##1 }{
- \stex_get_symbol:n { ##1 }
- \exp_args:NNo \seq_put_right:Nn \l_tmpa_seq {
- \l_stex_get_symbol_uri_str
- }
- }
- }
- \exp_args:Nnnx
- \begin{stex_annotate_env}{subproof}{\seq_use:Nn \l_tmpa_seq {,}}
- \str_if_empty:NF \spftype {
- \stex_annotate_invisible:nnn{type}{\spftype}{}
- }
- \clist_set:No \l_tmpa_clist \spftype
- \tl_set:Nn \l_tmpa_tl {
- \item[\sproofnumber]
- \bool_set_true:N \l_@@_inc_counter_bool
- }
- \clist_map_inline:Nn \l_tmpa_clist {
- \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
- \tl_clear:N \l_tmpa_tl
+\cs_new_protected:Nn \_@@_make_step_macro:Nnnnn {
+ \NewDocumentCommand #1 {s O{} +m} {
+ \_@@_maybe_comment_end:
+
+ \_@@_spfstep_args:n{##2}
+ \stex_annotate:nnn{spfstep}{#2}{
+ \tl_if_empty:NF \l_@@_spf_term_tl {
+ \stex_annotate_invisible:nnn{spfyield}{}{$\l_@@_spf_term_tl$}
}
+ \bool_if:NTF \l_@@_in_spfblock_bool {
+ #4
+ }{
+ \item[\IfBooleanTF ##1 {}{#3}]
+ }
+ \ignorespacesandpars ##3
}
- \l_tmpa_tl
- \tl_if_empty:NF \spftitle {
- {(\titleemph{\spftitle})\enspace}
- }
- {~#2}
- \str_if_empty:NF \spfid {
- \stex_ref_new_doc_target:n \spfid
- }
- }
- \_@@_add_counter:
- \stex_smsmode_do:
-}{
- \_@@_remove_counter:
- \bool_if:NT \l_@@_inc_counter_bool {
- \_@@_inc_counter:
- }
- \stex_if_smsmode:F{
- \end{stex_annotate_env}
+ \bool_if:NF \l_@@_in_spfblock_bool { \IfBooleanTF ##1 {}{ #5 } }
+ \_@@_maybe_comment:
}
+ \stex_deactivate_macro:Nn #1 {sproof~environments}
}
-% \end{macrocode}
-% \end{environment}
-%
-% \begin{environment}{spfcases}
-% In the |pfcases| environment, the start text is displayed as the first comment of the
-% proof.
-% \begin{macrocode}
-\newenvironment{spfcases}[2][]{
- \tl_if_empty:nTF{#1}{
- \begin{subproof}[method=by-cases]{#2}
- }{
- \begin{subproof}[#1,method=by-cases]{#2}
- }
-}{
- \end{subproof}
-}
-% \end{macrocode}
-% \end{environment}
-%
-% \begin{environment}{spfcase}
-% In the |pfcase| environment, the start text is displayed specification of the case
-% after the |\item|
-% \begin{macrocode}
-\newenvironment{spfcase}[2][]{
- \_@@_spf_args:n{#1}
- \stex_if_smsmode:TF {
- \str_if_empty:NF \spfid {
- \stex_ref_new_doc_target:n \spfid
- }
+
+\_@@_make_step_macro:Nnnnn \assumption {assumption} \sproofnumber {} \_@@_inc_counter:
+\_@@_make_step_macro:Nnnnn \conclude {conclusion} {$\Rightarrow$} {} {}
+\_@@_make_step_macro:Nnnnn \spfstep {} \sproofnumber {} \_@@_inc_counter:
+
+\NewDocumentCommand \eqstep {s m}{
+ \_@@_maybe_comment_end:
+ \bool_if:NTF \l_@@_in_spfblock_bool {
+ $=$
}{
- \seq_clear:N \l_tmpa_seq
- \clist_map_inline:Nn \l_@@_spf_for_clist {
- \tl_if_empty:nF{ ##1 }{
- \stex_get_symbol:n { ##1 }
- \exp_args:NNo \seq_put_right:Nn \l_tmpa_seq {
- \l_stex_get_symbol_uri_str
- }
- }
- }
- \exp_args:Nnnx
- \begin{stex_annotate_env}{spfcase}{\seq_use:Nn \l_tmpa_seq {,}}
- \str_if_empty:NF \spftype {
- \stex_annotate_invisible:nnn{type}{\spftype}{}
- }
- \clist_set:No \l_tmpa_clist \spftype
- \tl_set:Nn \l_tmpa_tl {
- \item[\sproofnumber]
- \bool_set_true:N \l_@@_inc_counter_bool
- }
- \clist_map_inline:Nn \l_tmpa_clist {
- \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
- \tl_clear:N \l_tmpa_tl
- }
- }
- \l_tmpa_tl
- \tl_if_empty:nF{#2}{
- \titleemph{#2}:~
- }
- }
- \_@@_add_counter:
- \stex_smsmode_do:
-}{
- \_@@_remove_counter:
- \bool_if:NT \l_@@_inc_counter_bool {
- \_@@_inc_counter:
- }
- \stex_if_smsmode:F{
- \clist_set:No \l_tmpa_clist \spftype
- \tl_set:Nn \l_tmpa_tl{\sproofend}
- \clist_map_inline:Nn \l_tmpa_clist {
- \exp_args:No \str_if_eq:nnT \c_@@_flow_str {##1} {
- \tl_clear:N \l_tmpa_tl
- }
- }
- \l_tmpa_tl
- \end{stex_annotate_env}
+ \item[$=$]
}
+ $\stex_annotate:nnn{spfstep}{eq}{ #2 }$
+ \_@@_maybe_comment:
}
-% \end{macrocode}
-% \end{environment}
-%
-% \begin{environment}{spfcase}
-% similar to |spfcase|, takes a third argument.
-% \begin{macrocode}
-\newcommand\spfcasesketch[3][]{
- \begin{spfcase}[#1]{#2}#3\end{spfcase}
+\stex_deactivate_macro:Nn \eqstep {sproof~environments}
+
+\NewDocumentCommand \yield {+m}{
+ \stex_annotate:nnn{spfyield}{}{ #1 }
}
-% \end{macrocode}
-% \end{environment}
-%
-% \subsection{Justifications}
-%
-% We define the actions that are undertaken, when the keys for justifications are
-% encountered. Here this is very simple, we just define an internal macro with the value,
-% so that we can use it later.
-% \begin{macrocode}
-\keys_define:nn { stex / just }{
- id .str_set_x:N = \l_@@_just_id_str,
- method .tl_set:N = \l_@@_just_method_tl,
- premises .tl_set:N = \l_@@_just_premises_tl,
- args .tl_set:N = \l_@@_just_args_tl
+\stex_deactivate_macro:Nn \yield {sproof~environments}
+
+\NewDocumentEnvironment{spfblock}{}{
+ \item[]
+ \bool_set_true:N \l_@@_in_spfblock_bool
+}{
+ \aftergroup\_@@_maybe_comment:
}
-% \end{macrocode}
-%
-% The next three environments and macros are purely semantic, so we ignore the keyval
-% arguments for now and only display the content.\ednote{need to do something about the
-% premise in draft mode.}
-%
-% \begin{macro}{\spfjust}
-% \begin{macrocode}
-\newcommand\spfjust[1][]{}
+\AddToHook{env/spfblock/before}{\_@@_maybe_comment_end:}
+
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\premise}
+%
+% \begin{macro}{\spfidea}
% \begin{macrocode}
-\newcommand\stex_proof_premise:[2][]{#2}
+\NewDocumentCommand\spfidea{O{} +m}{
+ \_@@_spf_args:n{#1}
+ \titleemph{
+ \tl_if_empty:NTF \spftype {Proof~Idea}{
+ \spftype
+ }:
+ }~#2
+ \sproofend
+}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\justarg}
-% the |\justarg| macro is purely semantic, so we ignore the keyval arguments for now and
-% only display the content.
% \begin{macrocode}
-\newcommand\justarg[2][]{#2}
+\newcommand\spfjust[1]{
+ #1
+}
%</package>
% \end{macrocode}
-% \end{macro}
% \end{implementation}
% \Finale
% \ifinfulldoc\else\printbibliography\fi
diff --git a/macros/latex/contrib/stex/source/stex/stex-references.dtx b/macros/latex/contrib/stex/source/stex/stex-references.dtx
index 96506e71f1..841115fd0e 100644
--- a/macros/latex/contrib/stex/source/stex/stex-references.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-references.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -47,22 +47,11 @@
%
% \section{Macros and Environments}\label{pkg:sref:doc:macros}
%
-% \begin{function}{\STEXreftitle}
-% \begin{syntax} \cs{STEXreftitle}\Arg{some title} \end{syntax}
-%
-% Sets the title of the current document to \meta{some title}.
-% A reference to the current document from \emph{some other}
-% document will then be displayed accordingly. e.g.
-% if |\STEXreftitle{foo book}| is called, then referencing
-% Definition 3.5 in this document in another document will display
-% |Definition 3.5 in foo book|.
-% \end{function}
%
% \begin{function}{\stex_get_document_uri:}
-% Computes the current document uri from the current archive's
-% |narr|-field and its location relative to the archive's
-% |source|-directory. Reference targets are computed from
-% this URI and the reference-id.
+% Computes the current document uri from the current archive's |narr|-field and its
+% location relative to the archive's |source|-directory. Reference targets are computed
+% from this URI and the reference-id.
%
% \begin{variable}{\l_stex_current_docns_str}
% Stores its result in |\l_stex_current_docns_str|
@@ -70,11 +59,9 @@
% \end{function}
%
% \begin{function}{\stex_get_document_url:}
-% Computes the current URL from the current archive's
-% |docurl|-field and its location relative to the archive's
-% |source|-directory. Reference targets are computed from
-% this URL and the reference-id, if this document is only included
-% in SMS mode.
+% Computes the current URL from the current archive's |docurl|-field and its location
+% relative to the archive's |source|-directory. Reference targets are computed from this
+% URL and the reference-id, if this document is only included in SMS mode.
%
% \begin{variable}{\l_stex_current_docurl_str}
% Stores its result in |\l_stex_current_docurl_str|
@@ -132,7 +119,7 @@
% \begin{macrocode}
%<*package>
-%%%%%%%%%%%%% references.dtx %%%%%%%%%%%%%
+%%%%%%%%%%%%% stex-references.dtx %%%%%%%%%%%%%
%<@@=stex_refs>
% \end{macrocode}
@@ -140,31 +127,30 @@
% Warnings and error messages
%
% \begin{macrocode}
-
+\msg_new:nnn{stex}{error/extrefmissing}{
+ Missing~in~or~cite~value~for~\detokenize{\extref}!
+}
+\msg_new:nnn{stex}{warning/smsmissing}{
+ .sref~file~#1~doesn't~exist!
+}
+\msg_new:nnn{stex}{warning/smslabelmissing}{
+ No~label~#2~in~.sref~file~#1!
+}
% \end{macrocode}
%
% References are stored in the file |\jobname.sref|, to enable
% cross-referencing external documents.
%
% \begin{macrocode}
-%\iow_new:N \c_@@_refs_iow
+\iow_new:N \c_@@_refs_iow
\AtBeginDocument{
-% \iow_open:Nn \c_@@_refs_iow {\jobname.sref}
+ \iow_open:Nn \c_@@_refs_iow {\jobname.sref}
}
\AtEndDocument{
-% \iow_close:N \c_@@_refs_iow
+ \iow_close:N \c_@@_refs_iow
}
% \end{macrocode}
%
-% \begin{macro}{\STEXreftitle}
-% \begin{macrocode}
-\str_set:Nn \g_@@_title_tl {Unnamed~Document}
-
-\NewDocumentCommand \STEXreftitle { m } {
- \tl_gset:Nx \g_@@_title_tl { #1 }
-}
-% \end{macrocode}
-% \end{macro}
%
% \subsection{Document URIs and URLs}
%
@@ -208,13 +194,14 @@
}
\seq_if_empty:NTF \l_tmpa_seq {
- \str_set_eq:NN \l_stex_current_docns_str \l_tmpa_str
+ \str_gset_eq:NN \l_stex_current_docns_str \l_tmpa_str
}{
- \str_set:Nx \l_stex_current_docns_str {
+ \str_gset:Nx \l_stex_current_docns_str {
\l_tmpa_str/\stex_path_to_string:N \l_tmpa_seq
}
}
}
+ %\stex_get_document_url:
}
% \end{macrocode}
% \end{macro}
@@ -281,57 +268,98 @@
% @currentlabel -> number
% @currentlabelname -> title
% @currentHref -> name.number <- id of some kind
+% @currentcounter <- name/id
+% \#autorefname <- "Section"
% \theH# -> \arabic{section}
% \the# -> number
% \hyper@makecurrent{#}
\int_new:N \l_@@_unnamed_counter_int
% \end{macrocode}
%
+% Restoring references from |.sref|-files
+%
+% \begin{macro}{\STEXInternalSrefRestoreTarget}
+% \begin{macrocode}
+\cs_new_protected:Npn \STEXInternalSrefRestoreTarget #1#2#3#4#5 {}
+% \end{macrocode}
+% \end{macro}
+%
+%
% \begin{macro}{\stex_ref_new_doc_target:n}
% \begin{macrocode}
+\seq_new:N \g_stex_ref_files_seq
+
\cs_new_protected:Nn \stex_ref_new_doc_target:n {
- \stex_get_document_uri:
+ %\stex_get_document_uri:
\str_clear:N \l_@@_curr_label_str
\str_set:Nx \l_tmpa_str { #1 }
\str_if_empty:NT \l_tmpa_str {
- \int_incr:N \l_@@_unnamed_counter_int
+ \int_gincr:N \l_@@_unnamed_counter_int
\str_set:Nx \l_tmpa_str {REF\int_use:N \l_@@_unnamed_counter_int}
}
\str_set:Nx \l_@@_curr_label_str {
\l_stex_current_docns_str?\l_tmpa_str
}
- \seq_if_exist:cF{g_@@_labels_\l_tmpa_str _seq}{
- \seq_new:c {g_@@_labels_\l_tmpa_str _seq}
- }
- \seq_if_in:coF{g_@@_labels_\l_tmpa_str _seq}\l_@@_curr_label_str {
- \seq_gput_right:co{g_@@_labels_\l_tmpa_str _seq}\l_@@_curr_label_str
- }
+
+ \exp_args:Noo \STEXInternalAuxAddDocRef\l_stex_current_docns_str\l_tmpa_str
+
+ %\seq_if_exist:cF{g_@@_labels_\l_tmpa_str _seq}{
+ % \seq_new:c {g_@@_labels_\l_tmpa_str _seq}
+ %}
+ %\seq_if_in:coF{g_@@_labels_\l_tmpa_str _seq}\l_@@_curr_label_str {
+ % \seq_gput_right:co{g_@@_labels_\l_tmpa_str _seq}\l_@@_curr_label_str
+ %}
+
+
\stex_if_smsmode:TF {
- \stex_get_document_url:
- \str_gset_eq:cN {sref_url_\l_@@_curr_label_str _str}\l_stex_current_docurl_str
- \str_gset_eq:cN {sref_\l_@@_curr_label_str _type}\c_@@_url_str
+ %\stex_get_document_url:
+ %\str_gset_eq:cN {sref_url_\l_@@_curr_label_str _str}\l_stex_current_docurl_str
+ %\str_gset_eq:cN {sref_\l_@@_curr_label_str _type}\c_@@_url_str
}{
- %\iow_now:Nx \c_@@_refs_iow { \l_tmpa_str~=~\expandafter\unexpanded\expandafter{\@currentlabel}~in~\exp_args:No\unexpanded\g_@@_title_tl,}
+ \iow_now:Nx \c_@@_refs_iow {
+ \STEXInternalSrefRestoreTarget
+ {\l_stex_current_docns_str}
+ {\l_tmpa_str}
+ {\@currentcounter}
+ {\@currentlabel}
+ {\tl_if_exist:NT\@currentlabelname{\exp_args:No\unexpanded\@currentlabelname}}
+ }
+ %\iow_now:Nx \c_@@_refs_iow {
+ % {\l_stex_current_docns_str?\l_tmpa_str}~=~{{\use:c{\@currentcounter autorefname}~\@currentlabel}~(\@currentlabelname)~in~\exp_args:No\unexpanded\g_@@_title_tl},}
+ \stex_debug:nn{sref}{New~label~\l_@@_curr_label_str~at~\use:c{\use:c{@currentcounter}autorefname}}
\exp_args:Nx\label{sref_\l_@@_curr_label_str}
- \immediate\write\@auxout{\stexauxadddocref{\l_stex_current_docns_str}{\l_tmpa_str}}
- \str_gset:cx {sref_\l_@@_curr_label_str _type}\c_@@_ref_str
+ \immediate\write\@auxout{\STEXInternalAuxAddDocRef{\l_stex_current_docns_str}{\l_tmpa_str}}
+ %\str_gset:cx {sref_\l_@@_curr_label_str _type}\c_@@_ref_str
}
}
+\NewDocumentCommand \slabel {m} {\stex_ref_new_doc_target:n {#1}}
% \end{macrocode}
% \end{macro}
%
% The following is used to set the necessary macros in the |.aux|-file.
%
% \begin{macrocode}
-\cs_new_protected:Npn \stexauxadddocref #1 #2 {
- \str_set:Nn \l_tmpa_str {#1?#2}
- \str_gset_eq:cN{sref_#1?#2_type}\c_@@_ref_str
- \seq_if_exist:cF{g_@@_labels_#2_seq}{
- \seq_new:c {g_@@_labels_#2_seq}
- }
- \seq_if_in:coF{g_@@_labels_#2_seq}\l_tmpa_str {
- \seq_gput_right:co{g_@@_labels_#2_seq}\l_tmpa_str
+\cs_new_protected:Npn \STEXInternalAuxAddDocRef #1 #2 {
+ \exp_args:NNx \seq_if_in:NnTF \g_stex_ref_files_seq {\detokenize{#1}} {
+ \exp_args:Nnx \seq_if_in:cnF{g_stex_ref_ #1 _seq}{\detokenize{#2}}{
+ \exp_args:Nnx \seq_gput_left:cn{g_stex_ref_ #1 _seq}{\detokenize{#2}}
+ }
+ }{
+ \exp_args:NNx \seq_gput_right:Nn \g_stex_ref_files_seq {\detokenize{#1}}
+ %\seq_if_exist:cF{g_stex_ref_ #1 _seq}{
+ \seq_new:c{g_stex_ref_ #1 _seq} % <- seq_new throws errors??
+ %}
+ \exp_args:Nnx \seq_gput_left:cn{g_stex_ref_ #1 _seq}{\detokenize{#2}}
}
+
+ %\str_set:Nn \l_tmpa_str {#1?#2}
+ %\str_gset_eq:cN{sref_#1?#2_type}\c_@@_ref_str
+ %\seq_if_exist:cF{g_@@_labels_#2_seq}{
+ % \seq_new:c {g_@@_labels_#2_seq}
+ %}
+ %\seq_if_in:coF{g_@@_labels_#2_seq}\l_tmpa_str {
+ % \seq_gput_right:co{g_@@_labels_#2_seq}\l_tmpa_str
+ %}
}
% \end{macrocode}
% To avoid resetting the same macros when the |.aux|-file is read
@@ -339,122 +367,314 @@
%
% \begin{macrocode}
\AtEndDocument{
- \def\stexauxadddocref#1 #2 {}{}
+ \def\STEXInternalAuxAddDocRef#1 #2 {}{}
}
% \end{macrocode}
%
% \begin{macro}{\stex_ref_new_sym_target:n}
% \begin{macrocode}
\cs_new_protected:Nn \stex_ref_new_sym_target:n {
- \stex_if_smsmode:TF {
- \str_if_exist:cF{sref_sym_#1_type}{
- \stex_get_document_url:
- \str_gset_eq:cN {sref_sym_url_#1_str}\l_stex_current_docurl_str
- \str_gset_eq:cN {sref_sym_#1_type}\c_@@_url_str
- }
- }{
- \str_if_empty:NF \l_@@_curr_label_str {
- \str_gset_eq:cN {sref_sym_#1_label_str}\l_@@_curr_label_str
- \immediate\write\@auxout{
- \exp_not:N\expandafter\def\exp_not:N\csname \exp_not:N\detokenize{sref_sym_#1_label_str}\exp_not:N\endcsname{
- \l_@@_curr_label_str
- }
- }
- }
- }
+
+% \stex_if_smsmode:TF {
+% \str_if_exist:cF{sref_sym_#1_type}{
+% \stex_get_document_url:
+% \str_gset_eq:cN {sref_sym_url_#1_str}\l_stex_current_docurl_str
+% \str_gset_eq:cN {sref_sym_#1_type}\c_@@_url_str
+% }
+% }{
+% \str_if_empty:NF \l_@@_curr_label_str {
+% \str_gset_eq:cN {sref_sym_#1_label_str}\l_@@_curr_label_str
+% \immediate\write\@auxout{
+% \exp_not:N\expandafter\def\exp_not:N\csname \exp_not:N\detokenize{sref_sym_#1_label_str}\exp_not:N\endcsname{
+% \l_@@_curr_label_str
+% }
+% }
+% }
+% }
}
% \end{macrocode}
% \end{macro}
%
% \subsection{Using References}
%
-% \begin{macrocode}
-\str_new:N \l_@@_indocument_str
-% \end{macrocode}
-%
% \begin{macro}{\sref}
% Optional arguments:
% \begin{macrocode}
-\keys_define:nn { stex / sref } {
- linktext .tl_set:N = \l_@@_linktext_tl ,
- fallback .tl_set:N = \l_@@_fallback_tl ,
- pre .tl_set:N = \l_@@_pre_tl ,
- post .tl_set:N = \l_@@_post_tl ,
+\keys_define:nn { stex / sref / 1 } {
+ archive .str_set_x:N = \l_@@_repo_str,
+ file .str_set_x:N = \l_@@_file_str,
+ % TODO get rid of this
+ fallback .code:n = {},
+ pre .code:n = {},
+ post .code:n = {}
}
-\cs_new_protected:Nn \_@@_args:n {
- \tl_clear:N \l_@@_linktext_tl
- \tl_clear:N \l_@@_fallback_tl
- \tl_clear:N \l_@@_pre_tl
- \tl_clear:N \l_@@_post_tl
+\cs_new_protected:Nn \_@@_args_i:n {
\str_clear:N \l_@@_repo_str
- \keys_set:nn { stex / sref } { #1 }
+ \str_clear:N \l_@@_file_str
+ \keys_set:nn { stex / sref / 1 } { #1 }
+}
+\keys_define:nn { stex / sref / 2 } {
+ in .str_set_x:N = \l_@@_in_str,
+ archive .str_set_x:N = \l_@@_repob_str,
+ title .tl_set:N = \l_@@_title_tl
+}
+\cs_new_protected:Nn \_@@_args_ii:n {
+ \str_clear:N \l_@@_in_str
+ \tl_clear:N \l_@@_title_tl
+ \str_clear:N \l_@@_repob_str
+ \keys_set:nn { stex / sref / 2 } { #1 }
}
% \end{macrocode}
% The actual macro:
% \begin{macrocode}
-\NewDocumentCommand \sref { O{} m}{
- \_@@_args:n { #1 }
- \str_if_empty:NTF \l_@@_indocument_str {
- \str_set:Nx \l_tmpa_str { #2 }
- \exp_args:NNno \seq_set_split:Nnn \l_tmpa_seq ? \l_tmpa_str
- \int_compare:nNnTF {\seq_count:N \l_tmpa_seq} = 1 {
- \seq_if_exist:cTF{g_@@_labels_\l_tmpa_str _seq}{
- \seq_get_left:cNF {g_@@_labels_\l_tmpa_str _seq} \l_tmpa_str {
- \str_clear:N \l_tmpa_str
+\NewDocumentCommand \sref { O{} m O{}}{
+ \_@@_args_i:n{#1}
+ \_@@_args_ii:n{#3}
+ \str_clear:N \l_@@_uri_str
+ \_@@_find_uri:n{#2}
+ \_@@_do_sref:n{#2}
+}
+\NewDocumentCommand \extref { O{} m m}{
+ \_@@_args_i:n{#1}
+ \_@@_args_ii:n{#3}
+ \str_if_empty:NT \l_@@_in_str {
+ \msg_error:nn{stex}{error/extrefmissing}
+ }
+ \str_clear:N \l_@@_uri_str
+ \_@@_find_uri:n{#2}
+ \_@@_do_sref_in:n{#2}
+}
+
+\cs_new_protected:Nn \_@@_find_uri:n {
+ \stex_debug:nn{sref}{File:~\l_@@_file_str^^JRepo:\l_@@_repo_str}
+ \str_if_empty:NTF \l_@@_file_str {
+ \stex_debug:nn{sref}{Empty.~Checking~current~file~for~#1}
+ \seq_if_exist:cT{g_stex_ref_\l_stex_current_docns_str _seq}{
+ \seq_map_inline:cn{g_stex_ref_\l_stex_current_docns_str _seq}{
+ \str_if_eq:nnT{#1}{##1}{
+ \str_set_eq:NN \l_@@_uri_str \l_stex_current_docns_str
+ \stex_debug:nn{sref}{Found.}
+ \seq_map_break:
}
- }{
- \str_clear:N \l_tmpa_str
}
- }{
- \seq_pop_left:NN \l_tmpa_seq \l_tmpb_str
- \seq_pop_right:NN \l_tmpa_seq \l_tmpa_str
- \int_set:Nn \l_tmpa_int { \exp_args:Ne \str_count:n {\l_tmpb_str?\l_tmpa_str} }
- \seq_if_exist:cTF{g_@@_labels_\l_tmpa_str _seq}{
- \str_set_eq:NN \l_tmpc_str \l_tmpa_str
- \str_clear:N \l_tmpa_str
- \seq_map_inline:cn {g_@@_labels_\l_tmpc_str _seq} {
- \str_if_eq:eeT { \l_tmpb_str?\l_tmpc_str }{
- \str_range:nnn { ##1 }{ -\l_tmpa_int}{ -1 }
- }{
- \seq_map_break:n {
- \str_set:Nn \l_tmpa_str { ##1 }
- }
+ }
+ \str_if_empty:NT \l_@@_uri_str {
+ \stex_debug:nn{sref}{Checking~other~files}
+ \seq_map_inline:Nn \g_stex_ref_files_seq {
+ \stex_debug:nn{sref}{##1...}
+ \seq_map_inline:cn{g_stex_ref_##1_seq}{
+ \str_if_eq:nnT{#1}{####1}{
+ \stex_debug:nn{sref}{Found~##1}
+ \str_set:Nn \l_@@_uri_str {##1}
+ \seq_map_break:n{\seq_map_break:}
}
}
+ }
+ }
+ }{
+ \str_if_empty:NTF \l_@@_repo_str {
+ \prop_if_exist:NTF \l_stex_current_repository_prop {
+ \prop_get:NnN \l_stex_current_repository_prop { ns } \l_@@_uri_str
+ \str_set:Nx \l_@@_uri_str {\l_@@_uri_str / \l_@@_file_str}
+ \stex_path_from_string:Nn \l_tmpb_seq \l_@@_uri_str
+ \str_set:Nx \l_@@_uri_str {\stex_path_to_string:N \l_tmpb_seq}
}{
- \str_clear:N \l_tmpa_str
+ \stex_path_from_string:Nn \l_tmpb_seq {
+ \stex_path_to_string:N \g_stex_currentfile_seq/ .. / \l_@@_file_str
+ }
+ \str_set:Nx \l_@@_uri_str {file:/\stex_path_to_string:N \l_tmpb_seq}
}
+ }{
+ \stex_require_repository:n \l_@@_repo_str
+ \prop_get:cnN { c_stex_mathhub_\l_@@_repo_str _manifest_prop } { ns } \l_@@_uri_str
+ \str_set:Nx \l_@@_uri_str {\l_@@_uri_str / \l_@@_file_str}
+ \stex_path_from_string:Nn \l_tmpb_seq \l_@@_uri_str
+ \str_set:Nx \l_@@_uri_str {\stex_path_to_string:N \l_tmpb_seq}
}
- \str_if_empty:NTF \l_tmpa_str {
- \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
+ }
+}
+
+\cs_new_protected:Nn \_@@_do_autoref:n{
+ \cs_if_exist:cTF{autoref}{
+ \exp_args:Nx\autoref{sref_#1}
+ }{
+ \exp_args:Nx\ref{sref_#1}
+ }
+}
+
+\cs_new_protected:Nn \_@@_do_sref:n {
+ \str_if_empty:NTF \l_@@_uri_str {
+ \str_if_empty:NTF \l_@@_in_str {
+ \stex_debug:nn{sref}{autoref~on~#1}
+ \_@@_do_autoref:n{#1}
}{
- \str_if_eq:cNTF {sref_\l_tmpa_str _type} \c_@@_ref_str {
- \tl_if_empty:NTF \l_@@_linktext_tl {
- \cs_if_exist:cTF{autoref}{
- \l_@@_pre_tl\exp_args:Nx\autoref{sref_\l_tmpa_str}\l_@@_post_tl
- }{
- \l_@@_pre_tl\exp_args:Nx\ref{sref_\l_tmpa_str}\l_@@_post_tl
- }
- }{
- \ltx@ifpackageloaded{hyperref}{
- \hyperref[sref_\l_tmpa_str]\l_@@_linktext_tl
- }{
- \l_@@_linktext_tl
- }
- }
+ \stex_debug:nn{sref}{srefin~on~#1}
+ \_@@_do_sref_in:n{#1}
+ }
+ }{
+ \exp_args:NNo \seq_if_in:NnTF \g_stex_ref_files_seq \l_@@_uri_str {
+ \exp_args:Nnx \seq_if_in:cnTF{g_stex_ref_\l_@@_uri_str _seq}{\detokenize{#1}}{
+ \stex_debug:nn{sref}{Reference~found~in~ref~files;~autoref~on~#1}
+ \_@@_do_autoref:n{\l_@@_uri_str?#1}
}{
- \ltx@ifpackageloaded{hyperref}{
- \href{\use:c{sref_url_\l_tmpa_str _str}}{\tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl}
+ \str_if_empty:NTF \l_@@_in_str {
+ \stex_debug:nn{sref}{in~empty;~autoref~on~#1}
+ \_@@_do_autoref:n{#1}
}{
- \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
+ \stex_debug:nn{sref}{in~non-empty;~srefin~on~#1}
+ \_@@_do_sref_in:n{#1}
}
}
+ }{
+ \str_if_empty:NTF \l_@@_in_str {
+ \stex_debug:nn{sref}{in~empty;~autoref~on~#1}
+ \_@@_do_autoref:n{#1}
+ }{
+ \stex_debug:nn{sref}{in~non-empty;~srefin~on~#1}
+ \_@@_do_sref_in:n{#1}
+ }
+ }
+ }
+}
+
+\cs_new_protected:Nn \_@@_restore_target:nnnnn {
+ \str_if_empty:NTF \l_@@_uri_str {
+ \exp_args:No \str_if_eq:nnT \l_@@_id_str {#2}{
+ \tl_set:Nn \l_@@_return_tl {
+ \use:c{#3autorefname}~#4\tl_if_empty:nF{#5}{~(#5)}~in~
+ \tl_if_empty:nTF\l_@@_title_tl{
+ ???
+ }\l_@@_title_tl
+ }
}
}{
- % TODO
+ \stex_debug:nn{sref}{\l_@@_uri_str{}~ == ~ #1 ~ ?}
+ \exp_args:No \str_if_eq:nnT \l_@@_uri_str {#1}{
+ \stex_debug:nn{sref}{\l_@@_id_str~ == ~ #2 ~ ?}
+ \exp_args:No \str_if_eq:nnT \l_@@_id_str {#2}{
+ \stex_debug:nn{sref}{success!}
+ \tl_set:Nn \l_@@_return_tl {
+ \use:c{#3autorefname}~#4\tl_if_empty:nF{#5}{~(#5)}~in~
+ \tl_if_empty:nTF\l_@@_title_tl{
+ ???
+ }\l_@@_title_tl
+ }
+ \endinput
+ }
+ }
}
}
+
+\cs_new_protected:Nn \_@@_do_sref_in:n {
+ \stex_debug:nn{sref}{In: \l_@@_in_str^^JRepo:\l_@@_repo_str}
+ \stex_debug:nn{sref}{URI: \l_@@_uri_str?#1}
+ %\msg_warning:nnn{stex}{warning/smsmissing}{<filename>}
+ \begingroup\catcode13=9\relax\catcode10=9\relax
+ \str_if_empty:NTF \l_@@_repob_str {
+ \prop_if_exist:NTF \l_stex_current_repository_prop {
+ \str_set:Nx \l_tmpa_str {
+ \c_stex_mathhub_str /
+ \prop_item:Nn \l_stex_current_repository_prop { id }
+ / source / \l_@@_in_str .sref
+ }
+ }{
+ \str_set:Nx \l_tmpa_str {
+ \stex_path_to_string:N \g_stex_currentfile_seq/ .. / \l_@@_in_str . sref
+ }
+ }
+ }{
+ \str_set:Nx \l_tmpa_str {
+ \c_stex_mathhub_str / \l_@@_repob_str
+ / source / \l_@@_in_str . sref
+ }
+ }
+ \stex_path_from_string:Nn \l_tmpb_seq \l_tmpa_str
+ \stex_path_to_string:NN \l_tmpb_seq \l_tmpa_str
+ \stex_debug:nn{sref}{File: \l_tmpa_str}
+ \exp_args:No \IfFileExists \l_tmpa_str {
+ \tl_clear:N \l_@@_return_tl
+ \str_set:Nn \l_@@_id_str {#1}
+ \let\STEXInternalSrefRestoreTarget\_@@_restore_target:nnnnn
+ \use:c{@ @ input}{\l_tmpa_str}
+ \exp_args:No \tl_if_empty:nTF \l_@@_return_tl {
+ \exp_args:Nnno \msg_warning:nnnn{stex}{warning/smslabelmissing}\l_tmpa_str{#1}
+ \_@@_do_autoref:n{
+ \str_if_empty:NF\l_@@_uri_str{\l_@@_uri_str?}#1
+ }
+ }{
+ \l_@@_return_tl
+ }
+ }{
+ \exp_args:Nnno \msg_warning:nnn{stex}{warning/smsmissing}\l_tmpa_str
+ \_@@_do_autoref:n{
+ \str_if_empty:NF\l_@@_uri_str{\l_@@_uri_str?}#1
+ }
+ }
+ \endgroup
+}
+
+ % \_@@_args:n { #1 }
+ % \str_if_empty:NTF \l_@@_indocument_str {
+ % \str_set:Nx \l_tmpa_str { #2 }
+ % \exp_args:NNno \seq_set_split:Nnn \l_tmpa_seq ? \l_tmpa_str
+ % \int_compare:nNnTF {\seq_count:N \l_tmpa_seq} = 1 {
+ % \seq_if_exist:cTF{g_@@_labels_\l_tmpa_str _seq}{
+ % \seq_get_left:cNF {g_@@_labels_\l_tmpa_str _seq} \l_tmpa_str {
+ % \str_clear:N \l_tmpa_str
+ % }
+ % }{
+ % \str_clear:N \l_tmpa_str
+ % }
+ % }{
+ % \seq_pop_left:NN \l_tmpa_seq \l_tmpb_str
+ % \seq_pop_right:NN \l_tmpa_seq \l_tmpa_str
+ % \int_set:Nn \l_tmpa_int { \exp_args:Ne \str_count:n {\l_tmpb_str?\l_tmpa_str} }
+ % \seq_if_exist:cTF{g_@@_labels_\l_tmpa_str _seq}{
+ % \str_set_eq:NN \l_tmpc_str \l_tmpa_str
+ % \str_clear:N \l_tmpa_str
+ % \seq_map_inline:cn {g_@@_labels_\l_tmpc_str _seq} {
+ % \str_if_eq:eeT { \l_tmpb_str?\l_tmpc_str }{
+ % \str_range:nnn { ##1 }{ -\l_tmpa_int}{ -1 }
+ % }{
+ % \seq_map_break:n {
+ % \str_set:Nn \l_tmpa_str { ##1 }
+ % }
+ % }
+ % }
+ % }{
+ % \str_clear:N \l_tmpa_str
+ % }
+ % }
+ % \str_if_empty:NTF \l_tmpa_str {
+ % \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
+ % }{
+ % \str_if_eq:cNTF {sref_\l_tmpa_str _type} \c_@@_ref_str {
+ % \tl_if_empty:NTF \l_@@_linktext_tl {
+ % \cs_if_exist:cTF{autoref}{
+ % \l_@@_pre_tl\exp_args:Nx\autoref{sref_\l_tmpa_str}\l_@@_post_tl
+ % }{
+ % \l_@@_pre_tl\exp_args:Nx\ref{sref_\l_tmpa_str}\l_@@_post_tl
+ % }
+ % }{
+ % \ltx@ifpackageloaded{hyperref}{
+ % \hyperref[sref_\l_tmpa_str]\l_@@_linktext_tl
+ % }{
+ % \l_@@_linktext_tl
+ % }
+ % }
+ % }{
+ % \ltx@ifpackageloaded{hyperref}{
+ % \href{\use:c{sref_url_\l_tmpa_str _str}}{\tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl}
+ % }{
+ % \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
+ % }
+ % }
+ % }
+ % }{
+ % TODO
+ % }
+%}
% \end{macrocode}
% \end{macro}
%
@@ -466,52 +686,53 @@
}
\cs_new_protected:Nn \_@@_sym_aux:nn {
- \str_if_exist:cTF {sref_sym_#2 _label_str }{
- \sref[#1]{\use:c{sref_sym_#2 _label_str}}
- }{
- \_@@_args:n { #1 }
- \str_if_empty:NTF \l_@@_indocument_str {
- \tl_if_exist:cTF{sref_sym_#2 _type}{
- % doc uri in \l_tmpb_str
- \str_set:Nx \l_tmpa_str {\use:c{sref_sym_#2 _type}}
- \str_if_eq:NNTF \l_tmpa_str \c_@@_ref_str {
- % reference
- \tl_if_empty:NTF \l_@@_linktext_tl {
- \cs_if_exist:cTF{autoref}{
- \l_@@_pre_tl\autoref{sref_sym_#2}\l_@@_post_tl
- }{
- \l_@@_pre_tl\ref{sref_sym_#2}\l_@@_post_tl
- }
- }{
- \ltx@ifpackageloaded{hyperref}{
- \hyperref[sref_sym_#2]\l_@@_linktext_tl
- }{
- \l_@@_linktext_tl
- }
- }
- }{
- % URL
- \ltx@ifpackageloaded{hyperref}{
- \href{\use:c{sref_sym_url_#2 _str}}{\tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl}
- }{
- \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
- }
- }
- }{
- \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
- }
- }{
- % TODO
- }
- }
+
+% \str_if_exist:cTF {sref_sym_#2 _label_str }{
+% \sref[#1]{\use:c{sref_sym_#2 _label_str}}
+% }{
+% \_@@_args:n { #1 }
+% \str_if_empty:NTF \l_@@_indocument_str {
+% \tl_if_exist:cTF{sref_sym_#2 _type}{
+% % doc uri in \l_tmpb_str
+% \str_set:Nx \l_tmpa_str {\use:c{sref_sym_#2 _type}}
+% \str_if_eq:NNTF \l_tmpa_str \c_@@_ref_str {
+% % reference
+% \tl_if_empty:NTF \l_@@_linktext_tl {
+% \cs_if_exist:cTF{autoref}{
+% \l_@@_pre_tl\autoref{sref_sym_#2}\l_@@_post_tl
+% }{
+% \l_@@_pre_tl\ref{sref_sym_#2}\l_@@_post_tl
+% }
+% }{
+% \ltx@ifpackageloaded{hyperref}{
+% \hyperref[sref_sym_#2]\l_@@_linktext_tl
+% }{
+% \l_@@_linktext_tl
+% }
+% }
+% }{
+% % URL
+% \ltx@ifpackageloaded{hyperref}{
+% \href{\use:c{sref_sym_url_#2 _str}}{\tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl}
+% }{
+% \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
+% }
+% }
+% }{
+% \tl_if_empty:NTF \l_@@_linktext_tl \l_@@_fallback_tl \l_@@_linktext_tl
+% }
+% }{
+% % TODO
+% }
+% }
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\srefsymuri}
% \begin{macrocode}
-\cs_new_protected:Npn \srefsymuri #1 #2 {
- \_@@_sym_aux:nn{linktext={#2}}{#1}
+\cs_new_protected:Npn \srefsymuri #1 #2 { % TODO
+ #2%\_@@_sym_aux:nn{linktext={#2}}{#1}
}
% \end{macrocode}
% \end{macro}
diff --git a/macros/latex/contrib/stex/source/stex/stex-statements.dtx b/macros/latex/contrib/stex/source/stex/stex-statements.dtx
index 6a66eb80e7..cab2a678c8 100644
--- a/macros/latex/contrib/stex/source/stex/stex-statements.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-statements.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -365,6 +365,7 @@
}
}
\clist_set_from_seq:NN \l_@@_sdefinition_for_clist \l_tmpb_seq
+ \ifvmode\noindent\fi
\exp_args:Nnx
\stex_annotate:nnn{definition}{\seq_use:Nn \l_tmpb_seq {,}}{
\str_if_empty:NF \sdefinitiontype {
@@ -542,6 +543,7 @@
}
}
}
+ \ifvmode\noindent\fi
\exp_args:Nnx
\stex_annotate:nnn{assertion}{\seq_use:Nn \l_tmpb_seq {,}}{
\str_if_empty:NF \sassertiontype {
@@ -705,6 +707,7 @@
}
}
}
+ \ifvmode\noindent\fi
\exp_args:Nnx
\stex_annotate:nnn{example}{\seq_use:Nn \l_tmpb_seq {,}}{
\str_if_empty:NF \sexampletype {
@@ -926,6 +929,7 @@
}
}
}
+ \ifvmode\noindent\fi
\exp_args:Nnx
\stex_annotate:nnn{paragraph}{\seq_use:Nn \l_tmpb_seq {,}}{
\str_if_empty:NF \sparagraphtype {
diff --git a/macros/latex/contrib/stex/source/stex/stex-symbols.dtx b/macros/latex/contrib/stex/source/stex/stex-symbols.dtx
index ba9fa5f097..e5e7982abc 100644
--- a/macros/latex/contrib/stex/source/stex/stex-symbols.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-symbols.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -60,9 +60,6 @@
% passed on to \mmt for semantic services.
% \item |def|: An (ideally semantic) term, representing a \emph{definiens}. Not used by \sTeX, but
% passed on to \mmt for semantic services.
-% \item |local|: A boolean (by default false). If set, this declaration
-% will not be added to the module content, i.e. importing
-% the current module will not make this declaration available.
% \item |args|: Specifies the ``signature'' of the semantic macro.
% Can be either an integer $0 \leq n \leq 9$, or a (more precise)
% sequence of the following characters:
@@ -92,7 +89,6 @@
% \item |name| (string),
% \item |module| (string),
% \item |notations| (sequence of strings; initially empty),
-% \item |local| (boolean),
% \item |type| (token list),
% \item |args| (string of |i|s, |a|s and |b|s),
% \item |arity| (integer string),
@@ -204,15 +200,14 @@
% \begin{macrocode}
\keys_define:nn { stex / symdecl } {
name .str_set_x:N = \l_stex_symdecl_name_str ,
- local .bool_set:N = \l_stex_symdecl_local_bool ,
args .str_set_x:N = \l_stex_symdecl_args_str ,
type .tl_set:N = \l_stex_symdecl_type_tl ,
deprecate .str_set_x:N = \l_stex_symdecl_deprecate_str ,
align .str_set:N = \l_stex_symdecl_align_str , % TODO(?)
gfc .str_set:N = \l_stex_symdecl_gfc_str , % TODO(?)
- specializes .str_set:N = \l_stex_symdecl_specializes_str , % TODO(?)
def .tl_set:N = \l_stex_symdecl_definiens_tl ,
reorder .str_set_x:N = \l_stex_symdecl_reorder_str ,
+ argnames .clist_set:N = \l_stex_symdecl_argnames_clist ,
assoc .choices:nn =
{bin,binl,binr,pre,conj,pwconj}
{\str_set:Nx \l_stex_symdecl_assoctype_str {\l_keys_choice_tl}}
@@ -229,6 +224,7 @@
\bool_set_false:N \l_stex_symdecl_local_bool
\tl_clear:N \l_stex_symdecl_type_tl
\tl_clear:N \l_stex_symdecl_definiens_tl
+ \clist_clear:N \l_stex_symdecl_argnames_clist
\keys_set:nn { stex / symdecl } { #1 }
}
@@ -324,6 +320,7 @@
}{##1}
}
}
+
\bool_if:NTF \l_tmpa_bool {
% possibly numeric
\str_if_empty:NTF \l_stex_symdecl_args_str {
@@ -351,6 +348,19 @@
\prop_put:Nnx \l_tmpa_prop { defined }{ true }
}
+ % argnames
+
+ \clist_clear:N \l_tmpa_clist
+ \int_step_inline:nn {\prop_item:Nn \l_tmpa_prop {arity}} {
+ \clist_if_empty:NTF \l_stex_symdecl_argnames_clist {
+ \clist_put_right:Nn \l_tmpa_clist {##1}
+ }{
+ \clist_pop:NN \l_stex_symdecl_argnames_clist \l_tmpa_tl
+ \exp_args:NNx \clist_put_right:Nn \l_tmpa_clist {\c_dollar_str\l_tmpa_tl}
+ }
+ }
+ \prop_put:Nnx \l_tmpa_prop {argnames} {\clist_use:Nn \l_tmpa_clist ,}
+
% semantic macro
\bool_if:NT \l_stex_symdecl_make_macro_bool {
@@ -396,7 +406,7 @@
_prop
} {
\bool_if:NTF \l_stex_symdecl_local_bool \stex_do_up_to_module:x \stex_execute_in_module:x {
- \_@@_restore_symbol:nnnnnnn
+ \_@@_restore_symbol:nnnnnnnn
{\l_stex_symdecl_name_str}
{ \prop_item:Nn \l_tmpa_prop {args} }
{ \prop_item:Nn \l_tmpa_prop {arity} }
@@ -404,10 +414,11 @@
{ \prop_item:Nn \l_tmpa_prop {defined} }
{\bool_if:NT \l_stex_symdecl_make_macro_bool {#1} }
{\l_stex_current_module_str}
+ { \prop_item:Nn \l_tmpa_prop {argnames} }
}
}
}
-\cs_new_protected:Nn \_@@_restore_symbol:nnnnnnn {
+\cs_new_protected:Nn \_@@_restore_symbol:nnnnnnnn {
\prop_clear:N \l_tmpa_prop
\prop_put:Nnn \l_tmpa_prop { module } { #7 }
\prop_put:Nnn \l_tmpa_prop { name } { #1}
@@ -415,6 +426,7 @@
\prop_put:Nnn \l_tmpa_prop { arity } { #3 }
\prop_put:Nnn \l_tmpa_prop { assocs } { #4 }
\prop_put:Nnn \l_tmpa_prop { defined } { #5 }
+ \prop_put:Nnn \l_tmpa_prop { argnames } { #8 }
\tl_if_empty:nF{#6}{
\tl_set:cx{#6}{\stex_invoke_symbol:n{\detokenize{#7 ? #1}}}
}
@@ -435,6 +447,7 @@
\cs_new_protected:Nn \_stex_textsymdecl_args:n {
\str_clear:N \l_@@_name_str
\tl_clear:N \l_@@_type_tl
+ \clist_clear:N \l_stex_symdecl_argnames_clist
\keys_set:nn { stex / textsymdecl } { #1 }
}
@@ -450,12 +463,12 @@
\stex_execute_in_module:n{
\cs_set_nopar:cpn{#1name}{
\ifvmode\hbox_unpack:N\c_empty_box\fi
- \hbox{#3}\xspace
+ \ifmmode\hbox{#3}\else#3\fi\xspace
}
\cs_set_nopar:cpn{#1}{
\ifmmode\csname#1-sym\expandafter\endcsname\else
\ifvmode\hbox_unpack:N\c_empty_box\fi
- \symref{#1-sym}{\hbox{#3}}\expandafter\xspace
+ \symref{#1-sym}{#3}\expandafter\xspace
\fi
}
}
@@ -594,12 +607,13 @@
% \begin{macrocode}
\keys_define:nn { stex / notation } {
% lang .tl_set_x:N = \l_@@_lang_str ,
- variant .tl_set_x:N = \l_@@_variant_str ,
- prec .str_set_x:N = \l_@@_prec_str ,
- op .tl_set:N = \l_@@_op_tl ,
- primary .bool_set:N = \l_@@_primary_bool ,
- primary .default:n = {true} ,
- unknown .code:n = \str_set:Nx
+ variant .tl_set_x:N = \l_@@_variant_str ,
+ prec .str_set_x:N = \l_@@_prec_str ,
+ op .tl_set:N = \l_@@_op_tl ,
+ primary .bool_set:N = \l_@@_primary_bool ,
+ primary .default:n = {true} ,
+ hints .str_set_x:N = \l_@@_hints_str,
+ unknown .code:n = \str_set:Nx
\l_@@_variant_str \l_keys_key_str
}
@@ -607,6 +621,7 @@
% \str_clear:N \l_@@_lang_str
\str_clear:N \l_@@_variant_str
\str_clear:N \l_@@_prec_str
+ \str_clear:N \l_@@_hints_str
\tl_clear:N \l_@@_op_tl
\bool_set_false:N \l_@@_primary_bool
@@ -677,7 +692,7 @@
\exp_args:NNNo \exp_args:NNno \seq_set_split:Nnn
\l_tmpa_seq {\tl_to_str:n{x} } { \l_tmpa_str }
\seq_map_inline:Nn \l_tmpa_seq {
- \seq_put_right:Nn \l_tmpb_seq { ##1 }
+ \seq_put_right:Nn \l_@@_precedences_seq { ##1 }
}
}
}{
@@ -824,11 +839,12 @@
\seq_pop_left:NN \l_@@_remaining_precs_seq \l_tmpa_str
\tl_put_right:Nx \l_stex_notation_dummyargs_tl { {
- \STEXInternalTermMathAssocArgiiii
- { #1\int_use:N \l_@@_currarg_int }
+ \STEXInternalTermMathAssocArgiiiii
+ { \int_use:N \l_@@_currarg_int }
{ \l_tmpa_str }
{ ####\int_use:N \l_@@_currarg_int }
{ \l_tmpa_cs {####1} {####2} }
+ {#1}
} }
\_@@_arguments:
}
@@ -1036,7 +1052,6 @@
% \begin{macrocode}
\keys_define:nn { stex / symdef } {
name .str_set_x:N = \l_stex_symdecl_name_str ,
- local .bool_set:N = \l_stex_symdecl_local_bool ,
args .str_set_x:N = \l_stex_symdecl_args_str ,
type .tl_set:N = \l_stex_symdecl_type_tl ,
def .tl_set:N = \l_stex_symdecl_definiens_tl ,
@@ -1045,6 +1060,7 @@
% lang .str_set_x:N = \l_@@_lang_str ,
variant .str_set_x:N = \l_@@_variant_str ,
prec .str_set_x:N = \l_@@_prec_str ,
+ argnames .clist_set:N = \l_stex_symdecl_argnames_clist ,
assoc .choices:nn =
{bin,binl,binr,pre,conj,pwconj}
{\str_set:Nx \l_stex_symdecl_assoctype_str {\l_keys_choice_tl}},
@@ -1060,6 +1076,7 @@
\bool_set_false:N \l_stex_symdecl_local_bool
\tl_clear:N \l_stex_symdecl_type_tl
\tl_clear:N \l_stex_symdecl_definiens_tl
+ \clist_clear:N \l_stex_symdecl_argnames_clist
% \str_clear:N \l_@@_lang_str
\str_clear:N \l_@@_variant_str
\str_clear:N \l_@@_prec_str
@@ -1086,6 +1103,70 @@
{ \l_@@_prec_str}
}
\stex_deactivate_macro:Nn \symdef {module~environments}
+
+\keys_define:nn { stex / mmtdef } {
+ name .str_set_x:N = \l_stex_symdecl_name_str ,
+ args .str_set_x:N = \l_stex_symdecl_args_str ,
+ reorder .str_set_x:N = \l_stex_symdecl_reorder_str ,
+ op .tl_set:N = \l_@@_op_tl ,
+ % lang .str_set_x:N = \l_@@_lang_str ,
+ variant .str_set_x:N = \l_@@_variant_str ,
+ prec .str_set_x:N = \l_@@_prec_str ,
+ argnames .clist_set:N = \l_stex_symdecl_argnames_clist ,
+ assoc .choices:nn =
+ {bin,binl,binr,pre,conj,pwconj}
+ {\str_set:Nx \l_stex_symdecl_assoctype_str {\l_keys_choice_tl}},
+ unknown .code:n = \str_set:Nx
+ \l_@@_variant_str \l_keys_key_str
+}
+\cs_new_protected:Nn \_stex_mmtdef_args:n {
+ \str_clear:N \l_stex_symdecl_name_str
+ \str_clear:N \l_stex_symdecl_args_str
+ \str_clear:N \l_stex_symdecl_assoctype_str
+ \str_clear:N \l_stex_symdecl_reorder_str
+ \bool_set_false:N \l_stex_symdecl_local_bool
+ \clist_clear:N \l_stex_symdecl_argnames_clist
+ % \str_clear:N \l_@@_lang_str
+ \str_clear:N \l_@@_variant_str
+ \str_clear:N \l_@@_prec_str
+ \tl_clear:N \l_@@_op_tl
+
+ \keys_set:nn { stex / mmtdef } { #1 }
+}
+
+\NewDocumentCommand \mmtdef {m O{} }{
+ \_stex_mmtdef_args:n{ #2 }
+ \bool_set_true:N \l_stex_symdecl_make_macro_bool
+ \str_if_empty:NT \l_stex_symdecl_name_str {
+ \str_set:Nx \l_stex_symdecl_name_str { #1 }
+ }
+ %\tl_set:Nx \l_stex_symdecl_definiens_tl {
+ % \stex_annotate:nnn{ OMID }{
+ % \l_stex_module_mmtfor_str?\l_stex_symdecl_name_str
+ % }{}
+ %}
+ \stex_symdecl_do:n { #1 }
+ \MMTrule{rules.stex.mmt.kwarc.info?SubstitutionRule}{
+ \stex_annotate:nnn{ OMID }{
+ \l_stex_current_module_str ? \l_stex_symdecl_name_str
+ }{},
+ \stex_annotate:nnn{ OMID }{
+ \l_stex_module_mmtfor_str?\l_stex_symdecl_name_str
+ }{}
+ }
+ \tl_set:Nn \l_stex_notation_after_do_tl {
+ \_@@_final:
+ \stex_smsmode_do:\ignorespacesandpars
+ }
+ \str_set:Nx \l_stex_get_symbol_uri_str {
+ \l_stex_current_module_str ? \l_stex_symdecl_name_str
+ }
+ \exp_args:Nx \stex_notation_do:nnnnn
+ { \prop_item:cn {l_stex_symdecl_\l_stex_get_symbol_uri_str _prop } { args } }
+ { \prop_item:cn { l_stex_symdecl_\l_stex_get_symbol_uri_str _prop } { arity } }
+ { \l_@@_variant_str }
+ { \l_@@_prec_str}
+}
% \end{macrocode}
% \end{macro}
%
@@ -1102,6 +1183,7 @@
op .tl_set:N = \l_@@_op_tl ,
prec .str_set_x:N = \l_@@_prec_str ,
reorder .str_set_x:N = \l_@@_reorder_str ,
+ argnames .clist_set:N = \l_@@_argnames_clist ,
assoc .choices:nn =
{bin,binl,binr,pre,conj,pwconj}
{\str_set:Nx \l_@@_assoctype_str {\l_keys_choice_tl}},
@@ -1120,6 +1202,7 @@
\tl_clear:N \l_@@_type_tl
\tl_clear:N \l_@@_def_tl
\tl_clear:N \l_@@_op_tl
+ \clist_clear:N \l_@@_argnames_clist
\keys_set:nn { stex / vardef } { #1 }
}
@@ -1176,7 +1259,21 @@
\prop_put:Nnx \l_tmpa_prop { assocs } { \int_use:N \l_tmpb_int }
\tl_set:cx { #1 }{ \stex_invoke_variable:n { \l_@@_name_str } }
- \prop_set_eq:cN { l_stex_variable_\l_@@_name_str _prop} \l_tmpa_prop
+ % argnames
+
+ \clist_clear:N \l_tmpa_clist
+ \int_step_inline:nn {\prop_item:Nn \l_tmpa_prop {arity}} {
+ \clist_if_empty:NTF \l_@@_argnames_clist {
+ \clist_put_right:Nn \l_tmpa_clist {##1}
+ }{
+ \clist_pop:NN \l_@@_argnames_clist \l_tmpa_tl
+ \exp_args:NNx \clist_put_right:Nn \l_tmpa_clist {\c_dollar_str\l_tmpa_tl}
+ }
+ }
+ \prop_put:Nnx \l_tmpa_prop {argnames} {\clist_use:Nn \l_tmpa_clist ,}
+
+
+ \prop_set_eq:cN { l_stex_symdecl_var://\l_@@_name_str _prop} \l_tmpa_prop
\tl_if_empty:NF \l_@@_op_tl {
\cs_set:cpx {
@@ -1352,6 +1449,17 @@
\cs_generate_from_arg_count:cNnn {stex_varseq_\l_@@_name_str _cs}
\cs_set:Npn {\int_use:N \l_@@_args_int} { #5 }
+
+ % argnames
+
+ \clist_clear:N \l_tmpa_clist
+ \int_step_inline:nn {\l_@@_args_int} {
+ \clist_put_right:Nn \l_tmpa_clist {##1}
+ }
+ \prop_put:Nnx \l_tmpa_prop {argnames} {\clist_use:Nn \l_tmpa_clist ,}
+
+
+
\exp_args:NNo \tl_set:No \l_tmpa_tl {\use:c{stex_varseq_\l_@@_name_str _cs}}
\int_step_inline:nn \l_@@_args_int {
@@ -1399,6 +1507,8 @@
\expandafter\meaning\csname stex_varseq_\l_@@_name_str _cs\endcsname\\~\\
\prop_to_keyval:N \l_tmpa_prop
}
+ \prop_set_eq:cN {l_stex_symdecl_varseq://\l_@@_name_str _prop}\l_tmpa_prop
+
\stex_if_do_html:T{\stex_annotate_invisible:nnn{varseq}{\l_@@_name_str}{
\tl_if_empty:NF \l_@@_type_tl {
\stex_annotate:nnn {type}{}{$\l_@@_type_tl$}
@@ -1428,10 +1538,63 @@
}}
- \prop_set_eq:cN {stex_varseq_\l_@@_name_str _prop}\l_tmpa_prop
\ignorespacesandpars
}
+
+\keys_define:nn { stex / mmtdecl } {
+ name .str_set_x:N = \l_stex_symdecl_name_str ,
+ args .str_set_x:N = \l_stex_symdecl_args_str ,
+ deprecate .str_set_x:N = \l_stex_symdecl_deprecate_str ,
+ reorder .str_set_x:N = \l_stex_symdecl_reorder_str ,
+ argnames .clist_set:N = \l_stex_symdecl_argnames_clist ,
+ assoc .choices:nn =
+ {bin,binl,binr,pre,conj,pwconj}
+ {\str_set:Nx \l_stex_symdecl_assoctype_str {\l_keys_choice_tl}}
+}
+
+\cs_new_protected:Nn \_stex_mmtdecl_args:n {
+ \str_clear:N \l_stex_symdecl_name_str
+ \str_clear:N \l_stex_symdecl_args_str
+ \str_clear:N \l_stex_symdecl_deprecate_str
+ \str_clear:N \l_stex_symdecl_reorder_str
+ \str_clear:N \l_stex_symdecl_assoctype_str
+ \bool_set_false:N \l_stex_symdecl_local_bool
+ \clist_clear:N \l_stex_symdecl_argnames_clist
+
+ \keys_set:nn { stex / symdecl } { #1 }
+}
+
+\NewDocumentCommand \mmtdecl { s m O{}} {
+ \_stex_mmtdecl_args:n{#3}
+ \IfBooleanTF #1 {
+ \bool_set_false:N \l_stex_symdecl_make_macro_bool
+ } {
+ \bool_set_true:N \l_stex_symdecl_make_macro_bool
+ }
+ \str_if_empty:NT \l_stex_symdecl_name_str {
+ \str_set:Nx \l_stex_symdecl_name_str { #1 }
+ }
+ %\tl_set:Nx \l_stex_symdecl_definiens_tl {
+ % \stex_annotate:nnn{ OMID }{
+ % \l_stex_module_mmtfor_str?\l_stex_symdecl_name_str
+ % }{}
+ %}
+ \stex_symdecl_do:n{#2}
+ \MMTrule{rules.stex.mmt.kwarc.info?SubstitutionRule}{
+ \stex_annotate:nnn{ OMID }{
+ \l_stex_current_module_str ? \l_stex_symdecl_name_str
+ }{},
+ \stex_annotate:nnn{ OMID }{
+ \l_stex_module_mmtfor_str?\l_stex_symdecl_name_str
+ }{}
+ }
+ \stex_smsmode_do:
+}
+
+\stex_deactivate_macro:Nn \mmtdecl {mmtinterface~environments}
+\stex_deactivate_macro:Nn \mmtdef {mmtinterface~environments}
+
% \end{macrocode}
%
% \begin{macrocode}
diff --git a/macros/latex/contrib/stex/source/stex/stex-terms.dtx b/macros/latex/contrib/stex/source/stex/stex-terms.dtx
index 3827466f14..500372bcb4 100644
--- a/macros/latex/contrib/stex/source/stex/stex-terms.dtx
+++ b/macros/latex/contrib/stex/source/stex/stex-terms.dtx
@@ -10,7 +10,7 @@
% TODO update copyright
%
%<*driver>
-\def\bibfolder#1{../../lib/bib/#1}
+\def\libfolder#1{../../lib/#1}
\input{../../doc/stex-docheader}
\begin{document}
@@ -89,8 +89,8 @@
% with (downwards) argument precedence \meta{prec}.
% \end{function}
%
-% \begin{function}{\STEXInternalTermMathAssocArgiiii}
-% \begin{syntax} \cs{stex_term_arg:nnn}\meta{int}\meta{prec}\meta{notation}\meta{body} \end{syntax}
+% \begin{function}{\STEXInternalTermMathAssocArgiiiii}
+% \begin{syntax} \cs{stex_term_arg:nnn}\meta{int}\meta{prec}\meta{notation}\meta{type}\meta{body} \end{syntax}
% Annotates \meta{body} as the \meta{int}th (associative) \emph{sequence} argument
% (as comma-separated list of terms) of the current |OMA| or |OMBIND|,
% with (downwards) argument precedence \meta{prec} and associative
@@ -267,8 +267,10 @@
\def\comp{\_comp}
\str_set:Nn \STEXInternalCurrentSymbolStr { #1 }
\bool_set_false:N \l_stex_allow_semantic_bool
- \_stex_term_oms:nnn {#1}{#1 \c_hash_str CUSTOM-}{
- \comp{ #2 }
+ \stex_mathml_intent:nn{#1}{
+ \_stex_term_oms:nnn {#1}{#1 \c_hash_str CUSTOM-}{
+ \comp{ #2 }
+ }
}
}{
\_stex_reset:N \comp
@@ -382,6 +384,8 @@
}
\prop_new:N \l_@@_custom_args_prop
+\clist_new:N \l_stex_argnames_seq
+\seq_new:N \l_@@_tmp_seq
\cs_new_protected:Nn\_@@_custom_comp:n{\bool_set_false:N \l_stex_allow_semantic_bool\_comp{#1}\bool_set_true:N \l_stex_allow_semantic_bool}
@@ -394,23 +398,47 @@
\prop_get:cnN {
l_stex_symdecl_#1 _prop
}{ args } \l_tmpa_str
+ \exp_args:NNx \seq_set_from_clist:Nn \l_stex_argnames_seq {
+ \prop_item:cn {l_stex_symdecl_#1 _prop}{argnames}
+ }
\prop_put:Nno \l_@@_custom_args_prop {args} \l_tmpa_str
\tl_set:Nn \arg { \_@@_arg: }
\str_if_empty:NTF \l_tmpa_str {
- \_stex_term_oms:nnn {#1}{#1\c_hash_str CUSTOM-}{\ignorespaces#2}
+ \stex_mathml_intent:nn{#1}{
+ \_stex_term_oms:nnn {#1}{#1\c_hash_str CUSTOM-}{\ignorespaces#2}
+ }
}{
- \str_if_in:NnTF \l_tmpa_str b {
- \_stex_term_ombind:nnn {#1}{#1\c_hash_str CUSTOM-\l_tmpa_str}{\ignorespaces#2}
+ \seq_clear:N \l_@@_tmp_seq
+ \exp_args:Nx\int_step_inline:nn{\prop_item:cn{l_stex_symdecl_#1 _prop}{arity}}{
+ \tl_set:Nx \l_@@_tmp_tl {\seq_item:Nn \l_stex_argnames_seq {##1}}
+ \bool_lazy_or:nnT{
+ \str_if_eq_p:nn{a}{\str_item:Nn\l_tmpa_str{##1}}
+ }{
+ \str_if_eq_p:nn{B}{\str_item:Nn\l_tmpa_str{##1}}
+ }{
+ \tl_put_right:Nn \l_@@_tmp_tl +
+ }
+ \seq_put_right:No \l_@@_tmp_seq \l_@@_tmp_tl
+ }
+ \stex_mathml_intent:nn{
+ #1[\prop_item:cn {l_stex_symdecl_#1 _prop}{ args }](
+ \seq_use:Nn \l_@@_tmp_seq ,
+ )
}{
- \str_if_in:NnTF \l_tmpa_str B {
+ \str_if_in:NnTF \l_tmpa_str b {
\_stex_term_ombind:nnn {#1}{#1\c_hash_str CUSTOM-\l_tmpa_str}{\ignorespaces#2}
}{
- \_stex_term_oma:nnn {#1}{#1\c_hash_str CUSTOM-\l_tmpa_str}{\ignorespaces#2}
+ \str_if_in:NnTF \l_tmpa_str B {
+ \_stex_term_ombind:nnn {#1}{#1\c_hash_str CUSTOM-\l_tmpa_str}{\ignorespaces#2}
+ }{
+ \_stex_term_oma:nnn {#1}{#1\c_hash_str CUSTOM-\l_tmpa_str}{\ignorespaces#2}
+ }
}
}
}
% TODO check that all arguments exist
}{
+ \_stex_reset:N \l_stex_argnames_seq
\_stex_reset:N \STEXInternalCurrentSymbolStr
\_stex_reset:N \arg
\_stex_reset:N \comp
@@ -452,15 +480,21 @@
}
}
\exp_args:NNx \prop_put:Nnn \l_@@_custom_args_prop {\int_use:N \l_tmpa_int} {\ignorespaces#3}
- \bool_set_true:N \l_stex_allow_semantic_bool
- \IfBooleanTF#1{
- \stex_annotate_invisible:n { %TODO
+ \bool_if:NTF \l_stex_allow_semantic_bool \use_i:nn {
+ \bool_set_true:N \l_stex_allow_semantic_bool
+ \use:nn
+ }
+ {
+ \stex_mathml_arg:nn{\seq_item:Nn \l_stex_argnames_seq \l_tmpa_int}{
+ \IfBooleanTF#1{
+ \stex_annotate_invisible:n { %TODO
+ \exp_args:No \_stex_term_arg:nn {\l_tmpa_str\int_use:N \l_tmpa_int}{\ignorespaces#3}
+ }
+ }{ %TODO
\exp_args:No \_stex_term_arg:nn {\l_tmpa_str\int_use:N \l_tmpa_int}{\ignorespaces#3}
}
- }{ %TODO
- \exp_args:No \_stex_term_arg:nn {\l_tmpa_str\int_use:N \l_tmpa_int}{\ignorespaces#3}
- }
- \bool_set_false:N \l_stex_allow_semantic_bool
+ }}
+ {\bool_set_false:N \l_stex_allow_semantic_bool}
}
@@ -473,35 +507,37 @@
\cs_new_protected:Npn \STEXInternalTermMathArgiii #1#2#3 {
\exp_args:Nnx \use:nn
{ \int_set:Nn \l_@@_downprec { #2 }
+ \stex_mathml_arg:nn{\seq_item:Nn \l_stex_argnames_seq \l_tmpa_int}{
\_stex_term_arg:nn { #1 }{ #3 }
+ }
}
{ \int_set:Nn \exp_not:N \l_@@_downprec { \int_use:N \l_@@_downprec } }
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\STEXInternalTermMathAssocArgiiii}
+% \begin{macro}{\STEXInternalTermMathAssocArgiiiii}
% \begin{macrocode}
-\cs_new_protected:Npn \STEXInternalTermMathAssocArgiiii #1#2#3#4 {
+\cs_new_protected:Npn \STEXInternalTermMathAssocArgiiiii #1#2#3#4#5 {
\cs_set:Npn \l_tmpa_cs ##1 ##2 { #4 }
- \tl_set:Nn \l_tmpb_tl {\STEXInternalTermMathArgiii{#1}{#2}}
+ \tl_set:Nn \l_tmpb_tl {\STEXInternalTermMathArgiii{#5#1}{#2}}
\tl_if_empty:nTF { #3 }{
- \STEXInternalTermMathArgiii{#1}{#2}{}
+ \STEXInternalTermMathArgiii{#5#1}{#2}{}
}{
\exp_args:Nx \tl_if_empty:nTF { \tl_tail:n{ #3 }}{
\expandafter\if\expandafter\relax\noexpand#3
- \tl_set:Nn \l_tmpa_tl {\_@@_math_assoc_arg_maybe_sequence:Nn#3{#1}}
+ \tl_set:Nn \l_tmpa_tl {\_@@_math_assoc_arg_maybe_sequence:Nnn#3{#1}{#5}}
\else
- \tl_set:Nn \l_tmpa_tl {\_@@_math_assoc_arg_simple:nn{#1}{#3}}
+ \tl_set:Nn \l_tmpa_tl {\_@@_math_assoc_arg_simple:nnn{#1}{#3}{#5}}
\fi
\l_tmpa_tl
}{
- \_@@_math_assoc_arg_simple:nn{#1}{#3}
+ \_@@_math_assoc_arg_simple:nnn{#1}{#3}{#5}
}
}
}
-\cs_new_protected:Nn \_@@_math_assoc_arg_maybe_sequence:Nn {
+\cs_new_protected:Nn \_@@_math_assoc_arg_maybe_sequence:Nnn {
\str_set:Nx \l_tmpa_str { \cs_argument_spec:N #1 }
\str_if_empty:NTF \l_tmpa_str {
\exp_args:Nx \cs_if_eq:NNTF {
@@ -509,7 +545,7 @@
} \stex_invoke_sequence:n {
\tl_set:Nx \l_tmpa_tl {\tl_tail:N #1}
\str_set:Nx \l_tmpa_str {\exp_after:wN \use:n \l_tmpa_tl}
- \tl_set:Nx \l_tmpa_tl {\prop_item:cn {stex_varseq_\l_tmpa_str _prop}{notation}}
+ \tl_set:Nx \l_tmpa_tl {\prop_item:cn {l_stex_symdecl_varseq://\l_tmpa_str _prop}{notation}}
\exp_args:NNo \seq_set_from_clist:Nn \l_tmpa_seq \l_tmpa_tl
\tl_set:Nx \l_tmpa_tl {{\exp_not:N \exp_not:n{
\exp_not:n{\exp_args:Nnx \use:nn} {
@@ -525,7 +561,7 @@
}
}
}}}
- \exp_args:Nno \use:nn {\seq_set_map:NNn \l_tmpa_seq \l_tmpa_seq} \l_tmpa_tl
+ \exp_args:Nno \use:n {\seq_set_map:NNn \l_tmpa_seq \l_tmpa_seq} \l_tmpa_tl
\seq_reverse:N \l_tmpa_seq
\seq_pop:NN \l_tmpa_seq \l_tmpa_tl
\seq_map_inline:Nn \l_tmpa_seq {
@@ -541,28 +577,38 @@
}
\exp_args:No\l_tmpb_tl\l_tmpa_tl
}{
- \_@@_math_assoc_arg_simple:nn{#2} { #1 }
+ \_@@_math_assoc_arg_simple:nnn{#2} { #1 }{#3}
}
} {
- \_@@_math_assoc_arg_simple:nn{#2} { #1 }
+ \_@@_math_assoc_arg_simple:nnn{#2} { #1 }{#3}
}
}
-\cs_new_protected:Nn \_@@_math_assoc_arg_simple:nn {
+\cs_new_protected:Nn \_@@_math_assoc_arg_simple:nnn {
\clist_set:Nn \l_tmpa_clist{ #2 }
\int_compare:nNnTF { \clist_count:N \l_tmpa_clist } < 2 {
- \tl_set:Nn \l_tmpa_tl { \_stex_term_arg:nn{A#1}{ #2 } }
+ \tl_set:Nn \l_tmpa_tl {
+ \stex_mathml_arg:nn{\seq_item:Nn \l_stex_argnames_seq #1}{
+ \_stex_term_arg:nn{A#3#1}{ #2 } }
+ }
}{
\clist_reverse:N \l_tmpa_clist
\clist_pop:NN \l_tmpa_clist \l_tmpa_tl
- \tl_set:Nx \l_tmpa_tl { \_stex_term_arg:nn{A#1}{
- \exp_args:No \exp_not:n \l_tmpa_tl
+ \tl_set:Nx \l_tmpa_tl {
+ \stex_mathml_arg:nn{\seq_item:Nn \l_stex_argnames_seq #1}{
+ \_stex_term_arg:nn{A#3#1}{
+ \exp_args:No \exp_not:n \l_tmpa_tl
+ }
}}
\clist_map_inline:Nn \l_tmpa_clist {
\exp_args:NNNo \exp_args:NNo \tl_set:No \l_tmpa_tl {
\exp_args:Nno
- \l_tmpa_cs { \_stex_term_arg:nn{A#1}{##1} } \l_tmpa_tl
+ \l_tmpa_cs {
+ \stex_mathml_arg:nn{\seq_item:Nn \l_stex_argnames_seq #1}{
+ \_stex_term_arg:nn{A#3#1}{##1}
+ }
+ } \l_tmpa_tl
}
}
}
@@ -679,7 +725,9 @@
\cs_new_protected:Npn \STEXInternalTermMathOMSiiii #1#2#3#4 {
\_@@_maybe_brackets:nn { #3 }{
- \_stex_term_oms:nnn { #1 } { #1\c_hash_str#2 } { #4 }
+ \stex_mathml_intent:nn{#1} {
+ \_stex_term_oms:nnn { #1 } { #1\c_hash_str#2 } { #4 }
+ }
}
}
% \end{macrocode}
@@ -704,8 +752,35 @@
}
\cs_new_protected:Npn \STEXInternalTermMathOMAiiii #1#2#3#4 {
+ \exp_args:Nnx \use:nn {
+ \seq_clear:N \l_@@_tmp_seq
+ \prop_if_exist:cT{l_stex_symdecl_#1 _prop}{
+ \exp_args:NNx \seq_set_from_clist:Nn \l_stex_argnames_seq {
+ \prop_item:cn {l_stex_symdecl_#1 _prop}{argnames}
+ }
+ \exp_args:Nx\int_step_inline:nn{\prop_item:cn{l_stex_symdecl_#1 _prop}{arity}}{
+ \tl_set:Nx \l_@@_tmp_tl {\seq_item:Nn \l_stex_argnames_seq {##1}}
+ \bool_lazy_or:nnT{
+ \str_if_eq_p:nn{a}{\str_item:Nn\l_tmpa_str{##1}}
+ }{
+ \str_if_eq_p:nn{B}{\str_item:Nn\l_tmpa_str{##1}}
+ }{
+ \tl_put_right:Nn \l_@@_tmp_tl +
+ }
+ \seq_put_right:No \l_@@_tmp_seq \l_@@_tmp_tl
+ }
+ }
\_@@_maybe_brackets:nn { #3 }{
- \_stex_term_oma:nnn { #1 } { #1\c_hash_str#2 } { #4 }
+ \stex_mathml_intent:nn{
+ #1[\prop_item:cn {l_stex_symdecl_#1 _prop}{ args }](
+ \seq_use:Nn \l_@@_tmp_seq ,
+ )
+ }{
+ \_stex_term_oma:nnn { #1 } { #1\c_hash_str#2 } { #4 }
+ }
+ }
+ }{
+ \_stex_reset:N \l_stex_argnames_seq
}
}
% \end{macrocode}
@@ -720,8 +795,35 @@
}
\cs_new_protected:Npn \STEXInternalTermMathOMBiiii #1#2#3#4 {
+ \exp_args:Nnx \use:nn {
+ \seq_clear:N \l_@@_tmp_seq
+ \prop_if_exist:cT{l_stex_symdecl_#1 _prop}{
+ \exp_args:NNx \seq_set_from_clist:Nn \l_stex_argnames_seq {
+ \prop_item:cn {l_stex_symdecl_#1 _prop}{argnames}
+ }
+ \exp_args:Nx\int_step_inline:nn{\prop_item:cn{l_stex_symdecl_#1 _prop}{arity}}{
+ \tl_set:Nx \l_@@_tmp_tl {\seq_item:Nn \l_stex_argnames_seq {##1}}
+ \bool_lazy_or:nnT{
+ \str_if_eq_p:nn{a}{\str_item:Nn\l_tmpa_str{##1}}
+ }{
+ \str_if_eq_p:nn{B}{\str_item:Nn\l_tmpa_str{##1}}
+ }{
+ \tl_put_right:Nn \l_@@_tmp_tl +
+ }
+ \seq_put_right:No \l_@@_tmp_seq \l_@@_tmp_tl
+ }
+ }
\_@@_maybe_brackets:nn { #3 }{
- \_stex_term_ombind:nnn { #1 } { #1\c_hash_str#2 } { #4 }
+ \stex_mathml_intent:nn{
+ #1[\prop_item:cn {l_stex_symdecl_#1 _prop}{ args }](
+ \seq_use:Nn \l_@@_tmp_seq ,
+ )
+ }{
+ \_stex_term_ombind:nnn { #1 } { #1\c_hash_str#2 } { #4 }
+ }
+ }
+ }{
+ \_stex_reset:N \l_stex_argnames_seq
}
}
% \end{macrocode}
@@ -990,7 +1092,7 @@
\_stex_reset:N \STEXInternalCurrentSymbolStr
}
}{
- \int_compare:nNnTF {\prop_item:cn {l_stex_variable_#1_prop}{arity}} = 0{
+ \int_compare:nNnTF {\prop_item:cn {l_stex_symdecl_var://#1_prop}{arity}} = 0{
\_@@_invoke_math_ii:n {#1}
}{
\msg_error:nnxx{stex}{error/noop}{variable~#1}{}
@@ -1024,7 +1126,7 @@
\prop_clear:N \l__stex_terms_custom_args_prop
\prop_put:Nnn \l__stex_terms_custom_args_prop {currnum} {1}
\prop_get:cnN {
- l_stex_variable_#1 _prop
+ l_stex_symdecl_var://#1 _prop
}{ args } \l_tmpa_str
\prop_put:Nno \l__stex_terms_custom_args_prop {args} \l_tmpa_str
\tl_set:Nn \arg { \__stex_terms_arg: }
@@ -1063,7 +1165,7 @@
\exp_args:Nnx \use:nn {
\def\comp{\_varcomp}
\str_set:Nn \STEXInternalCurrentSymbolStr {varseq://#1}
- \prop_item:cn{stex_varseq_#1_prop}{notation}
+ \prop_item:cn{l_stex_symdecl_varseq://#1_prop}{notation}
}{
\_stex_reset:N \comp
\_stex_reset:N \STEXInternalCurrentSymbolStr
diff --git a/macros/latex/contrib/stex/tex/etc/beamernotesthemesTeX.sty b/macros/latex/contrib/stex/tex/etc/beamernotesthemesTeX.sty
deleted file mode 100644
index af1c0c2a4c..0000000000
--- a/macros/latex/contrib/stex/tex/etc/beamernotesthemesTeX.sty
+++ /dev/null
@@ -1,14 +0,0 @@
-% Beamer sTeX notes theme;
-% Copyright (c) 2022 Michael Kohlhase <michael.kohlhase@fau.de>.
-\ProvidesPackage{beamernotestheme-sTeX}
-\typeout{Beamer sTeX notes theme}
-\setbeamertemplate{theorem begin}
-{%
- \inserttheoremheadfont
- \inserttheoremname
- \inserttheoremnumber
- \ifx \inserttheoremaddition \empty \else\ (\inserttheoremaddition)\fi
- \inserttheorempunctuation\xspace
- \inserttheorembodyfont
-}
-\setbeamertemplate{theorem end}{}
diff --git a/macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty b/macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty
index d7b861086a..85fd253eeb 100644
--- a/macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty
+++ b/macros/latex/contrib/stex/tex/etc/beamerthemesTeX.sty
@@ -1,25 +1,58 @@
% Beamer sTeX slide theme;
% Copyright (c) 20 Michael Kohlhase <michael.kohlhase@fau.de>.
-\ProvidesPackage{beamertheme-sTeX}
+\ProvidesPackage{beamerthemesTeX}
\typeout{Beamer sTeX theme}
\RequirePackage{xspace}
+\RequirePackage{xcolor}
+\RequirePackage{stex}
-% General appearance of theorems, like "ams style", but without the block env.
-\setbeamertemplate{theorem begin}
-{%
- \inserttheoremheadfont
- \inserttheoremname
- \inserttheoremnumber
- \ifx \inserttheoremaddition \empty \else\ (\inserttheoremaddition)\fi
- \inserttheorempunctuation\xspace
- \inserttheorembodyfont
+\ExplSyntaxOn
+\protected\def\stexbeamerthm#1#2#3#4#5#6#7#8{
+ \newcounter{#1}
+ \tl_if_empty:nF{#4}{
+ \tl_set:cn{the#1}{
+ \use:c{the#4}.\arabic{#1}
+ }
+ }
+ \tl_set:cn{#1autorefname}{#6}
+
+ \newenvironment{#1}{
+ \ifhmode\par\fi
+
+ \tl_if_empty:nF{#5}{
+ \setcounter{#1}{\value{#5}}
+ \stepcounter{#5}
+ }
+ \refstepcounter{#1}
+ \noindent#7{
+ #6~\use:c{the#1}
+ \tl_if_empty:cF{s#2title}{
+ {}~(\csname s#2title\endcsname)
+ }.
+ }
+ #8
+ }{\par}
+ \csname stexpatch#2\endcsname[#3]{\begin{#1}}{\end{#1}}
}
-\setbeamertemplate{theorem end}{}
+\ExplSyntaxOff
+
+\stexbeamerthm{theorem}{assertion}{theorem}{section}{}{Theorem}\textbf\itshape
+\stexbeamerthm{observation}{assertion}{observation}{section}{theorem}{Observation}\textbf\itshape
+\stexbeamerthm{corollary}{assertion}{corollary}{section}{theorem}{Corollary}\textbf\itshape
+\stexbeamerthm{lemma}{assertion}{lemma}{section}{theorem}{Lemma}\textbf\itshape
+\stexbeamerthm{axiom}{assertion}{axiom}{section}{theorem}{Axiom}\textbf\itshape
+\stexbeamerthm{remark}{assertion}{remark}{section}{theorem}{Remark}\emph{}
+\stexpatchparagraph[remark]{\begin{remark}}{\end{remark}}
+\stexbeamerthm{example}{example}{}{section}{theorem}{Example}\textbf{}
+\stexbeamerthm{definition}{definition}{}{section}{theorem}{Definition}\textbf{}
+
% THEME
\mode
<presentation>
+\sffamily
+
\ifcsname slidelogo\endcsname\else
\newsavebox\slidelogo
\sbox\slidelogo{\sTeX}
@@ -64,3 +97,42 @@
\setlength\leftmarginii{1em}
\setlength\leftmarginiii{1em}
\providecommand{\vstretch}[1]{\vspace*{\stretch{#1}}}
+
+%% set the colors for sTeX content highlighting
+
+\def\compemph#1{\ifcsname textcolor\endcsname\textcolor{SteelBlue}{#1}\else#1\fi}
+\def\symrefemph#1{\ifcsname textcolor\endcsname\textcolor{SteelBlue}{#1}\else#1\fi}
+\def\defemph#1{\ifcsname textcolor\endcsname\textcolor{magenta}{#1}\else\textbf{#1}\fi}
+\def\varemph#1{\ifcsname textcolor\endcsname\textcolor{gray}{#1}\else#1\fi}
+\def\titleemph#1{\ifcsname textcolor\endcsname\textcolor{blue}{#1}\else\textbf{#1}\fi}
+
+%% set PDF tooltips
+\RequirePackage{pdfcomment}
+\protected\def\compemph@uri#1#2{%
+ \pdftooltip{%
+ \srefsymuri{#2}{\compemph{#1}}%
+ }{%
+ URI:~\detokenize{#2}%
+ }%
+}
+\protected\def\symrefemph@uri#1#2{%
+ \pdftooltip{%
+ \srefsymuri{#2}{\symrefemph{#1}}%
+ }{%
+ URI:~\detokenize{#2}%
+ }%
+}
+\protected\def\defemph@uri#1#2{%
+ \pdftooltip{%
+ \defemph{#1}%
+ }{%
+ URI:~\detokenize{#2}%
+ }%
+}
+\protected\def\varemph@uri#1#2{%
+ \pdftooltip{%
+ \varemph{#1}%
+ }{%
+ Variable~\detokenize{#2}%
+ }%
+} \ No newline at end of file
diff --git a/macros/latex/contrib/stex/tex/etc/stex-backend-pdflatex.cfg b/macros/latex/contrib/stex/tex/etc/stex-backend-pdflatex.cfg
index bdd2810d09..484f930db6 100644
--- a/macros/latex/contrib/stex/tex/etc/stex-backend-pdflatex.cfg
+++ b/macros/latex/contrib/stex/tex/etc/stex-backend-pdflatex.cfg
@@ -1,6 +1,8 @@
\tl_const:Nx \c_stex_html_emptyarg_tl {~}
\cs_new_protected:Nn \stex_annotate:nnn {#3}
+\cs_new_protected:Nn \stex_mathml_intent:nn { #2 }
+\cs_new_protected:Nn \stex_mathml_arg:nn { #2 }
\cs_new_protected:Nn \stex_annotate_invisible:n {}
\cs_new_protected:Nn \stex_annotate_invisible:nnn {}
\NewDocumentEnvironment{stex_annotate_env} { m m } {}{}
diff --git a/macros/latex/contrib/stex/tex/etc/stex-backend-rustex.cfg b/macros/latex/contrib/stex/tex/etc/stex-backend-rustex.cfg
index 3f48631e40..c9ad36613b 100644
--- a/macros/latex/contrib/stex/tex/etc/stex-backend-rustex.cfg
+++ b/macros/latex/contrib/stex/tex/etc/stex-backend-rustex.cfg
@@ -20,6 +20,16 @@
}
}
}
+\cs_new_protected:Nn \stex_mathml_intent:nn {
+ \rustex_annotate_HTML:nn {
+ mml:intent="#1"
+ }{ #2 }
+}
+\cs_new_protected:Nn \stex_mathml_arg:nn {
+ \rustex_annotate_HTML:nn {
+ mml:arg="#1"
+ }{ #2 }
+}
\cs_new_protected:Nn \stex_annotate_invisible:n {
\_stex_html_checkempty:n { #1 }
diff --git a/macros/latex/contrib/stex/tex/etc/stex-backend-tex4ht.cfg b/macros/latex/contrib/stex/tex/etc/stex-backend-tex4ht.cfg
new file mode 100644
index 0000000000..b4c39b50b7
--- /dev/null
+++ b/macros/latex/contrib/stex/tex/etc/stex-backend-tex4ht.cfg
@@ -0,0 +1,13 @@
+% TODO
+\tl_const:Nx \c_stex_html_emptyarg_tl {~}
+
+\cs_new_protected:Nn \stex_annotate:nnn {#3} % TODO
+\cs_new_protected:Nn \stex_mathml_intent:nn { #2 } % TODO
+\cs_new_protected:Nn \stex_mathml_arg:nn { #2 } % TODO
+\cs_new_protected:Nn \stex_annotate_invisible:n {} % TODO
+\cs_new_protected:Nn \stex_annotate_invisible:nnn {} % TODO
+\NewDocumentEnvironment{stex_annotate_env} { m m } {}{} % TODO
+
+\prg_new_conditional:Nnn \stex_html_backend: {p, T, F, TF} {
+ \prg_return_true:
+} \ No newline at end of file
diff --git a/macros/latex/contrib/stex/tex/etc/stexthm.sty b/macros/latex/contrib/stex/tex/etc/stexthm.sty
index 16931b514a..c81b6358df 100644
--- a/macros/latex/contrib/stex/tex/etc/stexthm.sty
+++ b/macros/latex/contrib/stex/tex/etc/stexthm.sty
@@ -4,51 +4,53 @@
\RequirePackage{amsthm}
\RequirePackage{thmtools}
+\ExplSyntaxOn
+
\declaretheorem[parent=section]{theorem}
\stexpatchassertion[theorem]
-{\ifx\sassertiontitle\@empty\begin{theorem}\else\begin{theorem}[\sassertiontitle]\fi}
+{\ifx\sassertiontitle\@empty\begin{theorem}\else\exp_args:Nno\use:nn{\begin{theorem}[}\sassertiontitle]\fi}
{\end{theorem}}
\declaretheorem[sibling=theorem]{observation}
\stexpatchassertion[observation]
-{\ifx\sassertiontitle\@empty\begin{observation}\else\begin{observation}[\sassertiontitle]\fi}
+{\ifx\sassertiontitle\@empty\begin{observation}\else\exp_args:Nno\use:nn{\begin{observation}[}\sassertiontitle]\fi}
{\end{observation}}
\declaretheorem[sibling=theorem]{corollary}
\stexpatchassertion[corollary]
-{\ifx\sassertiontitle\@empty\begin{corollary}\else\begin{corollary}[\sassertiontitle]\fi}
+{\ifx\sassertiontitle\@empty\begin{corollary}\else\exp_args:Nno\use:nn{\begin{corollary}[}\sassertiontitle]\fi}
{\end{corollary}}
\declaretheorem[sibling=theorem]{lemma}
\stexpatchassertion[lemma]
-{\ifx\sassertiontitle\@empty\begin{lemma}\else\begin{lemma}[\sassertiontitle]\fi}
+{\ifx\sassertiontitle\@empty\begin{lemma}\else\exp_args:Nno\use:nn{\begin{lemma}[}\sassertiontitle]\fi}
{\end{lemma}}
\declaretheorem[sibling=theorem]{axiom}
\stexpatchassertion[axiom]
-{\ifx\sassertiontitle\@empty\begin{axiom}\else\begin{axiom}[\sassertiontitle]\fi}
+{\ifx\sassertiontitle\@empty\begin{axiom}\else\exp_args:Nno\use:nn{\begin{axiom}[}\sassertiontitle]\fi}
{\end{axiom}}
\declaretheorem[sibling=theorem,style=remark]{remark}
\stexpatchassertion[remark]
-{\ifx\sassertiontitle\@empty\begin{remark}\else\begin{remark}[\sassertiontitle]\fi}
+{\ifx\sassertiontitle\@empty\begin{remark}\else\exp_args:Nno\use:nn{\begin{remark}[}\sassertiontitle]\fi}
{\end{remark}}
\stexpatchparagraph[remark]
-{\ifx\sparagraphtitle\@empty\begin{remark}\else\begin{remark}[\sparagraphtitle]\fi}
+{\ifx\sparagraphtitle\@empty\begin{remark}\else\exp_args:Nno\use:nn{\begin{remark}[}\sparagraphtitle]\fi}
{\end{remark}}
\declaretheorem[sibling=theorem,style=definition]{example}
\stexpatchexample
-{\ifx\sexampletitle\@empty\begin{example}\else\begin{example}[\sexampletitle]\fi}
+{\ifx\sexampletitle\@empty\begin{example}\else\exp_args:Nno\use:nn{\begin{example}[}\sexampletitle]\fi}
{\end{example}}
\declaretheorem[sibling=theorem,style=definition]{definition}
\stexpatchdefinition
-{\ifx\sdefinitiontitle\@empty\begin{definition}\else\begin{definition}[\sdefinitiontitle]\fi}
+{\ifx\sdefinitiontitle\@empty\begin{definition}\else\exp_args:Nno\use:nn{\begin{definition}[}\sdefinitiontitle]\fi}
{\end{definition}}
-
-\RequirePackage{pdfcomment}
+\ExplSyntaxOff
+
\RequirePackage{xcolor}
\def\compemph#1{\ifcsname textcolor\endcsname\textcolor{blue}{#1}\else#1\fi}
@@ -56,31 +58,32 @@
\def\defemph#1{\ifcsname textcolor\endcsname\textcolor{blue}{\textbf{#1}}\else\textbf{#1}\fi}
\def\varemph#1{\ifcsname textcolor\endcsname\textcolor{gray}{#1}\else#1\fi}
+\RequirePackage{pdfcomment}
\protected\def\compemph@uri#1#2{%
- \pdftooltip{%
- \srefsymuri{#2}{\compemph{#1}}%
- }{%
- URI:~\detokenize{#2}%
- }%
+ \pdftooltip{%
+ \srefsymuri{#2}{\compemph{#1}}%
+ }{%
+ URI:~\detokenize{#2}%
+ }%
}
\protected\def\symrefemph@uri#1#2{%
- \pdftooltip{%
- \srefsymuri{#2}{\symrefemph{#1}}%
- }{%
- URI:~\detokenize{#2}%
- }%
-}
+ \pdftooltip{%
+ \srefsymuri{#2}{\symrefemph{#1}}%
+ }{%
+ URI:~\detokenize{#2}%
+ }%
+ }
\protected\def\defemph@uri#1#2{%
- \pdftooltip{%
- \defemph{#1}%
- }{%
- URI:~\detokenize{#2}%
- }%
+ \pdftooltip{%
+ \defemph{#1}%
+ }{%
+ URI:~\detokenize{#2}%
+ }%
}
\protected\def\varemph@uri#1#2{%
- \pdftooltip{%
- \varemph{#1}%
- }{%
- Variable~\detokenize{#2}%
- }%
-} \ No newline at end of file
+ \pdftooltip{%
+ \varemph{#1}%
+ }{%
+ Variable~\detokenize{#2}%
+ }%
+}
diff --git a/macros/latex/contrib/stex/tex/ldf/problem-ngerman.ldf b/macros/latex/contrib/stex/tex/ldf/problem-ngerman.ldf
index d53bed5591..6cadab0850 100644
--- a/macros/latex/contrib/stex/tex/ldf/problem-ngerman.ldf
+++ b/macros/latex/contrib/stex/tex/ldf/problem-ngerman.ldf
@@ -14,4 +14,6 @@
\def\prob@note@kw{Bewertung}
\def\prob@pt@kw{Pkt}
\def\prob@min@kw{Min}
+\def\prob@correct@kw{Korrekt}
+\def\prob@wrong@kw{Falsch}
}
diff --git a/macros/luatex/latex/luatruthtable/README.txt b/macros/luatex/latex/luatruthtable/README.txt
new file mode 100644
index 0000000000..60217b2ce6
--- /dev/null
+++ b/macros/luatex/latex/luatruthtable/README.txt
@@ -0,0 +1,9 @@
+# Introduction
+The luatruthtable package is developed to generate Truth Tables of boolean values in LaTeX. It provides an easy way for generating truth tables in LaTeX . There is no need of special environment in the package for generation of Truth Tables. It is written in lua and tex file is to be compiled with LuaLatex engine. The time required for operations is no issue while compiling with LuaLaTeX. There is no need to install lua on users system as tex distributions (TeXLive or MikTeX) come bundled with LuaLaTeX. It is useful for generation of Truth Tables in tex file itself. The package supports nesting of commands for multiple operations. It can be modified or extended by writing custom lua programs.
+
+# License
+The luatruthtable package is released under the LaTeX Project Public License v1.3c or later. The complete license text is available at http://www.latex-project.org/lppl.txt.
+It is developed in lua. Lua is certified open source software available. Its license is simple and liberal which is compatible with GPL.
+
+#Installation and Inclusion
+The installation of luatruthtable package is similar to plain latex package where luatruthtable.sty file is in LaTeX directory of texmf tree. The package can be used by including the command \usepackage{luatruthtable} in the preamble of latex document.The tex file is to be compiled using the LuaLaTeX engine. \ No newline at end of file
diff --git a/macros/luatex/latex/luatruthtable/luatruthtable.bib b/macros/luatex/latex/luatruthtable/luatruthtable.bib
new file mode 100644
index 0000000000..81ee09ad4d
--- /dev/null
+++ b/macros/luatex/latex/luatruthtable/luatruthtable.bib
@@ -0,0 +1,20 @@
+
+
+
+@online{online.latextruthtable,
+ title = {Macro for automating truth tables in LaTeX},
+ url = {https://tex.stackexchange.com/questions/505994},
+ note = {visited on 2022-02-22}
+}
+
+
+@online{online.luacustomoperator,
+ title = {Lua Custom Operator},
+ url = {http://lua-users.org/wiki/CustomOperators},
+ note = {visited on 2022-02-22}
+}
+
+
+
+
+
diff --git a/macros/luatex/latex/luatruthtable/luatruthtable.pdf b/macros/luatex/latex/luatruthtable/luatruthtable.pdf
new file mode 100644
index 0000000000..3e8a60bf51
--- /dev/null
+++ b/macros/luatex/latex/luatruthtable/luatruthtable.pdf
Binary files differ
diff --git a/macros/luatex/latex/luatruthtable/luatruthtable.sty b/macros/luatex/latex/luatruthtable/luatruthtable.sty
new file mode 100644
index 0000000000..1b940c48c9
--- /dev/null
+++ b/macros/luatex/latex/luatruthtable/luatruthtable.sty
@@ -0,0 +1,286 @@
+% luaset package
+% version 1.0
+% Licensed under LaTeX Project Public License v1.3c or later. The complete license text is available at http://www.latex-project.org/lppl.txt.
+%Authors: Chetan Shirore and Dr. Ajit Kumar
+
+\ProvidesPackage{luatruthtable}[1.0]
+\RequirePackage{xkeyval}
+\RequirePackage{amsmath}
+\RequirePackage{luacode}
+\begin{luacode*}
+local function toBinary(x,y)
+ y = y or math.max(1, select(2, math.frexp(x)))
+ local res = {}
+ for i = y, 1, -1 do
+ res[i] = math.fmod(x, 2)
+ x = math.floor((x - res[i]) / 2)
+ end
+ return res
+end
+
+local function _not(a)
+ if a ==0 then return 1
+ else return 0 end
+end
+
+local lognot = {}
+
+local not_mt= {
+ __mul = function(a,b)
+ return _not(b)
+
+ end
+}
+
+setmetatable(lognot, not_mt)
+_G.lognot = lognot
+
+local function _and(a, b)
+ if a == 1 and b == 1 then return 1
+ else return 0 end
+end
+
+local tmp1 = {}
+local logand = {}
+
+local and_mt= {
+ __mul = function(a,b)
+ if b==logand then
+ tmp1[1]=a
+ return tmp1
+ elseif a == tmp1 then
+ return _and(tmp1[1], b)
+ end
+ end
+}
+
+setmetatable(tmp1, and_mt)
+setmetatable(logand, and_mt)
+_G.logand = logand
+
+local function _or(a, b)
+ if a == 0 and b == 0 then return 0
+ else return 1 end
+end
+
+local tmp2 = {}
+local logor = {}
+
+local or_mt= {
+ __mul = function(a,b)
+ if b==logor then
+ tmp2[1]=a
+ return tmp2
+ elseif a == tmp2 then
+ return _or(tmp2[1], b)
+ end
+ end
+}
+
+setmetatable(tmp2, or_mt)
+setmetatable(logor, or_mt)
+_G.logor = logor
+
+local function _imp(a, b)
+ if a == 1 and b == 0 then return 0
+ else return 1 end
+end
+
+local tmp3 = {}
+local imp = {}
+
+local imp_mt= {
+ __mul = function(a,b)
+ if b==imp then
+ tmp3[1]=a
+ return tmp3
+ elseif a == tmp3 then
+ return _imp(tmp3[1], b)
+ end
+ end
+}
+
+setmetatable(tmp3, imp_mt)
+setmetatable(imp, imp_mt)
+_G.imp = imp
+
+local function _iff(a, b)
+ if a == b then return 1
+ else return 0 end
+end
+
+local tmp4 = {}
+local iff = {}
+
+local iff_mt= {
+ __mul = function(a,b)
+ if b==iff then
+ tmp4[1]=a
+ return tmp4
+ elseif a == tmp4 then
+ return _iff(tmp4[1], b)
+ end
+ end
+}
+
+setmetatable(tmp4, iff_mt)
+setmetatable(iff, iff_mt)
+_G.iff = iff
+
+local function _xor(a, b)
+ if a ~= b then return 1
+ else return 0 end
+end
+
+local tmp5 = {}
+local logxor = {}
+
+local xor_mt= {
+ __mul = function(a,b)
+ if b==logxor then
+ tmp5[1]=a
+ return tmp5
+ elseif a == tmp5 then
+ return _xor(tmp5[1], b)
+ end
+ end
+}
+
+setmetatable(tmp5, xor_mt)
+setmetatable(logxor, xor_mt)
+_G.logxor = logxor
+
+local function _nand(a, b)
+ if a ==1 and b == 1 then return 0
+ else return 1 end
+end
+
+local tmp6 = {}
+local lognand = {}
+
+local nand_mt= {
+ __mul = function(a,b)
+ if b==lognand then
+ tmp6[1]=a
+ return tmp6
+ elseif a == tmp6 then
+ return _nand(tmp6[1], b)
+ end
+ end
+}
+
+setmetatable(tmp6, nand_mt)
+setmetatable(lognand, nand_mt)
+_G.lognand = lognand
+
+local function _nor(a, b)
+ if a ==0 and b == 0 then return 1
+ else return 0 end
+end
+
+local tmp7 = {}
+local lognor = {}
+
+local nor_mt= {
+ __mul = function(a,b)
+ if b==lognor then
+ tmp7[1]=a
+ return tmp7
+ elseif a == tmp7 then
+ return _nor(tmp7[1], b)
+ end
+ end
+}
+
+setmetatable(tmp7, nor_mt)
+setmetatable(lognor, nor_mt)
+_G.lognor = lognor
+
+local function _xnor(a, b)
+ if a == b then return 1
+ else return 0 end
+end
+
+local tmp8 = {}
+local logxnor = {}
+
+local xnor_mt= {
+ __mul = function(a,b)
+ if b==logxnor then
+ tmp8[1]=a
+ return tmp8
+ elseif a == tmp8 then
+ return _xnor(tmp8[1], b)
+ end
+ end
+}
+
+setmetatable(tmp8, xnor_mt)
+setmetatable(logxnor, xnor_mt)
+_G.logxnor = logxnor
+
+function truthTable(str0,str,trtext,fltext)
+local eval=""
+local names={lognot=lognot,logand=logand,logor=logor, imp=imp,
+ iff=iff, logxor=logxor,lognand=lognand,lognor=lognor, logxnor=logxnor}
+local vars={}
+local expr={}
+local countexp = 1
+local countvars =1
+local res=""
+local sep=" & "
+trtext = trtext or "$T$"
+fltext = fltext or "$F$"
+for variables in string.gmatch(str0, '([^,]+)') do
+ vars[countvars] = variables
+ countvars = countvars + 1
+end
+
+for subexp in string.gmatch(str, '([^,]+)') do
+ expr[countexp] = subexp
+ countexp = countexp + 1
+end
+
+local n =#vars
+for i =1,2^n do
+ itr = toBinary(i,n)
+
+ for j=1, #itr do
+ names[vars[j]] = itr[j]
+end
+
+ for k = 1, #expr do
+ res= res ..sep.. load("return " .. expr[k],nil,"t",names)()
+ end
+if i~=2^n then
+eval = eval .. table.concat(toBinary(i,n)," & ") .. res .."\\\\"
+else
+eval = eval .. table.concat(toBinary(i,n)," & ") .. res
+end
+ res=""
+end
+
+if trtext:gsub("%s+", "") =="0" or trtext:gsub("%s+", "") == "$0$"
+or fltext:gsub("%s+", "") =="1" or fltext:gsub("%s+", "") == "$1$"
+then
+eval=eval
+else
+eval=eval:gsub(0,fltext):gsub(1,trtext)
+end
+return eval
+end
+
+\end{luacode*}
+
+% ========= KEY DEFINITIONS =========
+\define@key{luatruthtable}{trtext}{\def\luatrtbl@trtext{#1}}
+\define@key{luatruthtable}{fltext}{\def\luatrtbl@fltext{#1}}
+
+% ========= KEY DEFAULTS =========
+\setkeys{luatruthtable}{trtext=$T$,fltext=$F$}%
+% ========= Defining Command =========
+\newcommand{\luaTruthTable}[3][]{%
+ \setkeys{luatruthtable}{#1}
+ \directlua{tex.sprint(truthTable(\luastringN{#2},\luastringN{#3},'\luatrtbl@trtext','\luatrtbl@fltext'))}} %
+
+\endinput
diff --git a/macros/luatex/latex/luatruthtable/luatruthtable.tex b/macros/luatex/latex/luatruthtable/luatruthtable.tex
new file mode 100644
index 0000000000..f50267f6f8
--- /dev/null
+++ b/macros/luatex/latex/luatruthtable/luatruthtable.tex
@@ -0,0 +1,358 @@
+\documentclass{article}
+\usepackage{listings,color,parskip,booktabs,longtable,array,
+hyperref,multirow,multicol,luatruthtable, enumitem}
+\usepackage[top=1.1in, bottom=1.1in, left=1in, right=1in]{geometry}
+\hypersetup{colorlinks,urlcolor=blue}
+\lstset{frame=none,
+ language=[LaTeX]{TeX},
+ aboveskip=3mm,
+ belowskip=3mm,
+ showstringspaces=false,
+ columns=flexible,
+ basicstyle={\ttfamily},
+ numbers=none,
+ numberstyle=\tiny\color{gray},
+ stringstyle=\color{mauve},
+ breaklines=true,
+ breakatwhitespace=true,
+ tabsize=1
+}
+\usepackage[backend=bibtex]{biblatex}
+\addbibresource{luatruthtable}
+\begin{document}
+\title{luatruthtable Package}
+\author{Chetan Shirore and Dr. Ajit Kumar}
+\maketitle
+\section{luatruthtable Package}
+The \emph{luatruthtable} package is developed to generate Truth Tables of boolean values in LaTeX. It provides an easy way for generating truth tables in LaTeX . There is no need of special environment in the package for generation of Truth Tables. It is written in lua and tex file is to be compiled with LuaLatex engine. The time required for operations is no issue while compiling with LuaLaTeX. There is no need to install lua on users system as tex distributions (TeXLive or MikTeX) come bundled with LuaLaTeX. It is useful for generation of Truth Tables in tex file itself. The package supports nesting of commands for multiple operations. It can be modified or extended by writing custom lua programs.
+
+The progamming capabilities of Lua are effectively used in the development of pacakage. The other approaches of generating Truth Table in LaTeX get weired \cite{online.latextruthtable} and probably without using Lua it can't be done in an easier way in LaTeX. The \emph{xkeyval} package is used in its development apart from the \emph{luacode*} package.
+
+\section{License} The \emph{luatruthtable} package is released under the LaTeX Project Public License v1.3c or later. The complete license text is available at \url{http://www.latex-project.org/lppl.txt}.
+It is developed in lua. Lua is certified open source software available. Its license is simple and liberal which is compatible with GPL.
+\section{Installation and Inclusion}
+The installation of \emph{luatruthtable} package is similar to plain latex package where \texttt{.sty} file is in \LaTeX directory of texmf tree. The package can be used by including the command \texttt{\textbackslash usepackage\{luatruthtable\}} in the preamble of latex document. The tex file is to be compiled using the LuaLaTeX engine.
+\section{Core Ideas used in the development of the package} The function \verb|toBinary(x,y)| is used to produce sequence of \emph{True} and \emph{False} values of boolean variables. This function converts the decimal number \verb|x| to a binary number by adding \verb|y| number of leading zeroes. The result of this is stored in a table in Lua. Here \verb|y| corresponds to number of boolean variables. As \(2^y\) permutations of boolean variables are to be produced, the function \verb|toBinary(x,y)| runs inside a loop where \verb|x| takes values from \(1\) to \(y\). The splitting of variables and expressions is done using string methods available in Lua. The nested \emph{metamethods} in Lua are used to define several logical operators. The \emph{load} function in Lua is used to evaluate logical expressions.
+\section{Command luaTruthTable in luatruthtable package}
+The \verb|\luaTruthTable| command is the main command in the \emph{luatruthtable} package which generates truth tables. It has the following syntax.
+\begin{lstlisting}
+\luaTruthTable[trtext,fltext]{list of boolean / logical variables}{list of expressions}
+\end{lstlisting}
+The command has two mandatory arguments. \\
+i) \verb|list of boolean / logical variables| : The list of boolean or logical variables should be separated by comma. \\
+ii) \verb|list of expressions| : The list of logical expressions that are to be evaluated should be separated by comma. \\
+The command has two optional arguments. \\
+i) \verb|trtext| : The \verb|trtext| is the display value for the boolean value \emph{True}. It has the default value \verb|$T$| in the package. It can be any string or number. Assigning value \(0\) should be avoided to \verb|trtext| variable. \\
+ii) \verb|fltext| : The \verb|fltext| is the display value for the boolean value \emph{False}. It has the default value \verb|$F$| in the package. It can be any string or number. Assigning value \(1\) should be avoided to \verb|fltext| variable.
+
+The \verb|\luaTruthTable| command should be used within in the environment \verb|\begin{tabular} ... \end{tabular}| or any other environment in LaTeX for Tables. The sequence of column heads should be same as sequence of \verb|list of boolean / logical variables| and \verb|list of expressions|. Without these correct inputs, the command \verb|\luaTruthTable| can't produce the expected output.
+
+\section{Operations in luatruthtable package}
+\begin{enumerate}[label=\alph*)]
+\item \emph{not}: The value of \emph{ not p} is False when \(p\) is True and it is True when \(p\) is False.
+\begin{center}
+\begin{tabular}{|c|c|}
+\hline
+\(p\) & not \(p\) \\
+\hline
+\luaTruthTable{p}{lognot*p} \\
+\hline
+\end{tabular}
+\end{center}
+
+The command \verb|lognot*| is used in the package to generate truth table for \emph{not} operation.
+\item \emph{and}: The value of \emph{p AND q} is True if and only if both \(p\) and \(q\) are True.
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) and \(q\) \\
+\hline
+\luaTruthTable{p,q}{p*logand*q} \\
+\hline
+\end{tabular}
+\end{center}
+The command \verb|*logand*| is used in the package to generate truth table for \emph{and} operation .
+\item \emph{or}: The value of \emph{p or q} is False if and only if both \(p\) and \(q\) are False.
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) or \(q\) \\
+\hline
+\luaTruthTable{p,q}{p*logor*q} \\
+\hline
+\end{tabular}
+\end{center}
+The command \verb|*logor*| is used in the package to generate truth table for \emph{or} operation.
+\item \emph{implies}: The value of \emph{p implies q} is False if and only if \(p\) is True and \(q\) is False.
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) implies \(q\) \\
+\hline
+\luaTruthTable{p,q}{p*imp*q} \\
+\hline
+\end{tabular}
+\end{center}
+
+The command \verb|*imp*| is used in the package to generate truth table for \emph{implies} operation.
+\item \emph{if and only if} : The value of \emph{p if and only if q} is True if and only if both \(p\) and \(q\) have same truth values.
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) iff \(q\) \\
+\hline
+\luaTruthTable{p,q}{p*iff*q} \\
+\hline
+\end{tabular}
+\end{center}
+
+The command \verb|*iff*| is used in the package to generate truth table for \emph{if and only if} operation.
+\item \emph{NAND} : The value of \emph{p NAND q} is \(0\) if and only if both \(p\) and \(q\) have value \(1\).
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) NAND \(q\) \\
+\hline
+\luaTruthTable[trtext=$1$,fltext=$0$]{p,q}{p*lognand*q} \\
+\hline
+\end{tabular}
+\end{center}
+
+The command \verb|*lognand*| is used in the package to generate truth table for \emph{NAND} operation.
+\item \emph{XOR} : The value of \emph{p XOR q} is \(0\) if and only if \(p\) and \(q\) have same values.
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) XOR \(q\) \\
+\hline
+\luaTruthTable[trtext=$1$,fltext=$0$]{p,q}{p*logxor*q} \\
+\hline
+\end{tabular}
+\end{center}
+
+
+The command \verb|*logxor*| is used in the package to generate truth table for \emph{XOR} operation.
+\item \emph{NOR}: The value of \emph{p NOR q} is \(1\) if and only if both \(p\) and \(q\) have value \(0\).
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) NOR \(q\) \\
+\hline
+\luaTruthTable[trtext=$1$,fltext=$0$]{p,q}{p*lognor*q} \\
+\hline
+\end{tabular}
+\end{center}
+
+The command \verb|*lognor*| is used in the package to generate truth table for \emph{NOR} operation.
+\item \emph{XNOR}: The value of \emph{p XNOR q} is \(1\) if and only if both \(p\) and \(q\) have same values.
+\begin{center}
+\begin{tabular}{|cc|c|}
+\hline
+\(p\) & \(q\) & \(p\) XNOR \(q\) \\
+\hline
+\luaTruthTable[trtext=$1$,fltext=$0$]{p,q}{p*logxnor*q} \\
+\hline
+\end{tabular}
+\end{center}
+
+The command \verb|*logxnor*| is used in the package to generate truth table for \emph{XNOR} operation.
+\end{enumerate}
+The following table summarises logical operators in the package.
+\begin{center}
+\begin{longtable}{llm{8cm}}
+\toprule
+\multicolumn{1}{c}{\textcolor{blue}{Operator}} & \multicolumn{1}{l}{\textcolor{blue}{Syntax}} & \multicolumn{1}{c}{\textcolor{blue}{Description}} \\
+\toprule
+\begin{lstlisting}
+lognot*
+\end{lstlisting} &
+\begin{lstlisting}
+lognot*p
+\end{lstlisting} & Negates the boolean variable \(p\)\\
+\midrule
+\begin{lstlisting}
+*logand*
+\end{lstlisting} &
+\begin{lstlisting}
+p*logand*q
+\end{lstlisting} & Gives the truth of the expression \emph{p and q} for boolean variables \(p\) and \(q\).\\
+\midrule
+\begin{lstlisting}
+*logor*
+\end{lstlisting} &
+\begin{lstlisting}
+p*logor*q
+\end{lstlisting} & Gives the truth of the expression \emph{p or q} for boolean variables \(p\) and \(q\).\\
+\midrule
+\begin{lstlisting}
+*imp*
+\end{lstlisting} &
+\begin{lstlisting}
+p*imp*q
+\end{lstlisting} & Gives the truth of the expression \emph{if p then q} for boolean variables \(p\) and \(q\).\\
+\midrule
+\begin{lstlisting}
+*iff*
+\end{lstlisting} &
+\begin{lstlisting}
+p*iff*q
+\end{lstlisting} & Gives the truth of the expression \emph{p if and only if q} for boolean variables \(p\) and \(q\).\\
+\midrule
+\begin{lstlisting}
+*lognand*
+\end{lstlisting} &
+\begin{lstlisting}
+p*lognand*q
+\end{lstlisting} & Gives the truth of the expression \emph{ p NAND q} for boolean variables \(p\) and \(q\).\\
+\midrule
+\begin{lstlisting}
+*logxor*
+\end{lstlisting} &
+\begin{lstlisting}
+p*logxor*q
+\end{lstlisting} & Gives the truth of the expression \emph{ p XOR q} for boolean variables \(p\) and \(q\).\\
+\midrule
+\begin{lstlisting}
+*lognor*
+\end{lstlisting} &
+\begin{lstlisting}
+p*lognor*q
+\end{lstlisting} & Gives the truth of the expression \emph{ p NOR q} for boolean variables \(p\) and \(q\).\\
+\midrule
+\begin{lstlisting}
+*logxnor*
+\end{lstlisting} &
+\begin{lstlisting}
+p*logxnor*q
+\end{lstlisting} & Gives the truth of the expression \emph{ p XNOR q} for boolean variables \(p\) and \(q\).\\
+
+\bottomrule
+\end{longtable}
+\end{center}
+
+\section{Examples and Usage} The \emph{luatruthtable} package can accept finite number of variables. It supports finite number of variables that one would practically need. Few examples of usage are given here.
+\begin{lstlisting}
+\begin{tabular}{|cc|c|c|c|c|c|c|c|c|c|}
+\hline
+\(p\) & \(q\) & \(\neg p\) & \(p \land q\) & \(p\lor q\) & \(p \rightarrow q\)
+ & \(p \leftrightarrow q\) & \( p\) nand \(q\) & \(p\) xor \(q\) & \( p\) nor \(q\) & \(p\) xnor \(q\) \\
+\hline
+\luaTruthTable{p,q}{lognot*p,p*logand*q, p*logor*q, p*imp*q, p*iff*q,
+p*lognand*q, p*logxor*q, p*lognor*q, p*logxnor*q } \\
+\hline
+\end{tabular}
+\end{lstlisting}
+With the packages \emph{luatruthtable},the above code outputs to
+\ \\ \ \\
+\begin{tabular}{|cc|c|c|c|c|c|c|c|c|c|}
+\hline
+\(p\) & \(q\) & \(\neg p\) & \(p \land q\) & \(p\lor q\) & \(p \rightarrow q\)
+ & \(p \leftrightarrow q\) & \( p\) nand \(q\) & \(p\) xor \(q\) & \( p\) nor \(q\) & \(p\) xnor \(q\) \\
+\hline
+\luaTruthTable{p,q}{lognot*p,p*logand*q, p*logor*q, p*imp*q, p*iff*q,
+p*lognand*q, p*logxor*q, p*lognor*q, p*logxnor*q } \\
+\hline
+\end{tabular}
+\ \\ \\
+The following is the code generated by the command \verb|\luaTruthTable| in above code.
+ \begin{lstlisting}
+$F$ & $T$ & $T$ & $F$ & $T$ & $T$ & $F$ & $T$ & $T$ & $F$ & $F$\\
+$T$ & $F$ & $F$ & $F$ & $T$ & $F$ & $F$ & $T$ & $T$ & $F$ & $F$\\
+$T$ & $T$ & $F$ & $T$ & $T$ & $T$ & $T$ & $F$ & $F$ & $F$ & $T$\\
+$F$ & $F$ & $T$ & $F$ & $F$ & $T$ & $T$ & $T$ & $F$ & $T$ & $T$
+ \end{lstlisting}
+ The following example illustrates the use use of \emph{trtext} and \emph{fltext}. Here \(0\) is assigned to \emph{trtext} and \(1\) is assigned to \emph{fltext}.
+ \begin{lstlisting}
+ \begin{tabular}{|cc|c|c|c|c|c|c|c|c|c|}
+\hline
+\(p\) & \(q\) & \(\neg p\) & \(p \land q\) & \(p\lor q\) & \(p \rightarrow q\)
+ & \(p \leftrightarrow q\) & \( p\) nand \(q\) & \(p\) xor \(q\) & \( p\) nor \(q\) & \(p\) xnor \(q\) \\
+\hline
+\luaTruthTable[trtext=$1$,fltext=$0$]{p,q}{lognot*p,p*logand*q, p*logor*q, p*imp*q, p*iff*q,
+p*lognand*q, p*logxor*q, p*lognor*q, p*logxnor*q } \\
+\hline
+\end{tabular}
+ \end{lstlisting}
+
+ With the packages \emph{luatruthtable},the above code outputs to
+\ \\ \ \\
+ \begin{tabular}{|cc|c|c|c|c|c|c|c|c|c|}
+\hline
+\(p\) & \(q\) & \(\neg p\) & \(p \land q\) & \(p\lor q\) & \(p \rightarrow q\)
+ & \(p \leftrightarrow q\) & \( p\) nand \(q\) & \(p\) xor \(q\) & \( p\) nor \(q\) & \(p\) xnor \(q\) \\
+\hline
+\luaTruthTable[trtext=$1$,fltext=$0$]{p,q}{lognot*p,p*logand*q, p*logor*q, p*imp*q, p*iff*q,
+p*lognand*q, p*logxor*q, p*lognor*q, p*logxnor*q } \\
+\hline
+\end{tabular}
+\ \\ \\
+The following is the code generated by the command \verb|\luaTruthTable| in above code.
+\begin{lstlisting}
+$0$ & $1$ & $1$ & $0$ & $1$ & $1$ & $0$ & $1$ & $1$ & $0$ & $0$\\
+$1$ & $0$ & $0$ & $0$ & $1$ & $0$ & $0$ & $1$ & $1$ & $0$ & $0$\\
+$1$ & $1$ & $0$ & $1$ & $1$ & $1$ & $1$ & $0$ & $0$ & $0$ & $1$\\
+$0$ & $0$ & $1$ & $0$ & $0$ & $1$ & $1$ & $1$ & $0$ & $1$ & $1$
+\end{lstlisting}
+The following example involves three variables.
+\begin{lstlisting}
+\begin{tabular}{|ccc|c|}
+\hline
+\(p\) & \(q\) & \(r\) & \((p \land q)\) \rightarrow \(\neg r\) \\
+\hline
+\luaTruthTable{p,q,r}{(p*logand*q) *imp* (lognot*r)} \\
+\hline
+\end{tabular}
+\end{lstlisting}
+ With the packages \emph{luatruthtable},the above code outputs to
+\ \\ \ \\
+\begin{tabular}{|ccc|c|}
+\hline
+\(p\) & \(q\) & \(r\) & \((p \land q)\) \rightarrow \(\neg r\) \\
+\hline
+\luaTruthTable{p,q,r}{(p*logand*q) *imp* (lognot*r)} \\
+\hline
+\end{tabular}
+\ \\ \\
+Here \emph{lognot*r} should be enclosed in parenthesis in order to produce correct results in generated truth table.
+\ \\
+The following is the code generated by the command \verb|\luaTruthTable| in above code.
+\begin{lstlisting}
+$F$ & $F$ & $T$ & $T$\\
+$F$ & $T$ & $F$ & $T$\\
+$F$ & $T$ & $T$ & $T$\\
+$T$ & $F$ & $F$ & $T$\\
+$T$ & $F$ & $T$ & $T$\\
+$T$ & $T$ & $F$ & $T$\\
+$T$ & $T$ & $T$ & $F$\\
+$F$ & $F$ & $F$ & $T$
+\end{lstlisting}
+With the use of optional arguments \verb|[trtext=True, fltext=False]| in the previous example, one gets the following output.
+\ \\ \ \\ \ \\
+\begin{tabular}{|ccc|c|}
+\hline
+\(p\) & \(q\) & \(r\) & \((p \land q)\) \rightarrow \(\neg r\) \\
+\hline
+\luaTruthTable[trtext=True, fltext=False]{p,q,r}{(p*logand*q) *imp* (lognot*r)} \\
+\hline
+\end{tabular}
+\ \\ \\
+
+It is possible to input \emph{trtext} and \emph{trfalse} in mathematics environment. So with the use of optional arguments \verb|[trtext=$True$, fltext=$False$]| in the previous example, one gets the following output.
+\ \\ \ \\ \ \\
+\begin{tabular}{|ccc|c|}
+\hline
+\(p\) & \(q\) & \(r\) & \((p \land q)\) \rightarrow \(\neg r\) \\
+\hline
+\luaTruthTable[trtext=$True$, fltext=$False$]{p,q,r}{(p*logand*q) *imp* (lognot*r)} \\
+\hline
+\end{tabular}
+\ \\ \ \\ \ \\
+Since \emph{luacode*} package is used, the backslash is to be escaped while assigning values to \emph{trtext} and \emph{trfalse}. For example \verb|[trtext=\\(True\\), fltext=\\(False\\)]|
+
+
+\section{Known Issues,Limitations and Scope of the package} The associativity and precedence of operator is not yet supported. The package can give appropriate results only when parentheses are used for each of the operation. It gives eraneous result when parentheses are not used. This point is of utmost importance in using the package. These issues are there is no native way of defining custom operations in Lua \cite{online.luacustomoperator}. However some metamethods can be nested in a way to glimpse the operators. All operators defined in this package are instances of such nestings. The question may be raised that is there better way of accomplishing this in Lua. The answer to the point is that there are alternative ways of doing this. They may be better in some or other sense. For example, instead of defining \emph{*logand*} operator and using it in the fashion \emph{p*logand*q}, one could define function \emph{logand} that takes two arguments and use it in a way \emph{logand(p,q)}. But when it comes to embedding it in LaTeX, again one has to use more and more nested parentheses as number of statements and operations increase. This is the exact reason why such approach is not used in the development of package. Instead of using \emph{implies(logand(p,logor(q,r)),s)} it sounds more natural to use \emph{(p *logand* (q*logor*r) )*implies* s}.
+
+Apart from these issues, there is no error handling mechanism used in the package. It relies on the error handling of Lua and TeX itself. The package currently supports 9 operations viz. \emph{not,and,nand,or, xor, implies, iff, nor, xnor}. The error handling and extending number of operations may be considered in future versions of the package.
+
+\printbibliography
+\end{document}
diff --git a/macros/luatex/latex/piton/README.md b/macros/luatex/latex/piton/README.md
new file mode 100644
index 0000000000..c9ad487bcc
--- /dev/null
+++ b/macros/luatex/latex/piton/README.md
@@ -0,0 +1,26 @@
+# Readme for the package piton
+
+Author: F. Pantigny (`fpantigny@wanadoo.fr`).
+
+CTAN page: `https://ctan.org/pkg/piton`
+
+## License
+The LaTeX extension `piton` is distributed under the LPPL 1.3 license.
+
+## Presentation
+
+The LaTeX package `piton` provides a command `\piton` and an environment `{Piton}` to typeset Python codes by using the Lua library LPEG. It requires the use of `lualatex`. It won't work with `xelatex` nor `pdflatex`.
+
+
+
+## Installation
+
+
+For a manual installation:
+
+* put the files `piton.ins` and `piton.dtx` in the same directory;
+* run `latex piton.ins` in that directory.
+
+The file `piton.sty` will be generated.
+
+The file `piton.sty` is *not* the only file necessary to use the extension `piton`. The file `piton.lua` is also required. You have to put both in the same directory as your document or (best) in a `texmf` tree.
diff --git a/macros/luatex/latex/piton/piton-french.pdf b/macros/luatex/latex/piton/piton-french.pdf
new file mode 100644
index 0000000000..ef7a5a1964
--- /dev/null
+++ b/macros/luatex/latex/piton/piton-french.pdf
Binary files differ
diff --git a/macros/luatex/latex/piton/piton-french.tex b/macros/luatex/latex/piton/piton-french.tex
new file mode 100644
index 0000000000..5e9ee11c7a
--- /dev/null
+++ b/macros/luatex/latex/piton/piton-french.tex
@@ -0,0 +1,361 @@
+% -*- coding: utf-8 ; -*-
+\documentclass[dvipsnames]{article}
+\usepackage[french]{babel}
+\frenchsetup{og = « , fg = »}
+
+\usepackage[escape-inside=$$]{piton}
+
+\usepackage{xcolor}
+
+\usepackage{geometry}
+\geometry{left=2.8cm,right=2.8cm,top=2.5cm,bottom=2.5cm,papersize={21cm,29.7cm}}
+
+\usepackage{enumitem}
+\usepackage{verbatim}
+\usepackage{amsmath}
+\usepackage{tabularx}
+\usepackage{booktabs}
+
+\usepackage{caption}
+\captionsetup{labelfont = bf}
+
+% We use \MakeShortVerb of shortvrb and not \DefineShortVerb of fancyvrb
+% because we don't want the contents of short verbatim colored in gray
+\usepackage{shortvrb}
+\MakeShortVerb{\|}
+
+
+\skip\footins = 2\bigskipamount
+
+\usepackage{fancyvrb}
+\fvset{commandchars=\~\#\@,formatcom=\color{gray}}
+\def\emphase{\bgroup\color{RoyalPurple}\let\next=}
+
+
+\usepackage{titlesec}
+\titlespacing*{\section}{0pt}{6.5ex plus 1ex minus .2ex}{4.3ex plus .2ex}
+\titlespacing*{\subsection}{0pt}{4.5ex plus 1ex minus .2ex}{2ex plus .2ex}
+
+\def\interitem{\vspace{7mm plus 2 mm minus 3mm}}
+
+
+\usepackage{footnote}
+
+\usepackage[hyperfootnotes = false]{hyperref}
+
+\hypersetup
+ {
+ pdfinfo =
+ {
+ Title = L’extension piton ,
+ Subject = Une extension LaTeX ,
+ Author = F. Pantigny
+ }
+ }
+
+
+\NewDocumentEnvironment {scope} {} {} {}
+
+\NewDocumentCommand {\pkg} {m} {\textsf{#1}}
+\NewDocumentCommand {\cls} {m} {\textsf{#1}}
+
+\setlength{\parindent}{0pt}
+
+
+\begin{document}
+
+\VerbatimFootnotes
+
+
+\title{L'extension LaTeX \pkg{piton}\thanks{Ce document correspond à la
+version~\myfileversion\space de \pkg{piton}, à la date du~\myfiledate.}}
+\author{F. Pantigny \\ \texttt{fpantigny@wanadoo.fr}}
+
+\maketitle
+
+\begin{abstract}
+L'extension \pkg{piton} propose des outils pour composer du code Python avec une coloration syntaxique
+en utilisant la bibliothèque Lua LPEG. L'extension \pkg{piton} nécessite l'emploi de LuaLaTeX.
+\end{abstract}
+
+\section{Présentation}
+
+L'extension \pkg{piton} utilise la librarie Lua nommée LPEG\footnote{LPEG est une librairie de capture de motifs
+ (\emph{pattern-matching} en anglais) pour Lua, écrite en C, fondée sur les PEG (\emph{parsing expression
+ grammars}): \url{http://www.inf.puc-rio.br/~roberto/lpeg/}} pour «parser» le code Python et le composer avec un
+coloriage syntaxique. Comme elle utilise du code Lua, elle fonctionne uniquement avec |lualatex| (et ne va pas
+fonctionner avec les autres moteurs de compilation LaTeX, que ce soit |latex|, |pdflatex| ou |xelatex|). Elle
+n'utilise aucun programme extérieur et la compilation ne requiert donc pas |--shell-escape|. La compilation est
+très rapide puisque tout le travail du parseur est fait par la librairie LPEG, écrite en C.
+
+\bigskip
+Voici un exemple de code Python composé avec l'environnement |{Piton}| proposé par \pkg{piton}.
+
+\bigskip
+\begin{Piton}
+from math import pi
+
+def arctan(x,n=10):
+ """Compute the value of arctan(x)
+ n is the number of terms if the sum"""
+ if x < 0:
+ return -arctan(-x) # recursive call
+ elif x > 1:
+ return pi/2 - arctan(1/x)
+ ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)\footnote{Cet échappement vers LaTeX a été obtenu en débutant par \ttfamily\#\#.}
+ else
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
+\end{Piton}
+
+
+
+\section{Installation}
+
+L'extension \pkg{piton} est composée de deux fichiers : |piton.sty| et |piton.lua| (le fichier LaTeX |piton.sty|
+chargé par |\usepackage| va à son tour charger le fichier |piton.lua|). Les deux fichiers doivent être présents
+dans un répertoire où LaTeX pourra les trouver. Le mieux est de les installer dans une arborescence |texmf|.
+
+
+\section{Utilisation de l'extension}
+
+Pour utiliser l'extension \pkg{piton}, l'utilisateur final a seulement à charger l'extension dans son document avec
+la commande classique |\usepackage| et se souvenir que la compilation doit être faite avec LuaLaTeX.
+
+\medskip
+L'extension \pkg{piton} fournit trois outils pour composer du code Python: la commande |\piton|, l'environnement
+|{Piton}| et la commande |\PitonInputFile|.
+
+\begin{itemize}
+\item La commande |\piton| doit être utilisée pour composer de petits éléments de code à l'intérieur d'un
+paragraphe. \emph{Attention} : Cette fonction prend son argument en mode \emph{verbatim} (comme la commande
+\verb|\verb|) et, de ce fait, cette fonction ne peut pas être utilisée à l'intérieur d'un argument d'une autre
+fonction (on peut néanmoins l'utiliser à l'intérieur d'un environnement).
+
+\item L'environnement |{Piton}| doit être utilisé pour composer des codes de plusieurs lignes.
+
+\item La commande |\PitonInputFile| doit être utilisée pour insérer et composer un fichier extérieur.
+\end{itemize}
+
+\bigskip
+Il est possible de composer des commentaires en LaTeX en commençant par |##| (c'est un échappement vers LaTeX). Les
+caractères |##| eux-mêmes ne seront pas imprimés.
+
+
+\section{Personnalisation}
+
+\subsection{La commande \textbackslash PitonOptions}
+
+La commande |\PitonOptions| propose quatre clés : |gobble|, |auto-gobble|, |line-numbers| et |all-line-numbers|.
+
+\begin{itemize}
+\item La clé |gobble| peut comme valeur un entier positif $n$ : les $n$ premiers caractères de chaque ligne sont
+alors retirés (avant formatage du code) dans les environnements |{Piton}|.
+
+\item Quand la clé |auto-gobble| est activée, l'extension \pkg{piton} détermine la valeur minimale $n$ du nombre
+d'espaces successifs débutant chaque ligne (non vide) de l'environnment |{Piton}| et applique |gobble| avec cette
+valeur de~$n$.
+
+\item Avec la clé |line-numbers|, les lignes \emph{non vides} sont numérotées dans les environnements \verb|{Piton}|
+et dans les listings produits par la commande |\PitonInputFile|.
+
+\item Avec la clé |all-line-numbers|, \emph{toutes} les lignes sont numérotées, y compris les lignes vides.
+\end{itemize}
+
+\bigskip
+
+\begingroup
+\fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+\begin{Verbatim}
+~emphase&\PitonOptions{line-numbers,auto-gobble}@
+\begin{Piton}
+ from math import pi
+
+ def arctan(x,n=10):
+ """Compute the value of arctan(x)
+ n is the number of terms if the sum"""
+ if x < 0:
+ return -arctan(-x) # recursive call
+ elif x > 1:
+ return pi/2 - arctan(1/x)
+ ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)
+ else
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
+\end{Piton}
+\end{Verbatim}
+\endgroup
+
+\begingroup
+\PitonOptions{line-numbers,auto-gobble}
+\begin{Piton}
+ from math import pi
+
+ def arctan(x,n=10):
+ """Compute the value of arctan(x)
+ n is the number of terms if the sum"""
+ if x < 0:
+ return -arctan(-x) # recursive call
+ elif x > 1:
+ return pi/2 - arctan(1/x)
+ ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)
+ else
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
+\end{Piton}
+\endgroup
+
+\subsection{L'option escape-inside}
+
+L'option |escape-inside| doit être utilisée au chargement de \pkg{piton} (c'est-à-dire dans l'instruction
+|\usepackage|). Pour des raisons techniques, elle ne peut pas être fixée dans |\PitonOptions|. Elle prend comme
+valeur deux caractères qui seront utilisés pour délimiter des parties qui seront composées en LaTeX.
+
+
+\bigskip
+Dans l'exemple suivant, on suppose que l'extension \pkg{piton} a été chargée de la manière suivante :
+
+\smallskip
+\begin{Verbatim}
+\usepackage[~emphase#escape-inside=$$@]{piton}
+\end{Verbatim}
+
+\medskip
+Dans le code suivant, qui est une programmation récursive de la factorielle, on décide de surligner en jaune
+l'instruction qui contient l'appel récursif.
+\begin{Verbatim}
+\begin{Piton}
+def fact(n):
+ if n==0:
+ return 1
+ else:
+ ~emphase#$\colorbox{yellow!50}{$@return n*fact(n-1)~emphase#$}$@
+\end{Piton}
+\end{Verbatim}
+
+\begin{Piton}
+def fact(n):
+ if n==0:
+ return 1
+ else:
+ $\colorbox{yellow!50}{$return n*fact(n-1)$}$
+\end{Piton}
+
+\bigskip
+\emph{Attention} : L'échappement vers LaTeX permis par les caractères de |escape-inside| n'est pas actif dans les
+chaînes de caractères ni dans les commentaires (pour avoir un commentaire entièrement en échappement vers LaTeX,
+il suffit de le faire débuter par |##|).
+
+\subsection{Les styles}
+
+L'extension \pkg{piton} fournit la commande |\SetPitonStyle| pour personnaliser les différents styles utilisés pour
+formater les éléments syntaxiques des listings Python. Ces personnalisations ont une portée qui correspond au
+groupe TeX courant.
+
+\bigskip
+La commande |\SetPitonStyle| prend en argument une liste de couples \textsl{clé=valeur}. Les clés sont les noms des
+styles et les valeurs sont les instructions LaTeX de formatage correspondantes.
+
+\bigskip
+Ces instructions LaTeX doivent être des instructions de formatage du type de |\color{...}|, |\bseries|,
+|\slshape|, etc. (les commandes de ce type sont parfois qualifiées de \emph{semi-globales}). Il est aussi possible
+de mettre, \emph{à la fin de la liste d'instructions}, une commande LaTeX prenant exactement un
+argument.
+
+\bigskip
+Voici un exemple qui change le style utilisé pour le nom d'une fonction Python, au moment de sa définition
+(c'est-à-dire après le mot-clé |def|).
+
+\begin{Verbatim}
+\SetPitonStyle
+ { Name.Function = \bfseries \setlength{\fboxsep}{1pt}\colorbox{yellow!50} }
+\end{Verbatim}
+
+Dans cet exemple, |\colorbox{yellow!50}| doit être considéré comme le nom d'une fonction LaTeX qui prend exactement
+un argument, puisque, habituellement, elle est utilisée avec la syntaxe |\colorbox{yellow!50}{text}|.
+
+\medskip
+\begingroup
+\SetPitonStyle
+ { Name.Function = \bfseries \setlength{\fboxsep}{1pt}\colorbox{yellow!50} }
+Avec ce réglage, on obtient : \piton{def cube(x) : return x * x * x }
+\endgroup
+
+
+
+\medskip
+Les différents styles sont décrits dans la table \ref{Semantic}.
+
+\begin{table}[htb]
+\centering
+\caption{Usage des différents styles}
+\label{Semantic}
+\begin{tabularx}{0.9\textwidth}{@{}>{\ttfamily}l>{\raggedright\arraybackslash}X@{}}
+\toprule
+\normalfont Style & Usage \\
+\midrule
+Number & les nombres \\
+String.Short & les chaînes de caractères courtes (entre \texttt{'} ou \texttt{"}) \\
+String.Long & les chaînes de caractères longues (entre \texttt{'''} ou \texttt{"""}) sauf les chaînes de
+ documentation \\
+String & cette clé fixe à la fois |String.Short| et |String.Long| \\
+String.Doc & les chaînes de documentation \\
+String.Interpol & les éléments syntaxiques des champs des f-strings (c'est-à-dire les caractères \texttt{\{}, \texttt{\}} et \texttt{:}) \\
+Operator & les opérateurs suivants : \texttt{!= == << >> - \~{} + / * \% = < > \& .} \verb+|+ \verb|@| \\
+Operator.Word & les opérateurs suivants : |in|, |is|, |and|, |or| et |not| \\
+Name.Builtin & la plupart des fonctions prédéfinies par Python \\
+Name.Function & le nom des fonctions définies par l'utilisateur \emph{au moment de leur définition}, c'est-à-dire
+ après le mot-clé \verb|def| \\
+Name.Decorator & les décorateurs (instructions débutant par \verb|@| dans les classes) \\
+Name.Namespace & le nom des modules (= bibliothèques extérieures) \\
+Name.Class & le nom des classes au moment de leur définition \\
+Exception & le nom des exceptions prédéfinies (eg: SyntaxError) \\
+Comment & les commentaires commençant par \texttt{\#} \\
+Comment.LaTeX & les commentaires commençant par \texttt{\#\#} qui sont composés en LaTeX par \pkg{piton}
+ (\texttt{\#\#} est une séquence d'échappement vers LaTeX) \\
+Keyword.Constant & |True|, |False| et |None| \\
+Keyword & les mots-clés suivants :
+ \ttfamily assert, break, case, continue, del,
+ elif, else, except, exec, finally, for, from,
+ global, if, import, lambda, non local,
+ pass, raise, return, try, while,
+ with, yield, yield from.\\
+ \bottomrule
+\end{tabularx}
+\end{table}
+
+
+
+\subsection{Définition de nouveaux environnements}
+
+Comme l'environnement |{Piton}| a besoin d'absorber son contenu d'une manière spéciale (à peu près comme du texte
+verbatim), il n'est pas possible de définir de nouveaux environnements directement au-dessus de l'environnement
+|{Piton}|.
+
+C'est pourquoi \pkg{piton} propose une commande |\NewPitonEnvironment|. Cette commande a la même syntaxe que la
+commande classique |\NewDocumentEnvironment|.
+
+\bigskip
+Par exemple, avec l'instruction suivante, un nouvel environnement |{Python}| sera défini avec le même comportement
+que l'environnement |{Piton}|:
+
+\verb|\NewPitonEnvironment{Python}{}{}{}|
+
+\bigskip
+Si on souhaite un environnement |{Python}| qui compose le code inclus dans une boîte de \pkg{tcolorbox}, on peut
+écrire:
+
+\begin{verbatim}
+\NewPitonEnvironment{Python}{}
+ {\begin{tcolorbox}}
+ {\end{tcolorbox}}
+\end{verbatim}
+
+
+\end{document} \ No newline at end of file
diff --git a/macros/luatex/latex/piton/piton.dtx b/macros/luatex/latex/piton/piton.dtx
new file mode 100644
index 0000000000..48e6f777e5
--- /dev/null
+++ b/macros/luatex/latex/piton/piton.dtx
@@ -0,0 +1,810 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2022 by F. Pantigny
+% -----------------------------------
+%
+% This file 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.
+%
+% \fi
+% \iffalse
+\def\myfileversion{0.6}
+\def\myfiledate{2022/09/14}
+%
+%
+%<*batchfile>
+\begingroup
+\input l3docstrip.tex
+\keepsilent
+\usedir{tex/latex/cascade}
+\preamble
+
+Copyright (C) 2022 by F. Pantigny
+-----------------------------------
+
+This file 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.
+
+\endpreamble
+\askforoverwritefalse
+\endgroup
+%</batchfile>
+%
+%<@@=piton>
+%<*driver>
+\documentclass{l3doc}
+\usepackage{geometry}
+\geometry{left=2.8cm,right=2.8cm,top=2.5cm,bottom=2.5cm,papersize={21cm,29.7cm}}
+\usepackage{fontspec}
+\usepackage[dvipsnames]{xcolor}
+\usepackage{caption,tabularx}
+\def\emphase{\bgroup\color{RoyalPurple}\let\next=}
+\fvset{commandchars=\~\#\@,formatcom=\color{gray}}
+\captionsetup{labelfont = bf}
+\usepackage{ragged2e}
+\usepackage[escape-inside=$$]{piton} % $$
+
+\def\interitem{\vskip 7mm plus 2 mm minus 3mm}
+\parindent 0pt
+\skip\footins = 2\bigskipamount
+
+\begin{filecontents}[noheader,overwrite]{example1.txt}
+from math import pi
+
+def arctan(x,n=10):
+ """Compute the value of arctan(x)
+ n is the number of terms if the sum"""
+ if x < 0:
+ return -arctan(-x) # recursive call
+ elif x > 1:
+ return pi/2 - arctan(1/x)
+ ## (we have used that $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ for $x>0$)\footnote{This LaTeX escape has been done by beginning the comment by \ttfamily\#\#}
+ else
+ s = 0
+ for k in range(n):
+ s += (-1)**k/(2*k+1)*x**(2*k+1)
+ return s
+\end{filecontents}
+
+\begin{filecontents}[noheader,overwrite]{example2.txt}
+def fact(n):
+ if n==0:
+ return 1
+ else:
+ $\colorbox{yellow!50}{$return n*fact(n-1)$}$
+\end{filecontents}
+
+
+\EnableCrossrefs
+
+\begin{document}
+\DocInput{piton.dtx}
+\end{document}
+%</driver>
+
+% \fi
+% \title{The package \pkg{piton}\thanks{This document corresponds to the
+% version~\myfileversion\space of \pkg{piton}, at the date of~\myfiledate.}}
+% \author{F. Pantigny \\ \texttt{fpantigny@wanadoo.fr}}
+%
+% \maketitle
+%
+% \begin{abstract}
+% The package \pkg{piton} provides tools to typeset Python listings with
+% syntactic highlighting by using the Lua library LPEG. It requires LuaLaTeX.
+% \end{abstract}
+%
+%
+% \section{Presentation}
+%
+%
+% The package \pkg{piton} uses the Lua library LPEG\footnote{LPEG is a
+% pattern-matching library for Lua, written in C, based on \emph{parsing
+% expression grammars}: \url{http://www.inf.puc-rio.br/~roberto/lpeg/}} for
+% parsing Python listings and typeset them with syntactic highlighting. Since it
+% uses Lua code, it works with |lualatex| only (and won't work with the other
+% engines: |latex|, |pdflatex| and |xelatex|). It does not use external program
+% and the compilation does not require |--shell-escape|. The compilation is very
+% fast since all the parsing is done by the library LPEG, written in C.
+%
+% \bigskip
+% Here is an exemple of code typeset by \pkg{piton}, with the environment |{Piton}|.
+%
+% \bigskip
+% \PitonInputFile{Example1.txt}
+%
+%
+% \section{Installation}
+%
+% The package \pkg{piton} is contained in two files: |piton.sty| and
+% |piton.lua| (the LaTeX file |piton.sty| loaded by |\usepackage| will load the
+% Lua file |piton.lua|). Both files must be in a repertory where LaTeX will be
+% able to find them. The best way is to install them in a |texmf| tree.
+%
+%
+% \section{Use of the package}
+%
+% In order to use the package \pkg{piton}, one has only to load the package in
+% its document with the standard command |\usepackage| and remember that the
+% compilation must be done with |lualatex| (and no other LaTeX engine).
+%
+% \medskip
+% The package \pkg{piton} provides three tools to typeset Python code: the
+% command |\piton|, the environment |{Piton}| and the command |\PitonInputFile|.
+%
+% \begin{itemize}
+% \item The command |\piton| should be used to typeset small pieces of code
+% inside a paragraph. \emph{Caution}: That fonction takes in its argument
+% \emph{verbatim}. Therefore, it cannot be used in the argument of another
+% command (however, it can be used within an environment).
+% \item The environment |{Piton}| should be used to typeset multi-lines code.
+%
+% \item The command |\PitonInputFile| is used to insert and typeset a whole
+% external file.
+% \end{itemize}
+%
+% \bigskip
+% It's possible to compose comments in LaTeX by beginning with |##| (it's a
+% ``LaTeX escape''). The characters |##| themselves won't be printed.
+%
+% \section{Customization}
+%
+% \subsection{The command \textbackslash PitonOptions}
+%
+% The command |\PitonOptions| provides four keys: |gobble|, |auto-gobble|,
+% |line-numbers| and |all-line-numbers|.
+%
+% \begin{itemize}
+% \item The key |gobble| takes in as value a positive integer~$n$: the first $n$
+% characters are discarded (before the process of hightlighning of the code) for
+% each line of the environment |{Piton}|.
+%
+% \item Then the key |auto-gobble| is in force, the extnsion \pkg{piton} compute
+% the minimal value $n$ of the number of consecutives space beginning each (non
+% empty) line of the environment |{Piton}| and applies |gobble| with that value
+% of~$n$.
+%
+% \item With the key |line-numbers|, the \emph{non empty} lines are numbered in
+% the environments |{Piton}| and in the listings resulting from the use of
+% |\PitonInputFile|.
+%
+% \item With the key |all-line-numbers|, \emph{all} the lines are numbered,
+% including the empty ones.
+% \end{itemize}
+%
+% \bigskip
+%
+% \begingroup
+% \fvset{commandchars=\~\&\@,formatcom=\small\color{gray}}
+% \begin{Verbatim}
+% ~emphase&\PitonOptions{line-numbers,auto-gobble}@
+% \begin{Piton}
+% from math import pi
+%
+% def arctan(x,n=10):
+% """Compute the value of arctan(x)
+% n is the number of terms if the sum"""
+% if x < 0:
+% return -arctan(-x) # recursive call
+% elif x > 1:
+% return pi/2 - arctan(1/x)
+% ## (on a utilisé le fait que $\arctan(x)+\arctan(1/x)=\frac{\pi}{2}$ pour $x>0$)
+% else
+% s = 0
+% for k in range(n):
+% s += (-1)**k/(2*k+1)*x**(2*k+1)
+% return s
+% \end{Piton}
+% \end{Verbatim}
+% \endgroup
+%
+%
+% \begingroup
+% \PitonOptions{line-numbers,auto-gobble}
+% \PitonInputFile{Example1.txt}
+% \endgroup
+%
+% \subsection{The option escape-inside}
+%
+% The option |escape-inside| must be used when loading the package \pkg{piton}
+% (that is to say in the instruction |\usepackage|). For technical reasons, it
+% can't be used in the command |\PitonOptions|. That option takes in as value
+% two characters which will be used to delimit pieces of code which will
+% composed in LaTeX.
+%
+% \medskip
+% In the following example, we assume that the extension \pkg{piton} has been
+% loaded by the following instruction.
+%
+% \begin{Verbatim}
+% \usepackage[~emphase#escape-inside=$$@]{piton}
+% \end{Verbatim}
+%
+% \medskip
+% In the following code, which is a recursive programmation of the mathematical
+% factorial, we decide to highlight in yellow the instruction which contains the
+% recursive call.
+% \begin{Verbatim}
+% \begin{Piton}
+% def fact(n):
+% if n==0:
+% return 1
+% else:
+% ~emphase#$\colorbox{yellow!50}{$@return n*fact(n-1)~emphase#$}$@
+% \end{Piton}
+% \end{Verbatim}
+%
+% \PitonInputFile{Example2.txt}
+%
+% \bigskip
+%
+% \emph{Caution} : The escape to LaTeX allowed by the characters of
+% |escape-inside| is not active in the strings nor in the Python comments
+% (however, it's possible to have a whole Python comment composed in LaTeX by
+% beginning it with |##|).
+%
+%
+% \subsection{The styles}
+%
+% The package \pkg{piton} provides the command |\SetPitonStyle| to customize the
+% different styles used to format the syntactic elements of the Python listings.
+% The customizations done by that command are limited to the current TeX group.
+%
+% \bigskip
+% The command |\SetPitonStyle| takes in as argument a comma-separated list of
+% \textsl{key=value} pairs. The keys are names of styles and the value are LaTeX
+% formatting instructions.
+%
+% \bigskip
+% These LaTeX instructions must be formatting instructions such as
+% |\color{...}|, |\bfseries|, |\slshape|, etc. (the commands of this kind are
+% sometimes called \emph{semi-global} commands). It's also possible to put,
+% \emph{at the end of the list of instructions}, a LaTeX command taking exactly
+% one argument.
+%
+% \bigskip
+% Here an example which changes the style used to highlight, in the definition
+% of a Python function, the name of the function which is defined.
+%
+% \begin{verbatim}
+% \SetPitonStyle
+% { Name.Function = \bfseries \setlength{\fboxsep}{1pt}\colorbox{yellow!50} }
+% \end{verbatim}
+%
+% In that example, |\colorbox{yellow!50}| must be considered as the name of a
+% LaTeX command which takes in exactly one argument, since, usually, it is used
+% with the syntax |\colorbox{yellow!50}{text}|.
+%
+% \medskip
+% \begingroup
+% \SetPitonStyle
+% { Name.Function = \bfseries \setlength{\fboxsep}{1pt}\colorbox{yellow!50} }
+% With that setting, we will have : \piton{def cube(x) : return x * x * x }
+% \endgroup
+%
+% \medskip
+% The different styles are described in the table \ref{Semantic}.
+%
+%
+%
+% \begin{table}[b]
+% \centering
+% \caption{Usage of the different styles}
+% \label{Semantic}
+% \begin{tabular}{@{}>{\ttfamily}l>{\RaggedRight\arraybackslash}p{9cm}@{}}
+% \toprule
+% \normalfont Style & Usage \\
+% \midrule
+% Number & the numbers \\
+% String.Short & the short strings (between \texttt{'} or \verb|"|) \\
+% String.Long & the long strings (between \texttt{'''} or \verb|"""|) except the
+% documentation strings \\
+% String & that keys sets both |String.Short| and |String.Long| \\
+% String.Doc & the documentation strings \\
+% String.Interpol & the syntactic elements of the fields of the f-strings (that
+% is to say the characters \texttt{\{}, \texttt{\}} and \texttt{:}) \\
+% Operator & the following operators : \texttt{!= == << >> - \~{} + / * \% = < > \& .} \verb+|+ \verb|@|\\
+% Operator.Word & the following operators : \texttt{in}, \texttt{is},
+% \texttt{and}, \texttt{or} et \texttt{not} \\
+% Name.Builtin & the predefined functions of Python \\
+% Name.Function & the name of the functions defined by the user, at the point of
+% their definition (that is to say after the keyword |def|) \\
+% Name.Decorator & the decorators (instructions beginning by \verb|@| in the classes) \\
+% Name.Namespace & the name of the modules (= external libraries) \\
+% Name.Class & the name of the classes at the point of their definition \\
+% Exception & the names of the exceptions (eg: \texttt{SyntaxError}) \\
+% Comment & the comments beginning with \verb|#| \\
+% LaTeX & the comments beginning by \verb|##| which are composed in LaTeX by
+% \pkg{piton} (\verb|##| is an espace sequence to LaTeX) \\
+% Keyword.Constant & |True|, |False| and |None| \\
+% Keyword & the following keywords :
+% \ttfamily assert, break, case, continue, del,
+% elif, else, except, exec, finally, for, from,
+% global, if, import, lambda, non local,
+% pass, raise, return, try, while,
+% with, yield, yield from.\\
+% \bottomrule
+% \end{tabular}
+% \end{table}
+%
+%
+%
+%
+% \subsection{Creation of new environments}
+%
+% Since the environment |{Piton}| has to catch its body in a special way (more
+% or less as verbatim text), it's not possible to construct new environments
+% directly over the environment |{Piton}|
+%
+% That's why \pkg{piton} provides a command |\NewPitonEnvironment|. That
+% command takes in three mandatory arguments.
+
+% That command has the same syntax as the classical environment
+% |\NewDocumentEnvironment|.
+%
+% \bigskip
+% With the following instruction, a new environment |{Python}| will be
+% constructed with the same behaviour as |{Piton}|:
+%
+% \verb|\NewPitonEnvironment{Python}{}{}{}|
+%
+% \bigskip
+% If on wished to format Python code in a box in a box of \pkg{tcolorbox}, it's
+% possible to define an environment |{Python}| with the following code:
+%
+%\begin{verbatim}
+% \NewPitonEnvironment{Python}{}
+% {\begin{tcolorbox}}
+% {\end{tcolorbox}}
+% \end{verbatim}
+%
+%
+% \clearpage
+%
+% \section{Implementation}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{l3keys2e}
+\ProvidesExplPackage
+ {piton}
+ {\myfiledate}
+ {\myfileversion}
+ {Highlight Python codes with LPEG on LuaLaTeX}
+% \end{macrocode}
+%
+% \bigskip
+% We define a set of keys |piton/package| for these options.
+% \begin{macrocode}
+\keys_define:nn { piton / package }
+ {
+ escape-inside .tl_set:N = \c_@@_escape_inside_tl ,
+ unknown .code:n = \msg_error:nn { piton } { unknown~key~for~package }
+ }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\msg_new:nnn { piton } { unknown~key~for~package }
+ {
+ Unknown~key\\
+ You~have~used~the~key~'\l_keys_key_str'~but~the~only~key~available~here~
+ is~the~key~'escape-inside'.\\
+ That~key~will~be~ignored.
+ }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\tl_clear_new:N \c_@@_escape_inside_tl
+% \end{macrocode}
+%
+% We process the options when the package is loaded (with |\usepackage|).
+% \begin{macrocode}
+\ProcessKeysOptions { piton / package }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\begingroup
+\cs_new_protected:Npn \@@_set_escape_char:nn #1 #2
+ {
+ \directlua { begin_escape = "#1" }
+ \directlua { end_escape = "#2" }
+ }
+\cs_generate_variant:Nn \@@_set_escape_char:nn { x x }
+\@@_set_escape_char:xx
+ { \tl_head:V \c_@@_escape_inside_tl }
+ { \tl_tail:V \c_@@_escape_inside_tl }
+\endgroup
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\msg_new:nnn { piton } { LuaLaTeX~mandatory }
+ { The~package~'piton'~must~be~used~with~LuaLaTeX.\\ It~won't~be~loaded. }
+\sys_if_engine_luatex:F { \msg_critical:nn { piton } { LuaLaTeX~mandatory } }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\RequirePackage { luatexbase }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\msg_new:nnn { piton } { piton.lua~not~found }
+ {
+ The~file~'piton.lua'~can't~be~found.\\
+ The package~'piton'~won't be loaded.
+ }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\file_if_exist:nF { piton.lua }
+ { \msg_critical:nn { piton } { piton.lua~not~found} }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\lua_now:e { require("piton.lua") }
+% \end{macrocode}
+%
+% \bigskip
+% The following function has not a name with the conventions of L3 because it
+% will be used in the Lua code.
+% \begin{macrocode}
+\cs_new:Npn \pitonEOL
+ {
+ \par \leavevmode
+ \@@_print_number:
+ }
+% \end{macrocode}
+%
+% \medskip
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_print_number:
+ { \bool_if:NT \l_@@_line_numbers_bool \@@_actually_print_number: }
+% \end{macrocode}
+%
+% \medskip
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_actually_print_number:
+ {
+% \end{macrocode}
+% The empty lines in the code are not numbered.
+% \begin{macrocode}
+ \bool_if:NF \l_@@_all_line_numbers_bool
+ { \peek_meaning:NF \pitonEOL }
+ \@@_actually_print_number_i:
+ }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_actually_print_number_i:
+ {
+ \int_incr:N \l_@@_lineno_int
+ \hbox_overlap_left:n
+ {
+ { \color{gray} \footnotesize \int_to_arabic:n \l_@@_lineno_int }
+ \quad
+ }
+ }
+% \end{macrocode}
+%
+% \bigskip
+% The following counter will be used to count the lines in the code when the
+% user requires the numbers of the lines to be printed.
+% \begin{macrocode}
+\int_new:N \l_@@_lineno_int
+% \end{macrocode}
+%
+% \bigskip
+% The following integer is the number of characters to gobble on the left side
+% of the Python listings. Of course, the initial value is $0$.
+% \begin{macrocode}
+\int_new:N \l_@@_gobble_int
+% \end{macrocode}
+%
+%
+% \bigskip
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_define_trim_syntax:n #1
+ { \lua_now:n { define_trim_syntax(#1) } }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\NewDocumentCommand { \piton } { v }
+ {
+ \group_begin:
+ \ttfamily
+ \lua_now:e { Parse(token.scan_argument()) } { #1 }
+ \group_end:
+ }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\NewDocumentCommand { \PitonInputFile } { m }
+ {
+ \group_begin:
+ \ttfamily
+ \bool_if:NT \l_@@_line_numbers_bool
+ {
+ \@@_actually_print_number:
+ \vspace{-\baselineskip}
+ }
+ \lua_now:e { ParseFile(token.scan_argument()) } { #1 }
+ \group_end:
+ }
+% \end{macrocode}
+%
+% \subsection{PitonOptions}
+%
+% \begin{macrocode}
+\bool_new:N \l_@@_line_numbers_bool
+\bool_new:N \l_@@_all_line_numbers_bool
+% \end{macrocode}
+%
+% \begin{macrocode}
+\keys_define:nn { piton / PitonOptions }
+ {
+ gobble .int_set:N = \l_@@_gobble_int ,
+ gobble .value_required:n = true ,
+ auto-gobble .code:n = \int_set:Nn \l_@@_gobble_int { -1 } ,
+ auto-gobble .value_forbidden:n = true ,
+ line-numbers .bool_set:N = \l_@@_line_numbers_bool ,
+ line-numbers .default:n = true ,
+ all-line-numbers .code:n =
+ \bool_set_true:N \l_@@_line_numbers_bool
+ \bool_set_true:N \l_@@_all_line_numbers_bool ,
+ all-line-numbers .value_forbidden:n = true
+ }
+% \end{macrocode}
+%
+% \bigskip
+% The argument of |\PitonOptions| is provided by currification.
+% \begin{macrocode}
+\NewDocumentCommand \PitonOptions { }
+ { \keys_set:nn { piton / PitonOptions } }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\NewDocumentCommand { \NewPitonEnvironment } { m m m m }
+ {
+% \end{macrocode}
+% We construct a TeX macro which will catch as its argument all the tokens
+% until \textsl{\texttt{newline}} + |\end{Piton}| with, in that
+% \textsl{\texttt{newline}}| + \end{Piton}|, the catcode of
+% \textsl{\texttt{newline}}, |\|, |{| and |}| equal to 12 (``\texttt{other}'').
+% The latter explains why the definition of that function is a bit complicated.
+% \begin{macrocode}
+ \use:x
+ {
+ \cs_set_protected:Npn
+ \use:c { __piton_collect_ #1 :w }
+ ####1
+ \c_backslash_str end \c_left_brace_str #1 \c_right_brace_str
+ }
+ {
+ \group_end:
+ \par \addvspace { 0.5 em }
+ {
+ \dim_set_eq:NN \parindent \c_zero_dim
+ \ttfamily
+ \bool_if:NT \l_@@_line_numbers_bool
+ {
+ \@@_actually_print_number:
+ \vspace{-\baselineskip}
+ }
+ \int_case:nnF \l_@@_gobble_int
+ {
+ 0
+% \end{macrocode}
+% Be careful: the last argument is provided by currification.
+% \begin{macrocode}
+ { \lua_now:e { Parse(token.scan_argument()) } }
+ { -1 }
+ { \lua_now:e { AutoGobbleParse(token.scan_argument()) } }
+ }
+ {
+ \exp_args:NV \@@_define_trim_syntax:n \l_@@_gobble_int
+ \lua_now:e { GobbleParse(token.scan_argument()) }
+ }
+ { ##1 }
+ }
+ \par \addvspace { 0.5 em }
+% \end{macrocode}
+% The following |\end{#1}| is only for the groups and the stack of
+% environments of LaTeX.
+% \begin{macrocode}
+ \end { #1 }
+ }
+% \end{macrocode}
+%
+%
+% \bigskip
+% We can now define the new environment by defining the two TeX macros
+% characteristic to the LaTeX environment.
+% \begin{macrocode}
+ \NewDocumentEnvironment { #1 } { #2 }
+ {
+ #3
+ \group_begin:
+ \tl_map_function:nN
+ { \ \\ \{ \} \$ \& \# \^ \_ \% \~ \^^M }
+ \char_set_catcode_other:N
+ \use:c { __piton_collect_ #1 :w }
+ }
+ { #4 }
+ }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\NewPitonEnvironment { Piton } { } { } { }
+% \end{macrocode}
+%
+% \bigskip
+%
+% \begin{macrocode}
+\NewDocumentCommand { \PitonStyle } { m } { \csname pitonStyle#1\endcsname }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\NewDocumentCommand { \SetPitonStyle } { } { \keys_set:nn { piton } }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_math_scantokens:n #1
+ { \normalfont \scantextokens { $#1$ } }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\keys_define:nn { piton }
+ {
+ String.Interpol .tl_set:c = pitonStyle String.Interpol ,
+ String.Interpol .value_required:n = true ,
+ FormattingType .tl_set:c = pitonStyle FormattingType ,
+ FormattingType .value_required:n = true ,
+ Dict.Value .tl_set:c = pitonStyle Dict.Value ,
+ Dict.Value .value_required:n = true ,
+ Name.Decorator .tl_set:c = pitonStyle Name.Decorator ,
+ Name.Decorator .value_required:n = true ,
+ Name.Function .tl_set:c = pitonStyle Name.Function ,
+ Name.Function .value_required:n = true ,
+ Keyword .tl_set:c = pitonStyle Keyword ,
+ Keyword .value_required:n = true ,
+ Keyword.Constant .tl_set:c = pitonStyle Keyword.Constant ,
+ Keyword.constant .value_required:n = true ,
+ String.Doc .tl_set:c = pitonStyle String.Doc ,
+ String.Doc .value_required:n = true ,
+ Interpol.Inside .tl_set:c = pitonStyle Interpol.Inside ,
+ Interpol.Inside .value_required:n = true ,
+ String.Long .tl_set:c = pitonStyle String.Long ,
+ String.Long .value_required:n = true ,
+ String.Short .tl_set:c = pitonStyle String.Short ,
+ String.Short .value_required:n = true ,
+ String .meta:n = { String.Long = #1 , String.Short = #1 } ,
+ Comment.Math .tl_set:c = pitonStyle Comment.Math ,
+ Comment.Math .default:n = \@@_math_scantokens:n ,
+ Comment.Math .initial:n = ,
+ Comment .tl_set:c = pitonStyle Comment ,
+ Comment .value_required:n = true ,
+ InitialValues .tl_set:c = pitonStyle InitialValues ,
+ InitialValues .value_required:n = true ,
+ Number .tl_set:c = pitonStyle Number ,
+ Number .value_required:n = true ,
+ Name.Namespace .tl_set:c = pitonStyle Name.Namespace ,
+ Name.Namespace .value_required:n = true ,
+ Name.Class .tl_set:c = pitonStyle Name.Class ,
+ Name.Class .value_required:n = true ,
+ Name.Builtin .tl_set:c = pitonStyle Name.Builtin ,
+ Name.Builtin .value_required:n = true ,
+ Name.Type .tl_set:c = pitonStyle Name.Type ,
+ Name.Type .value_required:n = true ,
+ Operator .tl_set:c = pitonStyle Operator ,
+ Operator .value_required:n = true ,
+ Operator.Word .tl_set:c = pitonStyle Operator.Word ,
+ Operator.Word .value_required:n = true ,
+ Post.Function .tl_set:c = pitonStyle Post.Function ,
+ Post.Function .value_required:n = true ,
+ Exception .tl_set:c = pitonStyle Exception ,
+ Exception .value_required:n = true ,
+ Comment.LaTeX .tl_set:c = pitonStyle Comment.LaTeX ,
+ Comment.LaTeX .value_required:n = true ,
+ unknown .code:n = \msg_error:nn { piton }{ Unknown~key~for~SetPitonStyle }
+ }
+% \end{macrocode}
+%
+%
+% \bigskip
+% \begin{macrocode}
+\msg_new:nnn { piton } { Unknown~key~for~SetPitonStyle } {
+ The~style~'\l_keys_key_str'~is~unknown.\\
+ This~key~will~be~ignored.\\
+ The~available~styles~are~(in~alphabetic~order):~
+ Comment,~
+ Comment.LaTeX,~
+ Dict.Value,~
+ Exception,~
+ InitialValues,~
+ Keyword,~
+ Keyword.Constant,~
+ Name.Builtin,~
+ Name.Class,~
+ Name.Decorator,~
+ Name.Function,~
+ Name.Namespace,~
+ Number,~
+ Operator,~
+ Operator.Word,~
+ String,~
+ String.Doc,~
+ String.Long,~
+ String.Short,~and~
+ String.Interpol. }
+% \end{macrocode}
+%
+% \bigskip
+% \begin{macrocode}
+\SetPitonStyle
+ {
+ Comment = \color[HTML]{0099FF} \itshape ,
+ Exception = \color[HTML]{CC0000} ,
+ Keyword = \color[HTML]{006699} \bfseries ,
+ Keyword.Constant = \color[HTML]{006699} \bfseries ,
+ Name.Builtin = \color[HTML]{336666} ,
+ Name.Decorator = \color[HTML]{9999FF},
+ Name.Class = \color[HTML]{00AA88} \bfseries ,
+ Name.Function = \color[HTML]{CC00FF} ,
+ Name.Namespace = \color[HTML]{00CCFF} ,
+ Number = \color[HTML]{FF6600} ,
+ Operator = \color[HTML]{555555} ,
+ Operator.Word = \bfseries ,
+ String = \color[HTML]{CC3300} ,
+ String.Doc = \color[HTML]{CC3300} \itshape ,
+ String.Interpol = \color[HTML]{AA0000} ,
+ Comment.LaTeX = \normalfont \color[rgb]{.468,.532,.6} ,
+ Name.Type = \color[HTML]{336666} ,
+ InitialValues = \piton ,
+ Dict.Value = \piton ,
+ Post.Function = \piton ,
+ Interpol.Inside = \color{black}\piton ,
+ }
+% \end{macrocode}
+%
+%
+% \vspace{1cm}
+% \tableofcontents
+% \end{document}
+%
+% Local Variables:
+% TeX-fold-mode: t
+% TeX-fold-preserve-comments: nil
+% flyspell-mode: nil
+% fill-column: 80
+% End:
+
+
+
+
+
+
diff --git a/macros/luatex/latex/piton/piton.ins b/macros/luatex/latex/piton/piton.ins
new file mode 100644
index 0000000000..04c653960d
--- /dev/null
+++ b/macros/luatex/latex/piton/piton.ins
@@ -0,0 +1,47 @@
+%%
+%% Copyright (C) 2022 by F. Pantigny
+%%
+%%
+%% This file 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.
+%%
+\input l3docstrip.tex
+\keepsilent
+\usedir{tex/latex/cascade}
+\preamble
+
+Copyright (C) 2022 by F. Pantigny
+
+This file 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.
+
+\endpreamble
+\generate{\file{piton.sty}{\from{piton.dtx}{package}}}
+\Msg{*********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the}
+\Msg{* following files into a directory searched by TeX:}
+\Msg{*}
+\Msg{* \space\space piton.sty\space\space and\space\space piton.lua}
+\Msg{*}
+\Msg{* To produce the documentation run the file piton.dtx}
+\Msg{* through LuaLaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing!}
+\Msg{*********************************************************}
+\endbatchfile
+
diff --git a/macros/luatex/latex/piton/piton.lua b/macros/luatex/latex/piton/piton.lua
new file mode 100644
index 0000000000..8ef48f45b1
--- /dev/null
+++ b/macros/luatex/latex/piton/piton.lua
@@ -0,0 +1,473 @@
+-- -*- coding: utf-8 ; -*-
+--
+-- This is file 'piton.lua' which is a part of the Latex package 'piton'
+-- Copyright (C) 2022 by F. Pantigny
+
+-- This file 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 file is part of the version 0.55 of the package 'piton'
+
+local P, S, V , C , Ct, Cc, Cf = lpeg.P, lpeg.S, lpeg.V, lpeg.C, lpeg.Ct, lpeg.Cc, lpeg.Cf
+
+
+--[[ By convention, a capture which provides as value a table (and not a string), provides, in fact,
+a string (the first element of the table) which is a formatting LaTeX instruction (it will be
+thrown back to TeX with normal catcodes (ant not ``other'' catcode for everybody).]]
+
+local function L(string)
+ return lpeg.Cc ( { string } )
+end
+
+local function K(pattern, style)
+ return
+ L ( "{\\PitonStyle{" .. style .. "}{" )
+ * lpeg.C(pattern)
+ * L ( "}}" )
+end
+
+
+--[[ The text in "escape" (between begin_escape and end_escape) is captured
+and put in a table (with only one component). Indeed, we have decided that a capture
+which is encapsulated in a table must be transmitted to TeX with the normal TeX catcodes.]]
+
+local Escape = P(begin_escape)
+ * Ct ( C ( ( 1 - P(end_escape) ) ^ 1 ) )
+ * P(end_escape)
+
+local EOL = ( P "\r" ) * L ( "\\pitonEOL" )
+
+
+
+lpeg.locale(lpeg) -- mandatory
+
+local alpha , digit , space , punct = lpeg.alpha , lpeg.digit , lpeg.space , lpeg.punct
+
+local letter = alpha + S"âàçéèêëïîôûüÂÀÇÉÈÊËÏÎÔÛÜ_"
+
+local alphanum = letter + digit
+
+local identifier = letter * alphanum ^ 0
+
+local Identifier = C ( identifier )
+
+local Space = C ( ( space - P "\r" ) ^ 1 )
+
+local SkipSpace = C ( ( space - P "\r" ) ^ 0 )
+
+local Punct = C ( punct )
+
+
+local Number =
+ K (
+ ( digit^1 * P "." * digit^0 + digit^0 * P "." * digit^1 + digit^1 )
+ * ( S "eE" * S "+-" ^ -1 * digit^1 ) ^ -1
+ + digit^1
+ , 'Number' )
+
+local Word = C ( ( ( 1 - space ) - S "'\"\r[()]" - digit ) ^ 1 )
+
+local Delim = C ( S "[()]" )
+
+
+local Keyword =
+ K ( P "assert" + P "break" + P "case" + P "continue" + P "del"
+ + P "elif" + P "else" + P "except" + P "exec" + P "finally" + P "for" + P "from"
+ + P "global" + P "if" + P "import" + P "lambda" + P "non local"
+ + P "pass" + P "return" + P "try" + P "while"
+ + P "with" + P "yield" + P "yield from" ,
+ 'Keyword' )
+ + K ( P "True" + P "False" + P "None" , 'Keyword.Constant' )
+
+
+local Builtin =
+ K ( P "__import__" + P "abs" + P "all" + P "any" + P "bin" + P "bool" + P "bytearray"
+ + P "bytes" + P "chr" + P "classmethod" + P "compile" + P "complex" + P "delattr"
+ + P "dict" + P "dir" + P "divmod" + P "enumerate" + P "eval" + P "filter"
+ + P "float" + P "format" + P "frozenset" + P "getattr" + P "globals" + P "hasattr"
+ + P "hash" + P "hex" + P "id" + P "input" + P "int" + P "isinstance" + P "issubclass"
+ + P "iter" + P "len" + P "list" + P "locals" + P "map" + P "max" + P "memoryview" + P "min"
+ + P "next" + P "object" + P "oct" + P "open" + P "ord" + P "pow" + P "print" + P "property"
+ + P "range" + P "repr" + P "reversed" + P "round" + P "set" + P "setattr" + P "slice"
+ + P "sorted" + P "staticmethod" + P "str" + P "sum" + P "super" + P "tuple" + P "type"
+ + P "vars" + P "zip" ,
+ 'Name.Builtin' )
+
+
+local Exception =
+ K ( "ArithmeticError" + P "AssertionError" + P "AttributeError"
+ + P "BaseException" + P "BufferError" + P "BytesWarning" + P "DeprecationWarning"
+ + P "EOFError" + P "EnvironmentError" + P "Exception" + P "FloatingPointError"
+ + P "FutureWarning" + P "GeneratorExit" + P "IOError" + P "ImportError"
+ + P "ImportWarning" + P "IndentationError" + P "IndexError" + P "KeyError"
+ + P "KeyboardInterrupt" + P "LookupError" + P "MemoryError" + P "NameError"
+ + P "NotImplementedError" + P "OSError" + P "OverflowError"
+ + P "PendingDeprecationWarning" + P "ReferenceError" + P "ResourceWarning"
+ + P "RuntimeError" + P "RuntimeWarning" + P "StopIteration"
+ + P "SyntaxError" + P "SyntaxWarning" + P "SystemError" + P "SystemExit"
+ + P "TabError" + P "TypeError" + P "UnboundLocalError" + P "UnicodeDecodeError"
+ + P "UnicodeEncodeError" + P "UnicodeError" + P "UnicodeTranslateError"
+ + P "UnicodeWarning" + P "UserWarning" + P "ValueError" + P "VMSError"
+ + P "Warning" + P "WindowsError" + P "ZeroDivisionError"
+ + P "BlockingIOError" + P "ChildProcessError" + P "ConnectionError"
+ + P "BrokenPipeError" + P "ConnectionAbortedError" + P "ConnectionRefusedError"
+ + P "ConnectionResetError" + P "FileExistsError" + P "FileNotFoundError"
+ + P "InterruptedError" + P "IsADirectoryError" + P "NotADirectoryError"
+ + P "PermissionError" + P "ProcessLookupError" + P "TimeoutError"
+ + P "StopAsyncIteration" + P "ModuleNotFoundError" + P "RecursionError" ,
+ 'Exception' )
+
+local RaiseException = K ( P "raise" , 'Keyword' ) * SkipSpace * Exception * C ( P "(" )
+
+local ExceptionInConsole = Exception * C ( ( 1 - P "\r" ) ^ 0 ) * EOL
+
+
+local Namespace =
+ K ( P "from" , 'Keyword' ) * Space * K ( alphanum^1 , 'Name.Namespace' )
+ * ( Space * K ( P "import" , 'Keyword' ) ) ^ -1
+
+
+local ImportAs = K ( P "import" , 'Keyword' )
+ * Space
+ * K ( identifier , 'Name.Namespace' )
+ * ( SkipSpace * C ( P "," ) * SkipSpace * K ( identifier , 'Name.Namespace' ) ) ^ 0
+ * (
+ Space * K ( P "as" , 'Keyword' ) * Space * K ( identifier , 'Name.Namespace' )
+ ) ^ 0
+
+local Class = K ( P "class" , 'Keyword' ) * Space * K ( identifier , 'Name.Class' )
+
+local Decorator = K ( P "@" * letter^1 , 'Name.Decorator' )
+
+local SingleShortInterpol =
+ K ( P "{" , 'String.Interpol')
+ * K ( ( 1 - S "}':" ) ^ 0 , 'Interpol.Inside' )
+ * C ( P ":" * (1 - S "}:'") ^ 0 ) ^ -1
+ * K ( P "}" , 'String.Interpol' )
+
+local DoubleShortInterpol =
+ K ( P "{" , 'String.Interpol' )
+ * K ( ( 1 - S "}\":" ) ^ 0 , 'Interpol.Inside' )
+ * ( K ( P ":" , 'String.Interpol' ) * C ( (1 - S "}:\"") ^ 0 ) ) ^ -1
+ * K ( P "}" , 'String.Interpol' )
+
+local SingleLongInterpol =
+ K ( P "{" , 'String.Interpol' )
+ * K ( ( 1 - S "}:\r" - P "'''" ) ^ 0 , 'Interpol.Inside' )
+ * C ( P ":" * (1 - S "}:\r" - P "'''" ) ^ 0 ) ^ -1
+ * K ( P "}" , 'String.Interpol' )
+
+local DoubleLongInterpol =
+ K ( P "{" , 'String.Interpol' )
+ * K ( ( 1 - S "}:\r" - P "\"\"\"" ) ^ 0 , 'Interpol.Inside' )
+ * C ( P ":" * (1 - S "}:\r" - P "\"\"\"" ) ^ 0 ) ^ -1
+ * K ( P "}" , 'String.Interpol' )
+
+local SingleShortPureString = C ( ( P "\\'" + P "{{" + P "}}" + 1 - S "{}'" ) ^ 1 )
+
+local DoubleShortPureString = C ( ( P "\\\"" + P "{{" + P "}}" + 1 - S "{}\"" ) ^ 1 )
+
+local SingleLongPureString = C ( ( 1 - P "'''" - S "{}'\r" ) ^ 1 )
+
+local DoubleLongPureString = C ( ( 1 - P "\"\"\"" - S "{}\"\r" ) ^ 1 )
+
+local SingleShortString =
+ L ( "{\\PitonStyle{String.Short}{" )
+ * (
+ C ( P "f'" + P "F'" )
+ * ( SingleShortInterpol + SingleShortPureString ) ^ 0
+ * C ( P "'" )
+ +
+ C ( ( P "'" + P "r'" + P "R'" ) * ( P "\\'" + 1 - S "'\r" ) ^ 0 * P "'" )
+ )
+ * L ( "}}" )
+
+local DoubleShortString =
+ L ( "{\\PitonStyle{String.Short}{" )
+ * (
+ C ( P "f\"" + P "F\"" )
+ * ( DoubleShortInterpol + DoubleShortPureString ) ^ 0
+ * C ( P "\"" )
+ +
+ C ( ( P "\"" + P "r\"" + P "R\"" ) * ( P "\\\"" + 1 - S "\"\r" ) ^ 0 * P "\"" )
+ )
+ * L ( "}}" )
+
+
+local ShortString = SingleShortString + DoubleShortString
+
+
+local SingleLongString =
+ L "{\\PitonStyle{String.Long}{"
+ * (
+ C ( S "fF" * P "'''" )
+ * ( SingleLongInterpol + SingleLongPureString ) ^ 0
+ * L "}}"
+ * (
+ EOL
+ +
+ L "{\\PitonStyle{String.Long}{"
+ * ( SingleLongInterpol + SingleLongPureString ) ^ 0
+ * L "}}"
+ * EOL
+ ) ^ 0
+ * L "{\\PitonStyle{String.Long}{"
+ * ( SingleLongInterpol + SingleLongPureString ) ^ 0
+ +
+ C ( ( S "rR" ) ^ -1 * P "'''" * ( 1 - P "'''" - P "\r" ) ^ 0 )
+ * L "}}"
+ * (
+ L "{\\PitonStyle{String.Long}{"
+ * C ( ( 1 - P "'''" - P "\r" ) ^ 0 )
+ * L "}}"
+ * EOL
+ ) ^ 0
+ * L "{\\PitonStyle{String.Long}{"
+ * C ( ( 1 - P "'''" - P "\r" ) ^ 0 )
+ )
+ * C ( P "'''" )
+ * L "}}"
+
+
+local DoubleLongString =
+ L "{\\PitonStyle{String.Long}{"
+ * (
+ C ( S "fF" * P "\"\"\"" )
+ * ( DoubleLongInterpol + DoubleLongPureString ) ^ 0
+ * L "}}"
+ * (
+ EOL
+ +
+ L "{\\PitonStyle{String.Long}{"
+ * ( DoubleLongInterpol + DoubleLongPureString ) ^ 0
+ * L "}}"
+ * EOL
+ ) ^ 0
+ * L "{\\PitonStyle{String.Long}{"
+ * ( DoubleLongInterpol + DoubleLongPureString ) ^ 0
+ +
+ C ( ( S "rR" ) ^ -1 * P "\"\"\"" * ( 1 - P "\"\"\"" - P "\r" ) ^ 0 )
+ * L "}}"
+ * (
+ L "{\\PitonStyle{String.Long}{"
+ * C ( ( 1 - P "\"\"\"" - P "\r" ) ^ 0 )
+ * L "}}"
+ * EOL
+ ) ^ 0
+ * L "{\\PitonStyle{String.Long}{"
+ * C ( ( 1 - P "\"\"\"" - P "\r" ) ^ 0 )
+ )
+ * C ( P "\"\"\"" )
+ * L "}}"
+
+
+
+local LongString = SingleLongString + DoubleLongString
+
+
+local Expression =
+ P { "E" ,
+ E = ( 1 - S "{}()[]\r," ) ^ 0
+ * (
+ ( P "{" * V "F" * P "}"
+ + P "(" * V "F" * P ")"
+ + P "[" * V "F" * P "]" ) * ( 1 - S "{}()[]\r," ) ^ 0
+ ) ^ 0 ,
+ F = ( 1 - S "{}()[]\r\"'" ) ^ 0
+ * ( (
+ P "'" * (P "\\'" + 1 - S"'\r" )^0 * P "'"
+ + P "\"" * (P "\\\"" + 1 - S"\"\r" )^0 * P "\""
+ + P "{" * V "F" * P "}"
+ + P "(" * V "F" * P ")"
+ + P "[" * V "F" * P "]"
+ ) * ( 1 - S "{}()[]\r\"'" ) ^ 0 ) ^ 0 ,
+ }
+
+local Param = SkipSpace * K ( identifier , '' ) * SkipSpace
+ * ( K ( P "=" * Expression , 'InitialValues' )
+ + K ( P ":" , '' ) * SkipSpace * K ( letter^1 , 'Name.Type' ))
+ + SkipSpace * K ( alphanum ^ 1 , '' ) * SkipSpace
+
+local Params = Param * ( K ( P "," , '' ) * Param ) ^ 0
+
+local StringDoc = K ( P "\"\"\"" , 'String.Doc' )
+ * ( K ( (1 - P "\"\"\"" - P "\r" ) ^ 0 , 'String.Doc' ) * EOL ) ^ 0
+ * K ( ( 1 - P "\"\"\"" - P "\r" ) ^ 0 * P "\"\"\"" , 'String.Doc' )
+ + K ( P "'''" , 'String.Doc' )
+ * ( K ( (1 - P "'''" - P "\r")^0 , 'String.Doc' ) * EOL ) ^ 0
+ * K ( ( 1 - P "'''" - P "\r")^0 * P "'''" , 'String.Doc' )
+
+local CommentMath = P "$" * K ( ( 1 - S "$\r" ) ^ 1 , 'Comment.Math' ) * P "$"
+
+
+local Comment = L ( "{\\pitonStyleComment {" )
+ * C ( P "#" ) * ( CommentMath + C ( ( 1 - S "$\r" ) ^ 1 ) ) ^ 0
+ * L ( "}}" )
+ * ( EOL + -1 )
+
+local CommentLaTeX =
+ P "##"
+ * L "{\\PitonStyle{Comment.LaTeX}{"
+ * Ct ( C ( ( 1 - P "\r" ) ^ 0 ) )
+ * L "}}"
+ * ( EOL + -1 )
+
+local DefFunction =
+ K ( P "def" , 'Keyword' )
+ * Space
+ * K ( identifier , 'Name.Function' )
+ * ( SkipSpace * K ( P "(" , '' ) * Params * K ( P ")" , '' ) ) ^ -1
+ * ( SkipSpace
+ * K ( ( 1 - S ":\r" )^0 , 'Post.Function' )
+ * K ( P ":" , 'Keyword' )
+ * SkipSpace
+ * ( EOL + CommentLaTeX + Comment )
+ * SkipSpace
+ * StringDoc ) ^ -1
+
+local ItemDict = ShortString * SkipSpace * C ( P ":" ) * K ( Expression , 'Dict.Value' )
+
+local ItemOfSet = SkipSpace * ( ItemDict + ShortString ) * SkipSpace
+
+local Set = C ( P "{" )
+ * ItemOfSet * ( C ( P "," ) * ItemOfSet ) ^ 0
+ * C ( P "}" )
+
+
+local Operator = K ( P "!=" + P "==" + P "<<" + P ">>" + S "-~+/*%=<>&.@|" , 'Operator')
+
+local OperatorWord = K ( P "in" + P "is" + P "and" + P "or" + P "not" , 'Operator.Word')
+
+local SyntaxPython =
+ ( ( space - P "\r" ) ^0 * P "\r" ) ^ -1 * space ^ -1 *
+ ( ( space^1 * -1 )
+ + EOL
+ + Space
+ + Escape
+ + CommentLaTeX
+ + LongString
+ + Comment
+ + ExceptionInConsole
+ + Set
+ + Delim
+ + Class * ( Space + Punct + EOL )
+ + Namespace * ( Space + Punct + EOL )
+ + ImportAs
+ + RaiseException
+ + Keyword * ( Space + Punct + EOL )
+ + DefFunction
+ + ShortString
+ + Decorator * ( Space + Punct + EOL )
+ + Operator
+ + OperatorWord * ( Space + Punct + EOL )
+ + Builtin * ( Space + Punct + EOL )
+ + Identifier
+ + Number
+ + Word
+ ) ^0 * -1
+
+
+local MinimalSyntax =
+ P { "S" ;
+ S = K ( (1 - P "\r" ) ^ 0 , '') + EOL * S
+ }
+
+
+--- with cctab, all characters including spaces have catcode 12
+local cctab = luatexbase.catcodetables.CatcodeTableOther
+
+function Parse(code)
+ local t = Ct(SyntaxPython) : match(code)
+ if t then else t = Ct(MinimalSyntax) : match(code) end
+ for i = 1 , #t do
+ if type(t[i]) == 'string'
+ then
+ tex.sprint(cctab, t[i])
+ else
+ tex.sprint( t[i][1] )
+ end
+ end
+end
+
+function ParseFile(name)
+ s = ''
+ for line in io.lines(name) do s = s .. '\r' .. line end
+ Parse(s)
+end
+
+
+function define_gobble_syntax(n)
+ GobbleSyntax = ( 1 - P "\r" ) ^ (-n) * C ( ( 1 - P "\r" ) ^0 )
+ * ( C ( P "\r" )
+ * ( 1 - P "\r" ) ^ (-n)
+ * C ( ( 1 - P "\r" ) ^0 )
+ ) ^ 0
+end
+
+function GobbleParse(code)
+ local t = Ct(GobbleSyntax):match(code)
+ local new_code = ""
+ for i = 1 , #t do
+ new_code = new_code .. t[i]
+ end
+ Parse(new_code)
+end
+
+
+function min(x,y)
+ if x <= y
+ then return x
+ else return y
+ end
+end
+
+function add(acc,new_value)
+ return acc + new_value
+end
+
+
+--[[ The following LPEG returns as capture the minimal number of spaces at
+the beginning of the lines of code]]
+AutoGobbleSyntax =
+ ( space ^ 0 * P "\r" ) ^ -1
+ * Cf (
+ (
+ ( P " " ) ^ 0 * P "\r"
+ +
+ Cf ( Cc(0) * ( P " " * Cc(1) ) ^ 0 , add )
+ * ( 1 - P " " ) * ( 1 - P "\r" ) ^ 0 * P "\r"
+ ) ^ 0
+ *
+ ( Cf ( Cc(0) * ( P " " * Cc(1) ) ^ 0 , add )
+ * ( 1 - P " " ) * ( 1 - P "\r" ) ^ 0 ) ^ -1 ,
+ min
+ )
+
+
+function AutoGobbleParse(code)
+ local n = AutoGobbleSyntax:match(code)
+ if n==0
+ then Parse(code)
+ else define_gobble_syntax(n)
+ GobbleParse(code)
+ end
+end
+
+
+
+
+
+
+
+
+
+
+
diff --git a/macros/luatex/latex/piton/piton.pdf b/macros/luatex/latex/piton/piton.pdf
new file mode 100644
index 0000000000..34024c336e
--- /dev/null
+++ b/macros/luatex/latex/piton/piton.pdf
Binary files differ
diff --git a/support/TeX4ht/source/ChangeLog b/support/TeX4ht/source/ChangeLog
index 4290ad4865..940b038095 100644
--- a/support/TeX4ht/source/ChangeLog
+++ b/support/TeX4ht/source/ChangeLog
@@ -1,3 +1,9 @@
+2022-09-14 Michal Hoftich <michal.h21@gmail.com>
+
+ * tex4ht-4ht.tex (usepackage.4ht, luatexja-hooks.4ht): prevent
+ luatexja and luatexja-fontspec packages from loading.
+ https://tex.stackexchange.com/a/287890/2891
+
2022-08-29 Michal Hoftich <michal.h21@gmail.com>
* tex4ht-html4.tex (html4-math.4ht),
diff --git a/support/TeX4ht/source/mktex4ht-cnf.tex b/support/TeX4ht/source/mktex4ht-cnf.tex
index fc72c84269..e9e10bc987 100644
--- a/support/TeX4ht/source/mktex4ht-cnf.tex
+++ b/support/TeX4ht/source/mktex4ht-cnf.tex
@@ -1,4 +1,4 @@
-% $Id: mktex4ht-cnf.tex 1184 2022-08-17 11:45:35Z michal_h21 $
+% $Id: mktex4ht-cnf.tex 1193 2022-09-14 14:21:16Z michal_h21 $
% Manually-maintained file, listing *.4ht files created by tex4ht-4ht.tex.
% Read by tex4ht-cond4ht.
%
@@ -356,6 +356,7 @@
\AddFile{9}{exam}
\AddFile{9}{ctex}
\AddFile{9}{ctexart}
+\AddFile{9}{luatexja-hooks}
\AddFile{9}{polyglossia}
\AddFile{9}{gloss-french}
\AddFile{9}{fontspec}
diff --git a/support/TeX4ht/source/tex4ht-4ht.tex b/support/TeX4ht/source/tex4ht-4ht.tex
index 729c5d9b00..4f4a5c6ba5 100644
--- a/support/TeX4ht/source/tex4ht-4ht.tex
+++ b/support/TeX4ht/source/tex4ht-4ht.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-4ht.tex 1189 2022-08-25 11:20:43Z michal_h21 $
+% $Id: tex4ht-4ht.tex 1193 2022-09-14 14:21:16Z michal_h21 $
% tex tex4ht-4ht or ht tex tex4ht-4ht
%
% Copyright 2009-2022 TeX Users Group
@@ -4412,6 +4412,28 @@ Add dummy .4ht file. We may use it in the future.
>>> \AddFile{9}{ctexart}
%%%%%%%%%%%%%%%%%
+\Section{luatexja}
+%%%%%%%%%%%%%%%%%
+
+The LuaTeX-ja package produces fatal errors with \TeX4ht, so we need to disable it.
+The same is true also for the luatexja-fontspec package.
+
+\<add to usepackage\><<<
+\Configure{PackageHooks}{luatexja.sty}{luatexja-hooks.4ht}
+\Configure{PackageHooks}{luatexja-fontspec.sty}{luatexja-hooks.4ht}
+>>>
+
+\<luatexja-hooks.4ht\><<<
+% luatexja-hooks.4ht (|version), generated from |jobname.tex
+% Copyright 2022 TeX Users Group
+|<TeX4ht license text|>
+\:dontusepackage{luatexja}
+\:dontusepackage{luatexja-fontspec}
+\endinput
+>>> \AddFile{9}{luatexja-hooks}
+
+
+%%%%%%%%%%%%%%%%%
\Section{polyglossia}
%%%%%%%%%%%%%%%%%
diff --git a/support/TeX4ht/source/tex4ht-mathjax.tex b/support/TeX4ht/source/tex4ht-mathjax.tex
index 1afcb7ecbe..0600eb10c3 100644
--- a/support/TeX4ht/source/tex4ht-mathjax.tex
+++ b/support/TeX4ht/source/tex4ht-mathjax.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-mathjax.tex 1107 2022-04-04 14:44:55Z karl $
+% $Id: tex4ht-mathjax.tex 1190 2022-08-29 10:21:19Z michal_h21 $
% compile: latex tex4ht-mathjax
%
% Copyright 2018-2022 TeX Users Group
@@ -87,7 +87,7 @@ environments. They will then keep the LaTeX code unchanged.
\long\def\AltMathOne#1${\alteqtoks{\(#1\)}$}
% this seems a bit hacky -- we need to skip some code inserted at the
% beginning of each display math
-\long\def\AltlDisplayDollars\fi#1$${\alteqtoks{\[#1\]}$$}
+\long\def\AltlDisplayDollars#1$${\alteqtoks{\[#1\]}$$}
\newcommand\VerbMathToks[2]{%
\alteqtoks{\begin{#2}
diff --git a/systems/mac/mactex/ExtrasFolder.pdf b/systems/mac/mactex/ExtrasFolder.pdf
index e9953c0817..122ade69f4 100644
--- a/systems/mac/mactex/ExtrasFolder.pdf
+++ b/systems/mac/mactex/ExtrasFolder.pdf
Binary files differ
diff --git a/systems/mac/mactex/Licenses.txt b/systems/mac/mactex/Licenses.txt
index 83a57a1bde..e92688f23e 100644
--- a/systems/mac/mactex/Licenses.txt
+++ b/systems/mac/mactex/Licenses.txt
@@ -1,10 +1,10 @@
$Id: Licenses.txt,v 1.14 2007/02/28 14:23:19 herbs Exp $
-Brief summary of the licensing of the various applications included as of 2022/09.01
+Brief summary of the licensing of the various applications included as of 2022/09/14
Aquamacs Emacs (Intel) - 3.6 - gpl - http://aquamacs.org/
Aquatkbibtex - 1.3 - gpl - http://aquatkbibtex.sourceforge.net/
-BibDesk (10.9+) - 1.8.11 - bsd - http://bibdesk.sourceforge.net/
+BibDesk (10.9+) - 1.8.12 - bsd - http://bibdesk.sourceforge.net/
BBEdit LaTeX Glossary - 3.03 - free? - from http://www.barebones.com/index.shtml
BBEdit TeX Scripts - - free? - from http://msneep.home.xs4all.nl/latex/
CocoAspell (10.11+) - 2.5 - free? - http://people.ict.usc.edu/~leuski/cocoaspell/
diff --git a/systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm b/systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
index 894dcb9702..829b7bb9fa 100644
--- a/systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
+++ b/systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
@@ -1,6 +1,6 @@
-# $Id: TLPOBJ.pm 61372 2021-12-21 22:46:16Z karl $
+# $Id: TLPOBJ.pm 64382 2022-09-14 15:38:18Z karl $
# TeXLive::TLPOBJ.pm - module for using tlpobj files
-# Copyright 2007-2021 Norbert Preining
+# Copyright 2007-2022 Norbert Preining
# This file is licensed under the GNU General Public License version 2
# or any later version.
@@ -8,7 +8,7 @@ use strict; use warnings;
package TeXLive::TLPOBJ;
-my $svnrev = '$Revision: 61372 $';
+my $svnrev = '$Revision: 64382 $';
my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
sub module_revision { return $_modulerevision; }
@@ -680,6 +680,9 @@ sub make_container {
tlwarn("$0: (make_container $containername) $f does not exist\n");
} else {
tlwarn("$0: (make_container $containername) $f not file or symlink\n");
+ if (! win32()) {
+ tlwarn("$0: ", `ls -l $f 2>&1`);
+ }
}
}
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index fa890b37a9..eaa549fead 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -13,7 +13,6 @@ $mirrors = {
'https://mirror.bjtu.edu.cn/CTAN/' => 1,
'https://mirrors.aliyun.com/CTAN/' => 1,
'https://mirrors.bfsu.edu.cn/CTAN/' => 1,
- 'https://mirrors.cloud.tencent.com/CTAN/' => 1,
'https://mirrors.cqu.edu.cn/CTAN/' => 1,
'https://mirrors.hit.edu.cn/CTAN/' => 1,
'https://mirrors.nju.edu.cn/CTAN/' => 1,
@@ -48,7 +47,7 @@ $mirrors = {
'http://ftp.ktug.org/tex-archive/' => 1,
'https://cran.asia/tex/' => 1,
'https://ftp.kaist.ac.kr/pub/tex-archive/' => 1,
- 'https://lab.uklee.pe.kr/tex-archive/' => 1,
+ 'https://mirror.kakao.com/CTAN/' => 1,
'https://mirror.navercorp.com/CTAN/' => 1,
},
'Philippines' => {
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 0c1c5adb8a..7b5d435b94 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2022
-depend revision/64378
+depend revision/64395
name 00texlive.image
category TLCore
-revision 64373
+revision 64395
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
@@ -2701,6 +2701,7 @@ runfiles size=12918
tlpkg/tlpsrc/luatexko.tlpsrc
tlpkg/tlpsrc/luatextra.tlpsrc
tlpkg/tlpsrc/luatodonotes.tlpsrc
+ tlpkg/tlpsrc/luatruthtable.tlpsrc
tlpkg/tlpsrc/luavlna.tlpsrc
tlpkg/tlpsrc/luaxml.tlpsrc
tlpkg/tlpsrc/lutabulartools.tlpsrc
@@ -3276,6 +3277,7 @@ runfiles size=12918
tlpkg/tlpsrc/pinlabel.tlpsrc
tlpkg/tlpsrc/pinoutikz.tlpsrc
tlpkg/tlpsrc/pitex.tlpsrc
+ tlpkg/tlpsrc/piton.tlpsrc
tlpkg/tlpsrc/pittetd.tlpsrc
tlpkg/tlpsrc/pixelart.tlpsrc
tlpkg/tlpsrc/pkfix-helper.tlpsrc
@@ -4628,7 +4630,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 64369
+revision 64380
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
@@ -10900,7 +10902,7 @@ binfiles arch=x86_64-solaris size=1
name alegreya
category Package
-revision 54512
+revision 64384
shortdesc Alegreya fonts with LaTeX support
relocated 1
longdesc The Alegreya fonts are designed by Juan Pablo del Peral for
@@ -10910,10 +10912,10 @@ longdesc facilitates the reading of long texts. The italic has just as
longdesc much care and attention to detail in the design as the roman.
longdesc Bold, black, small caps and five number styles are available.
execute addMap Alegreya.map
-containersize 24434164
-containerchecksum 7136053c90b3c9ae5744a1740e44008b3fea0a25323cb9033a6c2a2d1c72a024645626903913485af24ee08a9614d3fd6e9ba79dfd2206ec29c0fc1b1b98a21c
-doccontainersize 1107112
-doccontainerchecksum fb152014915f9bf56ded5eef117169453923a86a8dfb165facd4e3e1db278f31aeab91e49e5e66d6d4a08ea10cba91ee762b4937f75f9623c77ff73b37965ddd
+containersize 23710500
+containerchecksum 2bd5aa12890cecfa42b119f456ea63bf8b8f64edc4e2c55ed738cd24a80527245b0219330e1dc89e0a10e8ca17bb17ba928056ebf69955f2481d468a5cf97104
+doccontainersize 1107116
+doccontainerchecksum dcff5d4a47c3649155a79659012aa07123e5108b85804da9c1697d1f93d7b336ef7e37e1272c8e2e8f283971bfbfebc2e0cd2ebae3ff8ee69531629635ed7d74
docfiles size=274
RELOC/doc/fonts/alegreya/OFL.txt
RELOC/doc/fonts/alegreya/README details="Readme"
@@ -26092,7 +26094,7 @@ catalogue-version 0.2
name atkinson
category Package
-revision 57624
+revision 64385
shortdesc Support for the Atkinson Hyperlegible family of fonts
relocated 1
longdesc This package provides LaTeX, pdfLaTeX, XeLaTeX and LuaLaTeX
@@ -26102,11 +26104,11 @@ longdesc it different from traditional typography design is that it
longdesc focuses on letterform distinction to increase character
longdesc recognition, ultimately improving readability.
execute addMap atkinson.map
-containersize 337140
-containerchecksum 902030074772c7b8dcf01cccb3e33fd045b5cf6d72293fa0d48503757321aa35b32eed030cd9dff55d5b17d7cfdd16e9ec301e91b2a5b9bab1a1a901884215cd
-doccontainersize 631676
-doccontainerchecksum b0ae498ed9bc0b8275b954b4f95cdf967b7794aaf3f261ff2a0419f14faabfc4f12fa60b41c26171962ad41c32ac40e23df3d958bbcc33f5a1b2355e0c3b61c1
-docfiles size=185
+containersize 337144
+containerchecksum 8b763a29fbd529b91d586e00f13176c1cff3777541816a02913e57e8f8586357331615ba4d16549b9a98a0e049a42b2f49af39b3f950fc4845a46e37435dce2b
+doccontainersize 634088
+doccontainerchecksum f5bcfd015fc4292f4568e9d960e921739a9ebcd8f198f648323d475f6ae5d803d3f0ef77d368fa9fe36f53947908e4bcf1cfbdbd621e780221c5e8432ca9db05
+docfiles size=187
RELOC/doc/fonts/atkinson/Atkinson-Hyperlegible-Font-License-2020-1104.pdf
RELOC/doc/fonts/atkinson/BIA_AtkinsonHyerlegible-Specimen_200210.pdf
RELOC/doc/fonts/atkinson/README details="Readme"
@@ -33243,7 +33245,7 @@ catalogue-version 3.1
name beamer
category Package
-revision 63321
+revision 64388
shortdesc A LaTeX class for producing presentations and slides
relocated 1
longdesc The beamer LaTeX class can be used for producing slides. The
@@ -33273,11 +33275,11 @@ depend iftex
depend pgf
depend translator
depend xcolor
-containersize 167032
-containerchecksum 382a3218c3488e43338f9dcaf9d0eafbef65f9d2a043973dee8710b6169b0fb2ee87b81d15920292472447f47ae103e581cfe2298422f2a7a501ac3c984ae60d
-doccontainersize 2954024
-doccontainerchecksum f2e35c19325eb9599c42c18828c9dce8eed4931390ddb7af6ca863a711d611ab0cab58b09f7d711fbcd27a5925604d756ec92b5a2b079b3ee445b4adea292d34
-docfiles size=1134
+containersize 167052
+containerchecksum 27118c5f5dd76a6c7cd0fb74fd8420c5a0b30655ffd57a1677f7e92163f81992ecfaa13cfbf9e2a0d47069980d0364848bcb0c24b120163833fed09c589f54ba
+doccontainersize 2925988
+doccontainerchecksum 52512e5966c4b6f6b7d4660c61115d8ec3fea2b4e3dfd065fcbf4ea6bb9fb1895f48a69f092482932a73c74004b14026fb844ab3d358af706ead011a63053339
+docfiles size=1126
RELOC/doc/latex/beamer/AUTHORS.md
RELOC/doc/latex/beamer/CHANGELOG.md
RELOC/doc/latex/beamer/LICENSE.md
@@ -33484,7 +33486,7 @@ catalogue-contact-repository https://github.com/josephwright/beamer
catalogue-ctan /macros/latex/contrib/beamer
catalogue-license lppl1.3c gpl2+ fdl
catalogue-topics presentation class
-catalogue-version 3.67
+catalogue-version 3.68
name beamer-fuberlin
category Package
@@ -34394,17 +34396,17 @@ catalogue-topics presentation
name beamertheme-tcolorbox
category Package
-revision 64305
+revision 64387
shortdesc A beamer inner theme which reproduces standard beamer blocks using tcolorboxes
relocated 1
longdesc This package provides an inner theme for beamer which
longdesc reproduces standard beamer blocks using tcolorboxes. The look
longdesc and feel (rounded/sharp corners, shadows and colours) will
longdesc automatically adapt to which other themes are loaded.
-containersize 1860
-containerchecksum 6428af7a921625bbe6f38c0c8398ebc4534bc8cf90a62c8dae6d6cfec836b5b6b4fec2930732b61c82f6df566e12b57005db62223e44add60aac797e1f775f2e
-doccontainersize 173988
-doccontainerchecksum c46d0c98c445f7542cff0c39421e687177a2767b4bf539eb996eb43e54240c4611077903987084d8bffa42bb30e23a248342359c3b215a645d23b5d02cc032a9
+containersize 2356
+containerchecksum 9cf46f7998a683675640dc4f6bec5bc873dbe4fa09324ce1e3c32b0f1baf297b6f0ed9f25fa5f346e718e9290d697b535b23da927c5630acbe61e20835faa68b
+doccontainersize 170224
+doccontainerchecksum 9c779600fd21e28052fd345871ed9541eb7ded8dcda3a63eacfe0de72dbd009f61883b5564ad3168483b2b1d4ca7e138d678c14dc67fbeb4b58785d33c22542d
docfiles size=48
RELOC/doc/latex/beamertheme-tcolorbox/README.md details="Readme"
RELOC/doc/latex/beamertheme-tcolorbox/beamertheme-tcolorbox-doc.pdf details="Package documentation"
@@ -34416,7 +34418,7 @@ catalogue-contact-support https://github.com/samcarter/beamertheme-tcolorbox/iss
catalogue-ctan /macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox
catalogue-license lppl1.3c
catalogue-topics presentation
-catalogue-version 0.4
+catalogue-version 0.5
name beamertheme-trigon
category Package
@@ -71047,7 +71049,7 @@ containerchecksum 4e445e9830476058f6b878f306516de2fdf1b174011dd79e6a7d875adf104f
name collection-luatex
category Collection
-revision 64203
+revision 64393
shortdesc LuaTeX packages
relocated 1
longdesc Packages for LuaTeX, a TeX engine using Lua as an embedded
@@ -71108,6 +71110,7 @@ depend luatex85
depend luatexbase
depend luatexko
depend luatextra
+depend luatruthtable
depend luavlna
depend luaxml
depend lutabulartools
@@ -71123,6 +71126,7 @@ depend optex
depend pdfarticle
depend pdfextra
depend penlight
+depend piton
depend placeat
depend plantuml
depend pyluatex
@@ -71136,8 +71140,8 @@ depend truthtable
depend typewriter
depend uninormalize
depend yamlvars
-containersize 908
-containerchecksum 8ceb5ef69aac3190aa69d64fb44946b0491bde2ff1c86b42ff28ce16a47a21506998e960535cfd161d4567a968c4695121be66ef988a8b2c2f45216c0c03575c
+containersize 920
+containerchecksum 7bacc398e20fae5da669102b699ad7dc2513abaa50b9b7969a0acf8ebe8ac5f3fcab15436aac729a3d1563c517b909de24ffd82e2d66d8108c60a1f992c6017a
name collection-mathscience
category Collection
@@ -85506,7 +85510,7 @@ binfiles arch=x86_64-solaris size=3
name csquotes
category Package
-revision 64323
+revision 64389
shortdesc Context sensitive quotation facilities
relocated 1
longdesc This package provides advanced facilities for inline and
@@ -85524,10 +85528,10 @@ longdesc well as the optional active quotes are freely configurable. The
longdesc package is dependent on e-TeX, and requires the author's
longdesc etoolbox package.
depend etoolbox
-containersize 18068
-containerchecksum c1b67f7c99e5f0e64a3b1611d1e7c693dce044cac663877f274750d0ef55662acb8efec72e9352b423ada12ad4dbcbeba692fbb7f7e5170f47afae742248d6cd
-doccontainersize 325316
-doccontainerchecksum 7039b24e8ec00f4418a801a4b2fb2223c7b1d9ad7242823f74b14f389e346c572d37fe5a957cf549c5a1e8ef6fcfb5d8ee74d11c994f5cbdfb50454cf438c716
+containersize 18088
+containerchecksum 68427cbe486f3b53bdb24869a3ad52cf6a006d7872ff9408560d9e4b0f1e8184fcb437d54e10f11d7a3585ff8ff7ad40ab4a95aa66091bb69a75a3e8e60aede8
+doccontainersize 325560
+doccontainerchecksum ceba04fab9ec257c6bbc2fc903e3888bae9ef6bfa5664c8e01da14ee2b1482005aece22b6bf4fa7fb893c2dc1b0cb7f762eb048e0b2c039be80ef73b0bfef131
docfiles size=107
RELOC/doc/latex/csquotes/README.md details="Package README"
RELOC/doc/latex/csquotes/csquotes.pdf details="Tutorial on use of the package"
@@ -85540,7 +85544,7 @@ runfiles size=25
catalogue-ctan /macros/latex/contrib/csquotes
catalogue-license lppl1.3c
catalogue-topics quote-marks etex
-catalogue-version 5.2m
+catalogue-version 5.2n
name csquotes-de
category Package
@@ -123411,7 +123415,7 @@ catalogue-version 1.1
name fixdif
category Package
-revision 64096
+revision 64390
shortdesc Macros for typesetting differential operators
relocated 1
longdesc This package redefines the \d command in LaTeX and provides an
@@ -123419,16 +123423,16 @@ longdesc interface to define new commands for differential operators. It
longdesc is compatible with pdfTeX, XeTeX and LuaTeX, and can also be
longdesc used with the unicode-math package.
containersize 1796
-containerchecksum f7e58330889c3213b3684c87e5d5b53d8be0a2eef6b0ff74ee515ccc2b9db3dca157cba2cc5b8f73bbb1e1f43f1e839bb3c2892573b4b95989cdfd867a4b6dbe
-doccontainersize 261096
-doccontainerchecksum 62759b015832ff6e7221a8a985b002294eb67f70ca4590923c71442c911b55a03f0ed0a377edef7e300b14458cb6fee814520010bd5bf305002aa6633c8b5288
+containerchecksum 3d90e7c484f0ca872a311a19018c281e9635455f00b1e861475023f035d27e82bf1c90f5ffd36cbf2d4e8f7336224fda374b52214ebd826a4af882c97a2afbbd
+doccontainersize 261188
+doccontainerchecksum 809796f1b27ead1b188ea6459d524e975a08d79537b51977f85f37ab98f2a5ebd07cad0d87abc5a43d25869e8127bcaaba6da5bd3a6fc7a1e2b8f7e42bec9bcd
docfiles size=70
RELOC/doc/latex/fixdif/README.md details="Readme"
RELOC/doc/latex/fixdif/fixdif-zh-cn.pdf details="Package documentation (Chinese)" language="zh"
RELOC/doc/latex/fixdif/fixdif-zh-cn.tex
RELOC/doc/latex/fixdif/fixdif.pdf details="Package documentation (English)"
-srccontainersize 6984
-srccontainerchecksum b2f4a956c0e842175280b4f7fd318f869826b3c7eec720d76ef05050cd75fcd4457b5964608dc6ce3d271b9c7d21825104f8bdafc8886f2ad76db8010e0f075d
+srccontainersize 6988
+srccontainerchecksum 2670ef3aaf68f4c4fcebce35c08ebaaa5c94fc889ce4d8c3302a0ca7bb48b04de8e212e72313a845d42abaa4870a3c19038b155411ecfbe767203053587153ab
srcfiles size=7
RELOC/source/latex/fixdif/fixdif.dtx
RELOC/source/latex/fixdif/fixdif.ins
@@ -123441,7 +123445,7 @@ catalogue-contact-support https://github.com/CTeX-org/forum
catalogue-ctan /macros/latex/contrib/fixdif
catalogue-license lppl1.3c
catalogue-topics maths
-catalogue-version 1.4
+catalogue-version 1.4a
name fixfoot
category Package
@@ -139935,7 +139939,7 @@ catalogue-topics float
name hereapplies
category Package
-revision 64282
+revision 64391
shortdesc A LaTeX package for referencing groups of pages that share something in common
relocated 1
longdesc Here Applies is a LaTeX package that allows to collect groups
@@ -139943,10 +139947,10 @@ longdesc of labels and reference them altogether. It can be used for
longdesc creating informal glossaries that cross-link concepts to their
longdesc applications, or simply mentioning multiple pages that share
longdesc something in common.
-containersize 5272
-containerchecksum 5f1b51626a0c1880dab1f3590188e947c6af4cc2a66f971b06da7b929f25a86a74a1a11aa0479512e0aebc8d42e964b65ecc9292af9523ebb788ca83b8d505b6
-doccontainersize 420080
-doccontainerchecksum e8d4ad1f5f8c085190ec6a0edc3bff8c8e8240cee2bf87865af5539f1655bbb82cd13f24408f665cdb05792da236c0c2a165b4e69411666b508115b1d17ed929
+containersize 5300
+containerchecksum 46862b370a803e3be6ace08da5f1d6d114e9d8ff96d0a2a368016d903e38560367710eee0e90920bdcee6e0db2c062c8631cfd1c9b384b81728bf36281fffc47
+doccontainersize 421652
+doccontainerchecksum a4d9255c057e22d345ad684b9031349e41f3c9a794f55067c6d8f3e83c65a469fdd879f2451ecc29ef63dfd42d4e8bbd1749e22a9fa9487a15aacc135db84899
docfiles size=126
RELOC/doc/latex/hereapplies/COPYING
RELOC/doc/latex/hereapplies/ChangeLog.md
@@ -139968,7 +139972,7 @@ catalogue-contact-repository https://github.com/madmurphy/hereapplies.sty
catalogue-ctan /macros/latex/contrib/hereapplies
catalogue-license gpl3+
catalogue-topics label-ref
-catalogue-version 0.8.0
+catalogue-version 1.0.0
name heuristica
category Package
@@ -159777,17 +159781,17 @@ catalogue-topics collection
name jsclasses
category Package
-revision 63967
+revision 64386
shortdesc Classes tailored for use with Japanese
relocated 1
longdesc Classes jsarticle and jsbook are provided, together with
longdesc packages okumacro and okuverb. These classes are designed to
longdesc work under ASCII Corporation's Japanese TeX system ptex.
-containersize 21720
-containerchecksum b80e7c920ce133521b6035b741d0c2fc3699d1eed4c9ab0bd7c07c088b30862f08bdb2d17dd00ce90e6f1c7e8ec7292f26516384a41bbe5d1a08c3de9c170d90
-doccontainersize 784656
-doccontainerchecksum 5d6ea3857e0a84310eb22b37ad014466e041bb1b90ae5cfedcb622afa4845e6a1a8c8b34fd5569e3b5de626d8863bef0fb36089a8d645e9d8c76c6ca20ff0d8c
-docfiles size=199
+containersize 21752
+containerchecksum 2c273a68c9019a63453b618ef729c9fbbc1e2c2b1cce8fa027514d0f10b19442b55a11c3926d21e12fbe3b886302ae78c48d1519fe10e133e2d3a3afac3c6234
+doccontainersize 806740
+doccontainerchecksum b1c7b1df0ba216a66840cd454e261d13aa8849666d25537051983174b2ffb46413dd4055b57bb611e41b6c99556577285aef5f9f652c52165db3d8bbf8a7bc98
+docfiles size=206
RELOC/doc/platex/jsclasses/LICENSE
RELOC/doc/platex/jsclasses/README.md details="Readme"
RELOC/doc/platex/jsclasses/jsclasses.pdf details="Documentation of the classes (Japanese)" language="ja"
@@ -159795,8 +159799,8 @@ docfiles size=199
RELOC/doc/platex/jsclasses/jsverb.pdf details="Jsverb package documentation (Japanese)" language="ja"
RELOC/doc/platex/jsclasses/okumacro.pdf details="Okumacro package documentation (Japanese)" language="ja"
RELOC/doc/platex/jsclasses/okuverb.pdf details="Okuverb package documentation (Japanese)" language="ja"
-srccontainersize 56684
-srccontainerchecksum e7e375044ee5b0bb0f7c616d55e77e50774ac7fa9adb099165f02392ed937177979c9d0e464bacc2251877c5b0127f451e36968b2c79bcf8c89b7e3903af5a36
+srccontainersize 56900
+srccontainerchecksum 497c43a6337f07f6ef57fd2e170fff6e27bb69e3c6b5f42ec23742c2aede421ae69bcf1d51a76863f6f0d5fe7528439ade52ac54674387c4f996ec748179633e
srcfiles size=73
RELOC/source/platex/jsclasses/Makefile
RELOC/source/platex/jsclasses/jsclasses.dtx
@@ -193098,6 +193102,34 @@ catalogue-license lppl1.2
catalogue-topics notes editorial luatex use-lua
catalogue-version 0.5
+name luatruthtable
+category Package
+revision 64392
+shortdesc Generate truth tables of boolean values in LuaLaTeX
+relocated 1
+longdesc This package provides an easy way for generating truth tables
+longdesc of boolean values in LuaLaTeX. The time required for operations
+longdesc is no issue while compiling with LuaLaTeX. The package supports
+longdesc nesting of commands for multiple operations. It can be modified
+longdesc or extended by writing custom lua programs. There is no need to
+longdesc install lua on users system as TeX distributions (TeX Live or
+longdesc MikTeX) come bundled with LuaLaTeX.
+containersize 2092
+containerchecksum dd2db9d04a4a8a5f9672822d9f0d958496a0f191215ef2feabe84f466953cd571f4cd93687dd5b89043d8d24daba5f468781e50b805c2334e564882392d53979
+doccontainersize 95932
+doccontainerchecksum 43dd05d789e6729ac91fac85bef1559f4a7292e30e209805b283583e6097124e0ed0f504f1c18a5b0e56d0b674d99673c117f5a5f55797dfb34ec69b6ac68b63
+docfiles size=37
+ RELOC/doc/lualatex/luatruthtable/README.txt details="Readme"
+ RELOC/doc/lualatex/luatruthtable/luatruthtable.bib
+ RELOC/doc/lualatex/luatruthtable/luatruthtable.pdf details="Package documentation"
+ RELOC/doc/lualatex/luatruthtable/luatruthtable.tex
+runfiles size=2
+ RELOC/tex/lualatex/luatruthtable/luatruthtable.sty
+catalogue-ctan /macros/luatex/latex/luatruthtable
+catalogue-license lppl1.3c
+catalogue-topics maths logic luatex
+catalogue-version 1.0
+
name luavlna
category Package
revision 64142
@@ -245392,6 +245424,36 @@ catalogue-ctan /macros/plain/contrib/pitex
catalogue-license lppl
catalogue-topics doc-supp
+name piton
+category Package
+revision 64393
+shortdesc Typeset Python listings with LPEG
+relocated 1
+longdesc This package uses the Lua library LPEG to typeset and highlight
+longdesc Python listings.
+containersize 6668
+containerchecksum da9da6467d62bb106ef505b872c3757715c3dab2e89143b378524abeb7df1d60f305b5f0ab623dc441337c7236bc3f06b5ea54cd3866a2eac19c5333b4f6eda7
+doccontainersize 258696
+doccontainerchecksum 315a45637674754c32ff1697957d897edc87670d2dfbe3d6c06c2a36542995ade4d0e9d9cbd80eb0f6af11e0e6020ed98c3b8a8ee102f2b0c1737945e18ee4b4
+docfiles size=97
+ RELOC/doc/lualatex/piton/README.md details="Readme"
+ RELOC/doc/lualatex/piton/piton-french.pdf details="Package documentation" language="fr"
+ RELOC/doc/lualatex/piton/piton-french.tex
+ RELOC/doc/lualatex/piton/piton.pdf details="Package documentation"
+srccontainersize 7768
+srccontainerchecksum 1e928618b8bed19c36dd75b0f6045aec48514fe3ca9df657e5038108ad375f0334138ea9cfcda83904976083c64db7b4f9d1239e31e25ab21d3dc0ab05f760ee
+srcfiles size=8
+ RELOC/source/lualatex/piton/piton.dtx
+ RELOC/source/lualatex/piton/piton.ins
+runfiles size=7
+ RELOC/tex/lualatex/piton/piton.lua
+ RELOC/tex/lualatex/piton/piton.sty
+catalogue-also codehigh
+catalogue-ctan /macros/luatex/latex/piton
+catalogue-license lppl1.3
+catalogue-topics synt-hlt use-luatex
+catalogue-version 0.6
+
name pittetd
category Package
revision 15878
@@ -251571,7 +251633,7 @@ catalogue-version 0.13c
name ppt-slides
category Package
-revision 64378
+revision 64395
shortdesc Good-looking slide decks a la PowerPoint (PPT)
relocated 1
longdesc This LaTeX package helps you create slide decks as good-looking
@@ -251590,23 +251652,23 @@ depend tikzpagenodes
depend tools
depend varwidth
depend xcolor
-containersize 2860
-containerchecksum 11608c81c81b040bc50f66808decbf75fb6bc2cf659a4d8933b4ab053753b9c4ae92000d15d2bfdbb3f3169b709f4a624894e4c13bdc9219696c3793bd75a52f
-doccontainersize 225712
-doccontainerchecksum 60fc292086f581ea4bd67e018ed2ee51ade1c0ff6143169f106038747a983d978b1ca4fadde016ed9b5f795e3ced7bbb68f629f497857723798b15e94d0efa15
-docfiles size=89
+containersize 3916
+containerchecksum e18306e7e1939cbecf436ac4cc0ab74fc9257019d9fbac13abd44ad93573983625887c0a08dd5f4919764317309fce819b3052acf16a7ddaac83f94c31857d18
+doccontainersize 224544
+doccontainerchecksum c6df10e74aa9e26a701ed550f74d94392ea089b7ba37b619deb5a1243bdb920e255d2749c86b0c04f0f12f2e791d35f74fb9c44600b7a75eb0ba42ed68900e3d
+docfiles size=84
RELOC/doc/latex/ppt-slides/DEPENDS.txt
RELOC/doc/latex/ppt-slides/README.md details="Readme"
- RELOC/doc/latex/ppt-slides/ppt-schemes/ppt-dark-mono.tex
- RELOC/doc/latex/ppt-slides/ppt-schemes/ppt-dark.tex
- RELOC/doc/latex/ppt-slides/ppt-schemes/ppt-light-mono.tex
- RELOC/doc/latex/ppt-slides/ppt-schemes/ppt-light.tex
RELOC/doc/latex/ppt-slides/ppt-slides.pdf details="Package documentation and example of use"
RELOC/doc/latex/ppt-slides/ppt-slides.tex
- RELOC/doc/latex/ppt-slides/ppt-templates/ppt-9x6.tex
RELOC/doc/latex/ppt-slides/socrates.jpg
-runfiles size=2
+runfiles size=7
+ RELOC/tex/latex/ppt-slides/ppt-schemes/ppt-dark-mono.tex
+ RELOC/tex/latex/ppt-slides/ppt-schemes/ppt-dark.tex
+ RELOC/tex/latex/ppt-slides/ppt-schemes/ppt-light-mono.tex
+ RELOC/tex/latex/ppt-slides/ppt-schemes/ppt-light.tex
RELOC/tex/latex/ppt-slides/ppt-slides.sty
+ RELOC/tex/latex/ppt-slides/ppt-templates/ppt-9x6.tex
catalogue-contact-bugs https://github.com/yegor256/ppt-slides/issues
catalogue-contact-repository https://github.com/yegor256/ppt-slides
catalogue-ctan /macros/latex/contrib/ppt-slides
@@ -288169,33 +288231,39 @@ catalogue-version 3.0b1
name stex
category Package
-revision 63390
+revision 64383
shortdesc An Infrastructure for Semantic Preloading of LaTeX Documents
relocated 1
longdesc The sTeX package collection is a version of TeX/LaTeX that
longdesc allows to markup TeX/LaTeX documents semantically without
longdesc leaving the document format, essentially turning it into a
longdesc document format for mathematical knowledge management (MKM).
-containersize 77016
-containerchecksum 21665a38a9956eed19a3d224f0ba57ace735ff7dcc44d3b7449a31360b2cdd0d0ec318c49baee469205df25413628be0b2a8e4eca0e47c71f87498354deca2c7
-doccontainersize 2217204
-doccontainerchecksum 757bb258d2736fd7235c39e595d44da3cf565885882a235d6f2a86193275a90a5a2ae28c2a6190b087b6d24d111afae3dedb48d3164f74519f6b5303f0299976
-docfiles size=699
+containersize 79884
+containerchecksum e3e1c32f1d74dbf72793b6187e4b94ebdbb8d9e7f11e4b2d3e41e4803ba6b3dbd9d71c69c757ffc85cd4eb1c5a340c111a4e23f83bfb0fcf6574ee7dc0e51d07
+doccontainersize 2755852
+doccontainerchecksum c5356065843fd7bb9367c52119b61d9b86aa10c8f099969d0e5efa31f2a709df680c43b41e6266922f2835175ddbf2a719b2fd94f55bfa7af139969d5840c270
+docfiles size=906
RELOC/doc/latex/stex/Makefile
RELOC/doc/latex/stex/Makefile.top
RELOC/doc/latex/stex/README.md details="Readme"
+ RELOC/doc/latex/stex/img/vsc1.png
+ RELOC/doc/latex/stex/img/vsc2.png
+ RELOC/doc/latex/stex/img/vsc3.png
RELOC/doc/latex/stex/packages/stex-basics.tex
RELOC/doc/latex/stex/packages/stex-document-structure.tex
RELOC/doc/latex/stex/packages/stex-features.tex
RELOC/doc/latex/stex/packages/stex-hwexam.tex
+ RELOC/doc/latex/stex/packages/stex-idesetup.tex
RELOC/doc/latex/stex/packages/stex-inheritance.tex
RELOC/doc/latex/stex/packages/stex-mathhub.tex
+ RELOC/doc/latex/stex/packages/stex-mathhubsetup.tex
RELOC/doc/latex/stex/packages/stex-metatheory.tex
RELOC/doc/latex/stex/packages/stex-modules.tex
+ RELOC/doc/latex/stex/packages/stex-notesslides.tex
RELOC/doc/latex/stex/packages/stex-problem.tex
RELOC/doc/latex/stex/packages/stex-proofs.tex
RELOC/doc/latex/stex/packages/stex-references.tex
- RELOC/doc/latex/stex/packages/stex-slides.tex
+ RELOC/doc/latex/stex/packages/stex-setup.tex
RELOC/doc/latex/stex/packages/stex-statements.tex
RELOC/doc/latex/stex/packages/stex-symbols.tex
RELOC/doc/latex/stex/packages/stex-terms.tex
@@ -288204,12 +288272,14 @@ docfiles size=699
RELOC/doc/latex/stex/stex-doc.pdf details="Complete package documentation"
RELOC/doc/latex/stex/stex-doc.tex
RELOC/doc/latex/stex/stex-docheader.tex
+ RELOC/doc/latex/stex/stex-ide.pdf
+ RELOC/doc/latex/stex/stex-ide.tex
RELOC/doc/latex/stex/stex-manual.pdf details="User manual"
RELOC/doc/latex/stex/stex-manual.tex
RELOC/doc/latex/stex/stex-tutorial.tex
-srccontainersize 61736
-srccontainerchecksum 62a028e9ffd4b22b8865a9d133deffe5a5aba0e9fe7a302d4380b02f68a7813027490f03ff4e0b94d7a1351005da514393b598e99b9f39903eb0c533310d3ecc
-srcfiles size=106
+srccontainersize 63628
+srccontainerchecksum fe3a69ce18eb50a24972bff6695e7b1297defa1c99d53b05ba5a04abf249e44bea4a7ab8b191ebd3f02f71891eb97c88e8ef685363f4677471a38c282fad6566
+srcfiles size=111
RELOC/source/latex/stex/Makefile
RELOC/source/latex/stex/extensions/Makefile
RELOC/source/latex/stex/extensions/document-structure.dtx
@@ -288232,9 +288302,8 @@ srcfiles size=106
RELOC/source/latex/stex/stex/stex-symbols.dtx
RELOC/source/latex/stex/stex/stex-terms.dtx
RELOC/source/latex/stex/stex/stex.ins
-runfiles size=106
+runfiles size=111
RELOC/tex/latex/stex/document-structure.sty
- RELOC/tex/latex/stex/etc/beamernotesthemesTeX.sty
RELOC/tex/latex/stex/etc/beamerthemesTeX.sty
RELOC/tex/latex/stex/etc/hwexam-default.header
RELOC/tex/latex/stex/etc/lststex.sty
@@ -288242,6 +288311,7 @@ runfiles size=106
RELOC/tex/latex/stex/etc/stex-backend-latexml.cfg
RELOC/tex/latex/stex/etc/stex-backend-pdflatex.cfg
RELOC/tex/latex/stex/etc/stex-backend-rustex.cfg
+ RELOC/tex/latex/stex/etc/stex-backend-tex4ht.cfg
RELOC/tex/latex/stex/etc/stex-logo.sty
RELOC/tex/latex/stex/etc/stexthm.sty
RELOC/tex/latex/stex/hwexam.sty
@@ -288275,7 +288345,7 @@ catalogue-contact-repository https://github.com/slatex/sTeX
catalogue-ctan /macros/latex/contrib/stex
catalogue-license lppl
catalogue-topics struc-mkup format expl3
-catalogue-version 3.1.0
+catalogue-version 3.2.0
name stickstoo
category Package
@@ -296465,7 +296535,7 @@ binfiles arch=x86_64-solaris size=1
name tex4ht
category Package
-revision 64234
+revision 64394
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
@@ -296486,10 +296556,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 952788
-containerchecksum fa86f9cf6079840d51420e48dad8b0b11c06c9d75f41e97ff63e0eaaa92ac42b901bf96753c350217ce932ddea21eb705c65f844ef9bd794030d246998541bab
+containersize 952780
+containerchecksum 91c4c57d95eb0b650c54da6b380683bcbd57eb56686a54bf2c823864230dcb71ab8d84dbd15604c7388cf7633cfc010fdde797d7aedb8222b4f24a55d59b799a
doccontainersize 136384
-doccontainerchecksum 268bb18f58d8e8ee1bc8a767c630c1e41d552599b1c76e4ed4e86c322583e90b8cc24c69f8f440f3652fdcccc9a5a53fc2cb4c5e670af4a0c145f2ff8961ef1c
+doccontainerchecksum 6b126fdf3d9eb5f1c2cf18dddae3f014adc8ac6bd098730fc2dec85348a2d4c19806d029ed42a40365097e7f8a6b019accc732b6c6d6bf34f6efb33fd27e4a3b
docfiles size=260
texmf-dist/doc/generic/tex4ht/Makefile
texmf-dist/doc/generic/tex4ht/README details="Readme"
@@ -296561,8 +296631,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 1269116
-srccontainerchecksum 69b0973ebb15851fba20f2cd9d494339736a11e2600695573b07aed88a5cd59ae29c45348ea8f5429ad09a428ee5c3c8f91c21d079a23adcb7ed4d59e355bda7
+srccontainersize 1268180
+srccontainerchecksum 3302d6c0c20a07066699be2c9a4a13ac25c5b09cda97015fb8951dfa603f61a77af3ec168ca3fcb5c5d89822b00f9880dd4a44594bfea02a1f6c9ec1bacaf31b
srcfiles size=3867
texmf-dist/source/generic/tex4ht/ChangeLog
texmf-dist/source/generic/tex4ht/Makefile
@@ -307023,7 +307093,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 64369
+revision 64380
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.
@@ -307031,10 +307101,10 @@ depend texlive-scripts.ARCH
depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
-containersize 113672
-containerchecksum a9ed6de17183489ab1ecd1283bccd32052f771cd8f7997e476d73e9bfeeeaff3434fb046157c81ba2db27c82569221931898360e1e971cdfea7b0a81328703d9
-doccontainersize 420868
-doccontainerchecksum e360e26f598ec0589241e852748bdf1aa35cdc7b8cb3f18618c12272bed23c508b6a3bd0e8ceb487b7b7012f0c13633897f17392ed5c1fab59e33de90d512515
+containersize 113648
+containerchecksum 67f2a49fd1a87cdce44dc3edb43b85756a62fc6387e5a18a810efb504278c5722fad0372d740fb853567bd870276ee78d69ee81f43d40e659fccdadbafa00cd9
+doccontainersize 420848
+doccontainerchecksum 62a9ef49fb995f8d8420846a0f1c23ad66ce53cd92fc5756876f6e6c5f38da80bfa68180aad0aa117f55ea3a2ec7255241e82a4f73aa2a1d6c845d5970378474
docfiles size=521
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 2bb2a837a8..0975ba6c24 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-66b1192642d5d2db805c31e6a557570a texlive.tlpdb
+91f498f2800dbe971e73ed4e302a1fed texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index 68fd440c53..7f3d5ca3ac 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-5f5f45816bd94f1fc7c5daa4dbf60ffa166c15046c16f58d34834efeb235cd4cf761f298ee5f4f57d08850249409d4493846843aa0401ef5937280fd11beb402 texlive.tlpdb
+f1d8ed650abc590e6fa152e995e07eeebc217230bca3df586f4b6265d2f33e2a72d1c660a6fc962fe86ed43529c5329afc77105d99f9ebd8ff6a824d949ac711 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 5f6afcd50b..2f378afb83 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,10 +1,10 @@
-----BEGIN PGP SIGNATURE-----
-iQEcBAEBCgAGBQJjIRgTAAoJEEzhh34ZQ4xwTnUH/2aNWLVCQXnDMc2FA14pRIi5
-2IhcS7IkymZYlIA7x9dLL2wPYVUVk3b1GM7wHoxsK36pCrLybaN0MAn74UdTEsQL
-IG0mfBvTWKy5ufEpi5U6EMmmwJMGweNDrMIhJ4EUq7lZ94z0oqeAk5DP9vzkwvbp
-V3Juxit6PpYEbKEGm90renV7OIEtRj86vsmfSPpmBPvpCyhtmu1Ysd3buRmfmcug
-bDpUKX6+u4Kae+bxLK7NgH/XeEItl5dh1K1DpiKSxx4N4S9l7Jv2/Y9p/yKNb6WN
-GDLPxk6N3vjtVJEln3Fu9QCVuKMw10j0BxZred39JLmvH8OQbi8E5nTxbB9z+kU=
-=p+Fn
+iQEcBAEBCgAGBQJjImmtAAoJEEzhh34ZQ4xwlKEH/0ODfaOjeNuYtOX0UW+lDniT
+EZo/bDWwY4sCEHV3menBoyNq737MCttsWxy3c+zgC0+G8Z2Vr7TRjtOCuYTsLvpd
+y3EKz061odPMMN5xOhFI7B+azxuGVVl8Q+wvUPKE9klhBzrWrnTuEVkRYGnPtmgO
+XWVV+ainRegdz/vEdWXzhZFlFjWYy5UOAQIldMWzAC4EeOOcmXDQ3kT+QDDBC1KO
+x7kqyWHAag0HClvB07xUoA5OGikfEtWqHQT6qxEW8Yf4jxCBJZaIfLN7gWAvb9E8
+sKLjVvVkrisOzNeFbzF1n6o98Oa8HBfHJ6iLY8ZFcH3Cpw87iFfRwlAEX5gO/Ak=
+=qZ1t
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 94bb96f4a6..1591561105 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini
index a822adac1f..73cefa11ab 100644
--- a/systems/win32/miktex/tm/packages/next/pr.ini
+++ b/systems/win32/miktex/tm/packages/next/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1663100743
+date=1663186606
lastupd=miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-x64-2.9 miktex-cjkutils-bin-x64-2.9 miktex-console-bin-x64-2.9 miktex-curl-bin-x64-2.9 miktex-cweb-bin-x64-2.9 miktex-devnag-bin-x64-2.9 miktex-doc miktex-dvicopy-bin-x64-2.9 miktex-dvipdfmx-bin-x64-2.9 miktex-dvipng-bin-x64-2.9 miktex-dvips-bin-x64-2.9
-lstdigest=9b06915c569f7f9189f76213bb68ab46
+lstdigest=a3971695f3197dfc6830e0996300eef1
numpkg=5952
relstate=next
-version=8291
+version=8292
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: n8dYHtpg4adOdk4ekp8iMxusIFqVHuJwVmjI4F/019LlkK94Z04J7y4Sj1lLE+5LbzqtTVcgts5WFiOy95O7Qefjqs02tFtuKOmv2l5N92EJq0L1nEnB1XSv8AAU0sF64mEa3kuDPz1XUS8PVFr+N9Wgro2aMhnYZL/sgIWbqqcbZ9C1+AxFAq4zMPSfvjh6ttI4YBtrNIy9sw0VQr8lZP0zriI5w+suxOtf3PVCFmSYBjreptHZrNUCB2wzJTXKHTBysmkzwqAKRYuJpIh7YvfLn+LYgnPIxYJui1zqqnlckTsWMxWwiey7JGoVTjLxlDTUupcM3Q1nbIBXEfCoow==
+;;;; signature/miktex: DIC4oD57efkNhswjaRbol3pBdOTNGeTUtHdhImTfBfRPLbzlwXFT1ZLirlrh0VReb2iyjXbEP+tiAQMbvRosXNVPunIcwWEiExU16sl/aC+HPiYNFFhW4UDH/PehBfC1PfVA04TfmAOq6//5pMOamgryOJUeEd2utrqHFHPicH6uIvqcd6JymDaBCNx4f1v455+1MseRBa/idkw5BsAiKVeGcX/fEDnLRMxzmbb0X7WKSPiSzA48QzIpTE1AekUjYJtAv74B0zv2IgGH5BCZgnoB1HqNQQpbNHg+2CLm3YKL/fecnIBNjQrawIlS+4LG5KSoBmOSKp58FuGgI/cFRQ==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini
index 37cf3340ce..890f9d7e3b 100644
--- a/systems/win32/miktex/tm/packages/pr.ini
+++ b/systems/win32/miktex/tm/packages/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1663099865
+date=1663186322
lastupd=amsaddr amsaddr__doc amsaddr__source beamerthemeamurmaple beamerthemeamurmaple__doc beamerthemeamurmaple__source circuitikz circuitikz__doc csquotes csquotes__doc democodetools democodetools__doc democodetools__source dtxdescribe dtxdescribe__doc dtxdescribe__source ebgaramond ebgaramond__doc ffcode ffcode__doc
-lstdigest=636b347a429327c79aff092f5cd7f243
+lstdigest=511d3e644b07bdaefc103eef71780110
numpkg=5952
relstate=stable
-version=8291
+version=8292
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: QRV9Iok6BQZ990XgTaFfUd9pKKaIFcfmar6Fas66Qo/TGnam/HeVDxTJpj2YEoEcZAEbbhzQXnMJiUlHZEszJWMdM0Ynpv59JhbI5ltK3+izHFH5d7mcAD99+OlcZLXn37pqCR/rY0SSKG5IONSyhINDfurFWZG/eWqFVFuhlPbFhv1xJId/DtxFGEK5p08UgBF1cNzxPcPhnsL+GiqaPXI5sRsWtJHiB1CSe2z5DgAOaMbjC8d9JzLzb80Lp9p98DWT+mwYf/MegJ5F238lRe0K07DiMg5mOA+41QYNKAdQz9aVFCULdSQBMsVHXo+jz6MLSO/4nBrV3w5guzKQWA==
+;;;; signature/miktex: Ij38Maz1d1WH6gNgvw3SauAf3877MlPJ3P3+YTyAWsSJ4oFrEPwWExE7BASGI4MFnGtgYe/y+ei2TW4BSO+RorERinvdrMAIDGX/ywYFGQs1sBMseiGONFAKvWOirWmPOlUfj54KrI7TmYHviI0LcTRoDxhrIJNhcN81UuZK0MnSLUf2M8Mopr4GtGddt/xc8woszVvmzn+sBiyIPYCIQBA3J1iBgl3Lrjh3VyeWUdnGvqpslW2LhQBBE3eVwxCJlVkpq57iLZTEfz3SENHy+fBiM0gC/8+NjMlvnVmeClVdbffpQY3Wruneay80Pi3SAJu6Xy9P7Nw8Zm2i/Y0YRg==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/timestamp b/timestamp
index bbe22c5cbe..224b39b4ef 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2022-09-14-02-02
+2022-09-15-02-02