summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FILES.byname2317
-rw-r--r--FILES.byname.gzbin2551882 -> 2551761 bytes
-rw-r--r--FILES.last07days1408
-rw-r--r--biblio/ctan-bibdata/ctan.bib64
-rw-r--r--biblio/ctan-bibdata/ctan.pdfbin3712530 -> 3713325 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otfbin4426708 -> 4426676 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiGothic-Light.otfbin4706404 -> 4706372 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiGothic-Normal.otfbin4719092 -> 4719060 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otfbin5879452 -> 5885620 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otfbin6540388 -> 6540052 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-Medium.otfbin6486328 -> 6488520 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otfbin6517840 -> 6516452 bytes
-rw-r--r--fonts/haranoaji-extra/README4
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Bold.otfbin4849892 -> 4849860 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Heavy.otfbin5046764 -> 5046732 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Medium.otfbin4741376 -> 4741344 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Regular.otfbin4723240 -> 4723208 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiMincho-Bold.otfbin6686360 -> 6686092 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiMincho-Light.otfbin6343752 -> 6386696 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiMincho-Regular.otfbin6422404 -> 6420628 bytes
-rw-r--r--fonts/haranoaji/README4
-rw-r--r--graphics/pgf/contrib/circuitikz/doc/changelog.tex47
-rw-r--r--graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdfbin13465 -> 13459 bytes
-rw-r--r--graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdfbin1683675 -> 1695110 bytes
-rw-r--r--graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex89
-rw-r--r--graphics/pgf/contrib/circuitikz/tex/circuitikz.sty4
-rw-r--r--graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex290
-rw-r--r--graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex39
-rw-r--r--graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex4
-rw-r--r--graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdfbin182354 -> 188693 bytes
-rw-r--r--graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex68
-rw-r--r--graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty91
-rw-r--r--macros/latex/contrib/indextools/indextools.dtx67
-rw-r--r--macros/latex/contrib/indextools/indextools.pdfbin548523 -> 577176 bytes
-rw-r--r--macros/latex/contrib/indextools/issue5.pdfbin63731 -> 0 bytes
-rw-r--r--macros/latex/contrib/l3backend/CHANGELOG.md8
-rw-r--r--macros/latex/contrib/l3backend/README.md2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-basics.dtx62
-rw-r--r--macros/latex/contrib/l3backend/l3backend-box.dtx30
-rw-r--r--macros/latex/contrib/l3backend/l3backend-code.pdfbin934066 -> 934368 bytes
-rw-r--r--macros/latex/contrib/l3backend/l3backend-color.dtx54
-rw-r--r--macros/latex/contrib/l3backend/l3backend-draw.dtx90
-rw-r--r--macros/latex/contrib/l3backend/l3backend-graphics.dtx40
-rw-r--r--macros/latex/contrib/l3backend/l3backend-header.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-opacity.dtx24
-rw-r--r--macros/latex/contrib/l3backend/l3backend-pdf.dtx120
-rw-r--r--macros/latex/contrib/l3experimental/CHANGELOG.md9
-rw-r--r--macros/latex/contrib/l3experimental/README.md2
-rw-r--r--macros/latex/contrib/l3experimental/l3benchmark.dtx14
-rw-r--r--macros/latex/contrib/l3experimental/l3benchmark.pdfbin308866 -> 308535 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3bitset.dtx20
-rw-r--r--macros/latex/contrib/l3experimental/l3bitset.pdfbin404724 -> 404408 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-boxes.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-code.pdfbin679710 -> 679935 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-layers.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-paths.dtx12
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-points.dtx2
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-scopes.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-softpath.dtx20
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-state.dtx6
-rw-r--r--macros/latex/contrib/l3experimental/l3draw-transforms.dtx8
-rw-r--r--macros/latex/contrib/l3experimental/l3draw.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3draw.pdfbin518125 -> 517831 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3galley.dtx26
-rw-r--r--macros/latex/contrib/l3experimental/l3galley.pdfbin409224 -> 408917 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3graphics.dtx44
-rw-r--r--macros/latex/contrib/l3experimental/l3graphics.pdfbin383963 -> 383648 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3opacity.dtx4
-rw-r--r--macros/latex/contrib/l3experimental/l3opacity.pdfbin313919 -> 313597 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3str-format.dtx8
-rw-r--r--macros/latex/contrib/l3experimental/l3str-format.pdfbin368353 -> 368030 bytes
-rw-r--r--macros/latex/contrib/l3experimental/l3sys-shell.dtx28
-rw-r--r--macros/latex/contrib/l3experimental/l3sys-shell.pdfbin348383 -> 348054 bytes
-rw-r--r--macros/latex/contrib/l3experimental/xcoffins.dtx10
-rw-r--r--macros/latex/contrib/l3experimental/xcoffins.pdfbin394797 -> 394481 bytes
-rw-r--r--macros/latex/contrib/l3experimental/xgalley.dtx30
-rw-r--r--macros/latex/contrib/l3experimental/xgalley.pdfbin299962 -> 299638 bytes
-rw-r--r--macros/latex/contrib/l3kernel/CHANGELOG.md29
-rw-r--r--macros/latex/contrib/l3kernel/README.md2
-rw-r--r--macros/latex/contrib/l3kernel/expl3.dtx74
-rw-r--r--macros/latex/contrib/l3kernel/expl3.pdfbin621883 -> 622212 bytes
-rw-r--r--macros/latex/contrib/l3kernel/interface3.pdfbin1722092 -> 1724914 bytes
-rw-r--r--macros/latex/contrib/l3kernel/interface3.tex4
-rw-r--r--macros/latex/contrib/l3kernel/l3basics.dtx281
-rw-r--r--macros/latex/contrib/l3kernel/l3bootstrap.dtx4
-rw-r--r--macros/latex/contrib/l3kernel/l3box.dtx4
-rw-r--r--macros/latex/contrib/l3kernel/l3candidates.dtx69
-rw-r--r--macros/latex/contrib/l3kernel/l3cctab.dtx22
-rw-r--r--macros/latex/contrib/l3kernel/l3clist.dtx216
-rw-r--r--macros/latex/contrib/l3kernel/l3coffins.dtx84
-rw-r--r--macros/latex/contrib/l3kernel/l3color.dtx102
-rw-r--r--macros/latex/contrib/l3kernel/l3debug.dtx113
-rw-r--r--macros/latex/contrib/l3kernel/l3deprecation.dtx22
-rw-r--r--macros/latex/contrib/l3kernel/l3doc.dtx207
-rw-r--r--macros/latex/contrib/l3kernel/l3doc.pdfbin558289 -> 557935 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3docstrip.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3docstrip.pdfbin152101 -> 151752 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3expan.dtx64
-rw-r--r--macros/latex/contrib/l3kernel/l3file.dtx358
-rw-r--r--macros/latex/contrib/l3kernel/l3flag.dtx4
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-assign.dtx10
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-aux.dtx8
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-basics.dtx10
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-convert.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-expo.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-extended.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-logic.dtx4
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-parse.dtx6
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-random.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-round.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-traps.dtx6
-rw-r--r--macros/latex/contrib/l3kernel/l3fp-trig.dtx8
-rw-r--r--macros/latex/contrib/l3kernel/l3fp.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3fparray.dtx4
-rw-r--r--macros/latex/contrib/l3kernel/l3int.dtx16
-rw-r--r--macros/latex/contrib/l3kernel/l3intarray.dtx18
-rw-r--r--macros/latex/contrib/l3kernel/l3kernel-functions.dtx18
-rw-r--r--macros/latex/contrib/l3kernel/l3keys.dtx284
-rw-r--r--macros/latex/contrib/l3kernel/l3legacy.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3luatex.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3msg.dtx342
-rw-r--r--macros/latex/contrib/l3kernel/l3names.dtx2
-rw-r--r--macros/latex/contrib/l3kernel/l3news.pdfbin395889 -> 396222 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news01.pdfbin122711 -> 122959 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news02.pdfbin150675 -> 150919 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news03.pdfbin148704 -> 148747 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news04.pdfbin114591 -> 114754 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news05.pdfbin112487 -> 112524 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news06.pdfbin151569 -> 151591 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news07.pdfbin128317 -> 128344 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news08.pdfbin163456 -> 163484 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news09.pdfbin250127 -> 250159 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news10.pdfbin150282 -> 150302 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news11.pdfbin170069 -> 170102 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3news12.pdfbin204992 -> 205020 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3pdf.dtx21
-rw-r--r--macros/latex/contrib/l3kernel/l3prefixes.csv4
-rw-r--r--macros/latex/contrib/l3kernel/l3prefixes.pdfbin81941 -> 82529 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3prg.dtx8
-rw-r--r--macros/latex/contrib/l3kernel/l3prop.dtx269
-rw-r--r--macros/latex/contrib/l3kernel/l3quark.dtx22
-rw-r--r--macros/latex/contrib/l3kernel/l3regex.dtx258
-rw-r--r--macros/latex/contrib/l3kernel/l3seq.dtx254
-rw-r--r--macros/latex/contrib/l3kernel/l3skip.dtx10
-rw-r--r--macros/latex/contrib/l3kernel/l3sort.dtx18
-rw-r--r--macros/latex/contrib/l3kernel/l3str-convert.dtx94
-rw-r--r--macros/latex/contrib/l3kernel/l3str.dtx163
-rw-r--r--macros/latex/contrib/l3kernel/l3styleguide.pdfbin296645 -> 296260 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3styleguide.tex2
-rw-r--r--macros/latex/contrib/l3kernel/l3syntax-changes.pdfbin243279 -> 242906 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3syntax-changes.tex2
-rw-r--r--macros/latex/contrib/l3kernel/l3sys.dtx56
-rw-r--r--macros/latex/contrib/l3kernel/l3term-glossary.pdfbin218431 -> 218060 bytes
-rw-r--r--macros/latex/contrib/l3kernel/l3term-glossary.tex2
-rw-r--r--macros/latex/contrib/l3kernel/l3text-case.dtx16
-rw-r--r--macros/latex/contrib/l3kernel/l3text-map.dtx6
-rw-r--r--macros/latex/contrib/l3kernel/l3text-purify.dtx16
-rw-r--r--macros/latex/contrib/l3kernel/l3text.dtx12
-rw-r--r--macros/latex/contrib/l3kernel/l3tl-analysis.dtx38
-rw-r--r--macros/latex/contrib/l3kernel/l3tl.dtx464
-rw-r--r--macros/latex/contrib/l3kernel/l3token.dtx64
-rw-r--r--macros/latex/contrib/l3kernel/l3unicode.dtx28
-rw-r--r--macros/latex/contrib/l3kernel/source3.pdfbin7369566 -> 7389071 bytes
-rw-r--r--macros/latex/contrib/l3kernel/source3.tex6
-rw-r--r--macros/latex/contrib/l3kernel/source3body.tex10
-rw-r--r--macros/latex/contrib/l3packages/CHANGELOG.md9
-rw-r--r--macros/latex/contrib/l3packages/README.md10
-rw-r--r--macros/latex/contrib/l3packages/l3keys2e.dtx10
-rw-r--r--macros/latex/contrib/l3packages/l3keys2e.pdfbin412937 -> 412557 bytes
-rw-r--r--macros/latex/contrib/l3packages/xfp.dtx4
-rw-r--r--macros/latex/contrib/l3packages/xfp.pdfbin332628 -> 332260 bytes
-rw-r--r--macros/latex/contrib/l3packages/xfrac.dtx10
-rw-r--r--macros/latex/contrib/l3packages/xfrac.pdfbin483310 -> 482959 bytes
-rw-r--r--macros/latex/contrib/l3packages/xparse.dtx16
-rw-r--r--macros/latex/contrib/l3packages/xparse.pdfbin534879 -> 534533 bytes
-rw-r--r--macros/latex/contrib/l3packages/xtemplate.dtx145
-rw-r--r--macros/latex/contrib/l3packages/xtemplate.pdfbin450948 -> 450604 bytes
-rw-r--r--macros/latex/contrib/non-decimal-units/README.md4
-rw-r--r--macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdfbin163176 -> 155980 bytes
-rw-r--r--macros/latex/contrib/non-decimal-units/docs/non-decimal-units.preamble.sty106
-rw-r--r--macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex598
-rw-r--r--macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex41
-rw-r--r--macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex222
-rw-r--r--macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex32
-rw-r--r--macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty1340
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md10
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/README.md2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx113
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdfbin963463 -> 965059 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx195
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdfbin704274 -> 706088 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdfbin588613 -> 588246 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx10
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdfbin516275 -> 515760 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdfbin559157 -> 558915 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdfbin542236 -> 542008 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdfbin544521 -> 544283 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdfbin537650 -> 537398 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx46
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdfbin593117 -> 594477 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx2
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdfbin516850 -> 516622 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdfbin751101 -> 751045 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdfbin567314 -> 566776 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdfbin682857 -> 682682 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdfbin815200 -> 815036 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdfbin532224 -> 532070 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdfbin427837 -> 427143 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx4
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdfbin590756 -> 590327 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx10
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdfbin440217 -> 440395 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx6
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdfbin464671 -> 463827 bytes
-rw-r--r--macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty4
-rw-r--r--macros/luatex/generic/luatexja/README8
-rw-r--r--macros/luatex/generic/luatexja/doc/luatexja-en.pdfbin702456 -> 702730 bytes
-rw-r--r--macros/luatex/generic/luatexja/doc/luatexja-ja.pdfbin1143943 -> 1144113 bytes
-rw-r--r--macros/luatex/generic/luatexja/doc/luatexja-ruby.pdfbin391556 -> 391680 bytes
-rw-r--r--macros/luatex/generic/luatexja/doc/luatexja.dtx2
-rw-r--r--macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty6
-rw-r--r--macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua4
-rw-r--r--macros/luatex/generic/luatexja/src/luatexja-core.sty18
-rw-r--r--macros/luatex/generic/luatexja/src/luatexja.lua5
-rw-r--r--macros/luatex/generic/luatexja/src/luatexja.sty4
-rw-r--r--support/texlab/CHANGELOG.md6
-rw-r--r--support/texlab/Cargo.lock2
-rw-r--r--support/texlab/README.md7
-rw-r--r--support/texlab/crates/rename/src/command.rs11
-rw-r--r--support/texlab/crates/texlab/Cargo.toml2
-rw-r--r--support/texlab/texlab.14
-rw-r--r--support/texlab/texlab.pdfbin26556 -> 26352 bytes
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl2
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb190
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc16
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2481360 -> 2477744 bytes
-rw-r--r--systems/win32/miktex/tm/packages/files.csv.lzmabin770567 -> 766556 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/files.csv.lzmabin770584 -> 766428 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/pr.ini10
-rw-r--r--systems/win32/miktex/tm/packages/pr.ini12
-rw-r--r--timestamp2
256 files changed, 7573 insertions, 5172 deletions
diff --git a/FILES.byname b/FILES.byname
index bc106da87f..a03189100b 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2059,12 +2059,12 @@
2023/10/05 | 1710 | biblio/citation-style-language/README.md
2023/10/05 | 12878 | biblio/citation-style-language/vancouver.csl
2023/10/05 | 4531754 | biblio/citation-style-language.zip
-2023/10/09 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/10/10 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2023/10/09 | 2815719 | biblio/ctan-bibdata/ctan.bib
-2023/10/09 | 3714076 | biblio/ctan-bibdata/ctan.pdf
+2023/10/10 | 2815719 | biblio/ctan-bibdata/ctan.bib
+2023/10/10 | 3712530 | biblio/ctan-bibdata/ctan.pdf
2023/01/16 | 1489 | biblio/ctan-bibdata/README
-2023/10/09 | 4117713 | biblio/ctan-bibdata.zip
+2023/10/10 | 4115543 | biblio/ctan-bibdata.zip
2023/02/23 | 3126 | biblio/pbibtex/pbibtex-base/cpp.awk
2023/02/23 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh
2023/02/23 | 22362 | biblio/pbibtex/pbibtex-base/jabbrv.bst
@@ -5424,7 +5424,7 @@
1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
-2023/10/09 | 144584 | FILES.last07days
+2023/10/10 | 428167 | 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
@@ -53941,26 +53941,26 @@
1992/09/27 | 415 | fonts/hands/reverse.mf
1992/09/27 | 518 | fonts/hands/rvmirror.mf
2005/05/20 | 3188 | fonts/hands.zip
-2023/06/11 | 4426708 | fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
-2023/06/11 | 4706404 | fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
-2023/06/11 | 4719092 | fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
-2023/06/11 | 5879452 | fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
-2023/06/11 | 6540388 | fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
-2023/06/11 | 6486328 | fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
-2023/06/11 | 6517840 | fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
+2023/10/09 | 4426676 | fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
+2023/10/09 | 4706372 | fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
+2023/10/09 | 4719060 | fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
+2023/10/09 | 5885620 | fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
+2023/10/09 | 6540052 | fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
+2023/10/09 | 6488520 | fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
+2023/10/09 | 6516452 | fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
2022/01/30 | 4301 | fonts/haranoaji-extra/LICENSE
-2023/06/11 | 3193 | fonts/haranoaji-extra/README
-2023/06/11 | 33098397 | fonts/haranoaji-extra.zip
-2023/06/11 | 4849892 | fonts/haranoaji/HaranoAjiGothic-Bold.otf
-2023/06/11 | 5046764 | fonts/haranoaji/HaranoAjiGothic-Heavy.otf
-2023/06/11 | 4741376 | fonts/haranoaji/HaranoAjiGothic-Medium.otf
-2023/06/11 | 4723240 | fonts/haranoaji/HaranoAjiGothic-Regular.otf
-2023/06/11 | 6686360 | fonts/haranoaji/HaranoAjiMincho-Bold.otf
-2023/06/11 | 6343752 | fonts/haranoaji/HaranoAjiMincho-Light.otf
-2023/06/11 | 6422404 | fonts/haranoaji/HaranoAjiMincho-Regular.otf
+2023/10/10 | 3193 | fonts/haranoaji-extra/README
+2023/10/10 | 33109135 | fonts/haranoaji-extra.zip
+2023/10/09 | 4849860 | fonts/haranoaji/HaranoAjiGothic-Bold.otf
+2023/10/09 | 5046732 | fonts/haranoaji/HaranoAjiGothic-Heavy.otf
+2023/10/09 | 4741344 | fonts/haranoaji/HaranoAjiGothic-Medium.otf
+2023/10/09 | 4723208 | fonts/haranoaji/HaranoAjiGothic-Regular.otf
+2023/10/09 | 6686092 | fonts/haranoaji/HaranoAjiMincho-Bold.otf
+2023/10/09 | 6386696 | fonts/haranoaji/HaranoAjiMincho-Light.otf
+2023/10/09 | 6420628 | fonts/haranoaji/HaranoAjiMincho-Regular.otf
2022/01/30 | 4301 | fonts/haranoaji/LICENSE
-2023/06/11 | 3193 | fonts/haranoaji/README
-2023/06/11 | 32945745 | fonts/haranoaji.zip
+2023/10/10 | 3193 | fonts/haranoaji/README
+2023/10/10 | 32988465 | fonts/haranoaji.zip
2020/05/19 | 56515 | fonts/helmholtz-ellis-ji-notation/font/HEJI2Text.otf
2020/05/19 | 14207 | fonts/helmholtz-ellis-ji-notation/helmholtz-ellis-ji-notation.dtx
2020/05/19 | 1915 | fonts/helmholtz-ellis-ji-notation/helmholtz-ellis-ji-notation.ins
@@ -160064,60 +160064,60 @@
2019/04/14 | 24014 | graphics/pgf/contrib/chordbox/chordbox.tex
2019/04/14 | 1125 | graphics/pgf/contrib/chordbox/README.md
2019/04/15 | 567774 | graphics/pgf/contrib/chordbox.zip
-2023/06/23 | 51417 | graphics/pgf/contrib/circuitikz/doc/changelog.tex
-2023/06/23 | 13465 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf
-2023/06/23 | 1512 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.tex
-2023/06/23 | 1683675 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf
-2023/06/23 | 536760 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex
-2023/06/23 | 418 | graphics/pgf/contrib/circuitikz/doc/compatibility.tex
-2023/06/23 | 8445 | graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty
-2023/06/23 | 5088 | graphics/pgf/contrib/circuitikz/README.md
-2023/06/23 | 364117 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4-body.tex
-2023/06/23 | 728 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4.sty
-2023/06/23 | 393884 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.6-body.tex
-2023/06/23 | 635 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.6.sty
-2023/06/23 | 403567 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.7-body.tex
-2023/06/23 | 635 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.7.sty
-2023/06/23 | 422295 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.8.3-body.tex
-2023/06/23 | 641 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.8.3.sty
-2023/06/23 | 690729 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3-body.tex
-2023/06/23 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3.sty
-2023/06/23 | 758991 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.6-body.tex
-2023/06/23 | 633 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.6.sty
-2023/06/23 | 841340 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.0-body.tex
-2023/06/23 | 626 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.0.sty
-2023/06/23 | 937130 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.1.2-body.tex
-2023/06/23 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.1.2.sty
-2023/06/23 | 1021798 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.2.7-body.tex
-2023/06/23 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.2.7.sty
-2023/06/23 | 1081680 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.4.6-body.tex
-2023/06/23 | 631 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.4.6.sty
-2023/06/23 | 13737 | graphics/pgf/contrib/circuitikz/tex/circuitikz.sty
-2023/06/23 | 280 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-example.tex
-2023/06/23 | 3150 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-legacy.tex
-2023/06/23 | 2188 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-romano.tex
-2023/06/23 | 288214 | graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex
-2023/06/23 | 9538 | graphics/pgf/contrib/circuitikz/tex/pgfcirccurrent.tex
-2023/06/23 | 42321 | graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex
-2023/06/23 | 9804 | graphics/pgf/contrib/circuitikz/tex/pgfcircflow.tex
-2023/06/23 | 15442 | graphics/pgf/contrib/circuitikz/tex/pgfcirclabel.tex
-2023/06/23 | 57153 | graphics/pgf/contrib/circuitikz/tex/pgfcircmonopoles.tex
-2023/06/23 | 117880 | graphics/pgf/contrib/circuitikz/tex/pgfcircmultipoles.tex
-2023/06/23 | 16722 | graphics/pgf/contrib/circuitikz/tex/pgfcircpath.tex
-2023/06/23 | 84261 | graphics/pgf/contrib/circuitikz/tex/pgfcircquadpoles.tex
-2023/06/23 | 32826 | graphics/pgf/contrib/circuitikz/tex/pgfcircshapes.tex
-2023/06/23 | 382752 | graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex
-2023/06/23 | 14587 | graphics/pgf/contrib/circuitikz/tex/pgfcircutils.tex
-2023/06/23 | 35629 | graphics/pgf/contrib/circuitikz/tex/pgfcircvoltage.tex
-2023/06/23 | 416850 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.8.3.tex
-2023/06/23 | 683433 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.3.tex
-2023/06/23 | 751663 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.6.tex
-2023/06/23 | 834142 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.0.tex
-2023/06/23 | 929934 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.1.2.tex
-2023/06/23 | 1014383 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.2.7.tex
-2023/06/23 | 1073051 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.4.6.tex
-2023/06/23 | 3901 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex
-2023/06/23 | 3283073 | graphics/pgf/contrib/circuitikz.zip
+2023/10/10 | 52600 | graphics/pgf/contrib/circuitikz/doc/changelog.tex
+2023/10/10 | 13459 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf
+2023/10/10 | 1512 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.tex
+2023/10/10 | 1695110 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf
+2023/10/10 | 541082 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex
+2023/10/10 | 418 | graphics/pgf/contrib/circuitikz/doc/compatibility.tex
+2023/10/10 | 8445 | graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty
+2023/10/10 | 5088 | graphics/pgf/contrib/circuitikz/README.md
+2023/10/10 | 364117 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4-body.tex
+2023/10/10 | 728 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4.sty
+2023/10/10 | 393884 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.6-body.tex
+2023/10/10 | 635 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.6.sty
+2023/10/10 | 403567 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.7-body.tex
+2023/10/10 | 635 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.7.sty
+2023/10/10 | 422295 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.8.3-body.tex
+2023/10/10 | 641 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.8.3.sty
+2023/10/10 | 690729 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3-body.tex
+2023/10/10 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3.sty
+2023/10/10 | 758991 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.6-body.tex
+2023/10/10 | 633 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.6.sty
+2023/10/10 | 841340 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.0-body.tex
+2023/10/10 | 626 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.0.sty
+2023/10/10 | 937130 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.1.2-body.tex
+2023/10/10 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.1.2.sty
+2023/10/10 | 1021798 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.2.7-body.tex
+2023/10/10 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.2.7.sty
+2023/10/10 | 1081680 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.4.6-body.tex
+2023/10/10 | 631 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.4.6.sty
+2023/10/10 | 13737 | graphics/pgf/contrib/circuitikz/tex/circuitikz.sty
+2023/10/10 | 280 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-example.tex
+2023/10/10 | 3150 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-legacy.tex
+2023/10/10 | 2188 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-romano.tex
+2023/10/10 | 297251 | graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex
+2023/10/10 | 9538 | graphics/pgf/contrib/circuitikz/tex/pgfcirccurrent.tex
+2023/10/10 | 42321 | graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex
+2023/10/10 | 9804 | graphics/pgf/contrib/circuitikz/tex/pgfcircflow.tex
+2023/10/10 | 15442 | graphics/pgf/contrib/circuitikz/tex/pgfcirclabel.tex
+2023/10/10 | 57153 | graphics/pgf/contrib/circuitikz/tex/pgfcircmonopoles.tex
+2023/10/10 | 117880 | graphics/pgf/contrib/circuitikz/tex/pgfcircmultipoles.tex
+2023/10/10 | 16722 | graphics/pgf/contrib/circuitikz/tex/pgfcircpath.tex
+2023/10/10 | 84261 | graphics/pgf/contrib/circuitikz/tex/pgfcircquadpoles.tex
+2023/10/10 | 32826 | graphics/pgf/contrib/circuitikz/tex/pgfcircshapes.tex
+2023/10/10 | 384633 | graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex
+2023/10/10 | 14587 | graphics/pgf/contrib/circuitikz/tex/pgfcircutils.tex
+2023/10/10 | 35629 | graphics/pgf/contrib/circuitikz/tex/pgfcircvoltage.tex
+2023/10/10 | 416850 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.8.3.tex
+2023/10/10 | 683433 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.3.tex
+2023/10/10 | 751663 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.6.tex
+2023/10/10 | 834142 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.0.tex
+2023/10/10 | 929934 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.1.2.tex
+2023/10/10 | 1014383 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.2.7.tex
+2023/10/10 | 1073051 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.4.6.tex
+2023/10/10 | 3901 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex
+2023/10/10 | 3296870 | graphics/pgf/contrib/circuitikz.zip
2023/10/06 | 136241 | graphics/pgf/contrib/circularglyphs/doc/circularglyphs-doc.pdf
2023/10/06 | 13137 | graphics/pgf/contrib/circularglyphs/doc/circularglyphs-doc.tex
2023/10/06 | 44763 | graphics/pgf/contrib/circularglyphs/doc/circularglyphs-sample.pdf
@@ -161981,11 +161981,11 @@
2015/01/07 | 30179 | graphics/pgf/contrib/tipfr/latex/tipfr.sty
2015/01/05 | 639 | graphics/pgf/contrib/tipfr/README
2015/01/07 | 385849 | graphics/pgf/contrib/tipfr.zip
-2023/09/09 | 182354 | graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdf
-2023/09/09 | 12630 | graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex
+2023/10/10 | 188693 | graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdf
+2023/10/10 | 14479 | graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex
2023/09/09 | 474 | graphics/pgf/contrib/tkz-bernoulli/README.md
-2023/09/08 | 10759 | graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty
-2023/09/09 | 184526 | graphics/pgf/contrib/tkz-bernoulli.zip
+2023/10/10 | 13253 | graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty
+2023/10/10 | 191160 | graphics/pgf/contrib/tkz-bernoulli.zip
2016/01/15 | 951 | graphics/pgf/contrib/tkz-orm/LICENSE
2016/01/15 | 4601 | graphics/pgf/contrib/tkz-orm/Makefile
2010/01/25 | 7949 | graphics/pgf/contrib/tkz-orm/pgfmanualstyle.sty
@@ -194440,7 +194440,7 @@
2023/01/15 | 12260744 | install/graphics/pgf/base/pgf.tds.zip
2013/02/23 | 92056 | install/graphics/pgf/contrib/battleship.tds.zip
2016/02/19 | 701759 | install/graphics/pgf/contrib/celtic.tds.zip
-2023/06/23 | 3303756 | install/graphics/pgf/contrib/circuitikz.tds.zip
+2023/10/10 | 3317797 | install/graphics/pgf/contrib/circuitikz.tds.zip
2023/08/24 | 640925 | install/graphics/pgf/contrib/commutative-diagrams.tds.zip
2014/06/15 | 843875 | install/graphics/pgf/contrib/logicpuzzle.tds.zip
2021/05/15 | 17583452 | install/graphics/pgf/contrib/pgfplots.tds.zip
@@ -194624,11 +194624,11 @@
2023/07/07 | 9765481 | install/macros/latex/contrib/koma-script.tds.zip
2015/12/09 | 171418 | install/macros/latex/contrib/ksp-thesis.tds.zip
2019/12/19 | 302191 | install/macros/latex/contrib/kvdefinekeys.tds.zip
-2023/04/19 | 972462 | install/macros/latex/contrib/l3backend.tds.zip
+2023/10/10 | 972889 | install/macros/latex/contrib/l3backend.tds.zip
2023/09/13 | 821916 | install/macros/latex/contrib/l3build.tds.zip
-2023/05/11 | 4460074 | install/macros/latex/contrib/l3experimental.tds.zip
-2023/08/29 | 14012364 | install/macros/latex/contrib/l3kernel.tds.zip
-2023/08/29 | 2259049 | install/macros/latex/contrib/l3packages.tds.zip
+2023/10/10 | 4457163 | install/macros/latex/contrib/l3experimental.tds.zip
+2023/10/10 | 14036719 | install/macros/latex/contrib/l3kernel.tds.zip
+2023/10/10 | 2257270 | install/macros/latex/contrib/l3packages.tds.zip
2023/10/06 | 604552 | install/macros/latex/contrib/lastpage.tds.zip
2009/09/02 | 556672 | install/macros/latex/contrib/layouts.tds.zip
2008/07/25 | 125603 | install/macros/latex/contrib/lcyw.tds.zip
@@ -226287,13 +226287,12 @@
2004/01/21 | 432 | macros/latex/contrib/index/README
2004/01/21 | 2842 | macros/latex/contrib/index/test.bib
2004/01/21 | 4724 | macros/latex/contrib/index/TODO
-2015/11/22 | 75456 | macros/latex/contrib/indextools/indextools.dtx
-2015/11/22 | 548523 | macros/latex/contrib/indextools/indextools.pdf
-2015/11/21 | 63731 | macros/latex/contrib/indextools/issue5.pdf
-2015/01/17 | 44 | macros/latex/contrib/indextools/latexmkrc
-2015/11/22 | 408 | macros/latex/contrib/indextools/makefile
-2015/11/16 | 687 | macros/latex/contrib/indextools/README
-2015/11/22 | 631721 | macros/latex/contrib/indextools.zip
+2023/10/10 | 75735 | macros/latex/contrib/indextools/indextools.dtx
+2023/10/10 | 577176 | macros/latex/contrib/indextools/indextools.pdf
+2018/05/05 | 44 | macros/latex/contrib/indextools/latexmkrc
+2018/05/05 | 408 | macros/latex/contrib/indextools/makefile
+2018/05/05 | 687 | macros/latex/contrib/indextools/README
+2023/10/10 | 583748 | macros/latex/contrib/indextools.zip
2004/01/21 | 23637 | macros/latex/contrib/index/xagsm.bst
2004/01/21 | 20077 | macros/latex/contrib/index/xplain.bst
2005/04/30 | 189729 | macros/latex/contrib/index.zip
@@ -228096,20 +228095,20 @@
2022/10/05 | 401856 | macros/latex/contrib/kvsetkeys/kvsetkeys.pdf
2022/10/05 | 542 | macros/latex/contrib/kvsetkeys/README.md
2022/10/05 | 398855 | macros/latex/contrib/kvsetkeys.zip
-2023/04/19 | 9614 | macros/latex/contrib/l3backend/CHANGELOG.md
-2023/04/19 | 16092 | macros/latex/contrib/l3backend/l3backend-basics.dtx
-2023/04/19 | 14431 | macros/latex/contrib/l3backend/l3backend-box.dtx
-2023/04/19 | 934066 | macros/latex/contrib/l3backend/l3backend-code.pdf
-2023/04/19 | 1331 | macros/latex/contrib/l3backend/l3backend-code.tex
-2023/04/19 | 41332 | macros/latex/contrib/l3backend/l3backend-color.dtx
-2023/04/19 | 34288 | macros/latex/contrib/l3backend/l3backend-draw.dtx
-2023/04/19 | 29575 | macros/latex/contrib/l3backend/l3backend-graphics.dtx
-2023/04/19 | 14669 | macros/latex/contrib/l3backend/l3backend-header.dtx
-2023/04/19 | 4922 | macros/latex/contrib/l3backend/l3backend.ins
-2023/04/19 | 9916 | macros/latex/contrib/l3backend/l3backend-opacity.dtx
-2023/04/19 | 50928 | macros/latex/contrib/l3backend/l3backend-pdf.dtx
-2023/04/19 | 549 | macros/latex/contrib/l3backend/README.md
-2023/04/19 | 934192 | macros/latex/contrib/l3backend.zip
+2023/10/10 | 9747 | macros/latex/contrib/l3backend/CHANGELOG.md
+2023/10/10 | 16217 | macros/latex/contrib/l3backend/l3backend-basics.dtx
+2023/10/10 | 14431 | macros/latex/contrib/l3backend/l3backend-box.dtx
+2023/10/10 | 934368 | macros/latex/contrib/l3backend/l3backend-code.pdf
+2023/10/10 | 1331 | macros/latex/contrib/l3backend/l3backend-code.tex
+2023/10/10 | 41343 | macros/latex/contrib/l3backend/l3backend-color.dtx
+2023/10/10 | 34288 | macros/latex/contrib/l3backend/l3backend-draw.dtx
+2023/10/10 | 29569 | macros/latex/contrib/l3backend/l3backend-graphics.dtx
+2023/10/10 | 14669 | macros/latex/contrib/l3backend/l3backend-header.dtx
+2023/10/10 | 4922 | macros/latex/contrib/l3backend/l3backend.ins
+2023/10/10 | 9916 | macros/latex/contrib/l3backend/l3backend-opacity.dtx
+2023/10/10 | 50952 | macros/latex/contrib/l3backend/l3backend-pdf.dtx
+2023/10/10 | 549 | macros/latex/contrib/l3backend/README.md
+2023/10/10 | 934759 | macros/latex/contrib/l3backend.zip
2023/09/13 | 21587 | macros/latex/contrib/l3build/CHANGELOG.md
2023/09/13 | 1816 | macros/latex/contrib/l3build/l3build.1
2023/09/13 | 7805 | macros/latex/contrib/l3build/l3build-arguments.lua
@@ -228135,174 +228134,174 @@
2023/09/13 | 4150 | macros/latex/contrib/l3build/l3build-zip.lua
2023/09/13 | 1019 | macros/latex/contrib/l3build/README.md
2023/09/13 | 818015 | macros/latex/contrib/l3build.zip
-2023/05/11 | 8283 | macros/latex/contrib/l3experimental/CHANGELOG.md
-2023/05/11 | 16508 | macros/latex/contrib/l3experimental/l3benchmark.dtx
-2023/05/11 | 1558 | macros/latex/contrib/l3experimental/l3benchmark.ins
-2023/05/11 | 308866 | macros/latex/contrib/l3experimental/l3benchmark.pdf
-2023/05/11 | 18694 | macros/latex/contrib/l3experimental/l3bitset.dtx
-2023/05/11 | 1565 | macros/latex/contrib/l3experimental/l3bitset.ins
-2023/05/11 | 404724 | macros/latex/contrib/l3experimental/l3bitset.pdf
-2023/05/11 | 4323 | macros/latex/contrib/l3experimental/l3draw-boxes.dtx
-2023/05/11 | 679710 | macros/latex/contrib/l3experimental/l3draw-code.pdf
-2023/05/11 | 1360 | macros/latex/contrib/l3experimental/l3draw-code.tex
-2023/05/11 | 42560 | macros/latex/contrib/l3experimental/l3draw.dtx
-2023/05/11 | 1906 | macros/latex/contrib/l3experimental/l3draw.ins
-2023/05/11 | 5653 | macros/latex/contrib/l3experimental/l3draw-layers.dtx
-2023/05/11 | 32546 | macros/latex/contrib/l3experimental/l3draw-paths.dtx
-2023/05/11 | 518125 | macros/latex/contrib/l3experimental/l3draw.pdf
-2023/05/11 | 36026 | macros/latex/contrib/l3experimental/l3draw-points.dtx
-2023/05/11 | 10018 | macros/latex/contrib/l3experimental/l3draw-scopes.dtx
-2023/05/11 | 20451 | macros/latex/contrib/l3experimental/l3draw-softpath.dtx
-2023/05/11 | 4448 | macros/latex/contrib/l3experimental/l3draw-state.dtx
-2023/05/11 | 10138 | macros/latex/contrib/l3experimental/l3draw-transforms.dtx
-2023/05/11 | 96044 | macros/latex/contrib/l3experimental/l3galley.dtx
-2023/05/11 | 409224 | macros/latex/contrib/l3experimental/l3galley.pdf
-2023/05/11 | 25940 | macros/latex/contrib/l3experimental/l3graphics.dtx
-2023/05/11 | 1553 | macros/latex/contrib/l3experimental/l3graphics.ins
-2023/05/11 | 383963 | macros/latex/contrib/l3experimental/l3graphics.pdf
-2023/05/11 | 4011 | macros/latex/contrib/l3experimental/l3opacity.dtx
-2023/05/11 | 1547 | macros/latex/contrib/l3experimental/l3opacity.ins
-2023/05/11 | 313919 | macros/latex/contrib/l3experimental/l3opacity.pdf
-2023/05/11 | 31827 | macros/latex/contrib/l3experimental/l3str-format.dtx
-2023/05/11 | 368353 | macros/latex/contrib/l3experimental/l3str-format.pdf
-2023/05/11 | 1564 | macros/latex/contrib/l3experimental/l3str.ins
-2023/05/11 | 12361 | macros/latex/contrib/l3experimental/l3sys-shell.dtx
-2023/05/11 | 1565 | macros/latex/contrib/l3experimental/l3sys-shell.ins
-2023/05/11 | 348383 | macros/latex/contrib/l3experimental/l3sys-shell.pdf
-2023/05/11 | 4284 | macros/latex/contrib/l3experimental/README.md
-2023/05/11 | 35092 | macros/latex/contrib/l3experimental/xcoffins.dtx
-2023/05/11 | 1569 | macros/latex/contrib/l3experimental/xcoffins.ins
-2023/05/11 | 394797 | macros/latex/contrib/l3experimental/xcoffins.pdf
-2023/05/11 | 58083 | macros/latex/contrib/l3experimental/xgalley.dtx
-2023/05/11 | 1624 | macros/latex/contrib/l3experimental/xgalley.ins
-2023/05/11 | 299962 | macros/latex/contrib/l3experimental/xgalley.pdf
-2023/05/11 | 4421989 | macros/latex/contrib/l3experimental.zip
-2023/08/29 | 51834 | macros/latex/contrib/l3kernel/CHANGELOG.md
-2023/08/29 | 70538 | macros/latex/contrib/l3kernel/expl3.dtx
-2023/08/29 | 621883 | macros/latex/contrib/l3kernel/expl3.pdf
-2023/08/29 | 1722092 | macros/latex/contrib/l3kernel/interface3.pdf
-2023/08/29 | 2038 | macros/latex/contrib/l3kernel/interface3.tex
-2023/08/29 | 131482 | macros/latex/contrib/l3kernel/l3basics.dtx
-2023/08/29 | 12806 | macros/latex/contrib/l3kernel/l3bootstrap.dtx
-2023/08/29 | 87744 | macros/latex/contrib/l3kernel/l3box.dtx
-2023/08/29 | 16709 | macros/latex/contrib/l3kernel/l3candidates.dtx
-2023/08/29 | 33709 | macros/latex/contrib/l3kernel/l3cctab.dtx
-2023/08/29 | 83077 | macros/latex/contrib/l3kernel/l3clist.dtx
-2023/08/29 | 88106 | macros/latex/contrib/l3kernel/l3coffins.dtx
-2023/08/29 | 112274 | macros/latex/contrib/l3kernel/l3color.dtx
-2023/08/29 | 43225 | macros/latex/contrib/l3kernel/l3debug.dtx
-2023/08/29 | 25249 | macros/latex/contrib/l3kernel/l3deprecation.dtx
-2023/08/29 | 156194 | macros/latex/contrib/l3kernel/l3doc.dtx
-2023/08/29 | 558289 | macros/latex/contrib/l3kernel/l3doc.pdf
-2023/08/29 | 2390 | macros/latex/contrib/l3kernel/l3docstrip.dtx
-2023/08/29 | 152101 | macros/latex/contrib/l3kernel/l3docstrip.pdf
-2023/08/29 | 88833 | macros/latex/contrib/l3kernel/l3expan.dtx
-2023/08/29 | 140497 | macros/latex/contrib/l3kernel/l3file.dtx
-2023/08/29 | 10328 | macros/latex/contrib/l3kernel/l3flag.dtx
-2023/08/29 | 11781 | macros/latex/contrib/l3kernel/l3fparray.dtx
-2023/08/29 | 7472 | macros/latex/contrib/l3kernel/l3fp-assign.dtx
-2023/08/29 | 47216 | macros/latex/contrib/l3kernel/l3fp-aux.dtx
-2023/08/29 | 84789 | macros/latex/contrib/l3kernel/l3fp-basics.dtx
-2023/08/29 | 19641 | macros/latex/contrib/l3kernel/l3fp-convert.dtx
-2023/08/29 | 70679 | macros/latex/contrib/l3kernel/l3fp.dtx
-2023/08/29 | 49311 | macros/latex/contrib/l3kernel/l3fp-expo.dtx
-2023/08/29 | 51081 | macros/latex/contrib/l3kernel/l3fp-extended.dtx
-2023/08/29 | 23009 | macros/latex/contrib/l3kernel/l3fp-logic.dtx
-2023/08/29 | 105012 | macros/latex/contrib/l3kernel/l3fp-parse.dtx
-2023/08/29 | 23574 | macros/latex/contrib/l3kernel/l3fp-random.dtx
-2023/08/29 | 18532 | macros/latex/contrib/l3kernel/l3fp-round.dtx
-2023/08/29 | 12777 | macros/latex/contrib/l3kernel/l3fp-traps.dtx
-2023/08/29 | 73835 | macros/latex/contrib/l3kernel/l3fp-trig.dtx
-2023/08/29 | 6224 | macros/latex/contrib/l3kernel/l3.ins
-2023/08/29 | 30508 | macros/latex/contrib/l3kernel/l3intarray.dtx
-2023/08/29 | 92901 | macros/latex/contrib/l3kernel/l3int.dtx
-2023/08/29 | 27270 | macros/latex/contrib/l3kernel/l3kernel-functions.dtx
-2023/08/29 | 127858 | macros/latex/contrib/l3kernel/l3keys.dtx
-2023/08/29 | 4574 | macros/latex/contrib/l3kernel/l3legacy.dtx
-2023/08/29 | 23866 | macros/latex/contrib/l3kernel/l3luatex.dtx
-2023/08/29 | 81263 | macros/latex/contrib/l3kernel/l3msg.dtx
-2023/08/29 | 80195 | macros/latex/contrib/l3kernel/l3names.dtx
-2023/08/29 | 122711 | macros/latex/contrib/l3kernel/l3news01.pdf
-2023/08/29 | 4937 | macros/latex/contrib/l3kernel/l3news01.tex
-2023/08/29 | 150675 | macros/latex/contrib/l3kernel/l3news02.pdf
-2023/08/29 | 6677 | macros/latex/contrib/l3kernel/l3news02.tex
-2023/08/29 | 148704 | macros/latex/contrib/l3kernel/l3news03.pdf
-2023/08/29 | 6482 | macros/latex/contrib/l3kernel/l3news03.tex
-2023/08/29 | 114591 | macros/latex/contrib/l3kernel/l3news04.pdf
-2023/08/29 | 5429 | macros/latex/contrib/l3kernel/l3news04.tex
-2023/08/29 | 112487 | macros/latex/contrib/l3kernel/l3news05.pdf
-2023/08/29 | 4716 | macros/latex/contrib/l3kernel/l3news05.tex
-2023/08/29 | 151569 | macros/latex/contrib/l3kernel/l3news06.pdf
-2023/08/29 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex
-2023/08/29 | 128317 | macros/latex/contrib/l3kernel/l3news07.pdf
-2023/08/29 | 4977 | macros/latex/contrib/l3kernel/l3news07.tex
-2023/08/29 | 163456 | macros/latex/contrib/l3kernel/l3news08.pdf
-2023/08/29 | 9465 | macros/latex/contrib/l3kernel/l3news08.tex
-2023/08/29 | 250127 | macros/latex/contrib/l3kernel/l3news09.pdf
-2023/08/29 | 107383 | macros/latex/contrib/l3kernel/l3news09.tex
-2023/08/29 | 150282 | macros/latex/contrib/l3kernel/l3news10.pdf
-2023/08/29 | 9999 | macros/latex/contrib/l3kernel/l3news10.tex
-2023/08/29 | 170069 | macros/latex/contrib/l3kernel/l3news11.pdf
-2023/08/29 | 8481 | macros/latex/contrib/l3kernel/l3news11.tex
-2023/08/29 | 204992 | macros/latex/contrib/l3kernel/l3news12.pdf
-2023/08/29 | 14913 | macros/latex/contrib/l3kernel/l3news12.tex
-2023/08/29 | 395889 | macros/latex/contrib/l3kernel/l3news.pdf
-2023/08/29 | 4890 | macros/latex/contrib/l3kernel/l3news.tex
-2023/08/29 | 17809 | macros/latex/contrib/l3kernel/l3pdf.dtx
-2023/08/29 | 46584 | macros/latex/contrib/l3kernel/l3prefixes.csv
-2023/08/29 | 81941 | macros/latex/contrib/l3kernel/l3prefixes.pdf
-2023/08/29 | 2821 | macros/latex/contrib/l3kernel/l3prefixes.tex
-2023/08/29 | 70482 | macros/latex/contrib/l3kernel/l3prg.dtx
-2023/08/29 | 57404 | macros/latex/contrib/l3kernel/l3prop.dtx
-2023/08/29 | 35441 | macros/latex/contrib/l3kernel/l3quark.dtx
-2023/08/29 | 305576 | macros/latex/contrib/l3kernel/l3regex.dtx
-2023/08/29 | 98663 | macros/latex/contrib/l3kernel/l3seq.dtx
-2023/08/29 | 91740 | macros/latex/contrib/l3kernel/l3skip.dtx
-2023/08/29 | 40728 | macros/latex/contrib/l3kernel/l3sort.dtx
-2023/08/29 | 113435 | macros/latex/contrib/l3kernel/l3str-convert.dtx
-2023/08/29 | 79329 | macros/latex/contrib/l3kernel/l3str.dtx
-2023/08/29 | 296645 | macros/latex/contrib/l3kernel/l3styleguide.pdf
-2023/08/29 | 11884 | macros/latex/contrib/l3kernel/l3styleguide.tex
-2023/08/29 | 243279 | macros/latex/contrib/l3kernel/l3syntax-changes.pdf
-2023/08/29 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex
-2023/08/29 | 35894 | macros/latex/contrib/l3kernel/l3sys.dtx
-2023/08/29 | 218431 | macros/latex/contrib/l3kernel/l3term-glossary.pdf
-2023/08/29 | 7079 | macros/latex/contrib/l3kernel/l3term-glossary.tex
-2023/08/29 | 74244 | macros/latex/contrib/l3kernel/l3text-case.dtx
-2023/08/29 | 49600 | macros/latex/contrib/l3kernel/l3text.dtx
-2023/08/29 | 16633 | macros/latex/contrib/l3kernel/l3text-map.dtx
-2023/08/29 | 20464 | macros/latex/contrib/l3kernel/l3text-purify.dtx
-2023/08/29 | 62840 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx
-2023/08/29 | 145905 | macros/latex/contrib/l3kernel/l3tl.dtx
-2023/08/29 | 119072 | macros/latex/contrib/l3kernel/l3token.dtx
-2023/08/29 | 35675 | macros/latex/contrib/l3kernel/l3unicode.dtx
-2023/08/29 | 3058 | macros/latex/contrib/l3kernel/README.md
-2023/08/29 | 24792 | macros/latex/contrib/l3kernel/source3body.tex
-2023/08/29 | 7369566 | macros/latex/contrib/l3kernel/source3.pdf
-2023/08/29 | 2229 | macros/latex/contrib/l3kernel/source3.tex
-2023/08/29 | 13751905 | macros/latex/contrib/l3kernel.zip
-2023/08/29 | 7412 | macros/latex/contrib/l3packages/CHANGELOG.md
-2023/08/29 | 1444 | macros/latex/contrib/l3packages/l3keys2e-demo.tex
-2023/08/29 | 12312 | macros/latex/contrib/l3packages/l3keys2e.dtx
-2023/08/29 | 1228 | macros/latex/contrib/l3packages/l3keys2e.ins
-2023/08/29 | 412937 | macros/latex/contrib/l3packages/l3keys2e.pdf
-2023/08/29 | 3333 | macros/latex/contrib/l3packages/README.md
-2023/08/29 | 7374 | macros/latex/contrib/l3packages/xfp.dtx
-2023/08/29 | 1191 | macros/latex/contrib/l3packages/xfp.ins
-2023/08/29 | 332628 | macros/latex/contrib/l3packages/xfp.pdf
-2023/08/29 | 39366 | macros/latex/contrib/l3packages/xfrac.dtx
-2023/08/29 | 1306 | macros/latex/contrib/l3packages/xfrac.ins
-2023/08/29 | 483310 | macros/latex/contrib/l3packages/xfrac.pdf
-2023/08/29 | 84537 | macros/latex/contrib/l3packages/xparse-2018-04-12.sty
-2023/08/29 | 6195 | macros/latex/contrib/l3packages/xparse-2020-10-01.sty
-2023/08/29 | 59625 | macros/latex/contrib/l3packages/xparse.dtx
-2023/08/29 | 80215 | macros/latex/contrib/l3packages/xparse-generic.tex
-2023/08/29 | 1272 | macros/latex/contrib/l3packages/xparse.ins
-2023/08/29 | 534879 | macros/latex/contrib/l3packages/xparse.pdf
-2023/08/29 | 101005 | macros/latex/contrib/l3packages/xtemplate.dtx
-2023/08/29 | 1561 | macros/latex/contrib/l3packages/xtemplate.ins
-2023/08/29 | 450948 | macros/latex/contrib/l3packages/xtemplate.pdf
-2023/08/29 | 2240059 | macros/latex/contrib/l3packages.zip
+2023/10/10 | 8490 | macros/latex/contrib/l3experimental/CHANGELOG.md
+2023/10/10 | 16508 | macros/latex/contrib/l3experimental/l3benchmark.dtx
+2023/10/10 | 1558 | macros/latex/contrib/l3experimental/l3benchmark.ins
+2023/10/10 | 308535 | macros/latex/contrib/l3experimental/l3benchmark.pdf
+2023/10/10 | 18694 | macros/latex/contrib/l3experimental/l3bitset.dtx
+2023/10/10 | 1565 | macros/latex/contrib/l3experimental/l3bitset.ins
+2023/10/10 | 404408 | macros/latex/contrib/l3experimental/l3bitset.pdf
+2023/10/10 | 4323 | macros/latex/contrib/l3experimental/l3draw-boxes.dtx
+2023/10/10 | 679935 | macros/latex/contrib/l3experimental/l3draw-code.pdf
+2023/10/10 | 1360 | macros/latex/contrib/l3experimental/l3draw-code.tex
+2023/10/10 | 42560 | macros/latex/contrib/l3experimental/l3draw.dtx
+2023/10/10 | 1906 | macros/latex/contrib/l3experimental/l3draw.ins
+2023/10/10 | 5653 | macros/latex/contrib/l3experimental/l3draw-layers.dtx
+2023/10/10 | 32546 | macros/latex/contrib/l3experimental/l3draw-paths.dtx
+2023/10/10 | 517831 | macros/latex/contrib/l3experimental/l3draw.pdf
+2023/10/10 | 36026 | macros/latex/contrib/l3experimental/l3draw-points.dtx
+2023/10/10 | 10018 | macros/latex/contrib/l3experimental/l3draw-scopes.dtx
+2023/10/10 | 20451 | macros/latex/contrib/l3experimental/l3draw-softpath.dtx
+2023/10/10 | 4448 | macros/latex/contrib/l3experimental/l3draw-state.dtx
+2023/10/10 | 10138 | macros/latex/contrib/l3experimental/l3draw-transforms.dtx
+2023/10/10 | 96044 | macros/latex/contrib/l3experimental/l3galley.dtx
+2023/10/10 | 408917 | macros/latex/contrib/l3experimental/l3galley.pdf
+2023/10/10 | 25919 | macros/latex/contrib/l3experimental/l3graphics.dtx
+2023/10/10 | 1553 | macros/latex/contrib/l3experimental/l3graphics.ins
+2023/10/10 | 383648 | macros/latex/contrib/l3experimental/l3graphics.pdf
+2023/10/10 | 4011 | macros/latex/contrib/l3experimental/l3opacity.dtx
+2023/10/10 | 1547 | macros/latex/contrib/l3experimental/l3opacity.ins
+2023/10/10 | 313597 | macros/latex/contrib/l3experimental/l3opacity.pdf
+2023/10/10 | 31827 | macros/latex/contrib/l3experimental/l3str-format.dtx
+2023/10/10 | 368030 | macros/latex/contrib/l3experimental/l3str-format.pdf
+2023/10/10 | 1564 | macros/latex/contrib/l3experimental/l3str.ins
+2023/10/10 | 12361 | macros/latex/contrib/l3experimental/l3sys-shell.dtx
+2023/10/10 | 1565 | macros/latex/contrib/l3experimental/l3sys-shell.ins
+2023/10/10 | 348054 | macros/latex/contrib/l3experimental/l3sys-shell.pdf
+2023/10/10 | 4284 | macros/latex/contrib/l3experimental/README.md
+2023/10/10 | 35092 | macros/latex/contrib/l3experimental/xcoffins.dtx
+2023/10/10 | 1569 | macros/latex/contrib/l3experimental/xcoffins.ins
+2023/10/10 | 394481 | macros/latex/contrib/l3experimental/xcoffins.pdf
+2023/10/10 | 58083 | macros/latex/contrib/l3experimental/xgalley.dtx
+2023/10/10 | 1624 | macros/latex/contrib/l3experimental/xgalley.ins
+2023/10/10 | 299638 | macros/latex/contrib/l3experimental/xgalley.pdf
+2023/10/10 | 4419131 | macros/latex/contrib/l3experimental.zip
+2023/10/10 | 52846 | macros/latex/contrib/l3kernel/CHANGELOG.md
+2023/10/10 | 70517 | macros/latex/contrib/l3kernel/expl3.dtx
+2023/10/10 | 622212 | macros/latex/contrib/l3kernel/expl3.pdf
+2023/10/10 | 1724914 | macros/latex/contrib/l3kernel/interface3.pdf
+2023/10/10 | 2072 | macros/latex/contrib/l3kernel/interface3.tex
+2023/10/10 | 135539 | macros/latex/contrib/l3kernel/l3basics.dtx
+2023/10/10 | 12806 | macros/latex/contrib/l3kernel/l3bootstrap.dtx
+2023/10/10 | 87744 | macros/latex/contrib/l3kernel/l3box.dtx
+2023/10/10 | 16639 | macros/latex/contrib/l3kernel/l3candidates.dtx
+2023/10/10 | 33773 | macros/latex/contrib/l3kernel/l3cctab.dtx
+2023/10/10 | 83184 | macros/latex/contrib/l3kernel/l3clist.dtx
+2023/10/10 | 88106 | macros/latex/contrib/l3kernel/l3coffins.dtx
+2023/10/10 | 112255 | macros/latex/contrib/l3kernel/l3color.dtx
+2023/10/10 | 43223 | macros/latex/contrib/l3kernel/l3debug.dtx
+2023/10/10 | 25221 | macros/latex/contrib/l3kernel/l3deprecation.dtx
+2023/10/10 | 157292 | macros/latex/contrib/l3kernel/l3doc.dtx
+2023/10/10 | 557935 | macros/latex/contrib/l3kernel/l3doc.pdf
+2023/10/10 | 2390 | macros/latex/contrib/l3kernel/l3docstrip.dtx
+2023/10/10 | 151752 | macros/latex/contrib/l3kernel/l3docstrip.pdf
+2023/10/10 | 89007 | macros/latex/contrib/l3kernel/l3expan.dtx
+2023/10/10 | 144087 | macros/latex/contrib/l3kernel/l3file.dtx
+2023/10/10 | 10328 | macros/latex/contrib/l3kernel/l3flag.dtx
+2023/10/10 | 11781 | macros/latex/contrib/l3kernel/l3fparray.dtx
+2023/10/10 | 7472 | macros/latex/contrib/l3kernel/l3fp-assign.dtx
+2023/10/10 | 47216 | macros/latex/contrib/l3kernel/l3fp-aux.dtx
+2023/10/10 | 84789 | macros/latex/contrib/l3kernel/l3fp-basics.dtx
+2023/10/10 | 19641 | macros/latex/contrib/l3kernel/l3fp-convert.dtx
+2023/10/10 | 70679 | macros/latex/contrib/l3kernel/l3fp.dtx
+2023/10/10 | 49311 | macros/latex/contrib/l3kernel/l3fp-expo.dtx
+2023/10/10 | 51081 | macros/latex/contrib/l3kernel/l3fp-extended.dtx
+2023/10/10 | 23009 | macros/latex/contrib/l3kernel/l3fp-logic.dtx
+2023/10/10 | 105012 | macros/latex/contrib/l3kernel/l3fp-parse.dtx
+2023/10/10 | 23574 | macros/latex/contrib/l3kernel/l3fp-random.dtx
+2023/10/10 | 18532 | macros/latex/contrib/l3kernel/l3fp-round.dtx
+2023/10/10 | 12777 | macros/latex/contrib/l3kernel/l3fp-traps.dtx
+2023/10/10 | 73835 | macros/latex/contrib/l3kernel/l3fp-trig.dtx
+2023/10/10 | 6224 | macros/latex/contrib/l3kernel/l3.ins
+2023/10/10 | 30508 | macros/latex/contrib/l3kernel/l3intarray.dtx
+2023/10/10 | 92989 | macros/latex/contrib/l3kernel/l3int.dtx
+2023/10/10 | 27270 | macros/latex/contrib/l3kernel/l3kernel-functions.dtx
+2023/10/10 | 129885 | macros/latex/contrib/l3kernel/l3keys.dtx
+2023/10/10 | 4574 | macros/latex/contrib/l3kernel/l3legacy.dtx
+2023/10/10 | 23866 | macros/latex/contrib/l3kernel/l3luatex.dtx
+2023/10/10 | 82320 | macros/latex/contrib/l3kernel/l3msg.dtx
+2023/10/10 | 80195 | macros/latex/contrib/l3kernel/l3names.dtx
+2023/10/10 | 122959 | macros/latex/contrib/l3kernel/l3news01.pdf
+2023/10/10 | 4937 | macros/latex/contrib/l3kernel/l3news01.tex
+2023/10/10 | 150919 | macros/latex/contrib/l3kernel/l3news02.pdf
+2023/10/10 | 6677 | macros/latex/contrib/l3kernel/l3news02.tex
+2023/10/10 | 148747 | macros/latex/contrib/l3kernel/l3news03.pdf
+2023/10/10 | 6482 | macros/latex/contrib/l3kernel/l3news03.tex
+2023/10/10 | 114754 | macros/latex/contrib/l3kernel/l3news04.pdf
+2023/10/10 | 5429 | macros/latex/contrib/l3kernel/l3news04.tex
+2023/10/10 | 112524 | macros/latex/contrib/l3kernel/l3news05.pdf
+2023/10/10 | 4716 | macros/latex/contrib/l3kernel/l3news05.tex
+2023/10/10 | 151591 | macros/latex/contrib/l3kernel/l3news06.pdf
+2023/10/10 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex
+2023/10/10 | 128344 | macros/latex/contrib/l3kernel/l3news07.pdf
+2023/10/10 | 4977 | macros/latex/contrib/l3kernel/l3news07.tex
+2023/10/10 | 163484 | macros/latex/contrib/l3kernel/l3news08.pdf
+2023/10/10 | 9465 | macros/latex/contrib/l3kernel/l3news08.tex
+2023/10/10 | 250159 | macros/latex/contrib/l3kernel/l3news09.pdf
+2023/10/10 | 107383 | macros/latex/contrib/l3kernel/l3news09.tex
+2023/10/10 | 150302 | macros/latex/contrib/l3kernel/l3news10.pdf
+2023/10/10 | 9999 | macros/latex/contrib/l3kernel/l3news10.tex
+2023/10/10 | 170102 | macros/latex/contrib/l3kernel/l3news11.pdf
+2023/10/10 | 8481 | macros/latex/contrib/l3kernel/l3news11.tex
+2023/10/10 | 205020 | macros/latex/contrib/l3kernel/l3news12.pdf
+2023/10/10 | 14913 | macros/latex/contrib/l3kernel/l3news12.tex
+2023/10/10 | 396222 | macros/latex/contrib/l3kernel/l3news.pdf
+2023/10/10 | 4890 | macros/latex/contrib/l3kernel/l3news.tex
+2023/10/10 | 17901 | macros/latex/contrib/l3kernel/l3pdf.dtx
+2023/10/10 | 47274 | macros/latex/contrib/l3kernel/l3prefixes.csv
+2023/10/10 | 82529 | macros/latex/contrib/l3kernel/l3prefixes.pdf
+2023/10/10 | 2821 | macros/latex/contrib/l3kernel/l3prefixes.tex
+2023/10/10 | 70482 | macros/latex/contrib/l3kernel/l3prg.dtx
+2023/10/10 | 60383 | macros/latex/contrib/l3kernel/l3prop.dtx
+2023/10/10 | 35441 | macros/latex/contrib/l3kernel/l3quark.dtx
+2023/10/10 | 305576 | macros/latex/contrib/l3kernel/l3regex.dtx
+2023/10/10 | 98903 | macros/latex/contrib/l3kernel/l3seq.dtx
+2023/10/10 | 91738 | macros/latex/contrib/l3kernel/l3skip.dtx
+2023/10/10 | 40728 | macros/latex/contrib/l3kernel/l3sort.dtx
+2023/10/10 | 113435 | macros/latex/contrib/l3kernel/l3str-convert.dtx
+2023/10/10 | 79587 | macros/latex/contrib/l3kernel/l3str.dtx
+2023/10/10 | 296260 | macros/latex/contrib/l3kernel/l3styleguide.pdf
+2023/10/10 | 11884 | macros/latex/contrib/l3kernel/l3styleguide.tex
+2023/10/10 | 242906 | macros/latex/contrib/l3kernel/l3syntax-changes.pdf
+2023/10/10 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex
+2023/10/10 | 36264 | macros/latex/contrib/l3kernel/l3sys.dtx
+2023/10/10 | 218060 | macros/latex/contrib/l3kernel/l3term-glossary.pdf
+2023/10/10 | 7079 | macros/latex/contrib/l3kernel/l3term-glossary.tex
+2023/10/10 | 74234 | macros/latex/contrib/l3kernel/l3text-case.dtx
+2023/10/10 | 49600 | macros/latex/contrib/l3kernel/l3text.dtx
+2023/10/10 | 16631 | macros/latex/contrib/l3kernel/l3text-map.dtx
+2023/10/10 | 20464 | macros/latex/contrib/l3kernel/l3text-purify.dtx
+2023/10/10 | 62840 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx
+2023/10/10 | 148160 | macros/latex/contrib/l3kernel/l3tl.dtx
+2023/10/10 | 119040 | macros/latex/contrib/l3kernel/l3token.dtx
+2023/10/10 | 35675 | macros/latex/contrib/l3kernel/l3unicode.dtx
+2023/10/10 | 3058 | macros/latex/contrib/l3kernel/README.md
+2023/10/10 | 25001 | macros/latex/contrib/l3kernel/source3body.tex
+2023/10/10 | 7389071 | macros/latex/contrib/l3kernel/source3.pdf
+2023/10/10 | 2266 | macros/latex/contrib/l3kernel/source3.tex
+2023/10/10 | 13775882 | macros/latex/contrib/l3kernel.zip
+2023/10/10 | 7555 | macros/latex/contrib/l3packages/CHANGELOG.md
+2023/10/10 | 1444 | macros/latex/contrib/l3packages/l3keys2e-demo.tex
+2023/10/10 | 12312 | macros/latex/contrib/l3packages/l3keys2e.dtx
+2023/10/10 | 1228 | macros/latex/contrib/l3packages/l3keys2e.ins
+2023/10/10 | 412557 | macros/latex/contrib/l3packages/l3keys2e.pdf
+2023/10/10 | 3463 | macros/latex/contrib/l3packages/README.md
+2023/10/10 | 7374 | macros/latex/contrib/l3packages/xfp.dtx
+2023/10/10 | 1191 | macros/latex/contrib/l3packages/xfp.ins
+2023/10/10 | 332260 | macros/latex/contrib/l3packages/xfp.pdf
+2023/10/10 | 39366 | macros/latex/contrib/l3packages/xfrac.dtx
+2023/10/10 | 1306 | macros/latex/contrib/l3packages/xfrac.ins
+2023/10/10 | 482959 | macros/latex/contrib/l3packages/xfrac.pdf
+2023/10/10 | 84537 | macros/latex/contrib/l3packages/xparse-2018-04-12.sty
+2023/10/10 | 6195 | macros/latex/contrib/l3packages/xparse-2020-10-01.sty
+2023/10/10 | 59625 | macros/latex/contrib/l3packages/xparse.dtx
+2023/10/10 | 80215 | macros/latex/contrib/l3packages/xparse-generic.tex
+2023/10/10 | 1272 | macros/latex/contrib/l3packages/xparse.ins
+2023/10/10 | 534533 | macros/latex/contrib/l3packages/xparse.pdf
+2023/10/10 | 100838 | macros/latex/contrib/l3packages/xtemplate.dtx
+2023/10/10 | 1561 | macros/latex/contrib/l3packages/xtemplate.ins
+2023/10/10 | 450604 | macros/latex/contrib/l3packages/xtemplate.pdf
+2023/10/10 | 2238289 | macros/latex/contrib/l3packages.zip
2008/03/30 | 76250 | macros/latex/contrib/labbook/labboode.pdf
2003/08/06 | 81327 | macros/latex/contrib/labbook/labbook.dtx
2003/06/03 | 1041 | macros/latex/contrib/labbook/labbook.el
@@ -231628,14 +231627,15 @@
2006/04/19 | 163789 | macros/latex/contrib/nomentbl/nomentbl.pdf
2006/04/19 | 702 | macros/latex/contrib/nomentbl/README
2006/04/19 | 184181 | macros/latex/contrib/nomentbl.zip
-2023/09/27 | 163176 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdf
-2023/09/27 | 18273 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex
-2020/12/18 | 456 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex
-2023/09/26 | 1855 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex
-2020/12/18 | 388 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex
-2023/09/27 | 16624 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty
-2023/09/27 | 414 | macros/latex/contrib/non-decimal-units/README.md
-2023/09/27 | 167534 | macros/latex/contrib/non-decimal-units.zip
+2023/10/10 | 155980 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdf
+2023/10/10 | 1786 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.preamble.sty
+2023/10/10 | 18301 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex
+2023/10/05 | 524 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex
+2023/10/09 | 2050 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex
+2023/10/05 | 368 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex
+2023/10/10 | 19089 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty
+2023/10/10 | 405 | macros/latex/contrib/non-decimal-units/README.md
+2023/10/10 | 163409 | macros/latex/contrib/non-decimal-units.zip
1999/07/08 | 13519 | macros/latex/contrib/nonfloat/nonfloat.dtx
2005/05/25 | 131447 | macros/latex/contrib/nonfloat/nonfloat-en.pdf
2005/05/25 | 9213 | macros/latex/contrib/nonfloat/nonfloat-en.tex
@@ -233400,54 +233400,54 @@
2022/10/29 | 323238 | macros/latex/contrib/pdflscape/pdflscape.pdf
2022/10/29 | 402 | macros/latex/contrib/pdflscape/README.md
2022/10/29 | 319157 | macros/latex/contrib/pdflscape.zip
-2023/08/29 | 9953 | macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md
-2023/08/29 | 7654 | macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty
-2023/08/29 | 2882 | macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
-2023/08/29 | 176281 | macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx
-2023/08/29 | 963463 | macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdf
-2023/08/29 | 79295 | macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx
-2023/08/29 | 704274 | macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdf
-2023/08/29 | 28627 | macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx
-2023/08/29 | 588613 | macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdf
-2023/08/29 | 17304 | macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx
-2023/08/29 | 516275 | macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdf
-2023/08/29 | 26550 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx
-2023/08/29 | 559157 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdf
-2023/08/29 | 18170 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx
-2023/08/29 | 542236 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdf
-2023/08/29 | 20430 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx
-2023/08/29 | 544521 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdf
-2023/08/29 | 67781 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx
-2023/08/29 | 751101 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdf
-2023/08/29 | 26540 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx
-2023/08/29 | 537650 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdf
-2023/08/29 | 30678 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx
-2023/08/29 | 593117 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdf
-2023/08/29 | 21991 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx
-2023/08/29 | 516850 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdf
-2023/08/29 | 29765 | macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx
-2023/08/29 | 567314 | macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdf
-2023/08/29 | 63555 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx
-2023/08/29 | 682857 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdf
-2023/08/29 | 90884 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx
-2023/08/29 | 815200 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdf
-2023/08/29 | 17112 | macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx
-2023/08/29 | 532224 | macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdf
-2023/08/29 | 6414 | macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx
-2023/08/29 | 427837 | macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdf
-2023/08/29 | 4041 | macros/latex/contrib/pdfmanagement-testphase/l3ref-tmp.sty
-2023/08/29 | 12798 | macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx
-2023/08/29 | 590756 | macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdf
-2023/08/29 | 386566 | macros/latex/contrib/pdfmanagement-testphase/output-patches-tmp-ltx.pdf
-2023/08/29 | 13309 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx
-2023/08/29 | 440217 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdf
-2023/08/29 | 19342 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx
-2023/08/29 | 4761 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.ins
-2023/08/29 | 464671 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdf
-2023/08/29 | 1200 | macros/latex/contrib/pdfmanagement-testphase/README.md
-2023/08/29 | 1354 | macros/latex/contrib/pdfmanagement-testphase/update-metadata.txt
-2023/08/29 | 2835 | macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
-2023/08/29 | 11391006 | macros/latex/contrib/pdfmanagement-testphase.zip
+2023/10/10 | 10180 | macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md
+2023/10/10 | 7654 | macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty
+2023/10/10 | 2882 | macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
+2023/10/10 | 177335 | macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx
+2023/10/10 | 965059 | macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdf
+2023/10/10 | 80228 | macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx
+2023/10/10 | 706088 | macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdf
+2023/10/10 | 28627 | macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx
+2023/10/10 | 588246 | macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdf
+2023/10/10 | 17330 | macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx
+2023/10/10 | 515760 | macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdf
+2023/10/10 | 26550 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx
+2023/10/10 | 558915 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdf
+2023/10/10 | 18170 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx
+2023/10/10 | 542008 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdf
+2023/10/10 | 20430 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx
+2023/10/10 | 544283 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdf
+2023/10/10 | 67781 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx
+2023/10/10 | 751045 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdf
+2023/10/10 | 26540 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx
+2023/10/10 | 537398 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdf
+2023/10/10 | 31145 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx
+2023/10/10 | 594477 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdf
+2023/10/10 | 21991 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx
+2023/10/10 | 516622 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdf
+2023/10/10 | 29765 | macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx
+2023/10/10 | 566776 | macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdf
+2023/10/10 | 63555 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx
+2023/10/10 | 682682 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdf
+2023/10/10 | 90884 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx
+2023/10/10 | 815036 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdf
+2023/10/10 | 17112 | macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx
+2023/10/10 | 532070 | macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdf
+2023/10/10 | 6414 | macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx
+2023/10/10 | 427143 | macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdf
+2023/10/10 | 4041 | macros/latex/contrib/pdfmanagement-testphase/l3ref-tmp.sty
+2023/10/10 | 12798 | macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx
+2023/10/10 | 590327 | macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdf
+2023/10/10 | 386566 | macros/latex/contrib/pdfmanagement-testphase/output-patches-tmp-ltx.pdf
+2023/10/10 | 13546 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx
+2023/10/10 | 440395 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdf
+2023/10/10 | 19342 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx
+2023/10/10 | 4761 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.ins
+2023/10/10 | 463827 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdf
+2023/10/10 | 1200 | macros/latex/contrib/pdfmanagement-testphase/README.md
+2023/10/10 | 1354 | macros/latex/contrib/pdfmanagement-testphase/update-metadata.txt
+2023/10/10 | 2843 | macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
+2023/10/10 | 11391011 | macros/latex/contrib/pdfmanagement-testphase.zip
2011/05/05 | 156 | macros/latex/contrib/pdfmarginpar/doc/pdfmarginparexample.aux
2011/05/05 | 3368 | macros/latex/contrib/pdfmarginpar/doc/pdfmarginparexample.log
2011/05/05 | 64982 | macros/latex/contrib/pdfmarginpar/doc/pdfmarginparexample.pdf
@@ -245472,115 +245472,115 @@
2015/10/04 | 263467 | macros/luatex/generic/luatexbase/luatexbase.pdf
2015/10/04 | 450 | macros/luatex/generic/luatexbase/README.md
2015/10/04 | 270547 | macros/luatex/generic/luatexbase.zip
-2023/05/03 | 1536 | macros/luatex/generic/luatexja/COPYING
-2023/05/03 | 945 | macros/luatex/generic/luatexja/doc/jfm-testf.lua
-2023/05/03 | 3238 | macros/luatex/generic/luatexja/doc/jfm-test.lua
-2023/05/03 | 4452 | macros/luatex/generic/luatexja/doc/jfm-ujisc33.lua
-2023/05/03 | 166557 | macros/luatex/generic/luatexja/doc/lltjp-geometry.pdf
-2023/05/03 | 13726 | macros/luatex/generic/luatexja/doc/lltjp-geometry.tex
-2023/05/03 | 403681 | macros/luatex/generic/luatexja/doc/ltjclasses.pdf
-2023/05/03 | 69217 | macros/luatex/generic/luatexja/doc/ltjltxdoc.pdf
-2023/05/03 | 460413 | macros/luatex/generic/luatexja/doc/ltjsclasses.pdf
-2023/05/03 | 543188 | macros/luatex/generic/luatexja/doc/luatexja.dtx
-2023/05/03 | 702456 | macros/luatex/generic/luatexja/doc/luatexja-en.pdf
-2023/05/03 | 355 | macros/luatex/generic/luatexja/doc/luatexja.ins
-2023/05/03 | 1143943 | macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
-2023/05/03 | 391556 | macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf
-2023/05/03 | 58140 | macros/luatex/generic/luatexja/doc/luatexja-ruby.tex
-2023/05/03 | 3796 | macros/luatex/generic/luatexja/README
-2023/05/03 | 5302 | macros/luatex/generic/luatexja/src/addons/luatexja-adjust.sty
-2023/05/03 | 33461 | macros/luatex/generic/luatexja/src/addons/luatexja-ajmacros.sty
-2023/05/03 | 15839 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec-27c.sty
-2023/05/03 | 1637 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec.sty
-2023/05/03 | 6922 | macros/luatex/generic/luatexja/src/addons/luatexja-otf.sty
-2023/05/03 | 29612 | macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty
-2023/05/03 | 10628 | macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty
-2023/05/03 | 2193 | macros/luatex/generic/luatexja/src/addons/luatexja-zhfonts.sty
-2023/05/03 | 2599 | macros/luatex/generic/luatexja/src/jfm-banjiao.lua
-2023/05/03 | 2203 | macros/luatex/generic/luatexja/src/jfm-CCT.lua
-2023/05/03 | 2340 | macros/luatex/generic/luatexja/src/jfm-jis.lua
-2023/05/03 | 2582 | macros/luatex/generic/luatexja/src/jfm-kaiming.lua
-2023/05/03 | 8103 | macros/luatex/generic/luatexja/src/jfm-min.lua
-2023/05/03 | 192 | macros/luatex/generic/luatexja/src/jfm-mono.lua
-2023/05/03 | 200 | macros/luatex/generic/luatexja/src/jfm-prop.lua
-2023/05/03 | 196 | macros/luatex/generic/luatexja/src/jfm-propv.lua
-2023/05/03 | 196 | macros/luatex/generic/luatexja/src/jfm-propw.lua
-2023/05/03 | 2573 | macros/luatex/generic/luatexja/src/jfm-quanjiao.lua
-2023/05/03 | 4808 | macros/luatex/generic/luatexja/src/jfm-tmin.lua
-2023/05/03 | 13895 | macros/luatex/generic/luatexja/src/jfm-ujis.lua
-2023/05/03 | 11506 | macros/luatex/generic/luatexja/src/jfm-ujisv.lua
-2023/05/03 | 27058 | macros/luatex/generic/luatexja/src/lltjext.sty
-2023/05/03 | 22125 | macros/luatex/generic/luatexja/src/ltj-adjust.lua
-2023/05/03 | 12463 | macros/luatex/generic/luatexja/src/ltj-base.lua
-2023/05/03 | 6246 | macros/luatex/generic/luatexja/src/ltj-base.sty
-2023/05/03 | 4215 | macros/luatex/generic/luatexja/src/ltj-charrange.lua
-2023/05/03 | 178115 | macros/luatex/generic/luatexja/src/ltjclasses.dtx
-2023/05/03 | 1278 | macros/luatex/generic/luatexja/src/ltjclasses.ins
-2023/05/03 | 3756 | macros/luatex/generic/luatexja/src/ltj-compat.lua
-2023/05/03 | 5230 | macros/luatex/generic/luatexja/src/ltj-debug.lua
-2023/05/03 | 40540 | macros/luatex/generic/luatexja/src/ltj-direction.lua
-2023/05/03 | 3650 | macros/luatex/generic/luatexja/src/ltj-inputbuf.lua
-2023/05/03 | 154928 | macros/luatex/generic/luatexja/src/ltj-ivd_aj1.lua
-2023/05/03 | 55401 | macros/luatex/generic/luatexja/src/ltj-jfmglue.lua
-2023/05/03 | 48961 | macros/luatex/generic/luatexja/src/ltj-jfont.lua
-2023/05/03 | 54427 | macros/luatex/generic/luatexja/src/ltj-jisx0208.lua
-2023/05/03 | 18722 | macros/luatex/generic/luatexja/src/ltj-kinsoku.tex
-2023/05/03 | 6571 | macros/luatex/generic/luatexja/src/ltj-latex.sty
-2023/05/03 | 3879 | macros/luatex/generic/luatexja/src/ltj-lineskip.lua
-2023/05/03 | 5931 | macros/luatex/generic/luatexja/src/ltj-lotf_aux.lua
-2023/05/03 | 8660 | macros/luatex/generic/luatexja/src/ltjltxdoc.dtx
-2023/05/03 | 126 | macros/luatex/generic/luatexja/src/ltjltxdoc.ins
-2023/05/03 | 7546 | macros/luatex/generic/luatexja/src/ltj-math.lua
-2023/05/03 | 8695 | macros/luatex/generic/luatexja/src/ltj-otf.lua
-2023/05/03 | 4480 | macros/luatex/generic/luatexja/src/ltj-plain.sty
-2023/05/03 | 6952 | macros/luatex/generic/luatexja/src/ltj-pretreat.lua
-2023/05/03 | 15429 | macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua
-2023/05/03 | 32227 | macros/luatex/generic/luatexja/src/ltj-ruby.lua
-2023/05/03 | 189539 | macros/luatex/generic/luatexja/src/ltjsclasses.dtx
-2023/05/03 | 385 | macros/luatex/generic/luatexja/src/ltjsclasses.ins
-2023/05/03 | 13316 | macros/luatex/generic/luatexja/src/ltj-setwidth.lua
-2023/05/03 | 4521 | macros/luatex/generic/luatexja/src/ltj-stack.lua
-2023/05/03 | 7691 | macros/luatex/generic/luatexja/src/ltj-unicode-ccfix.lua
-2023/05/03 | 3451 | macros/luatex/generic/luatexja/src/luatexja-compat.sty
-2023/05/03 | 29748 | macros/luatex/generic/luatexja/src/luatexja-core.sty
-2023/05/03 | 22714 | macros/luatex/generic/luatexja/src/luatexja.lua
-2023/05/03 | 2042 | macros/luatex/generic/luatexja/src/luatexja.sty
-2023/05/03 | 13279 | macros/luatex/generic/luatexja/src/patches/lltjcore.sty
-2023/05/03 | 6529 | macros/luatex/generic/luatexja/src/patches/lltjdefs.sty
-2023/05/03 | 50152 | macros/luatex/generic/luatexja/src/patches/lltjfont.sty
-2023/05/03 | 617 | macros/luatex/generic/luatexja/src/patches/lltjp-array.sty
-2023/05/03 | 4308 | macros/luatex/generic/luatexja/src/patches/lltjp-atbegshi.sty
-2023/05/03 | 825 | macros/luatex/generic/luatexja/src/patches/lltjp-collcell.sty
-2023/05/03 | 425 | macros/luatex/generic/luatexja/src/patches/lltjp-everyshi.sty
-2023/05/03 | 5850 | macros/luatex/generic/luatexja/src/patches/lltjp-fontspec.sty
-2023/05/03 | 1611 | macros/luatex/generic/luatexja/src/patches/lltjp-footmisc.sty
-2023/05/03 | 19234 | macros/luatex/generic/luatexja/src/patches/lltjp-geometry.sty
-2023/05/03 | 14914 | macros/luatex/generic/luatexja/src/patches/lltjp-listings.sty
-2023/05/03 | 2057 | macros/luatex/generic/luatexja/src/patches/lltjp-microtype.sty
-2023/05/03 | 189 | macros/luatex/generic/luatexja/src/patches/lltjp-preview.sty
-2023/05/03 | 4126 | macros/luatex/generic/luatexja/src/patches/lltjp-siunitx.sty
-2023/05/03 | 885 | macros/luatex/generic/luatexja/src/patches/lltjp-stfloats.sty
-2023/05/03 | 6135 | macros/luatex/generic/luatexja/src/patches/lltjp-tascmac.sty
-2023/05/03 | 2374 | macros/luatex/generic/luatexja/src/patches/lltjp-unicode-math.sty
-2023/05/03 | 3371 | macros/luatex/generic/luatexja/src/patches/lltjp-xunicode.sty
-2023/05/03 | 580 | macros/luatex/generic/luatexja/tool/blocks2defcharrange.rb
-2023/05/03 | 1224 | macros/luatex/generic/luatexja/tool/chars2defcharrange.rb
-2023/05/03 | 1130 | macros/luatex/generic/luatexja/tool/function_uax50.lua
-2023/05/03 | 1397 | macros/luatex/generic/luatexja/tool/ivslist.tex
-2023/05/03 | 7790 | macros/luatex/generic/luatexja/tool/jfm-convert.lua
-2023/05/03 | 551 | macros/luatex/generic/luatexja/tool/jfm-readable.rb
-2023/05/03 | 6060 | macros/luatex/generic/luatexja/tool/kyoikukanjiChars.tex
-2023/05/03 | 4262 | macros/luatex/generic/luatexja/tool/kyoikukanji.txt
-2023/05/03 | 3313 | macros/luatex/generic/luatexja/tool/ltj-unicode-ccfix_make2.pl
-2023/05/03 | 355 | macros/luatex/generic/luatexja/tool/otf-AdobeMingStd-Light.txt
-2023/05/03 | 326 | macros/luatex/generic/luatexja/tool/otf-AdobeMyungjoStd-Medium.txt
-2023/05/03 | 317 | macros/luatex/generic/luatexja/tool/otf-AdobeSongStd-Light.txt
-2023/05/03 | 896 | macros/luatex/generic/luatexja/tool/otf-KozMinPr6N-Regular.txt
-2023/05/03 | 945 | macros/luatex/generic/luatexja/tool/table_ivd_aj1.lua
-2023/05/03 | 3100 | macros/luatex/generic/luatexja/tool/table_jisx0208.tex
-2023/05/03 | 1740 | macros/luatex/generic/luatexja/tool/test_exist_nodelib.tex
-2023/05/03 | 11335 | macros/luatex/generic/luatexja/tool/unicodeBlocks.tex
-2023/05/03 | 3829338 | macros/luatex/generic/luatexja.zip
+2023/10/10 | 1536 | macros/luatex/generic/luatexja/COPYING
+2023/10/10 | 945 | macros/luatex/generic/luatexja/doc/jfm-testf.lua
+2023/10/10 | 3238 | macros/luatex/generic/luatexja/doc/jfm-test.lua
+2023/10/10 | 4452 | macros/luatex/generic/luatexja/doc/jfm-ujisc33.lua
+2023/10/10 | 166557 | macros/luatex/generic/luatexja/doc/lltjp-geometry.pdf
+2023/10/10 | 13726 | macros/luatex/generic/luatexja/doc/lltjp-geometry.tex
+2023/10/10 | 403681 | macros/luatex/generic/luatexja/doc/ltjclasses.pdf
+2023/10/10 | 69217 | macros/luatex/generic/luatexja/doc/ltjltxdoc.pdf
+2023/10/10 | 460413 | macros/luatex/generic/luatexja/doc/ltjsclasses.pdf
+2023/10/10 | 543188 | macros/luatex/generic/luatexja/doc/luatexja.dtx
+2023/10/10 | 702730 | macros/luatex/generic/luatexja/doc/luatexja-en.pdf
+2023/10/10 | 355 | macros/luatex/generic/luatexja/doc/luatexja.ins
+2023/10/10 | 1144113 | macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
+2023/10/10 | 391680 | macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf
+2023/10/10 | 58140 | macros/luatex/generic/luatexja/doc/luatexja-ruby.tex
+2023/10/10 | 3797 | macros/luatex/generic/luatexja/README
+2023/10/10 | 5302 | macros/luatex/generic/luatexja/src/addons/luatexja-adjust.sty
+2023/10/10 | 33461 | macros/luatex/generic/luatexja/src/addons/luatexja-ajmacros.sty
+2023/10/10 | 15839 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec-27c.sty
+2023/10/10 | 1637 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec.sty
+2023/10/10 | 6922 | macros/luatex/generic/luatexja/src/addons/luatexja-otf.sty
+2023/10/10 | 29612 | macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty
+2023/10/10 | 10650 | macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty
+2023/10/10 | 2193 | macros/luatex/generic/luatexja/src/addons/luatexja-zhfonts.sty
+2023/10/10 | 2599 | macros/luatex/generic/luatexja/src/jfm-banjiao.lua
+2023/10/10 | 2203 | macros/luatex/generic/luatexja/src/jfm-CCT.lua
+2023/10/10 | 2340 | macros/luatex/generic/luatexja/src/jfm-jis.lua
+2023/10/10 | 2582 | macros/luatex/generic/luatexja/src/jfm-kaiming.lua
+2023/10/10 | 8103 | macros/luatex/generic/luatexja/src/jfm-min.lua
+2023/10/10 | 192 | macros/luatex/generic/luatexja/src/jfm-mono.lua
+2023/10/10 | 200 | macros/luatex/generic/luatexja/src/jfm-prop.lua
+2023/10/10 | 196 | macros/luatex/generic/luatexja/src/jfm-propv.lua
+2023/10/10 | 196 | macros/luatex/generic/luatexja/src/jfm-propw.lua
+2023/10/10 | 2573 | macros/luatex/generic/luatexja/src/jfm-quanjiao.lua
+2023/10/10 | 4808 | macros/luatex/generic/luatexja/src/jfm-tmin.lua
+2023/10/10 | 13895 | macros/luatex/generic/luatexja/src/jfm-ujis.lua
+2023/10/10 | 11506 | macros/luatex/generic/luatexja/src/jfm-ujisv.lua
+2023/10/10 | 27058 | macros/luatex/generic/luatexja/src/lltjext.sty
+2023/10/10 | 22125 | macros/luatex/generic/luatexja/src/ltj-adjust.lua
+2023/10/10 | 12463 | macros/luatex/generic/luatexja/src/ltj-base.lua
+2023/10/10 | 6246 | macros/luatex/generic/luatexja/src/ltj-base.sty
+2023/10/10 | 4215 | macros/luatex/generic/luatexja/src/ltj-charrange.lua
+2023/10/10 | 178115 | macros/luatex/generic/luatexja/src/ltjclasses.dtx
+2023/10/10 | 1278 | macros/luatex/generic/luatexja/src/ltjclasses.ins
+2023/10/10 | 3756 | macros/luatex/generic/luatexja/src/ltj-compat.lua
+2023/10/10 | 5230 | macros/luatex/generic/luatexja/src/ltj-debug.lua
+2023/10/10 | 40540 | macros/luatex/generic/luatexja/src/ltj-direction.lua
+2023/10/10 | 3650 | macros/luatex/generic/luatexja/src/ltj-inputbuf.lua
+2023/10/10 | 154928 | macros/luatex/generic/luatexja/src/ltj-ivd_aj1.lua
+2023/10/10 | 55401 | macros/luatex/generic/luatexja/src/ltj-jfmglue.lua
+2023/10/10 | 48961 | macros/luatex/generic/luatexja/src/ltj-jfont.lua
+2023/10/10 | 54427 | macros/luatex/generic/luatexja/src/ltj-jisx0208.lua
+2023/10/10 | 18722 | macros/luatex/generic/luatexja/src/ltj-kinsoku.tex
+2023/10/10 | 6571 | macros/luatex/generic/luatexja/src/ltj-latex.sty
+2023/10/10 | 3879 | macros/luatex/generic/luatexja/src/ltj-lineskip.lua
+2023/10/10 | 5931 | macros/luatex/generic/luatexja/src/ltj-lotf_aux.lua
+2023/10/10 | 8660 | macros/luatex/generic/luatexja/src/ltjltxdoc.dtx
+2023/10/10 | 126 | macros/luatex/generic/luatexja/src/ltjltxdoc.ins
+2023/10/10 | 7546 | macros/luatex/generic/luatexja/src/ltj-math.lua
+2023/10/10 | 8695 | macros/luatex/generic/luatexja/src/ltj-otf.lua
+2023/10/10 | 4480 | macros/luatex/generic/luatexja/src/ltj-plain.sty
+2023/10/10 | 6952 | macros/luatex/generic/luatexja/src/ltj-pretreat.lua
+2023/10/10 | 15429 | macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua
+2023/10/10 | 32227 | macros/luatex/generic/luatexja/src/ltj-ruby.lua
+2023/10/10 | 189539 | macros/luatex/generic/luatexja/src/ltjsclasses.dtx
+2023/10/10 | 385 | macros/luatex/generic/luatexja/src/ltjsclasses.ins
+2023/10/10 | 13316 | macros/luatex/generic/luatexja/src/ltj-setwidth.lua
+2023/10/10 | 4521 | macros/luatex/generic/luatexja/src/ltj-stack.lua
+2023/10/10 | 7691 | macros/luatex/generic/luatexja/src/ltj-unicode-ccfix.lua
+2023/10/10 | 3451 | macros/luatex/generic/luatexja/src/luatexja-compat.sty
+2023/10/10 | 29888 | macros/luatex/generic/luatexja/src/luatexja-core.sty
+2023/10/10 | 22793 | macros/luatex/generic/luatexja/src/luatexja.lua
+2023/10/10 | 1973 | macros/luatex/generic/luatexja/src/luatexja.sty
+2023/10/10 | 13279 | macros/luatex/generic/luatexja/src/patches/lltjcore.sty
+2023/10/10 | 6529 | macros/luatex/generic/luatexja/src/patches/lltjdefs.sty
+2023/10/10 | 50152 | macros/luatex/generic/luatexja/src/patches/lltjfont.sty
+2023/10/10 | 617 | macros/luatex/generic/luatexja/src/patches/lltjp-array.sty
+2023/10/10 | 4308 | macros/luatex/generic/luatexja/src/patches/lltjp-atbegshi.sty
+2023/10/10 | 825 | macros/luatex/generic/luatexja/src/patches/lltjp-collcell.sty
+2023/10/10 | 425 | macros/luatex/generic/luatexja/src/patches/lltjp-everyshi.sty
+2023/10/10 | 5850 | macros/luatex/generic/luatexja/src/patches/lltjp-fontspec.sty
+2023/10/10 | 1611 | macros/luatex/generic/luatexja/src/patches/lltjp-footmisc.sty
+2023/10/10 | 19234 | macros/luatex/generic/luatexja/src/patches/lltjp-geometry.sty
+2023/10/10 | 14914 | macros/luatex/generic/luatexja/src/patches/lltjp-listings.sty
+2023/10/10 | 2057 | macros/luatex/generic/luatexja/src/patches/lltjp-microtype.sty
+2023/10/10 | 189 | macros/luatex/generic/luatexja/src/patches/lltjp-preview.sty
+2023/10/10 | 4126 | macros/luatex/generic/luatexja/src/patches/lltjp-siunitx.sty
+2023/10/10 | 885 | macros/luatex/generic/luatexja/src/patches/lltjp-stfloats.sty
+2023/10/10 | 6135 | macros/luatex/generic/luatexja/src/patches/lltjp-tascmac.sty
+2023/10/10 | 2374 | macros/luatex/generic/luatexja/src/patches/lltjp-unicode-math.sty
+2023/10/10 | 3371 | macros/luatex/generic/luatexja/src/patches/lltjp-xunicode.sty
+2023/10/10 | 580 | macros/luatex/generic/luatexja/tool/blocks2defcharrange.rb
+2023/10/10 | 1224 | macros/luatex/generic/luatexja/tool/chars2defcharrange.rb
+2023/10/10 | 1130 | macros/luatex/generic/luatexja/tool/function_uax50.lua
+2023/10/10 | 1397 | macros/luatex/generic/luatexja/tool/ivslist.tex
+2023/10/10 | 7790 | macros/luatex/generic/luatexja/tool/jfm-convert.lua
+2023/10/10 | 551 | macros/luatex/generic/luatexja/tool/jfm-readable.rb
+2023/10/10 | 6060 | macros/luatex/generic/luatexja/tool/kyoikukanjiChars.tex
+2023/10/10 | 4262 | macros/luatex/generic/luatexja/tool/kyoikukanji.txt
+2023/10/10 | 3313 | macros/luatex/generic/luatexja/tool/ltj-unicode-ccfix_make2.pl
+2023/10/10 | 355 | macros/luatex/generic/luatexja/tool/otf-AdobeMingStd-Light.txt
+2023/10/10 | 326 | macros/luatex/generic/luatexja/tool/otf-AdobeMyungjoStd-Medium.txt
+2023/10/10 | 317 | macros/luatex/generic/luatexja/tool/otf-AdobeSongStd-Light.txt
+2023/10/10 | 896 | macros/luatex/generic/luatexja/tool/otf-KozMinPr6N-Regular.txt
+2023/10/10 | 945 | macros/luatex/generic/luatexja/tool/table_ivd_aj1.lua
+2023/10/10 | 3100 | macros/luatex/generic/luatexja/tool/table_jisx0208.tex
+2023/10/10 | 1740 | macros/luatex/generic/luatexja/tool/test_exist_nodelib.tex
+2023/10/10 | 11335 | macros/luatex/generic/luatexja/tool/unicodeBlocks.tex
+2023/10/10 | 3830000 | macros/luatex/generic/luatexja.zip
2023/09/11 | 9502 | macros/luatex/generic/luatexko/ChangeLog
2023/09/11 | 339895 | macros/luatex/generic/luatexko/luatexko-doc.pdf
2023/09/11 | 35829 | macros/luatex/generic/luatexko/luatexko-doc.tex
@@ -286479,7 +286479,7 @@
2021/05/03 | 629 | support/TeX4ht/doc/README
2020/08/24 | 358454 | support/TeX4ht/doc/TeX4ht-doc.tex
2021/05/11 | 262 | support/TeX4ht/README
-2023/10/05 | 231872 | support/TeX4ht/source/ChangeLog
+2023/10/09 | 232336 | support/TeX4ht/source/ChangeLog
2021/05/03 | 1375 | support/TeX4ht/source/checklog.lua
2021/05/03 | 1189 | support/TeX4ht/source/common-code.tex
2021/05/03 | 2727 | support/TeX4ht/source/common-info.tex
@@ -286491,7 +286491,7 @@
2021/05/03 | 1121 | support/TeX4ht/source/README
2021/05/03 | 1744 | support/TeX4ht/source/t1fontmake.lua
2021/05/03 | 297 | support/TeX4ht/source/t1fontsample.tex
-2023/10/02 | 1165054 | support/TeX4ht/source/tex4ht-4ht.tex
+2023/10/09 | 1165087 | support/TeX4ht/source/tex4ht-4ht.tex
2021/05/03 | 7127 | support/TeX4ht/source/tex4ht-auto-script.tex
2021/05/16 | 1539 | support/TeX4ht/source/tex4ht-bibtex2.tex
2022/06/05 | 21307 | support/TeX4ht/source/tex4ht-cond4ht.tex
@@ -286520,8 +286520,8 @@
2021/05/03 | 14218 | support/TeX4ht/source/tex4ht-htcmd.tex
2021/05/03 | 70683 | support/TeX4ht/source/tex4ht-html0.tex
2021/05/03 | 164748 | support/TeX4ht/source/tex4ht-html32.tex
-2023/09/22 | 625919 | support/TeX4ht/source/tex4ht-html4.tex
-2023/01/10 | 12023 | support/TeX4ht/source/tex4ht-html5.tex
+2023/10/09 | 621698 | support/TeX4ht/source/tex4ht-html4.tex
+2023/10/09 | 12034 | support/TeX4ht/source/tex4ht-html5.tex
2021/06/17 | 648233 | support/TeX4ht/source/tex4ht-html-speech.tex
2021/05/03 | 59483 | support/TeX4ht/source/tex4ht-html-speech-xtpipes.tex
2021/05/03 | 8028 | support/TeX4ht/source/tex4ht-info-html4.tex
@@ -286681,562 +286681,562 @@
1994/01/18 | 7272 | support/tex-it/texitrc.unx
1994/01/18 | 25068 | support/tex-it/texit.tex
2006/03/12 | 50172 | support/tex-it.zip
-2023/09/30 | 50591 | support/texlab/Cargo.lock
-2023/09/30 | 347 | support/texlab/Cargo.toml
-2023/09/30 | 31886 | support/texlab/CHANGELOG.md
-2023/09/30 | 181 | support/texlab/CONTRIBUTING.md
-2023/09/30 | 515 | support/texlab/crates/base-db/Cargo.toml
-2023/09/30 | 4038 | support/texlab/crates/base-db/src/config.rs
-2023/09/30 | 58408 | support/texlab/crates/base-db/src/data.rs
-2023/09/30 | 5374 | support/texlab/crates/base-db/src/document.rs
-2023/09/30 | 5838 | support/texlab/crates/base-db/src/graph.rs
-2023/09/30 | 560 | support/texlab/crates/base-db/src/lib.rs
-2023/09/30 | 1170 | support/texlab/crates/base-db/src/semantics/auxiliary.rs
-2023/09/30 | 2371 | support/texlab/crates/base-db/src/semantics/bib.rs
-2023/09/30 | 1112 | support/texlab/crates/base-db/src/semantics.rs
-2023/09/30 | 11078 | support/texlab/crates/base-db/src/semantics/tex.rs
-2023/09/30 | 5900 | support/texlab/crates/base-db/src/util/label.rs
-2023/09/30 | 6477 | support/texlab/crates/base-db/src/util/line_index.rs
-2023/09/30 | 5553 | support/texlab/crates/base-db/src/util/queries.rs
-2023/09/30 | 445 | support/texlab/crates/base-db/src/util/regex_filter.rs
-2023/09/30 | 244 | support/texlab/crates/base-db/src/util.rs
-2023/09/30 | 10197 | support/texlab/crates/base-db/src/workspace.rs
-2023/09/30 | 492 | support/texlab/crates/bibtex-utils/Cargo.toml
-2023/09/30 | 2074 | support/texlab/crates/bibtex-utils/src/field/author.rs
-2023/09/30 | 2665 | support/texlab/crates/bibtex-utils/src/field/date.rs
-2023/09/30 | 1626 | support/texlab/crates/bibtex-utils/src/field/number.rs
-2023/09/30 | 60 | support/texlab/crates/bibtex-utils/src/field.rs
-2023/09/30 | 8955 | support/texlab/crates/bibtex-utils/src/field/text.rs
-2023/09/30 | 15 | support/texlab/crates/bibtex-utils/src/lib.rs
-2023/09/30 | 489 | support/texlab/crates/citeproc/Cargo.toml
-2023/09/30 | 22204 | support/texlab/crates/citeproc/src/driver.rs
-2023/09/30 | 4730 | support/texlab/crates/citeproc/src/entry.rs
-2023/09/30 | 875 | support/texlab/crates/citeproc/src/lib.rs
-2023/09/30 | 1760 | support/texlab/crates/citeproc/src/output.rs
-2023/09/30 | 15622 | support/texlab/crates/citeproc/src/tests.rs
-2023/09/30 | 558 | support/texlab/crates/commands/Cargo.toml
-2023/09/30 | 3838 | support/texlab/crates/commands/src/build.rs
-2023/09/30 | 987 | support/texlab/crates/commands/src/change_env.rs
-2023/09/30 | 1820 | support/texlab/crates/commands/src/clean.rs
-2023/09/30 | 1590 | support/texlab/crates/commands/src/dep_graph.rs
-2023/09/30 | 3093 | support/texlab/crates/commands/src/find_envs.rs
-2023/09/30 | 3207 | support/texlab/crates/commands/src/fwd_search.rs
-2023/09/30 | 389 | support/texlab/crates/commands/src/lib.rs
-2023/09/30 | 1583 | support/texlab/crates/commands/src/placeholders.rs
-2023/09/30 | 1023 | support/texlab/crates/completion/benches/bench_main.rs
-2023/09/30 | 688 | support/texlab/crates/completion/Cargo.toml
-2023/09/30 | 356 | support/texlab/crates/completion-data/Cargo.toml
-2023/09/30 | 6970534 | support/texlab/crates/completion-data/data/completion.json.gz
-2023/09/30 | 3265 | support/texlab/crates/completion-data/src/lib.rs
-2023/09/30 | 5533 | support/texlab/crates/completion/src/lib.rs
-2023/09/30 | 2493 | support/texlab/crates/completion/src/providers/argument.rs
-2023/09/30 | 2276 | support/texlab/crates/completion/src/providers/citations.rs
-2023/09/30 | 1553 | support/texlab/crates/completion/src/providers/color_model.rs
-2023/09/30 | 2107 | support/texlab/crates/completion/src/providers/color.rs
-2023/09/30 | 4254 | support/texlab/crates/completion/src/providers/command.rs
-2023/09/30 | 1118 | support/texlab/crates/completion/src/providers/entry_type.rs
-2023/09/30 | 4297 | support/texlab/crates/completion/src/providers/environment.rs
-2023/09/30 | 2369 | support/texlab/crates/completion/src/providers/field.rs
-2023/09/30 | 2612 | support/texlab/crates/completion/src/providers/glossary.rs
-2023/09/30 | 2481 | support/texlab/crates/completion/src/providers/import.rs
-2023/09/30 | 4755 | support/texlab/crates/completion/src/providers/include.rs
-2023/09/30 | 3501 | support/texlab/crates/completion/src/providers/label.rs
-2023/09/30 | 699 | support/texlab/crates/completion/src/providers.rs
-2023/09/30 | 3301 | support/texlab/crates/completion/src/providers/tikz_library.rs
-2023/09/30 | 44178 | support/texlab/crates/completion/src/tests.rs
-2023/09/30 | 1382 | support/texlab/crates/completion/src/util/builder.rs
-2023/09/30 | 1025 | support/texlab/crates/completion/src/util/matchers.rs
-2023/09/30 | 2320 | support/texlab/crates/completion/src/util/patterns.rs
-2023/09/30 | 967 | support/texlab/crates/completion/src/util.rs
-2023/09/30 | 378 | support/texlab/crates/definition/Cargo.toml
-2023/09/30 | 844 | support/texlab/crates/definition/src/citation.rs
-2023/09/30 | 1348 | support/texlab/crates/definition/src/command.rs
-2023/09/30 | 1056 | support/texlab/crates/definition/src/include.rs
-2023/09/30 | 1146 | support/texlab/crates/definition/src/label.rs
-2023/09/30 | 1250 | support/texlab/crates/definition/src/lib.rs
-2023/09/30 | 1048 | support/texlab/crates/definition/src/string_ref.rs
-2023/09/30 | 2998 | support/texlab/crates/definition/src/tests.rs
-2023/09/30 | 394 | support/texlab/crates/diagnostics/Cargo.toml
-2023/09/30 | 3263 | support/texlab/crates/diagnostics/src/build_log.rs
-2023/09/30 | 3027 | support/texlab/crates/diagnostics/src/citations.rs
-2023/09/30 | 3218 | support/texlab/crates/diagnostics/src/grammar/bib.rs
-2023/09/30 | 79 | support/texlab/crates/diagnostics/src/grammar.rs
-2023/09/30 | 4144 | support/texlab/crates/diagnostics/src/grammar/tex.rs
-2023/09/30 | 3021 | support/texlab/crates/diagnostics/src/labels.rs
-2023/09/30 | 2322 | support/texlab/crates/diagnostics/src/lib.rs
-2023/09/30 | 3288 | support/texlab/crates/diagnostics/src/tests.rs
-2023/09/30 | 770 | support/texlab/crates/diagnostics/src/types.rs
-2023/09/30 | 750 | support/texlab/crates/diagnostics/src/util.rs
-2023/09/30 | 227 | support/texlab/crates/distro/Cargo.toml
-2023/09/30 | 1917 | support/texlab/crates/distro/src/file_name_db.rs
-2023/09/30 | 710 | support/texlab/crates/distro/src/kpsewhich.rs
-2023/09/30 | 1124 | support/texlab/crates/distro/src/language.rs
-2023/09/30 | 2543 | support/texlab/crates/distro/src/lib.rs
-2023/09/30 | 2467 | support/texlab/crates/distro/src/miktex.rs
-2023/09/30 | 820 | support/texlab/crates/distro/src/texlive.rs
-2023/09/30 | 355 | support/texlab/crates/folding/Cargo.toml
-2023/09/30 | 3225 | support/texlab/crates/folding/src/lib.rs
-2023/09/30 | 1749 | support/texlab/crates/folding/src/tests.rs
-2023/09/30 | 483 | support/texlab/crates/hover/Cargo.toml
-2023/09/30 | 1225 | support/texlab/crates/hover/src/citation.rs
-2023/09/30 | 535 | support/texlab/crates/hover/src/entry_type.rs
-2023/09/30 | 612 | support/texlab/crates/hover/src/field_type.rs
-2023/09/30 | 818 | support/texlab/crates/hover/src/label.rs
-2023/09/30 | 1432 | support/texlab/crates/hover/src/lib.rs
-2023/09/30 | 720 | support/texlab/crates/hover/src/package.rs
-2023/09/30 | 1059 | support/texlab/crates/hover/src/string_ref.rs
-2023/09/30 | 7215 | support/texlab/crates/hover/src/tests.rs
-2023/09/30 | 407 | support/texlab/crates/parser/Cargo.toml
-2023/09/30 | 11420 | support/texlab/crates/parser/src/bibtex.rs
-2023/09/30 | 5684 | support/texlab/crates/parser/src/build_log.rs
-2023/09/30 | 3009 | support/texlab/crates/parser/src/config.rs
-2023/09/30 | 5386 | support/texlab/crates/parser/src/latex/lexer/commands.rs
-2023/09/30 | 2040 | support/texlab/crates/parser/src/latex/lexer.rs
-2023/09/30 | 2834 | support/texlab/crates/parser/src/latex/lexer/types.rs
-2023/09/30 | 35324 | support/texlab/crates/parser/src/latex.rs
-2023/09/30 | 148 | support/texlab/crates/parser/src/lib.rs
-2023/09/30 | 234 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@comment.txt.snap
-2023/09/30 | 761 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@issue_809.txt.snap
-2023/09/30 | 373 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@preamble.txt.snap
-2023/09/30 | 3667 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aho_2006.txt.snap
-2023/09/30 | 7531 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aksin_2006.txt.snap
-2023/09/30 | 7322 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__almendro_1998.txt.snap
-2023/09/30 | 10380 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__averroes_1998.txt.snap
-2023/09/30 | 5864 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__betram_1996.txt.snap
-2023/09/30 | 6644 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__blom_2021.txt.snap
-2023/09/30 | 7157 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__combi_2004.txt.snap
-2023/09/30 | 6836 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__erwin_2007.txt.snap
-2023/09/30 | 7528 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__jain_1999.txt.snap
-2023/09/30 | 8868 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__kastenholz_2006.txt.snap
-2023/09/30 | 9479 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__knuth_1984.txt.snap
-2023/09/30 | 5060 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__matuz_1990.txt.snap
-2023/09/30 | 11015 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__nietzsche_1998.txt.snap
-2023/09/30 | 6472 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__rivest_1978.txt.snap
-2023/09/30 | 716 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@001.txt.snap
-2023/09/30 | 448 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@002.txt.snap
-2023/09/30 | 673 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@003.txt.snap
-2023/09/30 | 975 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@004.txt.snap
-2023/09/30 | 953 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@005.txt.snap
-2023/09/30 | 1672 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@006.txt.snap
-2023/09/30 | 464 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@007.txt.snap
-2023/09/30 | 746 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@block_comments.txt.snap
-2023/09/30 | 626 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default_error.txt.snap
-2023/09/30 | 647 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default.txt.snap
-2023/09/30 | 772 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_figure.txt.snap
-2023/09/30 | 499 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal_error.txt.snap
-2023/09/30 | 520 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal.txt.snap
-2023/09/30 | 295 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_empty.txt.snap
-2023/09/30 | 321 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_missing_brace.txt.snap
-2023/09/30 | 453 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_multiple_keys.txt.snap
-2023/09/30 | 608 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote_postnote.txt.snap
-2023/09/30 | 472 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote.txt.snap
-2023/09/30 | 404 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_redundant_comma.txt.snap
-2023/09/30 | 344 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_simple.txt.snap
-2023/09/30 | 342 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_star.txt.snap
-2023/09/30 | 734 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_definition_simple.txt.snap
-2023/09/30 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_reference_simple.txt.snap
-2023/09/30 | 849 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error1.txt.snap
-2023/09/30 | 588 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error2.txt.snap
-2023/09/30 | 457 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error3.txt.snap
-2023/09/30 | 248 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error4.txt.snap
-2023/09/30 | 980 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_simple.txt.snap
-2023/09/30 | 504 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_argc.txt.snap
-2023/09/30 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl_error.txt.snap
-2023/09/30 | 377 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl.txt.snap
-2023/09/30 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_optional.txt.snap
-2023/09/30 | 645 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_simple.txt.snap
-2023/09/30 | 1177 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_with_begin.txt.snap
-2023/09/30 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_no_impl.txt.snap
-2023/09/30 | 502 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_simple.txt.snap
-2023/09/30 | 1074 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_asymptote.txt.snap
-2023/09/30 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition_optional_arg.txt.snap
-2023/09/30 | 1103 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition.txt.snap
-2023/09/30 | 1191 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested_missing_braces.txt.snap
-2023/09/30 | 1121 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested.txt.snap
-2023/09/30 | 742 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_simple.txt.snap
-2023/09/30 | 814 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation_missing_begin.txt.snap
-2023/09/30 | 379 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation.txt.snap
-2023/09/30 | 460 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_args.txt.snap
-2023/09/30 | 216 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_empty.txt.snap
-2023/09/30 | 215 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_escape.txt.snap
-2023/09/30 | 1464 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_declaration.txt.snap
-2023/09/30 | 1359 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_options.txt.snap
-2023/09/30 | 758 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_simple.txt.snap
-2023/09/30 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_package.txt.snap
-2023/09/30 | 815 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_options.txt.snap
-2023/09/30 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_simple.txt.snap
-2023/09/30 | 965 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_definition_simple.txt.snap
-2023/09/30 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_options.txt.snap
-2023/09/30 | 365 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_simple.txt.snap
-2023/09/30 | 624 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_command.txt.snap
-2023/09/30 | 552 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_options.txt.snap
-2023/09/30 | 447 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path.txt.snap
-2023/09/30 | 312 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_missing_end.txt.snap
-2023/09/30 | 332 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_simple.txt.snap
-2023/09/30 | 821 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__equation_missing_end.txt.snap
-2023/09/30 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__escaped_brackets.txt.snap
-2023/09/30 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_braces.txt.snap
-2023/09/30 | 244 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets.txt.snap
-2023/09/30 | 330 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets_with_group.txt.snap
-2023/09/30 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@hello_world.txt.snap
-2023/09/30 | 861 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_options.txt.snap
-2023/09/30 | 386 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_simple.txt.snap
-2023/09/30 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__bibtex_include_simple.txt.snap
-2023/09/30 | 323 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_empty.txt.snap
-2023/09/30 | 1066 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_options.txt.snap
-2023/09/30 | 375 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_simple.txt.snap
-2023/09/30 | 900 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_command.txt.snap
-2023/09/30 | 762 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_complicated_options.txt.snap
-2023/09/30 | 717 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_options.txt.snap
-2023/09/30 | 387 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_simple.txt.snap
-2023/09/30 | 316 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_incomplete.txt.snap
-2023/09/30 | 470 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_simple.txt.snap
-2023/09/30 | 703 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_options.txt.snap
-2023/09/30 | 373 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_simple.txt.snap
-2023/09/30 | 429 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_equality_sign.txt.snap
-2023/09/30 | 363 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_simple.txt.snap
-2023/09/30 | 477 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_input_path_brackets.txt.snap
-2023/09/30 | 324 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_empty.txt.snap
-2023/09/30 | 483 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_multiple.txt.snap
-2023/09/30 | 1067 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_options.txt.snap
-2023/09/30 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_simple.txt.snap
-2023/09/30 | 382 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__pgf_library_import_simple.txt.snap
-2023/09/30 | 702 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_options.txt.snap
-2023/09/30 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_simple.txt.snap
-2023/09/30 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__tikz_library_import_simple.txt.snap
-2023/09/30 | 385 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__verbatim_include_simple.txt.snap
-2023/09/30 | 649 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline_double_dollar.txt.snap
-2023/09/30 | 631 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline.txt.snap
-2023/09/30 | 728 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_568.txt.snap
-2023/09/30 | 4300 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_745.txt.snap
-2023/09/30 | 347 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_789.txt.snap
-2023/09/30 | 526 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_828.txt.snap
-2023/09/30 | 1791 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_853.txt.snap
-2023/09/30 | 904 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_857.txt.snap
-2023/09/30 | 745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_874.txt.snap
-2023/09/30 | 1846 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_919.txt.snap
-2023/09/30 | 392 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_931.txt.snap
-2023/09/30 | 452 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_line_break.txt.snap
-2023/09/30 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_simple.txt.snap
-2023/09/30 | 563 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_number.txt.snap
-2023/09/30 | 361 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_equation.txt.snap
-2023/09/30 | 825 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_incomplete.txt.snap
-2023/09/30 | 456 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_multiple.txt.snap
-2023/09/30 | 479 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_error.txt.snap
-2023/09/30 | 380 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_incomplete.txt.snap
-2023/09/30 | 507 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_simple.txt.snap
-2023/09/30 | 349 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_simple.txt.snap
-2023/09/30 | 187 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter_error.txt.snap
-2023/09/30 | 182 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter.txt.snap
-2023/09/30 | 1883 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__paragraphs.txt.snap
-2023/09/30 | 1260 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_enum_item.txt.snap
-2023/09/30 | 565 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_invalid_nesting.txt.snap
-2023/09/30 | 1745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_nested.txt.snap
-2023/09/30 | 706 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_siblings.txt.snap
-2023/09/30 | 778 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_full.txt.snap
-2023/09/30 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_counter.txt.snap
-2023/09/30 | 676 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description_and_counter.txt.snap
-2023/09/30 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description.txt.snap
-2023/09/30 | 394 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_only_name.txt.snap
-2023/09/30 | 998 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_thmtools.txt.snap
-2023/09/30 | 82 | support/texlab/crates/parser/src/test_data/bibtex/comment.txt
-2023/09/30 | 50 | support/texlab/crates/parser/src/test_data/bibtex/issue_809.txt
-2023/09/30 | 25 | support/texlab/crates/parser/src/test_data/bibtex/preamble.txt
-2023/09/30 | 314 | support/texlab/crates/parser/src/test_data/bibtex/samples/aho_2006.txt
-2023/09/30 | 679 | support/texlab/crates/parser/src/test_data/bibtex/samples/aksin_2006.txt
-2023/09/30 | 706 | support/texlab/crates/parser/src/test_data/bibtex/samples/almendro_1998.txt
-2023/09/30 | 1008 | support/texlab/crates/parser/src/test_data/bibtex/samples/averroes_1998.txt
-2023/09/30 | 556 | support/texlab/crates/parser/src/test_data/bibtex/samples/betram_1996.txt
-2023/09/30 | 860 | support/texlab/crates/parser/src/test_data/bibtex/samples/blom_2021.txt
-2023/09/30 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/combi_2004.txt
-2023/09/30 | 615 | support/texlab/crates/parser/src/test_data/bibtex/samples/erwin_2007.txt
-2023/09/30 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/jain_1999.txt
-2023/09/30 | 898 | support/texlab/crates/parser/src/test_data/bibtex/samples/kastenholz_2006.txt
-2023/09/30 | 993 | support/texlab/crates/parser/src/test_data/bibtex/samples/knuth_1984.txt
-2023/09/30 | 517 | support/texlab/crates/parser/src/test_data/bibtex/samples/matuz_1990.txt
-2023/09/30 | 1112 | support/texlab/crates/parser/src/test_data/bibtex/samples/nietzsche_1998.txt
-2023/09/30 | 557 | support/texlab/crates/parser/src/test_data/bibtex/samples/rivest_1978.txt
-2023/09/30 | 3194 | support/texlab/crates/parser/src/test_data/build_log/001.txt
-2023/09/30 | 2455 | support/texlab/crates/parser/src/test_data/build_log/002.txt
-2023/09/30 | 2515 | support/texlab/crates/parser/src/test_data/build_log/003.txt
-2023/09/30 | 3057 | support/texlab/crates/parser/src/test_data/build_log/004.txt
-2023/09/30 | 13353 | support/texlab/crates/parser/src/test_data/build_log/005.txt
-2023/09/30 | 4130 | support/texlab/crates/parser/src/test_data/build_log/006.txt
-2023/09/30 | 7762 | support/texlab/crates/parser/src/test_data/build_log/007.txt
-2023/09/30 | 48 | support/texlab/crates/parser/src/test_data/latex/block_comments.txt
-2023/09/30 | 26 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default_error.txt
-2023/09/30 | 27 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default.txt
-2023/09/30 | 39 | support/texlab/crates/parser/src/test_data/latex/caption/caption_figure.txt
-2023/09/30 | 21 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal_error.txt
-2023/09/30 | 22 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal.txt
-2023/09/30 | 7 | support/texlab/crates/parser/src/test_data/latex/citation/citation_empty.txt
-2023/09/30 | 9 | support/texlab/crates/parser/src/test_data/latex/citation/citation_missing_brace.txt
-2023/09/30 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_multiple_keys.txt
-2023/09/30 | 20 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote_postnote.txt
-2023/09/30 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote.txt
-2023/09/30 | 12 | support/texlab/crates/parser/src/test_data/latex/citation/citation_redundant_comma.txt
-2023/09/30 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_simple.txt
-2023/09/30 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_star.txt
-2023/09/30 | 33 | support/texlab/crates/parser/src/test_data/latex/color/color_definition_simple.txt
-2023/09/30 | 13 | support/texlab/crates/parser/src/test_data/latex/color/color_reference_simple.txt
-2023/09/30 | 39 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error1.txt
-2023/09/30 | 30 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error2.txt
-2023/09/30 | 25 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error3.txt
-2023/09/30 | 15 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error4.txt
-2023/09/30 | 44 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_simple.txt
-2023/09/30 | 22 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_argc.txt
-2023/09/30 | 16 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl_error.txt
-2023/09/30 | 17 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl.txt
-2023/09/30 | 29 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_optional.txt
-2023/09/30 | 23 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_simple.txt
-2023/09/30 | 80 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_with_begin.txt
-2023/09/30 | 26 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_no_impl.txt
-2023/09/30 | 31 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_simple.txt
-2023/09/30 | 50 | support/texlab/crates/parser/src/test_data/latex/environment/environment_asymptote.txt
-2023/09/30 | 44 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition_optional_arg.txt
-2023/09/30 | 47 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition.txt
-2023/09/30 | 52 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested_missing_braces.txt
-2023/09/30 | 43 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested.txt
-2023/09/30 | 33 | support/texlab/crates/parser/src/test_data/latex/environment/environment_simple.txt
-2023/09/30 | 28 | support/texlab/crates/parser/src/test_data/latex/equation_missing_begin.txt
-2023/09/30 | 13 | support/texlab/crates/parser/src/test_data/latex/equation.txt
-2023/09/30 | 14 | support/texlab/crates/parser/src/test_data/latex/generic_command_args.txt
-2023/09/30 | 4 | support/texlab/crates/parser/src/test_data/latex/generic_command_empty.txt
-2023/09/30 | 2 | support/texlab/crates/parser/src/test_data/latex/generic_command_escape.txt
-2023/09/30 | 64 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_declaration.txt
-2023/09/30 | 76 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_options.txt
-2023/09/30 | 44 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_simple.txt
-2023/09/30 | 35 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_package.txt
-2023/09/30 | 32 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_options.txt
-2023/09/30 | 19 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_simple.txt
-2023/09/30 | 39 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_definition_simple.txt
-2023/09/30 | 25 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_options.txt
-2023/09/30 | 9 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_simple.txt
-2023/09/30 | 32 | support/texlab/crates/parser/src/test_data/latex/graphics_path_command.txt
-2023/09/30 | 33 | support/texlab/crates/parser/src/test_data/latex/graphics_path_options.txt
-2023/09/30 | 28 | support/texlab/crates/parser/src/test_data/latex/graphics_path.txt
-2023/09/30 | 12 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_missing_end.txt
-2023/09/30 | 13 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_simple.txt
-2023/09/30 | 28 | support/texlab/crates/parser/src/test_data/latex/group/equation_missing_end.txt
-2023/09/30 | 6 | support/texlab/crates/parser/src/test_data/latex/group/escaped_brackets.txt
-2023/09/30 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_braces.txt
-2023/09/30 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets.txt
-2023/09/30 | 4 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets_with_group.txt
-2023/09/30 | 12 | support/texlab/crates/parser/src/test_data/latex/hello_world.txt
-2023/09/30 | 42 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_options.txt
-2023/09/30 | 28 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_simple.txt
-2023/09/30 | 22 | support/texlab/crates/parser/src/test_data/latex/include/bibtex_include_simple.txt
-2023/09/30 | 16 | support/texlab/crates/parser/src/test_data/latex/include/class_include_empty.txt
-2023/09/30 | 44 | support/texlab/crates/parser/src/test_data/latex/include/class_include_options.txt
-2023/09/30 | 23 | support/texlab/crates/parser/src/test_data/latex/include/class_include_simple.txt
-2023/09/30 | 52 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_command.txt
-2023/09/30 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_complicated_options.txt
-2023/09/30 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_options.txt
-2023/09/30 | 29 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_simple.txt
-2023/09/30 | 11 | support/texlab/crates/parser/src/test_data/latex/include/import_incomplete.txt
-2023/09/30 | 17 | support/texlab/crates/parser/src/test_data/latex/include/import_simple.txt
-2023/09/30 | 30 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_options.txt
-2023/09/30 | 20 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_simple.txt
-2023/09/30 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_equality_sign.txt
-2023/09/30 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_simple.txt
-2023/09/30 | 20 | support/texlab/crates/parser/src/test_data/latex/include/latex_input_path_brackets.txt
-2023/09/30 | 13 | support/texlab/crates/parser/src/test_data/latex/include/package_include_empty.txt
-2023/09/30 | 28 | support/texlab/crates/parser/src/test_data/latex/include/package_include_multiple.txt
-2023/09/30 | 41 | support/texlab/crates/parser/src/test_data/latex/include/package_include_options.txt
-2023/09/30 | 20 | support/texlab/crates/parser/src/test_data/latex/include/package_include_simple.txt
-2023/09/30 | 19 | support/texlab/crates/parser/src/test_data/latex/include/pgf_library_import_simple.txt
-2023/09/30 | 34 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_options.txt
-2023/09/30 | 24 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_simple.txt
-2023/09/30 | 20 | support/texlab/crates/parser/src/test_data/latex/include/tikz_library_import_simple.txt
-2023/09/30 | 27 | support/texlab/crates/parser/src/test_data/latex/include/verbatim_include_simple.txt
-2023/09/30 | 21 | support/texlab/crates/parser/src/test_data/latex/inline_double_dollar.txt
-2023/09/30 | 19 | support/texlab/crates/parser/src/test_data/latex/inline.txt
-2023/09/30 | 51 | support/texlab/crates/parser/src/test_data/latex/issue_568.txt
-2023/09/30 | 271 | support/texlab/crates/parser/src/test_data/latex/issue_745.txt
-2023/09/30 | 19 | support/texlab/crates/parser/src/test_data/latex/issue_789.txt
-2023/09/30 | 51 | support/texlab/crates/parser/src/test_data/latex/issue_828.txt
-2023/09/30 | 135 | support/texlab/crates/parser/src/test_data/latex/issue_853.txt
-2023/09/30 | 55 | support/texlab/crates/parser/src/test_data/latex/issue_857.txt
-2023/09/30 | 37 | support/texlab/crates/parser/src/test_data/latex/issue_874.txt
-2023/09/30 | 217 | support/texlab/crates/parser/src/test_data/latex/issue_919.txt
-2023/09/30 | 31 | support/texlab/crates/parser/src/test_data/latex/issue_931.txt
-2023/09/30 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_line_break.txt
-2023/09/30 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_simple.txt
-2023/09/30 | 21 | support/texlab/crates/parser/src/test_data/latex/label/label_number.txt
-2023/09/30 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_equation.txt
-2023/09/30 | 47 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_incomplete.txt
-2023/09/30 | 14 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_multiple.txt
-2023/09/30 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_error.txt
-2023/09/30 | 15 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_incomplete.txt
-2023/09/30 | 20 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_simple.txt
-2023/09/30 | 9 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_simple.txt
-2023/09/30 | 1 | support/texlab/crates/parser/src/test_data/latex/parameter_error.txt
-2023/09/30 | 2 | support/texlab/crates/parser/src/test_data/latex/parameter.txt
-2023/09/30 | 134 | support/texlab/crates/parser/src/test_data/latex/structure/paragraphs.txt
-2023/09/30 | 60 | support/texlab/crates/parser/src/test_data/latex/structure/structure_enum_item.txt
-2023/09/30 | 27 | support/texlab/crates/parser/src/test_data/latex/structure/structure_invalid_nesting.txt
-2023/09/30 | 90 | support/texlab/crates/parser/src/test_data/latex/structure/structure_nested.txt
-2023/09/30 | 35 | support/texlab/crates/parser/src/test_data/latex/structure/structure_siblings.txt
-2023/09/30 | 31 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_full.txt
-2023/09/30 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_counter.txt
-2023/09/30 | 26 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description_and_counter.txt
-2023/09/30 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description.txt
-2023/09/30 | 16 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_only_name.txt
-2023/09/30 | 41 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_thmtools.txt
-2023/09/30 | 336 | support/texlab/crates/references/Cargo.toml
-2023/09/30 | 1409 | support/texlab/crates/references/src/entry.rs
-2023/09/30 | 901 | support/texlab/crates/references/src/label.rs
-2023/09/30 | 1070 | support/texlab/crates/references/src/lib.rs
-2023/09/30 | 1266 | support/texlab/crates/references/src/string_def.rs
-2023/09/30 | 3491 | support/texlab/crates/references/src/tests.rs
-2023/09/30 | 353 | support/texlab/crates/rename/Cargo.toml
-2023/09/30 | 1068 | support/texlab/crates/rename/src/command.rs
-2023/09/30 | 1506 | support/texlab/crates/rename/src/entry.rs
-2023/09/30 | 844 | support/texlab/crates/rename/src/label.rs
-2023/09/30 | 1064 | support/texlab/crates/rename/src/lib.rs
-2023/09/30 | 1462 | support/texlab/crates/rename/src/tests.rs
-2023/09/30 | 459 | support/texlab/crates/symbols/Cargo.toml
-2023/09/30 | 1974 | support/texlab/crates/symbols/src/document/bib.rs
-2023/09/30 | 1509 | support/texlab/crates/symbols/src/document.rs
-2023/09/30 | 14338 | support/texlab/crates/symbols/src/document/tests.rs
-2023/09/30 | 9070 | support/texlab/crates/symbols/src/document/tex.rs
-2023/09/30 | 175 | support/texlab/crates/symbols/src/lib.rs
-2023/09/30 | 2610 | support/texlab/crates/symbols/src/types.rs
-2023/09/30 | 1321 | support/texlab/crates/symbols/src/workspace.rs
-2023/09/30 | 5645 | support/texlab/crates/symbols/src/workspace/sort.rs
-2023/09/30 | 9169 | support/texlab/crates/symbols/src/workspace/tests.rs
-2023/09/30 | 227 | support/texlab/crates/syntax/Cargo.toml
-2023/09/30 | 6963 | support/texlab/crates/syntax/src/bibtex/cst.rs
-2023/09/30 | 640 | support/texlab/crates/syntax/src/bibtex/kind.rs
-2023/09/30 | 694 | support/texlab/crates/syntax/src/bibtex.rs
-2023/09/30 | 18098 | support/texlab/crates/syntax/src/latex/cst.rs
-2023/09/30 | 1708 | support/texlab/crates/syntax/src/latex/kind.rs
-2023/09/30 | 689 | support/texlab/crates/syntax/src/latex.rs
-2023/09/30 | 485 | support/texlab/crates/syntax/src/lib.rs
-2023/09/30 | 291 | support/texlab/crates/test-utils/Cargo.toml
-2023/09/30 | 4432 | support/texlab/crates/test-utils/src/fixture.rs
-2023/09/30 | 17 | support/texlab/crates/test-utils/src/lib.rs
-2023/09/30 | 1595 | support/texlab/crates/texlab/benches/bench_main.rs
-2023/09/30 | 1926 | support/texlab/crates/texlab/Cargo.toml
-2023/09/30 | 3223 | support/texlab/crates/texlab/src/client.rs
-2023/09/30 | 14808 | support/texlab/crates/texlab/src/features/completion.rs
-2023/09/30 | 1304 | support/texlab/crates/texlab/src/features/definition.rs
-2023/09/30 | 1328 | support/texlab/crates/texlab/src/features/folding.rs
-2023/09/30 | 7202 | support/texlab/crates/texlab/src/features/formatting/bibtex_internal.rs
-2023/09/30 | 2068 | support/texlab/crates/texlab/src/features/formatting/latexindent.rs
-2023/09/30 | 1083 | support/texlab/crates/texlab/src/features/formatting.rs
-2023/09/30 | 1119 | support/texlab/crates/texlab/src/features/highlight/label.rs
-2023/09/30 | 536 | support/texlab/crates/texlab/src/features/highlight.rs
-2023/09/30 | 1660 | support/texlab/crates/texlab/src/features/hover.rs
-2023/09/30 | 1330 | support/texlab/crates/texlab/src/features/inlay_hint/label.rs
-2023/09/30 | 1298 | support/texlab/crates/texlab/src/features/inlay_hint.rs
-2023/09/30 | 555 | support/texlab/crates/texlab/src/features/link/include.rs
-2023/09/30 | 932 | support/texlab/crates/texlab/src/features/link.rs
-2023/09/30 | 988 | support/texlab/crates/texlab/src/features/reference.rs
-2023/09/30 | 1534 | support/texlab/crates/texlab/src/features/rename.rs
-2023/09/30 | 197 | support/texlab/crates/texlab/src/features.rs
-2023/09/30 | 4126 | support/texlab/crates/texlab/src/features/symbols.rs
-2023/09/30 | 108 | support/texlab/crates/texlab/src/lib.rs
-2023/09/30 | 1732 | support/texlab/crates/texlab/src/main.rs
-2023/09/30 | 2411 | support/texlab/crates/texlab/src/server/dispatch.rs
-2023/09/30 | 2609 | support/texlab/crates/texlab/src/server/extensions.rs
-2023/09/30 | 8392 | support/texlab/crates/texlab/src/server/options.rs
-2023/09/30 | 1412 | support/texlab/crates/texlab/src/server/progress.rs
-2023/09/30 | 42538 | support/texlab/crates/texlab/src/server.rs
-2023/09/30 | 6018 | support/texlab/crates/texlab/src/util/capabilities.rs
-2023/09/30 | 4047 | support/texlab/crates/texlab/src/util/chktex.rs
-2023/09/30 | 8249 | support/texlab/crates/texlab/src/util/diagnostics.rs
-2023/09/30 | 1611 | support/texlab/crates/texlab/src/util/line_index_ext.rs
-2023/09/30 | 4004 | support/texlab/crates/texlab/src/util/lsp_enums.rs
-2023/09/30 | 1496 | support/texlab/crates/texlab/src/util.rs
-2023/09/30 | 8469 | support/texlab/crates/texlab/tests/lsp/fixture.rs
-2023/09/30 | 47 | support/texlab/crates/texlab/tests/lsp/main.rs
-2023/09/30 | 1322 | support/texlab/crates/texlab/tests/lsp/text_document/document_highlight.rs
-2023/09/30 | 1157 | support/texlab/crates/texlab/tests/lsp/text_document/document_link.rs
-2023/09/30 | 1505 | support/texlab/crates/texlab/tests/lsp/text_document/document_symbol.rs
-2023/09/30 | 3009 | support/texlab/crates/texlab/tests/lsp/text_document/formatting.rs
-2023/09/30 | 1737 | support/texlab/crates/texlab/tests/lsp/text_document/inlay_hint.rs
-2023/09/30 | 96 | support/texlab/crates/texlab/tests/lsp/text_document.rs
-2023/09/30 | 226 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_package_ref.snap
-2023/09/30 | 265 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_empty.snap
-2023/09/30 | 278 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_open_brace.snap
-2023/09/30 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_simple.snap
-2023/09/30 | 399 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_empty.snap
-2023/09/30 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_open_brace.snap
-2023/09/30 | 211 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_word.snap
-2023/09/30 | 550 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__begin_environment_without_snippet_support.snap
-2023/09/30 | 323 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_acronym.snap
-2023/09/30 | 301 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace_multiple.snap
-2023/09/30 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace.snap
-2023/09/30 | 561 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation.snap
-2023/09/30 | 407 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_open_brace.snap
-2023/09/30 | 403 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_open_brace.snap
-2023/09/30 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_simple.snap
-2023/09/30 | 408 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_simple.snap
-2023/09/30 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_open_brace.snap
-2023/09/30 | 405 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_simple.snap
-2023/09/30 | 414 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_word.snap
-2023/09/30 | 594 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_bibtex.snap
-2023/09/30 | 583 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple_package.snap
-2023/09/30 | 494 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple.snap
-2023/09/30 | 257 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_class.snap
-2023/09/30 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_command_definition.snap
-2023/09/30 | 544 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple_end.snap
-2023/09/30 | 223 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple.snap
-2023/09/30 | 194 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_preamble.snap
-2023/09/30 | 186 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_string.snap
-2023/09/30 | 384 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_at_empty.snap
-2023/09/30 | 182 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_article.snap
-2023/09/30 | 185 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_preamble.snap
-2023/09/30 | 179 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_string.snap
-2023/09/30 | 205 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_complete_entry.snap
-2023/09/30 | 421 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_closed.snap
-2023/09/30 | 420 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_open.snap
-2023/09/30 | 441 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_field_name.snap
-2023/09/30 | 486 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_closed.snap
-2023/09/30 | 485 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_open.snap
-2023/09/30 | 263 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_open_brace.snap
-2023/09/30 | 264 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_simple.snap
-2023/09/30 | 459 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_closed_brace.snap
-2023/09/30 | 464 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_open_brace.snap
-2023/09/30 | 449 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_closed_brace.snap
-2023/09/30 | 448 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_open_brace.snap
-2023/09/30 | 512 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_857_1.snap
-2023/09/30 | 313 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_864.snap
-2023/09/30 | 247 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_883.snap
-2023/09/30 | 1076 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_885.snap
-2023/09/30 | 1814 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__label.snap
-2023/09/30 | 699 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_import.snap
-2023/09/30 | 711 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_texlabroot.snap
-2023/09/30 | 250 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_begin.snap
-2023/09/30 | 255 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_end.snap
-2023/09/30 | 452 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_closed_brace.snap
-2023/09/30 | 451 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_open_brace.snap
-2023/09/30 | 273 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_command.snap
-2023/09/30 | 351 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_environment.snap
-2023/09/30 | 368 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_import.snap
-2023/09/30 | 355 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_include.snap
-2023/09/30 | 2586 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_symbol__smoke.snap
-2023/09/30 | 167 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_command.snap
-2023/09/30 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_insert_braces.snap
-2023/09/30 | 181 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_join_strings.snap
-2023/09/30 | 946 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_multiple_entries.snap
-2023/09/30 | 132 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_parens.snap
-2023/09/30 | 160 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_preamble.snap
-2023/09/30 | 143 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_string.snap
-2023/09/30 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_trailing_comma.snap
-2023/09/30 | 520 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_wrap_long_lines.snap
-2023/09/30 | 1608 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__inlay_hint__label_definition.snap
-2023/09/30 | 12 | support/texlab/crates/texlab/tests/lsp/workspace.rs
-2023/09/30 | 1922 | support/texlab/crates/texlab/tests/lsp/workspace/snapshots/lsp__workspace__symbol__smoke.snap
-2023/09/30 | 1051 | support/texlab/crates/texlab/tests/lsp/workspace/symbol.rs
-2023/09/30 | 380190 | support/texlab/images/demo.gif
-2023/09/30 | 35149 | support/texlab/LICENSE
-2023/09/30 | 3767 | support/texlab/README.md
-2023/09/30 | 621 | support/texlab/texlab.1
-2023/09/30 | 26556 | support/texlab/texlab.pdf
-2023/09/30 | 2586 | support/texlab/texlab.tex
-2023/09/30 | 7732539 | support/texlab.zip
+2023/10/10 | 50591 | support/texlab/Cargo.lock
+2023/10/10 | 347 | support/texlab/Cargo.toml
+2023/10/10 | 32021 | support/texlab/CHANGELOG.md
+2023/10/10 | 181 | support/texlab/CONTRIBUTING.md
+2023/10/10 | 515 | support/texlab/crates/base-db/Cargo.toml
+2023/10/10 | 4038 | support/texlab/crates/base-db/src/config.rs
+2023/10/10 | 58408 | support/texlab/crates/base-db/src/data.rs
+2023/10/10 | 5374 | support/texlab/crates/base-db/src/document.rs
+2023/10/10 | 5838 | support/texlab/crates/base-db/src/graph.rs
+2023/10/10 | 560 | support/texlab/crates/base-db/src/lib.rs
+2023/10/10 | 1170 | support/texlab/crates/base-db/src/semantics/auxiliary.rs
+2023/10/10 | 2371 | support/texlab/crates/base-db/src/semantics/bib.rs
+2023/10/10 | 1112 | support/texlab/crates/base-db/src/semantics.rs
+2023/10/10 | 11078 | support/texlab/crates/base-db/src/semantics/tex.rs
+2023/10/10 | 5900 | support/texlab/crates/base-db/src/util/label.rs
+2023/10/10 | 6477 | support/texlab/crates/base-db/src/util/line_index.rs
+2023/10/10 | 5553 | support/texlab/crates/base-db/src/util/queries.rs
+2023/10/10 | 445 | support/texlab/crates/base-db/src/util/regex_filter.rs
+2023/10/10 | 244 | support/texlab/crates/base-db/src/util.rs
+2023/10/10 | 10197 | support/texlab/crates/base-db/src/workspace.rs
+2023/10/10 | 492 | support/texlab/crates/bibtex-utils/Cargo.toml
+2023/10/10 | 2074 | support/texlab/crates/bibtex-utils/src/field/author.rs
+2023/10/10 | 2665 | support/texlab/crates/bibtex-utils/src/field/date.rs
+2023/10/10 | 1626 | support/texlab/crates/bibtex-utils/src/field/number.rs
+2023/10/10 | 60 | support/texlab/crates/bibtex-utils/src/field.rs
+2023/10/10 | 8955 | support/texlab/crates/bibtex-utils/src/field/text.rs
+2023/10/10 | 15 | support/texlab/crates/bibtex-utils/src/lib.rs
+2023/10/10 | 489 | support/texlab/crates/citeproc/Cargo.toml
+2023/10/10 | 22204 | support/texlab/crates/citeproc/src/driver.rs
+2023/10/10 | 4730 | support/texlab/crates/citeproc/src/entry.rs
+2023/10/10 | 875 | support/texlab/crates/citeproc/src/lib.rs
+2023/10/10 | 1760 | support/texlab/crates/citeproc/src/output.rs
+2023/10/10 | 15622 | support/texlab/crates/citeproc/src/tests.rs
+2023/10/10 | 558 | support/texlab/crates/commands/Cargo.toml
+2023/10/10 | 3838 | support/texlab/crates/commands/src/build.rs
+2023/10/10 | 987 | support/texlab/crates/commands/src/change_env.rs
+2023/10/10 | 1820 | support/texlab/crates/commands/src/clean.rs
+2023/10/10 | 1590 | support/texlab/crates/commands/src/dep_graph.rs
+2023/10/10 | 3093 | support/texlab/crates/commands/src/find_envs.rs
+2023/10/10 | 3207 | support/texlab/crates/commands/src/fwd_search.rs
+2023/10/10 | 389 | support/texlab/crates/commands/src/lib.rs
+2023/10/10 | 1583 | support/texlab/crates/commands/src/placeholders.rs
+2023/10/10 | 1023 | support/texlab/crates/completion/benches/bench_main.rs
+2023/10/10 | 688 | support/texlab/crates/completion/Cargo.toml
+2023/10/10 | 356 | support/texlab/crates/completion-data/Cargo.toml
+2023/10/10 | 6970534 | support/texlab/crates/completion-data/data/completion.json.gz
+2023/10/10 | 3265 | support/texlab/crates/completion-data/src/lib.rs
+2023/10/10 | 5533 | support/texlab/crates/completion/src/lib.rs
+2023/10/10 | 2493 | support/texlab/crates/completion/src/providers/argument.rs
+2023/10/10 | 2276 | support/texlab/crates/completion/src/providers/citations.rs
+2023/10/10 | 1553 | support/texlab/crates/completion/src/providers/color_model.rs
+2023/10/10 | 2107 | support/texlab/crates/completion/src/providers/color.rs
+2023/10/10 | 4254 | support/texlab/crates/completion/src/providers/command.rs
+2023/10/10 | 1118 | support/texlab/crates/completion/src/providers/entry_type.rs
+2023/10/10 | 4297 | support/texlab/crates/completion/src/providers/environment.rs
+2023/10/10 | 2369 | support/texlab/crates/completion/src/providers/field.rs
+2023/10/10 | 2612 | support/texlab/crates/completion/src/providers/glossary.rs
+2023/10/10 | 2481 | support/texlab/crates/completion/src/providers/import.rs
+2023/10/10 | 4755 | support/texlab/crates/completion/src/providers/include.rs
+2023/10/10 | 3501 | support/texlab/crates/completion/src/providers/label.rs
+2023/10/10 | 699 | support/texlab/crates/completion/src/providers.rs
+2023/10/10 | 3301 | support/texlab/crates/completion/src/providers/tikz_library.rs
+2023/10/10 | 44178 | support/texlab/crates/completion/src/tests.rs
+2023/10/10 | 1382 | support/texlab/crates/completion/src/util/builder.rs
+2023/10/10 | 1025 | support/texlab/crates/completion/src/util/matchers.rs
+2023/10/10 | 2320 | support/texlab/crates/completion/src/util/patterns.rs
+2023/10/10 | 967 | support/texlab/crates/completion/src/util.rs
+2023/10/10 | 378 | support/texlab/crates/definition/Cargo.toml
+2023/10/10 | 844 | support/texlab/crates/definition/src/citation.rs
+2023/10/10 | 1348 | support/texlab/crates/definition/src/command.rs
+2023/10/10 | 1056 | support/texlab/crates/definition/src/include.rs
+2023/10/10 | 1146 | support/texlab/crates/definition/src/label.rs
+2023/10/10 | 1250 | support/texlab/crates/definition/src/lib.rs
+2023/10/10 | 1048 | support/texlab/crates/definition/src/string_ref.rs
+2023/10/10 | 2998 | support/texlab/crates/definition/src/tests.rs
+2023/10/10 | 394 | support/texlab/crates/diagnostics/Cargo.toml
+2023/10/10 | 3263 | support/texlab/crates/diagnostics/src/build_log.rs
+2023/10/10 | 3027 | support/texlab/crates/diagnostics/src/citations.rs
+2023/10/10 | 3218 | support/texlab/crates/diagnostics/src/grammar/bib.rs
+2023/10/10 | 79 | support/texlab/crates/diagnostics/src/grammar.rs
+2023/10/10 | 4144 | support/texlab/crates/diagnostics/src/grammar/tex.rs
+2023/10/10 | 3021 | support/texlab/crates/diagnostics/src/labels.rs
+2023/10/10 | 2322 | support/texlab/crates/diagnostics/src/lib.rs
+2023/10/10 | 3288 | support/texlab/crates/diagnostics/src/tests.rs
+2023/10/10 | 770 | support/texlab/crates/diagnostics/src/types.rs
+2023/10/10 | 750 | support/texlab/crates/diagnostics/src/util.rs
+2023/10/10 | 227 | support/texlab/crates/distro/Cargo.toml
+2023/10/10 | 1917 | support/texlab/crates/distro/src/file_name_db.rs
+2023/10/10 | 710 | support/texlab/crates/distro/src/kpsewhich.rs
+2023/10/10 | 1124 | support/texlab/crates/distro/src/language.rs
+2023/10/10 | 2543 | support/texlab/crates/distro/src/lib.rs
+2023/10/10 | 2467 | support/texlab/crates/distro/src/miktex.rs
+2023/10/10 | 820 | support/texlab/crates/distro/src/texlive.rs
+2023/10/10 | 355 | support/texlab/crates/folding/Cargo.toml
+2023/10/10 | 3225 | support/texlab/crates/folding/src/lib.rs
+2023/10/10 | 1749 | support/texlab/crates/folding/src/tests.rs
+2023/10/10 | 483 | support/texlab/crates/hover/Cargo.toml
+2023/10/10 | 1225 | support/texlab/crates/hover/src/citation.rs
+2023/10/10 | 535 | support/texlab/crates/hover/src/entry_type.rs
+2023/10/10 | 612 | support/texlab/crates/hover/src/field_type.rs
+2023/10/10 | 818 | support/texlab/crates/hover/src/label.rs
+2023/10/10 | 1432 | support/texlab/crates/hover/src/lib.rs
+2023/10/10 | 720 | support/texlab/crates/hover/src/package.rs
+2023/10/10 | 1059 | support/texlab/crates/hover/src/string_ref.rs
+2023/10/10 | 7215 | support/texlab/crates/hover/src/tests.rs
+2023/10/10 | 407 | support/texlab/crates/parser/Cargo.toml
+2023/10/10 | 11420 | support/texlab/crates/parser/src/bibtex.rs
+2023/10/10 | 5684 | support/texlab/crates/parser/src/build_log.rs
+2023/10/10 | 3009 | support/texlab/crates/parser/src/config.rs
+2023/10/10 | 5386 | support/texlab/crates/parser/src/latex/lexer/commands.rs
+2023/10/10 | 2040 | support/texlab/crates/parser/src/latex/lexer.rs
+2023/10/10 | 2834 | support/texlab/crates/parser/src/latex/lexer/types.rs
+2023/10/10 | 35324 | support/texlab/crates/parser/src/latex.rs
+2023/10/10 | 148 | support/texlab/crates/parser/src/lib.rs
+2023/10/10 | 234 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@comment.txt.snap
+2023/10/10 | 761 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@issue_809.txt.snap
+2023/10/10 | 373 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@preamble.txt.snap
+2023/10/10 | 3667 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aho_2006.txt.snap
+2023/10/10 | 7531 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aksin_2006.txt.snap
+2023/10/10 | 7322 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__almendro_1998.txt.snap
+2023/10/10 | 10380 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__averroes_1998.txt.snap
+2023/10/10 | 5864 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__betram_1996.txt.snap
+2023/10/10 | 6644 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__blom_2021.txt.snap
+2023/10/10 | 7157 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__combi_2004.txt.snap
+2023/10/10 | 6836 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__erwin_2007.txt.snap
+2023/10/10 | 7528 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__jain_1999.txt.snap
+2023/10/10 | 8868 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__kastenholz_2006.txt.snap
+2023/10/10 | 9479 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__knuth_1984.txt.snap
+2023/10/10 | 5060 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__matuz_1990.txt.snap
+2023/10/10 | 11015 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__nietzsche_1998.txt.snap
+2023/10/10 | 6472 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__rivest_1978.txt.snap
+2023/10/10 | 716 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@001.txt.snap
+2023/10/10 | 448 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@002.txt.snap
+2023/10/10 | 673 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@003.txt.snap
+2023/10/10 | 975 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@004.txt.snap
+2023/10/10 | 953 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@005.txt.snap
+2023/10/10 | 1672 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@006.txt.snap
+2023/10/10 | 464 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@007.txt.snap
+2023/10/10 | 746 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@block_comments.txt.snap
+2023/10/10 | 626 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default_error.txt.snap
+2023/10/10 | 647 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default.txt.snap
+2023/10/10 | 772 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_figure.txt.snap
+2023/10/10 | 499 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal_error.txt.snap
+2023/10/10 | 520 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal.txt.snap
+2023/10/10 | 295 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_empty.txt.snap
+2023/10/10 | 321 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_missing_brace.txt.snap
+2023/10/10 | 453 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_multiple_keys.txt.snap
+2023/10/10 | 608 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote_postnote.txt.snap
+2023/10/10 | 472 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote.txt.snap
+2023/10/10 | 404 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_redundant_comma.txt.snap
+2023/10/10 | 344 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_simple.txt.snap
+2023/10/10 | 342 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_star.txt.snap
+2023/10/10 | 734 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_definition_simple.txt.snap
+2023/10/10 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_reference_simple.txt.snap
+2023/10/10 | 849 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error1.txt.snap
+2023/10/10 | 588 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error2.txt.snap
+2023/10/10 | 457 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error3.txt.snap
+2023/10/10 | 248 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error4.txt.snap
+2023/10/10 | 980 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_simple.txt.snap
+2023/10/10 | 504 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_argc.txt.snap
+2023/10/10 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl_error.txt.snap
+2023/10/10 | 377 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl.txt.snap
+2023/10/10 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_optional.txt.snap
+2023/10/10 | 645 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_simple.txt.snap
+2023/10/10 | 1177 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_with_begin.txt.snap
+2023/10/10 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_no_impl.txt.snap
+2023/10/10 | 502 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_simple.txt.snap
+2023/10/10 | 1074 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_asymptote.txt.snap
+2023/10/10 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition_optional_arg.txt.snap
+2023/10/10 | 1103 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition.txt.snap
+2023/10/10 | 1191 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested_missing_braces.txt.snap
+2023/10/10 | 1121 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested.txt.snap
+2023/10/10 | 742 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_simple.txt.snap
+2023/10/10 | 814 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation_missing_begin.txt.snap
+2023/10/10 | 379 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation.txt.snap
+2023/10/10 | 460 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_args.txt.snap
+2023/10/10 | 216 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_empty.txt.snap
+2023/10/10 | 215 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_escape.txt.snap
+2023/10/10 | 1464 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_declaration.txt.snap
+2023/10/10 | 1359 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_options.txt.snap
+2023/10/10 | 758 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_simple.txt.snap
+2023/10/10 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_package.txt.snap
+2023/10/10 | 815 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_options.txt.snap
+2023/10/10 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_simple.txt.snap
+2023/10/10 | 965 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_definition_simple.txt.snap
+2023/10/10 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_options.txt.snap
+2023/10/10 | 365 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_simple.txt.snap
+2023/10/10 | 624 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_command.txt.snap
+2023/10/10 | 552 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_options.txt.snap
+2023/10/10 | 447 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path.txt.snap
+2023/10/10 | 312 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_missing_end.txt.snap
+2023/10/10 | 332 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_simple.txt.snap
+2023/10/10 | 821 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__equation_missing_end.txt.snap
+2023/10/10 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__escaped_brackets.txt.snap
+2023/10/10 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_braces.txt.snap
+2023/10/10 | 244 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets.txt.snap
+2023/10/10 | 330 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets_with_group.txt.snap
+2023/10/10 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@hello_world.txt.snap
+2023/10/10 | 861 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_options.txt.snap
+2023/10/10 | 386 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_simple.txt.snap
+2023/10/10 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__bibtex_include_simple.txt.snap
+2023/10/10 | 323 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_empty.txt.snap
+2023/10/10 | 1066 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_options.txt.snap
+2023/10/10 | 375 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_simple.txt.snap
+2023/10/10 | 900 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_command.txt.snap
+2023/10/10 | 762 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_complicated_options.txt.snap
+2023/10/10 | 717 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_options.txt.snap
+2023/10/10 | 387 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_simple.txt.snap
+2023/10/10 | 316 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_incomplete.txt.snap
+2023/10/10 | 470 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_simple.txt.snap
+2023/10/10 | 703 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_options.txt.snap
+2023/10/10 | 373 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_simple.txt.snap
+2023/10/10 | 429 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_equality_sign.txt.snap
+2023/10/10 | 363 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_simple.txt.snap
+2023/10/10 | 477 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_input_path_brackets.txt.snap
+2023/10/10 | 324 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_empty.txt.snap
+2023/10/10 | 483 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_multiple.txt.snap
+2023/10/10 | 1067 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_options.txt.snap
+2023/10/10 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_simple.txt.snap
+2023/10/10 | 382 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__pgf_library_import_simple.txt.snap
+2023/10/10 | 702 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_options.txt.snap
+2023/10/10 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_simple.txt.snap
+2023/10/10 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__tikz_library_import_simple.txt.snap
+2023/10/10 | 385 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__verbatim_include_simple.txt.snap
+2023/10/10 | 649 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline_double_dollar.txt.snap
+2023/10/10 | 631 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline.txt.snap
+2023/10/10 | 728 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_568.txt.snap
+2023/10/10 | 4300 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_745.txt.snap
+2023/10/10 | 347 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_789.txt.snap
+2023/10/10 | 526 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_828.txt.snap
+2023/10/10 | 1791 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_853.txt.snap
+2023/10/10 | 904 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_857.txt.snap
+2023/10/10 | 745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_874.txt.snap
+2023/10/10 | 1846 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_919.txt.snap
+2023/10/10 | 392 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_931.txt.snap
+2023/10/10 | 452 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_line_break.txt.snap
+2023/10/10 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_simple.txt.snap
+2023/10/10 | 563 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_number.txt.snap
+2023/10/10 | 361 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_equation.txt.snap
+2023/10/10 | 825 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_incomplete.txt.snap
+2023/10/10 | 456 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_multiple.txt.snap
+2023/10/10 | 479 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_error.txt.snap
+2023/10/10 | 380 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_incomplete.txt.snap
+2023/10/10 | 507 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_simple.txt.snap
+2023/10/10 | 349 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_simple.txt.snap
+2023/10/10 | 187 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter_error.txt.snap
+2023/10/10 | 182 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter.txt.snap
+2023/10/10 | 1883 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__paragraphs.txt.snap
+2023/10/10 | 1260 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_enum_item.txt.snap
+2023/10/10 | 565 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_invalid_nesting.txt.snap
+2023/10/10 | 1745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_nested.txt.snap
+2023/10/10 | 706 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_siblings.txt.snap
+2023/10/10 | 778 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_full.txt.snap
+2023/10/10 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_counter.txt.snap
+2023/10/10 | 676 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description_and_counter.txt.snap
+2023/10/10 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description.txt.snap
+2023/10/10 | 394 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_only_name.txt.snap
+2023/10/10 | 998 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_thmtools.txt.snap
+2023/10/10 | 82 | support/texlab/crates/parser/src/test_data/bibtex/comment.txt
+2023/10/10 | 50 | support/texlab/crates/parser/src/test_data/bibtex/issue_809.txt
+2023/10/10 | 25 | support/texlab/crates/parser/src/test_data/bibtex/preamble.txt
+2023/10/10 | 314 | support/texlab/crates/parser/src/test_data/bibtex/samples/aho_2006.txt
+2023/10/10 | 679 | support/texlab/crates/parser/src/test_data/bibtex/samples/aksin_2006.txt
+2023/10/10 | 706 | support/texlab/crates/parser/src/test_data/bibtex/samples/almendro_1998.txt
+2023/10/10 | 1008 | support/texlab/crates/parser/src/test_data/bibtex/samples/averroes_1998.txt
+2023/10/10 | 556 | support/texlab/crates/parser/src/test_data/bibtex/samples/betram_1996.txt
+2023/10/10 | 860 | support/texlab/crates/parser/src/test_data/bibtex/samples/blom_2021.txt
+2023/10/10 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/combi_2004.txt
+2023/10/10 | 615 | support/texlab/crates/parser/src/test_data/bibtex/samples/erwin_2007.txt
+2023/10/10 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/jain_1999.txt
+2023/10/10 | 898 | support/texlab/crates/parser/src/test_data/bibtex/samples/kastenholz_2006.txt
+2023/10/10 | 993 | support/texlab/crates/parser/src/test_data/bibtex/samples/knuth_1984.txt
+2023/10/10 | 517 | support/texlab/crates/parser/src/test_data/bibtex/samples/matuz_1990.txt
+2023/10/10 | 1112 | support/texlab/crates/parser/src/test_data/bibtex/samples/nietzsche_1998.txt
+2023/10/10 | 557 | support/texlab/crates/parser/src/test_data/bibtex/samples/rivest_1978.txt
+2023/10/10 | 3194 | support/texlab/crates/parser/src/test_data/build_log/001.txt
+2023/10/10 | 2455 | support/texlab/crates/parser/src/test_data/build_log/002.txt
+2023/10/10 | 2515 | support/texlab/crates/parser/src/test_data/build_log/003.txt
+2023/10/10 | 3057 | support/texlab/crates/parser/src/test_data/build_log/004.txt
+2023/10/10 | 13353 | support/texlab/crates/parser/src/test_data/build_log/005.txt
+2023/10/10 | 4130 | support/texlab/crates/parser/src/test_data/build_log/006.txt
+2023/10/10 | 7762 | support/texlab/crates/parser/src/test_data/build_log/007.txt
+2023/10/10 | 48 | support/texlab/crates/parser/src/test_data/latex/block_comments.txt
+2023/10/10 | 26 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default_error.txt
+2023/10/10 | 27 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/caption/caption_figure.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal_error.txt
+2023/10/10 | 22 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal.txt
+2023/10/10 | 7 | support/texlab/crates/parser/src/test_data/latex/citation/citation_empty.txt
+2023/10/10 | 9 | support/texlab/crates/parser/src/test_data/latex/citation/citation_missing_brace.txt
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_multiple_keys.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote_postnote.txt
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote.txt
+2023/10/10 | 12 | support/texlab/crates/parser/src/test_data/latex/citation/citation_redundant_comma.txt
+2023/10/10 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_simple.txt
+2023/10/10 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_star.txt
+2023/10/10 | 33 | support/texlab/crates/parser/src/test_data/latex/color/color_definition_simple.txt
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/color/color_reference_simple.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error1.txt
+2023/10/10 | 30 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error2.txt
+2023/10/10 | 25 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error3.txt
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error4.txt
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_simple.txt
+2023/10/10 | 22 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_argc.txt
+2023/10/10 | 16 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl_error.txt
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl.txt
+2023/10/10 | 29 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_optional.txt
+2023/10/10 | 23 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_simple.txt
+2023/10/10 | 80 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_with_begin.txt
+2023/10/10 | 26 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_no_impl.txt
+2023/10/10 | 31 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_simple.txt
+2023/10/10 | 50 | support/texlab/crates/parser/src/test_data/latex/environment/environment_asymptote.txt
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition_optional_arg.txt
+2023/10/10 | 47 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition.txt
+2023/10/10 | 52 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested_missing_braces.txt
+2023/10/10 | 43 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested.txt
+2023/10/10 | 33 | support/texlab/crates/parser/src/test_data/latex/environment/environment_simple.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/equation_missing_begin.txt
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/equation.txt
+2023/10/10 | 14 | support/texlab/crates/parser/src/test_data/latex/generic_command_args.txt
+2023/10/10 | 4 | support/texlab/crates/parser/src/test_data/latex/generic_command_empty.txt
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/generic_command_escape.txt
+2023/10/10 | 64 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_declaration.txt
+2023/10/10 | 76 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_options.txt
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_simple.txt
+2023/10/10 | 35 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_package.txt
+2023/10/10 | 32 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_options.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_simple.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_definition_simple.txt
+2023/10/10 | 25 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_options.txt
+2023/10/10 | 9 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_simple.txt
+2023/10/10 | 32 | support/texlab/crates/parser/src/test_data/latex/graphics_path_command.txt
+2023/10/10 | 33 | support/texlab/crates/parser/src/test_data/latex/graphics_path_options.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/graphics_path.txt
+2023/10/10 | 12 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_missing_end.txt
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_simple.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/group/equation_missing_end.txt
+2023/10/10 | 6 | support/texlab/crates/parser/src/test_data/latex/group/escaped_brackets.txt
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_braces.txt
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets.txt
+2023/10/10 | 4 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets_with_group.txt
+2023/10/10 | 12 | support/texlab/crates/parser/src/test_data/latex/hello_world.txt
+2023/10/10 | 42 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_options.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_simple.txt
+2023/10/10 | 22 | support/texlab/crates/parser/src/test_data/latex/include/bibtex_include_simple.txt
+2023/10/10 | 16 | support/texlab/crates/parser/src/test_data/latex/include/class_include_empty.txt
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/include/class_include_options.txt
+2023/10/10 | 23 | support/texlab/crates/parser/src/test_data/latex/include/class_include_simple.txt
+2023/10/10 | 52 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_command.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_complicated_options.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_options.txt
+2023/10/10 | 29 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_simple.txt
+2023/10/10 | 11 | support/texlab/crates/parser/src/test_data/latex/include/import_incomplete.txt
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/include/import_simple.txt
+2023/10/10 | 30 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_options.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_simple.txt
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_equality_sign.txt
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_simple.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/latex_input_path_brackets.txt
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/include/package_include_empty.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/include/package_include_multiple.txt
+2023/10/10 | 41 | support/texlab/crates/parser/src/test_data/latex/include/package_include_options.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/package_include_simple.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/include/pgf_library_import_simple.txt
+2023/10/10 | 34 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_options.txt
+2023/10/10 | 24 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_simple.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/tikz_library_import_simple.txt
+2023/10/10 | 27 | support/texlab/crates/parser/src/test_data/latex/include/verbatim_include_simple.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/inline_double_dollar.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/inline.txt
+2023/10/10 | 51 | support/texlab/crates/parser/src/test_data/latex/issue_568.txt
+2023/10/10 | 271 | support/texlab/crates/parser/src/test_data/latex/issue_745.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/issue_789.txt
+2023/10/10 | 51 | support/texlab/crates/parser/src/test_data/latex/issue_828.txt
+2023/10/10 | 135 | support/texlab/crates/parser/src/test_data/latex/issue_853.txt
+2023/10/10 | 55 | support/texlab/crates/parser/src/test_data/latex/issue_857.txt
+2023/10/10 | 37 | support/texlab/crates/parser/src/test_data/latex/issue_874.txt
+2023/10/10 | 217 | support/texlab/crates/parser/src/test_data/latex/issue_919.txt
+2023/10/10 | 31 | support/texlab/crates/parser/src/test_data/latex/issue_931.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_line_break.txt
+2023/10/10 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_simple.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/label/label_number.txt
+2023/10/10 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_equation.txt
+2023/10/10 | 47 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_incomplete.txt
+2023/10/10 | 14 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_multiple.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_error.txt
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_incomplete.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_simple.txt
+2023/10/10 | 9 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_simple.txt
+2023/10/10 | 1 | support/texlab/crates/parser/src/test_data/latex/parameter_error.txt
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/parameter.txt
+2023/10/10 | 134 | support/texlab/crates/parser/src/test_data/latex/structure/paragraphs.txt
+2023/10/10 | 60 | support/texlab/crates/parser/src/test_data/latex/structure/structure_enum_item.txt
+2023/10/10 | 27 | support/texlab/crates/parser/src/test_data/latex/structure/structure_invalid_nesting.txt
+2023/10/10 | 90 | support/texlab/crates/parser/src/test_data/latex/structure/structure_nested.txt
+2023/10/10 | 35 | support/texlab/crates/parser/src/test_data/latex/structure/structure_siblings.txt
+2023/10/10 | 31 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_full.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_counter.txt
+2023/10/10 | 26 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description_and_counter.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description.txt
+2023/10/10 | 16 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_only_name.txt
+2023/10/10 | 41 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_thmtools.txt
+2023/10/10 | 336 | support/texlab/crates/references/Cargo.toml
+2023/10/10 | 1409 | support/texlab/crates/references/src/entry.rs
+2023/10/10 | 901 | support/texlab/crates/references/src/label.rs
+2023/10/10 | 1070 | support/texlab/crates/references/src/lib.rs
+2023/10/10 | 1266 | support/texlab/crates/references/src/string_def.rs
+2023/10/10 | 3491 | support/texlab/crates/references/src/tests.rs
+2023/10/10 | 353 | support/texlab/crates/rename/Cargo.toml
+2023/10/10 | 1236 | support/texlab/crates/rename/src/command.rs
+2023/10/10 | 1506 | support/texlab/crates/rename/src/entry.rs
+2023/10/10 | 844 | support/texlab/crates/rename/src/label.rs
+2023/10/10 | 1064 | support/texlab/crates/rename/src/lib.rs
+2023/10/10 | 1462 | support/texlab/crates/rename/src/tests.rs
+2023/10/10 | 459 | support/texlab/crates/symbols/Cargo.toml
+2023/10/10 | 1974 | support/texlab/crates/symbols/src/document/bib.rs
+2023/10/10 | 1509 | support/texlab/crates/symbols/src/document.rs
+2023/10/10 | 14338 | support/texlab/crates/symbols/src/document/tests.rs
+2023/10/10 | 9070 | support/texlab/crates/symbols/src/document/tex.rs
+2023/10/10 | 175 | support/texlab/crates/symbols/src/lib.rs
+2023/10/10 | 2610 | support/texlab/crates/symbols/src/types.rs
+2023/10/10 | 1321 | support/texlab/crates/symbols/src/workspace.rs
+2023/10/10 | 5645 | support/texlab/crates/symbols/src/workspace/sort.rs
+2023/10/10 | 9169 | support/texlab/crates/symbols/src/workspace/tests.rs
+2023/10/10 | 227 | support/texlab/crates/syntax/Cargo.toml
+2023/10/10 | 6963 | support/texlab/crates/syntax/src/bibtex/cst.rs
+2023/10/10 | 640 | support/texlab/crates/syntax/src/bibtex/kind.rs
+2023/10/10 | 694 | support/texlab/crates/syntax/src/bibtex.rs
+2023/10/10 | 18098 | support/texlab/crates/syntax/src/latex/cst.rs
+2023/10/10 | 1708 | support/texlab/crates/syntax/src/latex/kind.rs
+2023/10/10 | 689 | support/texlab/crates/syntax/src/latex.rs
+2023/10/10 | 485 | support/texlab/crates/syntax/src/lib.rs
+2023/10/10 | 291 | support/texlab/crates/test-utils/Cargo.toml
+2023/10/10 | 4432 | support/texlab/crates/test-utils/src/fixture.rs
+2023/10/10 | 17 | support/texlab/crates/test-utils/src/lib.rs
+2023/10/10 | 1595 | support/texlab/crates/texlab/benches/bench_main.rs
+2023/10/10 | 1926 | support/texlab/crates/texlab/Cargo.toml
+2023/10/10 | 3223 | support/texlab/crates/texlab/src/client.rs
+2023/10/10 | 14808 | support/texlab/crates/texlab/src/features/completion.rs
+2023/10/10 | 1304 | support/texlab/crates/texlab/src/features/definition.rs
+2023/10/10 | 1328 | support/texlab/crates/texlab/src/features/folding.rs
+2023/10/10 | 7202 | support/texlab/crates/texlab/src/features/formatting/bibtex_internal.rs
+2023/10/10 | 2068 | support/texlab/crates/texlab/src/features/formatting/latexindent.rs
+2023/10/10 | 1083 | support/texlab/crates/texlab/src/features/formatting.rs
+2023/10/10 | 1119 | support/texlab/crates/texlab/src/features/highlight/label.rs
+2023/10/10 | 536 | support/texlab/crates/texlab/src/features/highlight.rs
+2023/10/10 | 1660 | support/texlab/crates/texlab/src/features/hover.rs
+2023/10/10 | 1330 | support/texlab/crates/texlab/src/features/inlay_hint/label.rs
+2023/10/10 | 1298 | support/texlab/crates/texlab/src/features/inlay_hint.rs
+2023/10/10 | 555 | support/texlab/crates/texlab/src/features/link/include.rs
+2023/10/10 | 932 | support/texlab/crates/texlab/src/features/link.rs
+2023/10/10 | 988 | support/texlab/crates/texlab/src/features/reference.rs
+2023/10/10 | 1534 | support/texlab/crates/texlab/src/features/rename.rs
+2023/10/10 | 197 | support/texlab/crates/texlab/src/features.rs
+2023/10/10 | 4126 | support/texlab/crates/texlab/src/features/symbols.rs
+2023/10/10 | 108 | support/texlab/crates/texlab/src/lib.rs
+2023/10/10 | 1732 | support/texlab/crates/texlab/src/main.rs
+2023/10/10 | 2411 | support/texlab/crates/texlab/src/server/dispatch.rs
+2023/10/10 | 2609 | support/texlab/crates/texlab/src/server/extensions.rs
+2023/10/10 | 8392 | support/texlab/crates/texlab/src/server/options.rs
+2023/10/10 | 1412 | support/texlab/crates/texlab/src/server/progress.rs
+2023/10/10 | 42538 | support/texlab/crates/texlab/src/server.rs
+2023/10/10 | 6018 | support/texlab/crates/texlab/src/util/capabilities.rs
+2023/10/10 | 4047 | support/texlab/crates/texlab/src/util/chktex.rs
+2023/10/10 | 8249 | support/texlab/crates/texlab/src/util/diagnostics.rs
+2023/10/10 | 1611 | support/texlab/crates/texlab/src/util/line_index_ext.rs
+2023/10/10 | 4004 | support/texlab/crates/texlab/src/util/lsp_enums.rs
+2023/10/10 | 1496 | support/texlab/crates/texlab/src/util.rs
+2023/10/10 | 8469 | support/texlab/crates/texlab/tests/lsp/fixture.rs
+2023/10/10 | 47 | support/texlab/crates/texlab/tests/lsp/main.rs
+2023/10/10 | 1322 | support/texlab/crates/texlab/tests/lsp/text_document/document_highlight.rs
+2023/10/10 | 1157 | support/texlab/crates/texlab/tests/lsp/text_document/document_link.rs
+2023/10/10 | 1505 | support/texlab/crates/texlab/tests/lsp/text_document/document_symbol.rs
+2023/10/10 | 3009 | support/texlab/crates/texlab/tests/lsp/text_document/formatting.rs
+2023/10/10 | 1737 | support/texlab/crates/texlab/tests/lsp/text_document/inlay_hint.rs
+2023/10/10 | 96 | support/texlab/crates/texlab/tests/lsp/text_document.rs
+2023/10/10 | 226 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_package_ref.snap
+2023/10/10 | 265 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_empty.snap
+2023/10/10 | 278 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_open_brace.snap
+2023/10/10 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_simple.snap
+2023/10/10 | 399 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_empty.snap
+2023/10/10 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_open_brace.snap
+2023/10/10 | 211 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_word.snap
+2023/10/10 | 550 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__begin_environment_without_snippet_support.snap
+2023/10/10 | 323 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_acronym.snap
+2023/10/10 | 301 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace_multiple.snap
+2023/10/10 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace.snap
+2023/10/10 | 561 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation.snap
+2023/10/10 | 407 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_open_brace.snap
+2023/10/10 | 403 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_open_brace.snap
+2023/10/10 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_simple.snap
+2023/10/10 | 408 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_simple.snap
+2023/10/10 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_open_brace.snap
+2023/10/10 | 405 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_simple.snap
+2023/10/10 | 414 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_word.snap
+2023/10/10 | 594 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_bibtex.snap
+2023/10/10 | 583 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple_package.snap
+2023/10/10 | 494 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple.snap
+2023/10/10 | 257 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_class.snap
+2023/10/10 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_command_definition.snap
+2023/10/10 | 544 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple_end.snap
+2023/10/10 | 223 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple.snap
+2023/10/10 | 194 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_preamble.snap
+2023/10/10 | 186 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_string.snap
+2023/10/10 | 384 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_at_empty.snap
+2023/10/10 | 182 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_article.snap
+2023/10/10 | 185 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_preamble.snap
+2023/10/10 | 179 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_string.snap
+2023/10/10 | 205 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_complete_entry.snap
+2023/10/10 | 421 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_closed.snap
+2023/10/10 | 420 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_open.snap
+2023/10/10 | 441 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_field_name.snap
+2023/10/10 | 486 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_closed.snap
+2023/10/10 | 485 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_open.snap
+2023/10/10 | 263 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_open_brace.snap
+2023/10/10 | 264 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_simple.snap
+2023/10/10 | 459 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_closed_brace.snap
+2023/10/10 | 464 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_open_brace.snap
+2023/10/10 | 449 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_closed_brace.snap
+2023/10/10 | 448 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_open_brace.snap
+2023/10/10 | 512 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_857_1.snap
+2023/10/10 | 313 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_864.snap
+2023/10/10 | 247 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_883.snap
+2023/10/10 | 1076 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_885.snap
+2023/10/10 | 1814 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__label.snap
+2023/10/10 | 699 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_import.snap
+2023/10/10 | 711 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_texlabroot.snap
+2023/10/10 | 250 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_begin.snap
+2023/10/10 | 255 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_end.snap
+2023/10/10 | 452 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_closed_brace.snap
+2023/10/10 | 451 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_open_brace.snap
+2023/10/10 | 273 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_command.snap
+2023/10/10 | 351 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_environment.snap
+2023/10/10 | 368 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_import.snap
+2023/10/10 | 355 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_include.snap
+2023/10/10 | 2586 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_symbol__smoke.snap
+2023/10/10 | 167 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_command.snap
+2023/10/10 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_insert_braces.snap
+2023/10/10 | 181 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_join_strings.snap
+2023/10/10 | 946 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_multiple_entries.snap
+2023/10/10 | 132 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_parens.snap
+2023/10/10 | 160 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_preamble.snap
+2023/10/10 | 143 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_string.snap
+2023/10/10 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_trailing_comma.snap
+2023/10/10 | 520 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_wrap_long_lines.snap
+2023/10/10 | 1608 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__inlay_hint__label_definition.snap
+2023/10/10 | 12 | support/texlab/crates/texlab/tests/lsp/workspace.rs
+2023/10/10 | 1922 | support/texlab/crates/texlab/tests/lsp/workspace/snapshots/lsp__workspace__symbol__smoke.snap
+2023/10/10 | 1051 | support/texlab/crates/texlab/tests/lsp/workspace/symbol.rs
+2023/10/10 | 380190 | support/texlab/images/demo.gif
+2023/10/10 | 35149 | support/texlab/LICENSE
+2023/10/10 | 3828 | support/texlab/README.md
+2023/10/10 | 619 | support/texlab/texlab.1
+2023/10/10 | 26352 | support/texlab/texlab.pdf
+2023/10/10 | 2586 | support/texlab/texlab.tex
+2023/10/10 | 7732475 | support/texlab.zip
2011/11/27 | 456 | support/texlipse/plugin/1.5.0/README.TXT
2011/11/27 | 1726937 | support/texlipse/plugin/1.5.0/texlipse_1.5.0 src.zip
1999/01/30 | 6077 | support/texlist/README
@@ -293372,9 +293372,9 @@
2019/02/28 | 256720 | systems/texlive/tlnet/archive/cuisine.doc.r34453.tar.xz
2019/02/28 | 3000 | systems/texlive/tlnet/archive/cuisine.r34453.tar.xz
2019/02/28 | 11764 | systems/texlive/tlnet/archive/cuisine.source.r34453.tar.xz
-2023/08/18 | 144300 | systems/texlive/tlnet/archive/culmus.doc.r67961.tar.xz
-2023/08/18 | 1518740 | systems/texlive/tlnet/archive/culmus.r67961.tar.xz
-2023/08/18 | 2042036 | systems/texlive/tlnet/archive/culmus.source.r67961.tar.xz
+2023/10/10 | 144300 | systems/texlive/tlnet/archive/culmus.doc.r68495.tar.xz
+2023/10/10 | 1518404 | systems/texlive/tlnet/archive/culmus.r68495.tar.xz
+2023/10/10 | 2042040 | systems/texlive/tlnet/archive/culmus.source.r68495.tar.xz
2019/02/28 | 42724 | systems/texlive/tlnet/archive/cuprum.doc.r49909.tar.xz
2019/02/28 | 87020 | systems/texlive/tlnet/archive/cuprum.r49909.tar.xz
2019/02/28 | 710120 | systems/texlive/tlnet/archive/currency.doc.r48990.tar.xz
@@ -296535,9 +296535,9 @@
2019/02/28 | 45676 | systems/texlive/tlnet/archive/jamtimes.r20408.tar.xz
2022/10/11 | 698872 | systems/texlive/tlnet/archive/japanese-mathformulas.doc.r64678.tar.xz
2022/10/11 | 22132 | systems/texlive/tlnet/archive/japanese-mathformulas.r64678.tar.xz
-2023/06/26 | 42032 | systems/texlive/tlnet/archive/japanese-otf.doc.r67475.tar.xz
-2023/06/26 | 255780 | systems/texlive/tlnet/archive/japanese-otf.r67475.tar.xz
-2023/06/26 | 68800 | systems/texlive/tlnet/archive/japanese-otf.source.r67475.tar.xz
+2023/10/10 | 42776 | systems/texlive/tlnet/archive/japanese-otf.doc.r68492.tar.xz
+2023/10/10 | 254696 | systems/texlive/tlnet/archive/japanese-otf.r68492.tar.xz
+2023/10/10 | 69324 | systems/texlive/tlnet/archive/japanese-otf.source.r68492.tar.xz
2019/11/12 | 9792 | systems/texlive/tlnet/archive/jbact.r52717.tar.xz
2023/09/14 | 7937488 | systems/texlive/tlnet/archive/jeuxcartes.doc.r68266.tar.xz
2023/09/14 | 6716004 | systems/texlive/tlnet/archive/jeuxcartes.r68266.tar.xz
@@ -301346,9 +301346,9 @@
2019/02/28 | 62808 | systems/texlive/tlnet/archive/setdeck.doc.r40613.tar.xz
2019/02/28 | 2528 | systems/texlive/tlnet/archive/setdeck.r40613.tar.xz
2022/12/06 | 196928 | systems/texlive/tlnet/archive/setspace.doc.r65206.tar.xz
-2023/09/20 | 312452 | systems/texlive/tlnet/archive/setspaceenhanced.doc.r68324.tar.xz
-2023/09/20 | 1880 | systems/texlive/tlnet/archive/setspaceenhanced.r68324.tar.xz
-2023/09/20 | 8104 | systems/texlive/tlnet/archive/setspaceenhanced.source.r68324.tar.xz
+2023/10/10 | 313660 | systems/texlive/tlnet/archive/setspaceenhanced.doc.r68493.tar.xz
+2023/10/10 | 1896 | systems/texlive/tlnet/archive/setspaceenhanced.r68493.tar.xz
+2023/10/10 | 8124 | systems/texlive/tlnet/archive/setspaceenhanced.source.r68493.tar.xz
2022/12/06 | 7360 | systems/texlive/tlnet/archive/setspace.r65206.tar.xz
2022/04/06 | 175096 | systems/texlive/tlnet/archive/seu-ml-assign.doc.r62933.tar.xz
2022/04/06 | 4772 | systems/texlive/tlnet/archive/seu-ml-assign.r62933.tar.xz
@@ -302137,13 +302137,13 @@
2023/08/16 | 108860 | systems/texlive/tlnet/archive/tex4ht.amd64-freebsd.r67940.tar.xz
2023/08/16 | 87320 | systems/texlive/tlnet/archive/tex4ht.amd64-netbsd.r67940.tar.xz
2023/08/16 | 69948 | systems/texlive/tlnet/archive/tex4ht.armhf-linux.r67940.tar.xz
-2023/10/06 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r68458.tar.xz
+2023/10/10 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r68494.tar.xz
2023/08/16 | 93764 | systems/texlive/tlnet/archive/tex4ht.i386-freebsd.r67940.tar.xz
2023/08/16 | 91236 | systems/texlive/tlnet/archive/tex4ht.i386-linux.r67940.tar.xz
2023/08/16 | 76184 | systems/texlive/tlnet/archive/tex4ht.i386-netbsd.r67940.tar.xz
2023/08/16 | 83936 | systems/texlive/tlnet/archive/tex4ht.i386-solaris.r67940.tar.xz
-2023/10/06 | 1103512 | systems/texlive/tlnet/archive/tex4ht.r68458.tar.xz
-2023/10/06 | 1456960 | systems/texlive/tlnet/archive/tex4ht.source.r68458.tar.xz
+2023/10/10 | 1103180 | systems/texlive/tlnet/archive/tex4ht.r68494.tar.xz
+2023/10/10 | 1453368 | systems/texlive/tlnet/archive/tex4ht.source.r68494.tar.xz
2023/08/16 | 184636 | systems/texlive/tlnet/archive/tex4ht.universal-darwin.r67940.tar.xz
2023/08/16 | 62092 | systems/texlive/tlnet/archive/tex4ht.windows.r67940.tar.xz
2023/08/16 | 57992 | systems/texlive/tlnet/archive/tex4ht.x86_64-cygwin.r67940.tar.xz
@@ -302404,7 +302404,7 @@
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz
-2023/10/09 | 429972 | systems/texlive/tlnet/archive/texlive-scripts.doc.r68479.tar.xz
+2023/10/10 | 430052 | systems/texlive/tlnet/archive/texlive-scripts.doc.r68489.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
@@ -302426,7 +302426,7 @@
2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz
-2023/10/09 | 114080 | systems/texlive/tlnet/archive/texlive-scripts.r68479.tar.xz
+2023/10/10 | 114072 | systems/texlive/tlnet/archive/texlive-scripts.r68489.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2023/05/14 | 60312 | systems/texlive/tlnet/archive/texlive-scripts.windows.r67095.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -302820,8 +302820,8 @@
2022/04/08 | 13160 | systems/texlive/tlnet/archive/tikz-optics.r62977.tar.xz
2019/02/28 | 197628 | systems/texlive/tlnet/archive/tikzorbital.doc.r36439.tar.xz
2019/02/28 | 3532 | systems/texlive/tlnet/archive/tikzorbital.r36439.tar.xz
-2023/10/08 | 102688 | systems/texlive/tlnet/archive/tikz-osci.doc.r68470.tar.xz
-2023/10/08 | 2644 | systems/texlive/tlnet/archive/tikz-osci.r68470.tar.xz
+2023/10/10 | 232120 | systems/texlive/tlnet/archive/tikz-osci.doc.r68491.tar.xz
+2023/10/10 | 2952 | systems/texlive/tlnet/archive/tikz-osci.r68491.tar.xz
2020/07/14 | 65772 | systems/texlive/tlnet/archive/tikzpackets.doc.r55827.tar.xz
2020/07/14 | 2260 | systems/texlive/tlnet/archive/tikzpackets.r55827.tar.xz
2019/02/28 | 564660 | systems/texlive/tlnet/archive/tikz-page.doc.r42039.tar.xz
@@ -304306,16 +304306,16 @@
2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz
2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz
2023/08/07 | 125713 | systems/texlive/tlnet/install-tl
-2023/10/09 | 5740286 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2023/10/09 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2023/10/09 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/10/10 | 5739739 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/10/10 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/10/10 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2023/05/13 | 5083 | systems/texlive/tlnet/install-tl-windows.bat
-2023/10/09 | 21037994 | systems/texlive/tlnet/install-tl-windows.exe
-2023/10/09 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2023/10/09 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/10/09 | 26029117 | systems/texlive/tlnet/install-tl.zip
-2023/10/09 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/10/09 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/10/10 | 21037851 | systems/texlive/tlnet/install-tl-windows.exe
+2023/10/10 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/10/10 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/10/10 | 26029113 | systems/texlive/tlnet/install-tl.zip
+2023/10/10 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/10/10 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2023/03/19 | 1229 | systems/texlive/tlnet/README.md
2023/03/19 | 0 | systems/texlive/tlnet/TEXLIVE_2023
2023/01/17 | 8401 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -304325,7 +304325,7 @@
2023/01/17 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2023/09/20 | 50622 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2023/10/08 | 7168 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2023/10/09 | 7165 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/08/23 | 221470 | 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
@@ -304367,12 +304367,12 @@
2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2023/10/09 | 18280698 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2023/10/09 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/10/10 | 18284219 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/10/10 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2023/09/18 | 87727 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2023/10/09 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2023/10/09 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/10/09 | 2480712 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/10/10 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/10/10 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/10/10 | 2481360 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2023/06/11 | 42749 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -308283,7 +308283,8 @@
2022/04/23 | 36026 | systems/win32/miktex/tm/packages/autopuncitems__doc.tar.lzma
2022/04/23 | 3225 | systems/win32/miktex/tm/packages/autopuncitems__source.tar.lzma
2022/04/23 | 3283 | systems/win32/miktex/tm/packages/autopuncitems.tar.lzma
-2020/03/12 | 271445 | systems/win32/miktex/tm/packages/autosp.tar.lzma
+2023/10/10 | 278116 | systems/win32/miktex/tm/packages/autosp__doc.tar.lzma
+2023/10/10 | 130759 | systems/win32/miktex/tm/packages/autosp__source.tar.lzma
2019/12/21 | 292852 | systems/win32/miktex/tm/packages/auxhook.tar.lzma
2006/09/28 | 276931 | systems/win32/miktex/tm/packages/avantgar.cab
2014/10/21 | 185999 | systems/win32/miktex/tm/packages/avremu.tar.lzma
@@ -308881,8 +308882,8 @@
2023/02/23 | 157263 | systems/win32/miktex/tm/packages/cascade__doc.tar.lzma
2023/02/23 | 9071 | systems/win32/miktex/tm/packages/cascade__source.tar.lzma
2023/02/23 | 2809 | systems/win32/miktex/tm/packages/cascade.tar.lzma
-2023/10/07 | 747779 | systems/win32/miktex/tm/packages/cascadia-code__doc.tar.lzma
-2023/10/07 | 13249053 | systems/win32/miktex/tm/packages/cascadia-code.tar.lzma
+2023/10/10 | 747768 | systems/win32/miktex/tm/packages/cascadia-code__doc.tar.lzma
+2023/10/10 | 5728981 | systems/win32/miktex/tm/packages/cascadia-code.tar.lzma
2012/01/25 | 97864 | systems/win32/miktex/tm/packages/cascadilla.tar.lzma
2020/04/04 | 344777 | systems/win32/miktex/tm/packages/cases.tar.lzma
2018/10/23 | 59774 | systems/win32/miktex/tm/packages/casiofont.tar.lzma
@@ -310058,7 +310059,7 @@
2022/11/01 | 5115 | 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
-2023/10/08 | 770567 | systems/win32/miktex/tm/packages/files.csv.lzma
+2023/10/10 | 766556 | 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
@@ -310853,9 +310854,9 @@
2022/10/15 | 693381 | systems/win32/miktex/tm/packages/japanese-mathformulas__doc.tar.lzma
2022/10/15 | 7673 | systems/win32/miktex/tm/packages/japanese-mathformulas__source.tar.lzma
2022/10/15 | 22087 | systems/win32/miktex/tm/packages/japanese-mathformulas.tar.lzma
-2023/07/04 | 12117 | systems/win32/miktex/tm/packages/japanese-otf__doc.tar.lzma
-2023/07/04 | 100188 | systems/win32/miktex/tm/packages/japanese-otf__source.tar.lzma
-2023/07/04 | 377560 | systems/win32/miktex/tm/packages/japanese-otf.tar.lzma
+2023/10/10 | 12284 | systems/win32/miktex/tm/packages/japanese-otf__doc.tar.lzma
+2023/10/10 | 101497 | systems/win32/miktex/tm/packages/japanese-otf__source.tar.lzma
+2023/10/10 | 376737 | systems/win32/miktex/tm/packages/japanese-otf.tar.lzma
2016/07/20 | 37923 | systems/win32/miktex/tm/packages/jasthesis.tar.lzma
2023/06/23 | 175177 | systems/win32/miktex/tm/packages/javascripthttp__doc.tar.lzma
2023/06/23 | 3608 | systems/win32/miktex/tm/packages/javascripthttp__source.tar.lzma
@@ -311992,9 +311993,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
2023/10/05 | 45827 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma
-2023/10/08 | 334631 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2023/10/08 | 1954991 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2023/10/08 | 1687764 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2023/10/10 | 334799 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2023/10/10 | 1952183 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2023/10/10 | 1684896 | 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
2023/10/05 | 14579 | 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
@@ -312130,9 +312131,9 @@
2010/03/30 | 286752 | systems/win32/miktex/tm/packages/mslapa.tar.lzma
2021/06/06 | 11678 | systems/win32/miktex/tm/packages/ms__source.tar.lzma
2021/06/06 | 3254 | systems/win32/miktex/tm/packages/ms.tar.lzma
-2023/08/19 | 113052 | systems/win32/miktex/tm/packages/msu-thesis__doc.tar.lzma
-2023/08/19 | 429379 | systems/win32/miktex/tm/packages/msu-thesis__source.tar.lzma
-2023/08/19 | 13436 | systems/win32/miktex/tm/packages/msu-thesis.tar.lzma
+2023/10/10 | 113014 | systems/win32/miktex/tm/packages/msu-thesis__doc.tar.lzma
+2023/10/10 | 429334 | systems/win32/miktex/tm/packages/msu-thesis__source.tar.lzma
+2023/10/10 | 13485 | systems/win32/miktex/tm/packages/msu-thesis.tar.lzma
2010/12/23 | 362698 | systems/win32/miktex/tm/packages/msuthesis.tar.lzma
2001/05/14 | 14125 | systems/win32/miktex/tm/packages/mtbe.tar.lzma
2010/04/27 | 164556 | systems/win32/miktex/tm/packages/mtgreek.tar.lzma
@@ -312176,11 +312177,11 @@
2023/09/10 | 5322 | systems/win32/miktex/tm/packages/musicography.tar.lzma
2018/05/02 | 436189 | systems/win32/miktex/tm/packages/musikui.tar.lzma
2011/03/10 | 163283 | systems/win32/miktex/tm/packages/musixguit.tar.lzma
-2023/01/13 | 2126784 | systems/win32/miktex/tm/packages/musixtex__doc.tar.lzma
+2023/10/10 | 2135265 | systems/win32/miktex/tm/packages/musixtex__doc.tar.lzma
2023/01/13 | 314143 | systems/win32/miktex/tm/packages/musixtex-fonts__doc.tar.lzma
2023/01/13 | 5140740 | systems/win32/miktex/tm/packages/musixtex-fonts.tar.lzma
2021/07/06 | 9674 | systems/win32/miktex/tm/packages/musixtex__source.tar.lzma
-2023/01/13 | 105116 | systems/win32/miktex/tm/packages/musixtex.tar.lzma
+2023/10/10 | 105739 | systems/win32/miktex/tm/packages/musixtex.tar.lzma
2011/12/19 | 532973 | systems/win32/miktex/tm/packages/musuos.tar.lzma
2011/08/31 | 8268 | systems/win32/miktex/tm/packages/muthesis.tar.lzma
2013/03/28 | 158383 | systems/win32/miktex/tm/packages/mversion.tar.lzma
@@ -312272,102 +312273,102 @@
2022/11/01 | 230073 | systems/win32/miktex/tm/packages/newverbs__doc.tar.lzma
2022/11/01 | 7969 | systems/win32/miktex/tm/packages/newverbs__source.tar.lzma
2022/11/01 | 3030 | systems/win32/miktex/tm/packages/newverbs.tar.lzma
-2023/10/08 | 770584 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2023/10/08 | 36713 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2023/10/08 | 1172939 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2023/10/08 | 32099 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2023/10/08 | 36809 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2023/10/08 | 67459 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2023/10/08 | 103554 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2023/10/08 | 78393 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2023/10/08 | 31556 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2023/10/08 | 395303 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2023/10/08 | 40373 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2023/10/08 | 59315 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2023/10/08 | 272211 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2023/10/08 | 221509 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
-2023/10/08 | 106511 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2023/10/08 | 25593 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2023/10/08 | 472997 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2023/10/08 | 54129 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2023/10/08 | 330156 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2023/10/08 | 47385 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2023/10/08 | 137750 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2023/10/08 | 1438037 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2023/10/08 | 104443 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2023/10/08 | 49719 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2023/10/08 | 29142 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2023/10/08 | 77297 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2023/10/08 | 160037 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2023/10/08 | 81517 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2023/10/08 | 82245 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2023/10/08 | 305367 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2023/10/08 | 25612 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2023/10/08 | 105617 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2023/10/08 | 73395 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2023/10/08 | 117789 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2023/10/08 | 44336 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2023/10/08 | 698698 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2023/10/08 | 249314 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
-2023/10/08 | 217395 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2023/10/08 | 109939 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2023/10/08 | 19996 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2023/10/08 | 32866 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2023/10/08 | 707458 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2023/10/08 | 603024 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2023/10/08 | 530336 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2023/10/08 | 104110 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2023/10/08 | 2018396 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2023/10/08 | 82013 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2023/10/08 | 33844 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2023/10/08 | 8882 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2023/10/08 | 232113 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2023/10/08 | 287532 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2023/10/08 | 108495 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2023/10/08 | 141977 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2023/10/08 | 291213 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2023/10/08 | 182747 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2023/10/08 | 55917 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2023/10/08 | 35345 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2023/10/08 | 44107 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2023/10/08 | 48284 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2023/10/08 | 52619 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2023/10/08 | 218867 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2023/10/08 | 43149 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
-2023/10/08 | 829713 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2023/10/08 | 203204 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2023/10/08 | 245915 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2023/10/08 | 88653 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2023/10/08 | 1341797 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2023/10/08 | 24151 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2023/10/08 | 37613 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2023/10/08 | 75149 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2023/10/08 | 60978 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2023/10/08 | 499490 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2023/10/08 | 1531292 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2023/10/08 | 54816 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2023/10/08 | 65110 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2023/10/08 | 27178 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2023/10/08 | 19951 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2023/10/08 | 73413 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2023/10/08 | 174046 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2023/10/08 | 69799 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2023/10/08 | 112399 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2023/10/08 | 2844859 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2023/10/08 | 64502 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2023/10/08 | 44116 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2023/10/08 | 33863 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2023/10/08 | 76151 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2023/10/08 | 351820 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2023/10/08 | 58936 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2023/10/08 | 606321 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2023/10/08 | 45896 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2023/10/08 | 334731 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2023/10/08 | 1953396 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2023/10/08 | 1687982 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2023/10/08 | 14611 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2023/10/10 | 766428 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2023/10/10 | 36744 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2023/10/10 | 1171965 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2023/10/10 | 32065 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2023/10/10 | 36805 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2023/10/10 | 67440 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2023/10/10 | 103622 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2023/10/10 | 78361 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2023/10/10 | 31563 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2023/10/10 | 395454 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2023/10/10 | 40401 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2023/10/10 | 59242 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2023/10/10 | 272188 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2023/10/10 | 221451 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2023/10/10 | 106590 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2023/10/10 | 25629 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2023/10/10 | 473015 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2023/10/10 | 54163 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2023/10/10 | 329887 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2023/10/10 | 47432 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2023/10/10 | 137625 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2023/10/10 | 1442511 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2023/10/10 | 104397 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2023/10/10 | 49712 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2023/10/10 | 29108 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2023/10/10 | 77295 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2023/10/10 | 159865 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2023/10/10 | 81627 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2023/10/10 | 82181 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2023/10/10 | 305432 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2023/10/10 | 25601 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2023/10/10 | 105734 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2023/10/10 | 73440 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2023/10/10 | 117784 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2023/10/10 | 44372 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2023/10/10 | 698705 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2023/10/10 | 249317 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2023/10/10 | 217246 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2023/10/10 | 109894 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2023/10/10 | 19994 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2023/10/10 | 32890 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2023/10/10 | 706691 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2023/10/10 | 601987 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2023/10/10 | 530466 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2023/10/10 | 104151 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2023/10/10 | 1993837 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2023/10/10 | 82013 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2023/10/10 | 33858 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2023/10/10 | 8882 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2023/10/10 | 232070 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2023/10/10 | 287579 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2023/10/10 | 108579 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2023/10/10 | 142010 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2023/10/10 | 291611 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2023/10/10 | 182738 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2023/10/10 | 55969 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2023/10/10 | 35357 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2023/10/10 | 44073 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2023/10/10 | 48189 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2023/10/10 | 52695 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2023/10/10 | 218853 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2023/10/10 | 43114 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2023/10/10 | 829866 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2023/10/10 | 203009 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2023/10/10 | 245850 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2023/10/10 | 88657 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2023/10/10 | 1341359 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2023/10/10 | 24126 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2023/10/10 | 37646 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2023/10/10 | 75113 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2023/10/10 | 61030 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2023/10/10 | 499564 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2023/10/10 | 1530778 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2023/10/10 | 54768 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2023/10/10 | 65176 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2023/10/10 | 27112 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2023/10/10 | 19967 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2023/10/10 | 73413 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2023/10/10 | 174204 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2023/10/10 | 69681 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2023/10/10 | 112490 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2023/10/10 | 2844479 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2023/10/10 | 64795 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2023/10/10 | 44091 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2023/10/10 | 33875 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2023/10/10 | 76197 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2023/10/10 | 351802 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2023/10/10 | 58943 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2023/10/10 | 606755 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2023/10/10 | 45935 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2023/10/10 | 334871 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2023/10/10 | 1949822 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2023/10/10 | 1684918 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2023/10/10 | 14600 | 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
-2023/10/08 | 1150 | systems/win32/miktex/tm/packages/next/pr.ini
+2023/10/10 | 1150 | 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
2023/02/23 | 608421 | systems/win32/miktex/tm/packages/nicefilelist__doc.tar.lzma
@@ -312980,7 +312981,7 @@
2023/03/17 | 425296 | systems/win32/miktex/tm/packages/principia__doc.tar.lzma
2023/03/17 | 16206 | systems/win32/miktex/tm/packages/principia__source.tar.lzma
2023/03/17 | 8606 | systems/win32/miktex/tm/packages/principia.tar.lzma
-2023/10/08 | 955 | systems/win32/miktex/tm/packages/pr.ini
+2023/10/10 | 950 | 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
@@ -312989,15 +312990,15 @@
2022/05/15 | 2785 | systems/win32/miktex/tm/packages/prociagssymp.tar.lzma
2011/04/08 | 38187 | systems/win32/miktex/tm/packages/prodint.tar.lzma
2011/01/07 | 399299 | systems/win32/miktex/tm/packages/productbox.tar.lzma
-2023/09/10 | 8712663 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
-2023/09/10 | 5849646 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
-2023/09/10 | 1381290 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
+2023/10/10 | 8883804 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
+2023/10/10 | 5858942 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
+2023/10/10 | 1390824 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
2022/05/04 | 129701 | systems/win32/miktex/tm/packages/proflabo__doc.tar.lzma
2022/05/04 | 5591 | systems/win32/miktex/tm/packages/proflabo__source.tar.lzma
2022/05/04 | 3000 | systems/win32/miktex/tm/packages/proflabo.tar.lzma
-2023/10/01 | 1189328 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
-2023/10/01 | 205470 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
-2023/10/01 | 39293 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
+2023/10/10 | 1214261 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
+2023/10/10 | 206183 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
+2023/10/10 | 41088 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
2023/09/10 | 169777 | systems/win32/miktex/tm/packages/profmaquette__doc.tar.lzma
2023/09/10 | 9586 | systems/win32/miktex/tm/packages/profmaquette__source.tar.lzma
2023/09/10 | 13954 | systems/win32/miktex/tm/packages/profmaquette.tar.lzma
@@ -313537,9 +313538,9 @@
2023/09/03 | 516829 | systems/win32/miktex/tm/packages/schooldocs__doc.tar.lzma
2023/09/03 | 11350 | systems/win32/miktex/tm/packages/schooldocs__source.tar.lzma
2023/09/03 | 3251 | systems/win32/miktex/tm/packages/schooldocs.tar.lzma
-2023/03/27 | 3819606 | systems/win32/miktex/tm/packages/schule__doc.tar.lzma
-2023/03/27 | 39878 | systems/win32/miktex/tm/packages/schule__source.tar.lzma
-2023/03/27 | 40492 | systems/win32/miktex/tm/packages/schule.tar.lzma
+2023/10/10 | 3847054 | systems/win32/miktex/tm/packages/schule__doc.tar.lzma
+2023/10/10 | 40688 | systems/win32/miktex/tm/packages/schule__source.tar.lzma
+2023/10/10 | 40855 | systems/win32/miktex/tm/packages/schule.tar.lzma
2023/06/23 | 283618 | systems/win32/miktex/tm/packages/schulmathematik__doc.tar.lzma
2023/06/23 | 17031 | systems/win32/miktex/tm/packages/schulmathematik__source.tar.lzma
2023/06/23 | 13668 | systems/win32/miktex/tm/packages/schulmathematik.tar.lzma
@@ -313629,9 +313630,9 @@
2019/01/19 | 332245 | systems/win32/miktex/tm/packages/sesstime.tar.lzma
2012/10/17 | 65276 | systems/win32/miktex/tm/packages/setdeck.tar.lzma
2022/12/07 | 197346 | systems/win32/miktex/tm/packages/setspace__doc.tar.lzma
-2023/09/22 | 313046 | systems/win32/miktex/tm/packages/setspaceenhanced__doc.tar.lzma
-2023/09/22 | 8737 | systems/win32/miktex/tm/packages/setspaceenhanced__source.tar.lzma
-2023/09/22 | 2094 | systems/win32/miktex/tm/packages/setspaceenhanced.tar.lzma
+2023/10/10 | 314253 | systems/win32/miktex/tm/packages/setspaceenhanced__doc.tar.lzma
+2023/10/10 | 8757 | systems/win32/miktex/tm/packages/setspaceenhanced__source.tar.lzma
+2023/10/10 | 2104 | systems/win32/miktex/tm/packages/setspaceenhanced.tar.lzma
2022/12/07 | 1714 | systems/win32/miktex/tm/packages/setspace__source.tar.lzma
2022/12/07 | 7535 | systems/win32/miktex/tm/packages/setspace.tar.lzma
2022/04/05 | 171002 | systems/win32/miktex/tm/packages/seu-ml-assign__doc.tar.lzma
@@ -314238,9 +314239,9 @@
2014/01/24 | 77032 | systems/win32/miktex/tm/packages/tikz-opm.tar.lzma
2017/03/13 | 407405 | systems/win32/miktex/tm/packages/tikz-optics.tar.lzma
2015/03/10 | 201857 | systems/win32/miktex/tm/packages/tikzorbital.tar.lzma
-2023/10/08 | 100599 | systems/win32/miktex/tm/packages/tikz-osci__doc.tar.lzma
-2023/10/08 | 3300 | systems/win32/miktex/tm/packages/tikz-osci__source.tar.lzma
-2023/10/08 | 2780 | systems/win32/miktex/tm/packages/tikz-osci.tar.lzma
+2023/10/10 | 229521 | systems/win32/miktex/tm/packages/tikz-osci__doc.tar.lzma
+2023/10/10 | 3799 | systems/win32/miktex/tm/packages/tikz-osci__source.tar.lzma
+2023/10/10 | 3082 | systems/win32/miktex/tm/packages/tikz-osci.tar.lzma
2020/07/19 | 68338 | systems/win32/miktex/tm/packages/tikzpackets.tar.lzma
2012/09/26 | 257701 | systems/win32/miktex/tm/packages/tikzpagenodes.tar.lzma
2016/08/30 | 576860 | systems/win32/miktex/tm/packages/tikz-page.tar.lzma
@@ -315219,7 +315220,7 @@
2014/07/05 | 611 | systems/win32/yandy/README
2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz
2014/07/05 | 1012416 | systems/win32/yandy.zip
-2023/10/10 | 186 | timestamp
+2023/10/11 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index c3c05ca1d1..5c22426985 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index 8915ae9aac..54548eb3fc 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,3 +1,1135 @@
+2023/10/10 | 9 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_simple.txt
+2023/10/10 | 9 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_simple.txt
+2023/10/10 | 9 | support/texlab/crates/parser/src/test_data/latex/citation/citation_missing_brace.txt
+2023/10/10 | 9999 | macros/latex/contrib/l3kernel/l3news10.tex
+2023/10/10 | 998 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_thmtools.txt.snap
+2023/10/10 | 993 | support/texlab/crates/parser/src/test_data/bibtex/samples/knuth_1984.txt
+2023/10/10 | 9916 | macros/latex/contrib/l3backend/l3backend-opacity.dtx
+2023/10/10 | 98903 | macros/latex/contrib/l3kernel/l3seq.dtx
+2023/10/10 | 988 | support/texlab/crates/texlab/src/features/reference.rs
+2023/10/10 | 987 | support/texlab/crates/commands/src/change_env.rs
+2023/10/10 | 980 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_simple.txt.snap
+2023/10/10 | 9804 | graphics/pgf/contrib/circuitikz/tex/pgfcircflow.tex
+2023/10/10 | 975 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@004.txt.snap
+2023/10/10 | 9747 | macros/latex/contrib/l3backend/CHANGELOG.md
+2023/10/10 | 972889 | install/macros/latex/contrib/l3backend.tds.zip
+2023/10/10 | 96 | support/texlab/crates/texlab/tests/lsp/text_document.rs
+2023/10/10 | 967 | support/texlab/crates/completion/src/util.rs
+2023/10/10 | 965 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_definition_simple.txt.snap
+2023/10/10 | 965059 | macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdf
+2023/10/10 | 96044 | macros/latex/contrib/l3experimental/l3galley.dtx
+2023/10/10 | 953 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@005.txt.snap
+2023/10/10 | 9538 | graphics/pgf/contrib/circuitikz/tex/pgfcirccurrent.tex
+2023/10/10 | 950 | systems/win32/miktex/tm/packages/pr.ini
+2023/10/10 | 9479 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__knuth_1984.txt.snap
+2023/10/10 | 946 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_multiple_entries.snap
+2023/10/10 | 9465 | macros/latex/contrib/l3kernel/l3news08.tex
+2023/10/10 | 945 | macros/luatex/generic/luatexja/tool/table_ivd_aj1.lua
+2023/10/10 | 945 | macros/luatex/generic/luatexja/doc/jfm-testf.lua
+2023/10/10 | 937130 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.1.2-body.tex
+2023/10/10 | 934759 | macros/latex/contrib/l3backend.zip
+2023/10/10 | 934368 | macros/latex/contrib/l3backend/l3backend-code.pdf
+2023/10/10 | 932 | support/texlab/crates/texlab/src/features/link.rs
+2023/10/10 | 929934 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.1.2.tex
+2023/10/10 | 92989 | macros/latex/contrib/l3kernel/l3int.dtx
+2023/10/10 | 91738 | macros/latex/contrib/l3kernel/l3skip.dtx
+2023/10/10 | 9169 | support/texlab/crates/symbols/src/workspace/tests.rs
+2023/10/10 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_options.txt.snap
+2023/10/10 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition_optional_arg.txt.snap
+2023/10/10 | 90 | support/texlab/crates/parser/src/test_data/latex/structure/structure_nested.txt
+2023/10/10 | 90884 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx
+2023/10/10 | 9070 | support/texlab/crates/symbols/src/document/tex.rs
+2023/10/10 | 904 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_857.txt.snap
+2023/10/10 | 901 | support/texlab/crates/references/src/label.rs
+2023/10/10 | 900 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_command.txt.snap
+2023/10/10 | 898 | support/texlab/crates/parser/src/test_data/bibtex/samples/kastenholz_2006.txt
+2023/10/10 | 896 | macros/luatex/generic/luatexja/tool/otf-KozMinPr6N-Regular.txt
+2023/10/10 | 8955 | support/texlab/crates/bibtex-utils/src/field/text.rs
+2023/10/10 | 89007 | macros/latex/contrib/l3kernel/l3expan.dtx
+2023/10/10 | 8883804 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
+2023/10/10 | 8882 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2023/10/10 | 8868 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__kastenholz_2006.txt.snap
+2023/10/10 | 88657 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2023/10/10 | 885 | macros/luatex/generic/luatexja/src/patches/lltjp-stfloats.sty
+2023/10/10 | 88106 | macros/latex/contrib/l3kernel/l3coffins.dtx
+2023/10/10 | 87744 | macros/latex/contrib/l3kernel/l3box.dtx
+2023/10/10 | 875 | support/texlab/crates/citeproc/src/lib.rs
+2023/10/10 | 8757 | systems/win32/miktex/tm/packages/setspaceenhanced__source.tar.lzma
+2023/10/10 | 8695 | macros/luatex/generic/luatexja/src/ltj-otf.lua
+2023/10/10 | 8660 | macros/luatex/generic/luatexja/src/ltjltxdoc.dtx
+2023/10/10 | 861 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_options.txt.snap
+2023/10/10 | 860 | support/texlab/crates/parser/src/test_data/bibtex/samples/blom_2021.txt
+2023/10/10 | 849 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error1.txt.snap
+2023/10/10 | 8490 | macros/latex/contrib/l3experimental/CHANGELOG.md
+2023/10/10 | 8481 | macros/latex/contrib/l3kernel/l3news11.tex
+2023/10/10 | 84789 | macros/latex/contrib/l3kernel/l3fp-basics.dtx
+2023/10/10 | 8469 | support/texlab/crates/texlab/tests/lsp/fixture.rs
+2023/10/10 | 84537 | macros/latex/contrib/l3packages/xparse-2018-04-12.sty
+2023/10/10 | 844 | support/texlab/crates/rename/src/label.rs
+2023/10/10 | 844 | support/texlab/crates/definition/src/citation.rs
+2023/10/10 | 8445 | graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty
+2023/10/10 | 84261 | graphics/pgf/contrib/circuitikz/tex/pgfcircquadpoles.tex
+2023/10/10 | 841340 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.0-body.tex
+2023/10/10 | 8392 | support/texlab/crates/texlab/src/server/options.rs
+2023/10/10 | 834142 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.0.tex
+2023/10/10 | 83184 | macros/latex/contrib/l3kernel/l3clist.dtx
+2023/10/10 | 82 | support/texlab/crates/parser/src/test_data/bibtex/comment.txt
+2023/10/10 | 829866 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2023/10/10 | 825 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_incomplete.txt.snap
+2023/10/10 | 825 | macros/luatex/generic/luatexja/src/patches/lltjp-collcell.sty
+2023/10/10 | 82529 | macros/latex/contrib/l3kernel/l3prefixes.pdf
+2023/10/10 | 8249 | support/texlab/crates/texlab/src/util/diagnostics.rs
+2023/10/10 | 82320 | macros/latex/contrib/l3kernel/l3msg.dtx
+2023/10/10 | 821 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__equation_missing_end.txt.snap
+2023/10/10 | 82181 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2023/10/10 | 820 | support/texlab/crates/distro/src/texlive.rs
+2023/10/10 | 82013 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2023/10/10 | 818 | support/texlab/crates/hover/src/label.rs
+2023/10/10 | 81627 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2023/10/10 | 815 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_options.txt.snap
+2023/10/10 | 815036 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdf
+2023/10/10 | 814 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation_missing_begin.txt.snap
+2023/10/10 | 8124 | systems/texlive/tlnet/archive/setspaceenhanced.source.r68493.tar.xz
+2023/10/10 | 8103 | macros/luatex/generic/luatexja/src/jfm-min.lua
+2023/10/10 | 80 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_with_begin.txt
+2023/10/10 | 80228 | macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx
+2023/10/10 | 80215 | macros/latex/contrib/l3packages/xparse-generic.tex
+2023/10/10 | 80195 | macros/latex/contrib/l3kernel/l3names.dtx
+2023/10/10 | 7 | support/texlab/crates/parser/src/test_data/latex/citation/citation_empty.txt
+2023/10/10 | 79 | support/texlab/crates/diagnostics/src/grammar.rs
+2023/10/10 | 79587 | macros/latex/contrib/l3kernel/l3str.dtx
+2023/10/10 | 78361 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2023/10/10 | 7790 | macros/luatex/generic/luatexja/tool/jfm-convert.lua
+2023/10/10 | 778 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_full.txt.snap
+2023/10/10 | 7762 | support/texlab/crates/parser/src/test_data/build_log/007.txt
+2023/10/10 | 7732475 | support/texlab.zip
+2023/10/10 | 772 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_figure.txt.snap
+2023/10/10 | 77295 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2023/10/10 | 770 | support/texlab/crates/diagnostics/src/types.rs
+2023/10/10 | 76 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_options.txt
+2023/10/10 | 7691 | macros/luatex/generic/luatexja/src/ltj-unicode-ccfix.lua
+2023/10/10 | 766556 | systems/win32/miktex/tm/packages/files.csv.lzma
+2023/10/10 | 766428 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2023/10/10 | 7654 | macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty
+2023/10/10 | 762 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_complicated_options.txt.snap
+2023/10/10 | 761 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@issue_809.txt.snap
+2023/10/10 | 76197 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2023/10/10 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_package.txt.snap
+2023/10/10 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_optional.txt.snap
+2023/10/10 | 758 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_simple.txt.snap
+2023/10/10 | 758991 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.6-body.tex
+2023/10/10 | 75735 | macros/latex/contrib/indextools/indextools.dtx
+2023/10/10 | 7555 | macros/latex/contrib/l3packages/CHANGELOG.md
+2023/10/10 | 7546 | macros/luatex/generic/luatexja/src/ltj-math.lua
+2023/10/10 | 7531 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aksin_2006.txt.snap
+2023/10/10 | 7528 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__jain_1999.txt.snap
+2023/10/10 | 751663 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.6.tex
+2023/10/10 | 75113 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2023/10/10 | 751045 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdf
+2023/10/10 | 750 | support/texlab/crates/diagnostics/src/util.rs
+2023/10/10 | 747768 | systems/win32/miktex/tm/packages/cascadia-code__doc.tar.lzma
+2023/10/10 | 7472 | macros/latex/contrib/l3kernel/l3fp-assign.dtx
+2023/10/10 | 746 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@block_comments.txt.snap
+2023/10/10 | 745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_874.txt.snap
+2023/10/10 | 742 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_simple.txt.snap
+2023/10/10 | 74234 | macros/latex/contrib/l3kernel/l3text-case.dtx
+2023/10/10 | 7389071 | macros/latex/contrib/l3kernel/source3.pdf
+2023/10/10 | 73835 | macros/latex/contrib/l3kernel/l3fp-trig.dtx
+2023/10/10 | 7374 | macros/latex/contrib/l3packages/xfp.dtx
+2023/10/10 | 734 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_definition_simple.txt.snap
+2023/10/10 | 73440 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2023/10/10 | 73413 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2023/10/10 | 7322 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__almendro_1998.txt.snap
+2023/10/10 | 728 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_568.txt.snap
+2023/10/10 | 728 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4.sty
+2023/10/10 | 7215 | support/texlab/crates/hover/src/tests.rs
+2023/10/10 | 720 | support/texlab/crates/hover/src/package.rs
+2023/10/10 | 7202 | support/texlab/crates/texlab/src/features/formatting/bibtex_internal.rs
+2023/10/10 | 717 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_options.txt.snap
+2023/10/10 | 716 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@001.txt.snap
+2023/10/10 | 7157 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__combi_2004.txt.snap
+2023/10/10 | 711 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_texlabroot.snap
+2023/10/10 | 710 | support/texlab/crates/distro/src/kpsewhich.rs
+2023/10/10 | 7079 | macros/latex/contrib/l3kernel/l3term-glossary.tex
+2023/10/10 | 706 | support/texlab/crates/parser/src/test_data/bibtex/samples/almendro_1998.txt
+2023/10/10 | 706 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_siblings.txt.snap
+2023/10/10 | 70679 | macros/latex/contrib/l3kernel/l3fp.dtx
+2023/10/10 | 706691 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2023/10/10 | 706088 | macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdf
+2023/10/10 | 70517 | macros/latex/contrib/l3kernel/expl3.dtx
+2023/10/10 | 70482 | macros/latex/contrib/l3kernel/l3prg.dtx
+2023/10/10 | 703 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_options.txt.snap
+2023/10/10 | 702 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_options.txt.snap
+2023/10/10 | 702730 | macros/luatex/generic/luatexja/doc/luatexja-en.pdf
+2023/10/10 | 6 | support/texlab/crates/parser/src/test_data/latex/group/escaped_brackets.txt
+2023/10/10 | 699 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_import.snap
+2023/10/10 | 699 | support/texlab/crates/completion/src/providers.rs
+2023/10/10 | 698705 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2023/10/10 | 6970534 | support/texlab/crates/completion-data/data/completion.json.gz
+2023/10/10 | 69681 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2023/10/10 | 6963 | support/texlab/crates/syntax/src/bibtex/cst.rs
+2023/10/10 | 6952 | macros/luatex/generic/luatexja/src/ltj-pretreat.lua
+2023/10/10 | 694 | support/texlab/crates/syntax/src/bibtex.rs
+2023/10/10 | 69324 | systems/texlive/tlnet/archive/japanese-otf.source.r68492.tar.xz
+2023/10/10 | 6922 | macros/luatex/generic/luatexja/src/addons/luatexja-otf.sty
+2023/10/10 | 69217 | macros/luatex/generic/luatexja/doc/ltjltxdoc.pdf
+2023/10/10 | 690729 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3-body.tex
+2023/10/10 | 689 | support/texlab/crates/syntax/src/latex.rs
+2023/10/10 | 688 | support/texlab/crates/completion/Cargo.toml
+2023/10/10 | 6836 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__erwin_2007.txt.snap
+2023/10/10 | 683433 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.9.3.tex
+2023/10/10 | 682682 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdf
+2023/10/10 | 679 | support/texlab/crates/parser/src/test_data/bibtex/samples/aksin_2006.txt
+2023/10/10 | 679935 | macros/latex/contrib/l3experimental/l3draw-code.pdf
+2023/10/10 | 67781 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx
+2023/10/10 | 676 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description_and_counter.txt.snap
+2023/10/10 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/jain_1999.txt
+2023/10/10 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/combi_2004.txt
+2023/10/10 | 67440 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2023/10/10 | 673 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@003.txt.snap
+2023/10/10 | 6677 | macros/latex/contrib/l3kernel/l3news02.tex
+2023/10/10 | 6644 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__blom_2021.txt.snap
+2023/10/10 | 6571 | macros/luatex/generic/luatexja/src/ltj-latex.sty
+2023/10/10 | 6529 | macros/luatex/generic/luatexja/src/patches/lltjdefs.sty
+2023/10/10 | 65176 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2023/10/10 | 64 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_declaration.txt
+2023/10/10 | 649 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline_double_dollar.txt.snap
+2023/10/10 | 6482 | macros/latex/contrib/l3kernel/l3news03.tex
+2023/10/10 | 647 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default.txt.snap
+2023/10/10 | 64795 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2023/10/10 | 6477 | support/texlab/crates/base-db/src/util/line_index.rs
+2023/10/10 | 6472 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__rivest_1978.txt.snap
+2023/10/10 | 645 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_simple.txt.snap
+2023/10/10 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex
+2023/10/10 | 641 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.8.3.sty
+2023/10/10 | 6414 | macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx
+2023/10/10 | 640 | support/texlab/crates/syntax/src/bibtex/kind.rs
+2023/10/10 | 635 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.7.sty
+2023/10/10 | 635 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.6.sty
+2023/10/10 | 63555 | macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx
+2023/10/10 | 633 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.6.sty
+2023/10/10 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.2.7.sty
+2023/10/10 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.1.2.sty
+2023/10/10 | 632 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.9.3.sty
+2023/10/10 | 631 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline.txt.snap
+2023/10/10 | 631 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.4.6.sty
+2023/10/10 | 62840 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx
+2023/10/10 | 626 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default_error.txt.snap
+2023/10/10 | 626 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.0.sty
+2023/10/10 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex
+2023/10/10 | 624 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_command.txt.snap
+2023/10/10 | 6246 | macros/luatex/generic/luatexja/src/ltj-base.sty
+2023/10/10 | 6224 | macros/latex/contrib/l3kernel/l3.ins
+2023/10/10 | 622212 | macros/latex/contrib/l3kernel/expl3.pdf
+2023/10/10 | 619 | support/texlab/texlab.1
+2023/10/10 | 6195 | macros/latex/contrib/l3packages/xparse-2020-10-01.sty
+2023/10/10 | 617 | macros/luatex/generic/luatexja/src/patches/lltjp-array.sty
+2023/10/10 | 615 | support/texlab/crates/parser/src/test_data/bibtex/samples/erwin_2007.txt
+2023/10/10 | 6135 | macros/luatex/generic/luatexja/src/patches/lltjp-tascmac.sty
+2023/10/10 | 612 | support/texlab/crates/hover/src/field_type.rs
+2023/10/10 | 61030 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2023/10/10 | 60 | support/texlab/crates/parser/src/test_data/latex/structure/structure_enum_item.txt
+2023/10/10 | 60 | support/texlab/crates/bibtex-utils/src/field.rs
+2023/10/10 | 608 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote_postnote.txt.snap
+2023/10/10 | 606755 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2023/10/10 | 6060 | macros/luatex/generic/luatexja/tool/kyoikukanjiChars.tex
+2023/10/10 | 60383 | macros/latex/contrib/l3kernel/l3prop.dtx
+2023/10/10 | 601987 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2023/10/10 | 6018 | support/texlab/crates/texlab/src/util/capabilities.rs
+2023/10/10 | 59625 | macros/latex/contrib/l3packages/xparse.dtx
+2023/10/10 | 594 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_bibtex.snap
+2023/10/10 | 594477 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdf
+2023/10/10 | 5931 | macros/luatex/generic/luatexja/src/ltj-lotf_aux.lua
+2023/10/10 | 59242 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2023/10/10 | 590327 | macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdf
+2023/10/10 | 5900 | support/texlab/crates/base-db/src/util/label.rs
+2023/10/10 | 58943 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2023/10/10 | 588 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error2.txt.snap
+2023/10/10 | 588246 | macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdf
+2023/10/10 | 5864 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__betram_1996.txt.snap
+2023/10/10 | 5858942 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
+2023/10/10 | 5850 | macros/luatex/generic/luatexja/src/patches/lltjp-fontspec.sty
+2023/10/10 | 58408 | support/texlab/crates/base-db/src/data.rs
+2023/10/10 | 583 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple_package.snap
+2023/10/10 | 5838 | support/texlab/crates/base-db/src/graph.rs
+2023/10/10 | 583748 | macros/latex/contrib/indextools.zip
+2023/10/10 | 58140 | macros/luatex/generic/luatexja/doc/luatexja-ruby.tex
+2023/10/10 | 580 | macros/luatex/generic/luatexja/tool/blocks2defcharrange.rb
+2023/10/10 | 58083 | macros/latex/contrib/l3experimental/xgalley.dtx
+2023/10/10 | 577176 | macros/latex/contrib/indextools/indextools.pdf
+2023/10/10 | 5739739 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/10/10 | 5728981 | systems/win32/miktex/tm/packages/cascadia-code.tar.lzma
+2023/10/10 | 57153 | graphics/pgf/contrib/circuitikz/tex/pgfcircmonopoles.tex
+2023/10/10 | 5684 | support/texlab/crates/parser/src/build_log.rs
+2023/10/10 | 566776 | macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdf
+2023/10/10 | 565 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_invalid_nesting.txt.snap
+2023/10/10 | 5653 | macros/latex/contrib/l3experimental/l3draw-layers.dtx
+2023/10/10 | 5645 | support/texlab/crates/symbols/src/workspace/sort.rs
+2023/10/10 | 563 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_number.txt.snap
+2023/10/10 | 561 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation.snap
+2023/10/10 | 560 | support/texlab/crates/base-db/src/lib.rs
+2023/10/10 | 55 | support/texlab/crates/parser/src/test_data/latex/issue_857.txt
+2023/10/10 | 55969 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2023/10/10 | 558 | support/texlab/crates/commands/Cargo.toml
+2023/10/10 | 558915 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdf
+2023/10/10 | 557 | support/texlab/crates/parser/src/test_data/bibtex/samples/rivest_1978.txt
+2023/10/10 | 557935 | macros/latex/contrib/l3kernel/l3doc.pdf
+2023/10/10 | 556 | support/texlab/crates/parser/src/test_data/bibtex/samples/betram_1996.txt
+2023/10/10 | 555 | support/texlab/crates/texlab/src/features/link/include.rs
+2023/10/10 | 5553 | support/texlab/crates/base-db/src/util/queries.rs
+2023/10/10 | 55401 | macros/luatex/generic/luatexja/src/ltj-jfmglue.lua
+2023/10/10 | 5533 | support/texlab/crates/completion/src/lib.rs
+2023/10/10 | 552 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_options.txt.snap
+2023/10/10 | 551 | macros/luatex/generic/luatexja/tool/jfm-readable.rb
+2023/10/10 | 550 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__begin_environment_without_snippet_support.snap
+2023/10/10 | 549 | macros/latex/contrib/l3backend/README.md
+2023/10/10 | 54768 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2023/10/10 | 544 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple_end.snap
+2023/10/10 | 544283 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdf
+2023/10/10 | 54427 | macros/luatex/generic/luatexja/src/ltj-jisx0208.lua
+2023/10/10 | 543188 | macros/luatex/generic/luatexja/doc/luatexja.dtx
+2023/10/10 | 5429 | macros/latex/contrib/l3kernel/l3news04.tex
+2023/10/10 | 542008 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdf
+2023/10/10 | 54163 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2023/10/10 | 541082 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex
+2023/10/10 | 5386 | support/texlab/crates/parser/src/latex/lexer/commands.rs
+2023/10/10 | 5374 | support/texlab/crates/base-db/src/document.rs
+2023/10/10 | 537398 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdf
+2023/10/10 | 536 | support/texlab/crates/texlab/src/features/highlight.rs
+2023/10/10 | 535 | support/texlab/crates/hover/src/entry_type.rs
+2023/10/10 | 534533 | macros/latex/contrib/l3packages/xparse.pdf
+2023/10/10 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description.txt.snap
+2023/10/10 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_counter.txt.snap
+2023/10/10 | 532070 | macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdf
+2023/10/10 | 530466 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2023/10/10 | 5302 | macros/luatex/generic/luatexja/src/addons/luatexja-adjust.sty
+2023/10/10 | 52 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_command.txt
+2023/10/10 | 52 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested_missing_braces.txt
+2023/10/10 | 52846 | macros/latex/contrib/l3kernel/CHANGELOG.md
+2023/10/10 | 526 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_828.txt.snap
+2023/10/10 | 52695 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2023/10/10 | 52600 | graphics/pgf/contrib/circuitikz/doc/changelog.tex
+2023/10/10 | 5230 | macros/luatex/generic/luatexja/src/ltj-debug.lua
+2023/10/10 | 520 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_wrap_long_lines.snap
+2023/10/10 | 520 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal.txt.snap
+2023/10/10 | 51 | support/texlab/crates/parser/src/test_data/latex/issue_828.txt
+2023/10/10 | 51 | support/texlab/crates/parser/src/test_data/latex/issue_568.txt
+2023/10/10 | 517 | support/texlab/crates/parser/src/test_data/bibtex/samples/matuz_1990.txt
+2023/10/10 | 517831 | macros/latex/contrib/l3experimental/l3draw.pdf
+2023/10/10 | 516622 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdf
+2023/10/10 | 515 | support/texlab/crates/base-db/Cargo.toml
+2023/10/10 | 515760 | macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdf
+2023/10/10 | 512 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_857_1.snap
+2023/10/10 | 51081 | macros/latex/contrib/l3kernel/l3fp-extended.dtx
+2023/10/10 | 50 | support/texlab/crates/parser/src/test_data/latex/environment/environment_asymptote.txt
+2023/10/10 | 50 | support/texlab/crates/parser/src/test_data/bibtex/issue_809.txt
+2023/10/10 | 50952 | macros/latex/contrib/l3backend/l3backend-pdf.dtx
+2023/10/10 | 5088 | graphics/pgf/contrib/circuitikz/README.md
+2023/10/10 | 507 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_simple.txt.snap
+2023/10/10 | 5060 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__matuz_1990.txt.snap
+2023/10/10 | 50591 | support/texlab/Cargo.lock
+2023/10/10 | 504 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_argc.txt.snap
+2023/10/10 | 502 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_simple.txt.snap
+2023/10/10 | 50152 | macros/luatex/generic/luatexja/src/patches/lltjfont.sty
+2023/10/10 | 4 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets_with_group.txt
+2023/10/10 | 4 | support/texlab/crates/parser/src/test_data/latex/generic_command_empty.txt
+2023/10/10 | 499 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal_error.txt.snap
+2023/10/10 | 499564 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2023/10/10 | 4977 | macros/latex/contrib/l3kernel/l3news07.tex
+2023/10/10 | 49712 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2023/10/10 | 49600 | macros/latex/contrib/l3kernel/l3text.dtx
+2023/10/10 | 494 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple.snap
+2023/10/10 | 4937 | macros/latex/contrib/l3kernel/l3news01.tex
+2023/10/10 | 49311 | macros/latex/contrib/l3kernel/l3fp-expo.dtx
+2023/10/10 | 492 | support/texlab/crates/bibtex-utils/Cargo.toml
+2023/10/10 | 4922 | macros/latex/contrib/l3backend/l3backend.ins
+2023/10/10 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/10/10 | 48 | support/texlab/crates/parser/src/test_data/latex/block_comments.txt
+2023/10/10 | 489 | support/texlab/crates/citeproc/Cargo.toml
+2023/10/10 | 48961 | macros/luatex/generic/luatexja/src/ltj-jfont.lua
+2023/10/10 | 4890 | macros/latex/contrib/l3kernel/l3news.tex
+2023/10/10 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/10/10 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/10/10 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/10/10 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/10/10 | 486 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_closed.snap
+2023/10/10 | 485 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_open.snap
+2023/10/10 | 485 | support/texlab/crates/syntax/src/lib.rs
+2023/10/10 | 483 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_multiple.txt.snap
+2023/10/10 | 483 | support/texlab/crates/hover/Cargo.toml
+2023/10/10 | 482959 | macros/latex/contrib/l3packages/xfrac.pdf
+2023/10/10 | 48189 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2023/10/10 | 4808 | macros/luatex/generic/luatexja/src/jfm-tmin.lua
+2023/10/10 | 47 | support/texlab/crates/texlab/tests/lsp/main.rs
+2023/10/10 | 47 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_incomplete.txt
+2023/10/10 | 47 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition.txt
+2023/10/10 | 479 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_error.txt.snap
+2023/10/10 | 477 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_input_path_brackets.txt.snap
+2023/10/10 | 4761 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.ins
+2023/10/10 | 4755 | support/texlab/crates/completion/src/providers/include.rs
+2023/10/10 | 47432 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2023/10/10 | 4730 | support/texlab/crates/citeproc/src/entry.rs
+2023/10/10 | 473015 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2023/10/10 | 472 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote.txt.snap
+2023/10/10 | 47274 | macros/latex/contrib/l3kernel/l3prefixes.csv
+2023/10/10 | 47216 | macros/latex/contrib/l3kernel/l3fp-aux.dtx
+2023/10/10 | 4716 | macros/latex/contrib/l3kernel/l3news05.tex
+2023/10/10 | 470 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_simple.txt.snap
+2023/10/10 | 464 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_open_brace.snap
+2023/10/10 | 464 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@007.txt.snap
+2023/10/10 | 463827 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdf
+2023/10/10 | 460 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_args.txt.snap
+2023/10/10 | 460413 | macros/luatex/generic/luatexja/doc/ltjsclasses.pdf
+2023/10/10 | 459 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_closed_brace.snap
+2023/10/10 | 459 | support/texlab/crates/symbols/Cargo.toml
+2023/10/10 | 45935 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2023/10/10 | 457 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error3.txt.snap
+2023/10/10 | 4574 | macros/latex/contrib/l3kernel/l3legacy.dtx
+2023/10/10 | 456 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_multiple.txt.snap
+2023/10/10 | 453 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_multiple_keys.txt.snap
+2023/10/10 | 452 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_closed_brace.snap
+2023/10/10 | 452 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_line_break.txt.snap
+2023/10/10 | 4521 | macros/luatex/generic/luatexja/src/ltj-stack.lua
+2023/10/10 | 451 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_open_brace.snap
+2023/10/10 | 450604 | macros/latex/contrib/l3packages/xtemplate.pdf
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/include/class_include_options.txt
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_simple.txt
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition_optional_arg.txt
+2023/10/10 | 44 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_simple.txt
+2023/10/10 | 449 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_closed_brace.snap
+2023/10/10 | 448 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_open_brace.snap
+2023/10/10 | 448 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@002.txt.snap
+2023/10/10 | 4480 | macros/luatex/generic/luatexja/src/ltj-plain.sty
+2023/10/10 | 447 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path.txt.snap
+2023/10/10 | 445 | support/texlab/crates/base-db/src/util/regex_filter.rs
+2023/10/10 | 4457163 | install/macros/latex/contrib/l3experimental.tds.zip
+2023/10/10 | 4452 | macros/luatex/generic/luatexja/doc/jfm-ujisc33.lua
+2023/10/10 | 4448 | macros/latex/contrib/l3experimental/l3draw-state.dtx
+2023/10/10 | 44372 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2023/10/10 | 4432 | support/texlab/crates/test-utils/src/fixture.rs
+2023/10/10 | 441 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_field_name.snap
+2023/10/10 | 4419131 | macros/latex/contrib/l3experimental.zip
+2023/10/10 | 44178 | support/texlab/crates/completion/src/tests.rs
+2023/10/10 | 44091 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2023/10/10 | 44073 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2023/10/10 | 440395 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdf
+2023/10/10 | 43 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested.txt
+2023/10/10 | 4323 | macros/latex/contrib/l3experimental/l3draw-boxes.dtx
+2023/10/10 | 43223 | macros/latex/contrib/l3kernel/l3debug.dtx
+2023/10/10 | 43114 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2023/10/10 | 4308 | macros/luatex/generic/luatexja/src/patches/lltjp-atbegshi.sty
+2023/10/10 | 4300 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_745.txt.snap
+2023/10/10 | 430052 | systems/texlive/tlnet/archive/texlive-scripts.doc.r68489.tar.xz
+2023/10/10 | 42 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_options.txt
+2023/10/10 | 429 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_equality_sign.txt.snap
+2023/10/10 | 4297 | support/texlab/crates/completion/src/providers/environment.rs
+2023/10/10 | 429334 | systems/win32/miktex/tm/packages/msu-thesis__source.tar.lzma
+2023/10/10 | 4284 | macros/latex/contrib/l3experimental/README.md
+2023/10/10 | 42776 | systems/texlive/tlnet/archive/japanese-otf.doc.r68492.tar.xz
+2023/10/10 | 427143 | macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdf
+2023/10/10 | 4262 | macros/luatex/generic/luatexja/tool/kyoikukanji.txt
+2023/10/10 | 425 | macros/luatex/generic/luatexja/src/patches/lltjp-everyshi.sty
+2023/10/10 | 42560 | macros/latex/contrib/l3experimental/l3draw.dtx
+2023/10/10 | 4254 | support/texlab/crates/completion/src/providers/command.rs
+2023/10/10 | 42538 | support/texlab/crates/texlab/src/server.rs
+2023/10/10 | 42321 | graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex
+2023/10/10 | 422295 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.8.3-body.tex
+2023/10/10 | 421 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_closed.snap
+2023/10/10 | 4215 | macros/luatex/generic/luatexja/src/ltj-charrange.lua
+2023/10/10 | 420 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_open.snap
+2023/10/10 | 41 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_thmtools.txt
+2023/10/10 | 41 | support/texlab/crates/parser/src/test_data/latex/include/package_include_options.txt
+2023/10/10 | 418 | graphics/pgf/contrib/circuitikz/doc/compatibility.tex
+2023/10/10 | 416850 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-0.8.3.tex
+2023/10/10 | 414 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_word.snap
+2023/10/10 | 4144 | support/texlab/crates/diagnostics/src/grammar/tex.rs
+2023/10/10 | 41343 | macros/latex/contrib/l3backend/l3backend-color.dtx
+2023/10/10 | 4130 | support/texlab/crates/parser/src/test_data/build_log/006.txt
+2023/10/10 | 4126 | support/texlab/crates/texlab/src/features/symbols.rs
+2023/10/10 | 4126 | macros/luatex/generic/luatexja/src/patches/lltjp-siunitx.sty
+2023/10/10 | 412557 | macros/latex/contrib/l3packages/l3keys2e.pdf
+2023/10/10 | 4115543 | biblio/ctan-bibdata.zip
+2023/10/10 | 41088 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
+2023/10/10 | 408 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_simple.snap
+2023/10/10 | 408917 | macros/latex/contrib/l3experimental/l3galley.pdf
+2023/10/10 | 40855 | systems/win32/miktex/tm/packages/schule.tar.lzma
+2023/10/10 | 407 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_open_brace.snap
+2023/10/10 | 407 | support/texlab/crates/parser/Cargo.toml
+2023/10/10 | 40728 | macros/latex/contrib/l3kernel/l3sort.dtx
+2023/10/10 | 40688 | systems/win32/miktex/tm/packages/schule__source.tar.lzma
+2023/10/10 | 405 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_simple.snap
+2023/10/10 | 405 | macros/latex/contrib/non-decimal-units/README.md
+2023/10/10 | 40540 | macros/luatex/generic/luatexja/src/ltj-direction.lua
+2023/10/10 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_open_brace.snap
+2023/10/10 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_simple.snap
+2023/10/10 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_open_brace.snap
+2023/10/10 | 404 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_redundant_comma.txt.snap
+2023/10/10 | 4047 | support/texlab/crates/texlab/src/util/chktex.rs
+2023/10/10 | 404408 | macros/latex/contrib/l3experimental/l3bitset.pdf
+2023/10/10 | 4041 | macros/latex/contrib/pdfmanagement-testphase/l3ref-tmp.sty
+2023/10/10 | 40401 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2023/10/10 | 403 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_open_brace.snap
+2023/10/10 | 4038 | support/texlab/crates/base-db/src/config.rs
+2023/10/10 | 403681 | macros/luatex/generic/luatexja/doc/ltjclasses.pdf
+2023/10/10 | 403567 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.7-body.tex
+2023/10/10 | 4011 | macros/latex/contrib/l3experimental/l3opacity.dtx
+2023/10/10 | 4004 | support/texlab/crates/texlab/src/util/lsp_enums.rs
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_options.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_complicated_options.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_definition_simple.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error1.txt
+2023/10/10 | 39 | support/texlab/crates/parser/src/test_data/latex/caption/caption_figure.txt
+2023/10/10 | 399 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_empty.snap
+2023/10/10 | 396222 | macros/latex/contrib/l3kernel/l3news.pdf
+2023/10/10 | 395454 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2023/10/10 | 394 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_only_name.txt.snap
+2023/10/10 | 394 | support/texlab/crates/diagnostics/Cargo.toml
+2023/10/10 | 394481 | macros/latex/contrib/l3experimental/xcoffins.pdf
+2023/10/10 | 393884 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.6-body.tex
+2023/10/10 | 39366 | macros/latex/contrib/l3packages/xfrac.dtx
+2023/10/10 | 392 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_931.txt.snap
+2023/10/10 | 391680 | macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf
+2023/10/10 | 3901 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex
+2023/10/10 | 389 | support/texlab/crates/commands/src/lib.rs
+2023/10/10 | 387 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_simple.txt.snap
+2023/10/10 | 3879 | macros/luatex/generic/luatexja/src/ltj-lineskip.lua
+2023/10/10 | 386 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_simple.txt.snap
+2023/10/10 | 386566 | macros/latex/contrib/pdfmanagement-testphase/output-patches-tmp-ltx.pdf
+2023/10/10 | 385 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__verbatim_include_simple.txt.snap
+2023/10/10 | 385 | macros/luatex/generic/luatexja/src/ltjsclasses.ins
+2023/10/10 | 384 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_at_empty.snap
+2023/10/10 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__tikz_library_import_simple.txt.snap
+2023/10/10 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__escaped_brackets.txt.snap
+2023/10/10 | 3847054 | systems/win32/miktex/tm/packages/schule__doc.tar.lzma
+2023/10/10 | 384633 | graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex
+2023/10/10 | 3838 | support/texlab/crates/commands/src/build.rs
+2023/10/10 | 383648 | macros/latex/contrib/l3experimental/l3graphics.pdf
+2023/10/10 | 3830000 | macros/luatex/generic/luatexja.zip
+2023/10/10 | 382 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__pgf_library_import_simple.txt.snap
+2023/10/10 | 3828 | support/texlab/README.md
+2023/10/10 | 380 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_incomplete.txt.snap
+2023/10/10 | 380190 | support/texlab/images/demo.gif
+2023/10/10 | 37 | support/texlab/crates/parser/src/test_data/latex/issue_874.txt
+2023/10/10 | 379 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation.txt.snap
+2023/10/10 | 3799 | systems/win32/miktex/tm/packages/tikz-osci__source.tar.lzma
+2023/10/10 | 3797 | macros/luatex/generic/luatexja/README
+2023/10/10 | 378 | support/texlab/crates/definition/Cargo.toml
+2023/10/10 | 377 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl.txt.snap
+2023/10/10 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_simple.txt.snap
+2023/10/10 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__bibtex_include_simple.txt.snap
+2023/10/10 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_no_impl.txt.snap
+2023/10/10 | 376737 | systems/win32/miktex/tm/packages/japanese-otf.tar.lzma
+2023/10/10 | 37646 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2023/10/10 | 375 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_simple.txt.snap
+2023/10/10 | 3756 | macros/luatex/generic/luatexja/src/ltj-compat.lua
+2023/10/10 | 373 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_simple.txt.snap
+2023/10/10 | 373 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@preamble.txt.snap
+2023/10/10 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_simple.txt.snap
+2023/10/10 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_simple.txt.snap
+2023/10/10 | 3712530 | biblio/ctan-bibdata/ctan.pdf
+2023/10/10 | 368 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_import.snap
+2023/10/10 | 36805 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2023/10/10 | 368030 | macros/latex/contrib/l3experimental/l3str-format.pdf
+2023/10/10 | 36744 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2023/10/10 | 3667 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aho_2006.txt.snap
+2023/10/10 | 365 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_simple.txt.snap
+2023/10/10 | 3650 | macros/luatex/generic/luatexja/src/ltj-inputbuf.lua
+2023/10/10 | 364117 | graphics/pgf/contrib/circuitikz/tex/circuitikz-0.4-body.tex
+2023/10/10 | 363 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_simple.txt.snap
+2023/10/10 | 36264 | macros/latex/contrib/l3kernel/l3sys.dtx
+2023/10/10 | 361 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_equation.txt.snap
+2023/10/10 | 36026 | macros/latex/contrib/l3experimental/l3draw-points.dtx
+2023/10/10 | 35 | support/texlab/crates/parser/src/test_data/latex/structure/structure_siblings.txt
+2023/10/10 | 35 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_package.txt
+2023/10/10 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_simple.txt.snap
+2023/10/10 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl_error.txt.snap
+2023/10/10 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_reference_simple.txt.snap
+2023/10/10 | 356 | support/texlab/crates/completion-data/Cargo.toml
+2023/10/10 | 35675 | macros/latex/contrib/l3kernel/l3unicode.dtx
+2023/10/10 | 35629 | graphics/pgf/contrib/circuitikz/tex/pgfcircvoltage.tex
+2023/10/10 | 355 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_include.snap
+2023/10/10 | 355 | support/texlab/crates/folding/Cargo.toml
+2023/10/10 | 355 | macros/luatex/generic/luatexja/tool/otf-AdobeMingStd-Light.txt
+2023/10/10 | 355 | macros/luatex/generic/luatexja/doc/luatexja.ins
+2023/10/10 | 35441 | macros/latex/contrib/l3kernel/l3quark.dtx
+2023/10/10 | 353 | support/texlab/crates/rename/Cargo.toml
+2023/10/10 | 35357 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2023/10/10 | 35324 | support/texlab/crates/parser/src/latex.rs
+2023/10/10 | 351 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_environment.snap
+2023/10/10 | 351802 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2023/10/10 | 35149 | support/texlab/LICENSE
+2023/10/10 | 35092 | macros/latex/contrib/l3experimental/xcoffins.dtx
+2023/10/10 | 3501 | support/texlab/crates/completion/src/providers/label.rs
+2023/10/10 | 34 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_options.txt
+2023/10/10 | 349 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_simple.txt.snap
+2023/10/10 | 3491 | support/texlab/crates/references/src/tests.rs
+2023/10/10 | 348054 | macros/latex/contrib/l3experimental/l3sys-shell.pdf
+2023/10/10 | 347 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_789.txt.snap
+2023/10/10 | 347 | support/texlab/Cargo.toml
+2023/10/10 | 3463 | macros/latex/contrib/l3packages/README.md
+2023/10/10 | 3451 | macros/luatex/generic/luatexja/src/luatexja-compat.sty
+2023/10/10 | 344 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_simple.txt.snap
+2023/10/10 | 342 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_star.txt.snap
+2023/10/10 | 34288 | macros/latex/contrib/l3backend/l3backend-draw.dtx
+2023/10/10 | 33 | support/texlab/crates/parser/src/test_data/latex/graphics_path_options.txt
+2023/10/10 | 33 | support/texlab/crates/parser/src/test_data/latex/environment/environment_simple.txt
+2023/10/10 | 33 | support/texlab/crates/parser/src/test_data/latex/color/color_definition_simple.txt
+2023/10/10 | 33875 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2023/10/10 | 33858 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2023/10/10 | 33773 | macros/latex/contrib/l3kernel/l3cctab.dtx
+2023/10/10 | 3371 | macros/luatex/generic/luatexja/src/patches/lltjp-xunicode.sty
+2023/10/10 | 336 | support/texlab/crates/references/Cargo.toml
+2023/10/10 | 334871 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2023/10/10 | 334799 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2023/10/10 | 33461 | macros/luatex/generic/luatexja/src/addons/luatexja-ajmacros.sty
+2023/10/10 | 332 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_simple.txt.snap
+2023/10/10 | 332260 | macros/latex/contrib/l3packages/xfp.pdf
+2023/10/10 | 3317797 | install/graphics/pgf/contrib/circuitikz.tds.zip
+2023/10/10 | 3313 | macros/luatex/generic/luatexja/tool/ltj-unicode-ccfix_make2.pl
+2023/10/10 | 33109135 | fonts/haranoaji-extra.zip
+2023/10/10 | 330 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets_with_group.txt.snap
+2023/10/10 | 3301 | support/texlab/crates/completion/src/providers/tikz_library.rs
+2023/10/10 | 32 | support/texlab/crates/parser/src/test_data/latex/graphics_path_command.txt
+2023/10/10 | 32 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_options.txt
+2023/10/10 | 329887 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2023/10/10 | 32988465 | fonts/haranoaji.zip
+2023/10/10 | 3296870 | graphics/pgf/contrib/circuitikz.zip
+2023/10/10 | 32890 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2023/10/10 | 3288 | support/texlab/crates/diagnostics/src/tests.rs
+2023/10/10 | 32826 | graphics/pgf/contrib/circuitikz/tex/pgfcircshapes.tex
+2023/10/10 | 326 | macros/luatex/generic/luatexja/tool/otf-AdobeMyungjoStd-Medium.txt
+2023/10/10 | 3265 | support/texlab/crates/completion-data/src/lib.rs
+2023/10/10 | 3263 | support/texlab/crates/diagnostics/src/build_log.rs
+2023/10/10 | 32546 | macros/latex/contrib/l3experimental/l3draw-paths.dtx
+2023/10/10 | 324 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_empty.txt.snap
+2023/10/10 | 323 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_acronym.snap
+2023/10/10 | 323 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_empty.txt.snap
+2023/10/10 | 3238 | macros/luatex/generic/luatexja/doc/jfm-test.lua
+2023/10/10 | 3225 | support/texlab/crates/folding/src/lib.rs
+2023/10/10 | 3223 | support/texlab/crates/texlab/src/client.rs
+2023/10/10 | 32227 | macros/luatex/generic/luatexja/src/ltj-ruby.lua
+2023/10/10 | 321 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_missing_brace.txt.snap
+2023/10/10 | 3218 | support/texlab/crates/diagnostics/src/grammar/bib.rs
+2023/10/10 | 3207 | support/texlab/crates/commands/src/fwd_search.rs
+2023/10/10 | 32065 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2023/10/10 | 32021 | support/texlab/CHANGELOG.md
+2023/10/10 | 31 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_full.txt
+2023/10/10 | 31 | support/texlab/crates/parser/src/test_data/latex/issue_931.txt
+2023/10/10 | 31 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_simple.txt
+2023/10/10 | 3194 | support/texlab/crates/parser/src/test_data/build_log/001.txt
+2023/10/10 | 3193 | fonts/haranoaji/README
+2023/10/10 | 3193 | fonts/haranoaji-extra/README
+2023/10/10 | 31827 | macros/latex/contrib/l3experimental/l3str-format.dtx
+2023/10/10 | 317 | macros/luatex/generic/luatexja/tool/otf-AdobeSongStd-Light.txt
+2023/10/10 | 316 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_incomplete.txt.snap
+2023/10/10 | 31563 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2023/10/10 | 3150 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-legacy.tex
+2023/10/10 | 314 | support/texlab/crates/parser/src/test_data/bibtex/samples/aho_2006.txt
+2023/10/10 | 314253 | systems/win32/miktex/tm/packages/setspaceenhanced__doc.tar.lzma
+2023/10/10 | 313 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_864.snap
+2023/10/10 | 313660 | systems/texlive/tlnet/archive/setspaceenhanced.doc.r68493.tar.xz
+2023/10/10 | 313597 | macros/latex/contrib/l3experimental/l3opacity.pdf
+2023/10/10 | 312 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_missing_end.txt.snap
+2023/10/10 | 31145 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx
+2023/10/10 | 3100 | macros/luatex/generic/luatexja/tool/table_jisx0208.tex
+2023/10/10 | 30 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_options.txt
+2023/10/10 | 30 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error2.txt
+2023/10/10 | 3093 | support/texlab/crates/commands/src/find_envs.rs
+2023/10/10 | 308535 | macros/latex/contrib/l3experimental/l3benchmark.pdf
+2023/10/10 | 3082 | systems/win32/miktex/tm/packages/tikz-osci.tar.lzma
+2023/10/10 | 3058 | macros/latex/contrib/l3kernel/README.md
+2023/10/10 | 3057 | support/texlab/crates/parser/src/test_data/build_log/004.txt
+2023/10/10 | 305576 | macros/latex/contrib/l3kernel/l3regex.dtx
+2023/10/10 | 305432 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2023/10/10 | 30508 | macros/latex/contrib/l3kernel/l3intarray.dtx
+2023/10/10 | 3027 | support/texlab/crates/diagnostics/src/citations.rs
+2023/10/10 | 3021 | support/texlab/crates/diagnostics/src/labels.rs
+2023/10/10 | 301 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace_multiple.snap
+2023/10/10 | 3009 | support/texlab/crates/texlab/tests/lsp/text_document/formatting.rs
+2023/10/10 | 3009 | support/texlab/crates/parser/src/config.rs
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/parameter.txt
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets.txt
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_braces.txt
+2023/10/10 | 2 | support/texlab/crates/parser/src/test_data/latex/generic_command_escape.txt
+2023/10/10 | 29 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_simple.txt
+2023/10/10 | 29 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_optional.txt
+2023/10/10 | 2998 | support/texlab/crates/definition/src/tests.rs
+2023/10/10 | 299638 | macros/latex/contrib/l3experimental/xgalley.pdf
+2023/10/10 | 29888 | macros/luatex/generic/luatexja/src/luatexja-core.sty
+2023/10/10 | 29765 | macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx
+2023/10/10 | 297251 | graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex
+2023/10/10 | 296260 | macros/latex/contrib/l3kernel/l3styleguide.pdf
+2023/10/10 | 29612 | macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty
+2023/10/10 | 295 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_empty.txt.snap
+2023/10/10 | 29569 | macros/latex/contrib/l3backend/l3backend-graphics.dtx
+2023/10/10 | 2952 | systems/texlive/tlnet/archive/tikz-osci.r68491.tar.xz
+2023/10/10 | 291 | support/texlab/crates/test-utils/Cargo.toml
+2023/10/10 | 291611 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2023/10/10 | 29108 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/include/package_include_multiple.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_simple.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/group/equation_missing_end.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/graphics_path.txt
+2023/10/10 | 28 | support/texlab/crates/parser/src/test_data/latex/equation_missing_begin.txt
+2023/10/10 | 2882 | macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
+2023/10/10 | 287579 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2023/10/10 | 28627 | macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx
+2023/10/10 | 2844479 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2023/10/10 | 2843 | macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
+2023/10/10 | 2834 | support/texlab/crates/parser/src/latex/lexer/types.rs
+2023/10/10 | 2821 | macros/latex/contrib/l3kernel/l3prefixes.tex
+2023/10/10 | 2815719 | biblio/ctan-bibdata/ctan.bib
+2023/10/10 | 280 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-example.tex
+2023/10/10 | 27 | support/texlab/crates/parser/src/test_data/latex/structure/structure_invalid_nesting.txt
+2023/10/10 | 27 | support/texlab/crates/parser/src/test_data/latex/include/verbatim_include_simple.txt
+2023/10/10 | 27 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default.txt
+2023/10/10 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_command_definition.snap
+2023/10/10 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace.snap
+2023/10/10 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_simple.snap
+2023/10/10 | 278 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_open_brace.snap
+2023/10/10 | 278116 | systems/win32/miktex/tm/packages/autosp__doc.tar.lzma
+2023/10/10 | 273 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_command.snap
+2023/10/10 | 27270 | macros/latex/contrib/l3kernel/l3kernel-functions.dtx
+2023/10/10 | 272188 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2023/10/10 | 271 | support/texlab/crates/parser/src/test_data/latex/issue_745.txt
+2023/10/10 | 27112 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2023/10/10 | 27058 | macros/luatex/generic/luatexja/src/lltjext.sty
+2023/10/10 | 26 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description_and_counter.txt
+2023/10/10 | 26 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_no_impl.txt
+2023/10/10 | 26 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default_error.txt
+2023/10/10 | 2665 | support/texlab/crates/bibtex-utils/src/field/date.rs
+2023/10/10 | 265 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_empty.snap
+2023/10/10 | 26550 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx
+2023/10/10 | 26540 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx
+2023/10/10 | 264 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_simple.snap
+2023/10/10 | 263 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_open_brace.snap
+2023/10/10 | 26352 | support/texlab/texlab.pdf
+2023/10/10 | 2612 | support/texlab/crates/completion/src/providers/glossary.rs
+2023/10/10 | 2610 | support/texlab/crates/symbols/src/types.rs
+2023/10/10 | 2609 | support/texlab/crates/texlab/src/server/extensions.rs
+2023/10/10 | 26029113 | systems/texlive/tlnet/install-tl.zip
+2023/10/10 | 25 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_options.txt
+2023/10/10 | 25 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error3.txt
+2023/10/10 | 25 | support/texlab/crates/parser/src/test_data/bibtex/preamble.txt
+2023/10/10 | 2599 | macros/luatex/generic/luatexja/src/jfm-banjiao.lua
+2023/10/10 | 25919 | macros/latex/contrib/l3experimental/l3graphics.dtx
+2023/10/10 | 2586 | support/texlab/texlab.tex
+2023/10/10 | 2586 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_symbol__smoke.snap
+2023/10/10 | 2582 | macros/luatex/generic/luatexja/src/jfm-kaiming.lua
+2023/10/10 | 257 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_class.snap
+2023/10/10 | 2573 | macros/luatex/generic/luatexja/src/jfm-quanjiao.lua
+2023/10/10 | 25629 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2023/10/10 | 25601 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2023/10/10 | 255 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_end.snap
+2023/10/10 | 254696 | systems/texlive/tlnet/archive/japanese-otf.r68492.tar.xz
+2023/10/10 | 2543 | support/texlab/crates/distro/src/lib.rs
+2023/10/10 | 25221 | macros/latex/contrib/l3kernel/l3deprecation.dtx
+2023/10/10 | 2515 | support/texlab/crates/parser/src/test_data/build_log/003.txt
+2023/10/10 | 250 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_begin.snap
+2023/10/10 | 250159 | macros/latex/contrib/l3kernel/l3news09.pdf
+2023/10/10 | 25001 | macros/latex/contrib/l3kernel/source3body.tex
+2023/10/10 | 24 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_simple.txt
+2023/10/10 | 2493 | support/texlab/crates/completion/src/providers/argument.rs
+2023/10/10 | 249317 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2023/10/10 | 248 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error4.txt.snap
+2023/10/10 | 2481 | support/texlab/crates/completion/src/providers/import.rs
+2023/10/10 | 2481360 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/10/10 | 247 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_883.snap
+2023/10/10 | 2467 | support/texlab/crates/distro/src/miktex.rs
+2023/10/10 | 245850 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2023/10/10 | 2455 | support/texlab/crates/parser/src/test_data/build_log/002.txt
+2023/10/10 | 244 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets.txt.snap
+2023/10/10 | 244 | support/texlab/crates/base-db/src/util.rs
+2023/10/10 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@hello_world.txt.snap
+2023/10/10 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_braces.txt.snap
+2023/10/10 | 242906 | macros/latex/contrib/l3kernel/l3syntax-changes.pdf
+2023/10/10 | 24126 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2023/10/10 | 2411 | support/texlab/crates/texlab/src/server/dispatch.rs
+2023/10/10 | 23 | support/texlab/crates/parser/src/test_data/latex/include/class_include_simple.txt
+2023/10/10 | 23 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_simple.txt
+2023/10/10 | 2390 | macros/latex/contrib/l3kernel/l3docstrip.dtx
+2023/10/10 | 23866 | macros/latex/contrib/l3kernel/l3luatex.dtx
+2023/10/10 | 2374 | macros/luatex/generic/luatexja/src/patches/lltjp-unicode-math.sty
+2023/10/10 | 2371 | support/texlab/crates/base-db/src/semantics/bib.rs
+2023/10/10 | 2369 | support/texlab/crates/completion/src/providers/field.rs
+2023/10/10 | 23574 | macros/latex/contrib/l3kernel/l3fp-random.dtx
+2023/10/10 | 234 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@comment.txt.snap
+2023/10/10 | 2340 | macros/luatex/generic/luatexja/src/jfm-jis.lua
+2023/10/10 | 2322 | support/texlab/crates/diagnostics/src/lib.rs
+2023/10/10 | 232120 | systems/texlive/tlnet/archive/tikz-osci.doc.r68491.tar.xz
+2023/10/10 | 2320 | support/texlab/crates/completion/src/util/patterns.rs
+2023/10/10 | 232070 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2023/10/10 | 23009 | macros/latex/contrib/l3kernel/l3fp-logic.dtx
+2023/10/10 | 22 | support/texlab/crates/parser/src/test_data/latex/include/bibtex_include_simple.txt
+2023/10/10 | 22 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_argc.txt
+2023/10/10 | 22 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal.txt
+2023/10/10 | 229521 | systems/win32/miktex/tm/packages/tikz-osci__doc.tar.lzma
+2023/10/10 | 227 | support/texlab/crates/syntax/Cargo.toml
+2023/10/10 | 227 | support/texlab/crates/distro/Cargo.toml
+2023/10/10 | 22793 | macros/luatex/generic/luatexja/src/luatexja.lua
+2023/10/10 | 2276 | support/texlab/crates/completion/src/providers/citations.rs
+2023/10/10 | 226 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_package_ref.snap
+2023/10/10 | 2266 | macros/latex/contrib/l3kernel/source3.tex
+2023/10/10 | 2257270 | install/macros/latex/contrib/l3packages.tds.zip
+2023/10/10 | 223 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple.snap
+2023/10/10 | 2238289 | macros/latex/contrib/l3packages.zip
+2023/10/10 | 22204 | support/texlab/crates/citeproc/src/driver.rs
+2023/10/10 | 221451 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2023/10/10 | 22125 | macros/luatex/generic/luatexja/src/ltj-adjust.lua
+2023/10/10 | 2203 | macros/luatex/generic/luatexja/src/jfm-CCT.lua
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_counter.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/label/label_number.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/inline_double_dollar.txt
+2023/10/10 | 21 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal_error.txt
+2023/10/10 | 21991 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx
+2023/10/10 | 2193 | macros/luatex/generic/luatexja/src/addons/luatexja-zhfonts.sty
+2023/10/10 | 2188 | graphics/pgf/contrib/circuitikz/tex/ctikzstyle-romano.tex
+2023/10/10 | 218853 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2023/10/10 | 218060 | macros/latex/contrib/l3kernel/l3term-glossary.pdf
+2023/10/10 | 217 | support/texlab/crates/parser/src/test_data/latex/issue_919.txt
+2023/10/10 | 217246 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2023/10/10 | 216 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_empty.txt.snap
+2023/10/10 | 215 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_escape.txt.snap
+2023/10/10 | 2135265 | systems/win32/miktex/tm/packages/musixtex__doc.tar.lzma
+2023/10/10 | 211 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_word.snap
+2023/10/10 | 2107 | support/texlab/crates/completion/src/providers/color.rs
+2023/10/10 | 2104 | systems/win32/miktex/tm/packages/setspaceenhanced.tar.lzma
+2023/10/10 | 21037851 | systems/texlive/tlnet/install-tl-windows.exe
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_simple.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/tikz_library_import_simple.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/package_include_simple.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/latex_input_path_brackets.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_simple.txt
+2023/10/10 | 20 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote_postnote.txt
+2023/10/10 | 2074 | support/texlab/crates/bibtex-utils/src/field/author.rs
+2023/10/10 | 2072 | macros/latex/contrib/l3kernel/interface3.tex
+2023/10/10 | 2068 | support/texlab/crates/texlab/src/features/formatting/latexindent.rs
+2023/10/10 | 206183 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
+2023/10/10 | 205 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_complete_entry.snap
+2023/10/10 | 2057 | macros/luatex/generic/luatexja/src/patches/lltjp-microtype.sty
+2023/10/10 | 205020 | macros/latex/contrib/l3kernel/l3news12.pdf
+2023/10/10 | 20464 | macros/latex/contrib/l3kernel/l3text-purify.dtx
+2023/10/10 | 20451 | macros/latex/contrib/l3experimental/l3draw-softpath.dtx
+2023/10/10 | 20430 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx
+2023/10/10 | 2042040 | systems/texlive/tlnet/archive/culmus.source.r68495.tar.xz
+2023/10/10 | 2040 | support/texlab/crates/parser/src/latex/lexer.rs
+2023/10/10 | 203009 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2023/10/10 | 200 | macros/luatex/generic/luatexja/src/jfm-prop.lua
+2023/10/10 | 1 | support/texlab/crates/parser/src/test_data/latex/parameter_error.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_error.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_line_break.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/issue_789.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/inline.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/include/pgf_library_import_simple.txt
+2023/10/10 | 19 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_simple.txt
+2023/10/10 | 19994 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2023/10/10 | 19967 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2023/10/10 | 1993837 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2023/10/10 | 197 | support/texlab/crates/texlab/src/features.rs
+2023/10/10 | 1974 | support/texlab/crates/symbols/src/document/bib.rs
+2023/10/10 | 1973 | macros/luatex/generic/luatexja/src/luatexja.sty
+2023/10/10 | 196 | macros/luatex/generic/luatexja/src/jfm-propw.lua
+2023/10/10 | 196 | macros/luatex/generic/luatexja/src/jfm-propv.lua
+2023/10/10 | 19641 | macros/latex/contrib/l3kernel/l3fp-convert.dtx
+2023/10/10 | 1952183 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2023/10/10 | 194 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_preamble.snap
+2023/10/10 | 1949822 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2023/10/10 | 19342 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx
+2023/10/10 | 192 | macros/luatex/generic/luatexja/src/jfm-mono.lua
+2023/10/10 | 1926 | support/texlab/crates/texlab/Cargo.toml
+2023/10/10 | 19234 | macros/luatex/generic/luatexja/src/patches/lltjp-geometry.sty
+2023/10/10 | 1922 | support/texlab/crates/texlab/tests/lsp/workspace/snapshots/lsp__workspace__symbol__smoke.snap
+2023/10/10 | 1917 | support/texlab/crates/distro/src/file_name_db.rs
+2023/10/10 | 191160 | graphics/pgf/contrib/tkz-bernoulli.zip
+2023/10/10 | 19089 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty
+2023/10/10 | 1906 | macros/latex/contrib/l3experimental/l3draw.ins
+2023/10/10 | 189 | macros/luatex/generic/luatexja/src/patches/lltjp-preview.sty
+2023/10/10 | 1896 | systems/texlive/tlnet/archive/setspaceenhanced.r68493.tar.xz
+2023/10/10 | 189539 | macros/luatex/generic/luatexja/src/ltjsclasses.dtx
+2023/10/10 | 188693 | graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdf
+2023/10/10 | 1883 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__paragraphs.txt.snap
+2023/10/10 | 187 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter_error.txt.snap
+2023/10/10 | 18722 | macros/luatex/generic/luatexja/src/ltj-kinsoku.tex
+2023/10/10 | 186 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_string.snap
+2023/10/10 | 18694 | macros/latex/contrib/l3experimental/l3bitset.dtx
+2023/10/10 | 185 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_preamble.snap
+2023/10/10 | 18532 | macros/latex/contrib/l3kernel/l3fp-round.dtx
+2023/10/10 | 1846 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_919.txt.snap
+2023/10/10 | 18301 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex
+2023/10/10 | 182 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_article.snap
+2023/10/10 | 182 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter.txt.snap
+2023/10/10 | 18284219 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/10/10 | 182738 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2023/10/10 | 1820 | support/texlab/crates/commands/src/clean.rs
+2023/10/10 | 181 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_join_strings.snap
+2023/10/10 | 181 | support/texlab/CONTRIBUTING.md
+2023/10/10 | 18170 | macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx
+2023/10/10 | 1814 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__label.snap
+2023/10/10 | 18098 | support/texlab/crates/syntax/src/latex/cst.rs
+2023/10/10 | 17 | support/texlab/crates/test-utils/src/lib.rs
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_simple.txt
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_equality_sign.txt
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/include/import_simple.txt
+2023/10/10 | 17 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl.txt
+2023/10/10 | 179 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_string.snap
+2023/10/10 | 1791 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_853.txt.snap
+2023/10/10 | 17901 | macros/latex/contrib/l3kernel/l3pdf.dtx
+2023/10/10 | 1786 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.preamble.sty
+2023/10/10 | 178115 | macros/luatex/generic/luatexja/src/ltjclasses.dtx
+2023/10/10 | 177335 | macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx
+2023/10/10 | 1760 | support/texlab/crates/citeproc/src/output.rs
+2023/10/10 | 175 | support/texlab/crates/symbols/src/lib.rs
+2023/10/10 | 1749 | support/texlab/crates/folding/src/tests.rs
+2023/10/10 | 1745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_nested.txt.snap
+2023/10/10 | 174204 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2023/10/10 | 1740 | macros/luatex/generic/luatexja/tool/test_exist_nodelib.tex
+2023/10/10 | 1737 | support/texlab/crates/texlab/tests/lsp/text_document/inlay_hint.rs
+2023/10/10 | 17330 | macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx
+2023/10/10 | 1732 | support/texlab/crates/texlab/src/main.rs
+2023/10/10 | 1724914 | macros/latex/contrib/l3kernel/interface3.pdf
+2023/10/10 | 17112 | macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx
+2023/10/10 | 1708 | support/texlab/crates/syntax/src/latex/kind.rs
+2023/10/10 | 170102 | macros/latex/contrib/l3kernel/l3news11.pdf
+2023/10/10 | 16 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_only_name.txt
+2023/10/10 | 16 | support/texlab/crates/parser/src/test_data/latex/include/class_include_empty.txt
+2023/10/10 | 16 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl_error.txt
+2023/10/10 | 1695110 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf
+2023/10/10 | 1684918 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2023/10/10 | 1684896 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2023/10/10 | 167 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_command.snap
+2023/10/10 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/10/10 | 1672 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@006.txt.snap
+2023/10/10 | 16722 | graphics/pgf/contrib/circuitikz/tex/pgfcircpath.tex
+2023/10/10 | 166557 | macros/luatex/generic/luatexja/doc/lltjp-geometry.pdf
+2023/10/10 | 16639 | macros/latex/contrib/l3kernel/l3candidates.dtx
+2023/10/10 | 16631 | macros/latex/contrib/l3kernel/l3text-map.dtx
+2023/10/10 | 1660 | support/texlab/crates/texlab/src/features/hover.rs
+2023/10/10 | 16508 | macros/latex/contrib/l3experimental/l3benchmark.dtx
+2023/10/10 | 1637 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec.sty
+2023/10/10 | 163484 | macros/latex/contrib/l3kernel/l3news08.pdf
+2023/10/10 | 163409 | macros/latex/contrib/non-decimal-units.zip
+2023/10/10 | 1626 | support/texlab/crates/bibtex-utils/src/field/number.rs
+2023/10/10 | 1624 | macros/latex/contrib/l3experimental/xgalley.ins
+2023/10/10 | 16217 | macros/latex/contrib/l3backend/l3backend-basics.dtx
+2023/10/10 | 1611 | support/texlab/crates/texlab/src/util/line_index_ext.rs
+2023/10/10 | 1611 | macros/luatex/generic/luatexja/src/patches/lltjp-footmisc.sty
+2023/10/10 | 160 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_preamble.snap
+2023/10/10 | 1608 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__inlay_hint__label_definition.snap
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_incomplete.txt
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error4.txt
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote.txt
+2023/10/10 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_multiple_keys.txt
+2023/10/10 | 15 | support/texlab/crates/bibtex-utils/src/lib.rs
+2023/10/10 | 159865 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2023/10/10 | 1595 | support/texlab/crates/texlab/benches/bench_main.rs
+2023/10/10 | 1590 | support/texlab/crates/commands/src/dep_graph.rs
+2023/10/10 | 1583 | support/texlab/crates/commands/src/placeholders.rs
+2023/10/10 | 15839 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec-27c.sty
+2023/10/10 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_trailing_comma.snap
+2023/10/10 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_insert_braces.snap
+2023/10/10 | 157292 | macros/latex/contrib/l3kernel/l3doc.dtx
+2023/10/10 | 1569 | macros/latex/contrib/l3experimental/xcoffins.ins
+2023/10/10 | 1565 | macros/latex/contrib/l3experimental/l3sys-shell.ins
+2023/10/10 | 1565 | macros/latex/contrib/l3experimental/l3bitset.ins
+2023/10/10 | 1564 | macros/latex/contrib/l3experimental/l3str.ins
+2023/10/10 | 15622 | support/texlab/crates/citeproc/src/tests.rs
+2023/10/10 | 1561 | macros/latex/contrib/l3packages/xtemplate.ins
+2023/10/10 | 155980 | macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdf
+2023/10/10 | 1558 | macros/latex/contrib/l3experimental/l3benchmark.ins
+2023/10/10 | 1553 | support/texlab/crates/completion/src/providers/color_model.rs
+2023/10/10 | 1553 | macros/latex/contrib/l3experimental/l3graphics.ins
+2023/10/10 | 154928 | macros/luatex/generic/luatexja/src/ltj-ivd_aj1.lua
+2023/10/10 | 1547 | macros/latex/contrib/l3experimental/l3opacity.ins
+2023/10/10 | 15442 | graphics/pgf/contrib/circuitikz/tex/pgfcirclabel.tex
+2023/10/10 | 15429 | macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua
+2023/10/10 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/10/10 | 1536 | macros/luatex/generic/luatexja/COPYING
+2023/10/10 | 1534 | support/texlab/crates/texlab/src/features/rename.rs
+2023/10/10 | 1530778 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2023/10/10 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/10/10 | 1518404 | systems/texlive/tlnet/archive/culmus.r68495.tar.xz
+2023/10/10 | 151752 | macros/latex/contrib/l3kernel/l3docstrip.pdf
+2023/10/10 | 151591 | macros/latex/contrib/l3kernel/l3news06.pdf
+2023/10/10 | 1512 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.tex
+2023/10/10 | 1509 | support/texlab/crates/symbols/src/document.rs
+2023/10/10 | 150919 | macros/latex/contrib/l3kernel/l3news02.pdf
+2023/10/10 | 1506 | support/texlab/crates/rename/src/entry.rs
+2023/10/10 | 1505 | support/texlab/crates/texlab/tests/lsp/text_document/document_symbol.rs
+2023/10/10 | 150302 | macros/latex/contrib/l3kernel/l3news10.pdf
+2023/10/10 | 14 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_multiple.txt
+2023/10/10 | 14 | support/texlab/crates/parser/src/test_data/latex/generic_command_args.txt
+2023/10/10 | 1496 | support/texlab/crates/texlab/src/util.rs
+2023/10/10 | 14914 | macros/luatex/generic/luatexja/src/patches/lltjp-listings.sty
+2023/10/10 | 14913 | macros/latex/contrib/l3kernel/l3news12.tex
+2023/10/10 | 148 | support/texlab/crates/parser/src/lib.rs
+2023/10/10 | 148747 | macros/latex/contrib/l3kernel/l3news03.pdf
+2023/10/10 | 148160 | macros/latex/contrib/l3kernel/l3tl.dtx
+2023/10/10 | 14808 | support/texlab/crates/texlab/src/features/completion.rs
+2023/10/10 | 14669 | macros/latex/contrib/l3backend/l3backend-header.dtx
+2023/10/10 | 1464 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_declaration.txt.snap
+2023/10/10 | 1462 | support/texlab/crates/rename/src/tests.rs
+2023/10/10 | 14600 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2023/10/10 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/10/10 | 14587 | graphics/pgf/contrib/circuitikz/tex/pgfcircutils.tex
+2023/10/10 | 1453368 | systems/texlive/tlnet/archive/tex4ht.source.r68494.tar.xz
+2023/10/10 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/10/10 | 14479 | graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex
+2023/10/10 | 1444 | macros/latex/contrib/l3packages/l3keys2e-demo.tex
+2023/10/10 | 14431 | macros/latex/contrib/l3backend/l3backend-box.dtx
+2023/10/10 | 144300 | systems/texlive/tlnet/archive/culmus.doc.r68495.tar.xz
+2023/10/10 | 1442511 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2023/10/10 | 144087 | macros/latex/contrib/l3kernel/l3file.dtx
+2023/10/10 | 143 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_string.snap
+2023/10/10 | 14338 | support/texlab/crates/symbols/src/document/tests.rs
+2023/10/10 | 1432 | support/texlab/crates/hover/src/lib.rs
+2023/10/10 | 142010 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2023/10/10 | 1412 | support/texlab/crates/texlab/src/server/progress.rs
+2023/10/10 | 1409 | support/texlab/crates/references/src/entry.rs
+2023/10/10 | 14036719 | install/macros/latex/contrib/l3kernel.tds.zip
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/include/package_include_empty.txt
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_simple.txt
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/equation.txt
+2023/10/10 | 13 | support/texlab/crates/parser/src/test_data/latex/color/color_reference_simple.txt
+2023/10/10 | 1397 | macros/luatex/generic/luatexja/tool/ivslist.tex
+2023/10/10 | 1390824 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
+2023/10/10 | 13895 | macros/luatex/generic/luatexja/src/jfm-ujis.lua
+2023/10/10 | 1382 | support/texlab/crates/completion/src/util/builder.rs
+2023/10/10 | 13775882 | macros/latex/contrib/l3kernel.zip
+2023/10/10 | 137625 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2023/10/10 | 13737 | graphics/pgf/contrib/circuitikz/tex/circuitikz.sty
+2023/10/10 | 13726 | macros/luatex/generic/luatexja/doc/lltjp-geometry.tex
+2023/10/10 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r68494.tar.xz
+2023/10/10 | 1360 | macros/latex/contrib/l3experimental/l3draw-code.tex
+2023/10/10 | 135 | support/texlab/crates/parser/src/test_data/latex/issue_853.txt
+2023/10/10 | 1359 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_options.txt.snap
+2023/10/10 | 135539 | macros/latex/contrib/l3kernel/l3basics.dtx
+2023/10/10 | 1354 | macros/latex/contrib/pdfmanagement-testphase/update-metadata.txt
+2023/10/10 | 13546 | macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx
+2023/10/10 | 134 | support/texlab/crates/parser/src/test_data/latex/structure/paragraphs.txt
+2023/10/10 | 1348 | support/texlab/crates/definition/src/command.rs
+2023/10/10 | 13485 | systems/win32/miktex/tm/packages/msu-thesis.tar.lzma
+2023/10/10 | 13459 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf
+2023/10/10 | 1341359 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2023/10/10 | 13353 | support/texlab/crates/parser/src/test_data/build_log/005.txt
+2023/10/10 | 1331 | macros/latex/contrib/l3backend/l3backend-code.tex
+2023/10/10 | 13316 | macros/luatex/generic/luatexja/src/ltj-setwidth.lua
+2023/10/10 | 1330 | support/texlab/crates/texlab/src/features/inlay_hint/label.rs
+2023/10/10 | 132 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_parens.snap
+2023/10/10 | 1328 | support/texlab/crates/texlab/src/features/folding.rs
+2023/10/10 | 13279 | macros/luatex/generic/luatexja/src/patches/lltjcore.sty
+2023/10/10 | 13253 | graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty
+2023/10/10 | 1322 | support/texlab/crates/texlab/tests/lsp/text_document/document_highlight.rs
+2023/10/10 | 1321 | support/texlab/crates/symbols/src/workspace.rs
+2023/10/10 | 130759 | systems/win32/miktex/tm/packages/autosp__source.tar.lzma
+2023/10/10 | 1306 | macros/latex/contrib/l3packages/xfrac.ins
+2023/10/10 | 1304 | support/texlab/crates/texlab/src/features/definition.rs
+2023/10/10 | 12 | support/texlab/crates/texlab/tests/lsp/workspace.rs
+2023/10/10 | 12 | support/texlab/crates/parser/src/test_data/latex/hello_world.txt
+2023/10/10 | 12 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_missing_end.txt
+2023/10/10 | 12 | support/texlab/crates/parser/src/test_data/latex/citation/citation_redundant_comma.txt
+2023/10/10 | 1298 | support/texlab/crates/texlab/src/features/inlay_hint.rs
+2023/10/10 | 129885 | macros/latex/contrib/l3kernel/l3keys.dtx
+2023/10/10 | 128344 | macros/latex/contrib/l3kernel/l3news07.pdf
+2023/10/10 | 12806 | macros/latex/contrib/l3kernel/l3bootstrap.dtx
+2023/10/10 | 12798 | macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx
+2023/10/10 | 1278 | macros/luatex/generic/luatexja/src/ltjclasses.ins
+2023/10/10 | 12777 | macros/latex/contrib/l3kernel/l3fp-traps.dtx
+2023/10/10 | 1272 | macros/latex/contrib/l3packages/xparse.ins
+2023/10/10 | 126 | macros/luatex/generic/luatexja/src/ltjltxdoc.ins
+2023/10/10 | 1266 | support/texlab/crates/references/src/string_def.rs
+2023/10/10 | 1260 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_enum_item.txt.snap
+2023/10/10 | 1250 | support/texlab/crates/definition/src/lib.rs
+2023/10/10 | 12463 | macros/luatex/generic/luatexja/src/ltj-base.lua
+2023/10/10 | 1236 | support/texlab/crates/rename/src/command.rs
+2023/10/10 | 12361 | macros/latex/contrib/l3experimental/l3sys-shell.dtx
+2023/10/10 | 12312 | macros/latex/contrib/l3packages/l3keys2e.dtx
+2023/10/10 | 122959 | macros/latex/contrib/l3kernel/l3news01.pdf
+2023/10/10 | 1228 | macros/latex/contrib/l3packages/l3keys2e.ins
+2023/10/10 | 12284 | systems/win32/miktex/tm/packages/japanese-otf__doc.tar.lzma
+2023/10/10 | 1225 | support/texlab/crates/hover/src/citation.rs
+2023/10/10 | 1224 | macros/luatex/generic/luatexja/tool/chars2defcharrange.rb
+2023/10/10 | 1214261 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
+2023/10/10 | 1200 | macros/latex/contrib/pdfmanagement-testphase/README.md
+2023/10/10 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_equation.txt
+2023/10/10 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_simple.txt
+2023/10/10 | 11 | support/texlab/crates/parser/src/test_data/latex/include/import_incomplete.txt
+2023/10/10 | 1191 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested_missing_braces.txt.snap
+2023/10/10 | 1191 | macros/latex/contrib/l3packages/xfp.ins
+2023/10/10 | 119040 | macros/latex/contrib/l3kernel/l3token.dtx
+2023/10/10 | 11884 | macros/latex/contrib/l3kernel/l3styleguide.tex
+2023/10/10 | 117880 | graphics/pgf/contrib/circuitikz/tex/pgfcircmultipoles.tex
+2023/10/10 | 11781 | macros/latex/contrib/l3kernel/l3fparray.dtx
+2023/10/10 | 1177 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_with_begin.txt.snap
+2023/10/10 | 117784 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2023/10/10 | 1171965 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2023/10/10 | 1170 | support/texlab/crates/base-db/src/semantics/auxiliary.rs
+2023/10/10 | 1157 | support/texlab/crates/texlab/tests/lsp/text_document/document_link.rs
+2023/10/10 | 1150 | systems/win32/miktex/tm/packages/next/pr.ini
+2023/10/10 | 11506 | macros/luatex/generic/luatexja/src/jfm-ujisv.lua
+2023/10/10 | 114754 | macros/latex/contrib/l3kernel/l3news04.pdf
+2023/10/10 | 1146 | support/texlab/crates/definition/src/label.rs
+2023/10/10 | 1144113 | macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
+2023/10/10 | 11420 | support/texlab/crates/parser/src/bibtex.rs
+2023/10/10 | 114072 | systems/texlive/tlnet/archive/texlive-scripts.r68489.tar.xz
+2023/10/10 | 11391011 | macros/latex/contrib/pdfmanagement-testphase.zip
+2023/10/10 | 113435 | macros/latex/contrib/l3kernel/l3str-convert.dtx
+2023/10/10 | 11335 | macros/luatex/generic/luatexja/tool/unicodeBlocks.tex
+2023/10/10 | 1130 | macros/luatex/generic/luatexja/tool/function_uax50.lua
+2023/10/10 | 113014 | systems/win32/miktex/tm/packages/msu-thesis__doc.tar.lzma
+2023/10/10 | 112524 | macros/latex/contrib/l3kernel/l3news05.pdf
+2023/10/10 | 1124 | support/texlab/crates/distro/src/language.rs
+2023/10/10 | 112490 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2023/10/10 | 112255 | macros/latex/contrib/l3kernel/l3color.dtx
+2023/10/10 | 1121 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested.txt.snap
+2023/10/10 | 1119 | support/texlab/crates/texlab/src/features/highlight/label.rs
+2023/10/10 | 1118 | support/texlab/crates/completion/src/providers/entry_type.rs
+2023/10/10 | 1112 | support/texlab/crates/parser/src/test_data/bibtex/samples/nietzsche_1998.txt
+2023/10/10 | 1112 | support/texlab/crates/base-db/src/semantics.rs
+2023/10/10 | 11078 | support/texlab/crates/base-db/src/semantics/tex.rs
+2023/10/10 | 1103 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition.txt.snap
+2023/10/10 | 1103180 | systems/texlive/tlnet/archive/tex4ht.r68494.tar.xz
+2023/10/10 | 11015 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__nietzsche_1998.txt.snap
+2023/10/10 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_star.txt
+2023/10/10 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_simple.txt
+2023/10/10 | 109894 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2023/10/10 | 108 | support/texlab/crates/texlab/src/lib.rs
+2023/10/10 | 108579 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2023/10/10 | 1083 | support/texlab/crates/texlab/src/features/formatting.rs
+2023/10/10 | 1081680 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.4.6-body.tex
+2023/10/10 | 1076 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_885.snap
+2023/10/10 | 1074 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_asymptote.txt.snap
+2023/10/10 | 107383 | macros/latex/contrib/l3kernel/l3news09.tex
+2023/10/10 | 1073051 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.4.6.tex
+2023/10/10 | 1070 | support/texlab/crates/references/src/lib.rs
+2023/10/10 | 1067 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_options.txt.snap
+2023/10/10 | 1066 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_options.txt.snap
+2023/10/10 | 106590 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2023/10/10 | 10650 | macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty
+2023/10/10 | 1064 | support/texlab/crates/rename/src/lib.rs
+2023/10/10 | 1059 | support/texlab/crates/hover/src/string_ref.rs
+2023/10/10 | 105739 | systems/win32/miktex/tm/packages/musixtex.tar.lzma
+2023/10/10 | 105734 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2023/10/10 | 1056 | support/texlab/crates/definition/src/include.rs
+2023/10/10 | 1051 | support/texlab/crates/texlab/tests/lsp/workspace/symbol.rs
+2023/10/10 | 105012 | macros/latex/contrib/l3kernel/l3fp-parse.dtx
+2023/10/10 | 1048 | support/texlab/crates/definition/src/string_ref.rs
+2023/10/10 | 104397 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2023/10/10 | 104151 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2023/10/10 | 10380 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__averroes_1998.txt.snap
+2023/10/10 | 103622 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2023/10/10 | 10328 | macros/latex/contrib/l3kernel/l3flag.dtx
+2023/10/10 | 1025 | support/texlab/crates/completion/src/util/matchers.rs
+2023/10/10 | 1023 | support/texlab/crates/completion/benches/bench_main.rs
+2023/10/10 | 1021798 | graphics/pgf/contrib/circuitikz/tex/circuitikz-1.2.7-body.tex
+2023/10/10 | 10197 | support/texlab/crates/base-db/src/workspace.rs
+2023/10/10 | 10180 | macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md
+2023/10/10 | 101497 | systems/win32/miktex/tm/packages/japanese-otf__source.tar.lzma
+2023/10/10 | 1014383 | graphics/pgf/contrib/circuitikz/tex/t-circuitikz-1.2.7.tex
+2023/10/10 | 10138 | macros/latex/contrib/l3experimental/l3draw-transforms.dtx
+2023/10/10 | 1008 | support/texlab/crates/parser/src/test_data/bibtex/samples/averroes_1998.txt
+2023/10/10 | 100838 | macros/latex/contrib/l3packages/xtemplate.dtx
+2023/10/10 | 10018 | macros/latex/contrib/l3experimental/l3draw-scopes.dtx
2023/10/09 | 9684 | macros/jptex/latex/japanese-otf/vf/cidjmgr--v.vf
2023/10/09 | 9680 | macros/jptex/latex/japanese-otf/vf/cidjmr--v.vf
2023/10/09 | 9680 | macros/jptex/latex/japanese-otf/vf/cidjml--v.vf
@@ -183,6 +1315,7 @@
2023/10/09 | 7356 | macros/jptex/latex/japanese-otf/vf/cidjgb--h.vf
2023/10/09 | 72 | macros/jptex/latex/japanese-otf/vf/utfjmgrx-v.vf
2023/10/09 | 72 | macros/jptex/latex/japanese-otf/vf/utfjmgrx-h.vf
+2023/10/09 | 7165 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/10/09 | 704 | macros/jptex/latex/japanese-otf/tfm/otf-ccmr-v.tfm
2023/10/09 | 704 | macros/jptex/latex/japanese-otf/tfm/otf-ccml-v.tfm
2023/10/09 | 704 | macros/jptex/latex/japanese-otf/tfm/otf-ccmgr-v.tfm
@@ -340,6 +1473,7 @@
2023/10/09 | 67004 | macros/jptex/latex/japanese-otf/vf/utfmrf-h.vf
2023/10/09 | 67004 | macros/jptex/latex/japanese-otf/vf/utfgrf-v.vf
2023/10/09 | 67004 | macros/jptex/latex/japanese-otf/vf/utfgrf-h.vf
+2023/10/09 | 6686092 | fonts/haranoaji/HaranoAjiMincho-Bold.otf
2023/10/09 | 66692 | macros/jptex/latex/japanese-otf/vf/utfmra-v.vf
2023/10/09 | 66692 | macros/jptex/latex/japanese-otf/vf/utfmra-h.vf
2023/10/09 | 66692 | macros/jptex/latex/japanese-otf/vf/utfgra-v.vf
@@ -1077,6 +2211,7 @@
2023/10/09 | 65588 | macros/jptex/latex/japanese-otf/vf/utfcgr2-h.vf
2023/10/09 | 65588 | macros/jptex/latex/japanese-otf/vf/utfcgr1-v.vf
2023/10/09 | 65588 | macros/jptex/latex/japanese-otf/vf/utfcgr1-h.vf
+2023/10/09 | 6540052 | fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
2023/10/09 | 6537 | macros/jptex/latex/japanese-otf/sty/redeffont.sty
2023/10/09 | 65296 | macros/jptex/latex/japanese-otf/vf/utfmr0-v.vf
2023/10/09 | 65296 | macros/jptex/latex/japanese-otf/vf/utfmr0-h.vf
@@ -1148,6 +2283,7 @@
2023/10/09 | 65204 | macros/jptex/latex/japanese-otf/vf/utfcmr0-h.vf
2023/10/09 | 65204 | macros/jptex/latex/japanese-otf/vf/utfcgr0-v.vf
2023/10/09 | 65204 | macros/jptex/latex/japanese-otf/vf/utfcgr0-h.vf
+2023/10/09 | 6516452 | fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
2023/10/09 | 651148 | macros/jptex/latex/japanese-otf/vf/upnmlmgothr-v.vf
2023/10/09 | 651148 | macros/jptex/latex/japanese-otf/vf/upnmlmgothrn-v.vf
2023/10/09 | 651148 | macros/jptex/latex/japanese-otf/vf/upnmlgothrn-v.vf
@@ -1176,7 +2312,10 @@
2023/10/09 | 651120 | macros/jptex/latex/japanese-otf/vf/upnmlgotheb-h.vf
2023/10/09 | 651120 | macros/jptex/latex/japanese-otf/vf/upnmlgothbn-h.vf
2023/10/09 | 651120 | macros/jptex/latex/japanese-otf/vf/upnmlgothb-h.vf
+2023/10/09 | 6488520 | fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
+2023/10/09 | 6420628 | fonts/haranoaji/HaranoAjiMincho-Regular.otf
2023/10/09 | 6386 | macros/jptex/latex/japanese-otf/doc/test/otftest.tex
+2023/10/09 | 6386696 | fonts/haranoaji/HaranoAjiMincho-Light.otf
2023/10/09 | 635 | macros/jptex/latex/japanese-otf/doc/test/uplatex/cid_jp_v.tex
2023/10/09 | 6357 | macros/latex/contrib/setspaceenhanced/README.md
2023/10/09 | 632 | macros/jptex/latex/japanese-otf/vf/utfjmrq-v.vf
@@ -1195,6 +2334,7 @@
2023/10/09 | 632 | macros/jptex/latex/japanese-otf/vf/utfjgbq-h.vf
2023/10/09 | 6309 | macros/jptex/latex/japanese-otf/doc/test/uplatex/sp_jp_utf.tex
2023/10/09 | 623 | macros/jptex/latex/japanese-otf/doc/test/uplatex/cid_jp_h.tex
+2023/10/09 | 621698 | support/TeX4ht/source/tex4ht-html4.tex
2023/10/09 | 6120 | macros/jptex/latex/japanese-otf/src/basepl/base2-v.pl
2023/10/09 | 588 | macros/jptex/latex/japanese-otf/tfm/uprubyminr-v.tfm
2023/10/09 | 588 | macros/jptex/latex/japanese-otf/tfm/uprubyminl-v.tfm
@@ -1232,6 +2372,7 @@
2023/10/09 | 588 | macros/jptex/latex/japanese-otf/tfm/upexpgothb-v.tfm
2023/10/09 | 588 | macros/jptex/latex/japanese-otf/tfm/upexpgothbn-v.tfm
2023/10/09 | 5888 | macros/jptex/latex/japanese-otf/sty/mlutf.sty
+2023/10/09 | 5885620 | fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
2023/10/09 | 584 | macros/jptex/latex/japanese-otf/tfm/brsgnmlminrn-h.tfm
2023/10/09 | 584 | macros/jptex/latex/japanese-otf/tfm/brsgnmlminr-h.tfm
2023/10/09 | 584 | macros/jptex/latex/japanese-otf/tfm/brsgnmlminln-h.tfm
@@ -1323,7 +2464,6 @@
2023/10/09 | 5764 | macros/jptex/latex/japanese-otf/vf/upbrsgexpgothebn-v.vf
2023/10/09 | 5764 | macros/jptex/latex/japanese-otf/vf/upbrsgexpgothb-v.vf
2023/10/09 | 5764 | macros/jptex/latex/japanese-otf/vf/upbrsgexpgothbn-v.vf
-2023/10/09 | 5740286 | systems/texlive/tlnet/install-tl-unx.tar.gz
2023/10/09 | 5720 | macros/jptex/latex/japanese-otf/src/basepl/base0-h.pl
2023/10/09 | 5714508 | systems/texlive/tlnet/archive/cascadia-code.r68485.tar.xz
2023/10/09 | 568 | macros/jptex/latex/japanese-otf/tfm/otf-ckmr-v.tfm
@@ -1563,18 +2703,15 @@
2023/10/09 | 504 | macros/jptex/latex/japanese-otf/tfm/expgothbn-v.tfm
2023/10/09 | 504 | macros/jptex/latex/japanese-otf/tfm/expgothbn-h.tfm
2023/10/09 | 504 | macros/jptex/latex/japanese-otf/tfm/expgothb-h.tfm
+2023/10/09 | 5046732 | fonts/haranoaji/HaranoAjiGothic-Heavy.otf
2023/10/09 | 5031 | macros/jptex/latex/japanese-otf/src/script/mkutfvf_sp.pl
2023/10/09 | 4976 | macros/jptex/latex/japanese-otf/vf/utfmro-v.vf
2023/10/09 | 4976 | macros/jptex/latex/japanese-otf/vf/utfmro-h.vf
2023/10/09 | 4976 | macros/jptex/latex/japanese-otf/vf/utfgro-v.vf
2023/10/09 | 4976 | macros/jptex/latex/japanese-otf/vf/utfgro-h.vf
-2023/10/09 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2023/10/09 | 48 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.md5
-2023/10/09 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/10/09 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2023/10/09 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/10/09 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2023/10/09 | 488 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.sha512.asc
+2023/10/09 | 4849860 | fonts/haranoaji/HaranoAjiGothic-Bold.otf
2023/10/09 | 480 | macros/jptex/latex/japanese-otf/vf/utfjmgrv-v.vf
2023/10/09 | 480 | macros/jptex/latex/japanese-otf/vf/utfjmgrv-h.vf
2023/10/09 | 478 | macros/jptex/latex/japanese-otf/doc/test/uplatex/cid_cns_v.tex
@@ -1600,6 +2737,10 @@
2023/10/09 | 4760 | macros/jptex/latex/japanese-otf/vf/utfmrk-h.vf
2023/10/09 | 4760 | macros/jptex/latex/japanese-otf/vf/utfgrk-v.vf
2023/10/09 | 4760 | macros/jptex/latex/japanese-otf/vf/utfgrk-h.vf
+2023/10/09 | 4741344 | fonts/haranoaji/HaranoAjiGothic-Medium.otf
+2023/10/09 | 4723208 | fonts/haranoaji/HaranoAjiGothic-Regular.otf
+2023/10/09 | 4719060 | fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
+2023/10/09 | 4706372 | fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
2023/10/09 | 468 | macros/jptex/latex/japanese-otf/tfm/cidjmr2-h.tfm
2023/10/09 | 468 | macros/jptex/latex/japanese-otf/tfm/cidjml2-h.tfm
2023/10/09 | 468 | macros/jptex/latex/japanese-otf/tfm/cidjmgr2-h.tfm
@@ -1627,6 +2768,7 @@
2023/10/09 | 444 | macros/jptex/latex/japanese-otf/vf/utfjgeo-h.vf
2023/10/09 | 444 | macros/jptex/latex/japanese-otf/vf/utfjgbo-v.vf
2023/10/09 | 444 | macros/jptex/latex/japanese-otf/vf/utfjgbo-h.vf
+2023/10/09 | 4426676 | fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
2023/10/09 | 4418 | macros/jptex/latex/japanese-otf/src/basepl/ubase-h.pl
2023/10/09 | 4348 | macros/jptex/latex/japanese-otf/vf/utfmrs-v.vf
2023/10/09 | 4348 | macros/jptex/latex/japanese-otf/vf/utfmrs-h.vf
@@ -1664,7 +2806,6 @@
2023/10/09 | 432 | macros/jptex/latex/japanese-otf/tfm/utfjgbf-h.tfm
2023/10/09 | 432 | macros/jptex/latex/japanese-otf/tfm/utfgrf-h.tfm
2023/10/09 | 430 | macros/jptex/latex/japanese-otf/doc/test/uplatex/cid_ks_h.tex
-2023/10/09 | 429972 | systems/texlive/tlnet/archive/texlive-scripts.doc.r68479.tar.xz
2023/10/09 | 428 | macros/jptex/latex/japanese-otf/vf/utftmrz-v.vf
2023/10/09 | 428 | macros/jptex/latex/japanese-otf/vf/utftmrz-h.vf
2023/10/09 | 428 | macros/jptex/latex/japanese-otf/vf/utftgrz-v.vf
@@ -1692,7 +2833,6 @@
2023/10/09 | 41340 | macros/jptex/latex/japanese-otf/vf/cidjgb5-h.vf
2023/10/09 | 412 | macros/jptex/latex/japanese-otf/vf/utfjmgrt-v.vf
2023/10/09 | 412 | macros/jptex/latex/japanese-otf/vf/utfjmgrt-h.vf
-2023/10/09 | 4117713 | biblio/ctan-bibdata.zip
2023/10/09 | 408 | macros/jptex/latex/japanese-otf/vf/utfjmrt-v.vf
2023/10/09 | 408 | macros/jptex/latex/japanese-otf/vf/utfjmrt-h.vf
2023/10/09 | 408 | macros/jptex/latex/japanese-otf/vf/utfjmlt-v.vf
@@ -1743,7 +2883,6 @@
2023/10/09 | 376 | macros/jptex/latex/japanese-otf/vf/utfjgbm-v.vf
2023/10/09 | 376 | macros/jptex/latex/japanese-otf/vf/utfjgbm-h.vf
2023/10/09 | 37678 | macros/jptex/latex/japanese-otf/src/umkjvf
-2023/10/09 | 3714076 | biblio/ctan-bibdata/ctan.pdf
2023/10/09 | 368 | macros/jptex/latex/japanese-otf/tfm/uphminrn-h.tfm
2023/10/09 | 368 | macros/jptex/latex/japanese-otf/tfm/uphminr-h.tfm
2023/10/09 | 368 | macros/jptex/latex/japanese-otf/tfm/uphminln-h.tfm
@@ -1834,7 +2973,6 @@
2023/10/09 | 2816 | macros/jptex/latex/japanese-otf/vf/utfmrp-h.vf
2023/10/09 | 2816 | macros/jptex/latex/japanese-otf/vf/utfgrp-v.vf
2023/10/09 | 2816 | macros/jptex/latex/japanese-otf/vf/utfgrp-h.vf
-2023/10/09 | 2815719 | biblio/ctan-bibdata/ctan.bib
2023/10/09 | 2805 | macros/jptex/latex/japanese-otf/src/script/mkutfvf.pl
2023/10/09 | 2796 | macros/jptex/latex/japanese-otf/doc/test/uplatex/sp_gb_utf.tex
2023/10/09 | 27769 | macros/jptex/latex/japanese-otf/src/mkjvf
@@ -1872,7 +3010,6 @@
2023/10/09 | 2616 | macros/jptex/latex/japanese-otf/vf/utfmrm-h.vf
2023/10/09 | 2616 | macros/jptex/latex/japanese-otf/vf/utfgrm-v.vf
2023/10/09 | 2616 | macros/jptex/latex/japanese-otf/vf/utfgrm-h.vf
-2023/10/09 | 26029117 | systems/texlive/tlnet/install-tl.zip
2023/10/09 | 25852 | macros/jptex/latex/japanese-otf/vf/cidcmr7-v.vf
2023/10/09 | 25852 | macros/jptex/latex/japanese-otf/vf/cidcmr7-h.vf
2023/10/09 | 25852 | macros/jptex/latex/japanese-otf/vf/cidcgr7-v.vf
@@ -1889,7 +3026,6 @@
2023/10/09 | 2508 | macros/jptex/latex/japanese-otf/tfm/cidjge0-h.tfm
2023/10/09 | 2508 | macros/jptex/latex/japanese-otf/tfm/cidjgb0-h.tfm
2023/10/09 | 25045 | macros/jptex/latex/japanese-otf/sty/otf.sty
-2023/10/09 | 2480712 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/10/09 | 2439 | macros/jptex/latex/japanese-otf/src/basepl/ubase-tch-v.pl
2023/10/09 | 2432 | macros/jptex/latex/japanese-otf/src/basepl/ubase-tch-h.pl
2023/10/09 | 2428 | macros/jptex/latex/japanese-otf/vf/utfmrr-v.vf
@@ -1911,6 +3047,7 @@
2023/10/09 | 2408 | macros/jptex/latex/japanese-otf/vf/upbrsgnmlminr-v.vf
2023/10/09 | 2408 | macros/jptex/latex/japanese-otf/vf/upbrsgnmlminl-v.vf
2023/10/09 | 2408 | macros/jptex/latex/japanese-otf/vf/upbrsgnmlminb-v.vf
+2023/10/09 | 232336 | support/TeX4ht/source/ChangeLog
2023/10/09 | 2312 | macros/jptex/latex/japanese-otf/src/script/mkcidofm.pl
2023/10/09 | 2291 | macros/jptex/latex/japanese-otf/doc/test/uplatex/era.tex
2023/10/09 | 224 | macros/jptex/latex/japanese-otf/vf/utfcmrs-v.vf
@@ -1945,7 +3082,6 @@
2023/10/09 | 2120 | macros/jptex/latex/japanese-otf/tfm/cidjgr--v.tfm
2023/10/09 | 2120 | macros/jptex/latex/japanese-otf/tfm/cidjge--v.tfm
2023/10/09 | 2120 | macros/jptex/latex/japanese-otf/tfm/cidjgb--v.tfm
-2023/10/09 | 21037994 | systems/texlive/tlnet/install-tl-windows.exe
2023/10/09 | 2099 | macros/jptex/latex/japanese-otf/doc/test/uplatex/paren0.tex
2023/10/09 | 20833 | macros/jptex/latex/japanese-otf/src/script/umkpkana.pl
2023/10/09 | 2076 | macros/jptex/latex/japanese-otf/tfm/otf-cjmr-h.tfm
@@ -1962,6 +3098,7 @@
2023/10/09 | 2076 | macros/jptex/latex/japanese-otf/tfm/cidjgr--h.tfm
2023/10/09 | 2076 | macros/jptex/latex/japanese-otf/tfm/cidjge--h.tfm
2023/10/09 | 2076 | macros/jptex/latex/japanese-otf/tfm/cidjgb--h.tfm
+2023/10/09 | 2050 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex
2023/10/09 | 2044 | macros/jptex/latex/japanese-otf/vf/utfmrt-v.vf
2023/10/09 | 2044 | macros/jptex/latex/japanese-otf/vf/utfmrt-h.vf
2023/10/09 | 2044 | macros/jptex/latex/japanese-otf/vf/utfgrt-v.vf
@@ -2019,7 +3156,6 @@
2023/10/09 | 1860 | macros/jptex/latex/japanese-otf/vf/utfmrw-h.vf
2023/10/09 | 1860 | macros/jptex/latex/japanese-otf/vf/utfgrw-v.vf
2023/10/09 | 1860 | macros/jptex/latex/japanese-otf/vf/utfgrw-h.vf
-2023/10/09 | 18280698 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
2023/10/09 | 18197 | macros/jptex/latex/japanese-otf/doc/test/uplatex/uotf-cid-h.tex
2023/10/09 | 18004 | CTAN.sites
2023/10/09 | 174 | macros/jptex/latex/japanese-otf/src/umakeotf_pre
@@ -3326,7 +4462,6 @@
2023/10/09 | 1700 | macros/jptex/latex/japanese-otf/vf/utfcmrw-h.vf
2023/10/09 | 1700 | macros/jptex/latex/japanese-otf/vf/utfcgrw-v.vf
2023/10/09 | 1700 | macros/jptex/latex/japanese-otf/vf/utfcgrw-h.vf
-2023/10/09 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2023/10/09 | 1657 | macros/jptex/latex/japanese-otf/src/script/otf-hangul.rb
2023/10/09 | 16339 | macros/jptex/latex/japanese-otf/src/script/mkpkana.pl
2023/10/09 | 1628 | macros/jptex/latex/japanese-otf/vf/utfmrv-v.vf
@@ -3359,9 +4494,7 @@
2023/10/09 | 15686 | macros/jptex/latex/japanese-otf/src/script/mkvpkana.pl
2023/10/09 | 1550 | macros/jptex/latex/japanese-otf/src/script/MakeSPList.pm
2023/10/09 | 15487 | macros/jptex/latex/japanese-otf/doc/test/uplatex/uotftest-utf8.tex
-2023/10/09 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
2023/10/09 | 1530 | macros/jptex/latex/japanese-otf/src/script/sp_list_c.txt
-2023/10/09 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2023/10/09 | 15235 | macros/jptex/latex/japanese-otf/doc/test/hankana_test.tex
2023/10/09 | 1521 | macros/jptex/latex/japanese-otf/COPYRIGHT
2023/10/09 | 1504 | systems/texlive/tlcontrib/archive/japanese-otf-nonfree.doc.r377.tar.xz
@@ -3370,8 +4503,6 @@
2023/10/09 | 1496 | macros/jptex/latex/japanese-otf/vf/utftmrt-h.vf
2023/10/09 | 1496 | macros/jptex/latex/japanese-otf/vf/utftgrt-v.vf
2023/10/09 | 1496 | macros/jptex/latex/japanese-otf/vf/utftgrt-h.vf
-2023/10/09 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/10/09 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
2023/10/09 | 144 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.sha512
2023/10/09 | 14339096 | systems/texlive/tlnet/archive/profcollege.doc.r68481.tar.xz
2023/10/09 | 1419076 | systems/texlive/tlnet/archive/proflycee.doc.r68482.tar.xz
@@ -3446,6 +4577,7 @@
2023/10/09 | 120 | macros/jptex/latex/japanese-otf/vf/utfcgro-h.vf
2023/10/09 | 120 | macros/jptex/latex/japanese-otf/vf/utfcgrn-v.vf
2023/10/09 | 120 | macros/jptex/latex/japanese-otf/vf/utfcgrn-h.vf
+2023/10/09 | 12034 | support/TeX4ht/source/tex4ht-html5.tex
2023/10/09 | 11931 | macros/jptex/latex/japanese-otf/doc/otf-script-gteb.diff
2023/10/09 | 11899 | macros/jptex/latex/japanese-otf/src/script/CheckDVICode.pm
2023/10/09 | 11863 | macros/jptex/latex/japanese-otf/doc/test/uplatex/utfmacro-haranoaji.map
@@ -3454,6 +4586,7 @@
2023/10/09 | 1184 | macros/jptex/latex/japanese-otf/vf/utfgrz-v.vf
2023/10/09 | 1184 | macros/jptex/latex/japanese-otf/vf/utfgrz-h.vf
2023/10/09 | 11799 | macros/jptex/latex/japanese-otf/doc/test/uplatex/utfmacro-ibmplex.map
+2023/10/09 | 1165087 | support/TeX4ht/source/tex4ht-4ht.tex
2023/10/09 | 116440 | macros/jptex/latex/japanese-otf/vf/expmgothrn-h.vf
2023/10/09 | 116440 | macros/jptex/latex/japanese-otf/vf/brsgexpmgothrn-h.vf
2023/10/09 | 116432 | macros/jptex/latex/japanese-otf/vf/expgothrn-h.vf
@@ -3582,7 +4715,6 @@
2023/10/09 | 115900 | macros/jptex/latex/japanese-otf/vf/brsgnmlgothb-h.vf
2023/10/09 | 11564 | systems/texlive/tlnet/archive/pwebmac.doc.r68486.tar.xz
2023/10/09 | 114276 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.xz
-2023/10/09 | 114080 | systems/texlive/tlnet/archive/texlive-scripts.r68479.tar.xz
2023/10/09 | 1134 | macros/jptex/latex/japanese-otf/README
2023/10/09 | 1133 | macros/jptex/latex/japanese-otf/doc/test/brsgtest.tex
2023/10/09 | 112 | macros/jptex/latex/japanese-otf/vf/utfmrx-v.vf
@@ -3797,16 +4929,13 @@
2023/10/08 | 9902 | macros/latex/contrib/profcollege/latex/PfCDecDeci.tex
2023/10/08 | 987 | macros/latex/contrib/profcollege/latex/PfCAllumettes.tex
2023/10/08 | 9734 | macros/latex/contrib/profcollege/latex/PfCVueCubes.tex
-2023/10/08 | 955 | systems/win32/miktex/tm/packages/pr.ini
2023/10/08 | 9501 | macros/latex/contrib/profcollege/latex/PfCLabyrintheJeu.tex
2023/10/08 | 9462857 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf
2023/10/08 | 9404 | macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex
2023/10/08 | 9396 | macros/latex/contrib/profcollege/latex/PfCOperationsTrou.tex
2023/10/08 | 9197 | macros/latex/contrib/profcollege/latex/PfCEcrireunQCM.tex
2023/10/08 | 8956 | macros/latex/contrib/profcollege/latex/PfCBillard.tex
-2023/10/08 | 8882 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
2023/10/08 | 8870 | macros/latex/contrib/profcollege/latex/PfCCalisson.tex
-2023/10/08 | 88653 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
2023/10/08 | 8711 | macros/latex/contrib/profcollege/latex/PfCShikaku.tex
2023/10/08 | 8676 | macros/latex/contrib/profcollege/latex/PfCYohaku.tex
2023/10/08 | 849336 | systems/texlive/tlnet/archive/minted.doc.r68476.tar.xz
@@ -3814,69 +4943,45 @@
2023/10/08 | 831 | macros/latex/contrib/profcollege/latex/PfCDobble.tex
2023/10/08 | 83140 | macros/latex/contrib/profcollege/latex/PfCStatistiques.tex
2023/10/08 | 8307 | macros/latex/contrib/profcollege/latex/PfCTortueBase.tex
-2023/10/08 | 829713 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2023/10/08 | 82245 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2023/10/08 | 82013 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
2023/10/08 | 8166 | macros/latex/contrib/profcollege/latex/PfCPourcentage.tex
-2023/10/08 | 81517 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
2023/10/08 | 7962 | macros/latex/contrib/profcollege/latex/PfCDessinGradue.tex
2023/10/08 | 7961 | macros/latex/contrib/profcollege/latex/PfCSimplifierFraction.tex
2023/10/08 | 7884 | macros/latex/contrib/schule/latex/schuleab.cls
2023/10/08 | 7857 | macros/latex/contrib/profcollege/latex/PfCMulJap.tex
-2023/10/08 | 78393 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
2023/10/08 | 78112 | macros/latex/contrib/profcollege/latex/PfCReperage.tex
2023/10/08 | 7797 | macros/latex/contrib/profcollege/latex/PfCReseauxSociaux.tex
2023/10/08 | 7733 | macros/latex/contrib/profcollege/latex/PfCProbabilites.tex
-2023/10/08 | 77297 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2023/10/08 | 770584 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2023/10/08 | 770567 | systems/win32/miktex/tm/packages/files.csv.lzma
-2023/10/08 | 76151 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2023/10/08 | 75149 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
2023/10/08 | 7498272 | fonts/cascadia-code.zip
2023/10/08 | 7497 | macros/latex/contrib/profcollege/latex/PfCCible.tex
2023/10/08 | 7421974 | systems/win32/miktex/tm/packages/inter.tar.lzma
2023/10/08 | 7387012 | systems/texlive/tlnet/archive/inter.r68476.tar.xz
-2023/10/08 | 73413 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2023/10/08 | 73395 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
2023/10/08 | 7314 | macros/latex/contrib/profcollege/latex/PfCRangementNombres.tex
2023/10/08 | 7305 | macros/latex/contrib/profcollege/latex/PfCNombreAstral.tex
2023/10/08 | 72660 | systems/texlive/tlnet/archive/archaeologie.r68476.tar.xz
2023/10/08 | 7244 | macros/latex/contrib/profcollege/latex/PfCFrise.tex
2023/10/08 | 7197 | macros/latex/contrib/schule/latex/schullzk.sty
-2023/10/08 | 7168 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/10/08 | 7148 | macros/latex/contrib/profcollege/latex/PfCCalculsFractions.tex
2023/10/08 | 7142 | macros/latex/contrib/profcollege/latex/PfCPuissanceQuatre.tex
2023/10/08 | 7105 | macros/latex/contrib/profcollege/latex/PfCHorloge.tex
2023/10/08 | 7102 | macros/latex/contrib/profcollege/latex/PfCPuzzleSommePyramide.tex
2023/10/08 | 70914 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.pdf
2023/10/08 | 7088 | macros/latex/contrib/profcollege/latex/PfCColorilude.tex
-2023/10/08 | 707458 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2023/10/08 | 698698 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2023/10/08 | 69799 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
2023/10/08 | 6941 | macros/latex/contrib/profcollege/latex/PfCGrimuku.tex
2023/10/08 | 6840 | macros/latex/contrib/profcollege/latex/PfCNumerationsAnciennes.tex
2023/10/08 | 67772 | systems/win32/miktex/tm/packages/siunitx.tar.lzma
2023/10/08 | 6771 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex
2023/10/08 | 67692 | systems/texlive/tlnet/archive/siunitx.r68476.tar.xz
-2023/10/08 | 67459 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
2023/10/08 | 664899 | support/autosp.zip
2023/10/08 | 6616 | macros/latex/contrib/profcollege/latex/PfCMulJal.tex
2023/10/08 | 6595 | macros/latex/contrib/schule/latex/schulinf.sty
2023/10/08 | 6570 | macros/latex/contrib/profcollege/latex/PfCRepresenterEntier.tex
2023/10/08 | 6525 | macros/latex/contrib/profcollege/latex/PfCMentalo.tex
-2023/10/08 | 65110 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2023/10/08 | 64502 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
2023/10/08 | 6263 | macros/latex/contrib/schule/latex/schulekl.cls
2023/10/08 | 6260 | macros/latex/contrib/profcollege/latex/PfCProgrammeCalcul.tex
-2023/10/08 | 60978 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
2023/10/08 | 608 | systems/texlive/tlnet/archive/collection-humanities.r68465.tar.xz
-2023/10/08 | 606321 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
2023/10/08 | 6030 | macros/latex/contrib/profcollege/latex/PfCTectonic.tex
-2023/10/08 | 603024 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
2023/10/08 | 5970652 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.zip
2023/10/08 | 5951 | macros/latex/contrib/schule/latex/schullzk.cls
-2023/10/08 | 59315 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2023/10/08 | 58936 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
2023/10/08 | 58611 | macros/latex/contrib/profcollege/latex/PfCDistributivite.tex
2023/10/08 | 5824 | macros/latex/contrib/profcollege/latex/PfCPatronPaves.tex
2023/10/08 | 5787 | macros/latex/contrib/schule/latex/schulein.cls
@@ -3885,40 +4990,25 @@
2023/10/08 | 56982 | macros/latex/contrib/profcollege/latex/PfCThales.tex
2023/10/08 | 563485 | macros/latex/contrib/msu-thesis.zip
2023/10/08 | 562240 | systems/texlive/tlnet/archive/lastpage.doc.r68476.tar.xz
-2023/10/08 | 55917 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
2023/10/08 | 5507 | macros/latex/contrib/schule/latex/schulphy.sty
-2023/10/08 | 54816 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
2023/10/08 | 5446532 | systems/texlive/tlnet/archive/opbible.doc.r68465.tar.xz
-2023/10/08 | 54129 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
2023/10/08 | 5365 | macros/latex/contrib/profcollege/latex/PfCMidpoint.tex
-2023/10/08 | 530336 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
2023/10/08 | 529 | macros/latex/contrib/proflycee/doc/testscript.py
-2023/10/08 | 52619 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
2023/10/08 | 5223 | macros/latex/contrib/profcollege/latex/PfCRepresenterTableur.tex
2023/10/08 | 5149 | support/autosp/doc/quod2.aspc
2023/10/08 | 5062 | support/autosp/doc/quod2A.aspc
-2023/10/08 | 499490 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2023/10/08 | 49719 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
2023/10/08 | 4920381 | macros/latex/contrib/schule.zip
2023/10/08 | 4847 | support/autosp/README
-2023/10/08 | 48284 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
2023/10/08 | 47728 | systems/texlive/tlnet/archive/minted.source.r68476.tar.xz
2023/10/08 | 4749 | macros/latex/contrib/profcollege/latex/PfCCryptarithme.tex
-2023/10/08 | 47385 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2023/10/08 | 472997 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
2023/10/08 | 472582 | support/autosp/Windows/autosp.exe
2023/10/08 | 4692 | macros/latex/contrib/profcollege/latex/PfCFutoshiki.tex
2023/10/08 | 4664 | macros/latex/contrib/profcollege/latex/PfCDiagrammeRadar.tex
-2023/10/08 | 45896 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
2023/10/08 | 4548 | macros/latex/contrib/profcollege/latex/PfCMosaique.tex
2023/10/08 | 4456 | systems/texlive/tlnet/archive/lastpage.r68476.tar.xz
-2023/10/08 | 44336 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2023/10/08 | 44116 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2023/10/08 | 44107 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
2023/10/08 | 4403 | macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex
2023/10/08 | 4369 | macros/latex/contrib/profcollege/latex/PfCJeuRangement.tex
2023/10/08 | 43455 | macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex
-2023/10/08 | 43149 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
2023/10/08 | 43039 | macros/latex/contrib/msu-thesis/msu-thesis.cls
2023/10/08 | 428412 | systems/texlive/tlnet/archive/biblatex-publist.doc.r68476.tar.xz
2023/10/08 | 4236 | macros/latex/contrib/profcollege/latex/PfCPixelArt.tex
@@ -3927,41 +5017,24 @@
2023/10/08 | 415318 | systems/win32/miktex/tm/packages/biblatex-publist__doc.tar.lzma
2023/10/08 | 4125 | macros/latex/contrib/profcollege/latex/PfCMulPiecesPuzzle.tex
2023/10/08 | 4113 | macros/latex/contrib/profcollege/latex/PfCDomino.tex
-2023/10/08 | 40373 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2023/10/08 | 395303 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
2023/10/08 | 393 | macros/latex/contrib/msu-thesis/samples/chap2bib.tex
2023/10/08 | 3835 | macros/latex/contrib/profcollege/latex/PfCKenKen.tex
2023/10/08 | 3798 | macros/latex/contrib/profcollege/latex/PfCEratosthene.tex
2023/10/08 | 3765 | macros/latex/contrib/profcollege/latex/PfCEnquete.tex
-2023/10/08 | 37613 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2023/10/08 | 36809 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
2023/10/08 | 36770 | support/autosp/doc/quod2.pdf
-2023/10/08 | 36713 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
2023/10/08 | 3618 | macros/latex/contrib/profcollege/latex/PfCDecompFracDeci.tex
2023/10/08 | 35829 | macros/latex/contrib/profcollege/latex/PfCPavage.tex
2023/10/08 | 35636 | macros/latex/contrib/proflycee/tex/proflycee-tools-probas.tex
-2023/10/08 | 35345 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2023/10/08 | 351820 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
2023/10/08 | 3504 | graphics/pgf/contrib/tikz-osci/doc/tikz-osci-example.tex
2023/10/08 | 3466 | macros/latex/contrib/profcollege/latex/PfCTablesOperations.tex
2023/10/08 | 3466 | macros/latex/contrib/profcollege/latex/PfCFubuki.tex
2023/10/08 | 3431 | macros/latex/contrib/profcollege/latex/PfCBarresCalculs.tex
2023/10/08 | 3409 | macros/latex/contrib/profcollege/latex/PfCDefiCalc.tex
-2023/10/08 | 33863 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2023/10/08 | 33844 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2023/10/08 | 334731 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2023/10/08 | 334631 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2023/10/08 | 330156 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2023/10/08 | 3300 | systems/win32/miktex/tm/packages/tikz-osci__source.tar.lzma
-2023/10/08 | 32866 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
2023/10/08 | 3280 | macros/latex/contrib/profcollege/latex/PfCFicheMemo.tex
2023/10/08 | 327 | macros/latex/contrib/msu-thesis/samples/chap4bib.tex
-2023/10/08 | 32099 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
2023/10/08 | 319 | macros/latex/contrib/msu-thesis/samples/chap3bib.tex
-2023/10/08 | 31556 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
2023/10/08 | 314511 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
2023/10/08 | 312 | graphics/pgf/contrib/tikz-osci/README.md
-2023/10/08 | 305367 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
2023/10/08 | 3049 | macros/latex/contrib/profcollege/latex/PfCRLE.tex
2023/10/08 | 30003 | macros/latex/contrib/profcollege/latex/PfCCartesJeux.tex
2023/10/08 | 2985076 | systems/texlive/tlnet/archive/simpleicons.r68476.tar.xz
@@ -3970,86 +5043,57 @@
2023/10/08 | 2939 | macros/latex/contrib/profcollege/latex/PfCBarreNiveaux.tex
2023/10/08 | 2936 | macros/latex/contrib/msu-thesis/README.md
2023/10/08 | 29363 | macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex
-2023/10/08 | 29142 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2023/10/08 | 291213 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
2023/10/08 | 29000 | systems/texlive/tlnet/archive/opbible.r68465.tar.xz
2023/10/08 | 28872 | macros/latex/contrib/profcollege/latex/PfCSolides.tex
-2023/10/08 | 287532 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
2023/10/08 | 2872 | systems/texlive/tlnet/archive/circularglyphs.r68476.tar.xz
-2023/10/08 | 2844859 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
2023/10/08 | 2831 | macros/latex/contrib/profcollege/metapost/PfCAllumettes.mp
2023/10/08 | 2815 | macros/latex/contrib/profcollege/latex/PfCMotsCodes.tex
2023/10/08 | 28129 | macros/latex/contrib/profcollege/latex/PfCRappelsFormules.tex
-2023/10/08 | 2780 | systems/win32/miktex/tm/packages/tikz-osci.tar.lzma
2023/10/08 | 277 | macros/latex/contrib/msu-thesis/samples/chap1bib.tex
2023/10/08 | 2750176 | systems/texlive/tlnet/archive/listings.doc.r68476.tar.xz
-2023/10/08 | 272211 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2023/10/08 | 27178 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
2023/10/08 | 27115 | macros/latex/contrib/profcollege/latex/PfCPythagore.tex
2023/10/08 | 269456 | systems/texlive/tlnet/archive/listings.source.r68476.tar.xz
-2023/10/08 | 2644 | systems/texlive/tlnet/archive/tikz-osci.r68470.tar.xz
2023/10/08 | 2617 | macros/latex/contrib/profcollege/latex/PfCQuiSuisJe.tex
2023/10/08 | 2605 | macros/latex/contrib/profcollege/latex/PfCKakurasu.tex
2023/10/08 | 25839 | macros/latex/contrib/proflycee/tex/proflycee-tools-arithm.tex
2023/10/08 | 25681 | macros/latex/contrib/profcollege/latex/PfCPavageAvecMotifImage.tex
-2023/10/08 | 25612 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2023/10/08 | 25593 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
2023/10/08 | 25302 | macros/latex/contrib/profcollege/latex/PfCQuestionsFlash.tex
2023/10/08 | 2528585 | macros/musixtex.zip
2023/10/08 | 2499 | macros/latex/contrib/profcollege/latex/PfCSquaro.tex
-2023/10/08 | 249314 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
2023/10/08 | 2470 | macros/latex/contrib/profcollege/latex/PfCEcritureLettres.tex
2023/10/08 | 24666 | macros/latex/contrib/profcollege/latex/PfCTrigonometrie.tex
-2023/10/08 | 245915 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2023/10/08 | 24151 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
2023/10/08 | 23237 | macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex
-2023/10/08 | 232113 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
2023/10/08 | 2301 | macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex
2023/10/08 | 2285 | macros/latex/contrib/profcollege/latex/PfCGrades.tex
2023/10/08 | 2276 | macros/latex/contrib/profcollege/latex/PfCKakuro.tex
2023/10/08 | 22292 | systems/texlive/tlnet/archive/lastpage.source.r68476.tar.xz
2023/10/08 | 2222 | macros/latex/contrib/profcollege/latex/PfCMotsCroises.tex
-2023/10/08 | 221509 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2023/10/08 | 2211 | macros/latex/contrib/profcollege/latex/PfCHiddenMessage.tex
2023/10/08 | 2197132 | systems/texlive/tlnet/archive/simpleicons.doc.r68476.tar.xz
-2023/10/08 | 218867 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2023/10/08 | 217395 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
2023/10/08 | 2155 | macros/latex/contrib/profcollege/latex/PfCGaram.tex
2023/10/08 | 215120 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdf
2023/10/08 | 2072 | macros/latex/contrib/profcollege/latex/PfCBonSortie.tex
-2023/10/08 | 203204 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2023/10/08 | 2018396 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
2023/10/08 | 2013 | macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex
-2023/10/08 | 19996 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2023/10/08 | 19951 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
2023/10/08 | 19900 | macros/latex/contrib/profcollege/latex/PfCTrio.tex
2023/10/08 | 19749 | macros/latex/contrib/profcollege/latex/PfCRose.tex
2023/10/08 | 19720 | macros/latex/contrib/profcollege/latex/ProfCollege.sty
-2023/10/08 | 1954991 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2023/10/08 | 1953396 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
2023/10/08 | 19160 | macros/latex/contrib/profcollege/latex/PfCPattern.tex
2023/10/08 | 1862 | macros/latex/contrib/profcollege/latex/PfCMotsEmpiles.tex
2023/10/08 | 18577 | systems/win32/miktex/tm/packages/biblatex-publist__source.tar.lzma
-2023/10/08 | 182747 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
2023/10/08 | 182608 | systems/texlive/tlnet/archive/circularglyphs.doc.r68476.tar.xz
2023/10/08 | 17973 | macros/latex/contrib/schule/latex/schuleub.cls
2023/10/08 | 17843482 | macros/latex/contrib/profcollege.zip
2023/10/08 | 1777 | macros/latex/contrib/profcollege/latex/PfCRapido.tex
-2023/10/08 | 174046 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2023/10/08 | 1687982 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2023/10/08 | 1687764 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
2023/10/08 | 16486 | macros/latex/contrib/profcollege/latex/PfCRondeInfernale.tex
2023/10/08 | 1624 | systems/texlive/tlnet/archive/collection-pictures.r68464.tar.xz
2023/10/08 | 16190 | macros/latex/contrib/profcollege/latex/PfCResoudreEquation.tex
2023/10/08 | 1606 | macros/latex/contrib/profcollege/latex/PfCGeometrie.tex
2023/10/08 | 16038 | macros/latex/contrib/profcollege/latex/PfCRepresenterFraction.tex
-2023/10/08 | 160037 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
2023/10/08 | 15925 | macros/latex/contrib/profcollege/latex/PfCPropor.tex
2023/10/08 | 15861 | macros/latex/contrib/profcollege/latex/PfCFonctionAffine.tex
2023/10/08 | 154401 | graphics/pgf/contrib/tikz-osci/doc/tikz-osci-doc.pdf
2023/10/08 | 15414 | macros/latex/contrib/schule/latex/schulealt.sty
2023/10/08 | 15355 | macros/latex/contrib/profcollege/latex/PfCRepresentationGraphique.tex
-2023/10/08 | 1531292 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
2023/10/08 | 1528 | macros/latex/contrib/profcollege/latex/PfCCartesMentales.tex
2023/10/08 | 15073 | macros/latex/contrib/profcollege/latex/PfCFactorisation.tex
2023/10/08 | 1495919 | macros/latex/contrib/proflycee.zip
@@ -4057,19 +5101,14 @@
2023/10/08 | 1488 | macros/latex/contrib/profcollege/latex/PfCScratch.tex
2023/10/08 | 148891 | support/autosp/source/autosp-2023-10-07.tar.gz
2023/10/08 | 146500 | systems/texlive/tlnet/archive/listings.r68476.tar.xz
-2023/10/08 | 14611 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
-2023/10/08 | 1438037 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
2023/10/08 | 14262 | macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex
2023/10/08 | 14262 | macros/latex/contrib/profcollege/latex/PfCCAN.tex
-2023/10/08 | 141977 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
2023/10/08 | 14131 | macros/latex/contrib/profcollege/latex/PfCDessinerRatio.tex
2023/10/08 | 14120 | macros/latex/contrib/profcollege/latex/PfCNonogramme.tex
2023/10/08 | 139419 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-chapterbib-testfile.pdf
2023/10/08 | 137767 | graphics/pgf/contrib/tikz-osci/doc/tikz-osci-example.pdf
-2023/10/08 | 137750 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
2023/10/08 | 13626 | macros/latex/contrib/schule/latex/schuleit.cls
2023/10/08 | 135936 | systems/texlive/tlnet/archive/archaeologie.source.r68476.tar.xz
-2023/10/08 | 1341797 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
2023/10/08 | 13388 | graphics/pgf/contrib/tikz-osci/doc/tikz-osci-doc.tex
2023/10/08 | 1291421 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma
2023/10/08 | 1288028 | systems/texlive/tlnet/archive/siunitx.doc.r68476.tar.xz
@@ -4081,42 +5120,29 @@
2023/10/08 | 122967 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma
2023/10/08 | 12069 | macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex
2023/10/08 | 12065 | macros/latex/contrib/profcollege/latex/PfCNumberHive.tex
-2023/10/08 | 117789 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
2023/10/08 | 11740 | macros/latex/contrib/profcollege/latex/PfCSommeAngles.tex
-2023/10/08 | 1172939 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
2023/10/08 | 11616 | macros/latex/contrib/profcollege/latex/PfCDefiTables.tex
2023/10/08 | 11592 | macros/latex/contrib/profcollege/latex/PfCFractionNombre.tex
2023/10/08 | 1153426 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
-2023/10/08 | 1150 | systems/win32/miktex/tm/packages/next/pr.ini
2023/10/08 | 113875 | macros/latex/contrib/msu-thesis/msu-thesis.pdf
2023/10/08 | 1137 | fonts/cascadia-code/README
2023/10/08 | 11255 | macros/latex/contrib/profcollege/latex/PfCCompteBon.tex
-2023/10/08 | 112399 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
2023/10/08 | 11142 | macros/latex/contrib/profcollege/latex/PfCDessinAlgo.tex
2023/10/08 | 11046 | macros/latex/contrib/profcollege/latex/PfCAutomatismes.tex
2023/10/08 | 11026 | macros/latex/contrib/profcollege/latex/PfCProprietesDroites.tex
-2023/10/08 | 109939 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
2023/10/08 | 10951 | macros/latex/contrib/profcollege/latex/PfCAutonomie.tex
2023/10/08 | 1088 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.bib
-2023/10/08 | 108495 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
2023/10/08 | 10728 | macros/latex/contrib/schule/latex/schulekl.sty
2023/10/08 | 1072584 | systems/texlive/tlnet/archive/archaeologie.doc.r68476.tar.xz
2023/10/08 | 10688 | graphics/pgf/contrib/tikz-osci/tikz-osci.sty
-2023/10/08 | 106511 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
2023/10/08 | 10633 | macros/latex/contrib/profcollege/latex/PfCEnigmeAire.tex
2023/10/08 | 10605 | macros/latex/contrib/profcollege/latex/PfCSerpent.tex
-2023/10/08 | 105617 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
2023/10/08 | 10548 | macros/latex/contrib/profcollege/latex/PfCModeleBarre.tex
2023/10/08 | 1053 | macros/latex/contrib/profcollege/latex/PfCBonbon.tex
-2023/10/08 | 104443 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2023/10/08 | 104110 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2023/10/08 | 103554 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
2023/10/08 | 10322 | macros/latex/contrib/profcollege/latex/PfCCibleQOp.tex
-2023/10/08 | 102688 | systems/texlive/tlnet/archive/tikz-osci.doc.r68470.tar.xz
2023/10/08 | 10168 | macros/latex/contrib/profcollege/latex/PfCPapiers.tex
2023/10/08 | 10129 | macros/latex/contrib/profcollege/latex/PfCCartographie.tex
2023/10/08 | 10096 | systems/texlive/tlnet/archive/minted.r68476.tar.xz
-2023/10/08 | 100599 | systems/win32/miktex/tm/packages/tikz-osci__doc.tar.lzma
2023/10/07 | 998 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx
2023/10/07 | 9535 | macros/latex/contrib/biblatex-contrib/biblatex-publist/README
2023/10/07 | 9239 | macros/latex/contrib/siunitx/siunitx-symbol.dtx
@@ -4150,7 +5176,6 @@
2023/10/07 | 748 | fonts/inter/vf/Inter-ExtraBold-tlf-oml.vf
2023/10/07 | 748 | fonts/inter/vf/Inter-ExtraBold-lf-oml.vf
2023/10/07 | 748 | fonts/inter/vf/Inter-Black-tlf-oml.vf
-2023/10/07 | 747779 | systems/win32/miktex/tm/packages/cascadia-code__doc.tar.lzma
2023/10/07 | 744 | fonts/inter/vf/Inter-Regular-lf-oml.vf
2023/10/07 | 744 | fonts/inter/vf/Inter-Medium-tlf-oml.vf
2023/10/07 | 744 | fonts/inter/vf/Inter-Medium-lf-oml.vf
@@ -4921,7 +5946,6 @@
2023/10/07 | 1344 | fonts/inter/tfm/Inter-ExtraLight-sup-ot1.tfm
2023/10/07 | 133 | macros/musixtex/doc/ChangeLog-137.txt
2023/10/07 | 1328 | fonts/inter/tfm/Inter-Black-sup-ot1.tfm
-2023/10/07 | 13249053 | systems/win32/miktex/tm/packages/cascadia-code.tar.lzma
2023/10/07 | 1316 | fonts/inter/tfm/Inter-Thin-sup-ot1.tfm
2023/10/07 | 1304 | fonts/inter/tfm/Inter-Regular-sup-ot1.tfm
2023/10/07 | 1303 | macros/latex/contrib/schule/doc/Beispiele/bsp_aufgabe1/bsp_aufgabe_01.tex
@@ -5103,9 +6127,7 @@
2023/10/06 | 17877 | graphics/pgf/contrib/circularglyphs/tex/circularglyphs.sty
2023/10/06 | 178656 | fonts/cascadia-code/opentype/CascadiaCode-ExtraLightItalic.otf
2023/10/06 | 1521 | fonts/simpleicons/tex/simpleicons.sty
-2023/10/06 | 1456960 | systems/texlive/tlnet/archive/tex4ht.source.r68458.tar.xz
2023/10/06 | 140214 | fonts/simpleicons/doc/bindings.tex
-2023/10/06 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r68458.tar.xz
2023/10/06 | 136241 | graphics/pgf/contrib/circularglyphs/doc/circularglyphs-doc.pdf
2023/10/06 | 13588 | systems/win32/miktex/tm/packages/sidenotesplus__source.tar.lzma
2023/10/06 | 13137 | graphics/pgf/contrib/circularglyphs/doc/circularglyphs-doc.tex
@@ -5127,7 +6149,6 @@
2023/10/06 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfive.tfm
2023/10/06 | 1228 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsone.tfm
2023/10/06 | 1112 | systems/win32/miktex/tm/packages/nlctdoc__doc.tar.lzma
-2023/10/06 | 1103512 | systems/texlive/tlnet/archive/tex4ht.r68458.tar.xz
2023/10/06 | 107356 | systems/texlive/tlnet/archive/pdfjam.doc.r68457.tar.xz
2023/10/06 | 10383 | macros/latex/contrib/biblatex-contrib/archaeologie/README.md
2023/10/05 | 994 | macros/latex/contrib/sidenotesplus/README.txt
@@ -5195,6 +6216,7 @@
2023/10/05 | 531834 | systems/win32/miktex/tm/packages/miktex-log4cxx-bin-x64-2.9.tar.lzma
2023/10/05 | 5288 | biblio/citation-style-language/nature.csl
2023/10/05 | 52662 | systems/win32/miktex/tm/packages/miktex-m-tx-bin-x64-2.9.tar.lzma
+2023/10/05 | 524 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex
2023/10/05 | 51748 | biblio/citation-style-language/citeproc-node-citation.lua
2023/10/05 | 500824 | systems/win32/miktex/tm/packages/miktex-ptex-bin-x64.tar.lzma
2023/10/05 | 499 | systems/win32/miktex/source/miktex-23.10.tar.xz.asc
@@ -5235,6 +6257,7 @@
2023/10/05 | 37599 | systems/win32/miktex/tm/packages/miktex-posix-bin-x64-2.9.tar.lzma
2023/10/05 | 3733 | systems/win32/miktex/setup/rpm/fedora/37/repodata/f98a1b454fb25dddf2f31ba9abb1cf566c0edb364f94aa80c8bb24bbdcc4bb43-primary.xml.gz
2023/10/05 | 37255 | biblio/citation-style-language/citeproc-node-names.lua
+2023/10/05 | 368 | macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex
2023/10/05 | 36811 | systems/win32/miktex/tm/packages/miktex-axohelp-bin-x64-2.9.tar.lzma
2023/10/05 | 36723 | systems/win32/miktex/tm/packages/miktex-arctrl-bin-x64-2.9.tar.lzma
2023/10/05 | 3577 | systems/win32/miktex/setup/deb/dists/focal/universe/binary-amd64/Packages.bz2
@@ -5294,7 +6317,6 @@
2023/10/05 | 235043 | macros/latex/contrib/sidenotesplus/sidenotesplus.pdf
2023/10/05 | 2341 | biblio/citation-style-language/citeproc-nodes.lua
2023/10/05 | 231997 | systems/win32/miktex/tm/packages/miktex-metafont-bin-x64-2.9.tar.lzma
-2023/10/05 | 231872 | support/TeX4ht/source/ChangeLog
2023/10/05 | 23123 | biblio/citation-style-language/csl-locales-el-GR.xml
2023/10/05 | 23115089 | systems/win32/miktex/setup/rpm/rockylinux/9/miktex-23.10-1.el9.x86_64.rpm
2023/10/05 | 22987 | biblio/citation-style-language/chicago-author-date.csl
@@ -5449,125 +6471,3 @@
2023/10/04 | 1448431 | macros/musixtex/doc/musixdoc.pdf
2023/10/04 | 12700 | systems/texlive/tlnet/archive/minimalist.r68447.tar.xz
2023/10/04 | 119 | systems/win32/miktex/setup/rpm/rockylinux-9.repo
-2023/10/03 | 98799 | macros/latex/contrib/nlctdoc/nlctuserguide.sty
-2023/10/03 | 95307 | systems/win32/miktex/tm/packages/plex__doc.tar.lzma
-2023/10/03 | 950 | graphics/pgf/contrib/schemabloc/README.txt
-2023/10/03 | 95056 | systems/texlive/tlnet/archive/plex.doc.r68430.tar.xz
-2023/10/03 | 94823 | systems/win32/miktex/tm/packages/luabidi__source.tar.lzma
-2023/10/03 | 94532 | systems/texlive/tlnet/archive/luabidi.doc.r68432.tar.xz
-2023/10/03 | 93934 | systems/win32/miktex/tm/packages/glossaries.tar.lzma
-2023/10/03 | 93476 | systems/texlive/tlnet/archive/glossaries.r68437.tar.xz
-2023/10/03 | 9093 | systems/win32/miktex/tm/packages/projlib__doc.tar.lzma
-2023/10/03 | 90681 | macros/latex/contrib/homework/homework-demo-tc.pdf
-2023/10/03 | 8716 | systems/texlive/tlnet/archive/projlib.doc.r68433.tar.xz
-2023/10/03 | 86982 | macros/latex/contrib/homework/homework-demo-jp.pdf
-2023/10/03 | 8575 | macros/latex/contrib/minimalist/minimalist.sty
-2023/10/03 | 8401 | macros/latex/contrib/minimalist/minimart.cls
-2023/10/03 | 8398 | macros/latex/contrib/minimalist/minimbook.cls
-2023/10/03 | 83800 | macros/latex/contrib/homework/homework-demo-cn.pdf
-2023/10/03 | 7569755 | systems/win32/miktex/tm/packages/beautybook__doc.tar.lzma
-2023/10/03 | 747036 | systems/win32/miktex/tm/packages/caption__doc.tar.lzma
-2023/10/03 | 745885 | systems/win32/miktex/tm/packages/polyglossia__doc.tar.lzma
-2023/10/03 | 7424 | systems/texlive/tlnet/archive/colorist.doc.r68440.tar.xz
-2023/10/03 | 73552 | systems/texlive/tlnet/archive/cweb.doc.r68429.tar.xz
-2023/10/03 | 7000 | systems/win32/miktex/tm/packages/newfloat.tar.lzma
-2023/10/03 | 6917 | systems/win32/miktex/tm/packages/homework__source.tar.lzma
-2023/10/03 | 6816 | systems/texlive/tlnet/archive/newfloat.r68434.tar.xz
-2023/10/03 | 663 | systems/win32/miktex/setup/rpm/fedora/34/repodata/601e7bc9f70e135b3675653eeeff24b3ffc0e92c3c820691013ffee080b296fa-other.xml.gz
-2023/10/03 | 6386 | systems/win32/miktex/tm/packages/simplekv__source.tar.lzma
-2023/10/03 | 627 | macros/latex/contrib/nlctdoc/README
-2023/10/03 | 61512 | systems/win32/miktex/tm/packages/caption.tar.lzma
-2023/10/03 | 552513 | systems/win32/miktex/tm/packages/bithesis__doc.tar.lzma
-2023/10/03 | 54609 | macros/latex/contrib/minimalist.zip
-2023/10/03 | 52524 | macros/latex/contrib/homework/homework-demo-de.pdf
-2023/10/03 | 524550 | macros/latex/contrib/homework.zip
-2023/10/03 | 51865 | macros/latex/contrib/homework/homework-demo-es.pdf
-2023/10/03 | 51601 | macros/latex/contrib/homework/homework-demo-fr.pdf
-2023/10/03 | 51255 | macros/latex/contrib/homework/homework-demo-en.pdf
-2023/10/03 | 4999428 | systems/texlive/tlnet/archive/arara.doc.r68431.tar.xz
-2023/10/03 | 4996205 | systems/win32/miktex/tm/packages/arara__doc.tar.lzma
-2023/10/03 | 488 | systems/win32/miktex/setup/rpm/fedora/34/repodata/repomd.xml.asc
-2023/10/03 | 44866964 | systems/texlive/tlnet/archive/beautybook.doc.r68438.tar.xz
-2023/10/03 | 43858 | macros/latex/contrib/minimalist/minimalist-flow.sty
-2023/10/03 | 43385 | macros/latex/contrib/minimalist/minimalist-default.sty
-2023/10/03 | 43304 | systems/win32/miktex/setup/rpm/fedora/34/repodata/659339e89a962a2e204e5c444e5c22299661bd7d6f4c4430c5a3c718ea3dfa69-filelists.sqlite.bz2
-2023/10/03 | 43209 | macros/latex/contrib/minimalist/minimalist-stream.sty
-2023/10/03 | 42581 | macros/latex/contrib/minimalist/minimalist-classical.sty
-2023/10/03 | 41169 | macros/latex/contrib/minimalist/minimalist-plain.sty
-2023/10/03 | 39749767 | systems/win32/miktex/tm/packages/beautybook.tar.lzma
-2023/10/03 | 3853 | systems/win32/miktex/tm/packages/jwjournal.tar.lzma
-2023/10/03 | 3820 | systems/win32/miktex/setup/rpm/fedora/34/repodata/e8b2470ed5410fbdc99641167c9ae5d3a2240f01515ae0a555a7d34a5b3e9644-primary.xml.gz
-2023/10/03 | 37203 | graphics/pgf/contrib/schemabloc/schemabloc.tex
-2023/10/03 | 3640 | macros/latex/contrib/homework/homework-demo-jp.tex
-2023/10/03 | 3608 | macros/latex/contrib/homework/homework-demo-de.tex
-2023/10/03 | 3525 | macros/latex/contrib/homework/homework-demo-fr.tex
-2023/10/03 | 34271 | systems/win32/miktex/setup/rpm/fedora/34/repodata/12a01fae5a76ca36db91b5289616a11a2072b895e072e8827d8c6b1cb4b43002-primary.sqlite.bz2
-2023/10/03 | 3409 | macros/latex/contrib/homework/homework-demo-es.tex
-2023/10/03 | 3359 | systems/win32/miktex/tm/packages/simplekv.tar.lzma
-2023/10/03 | 3289 | macros/latex/contrib/homework/homework-demo-en.tex
-2023/10/03 | 3218 | macros/latex/contrib/homework/homework-demo-tc.tex
-2023/10/03 | 3209 | macros/latex/contrib/homework/homework-demo-cn.tex
-2023/10/03 | 3100 | systems/texlive/tlnet/archive/simplekv.r68439.tar.xz
-2023/10/03 | 30103 | macros/latex/contrib/homework/homework-example-sheet-answer.pdf
-2023/10/03 | 2979 | systems/win32/miktex/setup/rpm/fedora/34/repodata/repomd.xml
-2023/10/03 | 289394 | graphics/pgf/contrib/schemabloc/schemabloc.pdf
-2023/10/03 | 28447 | systems/win32/miktex/setup/rpm/fedora/34/repodata/f952c6877b4f0834b0c9e4058f4dbfddaa175931d98701a1cd74af31f2a4a1f1-filelists.xml.gz
-2023/10/03 | 28189 | macros/latex/contrib/nlctdoc.zip
-2023/10/03 | 2795 | systems/win32/miktex/tm/packages/luabidi.tar.lzma
-2023/10/03 | 27875 | systems/win32/miktex/tm/packages/bithesis__source.tar.lzma
-2023/10/03 | 2748 | systems/texlive/tlnet/archive/luabidi.r68432.tar.xz
-2023/10/03 | 27025 | systems/win32/miktex/tm/packages/projlib__source.tar.lzma
-2023/10/03 | 2696 | macros/latex/contrib/homework/homework-example-sheet.tex
-2023/10/03 | 26656 | systems/win32/miktex/tm/packages/projlib.tar.lzma
-2023/10/03 | 26640 | macros/latex/contrib/nlctdoc/nlctdoc.cls
-2023/10/03 | 26588 | systems/texlive/tlnet/archive/projlib.source.r68433.tar.xz
-2023/10/03 | 2654 | macros/latex/contrib/minimalist/README.md
-2023/10/03 | 26400 | systems/texlive/tlnet/archive/projlib.r68433.tar.xz
-2023/10/03 | 25491 | macros/latex/contrib/proflycee/tex/proflycee-tools-listings.tex
-2023/10/03 | 24712 | systems/texlive/tlnet/archive/cweb.r68429.tar.xz
-2023/10/03 | 236964 | systems/texlive/tlnet/archive/doclicense.r68441.tar.xz
-2023/10/03 | 236195 | systems/win32/miktex/tm/packages/doclicense.tar.lzma
-2023/10/03 | 23613408 | systems/win32/miktex/setup/rpm/opensuse/15/miktex-23.9.24-1.x86_64.rpm
-2023/10/03 | 230024 | systems/texlive/tlnet/archive/doclicense.doc.r68441.tar.xz
-2023/10/03 | 228938 | systems/win32/miktex/tm/packages/doclicense__doc.tar.lzma
-2023/10/03 | 22673629 | systems/win32/miktex/setup/rpm/fedora/38/miktex-23.9.24-1.fc38.x86_64.rpm
-2023/10/03 | 22548192 | systems/win32/miktex/setup/rpm/fedora/37/miktex-23.9.24-1.fc37.x86_64.rpm
-2023/10/03 | 21936 | macros/latex/contrib/homework/homework-example-sheet.pdf
-2023/10/03 | 218734 | systems/win32/miktex/tm/packages/caption__source.tar.lzma
-2023/10/03 | 216866 | graphics/pgf/contrib/schemabloc.zip
-2023/10/03 | 21612 | systems/win32/miktex/tm/packages/bithesis.tar.lzma
-2023/10/03 | 20751503 | systems/win32/miktex/setup/rpm/fedora/34/miktex-23.9.24-1.fc34.x86_64.rpm
-2023/10/03 | 19106 | macros/latex/contrib/minimalist/LICENSE
-2023/10/03 | 19106 | macros/latex/contrib/homework/LICENSE
-2023/10/03 | 18924 | systems/win32/miktex/tm/packages/newfloat__source.tar.lzma
-2023/10/03 | 18424 | systems/texlive/tlnet/archive/newfloat.source.r68434.tar.xz
-2023/10/03 | 170084 | systems/win32/miktex/tm/packages/polyglossia__source.tar.lzma
-2023/10/03 | 16296 | systems/texlive/tlnet/archive/beautybook.r68438.tar.xz
-2023/10/03 | 152432 | systems/win32/miktex/tm/packages/glossaries__source.tar.lzma
-2023/10/03 | 151748 | systems/texlive/tlnet/archive/glossaries.source.r68437.tar.xz
-2023/10/03 | 15167140 | systems/texlive/tlnet/archive/arara.r68431.tar.xz
-2023/10/03 | 15165823 | systems/win32/miktex/tm/packages/arara.tar.lzma
-2023/10/03 | 15069 | systems/win32/miktex/tm/packages/doclicense__source.tar.lzma
-2023/10/03 | 14753 | systems/win32/miktex/tm/packages/beautybook__source.tar.lzma
-2023/10/03 | 142696 | systems/texlive/tlnet/archive/simplekv.doc.r68439.tar.xz
-2023/10/03 | 1379 | systems/win32/miktex/setup/rpm/fedora/34/repodata/0bd235420bf57b1f09744aaa5e1204b9209b0f849ead1a12977323107c3059de-other.sqlite.bz2
-2023/10/03 | 137376 | systems/win32/miktex/tm/packages/simplekv__doc.tar.lzma
-2023/10/03 | 13588 | systems/texlive/tlnet/archive/doclicense.source.r68441.tar.xz
-2023/10/03 | 12 | macros/latex/contrib/minimalist/DEPENDS.txt
-2023/10/03 | 12 | macros/latex/contrib/homework/DEPENDS.txt
-2023/10/03 | 127960 | systems/win32/miktex/tm/packages/polyglossia.tar.lzma
-2023/10/03 | 119100 | systems/win32/miktex/tm/packages/newfloat__doc.tar.lzma
-2023/10/03 | 118716 | systems/texlive/tlnet/archive/newfloat.doc.r68434.tar.xz
-2023/10/03 | 11727 | macros/latex/contrib/homework/homework.cls
-2023/10/03 | 116762 | systems/win32/miktex/tm/packages/arara__source.tar.lzma
-2023/10/03 | 11637199 | systems/win32/miktex/tm/packages/plex.tar.lzma
-2023/10/03 | 11622 | macros/latex/contrib/homework/README.md
-2023/10/03 | 116148 | systems/texlive/tlnet/archive/arara.source.r68431.tar.xz
-2023/10/03 | 11596 | systems/win32/miktex/tm/packages/colorist.tar.lzma
-2023/10/03 | 11533648 | systems/texlive/tlnet/archive/plex.r68430.tar.xz
-2023/10/03 | 11416 | systems/texlive/tlnet/archive/colorist.r68440.tar.xz
-2023/10/03 | 109 | systems/win32/miktex/setup/rpm/fedora-38.repo
-2023/10/03 | 10994080 | systems/texlive/tlnet/archive/glossaries.doc.r68437.tar.xz
-2023/10/03 | 10926138 | systems/win32/miktex/tm/packages/glossaries__doc.tar.lzma
-2023/10/03 | 1057 | systems/win32/miktex/tm/packages/luabidi__doc.tar.lzma
-2023/10/03 | 10492 | graphics/pgf/contrib/schemabloc/schemabloc.sty
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index 38952a10b7..992e1f370a 100644
--- a/biblio/ctan-bibdata/ctan.bib
+++ b/biblio/ctan-bibdata/ctan.bib
@@ -1,7 +1,7 @@
%% bib file of all CTAN packages
%% (C) Herbert Voß
%%
-%% created at 10-10-2023, 02:01:03
+%% created at 11-10-2023, 02:01:18
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -12596,8 +12596,8 @@
title = {The \texttt{CircuiTikZ} package},
subtitle = {Draw electrical networks with TikZ},
author = {Massimo Redaelli and Stefan Lindner and Stefan Erhardt and Romano Giannetti},
- date = {2023-06-23},
- version = {1.6.3},
+ date = {2023-10-10},
+ version = {1.6.4},
license = {lppl,gpl},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/circuitikz},
url = {https://ctan.org/pkg/circuitikz},
@@ -24046,7 +24046,7 @@
title = {The \texttt{expl3} package},
subtitle = {Wrapper package for experimental \LaTeX{}3},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel},
@@ -30979,8 +30979,8 @@
title = {The \texttt{haranoaji-extra} package},
subtitle = {Harano Aji Fonts},
author = {Masamichi Hosoda},
- date = {2023-06-11},
- version = {20230610},
+ date = {2023-10-10},
+ version = {20231009},
license = {ofl},
mirror = {https://mirror.ctan.org/fonts/haranoaji-extra},
url = {https://ctan.org/pkg/haranoaji-extra},
@@ -30990,8 +30990,8 @@
title = {The \texttt{haranoaji} package},
subtitle = {Harano Aji Fonts},
author = {Masamichi Hosoda},
- date = {2023-06-11},
- version = {20230610},
+ date = {2023-10-10},
+ version = {20231009},
license = {ofl},
mirror = {https://mirror.ctan.org/fonts/haranoaji},
url = {https://ctan.org/pkg/haranoaji},
@@ -33852,8 +33852,8 @@
title = {The \texttt{indextools} package},
subtitle = {Producing multiple indices},
author = {Maïeul Rouquette},
- date = {2016-06-24},
- version = {1.5.1},
+ date = {2023-10-10},
+ version = {1.6.0},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/indextools},
url = {https://ctan.org/pkg/indextools},
@@ -36873,7 +36873,7 @@
title = {The \texttt{l3backend} package},
subtitle = {LaTeX3 backend drivers},
author = {{The \LaTeX{} Project Team}},
- date = {2023-04-19},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3backend},
@@ -36895,7 +36895,7 @@
title = {The \texttt{l3docstrip} package},
subtitle = {Strip documentation in \LaTeX{}3 source},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel},
@@ -36906,7 +36906,7 @@
title = {The \texttt{l3experimental} package},
subtitle = {Experimental \LaTeX{}3 concepts},
author = {{The \LaTeX{} Project Team}},
- date = {2023-05-11},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3experimental},
@@ -36917,7 +36917,7 @@
title = {The \texttt{l3kernel} package},
subtitle = {LaTeX3 programming conventions},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel},
@@ -36928,7 +36928,7 @@
title = {The \texttt{l3keys2e} package},
subtitle = {LaTeX2e option processing using \LaTeX{}3 keys},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3packages},
@@ -36939,7 +36939,7 @@
title = {The \texttt{l3packages} package},
subtitle = {High-level \LaTeX{}3 concepts},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3packages},
@@ -36950,7 +36950,7 @@
title = {The \texttt{l3regex} package},
subtitle = {Regular expression facilities for \LaTeX{}},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3kernel/l3regex.dtx},
@@ -42042,8 +42042,8 @@
title = {The \texttt{luatexja} package},
subtitle = {Typeset Japanese with Lua(La)TeX},
author = {Hironori Kitagawa},
- date = {2023-05-03},
- version = {20230503.0},
+ date = {2023-10-10},
+ version = {20231010.0},
license = {bsd},
mirror = {https://mirror.ctan.org/macros/luatex/generic/luatexja},
url = {https://ctan.org/pkg/luatexja},
@@ -48960,7 +48960,7 @@
title = {The \texttt{non-decimal-units} package},
subtitle = {Display and manipulate historical non-decimal units},
author = {Mikkel Eide Eriksen},
- date = {2023-09-28},
+ date = {2023-10-10},
version = {},
license = {cc-by-sa-4},
mirror = {https://mirror.ctan.org/macros/latex/contrib/non-decimal-units},
@@ -51987,8 +51987,8 @@
title = {The \texttt{pdfmanagement-testphase} package},
subtitle = {\LaTeX{} PDF management testphase bundle},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
- version = {0.95z},
+ date = {2023-10-10},
+ version = {0.96a},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/pdfmanagement-testphase},
url = {https://ctan.org/pkg/pdfmanagement-testphase},
@@ -68147,8 +68147,8 @@
title = {The \texttt{TeXLab} package},
subtitle = {\LaTeX{} Language Server},
author = {Eric Förster},
- date = {2023-09-30},
- version = {5.10.0},
+ date = {2023-10-10},
+ version = {5.10.1},
license = {gpl3},
mirror = {https://mirror.ctan.org/support/texlab},
url = {https://ctan.org/pkg/texlab},
@@ -70787,8 +70787,8 @@
title = {The \texttt{tkz-bernoulli} package},
subtitle = {Draw Bernoulli trees with TikZ},
author = {Cédric Pierquet},
- date = {2023-09-11},
- version = {0.1.0},
+ date = {2023-10-10},
+ version = {0.1.1},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tkz-bernoulli},
url = {https://ctan.org/pkg/tkz-bernoulli},
@@ -76818,7 +76818,7 @@
title = {The \texttt{xcoffins} package},
subtitle = {Rich boxed material for \LaTeX{} 3},
author = {{The \LaTeX{} Project Team}},
- date = {2023-05-11},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3experimental},
@@ -77315,7 +77315,7 @@
title = {The \texttt{xfp} package},
subtitle = {Interface to the \LaTeX{}3 floating point unit},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3packages},
@@ -77326,7 +77326,7 @@
title = {The \texttt{xfrac} package},
subtitle = {Split-level fractions in \LaTeX{}2e*},
author = {Morten Høgholm and Lars Madsen and Will Robertson and Joseph Wright},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3packages},
@@ -77337,7 +77337,7 @@
title = {The \texttt{xgalley} package},
subtitle = {Control text feeding onto the page},
author = {{The \LaTeX{} Project Team}},
- date = {2023-05-11},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3experimental/xgalley.dtx},
@@ -77708,7 +77708,7 @@
title = {The \texttt{xparse} package},
subtitle = {A generic document command parser},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3packages},
@@ -77973,7 +77973,7 @@
title = {The \texttt{xtemplate} package},
subtitle = {A high-level interface for declaring document commands},
author = {{The \LaTeX{} Project Team}},
- date = {2023-08-29},
+ date = {2023-10-10},
version = {},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/l3packages},
diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf
index bed1b5cae8..4c8dbdb26e 100644
--- a/biblio/ctan-bibdata/ctan.pdf
+++ b/biblio/ctan-bibdata/ctan.pdf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf b/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
index ac9d789006..b0414f1799 100644
--- a/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
+++ b/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf b/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
index dbd3ce2a19..6f8faa64ff 100644
--- a/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
+++ b/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf b/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
index 0cbafdd21c..1624cf3872 100644
--- a/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
+++ b/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf b/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
index 255788aa62..267af39bbb 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf b/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
index 97882070e0..31315921af 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf b/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
index b83e6742a7..e3cfedf451 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf b/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
index 0bd76657cb..d9f0a73925 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/README b/fonts/haranoaji-extra/README
index 0436452e36..607f37c20d 100644
--- a/fonts/haranoaji-extra/README
+++ b/fonts/haranoaji-extra/README
@@ -1,4 +1,4 @@
-# Harano Aji Fonts ver. 20230610
+# Harano Aji Fonts ver. 20231009
https://github.com/trueroad/HaranoAjiFonts
@@ -131,7 +131,7 @@ Masamichi Hosoda, with Reserved Font Name 'Harano Aji'.
Copyright 2014-2021 Adobe (http://www.adobe.com/),
with Reserved Font Name 'Source'.
-Copyright 2017-2022 Adobe (http://www.adobe.com/),
+Copyright 2017-2023 Adobe (http://www.adobe.com/),
with Reserved Font Name 'Source'.
Source is a trademark of Adobe in the United States and/or other countries.
diff --git a/fonts/haranoaji/HaranoAjiGothic-Bold.otf b/fonts/haranoaji/HaranoAjiGothic-Bold.otf
index 079af3fe71..f7655afc11 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Bold.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Bold.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiGothic-Heavy.otf b/fonts/haranoaji/HaranoAjiGothic-Heavy.otf
index bb7ea50551..ac6e9103aa 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Heavy.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Heavy.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiGothic-Medium.otf b/fonts/haranoaji/HaranoAjiGothic-Medium.otf
index 0d69204b31..b5b7030186 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Medium.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Medium.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiGothic-Regular.otf b/fonts/haranoaji/HaranoAjiGothic-Regular.otf
index afdae7023e..cf19245142 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Regular.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Regular.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiMincho-Bold.otf b/fonts/haranoaji/HaranoAjiMincho-Bold.otf
index d5377801af..250205df8f 100644
--- a/fonts/haranoaji/HaranoAjiMincho-Bold.otf
+++ b/fonts/haranoaji/HaranoAjiMincho-Bold.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiMincho-Light.otf b/fonts/haranoaji/HaranoAjiMincho-Light.otf
index 2a70d2cfe9..f7d67ab142 100644
--- a/fonts/haranoaji/HaranoAjiMincho-Light.otf
+++ b/fonts/haranoaji/HaranoAjiMincho-Light.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiMincho-Regular.otf b/fonts/haranoaji/HaranoAjiMincho-Regular.otf
index a7fd1d36bd..200dd30bb8 100644
--- a/fonts/haranoaji/HaranoAjiMincho-Regular.otf
+++ b/fonts/haranoaji/HaranoAjiMincho-Regular.otf
Binary files differ
diff --git a/fonts/haranoaji/README b/fonts/haranoaji/README
index 0436452e36..607f37c20d 100644
--- a/fonts/haranoaji/README
+++ b/fonts/haranoaji/README
@@ -1,4 +1,4 @@
-# Harano Aji Fonts ver. 20230610
+# Harano Aji Fonts ver. 20231009
https://github.com/trueroad/HaranoAjiFonts
@@ -131,7 +131,7 @@ Masamichi Hosoda, with Reserved Font Name 'Harano Aji'.
Copyright 2014-2021 Adobe (http://www.adobe.com/),
with Reserved Font Name 'Source'.
-Copyright 2017-2022 Adobe (http://www.adobe.com/),
+Copyright 2017-2023 Adobe (http://www.adobe.com/),
with Reserved Font Name 'Source'.
Source is a trademark of Adobe in the United States and/or other countries.
diff --git a/graphics/pgf/contrib/circuitikz/doc/changelog.tex b/graphics/pgf/contrib/circuitikz/doc/changelog.tex
index 87c6966223..a0c556df40 100644
--- a/graphics/pgf/contrib/circuitikz/doc/changelog.tex
+++ b/graphics/pgf/contrib/circuitikz/doc/changelog.tex
@@ -5,6 +5,41 @@ full list of changes.
\begin{itemize}
\item
+ Version 1.6.4 (2023-10-10)
+
+ A bit of enhancement and fixes for the European-style logic ports,
+ more switches (and a bit more configurabilityi for them), more option
+ for some sources.
+
+ \begin{itemize}
+ \tightlist
+ \item
+ The symbol in European logic ports is now rotation-invariant, and
+ its font can be customized (suggested by
+ \href{https://github.com/circuitikz/circuitikz/issues/730}{user
+ \texttt{@sputeanus} on GitHub})
+ \item
+ Added a couple of ``blank'' (no symbol) European logic ports
+ \item
+ Added new ``traditional'' switches (contributed by
+ \href{https://github.com/circuitikz/circuitikz/issues/734}{Jakob
+ ``DraUX'' on GitHub})
+ \item
+ Added configurability (color, thickness, dash) to switch arrows
+ \item
+ Added ``eyw''-symbol (reverse star) for ``oo''-type sources
+ (contributed by
+ \href{https://github.com/circuitikz/circuitikz/pull/742}{Jakob
+ ``DraUX'' on GitHub})
+ \item
+ Added configurable open shape to the sinusoidal current source
+ (contributed by
+ \href{https://github.com/circuitikz/circuitikz/pull/737}{Maximilian
+ Martin})
+ \item
+ Documentation fixes
+ \end{itemize}
+\item
Version 1.6.3 (2023-06-23)
The main change is that the definition of the ``plus'' and ``minus''
@@ -31,10 +66,10 @@ full list of changes.
configurable}
\item
Add anchors for the symbols on the \texttt{oo}-type sources,
- suggested
- \href{https://github.com/circuitikz/circuitikz/issues/725}{by user
- @lapreindl on GitHub}; the symbols have been slightly changed and
- repositioned in the process
+ suggested by
+ \href{https://github.com/circuitikz/circuitikz/issues/725}{user
+ \texttt{@lapreindl} on GitHub}; the symbols have been slightly
+ changed and repositioned in the process
\item
several documentation fixes
\end{itemize}
@@ -218,7 +253,7 @@ full list of changes.
B. Cameron, user \texttt{@cameroncb1} on GitHub)
\item
Added Shockley diode (suggested by
- \href{https://tex.stackexchange.com/questions/646039/creating-a-shockley-diode-in-circuitikz}{@dauph})
+ {[}@dauph{]}(https://tex.stackexchange.com/questions/646039/creating-a-shockley-diode-in-circuitikz))
\end{itemize}
\item
Version 1.5.2 (2022-05-08)
@@ -1396,7 +1431,7 @@ A detailed list of changes can be seen below.
\item
Fixed varcap symbol at small scalings
\item
- New packet-option ``straightvoltages, to draw straight(no curved)
+ New packet-option "straightvoltages, to draw straight(no curved)
voltage arrows
\item
New option ``invert'' to revert the node direction at paths
diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf b/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf
index cb7c63ffd9..e7bc7af850 100644
--- a/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf
+++ b/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf
index 89935d1d3b..5eef804aa8 100644
--- a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf
+++ b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex
index d331f510b5..1982bca452 100644
--- a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex
+++ b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex
@@ -2500,7 +2500,7 @@ Notice that you can set both \texttt{gto gate end arrow} and \texttt{gto gate st
\subsubsection{Diode customizations}\label{sec:tweak-d}
-You can change the scale of the diodes by setting the key \texttt{diodes/scale} to something different from the default \texttt{1.0}. In Romano's opinion, diodes are somewhat big with the default style of the package, so a setting like \verb|\ctikzset{diode/scale=0.6}| is recommended.
+You can change the scale of the diodes by setting the key \texttt{diodes/scale} to something different from the default \texttt{1.0}. In Romano's opinion, diodes are somewhat big with the default style of the package, so a setting like \verb|\ctikzset{diodes/scale=0.6}| is recommended.
\begin{LTXexample}[varwidth=true]
\begin{circuitikz}
@@ -2590,6 +2590,8 @@ Notice that source and generators are divided in three classes that can be style
\circuitdescbip{battery}{Battery}{}
\circuitdescbip{battery1}{Single battery cell}{}
\circuitdescbip{battery2}{Single battery cell}{}
+ \circuitdescbip{baertty}{Randall Munroe's baertty\footnotemark}{}
+ \footnotetext{\href{https://xkcd.com/2818}{Mandatory xkcd}}
\end{groupdesc}
\subsubsection{Stationary sources}
@@ -2609,17 +2611,20 @@ Similarly, if (default behavior) \texttt{europeanvoltages} option is active (or
\end{framed}
-\subsubsection{Sinusoidal sources}\label{sec:sinusoidal-vi} These two are basically the same symbol; to distinguish among them, you have to add a label, which will be a voltage or a current.
+\subsubsection{Sinusoidal sources}\label{sec:sinusoidal-vi} These two are basically the same symbol; to distinguish among them, you have to add a label, which will be a voltage or a current. Another option would be to configure the \texttt{sinusoidal current source} as an open shape using \texttt{\textbackslash ctikzset\string{bipoles/isourcesin/angle=80\string}} similar to the \texttt{dcisource} in section~\ref{sec:dc-sources}.
\begin{groupdesc}
\circuitdescbip*[vsourcesin]{sinusoidal voltage source}{Sinusoidal voltage source}{vsourcesin, sV}
- \circuitdescbip*[isourcesin]{sinusoidal current source}{Sinusoidal current source}{isourcesin, sI}
+ \circuitdescbip*[isourcesin]{sinusoidal current source}{Sinusoidal current source\footnotemark}{isourcesin, sI}
+ \footnotetext{The configurable open shape of the \texttt{sinusoidal current source} has been added by \href{https://github.com/circuitikz/circuitikz/pull/737}{Maximilian Martin}}.
\end{groupdesc}
\begin{LTXexample}[varwidth=true]
\begin{circuitikz}[american]
- \draw (0,1) to[sV=$V$] ++(3,0);
- \draw (0,0) to[sI=$I$] ++(3,0);
+ \draw (0,2) to[sV=$V$] ++(3,0);
+ \draw (0,1) to[sI=$I$] ++(3,0);
+ \ctikzset{bipoles/isourcesin/angle=80}
+ \draw (0,0) to[sI] ++(3,0);
\end{circuitikz}
\end{LTXexample}
@@ -2714,13 +2719,13 @@ Notice that if you choose the dashed style, the noise sources are fillable:
\endgroup
\end{groupdesc}
-The transformer shapes vector group options can be specified for the primary (\texttt{prim=\emph{value}}), the secondary (\texttt{sec=\emph{value}}) and tertiary (\texttt{tert=\emph{value}}) three-phase vector groups: the value can be one of \texttt{delta}, \texttt{wye} and \texttt{zig}.
+The transformer shapes vector group options can be specified for the primary (\texttt{prim=\emph{value}}), the secondary (\texttt{sec=\emph{value}}) and tertiary (\texttt{tert=\emph{value}}) three-phase vector groups: the value can be one of \texttt{delta}, \texttt{wye}, \texttt{eyw}\footnote{The \texttt{eyw} symbol was suggested by \href{https://github.com/circuitikz/circuitikz/pull/742}{Jakob «DraUX» on GitHub}} and \texttt{zig}.
\begin{LTXexample}[varwidth=true]
\begin{circuitikz}
\draw (0,0) to[oosourcetrans, prim=zig, sec=delta, o-] ++(2,0)
to[oosourcetrans, prim=delta, sec=wye,-o] ++(0,-2)
- to[ooosource, prim=wye, sec=zig, tert=delta] (0,0);
+ to[ooosource, prim=eyw, sec=zig, tert=delta] (0,0);
\end{circuitikz}
\end{LTXexample}
@@ -2731,7 +2736,7 @@ These two ``sources'' have additional anchors that reach the center of the symbo
smalldot/.style={draw, circle,red, inner sep=0.2pt}]
\draw (0,0) to[oosourcetrans, name=A,
prim=delta, sec=wye] ++(1,0)
- to[ooosource, name=B, prim=wye, sec=zig,
+ to[ooosource, name=B, prim=eyw, sec=zig,
tert=delta] ++(1,0)
(A.symbolsec) -- ++(-45:0.5) node[ground]{};
\node [smalldot] at (A.symbolprim) {};
@@ -2778,7 +2783,7 @@ The symbol shapes used here seems to be the most common in publications; if you
\end{tikzpicture}
\end{LTXexample}
-\subsubsection{DC sources}
+\subsubsection{DC sources}\label{sec:dc-sources}
\begin{groupdesc}
\circuitdescbip*{dcvsource}{DC voltage source}{}
\circuitdescbip*{dcisource}{DC current source}{}
@@ -2851,9 +2856,9 @@ You can do the same with the \texttt{american controlled voltage sources}, subst
\end{LTXexample}
\paragraph{Three-phase symbols.}
-The three-phase symbols \texttt{delta}, \texttt{wye}, and \texttt{zig} follows the line thickness exactly as
+The three-phase symbols \texttt{delta}, \texttt{wye}, \texttt{eyw}, and \texttt{zig} follows the line thickness exactly as
the waveform ones (see above). Additionally, you can scale them up and down by changing the value of the keys
-\texttt{sources/symbol/delta scale}, \texttt{.../wye scale}, and \texttt{.../zig scale} (default \texttt{1}).
+\texttt{sources/symbol/delta scale}, \texttt{.../wye scale}, \texttt{.../eyw scale}, and \texttt{.../zig scale} (default \texttt{1}).
\begin{LTXexample}[varwidth=true]
\begin{circuitikz}[scale=1.8, transform shape]
@@ -5728,6 +5733,11 @@ These are all of the to-style type:
\circuitdescbip[ospst]{opening switch}{Opening switch}{ospst}
\circuitdescbip[nos]{normal open switch}{Normally open switch}{nos}
\circuitdescbip[ncs]{normal closed switch}{Normally closed switch}{ncs}
+ \circuitdescbip[oncs]{opening normal closed switch}{Opening normally closed switch}{oncs}
+ \circuitdescbip[cncs]{closing normal closed switch}{Closing normally closed switch}{cncs}
+ \circuitdescbip[onos]{opening normal open switch}{Opening normally open switch}{onos}
+ \circuitdescbip[cnos]{closing normal open switch}{Closing normally open switch\footnotemark}{cnos}
+ \footnotetext{These last four were contributed by \href{https://tex.stackexchange.com/questions/693446/new-switch-components-for-circuitikz}{Jakob «DraUX»}}
\circuitdescbip[pushbutton]{push button}{Normally open push button}{normally open push button, nopb}(tip/0/0.2)
\circuitdescbip[ncpushbutton]{normally closed push button}{Normally closed push button}{ncpb}(tip/0/0.2)
\circuitdescbip[pushbuttonc]{normally open push button closed}{Normally open push button (in closed position)}{nopbc}(tip/0/0.2)
@@ -6035,6 +6045,32 @@ You can change that globally or locally, as ever. The tip specification is the o
\end{circuitikz}
\end{LTXexample}
+You can also have the option to change the color, relative thickness, and dash pattern by setting keys with the \verb!\ctikzset! command under the \texttt{switch arrows} hierarchy. The available keys are:
+
+\begin{center}
+ \begin{tabular}{>{\ttfamily}l>{\ttfamily}lp{0.5\linewidth}}
+ \toprule
+ parameter & default & description \\
+ \midrule
+ relative thickness & 1.0 & multiply the class thickness \\
+ color & default & stroke color: \texttt{default} is the same as the component \\
+ dash & default & dash pattern: \texttt{default} means not to change the setting for the component; \texttt{none} means unbroken line; every other input is a dash pattern.\footnotemark \\
+ \bottomrule
+ \end{tabular}
+ \footnotetext{Follows the syntax of the pattern sequence \texttt{\textbackslash pgfsetdash} --- see \TikZ{} manual for details; phase is always zero. Basically you pass pairs of dash-length -- blank-length dimensions, see the examples.}
+\end{center}
+
+\begin{LTXexample}[varwidth=true, basicstyle=\small\ttfamily]
+\begin{circuitikz}
+\draw (0,2) to[spst] ++(1,0) to[cogsw]
+ ++(1,0) to[oncs] ++(1,0);
+\ctikzset{switch arrows/color=red}
+\ctikzset{switch arrows/relative thickness=0.5}
+\ctikzset{switch arrows/dash={{1pt}{1pt}}}
+\draw (0,0) to[spst] ++(1,0) to[cogsw, switch arrows/dash=none]
+ ++(1,0) to[oncs, switch arrows/color=blue] ++(1,0);
+\end{circuitikz}
+\end{LTXexample}
\paragraph{Rotary switch arrows.} You can change the rotary switch arrow shape in the same way as you change the ones in regular switches. Notice however that if you set either \texttt{switch end arrow} or \texttt{switch start arrow} they will be followed only if you have set both arrows with \texttt{<->} or equivalent, otherwise just one will be used.
@@ -6207,6 +6243,8 @@ The transmission gate (also known as ``bowtie'') components are not described in
\circuitdesc*{european xnor port}{European \textsc{xnor} port}{}
\circuitdesc*{european buffer port}{European \textsc{buffer} port}{}
\circuitdesc*{european not port}{European \textsc{not} port}{}
+ \circuitdesc*{european blank port}{European blank port}{A}
+ \circuitdesc*{european blank not port}{European blank not port}{B}
\end{groupdesc}
\begin{framed}
@@ -6767,7 +6805,30 @@ The anchors for the tgate's control point are called \texttt{gate} and \texttt{n
\subsubsection{European logic port usage}
-European logic port are the same class as american and IEEE-style ones, and they obey the same class modifier. Moreover, you can use the \texttt{no inputs pin} as in the other logic ports to suppress input pins.
+European logic port are in the same class as american and IEEE-style ones, and they obey the same class modifier. Moreover, you can use the \texttt{no inputs pin} as in the other logic ports to suppress input pins.
+
+The standard text inside the port does not rotate (not flip) with the component\footnote{since \texttt{1.6.4}, thanks to a suggestion by \href{https://github.com/circuitikz/circuitikz/issues/730}{user \texttt{@sputeanus} on GitHub}.}, but you can change the font (and color and so on) with the key \texttt{european ports font} (default nothing, which means it uses the standard font and color).
+For more complex customization, you can use the two ``blank'' European ports, and add the text you want on them.
+
+\begin{LTXexample}[varwidth=true, basicstyle=\small\ttfamily]
+\begin{tikzpicture}
+ \ctikzset{
+ logic ports=european,
+ logic ports origin=center,
+ logic ports/scale=1.5,
+ tripoles/european not symbol=ieee circle,
+ }
+ % Draw the Nand with big AND symbol
+ \ctikzset{european ports font=\Huge\color{red}}
+ \draw(0,0) node [nand port, rotate=90,
+ number inputs=4]{};
+ \draw(3,0) node [nand port, xscale=-1]{};
+ % the un-rotation is not automatic for node text!
+ \draw(0,-3) node [blank port, rotate=90,
+ ]{\rotatebox{-90}{\Huge ?}};
+ \draw(3,-3) node [blank not port, xscale=-1]{?};
+\end{tikzpicture}
+\end{LTXexample}
\paragraph{European logic port customization} Normally the European-style logic port with inverted output are marked with a small triangle; if you want you can change it with the key \texttt{tripoles/european not symbol}; its default is \texttt{triangle} but you can set it to \texttt{circle} like in the following example. As you can see, the circle size is the same as the circuit poles; if you prefer the size used in the IEEE standard ports, you can use set it to \texttt{ieee circle}.
@@ -8994,7 +9055,7 @@ You can add nodes to the bipoles, positioned at the coordinates surrounding the
\end{circuitikz}
\end{LTXexample}
-These bipole nodes are added after the path is drawn, as every node in \TikZ\ --- this is the reason why they are always filled (with the main color the normal nodes, with white the open ones), in order to ``hide'' the wire below. You can override the fill color if you want; but notice that if you draw things in two different paths, you will have ``strange'' results; notice that in the second line of resistors the second wire is starting from the center of the white \texttt{ocirc} of the previous path.
+These bipole nodes are added \emph{after} any single path is drawn, as every node in \TikZ\ --- this is the reason why they are always filled (with the main color the normal nodes, with white the open ones), in order to ``hide'' the wire below. You can override the fill color if you want; but notice that if you draw things in two different paths, you will have ``strange'' results; notice that in the second line of resistors the second wire is starting from the center of the white \texttt{ocirc} of the previous path.
\begin{LTXexample}[varwidth=true,
pos=t
@@ -9112,7 +9173,7 @@ There are several predefined shorthand as the above; in the following pages you
\subsubsection{Transparent poles}\label{sec:transparent-poles}
-``Open-poles'' terminals (\texttt{ocirc}, \texttt{odiamondpole}, and \texttt{osquarepole}) are normally filled with the background color at full opacity. This is because, for simplicity of operation, the nodes are placed \emph{after} the wires are drawn and have to ``white-out'' the underlying lines.
+``Open-poles'' terminals (\texttt{ocirc}, \texttt{odiamondpole}, and \texttt{osquarepole}) are normally filled with the background color at full opacity. The is reason is that \TikZ{}, when stroking a path, places and draws the nodes \emph{after} the lines are drawn; that way the poles ``white-out'' the underlying lines. Clearly this works if the wires and poles are written \emph{in the same path command}, otherwise the explicit order is respected.
Anyway, \emph{if you know what you are doing}, you can change it with the key \texttt{poles/open fill opacity} (with \verb|\ctikzset|) or the style \texttt{open poles opacity}. Notice that you will have artifacts if you don't use the border anchors of the poles to connect wires, and you need to do that by hand.
diff --git a/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty b/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty
index 6cc3af44a2..464ad23f13 100644
--- a/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty
+++ b/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty
@@ -16,8 +16,8 @@
\providecommand\DeclareRelease[3]{}
\providecommand\DeclareCurrentRelease[2]{}
-\def\pgfcircversion{1.6.3}
-\def\pgfcircversiondate{2023/06/23}
+\def\pgfcircversion{1.6.4}
+\def\pgfcircversiondate{2023/10/10}
\DeclareRelease{0.4}{2012/12/20}{circuitikz-0.4-body.tex}
\DeclareRelease{v0.4}{2012/12/20}{circuitikz-0.4-body.tex}
diff --git a/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex b/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex
index 1acb5a8d65..82e841212a 100644
--- a/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex
+++ b/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex
@@ -1791,7 +1791,7 @@
\ifx\pgf@temp\pgf@circ@temp%
\pgf@circ@europeaninductor@path{#1}%
\else%
- \pgfextra{ \def\pgf@temp{cute} }%
+ \pgfextra{ \def\pgf@temp{cute} }%
\ifx\pgf@temp\pgf@circ@temp%
\pgf@circ@cuteinductor@path{#1}%
\else%
@@ -1813,7 +1813,7 @@
\ifx\pgf@temp\pgf@circ@temp%
\pgf@circ@veuropeaninductor@path{#1}%
\else%
- \pgfextra{ \def\pgf@temp{cute} }%
+ \pgfextra{ \def\pgf@temp{cute} }%
\ifx\pgf@temp\pgf@circ@temp%
\pgf@circ@vcuteinductor@path{#1}%
\else%
@@ -1835,7 +1835,7 @@
\ifx\pgf@temp\pgf@circ@temp%
\pgf@circ@europeaninductivesens@path{#1}%
\else%
- \pgfextra{ \def\pgf@temp{cute} }%
+ \pgfextra{ \def\pgf@temp{cute} }%
\ifx\pgf@temp\pgf@circ@temp%
\pgf@circ@cuteinductivesens@path{#1}%
\else%
@@ -1884,6 +1884,7 @@
\ctikzset{bipoles/vsourceam/height/.initial=.60}
\ctikzset{bipoles/vsourceam/width/.initial=.60}
\ctikzset{bipoles/vsourceam/margin/.initial=.7}
+\ctikzset{bipoles/isourcesin/angle/.initial=90}
\ctikzset{bipoles/isourcesin/height/.initial=.60}
\ctikzset{bipoles/isourcesin/width/.initial=.60}
\ctikzset{bipoles/vsourcesin/height/.initial=.60}
@@ -1914,7 +1915,7 @@
% noise sources
\ctikzset{bipoles/noise sources/fillcolor/.initial=gray!50}
-% for special symbols in the sources: sin, square, triangle, delta, wye, zig, etc.
+% for special symbols in the sources: sin, square, triangle, delta, wye, eyw, zig, etc.
\ctikzset{sources/symbol/thickness/.initial={1}}
\ctikzset{csources/symbol/thickness/.initial={1}}
\ctikzset{sources/symbol/rotate/.initial={90}}
@@ -1936,28 +1937,34 @@
% % % primary windings
\newif\ifpgf@circ@prim@delta
\newif\ifpgf@circ@prim@wye
+\newif\ifpgf@circ@prim@eyw
\newif\ifpgf@circ@prim@zig
\pgfkeys{tikz/prim/.is choice}
\pgfkeys{tikz/prim/delta/.add code={}{\pgf@circ@prim@deltatrue}}
\pgfkeys{tikz/prim/wye/.add code={}{\pgf@circ@prim@wyetrue}}
+\pgfkeys{tikz/prim/eyw/.add code={}{\pgf@circ@prim@eywtrue}}
\pgfkeys{tikz/prim/zig/.add code={}{\pgf@circ@prim@zigtrue}}
% % % secondary windings
\newif\ifpgf@circ@sec@delta
\newif\ifpgf@circ@sec@wye
+\newif\ifpgf@circ@sec@eyw
\newif\ifpgf@circ@sec@zig
\pgfkeys{tikz/sec/.is choice}
\pgfkeys{tikz/sec/delta/.add code={}{\pgf@circ@sec@deltatrue}}
\pgfkeys{tikz/sec/wye/.add code={}{\pgf@circ@sec@wyetrue}}
+\pgfkeys{tikz/sec/eyw/.add code={}{\pgf@circ@sec@eywtrue}}
\pgfkeys{tikz/sec/zig/.add code={}{\pgf@circ@sec@zigtrue}}
% % % tertiary windings (ooosource)
\newif\ifpgf@circ@tert@delta
\newif\ifpgf@circ@tert@wye
+\newif\ifpgf@circ@tert@eyw
\newif\ifpgf@circ@tert@zig
\pgfkeys{tikz/tert/.is choice}
\pgfkeys{tikz/tert/delta/.add code={}{\pgf@circ@tert@deltatrue}}
\pgfkeys{tikz/tert/wye/.add code={}{\pgf@circ@tert@wyetrue}}
+\pgfkeys{tikz/tert/eyw/.add code={}{\pgf@circ@tert@eywtrue}}
\pgfkeys{tikz/tert/zig/.add code={}{\pgf@circ@tert@zigtrue}}%
% nullator and norator
@@ -2078,11 +2085,38 @@
\pgfusepath{draw}
}
+%%%
+%%% https://xkcd.com/2818/
+%%% Also https://chat.stackexchange.com/transcript/message/64238058#64238058
+%%%
+\pgfcircdeclarebipolescaled{batteries}
+{}
+{\ctikzvalof{bipoles/battery/height}}
+{baertty}
+{\ctikzvalof{bipoles/battery/height}}
+{\ctikzvalof{bipoles/battery/width}}
+{
+ \pgf@circ@res@step = \ctikzvalof{bipoles/battery/width}\pgf@circ@scaled@Rlen
+ \divide \pgf@circ@res@step by 6
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{.5\pgf@circ@res@up}}
+ \pgfpathlineto{\pgfpoint{\pgf@circ@res@left}{.5\pgf@circ@res@down}}
+ \pgfpathmoveto{\pgfpoint{-\pgf@circ@res@step}{.5\pgf@circ@res@up}}
+ \pgfpathlineto{\pgfpoint{-\pgf@circ@res@step}{.5\pgf@circ@res@down}}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@step}{\pgf@circ@res@up}}
+ \pgfpathlineto{\pgfpoint{\pgf@circ@res@step}{\pgf@circ@res@down}}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@up}}
+ \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@down}}
+ \pgfusepath{draw}
+}
+\pgfcirc@activate@bipole@simple@opt{v}{baertty}{\circuitikzbasekey/bipole/is voltage=true,
+ \circuitikzbasekey/bipole/is voltageoutsideofsymbol=true}
+
%%%%%%%%%%%
%% Round and diamond sources
%%%%%%%%%%%
-% % % symbol drawing macros (NOT for delta, wye, zig)
+% % % symbol drawing macros (NOT for delta, wye, eyw, zig)
\def\pgf@circ@sources@symbol@setup{% called in a pgfscope
\edef\@@@auto{auto}\edef\@@@rotate{\ctikzvalof{\ctikzclass/symbol/rotate}}
\ifx\@@@auto\@@@rotate
@@ -2397,6 +2431,7 @@
% % % winding symbols
\ctikzset{sources/symbol/delta scale/.initial={1}}
\ctikzset{sources/symbol/wye scale/.initial={1}}
+\ctikzset{sources/symbol/eyw scale/.initial={1}}
\ctikzset{sources/symbol/zig scale/.initial={1}}
% triangle
\def\pgf@circ@delta#1{
@@ -2436,6 +2471,24 @@
\endpgfscope
}
+% reverse star
+\def\pgf@circ@eyw#1{
+ \pgfscope
+ \pgftransformscale{-.015*\ctikzvalof{\ctikzclass/symbol/eyw scale}*\pgf@circ@res@left*#1}
+ \def\pgfcircmathresult{\expandafter\pgf@circ@stripdecimals\pgf@circ@direction\pgf@nil}
+ \pgftransformrotate{-\pgfcircmathresult}
+
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgf@circ@set@relative@thickness{symbol/thickness}
+ \pgfpathmoveto{\pgfpoint{0}{\pgf@circ@res@up}}
+ \pgfpathlineto{\pgfpointorigin}
+ \pgfpathlineto{\pgfpointpolar{30}{\pgf@circ@res@down}}
+ \pgfpathmoveto{\pgfpointorigin}
+ \pgfpathlineto{\pgfpointpolar{150}{\pgf@circ@res@down}}
+ \pgfusepath{stroke}
+ \endpgfscope
+}
+
% zigzag
\def\pgf@circ@zig#1{
\pgfscope
@@ -2514,13 +2567,19 @@
\pgftransformxshift{\ctikzvalof{bipoles/oosourcetrans/circlesize}\pgf@circ@res@left}
\pgf@circ@wye{\ctikzvalof{bipoles/oosourcetrans/vectorgroupscale}}
\endpgfscope
+
+ \else\ifpgf@circ@prim@eyw
+ \pgfscope
+ \pgftransformxshift{\ctikzvalof{bipoles/oosourcetrans/circlesize}\pgf@circ@res@left}
+ \pgf@circ@eyw{\ctikzvalof{bipoles/oosourcetrans/vectorgroupscale}}
+ \endpgfscope
\else\ifpgf@circ@prim@zig
\pgfscope
\pgftransformxshift{\ctikzvalof{bipoles/oosourcetrans/circlesize}\pgf@circ@res@left}
\pgf@circ@zig{\ctikzvalof{bipoles/oosourcetrans/vectorgroupscale}}
\endpgfscope
- \fi\fi\fi
+ \fi\fi\fi\fi
%%secondary winding
\ifpgf@circ@sec@delta
@@ -2534,13 +2593,19 @@
\pgftransformxshift{\ctikzvalof{bipoles/oosourcetrans/circlesize}\pgf@circ@res@right}
\pgf@circ@wye{\ctikzvalof{bipoles/oosourcetrans/vectorgroupscale}}
\endpgfscope
+
+ \else\ifpgf@circ@sec@eyw
+ \pgfscope
+ \pgftransformxshift{\ctikzvalof{bipoles/oosourcetrans/circlesize}\pgf@circ@res@right}
+ \pgf@circ@eyw{\ctikzvalof{bipoles/oosourcetrans/vectorgroupscale}}
+ \endpgfscope
\else\ifpgf@circ@sec@zig
\pgfscope
\pgftransformxshift{\ctikzvalof{bipoles/oosourcetrans/circlesize}\pgf@circ@res@right}
\pgf@circ@zig{\ctikzvalof{bipoles/oosourcetrans/vectorgroupscale}}
\endpgfscope
- \fi\fi\fi
+ \fi\fi\fi\fi
}
@@ -2716,13 +2781,19 @@
\pgftransformxshift{.6\pgf@circ@res@left}
\pgf@circ@wye{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
\endpgfscope
+
+ \else\ifpgf@circ@prim@eyw
+ \pgfscope
+ \pgftransformxshift{.6\pgf@circ@res@left}
+ \pgf@circ@eyw{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
+ \endpgfscope
\else\ifpgf@circ@prim@zig
\pgfscope
\pgftransformxshift{.6\pgf@circ@res@left}
\pgf@circ@zig{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
\endpgfscope
- \fi\fi\fi
+ \fi\fi\fi\fi
% % secondary winding
\ifpgf@circ@sec@delta
@@ -2737,13 +2808,19 @@
\pgftransformshift{\pgfpointpolar{60}{0.6\pgf@circ@res@right}}
\pgf@circ@wye{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
\endpgfscope
+
+ \else\ifpgf@circ@sec@eyw
+ \pgfscope
+ \pgftransformshift{\pgfpointpolar{60}{0.6\pgf@circ@res@right}}
+ \pgf@circ@eyw{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
+ \endpgfscope
\else\ifpgf@circ@sec@zig
\pgfscope
\pgftransformshift{\pgfpointpolar{60}{0.6\pgf@circ@res@right}}
\pgf@circ@zig{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
\endpgfscope
- \fi\fi\fi
+ \fi\fi\fi\fi
% % tertiary winding
\ifpgf@circ@tert@delta
@@ -2757,13 +2834,19 @@
\pgftransformshift{\pgfpointpolar{-60}{0.6\pgf@circ@res@right}}
\pgf@circ@wye{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
\endpgfscope
+
+ \else\ifpgf@circ@tert@eyw
+ \pgfscope
+ \pgftransformshift{\pgfpointpolar{-60}{0.6\pgf@circ@res@right}}
+ \pgf@circ@eyw{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
+ \endpgfscope
\else\ifpgf@circ@tert@zig
\pgfscope
\pgftransformshift{\pgfpointpolar{-60}{0.6\pgf@circ@res@right}}
\pgf@circ@zig{\ctikzvalof{bipoles/ooosource/vectorgroupscale}}
\endpgfscope
- \fi\fi\fi
+ \fi\fi\fi\fi
}
%% Independent current source - American
@@ -2788,7 +2871,7 @@
\endpgfscope
}
-%% Independent sinusoidal current source
+%% Independent sinusoidal current source with open shape
\pgfcircdeclarebipolescaled{sources}
{}
{\ctikzvalof{bipoles/isource/height}}
@@ -2798,8 +2881,16 @@
{
\pgfpointorigin
\pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
- \pgfpathellipse{\pgfpointorigin}{\pgfpoint{0}{\pgf@circ@res@up}}{\pgfpoint{\pgf@circ@res@left}{0}}
- \pgf@circ@draworfill
+ \pgfscope
+ \pgfpathellipse{\pgfpointorigin}{\pgfpoint{0}{\pgf@circ@res@up}}{\pgfpoint{\pgf@circ@res@left}{0}}
+ \pgf@circ@maybefill
+ \endpgfscope
+ \edef\@@angle{\ctikzvalof{bipoles/isourcesin/angle}}
+ \pgfpathmoveto{\pgfpointpolar{\@@angle}{\pgf@circ@res@up}}
+ \pgfpatharc{\@@angle}{-\@@angle}{\pgf@circ@res@up}
+ \pgfpathmoveto{\pgfpointpolar{180-\@@angle}{\pgf@circ@res@up}}
+ \pgfpatharc{180-\@@angle}{180+\@@angle}{\pgf@circ@res@up}
+ \pgfusepath{draw}
\pgf@circ@res@up = .5\pgf@circ@res@up
\pgfscope
@@ -4635,6 +4726,17 @@
\ctikzset{tripoles/toggleswitch/height/.initial=.8}
\ctikzset{tripoles/toggleswitch/height 2/.initial=.0}
\ctikzset{tripoles/toggleswitch/width/.initial=.80}
+%% arrow configurability
+\ctikzset{switch arrows/.is family}
+\ctikzset{switch arrows/relative thickness/.initial=1}
+\ctikzset{switch arrows/color/.initial=default}
+\ctikzset{switch arrows/dash/.initial=default}
+\def\pgf@circ@set@switcharrow@style{%
+ % You *must* be sure that this is called inside a \pgfscope!
+ \pgfsetlinewidth{\ctikzvalof{switch arrows/relative thickness}\pgflinewidth}
+ \pgf@circ@subset@color@dash{switch arrows}
+ \pgfcirc@set@arrows{switch}{}{latexslim}
+ }
%%>>>
%% Shapes Node for bipoles switches and similar things%<<<
@@ -4650,12 +4752,11 @@
\pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}}
\pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}}
\pgfusepath{draw}
-
\pgfscope
\pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}}
\pgfpathmoveto{\pgfpointpolar{90}{1.2\pgf@circ@res@right}}
\pgfpatharc{90}{-20}{1.2\pgf@circ@res@right}
- \pgfcirc@set@arrows{switch}{}{latexslim}
+ \pgf@circ@set@switcharrow@style
\pgfsetbeveljoin
\pgfusepath{draw}
\endpgfscope
@@ -4669,17 +4770,15 @@
{\ctikzvalof{bipoles/spst/height}}
{\ctikzvalof{bipoles/spst/width}}
{
-
\pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
\pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}}
\pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}}
\pgfusepath{draw}
-
\pgfscope
\pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}}
\pgfpathmoveto{\pgfpointpolar{-10}{1.2\pgf@circ@res@right}}
\pgfpatharc{-10}{90}{1.2\pgf@circ@res@right}
- \pgfcirc@set@arrows{switch}{}{latexslim}
+ \pgf@circ@set@switcharrow@style
\pgfsetbeveljoin
\pgfusepath{draw}
\endpgfscope
@@ -4693,7 +4792,6 @@
{\ctikzvalof{bipoles/nos/height}}
{\ctikzvalof{bipoles/nos/width}}
{
-
\pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
\pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}}
\pgfpathlineto{\pgfpoint{.9\pgf@circ@res@right}{\pgf@circ@res@up}}
@@ -4720,6 +4818,118 @@
\pgfusepath{draw}
}
+% Opening normal closed Switch
+\pgfcircdeclarebipolescaled{switches}
+{}
+{\ctikzvalof{bipoles/ncs/depth}}
+{oncs}
+{\ctikzvalof{bipoles/ncs/height}}
+{\ctikzvalof{bipoles/ncs/width}}
+{
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathlineto{\pgfpoint{.9\pgf@circ@res@right}{\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfsetlinewidth{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfscope
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathmoveto{\pgfpointpolar{-10}{.9\pgf@circ@res@right}}
+ \pgfpatharc{-10}{95}{.9\pgf@circ@res@right}
+ \pgf@circ@set@switcharrow@style
+ \pgfsetbeveljoin
+ \pgfusepath{draw}
+ \endpgfscope
+}
+
+%% Closing normal closed Switch
+\pgfcircdeclarebipolescaled{switches}
+{}
+{\ctikzvalof{bipoles/ncs/depth}}
+{cncs}
+{\ctikzvalof{bipoles/ncs/height}}
+{\ctikzvalof{bipoles/ncs/width}}
+{
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathlineto{\pgfpoint{.9\pgf@circ@res@right}{\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfsetlinewidth{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfscope
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathmoveto{\pgfpointpolar{90}{.9\pgf@circ@res@right}}
+ \pgfpatharc{90}{-35}{.9\pgf@circ@res@right}
+ \pgf@circ@set@switcharrow@style
+ \pgfsetbeveljoin
+ \pgfusepath{draw}
+ \endpgfscope
+}
+
+%% Opening normal open Switch
+\pgfcircdeclarebipolescaled{switches}
+{}
+{\ctikzvalof{bipoles/ncs/depth}}
+{onos}
+{\ctikzvalof{bipoles/ncs/height}}
+{\ctikzvalof{bipoles/ncs/width}}
+{
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathlineto{\pgfpoint{.9\pgf@circ@res@right}{\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfsetlinewidth{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{.4\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfscope
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathmoveto{\pgfpointpolar{-10}{.9\pgf@circ@res@right}}
+ \pgfpatharc{-10}{95}{.9\pgf@circ@res@right}
+ \pgf@circ@set@switcharrow@style
+ \pgfsetbeveljoin
+ \pgfusepath{draw}
+ \endpgfscope
+}
+
+%% Closing normal open Switch
+\pgfcircdeclarebipolescaled{switches}
+{}
+{\ctikzvalof{bipoles/ncs/depth}}
+{cnos}
+{\ctikzvalof{bipoles/ncs/height}}
+{\ctikzvalof{bipoles/ncs/width}}
+{
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathlineto{\pgfpoint{.9\pgf@circ@res@right}{\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfsetlinewidth{\pgfstartlinewidth}
+ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{0pt}}
+ \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{.4\pgf@circ@res@up}}
+ \pgfusepath{draw}
+ \pgfscope
+ \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth}
+ \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}}
+ \pgfpathmoveto{\pgfpointpolar{90}{.9\pgf@circ@res@right}}
+ \pgfpatharc{90}{-35}{.9\pgf@circ@res@right}
+ \pgf@circ@set@switcharrow@style
+ \pgfsetbeveljoin
+ \pgfusepath{draw}
+ \endpgfscope
+}
+
%% Push Button
\pgfcircdeclarebipolescaled{switches}
{
@@ -4938,7 +5148,7 @@
\pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} % in node
\pgfpathmoveto{\pgfpointpolar{70}{1.2\pgf@circ@res@right}}
\pgfpatharc{70}{-10}{1.2\pgf@circ@res@right}
- \pgfcirc@set@arrows{switch}{}{latexslim}
+ \pgf@circ@set@switcharrow@style
\pgfusepath{draw}
}
@@ -4950,19 +5160,19 @@
\pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} % in node
\pgfpathmoveto{\pgfpointpolar{-10}{1.2\pgf@circ@res@right}}
\pgfpatharc{-10}{60}{1.2\pgf@circ@res@right}
- \pgfcirc@set@arrows{switch}{}{latexslim}
+ \pgf@circ@set@switcharrow@style
\pgfusepath{draw}
}
\pgfcircdeclarebipole{
- \anchor{out 1}{
- \northeast
- \pgf@y=0cm
- }
- \anchor{out 2}{
- \northeast
- \pgf@y=.8\pgf@y
- }
+ \anchor{out 1}{
+ \northeast
+ \pgf@y=0cm
+ }
+ \anchor{out 2}{
+ \northeast
+ \pgf@y=.8\pgf@y
+ }
}
{\ctikzvalof{tripoles/toggleswitch/height 2}}
{toggleswitch}
@@ -5235,10 +5445,12 @@
{\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@up-1.5\pgf@circ@res@temp}}
{
\pgf@circ@setlinewidth{bipoles}{\pgflinewidth}
+ \pgfsetlinewidth{\ctikzvalof{switch arrows/relative thickness}\pgflinewidth}
+ \pgf@circ@subset@color@dash{switch arrows}
+ \pgfcirc@set@arrows{switch}{}{latexslim}
\pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} % in node
\pgfpathmoveto{\pgfpointpolar{70}{1.5\pgf@circ@res@right}}
\pgfpatharc{70}{-50}{1.5\pgf@circ@res@right}
- \pgfcirc@set@arrows{switch}{}{latexslim}
\pgfusepath{draw}
}
@@ -5246,8 +5458,10 @@
{\pgfpoint{\pgf@circ@res@right}{0pt}}
{
\pgf@circ@setlinewidth{bipoles}{\pgflinewidth}
- \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} % in node
+ \pgfsetlinewidth{\ctikzvalof{switch arrows/relative thickness}\pgflinewidth}
+ \pgf@circ@subset@color@dash{switch arrows}
\pgfcirc@set@arrows{switch}{latexslim}{latexslim}
+ \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} % in node
\pgfpathmoveto{\pgfpointpolar{-60}{1.5\pgf@circ@res@right}}
\pgfpatharc{-60}{60}{1.5\pgf@circ@res@right}
\pgfusepath{draw}
@@ -5257,10 +5471,12 @@
{\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@down+1.5\pgf@circ@res@temp}}
{
\pgf@circ@setlinewidth{bipoles}{\pgflinewidth}
+ \pgfsetlinewidth{\ctikzvalof{switch arrows/relative thickness}\pgflinewidth}
+ \pgf@circ@subset@color@dash{switch arrows}
+ \pgfcirc@set@arrows{switch}{}{latexslim}
\pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} % in node
\pgfpathmoveto{\pgfpointpolar{-50}{1.5\pgf@circ@res@right}}
\pgfpatharc{-50}{70}{1.5\pgf@circ@res@right}
- \pgfcirc@set@arrows{switch}{}{latexslim}
\pgfusepath{draw}
}
% %>>>
@@ -5278,6 +5494,14 @@
\pgfcirc@style@to@style{nos}{normal open switch}
\pgfcirc@activate@bipole@simple{l}{ncs}
\pgfcirc@style@to@style{ncs}{normal closed switch}
+\pgfcirc@activate@bipole@simple{l}{oncs}
+\pgfcirc@style@to@style{oncs}{opening normal closed switch}
+\pgfcirc@activate@bipole@simple{l}{cncs}
+\pgfcirc@style@to@style{cncs}{closing normal closed switch}
+\pgfcirc@activate@bipole@simple{l}{onos}
+\pgfcirc@style@to@style{onos}{opening normal open switch}
+\pgfcirc@activate@bipole@simple{l}{cnos}
+\pgfcirc@style@to@style{cnos}{closing normal open switch}
\pgfcirc@activate@bipole{l}{pushbutton}{pushbutton}{push button}
\pgfcirc@style@to@style{push button}{nopb}
@@ -6810,7 +7034,7 @@
{\ctikzvalof{bipoles/american gas filled surge arrester/width}}{
\pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@zero}}
- \pgfpointorigin \pgf@circ@res@other = \pgf@x \advance \pgf@circ@res@other by -\pgf@circ@res@up
+ \pgfpointorigin \pgf@circ@res@other = \pgf@x \advance \pgf@circ@res@other by -\pgf@circ@res@up
\pgfpathlineto{\pgfpoint{\pgf@circ@res@other}{\pgf@circ@res@zero}}
\pgfusepath{draw}
diff --git a/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex b/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex
index 2cef035890..826c3eaad3 100644
--- a/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex
+++ b/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex
@@ -25,7 +25,8 @@
%
\pgfkeys{/tikz/number inputs/.initial=0}
\pgfkeys{/tikz/number inputs/.default=0}
-
+% by default, use the default font (and color, etc.)
+\ctikzset{european ports font/.initial={}}
\newif\ifpgf@circuit@europeanlogicport
\ctikzset{logic ports/.is choice}
\ctikzset{logic ports/european/.code= {\pgf@circuit@europeanlogicporttrue
@@ -37,6 +38,8 @@
\tikzset{nand port/.style={shape=european nand port}}%
\tikzset{nor port/.style={shape=european nor port}}%
\tikzset{xnor port/.style={shape=european xnor port}}%
+ \tikzset{blank port/.style={shape=european blank port}}%
+ \tikzset{blank not port/.style={shape=european blank not port}}%
% there is no Schmitt ports in european style (yet)
\tikzset{schmitt port/.style={shape=schmitt}}%
\tikzset{invschmitt port/.style={shape=invschmitt}}%
@@ -52,6 +55,9 @@
\tikzset{xnor port/.style={shape=american xnor port}}%
\tikzset{schmitt port/.style={shape=schmitt}}%
\tikzset{invschmitt port/.style={shape=invschmitt}}%
+ %%% there are no blank ports for american (no sense to have them)
+ \tikzset{blank port/.style={shape=european blank port}}%
+ \tikzset{blank not port/.style={shape=european blank not port}}%
}}
\ctikzset{logic ports origin/.is choice}
@@ -70,6 +76,8 @@
\ctikzset{tripoles/european xnor port/origin/.initial=0.8}%
\ctikzset{tripoles/european buffer port/origin/.initial=0.8}%
\ctikzset{tripoles/european not port/origin/.initial=0.8}%
+ \ctikzset{tripoles/european blank port/origin/.initial=0.8}%
+ \ctikzset{tripoles/european blank not port/origin/.initial=0.8}%
}%
}
\ctikzset{logic ports origin/center/.code={%
@@ -87,6 +95,8 @@
\ctikzset{tripoles/european xnor port/origin/.initial=0}%
\ctikzset{tripoles/european buffer port/origin/.initial=0}%
\ctikzset{tripoles/european not port/origin/.initial=0}%
+ \ctikzset{tripoles/european blank port/origin/.initial=0}%
+ \ctikzset{tripoles/european blank not port/origin/.initial=0}%
}%
}
@@ -195,7 +205,7 @@
\ctikzset{tripoles/american xnor port/inputs/.initial=2}
\ctikzset{tripoles/american xnor port/angle/.initial=70}
\ctikzset{tripoles/american xnor port/inner/.initial=0.3}
-
+%
\ctikzset{tripoles/european and port/width/.initial=1.4}
\ctikzset{tripoles/european and port/height/.initial=.65}
\ctikzset{tripoles/european and port/reserved/.initial=.6}
@@ -255,6 +265,21 @@
\ctikzset{tripoles/european buffer port/inputs/.initial=1}%
\ctikzset{tripoles/european not port/origin/.initial=0.8}
\ctikzset{tripoles/european not port/inputs/.initial=1}%
+%% "blank" ports
+\ctikzset{tripoles/european blank port/width/.initial=1.4}
+\ctikzset{tripoles/european blank port/height/.initial=.65}
+\ctikzset{tripoles/european blank port/reserved/.initial=.6}
+\ctikzset{tripoles/european blank port/input height/.initial=.6}
+\ctikzset{tripoles/european blank not port/width/.initial=1.4}
+\ctikzset{tripoles/european blank not port/not height/.initial=.3}
+\ctikzset{tripoles/european blank not port/not width/.initial=.9}
+\ctikzset{tripoles/european blank not port/height/.initial=.65}
+\ctikzset{tripoles/european blank not port/reserved/.initial=.6}
+\ctikzset{tripoles/european blank not port/input height/.initial=.6}
+\ctikzset{tripoles/european blank port/origin/.initial=0.8}
+\ctikzset{tripoles/european blank port/inputs/.initial=2}
+\ctikzset{tripoles/european blank not port/origin/.initial=0.8}
+\ctikzset{tripoles/european blank not port/inputs/.initial=2}
%%% parameters that are not used anymore after multi-input
%%% gates --- left for compatibility of source code.
\ctikzset{tripoles/american xor port/aaa/.initial=.6}
@@ -1547,8 +1572,11 @@
\fi
\pgf@circ@text@strokecolor
\pgfpathmoveto{\pgfpointorigin}
- \pgftext{#2}
- %
+ \pgfscope
+ % text is always in standard direction
+ \pgftransformresetnontranslations
+ \pgftext{\ctikzvalof{european ports font}#2}%
+ \endpgfscope
}
}
}
@@ -1560,7 +1588,8 @@
\pgfcircdeclareeurologicport{nand}{\&}{\pgf@circ@res@count}{not}
\pgfcircdeclareeurologicport{nor}{$\ge 1$}{\pgf@circ@res@count}{not}
\pgfcircdeclareeurologicport{xnor}{$=1$}{\pgf@circ@res@count}{not}
-
+\pgfcircdeclareeurologicport{blank}{}{\pgf@circ@res@count}{}
+\pgfcircdeclareeurologicport{blank not}{}{\pgf@circ@res@count}{not}
%% end european logic ports
% %>>>
diff --git a/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex b/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex
index 44cf1e70ad..e76a91d957 100644
--- a/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex
+++ b/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex
@@ -16,8 +16,8 @@
\startmodule[circuitikz]
\usemodule[tikz]
-\def\pgfcircversion{1.6.3}
-\def\pgfcircversiondate{2023/06/23}
+\def\pgfcircversion{1.6.4}
+\def\pgfcircversiondate{2023/10/10}
\writestatus{loading}{\pgfcircversiondate{} The CircuiTikz circuit drawing package version \pgfcircversion}
diff --git a/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdf b/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdf
index c4fb7fd8e2..dd6c2d0407 100644
--- a/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdf
+++ b/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex b/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex
index ea284f4350..56a57312d0 100644
--- a/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex
+++ b/graphics/pgf/contrib/tkz-bernoulli/doc/tkz-bernoulli-doc.tex
@@ -34,8 +34,8 @@
\hypersetup{pdfborder=0 0 0}
\usepackage[margin=1.5cm]{geometry}
\setlength{\parindent}{0pt}
-\def\TPversion{0.1.0}
-\def\TPdate{9 septembre 2023}
+\def\TPversion{0.1.1}
+\def\TPdate{10 octobre 2023}
\usepackage{tcolorbox}
\tcbuselibrary{skins,hooks}
\usepackage{soul}
@@ -308,6 +308,40 @@ Les \textsf{clés} relatives aux commandes précédentes permettent de modifier
\tkzSchemBernoulli*
\end{demohigh}
+\subsection{La commande pour une épreuve de Bernoulli}
+
+Il existe une commande, \MontreCode{\textbackslash tkzEpreuvBernoulli}, pour afficher un arbre \textit{simple}, avec le même fonctionnement que les arbres \textit{complets}.
+
+Certaines clés n'ont pas d'effet, donc il n'y aura pas de d'explications dédiées pour cette commande.
+
+\begin{codehigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+%commande dans un environnement tikzpicture
+\begin{tikzpicture}
+ \tkzEpreuvBernoulli[clés]
+\end{tikzpicture}
+\end{codehigh}
+
+\begin{demohigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+\begin{tikzpicture}
+ \tkzEpreuvBernoulli
+\end{tikzpicture}
+~~
+\begin{tikzpicture}
+ \tkzEpreuvBernoulli[Racine=false]
+\end{tikzpicture}
+\end{demohigh}
+
+\begin{codehigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+%commande autonome
+\tkzEpreuvBernoulli*[clés]
+\end{codehigh}
+
+\begin{demohigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+\tkzEpreuvBernoulli*[Probas={$p$/$q$}]
+~~
+\tkzEpreuvBernoulli*
+\end{demohigh}
+
\pagebreak
\section{English commands}
@@ -354,6 +388,34 @@ Default styles are given by :
\tkzBernTreeStyleDefault
\end{codehigh}
+\begin{codehigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+%command in an environment tikzpicture for a single Bernoulli trial
+\begin{tikzpicture}
+ tkzBernoulliTrial[keys]
+\end{tikzpicture}
+\end{codehigh}
+
+\begin{demohigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+\begin{tikzpicture}
+ \tkzBernoulliTrial
+\end{tikzpicture}
+~~
+\begin{tikzpicture}
+ \tkzBernoulliTrial[Root=false]
+\end{tikzpicture}
+\end{demohigh}
+
+\begin{codehigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+%stand-alone command for a single Bernoulli trial
+\tkzBernoulliTrial*[keys]
+\end{codehigh}
+
+\begin{demohigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
+\tkzBernoulliTrial*[Probs={$p$/$q$}]
+~~
+\tkzBernoulliTrial*
+\end{demohigh}
+
\subsection{Examples}
\begin{demohigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
@@ -363,7 +425,7 @@ Default styles are given by :
\end{demohigh}
\begin{demohigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
-\tkzBernoulliTree*[Help,ShowProbs=false,LevelSep=3.25,NodeSep=0.75,N=4,Guide,var=Z]
+\tkzBernoulliTree*[Help,ShowProbs=false,LevelSep=3.25,NodeSep=0.75,N=4,Guide,Var=Z]
\end{demohigh}
\begin{demohigh}[language=latex/latex2,style/main=cyan!10,style/code=cyan!10]
diff --git a/graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty b/graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty
index 88e3ebaed4..5398bbbb0c 100644
--- a/graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty
+++ b/graphics/pgf/contrib/tkz-bernoulli/tex/tkz-bernoulli.sty
@@ -2,9 +2,10 @@
% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tkz-bernoulli}[2023/09/09 0.1.0 Draw Bernoulli tree with tikz]
+\ProvidesPackage{tkz-bernoulli}[2023/10/10 0.1.1 Draw Bernoulli tree with tikz]
%====HISTORIQUE
+% v 0.1.1 Correction de bugs + ajout d'une commande pour une épreuve de Bernoulli
% v 0.1.0 Version initiale [fr] et [en]
%====BASE
@@ -83,6 +84,45 @@
N=3
}
+\NewDocumentCommand\tkzEpreuvBernoulli{ s O{} D<>{} }{%
+ \useKVdefault[ArbreBernoulli]%
+ \setKV[ArbreBernoulli]{#2}%
+ \saveexpandmode\expandarg
+ \StrCut{\ArBinEvts}{/}{\ArBinSucces}{\ArBinEchec}%
+ \StrCut{\ArBinProbas}{/}{\ArBinProbSucces}{\ArBinProbEchec}%
+ \restoreexpandmode
+ \IfBooleanT{#1}%
+ {%
+ \begin{tikzpicture}[#3]
+ }%
+ \IfStrEq{\ArBinRacine}{false}%
+ {%
+ \coordinate (A0-1) at (0,0) ;%
+ \coordinate (B0-1) at (0,0) ;%
+ }%
+ {%
+ \coordinate (A0-1) at (0,0) ;%
+ \node[BernRacine] (B0-1) at (A0-1) {\ArBinRacine} ;%
+ }%
+ \coordinate (A1-1) at ($(A0-1)+({\ArBinIN},{0.5*\ArBinIF})$) ;
+ \coordinate (A1-2) at ($(A0-1)+({\ArBinIN},{-0.5*\ArBinIF})$) ;
+ \node[BernNoeudS] (B1-1) at (A1-1) {\ArBinSucces} ;%succès
+ \node[BernNoeudE] (B1-2) at (A1-2) {\ArBinEchec} ;%échec
+ \ifboolKV[ArbreBernoulli]{AffProbas}%
+ {%
+ \draw[BernBranche] (B0-1) -- (B1-1) node[BernProbaS] {\ArBinProbSucces} ;
+ \draw[BernBranche] (B0-1) -- (B1-2) node[BernProbaE] {\ArBinProbEchec} ;
+ }%
+ {%
+ \draw[BernBranche] (B0-1) -- (B1-1) ;
+ \draw[BernBranche] (B0-1) -- (B1-2) ;
+ }%
+ \IfBooleanT{#1}%
+ {%
+ \end{tikzpicture}%
+ }%
+}
+
\NewDocumentCommand\tkzSchemBernoulli{ s O{} D<>{} }{%
\useKVdefault[ArbreBernoulli]%
\setKV[ArbreBernoulli]{#2}%
@@ -104,6 +144,7 @@
%Racine
\IfStrEq{\ArBinRacine}{false}%
{%
+ \coordinate (A0-1) at (0,0) ;%
\coordinate (B0-1) at (0,0) ;%
}%
{%
@@ -160,7 +201,7 @@
\foreach \i in {1,...,\fpeval{2**\ArBinN}}{%
\def\itmp{\fpeval{2**\ArBinN-\i}}%
\def\ArBenTmpBin{\xintDecToBin{\itmp}}%
- \draw (B\ArBinN-\i) node[BernNotice] {$\longrightarrow X=\StrCount{\ArBenTmpBin}{1}$} ;
+ \draw (B\ArBinN-\i) node[BernNotice] {$\longrightarrow \ArBinVar=\StrCount{\ArBenTmpBin}{1}$} ;
}%
}%
{}%
@@ -227,7 +268,7 @@
\setKVdefault[BernoulliTree]{%
LevelSep=2.25,%
NodeSep=1,%
- Events={$S$/$E$},%
+ Events={$S$/$F$},%
Probs={$p$/$1-p$},%
Grid=false,%
ShowProbs=true,%
@@ -238,6 +279,45 @@
N=3
}
+\NewDocumentCommand\tkzBernoulliTrial{ s O{} D<>{} }{%
+ \useKVdefault[BernoulliTree]%
+ \setKV[BernoulliTree]{#2}%
+ \saveexpandmode\expandarg
+ \StrCut{\ArBinEvts}{/}{\ArBinSucces}{\ArBinEchec}%
+ \StrCut{\ArBinProbas}{/}{\ArBinProbSucces}{\ArBinProbEchec}%
+ \restoreexpandmode
+ \IfBooleanT{#1}%
+ {%
+ \begin{tikzpicture}[#3]
+ }%
+ \IfStrEq{\ArBinRacine}{false}%
+ {%
+ \coordinate (A0-1) at (0,0) ;%
+ \coordinate (B0-1) at (0,0) ;%
+ }%
+ {%
+ \coordinate (A0-1) at (0,0) ;%
+ \node[BernRoot] (B0-1) at (A0-1) {\ArBinRacine} ;%
+ }%
+ \coordinate (A1-1) at ($(A0-1)+({\ArBinIN},{0.5*\ArBinIF})$) ;
+ \coordinate (A1-2) at ($(A0-1)+({\ArBinIN},{-0.5*\ArBinIF})$) ;
+ \node[BernNodeS] (B1-1) at (A1-1) {\ArBinSucces} ;%succès
+ \node[BernNodeF] (B1-2) at (A1-2) {\ArBinEchec} ;%échec
+ \ifboolKV[BernoulliTree]{ShowProbs}%
+ {%
+ \draw[BernEdge] (B0-1) -- (B1-1) node[BernProbS] {\ArBinProbSucces} ;
+ \draw[BernEdge] (B0-1) -- (B1-2) node[BernProbF] {\ArBinProbEchec} ;
+ }%
+ {%
+ \draw[BernEdge] (B0-1) -- (B1-1) ;
+ \draw[BernEdge] (B0-1) -- (B1-2) ;
+ }%
+ \IfBooleanT{#1}%
+ {%
+ \end{tikzpicture}%
+ }%
+}
+
\NewDocumentCommand\tkzBernoulliTree{ s O{} D<>{} }{%
\useKVdefault[BernoulliTree]%
\setKV[BernoulliTree]{#2}%
@@ -259,6 +339,7 @@
%Racine
\IfStrEq{\ArBinRacine}{false}%
{%
+ \coordinate (A0-1) at (0,0) ;%
\coordinate (B0-1) at (0,0) ;%
}%
{%
@@ -267,7 +348,7 @@
}%
%Aide Racine
\ifboolKV[BernoulliTree]{Help}%
- {\draw[teal] (B0-1) node[below=4pt,font=\tiny\ttfamily] {A00} ;}%
+ {\draw[teal] (B0-1) node[below=4pt,font=\tiny\ttfamily] {B0-1} ;}%
{}%
%générations des nœuds du premier chemin
\foreach \i in {1,...,\ArBinN}{%
@@ -315,7 +396,7 @@
\foreach \i in {1,...,\fpeval{2**\ArBinN}}{%
\def\itmp{\fpeval{2**\ArBinN-\i}}%
\def\ArBenTmpBin{\xintDecToBin{\itmp}}%
- \draw (B\ArBinN-\i) node[BernGuide] {$\longrightarrow X=\StrCount{\ArBenTmpBin}{1}$} ;
+ \draw (B\ArBinN-\i) node[BernGuide] {$\longrightarrow \ArBinVar=\StrCount{\ArBenTmpBin}{1}$} ;
}%
}%
{}%
diff --git a/macros/latex/contrib/indextools/indextools.dtx b/macros/latex/contrib/indextools/indextools.dtx
index b88e96682e..3cc0260b0c 100644
--- a/macros/latex/contrib/indextools/indextools.dtx
+++ b/macros/latex/contrib/indextools/indextools.dtx
@@ -45,7 +45,7 @@ and the derived files indextools.sty and indextools.pdf.
%<package>\NeedsTeXFormat{LaTeX2e}[2005/12/01]
%<package>\ProvidesPackage{indextools}%
%<*package>
- [2015/11/22 v1.5.1 Package for typesetting indices in a synchronous mode]
+ [2023/10/10 v1.6.0 Package for typesetting indices in a synchronous mode]
%</package>
%<*driver>
\documentclass{ltxdoc}
@@ -80,7 +80,7 @@ and the derived files indextools.sty and indextools.pdf.
\end{document}
%</driver>
% \fi
-% \CheckSum{891}
+% \CheckSum{897}
%
% \changes{v1.0}{2010/07/10}{First public version}
% \changes{v1.0a}{2010/07/12}{Small bug correction}
@@ -100,6 +100,7 @@ and the derived files indextools.sty and indextools.pdf.
% \changes{v1.5}{2015/11/15}{New option `innote'}
% \changes{v1.5}{2015/11/15}{New option `notenumber'}
% \changes{v1.5.1}{2015/11/22}{Fix bug with options `notenumber' and `innote' when using \cs{index} without optional argument}
+% \changes{v1.6.0}{2023/10/10}{Add compatibility with upmendex sorting engine}
%
% \begin{abstract}
% This package is a fork of the \pack{imakeidx} package. The original authors
@@ -121,7 +122,7 @@ and the derived files indextools.sty and indextools.pdf.
% \item this documentation.
% \end{itemize}
% This package replaces and extends the functionalities of \pack{imakeidx},
-% therefore it MUST not be loaded at the same time as \pack{imakeidx}. Some
+% therefore it MUST not be loaded at the same time as \pack{imakeidx}. Some
% controls are implemented to avoid these situations; if loading of
% \pack{indextools} is required after \pack{imakeidx} is already loaded,
% it does not get loaded; at the same time, if it gets loaded, it sets a
@@ -137,7 +138,7 @@ and the derived files indextools.sty and indextools.pdf.
% impossible to start an index before all other pages have been
% ejected.
%
-% For support, please open issues on:\\[1ex]
+% For support, please open issues on:\\[1ex]
% \makebox[\linewidth]{\url{https://github.com/maieul/indextools}}
% \end{abstract}
%
@@ -146,7 +147,7 @@ and the derived files indextools.sty and indextools.pdf.
% system is just \prog{pdftex}; the original Knuthian \prog{tex} is
% still corrected by D.\,E.~Knuth himself, but is frozen, according to
% his will; it is still distributed by every \TeX\ distribution, but
-% in practice \prog{pdftex}, \prog{xetex} or \prog{luatex} are the most used
+% in practice \prog{pdftex}, \prog{xetex} or \prog{luatex} are the most used
% interpreters and typesetting engines of most macro packages.
%
% This program \prog{pdftex} was originally born with the facility of
@@ -156,7 +157,7 @@ and the derived files indextools.sty and indextools.pdf.
% incorporates the extensions of \eTeX\ and has the ability to open a
% shell so as to run system commands with their arguments. The same
% is true for \prog{xetex} and \prog{luatex}.
-%
+%
% This facility, since the \TeX~Live 2010 distribution, is official,
% but is sort of restricted, in the sense that the \TeX\ system
% configuration file contains a list of ``safe'' system commands that
@@ -207,7 +208,7 @@ and the derived files indextools.sty and indextools.pdf.
% \begin{description}\def\Item[#1]{\item[\normalfont\ttfamily#1]}
% \Item[makeindex] in order to use the \prog{makeindex} sorting and
% formatting engine; this option is the default and is mutually
-% exclusive with the next option.
+% exclusive with the two next options.
% \Item[xindy] in order to use the \prog{xindy} sorting and formatting
% engine; \texttt{texindy} is an alias for \texttt{xindy} and actually
% it's the script \prog{texindy} which is called by this package.
@@ -216,6 +217,7 @@ and the derived files indextools.sty and indextools.pdf.
% the command line specific settings, it is possible to specify the
% option \texttt{truexindy}; the user is then responsible to set up
% the \prog{xindy} engine with the suitable command line options.
+% \Item[upmendex] in order tu use the \prog{upmendex} sorting and formatting engine.
% \Item[noautomatic] disables the automatic splitting of the raw
% index files and running of the system programs; this option might
% be used to save time when one knows for sure that the index files
@@ -234,13 +236,13 @@ and the derived files indextools.sty and indextools.pdf.
% document class option \texttt{twocolumn} has been specified.
% \Item[afterindex] allows to use \cs{index} command after \cs{printindex}.
% If this case, the index will be printed only on the secund run.
-% \Item[innote] adds a mark for content indexed in note. The standard mark is an italic `n' added after the page number. You can redefine the \cs{innnote} command to modify the standard mark.
+% \Item[innote] adds a mark for content indexed in note. The standard mark is an italic `n' added after the page number. You can redefine the \cs{innote} command to modify the standard mark.
% The default value is:\\
% \begin{verbatim}
% \providecommand{\innote}[1]{#1\textit{n}}
% \end{verbatim}
% \Item[notenumber] adds the note number for content indexed in note. The standard marks is a `n.' followed by the note number.
-% You can redefine \cs{innnotenumber} to modify the standard mark.
+% You can redefine \cs{innotenumber} to modify the standard mark.
% The default value is:\\
% \begin{verbatim}
% \providecommand{\innotenumber}[2]{#2n.~#1}
@@ -302,8 +304,8 @@ and the derived files indextools.sty and indextools.pdf.
% specific index; if not specified, the \cs{indexname} value is
% used.\\* Example: \texttt{title=Index of names}.
% \Item[program] is the name of the system program that is used to
-% sort and format an index; valid choices are \prog{makeindex},
-% \prog{xindy}, or \prog{texindy}, plus \prog{truexindy}. If not
+% sort and format an index; valid choices are \prog{makeindex} ;
+% \prog{xindy}, or \prog{texindy}, plus \prog{truexindy} ; \prog{upmendex}. If not
% specified the program specified among the package options is used.
% If no option is specified, \prog{makeindex} is used. In order to
% use \prog{xindy}, it's necessary to call \prog{pdflatex} with
@@ -370,7 +372,7 @@ and the derived files indextools.sty and indextools.pdf.
% \texttt{plain}. You might want to set it to \texttt{empty} or some
% other page style defined by the class or by yourself. This keyword
% is disabled when the package \pack{fancyhdr} is loaded; any definition
-% or choice of page styles must be done before typesetting the indices.
+% or choice of page styles must be done before typesetting the indices.
% ^^A
% \Item[headers] which takes two values: the left and right marks. You
% might want to use this for disabling automatic uppercasing, by
@@ -477,7 +479,7 @@ and the derived files indextools.sty and indextools.pdf.
% \texttt{-\/-shell-escape} (which is \texttt{-\/-enable-write18} for
% MiK\TeX) typesetting program option or the \texttt{noautomatic}
% option should be specified when loading \pack{indextools}.
-%
+%
% Let's look at a couple of examples. In both we suppose that the
% document \texttt{mybook.tex} defines two indices through
%\begin{verbatim}
@@ -616,7 +618,7 @@ and the derived files indextools.sty and indextools.pdf.
% |\indexprologue| to write some text before the index proper gets typeset;
% an optional space may be used in place of the default one-line spacing
% between the index title, the prologue and the index body.
-%
+%
% This facility relies on a particular feature of the |multicols|
% environment, that \pack{indextools} uses to instruct the typesetting
% program to typeset the index with a specified number of balanced columns.
@@ -721,7 +723,7 @@ and the derived files indextools.sty and indextools.pdf.
% an interaction between \pack{memoir} and \pack{showidx} that required
% special attention. See below about using \pack{showidx}.
%
-% \subsubsection{Package \pack{showidx}}
+% \subsubsection{Package \pack{showidx}}
%
% Up to version 1.1 this package did not allow to use it together with
% the \pack{showidx} package; now it is, provided that \pack{showidx}
@@ -729,7 +731,7 @@ and the derived files indextools.sty and indextools.pdf.
% on using \pack{showidx}.
%
% \subsubsection{Package \pack{fancyhdr}}
-%
+%
% When using package \pack{fancyhdr} some inconveniences did show up;
% now we believe we have detected the causes and we implemented the
% necessary corrections\footnote{Thanks to Maïeul Rouquette who, before
@@ -850,7 +852,7 @@ and the derived files indextools.sty and indextools.pdf.
%
% Therefore if by chance you get double entries into the table of contents,
% eliminate the \Kvalue{intoc} option from your calls; your class,
-% packages, and settings are already taking care of it.
+% packages, and settings are already taking care of it.
% The package \pack{tocbibind} should be loaded with the \Kvalue{noindex}
% option, otherwise it would interfere with our redefinition of
@@ -1007,6 +1009,7 @@ and the derived files indextools.sty and indextools.pdf.
\DeclareOption{texindy}{\def\indtl@progdefault{texindy}}
\DeclareOption{truexindy}{\def\indtl@progdefault{truexindy}}
\DeclareOption{makeindex}{\def\indtl@progdefault{makeindex}}
+\DeclareOption{upmendex}{\def\indtl@progdefault{upmendex}}
\newif\ifindtl@disableautomatic
\DeclareOption{noautomatic}{\indtl@disableautomatictrue}
\newif\ifindtl@nonewpage
@@ -1021,13 +1024,13 @@ and the derived files indextools.sty and indextools.pdf.
\let\indtl@finalmessage\@gobble
\let\indtl@splitindexmessage\relax}}
\newif\ifindtl@afterindex
-\DeclareOption{afterindex}{\indtl@afterindextrue}
-
+\DeclareOption{afterindex}{\indtl@afterindextrue}
+
\newif\ifindtl@innote
-\DeclareOption{innote}{\indtl@innotetrue}
+\DeclareOption{innote}{\indtl@innotetrue}
\newif\ifindtl@notenumber
-\DeclareOption{notenumber}{\indtl@notenumbertrue}
+\DeclareOption{notenumber}{\indtl@notenumbertrue}
\ExecuteOptions{makeindex}
\ProcessOptions\relax
@@ -1102,14 +1105,14 @@ and the derived files indextools.sty and indextools.pdf.
\providecommand*\see[2]{\emph{\seename} #1}
\providecommand*\seealso[2]{\emph{\alsoname} #1}
\providecommand*\seename{see}
-\providecommand*\alsoname{see also}
+\providecommand*\alsoname{seeupmendex also}
% \end{macrocode}
%
% \subsection{\cs{makeindex}}
%
% From here on, some commands are duplicated; this depends on the
% fact that the behavior must be different when using \prog{splitindex} or
-% not. The memory occupied by the useless commands will be cleared at the
+% not. The memory occupied by the useless commands will be cleared at the
% end of package.
% \begin{macrocode}
\providecommand*\makeindex{} % to use \renewcommand safely
@@ -1143,7 +1146,7 @@ and the derived files indextools.sty and indextools.pdf.
\define@key{indtl}{name}{\def\indtl@name{#1}}
\define@key{indtl}{title}{\def\indtl@title{#1}}
\define@choicekey{indtl}{program}[\indtl@val\indtl@nr]
- {makeindex,xindy,texindy,truexindy}{%
+ {makeindex,xindy,texindy,truexindy,upmendex}{%
\ifcase\indtl@nr\relax
\def\indtl@program{makeindex}%
\or
@@ -1152,6 +1155,8 @@ and the derived files indextools.sty and indextools.pdf.
\def\indtl@program{texindy}%
\or
\def\indtl@program{xindy}%
+ \or
+ \def\indtl@program{upmendex}%
\fi}
\define@key{indtl}{options}{\def\indtl@options{ #1 }}
\define@boolkey{indtl}{noautomatic}[true]{}
@@ -1240,7 +1245,7 @@ and the derived files indextools.sty and indextools.pdf.
\fi}
% \end{macrocode}
%
-% \subsection{\cs{index}}
+% \subsection{\cs{index}}
%
% Provide a default definition for \cs{index}; when a \cs{makeindex}
% command is given and \LaTeX\ is writing on auxiliary files,
@@ -1289,7 +1294,7 @@ and the derived files indextools.sty and indextools.pdf.
% so as not redefining it; then we use it to let the \pack{showidx} true or
% simulated macros do their job, but we also take care of resetting the switch
% default value to false at begin document time if the \pack{memoir} class is
-% being used.
+% being used.
%
%
% \begin{macrocode}
@@ -1529,7 +1534,7 @@ and the derived files indextools.sty and indextools.pdf.
\@tempswafalse
\fi}
% \end{macrocode}
-% We define a macro that close a specified index file and run in.
+% We define a macro that close a specified index file and run in.
% \begin{macrocode}
\newcommand{\indtl@closeandrundidxsplit}[1]{%
\immediate\closeout\csname #1@idxfile\endcsname
@@ -1542,7 +1547,7 @@ and the derived files indextools.sty and indextools.pdf.
\fi
}
% \end{macrocode}
-% We define a macro that close the general index file and run in.
+% We define a macro that close the general index file and run in.
% \begin{macrocode}
\newcommand{\indtl@closeandrundidxunique}{%
\immediate\closeout\@indexfile
@@ -1637,8 +1642,8 @@ and the derived files indextools.sty and indextools.pdf.
}%
}
% \end{macrocode}
-% \subsection{`innnote' and `notenumber' options}
-%
+% \subsection{`innote' and `notenumber' options}
+%
% If the `innote' option is enabled, we modify the standard index command when we are in a note, in order to insert the \verb+|innote+ in the \verb+.idx+ file.
% \begin{macrocode}
@@ -1648,7 +1653,7 @@ and the derived files indextools.sty and indextools.pdf.
\LetLtxMacro\orig@@index\index
\pretocmd{\@footnotetext}{\let\index\nindex}{}{}
\apptocmd{\@footnotetext}{\let\index\orig@@index}{}{}
-
+
\fi%
% \end{macrocode}
% The same is true if the `notnumber' option is enabled.
diff --git a/macros/latex/contrib/indextools/indextools.pdf b/macros/latex/contrib/indextools/indextools.pdf
index e156d192de..4aed55b511 100644
--- a/macros/latex/contrib/indextools/indextools.pdf
+++ b/macros/latex/contrib/indextools/indextools.pdf
Binary files differ
diff --git a/macros/latex/contrib/indextools/issue5.pdf b/macros/latex/contrib/indextools/issue5.pdf
deleted file mode 100644
index e37ec106a5..0000000000
--- a/macros/latex/contrib/indextools/issue5.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/l3backend/CHANGELOG.md b/macros/latex/contrib/l3backend/CHANGELOG.md
index 5877ce53d3..94da9cacbe 100644
--- a/macros/latex/contrib/l3backend/CHANGELOG.md
+++ b/macros/latex/contrib/l3backend/CHANGELOG.md
@@ -6,6 +6,11 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2023-10-10]
+
+### Changed
+- Track `expl3` changes
+
## [2023-04-19]
### Changed
@@ -296,7 +301,8 @@ this project uses date-based 'snapshot' version identifiers.
- Include `l3backend` in file names
- Moved backend code to internal for each 'parent' module
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-04-19...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-10-10...HEAD
+[2023-10-10]: https://github.com/latex3/latex3/compare/2023-04-19...2023-10-10
[2023-04-19]: https://github.com/latex3/latex3/compare/2023-03-30...2023-04-19
[2023-03-30]: https://github.com/latex3/latex3/compare/2023-01-16...2023-03-30
[2023-01-16]: https://github.com/latex3/latex3/compare/2022-10-26...2023-01-16
diff --git a/macros/latex/contrib/l3backend/README.md b/macros/latex/contrib/l3backend/README.md
index 0aa2b14b5f..883bd5d1c6 100644
--- a/macros/latex/contrib/l3backend/README.md
+++ b/macros/latex/contrib/l3backend/README.md
@@ -1,7 +1,7 @@
LaTeX3 Backend Drivers
======================
-Release 2023-04-19
+Release 2023-10-10
This package forms parts of `expl3`, and contains the code used to interface
with backends (drivers) across the `expl3` codebase. The functions here are
diff --git a/macros/latex/contrib/l3backend/l3backend-basics.dtx b/macros/latex/contrib/l3backend/l3backend-basics.dtx
index cf4ad444ba..a6f7ea6d1c 100644
--- a/macros/latex/contrib/l3backend/l3backend-basics.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-basics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -70,27 +70,27 @@
% \begin{macrocode}
\ProvidesExplFile
%<*dvipdfmx>
- {l3backend-dvipdfmx.def}{2023-04-19}{}
+ {l3backend-dvipdfmx.def}{2023-10-10}{}
{L3 backend support: dvipdfmx}
%</dvipdfmx>
%<*dvips>
- {l3backend-dvips.def}{2023-04-19}{}
+ {l3backend-dvips.def}{2023-10-10}{}
{L3 backend support: dvips}
%</dvips>
%<*dvisvgm>
- {l3backend-dvisvgm.def}{2023-04-19}{}
+ {l3backend-dvisvgm.def}{2023-10-10}{}
{L3 backend support: dvisvgm}
%</dvisvgm>
%<*luatex>
- {l3backend-luatex.def}{2023-04-19}{}
+ {l3backend-luatex.def}{2023-10-10}{}
{L3 backend support: PDF output (LuaTeX)}
%</luatex>
%<*pdftex>
- {l3backend-pdftex.def}{2023-04-19}{}
+ {l3backend-pdftex.def}{2023-10-10}{}
{L3 backend support: PDF output (pdfTeX)}
%</pdftex>
%<*xetex>
- {l3backend-xetex.def}{2023-04-19}{}
+ {l3backend-xetex.def}{2023-10-10}{}
{L3 backend support: XeTeX}
%</xetex>
% \end{macrocode}
@@ -137,8 +137,7 @@
% \begin{macro}
% {
% \__kernel_backend_literal:e,
-% \__kernel_backend_literal:n,
-% \__kernel_backend_literal:x
+% \__kernel_backend_literal:n
% }
% The one shared function for all backends is access to the basic
% \tn{special} primitive: it has slightly odd expansion behaviour
@@ -147,7 +146,6 @@
\cs_new_eq:NN \__kernel_backend_literal:e \tex_special:D
\cs_new_protected:Npn \__kernel_backend_literal:n #1
{ \__kernel_backend_literal:e { \exp_not:n {#1} } }
-\cs_generate_variant:Nn \__kernel_backend_literal:n { x }
% \end{macrocode}
% \end{macro}
%
@@ -175,7 +173,7 @@
% \end{macrocode}
%
% \begin{macro}
-% {\__kernel_backend_literal_postscript:n, \__kernel_backend_literal_postscript:x}
+% {\__kernel_backend_literal_postscript:n, \__kernel_backend_literal_postscript:e}
% Literal PostScript can be included using a few low-level formats. Here,
% we use the form with no positioning: this is overall more convenient as
% a wrapper. Note that this does require that where position is important,
@@ -183,18 +181,18 @@
% \begin{macrocode}
\cs_new_protected:Npn \__kernel_backend_literal_postscript:n #1
{ \__kernel_backend_literal:n { ps:: #1 } }
-\cs_generate_variant:Nn \__kernel_backend_literal_postscript:n { x }
+\cs_generate_variant:Nn \__kernel_backend_literal_postscript:n { e }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\__kernel_backend_postscript:n, \__kernel_backend_postscript:x}
+% \begin{macro}{\__kernel_backend_postscript:n, \__kernel_backend_postscript:e}
% PostScript data that does have positioning, and also applying
% a shift to |SDict| (which is not done automatically by
% |ps:| or |ps::|, in contrast to |!| or |"|).
% \begin{macrocode}
\cs_new_protected:Npn \__kernel_backend_postscript:n #1
{ \__kernel_backend_literal:n { ps: SDict ~ begin ~ #1 ~ end } }
-\cs_generate_variant:Nn \__kernel_backend_postscript:n { x }
+\cs_generate_variant:Nn \__kernel_backend_postscript:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -265,7 +263,7 @@
% to have more code in Lua means we create two independent files using
% shared DocStrip code.
%
-% \begin{macro}{\__kernel_backend_literal_pdf:n, \__kernel_backend_literal_pdf:x}
+% \begin{macro}{\__kernel_backend_literal_pdf:n, \__kernel_backend_literal_pdf:e}
% This is equivalent to \verb|\special{pdf:}| but the engine can
% track it. Without the \texttt{direct} keyword everything is kept in
% sync: the transformation matrix is set to the current point automatically.
@@ -282,11 +280,11 @@
%</pdftex>
{ \exp_not:n {#1} }
}
-\cs_generate_variant:Nn \__kernel_backend_literal_pdf:n { x }
+\cs_generate_variant:Nn \__kernel_backend_literal_pdf:n { e }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\__kernel_backend_literal_page:n}
+% \begin{macro}{\__kernel_backend_literal_page:n, \__kernel_backend_literal_page:e}
% Page literals are pretty simple. To avoid an expansion, we write out
% by hand.
% \begin{macrocode}
@@ -300,6 +298,16 @@
%</pdftex>
page { \exp_not:n {#1} }
}
+\cs_new_protected:Npn \__kernel_backend_literal_page:e #1
+ {
+%<*luatex>
+ \tex_pdfextension:D literal ~
+%</luatex>
+%<*pdftex>
+ \tex_pdfliteral:D
+%</pdftex>
+ page {#1}
+ }
% \end{macrocode}
% \end{macro}
%
@@ -327,7 +335,7 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\__kernel_backend_matrix:n, \__kernel_backend_matrix:x}
+% \begin{macro}{\__kernel_backend_matrix:n, \__kernel_backend_matrix:e}
% Here the appropriate function is set up to insert an affine matrix
% into the PDF. With \pdfTeX{} and \LuaTeX{} in direct PDF output mode there
% is a primitive for this, which only needs the rotation/scaling/skew part.
@@ -342,7 +350,7 @@
%</pdftex>
{ \exp_not:n {#1} }
}
-\cs_generate_variant:Nn \__kernel_backend_matrix:n { x }
+\cs_generate_variant:Nn \__kernel_backend_matrix:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -362,14 +370,14 @@
% for both backends, with some \texttt{clean up} for \XeTeX{} as
% required.
%
-% \begin{macro}{\__kernel_backend_literal_pdf:n, \__kernel_backend_literal_pdf:x}
+% \begin{macro}{\__kernel_backend_literal_pdf:n, \__kernel_backend_literal_pdf:e}
% Undocumented but equivalent to \pdfTeX{}'s |literal| keyword. It's similar to
% be not the same as the documented |contents| keyword as that adds a |q|/|Q|
% pair.
% \begin{macrocode}
\cs_new_protected:Npn \__kernel_backend_literal_pdf:n #1
{ \__kernel_backend_literal:n { pdf:literal~ #1 } }
-\cs_generate_variant:Nn \__kernel_backend_literal_pdf:n { x }
+\cs_generate_variant:Nn \__kernel_backend_literal_pdf:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -404,7 +412,7 @@
%<*dvisvgm>
% \end{macrocode}
%
-% \begin{macro}{\__kernel_backend_literal_svg:n, \__kernel_backend_literal_svg:x}
+% \begin{macro}{\__kernel_backend_literal_svg:n, \__kernel_backend_literal_svg:e}
% Unlike the other backends, the requirements for making SVG files mean
% that we can't conveniently transform all operations to the current point.
% That makes life a bit more tricky later as that needs to be accounted for.
@@ -413,7 +421,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \__kernel_backend_literal_svg:n #1
{ \__kernel_backend_literal:n { dvisvgm:raw~ #1 { ?nl } } }
-\cs_generate_variant:Nn \__kernel_backend_literal_svg:n { x }
+\cs_generate_variant:Nn \__kernel_backend_literal_svg:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -427,8 +435,8 @@
% \end{variable}
%
% \begin{macro}{\__kernel_backend_scope_begin:, \__kernel_backend_scope_end:}
-% \begin{macro}{\__kernel_backend_scope_begin:n, \__kernel_backend_scope_begin:x}
-% \begin{macro}{\__kernel_backend_scope:n, \__kernel_backend_scope:x}
+% \begin{macro}{\__kernel_backend_scope_begin:n, \__kernel_backend_scope_begin:e}
+% \begin{macro}{\__kernel_backend_scope:n, \__kernel_backend_scope:e}
% In SVG, the need to attach concepts to a scope means we need to be sure we
% will close all of the open scopes. That is easiest done if we only need
% an outer \enquote{wrapper} \texttt{begin}/\texttt{end} pair, and within
@@ -464,13 +472,13 @@
\group_begin:
\int_gset:Nn \g__kernel_backend_scope_int { 1 }
}
-\cs_generate_variant:Nn \__kernel_backend_scope_begin:n { x }
+\cs_generate_variant:Nn \__kernel_backend_scope_begin:n { e }
\cs_new_protected:Npn \__kernel_backend_scope:n #1
{
\__kernel_backend_literal_svg:n { <g ~ #1 > }
\int_gincr:N \g__kernel_backend_scope_int
}
-\cs_generate_variant:Nn \__kernel_backend_scope:n { x }
+\cs_generate_variant:Nn \__kernel_backend_scope:n { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
diff --git a/macros/latex/contrib/l3backend/l3backend-box.dtx b/macros/latex/contrib/l3backend/l3backend-box.dtx
index 6d8d4ede02..9bc74a1611 100644
--- a/macros/latex/contrib/l3backend/l3backend-box.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-box.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -82,7 +82,7 @@
\__kernel_backend_literal_postscript:n
{ Resolution~72~div~VResolution~72~div~scale }
\__kernel_backend_literal_postscript:n { DVImag~dup~scale }
- \__kernel_backend_literal_postscript:x
+ \__kernel_backend_literal_postscript:e
{
0 ~
\dim_to_decimal_in_bp:n { \box_dp:N #1 } ~
@@ -111,7 +111,7 @@
{
\__kernel_backend_scope_begin:
\__kernel_backend_align_begin:
- \__kernel_backend_literal_postscript:x
+ \__kernel_backend_literal_postscript:e
{
\fp_compare:nNnTF {#2} = \c_zero_fp
{ 0 }
@@ -134,7 +134,7 @@
{
\__kernel_backend_scope_begin:
\__kernel_backend_align_begin:
- \__kernel_backend_literal_postscript:x
+ \__kernel_backend_literal_postscript:e
{
\fp_eval:n { round ( #2 , 5 ) } ~
\fp_eval:n { round ( #3 , 5 ) } ~
@@ -169,7 +169,7 @@
\cs_new_protected:Npn \@@_backend_clip:N #1
{
\__kernel_backend_scope_begin:
- \__kernel_backend_literal_pdf:x
+ \__kernel_backend_literal_pdf:e
{
0~
\dim_to_decimal_in_bp:n { -\box_dp:N #1 } ~
@@ -204,7 +204,7 @@
\fp_compare:nNnT \l_@@_backend_cos_fp = \c_zero_fp
{ \fp_zero:N \l_@@_backend_cos_fp }
\fp_set:Nn \l_@@_backend_sin_fp { round ( sind ( #2 ) , 5 ) }
- \__kernel_backend_matrix:x
+ \__kernel_backend_matrix:e
{
\fp_use:N \l_@@_backend_cos_fp \c_space_tl
\fp_compare:nNnTF \l_@@_backend_sin_fp = \c_zero_fp
@@ -234,7 +234,7 @@
\cs_new_protected:Npn \@@_backend_scale:Nnn #1#2#3
{
\__kernel_backend_scope_begin:
- \__kernel_backend_matrix:x
+ \__kernel_backend_matrix:e
{
\fp_eval:n { round ( #2 , 5 ) } ~
0~0~
@@ -263,7 +263,7 @@
\cs_new_protected:Npn \@@_backend_clip:N #1
{
\__kernel_backend_scope_begin:
- \__kernel_backend_literal_pdf:x
+ \__kernel_backend_literal_pdf:e
{
0~
\dim_to_decimal_in_bp:n { -\box_dp:N #1 } ~
@@ -293,7 +293,7 @@
\cs_new_protected:Npn \@@_backend_rotate_aux:Nn #1#2
{
\__kernel_backend_scope_begin:
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
x:rotate~
\fp_compare:nNnTF {#2} = \c_zero_fp
@@ -314,7 +314,7 @@
\cs_new_protected:Npn \@@_backend_scale:Nnn #1#2#3
{
\__kernel_backend_scope_begin:
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
x:scale~
\fp_eval:n { round ( #2 , 5 ) } ~
@@ -350,9 +350,9 @@
\cs_new_protected:Npn \@@_backend_clip:N #1
{
\int_gincr:N \g__kernel_clip_path_int
- \__kernel_backend_literal_svg:x
+ \__kernel_backend_literal_svg:e
{ < clipPath~id = " l3cp \int_use:N \g__kernel_clip_path_int " > }
- \__kernel_backend_literal_svg:x
+ \__kernel_backend_literal_svg:e
{
<
path ~ d =
@@ -387,7 +387,7 @@
scale ( 1 , -1 )
"
}
- \__kernel_backend_scope:x
+ \__kernel_backend_scope:e
{
clip-path =
"url ( \c_hash_str l3cp \int_use:N \g__kernel_clip_path_int ) "
@@ -416,7 +416,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_rotate:Nn #1#2
{
- \__kernel_backend_scope_begin:x
+ \__kernel_backend_scope_begin:e
{
transform =
"
@@ -437,7 +437,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_scale:Nnn #1#2#3
{
- \__kernel_backend_scope_begin:x
+ \__kernel_backend_scope_begin:e
{
transform =
"
diff --git a/macros/latex/contrib/l3backend/l3backend-code.pdf b/macros/latex/contrib/l3backend/l3backend-code.pdf
index 6f9ea9a52e..0131abee16 100644
--- a/macros/latex/contrib/l3backend/l3backend-code.pdf
+++ b/macros/latex/contrib/l3backend/l3backend-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3backend/l3backend-color.dtx b/macros/latex/contrib/l3backend/l3backend-color.dtx
index 5049aae5f9..73eee0ca2c 100644
--- a/macros/latex/contrib/l3backend/l3backend-color.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-color.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -322,7 +322,7 @@
% \begin{macro}[EXP]{\@@_backend_devicen_colorants:n}
% \begin{macro}[EXP]{\@@_backend_devicen_colorants:w}
% \begin{macrocode}
-\cs_new:Npx \@@_backend_devicen_colorants:n #1
+\cs_new:Npe \@@_backend_devicen_colorants:n #1
{
\exp_not:N \tl_if_blank:nF {#1}
{
@@ -377,7 +377,7 @@
% \begin{macro}
% {
% \@@_backend_separation_init:nnnnn,
-% \@@_backend_separation_init:nxxnn
+% \@@_backend_separation_init:neenn
% }
% \begin{macro}
% {\@@_backend_separation_init_aux:nnnnnn}
@@ -402,17 +402,17 @@
% ideas from \url{https://tex.stackexchange.com/q/560093} plus using
% the PostScript manual for other aspects.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_backend_separation_init:nnnnn #1#2#3#4#5
+\cs_new_protected:Npe \@@_backend_separation_init:nnnnn #1#2#3#4#5
{
\bool_if:NT \g__kernel_backend_header_bool
{
- \exp_args:Nx \__kernel_backend_first_shipout:n
+ \exp_not:N \exp_args:Ne \__kernel_backend_first_shipout:n
{
\exp_not:N \@@_backend_separation_init_aux:nnnnnn
{ \exp_not:N \int_use:N \g_@@_model_int }
{#1} {#2} {#3} {#4} {#5}
}
- \prop_gput:Nxx \exp_not:N \g_@@_backend_colorant_prop
+ \prop_gput:Nee \exp_not:N \g_@@_backend_colorant_prop
{ / \exp_not:N \str_convert_pdfname:n {#1} }
{
<< ~
@@ -423,7 +423,7 @@
}
}
}
-\cs_generate_variant:Nn \@@_backend_separation_init:nnnnn { nxx }
+\cs_generate_variant:Nn \@@_backend_separation_init:nnnnn { nee }
\cs_new_protected:Npn \@@_backend_separation_init_aux:nnnnnn #1#2#3#4#5#6
{
\__kernel_backend_literal:e
@@ -552,7 +552,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_separation_init_CIELAB:nnn #1#2#3
{
- \@@_backend_separation_init:nxxnn
+ \@@_backend_separation_init:neenn
{#2}
{
/CIEBasedABC ~
@@ -678,7 +678,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_select_iccbased:nn #1#2
{
- \__kernel_backend_literal_svg:x
+ \__kernel_backend_literal_svg:e
{
<style>
@color-profile ~
@@ -712,7 +712,7 @@
% \begin{macrocode}
%<*dvipdfmx|xetex>
\cs_new_protected:Npn \@@_backend_select_separation:nn #1#2
- { \__kernel_backend_literal:x { pdf : bc ~ \pdf_object_ref:n {#1} ~ [ #2 ] } }
+ { \__kernel_backend_literal:e { pdf : bc ~ \pdf_object_ref:n {#1} ~ [ #2 ] } }
%</dvipdfmx|xetex>
%<*luatex|pdftex>
\cs_new_protected:Npn \@@_backend_select_separation:nn #1#2
@@ -734,7 +734,7 @@
{ \cs_if_exist_p:N \pdfmanagement_if_active_p: }
{ \pdfmanagement_if_active_p: }
{
- \use:x
+ \use:e
{
\pdfmanagement_add:nnn
{ Page / Resources / ColorSpace }
@@ -759,7 +759,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_separation_init:nnnnn #1#2#3#4#5
{
- \pdf_object_unnamed_write:nx { dict }
+ \pdf_object_unnamed_write:ne { dict }
{
/FunctionType ~ 2
/Domain ~ [0 ~ 1]
@@ -767,19 +767,19 @@
/C0 ~ [#4] ~
/C1 ~ [#5] /N ~ 1
}
- \exp_args:Nx \@@_backend_separation_init:nn
+ \exp_args:Ne \@@_backend_separation_init:nn
{ \str_convert_pdfname:n {#1} } {#2}
\@@_backend_init_resource:n { color \int_use:N \g_@@_model_int }
}
\cs_new_protected:Npn \@@_backend_separation_init:nn #1#2
{
- \use:x
+ \use:e
{
\pdf_object_new:n { color \int_use:N \g_@@_model_int }
\pdf_object_write:nnn { color \int_use:N \g_@@_model_int } { array }
{ /Separation /#1 ~ #2 ~ \pdf_object_ref_last: }
}
- \prop_gput:Nnx \g_@@_backend_colorant_prop { /#1 }
+ \prop_gput:Nne \g_@@_backend_colorant_prop { /#1 }
{ \pdf_object_ref_last: }
}
% \end{macrocode}
@@ -791,7 +791,7 @@
\pdf_object_if_exist:nF { @@_illuminant_CIELAB_ #1 }
{
\pdf_object_new:n { @@_illuminant_CIELAB_ #1 }
- \pdf_object_write:nnx { @@_illuminant_CIELAB_ #1 } { array }
+ \pdf_object_write:nne { @@_illuminant_CIELAB_ #1 } { array }
{
/Lab ~
<<
@@ -820,7 +820,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_devicen_init:nnn #1#2#3
{
- \pdf_object_unnamed_write:nx { stream }
+ \pdf_object_unnamed_write:ne { stream }
{
{
/FunctionType ~ 4 ~
@@ -842,7 +842,7 @@
}
{ {#3} }
}
- \use:x
+ \use:e
{
\pdf_object_new:n { color \int_use:N \g_@@_model_int }
\pdf_object_write:nnn { color \int_use:N \g_@@_model_int } { array }
@@ -875,7 +875,7 @@
\pdf_object_if_exist:nF { @@_icc_ #1 }
{
\pdf_object_new:n { @@_icc_ #1 }
- \pdf_object_write:nnx { @@_icc_ #1 } { fstream }
+ \pdf_object_write:nne { @@_icc_ #1 } { fstream }
{
{
/N ~ \exp_not:n { #2 } ~
@@ -884,7 +884,7 @@
{#1}
}
}
- \pdf_object_unnamed_write:nx { array }
+ \pdf_object_unnamed_write:ne { array }
{ /ICCBased ~ \pdf_object_ref:n { @@_icc_ #1 } }
\@@_backend_init_resource:n { color \int_use:N \g_@@_model_int }
}
@@ -906,7 +906,7 @@
{#1}
}
}
- \pdf_object_unnamed_write:nx { array }
+ \pdf_object_unnamed_write:ne { array }
{ /ICCBased ~ \pdf_object_ref:n { @@_icc_ #1 } }
\@@_backend_init_resource:n { Default #2 }
}
@@ -965,12 +965,12 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_fill_separation:nn #1#2
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{ pdf : bc ~ fill ~ \pdf_object_ref:n {#1} ~ [ #2 ] }
}
\cs_new_protected:Npn \@@_backend_stroke_separation:nn #1#2
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{ pdf : bc ~ stroke ~ \pdf_object_ref:n {#1} ~ [ #2 ] }
}
\cs_new_eq:NN \@@_backend_fill_devicen:nn \@@_backend_fill_separation:nn
@@ -1171,7 +1171,7 @@
\cs_new_protected:Npn \@@_backend_stroke_cmyk:w
#1 ~ #2 ~ #3 ~ #4 \s_@@_stop
{
- \use:x
+ \use:e
{
\@@_backend:nnn
{ \fp_eval:n { -100 * ( 1 - min ( 1 , #1 + #4 ) ) } }
@@ -1181,7 +1181,7 @@
}
\cs_new_protected:Npn \@@_backend_stroke_gray:n #1
{
- \use:x
+ \use:e
{
\@@_backend_stroke_gray_aux:n
{ \fp_eval:n { 100 * (#1) } }
@@ -1194,7 +1194,7 @@
\cs_new_protected:Npn \@@_backend_stroke_rgb:w
#1 ~ #2 ~ #3 \s_@@_stop
{
- \use:x
+ \use:e
{
\@@_backend:nnn
{ \fp_eval:n { 100 * (#1) } }
@@ -1202,7 +1202,7 @@
{ \fp_eval:n { 100 * (#3) } }
}
}
-\cs_new_protected:Npx \@@_backend:nnn #1#2#3
+\cs_new_protected:Npe \@@_backend:nnn #1#2#3
{
\__kernel_backend_scope:n
{
diff --git a/macros/latex/contrib/l3backend/l3backend-draw.dtx b/macros/latex/contrib/l3backend/l3backend-draw.dtx
index 170f4090cd..8fa2fda940 100644
--- a/macros/latex/contrib/l3backend/l3backend-draw.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-draw.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -66,12 +66,12 @@
%<*dvips>
% \end{macrocode}
%
-% \begin{macro}{\@@_backend_literal:n, \@@_backend_literal:x}
+% \begin{macro}{\@@_backend_literal:n, \@@_backend_literal:e}
% The same as literal PostScript: same arguments about positioning apply
% her.
% \begin{macrocode}
\cs_new_eq:NN \@@_backend_literal:n \__kernel_backend_literal_postscript:n
-\cs_generate_variant:Nn \@@_backend_literal:n { x }
+\cs_generate_variant:Nn \@@_backend_literal:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -125,7 +125,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_moveto:nn #1#2
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\dim_to_decimal_in_bp:n {#1} ~
\dim_to_decimal_in_bp:n {#2} ~ moveto
@@ -133,7 +133,7 @@
}
\cs_new_protected:Npn \@@_backend_lineto:nn #1#2
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\dim_to_decimal_in_bp:n {#1} ~
\dim_to_decimal_in_bp:n {#2} ~ lineto
@@ -141,7 +141,7 @@
}
\cs_new_protected:Npn \@@_backend_rectangle:nnnn #1#2#3#4
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\dim_to_decimal_in_bp:n {#4} ~ \dim_to_decimal_in_bp:n {#3} ~
\dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~
@@ -150,7 +150,7 @@
}
\cs_new_protected:Npn \@@_backend_curveto:nnnnnn #1#2#3#4#5#6
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~
\dim_to_decimal_in_bp:n {#3} ~ \dim_to_decimal_in_bp:n {#4} ~
@@ -205,7 +205,7 @@
\@@_backend_literal:n { grestore }
\bool_if:NT \g_@@_draw_clip_bool
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\bool_if:NT \g_@@_draw_eor_bool { eo }
clip
@@ -221,14 +221,14 @@
}
\cs_new_protected:Npn \@@_backend_fill:
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\bool_if:NT \g_@@_draw_eor_bool { eo }
fill
}
\bool_if:NT \g_@@_draw_clip_bool
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\bool_if:NT \g_@@_draw_eor_bool { eo }
clip
@@ -239,7 +239,7 @@
}
\cs_new_protected:Npn \@@_backend_fillstroke:
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\bool_if:NT \g_@@_draw_eor_bool { eo }
fill
@@ -250,7 +250,7 @@
\@@_backend_literal:n { grestore }
\bool_if:NT \g_@@_draw_clip_bool
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\bool_if:NT \g_@@_draw_eor_bool { eo }
clip
@@ -266,7 +266,7 @@
{
\bool_if:NT \g_@@_draw_clip_bool
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\bool_if:NT \g_@@_draw_eor_bool { eo }
clip
@@ -293,7 +293,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_dash_pattern:nn #1#2
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
[
\exp_args:Nf \use:n
@@ -306,7 +306,7 @@
{ ~ \dim_to_decimal_in_bp:n {#1} }
\cs_new_protected:Npn \@@_backend_linewidth:n #1
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ \dim_to_decimal_in_bp:n {#1} ~ setlinewidth }
}
\cs_new_protected:Npn \@@_backend_miterlimit:n #1
@@ -400,11 +400,11 @@
%
% \subsubsection{Drawing}
%
-% \begin{macro}{\@@_backend_literal:n, \@@_backend_literal:x}
+% \begin{macro}{\@@_backend_literal:n, \@@_backend_literal:e}
% Pass data through using a dedicated interface.
% \begin{macrocode}
\cs_new_eq:NN \@@_backend_literal:n \__kernel_backend_literal_pdf:n
-\cs_generate_variant:Nn \@@_backend_literal:n { x }
+\cs_generate_variant:Nn \@@_backend_literal:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -434,17 +434,17 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_moveto:nn #1#2
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ m }
}
\cs_new_protected:Npn \@@_backend_lineto:nn #1#2
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ l }
}
\cs_new_protected:Npn \@@_backend_curveto:nnnnnn #1#2#3#4#5#6
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~
\dim_to_decimal_in_bp:n {#3} ~ \dim_to_decimal_in_bp:n {#4} ~
@@ -454,7 +454,7 @@
}
\cs_new_protected:Npn \@@_backend_rectangle:nnnn #1#2#3#4
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
\dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~
\dim_to_decimal_in_bp:n {#3} ~ \dim_to_decimal_in_bp:n {#4} ~
@@ -500,17 +500,17 @@
{ \@@_backend_literal:n { s } }
\cs_new_protected:Npn \@@_backend_fill:
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ f \bool_if:NT \g_@@_draw_eor_bool * }
}
\cs_new_protected:Npn \@@_backend_fillstroke:
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ B \bool_if:NT \g_@@_draw_eor_bool * }
}
\cs_new_protected:Npn \@@_backend_clip:
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ W \bool_if:NT \g_@@_draw_eor_bool * }
}
\cs_new_protected:Npn \@@_backend_discardpath:
@@ -532,7 +532,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_dash_pattern:nn #1#2
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
[
\exp_args:Nf \use:n
@@ -545,11 +545,11 @@
{ ~ \dim_to_decimal_in_bp:n {#1} }
\cs_new_protected:Npn \@@_backend_linewidth:n #1
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ \dim_to_decimal_in_bp:n {#1} ~ w }
}
\cs_new_protected:Npn \@@_backend_miterlimit:n #1
- { \@@_backend_literal:x { #1 ~ M } }
+ { \@@_backend_literal:e { #1 ~ M } }
\cs_new_protected:Npn \@@_backend_cap_butt:
{ \@@_backend_literal:n { 0 ~ J } }
\cs_new_protected:Npn \@@_backend_cap_round:
@@ -594,20 +594,20 @@
%<*dvipdfmx|xetex>
\cs_new_protected:Npn \@@_backend_cm_aux:nnnn #1#2#3#4
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
x:rotate~
\fp_compare:nNnTF {#1} = \c_zero_fp
{ 0 }
{ \fp_eval:n { round ( -#1 , 5 ) } }
}
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
x:scale~
\fp_eval:n { round ( #2 , 5 ) } ~
\fp_eval:n { round ( #3 , 5 ) }
}
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
x:rotate~
\fp_compare:nNnTF {#4} = \c_zero_fp
@@ -678,7 +678,7 @@
%<*dvipdfmx|xetex>
\cs_new_protected:Npn \@@_backend_cm_decompose:nnnnN #1#2#3#4#5
{
- \use:x
+ \use:e
{
\@@_backend_cm_decompose_auxi:nnnnN
{ \fp_eval:n { (#1 + #4) / 2 } }
@@ -690,7 +690,7 @@
}
\cs_new_protected:Npn \@@_backend_cm_decompose_auxi:nnnnN #1#2#3#4#5
{
- \use:x
+ \use:e
{
\@@_backend_cm_decompose_auxii:nnnnN
{ \fp_eval:n { 2 * sqrt ( #1 * #1 + #4 * #4 ) } }
@@ -702,7 +702,7 @@
}
\cs_new_protected:Npn \@@_backend_cm_decompose_auxii:nnnnN #1#2#3#4#5
{
- \use:x
+ \use:e
{
\@@_backend_cm_decompose_auxiii:nnnnN
{ \fp_eval:n { ( #4 - #3 ) / 2 } }
@@ -760,11 +760,11 @@
%<*dvisvgm>
% \end{macrocode}
%
-% \begin{macro}{\@@_backend_literal:n, \@@_backend_literal:x}
+% \begin{macro}{\@@_backend_literal:n, \@@_backend_literal:e}
% The same as the more general literal call.
% \begin{macrocode}
\cs_new_eq:NN \@@_backend_literal:n \__kernel_backend_literal_svg:n
-\cs_generate_variant:Nn \@@_backend_literal:n { x }
+\cs_generate_variant:Nn \@@_backend_literal:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -834,7 +834,7 @@
}
\cs_new_protected:Npn \@@_backend_add_to_path:n #1
{
- \tl_gset:Nx \g_@@_backend_path_tl
+ \tl_gset:Ne \g_@@_backend_path_tl
{
\g_@@_backend_path_tl
\tl_if_empty:NF \g_@@_backend_path_tl { \c_space_tl }
@@ -885,7 +885,7 @@
\bool_if:NTF \g_@@_draw_clip_bool
{
\int_gincr:N \g__kernel_clip_path_int
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
< clipPath~id = " l3cp \int_use:N \g__kernel_clip_path_int " >
{ ?nl }
@@ -897,14 +897,14 @@
#1
/>
}
- \__kernel_backend_scope:x
+ \__kernel_backend_scope:e
{
clip-path =
"url( \c_hash_str l3cp \int_use:N \g__kernel_clip_path_int)"
}
}
{
- \@@_backend_literal:x
+ \@@_backend_literal:e
{ <path ~ d=" \g_@@_backend_path_tl " ~ #1 /> }
}
\tl_gclear:N \g_@@_backend_path_tl
@@ -930,14 +930,14 @@
\bool_if:NT \g_@@_draw_clip_bool
{
\int_gincr:N \g__kernel_clip_path_int
- \@@_backend_literal:x
+ \@@_backend_literal:e
{
< clipPath~id = " l3cp \int_use:N \g__kernel_clip_path_int " >
{ ?nl }
<path~d=" \g_@@_backend_path_tl "/> { ?nl }
< /clipPath >
}
- \__kernel_backend_scope:x
+ \__kernel_backend_scope:e
{
clip-path =
"url( \c_hash_str l3cp \int_use:N \g__kernel_clip_path_int)"
@@ -968,7 +968,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_dash_pattern:nn #1#2
{
- \use:x
+ \use:e
{
\@@_backend_dash_aux:nn
{ \clist_map_function:nN {#1} \@@_backend_dash:n }
@@ -979,7 +979,7 @@
{ , \dim_to_decimal_in_bp:n {#1} }
\cs_new_protected:Npn \@@_backend_dash_aux:nn #1#2
{
- \__kernel_backend_scope:x
+ \__kernel_backend_scope:e
{
stroke-dasharray =
"
@@ -991,9 +991,9 @@
}
}
\cs_new_protected:Npn \@@_backend_linewidth:n #1
- { \__kernel_backend_scope:x { stroke-width=" \dim_to_decimal:n {#1} " } }
+ { \__kernel_backend_scope:e { stroke-width=" \dim_to_decimal:n {#1} " } }
\cs_new_protected:Npn \@@_backend_miterlimit:n #1
- { \__kernel_backend_scope:x { stroke-miterlimit=" #1 " } }
+ { \__kernel_backend_scope:e { stroke-miterlimit=" #1 " } }
\cs_new_protected:Npn \@@_backend_cap_butt:
{ \__kernel_backend_scope:n { stroke-linecap="butt" } }
\cs_new_protected:Npn \@@_backend_cap_round:
diff --git a/macros/latex/contrib/l3backend/l3backend-graphics.dtx b/macros/latex/contrib/l3backend/l3backend-graphics.dtx
index da7dc7516e..610785e348 100644
--- a/macros/latex/contrib/l3backend/l3backend-graphics.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-graphics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -107,7 +107,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_include_eps:n #1
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
PSfile = #1 \c_space_tl
llx = \dim_to_decimal_in_bp:n \l_@@_llx_dim \c_space_tl
@@ -185,7 +185,7 @@
{
\int_zero:N \l_@@_page_int
\tl_clear:N \l_@@_pagebox_tl
- \tl_set:Nx \l_@@_attr_tl
+ \tl_set:Ne \l_@@_attr_tl
{
\tl_if_empty:NF \l_@@_decodearray_str
{ :D \l_@@_decodearray_str }
@@ -202,7 +202,7 @@
{
\tl_clear:N \l_@@_decodearray_str
\bool_set_false:N \l_@@_interpolate_bool
- \tl_set:Nx \l_@@_attr_tl
+ \tl_set:Ne \l_@@_attr_tl
{
: \l_@@_pagebox_tl
\int_compare:nNnT \l_@@_page_int > 1
@@ -214,7 +214,7 @@
}
\cs_new_protected:Npn \@@_backend_getbb_auxi:n #1
{
- \@@_bb_restore:xF { #1 \l_@@_attr_tl }
+ \@@_bb_restore:eF { #1 \l_@@_attr_tl }
{ \@@_backend_getbb_auxii:n {#1} }
}
% \end{macrocode}
@@ -230,7 +230,7 @@
{ \@@_backend_dequote:w #1 " #1 " \s_@@_stop }
\int_const:cn { c_@@_ #1 \l_@@_attr_tl _int }
{ \tex_the:D \tex_pdflastximage:D }
- \@@_bb_save:x { #1 \l_@@_attr_tl }
+ \@@_bb_save:e { #1 \l_@@_attr_tl }
}
\cs_new_protected:Npn \@@_backend_getbb_auxiii:n #1
{
@@ -310,7 +310,7 @@
\l_@@_backend_dir_str
\l_@@_backend_name_str
\l_@@_backend_ext_str
- \exp_args:Nx \@@_backend_getbb_eps:nn
+ \exp_args:Ne \@@_backend_getbb_eps:nn
{
\exp_args:Ne \__kernel_file_name_quote:n
{
@@ -336,7 +336,7 @@
{
\file_parse_full_name:nNNN {#1}
\l_@@_backend_dir_str \l_@@_backend_name_str \l_@@_backend_ext_str
- \exp_args:Nx \@@_backend_include_pdf:n
+ \exp_args:Ne \@@_backend_include_pdf:n
{
\exp_args:Ne \__kernel_file_name_quote:n
{
@@ -436,7 +436,7 @@
% \@@_backend_include_bmp:n ,
% }
% \begin{macro}{\@@_backend_include_auxi:nn}
-% \begin{macro}{\@@_backend_include_auxii:nnn, \@@_backend_include_auxii:xnn}
+% \begin{macro}{\@@_backend_include_auxii:nnn, \@@_backend_include_auxii:enn}
% \begin{macro}{\@@_backend_include_auxiii:nnn}
% The special syntax depends on the file type. There is a difference in
% how PDF graphics are best handled between |dvipdfmx| and \XeTeX{}: for
@@ -445,7 +445,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_include_eps:n #1
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
PSfile = #1 \c_space_tl
llx = \dim_to_decimal_in_bp:n \l_@@_llx_dim \c_space_tl
@@ -472,7 +472,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_include_auxi:nn #1#2
{
- \@@_backend_include_auxii:xnn
+ \@@_backend_include_auxii:enn
{
\tl_if_empty:NF \l_@@_pagebox_tl
{ : \l_@@_pagebox_tl }
@@ -489,12 +489,12 @@
{
\int_if_exist:cTF { c_@@_ #2#1 _int }
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{ pdf:usexobj~@graphic \int_use:c { c_@@_ #2#1 _int } }
}
{ \@@_backend_include_auxiii:nnn {#2} {#1} {#3} }
}
-\cs_generate_variant:Nn \@@_backend_include_auxii:nnn { x }
+\cs_generate_variant:Nn \@@_backend_include_auxii:nnn { e }
% \end{macrocode}
% Inclusion using the specials is relatively straight-forward, but there
% is one wrinkle. To get the |pagebox| correct for PDF graphics in all cases,
@@ -505,7 +505,7 @@
{
\int_gincr:N \g_@@_track_int
\int_const:cn { c_@@_ #1#2 _int } { \g_@@_track_int }
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
pdf:#3~
@graphic \int_use:c { c_@@_ #1#2 _int } ~
@@ -612,7 +612,7 @@
}
\cs_new_protected:Npn \@@_backend_getbb_auxiv:nnNnn #1#2#3#4#5
{
- \use:x
+ \use:e
{
\@@_backend_getbb_auxv:nNnn {#2} #3 { : #1 #4 }
{
@@ -750,10 +750,10 @@
}
\cs_new_protected:Npn \@@_backend_getbb_svg_auxi:nNn #1#2#3
{
- \use:x
+ \use:e
{
\cs_set_protected:Npn \@@_backend_getbb_svg_auxii:w
- ####1 \tl_to_str:n {#1} = ####2 \tl_to_str:n {#1} = ####3
+ ##1 \tl_to_str:n {#1} = ##2 \tl_to_str:n {#1} = ##3
\s_@@_stop
}
{
@@ -772,7 +772,7 @@
##2 \s_@@_stop
}
}
- \use:x
+ \use:e
{
\@@_backend_getbb_svg_auxii:w #3
\tl_to_str:n {#1} = \tl_to_str:n {#1} =
@@ -855,7 +855,7 @@
{ \@@_backend_include:nn { pdffile } {#1} }
\cs_new_protected:Npn \@@_backend_include:nn #1#2
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
#1 = #2 \c_space_tl
llx = \dim_to_decimal_in_bp:n \l_@@_llx_dim \c_space_tl
@@ -892,7 +892,7 @@
{
\hbox:n
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
dvisvgm:img~
\dim_to_decimal:n { \l_@@_urx_dim } ~
diff --git a/macros/latex/contrib/l3backend/l3backend-header.dtx b/macros/latex/contrib/l3backend/l3backend-header.dtx
index 0cb6767908..5bd4bb4808 100644
--- a/macros/latex/contrib/l3backend/l3backend-header.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-header.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-opacity.dtx b/macros/latex/contrib/l3backend/l3backend-opacity.dtx
index 033ab150f0..9b994ac16e 100644
--- a/macros/latex/contrib/l3backend/l3backend-opacity.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-opacity.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -73,7 +73,7 @@
%
% \begin{macro}{\@@_backend_select:n,\@@_backend_select_aux:n}
% \begin{macro}{\@@_backend_fill:n, \@@_backend_stroke:n}
-% \begin{macro}{\@@_backend:nnn, \@@_backend:xnn}
+% \begin{macro}{\@@_backend:nnn, \@@_backend:enn}
% No stack so set values directly. The need to deal with Distiller and
% Ghostscript separately means we use a common auxiliary: the two
% systems require different PostScript for transparency. This is
@@ -83,7 +83,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_select:n #1
{
- \exp_args:Nx \@@_backend_select_aux:n
+ \exp_args:Ne \@@_backend_select_aux:n
{ \fp_eval:n { min(max(0,#1),1) } }
}
\cs_new_protected:Npn \@@_backend_select_aux:n #1
@@ -93,14 +93,14 @@
}
\cs_new_protected:Npn \@@_backend_fill:n #1
{
- \@@_backend:xnn
+ \@@_backend:enn
{ \fp_eval:n { min(max(0,#1),1) } }
{ fill }
{ ca }
}
\cs_new_protected:Npn \@@_backend_stroke:n #1
{
- \@@_backend:xnn
+ \@@_backend:enn
{ \fp_eval:n { min(max(0,#1),1) } }
{ stroke }
{ CA }
@@ -124,7 +124,7 @@
ifelse
}
}
-\cs_generate_variant:Nn \@@_backend:nnn { x }
+\cs_generate_variant:Nn \@@_backend:nnn { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -170,7 +170,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_select:n #1
{
- \exp_args:Nx \@@_backend_select_aux:n
+ \exp_args:Ne \@@_backend_select_aux:n
{ \fp_eval:n { min(max(0,#1),1) } }
}
\cs_new_protected:Npn \@@_backend_select_aux:n #1
@@ -210,19 +210,19 @@
% \end{macro}
%
% \begin{macro}{\@@_backend_fill:n, \@@_backend_stroke:n}
-% \begin{macro}{\@@_backend_fillstroke:nn, \@@_backend_fillstroke:xx}
+% \begin{macro}{\@@_backend_fillstroke:nn, \@@_backend_fillstroke:ee}
% For separate fill and stroke, we need to work out if we need to do
% more work or if we can stick to a single setting.
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_fill:n #1
{
- \@@_backend_fill_stroke:xx
+ \@@_backend_fill_stroke:ee
{ \fp_eval:n { min(max(0,#1),1) } }
\l_@@_backend_stroke_tl
}
\cs_new_protected:Npn \@@_backend_stroke:n #1
{
- \@@_backend_fill_stroke:xx
+ \@@_backend_fill_stroke:ee
\l_@@_backend_fill_tl
{ \fp_eval:n { min(max(0,#1),1) } }
}
@@ -249,7 +249,7 @@
\group_insert_after:N \@@_backend_reset:
}
}
-\cs_generate_variant:Nn \@@_backend_fill_stroke:nn { xx }
+\cs_generate_variant:Nn \@@_backend_fill_stroke:nn { ee }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -274,7 +274,7 @@
\cs_new_protected:Npn \@@_backend_stroke:n #1
{ \@@_backend:nn { {#1} } { stroke- } }
\cs_new_protected:Npn \@@_backend:nn #1#2
- { \__kernel_backend_scope:x { #2 opacity = " \fp_eval:n { min(max(0,#1),1) } " } }
+ { \__kernel_backend_scope:e { #2 opacity = " \fp_eval:n { min(max(0,#1),1) } " } }
% \end{macrocode}
% \end{macro}
% \end{macro}
diff --git a/macros/latex/contrib/l3backend/l3backend-pdf.dtx b/macros/latex/contrib/l3backend/l3backend-pdf.dtx
index a95aff4070..8d942551bb 100644
--- a/macros/latex/contrib/l3backend/l3backend-pdf.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-pdf.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-04-19}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -91,12 +91,12 @@
%<*dvips>
% \end{macrocode}
%
-% \begin{macro}{\@@_backend_pdfmark:n, \@@_backend_pdfmark:x}
+% \begin{macro}{\@@_backend_pdfmark:n, \@@_backend_pdfmark:e}
% Used often enough it should be a separate function.
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_pdfmark:n #1
{ \__kernel_backend_postscript:n { mark #1 ~ pdfmark } }
-\cs_generate_variant:Nn \@@_backend_pdfmark:n { x }
+\cs_generate_variant:Nn \@@_backend_pdfmark:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -138,7 +138,7 @@
%
% \begin{macro}
% {
-% \@@_backend_object_write:nnn, \@@_backend_object_write:nnx,
+% \@@_backend_object_write:nnn, \@@_backend_object_write:nne,
% \@@_backend_object_write_aux:nnn
% }
% \begin{macro}
@@ -159,10 +159,10 @@
{ \@@_backend_object_ref:n {#1} }
{#2} {#3}
}
-\cs_generate_variant:Nn \@@_backend_object_write:nnn { nnx }
+\cs_generate_variant:Nn \@@_backend_object_write:nnn { nne }
\cs_new_protected:Npn \@@_backend_object_write_aux:nnn #1#2#3
{
- \@@_backend_pdfmark:x
+ \@@_backend_pdfmark:e
{
/_objdef ~ #1
/type
@@ -179,17 +179,17 @@
}
\cs_new_protected:Npn \@@_backend_object_write_array:nn #1#2
{
- \@@_backend_pdfmark:x
+ \@@_backend_pdfmark:e
{ #1 ~0~ [ ~ \exp_not:n {#2} ~ ] ~ /PUTINTERVAL }
}
\cs_new_protected:Npn \@@_backend_object_write_dict:nn #1#2
{
- \@@_backend_pdfmark:x
+ \@@_backend_pdfmark:e
{ #1 << \exp_not:n {#2} >> /PUT }
}
\cs_new_protected:Npn \@@_backend_object_write_fstream:nn #1#2
{
- \exp_args:Nx
+ \exp_args:Ne
\@@_backend_object_write_fstream:nnn {#1} #2
}
\cs_new_protected:Npn \@@_backend_object_write_fstream:nnn #1#2#3
@@ -204,7 +204,7 @@
}
\cs_new_protected:Npn \@@_backend_object_write_stream:nn #1#2
{
- \exp_args:Nx
+ \exp_args:Ne
\@@_backend_object_write_stream:nnn {#1} #2
}
\cs_new_protected:Npn \@@_backend_object_write_stream:nnn #1#2#3
@@ -220,7 +220,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_backend_object_now:nn, \@@_backend_object_now:nx}
+% \begin{macro}{\@@_backend_object_now:nn, \@@_backend_object_now:ne}
% No anonymous objects, so things are done manually.
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_object_now:nn #1#2
@@ -230,7 +230,7 @@
{ { pdf.obj \int_use:N \g_@@_backend_object_int } }
{#1} {#2}
}
-\cs_generate_variant:Nn \@@_backend_object_now:nn { nx }
+\cs_generate_variant:Nn \@@_backend_object_now:nn { ne }
% \end{macrocode}
% \end{macro}
%
@@ -304,7 +304,7 @@
}
\int_gincr:N \g_@@_backend_object_int
\int_gset_eq:NN \g_@@_backend_annotation_int \g_@@_backend_object_int
- \@@_backend_pdfmark:x
+ \@@_backend_pdfmark:e
{
/_objdef { pdf.obj \int_use:N \g_@@_backend_object_int }
pdf.rect
@@ -468,7 +468,7 @@
\hbox_set_end:
\@@_backend_link_minima:
\hbox_set:Nn \l_@@_backend_model_box { Gg }
- \exp_args:Nx \@@_backend_link_outerbox:n
+ \exp_args:Ne \@@_backend_link_outerbox:n
{
\int_if_odd:nTF { \value { page } }
{ \oddsidemargin }
@@ -486,7 +486,7 @@
}
\int_gincr:N \g_@@_backend_object_int
\int_gset_eq:NN \g_@@_backend_link_int \g_@@_backend_object_int
- \__kernel_backend_postscript:x
+ \__kernel_backend_postscript:e
{
mark
/_objdef { pdf.obj \int_use:N \g_@@_backend_link_int }
@@ -500,7 +500,7 @@
\cs_new_protected:Npn \@@_backend_link_minima:
{
\hbox_set:Nn \l_@@_backend_model_box { Gg }
- \__kernel_backend_postscript:x
+ \__kernel_backend_postscript:e
{
/pdf.linkdp.pad ~
\dim_to_decimal:n
@@ -528,7 +528,7 @@
}
\cs_new_protected:Npn \@@_backend_link_outerbox:n #1
{
- \__kernel_backend_postscript:x
+ \__kernel_backend_postscript:e
{
/pdf.outerbox
[
@@ -583,9 +583,9 @@
{
\tl_put_right:Nn \@makecol@hook
{
- \box_if_empty:NF \@cclv
+ \box_if_empty:NF \l_shipout_box
{
- \vbox_set:Nn \@cclv
+ \vbox_set:Nn \l_shipout_box
{
\__kernel_backend_postscript:n
{
@@ -593,7 +593,7 @@
{ pdf.bordertracking.continue }
if
}
- \vbox_unpack_drop:N \@cclv
+ \vbox_unpack_drop:N \l_shipout_box
\__kernel_backend_postscript:n
{ pdf.bordertracking.endpage }
}
@@ -620,7 +620,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_link_margin:n #1
{
- \__kernel_backend_postscript:x
+ \__kernel_backend_postscript:e
{
/pdf.linkmargin { \dim_to_decimal:n {#1} ~ pdf.pt.dvi } def
}
@@ -638,7 +638,7 @@
\cs_new_protected:Npn \@@_backend_destination:nn #1#2
{
\__kernel_backend_postscript:n { pdf.dest.anchor }
- \@@_backend_pdfmark:x
+ \@@_backend_pdfmark:e
{
/View
[
@@ -737,11 +737,11 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_version_major_gset:n #1
{
- \cs_gset:Npx \@@_backend_version_major: { \int_eval:n {#1} }
+ \cs_gset:Npe \@@_backend_version_major: { \int_eval:n {#1} }
}
\cs_new_protected:Npn \@@_backend_version_minor_gset:n #1
{
- \cs_gset:Npx \@@_backend_version_minor: { \int_eval:n {#1} }
+ \cs_gset:Npe \@@_backend_version_minor: { \int_eval:n {#1} }
}
% \end{macrocode}
% \end{macro}
@@ -805,7 +805,7 @@
% space in the \LuaTeX{} version is \emph{required} as it is consumed in
% finding the end of the keyword.
% \begin{macrocode}
-\cs_new:Npx \@@_backend_annotation_last:
+\cs_new:Npe \@@_backend_annotation_last:
{
\exp_not:N \int_value:w
%<*luatex>
@@ -857,7 +857,7 @@
% \begin{macro}{\@@_backend_link_last:}
% Formatted for direct use.
% \begin{macrocode}
-\cs_new:Npx \@@_backend_link_last:
+\cs_new:Npe \@@_backend_link_last:
{
\exp_not:N \int_value:w
%<*luatex>
@@ -1000,7 +1000,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_backend_object_write:nnn, \@@_backend_object_write:nnx}
+% \begin{macro}{\@@_backend_object_write:nnn, \@@_backend_object_write:nne}
% \begin{macro}[EXP]{\@@_backend_object_write:nn}
% \begin{macro}[EXP]{\@@_exp_not_i:nn, \@@_exp_not_ii:nn}
% Writing the data needs a little information about the structure of the
@@ -1037,7 +1037,7 @@
}
}
}
-\cs_generate_variant:Nn \@@_backend_object_write:nnn { nnx }
+\cs_generate_variant:Nn \@@_backend_object_write:nnn { nne }
\cs_new:Npn \@@_exp_not_i:nn #1#2 { \exp_not:n {#1} }
\cs_new:Npn \@@_exp_not_ii:nn #1#2 { \exp_not:n {#2} }
% \end{macrocode}
@@ -1045,7 +1045,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_backend_object_now:nn, \@@_backend_object_now:nx}
+% \begin{macro}{\@@_backend_object_now:nn, \@@_backend_object_now:ne}
% Much like writing, but direct creation.
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_object_now:nn #1#2
@@ -1058,14 +1058,14 @@
%</pdftex>
\@@_backend_object_write:nn {#1} {#2}
}
-\cs_generate_variant:Nn \@@_backend_object_now:nn { nx }
+\cs_generate_variant:Nn \@@_backend_object_now:nn { ne }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[EXP]{\@@_backend_object_last:}
% Much like annotation.
% \begin{macrocode}
-\cs_new:Npx \@@_backend_object_last:
+\cs_new:Npe \@@_backend_object_last:
{
\exp_not:N \int_value:w
%<*luatex>
@@ -1082,7 +1082,7 @@
% \begin{macro}[EXP]{\@@_backend_pageobject_ref:n}
% The usual wrapper situation; the three spaces here are essential.
% \begin{macrocode}
-\cs_new:Npx \@@_backend_pageobject_ref:n #1
+\cs_new:Npe \@@_backend_pageobject_ref:n #1
{
\exp_not:N \int_value:w
%<*luatex>
@@ -1141,7 +1141,7 @@
% The availability of the primitive is not universal, so we have to test
% at load time.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_backend_version_major_gset:n #1
+\cs_new_protected:Npe \@@_backend_version_major_gset:n #1
{
%<*luatex>
\int_compare:nNnT \tex_luatexversion:D > { 106 }
@@ -1175,7 +1175,7 @@
% \begin{macro}[EXP]{\@@_backend_version_major:, \@@_backend_version_minor:}
% As above.
% \begin{macrocode}
-\cs_new:Npx \@@_backend_version_major:
+\cs_new:Npe \@@_backend_version_major:
{
%<*luatex>
\int_compare:nNnTF \tex_luatexversion:D > { 106 }
@@ -1226,12 +1226,12 @@
%<*dvipdfmx|xetex>
% \end{macrocode}
%
-% \begin{macro}{\@@_backend:n, \@@_backend:x}
+% \begin{macro}{\@@_backend:n, \@@_backend:e}
% A generic function for the backend PDF specials: used where we can.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_backend:n #1
+\cs_new_protected:Npe \@@_backend:n #1
{ \__kernel_backend_literal:n { pdf: #1 } }
-\cs_generate_variant:Nn \@@_backend:n { x }
+\cs_generate_variant:Nn \@@_backend:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -1274,7 +1274,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_backend_object_write:nnn, \@@_backend_object_write:nnx}
+% \begin{macro}{\@@_backend_object_write:nnn, \@@_backend_object_write:nne}
% \begin{macro}
% {
% \@@_backend_object_write_array:nn ,
@@ -1290,15 +1290,15 @@
\use:c { @@_backend_object_write_ #2 :nn }
{ \@@_backend_object_ref:n {#1} } {#3}
}
-\cs_generate_variant:Nn \@@_backend_object_write:nnn { nnx }
+\cs_generate_variant:Nn \@@_backend_object_write:nnn { nne }
\cs_new_protected:Npn \@@_backend_object_write_array:nn #1#2
{
- \@@_backend:x
+ \@@_backend:e
{ obj ~ #1 ~ [ ~ \exp_not:n {#2} ~ ] }
}
\cs_new_protected:Npn \@@_backend_object_write_dict:nn #1#2
{
- \@@_backend:x
+ \@@_backend:e
{ obj ~ #1 ~ << ~ \exp_not:n {#2} ~ >> }
}
\cs_new_protected:Npn \@@_backend_object_write_fstream:nn #1#2
@@ -1307,7 +1307,7 @@
{ \@@_backend_object_write_stream:nnnn { } {#1} #2 }
\cs_new_protected:Npn \@@_backend_object_write_stream:nnnn #1#2#3#4
{
- \@@_backend:x
+ \@@_backend:e
{
#1 stream ~ #2 ~
( \exp_not:n {#4} ) ~ << \exp_not:n {#3} >>
@@ -1318,18 +1318,18 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_backend_object_now:nn, \@@_backend_object_now:nx}
+% \begin{macro}{\@@_backend_object_now:nn, \@@_backend_object_now:ne}
% No anonymous objects with \texttt{dvipdfmx} so we have to give an
% object name.
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_object_now:nn #1#2
{
\int_gincr:N \g_@@_backend_object_int
- \exp_args:Nnx \use:c { @@_backend_object_write_ #1 :nn }
+ \exp_args:Nne \use:c { @@_backend_object_write_ #1 :nn }
{ @pdf.obj \int_use:N \g_@@_backend_object_int }
{#2}
}
-\cs_generate_variant:Nn \@@_backend_object_now:nn { nx }
+\cs_generate_variant:Nn \@@_backend_object_now:nn { ne }
% \end{macrocode}
% \end{macro}
%
@@ -1364,7 +1364,7 @@
{
\int_gincr:N \g_@@_backend_object_int
\int_gset_eq:NN \g_@@_backend_annotation_int \g_@@_backend_object_int
- \@@_backend:x
+ \@@_backend:e
{
ann ~ @pdf.obj \int_use:N \g_@@_backend_object_int \c_space_tl
width ~ \dim_eval:n {#1} ~
@@ -1400,10 +1400,10 @@
{ \@@_backend_link_begin:n { #1 /Subtype /Link /A << /S /GoTo /D ( #2 ) >> } }
\cs_new_protected:Npn \@@_backend_link_begin_user:nnw #1#2
{ \@@_backend_link_begin:n {#1#2} }
-\cs_new_protected:Npx \@@_backend_link_begin:n #1
+\cs_new_protected:Npe \@@_backend_link_begin:n #1
{
\exp_not:N \int_gincr:N \exp_not:N \g_@@_backend_link_int
- \@@_backend:x
+ \@@_backend:e
{
bann ~
@pdf.lnk
@@ -1435,7 +1435,7 @@
% Pass to \texttt{dvipdfmx}.
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_link_margin:n #1
- { \__kernel_backend_literal:x { dvipdfmx:config~g~ \dim_eval:n {#1} } }
+ { \__kernel_backend_literal:e { dvipdfmx:config~g~ \dim_eval:n {#1} } }
% \end{macrocode}
% \end{macro}
%
@@ -1449,7 +1449,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_destination:nn #1#2
{
- \@@_backend:x
+ \@@_backend:e
{
dest ~ ( \exp_not:n {#1} )
[
@@ -1518,7 +1518,7 @@
% Pass data to the backend: these are a one-shot.
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_compresslevel:n #1
- { \__kernel_backend_literal:x { dvipdfmx:config~z~ \int_eval:n {#1} } }
+ { \__kernel_backend_literal:e { dvipdfmx:config~z~ \int_eval:n {#1} } }
\cs_new_protected:Npn \@@_backend_compress_objects:n #1
{
\bool_if:nF {#1}
@@ -1534,13 +1534,13 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_backend_version_major_gset:n #1
{
- \cs_gset:Npx \@@_backend_version_major: { \int_eval:n {#1} }
- \__kernel_backend_literal:x { pdf:majorversion~ \@@_backend_version_major: }
+ \cs_gset:Npe \@@_backend_version_major: { \int_eval:n {#1} }
+ \__kernel_backend_literal:e { pdf:majorversion~ \@@_backend_version_major: }
}
\cs_new_protected:Npn \@@_backend_version_minor_gset:n #1
{
- \cs_gset:Npx \@@_backend_version_minor: { \int_eval:n {#1} }
- \__kernel_backend_literal:x { pdf:minorversion~ \@@_backend_version_minor: }
+ \cs_gset:Npe \@@_backend_version_minor: { \int_eval:n {#1} }
+ \__kernel_backend_literal:e { pdf:minorversion~ \@@_backend_version_minor: }
}
% \end{macrocode}
% \end{macro}
@@ -1608,7 +1608,7 @@
%
% \begin{macro}{\@@_backend_link_last:}
% \begin{macrocode}
-\cs_new:Npx \@@_backend_link_last: { }
+\cs_new:Npe \@@_backend_link_last: { }
% \end{macrocode}
% \end{macro}
%
@@ -1642,8 +1642,8 @@
%
% \begin{macro}{\@@_backend_object_new:n}
% \begin{macro}[EXP]{\@@_backend_object_ref:n}
-% \begin{macro}{\@@_backend_object_write:nnn, \@@_backend_object_write:nx}
-% \begin{macro}{\@@_backend_object_now:nn, , \@@_backend_object_now:nx}
+% \begin{macro}{\@@_backend_object_write:nnn, \@@_backend_object_write:ne}
+% \begin{macro}{\@@_backend_object_now:nn, , \@@_backend_object_now:ne}
% \begin{macro}{\@@_backend_object_last:}
% \begin{macro}[EXP]{\@@_backend_pageobject_ref:n}
% All no-ops here.
@@ -1651,9 +1651,9 @@
\cs_new_protected:Npn \@@_backend_object_new:nn #1 { }
\cs_new:Npn \@@_backend_object_ref:n #1 { }
\cs_new_protected:Npn \@@_backend_object_write:nnn #1#2#3 { }
-\cs_new_protected:Npn \@@_backend_object_write:nnx #1#2#3 { }
+\cs_new_protected:Npn \@@_backend_object_write:nne #1#2#3 { }
\cs_new_protected:Npn \@@_backend_object_now:nn #1#2 { }
-\cs_new_protected:Npn \@@_backend_object_now:nx #1#2 { }
+\cs_new_protected:Npn \@@_backend_object_now:ne #1#2 { }
\cs_new:Npn \@@_backend_object_last: { }
\cs_new:Npn \@@_backend_pageobject_ref:n #1 { }
% \end{macrocode}
diff --git a/macros/latex/contrib/l3experimental/CHANGELOG.md b/macros/latex/contrib/l3experimental/CHANGELOG.md
index e440354bfb..7befc1cdf8 100644
--- a/macros/latex/contrib/l3experimental/CHANGELOG.md
+++ b/macros/latex/contrib/l3experimental/CHANGELOG.md
@@ -7,6 +7,12 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2023-10-10]
+
+### Changed
+- Slowdown a l3benchmark slow branch code slightly to gain test suite
+ robustness (issue \#1274)
+
## [2023-05-11]
### Changed
@@ -275,7 +281,8 @@ this project uses date-based 'snapshot' version identifiers.
- New `l3color` module using `xcolor`-like expression syntax
- New `l3draw` module, based on `pgf` layer of the TikZ system
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-05-11...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-10-10...HEAD
+[2023-10-10]: https://github.com/latex3/latex3/compare/2023-05-11...2023-10-10
[2023-05-11]: https://github.com/latex3/latex3/compare/2023-04-19...2023-05-11
[2023-04-19]: https://github.com/latex3/latex3/compare/2023-03-30...2023-04-19
[2023-03-30]: https://github.com/latex3/latex3/compare/2023-01-24...2023-03-30
diff --git a/macros/latex/contrib/l3experimental/README.md b/macros/latex/contrib/l3experimental/README.md
index fad6c09a3b..f78ecff28a 100644
--- a/macros/latex/contrib/l3experimental/README.md
+++ b/macros/latex/contrib/l3experimental/README.md
@@ -1,7 +1,7 @@
Experimental LaTeX3 Concepts
============================
-Release 2023-05-11
+Release 2023-10-10
Overview
--------
diff --git a/macros/latex/contrib/l3experimental/l3benchmark.dtx b/macros/latex/contrib/l3experimental/l3benchmark.dtx
index c02099765d..cd41c2103e 100644
--- a/macros/latex/contrib/l3experimental/l3benchmark.dtx
+++ b/macros/latex/contrib/l3experimental/l3benchmark.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -122,7 +122,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3benchmark}{2023-05-11}{}
+\ProvidesExplPackage{l3benchmark}{2023-10-10}{}
{L3 Experimental benchmarking}
% \end{macrocode}
%
@@ -225,13 +225,13 @@
}
\cs_new_protected:Npn \@@_raw_replicate_large:nnN #1#2
{
- \cs_set:Npx \@@_tmp:w ##1 { \prg_replicate:nn { 5000 } {##1} }
+ \cs_set:Npe \@@_tmp:w ##1 { \prg_replicate:nn { 5000 } {##1} }
\exp_args:Nno \@@_raw_replicate:nnN { #1 / 5000 }
{ \@@_tmp:w {#2} }
}
\cs_new_protected:Npn \@@_raw_replicate_small:nnN #1#2
{
- \cs_set:Npx \@@_tmp:w ##1##2 { \prg_replicate:nn {#1} {##1} }
+ \cs_set:Npe \@@_tmp:w ##1##2 { \prg_replicate:nn {#1} {##1} }
\@@_raw:nN { \@@_tmp:w {#2} { } } \g_@@_time_int
\exp_args:No \@@_raw_replicate_aux:nnN
{ \int_use:N \g_@@_time_int } {#2}
@@ -439,7 +439,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_display:
{
- \iow_term:x
+ \iow_term:e
{
\@@_fp_to_tl:N \g_benchmark_time_fp \c_space_tl seconds \c_space_tl
( \@@_fp_to_tl:N \g_benchmark_ops_fp \c_space_tl ops)
@@ -474,7 +474,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \benchmark_tic:
{
- \iow_term:x { \@@_tictoc_prefix: TIC }
+ \iow_term:e { \@@_tictoc_prefix: TIC }
\exp_args:NNf \seq_gput_right:Nn \g_@@_tictoc_seq { \sys_timer: }
\int_gincr:N \g_@@_tictoc_int
}
@@ -494,7 +494,7 @@
\int_gdecr:N \g_@@_tictoc_int
\fp_gset:Nn \g_benchmark_time_fp
{ ( \sys_timer: - \l_@@_tictoc_pop_tl ) / 65536 }
- \iow_term:x
+ \iow_term:e
{
\@@_tictoc_prefix:
TOC: \c_space_tl
diff --git a/macros/latex/contrib/l3experimental/l3benchmark.pdf b/macros/latex/contrib/l3experimental/l3benchmark.pdf
index c8c57e9169..a4f0054473 100644
--- a/macros/latex/contrib/l3experimental/l3benchmark.pdf
+++ b/macros/latex/contrib/l3experimental/l3benchmark.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3bitset.dtx b/macros/latex/contrib/l3experimental/l3bitset.dtx
index c15e0288e2..6d342b0955 100644
--- a/macros/latex/contrib/l3experimental/l3bitset.dtx
+++ b/macros/latex/contrib/l3experimental/l3bitset.dtx
@@ -42,7 +42,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
% \begin{documentation}
@@ -264,7 +264,7 @@
%<@@=bitset>
% \end{macrocode}
% \begin{macrocode}
-\ProvidesExplPackage{l3bitset}{2023-05-11}{}
+\ProvidesExplPackage{l3bitset}{2023-10-10}{}
{L3 Experimental bitset support}
% \end{macrocode}
% A bitset is a string variable.
@@ -337,13 +337,13 @@
% then inserting an $1$. It is not checked if the value was already $1$.
% \begin{macrocode}
\cs_new_protected:Npn \@@_set_true:Nn #1#2
- { \@@_set:NNnN \str_set:Nx #1 {#2} 1 }
+ { \@@_set:NNnN \str_set:Ne #1 {#2} 1 }
\cs_new_protected:Npn \@@_gset_true:Nn #1#2
- { \@@_set:NNnN \str_gset:Nx #1 {#2} 1 }
+ { \@@_set:NNnN \str_gset:Ne #1 {#2} 1 }
\cs_new_protected:Npn \@@_set_false:Nn #1#2
- { \@@_set:NNnN \str_set:Nx #1 {#2} 0 }
+ { \@@_set:NNnN \str_set:Ne #1 {#2} 0 }
\cs_new_protected:Npn \@@_gset_false:Nn #1#2
- { \@@_set:NNnN \str_gset:Nx #1 {#2} 0 }
+ { \@@_set:NNnN \str_gset:Ne #1 {#2} 0 }
\cs_new_protected:Npn \@@_set:NNnN #1#2#3#4
{
\int_compare:nNnT {#3} > { 0 }
@@ -434,7 +434,7 @@
\prop_gput:cnn { g_@@_ \cs_to_str:N #2 _name_prop } {#3} {#3}
}
{
- \msg_warning:nnxx { bitset } { unknown-name }
+ \msg_warning:nnee { bitset } { unknown-name }
{ \token_to_str:N #2 }
{ \tl_to_str:n {#3} }
}
@@ -531,11 +531,11 @@
% \bitset_log:N, \bitset_log:c
% }
% \begin{macrocode}
-\cs_new_protected:Npn \bitset_show:N { \@@_show:NN \msg_show:nnxxxx }
+\cs_new_protected:Npn \bitset_show:N { \@@_show:NN \msg_show:nneeee }
\cs_generate_variant:Nn \bitset_show:N { c }
-\cs_new_protected:Npn \bitset_log:N { \@@_show:NN \msg_log:nnxxxx }
+\cs_new_protected:Npn \bitset_log:N { \@@_show:NN \msg_log:nneeee }
\cs_generate_variant:Nn \bitset_log:N { c }
-\cs_new_protected:Npn \bitset_show_named_index:N { \@@_show_named_index:NN \msg_show:nnxxxx }
+\cs_new_protected:Npn \bitset_show_named_index:N { \@@_show_named_index:NN \msg_show:nneeee }
\cs_generate_variant:Nn \bitset_show_named_index:N { c }
\cs_new_protected:Npn \@@_show:NN #1#2
{
diff --git a/macros/latex/contrib/l3experimental/l3bitset.pdf b/macros/latex/contrib/l3experimental/l3bitset.pdf
index b7744fd2b6..095a3dd391 100644
--- a/macros/latex/contrib/l3experimental/l3bitset.pdf
+++ b/macros/latex/contrib/l3experimental/l3bitset.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3draw-boxes.dtx b/macros/latex/contrib/l3experimental/l3draw-boxes.dtx
index d8704e4545..b48aa9d995 100644
--- a/macros/latex/contrib/l3experimental/l3draw-boxes.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-boxes.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -102,7 +102,7 @@
\group_begin:
\hbox_set:Nn \l_@@_tmp_box
{
- \use:x
+ \use:e
{
\@@_backend_box_use:Nnnnn #1
{ \fp_use:N \l_@@_matrix_a_fp }
diff --git a/macros/latex/contrib/l3experimental/l3draw-code.pdf b/macros/latex/contrib/l3experimental/l3draw-code.pdf
index 4926dccaa7..9e5404c221 100644
--- a/macros/latex/contrib/l3experimental/l3draw-code.pdf
+++ b/macros/latex/contrib/l3experimental/l3draw-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3draw-layers.dtx b/macros/latex/contrib/l3experimental/l3draw-layers.dtx
index 0303081b15..e85f370c34 100644
--- a/macros/latex/contrib/l3experimental/l3draw-layers.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-layers.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-paths.dtx b/macros/latex/contrib/l3experimental/l3draw-paths.dtx
index 702ef922f9..41e866e563 100644
--- a/macros/latex/contrib/l3experimental/l3draw-paths.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-paths.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -346,7 +346,7 @@
{
\fp_set:Nn \l_@@_path_tmpa_fp { \c_@@_path_curveto_b_fp * #1 }
\fp_set:Nn \l_@@_path_tmpb_fp { \c_@@_path_curveto_b_fp * #2 }
- \use:x
+ \use:e
{
\@@_path_mark_corner:
\@@_path_curveto:nnnnnn
@@ -409,7 +409,7 @@
{ \draw_path_arc:nnnn {#1} {#2} {#3} {#3} }
\cs_new_protected:Npn \draw_path_arc:nnnn #1#2#3#4
{
- \use:x
+ \use:e
{
\@@_path_arc:nnnn
{ \fp_eval:n {#1} }
@@ -464,7 +464,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_path_arc_auxi:nnnnNnn #1#2#3#4#5#6#7
{
- \use:x
+ \use:e
{
\@@_path_arc_auxii:nnnNnnnn
{#1} {#2} {#4} #5 {#6} {#7}
@@ -564,7 +564,7 @@
}
\cs_new_protected:Npn \@@_path_arc_aux_add:nn #1#2
{
- \tl_put_right:Nx \l_@@_path_tmp_tl
+ \tl_put_right:Ne \l_@@_path_tmp_tl
{ { \fp_to_dim:n {#1} } { \fp_to_dim:n {#2} } }
}
\fp_new:N \l_@@_path_arc_delta_fp
@@ -624,7 +624,7 @@
}
\cs_new_protected:Npn \@@_path_ellipse:nnnnnn #1#2#3#4#5#6
{
- \use:x
+ \use:e
{
\@@_path_moveto:nn
{ \fp_to_dim:n { #1 + #3 } } { \fp_to_dim:n { #2 + #4 } }
diff --git a/macros/latex/contrib/l3experimental/l3draw-points.dtx b/macros/latex/contrib/l3experimental/l3draw-points.dtx
index e858b98f10..044f01a374 100644
--- a/macros/latex/contrib/l3experimental/l3draw-points.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-points.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-scopes.dtx b/macros/latex/contrib/l3experimental/l3draw-scopes.dtx
index 75b5238b38..4017e46f17 100644
--- a/macros/latex/contrib/l3experimental/l3draw-scopes.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-scopes.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -247,7 +247,7 @@
{
\bool_if:NTF \l_@@_baseline_bool
{
- \use:x
+ \use:e
{
\exp_not:n {#1}
\@@_finalise_baseline:n { \dim_use:N \l_@@_baseline_dim }
diff --git a/macros/latex/contrib/l3experimental/l3draw-softpath.dtx b/macros/latex/contrib/l3experimental/l3draw-softpath.dtx
index 867164c026..44524fb17b 100644
--- a/macros/latex/contrib/l3experimental/l3draw-softpath.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-softpath.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -96,11 +96,11 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{\@@_softpath_add:n, \@@_softpath_add:o, \@@_softpath_add:x}
+% \begin{macro}{\@@_softpath_add:n, \@@_softpath_add:o, \@@_softpath_add:e}
% \begin{macrocode}
\cs_new_protected:Npn \@@_softpath_add:n
{ \tl_build_gput_right:Nn \g_@@_softpath_main_tl }
-\cs_generate_variant:Nn \@@_softpath_add:n { o, x }
+\cs_generate_variant:Nn \@@_softpath_add:n { o, e }
% \end{macrocode}
% \end{macro}
%
@@ -150,7 +150,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_softpath_closepath:
{
- \@@_softpath_add:x
+ \@@_softpath_add:e
{
\@@_softpath_close_op:nn
{ \dim_use:N \g_@@_softpath_lastx_dim }
@@ -466,19 +466,19 @@
% corner, in order to work out where the curve we are adding will start
% and end. From those, plus the points we already have, we work out where
% the control points will lie. All of this is done in an expansion to
-% avoid multiple calls to |\tl_put_right:Nx|. The end point of the line
+% avoid multiple calls to |\tl_put_right:Ne|. The end point of the line
% is worked out up-front and saved: we need that if dealing with a
% close-path operation.
% \begin{macrocode}
\cs_new_protected:Npn \@@_softpath_round_calc:NnnNnn #1#2#3#4#5#6
{
- \tl_set:Nx \l_@@_softpath_curve_end_tl
+ \tl_set:Ne \l_@@_softpath_curve_end_tl
{
\draw_point_interpolate_distance:nnn
\l_@@_softpath_cornerii_dim
{ #5 , #6 } { #2 , #3 }
}
- \tl_put_right:Nx \l_@@_softpath_part_tl
+ \tl_put_right:Ne \l_@@_softpath_part_tl
{
\exp_not:N #4
\@@_softpath_round_calc:fVnnnn
@@ -546,11 +546,11 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_softpath_round_close:nn #1#2
{
- \use:x
+ \use:e
{
\@@_softpath_round_calc:NnnNnn
{
- \tl_set:Nx \exp_not:N \l_@@_softpath_move_tl
+ \tl_set:Ne \exp_not:N \l_@@_softpath_move_tl
{
\@@_softpath_moveto_op:nn
\exp_not:N \exp_after:wN
@@ -558,7 +558,7 @@
\exp_not:N \l_@@_softpath_curve_end_tl
\s_@@_stop
}
- \use:x
+ \use:e
{
\exp_not:N \exp_not:N \exp_not:N \use_i:nnnn
{
diff --git a/macros/latex/contrib/l3experimental/l3draw-state.dtx b/macros/latex/contrib/l3experimental/l3draw-state.dtx
index fca6f78389..e1a67309e2 100644
--- a/macros/latex/contrib/l3experimental/l3draw-state.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-state.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -107,7 +107,7 @@
\seq_set_from_clist:Nn \l_@@_tmp_seq {#1}
\seq_set_map:NNn \l_@@_tmp_seq \l_@@_tmp_seq
{ \fp_to_dim:n {##1} }
- \use:x
+ \use:e
{
\@@_backend_dash_pattern:nn
{ \seq_use:Nn \l_@@_tmp_seq { , } }
@@ -124,7 +124,7 @@
% Pass through to the driver layer.
% \begin{macrocode}
\cs_new_protected:Npn \draw_miterlimit:n #1
- { \exp_args:Nx \@@_backend_miterlimit:n { \fp_eval:n {#1} } }
+ { \exp_args:Ne \@@_backend_miterlimit:n { \fp_eval:n {#1} } }
% \end{macrocode}
% \end{macro}
%
diff --git a/macros/latex/contrib/l3experimental/l3draw-transforms.dtx b/macros/latex/contrib/l3experimental/l3draw-transforms.dtx
index 901b0b6f84..35b31395db 100644
--- a/macros/latex/contrib/l3experimental/l3draw-transforms.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw-transforms.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -172,7 +172,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \draw_transform_matrix:nnnn #1#2#3#4
{
- \use:x
+ \use:e
{
\@@_transform:nnnn
{ \fp_eval:n {#1} }
@@ -183,7 +183,7 @@
}
\cs_new_protected:Npn \@@_transform:nnnn #1#2#3#4
{
- \use:x
+ \use:e
{
\draw_transform_matrix_absolute:nnnn
{ #1 * \l_@@_matrix_a_fp + #2 * \l_@@_matrix_c_fp }
@@ -269,7 +269,7 @@
}
\cs_new_protected:Npn \@@_transform_triangle:nnnnnn #1#2#3#4#5#6
{
- \use:x
+ \use:e
{
\draw_transform_matrix_absolute:nnnn
{ #3 - #1 }
diff --git a/macros/latex/contrib/l3experimental/l3draw.dtx b/macros/latex/contrib/l3experimental/l3draw.dtx
index 7d4afed84f..d1e604d42d 100644
--- a/macros/latex/contrib/l3experimental/l3draw.dtx
+++ b/macros/latex/contrib/l3experimental/l3draw.dtx
@@ -110,7 +110,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -1173,7 +1173,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3draw}{2023-05-11}{}
+\ProvidesExplPackage{l3draw}{2023-10-10}{}
{L3 Experimental core drawing support}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3draw.pdf b/macros/latex/contrib/l3experimental/l3draw.pdf
index 81f9aa126c..485b4ded36 100644
--- a/macros/latex/contrib/l3experimental/l3draw.pdf
+++ b/macros/latex/contrib/l3experimental/l3draw.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3galley.dtx b/macros/latex/contrib/l3experimental/l3galley.dtx
index a40688f42a..7272d8625e 100644
--- a/macros/latex/contrib/l3experimental/l3galley.dtx
+++ b/macros/latex/contrib/l3experimental/l3galley.dtx
@@ -61,7 +61,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -686,7 +686,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3galley}{2023-05-11}{}
+\ProvidesExplPackage{l3galley}{2023-10-10}{}
{L3 Experimental galley code}
% \end{macrocode}
%
@@ -1325,7 +1325,7 @@
{
\tl_if_empty:NF #1
{
- \tl_gput_right:Nx \g_galley_restore_running_tl
+ \tl_gput_right:Ne \g_galley_restore_running_tl
{
\int_gset:Nn \exp_not:N \g_galley_penalty_int
{ \int_use:N \g_galley_penalty_int }
@@ -1337,7 +1337,7 @@
{
\tl_if_empty:NF #1
{
- \tl_gput_right:Nx \g_galley_restore_running_tl
+ \tl_gput_right:Ne \g_galley_restore_running_tl
{
\skip_gset:Nn \exp_not:N \g_galley_vspace_skip
{ \skip_use:N \g_galley_vspace_skip }
@@ -1755,7 +1755,7 @@
{
\seq_gpop_left:NNF #2 \l_@@_tmp_tl
{ \tl_set:Nn \l_@@_tmp_tl { 0pt } }
- \seq_put_right:Nx \l_@@_tmp_seq
+ \seq_put_right:Ne \l_@@_tmp_seq
{ \dim_eval:n { ##1 + \l_@@_tmp_tl } }
}
}
@@ -1950,10 +1950,10 @@
% deals with this nicely.
% \begin{macrocode}
\cs_new_protected:Npn \galley_penalty_set_single:n #1
- { \tl_gset:Nx \g_@@_interpar_penalty_user_tl { \int_eval:n {#1} } }
+ { \tl_gset:Ne \g_@@_interpar_penalty_user_tl { \int_eval:n {#1} } }
\cs_new_protected:Npn \galley_penalty_add_single:n #1
{
- \tl_gset:Nx \g_@@_interpar_penalty_user_tl
+ \tl_gset:Ne \g_@@_interpar_penalty_user_tl
{
\int_eval:n
{
@@ -1964,10 +1964,10 @@
}
}
\cs_new_protected:Npn \galley_vspace_set_single:n #1
- { \tl_gset:Nx \g_@@_interpar_vspace_user_tl { \skip_eval:n {#1} } }
+ { \tl_gset:Ne \g_@@_interpar_vspace_user_tl { \skip_eval:n {#1} } }
\cs_new_protected:Npn \galley_vspace_add_single:n #1
{
- \tl_gset:Nx \g_@@_interpar_vspace_user_tl
+ \tl_gset:Ne \g_@@_interpar_vspace_user_tl
{
\skip_eval:n
{
@@ -2408,11 +2408,11 @@
{ \clist_set_eq:NN #1 \l_galley_line_penalties_clist }
% \end{macrocode}
% These all require appropriate mappings, using the fact that
-% \cs{clist_set:Nx} will tidy up the excess comma.
+% \cs{clist_set:Ne} will tidy up the excess comma.
% \begin{macrocode}
\cs_new_protected:Npn \galley_save_display_club_penalties:N #1
{
- \clist_set:Nx #1
+ \clist_set:Ne #1
{
\int_step_function:nN { \tex_clubpenalties:D 0 - 1 }
\@@_save_display_club_penalties:n
@@ -2422,7 +2422,7 @@
{ \int_value:w \tex_clubpenalties:D \int_eval:n {#1} , }
\cs_new_protected:Npn \galley_save_display_widow_penalties:N #1
{
- \clist_set:Nx #1
+ \clist_set:Ne #1
{
\int_step_function:nN { \tex_displaywidowpenalties:D 0 - 1 }
\@@_save_display_widow_penalties:n
@@ -2435,7 +2435,7 @@
}
\cs_new_protected:Npn \galley_save_widow_penalties:N #1
{
- \clist_set:Nx #1
+ \clist_set:Ne #1
{
\int_step_function:nN { \tex_widowpenalties:D 0 - 1 }
\@@_save_widow_penalties:n
diff --git a/macros/latex/contrib/l3experimental/l3galley.pdf b/macros/latex/contrib/l3experimental/l3galley.pdf
index e0ca0b85d4..3ba577c159 100644
--- a/macros/latex/contrib/l3experimental/l3galley.pdf
+++ b/macros/latex/contrib/l3experimental/l3galley.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3graphics.dtx b/macros/latex/contrib/l3experimental/l3graphics.dtx
index 3209e4793c..0266b711fa 100644
--- a/macros/latex/contrib/l3experimental/l3graphics.dtx
+++ b/macros/latex/contrib/l3experimental/l3graphics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -184,7 +184,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3graphics}{2023-05-11}{}
+\ProvidesExplPackage{l3graphics}{2023-10-10}{}
{L3 Experimental graphics inclusion support}
% \end{macrocode}
%
@@ -236,8 +236,8 @@
pagebox .choices:nn =
{ art , bleed , crop , media , trim }
{
- \tl_set:Nx \l_@@_pagebox_tl
- { \tl_use:N \l_keys_choice_tl box }
+ \tl_set:Ne \l_@@_pagebox_tl
+ { \l_keys_choice_tl box }
} ,
pagebox .initial:n =
crop ,
@@ -267,8 +267,8 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{\@@_bb_save:n, \@@_bb_save:x}
-% \begin{macro}{\@@_bb_restore:nF, \@@_bb_restore:xF}
+% \begin{macro}{\@@_bb_save:n, \@@_bb_save:e}
+% \begin{macro}{\@@_bb_restore:nF, \@@_bb_restore:eF}
% Caching graphic bounding boxes is sensible, and these functions are needed both
% here and for drive-specific work. So they are made available as documented
% functions. To save on registers, the \enquote{origin} is only saved if it is
@@ -287,7 +287,7 @@
\dim_const:cn { c_@@_ #1 _ury_dim } { \l_@@_ury_dim }
}
}
-\cs_generate_variant:Nn \@@_bb_save:n { x }
+\cs_generate_variant:Nn \@@_bb_save:n { e }
\cs_new_protected:Npn \@@_bb_restore:nF #1#2
{
\dim_if_exist:cTF { c_@@_ #1 _urx_dim }
@@ -303,7 +303,7 @@
}
{#2}
}
-\cs_generate_variant:Nn \@@_bb_restore:nF { x }
+\cs_generate_variant:Nn \@@_bb_restore:nF { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -375,7 +375,7 @@
\@@_bb_restore:nF {#1#2}
{ \@@_read_bb_auxii:nnnn {#3} {#4} {#1} {#2} }
}
-\cs_new_protected:Npx \@@_read_bb_auxii:nnnn #1#2#3#4
+\cs_new_protected:Npe \@@_read_bb_auxii:nnnn #1#2#3#4
{
#1
\exp_not:N \ior_if_eof:NTF \exp_not:N \l_@@_internal_ior
@@ -390,15 +390,15 @@
}
\ior_close:N \exp_not:N \l_@@_internal_ior
}
-\use:x
+\use:e
{
\cs_new_protected:Npn \exp_not:N \@@_read_bb_auxiii:w
- ##1 \c_colon_str ##2 \s_@@_stop
+ #1 \c_colon_str #2 \s_@@_stop
{
\exp_not:N \str_if_eq:nnT
{ \c_percent_str \c_percent_str BoundingBox }
- {##1}
- { \exp_not:N \@@_read_bb_auxiv:w ##2 ( ) \s_@@_stop }
+ {#1}
+ { \exp_not:N \@@_read_bb_auxiv:w #2 ( ) \s_@@_stop }
}
}
% \end{macrocode}
@@ -413,7 +413,7 @@
{
\str_if_eq:nnF {#2} { atend }
{
- \tl_set_rescan:Nnx \l_@@_internal_tl
+ \tl_set_rescan:Nne \l_@@_internal_tl
{
\char_set_catcode_space:n { 9 }
\char_set_catcode_space:n { 32 }
@@ -552,7 +552,7 @@
\cs_if_exist:cTF { @@_backend_include_ #1 :n }
{
\tl_set_eq:NN \l_@@_final_name_str \l_@@_full_name_str
- \str_set:Nx \l_@@_full_name_str
+ \str_set:Ne \l_@@_full_name_str
{ \exp_args:NV \__kernel_file_name_quote:n \l_@@_full_name_str }
\exp_args:NnV \use:c { @@_backend_getbb_ #1 :n }
\l_@@_full_name_str
@@ -615,8 +615,8 @@
% \begin{macro}[EXP]{\@@_list_aux:n}
% A function to list all graphic files used.
% \begin{macrocode}
-\cs_new_protected:Npn \graphics_show_list: { \@@_list:N \msg_show:nnxxxx }
-\cs_new_protected:Npn \graphics_log_list: { \@@_list:N \msg_log:nnxxxx }
+\cs_new_protected:Npn \graphics_show_list: { \@@_list:N \msg_show:nneeee }
+\cs_new_protected:Npn \graphics_log_list: { \@@_list:N \msg_log:nneeee }
\cs_new_protected:Npn \@@_list:N #1
{
\seq_remove_duplicates:N \g_@@_record_seq
@@ -714,7 +714,7 @@
\exp_args:NNNV \group_end:
\tl_set:Nn #2 #2
}
-\cs_new_protected:Npx \@@_get_pagecount:n #1
+\cs_new_protected:Npe \@@_get_pagecount:n #1
{
\ior_shell_open:Nn \exp_not:N \l_@@_internal_ior
{ extractbb~-O~#1 }
@@ -731,16 +731,16 @@
}
\ior_close:N \exp_not:N \l_@@_internal_ior
}
-\use:x
+\use:e
{
\cs_new_protected:Npn \exp_not:N \@@_get_pagecount:nw
- ##1##2 \c_colon_str ##3 \c_colon_str ##4 \s_@@_stop
+ #1#2 \c_colon_str #3 \c_colon_str #4 \s_@@_stop
{
\exp_not:N \str_if_eq:nnT
{ \c_percent_str \c_percent_str Pages }
- {##2}
+ {#2}
{
- \int_const:cn { c_@@_ ##1 _pages_int } {##3}
+ \int_const:cn { c_@@_ #1 _pages_int } {#3}
\exp_not:N \ior_map_break:
}
}
diff --git a/macros/latex/contrib/l3experimental/l3graphics.pdf b/macros/latex/contrib/l3experimental/l3graphics.pdf
index e51c8b2650..dd86d0bd76 100644
--- a/macros/latex/contrib/l3experimental/l3graphics.pdf
+++ b/macros/latex/contrib/l3experimental/l3graphics.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3opacity.dtx b/macros/latex/contrib/l3experimental/l3opacity.dtx
index 0412372235..3fce2c27d1 100644
--- a/macros/latex/contrib/l3experimental/l3opacity.dtx
+++ b/macros/latex/contrib/l3experimental/l3opacity.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -96,7 +96,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3opacity}{2023-05-11}{}
+\ProvidesExplPackage{l3opacity}{2023-10-10}{}
{L3 Experimental opacity support}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3experimental/l3opacity.pdf b/macros/latex/contrib/l3experimental/l3opacity.pdf
index 8a1140d1cb..bd73f200d5 100644
--- a/macros/latex/contrib/l3experimental/l3opacity.pdf
+++ b/macros/latex/contrib/l3experimental/l3opacity.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3str-format.dtx b/macros/latex/contrib/l3experimental/l3str-format.dtx
index af0ad23e9f..10ccfb2f79 100644
--- a/macros/latex/contrib/l3experimental/l3str-format.dtx
+++ b/macros/latex/contrib/l3experimental/l3str-format.dtx
@@ -48,7 +48,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -166,7 +166,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3str-format}{2023-05-11}{}
+\ProvidesExplPackage{l3str-format}{2023-10-10}{}
{L3 Experimental string formatting}
% \end{macrocode}
%
@@ -256,7 +256,7 @@
\exp_last_unbraced:Nf \@@_format_parse_auxi:NN
{ \__kernel_str_to_other:n {#1} } \s_@@_stop \s_@@_stop {#1}
}
-\cs_new:Npx \@@_format_parse_auxi:NN #1#2
+\cs_new:Npe \@@_format_parse_auxi:NN #1#2
{
\exp_not:N \@@_format_if_in:nNTF { < > = ^ } #2
{ \exp_not:N \@@_format_parse_auxiii:nN { #1 #2 } }
@@ -271,7 +271,7 @@
{ \@@_format_parse_auxiii:nN { #1 #2 } }
{ \@@_format_parse_auxiii:nN { #1 ? } #2 }
}
-\cs_new:Npx \@@_format_parse_auxiii:nN #1#2
+\cs_new:Npe \@@_format_parse_auxiii:nN #1#2
{
\exp_not:N \@@_format_if_in:nNTF
{ + - \c_catcode_other_space_tl }
diff --git a/macros/latex/contrib/l3experimental/l3str-format.pdf b/macros/latex/contrib/l3experimental/l3str-format.pdf
index 5c7e16f870..dbc0058ace 100644
--- a/macros/latex/contrib/l3experimental/l3str-format.pdf
+++ b/macros/latex/contrib/l3experimental/l3str-format.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/l3sys-shell.dtx b/macros/latex/contrib/l3experimental/l3sys-shell.dtx
index dfc2fb188a..0cc622dbbb 100644
--- a/macros/latex/contrib/l3experimental/l3sys-shell.dtx
+++ b/macros/latex/contrib/l3experimental/l3sys-shell.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -151,7 +151,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3sys-shell}{2023-05-11}{}
+\ProvidesExplPackage{l3sys-shell}{2023-10-10}{}
{L3 Experimental system shell functions}
% \end{macrocode}
%
@@ -213,11 +213,11 @@
% Simple Unix-like file copying: at some stage we may need a directory-only
% version as Windows and Unix have different requirements here.
% \begin{macrocode}
-\cs_new_protected:Npx \sys_shell_cp:nn #1#2
+\cs_new_protected:Npe \sys_shell_cp:nn #1#2
{
\sys_if_shell_unrestricted:T
{
- \sys_shell_now:x
+ \sys_shell_now:e
{
\sys_if_platform_unix:T
{
@@ -240,11 +240,11 @@
% issues a warning if the directory already exists: avoid by including a
% test.
% \begin{macrocode}
-\cs_new_protected:Npx \sys_shell_mkdir:n #1
+\cs_new_protected:Npe \sys_shell_mkdir:n #1
{
\sys_if_shell_unrestricted:T
{
- \sys_shell_now:x
+ \sys_shell_now:e
{
\sys_if_platform_unix:T
{ mkdir~-p~ \exp_not:N \tl_to_str:n {#1} }
@@ -264,11 +264,11 @@
% On Windows we do not have a single |mv| operation, so copy-and-delete
% instead.
% \begin{macrocode}
-\cs_new_protected:Npx \sys_shell_mv:nn #1#2
+\cs_new_protected:Npe \sys_shell_mv:nn #1#2
{
\sys_if_shell_unrestricted:T
{
- \sys_shell_now:x
+ \sys_shell_now:e
{
\sys_if_platform_unix:T
{
@@ -291,11 +291,11 @@
% \begin{macro}{\sys_shell_rm:n}
% Deletion: obviously a big health warning here!
% \begin{macrocode}
-\cs_new_protected:Npx \sys_shell_rm:n #1
+\cs_new_protected:Npe \sys_shell_rm:n #1
{
\sys_if_shell_unrestricted:T
{
- \sys_shell_now:x
+ \sys_shell_now:e
{
\sys_if_platform_unix:T
{ rm~-f~ \exp_not:N \tl_to_str:n {#1} }
@@ -311,12 +311,12 @@
% When removing a directory, we create it first as that avoids errors in
% the Windows case.
% \begin{macrocode}
-\cs_new_protected:Npx \sys_shell_rmdir:n #1
+\cs_new_protected:Npe \sys_shell_rmdir:n #1
{
\sys_if_shell_unrestricted:T
{
\sys_shell_mkdir:n {#1}
- \sys_shell_now:x
+ \sys_shell_now:e
{
\sys_if_platform_unix:T
{ rm~-rf~ \exp_not:N \tl_to_str:n {#1} }
@@ -341,7 +341,7 @@
% that does not require shell escape. However, it's hard to see how it might
% be useful without the other file functions.)
% \begin{macrocode}
-\cs_new_protected:Npx \sys_get_shell_pwd:N #1
+\cs_new_protected:Npe \sys_get_shell_pwd:N #1
{
\sys_if_shell_unrestricted:T
{
@@ -371,7 +371,7 @@
% just a case of tidying up. The listing always ends in |^^M| so there is an
% extra entry to trim.
% \begin{macrocode}
-\cs_new_protected:Npx \sys_shell_split_ls:nN #1#2
+\cs_new_protected:Npe \sys_shell_split_ls:nN #1#2
{
\sys_if_shell_unrestricted:T
{
diff --git a/macros/latex/contrib/l3experimental/l3sys-shell.pdf b/macros/latex/contrib/l3experimental/l3sys-shell.pdf
index fb739697fd..2416721b43 100644
--- a/macros/latex/contrib/l3experimental/l3sys-shell.pdf
+++ b/macros/latex/contrib/l3experimental/l3sys-shell.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/xcoffins.dtx b/macros/latex/contrib/l3experimental/xcoffins.dtx
index 97f1432be0..8e8a9f0ca1 100644
--- a/macros/latex/contrib/l3experimental/xcoffins.dtx
+++ b/macros/latex/contrib/l3experimental/xcoffins.dtx
@@ -53,7 +53,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -672,7 +672,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xcoffins}{2023-05-11}{}
+\ProvidesExplPackage{xcoffins}{2023-10-10}{}
{L3 Experimental design level coffins}
% \end{macrocode}
%
@@ -781,7 +781,7 @@
{
\group_begin:
\@@_design_names:N #1
- \use:x
+ \use:e
{
\group_end:
\coffin_set_horizontal_pole:Nnn #1
@@ -792,7 +792,7 @@
{
\group_begin:
\@@_design_names:N #1
- \use:x
+ \use:e
{
\group_end:
\coffin_set_vertical_pole:Nnn #1
@@ -831,7 +831,7 @@
{
\group_begin:
\keys_set:nn { coffin } {#1}
- \tl_set:Nx \l_@@_tmp_tl
+ \tl_set:Ne \l_@@_tmp_tl
{
\group_end:
\bool_if:NTF \l_@@_bound_box_grow_bool
diff --git a/macros/latex/contrib/l3experimental/xcoffins.pdf b/macros/latex/contrib/l3experimental/xcoffins.pdf
index f67094abd6..4e7d4f9a57 100644
--- a/macros/latex/contrib/l3experimental/xcoffins.pdf
+++ b/macros/latex/contrib/l3experimental/xcoffins.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3experimental/xgalley.dtx b/macros/latex/contrib/l3experimental/xgalley.dtx
index c7731b0b66..abda67cc7e 100644
--- a/macros/latex/contrib/l3experimental/xgalley.dtx
+++ b/macros/latex/contrib/l3experimental/xgalley.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-05-11}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -731,7 +731,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xgalley}{2023-05-11}{}
+\ProvidesExplPackage{xgalley}{2023-10-10}{}
{L3 Experimental galley}
\RequirePackage{xtemplate,l3galley}
% \end{macrocode}
@@ -1057,7 +1057,7 @@
stretch-last-line = \l_galley_par_stretch_last_bool
}
{
- \tl_put_left:Nx \l_@@_justification_other_tl
+ \tl_put_left:Ne \l_@@_justification_other_tl
{
\skip_set:Nn \exp_not:N \l_galley_par_end_skip
{ \skip_use:N \l_galley_par_end_skip }
@@ -1355,7 +1355,7 @@
% \begin{macrocode}
\tl_if_empty:NF \l_@@_interline_penalty_tl
{
- \tl_gput_right:Nx \g_galley_par_reset_hook_tl
+ \tl_gput_right:Ne \g_galley_par_reset_hook_tl
{
\int_set:Nn \exp_not:N \l_@@_interline_penalty_int
{ \galley_interline_penalty: }
@@ -1365,7 +1365,7 @@
}
\tl_if_empty:NF \l_@@_parbreak_fuzz_tl
{
- \tl_gput_right:Nx \g_galley_par_reset_hook_tl
+ \tl_gput_right:Ne \g_galley_par_reset_hook_tl
{
\dim_set:Nn \exp_not:N \l_galley_parbreak_fuzz_dim
{ \dim_use:N \l_galley_parbreak_fuzz_dim }
@@ -1380,7 +1380,7 @@
{
\tl_if_empty:cF { l_galley_ ##1 _tl }
{
- \tl_gput_right:Nx \g_galley_par_reset_hook_tl
+ \tl_gput_right:Ne \g_galley_par_reset_hook_tl
{
\int_set:Nn \exp_not:c { l_galley_ ##1 _int }
{ \int_use:c { l_galley_ ##1 _int } }
@@ -1399,7 +1399,7 @@
\tl_if_empty:cF { l_galley_ ##1 _tl }
{
\use:c { galley_save_ ##1 :N } \l_@@_tmpa_clist
- \tl_gput_right:Nx \g_galley_par_reset_hook_tl
+ \tl_gput_right:Ne \g_galley_par_reset_hook_tl
{
\exp_not:c { galley_set_ ##1 :n }
{ \exp_not:o \l_@@_tmpa_clist }
@@ -1486,22 +1486,22 @@
{
\tl_if_empty:NF \l_galley_display_begin_par_vpenalty_tl
{
- \tl_set:Nx \l_galley_display_begin_par_vpenalty_tl
+ \tl_set:Ne \l_galley_display_begin_par_vpenalty_tl
{ \int_eval:n { \l_galley_display_begin_par_vpenalty_tl } }
}
\tl_if_empty:NF \l_galley_display_begin_par_vspace_tl
{
- \tl_set:Nx \l_galley_display_begin_par_vspace_tl
+ \tl_set:Ne \l_galley_display_begin_par_vspace_tl
{ \skip_eval:n { \l_galley_display_begin_par_vspace_tl } }
}
\tl_if_empty:NF \l_galley_display_begin_vpenalty_tl
{
- \tl_set:Nx \l_galley_display_begin_vpenalty_tl
+ \tl_set:Ne \l_galley_display_begin_vpenalty_tl
{ \int_eval:n { \l_galley_display_begin_vpenalty_tl } }
}
\tl_if_empty:NF \l_galley_display_begin_vspace_tl
{
- \tl_set:Nx \l_galley_display_begin_vspace_tl
+ \tl_set:Ne \l_galley_display_begin_vspace_tl
{ \skip_eval:n { \l_galley_display_begin_vspace_tl } }
}
}
@@ -1515,22 +1515,22 @@
{
\tl_if_empty:NF \l_galley_display_end_par_vpenalty_tl
{
- \tl_set:Nx \l_galley_display_end_par_vpenalty_tl
+ \tl_set:Ne \l_galley_display_end_par_vpenalty_tl
{ \int_eval:n { \l_galley_display_end_par_vpenalty_tl } }
}
\tl_if_empty:NF \l_galley_display_end_par_vspace_tl
{
- \tl_set:Nx \l_galley_display_end_par_vspace_tl
+ \tl_set:Ne \l_galley_display_end_par_vspace_tl
{ \skip_eval:n { \l_galley_display_end_par_vspace_tl } }
}
\tl_if_empty:NF \l_galley_display_end_vpenalty_tl
{
- \tl_set:Nx \l_galley_display_end_vpenalty_tl
+ \tl_set:Ne \l_galley_display_end_vpenalty_tl
{ \int_eval:n { \l_galley_display_end_vpenalty_tl } }
}
\tl_if_empty:NF \l_galley_display_end_vspace_tl
{
- \tl_set:Nx \l_galley_display_end_vspace_tl
+ \tl_set:Ne \l_galley_display_end_vspace_tl
{ \skip_eval:n { \l_galley_display_end_vspace_tl } }
}
}
diff --git a/macros/latex/contrib/l3experimental/xgalley.pdf b/macros/latex/contrib/l3experimental/xgalley.pdf
index 8fbd8fb0a0..eacea34401 100644
--- a/macros/latex/contrib/l3experimental/xgalley.pdf
+++ b/macros/latex/contrib/l3experimental/xgalley.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/CHANGELOG.md b/macros/latex/contrib/l3kernel/CHANGELOG.md
index 43e0dce339..590abad03a 100644
--- a/macros/latex/contrib/l3kernel/CHANGELOG.md
+++ b/macros/latex/contrib/l3kernel/CHANGELOG.md
@@ -7,6 +7,32 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2023-10-10]
+
+### Added
+- `\iow_shipout_e:Nn`
+- Documentation for `\sys_if_timer_exist_p:` and `\sys_if_timer_exist:(TF)`.
+ They were supported since l3kernel 2021-05-25, along with `\sys_timer:`.
+- l3doc.dtx: Support for footnotes in the function and variable environment
+- Variants `\tl_if_single:c(TF)` and `\tl_if_single_p:c` (issue \#1272)
+- Key properties `.str_(g)set_e:N` and `.tl_(g)set_e:N`
+
+### Changed
+- Switch generally from `x`- to `e`-type variants
+- Convert `\file_if_exist:n(TF)` to expandable status,
+ adding predicate version
+- Standardise variants for `\prop_(g)pop:NnN(TF)`
+- Standardise variants for `\prop_(g)put:Nnn`
+- Standardise variants for `\prop_(g)put_if_new:Nnn`
+- Standardise variants for `\prop_(g)remove:Nn`
+
+### Deprecated
+- `\iow_shipout_x:Nn` in favor of `e`-type naming
+- Key properties `.str_(g)set_x:N` and `.tl_(g)set_x:N`
+
+### Fixed
+- Rare rounding error in divisions (issue \#1264)
+
## [2023-08-29]
### Added
@@ -1512,7 +1538,8 @@ this project uses date-based 'snapshot' version identifiers.
- Step functions have been added for dim variables,
e.g. `\dim_step_inline:nnnn`
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-08-29...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-10-10...HEAD
+[2023-10-10]: https://github.com/latex3/latex3/compare/2023-08-29...2023-10-10
[2023-08-29]: https://github.com/latex3/latex3/compare/2023-08-11...2023-08-29
[2023-08-11]: https://github.com/latex3/latex3/compare/2023-08-03...2023-08-11
[2023-08-03]: https://github.com/latex3/latex3/compare/2023-06-30...2023-08-03
diff --git a/macros/latex/contrib/l3kernel/README.md b/macros/latex/contrib/l3kernel/README.md
index 7afb055297..7b368819d5 100644
--- a/macros/latex/contrib/l3kernel/README.md
+++ b/macros/latex/contrib/l3kernel/README.md
@@ -1,7 +1,7 @@
LaTeX3 Programming Conventions
==============================
-Release 2023-08-29
+Release 2023-10-10
Overview
--------
diff --git a/macros/latex/contrib/l3kernel/expl3.dtx b/macros/latex/contrib/l3kernel/expl3.dtx
index 9adee097c5..ea13fbeacf 100644
--- a/macros/latex/contrib/l3kernel/expl3.dtx
+++ b/macros/latex/contrib/l3kernel/expl3.dtx
@@ -24,7 +24,7 @@
%
%<*driver|generic|package|2ekernel>
%</driver|generic|package|2ekernel>
-\def\ExplFileDate{2023-08-29}%
+\def\ExplFileDate{2023-10-10}%
%<*driver>
\documentclass[full]{l3doc}
\usepackage{graphicx}
@@ -51,7 +51,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -311,8 +311,9 @@
% or private.
%
% To allow clear separation of these two cases, the following convention
-% is used. Private functions should be defined with |__| added to the beginning
-% of the module name. Thus
+% is used. In private functions and variables, two |_| characters are
+% added to the start of the module name. On the other hand, public
+% interfaces to not have these two |_| character. Thus
% \begin{verbatim}
% \module_foo:nnn
% \end{verbatim}
@@ -323,8 +324,9 @@
% is private to the module, and should \emph{not} be used outside of that
% module.
%
-% Similarly, private variables should use |__| to separate scope and
-% module name, such that
+% For variables, to avoid three |_| in a row, the separator for the variable
+% scope and any leading |_| for a private interface in the module part are
+% combined. Thus
% \begin{verbatim}
% \l_module_foo_tl
% \end{verbatim}
@@ -334,12 +336,12 @@
% \end{verbatim}
% is private.
%
-% \subsubsection{Using \texttt{@@} and \pkg{l3docstrip} to mark private code}
+% \subsubsection{Using \texttt{@@} and \pkg{DocStrip} to mark private code}
%
% The formal syntax for internal functions allows clear separation of public
% and private code, but includes redundant information (every internal function
% or variable includes \texttt{__\meta{module}}). To aid programmers, the
-% \pkg{l3docstrip} program introduces the syntax
+% \pkg{DocStrip} program introduces the syntax
% \begin{quote}
% \ttfamily
% |%<@@=|\meta{module}|>|
@@ -354,7 +356,7 @@
% \tl_new:N \l_@@_my_tl
% % \end{macrocode}
% \end{verbatim}
-% is converted by \pkg{l3docstrip} to
+% is converted by \pkg{DocStrip} to
% \begin{verbatim}
% \cs_new:Npn \__foo_function:n #1
% ...
@@ -365,13 +367,6 @@
% distinguish variables from functions in the source when the |@@|
% convention is used.
%
-% Please note that you have to use the \pkg{l3docstrip} and
-% \textbf{not} the \pkg{docstrip} program in your \texttt{.ins} files
-% to make this work---the original \LaTeXe{} \pkg{docstrip} doesn't
-% understand the \texttt{@@} and will just copy it into your code
-% unmodified!
-%
-%
% \subsubsection{Variables: declaration}
%
% In well-formed \pkg{expl3} code, variables should always be declared before
@@ -653,20 +648,10 @@
% variables which have a \cs{\meta{var}_use:N} function (other than
% boxes), and which therefore deliver a single
% \enquote{value}.
-% \item[x] Fully-expanded token or braced token list.\\
-% This means that the argument is expanded as in the replacement
-% text of an~\tn{edef}, and the expansion is passed to the function as
-% a braced token list. Expansion takes place until only unexpandable
-% tokens are left. |x|-type arguments cannot be nested.
% \item[e] Fully-expanded token or braced token list.\\
-% This expansion is very similar to |x|-type but may be nested and does
-% not require that |#| tokens are doubled. It uses \tn{expanded} primitive.
-% \item[f] Expanding the first token recursively in a braced token
-% list.\\ Almost the same as the |x| type except here the token list
-% is expanded fully until the first unexpandable token is found and
-% the rest is left unchanged. Note that if this function finds a
-% space at the beginning of the argument it gobbles it and does not
-% expand the next token.
+% This means that the argument is expanded as in the replacement
+% text of a~\tn{message}, and the expansion is passed to the function as
+% a braced token list.
% \item[o] One-level-expanded token or braced token list.\\
% This means that the argument is expanded one level, as by
% \tn{expandafter}, and the expansion is passed to the function as a
@@ -674,6 +659,19 @@
% token list then only the first token in that list is expanded.
% In general, using \texttt{V} should be preferred to using
% \texttt{o} for simple variable retrieval.
+% \item[f] Expanding the first token recursively in a braced token
+% list.\\ Almost the same as the |e| type except here the token list
+% is expanded fully until the first unexpandable token is found and
+% the rest is left unchanged. Note that if this function finds a
+% space at the beginning of the argument it gobbles it and does not
+% expand the next token.
+% \item[x] Fully-expanded token or braced token list.\\
+% This expansion is very similar to |e|-type but is not nestable,
+% can only be used to create non-expandable functions, and requires
+% that |#| tokens are doubled in the argument. In almost all cases,
+% |e|-type should be preferred: retained largely for historical
+% reasons, and should where possible be replaced by the |e|-type
+% equivalent.
% \end{description}
%
% \subsection{Simpler means better}
@@ -761,17 +759,17 @@
%
% To illustrate this let us suppose you have a \enquote{base function}
% |\demo_cmd:Nnn| that takes three normal arguments, and that you need
-% to construct the variant |\demo_cmd:cnx|, for which the first argument
+% to construct the variant |\demo_cmd:cne|, for which the first argument
% is used to construct the \emph{name} of a command, whilst the third
% argument must be fully expanded before being passed to
% |\demo_cmd:Nnn|.
% To produce the variant form from the base form, simply use this:
% \begin{verbatim}
-% \cs_generate_variant:Nn \demo_cmd:Nnn { cnx }
+% \cs_generate_variant:Nn \demo_cmd:Nnn { cne }
% \end{verbatim}
% This defines the variant form so that you can then write, for example:
% \begin{verbatim}
-% \demo_cmd:cnx { abc } { pq } { \rst \xyz }
+% \demo_cmd:cne { abc } { pq } { \rst \xyz }
% \end{verbatim}
% rather than \ldots\ well, something like this!
% \begin{verbatim}
@@ -793,13 +791,13 @@
% \end{verbatim}
%
% Another example: you may wish to declare a function
-% |\demo_cmd_b:xcxcx|, a variant of an existing function
+% |\demo_cmd_b:enene|, a variant of an existing function
% |\demo_cmd_b:nnnnn|, that fully
% expands arguments 1,~3 and~5, and produces commands to pass as
% arguments 2 and~4 using~\tn{csname}.
% The definition you need is simply
% \begin{verbatim}
-% \cs_generate_variant:Nn \demo_cmd_b:nnnnn { xcxcx }
+% \cs_generate_variant:Nn \demo_cmd_b:nnnnn { enene }
% \end{verbatim}
%
% This extension mechanism is written so that if the same new form of
@@ -854,7 +852,7 @@
% \begin{itemize}
% \item \pkg{expl3} is mainly focused on programming. This means that
% some areas still require the use of \LaTeXe{} internal macros.
-% For example, you may well need \tn{@ifpackageloaded}, as there
+% For example, you may well need \tn{IfPackageLoadedTF}, as there
% is currently no native \pkg{expl3} package loading module.
% \item User level macros should be generated using the mechanism
% available in the \pkg{xparse} package, which is part of the
@@ -1541,12 +1539,12 @@
}
\cs_gset_protected:Npn \@expl@push@filename@@@@
{
- \exp_args:Nx \__kernel_file_input_push:n
+ \exp_args:Ne \__kernel_file_input_push:n
{
\tl_to_str:N \@currname .
\tl_to_str:N \@currext
}
- \tl_put_left:Nx \l_@@_status_stack_tl
+ \tl_put_left:Ne \l_@@_status_stack_tl
{
\bool_if:NTF \l__kernel_expl_bool
{ 1 }
@@ -1742,7 +1740,7 @@
\cs_set_protected:Npn \ProvidesExplFileAux ##1##2##3##4
{
\group_end:
- \iow_log:x { File:~##1~##2~v##3~##4 }
+ \iow_log:e { File:~##1~##2~v##3~##4 }
}
\tex_input:D #1 .def \scan_stop:
}
diff --git a/macros/latex/contrib/l3kernel/expl3.pdf b/macros/latex/contrib/l3kernel/expl3.pdf
index 33262bd828..af52bd35c0 100644
--- a/macros/latex/contrib/l3kernel/expl3.pdf
+++ b/macros/latex/contrib/l3kernel/expl3.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/interface3.pdf b/macros/latex/contrib/l3kernel/interface3.pdf
index 61d451cc9e..f8431c7347 100644
--- a/macros/latex/contrib/l3kernel/interface3.pdf
+++ b/macros/latex/contrib/l3kernel/interface3.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/interface3.tex b/macros/latex/contrib/l3kernel/interface3.tex
index 0198240396..79d4cec3e9 100644
--- a/macros/latex/contrib/l3kernel/interface3.tex
+++ b/macros/latex/contrib/l3kernel/interface3.tex
@@ -48,6 +48,8 @@ for those people who are interested.
{ \texttt{ \__codedoc_meta:n {#1} } }
\ExplSyntaxOff
+\newif\ifinterface
+\interfacetrue
\listfiles
@@ -62,7 +64,7 @@ for those people who are interested.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-08-29}
+\date{Released 2023-10-10}
\pagenumbering{roman}
\maketitle
diff --git a/macros/latex/contrib/l3kernel/l3basics.dtx b/macros/latex/contrib/l3kernel/l3basics.dtx
index 17cb2467bf..6b484105fe 100644
--- a/macros/latex/contrib/l3kernel/l3basics.dtx
+++ b/macros/latex/contrib/l3kernel/l3basics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -200,7 +200,12 @@
% \subsection{Defining new functions using parameter text}
% \label{sec:l3basics:defining-new-function-1}
%
-% \begin{function}{\cs_new:Npn, \cs_new:cpn, \cs_new:Npx, \cs_new:cpx}
+% \begin{function}
+% {
+% \cs_new:Npn, \cs_new:cpn,
+% \cs_new:Npe, \cs_new:cpe,
+% \cs_new:Npx, \cs_new:cpx
+% }
% \begin{syntax}
% \cs{cs_new:Npn} \meta{function} \meta{parameters} \Arg{code}
% \end{syntax}
@@ -214,6 +219,7 @@
% \begin{function}
% {
% \cs_new_nopar:Npn, \cs_new_nopar:cpn,
+% \cs_new_nopar:Npe, \cs_new_nopar:cpe,
% \cs_new_nopar:Npx, \cs_new_nopar:cpx
% }
% \begin{syntax}
@@ -230,6 +236,7 @@
% \begin{function}
% {
% \cs_new_protected:Npn, \cs_new_protected:cpn,
+% \cs_new_protected:Npe, \cs_new_protected:cpe,
% \cs_new_protected:Npx, \cs_new_protected:cpx
% }
% \begin{syntax}
@@ -247,6 +254,7 @@
% \begin{function}
% {
% \cs_new_protected_nopar:Npn, \cs_new_protected_nopar:cpn ,
+% \cs_new_protected_nopar:Npe, \cs_new_protected_nopar:cpe ,
% \cs_new_protected_nopar:Npx, \cs_new_protected_nopar:cpx
% }
% \begin{syntax}
@@ -261,7 +269,12 @@
% and an error results if the \meta{function} is already defined.
% \end{function}
%
-% \begin{function}{\cs_set:Npn, \cs_set:cpn, \cs_set:Npx, \cs_set:cpx}
+% \begin{function}
+% {
+% \cs_set:Npn, \cs_set:cpn,
+% \cs_set:Npe, \cs_set:cpe,
+% \cs_set:Npx, \cs_set:cpx
+% }
% \begin{syntax}
% \cs{cs_set:Npn} \meta{function} \meta{parameters} \Arg{code}
% \end{syntax}
@@ -275,6 +288,7 @@
% \begin{function}
% {
% \cs_set_nopar:Npn, \cs_set_nopar:cpn,
+% \cs_set_nopar:Npe, \cs_set_nopar:cpe,
% \cs_set_nopar:Npx, \cs_set_nopar:cpx
% }
% \begin{syntax}
@@ -292,6 +306,7 @@
% \begin{function}
% {
% \cs_set_protected:Npn, \cs_set_protected:cpn,
+% \cs_set_protected:Npe, \cs_set_protected:cpe,
% \cs_set_protected:Npx, \cs_set_protected:cpx
% }
% \begin{syntax}
@@ -308,6 +323,7 @@
% \begin{function}
% {
% \cs_set_protected_nopar:Npn, \cs_set_protected_nopar:cpn ,
+% \cs_set_protected_nopar:Npe, \cs_set_protected_nopar:cpe ,
% \cs_set_protected_nopar:Npx, \cs_set_protected_nopar:cpx ,
% }
% \begin{syntax}
@@ -323,7 +339,12 @@
% \texttt{x}-type or \texttt{e}-type argument.
% \end{function}
%
-% \begin{function}{\cs_gset:Npn, \cs_gset:cpn, \cs_gset:Npx, \cs_gset:cpx}
+% \begin{function}
+% {
+% \cs_gset:Npn, \cs_gset:cpn,
+% \cs_gset:Npe, \cs_gset:cpe,
+% \cs_gset:Npx, \cs_gset:cpx
+% }
% \begin{syntax}
% \cs{cs_gset:Npn} \meta{function} \meta{parameters} \Arg{code}
% \end{syntax}
@@ -338,6 +359,7 @@
% \begin{function}
% {
% \cs_gset_nopar:Npn, \cs_gset_nopar:cpn,
+% \cs_gset_nopar:Npe, \cs_gset_nopar:cpe,
% \cs_gset_nopar:Npx, \cs_gset_nopar:cpx
% }
% \begin{syntax}
@@ -355,6 +377,7 @@
% \begin{function}
% {
% \cs_gset_protected:Npn, \cs_gset_protected:cpn,
+% \cs_gset_protected:Npe, \cs_gset_protected:cpe,
% \cs_gset_protected:Npx, \cs_gset_protected:cpx
% }
% \begin{syntax}
@@ -372,6 +395,7 @@
% \begin{function}
% {
% \cs_gset_protected_nopar:Npn, \cs_gset_protected_nopar:cpn,
+% \cs_gset_protected_nopar:Npe, \cs_gset_protected_nopar:cpe,
% \cs_gset_protected_nopar:Npx, \cs_gset_protected_nopar:cpx
% }
% \begin{syntax}
@@ -393,7 +417,7 @@
% \begin{function}
% {
% \cs_new:Nn, \cs_new:cn,
-% \cs_new:Nx, \cs_new:cx
+% \cs_new:Ne, \cs_new:ce
% }
% \begin{syntax}
% \cs{cs_new:Nn} \meta{function} \Arg{code}
@@ -409,7 +433,7 @@
% \begin{function}
% {
% \cs_new_nopar:Nn, \cs_new_nopar:cn,
-% \cs_new_nopar:Nx, \cs_new_nopar:cx
+% \cs_new_nopar:Ne, \cs_new_nopar:ce
% }
% \begin{syntax}
% \cs{cs_new_nopar:Nn} \meta{function} \Arg{code}
@@ -426,7 +450,7 @@
% \begin{function}
% {
% \cs_new_protected:Nn, \cs_new_protected:cn,
-% \cs_new_protected:Nx, \cs_new_protected:cx
+% \cs_new_protected:Ne, \cs_new_protected:ce
% }
% \begin{syntax}
% \cs{cs_new_protected:Nn} \meta{function} \Arg{code}
@@ -443,7 +467,7 @@
% \begin{function}
% {
% \cs_new_protected_nopar:Nn, \cs_new_protected_nopar:cn,
-% \cs_new_protected_nopar:Nx, \cs_new_protected_nopar:cx
+% \cs_new_protected_nopar:Ne, \cs_new_protected_nopar:ce
% }
% \begin{syntax}
% \cs{cs_new_protected_nopar:Nn} \meta{function} \Arg{code}
@@ -461,7 +485,7 @@
% \begin{function}
% {
% \cs_set:Nn, \cs_set:cn,
-% \cs_set:Nx, \cs_set:cx
+% \cs_set:Ne, \cs_set:ce
% }
% \begin{syntax}
% \cs{cs_set:Nn} \meta{function} \Arg{code}
@@ -478,7 +502,7 @@
% \begin{function}
% {
% \cs_set_nopar:Nn, \cs_set_nopar:cn,
-% \cs_set_nopar:Nx, \cs_set_nopar:cx
+% \cs_set_nopar:Ne, \cs_set_nopar:ce
% }
% \begin{syntax}
% \cs{cs_set_nopar:Nn} \meta{function} \Arg{code}
@@ -496,7 +520,7 @@
% \begin{function}
% {
% \cs_set_protected:Nn, \cs_set_protected:cn,
-% \cs_set_protected:Nx, \cs_set_protected:cx
+% \cs_set_protected:Ne, \cs_set_protected:ce
% }
% \begin{syntax}
% \cs{cs_set_protected:Nn} \meta{function} \Arg{code}
@@ -514,7 +538,7 @@
% \begin{function}
% {
% \cs_set_protected_nopar:Nn, \cs_set_protected_nopar:cn,
-% \cs_set_protected_nopar:Nx, \cs_set_protected_nopar:cx
+% \cs_set_protected_nopar:Ne, \cs_set_protected_nopar:ce
% }
% \begin{syntax}
% \cs{cs_set_protected_nopar:Nn} \meta{function} \Arg{code}
@@ -533,7 +557,7 @@
% \begin{function}
% {
% \cs_gset:Nn, \cs_gset:cn,
-% \cs_gset:Nx, \cs_gset:cx
+% \cs_gset:Ne, \cs_gset:ce
% }
% \begin{syntax}
% \cs{cs_gset:Nn} \meta{function} \Arg{code}
@@ -549,7 +573,7 @@
% \begin{function}
% {
% \cs_gset_nopar:Nn, \cs_gset_nopar:cn,
-% \cs_gset_nopar:Nx, \cs_gset_nopar:cx
+% \cs_gset_nopar:Ne, \cs_gset_nopar:ce
% }
% \begin{syntax}
% \cs{cs_gset_nopar:Nn} \meta{function} \Arg{code}
@@ -566,7 +590,7 @@
% \begin{function}
% {
% \cs_gset_protected:Nn, \cs_gset_protected:cn,
-% \cs_gset_protected:Nx, \cs_gset_protected:cx
+% \cs_gset_protected:Ne, \cs_gset_protected:ce
% }
% \begin{syntax}
% \cs{cs_gset_protected:Nn} \meta{function} \Arg{code}
@@ -583,7 +607,7 @@
% \begin{function}
% {
% \cs_gset_protected_nopar:Nn, \cs_gset_protected_nopar:cn,
-% \cs_gset_protected_nopar:Nx, \cs_gset_protected_nopar:cx
+% \cs_gset_protected_nopar:Ne, \cs_gset_protected_nopar:ce
% }
% \begin{syntax}
% \cs{cs_gset_protected_nopar:Nn} \meta{function} \Arg{code}
@@ -1034,15 +1058,6 @@
% \end{texnote}
% \end{function}
%
-% \begin{function}[updated = 2011-12-31]{\use:x}
-% \begin{syntax}
-% \cs{use:x} \Arg{expandable tokens}
-% \end{syntax}
-% Fully expands the \meta{expandable tokens} and inserts the
-% result into the input stream at the current location.
-% Any hash characters (|#|) in the argument must be doubled.
-% \end{function}
-%
% \subsection{Selecting tokens from delimited arguments}
%
% A different kind of function for selecting tokens from the token
@@ -1520,55 +1535,63 @@
%
% \begin{macro}
% {
-% \cs_set_nopar:Npn , \cs_set_nopar:Npx ,
-% \cs_set:Npn , \cs_set:Npx ,
-% \cs_set_protected_nopar:Npn , \cs_set_protected_nopar:Npx ,
-% \cs_set_protected:Npn , \cs_set_protected:Npx
+% \cs_set_nopar:Npn , \cs_set_nopar:Npe , \cs_set_nopar:Npx ,
+% \cs_set:Npn , \cs_set:Npe , \cs_set:Npx ,
+% \cs_set_protected_nopar:Npn , \cs_set_protected_nopar:Npe , \cs_set_protected_nopar:Npx ,
+% \cs_set_protected:Npn , \cs_set_protected:Npe , \cs_set_protected:Npx
% }
% All assignment functions in \LaTeX3 should be naturally protected;
% after all, the \TeX{} primitives for assignments are and it can be
% a cause of problems if others aren't.
% \begin{macrocode}
\tex_let:D \cs_set_nopar:Npn \tex_def:D
+\tex_let:D \cs_set_nopar:Npe \tex_edef:D
\tex_let:D \cs_set_nopar:Npx \tex_edef:D
\tex_protected:D \tex_long:D \tex_def:D \cs_set:Npn
{ \tex_long:D \tex_def:D }
-\tex_protected:D \tex_long:D \tex_def:D \cs_set:Npx
+\tex_protected:D \tex_long:D \tex_def:D \cs_set:Npe
{ \tex_long:D \tex_edef:D }
+\tex_let:D \cs_set:Npx \cs_set:Npe
\tex_protected:D \tex_long:D \tex_def:D \cs_set_protected_nopar:Npn
{ \tex_protected:D \tex_def:D }
-\tex_protected:D \tex_long:D \tex_def:D \cs_set_protected_nopar:Npx
+\tex_protected:D \tex_long:D \tex_def:D \cs_set_protected_nopar:Npe
{ \tex_protected:D \tex_edef:D }
+\tex_let:D \cs_set_protected_nopar:Npx \cs_set_protected_nopar:Npe
\tex_protected:D \tex_long:D \tex_def:D \cs_set_protected:Npn
{ \tex_protected:D \tex_long:D \tex_def:D }
-\tex_protected:D \tex_long:D \tex_def:D \cs_set_protected:Npx
+\tex_protected:D \tex_long:D \tex_def:D \cs_set_protected:Npe
{ \tex_protected:D \tex_long:D \tex_edef:D }
+\tex_let:D \cs_set_protected:Npx \cs_set_protected:Npe
% \end{macrocode}
% \end{macro}
%
% \begin{macro}
% {
-% \cs_gset_nopar:Npn , \cs_gset_nopar:Npx ,
-% \cs_gset:Npn , \cs_gset:Npx ,
-% \cs_gset_protected_nopar:Npn , \cs_gset_protected_nopar:Npx ,
-% \cs_gset_protected:Npn , \cs_gset_protected:Npx
+% \cs_gset_nopar:Npn , \cs_gset_nopar:Npe , \cs_gset_nopar:Npx ,
+% \cs_gset:Npn , \cs_gset:Npe , \cs_gset:Npx ,
+% \cs_gset_protected_nopar:Npn , \cs_gset_protected_nopar:Npe , \cs_gset_protected_nopar:Npx ,
+% \cs_gset_protected:Npn , \cs_gset_protected:Npe , \cs_gset_protected:Npx
% }
% Global versions of the above functions.
% \begin{macrocode}
\tex_let:D \cs_gset_nopar:Npn \tex_gdef:D
+\tex_let:D \cs_gset_nopar:Npe \tex_xdef:D
\tex_let:D \cs_gset_nopar:Npx \tex_xdef:D
\cs_set_protected:Npn \cs_gset:Npn
{ \tex_long:D \tex_gdef:D }
-\cs_set_protected:Npn \cs_gset:Npx
+\cs_set_protected:Npn \cs_gset:Npe
{ \tex_long:D \tex_xdef:D }
+\tex_let:D \cs_gset:Npx \cs_gset:Npe
\cs_set_protected:Npn \cs_gset_protected_nopar:Npn
{ \tex_protected:D \tex_gdef:D }
-\cs_set_protected:Npn \cs_gset_protected_nopar:Npx
+\cs_set_protected:Npn \cs_gset_protected_nopar:Npe
{ \tex_protected:D \tex_xdef:D }
+\tex_let:D \cs_gset_protected_nopar:Npx \cs_gset_protected_nopar:Npe
\cs_set_protected:Npn \cs_gset_protected:Npn
{ \tex_protected:D \tex_long:D \tex_gdef:D }
-\cs_set_protected:Npn \cs_gset_protected:Npx
+\cs_set_protected:Npn \cs_gset_protected:Npe
{ \tex_protected:D \tex_long:D \tex_xdef:D }
+\tex_let:D \cs_gset_protected:Npx \cs_gset_protected:Npe
% \end{macrocode}
% \end{macro}
%
@@ -1921,7 +1944,7 @@
{ \@@_generate_conditional_parm:NNNpnn \cs_new_protected:Npn p }
\cs_set_protected:Npn \@@_generate_conditional_parm:NNNpnn #1#2#3#4#
{
- \use:x
+ \use:e
{
\@@_generate_conditional:nnNNNnnn
\cs_split_function:N #3
@@ -1973,7 +1996,7 @@
{ \@@_generate_conditional_count:NNNnn \cs_new_protected:Npn p }
\cs_set_protected:Npn \@@_generate_conditional_count:NNNnn #1#2#3
{
- \use:x
+ \use:e
{
\@@_generate_conditional_count:nnNNNnn
\cs_split_function:N #3
@@ -1986,7 +2009,7 @@
{ \@@_generate_conditional:nnNNNnnn {#1} {#2} #3 #4 #5 }
{ \tl_count:n {#2} }
{
- \msg_error:nnxx { kernel } { bad-number-of-arguments }
+ \msg_error:nnee { kernel } { bad-number-of-arguments }
{ \token_to_str:c { #1 : #2 } }
{ \tl_count:n {#2} }
\use_none:nn
@@ -2024,11 +2047,11 @@
\cs_set_protected:Npn \@@_generate_conditional:nnNNNnnn #1#2#3#4#5#6#7#8
{
\if_meaning:w \c_false_bool #3
- \msg_error:nnx { kernel } { missing-colon }
+ \msg_error:nne { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\exp_after:wN \use_none:nn
\fi:
- \use:x
+ \use:e
{
\exp_not:N \@@_generate_conditional:NNnnnnNw
\exp_not:n { #4 #5 {#1} {#2} {#6} }
@@ -2064,7 +2087,7 @@
\use:c { @@_generate_ #8 _form:wNNnnnnN }
\tl_if_empty:nF {#8}
{
- \msg_error:nnxx
+ \msg_error:nnee
{ kernel } { conditional-form-unknown }
{#8} { \token_to_str:c { #3 : #4 } }
}
@@ -2118,7 +2141,7 @@
{ #7 \@@_p_true:w \fi: \c_false_bool }
}
{
- \msg_error:nnx { kernel } { protected-predicate }
+ \msg_error:nne { kernel } { protected-predicate }
{ \token_to_str:c { #4 _p: #5 } }
}
}
@@ -2176,7 +2199,7 @@
{ \@@_set_eq_conditional:NNNn \cs_new_eq:cc }
\cs_set_protected:Npn \@@_set_eq_conditional:NNNn #1#2#3#4
{
- \use:x
+ \use:e
{
\exp_not:N \@@_set_eq_conditional:nnNnnNNw
\cs_split_function:N #2
@@ -2216,12 +2239,12 @@
\cs_set_protected:Npn \@@_set_eq_conditional:nnNnnNNw #1#2#3#4#5#6
{
\if_meaning:w \c_false_bool #3
- \msg_error:nnx { kernel } { missing-colon }
+ \msg_error:nne { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\exp_after:wN \@@_use_none_delimit_by_q_recursion_stop:w
\fi:
\if_meaning:w \c_false_bool #6
- \msg_error:nnx { kernel } { missing-colon }
+ \msg_error:nne { kernel } { missing-colon }
{ \token_to_str:c {#4} }
\exp_after:wN \@@_use_none_delimit_by_q_recursion_stop:w
\fi:
@@ -2235,7 +2258,7 @@
\use:c { @@_set_eq_conditional_ #6 _form:wNnnnn }
\tl_if_empty:nF {#6}
{
- \msg_error:nnxx
+ \msg_error:nnee
{ kernel } { conditional-form-unknown }
{#6} { \token_to_str:c { #1 : #2 } }
}
@@ -2554,14 +2577,14 @@
% only temporary, they will be redefined later on.
%
% \begin{macro}
-% {\msg_error:nnxx, \msg_error:nnx, \msg_error:nn}
+% {\msg_error:nnee, \msg_error:nne, \msg_error:nn}
% If an internal error occurs before \LaTeX3 has loaded \pkg{l3msg} then
% the code should issue a usable if terse error message and halt. This
% can only happen if a coding error is made by the team, so this is
% a reasonable response. Setting the \tn{newlinechar} is needed, to
% turn |^^J| into a proper line break in plain \TeX{}.
% \begin{macrocode}
-\cs_set_protected:Npn \msg_error:nnxx #1#2#3#4
+\cs_set_protected:Npn \msg_error:nnee #1#2#3#4
{
\tex_newlinechar:D = `\^^J \scan_stop:
\tex_errmessage:D
@@ -2574,10 +2597,10 @@
}
\tex_end:D
}
-\cs_set_protected:Npn \msg_error:nnx #1#2#3
- { \msg_error:nnxx {#1} {#2} {#3} { } }
+\cs_set_protected:Npn \msg_error:nne #1#2#3
+ { \msg_error:nnee {#1} {#2} {#3} { } }
\cs_set_protected:Npn \msg_error:nn #1#2
- { \msg_error:nnxx {#1} {#2} { } { } }
+ { \msg_error:nnee {#1} {#2} { } { } }
% \end{macrocode}
% \end{macro}
%
@@ -2589,14 +2612,14 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}[documented-as=\iow_log:n]{\iow_log:x, \iow_term:x}
+% \begin{macro}[documented-as=\iow_log:n]{\iow_log:e, \iow_term:e}
% We define a routine to write only to the log file. And a
% similar one for writing to both the log file and the terminal.
-% These will be redefined later by \pkg{l3io}.
+% These will be redefined later by \pkg{l3file}.
% \begin{macrocode}
-\cs_set_protected:Npn \iow_log:x
+\cs_set_protected:Npn \iow_log:e
{ \tex_immediate:D \tex_write:D -1 }
-\cs_set_protected:Npn \iow_term:x
+\cs_set_protected:Npn \iow_term:e
{ \tex_immediate:D \tex_write:D 16 }
% \end{macrocode}
% \end{macro}
@@ -2614,7 +2637,7 @@
{
\cs_if_free:NF #1
{
- \msg_error:nnxx { kernel } { command-already-defined }
+ \msg_error:nnee { kernel } { command-already-defined }
{ \token_to_str:N #1 } { \token_to_meaning:N #1 }
}
}
@@ -2631,10 +2654,10 @@
%
% \begin{macro}
% {
-% \cs_new_nopar:Npn , \cs_new_nopar:Npx ,
-% \cs_new:Npn , \cs_new:Npx ,
-% \cs_new_protected_nopar:Npn , \cs_new_protected_nopar:Npx ,
-% \cs_new_protected:Npn , \cs_new_protected:Npx
+% \cs_new_nopar:Npn , \cs_new_nopar:Npe , \cs_new_nopar:Npx ,
+% \cs_new:Npn , \cs_new:Npe , \cs_new:Npx ,
+% \cs_new_protected_nopar:Npn , \cs_new_protected_nopar:Npe , \cs_new_protected_nopar:Npx ,
+% \cs_new_protected:Npn , \cs_new_protected:Npe , \cs_new_protected:Npx
% }
% \begin{macro}{\@@_tmp:w}
% Function which check that the control sequence is free before
@@ -2649,12 +2672,16 @@
}
}
\@@_tmp:w \cs_new_nopar:Npn \cs_gset_nopar:Npn
+\@@_tmp:w \cs_new_nopar:Npe \cs_gset_nopar:Npe
\@@_tmp:w \cs_new_nopar:Npx \cs_gset_nopar:Npx
\@@_tmp:w \cs_new:Npn \cs_gset:Npn
+\@@_tmp:w \cs_new:Npe \cs_gset:Npe
\@@_tmp:w \cs_new:Npx \cs_gset:Npx
\@@_tmp:w \cs_new_protected_nopar:Npn \cs_gset_protected_nopar:Npn
+\@@_tmp:w \cs_new_protected_nopar:Npe \cs_gset_protected_nopar:Npe
\@@_tmp:w \cs_new_protected_nopar:Npx \cs_gset_protected_nopar:Npx
\@@_tmp:w \cs_new_protected:Npn \cs_gset_protected:Npn
+\@@_tmp:w \cs_new_protected:Npe \cs_gset_protected:Npe
\@@_tmp:w \cs_new_protected:Npx \cs_gset_protected:Npx
% \end{macrocode}
% \end{macro}
@@ -2662,9 +2689,9 @@
%
% \begin{macro}[documented-as=\cs_set_nopar:Npn]
% {
-% \cs_set_nopar:cpn , \cs_set_nopar:cpx ,
-% \cs_gset_nopar:cpn , \cs_gset_nopar:cpx ,
-% \cs_new_nopar:cpn , \cs_new_nopar:cpx
+% \cs_set_nopar:cpn , \cs_set_nopar:cpe , \cs_set_nopar:cpx ,
+% \cs_gset_nopar:cpn , \cs_gset_nopar:cpe , \cs_gset_nopar:cpx ,
+% \cs_new_nopar:cpn , \cs_new_nopar:cpe , \cs_new_nopar:cpx
% }
% Like \cs{cs_set_nopar:Npn} and \cs{cs_new_nopar:Npn}, except that the
% first argument consists of the sequence of characters that should
@@ -2680,64 +2707,76 @@
\cs_set:Npn \@@_tmp:w #1#2
{ \cs_new_protected_nopar:Npn #1 { \exp_args:Nc #2 } }
\@@_tmp:w \cs_set_nopar:cpn \cs_set_nopar:Npn
+\@@_tmp:w \cs_set_nopar:cpe \cs_set_nopar:Npe
\@@_tmp:w \cs_set_nopar:cpx \cs_set_nopar:Npx
\@@_tmp:w \cs_gset_nopar:cpn \cs_gset_nopar:Npn
+\@@_tmp:w \cs_gset_nopar:cpe \cs_gset_nopar:Npe
\@@_tmp:w \cs_gset_nopar:cpx \cs_gset_nopar:Npx
\@@_tmp:w \cs_new_nopar:cpn \cs_new_nopar:Npn
+\@@_tmp:w \cs_new_nopar:cpe \cs_new_nopar:Npe
\@@_tmp:w \cs_new_nopar:cpx \cs_new_nopar:Npx
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[documented-as=\cs_set:Npn]
% {
-% \cs_set:cpn , \cs_set:cpx ,
-% \cs_gset:cpn , \cs_gset:cpx ,
-% \cs_new:cpn , \cs_new:cpx
+% \cs_set:cpn , \cs_set:cpe , \cs_set:cpx ,
+% \cs_gset:cpn , \cs_gset:cpe , \cs_gset:cpx ,
+% \cs_new:cpn , \cs_new:cpe , \cs_new:cpx
% }
% Variants of the \cs{cs_set:Npn} versions which make a csname out
% of the first arguments. We may also do this globally.
% \begin{macrocode}
\@@_tmp:w \cs_set:cpn \cs_set:Npn
+\@@_tmp:w \cs_set:cpe \cs_set:Npe
\@@_tmp:w \cs_set:cpx \cs_set:Npx
\@@_tmp:w \cs_gset:cpn \cs_gset:Npn
+\@@_tmp:w \cs_gset:cpe \cs_gset:Npe
\@@_tmp:w \cs_gset:cpx \cs_gset:Npx
\@@_tmp:w \cs_new:cpn \cs_new:Npn
+\@@_tmp:w \cs_new:cpe \cs_new:Npe
\@@_tmp:w \cs_new:cpx \cs_new:Npx
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[documented-as=\cs_set_protected_nopar:Npn]
% {
-% \cs_set_protected_nopar:cpn , \cs_set_protected_nopar:cpx ,
-% \cs_gset_protected_nopar:cpn , \cs_gset_protected_nopar:cpx ,
-% \cs_new_protected_nopar:cpn , \cs_new_protected_nopar:cpx
+% \cs_set_protected_nopar:cpn , \cs_set_protected_nopar:cpe , \cs_set_protected_nopar:cpx ,
+% \cs_gset_protected_nopar:cpn , \cs_gset_protected_nopar:cpe , \cs_gset_protected_nopar:cpx ,
+% \cs_new_protected_nopar:cpn , \cs_new_protected_nopar:cpe , \cs_new_protected_nopar:cpx
% }
% Variants of the \cs{cs_set_protected_nopar:Npn} versions which make
% a csname out of the first arguments. We may also do this globally.
% \begin{macrocode}
\@@_tmp:w \cs_set_protected_nopar:cpn \cs_set_protected_nopar:Npn
+\@@_tmp:w \cs_set_protected_nopar:cpe \cs_set_protected_nopar:Npe
\@@_tmp:w \cs_set_protected_nopar:cpx \cs_set_protected_nopar:Npx
\@@_tmp:w \cs_gset_protected_nopar:cpn \cs_gset_protected_nopar:Npn
+\@@_tmp:w \cs_gset_protected_nopar:cpe \cs_gset_protected_nopar:Npe
\@@_tmp:w \cs_gset_protected_nopar:cpx \cs_gset_protected_nopar:Npx
\@@_tmp:w \cs_new_protected_nopar:cpn \cs_new_protected_nopar:Npn
+\@@_tmp:w \cs_new_protected_nopar:cpe \cs_new_protected_nopar:Npe
\@@_tmp:w \cs_new_protected_nopar:cpx \cs_new_protected_nopar:Npx
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[documented-as=\cs_set_protected:Npn]
% {
-% \cs_set_protected:cpn , \cs_set_protected:cpx ,
-% \cs_gset_protected:cpn , \cs_gset_protected:cpx ,
-% \cs_new_protected:cpn , \cs_new_protected:cpx
+% \cs_set_protected:cpn , \cs_set_protected:cpe , \cs_set_protected:cpx ,
+% \cs_gset_protected:cpn , \cs_gset_protected:cpe , \cs_gset_protected:cpx ,
+% \cs_new_protected:cpn , \cs_new_protected:cpe , \cs_new_protected:cpx
% }
% Variants of the \cs{cs_set_protected:Npn} versions which make a csname
% out of the first arguments. We may also do this globally.
% \begin{macrocode}
\@@_tmp:w \cs_set_protected:cpn \cs_set_protected:Npn
+\@@_tmp:w \cs_set_protected:cpe \cs_set_protected:Npe
\@@_tmp:w \cs_set_protected:cpx \cs_set_protected:Npx
\@@_tmp:w \cs_gset_protected:cpn \cs_gset_protected:Npn
+\@@_tmp:w \cs_gset_protected:cpe \cs_gset_protected:Npe
\@@_tmp:w \cs_gset_protected:cpx \cs_gset_protected:Npx
\@@_tmp:w \cs_new_protected:cpn \cs_new_protected:Npn
+\@@_tmp:w \cs_new_protected:cpe \cs_new_protected:Npe
\@@_tmp:w \cs_new_protected:cpx \cs_new_protected:Npx
% \end{macrocode}
% \end{macro}
@@ -2827,7 +2866,7 @@
% \begin{macrocode}
\cs_set_protected:Npn \__kernel_cs_parm_from_arg_count:nnF #1#2
{
- \exp_args:Nx \@@_parm_from_arg_count_test:nnF
+ \exp_args:Ne \@@_parm_from_arg_count_test:nnF
{
\exp_after:wN \exp_not:n
\if_case:w \int_eval:n {#2}
@@ -2914,7 +2953,7 @@
{
\__kernel_cs_parm_from_arg_count:nnF { \use:nnn #2 #1 } {#3}
{
- \msg_error:nnxx { kernel } { bad-number-of-arguments }
+ \msg_error:nnee { kernel } { bad-number-of-arguments }
{ \token_to_str:N #1 } { \int_eval:n {#3} }
\use_none:n
}
@@ -2944,18 +2983,18 @@
%
% \begin{macro}
% {
-% \cs_set:Nn , \cs_set:Nx ,
-% \cs_set_nopar:Nn , \cs_set_nopar:Nx ,
-% \cs_set_protected:Nn , \cs_set_protected:Nx ,
-% \cs_set_protected_nopar:Nn , \cs_set_protected_nopar:Nx ,
-% \cs_gset:Nn , \cs_gset:Nx ,
-% \cs_gset_nopar:Nn , \cs_gset_nopar:Nx ,
-% \cs_gset_protected:Nn , \cs_gset_protected:Nx ,
-% \cs_gset_protected_nopar:Nn , \cs_gset_protected_nopar:Nx ,
-% \cs_new:Nn , \cs_new:Nx ,
-% \cs_new_nopar:Nn , \cs_new_nopar:Nx ,
-% \cs_new_protected:Nn , \cs_new_protected:Nx ,
-% \cs_new_protected_nopar:Nn , \cs_new_protected_nopar:Nx ,
+% \cs_set:Nn , \cs_set:Ne , \cs_set:Nx ,
+% \cs_set_nopar:Nn , \cs_set_nopar:Ne , \cs_set_nopar:Nx ,
+% \cs_set_protected:Nn , \cs_set_protected:Ne , \cs_set_protected:Nx ,
+% \cs_set_protected_nopar:Nn , \cs_set_protected_nopar:Ne , \cs_set_protected_nopar:Nx ,
+% \cs_gset:Nn , \cs_gset:Ne , \cs_gset:Nx ,
+% \cs_gset_nopar:Nn , \cs_gset_nopar:Ne , \cs_gset_nopar:Nx ,
+% \cs_gset_protected:Nn , \cs_gset_protected:Ne , \cs_gset_protected:Nx ,
+% \cs_gset_protected_nopar:Nn , \cs_gset_protected_nopar:Ne , \cs_gset_protected_nopar:Nx ,
+% \cs_new:Nn , \cs_new:Ne , \cs_new:Nx ,
+% \cs_new_nopar:Nn , \cs_new_nopar:Ne , \cs_new_nopar:Nx ,
+% \cs_new_protected:Nn , \cs_new_protected:Ne , \cs_new_protected:Nx ,
+% \cs_new_protected_nopar:Nn , \cs_new_protected_nopar:Ne , \cs_new_protected_nopar:Nx ,
% }
% We want to define \cs{cs_set:Nn} as
% \begin{verbatim}
@@ -2980,7 +3019,7 @@
}
\cs_new_protected:Npn \@@_generate_from_signature:NNn #1#2
{
- \use:x
+ \use:e
{
\@@_generate_from_signature:nnNNNn
\cs_split_function:N #2
@@ -2995,14 +3034,14 @@
{ \tl_map_function:nN {#2} \@@_generate_from_signature:n }
\tl_if_empty:oF \@@_tmp:w
{
- \msg_error:nnxxx { kernel } { non-base-function }
+ \msg_error:nneee { kernel } { non-base-function }
{ \token_to_str:N #5 } {#2} { \@@_tmp:w }
}
\cs_generate_from_arg_count:NNnn
#5 #4 { \tl_count:n {#2} } {#6}
}
{
- \msg_error:nnx { kernel } { missing-colon }
+ \msg_error:nne { kernel } { missing-colon }
{ \token_to_str:N #5 }
}
}
@@ -3015,46 +3054,58 @@
% Then we define the 24 variants beginning with |N|.
% \begin{macrocode}
\@@_tmp:w { set } { Nn } { Npn }
+\@@_tmp:w { set } { Ne } { Npe }
\@@_tmp:w { set } { Nx } { Npx }
\@@_tmp:w { set_nopar } { Nn } { Npn }
+\@@_tmp:w { set_nopar } { Ne } { Npe }
\@@_tmp:w { set_nopar } { Nx } { Npx }
\@@_tmp:w { set_protected } { Nn } { Npn }
+\@@_tmp:w { set_protected } { Ne } { Npe }
\@@_tmp:w { set_protected } { Nx } { Npx }
\@@_tmp:w { set_protected_nopar } { Nn } { Npn }
+\@@_tmp:w { set_protected_nopar } { Ne } { Npe }
\@@_tmp:w { set_protected_nopar } { Nx } { Npx }
\@@_tmp:w { gset } { Nn } { Npn }
+\@@_tmp:w { gset } { Ne } { Npe }
\@@_tmp:w { gset } { Nx } { Npx }
\@@_tmp:w { gset_nopar } { Nn } { Npn }
+\@@_tmp:w { gset_nopar } { Ne } { Npe }
\@@_tmp:w { gset_nopar } { Nx } { Npx }
\@@_tmp:w { gset_protected } { Nn } { Npn }
+\@@_tmp:w { gset_protected } { Ne } { Npe }
\@@_tmp:w { gset_protected } { Nx } { Npx }
\@@_tmp:w { gset_protected_nopar } { Nn } { Npn }
+\@@_tmp:w { gset_protected_nopar } { Ne } { Npe }
\@@_tmp:w { gset_protected_nopar } { Nx } { Npx }
\@@_tmp:w { new } { Nn } { Npn }
+\@@_tmp:w { new } { Ne } { Npe }
\@@_tmp:w { new } { Nx } { Npx }
\@@_tmp:w { new_nopar } { Nn } { Npn }
+\@@_tmp:w { new_nopar } { Ne } { Npe }
\@@_tmp:w { new_nopar } { Nx } { Npx }
\@@_tmp:w { new_protected } { Nn } { Npn }
+\@@_tmp:w { new_protected } { Ne } { Npe }
\@@_tmp:w { new_protected } { Nx } { Npx }
\@@_tmp:w { new_protected_nopar } { Nn } { Npn }
+\@@_tmp:w { new_protected_nopar } { Ne } { Npe }
\@@_tmp:w { new_protected_nopar } { Nx } { Npx }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[documented-as=\cs_set:Nn]
% {
-% \cs_set:cn , \cs_set:cx ,
-% \cs_set_nopar:cn , \cs_set_nopar:cx ,
-% \cs_set_protected:cn , \cs_set_protected:cx ,
-% \cs_set_protected_nopar:cn , \cs_set_protected_nopar:cx ,
-% \cs_gset:cn , \cs_gset:cx ,
-% \cs_gset_nopar:cn , \cs_gset_nopar:cx ,
-% \cs_gset_protected:cn , \cs_gset_protected:cx ,
-% \cs_gset_protected_nopar:cn , \cs_gset_protected_nopar:cx ,
-% \cs_new:cn , \cs_new:cx ,
-% \cs_new_nopar:cn , \cs_new_nopar:cx ,
-% \cs_new_protected:cn , \cs_new_protected:cx ,
-% \cs_new_protected_nopar:cn , \cs_new_protected_nopar:cx ,
+% \cs_set:cn , \cs_set:ce , \cs_set:cx ,
+% \cs_set_nopar:cn , \cs_set_nopar:ce , \cs_set_nopar:cx ,
+% \cs_set_protected:cn , \cs_set_protected:ce , \cs_set_protected:cx ,
+% \cs_set_protected_nopar:cn , \cs_set_protected_nopar:ce , \cs_set_protected_nopar:cx ,
+% \cs_gset:cn , \cs_gset:ce , \cs_gset:cx ,
+% \cs_gset_nopar:cn , \cs_gset_nopar:ce , \cs_gset_nopar:cx ,
+% \cs_gset_protected:cn , \cs_gset_protected:ce , \cs_gset_protected:cx ,
+% \cs_gset_protected_nopar:cn , \cs_gset_protected_nopar:ce , \cs_gset_protected_nopar:cx ,
+% \cs_new:cn , \cs_new:ce , \cs_new:cx ,
+% \cs_new_nopar:cn , \cs_new_nopar:ce , \cs_new_nopar:cx ,
+% \cs_new_protected:cn , \cs_new_protected:ce , \cs_new_protected:cx ,
+% \cs_new_protected_nopar:cn , \cs_new_protected_nopar:ce , \cs_new_protected_nopar:cx ,
% }
% The 24 |c| variants simply use \cs{exp_args:Nc}.
% \begin{macrocode}
@@ -3067,28 +3118,40 @@
}
}
\@@_tmp:w { set } { n }
+\@@_tmp:w { set } { e }
\@@_tmp:w { set } { x }
\@@_tmp:w { set_nopar } { n }
+\@@_tmp:w { set_nopar } { e }
\@@_tmp:w { set_nopar } { x }
\@@_tmp:w { set_protected } { n }
+\@@_tmp:w { set_protected } { e }
\@@_tmp:w { set_protected } { x }
\@@_tmp:w { set_protected_nopar } { n }
+\@@_tmp:w { set_protected_nopar } { e }
\@@_tmp:w { set_protected_nopar } { x }
\@@_tmp:w { gset } { n }
+\@@_tmp:w { gset } { e }
\@@_tmp:w { gset } { x }
\@@_tmp:w { gset_nopar } { n }
+\@@_tmp:w { gset_nopar } { e }
\@@_tmp:w { gset_nopar } { x }
\@@_tmp:w { gset_protected } { n }
+\@@_tmp:w { gset_protected } { e }
\@@_tmp:w { gset_protected } { x }
\@@_tmp:w { gset_protected_nopar } { n }
+\@@_tmp:w { gset_protected_nopar } { e }
\@@_tmp:w { gset_protected_nopar } { x }
\@@_tmp:w { new } { n }
+\@@_tmp:w { new } { e }
\@@_tmp:w { new } { x }
\@@_tmp:w { new_nopar } { n }
+\@@_tmp:w { new_nopar } { e }
\@@_tmp:w { new_nopar } { x }
\@@_tmp:w { new_protected } { n }
+\@@_tmp:w { new_protected } { e }
\@@_tmp:w { new_protected } { x }
\@@_tmp:w { new_protected_nopar } { n }
+\@@_tmp:w { new_protected_nopar } { e }
\@@_tmp:w { new_protected_nopar } { x }
% \end{macrocode}
% \end{macro}
@@ -3133,7 +3196,7 @@
\cs_if_exist:NTF #1
{#2}
{
- \msg_error:nnx { kernel } { variable-not-defined }
+ \msg_error:nne { kernel } { variable-not-defined }
{ \token_to_str:N #1 }
}
}
@@ -3196,7 +3259,7 @@
{
\group_begin:
\int_set:Nn \tex_escapechar:D { `\\ }
- \exp_args:NNx
+ \exp_args:NNe
\group_end:
#1 { \token_to_str:N #2 = \cs_meaning:N #2 }
}
@@ -3214,7 +3277,7 @@
{ \@@_group_show:NN \int_zero:N 0 }
\cs_new_protected:Npn \@@_group_show:NN #1#2
{
- \use:x
+ \use:e
{
#1 \tex_interactionmode:D
\int_set:Nn \tex_tracingonline:D {#2}
@@ -3247,7 +3310,7 @@
% catcode~$12$. If the token in question isn't a macro, the token
% \cs{scan_stop:} is returned instead.
% \begin{macrocode}
-\use:x
+\use:e
{
\exp_not:n { \cs_new:Npn \@@_prefix_arg_replacement:wN #1 }
\tl_to_str:n { macro : } \exp_not:n { #2 -> #3 \s_@@_stop #4 }
diff --git a/macros/latex/contrib/l3kernel/l3bootstrap.dtx b/macros/latex/contrib/l3kernel/l3bootstrap.dtx
index aaa4333858..e300bccc67 100644
--- a/macros/latex/contrib/l3kernel/l3bootstrap.dtx
+++ b/macros/latex/contrib/l3kernel/l3bootstrap.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -313,7 +313,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
{
\bool_if:NF \l_@@_expl_bool
{
- \cs_set_protected:Npx \ExplSyntaxOff
+ \cs_set_protected:Npe \ExplSyntaxOff
{
\char_set_catcode:nn { 9 } { \char_value_catcode:n { 9 } }
\char_set_catcode:nn { 32 } { \char_value_catcode:n { 32 } }
diff --git a/macros/latex/contrib/l3kernel/l3box.dtx b/macros/latex/contrib/l3kernel/l3box.dtx
index 34b6ca44ef..dfa6b3c451 100644
--- a/macros/latex/contrib/l3kernel/l3box.dtx
+++ b/macros/latex/contrib/l3kernel/l3box.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -1372,7 +1372,7 @@
\group_end:
}
{
- \msg_error:nnx { kernel } { variable-not-defined }
+ \msg_error:nne { kernel } { variable-not-defined }
{ \token_to_str:N #2 }
}
}
diff --git a/macros/latex/contrib/l3kernel/l3candidates.dtx b/macros/latex/contrib/l3kernel/l3candidates.dtx
index f3a5021425..6e455b099c 100644
--- a/macros/latex/contrib/l3kernel/l3candidates.dtx
+++ b/macros/latex/contrib/l3kernel/l3candidates.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -129,10 +129,10 @@
%
% \begin{function}[added = 2018-04-01]
% {
-% \tl_build_put_left:Nn, \tl_build_put_left:Nx,
-% \tl_build_gput_left:Nn, \tl_build_gput_left:Nx,
-% \tl_build_put_right:Nn, \tl_build_put_right:Nx,
-% \tl_build_gput_right:Nn, \tl_build_gput_right:Nx,
+% \tl_build_put_left:Nn, \tl_build_put_left:Ne,
+% \tl_build_gput_left:Nn, \tl_build_gput_left:Ne,
+% \tl_build_put_right:Nn, \tl_build_put_right:Ne,
+% \tl_build_gput_right:Nn, \tl_build_gput_right:Ne
% }
% \begin{syntax}
% \cs{tl_build_put_left:Nn} \meta{tl~var} \Arg{tokens}
@@ -198,9 +198,9 @@
% hence in the \texttt{x}-expanding assignment.
% \begin{macrocode}
\cs_new_protected:Npn \seq_set_filter:NNn
- { \@@_set_filter:NNNn \__kernel_tl_set:Nx }
+ { \@@_set_filter:NNNn \__kernel_tl_set:Ne }
\cs_new_protected:Npn \seq_gset_filter:NNn
- { \@@_set_filter:NNNn \__kernel_tl_gset:Nx }
+ { \@@_set_filter:NNNn \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_set_filter:NNNn #1#2#3#4
{
\@@_push_item_def:n { \bool_if:nT {#4} { \@@_wrap_item:n {##1} } }
@@ -231,8 +231,8 @@
% name is that of \meta{tl~var} followed by~|'|. There are between $0$
% and $4$ \cs{exp_end:} to keep track of when \meta{left} and
% \meta{right} should be put into the \meta{next~tl}. The
-% \meta{assignment} is \cs{cs_set_nopar:Npx} if the variable is local,
-% and \cs{cs_gset_nopar:Npx} if it is global.
+% \meta{assignment} is \cs{cs_set_nopar:Npe} if the variable is local,
+% and \cs{cs_gset_nopar:Npe} if it is global.
%
% \begin{macro}{\tl_build_begin:N, \tl_build_gbegin:N}
% \begin{macro}{\@@_build_begin:NN, \@@_build_begin:NNN}
@@ -241,7 +241,7 @@
% derived from |#1| without any external data such as a counter.
% Empty that \meta{next~tl} and setup the structure. The local and
% global versions only differ by a single function
-% \cs[no-index]{cs_(g)set_nopar:Npx} used for all assignments: this is
+% \cs[no-index]{cs_(g)set_nopar:Npe} used for all assignments: this is
% important because only that function is stored in the \meta{tl~var}
% and \meta{next~tl} for subsequent assignments. In principle
% \cs{@@_build_begin:NNN} could use \cs[no-index]{tl_(g)clear_new:N}
@@ -250,9 +250,9 @@
% clear it locally or globally as appropriate.
% \begin{macrocode}
\cs_new_protected:Npn \tl_build_begin:N #1
- { \@@_build_begin:NN \cs_set_nopar:Npx #1 }
+ { \@@_build_begin:NN \cs_set_nopar:Npe #1 }
\cs_new_protected:Npn \tl_build_gbegin:N #1
- { \@@_build_begin:NN \cs_gset_nopar:Npx #1 }
+ { \@@_build_begin:NN \cs_gset_nopar:Npe #1 }
\cs_new_protected:Npn \@@_build_begin:NN #1#2
{ \exp_args:Nc \@@_build_begin:NNN { \cs_to_str:N #2 ' } #2 #1 }
\cs_new_protected:Npn \@@_build_begin:NNN #1#2#3
@@ -283,8 +283,8 @@
%
% \begin{macro}
% {
-% \tl_build_put_right:Nn, \tl_build_put_right:Nx,
-% \tl_build_gput_right:Nn, \tl_build_gput_right:Nx,
+% \tl_build_put_right:Nn, \tl_build_put_right:Ne, \tl_build_put_right:Nx,
+% \tl_build_gput_right:Nn, \tl_build_gput_right:Ne, \tl_build_gput_right:Nx,
% \@@_build_last:NNn, \@@_build_put:nn, \@@_build_put:nw
% }
% Similar to \cs{tl_put_right:Nn}, but apply \cs{exp:w} to |#1|. Most
@@ -299,32 +299,24 @@
% place without ever becoming a macro argument). We use
% \cs{exp_after:wN} rather than some \cs{exp_args:No} to avoid reading
% arguments that are likely very long token lists. We use
-% \cs[no-index]{cs_(g)set_nopar:Npx} rather than
-% \cs[no-index]{tl_(g)set:Nx} partly for the same reason and partly
+% \cs[no-index]{cs_(g)set_nopar:Npe} rather than
+% \cs[no-index]{tl_(g)set:Ne} partly for the same reason and partly
% because the assignments are interrupted by brace tricks, which
% implies that the assignment does not simply set the token list to an
% |x|-expansion of the second argument.
% \begin{macrocode}
\cs_new_protected:Npn \tl_build_put_right:Nn #1#2
{
- \cs_set_nopar:Npx #1
+ \cs_set_nopar:Npe #1
{ \exp_after:wN \exp_not:n \exp_after:wN { \exp:w #1 #2 } }
}
-\cs_new_protected:Npn \tl_build_put_right:Nx #1#2
- {
- \cs_set_nopar:Npx #1
- { \exp_after:wN \exp_not:n \exp_after:wN { \exp:w #1 } #2 }
- }
+\cs_generate_variant:Nn \tl_build_put_right:Nn { Ne , Nx }
\cs_new_protected:Npn \tl_build_gput_right:Nn #1#2
{
- \cs_gset_nopar:Npx #1
+ \cs_gset_nopar:Npe #1
{ \exp_after:wN \exp_not:n \exp_after:wN { \exp:w #1 #2 } }
}
-\cs_new_protected:Npn \tl_build_gput_right:Nx #1#2
- {
- \cs_gset_nopar:Npx #1
- { \exp_after:wN \exp_not:n \exp_after:wN { \exp:w #1 } #2 }
- }
+\cs_generate_variant:Nn \tl_build_gput_right:Nn { Ne , Nx }
\cs_new_protected:Npn \@@_build_last:NNn #1#2
{
\if_false: { { \fi:
@@ -350,8 +342,9 @@
%
% \begin{macro}
% {
-% \tl_build_put_left:Nn, \tl_build_put_left:Nx,
-% \tl_build_gput_left:Nn, \tl_build_gput_left:Nx, \@@_build_put_left:NNn
+% \tl_build_put_left:Nn, \tl_build_put_left:Ne, \tl_build_put_left:Nx,
+% \tl_build_gput_left:Nn, \tl_build_gput_left:Ne, \tl_build_gput_left:Nx,
+% \@@_build_put_left:NNn
% }
% See \cs{tl_build_put_right:Nn} for all the machinery. We could
% easily provide \cs[no-index]{tl_build_put_left_right:Nnn}, by just
@@ -359,11 +352,11 @@
% |x|-expanding assignment.
% \begin{macrocode}
\cs_new_protected:Npn \tl_build_put_left:Nn #1
- { \@@_build_put_left:NNn \cs_set_nopar:Npx #1 }
-\cs_generate_variant:Nn \tl_build_put_left:Nn { Nx }
+ { \@@_build_put_left:NNn \cs_set_nopar:Npe #1 }
+\cs_generate_variant:Nn \tl_build_put_left:Nn { Ne , Nx }
\cs_new_protected:Npn \tl_build_gput_left:Nn #1
- { \@@_build_put_left:NNn \cs_gset_nopar:Npx #1 }
-\cs_generate_variant:Nn \tl_build_gput_left:Nn { Nx }
+ { \@@_build_put_left:NNn \cs_gset_nopar:Npe #1 }
+\cs_generate_variant:Nn \tl_build_gput_left:Nn { Ne , Nx }
\cs_new_protected:Npn \@@_build_put_left:NNn #1#2#3
{
#1 #2
@@ -389,7 +382,7 @@
% trick to wrap all the \meta{right} parts together.
% \begin{macrocode}
\cs_new_protected:Npn \tl_build_get:NN
- { \@@_build_get:NNN \__kernel_tl_set:Nx }
+ { \@@_build_get:NNN \__kernel_tl_set:Ne }
\cs_new_protected:Npn \@@_build_get:NNN #1#2#3
{ #1 #3 { \if_false: { \fi: \exp_after:wN \@@_build_get:w #2 } } }
\cs_new:Npn \@@_build_get:w #1 \@@_build_last:NNn #2#3#4
@@ -410,16 +403,16 @@
% Get the data then clear the \meta{next~tl} recursively until finding
% an empty one. It is perhaps wasteful to repeatedly use
% \cs{cs_to_str:N}. The local/global scope is checked by
-% \cs{tl_set:Nx} or \cs{tl_gset:Nx}.
+% \cs{tl_set:Ne} or \cs{tl_gset:Ne}.
% \begin{macrocode}
\cs_new_protected:Npn \tl_build_end:N #1
{
- \@@_build_get:NNN \__kernel_tl_set:Nx #1 #1
+ \@@_build_get:NNN \__kernel_tl_set:Ne #1 #1
\exp_args:Nc \@@_build_end_loop:NN { \cs_to_str:N #1 ' } \tl_clear:N
}
\cs_new_protected:Npn \tl_build_gend:N #1
{
- \@@_build_get:NNN \__kernel_tl_gset:Nx #1 #1
+ \@@_build_get:NNN \__kernel_tl_gset:Ne #1 #1
\exp_args:Nc \@@_build_end_loop:NN { \cs_to_str:N #1 ' } \tl_gclear:N
}
\cs_new_protected:Npn \@@_build_end_loop:NN #1#2
diff --git a/macros/latex/contrib/l3kernel/l3cctab.dtx b/macros/latex/contrib/l3kernel/l3cctab.dtx
index fc9cdd9e92..4192ec029a 100644
--- a/macros/latex/contrib/l3kernel/l3cctab.dtx
+++ b/macros/latex/contrib/l3kernel/l3cctab.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -543,7 +543,7 @@
{
\seq_gpop:NNF \g_@@_unused_seq \l_@@_internal_a_tl
{ \@@_begin_aux: }
- \exp_args:Nx \@@_chk_group_begin:n
+ \@@_chk_group_begin:e
{ \@@_nesting_number:N \l_@@_internal_a_tl }
\seq_gpush:NV \g_@@_stack_seq \l_@@_internal_a_tl
\exp_args:NV \@@_gset:n \l_@@_internal_a_tl
@@ -566,7 +566,7 @@
\seq_gpop:NNTF \g_@@_stack_seq \l_@@_internal_a_tl
{
\seq_gpush:NV \g_@@_unused_seq \l_@@_internal_a_tl
- \exp_args:Nx \@@_chk_group_end:n
+ \exp_args:Ne \@@_chk_group_end:n
{ \@@_nesting_number:N \l_@@_internal_a_tl }
\@@_select:N \l_@@_internal_a_tl
}
@@ -575,7 +575,8 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_chk_group_begin:n,\@@_chk_group_end:n}
+% \begin{macro}
+% {\@@_chk_group_begin:n,\@@_chk_group_begin:e, \@@_chk_group_end:n}
% Catcode tables are not allowed to be intermixed with groups, so here
% we check that they are properly nested regarding \TeX{} groups.
% \cs{@@_chk_group_begin:n} stores the current group level in a stack,
@@ -636,10 +637,11 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_chk_group_begin:n #1
{
- \seq_gpush:Nx \g_@@_group_seq
+ \seq_gpush:Ne \g_@@_group_seq
{ \int_use:N \tex_currentgrouplevel:D }
\cs_set_eq:cN { @@_group_ #1 _chk: } \prg_do_nothing:
}
+\cs_generate_variant:Nn \@@_chk_group_begin:n { e }
\cs_new_protected:Npn \@@_chk_group_end:n #1
{
\seq_gpop:NN \g_@@_group_seq \l_@@_internal_b_tl
@@ -650,7 +652,7 @@
}
{ \cs_if_exist_p:c { @@_group_ #1 _chk: } }
{
- \msg_error:nnx { cctab } { group-mismatch }
+ \msg_error:nne { cctab } { group-mismatch }
{
\int_sign:n
{ \tex_currentgrouplevel:D - \l_@@_internal_b_tl }
@@ -675,10 +677,10 @@
\exp_after:wN \exp_after:wN \exp_after:wN \@@_nesting_number:w
\exp_after:wN \token_to_str:N #1
}
- \use:x
+ \use:e
{
\cs_new:Npn \exp_not:N \@@_nesting_number:w
- ##1 \tl_to_str:n { g_@@_ } ##2 \tl_to_str:n { _cctab } {##2}
+ #1 \tl_to_str:n { g_@@_ } #2 \tl_to_str:n { _cctab } {#2}
}
}
% \end{macrocode}
@@ -754,13 +756,13 @@
\@@_chk_if_valid_aux:NTF #1
{ \prg_return_true: }
{
- \msg_error:nnx { cctab } { invalid-cctab }
+ \msg_error:nne { cctab } { invalid-cctab }
{ \token_to_str:N #1 }
\prg_return_false:
}
}
{
- \msg_error:nnx { kernel } { command-not-defined }
+ \msg_error:nne { kernel } { command-not-defined }
{ \token_to_str:N #1 }
\prg_return_false:
}
diff --git a/macros/latex/contrib/l3kernel/l3clist.dtx b/macros/latex/contrib/l3kernel/l3clist.dtx
index 0eaac6a532..8fc2f6870b 100644
--- a/macros/latex/contrib/l3kernel/l3clist.dtx
+++ b/macros/latex/contrib/l3kernel/l3clist.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -123,8 +123,8 @@
%
% \begin{function}[added = 2014-07-05]
% {
-% \clist_const:Nn, \clist_const:Nx,
-% \clist_const:cn, \clist_const:cx
+% \clist_const:Nn, \clist_const:Ne,
+% \clist_const:cn, \clist_const:ce
% }
% \begin{syntax}
% \cs{clist_const:Nn} \meta{clist~var} \Arg{comma list}
@@ -216,14 +216,14 @@
%
% \begin{function}[added = 2011-09-06]
% {
-% \clist_set:Nn, \clist_set:NV,
-% \clist_set:No, \clist_set:Nx,
-% \clist_set:cn, \clist_set:cV,
-% \clist_set:co, \clist_set:cx,
-% \clist_gset:Nn, \clist_gset:NV,
-% \clist_gset:No, \clist_gset:Nx,
-% \clist_gset:cn, \clist_gset:cV,
-% \clist_gset:co, \clist_gset:cx
+% \clist_set:Nn, \clist_set:NV, \clist_set:Ne,
+% \clist_set:No,
+% \clist_set:cn, \clist_set:cV, \clist_set:ce,
+% \clist_set:co,
+% \clist_gset:Nn, \clist_gset:NV, \clist_gset:Ne,
+% \clist_gset:No,
+% \clist_gset:cn, \clist_gset:cV, \clist_gset:ce,
+% \clist_gset:co
% }
% \begin{syntax}
% \cs{clist_set:Nn} \meta{clist~var} |{|\meta{item_1},\ldots{},\meta{item_n}|}|
@@ -241,17 +241,17 @@
% \begin{function}[updated = 2011-09-05]
% {
% \clist_put_left:Nn, \clist_put_left:NV,
-% \clist_put_left:Nv,
-% \clist_put_left:No, \clist_put_left:Nx,
+% \clist_put_left:Nv, \clist_put_left:Ne,
+% \clist_put_left:No,
% \clist_put_left:cn, \clist_put_left:cV,
-% \clist_put_left:cv,
-% \clist_put_left:co, \clist_put_left:cx,
+% \clist_put_left:cv, \clist_put_left:ce,
+% \clist_put_left:co,
% \clist_gput_left:Nn, \clist_gput_left:NV,
-% \clist_gput_left:Nv,
-% \clist_gput_left:No, \clist_gput_left:Nx,
+% \clist_gput_left:Nv, \clist_gput_left:Ne,
+% \clist_gput_left:No,
% \clist_gput_left:cn, \clist_gput_left:cV,
-% \clist_gput_left:cv,
-% \clist_gput_left:co, \clist_gput_left:cx
+% \clist_gput_left:cv, \clist_gput_left:ce,
+% \clist_gput_left:co
% }
% \begin{syntax}
% \cs{clist_put_left:Nn} \meta{clist~var} |{|\meta{item_1},\ldots{},\meta{item_n}|}|
@@ -268,17 +268,17 @@
% \begin{function}[updated = 2011-09-05]
% {
% \clist_put_right:Nn, \clist_put_right:NV,
-% \clist_put_right:Nv,
-% \clist_put_right:No, \clist_put_right:Nx,
+% \clist_put_right:Nv, \clist_put_right:Ne,
+% \clist_put_right:No,
% \clist_put_right:cn, \clist_put_right:cV,
-% \clist_put_right:cv,
-% \clist_put_right:co, \clist_put_right:cx,
+% \clist_put_right:cv, \clist_put_right:ce,
+% \clist_put_right:co,
% \clist_gput_right:Nn, \clist_gput_right:NV,
-% \clist_gput_right:Nv,
-% \clist_gput_right:No, \clist_gput_right:Nx,
+% \clist_gput_right:Nv, \clist_gput_right:Ne,
+% \clist_gput_right:No,
% \clist_gput_right:cn, \clist_gput_right:cV,
-% \clist_gput_right:cv,
-% \clist_gput_right:co, \clist_gput_right:cx
+% \clist_gput_right:cv, \clist_gput_right:ce,
+% \clist_gput_right:co
% }
% \begin{syntax}
% \cs{clist_put_right:Nn} \meta{clist~var} |{|\meta{item_1},\ldots{},\meta{item_n}|}|
@@ -444,7 +444,7 @@
% \texttt{n}-type comma lists.
%
% \begin{function}[rEXP, updated = 2012-06-29]
-% {\clist_map_function:NN, \clist_map_function:cN, \clist_map_function:nN}
+% {\clist_map_function:NN, \clist_map_function:cN, \clist_map_function:nN, \clist_map_function:eN}
% \begin{syntax}
% \cs{clist_map_function:NN} \meta{clist~var} \meta{function}
% \end{syntax}
@@ -548,7 +548,7 @@
% \end{function}
%
% \begin{function}[EXP, added = 2012-07-13]
-% {\clist_count:N, \clist_count:c, \clist_count:n}
+% {\clist_count:N, \clist_count:c, \clist_count:n, \clist_count:e}
% \begin{syntax}
% \cs{clist_count:N} \meta{clist~var}
% \end{syntax}
@@ -706,10 +706,10 @@
%
% \begin{function}
% {
-% \clist_push:Nn, \clist_push:NV, \clist_push:No, \clist_push:Nx,
-% \clist_push:cn, \clist_push:cV, \clist_push:co, \clist_push:cx,
-% \clist_gpush:Nn, \clist_gpush:NV, \clist_gpush:No, \clist_gpush:Nx,
-% \clist_gpush:cn, \clist_gpush:cV, \clist_gpush:co, \clist_gpush:cx
+% \clist_push:Nn, \clist_push:NV, \clist_push:No,
+% \clist_push:cn, \clist_push:cV, \clist_push:co,
+% \clist_gpush:Nn, \clist_gpush:NV, \clist_gpush:No,
+% \clist_gpush:cn, \clist_gpush:cV, \clist_gpush:co,
% }
% \begin{syntax}
% \cs{clist_push:Nn} \meta{clist~var} \Arg{items}
@@ -722,7 +722,7 @@
% \section{Using a single item}
%
% \begin{function}[added = 2014-07-17, EXP]
-% {\clist_item:Nn, \clist_item:cn, \clist_item:nn}
+% {\clist_item:Nn, \clist_item:cn, \clist_item:nn, \clist_item:en}
% \begin{syntax}
% \cs{clist_item:Nn} \meta{clist~var} \Arg{int expr}
% \end{syntax}
@@ -984,15 +984,16 @@
%
% \begin{macro}
% {
-% \clist_const:Nn, \clist_const:cn,
-% \clist_const:Nx, \clist_const:cx
+% \clist_const:Nn, \clist_const:Ne, \clist_const:Nx,
+% \clist_const:cn, \clist_const:ce, \clist_const:cx
% }
% Creating and initializing a constant comma list is done by
% sanitizing all items (stripping spaces and braces).
% \begin{macrocode}
\cs_new_protected:Npn \clist_const:Nn #1#2
- { \tl_const:Nx #1 { \@@_sanitize:n {#2} } }
-\cs_generate_variant:Nn \clist_const:Nn { c , Nx , cx }
+ { \tl_const:Ne #1 { \@@_sanitize:n {#2} } }
+\cs_generate_variant:Nn \clist_const:Nn { Ne , c , ce }
+\cs_generate_variant:Nn \clist_const:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
%
@@ -1066,9 +1067,9 @@
% in the case of an empty comma-list.
% \begin{macrocode}
\cs_new_protected:Npn \clist_set_from_seq:NN
- { \@@_set_from_seq:NNNN \clist_clear:N \__kernel_tl_set:Nx }
+ { \@@_set_from_seq:NNNN \clist_clear:N \__kernel_tl_set:Ne }
\cs_new_protected:Npn \clist_gset_from_seq:NN
- { \@@_set_from_seq:NNNN \clist_gclear:N \__kernel_tl_gset:Nx }
+ { \@@_set_from_seq:NNNN \clist_gclear:N \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_set_from_seq:NNNN #1#2#3#4
{
\seq_if_empty:NTF #4
@@ -1107,9 +1108,9 @@
% a little work to do.
% \begin{macrocode}
\cs_new_protected:Npn \clist_concat:NNN
- { \@@_concat:NNNN \__kernel_tl_set:Nx }
+ { \@@_concat:NNNN \__kernel_tl_set:Ne }
\cs_new_protected:Npn \clist_gconcat:NNN
- { \@@_concat:NNNN \__kernel_tl_gset:Nx }
+ { \@@_concat:NNNN \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_concat:NNNN #1#2#3#4
{
#1 #2
@@ -1140,47 +1141,49 @@
%
% \begin{macro}
% {
-% \clist_set:Nn, \clist_set:NV,
-% \clist_set:No, \clist_set:Nx,
-% \clist_set:cn, \clist_set:cV,
-% \clist_set:co, \clist_set:cx
+% \clist_set:Nn, \clist_set:NV, \clist_set:Ne,
+% \clist_set:No, \clist_set:Nx,
+% \clist_set:cn, \clist_set:cV, \clist_set:ce,
+% \clist_set:co, \clist_set:cx
% }
% \begin{macro}
% {
-% \clist_gset:Nn, \clist_gset:NV,
+% \clist_gset:Nn, \clist_gset:NV, \clist_gset:Ne,
% \clist_gset:No, \clist_gset:Nx,
-% \clist_gset:cn, \clist_gset:cV,
-% \clist_gset:co, \clist_gset:cx
+% \clist_gset:cn, \clist_gset:cV, \clist_gset:ce,
+% \clist_gset:co, \clist_gset:cx,
% }
% \begin{macrocode}
\cs_new_protected:Npn \clist_set:Nn #1#2
- { \__kernel_tl_set:Nx #1 { \@@_sanitize:n {#2} } }
+ { \__kernel_tl_set:Ne #1 { \@@_sanitize:n {#2} } }
\cs_new_protected:Npn \clist_gset:Nn #1#2
- { \__kernel_tl_gset:Nx #1 { \@@_sanitize:n {#2} } }
-\cs_generate_variant:Nn \clist_set:Nn { NV , No , Nx , c , cV , co , cx }
-\cs_generate_variant:Nn \clist_gset:Nn { NV , No , Nx , c , cV , co , cx }
+ { \__kernel_tl_gset:Ne #1 { \@@_sanitize:n {#2} } }
+\cs_generate_variant:Nn \clist_set:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \clist_set:Nn { No , Nx , co , cx }
+\cs_generate_variant:Nn \clist_gset:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \clist_gset:Nn { No , Nx , co , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}
% {
-% \clist_put_left:Nn, \clist_put_left:NV,
-% \clist_put_left:Nv,
-% \clist_put_left:No, \clist_put_left:Nx,
-% \clist_put_left:cn, \clist_put_left:cV,
-% \clist_put_left:cv,
-% \clist_put_left:co, \clist_put_left:cx
+% \clist_put_left:Nn, \clist_put_left:NV,
+% \clist_put_left:Nv, \clist_put_left:Ne,
+% \clist_put_left:No, \clist_put_left:Nx,
+% \clist_put_left:cn, \clist_put_left:cV,
+% \clist_put_left:cv, \clist_put_left:ce,
+% \clist_put_left:co, \clist_put_left:cx,
% }
% \UnitTested
% \begin{macro}
% {
% \clist_gput_left:Nn, \clist_gput_left:NV,
-% \clist_gput_left:Nv,
+% \clist_gput_left:Nv, \clist_gput_left:Ne,
% \clist_gput_left:No, \clist_gput_left:Nx,
% \clist_gput_left:cn, \clist_gput_left:cV,
-% \clist_gput_left:cv,
-% \clist_gput_left:co, \clist_gput_left:cx
+% \clist_gput_left:cv, \clist_gput_left:ce,
+% \clist_gput_left:co, \clist_gput_left:cx,
% }
% \UnitTested
% \begin{macro}{\@@_put_left:NNNn}
@@ -1197,10 +1200,10 @@
#2 \l_@@_internal_clist {#4}
#1 #3 \l_@@_internal_clist #3
}
-\cs_generate_variant:Nn \clist_put_left:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \clist_put_left:Nn { c , cV , cv , co , cx }
-\cs_generate_variant:Nn \clist_gput_left:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \clist_gput_left:Nn { c , cV , cv , co , cx }
+\cs_generate_variant:Nn \clist_put_left:Nn { NV , Nv , Ne , c , cV , cv , ce }
+\cs_generate_variant:Nn \clist_put_left:Nn { No , Nx , co , cx }
+\cs_generate_variant:Nn \clist_gput_left:Nn { NV , Nv , Ne , c , cV , cv , ce }
+\cs_generate_variant:Nn \clist_gput_left:Nn { No , Nx , co , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1209,21 +1212,21 @@
% \begin{macro}
% {
% \clist_put_right:Nn, \clist_put_right:NV,
-% \clist_put_right:Nv,
+% \clist_put_right:Nv, \clist_put_right:Ne,
% \clist_put_right:No, \clist_put_right:Nx,
% \clist_put_right:cn, \clist_put_right:cV,
-% \clist_put_right:cv,
+% \clist_put_right:cv, \clist_put_right:ce,
% \clist_put_right:co, \clist_put_right:cx
% }
% \UnitTested
% \begin{macro}
% {
% \clist_gput_right:Nn, \clist_gput_right:NV,
-% \clist_gput_right:Nv,
+% \clist_gput_right:Nv, \clist_gput_right:Ne,
% \clist_gput_right:No, \clist_gput_right:Nx,
% \clist_gput_right:cn, \clist_gput_right:cV,
-% \clist_gput_right:cv,
-% \clist_gput_right:co, \clist_gput_right:cx
+% \clist_gput_right:cv, \clist_gput_right:ce,
+% \clist_gput_right:cx, \clist_gput_right:co
% }
% \UnitTested
% \begin{macro}{\@@_put_right:NNNn}
@@ -1237,10 +1240,14 @@
#2 \l_@@_internal_clist {#4}
#1 #3 #3 \l_@@_internal_clist
}
-\cs_generate_variant:Nn \clist_put_right:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \clist_put_right:Nn { c , cV , cv , co , cx }
-\cs_generate_variant:Nn \clist_gput_right:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \clist_gput_right:Nn { c , cV , cv , co , cx }
+\cs_generate_variant:Nn \clist_put_right:Nn
+ { NV , Nv , Ne , c , cV , cv , ce }
+\cs_generate_variant:Nn \clist_put_right:Nn
+ { No , Nx , co , cx }
+\cs_generate_variant:Nn \clist_gput_right:Nn
+ { NV , Nv , Ne , c , cV , cv , ce }
+\cs_generate_variant:Nn \clist_gput_right:Nn
+ { No , Nx , co , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1288,9 +1295,9 @@
% result can safely be an empty comma list.
% \begin{macrocode}
\cs_new_protected:Npn \clist_pop:NN
- { \@@_pop:NNN \__kernel_tl_set:Nx }
+ { \@@_pop:NNN \__kernel_tl_set:Ne }
\cs_new_protected:Npn \clist_gpop:NN
- { \@@_pop:NNN \__kernel_tl_gset:Nx }
+ { \@@_pop:NNN \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_pop:NNN #1#2#3
{
\if_meaning:w #2 \c_empty_clist
@@ -1335,9 +1342,9 @@
}
\prg_generate_conditional_variant:Nnn \clist_get:NN { c } { T , F , TF }
\prg_new_protected_conditional:Npnn \clist_pop:NN #1#2 { T , F , TF }
- { \@@_pop_TF:NNN \__kernel_tl_set:Nx #1 #2 }
+ { \@@_pop_TF:NNN \__kernel_tl_set:Ne #1 #2 }
\prg_new_protected_conditional:Npnn \clist_gpop:NN #1#2 { T , F , TF }
- { \@@_pop_TF:NNN \__kernel_tl_gset:Nx #1 #2 }
+ { \@@_pop_TF:NNN \__kernel_tl_gset:Ne #1 #2 }
\cs_new_protected:Npn \@@_pop_TF:NNN #1#2#3
{
\if_meaning:w #2 \c_empty_clist
@@ -1357,32 +1364,20 @@
%
% \begin{macro}{
% \clist_push:Nn, \clist_push:NV, \clist_push:No, \clist_push:Nx,
-% \clist_push:cn, \clist_push:cV, \clist_push:co, \clist_push:cx
+% \clist_push:cn, \clist_push:cV, \clist_push:co, \clist_push:cx,
% }
% \UnitTested
% \begin{macro}{
% \clist_gpush:Nn, \clist_gpush:NV, \clist_gpush:No, \clist_gpush:Nx,
-% \clist_gpush:cn, \clist_gpush:cV, \clist_gpush:co, \clist_gpush:cx
+% \clist_gpush:cn, \clist_gpush:cV, \clist_gpush:co, \clist_gpush:cx,
% }
% \UnitTested
% Pushing to a comma list is the same as adding on the left.
% \begin{macrocode}
\cs_new_eq:NN \clist_push:Nn \clist_put_left:Nn
-\cs_new_eq:NN \clist_push:NV \clist_put_left:NV
-\cs_new_eq:NN \clist_push:No \clist_put_left:No
-\cs_new_eq:NN \clist_push:Nx \clist_put_left:Nx
-\cs_new_eq:NN \clist_push:cn \clist_put_left:cn
-\cs_new_eq:NN \clist_push:cV \clist_put_left:cV
-\cs_new_eq:NN \clist_push:co \clist_put_left:co
-\cs_new_eq:NN \clist_push:cx \clist_put_left:cx
+\cs_generate_variant:Nn \clist_push:Nn { NV , No , Nx , c , cV , co , cx }
\cs_new_eq:NN \clist_gpush:Nn \clist_gput_left:Nn
-\cs_new_eq:NN \clist_gpush:NV \clist_gput_left:NV
-\cs_new_eq:NN \clist_gpush:No \clist_gput_left:No
-\cs_new_eq:NN \clist_gpush:Nx \clist_gput_left:Nx
-\cs_new_eq:NN \clist_gpush:cn \clist_gput_left:cn
-\cs_new_eq:NN \clist_gpush:cV \clist_gput_left:cV
-\cs_new_eq:NN \clist_gpush:co \clist_gput_left:co
-\cs_new_eq:NN \clist_gpush:cx \clist_gput_left:cx
+\cs_generate_variant:Nn \clist_gpush:Nn { NV , No , Nx , c , cV , co , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1415,7 +1410,7 @@
{
\clist_if_in:NnF \l_@@_internal_remove_clist {##1}
{
- \tl_put_right:Nx \l_@@_internal_remove_clist
+ \tl_put_right:Ne \l_@@_internal_remove_clist
{
\clist_if_empty:NF \l_@@_internal_remove_clist { , }
\@@_if_wrap:nTF {##1} { \exp_not:n { {##1} } } { \exp_not:n {##1} }
@@ -1478,9 +1473,9 @@
% the second step removes it.
% \begin{macrocode}
\cs_new_protected:Npn \clist_remove_all:Nn
- { \@@_remove_all:NNNn \clist_set_from_seq:NN \__kernel_tl_set:Nx }
+ { \@@_remove_all:NNNn \clist_set_from_seq:NN \__kernel_tl_set:Ne }
\cs_new_protected:Npn \clist_gremove_all:Nn
- { \@@_remove_all:NNNn \clist_gset_from_seq:NN \__kernel_tl_gset:Nx }
+ { \@@_remove_all:NNNn \clist_gset_from_seq:NN \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_remove_all:NNNn #1#2#3#4
{
\@@_if_wrap:nTF {#4}
@@ -1534,9 +1529,9 @@
% \texttt{N}-type comma lists, but the slow-down is not too bad.
% \begin{macrocode}
\cs_new_protected:Npn \clist_reverse:N #1
- { \__kernel_tl_set:Nx #1 { \exp_args:No \clist_reverse:n {#1} } }
+ { \__kernel_tl_set:Ne #1 { \exp_args:No \clist_reverse:n {#1} } }
\cs_new_protected:Npn \clist_greverse:N #1
- { \__kernel_tl_gset:Nx #1 { \exp_args:No \clist_reverse:n {#1} } }
+ { \__kernel_tl_gset:Ne #1 { \exp_args:No \clist_reverse:n {#1} } }
\cs_generate_variant:Nn \clist_reverse:N { c }
\cs_generate_variant:Nn \clist_greverse:N { c }
% \end{macrocode}
@@ -1657,7 +1652,7 @@
{
\@@_if_wrap:nTF {#2}
{
- \cs_set:Npx \@@_tmp:w ##1
+ \cs_set:Npe \@@_tmp:w ##1
{
\exp_not:N \tl_if_eq:nnT {##1}
\exp_not:n
@@ -1726,7 +1721,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\clist_map_function:nN}
+% \begin{macro}{\clist_map_function:nN, \clist_map_function:eN}
% \UnitTested
% \begin{macro}{\@@_map_function_n:Nn}
% \begin{macro}{\@@_map_unbrace:wn}
@@ -1745,6 +1740,7 @@
\s_@@_stop \clist_map_break: ,
\prg_break_point:Nn \clist_map_break: { }
}
+\cs_generate_variant:Nn \clist_map_function:nN { e }
\cs_new:Npn \@@_map_function_n:Nn #1 #2
{
\@@_use_none_delimit_by_s_stop:w #2 \s_@@_stop
@@ -1893,7 +1889,7 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\clist_count:N, \clist_count:c, \clist_count:n}
+% \begin{macro}{\clist_count:N, \clist_count:c, \clist_count:n, \clist_count:e}
% \begin{macro}{\@@_count:n}
% \begin{macro}{\@@_count:w}
% Counting the items in a comma list is done using the same approach as for
@@ -1933,6 +1929,7 @@
}
}
\exp_args:No \@@_tmp:w \c_space_tl
+\cs_generate_variant:Nn \clist_count:n { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2110,7 +2107,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\clist_item:nn}
+% \begin{macro}{\clist_item:nn, \clist_item:en}
% \begin{macro}{
% \@@_item_n:nw,
% \@@_item_n_loop:nw,
@@ -2130,6 +2127,7 @@
{#1}
\@@_item_n:nw
}
+\cs_generate_variant:Nn \clist_item:nn { e }
\cs_new:Npn \@@_item_n:nw #1
{ \@@_item_n_loop:nw {#1} \prg_do_nothing: }
\cs_new:Npn \@@_item_n_loop:nw #1 #2,
@@ -2188,9 +2186,9 @@
% |#2| serving as a dummy code to prevent a check performed by this
% auxiliary.
% \begin{macrocode}
-\cs_new_protected:Npn \clist_show:N { \@@_show:NN \msg_show:nnxxxx }
+\cs_new_protected:Npn \clist_show:N { \@@_show:NN \msg_show:nneeee }
\cs_generate_variant:Nn \clist_show:N { c }
-\cs_new_protected:Npn \clist_log:N { \@@_show:NN \msg_log:nnxxxx }
+\cs_new_protected:Npn \clist_log:N { \@@_show:NN \msg_log:nneeee }
\cs_generate_variant:Nn \clist_log:N { c }
\cs_new_protected:Npn \@@_show:NN #1#2
{
@@ -2205,7 +2203,7 @@
{ } { }
}
{
- \msg_error:nnxx { clist } { non-clist }
+ \msg_error:nnee { clist } { non-clist }
{ \token_to_str:N #2 } { \tl_to_str:N #2 }
}
}
@@ -2217,8 +2215,8 @@
% A variant of the above: no existence check, empty first argument for
% the message.
% \begin{macrocode}
-\cs_new_protected:Npn \clist_show:n { \@@_show:Nn \msg_show:nnxxxx }
-\cs_new_protected:Npn \clist_log:n { \@@_show:Nn \msg_log:nnxxxx }
+\cs_new_protected:Npn \clist_show:n { \@@_show:Nn \msg_show:nneeee }
+\cs_new_protected:Npn \clist_log:n { \@@_show:Nn \msg_log:nneeee }
\cs_new_protected:Npn \@@_show:Nn #1#2
{
#1 { clist } { show }
diff --git a/macros/latex/contrib/l3kernel/l3coffins.dtx b/macros/latex/contrib/l3kernel/l3coffins.dtx
index 2269c6c686..94824400de 100644
--- a/macros/latex/contrib/l3kernel/l3coffins.dtx
+++ b/macros/latex/contrib/l3kernel/l3coffins.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -602,7 +602,7 @@
\coffin_if_exist:NTF #1
{ #2 }
{
- \msg_error:nnx { coffin } { unknown }
+ \msg_error:nne { coffin } { unknown }
{ \token_to_str:N #1 }
}
}
@@ -736,7 +736,7 @@
}
#5 #1
\vbox_set_top:Nn \l_@@_internal_box { \vbox_unpack:N #1 }
- \@@_set_pole:Nnx #1 { T }
+ \@@_set_pole:Nne #1 { T }
{
{ 0pt }
{
@@ -749,7 +749,7 @@
\box_clear:N \l_@@_internal_box
}
}
-\cs_new_protected:Npx \@@_set_vertical_aux:
+\cs_new_protected:Npe \@@_set_vertical_aux:
{
\bool_lazy_and:nnT
{ \cs_if_exist_p:N \fmtname }
@@ -834,7 +834,7 @@
#5
#6 #1
\vbox_set_top:Nn \l_@@_internal_box { \vbox_unpack:N #1 }
- \@@_set_pole:Nnx #1 { T }
+ \@@_set_pole:Nne #1 { T }
{
{ 0pt }
{
@@ -949,7 +949,7 @@
\prop_get:cnNF
{ coffin ~ \@@_to_value:N #1 ~ poles } {#2} #3
{
- \msg_error:nnxx { coffin } { unknown-pole }
+ \msg_error:nnee { coffin } { unknown-pole }
{ \exp_not:n {#2} } { \token_to_str:N #1 }
\tl_set:Nn #3 { { 0pt } { 0pt } { 0pt } { 0pt } }
}
@@ -989,17 +989,17 @@
% \coffin_gset_vertical_pole:Nnn, \coffin_gset_vertical_pole:cnn
% }
% \begin{macro}{\@@_set_vertical_pole:NnnN}
-% \begin{macro}{\@@_set_pole:Nnn, \@@_set_pole:Nnx}
+% \begin{macro}{\@@_set_pole:Nnn, \@@_set_pole:Nne}
% Setting the pole of a coffin at the user/designer level requires a
% bit more care. The idea here is to provide a reasonable interface to
% the system, then to do the setting with full expansion. The
% three-argument version is used internally to do a direct setting.
% \begin{macrocode}
\cs_new_protected:Npn \coffin_set_horizontal_pole:Nnn #1#2#3
- { \@@_set_horizontal_pole:NnnN #1 {#2} {#3} \prop_put:cnx }
+ { \@@_set_horizontal_pole:NnnN #1 {#2} {#3} \prop_put:cne }
\cs_generate_variant:Nn \coffin_set_horizontal_pole:Nnn { c }
\cs_new_protected:Npn \coffin_gset_horizontal_pole:Nnn #1#2#3
- { \@@_set_horizontal_pole:NnnN #1 {#2} {#3} \prop_gput:cnx }
+ { \@@_set_horizontal_pole:NnnN #1 {#2} {#3} \prop_gput:cne }
\cs_generate_variant:Nn \coffin_gset_horizontal_pole:Nnn { c }
\cs_new_protected:Npn \@@_set_horizontal_pole:NnnN #1#2#3#4
{
@@ -1014,10 +1014,10 @@
}
}
\cs_new_protected:Npn \coffin_set_vertical_pole:Nnn #1#2#3
- { \@@_set_vertical_pole:NnnN #1 {#2} {#3} \prop_put:cnx }
+ { \@@_set_vertical_pole:NnnN #1 {#2} {#3} \prop_put:cne }
\cs_generate_variant:Nn \coffin_set_vertical_pole:Nnn { c }
\cs_new_protected:Npn \coffin_gset_vertical_pole:Nnn #1#2#3
- { \@@_set_vertical_pole:NnnN #1 {#2} {#3} \prop_gput:cnx }
+ { \@@_set_vertical_pole:NnnN #1 {#2} {#3} \prop_gput:cne }
\cs_generate_variant:Nn \coffin_gset_vertical_pole:Nnn { c }
\cs_new_protected:Npn \@@_set_vertical_pole:NnnN #1#2#3#4
{
@@ -1036,7 +1036,7 @@
\prop_put:cnn { coffin ~ \@@_to_value:N #1 ~ poles }
{#2} {#3}
}
-\cs_generate_variant:Nn \@@_set_pole:Nnn { Nnx }
+\cs_generate_variant:Nn \@@_set_pole:Nnn { Nne }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1070,9 +1070,9 @@
% of the underlying \TeX{} box.
% \begin{macrocode}
\cs_new_protected:Npn \@@_update_corners:N #1
- { \@@_update_corners:NN #1 \prop_put:Nnx }
+ { \@@_update_corners:NN #1 \prop_put:Nne }
\cs_new_protected:Npn \@@_gupdate_corners:N #1
- { \@@_update_corners:NN #1 \prop_gput:Nnx }
+ { \@@_update_corners:NN #1 \prop_gput:Nne }
\cs_new_protected:Npn \@@_update_corners:NN #1#2
{
\exp_args:Nc \@@_update_corners:NNN
@@ -1115,9 +1115,9 @@
% coffins.
% \begin{macrocode}
\cs_new_protected:Npn \@@_update_poles:N #1
- { \@@_update_poles:NN #1 \prop_put:Nnx }
+ { \@@_update_poles:NN #1 \prop_put:Nne }
\cs_new_protected:Npn \@@_gupdate_poles:N #1
- { \@@_update_poles:NN #1 \prop_gput:Nnx }
+ { \@@_update_poles:NN #1 \prop_gput:Nne }
\cs_new_protected:Npn \@@_update_poles:NN #1#2
{
\exp_args:Nc \@@_update_poles:NNN
@@ -1277,7 +1277,7 @@
% more complexity, we now work out both slopes and pass to an auxiliary.
% \begin{macrocode}
{
- \use:x
+ \use:e
{
\@@_calculate_intersection:nnnnnn
{ \dim_to_fp:n {#4} / \dim_to_fp:n {#3} }
@@ -1494,17 +1494,17 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_set_bounding:N #1
{
- \prop_put:Nnx \l_@@_bounding_prop { tl }
+ \prop_put:Nne \l_@@_bounding_prop { tl }
{ { 0pt } { \dim_eval:n { \box_ht:N #1 } } }
- \prop_put:Nnx \l_@@_bounding_prop { tr }
+ \prop_put:Nne \l_@@_bounding_prop { tr }
{
{ \dim_eval:n { \box_wd:N #1 } }
{ \dim_eval:n { \box_ht:N #1 } }
}
\dim_set:Nn \l_@@_internal_dim { -\box_dp:N #1 }
- \prop_put:Nnx \l_@@_bounding_prop { bl }
+ \prop_put:Nne \l_@@_bounding_prop { bl }
{ { 0pt } { \dim_use:N \l_@@_internal_dim } }
- \prop_put:Nnx \l_@@_bounding_prop { br }
+ \prop_put:Nne \l_@@_bounding_prop { br }
{
{ \dim_eval:n { \box_wd:N #1 } }
{ \dim_use:N \l_@@_internal_dim }
@@ -1523,13 +1523,13 @@
\cs_new_protected:Npn \@@_rotate_bounding:nnn #1#2#3
{
\@@_rotate_vector:nnNN {#2} {#3} \l_@@_x_dim \l_@@_y_dim
- \prop_put:Nnx \l_@@_bounding_prop {#1}
+ \prop_put:Nne \l_@@_bounding_prop {#1}
{ { \dim_use:N \l_@@_x_dim } { \dim_use:N \l_@@_y_dim } }
}
\cs_new_protected:Npn \@@_rotate_corner:Nnnn #1#2#3#4
{
\@@_rotate_vector:nnNN {#3} {#4} \l_@@_x_dim \l_@@_y_dim
- \prop_put:Nnx \l_@@_corners_prop {#2}
+ \prop_put:Nne \l_@@_corners_prop {#2}
{ { \dim_use:N \l_@@_x_dim } { \dim_use:N \l_@@_y_dim } }
}
% \end{macrocode}
@@ -1546,7 +1546,7 @@
\@@_rotate_vector:nnNN {#3} {#4} \l_@@_x_dim \l_@@_y_dim
\@@_rotate_vector:nnNN {#5} {#6}
\l_@@_x_prime_dim \l_@@_y_prime_dim
- \prop_put:Nnx \l_@@_poles_prop {#2}
+ \prop_put:Nne \l_@@_poles_prop {#2}
{
{ \dim_use:N \l_@@_x_dim } { \dim_use:N \l_@@_y_dim }
{ \dim_use:N \l_@@_x_prime_dim }
@@ -1647,7 +1647,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_shift_corner:Nnnn #1#2#3#4
{
- \prop_put:Nnx \l_@@_corners_prop {#2}
+ \prop_put:Nne \l_@@_corners_prop {#2}
{
{ \dim_eval:n { #3 - \l_@@_left_corner_dim } }
{ \dim_eval:n { #4 - \l_@@_bottom_corner_dim } }
@@ -1655,7 +1655,7 @@
}
\cs_new_protected:Npn \@@_shift_pole:Nnnnnn #1#2#3#4#5#6
{
- \prop_put:Nnx \l_@@_poles_prop {#2}
+ \prop_put:Nne \l_@@_poles_prop {#2}
{
{ \dim_eval:n { #3 - \l_@@_left_corner_dim } }
{ \dim_eval:n { #4 - \l_@@_bottom_corner_dim } }
@@ -1821,13 +1821,13 @@
\cs_new_protected:Npn \@@_scale_corner:Nnnn #1#2#3#4
{
\@@_scale_vector:nnNN {#3} {#4} \l_@@_x_dim \l_@@_y_dim
- \prop_put:Nnx \l_@@_corners_prop {#2}
+ \prop_put:Nne \l_@@_corners_prop {#2}
{ { \dim_use:N \l_@@_x_dim } { \dim_use:N \l_@@_y_dim } }
}
\cs_new_protected:Npn \@@_scale_pole:Nnnnnn #1#2#3#4#5#6
{
\@@_scale_vector:nnNN {#3} {#4} \l_@@_x_dim \l_@@_y_dim
- \prop_put:Nnx \l_@@_poles_prop {#2}
+ \prop_put:Nne \l_@@_poles_prop {#2}
{
{ \dim_use:N \l_@@_x_dim } { \dim_use:N \l_@@_y_dim }
{#5} {#6}
@@ -1844,14 +1844,14 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_x_shift_corner:Nnnn #1#2#3#4
{
- \prop_put:Nnx \l_@@_corners_prop {#2}
+ \prop_put:Nne \l_@@_corners_prop {#2}
{
{ \dim_eval:n { #3 + \box_wd:N #1 } } {#4}
}
}
\cs_new_protected:Npn \@@_x_shift_pole:Nnnnnn #1#2#3#4#5#6
{
- \prop_put:Nnx \l_@@_poles_prop {#2}
+ \prop_put:Nne \l_@@_poles_prop {#2}
{
{ \dim_eval:n { #3 + \box_wd:N #1 } } {#4}
{#5} {#6}
@@ -2068,7 +2068,7 @@
\tl_if_in:nnTF {#2} { - }
{ \tl_set:Nn \l_@@_internal_tl { {#2} } }
{ \tl_set:Nn \l_@@_internal_tl { { #1 - #2 } } }
- \exp_last_unbraced:NNo \@@_set_pole:Nnx \l_@@_aligned_coffin
+ \exp_last_unbraced:NNo \@@_set_pole:Nne \l_@@_aligned_coffin
{ \l_@@_internal_tl }
{
{ \dim_use:N \l_@@_x_dim } { \dim_use:N \l_@@_y_dim }
@@ -2092,7 +2092,7 @@
}
\cs_new_protected:Npn \@@_offset_corner:Nnnnn #1#2#3#4#5#6
{
- \prop_put:cnx
+ \prop_put:cne
{
coffin ~ \@@_to_value:N \l_@@_aligned_coffin
\c_space_tl corners
@@ -2130,11 +2130,11 @@
{
\dim_compare:nNnTF {#2} < {#6}
{
- \@@_set_pole:Nnx #9 { T }
+ \@@_set_pole:Nne #9 { T }
{ { 0pt } {#6} { 1000pt } { 0pt } }
}
{
- \@@_set_pole:Nnx #9 { T }
+ \@@_set_pole:Nne #9 { T }
{ { 0pt } {#2} { 1000pt } { 0pt } }
}
}
@@ -2142,11 +2142,11 @@
{
\dim_compare:nNnTF {#2} < {#6}
{
- \@@_set_pole:Nnx #9 { B }
+ \@@_set_pole:Nne #9 { B }
{ { 0pt } {#2} { 1000pt } { 0pt } }
}
{
- \@@_set_pole:Nnx #9 { B }
+ \@@_set_pole:Nne #9 { B }
{ { 0pt } {#6} { 1000pt } { 0pt } }
}
}
@@ -2490,10 +2490,10 @@
% structure then the code complains.
% \begin{macrocode}
\cs_new_protected:Npn \coffin_show_structure:N
- { \@@_show_structure:NN \msg_show:nnxxxx }
+ { \@@_show_structure:NN \msg_show:nneeee }
\cs_generate_variant:Nn \coffin_show_structure:N { c }
\cs_new_protected:Npn \coffin_log_structure:N
- { \@@_show_structure:NN \msg_log:nnxxxx }
+ { \@@_show_structure:NN \msg_log:nneeee }
\cs_generate_variant:Nn \coffin_log_structure:N { c }
\cs_new_protected:Npn \@@_show_structure:NN #1#2
{
@@ -2525,8 +2525,8 @@
% }
% Essentially a combination of \cs{coffin_show_structure:N} and
% \cs{box_show:Nnn}, but we need to avoid having two prompts, so we
-% use \cs{msg_term:nnxxxx} instead of
-% \cs{msg_show:nnxxxx} in the |show| case.
+% use \cs{msg_term:nneeee} instead of
+% \cs{msg_show:nneeee} in the |show| case.
% \begin{macrocode}
\cs_new_protected:Npn \coffin_show:N #1
{ \coffin_show:Nnn #1 \c_max_int \c_max_int }
@@ -2535,10 +2535,10 @@
{ \coffin_log:Nnn #1 \c_max_int \c_max_int }
\cs_generate_variant:Nn \coffin_log:N { c }
\cs_new_protected:Npn \coffin_show:Nnn
- { \@@_show:NNNnn \msg_term:nnxxxx \box_show:Nnn }
+ { \@@_show:NNNnn \msg_term:nneeee \box_show:Nnn }
\cs_generate_variant:Nn \coffin_show:Nnn { c }
\cs_new_protected:Npn \coffin_log:Nnn
- { \@@_show:NNNnn \msg_log:nnxxxx \box_show:Nnn }
+ { \@@_show:NNNnn \msg_log:nneeee \box_show:Nnn }
\cs_generate_variant:Nn \coffin_log:Nnn { c }
\cs_new_protected:Npn \@@_show:NNNnn #1#2#3#4#5
{
diff --git a/macros/latex/contrib/l3kernel/l3color.dtx b/macros/latex/contrib/l3kernel/l3color.dtx
index 1453001a2a..3d225b2d22 100644
--- a/macros/latex/contrib/l3kernel/l3color.dtx
+++ b/macros/latex/contrib/l3kernel/l3color.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -720,7 +720,7 @@
\cs_generate_variant:Nn \exp_last_unbraced:Nf { c }
\cs_new_protected:Npn \@@_convert:nnnN #1#2#3#4
{
- \tl_set:Nx #4
+ \tl_set:Ne #4
{
\cs_if_exist_use:cTF { @@_convert_ #1 _ #2 :w }
{ #3 \s_@@_stop }
@@ -850,11 +850,11 @@
% otherwise expands, then starts working through the expression itself.
% At the end, we apply the payload.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_parse:nN #1#2
+\cs_new_protected:Npe \@@_parse:nN #1#2
{
- \tl_set:Nx \exp_not:c { l_@@_named_ . _tl }
+ \tl_set:Ne \exp_not:c { l_@@_named_ . _tl }
{ \exp_not:N \@@_model:N \exp_not:N \l_@@_current_tl }
- \prop_put:NVx \exp_not:c { l_@@_named_ . _prop }
+ \prop_put:NVe \exp_not:c { l_@@_named_ . _prop }
\exp_not:c { l_@@_named_ . _tl }
{ \exp_not:N \@@_values:N \exp_not:N \l_@@_current_tl }
\exp_not:N \exp_args:Ne \exp_not:N \@@_parse_aux:nN
@@ -889,14 +889,14 @@
\prop_get:cnNTF
{ l_@@_named_ #3 _prop } {#1}
\l_@@_value_tl
- { \tl_set:Nx #2 { {#1} { \l_@@_value_tl } } }
+ { \tl_set:Ne #2 { {#1} { \l_@@_value_tl } } }
{
\tl_set_eq:Nc \l_@@_model_tl { l_@@_named_ #3 _tl }
\prop_get:cVN { l_@@_named_ #3 _prop } \l_@@_model_tl
\l_@@_value_tl
\@@_convert:nnN
\l_@@_model_tl {#1} \l_@@_value_tl
- \tl_set:Nx #2
+ \tl_set:Ne #2
{
{#1}
{ \l_@@_value_tl }
@@ -926,7 +926,7 @@
\group_begin:
\@@_extract:nNN {#2} \l_@@_model_tl \l_@@_value_tl
\@@_parse_loop:w #3 ! ! ! ! \s_@@_stop
- \tl_set:Nx \l_@@_internal_tl
+ \tl_set:Ne \l_@@_internal_tl
{ { \l_@@_model_tl } { \l_@@_value_tl } }
\exp_args:NNNV \group_end:
\tl_set:Nn #1 \l_@@_internal_tl
@@ -951,7 +951,7 @@
{ \fp_compare_p:nNn {#1} > { 0 } }
{ \fp_compare_p:nNn {#1} < { 100 } }
{
- \use:x
+ \use:e
{
\@@_parse_loop:nn {#1}
{ \tl_if_blank:nTF {#2} { white } {#2} }
@@ -1004,7 +1004,7 @@
{ \@@_parse_gray:n {#2} }
{ \@@_parse_std:n {#2} }
}
- \tl_set:Nx \l_@@_value_tl
+ \tl_set:Ne \l_@@_value_tl
{
\@@_parse_mix:NVVn
\l_@@_model_tl \l_@@_value_tl \l_@@_next_value_tl {#1}
@@ -1400,7 +1400,7 @@
\@@_convert:VVN \l_@@_model_tl \l_color_fixed_model_tl
\l_@@_value_tl
}
- \tl_set:Nx #1
+ \tl_set:Ne #1
{ { \l_color_fixed_model_tl } { \l_@@_value_tl } }
}
}
@@ -1419,12 +1419,12 @@
% will therefore always be available. The finalisation is separate from the
% main function so it can also be applied to \emph{e.g.}~page color.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_finalise_current:
+\cs_new_protected:Npe \@@_finalise_current:
{
- \tl_set:Nx \exp_not:c { l_@@_named_ . _tl }
+ \tl_set:Ne \exp_not:c { l_@@_named_ . _tl }
{ \exp_not:N \@@_model:N \exp_not:N \l_@@_current_tl }
\prop_clear:N \exp_not:c { l_@@_named_ . _prop }
- \prop_put:NVx \exp_not:c { l_@@_named_ . _prop }
+ \prop_put:NVe \exp_not:c { l_@@_named_ . _prop }
\exp_not:c { l_@@_named_ . _tl }
{ \exp_not:N \@@_values:N \exp_not:N \l_@@_current_tl }
}
@@ -1488,7 +1488,7 @@
{
\cs_if_exist:cTF { @@_parse_model_ #1 :w }
{
- \tl_set:Nx #3
+ \tl_set:Ne #3
{ \use:c { @@_parse_model_ #1 :w } #2 , 0 , 0 , 0 , 0 \s_@@_stop }
}
{ \msg_error:nnn { color } { unknown-model } {#1} }
@@ -1496,7 +1496,7 @@
\cs_new_protected:Npn \@@_select_swap:Nnn #1#2#3
{
\@@_convert:nVnN {#2} \l_color_fixed_model_tl {#3} \l_@@_value_tl
- \tl_set:Nx #1
+ \tl_set:Ne #1
{ { \l_color_fixed_model_tl } { \l_@@_value_tl } }
}
% \end{macrocode}
@@ -1781,10 +1781,10 @@
{
\@@_parse:nN {#2} \l_@@_named_tl
\tl_clear_new:c { l_@@_named_ #1 _tl }
- \tl_set:cx { l_@@_named_ #1 _tl }
+ \tl_set:ce { l_@@_named_ #1 _tl }
{ \@@_model:N \l_@@_named_tl }
\prop_clear_new:c { l_@@_named_ #1 _prop }
- \prop_put:cvx { l_@@_named_ #1 _prop } { l_@@_named_ #1 _tl }
+ \prop_put:cve { l_@@_named_ #1 _prop } { l_@@_named_ #1 _tl }
{ \@@_values:N \l_@@_named_tl }
\@@_set:nnw {#1} {#2} #2 ! \s_@@_stop
}
@@ -1811,7 +1811,7 @@
\@@_parse:nN {#2} \l_@@_internal_tl
\exp_args:NNNV \group_end:
\tl_set:Nn \l_@@_internal_tl \l_@@_internal_tl
- \prop_put:cxx { l_@@_named_ #1 _prop }
+ \prop_put:cee { l_@@_named_ #1 _prop }
{ \@@_model:N \l_@@_internal_tl }
{ \@@_values:N \l_@@_internal_tl }
}
@@ -1828,16 +1828,16 @@
{#1} {#3}
}
}
-\cs_new_protected:Npx \@@_set_aux:nnn #1#2#3
+\cs_new_protected:Npe \@@_set_aux:nnn #1#2#3
{
\exp_not:N \@@_set_colon:nnw {#2} {#3}
#1 \c_colon_str \c_colon_str \exp_not:N \s_@@_stop
}
-\use:x
+\use:e
{
\cs_new_protected:Npn \exp_not:N \@@_set_colon:nnw
- ##1##2 ##3 \c_colon_str ##4 \c_colon_str
- ##5 \exp_not:N \s_@@_stop
+ #1#2 #3 \c_colon_str #4 \c_colon_str
+ #5 \exp_not:N \s_@@_stop
}
{
\tl_if_blank:nTF {#4}
@@ -1851,10 +1851,10 @@
\tl_if_blank:nF {#2}
{
\@@_select:nnN {#2} {#4} \l_@@_named_tl
- \tl_set:Nx \l_@@_internal_tl { \@@_model:N \l_@@_named_tl }
+ \tl_set:Ne \l_@@_internal_tl { \@@_model:N \l_@@_named_tl }
\tl_if_empty:cT { l_@@_named_ #1 _tl }
{ \tl_set_eq:cN { l_@@_named_ #1 _tl } \l_@@_internal_tl }
- \prop_put:cVx { l_@@_named_ #1 _prop } \l_@@_internal_tl
+ \prop_put:cVe { l_@@_named_ #1 _prop } \l_@@_internal_tl
{ \@@_values:N \l_@@_named_tl }
\@@_set_loop:nw {#1} #3 \s_@@_mark #5 \s_@@_stop
}
@@ -1867,9 +1867,9 @@
\prop_clear_new:c { l_@@_named_ #1 _prop }
\str_if_eq:nnTF {#2} { . }
{
- \tl_set:cx { l_@@_named_ #1 _tl }
+ \tl_set:ce { l_@@_named_ #1 _tl }
{ \@@_model:N \l_@@_current_tl }
- \prop_put:cvx { l_@@_named_ #1 _prop } { l_@@_named_ #1 _tl }
+ \prop_put:cve { l_@@_named_ #1 _prop } { l_@@_named_ #1 _tl }
{ \@@_values:N \l_@@_current_tl }
}
{
@@ -1909,7 +1909,7 @@
% \begin{macrocode}
\prop_new:c { l_@@_named_._prop }
\tl_new:c { l_@@_named_._tl }
-\tl_set:cx { l_@@_named_._tl } { \@@_model:N \l_@@_current_tl }
+\tl_set:ce { l_@@_named_._tl } { \@@_model:N \l_@@_current_tl }
% \end{macrocode}
% \end{variable}
%
@@ -2005,7 +2005,7 @@
\group_begin:
\cs_set_protected:Npn \@@_tmp:w #1#2
{
- \cs_new_protected:cpx { @@_export_format_ #1 :nnN } ##1##2##3
+ \cs_new_protected:cpe { @@_export_format_ #1 :nnN } ##1##2##3
{
\exp_not:N \@@_export:nnnNN {#2} {##1} {##2} ##3
\exp_not:c { @@_export_ #1 :Nw }
@@ -2042,10 +2042,10 @@
% required, then do some simple maths.
% \begin{macrocode}
\cs_new_protected:cpn { @@_export_comma-sep-rgb:Nw } #1#2 ~ #3 ~ #4 \s_@@_stop
- { \tl_set:Nx #1 { #2 , #3 , #4 } }
+ { \tl_set:Ne #1 { #2 , #3 , #4 } }
\cs_new_protected:Npn \@@_export_HTML:Nw #1#2 ~ #3 ~ #4 \s_@@_stop
{
- \tl_set:Nx #1
+ \tl_set:Ne #1
{
\@@_export_HTML:n {#2}
\@@_export_HTML:n {#3}
@@ -2195,7 +2195,7 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_model_init:nnn, \@@_model_init:nnx}
+% \begin{macro}{\@@_model_init:nnn, \@@_model_init:nne}
% A shared auxiliary to do the basics of setting up a new model: reserve a
% number, create a white-equivalent, set up links to the backend.
% \begin{macrocode}
@@ -2204,13 +2204,13 @@
\int_gincr:N \g_@@_model_int
\clist_map_inline:nn { fill , stroke , select }
{
- \cs_new_protected:cpx { @@_backend_ ##1 _ #1 :n } ####1
+ \cs_new_protected:cpe { @@_backend_ ##1 _ #1 :n } ####1
{
\exp_not:c { @@_backend_ ##1 _ #2 :nn }
{ color \int_use:N \g_@@_model_int } {####1}
}
}
- \cs_new_protected:cpx { @@_model_ #1 _white: }
+ \cs_new_protected:cpe { @@_model_ #1 _white: }
{
\prop_put:Nnn \exp_not:N \l_@@_named_white_prop {#1}
{ \exp_not:n {#3} }
@@ -2219,7 +2219,7 @@
}
\use:c { @@_model_ #1 _white: }
}
-\cs_generate_variant:Nn \@@_model_init:nnn { nnx }
+\cs_generate_variant:Nn \@@_model_init:nnn { nne }
% \end{macrocode}
% \end{macro}
%
@@ -2309,7 +2309,7 @@
\use:c { @@_model_separation_ #8 :nnnnnn }
{#6} {#7} {#1} {#2} {#3} {#4}
\prop_gput:Nnn \g_@@_alternative_model_prop {#6} {#8}
- \prop_gput:Nnx \g_@@_colorants_prop {#6}
+ \prop_gput:Nne \g_@@_colorants_prop {#6}
{ \str_convert_pdfname:n {#7} }
}
\cs_new_protected:Npn \@@_model_separation_cmyk:nnnnnn #1#2#3#4#5#6
@@ -2355,7 +2355,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_model_convert:nnn #1#2#3
{
- \cs_new:cpx { @@_convert_ #1 _ #3 :w } ##1 \s_@@_stop
+ \cs_new:cpe { @@_convert_ #1 _ #3 :w } ##1 \s_@@_stop
{
\exp_not:N \exp_args:NNe \exp_not:N \use:nn
\exp_not:c { @@_convert_ #2 _ #3 :w }
@@ -2520,7 +2520,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_model_devicen:nnn #1#2#3
{
- \exp_args:Nx \@@_model_devicen:nnnn
+ \exp_args:Ne \@@_model_devicen:nnnn
{ \clist_count:n {#2} } {#1} {#2} {#3}
}
% \end{macrocode}
@@ -2531,7 +2531,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_model_devicen:nnnn #1#2#3#4
{
- \@@_model_init:nnx {#4} { devicen }
+ \@@_model_init:nne {#4} { devicen }
{
0 \prg_replicate:nn { #1 - 1 } { ~ 0 }
}
@@ -2539,7 +2539,7 @@
{ \@@_model_devicen_parse_generic:nn }
{#4} {#1}
\@@_model_devicen_init:nnn {#1} {#2} {#3}
- \@@_model_devicen_convert:nnnx {#4} {#2} {#3}
+ \@@_model_devicen_convert:nnne {#4} {#2} {#3}
{
1 \prg_replicate:nn { #1 - 1 } { ~ 1 }
}
@@ -2602,7 +2602,7 @@
{#1}
{ \@@_model_devicen_parse:nw {#2} ##1 , ##2 , \q_nil , \s_@@_stop }
}
- \cs_new:cpx { @@_parse_mix_ #1 :nw }
+ \cs_new:cpe { @@_parse_mix_ #1 :nw }
##1 ##2 \s_@@_mark ##3 \s_@@_stop
{
\exp_not:N \@@_model_devicen_mix:nw {##1}
@@ -2680,7 +2680,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_model_devicen_init:nnnn #1#2#3#4
{
- \tl_set:Nx \l_@@_internal_tl
+ \tl_set:Ne \l_@@_internal_tl
{ \prg_replicate:nn {#1} { 1.0 ~ } }
\int_zero:N \l_@@_internal_int
\clist_map_inline:nn {#4}
@@ -2691,7 +2691,7 @@
\exp_after:wN \@@_model_devicen_transform:w
\l_@@_value_tl , 0 , 0 , 0 , \s_@@_stop {#1} {#2}
}
- \tl_put_right:Nx \l_@@_internal_tl
+ \tl_put_right:Ne \l_@@_internal_tl
{
\prg_replicate:nn {#1}
{ neg ~ 1.0 ~ add ~ #1 ~ -1 ~ roll ~ }
@@ -2699,7 +2699,7 @@
\prg_replicate:nn {#2} { ~ pop } ~
#1 ~ 1 ~ roll
}
- \use:x
+ \use:e
{
\@@_backend_devicen_init:nnn
{
@@ -2737,7 +2737,7 @@
}
\cs_new_protected:Npn \@@_model_devicen_transform:nnn #1#2#3
{
- \tl_put_right:Nx \l_@@_internal_tl
+ \tl_put_right:Ne \l_@@_internal_tl
{
\fp_compare:nNnF {#3} = \c_zero_fp
{
@@ -2761,7 +2761,7 @@
{
\use:c { @@_model_devicen_convert_ #2 :nnn } {#1} {#3}
}
-\cs_generate_variant:Nn \@@_model_devicen_convert:nnnn { nnnx }
+\cs_generate_variant:Nn \@@_model_devicen_convert:nnnn { nnne }
\cs_new_protected:Npn \@@_model_devicen_convert_cmyk:nnn #1#2
{
\tl_const:cn { c_@@_fallback_ #1 _tl } { cmyk }
@@ -2780,7 +2780,7 @@
\cs_new_protected:Npn \@@_model_devicen_convert:nnnnn #1#2#3#4#5
{
\cs_new:cpn { @@_convert_ #2 _ #1 :w } ##1 \s_@@_stop {#5}
- \cs_new:cpx { @@_convert_ #1 _ #2 :w } ##1 \s_@@_stop
+ \cs_new:cpe { @@_convert_ #1 _ #2 :w } ##1 \s_@@_stop
{
\exp_not:c { @@_convert_devicen_ #2 : \prg_replicate:nn {#3} { n } w }
\prg_replicate:nn {#3} { { 1 } }
@@ -2963,7 +2963,7 @@
}
\cs_new_protected:Npn \@@_model_iccbased:nn #1#2
{
- \exp_args:NNx \prop_get:NnNTF \c_@@_icc_colorspace_signatures_prop
+ \prop_get:NeNTF \c_@@_icc_colorspace_signatures_prop
{ \file_hex_dump:nnn { #1 } { 17 } { 20 } } \l_@@_internal_tl
{
\exp_last_unbraced:NV \@@_model_iccbased_aux:nnnnnn
@@ -2986,7 +2986,7 @@
\cs_new:cpn { @@_convert_ #5 _gray:w } ##1 \s_@@_stop { 0 }
\cs_new:cpn { @@_convert_gray_ #5 :w } ##1 \s_@@_stop { #2 }
\use:c { @@_model_devicen_parse_ #1 :nn } {#5} {#1}
- \exp_args:Nx \@@_backend_iccbased_init:nnn
+ \exp_args:Ne \@@_backend_iccbased_init:nnn
{ \file_full_name:n {#6} } {#1} {#4}
}
% \end{macrocode}
@@ -3047,9 +3047,9 @@
% is similar to the keys module here.
% \begin{macrocode}
\cs_new_protected:Npn \color_show:n
- { \@@_show:Nn \msg_show:nnxxxx }
+ { \@@_show:Nn \msg_show:nneeee }
\cs_new_protected:Npn \color_log:n
- { \@@_show:Nn \msg_log:nnxxxx }
+ { \@@_show:Nn \msg_log:nneeee }
\cs_new_protected:Npn \@@_show:Nn #1#2
{
#1 { color } { show }
diff --git a/macros/latex/contrib/l3kernel/l3debug.dtx b/macros/latex/contrib/l3kernel/l3debug.dtx
index d700a0f021..8efdc986cc 100644
--- a/macros/latex/contrib/l3kernel/l3debug.dtx
+++ b/macros/latex/contrib/l3kernel/l3debug.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -108,12 +108,12 @@
% \cs{flag_if_exist_p:n}, and if not raises a kernel-level error.
% \end{function}
%
-% \begin{function}{\__kernel_debug_log:x}
+% \begin{function}{\__kernel_debug_log:e}
% \begin{syntax}
-% \cs{__kernel_debug_log:x} \Arg{message text}
+% \cs{__kernel_debug_log:e} \Arg{message text}
% \end{syntax}
% If the \texttt{log-functions} option is active, this function writes
-% the \meta{message text} to the log file using \cs{iow_log:x}.
+% the \meta{message text} to the log file using \cs{iow_log:e}.
% Otherwise, the \meta{message text} is ignored using \cs{use_none:n}.
% This function is only created if debugging is enabled.
% \end{function}
@@ -220,7 +220,7 @@
}
\cs_set_protected:Npn \debug_resume:
{
- \__kernel_tl_set:Nx \l_@@_suspended_tl
+ \__kernel_tl_set:Ne \l_@@_suspended_tl
{ \tl_tail:N \l_@@_suspended_tl }
\tl_if_empty:NT \l_@@_suspended_tl
{
@@ -269,7 +269,7 @@
\@@_suspended:T \use_none:nnn
\cs_if_exist:NF ##1
{
- \msg_error:nnx { debug } { non-declared-variable }
+ \msg_error:nne { debug } { non-declared-variable }
{ \token_to_str:N ##1 }
}
}
@@ -278,7 +278,7 @@
\@@_suspended:T \use_none:nnn
\cs_if_exist:NF ##1
{
- \msg_error:nnx { kernel } { command-not-defined }
+ \msg_error:nne { kernel } { command-not-defined }
{ \token_to_str:N ##1 }
}
}
@@ -362,7 +362,7 @@
\if:w #1 \scan_stop:
\cs_gset_nopar:Npn #1 {#2}
\else:
- \msg_error:nnxxx { debug } { local-global }
+ \msg_error:nneee { debug } { local-global }
{#1} {#2} { \iow_char:N \\ #3 }
\fi:
\fi:
@@ -374,19 +374,19 @@
% \end{macro}
%
% \begin{macro}{\@@_log-functions_on:, \@@_log-functions_off:}
-% \begin{macro}{\__kernel_debug_log:x}
+% \begin{macro}{\__kernel_debug_log:e}
% These two functions (corresponding to the \pkg{expl3} option
-% \texttt{log-functions}) control whether \cs{__kernel_debug_log:x}
+% \texttt{log-functions}) control whether \cs{__kernel_debug_log:e}
% writes to the log file or not. By default, logging is off.
% \begin{macrocode}
\cs_new_protected:cpn { @@_log-functions_on: }
{
- \cs_set_protected:Npn \__kernel_debug_log:x
- { \@@_suspended:T \use_none:nn \iow_log:x }
+ \cs_set_protected:Npn \__kernel_debug_log:e
+ { \@@_suspended:T \use_none:nn \iow_log:e }
}
\cs_new_protected:cpn { @@_log-functions_off: }
- { \cs_set_protected:Npn \__kernel_debug_log:x { \use_none:n } }
-\cs_new_protected:Npn \__kernel_debug_log:x { \use_none:n }
+ { \cs_set_protected:Npn \__kernel_debug_log:e { \use_none:n } }
+\cs_new_protected:Npn \__kernel_debug_log:e { \use_none:n }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -510,11 +510,11 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_generate_parameter_list:NNN #1#2#3
{
- \__kernel_tl_set:Nx \l_@@_internal_tl
+ \__kernel_tl_set:Ne \l_@@_internal_tl
{ \exp_last_unbraced:Nf \use_ii:nnn \cs_split_function:N #1 }
- \__kernel_tl_set:Nx #2
+ \__kernel_tl_set:Ne #2
{ \exp_args:NV \@@_build_parm_text:n \l_@@_internal_tl }
- \__kernel_tl_set:Nx #3
+ \__kernel_tl_set:Ne #3
{ \exp_args:NV \@@_build_arg_list:n \l_@@_internal_tl }
}
\cs_new:Npn \@@_build_parm_text:n #1
@@ -658,7 +658,7 @@
{
\cs_gset_eq:cN { @@_ \cs_to_str:N #1 } #1
\@@_generate_parameter_list:NNN #1 \l_@@_tmpa_tl \l_@@_tmpb_tl
- \exp_args:Nx \tex_scantokens:D
+ \exp_args:Ne \tex_scantokens:D
{
\tex_global:D \cs_prefix_spec:N #1
\tex_def:D \exp_not:N #1
@@ -673,23 +673,23 @@
}
\cs_set_protected:Npn \@@_add_to_debug_code:Nnn #1#2#3
{
- \use:x
+ \use:e
{
\cs_set:Npn \exp_not:N \@@_tmp:w
- ####1 \tl_to_str:n { macro: }
- ####2 \tl_to_str:n { -> }
- ####3 \c_backslash_str \tl_to_str:n { @@_ }
+ ##1 \tl_to_str:n { macro: }
+ ##2 \tl_to_str:n { -> }
+ ##3 \c_backslash_str \tl_to_str:n { @@_ }
\cs_to_str:N #1
- ####4 \s_@@_stop
+ ##4 \s_@@_stop
{
- \exp_not:N \exp_args:Nx \exp_not:N \tex_scantokens:D
+ \exp_not:N \exp_args:Ne \exp_not:N \tex_scantokens:D
{
- \tex_global:D ####1
- \tex_def:D \exp_not:N #1 ####2
+ \tex_global:D ##1
+ \tex_def:D \exp_not:N #1 ##2
{
- ####3 \tl_to_str:n {#2}
+ ##3 \tl_to_str:n {#2}
\c_backslash_str @@_ \cs_to_str:N #1
- ####4 \tl_to_str:n {#3}
+ ##4 \tl_to_str:n {#3}
}
}
}
@@ -721,7 +721,7 @@
}
\cs_set_protected:Npn \@@_patch_weird:Nnn #1#2#3
{
- \use:x
+ \use:e
{
\tex_endlinechar:D -1 \scan_stop:
\exp_not:N \tex_scantokens:D
@@ -790,8 +790,8 @@
%
%
% \begin{macrocode}
-\cs_gset_protected:Npn \__kernel_tl_set:Nx { \cs_set_nopar:Npx }
-\cs_gset_protected:Npn \__kernel_tl_gset:Nx { \cs_gset_nopar:Npx }
+\cs_gset_protected:Npn \__kernel_tl_set:Ne { \cs_set_nopar:Npe }
+\cs_gset_protected:Npn \__kernel_tl_gset:Ne { \cs_gset_nopar:Npe }
% \end{macrocode}
%
% Patching where the first argument to a function needs scope-checking:
@@ -838,20 +838,21 @@
\skip_set_eq:NN
\skip_add:Nn
\skip_sub:Nn
- \__kernel_tl_set:Nx
+ \__kernel_tl_set:Ne
\tl_clear:N
\tl_set_eq:NN
\tl_put_left:Nn
\tl_put_left:NV
+ \tl_put_left:Nv
+ \tl_put_left:Ne
\tl_put_left:No
- \tl_put_left:Nx
\tl_put_right:Nn
\tl_put_right:NV
+ \tl_put_right:Nv
+ \tl_put_right:Ne
\tl_put_right:No
- \tl_put_right:Nx
\tl_build_begin:N
\tl_build_put_right:Nn
- \tl_build_put_right:Nx
\tl_build_put_left:Nn
\vbox_set:Nn
\vbox_set_top:Nn
@@ -902,20 +903,21 @@
\skip_gset_eq:NN
\skip_gadd:Nn
\skip_gsub:Nn
- \__kernel_tl_gset:Nx
+ \__kernel_tl_gset:Ne
\tl_gclear:N
\tl_gset_eq:NN
\tl_gput_left:Nn
\tl_gput_left:NV
+ \tl_gput_left:Nv
+ \tl_gput_left:Ne
\tl_gput_left:No
- \tl_gput_left:Nx
\tl_gput_right:Nn
\tl_gput_right:NV
+ \tl_gput_right:Nv
+ \tl_gput_right:Ne
\tl_gput_right:No
- \tl_gput_right:Nx
\tl_build_gbegin:N
\tl_build_gput_right:Nn
- \tl_build_gput_right:Nx
\tl_build_gput_left:Nn
\vbox_gset:Nn
\vbox_gset_top:Nn
@@ -940,7 +942,6 @@
\muskip_const:Nn
\skip_const:Nn
\tl_const:Nn
- \tl_const:Nx
}
% \end{macrocode}
%
@@ -991,7 +992,7 @@
\__kernel_patch:nnn
{ }
{
- \__kernel_debug_log:x
+ \__kernel_debug_log:e
{ Defining~\token_to_str:N #1~ \msg_line_context: }
}
{ \__kernel_chk_if_free_cs:N }
@@ -1000,7 +1001,7 @@
{
\cs_if_free:NF #4
{
- \__kernel_debug_log:x
+ \__kernel_debug_log:e
{
Variant~\token_to_str:N #4~%
already~defined;~ not~ changing~ it~ \msg_line_context:
@@ -1013,7 +1014,7 @@
\__kernel_patch:nnn
{
\cs_if_exist:cF { \c_@@_code_root_str #1 }
- { \__kernel_debug_log:x { Defining~key~#1~\msg_line_context: } }
+ { \__kernel_debug_log:e { Defining~key~#1~\msg_line_context: } }
}
{ }
{ \@@_cmd_set_direct:nn }
@@ -1021,7 +1022,7 @@
\__kernel_patch:nnn
{ }
{
- \__kernel_debug_log:x
+ \__kernel_debug_log:e
{ Defining~message~ #1 / #2 ~\msg_line_context: }
}
{ \@@_chk_free:nn }
@@ -1059,7 +1060,7 @@
{
\@@_trace_push:nnN { regex } { 1 } \@@_escape_use:nnnn
\group_begin:
- \__kernel_tl_set:Nx \l_@@_internal_a_tl
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl
{ \@@_trace_pop:nnN { regex } { 1 } \@@_escape_use:nnnn }
\use_none:nnn
}
@@ -1081,7 +1082,7 @@
{ \@@_build_for_cs:n }
\__kernel_patch:nnn
{
- \@@_trace:nnx { regex } { 2 }
+ \@@_trace:nne { regex } { 2 }
{
regex~new~state~
L=\int_use:N \l_@@_left_state_int ~ -> ~
@@ -1103,24 +1104,24 @@
\__kernel_patch:nnn
{
\@@_trace_push:nnN { regex } { 1 } \@@_match:n
- \@@_trace:nnx { regex } { 1 } { analyzing~query~token~list }
+ \@@_trace:nne { regex } { 1 } { analyzing~query~token~list }
}
{ \@@_trace_pop:nnN { regex } { 1 } \@@_match:n }
{ \@@_match:n }
\__kernel_patch:nnn
{
\@@_trace_push:nnN { regex } { 1 } \@@_match_cs:n
- \@@_trace:nnx { regex } { 1 } { analyzing~query~token~list }
+ \@@_trace:nne { regex } { 1 } { analyzing~query~token~list }
}
{ \@@_trace_pop:nnN { regex } { 1 } \@@_match_cs:n }
{ \@@_match_cs:n }
\__kernel_patch:nnn
- { \@@_trace:nnx { regex } { 1 } { initializing } }
+ { \@@_trace:nne { regex } { 1 } { initializing } }
{ }
{ \@@_match_init: }
\__kernel_patch:nnn
{
- \@@_trace:nnx { regex } { 2 }
+ \@@_trace:nne { regex } { 2 }
{ state~\int_use:N \l_@@_curr_state_int }
}
{ }
@@ -1153,7 +1154,7 @@
{
\char_set_catcode_parameter:N \#
\tex_endlinechar:D -1 \scan_stop:
- \exp_args:Nx \tex_scantokens:D
+ \exp_args:Ne \tex_scantokens:D
{
\tex_global:D \cs_prefix_spec:N #1 \tex_def:D \exp_not:N #1
\cs_parameter_spec:N #1
@@ -1172,7 +1173,7 @@
{
\tl_map_inline:nn {#1}
{
- \exp_args:NNx \__kernel_patch:Nn ##1
+ \exp_args:NNe \__kernel_patch:Nn ##1
{
{ \c_hash_str 1 }
{
@@ -1238,7 +1239,7 @@
{
\tl_map_inline:nn {#1}
{
- \exp_args:NNx \__kernel_patch:Nn ##1
+ \exp_args:NNe \__kernel_patch:Nn ##1
{
{
\exp_not:N \__kernel_chk_expr:nNnN { \c_hash_str 1 }
@@ -1286,7 +1287,7 @@
{
\tl_map_inline:nn {#1}
{
- \exp_args:NNx \__kernel_patch:Nn ##1
+ \exp_args:NNe \__kernel_patch:Nn ##1
{
{
\exp_not:N \__kernel_chk_expr:nNnN { \c_hash_str 1 }
@@ -1325,7 +1326,7 @@
{
\clist_map_inline:nn { :nNnT , :nNnF , :nNnTF , _p:nNn }
{
- \exp_args:Ncx \__kernel_patch:Nn { #1 ##1 }
+ \exp_args:Nce \__kernel_patch:Nn { #1 ##1 }
{
{
\exp_not:N \__kernel_chk_expr:nNnN { \c_hash_str 1 }
@@ -1349,7 +1350,7 @@
{
\clist_map_inline:nn { :nT , :nF , :nTF , _p:n }
{
- \exp_args:Ncx \__kernel_patch:Nn { #1 ##1 }
+ \exp_args:Nce \__kernel_patch:Nn { #1 ##1 }
{
{
\exp_not:N \__kernel_chk_expr:nNnN { \c_hash_str 1 }
diff --git a/macros/latex/contrib/l3kernel/l3deprecation.dtx b/macros/latex/contrib/l3kernel/l3deprecation.dtx
index a60fe16ff4..c9564f4080 100644
--- a/macros/latex/contrib/l3kernel/l3deprecation.dtx
+++ b/macros/latex/contrib/l3kernel/l3deprecation.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -145,11 +145,11 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_warn_once:nnNnn #1#2#3#4#5
{
- \cs_gset_protected:Npx #3
+ \cs_gset_protected:Npe #3
{
\__kernel_if_debug:TF
{
- \exp_not:N \msg_warning:nnxxx
+ \exp_not:N \msg_warning:nneee
{ deprecation } { deprecated-command }
{#1}
{ \token_to_str:N #3 }
@@ -193,7 +193,7 @@
\exp_not:N \msg_expandable_error:nnnnn
{ deprecation } { deprecated-command }
{ \tl_to_str:n {#3} } { \token_to_str:N #1 } { \tl_to_str:n {#2} }
- \exp_not:N \msg_error:nnxxx
+ \exp_not:N \msg_error:nneee
{ deprecation } { deprecated-command }
{ \tl_to_str:n {#3} } { \token_to_str:N #1 } { \tl_to_str:n {#2} }
}
@@ -682,25 +682,25 @@
{ meaning } { meaning_remove }
}
{
- \use:x
+ \use:e
{
\__kernel_patch_deprecation:nnNNpn { 2022-01-11 } { \peek_remove_spaces:n }
- \cs_gset_protected:Npn \exp_not:c { peek_ #1 _ignore_spaces:NTF } ####1####2####3
+ \cs_gset_protected:Npn \exp_not:c { peek_ #1 _ignore_spaces:NTF } ##1##2##3
{
\peek_remove_spaces:n
- { \exp_not:c { peek_ #1 :NTF } ####1 {####2} {####3} }
+ { \exp_not:c { peek_ #1 :NTF } ##1 {##2} {##3} }
}
\__kernel_patch_deprecation:nnNNpn { 2022-01-11 } { \peek_remove_spaces:n }
- \cs_gset_protected:Npn \exp_not:c { peek_ #1 _ignore_spaces:NT } ####1####2
+ \cs_gset_protected:Npn \exp_not:c { peek_ #1 _ignore_spaces:NT } ##1##2
{
\peek_remove_spaces:n
- { \exp_not:c { peek_ #1 :NT } ####1 {####2} }
+ { \exp_not:c { peek_ #1 :NT } ##1 {##2} }
}
\__kernel_patch_deprecation:nnNNpn { 2022-01-11 } { \peek_remove_spaces:n }
- \cs_gset_protected:Npn \exp_not:c { peek_ #1 _ignore_spaces:NF } ####1####2
+ \cs_gset_protected:Npn \exp_not:c { peek_ #1 _ignore_spaces:NF } ##1##2
{
\peek_remove_spaces:n
- { \exp_not:c { peek_ #1 :NF } ####1 {####2} }
+ { \exp_not:c { peek_ #1 :NF } ##1 {##2} }
}
}
}
diff --git a/macros/latex/contrib/l3kernel/l3doc.dtx b/macros/latex/contrib/l3kernel/l3doc.dtx
index b1744b9f7b..ed675106ba 100644
--- a/macros/latex/contrib/l3kernel/l3doc.dtx
+++ b/macros/latex/contrib/l3kernel/l3doc.dtx
@@ -85,7 +85,7 @@ and all files in that bundle must be distributed together.
% require you to do updates, if the class changes.}}
%
% \author{\Team}
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
% \maketitle
% \tableofcontents
%
@@ -957,7 +957,7 @@ and all files in that bundle must be distributed together.
% \seq_set_split:NoV,
% \str_case:fn,
% \tl_count:f,
-% \tl_greplace_all:Nxn,
+% \tl_greplace_all:Nen,
% \tl_greplace_all:Nno,
% \tl_if_head_eq_charcode:oNTF,
% \tl_if_head_eq_charcode:oNT,
@@ -968,17 +968,14 @@ and all files in that bundle must be distributed together.
% \tl_if_in:NoTF,
% \tl_if_in:NoT,
% \tl_if_in:NoF,
-% \tl_remove_all:Nx,
-% \tl_replace_all:Nxn,
-% \tl_replace_all:Nnx,
+% \tl_remove_all:Ne,
+% \tl_replace_all:Nen,
+% \tl_replace_all:Nne,
% \tl_replace_all:Non,
% \tl_replace_all:Nno,
% \tl_replace_once:Noo,
% \tl_to_str:f,
% \tl_to_str:o,
-% \prop_get:NxNTF,
-% \prop_put:Nxn,
-% \prop_gput:NVx,
% }
% A few missing variants.
% \begin{macrocode}
@@ -1001,9 +998,6 @@ and all files in that bundle must be distributed together.
\cs_generate_variant:Nn \tl_replace_once:Nnn { Noo }
\cs_generate_variant:Nn \tl_set_rescan:Nnn { NnV }
\cs_generate_variant:Nn \tl_to_str:n { f , o }
-\cs_generate_variant:Nn \prop_get:NnNTF { Nx }
-\cs_generate_variant:Nn \prop_put:Nnn { Nx }
-\cs_generate_variant:Nn \prop_gput:Nnn { NVx }
% \end{macrocode}
% \end{macro}
%
@@ -1033,7 +1027,7 @@ and all files in that bundle must be distributed together.
\cs_new_protected:Npn \@@_trim_right:Nn #1#2
{
\cs_set:Npn \@@_tmp:w ##1 #2 ##2 \q_stop { \exp_not:n {##1} }
- \__kernel_tl_set:Nx #1 { \exp_after:wN \@@_tmp:w #1 #2 \q_stop }
+ \__kernel_tl_set:Ne #1 { \exp_after:wN \@@_tmp:w #1 #2 \q_stop }
}
\cs_generate_variant:Nn \@@_trim_right:Nn { No }
% \end{macrocode}
@@ -1076,7 +1070,7 @@ and all files in that bundle must be distributed together.
#1 \g_@@_module_name_tl
}
}
-\cs_new_protected:Npx \@@_replace_at_at_aux:Nn #1#2
+\cs_new_protected:Npe \@@_replace_at_at_aux:Nn #1#2
{
\tl_replace_all:Nnn #1 { \token_to_str:N @ } { @ }
\tl_replace_all:Nnn #1 { \token_to_str:N _ } { _ }
@@ -1130,7 +1124,7 @@ and all files in that bundle must be distributed together.
\@@_trim_right:Nn \l_@@_detect_internals_tl _
\@@_trim_right:Nn \l_@@_detect_internals_tl :
\@@_trim_right:No \l_@@_detect_internals_tl { \token_to_str:N : }
- \msg_warning:nnxxx { l3doc } { foreign-internal }
+ \msg_warning:nneee { l3doc } { foreign-internal }
{ \tl_to_str:N \l_@@_detect_internals_cs_tl }
{ \tl_to_str:N \l_@@_detect_internals_tl }
{ \tl_to_str:N \g_@@_module_name_tl }
@@ -1253,14 +1247,14 @@ and all files in that bundle must be distributed together.
\@@_if_almost_str:nTF {#1}
{
\@@_key_get_base_TF:nN {#1} \l_@@_tmpa_tl
- \__kernel_tl_set:Nx #2
+ \__kernel_tl_set:Ne #2
{ \@@_split_function_do:on \l_@@_tmpa_tl { \@@_base_form_aux:nnN } }
}
{ \tl_set:Nn #2 {#1} }
}
-\cs_new:Npx \@@_key_get_base_TF:nN #1#2
+\cs_new:Npe \@@_key_get_base_TF:nN #1#2
{
- \__kernel_tl_set:Nx #2 { \exp_not:N \tl_to_str:n {#1} }
+ \__kernel_tl_set:Ne #2 { \exp_not:N \tl_to_str:n {#1} }
\tl_if_in:NoF #2 { \tl_to_str:n {:} }
{ \exp_not:N \prg_break: }
\tl_if_in:onT { #2 z } { \tl_to_str:n {TF} z }
@@ -1312,7 +1306,7 @@ and all files in that bundle must be distributed together.
\tl_if_head_eq_charcode:nNTF {#4} :
{ #2 {#1} }
{
- \use:x
+ \use:e
{
\exp_not:n {#3}
{ \@@_base_form_aux:nnN {#4} {#5} #6 }
@@ -1602,7 +1596,7 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\cs_set_protected:Npn \ifnot@excluded
{
- \exp_args:Nxx \expanded@notin
+ \exp_args:Nee \expanded@notin
{ \c_backslash_str \tl_to_str:N \macro@namepart , }
{ \exp_args:NV \tl_to_str:n \index@excludelist }
}
@@ -2016,7 +2010,7 @@ and all files in that bundle must be distributed together.
\verbatim@font
\@@_if_almost_str:VT \l_@@_cmd_tl
{
- \__kernel_tl_set:Nx \l_@@_cmd_tl { \tl_to_str:N \l_@@_cmd_tl }
+ \__kernel_tl_set:Ne \l_@@_cmd_tl { \tl_to_str:N \l_@@_cmd_tl }
\bool_if:NT \g_@@_cs_break_bool
{
\regex_replace_all:nnN
@@ -2038,13 +2032,13 @@ and all files in that bundle must be distributed together.
{
\quark_if_no_value:NF \l_@@_cmd_index_tl
{
- \__kernel_tl_set:Nx \l_@@_cmd_tl
+ \__kernel_tl_set:Ne \l_@@_cmd_tl
{ \c_backslash_str \exp_not:o { \l_@@_cmd_index_tl } }
}
\exp_args:No \@@_key_get:n { \l_@@_cmd_tl }
\quark_if_no_value:NF \l_@@_cmd_module_tl
{
- \__kernel_tl_set:Nx \l_@@_index_module_tl
+ \__kernel_tl_set:Ne \l_@@_index_module_tl
{ \tl_to_str:N \l_@@_cmd_module_tl }
}
\@@_special_index_module:ooonN
@@ -2153,19 +2147,19 @@ and all files in that bundle must be distributed together.
% \end{macro}
%
% \begin{macro}
-% {\@@_get_hyper_target:nN, \@@_get_hyper_target:oN, \@@_get_hyper_target:xN}
+% {\@@_get_hyper_target:nN, \@@_get_hyper_target:oN, \@@_get_hyper_target:eN}
% Create a \pkg{hyperref} anchor from a macro name~|#1| and stores it
% in the token list variable~|#2|. For instance, |\prg_replicate:nn|
% gives |doc/function//prg/replicate:nn|.
% \begin{macrocode}
\cs_new_protected:Npn \@@_get_hyper_target:nN #1#2
{
- \__kernel_tl_set:Nx #2 { \tl_to_str:n {#1} }
- \tl_replace_all:Nxn #2 { \c_underscore_str } { / }
- \tl_remove_all:Nx #2 { \c_backslash_str }
+ \__kernel_tl_set:Ne #2 { \tl_to_str:n {#1} }
+ \tl_replace_all:Nen #2 { \c_underscore_str } { / }
+ \tl_remove_all:Ne #2 { \c_backslash_str }
\tl_put_left:Nn #2 { doc/function// }
}
-\cs_generate_variant:Nn \@@_get_hyper_target:nN { o , x }
+\cs_generate_variant:Nn \@@_get_hyper_target:nN { o , e }
% \end{macrocode}
% \end{macro}
%
@@ -2183,21 +2177,21 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\cs_new_protected:Npn \@@_names_get_seq:nN #1#2
{
- \__kernel_tl_set:Nx \l_@@_tmpa_tl { \tl_to_str:n {#1} }
+ \__kernel_tl_set:Ne \l_@@_tmpa_tl { \tl_to_str:n {#1} }
\bool_if:NTF \l_@@_names_verb_bool
{
\seq_clear:N #2
\seq_put_right:NV #2 \l_@@_tmpa_tl
}
{
- \tl_remove_all:Nx \l_@@_tmpa_tl
+ \tl_remove_all:Ne \l_@@_tmpa_tl
{ \iow_char:N \^^M \c_percent_str }
- \tl_remove_all:Nx \l_@@_tmpa_tl { \tl_to_str:n { ^ ^ A } }
- \tl_remove_all:Nx \l_@@_tmpa_tl { \iow_char:N \^^I }
- \tl_remove_all:Nx \l_@@_tmpa_tl { \iow_char:N \^^M }
+ \tl_remove_all:Ne \l_@@_tmpa_tl { \tl_to_str:n { ^ ^ A } }
+ \tl_remove_all:Ne \l_@@_tmpa_tl { \iow_char:N \^^I }
+ \tl_remove_all:Ne \l_@@_tmpa_tl { \iow_char:N \^^M }
\@@_detect_internals:N \l_@@_tmpa_tl
\@@_replace_at_at:N \l_@@_tmpa_tl
- \exp_args:NNx \seq_set_from_clist:Nn #2
+ \exp_args:NNe \seq_set_from_clist:Nn #2
{ \tl_to_str:N \l_@@_tmpa_tl }
}
}
@@ -2238,14 +2232,14 @@ and all files in that bundle must be distributed together.
\tl_if_head_eq_charcode:nNTF {#2} :
{ \@@_names_parse_aux:nnn {#4} {#4} { \scan_stop: } }
{
- \exp_args:Nx \@@_names_parse_aux:nnn
+ \exp_args:Ne \@@_names_parse_aux:nnn
{ \@@_base_form_aux:nnN {#1} {#2} #3 }
{#1} {#2}
}
}
{
\bool_if:NT \l_@@_macro_TF_bool
- { \msg_error:nnx { l3doc } { no-signature-TF } {#4} }
+ { \msg_error:nne { l3doc } { no-signature-TF } {#4} }
\@@_names_parse_aux:nnn {#4} {#4} { \scan_stop: }
}
}
@@ -2294,12 +2288,12 @@ and all files in that bundle must be distributed together.
\str_if_eq:VnTF \l_@@_tmpa_tl { \scan_stop: }
{
\seq_gclear:N \g_@@_variants_seq
- \@@_names_typeset_auxii:x { \g_@@_base_name_tl }
+ \@@_names_typeset_auxii:e { \g_@@_base_name_tl }
}
{
\seq_gset_eq:NN \g_@@_variants_seq #1
\seq_gpop:NN \g_@@_variants_seq \l_@@_tmpb_tl
- \@@_names_typeset_auxii:x
+ \@@_names_typeset_auxii:e
{ \g_@@_base_name_tl : \l_@@_tmpb_tl }
}
}
@@ -2308,7 +2302,7 @@ and all files in that bundle must be distributed together.
% \end{macro}
%
% \begin{macro}
-% {\@@_names_typeset_auxii:n, \@@_names_typeset_auxii:x}
+% {\@@_names_typeset_auxii:n, \@@_names_typeset_auxii:e}
% In case the option |pTF| was given, typeset predicates before the
% |TF| functions. In case the option |noTF| was given, typeset the
% non-|TF| function as well. Pass the relevant boolean in both cases
@@ -2318,7 +2312,7 @@ and all files in that bundle must be distributed together.
{
\bool_if:NT \l_@@_macro_pTF_bool
{
- \@@_names_typeset_block:xN
+ \@@_names_typeset_block:eN
{ \@@_predicate_from_base:n {#1} }
\c_false_bool
}
@@ -2326,11 +2320,11 @@ and all files in that bundle must be distributed together.
{ \@@_names_typeset_block:nN {#1} \c_false_bool }
\@@_names_typeset_block:nN {#1} \l_@@_macro_TF_bool
}
-\cs_generate_variant:Nn \@@_names_typeset_auxii:n { x }
+\cs_generate_variant:Nn \@@_names_typeset_auxii:n { e }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_names_typeset_block:nN, \@@_names_typeset_block:xN}
+% \begin{macro}{\@@_names_typeset_block:nN, \@@_names_typeset_block:eN}
% Names in \env{function} and \env{macro} environments are typeset
% differently. To distinguish the two note that
% \cs{l_@@_nested_macro_int} is at least one when in an \env{macro}
@@ -2343,7 +2337,7 @@ and all files in that bundle must be distributed together.
{ \@@_typeset_function_block:nN }
{ \@@_macro_typeset_block:nN }
}
-\cs_generate_variant:Nn \@@_names_typeset_block:nN { x }
+\cs_generate_variant:Nn \@@_names_typeset_block:nN { e }
% \end{macrocode}
% \end{macro}
%
@@ -2391,7 +2385,7 @@ and all files in that bundle must be distributed together.
\seq_set_eq:NN \l_@@_tmpa_seq ##1
\seq_pop:NN \l_@@_tmpa_seq \l_@@_tmpa_tl
\seq_get:NN \l_@@_tmpa_seq \l_@@_tmpb_tl
- \exp_args:NNx
+ \exp_args:NNe
\group_end:
#1
{
@@ -2479,7 +2473,7 @@ and all files in that bundle must be distributed together.
\exp_args:No \@@_date_compare:nNnT
{#1} > { \c_sys_year_int - \c_sys_month_int - \c_sys_day_int }
{
- \msg_error:nnxx { l3doc } { future-date }
+ \msg_error:nnee { l3doc } { future-date }
{ \tl_to_str:N \l_@@_macro_argument_tl }
{#1}
}
@@ -2707,15 +2701,15 @@ and all files in that bundle must be distributed together.
%
% ^^A TODO: collect all index targets from a given function environment in a box and stick it at the top.
% \begin{macro}
-% {\@@_typeset_function_block:nN, \@@_typeset_function_block:xN}
-% \begin{macro}{\@@_function_index:n, \@@_function_index:x}
+% {\@@_typeset_function_block:nN, \@@_typeset_function_block:eN}
+% \begin{macro}{\@@_function_index:n, \@@_function_index:e}
% |#1| is a csname, |#2| a boolean indicating whether to add |TF| or not.
% \begin{macrocode}
\cs_new_protected:Npn \@@_typeset_function_block:nN #1#2
{
- \@@_function_index:x
+ \@@_function_index:e
{ #1 \bool_if:NT #2 { \tl_to_str:n {TF} } }
- \@@_function_label:xN {#1} #2
+ \@@_function_label:eN {#1} #2
#1
\bool_if:NT #2 { \@@_typeset_TF: }
\@@_typeset_expandability:
@@ -2723,13 +2717,13 @@ and all files in that bundle must be distributed together.
{ \@@_typeset_variant_list:nN {#1} #2 }
\\
}
-\cs_generate_variant:Nn \@@_typeset_function_block:nN { x }
+\cs_generate_variant:Nn \@@_typeset_function_block:nN { e }
\cs_new_protected:Npn \@@_function_index:n #1
{
\seq_gput_right:Nn \g_doc_functions_seq {#1}
\@@_special_index:nn {#1} { usage }
}
-\cs_generate_variant:Nn \@@_function_index:n { x }
+\cs_generate_variant:Nn \@@_function_index:n { e }
% \end{macrocode}
%
% \begin{macrocode}
@@ -2796,7 +2790,7 @@ and all files in that bundle must be distributed together.
{
\bool_if:NF \l_@@_no_label_bool
{
- \@@_get_hyper_target:xN
+ \@@_get_hyper_target:eN
{
\exp_not:n {#1}
\bool_if:NT #2 { \tl_to_str:n {TF} }
@@ -2805,7 +2799,7 @@ and all files in that bundle must be distributed together.
\exp_args:No \label { \l_@@_tmpa_tl }
}
}
-\cs_generate_variant:Nn \@@_function_label:nN { x }
+\cs_generate_variant:Nn \@@_function_label:nN { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3064,7 +3058,7 @@ and all files in that bundle must be distributed together.
\l_@@_macro_do_not_index_tl
\exp_args:NNV \seq_set_from_clist:Nn
\l_@@_tmpa_seq \l_@@_macro_do_not_index_tl
- \__kernel_tl_set:Nx \l_@@_macro_do_not_index_tl
+ \__kernel_tl_set:Ne \l_@@_macro_do_not_index_tl
{ \seq_use:Nn \l_@@_tmpa_seq { , } }
\exp_args:NV \DoNotIndex \l_@@_macro_do_not_index_tl
}
@@ -3105,7 +3099,7 @@ and all files in that bundle must be distributed together.
\@@_macro_single:nNN {#1} \c_true_bool #2
\seq_if_empty:NF \g_@@_variants_seq
{
- \@@_macro_typeset_variant_list:xN
+ \@@_macro_typeset_variant_list:eN
{ \@@_get_function_name:n {#1} } #2
}
}
@@ -3115,7 +3109,7 @@ and all files in that bundle must be distributed together.
\seq_map_inline:Nn \g_@@_variants_seq
{ \@@_macro_single:nNN { #1 : ##1 } \c_false_bool #2 }
}
-\cs_generate_variant:Nn \@@_macro_typeset_variant_list:nN { x }
+\cs_generate_variant:Nn \@@_macro_typeset_variant_list:nN { e }
% \end{macrocode}
% \end{macro}
%
@@ -3137,7 +3131,7 @@ and all files in that bundle must be distributed together.
\tl_set:Nn \saved@macroname {#1}
\@@_macro_typeset_one:nN {#1} #3
\bool_if:NT #3 { \DoNotIndex {#1} }
- \exp_args:Nx \@@_macro_index:nN
+ \exp_args:Ne \@@_macro_index:nN
{ #1 \bool_if:NT #3 { \tl_to_str:n { TF } } }
#2
}
@@ -3191,7 +3185,7 @@ and all files in that bundle must be distributed together.
\cs_new_protected:Npn \@@_print_macroname:nN #1#2
{
\strut
- \@@_get_hyper_target:xN
+ \@@_get_hyper_target:eN
{
\exp_not:n {#1}
\bool_if:NT #2 { \tl_to_str:n {TF} }
@@ -3295,7 +3289,7 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\cs_new_protected:Npn \@@_test_missing:n #1
{
- \@@_test_missing_aux:Nxn
+ \@@_test_missing_aux:Nen
\g_@@_missing_tests_prop
{ \seq_use:Nn \l_@@_names_seq { , } }
{ { \g_file_curr_name_str \c_space_tl (#1) } }
@@ -3307,7 +3301,7 @@ and all files in that bundle must be distributed together.
{ \tl_set:Nn \l_@@_tmpa_tl {#3} }
\prop_put:Nno #1 {#2} \l_@@_tmpa_tl
}
-\cs_generate_variant:Nn \@@_test_missing_aux:Nnn { Nx }
+\cs_generate_variant:Nn \@@_test_missing_aux:Nnn { Ne }
% \end{macrocode}
% \end{macro}
%
@@ -3345,7 +3339,7 @@ and all files in that bundle must be distributed together.
{
\seq_set_filter:NNn \l_@@_tmpa_seq \l_@@_names_seq
{ ! \@@_if_macro_internal_p:n {##1} }
- \seq_gput_right:Nx \g_@@_not_tested_seq
+ \seq_gput_right:Ne \g_@@_not_tested_seq
{
\seq_use:Nn \l_@@_tmpa_seq { , }
\bool_if:NTF \l_@@_macro_pTF_bool {~(pTF)}
@@ -3415,10 +3409,10 @@ and all files in that bundle must be distributed together.
\bool_if:NTF \l_@@_macro_var_bool {variable} {function}
\int_compare:nNnTF \l_@@_tmpa_int = 1 {~is~} {s~are~}
documented~on~page~
- \@@_get_hyper_target:xN
+ \@@_get_hyper_target:eN
{ \seq_item:Nn \g_@@_nested_names_seq { 1 } }
\l_@@_tmpa_tl
- \exp_args:Nx \pageref { \l_@@_tmpa_tl } .
+ \exp_args:Ne \pageref { \l_@@_tmpa_tl } .
}
\seq_gclear:N \g_@@_nested_names_seq
}
@@ -3540,6 +3534,39 @@ and all files in that bundle must be distributed together.
% \end{macrocode}
% \end{environment}
%
+% \subsection{Footnote support}
+% The environments \env{function} and \env{variable} are boxes
+% and so looses footnotes. The following implements support.
+% It relies currently on an internal from hyperref to get the correct targets.
+%
+% \begin{macrocode}
+\providecommand\Hy@footnote@currentHref{}
+\prop_new:N\g_@@_fnmark_prop
+\cs_new_protected:Npn \@@_fn_store:
+ {
+ \prop_gput:Nee\g_@@_fnmark_prop
+ {fn\int_use:N\c@footnote}{{\Hy@footnote@currentHref}{\int_use:N\c@footnote}}
+ }
+\cs_new_protected:Npn \@@_fn_restore:n #1
+ {
+ \prop_get:NnN \g_@@_fnmark_prop {fn#1}\l_@@_tmpa_tl
+ \tl_gset:Ne\Hy@footnote@currentHref
+ {\exp_last_unbraced:NV\use_i:nn \l_@@_tmpa_tl }
+ \setcounter{footnote}{\exp_last_unbraced:NV\use_ii:nn \l_@@_tmpa_tl}
+ }
+
+\cs_generate_variant:Nn \hook_gput_next_code:nn {ne}
+\cs_new_protected:Npn \@@_fn_footnote:nn #1 #2
+ {
+ \footnotemark
+ \@@_fn_store:
+ \hook_gput_next_code:ne {env/#1/after}
+ {\exp_not:N\@@_fn_restore:n{\int_use:N\c@footnote}{\exp_not:n{\footnotetext{#2}}}}}
+
+\AddToHook{env/function/begin}{\def\footnote{\@@_fn_footnote:nn{function}}}
+\AddToHook{env/variable/begin}{\def\footnote{\@@_fn_footnote:nn{variable}}}
+% \end{macrocode}
+%
% \subsection{Documenting templates}
%
% \begin{macrocode}
@@ -3713,7 +3740,7 @@ and all files in that bundle must be distributed together.
\@tempswatrue
\if@partsw
\@tempswafalse
- \cs_set:Npx \@tempb {#1}
+ \cs_set:Npe \@tempb {#1}
\clist_map_inline:Nn \@partlist
{
\if_meaning:w \@tempa \@tempb
@@ -3734,7 +3761,7 @@ and all files in that bundle must be distributed together.
\part{\currentfile}
{
\cs_set_eq:NN \ttfamily\relax
- \cs_gset:Npx \filekey
+ \cs_gset:Npe \filekey
{ \filekey,~ \thepart = { \ttfamily \currentfile } }
}
\DocInput{\currentfile}
@@ -3920,6 +3947,8 @@ and all files in that bundle must be distributed together.
\tl_new:N \l_@@_doc_def_tl
\tl_new:N \l_@@_doc_undef_tl
\tl_new:N \l_@@_undoc_def_tl
+\tl_const:Nn \c_@@_iow_separator_tl { ---- }
+\tl_const:Nn \c_@@_iow_midrule_tl { -- }
% \end{macrocode}
%
% \begin{macrocode}
@@ -3928,7 +3957,7 @@ and all files in that bundle must be distributed together.
\bool_lazy_and:nnT
{ \g_@@_typeset_implementation_bool } { \g_@@_checkfunc_bool }
{
- \iow_term:x { \c_@@_iow_separator_tl \iow_newline: }
+ \iow_term:e { \c_@@_iow_separator_tl \iow_newline: }
\iow_open:Nn \g_@@_func_iow { \c_sys_jobname_str .cmds }
\tl_clear:N \l_@@_doc_def_tl
@@ -3938,12 +3967,12 @@ and all files in that bundle must be distributed together.
{
\seq_if_in:NnTF \g_doc_macros_seq {##1}
{
- \tl_put_right:Nx \l_@@_doc_def_tl
+ \tl_put_right:Ne \l_@@_doc_def_tl
{ ##1 \iow_newline: }
\iow_now:Nn \g_@@_func_iow { > ~ ##1 }
}
{
- \tl_put_right:Nx \l_@@_doc_undef_tl
+ \tl_put_right:Ne \l_@@_doc_undef_tl
{ ##1 \iow_newline: }
\iow_now:Nn \g_@@_func_iow { ! ~ ##1 }
}
@@ -3952,7 +3981,7 @@ and all files in that bundle must be distributed together.
{
\seq_if_in:NnF \g_doc_functions_seq {##1}
{
- \tl_put_right:Nx \l_@@_undoc_def_tl
+ \tl_put_right:Ne \l_@@_undoc_def_tl
{ ##1 \iow_newline: }
\iow_now:Nn \g_@@_func_iow { ? ~ ##1 }
}
@@ -3971,13 +4000,13 @@ and all files in that bundle must be distributed together.
\l_@@_undoc_def_tl
\iow_close:N \g_@@_func_iow
- \iow_term:x { \c_@@_iow_separator_tl }
+ \iow_term:e { \c_@@_iow_separator_tl }
}
}
\AtEndDocument { \@@_show_functions_defined: }
% \end{macrocode}
%
-% TODO: use \cs{iow_term:x}.
+% TODO: use \cs{iow_term:e}.
% \begin{macrocode}
\cs_new_protected:Npn \@@_functions_typeout:nN #1#2
{
@@ -4014,7 +4043,7 @@ and all files in that bundle must be distributed together.
\iow_newline:
\space\space\space\space\space\space * ~ ##1
}
- \tl_put_right:Nx \l_@@_tmpa_tl
+ \tl_put_right:Ne \l_@@_tmpa_tl
{
\iow_newline: \iow_newline:
The~ following~ macro(s)~ have~ incomplete~ tests:
@@ -4032,7 +4061,7 @@ and all files in that bundle must be distributed together.
\iow_newline:
\space\space\space\space ##1
}
- \tl_put_right:Nx \l_@@_tmpa_tl
+ \tl_put_right:Ne \l_@@_tmpa_tl
{
\iow_newline:
\iow_newline:
@@ -4073,7 +4102,7 @@ and all files in that bundle must be distributed together.
% \end{macrocode}
% Force targets on every code line.
% \begin{macrocode}
-\cs_set_nopar:Npx \theCodelineNo
+\cs_set_nopar:Npe \theCodelineNo
{
\group_begin:
\exp_not:N \HD@savedestfalse
@@ -4091,7 +4120,7 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\bool_new:N \l_@@_allow_indexing_bool
\bool_set_true:N \l_@@_allow_indexing_bool
-\use:x
+\use:e
{
\exp_not:n { \cs_set_nopar:Npn \@starttoc #1 }
{
@@ -4162,7 +4191,7 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\cs_gset_protected:Npn \it@is@a #1
{
- \use:x
+ \use:e
{
\@@_special_index_module:nnnnN
{#1}
@@ -4223,7 +4252,7 @@ and all files in that bundle must be distributed together.
% \end{arguments}
% \begin{macrocode}
{
- \use:x
+ \use:e
{
\exp_not:n { \@@_special_index_aux:nnnnnn {#1} {#2} }
\tl_if_empty:nTF {#3}
@@ -4297,7 +4326,7 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\group_begin:
\char_set_active_eq:NN - \scan_stop:
-\tl_const:Nx \c_@@_active_minus_tl { \char_generate:nn { `- } { 13 } }
+\tl_const:Ne \c_@@_active_minus_tl { \char_generate:nn { `- } { 13 } }
\group_end:
\cs_new_eq:NN \@@_old_hdpindex:nn \hdpindex
\cs_new_eq:NN \@@_old_hdclindex:nnn \hdclindex
@@ -4308,7 +4337,7 @@ and all files in that bundle must be distributed together.
\cs_new_protected:Npn \@@_hdindex:nn #1#2
{
\tl_set:Nn \l_@@_tmpa_tl {#2}
- \tl_replace_all:Nxn \l_@@_tmpa_tl
+ \tl_replace_all:Nen \l_@@_tmpa_tl
{ \exp_not:V \c_@@_active_minus_tl \exp_not:V \c_@@_active_minus_tl }
{ -- }
\seq_set_split:NnV \l_@@_tmpa_seq { -- } \l_@@_tmpa_tl
@@ -4322,11 +4351,11 @@ and all files in that bundle must be distributed together.
\tl_replace_all:Nnn \l_@@_tmpa_tl { MMMM } { \use_none:nn }
\tl_if_in:NnT \l_@@_tmpa_tl { MMMD }
{
- \tl_replace_all:Nxn \l_@@_tmpa_tl
+ \tl_replace_all:Nen \l_@@_tmpa_tl
{ \exp_not:V \c_@@_active_minus_tl MMMD } { - MMMD }
\tl_replace_all:Nnn \l_@@_tmpa_tl { - MMMD } { \@@_hdindex_aux:w }
}
- \use:x { \exp_not:n {#1} { \exp_not:V \l_@@_tmpa_tl } }
+ \use:e { \exp_not:n {#1} { \exp_not:V \l_@@_tmpa_tl } }
}
\cs_new_protected:Npn \@@_hdindex_aux:w #1 M { }
% \end{macrocode}
@@ -4335,7 +4364,7 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\cs_new_protected:Npn \@@_special_index_set:Nn #1#2
{
- \__kernel_tl_set:Nx #1 { \tl_to_str:n {#2} }
+ \__kernel_tl_set:Ne #1 { \tl_to_str:n {#2} }
\@@_if_almost_str:nTF {#2}
{
\tl_replace_all:Non #1 { \tl_to_str:n { __ } }
@@ -4344,7 +4373,7 @@ and all files in that bundle must be distributed together.
\token_to_str:N \_ \token_to_str:N \_
\token_to_str:N \verb * \verbatimchar
}
- \exp_args:Nx \tl_map_inline:nn
+ \exp_args:Ne \tl_map_inline:nn
{ \tl_to_str:N \verbatimchar \token_to_str:N _ }
{
\tl_replace_all:Nnn #1 {##1}
@@ -4353,7 +4382,7 @@ and all files in that bundle must be distributed together.
\token_to_str:N \verb * \verbatimchar
}
}
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{
\token_to_str:N \verb * \verbatimchar
#1 \verbatimchar
@@ -4377,7 +4406,7 @@ and all files in that bundle must be distributed together.
{
\tl_map_inline:nn { \quotechar \actualchar \encapchar \levelchar \bslash }
{
- \tl_replace_all:Nxn #1
+ \tl_replace_all:Nen #1
{ \tl_to_str:N ##1 } { \quotechar \tl_to_str:N ##1 }
}
}
@@ -4404,7 +4433,7 @@ and all files in that bundle must be distributed together.
\cs_new_protected:Npn \@@_key_get:n #1
{
\@@_key_get_base:nN {#1} \l_@@_index_macro_tl
- \__kernel_tl_set:Nx \l_@@_index_key_tl
+ \__kernel_tl_set:Ne \l_@@_index_key_tl
{ \tl_to_str:N \l_@@_index_macro_tl }
\tl_clear:N \l_@@_index_module_tl
\tl_if_in:NoTF \l_@@_index_key_tl { \tl_to_str:n { __ } }
@@ -4427,7 +4456,7 @@ and all files in that bundle must be distributed together.
}
\cs_new_protected:Npn \@@_key_pop:
{
- \__kernel_tl_set:Nx \l_@@_index_key_tl
+ \__kernel_tl_set:Ne \l_@@_index_key_tl
{ \tl_tail:N \l_@@_index_key_tl }
}
% \end{macrocode}
@@ -4442,7 +4471,7 @@ and all files in that bundle must be distributed together.
{
\cs_set:Npn \@@_tmpa:w ##1 #1 ##2 \q_stop
{ \exp_not:n {##1} }
- \__kernel_tl_set:Nx \l_@@_index_module_tl
+ \__kernel_tl_set:Ne \l_@@_index_module_tl
{ \exp_after:wN \@@_tmpa:w \l_@@_index_module_tl #1 \q_stop }
}
\cs_new_protected:Npn \@@_key_drop_underscores:
@@ -4495,7 +4524,7 @@ and all files in that bundle must be distributed together.
% \begin{macrocode}
\cs_new_protected:Npn \@@_key_var:
{
- \exp_args:Nx \tl_if_head_eq_charcode:nNTF
+ \exp_args:Ne \tl_if_head_eq_charcode:nNTF
{ \exp_args:No \str_tail:n \l_@@_index_key_tl } _
{
\str_case:fn { \str_head:N \l_@@_index_key_tl }
@@ -4535,7 +4564,7 @@ and all files in that bundle must be distributed together.
% sorted differently in an index.
% \begin{macrocode}
\clist_new:N \g_@@_non_modules_clist
-\clist_gset:Nx \g_@@_non_modules_clist
+\clist_gset:Ne \g_@@_non_modules_clist
{
\tl_to_str:n
{
diff --git a/macros/latex/contrib/l3kernel/l3doc.pdf b/macros/latex/contrib/l3kernel/l3doc.pdf
index 8ec07dcef3..b8cd8d1e29 100644
--- a/macros/latex/contrib/l3kernel/l3doc.pdf
+++ b/macros/latex/contrib/l3kernel/l3doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3docstrip.dtx b/macros/latex/contrib/l3kernel/l3docstrip.dtx
index 2b40c56fc5..df2b7c63ab 100644
--- a/macros/latex/contrib/l3kernel/l3docstrip.dtx
+++ b/macros/latex/contrib/l3kernel/l3docstrip.dtx
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3docstrip.pdf b/macros/latex/contrib/l3kernel/l3docstrip.pdf
index d93d065c3b..39d53ac5b9 100644
--- a/macros/latex/contrib/l3kernel/l3docstrip.pdf
+++ b/macros/latex/contrib/l3kernel/l3docstrip.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3expan.dtx b/macros/latex/contrib/l3kernel/l3expan.dtx
index 0d7e3e877a..d4fe6b3a30 100644
--- a/macros/latex/contrib/l3kernel/l3expan.dtx
+++ b/macros/latex/contrib/l3kernel/l3expan.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -501,6 +501,7 @@
% \exp_args:NNNo,
% \exp_args:NNNV,
% \exp_args:NNNv,
+% \exp_args:NNNe,
% \exp_args:Nccc,
% \exp_args:NcNc,
% \exp_args:NcNo,
@@ -664,8 +665,8 @@
% This is the \TeX{} \tn{noexpand} primitive. It only prevents
% expansion. At the beginning of an |f|-type argument, a space
% \meta{token} is removed even if it appears as \cs{exp_not:N}
-% \cs{c_space_token}. In an |x|-expanding definition
-% (\cs{cs_new:Npx}), a macro parameter introduces an argument even
+% \cs{c_space_token}. In an |e|-expanding definition
+% (\cs{cs_new:Npe}), a macro parameter introduces an argument even
% if it appears as \cs{exp_not:N} |#| |1|. This differs from
% \cs{exp_not:n}.
% \end{texnote}
@@ -692,7 +693,7 @@
% \emph{must} be surrounded by braces.
% \begin{texnote}
% This is the \eTeX{} \tn{unexpanded} primitive. In an
-% |x|-expanding definition (\cs{cs_new:Npx}), \cs{exp_not:n}~|{#1}|
+% |x|-expanding definition (\cs{cs_new:Npe}), \cs{exp_not:n}~|{#1}|
% is equivalent to |##1| rather than to~|#1|, namely it inserts the
% two characters |#| and~|1|. In an |e|-type argument
% \cs{exp_not:n}~|{#}| is equivalent to |#|, namely it inserts the
@@ -947,7 +948,7 @@
% In this section a general mechanism for defining functions that handle
% arguments is defined. These general expansion functions are
% expandable unless |x| is used. (Any version of |x| is going to have
-% to use one of the \LaTeX3 names for \cs{cs_set:Npx} at some
+% to use one of the \LaTeX3 names for \cs{cs_set:Npe} at some
% point, and so is never going to be expandable.)
%
% The definition of expansion functions with this technique happens
@@ -1080,7 +1081,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \::x #1 \::: #2#3
{
- \cs_set_nopar:Npx \l_@@_internal_tl
+ \cs_set_nopar:Npe \l_@@_internal_tl
{ \exp_not:n { #1 \::: } { \exp_not:n {#2} {#3} } }
\l_@@_internal_tl
}
@@ -1325,7 +1326,7 @@
%
% \begin{macro}[EXP]
% {
-% \exp_args:NNNV, \exp_args:NNNv,
+% \exp_args:NNNV, \exp_args:NNNv, \exp_args:NNNe,
% \exp_args:NcNc, \exp_args:NcNo,
% \exp_args:Ncco,
% }
@@ -1345,6 +1346,13 @@
\exp_after:wN #3
\exp_after:wN { \exp:w \@@_eval_register:c {#4} }
}
+\cs_new:Npn \exp_args:NNNe #1#2#3#4
+ {
+ \exp_after:wN #1
+ \exp_after:wN #2
+ \exp_after:wN #3
+ \tex_expanded:D { {#4} }
+ }
\cs_new:Npn \exp_args:NcNc #1#2#3#4
{
\exp_after:wN #1
@@ -1410,7 +1418,7 @@
}
\cs_new_protected:Npn \::x_unbraced \::: #1#2
{
- \cs_set_nopar:Npx \l_@@_internal_tl { \exp_not:n {#1} #2 }
+ \cs_set_nopar:Npe \l_@@_internal_tl { \exp_not:n {#1} #2 }
\l_@@_internal_tl
}
% \end{macrocode}
@@ -1682,7 +1690,7 @@
% \end{arguments}
% After making sure that the base form exists, test whether it is
% protected or not and define \cs{@@_tmp:w} as either
-% \cs{cs_new:Npx} or \cs{cs_new_protected:Npx}, which is
+% \cs{cs_new:Npe} or \cs{cs_new_protected:Npe}, which is
% then used to define all the variants (except those involving
% \texttt{x}-expansion, always protected). Split up the original base
% function only once, to grab its name and signature. Then we wish to
@@ -1692,7 +1700,7 @@
\cs_new_protected:Npn \cs_generate_variant:Nn #1#2
{
\@@_generate_variant:N #1
- \use:x
+ \use:e
{
\@@_generate_variant:nnNN
\cs_split_function:N #1
@@ -1728,21 +1736,21 @@
% |\bot|, |\splittop|, or |\splitbot|, with |\| replaced by the
% appropriate escape character. If |pr| appears in the part before
% |ma|, the first \cs{s_@@_mark} is taken as an argument of the |wwNw|
-% auxiliary, and |#3| is \cs{cs_new_protected:Npx}, otherwise it
-% is \cs{cs_new:Npx}.
+% auxiliary, and |#3| is \cs{cs_new_protected:Npe}, otherwise it
+% is \cs{cs_new:Npe}.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_generate_variant:N #1
+\cs_new_protected:Npe \@@_generate_variant:N #1
{
\exp_not:N \exp_after:wN \exp_not:N \if_meaning:w
\exp_not:N \exp_not:N #1 #1
- \cs_set_eq:NN \exp_not:N \@@_tmp:w \cs_new_protected:Npx
+ \cs_set_eq:NN \exp_not:N \@@_tmp:w \cs_new_protected:Npe
\exp_not:N \else:
\exp_not:N \exp_after:wN \exp_not:N \@@_generate_variant:ww
\exp_not:N \token_to_meaning:N #1 \tl_to_str:n { ma }
\s_@@_mark
- \s_@@_mark \cs_new_protected:Npx
+ \s_@@_mark \cs_new_protected:Npe
\tl_to_str:n { pr }
- \s_@@_mark \cs_new:Npx
+ \s_@@_mark \cs_new:Npe
\s_@@_stop
\exp_not:N \fi:
}
@@ -1773,7 +1781,7 @@
\cs_new_protected:Npn \@@_generate_variant:nnNN #1#2#3#4
{
\if_meaning:w \c_false_bool #3
- \msg_error:nnx { kernel } { missing-colon }
+ \msg_error:nne { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\exp_after:wN \@@_use_none_delimit_by_q_recursion_stop:w
\fi:
@@ -1837,7 +1845,7 @@
\if_meaning:w \scan_stop: #4
\exp_after:wN \@@_use_none_delimit_by_q_recursion_stop:w
\fi:
- \use:x
+ \use:e
{
\exp_not:N \@@_generate_variant:wwNN
\@@_generate_variant_loop:nNwN { }
@@ -1976,7 +1984,7 @@
\exp_not:n
{
\s_@@_mark
- \msg_error:nnxx { kernel } { variant-too-long }
+ \msg_error:nnee { kernel } { variant-too-long }
{#5} { \token_to_str:N #3 }
\use_none:nnn
\s_@@_stop
@@ -1991,7 +1999,7 @@
\exp_not:n
{
\s_@@_mark
- \msg_error:nnxxxx { kernel } { invalid-variant }
+ \msg_error:nneeee { kernel } { invalid-variant }
{#7} { \token_to_str:N #5 } {#1} {#2}
\use_none:nnn
\s_@@_stop
@@ -2005,7 +2013,7 @@
#3 \s_@@_stop #4 #5 {#6} {#7}
\exp_not:n
{
- \msg_error:nnxxxx
+ \msg_error:nneeee
{ kernel } { deprecated-variant }
{#7} { \token_to_str:N #5 } {#1} {#2}
}
@@ -2039,7 +2047,7 @@
% (provided \texttt{log-functions} is active).
% Otherwise, make sure that the |\exp_args:N #3| form is defined, and
% if it contains |x|, change \cs{@@_tmp:w} locally to
-% \cs{cs_new_protected:Npx}. Then define the variant by
+% \cs{cs_new_protected:Npe}. Then define the variant by
% combining the |\exp_args:N #3| variant and the base function.
% \begin{macrocode}
\cs_new_protected:Npn \@@_generate_variant:wwNN
@@ -2074,11 +2082,11 @@
% the \cs[no-index]{exp_args:N\dots} function as a macro taking up to
% $9$~arguments and expanding them using \cs{use:x} or \cs{tex_expanded:D}.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_generate_internal_variant:n #1
+\cs_new_protected:Npe \@@_generate_internal_variant:n #1
{
\exp_not:N \@@_generate_internal_variant:wwnNwn
#1 \s_@@_mark
- { \cs_set_eq:NN \exp_not:N \@@_tmp:w \cs_new_protected:Npx }
+ { \cs_set_eq:NN \exp_not:N \@@_tmp:w \cs_new_protected:Npe }
\cs_new_protected:cpn
\use:x
\token_to_str:N x \s_@@_mark
@@ -2111,7 +2119,7 @@
##3
\s_@@_mark
{
- \use:x
+ \use:e
{
##1 { exp_args:N ##3 }
{ \@@_generate_internal_variant_loop:n ##3 { : \use_i:nn } }
@@ -2206,7 +2214,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \prg_generate_conditional_variant:Nnn #1
{
- \use:x
+ \use:e
{
\@@_generate_variant:nnNnn
\cs_split_function:N #1
@@ -2215,7 +2223,7 @@
\cs_new_protected:Npn \@@_generate_variant:nnNnn #1#2#3#4#5
{
\if_meaning:w \c_false_bool #3
- \msg_error:nnx { kernel } { missing-colon }
+ \msg_error:nne { kernel } { missing-colon }
{ \token_to_str:c {#1} }
\@@_use_i_delimit_by_s_stop:nw
\fi:
@@ -2235,7 +2243,7 @@
\cs_if_exist_use:cTF { @@_generate_variant_#1_form:nnn }
{ {#3} {#4} {#5} }
{
- \msg_error:nnxx
+ \msg_error:nnee
{ kernel } { conditional-form-unknown }
{#1} { \token_to_str:c { #3 : #4 } }
}
diff --git a/macros/latex/contrib/l3kernel/l3file.dtx b/macros/latex/contrib/l3kernel/l3file.dtx
index 1c1401e392..2d2ae6a183 100644
--- a/macros/latex/contrib/l3kernel/l3file.dtx
+++ b/macros/latex/contrib/l3kernel/l3file.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -448,7 +448,10 @@
% \subsection{Writing to files}
%
% \begin{function}[updated = 2012-06-05]
-% {\iow_now:Nn, \iow_now:NV, \iow_now:Nx, \iow_now:cn, \iow_now:cV, \iow_now:cx}
+% {
+% \iow_now:Nn, \iow_now:NV, \iow_now:Ne,
+% \iow_now:cn, \iow_now:cV, \iow_now:ce
+% }
% \begin{syntax}
% \cs{iow_now:Nn} \meta{stream} \Arg{tokens}
% \end{syntax}
@@ -457,7 +460,7 @@
% on expansion of \cs{iow_now:Nn}).
% \end{function}
%
-% \begin{function}{\iow_log:n, \iow_log:x}
+% \begin{function}{\iow_log:n, \iow_log:e}
% \begin{syntax}
% \cs{iow_log:n} \Arg{tokens}
% \end{syntax}
@@ -465,7 +468,7 @@
% file immediately: it is a dedicated version of \cs{iow_now:Nn}.
% \end{function}
%
-% \begin{function}{\iow_term:n, \iow_term:x}
+% \begin{function}{\iow_term:n, \iow_term:e}
% \begin{syntax}
% \cs{iow_term:n} \Arg{tokens}
% \end{syntax}
@@ -475,8 +478,8 @@
%
% \begin{function}
% {
-% \iow_shipout:Nn, \iow_shipout:Nx,
-% \iow_shipout:cn, \iow_shipout:cx
+% \iow_shipout:Nn, \iow_shipout:Ne,
+% \iow_shipout:cn, \iow_shipout:ce
% }
% \begin{syntax}
% \cs{iow_shipout:Nn} \meta{stream} \Arg{tokens}
@@ -486,7 +489,7 @@
% shipout). The \texttt{x}-type variants expand the \meta{tokens}
% at the point where the function is used but \emph{not} when the
% resulting tokens are written to the \meta{stream}
-% (\emph{cf.}~\cs{iow_shipout_x:Nn}).
+% (\emph{cf.}~\cs{iow_shipout_e:Nn}).
% \begin{texnote}
% When using \pkg{expl3} with a format other than \LaTeX{}, new line
% characters inserted using \cs{iow_newline:} or using the
@@ -496,13 +499,13 @@
% \end{texnote}
% \end{function}
%
-% \begin{function}[updated = 2012-09-08]
+% \begin{function}[updated = 2023-09-17]
% {
-% \iow_shipout_x:Nn, \iow_shipout_x:Nx,
-% \iow_shipout_x:cn, \iow_shipout_x:cx
+% \iow_shipout_e:Nn, \iow_shipout_e:Ne,
+% \iow_shipout_e:cn, \iow_shipout_e:ce
% }
% \begin{syntax}
-% \cs{iow_shipout_x:Nn} \meta{stream} \Arg{tokens}
+% \cs{iow_shipout_e:Nn} \meta{stream} \Arg{tokens}
% \end{syntax}
% This function writes \meta{tokens} to the specified
% \meta{stream} when the current page is finalised (\emph{i.e.}~at
@@ -528,7 +531,7 @@
% write difficult characters such as |%|, |{|, |}|,
% \emph{etc.}~in messages, for example:
% \begin{verbatim}
-% \iow_now:Nx \g_my_iow { \iow_char:N \{ text \iow_char:N \} }
+% \iow_now:Ne \g_my_iow { \iow_char:N \{ text \iow_char:N \} }
% \end{verbatim}
% The function has no effect if writing is taking place without
% expansion (\emph{e.g.}~in the second argument of \cs{iow_now:Nn}).
@@ -546,14 +549,14 @@
% character inserted by \cs{iow_newline:} is not recognized by
% \TeX{}, which may lead to the insertion of additional unwanted
% line-breaks. This issue only affects \cs{iow_shipout:Nn},
-% \cs{iow_shipout_x:Nn} and direct uses of primitive operations.
+% \cs{iow_shipout_e:Nn} and direct uses of primitive operations.
% \end{texnote}
% \end{function}
%
% \subsection{Wrapping lines in output}
%
% \begin{function}[added = 2012-06-28, updated = 2017-12-04]
-% {\iow_wrap:nnnN, \iow_wrap:nxnN}
+% {\iow_wrap:nnnN, \iow_wrap:nenN}
% \begin{syntax}
% \cs{iow_wrap:nnnN} \Arg{text} \Arg{run-on text} \Arg{set up} \meta{function}
% \end{syntax}
@@ -705,8 +708,10 @@
% \end{texnote}
% \end{variable}
%
-% \begin{function}[TF, updated = 2012-02-10]{\file_if_exist:n, \file_if_exist:V}
+% \begin{function}[EXP, pTF, updated = 2023-09-18]
+% {\file_if_exist:n, \file_if_exist:V}
% \begin{syntax}
+% \cs{file_if_exist_p:n} \Arg{file name}
% \cs{file_if_exist:nTF} \Arg{file name} \Arg{true code} \Arg{false code}
% \end{syntax}
% Searches for \meta{file name} using the current \TeX{} search
@@ -714,7 +719,8 @@
% \cs{l_file_search_path_seq}.
% \end{function}
%
-% \begin{function}[noTF, added = 2019-01-16, updated = 2019-02-16]{\file_get:nnN}
+% \begin{function}[noTF, added = 2019-01-16, updated = 2019-02-16]
+% {\file_get:nnN, \file_get:VnN}
% \begin{syntax}
% \cs{file_get:nnN} \Arg{filename} \Arg{setup} \meta{tl}
% \cs{file_get:nnNTF} \Arg{filename} \Arg{setup} \meta{tl} \Arg{true code} \Arg{false code}
@@ -782,7 +788,8 @@
% Quotes (|"|) are invalid in file names and are discarded from the input.
% \end{function}
%
-% \begin{function}[EXP, added = 2020-06-24]{\file_parse_full_name:n}
+% \begin{function}[EXP, added = 2020-06-24]
+% {\file_parse_full_name:n, \file_parse_full_name:V}
% \begin{syntax}
% \cs{file_parse_full_name:n} \Arg{full name}
% \end{syntax}
@@ -791,7 +798,8 @@
% each inside a pair of braces.
% \end{function}
%
-% \begin{function}[EXP, added = 2020-06-24]{\file_parse_full_name_apply:nN}
+% \begin{function}[EXP, added = 2020-06-24]
+% {\file_parse_full_name_apply:nN, \file_parse_full_name_apply:VN}
% \begin{syntax}
% \cs{file_parse_full_name_apply:nN} \Arg{full name} \meta{function}
% \end{syntax}
@@ -801,7 +809,10 @@
% \end{function}
%
% \begin{function}[rEXP, added = 2019-11-19]
-% {\file_hex_dump:n, \file_hex_dump:nnn}
+% {
+% \file_hex_dump:n, \file_hex_dump:V,
+% \file_hex_dump:nnn, \file_hex_dump:Vnn
+% }
% \begin{syntax}
% \cs{file_hex_dump:n} \Arg{file name}
% \cs{file_hex_dump:nnn} \Arg{file name} \Arg{start index} \Arg{end index}
@@ -819,7 +830,10 @@
% \end{function}
%
% \begin{function}[noTF, added = 2019-11-19]
-% {\file_get_hex_dump:nN, \file_get_hex_dump:nnnN}
+% {
+% \file_get_hex_dump:nN, \file_get_hex_dump:VN,
+% \file_get_hex_dump:nnnN, \file_get_hex_dump:VnnN
+% }
% \begin{syntax}
% \cs{file_get_hex_dump:nN} \Arg{file name} \meta{tl var}
% \cs{file_get_hex_dump:nnnN} \Arg{file name} \Arg{start index} \Arg{end index} \meta{tl var}
@@ -829,7 +843,8 @@
% If the file is not found, the \meta{tl var} will be set to \cs{q_no_value}.
% \end{function}
%
-% \begin{function}[rEXP, added = 2019-09-03]{\file_mdfive_hash:n}
+% \begin{function}[rEXP, added = 2019-09-03]
+% {\file_mdfive_hash:n, \file_mdfive_hash:V}
% \begin{syntax}
% \cs{file_mdfive_hash:n} \Arg{file name}
% \end{syntax}
@@ -845,7 +860,7 @@
% \end{function}
%
% \begin{function}[noTF, added = 2017-07-11, updated = 2019-02-16]
-% {\file_get_mdfive_hash:nN}
+% {\file_get_mdfive_hash:nN, \file_get_mdfive_hash:VN}
% \begin{syntax}
% \cs{file_get_mdfive_hash:nN} \Arg{file name} \meta{tl var}
% \end{syntax}
@@ -854,7 +869,7 @@
% the \meta{tl var} will be set to \cs{q_no_value}.
% \end{function}
%
-% \begin{function}[rEXP, added = 2019-09-03]{\file_size:n}
+% \begin{function}[rEXP, added = 2019-09-03]{\file_size:n, \file_size:V}
% \begin{syntax}
% \cs{file_size:n} \Arg{file name}
% \end{syntax}
@@ -865,7 +880,7 @@
% \end{function}
%
% \begin{function}[noTF, added = 2017-07-09, updated = 2019-02-16]
-% {\file_get_size:nN}
+% {\file_get_size:nN, \file_get_size:VN}
% \begin{syntax}
% \cs{file_get_size:nN} \Arg{file name} \meta{tl var}
% \end{syntax}
@@ -875,7 +890,8 @@
% This is not available in older versions of \XeTeX{}.
% \end{function}
%
-% \begin{function}[rEXP, added = 2019-09-03]{\file_timestamp:n}
+% \begin{function}[rEXP, added = 2019-09-03]
+% {\file_timestamp:n, \file_timestamp:V}
% \begin{syntax}
% \cs{file_timestamp:n} \Arg{file name}
% \end{syntax}
@@ -891,7 +907,7 @@
% \end{function}
%
% \begin{function}[noTF, added = 2017-07-09, updated = 2019-02-16]
-% {\file_get_timestamp:nN}
+% {\file_get_timestamp:nN, \file_get_timestamp:VN}
% \begin{syntax}
% \cs{file_get_timestamp:nN} \Arg{file name} \meta{tl var}
% \end{syntax}
@@ -902,7 +918,12 @@
% \end{function}
%
% \begin{function}[added = 2019-05-13, updated = 2019-09-20, pTF, EXP]
-% {\file_compare_timestamp:nNn}
+% {
+% \file_compare_timestamp:nNn,
+% \file_compare_timestamp:nNV,
+% \file_compare_timestamp:VNn,
+% \file_compare_timestamp:VNV
+% }
% \begin{syntax}
% \cs{file_compare_timestamp_p:nNn} \Arg{file-1} \meta{comparator} \Arg{file-2}
% \cs{file_compare_timestamp:nNnTF} \Arg{file-1} \meta{comparator} \Arg{file-2} \Arg{true code} \Arg{false code}
@@ -935,7 +956,8 @@
% function. An error is raised if the file is not found.
% \end{function}
%
-% \begin{function}[added = 2023-05-18, EXP]{\file_input_raw:n}
+% \begin{function}[added = 2023-05-18, EXP]
+% {\file_input_raw:n, \file_input_raw:V}
% \begin{syntax}
% \cs{file_input_raw:n} \Arg{file name}
% \end{syntax}
@@ -950,7 +972,13 @@
% \end{texnote}
% \end{function}
%
-% \begin{function}[added = 2014-07-02]{\file_if_exist_input:n, \file_if_exist_input:nF}
+% \begin{function}[added = 2014-07-02]
+% {
+% \file_if_exist_input:n,
+% \file_if_exist_input:V,
+% \file_if_exist_input:nF,
+% \file_if_exist_input:VF
+% }
% \begin{syntax}
% \cs{file_if_exist_input:n} \Arg{file name}
% \cs{file_if_exist_input:nF} \Arg{file name} \Arg{false code}
@@ -1169,7 +1197,7 @@
{ \@@_open_stream:Nn #1 {#2} }
{
\@@_new:N #1
- \__kernel_tl_set:Nx \l_@@_stream_tl { \int_eval:n {#1} }
+ \__kernel_tl_set:Ne \l_@@_stream_tl { \int_eval:n {#1} }
\@@_open_stream:Nn #1 {#2}
}
}
@@ -1178,7 +1206,7 @@
% Here, we act defensively in case \LuaTeX{} is in use with an
% extensionless file name.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_open_stream:Nn #1#2
+\cs_new_protected:Npe \@@_open_stream:Nn #1#2
{
\tex_global:D \tex_chardef:D #1 = \exp_not:N \l_@@_stream_tl \scan_stop:
\prop_gput:NVn \exp_not:N \g_@@_streams_prop #1 {#2}
@@ -1192,7 +1220,7 @@
% \end{macro}
%
% \begin{macro}{\ior_shell_open:Nn}
-% \begin{macro}{\@@_shell_open:nN}
+% \begin{macro}{\@@_shell_open:nN, \@@_shell_open:oN}
% Actually much easier than either the standard open or input versions!
% When calling \cs{__kernel_ior_open:Nn} the file the pipe is added to
% signal a shell command, but the quotes are not added yet---they are
@@ -1201,18 +1229,19 @@
\cs_new_protected:Npn \ior_shell_open:Nn #1#2
{
\sys_if_shell:TF
- { \exp_args:No \@@_shell_open:nN { \tl_to_str:n {#2} } #1 }
+ { \@@_shell_open:oN { \tl_to_str:n {#2} } #1 }
{ \msg_error:nn { kernel } { pipe-failed } }
}
\cs_new_protected:Npn \@@_shell_open:nN #1#2
{
\tl_if_in:nnTF {#1} { " }
{
- \msg_error:nnx
+ \msg_error:nne
{ kernel } { quote-in-shell } {#1}
}
{ \__kernel_ior_open:Nn #2 { |#1 } }
}
+\cs_generate_variant:Nn \@@_shell_open:nN { o }
\msg_new:nnnn { kernel } { pipe-failed }
{ Cannot~run~piped~system~commands. }
{
@@ -1259,10 +1288,10 @@
{
\prop_get:NVNTF \g_@@_streams_prop #2 \l_@@_internal_tl
{
- \exp_args:Nx #1
+ \exp_args:Ne #1
{ \token_to_str:N #2 ~ open: ~ \l_@@_internal_tl }
}
- { \exp_args:Nx #1 { \token_to_str:N #2 ~ closed } }
+ { \exp_args:Ne #1 { \token_to_str:N #2 ~ closed } }
}
}
% \end{macrocode}
@@ -1278,8 +1307,8 @@
% \texttt{show-streams} takes care of translating |ior|/|iow| to
% English.
% \begin{macrocode}
-\cs_new_protected:Npn \ior_show_list: { \@@_list:N \msg_show:nnxxxx }
-\cs_new_protected:Npn \ior_log_list: { \@@_list:N \msg_log:nnxxxx }
+\cs_new_protected:Npn \ior_show_list: { \@@_list:N \msg_show:nneeee }
+\cs_new_protected:Npn \ior_log_list: { \@@_list:N \msg_log:nneeee }
\cs_new_protected:Npn \@@_list:N #1
{
#1 { kernel } { show-streams }
@@ -1643,14 +1672,14 @@
% \begin{macrocode}
\cs_new_protected:Npn \iow_open:Nn #1#2
{
- \__kernel_tl_set:Nx \l_@@_file_name_tl
+ \__kernel_tl_set:Ne \l_@@_file_name_tl
{ \__kernel_file_name_sanitize:n {#2} }
\iow_close:N #1
\seq_gpop:NNTF \g_@@_streams_seq \l_@@_stream_tl
{ \@@_open_stream:NV #1 \l_@@_file_name_tl }
{
\@@_new:N #1
- \__kernel_tl_set:Nx \l_@@_stream_tl { \int_eval:n {#1} }
+ \__kernel_tl_set:Ne \l_@@_stream_tl { \int_eval:n {#1} }
\@@_open_stream:NV #1 \l_@@_file_name_tl
}
}
@@ -1668,24 +1697,25 @@
% \end{macro}
%
% \begin{macro}{\iow_shell_open:Nn}
-% \begin{macro}{\@@_shell_open:nN}
+% \begin{macro}{\@@_shell_open:nN, \@@_shell_open:oN}
% Very similar to the \texttt{ior} version
% \begin{macrocode}
\cs_new_protected:Npn \iow_shell_open:Nn #1#2
{
\sys_if_shell:TF
- { \exp_args:No \@@_shell_open:nN { \tl_to_str:n {#2} } #1 }
+ { \@@_shell_open:oN { \tl_to_str:n {#2} } #1 }
{ \msg_error:nn { kernel } { pipe-failed } }
}
\cs_new_protected:Npn \@@_shell_open:nN #1#2
{
\tl_if_in:nnTF {#1} { " }
{
- \msg_error:nnx
+ \msg_error:nne
{ kernel } { quote-in-shell } {#1}
}
{ \__kernel_iow_open:Nn #2 { |#1 } }
}
+\cs_generate_variant:Nn \@@_shell_open:nN { o }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1725,10 +1755,10 @@
{
\prop_get:NVNTF \g_@@_streams_prop #2 \l_@@_internal_tl
{
- \exp_args:Nx #1
+ \exp_args:Ne #1
{ \token_to_str:N #2 ~ open: ~ \l_@@_internal_tl }
}
- { \exp_args:Nx #1 { \token_to_str:N #2 ~ closed } }
+ { \exp_args:Ne #1 { \token_to_str:N #2 ~ closed } }
}
}
% \end{macrocode}
@@ -1738,8 +1768,8 @@
% \begin{macro}{\@@_list:N}
% Done as for input, but with a copy of the auxiliary so the name is correct.
% \begin{macrocode}
-\cs_new_protected:Npn \iow_show_list: { \@@_list:N \msg_show:nnxxxx }
-\cs_new_protected:Npn \iow_log_list: { \@@_list:N \msg_log:nnxxxx }
+\cs_new_protected:Npn \iow_show_list: { \@@_list:N \msg_show:nneeee }
+\cs_new_protected:Npn \iow_log_list: { \@@_list:N \msg_log:nneeee }
\cs_new_protected:Npn \@@_list:N #1
{
#1 { kernel } { show-streams }
@@ -1756,29 +1786,40 @@
%
% \subsubsection{Deferred writing}
%
-% \begin{macro}{\iow_shipout_x:Nn, \iow_shipout_x:Nx, \iow_shipout_x:cn, \iow_shipout_x:cx}
+% \begin{macro}
+% {
+% \iow_shipout_e:Nn, \iow_shipout_e:Ne,
+% \iow_shipout_e:cn, \iow_shipout_e:ce
+% }
% First the easy part, this is the primitive, which expects its
% argument to be braced.
% \begin{macrocode}
-\cs_new_protected:Npn \iow_shipout_x:Nn #1#2
+\cs_new_protected:Npn \iow_shipout_e:Nn #1#2
{ \tex_write:D #1 {#2} }
-\cs_generate_variant:Nn \iow_shipout_x:Nn { c, Nx, cx }
+\cs_generate_variant:Nn \iow_shipout_e:Nn { Ne , c, ce }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\iow_shipout:Nn, \iow_shipout:Nx, \iow_shipout:cn, \iow_shipout:cx}
+% \begin{macro}
+% {
+% \iow_shipout:Nn, \iow_shipout:Ne,
+% \iow_shipout:Nx,
+% \iow_shipout:cn, \iow_shipout:ce,
+% \iow_shipout:cx
+% }
% With \eTeX{} available deferred writing without expansion is easy.
% \begin{macrocode}
\cs_new_protected:Npn \iow_shipout:Nn #1#2
{ \tex_write:D #1 { \exp_not:n {#2} } }
-\cs_generate_variant:Nn \iow_shipout:Nn { c, Nx, cx }
+\cs_generate_variant:Nn \iow_shipout:Nn { Ne , c, ce }
+\cs_generate_variant:Nn \iow_shipout:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
%
% \subsubsection{Immediate writing}
%
% \begin{macro}{\__kernel_iow_with:Nnn}
-% \begin{macro}{\@@_with:nNnn}
+% \begin{macro}{\@@_with:nNnn, \@@_with:oNnn}
% If the integer~|#1| is equal to~|#2|, just leave~|#3| in the input
% stream. Otherwise, pass the old value to an auxiliary, which sets
% the integer to the new value, runs the code, and restores the
@@ -1788,7 +1829,7 @@
{
\int_compare:nNnTF {#1} = {#2}
{ \use:n }
- { \exp_args:No \@@_with:nNnn { \int_use:N #1 } #1 {#2} }
+ { \@@_with:oNnn { \int_use:N #1 } #1 {#2} }
}
\cs_new_protected:Npn \@@_with:nNnn #1#2#3#4
{
@@ -1796,14 +1837,17 @@
#4
\int_set:Nn #2 {#1}
}
+\cs_generate_variant:Nn \@@_with:nNnn { o }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}
% {
-% \iow_now:Nn, \iow_now:NV, \iow_now:Nx,
-% \iow_now:cn, \iow_now:cV, \iow_now:cx
+% \iow_now:Nn, \iow_now:NV, \iow_now:Ne,
+% \iow_now:Nx,
+% \iow_now:cn, \iow_now:cV, \iow_now:ce,
+% \iow_now:cx
% }
% This routine writes the second argument onto the output stream without
% expansion. If this stream isn't open, the output goes to the terminal
@@ -1822,18 +1866,23 @@
\__kernel_iow_with:Nnn \tex_newlinechar:D { `\^^J }
{ \tex_immediate:D \tex_write:D #1 { \exp_not:n {#2} } }
}
-\cs_generate_variant:Nn \iow_now:Nn { NV , Nx , c , cV , cx }
+\cs_generate_variant:Nn \iow_now:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \iow_now:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\iow_log:n, \iow_log:x}
-% \begin{macro}{\iow_term:n, \iow_term:x}
-% Writing to the log and the terminal directly are relatively easy.
+% \begin{macro}{\iow_log:n, \iow_log:e, \iow_log:x}
+% \begin{macro}{\iow_term:n, \iow_term:e, \iow_term:x}
+% Writing to the log and the terminal directly are relatively easy;
+% as we need the two \texttt{e}-type variants for bootstrapping,
+% they are redefinitions here.
% \begin{macrocode}
-\cs_set_protected:Npn \iow_log:x { \iow_now:Nx \c_log_iow }
\cs_new_protected:Npn \iow_log:n { \iow_now:Nn \c_log_iow }
-\cs_set_protected:Npn \iow_term:x { \iow_now:Nx \c_term_iow }
+\cs_set_protected:Npn \iow_log:e { \iow_now:Ne \c_log_iow }
+\cs_generate_variant:Nn \iow_log:n { x }
\cs_new_protected:Npn \iow_term:n { \iow_now:Nn \c_term_iow }
+\cs_set_protected:Npn \iow_term:e { \iow_now:Ne \c_term_iow }
+\cs_generate_variant:Nn \iow_term:n { x }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1902,14 +1951,14 @@
\cs_new:Npn \@@_unindent:w { }
\cs_new_protected:Npn \@@_set_indent:n #1
{
- \__kernel_tl_set:Nx \l_@@_one_indent_tl
+ \__kernel_tl_set:Ne \l_@@_one_indent_tl
{ \exp_args:No \__kernel_str_to_other_fast:n { \tl_to_str:n {#1} } }
\int_set:Nn \l_@@_one_indent_int
{ \str_count:N \l_@@_one_indent_tl }
\exp_last_unbraced:NNo
\cs_set:Npn \@@_unindent:w \l_@@_one_indent_tl { }
}
-\exp_args:Nx \@@_set_indent:n { \prg_replicate:nn { 4 } { ~ } }
+\exp_args:Ne \@@_set_indent:n { \prg_replicate:nn { 4 } { ~ } }
% \end{macrocode}
% \end{variable}
% \end{macro}
@@ -1968,13 +2017,13 @@
% \begin{macrocode}
\group_begin:
\int_set:Nn \tex_escapechar:D { -1 }
- \tl_const:Nx \c_@@_wrap_marker_tl
+ \tl_const:Ne \c_@@_wrap_marker_tl
{ \tl_to_str:n { \^^I \^^O \^^W \^^_ \^^W \^^R \^^A \^^P } }
\group_end:
\tl_map_inline:nn
{ { end } { newline } { allow_break } { indent } { unindent } }
{
- \tl_const:cx { c_@@_wrap_ #1 _marker_tl }
+ \tl_const:ce { c_@@_wrap_ #1 _marker_tl }
{
\c_@@_wrap_marker_tl
#1
@@ -1998,7 +2047,7 @@
\msg_error:nnnn { kernel } { iow-indent }
{ \iow_wrap:nnnN } { \iow_wrap_allow_break: }
}
-\cs_new:Npx \@@_wrap_allow_break: { \c_@@_wrap_allow_break_marker_tl }
+\cs_new:Npe \@@_wrap_allow_break: { \c_@@_wrap_allow_break_marker_tl }
\cs_new:Npn \@@_wrap_allow_break_error:
{
\msg_expandable_error:nnnn { kernel } { iow-indent }
@@ -2026,7 +2075,7 @@
{ \iow_wrap:nnnN } { \iow_indent:n } {#1}
#1
}
-\cs_new:Npx \@@_indent:n #1
+\cs_new:Npe \@@_indent:n #1
{
\c_@@_wrap_indent_marker_tl
#1
@@ -2043,7 +2092,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\iow_wrap:nnnN, \iow_wrap:nxnN}
+% \begin{macro}{\iow_wrap:nnnN, \iow_wrap:nenN}
% The main wrapping function works as follows. First give |\\|,
% \verb*|\ | and other formatting commands the correct definition for
% messages and perform the given setup~|#3|. The definition of
@@ -2059,11 +2108,11 @@
\group_begin:
\cs_if_exist_use:N \conditionally@traceoff
\int_set:Nn \tex_escapechar:D { -1 }
- \cs_set:Npx \{ { \token_to_str:N \{ }
- \cs_set:Npx \# { \token_to_str:N \# }
- \cs_set:Npx \} { \token_to_str:N \} }
- \cs_set:Npx \% { \token_to_str:N \% }
- \cs_set:Npx \~ { \token_to_str:N \~ }
+ \cs_set:Npe \{ { \token_to_str:N \{ }
+ \cs_set:Npe \# { \token_to_str:N \# }
+ \cs_set:Npe \} { \token_to_str:N \} }
+ \cs_set:Npe \% { \token_to_str:N \% }
+ \cs_set:Npe \~ { \token_to_str:N \~ }
\int_set:Nn \tex_escapechar:D { 92 }
\cs_set_eq:NN \\ \iow_newline:
\cs_set_eq:NN \ \c_catcode_other_space_tl
@@ -2079,7 +2128,7 @@
% \cs{iow_wrap:nnnN}.
% \begin{macrocode}
\cs_set_eq:NN \protect \token_to_str:N
- \__kernel_tl_set:Nx \l_@@_wrap_tl {#1}
+ \__kernel_tl_set:Ne \l_@@_wrap_tl {#1}
\cs_set_eq:NN \iow_wrap_allow_break: \@@_wrap_allow_break_error:
\cs_set_eq:NN \iow_indent:n \@@_indent_error:n
% \end{macrocode}
@@ -2087,8 +2136,8 @@
% then convert to a string) and initialize the target count for lines
% (the first line has target count \cs{l_iow_line_count_int} instead).
% \begin{macrocode}
- \__kernel_tl_set:Nx \l_@@_newline_tl { \iow_newline: #2 }
- \__kernel_tl_set:Nx \l_@@_newline_tl { \tl_to_str:N \l_@@_newline_tl }
+ \__kernel_tl_set:Ne \l_@@_newline_tl { \iow_newline: #2 }
+ \__kernel_tl_set:Ne \l_@@_newline_tl { \tl_to_str:N \l_@@_newline_tl }
\int_set:Nn \l_@@_line_target_int
{ \l_iow_line_count_int - \str_count:N \l_@@_newline_tl + 1 }
% \end{macrocode}
@@ -2112,7 +2161,7 @@
\exp_args:NNf \group_end:
#4 { \tl_to_str:N \l_@@_wrap_tl }
}
-\cs_generate_variant:Nn \iow_wrap:nnnN { nx }
+\cs_generate_variant:Nn \iow_wrap:nnnN { ne }
% \end{macrocode}
% \end{macro}
%
@@ -2128,12 +2177,12 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_wrap_do:
{
- \__kernel_tl_set:Nx \l_@@_wrap_tl
+ \__kernel_tl_set:Ne \l_@@_wrap_tl
{
\exp_args:No \__kernel_str_to_other_fast:n \l_@@_wrap_tl
\c_@@_wrap_end_marker_tl
}
- \__kernel_tl_set:Nx \l_@@_wrap_tl
+ \__kernel_tl_set:Ne \l_@@_wrap_tl
{
\exp_after:wN \@@_wrap_fix_newline:w \l_@@_wrap_tl
^^J \q_@@_nil ^^J \s_@@_stop
@@ -2397,7 +2446,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_wrap_allow_break:n #1
{
- \__kernel_tl_set:Nx \l_@@_line_tl
+ \__kernel_tl_set:Ne \l_@@_line_tl
{ \l_@@_line_tl \@@_wrap_trim:N \l_@@_line_part_tl }
\bool_set_false:N \l_@@_line_break_bool
\tl_if_empty:NTF \l_@@_line_part_tl
@@ -2417,7 +2466,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_wrap_indent:n #1
{
- \tl_put_right:Nx \l_@@_line_tl { \l_@@_line_part_tl }
+ \tl_put_right:Ne \l_@@_line_tl { \l_@@_line_part_tl }
\bool_set_false:N \l_@@_line_break_bool
\int_add:Nn \l_@@_indent_int { \l_@@_one_indent_int }
\tl_put_right:No \l_@@_indent_tl { \l_@@_one_indent_tl }
@@ -2425,10 +2474,10 @@
}
\cs_new_protected:Npn \@@_wrap_unindent:n #1
{
- \tl_put_right:Nx \l_@@_line_tl { \l_@@_line_part_tl }
+ \tl_put_right:Ne \l_@@_line_tl { \l_@@_line_part_tl }
\bool_set_false:N \l_@@_line_break_bool
\int_sub:Nn \l_@@_indent_int { \l_@@_one_indent_int }
- \__kernel_tl_set:Nx \l_@@_indent_tl
+ \__kernel_tl_set:Ne \l_@@_indent_tl
{ \exp_after:wN \@@_unindent:w \l_@@_indent_tl }
\@@_wrap_chunk:nw {#1}
}
@@ -2467,9 +2516,9 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_wrap_store_do:n #1
{
- \__kernel_tl_set:Nx \l_@@_line_tl
+ \__kernel_tl_set:Ne \l_@@_line_tl
{ \l_@@_line_tl \l_@@_line_part_tl }
- \__kernel_tl_set:Nx \l_@@_wrap_tl
+ \__kernel_tl_set:Ne \l_@@_wrap_tl
{
\l_@@_wrap_tl
\l_@@_newline_tl
@@ -2495,6 +2544,21 @@
% \end{macrocode}
% \end{macro}
%
+% \subsection{Deprecated functions}
+%
+% \begin{macro}
+% {
+% \iow_shipout_x:Nn, \iow_shipout_x:Nx,
+% \iow_shipout_x:cn, \iow_shipout_x:cx
+% }
+% Previously described as \texttt{x}-type, but the hash behaviour is really
+% \texttt{e}-type.
+% \begin{macrocode}
+\cs_new_eq:NN \iow_shipout_x:Nn \iow_shipout_e:Nn
+\cs_generate_variant:Nn \iow_shipout_x:Nn { Nx , c, cx }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macrocode}
%<@@=file>
% \end{macrocode}
@@ -2539,7 +2603,7 @@
{
\cs_set:Npn \@@_tmp:w ##1 " ##2 " ##3 \s_@@_stop
{ { } {##2} { } }
- \seq_gput_right:Nx \g_@@_stack_seq
+ \seq_gput_right:Ne \g_@@_stack_seq
{
\exp_after:wN \@@_tmp:w \tex_jobname:D
" \tex_jobname:D " \s_@@_stop
@@ -2811,11 +2875,11 @@
% The same idea as the marker for rescanning token lists: this pair of
% tokens cannot appear in a file that is being input.
% \begin{macrocode}
-\tl_const:Nx \c_@@_marker_tl { : \token_to_str:N : }
+\tl_const:Ne \c_@@_marker_tl { : \token_to_str:N : }
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}[TF]{\file_get:nnN}
+% \begin{macro}[TF]{\file_get:nnN, \file_get:VnN}
% \begin{macro}{\file_get:nnN,\@@_get_aux:nnN,\@@_get_do:Nw}
% The approach here is similar to that for \cs{tl_set_rescan:Nnn}.
% The file contents are grabbed as an argument delimited by
@@ -2830,6 +2894,7 @@
\file_get:nnNF {#1} {#2} #3
{ \tl_set:Nn #3 { \q_no_value } }
}
+\cs_generate_variant:Nn \file_get:nnN { V }
\prg_new_protected_conditional:Npnn \file_get:nnN #1#2#3 { T , F , TF }
{
\file_get_full_name:nNTF {#1} \l_@@_full_name_tl
@@ -2841,7 +2906,8 @@
}
{ \prg_return_false: }
}
-\cs_new_protected:Npx \@@_get_aux:nnN #1#2#3
+\prg_generate_conditional_variant:Nnn \file_get:nnN { V } { T , F , TF }
+\cs_new_protected:Npe \@@_get_aux:nnN #1#2#3
{
\exp_not:N \if_false: { \exp_not:N \fi:
\group_begin:
@@ -2901,6 +2967,7 @@
\exp_args:Ne \@@_full_name:n
{ \__kernel_file_name_sanitize:n {#1} }
}
+\cs_generate_variant:Nn \file_full_name:n { V }
% \end{macrocode}
% First, we check of the file is just here: no mapping so we do not
% need the break part of the broader auxiliary. We are using the fact
@@ -3011,7 +3078,7 @@
}
{ \@@_ext_check:nnw {#1} { #2 #3 / } #4 / #5 \s_@@_stop }
}
-\cs_new:Npx \@@_ext_check:nnnw #1#2#3#4 . #5 . #6 \s_@@_stop
+\cs_new:Npe \@@_ext_check:nnnw #1#2#3#4 . #5 . #6 \s_@@_stop
{
\exp_not:N \@@_quark_if_nil:nTF {#5}
{
@@ -3065,15 +3132,14 @@
\cs_generate_variant:Nn \file_get_full_name:nN { V }
\prg_new_protected_conditional:Npnn \file_get_full_name:nN #1#2 { T , F , TF }
{
- \__kernel_tl_set:Nx #2
+ \__kernel_tl_set:Ne #2
{ \file_full_name:n {#1} }
\tl_if_empty:NTF #2
{ \prg_return_false: }
{ \prg_return_true: }
}
-\cs_generate_variant:Nn \file_get_full_name:nNT { V }
-\cs_generate_variant:Nn \file_get_full_name:nNF { V }
-\cs_generate_variant:Nn \file_get_full_name:nNTF { V }
+\prg_generate_conditional_variant:Nnn \file_get_full_name:nN
+ { V } { T , F , TF }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3086,7 +3152,12 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}[rEXP]{\file_mdfive_hash:n, \file_size:n, \file_timestamp:n}
+% \begin{macro}[rEXP]
+% {
+% \file_mdfive_hash:n, \file_mdfive_hash:V,
+% \file_size:n, \file_size:V,
+% \file_timestamp:n, \file_timestamp:V
+% }
% \begin{macro}[rEXP]{\@@_details:nn, \@@_details_aux:nn}
% \begin{macro}[rEXP]{\@@_mdfive_hash:n}
% Getting file details by expansion is relatively easy if a bit repetitive.
@@ -3095,8 +3166,10 @@
% \begin{macrocode}
\cs_new:Npn \file_size:n #1
{ \@@_details:nn {#1} { size } }
+\cs_generate_variant:Nn \file_size:n { V }
\cs_new:Npn \file_timestamp:n #1
{ \@@_details:nn {#1} { moddate } }
+\cs_generate_variant:Nn \file_timestamp:n { V }
\cs_new:Npn \@@_details:nn #1#2
{
\exp_args:Ne \@@_details_aux:nn
@@ -3109,6 +3182,7 @@
}
\cs_new:Npn \file_mdfive_hash:n #1
{ \exp_args:Ne \@@_mdfive_hash:n { \file_full_name:n {#1} } }
+\cs_generate_variant:Nn \file_mdfive_hash:n { V }
\cs_new:Npn \@@_mdfive_hash:n #1
{ \tex_mdfivesum:D file {#1} }
% \end{macrocode}
@@ -3116,10 +3190,10 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}[rEXP]{\file_hex_dump:nnn, \@@_hex_dump_auxi:nnn}
+% \begin{macro}[rEXP]{\file_hex_dump:nnn, \file_hex_dump:Vnn, \@@_hex_dump_auxi:nnn}
% \begin{macro}[rEXP]{\@@_hex_dump_auxii:nnnn, \@@_hex_dump_auxiii:nnnn}
% \begin{macro}[rEXP]{\@@_hex_dump_auxiiv:nnn}
-% \begin{macro}[rEXP]{\file_hex_dump:n, \@@_hex_dump:n}
+% \begin{macro}[rEXP]{\file_hex_dump:n, \file_hex_dump:V, \@@_hex_dump:n}
% These are separate as they need multiple arguments \emph{or} the
% file size. For \LuaTeX{}, the emulation does not need the file
% size so we save a little on expansion.
@@ -3131,6 +3205,7 @@
{ \int_eval:n {#2} }
{ \int_eval:n {#3} }
}
+\cs_generate_variant:Nn \file_hex_dump:nnn { V }
\cs_new:Npn \@@_hex_dump_auxi:nnn #1#2#3
{
\bool_lazy_any:nF
@@ -3174,6 +3249,7 @@
}
\cs_new:Npn \file_hex_dump:n #1
{ \exp_args:Ne \@@_hex_dump:n { \file_full_name:n {#1} } }
+\cs_generate_variant:Nn \file_hex_dump:n { V }
\sys_if_engine_luatex:TF
{
\cs_new:Npn \@@_hex_dump:n #1
@@ -3197,10 +3273,10 @@
%
% \begin{macro}[noTF]
% {
-% \file_get_hex_dump:nN,
-% \file_get_mdfive_hash:nN
-% \file_get_size:nN,
-% \file_get_timestamp:nN
+% \file_get_hex_dump:nN, \file_get_hex_dump:VN,
+% \file_get_mdfive_hash:nN, \file_get_mdfive_hash:VN,
+% \file_get_size:nN, \file_get_size:VN,
+% \file_get_timestamp:nN, \file_get_timestamp:VN
% }
% \begin{macro}{\@@_get_details:nnN}
% Non-expandable wrappers around the above in the case where appropriate
@@ -3208,23 +3284,35 @@
% \begin{macrocode}
\cs_new_protected:Npn \file_get_hex_dump:nN #1#2
{ \file_get_hex_dump:nNF {#1} #2 { \tl_set:Nn #2 { \q_no_value } } }
+\cs_generate_variant:Nn \file_get_hex_dump:nN { V }
\cs_new_protected:Npn \file_get_mdfive_hash:nN #1#2
{ \file_get_mdfive_hash:nNF {#1} #2 { \tl_set:Nn #2 { \q_no_value } } }
+\cs_generate_variant:Nn \file_get_mdfive_hash:nN { V }
\cs_new_protected:Npn \file_get_size:nN #1#2
{ \file_get_size:nNF {#1} #2 { \tl_set:Nn #2 { \q_no_value } } }
+\cs_generate_variant:Nn \file_get_size:nN { V }
\cs_new_protected:Npn \file_get_timestamp:nN #1#2
{ \file_get_timestamp:nNF {#1} #2 { \tl_set:Nn #2 { \q_no_value } } }
+\cs_generate_variant:Nn \file_get_timestamp:nN { V }
\prg_new_protected_conditional:Npnn \file_get_hex_dump:nN #1#2 { T , F , TF }
{ \@@_get_details:nnN {#1} { hex_dump } #2 }
+\prg_generate_conditional_variant:Nnn \file_get_hex_dump:nN
+ { V } { T , F , TF }
\prg_new_protected_conditional:Npnn \file_get_mdfive_hash:nN #1#2 { T , F , TF }
{ \@@_get_details:nnN {#1} { mdfive_hash } #2 }
+\prg_generate_conditional_variant:Nnn \file_get_mdfive_hash:nN
+ { V } { T , F , TF }
\prg_new_protected_conditional:Npnn \file_get_size:nN #1#2 { T , F , TF }
{ \@@_get_details:nnN {#1} { size } #2 }
+\prg_generate_conditional_variant:Nnn \file_get_size:nN
+ { V } { T , F , TF }
\prg_new_protected_conditional:Npnn \file_get_timestamp:nN #1#2 { T , F , TF }
{ \@@_get_details:nnN {#1} { timestamp } #2 }
+\prg_generate_conditional_variant:Nnn \file_get_timestamp:nN
+ { V } { T , F , TF }
\cs_new_protected:Npn \@@_get_details:nnN #1#2#3
{
- \__kernel_tl_set:Nx #3
+ \__kernel_tl_set:Ne #3
{ \use:c { file_ #2 :n } {#1} }
\tl_if_empty:NTF #3
{ \prg_return_false: }
@@ -3234,7 +3322,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}[noTF]{\file_get_hex_dump:nnnN}
+% \begin{macro}[noTF]{\file_get_hex_dump:nnnN, \file_get_hex_dump:VnnN}
% Custom code due to the additional arguments.
% \begin{macrocode}
\cs_new_protected:Npn \file_get_hex_dump:nnnN #1#2#3#4
@@ -3242,15 +3330,18 @@
\file_get_hex_dump:nnnNF {#1} {#2} {#3} #4
{ \tl_set:Nn #4 { \q_no_value } }
}
+\cs_generate_variant:Nn \file_get_hex_dump:nnnN { V }
\prg_new_protected_conditional:Npnn \file_get_hex_dump:nnnN #1#2#3#4
{ T , F , TF }
{
- \__kernel_tl_set:Nx #4
+ \__kernel_tl_set:Ne #4
{ \file_hex_dump:nnn {#1} {#2} {#3} }
\tl_if_empty:NTF #4
{ \prg_return_false: }
{ \prg_return_true: }
}
+\prg_generate_conditional_variant:Nnn \file_get_hex_dump:nnnN
+ { V } { T , F , TF }
% \end{macrocode}
% \end{macro}
%
@@ -3262,7 +3353,13 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}[EXP, pTF]{\file_compare_timestamp:nNn}
+% \begin{macro}[EXP, pTF]
+% {
+% \file_compare_timestamp:nNn,
+% \file_compare_timestamp:nNV,
+% \file_compare_timestamp:VNn
+% \file_compare_timestamp:VNV
+% }
% \begin{macro}[EXP]{\@@_compare_timestamp:nnN}
% \begin{macro}[EXP]{\@@_timestamp:n}
% Comparison of file date can be done by using the low-level nature of the
@@ -3276,6 +3373,8 @@
{ \file_full_name:n {#3} }
#2
}
+\prg_generate_conditional_variant:Nnn \file_compare_timestamp:nNn
+ { nNV , V , VNV } { p , T , F , TF }
\cs_new:Npn \@@_compare_timestamp:nnN #1#2#3
{
\tl_if_blank:nTF {#1}
@@ -3320,17 +3419,23 @@
% something, whereas if the file was not located then the return value
% is empty.
% \begin{macrocode}
-\prg_new_protected_conditional:Npnn \file_if_exist:n #1 { T , F , TF }
+\prg_new_conditional:Npnn \file_if_exist:n #1 { p , T , F , TF }
{
- \file_get_full_name:nNTF {#1} \l_@@_full_name_tl
- { \prg_return_true: }
+ \tl_if_blank:eTF { \file_full_name:n {#1} }
{ \prg_return_false: }
+ { \prg_return_true: }
}
-\prg_generate_conditional_variant:Nnn \file_if_exist:n { V } { T , F , TF }
+\prg_generate_conditional_variant:Nnn \file_if_exist:n { V } { p , T , F , TF }
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\file_if_exist_input:n, \file_if_exist_input:nF}
+% \begin{macro}
+% {
+% \file_if_exist_input:n,
+% \file_if_exist_input:V,
+% \file_if_exist_input:nF,
+% \file_if_exist_input:VF
+% }
% Input of a file with a test for existence. We do not define the |T|
% or |TF| variants because the most useful place to place the
% \meta{true code} would be inconsistent with other conditionals.
@@ -3340,12 +3445,14 @@
\file_get_full_name:nNT {#1} \l_@@_full_name_tl
{ \@@_input:V \l_@@_full_name_tl }
}
+\cs_generate_variant:Nn \file_if_exist_input:n { V }
\cs_new_protected:Npn \file_if_exist_input:nF #1#2
{
\file_get_full_name:nNTF {#1} \l_@@_full_name_tl
{ \@@_input:V \l_@@_full_name_tl }
{#2}
}
+\cs_generate_variant:Nn \file_if_exist_input:nF { V }
% \end{macrocode}
% \end{macro}
%
@@ -3361,7 +3468,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \__kernel_file_missing:n #1
{
- \msg_error:nnx { kernel } { file-not-found }
+ \msg_error:nne { kernel } { file-not-found }
{ \__kernel_file_name_sanitize:n {#1} }
}
% \end{macrocode}
@@ -3384,7 +3491,7 @@
{ \__kernel_file_missing:n {#1} }
}
\cs_generate_variant:Nn \file_input:n { V }
-\cs_new_protected:Npx \@@_input:n #1
+\cs_new_protected:Npe \@@_input:n #1
{
\exp_not:N \clist_if_exist:NTF \exp_not:N \@filelist
{ \exp_not:N \@addtofilelist {#1} }
@@ -3403,7 +3510,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_input_push:n #1
{
- \seq_gpush:Nx \g_@@_stack_seq
+ \seq_gpush:Ne \g_@@_stack_seq
{
{ \g_file_curr_dir_str }
{ \g_file_curr_name_str }
@@ -3435,12 +3542,13 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\file_input_raw:n, \@@_input_raw:nn}
+% \begin{macro}{\file_input_raw:n, \file_input_raw:V, \@@_input_raw:nn}
% No error checking, no tracking.
% \begin{macrocode}
\cs_new:Npn \file_input_raw:n #1
{ \exp_args:Ne \@@_input_raw:nn { \file_full_name:n {#1} } {#1} }
-\cs_new:Npx \@@_input_raw:nn #1#2
+\cs_generate_variant:Nn \file_input_raw:n { V }
+\cs_new:Npe \@@_input_raw:nn #1#2
{
\exp_not:N \tl_if_blank:nTF {#1}
{
@@ -3459,7 +3567,8 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\file_parse_full_name:n, \file_parse_full_name_apply:nN}
+% \begin{macro}{\file_parse_full_name:n, \file_parse_full_name:nV}
+% \begin{macro}{\file_parse_full_name_apply:nN \file_parse_full_name_apply:VN}
% The main parsing macro \cs{file_parse_full_name_apply:nN} passes the
% file name |#1| through \cs{__kernel_file_name_sanitize:n} so that we
% have a single normalised way to treat files internally.
@@ -3472,11 +3581,13 @@
\file_parse_full_name_apply:nN {#1}
\prg_do_nothing:
}
+\cs_generate_variant:Nn \file_parse_full_name:n { V }
\cs_new:Npn \file_parse_full_name_apply:nN #1
{
\exp_args:Ne \@@_parse_full_name_auxi:nN
{ \__kernel_file_name_sanitize:n {#1} }
}
+\cs_generate_variant:Nn \file_parse_full_name_apply:nN { V }
% \end{macrocode}
%
% \begin{macro}{\@@_parse_full_name_auxi:nN}
@@ -3549,6 +3660,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\file_parse_full_name:nNNN, \file_parse_full_name:VNNN}
% \begin{macrocode}
@@ -3575,14 +3687,14 @@
% \cs{AtBeginDocument} into \cs{g_@@_record_seq}), turning it to a
% string (this does not affect the commas of this comma list).
% \begin{macrocode}
-\cs_new_protected:Npn \file_show_list: { \@@_list:N \msg_show:nnxxxx }
-\cs_new_protected:Npn \file_log_list: { \@@_list:N \msg_log:nnxxxx }
+\cs_new_protected:Npn \file_show_list: { \@@_list:N \msg_show:nneeee }
+\cs_new_protected:Npn \file_log_list: { \@@_list:N \msg_log:nneeee }
\cs_new_protected:Npn \@@_list:N #1
{
\seq_clear:N \l_@@_tmp_seq
\clist_if_exist:NT \@filelist
{
- \exp_args:NNx \seq_set_from_clist:Nn \l_@@_tmp_seq
+ \exp_args:NNe \seq_set_from_clist:Nn \l_@@_tmp_seq
{ \tl_to_str:N \@filelist }
}
\seq_concat:NNN \l_@@_tmp_seq \l_@@_tmp_seq \g_@@_record_seq
@@ -3605,7 +3717,7 @@
{
\AtBeginDocument
{
- \exp_args:NNx \seq_set_from_clist:Nn \l_@@_tmp_seq
+ \exp_args:NNe \seq_set_from_clist:Nn \l_@@_tmp_seq
{ \tl_to_str:N \@filelist }
\seq_gconcat:NNN
\g_@@_record_seq
@@ -3738,7 +3850,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_mismatched_dependency_error:nn #1 #2
{
- \exp_args:NNx \ior_shell_open:Nn \g_@@_internal_ior
+ \exp_args:NNe \ior_shell_open:Nn \g_@@_internal_ior
{
kpsewhich ~ --all ~
--engine = \c_sys_engine_exec_str
@@ -3869,7 +3981,7 @@
% \begin{macrocode}
\sys_if_engine_luatex:TF
{
- \str_const:Nx \c_sys_platform_str
+ \str_const:Ne \c_sys_platform_str
{ \tex_directlua:D { tex.print(os.type) } }
}
{
diff --git a/macros/latex/contrib/l3kernel/l3flag.dtx b/macros/latex/contrib/l3kernel/l3flag.dtx
index 3fb3930535..637da52ee7 100644
--- a/macros/latex/contrib/l3kernel/l3flag.dtx
+++ b/macros/latex/contrib/l3kernel/l3flag.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -243,7 +243,7 @@
{
\exp_args:Nc \__kernel_chk_defined:NT { flag~#2 }
{
- \exp_args:Nx #1
+ \exp_args:Ne #1
{ \tl_to_str:n { flag~#2~height } = \flag_height:n {#2} }
}
}
diff --git a/macros/latex/contrib/l3kernel/l3fp-assign.dtx b/macros/latex/contrib/l3kernel/l3fp-assign.dtx
index ecdd6ea31c..da05eafa39 100644
--- a/macros/latex/contrib/l3kernel/l3fp-assign.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-assign.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
% \maketitle
%
% \begin{documentation}
@@ -80,11 +80,11 @@
% assignments.
% \begin{macrocode}
\cs_new_protected:Npn \fp_set:Nn #1#2
- { \__kernel_tl_set:Nx #1 { \exp_not:f { \@@_parse:n {#2} } } }
+ { \__kernel_tl_set:Ne #1 { \exp_not:f { \@@_parse:n {#2} } } }
\cs_new_protected:Npn \fp_gset:Nn #1#2
- { \__kernel_tl_gset:Nx #1 { \exp_not:f { \@@_parse:n {#2} } } }
+ { \__kernel_tl_gset:Ne #1 { \exp_not:f { \@@_parse:n {#2} } } }
\cs_new_protected:Npn \fp_const:Nn #1#2
- { \tl_const:Nx #1 { \exp_not:f { \@@_parse:n {#2} } } }
+ { \tl_const:Ne #1 { \exp_not:f { \@@_parse:n {#2} } } }
\cs_generate_variant:Nn \fp_set:Nn {c}
\cs_generate_variant:Nn \fp_gset:Nn {c}
\cs_generate_variant:Nn \fp_const:Nn {c}
@@ -183,7 +183,7 @@
\s_@@ \@@_chk:w ??? ; \s_@@_stop
}
}
- { \exp_args:Nx #1 { \token_to_str:N #2 = \fp_to_tl:N #2 } }
+ { \exp_args:Ne #1 { \token_to_str:N #2 = \fp_to_tl:N #2 } }
}
\cs_new:Npn \@@_show_validate:w
#1 \s_@@ \@@_chk:w #2#3#4#5 ; #6 \s_@@_stop
diff --git a/macros/latex/contrib/l3kernel/l3fp-aux.dtx b/macros/latex/contrib/l3kernel/l3fp-aux.dtx
index 1f6b333761..3db65c9d29 100644
--- a/macros/latex/contrib/l3kernel/l3fp-aux.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-aux.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -226,7 +226,7 @@
% stream and its contents reach \TeX{}'s stomach.
% \begin{macrocode}
\cs_new_protected:Npn \@@_misused:n #1
- { \msg_error:nnx { fp } { misused } { \fp_to_tl:n {#1} } }
+ { \msg_error:nne { fp } { misused } { \fp_to_tl:n {#1} } }
% \end{macrocode}
% \end{macro}
%
@@ -338,7 +338,7 @@
% point numbers. This replaces infinities when converting to formats
% that do not support infinities.
% \begin{macrocode}
-\tl_const:Nx \c_@@_overflowing_fp
+\tl_const:Ne \c_@@_overflowing_fp
{
\s_@@ \@@_chk:w 1 0
{ \int_eval:n { \c_@@_max_exponent_int + 1 } }
@@ -596,7 +596,7 @@
\s_@@ { \@@_type_from_scan_other:N #1 }
\s_@@_stop
}
-\cs_new:Npx \@@_type_from_scan_other:N #1
+\cs_new:Npe \@@_type_from_scan_other:N #1
{
\exp_not:N \exp_after:wN \exp_not:N \@@_type_from_scan:w
\exp_not:N \token_to_str:N #1 \s_@@_mark
diff --git a/macros/latex/contrib/l3kernel/l3fp-basics.dtx b/macros/latex/contrib/l3kernel/l3fp-basics.dtx
index 6a8d6376fb..3c5ad9195b 100644
--- a/macros/latex/contrib/l3kernel/l3fp-basics.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-basics.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -129,7 +129,7 @@
% that \cs{@@_+_o:ww} can still perform the sanity check that it was
% followed by \cs{s_@@}.
% \begin{macrocode}
-\cs_new:cpx { @@_-_o:ww } \s_@@
+\cs_new:cpe { @@_-_o:ww } \s_@@
{
\exp_not:c { @@_+_o:ww }
\exp_not:n { \s_@@ \@@_neg_sign:N }
@@ -1429,11 +1429,11 @@
{
+ 5 * #1
\exp_after:wN \@@_div_significand_vi:Nw
- \int_value:w \@@_int_eval:w -20 + 2*#2#3 - #1*#6#7 +
+ \int_value:w \@@_int_eval:w -50 + 2*#2#3 - #1*#6#7 +
\exp_after:wN \@@_div_significand_v:NN
- \int_value:w \@@_int_eval:w 199980 + 2*#4 - #1*#8 +
+ \int_value:w \@@_int_eval:w 499950 + 2*#4 - #1*#8 +
\exp_after:wN \@@_div_significand_v:NN
- \int_value:w \@@_int_eval:w 200000 + 2*#5 - #1*#9 ;
+ \int_value:w \@@_int_eval:w 500000 + 2*#5 - #1*#9 ;
}
\cs_new:Npn \@@_div_significand_v:NN #1#2 { #1#2 \@@_int_eval_end: + }
\cs_new:Npn \@@_div_significand_vi:Nw #1#2;
diff --git a/macros/latex/contrib/l3kernel/l3fp-convert.dtx b/macros/latex/contrib/l3kernel/l3fp-convert.dtx
index bce0ddc8fd..835f9c4341 100644
--- a/macros/latex/contrib/l3kernel/l3fp-convert.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-convert.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-expo.dtx b/macros/latex/contrib/l3kernel/l3fp-expo.dtx
index d9c8cf5685..5ac216bf4c 100644
--- a/macros/latex/contrib/l3kernel/l3fp-expo.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-expo.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-extended.dtx b/macros/latex/contrib/l3kernel/l3fp-extended.dtx
index 0a5ac448aa..b83b37335b 100644
--- a/macros/latex/contrib/l3kernel/l3fp-extended.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-extended.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-logic.dtx b/macros/latex/contrib/l3kernel/l3fp-logic.dtx
index 9f11464f29..2f439c2925 100644
--- a/macros/latex/contrib/l3kernel/l3fp-logic.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-logic.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -487,7 +487,7 @@
{
\int_gincr:N \g__kernel_prg_map_int
\exp_args:NNc \@@_step:NNnnnn
- \cs_gset_protected:Npx
+ \cs_gset_protected:Npe
{ @@_map_ \int_use:N \g__kernel_prg_map_int :w }
{#1} {#2} {#3}
{
diff --git a/macros/latex/contrib/l3kernel/l3fp-parse.dtx b/macros/latex/contrib/l3kernel/l3fp-parse.dtx
index 86e2366f2d..418974d826 100644
--- a/macros/latex/contrib/l3kernel/l3fp-parse.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-parse.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -864,7 +864,7 @@
\exp_after:wN \@@_parse_exponent:N
\exp:w \@@_parse_expand:w
}
-\cs_new:Npx \@@_parse_one_register_aux:Nw #1
+\cs_new:Npe \@@_parse_one_register_aux:Nw #1
{
\exp_not:n
{
@@ -1937,7 +1937,7 @@
\fi:
\@@_parse_expand:w
}
-\cs_new:Npx \@@_parse_lparen_after:NwN #1#2 @ #3
+\cs_new:Npe \@@_parse_lparen_after:NwN #1#2 @ #3
{
\exp_not:N \token_if_eq_meaning:NNTF #3
\exp_not:c { @@_parse_infix_):N }
diff --git a/macros/latex/contrib/l3kernel/l3fp-random.dtx b/macros/latex/contrib/l3kernel/l3fp-random.dtx
index bb0e4b12f0..3e3b5cfdfc 100644
--- a/macros/latex/contrib/l3kernel/l3fp-random.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-random.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-round.dtx b/macros/latex/contrib/l3kernel/l3fp-round.dtx
index c0c656189f..f0853f5999 100644
--- a/macros/latex/contrib/l3kernel/l3fp-round.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-round.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fp-traps.dtx b/macros/latex/contrib/l3kernel/l3fp-traps.dtx
index 9b59b1759d..674ecdfd2d 100644
--- a/macros/latex/contrib/l3kernel/l3fp-traps.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-traps.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
% \maketitle
%
% \begin{documentation}
@@ -127,11 +127,11 @@
{ invalid_operation , division_by_zero , overflow , underflow }
{#1}
{
- \msg_error:nnxx { fp }
+ \msg_error:nnee { fp }
{ unknown-fpu-trap-type } {#1} {#2}
}
{
- \msg_error:nnx
+ \msg_error:nne
{ fp } { unknown-fpu-exception } {#1}
}
}
diff --git a/macros/latex/contrib/l3kernel/l3fp-trig.dtx b/macros/latex/contrib/l3kernel/l3fp-trig.dtx
index f4cc0513ad..b7bc6c19ce 100644
--- a/macros/latex/contrib/l3kernel/l3fp-trig.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp-trig.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -91,13 +91,13 @@
{cos} {cot} {csc} {sec} {sin} {tan}
}
{
- \cs_new:cpx { @@_parse_word_#1:N }
+ \cs_new:cpe { @@_parse_word_#1:N }
{
\exp_not:N \@@_parse_unary_function:NNN
\exp_not:c { @@_#1_o:w }
\exp_not:N \use_i:nn
}
- \cs_new:cpx { @@_parse_word_#1d:N }
+ \cs_new:cpe { @@_parse_word_#1d:N }
{
\exp_not:N \@@_parse_unary_function:NNN
\exp_not:c { @@_#1_o:w }
@@ -1201,7 +1201,7 @@
{ #1 { acot } { acotd } }
{ \@@_atan_default:w \@@_acotii_o:Nww #1 }
}
-\cs_new:Npx \@@_atan_default:w #1#2#3 @ { #1 #2 #3 \c_one_fp @ }
+\cs_new:Npe \@@_atan_default:w #1#2#3 @ { #1 #2 #3 \c_one_fp @ }
% \end{macrocode}
% \end{macro}
%
diff --git a/macros/latex/contrib/l3kernel/l3fp.dtx b/macros/latex/contrib/l3kernel/l3fp.dtx
index 17193dd8af..60a7b7534f 100644
--- a/macros/latex/contrib/l3kernel/l3fp.dtx
+++ b/macros/latex/contrib/l3kernel/l3fp.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3fparray.dtx b/macros/latex/contrib/l3kernel/l3fparray.dtx
index e3693f0a41..9929135baa 100644
--- a/macros/latex/contrib/l3kernel/l3fparray.dtx
+++ b/macros/latex/contrib/l3kernel/l3fparray.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -250,7 +250,7 @@
\cs_generate_variant:Nn \fparray_gset:Nnn { c }
\cs_new_protected:Npn \@@_array_gset:NNNNww #1#2#3#4#5 ; #6 ;
{
- \@@_array_bounds:NNnTF \msg_error:nnxxx #4 {#5}
+ \@@_array_bounds:NNnTF \msg_error:nneee #4 {#5}
{
\exp_after:wN \@@_change_func_type:NNN
\@@_use_i_until_s:nw #6 ;
diff --git a/macros/latex/contrib/l3kernel/l3int.dtx b/macros/latex/contrib/l3kernel/l3int.dtx
index 5bb880ead3..e012e191d2 100644
--- a/macros/latex/contrib/l3kernel/l3int.dtx
+++ b/macros/latex/contrib/l3kernel/l3int.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -1353,7 +1353,7 @@
% \end{macro}
%
% \begin{macro}{\int_const:Nn, \int_const:cn}
-% \begin{macro}{\@@_const:nN}
+% \begin{macro}{\@@_const:nN, \@@_const:eN}
% \begin{macro}{\@@_constdef:Nw}
% \begin{variable}{\c_@@_max_constdef_int}
% \UnitTested
@@ -1365,7 +1365,8 @@
% enabled) this runs some checks that constants would fail.
% \begin{macrocode}
\cs_new_protected:Npn \int_const:Nn #1#2
- { \exp_args:Nx \@@_const:nN { \int_eval:n {#2} } #1 }
+ { \@@_const:eN { \int_eval:n {#2} } #1 }
+\cs_generate_variant:Nn \int_const:Nn { c }
\cs_new_protected:Npn \@@_const:nN #1#2
{
\int_compare:nNnTF {#1} < \c_zero_int
@@ -1386,7 +1387,7 @@
}
#2 = \@@_eval:w #1 \@@_eval_end:
}
-\cs_generate_variant:Nn \int_const:Nn { c }
+\cs_generate_variant:Nn \@@_const:nN { e }
\if_int_odd:w 0
\cs_if_exist:NT \tex_luatexversion:D { 1 }
\cs_if_exist:NT \tex_omathchardef:D { 1 }
@@ -2003,7 +2004,7 @@
{
\int_gincr:N \g__kernel_prg_map_int
\exp_args:NNc \@@_step:NNnnnn
- \cs_gset_protected:Npx
+ \cs_gset_protected:Npe
{ @@_map_ \int_use:N \g__kernel_prg_map_int :w }
{#1}{#2}{#3}
{
@@ -2035,7 +2036,7 @@
%
% \begin{macro}{\int_to_symbols:nnn}
% \UnitTested
-% \begin{macro}{\@@_to_symbols:nnnn}
+% \begin{macro}{\@@_to_symbols:nnnn, \@@_to_symbols:ennn}
% For conversion of integers to arbitrary symbols the method is in
% general as follows. The input number (|#1|) is compared to the total
% number of symbols available at each place (|#2|). If the input is larger
@@ -2050,7 +2051,7 @@
{
\int_compare:nNnTF {#1} > {#2}
{
- \exp_args:NNo \exp_args:No \@@_to_symbols:nnnn
+ \@@_to_symbols:ennn
{
\int_case:nn
{ 1 + \int_mod:nn { #1 - 1 } {#2} }
@@ -2066,6 +2067,7 @@
{ \int_div_truncate:nn { #2 - 1 } {#3} } {#3} {#4}
#1
}
+\cs_generate_variant:Nn \@@_to_symbols:nnnn { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
diff --git a/macros/latex/contrib/l3kernel/l3intarray.dtx b/macros/latex/contrib/l3kernel/l3intarray.dtx
index cdbf71784c..10458ad602 100644
--- a/macros/latex/contrib/l3kernel/l3intarray.dtx
+++ b/macros/latex/contrib/l3kernel/l3intarray.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -238,7 +238,7 @@ end, 'protected', 'global')
{
\__kernel_chk_if_free_cs:N #1
\int_gincr:N \g_@@_table_int
- \cs_gset_nopar:Npx #1 { \@@:w \int_use:N \g_@@_table_int \c_space_tl }
+ \cs_gset_nopar:Npe #1 { \@@:w \int_use:N \g_@@_table_int \c_space_tl }
}
\cs_new_protected:Npn \intarray_new:Nn #1#2
{
@@ -246,7 +246,7 @@ end, 'protected', 'global')
\@@_gset_count:Nw #1 \int_eval:n {#2} \scan_stop:
\int_compare:nNnT { \intarray_count:N #1 } < 0
{
- \msg_error:nnx { kernel } { negative-array-size }
+ \msg_error:nne { kernel } { negative-array-size }
{ \intarray_count:N #1 }
}
}
@@ -387,7 +387,7 @@ end, 'protected', 'global')
{
\@@_gset:wF \int_eval:n {#2} #1 \int_eval:n{#3}
{
- \msg_error:nnxxx { kernel } { out-of-bounds }
+ \msg_error:nneee { kernel } { out-of-bounds }
{ \token_to_str:N #1 } { \int_use:N \l_@@_bad_index_int } { \intarray_count:N #1 }
}
}
@@ -640,7 +640,7 @@ luacmd('@@_gset_range:w', function()
\@@_count:w #1 = \int_eval:n {#2} \scan_stop:
\int_compare:nNnT { \intarray_count:N #1 } < 0
{
- \msg_error:nnx { kernel } { negative-array-size }
+ \msg_error:nne { kernel } { negative-array-size }
{ \intarray_count:N #1 }
}
\int_compare:nNnT { \intarray_count:N #1 } > 0
@@ -716,7 +716,7 @@ luacmd('@@_gset_range:w', function()
\cs_generate_variant:Nn \intarray_gset:Nnn { c }
\cs_new_protected:Npn \@@_gset:Nww #1#2 ; #3 ;
{
- \@@_bounds:NNnTF \msg_error:nnxxx #1 {#2}
+ \@@_bounds:NNnTF \msg_error:nneee #1 {#2}
{
\@@_gset_overflow_test:nw {#3}
\__kernel_intarray_gset:Nnn #1 {#2} {#3}
@@ -742,7 +742,7 @@ luacmd('@@_gset_range:w', function()
}
\cs_new_protected:Npn \@@_gset_overflow:NNnn #1#2#3#4
{
- \msg_error:nnxxxx { kernel } { overflow }
+ \msg_error:nneeee { kernel } { overflow }
{ \token_to_str:N #2 } {#3} {#4} { \@@_signed_max_dim:n {#4} }
#1 #2 {#3} { \@@_signed_max_dim:n {#4} }
}
@@ -915,9 +915,9 @@ luacmd('@@_gset_range:w', function()
% \begin{macro}{\intarray_show:N, \intarray_show:c, \intarray_log:N, \intarray_log:c}
% Convert the list to a comma list (with spaces after each comma)
% \begin{macrocode}
-\cs_new_protected:Npn \intarray_show:N { \@@_show:NN \msg_show:nnxxxx }
+\cs_new_protected:Npn \intarray_show:N { \@@_show:NN \msg_show:nneeee }
\cs_generate_variant:Nn \intarray_show:N { c }
-\cs_new_protected:Npn \intarray_log:N { \@@_show:NN \msg_log:nnxxxx }
+\cs_new_protected:Npn \intarray_log:N { \@@_show:NN \msg_log:nneeee }
\cs_generate_variant:Nn \intarray_log:N { c }
\cs_new_protected:Npn \@@_show:NN #1#2
{
diff --git a/macros/latex/contrib/l3kernel/l3kernel-functions.dtx b/macros/latex/contrib/l3kernel/l3kernel-functions.dtx
index c2d442f183..d517f72a22 100644
--- a/macros/latex/contrib/l3kernel/l3kernel-functions.dtx
+++ b/macros/latex/contrib/l3kernel/l3kernel-functions.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -491,9 +491,9 @@
% only a single expansion.
% \end{function}
%
-% \begin{function}{\__kernel_tl_set:Nx, \__kernel_tl_gset:Nx}
+% \begin{function}{\__kernel_tl_set:Ne, \__kernel_tl_gset:Ne}
% \begin{syntax}
-% \cs{__kernel_tl_set:Nx} \meta{tl~var} \Arg{tokens}
+% \cs{__kernel_tl_set:Ne} \meta{tl~var} \Arg{tokens}
% \end{syntax}
% Fully expands \meta{tokens} and assigns the result to \meta{tl~var}.
% \meta{tokens} must be given in braces and there must be no token between
@@ -545,7 +545,7 @@
% {
% \__kernel_backend_literal:n,
% \__kernel_backend_literal:e,
-% \__kernel_backend_literal:x
+% \__kernel_backend_literal:e
% }
% \begin{syntax}
% \cs{__kernel_backend_literal:n} \Arg{content}
@@ -558,7 +558,7 @@
% \begin{function}
% {
% \__kernel_backend_literal_postscript:n,
-% \__kernel_backend_literal_postscript:x
+% \__kernel_backend_literal_postscript:e
% }
% \begin{syntax}
% \cs{__kernel_backend_literal_postscript:n} \Arg{PostScript}
@@ -570,7 +570,7 @@
% \begin{function}
% {
% \__kernel_backend_literal_pdf:n,
-% \__kernel_backend_literal_pdf:x
+% \__kernel_backend_literal_pdf:e
% }
% \begin{syntax}
% \cs{__kernel_backend_literal_pdf:n} \Arg{PDF instructions}
@@ -582,7 +582,7 @@
% \begin{function}
% {
% \__kernel_backend_literal_svg:n,
-% \__kernel_backend_literal_svg:x
+% \__kernel_backend_literal_svg:e
% }
% \begin{syntax}
% \cs{__kernel_backend_literal_svg:n} \Arg{SVG instructions}
@@ -594,7 +594,7 @@
% \begin{function}
% {
% \__kernel_backend_postscript:n,
-% \__kernel_backend_postscript:x
+% \__kernel_backend_postscript:e
% }
% \begin{syntax}
% \cs{__kernel_backend_postscript:n} \Arg{PostScript}
@@ -626,7 +626,7 @@
% \begin{function}
% {
% \__kernel_backend_matrix:n,
-% \__kernel_backend_matrix:x
+% \__kernel_backend_matrix:e
% }
% \begin{syntax}
% \cs{__kernel_backend_matrix:n} \Arg{matrix}
diff --git a/macros/latex/contrib/l3kernel/l3keys.dtx b/macros/latex/contrib/l3kernel/l3keys.dtx
index 8a78f8cd7c..95ddcd0a38 100644
--- a/macros/latex/contrib/l3kernel/l3keys.dtx
+++ b/macros/latex/contrib/l3kernel/l3keys.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -124,7 +124,8 @@
%
% \section{Creating keys}
%
-% \begin{function}[updated = 2017-11-14]{\keys_define:nn}
+% \begin{function}[updated = 2017-11-14]
+% {\keys_define:nn, \keys_define:ne}
% \begin{syntax}
% \cs{keys_define:nn} \Arg{module} \Arg{keyval list}
% \end{syntax}
@@ -216,7 +217,7 @@
% \end{function}
%
% \begin{function}[added = 2011-08-21, updated = 2013-07-10]
-% {.choices:nn, .choices:Vn, .choices:on, .choices:xn}
+% {.choices:nn, .choices:Vn, .choices:en, .choices:on}
% \begin{syntax}
% \meta{key} .choices:nn = \Arg{choices} \Arg{code}
% \end{syntax}
@@ -263,7 +264,7 @@
% \end{function}
%
% \begin{function}[updated = 2013-07-09]
-% {.default:n, .default:V, .default:o, .default:x}
+% {.default:n, .default:V, .default:e, .default:o}
% \begin{syntax}
% \meta{key} .default:n = \Arg{default}
% \end{syntax}
@@ -355,7 +356,7 @@
% \end{function}
%
% \begin{function}[updated = 2013-07-09]
-% {.initial:n, .initial:V, .initial:o, .initial:x}
+% {.initial:n, .initial:V, .initial:e, .initial:o}
% \begin{syntax}
% \meta{key} .initial:n = \Arg{value}
% \end{syntax}
@@ -424,7 +425,7 @@
% \end{function}
%
% \begin{function}[added = 2011-08-21, updated = 2013-07-10]
-% {.multichoices:nn, .multichoices:Vn, .multichoices:on, .multichoices:xn}
+% {.multichoices:nn, .multichoices:Vn, .multichoices:en, .multichoices:on}
% \begin{syntax}
% \meta{key} .multichoices:nn \Arg{choices} \Arg{code}
% \end{syntax}
@@ -480,14 +481,14 @@
% at the point that the key is set up.
% \end{function}
%
-% \begin{function}[added = 2021-10-30]
-% {.str_set_x:N, .str_set_x:c, .str_gset_x:N, .str_gset_x:c}
+% \begin{function}[added = 2023-09-18]
+% {.str_set_e:N, .str_set_e:c, .str_gset_e:N, .str_gset_e:c}
% \begin{syntax}
-% \meta{key} .str_set_x:N = \meta{string variable}
+% \meta{key} .str_set_e:N = \meta{string variable}
% \end{syntax}
% Defines \meta{key} to set \meta{string variable} to \meta{value},
-% which will be subjected to an \texttt{x}-type expansion
-% (\emph{i.e.}~using \cs{str_set:Nx}). If the variable does not exist,
+% which will be subjected to an \texttt{e}-type expansion
+% (\emph{i.e.}~using \cs{str_set:Ne}). If the variable does not exist,
% it is created globally at the point that the key is set up.
% \end{function}
%
@@ -500,13 +501,14 @@
% at the point that the key is set up.
% \end{function}
%
-% \begin{function}{.tl_set_x:N, .tl_set_x:c, .tl_gset_x:N, .tl_gset_x:c}
+% \begin{function}[added = 2023-09-18]
+% {.tl_set_e:N, .tl_set_e:c, .tl_gset_e:N, .tl_gset_e:c}
% \begin{syntax}
-% \meta{key} .tl_set_x:N = \meta{token list variable}
+% \meta{key} .tl_set_e:N = \meta{token list variable}
% \end{syntax}
% Defines \meta{key} to set \meta{token list variable} to \meta{value},
-% which will be subjected to an \texttt{x}-type expansion
-% (\emph{i.e.}~using \cs{tl_set:Nx}). If the variable does not exist,
+% which will be subjected to an \texttt{e}-type expansion
+% (\emph{i.e.}~using \cs{tl_set:Ne}). If the variable does not exist,
% it is created globally at the point that the key is set up.
% \end{function}
%
@@ -637,7 +639,7 @@
% key / choice-b .code:n = code-b,
% key / choice-c .code:n = code-c,
% key / unknown .code:n =
-% \msg_error:nnxxx { mymodule } { unknown-choice }
+% \msg_error:nneee { mymodule } { unknown-choice }
% { key } % Name of choice key
% { choice-a , choice-b , choice-c } % Valid choices
% { \exp_not:n {#1} } % Invalid choice given
@@ -724,7 +726,10 @@
% \section{Setting keys}
%
% \begin{function}[updated = 2017-11-14]
-% {\keys_set:nn, \keys_set:nV, \keys_set:nv, \keys_set:no, \keys_set:nx}
+% {
+% \keys_set:nn, \keys_set:nV, \keys_set:nv, \keys_set:ne,
+% \keys_set:no,
+% }
% \begin{syntax}
% \cs{keys_set:nn} \Arg{module} \Arg{keyval list}
% \end{syntax}
@@ -782,11 +787,14 @@
% \begin{function}[added = 2011-08-23, updated = 2019-01-29]
% {
% \keys_set_known:nn, \keys_set_known:nV,
-% \keys_set_known:nv, \keys_set_known:no,
+% \keys_set_known:nv, \keys_set_known:ne,
+% \keys_set_known:no
% \keys_set_known:nnN, \keys_set_known:nVN,
-% \keys_set_known:nvN, \keys_set_known:noN,
+% \keys_set_known:nvN, \keys_set_known:neN,
+% \keys_set_known:noN
% \keys_set_known:nnnN, \keys_set_known:nVnN,
-% \keys_set_known:nvnN, \keys_set_known:nonN
+% \keys_set_known:nvnN, \keys_set_known:nenN,
+% \keys_set_known:nonN
% }
% \begin{syntax}
% \cs{keys_set_known:nn} \Arg{module} \Arg{keyval list}
@@ -1730,7 +1738,7 @@
%
% \subsection{The key defining mechanism}
%
-% \begin{macro}{\keys_define:nn}
+% \begin{macro}{\keys_define:nn, \keys_define:ne, \keys_define:nx}
% \begin{macro}{\@@_define:nnn, \@@_define:onn}
% The public function for definitions is just a wrapper for the lower
% level mechanism, more or less. The outer function is designed to
@@ -1739,9 +1747,10 @@
% \begin{macrocode}
\cs_new_protected:Npn \keys_define:nn
{ \@@_define:onn \l_@@_module_str }
+\cs_generate_variant:Nn \keys_define:nn { ne , nx }
\cs_new_protected:Npn \@@_define:nnn #1#2#3
{
- \str_set:Nx \l_@@_module_str { \@@_trim_spaces:n {#2} }
+ \str_set:Ne \l_@@_module_str { \@@_trim_spaces:n {#2} }
\keyval_parse:NNn \@@_define:n \@@_define:nn {#3}
\str_set:Nn \l_@@_module_str {#1}
}
@@ -1776,7 +1785,7 @@
{
\str_if_empty:NF \l_@@_property_str
{
- \msg_error:nnxx { keys } { property-unknown }
+ \msg_error:nnee { keys } { property-unknown }
\l_@@_property_str \l_keys_path_str
}
}
@@ -1798,12 +1807,12 @@
% and storing the text before and after it. Everything is turned into
% strings, so there is no problem using an \texttt{x}-type expansion. Since
% \cs{@@_trim_spaces:n} will turn its argument into a string anyway, this
-% function uses \cs{cs_set_nopar:Npx} instead of \cs{tl_set:Nx} to gain some
+% function uses \cs{cs_set_nopar:Npe} instead of \cs{tl_set:Ne} to gain some
% speed.
% \begin{macrocode}
\cs_new_protected:Npn \@@_property_find:n #1
{
- \cs_set_nopar:Npx \l_@@_property_str { \@@_trim_spaces:n { #1 } }
+ \cs_set_nopar:Npe \l_@@_property_str { \@@_trim_spaces:n { #1 } }
\exp_after:wN \@@_property_find_auxi:w \l_@@_property_str
\s_@@_nil \@@_property_find_auxii:w
. \s_@@_nil \@@_property_find_err:w
@@ -1816,22 +1825,22 @@
#1 \s_@@_mark #2 \s_@@_nil \@@_property_find_auxii:w . \s_@@_nil
\@@_property_find_err:w
{
- \cs_set_nopar:Npx \l_keys_path_str
+ \cs_set_nopar:Npe \l_keys_path_str
{ \str_if_empty:NF \l_@@_module_str { \l_@@_module_str / } #1 }
\@@_property_find_auxi:w #2 \s_@@_nil \@@_property_find_auxiii:w . \s_@@_nil
\@@_property_find_auxiv:w
}
\cs_new_protected:Npn \@@_property_find_auxiii:w #1 \s_@@_mark
{
- \cs_set_nopar:Npx \l_keys_path_str { \l_keys_path_str . #1 }
+ \cs_set_nopar:Npe \l_keys_path_str { \l_keys_path_str . #1 }
\@@_property_find_auxi:w
}
\cs_new_protected:Npn \@@_property_find_auxiv:w
#1 \s_@@_nil \@@_property_find_auxiii:w
\s_@@_mark \s_@@_nil \@@_property_find_auxiv:w
{
- \cs_set_nopar:Npx \l_@@_property_str { . #1 }
- \cs_set_nopar:Npx \l_keys_path_str
+ \cs_set_nopar:Npe \l_@@_property_str { . #1 }
+ \cs_set_nopar:Npe \l_keys_path_str
{ \exp_after:wN \@@_trim_spaces:n \exp_after:wN { \l_keys_path_str } }
\tl_set_eq:NN \l_keys_path_tl \l_keys_path_str
}
@@ -1861,7 +1870,7 @@
\l_@@_property_str \s_@@_stop
{ \use:c { \c_@@_props_root_str \l_@@_property_str } }
{
- \msg_error:nnxx { keys } { property-requires-value }
+ \msg_error:nnee { keys } { property-requires-value }
\l_@@_property_str \l_keys_path_str
}
}
@@ -1896,13 +1905,13 @@
{
\bool_if_exist:NF #1 { \bool_new:N #1 }
\@@_choice_make:
- \@@_cmd_set:nx { \l_keys_path_str / true }
+ \@@_cmd_set:ne { \l_keys_path_str / true }
{ \exp_not:c { bool_ #2 set_ #3 :N } \exp_not:N #1 }
- \@@_cmd_set:nx { \l_keys_path_str / false }
+ \@@_cmd_set:ne { \l_keys_path_str / false }
{ \exp_not:c { bool_ #2 set_ #4 :N } \exp_not:N #1 }
\@@_cmd_set_direct:nn { \l_keys_path_str / unknown }
{
- \msg_error:nnx { keys } { boolean-values-only }
+ \msg_error:nne { keys } { boolean-values-only }
\l_keys_path_str
}
\@@_default_set:n { true }
@@ -1932,7 +1941,7 @@
{ \c_@@_type_root_str \@@_parent:o \l_keys_path_str }
{ choice }
{
- \msg_error:nnxx { keys } { nested-choice-key }
+ \msg_error:nnee { keys } { nested-choice-key }
\l_keys_path_tl { \@@_parent:o \l_keys_path_str }
}
{ \@@_choice_make_aux:N #1 }
@@ -1946,7 +1955,7 @@
\@@_cmd_set_direct:nn \l_keys_path_str { #1 {##1} }
\@@_cmd_set_direct:nn { \l_keys_path_str / unknown }
{
- \msg_error:nnxx { keys } { choice-unknown }
+ \msg_error:nnee { keys } { choice-unknown }
\l_keys_path_str {##1}
}
}
@@ -1971,7 +1980,7 @@
\clist_map_inline:nn {#2}
{
\int_incr:N \l_keys_choice_int
- \@@_cmd_set:nx
+ \@@_cmd_set:ne
{ \l_keys_path_str / \@@_trim_spaces:n {##1} }
{
\tl_set:Nn \exp_not:N \l_keys_choice_tl {##1}
@@ -1987,7 +1996,7 @@
%
% \begin{macro}
% {
-% \@@_cmd_set:nn, \@@_cmd_set:nx, \@@_cmd_set:Vn, \@@_cmd_set:Vo,
+% \@@_cmd_set:nn, \@@_cmd_set:Vn, \@@_cmd_set:ne, \@@_cmd_set:Vo,
% \@@_cmd_set_direct:nn
% }
% Setting the code for a key first logs if appropriate that we are
@@ -1995,7 +2004,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_cmd_set:nn #1#2
{ \@@_cmd_set_direct:nn {#1} { \@@_precompile:n {#2} } }
-\cs_generate_variant:Nn \@@_cmd_set:nn { nx , Vn , Vo }
+\cs_generate_variant:Nn \@@_cmd_set:nn { ne , Vn , Vo }
\cs_new_protected:Npn \@@_cmd_set_direct:nn #1#2
{ \cs_set_protected:cpn { \c_@@_code_root_str #1 } ##1 {#2} }
% \end{macrocode}
@@ -2008,7 +2017,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_cs_set:NNpn #1#2#3#
{
- \cs_set_protected:cpx { \c_@@_code_root_str \l_keys_path_str } ##1
+ \cs_set_protected:cpe { \c_@@_code_root_str \l_keys_path_str } ##1
{
\@@_precompile:n
{ #1 \exp_not:N #2 \exp_not:n {#3} {##1} }
@@ -2020,7 +2029,7 @@
% \end{macro}
%
% \begin{macro}{\@@_default_set:n}
-% Setting a default value is easy. These are stored using \cs{cs_set_nopar:cpx} as this
+% Setting a default value is easy. These are stored using \cs{cs_set_nopar:cpe} as this
% avoids any worries about whether a token list exists.
% \begin{macrocode}
\cs_new_protected:Npn \@@_default_set:n #1
@@ -2032,7 +2041,7 @@
\tex_undefined:D
}
{
- \cs_set_nopar:cpx
+ \cs_set_nopar:cpe
{ \c_@@_default_root_str \l_keys_path_str }
{ \exp_not:n {#1} }
\@@_value_requirement:nn { required } { false }
@@ -2114,13 +2123,13 @@
\cs_new_protected:Npn \@@_legacy_if_set:nnnn #1#2#3#4
{
\@@_choice_make:
- \@@_cmd_set:nx { \l_keys_path_str / true }
+ \@@_cmd_set:ne { \l_keys_path_str / true }
{ \exp_not:c { legacy_if_#2 set_ #3 :n } { \exp_not:n {#1} } }
- \@@_cmd_set:nx { \l_keys_path_str / false }
+ \@@_cmd_set:ne { \l_keys_path_str / false }
{ \exp_not:c { legacy_if_#2 set_ #4 :n } { \exp_not:n {#1} } }
\@@_cmd_set:nn { \l_keys_path_str / unknown }
{
- \msg_error:nnx { keys } { boolean-values-only }
+ \msg_error:nne { keys } { boolean-values-only }
\l_keys_path_str
}
\@@_default_set:n { true }
@@ -2165,7 +2174,7 @@
\prop_if_exist:NF #1 { \prop_new:N #1 }
\exp_after:wN \@@_find_key_module:wNN \l_keys_path_str \s_@@_stop
\l_@@_tmpa_tl \l_@@_tmpb_tl
- \@@_cmd_set:nx \l_keys_path_str
+ \@@_cmd_set:ne \l_keys_path_str
{
\exp_not:c { prop_ #2 put:Nnn }
\exp_not:N #1
@@ -2225,7 +2234,7 @@
}
}
{
- \msg_error:nnx { keys }
+ \msg_error:nne { keys }
{ boolean-values-only }
{ .value_ #1 :n }
}
@@ -2234,7 +2243,7 @@
{
\bool_if:NF \l_@@_no_value_bool
{
- \msg_error:nnxx { keys } { value-forbidden }
+ \msg_error:nnee { keys } { value-forbidden }
\l_keys_path_str \l_keys_value_tl
\use_none:nnn
}
@@ -2243,7 +2252,7 @@
{
\bool_if:NT \l_@@_no_value_bool
{
- \msg_error:nnx { keys } { value-required }
+ \msg_error:nne { keys } { value-required }
\l_keys_path_str
\use_none:nnn
}
@@ -2294,7 +2303,7 @@
{
\prop_get:NVNF #1 \l_@@_module_str \l_@@_tmpa_tl
{ \tl_clear:N \l_@@_tmpa_tl }
- \tl_set:Nx \l_@@_tmpb_tl
+ \tl_set:Ne \l_@@_tmpb_tl
{ \exp_after:wN \@@_usage:w \l_keys_path_str \s_@@_stop }
\bool_if:NTF #2
{ \clist_put_right:NV \l_@@_tmpa_tl \l_@@_tmpb_tl }
@@ -2316,7 +2325,7 @@
\cs_new_protected:Npn \@@_variable_set:NnnN #1#2#3#4
{
\use:c { #2_if_exist:NF } #1 { \use:c { #2 _new:N } #1 }
- \@@_cmd_set:nx \l_keys_path_str
+ \@@_cmd_set:ne \l_keys_path_str
{
\exp_not:c { #2 _ #3 set:N #4 }
\exp_not:N #1
@@ -2386,8 +2395,7 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}
-% {.choices:nn, .choices:Vn, .choices:on, .choices:xn}
+% \begin{macro}{.choices:nn, .choices:Vn, .choices:en, .choices:on, .choices:xn}
% For auto-generation of a series of mutually-exclusive choices.
% Here, |#1| consists of two separate
% arguments, hence the slightly odd-looking implementation.
@@ -2396,6 +2404,8 @@
{ \@@_choices_make:nn #1 }
\cs_new_protected:cpn { \c_@@_props_root_str .choices:Vn } #1
{ \exp_args:NV \@@_choices_make:nn #1 }
+\cs_new_protected:cpn { \c_@@_props_root_str .choices:en } #1
+ { \exp_args:Ne \@@_choices_make:nn #1 }
\cs_new_protected:cpn { \c_@@_props_root_str .choices:on } #1
{ \exp_args:No \@@_choices_make:nn #1 }
\cs_new_protected:cpn { \c_@@_props_root_str .choices:xn } #1
@@ -2452,13 +2462,15 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{.default:n, .default:V, .default:o, .default:x}
+% \begin{macro}{.default:n, .default:V, .default:e, .default:o, .default:x}
% Expansion is left to the internal functions.
% \begin{macrocode}
\cs_new_protected:cpn { \c_@@_props_root_str .default:n } #1
{ \@@_default_set:n {#1} }
\cs_new_protected:cpn { \c_@@_props_root_str .default:V } #1
{ \exp_args:NV \@@_default_set:n #1 }
+\cs_new_protected:cpn { \c_@@_props_root_str .default:e } #1
+ { \exp_args:Ne \@@_default_set:n {#1} }
\cs_new_protected:cpn { \c_@@_props_root_str .default:o } #1
{ \exp_args:No \@@_default_set:n {#1} }
\cs_new_protected:cpn { \c_@@_props_root_str .default:x } #1
@@ -2514,13 +2526,15 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{.initial:n, .initial:V, .initial:o, .initial:x}
+% \begin{macro}{.initial:n, .initial:V, .initial:e, .initial:o, .initial:x}
% The standard hand-off approach.
% \begin{macrocode}
\cs_new_protected:cpn { \c_@@_props_root_str .initial:n } #1
{ \@@_initialise:n {#1} }
\cs_new_protected:cpn { \c_@@_props_root_str .initial:V } #1
{ \exp_args:NV \@@_initialise:n #1 }
+\cs_new_protected:cpn { \c_@@_props_root_str .initial:e } #1
+ { \exp_args:Ne \@@_initialise:n {#1} }
\cs_new_protected:cpn { \c_@@_props_root_str .initial:o } #1
{ \exp_args:No \@@_initialise:n {#1} }
\cs_new_protected:cpn { \c_@@_props_root_str .initial:x } #1
@@ -2579,11 +2593,7 @@
% \end{macro}
%
% \begin{macro}{.multichoice:}
-% \begin{macro}
-% {
-% .multichoices:nn, .multichoices:Vn, .multichoices:on,
-% .multichoices:xn,
-% }
+% \begin{macro}{.multichoices:nn, .multichoices:Vn, .multichoices:en, .multichoices:on, .multichoices:xn}
% The same idea as \texttt{.choice:} and \texttt{.choices:nn}, but
% where more than one choice is allowed.
% \begin{macrocode}
@@ -2593,6 +2603,8 @@
{ \@@_multichoices_make:nn #1 }
\cs_new_protected:cpn { \c_@@_props_root_str .multichoices:Vn } #1
{ \exp_args:NV \@@_multichoices_make:nn #1 }
+\cs_new_protected:cpn { \c_@@_props_root_str .multichoices:en } #1
+ { \exp_args:Ne \@@_multichoices_make:nn #1 }
\cs_new_protected:cpn { \c_@@_props_root_str .multichoices:on } #1
{ \exp_args:No \@@_multichoices_make:nn #1 }
\cs_new_protected:cpn { \c_@@_props_root_str .multichoices:xn } #1
@@ -2647,26 +2659,26 @@
%
% \begin{macro}{.str_set:N, .str_set:c}
% \begin{macro}{.str_gset:N, .str_gset:c}
-% \begin{macro}{.str_set_x:N, .str_set_x:c}
-% \begin{macro}{.str_gset_x:N, .str_gset_x:c}
+% \begin{macro}{.str_set_e:N, .str_set_e:c}
+% \begin{macro}{.str_gset_e:N, .str_gset_e:c}
% Setting a variable is very easy: just pass the data along.
% \begin{macrocode}
\cs_new_protected:cpn { \c_@@_props_root_str .str_set:N } #1
{ \@@_variable_set:NnnN #1 { str } { } n }
\cs_new_protected:cpn { \c_@@_props_root_str .str_set:c } #1
{ \@@_variable_set:cnnN {#1} { str } { } n }
-\cs_new_protected:cpn { \c_@@_props_root_str .str_set_x:N } #1
- { \@@_variable_set:NnnN #1 { str } { } x }
-\cs_new_protected:cpn { \c_@@_props_root_str .str_set_x:c } #1
- { \@@_variable_set:cnnN {#1} { str } { } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .str_set_e:N } #1
+ { \@@_variable_set:NnnN #1 { str } { } e }
+\cs_new_protected:cpn { \c_@@_props_root_str .str_set_e:c } #1
+ { \@@_variable_set:cnnN {#1} { str } { } e }
\cs_new_protected:cpn { \c_@@_props_root_str .str_gset:N } #1
{ \@@_variable_set:NnnN #1 { str } { g } n }
\cs_new_protected:cpn { \c_@@_props_root_str .str_gset:c } #1
{ \@@_variable_set:cnnN {#1} { str } { g } n }
-\cs_new_protected:cpn { \c_@@_props_root_str .str_gset_x:N } #1
- { \@@_variable_set:NnnN #1 { str } { g } x }
-\cs_new_protected:cpn { \c_@@_props_root_str .str_gset_x:c } #1
- { \@@_variable_set:cnnN {#1} { str } { g } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .str_gset_e:N } #1
+ { \@@_variable_set:NnnN #1 { str } { g } e }
+\cs_new_protected:cpn { \c_@@_props_root_str .str_gset_e:c } #1
+ { \@@_variable_set:cnnN {#1} { str } { g } e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2675,26 +2687,26 @@
%
% \begin{macro}{.tl_set:N, .tl_set:c}
% \begin{macro}{.tl_gset:N, .tl_gset:c}
-% \begin{macro}{.tl_set_x:N, .tl_set_x:c}
-% \begin{macro}{.tl_gset_x:N, .tl_gset_x:c}
+% \begin{macro}{.tl_set_e:N, .tl_set_e:c}
+% \begin{macro}{.tl_gset_e:N, .tl_gset_e:c}
% Setting a variable is very easy: just pass the data along.
% \begin{macrocode}
\cs_new_protected:cpn { \c_@@_props_root_str .tl_set:N } #1
{ \@@_variable_set:NnnN #1 { tl } { } n }
\cs_new_protected:cpn { \c_@@_props_root_str .tl_set:c } #1
{ \@@_variable_set:cnnN {#1} { tl } { } n }
-\cs_new_protected:cpn { \c_@@_props_root_str .tl_set_x:N } #1
- { \@@_variable_set:NnnN #1 { tl } { } x }
-\cs_new_protected:cpn { \c_@@_props_root_str .tl_set_x:c } #1
- { \@@_variable_set:cnnN {#1} { tl } { } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_set_e:N } #1
+ { \@@_variable_set:NnnN #1 { tl } { } e }
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_set_e:c } #1
+ { \@@_variable_set:cnnN {#1} { tl } { } e }
\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset:N } #1
{ \@@_variable_set:NnnN #1 { tl } { g } n }
\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset:c } #1
{ \@@_variable_set:cnnN {#1} { tl } { g } n }
-\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset_x:N } #1
- { \@@_variable_set:NnnN #1 { tl } { g } x }
-\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset_x:c } #1
- { \@@_variable_set:cnnN {#1} { tl } { g } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset_e:N } #1
+ { \@@_variable_set:NnnN #1 { tl } { g } e }
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset_e:c } #1
+ { \@@_variable_set:cnnN {#1} { tl } { g } e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2732,7 +2744,8 @@
%
% \begin{macro}
% {
-% \keys_set:nn, \keys_set:nV, \keys_set:nv, \keys_set:no, \keys_set:nx,
+% \keys_set:nn, \keys_set:nV, \keys_set:nv, \keys_set:ne,
+% \keys_set:no, \keys_set:nx,
% \@@_set:nn
% }
% \begin{macro}{\@@_set:nnn}
@@ -2740,7 +2753,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \keys_set:nn #1#2
{
- \use:x
+ \use:e
{
\bool_set_false:N \exp_not:N \l_@@_only_known_bool
\bool_set_false:N \exp_not:N \l_@@_filtered_bool
@@ -2758,12 +2771,12 @@
{ \exp_not:o \l_@@_relative_tl }
}
}
-\cs_generate_variant:Nn \keys_set:nn { nV , nv , no , nx }
+\cs_generate_variant:Nn \keys_set:nn { nV , nv , ne , no , nx }
\cs_new_protected:Npn \@@_set:nn #1#2
{ \exp_args:No \@@_set:nnn \l_@@_module_str {#1} {#2} }
\cs_new_protected:Npn \@@_set:nnn #1#2#3
{
- \str_set:Nx \l_@@_module_str { \@@_trim_spaces:n {#2} }
+ \str_set:Ne \l_@@_module_str { \@@_trim_spaces:n {#2} }
\keyval_parse:NNn \@@_set_keyval:n \@@_set_keyval:nn {#3}
\str_set:Nn \l_@@_module_str {#1}
}
@@ -2774,18 +2787,21 @@
% \begin{macro}
% {
% \keys_set_known:nnN, \keys_set_known:nVN,
-% \keys_set_known:nvN, \keys_set_known:noN
+% \keys_set_known:nvN, \keys_set_known:neN,
+% \keys_set_known:noN
% }
% \begin{macro}
% {
% \keys_set_known:nnnN, \keys_set_known:nVnN,
-% \keys_set_known:nvnN, \keys_set_known:nonN
+% \keys_set_known:nvnN, \keys_set_known:nenN,
+% \keys_set_known:nonN
% }
% \begin{macro}{\@@_set_known:nnnnN}
% \begin{macro}
% {
% \keys_set_known:nn, \keys_set_known:nV,
-% \keys_set_known:nv, \keys_set_known:no
+% \keys_set_known:nv, \keys_set_known:ne,
+% \keys_set_known:no
% }
% \begin{macro}{\@@_set_known:nnn}
% Setting known keys simply means setting the appropriate flag, then
@@ -2799,26 +2815,26 @@
\exp_args:No \@@_set_known:nnnnN
\l_@@_unused_clist \q_@@_no_value {#1} {#2} #3
}
-\cs_generate_variant:Nn \keys_set_known:nnN { nV , nv , no }
+\cs_generate_variant:Nn \keys_set_known:nnN { nV , nv , ne , no }
\cs_new_protected:Npn \keys_set_known:nnnN #1#2#3#4
{
\exp_args:No \@@_set_known:nnnnN
\l_@@_unused_clist {#3} {#1} {#2} #4
}
-\cs_generate_variant:Nn \keys_set_known:nnnN { nV , nv , no }
+\cs_generate_variant:Nn \keys_set_known:nnnN { nV , nv , ne , no }
\cs_new_protected:Npn \@@_set_known:nnnnN #1#2#3#4#5
{
\clist_clear:N \l_@@_unused_clist
\@@_set_known:nnn {#2} {#3} {#4}
- \__kernel_tl_set:Nx #5 { \exp_not:o \l_@@_unused_clist }
+ \__kernel_tl_set:Ne #5 { \exp_not:o \l_@@_unused_clist }
\tl_set:Nn \l_@@_unused_clist {#1}
}
\cs_new_protected:Npn \keys_set_known:nn #1#2
{ \@@_set_known:nnn \q_@@_no_value {#1} {#2} }
-\cs_generate_variant:Nn \keys_set_known:nn { nV , nv , no }
+\cs_generate_variant:Nn \keys_set_known:nn { nV , nv , ne , no }
\cs_new_protected:Npn \@@_set_known:nnn #1#2#3
{
- \use:x
+ \use:e
{
\bool_set_true:N \exp_not:N \l_@@_only_known_bool
\bool_set_false:N \exp_not:N \l_@@_filtered_bool
@@ -2888,7 +2904,7 @@
{
\clist_clear:N \l_@@_unused_clist
\@@_set_filter:nnnn {#2} {#3} {#4} {#5}
- \__kernel_tl_set:Nx #6 { \exp_not:o \l_@@_unused_clist }
+ \__kernel_tl_set:Ne #6 { \exp_not:o \l_@@_unused_clist }
\tl_set:Nn \l_@@_unused_clist {#1}
}
\cs_new_protected:Npn \keys_set_filter:nnn #1#2#3
@@ -2896,7 +2912,7 @@
\cs_generate_variant:Nn \keys_set_filter:nnn { nnV , nnv , nno }
\cs_new_protected:Npn \@@_set_filter:nnnn #1#2#3#4
{
- \use:x
+ \use:e
{
\bool_set_false:N \exp_not:N \l_@@_only_known_bool
\bool_set_true:N \exp_not:N \l_@@_filtered_bool
@@ -2915,7 +2931,7 @@
}
\cs_new_protected:Npn \keys_set_groups:nnn #1#2#3
{
- \use:x
+ \use:e
{
\bool_set_false:N \exp_not:N \l_@@_only_known_bool
\bool_set_false:N \exp_not:N \l_@@_filtered_bool
@@ -3001,7 +3017,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_set_keyval:nnn #1#2#3
{
- \__kernel_tl_set:Nx \l_keys_path_str
+ \__kernel_tl_set:Ne \l_keys_path_str
{
\tl_if_blank:nF {#1}
{ #1 / }
@@ -3020,7 +3036,7 @@
}
\cs_generate_variant:Nn \@@_set_keyval:nnn { o }
% \end{macrocode}
-% This function uses \cs{cs_set_nopar:Npx} internally for performance reasons,
+% This function uses \cs{cs_set_nopar:Npe} internally for performance reasons,
% the argument |#1| is already a string in every usage, so turning it into a
% string again seems unnecessary.
% \begin{macrocode}
@@ -3036,12 +3052,12 @@
\cs_new_protected:Npn \@@_find_key_module_auxii:Nw
#1 #2 \s_@@_mark #3 \s_@@_nil \@@_find_key_module_auxii:Nw
{
- \cs_set_nopar:Npx #1 { \tl_if_empty:NF #1 { #1 / } #2 }
+ \cs_set_nopar:Npe #1 { \tl_if_empty:NF #1 { #1 / } #2 }
\@@_find_key_module_auxi:Nw #1 #3 \s_@@_nil \@@_find_key_module_auxiii:Nw
}
\cs_new_protected:Npn \@@_find_key_module_auxiii:Nw #1 #2 \s_@@_mark
{
- \cs_set_nopar:Npx #1 { \tl_if_empty:NF #1 { #1 / } #2 }
+ \cs_set_nopar:Npe #1 { \tl_if_empty:NF #1 { #1 / } #2 }
\@@_find_key_module_auxi:Nw #1
}
\cs_new_protected:Npn \@@_find_key_module_auxiv:Nw
@@ -3209,7 +3225,7 @@
{ \c_@@_code_root_str \l_@@_module_str / unknown }
{ \@@_execute:no { \l_@@_module_str / unknown } \l_keys_value_tl }
{
- \msg_error:nnxx { keys } { unknown }
+ \msg_error:nnee { keys } { unknown }
\l_keys_path_str \l_@@_module_str
}
}
@@ -3248,7 +3264,7 @@
{
\@@_quark_if_no_value:NTF \l_@@_relative_tl
{
- \clist_put_right:Nx \l_@@_unused_clist
+ \clist_put_right:Ne \l_@@_unused_clist
{
\l_keys_key_str
\bool_if:NF \l_@@_no_value_bool
@@ -3258,7 +3274,7 @@
{
\tl_if_empty:NTF \l_@@_relative_tl
{
- \clist_put_right:Nx \l_@@_unused_clist
+ \clist_put_right:Ne \l_@@_unused_clist
{
\l_keys_path_str
\bool_if:NF \l_@@_no_value_bool
@@ -3270,30 +3286,30 @@
}
\cs_new_protected:Npn \@@_store_unused_aux:
{
- \__kernel_tl_set:Nx \l_@@_relative_tl
+ \__kernel_tl_set:Ne \l_@@_relative_tl
{ \exp_args:No \@@_trim_spaces:n \l_@@_relative_tl }
- \use:x
+ \use:e
{
\cs_set_protected:Npn \@@_store_unused:w
- ####1 \l_@@_relative_tl /
- ####2 \l_@@_relative_tl /
- ####3 \s_@@_stop
+ ##1 \l_@@_relative_tl /
+ ##2 \l_@@_relative_tl /
+ ##3 \s_@@_stop
}
{
\tl_if_blank:nF {##1}
{
- \msg_error:nnxx { keys } { bad-relative-key-path }
+ \msg_error:nnee { keys } { bad-relative-key-path }
\l_keys_path_str
\l_@@_relative_tl
}
- \clist_put_right:Nx \l_@@_unused_clist
+ \clist_put_right:Ne \l_@@_unused_clist
{
\exp_not:n {##2}
\bool_if:NF \l_@@_no_value_bool
{ = { \exp_not:o \l_keys_value_tl } }
}
}
- \use:x
+ \use:e
{
\@@_store_unused:w \l_keys_path_str
\l_@@_relative_tl / \l_@@_relative_tl /
@@ -3458,9 +3474,9 @@
% To show a key, show its code using a message.
% \begin{macrocode}
\cs_new_protected:Npn \keys_show:nn
- { \@@_show:Nnn \msg_show:nnxxxx }
+ { \@@_show:Nnn \msg_show:nneeee }
\cs_new_protected:Npn \keys_log:nn
- { \@@_show:Nnn \msg_log:nnxxxx }
+ { \@@_show:Nnn \msg_log:nneeee }
\cs_new_protected:Npn \@@_show:Nnn #1#2#3
{
#1 { keys } { show-key }
@@ -3483,7 +3499,7 @@
}
{ } { }
}
-\cs_new:Npx \@@_show:n #1
+\cs_new:Npe \@@_show:n #1
{
\exp_not:N \@@_show:w
#1
@@ -3492,21 +3508,21 @@
\tl_to_str:n { \@@_precompile:n }
\exp_not:N \s_@@_stop
}
-\use:x
+\use:e
{
\cs_new:Npn \exp_not:N \@@_show:w
- ##1 \tl_to_str:n { \@@_precompile:n }
- ##2 \tl_to_str:n { \@@_precompile:n }
- ##3 \exp_not:N \s_@@_stop
+ #1 \tl_to_str:n { \@@_precompile:n }
+ #2 \tl_to_str:n { \@@_precompile:n }
+ #3 \exp_not:N \s_@@_stop
}
{
\tl_if_blank:nTF {#2}
{#1}
{ \@@_show:Nw #2 \s_@@_stop }
}
-\use:x
+\use:e
{
- \cs_new:Npn \exp_not:N \@@_show:Nw ##1##2
+ \cs_new:Npn \exp_not:N \@@_show:Nw #1#2
\c_right_brace_str \exp_not:N \s_@@_stop
}
{#2}
@@ -3568,6 +3584,38 @@
\prop_gput:Nnn \g_msg_module_type_prop { keys } { }
% \end{macrocode}
%
+% \subsection{Deprecated functions}
+%
+% \begin{macro}{.str_set_x:N, .str_set_x:c}
+% \begin{macro}{.str_gset_x:N, .str_gset_x:c}
+% \begin{macrocode}
+\cs_new_protected:cpn { \c_@@_props_root_str .str_set_x:N } #1
+ { \@@_variable_set:NnnN #1 { str } { } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .str_set_x:c } #1
+ { \@@_variable_set:cnnN {#1} { str } { } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .str_gset_x:N } #1
+ { \@@_variable_set:NnnN #1 { str } { g } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .str_gset_x:c } #1
+ { \@@_variable_set:cnnN {#1} { str } { g } x }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{.tl_set_x:N, .tl_set_x:c}
+% \begin{macro}{.tl_gset_x:N, .tl_gset_x:c}
+% \begin{macrocode}
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_set_x:N } #1
+ { \@@_variable_set:NnnN #1 { tl } { } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_set_x:c } #1
+ { \@@_variable_set:cnnN {#1} { tl } { } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset_x:N } #1
+ { \@@_variable_set:NnnN #1 { tl } { g } x }
+\cs_new_protected:cpn { \c_@@_props_root_str .tl_gset_x:c } #1
+ { \@@_variable_set:cnnN {#1} { tl } { g } x }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
% \begin{macrocode}
%</package>
% \end{macrocode}
diff --git a/macros/latex/contrib/l3kernel/l3legacy.dtx b/macros/latex/contrib/l3kernel/l3legacy.dtx
index 4142ac4658..92b8cdb971 100644
--- a/macros/latex/contrib/l3kernel/l3legacy.dtx
+++ b/macros/latex/contrib/l3kernel/l3legacy.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3luatex.dtx b/macros/latex/contrib/l3kernel/l3luatex.dtx
index 4e1f6a5bb8..c7832c892d 100644
--- a/macros/latex/contrib/l3kernel/l3luatex.dtx
+++ b/macros/latex/contrib/l3kernel/l3luatex.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3msg.dtx b/macros/latex/contrib/l3kernel/l3msg.dtx
index 82092523fa..4feb4115a1 100644
--- a/macros/latex/contrib/l3kernel/l3msg.dtx
+++ b/macros/latex/contrib/l3kernel/l3msg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -105,8 +105,8 @@
%
% \begin{function}[updated = 2011-08-16]
% {
-% \msg_new:nnnn, \msg_new:nnxx,
-% \msg_new:nnn, \msg_new:nnx
+% \msg_new:nnnn, \msg_new:nnee,
+% \msg_new:nnn, \msg_new:nne
% }
% \begin{syntax}
% \cs{msg_new:nnnn} \Arg{module} \Arg{message} \Arg{text} \Arg{more text}
@@ -320,12 +320,12 @@
% \msg_fatal:nnVn ,
% \msg_fatal:nnnV ,
% \msg_fatal:nnV ,
-% \msg_fatal:nnxxxx ,
-% \msg_fatal:nnxxx ,
-% \msg_fatal:nnnxx ,
-% \msg_fatal:nnxx ,
-% \msg_fatal:nnnx ,
-% \msg_fatal:nnx
+% \msg_fatal:nneeee ,
+% \msg_fatal:nneee ,
+% \msg_fatal:nnnee ,
+% \msg_fatal:nnee ,
+% \msg_fatal:nnne ,
+% \msg_fatal:nne
% }
% \begin{syntax}
% \cs{msg_fatal:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
@@ -347,12 +347,12 @@
% \msg_critical:nnVn ,
% \msg_critical:nnnV ,
% \msg_critical:nnV ,
-% \msg_critical:nnxxxx ,
-% \msg_critical:nnxxx ,
-% \msg_critical:nnnxx ,
-% \msg_critical:nnxx ,
-% \msg_critical:nnnx ,
-% \msg_critical:nnx
+% \msg_critical:nneeee ,
+% \msg_critical:nneee ,
+% \msg_critical:nnnee ,
+% \msg_critical:nnee ,
+% \msg_critical:nnne ,
+% \msg_critical:nne
% }
% \begin{syntax}
% \cs{msg_critical:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
@@ -380,12 +380,12 @@
% \msg_error:nnVn ,
% \msg_error:nnnV ,
% \msg_error:nnV ,
-% \msg_error:nnxxxx ,
-% \msg_error:nnxxx ,
-% \msg_error:nnnxx ,
-% \msg_error:nnxx ,
-% \msg_error:nnnx ,
-% \msg_error:nnx
+% \msg_error:nneeee ,
+% \msg_error:nneee ,
+% \msg_error:nnnee ,
+% \msg_error:nnee ,
+% \msg_error:nnne ,
+% \msg_error:nne
% }
% \begin{syntax}
% \cs{msg_error:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
@@ -402,21 +402,20 @@
% \msg_warning:nnnnn ,
% \msg_warning:nnnn ,
% \msg_warning:nnn ,
-% \msg_warning:nnn ,
% \msg_warning:nn ,
% \msg_warning:nnVV ,
% \msg_warning:nnVn ,
% \msg_warning:nnnV ,
% \msg_warning:nnV ,
-% \msg_warning:nnxxxx ,
-% \msg_warning:nnxxx ,
-% \msg_warning:nnnxx ,
-% \msg_warning:nnxx ,
-% \msg_warning:nnnx ,
-% \msg_warning:nnx
+% \msg_warning:nneeee ,
+% \msg_warning:nneee ,
+% \msg_warning:nnnee ,
+% \msg_warning:nnee ,
+% \msg_warning:nnne ,
+% \msg_warning:nne
% }
% \begin{syntax}
-% \cs{msg_warning:nnxxxx} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
+% \cs{msg_warning:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
% \end{syntax}
% Issues \meta{module} warning \meta{message}, passing \meta{arg one}
% to \meta{arg four} to the text-creating functions. The warning text
@@ -435,12 +434,12 @@
% \msg_note:nnVn ,
% \msg_note:nnnV ,
% \msg_note:nnV ,
-% \msg_note:nnxxxx ,
-% \msg_note:nnxxx ,
-% \msg_note:nnnxx ,
-% \msg_note:nnxx ,
-% \msg_note:nnnx ,
-% \msg_note:nnx ,
+% \msg_note:nneeee ,
+% \msg_note:nneee ,
+% \msg_note:nnnee ,
+% \msg_note:nnee ,
+% \msg_note:nnne ,
+% \msg_note:nne ,
% \msg_info:nnnnnn ,
% \msg_info:nnnnn ,
% \msg_info:nnnn ,
@@ -450,12 +449,12 @@
% \msg_info:nnVn ,
% \msg_info:nnnV ,
% \msg_info:nnV ,
-% \msg_info:nnxxxx ,
-% \msg_info:nnxxx ,
-% \msg_info:nnnxx ,
-% \msg_info:nnxx ,
-% \msg_info:nnnx ,
-% \msg_info:nnx
+% \msg_info:nneeee ,
+% \msg_info:nneee ,
+% \msg_info:nnnee ,
+% \msg_info:nnee ,
+% \msg_info:nnne ,
+% \msg_info:nne
% }
% \begin{syntax}
% \cs{msg_note:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
@@ -480,12 +479,12 @@
% \msg_term:nnVn ,
% \msg_term:nnnV ,
% \msg_term:nnV ,
-% \msg_term:nnxxxx ,
-% \msg_term:nnxxx ,
-% \msg_term:nnnxx ,
-% \msg_term:nnxx ,
-% \msg_term:nnnx ,
-% \msg_term:nnx ,
+% \msg_term:nneeee ,
+% \msg_term:nneee ,
+% \msg_term:nnnee ,
+% \msg_term:nnee ,
+% \msg_term:nnne ,
+% \msg_term:nne ,
% \msg_log:nnnnnn ,
% \msg_log:nnnnn ,
% \msg_log:nnnn ,
@@ -495,12 +494,12 @@
% \msg_log:nnVn ,
% \msg_log:nnnV ,
% \msg_log:nnV ,
-% \msg_log:nnxxxx ,
-% \msg_log:nnxxx ,
-% \msg_log:nnnxx ,
-% \msg_log:nnxx ,
-% \msg_log:nnnx ,
-% \msg_log:nnx
+% \msg_log:nneeee ,
+% \msg_log:nneee ,
+% \msg_log:nnnee ,
+% \msg_log:nnee ,
+% \msg_log:nnne ,
+% \msg_log:nne
% }
% \begin{syntax}
% \cs{msg_term:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
@@ -525,12 +524,12 @@
% \msg_none:nnVn ,
% \msg_none:nnnV ,
% \msg_none:nnV ,
-% \msg_none:nnxxxx ,
-% \msg_none:nnxxx ,
-% \msg_none:nnnxx ,
-% \msg_none:nnxx ,
-% \msg_none:nnnx ,
-% \msg_none:nnx
+% \msg_none:nneeee ,
+% \msg_none:nneee ,
+% \msg_none:nnnee ,
+% \msg_none:nnee ,
+% \msg_none:nnne ,
+% \msg_none:nne
% }
% \begin{syntax}
% \cs{msg_none:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
@@ -552,12 +551,12 @@
% \msg_show:nnVn ,
% \msg_show:nnnV ,
% \msg_show:nnV ,
-% \msg_show:nnxxxx ,
-% \msg_show:nnxxx ,
-% \msg_show:nnnxx ,
-% \msg_show:nnxx ,
-% \msg_show:nnnx ,
-% \msg_show:nnx
+% \msg_show:nneeee ,
+% \msg_show:nneee ,
+% \msg_show:nnnee ,
+% \msg_show:nnee ,
+% \msg_show:nnne ,
+% \msg_show:nne
% }
% \begin{syntax}
% \cs{msg_show:nnnnnn} \Arg{module} \Arg{message} \Arg{arg one} \Arg{arg two} \Arg{arg three} \Arg{arg four}
@@ -579,7 +578,7 @@
% \cs{seq_map_function:NN} \meta{seq} \cs{msg_show_item:n}
% \cs{prop_map_function:NN} \meta{prop} \cs{msg_show_item:nn}
% \end{syntax}
-% Used in the text of messages for \cs{msg_show:nnxxxx} to show or log
+% Used in the text of messages for \cs{msg_show:nnnnnn} to show or log
% a list of items or key--value pairs. The output of
% \cs{msg_show_item:n} produces a newline, the prefix |>|, two spaces,
% then the braced string representation of its argument.
@@ -798,14 +797,18 @@
{
\msg_if_exist:nnT {#1} {#2}
{
- \msg_error:nnxx { msg } { already-defined }
+ \msg_error:nnnn { msg } { already-defined }
{#1} {#2}
}
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\msg_new:nnnn, \msg_new:nnxx, \msg_new:nnn, \msg_new:nnx}
+% \begin{macro}
+% {
+% \msg_new:nnnn, \msg_new:nnee, \msg_new:nnxx,
+% \msg_new:nnn, \msg_new:nne, \msg_new:nnx
+% }
% \begin{macro}{\msg_gset:nnnn, \msg_gset:nnn}
% \begin{macro}{\msg_set:nnnn, \msg_set:nnn}
% Setting a message simply means saving the appropriate text
@@ -816,10 +819,10 @@
\@@_chk_free:nn {#1} {#2}
\msg_gset:nnnn {#1} {#2}
}
-\cs_generate_variant:Nn \msg_new:nnnn { nnxx }
+\cs_generate_variant:Nn \msg_new:nnnn { nnee , nnxx }
\cs_new_protected:Npn \msg_new:nnn #1#2#3
{ \msg_new:nnnn {#1} {#2} {#3} { } }
-\cs_generate_variant:Nn \msg_new:nnn { nnx }
+\cs_generate_variant:Nn \msg_new:nnn { nne , nnx }
\cs_new_protected:Npn \msg_set:nnnn #1#2#3#4
{
\cs_set:cpn { \c_@@_text_prefix_tl #1 / #2 }
@@ -923,8 +926,8 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_interrupt:NnnnN #1#2#3#4#5
{
- \str_set:Nx \l_@@_text_str { #1 {#2} }
- \str_set:Nx \l_@@_name_str { \msg_module_name:n {#2} }
+ \str_set:Ne \l_@@_text_str { #1 {#2} }
+ \str_set:Ne \l_@@_name_str { \msg_module_name:n {#2} }
\cs_if_eq:cNTF
{ \c_@@_more_text_prefix_tl #2 / #3 }
\@@_no_more_text:nnnn
@@ -972,7 +975,7 @@
\iow_wrap:nnnN { \\ #3 } { } { } \@@_interrupt_more_text:n
\group_begin:
\int_sub:Nn \l_iow_line_count_int { 2 }
- \iow_wrap:nxnN { \l_@@_text_str : ~ #1 }
+ \iow_wrap:nenN { \l_@@_text_str : ~ #1 }
{
( \l_@@_name_str )
\prg_replicate:nn
@@ -993,7 +996,7 @@
\tl_set:Nn \l_@@_internal_tl {#1}
}
\cs_new_protected:Npn \@@_interrupt_more_text:n #1
- { \exp_args:Nx \tex_errhelp:D { #1 \iow_newline: } }
+ { \exp_args:Ne \tex_errhelp:D { #1 \iow_newline: } }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1165,39 +1168,28 @@
##1##2##3##4##5##6 {#2}
\cs_new_protected:cpn { msg_ #1 :nnnnnn } ##1##2##3##4##5##6
{
- \use:x
+ \use:e
{
\exp_not:n { \@@_use:nnnnnnn {#1} {##1} {##2} }
{ \tl_to_str:n {##3} } { \tl_to_str:n {##4} }
{ \tl_to_str:n {##5} } { \tl_to_str:n {##6} }
}
}
- \cs_new_protected:cpx { msg_ #1 :nnnnn } ##1##2##3##4##5
+ \cs_new_protected:cpe { msg_ #1 :nnnnn } ##1##2##3##4##5
{ \exp_not:c { msg_ #1 :nnnnnn } {##1} {##2} {##3} {##4} {##5} { } }
- \cs_new_protected:cpx { msg_ #1 :nnnn } ##1##2##3##4
+ \cs_new_protected:cpe { msg_ #1 :nnnn } ##1##2##3##4
{ \exp_not:c { msg_ #1 :nnnnnn } {##1} {##2} {##3} {##4} { } { } }
- \cs_new_protected:cpx { msg_ #1 :nnn } ##1##2##3
+ \cs_new_protected:cpe { msg_ #1 :nnn } ##1##2##3
{ \exp_not:c { msg_ #1 :nnnnnn } {##1} {##2} {##3} { } { } { } }
- \cs_new_protected:cpx { msg_ #1 :nn } ##1##2
+ \cs_new_protected:cpe { msg_ #1 :nn } ##1##2
{ \exp_not:c { msg_ #1 :nnnnnn } {##1} {##2} { } { } { } { } }
- \cs_generate_variant:cn { msg_ #1 :nnn } { nnV }
- \cs_generate_variant:cn { msg_ #1 :nnnn } { nnVV , nnVn , nnnV , nnnx }
- \cs_generate_variant:cn { msg_ #1 :nnnnn } { nnnxx }
- \cs_new_protected:cpx { msg_ #1 :nnxxxx } ##1##2##3##4##5##6
- {
- \use:x
- {
- \exp_not:N \exp_not:n
- { \exp_not:c { msg_ #1 :nnnnnn } {##1} {##2} }
- {##3} {##4} {##5} {##6}
- }
- }
- \cs_new_protected:cpx { msg_ #1 :nnxxx } ##1##2##3##4##5
- { \exp_not:c { msg_ #1 :nnxxxx } {##1} {##2} {##3} {##4} {##5} { } }
- \cs_new_protected:cpx { msg_ #1 :nnxx } ##1##2##3##4
- { \exp_not:c { msg_ #1 :nnxxxx } {##1} {##2} {##3} {##4} { } { } }
- \cs_new_protected:cpx { msg_ #1 :nnx } ##1##2##3
- { \exp_not:c { msg_ #1 :nnxxxx } {##1} {##2} {##3} { } { } { } }
+ \cs_generate_variant:cn { msg_ #1 :nnn }
+ { nnV , nne , nnx }
+ \cs_generate_variant:cn { msg_ #1 :nnnn }
+ { nnVV , nnVn , nnnV , nnne , nnnx , nnee , nnxx }
+ \cs_generate_variant:cn { msg_ #1 :nnnnn }
+ { nnnee , nnnxx , nneee , nnxxx }
+ \cs_generate_variant:cn { msg_ #1 :nnnnnn } { nneeee , nnxxxx }
}
% \end{macrocode}
% \end{macro}
@@ -1213,11 +1205,17 @@
% \msg_fatal:nnVn ,
% \msg_fatal:nnnV ,
% \msg_fatal:nnV ,
+% \msg_fatal:nneeee ,
+% \msg_fatal:nneee ,
% \msg_fatal:nnxxxx ,
% \msg_fatal:nnxxx ,
+% \msg_fatal:nnnee ,
+% \msg_fatal:nnee ,
% \msg_fatal:nnnxx ,
% \msg_fatal:nnxx ,
% \msg_fatal:nnnx ,
+% \msg_fatal:nnne ,
+% \msg_fatal:nne ,
% \msg_fatal:nnx
% }
% \begin{macro}{\@@_fatal_exit:}
@@ -1253,11 +1251,17 @@
% \msg_critical:nnVn ,
% \msg_critical:nnnV ,
% \msg_critical:nnV ,
+% \msg_critical:nneeee ,
+% \msg_critical:nneee ,
% \msg_critical:nnxxxx ,
% \msg_critical:nnxxx ,
+% \msg_critical:nnnee ,
+% \msg_critical:nnee ,
% \msg_critical:nnnxx ,
% \msg_critical:nnxx ,
% \msg_critical:nnnx ,
+% \msg_critical:nnne ,
+% \msg_critical:nne ,
% \msg_critical:nnx
% }
% Not quite so bad: just end the current file.
@@ -1284,11 +1288,17 @@
% \msg_error:nnVn ,
% \msg_error:nnnV ,
% \msg_error:nnV ,
+% \msg_error:nneeee ,
+% \msg_error:nneee ,
% \msg_error:nnxxxx ,
% \msg_error:nnxxx ,
+% \msg_error:nnnee ,
+% \msg_error:nnee ,
% \msg_error:nnnxx ,
% \msg_error:nnxx ,
% \msg_error:nnnx ,
+% \msg_error:nnne ,
+% \msg_error:nne ,
% \msg_error:nnx
% }
% For an error, the interrupt routine is called. We check if there is
@@ -1296,8 +1306,8 @@
% permanently empty text. We have to undefine the bootstrap versions
% here.
% \begin{macrocode}
- \cs_undefine:N \msg_error:nnxx
- \cs_undefine:N \msg_error:nnx
+ \cs_undefine:N \msg_error:nnee
+ \cs_undefine:N \msg_error:nne
\cs_undefine:N \msg_error:nn
\@@_class_new:nn { error }
{
@@ -1321,11 +1331,17 @@
% \msg_warning:nnVn ,
% \msg_warning:nnnV ,
% \msg_warning:nnV ,
+% \msg_warning:nneeee ,
+% \msg_warning:nneee ,
% \msg_warning:nnxxxx ,
% \msg_warning:nnxxx ,
+% \msg_warning:nnnee ,
+% \msg_warning:nnee ,
% \msg_warning:nnnxx ,
% \msg_warning:nnxx ,
% \msg_warning:nnnx ,
+% \msg_warning:nnne ,
+% \msg_warning:nne ,
% \msg_warning:nnx ,
% \msg_note:nnnnnn ,
% \msg_note:nnnnn ,
@@ -1336,11 +1352,17 @@
% \msg_note:nnVn ,
% \msg_note:nnnV ,
% \msg_note:nnV ,
+% \msg_note:nneeee ,
+% \msg_note:nneee ,
% \msg_note:nnxxxx ,
% \msg_note:nnxxx ,
+% \msg_note:nnnee ,
+% \msg_note:nnee ,
% \msg_note:nnnxx ,
% \msg_note:nnxx ,
% \msg_note:nnnx ,
+% \msg_note:nnne ,
+% \msg_note:nne ,
% \msg_note:nnx ,
% \msg_info:nnnnnn ,
% \msg_info:nnnnn ,
@@ -1351,12 +1373,18 @@
% \msg_info:nnVn ,
% \msg_info:nnnV ,
% \msg_info:nnV ,
+% \msg_info:nneeee ,
+% \msg_info:nneee ,
% \msg_info:nnxxxx ,
% \msg_info:nnxxx ,
+% \msg_info:nnnee ,
+% \msg_info:nnee ,
% \msg_info:nnnxx ,
% \msg_info:nnxx ,
% \msg_info:nnnx ,
-% \msg_info:nnx ,
+% \msg_info:nnne ,
+% \msg_info:nne ,
+% \msg_info:nnx
% }
% Warnings and information messages have no decoration. Warnings are
% printed to the terminal while information can either go to the log
@@ -1364,10 +1392,10 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_info_aux:NNnnnnnn #1#2#3#4#5#6#7#8
{
- \str_set:Nx \l_@@_text_str { #2 {#3} }
- \str_set:Nx \l_@@_name_str { \msg_module_name:n {#3} }
+ \str_set:Ne \l_@@_text_str { #2 {#3} }
+ \str_set:Ne \l_@@_name_str { \msg_module_name:n {#3} }
#1 { }
- \iow_wrap:nxnN
+ \iow_wrap:nenN
{
\l_@@_text_str : ~
\use:c { \c_@@_text_prefix_tl #3 / #4 } {#5} {#6} {#7} {#8}
@@ -1404,21 +1432,6 @@
%
% \begin{macro}
% {
-% \msg_log:nnnnnn ,
-% \msg_log:nnnnn ,
-% \msg_log:nnnn ,
-% \msg_log:nnn ,
-% \msg_log:nn ,
-% \msg_log:nnVV ,
-% \msg_log:nnVn ,
-% \msg_log:nnnV ,
-% \msg_log:nnV ,
-% \msg_log:nnxxxx ,
-% \msg_log:nnxxx ,
-% \msg_log:nnnxx ,
-% \msg_log:nnxx ,
-% \msg_log:nnnx ,
-% \msg_log:nnx ,
% \msg_term:nnnnnn ,
% \msg_term:nnnnn ,
% \msg_term:nnnn ,
@@ -1428,12 +1441,39 @@
% \msg_term:nnVn ,
% \msg_term:nnnV ,
% \msg_term:nnV ,
+% \msg_term:nneeee ,
+% \msg_term:nneee ,
% \msg_term:nnxxxx ,
% \msg_term:nnxxx ,
+% \msg_term:nnnee ,
+% \msg_term:nnee ,
% \msg_term:nnnxx ,
% \msg_term:nnxx ,
% \msg_term:nnnx ,
+% \msg_term:nnne ,
+% \msg_term:nne ,
% \msg_term:nnx ,
+% \msg_log:nnnnnn ,
+% \msg_log:nnnnn ,
+% \msg_log:nnnn ,
+% \msg_log:nnn ,
+% \msg_log:nn ,
+% \msg_log:nnVV ,
+% \msg_log:nnVn ,
+% \msg_log:nnnV ,
+% \msg_log:nnV ,
+% \msg_log:nneeee ,
+% \msg_log:nneee ,
+% \msg_log:nnxxxx ,
+% \msg_log:nnxxx ,
+% \msg_log:nnnee ,
+% \msg_log:nnee ,
+% \msg_log:nnnxx ,
+% \msg_log:nnxx ,
+% \msg_log:nnnx ,
+% \msg_log:nnne ,
+% \msg_log:nne ,
+% \msg_log:nnx
% }
% \enquote{Log} data is very similar to information, but with no extras
% added.
@@ -1467,11 +1507,17 @@
% \msg_none:nnVn ,
% \msg_none:nnnV ,
% \msg_none:nnV ,
+% \msg_none:nneeee ,
+% \msg_none:nneee ,
% \msg_none:nnxxxx ,
% \msg_none:nnxxx ,
+% \msg_none:nnnee ,
+% \msg_none:nnee ,
% \msg_none:nnnxx ,
% \msg_none:nnxx ,
% \msg_none:nnnx ,
+% \msg_none:nnne ,
+% \msg_none:nne ,
% \msg_none:nnx
% }
% The \texttt{none} message type is needed so that input can be gobbled.
@@ -1491,11 +1537,17 @@
% \msg_show:nnVn ,
% \msg_show:nnnV ,
% \msg_show:nnV ,
+% \msg_show:nneeee ,
+% \msg_show:nneee ,
% \msg_show:nnxxxx ,
% \msg_show:nnxxx ,
+% \msg_show:nnnee ,
+% \msg_show:nnee ,
% \msg_show:nnnxx ,
% \msg_show:nnxx ,
-% \msg_show:nnx ,
+% \msg_show:nnnx ,
+% \msg_show:nnne ,
+% \msg_show:nne ,
% \msg_show:nnx
% }
% \begin{macro}{\@@_show:n, \@@_show:w, \@@_show_dot:w, \@@_show:nn}
@@ -1563,18 +1615,18 @@
% the messages. We need to use |^^J| here directly as \pkg{l3file} is
% not yet loaded.
% \begin{macrocode}
-\cs_new:Npx \msg_show_item:n #1
+\cs_new:Npe \msg_show_item:n #1
{ ^^J > ~ \c_space_tl \exp_not:N \tl_to_str:n { {#1} } }
-\cs_new:Npx \msg_show_item_unbraced:n #1
+\cs_new:Npe \msg_show_item_unbraced:n #1
{ ^^J > ~ \c_space_tl \exp_not:N \tl_to_str:n {#1} }
-\cs_new:Npx \msg_show_item:nn #1#2
+\cs_new:Npe \msg_show_item:nn #1#2
{
^^J > \use:nn { ~ } { ~ }
\exp_not:N \tl_to_str:n { {#1} }
\use:nn { ~ } { ~ } => \use:nn { ~ } { ~ }
\exp_not:N \tl_to_str:n { {#2} }
}
-\cs_new:Npx \msg_show_item_unbraced:nn #1#2
+\cs_new:Npe \msg_show_item_unbraced:nn #1#2
{
^^J > \use:nn { ~ } { ~ }
\exp_not:N \tl_to_str:n {#1}
@@ -1595,7 +1647,7 @@
\cs_new:Npn \@@_class_chk_exist:nT #1
{
\cs_if_free:cTF { @@_ #1 _code:nnnnnn }
- { \msg_error:nnx { msg } { class-unknown } {#1} }
+ { \msg_error:nnn { msg } { class-unknown } {#1} }
}
% \end{macrocode}
% \end{macro}
@@ -1654,7 +1706,7 @@
\@@_class_chk_exist:nT {#1}
{
\tl_set:Nn \l_@@_current_class_tl {#1}
- \cs_set_protected:Npx \@@_use_code:
+ \cs_set_protected:Npe \@@_use_code:
{
\exp_not:n
{
@@ -1665,7 +1717,7 @@
\@@_use_redirect_name:n { #2 / #3 }
}
}
- { \msg_error:nnxx { msg } { unknown } {#2} {#3} }
+ { \msg_error:nnnn { msg } { unknown } {#2} {#3} }
\cs_if_exist_use:N \conditionally@traceon
}
\cs_new_protected:Npn \@@_use_code: { }
@@ -1815,7 +1867,7 @@
\tl_if_eq:NNTF \l_@@_class_tl \l_@@_current_class_tl
{
\prop_put:cnn { l_@@_redirect_ #2 _prop } {#3} {#2}
- \msg_warning:nnxxxx
+ \msg_warning:nneeee
{ msg } { redirect-loop }
{ \seq_item:Nn \l_@@_class_loop_seq { 1 } }
{ \seq_item:Nn \l_@@_class_loop_seq { 2 } }
@@ -1871,26 +1923,26 @@
%
% \begin{macro}
% {
-% \__kernel_msg_info:nnxx ,
-% \__kernel_msg_warning:nnx ,
-% \__kernel_msg_warning:nnxx ,
-% \__kernel_msg_error:nnx ,
-% \__kernel_msg_error:nnxx ,
-% \__kernel_msg_error:nnxxx
+% \__kernel_msg_info:nnee ,
+% \__kernel_msg_warning:nne ,
+% \__kernel_msg_warning:nnee ,
+% \__kernel_msg_error:nne ,
+% \__kernel_msg_error:nnee ,
+% \__kernel_msg_error:nneee
% }
% \begin{macrocode}
-\cs_new_protected:Npn \__kernel_msg_info:nnxx #1
- { \msg_info:nnxx { LaTeX / #1 } }
-\cs_new_protected:Npn \__kernel_msg_warning:nnx #1
- { \msg_warning:nnx { LaTeX / #1 } }
-\cs_new_protected:Npn \__kernel_msg_warning:nnxx #1
- { \msg_warning:nnxx { LaTeX / #1 } }
-\cs_new_protected:Npn \__kernel_msg_error:nnx #1
- { \msg_error:nnx { LaTeX / #1 } }
-\cs_new_protected:Npn \__kernel_msg_error:nnxx #1
- { \msg_error:nnxx { LaTeX / #1 } }
-\cs_new_protected:Npn \__kernel_msg_error:nnxxx #1
- { \msg_error:nnxxx { LaTeX / #1 } }
+\cs_new_protected:Npn \__kernel_msg_info:nnee #1
+ { \msg_info:nnee { LaTeX / #1 } }
+\cs_new_protected:Npn \__kernel_msg_warning:nne #1
+ { \msg_warning:nne { LaTeX / #1 } }
+\cs_new_protected:Npn \__kernel_msg_warning:nnee #1
+ { \msg_warning:nnee { LaTeX / #1 } }
+\cs_new_protected:Npn \__kernel_msg_error:nne #1
+ { \msg_error:nne { LaTeX / #1 } }
+\cs_new_protected:Npn \__kernel_msg_error:nnee #1
+ { \msg_error:nnee { LaTeX / #1 } }
+\cs_new_protected:Npn \__kernel_msg_error:nneee #1
+ { \msg_error:nneee { LaTeX / #1 } }
% \end{macrocode}
% \end{macro}
%
diff --git a/macros/latex/contrib/l3kernel/l3names.dtx b/macros/latex/contrib/l3kernel/l3names.dtx
index f3f56f7f72..f299b21579 100644
--- a/macros/latex/contrib/l3kernel/l3names.dtx
+++ b/macros/latex/contrib/l3kernel/l3names.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3kernel/l3news.pdf b/macros/latex/contrib/l3kernel/l3news.pdf
index 7ebec4848a..7f0effadb8 100644
--- a/macros/latex/contrib/l3kernel/l3news.pdf
+++ b/macros/latex/contrib/l3kernel/l3news.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news01.pdf b/macros/latex/contrib/l3kernel/l3news01.pdf
index fe4f64501c..5508abfcc9 100644
--- a/macros/latex/contrib/l3kernel/l3news01.pdf
+++ b/macros/latex/contrib/l3kernel/l3news01.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news02.pdf b/macros/latex/contrib/l3kernel/l3news02.pdf
index 3b36d8a341..13e40ab8bd 100644
--- a/macros/latex/contrib/l3kernel/l3news02.pdf
+++ b/macros/latex/contrib/l3kernel/l3news02.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news03.pdf b/macros/latex/contrib/l3kernel/l3news03.pdf
index f3031cb0d8..f80fc2a519 100644
--- a/macros/latex/contrib/l3kernel/l3news03.pdf
+++ b/macros/latex/contrib/l3kernel/l3news03.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news04.pdf b/macros/latex/contrib/l3kernel/l3news04.pdf
index d7155a9049..c33cbf0cac 100644
--- a/macros/latex/contrib/l3kernel/l3news04.pdf
+++ b/macros/latex/contrib/l3kernel/l3news04.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news05.pdf b/macros/latex/contrib/l3kernel/l3news05.pdf
index 788ded7ff1..ffe3a03c6c 100644
--- a/macros/latex/contrib/l3kernel/l3news05.pdf
+++ b/macros/latex/contrib/l3kernel/l3news05.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news06.pdf b/macros/latex/contrib/l3kernel/l3news06.pdf
index 9778f1dd95..e25a8421bb 100644
--- a/macros/latex/contrib/l3kernel/l3news06.pdf
+++ b/macros/latex/contrib/l3kernel/l3news06.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news07.pdf b/macros/latex/contrib/l3kernel/l3news07.pdf
index 84e2f2c9f2..4159983011 100644
--- a/macros/latex/contrib/l3kernel/l3news07.pdf
+++ b/macros/latex/contrib/l3kernel/l3news07.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news08.pdf b/macros/latex/contrib/l3kernel/l3news08.pdf
index e91e2d344b..8d74fc5968 100644
--- a/macros/latex/contrib/l3kernel/l3news08.pdf
+++ b/macros/latex/contrib/l3kernel/l3news08.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news09.pdf b/macros/latex/contrib/l3kernel/l3news09.pdf
index 83832c3237..d4c60d81f7 100644
--- a/macros/latex/contrib/l3kernel/l3news09.pdf
+++ b/macros/latex/contrib/l3kernel/l3news09.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news10.pdf b/macros/latex/contrib/l3kernel/l3news10.pdf
index acbefc90b5..7b5dcec9cc 100644
--- a/macros/latex/contrib/l3kernel/l3news10.pdf
+++ b/macros/latex/contrib/l3kernel/l3news10.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news11.pdf b/macros/latex/contrib/l3kernel/l3news11.pdf
index 132979c8a7..1cfeef5b06 100644
--- a/macros/latex/contrib/l3kernel/l3news11.pdf
+++ b/macros/latex/contrib/l3kernel/l3news11.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3news12.pdf b/macros/latex/contrib/l3kernel/l3news12.pdf
index c1ed0ffaca..cd159d28f3 100644
--- a/macros/latex/contrib/l3kernel/l3news12.pdf
+++ b/macros/latex/contrib/l3kernel/l3news12.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3pdf.dtx b/macros/latex/contrib/l3kernel/l3pdf.dtx
index ebfdc9115b..f583b393ca 100644
--- a/macros/latex/contrib/l3kernel/l3pdf.dtx
+++ b/macros/latex/contrib/l3kernel/l3pdf.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -60,7 +60,7 @@
% \end{function}
%
% \begin{function}[added = 2022-08-23]
-% {\pdf_object_write:nnn, \pdf_object_write:nnx}
+% {\pdf_object_write:nnn, \pdf_object_write:nne}
% \begin{syntax}
% \cs{pdf_object_write:nn} \Arg{object} \Arg{type} \Arg{content}
% \end{syntax}
@@ -87,7 +87,7 @@
% \end{function}
%
% \begin{function}[added = 2021-02-10]
-% {\pdf_object_unnamed_write:nn, \pdf_object_unnamed_write:nx}
+% {\pdf_object_unnamed_write:nn, \pdf_object_unnamed_write:ne}
% \begin{syntax}
% \cs{pdf_object_unnamed_write:nn} \Arg{type} \Arg{content}
% \end{syntax}
@@ -312,9 +312,14 @@
% \subsection{Objects}
%
% \begin{macro}{\pdf_object_new:n}
-% \begin{macro}{\pdf_object_write:nnn, \pdf_object_write:nnx}
+% \begin{macro}
+% {\pdf_object_write:nnn, \pdf_object_write:nne, \pdf_object_write:nnx}
% \begin{macro}{\pdf_object_ref:n}
-% \begin{macro}{\pdf_object_unnamed_write:nn, \pdf_object_unnamed_write:nx}
+% \begin{macro}
+% {
+% \pdf_object_unnamed_write:nn, \pdf_object_unnamed_write:ne,
+% \pdf_object_unnamed_write:nx
+% }
% \begin{macro}{\pdf_object_ref_last:}
% \begin{macro}[pTF]{\pdf_object_if_exist:n}
% Simple to do: all objects create a constant |int| so it is not a
@@ -332,14 +337,14 @@
\@@_backend_object_write:nnn {#1} {#2} {#3}
\bool_gset_true:N \g_@@_init_bool
}
-\cs_generate_variant:Nn \pdf_object_write:nnn { nnx }
+\cs_generate_variant:Nn \pdf_object_write:nnn { nne , nnx }
\cs_new:Npn \pdf_object_ref:n #1 { \@@_backend_object_ref:n {#1} }
\cs_new_protected:Npn \pdf_object_unnamed_write:nn #1#2
{
\@@_backend_object_now:nn {#1} {#2}
\bool_gset_true:N \g_@@_init_bool
}
-\cs_generate_variant:Nn \pdf_object_unnamed_write:nn { nx }
+\cs_generate_variant:Nn \pdf_object_unnamed_write:nn { ne , nx }
\cs_new:Npn \pdf_object_ref_last: { \@@_backend_object_last: }
\prg_new_conditional:Npnn \pdf_object_if_exist:n #1 { p , T , F , TF }
{
@@ -536,7 +541,7 @@
}
\cs_new_protected:Npn \pdf_object_write:nn #1#2
{
- \exp_args:Nnx \@@_backend_object_write:nnn
+ \exp_args:Nne \@@_backend_object_write:nnn
{#1} { \prop_item:Nn \g_@@_object_prop {#1} } {#2}
\bool_gset_true:N \g_@@_init_bool
}
diff --git a/macros/latex/contrib/l3kernel/l3prefixes.csv b/macros/latex/contrib/l3kernel/l3prefixes.csv
index 2de6430a12..710da8edbe 100644
--- a/macros/latex/contrib/l3kernel/l3prefixes.csv
+++ b/macros/latex/contrib/l3kernel/l3prefixes.csv
@@ -12,6 +12,7 @@ alloc,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https
ampersand,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2018-05-12,2018-05-12,
apfs,apfontspec,Qing Lee,https://github.com/CTeX-org/apfontspec,https://github.com/CTeX-org/apfontspec.git,https://github.com/CTeX-org/apfontspec/issues,2020-05-17,2020-05-17,
arch,archaeologie,Lukas C. Bossert,http://www.biblatex-archaeologie.de,https://github.com/LukasCBossert/biblatex-archaeologie.git,https://github.com/LukasCBossert/biblatex-archaeologie/issues,2017-03-24,2017-03-24,
+arsenal,arsenal,Boris Veytsman,https://github.com/borisveytsman/arsenal,https://github.com/borisveytsman/arsenal,https://github.com/borisveytsman/arsenal/issues
array,hobby,Andrew Stacey,https://github.com/loopspace/hobby,https://github.com/loopspace/hobby,https://github.com/loopspace/hobby/issues,2013-03-16,2020-10-29,
atsign,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2018-05-12,2018-05-12,
avm,langsci-avm,Felix Kopecky,https://ctan.org/pkg/langsci-avm,https://github.com/langsci/langsci-avm,https://github.com/langsci/langsci-avm/issues,2020-03-11,2020-03-11,
@@ -120,6 +121,7 @@ intarray,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,ht
ior,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
iot,iot,Island of TeX,https://islandoftex.gitlab.io,https://gitlab.com/islandoftex/texmf,https://gitlab.com/groups/islandoftex/texmf/-/issues,2023-07-18,2023-07-18,
iow,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
+iwonamath,iwonamath,Boris Veytsman,https://github.com/borisveytsman/iwonamath,https://github.com/borisveytsman/iwonamath,https://github.com/borisveytsman/iwonamath/issues
jiazhu,jiazhu,Qing Lee,https://github.com/CTeX-org/ctex-kit,https://github.com/CTeX-org/ctex-kit.git,https://github.com/CTeX-org/ctex-kit/issues,2020-05-17,2020-05-17,
job,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2021-04-23,2021-04-23,
kernel,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
@@ -197,6 +199,7 @@ prelim,prelim2e,Marei Peischl,https://github.com/TeXhackse/prelim2e,https://gith
prg,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
primargs,morewrites,Bruno Le Floch,https://github.com/blefloch/latex-morewrites,https://github.com/blefloch/latex-morewrites.git,https://github.com/blefloch/latex-morewrites/issues,2013-03-16,2015-09-22,
prop,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
+property,latex2e,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex2e.git,https://github.com/latex3/latex2e/issues,2021-01-20,2021-03-03,
pseudo,pseudo,Magnus Lie Hetland,https://github.com/mlhetland/pseudo.sty,https://github.com/mlhetland/pseudo.sty.git,https://github.com/mlhetland/pseudo.sty/issues,2019-06-24,2019-06-24,
ptex,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2015-07-28,2015-07-28,
ptxcd,ptxcd, Marei Peischl,,,,2020-07-27,2020-07-27,Used for specific corporate design templates
@@ -238,6 +241,7 @@ tag,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https:/
tasks,tasks,Clemens Niederberger,https://github.com/cgnieder/tasks/,https://github.com/cgnieder/tasks.git,https://github.com/cgnieder/cgnieder/tasks/issues,2013-03-16,2020-04-14,
tblr,tabularray,Jianrui Lyu,https://github.com/lvjr/tabularray,https://github.com/lvjr/tabularray.git,https://github.com/lvjr/tabularray/issues,2022-04-02,2022-04-02,
tcobox,tcolorbox,Thomas F. Sturm,https://github.com/T-F-S/tcolorbox,https://github.com/T-F-S/tcolorbox.git,https://github.com/T-F-S/tcolorbox/issues,2020-02-19,2020-02-19,
+template,latex2e,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex2e.git,https://github.com/latex3/latex2e/issues,2021-01-20,2021-03-03,
term,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2018-05-12,2018-05-12,
tex,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
text,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2020-01-15,2020-01-15,
diff --git a/macros/latex/contrib/l3kernel/l3prefixes.pdf b/macros/latex/contrib/l3kernel/l3prefixes.pdf
index 89ba420517..5d41b138f0 100644
--- a/macros/latex/contrib/l3kernel/l3prefixes.pdf
+++ b/macros/latex/contrib/l3kernel/l3prefixes.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3prg.dtx b/macros/latex/contrib/l3kernel/l3prg.dtx
index ec778817d3..e3f09d90d3 100644
--- a/macros/latex/contrib/l3kernel/l3prg.dtx
+++ b/macros/latex/contrib/l3kernel/l3prg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -1079,11 +1079,11 @@
{
\token_case_meaning:NnF #2
{
- \c_true_bool { \exp_args:Nx #1 { \token_to_str:N #2 = true } }
- \c_false_bool { \exp_args:Nx #1 { \token_to_str:N #2 = false } }
+ \c_true_bool { \exp_args:Ne #1 { \token_to_str:N #2 = true } }
+ \c_false_bool { \exp_args:Ne #1 { \token_to_str:N #2 = false } }
}
{
- \msg_error:nnxxx { kernel } { bad-type }
+ \msg_error:nneee { kernel } { bad-type }
{ \token_to_str:N #2 } { \token_to_meaning:N #2 } { bool }
}
}
diff --git a/macros/latex/contrib/l3kernel/l3prop.dtx b/macros/latex/contrib/l3kernel/l3prop.dtx
index 2d5fc3edcc..69cafe1cff 100644
--- a/macros/latex/contrib/l3kernel/l3prop.dtx
+++ b/macros/latex/contrib/l3kernel/l3prop.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -165,18 +165,28 @@
%
% \begin{function}[updated = 2012-07-09]
% {
-% \prop_put:Nnn, \prop_put:NnV, \prop_put:Nno, \prop_put:Nne, \prop_put:Nnx,
-% \prop_put:NVn, \prop_put:NVV, \prop_put:NVx, \prop_put:Nvx,
-% \prop_put:Non, \prop_put:Nxn, \prop_put:NxV, \prop_put:Noo, \prop_put:Nxx,
-% \prop_put:cnn, \prop_put:cnV, \prop_put:cno, \prop_put:cne, \prop_put:cnx,
-% \prop_put:cVn, \prop_put:cVV, \prop_put:cVx, \prop_put:cvx,
-% \prop_put:con, \prop_put:cxn, \prop_put:cxV, \prop_put:coo, \prop_put:cxx,
-% \prop_gput:Nnn, \prop_gput:NnV, \prop_gput:Nno, \prop_gput:Nne, \prop_gput:Nnx,
-% \prop_gput:NVn, \prop_gput:NVV, \prop_gput:NVx, \prop_gput:Nvx,
-% \prop_gput:Non, \prop_gput:Nxn, \prop_gput:NxV, \prop_gput:Noo, \prop_gput:Nxx,
-% \prop_gput:cnn, \prop_gput:cnV, \prop_gput:cno, \prop_gput:cne, \prop_gput:cnx,
-% \prop_gput:cVn, \prop_gput:cVV, \prop_gput:cVx, \prop_gput:cvx,
-% \prop_gput:con, \prop_gput:cxn, \prop_gput:cxV, \prop_gput:coo, \prop_gput:cxx
+% \prop_put:Nnn, \prop_put:NnV, \prop_put:Nnv, \prop_put:Nne,
+% \prop_put:NVn, \prop_put:NVV, \prop_put:NVv, \prop_put:NVe,
+% \prop_put:Nvn, \prop_put:NvV, \prop_put:Nvv, \prop_put:Nve,
+% \prop_put:Nen, \prop_put:NeV, \prop_put:Nev, \prop_put:Nee,
+% \prop_put:Nno, \prop_put:Non, \prop_put:Noo,
+% \prop_put:cnn, \prop_put:cnV, \prop_put:cnv, \prop_put:cne,
+% \prop_put:cno,
+% \prop_put:cVn, \prop_put:cVV, \prop_put:cVv, \prop_put:cVe,
+% \prop_put:cvn, \prop_put:cvV, \prop_put:cvv, \prop_put:cve,
+% \prop_put:cen, \prop_put:ceV, \prop_put:cev, \prop_put:cee,
+% \prop_put:con, \prop_put:coo,
+% \prop_gput:Nnn, \prop_gput:NnV, \prop_gput:Nnv, \prop_gput:Nne,
+% \prop_gput:NVn, \prop_gput:NVV, \prop_gput:NVv, \prop_gput:NVe,
+% \prop_gput:Nvn, \prop_gput:NvV, \prop_gput:Nvv, \prop_gput:Nve,
+% \prop_gput:Nen, \prop_gput:NeV, \prop_gput:Nev, \prop_gput:Nee,
+% \prop_gput:Nno, \prop_gput:Non, \prop_gput:Noo,
+% \prop_gput:cnn, \prop_gput:cnV, \prop_gput:cnv, \prop_gput:cne,
+% \prop_gput:cno,
+% \prop_gput:cVn, \prop_gput:cVV, \prop_gput:cVv, \prop_gput:cVe,
+% \prop_gput:cvn, \prop_gput:cvV, \prop_gput:cvv, \prop_gput:cve,
+% \prop_gput:cen, \prop_gput:ceV, \prop_gput:cev, \prop_gput:cee,
+% \prop_gput:con, \prop_gput:coo
% }
% \begin{syntax}
% \cs{prop_put:Nnn} \meta{property list} \Arg{key} \Arg{value}
@@ -192,8 +202,10 @@
%
% \begin{function}
% {
-% \prop_put_if_new:Nnn, \prop_put_if_new:cnn,
-% \prop_gput_if_new:Nnn, \prop_gput_if_new:cnn
+% \prop_put_if_new:Nnn, \prop_put_if_new:NVn, \prop_put_if_new:NnV,
+% \prop_put_if_new:cnn, \prop_put_if_new:cVn, \prop_put_if_new:cnV,
+% \prop_gput_if_new:Nnn, \prop_gput_if_new:NVn, \prop_gput_if_new:NnV,
+% \prop_gput_if_new:cnn, \prop_gput_if_new:cVn, \prop_gput_if_new:cnV
% }
% \begin{syntax}
% \cs{prop_put_if_new:Nnn} \meta{property list} \Arg{key} \Arg{value}
@@ -250,8 +262,10 @@
%
% \begin{function}[updated = 2011-08-28]
% {
-% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NoN, \prop_get:NxN,
-% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:coN, \prop_get:cxN,
+% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NeN,
+% \prop_get:NoN,
+% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:ceN,
+% \prop_get:coN,
% \prop_get:cnc
% }
% \begin{syntax}
@@ -267,7 +281,12 @@
% \end{function}
%
% \begin{function}[updated = 2011-08-18]
-% {\prop_pop:NnN, \prop_pop:NoN, \prop_pop:cnN, \prop_pop:coN}
+% {
+% \prop_pop:NnN, \prop_pop:NVN,
+% \prop_pop:NoN,
+% \prop_pop:cnN, \prop_pop:cVN,
+% \prop_pop:coN
+% }
% \begin{syntax}
% \cs{prop_pop:NnN} \meta{property list} \Arg{key} \meta{tl var}
% \end{syntax}
@@ -281,7 +300,12 @@
% \end{function}
%
% \begin{function}[updated = 2011-08-18]
-% {\prop_gpop:NnN, \prop_gpop:NoN, \prop_gpop:cnN, \prop_gpop:coN}
+% {
+% \prop_gpop:NnN, \prop_gpop:NVN,
+% \prop_gpop:NoN,
+% \prop_gpop:cnN, \prop_gpop:cVN,
+% \prop_gpop:coN
+% }
% \begin{syntax}
% \cs{prop_gpop:NnN} \meta{property list} \Arg{key} \meta{tl var}
% \end{syntax}
@@ -297,8 +321,8 @@
%
% \begin{function}[added = 2014-07-17, EXP]
% {
-% \prop_item:Nn, \prop_item:NV, \prop_item:No, \prop_item:Ne,
-% \prop_item:cn, \prop_item:cV, \prop_item:co, \prop_item:ce
+% \prop_item:Nn, \prop_item:NV, \prop_item:Ne, \prop_item:No,
+% \prop_item:cn, \prop_item:cV, \prop_item:ce, \prop_item:co
% }
% \begin{syntax}
% \cs{prop_item:Nn} \meta{property list} \Arg{key}
@@ -343,8 +367,10 @@
%
% \begin{function}[added = 2012-05-12]
% {
-% \prop_remove:Nn, \prop_remove:NV, \prop_remove:cn, \prop_remove:cV,
-% \prop_gremove:Nn, \prop_gremove:NV, \prop_gremove:cn, \prop_gremove:cV
+% \prop_remove:Nn, \prop_remove:NV, \prop_remove:Ne,
+% \prop_remove:cn, \prop_remove:cV, \prop_remove:ce,
+% \prop_gremove:Nn, \prop_gremove:NV, \prop_gremove:Ne,
+% \prop_gremove:cn, \prop_gremove:cV, \prop_gremove:ce,
% }
% \begin{syntax}
% \cs{prop_remove:Nn} \meta{property list} \Arg{key}
@@ -378,8 +404,8 @@
%
% \begin{function}[updated = 2011-09-15, EXP, pTF]
% {
-% \prop_if_in:Nn, \prop_if_in:NV, \prop_if_in:No,
-% \prop_if_in:cn, \prop_if_in:cV, \prop_if_in:co
+% \prop_if_in:Nn, \prop_if_in:NV, \prop_if_in:Ne, \prop_if_in:No,
+% \prop_if_in:cn, \prop_if_in:cV, \prop_if_in:ce, \prop_if_in:co
% }
% \begin{syntax}
% \cs{prop_if_in_p:Nn} \meta{property list} \Arg{key}
@@ -404,8 +430,10 @@
%
% \begin{function}[updated = 2012-05-19, TF]
% {
-% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NoN, \prop_get:NxN,
-% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:coN, \prop_get:cxN,
+% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NeN,
+% \prop_get:NoN,
+% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:ceN,
+% \prop_get:coN,
% \prop_get:cnc
% }
% \begin{syntax}
@@ -423,7 +451,12 @@
% \end{function}
%
% \begin{function}[TF, added = 2011-08-18, updated = 2012-05-19]
-% {\prop_pop:NnN, \prop_pop:cnN}
+% {
+% \prop_pop:NnN, \prop_pop:NVN,
+% \prop_pop:NoN,
+% \prop_pop:cnN, \prop_pop:cVN,
+% \prop_pop:coN
+% }
% \begin{syntax}
% \cs{prop_pop:NnNTF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code} \Arg{false code}
% \end{syntax}
@@ -439,7 +472,12 @@
% \end{function}
%
% \begin{function}[TF, added = 2011-08-18, updated = 2012-05-19]
-% {\prop_gpop:NnN, \prop_gpop:cnN}
+% {
+% \prop_gpop:NnN, \prop_gpop:NVN,
+% \prop_gpop:NoN,
+% \prop_gpop:cnN, \prop_gpop:cVN,
+% \prop_gpop:coN
+% }
% \begin{syntax}
% \cs{prop_gpop:NnNTF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code} \Arg{false code}
% \end{syntax}
@@ -874,7 +912,7 @@
\cs_new_protected:Npn \prop_const_from_keyval:Nn #1#2
{
\prop_set_from_keyval:Nn \l_@@_internal_prop {#2}
- \tl_const:Nx #1 { \exp_not:o \l_@@_internal_prop }
+ \tl_const:Ne #1 { \exp_not:o \l_@@_internal_prop }
\prop_clear:N \l_@@_internal_prop
}
\cs_generate_variant:Nn \prop_const_from_keyval:Nn { c }
@@ -959,9 +997,15 @@
% \end{macro}
%
% \begin{macro}[tested = m3prop002]
-% {\prop_remove:Nn, \prop_remove:NV, \prop_remove:cn, \prop_remove:cV}
+% {
+% \prop_remove:Nn, \prop_remove:NV, \prop_remove:Ne,
+% \prop_remove:cn, \prop_remove:cV, \prop_remove:ce
+% }
% \begin{macro}[tested = m3prop002]
-% {\prop_gremove:Nn, \prop_gremove:NV, \prop_gremove:cn, \prop_gremove:cV}
+% {
+% \prop_gremove:Nn, \prop_gremove:NV, \prop_gremove:Ne,
+% \prop_gremove:cn, \prop_gremove:cV, \prop_gremove:ce
+% }
% Deleting from a property starts by splitting the list.
% If the key is present in the property list, the returned value is ignored.
% If the key is missing, nothing happens.
@@ -978,18 +1022,18 @@
{ \tl_gset:Nn #1 { ##1 ##3 } }
{ }
}
-\cs_generate_variant:Nn \prop_remove:Nn { NV }
-\cs_generate_variant:Nn \prop_remove:Nn { c , cV }
-\cs_generate_variant:Nn \prop_gremove:Nn { NV }
-\cs_generate_variant:Nn \prop_gremove:Nn { c , cV }
+\cs_generate_variant:Nn \prop_remove:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \prop_gremove:Nn { NV , Ne , c , cV , ce }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}[tested = m3prop002]
% {
-% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NoN, \prop_get:NxN,
-% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:coN, \prop_get:cxN,
+% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NeN,
+% \prop_get:NoN, \prop_get:NxN,
+% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:ceN,
+% \prop_get:coN, \prop_get:cxN,
% \prop_get:cnc
% }
% Getting an item from a list is very easy: after splitting,
@@ -1002,15 +1046,26 @@
{ \tl_set:Nn #3 {##2} }
{ \tl_set:Nn #3 { \q_no_value } }
}
-\cs_generate_variant:Nn \prop_get:NnN { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \prop_get:NnN { c , cV , cv , co , cx , cnc }
+\cs_generate_variant:Nn \prop_get:NnN { NV , Nv , Ne , c , cV , cv , ce }
+\cs_generate_variant:Nn \prop_get:NnN { No , Nx , co , cx }
+\cs_generate_variant:Nn \prop_get:NnN { cnc }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[tested = m3prop002]
-% {\prop_pop:NnN, \prop_pop:NoN, \prop_pop:cnN, \prop_pop:coN}
+% {
+% \prop_pop:NnN, \prop_pop:NVN,
+% \prop_pop:NoN,
+% \prop_pop:cnN, \prop_pop:cVN,
+% \prop_pop:coN,
+% }
% \begin{macro}[tested = m3prop002]
-% {\prop_gpop:NnN, \prop_gpop:NoN, \prop_gpop:cnN, \prop_gpop:coN}
+% {
+% \prop_gpop:NnN, \prop_gpop:NVN,
+% \prop_gpop:NoN,
+% \prop_gpop:cnN, \prop_gpop:cVN,
+% \prop_gpop:coN,
+% }
% Popping a value also starts by doing the split.
% If the key is present, save the value in the token list and update the
% property list as when deleting.
@@ -1034,10 +1089,10 @@
}
{ \tl_set:Nn #3 { \q_no_value } }
}
-\cs_generate_variant:Nn \prop_pop:NnN { No }
-\cs_generate_variant:Nn \prop_pop:NnN { c , co }
-\cs_generate_variant:Nn \prop_gpop:NnN { No }
-\cs_generate_variant:Nn \prop_gpop:NnN { c , co }
+\cs_generate_variant:Nn \prop_pop:NnN { NV , No }
+\cs_generate_variant:Nn \prop_pop:NnN { c , cV , co }
+\cs_generate_variant:Nn \prop_gpop:NnN { NV , No }
+\cs_generate_variant:Nn \prop_gpop:NnN { c , cV , co }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1129,7 +1184,13 @@
% \end{macro}
%
% \begin{macro}[TF, tested = m3prop004]
-% {\prop_pop:NnN, \prop_pop:cnN, \prop_gpop:NnN, \prop_gpop:cnN}
+% {
+% \prop_pop:NnN, \prop_pop:NVN,
+% \prop_pop:cnN, \prop_pop:cVN,
+% \prop_gpop:NnN, \prop_gpop:NVN,
+% \prop_gpop:NoN,
+% \prop_gpop:cnN, \prop_gpop:cVN,
+% }
% Popping an item from a property list, keeping track of whether
% the key was present or not, is implemented as a conditional.
% If the key was missing, neither the property list, nor the token
@@ -1156,28 +1217,40 @@
}
{ \prg_return_false: }
}
-\prg_generate_conditional_variant:Nnn \prop_pop:NnN { c } { T , F , TF }
-\prg_generate_conditional_variant:Nnn \prop_gpop:NnN { c } { T , F , TF }
+\prg_generate_conditional_variant:Nnn \prop_pop:NnN { NV , c , cV } { T , F , TF }
+\prg_generate_conditional_variant:Nnn \prop_gpop:NnN { NV , c , cV } { T , F , TF }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}[tested = m3prop002]
% {
-% \prop_put:Nnn, \prop_put:NnV, \prop_put:Nno, \prop_put:Nne, \prop_put:Nnx,
-% \prop_put:NVn, \prop_put:NVV, \prop_put:NVx, \prop_put:Nvx,
-% \prop_put:Non, \prop_put:Nxn, \prop_put:NxV, \prop_put:Noo, \prop_put:Nxx,
-% \prop_put:cnn, \prop_put:cnV, \prop_put:cno, \prop_put:cne, \prop_put:cnx,
-% \prop_put:cVn, \prop_put:cVV, \prop_put:cVx, \prop_put:cvx,
-% \prop_put:con, \prop_put:cxn, \prop_put:cxV, \prop_put:coo, \prop_put:cxx
+% \prop_put:Nnn, \prop_put:NnV, \prop_put:Nnv, \prop_put:Nne,
+% \prop_put:NVn, \prop_put:NVV, \prop_put:NVv, \prop_put:NVe,
+% \prop_put:Nvn, \prop_put:NvV, \prop_put:Nvv, \prop_put:Nve,
+% \prop_put:Nen, \prop_put:NeV, \prop_put:Nev, \prop_put:Nee,
+% \prop_put:Nno, \prop_put:Nnx, \prop_put:NVx,
+% \prop_put:Non, \prop_put:Noo, \prop_put:NxV, \prop_put:Nxx,
+% \prop_put:cnn, \prop_put:cnV, \prop_put:cnv, \prop_put:cne,
+% \prop_put:cno, \prop_put:cnx,
+% \prop_put:cVn, \prop_put:cVV, \prop_put:cVv, \prop_put:cVe,
+% \prop_put:cvn, \prop_put:cvV, \prop_put:cvv, \prop_put:cve,
+% \prop_put:cen, \prop_put:ceV, \prop_put:cev, \prop_put:cee,
+% \prop_put:con, \prop_put:coo, \prop_put:cxV, \prop_put:cxx
% }
% \begin{macro}[tested = m3prop002]
% {
-% \prop_gput:Nnn, \prop_gput:NnV, \prop_gput:Nno, \prop_gput:Nne, \prop_gput:Nnx,
-% \prop_gput:NVn, \prop_gput:NVV, \prop_gput:NVx, \prop_hput:Nvx,
-% \prop_gput:Non, \prop_gput:Nxn, \prop_pgut:NxV, \prop_gput:Noo, \prop_gput:Nxx,
-% \prop_gput:cnn, \prop_gput:cnV, \prop_gput:cno, \prop_gput:cne, \prop_gput:cnx,
-% \prop_gput:cVn, \prop_gput:cVV, \prop_gput:cVx, \prop_gput:cvx,
-% \prop_gput:con, \prop_gput:cxn, \prop_gput:cxV, \prop_gput:coo, \prop_gput:cxx
+% \prop_gput:Nnn, \prop_gput:NnV, \prop_gput:Nnv, \prop_gput:Nne,
+% \prop_gput:NVn, \prop_gput:NVV, \prop_gput:NVv, \prop_gput:NVe,
+% \prop_gput:Nvn, \prop_gput:NvV, \prop_gput:Nvv, \prop_gput:Nve,
+% \prop_gput:Nen, \prop_gput:NeV, \prop_gput:Nev, \prop_gput:Nee,
+% \prop_gput:Nno, \prop_gput:Non, \prop_gput:Noo,
+% \prop_gput:Nnx, \prop_gput:NVx, \prop_gput:Nxn, \prop_gput:Nxx,
+% \prop_gput:cnn, \prop_gput:cnV, \prop_gput:cnv, \prop_gput:cne,
+% \prop_gput:cno, \prop_gput:cnx,
+% \prop_gput:cVn, \prop_gput:cVV, \prop_gput:cVv, \prop_gput:cVe,
+% \prop_gput:cvn, \prop_gput:cvV, \prop_gput:cvv, \prop_gput:cve,
+% \prop_gput:cen, \prop_gput:ceV, \prop_gput:cev, \prop_gput:cee,
+% \prop_gput:cno, \prop_gput:con, \prop_gput:cxn, \prop_gput:cxx
% }
% \begin{macro}{\@@_put:NNnn}
% Since the branches of \cs{@@_split:NnTF} are used as the replacement
@@ -1193,8 +1266,8 @@
% updated entry is placed at the same spot as the original \meta{key}
% in the property list, preserving the order of entries.
% \begin{macrocode}
-\cs_new_protected:Npn \prop_put:Nnn { \@@_put:NNnn \__kernel_tl_set:Nx }
-\cs_new_protected:Npn \prop_gput:Nnn { \@@_put:NNnn \__kernel_tl_gset:Nx }
+\cs_new_protected:Npn \prop_put:Nnn { \@@_put:NNnn \__kernel_tl_set:Ne }
+\cs_new_protected:Npn \prop_gput:Nnn { \@@_put:NNnn \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_put:NNnn #1#2#3#4
{
\tl_set:Nn \l_@@_internal_tl
@@ -1207,22 +1280,48 @@
{ #1 #2 { \exp_not:o {#2} \l_@@_internal_tl } }
}
\cs_generate_variant:Nn \prop_put:Nnn
- { NnV , Nno , Nne , Nnx , NV , NVV , NVx , Nvx , No , Nx , NxV , Noo , Nxx }
+ {
+ NnV , Nnv , Nne , NV , NVV , NVv , NVe ,
+ Nv , NvV , Nvv , Nve , Ne , NeV , Nev , Nee
+ }
+\cs_generate_variant:Nn \prop_put:Nnn
+ { Nno , No , Noo , Nnx , NVx , NxV , Nxx }
+\cs_generate_variant:Nn \prop_put:Nnn
+ {
+ c , cnV , cnv , cne , cV , cVV , cVv , cVe ,
+ cv , cvV , cvv , cve , ce , ceV , cev , cee
+ }
\cs_generate_variant:Nn \prop_put:Nnn
- { c , cnV , cno , cne , cnx , cV , cVV , cVx , cvx , co , cx , cxV , coo , cxx }
+ { cno , co , coo , cnx , cVx , cxV , cxx }
+\cs_generate_variant:Nn \prop_gput:Nnn
+ {
+ NnV , Nnv , Nne , NV , NVV , NVv , NVe ,
+ Nv , NvV , Nvv , Nve , Ne , NeV , Nev , Nee
+ }
\cs_generate_variant:Nn \prop_gput:Nnn
- { NnV , Nno , Nne , Nnx , NV , NVV , NVx , Nvx , No , Nx , NxV , Noo , Nxx }
+ { Nno , No , Noo , Nnx , NVx , NxV , Nxx }
\cs_generate_variant:Nn \prop_gput:Nnn
- { c , cnV , cno , cne , cnx , cV , cVV , cVx , cvx , co , cx , cxV , coo , cxx }
+ {
+ c , cnV , cnv , cne , cV , cVV , cVv , cVe ,
+ cv , cvV , cvv , cve , ce , ceV , cev , cee
+ }
+\cs_generate_variant:Nn \prop_gput:Nnn
+ { cno , co , coo , cnx , cVx , cxV , cxx }
% \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
%
% \begin{macro}[tested = m3prop002]
-% {\prop_put_if_new:Nnn, \prop_put_if_new:cnn}
+% {
+% \prop_put_if_new:Nnn, \prop_put_if_new:NVn, \prop_put_if_new:NnV,
+% \prop_put_if_new:cnn, \prop_put_if_new:cVn, \prop_put_if_new:cnV
+% }
% \begin{macro}[tested = m3prop002]
-% {\prop_gput_if_new:Nnn, \prop_gput_if_new:cnn}
+% {
+% \prop_gput_if_new:Nnn, \prop_gput_if_new:NVn, \prop_gput_if_new:NnV,
+% \prop_gput_if_new:cnn, \prop_gput_if_new:cVn, \prop_gput_if_new:cnV
+% }
% \begin{macro}{\@@_put_if_new:NNnn}
% Adding conditionally also splits. If the key is already present,
% the three brace groups given by \cs{@@_split:NnTF} are removed.
@@ -1230,9 +1329,9 @@
% convert the key to a string using \cs{tl_to_str:n}.
% \begin{macrocode}
\cs_new_protected:Npn \prop_put_if_new:Nnn
- { \@@_put_if_new:NNnn \__kernel_tl_set:Nx }
+ { \@@_put_if_new:NNnn \__kernel_tl_set:Ne }
\cs_new_protected:Npn \prop_gput_if_new:Nnn
- { \@@_put_if_new:NNnn \__kernel_tl_gset:Nx }
+ { \@@_put_if_new:NNnn \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_put_if_new:NNnn #1#2#3#4
{
\tl_set:Nn \l_@@_internal_tl
@@ -1244,8 +1343,10 @@
{ }
{ #1 #2 { \exp_not:o {#2} \l_@@_internal_tl } }
}
-\cs_generate_variant:Nn \prop_put_if_new:Nnn { c }
-\cs_generate_variant:Nn \prop_gput_if_new:Nnn { c }
+\cs_generate_variant:Nn \prop_put_if_new:Nnn
+ { NnV , NV , cnV , cV }
+\cs_generate_variant:Nn \prop_gput_if_new:Nnn
+ { NnV , NV , cnV , cV }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1278,8 +1379,8 @@
%
% \begin{macro}[pTF, tested = m3prop003]
% {
-% \prop_if_in:Nn, \prop_if_in:NV, \prop_if_in:No,
-% \prop_if_in:cn, \prop_if_in:cV, \prop_if_in:co
+% \prop_if_in:Nn, \prop_if_in:NV, \prop_if_in:Ne, \prop_if_in:No,
+% \prop_if_in:cn, \prop_if_in:cV, \prop_if_in:ce, \prop_if_in:co
% }
% \begin{macro}[EXP]{\@@_if_in:nnn}
% Testing expandably if a key is in a property list
@@ -1309,7 +1410,7 @@
{ \prop_map_break:n { \use_i:nn \prg_return_true: } }
}
\prg_generate_conditional_variant:Nnn \prop_if_in:Nn
- { NV , No , c , cV , co } { p , T , F , TF }
+ { NV , Ne , No , c , cV , ce , co } { p , T , F , TF }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1318,8 +1419,10 @@
%
% \begin{macro}[TF, tested = m3prop004]
% {
-% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NoN, \prop_get:NxN,
-% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:coN, \prop_get:cxN,
+% \prop_get:NnN, \prop_get:NVN, \prop_get:NvN, \prop_get:NeN,
+% \prop_get:NoN, \prop_get:NxN,
+% \prop_get:cnN, \prop_get:cVN, \prop_get:cvN, \prop_get:ceN,
+% \prop_get:coN, \prop_get:cxN,
% \prop_get:cnc
% }
% Getting the value corresponding to a key, keeping track of whether
@@ -1336,7 +1439,11 @@
{ \prg_return_false: }
}
\prg_generate_conditional_variant:Nnn \prop_get:NnN
- { NV , Nv , No , Nx , c , cV , cv , co , cx , cnc } { T , F , TF }
+ { NV , Nv , Ne , c , cV , cv , ce } { T , F , TF }
+\prg_generate_conditional_variant:Nnn \prop_get:NnN
+ { No , Nx , co , cx } { T , F , TF }
+\prg_generate_conditional_variant:Nnn \prop_get:NnN
+ { cnc } { T , F , TF }
% \end{macrocode}
% \end{macro}
%
@@ -1471,9 +1578,9 @@
% we use \cs{msg_show_item:nn} to format both the key and the value
% for each pair.
% \begin{macrocode}
-\cs_new_protected:Npn \prop_show:N { \@@_show:NN \msg_show:nnxxxx }
+\cs_new_protected:Npn \prop_show:N { \@@_show:NN \msg_show:nneeee }
\cs_generate_variant:Nn \prop_show:N { c }
-\cs_new_protected:Npn \prop_log:N { \@@_show:NN \msg_log:nnxxxx }
+\cs_new_protected:Npn \prop_log:N { \@@_show:NN \msg_log:nneeee }
\cs_generate_variant:Nn \prop_log:N { c }
\cs_new_protected:Npn \@@_show:NN #1#2
{
diff --git a/macros/latex/contrib/l3kernel/l3quark.dtx b/macros/latex/contrib/l3kernel/l3quark.dtx
index e05b5369e1..1a1e1aaf1f 100644
--- a/macros/latex/contrib/l3kernel/l3quark.dtx
+++ b/macros/latex/contrib/l3kernel/l3quark.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -633,21 +633,21 @@
%
% \begin{macro}{\@@_new_test:NNNn, \@@_new_test:Nccn,
% \@@_new_test_aux:nnNNnnnn}
-% \begin{macro}{\@@_new_conditional:Nnnn, \@@_new_conditional:Nxxn}
+% \begin{macro}{\@@_new_conditional:Nnnn, \@@_new_conditional:Neen}
% \begin{macrocode}
\cs_new_protected:Npn \__kernel_quark_new_test:N #1
- { \@@_new_test_aux:Nx #1 { \@@_module_name:N #1 } }
+ { \@@_new_test_aux:Ne #1 { \@@_module_name:N #1 } }
\cs_new_protected:Npn \@@_new_test_aux:Nn #1 #2
{
\if_meaning:w \q_nil #2 \q_nil
- \msg_error:nnx { quark } { invalid-function }
+ \msg_error:nne { quark } { invalid-function }
{ \token_to_str:N #1 }
\else:
\@@_new_test:Nccn #1
{ q__#2_recursion_tail } { q__#2_recursion_stop } { __#2 }
\fi:
}
-\cs_generate_variant:Nn \@@_new_test_aux:Nn { Nx }
+\cs_generate_variant:Nn \@@_new_test_aux:Nn { Ne }
\cs_new_protected:Npn \@@_new_test:NNNn #1
{
\exp_last_unbraced:Nf \@@_new_test_aux:nnNNnnnn
@@ -657,18 +657,18 @@
\cs_generate_variant:Nn \@@_new_test:NNNn { Ncc }
\cs_new_protected:Npn \__kernel_quark_new_conditional:Nn #1
{
- \@@_new_conditional:Nxxn #1
+ \@@_new_conditional:Neen #1
{ \@@_quark_conditional_name:N #1 }
{ \@@_module_name:N #1 }
}
\cs_new_protected:Npn \@@_new_conditional:Nnnn #1#2#3#4
{
\if_meaning:w \q_nil #2 \q_nil
- \msg_error:nnx { quark } { invalid-function }
+ \msg_error:nne { quark } { invalid-function }
{ \token_to_str:N #1 }
\else:
\if_meaning:w \q_nil #3 \q_nil
- \msg_error:nnx { quark } { invalid-function }
+ \msg_error:nne { quark } { invalid-function }
{ \token_to_str:N #1 }
\else:
\exp_last_unbraced:Nf \@@_new_test_aux:nnNNnnnn
@@ -678,12 +678,12 @@
\fi:
\fi:
}
-\cs_generate_variant:Nn \@@_new_conditional:Nnnn { Nxx }
+\cs_generate_variant:Nn \@@_new_conditional:Nnnn { Nee }
\cs_new_protected:Npn \@@_new_test_aux:nnNNnnnn #1 #2 #3 #4 #5
{
\cs_if_exist_use:cTF { @@_new_#5_#2:Nnnn } { #4 }
{
- \msg_error:nnxx { quark } { invalid-function }
+ \msg_error:nnee { quark } { invalid-function }
{ \token_to_str:N #4 } {#2}
\use_none:nnn
}
@@ -951,7 +951,7 @@
{
\tl_if_in:NnTF \g_@@_marks_tl { #1 }
{
- \msg_error:nnx { scanmark } { already-defined }
+ \msg_error:nne { scanmark } { already-defined }
{ \token_to_str:N #1 }
}
{
diff --git a/macros/latex/contrib/l3kernel/l3regex.dtx b/macros/latex/contrib/l3kernel/l3regex.dtx
index 3d342960ac..87dfcec47b 100644
--- a/macros/latex/contrib/l3kernel/l3regex.dtx
+++ b/macros/latex/contrib/l3kernel/l3regex.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -1158,24 +1158,24 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_toks_put_left:Nx}
-% \begin{macro}{\@@_toks_put_right:Nx, \@@_toks_put_right:Nn}
+% \begin{macro}{\@@_toks_put_left:Ne}
+% \begin{macro}{\@@_toks_put_right:Ne, \@@_toks_put_right:Nn}
% During the building phase we wish to add \texttt{x}-expanded
% material to \tn{toks}, either to the left or to the right. The
% expansion is done \enquote{by hand} for optimization (these
% operations are used quite a lot). The \texttt{Nn} version of
-% \cs{@@_toks_put_right:Nx} is provided because it is more
+% \cs{@@_toks_put_right:Ne} is provided because it is more
% efficient than \texttt{x}-expanding with \cs{exp_not:n}.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_toks_put_left:Nx #1#2
+\cs_new_protected:Npn \@@_toks_put_left:Ne #1#2
{
- \cs_set_nopar:Npx \@@_tmp:w { #2 }
+ \cs_set_nopar:Npe \@@_tmp:w { #2 }
\tex_toks:D #1 \exp_after:wN \exp_after:wN \exp_after:wN
{ \exp_after:wN \@@_tmp:w \tex_the:D \tex_toks:D #1 }
}
-\cs_new_protected:Npn \@@_toks_put_right:Nx #1#2
+\cs_new_protected:Npn \@@_toks_put_right:Ne #1#2
{
- \cs_set_nopar:Npx \@@_tmp:w {#2}
+ \cs_set_nopar:Npe \@@_tmp:w {#2}
\tex_toks:D #1 \exp_after:wN
{ \tex_the:D \tex_toks:D \exp_after:wN #1 \@@_tmp:w }
}
@@ -1541,7 +1541,7 @@
{
\int_compare:nNnTF \l_@@_curr_catcode_int = 0
{
- \__kernel_tl_set:Nx \l_@@_internal_a_tl
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl
{ \scan_stop: \@@_curr_cs_to_str: \scan_stop: }
\tl_if_in:noTF { \scan_stop: #1 \scan_stop: }
\l_@@_internal_a_tl
@@ -1568,7 +1568,7 @@
\@@_build_for_cs:n {#1}
\bool_set_eq:NN \l_@@_saved_success_bool
\g_@@_success_bool
- \exp_args:Nx \@@_match_cs:n { \@@_curr_cs_to_str: }
+ \exp_args:Ne \@@_match_cs:n { \@@_curr_cs_to_str: }
\if_meaning:w \c_true_bool \g_@@_success_bool
\group_insert_after:N \@@_break_true:w
\fi:
@@ -1729,9 +1729,9 @@
\cs_set:Npn \@@_escape_escaped:N ##1 { #2 }
\cs_set:Npn \@@_escape_raw:N ##1 { #3 }
\@@_standard_escapechar:
- \__kernel_tl_gset:Nx \g_@@_internal_tl
+ \__kernel_tl_gset:Ne \g_@@_internal_tl
{ \__kernel_str_to_other_fast:n {#4} }
- \tl_put_right:Nx \l_@@_internal_a_tl
+ \tl_put_right:Ne \l_@@_internal_a_tl
{
\exp_after:wN \@@_escape_loop:N \g_@@_internal_tl
\scan_stop: \prg_break_point:
@@ -1797,17 +1797,17 @@
\prg_break:
}
\cs_new:cpn { @@_escape_~:w } { }
-\cs_new:cpx { @@_escape_/a:w }
+\cs_new:cpe { @@_escape_/a:w }
{ \exp_not:N \@@_escape_raw:N \iow_char:N \^^G }
-\cs_new:cpx { @@_escape_/t:w }
+\cs_new:cpe { @@_escape_/t:w }
{ \exp_not:N \@@_escape_raw:N \iow_char:N \^^I }
-\cs_new:cpx { @@_escape_/n:w }
+\cs_new:cpe { @@_escape_/n:w }
{ \exp_not:N \@@_escape_raw:N \iow_char:N \^^J }
-\cs_new:cpx { @@_escape_/f:w }
+\cs_new:cpe { @@_escape_/f:w }
{ \exp_not:N \@@_escape_raw:N \iow_char:N \^^L }
-\cs_new:cpx { @@_escape_/r:w }
+\cs_new:cpe { @@_escape_/r:w }
{ \exp_not:N \@@_escape_raw:N \iow_char:N \^^M }
-\cs_new:cpx { @@_escape_/e:w }
+\cs_new:cpe { @@_escape_/e:w }
{ \exp_not:N \@@_escape_raw:N \iow_char:N \^^[ }
% \end{macrocode}
% \end{macro}
@@ -2421,7 +2421,7 @@
}
{ }
\if_int_compare:w \l_@@_group_level_int > \c_zero_int
- \msg_error:nnx { regex } { missing-rparen }
+ \msg_error:nne { regex } { missing-rparen }
{ \int_use:N \l_@@_group_level_int }
\prg_replicate:nn
{ \l_@@_group_level_int }
@@ -2440,7 +2440,7 @@
\fi:
\tl_build_put_right:Nn \l_@@_build_tl { \if_false: { \fi: } }
\tl_build_end:N \l_@@_build_tl
- \exp_args:NNNx
+ \exp_args:NNNe
\group_end:
\tl_set:Nn \l_@@_internal_regex { \l_@@_build_tl }
}
@@ -2550,7 +2550,7 @@
\tl_build_put_right:Nn \l_@@_build_tl
{ \@@_class:NnnnN \c_true_bool { \if_false: } \fi: }
}
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{
\if_int_compare:w \l_@@_catcodes_int <
\c_@@_all_catcodes_int
@@ -2567,19 +2567,19 @@
% \end{macro}
%
% \begin{macro}
-% {\@@_compile_abort_tokens:n, \@@_compile_abort_tokens:x}
+% {\@@_compile_abort_tokens:n, \@@_compile_abort_tokens:e}
% This function places the collected tokens back in the input stream,
% each as a raw character. Spaces are not preserved.
% \begin{macrocode}
\cs_new_protected:Npn \@@_compile_abort_tokens:n #1
{
- \use:x
+ \use:e
{
\exp_args:No \tl_map_function:nN { \tl_to_str:n {#1} }
\@@_compile_raw:N
}
}
-\cs_generate_variant:Nn \@@_compile_abort_tokens:n { x }
+\cs_generate_variant:Nn \@@_compile_abort_tokens:n { e }
% \end{macrocode}
% \end{macro}
%
@@ -2617,7 +2617,7 @@
% \end{macro}
%
% \begin{macro}{\@@_compile_quantifier_none:}
-% \begin{macro}{\@@_compile_quantifier_abort:xNN}
+% \begin{macro}{\@@_compile_quantifier_abort:eNN}
% Those functions are called whenever there is no quantifier, or a
% braced construction is invalid (equivalent to no quantifier, and
% whatever characters were grabbed are left raw).
@@ -2627,11 +2627,11 @@
\tl_build_put_right:Nn \l_@@_build_tl
{ \if_false: { \fi: } { 1 } { 0 } \c_false_bool }
}
-\cs_new_protected:Npn \@@_compile_quantifier_abort:xNN #1#2#3
+\cs_new_protected:Npn \@@_compile_quantifier_abort:eNN #1#2#3
{
\@@_compile_quantifier_none:
- \msg_warning:nnxx { regex } { invalid-quantifier } {#1} {#3}
- \@@_compile_abort_tokens:x {#1}
+ \msg_warning:nnee { regex } { invalid-quantifier } {#1} {#3}
+ \@@_compile_abort_tokens:e {#1}
#2 #3
}
% \end{macrocode}
@@ -2703,7 +2703,7 @@
{
\@@_get_digits:NTFw \l_@@_internal_a_int
{ \@@_compile_quantifier_braced_auxi:w }
- { \@@_compile_quantifier_abort:xNN { \c_left_brace_str } }
+ { \@@_compile_quantifier_abort:eNN { \c_left_brace_str } }
}
\cs_new_protected:Npn \@@_compile_quantifier_braced_auxi:w #1#2
{
@@ -2722,7 +2722,7 @@
}
}
{
- \@@_compile_quantifier_abort:xNN
+ \@@_compile_quantifier_abort:eNN
{ \c_left_brace_str \int_use:N \l_@@_internal_a_int }
#1 #2
}
@@ -2735,7 +2735,7 @@
{ \int_use:N \l_@@_internal_a_int } { -1 }
}
{
- \@@_compile_quantifier_abort:xNN
+ \@@_compile_quantifier_abort:eNN
{ \c_left_brace_str \int_use:N \l_@@_internal_a_int , }
#1 #2
}
@@ -2746,7 +2746,7 @@
{
\if_int_compare:w \l_@@_internal_a_int >
\l_@@_internal_b_int
- \msg_error:nnxx { regex } { backwards-quantifier }
+ \msg_error:nnee { regex } { backwards-quantifier }
{ \int_use:N \l_@@_internal_a_int }
{ \int_use:N \l_@@_internal_b_int }
\int_zero:N \l_@@_internal_b_int
@@ -2758,7 +2758,7 @@
{ \int_use:N \l_@@_internal_b_int }
}
{
- \@@_compile_quantifier_abort:xNN
+ \@@_compile_quantifier_abort:eNN
{
\c_left_brace_str
\int_use:N \l_@@_internal_a_int ,
@@ -2780,7 +2780,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_compile_raw_error:N #1
{
- \msg_error:nnx { regex } { bad-escape } {#1}
+ \msg_error:nne { regex } { bad-escape } {#1}
\@@_compile_raw:N #1
}
% \end{macrocode}
@@ -2839,9 +2839,9 @@
\@@_if_end_range:NNTF #2 #3
{
\if_int_compare:w `#1 > `#3 \exp_stop_f:
- \msg_error:nnxx { regex } { range-backwards } {#1} {#3}
+ \msg_error:nnee { regex } { range-backwards } {#1} {#3}
\else:
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{
\if_int_compare:w `#1 = `#3 \exp_stop_f:
\@@_item_equal:n
@@ -2853,9 +2853,9 @@
\fi:
}
{
- \msg_warning:nnxx { regex } { range-missing-end }
+ \msg_warning:nnee { regex } { range-missing-end }
{#1} { \c_backslash_str #3 }
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{
\@@_item_equal:n { \int_value:w `#1 \exp_stop_f: }
\@@_item_equal:n { \int_value:w `- \exp_stop_f: }
@@ -2873,7 +2873,7 @@
% \cs{@@_prop_.:}, which matches any character or control
% sequence, and refuses $-2$ (end-marker).
% \begin{macrocode}
-\cs_new_protected:cpx { @@_compile_.: }
+\cs_new_protected:cpe { @@_compile_.: }
{
\exp_not:N \@@_if_in_class:TF
{ \@@_compile_raw:N . }
@@ -2904,9 +2904,9 @@
% \begin{macrocode}
\cs_set_protected:Npn \@@_tmp:w #1#2
{
- \cs_new_protected:cpx { @@_compile_/#1: }
+ \cs_new_protected:cpe { @@_compile_/#1: }
{ \@@_compile_one:n \exp_not:c { @@_prop_#1: } }
- \cs_new_protected:cpx { @@_compile_/#2: }
+ \cs_new_protected:cpe { @@_compile_/#2: }
{
\@@_compile_one:n
{ \@@_item_reverse:n { \exp_not:c { @@_prop_#1: } } }
@@ -2967,8 +2967,8 @@
}
}
}
-\exp_args:Nx \@@_tmp:w { \iow_char:N \^ } { \@@_A_test: }
-\exp_args:Nx \@@_tmp:w { \iow_char:N \$ } { \@@_Z_test: }
+\exp_args:Ne \@@_tmp:w { \iow_char:N \^ } { \@@_A_test: }
+\exp_args:Ne \@@_tmp:w { \iow_char:N \$ } { \@@_Z_test: }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3117,11 +3117,11 @@
{
: { \@@_compile_class_posix:NNNNw }
= {
- \msg_warning:nnx { regex }
+ \msg_warning:nne { regex }
{ posix-unsupported } { = }
}
. {
- \msg_warning:nnx { regex }
+ \msg_warning:nne { regex }
{ posix-unsupported } { . }
}
}
@@ -3133,12 +3133,12 @@
\@@_two_if_eq:NNNNTF #5 #6 \@@_compile_special:N ^
{
\bool_set_false:N \l_@@_internal_bool
- \__kernel_tl_set:Nx \l_@@_internal_a_tl { \if_false: } \fi:
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl { \if_false: } \fi:
\@@_compile_class_posix_loop:w
}
{
\bool_set_true:N \l_@@_internal_bool
- \__kernel_tl_set:Nx \l_@@_internal_a_tl { \if_false: } \fi:
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl { \if_false: } \fi:
\@@_compile_class_posix_loop:w #5 #6
}
}
@@ -3163,9 +3163,9 @@
}
}
{
- \msg_warning:nnx { regex } { posix-unknown }
+ \msg_warning:nne { regex } { posix-unknown }
{ \l_@@_internal_a_tl }
- \@@_compile_abort_tokens:x
+ \@@_compile_abort_tokens:e
{
[: \bool_if:NF \l_@@_internal_bool { ^ }
\l_@@_internal_a_tl :]
@@ -3173,9 +3173,9 @@
}
}
{
- \msg_error:nnxx { regex } { posix-missing-close }
+ \msg_error:nnee { regex } { posix-missing-close }
{ [: \l_@@_internal_a_tl } { #2 #4 }
- \@@_compile_abort_tokens:x { [: \l_@@_internal_a_tl }
+ \@@_compile_abort_tokens:e { [: \l_@@_internal_a_tl }
#1 #2 #3 #4
}
}
@@ -3213,7 +3213,7 @@
\if_int_compare:w \l_@@_group_level_int > \c_zero_int
\tl_build_put_right:Nn \l_@@_build_tl { \if_false: { \fi: } }
\tl_build_end:N \l_@@_build_tl
- \exp_args:NNNx
+ \exp_args:NNNe
\group_end:
\tl_build_put_right:Nn \l_@@_build_tl { \l_@@_build_tl }
\int_set_eq:NN \l_@@_catcodes_int \l_@@_default_catcodes_int
@@ -3252,7 +3252,7 @@
\cs_if_exist_use:cF
{ @@_compile_special_group_\token_to_str:N #4 :w }
{
- \msg_warning:nnx { regex } { special-group-unknown }
+ \msg_warning:nne { regex } { special-group-unknown }
{ (? #4 }
\@@_compile_group_begin:N \@@_group:nnnN
\@@_compile_raw:N ? #3 #4
@@ -3321,7 +3321,7 @@
{ \@@_item_caseless_range:nn }
}
{
- \msg_warning:nnx { regex } { unknown-option } { (?i #2 }
+ \msg_warning:nne { regex } { unknown-option } { (?i #2 }
\@@_compile_raw:N (
\@@_compile_raw:N ?
\@@_compile_raw:N i
@@ -3340,7 +3340,7 @@
{ \@@_item_caseful_range:nn }
}
{
- \msg_warning:nnx { regex } { unknown-option } { (?-#2#4 }
+ \msg_warning:nne { regex } { unknown-option } { (?-#2#4 }
\@@_compile_raw:N (
\@@_compile_raw:N ?
\@@_compile_raw:N -
@@ -3379,7 +3379,7 @@
}
{ \cs_if_exist_use:cF { @@_compile_c_#2:w } }
{
- \msg_error:nnx { regex } { c-missing-category } {#2}
+ \msg_error:nne { regex } { c-missing-category } {#2}
#1 #2
}
}
@@ -3453,7 +3453,7 @@
{ \@@_compile_c_lbrack_end: }
}
{
- \msg_error:nnx { regex } { c-missing-rbrack } {#2}
+ \msg_error:nne { regex } { c-missing-rbrack } {#2}
\@@_compile_c_lbrack_end:
#1 #2
}
@@ -3534,12 +3534,12 @@
{
\@@_compile_end:
\flag_clear:n { @@_cs }
- \__kernel_tl_set:Nx \l_@@_internal_a_tl
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl
{
\exp_after:wN \@@_compile_cs_aux:Nn \l_@@_internal_regex
\q_@@_nil \q_@@_nil \q_@@_recursion_stop
}
- \exp_args:Nx \@@_compile_one:n
+ \exp_args:Ne \@@_compile_one:n
{
\flag_if_raised:nTF { @@_cs }
{ \@@_item_cs:n { \exp_not:o \l_@@_internal_regex } }
@@ -3622,7 +3622,7 @@
\@@_two_if_eq:NNNNTF #2 #3 \@@_compile_special:N \c_left_brace_str
{
\tl_set:Nn \l_@@_internal_b_tl {#1}
- \__kernel_tl_set:Nx \l_@@_internal_a_tl { \if_false: } \fi:
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl { \if_false: } \fi:
\@@_compile_u_loop:NN
}
{
@@ -3665,7 +3665,7 @@
}
{
\if_false: { \fi: }
- \msg_error:nnx { regex } { u-missing-rbrace } {#2}
+ \msg_error:nne { regex } { u-missing-rbrace } {#2}
\l_@@_internal_b_tl
#1 #2
}
@@ -3691,7 +3691,7 @@
\group_begin:
\cs_set:Npn \@@_group:nnnN { \@@_group_no_capture:nnnN }
\cs_set:Npn \@@_group_resetting:nnnN { \@@_group_no_capture:nnnN }
- \exp_args:NNx
+ \exp_args:NNe
\group_end:
\@@_compile_ur:n { \use:c { \l_@@_internal_a_tl } }
}
@@ -3756,12 +3756,12 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_compile_u_in_cs:
{
- \__kernel_tl_gset:Nx \g_@@_internal_tl
+ \__kernel_tl_gset:Ne \g_@@_internal_tl
{
\exp_args:No \__kernel_str_to_other_fast:n
{ \l_@@_internal_a_tl }
}
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{
\tl_map_function:NN \g_@@_internal_tl
\@@_compile_u_in_cs_aux:n
@@ -3786,7 +3786,7 @@
{
\tl_analysis_map_inline:Nn \l_@@_internal_a_tl
{
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{
\@@_class:NnnnN \c_true_bool
{
@@ -4096,7 +4096,7 @@
\cs_new_protected:Npn \@@_show_one:n #1
{
\int_incr:N \l_@@_show_lines_int
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{
\exp_not:N \iow_newline:
\seq_map_function:NN \l_@@_show_prefix_seq \use:n
@@ -4113,7 +4113,7 @@
% second argument in a deeper level of nesting.
% \begin{macrocode}
\cs_new_protected:Npn \@@_show_push:n #1
- { \seq_put_right:Nx \l_@@_show_prefix_seq { #1 ~ } }
+ { \seq_put_right:Ne \l_@@_show_prefix_seq { #1 ~ } }
\cs_new_protected:Npn \@@_show_pop:
{ \seq_pop_right:NN \l_@@_show_prefix_seq \l_@@_internal_a_tl }
\cs_new_protected:Npn \@@_show_scope:nn #1#2
@@ -4186,7 +4186,7 @@
\bool_if:NTF #1 { Match } { Don't~match }
\@@_msg_repeated:nnN {#3} {#4} #5
}
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{ \exp_not:o \l_@@_internal_a_tl }
}
}
@@ -4367,7 +4367,7 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{\@@_case_build:n, \@@_case_build:x, \@@_case_build_aux:Nn, \@@_case_build_loop:n}
+% \begin{macro}{\@@_case_build:n, \@@_case_build:e, \@@_case_build_aux:Nn, \@@_case_build_loop:n}
% See \cs{@@_build:n}, but with a loop.
% \begin{macrocode}
\cs_new_protected:Npn \@@_case_build:n #1
@@ -4375,7 +4375,7 @@
\@@_case_build_aux:Nn \c_true_bool {#1}
\int_gzero:N \g_@@_case_int
}
-\cs_generate_variant:Nn \@@_case_build:n { x }
+\cs_generate_variant:Nn \@@_case_build:n { e }
\cs_new_protected:Npn \@@_case_build_aux:Nn #1#2
{
\@@_standard_escapechar:
@@ -4386,7 +4386,7 @@
{ \@@_action_start_wildcard:N #1 }
%
\@@_build_new_state:
- \@@_toks_put_left:Nx \l_@@_left_state_int
+ \@@_toks_put_left:Ne \l_@@_left_state_int
{ \@@_action_submatch:nN { 0 } < }
\@@_push_lr_states:
\int_zero:N \l_@@_case_max_group_int
@@ -4410,7 +4410,7 @@
}
\seq_pop:NN \l_@@_right_state_seq \l_@@_internal_a_tl
\int_set:Nn \l_@@_right_state_int \l_@@_internal_a_tl
- \@@_toks_put_left:Nx \l_@@_right_state_int
+ \@@_toks_put_left:Ne \l_@@_right_state_int
{
\@@_action_submatch:nN { 0 } >
\int_gset:Nn \g_@@_case_int
@@ -4498,9 +4498,9 @@
% differing usage later on. Both functions could be optimized.
% \begin{macrocode}
\cs_new_protected:Npn \@@_build_transition_left:NNN #1#2#3
- { \@@_toks_put_left:Nx #2 { #1 { \int_eval:n { #3 - #2 } } } }
+ { \@@_toks_put_left:Ne #2 { #1 { \int_eval:n { #3 - #2 } } } }
\cs_new_protected:Npn \@@_build_transition_right:nNn #1#2#3
- { \@@_toks_put_right:Nx #2 { #1 { \int_eval:n { #3 - #2 } } } }
+ { \@@_toks_put_right:Ne #2 { #1 { \int_eval:n { #3 - #2 } } } }
% \end{macrocode}
% \end{macro}
%
@@ -4529,7 +4529,7 @@
\cs_new_protected:Npn \@@_build_transitions_lazyness:NNNNN #1#2#3#4#5
{
\@@_build_new_state:
- \@@_toks_put_right:Nx \l_@@_left_state_int
+ \@@_toks_put_right:Ne \l_@@_left_state_int
{
\if_meaning:w \c_true_bool #1
#2 { \int_eval:n { #3 - \l_@@_left_state_int } }
@@ -4557,7 +4557,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_class:NnnnN #1#2#3#4#5
{
- \cs_set:Npx \@@_tests_action_cost:n ##1
+ \cs_set:Npe \@@_tests_action_cost:n ##1
{
\exp_not:n { \exp_not:n {#2} }
\bool_if:NTF #1
@@ -4791,8 +4791,8 @@
\cs_new_protected:Npn \@@_group_submatches:nNN #1#2#3
{
\if_int_compare:w #1 > - \c_one_int
- \@@_toks_put_left:Nx #2 { \@@_action_submatch:nN {#1} < }
- \@@_toks_put_left:Nx #3 { \@@_action_submatch:nN {#1} > }
+ \@@_toks_put_left:Ne #2 { \@@_action_submatch:nN {#1} < }
+ \@@_toks_put_left:Ne #3 { \@@_action_submatch:nN {#1} > }
\fi:
}
% \end{macrocode}
@@ -4953,7 +4953,7 @@
\cs_new_protected:Npn \@@_assertion:Nn #1#2
{
\@@_build_new_state:
- \@@_toks_put_right:Nx \l_@@_left_state_int
+ \@@_toks_put_right:Ne \l_@@_left_state_int
{
\exp_not:n {#2}
\@@_break_point:TF
@@ -5005,7 +5005,7 @@
\cs_new_protected:Npn \@@_command_K:
{
\@@_build_new_state:
- \@@_toks_put_right:Nx \l_@@_left_state_int
+ \@@_toks_put_right:Ne \l_@@_left_state_int
{
\@@_action_submatch:nN { 0 } <
\bool_set_true:N \l_@@_fresh_thread_bool
@@ -5347,7 +5347,7 @@
\fi:
\int_set_eq:NN \l_@@_start_pos_int \l_@@_success_pos_int
\bool_set_false:N \l_@@_match_success_bool
- \tl_set:Nx \l_@@_curr_submatches_tl
+ \tl_set:Ne \l_@@_curr_submatches_tl
{ \prg_replicate:nn { 2 * \l_@@_capturing_group_int } { 0 , } }
\int_set_eq:NN \l_@@_max_thread_int \l_@@_min_thread_int
\@@_store_state:n { \l_@@_min_state_int }
@@ -5423,10 +5423,10 @@
\tl_set:Nn \l_@@_curr_token_tl {#1}
\int_set:Nn \l_@@_curr_char_int {#2}
\int_set:Nn \l_@@_curr_catcode_int { "#3 }
- \tl_build_put_right:Nx \l_@@_matched_analysis_tl
+ \tl_build_put_right:Ne \l_@@_matched_analysis_tl
{ \exp_not:o \l_@@_curr_analysis_tl }
\tl_set:Nn \l_@@_curr_analysis_tl { { {#1} {#2} #3 } }
- \use:x
+ \use:e
{
\int_set_eq:NN \l_@@_max_thread_int \l_@@_min_thread_int
\int_step_function:nnN
@@ -5539,7 +5539,7 @@
{ \@@_action_free_aux:nn { < \l_@@_step_int } }
\cs_new_protected:Npn \@@_action_free_aux:nn #1#2
{
- \use:x
+ \use:e
{
\int_add:Nn \l_@@_curr_state_int {#2}
\exp_not:n
@@ -5569,7 +5569,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_action_cost:n #1
{
- \exp_args:Nx \@@_store_state:n
+ \exp_args:Ne \@@_store_state:n
{ \int_eval:n { \l_@@_curr_state_int + #1 } }
}
% \end{macrocode}
@@ -5627,7 +5627,7 @@
}
\cs_new_protected:Npn \@@_action_submatch_aux:w #1 ; #2#3
{
- \tl_set:Nx \l_@@_curr_submatches_tl
+ \tl_set:Ne \l_@@_curr_submatches_tl
{
\prg_replicate:nn
{ #2 \if_meaning:w > #3 + \l_@@_capturing_group_int \fi: }
@@ -5844,7 +5844,7 @@
%
% \subsubsection{Framework}
%
-% \begin{macro}{\@@_replacement:n, \@@_replacement:x}
+% \begin{macro}{\@@_replacement:n, \@@_replacement:e}
% \begin{macro}{\@@_replacement_apply:Nn, \@@_replacement_set:n}
% The replacement text is built incrementally. We keep track in
% \cs{l_@@_balance_int} of the balance of explicit begin- and
@@ -5882,25 +5882,25 @@
{#2}
\prg_do_nothing: \prg_do_nothing:
\if_int_compare:w \l_@@_replacement_csnames_int > \c_zero_int
- \msg_error:nnx { regex } { replacement-missing-rbrace }
+ \msg_error:nne { regex } { replacement-missing-rbrace }
{ \int_use:N \l_@@_replacement_csnames_int }
- \tl_build_put_right:Nx \l_@@_build_tl
+ \tl_build_put_right:Ne \l_@@_build_tl
{ \prg_replicate:nn \l_@@_replacement_csnames_int \cs_end: }
\fi:
\seq_if_empty:NF \l_@@_replacement_category_seq
{
- \msg_error:nnx { regex } { replacement-missing-rparen }
+ \msg_error:nne { regex } { replacement-missing-rparen }
{ \seq_count:N \l_@@_replacement_category_seq }
\seq_clear:N \l_@@_replacement_category_seq
}
- \tl_gput_right:Nx \g_@@_balance_tl
+ \tl_gput_right:Ne \g_@@_balance_tl
{ + \int_use:N \l_@@_balance_int }
\tl_build_end:N \l_@@_build_tl
\exp_args:NNo
\group_end:
#1 \l_@@_build_tl
}
-\cs_generate_variant:Nn \@@_replacement:n { x }
+\cs_generate_variant:Nn \@@_replacement:n { e }
\cs_new_protected:Npn \@@_replacement_set:n #1
{
\cs_set:Npn \@@_replacement_do_one_match:n ##1
@@ -5927,7 +5927,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_case_replacement:n, \@@_case_replacement:x}
+% \begin{macro}{\@@_case_replacement:n, \@@_case_replacement:e}
% \begin{macrocode}
\tl_new:N \g_@@_case_replacement_tl
\tl_new:N \g_@@_case_balance_tl
@@ -5947,7 +5947,7 @@
\exp_args:No \@@_replacement_set:n
{ \g_@@_case_replacement_tl \fi: }
}
-\cs_generate_variant:Nn \@@_case_replacement:n { x }
+\cs_generate_variant:Nn \@@_case_replacement:n { e }
\cs_new_protected:Npn \@@_case_replacement_aux:n #1
{
\tl_gput_right:Nn \g_@@_case_replacement_tl { \or: #1 }
@@ -6458,7 +6458,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_replacement_error:NNN #1#2#3
{
- \msg_error:nnx { regex } { replacement-#1 } {#3}
+ \msg_error:nne { regex } { replacement-#1 } {#3}
#2 #3
}
% \end{macrocode}
@@ -6502,7 +6502,7 @@
\cs_new_protected:Npn \regex_const:Nn #1#2
{
\@@_compile:n {#2}
- \tl_const:Nx #1 { \exp_not:o \l_@@_internal_regex }
+ \tl_const:Ne #1 { \exp_not:o \l_@@_internal_regex }
}
% \end{macrocode}
% \end{macro}
@@ -6516,8 +6516,8 @@
% Then show the variable with some appropriate text. The auxiliary
% \cs{@@_show:N} is defined in a different section.
% \begin{macrocode}
-\cs_new_protected:Npn \regex_show:n { \@@_show:Nn \msg_show:nnxxxx }
-\cs_new_protected:Npn \regex_log:n { \@@_show:Nn \msg_log:nnxxxx }
+\cs_new_protected:Npn \regex_show:n { \@@_show:Nn \msg_show:nneeee }
+\cs_new_protected:Npn \regex_log:n { \@@_show:Nn \msg_log:nneeee }
\cs_new_protected:Npn \@@_show:Nn #1#2
{
\@@_compile:n {#2}
@@ -6526,8 +6526,8 @@
{ \tl_to_str:n {#2} } { }
{ \l_@@_internal_a_tl } { }
}
-\cs_new_protected:Npn \regex_show:N { \@@_show:NN \msg_show:nnxxxx }
-\cs_new_protected:Npn \regex_log:N { \@@_show:NN \msg_log:nnxxxx }
+\cs_new_protected:Npn \regex_show:N { \@@_show:NN \msg_show:nneeee }
+\cs_new_protected:Npn \regex_log:N { \@@_show:NN \msg_log:nneeee }
\cs_new_protected:Npn \@@_show:NN #1#2
{
\__kernel_chk_tl_type:NnnT #2 { regex }
@@ -6663,15 +6663,15 @@
{
\int_if_odd:nTF { \tl_count:n {#1} }
{
- \msg_error:nnxxxx { regex } { case-odd }
+ \msg_error:nneeee { regex } { case-odd }
{ \token_to_str:N \regex_replace_case_once:nN(TF) } { code }
{ \tl_count:n {#1} } { \tl_to_str:n {#1} }
\use_ii:nn
}
{
\@@_replace_once_aux:nnN
- { \@@_case_build:x { \@@_tl_odd_items:n {#1} } }
- { \@@_replacement:x { \tl_item:nn {#1} { 2 * \g_@@_case_int } } }
+ { \@@_case_build:e { \@@_tl_odd_items:n {#1} } }
+ { \@@_replacement:e { \tl_item:nn {#1} { 2 * \g_@@_case_int } } }
#2
\bool_if:NTF \g_@@_success_bool
}
@@ -6695,15 +6695,15 @@
{
\int_if_odd:nTF { \tl_count:n {#1} }
{
- \msg_error:nnxxxx { regex } { case-odd }
+ \msg_error:nneeee { regex } { case-odd }
{ \token_to_str:N \regex_replace_case_all:nN(TF) } { code }
{ \tl_count:n {#1} } { \tl_to_str:n {#1} }
\use_ii:nn
}
{
\@@_replace_all_aux:nnN
- { \@@_case_build:x { \@@_tl_odd_items:n {#1} } }
- { \@@_case_replacement:x { \@@_tl_even_items:n {#1} } }
+ { \@@_case_build:e { \@@_tl_odd_items:n {#1} } }
+ { \@@_case_replacement:e { \@@_tl_even_items:n {#1} } }
#2
\bool_if:NTF \g_@@_success_bool
}
@@ -6857,14 +6857,14 @@
{
\int_if_odd:nTF { \tl_count:n {#1} }
{
- \msg_error:nnxxxx { regex } { case-odd }
+ \msg_error:nneeee { regex } { case-odd }
{ \token_to_str:N \regex_match_case:nn(TF) } { code }
{ \tl_count:n {#1} } { \tl_to_str:n {#1} }
\use_ii:nn
}
{
\@@_if_match:nn
- { \@@_case_build:x { \@@_tl_odd_items:n {#1} } }
+ { \@@_case_build:e { \@@_tl_odd_items:n {#1} } }
{#2}
\bool_if:NTF \g_@@_success_bool
}
@@ -7001,7 +7001,7 @@
\flag_clear:n { @@_begin }
\flag_clear:n { @@_end }
\cs_set_eq:NN \@@_tmp:w \scan_stop:
- \__kernel_tl_gset:Nx \g_@@_internal_tl
+ \__kernel_tl_gset:Ne \g_@@_internal_tl
{
\int_step_function:nnN { \l_@@_min_submatch_int }
{ \l_@@_submatch_int - 1 } \@@_extract_seq_aux:n
@@ -7012,12 +7012,12 @@
\int_set:Nn \l_@@_added_end_int
{ \flag_height:n { @@_end } }
\tex_afterassignment:D \@@_extract_check:w
- \__kernel_tl_gset:Nx \g_@@_internal_tl
+ \__kernel_tl_gset:Ne \g_@@_internal_tl
{ \g_@@_internal_tl \if_false: { \fi: } }
\int_compare:nNnT
{ \l_@@_added_begin_int + \l_@@_added_end_int } > 0
{
- \msg_error:nnxxx { regex } { result-unbalanced }
+ \msg_error:nneee { regex } { result-unbalanced }
{ splitting~or~extracting~submatches }
{ \int_use:N \l_@@_added_begin_int }
{ \int_use:N \l_@@_added_end_int }
@@ -7087,17 +7087,17 @@
% In \cs{@@_group_end_extract_seq:N} we had to expand
% \cs{g_@@_internal_tl} to turn \cs{if_false:} constructions into
% actual begin-group and end-group tokens. This is done with a
-% \cs{__kernel_tl_gset:Nx} assignment, and \cs{@@_extract_check:w} is
+% \cs{__kernel_tl_gset:Ne} assignment, and \cs{@@_extract_check:w} is
% run immediately after this assignment ends, thanks to the
% \tn{afterassignment} primitive. If all of the items were properly
% balanced (enough begin-group tokens before end-group tokens, so |}{|
% is not) then \cs{@@_extract_check:w} is called just before the
-% closing brace of the \cs{__kernel_tl_gset:Nx} (thanks to our sneaky
+% closing brace of the \cs{__kernel_tl_gset:Ne} (thanks to our sneaky
% \cs{if_false:} |{| \cs{fi:} |}| construction), and finds that there
% is nothing left to expand. If any of the items is unbalanced, the
% assignment gets ended early by an extra end-group token, and our
% check finds more tokens needing to be expanded in a new
-% \cs{__kernel_tl_gset:Nx} assignment. We need to add a begin-group
+% \cs{__kernel_tl_gset:Ne} assignment. We need to add a begin-group
% and an end-group tokens to the unbalanced item, namely to the last
% item found so far, which we reach through a loop.
% \begin{macrocode}
@@ -7113,7 +7113,7 @@
\int_incr:N \l_@@_added_begin_int
\int_incr:N \l_@@_added_end_int
\tex_afterassignment:D \@@_extract_check:w
- \__kernel_tl_gset:Nx \g_@@_internal_tl
+ \__kernel_tl_gset:Ne \g_@@_internal_tl
{
\exp_after:wN \@@_extract_check_loop:w
\g_@@_internal_tl
@@ -7234,7 +7234,7 @@
\@@_replacement_balance_one_match:n
{ \l_@@_zeroth_submatch_int }
}
- \__kernel_tl_set:Nx \l_@@_internal_a_tl
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl
{
\@@_replacement_do_one_match:n
{ \l_@@_zeroth_submatch_int }
@@ -7283,7 +7283,7 @@
{ \l_@@_submatch_int - 1 }
\@@_replacement_balance_one_match:n
}
- \__kernel_tl_set:Nx \l_@@_internal_a_tl
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl
{
\int_step_function:nnnN
{ \l_@@_min_submatch_int }
@@ -7327,7 +7327,7 @@
\@@_group_end_replace_try:
\int_compare:nNnT { \l_@@_added_begin_int + \l_@@_added_end_int } > 0
{
- \msg_error:nnxxx { regex } { result-unbalanced }
+ \msg_error:nneee { regex } { result-unbalanced }
{ replacing } { \int_use:N \l_@@_added_begin_int }
{ \int_use:N \l_@@_added_end_int }
}
@@ -7337,7 +7337,7 @@
\cs_new_protected:Npn \@@_group_end_replace_try:
{
\tex_afterassignment:D \@@_group_end_replace_check:w
- \__kernel_tl_gset:Nx \g_@@_internal_tl
+ \__kernel_tl_gset:Ne \g_@@_internal_tl
{
\prg_replicate:nn { \l_@@_added_begin_int } { { \if_false: } \fi: }
\l_@@_internal_a_tl
@@ -7592,11 +7592,11 @@
% \cs{@@_replacement:n}, which as usual defines
% \cs{@@_replacement_do_one_match:n} to insert the tokens from the
% start of the match attempt to the beginning of the match, followed
-% by the replacement text. The \cs{use:x} expands for instance the
+% by the replacement text. The \cs{use:e} expands for instance the
% trailing \cs{@@_query_range:nn} down to a sequence of
% \cs{@@_reinsert_item:n} \Arg{tokens} where \meta{tokens}
% \texttt{o}-expand to a single token that we want to insert. After
-% \texttt{x}-expansion, \cs{use:x} does \cs{use:n}, so we have
+% \texttt{e}-expansion, \cs{use:e} does \cs{use:n}, so we have
% \cs{exp_after:wN} \cs{l_@@_peek_true_tl} \cs{exp:w} \ldots{}
% \cs{exp_end:}. This is set up such as to obtain
% \cs{l_@@_peek_true_tl} followed by the replaced tokens (possibly
@@ -7615,7 +7615,7 @@
\cs_set_eq:NN \@@_replacement_exp_not:N \@@_peek_replacement_token:n
\cs_set_eq:NN \@@_replacement_exp_not:V \@@_peek_replacement_var:N
\exp_args:No \@@_replacement:n { \l_@@_replacement_tl }
- \use:x
+ \use:e
{
\exp_not:n { \exp_after:wN \l_@@_peek_true_tl \exp:w }
\@@_replacement_do_one_match:n
@@ -7736,7 +7736,7 @@
%
% Messages for the preparsing phase.
% \begin{macrocode}
-\use:x
+\use:e
{
\msg_new:nnn { regex } { trailing-backslash }
{ Trailing~'\iow_char:N\\'~in~regex~or~replacement. }
@@ -8107,20 +8107,20 @@
% be merged.
%
% \begin{macro}
-% {\@@_trace_push:nnN, \@@_trace_pop:nnN, \@@_trace:nnx}
+% {\@@_trace_push:nnN, \@@_trace_pop:nnN, \@@_trace:nne}
% Here |#1| is the module name (\texttt{regex}) and |#2| is
% typically~1. If the module's current tracing level is less than
% |#2| show nothing, otherwise write |#3| to the terminal.
% \begin{macrocode}
\cs_new_protected:Npn \@@_trace_push:nnN #1#2#3
- { \@@_trace:nnx {#1} {#2} { entering~ \token_to_str:N #3 } }
+ { \@@_trace:nne {#1} {#2} { entering~ \token_to_str:N #3 } }
\cs_new_protected:Npn \@@_trace_pop:nnN #1#2#3
- { \@@_trace:nnx {#1} {#2} { leaving~ \token_to_str:N #3 } }
-\cs_new_protected:Npn \@@_trace:nnx #1#2#3
+ { \@@_trace:nne {#1} {#2} { leaving~ \token_to_str:N #3 } }
+\cs_new_protected:Npn \@@_trace:nne #1#2#3
{
\int_compare:nNnF
{ \int_use:c { g_@@_trace_#1_int } } < {#2}
- { \iow_term:x { Trace:~#3 } }
+ { \iow_term:e { Trace:~#3 } }
}
% \end{macrocode}
% \end{macro}
@@ -8143,7 +8143,7 @@
\l_@@_min_state_int
{ \l_@@_max_state_int - 1 }
{
- \@@_trace:nnx { regex } {#1}
+ \@@_trace:nne { regex } {#1}
{ \iow_char:N \\toks ##1 = { \@@_toks_use:w ##1 } }
}
}
diff --git a/macros/latex/contrib/l3kernel/l3seq.dtx b/macros/latex/contrib/l3kernel/l3seq.dtx
index d523320f4e..9572261d46 100644
--- a/macros/latex/contrib/l3kernel/l3seq.dtx
+++ b/macros/latex/contrib/l3kernel/l3seq.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -128,10 +128,10 @@
% {
% \seq_set_split:Nnn ,
% \seq_set_split:NVn , \seq_set_split:NnV , \seq_set_split:NVV ,
-% \seq_set_split:Nnx , \seq_set_split:Nxx ,
+% \seq_set_split:Nne , \seq_set_split:Nee ,
% \seq_gset_split:Nnn,
% \seq_gset_split:NVn , \seq_gset_split:NnV, \seq_gset_split:NVV,
-% \seq_gset_split:Nnx , \seq_gset_split:Nxx
+% \seq_gset_split:Nne , \seq_gset_split:Nee
% }
% \begin{syntax}
% \cs{seq_set_split:Nnn} \meta{seq~var} \Arg{delimiter} \Arg{token list}
@@ -196,14 +196,14 @@
% \section{Appending data to sequences}
%
% \begin{function}{
-% \seq_put_left:Nn, \seq_put_left:NV, \seq_put_left:Nv,
-% \seq_put_left:No, \seq_put_left:Nx,
-% \seq_put_left:cn, \seq_put_left:cV, \seq_put_left:cv,
-% \seq_put_left:co, \seq_put_left:cx,
-% \seq_gput_left:Nn, \seq_gput_left:NV, \seq_gput_left:Nv,
-% \seq_gput_left:No, \seq_gput_left:Nx,
-% \seq_gput_left:cn, \seq_gput_left:cV, \seq_gput_left:cv,
-% \seq_gput_left:co, \seq_gput_left:cx
+% \seq_put_left:Nn, \seq_put_left:NV, \seq_put_left:Nv, \seq_put_left:Ne,
+% \seq_put_left:No,
+% \seq_put_left:cn, \seq_put_left:cV, \seq_put_left:cv, \seq_put_left:ce,
+% \seq_put_left:co,
+% \seq_gput_left:Nn, \seq_gput_left:NV, \seq_gput_left:Nv, \seq_gput_left:Ne,
+% \seq_gput_left:No,
+% \seq_gput_left:cn, \seq_gput_left:cV, \seq_gput_left:cv, \seq_gput_left:ce,
+% \seq_gput_left:co
% }
% \begin{syntax}
% \cs{seq_put_left:Nn} \meta{seq~var} \Arg{item}
@@ -212,14 +212,14 @@
% \end{function}
%
% \begin{function}{
-% \seq_put_right:Nn, \seq_put_right:NV, \seq_put_right:Nv,
-% \seq_put_right:No, \seq_put_right:Nx,
-% \seq_put_right:cn, \seq_put_right:cV, \seq_put_right:cv,
-% \seq_put_right:co, \seq_put_right:cx,
-% \seq_gput_right:Nn, \seq_gput_right:NV, \seq_gput_right:Nv,
-% \seq_gput_right:No, \seq_gput_right:Nx,
-% \seq_gput_right:cn, \seq_gput_right:cV, \seq_gput_right:cv,
-% \seq_gput_right:co, \seq_gput_right:cx
+% \seq_put_right:Nn, \seq_put_right:NV, \seq_put_right:Nv, \seq_put_right:Ne,
+% \seq_put_right:No,
+% \seq_put_right:cn, \seq_put_right:cV, \seq_put_right:cv, \seq_put_right:ce,
+% \seq_put_right:co,
+% \seq_gput_right:Nn, \seq_gput_right:NV, \seq_gput_right:Nv, \seq_gput_right:Ne,
+% \seq_gput_right:No,
+% \seq_gput_right:cn, \seq_gput_right:cV, \seq_gput_right:cv, \seq_gput_right:ce,
+% \seq_gput_right:co,
% }
% \begin{syntax}
% \cs{seq_put_right:Nn} \meta{seq~var} \Arg{item}
@@ -471,10 +471,10 @@
%
% \begin{function}
% {
-% \seq_remove_all:Nn, \seq_remove_all:NV, \seq_remove_all:Nx,
-% \seq_remove_all:cn, \seq_remove_all:cV, \seq_remove_all:cx,
-% \seq_gremove_all:Nn, \seq_gremove_all:NV, \seq_gremove_all:Nx,
-% \seq_gremove_all:cn, \seq_gremove_all:cV, \seq_gremove_all:cx
+% \seq_remove_all:Nn, \seq_remove_all:NV, \seq_remove_all:Ne,
+% \seq_remove_all:cn, \seq_remove_all:cV, \seq_remove_all:ce,
+% \seq_gremove_all:Nn, \seq_gremove_all:NV, \seq_gremove_all:Ne,
+% \seq_gremove_all:cn, \seq_gremove_all:cV, \seq_gremove_all:ce
% }
% \begin{syntax}
% \cs{seq_remove_all:Nn} \meta{seq~var} \Arg{item}
@@ -554,8 +554,10 @@
%
% \begin{function}[TF]
% {
-% \seq_if_in:Nn, \seq_if_in:NV, \seq_if_in:Nv, \seq_if_in:No, \seq_if_in:Nx,
-% \seq_if_in:cn, \seq_if_in:cV, \seq_if_in:cv, \seq_if_in:co, \seq_if_in:cx
+% \seq_if_in:Nn, \seq_if_in:NV, \seq_if_in:Nv, \seq_if_in:Ne,
+% \seq_if_in:No,
+% \seq_if_in:cn, \seq_if_in:cV, \seq_if_in:cv, \seq_if_in:ce,
+% \seq_if_in:co,
% }
% \begin{syntax}
% \cs{seq_if_in:NnTF} \meta{seq~var} \Arg{item} \Arg{true code} \Arg{false code}
@@ -905,12 +907,14 @@
%
% \begin{function}
% {
-% \seq_push:Nn, \seq_push:NV, \seq_push:Nv, \seq_push:No, \seq_push:Nx,
-% \seq_push:cn, \seq_push:cV, \seq_push:cv, \seq_push:co, \seq_push:cx,
-% \seq_gpush:Nn, \seq_gpush:NV, \seq_gpush:Nv,
-% \seq_gpush:No, \seq_gpush:Nx,
-% \seq_gpush:cn, \seq_gpush:cV, \seq_gpush:cv,
-% \seq_gpush:co, \seq_gpush:cx
+% \seq_push:Nn, \seq_push:NV, \seq_push:Nv, \seq_push:Ne,
+% \seq_push:No,
+% \seq_push:cn, \seq_push:cV, \seq_push:cv, \seq_push:ce,
+% \seq_push:co,
+% \seq_gpush:Nn, \seq_gpush:NV, \seq_gpush:Nv, \seq_gpush:Ne,
+% \seq_gpush:No,
+% \seq_gpush:cn, \seq_gpush:cV, \seq_gpush:cv, \seq_gpush:ce,
+% \seq_gpush:co
% }
% \begin{syntax}
% \cs{seq_push:Nn} \meta{seq~var} \Arg{item}
@@ -1083,7 +1087,7 @@
% raised. The definition should always be set globally.
% \end{function}
%
-% \begin{function}{\@@_push_item_def:n, \@@_push_item_def:x}
+% \begin{function}{\@@_push_item_def:n, \@@_push_item_def:e}
% \begin{syntax}
% \cs{@@_push_item_def:n} \Arg{code}
% \end{syntax}
@@ -1234,22 +1238,22 @@
% \begin{macrocode}
\cs_new_protected:Npn \seq_set_from_clist:NN #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{ \s_@@ \clist_map_function:NN #2 \@@_wrap_item:n }
}
\cs_new_protected:Npn \seq_set_from_clist:Nn #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{ \s_@@ \clist_map_function:nN {#2} \@@_wrap_item:n }
}
\cs_new_protected:Npn \seq_gset_from_clist:NN #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{ \s_@@ \clist_map_function:NN #2 \@@_wrap_item:n }
}
\cs_new_protected:Npn \seq_gset_from_clist:Nn #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{ \s_@@ \clist_map_function:nN {#2} \@@_wrap_item:n }
}
\cs_generate_variant:Nn \seq_set_from_clist:NN { Nc }
@@ -1267,7 +1271,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \seq_const_from_clist:Nn #1#2
{
- \tl_const:Nx #1
+ \tl_const:Ne #1
{ \s_@@ \clist_map_function:nN {#2} \@@_wrap_item:n }
}
\cs_generate_variant:Nn \seq_const_from_clist:Nn { c }
@@ -1278,9 +1282,11 @@
% {
% \seq_set_split:Nnn ,
% \seq_set_split:NVn , \seq_set_split:NnV , \seq_set_split:NVV ,
+% \seq_set_split:Nne , \seq_set_split:Nee ,
% \seq_set_split:Nnx , \seq_set_split:Nxx ,
% \seq_gset_split:Nnn,
-% \seq_gset_split:NVn , \seq_gset_split:NnV, \seq_gset_split:NVV,
+% \seq_gset_split:NVn, \seq_gset_split:NnV, \seq_gset_split:NVV,
+% \seq_gset_split:Nne, \seq_gset_split:Nee,
% \seq_gset_split:Nnx, \seq_gset_split:Nxx
% }
% \begin{macro}
@@ -1316,13 +1322,13 @@
% braces which are outermost after space trimming.
% \begin{macrocode}
\cs_new_protected:Npn \seq_set_split:Nnn
- { \@@_set_split:NNNnn \__kernel_tl_set:Nx \tl_trim_spaces:n }
+ { \@@_set_split:NNNnn \__kernel_tl_set:Ne \tl_trim_spaces:n }
\cs_new_protected:Npn \seq_gset_split:Nnn
- { \@@_set_split:NNNnn \__kernel_tl_gset:Nx \tl_trim_spaces:n }
+ { \@@_set_split:NNNnn \__kernel_tl_gset:Ne \tl_trim_spaces:n }
\cs_new_protected:Npn \seq_set_split_keep_spaces:Nnn
- { \@@_set_split:NNNnn \__kernel_tl_set:Nx \exp_not:n }
+ { \@@_set_split:NNNnn \__kernel_tl_set:Ne \exp_not:n }
\cs_new_protected:Npn \seq_gset_split_keep_spaces:Nnn
- { \@@_set_split:NNNnn \__kernel_tl_gset:Nx \exp_not:n }
+ { \@@_set_split:NNNnn \__kernel_tl_gset:Ne \exp_not:n }
\cs_new_protected:Npn \@@_set_split:NNNnn #1#2#3#4#5
{
\tl_if_empty:nTF {#4}
@@ -1342,7 +1348,7 @@
\@@_set_split_end:
\@@_set_split:Nw #2 \prg_do_nothing:
}
- \__kernel_tl_set:Nx \l_@@_internal_a_tl { \l_@@_internal_a_tl }
+ \__kernel_tl_set:Ne \l_@@_internal_a_tl { \l_@@_internal_a_tl }
}
#1 #3 { \s_@@ \l_@@_internal_a_tl }
}
@@ -1354,8 +1360,10 @@
}
\cs_new:Npn \@@_set_split:w #1 \@@_set_split_end:
{ \@@_wrap_item:n {#1} }
-\cs_generate_variant:Nn \seq_set_split:Nnn { NV , NnV , NVV , Nnx , Nxx }
-\cs_generate_variant:Nn \seq_gset_split:Nnn { NV , NnV , NVV , Nnx , Nxx }
+\cs_generate_variant:Nn \seq_set_split:Nnn { NV , NnV , NVV , Nne , Nee }
+\cs_generate_variant:Nn \seq_set_split:Nnn { Nnx , Nxx }
+\cs_generate_variant:Nn \seq_gset_split:Nnn { NV , NnV , NVV , Nne , Nee }
+\cs_generate_variant:Nn \seq_gset_split:Nnn { Nnx , Nxx }
\cs_generate_variant:Nn \seq_set_split_keep_spaces:Nnn { NnV }
\cs_generate_variant:Nn \seq_gset_split_keep_spaces:Nnn { NnV }
% \end{macrocode}
@@ -1395,17 +1403,17 @@
% \subsection{Appending data to either end}
%
% \begin{macro}{
-% \seq_put_left:Nn, \seq_put_left:NV, \seq_put_left:Nv,
+% \seq_put_left:Nn, \seq_put_left:NV, \seq_put_left:Nv, \seq_put_left:Ne,
% \seq_put_left:No, \seq_put_left:Nx,
-% \seq_put_left:cn, \seq_put_left:cV, \seq_put_left:cv,
+% \seq_put_left:cn, \seq_put_left:cV, \seq_put_left:cv,\seq_put_left:ce,
% \seq_put_left:co, \seq_put_left:cx
% }
% \UnitTested
% \begin{macro}{
-% \seq_gput_left:Nn, \seq_gput_left:NV, \seq_gput_left:Nv,
+% \seq_gput_left:Nn, \seq_gput_left:NV, \seq_gput_left:Nv, \seq_gput_left:Ne,
% \seq_gput_left:No, \seq_gput_left:Nx,
-% \seq_gput_left:cn, \seq_gput_left:cV, \seq_gput_left:cv,
-% \seq_gput_left:co, \seq_gput_left:cx
+% \seq_gput_left:cn, \seq_gput_left:cV, \seq_gput_left:cv, \seq_gput_left:ce,
+% \seq_gput_left:co, \seq_put_left:cx
% }
% \begin{macro}[EXP]{\@@_put_left_aux:w}
% When adding to the left of a sequence, remove \cs{s_@@}. This is
@@ -1414,7 +1422,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \seq_put_left:Nn #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{
\exp_not:n { \s_@@ \@@_item:n {#2} }
\exp_not:f { \exp_after:wN \@@_put_left_aux:w #1 }
@@ -1422,17 +1430,17 @@
}
\cs_new_protected:Npn \seq_gput_left:Nn #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{
\exp_not:n { \s_@@ \@@_item:n {#2} }
\exp_not:f { \exp_after:wN \@@_put_left_aux:w #1 }
}
}
\cs_new:Npn \@@_put_left_aux:w \s_@@ { \exp_stop_f: }
-\cs_generate_variant:Nn \seq_put_left:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \seq_put_left:Nn { c , cV , cv , co , cx }
-\cs_generate_variant:Nn \seq_gput_left:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \seq_gput_left:Nn { c , cV , cv , co , cx }
+\cs_generate_variant:Nn \seq_put_left:Nn { NV , Nv , Ne , No , Nx }
+\cs_generate_variant:Nn \seq_put_left:Nn { c , cV , cv , ce , co ,cx }
+\cs_generate_variant:Nn \seq_gput_left:Nn { NV , Nv , Ne , No , Nx }
+\cs_generate_variant:Nn \seq_gput_left:Nn { c , cV , cv , ce , co , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1440,17 +1448,17 @@
%
% \begin{macro}
% {
-% \seq_put_right:Nn, \seq_put_right:NV, \seq_put_right:Nv,
+% \seq_put_right:Nn, \seq_put_right:NV, \seq_put_right:Nv, \seq_put_right:Ne,
% \seq_put_right:No, \seq_put_right:Nx,
-% \seq_put_right:cn, \seq_put_right:cV, \seq_put_right:cv,
+% \seq_put_right:cn, \seq_put_right:cV, \seq_put_right:cv, \seq_put_right:cx,
% \seq_put_right:co, \seq_put_right:cx
% }
% \UnitTested
% \begin{macro}
% {
-% \seq_gput_right:Nn, \seq_gput_right:NV, \seq_gput_right:Nv,
+% \seq_gput_right:Nn, \seq_gput_right:NV, \seq_gput_right:Nv, \seq_gput_right:Ne,
% \seq_gput_right:No, \seq_gput_right:Nx,
-% \seq_gput_right:cn, \seq_gput_right:cV, \seq_gput_right:cv,
+% \seq_gput_right:cn, \seq_gput_right:cV, \seq_gput_right:cv, \seq_gput_right:ce,
% \seq_gput_right:co, \seq_gput_right:cx
% }
% Since there is no trailing marker, adding an item to the right of a
@@ -1460,10 +1468,10 @@
{ \tl_put_right:Nn #1 { \@@_item:n {#2} } }
\cs_new_protected:Npn \seq_gput_right:Nn #1#2
{ \tl_gput_right:Nn #1 { \@@_item:n {#2} } }
-\cs_generate_variant:Nn \seq_gput_right:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \seq_gput_right:Nn { c , cV , cv , co , cx }
-\cs_generate_variant:Nn \seq_put_right:Nn { NV , Nv , No , Nx }
-\cs_generate_variant:Nn \seq_put_right:Nn { c , cV , cv , co , cx }
+\cs_generate_variant:Nn \seq_put_right:Nn { NV , Nv , Ne , No , Nx }
+\cs_generate_variant:Nn \seq_put_right:Nn { c , cV , cv , ce , co , cx }
+\cs_generate_variant:Nn \seq_gput_right:Nn { NV , Nv , Ne , No , Nx }
+\cs_generate_variant:Nn \seq_gput_right:Nn { c , cV , cv , ce , co , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1515,14 +1523,18 @@
%
% \begin{macro}
% {
-% \seq_remove_all:Nn, \seq_remove_all:NV, \seq_remove_all:Nx,
-% \seq_remove_all:cn, \seq_remove_all:cV, \seq_remove_all:cx
+% \seq_remove_all:Nn, \seq_remove_all:NV, \seq_remove_all:Ne,
+% \seq_remove_all:Nx,
+% \seq_remove_all:cn, \seq_remove_all:cV, \seq_remove_all:ce
+% \seq_remove_all:cx,
% }
% \UnitTested
% \begin{macro}
% {
-% \seq_gremove_all:Nn, \seq_gremove_all:NV, \seq_gremove_all:Nx,
-% \seq_gremove_all:cn, \seq_gremove_all:cV, \seq_gremove_all:cx
+% \seq_gremove_all:Nn, \seq_gremove_all:NV, \seq_gremove_all:Ne,
+% \seq_gremove_all:Nx,
+% \seq_gremove_all:cn, \seq_gremove_all:cV, \seq_gremove_all:ce,
+% \seq_gremove_all:Nx
% }
% \UnitTested
% \begin{macro}{\@@_remove_all_aux:NNn}
@@ -1541,9 +1553,9 @@
% \texttt{x}-type expansion (|#1 #2 {#2}|) ensures that nothing is lost.
% \begin{macrocode}
\cs_new_protected:Npn \seq_remove_all:Nn
- { \@@_remove_all_aux:NNn \__kernel_tl_set:Nx }
+ { \@@_remove_all_aux:NNn \__kernel_tl_set:Ne }
\cs_new_protected:Npn \seq_gremove_all:Nn
- { \@@_remove_all_aux:NNn \__kernel_tl_gset:Nx }
+ { \@@_remove_all_aux:NNn \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_remove_all_aux:NNn #1#2#3
{
\@@_push_item_def:n
@@ -1564,8 +1576,10 @@
#1 #2 {#2}
\@@_pop_item_def:
}
-\cs_generate_variant:Nn \seq_remove_all:Nn { NV , Nx , c , cV , cx }
-\cs_generate_variant:Nn \seq_gremove_all:Nn { NV , Nx , c , cV , cx }
+\cs_generate_variant:Nn \seq_remove_all:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \seq_remove_all:Nn { Nx , cx }
+\cs_generate_variant:Nn \seq_gremove_all:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \seq_gremove_all:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1585,15 +1599,15 @@
% last argument \cs{use_ii:nn} vs \cs{use_i:nn}.
% \begin{macrocode}
\cs_new_protected:Npn \seq_set_item:Nnn #1#2#3
- { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_set:Nx \use_i:nn }
+ { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_set:Ne \use_i:nn }
\cs_new_protected:Npn \seq_gset_item:Nnn #1#2#3
- { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_gset:Nx \use_i:nn }
+ { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_gset:Ne \use_i:nn }
\cs_generate_variant:Nn \seq_set_item:Nnn { c }
\cs_generate_variant:Nn \seq_gset_item:Nnn { c }
\prg_new_protected_conditional:Npnn \seq_set_item:Nnn #1#2#3 { TF , T , F }
- { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_set:Nx \use_ii:nn }
+ { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_set:Ne \use_ii:nn }
\prg_new_protected_conditional:Npnn \seq_gset_item:Nnn #1#2#3 { TF , T , F }
- { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_gset:Nx \use_ii:nn }
+ { \@@_set_item:NnnNN #1 {#2} {#3} \__kernel_tl_gset:Ne \use_ii:nn }
\prg_generate_conditional_variant:Nnn \seq_set_item:Nnn { c } { TF , T , F }
\prg_generate_conditional_variant:Nnn \seq_gset_item:Nnn { c } { TF , T , F }
% \end{macrocode}
@@ -1629,7 +1643,7 @@
{
#6
{
- \msg_error:nnxxx { seq } { item-too-large }
+ \msg_error:nneee { seq } { item-too-large }
{ \token_to_str:N #3 } {#2} {#1}
}
{ \prg_return_false: }
@@ -1715,9 +1729,9 @@
% from the stack, and the memory consumption becomes linear.
% \begin{macrocode}
\cs_new_protected:Npn \seq_reverse:N
- { \@@_reverse:NN \__kernel_tl_set:Nx }
+ { \@@_reverse:NN \__kernel_tl_set:Ne }
\cs_new_protected:Npn \seq_greverse:N
- { \@@_reverse:NN \__kernel_tl_gset:Nx }
+ { \@@_reverse:NN \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_reverse:NN #1 #2
{
\cs_set_eq:NN \@@_tmp:w \@@_item:n
@@ -1780,7 +1794,7 @@
{
\int_compare:nNnTF { \seq_count:N #2 } > \c_max_register_int
{
- \msg_error:nnx { seq } { shuffle-too-large }
+ \msg_error:nne { seq } { shuffle-too-large }
{ \token_to_str:N #2 }
}
{
@@ -1793,7 +1807,7 @@
\seq_gclear:N \g_@@_internal_seq
\int_step_inline:nn \l_@@_internal_a_int
{
- \seq_gput_right:Nx \g_@@_internal_seq
+ \seq_gput_right:Ne \g_@@_internal_seq
{ \tex_the:D \tex_toks:D ##1 }
}
\group_end:
@@ -1820,8 +1834,10 @@
%
% \begin{macro}[TF]
% {
-% \seq_if_in:Nn, \seq_if_in:NV, \seq_if_in:Nv, \seq_if_in:No, \seq_if_in:Nx,
-% \seq_if_in:cn, \seq_if_in:cV, \seq_if_in:cv, \seq_if_in:co, \seq_if_in:cx
+% \seq_if_in:Nn, \seq_if_in:NV, \seq_if_in:Nv, \seq_if_in:Ne,
+% \seq_if_in:No, \seq_if_in:Nx,
+% \seq_if_in:cn, \seq_if_in:cV, \seq_if_in:cv,\seq_if_in:ce,
+% \seq_if_in:co, \seq_if_in:cx
% }
% \UnitTested
% \begin{macro}{\@@_if_in:}
@@ -1854,7 +1870,7 @@
\cs_new:Npn \@@_if_in:
{ \prg_break:n { \group_end: \prg_return_true: } }
\prg_generate_conditional_variant:Nnn \seq_if_in:Nn
- { NV , Nv , No , Nx , c , cV , cv , co , cx } { T , F , TF }
+ { NV , Nv , Ne , No , Nx , c , cV , cv , ce , co , cx } { T , F , TF }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1896,7 +1912,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \seq_get_left:NN #1#2
{
- \__kernel_tl_set:Nx #2
+ \__kernel_tl_set:Ne #2
{
\exp_after:wN \@@_get_left:wnw
#1 \@@_item:n { \q_no_value } \s_@@_stop
@@ -1948,7 +1964,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \seq_get_right:NN #1#2
{
- \__kernel_tl_set:Nx #2
+ \__kernel_tl_set:Ne #2
{
\exp_after:wN \use_i_ii:nnn
\exp_after:wN \@@_get_right_loop:nw
@@ -1989,9 +2005,9 @@
% finally stops the loop.
% \begin{macrocode}
\cs_new_protected:Npn \seq_pop_right:NN
- { \@@_pop:NNNN \@@_pop_right:NNN \__kernel_tl_set:Nx }
+ { \@@_pop:NNNN \@@_pop_right:NNN \__kernel_tl_set:Ne }
\cs_new_protected:Npn \seq_gpop_right:NN
- { \@@_pop:NNNN \@@_pop_right:NNN \__kernel_tl_gset:Nx }
+ { \@@_pop:NNNN \@@_pop_right:NNN \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_pop_right:NNN #1#2#3
{
\cs_set_eq:NN \@@_tmp:w \@@_item:n
@@ -2003,7 +2019,7 @@
#2
{
\if_false: { \fi: }
- \__kernel_tl_set:Nx #3
+ \__kernel_tl_set:Ne #3
}
{ } \use_none:nn
\cs_set_eq:NN \@@_item:n \@@_tmp:w
@@ -2051,10 +2067,10 @@
{ \@@_pop_TF:NNNN \@@_pop_left:NNN \tl_gset:Nn #1 #2 }
\prg_new_protected_conditional:Npnn \seq_pop_right:NN #1#2
{ T , F , TF }
- { \@@_pop_TF:NNNN \@@_pop_right:NNN \__kernel_tl_set:Nx #1 #2 }
+ { \@@_pop_TF:NNNN \@@_pop_right:NNN \__kernel_tl_set:Ne #1 #2 }
\prg_new_protected_conditional:Npnn \seq_gpop_right:NN #1#2
{ T , F , TF }
- { \@@_pop_TF:NNNN \@@_pop_right:NNN \__kernel_tl_gset:Nx #1 #2 }
+ { \@@_pop_TF:NNNN \@@_pop_right:NNN \__kernel_tl_gset:Ne #1 #2 }
\prg_generate_conditional_variant:Nnn \seq_pop_left:NN { c }
{ T , F , TF }
\prg_generate_conditional_variant:Nnn \seq_gpop_left:NN { c }
@@ -2174,7 +2190,7 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_push_item_def:n, \@@_push_item_def:x}
+% \begin{macro}{\@@_push_item_def:n, \@@_push_item_def:e}
% \begin{macro}{\@@_push_item_def:}
% \begin{macro}{\@@_pop_item_def:}
% The definition of \cs{@@_item:n} needs to be saved and restored at
@@ -2186,10 +2202,10 @@
\@@_push_item_def:
\cs_gset:Npn \@@_item:n ##1
}
-\cs_new_protected:Npn \@@_push_item_def:x
+\cs_new_protected:Npn \@@_push_item_def:e
{
\@@_push_item_def:
- \cs_gset:Npx \@@_item:n ##1
+ \cs_gset:Npe \@@_item:n ##1
}
\cs_new_protected:Npn \@@_push_item_def:
{
@@ -2269,7 +2285,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \seq_map_variable:NNn #1#2#3
{
- \@@_push_item_def:x
+ \@@_push_item_def:e
{
\tl_set:Nn \exp_not:N #2 {##1}
\exp_not:n {#3}
@@ -2380,9 +2396,9 @@
% semantics.
% \begin{macrocode}
\cs_new_protected:Npn \seq_set_map_x:NNn
- { \@@_set_map_x:NNNn \__kernel_tl_set:Nx }
+ { \@@_set_map_x:NNNn \__kernel_tl_set:Ne }
\cs_new_protected:Npn \seq_gset_map_x:NNn
- { \@@_set_map_x:NNNn \__kernel_tl_gset:Nx }
+ { \@@_set_map_x:NNNn \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_set_map_x:NNNn #1#2#3#4
{
\@@_push_item_def:n { \exp_not:N \@@_item:n {#4} }
@@ -2399,9 +2415,9 @@
% <inline function>.
% \begin{macrocode}
\cs_new_protected:Npn \seq_set_map:NNn
- { \@@_set_map:NNNn \__kernel_tl_set:Nx }
+ { \@@_set_map:NNNn \__kernel_tl_set:Ne }
\cs_new_protected:Npn \seq_gset_map:NNn
- { \@@_set_map:NNNn \__kernel_tl_gset:Nx }
+ { \@@_set_map:NNNn \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \@@_set_map:NNNn #1#2#3#4
{
\@@_push_item_def:n { \exp_not:n { \@@_item:n {#4} } }
@@ -2507,37 +2523,27 @@
% The same functions as for sequences, but with the correct naming.
%
% \begin{macro}{
-% \seq_push:Nn, \seq_push:NV, \seq_push:Nv, \seq_push:No, \seq_push:Nx,
-% \seq_push:cn, \seq_push:cV, \seq_push:cV, \seq_push:co, \seq_push:cx
+% \seq_push:Nn, \seq_push:NV, \seq_push:Nv, \seq_push:Ne,
+% \seq_push:No, \seq_push:Nx,
+% \seq_push:cn, \seq_push:cV, \seq_push:cv, \seq_push:ce,
+% \seq_push:co, \seq_push:cx
% }
% \UnitTested
% \begin{macro}{
-% \seq_gpush:Nn, \seq_gpush:NV, \seq_gpush:Nv, \seq_gpush:No, \seq_gpush:Nx,
-% \seq_gpush:cn, \seq_gpush:cV, \seq_gpush:cv, \seq_gpush:co, \seq_gpush:cx
+% \seq_gpush:Nn, \seq_gpush:NV, \seq_gpush:Nv, \seq_gpush:Ne,
+% \seq_gpush:No, \seq_gpush:Nx,
+% \seq_gpush:cn, \seq_gpush:cV, \seq_gpush:cv, \seq_gpush:ce,
+% \seq_gpush:co, \seq_gpush:cx
% }
% \UnitTested
% Pushing to a sequence is the same as adding on the left.
% \begin{macrocode}
-\cs_new_eq:NN \seq_push:Nn \seq_put_left:Nn
-\cs_new_eq:NN \seq_push:NV \seq_put_left:NV
-\cs_new_eq:NN \seq_push:Nv \seq_put_left:Nv
-\cs_new_eq:NN \seq_push:No \seq_put_left:No
-\cs_new_eq:NN \seq_push:Nx \seq_put_left:Nx
-\cs_new_eq:NN \seq_push:cn \seq_put_left:cn
-\cs_new_eq:NN \seq_push:cV \seq_put_left:cV
-\cs_new_eq:NN \seq_push:cv \seq_put_left:cv
-\cs_new_eq:NN \seq_push:co \seq_put_left:co
-\cs_new_eq:NN \seq_push:cx \seq_put_left:cx
+\cs_new_eq:NN \seq_push:Nn \seq_put_left:Nn
+\cs_generate_variant:Nn \seq_push:Nn { NV , Nv , Ne , c , cV , cv , ce }
+\cs_generate_variant:Nn \seq_push:Nn { No , Nx , co , cx }
\cs_new_eq:NN \seq_gpush:Nn \seq_gput_left:Nn
-\cs_new_eq:NN \seq_gpush:NV \seq_gput_left:NV
-\cs_new_eq:NN \seq_gpush:Nv \seq_gput_left:Nv
-\cs_new_eq:NN \seq_gpush:No \seq_gput_left:No
-\cs_new_eq:NN \seq_gpush:Nx \seq_gput_left:Nx
-\cs_new_eq:NN \seq_gpush:cn \seq_gput_left:cn
-\cs_new_eq:NN \seq_gpush:cV \seq_gput_left:cV
-\cs_new_eq:NN \seq_gpush:cv \seq_gput_left:cv
-\cs_new_eq:NN \seq_gpush:co \seq_gput_left:co
-\cs_new_eq:NN \seq_gpush:cx \seq_gput_left:cx
+\cs_generate_variant:Nn \seq_gpush:Nn { NV , Nv , Ne , c , cV , cv , ce }
+\cs_generate_variant:Nn \seq_gpush:Nn { No , Nx , co , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2585,9 +2591,9 @@
% \UnitTested
% Apply the general \cs{__kernel_chk_tl_type:NnnT}.
% \begin{macrocode}
-\cs_new_protected:Npn \seq_show:N { \@@_show:NN \msg_show:nnxxxx }
+\cs_new_protected:Npn \seq_show:N { \@@_show:NN \msg_show:nneeee }
\cs_generate_variant:Nn \seq_show:N { c }
-\cs_new_protected:Npn \seq_log:N { \@@_show:NN \msg_log:nnxxxx }
+\cs_new_protected:Npn \seq_log:N { \@@_show:NN \msg_log:nneeee }
\cs_generate_variant:Nn \seq_log:N { c }
\cs_new_protected:Npn \@@_show:NN #1#2
{
diff --git a/macros/latex/contrib/l3kernel/l3skip.dtx b/macros/latex/contrib/l3kernel/l3skip.dtx
index 7ce22afb7e..0371b7ecad 100644
--- a/macros/latex/contrib/l3kernel/l3skip.dtx
+++ b/macros/latex/contrib/l3kernel/l3skip.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -189,7 +189,7 @@
% between two integers, with all distances converted to scaled points.
% Thus
% \begin{verbatim}
-% \tl_set:Nx \l_my_tl { \dim_ratio:nn { 5 pt } { 10 pt } }
+% \tl_set:Ne \l_my_tl { \dim_ratio:nn { 5 pt } { 10 pt } }
% \tl_show:N \l_my_tl
% \end{verbatim}
% displays |327680/655360| on the terminal.
@@ -1654,7 +1654,7 @@
{
\int_gincr:N \g__kernel_prg_map_int
\exp_args:NNc \@@_step:NNnnnn
- \cs_gset_protected:Npx
+ \cs_gset_protected:Npe
{ @@_map_ \int_use:N \g__kernel_prg_map_int :w }
{#1}{#2}{#3}
{
@@ -1733,10 +1733,10 @@
\exp_after:wN
\@@_to_decimal:w \dim_use:N \@@_eval:w #1 \@@_eval_end:
}
-\use:x
+\use:e
{
\cs_new:Npn \exp_not:N \@@_to_decimal:w
- ##1 . ##2 \tl_to_str:n { pt }
+ #1 . #2 \tl_to_str:n { pt }
}
{
\int_compare:nNnTF {#2} > \c_zero_int
diff --git a/macros/latex/contrib/l3kernel/l3sort.dtx b/macros/latex/contrib/l3kernel/l3sort.dtx
index b92eddbb35..6837e7fb0e 100644
--- a/macros/latex/contrib/l3kernel/l3sort.dtx
+++ b/macros/latex/contrib/l3kernel/l3sort.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -124,8 +124,8 @@
% \begin{variable}{\g_@@_internal_seq, \g_@@_internal_tl}
% Sorting happens in a group; the result is stored in those global
% variables before being copied outside the group to the proper
-% places. For seq and tl this is more efficient than using \cs{use:x}
-% (or some \cs{exp_args:NNNx}) to smuggle the definition outside the
+% places. For seq and tl this is more efficient than using \cs{use:e}
+% (or some \cs{exp_args:NNNe}) to smuggle the definition outside the
% group since \TeX{} does not need to re-read tokens. For clist we
% don't gain anything since the result is converted from seq to clist
% anyways.
@@ -376,7 +376,7 @@
{
\group_begin:
\@@_main:NNNn \tl_map_inline:Nn \tl_map_break:n #2 {#3}
- \__kernel_tl_gset:Nx \g_@@_internal_tl
+ \__kernel_tl_gset:Ne \g_@@_internal_tl
{ \@@_tl_toks:w \l_@@_min_int ; }
\group_end:
#1 #2 \g_@@_internal_tl
@@ -432,7 +432,7 @@
\int_step_inline:nnn
\l_@@_min_int { \l_@@_top_int - 1 }
{
- \seq_gput_right:Nx \g_@@_internal_seq
+ \seq_gput_right:Ne \g_@@_internal_seq
{ \tex_the:D \tex_toks:D ##1 }
}
\group_end:
@@ -591,14 +591,14 @@
\cs_new_protected:Npn \@@_return_mark:w #1 \s_@@_mark { }
\cs_new_protected:Npn \@@_return_none_error:
{
- \msg_error:nnxx { sort } { return-none }
+ \msg_error:nnee { sort } { return-none }
{ \tex_the:D \tex_toks:D \l_@@_A_int }
{ \tex_the:D \tex_toks:D \l_@@_C_int }
\@@_return_same:w \@@_return_none_error:
}
\cs_new_protected:Npn \@@_return_two_error:
{
- \msg_error:nnxx { sort } { return-two }
+ \msg_error:nnee { sort } { return-two }
{ \tex_the:D \tex_toks:D \l_@@_A_int }
{ \tex_the:D \tex_toks:D \l_@@_C_int }
}
@@ -1026,7 +1026,7 @@
{ \cs_set_eq:NN \toksdef \@@_disabled_toksdef:n }
\cs_new_protected:Npn \@@_disabled_toksdef:n #1
{
- \msg_error:nnx { sort } { toksdef }
+ \msg_error:nne { sort } { toksdef }
{ \token_to_str:N #1 }
\@@_error:
\tex_toksdef:D #1
@@ -1050,7 +1050,7 @@
\cs_new_protected:Npn \@@_too_long_error:NNw #1#2 \fi:
{
\fi:
- \msg_error:nnxxx { sort } { too-large }
+ \msg_error:nneee { sort } { too-large }
{ \token_to_str:N #2 }
{ \int_eval:n { \l_@@_true_max_int - \l_@@_min_int } }
{ \int_eval:n { \l_@@_top_int - \l_@@_min_int } }
diff --git a/macros/latex/contrib/l3kernel/l3str-convert.dtx b/macros/latex/contrib/l3kernel/l3str-convert.dtx
index 6c0b2145e2..f4bfaf2c2c 100644
--- a/macros/latex/contrib/l3kernel/l3str-convert.dtx
+++ b/macros/latex/contrib/l3kernel/l3str-convert.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -468,12 +468,12 @@
% an empty result for the input $-1$.
% \begin{macrocode}
\group_begin:
- \__kernel_tl_set:Nx \l_@@_internal_tl { \tl_to_str:n { 0123456789ABCDEF } }
+ \__kernel_tl_set:Ne \l_@@_internal_tl { \tl_to_str:n { 0123456789ABCDEF } }
\tl_map_inline:Nn \l_@@_internal_tl
{
\tl_map_inline:Nn \l_@@_internal_tl
{
- \tl_const:cx { c_@@_byte_ \int_eval:n {"#1##1} _tl }
+ \tl_const:ce { c_@@_byte_ \int_eval:n {"#1##1} _tl }
{ \char_generate:nn { "#1##1 } { 12 } #1 ##1 }
}
}
@@ -554,7 +554,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_convert_gmap:N #1
{
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN \@@_convert_gmap_loop:NN
\exp_after:wN #1
@@ -579,7 +579,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_convert_gmap_internal:N #1
{
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN \@@_convert_gmap_internal_loop:Nww
\exp_after:wN #1
@@ -599,8 +599,8 @@
%
% \subsubsection{Error-reporting during conversion}
%
-% \begin{macro}{\@@_if_flag_error:nnx}
-% \begin{macro}{\@@_if_flag_no_error:nnx}
+% \begin{macro}{\@@_if_flag_error:nne}
+% \begin{macro}{\@@_if_flag_no_error:nne}
% When converting using the function \cs{str_set_convert:Nnnn}, errors
% should be reported to the user after each step in the
% conversion. Errors are signalled by raising some flag (typically
@@ -608,16 +608,16 @@
% give the user an error, otherwise remove the arguments. On the other
% hand, in the conditional functions \cs{str_set_convert:NnnnTF},
% errors should be suppressed. This is done by changing
-% \cs{@@_if_flag_error:nnx} into \cs{@@_if_flag_no_error:nnx}
+% \cs{@@_if_flag_error:nne} into \cs{@@_if_flag_no_error:nne}
% locally.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_if_flag_error:nnx #1
+\cs_new_protected:Npn \@@_if_flag_error:nne #1
{
\flag_if_raised:nTF {#1}
- { \msg_error:nnx { str } }
+ { \msg_error:nne { str } }
{ \use_none:nn }
}
-\cs_new_protected:Npn \@@_if_flag_no_error:nnx #1#2#3
+\cs_new_protected:Npn \@@_if_flag_no_error:nne #1#2#3
{ \flag_if_raised:nT {#1} { \bool_gset_true:N \g_@@_error_bool } }
% \end{macrocode}
% \end{macro}
@@ -675,7 +675,7 @@
% unescape and decode; encode and escape; exit the group and store the
% result in the user's variable. The various conversion functions all
% act on \cs{g_@@_result_tl}. Errors are silenced for the conditional
-% functions by redefining \cs{@@_if_flag_error:nnx} locally.
+% functions by redefining \cs{@@_if_flag_error:nne} locally.
% \begin{macrocode}
\cs_new_protected:Npn \str_set_convert:Nnnn
{ \@@_convert:nNNnnn { } \tl_set_eq:NN }
@@ -686,7 +686,7 @@
{
\bool_gset_false:N \g_@@_error_bool
\@@_convert:nNNnnn
- { \cs_set_eq:NN \@@_if_flag_error:nnx \@@_if_flag_no_error:nnx }
+ { \cs_set_eq:NN \@@_if_flag_error:nne \@@_if_flag_no_error:nne }
\tl_set_eq:NN #1 {#2} {#3} {#4}
\bool_if:NTF \g_@@_error_bool \prg_return_false: \prg_return_true:
}
@@ -695,7 +695,7 @@
{
\bool_gset_false:N \g_@@_error_bool
\@@_convert:nNNnnn
- { \cs_set_eq:NN \@@_if_flag_error:nnx \@@_if_flag_no_error:nnx }
+ { \cs_set_eq:NN \@@_if_flag_error:nne \@@_if_flag_no_error:nne }
\tl_gset_eq:NN #1 {#2} {#3} {#4}
\bool_if:NTF \g_@@_error_bool \prg_return_false: \prg_return_true:
}
@@ -703,7 +703,7 @@
{
\group_begin:
#1
- \__kernel_tl_gset:Nx \g_@@_result_tl { \__kernel_str_to_other_fast:n {#4} }
+ \__kernel_tl_gset:Ne \g_@@_result_tl { \__kernel_str_to_other_fast:n {#4} }
\exp_after:wN \@@_convert:wwwnn
\tl_to_str:n {#5} /// \s_@@_stop
{ decode } { unescape }
@@ -758,7 +758,7 @@
{
\if_meaning:w #1 #5
\tl_if_empty:nF {#3}
- { \msg_error:nnx { str } { native-escaping } {#3} }
+ { \msg_error:nne { str } { native-escaping } {#3} }
#1
\else:
#4 #2 #1
@@ -808,7 +808,7 @@
{
\cs_if_exist:cF { @@_convert_#2_#3: }
{
- \exp_args:Nx \@@_convert:nnnn
+ \exp_args:Ne \@@_convert:nnnn
{ \@@_convert_lowercase_alphanum:n {#3} }
{#1} {#2} {#3}
}
@@ -830,7 +830,7 @@
}
{
\tl_clear:N \l_@@_internal_tl
- \msg_error:nnxx { str } { unknown-#2 } {#4} {#1}
+ \msg_error:nnee { str } { unknown-#2 } {#4} {#1}
}
}
\cs_if_exist:cF { @@_convert_#3_#1: }
@@ -936,9 +936,9 @@
\cs_new_protected:Npn \@@_convert_unescape_:
{
\flag_clear:n { str_byte }
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{ \exp_args:No \@@_filter_bytes:n \g_@@_result_tl }
- \@@_if_flag_error:nnx { str_byte } { non-byte } { bytes }
+ \@@_if_flag_error:nne { str_byte } { non-byte } { bytes }
}
}
{ \cs_new_protected:Npn \@@_convert_unescape_: { } }
@@ -997,7 +997,7 @@
{
\flag_clear:n { str_error }
\@@_convert_gmap_internal:N \@@_encode_native_char:n
- \@@_if_flag_error:nnx { str_error }
+ \@@_if_flag_error:nne { str_error }
{ native-overflow } { }
}
\cs_new:Npn \@@_encode_native_char:n #1
@@ -1032,7 +1032,7 @@
\cs_new_protected:Npn \@@_convert_decode_clist:
{
\clist_gset:No \g_@@_result_tl \g_@@_result_tl
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_args:No \clist_map_function:nN
\g_@@_result_tl \@@_decode_clist_char:n
@@ -1055,7 +1055,7 @@
\cs_new_protected:Npn \@@_convert_encode_clist:
{
\@@_convert_gmap_internal:N \@@_encode_clist_char:n
- \__kernel_tl_gset:Nx \g_@@_result_tl { \tl_tail:N \g_@@_result_tl }
+ \__kernel_tl_gset:Ne \g_@@_result_tl { \tl_tail:N \g_@@_result_tl }
}
\cs_new:Npn \@@_encode_clist_char:n #1 { , #1 }
% \end{macrocode}
@@ -1179,14 +1179,14 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_convert_decode_eight_bit:n #1
{
- \cs_set:Npx \@@_tmp:w
+ \cs_set:Npe \@@_tmp:w
{
\exp_not:N \@@_decode_eight_bit_aux:Nn
\exp_not:c { g_@@_decode_#1_intarray }
}
\flag_clear:n { str_error }
\@@_convert_gmap:N \@@_tmp:w
- \@@_if_flag_error:nnx { str_error } { decode-8-bit } {#1}
+ \@@_if_flag_error:nne { str_error } { decode-8-bit } {#1}
}
\cs_new:Npn \@@_decode_eight_bit_aux:Nn #1#2
{
@@ -1222,7 +1222,7 @@
\int_new:N \l_@@_modulo_int
\cs_new_protected:Npn \@@_convert_encode_eight_bit:n #1
{
- \cs_set:Npx \@@_tmp:w
+ \cs_set:Npe \@@_tmp:w
{
\exp_not:N \@@_encode_eight_bit_aux:NNn
\exp_not:c { g_@@_encode_#1_intarray }
@@ -1230,7 +1230,7 @@
}
\flag_clear:n { str_error }
\@@_convert_gmap_internal:N \@@_tmp:w
- \@@_if_flag_error:nnx { str_error } { encode-8-bit } {#1}
+ \@@_if_flag_error:nne { str_error } { encode-8-bit } {#1}
}
\cs_new:Npn \@@_encode_eight_bit_aux:NNn #1#2#3
{
@@ -1349,7 +1349,7 @@
\group_begin:
\flag_clear:n { str_error }
\int_set:Nn \tex_escapechar:D { 92 }
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\@@_output_byte:w "
\exp_last_unbraced:Nf \@@_unescape_hex_auxi:N
@@ -1358,7 +1358,7 @@
\prg_break_point:
\@@_output_end:
}
- \@@_if_flag_error:nnx { str_error } { unescape-hex } { }
+ \@@_if_flag_error:nne { str_error } { unescape-hex } { }
\group_end:
}
\cs_new:Npn \@@_unescape_hex_auxi:N #1
@@ -1428,14 +1428,14 @@
\flag_clear:n { str_byte }
\flag_clear:n { str_error }
\int_set:Nn \tex_escapechar:D { 92 }
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN #3 \g_@@_result_tl
#1 ? { ? \prg_break: }
\prg_break_point:
}
- \@@_if_flag_error:nnx { str_byte } { non-byte } { #2 }
- \@@_if_flag_error:nnx { str_error } { unescape-#2 } { }
+ \@@_if_flag_error:nne { str_byte } { non-byte } { #2 }
+ \@@_if_flag_error:nne { str_error } { unescape-#2 } { }
\group_end:
}
\cs_new:Npn #3 ##1#1##2##3
@@ -1514,20 +1514,20 @@
\flag_clear:n { str_byte }
\flag_clear:n { str_error }
\int_set:Nn \tex_escapechar:D { 92 }
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN \@@_unescape_string_newlines:wN
\g_@@_result_tl \prg_break: ^^M ?
\prg_break_point:
}
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN \@@_unescape_string_loop:wNNN
\g_@@_result_tl #1 ?? { ? \prg_break: }
\prg_break_point:
}
- \@@_if_flag_error:nnx { str_byte } { non-byte } { string }
- \@@_if_flag_error:nnx { str_error } { unescape-string } { }
+ \@@_if_flag_error:nne { str_byte } { non-byte } { string }
+ \@@_if_flag_error:nne { str_error } { unescape-string } { }
\group_end:
}
}
@@ -1664,7 +1664,7 @@
% (and including) \texttt{del}, are converted to octal. One backslash
% is added before each parenthesis and backslash.
% \begin{macrocode}
-\str_const:Nx \c_@@_escape_string_str
+\str_const:Ne \c_@@_escape_string_str
{ \c_backslash_str ( ) }
\cs_new_protected:Npn \@@_convert_escape_string:
{ \@@_convert_gmap:N \@@_escape_string_char:N }
@@ -1973,13 +1973,13 @@
\flag_clear:n { str_extra }
\flag_clear:n { str_overlong }
\flag_clear:n { str_overflow }
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN \@@_decode_utf_viii_start:N \g_@@_result_tl
{ \prg_break: \@@_decode_utf_viii_end: }
\prg_break_point:
}
- \@@_if_flag_error:nnx { str_error } { utf8-decode } { }
+ \@@_if_flag_error:nne { str_error } { utf8-decode } { }
}
\cs_new:Npn \@@_decode_utf_viii_start:N #1
{
@@ -2109,7 +2109,7 @@
\cs_new_protected:cpn { @@_convert_encode_utf16: }
{
\@@_encode_utf_xvi_aux:N \@@_output_byte_pair_be:n
- \tl_gput_left:Nx \g_@@_result_tl { ^^fe ^^ff }
+ \tl_gput_left:Ne \g_@@_result_tl { ^^fe ^^ff }
}
\cs_new_protected:cpn { @@_convert_encode_utf16be: }
{ \@@_encode_utf_xvi_aux:N \@@_output_byte_pair_be:n }
@@ -2120,7 +2120,7 @@
\flag_clear:n { str_error }
\cs_set_eq:NN \@@_tmp:w #1
\@@_convert_gmap_internal:N \@@_encode_utf_xvi_char:n
- \@@_if_flag_error:nnx { str_error } { utf16-encode } { }
+ \@@_if_flag_error:nne { str_error } { utf16-encode } { }
}
\cs_new:Npn \@@_encode_utf_xvi_char:n #1
{
@@ -2263,13 +2263,13 @@
\flag_clear:n { str_extra }
\flag_clear:n { str_end }
\cs_set:Npn \@@_tmp:w ##1 ##2 { ` ## #1 }
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN \@@_decode_utf_xvi_pair:NN
#2 \q_@@_nil \q_@@_nil
\prg_break_point:
}
- \@@_if_flag_error:nnx { str_error } { utf16-decode } { }
+ \@@_if_flag_error:nne { str_error } { utf16-decode } { }
}
% \end{macrocode}
% \end{macro}
@@ -2422,7 +2422,7 @@
\cs_new_protected:cpn { @@_convert_encode_utf32: }
{
\@@_convert_gmap_internal:N \@@_encode_utf_xxxii_be:n
- \tl_gput_left:Nx \g_@@_result_tl { ^^00 ^^00 ^^fe ^^ff }
+ \tl_gput_left:Ne \g_@@_result_tl { ^^00 ^^00 ^^fe ^^ff }
}
\cs_new_protected:cpn { @@_convert_encode_utf32be: }
{ \@@_convert_gmap_internal:N \@@_encode_utf_xxxii_be:n }
@@ -2551,13 +2551,13 @@
\flag_clear:n { str_end }
\flag_clear:n { str_error }
\cs_set:Npn \@@_tmp:w ##1 ##2 { ` ## #1 }
- \__kernel_tl_gset:Nx \g_@@_result_tl
+ \__kernel_tl_gset:Ne \g_@@_result_tl
{
\exp_after:wN \@@_decode_utf_xxxii_loop:NNNN
#2 \s_@@_stop \s_@@_stop \s_@@_stop \s_@@_stop
\prg_break_point:
}
- \@@_if_flag_error:nnx { str_error } { utf32-decode } { }
+ \@@_if_flag_error:nne { str_error } { utf32-decode } { }
}
\cs_new:Npn \@@_decode_utf_xxxii_loop:NNNN #1#2#3#4
{
@@ -2639,7 +2639,7 @@
}
\cs_new:Npn \@@_convert_pdfname_bytes_aux:n #1
{ \@@_convert_pdfname_bytes_aux:nnnn #1 }
- \cs_new:Npx \@@_convert_pdfname_bytes_aux:nnnn #1#2#3#4
+ \cs_new:Npe \@@_convert_pdfname_bytes_aux:nnnn #1#2#3#4
{
\c_hash_str \exp_not:N \@@_output_hexadecimal:n {#1}
\c_hash_str \exp_not:N \@@_output_hexadecimal:n {#2}
diff --git a/macros/latex/contrib/l3kernel/l3str.dtx b/macros/latex/contrib/l3kernel/l3str.dtx
index c2498436cb..300a779bd1 100644
--- a/macros/latex/contrib/l3kernel/l3str.dtx
+++ b/macros/latex/contrib/l3kernel/l3str.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -108,8 +108,8 @@
%
% \begin{function}[added = 2015-09-18, updated = 2018-07-28]
% {
-% \str_const:Nn, \str_const:NV, \str_const:Nx,
-% \str_const:cn, \str_const:cV, \str_const:cx
+% \str_const:Nn, \str_const:NV, \str_const:Ne,
+% \str_const:cn, \str_const:cV, \str_const:ce
% }
% \begin{syntax}
% \cs{str_const:Nn} \meta{str~var} \Arg{token list}
@@ -178,10 +178,10 @@
%
% \begin{function}[added = 2015-09-18, updated = 2018-07-28]
% {
-% \str_set:Nn, \str_set:NV, \str_set:Nx,
-% \str_set:cn, \str_set:cV, \str_set:cx,
-% \str_gset:Nn, \str_gset:NV, \str_gset:Nx,
-% \str_gset:cn, \str_gset:cV, \str_gset:cx
+% \str_set:Nn, \str_set:NV, \str_set:Ne,
+% \str_set:cn, \str_set:cV, \str_set:ce,
+% \str_gset:Nn, \str_gset:NV, \str_gset:Ne,
+% \str_gset:cn, \str_gset:cV, \str_gset:ce
% }
% \begin{syntax}
% \cs{str_set:Nn} \meta{str var} \Arg{token list}
@@ -192,10 +192,10 @@
%
% \begin{function}[added = 2015-09-18, updated = 2018-07-28]
% {
-% \str_put_left:Nn, \str_put_left:NV, \str_put_left:Nx,
-% \str_put_left:cn, \str_put_left:cV, \str_put_left:cx,
-% \str_gput_left:Nn, \str_gput_left:NV, \str_gput_left:Nx,
-% \str_gput_left:cn, \str_gput_left:cV, \str_gput_left:cx
+% \str_put_left:Nn, \str_put_left:NV, \str_put_left:Ne,
+% \str_put_left:cn, \str_put_left:cV, \str_put_left:ce,
+% \str_gput_left:Nn, \str_gput_left:NV, \str_gput_left:Ne,
+% \str_gput_left:cn, \str_gput_left:cV, \str_gput_left:ce
% }
% \begin{syntax}
% \cs{str_put_left:Nn} \meta{str var} \Arg{token list}
@@ -207,10 +207,10 @@
%
% \begin{function}[added = 2015-09-18, updated = 2018-07-28]
% {
-% \str_put_right:Nn, \str_put_right:NV, \str_put_right:Nx,
-% \str_put_right:cn, \str_put_right:cV, \str_put_right:cx,
-% \str_gput_right:Nn, \str_gput_right:NV, \str_gput_right:Nx,
-% \str_gput_right:cn, \str_gput_right:cV, \str_gput_right:cx
+% \str_put_right:Nn, \str_put_right:NV, \str_put_right:Ne,
+% \str_put_right:cn, \str_put_right:cV, \str_put_right:Ne,
+% \str_gput_right:Nn, \str_gput_right:NV, \str_gput_right:Ne,
+% \str_gput_right:cn, \str_gput_right:cV, \str_gput_right:ce
% }
% \begin{syntax}
% \cs{str_put_right:Nn} \meta{str var} \Arg{token list}
@@ -595,18 +595,18 @@
% at positions $s$ for $s\le0$ or $s>l$.
% For instance,
% \begin{verbatim}
-% \iow_term:x { \str_range:nnn { abcdef } { 2 } { 5 } }
-% \iow_term:x { \str_range:nnn { abcdef } { -4 } { -1 } }
-% \iow_term:x { \str_range:nnn { abcdef } { -2 } { -1 } }
-% \iow_term:x { \str_range:nnn { abcdef } { 0 } { -1 } }
+% \iow_term:e { \str_range:nnn { abcdef } { 2 } { 5 } }
+% \iow_term:e { \str_range:nnn { abcdef } { -4 } { -1 } }
+% \iow_term:e { \str_range:nnn { abcdef } { -2 } { -1 } }
+% \iow_term:e { \str_range:nnn { abcdef } { 0 } { -1 } }
% \end{verbatim}
% prints \texttt{bcde}, \texttt{cdef}, \texttt{ef}, and an empty
% line to the terminal. The \meta{start index} must always be smaller than
% or equal to the \meta{end index}: if this is not the case then no output
% is generated. Thus
% \begin{verbatim}
-% \iow_term:x { \str_range:nnn { abcdef } { 5 } { 2 } }
-% \iow_term:x { \str_range:nnn { abcdef } { -1 } { -4 } }
+% \iow_term:e { \str_range:nnn { abcdef } { 5 } { 2 } }
+% \iow_term:e { \str_range:nnn { abcdef } { -1 } { -4 } }
% \end{verbatim}
% both yield empty strings.
% \end{function}
@@ -617,25 +617,25 @@
% The behavior of \cs{str_range_ignore_spaces:nnn} is similar, but spaces
% are removed before starting the job. The input
% \begin{verbatim}
-% \iow_term:x { \str_range:nnn { abcdefg } { 2 } { 5 } }
-% \iow_term:x { \str_range:nnn { abcdefg } { 2 } { -3 } }
-% \iow_term:x { \str_range:nnn { abcdefg } { -6 } { 5 } }
-% \iow_term:x { \str_range:nnn { abcdefg } { -6 } { -3 } }
-%
-% \iow_term:x { \str_range:nnn { abc~efg } { 2 } { 5 } }
-% \iow_term:x { \str_range:nnn { abc~efg } { 2 } { -3 } }
-% \iow_term:x { \str_range:nnn { abc~efg } { -6 } { 5 } }
-% \iow_term:x { \str_range:nnn { abc~efg } { -6 } { -3 } }
-%
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { 2 } { 5 } }
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { 2 } { -3 } }
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { -6 } { 5 } }
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { -6 } { -3 } }
-%
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { 2 } { 5 } }
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { 2 } { -3 } }
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { -6 } { 5 } }
-% \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { -6 } { -3 } }
+% \iow_term:e { \str_range:nnn { abcdefg } { 2 } { 5 } }
+% \iow_term:e { \str_range:nnn { abcdefg } { 2 } { -3 } }
+% \iow_term:e { \str_range:nnn { abcdefg } { -6 } { 5 } }
+% \iow_term:e { \str_range:nnn { abcdefg } { -6 } { -3 } }
+%
+% \iow_term:e { \str_range:nnn { abc~efg } { 2 } { 5 } }
+% \iow_term:e { \str_range:nnn { abc~efg } { 2 } { -3 } }
+% \iow_term:e { \str_range:nnn { abc~efg } { -6 } { 5 } }
+% \iow_term:e { \str_range:nnn { abc~efg } { -6 } { -3 } }
+%
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcdefg } { 2 } { 5 } }
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcdefg } { 2 } { -3 } }
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcdefg } { -6 } { 5 } }
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcdefg } { -6 } { -3 } }
+%
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcd~efg } { 2 } { 5 } }
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcd~efg } { 2 } { -3 } }
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcd~efg } { -6 } { 5 } }
+% \iow_term:e { \str_range_ignore_spaces:nnn { abcd~efg } { -6 } { -3 } }
% \end{verbatim}
% will print four instances of |bcde|, four instances of |bc e| and eight
% instances of |bcde|.
@@ -973,20 +973,20 @@
%
% \begin{macro}
% {
-% \str_set:Nn, \str_set:NV, \str_set:Nx,
-% \str_set:cn, \str_set:cV, \str_set:cx,
-% \str_gset:Nn, \str_gset:NV, \str_gset:Nx,
-% \str_gset:cn, \str_gset:cV, \str_gset:cx,
-% \str_const:Nn, \str_const:NV, \str_const:Nx,
-% \str_const:cn, \str_const:cV, \str_const:cx,
-% \str_put_left:Nn, \str_put_left:NV, \str_put_left:Nx,
-% \str_put_left:cn, \str_put_left:cV, \str_put_left:cx,
-% \str_gput_left:Nn, \str_gput_left:NV, \str_gput_left:Nx,
-% \str_gput_left:cn, \str_gput_left:cV, \str_gput_left:cx,
-% \str_put_right:Nn, \str_put_right:NV, \str_put_right:Nx,
-% \str_put_right:cn, \str_put_right:cV, \str_put_right:cx,
-% \str_gput_right:Nn, \str_gput_right:NV, \str_gput_right:Nx,
-% \str_gput_right:cn, \str_gput_right:cV, \str_gput_right:cx
+% \str_set:Nn, \str_set:NV, \str_set:Ne, \str_set:Nx,
+% \str_set:cn, \str_set:cV, \str_set:ce, \str_set:cx,
+% \str_gset:Nn, \str_gset:NV, \str_gset:Ne, \str_gset:Nx,
+% \str_gset:cn, \str_gset:cV, \str_gset:ce, \str_gset:cx,
+% \str_const:Nn, \str_const:NV, \str_const:Ne, \str_const:Nx,
+% \str_const:cn, \str_const:cV, \str_const:ce, \str_const:cx,
+% \str_put_left:Nn, \str_put_left:NV, \str_put_left:Ne, \str_put_left:Nx,
+% \str_put_left:cn, \str_put_left:cV, \str_put_left:ce, \str_put_left:cx,
+% \str_gput_left:Nn, \str_gput_left:NV, \str_gput_left:Ne, \str_gput_left:Nx,
+% \str_gput_left:cn, \str_gput_left:cV, \str_gput_left:ce, \str_gput_left:cx,
+% \str_put_right:Nn, \str_put_right:NV, \str_put_right:Ne, \str_put_right:Nx,
+% \str_put_right:cn, \str_put_right:cV, \str_put_right:ce, \str_put_right:cx,
+% \str_gput_right:Nn, \str_gput_right:NV, \str_gput_right:Ne, \str_gput_right:Nx,
+% \str_gput_right:cn, \str_gput_right:cV, \str_gput_right:ce, \str_gput_right:cx
% }
% Simply convert the token list inputs to \meta{strings}.
% \begin{macrocode}
@@ -995,12 +995,13 @@
{
\tl_if_blank:nF {#1}
{
- \cs_new_protected:cpx { str_ #1 :Nn } ##1##2
+ \cs_new_protected:cpe { str_ #1 :Nn } ##1##2
{
- \exp_not:c { tl_ #1 :Nx } ##1
+ \exp_not:c { tl_ #1 :Ne } ##1
{ \exp_not:N \tl_to_str:n {##2} }
}
- \cs_generate_variant:cn { str_ #1 :Nn } { NV , Nx , cn , cV , cx }
+ \cs_generate_variant:cn { str_ #1 :Nn }
+ { NV , Ne , Nx , cn , cV , ce , cx }
\@@_tmp:n
}
}
@@ -1041,13 +1042,13 @@
% hide in braces.
% \begin{macrocode}
\cs_new_protected:Npn \str_replace_once:Nnn
- { \@@_replace:NNNnn \prg_do_nothing: \__kernel_tl_set:Nx }
+ { \@@_replace:NNNnn \prg_do_nothing: \__kernel_tl_set:Ne }
\cs_new_protected:Npn \str_greplace_once:Nnn
- { \@@_replace:NNNnn \prg_do_nothing: \__kernel_tl_gset:Nx }
+ { \@@_replace:NNNnn \prg_do_nothing: \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \str_replace_all:Nnn
- { \@@_replace:NNNnn \@@_replace_next:w \__kernel_tl_set:Nx }
+ { \@@_replace:NNNnn \@@_replace_next:w \__kernel_tl_set:Ne }
\cs_new_protected:Npn \str_greplace_all:Nnn
- { \@@_replace:NNNnn \@@_replace_next:w \__kernel_tl_gset:Nx }
+ { \@@_replace:NNNnn \@@_replace_next:w \__kernel_tl_gset:Ne }
\cs_generate_variant:Nn \str_replace_once:Nnn { c }
\cs_generate_variant:Nn \str_greplace_once:Nnn { c }
\cs_generate_variant:Nn \str_replace_all:Nnn { c }
@@ -1056,10 +1057,10 @@
{
\tl_if_empty:nTF {#4}
{
- \msg_error:nnx { kernel } { empty-search-pattern } {#5}
+ \msg_error:nne { kernel } { empty-search-pattern } {#5}
}
{
- \use:x
+ \use:e
{
\exp_not:n { \@@_replace_aux:NNNnnn #1 #2 #3 }
{ \tl_to_str:N #3 }
@@ -1215,7 +1216,7 @@
% \begin{macrocode}
\prg_new_protected_conditional:Npnn \str_if_in:Nn #1#2 { T , F , TF }
{
- \use:x
+ \use:e
{ \tl_if_in:nnTF { \tl_to_str:N #1 } { \tl_to_str:n {#2} } }
{ \prg_return_true: } { \prg_return_false: }
}
@@ -1223,7 +1224,7 @@
{ c } { T , F , TF }
\prg_new_protected_conditional:Npnn \str_if_in:nn #1#2 { T , F , TF }
{
- \use:x
+ \use:e
{ \tl_if_in:nnTF { \tl_to_str:n {#1} } { \tl_to_str:n {#2} } }
{ \prg_return_true: } { \prg_return_false: }
}
@@ -1369,7 +1370,7 @@
\int_gincr:N \g__kernel_prg_map_int
\cs_gset_protected:cpn
{ @@_map_ \int_use:N \g__kernel_prg_map_int :w } ##1 {#2}
- \use:x
+ \use:e
{
\exp_not:N \@@_map_inline:NN
\exp_not:c { @@_map_ \int_use:N \g__kernel_prg_map_int :w }
@@ -1390,7 +1391,7 @@
}
\cs_new_protected:Npn \str_map_variable:nNn #1#2#3
{
- \use:x
+ \use:e
{
\exp_not:n { \@@_map_variable:NnN #2 {#3} }
\__kernel_str_to_other_fast:n {#1}
@@ -1992,7 +1993,7 @@
\cs_new:Npn \@@_change_case_codepoint:nN #1#2
{ \@@_change_case_char:fnn { \int_eval:n {`#2} } {#1} {#2} }
\else:
- \cs_new:Npx \@@_change_case_codepoint:nN #1#2
+ \cs_new:Npe \@@_change_case_codepoint:nN #1#2
{
\exp_not:N \int_compare:nNnTF {`#2} > { "80 }
{
@@ -2121,19 +2122,19 @@
% For all of those strings, use \cs{cs_to_str:N} to get characters with
% the correct category code without worries
% \begin{macrocode}
-\str_const:Nx \c_ampersand_str { \cs_to_str:N \& }
-\str_const:Nx \c_atsign_str { \cs_to_str:N \@ }
-\str_const:Nx \c_backslash_str { \cs_to_str:N \\ }
-\str_const:Nx \c_left_brace_str { \cs_to_str:N \{ }
-\str_const:Nx \c_right_brace_str { \cs_to_str:N \} }
-\str_const:Nx \c_circumflex_str { \cs_to_str:N \^ }
-\str_const:Nx \c_colon_str { \cs_to_str:N \: }
-\str_const:Nx \c_dollar_str { \cs_to_str:N \$ }
-\str_const:Nx \c_hash_str { \cs_to_str:N \# }
-\str_const:Nx \c_percent_str { \cs_to_str:N \% }
-\str_const:Nx \c_tilde_str { \cs_to_str:N \~ }
-\str_const:Nx \c_underscore_str { \cs_to_str:N \_ }
-\str_const:Nx \c_zero_str { 0 }
+\str_const:Ne \c_ampersand_str { \cs_to_str:N \& }
+\str_const:Ne \c_atsign_str { \cs_to_str:N \@ }
+\str_const:Ne \c_backslash_str { \cs_to_str:N \\ }
+\str_const:Ne \c_left_brace_str { \cs_to_str:N \{ }
+\str_const:Ne \c_right_brace_str { \cs_to_str:N \} }
+\str_const:Ne \c_circumflex_str { \cs_to_str:N \^ }
+\str_const:Ne \c_colon_str { \cs_to_str:N \: }
+\str_const:Ne \c_dollar_str { \cs_to_str:N \$ }
+\str_const:Ne \c_hash_str { \cs_to_str:N \# }
+\str_const:Ne \c_percent_str { \cs_to_str:N \% }
+\str_const:Ne \c_tilde_str { \cs_to_str:N \~ }
+\str_const:Ne \c_underscore_str { \cs_to_str:N \_ }
+\str_const:Ne \c_zero_str { 0 }
% \end{macrocode}
% \end{variable}
%
diff --git a/macros/latex/contrib/l3kernel/l3styleguide.pdf b/macros/latex/contrib/l3kernel/l3styleguide.pdf
index c3025741c6..16d307e028 100644
--- a/macros/latex/contrib/l3kernel/l3styleguide.pdf
+++ b/macros/latex/contrib/l3kernel/l3styleguide.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3styleguide.tex b/macros/latex/contrib/l3kernel/l3styleguide.tex
index d241392fb9..29c2f76864 100644
--- a/macros/latex/contrib/l3kernel/l3styleguide.tex
+++ b/macros/latex/contrib/l3kernel/l3styleguide.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-08-29}
+\date{Released 2023-10-10}
\begin{document}
diff --git a/macros/latex/contrib/l3kernel/l3syntax-changes.pdf b/macros/latex/contrib/l3kernel/l3syntax-changes.pdf
index ebc9bcab2a..5c4fe8ad1d 100644
--- a/macros/latex/contrib/l3kernel/l3syntax-changes.pdf
+++ b/macros/latex/contrib/l3kernel/l3syntax-changes.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3syntax-changes.tex b/macros/latex/contrib/l3kernel/l3syntax-changes.tex
index 42e1b4c263..dbb6d858b4 100644
--- a/macros/latex/contrib/l3kernel/l3syntax-changes.tex
+++ b/macros/latex/contrib/l3kernel/l3syntax-changes.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-08-29}
+\date{Released 2023-10-10}
\newcommand{\TF}{\textit{(TF)}}
diff --git a/macros/latex/contrib/l3kernel/l3sys.dtx b/macros/latex/contrib/l3kernel/l3sys.dtx
index 5717e60e73..5e57590767 100644
--- a/macros/latex/contrib/l3kernel/l3sys.dtx
+++ b/macros/latex/contrib/l3kernel/l3sys.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -148,7 +148,7 @@
% where the |u| part is only present for \upTeX{}.
% \end{variable}
%
-% \begin{function}[added = 2020-09-24, EXP]{\sys_timer:}
+% \begin{function}[added = 2021-05-12, EXP]{\sys_timer:}
% \begin{syntax}
% \cs{sys_timer:}
% \end{syntax}
@@ -159,6 +159,14 @@
% scaled seconds ($2^{-16}$ seconds).
% \end{function}
%
+% \begin{function}[added = 2021-05-12, EXP, pTF]{\sys_if_timer_exist:}
+% \begin{syntax}
+% \cs{sys_if_timer_exist_p:}
+% \cs{sys_if_timer_exist:TF} \Arg{true code} \Arg{false code}
+% \end{syntax}
+% Tests whether current engine has timer support.
+% \end{function}
+%
% \section{Output format}
%
% \begin{function}[added = 2015-09-19, EXP, pTF]
@@ -249,8 +257,8 @@
% \cs{q_no_value} in the non-branching version.
% Note that quote characters (|"|) \emph{cannot} be used inside the
% \meta{shell command}. The \cs{sys_get_shell:nnNTF} conditional
-% inserts the \texttt{true code} if the shell is available and no quote is
-% detected, and the \texttt{false code} otherwise.
+% inserts the \meta{true code} if the shell is available and no quote is
+% detected, and the \meta{false code} otherwise.
% \end{function}
%
% \begin{variable}[added = 2017-05-27]{\c_sys_shell_escape_int}
@@ -294,14 +302,16 @@
% shell escape is enabled use \cs{sys_if_shell:}.
% \end{function}
%
-% \begin{function}[added = 2017-05-27]{\sys_shell_now:n, \sys_shell_now:x}
+% \begin{function}[added = 2017-05-27]
+% {\sys_shell_now:n, \sys_shell_now:e}
% \begin{syntax}
% \cs{sys_shell_now:n} \Arg{tokens}
% \end{syntax}
% Execute \meta{tokens} through shell escape immediately.
% \end{function}
%
-% \begin{function}[added = 2017-05-27]{\sys_shell_shipout:n, \sys_shell_shipout:x}
+% \begin{function}[added = 2017-05-27]
+% {\sys_shell_shipout:n, \sys_shell_shipout:e}
% \begin{syntax}
% \cs{sys_shell_shipout:n} \Arg{tokens}
% \end{syntax}
@@ -411,7 +421,7 @@
% Set up the engine tests on the basis exactly one test should be true.
% Mainly a case of looking for the appropriate marker primitive.
% \begin{macrocode}
-\str_const:Nx \c_sys_engine_str
+\str_const:Ne \c_sys_engine_str
{
\cs_if_exist:NT \tex_luatexversion:D { luatex }
\cs_if_exist:NT \tex_pdftexversion:D { pdftex }
@@ -448,7 +458,7 @@
% \begin{macrocode}
\group_begin:
\cs_set_eq:NN \lua_now:e \tex_directlua:D
- \str_const:Nx \c_sys_engine_exec_str
+ \str_const:Ne \c_sys_engine_exec_str
{
\sys_if_engine_pdftex:T { pdf }
\sys_if_engine_xetex:T { xe }
@@ -466,7 +476,7 @@
tex
}
\group_end:
-\str_const:Nx \c_sys_engine_format_str
+\str_const:Ne \c_sys_engine_format_str
{
\cs_if_exist:NTF \fmtname
{
@@ -505,7 +515,7 @@
% Various different engines, various different ways to extract the
% data!
% \begin{macrocode}
-\str_const:Nx \c_sys_engine_version_str
+\str_const:Ne \c_sys_engine_version_str
{
\str_case:on \c_sys_engine_str
{
@@ -594,7 +604,7 @@
\tl_if_blank:nF {#1}
{ \tl_gset:Nn \g_@@_backend_tl {#1} }
\@@_load_backend_check:N \g_@@_backend_tl
- \str_const:Nx \c_sys_backend_str { \g_@@_backend_tl }
+ \str_const:Ne \c_sys_backend_str { \g_@@_backend_tl }
\__kernel_sys_configuration_load:n
{ l3backend- \c_sys_backend_str }
}
@@ -610,7 +620,7 @@
{ xetex } { }
}
{
- \msg_error:nnxx { sys } { wrong-backend }
+ \msg_error:nnee { sys } { wrong-backend }
#1 { xetex }
\tl_gset:Nn #1 { xetex }
}
@@ -629,7 +639,7 @@
{ \str_if_eq_p:Vn #1 { luatex } }
{ \str_if_eq_p:Vn #1 { pdftex } }
{
- \msg_error:nnxx { sys } { wrong-backend }
+ \msg_error:nnee { sys } { wrong-backend }
#1 { \sys_if_engine_luatex:TF { luatex } { pdftex } }
\sys_if_engine_luatex:TF
{ \tl_gset:Nn #1 { luatex } }
@@ -645,7 +655,7 @@
{ dvisvgm } { }
}
{
- \msg_error:nnxx { sys } { wrong-backend }
+ \msg_error:nnee { sys } { wrong-backend }
#1 { dvips }
\tl_gset:Nn #1 { dvips }
}
@@ -697,7 +707,7 @@
% \begin{variable}{\c_@@_marker_tl}
% The same idea as the marker for rescanning token lists.
% \begin{macrocode}
-\tl_const:Nx \c_@@_marker_tl { : \token_to_str:N : }
+\tl_const:Ne \c_@@_marker_tl { : \token_to_str:N : }
% \end{macrocode}
% \end{variable}
%
@@ -721,7 +731,7 @@
{
\tl_if_in:nnTF {#1} { " }
{
- \msg_error:nnx
+ \msg_error:nne
{ kernel } { quote-in-shell } {#1}
\prg_return_false:
}
@@ -759,7 +769,7 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{\sys_shell_now:n}
+% \begin{macro}{\sys_shell_now:n, \sys_shell_now:e, \sys_shell_now:x}
% \begin{macro}{\@@_shell_now:e}
% Execute commands through shell escape immediately.
%
@@ -797,13 +807,13 @@ do
\cs_new_protected:Npn \sys_shell_now:n #1
{ \iow_now:Nn \c_@@_shell_stream_int {#1} }
}
-\cs_generate_variant:Nn \sys_shell_now:n { x }
+\cs_generate_variant:Nn \sys_shell_now:n { e, x }
%</tex>
% \end{macrocode}
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\sys_shell_shipout:n}
+% \begin{macro}{\sys_shell_shipout:n, \sys_shell_shipout:e, \sys_shell_shipout:x}
% \begin{macro}{\@@_shell_shipout:e}
% Execute commands through shell escape at shipout.
%
@@ -843,7 +853,7 @@ end
\cs_new_protected:Npn \sys_shell_shipout:n #1
{ \iow_shipout:Nn \c_@@_shell_stream_int {#1} }
}
-\cs_generate_variant:Nn \sys_shell_shipout:n { x }
+\cs_generate_variant:Nn \sys_shell_shipout:n { e , x }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -940,7 +950,7 @@ end
% \begin{macrocode}
\@@_everyjob:n
{
- \str_const:Nx \c_sys_timestamp_str
+ \str_const:Ne \c_sys_timestamp_str
{
\cs_if_exist:NTF \tex_directlua:D
{ \tex_directlua:D { tex.print(pdf.getcreationdate()) } }
@@ -1101,7 +1111,7 @@ end
% \begin{macrocode}
\@@_finalise:n
{
- \str_const:Nx \c_sys_output_str
+ \str_const:Ne \c_sys_output_str
{
\int_compare:nNnTF
{ \cs_if_exist_use:NF \tex_pdfoutput:D { 0 } } > { 0 }
@@ -1126,7 +1136,7 @@ end
\tl_new:N \g_@@_backend_tl
\@@_finalise:n
{
- \__kernel_tl_gset:Nx \g_@@_backend_tl
+ \__kernel_tl_gset:Ne \g_@@_backend_tl
{
\sys_if_engine_xetex:TF
{ xetex }
diff --git a/macros/latex/contrib/l3kernel/l3term-glossary.pdf b/macros/latex/contrib/l3kernel/l3term-glossary.pdf
index c34ddb6bd8..ebe1f75c91 100644
--- a/macros/latex/contrib/l3kernel/l3term-glossary.pdf
+++ b/macros/latex/contrib/l3kernel/l3term-glossary.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/l3term-glossary.tex b/macros/latex/contrib/l3kernel/l3term-glossary.tex
index e0a5780cb8..bd166834ac 100644
--- a/macros/latex/contrib/l3kernel/l3term-glossary.tex
+++ b/macros/latex/contrib/l3kernel/l3term-glossary.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-08-29}
+\date{Released 2023-10-10}
\newcommand{\TF}{\textit{(TF)}}
diff --git a/macros/latex/contrib/l3kernel/l3text-case.dtx b/macros/latex/contrib/l3kernel/l3text-case.dtx
index 07a79e2bb0..0e20a797f0 100644
--- a/macros/latex/contrib/l3kernel/l3text-case.dtx
+++ b/macros/latex/contrib/l3kernel/l3text-case.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -243,15 +243,15 @@
}
\cs_new:Npn \@@_change_case_auxi:nnn #1#2#3
{ \exp_args:No \@@_change_case_BCP:nnn { \tl_to_str:n {#3} } {#1} {#2} }
-\cs_new:Npx \@@_change_case_BCP:nnn #1#2#3
+\cs_new:Npe \@@_change_case_BCP:nnn #1#2#3
{
\exp_not:N \@@_change_case_BCP:nnw
{#2} {#3} #1 \tl_to_str:n { -x- -x- } \exp_not:N \q_@@_stop
}
-\use:x
+\use:e
{
\cs_new:Npn \exp_not:N \@@_change_case_BCP:nnw
- ##1##2##3 \tl_to_str:n { -x- } ##4 \tl_to_str:n { -x- } ##5
+ #1#2#3 \tl_to_str:n { -x- } #4 \tl_to_str:n { -x- } #5
\exp_not:N \q_@@_stop
}
{ \@@_change_case_BCP:nnnnw {#1} {#2} {#4} {#3} #3 - - \q_@@_stop }
@@ -353,9 +353,9 @@
}
\@@_change_case_break:w
}
-\use:x
+\use:e
{
- \cs_new:Npn \exp_not:N \@@_change_case_space:nnw ##1##2 \c_space_tl
+ \cs_new:Npn \exp_not:N \@@_change_case_space:nnw #1#2 \c_space_tl
}
{
\@@_change_case_store:n { ~ }
@@ -427,9 +427,9 @@
\@@_change_case_store:n { {#4} }
\@@_change_case_math_loop:nnNw {#1} {#2} #3
}
-\use:x
+\use:e
{
- \cs_new:Npn \exp_not:N \@@_change_case_math_space:nnNw ##1##2##3
+ \cs_new:Npn \exp_not:N \@@_change_case_math_space:nnNw #1#2#3
\c_space_tl
}
{
diff --git a/macros/latex/contrib/l3kernel/l3text-map.dtx b/macros/latex/contrib/l3kernel/l3text-map.dtx
index b2372d446f..8b3ac6098c 100644
--- a/macros/latex/contrib/l3kernel/l3text-map.dtx
+++ b/macros/latex/contrib/l3kernel/l3text-map.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -168,8 +168,8 @@
}
\@@_map_loop:Nnw #1 { }
}
-\use:x
- { \cs_new:Npn \exp_not:N \@@_map_space:Nnw ##1##2 \c_space_tl }
+\use:e
+ { \cs_new:Npn \exp_not:N \@@_map_space:Nnw #1#2 \c_space_tl }
{
\@@_map_output:Nn #1 {#2}
#1 { ~ }
diff --git a/macros/latex/contrib/l3kernel/l3text-purify.dtx b/macros/latex/contrib/l3kernel/l3text-purify.dtx
index 35d180d042..075b370737 100644
--- a/macros/latex/contrib/l3kernel/l3text-purify.dtx
+++ b/macros/latex/contrib/l3kernel/l3text-purify.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -349,7 +349,7 @@
% \begin{macro}
% {
% \text_declare_purify_equivalent:Nn,
-% \text_declare_purify_equivalent:Nx
+% \text_declare_purify_equivalent:Ne
% }
% \begin{macrocode}
\cs_new_protected:Npn \text_declare_purify_equivalent:Nn #1#2
@@ -357,7 +357,7 @@
\tl_clear_new:c { l_@@_purify_ \token_to_str:N #1 _tl }
\tl_set:cn { l_@@_purify_ \token_to_str:N #1 _tl } {#2}
}
-\cs_generate_variant:Nn \text_declare_purify_equivalent:Nn { Nx }
+\cs_generate_variant:Nn \text_declare_purify_equivalent:Nn { Ne }
% \end{macrocode}
% \end{macro}
%
@@ -436,7 +436,7 @@
\text_declare_purify_equivalent:Nn \\ { }
\tl_map_inline:nn
{ \{ \} \# \$ \% \_ }
- { \text_declare_purify_equivalent:Nx #1 { \cs_to_str:N #1 } }
+ { \text_declare_purify_equivalent:Ne #1 { \cs_to_str:N #1 } }
% \end{macrocode}
% Cross-referencing.
% \begin{macrocode}
@@ -449,7 +449,7 @@
\use:n
{
\group_end:
- \text_declare_purify_equivalent:Nx ~ { \c_space_tl }
+ \text_declare_purify_equivalent:Ne ~ { \c_space_tl }
}
\text_declare_purify_equivalent:Nn \nobreakspace { ~ }
\text_declare_purify_equivalent:Nn \ { ~ }
@@ -471,7 +471,7 @@
\cs_set_protected:Npn \@@_loop:Nn #1#2
{
\quark_if_recursion_tail_stop:N #1
- \text_declare_purify_equivalent:Nx #1
+ \text_declare_purify_equivalent:Ne #1
{
\codepoint_generate:nn {"#2}
{ \char_value_catcode:n {"#2} }
@@ -535,7 +535,7 @@
\cs_set_protected:Npn \@@_loop:Nn #1#2
{
\quark_if_recursion_tail_stop:N #1
- \tl_const:cx { c_@@_purify_ \token_to_str:N #1 _tl }
+ \tl_const:ce { c_@@_purify_ \token_to_str:N #1 _tl }
{ \codepoint_generate:nn {"#2} { \char_value_catcode:n { "#2 } } }
\@@_loop:Nn
}
@@ -569,7 +569,7 @@
\cs_set_protected:Npn \@@_loop:NNn #1#2#3
{
\quark_if_recursion_tail_stop:N #1
- \tl_const:cx
+ \tl_const:ce
{ c_@@_purify_ \token_to_str:N #1 _ \token_to_str:N #2 _tl }
{ \codepoint_generate:nn {"#3} { \char_value_catcode:n { "#3 } } }
\@@_loop:NNn
diff --git a/macros/latex/contrib/l3kernel/l3text.dtx b/macros/latex/contrib/l3kernel/l3text.dtx
index 016c5579a1..8df534cc84 100644
--- a/macros/latex/contrib/l3kernel/l3text.dtx
+++ b/macros/latex/contrib/l3kernel/l3text.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -268,7 +268,7 @@
% \begin{function}[added = 2020-03-05]
% {
% \text_declare_purify_equivalent:Nn ,
-% \text_declare_purify_equivalent:Nx
+% \text_declare_purify_equivalent:Ne
% }
% \begin{syntax}
% \cs{text_declare_purify_equivalent:Nn} \meta{cmd} \Arg{replacement}
@@ -673,7 +673,7 @@
\cs_new:Npn \@@_codepoint_process:nN #1#2 { #1 {#2} }
}
{
- \cs_new:Npx \@@_codepoint_process:nN #1#2
+ \cs_new:Npe \@@_codepoint_process:nN #1#2
{
\exp_not:N \int_compare:nNnTF {`#2} > { "80 }
{
@@ -742,7 +742,7 @@
#2 {#3}
\prg_return_true: \prg_return_false:
}
- \cs_new:Npx \@@_codepoint_from_chars:Nw #1
+ \cs_new:Npe \@@_codepoint_from_chars:Nw #1
{
\exp_not:N \if_int_compare:w `#1 > "80 \exp_not:N \exp_stop_f:
\sys_if_engine_pdftex:TF
@@ -817,7 +817,7 @@
% applied to \cs{cite}.
% \begin{macrocode}
\tl_new:N \l_text_case_exclude_arg_tl
-\tl_set:Nx \l_text_case_exclude_arg_tl
+\tl_set:Ne \l_text_case_exclude_arg_tl
{
\exp_not:n { \begin \cite \end \label \ref }
\exp_not:c { cite ~ }
@@ -1230,7 +1230,7 @@
% token. There is also the case of a straight \tn{@protected@testopt} to
% cover.
% \begin{macrocode}
-\cs_new:Npx \@@_expand_cs:N #1
+\cs_new:Npe \@@_expand_cs:N #1
{
\exp_not:N \str_if_eq:nnTF {#1} { \exp_not:N \protect }
{ \exp_not:N \@@_expand_protect:w }
diff --git a/macros/latex/contrib/l3kernel/l3tl-analysis.dtx b/macros/latex/contrib/l3kernel/l3tl-analysis.dtx
index 385b3db8ac..9cadf04e87 100644
--- a/macros/latex/contrib/l3kernel/l3tl-analysis.dtx
+++ b/macros/latex/contrib/l3kernel/l3tl-analysis.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -233,7 +233,7 @@
% \begin{macrocode}
\group_begin:
\char_set_active_eq:NN \ \scan_stop:
-\tl_const:Nx \c_@@_peek_catcodes_tl
+\tl_const:Ne \c_@@_peek_catcodes_tl
{
\char_generate:nn { 32 } { 3 } 3
\char_generate:nn { 32 } { 4 } 4
@@ -773,7 +773,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_analysis_b:n #1
{
- \__kernel_tl_gset:Nx \g_@@_analysis_result_tl
+ \__kernel_tl_gset:Ne \g_@@_analysis_result_tl
{
\@@_analysis_b_loop:w 0; #1
\prg_break_point:
@@ -837,7 +837,7 @@
% in the input stream, and call \cs{@@_analysis_b_normals:ww}
% with its first argument decremented.
% \begin{macrocode}
-\cs_new:Npx \@@_analysis_b_char:Nn #1#2
+\cs_new:Npe \@@_analysis_b_char:Nn #1#2
{
\exp_not:N \if_meaning:w #2 \exp_not:N \tex_undefined:D
\token_to_str:N D \exp_not:N \else:
@@ -1004,9 +1004,9 @@
% as \cs{tl_show:N} by simply calling that function.
% \begin{macrocode}
\cs_new_protected:Npn \tl_analysis_show:N
- { \@@_analysis_show:NNN \msg_show:nnxxxx \tl_show:N }
+ { \@@_analysis_show:NNN \msg_show:nneeee \tl_show:N }
\cs_new_protected:Npn \tl_analysis_log:N
- { \@@_analysis_show:NNN \msg_log:nnxxxx \tl_log:N }
+ { \@@_analysis_show:NNN \msg_log:nneeee \tl_log:N }
\cs_new_protected:Npn \@@_analysis_show:NNN #1#2#3
{
\tl_if_exist:NTF #3
@@ -1024,9 +1024,9 @@
% No existence test needed here.
% \begin{macrocode}
\cs_new_protected:Npn \tl_analysis_show:n
- { \@@_analysis_show:Nn \msg_show:nnxxxx }
+ { \@@_analysis_show:Nn \msg_show:nneeee }
\cs_new_protected:Npn \tl_analysis_log:n
- { \@@_analysis_show:Nn \msg_log:nnxxxx }
+ { \@@_analysis_show:Nn \msg_log:nneeee }
\cs_new_protected:Npn \@@_analysis_show:Nn #1#2
{
\@@_analysis:n {#2}
@@ -1234,7 +1234,7 @@
\cs_new_protected:Npn \@@_peek_analysis_loop:NNn #1#2#3
{
\group_begin:
- \tl_set:Nx \l_@@_peek_code_tl
+ \tl_set:Ne \l_@@_peek_code_tl
{
\exp_not:c
{ @@_analysis_map_ \int_use:N \g__kernel_prg_map_int :nnN }
@@ -1266,8 +1266,8 @@
% \tn{outer} macros, hence the need for \cs{exp_after:wN} and
% \cs{exp_not:N} in the code above, which allows the next function to
% safely grab the token as an argument. We run some code that is
-% expanded using the primitive \cs{cs_set_nopar:Npx} rather than
-% \cs{tl_set:Nx} to avoid grabbing it as an argument as |#1| may be
+% expanded using the primitive \cs{cs_set_nopar:Npe} rather than
+% \cs{tl_set:Ne} to avoid grabbing it as an argument as |#1| may be
% \tn{outer}. To allow~|#1| as an argument of the user's function
% (stored in \cs{l_@@_peek_code_tl}), we set it equal to
% \cs{scan_stop:}, but we do it at the last minute because |#1|
@@ -1293,7 +1293,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_peek_analysis_exp:N #1
{
- \cs_set_nopar:Npx \l_@@_peek_code_tl
+ \cs_set_nopar:Npe \l_@@_peek_code_tl
{
\tex_let:D \exp_not:N #1 \scan_stop:
\exp_not:o \l_@@_peek_code_tl
@@ -1315,7 +1315,7 @@
}
\l_@@_peek_code_tl
}
-\cs_new:Npx \@@_peek_analysis_exp_active:N #1
+\cs_new:Npe \@@_peek_analysis_exp_active:N #1
{ { \exp_not:N \int_value:w `#1 } \token_to_str:N D }
% \end{macrocode}
% For normal non-expandable tokens we must distinguish characters
@@ -1366,7 +1366,7 @@
% \begin{macrocode}
\group_begin:
\char_set_active_eq:NN \ \scan_stop:
-\cs_new_protected:Npx \@@_peek_analysis_char:N #1
+\cs_new_protected:Npe \@@_peek_analysis_char:N #1
{
\cs_set_eq:NN
\char_generate:nn { 32 } { 13 }
@@ -1374,7 +1374,7 @@
\tex_lccode:D `#1 = 32 \exp_stop_f:
\tex_lowercase:D
{
- \tl_put_right:Nx \exp_not:N \l_@@_peek_code_tl
+ \tl_put_right:Ne \exp_not:N \l_@@_peek_code_tl
{ \exp_not:n { \@@_analysis_b_char:Nn \use_none:n } {#1} }
}
\exp_not:n
@@ -1501,7 +1501,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_peek_analysis_active_str:n #1
{
- \tl_put_right:Nx \l_@@_peek_code_tl
+ \tl_put_right:Ne \l_@@_peek_code_tl
{
{ \char_generate:nn { `#1 } { 13 } }
{ \int_value:w `#1 }
@@ -1521,7 +1521,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_peek_analysis_explicit:n #1
{
- \tl_put_right:Nx \l_@@_peek_code_tl
+ \tl_put_right:Ne \l_@@_peek_code_tl
{
\if_meaning:w \l_peek_token \c_space_token
{ ~ } { 32 } \token_to_str:N A
@@ -1601,7 +1601,7 @@
\cs_new_protected:Npn \@@_peek_analysis_collect_end:NNN #1#2#3
{
#1 #2
- \tl_put_right:Nx \l_@@_peek_code_tl
+ \tl_put_right:Ne \l_@@_peek_code_tl
{
{ \exp_not:N \exp_not:n { \exp_not:c { \l_@@_internal_a_tl } } }
{ -1 }
@@ -1619,7 +1619,7 @@
% and its meaning are too long to fit in one line
% of the terminal, the end is replaced by this token list.
% \begin{macrocode}
-\tl_const:Nx \c_@@_analysis_show_etc_str % (
+\tl_const:Ne \c_@@_analysis_show_etc_str % (
{ \token_to_str:N \ETC.) }
% \end{macrocode}
% \end{variable}
diff --git a/macros/latex/contrib/l3kernel/l3tl.dtx b/macros/latex/contrib/l3kernel/l3tl.dtx
index 06226fd7ba..e606c3c558 100644
--- a/macros/latex/contrib/l3kernel/l3tl.dtx
+++ b/macros/latex/contrib/l3kernel/l3tl.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -97,7 +97,11 @@
% \meta{tl~var} is initially empty.
% \end{function}
%
-% \begin{function}{\tl_const:Nn, \tl_const:Nx, \tl_const:cn, \tl_const:cx}
+% \begin{function}
+% {
+% \tl_const:Nn, \tl_const:Ne,
+% \tl_const:cn, \tl_const:ce
+% }
% \begin{syntax}
% \cs{tl_const:Nn} \meta{tl~var} \Arg{token list}
% \end{syntax}
@@ -161,12 +165,12 @@
%
% \begin{function}
% {
-% \tl_set:Nn, \tl_set:NV, \tl_set:Nv, \tl_set:No, \tl_set:Ne, \tl_set:Nf, \tl_set:Nx,
-% \tl_set:cn, \tl_set:cV, \tl_set:cv, \tl_set:co, \tl_set:ce, \tl_set:cf, \tl_set:cx,
+% \tl_set:Nn, \tl_set:NV, \tl_set:Nv, \tl_set:No, \tl_set:Ne, \tl_set:Nf,
+% \tl_set:cn, \tl_set:cV, \tl_set:cv, \tl_set:co, \tl_set:ce, \tl_set:cf,
% \tl_gset:Nn, \tl_gset:NV, \tl_gset:Nv,
-% \tl_gset:No, \tl_gset:Ne, \tl_gset:Nf, \tl_gset:Nx,
+% \tl_gset:No, \tl_gset:Ne, \tl_gset:Nf,
% \tl_gset:cn, \tl_gset:cV, \tl_gset:cv,
-% \tl_gset:co, \tl_gset:ce, \tl_gset:cf, \tl_gset:cx
+% \tl_gset:co, \tl_gset:ce, \tl_gset:cf
% }
% \begin{syntax}
% \cs{tl_set:Nn} \meta{tl~var} \Arg{tokens}
@@ -177,10 +181,14 @@
%
% \begin{function}
% {
-% \tl_put_left:Nn, \tl_put_left:NV, \tl_put_left:Nv, \tl_put_left:No, \tl_put_left:Nx,
-% \tl_put_left:cn, \tl_put_left:cV, \tl_put_left:cv, \tl_put_left:co, \tl_put_left:cx,
-% \tl_gput_left:Nn, \tl_gput_left:NV, \tl_gput_left:Nv, \tl_gput_left:No, \tl_gput_left:Nx,
-% \tl_gput_left:cn, \tl_gput_left:cV, \tl_gput_left:cv, \tl_gput_left:co, \tl_gput_left:cx
+% \tl_put_left:Nn, \tl_put_left:NV, \tl_put_left:Nv, \tl_put_left:Ne,
+% \tl_put_left:No,
+% \tl_put_left:cn, \tl_put_left:cV, \tl_put_left:cv, \tl_put_left:ce,
+% \tl_put_left:co,
+% \tl_gput_left:Nn, \tl_gput_left:NV, \tl_gput_left:Nv, \tl_gput_left:Ne,
+% \tl_gput_left:No,
+% \tl_gput_left:cn, \tl_gput_left:cV, \tl_gput_left:cv, \tl_gput_left:ce
+% \tl_gput_left:co
% }
% \begin{syntax}
% \cs{tl_put_left:Nn} \meta{tl~var} \Arg{tokens}
@@ -191,10 +199,14 @@
%
% \begin{function}
% {
-% \tl_put_right:Nn, \tl_put_right:NV, \tl_put_right:Nv, \tl_put_right:No, \tl_put_right:Nx,
-% \tl_put_right:cn, \tl_put_right:cV, \tl_put_right:cv, \tl_put_right:co, \tl_put_right:cx,
-% \tl_gput_right:Nn, \tl_gput_right:NV, \tl_gput_right:Nv, \tl_gput_right:No, \tl_gput_right:Nx,
-% \tl_gput_right:cn, \tl_gput_right:cV, \tl_gput_right:cv, \tl_gput_right:co, \tl_gput_right:cx
+% \tl_put_right:Nn, \tl_put_right:NV, \tl_put_right:Nv, \tl_put_right:Ne,
+% \tl_put_right:No,
+% \tl_put_right:cn, \tl_put_right:cV, \tl_put_right:cv, \tl_put_right:ce,
+% \tl_put_right:co,
+% \tl_gput_right:Nn, \tl_gput_right:NV, \tl_gput_right:Nv, \tl_gput_right:Ne,
+% \tl_gput_right:No,
+% \tl_gput_right:cn, \tl_gput_right:cV, \tl_gput_right:cv, \tl_gput_right:ce
+% \tl_gput_right:co
% }
% \begin{syntax}
% \cs{tl_put_right:Nn} \meta{tl~var} \Arg{tokens}
@@ -249,7 +261,7 @@
% contain and the category codes of those characters). Thus for example
% \begin{verbatim}
% \tl_set:Nn \l_tmpa_tl { abc }
-% \tl_set:Nx \l_tmpb_tl { \tl_to_str:n { abc } }
+% \tl_set:Ne \l_tmpb_tl { \tl_to_str:n { abc } }
% \tl_if_eq:NNTF \l_tmpa_tl \l_tmpb_tl { true } { false }
% \end{verbatim}
% yields \texttt{false}.
@@ -269,7 +281,10 @@
% \end{function}
%
% \begin{function}[TF]
-% {\tl_if_eq:nn, \tl_if_eq:Vn, \tl_if_eq:nV, \tl_if_eq:xn, \tl_if_eq:nx}
+% {
+% \tl_if_eq:nn, \tl_if_eq:nV, \tl_if_eq:ne, \tl_if_eq:Vn, \tl_if_eq:en,
+% \tl_if_eq:ee
+% }
% \begin{syntax}
% \cs{tl_if_eq:nnTF} \Arg{token list_1} \Arg{token list_2} \Arg{true code} \Arg{false code}
% \end{syntax}
@@ -594,7 +609,11 @@
% \end{function}
%
% \begin{function}[added = 2011-07-09, updated = 2012-06-25, EXP]
-% {\tl_trim_spaces:n, \tl_trim_spaces:o}
+% {
+% \tl_trim_spaces:n, \tl_trim_spaces:V, \tl_trim_spaces:v,
+% \tl_trim_spaces:e,
+% \tl_trim_spaces:o
+% }
% \begin{syntax}
% \cs{tl_trim_spaces:n} \Arg{token list}
% \end{syntax}
@@ -646,7 +665,7 @@
% \end{texnote}
% \end{function}
%
-% \begin{function}[updated = 2015-08-07]{\tl_show:n, \tl_show:x}
+% \begin{function}[updated = 2015-08-07]{\tl_show:n, \tl_show:e}
% \begin{syntax}
% \cs{tl_show:n} \Arg{token list}
% \end{syntax}
@@ -665,7 +684,8 @@
% \cs{tl_show:N} which displays the result in the terminal.
% \end{function}
%
-% \begin{function}[added = 2014-08-22, updated = 2015-08-07]{\tl_log:n, \tl_log:x}
+% \begin{function}[added = 2014-08-22, updated = 2015-08-07]
+% {\tl_log:n, \tl_log:e, \tl_log:x}
% \begin{syntax}
% \cs{tl_log:n} \Arg{token list}
% \end{syntax}
@@ -997,17 +1017,17 @@
% \end{verbatim}
% Here are some more interesting examples. The calls
% \begin{verbatim}
-% \iow_term:x { \tl_range:nnn { abcd{e{}}fg } { 2 } { 5 } }
-% \iow_term:x { \tl_range:nnn { abcd{e{}}fg } { 2 } { -3 } }
-% \iow_term:x { \tl_range:nnn { abcd{e{}}fg } { -6 } { 5 } }
-% \iow_term:x { \tl_range:nnn { abcd{e{}}fg } { -6 } { -3 } }
+% \iow_term:e { \tl_range:nnn { abcd{e{}}fg } { 2 } { 5 } }
+% \iow_term:e { \tl_range:nnn { abcd{e{}}fg } { 2 } { -3 } }
+% \iow_term:e { \tl_range:nnn { abcd{e{}}fg } { -6 } { 5 } }
+% \iow_term:e { \tl_range:nnn { abcd{e{}}fg } { -6 } { -3 } }
% \end{verbatim}
% are all equivalent and will print |bcd{e{}}| on the terminal; similarly
% \begin{verbatim}
-% \iow_term:x { \tl_range:nnn { abcd~{e{}}fg } { 2 } { 5 } }
-% \iow_term:x { \tl_range:nnn { abcd~{e{}}fg } { 2 } { -3 } }
-% \iow_term:x { \tl_range:nnn { abcd~{e{}}fg } { -6 } { 5 } }
-% \iow_term:x { \tl_range:nnn { abcd~{e{}}fg } { -6 } { -3 } }
+% \iow_term:e { \tl_range:nnn { abcd~{e{}}fg } { 2 } { 5 } }
+% \iow_term:e { \tl_range:nnn { abcd~{e{}}fg } { 2 } { -3 } }
+% \iow_term:e { \tl_range:nnn { abcd~{e{}}fg } { -6 } { 5 } }
+% \iow_term:e { \tl_range:nnn { abcd~{e{}}fg } { -6 } { -3 } }
% \end{verbatim}
% are all equivalent and will print |bcd {e{}}| on the
% terminal (note the space in the middle). To the contrary,
@@ -1074,13 +1094,13 @@
% \begin{function}[updated = 2011-08-11]
% {
% \tl_replace_once:Nnn, \tl_replace_once:NVn, \tl_replace_once:NnV,
-% \tl_replace_once:Nxn, \tl_replace_once:Nnx, \tl_replace_once:Nxx,
+% \tl_replace_once:Nen, \tl_replace_once:Nne, \tl_replace_once:Nee,
% \tl_replace_once:cnn, \tl_replace_once:cVn, \tl_replace_once:cnV,
-% \tl_replace_once:cxn, \tl_replace_once:cnx, \tl_replace_once:cxx,
-% \tl_greplace_once:Nnn, \tl_greplace_once:NVn, \tl_rgeplace_once:NnV,
-% \tl_greplace_once:Nxn, \tl_greplace_once:Nnx, \tl_greplace_once:Nxx,
+% \tl_replace_once:cen, \tl_replace_once:cne, \tl_replace_once:cee,
+% \tl_greplace_once:Nnn, \tl_greplace_once:NVn, \tl_greplace_once:NnV,
+% \tl_greplace_once:Nen, \tl_greplace_once:Nne, \tl_greplace_once:Nee,
% \tl_greplace_once:cnn, \tl_greplace_once:cVn, \tl_greplace_once:cnV,
-% \tl_greplace_once:cxn, \tl_greplace_once:cnx, \tl_greplace_once:cxx
+% \tl_greplace_once:cen, \tl_greplace_once:cne, \tl_greplace_once:cee
% }
% \begin{syntax}
% \cs{tl_replace_once:Nnn} \meta{tl~var} \Arg{old tokens} \Arg{new tokens}
@@ -1094,14 +1114,14 @@
%
% \begin{function}[updated = 2011-08-11]
% {
-% \tl_replace_all:Nnn, \tl_replace_all:NVn, \tl_replace_all:NnV,
-% \tl_replace_all:Nxn, \tl_replace_all:Nnx, \tl_replace_all:Nxx,
-% \tl_replace_all:cnn, \tl_replace_all:cVn, \tl_replace_all:cnV,
-% \tl_replace_all:cxn, \tl_replace_all:cnx, \tl_replace_all:cxx,
-% \tl_greplace_all:Nnn, \tl_greplace_all:NVn, \tl_greplace_all:cnV,
-% \tl_greplace_all:Nxn, \tl_greplace_all:Nnx, \tl_greplace_all:Nxx,
-% \tl_greplace_all:cnn, \tl_greplace_all:cVn, \tl_greplace_all:cnV,
-% \tl_greplace_all:cxn, \tl_greplace_all:cnx, \tl_greplace_all:cxx
+% \tl_replace_all:Nnn, \tl_replace_all:NVn, \tl_replace_all:NnV,
+% \tl_replace_all:Nen, \tl_replace_all:Nne, \tl_replace_all:Nee,
+% \tl_replace_all:cnn, \tl_replace_all:cVn, \tl_replace_all:cnV,
+% \tl_replace_all:cen, \tl_replace_all:cne, \tl_replace_all:cee,
+% \tl_greplace_all:Nnn, \tl_greplace_all:NVn, \tl_greplace_all:NnV,
+% \tl_greplace_all:Nen, \tl_greplace_all:Nne, \tl_greplace_all:Nee,
+% \tl_greplace_all:cnn, \tl_greplace_all:cVn, \tl_greplace_all:cnV,
+% \tl_greplace_all:cen, \tl_greplace_all:cne, \tl_greplace_all:cee
% }
% \begin{syntax}
% \cs{tl_replace_all:Nnn} \meta{tl~var} \Arg{old tokens} \Arg{new tokens}
@@ -1119,10 +1139,10 @@
%
% \begin{function}[updated = 2011-08-11]
% {
-% \tl_remove_once:Nn, \tl_remove_once:NV, \tl_remove_once:Nx,
-% \tl_remove_once:cn, \tl_remove_once:cV, \tl_remove_once:cx,
-% \tl_gremove_once:Nn, \tl_gremove_once:NV, \tl_gremove_once:Nx
-% \tl_gremove_once:cn, \tl_gremove_once:cV, \tl_gremove_once:cx
+% \tl_remove_once:Nn, \tl_remove_once:NV, \tl_remove_once:Ne,
+% \tl_remove_once:cn, \tl_remove_once:cV, \tl_remove_once:ce,
+% \tl_gremove_once:Nn, \tl_gremove_once:NV, \tl_gremove_once:Ne,
+% \tl_gremove_once:cn, \tl_gremove_once:cV, \tl_gremove_once:ce
% }
% \begin{syntax}
% \cs{tl_remove_once:Nn} \meta{tl~var} \Arg{tokens}
@@ -1135,10 +1155,10 @@
%
% \begin{function}[updated = 2011-08-11]
% {
-% \tl_remove_all:Nn, \tl_remove_all:NV, \tl_remove_all:Nx,
-% \tl_remove_all:cn, \tl_remove_all:cV, \tl_remove_all:cx,
-% \tl_gremove_all:Nn, \tl_gremove_all:NV, \tl_gremove_all:Nx
-% \tl_gremove_all:cn, \tl_gremove_all:cV, \tl_gremove_all:cx
+% \tl_remove_all:Nn, \tl_remove_all:NV, \tl_remove_all:Ne,
+% \tl_remove_all:cn, \tl_remove_all:cV, \tl_remove_all:ce,
+% \tl_gremove_all:Nn, \tl_gremove_all:NV, \tl_gremove_all:Ne,
+% \tl_gremove_all:cn, \tl_gremove_all:cV, \tl_gremove_all:ce,
% }
% \begin{syntax}
% \cs{tl_remove_all:Nn} \meta{tl~var} \Arg{tokens}
@@ -1169,10 +1189,14 @@
%
% \begin{function}[updated = 2015-08-11]
% {
-% \tl_set_rescan:Nnn, \tl_set_rescan:NnV, \tl_set_rescan:Nno, \tl_set_rescan:Nnx,
-% \tl_set_rescan:cnn, \tl_set_rescan:cnV, \tl_set_rescan:cno, \tl_set_rescan:cnx,
-% \tl_gset_rescan:Nnn, \tl_gset_rescan:NnV, \tl_gset_rescan:Nno, \tl_gset_rescan:Nnx,
-% \tl_gset_rescan:cnn, \tl_gset_rescan:cnV, \tl_gset_rescan:cno, \tl_gset_rescan:cnx
+% \tl_set_rescan:Nnn, \tl_set_rescan:NnV, \tl_set_rescan:Nne,
+% \tl_set_rescan:Nno,
+% \tl_set_rescan:cnn, \tl_set_rescan:cnV, \tl_set_rescan:cne,
+% \tl_set_rescan:cno,
+% \tl_gset_rescan:Nnn, \tl_gset_rescan:NnV, \tl_gset_rescan:Nne,
+% \tl_gset_rescan:Nno,
+% \tl_gset_rescan:cnn, \tl_gset_rescan:cnV, \tl_gset_rescan:cne,
+% \tl_gset_rescan:cno,
% }
% \begin{syntax}
% \cs{tl_set_rescan:Nnn} \meta{tl~var} \Arg{setup} \Arg{tokens}
@@ -1300,12 +1324,12 @@
%
% \subsection{Functions}
%
-% \begin{macro}{\__kernel_tl_set:Nx,\__kernel_tl_gset:Nx}
+% \begin{macro}{\__kernel_tl_set:Ne,\__kernel_tl_gset:Ne}
% These two are supplied to get better performance for macros which would
-% otherwise use \cs{tl_set:Nx} or \cs{tl_gset:Nx} internally.
+% otherwise use \cs{tl_set:Ne} or \cs{tl_gset:Ne} internally.
% \begin{macrocode}
-\cs_new_eq:NN \__kernel_tl_set:Nx \cs_set_nopar:Npx
-\cs_new_eq:NN \__kernel_tl_gset:Nx \cs_gset_nopar:Npx
+\cs_new_eq:NN \__kernel_tl_set:Ne \cs_set_nopar:Npe
+\cs_new_eq:NN \__kernel_tl_gset:Ne \cs_gset_nopar:Npe
% \end{macrocode}
% \end{macro}
%
@@ -1322,23 +1346,22 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\tl_const:Nn, \tl_const:Nx, \tl_const:cn, \tl_const:cx}
-% Constants are also easy to generate. They use \cs{cs_gset_nopar:Npx} instead
-% of \cs{__kernel_tl_gset:Nx} so that the correct scope checking is applied if
+% \begin{macro}
+% {
+% \tl_const:Nn, \tl_const:Ne, \tl_const:Nx,
+% \tl_const:cn, \tl_const:ce, \tl_const:cx
+% }
+% Constants are also easy to generate. They use \cs{cs_gset_nopar:Npe} instead
+% of \cs{__kernel_tl_gset:Ne} so that the correct scope checking is applied if
% \pkg{l3debug} is used.
% \begin{macrocode}
\cs_new_protected:Npn \tl_const:Nn #1#2
{
\__kernel_chk_if_free_cs:N #1
- \cs_gset_nopar:Npx #1 { \__kernel_exp_not:w {#2} }
- }
-\cs_new_protected:Npn \tl_const:Nx #1#2
- {
- \__kernel_chk_if_free_cs:N #1
- \cs_gset_nopar:Npx #1 {#2}
+ \cs_gset_nopar:Npe #1 { \__kernel_exp_not:w {#2} }
}
-\cs_generate_variant:Nn \tl_const:Nn { c }
-\cs_generate_variant:Nn \tl_const:Nx { c }
+\cs_generate_variant:Nn \tl_const:Nn { Ne , c , ce }
+\cs_generate_variant:Nn \tl_const:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
%
@@ -1396,7 +1419,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \tl_concat:NNN #1#2#3
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{
\__kernel_exp_not:w \exp_after:wN {#2}
\__kernel_exp_not:w \exp_after:wN {#3}
@@ -1404,7 +1427,7 @@
}
\cs_new_protected:Npn \tl_gconcat:NNN #1#2#3
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{
\__kernel_exp_not:w \exp_after:wN {#2}
\__kernel_exp_not:w \exp_after:wN {#3}
@@ -1439,7 +1462,7 @@
% \begin{macrocode}
\group_begin:
\tex_catcode:D `- = 11 ~
-\tl_const:Nx \c_novalue_tl { - NoValue \token_to_str:N - }
+\tl_const:Ne \c_novalue_tl { - NoValue \token_to_str:N - }
\group_end:
% \end{macrocode}
% \end{variable}
@@ -1471,173 +1494,203 @@
% by hand as it is used quite a lot.
% \begin{macrocode}
\cs_new_protected:Npn \tl_set:Nn #1#2
- { \__kernel_tl_set:Nx #1 { \__kernel_exp_not:w {#2} } }
+ { \__kernel_tl_set:Ne #1 { \__kernel_exp_not:w {#2} } }
\cs_new_protected:Npn \tl_set:No #1#2
- { \__kernel_tl_set:Nx #1 { \__kernel_exp_not:w \exp_after:wN {#2} } }
-\cs_new_protected:Npn \tl_set:Nx #1#2
- { \__kernel_tl_set:Nx #1 {#2} }
+ { \__kernel_tl_set:Ne #1 { \__kernel_exp_not:w \exp_after:wN {#2} } }
\cs_new_protected:Npn \tl_gset:Nn #1#2
- { \__kernel_tl_gset:Nx #1 { \__kernel_exp_not:w {#2} } }
+ { \__kernel_tl_gset:Ne #1 { \__kernel_exp_not:w {#2} } }
\cs_new_protected:Npn \tl_gset:No #1#2
- { \__kernel_tl_gset:Nx #1 { \__kernel_exp_not:w \exp_after:wN {#2} } }
-\cs_new_protected:Npn \tl_gset:Nx #1#2
- { \__kernel_tl_gset:Nx #1 {#2} }
+ { \__kernel_tl_gset:Ne #1 { \__kernel_exp_not:w \exp_after:wN {#2} } }
\cs_generate_variant:Nn \tl_set:Nn { NV , Nv , Ne , Nf }
\cs_generate_variant:Nn \tl_set:Nn { c, cV , cv , ce , cf }
-\cs_generate_variant:Nn \tl_set:Nx { c }
\cs_generate_variant:Nn \tl_set:No { c }
+\cs_generate_variant:Nn \tl_set:Nn { Nx , cx }
\cs_generate_variant:Nn \tl_gset:Nn { NV , Nv , Ne , Nf }
\cs_generate_variant:Nn \tl_gset:Nn { c, cV , cv , ce , cf }
-\cs_generate_variant:Nn \tl_gset:Nx { c }
\cs_generate_variant:Nn \tl_gset:No { c }
+\cs_generate_variant:Nn \tl_gset:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}
% {
-% \tl_put_left:Nn, \tl_put_left:NV, \tl_put_left:Nv, \tl_put_left:No, \tl_put_left:Nx,
-% \tl_put_left:cn, \tl_put_left:cV, \tl_put_left:cv, \tl_put_left:co, \tl_put_left:cx
+% \tl_put_left:Nn, \tl_put_left:NV, \tl_put_left:Nv, \tl_put_left:Ne,
+% \tl_put_left:No, \tl_put_left:Nx,
+% \tl_put_left:cn, \tl_put_left:cV, \tl_put_left:cv, \tl_put_left:ce,
+% \tl_put_left:co, \tl_put_left:cx
% }
% \begin{macro}
% {
-% \tl_gput_left:Nn, \tl_gput_left:NV, \tl_gput_left:Nv, \tl_gput_left:No, \tl_gput_left:Nx,
-% \tl_gput_left:cn, \tl_gput_left:cV, \tl_gput_left:cv, \tl_gput_left:co, \tl_gput_left:cx
+% \tl_gput_left:Nn, \tl_gput_left:NV, \tl_gput_left:Nv, \tl_gput_left:Ne,
+% \tl_gput_left:No, \tl_gput_left:Nx,
+% \tl_gput_left:cn, \tl_gput_left:cV, \tl_gput_left:cv, \tl_gput_left:ce,
+% \tl_gput_left:co, \tl_gput_left:cx
% }
% Adding to the left is done directly to gain a little performance.
% \begin{macrocode}
\cs_new_protected:Npn \tl_put_left:Nn #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{ \__kernel_exp_not:w {#2} \__kernel_exp_not:w \exp_after:wN {#1} }
}
\cs_new_protected:Npn \tl_put_left:NV #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{ \exp_not:V #2 \__kernel_exp_not:w \exp_after:wN {#1} }
}
\cs_new_protected:Npn \tl_put_left:Nv #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{ \exp_not:v {#2} \__kernel_exp_not:w \exp_after:wN {#1} }
}
+\cs_new_protected:Npn \tl_put_left:Ne #1#2
+ {
+ \__kernel_tl_set:Ne #1
+ {
+ \__kernel_exp_not:w \tex_expanded:D { {#2} }
+ \__kernel_exp_not:w \exp_after:wN {#1}
+ }
+ }
\cs_new_protected:Npn \tl_put_left:No #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{
\__kernel_exp_not:w \exp_after:wN {#2}
\__kernel_exp_not:w \exp_after:wN {#1}
}
}
-\cs_new_protected:Npn \tl_put_left:Nx #1#2
- { \__kernel_tl_set:Nx #1 { #2 \__kernel_exp_not:w \exp_after:wN {#1} } }
\cs_new_protected:Npn \tl_gput_left:Nn #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{ \__kernel_exp_not:w {#2} \__kernel_exp_not:w \exp_after:wN {#1} }
}
\cs_new_protected:Npn \tl_gput_left:NV #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{ \exp_not:V #2 \__kernel_exp_not:w \exp_after:wN {#1} }
}
\cs_new_protected:Npn \tl_gput_left:Nv #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{ \exp_not:v {#2} \__kernel_exp_not:w \exp_after:wN {#1} }
}
+\cs_new_protected:Npn \tl_gput_left:Ne #1#2
+ {
+ \__kernel_tl_gset:Ne #1
+ {
+ \__kernel_exp_not:w \tex_expanded:D { {#2} }
+ \__kernel_exp_not:w \exp_after:wN {#1}
+ }
+ }
\cs_new_protected:Npn \tl_gput_left:No #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{
\__kernel_exp_not:w \exp_after:wN {#2}
\__kernel_exp_not:w \exp_after:wN {#1}
}
}
-\cs_new_protected:Npn \tl_gput_left:Nx #1#2
- { \__kernel_tl_gset:Nx #1 { #2 \__kernel_exp_not:w \exp_after:wN {#1} } }
\cs_generate_variant:Nn \tl_put_left:Nn { c }
\cs_generate_variant:Nn \tl_put_left:NV { c }
\cs_generate_variant:Nn \tl_put_left:Nv { c }
+\cs_generate_variant:Nn \tl_put_left:Ne { c }
\cs_generate_variant:Nn \tl_put_left:No { c }
-\cs_generate_variant:Nn \tl_put_left:Nx { c }
+\cs_generate_variant:Nn \tl_put_left:Nn { Nx, cx }
\cs_generate_variant:Nn \tl_gput_left:Nn { c }
\cs_generate_variant:Nn \tl_gput_left:NV { c }
-\cs_generate_variant:Nn \tl_gput_left:NV { c }
+\cs_generate_variant:Nn \tl_gput_left:Nv { c }
+\cs_generate_variant:Nn \tl_gput_left:Ne { c }
\cs_generate_variant:Nn \tl_gput_left:No { c }
-\cs_generate_variant:Nn \tl_gput_left:Nx { c }
+\cs_generate_variant:Nn \tl_gput_left:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}
% {
-% \tl_put_right:Nn, \tl_put_right:NV, \tl_put_right:Nv, \tl_put_right:No, \tl_put_right:Nx,
-% \tl_put_right:cn, \tl_put_right:cV, \tl_put_right:cv, \tl_put_right:co, \tl_put_right:cx
+% \tl_put_right:Nn, \tl_put_right:NV, \tl_put_right:Nv, \tl_put_right:Ne,
+% \tl_put_right:No, \tl_put_right:Nx,
+% \tl_put_right:cn, \tl_put_right:cV, \tl_put_right:cv, \tl_put_right:ce,
+% \tl_put_right:co, \tl_put_right:cx
% }
% \begin{macro}
% {
-% \tl_gput_right:Nn, \tl_gput_right:NV, \tl_gput_right:Nv, \tl_gput_right:No,
-% \tl_gput_right:Nx,
-% \tl_gput_right:cn, \tl_gput_right:cV, \tl_gput_right:cv, \tl_gput_right:co,
-% \tl_gput_right:cx
+% \tl_gput_right:Nn, \tl_gput_right:NV, \tl_gput_right:Nv, \tl_gput_right:Ne,
+% \tl_gput_right:No, \tl_gput_right:Nx,
+% \tl_gput_right:cn, \tl_gput_right:cV, \tl_gput_right:cv, \tl_gput_right:ce,
+% \tl_gput_right:co, \tl_gput_right:cx
% }
% The same on the right.
% \begin{macrocode}
\cs_new_protected:Npn \tl_put_right:Nn #1#2
- { \__kernel_tl_set:Nx #1 { \__kernel_exp_not:w \exp_after:wN { #1 #2 } } }
+ { \__kernel_tl_set:Ne #1 { \__kernel_exp_not:w \exp_after:wN { #1 #2 } } }
\cs_new_protected:Npn \tl_put_right:NV #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{ \__kernel_exp_not:w \exp_after:wN {#1} \exp_not:V #2 }
}
\cs_new_protected:Npn \tl_put_right:Nv #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{ \__kernel_exp_not:w \exp_after:wN {#1} \exp_not:v {#2} }
}
+\cs_new_protected:Npn \tl_put_right:Ne #1#2
+ {
+ \__kernel_tl_set:Ne #1
+ {
+ \__kernel_exp_not:w \exp_after:wN {#1}
+ \__kernel_exp_not:w \tex_expanded:D { {#2} }
+ }
+ }
\cs_new_protected:Npn \tl_put_right:No #1#2
{
- \__kernel_tl_set:Nx #1
+ \__kernel_tl_set:Ne #1
{
\__kernel_exp_not:w \exp_after:wN {#1}
\__kernel_exp_not:w \exp_after:wN {#2}
}
}
-\cs_new_protected:Npn \tl_put_right:Nx #1#2
- { \__kernel_tl_set:Nx #1 { \__kernel_exp_not:w \exp_after:wN {#1} #2 } }
\cs_new_protected:Npn \tl_gput_right:Nn #1#2
- { \__kernel_tl_gset:Nx #1 { \__kernel_exp_not:w \exp_after:wN { #1 #2 } } }
+ { \__kernel_tl_gset:Ne #1 { \__kernel_exp_not:w \exp_after:wN { #1 #2 } } }
\cs_new_protected:Npn \tl_gput_right:NV #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{ \__kernel_exp_not:w \exp_after:wN {#1} \exp_not:V #2 }
}
\cs_new_protected:Npn \tl_gput_right:Nv #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{ \__kernel_exp_not:w \exp_after:wN {#1} \exp_not:v {#2} }
}
+\cs_new_protected:Npn \tl_gput_right:Ne #1#2
+ {
+ \__kernel_tl_gset:Ne #1
+ {
+ \__kernel_exp_not:w \exp_after:wN {#1}
+ \__kernel_exp_not:w \tex_expanded:D { {#2} }
+ }
+ }
\cs_new_protected:Npn \tl_gput_right:No #1#2
{
- \__kernel_tl_gset:Nx #1
+ \__kernel_tl_gset:Ne #1
{
\__kernel_exp_not:w \exp_after:wN {#1}
\__kernel_exp_not:w \exp_after:wN {#2}
}
}
-\cs_new_protected:Npn \tl_gput_right:Nx #1#2
- { \__kernel_tl_gset:Nx #1 { \__kernel_exp_not:w \exp_after:wN {#1} #2 } }
\cs_generate_variant:Nn \tl_put_right:Nn { c }
\cs_generate_variant:Nn \tl_put_right:NV { c }
\cs_generate_variant:Nn \tl_put_right:Nv { c }
+\cs_generate_variant:Nn \tl_put_right:Ne { c }
\cs_generate_variant:Nn \tl_put_right:No { c }
-\cs_generate_variant:Nn \tl_put_right:Nx { c }
+\cs_generate_variant:Nn \tl_put_right:Nn { Nx , cx }
\cs_generate_variant:Nn \tl_gput_right:Nn { c }
\cs_generate_variant:Nn \tl_gput_right:NV { c }
\cs_generate_variant:Nn \tl_gput_right:Nv { c }
+\cs_generate_variant:Nn \tl_gput_right:Ne { c }
\cs_generate_variant:Nn \tl_gput_right:No { c }
-\cs_generate_variant:Nn \tl_gput_right:Nx { c }
+\cs_generate_variant:Nn \tl_gput_right:Nn { Nx, cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1679,19 +1732,23 @@
% codes: it cannot appear in the tokens being rescanned since all
% colons have the same category code.
% \begin{macrocode}
-\tl_const:Nx \c_@@_rescan_marker_tl { : \token_to_str:N : }
+\tl_const:Ne \c_@@_rescan_marker_tl { : \token_to_str:N : }
% \end{macrocode}
% \end{variable}
%
% \begin{macro}
% {
-% \tl_set_rescan:Nnn, \tl_set_rescan:NnV, \tl_set_rescan:Nno, \tl_set_rescan:Nnx,
-% \tl_set_rescan:cnn, \tl_set_rescan:cnV, \tl_set_rescan:cno, \tl_set_rescan:cnx
+% \tl_set_rescan:Nnn, \tl_set_rescan:NnV, \tl_set_rescan:Nne,
+% \tl_set_rescan:Nno, \tl_set_rescan:Nnx,
+% \tl_set_rescan:cnn, \tl_set_rescan:cnV, \tl_set_rescan:cne,
+% \tl_set_rescan:cno, \tl_set_rescan:cnx,
% }
% \begin{macro}
% {
-% \tl_gset_rescan:Nnn, \tl_gset_rescan:NnV, \tl_gset_rescan:Nno, \tl_gset_rescan:Nnx,
-% \tl_gset_rescan:cnn, \tl_gset_rescan:cnV, \tl_gset_rescan:cno, \tl_gset_rescan:cnx
+% \tl_gset_rescan:Nnn, \tl_gset_rescan:NnV, \tl_gset_rescan:Nne,
+% \tl_gset_rescan:Nno, \tl_gset_rescan:Nnx,
+% \tl_gset_rescan:cnn, \tl_gset_rescan:cnV, \tl_gset_rescan:cne,
+% \tl_gset_rescan:cno, \tl_gset_rescan:cnx
% }
% \begin{macro}{\tl_rescan:nn, \tl_rescan:nV}
% \begin{macro}{\@@_rescan_aux:}
@@ -1790,10 +1847,10 @@
\group_end:
#1 #2 {#3}
}
-\cs_generate_variant:Nn \tl_set_rescan:Nnn { NnV , Nno , Nnx }
-\cs_generate_variant:Nn \tl_set_rescan:Nnn { c , cnV , cno , cnx }
-\cs_generate_variant:Nn \tl_gset_rescan:Nnn { NnV , Nno , Nnx }
-\cs_generate_variant:Nn \tl_gset_rescan:Nnn { c , cnV , cno , cnx }
+\cs_generate_variant:Nn \tl_set_rescan:Nnn { NnV , Nne , c , cnV , cne }
+\cs_generate_variant:Nn \tl_set_rescan:Nnn { Nno , Nnx , cno , cnx }
+\cs_generate_variant:Nn \tl_gset_rescan:Nnn { NnV , Nne , c , cnV , cne }
+\cs_generate_variant:Nn \tl_gset_rescan:Nnn { Nno , Nnx , cno , cnx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1913,59 +1970,75 @@
%
% \begin{macro}
% {
-% \tl_replace_all:Nnn, \tl_replace_all:NVn, \tl_replace_all:NnV,
-% \tl_replace_all:Nxn, \tl_replace_all:Nnx, \tl_replace_all:Nxx,
-% \tl_replace_all:cnn, \tl_replace_all:cVn, \tl_replace_all:cnV,
-% \tl_replace_all:cxn, \tl_replace_all:cnx, \tl_replace_all:cxx
+% \tl_replace_once:Nnn, \tl_replace_once:NVn, \tl_replace_once:NnV,
+% \tl_replace_once:Nen, \tl_replace_once:Nne, \tl_replace_once:Nee,
+% \tl_replace_once:Nxn, \tl_replace_once:Nnx, \tl_replace_once:Nxx,
+% \tl_replace_once:cnn, \tl_replace_once:cVn, \tl_replace_once:cnV,
+% \tl_replace_once:cen, \tl_replace_once:cne, \tl_replace_once:cee,
+% \tl_replace_once:cxn, \tl_replace_once:cnx, \tl_replace_once:cxx
% }
% \begin{macro}
% {
-% \tl_greplace_all:Nnn, \tl_greplace_all:NVn, \tl_greplace_all:NnV,
-% \tl_greplace_all:Nxn, \tl_greplace_all:Nnx, \tl_greplace_all:Nxx,
-% \tl_greplace_all:cnn, \tl_greplace_all:cVn, \tl_greplace_all:cnV,
-% \tl_greplace_all:cxn, \tl_greplace_all:cnx, \tl_greplace_all:cxx
+% \tl_greplace_once:Nnn, \tl_greplace_once:NVn, \tl_greplace_once:NnV,
+% \tl_greplace_once:Nen, \tl_greplace_once:Nne, \tl_greplace_once:Nee,
+% \tl_greplace_once:Nxn, \tl_greplace_once:Nnx, \tl_greplace_once:Nxx,
+% \tl_greplace_once:cnn, \tl_greplace_once:cVn, \tl_greplace_once:cnV,
+% \tl_greplace_once:cen, \tl_greplace_once:cne, \tl_greplace_once:cee,
+% \tl_greplace_once:cxn, \tl_greplace_once:cnx, \tl_greplace_once:cxx
% }
% \begin{macro}
% {
-% \tl_replace_once:Nnn, \tl_replace_once:NVn, \tl_replace_once:NnV,
-% \tl_replace_once:Nxn, \tl_replace_once:Nnx, \tl_replace_once:Nxx,
-% \tl_replace_once:cnn, \tl_replace_once:cVn, \tl_replace_once:cnV,
-% \tl_replace_once:cxn, \tl_replace_once:cnx, \tl_replace_once:cxx
+% \tl_replace_all:Nnn, \tl_replace_all:NVn, \tl_replace_all:NnV,
+% \tl_replace_all:Nen, \tl_replace_all:Nne, \tl_replace_all:Nee,
+% \tl_replace_all:Nxn, \tl_replace_all:Nnx, \tl_replace_all:Nxx,
+% \tl_replace_all:cnn, \tl_replace_all:cVn, \tl_replace_all:cnV,
+% \tl_replace_all:cen, \tl_replace_all:cne, \tl_replace_all:cee,
+% \tl_replace_all:cxn, \tl_replace_all:cnx, \tl_replace_all:cxx
% }
% \begin{macro}
% {
-% \tl_greplace_once:Nnn, \tl_greplace_once:NVn, \tl_replace_once:NnV,
-% \tl_greplace_once:Nxn, \tl_greplace_once:Nnx, \tl_greplace_once:Nxx,
-% \tl_greplace_once:cnn, \tl_greplace_once:cVn, \tl_replace_once:cnV,
-% \tl_greplace_once:cxn, \tl_greplace_once:cnx, \tl_greplace_once:cxx
+% \tl_greplace_all:Nnn, \tl_greplace_all:NVn, \tl_greplace_all:NnV,
+% \tl_greplace_all:Nen, \tl_greplace_all:Nne, \tl_greplace_all:Nee,
+% \tl_greplace_all:Nxn, \tl_greplace_all:Nnx, \tl_greplace_all:Nxx,
+% \tl_greplace_all:cnn, \tl_greplace_all:cVn, \tl_greplace_all:cnV,
+% \tl_greplace_all:cen, \tl_greplace_all:cne, \tl_greplace_all:cee,
+% \tl_greplace_all:cxn, \tl_greplace_all:cnx, \tl_greplace_all:cxx
% }
% All of the \texttt{replace} functions call \cs{@@_replace:NnNNNnn}
% with appropriate arguments. The first two arguments are explained
% later. The next controls whether the replacement function calls
% itself (\cs{@@_replace_next:w}) or stops (\cs{@@_replace_wrap:w})
-% after the first replacement. Next comes an \texttt{x}-type
-% assignment function \cs{tl_set:Nx} or \cs{tl_gset:Nx} for local or
+% after the first replacement. Next comes an \texttt{e}-type
+% assignment function \cs{tl_set:Ne} or \cs{tl_gset:Ne} for local or
% global replacements. Finally, the three arguments \meta{tl~var}
% \Arg{pattern} \Arg{replacement} provided by the user. When
% describing the auxiliary functions below, we denote the contents of
% the \meta{tl~var} by \meta{token list}.
% \begin{macrocode}
\cs_new_protected:Npn \tl_replace_once:Nnn
- { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_wrap:w \__kernel_tl_set:Nx }
+ { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_wrap:w \__kernel_tl_set:Ne }
\cs_new_protected:Npn \tl_greplace_once:Nnn
- { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_wrap:w \__kernel_tl_gset:Nx }
+ { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_wrap:w \__kernel_tl_gset:Ne }
\cs_new_protected:Npn \tl_replace_all:Nnn
- { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_next:w \__kernel_tl_set:Nx }
+ { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_next:w \__kernel_tl_set:Ne }
\cs_new_protected:Npn \tl_greplace_all:Nnn
- { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_next:w \__kernel_tl_gset:Nx }
+ { \@@_replace:NnNNNnn \q_@@_mark ? \@@_replace_next:w \__kernel_tl_gset:Ne }
+\cs_generate_variant:Nn \tl_replace_once:Nnn
+ { NnV , Nne , NV , Ne , Nee , c , cnV , cne , cV , ce , cee }
\cs_generate_variant:Nn \tl_replace_once:Nnn
- { NV , NnV , Nx , Nnx , Nxx , c , cV , cnV , cx , cnx , cxx }
+ { Nx , Nnx , Nxx , cxn , cnx , cxx }
\cs_generate_variant:Nn \tl_greplace_once:Nnn
- { NV , NnV , Nx , Nnx , Nxx , c , cV , cnV , cx , cnx , cxx }
+ { NnV , Nne , NV , Ne , Nee , c , cnV , cne , cV , ce , cee }
+\cs_generate_variant:Nn \tl_greplace_once:Nnn
+ { Nx , Nnx , Nxx , cxn , cnx , cxx }
+\cs_generate_variant:Nn \tl_replace_all:Nnn
+ { NnV , Nne , NV , Ne , Nee , c , cnV , cne , cV , ce , cee }
\cs_generate_variant:Nn \tl_replace_all:Nnn
- { NV , NnV , Nx , Nnx , Nxx , c , cV , cnV , cx , cnx , cxx }
+ { Nx , Nnx , Nxx , cxn , cnx , cxx }
\cs_generate_variant:Nn \tl_greplace_all:Nnn
- { NV , NnV , Nx , Nnx , Nxx , c , cV , cnV , cx , cnx , cxx }
+ { NnV , Nne , NV , Ne , Nee , c , cnV , cne , cV , ce , cee }
+\cs_generate_variant:Nn \tl_greplace_all:Nnn
+ { Nx , Nnx , Nxx , cxn , cnx , cxx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2046,7 +2119,7 @@
{
\tl_if_empty:nTF {#6}
{
- \msg_error:nnx { kernel } { empty-search-pattern }
+ \msg_error:nne { kernel } { empty-search-pattern }
{ \tl_to_str:n {#7} }
}
{
@@ -2124,7 +2197,7 @@
\group_align_safe_begin:
\cs_set:Npn \@@_replace_wrap:w ##1 #1 ##2
{ \__kernel_exp_not:w \exp_after:wN { \use_none:nn ##1 } ##2 }
- \cs_set:Npx \@@_replace_next:w ##1 #5
+ \cs_set:Npe \@@_replace_next:w ##1 #5
{
\exp_not:N \@@_replace_wrap:w ##1
\exp_not:n { #1 }
@@ -2152,13 +2225,13 @@
%
% \begin{macro}
% {
-% \tl_remove_once:Nn, \tl_remove_once:NV, \tl_remove_once:Nx,
-% \tl_remove_once:cn, \tl_remove_once:cV, \tl_remove_once:cx
+% \tl_remove_once:Nn, \tl_remove_once:NV, \tl_remove_once:Ne,
+% \tl_remove_once:cn, \tl_remove_once:cV, \tl_remove_once:ce
% }
% \begin{macro}
% {
-% \tl_gremove_once:Nn, \tl_gremove_once:NV, \tl_gremove_once:Nx,
-% \tl_gremove_once:cn, \tl_gremove_once:cV, \tl_gremove_once:cx
+% \tl_gremove_once:Nn, \tl_gremove_once:NV,
+% \tl_gremove_once:cn, \tl_gremove_once:cV,
% }
% Removal is just a special case of replacement.
% \begin{macrocode}
@@ -2166,21 +2239,25 @@
{ \tl_replace_once:Nnn #1 {#2} { } }
\cs_new_protected:Npn \tl_gremove_once:Nn #1#2
{ \tl_greplace_once:Nnn #1 {#2} { } }
-\cs_generate_variant:Nn \tl_remove_once:Nn { NV , Nx , c , cV , cx }
-\cs_generate_variant:Nn \tl_gremove_once:Nn { NV , Nx , c , cV , cx }
+\cs_generate_variant:Nn \tl_remove_once:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \tl_gremove_once:Nn { NV , Ne , c , cV , ce }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}
% {
-% \tl_remove_all:Nn, \tl_remove_all:NV, \tl_remove_all:Nx,
-% \tl_remove_all:cn, \tl_remove_all:cV, \tl_remove_all:cx
+% \tl_remove_all:Nn, \tl_remove_all:NV, \tl_remove_all:Ne,
+% \tl_remove_all:Nx,
+% \tl_remove_all:cn, \tl_remove_all:cV, \tl_remove_all:ce,
+% \tl_remove_all:cx,
% }
% \begin{macro}
% {
-% \tl_gremove_all:Nn, \tl_gremove_all:NV, \tl_gremove_all:Nx,
-% \tl_gremove_all:cn, \tl_gremove_all:cV, \tl_gremove_all:cx
+% \tl_gremove_all:Nn, \tl_gremove_all:NV, \tl_gremove_all:Ne,
+% \tl_gremove_all:Nx,
+% \tl_gremove_all:cn, \tl_gremove_all:cV, \tl_gremove_all:ce,
+% \tl_gremove_all:cx,
% }
% Removal is just a special case of replacement.
% \begin{macrocode}
@@ -2188,8 +2265,10 @@
{ \tl_replace_all:Nnn #1 {#2} { } }
\cs_new_protected:Npn \tl_gremove_all:Nn #1#2
{ \tl_greplace_all:Nnn #1 {#2} { } }
-\cs_generate_variant:Nn \tl_remove_all:Nn { NV , Nx , c , cV , cx }
-\cs_generate_variant:Nn \tl_gremove_all:Nn { NV , Nx , c , cV , cx }
+\cs_generate_variant:Nn \tl_remove_all:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \tl_remove_all:Nn { Nx , cx }
+\cs_generate_variant:Nn \tl_gremove_all:Nn { NV , Ne , c , cV , ce }
+\cs_generate_variant:Nn \tl_gremove_all:Nn { Nx , cx }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2328,7 +2407,12 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}[TF]{\tl_if_eq:nn, \tl_if_eq:Vn, \tl_if_eq:nV, \tl_if_eq:xn, \tl_if_eq:nx}
+% \begin{macro}[TF]
+% {
+% \tl_if_eq:nn, \tl_if_eq:nV, \tl_if_eq:ne, \tl_if_eq:Vn, \tl_if_eq:en,
+% \tl_if_eq:ee,
+% \tl_if_eq:xn, \tl_if_eq:nx, \tl_if_eq:xx,
+% }
% A simple store and compare routine.
% \begin{macrocode}
\prg_new_protected_conditional:Npnn \tl_if_eq:nn #1#2 { T , F , TF }
@@ -2344,7 +2428,9 @@
\prg_return_false:
\fi:
}
-\prg_generate_conditional_variant:Nnn \tl_if_eq:nn { V , nV , x , nx } { TF , T , F }
+\prg_generate_conditional_variant:Nnn \tl_if_eq:nn
+ { nV , ne , nx , e , ee , x , xx }
+ { TF , T , F }
% \end{macrocode}
% \end{macro}
%
@@ -2423,13 +2509,14 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}[EXP,pTF]{\tl_if_single:N}
+% \begin{macro}[EXP,pTF]{\tl_if_single:N, \tl_if_single:c}
% Expand the token list and feed it to \cs{tl_if_single:nTF}.
% \begin{macrocode}
\cs_new:Npn \tl_if_single_p:N { \exp_args:No \tl_if_single_p:n }
\cs_new:Npn \tl_if_single:NT { \exp_args:No \tl_if_single:nT }
\cs_new:Npn \tl_if_single:NF { \exp_args:No \tl_if_single:nF }
\cs_new:Npn \tl_if_single:NTF { \exp_args:No \tl_if_single:nTF }
+\prg_generate_conditional_variant:Nnn \tl_if_single:N {c} { p , T , F , TF }
% \end{macrocode}
% \end{macro}
%
@@ -2751,7 +2838,12 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\tl_trim_spaces:n, \tl_trim_spaces:o}
+% \begin{macro}
+% {
+% \tl_trim_spaces:n, \tl_trim_spaces:V, \tl_trim_spaces:v,
+% \tl_trim_spaces:e,
+% \tl_trim_spaces:o,
+% }
% \begin{macro}{\tl_trim_spaces_apply:nN, \tl_trim_spaces_apply:oN}
% \begin{macro}
% {
@@ -2774,14 +2866,14 @@
{ \@@_trim_mark: #1 }
{ \__kernel_exp_not:w \exp_after:wN }
}
-\cs_generate_variant:Nn \tl_trim_spaces:n { o }
+\cs_generate_variant:Nn \tl_trim_spaces:n { V , v , e , o }
\cs_new:Npn \tl_trim_spaces_apply:nN #1#2
{ \@@_trim_spaces:nn { \@@_trim_mark: #1 } { \exp_args:No #2 } }
\cs_generate_variant:Nn \tl_trim_spaces_apply:nN { o }
\cs_new_protected:Npn \tl_trim_spaces:N #1
- { \__kernel_tl_set:Nx #1 { \exp_args:No \tl_trim_spaces:n {#1} } }
+ { \__kernel_tl_set:Ne #1 { \exp_args:No \tl_trim_spaces:n {#1} } }
\cs_new_protected:Npn \tl_gtrim_spaces:N #1
- { \__kernel_tl_gset:Nx #1 { \exp_args:No \tl_trim_spaces:n {#1} } }
+ { \__kernel_tl_gset:Ne #1 { \exp_args:No \tl_trim_spaces:n {#1} } }
\cs_generate_variant:Nn \tl_trim_spaces:N { c }
\cs_generate_variant:Nn \tl_gtrim_spaces:N { c }
% \end{macrocode}
@@ -3237,7 +3329,7 @@
% or with a space, making sure that
% \cs{@@_act_space:wwNNN} gobbles the space.
% \begin{macrocode}
-\exp_args:Nnx \use:n { \cs_new:Npn \@@_act_loop:w #1 \s_@@_act_stop }
+\exp_args:Nne \use:n { \cs_new:Npn \@@_act_loop:w #1 \s_@@_act_stop }
{
\exp_not:o { \@@_act_if_head_is_space:nTF {#1} }
\exp_not:N \@@_act_space:wwNNN
@@ -3346,9 +3438,9 @@
% which stops the \texttt{f}-expansion.
% \begin{macrocode}
\cs_new_protected:Npn \tl_reverse:N #1
- { \__kernel_tl_set:Nx #1 { \exp_args:No \tl_reverse:n { #1 } } }
+ { \__kernel_tl_set:Ne #1 { \exp_args:No \tl_reverse:n { #1 } } }
\cs_new_protected:Npn \tl_greverse:N #1
- { \__kernel_tl_gset:Nx #1 { \exp_args:No \tl_reverse:n { #1 } } }
+ { \__kernel_tl_gset:Ne #1 { \exp_args:No \tl_reverse:n { #1 } } }
\cs_generate_variant:Nn \tl_reverse:N { c }
\cs_generate_variant:Nn \tl_greverse:N { c }
% \end{macrocode}
@@ -3563,7 +3655,7 @@
{ \token_to_str:N #2 = \__kernel_exp_not:w \exp_after:wN {#2} }
}
{
- \msg_error:nnxxx { kernel } { bad-type }
+ \msg_error:nneee { kernel } { bad-type }
{ \token_to_str:N #2 } { \token_to_meaning:N #2 } { tl }
}
}
@@ -3571,7 +3663,7 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\tl_show:n, \tl_show:x, \@@_show:n}
+% \begin{macro}{\tl_show:n, \tl_show:e, \tl_show:x, \@@_show:n}
% \begin{macro}[EXP]{\@@_show:w}
% Many |show| functions are based on \cs{tl_show:n}.
% The argument of \cs{tl_show:n} is line-wrapped using
@@ -3591,7 +3683,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \tl_show:n #1
{ \iow_wrap:nnnN { >~ \tl_to_str:n {#1} . } { } { } \@@_show:n }
-\cs_generate_variant:Nn \tl_show:n { x }
+\cs_generate_variant:Nn \tl_show:n { e , x }
\cs_new_protected:Npn \@@_show:n #1
{
\tl_set:Nf \l_@@_internal_a_tl { \@@_show:w #1 \s_@@_stop }
@@ -3609,13 +3701,13 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\tl_log:n, \tl_log:x}
+% \begin{macro}{\tl_log:n, \tl_log:e, \tl_log:x}
% Logging is much easier, simply line-wrap. The |>~| and trailing
% period is there to match the output of \cs{tl_show:n}.
% \begin{macrocode}
\cs_new_protected:Npn \tl_log:n #1
{ \iow_wrap:nnnN { > ~ \tl_to_str:n {#1} . } { } { } \iow_log:n }
-\cs_generate_variant:Nn \tl_log:n { x }
+\cs_generate_variant:Nn \tl_log:n { e , x }
% \end{macrocode}
% \end{macro}
%
@@ -3635,17 +3727,17 @@
\exp_args:Nf \tl_if_empty:nTF
{ \cs_prefix_spec:N #1 \cs_parameter_spec:N #1 }
{
- \tl_set:Nx \l_@@_internal_a_tl {#3}
+ \tl_set:Ne \l_@@_internal_a_tl {#3}
\tl_if_eq:NNTF #1 \l_@@_internal_a_tl
{#4}
{
- \msg_error:nnxxxx { kernel } { bad-type }
+ \msg_error:nneeee { kernel } { bad-type }
{ \token_to_str:N #1 } { \tl_to_str:N #1 }
{#2} { \tl_to_str:N \l_@@_internal_a_tl }
}
}
{
- \msg_error:nnxxx { kernel } { bad-type }
+ \msg_error:nneee { kernel } { bad-type }
{ \token_to_str:N #1 } { \token_to_meaning:N #1 } {#2}
}
}
diff --git a/macros/latex/contrib/l3kernel/l3token.dtx b/macros/latex/contrib/l3kernel/l3token.dtx
index ce274f9583..aedde78098 100644
--- a/macros/latex/contrib/l3kernel/l3token.dtx
+++ b/macros/latex/contrib/l3kernel/l3token.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -1490,7 +1490,7 @@
\char_set_lccode:nn { `\^^@ } { ##1 }
\tex_lowercase:D { \group_end: #2 ^^@ }
}
- \cs_new_protected:cpx { #1 :NN } ##1
+ \cs_new_protected:cpe { #1 :NN } ##1
{ \exp_not:c { #1 : nN } { `##1 } }
}
\@@_tmp:nN { char_set_active_eq } \cs_set_eq:NN
@@ -1614,7 +1614,7 @@
\char_set_catcode_math_superscript:n { 0 }
\tl_put_right:Nn \l_@@_tmp_tl { ^^@ \exp_not:N \or: }
\char_set_catcode_parameter:n { 0 }
- \tl_put_right:Nn \l_@@_tmp_tl { ^^@^^@ \exp_not:N \or: }
+ \tl_put_right:Nn \l_@@_tmp_tl { ^^@ \exp_not:N \or: }
\tl_put_right:Nn \l_@@_tmp_tl { { \if_false: } \fi: \exp_not:N \or: }
\char_set_catcode_alignment:n { 0 }
\tl_put_right:Nn \l_@@_tmp_tl { ^^@ \exp_not:N \or: }
@@ -1627,16 +1627,16 @@
% \end{macrocode}
% Convert the above temporary list into a series of constant token
% lists, one for each character code, using \cs{tex_lowercase:D} to
-% convert |^^@| in each case. The \texttt{x}-type expansion ensures
+% convert |^^@| in each case. The \texttt{e}-type expansion ensures
% that \cs{tex_lowercase:D} receives the contents of the token list.
% \begin{macrocode}
\cs_set_protected:Npn \@@_tmp:n #1
{
\char_set_lccode:nn { 0 } {#1}
\char_set_lccode:nn { 32 } {#1}
- \exp_args:Nx \tex_lowercase:D
+ \exp_args:Ne \tex_lowercase:D
{
- \tl_const:Nx
+ \tl_const:Ne
\exp_not:c { c_@@_ \@@_int_to_roman:w #1 _tl }
{ \exp_not:o \l_@@_tmp_tl }
}
@@ -1848,7 +1848,7 @@
% \begin{macro}{\c_catcode_other_space_tl}
% Create a space with category code $12$: an \enquote{other} space.
% \begin{macrocode}
-\tl_const:Nx \c_catcode_other_space_tl { \char_generate:nn { `\ } { 12 } }
+\tl_const:Ne \c_catcode_other_space_tl { \char_generate:nn { `\ } { 12 } }
% \end{macrocode}
% \end{macro}
%
@@ -2127,17 +2127,17 @@
% detokenized.
%
% \begin{macrocode}
-\use:x
+\use:e
{
- \prg_new_conditional:Npnn \exp_not:N \token_if_macro:N ##1
+ \prg_new_conditional:Npnn \exp_not:N \token_if_macro:N #1
{ p , T , F , TF }
{
\exp_not:N \exp_after:wN \exp_not:N \@@_if_macro_p:w
- \exp_not:N \token_to_meaning:N ##1 \tl_to_str:n { ma : }
+ \exp_not:N \token_to_meaning:N #1 \tl_to_str:n { ma : }
\s_@@_stop
}
\cs_new:Npn \exp_not:N \@@_if_macro_p:w
- ##1 \tl_to_str:n { ma } ##2 \c_colon_str ##3 \s_@@_stop
+ #1 \tl_to_str:n { ma } #2 \c_colon_str #3 \s_@@_stop
}
{
\str_if_eq:nnTF { #2 } { cro }
@@ -2208,11 +2208,11 @@
\group_begin:
\cs_set_protected:Npn \@@_tmp:w #1
{
- \use:x
+ \use:e
{
\cs_new:Npn \exp_not:c { @@_delimit_by_ #1 :w }
- ####1 \tl_to_str:n {#1} ####2 \s_@@_stop
- { ####1 \tl_to_str:n {#1} }
+ ##1 \tl_to_str:n {#1} ##2 \s_@@_stop
+ { ##1 \tl_to_str:n {#1} }
}
}
\@@_tmp:w { char" }
@@ -2283,17 +2283,17 @@
\group_begin:
\cs_set_protected:Npn \@@_tmp:w #1#2#3
{
- \use:x
+ \use:e
{
- \prg_new_conditional:Npnn \exp_not:c { token_if_ #1 :N } ####1
+ \prg_new_conditional:Npnn \exp_not:c { token_if_ #1 :N } ##1
{ p , T , F , TF }
{
\cs_if_exist:cT { tex_ #2 :D }
{
- \exp_not:N \if_meaning:w ####1 \exp_not:c { tex_ #2 :D }
+ \exp_not:N \if_meaning:w ##1 \exp_not:c { tex_ #2 :D }
\exp_not:N \prg_return_false:
\exp_not:N \else:
- \exp_not:N \if_meaning:w ####1 \exp_not:c { tex_ #2 def:D }
+ \exp_not:N \if_meaning:w ##1 \exp_not:c { tex_ #2 def:D }
\exp_not:N \prg_return_false:
\exp_not:N \else:
}
@@ -2301,7 +2301,7 @@
{
\exp_not:N \exp_after:wN
\exp_not:c { @@_delimit_by_ #2 :w }
- \exp_not:N \token_to_meaning:N ####1
+ \exp_not:N \token_to_meaning:N ##1
? \tl_to_str:n {#2} \s_@@_stop
}
{ \exp_not:n {#3} }
@@ -2464,26 +2464,26 @@ end
}
{
\tex_chardef:D \c_@@_A_int = `A ~ %
- \use:x
+ \use:e
{
- \prg_new_conditional:Npnn \exp_not:N \token_if_primitive:N ##1
+ \prg_new_conditional:Npnn \exp_not:N \token_if_primitive:N #1
{ p , T , F , TF }
{
- \exp_not:N \token_if_macro:NTF ##1
+ \exp_not:N \token_if_macro:NTF #1
\exp_not:N \prg_return_false:
{
\exp_not:N \exp_after:wN \exp_not:N \@@_if_primitive:NNw
- \exp_not:N \token_to_meaning:N ##1
- \tl_to_str:n { : : : } \s_@@_stop ##1
+ \exp_not:N \token_to_meaning:N #1
+ \tl_to_str:n { : : : } \s_@@_stop #1
}
}
\cs_new:Npn \exp_not:N \@@_if_primitive:NNw
- ##1##2 ##3 \c_colon_str ##4 \s_@@_stop
+ #1#2 #3 \c_colon_str #4 \s_@@_stop
{
\exp_not:N \tl_if_empty:oTF
- { \exp_not:N \@@_if_primitive_space:w ##3 ~ }
+ { \exp_not:N \@@_if_primitive_space:w #3 ~ }
{
- \exp_not:N \@@_if_primitive_loop:N ##3
+ \exp_not:N \@@_if_primitive_loop:N #3
\c_colon_str \s_@@_stop
}
{ \exp_not:N \@@_if_primitive_nullfont:N }
@@ -2694,7 +2694,7 @@ end
% \begin{macrocode}
\cs_new_protected:Npn \peek_remove_spaces:n #1
{
- \cs_set:Npx \@@_false:w { \exp_not:n {#1} }
+ \cs_set:Npe \@@_false:w { \exp_not:n {#1} }
\group_align_safe_begin:
\cs_set:Npn \@@_true_aux:w { \peek_after:Nw \@@_remove_spaces: }
\@@_true_aux:w
@@ -2723,7 +2723,7 @@ end
\cs_new_protected:Npn \peek_remove_filler:n #1
{
\cs_set:Npn \@@_true_aux:w { \@@_remove_filler:w }
- \cs_set:Npx \@@_false:w
+ \cs_set:Npe \@@_false:w
{
\exp_not:N \group_align_safe_end:
\exp_not:n {#1}
@@ -2786,13 +2786,13 @@ end
\group_align_safe_begin:
\cs_set_eq:NN \l_@@_search_token #3
\tl_set:Nn \l_@@_search_tl {#3}
- \cs_set:Npx \@@_true_aux:w
+ \cs_set:Npe \@@_true_aux:w
{
\exp_not:N \group_align_safe_end:
\exp_not:n {#4}
}
\cs_set_eq:NN \@@_true:w #1
- \cs_set:Npx \@@_false:w
+ \cs_set:Npe \@@_false:w
{
\exp_not:N \group_align_safe_end:
\exp_not:n {#5}
@@ -2928,7 +2928,7 @@ end
{
\tl_map_inline:nn { { TF } { T } { F } }
{
- \cs_new_protected:cpx { peek_ #1 ##1 :N ####1 }
+ \cs_new_protected:cpe { peek_ #1 ##1 :N ####1 }
{
\exp_not:c { @@_token ##1 _generic:NN ####1 }
\exp_not:c { @@_execute_branches_ #1 : }
diff --git a/macros/latex/contrib/l3kernel/l3unicode.dtx b/macros/latex/contrib/l3kernel/l3unicode.dtx
index f79fc63e5a..2161e0963e 100644
--- a/macros/latex/contrib/l3kernel/l3unicode.dtx
+++ b/macros/latex/contrib/l3kernel/l3unicode.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -549,7 +549,7 @@
}
\cs_set_protected:Npn \@@_data_auxii:w #1 ; #2 ~ #3 \q_stop
{
- \tl_const:cx
+ \tl_const:ce
{ c_@@_nfd_ \codepoint_str_generate:n {"#1} _tl }
{
{"#2}
@@ -607,11 +607,11 @@
\@@_add:nn { lowercase } {#5}
\int_compare:nNnF {#4} = { \@@_data_offset:nn {#1} {#6} }
{
- \tl_const:cx
+ \tl_const:ce
{ c_@@_titlecase_ \codepoint_str_generate:n {"#1} _tl }
{ {"#6} { } { } }
}
- \tl_set:Nx \l_@@_next_codepoint_fint_tl
+ \tl_set:Ne \l_@@_next_codepoint_fint_tl
{ \int_eval:n { "#1 + 1 } }
}
\cs_set_protected:Npn \@@_add:nn #1#2
@@ -626,7 +626,7 @@
% The general category for unassigned characters is \texttt{Cn}, so we
% find the correct value once and then use that.
% \begin{macrocode}
- \cs_set_protected:Npx \@@_data_auxv:nnnnw #1#2#3#4#5 Last> #6 \q_stop
+ \cs_set_protected:Npe \@@_data_auxv:nnnnw #1#2#3#4#5 Last> #6 \q_stop
{
\exp_not:N \tl_if_blank:nTF {#6}
{
@@ -679,7 +679,7 @@
\int_compare:nNnF
{ \int_div_truncate:nn { #2 - #1 } \c_@@_block_size_int } = 0
{
- \tl_set:cx { l_@@_ #3 _block_clist }
+ \tl_set:ce { l_@@_ #3 _block_clist }
{
\exp_args:NNe \use:nn \use_none:n
{ \prg_replicate:nn { \c_@@_block_size_int } { , #4 } }
@@ -689,7 +689,7 @@
}
\prg_replicate:nn
{ \int_mod:nn { #2 - #1 } \c_@@_block_size_int }
- { \clist_put_right:cx { l_@@_ #3 _block_clist } {#4} }
+ { \clist_put_right:ce { l_@@_ #3 _block_clist } {#4} }
}
% \end{macrocode}
% To allow rapid comparison, each completed block is stored locally as a
@@ -716,12 +716,12 @@
\tl_use:c { l_@@_ #1 _block_tl } _clist
}
{ l_@@_ #1 _block_clist }
- \tl_set:cx { l_@@_ #1 _block_tl }
+ \tl_set:ce { l_@@_ #1 _block_tl }
{ \int_eval:n { \tl_use:c { l_@@_ #1 _block_tl } + 1 } }
}
\prg_replicate:nn {#2}
{
- \tl_set:cx { l_@@_ #1 _pos_tl }
+ \tl_set:ce { l_@@_ #1 _pos_tl }
{ \int_eval:n { \tl_use:c { l_@@_ #1 _pos_tl } + 1 } }
\exp_args:Nc \__kernel_intarray_gset:Nnn
{ g_@@_ #1 _index_intarray }
@@ -846,7 +846,7 @@
\reverse_if:N \if_int_compare:w
\int_eval:n { \__kernel_codepoint_data:nn { lowercase } {"#1} + "#1 }
= "#3 ~
- \tl_const:cx
+ \tl_const:ce
{ c_@@_casefold_ \codepoint_str_generate:n {"#1} _tl }
{ {"#3} { } { } }
\fi:
@@ -862,7 +862,7 @@
% \begin{macrocode}
\cs_set_protected:Npn \@@_data_auxii:w #1 ~ #2 ~ #3 ~ #4 \q_stop
{
- \tl_const:cx { c_@@_casefold_ \codepoint_str_generate:n {"#1} _tl }
+ \tl_const:ce { c_@@_casefold_ \codepoint_str_generate:n {"#1} _tl }
{
{"#2}
{"#3}
@@ -895,7 +895,7 @@
{
\tl_if_empty:nF {#4}
{
- \tl_const:cx { c_@@_ #2 case_ \codepoint_str_generate:n {"#1} _tl }
+ \tl_const:ce { c_@@_ #2 case_ \codepoint_str_generate:n {"#1} _tl }
{
{"#3}
{"#4}
@@ -994,7 +994,7 @@
{
\str_if_empty:NF \l_@@_tmpb_str
{
- \clist_const:cx { c_@@_grapheme_ \l_@@_tmpb_str _clist }
+ \clist_const:ce { c_@@_grapheme_ \l_@@_tmpb_str _clist }
{ \exp_after:wN \use_none:n \l_@@_tmpa_str }
\cs_set_nopar:Npn \l_@@_tmpa_str { }
}
@@ -1004,7 +1004,7 @@
}
\cs_set_protected:Npn \@@_data_auxii:w #1 .. #2 .. #3 \q_stop
{
- \cs_set_nopar:Npx \l_@@_tmpa_str
+ \cs_set_nopar:Npe \l_@@_tmpa_str
{
\l_@@_tmpa_str ,
\tl_trim_spaces:n {#1} .. \tl_trim_spaces:n {#2}
diff --git a/macros/latex/contrib/l3kernel/source3.pdf b/macros/latex/contrib/l3kernel/source3.pdf
index 458c832be3..a89fb20da4 100644
--- a/macros/latex/contrib/l3kernel/source3.pdf
+++ b/macros/latex/contrib/l3kernel/source3.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3kernel/source3.tex b/macros/latex/contrib/l3kernel/source3.tex
index ee6efdcc7a..bd89e29524 100644
--- a/macros/latex/contrib/l3kernel/source3.tex
+++ b/macros/latex/contrib/l3kernel/source3.tex
@@ -40,6 +40,10 @@ for those people who are interested.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[kernel]{l3doc}
+
+\newif\ifinterface
+\interfacefalse
+
\listfiles
\begin{document}
@@ -53,7 +57,7 @@ for those people who are interested.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2023-08-29}
+\date{Released 2023-10-10}
\pagenumbering{roman}
\maketitle
diff --git a/macros/latex/contrib/l3kernel/source3body.tex b/macros/latex/contrib/l3kernel/source3body.tex
index cddbdac6e2..34573d3d64 100644
--- a/macros/latex/contrib/l3kernel/source3body.tex
+++ b/macros/latex/contrib/l3kernel/source3body.tex
@@ -44,8 +44,16 @@ for those people who are interested.
\setlength\parskip{\baselineskip}
\noindent
+\ifinterface
This is the reference documentation for the \pkg{expl3}
-programming environment. The \pkg{expl3} modules set up an experimental
+programming environment; see the matching \pkg{source3} PDF
+for the typeset sources.
+\else
+This is the typset sources for the \pkg{expl3}
+programming environment; see the matching \pkg{interface3} PDF
+for the API reference manual.
+\fi
+The \pkg{expl3} modules set up a
naming scheme for \LaTeX{} commands, which allow the \LaTeX{} programmer
to systematically name functions and variables, and specify the argument
types of functions.
diff --git a/macros/latex/contrib/l3packages/CHANGELOG.md b/macros/latex/contrib/l3packages/CHANGELOG.md
index de080e8d41..05001a0e8f 100644
--- a/macros/latex/contrib/l3packages/CHANGELOG.md
+++ b/macros/latex/contrib/l3packages/CHANGELOG.md
@@ -7,8 +7,14 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2023-10-10]
+
+### Changed
+- Track `expl3` changes
+
## [2023-08-29]
+### Added
- Re-add `\GetDocumentCommandArgSpec`, etc., to `xparse` stub
## [2023-02-02]
@@ -231,7 +237,8 @@ this project uses date-based 'snapshot' version identifiers.
- Switch to ISO date format
- Improve cross-module use of internal functions
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-08-29...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-10-10...HEAD
+[2023-10-10]: https://github.com/latex3/latex3/compare/2023-08-29...2023-10-10
[2023-08-29]: https://github.com/latex3/latex3/compare/2023-02-02...2023-08-29
[2023-02-02]: https://github.com/latex3/latex3/compare/2023-02-01...2023-02-02
[2023-02-01]: https://github.com/latex3/latex3/compare/2023-01-16...2023-02-01
diff --git a/macros/latex/contrib/l3packages/README.md b/macros/latex/contrib/l3packages/README.md
index e1f195b332..d3ecea7028 100644
--- a/macros/latex/contrib/l3packages/README.md
+++ b/macros/latex/contrib/l3packages/README.md
@@ -1,7 +1,7 @@
LaTeX3 High-Level Concepts
==========================
-Release 2023-08-29
+Release 2023-10-10
Overview
--------
@@ -20,13 +20,13 @@ updated at the same time.
Currently included in the CTAN release of `l3packages` are the following
bundles:
-* `l3keys2e`
+* `l3keys2e` (deprecated in favor of updated LaTeX kernel methods)
* `xfp` (from 2022-06-01 part of the LaTeX format)
-* `xfrac`
-* `xparse`
+* `xfrac`
+* `xparse` (deprecated in favor of elements move to the LaTeX kernel)
* `xtemplate`
-`l3keys2e`
+`l3keys2e` (deprecated)
----------
The `l3keys2e` package allows keys defined using `l3keys` to be used as package
diff --git a/macros/latex/contrib/l3packages/l3keys2e.dtx b/macros/latex/contrib/l3packages/l3keys2e.dtx
index 13fd652eaa..376cb136ac 100644
--- a/macros/latex/contrib/l3packages/l3keys2e.dtx
+++ b/macros/latex/contrib/l3packages/l3keys2e.dtx
@@ -62,7 +62,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -154,7 +154,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{l3keys2e}{2023-08-29}{}
+\ProvidesExplPackage{l3keys2e}{2023-10-10}{}
{LaTeX2e option processing using LaTeX3 keys}
% \end{macrocode}
%
@@ -206,7 +206,7 @@
{
unknown .code:n =
{
- \msg_error:nnxx { keyvalue } { option-unknown }
+ \msg_error:nnee { keyvalue } { option-unknown }
{ \l_keys_key_str } { \@currname }
}
}
@@ -264,7 +264,7 @@
{
\clist_map_inline:cn { opt@ \@currname . \@currext }
{
- \keys_if_exist:nxTF {#1} { \@@_latexe_remove_equals:n {##1} }
+ \keys_if_exist:neTF {#1} { \@@_latexe_remove_equals:n {##1} }
{ \clist_put_right:Nn \l_@@_latexe_options_clist {##1} }
{ \clist_put_right:Nn \@unusedoptionlist {##1} }
}
@@ -284,7 +284,7 @@
{
\clist_map_inline:Nn \@classoptionslist
{
- \keys_if_exist:nxT {#1} { \@@_latexe_remove_equals:n {##1} }
+ \keys_if_exist:neT {#1} { \@@_latexe_remove_equals:n {##1} }
{
\clist_put_right:Nn \l_@@_latexe_options_clist {##1}
\clist_remove_all:Nn \@unusedoptionlist {##1}
diff --git a/macros/latex/contrib/l3packages/l3keys2e.pdf b/macros/latex/contrib/l3packages/l3keys2e.pdf
index 754439a4ca..cfef37deff 100644
--- a/macros/latex/contrib/l3packages/l3keys2e.pdf
+++ b/macros/latex/contrib/l3packages/l3keys2e.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3packages/xfp.dtx b/macros/latex/contrib/l3packages/xfp.dtx
index 44fccd9271..2c3a5bf732 100644
--- a/macros/latex/contrib/l3packages/xfp.dtx
+++ b/macros/latex/contrib/l3packages/xfp.dtx
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -171,7 +171,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xfp}{2023-08-29}{}
+\ProvidesExplPackage{xfp}{2023-10-10}{}
{L3 Floating point unit}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/l3packages/xfp.pdf b/macros/latex/contrib/l3packages/xfp.pdf
index be5ed0387f..aa5b6c0293 100644
--- a/macros/latex/contrib/l3packages/xfp.pdf
+++ b/macros/latex/contrib/l3packages/xfp.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3packages/xfrac.dtx b/macros/latex/contrib/l3packages/xfrac.dtx
index 70981e871a..6bce5f93ee 100644
--- a/macros/latex/contrib/l3packages/xfrac.dtx
+++ b/macros/latex/contrib/l3packages/xfrac.dtx
@@ -65,7 +65,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -535,7 +535,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xfrac}{2023-08-29}{}
+\ProvidesExplPackage{xfrac}{2023-10-10}{}
{L3 Experimental split-level fractions}
% \end{macrocode}
%
@@ -784,11 +784,11 @@
\mode_if_math:TF
{
\cs_set_eq:NN \@@_text_or_math:n \text
- \cs_set:Npx \@@_denominator_font_change:
+ \cs_set:Npe \@@_denominator_font_change:
{ \tex_fam:D \l_@@_denominator_font_tl }
- \cs_set:Npx \@@_numerator_font_change:
+ \cs_set:Npe \@@_numerator_font_change:
{ \tex_fam:D \l_@@_numerator_font_tl }
- \cs_set:Npx \@@_slash_symbol_font_change:
+ \cs_set:Npe \@@_slash_symbol_font_change:
{ \tex_fam:D \l_@@_slash_symbol_font_tl }
}
{
diff --git a/macros/latex/contrib/l3packages/xfrac.pdf b/macros/latex/contrib/l3packages/xfrac.pdf
index 7b124a040f..61a472a901 100644
--- a/macros/latex/contrib/l3packages/xfrac.pdf
+++ b/macros/latex/contrib/l3packages/xfrac.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3packages/xparse.dtx b/macros/latex/contrib/l3packages/xparse.dtx
index 72a31e6871..ba98987d7f 100644
--- a/macros/latex/contrib/l3packages/xparse.dtx
+++ b/macros/latex/contrib/l3packages/xparse.dtx
@@ -67,7 +67,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -1064,7 +1064,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xparse}{2023-08-29}{}
+\ProvidesExplPackage{xparse}{2023-10-10}{}
{L3 Experimental document command parser}
% \end{macrocode}
%
@@ -1091,7 +1091,7 @@
{ \msg_redirect_module:nnn {#1} { info } { none } }
\cs_new_protected:Npn \@@_unknown_argument_type_error:n ##1
{
- \msg_error:nnxx {#1} { unknown-argument-type }
+ \msg_error:nnee {#1} { unknown-argument-type }
{ \@@_environment_or_command: } { \tl_to_str:n {##1} }
}
}
@@ -1126,7 +1126,7 @@
% These argument types are aliases of more general ones, for example
% with the default argument |-NoValue-|.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_normalize_type_g:w
+\cs_new_protected:Npe \@@_normalize_type_g:w
{ \exp_not:N \@@_normalize_type_G:w { \exp_not:V \c_novalue_tl } }
% \end{macrocode}
% \end{macro}
@@ -1399,7 +1399,7 @@
\cs_gset_protected:Npn \@@_get_arg_spec_error:n #1
{
\bool_set_true:N \l_@@_environment_bool
- \str_set:Nx \l_@@_environment_str {#1}
+ \str_set:Ne \l_@@_environment_str {#1}
\@@_get_arg_spec_error_aux:n
{ \cs_if_exist:cTF { \l_@@_environment_str } }
}
@@ -1407,11 +1407,11 @@
{
#1
{
- \msg_error:nnx { cmd } { non-xparse }
+ \msg_error:nne { cmd } { non-xparse }
{ \@@_environment_or_command: }
}
{
- \msg_error:nnx { cmd } { unknown }
+ \msg_error:nne { cmd } { unknown }
{ \@@_environment_or_command: }
}
}
@@ -1427,7 +1427,7 @@
{
\__kernel_cmd_if_xparse:NTF #1
{
- \tl_set:Nx \ArgumentSpecification { \tl_item:Nn #1 { 2 } }
+ \tl_set:Ne \ArgumentSpecification { \tl_item:Nn #1 { 2 } }
#2
}
{#3}
diff --git a/macros/latex/contrib/l3packages/xparse.pdf b/macros/latex/contrib/l3packages/xparse.pdf
index dffaa1ae59..483370f2fc 100644
--- a/macros/latex/contrib/l3packages/xparse.pdf
+++ b/macros/latex/contrib/l3packages/xparse.pdf
Binary files differ
diff --git a/macros/latex/contrib/l3packages/xtemplate.dtx b/macros/latex/contrib/l3packages/xtemplate.dtx
index 8386be5d98..5080d94b0f 100644
--- a/macros/latex/contrib/l3packages/xtemplate.dtx
+++ b/macros/latex/contrib/l3packages/xtemplate.dtx
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2023-08-29}
+% \date{Released 2023-10-10}
%
% \maketitle
%
@@ -711,15 +711,10 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ProvidesExplPackage{xtemplate}{2023-08-29}{}
+\ProvidesExplPackage{xtemplate}{2023-10-10}{}
{L3 Experimental prototype document functions}
% \end{macrocode}
%
-% \begin{macrocode}
-\cs_generate_variant:Nn \keys_define:nn { nx }
-\cs_generate_variant:Nn \tl_trim_spaces:n { e }
-% \end{macrocode}
-%
% \subsection{Variables and constants}
%
% \begin{variable}{\c_@@_code_root_tl}
@@ -943,7 +938,7 @@
\int_compare:nNnTF {#2} = \l_@@_tmp_tl
{#3}
{
- \msg_error:nnxxx { xtemplate }
+ \msg_error:nneee { xtemplate }
{ argument-number-mismatch } {#1} { \l_@@_tmp_tl } {#2}
}
}
@@ -959,7 +954,7 @@
\cs_if_exist:cTF { \c_@@_code_root_tl #1 / #2 }
{#3}
{
- \msg_error:nnxx { xtemplate } { no-template-code }
+ \msg_error:nnee { xtemplate } { no-template-code }
{#1} {#2}
}
}
@@ -976,7 +971,7 @@
{
\cs_if_exist:cTF { @@_store_value_ #1 :n }
{#2}
- { \msg_error:nnx { xtemplate } { unknown-keytype } {#1} }
+ { \msg_error:nne { xtemplate } { unknown-keytype } {#1} }
}
\cs_generate_variant:Nn \@@_execute_if_keytype_exist:nT { o }
% \end{macrocode}
@@ -990,7 +985,7 @@
{
\prop_if_in:NnTF \g_@@_object_type_prop {#1}
{#2}
- { \msg_error:nnx { xtemplate } { unknown-object-type } {#1} }
+ { \msg_error:nne { xtemplate } { unknown-object-type } {#1} }
}
% \end{macrocode}
% \end{macro}
@@ -1005,7 +1000,7 @@
\cs_if_exist:cTF { \c_@@_keytypes_root_tl #1 / #2 }
{#3}
{
- \msg_error:nnxx { xtemplate } { unknown-template }
+ \msg_error:nnee { xtemplate } { unknown-template }
{#1} {#2}
}
}
@@ -1191,13 +1186,13 @@
\int_set:Nn \l_@@_tmp_int {#2}
\int_compare:nTF { 0 <= \l_@@_tmp_int <= 9 }
{
- \msg_info:nnxx { xtemplate } { declare-object-type }
- {#1} { \exp_not:V \l_@@_tmp_int }
+ \msg_info:nnnV { xtemplate } { declare-object-type }
+ {#1} \l_@@_tmp_int
\prop_gput:NnV \g_@@_object_type_prop {#1}
\l_@@_tmp_int
}
{
- \msg_error:nnxx { xtemplate } { bad-number-of-arguments }
+ \msg_error:nnee { xtemplate } { bad-number-of-arguments }
{#1} { \exp_not:V \l_@@_tmp_int }
}
}
@@ -1266,7 +1261,7 @@
\seq_if_in:NoTF \l_@@_key_order_seq
\l_@@_key_name_tl
{
- \msg_error:nnx { xtemplate }
+ \msg_error:nne { xtemplate }
{ duplicate-key-interface }
{ \l_@@_key_name_tl }
}
@@ -1281,7 +1276,7 @@
{
\tl_if_empty:NT \l_@@_keytype_arg_tl
{
- \msg_error:nnx { xtemplate }
+ \msg_error:nne { xtemplate }
{ keytype-requires-argument } {#1}
\bool_set_true:N \l_@@_error_bool
\seq_map_break:
@@ -1290,7 +1285,7 @@
}
\cs_new:Npn \@@_parse_keys_elt_aux:
{
- \tl_set:Nx \l_@@_tmp_tl
+ \tl_set:Ne \l_@@_tmp_tl
{
\l_@@_keytype_tl
\tl_if_empty:NF \l_@@_keytype_arg_tl
@@ -1331,7 +1326,7 @@
% that, the standard delimited argument method is used to separate the
% two parts.
% \begin{macrocode}
-\cs_new_protected:Npx \@@_split_keytype:n #1
+\cs_new_protected:Npe \@@_split_keytype:n #1
{
\exp_not:N \bool_set_false:N \exp_not:N \l_@@_error_bool
\tl_set:Nn \exp_not:N \l_@@_tmp_tl {#1}
@@ -1347,32 +1342,32 @@
}
{
\exp_not:N \bool_set_true:N \exp_not:N \l_@@_error_bool
- \msg_error:nnx { xtemplate } { missing-keytype } {#1}
+ \msg_error:nne { xtemplate } { missing-keytype } {#1}
}
}
-\use:x
+\use:e
{
\cs_new_protected:Npn \exp_not:N \@@_split_keytype_aux:w
- ##1 \token_to_str:N : ##2 \s_@@_stop
+ #1 \token_to_str:N : #2 \s_@@_stop
{
- \tl_put_right:Nx \exp_not:N \l_@@_key_name_tl
+ \tl_put_right:Ne \exp_not:N \l_@@_key_name_tl
{
\exp_not:N \tl_trim_spaces:e
- { \exp_not:N \tl_to_str:n {##1} }
+ { \exp_not:N \tl_to_str:n {#1} }
}
- \tl_if_in:nnTF {##2} { \token_to_str:N : }
+ \tl_if_in:nnTF {#2} { \token_to_str:N : }
{
\tl_put_right:Nn \exp_not:N \l_@@_key_name_tl
{ \token_to_str:N : }
- \exp_not:N \@@_split_keytype_aux:w ##2 \s_@@_stop
+ \exp_not:N \@@_split_keytype_aux:w #2 \s_@@_stop
}
{
\exp_not:N \tl_if_empty:NTF \exp_not:N \l_@@_key_name_tl
{
- \msg_error:nnx { xtemplate } { empty-key-name }
- { \token_to_str:N : ##2 }
+ \msg_error:nne { xtemplate } { empty-key-name }
+ { \token_to_str:N : #2 }
}
- { \exp_not:N \@@_split_keytype_arg:n {##2} }
+ { \exp_not:N \@@_split_keytype_arg:n {#2} }
}
}
}
@@ -1395,7 +1390,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_split_keytype_arg:n #1
{
- \tl_set:Nx \l_@@_keytype_tl { \tl_trim_spaces:n {#1} }
+ \tl_set:Ne \l_@@_keytype_tl { \tl_trim_spaces:n {#1} }
\tl_clear:N \l_@@_keytype_arg_tl
\cs_set_protected:Npn \@@_split_keytype_arg_aux:n ##1
{
@@ -1406,11 +1401,11 @@
{
\tl_if_blank:nT {####1}
{
- \tl_set:Nx \l_@@_keytype_tl
+ \tl_set:Ne \l_@@_keytype_tl
{ \tl_trim_spaces:n {##1} }
\tl_if_blank:nF {####2}
{
- \tl_set:Nx \l_@@_keytype_arg_tl
+ \tl_set:Ne \l_@@_keytype_arg_tl
{ \use:n ####2 }
}
\seq_map_break:
@@ -1548,7 +1543,7 @@
\@@_store_restrictions:n { #1 / #2 }
\prop_map_inline:Nn \l_@@_keytypes_prop
{
- \msg_error:nnxxx { xtemplate } { key-not-implemented }
+ \msg_error:nneee { xtemplate } { key-not-implemented }
{##1} {#2} {#1}
}
}
@@ -1560,7 +1555,7 @@
% this is an error function.
% \begin{macrocode}
\cs_new_protected:Npn \@@_parse_vars_elt:n #1
- { \msg_error:nnx { xtemplate } { key-no-variable } {#1} }
+ { \msg_error:nne { xtemplate } { key-no-variable } {#1} }
% \end{macrocode}
% \end{macro}
%
@@ -1572,7 +1567,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_parse_vars_elt:nnn #1#2#3
{
- \tl_set:Nx \l_@@_key_name_tl
+ \tl_set:Ne \l_@@_key_name_tl
{ \tl_trim_spaces:e { \tl_to_str:n {#2} } }
\prop_get:NoNTF
\l_@@_keytypes_prop
@@ -1583,7 +1578,7 @@
\@@_parse_vars_elt_aux:nn {#1} {#3}
\prop_remove:NV \l_@@_keytypes_prop \l_@@_key_name_tl
}
- { \msg_error:nnx { xtemplate } { unknown-key } {#2} }
+ { \msg_error:nne { xtemplate } { unknown-key } {#2} }
}
% \end{macrocode}
% \end{macro}
@@ -1606,7 +1601,7 @@
{
\tl_if_blank:nTF {#2}
{
- \exp_args:Nnnx \@@_parse_vars_elt_aux:nnn
+ \exp_args:Nnne \@@_parse_vars_elt_aux:nnn
{#1} { global } { \tl_trim_spaces:n {#3} }
}
{ \msg_error:nnn { xtemplate } { bad-variable } { #2 global #3 } }
@@ -1630,7 +1625,7 @@
\exp_not:c
{ cs_ \str_if_eq:nnT {#1} { global } { g } set:Npn }
{ \exp_not:o \l_@@_keytype_arg_tl }
- {####1}
+ {##1}
}
}
\prop_put:Non \l_@@_vars_prop
@@ -1644,7 +1639,7 @@
{
\exp_not:c
{ cs_ \str_if_eq:nnT {#1} { global } { g } set:Npn }
- \exp_not:N #3 { \UseInstance {####1} }
+ \exp_not:N #3 { \UseInstance {##1} }
}
}
\prop_put:Non \l_@@_vars_prop
@@ -1665,12 +1660,12 @@
\prop_put:Non \l_@@_vars_prop
\l_@@_key_name_tl {#2#3}
}
- { \msg_error:nnx { xtemplate } { bad-variable } { #2#3 } }
+ { \msg_error:nne { xtemplate } { bad-variable } { #2#3 } }
}
}
\cs_new_protected:Npn \@@_parse_vars_elt_key:nn #1#2
{
- \keys_define:nx { template / #1 }
+ \keys_define:ne { template / #1 }
{ \l_@@_key_name_tl #2 }
}
% \end{macrocode}
@@ -1708,7 +1703,7 @@
{
\clist_set:No \l_@@_tmp_clist { \l_@@_keytype_arg_tl }
\prop_put:Non \l_@@_vars_prop \l_@@_key_name_tl { }
- \keys_define:nx { template / #1 } { \l_@@_key_name_tl .choice: }
+ \keys_define:ne { template / #1 } { \l_@@_key_name_tl .choice: }
\keyval_parse:nnn
{ \@@_implement_choice_elt:n }
{ \@@_implement_choice_elt:nnn {#1} }
@@ -1720,7 +1715,7 @@
{
\clist_map_inline:Nn \l_@@_tmp_clist
{
- \msg_error:nnx { xtemplate } { choice-not-implemented }
+ \msg_error:nne { xtemplate } { choice-not-implemented }
{##1}
}
}
@@ -1731,11 +1726,11 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_implement_choices_default:
{
- \tl_set:Nx \l_@@_tmp_tl
+ \tl_set:Ne \l_@@_tmp_tl
{ \l_@@_key_name_tl \c_space_tl \l_@@_tmp_tl }
\prop_if_in:NoF \l_@@_vars_prop \l_@@_tmp_tl
{
- \tl_set:Nx \l_@@_tmp_tl
+ \tl_set:Ne \l_@@_tmp_tl
{ \l_@@_key_name_tl \c_space_tl \l_@@_tmp_tl }
\prop_if_in:NoF \l_@@_vars_prop \l_@@_tmp_tl
{
@@ -1744,7 +1739,7 @@
\@@_split_keytype_arg:o \l_@@_tmp_tl
\prop_get:NoN \l_@@_values_prop \l_@@_key_name_tl
\l_@@_tmp_tl
- \msg_error:nnxxx { xtemplate } { unknown-default-choice }
+ \msg_error:nneee { xtemplate } { unknown-default-choice }
{ \l_@@_key_name_tl } { \l_@@_key_name_tl }
{ \l_@@_keytype_arg_tl }
}
@@ -1772,7 +1767,7 @@
\prop_get:NoN \l_@@_keytypes_prop \l_@@_key_name_tl
\l_@@_tmp_tl
\@@_split_keytype_arg:o \l_@@_tmp_tl
- \msg_error:nnxxx { xtemplate } { unknown-choice }
+ \msg_error:nneee { xtemplate } { unknown-choice }
{ \l_@@_key_name_tl } {#2}
{ \l_@@_keytype_arg_tl }
}
@@ -1787,7 +1782,7 @@
\prop_get:NoN \l_@@_keytypes_prop \l_@@_key_name_tl
\l_@@_tmp_tl
\@@_split_keytype_arg:o \l_@@_tmp_tl
- \msg_error:nnxxx { xtemplate } { unknown-choice }
+ \msg_error:nneee { xtemplate } { unknown-choice }
{ \l_@@_key_name_tl } {#2}
{ \l_@@_keytype_arg_tl }
}
@@ -1795,15 +1790,15 @@
}
\cs_new_protected:Npn \@@_implement_choice_elt_aux:nnn #1#2#3
{
- \keys_define:nx { template / #1 }
+ \keys_define:ne { template / #1 }
{ \l_@@_key_name_tl / #2 .code:n = { \exp_not:n {#3} } }
- \tl_set:Nx \l_@@_tmp_tl
+ \tl_set:Ne \l_@@_tmp_tl
{ \l_@@_key_name_tl \c_space_tl #2 }
\prop_put:Non \l_@@_vars_prop \l_@@_tmp_tl {#3}
}
\cs_new_protected:Npn \@@_implement_choice_elt:n #1
{
- \msg_error:nnxxx { xtemplate } { choice-requires-code }
+ \msg_error:nneee { xtemplate } { choice-requires-code }
{ \l_@@_key_name_tl } {#1}
}
% \end{macrocode}
@@ -1886,7 +1881,7 @@
\cs_new_protected:Npn \@@_parse_values_elt:n #1
{
\bool_set_true:N \l_@@_error_bool
- \msg_error:nnx { xtemplate } { key-no-value } {#1}
+ \msg_error:nne { xtemplate } { key-no-value } {#1}
}
% \end{macrocode}
% \end{macro}
@@ -1900,7 +1895,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_parse_values_elt:nn #1#2
{
- \tl_set:Nx \l_@@_key_name_tl
+ \tl_set:Ne \l_@@_key_name_tl
{ \tl_trim_spaces:e { \tl_to_str:n {#1} } }
\prop_get:NoNTF \l_@@_keytypes_prop \l_@@_key_name_tl
\l_@@_tmp_tl
@@ -1914,7 +1909,7 @@
{ \@@_parse_values_elt_aux:n {#2} }
}
{
- \msg_error:nnx { xtemplate } { unknown-key }
+ \msg_error:nne { xtemplate } { unknown-key }
{ \l_@@_key_name_tl }
}
}
@@ -1978,7 +1973,7 @@
\prop_put:Nnn \l_@@_values_prop { from~template } {#2}
\@@_store_values:n { #1 / #3 / #4 }
\@@_convert_to_assignments:
- \cs_set_protected:cpx { \c_@@_instances_root_tl #1 / #3 / #4 }
+ \cs_set_protected:cpe { \c_@@_instances_root_tl #1 / #3 / #4 }
{
\exp_not:N \@@_assignments_push:n
{ \exp_not:o \l_@@_assignments_tl }
@@ -2009,7 +2004,7 @@
{ \c_@@_instances_root_tl #1 / #2 / #3 }
}
{
- \msg_error:nnxx { xtemplate } { unknown-instance }
+ \msg_error:nnee { xtemplate } { unknown-instance }
{#1} {#3}
}
}
@@ -2035,7 +2030,7 @@
{#2} {#3} {#4}
}
{
- \msg_error:nnxx { xtemplate } { unknown-instance }
+ \msg_error:nnee { xtemplate } { unknown-instance }
{#1} {#3}
}
}
@@ -2094,7 +2089,7 @@
\tl_set:Nn \l_@@_key_name_tl {#1}
\use:c { @@_assign_ \l_@@_keytype_tl : }
}
- { \msg_error:nnx { xtemplate } { unknown-attribute } {#1} }
+ { \msg_error:nne { xtemplate } { unknown-attribute } {#1} }
}
}
\cs_generate_variant:Nn \@@_convert_to_assignments_aux:nn { no }
@@ -2170,7 +2165,7 @@
\@@_if_key_value:oTF \l_@@_value_tl
{
\@@_key_to_value:
- \tl_put_right:Nx \l_@@_assignments_tl
+ \tl_put_right:Ne \l_@@_assignments_tl
{
\exp_not:c { #1 _eq:NN }
\exp_not:o \l_@@_var_tl
@@ -2178,7 +2173,7 @@
}
}
{
- \tl_put_right:Nx \l_@@_assignments_tl
+ \tl_put_right:Ne \l_@@_assignments_tl
{
\exp_not:c { #1 _ \l_@@_value_tl :N }
\exp_not:o \l_@@_var_tl
@@ -2197,16 +2192,16 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_assign_choice:
{
- \@@_assign_choice_aux:xF
+ \@@_assign_choice_aux:eF
{ \l_@@_key_name_tl \c_space_tl \l_@@_value_tl }
{
- \@@_assign_choice_aux:xF
+ \@@_assign_choice_aux:eF
{ \l_@@_key_name_tl \c_space_tl unknown }
{
\prop_get:NoN \l_@@_keytypes_prop \l_@@_key_name_tl
\l_@@_tmp_tl
\@@_split_keytype_arg:o \l_@@_tmp_tl
- \msg_error:nnxxx { xtemplate } { unknown-choice }
+ \msg_error:nneee { xtemplate } { unknown-choice }
{ \l_@@_key_name_tl } { \l_@@_value_tl }
{ \l_@@_keytype_arg_tl }
}
@@ -2220,7 +2215,7 @@
\l_@@_tmp_tl
{ \tl_put_right:No \l_@@_assignments_tl \l_@@_tmp_tl }
}
-\cs_generate_variant:Nn \@@_assign_choice_aux:nF { x }
+\cs_generate_variant:Nn \@@_assign_choice_aux:nF { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2237,7 +2232,7 @@
}
\cs_new_protected:Npn \@@_assign_function_aux:N #1
{
- \tl_put_right:Nx \l_@@_assignments_tl
+ \tl_put_right:Ne \l_@@_assignments_tl
{
\cs_generate_from_arg_count:NNnn
\exp_not:o \l_@@_var_tl
@@ -2264,7 +2259,7 @@
}
\cs_new_protected:Npn \@@_assign_instance_aux:N #1
{
- \tl_put_right:Nx \l_@@_assignments_tl
+ \tl_put_right:Ne \l_@@_assignments_tl
{
\exp_not:N #1 \exp_not:o \l_@@_var_tl
{
@@ -2340,14 +2335,14 @@
\@@_if_key_value:oTF \l_@@_value_tl
{
\@@_key_to_value:
- \tl_put_right:Nx \l_@@_assignments_tl
+ \tl_put_right:Ne \l_@@_assignments_tl
{
#1 \exp_not:o \l_@@_var_tl
\exp_not:o \l_@@_value_tl
}
}
{
- \tl_put_right:Nx \l_@@_assignments_tl
+ \tl_put_right:Ne \l_@@_assignments_tl
{
#2 \exp_not:o \l_@@_var_tl
{ \exp_not:o \l_@@_value_tl }
@@ -2379,7 +2374,7 @@
{
\@@_if_key_value:oT \l_@@_value_tl
{ \@@_key_to_value: }
- \tl_put_right:Nx \l_@@_assignments_tl
+ \tl_put_right:Ne \l_@@_assignments_tl
{
#1 \exp_not:o \l_@@_var_tl
{ \exp_not:o \l_@@_value_tl }
@@ -2403,7 +2398,7 @@
{ \exp_after:wN \@@_key_to_value_auxi:w \l_@@_value_tl }
\cs_new_protected:Npn \@@_key_to_value_auxi:w \KeyValue #1
{
- \tl_set:Nx \l_@@_tmp_tl { \tl_trim_spaces:e { \tl_to_str:n {#1} } }
+ \tl_set:Ne \l_@@_tmp_tl { \tl_trim_spaces:e { \tl_to_str:n {#1} } }
\prop_get:NoNTF
\l_@@_vars_prop
\l_@@_tmp_tl
@@ -2413,7 +2408,7 @@
\s_@@_mark global \q_@@_nil \s_@@_stop
}
{
- \msg_error:nnx { xtemplate } { unknown-attribute }
+ \msg_error:nne { xtemplate } { unknown-attribute }
{ \l_@@_tmp_tl }
}
}
@@ -2450,7 +2445,7 @@
{
\str_if_eq:nnTF {#1} {#3}
{ \@@_use_template:nnn {#3} {#4} {#5} }
- { \msg_error:nnxx { xtemplate } { type-mismatch } {#1} {#3} }
+ { \msg_error:nnee { xtemplate } { type-mismatch } {#1} {#3} }
}
\cs_new_protected:Npn \@@_use_instance_aux:nn #1#2
{
@@ -2468,7 +2463,7 @@
\@@_if_instance_exist:nnnTF {#1} { } {#2}
{ \use:c { \c_@@_instances_root_tl #1 / / #2 } }
{
- \msg_error:nnxx { xtemplate } { unknown-instance }
+ \msg_error:nnee { xtemplate } { unknown-instance }
{#1} {#2}
}
}
@@ -2570,7 +2565,7 @@
}
\cs_new_protected:Npn \@@_show:Nnnn #1#2#3#4
{
- \msg_show:nnxxxx { xtemplate } { show-attribute }
+ \msg_show:nneeee { xtemplate } { show-attribute }
{ \tl_to_str:n {#2} }
{ \tl_to_str:n {#3} }
{ \tl_to_str:n {#4} }
@@ -2589,7 +2584,7 @@
\@@_if_instance_exist:nnnT {#1} {#2} {#3}
{
\@@_recover_values:n { #1 / #2 / #3 }
- \msg_show:nnxxxx { xtemplate } { show-values }
+ \msg_show:nneeee { xtemplate } { show-values }
{ \tl_to_str:n {#1} }
{ \tl_to_str:n {#2} }
{ \tl_to_str:n {#3} }
diff --git a/macros/latex/contrib/l3packages/xtemplate.pdf b/macros/latex/contrib/l3packages/xtemplate.pdf
index 31258f27de..57ab72b148 100644
--- a/macros/latex/contrib/l3packages/xtemplate.pdf
+++ b/macros/latex/contrib/l3packages/xtemplate.pdf
Binary files differ
diff --git a/macros/latex/contrib/non-decimal-units/README.md b/macros/latex/contrib/non-decimal-units/README.md
index fb4f75a2c0..e5e9eb728c 100644
--- a/macros/latex/contrib/non-decimal-units/README.md
+++ b/macros/latex/contrib/non-decimal-units/README.md
@@ -5,9 +5,9 @@ Macros for displaying and manipulating historical non-decimal units.
See [non-decimal-units.pdf](docs/non-decimal-units.pdf) for the documentation.
-Contents last updated 2023-09-27.
+Contents last updated 2023-10-10.
-<!-- Package available via CTAN at https://www.ctan.org/pkg/non-decimal-units -->
+Package available via CTAN at https://www.ctan.org/pkg/non-decimal-units
License: CC-BY-SA 4.0
Author: Mikkel Eide Eriksen <mikkel.eriksen@gmail.com>
diff --git a/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdf b/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdf
index 60e5b7acd8..19b21b0375 100644
--- a/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdf
+++ b/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.pdf
Binary files differ
diff --git a/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.preamble.sty b/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.preamble.sty
new file mode 100644
index 0000000000..977d02cbf5
--- /dev/null
+++ b/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.preamble.sty
@@ -0,0 +1,106 @@
+\usepackage{makeidx}
+\makeindex
+
+\usepackage{needspace}
+
+\usepackage{csquotes}
+\usepackage[english]{babel}
+\usepackage[
+ backend=biber,
+ urldate=long,
+ date=long,
+]{biblatex}
+\addbibresource{non-decimal-units.bib}
+
+\usepackage{enumitem}
+\usepackage[
+ hidelinks,
+]{hyperref}
+
+\usepackage{tcolorbox}
+\tcbuselibrary{documentation}
+\tcbuselibrary{minted}
+\tcbuselibrary{breakable}
+
+\definecolor{DarkDefinition}{rgb}{0.392,0.392,0.942}
+
+\tcbset{
+ listing engine=minted,
+ color definition=DarkDefinition,
+ floatplacement=h,
+ index colorize=true,
+ doc head={
+ interior style={
+ fill,
+ color=blue!10,
+ },
+ boxsep=2pt,
+ after skip=0pt,
+ nobeforeafter,
+ },
+ doc raster={
+ raster after skip=0pt,
+ },
+ before doc body={
+ \begin{tcolorbox}[
+ colback=blue!5,
+ colframe=blue!5,
+ arc=0pt,
+ outer arc=0pt,
+ before skip=0pt,
+ nobeforeafter,
+ ]
+ },
+ after doc body={\end{tcolorbox}},
+}
+
+\AtBeginEnvironment{tcb@manual@entry}{%
+ \needspace{4\baselineskip}%
+}
+
+\newtcbinputlisting{\unitlisting}[2]{%
+ listing file = {../latex/non-decimal-units.#1.tex},
+ title = Listing of units loaded with the \docAuxKey{#1} option,
+ listing only,
+ breakable,
+ minted options={fontsize=\small},
+ docexample,
+}
+
+\setlist[description]{
+ leftmargin=5em,
+ rightmargin=\leftmargin,
+ itemindent=\labelwidth,
+ align=right,
+ font=\docAuxKey,
+ noitemsep,
+}
+
+\usepackage{fnpct}
+
+\usepackage{tabularray}
+\UseTblrLibrary{booktabs}
+
+\usepackage{cleveref}
+
+\RequirePackage[autolanguage]{numprint}
+
+\usepackage[
+ danish,
+]{non-decimal-units}
+
+\RequirePackage{fontspec}
+\newfontfamily\mufifont{Palemonas MUFI}
+
+\RequirePackage[
+ MUFI,
+ fonts={
+ MUFI=\mufifont,
+ },
+]{unicode-alphabets}
+
+\nduKeys{%
+ units/mark/symbol=\mufi{markflour},
+ units/skilling/symbol=\mufi{schillgerm},
+ units/penning/symbol=\mufi{20B0},
+} \ No newline at end of file
diff --git a/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex b/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex
index d5490aa021..866efed85a 100644
--- a/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex
+++ b/macros/latex/contrib/non-decimal-units/docs/non-decimal-units.tex
@@ -1,15 +1,19 @@
% !TEX TS-program = LuaLaTeX-shell-escape
-\documentclass{article}
+\documentclass[
+ a4paper,
+ margin=4cm
+]{article}
\usepackage{non-decimal-units.preamble}
\title{Non-Decimal Units for \LaTeX}
\author{Mikkel Eide Eriksen\\\href{mailto:mikkel.eriksen@gmail.com}{\texttt{mikkel.eriksen@gmail.com}}}
-\nduset{
+\nduKeys{
set aligned for environment=tabular,
- aliases/danish rigsdaler,
- restrict segment depth=2,
+ tabularray column type=U,
+ unit depth=skilling,
+ unit separator={~},
}
\begin{document}
@@ -18,7 +22,7 @@
\section{Preface} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-Many historical unit systems were non-decimal. For example, the Danish rigsdaler\footnote{\url{https://en.wikipedia.org/wiki/Danish_rigsdaler}} --- where 1 \nduName{danish rigsdaler}{0} consists of \nduFactor{danish rigsdaler}{1}~\nduName{danish rigsdaler}{1}, each again consisting of \nduFactor{danish rigsdaler}{2}~\nduName{danish rigsdaler}{2} for a total of 96 \nduName{danish rigsdaler}{2} per \nduName{danish rigsdaler}{0} --- was used from 1625 to 1875, when currency was decimalised to the current system of 1 krone = 100 øre.
+Many historical unit systems were non-decimal. For example, the Danish rigsdaler\footnote{\url{https://en.wikipedia.org/wiki/Danish_rigsdaler}} --- where 1 rigsdaler consists of 16~mark, each again consisting of 16~skilling for a total of 96 skilling per rigsdaler --- was used from 1625 to 1875, when currency was decimalised to the current system of 1 krone = 100 øre.
% https://en.wikipedia.org/wiki/Non-decimal_currency
@@ -30,7 +34,7 @@ This package enables creation and configuration of such units to facilitate thei
In order to do this, values are divided into \emph{segments}, which are separated by decimal points: for example, the historical Danish monetary value \nduValue{danish rigsdaler}{1.2.3} is entered as \texttt{1.2.3}, which the code then formats appropriately.
-Issues can be reported at \url{https://github.com/mikkelee/latex-units/issues} but keep in mind I am not very experienced with \LaTeX ;)
+Issues can be reported at \url{https://github.com/mikkelee/latex-units/issues}.
\clearpage
\section{Configuration} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -45,16 +49,16 @@ Where \meta{options} may contain one or more of the following unit systems. See
\begin{description}
\item[british] Currencies
-\item[danish] Currencies and areas
+\item[danish] Currencies, areas, and weights
\item[german] Currencies
\end{description}
-Alternately, one may configure new units via \refCom{nduNewUnit}.
+Alternately, one may configure new units via \refCom{nduNewBaseUnit} and \refCom{nduNewUnitGroup}.
\end{docCommand}
\begin{docCommand}
- {nduset}
+ {nduKeys}
{\marg{options}}
Can be used to set options globally (in the preamble) or locally (in a group). See further documentation for possible keys/values.
@@ -70,18 +74,18 @@ The central macro is \docAuxCommand*{nduValue}. It formats values for display an
\begin{docCommand}
{nduValue}
- {\marg{unit name}\oarg{options}\marg{value}}
+ {\marg{unit group}\oarg{options}\marg{value}}
-Formats \meta{value} according to the setup configured for the \meta{unit name}, as well as any provided \meta{options}. The number of decimal points and the values between them determine how many and which segments are displayed.
+Formats \meta{value} according to the setup configured for the \meta{unit group}, as well as any provided \meta{options}.
-Empty segments are skipped, unless the \refKey{replace nil with} key is set.
+If no special configuration is made, the number of decimal points and the values between them determine how many and which units are displayed. For example, empty values are skipped unless the \refKey{replace nil with} key is set.
\begin{dispExample*}{
title=Example usage: \docAuxCommand*{nduValue} macro
}
\nduValue{danish rigsdaler}{1.2.3}\\
-\nduValue{danish rigsdaler}{1..}\\
-\nduValue{danish rigsdaler}{.2.}\\
+\nduValue{danish rigsdaler}{1}\\
+\nduValue{danish rigsdaler}{.2}\\
\nduValue{danish rigsdaler}{..3}\\
\end{dispExample*}
\end{docCommand}
@@ -90,38 +94,56 @@ Empty segments are skipped, unless the \refKey{replace nil with} key is set.
\subsubsection{Options}
\begin{docKeys}[
- doc name = show,
+ doc name = display,
]{
{
- doc parameter = {=values},
+ doc parameter = {=values only},
},
{
- doc parameter = {=values and symbols},
- doc description = initially \texttt{values and symbols},
+ doc parameter = {=formatted},
+ doc description = initially \texttt{formatted},
},
{
- doc parameter = {=symbols},
+ doc parameter = {=symbols only},
+ },
+ {
+ doc parameter = {=numprint},
},
}
-Changes which information is included in the expansion.
+ Changes which information is included in the expansion.
-Because only those segments with a value will be included, \docAuxKey*{show}=\docValue*{symbols} can be used to list the segment units (though if only one or two is needed, it may be preferable to use \refCom{nduSymbol}).
+ Because only present values will be included, \docAuxKey*{display}=\docValue*{symbols only} can be used to list the segment units (though it may be preferable to use \refCom{nduHeader} or \refCom{nduSymbol}).
\begin{dispExample}
\nduValue{danish hartkorn}
- [show=symbols]
+ [display=symbols only]
{0.0.0.0.0}
\nduValue{danish hartkorn}
- [show=symbols]
+ [display=values only]
{0.0...}
\end{dispExample}
+
+ Finally, it is possible to use the \href{https://ctan.org/pkg/numprint}{numprint} package to format numbers, especially useful for larger values. Note that this may be counter to the formatting of some units (eg. British pounds), in which case one may prefer the \docAuxKey{use numprint} key instead.
+
+\begin{dispExample}
+\nduValue{danish rigsdaler}
+ [display=numprint]
+ {1000}
+\end{dispExample}
\end{docKeys}
-See also \cref{units:new} for further discussion on possible options.
+\begin{docKey}
+ {format}
+ {=\marg{...}}
+ {initially \docAuxCommand*{VALUE}\docAuxCommand*{nobreakspace}\docAuxCommand*{SYMBOL}}
+
+ Sets how a given base unit should be formatted for display.
+
+ The placeholders \docAuxCommand*{VALUE} and \docAuxCommand*{SYMBOL} will be substituted when the value is typeset.
+\end{docKey}
-\clearpage
\begin{docKeys}
[]
{
@@ -140,156 +162,117 @@ The key \docAuxKey*{replace nil with} replaces nil (empty) segments with a custo
The key \docAuxKey*{treat zero as nil} replaces 0 with nothing, which in turn means that setting both will replace both zero and nil with the custom string.
-These keys also apply in non-tabular contexts, but are probably most useful here.
-
-\begin{dispExample*}{
- title=Example usage: \docAuxKey*{replace nil with} key
-}
-\begingroup
-\nduset{
- treat zero as nil,
- replace nil with=---,
-}
-\begin{tabular}{r r}
- \toprule
- & \nduHeader{danish rigsdaler} \\
- \midrule
- a & \nduValue{danish rigsdaler}{1.2.3} \\
- b & \nduValue{danish rigsdaler}{100.0.0} \\
- c & \nduValue{danish rigsdaler}{.1.} \\
- \bottomrule
-\end{tabular}
-\endgroup
-\end{dispExample*}
\end{docKeys}
+\begin{docKey}
+ {unit depth}
+ {=\meta{unit name}}
+ {initially no restriction}
+
+ When calculating or displaying a value, only the segments up to and including \meta{unit name} will be considered.
+
+ In this document, the depth has been globally set to \texttt{skilling}, but older historical sub-units can be included by locally setting the depth to eg. \texttt{hvid} (or indeed not restricting it globally).
+
+ If the \meta{unit name} is not present in the current unit group, it has no effect.
+
+\begin{dispExample}
+\nduValue{danish rigsdaler}
+ [unit depth=skilling]
+ {1.2.3.4.5}
-\clearpage
-\subsection{Tabular Data} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-In order to align values in a tabular context, the \docAuxKey*{aligned} key causes \docAuxCommand{nduValue} to wrap each segment in a cell of equal width, using \docAuxCommand*{makebox}.
-
-Additionally, the \docAuxCommand*{nduHeader} macro provides a convenient header showing the unit symbols.
-
-All segments will be included in the headers and cells, whether they contain a value or not. If no value is provided for the segment, and no nil replacement is specified with the \refKey{replace nil with} key, the cell will be empty.
-
-\begin{docCommand}
- {nduHeader}
- {\marg{unit name}\oarg{options}}
- Formats the unit symbols in boxes suitable for a header. See \cpageref{units:new} for configuration of symbols.
-\end{docCommand}
-
-\clearpage
-\subsubsection{Options}
-
-\begin{docKeys}
- []
- {
- {
- doc name = aligned,
- doc description = {initially not set},
- },
- {
- doc name = set aligned for environment,
- doc description = {initially set for \texttt{tabular}},
- },
- }
+\nduValue{danish rigsdaler}
+ [unit depth=penning]
+ {1.2.3.4.5}
+\end{dispExample}
+\end{docKey}
- Setting \docAuxKey*{aligned} will format the presently displayed header in aligned boxes, desirable in tabular contexts.
+\begin{docKey}
+ {unit separator}
+ {=\meta{...}}
+ {initially \docAuxCommand*{nobreakspace}}
+
+ When displaying a value, this string will be inserted between each segment.
- Additionally, the \docAuxKey*{set aligned for environment} key can be set to an environment name, causing \docAuxKey*{aligned} to automatically be set aligned for those enviroments, using \docAuxCommand*{AtBeginEnvironment}. It can be set multiple times, once for each required environment.
+\begin{dispExample}
+\nduValue{danish hartkorn}[
+ display=values only,
+ unit separator=.
+ ]
+ {1.2.3.4}
-\begin{dispExample*}{
- title=Example usage: \docAuxCommand*{nduHeader} and \docAuxCommand*{nduValue} macros with \docAuxKey*{aligned} key.
-}
-\begingroup
-\begin{tabular}{r r}
- \toprule
- & \nduHeader{danish rigsdaler} \\
- \midrule
- a & \nduValue{danish rigsdaler}{1.2.3} \\
- b & \nduValue{danish rigsdaler}{100..} \\
- c & \nduValue{danish rigsdaler}{.1.} \\
- \bottomrule
-\end{tabular}
-\endgroup
-\end{dispExample*}
+\nduValue{danish rigsdaler}
+ [unit separator={---}]
+ {1.2.3}
+\end{dispExample}
-\end{docKeys}
+\end{docKey}
\begin{docKey}
- {cell width}
- {=\meta{length}}
- {initially \texttt{5em}}
-
-Changes the width of each segment.
+ {use numprint}
+ {}
+ {not set initially}
+
+ When displaying a value, use the \href{https://ctan.org/pkg/numprint}{numprint} package, including when using the \docAuxKey{format} key. You can of course also configure the numprint settings, either in a group or locally.
-\begin{dispExample*}{
- title=Example usage: \docAuxKey*{cell width} key
-}
+\begin{dispExample}
\begingroup
-\nduset{
- cell width=3em,
-}
-\begin{tabular}{r r}
- \toprule
- & \nduHeader{danish rigsdaler} \\
- \midrule
- a & \nduValue{danish rigsdaler}{1.2.3} \\
- b & \nduValue{danish rigsdaler}{100..} \\
- c & \nduValue{danish rigsdaler}{.1.} \\
- \bottomrule
-\end{tabular}
+\selectlanguage{ngerman}
+\nduValue{danish rigsdaler}
+ [use numprint]
+ {1000.0}
\endgroup
-\end{dispExample*}
+\end{dispExample}
+
\end{docKey}
\clearpage
-\subsection{Arithmetical Operations} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-Basic arithmetic functions can be used to build a result for display. Internally, this is done by converting the value to a representation, which is the total number of the smallest usable unit, eg. \nduValue{danish rigsdaler}{1.2.3} is 131 \nduName{danish rigsdaler}{2}.
+\section{Arithmetical Operations} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-Results can be gathered in two ways, either manually via the \docAuxCommand*{nduMath} macro, or automatically via the \docAuxKey{add to variable} and \docAuxKey{subtract from variable} keys, the latter being especially suitable in tabular contexts.
-
-\begin{docCommands}[]{
- {
- doc name = nduMath,
- doc parameter = \marg{unit name}\oarg{options}\marg{variable}\marg{operator}\marg{value}
- },
- {
- doc name = nduResult,
- doc parameter = \marg{unit name}\oarg{options}\marg{variable}
- }
-}
+Basic arithmetic functions can be used to build a result for display. This is done by converting the value to an internal representation and storing it in a global variable. The first time a variable is used, it is assumed that the value is 0.
-The first arguments of \docAuxCommand*{nduMath} are identical to those of the \refCom{nduValue} macro. In addition, it has \meta{variable} and \meta{operator} (one of \texttt{+ - * /}) arguments. The first time a variable is used, it is assumed that the value is 0. The given value is then converted to its internal representation and stored in the variable. The command does not expand to any output.
+Results can be gathered in two ways, either manually via the \docAuxCommand*{nduMath} macro, or automatically via the \docAuxKey{add to variable} and \docAuxKey{subtract from variable} keys, the latter two being especially suitable in tabular contexts.
-Note that mixing units in the same variable is not currently supported, and will likely give incorrect results.
+\begin{docCommand}
+ {nduMath}
+ {\marg{unit name}\oarg{options}\marg{variable}\marg{operator}\marg{value}}
-The \docAuxCommand*{nduResult} macro takes a stored \meta{variable} and formats it for display in the same way as \refCom{nduValue}.
+ The first arguments of \docAuxCommand*{nduMath} are identical to those of the \refCom{nduValue} macro. In addition, it has \meta{variable} and \meta{operator} (one of \texttt{+ - * /}) arguments. The command does not expand to any output.
-Both may be further configured via the \meta{options} in the same way as the other macros.
+ Note that mixing unit groups in the same variable is not currently supported, and will likely give incorrect results.
\begin{dispExample*}{
- title=Example usage: \docAuxCommand*{nduMath} and \docAuxCommand*{nduResult} macros
+ title=Example usage: \docAuxCommand*{nduMath} macro
}
\nduMath{danish rigsdaler}{example 1}{+}{0.0.10}
\nduMath{danish rigsdaler}{example 1}{+}{..8}
\nduMath{danish rigsdaler}{example 1}{+}{0.2}
\nduMath{danish rigsdaler}{example 1}{+}{0.5.1}
-\nduResult{danish rigsdaler}{example 1} % = 1.2.3
+% there is no output, the result 1.2.3
+% will be seen in the following example.
\end{dispExample*}
+\end{docCommand}
+
+\begin{docCommand}
+ {nduResult}
+ {\marg{unit name}\oarg{options}\marg{variable}}
+
+ The \docAuxCommand*{nduResult} macro takes a stored \meta{variable} and formats it via \meta{options} for display in the same way as \refCom{nduValue}.
+
\begin{dispExample*}{
title=Example usage: \docAuxCommand*{nduResult} macro
}
-\nduHeader{danish rigsdaler}\\
-\nduResult{danish rigsdaler}[aligned]{example 1}
+\nduResult{danish rigsdaler}{example 1} % = 1.2.3
+
+And let's add an additional 15 skilling:
+\nduMath{danish rigsdaler}{example 1}{+}{0.0.15}
+\nduResult{danish rigsdaler}{example 1} % = 1.3.2
\end{dispExample*}
-\end{docCommands}
+
+\end{docCommand}
\clearpage
-\subsubsection{Options}
+\subsection{Options for Arithmetical Operations}
\begin{docKeys}
[
@@ -304,14 +287,13 @@ Both may be further configured via the \meta{options} in the same way as the oth
},
}
-Setting either of these keys will cause all uses of \docAuxCommand*{nduValue} in the current group to be added to or subtracted from the variable with the given name.
+Setting either of these keys will cause all uses of \docAuxCommand*{nduValue} in the current group to be added to or subtracted from the variable with the given name. It can of course also be set on individual invocations of the command.
\begin{dispExample*}{
title=Example usage: \docAuxKey*{add to variable} key
}
\begingroup
-\nduset{
- cell width=3em,
+\nduKeys{
replace nil with=---,
add to variable=example 2
}
@@ -321,22 +303,12 @@ Setting either of these keys will cause all uses of \docAuxCommand*{nduValue} in
\midrule
a & \nduValue{danish rigsdaler}{1.2.3} \\
b & \nduValue{danish rigsdaler}{100.1.} \\
- \bottomrule
+ \midrule
total & \nduResult{danish rigsdaler}{example 2} \\ % = 101.3.3
+ \bottomrule
\end{tabular}
\endgroup
\end{dispExample*}
-
-Results are global and remain accessible outside the group:
-\begin{dispExample}
-\nduResult{danish rigsdaler}{example 2}
-\end{dispExample}
-
-Adding an additional 15 \nduName{danish rigsdaler}{2} to the existing result gives:
-\begin{dispExample}
-\nduMath{danish rigsdaler}{example 2}{+}{0.0.15}
-\nduResult{danish rigsdaler}{example 2} % = 101.4.2
-\end{dispExample}
\end{docKeys}
\begin{docKey}
@@ -349,38 +321,151 @@ Reformats an amount, which is useful for quick conversions.
\begin{dispExample*}{
title=Example usage: \docAuxKey*{normalize} key
}
-100 \nduName{danish rigsdaler}{2} equal
+100 skilling equal
\nduValue{danish rigsdaler}[normalize]{..100} % 1.0.4
\end{dispExample*}
\end{docKey}
+\clearpage
+\section{Tabular Data} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{Accessing Information About Units} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+There are a couple of ways to display values in tabular context, centered around explicitly or implicitly setting the \docAuxKey{aligned} key, which causes \docAuxCommand{nduValue} to wrap each segment in a cell of configurable width.
+
+Additionally, all segments will be included in headers and cells, whether they contain a value or not (provided \docAuxKey{unit depth} allows it). If no value is provided for the segment, and no nil replacement is specified with the \refKey{replace nil with} key, the cell will be empty.
\begin{docCommand}
- {nduName}
- {\marg{unit name}\marg{segment}}
- Expands to the name of the the given segment of the unit.
-
- Set by \refKey{segment:name}.
+ {nduHeader}
+ {\marg{unit name}\oarg{options}}
+ Convenient header showing the unit symbols. See \cpageref{units:new} for configuration of symbols.
\end{docCommand}
+\subsection{Options for Tabular Data}
+
+\begin{docKey}
+ {aligned}
+ {}
+ {initially not set}
+
+Causes each value to be wrapped in right-aligned cells of configurable width.
+\end{docKey}
+
+\begin{docKey}
+ {cell widths}
+ {=\meta{length}}
+ {initially \texttt{3em}}
+
+Changes the width of each cell. One may supply a bracketed comma-separated list of widths. If the list is shorter than the number of base units in the group, the last width will be repeated. See page \pageref{example:table:widths} for example.
+\end{docKey}
+
+\begin{docKeys}
+ []
+ {
+ {
+ doc name = set aligned for environment,
+ doc parameter = {=\meta{name}},
+ doc description = {initially not set},
+ },
+ {
+ doc name = tabularray column type,
+ doc parameter = {=\meta{letter}},
+ doc description = {initially not set},
+ },
+ }
+
+ The \docAuxKey{set aligned for environment} key can be set to an environment name, causing \docAuxKey*{aligned} to automatically be set for those enviroments, using \docAuxCommand*{AtBeginEnvironment}. It can be set multiple times, once for each required environment. See page \pageref{example:table:environment} for example.
+
+ The \docAuxKey{tabularray column type} key can be used to create a column type, which automatically wraps the column contents in \docAuxCommand{nduValue}. The column type takes two arguments, a unit group and a set of key values for further configuration. Additionally, the special values \texttt{HEADER}, \texttt{RESULT}, and \texttt{SKIP} will respectively use \docAuxCommand{nduHeader}, \docAuxCommand{nduResult}, and skip the cell. See page \pageref{example:table:tabularray} for example\footnote{Thanks to Yukai Chou for help with \href{https://github.com/lvjr/tabularray}{tabularray} integration.}.
+
+\end{docKeys}
+
+\begin{dispExample*}{
+ title=Example of tabular data using \docAuxKey{set aligned for environment},
+ label=example:table:environment
+}
+\begingroup
+\nduKeys{
+% has been set in this document's preamble:
+% set aligned for environment=tabular,
+ treat zero as nil,
+ replace nil with=---,
+}
+\begin{tabular}{r r}
+ \toprule
+ & \nduHeader{danish rigsdaler} \\
+ \midrule
+ a & \nduValue{danish rigsdaler}{1.2.3} \\
+ b & \nduValue{danish rigsdaler}{100.0.0} \\
+ c & \nduValue{danish rigsdaler}{.1.} \\
+ \bottomrule
+\end{tabular}
+\endgroup
+\end{dispExample*}
+
+\begin{dispExample*}{
+ title=Example usage: \docAuxKey*{cell widths} key,
+ label=example:table:widths
+}
+\begingroup
+\nduKeys{
+ cell widths={5em, 1.5em},
+}
+\begin{tabular}{r r}
+ \toprule
+ & \nduHeader{danish rigsdaler} \\
+ \midrule
+ a & \nduValue{danish rigsdaler}{1.2.3} \\
+ b & \nduValue{danish rigsdaler}{100..} \\
+ c & \nduValue{danish rigsdaler}{.1.} \\
+ \bottomrule
+\end{tabular}
+\endgroup
+\end{dispExample*}
+
+\begin{dispExample*}{
+ title=Example of tabular data using \docAuxKey{tabularray column type},
+ label=example:table:tabularray
+}
+\begingroup
+% has been set in this document's preamble:
+% tabularray column type=U
+\begin{tblr}{
+ r
+ U{danish rigsdaler}{add to variable=table result 1}|
+ U{danish rigsdaler}{add to variable=table result 2}
+}
+ \toprule
+ & HEADER & HEADER\\
+ \midrule
+ a & 1.2.3 & ..15 \\
+ b & 100.0.0 & ..10 \\
+ c & .1. & ..2 \\
+ \midrule
+ total & RESULT & RESULT \\
+ \bottomrule
+\end{tblr}
+\endgroup
+\end{dispExample*}
+
+\clearpage
+\section{Accessing Information About Units} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
\begin{docCommand}
{nduSymbol}
- {\marg{unit name}\marg{segment}}
- Expands to the symbol of the the given segment of the unit.
+ {\marg{unit name}}
+ Expands to the symbol of the given base unit.
- Set by \refKey{segment:symbol}.
+ Set by \refKey{units:symbol}.
\end{docCommand}
\begin{docCommand}
{nduFactor}
- {\marg{unit name}\marg{segment}}
- Expands to the conversion factor of the the given segment of the unit, ie. how many of the underlying segment the given segment consists of.
+ {\marg{unit name}\marg{unit name}}
+ Expands to the conversion between two base units.
+ Set by \refKey{units:factor}.
\begin{dispExample}
-That is, 1 \nduName{danish rigsdaler}{0} consists of
-\nduFactor{danish rigsdaler}{1} \nduName{danish rigsdaler}{1}.
+That is, 1 \nduSymbol{rigsdaler} consists of
+\nduFactor{rigsdaler}{skilling} \nduSymbol{skilling}.
\end{dispExample}
\end{docCommand}
@@ -391,156 +476,66 @@ That is, 1 \nduName{danish rigsdaler}{0} consists of
If the included units are not suitable, more can be created. Pull requests are also welcome at \url{https://github.com/mikkelee/latex-units}.
\begin{docCommand}
- {nduNewUnit}
+ {nduNewBaseUnit}
{\marg{unit name}\marg{key/value pairs}}
-Units can have up to 7 segments, numbered \meta{0-6}. The left-most segment, that is, the \emph{top} or \emph{root} segment, is numbered \texttt{0}.
-
-The numeral part of the below key paths \docAuxKey*{segment 0/} can be any integer up to \texttt{6}, ie. \docAuxKey*{segment 6/}. The internal number of segments is determined by how many name keys are created.
-
-See below for available settings.
+Creates a new base unit. It must contain at least a \docAuxKey{symbol}, but a \docAuxKey{factor} is also required for the math functions (see below).
\end{docCommand}
\begin{docCommand}
- {nduNewMacro}
- {\marg{unit name}\oarg{key/value pairs}\marg{control sequence}}
+ {nduNewUnitGroup}
+ {\marg{unit name}\oarg{key/value pairs}\marg{ordered base units}\oarg{control sequence}}
- It is possible to create shortcut macros for commonly used \meta{unit name}s with optional overriding options.
+ In order for the math functions to work, every base unit in the group must have a conversion path to the right-most base unit, eg. if a unit group consists of base units \texttt{A, B, C}, there must be defined factors for \texttt{B\rightarrow C} and either \texttt{A\rightarrow C} or \texttt{A\rightarrow B}; if only the latter is configured, an attempt to calculate and cache it will be made internally.
- These macros take the same arguments as the full \refCom{nduValue} macro, except without the first argument (ie. the name of the unit).
+ It is possible to create shortcut macros for commonly used unit groups with optional overriding options. These macros take the same arguments as the full \refCom{nduValue} macro, except without the first argument (ie. the name of the unit).
+
+ Including several sub units may make the math results awkward, as the algorithm is greedy.
\begin{dispExample}
-\nduNewMacro{rigsdaler.mark.skilling}
- [unit groups/rigsdaler.mark.skilling/segment 0/symbol={R\textsuperscript{dl}}]
- {myRdl}
-\myRdl{1.2.3}
+\nduNewUnitGroup{my sletdaler}
+ [units/sletdaler/symbol={Sletd.}]
+ {sletdaler, ort, skilling}
+ [\mySldl]
+\mySldl{1.2.3}
\end{dispExample}
\end{docCommand}
-%\begin{docCommand}
-% {nduCommonSymbols}
-% {\marg{key/value pairs}}
-%
-% It is possible to configure commonly used symbols using the form \texttt{\meta{name}=\meta{symbol}}. These will be used as fallbacks if no specific symbol is configured for a segment via \refKey{segment:symbol}.
-%
-%\end{docCommand}
-%
-%\begin{docCommand}
-% {nduCommonFactors}
-% {\marg{key/value pairs}}
-%
-% Not currently implemented.
-%
-%\end{docCommand}
-
\clearpage
-\subsubsection{Options}
-
-\begin{docKey}
- {segment separator}
- {=\meta{...}}
- {initially \texttt{\~{}}}
-
- When displaying a value, this string will be inserted between each segment.
-
-\begin{dispExample}
-\nduValue{danish hartkorn}[
- show=values,
- segment separator=.
- ]
- {1.2.3.4}
-
-\nduValue{danish rigsdaler}
- [segment separator={---}]
- {1.2.3}
-\end{dispExample}
-
-\end{docKey}
-
-\begin{docKey}
- {restrict segment depth}
- {=\meta{integer}}
- {initially no restriction}
-
- When calculating or displaying a value, only the segments up to and including \meta{integer} will be considered.
-
- In this document, the depth has been globally set to \texttt{2} for \docAuxKey*{danish rigsdaler}, but the older historical sub-unit \nduName{danish rigsdaler}{3} can be included by locally setting the depth to \texttt{3} (or indeed not restricting it globally).
-
-\begin{dispExample}
-\nduValue{danish rigsdaler}
- [restrict segment depth=3]
- {1.2.3.4}
-\end{dispExample}
-\end{docKey}
-
-\begin{docKey}
- []
- [doc label=segment:name]
- {segment \meta{n}/name}
- {=\meta{name}}
- {no default, initially undefined}
-
- Gives the proper name of the segment's unit. Used internally to determine how many segments the unit contains.
-
- Can be accessed with by \refCom{nduName}.
-\end{docKey}
+\subsection{Options For Base Units}
\begin{docKey}
[]
- [doc label=segment:symbol]
- {segment \meta{n}/symbol}
+ [doc label=units:symbol]
+ {units/\meta{unit name}/symbol}
{=\meta{symbol}}
- {no default, initially undefined}
+ {}
- Configures a symbol displaying the unit. This is used in \docAuxCommand{nduHeader} and is also available via \docAuxCommand{nduSym} when defining the \refKey{segment:display} (see below).
-
- If none is configured, an attempt to look up a common symbol by its name is made. These can be configured with \refCom{nduCommonSymbols}.
+ Configures a symbol displaying the unit. This is used in \docAuxCommand{nduValue}, \docAuxCommand{nduHeader}, and is also available via \docAuxCommand*{SYMBOL} when defining the \refKey{units:format} (see also \refKey{}).
\end{docKey}
-\begin{docKeys}
- [
- doc parameter = {=\meta{...}},
- ]
- {
- {
- doc name = {segment \meta{n}/prefix},
- doc label = segment:prefix,
- doc description = {initially set to \texttt{\{\}}},
- },
- {
- doc name = {segment \meta{n}/suffix},
- doc label = segment:suffix,
- doc description = {initially set to \texttt{\{~\docAuxCommand*{nduSym}\}}},
- },
- }
-
- When displaying a value, segments will be wrapped between the \meta{prefix} and \meta{suffix}.
-
- The macro \docAuxCommand{nduSym} is available here to show the symbol configured for the segment.
-\end{docKeys}
-
\begin{docKey}
[]
- [doc label=segment:display]
- {segment \meta{n}/display}
- {=\marg{prefix}\marg{suffix}}
+ [doc label=units:format]
+ {units/\meta{unit name}/format}
+ {=\marg{...}}
{}
- Sets both \refKey{segment:prefix} and \refKey{segment:suffix} at the same time.
+ Sets how a given base unit should be formatted for display. If none is given, the general top-level \docAuxKey{format} key is used.
\end{docKey}
\begin{docKey}
[]
- [doc label=segment:factor]
- {segment \meta{n}/factor}
- {=\meta{integer}}
- {no default, initially undefined}
+ [doc label=units:factor]
+ {units/\meta{unit name}/factor}
+ {=\meta{integer} \meta{unit name}}
+ {}
- The conversion factor of a segment is how many of the underlying segment the given segment consists of.
+ The conversion factor of a unit is how many of an underlying unit the given unit consists of. This can be specified multiple times.
- This is used in the math macros, in order to calculate the correct segment values.
+ This is used by the math macros and keys to calculate the sums and products.
Can be accessed via \refCom{nduFactor}.
\end{docKey}
@@ -549,39 +544,22 @@ These keys can of course also be set temporarily in \refCom{nduValue}
\begin{dispExample}
\nduValue{danish rigsdaler}
- [segment 1/symbol=Mk.]
+ [units/mark/symbol=Mk.]
{.9.}
\nduValue{danish rigsdaler}
- [segment 0/display={}{~Rigsdaler og}]
+ [units/rigsdaler/format={\VALUE~Rigsdaler og}]
{1.2.3}
\nduValue{danish rigsdaler}[
- segment separator={---},
- segment 0/display={(}{)},
- segment 1/display={[}{]},
- segment 2/display={\{}{\}},
+ unit separator={---},
+ units/rigsdaler/format={(\VALUE)},
+ units/mark/format={[\VALUE]},
+ units/skilling/format={\{\VALUE\}},
]
{1.2.3}
\end{dispExample}
-\begin{docKey}
- {create macro named}
- {=\meta{control sequence}}
- {no default, initially empty}
-
- Units may provide a default shortcut macro, for example the \docValue*{danish rigsdaler} unit configures \docAuxCommand*{rdl}.
-
- This is done via \refCom{nduNewMacro} which describes the arguments of the resulting macros.
-
-\begin{dispExample*}{
- sidebyside,
- righthand width=1.75cm,
-}
-\rdl{2.3.}
-\end{dispExample*}
-\end{docKey}
-
\clearpage
\section{Included Units} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex
index 28c849f641..968742b8f9 100644
--- a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex
+++ b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.british.tex
@@ -2,26 +2,27 @@
% https://en.wikipedia.org/wiki/£sd
-\nduBaseUnits{%
- pound sterling={%
- symbol=£,
- display={\nduSym}{},
- },
- shilling={%
- symbol=s,
- factor=20 per pound sterling,
- display={}{\nduSym},
- },
- penny={%
- symbol=d,
- factor=12 per shilling,
- display={}{\nduSym},
- },
+\nduNewBaseUnit { pound~sterling } {
+ symbol = { £ } ,
+ factor = { 20~shilling } ,
+ format = { \SYMBOL\VALUE } ,
}
-\nduAliases{%
- british pound sterling lsd={%
- units=pound sterling.shilling.penny,
- segment separator={. },
- },
+\nduNewBaseUnit { shilling } {
+ symbol = { s } ,
+ factor = { 12~penny } ,
+ format = { \VALUE\SYMBOL } ,
+}
+
+\nduNewBaseUnit { penny } {
+ symbol = { d } ,
+ format = { \VALUE\SYMBOL } ,
+}
+
+\nduNewUnitGroup { british~pound~sterling~lsd } [
+ unit~separator = {.~} ,
+] {
+ pound~sterling ,
+ shilling ,
+ penny
}
diff --git a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex
index 0ac75c3587..a57fd8d402 100644
--- a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex
+++ b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.danish.tex
@@ -1,122 +1,128 @@
%%% CURRENCY %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\nduBaseUnits{%
- rigsbankdaler={%
- symbol=Rbd.,
- },
- rigsdaler={%
- symbol=Rdl.,
- },
- sletdaler={%
- symbol=Sldl.,
- },
- speciedaler={%
- symbol=Spdl.,
- },
- ort={symbol=Ort,factor=4 per rigsdaler},
- mark={%
- symbol=Mk.,
- factor=6 per rigsdaler,
- factor=4 per sletdaler,
- },
- skilling={%
- symbol=Sk.,
- factor=16 per mark,
- factor=24 per ort,
- factor=84 per speciedaler,
- factor=96 per rigsbankdaler,
- },
- hvid={%
- symbol=Hvid,
- factor=3 per skilling,
- },
- penning={%
- symbol=Pg.,
- factor=4 per hvid,
- factor=12 per skilling,
- },
-}
-
-\nduAliases{%
- danish rigsbankdaler={%
- units=rigsbankdaler.skilling,
- macro={rbd}{%
- normalize,
- treat zero as nil
- },
- },
- danish rigsdaler={%
- units=rigsdaler.mark.skilling.penning,
- macro={rdl}{%
- normalize,
- treat zero as nil
- },
- },
- danish sletdaler={%
- units=sletdaler.mark.skilling.penning,
- macro={sldl}{%
- normalize,
- treat zero as nil
- },
- },
+\nduNewBaseUnit { rigsdaler } {
+ symbol = { Rdl. } ,
+ factor = { 6~mark } ,
}
+\nduNewBaseUnit { rigsbankdaler } {
+ symbol = { Rbdl. } ,
+ symbol = { 96~skilling } ,
+}
+
+\nduNewBaseUnit { rigsdaler specie } {
+ symbol = { Rds. } ,
+ symbol = { 192~skilling } ,
+}
+
+\nduNewBaseUnit { speciedaler } {
+ symbol = { Spdl. } ,
+ factor = { 84~skilling } ,
+}
+
+\nduNewBaseUnit { sletdaler } {
+ symbol = { Sldl. } ,
+ factor = { 4~mark } ,
+}
+
+\nduNewBaseUnit { ort } {
+ symbol = { O. } ,
+ factor = { 24~skilling } ,
+}
+
+\nduNewBaseUnit { mark } {
+ symbol = { Mk. } ,
+ factor = { 16~skilling } ,
+}
+
+\nduNewBaseUnit { skilling } {
+ symbol = { Sk. } ,
+ factor = { 3~hvid } ,
+}
+
+\nduNewBaseUnit { hvid } {
+ symbol = { Hv. } ,
+ factor = { 4~penning } ,
+}
+
+\nduNewBaseUnit { penning } {
+ symbol = { P. } ,
+}
+
+\nduNewUnitGroup { danish~rigsdaler } {
+ rigsdaler ,
+ mark ,
+ skilling ,
+ hvid ,
+ penning
+}[\rdl]
+
+\nduNewUnitGroup { danish~sletdaler } {
+ sletdaler ,
+ mark ,
+ skilling ,
+ hvid ,
+ penning
+}[\sldl]
+
+\nduNewUnitGroup { danish~rigsbankdaler } {
+ rigsbankdaler ,
+ skilling
+}[\rbdl]
+
+\nduNewUnitGroup { danish~speciedaler } {
+ speciedaler ,
+ skilling
+}[\spdl]
%%%% AREA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\nduBaseUnits{%
- tønde={%
- symbol=Td.,
- },
- skæppe={%
- symbol=Skp.,
- factor=8 per tønde,
- },
- fjerdingkar={%
- symbol=Fjk.,
- factor=4 per skæppe,
- },
- album={%
- symbol=Alb.,
- factor=3 per fjerdingkar,
- },
- penning/factor=4 per album, % penning symbols defined under currency
-}
-
-\nduAliases{%
- danish hartkorn={%
- units=tønde.skæppe.fjerdingkar.album.penning,
- macro={hartkorn}{%
- normalize,
- treat zero as nil
- },
- },
+\nduNewBaseUnit { tønde } {
+ symbol = { Td. } ,
+ factor = { 8~skæppe } ,
+}
+
+\nduNewBaseUnit { skæppe } {
+ symbol = { Sk. } ,
+ factor = { 4~fjerdingkar } ,
+}
+
+\nduNewBaseUnit { fjerdingkar } {
+ symbol = { Fj. } ,
+ factor = { 3~album } ,
+}
+
+\nduNewBaseUnit { album } {
+ symbol = { Alb. } ,
+ factor = { 4~penning } ,
}
+\nduNewUnitGroup { danish~hartkorn } {
+ tønde,
+ skæppe,
+ fjerdingkar,
+ album,
+ penning
+}[\hartkorn]
%%%% WEIGHT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\nduBaseUnits{%
- skippund={%
- symbol=Spd.,
- },
- lispund={%
- symbol=Lpd.,
- factor=20 per skippund,
- },
- skaalpund={%
- symbol=Pd.,
- factor=16 per lispund,
- },
-}
-
-\nduAliases{%
- danish pund={%
- units=skippund.lispund.skaalpund,
- macro={pund}{%
- normalize,
- treat zero as nil
- },
- },
+\nduNewBaseUnit { skippund } {
+ symbol = { Spd. } ,
+ factor = { 20~lispund } ,
+}
+
+\nduNewBaseUnit { lispund } {
+ symbol = { Lpd. } ,
+ factor = { 16~skålpund } ,
+}
+
+\nduNewBaseUnit { skålpund } {
+ symbol = { Pd. } ,
}
+\nduNewUnitGroup { danish~pund } {
+ skippund,
+ lispund,
+ skålpund
+}
diff --git a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex
index 912ee0d428..cde4d7e873 100644
--- a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex
+++ b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.german.tex
@@ -1,21 +1,21 @@
%%% CURRENCY %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\nduBaseUnits{%
- reichsthaler={%
- symbol=Rthl., % \mufi{reichtalold}
- },
- groschen={%
- symbol=Gr., % \mufi{grosch}
- factor=30 per reichsthaler,
- },
- pfennig={%
- symbol=Pf., % \mufi{20B0}
- factor=12 per groschen,
- },
+\nduNewBaseUnit { reichsthaler } {
+ symbol = { Rthl. } ,
+ factor = { 30~groschen } ,
}
-\nduAliases{%
- german reichsthaler={%
- units=reichsthaler.groschen.pfennig,
- },
+\nduNewBaseUnit { groschen } {
+ symbol = { Gr. } ,
+ factor = { 12~pfennig } ,
}
+
+\nduNewBaseUnit { pfennig } {
+ symbol = { Pf. } ,
+}
+
+\nduNewUnitGroup { german~reichsthaler } {
+ reichsthaler ,
+ groschen ,
+ pfennig
+} \ No newline at end of file
diff --git a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty
index 0444991aee..5358a0acdb 100644
--- a/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty
+++ b/macros/latex/contrib/non-decimal-units/latex/non-decimal-units.sty
@@ -1,598 +1,798 @@
-\ProvidesPackage{non-decimal-units}[2023/09/27 Macros for displaying and manipulating historical non-decimal units]
+\RequirePackage{expl3}
+\ProvidesExplPackage{non-decimal-units}{2023/10/10}{1.0}{Macros for displaying and manipulating historical non-decimal units}
% License: CC-BY-SA 4.0
% Author: Mikkel Eide Eriksen <mikkel.eriksen@gmail.com>
-\RequirePackage{pgfkeys}
-\RequirePackage{pgfopts}
-\RequirePackage{bigintcalc}
-
-\RequirePackage{etoolbox}
-\RequirePackage{ifthen}
-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\pgfkeys{/handlers/.store in cs/.code=\pgfkeysalso{%
- \pgfkeyscurrentpath/.code=\csdef{#1}{##1}}%
-}
-
-\def\nduset{\pgfqkeys{/ndu}}
-
-\newif\ifndushowvalues
-\newif\ifndushowaffixes
-\newif\ifndutreatzeroasnil
-\newif\ifndualigned
-\ndushowvaluestrue
-\ndushowaffixestrue
-\newif\ifndunormalize
-
-\newcounter{autorepr}
-
-\gdef\ndu@nextdelim{}%
-\gdef\ndu@delim{}%
-
-\nduset{%
- base units/.is family,
- base units/.unknown/.code={%
- \expandafter\nduBuildBaseUnitKeys\expandafter{\pgfkeyscurrentname}{#1}%
- },
- unit groups/.is family,
- unit groups/.unknown/.code={%
- \expandafter\nduBuildUnitGroupKeys\expandafter{\pgfkeyscurrentname}%
- },
- aliases/.is family,
- aliases/.unknown/.code={%
- \expandafter\nduBuildAliasKeys\expandafter{\pgfkeyscurrentname}{#1}%
- },
- show/.is choice,
- show/values/.code={\ndushowvaluestrue\ndushowaffixesfalse},
- show/values and symbols/.code={\ndushowvaluestrue\ndushowaffixestrue},
- show/symbols/.code={\ndushowvaluesfalse\ndushowaffixestrue},
- show=values and symbols,
- cell width/.initial=5em,
- add to variable/.code={%
- \csdef{ndu@current@variable}{#1}%
- \csdef{ndu@current@operator}{+}%
- },
- subtract from variable/.code={%
- \csdef{ndu@current@variable}{#1}%
- \csdef{ndu@current@operator}{-}%
- },
- replace nil with/.store in cs=ndu@nil@replacement,
- treat zero as nil/.is if=ndutreatzeroasnil,
- treat zero as nil=false,
- normalize/.is if=ndunormalize,
- normalize=false,
- segment separator/.initial={~},
- aligned/.is if=ndualigned,
- aligned=false,
- set aligned for environment/.code={%
- \AtBeginEnvironment{#1}{\nduset{aligned}}%
- },
-}
-
-\newcommand\nduBuildBaseUnitKeys[2]{%
- \nduset{%
- base units/#1/.is family,base units/#1,
- symbol/.initial={#1},
- factor/.style args={##1 per ##2}{%
- /ndu/base units/##2/factors/#1/.initial=##1,
- },
- prefix/.initial={},
- suffix/.initial={~\nduSym},
- display/.style 2 args={%
- prefix={##1},
- suffix={##2},
- },
- #2,
- }%
-}
-
-\newcommand\nduBaseUnits[1]{%
- \nduset{%
- base units,#1,
- }%
-}
-
-\newcommand\nduBuildUnitGroupKeys[1]{% called by .unknown handler
- \nduset{%
- unit groups/#1/.search also={/ndu},
- unit groups/#1/.is family,unit groups/#1,
- segment separator/.link=/ndu/segment separator,
- segment depth/.initial=-1,
- update segment depth/.code={%
- \ifnum##1>\pgfkeysvalueof{/ndu/unit groups/#1/segment depth}%
- \nduset{%
- unit groups/#1/segment depth=##1,
- }%
- \fi%
- },
- restrict segment depth/.link=/ndu/unit groups/#1/segment depth,
- }%
- \nduBuildSegments{#1}{#1}%
-}
-
-\newcommand\nduUnitGroups[1]{%
- \nduset{%
- unit groups,#1,
- }%
-}
-
-\newcommand\nduBuildAliasKeys[2]{% called by .unknown handler
- \nduset{%
- aliases/#1/.is family,aliases/#1,
- units/.code={%
- % create unit group and set search path
- \pgfkeys{%
- /ndu/unit groups/##1,
- /ndu/aliases/#1/.search also={/ndu/unit groups/##1},
- /ndu/aliases/#1/unit group/.initial=##1,
- }%
- },
- macro/.code 2 args={%
- \nduNewMacro{#1}[##2]{##1}%
- },
- #2,
- }%
-}
-
-\newcommand\nduAliases[1]{%
- \nduset{%
- aliases,#1,
- }%
-}
-
-\NewDocumentCommand\nduBuildSegments{ m > { \SplitArgument { 6 } { . } } m }{%
- \nduBuildSegments@internal{#1}#2%
-}
-
-\newcommand\nduBuildSegments@internal[8]{%
- \nduNewUnit@segment{#1}{0}{#2}{#1}%
- \nduNewUnit@segment{#1}{1}{#3}{#2}%
- \nduNewUnit@segment{#1}{2}{#4}{#3}%
- \nduNewUnit@segment{#1}{3}{#5}{#4}%
- \nduNewUnit@segment{#1}{4}{#6}{#5}%
- \nduNewUnit@segment{#1}{5}{#7}{#6}%
- \nduNewUnit@segment{#1}{6}{#8}{#7}%
-}
-
-\newcommand\nduNewUnit@segment[4]{%
- \IfValueT{#3}{%
- \nduset{
- unit groups/#1/segment #2/.is family,unit groups/#1/segment #2,
- name/.initial=#3,
- symbol/.link=/ndu/base units/#3/symbol,
- prefix/.link=/ndu/base units/#3/prefix,
- suffix/.link=/ndu/base units/#3/suffix,
- display/.style 2 args={%
- segment #2/prefix={##1}, % why is the segment needed here ???
- segment #2/suffix={##2},
- },
- factor/.link=/ndu/base units/#4/factors/#3,
- }%
- \nduset{%
- unit groups/#1/update segment depth=#2,
- }%
- }%
-}
-
-\NewDocumentCommand\nduNewMacro{ m O{} m }{%
- \expandafter\NewDocumentCommand\csname#3\endcsname { O{} m } {%
- \begingroup%
- \nduset{unit groups/#1,#2}%
- \nduValue{#1}[##1]{##2}%
- \endgroup%
- }%
+% Key setup
+%
+
+\keys_define:nn { non-decimal-units }
+{
+ % nil/zero
+ replace~nil~with .tl_set:N = \l_ndu_replace_nil_with_tl ,
+ treat~zero~as~nil .bool_set:N = \l_ndu_treat_zero_as_nil_bool ,
+ treat~zero~as~nil .default:n = true ,
+
+ % formatting
+ unit~separator .tl_set:N = \l_ndu_unit_separator_tl ,
+ unit~separator .default:n = { \nobreakspace } ,
+ default~format .tl_set:N = \l_ndu_default_format_tl ,
+ default~format .default:n = { \VALUE\nobreakspace\SYMBOL } ,
+ display .choice: ,
+ display .choices:nn =
+ { values~only, symbols~only, formatted, numprint }
+ { \tl_set_eq:NN \l_ndu_display_choice_tl \l_keys_choice_tl } ,
+ display .default:n = { formatted } ,
+ unit~depth .tl_set:N = \l_ndu_unit_depth_tl ,
+ use~numprint .bool_set:N = \l_ndu_use_numprint_bool ,
+ use~numprint .default:n = true ,
+
+ % tabular alignment
+ aligned .bool_set:N = \l_ndu_aligned_bool ,
+ aligned .default:n = true ,
+ cell~widths .code:n = {
+ \seq_set_from_clist:Nn \l_ndu_cell_widths_seq {#1}
+ } ,
+ cell~widths .default:n = 3em ,
+
+ % math
+ normalize .bool_set:N = \l_ndu_normalize_bool ,
+ normalize .default:n = true ,
+ current~variable .tl_set:N = \l_ndu_current_variable_tl ,
+ current~operator .tl_set:N = \l_ndu_current_operator_tl ,
+ add~to~variable .meta:n = {
+ current~variable = {#1} ,
+ current~operator = {+}
+ } ,
+ subtract~from~variable .meta:n = {
+ current~variable = {#1} ,
+ current~operator = {-}
+ } ,
+
+ % environments
+ set~aligned~for~environment .code = {
+ \AtBeginEnvironment{#1}{\nduKeys{aligned}}
+ } ,
+}
+
+\NewDocumentCommand { \nduKeys } { m } {
+ \keys_set:nn { non-decimal-units } { #1 }
+}
+
+% set some defaults
+\keys_set:nn { non-decimal-units } {
+ unit~separator,
+ default~format,
+ display,
+ cell~widths,
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Errors
+%
-\newcommand\nduName[2]{%
- \pgfkeysifdefined{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/name}{%
- \pgfkeysvalueof{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/name}%
- }{%
- \PackageError{non-decimal-units}{No name defined for "\nduAliasOrGroup{#1}" segment #2}{}%
- \nduNameMissing%
- }%
-}
-
-\newcommand\nduSymbol[2]{%
- \pgfkeysifdefined{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/symbol}{%
- \pgfkeysvalueof{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/symbol}%
- }{%
- \PackageError{non-decimal-units}{No symbol defined for "\nduAliasOrGroup{#1}" segment #2 (\nduName{#1}{#2})}{}%
- \nduSymbolMissing%
- }%
-}
-
-\newcommand\nduPrefix[2]{%
- \pgfkeysifdefined{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/prefix}{%
- \gdef\nduSym{\nduSymbol{\nduAliasOrGroup{#1}}{#2}}%
- \pgfkeysvalueof{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/prefix}%
- }{%
- \PackageError{non-decimal-units}{No prefix defined for "\nduAliasOrGroup{#1}" segment #2 (\nduName{#1}{#2})}{}%
- \nduPrefixMissing%
- }%
-}
-
-\newcommand\nduSuffix[2]{%
- \pgfkeysifdefined{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/suffix}{%
- \gdef\nduSym{\nduSymbol{\nduAliasOrGroup{#1}}{#2}}%
- \pgfkeysvalueof{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/suffix}%
- }{%
- \PackageError{non-decimal-units}{No suffix defined for "\nduAliasOrGroup{#1}" segment #2 (\nduName{#1}{#2})}{}%
- \nduSuffixMissing%
- }%
-}
-
-\newcommand\nduFactor[2]{%
- \pgfkeysifdefined{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/factor}{%
- \pgfkeysvalueof{/ndu/unit groups/\nduAliasOrGroup{#1}/segment #2/factor}%
- }{%
- % Having a PackageError here breaks bigintcalc.
- \nduFactorMissing@#1@#2%
- }%
-}
-
-\newcommand\ifnduFactorDefined[4]{%
- \pgfkeysifdefined{/ndu/base units/\nduName{#1}{\the\numexpr#2-1\relax}/factors/\nduName{#1}{#2}}{%
- #3%
- }{%
- #4%
- }%
-}
-
-\newcommand\nduNamedFactor[2]{%
- \pgfkeysifdefined{/ndu/base units/\nduAliasOrGroup{#1}/factors/#2}{%
- \pgfkeysvalueof{/ndu/base units/\nduAliasOrGroup{#1}/factors/#2}%
- }{%
- % Having a PackageError here breaks bigintcalc.
- \nduFactorMissing@#1@#2%
- }%
-}
-
-\newcommand\nduSegmentDepth[1]{%
- \pgfkeysifdefined{/ndu/unit groups/\nduAliasOrGroup{#1}/restrict segment depth}{%
- \pgfkeysvalueof{/ndu/unit groups/\nduAliasOrGroup{#1}/restrict segment depth}%
- }{%
- \pgfkeysvalueof{/ndu/unit groups/\nduAliasOrGroup{#1}/segment depth}%
- }%
-}
-
-\newcommand\nduAliasOrGroup[1]{%
- \pgfkeysifdefined{/ndu/aliases/#1/unit group}{%
- \pgfkeysvalueof{/ndu/aliases/#1/unit group}%
- }{%
- #1%
- }%
-}
+\msg_new:nnnn
+{ non-decimal-units } { missing-base-unit }
+{ No ~ base ~ unit ~ exists ~ named ~ #1 }
+{ You ~ will ~ need ~ to ~ add ~ it ~ with ~ nduNewBaseUnit. }
+%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\msg_new:nnnn
+{ non-decimal-units } { missing-unit-group }
+{ No ~ unit ~ group ~ exists ~ named ~ #1 }
+{ You ~ will ~ need ~ to ~ add ~ it ~ with ~ nduNewUnitGroup. }
-\newcommand\ndu@if@depth@at@least[3]{%
- \ifnum#2>\nduSegmentDepth{#1}%
- \relax%
- \else%
- #3%
- \fi%
-}
-
-\newcommand\ndu@nil@helper[4]{%
- \IfValueTF{#1}{%
- \ifblank{#1}{%
- \ifcsvoid{ndu@nil@replacement}{}{#2\ndu@nil@replacement{}#4}%
- }{%
- \ifndutreatzeroasnil%
- \expandafter\ifnum#1=0
- \ifcsvoid{ndu@nil@replacement}{}{#2\csuse{ndu@nil@replacement}#4}%
- \else%
- #2#3#4%
- \fi%
- \else%
- #2#3#4%
- \fi%
- }%
- }{%
- \ifcsvoid{ndu@nil@replacement}{}{#2\csuse{ndu@nil@replacement}#4}%
- }%
-}
+\msg_new:nnnn
+{ non-decimal-units } { missing-factor }
+{ No ~ conversion ~ factor ~ exists ~ between ~ #1 ~ and ~ #2 }
+{ You ~ will ~ need ~ to ~ add ~ it ~ when ~ creating ~ the ~ base ~ unit ~ or ~ via ~ nduKeys. }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\NewDocumentCommand\nduValue{ m O{} m }{%
- \nduValue@unitgroup{\nduAliasOrGroup{#1}}[#2]{#3}%
-}
-
-\NewDocumentCommand\nduValue@unitgroup{ m O{} m }{%
- % #1 = unit group
- % #2 = options
- % #3 = values joined by .
- \nduset{unit groups/#1}%
- \begingroup%
- \nduset{unit groups/#1,#2}%
- \ifndualigned%
- \nduAlignedValue@entry{#1}{#3}%
- \else%
- \nduFormatValue@entry{#1}{#3}%
- \fi%
- \endgroup%
- \ifcsvoid{ndu@current@variable}{}{%
- \nduMath{#1}{\ndu@current@variable}{\ndu@current@operator}{#3}%
- }%
+% Unit setup
+%
+
+\NewDocumentCommand { \nduNewBaseUnit } { m m } {
+ \prop_clear_new:c { l_ndu_factors_#1_prop }
+ \keys_define:nn { non-decimal-units / units / #1 } {
+ factor .code = {
+ \regex_extract_once:nnN { (\d+)\ (\D+) } { ##1 } \l_tmpa_seq
+ \prop_put:cxx { l_ndu_factors_#1_prop } { \seq_item:Nn \l_tmpa_seq 3 } { \seq_item:Nn \l_tmpa_seq 2 }
+ } ,
+ symbol .tl_set:c = { l_ndu_symbol_#1_tl } ,
+ format .tl_set:c = { l_ndu_format_#1_tl } ,
+ }
+ \keys_set:nn { non-decimal-units / units / #1 } { #2 }
+}
+
+\NewDocumentCommand { \nduNewUnitGroup } { m o m o }
+{
+ \seq_set_from_clist:cn { l_ndu_group_#1_seq } {#3}
+
+ % set base unit to rightmost item
+ \seq_get_right:cN { l_ndu_group_#1_seq } \l_tmpa_tl
+ \tl_set_eq:cN { l_ndu_base_unit_#1_tl } \l_tmpa_tl
+
+ % store keys for unit group
+ \tl_clear_new:c { l_ndu_options_#1_tl }
+ \IfValueT {#2} {
+ \tl_set:cn { l_ndu_options_#1_tl } {#2}
+ }
+
+ % optionally create macro
+ \IfValueT {#4} {
+ \NewDocumentCommand { #4 } { O{} m } {
+ \group_begin:
+ \IfValueTF {#2} {
+ \nduValue{#1}[#2,##1]{##2}
+ }
+ {
+ \nduValue{#1}[##1]{##2}
+ }
+ \group_end:
+ }
+ }
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\newcommand\nduFormatSegment[3]{%
- % #1 = unit group
- % #2 = segment
- % #3 = value
- %\csshow{nduSym}%
- \ndu@nil@helper{#3}{%
- \ndu@delim%
- \ifndushowaffixes\nduPrefix{#1}{#2}\fi%
- \edef\ndu@delim{\ndu@nextdelim}%
- }{%
- \ifndushowvalues#3\fi%
- }{%
- \ifndushowaffixes\nduSuffix{#1}{#2}\fi%
- }%
-}
-
-\newcommand\nduFormatValue@helper[3]{%
- \ndu@if@depth@at@least{#1}{#2}{%
- \nduFormatSegment{#1}{#2}{#3}%
- }%
-}
-
-\newcommand\nduFormatValue@internal[8]{%
- % #1 = unit group
- % #2-8 = values
- \edef\ndu@nextdelim{\pgfkeysvalueof{/ndu/unit groups/#1/segment separator}}%
- \edef\ndu@delim{}%
- \nduFormatValue@helper{#1}{0}{#2}%
- \nduFormatValue@helper{#1}{1}{#3}%
- \nduFormatValue@helper{#1}{2}{#4}%
- \nduFormatValue@helper{#1}{3}{#5}%
- \nduFormatValue@helper{#1}{4}{#6}%
- \nduFormatValue@helper{#1}{5}{#7}%
- \nduFormatValue@helper{#1}{6}{#8}%
-}
-
-\NewDocumentCommand\nduFormatValue@entry{ m > { \SplitArgument { 6 } { . } } m }{%
- % #1 = unit group
- % #2 = values joined by .
- \ifndunormalize%
- \stepcounter{autorepr}%
- \nduConvertToRepr@internal{#1}{autorepr\arabic{autorepr}}#2%
- \nduResult{#1}{autorepr\arabic{autorepr}}%
- \else%
- \nduFormatValue@internal{#1}#2%
- \fi%
+% Conversion factor initialization and access
+%
+
+\cs_new_protected:Nn \ndu_get_factor:Nnn
+{
+ % parameters
+ % #1: output result (int)
+ % #2: from unit (tl)
+ % #3: to unit (tl)
+ \tl_if_exist:cF { l_ndu_factors_#2_prop }
+ {
+ \msg_error:nnn { non-decimal-units } { missing-base-unit } { #2 }
+ }
+ \tl_if_exist:cF { l_ndu_factors_#3_prop }
+ {
+ \msg_error:nnn { non-decimal-units } { missing-base-unit } { #3 }
+ }
+ \str_if_eq:nnTF {#2} {#3}
+ {
+ \int_set:Nn #1 { 1 }
+ }
+ {
+ \prop_if_in:cnTF { l_ndu_factors_#2_prop } { #3 }
+ {
+ \prop_get:cnN { l_ndu_factors_#2_prop } { #3 } \l_tmpa_tl
+ \int_set:Nn #1 { \l_tmpa_tl }
+ }{
+ \int_zero_new:N \l__ndu_factor_product_int
+ \prop_map_inline:cn { l_ndu_factors_#2_prop } {
+ \str_if_eq:nnF {#3} {##1}
+ {
+ \int_zero_new:N \l__ndu_sub_factor_int
+ \ndu_get_factor:Nnn \l__ndu_sub_factor_int { ##1 } { #3 }
+ \int_set:Nn \l__ndu_factor_product_int { ##2 * \l__ndu_sub_factor_int }
+ \int_set:Nn #1 { \l__ndu_factor_product_int }
+ \prop_put:cnx { l_ndu_factors_#2_prop } { #3 } { \int_use:N \l__ndu_factor_product_int }
+ }
+ }
+ }
+ }
+}
+\cs_generate_variant:Nn \ndu_get_factor:Nnn {
+ NnV,
+ NVV
+}
+
+% ndu_super_factors (call from nduNewUnitGroup)
+
+\NewDocumentCommand \nduFactor { m m } {
+ \ndu_get_factor:Nnn \l_tmpa_int { #1 } { #2 }
+ \int_use:N \l_tmpa_int
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\newcommand*{\ndu@minwidthbox}[2]{%
- \makebox[{\ifdim#1<\width\width\else#1\fi}][r]{%
- #2%
- }%
-}
-
-\newcommand\nduAlignedHeader@helper[2]{%
- \ndu@if@depth@at@least{#1}{#2}{\ndu@minwidthbox{\pgfkeysvalueof{/ndu/cell width}}{%
- \nduSymbol{#1}{#2}%
- }}%
+% Converting from/to representation
+%
+
+\cs_new_protected:Nn \ndu_repr_to_seq:NNNNN
+{
+ % parameters
+ % #1: output result (seq)
+ % #2: unit group (seq)
+ % #3: base unit (tl)
+ % #4: value (int)
+ % #5: unit (tl)
+ \seq_clear:N #1
+
+ \int_zero_new:N \l__ndu_remainder_int
+
+ % initial value * base factor
+ \ndu_get_factor:NVV \l_tmpa_int { #5 } { #3 }
+ \int_set:Nn \l__ndu_remainder_int { #4 * \l_tmpa_int }
+
+ % for unit in units:
+ \seq_map_inline:Nn #2
+ {
+ \int_zero_new:N \l__ndu_factor_int
+ \int_zero_new:N \l__ndu_sum_int
+
+ \ndu_get_factor:NnV \l__ndu_factor_int { ##1 } { #3 }
+
+ % while (remainder >= factor_to_base):
+ \int_while_do:nn {\l__ndu_remainder_int >= \l__ndu_factor_int} {
+ % remainder -= factor_to_base
+ \int_sub:Nn \l__ndu_remainder_int \l__ndu_factor_int
+ % result[i] += 1
+ \int_incr:N \l__ndu_sum_int
+ }
+ \seq_put_right:Nx #1 {\int_use:N \l__ndu_sum_int}
+
+ % stop when we hit the desired unit depth
+ \str_if_eq:NNT {##1} {#5} {
+ \seq_map_break:
+ }
+ }
+}
+\cs_generate_variant:Nn \ndu_repr_to_seq:NNNNN {
+ NccNc,
+ Ncccc
+}
+
+\cs_new_protected:Nn \ndu_repr_to_seq:NnN
+{
+ % parameters
+ % #1: output result (int)
+ % #2: unit group name (tl)
+ % #3: value (int)
+ \ndu_repr_to_seq:NccNc
+ #1
+ { l_ndu_group_#2_seq }
+ { l_ndu_base_unit_#2_tl }
+ #3
+ { l_ndu_base_unit_#2_tl }
+
+}
+\cs_generate_variant:Nn \ndu_repr_to_seq:NnN {
+ Nnc
+}
+
+
+\cs_new_protected:Nn \ndu_seq_to_repr:NNNN
+{
+ % parameters
+ % #1: output result (int)
+ % #2: unit group (seq)
+ % #3: base unit (tl)
+ % #4: input (seq)
+ \int_zero:N #1
+
+ \seq_map_indexed_inline:Nn #2
+ {
+ \tl_set:Nx \l__ndu_value_tl { \seq_item:Nn #4 {##1} }
+ \tl_if_blank:VF \l__ndu_value_tl {
+ \ndu_get_factor:NnV \l_tmpa_int { ##2 } { #3 }
+ \int_add:Nn #1 { \l__ndu_value_tl * \l_tmpa_int }
+ }
+ }
+}
+\cs_generate_variant:Nn \ndu_seq_to_repr:NNNN {
+ NccN
+}
+
+\cs_new_protected:Nn \ndu_seq_to_repr:NnN
+{
+ % parameters
+ % #1: output result (seq)
+ % #2: unit group name (tl)
+ % #3: values (seq)
+ \ndu_seq_to_repr:NccN
+ #1
+ { l_ndu_group_#2_seq }
+ { l_ndu_base_unit_#2_tl }
+ #3
+}
+\cs_generate_variant:Nn \ndu_seq_to_repr:NnN {
+ Nnc
}
-\newcommand\nduAlignedValue@helper[3]{%
- \ndu@if@depth@at@least{#1}{#2}{\ndu@minwidthbox{\pgfkeysvalueof{/ndu/cell width}}{\nduFormatSegment{#1}{#2}{#3}}}%
-}
-
-\newcommand\nduAlignedValue@internal[8]{%
- % #1 = unit group
- % #2-8 = values
- \nduAlignedValue@helper{#1}{0}{#2}%
- \nduAlignedValue@helper{#1}{1}{#3}%
- \nduAlignedValue@helper{#1}{2}{#4}%
- \nduAlignedValue@helper{#1}{3}{#5}%
- \nduAlignedValue@helper{#1}{4}{#6}%
- \nduAlignedValue@helper{#1}{5}{#7}%
- \nduAlignedValue@helper{#1}{6}{#8}%
-}
-
-\NewDocumentCommand\nduHeader{ m O{} }{%
- \nduHeader@unitgroup{\nduAliasOrGroup{#1}}[#2]%
-}
-
-\NewDocumentCommand\nduHeader@unitgroup{ m O{} }{%
- \nduset{unit groups/#1}%
- \begingroup%
- \nduset{unit groups/#1,#2}%
- \nduAlignedHeader@helper{#1}{0}%
- \nduAlignedHeader@helper{#1}{1}%
- \nduAlignedHeader@helper{#1}{2}%
- \nduAlignedHeader@helper{#1}{3}%
- \nduAlignedHeader@helper{#1}{4}%
- \nduAlignedHeader@helper{#1}{5}%
- \nduAlignedHeader@helper{#1}{6}%
- \endgroup%
-}
-
-\NewDocumentCommand\nduAlignedValue@entry{ m > { \SplitArgument { 6 } { . } } m }{%
- % #1 = unit group
- % #2 = values joined by .
- \begingroup%
- \nduset{show=values}%
- \ifndunormalize%
- \stepcounter{autorepr}%
- \nduConvertToRepr@internal{#1}{autorepr\arabic{autorepr}}#2%
- \nduResult{#1}[aligned]{autorepr\arabic{autorepr}}%
- \else%
- \nduAlignedValue@internal{#1}#2%
- \fi%
- \endgroup%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Formatting values
+%
+
+\prg_new_protected_conditional:Nnn \ndu_if_not_nil_or_zero:Nn {T,TF}
+{
+ % parameters
+ % #1: output result (tl)
+ % #2: value (tl)
+ % returns T if value should be output, otherwise F
+
+ \tl_if_blank:nTF {#2}
+ {
+ % only output something if we are replacing nil
+ \tl_if_empty:NTF {\l_ndu_replace_nil_with_tl}
+ {
+ \prg_return_false:
+ }
+ {
+ \tl_set_eq:NN #1 \l_ndu_replace_nil_with_tl
+ \prg_return_true:
+ }
+ }
+ {
+ \bool_if:nTF {
+ \l_ndu_treat_zero_as_nil_bool &&
+ \int_compare_p:n { #2 = 0 }
+ } {
+ % only output something if we are replacing nil
+ \tl_if_empty:NTF {\l_ndu_replace_nil_with_tl}
+ {
+ \prg_return_false:
+ }
+ {
+ \tl_set_eq:NN #1 \l_ndu_replace_nil_with_tl
+ \prg_return_true:
+ }
+ }
+ {
+ % else output directly
+ \tl_set:Nx #1 { #2 }
+ \prg_return_true:
+ }
+ }
+}
+\prg_generate_conditional_variant:Nnn \ndu_if_not_nil_or_zero:Nn
+{
+ Nx
+}
+{
+ T,TF
+}
+
+% placeholder tokens for \ndu_format_display_helper
+\tl_new:N \VALUE
+\tl_new:N \SYMBOL
+
+\tl_const:Nn \c__ndu_values_only_tl { values~only }
+\tl_const:Nn \c__ndu_symbols_only_tl { symbols~only }
+\tl_const:Nn \c__ndu_formatted_tl { formatted }
+\tl_const:Nn \c__ndu_numprint_tl { numprint }
+
+\cs_new_protected:Nn \ndu__numprint_helper:nn
+{
+ \numprint[#1]{#2}
+}
+
+\cs_new_protected:Nn \ndu_format_display_helper:Nnnn
+{
+ % parameters
+ % #1: output result (tl)
+ % #2: format (tl)
+ % #3: symbol (tl)
+ % #4: value (int)
+ \tl_case:Nn \l_ndu_display_choice_tl {
+ \c__ndu_symbols_only_tl {
+ \tl_set:Nn #1 { #3 }
+ }
+ \c__ndu_values_only_tl {
+ \tl_set:Nn #1 {
+ \bool_if:NTF \l_ndu_use_numprint_bool
+ { \ndu__numprint_helper:nn {} {#4} }
+ { #4 }
+ }
+ }
+ \c__ndu_formatted_tl {
+ \tl_set:Nn #1 { #2 }
+ \tl_replace_all:Nnn #1 { \SYMBOL } { #3 }
+ \tl_replace_all:Nnn #1 { \VALUE } {
+ \bool_if:NTF \l_ndu_use_numprint_bool
+ { \ndu__numprint_helper:nn {} {#4} }
+ { #4 }
+ }
+ }
+ \c__ndu_numprint_tl {
+ \tl_set:Nn #1 { \ndu__numprint_helper:nn {#3} {#4} }
+ }
+ }
+}
+\cs_generate_variant:Nn \ndu_format_display_helper:Nnnn {
+ NVVn,
+ NVVx
+}
+
+\cs_new_protected:Nn \ndu_format_values:NNNN
+{
+ % parameters
+ % #1: output result (tl)
+ % #2: unit group (seq)
+ % #3: values (seq)
+ % #4: separator (tl)
+ \seq_clear:N #1
+ \seq_clear_new:N \l__ndu_formatted_segments_seq
+
+ \seq_map_indexed_inline:Nn #3
+ {
+ \tl_clear_new:N \l__ndu_formatted_segment
+ \tl_clear_new:N \l__ndu_symbol_tl
+ \tl_set:Nx \l__ndu_symbol_tl { \tl_use:c { l_ndu_symbol_ \seq_item:Nn #2 {##1} _tl } }
+
+ \tl_clear_new:N \l__ndu_format_tl
+ \tl_if_empty:cTF { l_ndu_format_ \seq_item:Nn #2 {##1} _tl }
+ {
+ \tl_set_eq:NN \l__ndu_format_tl \l_ndu_default_format_tl
+ }
+ {
+ \tl_set_eq:Nc \l__ndu_format_tl { l_ndu_format_ \seq_item:Nn #2 {##1} _tl }
+ }
+
+ \ndu_if_not_nil_or_zero:NnT \l_tmpa_tl { ##2 }
+ {
+ \ndu_format_display_helper:NVVx
+ \l__ndu_formatted_segment
+ \l__ndu_format_tl
+ \l__ndu_symbol_tl
+ { \l_tmpa_tl }
+ \seq_put_right:Nx \l__ndu_formatted_segments_seq \l__ndu_formatted_segment
+ }
+
+ % stop when we hit the desired unit depth
+ \tl_set:Nx \l__ndu_unit_tl { \seq_item:Nn #2 {##1} }
+ \tl_if_eq:NNT \l__ndu_unit_tl \l_ndu_unit_depth_tl
+ {
+ \seq_map_break:
+ }
+ }
+ \tl_set:Nn #1 { \seq_use:Nn {\l__ndu_formatted_segments_seq} {#4} }
+}
+\cs_generate_variant:Nn \ndu_format_values:NNNN {
+ NcNN
+}
+
+
+\prg_new_protected_conditional:Nnn \ndu_if_valid_dim:n {F}
+{
+ % adapted from https://tex.stackexchange.com/questions/498976/testing-for-a-length
+ \regex_match:nnTF
+ { \A [+\-]? ((\d+(\.\d*)?)|(\.\d+)) \s* (pt|pc|in|bp|cm|mm|dd|cc|sp|ex|em) \Z}
+ { #1 } % test string
+ { \prg_return_true: }
+ { \prg_return_false: }
+}
+\prg_generate_conditional_variant:Nnn \ndu_if_valid_dim:n
+{
+ V
+}
+{
+ F
+}
+
+
+\cs_new_protected:Nn \ndu_make_box:Nnn
+{
+ % parameter
+ % #1: output result (box)
+ % #2: contents (tl)
+ % #3: box index
+ \box_clear_new:N #1
+ \dim_zero_new:N \l__ndu_cell_width_dim
+ \tl_set:Nx \l_tmpa_tl { \seq_item:Nn \l_ndu_cell_widths_seq { #3 } }
+ \ndu_if_valid_dim:VF \l_tmpa_tl
+ {
+ \seq_get_right:NN \l_ndu_cell_widths_seq \l_tmpa_tl
+ }
+ \dim_set:Nn \l__ndu_cell_width_dim { \l_tmpa_tl }
+ \hbox_set_to_wd:Nnn #1 { \l__ndu_cell_width_dim } { #2 }
+}
+\cs_generate_variant:Nn \ndu_make_box:Nnn {
+ cnn
+}
+
+
+\cs_new_protected:Nn \ndu_format_values_aligned:NNN
+{
+ % parameters
+ % #1: output result (tl)
+ % #2: unit group (seq)
+ % #3: values (seq)
+ \tl_set:Nn #1 { \leavevmode }
+
+ \seq_map_indexed_inline:Nn #2
+ {
+ \tl_clear_new:N \l__ndu_value_tl
+ \ndu_if_not_nil_or_zero:NxTF \l__ndu_value_tl { \seq_item:Nn #3 ##1 }
+ {
+ \ndu_make_box:cnn
+ { l__ndu_cell_ \int_to_alph:n {##1} _box }
+ { \hfill \tl_use:N \l__ndu_value_tl }
+ { ##1 }
+ }
+ {
+ \ndu_make_box:cnn
+ { l__ndu_cell_ \int_to_alph:n {##1} _box }
+ { \hfill }
+ { ##1 }
+ }
+
+ \tl_put_right:Nx #1 { \box_use:c { l__ndu_cell_ \int_to_alph:n {##1} _box } }
+
+ % stop when we hit the desired unit depth
+ \tl_if_eq:NnT \l_ndu_unit_depth_tl {##2}
+ {
+ \seq_map_break:
+ }
+ }
+}
+\cs_generate_variant:Nn \ndu_format_values_aligned:NNN {
+ NcN
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\newcommand\ndu@val@or@zero[1]{%
- \IfValueTF{#1}{%
- \ifblank{#1}{%
- 0%
- }{%
- #1%
- }%
- }{%
- 0%
- }%
-}
-
-\newcommand\nduConvertToRepr@helper[4]{%
- % convert from overlying unit and add value
- % #1 = unit group
- % #2 = repr name
- % #3 = segment
- % #4 = value
- \ndu@if@depth@at@least{#1}{#3}{%
- \ifnum#3=0%
- % no conversion at top level
- \else%
- \ifnduFactorDefined{#1}{#3}{%
- %\show#3%
- \csxdef{ndu@repr@#2}{\bigintcalcMul{\csuse{ndu@repr@#2}}{\nduFactor{#1}{#3}}}%
- }{%
- % there is no factor to the overlying unit
- % instead attempt to skip ahead to the underlying unit?
- \PackageError{non-decimal-units}{Cannot convert to representation because there is no conversion factor from \nduName{#1}{\the\numexpr#3-1\relax} to \nduName{#1}{#3}}{}%
- }%
- \fi%
- \csxdef{ndu@repr@#2}{\bigintcalcAdd{\csuse{ndu@repr@#2}}{\ndu@val@or@zero{#4}}}%
- \csxdef{ndu@repr@#2@unit}{\nduName{#1}{#3}}%
- }%
-}
-
-\newcommand\nduConvertToRepr@internal[9]{%
- % #1 = unit group
- % #2 = repr name
- % #3-9 = values
- \csdef{ndu@repr@#2}{0}%
- \nduConvertToRepr@helper{#1}{#2}{0}{#3}%
- \nduConvertToRepr@helper{#1}{#2}{1}{#4}%
- \nduConvertToRepr@helper{#1}{#2}{2}{#5}%
- \nduConvertToRepr@helper{#1}{#2}{3}{#6}%
- \nduConvertToRepr@helper{#1}{#2}{4}{#7}%
- \nduConvertToRepr@helper{#1}{#2}{5}{#8}%
- \nduConvertToRepr@helper{#1}{#2}{6}{#9}%
-}
-
-\NewDocumentCommand\nduConvertToRepr{ m O{} m > { \SplitArgument { 6 } { . } } m }{%
- \nduset{unit groups/#1,#2}%
- \nduConvertToRepr@internal{#1}{#3}#4%
-}
-
-\newcommand\nduFormatRepr@helper[3]{%
- % V = mod(R, F)
- % R = div(R - V, F)
- % #1 = unit group
- % #2 = repr name
- % #3 = segment (F)
- \ndu@if@depth@at@least{#1}{#3}{%
- \ifnum#3=0%
- \csxdef{ndu@repr@#2@result@#3}{\csuse{ndu@repr@#2}}%
- \else%
- \ifnduFactorDefined{#1}{#3}{%
- \csxdef{ndu@repr@#2@result@#3}{\bigintcalcMod{\csuse{ndu@repr@#2}}{\nduFactor{#1}{#3}}}%
- \csxdef{ndu@repr@#2}{\bigintcalcDiv{\bigintcalcSub{\csuse{ndu@repr@#2}}{\csuse{ndu@repr@#2@result@#3}}}{\nduFactor{#1}{#3}}}%
- }{%
- % there is no factor to the underlying unit
- % instead attempt to skip ahead to the overlying unit?
- \PackageError{non-decimal-units}{Cannot convert from representation because there is no conversion factor from \nduName{#1}{\the\numexpr#3-1\relax} to \nduName{#1}{#3}}{}%
- }%
- \fi%
- }%
-}
-
-\NewDocumentCommand\nduResult{ m O{} m }{%
- \nduResult@unitgroup{\nduAliasOrGroup{#1}}[#2]{#3}%
-}
-
-\NewDocumentCommand\nduResult@unitgroup{ m O{} m }{%
- % #1 = unit group
- % #2 = options
- % #3 = repr name
- \nduset{unit groups/#1}%
- \csdef{ndu@repr@tmp #3}{\csuse{ndu@repr@#3}}%
- \nduFormatRepr@helper{#1}{tmp #3}{6}%
- \nduFormatRepr@helper{#1}{tmp #3}{5}%
- \nduFormatRepr@helper{#1}{tmp #3}{4}%
- \nduFormatRepr@helper{#1}{tmp #3}{3}%
- \nduFormatRepr@helper{#1}{tmp #3}{2}%
- \nduFormatRepr@helper{#1}{tmp #3}{1}%
- \nduFormatRepr@helper{#1}{tmp #3}{0}%
- \edef\ndu@nextdelim{\pgfkeysvalueof{/ndu/unit groups/#1/segment separator}}%
- \edef\ndu@delim{}%
- \begingroup%
- \nduset{unit groups/#1,#2}%
- \ifndualigned%
- \nduset{show=values}%
- \nduAlignedValue@helper{#1}{0}{\csuse{ndu@repr@tmp #3@result@0}}%
- \nduAlignedValue@helper{#1}{1}{\csuse{ndu@repr@tmp #3@result@1}}%
- \nduAlignedValue@helper{#1}{2}{\csuse{ndu@repr@tmp #3@result@2}}%
- \nduAlignedValue@helper{#1}{3}{\csuse{ndu@repr@tmp #3@result@3}}%
- \nduAlignedValue@helper{#1}{4}{\csuse{ndu@repr@tmp #3@result@4}}%
- \nduAlignedValue@helper{#1}{5}{\csuse{ndu@repr@tmp #3@result@4}}%
- \nduAlignedValue@helper{#1}{6}{\csuse{ndu@repr@tmp #3@result@4}}%
- \else%
- \nduFormatValue@helper{#1}{0}{\csuse{ndu@repr@tmp #3@result@0}}%
- \nduFormatValue@helper{#1}{1}{\csuse{ndu@repr@tmp #3@result@1}}%
- \nduFormatValue@helper{#1}{2}{\csuse{ndu@repr@tmp #3@result@2}}%
- \nduFormatValue@helper{#1}{3}{\csuse{ndu@repr@tmp #3@result@3}}%
- \nduFormatValue@helper{#1}{4}{\csuse{ndu@repr@tmp #3@result@4}}%
- \nduFormatValue@helper{#1}{5}{\csuse{ndu@repr@tmp #3@result@4}}%
- \nduFormatValue@helper{#1}{6}{\csuse{ndu@repr@tmp #3@result@4}}%
- \fi%
- \endgroup%
-}
-
-\newcommand\nduMath[4]{%
- \nduMath@unitgroup{\nduAliasOrGroup{#1}}{#2}{#3}{#4}%
-}
-
-\newcommand\nduMath@unitgroup[4]{%
- % #1 = unit group
- % #2 = repr name
- % #3 = operator
- % #4 = value
- \nduset{unit groups/#1}%
- \ifcsvoid{ndu@repr@#2}{\csxdef{ndu@repr@#2}{0}}{}%
- \ifthenelse{\equal{#3}{+}}{%
- \nduConvertToRepr{#1}{tmp #2}{#4}%
- \csxdef{ndu@repr@#2}{\bigintcalcAdd{\csuse{ndu@repr@#2}}{\csuse{ndu@repr@tmp #2}}}%
- }{%
- \ifthenelse{\equal{#3}{-}}{%
- \nduConvertToRepr{#1}{tmp #2}{#4}%
- \csxdef{ndu@repr@#2}{\bigintcalcSub{\csuse{ndu@repr@#2}}{\csuse{ndu@repr@tmp #2}}}%
- }{%
- \ifthenelse{\equal{#3}{*}}{%
- \csxdef{ndu@repr@#2}{\bigintcalcMul{\csuse{ndu@repr@#2}}{#4}}%
- }{%
- \ifthenelse{\equal{#3}{/}}{%
- \csxdef{ndu@repr@#2}{\bigintcalcDiv{\csuse{ndu@repr@#2}}{#4}}%
- }{%
- \PackageError{non-decimal-units}{Unrecognized math operator: #3}{Only + - * / are allowed.}%
- }%
- }%
- }%
- }%
+% User commands
+%
+
+
+\cs_new_protected:Nn \ndu_set_options:nn
+{
+ % set keys for unit group
+ \tl_if_eq:cnF { l_ndu_options_#1_tl } { \c_novalue_tl }
+ {
+ \keys_set:nv { non-decimal-units } { l_ndu_options_#1_tl }
+ }
+
+ % set keys provided by command
+ \IfValueT {#2} { \keys_set:nn { non-decimal-units } { #2 } }
+}
+
+\NewDocumentCommand \nduValue { m o m } {
+ \tl_if_exist:cF { l_ndu_group_#1_seq }
+ {
+ \msg_error:nnn { non-decimal-units } { missing-unit-group } { #1 }
+ }
+ \group_begin:
+ \ndu_set_options:nn {#1} {#2}
+
+ \tl_clear_new:N \l__ndu_result_tl
+ \int_zero_new:N \l__ndu_normalized_int
+ \seq_set_split:Nnn \l_tmpa_seq { . } {#3}
+
+ % should we normalize the input?
+ \bool_if:nT \l_ndu_normalize_bool
+ {
+ \ndu_seq_to_repr:NnN
+ \l__ndu_normalized_int
+ { #1 }
+ \l_tmpa_seq
+ \ndu_repr_to_seq:NnN
+ \l_tmpa_seq
+ { #1 }
+ \l__ndu_normalized_int
+ }
+
+ % are we outputting aligned cells?
+ \bool_if:NTF \l_ndu_aligned_bool
+ {
+ \ndu_format_values_aligned:NcN
+ \l__ndu_result_tl
+ { l_ndu_group_#1_seq }
+ \l_tmpa_seq
+ }
+ {
+ \ndu_format_values:NcNN
+ \l__ndu_result_tl
+ { l_ndu_group_#1_seq }
+ \l_tmpa_seq
+ \l_ndu_unit_separator_tl
+ }
+
+ % should we do any math?
+ \tl_if_empty:NF \l_ndu_current_variable_tl
+ {
+ \nduMath{#1}[#2]{\l_ndu_current_variable_tl}{\l_ndu_current_operator_tl}{#3}
+ }
+
+ % output
+ \tl_use:N \l__ndu_result_tl
+ \group_end:
+}
+
+\tl_const:Nn \c__ndu_plus_tl { + }
+\tl_const:Nn \c__ndu_minus_tl { - }
+
+\NewDocumentCommand \nduMath { m o m m m } {
+ \tl_if_exist:cF { l_ndu_group_#1_seq }
+ {
+ \msg_error:nnn { non-decimal-units } { missing-unit-group } { #1 }
+ }
+ \group_begin:
+ \ndu_set_options:nn {#1} {#2}
+
+ \int_if_exist:cF { g_ndu_variable_#3_int } {
+ \int_zero_new:c { g_ndu_variable_#3_int }
+ }
+
+ \int_zero_new:N \l__ndu_operand_int
+
+ \bool_if:nTF
+ {
+ % TODO hacky, but works
+ \str_if_eq_p:nV {#4} \c__ndu_plus_tl ||
+ \str_if_eq_p:nV {#4} \c__ndu_minus_tl ||
+ \tl_if_eq_p:NN {#4} \c__ndu_plus_tl ||
+ \tl_if_eq_p:NN {#4} \c__ndu_minus_tl
+ }
+ {
+ % plus or minus means we use the representation of the provided value
+ \seq_set_split:Nnn \l_tmpa_seq { . } { #5 }
+ \ndu_seq_to_repr:NnN
+ \l__ndu_operand_int
+ { #1 }
+ \l_tmpa_seq
+ }
+ {
+ % otherwise (multiplication/division) we use the number provided directly
+ \int_set:Nn \l__ndu_operand_int { #5 }
+ }
+
+ \int_gset:cn { g_ndu_variable_#3_int } {
+ \int_use:c { g_ndu_variable_#3_int }
+ #4
+ \l__ndu_operand_int
+ }
+ \group_end:
+}
+
+\NewDocumentCommand \nduResult { m o m } {
+ \tl_if_exist:cF { l_ndu_group_#1_seq }
+ {
+ \msg_error:nnn { non-decimal-units } { missing-unit-group } { #1 }
+ }
+ \group_begin:
+ \ndu_set_options:nn {#1} {#2}
+
+ \int_if_exist:cF { g_ndu_variable_#3_int } {
+ \int_zero_new:c { g_ndu_variable_#3_int }
+ }
+
+ \tl_clear_new:N \l__ndu_result_tl
+
+ \ndu_repr_to_seq:Nnc
+ \l_tmpa_seq
+ { #1 }
+ { g_ndu_variable_#3_int }
+
+ % are we outputting aligned cells?
+ \bool_if:NTF \l_ndu_aligned_bool
+ {
+ \ndu_format_values_aligned:NcN
+ \l__ndu_result_tl
+ { l_ndu_group_#1_seq }
+ \l_tmpa_seq
+ }
+ {
+ \ndu_format_values:NcNN
+ \l__ndu_result_tl
+ { l_ndu_group_#1_seq }
+ \l_tmpa_seq
+ \l_ndu_unit_separator_tl
+ }
+
+ % output
+ \tl_use:N \l__ndu_result_tl
+ \group_end:
+}
+
+\NewDocumentCommand \nduHeader { m o } {
+ \tl_if_exist:cF { l_ndu_group_#1_seq }
+ {
+ \msg_error:nnn { non-decimal-units } { missing-unit-group } { #1 }
+ }
+ \group_begin:
+ \ndu_set_options:nn {#1} {#2}
+ \tl_set:Nn \l__ndu_result_tl { \leavevmode }
+
+ % build boxes
+ \seq_set_eq:Nc \l_tmpa_seq { l_ndu_group_#1_seq }
+ \seq_map_indexed_inline:Nn \l_tmpa_seq
+ {
+ \ndu_make_box:cnn
+ { l__ndu_cell_ \int_to_alph:n {##1} _box }
+ { \hfill \tl_use:c { l_ndu_symbol_ ##2 _tl } }
+ { ##1 }
+ \tl_put_right:Nn \l__ndu_result_tl { \box_use:c { l__ndu_cell_ \int_to_alph:n {##1} _box } }
+
+ % stop when we hit the desired unit depth
+ \tl_if_eq:NnT \l_ndu_unit_depth_tl {##2}
+ {
+ \seq_map_break:
+ }
+ }
+
+ % output
+ \tl_use:N \l__ndu_result_tl
+ \group_end:
+}
+
+\NewDocumentCommand \nduSymbol { m } {
+ \tl_use:c { l_ndu_symbol_#1_tl }
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Column type for tabularray
+%
+
+% TODO: using the font key is pretty hacky...
+% need to ask if theres a better option
+% https://github.com/lvjr/tabularray/issues
+
+\keys_define:nn { non-decimal-units }
+{
+ tabularray~column~type .code = {
+ \NewColumnType {#1}[2] { Q[r, cmd=\ndu_tblr_cell:nnn {##1} {##2}] }
+ } ,
+}
+
+\tl_clear_new:N \l__ndu_tblr_column_type_tl
+
+\tl_const:Nn \c__ndu_HEADER_tl { HEADER }
+\tl_const:Nn \c__ndu_RESULT_tl { RESULT }
+\tl_const:Nn \c__ndu_SKIP_tl { SKIP }
+
+\cs_new_protected:Nn \ndu_tblr_cell:nnn
+{
+ \keys_set:nn { non-decimal-units } {
+ aligned,
+ #2
+ }
+ \tl_set:Nn \l_tmpa_tl {#3}
+ \tl_case:NnF \l_tmpa_tl {
+ \c__ndu_HEADER_tl {
+ \nduHeader
+ { #1 }
+ }
+ \c__ndu_RESULT_tl {
+ \nduResult
+ { #1 }
+ { \l_ndu_current_variable_tl }
+ }
+ \c__ndu_SKIP_tl {
+ % nothing
+ }
+ }
+ {
+ % format value if no special token was hit
+ % do math only once per tblr cell
+ % Will https://github.com/lvjr/tabularray/issues/179 introduce
+ % elenganter solution?
+ \cs_if_exist:cTF { \ndu__tblr_cell_get_csname: }
+ % or use a specific bool, e.g., \ndu__do_math_bool
+ { \tl_clear:N \l_ndu_current_variable_tl }
+ { \cs_gset:cpn { \ndu__tblr_cell_get_csname: } {} }
+ \nduValue
+ { #1 }
+ { #3 }
+ }
+}
+
+% a csname distinct per tblr table, per cell
+\cs_new:Npn \ndu__tblr_cell_get_csname:
+ {
+ ndu__tblr_ \int_use:N \g__tblr_table_count_int
+ _cell_ \int_use:N \c@rownum _ \int_use:N \c@colnum
+ :
+ }
-\nduset{
- options/.cd,
- british/.code={\input{non-decimal-units.british}},
- danish/.code={\input{non-decimal-units.danish}},
-}
-
-\ProcessPgfPackageOptions{/ndu/options}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Setup
+%
+
+\keys_define:nn { non-decimal-units / options }
+{
+ british .code:n = { \input{non-decimal-units.british} } ,
+ danish .code:n = { \input{non-decimal-units.danish} } ,
+ german .code:n = { \input{non-decimal-units.german} } ,
+}
+
+\IfFormatAtLeastTF { 2022-06-01 } {
+ \ProcessKeyOptions [ non-decimal-units / options ]
+}{
+ \RequirePackage { l3keys2e }
+ \ProcessKeysOptions { non-decimal-units / options }
+} \ No newline at end of file
diff --git a/macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md b/macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md
index a507ced869..5474986109 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md
+++ b/macros/latex/contrib/pdfmanagement-testphase/CHANGELOG.md
@@ -5,7 +5,17 @@ first release 0.95a, 2021-02-23 will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
this project uses date-based 'snapshot' version identifiers.
+
+## [2023-10-09]
+Version: 2023-10-09, 0.96a
+
+### Changed
+ - prepare for kernel switch to e-types
+ - use properties instead of l3ref-tmp.sty if format is new enough
+ - improve xcolor firstaid patch
+
## [2023-08-29]
+Version: 2023-08-29, 0.95z
### Changed
- a SOURCE_DATE_EPOCH setting is honored. This requires a l3backend version from XXXX
diff --git a/macros/latex/contrib/pdfmanagement-testphase/README.md b/macros/latex/contrib/pdfmanagement-testphase/README.md
index f512b294d6..770ec9e2b5 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/README.md
+++ b/macros/latex/contrib/pdfmanagement-testphase/README.md
@@ -1,6 +1,6 @@
# LaTeX PDF management testphase bundle
-Version: 0.95z, 2023-08-29
+Version: 0.96a, 2023-10-09
This package is used during a test phase to load the new PDF management code
of LaTeX.
diff --git a/macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty b/macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty
index ff7305d34b..b04fa5aa9b 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty
+++ b/macros/latex/contrib/pdfmanagement-testphase/color-ltx.sty
@@ -24,7 +24,7 @@
%% This file has the LPPL maintenance status "maintained".
%%
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{color-ltx}[2023-08-29 v0.95z
+\ProvidesPackage{color-ltx}[2023-10-09 v0.96a
Standard LaTeX Color (patched for l3color, part of pdfmanagement-testphase, original version 2022/01/06 v1.3d) (DPC)]
\edef\Gin@codes{%
\catcode`\noexpand\^^A\the\catcode`\^^A\relax
diff --git a/macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty b/macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
index fc7f93841b..6af2ce080f 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
+++ b/macros/latex/contrib/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
@@ -19,7 +19,7 @@
%
% for those people who are interested.
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
-\ProvidesExplPackage{colorspace-patches-tmp-ltx}{2023-08-29}{0.95z}
+\ProvidesExplPackage{colorspace-patches-tmp-ltx}{2023-10-09}{0.96a}
{temporay patches to for the colorspace package to test pdfresource management ... UF}
% colorspace can define more models, that l3color can't yet handle.
diff --git a/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx b/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx
index 4d68f49b6d..dc722effbe 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.dtx
@@ -82,7 +82,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -912,9 +912,9 @@
%^^A %% \l_@@_dest_box
%^^A %%
%^^A %% References (ref)
-%^^A %% *\@@_ref_label:nn
-%^^A %% *\@@_ref_if_exist:nn
-%^^A %% *\@@_ref_check:nn
+%^^A %% *\@@_property_record:nn
+%^^A %% *\@@_property_if_recorded:nn
+%^^A %% *\@@_property_ref_undefined_warn:nn,
%^^A %% % helps to display key list messages
%^^A %% \@@_clist_display:n
%^^A %%
@@ -956,7 +956,7 @@
%<@@=hyp>
% \end{macrocode}
% \begin{macrocode}
-\ProvidesFile{hgeneric-testphase.def}[2023-08-29 v0.95z %
+\ProvidesFile{hgeneric-testphase.def}[2023-10-09 v0.96a %
generic Hyperref driver for the LaTeX PDF management testphase bundle]
\RequirePackage{etoolbox} %why?
@@ -1157,6 +1157,7 @@
% \begin{macrocode}
\cs_generate_variant:Nn\pdf_destination:nn {nf}
\cs_generate_variant:Nn\pdf_object_ref:n {e}
+\cs_generate_variant:Nn\pdf_pageobject_ref:n {e}
% \end{macrocode}
% \section{Overwriting/providing commands from hyperref}
% \pkg{hyperref} checks driver version, we need to suppress this during the development
@@ -1534,57 +1535,85 @@
% \end{macrocode}
%
% \section{Reference and label commands}
-% The code uses the l3ref-tmp package which
+% The code uses in older LaTeX the l3ref-tmp package which
% must have been loaded as pdfmanagement is a requirement.
-% The commands use after the module prefix always |_ref|.
-%
-% At first a label command which add the space commands from LaTeX:
+% In newer LaTeX it uses the in-built property module.
+%
% \begin{macro}
% {
-% \@@_ref_label:nn,
-% \@@_ref_if_exist:nn,
-% \@@_ref_check:nn,
-% \@@_ref_value:nn
+% \@@_property_record:nn,
+% \@@_property_if_recorded:nn,
+% \@@_property_ref_undefined_warn:nn,
+% \@@_property_ref:nn
% }
% \begin{macrocode}
%
-\cs_new_protected:Npn \@@_ref_label:nn #1 #2 %label/attributes
+\cs_if_exist:NTF \property_new:nnnn
{
- \@bsphack
- \ref_label:nn{#1}{#2}
- \@esphack
- }
-\cs_generate_variant:Nn \@@_ref_label:nn {en}
% \end{macrocode}
-% This provides a condition which tests if a label/attribute combination is known
-% \begin{macrocode}
-\prg_new_eq_conditional:NNn \@@_ref_if_exist:nn \ref_if_exist:nn { p , T , F, TF }
-\prg_generate_conditional_variant:Nnn \@@_ref_if_exist:nn {en} { p , T , F, TF }
+% At first a label command which adds the space commands from LaTeX:
+% \begin{macrocode}
+ \cs_new_protected:Npn \@@_property_record:nn #1 #2 %label/attributes
+ {
+ \@bsphack
+ \property_record:nn{#1}{#2}
+ \@esphack
+ }
% \end{macrocode}
-% This checks if the label/attribute is known and issues a warning if not.
+% This provides a conditional which tests if a label/property combination is known
+% \begin{macrocode}
+ \prg_new_eq_conditional:NNn
+ \@@_property_if_recorded:nn \property_if_recorded:nn { T }
+% \end{macrocode}
+% This checks if the label/property is known and issues a warning if not.
% It then also triggers the standard rerun message.
+% \begin{macrocode}
+ \cs_new_eq:NN \@@_property_ref_undefined_warn:nn \property_ref_undefined_warn:nn
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \cs_new_eq:NN \@@_property_ref:nn \property_ref:nn
+ }
+% \end{macrocode}
+% and now the same with the older l3ref-tmp.
+% This can go once LaTeX has been released.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_ref_check:nn #1 #2 %label/attribute
{
- \@@_ref_if_exist:nnF {#1}{#2}
+ \cs_new_protected:Npn \@@_property_record:nn #1 #2 %label/attributes
+ {
+ \@bsphack
+ \ref_label:nn{#1}{#2}
+ \@esphack
+ }
+
+ \prg_new_eq_conditional:NNn \@@_property_if_recorded:nn \ref_if_exist:nn { T }
+
+ \cs_new_protected:Npn \@@_property_ref_undefined_warn:nn #1 #2 %label/attribute
{
- \protect\G@refundefinedtrue
- \@latex@warning
+ \@@_property_if_recorded:nnF {#1}{#2}
{
- Reference~'\tl_to_str:n {#1}'~with~attribute~'\tl_to_str:n {#2}'~
- on~page~\thepage~\space undefined
+ \protect\G@refundefinedtrue
+ \@latex@warning
+ {
+ Reference~'\tl_to_str:n {#1}'~with~attribute~'\tl_to_str:n {#2}'~
+ on~page~\thepage~\space undefined
+ }
}
}
+
+ \cs_new:Npn \@@_property_ref:nn #1 #2
+ {
+ \ref_value:nn{#1}{#2}
+ }
}
-\cs_generate_variant:Nn \@@_ref_check:nn {en}
% \end{macrocode}
-% This retrieves a value, it is a simple wrapper around the \cs{ref_value:nn}
+% At last we generate a few variants. We use ee-variants as they already exist
+% in the module and once this is there it can go here.
% \begin{macrocode}
-\cs_new:Npn \@@_ref_value:nn #1 #2
- {
- \ref_value:nn{#1}{#2}
- }
-\cs_generate_variant:Nn \@@_ref_value:nn {en}
+\cs_generate_variant:Nn \@@_property_record:nn {ee}
+\prg_generate_conditional_variant:Nnn \@@_property_if_recorded:nn {ee} { T }
+\cs_generate_variant:Nn \@@_property_ref_undefined_warn:nn {ee}
+\cs_generate_variant:Nn \@@_property_ref:nn {ee}
% \end{macrocode}
% \end{macro}
% \section{Variables}
@@ -4356,16 +4385,16 @@
%\zref@labelbyprops{HyAnn@\the\HyAnn@Count}{abspage}%
%\zref@labelbylist {HyAnn@\the\HyAnn@Count} {l3pdf}
%\zref@refused{HyAnn@\the\HyAnn@Count}%
- \@@_ref_label:en {HyAnn@\the\HyAnn@Count}{abspage}
- \@@_ref_check:en {HyAnn@\the\HyAnn@Count}{abspage}
+ \@@_property_record:ee {HyAnn@\the\HyAnn@Count}{abspage}
+ \@@_property_ref_undefined_warn:ee {HyAnn@\the\HyAnn@Count}{abspage}
}%
\def\Fld@pageobjref
{
- \@@_ref_if_exist:enT {HyAnn@\the\HyAnn@Count}{abspage}
+ \@@_property_if_recorded:eeT {HyAnn@\the\HyAnn@Count}{abspage}
{
- /P~\pdf_pageobject_ref:n
+ /P~\pdf_pageobject_ref:e
{
- \@@_ref_value:en{HyAnn@\the\HyAnn@Count}{abspage}
+ \@@_property_ref:ee{HyAnn@\the\HyAnn@Count}{abspage}
}
}
}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdf b/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdf
index c640c4c15c..d830ce140a 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/hyperref-generic.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx
index ebf9ede282..e378716818 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.dtx
@@ -45,7 +45,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
%
@@ -56,30 +56,47 @@
% \begin{macrocode}
%<drivers>\ProvidesExplFile
%<*dvipdfmx>
- {l3backend-testphase-dvipdfmx.def}{2023-08-29}{}
+ {l3backend-testphase-dvipdfmx.def}{2023-10-09}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: dvipdfmx}
%</dvipdfmx>
%<*dvips>
- {l3backend-testphase-dvips.def}{2023-08-29}{}
+ {l3backend-testphase-dvips.def}{2023-10-09}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: dvips}
%</dvips>
%<*dvisvgm>
- {l3backend-testphase-dvisvgm.def}{2023-08-29}{}
+ {l3backend-testphase-dvisvgm.def}{2023-10-09}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: dvisvgm}
%</dvisvgm>
%<*luatex>
- {l3backend-testphase-luatex.def}{2023-08-29}{}
+ {l3backend-testphase-luatex.def}{2023-10-09}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (LuaTeX)}
%</luatex>
%<*pdftex>
- {l3backend-testphase-pdftex.def}{2023-08-29}{}
+ {l3backend-testphase-pdftex.def}{2023-10-09}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (pdfTeX)}
%</pdftex>
%<*xdvipdfmx>
- {l3backend-testphase-xetex.def}{2023-08-29}{}
+ {l3backend-testphase-xetex.def}{2023-10-09}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: XeTeX}
%</xdvipdfmx>
% \end{macrocode}
+% \subsection{Variants}
+% We need to generate temporarly a few e-types variants of kernel backend commands.
+% These can be removed once the kernel provides them.
+% \begin{macrocode}
+%<@@=pdf>
+%<*luatex|pdftex>
+\cs_generate_variant:Nn \__kernel_backend_literal_page:n { e }
+%</luatex|pdftex>
+%<*dvipdfmx|xdvipdfmx>
+\cs_generate_variant:Nn \__kernel_backend_literal:n { e }
+\cs_generate_variant:Nn \@@_backend:n { e }
+%</dvipdfmx|xdvipdfmx>
+%<*dvips>
+\cs_generate_variant:Nn \__kernel_backend_postscript:n { e }
+\cs_generate_variant:Nn \@@_backend_pdfmark:n { e }
+%</dvips>
+% \end{macrocode}
% \subsection{Support for delayed literal and special}
% Starting with TeXlive 2023 the engines support a \texttt{shipout} keyword
% for \cs{pdfliteral} and \cs{special}. When used the argument is not expanded
@@ -153,33 +170,54 @@
% This uses the temporary l3ref-tmp.sty. It will
% will be replaced by kernel code later.
% It is only needed to get a reference for the absolute page counter.
-% This uses the counter from the
-% new lthooks/ltshipout package.
+% This uses the counter from the new lthooks/ltshipout package.
% \begin{macrocode}
-%<@@=pdf>
%<*drivers>
+% \end{macrocode}
+% l3ref-tmp is loaded until all files in latex-lab and tagpdf has been
+% cleared:
+% \begin{macrocode}
\RequirePackage{l3ref-tmp}
-\cs_generate_variant:Nn \ref_label:nn {en}
-\cs_generate_variant:Nn \ref_value:nn {en}
-\cs_new_protected:Npn \@@_backend_ref_label:nn #1 #2
- {
- \@bsphack
- \ref_label:nn{#1}{abspage}
- \@esphack
- }
-\cs_new:Npn \@@_backend_ref_value:nn #1 #2
- {
- \ref_value:nn{#1}{#2}
- }
-\cs_generate_variant:Nn \@@_backend_ref_label:nn {en}
-\cs_generate_variant:Nn \@@_backend_ref_value:nn {en}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\cs_if_exist:NTF \property_new:nnnn
+ {
+ \cs_new_protected:Npn \@@_backend_record_abspage:n #1
+ {
+ \@bsphack
+ \property_record:nn{#1}{abspage}
+ \@esphack
+ }
+ \cs_new:Npn \@@_backend_ref_abspage:n #1
+ {
+ \property_ref:nn{#1}{abspage}
+ }
+
+ }
+ {
+ \cs_new_protected:Npn \@@_backend_record_abspage:n #1
+ %% \@@_backend_ref_label:nn #1 #2
+ {
+ \@bsphack
+ \ref_label:nn{#1}{abspage}
+ \@esphack
+ }
+ \cs_new:Npn \@@_backend_ref_abspage:n #1
+ %% \@@_backend_ref_value:nn #1 #2
+ {
+ \ref_value:nn{#1}{abspage}
+ }
+ }
+\cs_generate_variant:Nn \@@_backend_record_abspage:n {e}
+\cs_generate_variant:Nn \@@_backend_ref_abspage:n {e}
%</drivers>
% \end{macrocode}
% avoid that destinations names are optimized with xelatex/dvipdfmx
% see https://tug.org/pipermail/dvipdfmx/2019-May/000002.html
% \begin{macrocode}
-%<*dvipdfmx|xdvipdfmx>
- \__kernel_backend_literal:x { dvipdfmx:config~C~ 0x0010 }
+%<*dvipdfmx|xdvipdfmx>
+ \__kernel_backend_literal:n { dvipdfmx:config~C~ 0x0010 }
%</dvipdfmx|xdvipdfmx>
% \end{macrocode}
% \begin{variable}{\g_@@_tmpa_prop, \l_@@_tmpa_tl, \l_@@_backend_tmpa_box }
@@ -407,10 +445,10 @@
{
%we need to know the page the resource should be added too.
\int_gincr:N\g_@@_backend_resourceid_int
- \@@_backend_ref_label:en { l3pdf\int_use:N\g_@@_backend_resourceid_int }{abspage}
+ \@@_backend_record_abspage:e { l3pdf\int_use:N\g_@@_backend_resourceid_int }
\tl_set:Nx \l_@@_tmpa_tl
{
- \@@_backend_ref_value:en {l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage}
+ \@@_backend_ref_abspage:e {l3pdf\int_use:N\g_@@_backend_resourceid_int}
}
\pdfdict_if_exist:nF { g_@@_Core/backend_Page\l_@@_tmpa_tl}
{
@@ -433,7 +471,7 @@
\prop_gput:Nnn \g_@@_tmpa_prop { ##1 }{ ##2 }
}
}
- \exp_args:Nx \@@_backend_Page_primitive:n
+ \@@_backend_Page_primitive:e
{
\prop_map_function:NN \g_@@_tmpa_prop \pdfdict_item:ne
}
@@ -544,7 +582,7 @@
%issues the values stored in the global prop with dvi
\cs_new_protected:Npn \@@_backend_ThisPage_gpush:n #1
{
- \exp_args:Nx \@@_backend_Page_primitive:n
+ \@@_backend_Page_primitive:e
{ \pdfdict_use:n { g_@@_Core/Page} }
}
%</dvipdfmx|xdvipdfmx>
@@ -583,8 +621,8 @@
%issues the values stored in the global prop with dvi
\cs_new_protected:Npn \@@_backend_ThisPage_gpush:n #1
{
- \exp_args:Nx \@@_backend_Page_primitive:n
- { \pdfdict_use:n { g_@@_Core/Page} }
+ \@@_backend_Page_primitive:e
+ { \pdfdict_use:n { g_@@_Core/Page} }
}
%</dvips>
%<*dvisvgm>
@@ -609,6 +647,9 @@
\cs_new_protected:Npn \@@_backend_ThisPage_gpush:n #1
{}
%</dvisvgm>
+%<*drivers>
+\cs_generate_variant:Nn \@@_backend_Page_primitive:n { e }
+%</drivers>
% \end{macrocode}
% \end{macro}
%
@@ -730,12 +771,11 @@
}
\cs_new_protected:Npn \@@_backend_PageResources_gput:nnn #1 #2 #3
{
- % this is not used for output, but there is a test if the resource is empty
- \exp_args:Nnx
- \prop_gput:cnn { \__kernel_pdfdict_name:n { g_@@_Core/Page/Resources/#1} }
+ % this is not used for output, but there is a test if the resource is empty
+ \prop_gput:cne { \__kernel_pdfdict_name:n { g_@@_Core/Page/Resources/#1} }
{ \str_convert_pdfname:n {#2} }{ #3 }
%objects are not filled with \pdf_object_write as this is not additive!
- \@@_backend:x
+ \@@_backend:e
{
put~\@@_backend_object_ref:n {@@/Page/Resources/#1}<</#2~#3>>
}
@@ -816,11 +856,11 @@
\cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name
{
- \@@_backend_pdfmark:x{/#1~\@@_backend_object_ref:n{#2}~/BDC}
+ \@@_backend_pdfmark:e{/#1~\@@_backend_object_ref:n{#2}~/BDC}
}
\cs_set_protected:Npn \@@_backend_bdcobject:n #1 % #1 eg. Span,
{
- \@@_backend_pdfmark:x{/#1~\@@_backend_object_last:~/BDC}
+ \@@_backend_pdfmark:e{/#1~\@@_backend_object_last:~/BDC}
}
\cs_set_protected:Npn \@@_backend_emc:
{
@@ -865,11 +905,11 @@
\cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name
{
\int_gincr:N \g_@@_backend_name_int
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
pdf:code~/#1/l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC
}
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
pdf:put~@resources~
<<
@@ -884,11 +924,11 @@
\cs_set_protected:Npn \@@_backend_bdcobject:n #1 % #1 eg. Span
{
\int_gincr:N \g_@@_backend_name_int
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
pdf:code~/\exp_not:n{#1}/l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC
}
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
pdf:put~@resources~
<<
@@ -945,7 +985,7 @@
{
\prop_if_empty:cF { \__kernel_pdfdict_name:n { g_@@_Core/Page/Resources/##1} }
{
- \__kernel_backend_literal:x
+ \__kernel_backend_literal:e
{
pdf:put~@resources~
<</##1~\@@_backend_object_ref:n {@@/Page/Resources/##1}>>
@@ -959,17 +999,17 @@
\cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name
{
\int_gincr:N \g_@@_backend_name_int
- \exp_args:Nx\__kernel_backend_literal_page:n
+ \__kernel_backend_literal_page:e
{ /#1 ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC }
\bool_if:NTF \l_@@_backend_xform_bool
{
- \exp_args:Nnx\pdfdict_gput:nnn
+ \pdfdict_gput:nee
{ g_@@_Core/Xform/Resources/Properties }
{ l3pdf\int_use:N\g_@@_backend_name_int }
{ \@@_backend_object_ref:n { #2 } }
}
{
- \exp_args:Nx \tex_latelua:D
+ \exp_args:Ne \tex_latelua:D
{
ltx.pdf.Page_Resources_Properties_gput
(
@@ -983,17 +1023,17 @@
\cs_set_protected:Npn \@@_backend_bdcobject:n #1% #1 eg. Span
{
\int_gincr:N \g_@@_backend_name_int
- \exp_args:Nx\__kernel_backend_literal_page:n
+ \__kernel_backend_literal_page:e
{ /\exp_not:n{#1} ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC }
\bool_if:NTF \l_@@_backend_xform_bool
{
- \exp_args:Nnx\pdfdict_gput:nnn %no handler needed
+ \pdfdict_gput:nee %no handler needed
{ g_@@_Core/Xform/Resources/Properties }
{ l3pdf\int_use:N\g_@@_backend_name_int }
{ \@@_backend_object_last: }
}
{
- \exp_args:Nx \tex_latelua:D
+ \exp_args:Ne \tex_latelua:D
{
ltx.pdf.Page_Resources_Properties_gput
(
@@ -1048,28 +1088,28 @@
\cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name
{
\int_gincr:N \g_@@_backend_name_int
- \exp_args:Nx\__kernel_backend_literal_page:n
+ \__kernel_backend_literal_page:e
{ /#1 ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC }
% code to set the property ....
\int_gincr:N\g_@@_backend_resourceid_int
\bool_if:NTF \l_@@_backend_xform_bool
{
- \exp_args:Nnxx\pdfdict_gput:nnn %no handler needed
+ \pdfdict_gput:nee %no handler needed
{ g_@@_Core/Xform/Resources/Properties }
{ l3pdf\int_use:N\g_@@_backend_resourceid_int }
{ \@@_backend_object_ref:n { #2 } }
}
{
- \@@_backend_ref_label:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage}
+ \@@_backend_record_abspage:e {l3pdf\int_use:N\g_@@_backend_resourceid_int}
\tl_set:Nx \l_@@_tmpa_tl
{
- \@@_backend_ref_value:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage}
+ \@@_backend_ref_abspage:e{l3pdf\int_use:N\g_@@_backend_resourceid_int}
}
\pdfdict_if_exist:nF { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties }
{
\pdfdict_new:n { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties }
}
- \exp_args:Nnxx\pdfdict_gput:nnn
+ \pdfdict_gput:nee
{ g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties }
{ l3pdf\int_use:N\g_@@_backend_resourceid_int }
{ \@@_backend_object_ref:n{#2} }
@@ -1078,28 +1118,28 @@
\cs_set_protected:Npn \@@_backend_bdcobject:n #1% #1 eg. Span
{
\int_gincr:N \g_@@_backend_name_int
- \exp_args:Nx\__kernel_backend_literal_page:n
+ \__kernel_backend_literal_page:e
{ /\exp_not:n{#1} ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC }
% code to set the property ....
\int_gincr:N\g_@@_backend_resourceid_int
\bool_if:NTF \l_@@_backend_xform_bool
{
- \exp_args:Nnxx\pdfdict_gput:nnn
+ \pdfdict_gput:nee
{ g_@@_Core/Xform/Resources/Properties }
{ l3pdf\int_use:N\g_@@_backend_resourceid_int }
{ \@@_backend_object_last: }
}
{
- \@@_backend_ref_label:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage}
+ \@@_backend_record_abspage:e{l3pdf\int_use:N\g_@@_backend_resourceid_int}
\tl_set:Nx \l_@@_tmpa_tl
{
- \@@_backend_ref_value:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage}
+ \@@_backend_ref_abspage:e{l3pdf\int_use:N\g_@@_backend_resourceid_int}
}
\pdfdict_if_exist:nF { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties }
{
\pdfdict_new:n { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties }
}
- \exp_args:Nnxx\pdfdict_gput:nnn
+ \pdfdict_gput:nee
{ g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties }
{ l3pdf\int_use:N\g_@@_backend_resourceid_int }
{ \@@_backend_object_last: }
@@ -1152,7 +1192,7 @@
\cs_new_protected:Npn \@@_backend_PageResources_gpush:n #1
{
- \exp_args:NNx \tex_global:D \tex_pdfpageresources:D
+ \exp_args:NNe \tex_global:D \tex_pdfpageresources:D
{
\prop_if_exist:cT
{ \__kernel_pdfdict_name:n { g_@@_Core/backend_Page#1/Resources/Properties } }
@@ -1205,7 +1245,7 @@
\cs_new_protected:Npn \@@_backend_Names_gpush:nn #1 #2 %#1 name of name tree, #2 array content
{
\pdf_object_unnamed_write:nn {dict} {/Names [#2] }
- \@@_backend:x {put~@names~<</#1~\pdf_object_ref_last: >>}
+ \@@_backend:e {put~@names~<</#1~\pdf_object_ref_last: >>}
}
%</dvipdfmx|xdvipdfmx>
@@ -1231,7 +1271,7 @@
%<*dvips>
\cs_new_protected:Npn \@@_backend_NamesEmbeddedFiles_add:nn #1 #2
{
- \@@_backend_pdfmark:x
+ \@@_backend_pdfmark:e
{
/Name~#1~
/FS~#2~
@@ -1506,7 +1546,7 @@
\hook_gput_next_code:nn {shipout/background}
{
\mode_leave_vertical: %needed, the xform disappears without it.
- \@@_backend:x
+ \@@_backend:e
{
bxobj ~ \@@_backend_xform_ref:n { #1 }
\c_space_tl width ~ \pdfxform_wd:n { #1 }
@@ -1514,38 +1554,37 @@
\c_space_tl depth ~ \pdfxform_dp:n { #1 }
}
\box_use_drop:c { g_@@_backend_xform_#1_box }
- \@@_backend:x {put ~ @resources ~<<#3>> }
- \@@_backend:x
+ \@@_backend:e {put ~ @resources ~<<#3>> }
+ \@@_backend:e
{
put~ @resources ~
<<
/ExtGState~ \pdf_object_ref:n { @@/Page/Resources/ExtGState }
>>
}
- \@@_backend:x
+ \@@_backend:e
{
put~ @resources ~
<<
/Pattern~ \pdf_object_ref:n { @@/Page/Resources/Pattern }
>>
}
- \@@_backend:x
+ \@@_backend:e
{
put~ @resources ~
<<
/Shading~ \pdf_object_ref:n { @@/Page/Resources/Shading }
>>
}
- \@@_backend:x
+ \@@_backend:e
{
put~ @resources ~
<<
/ColorSpace~
\pdf_object_ref:n { @@/Page/Resources/ColorSpace }
>>
- }
- \exp_args:Nx
- \@@_backend:x {exobj ~<<#2>>}
+ }
+ \@@_backend:e {exobj ~<<#2>>}
}
}
@@ -1560,7 +1599,7 @@
{
\hbox_set:Nn \l_@@_backend_tmpa_box
{
- \@@_backend:x
+ \@@_backend:e
{
uxobj~ \@@_backend_xform_ref:n { #1 }
}
@@ -1634,7 +1673,7 @@
%\box_scale:Nnn \l_@@_backend_tmpa_box {1} {-1}
\hbox_set:Nn\l_@@_backend_tmpb_box
{
- \__kernel_backend_postscript:x
+ \__kernel_backend_postscript:e
{
gsave~currentpoint~
initclip~ % restore default clipping path (page device/whole page)
@@ -1662,7 +1701,7 @@
}
\str_if_eq:eeF{#1}{}
{
- \__kernel_backend_postscript:x
+ \__kernel_backend_postscript:e
{
product~(Ghostscript)~search~
{
@@ -1689,7 +1728,7 @@
{
\hbox_set:Nn \l_@@_backend_tmpa_box
{
- \__kernel_backend_postscript:x
+ \__kernel_backend_postscript:e
{
gsave~currentpoint~translate~1~-1~scale~
mark~{ pdf.obj \int_use:c{c__pdf_backend_xform_ \tl_to_str:n {#1} _int }}~
@@ -1805,7 +1844,7 @@
%<*xdvipdfmx|dvipdfmx>
\cs_set_protected:Npn \@@_backend_structure_destination:nn #1#2
{
- \@@_backend:x
+ \@@_backend:e
{
dest ~ ( \exp_not:n {#1} )
[
@@ -1831,7 +1870,7 @@
% \begin{macrocode}
\exp_args:Ne \pdf_object_if_exist:nT { \l_pdf_current_structure_destination_tl }
{
- \@@_backend:x
+ \@@_backend:e
{
obj ~ @pdf.SDest.\exp_not:n{#1}
[
@@ -1889,7 +1928,7 @@
% \begin{macrocode}
\exp_args:Ne \pdf_object_if_exist:nT { \l_pdf_current_structure_destination_tl }
{
- \@@_backend:x
+ \@@_backend:e
{
obj ~ @pdf.SDest.\exp_not:n{#2}
[
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdf
index 0149e6d72f..5abbe8a3f2 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3backend-testphase.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx
index b3076aaf26..a6384c182c 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.dtx
@@ -48,7 +48,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -432,7 +432,7 @@
% \begin{macrocode}
%<@@=pdfannot>
%<*header>
-\ProvidesExplPackage{l3pdfannot}{2023-08-29}{0.95z}
+\ProvidesExplPackage{l3pdfannot}{2023-10-09}{0.96a}
{PDF-annotations}
\RequirePackage{l3pdfdict}
%</header>
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdf
index bad7119c10..92ae61b635 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfannot.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx
index ed7406fe1c..d95382ad91 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -101,7 +101,7 @@
% \end{function}
%
% \begin{function}[added = 2020-04-06]
-% {\pdfdict_put:nnn, \pdfdict_gput:nnn}
+% {\pdfdict_put:nnn, \pdfdict_gput:nnn,\pdfdict_gput:nee}
% \begin{syntax}
% \cs{pdfdict_put:nnn} \Arg{local dictionary} \Arg{name} \Arg{value} \\
% \cs{pdfdict_gput:nnn} \Arg{global dictionary} \Arg{name} \Arg{value}
@@ -208,7 +208,7 @@
% \begin{macrocode}
%<@@=pdfdict>
%<*header>
-\ProvidesExplPackage{l3pdfdict}{2023-08-29}{0.95z}
+\ProvidesExplPackage{l3pdfdict}{2023-10-09}{0.96a}
{Tools for PDF dictionaries (LaTeX PDF management testphase bundle)}
%</header>
% \end{macrocode}
@@ -429,7 +429,7 @@
}
\cs_set_eq:NN \pdfdict_put:nnn \@@_put:nnn
-\cs_generate_variant:Nn \pdfdict_put:nnn {nnx,nno}
+\cs_generate_variant:Nn \pdfdict_put:nnn {nnx,nno,nee}
\cs_new_protected:Npn \@@_gput:nnn #1 #2 #3 %#1 global dict, #2 name, #3 value
{
@@ -450,7 +450,7 @@
}
\cs_set_eq:NN \pdfdict_gput:nnn \@@_gput:nnn
-\cs_generate_variant:Nn \pdfdict_gput:nnn {nnx,nno}
+\cs_generate_variant:Nn \pdfdict_gput:nnn {nnx,nno,nee}
% \end{macrocode}
% \end{macro}
%
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdf
index d8bc405fbe..c580144fb5 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfdict.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx
index 0479ecdae5..09489fc8a1 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdf
index be1e521cc0..46ae5b82f2 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-action.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx
index 9421dac34a..1a053e7180 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.dtx
@@ -64,7 +64,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdf
index 603d83c9f8..d6e06870ad 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-checkbox.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx
index 69858349ff..5b9993158f 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdf
index f73e10a44d..c8c02c3dd7 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-choice.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx
index ad43c11bb5..7471de15f8 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.dtx
@@ -55,7 +55,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdf
index 908fe64652..c561ea10a5 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-pushbutton.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx
index b9737a39c1..8098d4684c 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.dtx
@@ -83,7 +83,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -669,15 +669,32 @@
%
%\subsection{Creating the field}
% We need to retrieve the index of the default through a
-% label, so we need an ref attribute:
+% label, so we need an ref attribute or with newer LaTeX
+% a property:
%
% \begin{macrocode}
-\ref_attribute_gset:nnnn {pdfradioindex}{0}{now}
- {
- \int_use:N\l_@@_radio_value_num_int
- }
-\cs_generate_variant:Nn \ref_label:nn {V}
-\cs_generate_variant:Nn \ref_value:nn {V}
+\cs_if_exist:NTF \property_new:nnnn
+ {
+ \property_new:nnnn {pdfradioindex}{now}
+ {0}
+ {
+ \int_use:N\l_@@_radio_value_num_int
+ }
+ \cs_new_eq:NN \@@_property_record:nn \property_record:nn
+ \cs_new_eq:NN \@@_property_ref:nn \property_ref:nn
+ }
+ {
+ \ref_attribute_gset:nnnn {pdfradioindex}{0}{now}
+ {
+ \int_use:N\l_@@_radio_value_num_int
+ }
+ \cs_new_eq:NN \@@_property_record:nn \ref_label:nn
+ \cs_new_eq:NN \@@_property_ref:nn \ref_value:nn
+ }
+
+ \cs_generate_variant:Nn \@@_property_record:nn {V}
+ \cs_generate_variant:Nn \@@_property_ref:nn {V}
+
% \end{macrocode}
% A field should be created if the name doesn't exist yet
% \begin{macro}{\@@_radio_field:n}
@@ -702,8 +719,8 @@
% \end{macrocode}
% The default value is retrieved through a label:
% \begin{macrocode}
- \pdfdict_put:nnx { l_@@/field }{V} { /\ref_value:nn{#1}{pdfradioindex} }
- \pdfdict_put:nnx { l_@@/field }{DV} { /\ref_value:nn{#1}{pdfradioindex} }
+ \pdfdict_put:nnx { l_@@/field }{V} { /\@@_property_ref:nn{#1}{pdfradioindex} }
+ \pdfdict_put:nnx { l_@@/field }{DV} { /\@@_property_ref:nn{#1}{pdfradioindex} }
% \end{macrocode}
% now we create the field and set it as parent for the following annotation.
% \begin{macrocode}
@@ -763,7 +780,7 @@
\tl_if_empty:NT\l_@@_fieldID_tl
{
\pdfdict_get:nnN {l_@@/field}{T}\l_@@_fieldID_tl
- \tl_put_left:Nn \l_@@_fieldID_tl {@@/radio/}
+ \tl_put_left:Nn \l_@@_fieldID_tl {@pdffield/radio/}
}
% \end{macrocode}
% If unison has been set for the field pass it on:
@@ -801,8 +818,7 @@
}
\bool_if:NT\l_@@_radio_default_bool
{
- \exp_args:Ne
- \ref_label:nn{\l_@@_fieldID_tl}{pdfradioindex}
+ \@@_property_record:Vn\l_@@_fieldID_tl{pdfradioindex}
}
% \end{macrocode}
@@ -810,9 +826,9 @@
% \begin{macrocode}
\int_compare:nNnTF { \l_@@_radio_value_num_int } =
{
- \ref_value:Vn\l_@@_fieldID_tl{pdfradioindex}
+ \@@_property_ref:Vn\l_@@_fieldID_tl{pdfradioindex}
}
- { \pdfannot_dict_put:nnx {widget}{AS}{/\ref_value:Vn\l_@@_fieldID_tl{pdfradioindex}} }
+ { \pdfannot_dict_put:nnx {widget}{AS}{/\@@_property_ref:Vn\l_@@_fieldID_tl{pdfradioindex}} }
{ \pdfannot_dict_put:nnx {widget}{AS}{/Off} }
% \end{macrocode}
% Now we set the appearances, if no key has been use we take the default.
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdf
index 8516331911..4b89a4d1d0 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-radiobutton.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx
index e8fe7cb11c..4ab1db01f8 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdf
index 8b58cee341..491aff2815 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield-textfield.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx
index fa5e3dade4..1e1eb23f1e 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.dtx
@@ -69,7 +69,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -972,7 +972,7 @@
%<*package>
%<@@=pdffield>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesExplPackage{l3pdffield-testphase}{2023-08-29}{0.95z}%
+\ProvidesExplPackage{l3pdffield-testphase}{2023-10-09}{0.96a}%
{form fields}
% \end{macrocode}
% \subsection{hyperref specific command}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdf
index 370b92c1f4..c121fc5ebf 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffield.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx
index b55f0a3710..a98883d5c1 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -398,7 +398,7 @@
%
% \begin{macrocode}
%<*header>
-\ProvidesExplPackage{l3pdffile}{2023-08-29}{0.95z}
+\ProvidesExplPackage{l3pdffile}{2023-10-09}{0.96a}
{embedding and referencing files in PDF---LaTeX PDF management testphase bundle}
\RequirePackage{l3pdftools} %temporarly!!
%</header>
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdf
index 61075ae365..dc868ba43c 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdffile.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx
index 377178a516..6081864cb6 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.dtx
@@ -57,7 +57,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -632,7 +632,7 @@
%<@@=pdfmanagement>
%<*header>
%
-\ProvidesExplPackage{l3pdfmanagement}{2023-08-29}{0.95z}
+\ProvidesExplPackage{l3pdfmanagement}{2023-10-09}{0.96a}
{Management of core PDF dictionaries (LaTeX PDF management testphase bundle)}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdf
index cf7efbed96..0f2871f660 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmanagement.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx
index cc9430e5e2..1f30c5badf 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -566,7 +566,7 @@
% \begin{macrocode}
%<@@=pdfmeta>
%<*header>
-\ProvidesExplPackage{l3pdfmeta}{2023-08-29}{0.95z}
+\ProvidesExplPackage{l3pdfmeta}{2023-10-09}{0.96a}
{PDF-Standards---LaTeX PDF management testphase bundle}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdf
index 8cd52b4dbf..a0edffc232 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfmeta.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx
index c403d50ffc..6906727952 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -231,7 +231,7 @@
%
% \begin{macrocode}
%<*header>
-\ProvidesExplPackage{l3pdftools}{2023-08-29}{0.95z}
+\ProvidesExplPackage{l3pdftools}{2023-10-09}{0.96a}
{candidate commands for l3pdf---LaTeX PDF management testphase bundle}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdf
index b08cd7c6ae..733d736ef7 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdftools.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx b/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx
index bb3ae298cb..4df838e625 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.dtx
@@ -48,7 +48,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -132,7 +132,7 @@
% \begin{macrocode}
%<@@=pdf>
%<*header>
-\ProvidesExplPackage{l3pdfxform}{2023-08-29}{0.95z}
+\ProvidesExplPackage{l3pdfxform}{2023-10-09}{0.96a}
{command to create xforms (beta)---LaTeX PDF management testphase bundle}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdf b/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdf
index 306c2f34e6..eec75e8d94 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/l3pdfxform.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx b/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx
index 37dfc04cc2..96da24d648 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.dtx
@@ -47,7 +47,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -220,7 +220,7 @@
% \begin{macrocode}
%<@@=pdfmanagement>
%<*header>
-\ProvidesExplPackage{ltdocinit}{2023-08-29}{0.95z}
+\ProvidesExplPackage{ltdocinit}{2023-10-09}{0.96a}
{Initialize document metadata}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdf b/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdf
index 63ad14c84e..692a6df4ac 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/ltdocinit.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx
index a64f84cc72..29fcf8bafa 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.dtx
@@ -47,7 +47,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -63,7 +63,7 @@
% |debug={firstaidoff={name1,name2,...},...}|.
% \begin{macrocode}
%<*package>
-\ProvidesExplPackage{pdfmanagement-firstaid}{2023-08-29}{0.95z}
+\ProvidesExplPackage{pdfmanagement-firstaid}{2023-10-09}{0.96a}
{LaTeX PDF management testphase bundle / firstaid-patches}
%<@@=pdfmanagement>
@@ -155,6 +155,11 @@
package/xcolor/after
}
{\RequirePackage{xcolor-patches-tmp-ltx}}
+% \end{macrocode}
+% The patch must before color definitions are loaded, which will happen in
+% hooks in a newer xcolor:
+% \begin{macrocode}
+ \DeclareHookRule{package/xcolor/after}{pdfmanagement-firstaid}{before}{xcolor}
}
% \end{macrocode}
%
@@ -399,5 +404,6 @@
}
%</package>
% \end{macrocode}%
+%
% \end{documentation}
% \PrintIndex
diff --git a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdf b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdf
index 1138f50d57..1bf780aa3b 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-firstaid.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx
index 6208eaa379..0fa1b2130b 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx
+++ b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.dtx
@@ -47,7 +47,7 @@
% }^^A
% }
%
-% \date{Version 0.95z, released 2023-08-29}
+% \date{Version 0.96a, released 2023-10-09}
%
% \maketitle
% \begin{documentation}
@@ -395,7 +395,7 @@
% \begin{macrocode}
%<@@=pdf>
%<*package>
-\ProvidesExplPackage{pdfmanagement-testphase}{2023-08-29}{0.95z}
+\ProvidesExplPackage{pdfmanagement-testphase}{2023-10-09}{0.96a}
{LaTeX PDF management testphase bundle}
\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
\IfFormatAtLeastTF{2020-10-01}{}{
@@ -423,7 +423,7 @@
% to allow to set it in the document.
% \begin{macrocode}
%<*header>
-\ProvidesExplFile{pdfmanagement-testphase.ltx}{2023-08-29}{0.95z}
+\ProvidesExplFile{pdfmanagement-testphase.ltx}{2023-10-09}{0.96a}
{PDF~management~code~(testphase)}
% \end{macrocode}
% We define a boolean for the new delayed shipout. This is temporary. At some
diff --git a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdf b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdf
index f57b489f4e..d2898a3049 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdf
+++ b/macros/latex/contrib/pdfmanagement-testphase/pdfmanagement-testphase.pdf
Binary files differ
diff --git a/macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty b/macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
index c5a9a8daeb..29074b3de4 100644
--- a/macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
+++ b/macros/latex/contrib/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
@@ -1,6 +1,6 @@
-%% LaTeX2e file `xcolor-patches.sty'
+%% LaTeX2e file `xcolor-patches-tmp-ltx.sty'
%%
-\ProvidesPackage{xcolor-patches-tmp-ltx}[2023-08-29 v0.95z patch xcolor for l3color]
+\ProvidesPackage{xcolor-patches-tmp-ltx}[2023-10-09 v0.96a patch xcolor for l3color]
\@ifundefined{color_set:nn}{\RequirePackage{l3color}}{}
\ExplSyntaxOn
diff --git a/macros/luatex/generic/luatexja/README b/macros/luatex/generic/luatexja/README
index 69b4ebef3a..378db73395 100644
--- a/macros/luatex/generic/luatexja/README
+++ b/macros/luatex/generic/luatexja/README
@@ -1,4 +1,4 @@
-The LuaTeX-ja Package 20230503.0
+The LuaTeX-ja Package 20231010.0
--------------------------------
Copyright (c) 2011--2023 The LuaTeX-ja project
License: modified BSD (see COPYING)
@@ -42,9 +42,9 @@ Installation
2. If you must/want to install manually:
a. Download the source archive from CTAN,
- or tagged as 20230503.0 in the Git repository by
+ or tagged as 20231010.0 in the Git repository by
<http://git.osdn.jp/view?p=luatex-ja/luatexja.git
- ;a=snapshot;h=refs/tags/20230503.0;sf=tgz>
+ ;a=snapshot;h=refs/tags/20231010.0;sf=tgz>
b. Extract the archive and process following three files by LuaLaTeX
to generate classes for Japanese typesetting:
@@ -93,4 +93,4 @@ Notes
This file and ltj-kinsoku.lua are not used anymore.
(Do not remove ltj-kinsoku.tex.)
-Last commit date: Wed May 3 07:10:30 2023 +0900
+Last commit date: Tue Oct 10 18:41:17 2023 +0900
diff --git a/macros/luatex/generic/luatexja/doc/luatexja-en.pdf b/macros/luatex/generic/luatexja/doc/luatexja-en.pdf
index 794fce564d..9e8f1ec3db 100644
--- a/macros/luatex/generic/luatexja/doc/luatexja-en.pdf
+++ b/macros/luatex/generic/luatexja/doc/luatexja-en.pdf
Binary files differ
diff --git a/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf b/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
index 1aad471bbe..6022f034aa 100644
--- a/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
+++ b/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
Binary files differ
diff --git a/macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf b/macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf
index fd5a932b75..06cf336b44 100644
--- a/macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf
+++ b/macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf
Binary files differ
diff --git a/macros/luatex/generic/luatexja/doc/luatexja.dtx b/macros/luatex/generic/luatexja/doc/luatexja.dtx
index a6139ec9c2..46aec6b955 100644
--- a/macros/luatex/generic/luatexja/doc/luatexja.dtx
+++ b/macros/luatex/generic/luatexja/doc/luatexja.dtx
@@ -4280,7 +4280,7 @@ for Chinese or Korean typesetting.
\jfont\testJ={psft:Ryumin-Light:cid=Adobe-Japan1-7;jfm=jis} % Japanese
\jfont\testD={psft:Ryumin-Light:jfm=jis} % default: Adobe-Japan1-7
\jfont\testC={psft:AdobeMingStd-Light:cid=Adobe-CNS1-7;jfm=jis}% Traditional Chinese
-\jfont\testG={psft:SimSun:cid=Adobe-GB1-5;jfm=jis} % Simplified Chinese
+\jfont\testG={psft:SimSun:cid=Adobe-GB1-6;jfm=jis} % Simplified Chinese
\jfont\testK={psft:Batang:cid=Adobe-Korea1-2;jfm=jis} % Korean
\jfont\testKR={psft:SourceHanSerifAKR9:cid=Adobe-KR-9;jfm=jis} % Korean
\end{lstlisting}
diff --git a/macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty b/macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty
index e24164d1b6..d0d8e5488d 100644
--- a/macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty
+++ b/macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty
@@ -4,7 +4,7 @@
% LaTeX only!
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{luatexja-ruby}[2023-01-21 v0.61]
+\ProvidesPackage{luatexja-ruby}[2023-10-08 v0.62]
\RequirePackage{luatexja}
%%------------------
@@ -197,7 +197,7 @@
\directlua{luatexja.ruby.read_old_break_info()}%
}
\protected\def\ltj@@ruby[#1]#2#3{{% #1: option #2: 親文字群,#3: ルビ文字列群,共に| 区切り
- \setkeys[ltj]{ruby}{#1}%
+ \leavevmode\setkeys[ltj]{ruby}{#1}%
\directlua{luatexja.ruby.ruby_tmplist_r = \string{\string};
luatexja.ruby.ruby_tmplist_p = \string{\string}}%
\leavevmode\dimen0=\f@size pt\dimen1=\ltj@@rubyip@size\dimen0%
@@ -222,7 +222,7 @@
\protected\def\ltjkenten{\@ifnextchar[\ltj@@kenten{\ltj@@kenten[]}}%]
\def\ltj@@kenten[#1]#2{{%
- \setkeys[ltj]{ruby}{#1, stretchruby=101}%
+ \leavevmode\setkeys[ltj]{ruby}{#1, stretchruby=101}%
\@tfor\ltj@@kenten@temp:=#2\do{\ltj@@ruby[]{\ltj@@kenten@temp}{\ltj@@rubyip@kenten}}%
}}
diff --git a/macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua b/macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua
index ee43ca8595..88352dd5b2 100644
--- a/macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua
+++ b/macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua
@@ -15,7 +15,7 @@ do
end
local cidfont_data = {}
local cache_chars = {}
-local cache_ver = 12
+local cache_ver = 13
local identifiers = fonts.hashes.identifiers
local cid_reg, cid_order, cid_supp, cid_name
@@ -38,7 +38,7 @@ local cid_replace = {
return 327680 -- 655360/2
end
end},
- ["Adobe-GB1"] = {"UniGB-UTF32", 30283, 5,
+ ["Adobe-GB1"] = {"UniGB-UTF32", 30571, 6,
function (i)
if (814<=i and i<=939) or (i==7716)
or (22355<=i and i<=22357) then
diff --git a/macros/luatex/generic/luatexja/src/luatexja-core.sty b/macros/luatex/generic/luatexja/src/luatexja-core.sty
index b0c5c805c0..12a7a09eae 100644
--- a/macros/luatex/generic/luatexja/src/luatexja-core.sty
+++ b/macros/luatex/generic/luatexja/src/luatexja-core.sty
@@ -61,13 +61,24 @@
\expandafter\ifx\csname RequirePackage\endcsname\relax %<*!LaTeX>
\expandafter\let\csname ifltj@in@latex\expandafter\endcsname
\csname iffalse\endcsname
+ \endlinechar=13 %
+ \input infwarerr.sty
+ \endlinechar=-1 %
\else %<*LaTeX>
\expandafter\let\csname ifltj@in@latex\expandafter\endcsname
\csname iftrue\endcsname
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{luatexja-core}[2023-04-06 Core of LuaTeX-ja]
+ \endlinechar=13 %
+ \RequirePackage{infwarerr}
+ \endlinechar=-1 %
\fi %</LaTeX>
+%% Check if LuaTeX is used
+\expandafter\ifx\csname directlua\endcsname\relax
+ \@PackageError{luatexja-core}{This package requires Lua(HB)(La)TeX}{}
+\expandafter\endinput\fi\relax
+
%% Load prerequisite packages.
\endlinechar=13 %
\newif\ifltj@everyhook@avail\ltj@everyhook@availfalse
@@ -89,12 +100,7 @@
\fi %</LaTeX>
\endlinechar=-1 %
-%% Check if LuaTeX is used
-\ltx@LocalExpandAfter\ifx\csname directlua\endcsname\relax
- % Loading is silently aborted, since the notice of the wrong
- % engine is already shown in luaotfload.
- \ltj@core@AtEnd
-\expandafter\endinput\fi\relax
+\directlua{require('ltj-unicode-ccfix.lua')}% catcode of ideographs
%% Check LuaTeX version.
\ifnum\luatexversion<110
diff --git a/macros/luatex/generic/luatexja/src/luatexja.lua b/macros/luatex/generic/luatexja/src/luatexja.lua
index f4536580e3..1013684496 100644
--- a/macros/luatex/generic/luatexja/src/luatexja.lua
+++ b/macros/luatex/generic/luatexja/src/luatexja.lua
@@ -424,7 +424,8 @@ local function debug_show_node_X(p,print_fn, limit, inner_depth)
local k = prefix
local s
local pt, pic = node_type(p.id), (get_attr(p, attr_icflag) or 0) % icflag_table.PROCESSED_BEGIN_FLAG
- local base = prefix .. string.format('%X', pic) .. ' ' .. pt .. ' ' .. tostring(p.subtype) .. ' '
+ local base = prefix .. '[' .. string.format('%7d', node.direct.todirect(p)) .. '] ' ..
+ string.format('%X', pic) .. ' ' .. pt .. ' ' .. tostring(p.subtype) .. ' '
if pt == 'glyph' then
s = base .. ' '
.. (p.char<0xF0000 and utfchar(p.char) or '')
@@ -531,7 +532,7 @@ local function debug_show_node_X(p,print_fn, limit, inner_depth)
local t = tostring(p.user_id) .. ' (' ..
luatexbase.get_user_whatsit_name(p.user_id) .. ') '
if p.type ~= 110 then
- s = s .. ' userid:' .. t .. p.value
+ s = s .. ' userid:' .. t .. tostring(p.value)
print_fn(s)
else
s = s .. ' userid:' .. t .. '(node list)'
diff --git a/macros/luatex/generic/luatexja/src/luatexja.sty b/macros/luatex/generic/luatexja/src/luatexja.sty
index 5d04d1d460..c22e29d9d9 100644
--- a/macros/luatex/generic/luatexja/src/luatexja.sty
+++ b/macros/luatex/generic/luatexja/src/luatexja.sty
@@ -27,7 +27,7 @@
\newif\ifltj@disablejfam
%%%% VERSION
-\def\LuaTeXjaversion{20230503.0}
+\def\LuaTeXjaversion{20231010.0}
%% Check if LaTeX is used.
\begingroup\expandafter\expandafter\expandafter\endgroup
@@ -50,8 +50,6 @@
\ProcessOptions\relax
\fi %</LaTeX>
-\directlua{require('ltj-unicode-ccfix.lua')}% catcode of ideographs
-
%% Load all sub-packages.
\ifltj@in@latex %<*LaTeX>
%% \RequirePackage{expl3} needed if the version of l3kernel is v6111
diff --git a/support/texlab/CHANGELOG.md b/support/texlab/CHANGELOG.md
index c14a52e934..752480b13e 100644
--- a/support/texlab/CHANGELOG.md
+++ b/support/texlab/CHANGELOG.md
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## [5.10.1] - 2023-10-10
+
+### Fixed
+
+- Fix regression when renaming commands ([#936](https://github.com/latex-lsp/texlab/issues/936))
+
## [5.10.0] - 2023-09-30
### Added
diff --git a/support/texlab/Cargo.lock b/support/texlab/Cargo.lock
index d61fd8706d..83f8a78e08 100644
--- a/support/texlab/Cargo.lock
+++ b/support/texlab/Cargo.lock
@@ -1630,7 +1630,7 @@ dependencies = [
[[package]]
name = "texlab"
-version = "5.10.0"
+version = "5.10.1"
dependencies = [
"anyhow",
"assert_unordered",
diff --git a/support/texlab/README.md b/support/texlab/README.md
index 988eda832e..8e90b7064b 100644
--- a/support/texlab/README.md
+++ b/support/texlab/README.md
@@ -3,7 +3,6 @@
[![Wiki](https://img.shields.io/badge/docs-Wiki-success)](https://github.com/latex-lsp/texlab/wiki)
[![GitHub release](https://img.shields.io/github/release/latex-lsp/texlab?label=github)](https://github.com/latex-lsp/texlab/releases)
-[![crates.io](https://img.shields.io/crates/v/texlab)](https://crates.io/crates/texlab)
[![CTAN](https://img.shields.io/ctan/v/texlab)](https://ctan.org/pkg/texlab)
# TexLab
@@ -46,10 +45,12 @@ Then run the following command in the project folder:
cargo build --release
```
-Alternatively, you can install `texlab` from [crates.io](https://crates.io/crates/texlab) and run
+Avoid installing `texlab` from [crates.io](https://crates.io/crates/texlab)
+because we don't publish new versions of the server to the registry, anymore.
+Instead, you can use
```shell
-cargo install texlab
+cargo install --git https://github.com/latex-lsp/texlab --locked --tag <insert version here>
```
## Usage
diff --git a/support/texlab/crates/rename/src/command.rs b/support/texlab/crates/rename/src/command.rs
index 7ba0d49f0b..eacf411710 100644
--- a/support/texlab/crates/rename/src/command.rs
+++ b/support/texlab/crates/rename/src/command.rs
@@ -1,5 +1,5 @@
use base_db::{semantics::Span, DocumentData};
-use rowan::TextRange;
+use rowan::{TextRange, TextSize};
use syntax::latex;
use crate::{RenameBuilder, RenameParams};
@@ -11,7 +11,12 @@ pub(super) fn prepare_rename(params: &RenameParams) -> Option<Span> {
.token_at_offset(params.offset)
.find(|token| token.kind() == latex::COMMAND_NAME)?;
- Some(Span::from(&token))
+ let range = token.text_range();
+ let text = token.text()[1..].into();
+ Some(Span::new(
+ text,
+ TextRange::new(range.start() + TextSize::of('\\'), range.end()),
+ ))
}
pub(super) fn rename<'a>(builder: &mut RenameBuilder) -> Option<()> {
@@ -24,7 +29,7 @@ pub(super) fn rename<'a>(builder: &mut RenameBuilder) -> Option<()> {
let mut edits = Vec::new();
for command in &data.semantics.commands {
- if command.text == &name.text[1..] {
+ if command.text == name.text {
let range = TextRange::new(command.range.start(), command.range.end());
edits.push(range);
}
diff --git a/support/texlab/crates/texlab/Cargo.toml b/support/texlab/crates/texlab/Cargo.toml
index fc8e956a4e..e2ca8b443f 100644
--- a/support/texlab/crates/texlab/Cargo.toml
+++ b/support/texlab/crates/texlab/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "texlab"
description = "LaTeX Language Server"
-version = "5.10.0"
+version = "5.10.1"
license.workspace = true
readme = "README.md"
authors.workspace = true
diff --git a/support/texlab/texlab.1 b/support/texlab/texlab.1
index baa354fe74..3dd21917a1 100644
--- a/support/texlab/texlab.1
+++ b/support/texlab/texlab.1
@@ -1,7 +1,7 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13.
-.TH TEXLAB "1" "September 2023" "texlab 5.10.0" "User Commands"
+.TH TEXLAB "1" "October 2023" "texlab 5.10.1" "User Commands"
.SH NAME
-texlab \- manual page for texlab 5.10.0
+texlab \- manual page for texlab 5.10.1
.SH SYNOPSIS
.B texlab
[\fI\,OPTIONS\/\fR]
diff --git a/support/texlab/texlab.pdf b/support/texlab/texlab.pdf
index 7c3f5b479e..5964aac90a 100644
--- a/support/texlab/texlab.pdf
+++ b/support/texlab/texlab.pdf
Binary files differ
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index 0f6c6e040a..8e86a80cd6 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -137,6 +137,7 @@ $mirrors = {
'https://sunsite.icm.edu.pl/pub/CTAN/' => 1,
},
'Portugal' => {
+ 'https://ftp.eq.uc.pt/software/TeX/' => 1,
'https://mirrors.up.pt/pub/CTAN/' => 1,
},
'Romania' => {
@@ -179,7 +180,6 @@ $mirrors = {
'https://mirrors.ucr.ac.cr/CTAN/' => 1,
},
'USA' => {
- 'http://mirrors.ibiblio.org/pub/mirrors/CTAN/' => 1,
'https://ctan.math.illinois.edu/' => 1,
'https://ctan.math.utah.edu/ctan/tex-archive/' => 1,
'https://ctan.math.washington.edu/tex-archive/' => 1,
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 6e56ed7b0d..f62b971ddd 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,7 +26,7 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2023
-depend revision/68496
+depend revision/68508
name 00texlive.image
category TLCore
@@ -4807,7 +4807,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 68488
+revision 68498
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
@@ -59842,7 +59842,7 @@ catalogue-version 10.4
name circuitikz
category Package
-revision 67458
+revision 68502
shortdesc Draw electrical networks with TikZ
relocated 1
longdesc The package provides a set of macros for naturally typesetting
@@ -59851,11 +59851,11 @@ longdesc networks. It is designed as a tool that is easy to use, with a
longdesc lean syntax, native to LaTeX, and directly supporting PDF
longdesc output format. It has therefore been based on the very
longdesc impressive PGF/TikZ package.
-containersize 173848
-containerchecksum 47adf9d6be6dbc91c16cc422e41647dd1fa548c2dec4c5ddc8cbb35e2d0ed0b0e47b244c1aed52f6c0de6cb7dec29e1f92950946586794221a7fae960715958f
-doccontainersize 1809960
-doccontainerchecksum e60bc2c8aa53728d960aef44d5da60aa38622bc8c2c2d2c483258f66fa2559758920858c7c7362f462862857f6c3de3ba9c475eabf3af739f9de9da7ec91ef0f
-docfiles size=579
+containersize 174792
+containerchecksum 06cdcd840ad0cc3c509a06d6ae802a519d9fd705ccd59638c012b2b385064afab042343b51a1a962f67ecb0502663380d8a0f3e78f0f410196b0e70f3e49aab4
+doccontainersize 1822592
+doccontainerchecksum cc633dcf966b08b51315bff273db680475df5b48dfa0a1b49c885b462df017fa83883943f5ce1117d9efe8fc6f846f3b18c6e67d1255594600b902a695c619f4
+docfiles size=582
RELOC/doc/context/third/circuitikz/circuitikz-context.pdf
RELOC/doc/context/third/circuitikz/circuitikz-context.tex
RELOC/doc/generic/circuitikz/CHANGELOG.md
@@ -59865,7 +59865,7 @@ docfiles size=579
RELOC/doc/latex/circuitikz/circuitikzmanual.tex
RELOC/doc/latex/circuitikz/compatibility.tex
RELOC/doc/latex/circuitikz/ctikzmanutils.sty
-runfiles size=3384
+runfiles size=3386
RELOC/tex/context/third/circuitikz/t-circuitikz-0.8.3.tex
RELOC/tex/context/third/circuitikz/t-circuitikz-0.9.3.tex
RELOC/tex/context/third/circuitikz/t-circuitikz-0.9.6.tex
@@ -59916,7 +59916,7 @@ catalogue-contact-repository https://github.com/circuitikz/circuitikz
catalogue-ctan /graphics/pgf/contrib/circuitikz
catalogue-license lppl gpl
catalogue-topics graphics diagram-circ pgf-tikz electronic
-catalogue-version 1.6.3
+catalogue-version 1.6.4
name circularglyphs
category Package
@@ -142477,7 +142477,7 @@ catalogue-version 1.0
name haranoaji
category Package
-revision 67330
+revision 68501
shortdesc Harano Aji Fonts
longdesc Harano Aji Fonts (Harano Aji Mincho and Harano Aji Gothic) are
longdesc fonts obtained by replacing Adobe-Identity-0 (AI0) CIDs of
@@ -142485,14 +142485,14 @@ longdesc Source Han fonts (Source Han Serif and Source Han Sans) with
longdesc Adobe-Japan1 (AJ1) CIDs. There are 14 fonts, 7 weights each for
longdesc Mincho and Gothic.
postaction script file=tlpkg/tlpostcode/haranoaji-tlpost.pl
-containersize 26145400
-containerchecksum 95f7c826125e2c299de94c74e8a55320d61a429d6969ce7c402d063bd57e587946d226d25685983cf6c6f363cf3f1eecba9ff0c0eb8142ddd5fbc9f4cf8866a2
+containersize 26182680
+containerchecksum 2ff313007fb9b93503ed6d703c976f639d878ccc706060e0a26ab8a21ffe1d4669aca9df9fb001c886a1b1f7a0e140403253aaa5ef76a6e91d327c504fc251f3
doccontainersize 3032
-doccontainerchecksum 17914838c7bbe062e41659a9d626036f3861a5e263de14998fcfb0587f4fd50ea70f7bcc0af44d90027b56da2076f8b33bf30fb189c8d21229e21491af92d14b
+doccontainerchecksum 1c294bbfbbcc6abbbcb0cdf6ea29335d2b1b039545c1dccfe60e8ae4f1883d2564a5924bec22b0dc817e4eef0009108df348d7af788afee1dba4f1b7f1ae30d0
docfiles size=3
texmf-dist/doc/fonts/haranoaji/LICENSE
texmf-dist/doc/fonts/haranoaji/README details="Readme"
-runfiles size=9484
+runfiles size=9495
texmf-dist/fonts/opentype/public/haranoaji/HaranoAjiGothic-Bold.otf
texmf-dist/fonts/opentype/public/haranoaji/HaranoAjiGothic-Heavy.otf
texmf-dist/fonts/opentype/public/haranoaji/HaranoAjiGothic-Medium.otf
@@ -142506,11 +142506,11 @@ catalogue-contact-home https://github.com/trueroad/HaranoAjiFonts
catalogue-ctan /fonts/haranoaji
catalogue-license ofl
catalogue-topics font font-cjk japanese
-catalogue-version 20230610
+catalogue-version 20231009
name haranoaji-extra
category Package
-revision 67329
+revision 68500
shortdesc Harano Aji Fonts
relocated 1
longdesc Harano Aji Fonts (Harano Aji Mincho and Harano Aji Gothic) are
@@ -142518,14 +142518,14 @@ longdesc fonts obtained by replacing Adobe-Identity-0 (AI0) CIDs of
longdesc Source Han fonts (Source Han Serif and Source Han Sans) with
longdesc Adobe-Japan1 (AJ1) CIDs. There are 14 fonts, 7 weights each for
longdesc Mincho and Gothic.
-containersize 26016156
-containerchecksum 35c69cec199c07a3defb222997defc86b79ab7cf58261fbd5cdb38748e103431318adc4a665965b3344eaaa6245da1a70c39cf480522908cbecb386d7fbe09f6
+containersize 26018152
+containerchecksum 79b1d71d80bc73681f1d1d48679c2f4586834d7dcaebceadfcc17ba49fd6c41849cae77a88ae4e45f7b2f535352a27aeb91089cdfd5a75b0af88024988617422
doccontainersize 3044
-doccontainerchecksum b7beed61627e677ccf9a756ab92ee2640c929956b474e142a486167d36c4049c2212481e6338cbc196e6c83f574dbbeaf2bec05bcfb1a9329cac9f9b9260ab92
+doccontainerchecksum 3331b5113f2f8634ddbf4e280aa7e7b8f82a2ecb494b29d2a1587ab338130340084b1f70402e70fe2c0039ce57a4665030581323c703ed504caebac823a712a1
docfiles size=3
RELOC/doc/fonts/haranoaji-extra/LICENSE
RELOC/doc/fonts/haranoaji-extra/README details="Readme"
-runfiles size=9593
+runfiles size=9594
RELOC/fonts/opentype/public/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
RELOC/fonts/opentype/public/haranoaji-extra/HaranoAjiGothic-Light.otf
RELOC/fonts/opentype/public/haranoaji-extra/HaranoAjiGothic-Normal.otf
@@ -142538,7 +142538,7 @@ catalogue-contact-home https://github.com/trueroad/HaranoAjiFonts
catalogue-ctan /fonts/haranoaji-extra
catalogue-license ofl
catalogue-topics font font-cjk japanese
-catalogue-version 20230610
+catalogue-version 20231009
name hardwrap
category Package
@@ -151438,7 +151438,7 @@ catalogue-version 4.1beta
name indextools
category Package
-revision 38931
+revision 68499
shortdesc Producing multiple indices
relocated 1
longdesc This package enables the user to produce and typeset one or
@@ -151449,18 +151449,17 @@ longdesc particular setup is needed when TeX Live is used. Using xindy
longdesc or other programs, it is necessary to enable shell escape.
longdesc Shell escape is also needed if splitindex is used. This is a
longdesc fork of imakeidx, with new features and fixed bugs.
-containersize 4560
-containerchecksum 69bb7007041b46a25e9f6bb12d8212a4dd4eaa9dfd00fc033edd94de153e8941cc4de8a06d74516220ade56f2f5800f83a96ea2c02d766939cf70aa3822da63b
-doccontainersize 611172
-doccontainerchecksum 9290dc53a68dcc191d39bc0d1e760bd4cb8db50d7cf70771e60686ba2b1a7923b408f21e777453a6f2ec9ec372ac30faa3ffa2cc6bf7d2bc82b2526327d732a7
-docfiles size=153
+containersize 4564
+containerchecksum 7e98145f8e8285bc3a79c459ab16aa3a165b905ad7e82ebe330ccce4eb84f30ed14b0f4d7e77264810f20e102b0663c502914aa9cc7edc5fd5275d1f9c43aad8
+doccontainersize 562396
+doccontainerchecksum 78b129b7a1ce5a295a21cc9c216e8ad766fa7d1a459fe2590f50f07a07acfddbcc97e7758ee9b74f28a605f42a1697f09d29f3e168eaee2e53ab46cb9fdbd051
+docfiles size=144
RELOC/doc/latex/indextools/README details="Readme"
RELOC/doc/latex/indextools/indextools.pdf details="Package documentation"
- RELOC/doc/latex/indextools/issue5.pdf
RELOC/doc/latex/indextools/latexmkrc
RELOC/doc/latex/indextools/makefile
-srccontainersize 21688
-srccontainerchecksum 2d6d1a6009351911a3dfe204ab81ce8b54abfba885525a98557f56ad22ba6a319d35d36ea6f868d3abe9d788628d9f635dec8a657827ae3b772dae972a11c53c
+srccontainersize 21720
+srccontainerchecksum 62281ec5dfbc065f6ff29e4068b4c63dd38f4eec8c23038f3feb63bed1c4c40beefd56f8a47299474884f9fd5ce918b8d15d297a2b1f282579d7cee3b0dbe28a
srcfiles size=19
RELOC/source/latex/indextools/indextools.dtx
runfiles size=4
@@ -151469,7 +151468,7 @@ catalogue-also imakeidx
catalogue-ctan /macros/latex/contrib/indextools
catalogue-license lppl1.3
catalogue-topics index
-catalogue-version 1.5.1
+catalogue-version 1.6.0
name infwarerr
category Package
@@ -172799,7 +172798,7 @@ catalogue-version 1.1
name l3backend
category Package
-revision 66896
+revision 68507
shortdesc LaTeX3 backend drivers
relocated 1
longdesc This package forms parts of expl3, and contains the code used
@@ -172808,17 +172807,17 @@ longdesc The functions here are defined differently depending on the
longdesc engine in use. As such, these are distributed separately from
longdesc l3kernel to allow this code to be updated on an independent
longdesc schedule.
-containersize 16240
-containerchecksum 6a9d1f0778ea64255988c85a95810d490f88ad8e34e8b41d493f8986bf1359822df34617c7db78d8916693c45cb3873fec4a1002c63ca2e1fa6174c1926e4931
-doccontainersize 888376
-doccontainerchecksum 965eeb732bcee7dfc878b42986525d6fb90f59005fa31797a268a64bcf9494104fe534df209dcbd348ad4e2702e6658606df16e22056b8ea5b1e24d34e5822a2
+containersize 16220
+containerchecksum a6bac05976b5b98bec7e269063489e088f2a91da518d9e01b8c3a5e2df12450e0a5afb59bd5809bdfaf4d6ead63191a4bcc2444dc19ad1dd4831f1bfb1119e3e
+doccontainersize 889136
+doccontainerchecksum ea1dc29903ce48d8b13aaeef756cfe6d47be62f941bbecdf3b74b9f619a9071bab39b027d7e5b26a51a8af358870e2439432129a876ed04fd89437a46eef4d15
docfiles size=234
RELOC/doc/latex/l3backend/CHANGELOG.md
RELOC/doc/latex/l3backend/README.md details="Readme"
RELOC/doc/latex/l3backend/l3backend-code.pdf details="Package documentation"
RELOC/doc/latex/l3backend/l3backend-code.tex
srccontainersize 33852
-srccontainerchecksum 5d5a1b90a1aa9c3721e0fbedba14123aa48697400f5d9e2ac549f471b9f1d12df534a03a8e77cdfa27407fade9d84d280b33f36a54f1d98f79881fdf5786ce73
+srccontainerchecksum 7cc95857d9ac06b467d1dec5a455e868d476f4d5dde19ed30cfa0cf1e4a459538c1a53b45bd83d9c7dbfe104bebcf9bfcf16bbd0adf4d055afd18018b22b3661
srcfiles size=58
RELOC/source/latex/l3backend/l3backend-basics.dtx
RELOC/source/latex/l3backend/l3backend-box.dtx
@@ -173038,7 +173037,7 @@ binfiles arch=x86_64-solaris size=1
name l3experimental
category Package
-revision 67074
+revision 68507
shortdesc Experimental LaTeX3 concepts
relocated 1
longdesc The l3experimental packages are a collection of experimental
@@ -173058,11 +173057,11 @@ longdesc series of 'handle' positions, supplementing the simple TeX
longdesc reference point; xgalley, which controls boxes receiving text
longdesc for typesetting.
depend l3kernel
-containersize 23660
-containerchecksum 209706deb1fe9beae82e2ae93bdbd5caf92f816035be2cb9e8386fee190eb63b70cdc934b1c6f2364fd6573e1de3ae19384c5d1e874b43eddb5286127dabd1f9
-doccontainersize 3498172
-doccontainerchecksum c05e0b725368fa1faa66506b8ae5ecb0f820320cf69f7b8fd38b9b637423aa18215046da4acee5a18542319bf5dc656a8eeeec260c23e50a3e3a1f6586708378
-docfiles size=1092
+containersize 23632
+containerchecksum 4cec7f24839fd77f0579933886824ebb18f13a3420582257c82e89a84f94bc7167c4bc839fc27026d20c5e978be855a49a96fd28216b0560cf16661847b0f276
+doccontainersize 3498508
+doccontainerchecksum a7e4d167fc9a69f33e72a613bda67e1c98dd6bab2a0f956cc4f2c53f93286241cd360bceda60515b0dd23fb15585b51cb4cb73794444f67e09bb5b0a51ddf962
+docfiles size=1091
RELOC/doc/latex/l3experimental/CHANGELOG.md
RELOC/doc/latex/l3experimental/README.md details="Readme"
RELOC/doc/latex/l3experimental/l3benchmark/l3benchmark.pdf details="l3benchmark documentation"
@@ -173077,8 +173076,8 @@ docfiles size=1092
RELOC/doc/latex/l3experimental/xcoffins/xcoffins.pdf details="xcoffins documentation"
RELOC/doc/latex/l3experimental/xgalley/l3galley.pdf
RELOC/doc/latex/l3experimental/xgalley/xgalley.pdf details="xgalley documentation"
-srccontainersize 80176
-srccontainerchecksum fd1f697ef7d66d9ca5bf2e0a9497d63547e03ee5d0ec195ac71a41117f91dae6d4c034a1f59250c91c95f7d3f27c38b6266aeb875a4d8b8a36244f92e91b9c3d
+srccontainersize 80200
+srccontainerchecksum 684afc45a78606cdabfdd99778a2a7e27f557cd19fedb54ad747bb289d60b54a8fb0993d35852a7664b22b5ca2a181ef3f61392ba47cbd176b65fae956b1ee3f
srcfiles size=132
RELOC/source/latex/l3experimental/l3benchmark/l3benchmark.dtx
RELOC/source/latex/l3experimental/l3benchmark/l3benchmark.ins
@@ -173126,7 +173125,7 @@ catalogue-topics macro-supp layout latex3 pre-release
name l3kernel
category Package
-revision 68106
+revision 68507
shortdesc LaTeX3 programming conventions
relocated 1
longdesc The l3kernel bundle provides an implementation of the LaTeX3
@@ -173136,11 +173135,11 @@ longdesc LaTeX3 kernel and other future code are built: it is an API for
longdesc TeX programmers. The packages are set up so that the LaTeX3
longdesc conventions can be used with regular LaTeX2e packages.
depend l3backend
-containersize 173872
-containerchecksum 260973164aad6507ed18acbd1e52dd8c91633325affeb453d09da6484785964759acc97328ed2383aaca639c6ee3566114686ff52f77dd0e34e46596941fd1a4
-doccontainersize 12007176
-doccontainerchecksum cd0e9b2e53122b1885feb20cc8c49d697ce099c1033c40cd20baf522e751ca817bacc5a88e472185bdc220976c916050509d5fbad9dc9255bd55a44b3a7c9478
-docfiles size=3424
+containersize 174520
+containerchecksum 2b24f6ef3faeba28fe04aa6850eb92c2936b657bf2c598407b58ea3f239370c97ead89e3b7c4f232ed350f143bcf3200066baf91aebeffb168b0fe6680dc7f64
+doccontainersize 12036152
+doccontainerchecksum 653057383739abf912d8e54f7a20fbb410872a54e3f769e900a32fafae4f45eea33631d7e56ed2d30b0906e59892aed6530eb32eb27fdf4df5f136f3e6cf3101
+docfiles size=3431
RELOC/doc/latex/l3kernel/CHANGELOG.md
RELOC/doc/latex/l3kernel/README.md details="Readme"
RELOC/doc/latex/l3kernel/expl3.pdf details="The LaTeX3 Programming Language"
@@ -173187,9 +173186,9 @@ docfiles size=3424
RELOC/doc/latex/l3kernel/source3.pdf
RELOC/doc/latex/l3kernel/source3.tex
RELOC/doc/latex/l3kernel/source3body.tex
-srccontainersize 598548
-srccontainerchecksum cc1d8d916c5594cf7a7d8ca29c76f4ccdbdce870850d48d85725b94e4eca3e25d5236ef50ce82f047e3e8b8a91d6676ae608d701efd87a328d63539f8750fd7b
-srcfiles size=923
+srccontainersize 600376
+srccontainerchecksum 24fcdb71aa4ef4f57e9e01a244982086b4cc4aaa73737fff6cce7b25d2832051609b6be791187f4ed6d886c8d9048f7482380ef18d2059a31385a256a431cc8d
+srcfiles size=927
RELOC/source/latex/l3kernel/expl3.dtx
RELOC/source/latex/l3kernel/l3.ins
RELOC/source/latex/l3kernel/l3basics.dtx
@@ -173248,7 +173247,7 @@ srcfiles size=923
RELOC/source/latex/l3kernel/l3tl.dtx
RELOC/source/latex/l3kernel/l3token.dtx
RELOC/source/latex/l3kernel/l3unicode.dtx
-runfiles size=354
+runfiles size=355
RELOC/tex/latex/l3kernel/expl3-code.tex
RELOC/tex/latex/l3kernel/expl3-generic.tex
RELOC/tex/latex/l3kernel/expl3.ltx
@@ -173282,7 +173281,7 @@ catalogue-topics format latex3 pre-release
name l3packages
category Package
-revision 68165
+revision 68507
shortdesc High-level LaTeX3 concepts
relocated 1
longdesc This collection contains implementations for aspects of the
@@ -173300,10 +173299,10 @@ longdesc provides a means of defining generic functions using a
longdesc key-value syntax xfrac, which provides flexible split-level
longdesc fractions
depend l3kernel
-containersize 22120
-containerchecksum ee28d963dae29f565241301ca93ec683fd8e830e0c5f9767a6aab46a6ed3851ae02a7b2e0f924e094d877848aa4e0525cfee20e8af8d88cca039f7292be5c896
-doccontainersize 1833200
-doccontainerchecksum 7f42c8019c610df4e8b5621e457e669b125221e87854924afc827dbbf5c291200bd8a04bed468e7ffc36a185eb17bf47af7c11ad05f0b04abad92cddec5a4406
+containersize 22112
+containerchecksum aaf755351982e89531305e3f7a037db69e15b1b1eabb4140cb7a3a0a4db7c9604222cf0b9622d05b7637da310634f4ca1f00ab5941f51f152eb46b77165e4c92
+doccontainersize 1832932
+doccontainerchecksum 05231cdbc1f9bf3ad9775893099c46705f155a15e3ce9c4e8fb3d92422a3bd3dce9d05cd89e6f45c1d2afcf4c3dd469995e8d156e045d95b2788a4712ad5f094
docfiles size=547
RELOC/doc/latex/l3packages/CHANGELOG.md
RELOC/doc/latex/l3packages/README.md details="Readme"
@@ -173313,8 +173312,8 @@ docfiles size=547
RELOC/doc/latex/l3packages/xfrac/xfrac.pdf details="xfrac documentation"
RELOC/doc/latex/l3packages/xparse/xparse.pdf details="xparse documentation"
RELOC/doc/latex/l3packages/xtemplate/xtemplate.pdf details="xtemplate documentation"
-srccontainersize 46280
-srccontainerchecksum 4196a4e8a9397408ea0d5a88eba1f50b1a52c9d77f669f940495180024cb88348594b343373ebd2c26a390587be52514373babbad6a4112fa4107183b2a437e4
+srccontainersize 46252
+srccontainerchecksum 642810f1d5eb19059e0d5541b3cf98c6e7412c1cd3194d469eedf9df5d53ba8c1d0f3ecd382df18637408648d252c3c52bb6e730391049626d8dc5076bb3b7e7
srcfiles size=61
RELOC/source/latex/l3packages/l3keys2e/l3keys2e.dtx
RELOC/source/latex/l3packages/l3keys2e/l3keys2e.ins
@@ -198395,17 +198394,17 @@ catalogue-version 1.3
name luatexja
category Package
-revision 67003
+revision 68506
shortdesc Typeset Japanese with Lua(La)TeX
relocated 1
longdesc The package offers support for typesetting Japanese documents
longdesc with LuaTeX. Either of the Plain and LaTeX2e formats may be
longdesc used with the package.
depend luatexbase
-containersize 193016
-containerchecksum 0fcc29db5abbc1af49f6717637fc4a893c29dc0bbfd27ebdd17710a63a6a2eb1e6e0b0512fbfb5c5b77b8c99c3296a7f4e145f0770d399fd78d76a262f04ab76
-doccontainersize 3244724
-doccontainerchecksum cb58a82f7df728833eeb54d4ac72575b58a3f5ecb7f0a8e15f0751ef6a14fc62fb024983689ec5b61ee5879bb72291e959bd6d836e87bc2ef7b9db7299f1ca2d
+containersize 193052
+containerchecksum 5a375b7d796732ad24605ac66616dbc63a3dbc95cea883d46fca8b134728f2488e01b3c75b2477803dcadda813a5b2517eb7b49a245616feeb1db47465485bc9
+doccontainersize 3245540
+doccontainerchecksum a3e3285ce826937380fae9a593f872a42189316e634509958174948235ec36dded7ce72d564e194c5178269f30900111ba62a811cc3c25861a6b4ab632b7824e
docfiles size=977
RELOC/doc/luatex/luatexja/COPYING
RELOC/doc/luatex/luatexja/README details="Readme"
@@ -198424,7 +198423,7 @@ docfiles size=977
RELOC/doc/luatex/luatexja/luatexja.dtx
RELOC/doc/luatex/luatexja/luatexja.ins
srccontainersize 83900
-srccontainerchecksum 6818359b324f145d0c0d80e566268218fadb4c3d3c74809ac7865b2dd2b71c20584cfe17e39137f95fb485b58daa0286f5ab9a8a44f35e5dc029d461e03dfe7b
+srccontainerchecksum 1feb3c6432f3289304c2c1e5979e0f454159ca17d7e2b6f6631cf44c6c915eb6294d42163c0dd4bb41352d2106fa357e6db0a3d6f16a5bb6d0f850fe48d248fc
srcfiles size=119
RELOC/source/luatex/luatexja/ltjclasses.dtx
RELOC/source/luatex/luatexja/ltjclasses.ins
@@ -198549,7 +198548,7 @@ catalogue-contact-repository https://osdn.net/projects/luatex-ja/scm/git/luatexj
catalogue-ctan /macros/luatex/generic/luatexja
catalogue-license bsd
catalogue-topics japanese luatex class macro-gen
-catalogue-version 20230503.0
+catalogue-version 20231010.0
name luatexko
category Package
@@ -228971,7 +228970,7 @@ catalogue-version 0.4
name non-decimal-units
category Package
-revision 68382
+revision 68504
shortdesc Display and manipulate historical non-decimal units
relocated 1
longdesc Many historical unit systems were non-decimal. For example, the
@@ -228988,13 +228987,14 @@ longdesc when sharing an amount of money or dividing goods. This package
longdesc enables creation and configuration of such units to facilitate
longdesc their presentation in textual and tabular contexts, as well as
longdesc simple arithmetic.
-containersize 4732
-containerchecksum 459482737a0785bf1c4ff773094c880cc0e1a923af8b1d5a0f916dbd93bf3d90cb38b27ad3c870e0d4ee2fd06b6c8fe8680b8371aafa18536f518a15355abc74
-doccontainersize 162820
-doccontainerchecksum 71cff6406b333f0e3c9662fa39115d0b10cb52aefe1b02a6b725c193165bdacec9737f56b87eaab8f2ee0b9ff4291daf1041383818ccf2e0f751bacb44a4b44d
+containersize 5852
+containerchecksum 5ccc76f7aaca5aefe92e14a686a6847a1df8b00afd04fa96d11dff75951f729920f5564244ed06b74b67e2a81532111fc54adc719a59d6a9d1ac4d6fbeaae9d2
+doccontainersize 157180
+doccontainerchecksum e200b68474a0202d8018d943382bd76830f411b95373fd6e43715b343ed0214f08b529b1bec92a4b4fa4c8a1ff8accac8994ca7e342e7edcc5ead511b2769e21
docfiles size=46
RELOC/doc/latex/non-decimal-units/README.md details="Readme"
RELOC/doc/latex/non-decimal-units/non-decimal-units.pdf details="Package documentation"
+ RELOC/doc/latex/non-decimal-units/non-decimal-units.preamble.sty
RELOC/doc/latex/non-decimal-units/non-decimal-units.tex
runfiles size=8
RELOC/tex/latex/non-decimal-units/non-decimal-units.british.tex
@@ -246343,7 +246343,7 @@ catalogue-version 0.13
name pdfmanagement-testphase
category Package
-revision 68107
+revision 68505
shortdesc LaTeX PDF management testphase bundle
relocated 1
longdesc This is a temporary package, which is used during a test phase
@@ -246356,10 +246356,10 @@ longdesc allow users and package authors to safely test the code. At a
longdesc later stage it will be integrated into the LaTeX kernel (or in
longdesc parts into permanent support packages), and the current
longdesc testphase bundle will be removed.
-containersize 53708
-containerchecksum b75dce03fc0796accc379c2df309dfe6ecdec2d53bd4ff45344e2b17abe8e4354dd1b0aa1f9a357f61f96b4c7b79d7b85b0b4ab405ca7d418eeec0420238351a
-doccontainersize 8746688
-doccontainerchecksum ca94c3adef1b41d261069c49261de4b31470998ad71013beb789e196b98a3858af297ac3f4948683c9839e61e1edefaad41abfdf43cd31102523911e95366554
+containersize 53900
+containerchecksum 15238f515d406098f8712e3577e6a6668cb2674317a2e3adf5633929e54813fcfc031f7c8d7ddd9823225f36e36bb1fee62fc99822e5c85edc5d1f57fb8f4413
+doccontainersize 8753320
+doccontainerchecksum 773c1f52c1f40de75fd746610437cfa1bcbb264e90b45f2d57dd9a81207b404adbde7566a4f35af9ab420dd330bddaf0f2563585a4cca43972d82c676db79242
docfiles size=2878
RELOC/doc/latex/pdfmanagement-testphase/CHANGELOG.md
RELOC/doc/latex/pdfmanagement-testphase/README.md details="Readme"
@@ -246384,8 +246384,8 @@ docfiles size=2878
RELOC/doc/latex/pdfmanagement-testphase/pdfmanagement-firstaid.pdf
RELOC/doc/latex/pdfmanagement-testphase/pdfmanagement-testphase.pdf details="Package documentation"
RELOC/doc/latex/pdfmanagement-testphase/update-metadata.txt
-srccontainersize 137424
-srccontainerchecksum 583be232431889da5e8ed498ae10d328ab8301519ec2b33f55816a2085f7a3bb49a0e5d93a99bdc9a373bc43849f25a104a5d87f9c5dcfdcccf95134630b4340
+srccontainersize 137880
+srccontainerchecksum c1ef1946b9e7b770a089d80463112fd97b4748e7d3393f31aeedd263c276b945f14d82f866ef944d466f3b3244d0178fe6d61af834cedbc532f47197c1713716
srcfiles size=200
RELOC/source/latex/pdfmanagement-testphase/hyperref-generic.dtx
RELOC/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx
@@ -246430,7 +246430,7 @@ catalogue-contact-repository https://github.com/latex3/pdfresources
catalogue-ctan /macros/latex/contrib/pdfmanagement-testphase
catalogue-license lppl1.3c
catalogue-topics latex-devel pdf-feat
-catalogue-version 0.95z
+catalogue-version 0.96a
name pdfmarginpar
category Package
@@ -315917,7 +315917,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 68489
+revision 68498
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.
@@ -315925,10 +315925,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 114072
-containerchecksum 75600a4085d2c48e2265fc1b83a27d14c1d3124d20cd1f231c8bcd9bae228e1034f47d2513eae8adea05c4954a268e768afee8612c1b16605d7dae98dbc10e19
+containersize 114076
+containerchecksum 5f2a9546153ee53545c0a132a1fd4d48232ba487abe5fec94d5fd33fd390a579b242453b0f239e4c1848c44cdcdca6fb26a61354c8fe00f41be07319394a369b
doccontainersize 430052
-doccontainerchecksum 54bc147e4ddc5db0f0247a549c8536f429c1253d466cbe2562faa70465dd862bdafb9ccd60dcb104936c0bf83950d6b9cb7ae4887ed9acf8481c21da4d77abee
+doccontainerchecksum 03715a94905aa6115cd73dce03d50d37ad853cda07b84d1b99e0d056b63cdb48d3fb77f62b190a3c2198e32b6efb8b1cc7dce9111a25d1f6b8bddaa5cecd8d9a
docfiles size=551
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
@@ -324847,20 +324847,20 @@ catalogue-version 2.0
name tkz-bernoulli
category Package
-revision 68219
+revision 68503
shortdesc Draw Bernoulli trees with TikZ
relocated 1
longdesc This is a package for representing Bernoulli trees with
longdesc PGF/TikZ.
-containersize 2516
-containerchecksum 3d352c2e6f110dede3f9d9cbaebffa41a73cc08dc151e8572f3255252ab08ab7edc2364053f736c48bbd49fc65b8f6c7df0d46f834c1f572ed5c93f7bd3cad5f
-doccontainersize 182972
-doccontainerchecksum 74527dbefb488c9380715edbae9ad64c28afb7e89f09bf8b931aae89f3ca8bbd838633721c2d1e4c70d44847dafdeeaf4438438c1fcf3e72ef3145a53a4447dd
-docfiles size=50
+containersize 2736
+containerchecksum c101e513ee003d03d4532f3251a1fc327367ad278e29156b01b82f2b1cdff7c5eb2cdf58e432a97b46a48ff04472fee95ea73bbe51c459408852dabe414f5ced
+doccontainersize 189396
+doccontainerchecksum 20f99ce2fead44cb3c0b076febdd32097518dfd340a52ecc82bc91691bbf7bbc90997f054fbd54f1201f1c51b1cfa0d14a43c5d958b023039279e1775bbb2041
+docfiles size=52
RELOC/doc/latex/tkz-bernoulli/README.md details="Readme"
RELOC/doc/latex/tkz-bernoulli/tkz-bernoulli-doc.pdf details="Package documentation"
RELOC/doc/latex/tkz-bernoulli/tkz-bernoulli-doc.tex
-runfiles size=3
+runfiles size=4
RELOC/tex/latex/tkz-bernoulli/tkz-bernoulli.sty
catalogue-contact-home https://github.com/cpierquet/tkz-bernoulli
catalogue-contact-repository https://github.com/cpierquet/tkz-bernoulli
@@ -324868,7 +324868,7 @@ catalogue-contact-support https://github.com/cpierquet/tkz-bernoulli/issues
catalogue-ctan /graphics/pgf/contrib/tkz-bernoulli
catalogue-license lppl1.3c
catalogue-topics tree
-catalogue-version 0.1.0
+catalogue-version 0.1.1
name tkz-doc
category Package
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index bea1ad3e58..8eabc076c9 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-2ccb37cff1cb4ba7b38b7516435e8aa0 texlive.tlpdb
+fd707ea3695d01b2ebbad5723afa0518 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index 3f54d2f0c9..c737bf4e3d 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-fd9329591f967061e020fc0d6b1766564f8116823cd7e451b4cb9e7ba7de793571542f2e699a2c9738da3a0b9593659cf3d6e860ee254387d7213ad2821d0412 texlive.tlpdb
+35e769fefe735d623899dccd397a0d8811899912e211e35c841ebc4c5848ea7d28208b4bc9988b88127007c4a1849feb4a3578d39060ac371c30921933e1d26c texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 8909c163a8..892f5c1e75 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,11 +1,11 @@
-----BEGIN PGP SIGNATURE-----
-iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmUkkHoACgkQTOGHfhlD
-jHA0MggAk51jrQkfw8ROfYtFCHeJ/98K1r8Om8E1Ox4YRIA48tTG9NyxGaacL9Ws
-9PvkbidPyuS4zaQWdKnvxjnO1+ACkh5zl7oAkw4KCCi9L/0qwwJsyuBUD1Ysp/II
-mzKzK9f3WwROca2/GQ+6Qq0+QDYpZOrEiAoC4ULVmC8CjHTn1ImpRwG7dw01nlWv
-ePCDLjWZldHbTca7BKAOLc3xtfvPL8bqOYgSVnR8XS+ouiU1lQYU++LbYw7EOUhI
-FmhH46aaI2NjaLFf429ueCNpmU58HSxhUWwyUmaEmDXBs01Ltul0dQrPy1C87of0
-9WiLu1MQMZZtSGdIRcw73r7jfgrmnA==
-=H5fw
+iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmUl4gIACgkQTOGHfhlD
+jHATYwf/ZXZzREFrxv3BHVctTaXlA6gfG8OdSVkMq2VbOAvDBg8pdP3JVhyVIO+4
+naaF98V9MeuOh2D5k7KRaGyLclr8ONgm+tWXMXfrxo32Kqz7NKTEKqv2HGFyJpyM
+LwA7RUR+TtsuSLDxqjagLjHNajf+slbG88PlCbMCYqYV4IslI5YmZ3h8KJOoYvS4
+MEmgXVdjicOLQrQG+jr6SMAc70UMCwPdtqymuLEyWFZZUV35P4jtZitaN+ELY6Ur
+uOP9ge7H+x2gP4wyY4uHIFA/aXO3BJOEL3fCrg1jsOANNRKJ+7LTrIKf8dVo2zJU
+JMuZOt+oWm56JltYSaFIwYfUwWoS0w==
+=2Bs3
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 92333e51be..0a92c5d024 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/files.csv.lzma b/systems/win32/miktex/tm/packages/files.csv.lzma
index 2eac9c4af2..1cd952d3d8 100644
--- a/systems/win32/miktex/tm/packages/files.csv.lzma
+++ b/systems/win32/miktex/tm/packages/files.csv.lzma
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/files.csv.lzma b/systems/win32/miktex/tm/packages/next/files.csv.lzma
index 8a2d73ca5e..d013d9174f 100644
--- a/systems/win32/miktex/tm/packages/next/files.csv.lzma
+++ b/systems/win32/miktex/tm/packages/next/files.csv.lzma
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini
index ee29da0bdf..8b07516188 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=1696762205
+date=1696929419
lastupd=miktex-zzip-bin-x64-2.9 miktex-zlib-bin-x64-2.9 miktex-yap-bin-x64-2.9 miktex-xml2pmx-bin-x64 miktex-xetex-bin-x64-2.9 miktex-web-bin-x64-2.9 miktex-uriparser-bin-x64-2.9 miktex-upmendex-bin-x64 miktex-ttf2pk2-bin-x64-2.9 miktex-texworks-bin-x64-2.9 miktex-texware-bin-x64-2.9 miktex-texify-bin-x64-2.9 miktex-tex4ht-bin-x64-2.9 miktex-tex2xindy-bin-x64-2.9 miktex-tex-bin-x64-2.9 miktex-teckit-bin-x64-2.9 miktex-tdsutil-bin-x64 miktex-synctex-bin-x64-2.9 miktex-runtime-bin-x64-2.9 miktex-ptex-bin-x64
-lstdigest=6a0af2c28ea4fcb662d6f9e2822b3dcf
-numpkg=6874
+lstdigest=9c2c945853df7f8d3a35af02dbcb3744
+numpkg=6876
relstate=next
-version=8681
+version=8683
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: lBy4KHC48EDmv0IBGC3I9aGLe+xLjNTbH/fIa6Dksh7Jyk6zPye5rg3FBdG4s3gidYykTm/BbU8f+JyTcmOiDseDBybvw5VrctXhfQL1Dfo6Uy6MlKHgIQ7YIQcYI1AEFwdp6SKy/u9SRCAHe2ELDkTZ5jmIupoU5e0CiMNA040Jlmk4vR88pdDkkD/Hn3tY87JL2p6DsN3aB2jGH13rxpIQbxf7dHkzMgzNjocC/DIeeoYsqilpp1G6+IQ9Tli6rw/u5cLZbwxNegKzAufU83TPZWNQ4LTDvIsbIKx5zbNPvGWiAeAkEj8SGgPJrWI3m5fGgZtIRq5+K3UmlgGjqA==
+;;;; signature/miktex: QwPb5iteCCyO+Pr9rlfvVrGFYVfijkf6seP10MDcm2KZPBdFx5M1lq1LY4iXQqy53nCQ9DsmVHg1FhTAg3vGHRWtCaNGa6I7z1jkcTMnJd2OSEshH7Yd7wrM6r5eZgMNgIoxV5/RtD5H6Ibqa/UpwyBXrQ1mtx/UpjQvcXfU5E+MklVzXs90sXi2obNqa7RDdOcSLPuW3zAOy++F9VBEtO4EA4fuHMHupT5Z+KkrSIOWTp7EfK9IF8D8HTRN9lJKNmtgw+ZNumtzLWqBFPWMbvTk/4L6t1nbQkYSCX8o6gAs7n4ED6Mjuf1FokKuPe0+R4ikKxvp2SzqhE4H6wG4CA==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini
index 3099ef2701..acb547c75b 100644
--- a/systems/win32/miktex/tm/packages/pr.ini
+++ b/systems/win32/miktex/tm/packages/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1696762149
-lastupd=tikz-osci__source tikz-osci__doc tikz-osci siunitx__source siunitx__doc siunitx inter__doc inter biblatex-publist__source biblatex-publist__doc biblatex-publist simpleicons__doc simpleicons lastpage__source lastpage__doc lastpage circularglyphs__source circularglyphs__doc circularglyphs cascadia-code__doc
-lstdigest=20bb1822e452ee014888375fe965da3a
-numpkg=6874
+date=1696929382
+lastupd=tikz-osci__source tikz-osci__doc tikz-osci setspaceenhanced__source setspaceenhanced__doc setspaceenhanced schule__source schule__doc schule proflycee__source proflycee__doc proflycee profcollege__source profcollege__doc profcollege musixtex__doc musixtex msu-thesis__source msu-thesis__doc msu-thesis
+lstdigest=c17fd8e7b84c350a2b6c87ed37078257
+numpkg=6876
relstate=stable
-version=8681
+version=8683
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: tWu1ISKVY+89UotG53SlllZgnA3pEhfASST3sty2AkclK6qRC2U9Vvh2O6eRyoNw+ztuCz1vPbmzLOfB9r9mUNWvo9ZLXFQ6co/+tCRCow6BzH+C5tbc6o9ttdrAiQm5RfdXqMZvx0AJ5kJOrZbOBRs4blT/s8yTug7eJ71o/5XLlUYtuJNINpOVeMIy8nSTIowdhuZLLFbzhjQKZJojF/VBcU4XXlY056/d0ou61MWVFePb9qEVAB7OqnDpRCP3xijWaBYd36o2N6+MV3Ypxis5/qnLfVX3I88Co2kdrBUuZmXyQBMjWVVDhXf4Dja1RVgFSUO++8aSdJ4VbmoP+A==
+;;;; signature/miktex: M5YkP/zt8uOmk0BzpqyT4ud2BI8234W3L0kFKl7VQRKzOq6QDO5UOHzNcZyMfJOg9ZvyfWNWtZgnQubM0/yNPQmRLhjsWJg2iInVsJg25BLWaMPFKdt5nzNLdPWSoPV2hpME33bQSH5w8hJexa03fzuPvkxNMAHza809Y6zYOxxmqumPHeQy148AyUyHfhOFViQbFlycvbqYZ1JWaj+U/HSkf6hZ20zxzmXeAiSVVIvJYXzD0YY9OzcxOFqYTuU+USRpdNZriHoBIRo8DdNi9l6sEErZ/4/QqKjJMZhzy7B7NGbTEDlRvb6e9pcYD8gXn53oUDg/TuC2Ijnb0sWPlw==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/timestamp b/timestamp
index 47bcfd1e77..6b60908a54 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2023-10-10-02-02
+2023-10-11-02-02