summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FILES.byname521
-rw-r--r--FILES.byname.gzbin2516904 -> 2517967 bytes
-rw-r--r--FILES.last07days302
-rw-r--r--biblio/ctan-bibdata/ctan.bib72
-rw-r--r--biblio/ctan-bibdata/ctan.pdfbin3654199 -> 3654675 bytes
-rw-r--r--language/greek/greek-fontenc/README.md32
-rw-r--r--language/greek/greek-fontenc/alphabeta-doc-tu.pdfbin74857 -> 74849 bytes
-rw-r--r--language/greek/greek-fontenc/alphabeta-doc.pdfbin433268 -> 433268 bytes
-rw-r--r--language/greek/greek-fontenc/greek-fontenc-doc.html7
-rw-r--r--language/greek/greek-fontenc/greek-fontenc-doc.rst4
-rw-r--r--language/greek/greek-fontenc/greek-fontenc.def17
-rw-r--r--language/greek/greek-fontenc/greek-fontenc.def.html16
-rw-r--r--language/greek/greek-fontenc/hyperref-with-greek.pdfbin296813 -> 296813 bytes
-rw-r--r--language/greek/greek-fontenc/test-diacritics.tex2
-rw-r--r--language/greek/greek-fontenc/test-lgrenc.pdfbin326304 -> 327645 bytes
-rw-r--r--language/greek/greek-fontenc/test-lgrenc.tex18
-rw-r--r--language/greek/greek-fontenc/test-licr-input.pdfbin398308 -> 398308 bytes
-rw-r--r--language/greek/greek-fontenc/test-tuenc-greek.pdfbin85979 -> 85980 bytes
-rw-r--r--language/greek/greek-fontenc/textalpha-doc-tu.pdfbin83999 -> 84851 bytes
-rw-r--r--language/greek/greek-fontenc/textalpha-doc.pdfbin501358 -> 500770 bytes
-rw-r--r--language/greek/greek-fontenc/textalpha-doc.tex21
-rw-r--r--language/greek/greek-fontenc/textalpha.sty11
-rw-r--r--language/greek/greek-fontenc/textalpha.sty.html14
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/LICENSE1
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/VERSION1
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md38
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/t-intervalcalendar-module-doc.pdfbin0 -> 103780 bytes
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex427
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex359
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex270
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex197
-rw-r--r--macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex424
-rw-r--r--macros/context/contrib/context-collatingmarks/t-collatingmarks/LICENSE1
-rw-r--r--macros/context/contrib/context-collatingmarks/t-collatingmarks/VERSION1
-rw-r--r--macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/README.txt36
-rw-r--r--macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/t-collatingmarks.pdfbin0 -> 97437 bytes
-rw-r--r--macros/context/contrib/context-collatingmarks/t-collatingmarks/tex/context/third/collatingmarks/t-collatingmarks.tex244
-rw-r--r--macros/context/contrib/context-interval-calendar/t-interval-calendar/LICENSE1
-rw-r--r--macros/context/contrib/context-interval-calendar/t-interval-calendar/VERSION1
-rw-r--r--macros/context/contrib/context-interval-calendar/t-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdfbin0 -> 103780 bytes
-rw-r--r--macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex44
-rw-r--r--macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex265
-rw-r--r--macros/context/contrib/context-pocketdiary/LICENSE7
-rw-r--r--macros/context/contrib/context-pocketdiary/VERSION1
-rw-r--r--macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md96
-rw-r--r--macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdfbin0 -> 221337 bytes
-rw-r--r--macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex4
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex79
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua108
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex103
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex130
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua256
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua720
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua854
-rw-r--r--macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex1507
-rw-r--r--macros/latex/contrib/babel-contrib/greek/Makefile145
-rw-r--r--macros/latex/contrib/babel-contrib/greek/README.md5
-rw-r--r--macros/latex/contrib/babel-contrib/greek/athnum.dtx68
-rw-r--r--macros/latex/contrib/babel-contrib/greek/athnum.pdfbin176139 -> 181371 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html8
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst5
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek.dtx8
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek.pdfbin549394 -> 549488 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-athnum.pdfbin174634 -> 178616 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-athnum.tex2
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-case-changing-minimal.tex75
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-case-changing-varia-tu.tex41
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-case-changing.tex7
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex2
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-greek.pdfbin463797 -> 463920 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-tildeshorthand.tex106
-rw-r--r--macros/latex/contrib/babel-contrib/greek/unicode-examples.pdfbin15549 -> 0 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/unicode-examples.tex57
-rw-r--r--macros/latex/contrib/babel-contrib/greek/usage.pdfbin184955 -> 184955 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md9
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty11
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdfbin842835 -> 843176 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex14
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua4
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx7
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx7
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def6
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx6
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/README4
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdfbin407292 -> 406636 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex28
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx14
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx4
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx2
-rw-r--r--macros/latex/contrib/flexipage/README.txt1
-rw-r--r--macros/latex/contrib/flexipage/flexipage.dtx5
-rw-r--r--macros/latex/contrib/flexipage/flexipage.pdfbin269146 -> 269480 bytes
-rw-r--r--macros/latex/contrib/fnbreak/ChangeLog6
-rw-r--r--macros/latex/contrib/fnbreak/Makefile3
-rw-r--r--macros/latex/contrib/fnbreak/README28
-rw-r--r--macros/latex/contrib/fnbreak/fnbreak.dtx240
-rw-r--r--macros/latex/contrib/fnbreak/fnbreak.ins20
-rw-r--r--macros/latex/contrib/fnbreak/fnbreak.pdfbin204511 -> 209142 bytes
-rw-r--r--macros/latex/contrib/fnbreak/fnbreak.xml8
-rw-r--r--macros/latex/contrib/fnbreak/fnbreaktest.tex952
-rw-r--r--macros/latex/contrib/jeuxcartes/README.md2
-rw-r--r--macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdfbin6310183 -> 8281245 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex245
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10C.pdfbin0 -> 3181 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10K.pdfbin0 -> 2440 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10P.pdfbin0 -> 3769 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10T.pdfbin0 -> 4260 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2C.pdfbin0 -> 2290 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2K.pdfbin0 -> 2009 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2P.pdfbin0 -> 2493 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2T.pdfbin0 -> 2681 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3C.pdfbin0 -> 2527 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3K.pdfbin0 -> 2195 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3P.pdfbin0 -> 2761 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3T.pdfbin0 -> 2994 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4C.pdfbin0 -> 2311 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4K.pdfbin0 -> 1896 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4P.pdfbin0 -> 2608 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4T.pdfbin0 -> 2836 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5C.pdfbin0 -> 2707 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5K.pdfbin0 -> 2234 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5P.pdfbin0 -> 3092 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5T.pdfbin0 -> 3374 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6C.pdfbin0 -> 2907 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6K.pdfbin0 -> 2397 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6P.pdfbin0 -> 3279 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6T.pdfbin0 -> 3589 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7C.pdfbin0 -> 2658 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7K.pdfbin0 -> 2078 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7P.pdfbin0 -> 3100 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7T.pdfbin0 -> 3477 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8C.pdfbin0 -> 3309 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8K.pdfbin0 -> 2661 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8P.pdfbin0 -> 3800 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8T.pdfbin0 -> 4198 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9C.pdfbin0 -> 3380 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9K.pdfbin0 -> 2697 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9P.pdfbin0 -> 3873 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9T.pdfbin0 -> 4333 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AC.pdfbin0 -> 1949 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AK.pdfbin0 -> 1714 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AP.pdfbin0 -> 2103 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AT.pdfbin0 -> 2246 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DC.pdfbin0 -> 40262 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DK.pdfbin0 -> 35320 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DP.pdfbin0 -> 42782 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DT.pdfbin0 -> 43139 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosBleu.pdfbin0 -> 9480 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosRouge.pdfbin0 -> 9424 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JN.pdfbin0 -> 74256 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JR.pdfbin0 -> 82604 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RC.pdfbin0 -> 45233 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RK.pdfbin0 -> 34837 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RP.pdfbin0 -> 40359 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RT.pdfbin0 -> 38947 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VC.pdfbin0 -> 39866 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VK.pdfbin0 -> 44030 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VP.pdfbin0 -> 45474 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VT.pdfbin0 -> 41352 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10C.pdfbin0 -> 3121 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10K.pdfbin0 -> 3749 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10P.pdfbin0 -> 3851 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10T.pdfbin0 -> 6834 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2C.pdfbin0 -> 2295 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2K.pdfbin0 -> 2448 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2P.pdfbin0 -> 2503 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2T.pdfbin0 -> 3475 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3C.pdfbin0 -> 2784 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3K.pdfbin0 -> 2985 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3P.pdfbin0 -> 3066 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3T.pdfbin0 -> 4278 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4C.pdfbin0 -> 2073 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4K.pdfbin0 -> 2371 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4P.pdfbin0 -> 2427 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4T.pdfbin0 -> 3801 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5C.pdfbin0 -> 2733 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5K.pdfbin0 -> 3036 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5P.pdfbin0 -> 3097 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5T.pdfbin0 -> 4726 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6C.pdfbin0 -> 3015 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6K.pdfbin0 -> 3379 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6P.pdfbin0 -> 3437 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6T.pdfbin0 -> 5223 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7C.pdfbin0 -> 2371 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7K.pdfbin0 -> 2760 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7P.pdfbin0 -> 2813 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7T.pdfbin0 -> 4915 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8C.pdfbin0 -> 3320 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8K.pdfbin0 -> 3831 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8P.pdfbin0 -> 3909 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8T.pdfbin0 -> 6121 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9C.pdfbin0 -> 3281 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9K.pdfbin0 -> 3859 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9P.pdfbin0 -> 3914 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9T.pdfbin0 -> 6456 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AC.pdfbin0 -> 1831 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AK.pdfbin0 -> 1938 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AP.pdfbin0 -> 1987 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AT.pdfbin0 -> 2722 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DC.pdfbin0 -> 88142 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DK.pdfbin0 -> 82994 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DP.pdfbin0 -> 84482 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DT.pdfbin0 -> 85260 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosBleu.pdfbin0 -> 3376 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosRouge.pdfbin0 -> 24401 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JN.pdfbin0 -> 16582 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JR.pdfbin0 -> 16521 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RC.pdfbin0 -> 88679 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RK.pdfbin0 -> 84556 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RP.pdfbin0 -> 91844 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RT.pdfbin0 -> 102058 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VC.pdfbin0 -> 76915 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VK.pdfbin0 -> 73355 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VP.pdfbin0 -> 98633 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VT.pdfbin0 -> 92891 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-JS.pdfbin35063 -> 0 bytes
-rw-r--r--macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty378
-rw-r--r--macros/latex/contrib/photobook/DEPENDS.txtbin0 -> 467 bytes
-rw-r--r--macros/latex/contrib/photobook/Makefile20
-rw-r--r--macros/latex/contrib/photobook/photobook.cls4
-rw-r--r--macros/latex/contrib/photobook/photobook.pdfbin141191 -> 141677 bytes
-rw-r--r--macros/latex/contrib/photobook/scripts/README.md30
-rwxr-xr-xmacros/latex/contrib/photobook/scripts/cls2tex.sh4
-rw-r--r--macros/latex/contrib/photobook/scripts/make-spreads.sh199
-rw-r--r--macros/latex/contrib/warning/README77
-rw-r--r--macros/latex/contrib/warning/warning-doc.pdfbin254870 -> 288383 bytes
-rw-r--r--macros/latex/contrib/warning/warning-doc.tex31
-rw-r--r--macros/latex/contrib/warning/warning.sty118
-rw-r--r--macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdfbin458337 -> 463835 bytes
-rw-r--r--macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex69
-rw-r--r--macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdfbin572738 -> 578577 bytes
-rw-r--r--macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex68
-rw-r--r--macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty139
-rw-r--r--timestamp2
315 files changed, 8511 insertions, 2157 deletions
diff --git a/FILES.byname b/FILES.byname
index 1b1e1fb733..1527ae1805 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2047,12 +2047,12 @@
2022/12/25 | 1673 | biblio/citation-style-language/README.md
2022/12/25 | 11958 | biblio/citation-style-language/vancouver.csl
2022/12/25 | 604004 | biblio/citation-style-language.zip
-2023/03/17 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/03/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2023/03/17 | 2769042 | biblio/ctan-bibdata/ctan.bib
-2023/03/17 | 3653170 | biblio/ctan-bibdata/ctan.pdf
+2023/03/18 | 2769560 | biblio/ctan-bibdata/ctan.bib
+2023/03/18 | 3654199 | biblio/ctan-bibdata/ctan.pdf
2023/01/16 | 1489 | biblio/ctan-bibdata/README
-2023/03/17 | 4048864 | biblio/ctan-bibdata.zip
+2023/03/18 | 4050748 | 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
@@ -5408,7 +5408,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/03/17 | 148969 | FILES.last07days
+2023/03/18 | 154188 | 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
@@ -196154,9 +196154,9 @@
2009/04/27 | 15010 | language/greek/BibTeX.zip
2009/07/23 | 139204 | language/greek/doc/usage.pdf
2009/07/23 | 9828 | language/greek/doc/usage.tex
-2023/03/09 | 433268 | language/greek/greek-fontenc/alphabeta-doc.pdf
+2023/03/18 | 433268 | language/greek/greek-fontenc/alphabeta-doc.pdf
2023/03/08 | 17508 | language/greek/greek-fontenc/alphabeta-doc.tex
-2023/03/09 | 74857 | language/greek/greek-fontenc/alphabeta-doc-tu.pdf
+2023/03/18 | 74849 | language/greek/greek-fontenc/alphabeta-doc-tu.pdf
2023/03/08 | 10384 | language/greek/greek-fontenc/alphabeta-lgr.def
2023/03/08 | 30445 | language/greek/greek-fontenc/alphabeta-lgr.def.html
2023/03/08 | 15838 | language/greek/greek-fontenc/alphabeta.sty
@@ -196164,11 +196164,11 @@
2023/03/08 | 15413 | language/greek/greek-fontenc/alphabeta-tuenc.def
2023/03/08 | 36175 | language/greek/greek-fontenc/alphabeta-tuenc.def.html
2023/02/24 | 625 | language/greek/greek-fontenc/greek-euenc.def
-2023/03/08 | 21337 | language/greek/greek-fontenc/greek-fontenc.def
-2023/03/08 | 50932 | language/greek/greek-fontenc/greek-fontenc.def.html
-2023/03/08 | 66518 | language/greek/greek-fontenc/greek-fontenc-doc.html
-2023/03/08 | 23580 | language/greek/greek-fontenc/greek-fontenc-doc.rst
-2023/03/09 | 296813 | language/greek/greek-fontenc/hyperref-with-greek.pdf
+2023/03/17 | 21702 | language/greek/greek-fontenc/greek-fontenc.def
+2023/03/17 | 51350 | language/greek/greek-fontenc/greek-fontenc.def.html
+2023/03/18 | 66727 | language/greek/greek-fontenc/greek-fontenc-doc.html
+2023/03/18 | 23664 | language/greek/greek-fontenc/greek-fontenc-doc.rst
+2023/03/18 | 296813 | language/greek/greek-fontenc/hyperref-with-greek.pdf
2023/02/25 | 12825 | language/greek/greek-fontenc/hyperref-with-greek.tex
2023/02/25 | 4574 | language/greek/greek-fontenc/lgr2licr.lua
2023/02/25 | 25793 | language/greek/greek-fontenc/lgr2licr.lua.html
@@ -196176,24 +196176,24 @@
2023/03/08 | 75971 | language/greek/greek-fontenc/lgrenc.def.html
2023/03/09 | 24370 | language/greek/greek-fontenc/puenc-greek.def
2023/03/09 | 47651 | language/greek/greek-fontenc/puenc-greek.def.html
-2023/03/08 | 1666 | language/greek/greek-fontenc/README.md
+2023/03/17 | 1744 | language/greek/greek-fontenc/README.md
2023/03/08 | 195502 | language/greek/greek-fontenc/test-diacritics.pdf
-2023/03/08 | 14888 | language/greek/greek-fontenc/test-diacritics.tex
-2023/03/08 | 326304 | language/greek/greek-fontenc/test-lgrenc.pdf
-2023/02/28 | 21743 | language/greek/greek-fontenc/test-lgrenc.tex
-2023/03/09 | 398308 | language/greek/greek-fontenc/test-licr-input.pdf
+2023/03/17 | 14891 | language/greek/greek-fontenc/test-diacritics.tex
+2023/03/17 | 327645 | language/greek/greek-fontenc/test-lgrenc.pdf
+2023/03/17 | 21740 | language/greek/greek-fontenc/test-lgrenc.tex
+2023/03/18 | 398308 | language/greek/greek-fontenc/test-licr-input.pdf
2023/03/08 | 20105 | language/greek/greek-fontenc/test-licr-input.tex
-2023/03/09 | 85979 | language/greek/greek-fontenc/test-tuenc-greek.pdf
+2023/03/17 | 85980 | language/greek/greek-fontenc/test-tuenc-greek.pdf
2023/03/08 | 35485 | language/greek/greek-fontenc/test-tuenc-greek.tex
-2023/03/09 | 501358 | language/greek/greek-fontenc/textalpha-doc.pdf
-2023/02/28 | 19790 | language/greek/greek-fontenc/textalpha-doc.tex
-2023/03/09 | 83999 | language/greek/greek-fontenc/textalpha-doc-tu.pdf
-2023/03/08 | 23079 | language/greek/greek-fontenc/textalpha.sty
-2023/03/08 | 53144 | language/greek/greek-fontenc/textalpha.sty.html
+2023/03/18 | 500770 | language/greek/greek-fontenc/textalpha-doc.pdf
+2023/03/17 | 19549 | language/greek/greek-fontenc/textalpha-doc.tex
+2023/03/18 | 84851 | language/greek/greek-fontenc/textalpha-doc-tu.pdf
+2023/03/18 | 23270 | language/greek/greek-fontenc/textalpha.sty
+2023/03/18 | 53436 | language/greek/greek-fontenc/textalpha.sty.html
2023/02/25 | 85804 | language/greek/greek-fontenc/textalpha-tu.pdf
2023/03/09 | 51332 | language/greek/greek-fontenc/tuenc-greek.def
2023/03/09 | 86840 | language/greek/greek-fontenc/tuenc-greek.def.html
-2023/03/09 | 2691719 | language/greek/greek-fontenc.zip
+2023/03/18 | 2693689 | language/greek/greek-fontenc.zip
2023/03/02 | 33017 | language/greek/greek-inputenc/greek-inputenc.html
2023/02/21 | 141 | language/greek/greek-inputenc/greek-utf8-minimal.tex
2023/03/02 | 457627 | language/greek/greek-inputenc/greek-utf8.pdf
@@ -200652,6 +200652,15 @@
2005/07/04 | 6513 | macros/context/contrib/context-bnf/tex/context/third/bnf/t-bnf.tex
2018/03/05 | 11 | macros/context/contrib/context-bnf/VERSION
2018/03/22 | 273660 | macros/context/contrib/context-bnf.zip
+2023/03/09 | 2965 | macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md
+2022/12/30 | 103780 | macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/t-intervalcalendar-module-doc.pdf
+2023/03/09 | 13 | macros/context/contrib/context-calendar-examples/t-calendar-examples/LICENSE
+2023/01/20 | 12406 | macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex
+2023/01/20 | 9791 | macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex
+2023/01/20 | 7043 | macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex
+2023/01/20 | 4579 | macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex
+2023/01/20 | 12441 | macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex
+2023/03/09 | 3 | macros/context/contrib/context-calendar-examples/t-calendar-examples/VERSION
2008/04/05 | 162815 | macros/context/contrib/context-chromato/doc/context/third/chromato/chromato-demo.pdf
2008/04/05 | 81559 | macros/context/contrib/context-chromato/doc/context/third/chromato/chromato-doc.pdf
2008/04/05 | 4603 | macros/context/contrib/context-chromato/tex/context/third/chromato/t-chromato.tex
@@ -200667,6 +200676,11 @@
2006/09/12 | 1525 | macros/context/contrib/context-cmttbf/tex/context/third/cmttbf/t-cmttbf.tex
2018/03/05 | 11 | macros/context/contrib/context-cmttbf/VERSION
2018/03/22 | 165690 | macros/context/contrib/context-cmttbf.zip
+2022/01/01 | 1302 | macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/README.txt
+2022/01/01 | 97437 | macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/t-collatingmarks.pdf
+2023/03/09 | 13 | macros/context/contrib/context-collatingmarks/t-collatingmarks/LICENSE
+2022/01/01 | 7203 | macros/context/contrib/context-collatingmarks/t-collatingmarks/tex/context/third/collatingmarks/t-collatingmarks.tex
+2023/03/09 | 10 | macros/context/contrib/context-collatingmarks/t-collatingmarks/VERSION
2008/04/05 | 407738 | macros/context/contrib/context-construction-plan/doc/context/third/construction-plan/construction-plan-demo.pdf
2008/04/05 | 77353 | macros/context/contrib/context-construction-plan/doc/context/third/construction-plan/construction-plan-doc.pdf
2008/04/05 | 4700 | macros/context/contrib/context-construction-plan/tex/context/third/construction-plan/t-construction-plan.tex
@@ -200749,6 +200763,11 @@
2008/07/15 | 5667 | macros/context/contrib/context-inifile/tex/context/third/inifile/t-inifile.tex
2018/03/05 | 11 | macros/context/contrib/context-inifile/VERSION
2018/03/22 | 85333 | macros/context/contrib/context-inifile.zip
+2022/12/30 | 103780 | macros/context/contrib/context-interval-calendar/t-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdf
+2023/03/09 | 13 | macros/context/contrib/context-interval-calendar/t-interval-calendar/LICENSE
+2023/01/20 | 1098 | macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex
+2022/12/30 | 8053 | macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex
+2023/03/09 | 10 | macros/context/contrib/context-interval-calendar/t-interval-calendar/VERSION
2007/06/27 | 216930 | macros/context/contrib/context-layout/doc/context/third/layout/t-layout.pdf
2007/06/27 | 12169 | macros/context/contrib/context-layout/tex/context/third/layout/t-layout.tex
2018/03/05 | 11 | macros/context/contrib/context-layout/VERSION
@@ -200809,6 +200828,19 @@
2011/04/02 | 12265 | macros/context/contrib/context-mathsets/tex/context/third/mathsets/t-mathsets.tex
2018/03/05 | 11 | macros/context/contrib/context-mathsets/VERSION
2018/03/22 | 404328 | macros/context/contrib/context-mathsets.zip
+2023/03/17 | 2615 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md
+2023/03/16 | 221337 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf
+2023/03/16 | 194 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex
+2023/03/09 | 270 | macros/context/contrib/context-pocketdiary/LICENSE
+2022/09/29 | 1613 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex
+2022/07/12 | 3310 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua
+2023/03/16 | 2303 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex
+2023/01/16 | 3054 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex
+2023/01/15 | 7348 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua
+2023/03/16 | 18581 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua
+2023/03/16 | 23845 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua
+2023/03/16 | 51967 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex
+2023/03/16 | 3 | macros/context/contrib/context-pocketdiary/VERSION
2014/03/02 | 24876 | macros/context/contrib/context-rst/doc/context/third/rst/documentation.rst
2014/03/02 | 1083 | macros/context/contrib/context-rst/doc/context/third/rst/hybridtest.tex
2014/03/02 | 593 | macros/context/contrib/context-rst/doc/context/third/rst/inc-first.rst
@@ -211526,34 +211558,28 @@
2021/02/27 | 372481 | macros/latex/contrib/babel-contrib/german/ngermanb.pdf
2021/02/27 | 2387 | macros/latex/contrib/babel-contrib/german/README
2021/02/27 | 791513 | macros/latex/contrib/babel-contrib/german.zip
-2023/02/11 | 11231 | macros/latex/contrib/babel-contrib/greek/athnum.dtx
-2023/02/11 | 176139 | macros/latex/contrib/babel-contrib/greek/athnum.pdf
-2023/03/16 | 56239 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
-2023/03/16 | 17872 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
-2023/03/15 | 76732 | macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
-2023/02/11 | 3716 | macros/latex/contrib/babel-contrib/greek/babel-greek.ins
-2023/03/15 | 549394 | macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
-2023/02/11 | 6105 | macros/latex/contrib/babel-contrib/greek/grmath.dtx
-2023/02/11 | 120493 | macros/latex/contrib/babel-contrib/greek/grmath.pdf
-2023/03/04 | 3643 | macros/latex/contrib/babel-contrib/greek/Makefile
-2023/03/15 | 1183 | macros/latex/contrib/babel-contrib/greek/README.md
-2023/03/15 | 174634 | macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
-2023/02/11 | 2151 | macros/latex/contrib/babel-contrib/greek/test-athnum.tex
-2023/03/16 | 2465 | macros/latex/contrib/babel-contrib/greek/test-case-changing-minimal.tex
-2023/03/15 | 35598 | macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
-2023/03/16 | 1036 | macros/latex/contrib/babel-contrib/greek/test-case-changing-varia-tu.tex
-2023/02/11 | 1250 | macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex
-2023/03/15 | 2119 | macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
-2023/02/11 | 5473 | macros/latex/contrib/babel-contrib/greek/test-greeknum.tex
-2023/03/16 | 463797 | macros/latex/contrib/babel-contrib/greek/test-greek.pdf
-2023/03/16 | 27711 | macros/latex/contrib/babel-contrib/greek/test-greek.tex
-2023/02/11 | 6238 | macros/latex/contrib/babel-contrib/greek/test-lgr-fixes.tex
-2023/03/15 | 5324 | macros/latex/contrib/babel-contrib/greek/test-tildeshorthand.tex
-2023/03/16 | 15549 | macros/latex/contrib/babel-contrib/greek/unicode-examples.pdf
-2023/03/16 | 1960 | macros/latex/contrib/babel-contrib/greek/unicode-examples.tex
-2023/03/15 | 184955 | macros/latex/contrib/babel-contrib/greek/usage.pdf
-2023/03/15 | 10067 | macros/latex/contrib/babel-contrib/greek/usage.tex
-2023/03/16 | 1760613 | macros/latex/contrib/babel-contrib/greek.zip
+2023/03/17 | 11406 | macros/latex/contrib/babel-contrib/greek/athnum.dtx
+2023/03/17 | 181371 | macros/latex/contrib/babel-contrib/greek/athnum.pdf
+2023/03/17 | 56501 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
+2023/03/17 | 18016 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
+2023/03/17 | 76819 | macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
+2023/03/17 | 3716 | macros/latex/contrib/babel-contrib/greek/babel-greek.ins
+2023/03/17 | 549488 | macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
+2023/03/17 | 6105 | macros/latex/contrib/babel-contrib/greek/grmath.dtx
+2023/03/17 | 120493 | macros/latex/contrib/babel-contrib/greek/grmath.pdf
+2023/03/17 | 1211 | macros/latex/contrib/babel-contrib/greek/README.md
+2023/03/17 | 178616 | macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
+2023/03/17 | 2228 | macros/latex/contrib/babel-contrib/greek/test-athnum.tex
+2023/03/17 | 35997 | macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
+2023/03/17 | 1347 | macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex
+2023/03/17 | 2119 | macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
+2023/03/17 | 5473 | macros/latex/contrib/babel-contrib/greek/test-greeknum.tex
+2023/03/17 | 463920 | macros/latex/contrib/babel-contrib/greek/test-greek.pdf
+2023/03/17 | 27711 | macros/latex/contrib/babel-contrib/greek/test-greek.tex
+2023/03/17 | 6238 | macros/latex/contrib/babel-contrib/greek/test-lgr-fixes.tex
+2023/03/17 | 184955 | macros/latex/contrib/babel-contrib/greek/usage.pdf
+2023/03/17 | 10067 | macros/latex/contrib/babel-contrib/greek/usage.tex
+2023/03/18 | 1748178 | macros/latex/contrib/babel-contrib/greek.zip
2013/05/20 | 24628 | macros/latex/contrib/babel-contrib/hebrew/00readme.heb
2013/05/20 | 5764 | macros/latex/contrib/babel-contrib/hebrew/heb209.dtx
2013/05/20 | 152604 | macros/latex/contrib/babel-contrib/hebrew/heb209.pdf
@@ -213144,98 +213170,98 @@
2017/06/17 | 9858 | macros/latex/contrib/biblatex-contrib/biblatex-enc/enc.cbx
2017/06/17 | 5005 | macros/latex/contrib/biblatex-contrib/biblatex-enc/README
2017/06/17 | 11479 | macros/latex/contrib/biblatex-contrib/biblatex-enc.zip
-2022/06/18 | 1285 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-examples.bib
-2022/06/18 | 3632 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty
-2022/06/18 | 15162 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty
-2022/06/18 | 7975 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty
-2022/06/18 | 5586 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty
-2022/06/18 | 6074 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty
-2022/06/18 | 842835 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdf
-2022/06/18 | 10823 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty
-2022/06/18 | 165126 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex
-2022/06/18 | 9516 | macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua
-2022/06/18 | 13222 | macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md
-2022/06/18 | 628 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx
-2022/06/18 | 3811 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx
-2022/06/18 | 715 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx
-2022/06/18 | 3249 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx
-2022/06/18 | 2758 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx
-2022/06/18 | 6447 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx
-2022/06/18 | 601 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx
-2022/06/18 | 10067 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx
-2022/06/18 | 601 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx
-2022/06/18 | 14325 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx
-2022/06/18 | 608 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx
-2022/06/18 | 3279 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx
-2022/06/18 | 609 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx
-2022/06/18 | 4806 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx
-2022/06/18 | 813 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx
-2022/06/18 | 1976 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx
-2022/06/18 | 684 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx
-2022/06/18 | 4798 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx
-2022/06/18 | 1391 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx
-2022/06/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx
-2022/06/18 | 5753 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx
-2022/06/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx
-2022/06/18 | 5016 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx
-2022/06/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx
-2022/06/18 | 6057 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx
-2022/06/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx
-2022/06/18 | 3985 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx
-2022/06/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx
-2022/06/18 | 1848 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx
-2022/06/18 | 705 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx
-2022/06/18 | 4576 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx
-2022/06/18 | 677 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx
-2022/06/18 | 5505 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx
-2022/06/18 | 5533 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx
-2022/06/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx
-2022/06/18 | 8236 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx
-2022/06/18 | 688 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx
-2022/06/18 | 11606 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx
-2022/06/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx
-2022/06/18 | 5834 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx
-2022/06/18 | 698 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx
-2022/06/18 | 8686 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx
-2022/06/18 | 691 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx
-2022/06/18 | 12071 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx
-2022/06/18 | 697 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx
-2022/06/18 | 5336 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx
-2022/06/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx
-2022/06/18 | 6171 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx
-2022/06/18 | 692 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx
-2022/06/18 | 2086 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx
-2022/06/18 | 700 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx
-2022/06/18 | 5773 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
-2022/06/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx
-2022/06/18 | 6671 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx
-2022/06/18 | 12403 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def
-2022/06/18 | 2942 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx
-2022/06/18 | 619 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx
-2022/06/18 | 4111 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx
-2022/06/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx
-2022/06/18 | 4634 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx
-2022/06/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx
-2022/06/18 | 3548 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx
-2022/06/18 | 39399 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx
-2022/06/18 | 622 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx
-2022/06/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx
-2022/06/18 | 2995 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx
-2022/06/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx
-2022/06/18 | 710 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx
-2022/06/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx
-2022/06/18 | 718 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx
-2022/06/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx
-2022/06/18 | 715 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx
-2022/06/18 | 1402 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx
-2022/06/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx
-2022/06/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx
-2022/06/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx
-2022/06/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx
-2022/06/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx
-2022/06/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx
-2022/06/18 | 6548 | macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md
-2022/06/18 | 979544 | macros/latex/contrib/biblatex-contrib/biblatex-ext.zip
+2023/03/18 | 1285 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-examples.bib
+2023/03/18 | 3632 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty
+2023/03/18 | 15162 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty
+2023/03/18 | 7975 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty
+2023/03/18 | 5586 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty
+2023/03/18 | 6074 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty
+2023/03/18 | 843176 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdf
+2023/03/18 | 11069 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty
+2023/03/18 | 165391 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex
+2023/03/18 | 9516 | macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua
+2023/03/18 | 13476 | macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md
+2023/03/18 | 628 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx
+2023/03/18 | 3811 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx
+2023/03/18 | 715 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx
+2023/03/18 | 3249 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx
+2023/03/18 | 2758 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx
+2023/03/18 | 6447 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx
+2023/03/18 | 601 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx
+2023/03/18 | 10118 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx
+2023/03/18 | 601 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx
+2023/03/18 | 14376 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx
+2023/03/18 | 608 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx
+2023/03/18 | 3279 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx
+2023/03/18 | 609 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx
+2023/03/18 | 4806 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx
+2023/03/18 | 813 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx
+2023/03/18 | 1976 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx
+2023/03/18 | 684 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx
+2023/03/18 | 4798 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx
+2023/03/18 | 1391 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx
+2023/03/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx
+2023/03/18 | 5753 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx
+2023/03/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx
+2023/03/18 | 5016 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx
+2023/03/18 | 6057 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx
+2023/03/18 | 3985 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx
+2023/03/18 | 1848 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx
+2023/03/18 | 705 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx
+2023/03/18 | 4576 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx
+2023/03/18 | 677 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx
+2023/03/18 | 5505 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx
+2023/03/18 | 5533 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx
+2023/03/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx
+2023/03/18 | 8236 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx
+2023/03/18 | 688 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx
+2023/03/18 | 11606 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx
+2023/03/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx
+2023/03/18 | 5834 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx
+2023/03/18 | 698 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx
+2023/03/18 | 8686 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx
+2023/03/18 | 691 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx
+2023/03/18 | 12071 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx
+2023/03/18 | 697 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx
+2023/03/18 | 5336 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx
+2023/03/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx
+2023/03/18 | 6171 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx
+2023/03/18 | 692 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx
+2023/03/18 | 2086 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx
+2023/03/18 | 700 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx
+2023/03/18 | 5773 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx
+2023/03/18 | 6671 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx
+2023/03/18 | 12403 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def
+2023/03/18 | 2942 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx
+2023/03/18 | 619 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx
+2023/03/18 | 4111 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx
+2023/03/18 | 4634 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx
+2023/03/18 | 3548 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx
+2023/03/18 | 39399 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx
+2023/03/18 | 622 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx
+2023/03/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx
+2023/03/18 | 2995 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx
+2023/03/18 | 710 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx
+2023/03/18 | 718 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx
+2023/03/18 | 715 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx
+2023/03/18 | 1402 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx
+2023/03/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx
+2023/03/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx
+2023/03/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx
+2023/03/18 | 6548 | macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md
+2023/03/18 | 980065 | macros/latex/contrib/biblatex-contrib/biblatex-ext.zip
2017/11/21 | 241897 | macros/latex/contrib/biblatex-contrib/biblatex-fiwi/doc/biblatex-fiwi.pdf
2017/11/21 | 86976 | macros/latex/contrib/biblatex-contrib/biblatex-fiwi/doc/biblatex-fiwi.tex
2017/11/21 | 570 | macros/latex/contrib/biblatex-contrib/biblatex-fiwi/doc/dissff.xdy
@@ -213602,13 +213628,13 @@
2019/12/03 | 1387 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx
2019/12/03 | 655 | macros/latex/contrib/biblatex-contrib/biblatex-phys/README.md
2019/12/03 | 459931 | macros/latex/contrib/biblatex-contrib/biblatex-phys.zip
-2023/03/01 | 407292 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
-2023/03/01 | 60644 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
-2023/03/01 | 63709 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
-2023/03/01 | 3478 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
-2023/03/01 | 998 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx
-2023/03/01 | 8902 | macros/latex/contrib/biblatex-contrib/biblatex-publist/README
-2023/03/01 | 440010 | macros/latex/contrib/biblatex-contrib/biblatex-publist.zip
+2023/03/18 | 406636 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
+2023/03/18 | 60316 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
+2023/03/18 | 64180 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
+2023/03/18 | 3478 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
+2023/03/18 | 998 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx
+2023/03/18 | 9062 | macros/latex/contrib/biblatex-contrib/biblatex-publist/README
+2023/03/18 | 439363 | macros/latex/contrib/biblatex-contrib/biblatex-publist.zip
2022/01/09 | 41 | macros/latex/contrib/biblatex-contrib/biblatex-readbbl/Changes
2022/01/09 | 25895 | macros/latex/contrib/biblatex-contrib/biblatex-readbbl/doc/biblatex-readbbl.pdf
2022/01/09 | 5095 | macros/latex/contrib/biblatex-contrib/biblatex-readbbl/doc/biblatex-readbbl.tex
@@ -220946,13 +220972,13 @@
2010/09/13 | 2495 | macros/latex/contrib/flashmovie/test-flv.tex
2010/09/09 | 1288 | macros/latex/contrib/flashmovie/test.tex
2010/11/17 | 1352243 | macros/latex/contrib/flashmovie.zip
-2022/10/01 | 27741 | macros/latex/contrib/flexipage/flexipage.dtx
+2023/03/17 | 27794 | macros/latex/contrib/flexipage/flexipage.dtx
2022/05/27 | 2443 | macros/latex/contrib/flexipage/flexipage.ins
-2022/10/01 | 269146 | macros/latex/contrib/flexipage/flexipage.pdf
-2022/10/01 | 1103 | macros/latex/contrib/flexipage/README.txt
+2023/03/17 | 269480 | macros/latex/contrib/flexipage/flexipage.pdf
+2023/03/17 | 1153 | macros/latex/contrib/flexipage/README.txt
2022/05/28 | 57617 | macros/latex/contrib/flexipage/Test-flexipage.pdf
2022/05/28 | 3718 | macros/latex/contrib/flexipage/Test-flexipage.tex
-2022/10/01 | 304211 | macros/latex/contrib/flexipage.zip
+2023/03/18 | 304572 | macros/latex/contrib/flexipage.zip
2012/03/07 | 203131 | macros/latex/contrib/flipbook/flipbook-doc.pdf
2012/03/07 | 10564 | macros/latex/contrib/flipbook/flipbook-doc.tex
2012/03/07 | 187528 | macros/latex/contrib/flipbook/flipbook-ex.pdf
@@ -221194,15 +221220,15 @@
2008/12/29 | 2662 | macros/latex/contrib/fn2end/fn2end.sty
2008/12/29 | 3116 | macros/latex/contrib/fn2end/fn2end.tex
2012/09/26 | 24788 | macros/latex/contrib/fn2end.zip
-2012/01/01 | 652 | macros/latex/contrib/fnbreak/ChangeLog
-2012/01/01 | 15181 | macros/latex/contrib/fnbreak/fnbreak.dtx
-2012/01/01 | 541 | macros/latex/contrib/fnbreak/fnbreak.ins
-2012/01/01 | 204511 | macros/latex/contrib/fnbreak/fnbreak.pdf
-2012/01/01 | 23911 | macros/latex/contrib/fnbreak/fnbreaktest.tex
-2012/01/01 | 753 | macros/latex/contrib/fnbreak/fnbreak.xml
-2012/01/01 | 1867 | macros/latex/contrib/fnbreak/Makefile
-2012/01/01 | 897 | macros/latex/contrib/fnbreak/README
-2012/01/02 | 210246 | macros/latex/contrib/fnbreak.zip
+2023/03/18 | 752 | macros/latex/contrib/fnbreak/ChangeLog
+2023/03/18 | 15697 | macros/latex/contrib/fnbreak/fnbreak.dtx
+2023/03/18 | 861 | macros/latex/contrib/fnbreak/fnbreak.ins
+2023/03/18 | 209142 | macros/latex/contrib/fnbreak/fnbreak.pdf
+2023/03/17 | 20371 | macros/latex/contrib/fnbreak/fnbreaktest.tex
+2023/03/18 | 763 | macros/latex/contrib/fnbreak/fnbreak.xml
+2023/03/18 | 1865 | macros/latex/contrib/fnbreak/Makefile
+2023/03/18 | 1189 | macros/latex/contrib/fnbreak/README
+2023/03/18 | 209398 | macros/latex/contrib/fnbreak.zip
2007/08/01 | 38017 | macros/latex/contrib/fncychap/Bjarne.eps
2007/08/01 | 23070 | macros/latex/contrib/fncychap/Bjarnes.eps
2007/08/01 | 112819 | macros/latex/contrib/fncychap/Bjornstrup.eps
@@ -225011,9 +225037,121 @@
2010/04/07 | 239721 | macros/latex/contrib/jeopardy/jeopardy.pdf
2010/04/07 | 996 | macros/latex/contrib/jeopardy/README
2010/04/08 | 1447445 | macros/latex/contrib/jeopardy.zip
-2023/02/26 | 6310183 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf
-2023/02/26 | 36661 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex
-2023/02/26 | 1032 | macros/latex/contrib/jeuxcartes/README.md
+2023/03/18 | 8281245 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf
+2023/03/18 | 39732 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex
+2023/02/28 | 1203 | macros/latex/contrib/jeuxcartes/README.md
+2023/02/27 | 3181 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10C.pdf
+2023/02/27 | 2440 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10K.pdf
+2023/02/27 | 3769 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10P.pdf
+2023/02/27 | 4260 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10T.pdf
+2023/02/27 | 2290 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2C.pdf
+2023/02/27 | 2009 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2K.pdf
+2023/02/27 | 2493 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2P.pdf
+2023/02/27 | 2681 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2T.pdf
+2023/02/27 | 2527 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3C.pdf
+2023/02/27 | 2195 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3K.pdf
+2023/02/27 | 2761 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3P.pdf
+2023/02/27 | 2994 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3T.pdf
+2023/02/27 | 2311 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4C.pdf
+2023/02/27 | 1896 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4K.pdf
+2023/02/27 | 2608 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4P.pdf
+2023/02/27 | 2836 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4T.pdf
+2023/02/27 | 2707 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5C.pdf
+2023/02/27 | 2234 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5K.pdf
+2023/02/27 | 3092 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5P.pdf
+2023/02/27 | 3374 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5T.pdf
+2023/02/27 | 2907 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6C.pdf
+2023/02/27 | 2397 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6K.pdf
+2023/02/27 | 3279 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6P.pdf
+2023/02/27 | 3589 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6T.pdf
+2023/02/27 | 2658 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7C.pdf
+2023/02/27 | 2078 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7K.pdf
+2023/02/27 | 3100 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7P.pdf
+2023/02/27 | 3477 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7T.pdf
+2023/02/27 | 3309 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8C.pdf
+2023/02/27 | 2661 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8K.pdf
+2023/02/27 | 3800 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8P.pdf
+2023/02/27 | 4198 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8T.pdf
+2023/02/27 | 3380 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9C.pdf
+2023/02/27 | 2697 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9K.pdf
+2023/02/27 | 3873 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9P.pdf
+2023/02/27 | 4333 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9T.pdf
+2023/02/27 | 1949 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AC.pdf
+2023/02/27 | 1714 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AK.pdf
+2023/02/27 | 2103 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AP.pdf
+2023/02/27 | 2246 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AT.pdf
+2023/02/27 | 40262 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DC.pdf
+2023/02/27 | 35320 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DK.pdf
+2023/02/27 | 9480 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosBleu.pdf
+2023/02/27 | 9424 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosRouge.pdf
+2023/02/27 | 42782 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DP.pdf
+2023/02/27 | 43139 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DT.pdf
+2023/02/27 | 74256 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JN.pdf
+2023/02/27 | 82604 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JR.pdf
+2023/02/27 | 45233 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RC.pdf
+2023/02/27 | 34837 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RK.pdf
+2023/02/27 | 40359 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RP.pdf
+2023/02/27 | 38947 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RT.pdf
+2023/02/27 | 39866 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VC.pdf
+2023/02/27 | 44030 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VK.pdf
+2023/02/27 | 45474 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VP.pdf
+2023/02/27 | 41352 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VT.pdf
+2023/02/27 | 3121 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10C.pdf
+2023/02/27 | 3749 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10K.pdf
+2023/02/27 | 3851 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10P.pdf
+2023/02/27 | 6834 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10T.pdf
+2023/02/27 | 2295 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2C.pdf
+2023/02/27 | 2448 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2K.pdf
+2023/02/27 | 2503 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2P.pdf
+2023/02/27 | 3475 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2T.pdf
+2023/02/27 | 2784 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3C.pdf
+2023/02/27 | 2985 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3K.pdf
+2023/02/27 | 3066 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3P.pdf
+2023/02/27 | 4278 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3T.pdf
+2023/02/27 | 2073 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4C.pdf
+2023/02/27 | 2371 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4K.pdf
+2023/02/27 | 2427 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4P.pdf
+2023/02/27 | 3801 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4T.pdf
+2023/02/27 | 2733 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5C.pdf
+2023/02/27 | 3036 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5K.pdf
+2023/02/27 | 3097 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5P.pdf
+2023/02/27 | 4726 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5T.pdf
+2023/02/27 | 3015 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6C.pdf
+2023/02/27 | 3379 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6K.pdf
+2023/02/27 | 3437 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6P.pdf
+2023/02/27 | 5223 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6T.pdf
+2023/02/27 | 2371 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7C.pdf
+2023/02/27 | 2760 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7K.pdf
+2023/02/27 | 2813 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7P.pdf
+2023/02/27 | 4915 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7T.pdf
+2023/02/27 | 3320 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8C.pdf
+2023/02/27 | 3831 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8K.pdf
+2023/02/27 | 3909 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8P.pdf
+2023/02/27 | 6121 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8T.pdf
+2023/02/27 | 3281 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9C.pdf
+2023/02/27 | 3859 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9K.pdf
+2023/02/27 | 3914 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9P.pdf
+2023/02/27 | 6456 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9T.pdf
+2023/02/27 | 1831 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AC.pdf
+2023/02/27 | 1938 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AK.pdf
+2023/02/27 | 1987 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AP.pdf
+2023/02/27 | 2722 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AT.pdf
+2023/02/27 | 88142 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DC.pdf
+2023/02/27 | 82994 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DK.pdf
+2023/02/27 | 3376 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosBleu.pdf
+2023/02/27 | 24401 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosRouge.pdf
+2023/02/27 | 84482 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DP.pdf
+2023/02/27 | 85260 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DT.pdf
+2023/02/27 | 16582 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JN.pdf
+2023/02/27 | 16521 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JR.pdf
+2023/02/27 | 88679 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RC.pdf
+2023/02/27 | 84556 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RK.pdf
+2023/02/27 | 91844 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RP.pdf
+2023/02/27 | 102058 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RT.pdf
+2023/02/27 | 76915 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VC.pdf
+2023/02/27 | 73355 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VK.pdf
+2023/02/27 | 98633 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VP.pdf
+2023/02/27 | 92891 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VT.pdf
2022/12/24 | 6378 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv1-10C.pdf
2022/12/24 | 8385 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv1-10K.pdf
2022/12/24 | 6908 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv1-10P.pdf
@@ -225176,7 +225314,6 @@
2022/12/25 | 34646 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-DT.pdf
2022/12/25 | 2001 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-JN.pdf
2022/12/25 | 2174 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-JR.pdf
-2022/12/25 | 35063 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-JS.pdf
2022/12/25 | 44296 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-RC.pdf
2022/12/25 | 26804 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-RK.pdf
2022/12/25 | 50042 | macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-RP.pdf
@@ -225431,8 +225568,8 @@
2022/12/24 | 2037 | macros/latex/contrib/jeuxcartes/tex/CaJ-UnOv1-PTJ.pdf
2022/12/24 | 2031 | macros/latex/contrib/jeuxcartes/tex/CaJ-UnOv1-PTR.pdf
2022/12/24 | 2035 | macros/latex/contrib/jeuxcartes/tex/CaJ-UnOv1-PTV.pdf
-2023/02/25 | 24809 | macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty
-2023/02/26 | 11296361 | macros/latex/contrib/jeuxcartes.zip
+2023/03/18 | 21012 | macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty
+2023/03/18 | 15201142 | macros/latex/contrib/jeuxcartes.zip
2004/12/10 | 70397 | macros/latex/contrib/jhep/JHEP.cls
2007/04/24 | 1891 | macros/latex/contrib/jj_game/designs/design_bahamas.def
2007/04/19 | 1573 | macros/latex/contrib/jj_game/designs/design_florida.def
@@ -231506,16 +231643,17 @@
2017/04/21 | 1634 | macros/latex/contrib/phonrule/phonrule.sty
2017/04/21 | 492 | macros/latex/contrib/phonrule/README.md
2017/04/21 | 44782 | macros/latex/contrib/phonrule.zip
-2023/03/13 | 1527 | macros/latex/contrib/photobook/LICENSE
-2023/03/13 | 9798 | macros/latex/contrib/photobook/Makefile
-2023/03/13 | 161439 | macros/latex/contrib/photobook/photobook.cls
-2023/03/13 | 141191 | macros/latex/contrib/photobook/photobook.pdf
-2023/03/13 | 1705 | macros/latex/contrib/photobook/README.md
-2023/03/13 | 4217 | macros/latex/contrib/photobook/scripts/cls2tex.sh
-2023/03/13 | 890 | macros/latex/contrib/photobook/scripts/make-spreads.cfg.example
-2023/03/13 | 19474 | macros/latex/contrib/photobook/scripts/make-spreads.sh
-2023/03/13 | 13640 | macros/latex/contrib/photobook/scripts/README.md
-2023/03/13 | 189114 | macros/latex/contrib/photobook.zip
+2023/03/18 | 467 | macros/latex/contrib/photobook/DEPENDS.txt
+2023/03/18 | 1527 | macros/latex/contrib/photobook/LICENSE
+2023/03/18 | 10021 | macros/latex/contrib/photobook/Makefile
+2023/03/18 | 161439 | macros/latex/contrib/photobook/photobook.cls
+2023/03/18 | 141677 | macros/latex/contrib/photobook/photobook.pdf
+2023/03/18 | 1705 | macros/latex/contrib/photobook/README.md
+2023/03/18 | 4217 | macros/latex/contrib/photobook/scripts/cls2tex.sh
+2023/03/18 | 890 | macros/latex/contrib/photobook/scripts/make-spreads.cfg.example
+2023/03/18 | 16847 | macros/latex/contrib/photobook/scripts/make-spreads.sh
+2023/03/18 | 13985 | macros/latex/contrib/photobook/scripts/README.md
+2023/03/18 | 189328 | macros/latex/contrib/photobook.zip
2004/07/15 | 1773 | macros/latex/contrib/photo/Makefile
2004/07/15 | 26571 | macros/latex/contrib/photo/photo.dtx
1999/07/25 | 595 | macros/latex/contrib/photo/photo.ins
@@ -240595,10 +240733,11 @@
2022/09/26 | 84739 | macros/latex/contrib/wargame/source/wargame.dtx
2022/09/26 | 7038 | macros/latex/contrib/wargame/source/wargame.ins
2022/09/26 | 2651836 | macros/latex/contrib/wargame.zip
-2011/04/08 | 254870 | macros/latex/contrib/warning/warning-doc.pdf
-2011/04/08 | 2368 | macros/latex/contrib/warning/warning-doc.tex
-2001/08/17 | 2425 | macros/latex/contrib/warning/warning.sty
-2011/04/08 | 256489 | macros/latex/contrib/warning.zip
+2023/03/18 | 2585 | macros/latex/contrib/warning/README
+2023/03/18 | 288383 | macros/latex/contrib/warning/warning-doc.pdf
+2023/03/18 | 3008 | macros/latex/contrib/warning/warning-doc.tex
+2023/03/18 | 2764 | macros/latex/contrib/warning/warning.sty
+2023/03/18 | 285770 | macros/latex/contrib/warning.zip
2007/11/21 | 1379 | macros/latex/contrib/warpcol/README
2007/11/21 | 10827 | macros/latex/contrib/warpcol/warpcol.dtx
2007/11/21 | 514 | macros/latex/contrib/warpcol/warpcol.ins
@@ -240842,13 +240981,13 @@
2022/08/05 | 96536 | macros/latex/contrib/wrapstuff/wrapstuff.dtx
2022/08/05 | 451989 | macros/latex/contrib/wrapstuff/wrapstuff.pdf
2022/08/05 | 454990 | macros/latex/contrib/wrapstuff.zip
-2023/01/31 | 458337 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf
-2023/01/31 | 14428 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex
-2023/01/31 | 572738 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf
-2023/01/31 | 27784 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex
+2023/03/18 | 463835 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf
+2023/03/18 | 16725 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex
+2023/03/18 | 578577 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf
+2023/03/18 | 30553 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex
2023/01/17 | 457 | macros/latex/contrib/writeongrid/README.md
-2023/01/31 | 17497 | macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty
-2023/01/31 | 1014530 | macros/latex/contrib/writeongrid.zip
+2023/03/18 | 23376 | macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty
+2023/03/18 | 1027212 | macros/latex/contrib/writeongrid.zip
2013/08/27 | 1511 | macros/latex/contrib/wsemclassic/LICENSE
2013/08/27 | 2275 | macros/latex/contrib/wsemclassic/Makefile
2013/08/27 | 2394 | macros/latex/contrib/wsemclassic/README
@@ -311873,7 +312012,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/03/18 | 186 | timestamp
+2023/03/19 | 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 5d7683dd4e..609bd1a315 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index 38d2d8f6d4..b92e6874cd 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,3 +1,153 @@
+2023/03/18 | 998 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx
+2023/03/18 | 980065 | macros/latex/contrib/biblatex-contrib/biblatex-ext.zip
+2023/03/18 | 9516 | macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua
+2023/03/18 | 9062 | macros/latex/contrib/biblatex-contrib/biblatex-publist/README
+2023/03/18 | 890 | macros/latex/contrib/photobook/scripts/make-spreads.cfg.example
+2023/03/18 | 8686 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx
+2023/03/18 | 861 | macros/latex/contrib/fnbreak/fnbreak.ins
+2023/03/18 | 84851 | language/greek/greek-fontenc/textalpha-doc-tu.pdf
+2023/03/18 | 843176 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdf
+2023/03/18 | 8281245 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf
+2023/03/18 | 8236 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx
+2023/03/18 | 813 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx
+2023/03/18 | 7975 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty
+2023/03/18 | 763 | macros/latex/contrib/fnbreak/fnbreak.xml
+2023/03/18 | 752 | macros/latex/contrib/fnbreak/ChangeLog
+2023/03/18 | 74849 | language/greek/greek-fontenc/alphabeta-doc-tu.pdf
+2023/03/18 | 718 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx
+2023/03/18 | 715 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx
+2023/03/18 | 715 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx
+2023/03/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx
+2023/03/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx
+2023/03/18 | 713 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx
+2023/03/18 | 710 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx
+2023/03/18 | 705 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx
+2023/03/18 | 702 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx
+2023/03/18 | 700 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx
+2023/03/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx
+2023/03/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx
+2023/03/18 | 699 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx
+2023/03/18 | 698 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx
+2023/03/18 | 697 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx
+2023/03/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx
+2023/03/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx
+2023/03/18 | 695 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx
+2023/03/18 | 692 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx
+2023/03/18 | 691 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx
+2023/03/18 | 688 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx
+2023/03/18 | 684 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx
+2023/03/18 | 677 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx
+2023/03/18 | 66727 | language/greek/greek-fontenc/greek-fontenc-doc.html
+2023/03/18 | 6671 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx
+2023/03/18 | 6548 | macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md
+2023/03/18 | 6447 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx
+2023/03/18 | 64180 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx
+2023/03/18 | 640 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx
+2023/03/18 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx
+2023/03/18 | 628 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx
+2023/03/18 | 622 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx
+2023/03/18 | 619 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx
+2023/03/18 | 6171 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx
+2023/03/18 | 609 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx
+2023/03/18 | 608 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx
+2023/03/18 | 6074 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty
+2023/03/18 | 6057 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx
+2023/03/18 | 60316 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
+2023/03/18 | 601 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx
+2023/03/18 | 601 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx
+2023/03/18 | 5834 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx
+2023/03/18 | 578577 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf
+2023/03/18 | 5773 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
+2023/03/18 | 5753 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx
+2023/03/18 | 5586 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty
+2023/03/18 | 5533 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx
+2023/03/18 | 5505 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx
+2023/03/18 | 53436 | language/greek/greek-fontenc/textalpha.sty.html
+2023/03/18 | 5336 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx
+2023/03/18 | 5016 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx
+2023/03/18 | 500770 | language/greek/greek-fontenc/textalpha-doc.pdf
+2023/03/18 | 4806 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx
+2023/03/18 | 4798 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx
+2023/03/18 | 467 | macros/latex/contrib/photobook/DEPENDS.txt
+2023/03/18 | 463835 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf
+2023/03/18 | 4634 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx
+2023/03/18 | 4576 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx
+2023/03/18 | 439363 | macros/latex/contrib/biblatex-contrib/biblatex-publist.zip
+2023/03/18 | 433268 | language/greek/greek-fontenc/alphabeta-doc.pdf
+2023/03/18 | 4217 | macros/latex/contrib/photobook/scripts/cls2tex.sh
+2023/03/18 | 4111 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx
+2023/03/18 | 406636 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
+2023/03/18 | 4050748 | biblio/ctan-bibdata.zip
+2023/03/18 | 3985 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx
+2023/03/18 | 398308 | language/greek/greek-fontenc/test-licr-input.pdf
+2023/03/18 | 39732 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex
+2023/03/18 | 39399 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx
+2023/03/18 | 3811 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx
+2023/03/18 | 3654199 | biblio/ctan-bibdata/ctan.pdf
+2023/03/18 | 3632 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty
+2023/03/18 | 3548 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx
+2023/03/18 | 3478 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
+2023/03/18 | 3279 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx
+2023/03/18 | 3249 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx
+2023/03/18 | 30553 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex
+2023/03/18 | 304572 | macros/latex/contrib/flexipage.zip
+2023/03/18 | 3008 | macros/latex/contrib/warning/warning-doc.tex
+2023/03/18 | 2995 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx
+2023/03/18 | 296813 | language/greek/greek-fontenc/hyperref-with-greek.pdf
+2023/03/18 | 2942 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx
+2023/03/18 | 288383 | macros/latex/contrib/warning/warning-doc.pdf
+2023/03/18 | 285770 | macros/latex/contrib/warning.zip
+2023/03/18 | 2769560 | biblio/ctan-bibdata/ctan.bib
+2023/03/18 | 2764 | macros/latex/contrib/warning/warning.sty
+2023/03/18 | 2758 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx
+2023/03/18 | 2693689 | language/greek/greek-fontenc.zip
+2023/03/18 | 2585 | macros/latex/contrib/warning/README
+2023/03/18 | 23664 | language/greek/greek-fontenc/greek-fontenc-doc.rst
+2023/03/18 | 23376 | macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty
+2023/03/18 | 23270 | language/greek/greek-fontenc/textalpha.sty
+2023/03/18 | 21012 | macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty
+2023/03/18 | 209398 | macros/latex/contrib/fnbreak.zip
+2023/03/18 | 209142 | macros/latex/contrib/fnbreak/fnbreak.pdf
+2023/03/18 | 2086 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx
+2023/03/18 | 1976 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx
+2023/03/18 | 189328 | macros/latex/contrib/photobook.zip
+2023/03/18 | 1865 | macros/latex/contrib/fnbreak/Makefile
+2023/03/18 | 1848 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx
+2023/03/18 | 1748178 | macros/latex/contrib/babel-contrib/greek.zip
+2023/03/18 | 1705 | macros/latex/contrib/photobook/README.md
+2023/03/18 | 16847 | macros/latex/contrib/photobook/scripts/make-spreads.sh
+2023/03/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/03/18 | 16725 | macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex
+2023/03/18 | 165391 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex
+2023/03/18 | 161439 | macros/latex/contrib/photobook/photobook.cls
+2023/03/18 | 15697 | macros/latex/contrib/fnbreak/fnbreak.dtx
+2023/03/18 | 1527 | macros/latex/contrib/photobook/LICENSE
+2023/03/18 | 15201142 | macros/latex/contrib/jeuxcartes.zip
+2023/03/18 | 15162 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty
+2023/03/18 | 14376 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx
+2023/03/18 | 141677 | macros/latex/contrib/photobook/photobook.pdf
+2023/03/18 | 1402 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx
+2023/03/18 | 13985 | macros/latex/contrib/photobook/scripts/README.md
+2023/03/18 | 1391 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx
+2023/03/18 | 13476 | macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md
+2023/03/18 | 1285 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-examples.bib
+2023/03/18 | 12403 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def
+2023/03/18 | 12071 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx
+2023/03/18 | 1189 | macros/latex/contrib/fnbreak/README
+2023/03/18 | 11606 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx
+2023/03/18 | 11069 | macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty
+2023/03/18 | 1027212 | macros/latex/contrib/writeongrid.zip
+2023/03/18 | 10118 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx
+2023/03/18 | 10021 | macros/latex/contrib/photobook/Makefile
2023/03/17 | 991 | support/tex4ebook/tex4ebook-exec_azw.lua
2023/03/17 | 9889 | systems/win32/miktex/tm/packages/lithuanian__source.tar.lzma
2023/03/17 | 982 | systems/win32/miktex/tm/packages/pr.ini
@@ -26,6 +176,7 @@
2023/03/17 | 8689299 | systems/win32/miktex/tm/packages/pdfmanagement-testphase__doc.tar.lzma
2023/03/17 | 864893 | macros/latex/contrib/lt3rawobjects/lt3rawobjects.pdf
2023/03/17 | 8606 | systems/win32/miktex/tm/packages/principia.tar.lzma
+2023/03/17 | 85980 | language/greek/greek-fontenc/test-tuenc-greek.pdf
2023/03/17 | 85665 | macros/latex/contrib/lt3rawobjects/lt3rawobjects.dtx
2023/03/17 | 8499117 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
2023/03/17 | 8487 | systems/win32/miktex/tm/packages/resolsysteme.tar.lzma
@@ -52,6 +203,7 @@
2023/03/17 | 7830345 | systems/win32/miktex/tm/packages/biblatex__doc.tar.lzma
2023/03/17 | 77643 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
2023/03/17 | 76829 | macros/latex/contrib/tcolorbox/goldshade.png
+2023/03/17 | 76819 | macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
2023/03/17 | 76495 | systems/win32/miktex/tm/packages/latex-lab-dev__source.tar.lzma
2023/03/17 | 7645760 | macros/latex/contrib/tcolorbox/tcolorbox.pdf
2023/03/17 | 759599 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
@@ -108,10 +260,12 @@
2023/03/17 | 6337756 | install/macros/latex/contrib/tcolorbox.tds.zip
2023/03/17 | 62882 | macros/latex/contrib/tcolorbox/blueshade.png
2023/03/17 | 62740 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2023/03/17 | 6238 | macros/latex/contrib/babel-contrib/greek/test-lgr-fixes.tex
2023/03/17 | 620070 | graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf
2023/03/17 | 61935 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
2023/03/17 | 61830 | systems/win32/miktex/tm/packages/unimath-plain-xetex__doc.tar.lzma
2023/03/17 | 6146 | systems/win32/miktex/tm/packages/minim__source.tar.lzma
+2023/03/17 | 6105 | macros/latex/contrib/babel-contrib/greek/grmath.dtx
2023/03/17 | 608140 | systems/win32/miktex/tm/packages/causets__doc.tar.lzma
2023/03/17 | 60793 | systems/win32/miktex/tm/packages/caption.tar.lzma
2023/03/17 | 607852 | graphics/pgf/contrib/fenetrecas.zip
@@ -136,6 +290,7 @@
2023/03/17 | 571671 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
2023/03/17 | 568614 | systems/win32/miktex/tm/packages/platex-tools__doc.tar.lzma
2023/03/17 | 5681 | systems/win32/miktex/tm/packages/outilsgeomtikz.tar.lzma
+2023/03/17 | 56501 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
2023/03/17 | 5632 | macros/latex/contrib/tcolorbox/tcbmagazine.code.tex
2023/03/17 | 55798 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
2023/03/17 | 5577 | macros/latex/contrib/tcolorbox/tcolorbox.doc.quickref.tex
@@ -143,6 +298,8 @@
2023/03/17 | 55697 | systems/win32/miktex/tm/packages/make4ht.tar.lzma
2023/03/17 | 556079 | systems/win32/miktex/tm/packages/lastpage__doc.tar.lzma
2023/03/17 | 55064 | systems/win32/miktex/tm/packages/yathesis__source.tar.lzma
+2023/03/17 | 549488 | macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
+2023/03/17 | 5473 | macros/latex/contrib/babel-contrib/greek/test-greeknum.tex
2023/03/17 | 54011 | systems/win32/miktex/tm/packages/tugboat__source.tar.lzma
2023/03/17 | 5397 | macros/latex/contrib/tcolorbox/tcolorbox.doc.abstract.tex
2023/03/17 | 53788 | systems/win32/miktex/tm/packages/pdfmanagement-testphase.tar.lzma
@@ -156,6 +313,7 @@
2023/03/17 | 5214 | systems/win32/miktex/tm/packages/next/miktex-config-2.9.tar.lzma
2023/03/17 | 51799 | systems/win32/miktex/tm/packages/coolfn__doc.tar.lzma
2023/03/17 | 51684 | systems/win32/miktex/tm/packages/markdown.tar.lzma
+2023/03/17 | 51350 | language/greek/greek-fontenc/greek-fontenc.def.html
2023/03/17 | 513355 | systems/win32/miktex/tm/packages/hfutexam__doc.tar.lzma
2023/03/17 | 51189 | systems/win32/miktex/tm/packages/babel-greek__source.tar.lzma
2023/03/17 | 5112 | macros/latex/contrib/tcolorbox/tcolorbox.doc.filling.tex
@@ -178,6 +336,7 @@
2023/03/17 | 473145 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
2023/03/17 | 469224 | macros/latex/contrib/tcolorbox/tcolorbox-example.pdf
2023/03/17 | 468407 | systems/win32/miktex/tm/packages/resolsysteme__doc.tar.lzma
+2023/03/17 | 463920 | macros/latex/contrib/babel-contrib/greek/test-greek.pdf
2023/03/17 | 460039 | systems/win32/miktex/tm/packages/lwarp__source.tar.lzma
2023/03/17 | 4599 | support/tex4ebook/tex4ebook-epub3.4ht
2023/03/17 | 45994 | systems/win32/miktex/tm/packages/xduts__source.tar.lzma
@@ -209,7 +368,6 @@
2023/03/17 | 413568 | support/texlive/texlive-dummy/openSUSE/texlive-dummy-2023.9999-2.noarch.rpm
2023/03/17 | 411486 | systems/win32/miktex/tm/packages/biblatex-publist__doc.tar.lzma
2023/03/17 | 40713 | systems/win32/miktex/tm/packages/pxrubrica__source.tar.lzma
-2023/03/17 | 4048864 | biblio/ctan-bibdata.zip
2023/03/17 | 40183 | macros/latex/contrib/tcolorbox/tcolorbox.doc.breakable.tex
2023/03/17 | 3982 | systems/win32/miktex/tm/packages/mismath.tar.lzma
2023/03/17 | 394669 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
@@ -221,12 +379,13 @@
2023/03/17 | 37730 | systems/win32/miktex/tm/packages/kotex-oblivoir__source.tar.lzma
2023/03/17 | 376594 | systems/win32/miktex/tm/packages/outilsgeomtikz__doc.tar.lzma
2023/03/17 | 37402 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2023/03/17 | 3716 | macros/latex/contrib/babel-contrib/greek/babel-greek.ins
2023/03/17 | 37099 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
2023/03/17 | 36671 | systems/win32/miktex/tm/packages/genealogytree.tar.lzma
-2023/03/17 | 3653170 | biblio/ctan-bibdata/ctan.pdf
2023/03/17 | 36393 | systems/win32/miktex/tm/packages/l3build.tar.lzma
2023/03/17 | 36301 | systems/win32/miktex/tm/packages/tabularray.tar.lzma
2023/03/17 | 3613 | systems/win32/miktex/tm/packages/latexpand__doc.tar.lzma
+2023/03/17 | 35997 | macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
2023/03/17 | 358232 | systems/win32/miktex/tm/packages/japanese-otf.tar.lzma
2023/03/17 | 35316 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
2023/03/17 | 35224 | macros/latex/contrib/tcolorbox/lichtspiel.jpg
@@ -247,6 +406,7 @@
2023/03/17 | 33131 | macros/latex/contrib/tcolorbox/tcolorbox.doc.raster.tex
2023/03/17 | 32933259 | systems/win32/miktex/tm/packages/latex-base-dev__doc.tar.lzma
2023/03/17 | 327750 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2023/03/17 | 327645 | language/greek/greek-fontenc/test-lgrenc.pdf
2023/03/17 | 327113 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
2023/03/17 | 3258933 | systems/win32/miktex/tm/packages/lwarp__doc.tar.lzma
2023/03/17 | 32357 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
@@ -285,8 +445,9 @@
2023/03/17 | 281314 | macros/latex/contrib/tcolorbox/tcolorbox-example-poster.pdf
2023/03/17 | 28110 | systems/win32/miktex/tm/packages/lua-typo__source.tar.lzma
2023/03/17 | 27973 | systems/win32/miktex/tm/packages/tikz-ext.tar.lzma
+2023/03/17 | 27794 | macros/latex/contrib/flexipage/flexipage.dtx
2023/03/17 | 27754 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2023/03/17 | 2769042 | biblio/ctan-bibdata/ctan.bib
+2023/03/17 | 27711 | macros/latex/contrib/babel-contrib/greek/test-greek.tex
2023/03/17 | 276632 | systems/win32/miktex/tm/packages/biber-ms__doc.tar.lzma
2023/03/17 | 2761376 | systems/win32/miktex/tm/packages/simpleicons.tar.lzma
2023/03/17 | 2754390 | systems/win32/miktex/tm/packages/listings__doc.tar.lzma
@@ -298,6 +459,7 @@
2023/03/17 | 2718 | fonts/simpleicons/enc/simpleiconsEight.enc
2023/03/17 | 271604 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
2023/03/17 | 270181 | systems/win32/miktex/tm/packages/listings__source.tar.lzma
+2023/03/17 | 269480 | macros/latex/contrib/flexipage/flexipage.pdf
2023/03/17 | 2677 | support/tex4ebook/tex4ebook-tidyconf.conf
2023/03/17 | 26776 | systems/win32/miktex/tm/packages/latex-lab-dev.tar.lzma
2023/03/17 | 2673 | fonts/simpleicons/enc/simpleiconsTwo.enc
@@ -308,6 +470,7 @@
2023/03/17 | 2645 | systems/win32/miktex/tm/packages/bxbase__source.tar.lzma
2023/03/17 | 263678 | systems/win32/miktex/tm/packages/biblatex.tar.lzma
2023/03/17 | 2632519 | systems/win32/miktex/tm/packages/microtype__doc.tar.lzma
+2023/03/17 | 2615 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md
2023/03/17 | 26049978 | systems/win32/miktex/tm/packages/haranoaji-extra.tar.lzma
2023/03/17 | 26033874 | systems/win32/miktex/tm/packages/haranoaji.tar.lzma
2023/03/17 | 26010 | systems/win32/miktex/tm/packages/bfh-ci.tar.lzma
@@ -359,11 +522,14 @@
2023/03/17 | 2251 | systems/win32/miktex/tm/packages/spacingtricks.tar.lzma
2023/03/17 | 2242 | macros/latex/contrib/lt3rawobjects/lt3rawobjects.ins
2023/03/17 | 22407 | macros/latex/contrib/tcolorbox/Basilica_5.png
+2023/03/17 | 2228 | macros/latex/contrib/babel-contrib/greek/test-athnum.tex
2023/03/17 | 221673 | systems/win32/miktex/tm/packages/optex.tar.lzma
2023/03/17 | 21962 | systems/win32/miktex/tm/packages/jsclasses.tar.lzma
2023/03/17 | 2194652 | systems/win32/miktex/tm/packages/adobemapping.tar.lzma
2023/03/17 | 219145 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
2023/03/17 | 21852 | macros/latex/contrib/tcolorbox/tcolorbox.doc.coremacros.tex
+2023/03/17 | 21740 | language/greek/greek-fontenc/test-lgrenc.tex
+2023/03/17 | 21702 | language/greek/greek-fontenc/greek-fontenc.def
2023/03/17 | 21663 | macros/latex/contrib/tcolorbox/crinklepaper.png
2023/03/17 | 2162632 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
2023/03/17 | 215775 | systems/win32/miktex/tm/packages/caption__source.tar.lzma
@@ -372,6 +538,7 @@
2023/03/17 | 214387 | systems/win32/miktex/tm/packages/lwarp.tar.lzma
2023/03/17 | 213577 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
2023/03/17 | 21282 | systems/win32/miktex/tm/packages/lastpage__source.tar.lzma
+2023/03/17 | 2119 | macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
2023/03/17 | 2110900 | systems/win32/miktex/tm/packages/optex__doc.tar.lzma
2023/03/17 | 210759 | systems/win32/miktex/tm/packages/babel-lithuanian__doc.tar.lzma
2023/03/17 | 2102 | systems/win32/miktex/tm/packages/pangram.tar.lzma
@@ -379,6 +546,7 @@
2023/03/17 | 209085 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
2023/03/17 | 20694 | systems/win32/miktex/tm/packages/tabularray__source.tar.lzma
2023/03/17 | 205615 | systems/win32/miktex/tm/packages/schulmathematik__doc.tar.lzma
+2023/03/17 | 20371 | macros/latex/contrib/fnbreak/fnbreaktest.tex
2023/03/17 | 203444 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
2023/03/17 | 20274 | macros/latex/contrib/tcolorbox/tcolorbox.doc.magazine.tex
2023/03/17 | 20235 | systems/win32/miktex/tm/packages/mismath__source.tar.lzma
@@ -391,6 +559,7 @@
2023/03/17 | 1967185 | systems/win32/miktex/tm/packages/platex__doc.tar.lzma
2023/03/17 | 196614 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2023/03/17 | 19622 | systems/win32/miktex/tm/packages/pxjahyper.tar.lzma
+2023/03/17 | 19549 | language/greek/greek-fontenc/textalpha-doc.tex
2023/03/17 | 194321 | systems/win32/miktex/tm/packages/biblatex__source.tar.lzma
2023/03/17 | 193405 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
2023/03/17 | 1899812 | fonts/simpleicons/opentype/SimpleIcons.otf
@@ -399,6 +568,7 @@
2023/03/17 | 1887397 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
2023/03/17 | 18858 | support/tex4ebook/readme.tex
2023/03/17 | 185999 | systems/win32/miktex/tm/packages/pmhanguljamo__source.tar.lzma
+2023/03/17 | 184955 | macros/latex/contrib/babel-contrib/greek/usage.pdf
2023/03/17 | 18491 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
2023/03/17 | 1846173 | systems/win32/miktex/tm/packages/nicematrix__doc.tar.lzma
2023/03/17 | 1844 | fonts/simpleicons/doc/simpleicons.tex
@@ -406,15 +576,19 @@
2023/03/17 | 18178 | macros/latex/contrib/tcolorbox/tcolorbox.doc.initoptions.tex
2023/03/17 | 18154 | systems/win32/miktex/tm/packages/tex4ebook.tar.lzma
2023/03/17 | 181541 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2023/03/17 | 181371 | macros/latex/contrib/babel-contrib/greek/athnum.pdf
2023/03/17 | 18037 | systems/win32/miktex/tm/packages/simpleicons__source.tar.lzma
+2023/03/17 | 18016 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
2023/03/17 | 180075 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
2023/03/17 | 17974 | systems/win32/miktex/tm/packages/ragged2e__source.tar.lzma
2023/03/17 | 17941 | systems/win32/miktex/tm/packages/biblatex-publist__source.tar.lzma
2023/03/17 | 178862 | macros/latex/contrib/tcolorbox/tcolorbox.doc.coreoptions.tex
+2023/03/17 | 178616 | macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
2023/03/17 | 1769941 | fonts/simpleicons/type1/SimpleIcons.pfb
2023/03/17 | 1764 | systems/win32/miktex/tm/packages/coolfn.tar.lzma
2023/03/17 | 1755 | systems/win32/miktex/tm/packages/opencolor.tar.lzma
2023/03/17 | 175195 | systems/win32/miktex/tm/packages/l3kernel.tar.lzma
+2023/03/17 | 1744 | language/greek/greek-fontenc/README.md
2023/03/17 | 173773 | systems/win32/miktex/tm/packages/microtype__source.tar.lzma
2023/03/17 | 173403 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
2023/03/17 | 1732 | support/tex4ebook/tex4ebook-exec_mobi.lua
@@ -424,7 +598,6 @@
2023/03/17 | 170287 | systems/win32/miktex/tm/packages/light-latex-make__doc.tar.lzma
2023/03/17 | 17022 | support/tex4ebook/changelog.tex
2023/03/17 | 16888 | systems/win32/miktex/tm/packages/unimath-plain-xetex__source.tar.lzma
-2023/03/17 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2023/03/17 | 16715 | systems/win32/miktex/tm/packages/sillypage.tar.lzma
2023/03/17 | 166701 | systems/win32/miktex/tm/packages/make4ht__doc.tar.lzma
2023/03/17 | 16629 | systems/win32/miktex/tm/packages/biblatex-dw.tar.lzma
@@ -454,6 +627,7 @@
2023/03/17 | 15123 | systems/win32/miktex/tm/packages/pbibtex-base.tar.lzma
2023/03/17 | 14927 | systems/win32/miktex/tm/packages/causets__source.tar.lzma
2023/03/17 | 148 | macros/latex/contrib/tcolorbox/tcolorbox.doc.references.tex
+2023/03/17 | 14891 | language/greek/greek-fontenc/test-diacritics.tex
2023/03/17 | 14864 | systems/win32/miktex/tm/packages/lyluatex.tar.lzma
2023/03/17 | 14844 | support/tex4ebook/README
2023/03/17 | 14748 | systems/win32/miktex/tm/packages/photobook__source.tar.lzma
@@ -474,6 +648,7 @@
2023/03/17 | 13739 | systems/win32/miktex/tm/packages/widows-and-orphans__source.tar.lzma
2023/03/17 | 13639 | systems/win32/miktex/tm/packages/light-latex-make.tar.lzma
2023/03/17 | 135909 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2023/03/17 | 1347 | macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex
2023/03/17 | 13405 | macros/latex/contrib/tcolorbox/tcolorbox.doc.sidebyside.tex
2023/03/17 | 1337475 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
2023/03/17 | 13298 | systems/win32/miktex/tm/packages/schulmathematik.tar.lzma
@@ -506,9 +681,11 @@
2023/03/17 | 12288 | systems/win32/miktex/tm/packages/spacingtricks__source.tar.lzma
2023/03/17 | 122749 | systems/win32/miktex/tm/packages/uvaletter__doc.tar.lzma
2023/03/17 | 12170 | systems/win32/miktex/tm/packages/minimalist.tar.lzma
+2023/03/17 | 1211 | macros/latex/contrib/babel-contrib/greek/README.md
2023/03/17 | 121196 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
2023/03/17 | 12055 | systems/win32/miktex/tm/packages/chextras__source.tar.lzma
2023/03/17 | 120494 | systems/win32/miktex/tm/packages/dehyph-exptl__doc.tar.lzma
+2023/03/17 | 120493 | macros/latex/contrib/babel-contrib/greek/grmath.pdf
2023/03/17 | 11981638 | systems/win32/miktex/tm/packages/l3kernel__doc.tar.lzma
2023/03/17 | 11971 | systems/win32/miktex/tm/packages/footnoterange__source.tar.lzma
2023/03/17 | 1195846 | systems/win32/miktex/tm/packages/latexindent__doc.tar.lzma
@@ -523,9 +700,11 @@
2023/03/17 | 1165624 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
2023/03/17 | 116520 | systems/win32/miktex/tm/packages/novel.tar.lzma
2023/03/17 | 115833 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2023/03/17 | 1153 | macros/latex/contrib/flexipage/README.txt
2023/03/17 | 1151 | support/tex4ebook/tex4ebook-exec_azw3.lua
2023/03/17 | 1150 | systems/win32/miktex/tm/packages/next/pr.ini
2023/03/17 | 114360 | systems/win32/miktex/tm/packages/etoc__source.tar.lzma
+2023/03/17 | 11406 | macros/latex/contrib/babel-contrib/greek/athnum.dtx
2023/03/17 | 113959 | systems/win32/miktex/tm/packages/zebra-goodies__doc.tar.lzma
2023/03/17 | 113062 | macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
2023/03/17 | 112 | macros/latex/contrib/tcolorbox/tcolorbox.doc.index.tex
@@ -549,29 +728,28 @@
2023/03/17 | 101683 | systems/win32/miktex/tm/packages/pangram__doc.tar.lzma
2023/03/17 | 101647 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
2023/03/17 | 10133 | support/tex4ebook/tex4ebook-exec_epub3.lua
+2023/03/17 | 10067 | macros/latex/contrib/babel-contrib/greek/usage.tex
2023/03/17 | 100426 | macros/latex/contrib/tcolorbox/tcolorbox.sty
2023/03/17 | 10040 | macros/latex/contrib/tcolorbox/tcbskinsjigsaw.code.tex
2023/03/16 | 766 | macros/generic/pdfmsym/README.md
-2023/03/16 | 56239 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
-2023/03/16 | 463797 | macros/latex/contrib/babel-contrib/greek/test-greek.pdf
+2023/03/16 | 51967 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex
+2023/03/16 | 3 | macros/context/contrib/context-pocketdiary/VERSION
2023/03/16 | 3720 | macros/unicodetex/latex/bithesis/bithesis.ins
2023/03/16 | 33227 | macros/generic/pdfmsym/pdfmsym.tex
2023/03/16 | 30263 | macros/generic/pdfmsym/pdfmsym-doc.tex
-2023/03/16 | 27711 | macros/latex/contrib/babel-contrib/greek/test-greek.tex
2023/03/16 | 2649 | macros/unicodetex/latex/bithesis/contributing-zh.md
-2023/03/16 | 2465 | macros/latex/contrib/babel-contrib/greek/test-case-changing-minimal.tex
2023/03/16 | 240496 | macros/generic/pdfmsym.zip
+2023/03/16 | 23845 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua
2023/03/16 | 2348 | macros/unicodetex/latex/bithesis/contributing.md
2023/03/16 | 231276 | macros/generic/pdfmsym/pdfmsym-doc.pdf
+2023/03/16 | 2303 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex
+2023/03/16 | 221337 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf
2023/03/16 | 206188 | macros/unicodetex/latex/bithesis/bithesis.dtx
-2023/03/16 | 1960 | macros/latex/contrib/babel-contrib/greek/unicode-examples.tex
+2023/03/16 | 194 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex
2023/03/16 | 1946 | macros/unicodetex/latex/bithesis/README.md
-2023/03/16 | 17872 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
-2023/03/16 | 1760613 | macros/latex/contrib/babel-contrib/greek.zip
-2023/03/16 | 15549 | macros/latex/contrib/babel-contrib/greek/unicode-examples.pdf
+2023/03/16 | 18581 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua
2023/03/16 | 1113634 | macros/unicodetex/latex/bithesis.zip
2023/03/16 | 1081599 | macros/unicodetex/latex/bithesis/bithesis.pdf
-2023/03/16 | 1036 | macros/latex/contrib/babel-contrib/greek/test-case-changing-varia-tu.tex
2023/03/15 | 9839 | support/latexindent/LatexIndent/Lines.pm
2023/03/15 | 9069 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-body.tex
2023/03/15 | 9049 | graphics/pgf/contrib/tikz-ext/tex/generic/tikzlibraryext.layers.code.tex
@@ -581,7 +759,6 @@
2023/03/15 | 8462 | support/latexindent/LatexIndent/FileExtension.pm
2023/03/15 | 838 | support/latexindent/LatexIndent/Version.pm
2023/03/15 | 8353 | graphics/pgf/contrib/tikz-ext/tex/generic/tikzlibraryext.paths.timer.code.tex
-2023/03/15 | 76732 | macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
2023/03/15 | 7329 | support/latexindent/LatexIndent/BackUpFileProcedure.pm
2023/03/15 | 7281 | graphics/pgf/contrib/tikz-ext/tex/generic/tikzlibraryext.misc.code.tex
2023/03/15 | 7280 | support/latexindent/LatexIndent/MandatoryArgument.pm
@@ -599,11 +776,9 @@
2023/03/15 | 6163721 | support/latexindent/bin/linux/latexindent
2023/03/15 | 5808 | support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm
2023/03/15 | 5647 | support/latexindent/documentation/contributors.bib
-2023/03/15 | 549394 | macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
2023/03/15 | 54385 | support/latexindent/documentation/latexindent-yaml-schema.json
2023/03/15 | 5429 | support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm
2023/03/15 | 5390 | support/latexindent/LatexIndent/Check.pm
-2023/03/15 | 5324 | macros/latex/contrib/babel-contrib/greek/test-tildeshorthand.tex
2023/03/15 | 52527 | support/latexindent/LatexIndent/GetYamlSettings.pm
2023/03/15 | 4816 | support/latexindent/LatexIndent/BlankLines.pm
2023/03/15 | 4799 | graphics/pgf/contrib/tikz-ext/tex/generic/tikzlibraryext.nodes.code.tex
@@ -617,7 +792,6 @@
2023/03/15 | 3767 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-pgffor.tex
2023/03/15 | 3763 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-paths.timer.tex
2023/03/15 | 3747 | support/latexindent/LatexIndent/Replacement.pm
-2023/03/15 | 35598 | macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
2023/03/15 | 3482 | support/latexindent/LatexIndent/HorizontalWhiteSpace.pm
2023/03/15 | 3418 | graphics/pgf/contrib/tikz-ext/tex/generic/tikzlibraryext.calendar-plus.code.tex
2023/03/15 | 3413 | support/latexindent/latexindent.pl
@@ -632,7 +806,6 @@
2023/03/15 | 2387 | graphics/pgf/contrib/tikz-ext/tex/generic/pgffor-ext.code.tex
2023/03/15 | 2320 | support/latexindent/LatexIndent/Logger.pm
2023/03/15 | 22877 | support/latexindent/defaultSettings.yaml
-2023/03/15 | 2119 | macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
2023/03/15 | 20797 | support/latexindent/LatexIndent/Indent.pm
2023/03/15 | 20766 | support/latexindent/LatexIndent/Sentence.pm
2023/03/15 | 2012 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-library-layers.tex
@@ -640,8 +813,6 @@
2023/03/15 | 19471 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual.bib
2023/03/15 | 19197 | macros/latex/contrib/zebra-goodies/zebra-goodies.dtx
2023/03/15 | 18522 | support/latexindent/LatexIndent/ModifyLineBreaks.pm
-2023/03/15 | 184955 | macros/latex/contrib/babel-contrib/greek/usage.pdf
-2023/03/15 | 174634 | macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
2023/03/15 | 1728 | graphics/pgf/contrib/tikz-ext/README.md
2023/03/15 | 16878 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-main-preamble.tex
2023/03/15 | 1646 | graphics/pgf/contrib/tikz-ext/tex/generic/tikzlibraryext.shapes.uncenteredrectangle.code.tex
@@ -658,14 +829,12 @@
2023/03/15 | 1195 | graphics/pgf/contrib/tikz-ext/tex/latex/pgffor-ext.sty
2023/03/15 | 119232 | macros/latex/contrib/zebra-goodies.zip
2023/03/15 | 1190 | graphics/pgf/contrib/tikz-ext/doc/tikz-ext-manual-en-intro.tex
-2023/03/15 | 1183 | macros/latex/contrib/babel-contrib/greek/README.md
2023/03/15 | 114926 | macros/latex/contrib/zebra-goodies/zebra-goodies.pdf
2023/03/15 | 11300 | support/latexindent/LatexIndent/FileContents.pm
2023/03/15 | 11161219 | support/latexindent.zip
2023/03/15 | 11142 | support/latexindent/LatexIndent/Heading.pm
2023/03/15 | 10969 | graphics/pgf/contrib/tikz-ext/tex/generic/pgflibraryext.shapes.uncenteredrectangle.code.tex
2023/03/15 | 10620 | support/latexindent/LatexIndent/Command.pm
-2023/03/15 | 10067 | macros/latex/contrib/babel-contrib/greek/usage.tex
2023/03/14 | 996 | macros/latex/contrib/siunitx/README.md
2023/03/14 | 959 | macros/luatex/latex/novel/lualatex/novel-JC200103.clo
2023/03/14 | 9198 | macros/latex/contrib/siunitx/siunitx-symbol.dtx
@@ -732,8 +901,6 @@
2023/03/14 | 113828 | systems/texlive/tlnet/archive/texlive-scripts.r66570.tar.xz
2023/03/14 | 10931 | macros/latex/contrib/siunitx/siunitx-abbreviation.dtx
2023/03/14 | 103304 | macros/latex/contrib/siunitx/siunitx-unit.dtx
-2023/03/13 | 9798 | macros/latex/contrib/photobook/Makefile
-2023/03/13 | 890 | macros/latex/contrib/photobook/scripts/make-spreads.cfg.example
2023/03/13 | 833 | macros/latex/contrib/schulmathematik/README
2023/03/13 | 810 | macros/latex/contrib/principia/README
2023/03/13 | 781934 | macros/latex/contrib/microtype/microtype.dtx
@@ -748,7 +915,6 @@
2023/03/13 | 54835 | macros/latex/contrib/principia/principia.tex
2023/03/13 | 50601 | support/autoconf.zip
2023/03/13 | 496614 | macros/latex/contrib/principia.zip
-2023/03/13 | 4217 | macros/latex/contrib/photobook/scripts/cls2tex.sh
2023/03/13 | 40351 | macros/latex/contrib/principia/principia.sty
2023/03/13 | 39307 | fonts/prodint.zip
2023/03/13 | 3393 | macros/latex/contrib/microtype/README.md
@@ -762,16 +928,9 @@
2023/03/13 | 21633 | macros/latex/contrib/schulmathematik/schulma-physik.sty
2023/03/13 | 2139911 | macros/latex/contrib/microtype/microtype-code.pdf
2023/03/13 | 209102 | macros/latex/contrib/schulmathematik/schulmathematik.pdf
-2023/03/13 | 19474 | macros/latex/contrib/photobook/scripts/make-spreads.sh
-2023/03/13 | 189114 | macros/latex/contrib/photobook.zip
2023/03/13 | 1820133 | macros/latex/contrib/biblatex-contrib/biblatex-dw.zip
2023/03/13 | 18122 | macros/latex/contrib/schulmathematik/schulma-klausur.cls
2023/03/13 | 18036 | CTAN.sites
-2023/03/13 | 1705 | macros/latex/contrib/photobook/README.md
-2023/03/13 | 161439 | macros/latex/contrib/photobook/photobook.cls
-2023/03/13 | 1527 | macros/latex/contrib/photobook/LICENSE
-2023/03/13 | 141191 | macros/latex/contrib/photobook/photobook.pdf
-2023/03/13 | 13640 | macros/latex/contrib/photobook/scripts/README.md
2023/03/13 | 11518 | macros/latex/contrib/schulmathematik/schulma-gutachten.cls
2023/03/12 | 9 | support/texlab/src/parser/test_data/latex/label/label_reference_simple.txt
2023/03/12 | 9 | support/texlab/src/parser/test_data/latex/glossary/glossary_entry_reference_simple.txt
@@ -1634,82 +1793,3 @@
2023/03/12 | 1025 | support/texlab/src/features/link.rs
2023/03/12 | 101156 | systems/texlive/tlcontrib/archive/lettergothic.tar.xz
2023/03/12 | 1008 | support/texlab/src/parser/test_data/bibtex/samples/averroes_1998.txt
-2023/03/11 | 9553 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/lbx/german-dw.lbx
-2023/03/11 | 9425 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/cbx/footnote-dw.cbx
-2023/03/11 | 880 | systems/texlive/tlnet/archive/dvisvgm.r66534.tar.xz
-2023/03/11 | 876 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/lbx/english-dw.lbx
-2023/03/11 | 8714664 | systems/texlive/tlnet/archive/pdfmanagement-testphase.doc.r66534.tar.xz
-2023/03/11 | 858 | fonts/alchemist/README.md
-2023/03/11 | 816884 | systems/texlive/tlnet/archive/widows-and-orphans.doc.r66534.tar.xz
-2023/03/11 | 802 | support/adobemapping/README
-2023/03/11 | 7915 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/biblatex-dw-preamble.tex
-2023/03/11 | 76949 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/de-biblatex-dw.tex
-2023/03/11 | 6827 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS2004-UTF32-V
-2023/03/11 | 6803 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS-UTF32-V
-2023/03/11 | 6793 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJISX02132004-UTF32-V
-2023/03/11 | 6769 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJISX0213-UTF32-V
-2023/03/11 | 67395 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/biblatex-dw.tex
-2023/03/11 | 6643293 | support/adobemapping.zip
-2023/03/11 | 6415 | support/adobemapping/cmap-resources/VERSIONS.txt
-2023/03/11 | 6318 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS2004-UTF8-V
-2023/03/11 | 6296 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS-UTF8-V
-2023/03/11 | 592346 | support/adobemapping/cmap-resources/Adobe-KR-9/cid2code.txt
-2023/03/11 | 588845 | macros/latex/contrib/hfutexam.zip
-2023/03/11 | 5852 | macros/latex/contrib/biblatex-contrib/biblatex-dw/LIESMICH
-2023/03/11 | 5795 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS2004-UTF16-V
-2023/03/11 | 5771 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS-UTF16-V
-2023/03/11 | 53640 | systems/texlive/tlnet/archive/pdfmanagement-testphase.r66534.tar.xz
-2023/03/11 | 5354 | macros/latex/contrib/biblatex-contrib/biblatex-dw/README
-2023/03/11 | 51635 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/bbx/standard-dw.bbx
-2023/03/11 | 43007 | fonts/alchemist/alchemist.tex
-2023/03/11 | 4249 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/de-footnote-dw.tex
-2023/03/11 | 4238 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/en-footnote-dw.tex
-2023/03/11 | 4217 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/de-authortitle-dw.tex
-2023/03/11 | 4045 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/en-authortitle-dw.tex
-2023/03/11 | 38097 | macros/latex/contrib/biblatex-contrib/biblatex-dw/CHANGES
-2023/03/11 | 373661 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/de-footnote-dw.pdf
-2023/03/11 | 3688386 | graphics/circuit_macros.zip
-2023/03/11 | 367662 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/de-authortitle-dw.pdf
-2023/03/11 | 342870 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/en-footnote-dw.pdf
-2023/03/11 | 336551 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/examples/en-authortitle-dw.pdf
-2023/03/11 | 2904 | systems/texlive/tlnet/archive/widows-and-orphans.r66534.tar.xz
-2023/03/11 | 284083 | support/adobemapping/mapping-resources-pdf/pdf2unicode/Adobe-Japan1-UCS2
-2023/03/11 | 28342 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/bbx/authortitle-dw.bbx
-2023/03/11 | 2691285 | support/adobemapping/cmap-resources/Adobe-Japan1-7/cid2code.txt
-2023/03/11 | 266505 | support/adobemapping/mapping-resources-pdf/pdf2unicode/Adobe-CNS1-UCS2
-2023/03/11 | 250494 | support/adobemapping/cmap-resources/Adobe-KR-9/CMap/UniAKR-UTF32-H
-2023/03/11 | 245474 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS2004-UTF32-H
-2023/03/11 | 245463 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJISX02132004-UTF32-H
-2023/03/11 | 245393 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS-UTF32-H
-2023/03/11 | 245383 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJISX0213-UTF32-H
-2023/03/11 | 231844 | support/adobemapping/mapping-resources-pdf/pdf2unicode/Adobe-GB1-UCS2
-2023/03/11 | 220008 | support/adobemapping/cmap-resources/Adobe-KR-9/CMap/UniAKR-UTF8-H
-2023/03/11 | 216486 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS2004-UTF8-H
-2023/03/11 | 216408 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS-UTF8-H
-2023/03/11 | 21462 | support/adobemapping/cmap-resources/README.md
-2023/03/11 | 2144 | fonts/alchemist/alchemist-ref.bib
-2023/03/11 | 2133 | support/adobemapping/mapping-resources-pdf/README.md
-2023/03/11 | 203260 | support/adobemapping/mapping-resources-pdf/pdf2unicode/Adobe-KR-UCS2
-2023/03/11 | 188254 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS2004-UTF16-H
-2023/03/11 | 188173 | support/adobemapping/cmap-resources/Adobe-Japan1-7/CMap/UniJIS-UTF16-H
-2023/03/11 | 186553 | support/adobemapping/cmap-resources/Adobe-KR-9/CMap/UniAKR-UTF16-H
-2023/03/11 | 179707 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/de-biblatex-dw.pdf
-2023/03/11 | 176 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/bbx/footnote-dw.bbx
-2023/03/11 | 16472 | systems/texlive/tlnet/archive/biblatex-dw.r66534.tar.xz
-2023/03/11 | 163811 | macros/latex/contrib/biblatex-contrib/biblatex-dw/doc/biblatex-dw.pdf
-2023/03/11 | 15328 | fonts/alchemist/alchemist.sty
-2023/03/11 | 149124 | fonts/alchemist.zip
-2023/03/11 | 14847 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/cbx/standard-dw.cbx
-2023/03/11 | 1444484 | systems/texlive/tlnet/archive/tex4ht.source.r66531.tar.xz
-2023/03/11 | 137464 | systems/texlive/tlnet/archive/pdfmanagement-testphase.source.r66534.tar.xz
-2023/03/11 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r66531.tar.xz
-2023/03/11 | 130437 | fonts/alchemist/alchemist.pdf
-2023/03/11 | 12800 | fonts/alchemist/manual.sty
-2023/03/11 | 12368 | support/adobemapping/mapping-resources-pdf/pdf2other/Adobe-Korea1-H-Mac
-2023/03/11 | 12324 | systems/texlive/tlnet/archive/widows-and-orphans.source.r66534.tar.xz
-2023/03/11 | 12163 | systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
-2023/03/11 | 11541 | macros/latex/contrib/biblatex-contrib/biblatex-dw/latex/cbx/authortitle-dw.cbx
-2023/03/11 | 1145632 | systems/texlive/tlnet/archive/biblatex-dw.doc.r66534.tar.xz
-2023/03/11 | 11288 | macros/latex/contrib/hfutexam/hfutexam.cls
-2023/03/11 | 1106580 | systems/texlive/tlnet/archive/tex4ht.r66531.tar.xz
-2023/03/11 | 107332 | systems/texlive/tlnet/archive/dvisvgm.doc.r66534.tar.xz
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index 372c4a6f00..70906319a4 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 18-03-2023, 02:00:17
+%% created at 19-03-2023, 02:00:12
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -1358,7 +1358,7 @@
title = {The \texttt{alchemist} package},
subtitle = {Typeset alchemist and astrological symbols},
author = {Engelbert Buxbaum},
- date = {2023-03-12},
+ date = {2023-03-18},
version = {1.00},
license = {gpl,lppl},
mirror = {https://mirror.ctan.org/fonts/alchemist},
@@ -4583,8 +4583,8 @@
title = {The \texttt{babel-greek} package},
subtitle = {Babel support for the Greek language and script},
author = {Apostolos Syropoulos and Javier Bezos López and Johannes L. Braams and Günter Milde},
- date = {2023-03-16},
- version = {1.13},
+ date = {2023-03-18},
+ version = {1.13.1},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/babel-contrib/greek},
url = {https://ctan.org/pkg/babel-greek},
@@ -4725,7 +4725,7 @@
title = {The \texttt{babel-lithuanian} package},
subtitle = {Babel support for documents written in Lithuanian},
author = {Sigitas Tolušis},
- date = {2023-03-08},
+ date = {2023-03-18},
version = {1.0},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/required/babel/contrib/lithuanian},
@@ -7294,8 +7294,8 @@
title = {The \texttt{biblatex-ext} package},
subtitle = {Extended Bib\LaTeX{} standard styles},
author = {Moritz Wemheuer},
- date = {2022-06-18},
- version = {0.16},
+ date = {2023-03-18},
+ version = {0.17},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/biblatex-contrib/biblatex-ext},
url = {https://ctan.org/pkg/biblatex-ext},
@@ -7661,8 +7661,8 @@
title = {The \texttt{biblatex-publist} package},
subtitle = {Bib\LaTeX{} bibliography support for publication lists},
author = {Jürgen Spitzmüller},
- date = {2023-03-01},
- version = {2.2},
+ date = {2023-03-18},
+ version = {2.3},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/biblatex-contrib/biblatex-publist},
url = {https://ctan.org/pkg/biblatex-publist},
@@ -24486,10 +24486,10 @@
}
@manual{ctan-fenetrecas,
- title = {The \texttt{fenetrecas} package},
- subtitle = {Commands for CAS'like windows (Xcas or Geogebra) in TikZ},
+ title = {The \texttt{FenetreCas} package},
+ subtitle = {Commands for CAS-like windows (Xcas or Geogebra) in TikZ},
author = {Cédric Pierquet},
- date = {2023-03-17},
+ date = {2023-03-18},
version = {0.1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/fenetrecas},
@@ -25255,7 +25255,7 @@
title = {The \texttt{fistrum} package},
subtitle = {Access to 150 paragraphs of Lorem Fistrum very dummy text},
author = {David Davó},
- date = {2023-03-02},
+ date = {2023-03-18},
version = {0.1},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/fistrum},
@@ -25625,11 +25625,18 @@
title = {The \texttt{flexipage} package},
subtitle = {Flexible page geometry with marginalia},
author = {Anton Vrba},
- date = {2022-10-01},
- version = {1.01},
+ date = {2023-03-18},
+ version = {1.02},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/flexipage},
url = {https://ctan.org/pkg/flexipage},
+ annotation = {This package allows easy page layout if marginalia is required.
+ Mid document changes are possible such as: new marginal width,
+ full width text, and landscape text without marginal.
+ Partners well with the package
+ .
+ The package also aids the layout for book printing, allowing
+ for binding corrections and adding page bleed, if required.},
}
@manual{ctan-flexisym,
@@ -25872,9 +25879,9 @@
title = {The \texttt{fnbreak} package},
subtitle = {Warn for split footnotes},
author = {Harald Harders},
- date = {2019-03-12},
- version = {1.30},
- license = {lppl},
+ date = {2023-03-18},
+ version = {1.40},
+ license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/fnbreak},
url = {https://ctan.org/pkg/fnbreak},
}
@@ -29622,14 +29629,11 @@
title = {The \texttt{greek-fontenc} package},
subtitle = {LICR macros and encoding definition files for Greek},
author = {Günter Milde},
- date = {2023-03-09},
- version = {2.2.1},
+ date = {2023-03-18},
+ version = {2.2.2},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/language/greek/greek-fontenc},
url = {https://ctan.org/pkg/greek-fontenc},
- annotation = {The package provides Greek LICR macro definitions and
- encoding definition files for Greek text font encodings
- for use with .},
}
@manual{ctan-greek-inputenc,
@@ -34574,8 +34578,8 @@
title = {The \texttt{JeuxCartes} package},
subtitle = {Macros to insert playing cards},
author = {Cédric Pierquet},
- date = {2023-02-26},
- version = {0.2.3},
+ date = {2023-03-18},
+ version = {0.2.4},
license = {lppl1.3c,lgpl2.1,pd,cc-by-sa-4,pd,mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/jeuxcartes},
url = {https://ctan.org/pkg/jeuxcartes},
@@ -49803,7 +49807,7 @@
title = {The \texttt{OutilsGeomTikZ} package},
subtitle = {Some geometric tools, with TikZ},
author = {Cédric Pierquet},
- date = {2023-03-07},
+ date = {2023-03-18},
version = {0.1.1},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/outilsgeomtikz},
@@ -52174,8 +52178,8 @@
title = {The \texttt{photobook} package},
subtitle = {A document class for typesetting photo books},
author = {Alex A. Naanou},
- date = {2023-03-13},
- version = {0.1.13},
+ date = {2023-03-18},
+ version = {0.1.15},
license = {bsd3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/photobook},
url = {https://ctan.org/pkg/photobook},
@@ -73299,7 +73303,7 @@
title = {The \texttt{uvaletter} package},
subtitle = {Unofficial letterhead template for the University of Amsterdam},
author = {Michele Piazzai},
- date = {2023-03-04},
+ date = {2023-03-18},
version = {1.1.0},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/uvaletter},
@@ -74535,9 +74539,9 @@
title = {The \texttt{warning} package},
subtitle = {Global warnings at the end of the logfile},
author = {Harald Harders},
- date = {2019-03-12},
- version = {0.01},
- license = {lppl},
+ date = {2023-03-18},
+ version = {0.10},
+ license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/warning},
url = {https://ctan.org/pkg/warning},
}
@@ -75321,8 +75325,8 @@
title = {The \texttt{WriteOnGrid} package},
subtitle = {Write on grid lines},
author = {Cédric Pierquet},
- date = {2023-01-31},
- version = {0.1.2},
+ date = {2023-03-18},
+ version = {0.1.3},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/writeongrid},
url = {https://ctan.org/pkg/writeongrid},
diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf
index 350769b65f..25aba7996e 100644
--- a/biblio/ctan-bibdata/ctan.pdf
+++ b/biblio/ctan-bibdata/ctan.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/README.md b/language/greek/greek-fontenc/README.md
index 0b61d52f49..ae5699585a 100644
--- a/language/greek/greek-fontenc/README.md
+++ b/language/greek/greek-fontenc/README.md
@@ -5,10 +5,10 @@ Font encoding definition files with *LaTeX internal character
representation* (LICR) macros for letters and symbols from the Greek
script.
-The included LaTeX packages [textalpha][1] and [alphabeta][2]
-facilitate the use of Greek symbols in text.
+The included LaTeX packages [textalpha][textalpha.sty] and
+[alphabeta][alphabeta.sty] facilitate the use of Greek symbols in text.
-**Version**: 2.2.1
+**Version**: 2.2.2
**Copyright**: © 2010 – 2023 Günter Milde
@@ -24,27 +24,25 @@ either version 1.3 of this license or any later version.
Usage
-----
-Usually, the font definition files are loaded via
+Usually, the font encoding definition files are loaded via
[Babel's ``greek`` option](https://ctan.org/pkg/babel-greek),
-the [textalpha][1] or [textbeta][2] packages, or the
-[fontenc](https://ctan.org/pkg/fontenc) package.
+the [textalpha][textalpha.sty] or [textbeta][alphabeta.sty] packages,
+or the [fontenc](https://ctan.org/pkg/fontenc) package.
-Requires [text fonts supporting the Greek script][3].
+Requires [text fonts supporting the Greek script][greek fonts].
With 8-bit TeX/pdfTeX, [greek-inputenc](https://ctan.org/pkg/greek-inputenc)
is recommended.
Documentation
-------------
-* [greek-fontenc-doc.html][4] (CTAN)
+* [greek-fontenc-doc.html](https://mirrors.ctan.org/language/greek/greek-fontenc/greek-fontenc-doc.html)
+ (🡥CTAN)
+* [greek-fontenc-doc.rst](https://codeberg.org/milde/greek-tex/src/branch/master/greek-fontenc/greek-fontenc-doc.rst)
+ (🡥codeberg.org)
+* `texdoc greek-fontenc` (local TeXLive installation)
-* [greek-fontenc-doc.html](greek-fontenc-doc.html) (next to this file)
-* [greek-fontenc-doc.rst][5] (source repository)
-
-
-[1]: http://mirrors.ctan.org/language/greek/greek-fontenc/textalpha.sty.html
-[2]: http://mirrors.ctan.org/language/greek/greek-fontenc/alphabeta.sty.html
-[3]: https://ctan.org/tex-archive/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html#greek-text-fonts
-[4]: http://mirrors.ctan.org/language/greek/greek-fontenc/greek-fontenc-doc.html
-[5]: https://codeberg.org/milde/greek-tex/src/branch/master/greek-fontenc/greek-fontenc-doc.rst
+[textalpha.sty]: https://mirrors.ctan.org/language/greek/greek-fontenc/textalpha.sty.html
+[alphabeta.sty]: https://mirrors.ctan.org/language/greek/greek-fontenc/alphabeta.sty.html
+[greek fonts]: https://ctan.org/tex-archive/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html#greek-text-fonts
diff --git a/language/greek/greek-fontenc/alphabeta-doc-tu.pdf b/language/greek/greek-fontenc/alphabeta-doc-tu.pdf
index 02bd042e9e..1377f45f36 100644
--- a/language/greek/greek-fontenc/alphabeta-doc-tu.pdf
+++ b/language/greek/greek-fontenc/alphabeta-doc-tu.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/alphabeta-doc.pdf b/language/greek/greek-fontenc/alphabeta-doc.pdf
index 85a69a21af..6f8efd56d3 100644
--- a/language/greek/greek-fontenc/alphabeta-doc.pdf
+++ b/language/greek/greek-fontenc/alphabeta-doc.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/greek-fontenc-doc.html b/language/greek/greek-fontenc/greek-fontenc-doc.html
index df2405c2dd..bfdaf9b57c 100644
--- a/language/greek/greek-fontenc/greek-fontenc-doc.html
+++ b/language/greek/greek-fontenc/greek-fontenc-doc.html
@@ -793,7 +793,7 @@ mstyle.mathscr, mi.mathscr {
<p class="subtitle" id="greek-font-encoding-definition-files">Greek font encoding definition files</p>
<dl class="docinfo">
<dt class="version">Version<span class="colon">:</span></dt>
-<dd class="version">2.2.1 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
+<dd class="version">2.2.2 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
<dt class="copyright">Copyright<span class="colon">:</span></dt>
<dd class="copyright">© 2010 – 2023 Günter Milde &lt;<a class="reference external" href="mailto:milde&#64;users.sf.net">milde&#64;users.sf.net</a>&gt;</dd>
<dt class="licence">Licence<span class="colon">:</span></dt>
@@ -1393,6 +1393,11 @@ converted to pre-composed characters.</p></li>
downcasing <span class="docutils literal">\textStigma</span> to <span class="docutils literal">\textvarstigma</span>.</p></li>
</ul>
</dd>
+<dt>2.2.2 (2023-03-17)</dt>
+<dd><ul class="simple">
+<li><p>Don’t map active <span class="docutils literal">;</span> to <span class="docutils literal">\textsemicolon</span> in math mode.</p></li>
+</ul>
+</dd>
</dl>
</section>
<section id="references">
diff --git a/language/greek/greek-fontenc/greek-fontenc-doc.rst b/language/greek/greek-fontenc/greek-fontenc-doc.rst
index 67a866da11..a98f4b50a6 100644
--- a/language/greek/greek-fontenc/greek-fontenc-doc.rst
+++ b/language/greek/greek-fontenc/greek-fontenc-doc.rst
@@ -4,7 +4,7 @@ greek-fontenc
Greek font encoding definition files
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-:Version: 2.2.1 (changelog_)
+:Version: 2.2.2 (changelog_)
:Copyright: © 2010 -- 2023 Günter Milde <milde@users.sf.net>
:Licence: This work may be distributed and/or modified under the
@@ -540,6 +540,8 @@ Changelog
- Fix broken links in README.md.
- ``@uclclist`` entry for ``\accoxia``, prevent
downcasing ``\textStigma`` to ``\textvarstigma``.
+2.2.2 (2023-03-17)
+ - Don't map active ``;`` to ``\textsemicolon`` in math mode.
__ http://tex.stackexchange.com/questions/281631/greek-small-rho-with-dasia-and-also-psili-problem-with-accent-and-lgr-encodin
.. _ltxbugs 4399:
diff --git a/language/greek/greek-fontenc/greek-fontenc.def b/language/greek/greek-fontenc/greek-fontenc.def
index 1e5d781b49..0ebda57015 100644
--- a/language/greek/greek-fontenc/greek-fontenc.def
+++ b/language/greek/greek-fontenc/greek-fontenc.def
@@ -248,15 +248,14 @@
% .. _uclclist:
%
-% UPPERCASE
-% ~~~~~~~~~
+% Case changing
+% ~~~~~~~~~~~~~
%
% UPPERCASE (all-caps) is generated with ``\MakeUppercase``. The
% implementation of this command changed in June 2022 [ltnews35]_.
%
-% According to Greek typographical tradition, diacritics (except dialytika,
-% iota subscript, macron, and breve) are placed before capital letters in
-% Titlecase and dropped in UPPERCASE.
+% According to Greek typographical tradition, diacritics (except dialytika)
+% are placed before capital letters in Titlecase and dropped in UPPERCASE.
%
% Different conventions exist for the treatment of the `mute iota`_ with
% uppercase letters. The traditional typographic form and the most common
@@ -267,6 +266,14 @@
% glyphs with adscript are a stylistic choice, provided by the font. In the
% CB Fonts, a small capital adscript iota is used.
%
+% The "Latin" diacritics *macron* and *breve* are used to denote the
+% length of vowels. They are sometimes used in dictionaries and textbooks
+% but not part of the Greek orthography. There is no established rule
+% regarding their handling in uppercase. LaTeX used to keep them but
+% the `Unicode reference implementation`__ drops them.
+%
+% __ https://icu.unicode.org/design/case/greek-upper
+%
% Up to 2022/06, macro substitutions in the ``\@uclclist`` could be used to
% get the expected behaviour:
%
diff --git a/language/greek/greek-fontenc/greek-fontenc.def.html b/language/greek/greek-fontenc/greek-fontenc.def.html
index 68d93d25d0..972de519d1 100644
--- a/language/greek/greek-fontenc/greek-fontenc.def.html
+++ b/language/greek/greek-fontenc/greek-fontenc.def.html
@@ -817,7 +817,7 @@ font encodings providing Greek characters.</p>
<li><p><a class="reference internal" href="#ensuregreek-greekscript" id="toc-entry-4">ensuregreek, greekscript</a></p></li>
<li><p><a class="reference internal" href="#aliases" id="toc-entry-5">Aliases</a></p></li>
<li><p><a class="reference internal" href="#composite-diacritics" id="toc-entry-6">Composite diacritics</a></p></li>
-<li><p><a class="reference internal" href="#uppercase" id="toc-entry-7">UPPERCASE</a></p>
+<li><p><a class="reference internal" href="#case-changing" id="toc-entry-7">Case changing</a></p>
<ul>
<li><p><a class="reference internal" href="#uclclist-extension" id="toc-entry-8">&#64;uclclist extension</a></p></li>
<li><p><a class="reference internal" href="#substitution-macros" id="toc-entry-9">Substitution macros</a></p></li>
@@ -1019,13 +1019,12 @@ composite definitions starting with standard macros are requried:</p>
\DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\accperispomeni}{\accdasiaperispomeni}
\DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\~}{\accdasiaperispomeni}</pre>
</section>
-<section id="uppercase">
-<span id="uclclist"></span><h3><a class="toc-backref" href="#toc-entry-7" role="doc-backlink">UPPERCASE</a></h3>
+<section id="case-changing">
+<span id="uclclist"></span><h3><a class="toc-backref" href="#toc-entry-7" role="doc-backlink">Case changing</a></h3>
<p>UPPERCASE (all-caps) is generated with <span class="docutils literal">\MakeUppercase</span>. The
implementation of this command changed in June 2022 <a class="citation-reference" href="#ltnews35" id="citation-reference-1" role="doc-biblioref">[ltnews35]</a>.</p>
-<p>According to Greek typographical tradition, diacritics (except dialytika,
-iota subscript, macron, and breve) are placed before capital letters in
-Titlecase and dropped in UPPERCASE.</p>
+<p>According to Greek typographical tradition, diacritics (except dialytika)
+are placed before capital letters in Titlecase and dropped in UPPERCASE.</p>
<p>Different conventions exist for the treatment of the <a class="reference external" href="https://en.wikipedia.org/wiki/Iota_subscript">mute iota</a> with
uppercase letters. The traditional typographic form and the most common
used in Greece is a subscript, corresponding to the COMBINING GREEK
@@ -1034,6 +1033,11 @@ WITH [… AND] PROSGEGRAMMENI, capitalization should not use the GREEK
PROSGEGRAMMENI (U+1FBE) <a class="citation-reference" href="#nicholas-03" id="citation-reference-2" role="doc-biblioref">[Nicholas-03]</a>, <a class="citation-reference" href="#haralambous-98" id="citation-reference-3" role="doc-biblioref">[Haralambous-98]</a>. Upper case
glyphs with adscript are a stylistic choice, provided by the font. In the
CB Fonts, a small capital adscript iota is used.</p>
+<p>The “Latin” diacritics <em>macron</em> and <em>breve</em> are used to denote the
+length of vowels. They are sometimes used in dictionaries and textbooks
+but not part of the Greek orthography. There is no established rule
+regarding their handling in uppercase. LaTeX used to keep them but
+the <a class="reference external" href="https://icu.unicode.org/design/case/greek-upper">Unicode reference implementation</a> drops them.</p>
<p>Up to 2022/06, macro substitutions in the <span class="docutils literal">\&#64;uclclist</span> could be used to
get the expected behaviour:</p>
<section id="uclclist-extension">
diff --git a/language/greek/greek-fontenc/hyperref-with-greek.pdf b/language/greek/greek-fontenc/hyperref-with-greek.pdf
index f59b95823b..01f801cb88 100644
--- a/language/greek/greek-fontenc/hyperref-with-greek.pdf
+++ b/language/greek/greek-fontenc/hyperref-with-greek.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/test-diacritics.tex b/language/greek/greek-fontenc/test-diacritics.tex
index f1a6c36417..c06a795dca 100644
--- a/language/greek/greek-fontenc/test-diacritics.tex
+++ b/language/greek/greek-fontenc/test-diacritics.tex
@@ -43,7 +43,7 @@ Greek typography if used with Greek letters.
Apart from the diacritical marks native to Greek itself, linguists also
regularly mark vowel length with macrons (¯) and breves (˘).
-Both keep the ``Latin'' behaviour also with capital Greek letters.
+There is no established praxis regarding their handling in uppercase.
The \emph{textalpha} or \emph{alphabeta} packages define the symbol macros
\verb|\<| and \verb|\>| as alias for the breathings (Dasia and Psili).
diff --git a/language/greek/greek-fontenc/test-lgrenc.pdf b/language/greek/greek-fontenc/test-lgrenc.pdf
index 2c4049d8be..7106c1f30b 100644
--- a/language/greek/greek-fontenc/test-lgrenc.pdf
+++ b/language/greek/greek-fontenc/test-lgrenc.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/test-lgrenc.tex b/language/greek/greek-fontenc/test-lgrenc.tex
index 4ba10eeb92..5db8e98396 100644
--- a/language/greek/greek-fontenc/test-lgrenc.tex
+++ b/language/greek/greek-fontenc/test-lgrenc.tex
@@ -57,7 +57,8 @@
% font encoding switch declarations:
\newcommand{\LGR}{\fontencoding{LGR}\selectfont}
-\newcommand{\Latin}{\fontencoding{\encodingdefault}\selectfont}
+\newcommand{\Latin}{\fontencoding{T1}\selectfont}
+\ProvideTextCommandDefault{\ensuregreek}[1]{\leavevmode{\LGR #1}}
% Auxiliary macros:
@@ -381,16 +382,15 @@ interchangeably.
\section{Diacritics}
-Capital Greek letters have diacritics (except dialytika, breve, macron, and
-sub-iota) to the left (instead of above) and drop them if text is set in
-UPPERCASE. This is implemented for all combinations that are used in Greek
-texts (i.e. for which pre-composed Unicode character exist), but not for,
+Capital Greek letters have breathings and accents (except dialytika) to
+the left (instead of above) and drop them if text is set in UPPERCASE.%
+\footnote{The word \ensuregreek{Ἢ} (or), is an exception to this rule
+ because of the need to distinguish it from the nominative
+ feminine article \ensuregreek{Η}.}
+This is implemented for all combinations that are used in Greek texts
+(i.e. for which pre-composed Unicode character exist), but not for,
e.g., \LGR\~W\Latin).
-% When a word is written entirely in capital letters, diacritics are
-% never used; the word Ἢ (or), is an exception to this rule because of
-% the need to distinguish it from the nominative feminine article Η.
-
Different conventions exist for the treatment of the sub-iota with uppercase
letters. The CB-Fonts use a capital Iota ``index'' (\LGR A|, H|, W|\Latin).
diff --git a/language/greek/greek-fontenc/test-licr-input.pdf b/language/greek/greek-fontenc/test-licr-input.pdf
index 5fdafab10a..71a5417cda 100644
--- a/language/greek/greek-fontenc/test-licr-input.pdf
+++ b/language/greek/greek-fontenc/test-licr-input.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/test-tuenc-greek.pdf b/language/greek/greek-fontenc/test-tuenc-greek.pdf
index 3a0837cdfc..d9f7002b13 100644
--- a/language/greek/greek-fontenc/test-tuenc-greek.pdf
+++ b/language/greek/greek-fontenc/test-tuenc-greek.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/textalpha-doc-tu.pdf b/language/greek/greek-fontenc/textalpha-doc-tu.pdf
index 5f2459b90c..64976cb797 100644
--- a/language/greek/greek-fontenc/textalpha-doc-tu.pdf
+++ b/language/greek/greek-fontenc/textalpha-doc-tu.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/textalpha-doc.pdf b/language/greek/greek-fontenc/textalpha-doc.pdf
index bbe6d82713..ef4e4c7b09 100644
--- a/language/greek/greek-fontenc/textalpha-doc.pdf
+++ b/language/greek/greek-fontenc/textalpha-doc.pdf
Binary files differ
diff --git a/language/greek/greek-fontenc/textalpha-doc.tex b/language/greek/greek-fontenc/textalpha-doc.tex
index 2f37d340a4..7d1992c346 100644
--- a/language/greek/greek-fontenc/textalpha-doc.tex
+++ b/language/greek/greek-fontenc/textalpha-doc.tex
@@ -1,4 +1,4 @@
-\documentclass{article}
+\documentclass[a4paper]{article}
\usepackage{parskip}
\usepackage{booktabs}
\usepackage{cmap}
@@ -82,12 +82,6 @@ Load this package in the preamble of your document with
\begin{verbatim}
\usepackage[<options>]{textalpha}
\end{verbatim}
-to get a unified interface for Greek letters and symbols that works in all
-text font encodings, with both, Unicode fonts and the
-\href{https://ctan.org/pkg/fontspec}{\emph{fontspec}} package or 8-bit
-fonts and the \href{https://ctan.org/pkg/fontenc}{\emph{fontenc}}
-package.
-
See the source of this document \url{textalpha-doc.tex} for a setup and
usage example, the literate source of the package
\href{textalpha.sty.html}{textalpha.sty} for the implementation, and
@@ -110,7 +104,7 @@ use the variant shapes in place of the “regular” ones as a stylistic choice.
The \texttt{normalize-symbols} option merges letters and symbols to Greek
letters.
This way, text copied from external sources can be compiled without
-errors even if it contains a GREEK SYMBOL ... in place of a GREEK LETTER ...:
+errors even if it contains a GREEK SYMBOL … in place of a GREEK LETTER …
\begin{quote}
The source of this paragraph uses both variants for beta (β|ϐ),
theta (θ|ϑ), phi (φ|ϕ), pi (π|ϖ), kappa (κ|ϰ), rho (ρ|ϱ), Theta (Θ|ϴ),
@@ -157,18 +151,21 @@ With the \texttt{keep-semicolon} option, character 003B SEMICOLON can be used
for the \emph{erotimatiko} also with LGR encoded fonts:
\begin{center}
-\begin{tabular}{lll}
+\begin{tabular}{ccl}
Latin (\latinencoding) & Greek (\greekfontencoding) & question mark character \\
\midrule
- Τί φήις; & \ensuregreek{Τί φήις;} & 037E GREEK QUESTION MARK \\
- Τί φήις; & \ensuregreek{Τί φήις;} & 003B SEMICOLON \\
- Τί φήις? & \ensuregreek{Τί φήις?} & 003F QUESTION MARK \\
+ ; & \ensuregreek{;} & 037E GREEK QUESTION MARK \\
+ ; & \ensuregreek{;} & 003B SEMICOLON \\
+ ? & \ensuregreek{?} & 003F QUESTION MARK \\
\end{tabular}
\end{center}
This option is ignored with Unicode fonts (where the SEMICOLON literal
always prints a semicolon character).
+Test whether this works as expected in math mode:
+\ensuregreek{$a b; a\;b, (\mathrm{a;}\textrm{a;}2)$}.
+
\section{Limitations \label{sec:limitations}}
diff --git a/language/greek/greek-fontenc/textalpha.sty b/language/greek/greek-fontenc/textalpha.sty
index 97b7423fc7..20e40bec2b 100644
--- a/language/greek/greek-fontenc/textalpha.sty
+++ b/language/greek/greek-fontenc/textalpha.sty
@@ -3,7 +3,7 @@
% Greek symbols in text
% *********************
%
-% :Version: 2.2.1 (changelog_)
+% :Version: 2.2.2 (changelog_)
%
% :Copyright: © 2010, 2023 Günter Milde
%
@@ -111,7 +111,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{textalpha}
- [2023/03/08 2.2.1 macros for Greek letters in text]
+ [2023-03-17 2.2.2 macros for Greek letters in text]
% Options
@@ -517,7 +517,9 @@
% """"""""""""""""""""""""
%
% The text command ``\textsemicolon`` inserts ``\texterotimatiko``
-% in LGR font encoding and a "normal" semicolon else::
+% in LGR font encoding and a "normal" semicolon else.
+% In math mode, it inserts the "normal" semicolon also if the text font
+% encoding is LGR::
\ProvideTextCommandDefault{\textsemicolon}{;}
\ProvideTextCommand{\textsemicolon}{LGR}{\texterotimatiko}
@@ -528,7 +530,7 @@
\iftextalpha@keepSemicolon
\catcode`;=\active
- \newcommand{;}{\textsemicolon}
+ \newcommand{;}{\TextOrMath{\textsemicolon}{\char59}}
\fi
@@ -583,6 +585,7 @@
% .. Load ``puenc-greek.def`` if used with `hyperref`_.
% 2.2 2023-02-28 Don't use ``\makeatother`` in ``\AtBeginDocument``.
% 2.2.1 2023-03-08 Documentation update.
+% 2.2.2 2023-03-17 Don't map active `;` to ``\textsemicolon`` in math mode.
% ====== =========== ========================================================
%
%
diff --git a/language/greek/greek-fontenc/textalpha.sty.html b/language/greek/greek-fontenc/textalpha.sty.html
index dce522aadb..e003701cb6 100644
--- a/language/greek/greek-fontenc/textalpha.sty.html
+++ b/language/greek/greek-fontenc/textalpha.sty.html
@@ -793,7 +793,7 @@ mstyle.mathscr, mi.mathscr {
<p class="subtitle" id="greek-symbols-in-text">Greek symbols in text</p>
<dl class="docinfo">
<dt class="version">Version<span class="colon">:</span></dt>
-<dd class="version">2.2.1 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
+<dd class="version">2.2.2 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
<dt class="copyright">Copyright<span class="colon">:</span></dt>
<dd class="copyright">© 2010, 2023 Günter Milde</dd>
<dt class="licence">Licence<span class="colon">:</span></dt>
@@ -911,7 +911,7 @@ in the same document (see <a class="reference external" href="test-tuenc-greek.t
<h3><a class="toc-backref" href="#toc-entry-4" role="doc-backlink">Identification</a></h3>
<pre class="literal-block">\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{textalpha}
- [2023/03/08 2.2.1 macros for Greek letters in text]</pre>
+ [2023-03-17 2.2.2 macros for Greek letters in text]</pre>
</section>
<section id="options">
<h3><a class="toc-backref" href="#toc-entry-5" role="doc-backlink">Options</a></h3>
@@ -1238,7 +1238,9 @@ The variations have no syntactic meaning in Greek text.</p>
<section id="semicolon-as-erotimatiko">
<h4><a class="toc-backref" href="#toc-entry-17" role="doc-backlink">semicolon as erotimatiko</a></h4>
<p>The text command <span class="docutils literal">\textsemicolon</span> inserts <span class="docutils literal">\texterotimatiko</span>
-in LGR font encoding and a “normal” semicolon else:</p>
+in LGR font encoding and a “normal” semicolon else.
+In math mode, it inserts the “normal” semicolon also if the text font
+encoding is LGR:</p>
<pre class="literal-block">\ProvideTextCommandDefault{\textsemicolon}{;}
\ProvideTextCommand{\textsemicolon}{LGR}{\texterotimatiko}</pre>
<p>The LGR font encoding maps “;” to a middle dot (ano teleia). With the
@@ -1246,7 +1248,7 @@ in LGR font encoding and a “normal” semicolon else:</p>
<span class="docutils literal">\textsemicolon</span>:</p>
<pre class="literal-block">\iftextalpha&#64;keepSemicolon
\catcode`;=\active
- \newcommand{;}{\textsemicolon}
+ \newcommand{;}{\TextOrMath{\textsemicolon}{\char59}}
\fi</pre>
</section>
</section>
@@ -1356,6 +1358,10 @@ Don’t use <span class="docutils literal">\LastDeclaredEncoding</span>.</p></td
<td><p>2023-03-08</p></td>
<td><p>Documentation update.</p></td>
</tr>
+<tr><td><p>2.2.2</p></td>
+<td><p>2023-03-17</p></td>
+<td><p>Don’t map active <cite>;</cite> to <span class="docutils literal">\textsemicolon</span> in math mode.</p></td>
+</tr>
</tbody>
</table>
<!-- References
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/LICENSE b/macros/context/contrib/context-calendar-examples/t-calendar-examples/LICENSE
new file mode 100644
index 0000000000..a7a158b93c
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/LICENSE
@@ -0,0 +1 @@
+Public Domain \ No newline at end of file
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/VERSION b/macros/context/contrib/context-calendar-examples/t-calendar-examples/VERSION
new file mode 100644
index 0000000000..b123147e2a
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/VERSION
@@ -0,0 +1 @@
+1.1 \ No newline at end of file
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md b/macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md
new file mode 100644
index 0000000000..d250ea54c7
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/calendar-examples.md
@@ -0,0 +1,38 @@
+# Calendar examples
+
+The module provides different examples of calendars, made-up using the machinery provided in the t-pocketdiary module.
+
+The user is completely free to change and adapt the examples to his needs. The examples are in the Public Domain.
+
+## A5-day_per_page.tex
+
+This calendar produces single page day-calendars for the whole year. The page carries in the header the month's name and the year.
+On the next line it places the the day-number of the month with the day-name. This is followed by the week-number and the the day-number of the year. In the following field the name of the Christian holiday is typeset. In the last block data concerning the moon-cycle and sun data are provided.
+The page is filled with a hourly schedule from 06:00 to 22:00
+The footer displays information according to the setup established in the variable set.
+
+This example has different modes for the production either an A5 or an A6 sized calendar. The A5 sized calendar is arranged A4 landscape paper for sections of 16 pages consisting out of 4 sheets each carrying 2 pages recto and verso. The A6 version is also arranged for sections of 16 pages typeset on A4 portrait paper. The sections consist out of 2 sheets carrying 4 pages recto and 4 pages verso.
+
+## A6-1week_per_2pages.tex
+
+The calendar is made up as a table for one week, spread over two pages.
+The header displays the month's name and to the right the week-number and the year.
+The table is split in two parts after Thursday. Friday and the weekend is placed on the second page. The Weekend is split into two cells on one row.
+On Tuesdays moon- and sun-data are desplayed. If the day is Chrstian holiday, it is printed in red and the name of the holiday is typeset.
+
+
+## Menu-calendar.tex
+
+The menu-calendar is based on week-number, i.e. in years, where the first of January is not in the first week, those days are left out. Each week is spread over two pages.
+The header shows the month's name and to the right the week-number.
+The year is typeset in the footer.
+Each day shows the day-number and the name of the day. Christian holidays are marked red and the name of the holiday is typeset right to the day-name. There is a larger space for notes concerning the menu and each day has a "Comment" line.
+
+## Photocalendar.tex
+
+The Phorocalendar is made-up on A4 paper. It contains a title page with one picture, followed by 12 pages each reserved for one month. On each of those pages there is a picture and at the bottom a month-table is placed. Centered above the table the month's name and the year is typeset. This example is set-up such, that one can only put either landscape or portrait pictures.
+
+## Sundata-calendar.tex
+
+This calendar puts the moon- and sun-data per day in a table. It is arranged as a A6-booklet consisting out of two sections. Sewn together and set into a cover this gives a handy brochure to keep track of moon-cycle and the dayly sunrise, sunset and day-light hours.
+
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/t-intervalcalendar-module-doc.pdf b/macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/t-intervalcalendar-module-doc.pdf
new file mode 100644
index 0000000000..a97245c510
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/doc/context/third/calendar-examples/t-intervalcalendar-module-doc.pdf
Binary files differ
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex
new file mode 100644
index 0000000000..6dd5c69843
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A5-day_per_page.tex
@@ -0,0 +1,427 @@
+% Context file
+% Filename: A5-day_per_page.tex
+%
+% 14-01-2023
+% Created by Willi Egger, w.egger@boede.nl
+% This document is in the Public Domain.
+
+% This is an example of how to use the PocketDiary-module outside the built-in
+% structure of a PocketDiary.
+% In order to use this example you need to have the PocketDiary-module
+% installed from:
+% https://modules.contextgarden.net/cgi-bin/module.cgi/action=view/id=132
+% If you want collating marks placed on the outermost sheet of a section,
+% then you need to install also the Collatingmarks-module from:
+% https://modules.contextgarden.net/cgi-bin/module.cgi/action=view/id=129
+% The used imposition scheme is contained in the \CONTEXT\ distro.
+
+% This is an example how to prepare a calendar, where each page contains one
+% day. On the left side there is a time-schedule starting at 06:00 ending
+% at 22:00. The header contains left the month and right the year. Below the
+% header there is a table showing left the day and the short dayname followed by
+% the week number and the day number of the year. If the day in question is a
+% Christian holiday, then the name of it is stated in the center.
+% To the right astronomical data
+% are shown: Lunar days/moon phase, sun rise, sun set and light hours.
+% In order to have complete section at the end of the calendar a number of
+% pages with lines are added.
+
+\usemodule[pocketdiary]
+\usemodule[collatingmarks][Collatingmarks=yes]
+
+% define the different modes to enable the international interface:
+
+\definemode[English,Dutch,German,French,Italian,Spanish][keep]
+
+\enablemode[English]
+% \enablemode[German]
+% \enablemode[Dutch]
+% \enablemode[Italian]
+% \enablemode[French]
+% \enablemode[Spanish]
+
+% The variable sets for the PocketDiary module:
+
+\setvariables
+ [PocketDiary]
+ [Year=2023,
+ Week=1,
+ Day=1,
+ Month=1,
+ Nextyear=yes,
+ Yearnext=2024]
+
+\setvariables
+ [PocketDiaryFooter]
+ [Lefttext={\jobname .pdf},
+ Centertext=\pagenumber,
+ Righttext=]
+
+\setvariables
+ [PocketDiaryColors]
+ [Separatorline=blue,
+ Gridline={s=.75}]
+
+\setvariables
+ [PocketDiaryGeoPosition]
+ [lat=52.467860,
+ lon=16.981240,
+ timezoneoffset=1,
+ continent=EU] % EU, US or empty for no Daylight Saving Time (DST)
+
+\setvariables
+ [PocketDiaryAddress]
+ [Familyname=YourFamilyName,
+ Forename=YourName,
+ Street=YourStreet and Number,
+ Zipcode=YourPostalCode,
+ City=YourPlace,
+ Country=YourCountry,
+ Phone=YourPhoneNumber,
+ Mobile=YourMobilePhoneNumber,
+ E-mail=YourEmail@YourProvider,
+ Web=YourWWW]
+
+\setupbodyfont[ibmplex,ss,10pt]
+
+\definefontfeature[f:Tabular][tnum=yes]
+
+\addfeature[f:Tabular]
+
+\startmode[English]
+ \mainlanguage[en]
+\stopmode
+
+\startmode[German]
+ \mainlanguage[de]
+\stopmode
+
+\startmode[French]
+ \mainlanguage[fr]
+\stopmode
+
+\startmode[Italian]
+ \mainlanguage[it]
+\stopmode
+
+\startmode[Spanish]
+ \mainlanguage[es]
+\stopmode
+
+% The document is double sided printed, the page number will be set in the \setupfootertexts:
+
+\setuppagenumbering[alternative=doublesided,location=]
+
+\setuppapersize[A5][A4,landscape]
+% \setuppapersize[A5][A5]
+
+% Adapt the page layout to the size of the page:
+
+\setuplayout
+ [topspace=.6cm,
+ backspace=1.5cm,
+ header=2\bodyfontsize,
+ headerdistance=.5\bodyfontsize,
+ footer=1.2\bodyfontsize,
+ footerdistance=.5\bodyfontsize,
+ margin=0pt,
+ height=middle,
+ width=middle,
+ location=middle]
+
+% Enable the imposition: 2 pages recto and verso using 4 sheets of A4 for forming one section
+
+\setuparranging[2*2*4]
+
+% Setup of the Collating marks module:
+
+\setupMPvariables % for collatingmarks
+ [pages=8, % pages per sheet of paper doublesided
+ sheets=2, % sheets of paper used per section
+ horpageshift=-0.5mm]
+
+% \showframe
+
+% Let Lua do the work:
+
+\startluacode
+
+ local report = logs.reporter("Calendar-1-day-per-page")
+
+ function thirddata.diary.year_of_monthtables(
+ year,lat,lon,timeoffset,continent)
+
+ report("Working in function: diary.year_of_monthtables")
+
+ for i = 1,12 do
+ local monthname = string.lower(os.date
+ ("%B",os.time{year=year,month=i,day=1}))
+
+ thirddata.diary.header_text(monthname,year)
+
+ thirddata.diary.monthblock(i,year,lat,lon,timeoffset,continent)
+ end
+ end
+
+ function thirddata.diary.monthblock(month,year,lat,lon,timeoffset,continent)
+
+ report("Working in function diary.monthblock")
+
+ local nofdays = 1
+
+ local monthname = thirddata.calendar.select_nameofmonth(month,year)
+ local yeardays = thirddata.calendar.isleapyear(year)
+
+ if month == 2 and yeardays == 366 then
+ nofdays = thirddata.calendar.nofdays_month(month,year) + 1
+ else
+ nofdays = thirddata.calendar.nofdays_month(month,year)
+ end
+
+ --report("Number of days in month: %s", nofdays)
+
+ for i = 1,nofdays do
+ local ordinalday = thirddata.calendar.ordinalday(i,month,year)
+ local weeknumber = thirddata.calendar.weeknumber(i,month,year)
+ local dayname = string.lower(os.date ("%a",os.time{day=i,month=month,year=year}))
+ local holiday = thirddata.calendar.checkchristianfeast(i,month,year)
+ local moondata = thirddata.moonphase.lunardays(year,month,i)
+ local dst_start,dst_stop = thirddata.diary.DST(year,continent)
+ local sunrise,sunset,lighthours =
+ thirddata.srss.sundata(
+ i,month,year,lat,lon,timeoffset,dst_start,dst_stop)
+
+ if holiday ~= "" then
+ report("Holiday: %s", holiday)
+ report("Day number: %s", i)
+ end
+
+ context.bTABLE({setups="table:dayblock"})
+ context.bTR()
+ context.bTD()
+ context.starttabulate{"|lw(0.1\\textwidth)|p(0.06\\textwidth)|p|"}
+ context.NC()
+ context("\\bf")
+ --report("Daynumber: %s Month %s", i,month)
+ if dayname == "sun" or holiday ~= "" and holiday ~= "ashw" then
+ local dnu = i
+ local dna = dayname
+ context.color({"red"},
+ function() context(dnu) end) --day number
+ context("~")
+ context.color({"red"},
+ function() context.labeltext(dna) end)--dayname
+ else
+ context(i) --day
+ context("~")
+ context.labeltext(dayname) --dayname
+ end
+ context.NC()
+ context.switchtobodyfont{"6pt"}
+ context.labeltext("week")
+ context(":")
+ context.par()
+ context(weeknumber)
+ context.NC()
+ context.switchtobodyfont{"6pt"}
+ context.labeltext("day")
+ context(":")
+ context.par()
+ context(ordinalday)
+ context("/")
+ context(yeardays)
+ context.NC()
+ context.NR()
+ context.stoptabulate()
+ context.eTD()
+ context.bTD()
+ context.starttabulate{"|lw(0.2\\textwidth)|p|p|p|p|"}
+ context.NC()
+ if holiday == "" then
+ context.strut()
+ else
+ context.labeltext(holiday)
+ end
+ context.NC()
+ if tonumber(moondata) then
+ context.labeltext("moondays")
+ else
+ context.labeltext("moon")
+ end
+ context(":~")
+ context.par()
+ context(moondata)
+ context.NC()
+ context("\\SunA[background=Sunrise]{}")
+ context.par()
+ context(sunrise)
+ context.NC()
+ context("\\SunA[background=Sunset]{}")
+ context.par()
+ context(sunset)
+ context.NC()
+ context("\\SunB[background=Light]{}")
+ context.par()
+ context(lighthours)
+ context.NC()
+ context.NR()
+ context.stoptabulate()
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ context.page()
+ end
+ end
+
+ function thirddata.diary.header_text(monthname,year)
+ context.setupheadertexts(
+ {function()
+ context("\\bf")
+ context.labeltext(monthname)
+ return true
+ end
+ },
+ {function()
+ context(year)
+ return true
+ end
+ },
+ {function()
+ context("\\bf")
+ context.labeltext(monthname)
+ return true
+ end
+ },
+ {function()
+ context(year)
+ return true
+ end
+ })
+ end
+
+\stopluacode
+
+\startsetups[table:dayblock]
+ \setupTABLE[each][each][frame=off]
+ \setupTABLE[r][each][offset=0pt,loffset=3pt,roffset=3pt,align=lohi]
+ \setupTABLE[c][1][width=0.35\textwidth,align=lohi]
+ \setupTABLE[c][2][style={\switchtobodyfont[6pt]},width=0.65\textwidth] \stopsetups
+
+\define[5]\Yearofmonthtables{%
+ \ctxlua{thirddata.diary.year_of_monthtables(#1,#2,#3,#4,#5)}}
+
+
+\startbuffer[Yearofmonthtables]
+ \Yearofmonthtables %Year,lat,lon,timeoffset,continent
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+\stopbuffer
+
+% Create a time-table as a background to the page
+
+\startreusableMPgraphic{Time-Lines}
+ numeric w; w:= OverlaytWidth;
+ numeric h; h:= (OverlayHeight-2cm)/18;
+ numeric t;
+ path p,q;
+ p := unitsquare xscaled OverlayWidth yscaled (OverlayHeight-2cm);
+
+ q:= llcorner p -- lrcorner p;
+ draw q withpen pencircle scaled .5pt
+ withcolor \MPcolor{Grid};
+ for i = 1 upto 17:
+ draw q shifted (0,i*h) withpen pencircle scaled .5pt
+ withcolor \MPcolor{Grid};
+ t := 24 - 1 - i ;
+ label.top(textext(""& decimal t & ":00"),point 0 of q)
+ shifted (15pt,((i-1)*h)+1pt);
+ endfor;
+\stopreusableMPgraphic
+
+\defineoverlay[Textbackground][\reuseMPgraphic{Time-Lines}]
+
+% Implement international interface:
+\setuplabeltext[en][title=Title]
+\setuplabeltext[nl][title=Titel]
+\setuplabeltext[de][title=Titel]
+\setuplabeltext[fr][title=Titre]
+\setuplabeltext[it][title=Titolo]
+\setuplabeltext[es][title=Título]
+
+\setuplabeltext[en][author=Author]
+\setuplabeltext[nl][author=Auteur]
+\setuplabeltext[de][author=Autor]
+\setuplabeltext[fr][author=Auteur]
+\setuplabeltext[it][author=autore]
+\setuplabeltext[es][author=Autor]
+
+\setuplabeltext[en][typography=Typography]
+\setuplabeltext[nl][typography=Typografie]
+\setuplabeltext[de][typography=Typographie]
+\setuplabeltext[fr][typography=Typographie]
+\setuplabeltext[it][typography=Tipografia]
+\setuplabeltext[es][typography=Tipografía]
+
+\setuplabeltext[en][compilation=Compilation date]
+\setuplabeltext[nl][compilation=Compilatie datum]
+\setuplabeltext[de][compilation=Kompilationsdatum]
+\setuplabeltext[fr][compilation=Date de compilation]
+\setuplabeltext[it][compilation=Dato di compilazione]
+\setuplabeltext[es][compilation=Fecha de compilación]
+
+% Setup the TeX side of the document:
+
+\starttext
+
+ \startstandardmakeup[page=yes,doublesided=no]
+ \strut
+ \startalignment [middle]
+ \godown[.3\textheight]
+ {\bfa \labeltext{calendar}}
+ \vfil
+ {\bf \getvariable{PocketDiary}{Year}}
+ \stopalignment
+ \stopstandardmakeup
+
+ \startstandardmakeup[page=yes,doublesided=no]
+ \starttabulate[|l|p|]
+ \NC \labeltext{title}
+ \EQ {\bf \labeltext{calendar}} \NC\NR
+ \NC \labeltext{author}
+ \EQ \getvariable{PocketDiaryAddress}{Forename}
+ \getvariable{PocketDiaryAddress}{Familyname} \NC\NR
+ \NC \labeltext{typography}
+ \EQ \CONTEXT\ with \LUAMETATEX \NC\NR
+ \NC \labeltext{compilation}
+ \EQ \currentdate \NC\NR
+ \stoptabulate
+ \stopstandardmakeup
+
+ \getbuffer[Lost-Returnto]
+
+ \setupbackgrounds[text][background=]
+
+ \setupbackgrounds[text][background=Textbackground]
+
+ \getbuffer[Yearofmonthtables]
+
+ \setupbackgrounds[text][background=]
+
+ \getbuffer[Yearcurrentplan]
+
+ \setupheadertexts[\bfa \getvariable{PocketDiary}{Yearnext}]
+
+ \getbuffer[Yearnextplan]
+
+ \dorecurse
+ {3}
+ {\getbuffer[Todo]}
+
+ \dorecurse
+ {10}
+ {\getbuffer[Lines]}
+
+\stoptext
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex
new file mode 100644
index 0000000000..ea25de5f9a
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/A6-1week_per_2pages.tex
@@ -0,0 +1,359 @@
+% Context file
+% Filename: A6-1week_per_2pages.tex
+%
+% 14-01-2023
+% Created by Willi Egger, w.egger@boede.nl
+% This document is in the Public Domain.
+
+% This is an example of how to use the PocketDiary-module outside the built-in
+% structure of a PocketDiary.
+% In order to use this example you need to have the PocketDiary-module
+% installed from:
+% https://modules.contextgarden.net/cgi-bin/module.cgi/action=view/id=132
+% If you want collating marks placed on the outermost sheet of a section,
+% then you need to install also the Collatingmarks-module from:
+% https://modules.contextgarden.net/cgi-bin/module.cgi/action=view/id=129
+% The used imposition scheme is contained in the \CONTEXT\ distro.
+
+% This is an example how to prepare a calendar, where two facing pages carry
+% one week as a table. Saturday and Sunday are placed together in one row.
+% The header contains the month name to the left and the week number and the
+% year to the right.
+% The footer contains three fields. The first contains the job-name, the center
+% field shows the page number, the right field is not filled. -- However
+% this can easily be changed in the variable set "PocketDiaryFooter".
+% Each row of the week-table shows top left the day number followed by the short
+% name of the day. Next to this the ordinal day number of the year is typeset.
+% If the day in question is a Christian holiday, then its name is placed next
+% to the general information.
+% This example supports 6 languages i.e. English, German, Dutch, French,
+% Italian and Spanish. The respective interface is activated by enabling the
+% respective mode
+% The original idea was to have an A6 calendar, where 4 pages are print on
+% A4 paper. This is activated by enabling the mode "A6". By activating the mode
+% "A5" the calendar is prepared A5 sized on a A4 landscape paper.
+% Because there are astronomical data concerning the sun rise, sun set times it
+% is necessary to fill in the correct geo-positional data in the variable set
+% "PocketDiaryGeoPosition".
+
+\usemodule[pocketdiary]
+\usemodule[collatingmarks][Collatingmarks=yes]
+
+\definemode[English,Dutch,German,French,Italian][keep]
+\definemode[A5,A6][keep]
+
+\enablemode[English]
+% \enablemode[German]
+% \enablemode[Dutch]
+% \enablemode[Italian]
+% \enablemode[French]
+% \enablemode[Spanish]
+
+\enablemode[A6]
+% \enablemode[A5]
+
+\setvariables
+ [PocketDiary]
+ [Year=2023,
+ Week=1,
+ Day=1,
+ Month=1,
+ Nextyear=yes]
+
+\setvariables
+ [PocketDiaryFooter]
+ [Lefttext={\jobname .pdf},
+ Centertext=\pagenumber,
+ Righttext=]
+
+\setvariables
+ [PocketDiaryColors]
+ [Separatorline=blue,
+ Gridline={s=.75}]
+
+\setvariables
+ [PocketDiaryGeoPosition]
+ [lat=52.467860,
+ lon=16.981240,
+ timezoneoffset=1,
+ continent=EU] % Eu, US or empty for no Daylight Saving Time (DST)
+
+\setvariables
+ [PocketDiaryAddress]
+ [Familyname=YourFamilyName,
+ Forename=YourName,
+ Street=YourStreet and Number,
+ Zipcode=YourPostalCode,
+ City=YourPlace,
+ Country=YourCountry,
+ Phone=YourPhoneNumber,
+ Mobile=YourMobilePhoneNumber,
+ E-mail=YourEmail@YourProvider,
+ Web=YourWWW]
+
+\setupbodyfont[ibmplex,ss,10pt]
+
+\definefontfeature[f:Tabular][tnum=yes]
+
+\addfeature[f:Tabular]
+
+\startmode[English]
+ \mainlanguage[en]
+\stopmode
+
+\startmode[German]
+ \mainlanguage[de]
+\stopmode
+
+\startmode[French]
+ \mainlanguage[fr]
+\stopmode
+
+\startmode[Italian]
+ \mainlanguage[it]
+\stopmode
+
+\startmode[Spanish]
+ \mainlanguage[es]
+\stopmode
+
+\setuppagenumbering[alternative=doublesided,location=]
+
+\setuplayout
+ [topspace=.6cm,
+ backspace=1cm,
+ header=2\bodyfontsize,
+ headerdistance=.5\bodyfontsize,
+ footer=1.2\bodyfontsize,
+ footerdistance=.5\bodyfontsize,
+ margin=0pt,
+ height=middle,
+ width=middle,
+ location=middle]
+
+\startmode[A6]
+ \definepapersize[Agenda][width=100mm,height=140mm]
+
+ \setuppapersize[Agenda][A4,portrait]
+
+ % The vertical page-shift enables to make a 2.5mm cut at the head of the
+ % section
+ \definepageshift
+ [ver]
+ [vertical]
+ [2.5mm,2.5mm,2.5mm,2.5mm,2.5mm,2.5mm,2.5mm,2.5mm,
+ 2.5mm,2.5mm,2.5mm,2.5mm,2.5mm,2.5mm,2.5mm,2.5mm]
+
+ \setuppageshift[paper][ver]
+
+ \setuparranging[2*4*2]
+
+ \setupMPvariables % for collating marks
+ [pages=8, % pages per sheet of paper doublesided
+ sheets=2, % sheets of paper used per section
+ horpageshift=-0.5mm]
+\stopmode
+
+\startmode[A5]
+ \definepapersize[Agenda][width=148mm,height=210mm]
+
+ \setuppapersize[Agenda][A4,landscape]
+
+ \setuparranging[2*2*4]
+
+ \setupMPvariables % for collatingmarks
+ [pages=4, % pages per sheet of paper doublesided
+ sheets=4, % sheets of paper used per section
+ horpageshift=0mm]
+\stopmode
+
+% Let Lua the main work:
+
+\startluacode
+
+ local report = logs.reporter("Calendar-1-week-per-2-pages")
+
+ function thirddata.diary.year_of_weektables(year,
+ lat,lon,timeoffset,continent)
+
+ local year = year
+ local lat = lat
+ local lon = lon
+ local timeoffset = timeoffset
+ local continent = continent
+
+ report("Working in function: diary.year_of_weektables")
+
+ for i = 1,12 do --i is month
+ thirddata.diary.monthblock(i,year,lat,lon,timeoffset,continent)
+ end
+ end
+
+ function thirddata.diary.monthblock(month,year,
+ lat,lon,timeoffset,continent)
+
+ report("Working in function diary.monthblock: %s", month)
+
+ local c = thirddata.calendar.month(month,year) --returns number of weeks in a given month
+ local wkf = thirddata.calendar.weeknumber(1,month,year) --weeknumber of 1st day of a given month
+
+ local wkl = wkf + c - 1 -- last week of a given month based on wkf and c, is wrong for January
+
+ --report("Weeks in the selected month: %s", c)
+ --report("First week of month: %s", wkf)
+
+ if month == 1 and wkf > 51 then
+
+ --report("Calculating in week number %s", wkf)
+
+ thirddata.diary.setup_header_texts(wkf,month,year)
+ year = year - 1
+ thirddata.diary.thisweek(wkf,year,lat,lon,timeoffset,continent)
+ year = year + 1
+ wkf = 1
+ wkl = wkf + c - 2
+
+ for i = wkf, wkl do
+ thirddata.diary.setup_header_texts(i,month,year)
+ thirddata.diary.thisweek(i,year,lat,lon,timeoffset,continent)
+ end
+ else
+ for i = wkf, wkl do
+
+ --report("Calculating in week number %s", i)
+
+ thirddata.diary.setup_header_texts(i,month,year)
+ thirddata.diary.thisweek(i,year,
+ lat,lon,timeoffset,continent)
+ end
+ end
+ end
+
+
+ function thirddata.diary.setup_header_texts(week,month,year)
+
+ local monthname = string.lower(os.date
+ ("%B",os.time{year=year,month=month,day=1}))
+
+ context.setupheadertexts(
+ {function()
+ context("\\bf")
+ context.labeltext(monthname)
+ return true
+ end
+ },
+ {function()
+ context.labeltext("week")
+ context(": ~")
+ context(week)
+ context("\\quad")
+ context(year)
+ return true
+ end
+ },
+ {function()
+ context("\\bf")
+ context.labeltext(monthname)
+ return true
+ end
+ },
+ {function()
+ context.labeltext("week")
+ context(": ~")
+ context(week)
+ context("\\quad")
+ context(year)
+ return true
+ end
+ })
+ end
+
+\stopluacode
+
+\startsetups[table:week]
+ \setupTABLE[split=yes]
+ \setupTABLE[each][each][frame=on]
+ \setupTABLE
+ [r]
+ [each]
+ [offset=0pt,
+ loffset=3pt,
+ roffset=3pt,
+ height=0.23\textheight]
+ \setupTABLE[c][1][width=0.5\textwidth]
+ \setupTABLE[c][2][width=0.5\textwidth]
+\stopsetups
+
+\define[5]\Yearofweektables{\ctxlua{thirddata.diary.year_of_weektables(#1,#2,#3,#4,#5)}}
+
+
+\startbuffer[Yearofweektables]
+ \Yearofweektables %Year,lat,lon,timeoffset,continent
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+\stopbuffer
+
+\starttext
+
+ \startstandardmakeup[page=yes,doublesided=no]
+ \strut
+ \godown[.3\textheight]
+ \startalignment [middle]
+ {\bfa \labeltext{calendar}}
+ \vfil
+ {\bf \getvariable{PocketDiary}{Year}}
+ \stopalignment
+ \stopstandardmakeup
+
+ \startstandardmakeup[page=yes,doublesided=no]
+ \starttabulate[|l|p|]
+ \NC \translate[en=Title,
+ nl=Titel,
+ de=Titel,
+ fr=Titre,
+ it=Titolo]
+ \EQ {\bf \labeltext{calendar}} \NC\NR
+ \NC \translate[en=Author,
+ nl=Auteur,
+ de=Autor,
+ fr=Auteur,
+ it=autore,
+ es=Autor]
+ \EQ \getvariable{PocketDiaryAddress}{Forename}
+ \getvariable{PocketDiaryAddress}{Familyname} \NC\NR
+ \NC \translate[en=Typography,
+ nl=Typografie,
+ de=Typographie,
+ fr=Typographie,
+ it=Tipografia,
+ es=Tipografía]
+ \EQ \CONTEXT\ with \LUAMETATEX \NC\NR
+ \NC \translate[en=Compilation date,
+ nl=Compilatie datum,
+ de=Kompilationsdatum,
+ fr=Date de compilation,
+ it=Dato di compilazione,
+ es=Fecha de compilación]
+ \EQ \currentdate \NC\NR
+ \stoptabulate
+ \stopstandardmakeup
+
+ \getbuffer[Lost-Returnto]
+
+ \getbuffer[Yearcurrentplan]
+
+ \setupheadertexts[\bfa \getvariable{PocketDiary}{Yearnext}+1]
+
+ \getbuffer[Yearnextplan]
+
+ \setupheadertexts[]
+
+ \getbuffer[Yearofweektables]
+
+ \dorecurse
+ {13}
+ {\getbuffer[Lines]}
+\stoptext \ No newline at end of file
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex
new file mode 100644
index 0000000000..3101cbc2d8
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Menu-calendar.tex
@@ -0,0 +1,270 @@
+% Context file
+% Filename: Menu-calender.tex
+%
+% 14-01-2023
+% Created by Willi Egger w.egger@boede.nl
+% This file is in the Public Domain
+
+% This is an example of how to use the PocketDiary-module outside the built-in
+% structure of a PocketDiary.
+% In order to use this example you need to have the PocketDiary-module
+% installed from:
+% https://modules.contextgarden.net/cgi-bin/module.cgi/action=view/id=132
+% If you want collating marks placed on the outermost sheet of a section,
+% then you need to install also the Collatingmarks-module from:
+% https://modules.contextgarden.net/cgi-bin/module.cgi/action=view/id=129
+% The used imposition scheme is contained in the \CONTEXT\ distro.
+
+\usemodule[pocketdiary]
+\usemodule[collatingmarks][Collatingmarks=yes]
+
+% Choose your font
+
+\setupbodyfont[ibmplex,ss,10pt]
+
+% Add a path to the picture placed on page 3:
+
+\setupexternalfigures
+ [directory=/YourFolder]
+
+% Choose the main language it determines the interface:
+
+\mainlanguage[en]
+
+% This document will be doublesided, the pagenumber will be placed in the footer by means of \setupfootertexts:
+\setuppagenumbering[alternative=doublesided,location=]
+
+% The calendar has a pagesize of A6 and with the imposition 4 pages recto and verso are placed on a A4. Two sheets of A4 form one section:
+
+\setuppapersize[A6][A4]
+
+\setuparranging[2*4*2]
+
+% The module Collating marks needs appropriate information:
+
+\setupMPvariables
+ [pages=8, % pages per sheet of paper doublesided
+ sheets=2, % sheets of paper used per section
+ horpageshift=0mm]
+
+% Adapt the layout of the page to the size of the page:
+\setuplayout
+ [topspace=.6cm,
+ backspace=.6cm,
+ header=2\bodyfontsize,
+ headerdistance=.5\bodyfontsize,
+ footer=1.2\bodyfontsize,
+ footerdistance=.5\bodyfontsize,
+ margin=0pt,
+ height=middle,
+ width=middle,
+ location=middle]
+
+% Variable sets from the PocketDiary module to be set:
+
+\setvariables
+ [PocketDiary]
+ [Year=2023]
+
+\setvariables
+ [PocketDiaryFooter]
+ [Lefttext=\labeltext{menu}-\labeltext{calendar},
+ Centertext=\pagenumber,
+ Righttext=\getvariable{PocketDiary}{Year}]
+
+\setvariables
+ [PocketDiaryColors]
+ [Separatorline=blue,
+ Gridline={s=.75}]
+
+% The data are presented in table form. The setup of the table:
+
+\startsetups table:week
+ \setupTABLE[split=yes]
+ \setupTABLE[c][1][width=.35\textwidth,frame=off]
+ \setupTABLE[c][2][width=.65\textwidth,frame=off]
+ \setupTABLE[r][height=2\lineheight,align=lohi]
+ \setupTABLE[r][2,3,5,6,8,9,11,12,14,15,17,18,20,21][bottomframe=on]
+\stopsetups
+
+% There are currently 6 interfaces supported:
+
+% English interface
+\setuplabeltext[en][menu=Menu]
+\setuplabeltext[en][comment=Comment]
+
+% German interface
+\setuplabeltext[de][menu=Menü]
+\setuplabeltext[de][comment=Kommentar]
+
+% French interface
+\setuplabeltext[fr][menu=Menu]
+\setuplabeltext[fr][comment=Commentaire]
+
+% Dutch interfac
+\setuplabeltext[nl][menu=Menu]
+\setuplabeltext[nl][comment=Commentaar]
+
+% Italian interface
+\setuplabeltext[it][menu=Menu]
+\setuplabeltext[it][comment=Commento]
+
+% Spanish interface
+\setuplabeltext[es][menu=Menú]
+\setuplabeltext[es][comment=Comentario]
+
+% The lua code performing all the magic:
+
+\startluacode
+
+ local report = logs.reporter("Menu calendar")
+
+ function thirddata.calendar.menuweektable(mondaytimestamp,year,w)
+ local stamp = mondaytimestamp
+ local year = year
+ local week = w
+ local daynumber,dayname,monthname,holiday
+
+ local day = stamp + 1 * 24 * 60 * 60
+
+ report("Working in function: thirddata.calendar.menuweektable")
+
+ local monthname = string.lower(os.date("%B",day))
+
+ --report("Month: %s Week: %s", monthname,week)
+
+ thirddata.calendar.myheadertext(monthname,week)
+
+ context.bTABLE({setups="table:week"})
+
+ for i = 1,7 do
+ local day = stamp + i * 24 * 60 * 60
+
+ --report("Day-inloop: %s", day)
+
+ daynumber = tonumber(os.date("%d",day)) --day number
+ dayname = string.lower(os.date("%a",day)) -- day name short
+ monthnumber = tonumber(os.date("%m",day)) -- month name
+ holiday = thirddata.calendar.checkchristianfeast(daynumber,monthnumber,year) --
+ -- Christian holida
+
+ if holiday ~= "" then
+ report("Holiday (before table row): %s", holiday)
+ report("Day number (before table row): %s", daynumber)
+ report("Day name (before table row): %s",dayname)
+ end
+
+ context.bTR()
+ context.bTD({style="bfa"})
+
+ if dayname == "sun" or holiday ~= "" and f ~= "ashw" then
+ local dnu = daynumber
+ local dna = dayname
+ context.color({"red"},function() context(dnu) end)
+ context("~")
+ context.color({"red"},function() context.labeltext(dna) end)
+ else
+ context(daynumber)
+ context("~")
+ context.labeltext(dayname)
+ end
+ context.eTD()
+ context.bTD()
+ context.labeltext(holiday)
+ context.eTD()
+ context.eTR()
+ context.bTR()
+ context.bTD({nx="2"})
+ context.labeltext("menu")
+ context.eTD()
+ context.eTR()
+ context.bTR()
+ context.bTD({nx="2"})
+ context.labeltext("comment")
+ context.eTD()
+ context.eTR()
+ end
+ context.eTABLE()
+ context.page({"yes"})
+ end
+
+ function thirddata.calendar.myheadertext(monthname,week)
+
+ report("Working in function myheadertext")
+
+ context.setupheadertexts{
+ function()
+ context("\\bgroup\\bfa")
+ context.labeltext(monthname)
+ context("\\egroup")
+ context("\\hfill")
+ context.labeltext("week")
+ context(": ")
+ context(week)
+ return true
+ end}
+ end
+
+ function thirddata.calendar.week(weeknumber,year)
+ local w = weeknumber
+ local mondaytimestamp = thirddata.calendar.weekcalendar(w,year)
+
+ report("Working in function: thirddata.calendar.week")
+ --report("Mondaytimestamp %s", mondaytimestamp)
+
+ thirddata.calendar.menuweektable(mondaytimestamp,year,w)
+ end
+
+\stopluacode
+
+% We need a macro to call the lua-code: this macro has two parameters week number and year
+
+\define[2]\MenuWeektable{\ctxlua{thirddata.calendar.week(#1,#2)}}
+
+% \showframe
+
+% The setup of the document at the TeX-side:
+
+\starttext
+ \startstandardmakeup[page=yes,doublsided=yes]
+ \strut
+ \godown[.3\textheight]
+ \startalignment [middle]
+ {\bfc \labeltext{menu}-\labeltext{calendar}}
+ \vfill
+ {\tfa \getvariable{PocketDiary}{Year}}
+ \stopalignment
+ \vfil
+ \stopstandardmakeup
+
+ \setupheadertexts[][]
+
+ \strut\vfil
+
+ \startplacefigure
+ [number=,
+ title=,
+ location=middle]
+ {\externalfigure[YourPicture.jpg][width=0.75\textwidth]}
+ \stopplacefigure
+
+ \vfill
+
+ \page
+
+ \setups{Footertext}
+
+ \dorecurse{52}
+ {\setvariables
+ [PocketDiary]
+ [Week=\recurselevel]
+ \MenuWeektable{\recurselevel}{\getvariable{PocketDiary}{Year}}\page}
+
+ \page
+
+ \setupheadertexts[\bf \labeltext{notes}]
+
+ \dorecurse
+ {3}
+ {\strut\page}
+\stoptext
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex
new file mode 100644
index 0000000000..f55b954e14
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Photocalendar.tex
@@ -0,0 +1,197 @@
+% Context file
+% Filename: Photocalendar.tex
+%
+% 14-01-2023
+% Created by Willi Egger, w.egger@boede.nl
+% This file is in the Public Domain
+
+% Mind you that Thomas Schmitz put on the \CONTEXT -wiki a lua-script, which
+% creates a tex-file which can be compiled with \CONTEXT\ already back in 2007
+% for the preparation of a photo-calendar.
+% The nice thing about it is, that it uses a small number of formulae. Nice is,
+% that it also uses the Sohael Babwani formulae. See:
+% https://wiki.contextgarden.net/Calendar_script
+
+% This example file creates a photo calendar based on the PocketDiary-module.
+% In order to use this example you need to have the PocketDiary-module
+% installed from:
+% https://modules.contextgarden.net/cgi-bin/module.cgi/action=view/id=132
+
+% The calendar is typeset on A4 portrait. The calendar is a flip-over type,
+% where in the top-part is a photo and thereunder the month-table with
+% indication of the month name and year.
+% The pictures to be used are placed in a subdirectory. Each picture gets
+% a symbolic name (number) to be used in the \dorecurse loop.
+% For completing the calendar we need 13 pictures. The picture 13 is used on
+% the title page.
+% This file supports 6 languages, which are selected through the \mainlanguage[]
+
+
+\usemodule[pocketdiary]
+
+\setupbodyfont[ibmplex,ss,12pt]
+
+\setuppagenumbering[location=]
+
+\setuppapersize[A4,portrait][A4,portrait]
+
+\setuplayout
+ [topspace=20mm,
+ backspace=8.6mm,
+ header=0pt,
+ footer=0pt,
+ height=middle,
+ width=middle]
+
+% Supported languages: en, de, nl, fr, it, es
+\mainlanguage[en]
+
+% Where to find the calendar pictures
+\setupexternalfigures
+ [directory=./MyPhotoDirectory]
+
+% Give pictures symbolic names for using in a loop
+\useexternalfigure
+ [1]
+ [A.jpg]
+
+\useexternalfigure
+ [2]
+ [B.jpg]
+
+\useexternalfigure
+ [3]
+ [C.jpg]
+
+\useexternalfigure
+ [4]
+ [D.jpg]
+
+\useexternalfigure
+ [5]
+ [E.jpg]
+
+\useexternalfigure
+ [6]
+ [F.jpg] %[TV-Kasten-Flurin.jpg]
+
+\useexternalfigure
+ [7]
+ [G.jpg]
+
+\useexternalfigure
+ [8]
+ [H.jpg]
+
+\useexternalfigure
+ [9]
+ [I.jpg]
+
+\useexternalfigure
+ [10]
+ [J.jpg]
+
+\useexternalfigure
+ [11]
+ [K.jpg]
+
+\useexternalfigure
+ [12]
+ [L.jpg]
+
+\useexternalfigure
+ [13]
+ [M.jpg]
+
+% Setup the variables for the Pocket diary, only year is used for the title page and the variable passed to Lua.
+
+\setvariables
+ [PocketDiary]
+ [Year=2023]
+
+% Let the header and the footer be empty:
+
+\setupheadertexts[][]
+
+\setupfootertexts[][]
+
+% Add the international interfaces:
+\setuplabeltext[en][fotocal={Photo Calendar}]
+\setuplabeltext[nl][fotocal=Fotokalender]
+\setuplabeltext[de][fotocal=Fotokalender]
+\setuplabeltext[fr][fotocal={Calendrier photo}]
+\setuplabeltext[it][fotocal={Calendario fotografico}]
+\setuplabeltext[es][fotocal={Calendario fotográfico}]
+
+% Lua is performing the magic:
+
+\startluacode
+ local report = logs.reporter("Photo calendar")
+
+ function thirddata.calendar.Photo_calendar_page(y)
+
+ report("Working in function: calendar.Foto_calendar_page")
+
+ local year = y
+ --local path = file.dirname("./Fotokalender-fotos/")
+ for i = 1,12 do
+
+ local monthname = string.lower(os.date("%B",
+ os.time{year=year,month=i,day=1}))
+
+ context.startplacefigure({number="",title=""})
+ context.externalfigure({i}, {width = "0.8\\textwidth"})
+ context.stopplacefigure()
+ context.strut()
+ context("\\vfill")
+ context.startalign({"middle"})
+ context("\\bfa")
+ context.labeltext(monthname)
+ context("~")
+ context(year)
+ context.stopalign()
+ context.blank()
+
+ thirddata.diary.monthtableH(i,year)
+
+ context.page()
+ end
+ end
+\stopluacode
+
+% The setup of the table with the day numbers:
+
+\startsetups table:month
+ \setupTABLE[c]
+ [each]
+ [width=\dimexpr\textwidth/7,
+ frame=on,
+ style=\tfa]
+ \setupTABLE[r][each][height=1.8\lineheight,align={center,lohi}]
+ \setupTABLE[c][7][foregroundcolor=red]
+\stopsetups
+
+% We need a simple macro with one parameter to call the lua-code:
+
+\define[1]\Photocalendarpages
+ {\ctxlua{thirddata.calendar.Photo_calendar_page(#1)}}
+
+% Layout of the TeX part of the calendar:
+
+\starttext
+
+\startstandardmakeup[page=yes,doublesided=yes]
+ \startplacefigure
+ [location=middle,
+ title=,
+ number=]
+ {\externalfigure[13][width=\paperwidth]}
+ \stopplacefigure
+ \midaligned{\bfc \labeltext{fotocal}~\getvariable{PocketDiary}{Year}}
+\stopstandardmakeup
+
+\Photocalendarpages{\getvariable{PocketDiary}{Year}}
+
+\stoptext
+
+
diff --git a/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex
new file mode 100644
index 0000000000..18726204cb
--- /dev/null
+++ b/macros/context/contrib/context-calendar-examples/t-calendar-examples/tex/context/third/calendar-examples/Sundata-calendar.tex
@@ -0,0 +1,424 @@
+% Context file
+% Filename: Sundata-calendar.tex
+%
+% 13-07-2022
+% Copyright (c) 2022 BOEDE. All rights reserved.
+%
+% \nopdfcompression
+% \enabletrackers[context.trace]
+% \enabletrackers[system.jobfiles]
+
+\usemodule[pocketdiary]
+\usemodule[collatingmarks][Collatingmarks=yes]
+
+\definemode[English,Dutch,German,French,Italian,Spanish][keep]
+
+\enablemode[English]
+% \enablemode[German]
+% \enablemode[Dutch]
+% \enablemode[Italian]
+% \enablemode[French]
+%\enablemode[Spanish]
+
+\setvariables
+ [PocketDiary]
+ [Year=2023,
+ Week=1,
+ Day=1,
+ Month=1,
+ Nextyear=no,
+ Place=Sambeek,
+ Country=NL]
+
+\setvariables
+ [PocketDiaryFooter]
+ [Lefttext={\jobname .pdf},
+ Centertext=\pagenumber,
+ Righttext=]
+
+\setvariables
+ [PocketDiaryColors]
+ [Separatorline=blue,
+ Gridline={s=.75}]
+
+\setvariables %Koziegłowy 52.467860,16.981240 //52.5921425,6.0962685, % Hasselt
+ [PocketDiaryGeoPosition]
+ [lat=51.63682, %Sambeek Maasstraat 2A (Google Maps)
+ lon=5.96655, %Sambeek, Maasstraat 2A (Google Maps)
+ timezoneoffset=1,
+ continent=EU] %EU, US or empty for no DST
+
+\setupbodyfont[ibmplex,ss,10pt]
+% \usetypescriptfile[type-seravek]
+% \usetypescript[Seravek]
+% \setupbodyfont[Seravek,ss,10pt]
+
+% Modes for the international interface
+
+\startmode[English]
+ \mainlanguage[en]
+\stopmode
+
+\startmode[Dutch]
+ \mainlanguage[nl]
+\stopmode
+
+\startmode[German]
+ \mainlanguage[de]
+\stopmode
+
+\startmode[French]
+ \mainlanguage[fr]
+\stopmdode
+
+\startmode[Italian]
+ \mainlanguage[it]
+\stopmode
+
+\startmode[Spanish]
+ \mainlanguage[es]
+\stopmode
+
+\setuppagenumbering[alternative=doublesided,location=]
+
+\setuppapersize[A6][A6]
+
+\setuplayout
+ [topspace=.6cm,
+ backspace=.6cm,
+ header=2\bodyfontsize,
+ headerdistance=.5\bodyfontsize,
+ footer=1.2\bodyfontsize,
+ footerdistance=.5\bodyfontsize,
+ margin=0pt,
+ height=middle,
+ width=88mm,
+ location=middle]
+
+\setuparranging[2*4*2]
+
+\setupMPvariables % for collatingmarks
+ [pages=8, % pages per sheet of paper doublesided
+ sheets=2, % sheets of paper used per section
+ horpageshift=0mm]
+
+\startluacode
+
+local report = logs.reporter("Sundata calendar")
+
+function thirddata.diary.year_of_monthtables(
+ year,lat,lon,timeoffset,continent)
+
+ report("Working in function: diary.year_of_monthtables")
+
+ local dst_start,dst_stop = thirddata.diary.DST(year,continent)
+
+ report("DST start: %s, DST stop: %s",dst_start,dst_stop)
+
+ for i= 1,1 do
+ local monthname = string.lower(os.date
+ ("%B",os.time{year=year,month=i,day=1}))
+
+ context.setupheadertexts(
+ {
+ function()
+ context("\\bf")
+ context.labeltext(monthname)
+ return true
+ end
+ },
+ {
+ function()
+ context(year)
+ return true
+ end
+ },
+ {
+ function()
+ context("\\bf")
+ context.labeltext(monthname)
+ return true
+ end
+ },
+ {
+ function()
+ context(year)
+ return true
+ end
+ })
+
+ thirddata.diary.monthblock(i,year,lat,lon,timeoffset,dst_start,dst_stop)
+ end
+end
+
+function thirddata.diary.monthblock(
+ month,year,lat,lon,timeoffset,dst_start,dst_stop)
+
+ report("Working in function diary.monthblock")
+
+ local c = thirddata.calendar.month(month,year) --returns number of weeks in a given month
+ local wkf = thirddata.calendar.weeknumber(1,month,year)
+
+ --report("Weeks in the selected month: %s", c)
+ --report("Week number : %s", wkf)
+
+ local nofdays = 1
+
+ if month == 2 and thirddata.calendar.isleapyear(year) ~= 365 then
+ nofdays = thirddata.calendar.nofdays_month(month,year) + 1
+ else
+ nofdays = thirddata.calendar.nofdays_month(month,year)
+ end
+
+ report("Number of days in month: %s", nofdays)
+
+ local wkl = thirddata.calendar.weeknumber(nofdays,month,year)
+
+ local monthname = thirddata.calendar.select_nameofmonth(month,year)
+
+ context.bTABLE({setups="table:monthblock"})
+
+ for i = 1,nofdays do
+
+ local ordinalday = thirddata.calendar.ordinalday(i,month,year)
+ local weeknumber = thirddata.calendar.weeknumber(i,month,year)
+ local holiday = thirddata.calendar.checkchristianfeast(i,month,year)
+ local moondata = thirddata.moonphase.lunardays(year,month,i)
+ local sunrise,sunset,lighthours =
+ thirddata.srss.sundata(
+ i,month,year,lat,lon,timeoffset,dst_start,dst_stop)
+
+ context.bTR()
+ context.bTD()
+
+ local dayname = string.lower(os.date
+ ("%a",os.time{day=i,month=month,year=year}))
+
+ --report("Dayname: %s",dayname)
+ context.starttabulate{"|lw(0.1\\textwidth)|lw(0.06\\textwidth)|l|"}
+ context.NC()
+ if dayname == "sun" or holiday ~= "" and holiday ~= "asw" then
+ local dnu = i
+ local dna = dayname
+ context.color({"red"},
+ function() context(dnu) end) --day number
+ context("~")
+ context.color({"red"},
+ function() context.labeltext(dna) end)--dayname
+ else
+ context(i) --day
+ context("~")
+ context.labeltext(dayname) --dayname
+ end
+ context.NC()
+ context.switchtobodyfont{"6pt"}
+ context.labeltext("week")
+ context(": ")
+ context(weeknumber)
+ context.NC()
+ context.switchtobodyfont{"6pt"}
+ context.labeltext("day")
+ context(": ")
+ context(ordinalday)
+ context.NC()
+ context.NR()
+ context.stoptabulate()
+ context.eTD()
+ context.bTD()
+ context.starttabulate{"|lw(0.2\\textwidth)|l|l|l|l|"}
+ context.NC()
+ if holiday == "" then
+ context.strut()
+ context.NC()
+ context.NC()
+ context.NC()
+ context.NC()
+ else
+ context.labeltext(holiday)
+ context.NC()
+ context.NC()
+ context.NC()
+ context.NC()
+ end
+ context.NR()
+ context.NC()
+ if tonumber(moondata) then
+ context.labeltext("moondays")
+ else
+ context.labeltext("moon")
+ end
+ context(":~")
+ context(moondata)
+ context.NC()
+ --context.labeltext("sunrise")
+ context("\\SunA[background=Sunrise]{}")
+ context("\\quad :~")
+ context(sunrise)
+ context.NC()
+ context("\\SunA[background=Sunset]{}")
+ context("\\quad :~")
+ context(sunset)
+ context.NC()
+ context("\\SunB[background=Light]{}")
+ context("~:~")
+ context(lighthours)
+ context.NC()
+ context.NR()
+ context.stoptabulate()
+ context.eTD()
+ context.eTR()
+ end
+ context.eTABLE()
+ context.page()
+end
+
+\stopluacode
+
+\startsetups[table:monthblock]
+ \setupTABLE[split=yes]
+ \setupTABLE[each][each][frame=on]
+ \setupTABLE[r][each][offset=0pt,loffset=3pt,roffset=3pt,align=lohi]
+ \setupTABLE[c][1][width=0.35\textwidth,align=lohi]
+ \setupTABLE[c][2][style={\switchtobodyfont[6pt]},width=0.65\textwidth] \stopsetups
+
+\define[5]\Yearofmonthtables{\ctxlua{thirddata.diary.year_of_monthtables(#1,#2,#3,#4,#5)}}
+
+\startbuffer[Yearofmonthtables]
+ \Yearofmonthtables %Year,lat,lon,timeoffset,dst_start,dst_stop
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+\stopbuffer
+
+% Implement international interface:
+\setuplabeltext[en][title=Title]
+\setuplabeltext[nl][title=Titel]
+\setuplabeltext[de][title=Titel]
+\setuplabeltext[fr][title=Titre]
+\setuplabeltext[it][title=Titolo]
+\setuplabeltext[es][title=Título]
+
+\setuplabeltext[en][author=Author]
+\setuplabeltext[nl][author=Auteur]
+\setuplabeltext[de][author=Autor]
+\setuplabeltext[fr][author=Auteur]
+\setuplabeltext[it][author=autore]
+\setuplabeltext[es][author=Autor]
+
+\setuplabeltext[en][typography=Typography]
+\setuplabeltext[nl][typography=Typografie]
+\setuplabeltext[de][typography=Typographie]
+\setuplabeltext[fr][typography=Typographie]
+\setuplabeltext[it][typography=Tipografia]
+\setuplabeltext[es][typography=Tipografía]
+
+\setuplabeltext[en][compilation=Compilation date]
+\setuplabeltext[nl][compilation=Compilatie datum]
+\setuplabeltext[de][compilation=Kompilationsdatum]
+\setuplabeltext[fr][compilation=Date de compilation]
+\setuplabeltext[it][compilation=Dato di compilazione]
+\setuplabeltext[es][compilation=Fecha de compilación]
+
+\starttext
+
+ \startstandardmakeup[page=yes,doublesided=no]
+ \strut
+ \startalignment [middle]
+ \godown[.3\textheight]
+ \startmode[English]
+ {\bfc \labeltext{sunstar}- and \labeltext{moon}-\labeltext{calendar}}
+ \stopmode
+ \startmode[Dutch]
+ {\bfc \labeltext{sunstar}- en \labeltext{moon}-\labeltext{calendar}}
+ \stopmode
+ \startmode[German]
+ {\bfc \labeltext{sunstar}n- und \labeltext{moon}-\labeltext{calendar} }
+ \stopmode
+ \startmode[French]
+ {\bfc \labeltext{calendar} du \labeltext{sunstar}
+ et de la \labeltext{moon}}
+ \stopmode
+ \startmode[Italian]
+ {\bfc \labeltext{calendar} di \labeltext{sunstar}
+ e della \labeltext{moon}}
+ \stopmode
+ \startmode[Spanish]
+ {\labeltext{calendar} del \labeltext{sunstar}
+ y la \labeltext{moon}}
+ \stopmode
+ \blank
+ {\bfb \getvariable{PocketDiary}{Place}}
+ \vfill
+ {\tfa \getvariable{PocketDiary}{Year}}
+ \stopalignment
+ \vfil
+ \stopstandardmakeup
+
+ \startstandardmakeup[page=yes,doublesided=no]
+ \starttabulate[|l|p|]
+ \NC \labeltext{title}
+ \EQ
+ \startmode[English]
+ {\labeltext{sunstar}- and \labeltext{moon}-\labeltext{calendar}}
+ \stopmode
+ \startmode[Dutch]
+ {\labeltext{sunstar}- en \labeltext{moon}-\labeltext{calendar}}
+ \stopmode
+ \startmode[German]
+ {\labeltext{sunstar}n- und \labeltext{moon}-\labeltext{calendar}}
+ \stopmode
+ \startmode[French]
+ {\labeltext{calendar} du \labeltext{sunstar}
+ et de la \labeltext{moon}}
+ \stopmode
+ \startmode[Italian]
+ {\labeltext{calendar} di \labeltext{sunstar}
+ e della \labeltext{moon}}
+ \stopmode
+ \startmode[Spanish]
+ {\labeltext{calendar} del \labeltext{sunstar}
+ y la \labeltext{moon}}
+ \stopmode
+ \NC\NR
+ \NC \labeltext{author}
+ \EQ \getvariable{PocketDiaryAddress}{Forename}~
+ \getvariable{PocketDiaryAddress}{Familyname} \NC\NR
+ \NC \labeltext{typography} \EQ \CONTEXT\ with \LUAMETATEX \NC\NR
+ \NC \labeltext[compilation] \EQ \currentdate \NC\NR
+ \stoptabulate
+ \vfil
+ \startmode[English]
+ This calendar is generated for \getvariable{PocketDiary}{Place},
+ \getvariable{PocketDiary}{Country}
+ \stopmode
+ \startmode[German]
+ Dieser Kalender ist berechnet für \getvariable{PocketDiary}{Place},
+ \getvariable{PocketDiary}{Country}
+ \stopmode
+ \startmode[Dutch]
+ Deze kalender is opgemaakt voor \getvariable{PocketDiary}{Place},
+ \getvariable{PocketDiary}{Country}
+ \stopmode
+ \startmode[French]
+ Ce calendrier est fait pour \getvariable{PocketDiary}{Place},
+ \getvariable{PocketDiary}{Country}
+ \stopmode
+ \startmode[Italian]
+ Questo calendario è prodotto per \getvariable{PocketDiary}{Place},
+ \getvariable{PocketDiary}{Country}
+ \stopmode
+ \startmode[Spanish]
+ Este calendario está calculado para \getvariable{PocketDiary}{Place},
+ \getvariable{PocketDiary}{Country}
+ \stopmode
+ \starttabulate[|l|r|]
+ \NC Longitude \EQ \getvariable{PocketDiaryGeoPosition}{lon} \NC\NR
+ \NC Latitude \EQ \getvariable{PocketDiaryGeoPosition}{lat} \NC\NR
+ \stoptabulate
+ \stopstandardmakeup
+
+ \getbuffer[Yearofmonthtables]
+
+\stoptext \ No newline at end of file
diff --git a/macros/context/contrib/context-collatingmarks/t-collatingmarks/LICENSE b/macros/context/contrib/context-collatingmarks/t-collatingmarks/LICENSE
new file mode 100644
index 0000000000..a7a158b93c
--- /dev/null
+++ b/macros/context/contrib/context-collatingmarks/t-collatingmarks/LICENSE
@@ -0,0 +1 @@
+Public Domain \ No newline at end of file
diff --git a/macros/context/contrib/context-collatingmarks/t-collatingmarks/VERSION b/macros/context/contrib/context-collatingmarks/t-collatingmarks/VERSION
new file mode 100644
index 0000000000..78b372db7d
--- /dev/null
+++ b/macros/context/contrib/context-collatingmarks/t-collatingmarks/VERSION
@@ -0,0 +1 @@
+2022-01-01 \ No newline at end of file
diff --git a/macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/README.txt b/macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/README.txt
new file mode 100644
index 0000000000..ea5acef366
--- /dev/null
+++ b/macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/README.txt
@@ -0,0 +1,36 @@
+Modulename : t-collatingmarks
+Author : Willi Egger
+License : Public Domain
+
+Description
+-----------
+
+t-collatingmarks offers an extension to the page arranging schemes built into ConTeXt. When preparing multiple sections, each section gets a collating mark on the spine on the outermost fold of the section. This mark moves down along the spine with each section number. When the bootblack is put together, it shows a staircase like row of markings on the spine. This enables the bookbinder to see whether the bootblack is assembled correctly i.e. that the sections are put on top of each other in sequence.
+
+Usage
+-----
+
+\usemodule[collatingmarks][Collatingmarks=yes]
+\setuppapersize[A5][A2]
+\setuplayout[location=middle,marking=on]
+\setuppagenumbering[alternative=doublesided]
+\setuparranging[2*4]
+
+\setupMPvariables
+ [pages=8, % pages per sheet of paper double sided depending on the arrangement scheme used.
+ sheets=1, % sheets of paper used per section
+ shift=0mm] % used for correction if horizontal page-shifting is used while imposition is active
+\starttext
+ \dorecurse
+ {10}
+ {\startsection[title={Text \recurselevel}]
+ \input tufte \par
+ \startsubject[title={Ward}]
+ \input ward\par
+ \stopsubject
+ \stopsection
+ }
+\stoptext
+
+
+
diff --git a/macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/t-collatingmarks.pdf b/macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/t-collatingmarks.pdf
new file mode 100644
index 0000000000..9b08852536
--- /dev/null
+++ b/macros/context/contrib/context-collatingmarks/t-collatingmarks/doc/context/third/collatingmarks/t-collatingmarks.pdf
Binary files differ
diff --git a/macros/context/contrib/context-collatingmarks/t-collatingmarks/tex/context/third/collatingmarks/t-collatingmarks.tex b/macros/context/contrib/context-collatingmarks/t-collatingmarks/tex/context/third/collatingmarks/t-collatingmarks.tex
new file mode 100644
index 0000000000..c1c2443707
--- /dev/null
+++ b/macros/context/contrib/context-collatingmarks/t-collatingmarks/tex/context/third/collatingmarks/t-collatingmarks.tex
@@ -0,0 +1,244 @@
+%D \module
+%D [ file=t-collatingmarks,
+%D version=2022.01.01,
+%D title=\CONTEXT\ User Module,
+%D subtitle=Environment for collating marks,
+%D author={W. Egger},
+%D date=\currentdate,
+%D copyright={W. Egger},
+%D email=w.egger@boede.nl,
+%D license=Public Domain]
+
+% context --ctx=s-mod t-collatingmarks.tex
+% \enablemode[demo]
+
+%M \startmodule[collatingmarks]
+
+%D \startsubject[title={Introduction}]
+%D
+%D This code is based on the work of Thomas A. Schmitz,
+%D who created the module for different crop marks.
+%D
+%D If a book consists of multiple sections, each section should be marked
+%D along the spine with a collating mark. This mark moves down along the spine
+%D according to the number of the section. After collating the book it becomes
+%D easy to check whether the sequence of the sections is correct. One should
+%D see a \quotation{stair case} on the spine of the book as shown in the following figure.
+
+%D \startexample
+%D \startuniqueMPgraphic{Collatingblocks}
+%D numeric b,w,h;
+%D b := \the\textwidth;
+%D w := .75b;
+%D h := .2b;
+%D pair A,B;
+%D path sq,p[],block[];
+%D sq := unitsquare xscaled w yscaled h;
+%D block[1] := unitsquare xscaled (.1w) yscaled (h/6);
+%D block[1] := block[1] shifted (0.1w,h-h/6);
+%D fill block[1];
+%D label.bot(textext("\switchtobodyfont[6pt] \white\rotate[rotation=90]{1}"),center block[1] shifted (0,.5*h/12));
+%D draw sq;
+%D A := llcorner sq;
+%D B := lrcorner sq;
+%D p[1] := A--B;
+%D for i = 1 upto 5 :
+%D p[i+1] := p[1] shifted (0,h/6*i);
+%D draw p[i+1];
+%D endfor;
+%D for i = 1 upto 5 :
+%D block[i+1] := block[1] shifted (i*.1w, -i*h/6);
+%D fill block[i+1];
+%D numeric ii;
+%D ii := i+1;
+%D label.bot(textext("\switchtobodyfont[6pt] \white\rotate[rotation=90]{"& decimal ii &"}"),
+%D center block[i+1] shifted (0,.5*h/12));
+%D endfor;
+%D \stopuniqueMPgraphic
+%D \placefigure[middle,none][]{}{\useMPgraphic{Collatingblocks}}
+%D \stopexample
+%D \stopsubject
+%D
+%D \startsubject[title={Using the module}]
+%D
+%D If the collating marks should be placed, then the system should be setup with
+%D
+%D \starttyping
+%D \usemodule[collatingmarks][Collatingmarks=yes]
+%D \setupMPvariables
+%D [pages=8,
+%D sheets=2,
+%D horpageshift=0mm]
+%D \stoptyping
+%D
+%D Note that the
+%D collating marks-setup needs to know how many pages are placed on a
+%D doublesided printed sheet of paper and how many such sheets result in a
+%D section i.e. these values depend on the \type{\setuparranging} command. The
+%D shift-option is 0~mm if no horizontal page shifting is issued during
+%D imposition. If a horizontal page shifting is used, then the shift option is
+%D used to position the collating mark precisely on the centre of the spine.
+%D
+%D Be aware that the use of collating marks in MKII causes a lot of calls to
+%D \METAPOST, resulting in very long compilation times.
+%D
+%D So better use MKIV or LMTX where METAPOST\ is included as a
+%D library. In this case the time overhead is absolutely minimal.
+%D
+%D \stopsubject
+%D
+%D \startsubject[title={Vocabulary}]
+%D
+%D EN: Collating mark, DE: Kollationiermarke, NL: collationeerblokje
+%D
+%D\stopsubject
+%D
+%D \startsubject[title=The module code]
+
+
+\writestatus{loading}{Context User Module / Collating Marks}
+
+\unprotect
+
+\setupmodule[Collatingmarks=yes]
+
+
+\def\MCMpages{16}
+\def\MCMsheets{1}
+\def\MCMshift{0mm}
+
+\setupMPvariables
+ [Collatingmarks]
+ [pages=\MCMpages, %pages per sheet doublesided
+ sheets=\MCMsheets,% number of sheets forming one section
+ horpageshift=\MCMshift]
+
+%D We prepare collating marks:
+
+\processaction[\currentmoduleparameter{Collatingmarks}]
+ [yes=>\def\Collatingmarks{Collatingmarks},
+ no=>\def\Collatingmarks{},
+ \v!unknown=>\def\Collatingmarks{},
+ \v!default=>\def\Collatingmarks{}]
+
+\startusableMPgraphic{Collatingmarks}
+ StartPage;
+
+ numeric offset, sectionno, pages, sheets, factor, correction, offset, pageshift;
+ path p,q;
+
+ pages := \MPvar{pages};
+ sheets := \MPvar{sheets};
+ pageshift:=\MPvar{horpageshift};
+
+ z5colm = ulcorner Page;
+ z6colm = (x5colm, y5colm-10mm);
+
+ p := unitsquare xscaled 1mm yscaled 7mm;
+
+ if \realfolio mod 2 = 1 : % on uneven pages only
+ sectionno := \realfolio div (sheets*pages)+ 1;
+ label.lrt(textext("\switchtobodyfont[5pt]"& decimal sectionno &""),llcorner Page shifted (1mm,-2mm));
+ if \realfolio mod (sheets*pages) = 1 : % on the first page of a section only
+ nofmarkings := (y6colm-7mm) div 7mm;
+ offset := y6colm-sectionno*7mm;
+ if sectionno > nofmarkings :
+ correction := sectionno div nofmarkings;
+ offset := y6colm-(sectionno-correction*nofmarkings)*7mm;
+ fi;
+ p := p shifted (-1mm-2pageshift,offset);
+ fill p withcolor black;
+ if sectionno < 9 :
+ label.rt(textext("\switchtobodyfont[3pt] \white "& decimal sectionno &""), center p shifted (-1.3mm,0));
+ else :
+ label.rt(textext("\switchtobodyfont[3pt] \white "& decimal sectionno &""), center p shifted (-1.5mm,0));
+ fi;
+ fi;
+ fi;
+\stopusableMPgraphic
+
+
+%D \startsubsubject[title={Implementation}]
+%D
+%D Collating marks are calculated and drawn by \METAPOST. The result is
+%D placed into an overlay which is used as a page background
+%D
+%D \starttyping
+%D \defineoverlay[Collatingmarks][\useMPgraphic{Collatingmarks}]
+%D \stoptyping
+%D
+\defineoverlay[Collatingmarks][\useMPgraphic{Collatingmarks}]
+%D
+%D \starttyping
+%D \setupbackgrounds[page][state=repeat,background={\Collatingmarks}]
+%D \stoptyping
+%D
+\setupbackgrounds[page][state=repeat,background={\Collatingmarks}]
+%D
+%D We let \METAPOST do the calculations and draw de collating marks.
+%D
+%D \stopsubsubject
+
+\protect
+
+%D \stopsubject
+%D
+%M \stopmodule
+
+
+
+
+\doifnotmode{demo}{\endinput}
+
+%D \startsubject[title={Example}]
+%D \starttyping
+%D \usemodule[collatingmarks][Collatingmarks=yes]
+%D \setuppapersize[A5][A2]
+%D \setuplayout[location=middle,marking=on]
+%D \setuppagenumbering[alternative=doublesided]
+%D \setuparranging[2*4]
+%D
+%D \setupMPvariables
+%D [pages=8, % pages per sheet of paper doublesided
+%D sheets=1, % sheets of paper used per section
+%D horpageshift=0mm] % used for correction if horizontal page-shifting is used while imposition is active
+%D
+%D \starttext
+%D \dorecurse
+%D {10}
+%D {\startsection[title={Text \recurselevel}]
+%D \input tufte \par
+%D \startsubject[title={Ward}]
+%D \input ward\par
+%D \stopsubject
+%D \stopsection%
+%D }
+%D \stoptext
+%D \stoptyping
+%D \stopsubject
+%D \stoptext
+
+
+\usemodule[collatingmarks][Collatingmarks=yes]
+\setuppapersize[A5][A2]
+\setuplayout[location=middle,marking=on]
+\setuppagenumbering[alternative=doublesided]
+\setuparranging[2*4]
+
+\setupMPvariables
+ [pages=8, % pages per sheet of paper doublesided
+ sheets=1, % sheets of paper used per section
+ horpageshift=0mm] % used for correction if horizontal page-shifting is used while imposition is active
+
+\starttext
+ \dorecurse
+ {10}
+ {\startsection[title={Text \recurselevel}]
+ \input tufte \par
+ \startsubject[title={Ward}]
+ \input ward\par
+ \stopsubject
+ \stopsection%
+ }
+\stoptext
+
diff --git a/macros/context/contrib/context-interval-calendar/t-interval-calendar/LICENSE b/macros/context/contrib/context-interval-calendar/t-interval-calendar/LICENSE
new file mode 100644
index 0000000000..a7a158b93c
--- /dev/null
+++ b/macros/context/contrib/context-interval-calendar/t-interval-calendar/LICENSE
@@ -0,0 +1 @@
+Public Domain \ No newline at end of file
diff --git a/macros/context/contrib/context-interval-calendar/t-interval-calendar/VERSION b/macros/context/contrib/context-interval-calendar/t-interval-calendar/VERSION
new file mode 100644
index 0000000000..48d81a803c
--- /dev/null
+++ b/macros/context/contrib/context-interval-calendar/t-interval-calendar/VERSION
@@ -0,0 +1 @@
+2022-08-13 \ No newline at end of file
diff --git a/macros/context/contrib/context-interval-calendar/t-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdf b/macros/context/contrib/context-interval-calendar/t-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdf
new file mode 100644
index 0000000000..a97245c510
--- /dev/null
+++ b/macros/context/contrib/context-interval-calendar/t-interval-calendar/doc/context/third/interval-calendar/t-intervalcalendar-module-doc.pdf
Binary files differ
diff --git a/macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex b/macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex
new file mode 100644
index 0000000000..e5da11f8f0
--- /dev/null
+++ b/macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/Interval-calendar.tex
@@ -0,0 +1,44 @@
+% Context file
+% Filename: Interval-calendar.tex
+%
+% 13-08-2022
+% Copyright (c) 2022 Willi Egger. All rights reserved.
+
+% \enablemode[weekly]
+% \enablemode[twoweekly]
+\enablemode[monthly]
+
+\usemodule[intervalcalendar]
+
+\mainlanguage[en]
+
+\startsetups table:interval_check
+ \setupTABLE[split=repeat]
+ \setupTABLE[r][each][height=12mm,align=lohi]
+ \setupTABLE[r][1][style=bold,align={lohi,middle}]
+ \setupTABLE[c][1][width=0.2\textwidth]
+ \setupTABLE[c][2,3,4][width=0.15\textwidth]
+ \setupTABLE[c][5][width=0.3\textwidth]
+\stopsetups
+
+% Columnheads
+\setuplabeltext[en][c1=Datum]
+\setuplabeltext[en][c2=Gas]
+\setuplabeltext[en][c3=Electricity]
+\setuplabeltext[en][c4=Water]
+\setuplabeltext[en][c5=Observation]
+
+
+\starttext
+
+ \startmode[weekly]
+ \Checklist{"2022-8-10"}{"2022-9-30"}{5}{7} % startdate,enddate,columns,interval
+ \stopmode
+ \startmode[twoweekly]
+ \Checklist{"2022/9/10"}{"2023/01/31"}{5}{14} % startdate,enddate,columns,interval
+ \stopmode
+ \startmode[monthly]
+ \Checklist{"2022/8/10"}{"2023/05/31"}{5}{30} % startdate,enddate,columns,interval
+ \stopmode
+
+ \stoptext \ No newline at end of file
diff --git a/macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex b/macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex
new file mode 100644
index 0000000000..4d1c38cac1
--- /dev/null
+++ b/macros/context/contrib/context-interval-calendar/t-interval-calendar/tex/context/third/interval-calendar/t-intervalcalendar.tex
@@ -0,0 +1,265 @@
+%D \module
+%D [ file=t-interval-calender,
+%D version=2022.08.13,
+%D title=\CONTEXT\ User Module,
+%D subtitle=Interval Calendar,
+%D author=Willi Egger,
+%D date=\currentdate,
+%D copyright=Willi Egger,
+%D email=w.egger@boede.nl,
+%D license=Public Domain]
+
+\startmodule[intervalcalendar]
+
+\writestatus{loading}{ConTeXt User Module / Interval Calendar}
+
+%D \startsubject[title=Introduction]
+%D After announcing a presentation for the 16th \CONTEXT -Meeting in Dreifelden,
+%D Germany, over a new version of the PocketDiary module, Taco Hoekwater asked
+%D whether the PocketDiary module might also be
+%D able to produce lists with calendar-dates in intervals like \quote{weekly},
+%D \quote{twoweekly} or \quote{monthly} for the purpose of taking notes for
+%D checks on a regular base. -- The lists should be configurable for the length
+%D of the list, the number of columns and the possibility to assign an
+%D individual
+%D column-header. -- Quickly it appeared, that the use of the PocketDiary module
+%D is not necessary. In order to be able to do math on dates it is the easiest
+%D to convert a date to a timestamp in seconds or what is used by the
+%D operating-system. -- Due to the fact that there are repeating calculations
+%D done it is easiest to keep as much as possible at the lua end. Therefore the
+%D out-put is prepared as a \CONTEXT -LUA-document (cld).
+%D \stopsubject
+
+%D \startsubject[title=One Mode for Each List]
+%D
+%D The module can be used for the production of different lists. For each
+%D list we define a mode.
+
+\definemode[weekly][keep]
+\definemode[twoweekly][keep]
+\definemode[monthly][keep]
+
+%D None of the modes are activated.
+
+%D \stopsubject
+
+%D \startsubject[title=General Setups]
+
+\setupbodyfont[dejavu,ss,12pt]
+\setuppagenumbering[location=]
+
+\setuppapersize[A4,portrait][A4,portrait]
+
+\setuplayout
+ [topspace=20mm,
+ backspace=12mm,
+ header=10mm,
+ footer=2\bodyfontsize,
+ height=middle,
+ width=middle]
+
+\setupfootertexts
+ [\jobname .pdf]
+ [\pagenumber\ / \totalnumberofpages]
+
+%D \stopsubject
+
+%D \startsubject[title=LUA-Code]
+
+\startluacode
+
+ thirddata = thirddata or { }
+ thirddata.calendar = { }
+ local calendar = thirddata.calendar
+
+ local report = logs.reporter("Interval Checks")
+
+ local interval_dates = {}
+
+ function calendar.interval_checks(startdate,stopdate,cols,intval)
+
+ local startdate_string =startdate
+ local stopdate_string =stopdate
+ local columns=cols
+ local intervaldays = intval
+
+ local year,month,day = calendar.date(startdate_string)
+ local start_time_stamp = os.time({year=year,month=month,day=day})
+
+ --report("Starttimestamp: %s", start_time_stamp)
+
+ local year,month,day = calendar.date(stopdate_string)
+ local end_time_stamp = os.time{year=year,month=month,day=day}
+
+ local interval = intervaldays * 24 * 60 * 60
+
+ for i = start_time_stamp, end_time_stamp, interval do
+ local interval_date = os.date("%d-%m-%Y",i)
+ table.insert(interval_dates,interval_date)
+ report("%s",interval_date)
+ end
+
+ calendar.print_interval_checks(columns)
+ end
+
+ function calendar.print_interval_checks(cols)
+
+ local columns = cols
+
+ context.bTABLE({setups="table:interval_check"})
+ context.bTABLEhead()
+ context.bTR()
+ for i = 1,columns do
+ context.bTH()
+ context.labeltext("c"..i)
+ context.eTH()
+ end
+ context.eTR()
+ context.eTABLEhead()
+ context.bTABLEbody()
+ for k,v in ipairs(interval_dates) do
+ context.bTR()
+ context.bTD()
+ context(v)
+ context.eTD()
+ for i=1,columns-1 do
+ context.bTD()
+ context.strut()
+ context.eTD()
+ end
+ context.eTR()
+ end
+ context.eTABLEbody()
+ context.eTABLE()
+ end
+
+ function calendar.date(inputstr)
+
+ --report("Input : %s",inputstr)
+
+ local sep = "%-%s/"
+ if sep == nil then
+ sep = "%s"
+ end
+ local t={}
+ i=1
+ for str in string.gmatch(inputstr, "([^"..sep.."]+)") do
+ t[i] = str
+ --report("Actual string %s", str)
+ i = i + 1
+ end
+
+ --report("Datum strings: %s, %s, %s", t[1],t[2],t[3])
+
+ return t[1],t[2],t[3]
+ end
+\stopluacode
+
+%D The main function is the \quote{calendar.interval_ckecks} function
+%D with 4 parameters. The function needs a start-date, an end-date,
+%D the number of columns for the table in the out-put and the interval
+%D in days. The function calculates all dates fitting into the start
+%D and end dates based on the epoch-time. It converts the timestamp
+%D into a human readable date format and puts the values into a
+%D table \quote{interval_dates}.
+%D
+%D The second function is called from within the first function and
+%D gets the number of columns as parameter. This function creates the
+%D out-put table. It is a flexible setup, which is based on the
+%D number of the columns provided as a parameter. Label-texts are used
+%D for the column heads and the column heads are repeated at the top
+%D of each following page.
+%D
+%D The third function is there to deal with the preparation of the dates,
+%D which are sent to LUA as strings. It extracts the year (yyyy) the
+%D month (m) and day (d). The extracted values are put into a table. The dates
+%D can be entered in the format 2022-8-21 or as 2022/8/21.
+
+%D \stopsubject
+
+%D \startsubject[title=Macro for Calling the List Generator]
+%D The command needs 4 parameters: Start-date, stop-date, number of
+%D columns in the table and the interval in days.
+
+\define[4]\Checklist{\ctxlua{thirddata.calendar.interval_checks(#1,#2,#3,#4)}}
+
+%D \stopsubject
+
+%D \startsubject[title=Setups for the Out-Put Table]
+
+%D The layout of the out-put table is organized at the \TEX\ end. If
+%D the table design changes in terms of more or less columns, this
+%D setup has to be adapted.
+
+\startsetups table:interval_check
+ \setupTABLE[split=repeat]
+ \setupTABLE[r][each][height=12mm,align=lohi]
+ \setupTABLE[r][1][style=bold,align={lohi,middle}]
+ \setupTABLE[c][1][width=0.2\textwidth]
+ \setupTABLE[c][2,3,4][width=0.15\textwidth]
+ \setupTABLE[c][5][width=0.3\textwidth]
+\stopsetups
+
+%D \stopsubject
+
+%D \startsubject[title=Column Head Texts]
+%D It has been chosen to use the label-text mechanism to implement
+%D the head texts of the columns. Depending on the design of the
+%D out-put table the names can be adapted, the list can be made longer
+%D or shorter according to the needs.
+
+\setuplabeltext[en][c1=Datum]
+\setuplabeltext[en][c2=Gas]
+\setuplabeltext[en][c3=Electricity]
+\setuplabeltext[en][c4=Water]
+\setuplabeltext[en][c5=Observation]
+
+%D \stopsubject
+
+%D \startsubject[title=Header Texts of Out-Put]
+%D
+%D Also for the header texts the label text mechanism is used. Now only three
+%D intervals are defined, but this mechanism allows easily to extend the list
+%D of possible header texts. It also allows to implement other languages.
+%D Depending on the setting of the \type{\mainlanguage[]} the correct labels
+%D are picked up and typeset.
+
+\setuplabeltext[en][weekly={Weekly Checks}]
+\setuplabeltext[en][twoweekly={Two-weekly Checks}]
+\setuplabeltext[en][monthly={Monthly Checks}]
+
+\setuplabeltext[de][weekly={Wochen Checks}]
+\setuplabeltext[de][twoweekly={Zwei Wochen Checks}]
+\setuplabeltext[de][monthly={Monatliche Checks}]
+
+\setuplabeltext[nl][weekly={Weekelijkse Checks}]
+\setuplabeltext[nl][twoweekly={Twee-weekelijkse Checks}]
+\setuplabeltext[nl][monthly={Maandelijkse Checks}]
+
+%D \stopsubject
+
+%D \startsubject[title=Header Text Setup]
+
+%D Each list gets a header text fitting the purpose of the list.
+
+\startmode[weekly]
+ \setupheadertexts
+ [\midaligned{\bfc \labeltext{weekly}}]
+ []
+\stopmode
+
+\startmode[twoweekly]
+ \setupheadertexts
+ [\midaligned{\bfc \labeltext{twoweekly}}]
+ []
+\stopmode
+
+\startmode[monthly]
+ \setupheadertexts
+ [\midaligned{\bfc \labeltext{monthly}}]
+ []
+\stopmode
+
+%D \stopsubject
+
+\stopmodule \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/LICENSE b/macros/context/contrib/context-pocketdiary/LICENSE
new file mode 100644
index 0000000000..61f644db30
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/LICENSE
@@ -0,0 +1,7 @@
+The module contains files which are under different licensing regimes:
+
+t-pocketdiary.tex : Public Domain
+t-pocketdiary.lua : Public Domain
+t-calendar.lua : Public Domain
+t-solar.lua : CCO "http://creativecommons.org/about/cc0"
+t-moonphase.lua : Public Domain \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/VERSION b/macros/context/contrib/context-pocketdiary/VERSION
new file mode 100644
index 0000000000..68151b2e10
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/VERSION
@@ -0,0 +1 @@
+2.5 \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md
new file mode 100644
index 0000000000..f26c09d48f
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md
@@ -0,0 +1,96 @@
+Modulename : t-pocketdiary
+Author : Willi Egger
+License : Public Domain
+Version : 2.5
+Release date: March 2023
+
+
+Description
+-----------
+
+For those who are in need of a personal organizer this module offers a flexible solution based on a single sided printed A4. The pocket diary can be folded in such a way, that it forms a small booklet where only the printed pages are visible (see documentation).
+
+The basic idea is to have to change only minimal information for getting an updated PocketDiary after first setup.
+The personal organizer is based on week number and year. You can specify also a day number if you want a page containing only that day. You can specify a month if you want the personal organizer to contain a month table.
+
+Please refer to the documentation for further options.
+
+This module is a overhauled version of the previous module. It is built for the use with MKIV and LUAMETATEX (LMTX). In addition to the first version it is also calculating moon cycle and the sunrise and sunset time.
+
+Usage
+-----
+
+Create a file e.g. PocketDiary.tex
+
+\usemodule[pocketdiary]
+
+% Setup the bodyfont
+\setupbodyfont[palatino,rm,9pt]
+
+% Setup the language used: en, de, nl, it, fr, es and pl interface is available
+\mainlanguage[en]
+
+% Setup the variables for the calculations
+
+\setvariables
+ [PocketDiary]
+ [WeekDay=1,
+ Week=17,
+ Month=5,
+ Year=2023,
+ Nextyear=no,
+ Daybyday=no]
+
+% Setup the personal organizer:
+\setvariables
+ [PocketDiaryLayout]
+ [Page1=Lost-Returnto,
+ Page2=Weekplan,
+ Page3=Dayplan,
+ Page4=Monthcurrentplan,
+ Page5=Blank,
+ Page6=Lines,
+ Page7=Caro,
+ Page8=Contact]
+
+% Setup variables with personal information
+\setvariables
+ [PocketDiaryAddress]
+ [Familyname=Yourfamiliname,
+ Forename=Yourname,
+ Street=Yourstreet xx
+ Zipcode=Yourzip
+ City=Yourcity,
+ Country=Yourcountry
+ Phone=+Yourphonenumber
+ Mobile=+Yourmobilenumber,
+ E-mail=Your-e-mail,
+ Web=Yourwebsite]
+
+% Setup your personal footer
+\setvariables
+ [PocketDiaryFooter]
+ [Lefttext=PocketDiary,
+ Centertext=\pagenumber,
+ Righttext={\getvariable{PocketDiaryAddress}{Forename},{\currentdate[year]}}]
+
+% Setup your favorite colors
+
+\setvariables
+ [PocketDiaryColors]
+ [Separatorline=blue,
+ Gridline={s=.75}]
+
+% Setup the data for sunrise and sunset
+\setvariables
+ [PocketDiaryGeoPosition]
+ [lat=Latitude of your place,
+ lon=Longitude of your place,
+ timeoffset=Timezone (positive to the East, negative to the West from UTC),
+ continent=EU]
+
+% Do the typesetting
+\starttext
+ \setuparranging[1*8] % this can be uncommented in t-pocketdiary.tex
+ \getbuffer[Pocketdiary]
+\stoptext \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf
new file mode 100644
index 0000000000..de63406602
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf
Binary files differ
diff --git a/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex
new file mode 100644
index 0000000000..bf4e47f6f4
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex
@@ -0,0 +1,4 @@
+% The contents of the document t-pocketdiary-module-doc.pdf is generated
+% by the command. The source is the module file itself.
+
+mtxrun --script modules --process [PATH to]/t-pocketdiary.tex \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex
new file mode 100644
index 0000000000..a515e6db64
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.tex
@@ -0,0 +1,79 @@
+% Metafun
+% filename: moons.tex
+% Boede 2021
+
+% \setupbodyfont[plex,ss,14pt]
+
+\defineMPinstance
+ [Moon]
+ [metafun]
+ []
+
+\startMPinclusions[]{Moon}
+ numeric w,h;
+ path p[];
+ pair ip[];
+
+ w = OverlayWidth;
+ h = OverlayHeight;
+
+ p[1] := fullcircle scaled h;
+ p[2] := p[1] shifted (0.2 w,0);
+
+ ip[1] := p[1] intersectionpoint p[2];
+ ip[2] := reverse p[1] intersectionpoint p[2];
+
+ p[3] := p[1] cutbefore ip[1] cutafter ip[2];
+ p[4] := p[2] cutbefore ip[1] cutafter ip[2];
+
+ drawoptions (withpen pencircle scaled 2pt);
+
+\stopMPinclusions
+
+\startuniqueMPgraphic{Moon::Waning_moon}
+ draw p[3] ;
+ draw p[4] ;
+\stopuniqueMPgraphic
+
+\startuniqueMPgraphic{Moon::Growing_moon}
+ draw p[3] ;
+ draw p[4] ;
+ currentpicture := (currentpicture reflectedabout (ip[1],ip[2]));
+\stopuniqueMPgraphic
+
+\startuniqueMPgraphic{Moon::Fullmoon}
+ draw p[1];
+\stopuniqueMPgraphic
+
+\startuniqueMPgraphic{Moon::Newmoon}
+ fill p[1] withcolor 0.625 white;
+ draw p[1];
+\stopuniqueMPgraphic
+
+
+\defineoverlay[waningmoon][\useMPgraphic{Moon::Waning_moon}]
+\defineoverlay[growingmoon][\useMPgraphic{Moon::Growing_moon}]
+\defineoverlay[newmoon][\useMPgraphic{Moon::Newmoon}]
+\defineoverlay[fullmoon][\useMPgraphic{Moon::Fullmoon}]
+
+\defineframed
+ [Moon]
+ [height=\bodyfontsize,
+ width=\bodyfontsize,
+ frame=off]
+
+
+% \starttext
+% Results with \type{framed}
+%
+% \blank
+%
+% Heute ist abnehmender Mond {\Moon[background=waningmoon]{\strut}}
+%
+% Heute ist Vollmond \Moon[background=fullmoon]{}
+%
+% Heute haben wir Neumond \Moon[background=newmoon]{}
+%
+% Und heute haben wir zunehmenden Mond \Moon[background=growingmoon]{}
+%
+% \stoptext \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua
new file mode 100644
index 0000000000..70d644e3b7
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua
@@ -0,0 +1,108 @@
+if not modules then modules = { } end modules ['t-moonphase'] = {
+ version = 1.0,
+ comment = "Moonphase calculation",
+ author = "SubSystems www.subsystems.us edited by Willi Egger",
+ copyright = "Willi Egger",
+ email = "w.egger@boede.nl",
+ license = "Public Domain"
+}
+
+thirddata = thirddata or { }
+thirddata.moonphase = { }
+local moonphase = thirddata.moonphase
+
+local report = logs.reporter("Lunar")
+
+--[[
+From an article published by SubSystems www.subsystems.us:
+
+Let’s calculate the phase of the moon on 3/1/2017:
+1) Express the date as Y = 2017, M = 3, D = 1.
+2) If the month is January or February, subtract 1 from the year and add 12 to the month
+ Since the month March (M=3), we don’t need to adjust the values.
+3) With a calculator, do the following calculations:
+
+a. A = Y/100 A = 20
+b. B = A/4 and then record the integer part B = 5
+c. C = 2-A+B and then record the integer part C = -13
+d. E = 365.25 x (Y+4716) record the integer part E = 2459228
+e. F = 30.6001 x (M+1) record the integer part F = 122
+f. JD = C+D+E+F-1524.5 JD = 2457813.5
+
+Now that we have the Julian day, let’s calculate the days since the last new moon:
+Day since New = 2457813.5 - 2451549.5 = 6264 days
+If we divide this by the period, we will have how many new moons there have been:
+New Moons = 6264 / 29.53 = 212.123 cycles
+Now, multiply the fractional part by 29.53:
+Days into cycle = 0.123 x 29.53 = 3.63 days since New Moon
+--]]
+
+function moonphase.julianday(y,m,d)
+ local year = y
+ local month = m
+ local day = d
+
+ if month == 1 or month == 2 then
+ year = year - 1
+ month = month + 12
+ end
+ local a = year/100
+ local b = math.floor(a/4)
+ local c = math.floor(2-a+b)
+ local e = math.floor(365.25*(year+4716))
+ local f = math.floor(30.6001*(month+1))
+ local jd = c + day + e + f - 1524.5
+
+ return jd
+end
+
+function moonphase.lunardays(y,m,d)
+ local year = y
+ local month = m
+ local day = d
+
+ report("Working in function: moonphase.lunardays")
+
+ local JD = moonphase.julianday(year,month,day)
+ local days = JD - 2451549.5 --2451549.5 is Julian date of 06-01-2000, a new moon date
+ local cycles = days / 29.53 --29.53 is lunar month
+ local moonphasedays = (cycles-math.floor(cycles))
+ moonphasedays = moonphase.round(moonphasedays*29.53)
+
+ --report("Tage im Mondzyclus: %s", moonphasedays)
+
+ if moonphasedays == 29 then
+ moonphasedays = 0;
+ end
+ if moonphasedays == 0 then
+ report("New Moon")
+ return ("\\Moon[background=newmoon]{}")
+ elseif moonphasedays == 7 then
+ report("Quarter Moon")
+ return ("\\Moon[background=growingmoon]{}")
+ elseif moonphasedays == 15 then
+ report("Full Moon")
+ return ("\\Moon[background=fullmoon]{}")
+ elseif moonphasedays == 22 then
+ report("Three Quarter Moon")
+ return ("\\Moon[background=waningmoon]{}")
+ else
+ return (moonphasedays);
+ end
+ ---return moonphasedays
+end
+
+--Lua does not have a round function. From the Internet:
+
+function moonphase.round(num)
+ local under = math.floor(num)
+ local upper = math.floor(num) + 1
+ local underV = -(under - num)
+ local upperV = upper - num
+
+ if (upperV > underV) then
+ return under
+ else
+ return upper
+ end
+end
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex
new file mode 100644
index 0000000000..9f21c68e6e
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.tex
@@ -0,0 +1,103 @@
+% Context file
+% Filename: PocketDiary.tex
+%
+% Version 1: 30-12-2010
+% Version 2: December-2022
+%
+% This is the base for the compilation of a PocketDiary.
+% Please refer to the documentation of the module to see
+% which options you have to make up your own layout for the PocketDiary
+% This module is built for usage withKIV and LUAMETATEX (LMTX)
+
+
+\usemodule[pocketdiary]
+
+\setupbodyfont[ibmplex,rm,8pt]
+
+\definefontfeature[f:tabular][tnum=yes]
+\addfeature[f:tabular]
+
+% Supported interfaces: en,de,nl,fr,it,es,pl
+
+\mainlanguage[pl]
+
+%\setuppapersize[A6][A4,landscape]
+
+\setvariables
+ [PocketDiary]
+ [WeekDay=1,
+ Week=15,
+ Month=4,
+ Year=2023,
+ Nextyear=yes,
+ Daybyday=no]
+
+% If "Daybyday = yes" then the first 6 pages are filled with 5 times a single
+% day and the weekend is 1 page. The pages 7 and 8 are filled with what is set
+% in PockedDiaryLayout for page 7 and 8.
+
+\setvariables
+ [PocketDiaryLayout]
+ [Page1=Dayplan,
+ Page2=Weekendplan,
+ Page3=Weekcurrentplan,
+ Page4=Weeknextplan,
+ Page5=Monthcurrentplan,
+ Page6=Monthnextplan,
+ Page7=Yearcurrentplan,
+ Page8=Lost-Returnto]
+
+
+% Names of included templates: You are allowed to use the same template on multiple pages.
+% Dayplan
+% Weekcurrentplan
+% Weekendplan
+% Weeknextplan
+% Monthcurrentplan
+% Monthnextplan
+% Yearcurrentplan
+% Yearnextplan
+% Lines
+% Blank
+% Caro
+% Todo
+% Contact
+% Lost-Returnto
+
+\setvariables
+ [PocketDiaryAddress]
+ [Familyname={2023},
+ Forename={Bacho\TEX\ },
+ Street={Ośrodek szkoleniowo - wypoczynkowy Uniwersytetu Mikołaja Kopernika},
+ Zipcode=87-313,
+ City=Brzozie,
+ Country=Polska,
+ Phone={\dots},
+ Mobile={\dots},
+ E-mail=sekretariat@gust.org.pl,
+ Web={https://www.gust.org.pl/}]
+
+\setvariables
+ [PocketDiaryFooter]
+ [Lefttext={\getvariable{PocketDiaryAddress}{Forename}~
+ \getvariable{PocketDiaryAddress}{Familyname}},
+ Centertext=,
+ Righttext=\pagenumber]
+
+\setvariables
+ [PocketDiaryColors]
+ [Separatorline=blue,
+ Gridline={s=0.55}]
+
+\setvariables %Dreifelden
+ [PocketDiaryGeoPosition]
+ [lat=52.467860, %Dreifelden: lat=50.590494, lon=7.835367,
+ lon=16.981240,
+ timezoneoffset=1,
+ continent=US] % EU, US or leave empty for no DST
+
+\starttext
+
+ \setuparranging[1*8] % this can be uncommented in t-pocketdiary.tex
+ \getbuffer[Pocketdiary]
+\stoptext \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex
new file mode 100644
index 0000000000..3eca68a8c9
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.tex
@@ -0,0 +1,130 @@
+% Metafun
+% filename: moons.tex
+% Boede 2021
+
+% \setupbodyfont[plex,ss,14pt]
+
+\defineMPinstance
+ [Sun]
+ [metafun]
+ []
+
+\startMPinclusions[]{Sun}
+ numeric w,h;
+ path p[];
+ pair ip[];
+
+ w = OverlayWidth;
+ h = OverlayHeight;
+
+ p[1] := fullcircle scaled h;
+ p[100] := tcircle scaled 0.5h; %h
+ p[2] := tcircle scaled 0.6h; %1.2h;
+ p[3] := tcircle scaled 0.75h; %1.6h;
+ p[4] := tcircle scaled h; %2h;
+ p[5] := (0,0)--point 1 of p[4] ;
+ p[6] := p[5] cutbefore point .3 of p[5];
+ p[7] := p[6] rotatedaround (center p[1],18);
+
+ ip[1] := p[2] intersectionpoint p[7];
+ ip[2] := p[3] intersectionpoint p[7];
+
+ p[10] := ip[1]--ip[2];
+
+ ip[3] := ip[1];
+ ip[4] := point 1 of p[7];
+
+ p[11] := ip[3]--ip[4];
+
+ drawoptions (withpen pencircle scaled 0.25pt withcolor red);
+
+\stopMPinclusions
+
+\startreusableMPgraphic{Sun::Sunrise}
+ drawoptions (withpen pencircle scaled 0.25pt withcolor red);
+ draw p[100];
+ for i = 36 step 36 until 154 :
+ draw p[10] rotatedaround (center p[1],i-18);
+ endfor;
+ for i = 18 step 36 until 180 :
+ draw p[11] rotatedaround (center p[1],i-18);
+ endfor;
+ drawarrow ((0,0)--(0,h)) shifted (0,-0.05h);
+\stopreusableMPgraphic
+
+\startreusableMPgraphic{Sun::Sunset}
+ drawoptions (withpen pencircle scaled 0.25pt withcolor red);
+ draw p[100];
+ for i = 36 step 36 until 154 :
+ draw p[10] rotatedaround (center p[1],i-18);
+ endfor;
+ for i = 18 step 36 until 180 :
+ draw p[11] rotatedaround (center p[1],i-18);
+ endfor;
+ drawarrow ((0,h)--(0,0)) shifted (0,-0.05h) xscaled 0.5;
+\stopreusableMPgraphic
+
+\startreusableMPgraphic{Sun::Light}
+ h := OverlayHeight;
+ w := OverlayWidth;
+ drawoptions (withpen pencircle scaled 0.15pt withcolor red);
+
+ p[11] := ip[3]--ip[4];
+ p[1] := fullcircle scaled 0.25h;
+ p[2] := tcircle scaled 0.35h;
+ p[3] := tcircle scaled 0.5h;
+ p[4] := tcircle scaled 0.8h;
+ p[5] := (0,0)--point 1 of p[4] ;
+ p[6] := p[5] cutbefore point .3 of p[5];
+ p[7] := p[6] rotatedaround (center p[1],18);
+
+ ip[1] := p[2] intersectionpoint p[7];
+ ip[2] := p[3] intersectionpoint p[7];
+
+ p[10] := ip[1]--ip[2];
+
+ ip[3] := ip[1];
+ ip[4] := point 1 of p[7];
+
+ p[11] := ip[3]--ip[4];
+
+ draw p[1];
+ for i = 36 step 36 until 360 :
+ draw p[10] rotatedaround (center p[1],i-18);
+ endfor;
+ for i = 18 step 36 until 360 :
+ draw p[11] rotatedaround (center p[1],i-18);
+ endfor;
+
+ currentpicture := currentpicture rotatedaround(center p[1],18);
+\stopreusableMPgraphic
+
+\defineoverlay[Sunrise][\useMPgraphic{Sun::Sunrise}]
+\defineoverlay[Sunset][\useMPgraphic{Sun::Sunset}]
+\defineoverlay[Light][\useMPgraphic{Sun::Light}]
+
+\defineframed
+ [SunA]
+ [strut=yes,
+ height=\lineheight,
+ width=\emwidth,
+ frame=off,
+ offset=0pt]
+
+\defineframed
+ [SunB]
+ [strut=yes,
+ height=\lineheight,
+ width=\emwidth,
+ frame=off,
+ offset=0pt,
+ location=depth]
+
+% \starttext
+% \setupbodyfont[8pt] % This is the minimal size which looks still ok.
+%
+% Sunrise: {\SunA[background=Sunrise]{\strut}}
+% Sunset: \SunA[background=Sunset]{\strut}
+% Light hours: \SunB[background=Light]{\strut} Sunshine
+%
+% \stoptext \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua
new file mode 100644
index 0000000000..eb6756aaa6
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua
@@ -0,0 +1,256 @@
+if not modules then modules = { } end modules ['t-solar'] = {
+ version = 1.0,
+ comment = "Sun rise and sun set calculation",
+ author = "Alexander Yakushev, edited by Willi Egger",
+ copyright = "Willi Egger",
+ email = "w.egger@boede.nl",
+ license = "CC0 http://creativecommons.org/about/cc0"
+}
+
+thirddata = thirddata or { }
+thirddata.srss = { }
+local srss = thirddata.srss
+
+local report = logs.reporter("Solar data")
+
+--[[ Module for calculating sunrise/sunset times for a given location
+ Based on algorithm by United States Naval Observatory, Washington
+ Link: http://williams.best.vwh.net/sunrise_sunset_algorithm.htm
+ @author Alexander Yakushev
+ @license CC0 http://creativecommons.org/about/cc0
+--]]
+
+local rad = math.rad
+local deg = math.deg
+local floor = math.floor
+
+local mcos = math.cos
+local msin = math.sin
+local mtan = math.tan
+
+local macos = math.acos
+local masin = math.asin
+local matan = math.atan
+
+local frac = function(n) return n - floor(n) end
+local cos = function(d) return mcos(rad(d)) end
+local acos = function(d) return deg(macos(d)) end
+local sin = function(d) return msin(rad(d)) end
+local asin = function(d) return deg(masin(d)) end
+local tan = function(d) return mtan(rad(d)) end
+local atan = function(d) return deg(matan(d)) end
+
+function srss.fit_into_range(val,min,max)
+ local range = max - min
+ if val < min then
+ return val + (floor((min - val) / range) + 1) * range
+ elseif val >= max then
+ return val - (floor((val - max) / range) + 1) * range
+ else
+ return val
+ end
+end
+
+function srss.day_of_year(date)
+ local n1 = floor(275 * date.month / 9)
+ local n2 = floor((date.month + 9) / 12)
+ local n3 = (1 + floor((date.year - 4 * floor(date.year / 4) + 2) / 3))
+ return n1 - (n2 * n3) + date.day - 30
+end
+
+function srss.sunturn_time(
+ date,rising,latitude,longitude,zenith,local_offset,DST)
+
+ local n = srss.day_of_year(date)
+
+ -- report("working in function: srss.sunturn_time")
+ -- report("Day: %s Month: %s Year: %s", date.day, date.month, date.year)
+ -- report("Latitude: %s Longitude %s Timeoffset %s", latitude, longitude,
+ -- local_offset)
+
+ -- Convert the longitude to hour value and calculate an approximate time
+ local lng_hour = longitude / 15
+
+ --report("longitude hour %s", lng_hour)
+
+ local t
+ if rising then -- Rising time is desired
+ t = n + ((6 - lng_hour) / 24)
+ else -- Setting time is desired
+ t = n + ((18 - lng_hour) / 24)
+ end
+
+ -- Calculate the Sun's mean anomaly
+ local M = (0.9856 * t) - 3.289
+
+ -- Calculate the Sun's true longitude
+
+ local L = srss.fit_into_range(M + (1.916 * sin(M)) + (0.020 * sin(2 * M)) +
+ 282.634, 0, 360)
+
+ -- Calculate the Sun's right ascension
+ local RA = srss.fit_into_range(atan(0.91764 * tan(L)), 0, 360)
+
+ -- Right ascension value needs to be in the same quadrant as L
+
+ local Lquadrant = floor(L / 90) * 90
+ local RAquadrant = floor(RA / 90) * 90
+ RA = RA + Lquadrant - RAquadrant
+
+ -- Right ascension value needs to be converted into hours
+ RA = RA / 15
+
+ -- Calculate the Sun's declination
+ local sinDec = 0.39782 * sin(L)
+ local cosDec = cos(asin(sinDec))
+
+ -- Calculate the Sun's local hour angle
+
+ local cosH = (cos(zenith) - (sinDec * sin(latitude))) / (cosDec *
+ cos(latitude))
+
+ if rising and cosH > 1 then
+
+ -- return "N/R" -- The sun never rises on this location on the specified
+ -- date
+ report("Sun does not rise")
+
+ return ("\\labeltext{sunrise}: --")
+ elseif cosH < -1 then
+ -- return "N/S" -- The sun never sets on this location on the specified date
+
+ report("Sun does not set")
+ return ("\\labletext{sunset}: --")
+ end
+
+ -- Finish calculating H and convert into hours
+ local H
+ if rising then
+ H = 360 - acos(cosH)
+ else
+ H = acos(cosH)
+ end
+ H = H / 15
+
+ -- Calculate local mean time of rising/setting
+ local T = H + RA - (0.06571 * t) - 6.622
+
+ -- Adjust back to UTC
+ local UT = srss.fit_into_range(T - lng_hour, 0, 24)
+
+ -- Convert UT value to local time zone of latitude/longitude
+ local LT = UT + local_offset
+
+ -- Include daylight saving
+ -- report("UT: %s", UT)
+ -- report("LT: %s", LT)
+
+ if DST == true then
+ -- report("DST is on")
+ LT = LT + 1
+ end
+
+ -- report("DST: %s", LT)
+
+ return LT
+end
+
+function srss.get(d,mon,yr,lat,lon,offset,dst_start,dst_stop)
+
+ local date = { year = yr, month = mon, day = d } -- os.date("*t")
+ local lat = lat
+ local lon = lon
+ local offset = offset
+ local zenith = 90.83
+ local dst_start = dst_start
+ local dst_stop = dst_stop
+
+ -- report("Latidude : %s",lat)
+ -- report("Longitude : %s",lon)
+ -- report("Offset : %s",offset)
+ -- report("Zenith : %s",zenith)
+ -- report("Datum : %02i-%02i-%02i",date.year,date.month,date.day)
+ -- report("DST begin in srss.get : %s",dst_start)
+ -- report("DST end in srss.get : %s",dst_stop)
+
+ -- determine whether the day for sun rise/set is with daylight saving
+ local DST
+
+ if dst_start ~= "none" then
+ local dst_startday = tonumber(srss.ordinalday(dst_start))
+ local dst_endday = tonumber(srss.ordinalday(dst_stop))
+ local calendarday = srss.ordinalday(date.year.."/"
+ ..date.month.."/"..date.day)
+
+ --report("Ordinal calendar day: %s", calendarday)
+
+ if (calendarday <= dst_endday) and (calendarday >= dst_startday) then
+ DST = true
+ else
+ DST = false
+ end
+ else
+ DST = false
+ end
+
+ local rise_time = srss.sunturn_time(date,true,lat,lon,zenith,offset,DST)
+ local set_time = srss.sunturn_time(date,false,lat,lon,zenith,offset,DST)
+
+ if type(rise_time) ~= "number" then return rise_time end
+ if type(set_time) ~= "number" then return set_time end
+
+ local hourfraction = srss.minutes(rise_time)
+ local rise_hour = floor(rise_time)..":"..hourfraction
+ local hourfraction = srss.minutes(set_time)
+ local set_hour = floor(set_time)..":"..hourfraction
+ local length = (set_time - rise_time)
+ local hourfraction = srss.minutes(length)
+ local light_hours = floor(length)..":"..hourfraction
+
+ --report("Sun rise : %s",rise_hour)
+ --report("Sun set : %s",set_hour)
+ --report("Light hours : %s",light_hours)
+
+ return rise_hour, set_hour, light_hours
+end
+
+function srss.minutes(time)
+ return string.formatters["%02i"](floor((time - floor(time))*60))
+end
+
+function srss.ordinalday(inputstr)
+
+ --report("Input : %s",inputstr)
+
+ local sep = "%-%s/"
+ if sep == nil then
+ sep = "%s"
+ end
+ local t={}
+ i=1
+ for str in string.gmatch(inputstr, "([^"..sep.."]+)") do
+ t[i] = str
+ i = i + 1
+ end
+
+ --report("Datum strings: %s, %s, %s", t[1],t[2],t[3])
+
+ local daynumber = os.date("*t",os.time{year=t[1],month=t[2],day=t[3]})
+ local ordinalday = daynumber.yday
+
+ --report("Day of year : %s",ordinalday)
+
+ return ordinalday
+end
+
+function srss.sundata(...)
+ local r, s, l = srss.get(...)
+
+ report("Working in function: srss.sundata")
+
+ if r and s and l then
+ return r, s, l
+ else
+ return r
+ end
+end
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua
new file mode 100644
index 0000000000..2c15fcc424
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua
@@ -0,0 +1,720 @@
+if not modules then modules = { } end modules ['t-calendar'] = {
+ version = 1.100,
+ comment = "Date calculation collection",
+ author = "Willi Egger",
+ copyright = "Willi Egger",
+ email = "w.egger@boede.nl",
+ license = "Public Domain"
+ }
+
+thirddata = thirddata or { }
+thirddata.calendar = { }
+local calendar = thirddata.calendar
+
+local report = logs.reporter("Calendar")
+
+-- Determine whether the year is a leap year
+
+function calendar.isleapyear(year)
+ local yeardays
+ if (year % 4 == 0) and (year % 100 ~= 0 or year % 400 == 0) then
+ yeardays = 366
+ else
+ yeardays = 365
+ end
+
+ -- report("Days in the year in function calendar.isleapyear: %d",yeardays)
+
+ return yeardays
+end
+
+-- Lua calculates day 1 = sunday, day 0 = saturday
+--
+-- Calculate the weekday of 1st of january according to S. Babwani
+-- w = floor(5*year/4)+f(m)+d- 2 * mod(cn,4)
+-- where w is the week day
+-- where year is the last two digits of the full year.
+-- where f(m) is 0 for january (See table 3 of Babwani's congruence)
+-- where d is the day: 1 for january
+-- where cn is the century
+
+function calendar.janfirst(y)
+ local year = y
+
+ -- report("Working in function: calendar.janfirst")
+ -- report("Year in function: calendar.janfirst: %d",year)
+
+ local cn = math.floor(year/100) -- century
+ local yr = math.fmod(year,100) -- year without century
+ local leap_year = calendar.isleapyear(year) -- returns values 365 or 366
+
+ -- report("Century %d",cn)
+ -- report("Year without century %d",yr)
+ -- report("Result of check for leapyear (days) %d",leap_year)
+
+ local janfirst
+
+ if leap_year == 365 then
+ janfirst = math.fmod((math.floor((5 * yr) / 4)
+ + 0 + 1 - (2 * (math.fmod(cn,4)))),7)
+ else
+ janfirst = math.fmod((math.floor((5 * yr) / 4)
+ + 6 + 1 - (2 * (math.fmod(cn,4)))),7)
+ end
+
+ --report("Weekday of January 1st in function calendar.janfirst: %d",janfirst)
+
+ return janfirst
+end
+
+-- Calculate the ordinal number of a given day of the year from the weeknumber
+
+function calendar.wknrordinal(wkdjf,wk,yr)
+ local weekdayjanfirst = wkdjf
+ local weeknumber = wk
+ local year = yr
+
+ report("Working in calendar.wknrordinal")
+ --report("Weeknumber %d, Year: %d", weeknumber,year)
+
+ -- This table contains the offset of the first monday after the 1st of
+ -- january,
+ -- as used in the calculation of the ordinal number of a day of the year
+
+ local dyearbegin = {1,0,6,5,4,3,2}
+
+ local ordinalday = (weeknumber - 1) * 7 + dyearbegin[weekdayjanfirst]
+
+ --report("Ordinal day in calendar.wknrordinal: %d", ordinalday)
+
+ leapyear = calendar.isleapyear(year)
+
+ if ordinalday > leapyear then
+ ordinalday = ordinalday - 7
+ end
+
+ return ordinalday
+end
+
+-- Calculate the first day of a week calendar based on the week day of the 1st
+-- of january, date calculations based on the OS-timestamp
+
+function calendar.weekcalendar(wk,mn,yr)
+ local weeknumber = wk
+ local month = mn
+ local year = yr
+
+ report("Working in function: calendar.weekcalendar")
+ --report("Week number: %d Year: %d",weeknumber,year)
+
+ --report("Week number in function calendar.weekcalendar %d", weeknumber)
+
+ if month == 1 and weeknumber > 51 then
+ year = year -1
+ end
+
+ local weekdayjanfirst = calendar.janfirst(year)
+
+ --report("Weekday of January 1st from function calendar.weekcalendar: %d",weekdayjanfirst)
+
+ if weekdayjanfirst == 0 then weekdayjanfirst = 7 end
+
+ local janfirsttimestamp = os.time({year=year,month=1,day=1})
+
+ -- report("January 1st timestamp: %d", janfirsttimestamp)
+
+ local startday = janfirsttimestamp
+ local ordinalday = calendar.wknrordinal(weekdayjanfirst,weeknumber,year)
+
+ --report("Ordinal day (function: calendar.weekcalendar): %d",ordinalday)
+
+ if weekdayjanfirst > 1 and weekdayjanfirst <= 5 and weeknumber == 1 then
+ startday = janfirsttimestamp - (weekdayjanfirst-1) * 24 * 60 * 60
+ elseif
+ weekdayjanfirst == 3 or weekdayjanfirst == 4 or weekdayjanfirst == 5 and weeknumber ~= 1 then
+ startday = janfirsttimestamp + (ordinalday-8) * 24 * 60 * 60
+ else
+ startday = janfirsttimestamp + (ordinalday-1) * 24 * 60 * 60
+ end
+
+ if ordinalday > 360 then
+ startday = janfirsttimestamp + (ordinalday-1) * 24 * 60 * 60
+ end
+
+ -- local q = os.date("%x",startday)
+--
+--report("Start day of chosen week from function calendar.janfirst: %s", q)
+
+ return startday
+end
+
+-- Select a weekday from the os.date table and return the day name value to ConTeXt
+
+function calendar.select_dayname(d,wk,mn,y)
+ local weekday = d
+ local weeknumber = wk
+ local month = mn --not used but necessary for calendar.weekcalendar
+ local year = y
+
+ local startday = calendar.weekcalendar(weeknumber,month,year)
+ local d = startday + weekday * 24 * 60 * 60
+ local s = string.lower(os.date("%a",d))
+
+ -- report("Working in function: calendar.select_dayname")
+
+ local t = os.date("%d-%m-%Y",d)
+
+ -- report("Startday+day! : %s", t)
+ -- report("Day name: %s", s)
+
+ return s
+end
+
+-- Select a date from the os.date table and return the value to ConTeXt
+
+function calendar.select_fulldate(weeknumber,year,day)
+
+ local month = 5 --not used but necessary for calendar.weekcalendar
+ local startday = calendar.weekcalendar(weeknumber,month,year)
+ local d = startday + day * 24 * 60 * 60
+ local s = os.date("%d-%m-%Y",d)
+
+ -- report("Working in function: calendar.select_fulldate")
+
+ return context(s)
+end
+
+-- Select an ordinal day from the os.date table and return the day name value to ConTeXt
+
+function calendar.select_dayofmonth(d,wk,mn,y)
+
+ local day = d
+ local weeknumber = wk
+ local month = mn
+ local year = y
+
+ -- report("Working in function: calendar.select_dayofmonth")
+ -- report("Weeknumber: %s , Year: %s, Day: %s", weeknumber,year,day)
+
+ local startday = calendar.weekcalendar(weeknumber,month,year)
+ local d = startday + day * 24 * 60 * 60
+ local s = os.date("%d",d)
+ local b = string.lower(os.date("%a",d))
+ local t = os.date("%d-%m-%Y",d)
+
+ -- report("Asked day : %s", t)
+ -- report("B Dayname: %s", b)
+
+ s = tonumber(s)
+
+ -- report("B Day number of month: %d", s)
+
+ return s
+end
+
+-- Select the month number from the os.date table and return the value as a number
+
+function calendar.select_month(d,wk,y)
+
+ local weeknumber = wk
+ local year = y
+ local day = d
+ local month = 5 -- this is not used, but necessary for using calendar.weekcalendar
+
+ -- report("Working in function: calendar.select_month")
+ -- report("Day: %s, Weeknumber %s, Year: %s", day,weeknumber,year)
+
+ local startday = calendar.weekcalendar(weeknumber,month,year)
+ local d = startday + day * 24 * 60 * 60
+ local s = os.date("%m",d)
+
+ -- report("select month: %s", s)
+
+ return s
+end
+
+-- Select the month name from the os.date table and return the name of the month
+
+function calendar.select_monthname(d,wk,mn,y)
+
+ local day = d
+ local weeknumber = wk
+ local month = mn -- this is not used, but necessary for using calendar.weekcalendar
+ local year = y
+
+
+ -- report("Working in function: calendar.select_monthname")
+ -- report("Day: %s, Week: %s, Year: %s", day,weeknumber,year)
+
+ local startday = calendar.weekcalendar(weeknumber,month,year)
+ local t = startday + day * 24 * 60 * 60
+ local s = string.lower(os.date("%B",t))
+
+
+ return s
+end
+
+-- Select the fullyear from the os.date table and return the value
+
+function calendar.select_fullyear(weeknumber,year,day)
+
+ local month = 5 --not used, but necessary for using calendar.weekcalendar
+ local startday = calendar.weekcalendar(weeknumber,month,year)
+ local d = startday + day * 24 * 60 * 60
+ local s = os.date("%Y",d)
+
+ -- report("Working in function: calendar.select_fullyear")
+
+ return s
+end
+
+-- Select the monthname (long) based on month-number from os.date
+
+function calendar.select_nameofmonth(mon,y)
+
+ -- report("Working in function: calendar.select_nameofmonth")
+
+ local monthnumber = mon
+ local year = y
+ local d = 1
+ local m = string.lower(os.date("%B",
+ os.time{year=year,month=monthnumber,day=d}))
+
+ -- report("Month name %s",m)
+
+ return m
+end
+
+-- Select the monthname (long) based on monthnumber from os.date and return it as a labeltext
+
+function calendar.select_nameofmonthlabel(mon,y)
+
+ -- report("Working in function: calendar.select_nameofmonthlabel")
+
+ local monthnumber = mon
+ local year = y
+ local d = 1
+ local m = string.lower(os.date("%B",
+ os.time{year=year,month=monthnumber,day=d}))
+
+ -- report("Month name %s",m)
+
+ return context.labeltext(m)
+end
+
+-- Select the year from the os.date table and return the value to ConTeXt
+
+function calendar.select_year(weeknumber,year,day)
+ local month = 5 --not used but necessary for calendar.weekcalendar
+ local startday = calendar.weekcalendar(weeknumber,month,year)
+ local d = startday + day * 24 * 60 * 60
+ local s = os.date("%y",d)
+
+ -- report("Working in function: calendar.select_year")
+
+ return s --context(s)
+end
+
+--[[
+ EASTER DATE CALCULATION FOR YEARS 1583 TO 4099
+
+ y is a 4 digit year 1583 to 4099
+ d returns the day of the month of Easter
+ m returns the month of Easter
+
+ Easter Sunday is the Sunday following the Paschal Full Moon
+ (PFM) date for the year
+
+ This algorithm is an arithmetic interpretation of the 3 step
+ Easter Dating Method developed by Ron Mallen 1985, as a vast
+ improvement on the method described in the Common Prayer Book
+
+ Because this algorithm is a direct translation of the
+ official tables, it can be easily proved to be 100% correct
+
+ This algorithm derives values by sequential inter-dependent
+ calculations, so ... DO NOT MODIFY THE ORDER OF CALCULATIONS!
+
+ All variables are integer data types
+
+ It's free!
+
+ Comment: Translated from a BASIC-source into lua by W. Egger, 11-2010
+--]]
+
+function calendar.eastercalculation(y)
+ local year = y
+ local FirstDig = math.floor(year / 100) --first 2 digits of year
+ local Remain19 = math.fmod(year,19) --remainder of year / 19
+ local temp
+ local a = {}
+ local tA
+ local tB
+ local tC
+ local tD
+ local tE
+ local m
+ local d
+
+ -- calculate Paschal Full Moon (PFM) date
+
+ temp = math.floor((FirstDig - 15) / 2) + 202 - 11 * Remain19
+ a = {21, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 38}
+ for val in pairs(a) do
+ if val == FristDig then
+ temp = temp - 1
+ break
+ end
+ end
+
+ a = {33, 36, 37, 39, 40}
+ for val in pairs(a) do
+ if val == FirstDig then
+ temp = temp - 2
+ break
+ end
+ end
+
+ temp = math.fmod(temp, 30)
+ tA = temp + 21
+
+ if temp == 29 then
+ tA = tA - 1
+ end
+
+ if (temp == 28 and Remain19 > 10) then
+ tA = tA - 1
+ end
+
+ --find the next Sunday
+
+ tB = math.fmod((tA - 19), 7)
+ tC = math.fmod((40 - FirstDig), 4)
+
+ if tC == 3 then
+ tC = tC + 1
+ end
+
+ if tC > 1 then
+ tC = tC + 1
+ end
+
+ temp = math.fmod(year, 100)
+ tD = math.fmod(temp + math.floor(temp/ 4), 7)
+ tE = math.fmod((20 - tB - tC - tD), 7) + 1
+
+ d = tA + tE
+
+ -- return the date
+
+ if d > 31 then
+ d = d - 31
+ m = 4
+ else
+ m = 3
+ end
+
+ -- return context("Year: " ..year .." month:" ..m .. " day: " ..d)
+
+ local odes = calendar.ordinalday(d,m,year)
+
+ -- report("Easter ordinal day: %s", odes)
+
+ return odes
+end
+
+-- Calculate the ordinal daynumber from a given date with os.date and os.time
+
+function calendar.ordinalday(day,month,year)
+
+ -- report("Working in function: calendar.ordinalday")
+
+ local t = os.date("*t",os.time{year=year,month=month,day=day})
+ local od = t.yday
+ return od
+end
+
+--Check a date whether it is a Christian feast
+
+function calendar.checkchristianfeast(d,m,y)
+
+ --report("Working in function: calendar.checkchristianfeast")
+ --report("Check Christian Feast: Day: %s, Month: %s, Year: %s", d,m,y)
+
+ local daynumber = d
+ local month = m
+ local year = y
+ local odes = calendar.eastercalculation(year)
+ local od = calendar.ordinalday(daynumber,month,year)
+
+ -- report("Result easter calculation: %s", odes)
+ -- report("Ordinal day to be checked: %s", od)
+
+ local s = nil
+ if month == 1 and od == 1 then
+ s = "nyd"
+ end
+ if month == 1 and od == 6 then
+ s = "epi"
+ end
+ if month < 7 then -- Easter depending feasts are never later than june
+ if od == odes - 46 then
+ s = "ashw"
+ elseif od == odes - 7 then
+ s = "palms"
+ elseif od == odes - 2 then
+ s = "gfri"
+ elseif od == odes then
+ s = "esun"
+ elseif od == odes + 1 then
+ s = "esmo"
+ elseif od == odes + 39 then
+ s = "ascd"
+ elseif od == odes + 49 then
+ s= "pcst"
+ elseif od == odes + 50 then
+ s= "pcstmo"
+ end
+ end
+ if month == 12 and daynumber == 25 then
+ s = "xmas"
+ end
+ if month == 12 and daynumber == 26 then
+ s = "bxd"
+ end
+
+ if s == nil then
+ s = ""
+ end
+
+ -- report("Result of christian holiday: %s", s)
+
+ return s
+end
+
+
+--Create a table with the number of days per month, accounting for leapyears and return the number of days to the calling function
+
+local dayspermonth = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
+local nofdays = 0
+
+function calendar.nofdays_month(month,year)
+
+ -- report("Working in function: calendar.nofdays_month")
+
+ if month == 2 and calendar.isleapyear(year) ~= 365 then
+ nofdays = dayspermonth[month] + 1
+ else
+ nofdays = dayspermonth[month]
+ end
+
+ return nofdays
+
+end
+
+-- Create a table with the number of days per month, accounting for leapyears
+-- and return the number of weeks of the given month to the calling function
+
+function calendar.month(month,year)
+
+ report("Working in function: calendar.month")
+
+ local month = tonumber(month)
+
+ if month == 2 and calendar.isleapyear(year) ~= 365 then
+ nofdays = dayspermonth[month] + 1
+ else
+ nofdays = dayspermonth[month]
+ end
+
+ -- report ("Number of days : %s",nofdays)
+
+ monthtable = {}
+
+ local s = os.date("*t", os.time{year=year,month=month,day=1})
+
+ -- report("os.date: week day : %s",s.wday)
+
+ --Correcting the fact that lua starts the week on sunday
+
+ local wday = s.wday - 1
+ if wday == 0 then
+ wday = 7
+ end
+
+ -- report("Week day : %s",wday)
+
+ local beginmonth = wday-1
+
+ for i = 1, beginmonth do
+ table.insert(monthtable, 0)
+ end
+
+ for i = wday, (nofdays + beginmonth) do
+ table.insert(monthtable, i - wday + 1)
+ end
+
+ for i = (nofdays + beginmonth + 1), 42 do --a month table is max. 7 x 6 fields
+ table.insert(monthtable, 0)
+ end
+
+ local wkf = calendar.weeknumber(1,month,year)
+ local wkl = calendar.weeknumber(nofdays,month,year)
+
+ -- report("monthtable nofdays : %s",nofdays)
+ -- report("monthtable wkf : %s",wkf)
+ -- report("monthtable wkl : %s",wkl)
+
+ local b = wkl - wkf + 1
+
+ if month > 1 and month < 12 then
+ b = wkl - wkf + 1
+ elseif month == 12 and wkl == 1 then
+ wkl = 53
+ b = wkl - wkf + 1
+ elseif month == 1 and wkf > 51 then
+ b = wkl + 1
+ end
+
+ --report("number of weeks %s in month %s",b,month)
+
+ return b
+end
+
+--Select a day from the month table return value to context
+
+function calendar.dayselectofmonth(day)
+
+ -- report("Working in function calendar.dayselectofmonth")
+ -- report("Selected day : %s",day)
+
+ local s = monthtable[day]
+
+ -- report("Selected day from the monthtable: %s", s)
+
+ if s == 0 then
+ s = ""
+ return s --context(s)
+ else
+ return s --context(s)
+ end
+end
+
+--Generate the month name with os.date and os.time
+
+function calendar.monthname(mon,y)
+ local month = mon
+ local year = y
+
+ if month > 12 then
+ month = month - 12
+ year = year + 1
+ end
+
+ local s = string.lower(os.date("%B",os.time{year=year,month=month,day=1}))
+
+ -- report("month name : %s",s)
+
+ return s
+end
+
+
+-- http://www.irt.org/script/914.htm, Java, Ferry van Schaik
+-- Get the ISO week number from a given date for Europe
+--USA
+--[[
+function calendar.weeknumber(day,month,year)
+ local when = os.time({year=year,month=month,day=day})
+ local modDay = tonumber(os.date("%w",os.time({year=year,month=1,day=1})))
+
+ report("modDay in US calendar.weeknumber: %s",modDay)
+
+ local offset = 7 + 1 - modDay
+ if offset == 8 then
+ offset = 1
+ end
+
+ local daynum = math.round((when - os.time({year=year,month=1,day=1})) /60/60/24) + 1
+
+ report("daynum in US calendar.weeknumber: %s",daynum)
+
+ local weeknum = math.floor((daynum-offset+7)/7);
+
+ report("Week number in calendar.weeknumber %s", weeknum)
+
+ if weeknum == 0 then
+ year = year - 1
+ local prevNewYear = tonumber(os.date
+ ("%w",os.time({year=year,month=1,day=1})))
+ local prevOffset = 7 + 1 - prevNewYear
+ if prevOffset == 2 or prevOffset == 8 then
+ weeknum = 53
+ else
+ weeknum = 52
+ end
+ end
+
+ return weeknum
+end
+--]]
+-- EUROPA
+
+function calendar.weeknumber(d,month,year)
+ local day = d
+
+ -- report("Working in function calendar.weeknumber")
+ -- report("Daynumber in function calendar.daynumber: %s", day)
+
+ local when = os.time({year=year,month=month,day=day})
+ local modDay = tonumber(os.date("%w",os.time({year=year,month=1,day=1})))
+
+ if modDay == 0 then
+ modDay = 6
+ else
+ modDay = modDay - 1
+ end
+
+ local daynum = math.round((when - os.time({year=year,month=1,day=1})) /60/60/24) + 1
+ local weeknum = 0
+
+ if modDay < 4 then
+ weeknum = math.floor((daynum+modDay-1)/7)+1
+ else
+ weeknum = math.floor((daynum+modDay-1)/7)
+ if weeknum == 0 then
+ local prevmodDay = tonumber(os.date("%w",os.time({year=year-1,month=1,day=1})))
+ if prevmodDay == 0 then
+ prevmodDay = 6
+ end
+ if prevmodDay < 4 then
+ weeknum = 53
+ else
+ weeknum = 52
+ end
+ end
+ end
+
+ return weeknum
+end
+
+
+-- Calculate the week number of a given monday of the year from the ordinal day number
+
+function calendar.ordinaltowknr(ordinalday,year)
+
+ -- This table contains the offset of the first monday after the 1st of
+ -- january,
+ -- as used in the calculation of the ordinal number of a day of the year
+
+ local dyearbegin = {1,0,6,5,4,3,2}
+ local weekdayjanfirst = calendar.janfirst(year)
+
+ if weekdayjanfirst == 0 then
+ weekdayjanfirst = 7
+ end
+
+ local wknumber = math.div(ordinalday - dyearbegin[weekdayjanfirst],7) + 1
+
+ return wknumber
+end
+ \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua
new file mode 100644
index 0000000000..843a3e510b
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua
@@ -0,0 +1,854 @@
+if not modules then modules = { } end modules ['t-pocketdiary'] = {
+ version = 1.0,
+ comment = "Layouts of diary pages",
+ author = "Willi Egger",
+ copyright = "Willi Egger",
+ email = "w.egger@boede.nl",
+ license = "CC0 http://creativecommons.org/about/cc0"
+}
+
+thirddata = thirddata or { }
+thirddata.diary = { }
+local diary = thirddata.diary
+
+local report = logs.reporter("Diary pages")
+
+function diary.data(wd,wk,mn,yr,la,lo,to,cont)
+
+ report("Working in function: diary.data")
+
+ local weekday = wd
+ local weeknumber = wk
+ local month = mn
+ local year = yr
+ local lon = lo
+ local lat = la
+ local timeoffset = to
+ local continent = cont
+ local moon = ""
+ local srise,sset,lhours
+
+ local dayofmonth = thirddata.calendar.select_dayofmonth(
+ weekday,weeknumber,month,year)
+
+ local dayname = thirddata.calendar.select_dayname(weekday,weeknumber,month,year)
+
+ local holiday = thirddata.calendar.checkchristianfeast(
+ dayofmonth,month,year)
+
+ local monthname = thirddata.calendar.select_monthname(
+ weekday,weeknumber,month,year)
+
+ local moondata = thirddata.moonphase.lunardays(year,month,dayofmonth)
+
+ local dst_start, dst_stop,srise,sset,lhours
+
+ if continent ~="" then
+ local dst_start,dst_stop = diary.DST(year,continent)
+
+ report("DST start: %s DST stop: %s",dst_start,dst_stop)
+
+ srise,sset,lhours = thirddata.srss.sundata(
+ dayofmonth,month,year,lat,lon,timeoffset,dst_start,dst_stop)
+ else
+ dst_start = "none"
+ dst_stop = 0
+ report("No DST is applied")
+ end
+
+ return weekday, weeknumber, month, year, lat, lon, timeoffset, dst_start,
+ dst_stop, dayofmonth, dayname, holiday, monthname, moondata, srise, sset,
+ lhours
+end
+
+function diary.DST(year,continent)
+ local report = logs.reporter("DST date")
+
+ report("Working in function DST")
+
+ local dstmonth_start
+ local dstmonth_stop
+ local dstday_start
+ local dstday_stop
+ local dst_start
+ local dst_stop
+
+ if continent ~= "" then
+ if continent == "EU" then
+ dstmonth_start = 3
+ dstmonth_stop = 10
+ dstday_start = diary.DSTday(dstmonth_start,year,continent)
+ dstday_stop = diary.DSTday(dstmonth_stop,year,continent)
+ else
+ if continent == "US" then
+ dstmonth_start = 3
+ dstmonth_stop = 11
+ dstday_start = diary.DSTday(dstmonth_start,year,continent)
+ dstday_stop = diary.DSTday(dstmonth_stop,year,continent)
+ end
+ end
+ -- report("DSTday start: %s",dstday_start)
+ -- report("DSTday stop: %s",dstday_stop)
+ dst_start = year.."-"..dstmonth_start.."-"..dstday_start
+ dst_stop = year.."-"..dstmonth_stop.."-"..dstday_stop
+ else
+ report("No DST to be taken in to account")
+ dst_start = "none"
+ dst_stop = 0
+ end
+
+ --report("DST start date: %s", dst_start)
+ --report("DST stop date: %s", dst_stop)
+
+ return dst_start, dst_stop
+end
+
+function diary.DSTday(month,year,continent)
+ report("Working in function DSTday")
+
+ local DSTday = {}
+ local dayname
+
+ if continent == "EU" then
+ -- the last Sunday of March and October can only be between 25. and 31. of the month
+ for i=25,31 do
+ dayname = string.lower(os.date
+ ("%a",os.time{day=i,month=month,year=year}))
+ DSTday[dayname] = i
+ end
+ else
+ -- for the US the second Sunday in March can be between 8. and 14. of March, first Sunday of November can be between 1. and 8. of November
+ if month == 3 then
+ for i=8,14 do
+ dayname = string.lower(os.date
+ ("%a",os.time{day=i,month=month,year=year}))
+ DSTday[dayname]=i
+ end
+ else
+ for i=1,7 do
+ dayname = string.lower(os.date
+ ("%a",os.time{day=i,month=month,year=year}))
+ DSTday[dayname]=i
+ end
+ end
+ end
+ return DSTday.sun
+end
+
+function diary.dayplan(...) --8 parameters
+
+ report("Working in function: diary.dayplan")
+
+ if weekday == 0 then
+ weekday = 1
+ end
+
+ local weekday, weeknumber, month, year, lat, lon, timeoffset, dst_start,
+ dst_stop, dayofmonth, dayname, holiday, monthname, moondata, srise, sset,
+ lhours = diary.data(...)
+
+ context.setupheadertexts{
+ function()
+ context.bTABLE({setups="table:topinfo"})
+ context.bTR()
+ context.bTD()
+ if dayname == "sun" or holiday ~= "" then
+ context.color({"red"},
+ function() context(dayofmonth) end)
+ context("~")
+ context.color({"red"},
+ function() context.labeltext(dayname) end)
+ else
+ context(dayofmonth)
+ context("~")
+ context.labeltext(dayname)
+ end
+ context.eTD()
+ context.bTD()
+ context.labeltext(holiday)
+ context.eTD()
+ context.bTD()
+ context.labeltext(monthname)
+ context("~")
+ context(year)
+ context.eTD()
+ context.eTR()
+ context.bTR({style="\\switchtobodyfont[5pt]"})
+ context.bTD()
+ if tonumber(moondata) then
+ context.labeltext("moondays")
+ else
+ context.labeltext("moon")
+ end
+ context(": ")
+ context(moondata)
+ context.eTD()
+ context.bTD({nx="2"})
+ context.dontleavehmode()
+ context("\\SunA[background=Sunrise,height=7pt]{\\strut}")
+ context("~~~")
+ context(srise)
+ context("\\quad")
+ context("\\SunA[background=Sunset,height=7pt]{\\strut}")
+ context("~~~")
+ context(sset)
+ context("~~")
+ context("\\SunB[background=Light,height=7pt]{\\strut}")
+ context("~~")
+ context(lhours)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ end}
+ context.strut()
+ context.page()
+end
+
+function diary.weekplan(weekday,weeknumber,month,year,lat,lon,
+ timeoffset,continent) --8 parameters
+
+ report("Working in function: diary.weekplan")
+
+ context.setupheadertexts{
+ function()
+ context.bTABLE({setups="table:topweekplan"})
+ context.bTR()
+ context.bTD()
+ context("\\bf")
+ context.labeltext("weekagenda")
+ context.eTD()
+ context.bTD()
+ context.labeltext("month")
+ context("~")
+ context(month)
+ context("\\quad")
+ context.labeltext("week")
+ context("~")
+ context(weeknumber)
+ context("\\quad")
+ context(year)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ end}
+ diary.thisweek(weeknumber,month,year,lat,lon,timeoffset,continent)
+ context.page()
+end
+
+function diary.nextweekplan(...)
+
+ local weekday, weeknumber, month, year, lat, lon, timeoffset, dst_start,
+ dst_stop, dayofmonth, dayname, holiday, monthname, moondata, srise, sset,
+ lhours = diary.data(...)
+
+ report("Working in function: diary.nextweekplan")
+
+ context.setupheadertexts{
+ function()
+ context.bTABLE({setups="table:topinfo"})
+ context.bTR()
+ context.bTD()
+ context("\\bf\\labeltext{weekagenda}")
+ context.eTD()
+ context.bTD()
+ context.strut()
+ context.eTD()
+ context.bTD()
+ context.labeltext("week")
+ context("~")
+ context(weeknumber)
+ context("\\quad")
+ context(year)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ end}
+ diary.thisweek(weeknumber,month,year,lat,lon,timeoffset,continent)
+ context.page()
+end
+
+function diary.weekendplan(weekday,weeknumber,month,year,lat,
+ lon,timeoffset,continent)
+
+ local weekday, weeknumber, month, year, lat, lon, timeoffset, dst_start,
+ dst_stop, dayofmonth, dayname, holiday, monthname, moondata, srise,
+ sset, lhours =
+ diary.data(weekday,weeknumber,month,year,lat,lon,timeoffset,continent)
+
+ report(" Working in function: diary.weekendplan")
+
+ context.setupheadertexts{
+ function()
+ context.bTABLE({setups="table:topinfo"})
+ context.bTR()
+ context.bTD()
+ context(dayofmonth)
+ context("~")
+ context.labeltext(dayname)
+ context.eTD()
+ context.bTD()
+ context.labeltext(holiday)
+ context.eTD()
+ context.bTD()
+ context.labeltext(monthname)
+ context("~")
+ context(year)
+ context.eTD()
+ context.eTR()
+ context.bTR({style="\\switchtobodyfont[5pt]"})
+ context.bTD()
+ if tonumber(moondata) then
+ context.labeltext("moondays")
+ else
+ context.labeltext("moon")
+ end
+ context(": ")
+ context(moondata)
+ context.eTD()
+ context.bTD({nx="2"})
+ context.dontleavehmode()
+ context("\\SunA[background=Sunrise,height=7pt]{\\strut}")
+ context("~~~:~")
+ context(srise)
+ context("\\quad")
+ context("\\SunA[background=Sunset,height=7pt]{\\strut}")
+ context("~~~")
+ context(sset)
+ context("~~")
+ context("\\SunB[background=Light,height=7pt]{\\strut}")
+ context("~~")
+ context(lhours)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ end}
+
+ local wday = 7
+ local weekday, weeknumber, month, year, lat, lon, timeoffset, dst_start,
+ dst_stop, dayofmonth, dayname, holiday, onthname,moondata,srise,sset,
+ lhours = diary.data(wday, weeknumber, month, year, lat, lon, timeoffset,
+ continent)
+
+ -- report("Working in function: diary.weekendplan: Sunday"
+
+ context.strut()
+ context("\\godown[.4\\textheight]")
+ context.bTABLE({setups="table:topinfo"})
+ context.bTR()
+ context.bTD()
+ context.color({"red"},
+ function() context(dayofmonth) end)
+ context("~")
+ context.color({"red"},
+ function() context.labeltext(dayname) end)
+ context.eTD()
+ context.bTD()
+ context.labeltext(holiday)
+ context.eTD()
+ context.bTD()
+ context.labeltext(monthname)
+ context("~")
+ context(year)
+ context.eTD()
+ context.eTR()
+ context.bTR({style="\\switchtobodyfont[5pt]"})
+ context.bTD()
+ if tonumber(moondata) then
+ context.labeltext("moondays")
+ else
+ context.labeltext("moon")
+ end
+ context(": ")
+ context(moondata)
+ context.eTD()
+ context.bTD({nx="2"})
+ context.dontleavehmode()
+ context("\\SunA[background=Sunrise,height=7pt]{\\strut}")
+ context("~~~~")
+ context(srise)
+ context("\\quad")
+ context("\\SunA[background=Sunset,height=7pt]{\\strut}")
+ context("~~~")
+ context(sset)
+ context("~~")
+ context("\\SunB[background=Light,height=7pt]{\\strut}")
+ context("~~")
+ context(lhours)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ context.par()
+ context("\\godown[3pt]")
+ context.blackrule({"color=\\getvariable{PocketDiaryColors}{Separatorline},height=0.5pt,width=\\textwidth"})
+ context.page()
+end
+
+function diary.monthcurrentplan(mon,y)
+ local month = mon
+ local year = y
+
+ report("Working in function: diary.monthcurrentplan")
+
+ local month_name = thirddata.calendar.select_nameofmonth(month,year)
+
+ context.setupheadertexts{
+ function()
+ context.bTABLE({setups="table:topweekplan"})
+ context.bTR()
+ context.bTD()
+ context.labeltext(month_name)
+ context.eTD()
+ context.bTD()
+ context(year)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ end}
+
+ diary.monthtableH(month,year)
+ context.page()
+end
+
+function diary.monthnextplan(mn,yr)
+
+ report("Working in function: diary.monthnextplan")
+
+ local month = mn
+ local year = yr
+
+ month = month + 1
+
+ if month > 12 then
+ month = 1
+ year = year + 1
+ end
+
+ local month_name = thirddata.calendar.select_nameofmonth(month,year)
+
+ context.setupheadertexts{
+ function()
+ context.bTABLE({setups="table:topweekplan"})
+ context.bTR()
+ context.bTD()
+ context.labeltext(month_name)
+ context.eTD()
+ context.bTD()
+ context(year)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ end}
+
+ diary.monthtableH(month,year)
+ context.page()
+end
+
+function diary.yearplan(yr,nxt)
+
+ report("Working in function: diary.yearplan")
+
+ local year = yr
+ local next = nxt
+
+ if next == "yes" then
+ year = year + 1
+ end
+
+ context.setupheadertexts{
+ function()
+ context.bTABLE({setups="table:topinfo"})
+ context.bTR()
+ context.bTD()
+ context(year)
+ context.eTD()
+ context.bTD()
+ context.strut()
+ context.eTD()
+ context.bTD()
+ context.strut()
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ end}
+ context.start()
+ context.switchtobodyfont({"4pt"})
+ diary.yearcalendar(year)
+ context.stop()
+ context.page()
+end
+
+function diary.daybydayplan(weekday,weeknumber,month,year,lat,lon,
+ timeoffset,continent) --8 parameters
+
+ report("Working in function: diary.daybyday")
+
+ --Working days
+ for i = 1,5 do
+
+ thirddata.diary.dayplan(i,weeknumber,month,year,lat,lon,
+ timeoffset, continent)
+ end
+
+ -- Weekend
+ thirddata.diary.weekendplan(6, weeknumber,month,year,lat,lon,
+ timeoffset, continent)
+ context.page()
+end
+
+-- Generate a Context table containing the days of a given month,
+-- topline weeknumber
+
+function diary.monthtableH(mn,yr)
+ local month = mn
+ local year = yr
+
+ report("Working in function: diary.monthtableH")
+
+ if month > 12 then
+ month = month - 12
+ year = year + 1
+ end
+
+ context.bTABLE({setups="table:month"})
+ context.bTR()
+
+ local w = {"mon","tue","wed","thu","fri","sat","sun"}
+ for a,d in ipairs(w) do
+ context.bTD({align="middle,lohi"})
+ context.labeltext(d)
+ context.eTD()
+ end
+
+ context.eTR()
+
+ ----returns number of weeks in a given month
+
+ local c = thirddata.calendar.month(month,year)
+
+ for i = 1, c do
+ context.bTR()
+ for j=(i-1)*7+1,(i-1)*7+7 do
+ local day = thirddata.calendar.dayselectofmonth(j)
+ local holiday
+ if day ~= "" then
+ holiday = thirddata.calendar.checkchristianfeast(
+ day,month,year)
+ end
+
+ context.bTD()
+
+ if holiday ~= "" then
+ context.color({"red"},
+ function() context(day) end)
+ else
+ context(day)
+ end
+
+ context.eTD()
+ end
+ context.eTR()
+ end
+
+ context.eTABLE()
+end
+
+-- Generate a Context table containing the days of a given month, topline
+-- weekday names
+
+function diary.monthtableV(month,year)
+
+ report("Working in function diary.monthtableV")
+
+ local c = thirddata.calendar.month(month,year) --returns number of weeks in a given month
+ local wkf = thirddata.calendar.weeknumber(1,month,year)
+
+ local nofdays = 1
+
+ if month == 2 and thirddata.calendar.isleapyear(year) ~= 365 then
+ nofdays = thirddata.calendar.nofdays_month(month,year) + 1
+ else
+ nofdays = thirddata.calendar.nofdays_month(month,year)
+ end
+
+ local wkl = thirddata.calendar.weeknumber(nofdays,month,year)
+
+ context.bTABLE({setups="table:year"})
+ context.bTR({align="flushright"})
+ context.bTD()
+ context.strut()
+ context.eTD()
+
+ if month == 1 and wkf > 51 then
+ context.bTD()
+ context(wkf)
+ context.eTD()
+ wkf = 1
+ for i = wkf, c - 1 do
+ context.bTD()
+ context(i)
+ context.eTD()
+ end
+ else
+ for i = wkf, wkf + c - 1 do
+ context.bTD()
+ context(i)
+ context.eTD()
+ end
+ end
+ context.eTR()
+
+ local w = {"mon","tue","wed","thu","fri","sat","sun"}
+ local row = 0
+
+ for a,d in ipairs(w) do
+ if a == 7 then
+ context.bTR({align="flushright",style="red"})
+ else
+ context.bTR({align="flushright"})
+ end
+
+ context.bTD({align="flushleft"})
+ context.labeltext(d)
+ context.eTD()
+
+ for i=1,c*7,7 do
+ local day = i + row
+ local dayofmonth = thirddata.calendar.dayselectofmonth(day)
+
+ --report("Day of month in monthtableV: %s",dayofmonth)
+ local holiday
+
+ if dayofmonth ~= "" then
+ holiday = thirddata.calendar.checkchristianfeast(
+ dayofmonth,month,year)
+ end
+
+ context.bTD()
+
+ if holiday ~= "" then
+ context.color({"red"},
+ function() context(dayofmonth) end)
+ else
+ context(dayofmonth)
+ end
+ context.eTD()
+ end
+ row = row + 1
+ context.eTR()
+ end
+ context.eTABLE()
+end
+
+function diary.yearcalendar(year)
+
+ report("Working in function: diary.year")
+
+ context.startcombination({"4*3"})
+ for i= 1,12 do
+ local monthname = string.lower(os.date(
+ "%B",os.time{year=year,month=i,day=1}))
+ context.framedtext({frame="off",
+ style="bold",
+ width=number.todimen(0.23*tex.dimen.textwidth),
+ offset="0.5pt",
+ align="middle"},
+ function() context.labeltext(monthname) end,
+ function() diary.monthtableV(i,year) end
+ )
+ end
+ context.stopcombination()
+end
+
+function diary.thisweek(wk,mn,yr,lat,lon,timeoffset,continent)
+
+ report("Working in function: diary.thisweek")
+ --report("Year %d", yr)
+ --report("weeknumber in diary.thisweek %s",wk)
+
+
+ local weeknumber = wk
+ local year = yr
+ local month = mn
+
+ local mondaytimestamp = thirddata.calendar.weekcalendar(weeknumber,month,year)
+
+ --report("Month based on mondaytimestamp: %s", m)
+ local d = tonumber(os.date("%d",mondaytimestamp)) -- day part of date
+
+ -- The following line will be deleted if it works
+ local y = tonumber(os.date("%Y",mondaytimestamp))
+ --report("Year: %d",y)
+
+ --report("Now in diary.thisweek at day %s",d)
+
+ diary.weektable(mondaytimestamp,month,year,
+ lat,lon,timeoffset,continent)
+end
+
+function diary.nextweek(wk,mn,year,lat,lon,timeoffset,dst_start,dst_stop)
+
+ report("Working in function: diary.nextweek")
+
+ local weeknumber = wk + 1
+ local mondaytimestamp = thirddata.calendar.weekcalendar(weeknumber,mn,year)
+
+ diary.weektable(mondaytimestamp,mn,year,
+ lat,lon,timeoffset,continent)
+end
+
+function diary.weektable(mondaytimestamp,mn,year,
+ lat,lon,timeoffset,continent)
+ local year = year
+ local s = mondaytimestamp
+ local dst_start,dst_stop = diary.DST(year,continent)
+
+ report("Working in function: diary.weektable")
+ local x = os.date("%x",mondaytimestamp)
+
+ --report("Actual date: %s",x)
+
+ context.bTABLE({setups="table:week"})
+
+ local yeardays = thirddata.calendar.isleapyear(year) -- returns 365 or 366
+
+ for i = 1,5 do
+ local daystamp = s + i * 24 * 60 * 60
+ local d = tonumber(os.date("%d",daystamp)) -- day part of date
+
+ --report("Year in week-loop: %d",year)
+ --report("Day in week-loop: %s",d)
+
+ local n = string.lower(os.date("%a",daystamp)) -- day name
+
+ --report("Day name in week loop: %s",n)
+
+ local m = tonumber(os.date("%m",daystamp)) -- month number
+
+ --report("Month number in week-loop %d",m)
+
+ local f = thirddata.calendar.checkchristianfeast(d,m,year)
+ local t = os.date("*t",os.time{year=year,month=m,day=d}) -- This returns a table!
+ local moondata = thirddata.moonphase.lunardays(year,m,d)
+
+ if not f then
+ f = ""
+ end
+
+ context.bTR()
+ context.bTD({nx=2})
+ if f ~= "" and f ~= "ashw" then
+ context.color({"red"},
+ function() context(d) end)
+ context("~")
+ context.color({"red"},
+ function() context.labeltext(n) end)
+ else
+ context(d)
+ context("~")
+ context.labeltext(n)
+ end
+ context.bgroup()
+ context.switchtobodyfont({"6pt"})
+ context("~")
+ context(t.yday)
+ context("/")
+ context(yeardays)
+
+ if not tonumber(moondata) then
+ context("~")
+ context(moondata)
+ end
+
+ if n == "tue" then
+ local srise,sset,lhours =
+ thirddata.srss.sundata(d,m,year,lat,lon,
+ timeoffset,dst_start,dst_stop)
+ --report("Sun data %s,%s,%s", srise,sset,lhours)
+ context("\\quad")
+ context("\\SunA[background=Sunrise,height=7pt]{\\strut}")
+ context("\\quad ~")
+ context(srise)
+ context("~~~")
+ context("\\SunA[background=Sunset,height=7pt]{\\strut}")
+ context("\\quad ~")
+ context(sset)
+ context("~~~")
+ context("\\SunB[background=Light,height=7pt]{\\strut}")
+ context("~~")
+ context(lhours)
+ end
+ context.egroup()
+ context("~")
+ context.labeltext(f)
+ context.eTD()
+ context.eTR()
+ end
+
+ context.bTR()
+ local daystamp = s + 6 * 24 * 60 * 60
+ local d = tonumber(os.date("%d",daystamp))
+ local n = string.lower(os.date("%a",daystamp))
+ local m = tonumber(os.date("%m",daystamp))
+ local f = thirddata.calendar.checkchristianfeast(d,m,year)
+ local t = os.date("*t",os.time{year=year,month=m,day=d}) -- This returns a table!
+
+ --report("Weekend day in loop: %s",d)
+
+ if not f then
+ f = ""
+ end
+
+ context.bTD()
+ if f ~= "" then
+ context.color({"red"},
+ function() context(d) end)
+ context("~")
+ context.color({"red"},
+ function() context.labeltext(n) end)
+ else
+ context(d)
+ context("~")
+ context.labeltext(n)
+ end
+ context.bgroup()
+ context("\\tfxx")
+ context("~")
+ context(t.yday)
+ context("/")
+ context(yeardays)
+ context.egroup()
+ context("~")
+ context.labeltext(f)
+ context.eTD()
+
+ local daystamp = s + 7 * 24 * 60 * 60
+ local d = tonumber(os.date("%d",daystamp))
+ local n = string.lower(os.date("%a",daystamp))
+ local m = tonumber(os.date("%m",daystamp))
+ local f = thirddata.calendar.checkchristianfeast(d,m,year)
+ local t = os.date("*t",os.time{year=year,month=m,day=d}) -- This returns a table!
+ --report("Weekend day in loop: %s",d)
+ if not f then
+ f = ""
+ end
+
+ context.bTD()
+ context.color({"red"},
+ function() context(d) end)
+ context("~")
+ context.color({"red"},
+ function() context.labeltext(n) end)
+ context.bgroup()
+ context("\\tfxx")
+ context("~")
+ context(t.yday)
+ context("/")
+ context(yeardays)
+ context.egroup()
+ context("~")
+ context.labeltext(f)
+ context.eTD()
+ context.eTR()
+ context.eTABLE()
+ context.page()
+end \ No newline at end of file
diff --git a/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex
new file mode 100644
index 0000000000..22bfda6241
--- /dev/null
+++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.tex
@@ -0,0 +1,1507 @@
+%D \module
+%D [ file=t-pocketdiary,
+%D version=2022.07.05,
+%D title=\CONTEXT\ User Module,
+%D subtitle=PocketDiary,
+%D author=Willi Egger,
+%D date=\currentdate,
+%D copyright=Willi Egger,
+%D email=w.egger@boede.nl,
+%D license=Public Domain]
+
+\startmodule[pocketdiary]
+
+\writestatus{loading}{ConTeXt User Module / PocketDiary}
+
+%D \startsubject[title={Introduction}]
+%D
+%D It is already some time ago, that my brother Heinz asked me to prepare him a
+%D special page-arrangement scheme.
+%D This scheme is suitable to form a section with a single-sided printed sheet
+%D of paper.
+%D He wanted to use it for special kind of greeting-cards. By coincidence I
+%D detected an article by U. Ziegenhagen in de \TEX nische
+%D Kommödie nr. 3/2010. This article deals with the preparation of a PocketMod,
+%D which is a personal organizer
+%D based on the mentioned arranging scheme. In the article there is also a
+%D link mentioned to an online
+%D version of the PocketMod. (http://www.pocketmod.com/).
+%D -- After reading the article and visiting the web-site I got
+%D intrigued by the fact, that \CONTEXT\ has built in arranging capabilities
+%D and
+%D due to the \LUATEX\ engine and herewith the possibility to perform
+%D calculations in Lua it
+%D should be possible to build such a personal organizer in \CONTEXT.
+%D
+%D The result is contained in this module. I would like to thank Hans Hagen
+%D and Taco Hoekwater for the great
+%D \LUATEX\ machinery and Wolfgang Schuster for supporting me in tackling
+%D the multi-lingual interface.
+%D
+%D After the first version in 2011, we are now 11 years older, a lot
+%D has changed in and around the \CONTEXT
+%D -machinery. We are now using \LMTX\ (\LUAMETATEX ) the latest development.
+%D
+%D During the \CONTEXT -meeting 2021 Thomáš Hála presented his solution
+%D for generating an agenda, while the shops were closed during the Covid-19
+%D pandemic. Discussing issues with calendars revealed, that it could be
+%D interesting to integrate into a calendar also data concerning the moon
+%D phase and possibly information on the sun rise and sun set time.
+%D
+%D I thought, that I would like to do such calculations and give it a try.
+%D After having found information how to perform such astronomical
+%D calculations, slowly two new modules appeared. The calculations of the
+%D moon phases is quite straight forward and this can be considered the
+%D easy part of the new development. The only remark must be made, that
+%D those calculations are not super accurate. A deviation of about 1 day has
+%D to be accepted.
+%D
+%D Finding a way to calculate the sun rise and sun set times is much more
+%D tedious. Collecting articles on such calculations and building the
+%D formulas in Lua is not the issue, but that the given information in those
+%D articles looks
+%D incomplete for a layman like me. -- Finally I found a Lua-module written for
+%D an
+%D application for presenting the required data on screen (the reference
+%D to the authors is given in the Lua-file for the sun data calculations).
+%D I adapted
+%D this to Lua/\CONTEXT\ and it looks like it works fine. -- I have a Raspberry
+%D Pi Nano with a screen attached where I display weather information together
+%D with the sun data, which are fetched from the Open Weather Map
+%D (https://openweathermap.org). Due to the fact that the development of the
+%D solar data module took a long time I was able to compare the calculated
+%D results with those displayed on the Raspberry Pi screen. Happily they are
+%D completely congruent.
+%D
+%D \blank[big]
+%D
+%D Without the help of Hans Hagen, this module would not have been finished. I
+%D would like to thank him for all the support and patience with my struggles!
+%D \stopsubject
+
+%D \startsubject[title={Subpaths}]
+
+%D In order to keep the hole module clearly organized the moon phase
+%D as well as the sun rise/set calculation files are situated in
+%D separate folders.
+%D We tell \CONTEXT\ where to find the requested files
+
+\usepath[{Moonphase,Solar}]
+
+%D \stopsubject
+
+%D \startsubject[title={Lua-files}]
+%D All calculations for dates are performed with Lua functions.
+%D The functions are contained in \type{t-calendar.lua}
+
+%\ctxloadluafile{t-calendar}{}
+\ctxloadluafile{t-calendar}{}
+
+%D The calculations for the moon phase are done by Lua functions.
+%D The functions are contained in \type{t-moonphase.lua}
+%D in the folder \quotation{Moonphase}
+
+\ctxloadluafile{t-moonphase}{}
+
+%D The calculations for the sun rise and set time are calculated in Lua too.
+%D The
+%D functions are contained in the file \type{t-solar.lua} in the folder
+%D \quotation{Solar}
+
+\ctxloadluafile{t-solar}{}
+%D \stopsubject
+
+%D \startsubject[title={International interface}]
+%D
+%D The PocketDiary is aware of different languages. The language to be used is
+%D selected with \type{\mainlanguage[en]}. The following interfaces
+%D are available
+%D
+%D \startitemize[2,packed]
+%D \item Englisch interface
+%D \item Dutch interface
+%D \item German interface
+%D \item Italian interface
+%D \item French interface
+%D \item Spanish interface
+%D \item Polish interface
+%D \stopitemize
+%D \stopsubject
+
+%D English interface
+\setuplabeltext[en][calendar=Calendar]
+\setuplabeltext[en][weekagenda=Week calendar]
+\setuplabeltext[en][week=Week]
+\setuplabeltext[en][month=Month]
+\setuplabeltext[en][contact=Contact]
+\setuplabeltext[en][name=Name]
+\setuplabeltext[en][address=Address]
+\setuplabeltext[en][zip=Zip]
+\setuplabeltext[en][place=Place]
+\setuplabeltext[en][country=Country]
+\setuplabeltext[en][phone=Phone]
+\setuplabeltext[en][mail=e-mail]
+\setuplabeltext[en][notes=Notes]
+\setuplabeltext[en][todo=Todo]
+\setuplabeltext[en][found={If found\textcomma\ please return to:}]
+
+\setuplabeltext[en][nyd={New Year's Day}]
+\setuplabeltext[en][epi={Epiphany}]
+\setuplabeltext[en][ashw={Ash Wednesday}]
+\setuplabeltext[en][palms={Palm Sunday} ]
+\setuplabeltext[en][gfri={Good Friday} ]
+\setuplabeltext[en][esun={Easter Sunday}]
+\setuplabeltext[en][esmo={Easter Monday}]
+\setuplabeltext[en][ascd={Ascension Day}]
+\setuplabeltext[en][pcst=Pentecost]
+\setuplabeltext[en][pcstmo={Pentecost Monday}]
+\setuplabeltext[en][xmas=Christmas]
+\setuplabeltext[en][bxd={Boxing Day}]
+\setuplabeltext[en][day=Day]
+\setuplabeltext[en][mon=Mon]
+\setuplabeltext[en][tue=Tue]
+\setuplabeltext[en][wed=Wed]
+\setuplabeltext[en][thu=Thu]
+\setuplabeltext[en][fri=Fri]
+\setuplabeltext[en][sat=Sat]
+\setuplabeltext[en][sun=Sun]
+
+\setuplabeltext[en][january=January]
+\setuplabeltext[en][february=February]
+\setuplabeltext[en][march=March]
+\setuplabeltext[en][april=April]
+\setuplabeltext[en][may=May]
+\setuplabeltext[en][june=June]
+\setuplabeltext[en][july=July]
+\setuplabeltext[en][august=August]
+\setuplabeltext[en][september=September]
+\setuplabeltext[en][october=October]
+\setuplabeltext[en][november=November]
+\setuplabeltext[en][december=December]
+
+\setuplabeltext[en][moondays=Lunar days]
+\setuplabeltext[en][moon=Moon]
+\setuplabeltext[en][sunrise=Sunrise]
+\setuplabeltext[en][sunset=Sunset]
+\setuplabeltext[en][lighthours=Lighthours]
+\setuplabeltext[en][sunstar=Sun]
+
+%D German interface
+\setuplabeltext[de][calendar=Planer] % Terminkalender, Kalender
+\setuplabeltext[de][weekagenda=Wochenagenda]
+\setuplabeltext[de][week=Woche]
+\setuplabeltext[de][month=Monat]
+\setuplabeltext[de][contact=Kontakt]
+\setuplabeltext[de][name=Name]
+\setuplabeltext[de][address=Adresse]
+\setuplabeltext[de][zip=Postleitzahl]
+\setuplabeltext[de][place=Ort]
+\setuplabeltext[de][country=Land]
+\setuplabeltext[de][phone=Telefon]
+\setuplabeltext[de][mail=e-Mail]
+\setuplabeltext[de][notes=Notizen]
+\setuplabeltext[de][todo={Zu erledigen}]
+\setuplabeltext[de][found={Wenn gefunden\textcomma\ bitte retournieren an:}]
+
+\setuplabeltext[de][nyd=Neujahr]
+\setuplabeltext[de][epi=Dreikönigstag]
+\setuplabeltext[de][ashw=Aschermittwoch]
+\setuplabeltext[de][palms=Palmsonntag]
+\setuplabeltext[de][gfri=Karfreitag]
+\setuplabeltext[de][esun=Ostern]
+\setuplabeltext[de][esmo=Ostermontag]
+\setuplabeltext[de][ascd=Himmelfahrt]
+\setuplabeltext[de][pcst=Pfingsten]
+\setuplabeltext[de][pcstmo=Pfingstmontag]
+\setuplabeltext[de][xmas=Weihnachten]
+\setuplabeltext[de][bxd=Stephanstag]
+\setuplabeltext[de][day=Tag]
+\setuplabeltext[de][mon=Mo]
+\setuplabeltext[de][tue=Di]
+\setuplabeltext[de][wed=Mi]
+\setuplabeltext[de][thu=Do]
+\setuplabeltext[de][fri=Fr]
+\setuplabeltext[de][sat=Sa]
+\setuplabeltext[de][sun=So]
+
+\setuplabeltext[de][january=Januar]
+\setuplabeltext[de][february=Februar]
+\setuplabeltext[de][march=März]
+\setuplabeltext[de][april=April]
+\setuplabeltext[de][may=Mai]
+\setuplabeltext[de][june=Juni]
+\setuplabeltext[de][july=Juli]
+\setuplabeltext[de][august=August]
+\setuplabeltext[de][september=September]
+\setuplabeltext[de][october=Oktober]
+\setuplabeltext[de][november=November]
+\setuplabeltext[de][december=Dezember]
+
+\setuplabeltext[de][moondays=Mondtage]
+\setuplabeltext[de][moon=Mond]
+\setuplabeltext[de][sunrise=Sonnenaufgang]
+\setuplabeltext[de][sunset=Sonnenuntergang]
+\setuplabeltext[de][lighthours=Taglichtstunden]
+\setuplabeltext[de][sunstar=Sonne]
+
+%D Dutch interface
+\setuplabeltext[nl][calendar=Kalender]
+\setuplabeltext[nl][weekagenda=Weekagenda]
+\setuplabeltext[nl][week=Week]
+\setuplabeltext[nl][month=Maand]
+\setuplabeltext[nl][contact=Kontakt]
+\setuplabeltext[nl][name=Naam]
+\setuplabeltext[nl][address=Adres]
+\setuplabeltext[nl][zip=Postcode]
+\setuplabeltext[nl][place=Plaats]
+\setuplabeltext[nl][country=Land]
+\setuplabeltext[nl][phone=Tel.]
+\setuplabeltext[nl][mail=e-mail]
+\setuplabeltext[nl][notes=Notities]
+\setuplabeltext[nl][todo=Todo]
+\setuplabeltext[nl][found={Wanneer gevonden\textcomma\ aub sturen naar:}]
+
+\setuplabeltext[nl][nyd={Nieuw jaar}]
+\setuplabeltext[nl][epi=Driekoningen]
+\setuplabeltext[nl][ashw=Aswoensdag]
+\setuplabeltext[nl][palms=Palmpasen]
+\setuplabeltext[nl][gfri={Goede vrijdag}]
+\setuplabeltext[nl][esun=Pasen]
+\setuplabeltext[nl][esmo={2\high{de} Paasdag}]
+\setuplabeltext[nl][ascd=Hemelvaart]
+\setuplabeltext[nl][pcst=Pinksteren]
+\setuplabeltext[nl][pcstmo={2\high{de} Pinksterdag}]
+\setuplabeltext[nl][xmas=Kerst]
+\setuplabeltext[nl][bxd={2\high{de} Kerstdag}]
+\setuplabeltext[nl][day=Dag]
+\setuplabeltext[nl][mon=Ma]
+\setuplabeltext[nl][tue=Di]
+\setuplabeltext[nl][wed=Woe]
+\setuplabeltext[nl][thu=Do]
+\setuplabeltext[nl][fri=Fr]
+\setuplabeltext[nl][sat=Za]
+\setuplabeltext[nl][sun=Zo]
+
+\setuplabeltext[nl][january=Januari]
+\setuplabeltext[nl][february=Febrari]
+\setuplabeltext[nl][march=Maart]
+\setuplabeltext[nl][april=April]
+\setuplabeltext[nl][may=Mei]
+\setuplabeltext[nl][june=Juni]
+\setuplabeltext[nl][july=Juli]
+\setuplabeltext[nl][august=Augustus]
+\setuplabeltext[nl][september=September]
+\setuplabeltext[nl][october=October]
+\setuplabeltext[nl][november=November]
+\setuplabeltext[nl][december=December]
+
+\setuplabeltext[nl][moondays=Maandagen]
+\setuplabeltext[nl][moon=Maan]
+\setuplabeltext[nl][sunrise=Zonsopg.]
+\setuplabeltext[nl][sunset=Zonsonderg.]
+\setuplabeltext[nl][lighthours=Lichturen]
+\setuplabeltext[nl][sunstar=Zon]
+
+%D French interface
+\setuplabeltext[fr][calendar=Calendrier]
+\setuplabeltext[fr][weekagenda={Cal. de la semaine}]
+\setuplabeltext[fr][week=Sem.]
+\setuplabeltext[fr][month=Mois]
+\setuplabeltext[fr][contact=Contact]
+\setuplabeltext[fr][name=Nom]
+\setuplabeltext[fr][address=Adresse]
+\setuplabeltext[fr][zip=CP]
+\setuplabeltext[fr][place=Lieu]
+\setuplabeltext[fr][country=Pays]
+\setuplabeltext[fr][phone=Tél.]
+\setuplabeltext[fr][mail=e-mail]
+\setuplabeltext[fr][notes=Observations]
+\setuplabeltext[fr][todo=Tâches]
+\setuplabeltext[fr][found={Si trouvé\textcomma\ retourner s.v.p. à: }]
+
+\setuplabeltext[fr][nyd={Jour de l'an}]
+\setuplabeltext[fr][epi={Épiphany}]
+\setuplabeltext[fr][ashw={Mercredi des Cendres}]
+\setuplabeltext[fr][palms={Dimanche des Rameaux}]
+\setuplabeltext[fr][gfri={Vendredi saint}]
+\setuplabeltext[fr][esun={Pâques}]
+\setuplabeltext[fr][esmo={Lundi de Pâques}]
+\setuplabeltext[fr][ascd={Jour de l'ascension}]
+\setuplabeltext[fr][pcst=Pentecôte]
+\setuplabeltext[fr][pcstmo={Lundi de Pentecôte}]
+\setuplabeltext[fr][xmas=Noël]
+\setuplabeltext[fr][bxd=]
+\setuplabeltext[fr][day=Jour]
+\setuplabeltext[fr][mon=Lun]
+\setuplabeltext[fr][tue=Mar]
+\setuplabeltext[fr][wed=Mer]
+\setuplabeltext[fr][thu=Jeu]
+\setuplabeltext[fr][fri=Ven]
+\setuplabeltext[fr][sat=Sam]
+\setuplabeltext[fr][sun=Dim]
+
+\setuplabeltext[fr][january=Janvier]
+\setuplabeltext[fr][february=Février]
+\setuplabeltext[fr][march=Mars]
+\setuplabeltext[fr][april=Avril]
+\setuplabeltext[fr][may=Mai]
+\setuplabeltext[fr][june=Juin]
+\setuplabeltext[fr][july=Juillet]
+\setuplabeltext[fr][august=Août]
+\setuplabeltext[fr][september=Septembre]
+\setuplabeltext[fr][october=Octobre]
+\setuplabeltext[fr][november=Novembre]
+\setuplabeltext[fr][december=Décembre]
+
+\setuplabeltext[fr][moondays=Jours lun.] % jours lunaires
+\setuplabeltext[fr][moon=Lune]
+\setuplabeltext[fr][sunrise=Lever du s.] %soleil
+\setuplabeltext[fr][sunset=Coucher du s.] %soleil
+\setuplabeltext[fr][lighthours=Heures de l.] %lumière
+\setuplabeltext[fr][sunstar=Soleil]
+
+% Italian interface
+\setuplabeltext[it][calendar=Calendario]
+\setuplabeltext[it][weekagenda=Calendario di settimana]
+\setuplabeltext[it][week=Sett.] %Settimana
+\setuplabeltext[it][month=Mese]
+\setuplabeltext[it][contact=Contatto]
+\setuplabeltext[it][name=Nome]
+\setuplabeltext[it][address=Indirizzo]
+\setuplabeltext[it][zip=C.A.P.]
+\setuplabeltext[it][place=Luogo]
+\setuplabeltext[it][country=Paese]
+\setuplabeltext[it][phone=Tel.]
+\setuplabeltext[it][mail=e-mail]
+\setuplabeltext[it][notes=Osservazioni]
+\setuplabeltext[it][todo=Compiti]
+\setuplabeltext[it][found={Se trovato\textcomma\ prego speditelo à:}]
+
+%D Italian interface
+\setuplabeltext[it][nyd=Capodanno]
+\setuplabeltext[it][epi={Epifania}]
+\setuplabeltext[it][ashw={Giorno delle Ceneri}]
+\setuplabeltext[it][palms={Domenica delle Palme}]
+\setuplabeltext[it][gfri={Venerdi santo}]
+\setuplabeltext[it][esun=Pasqua]
+\setuplabeltext[it][esmo={Lunedì dell'Angelo}]
+\setuplabeltext[it][ascd=Ascensione]
+\setuplabeltext[it][pcst=Pentecoste]
+\setuplabeltext[it][pcstmo={Lunedì di Pentecoste}]
+\setuplabeltext[it][xmas=Natale]
+\setuplabeltext[it][bxd={Giorno di S. Stefano}]
+\setuplabeltext[it][day=Giorno]
+\setuplabeltext[it][mon=Lun]
+\setuplabeltext[it][tue=Mar]
+\setuplabeltext[it][wed=Mer]
+\setuplabeltext[it][thu=Gio]
+\setuplabeltext[it][fri=Ven]
+\setuplabeltext[it][sat=Sab]
+\setuplabeltext[it][sun=Dom]
+
+\setuplabeltext[it][january=Gennaio]
+\setuplabeltext[it][february=Febbraio]
+\setuplabeltext[it][march=Marzo]
+\setuplabeltext[it][april=Aprile]
+\setuplabeltext[it][may=Maggio]
+\setuplabeltext[it][june=Giugno]
+\setuplabeltext[it][july=Luglio]
+\setuplabeltext[it][august=Agosto]
+\setuplabeltext[it][september=Settembre]
+\setuplabeltext[it][october=Ottobre]
+\setuplabeltext[it][november=Novembre]
+\setuplabeltext[it][december=Dicembre]
+
+\setuplabeltext[it][moondays=Giorni lun.] %Giorni lunari
+\setuplabeltext[it][moon=Luna]
+\setuplabeltext[it][sunrise=Albo]
+\setuplabeltext[it][sunset=Tramonto]
+\setuplabeltext[it][lighthours={O. di luce}] %Ore di luce
+\setuplabeltext[it][sunstar=Sole]
+
+%D Spanish interface
+\setuplabeltext[es][calendar=Agenda]
+\setuplabeltext[es][weekagenda=Agenda semanal]
+\setuplabeltext[es][week=Sem.] %Semana
+\setuplabeltext[es][month=Mes]
+\setuplabeltext[es][contact=Contacto]
+\setuplabeltext[es][name=Nombre]
+\setuplabeltext[es][address=Dirección]
+\setuplabeltext[es][zip=C.P.]
+\setuplabeltext[es][place=Población]
+\setuplabeltext[es][country=País]
+\setuplabeltext[es][phone=Tel.]
+\setuplabeltext[es][mail=Correo-e]
+\setuplabeltext[es][notes=Observaciones]
+\setuplabeltext[es][todo=Pendiente]
+\setuplabeltext[es][found={Por favor\textcomma\ devuélvalo a:}]
+
+\setuplabeltext[es][nyd=Año Nuevo]
+\setuplabeltext[es][epi={Reyes Magos}]
+\setuplabeltext[es][ashw={Miércoles de Ceniza}]
+\setuplabeltext[es][palms={Domingo de Palmas}]
+\setuplabeltext[es][gfri={Viernes santo}]
+\setuplabeltext[es][esun=Domingo de Pascua]
+\setuplabeltext[es][esmo={Lunes de Pascua}]
+\setuplabeltext[es][ascd=Ascensión]
+\setuplabeltext[es][pcst=Pentecostes]
+\setuplabeltext[es][pcstmo={Lunes de Pentecostes}]
+\setuplabeltext[es][xmas=Navidad]
+\setuplabeltext[es][bxd={San Esteban}]
+\setuplabeltext[es][day=Día]
+\setuplabeltext[es][mon=Lu]
+\setuplabeltext[es][tue=Ma]
+\setuplabeltext[es][wed=Mi]
+\setuplabeltext[es][thu=Ju]
+\setuplabeltext[es][fri=Vi]
+\setuplabeltext[es][sat=Sá]
+\setuplabeltext[es][sun=Do]
+
+\setuplabeltext[es][january=Enero]
+\setuplabeltext[es][february=Febrero]
+\setuplabeltext[es][march=Marzo]
+\setuplabeltext[es][april=Abril]
+\setuplabeltext[es][may=Mayo]
+\setuplabeltext[es][june=Junio]
+\setuplabeltext[es][july=Julio]
+\setuplabeltext[es][august=Agosto]
+\setuplabeltext[es][september=Septiembre]
+\setuplabeltext[es][october=Octubre]
+\setuplabeltext[es][november=Noviembre]
+\setuplabeltext[es][december=Diciembre]
+
+\setuplabeltext[es][moondays=Días lunares]
+\setuplabeltext[es][moon=Luna]
+\setuplabeltext[es][sunrise=Alba]
+\setuplabeltext[es][sunset=Ocaso]
+\setuplabeltext[es][lighthours={Horas de luz}]
+\setuplabeltext[es][sunstar=Sol]
+
+%D Polish interface
+\setuplabeltext[pl][calendar=Kalendarz]
+\setuplabeltext[pl][weekagenda={Kalendarz tygodniowy}]
+\setuplabeltext[pl][week=Tydzień]
+\setuplabeltext[pl][month=Miesiąc]
+\setuplabeltext[pl][contact=Kontakt]
+\setuplabeltext[pl][name=Nazwisko]
+\setuplabeltext[pl][address=Adres]
+\setuplabeltext[pl][zip=Kod pocztowy]
+\setuplabeltext[pl][place=Miejsce zamieszkania]
+\setuplabeltext[pl][country=Kraj]
+\setuplabeltext[pl][phone=Telefon]
+\setuplabeltext[pl][mail=e-mail]
+\setuplabeltext[pl][notes=Notatki]
+\setuplabeltext[pl][todo=Do zrobienia]
+\setuplabeltext[pl][found={W przypadku znalezienia proszę o odesłanie na adres}]
+
+\setuplabeltext[pl][nyd={Nowy Rok}]
+\setuplabeltext[pl][epi={Trzech Króli}]
+\setuplabeltext[pl][ashw={Środa Popielcowa}]
+\setuplabeltext[pl][palms={Niedziela Palmowa} ]
+\setuplabeltext[pl][gfri={Wielki Piątek} ]
+\setuplabeltext[pl][esun={Niedziela Wielkanocna}]
+\setuplabeltext[pl][esmo={Pn. Wielkanocny}]
+\setuplabeltext[pl][ascd={Wniebowstąpienie}]
+\setuplabeltext[pl][pcst={Zesłanie Ducha Świętego}]
+\setuplabeltext[pl][pcstmo={}]
+\setuplabeltext[pl][xmas=Święta] %Święta Bożego Narodzenia .
+\setuplabeltext[pl][bxd={Drugi dzień świąt}]
+\setuplabeltext[pl][day=Dzień]
+\setuplabeltext[pl][mon=Pn.]
+\setuplabeltext[pl][tue=Wt.]
+\setuplabeltext[pl][wed=Śr.]
+\setuplabeltext[pl][thu=Czw.]
+\setuplabeltext[pl][fri=Pt.]
+\setuplabeltext[pl][sat=Sob.]
+\setuplabeltext[pl][sun=Ndz.]
+
+\setuplabeltext[pl][january=Styczeń]
+\setuplabeltext[pl][february=Luty]
+\setuplabeltext[pl][march=Marzec]
+\setuplabeltext[pl][april=Kwiecień]
+\setuplabeltext[pl][may=Maj]
+\setuplabeltext[pl][june=Czerwiec]
+\setuplabeltext[pl][july=Lipiec]
+\setuplabeltext[pl][august=Sierpień]
+\setuplabeltext[pl][september=Wrzesień]
+\setuplabeltext[pl][october=Październik]
+\setuplabeltext[pl][november=Listopad]
+\setuplabeltext[pl][december=Grudzień]
+
+\setuplabeltext[pl][moondays=Dzień lunarny]
+\setuplabeltext[pl][moon=Księżyc]
+\setuplabeltext[pl][sunrise={Wschód słońca}]
+\setuplabeltext[pl][sunset={Zachód słońca}]
+\setuplabeltext[pl][lighthours=Długość dnia]
+\setuplabeltext[pl][sunstar=Słońce]
+
+%D \startsubject[title={PocketDiary layout}]
+%D
+%D This module uses different page templates, whereof one uses a symbol
+%D out of the set 2 of the Martin Vogel collection. So we load these symbols:
+
+\usesymbols[mvs]
+\setupsymbolset[martinvogel 2]
+
+%D The placement of the page numbers is switched off for the moment.
+
+\setuppagenumbering[location=]
+
+%D Because we will place 8 pages on an A4 landscape, we define our own pagesize
+
+\definepapersize[Arrangingformat][width=7.42cm, height=10.5cm]
+\setuppapersize[Arrangingformat][A4,landscape]
+
+%D In the templates a light gray color for (grid)lines is used. Separator
+%D lines can have
+%D an individual color too. We define the two colors with arbitrary values.
+%D These preset colors can be adjusted in the user file \type{PocketDiary.tex}.
+
+\definecolor[Grid][s=.75]
+\definecolor[Separatorline][blue]
+
+%D The page of the PocketDiary has a fairly simple layout. We use a
+%D header- and a footer-space.
+%D The header has a rule beneath and the footer one on top.
+%D
+%D The preset body-font is Pagella at 10pt
+%D
+%D We will also use tabular figures throughout the typesetting:
+%D \stopsubject
+
+\setuplayout
+ [topspace=.6cm,
+ backspace=.6cm,
+ header=3\bodyfontsize,
+ headerdistance=.5\bodyfontsize,
+ footer=1.2\bodyfontsize,
+ footerdistance=.5\bodyfontsize,
+ margin=0pt,
+ height=middle,
+ width=middle]
+
+\setupbackgrounds
+ [header]
+ [text]
+ [state=repeat,
+ frame=off,
+ bottomframe=on,
+ framecolor=\getvariable{PocketDiaryColors}{Separatorline}]
+
+\setupbackgrounds
+ [footer]
+ [text]
+ [state=repeat,
+ frame=off,
+ topframe=on,
+ framecolor=\getvariable{PocketDiaryColors}{Separatorline}]
+
+\setupbodyfont[pagella,rm,10pt]
+\definefontfeature[f:tabular] [tnum=yes]
+\definefontfeature[f:smallcaps][smcp=yes]
+
+\addfeature[f:tabular]
+
+%D \startsubject[title={\METAFUN\ drawings}]
+%D
+%D There are three templates which are made up in \METAPOST. The drawings are
+%D used as backgrounds to the typesetting area in the form of an overlay. So the
+%D drawings adapt themselves to the actual dimensions
+%D \stopsubject
+
+\startuniqueMPgraphic{Caro}
+ numeric w; w:= floor(OverlayWidth/4mm);
+ numeric h; h:= floor((OverlayHeight)/4mm);
+ path p,q;
+ p := unitsquare xscaled (4mm*w) yscaled (4mm*h);
+ q:= ulcorner p -- llcorner p;
+ for i = 0 upto w :
+ draw q shifted (i*4mm,0) withpen pencircle scaled .5pt
+ withcolor \MPcolor{Grid};
+ endfor;
+ q:= llcorner p -- lrcorner p;
+ for i = 0 upto h :
+ draw q shifted (0,i*4mm) withpen pencircle scaled .5pt
+ withcolor \MPcolor{Grid};
+ endfor;
+\stopuniqueMPgraphic
+
+\startuniqueMPgraphic{Lines}
+ numeric w; w:= OverlaytWidth;
+ numeric h; h:= floor(OverlayHeight/7mm);
+ path p,q;
+ p := unitsquare xscaled OverlayWidth yscaled (7mm*(h-1));
+ q:= llcorner p -- lrcorner p;
+ for i = 1 upto (h-1) :
+ draw q shifted (0,i*7mm) withpen pencircle scaled .5pt
+ withcolor \MPcolor{Grid};
+ endfor;
+\stopuniqueMPgraphic
+
+\startuniqueMPgraphic{Todo}
+ numeric w; w:= OverlayWidth;
+ numeric h; h:= floor(OverlayHeight/8mm);
+ path p,q;
+ p := unitsquare xscaled OverlayWidth yscaled OverlayHeight;
+ q:= llcorner p -- lrcorner p;
+ for i = 0 upto h :
+ draw q shifted (0,i*7mm) withpen pencircle scaled .5pt
+ withcolor \MPcolor{Grid};
+ label.top(textext("\tfd \symbol[HollowBox]"), point 0 of q
+ shifted (2mm,i*7mm));
+ endfor;
+\stopuniqueMPgraphic
+
+%D \startsubject[title={The moon phase}]
+%D
+%D The moon phase calculation from SubsySTEMs, an American education institute,
+%D for this module is based on a simple calculation.
+%D The consequence is, that the results give a good idea only of the moon phase
+%D but this is most probably precise enough for the purpose of the diary.
+%D The return value of the moon phase calculation can be either a number,
+%D representing the day number in the lunar month, or a command to put a
+%D \METAFUN -graphic (New moon, growing moon, full moon, waning moon).
+%D These little graphics are stored in the file \type{moons-MP.tex}.
+
+\input moons-MP
+
+%D In this file 4 overlays are defined which are used in a dedicated
+%D \type{\framed[]{}} to typeset the pictograms.
+%D
+%M \input ./Moonphase/moons-MP
+%M \defineoverlay[waningmoon][\useMPgraphic{Moon::Waning_moon}]
+%M \defineoverlay[growingmoon][\useMPgraphic{Moon::Growing_moon}]
+%M \defineoverlay[newmoon][\useMPgraphic{Moon::Newmoon}]
+%M \defineoverlay[fullmoon][\useMPgraphic{Moon::Fullmoon}]
+%M \defineframed
+%M [Moon]
+%M [height=1.5\bodyfontsize,
+%M width=1.5\bodyfontsize,
+%M frame=off]
+%D
+%D \starttabulate[|l|r|l|]
+%D \NC \bf Moon phase
+%D \NC \bf Lunar day
+%D \NC \bf Macro
+%D \NC \bf Pictogram \NC\NR
+%D \NC New moon
+%D \NC 0
+%D \NC \type{\Moon[background=newmoon]{}}
+%D \NC \Moon[background=newmoon]{} \NC\NR
+%D \NC Growing moon
+%D \NC 7
+%D \NC \type{\Moon[background=growingmoon]{}}
+%D \NC \Moon[background=growingmoon]{} \NC\NR
+%D \NC Full moon
+%D \NC 15
+%D \NC \type{\Moon[background=fullmoon]{}}
+%D \NC \Moon[background=fullmoon]{} \NC\NR
+%D \NC Waning moon
+%D \NC 22
+%D \NC \type{\Moon[background=waningmoon]{}}
+%D \NC \Moon[background=waningmoon]{} \NC\NR
+%D \stoptabulate
+%D \stopsubject
+
+%D \startsubject[title=Sun pictograms]
+%D
+%D The calculations for the sun rise and sun set times is based on work of
+%D Alexander Yakushev. The results of his calculations nicely correspond with
+%D results obtained from the Open Weather Map website.
+%D
+%D For sunrise, sunset and light hours exist three \METAFUN\ drawings.
+%D These are included in the directory \type{Solar} in the file
+%D \type{sun-MP.tex}.
+
+\input sun-MP
+
+%D In this file 3 overlays are defined which can then be used as a
+%D background in a dedicated framed environment.
+%M \input ./solar/sun-MP
+%M \defineoverlay[Sunrise][\useMPgraphic{Sun::Sunrise}]
+%M \defineoverlay[Sunset][\useMPgraphic{Sun::Sunset}]
+%M \defineoverlay[Light][\useMPgraphic{Sun::Light}]
+%M \defineframed
+%M [SunA]
+%M [strut=yes,
+%M height=\lineheight,
+%M width=\emwidth,
+%M frame=off,
+%M offset=0pt]
+%M
+%M \defineframed
+%M [SunB]
+%M [strut=yes,
+%M height=\lineheight,
+%M width=\emwidth,
+%M frame=off,
+%M offset=0pt,
+%M location=depth]
+%D
+%D \starttabulate[|l|l|l|]
+%D \NC \bf Sun
+%D \NC \bf Macro
+%D \NC \bf Pictogram \NC\NR
+%D \NC Sunrise
+%D \NC \type{\SunA[background=Sunrise,height=8pt]{\strut}}
+%D \NC \SunA[background=Sunrise,height=8pt]{\strut} \NC\NR
+%D \NC Sunset
+%D \NC \type{\SunA[background=Sunset,height=8pt]{\strut}}
+%D \NC \SunA[background=Sunset,height=8pt]{\strut} \NC\NR
+%D \NC Light hours
+%D \NC \type{\SunB[background=Light,height=8pt]{\strut}}
+%D \NC \SunB[background=Light,height=8pt]{\strut} \NC\NR
+%D \stoptabulate
+%D \stopsubject
+
+%D \startsubject[title={The variable sets}]
+%D
+%D The module uses six sets of variables. The first set contains
+%D the information on the
+%D calendars to be calculated.
+
+%D First of all it has to be stated, that the whole idea behind
+%D this module is to prepare a personal organizer with as few
+%D parameters as possible. After the initial setup of the variables
+%D it is sufficient to adapt the values in the first set and once
+%D every year the information on the dates of the Day Light Saving
+%D Time in the last set must be adjusted.
+%D
+%D \startsubsubject[title={Variable set \bf PocketDiary}]
+%D
+%D \starttabulate[|l|l|p|]
+%D \NC \bf Variable \NC \bf Value \NC \bf Comment \NC\NR
+%D \NC WeekDay \NC number \NC Values between 1 and 7. \NC\NR
+%D \NC Week \NC number \NC Values between 1 and 53 \NC\NR
+%D \NC Month \NC number \NC Values between 1 and 12 \NC\NR
+%D \NC Year \NC number \NC Year numbers in the range 1900 and 4099.
+%D The lower limit is computer dependent (OS-timestamp), the upper limit
+%D is depending on the Easter Sunday calculation.\crlf
+%D (http://www.assa.org.au/edm.html, R.W. Mallen, 1985).\NC\NR
+%D \NC Nextyear \NC yes/no \NC The testing is done on \quote{yes}. If set
+%D to \quote{yes} the next year instead of the current year is used for
+%D the calculation of the year calendar. \NC\NR
+%D \NC Daybyday \NC yes/no \NC The testing is done on \quote{yes}. If this
+%D variable is set to \quote{yes} then a diary is typeset with 1 page per
+%D day and the weekend is typeset with Saturday and Sunday on one page.
+%D This uses 6 pages and we can freely choose what should be typeset on
+%D the pages 7 and 8. \NC\NR
+%D \stoptabulate
+%D \stopsubsubject
+
+\setvariables
+ [PocketDiary]
+ [WeekDay=1,
+ Week=17,
+ Month=5,
+ Year=2011,
+ Nextyear=no,
+ Daybyday=no]
+
+%D \startsubsubject[title={Variable set \bf PocketDiaryLayout}]
+%D
+%D The PocketDiary can be given a layout according to your own ideas.
+%D There are 8 variables (Page1 up to Page
+%D 8) which can be given different values.
+%D
+%D \starttabulate[|l|p|]
+%D \NC \bf Variable \NC \bf Comment \NC\NR
+%D \NC Dayplan \NC The weekday indicated in the variable \quote{WeekDay}
+%D in the previous section is used to make a PocketDiary page. \NC\NR
+%D \NC Weekendplan \NC The weekend of the chosen week (variable \quote{Week})
+%D is typeset on a single page \NC\NR
+%D \NC Weekcurrentplan \NC A week calendar based on the variable
+%D \quote{Week}
+%D in the previous section is used for the presentation of a week table.
+%D \NC\NR
+%D \NC Weeknextplan \NC A week calendar based on the variable \quote{Week}
+%D $+$ 1 in the previous section is used for the presentation of the nexts
+%D week's table. \NC\NR
+%D \NC Monthcurrentplan \NC A month table based on the value in the variable
+%D \quote{Month} in the previous section is typeset. \NC\NR
+%D \NC Monthnextplan \NC A month table of the next month based on the
+%D value
+%D in the variable \quote{Month} of the previous section is typeset.
+%D \NC\NR
+%D \NC Yearcurrentplan \NC A complete year calendar of the year given in the
+%D variable \quote{Year} in the previous section is typeset. \NC\NR
+%D \NC Yearnextplan \NC If the \quote{Nextyear}
+%D variable in the previous section is \quote{yes}, then a complete year
+%D calendar for the next year indicated in the
+%D variable \quote{Year} of the previous section is typeset. \NC\NR
+%D \NC Lost-Returnto \NC A page with the indicated information in the
+%D PocketDiaryAddress variable set is used to compose and typeset
+%D a lost and return page (see next section). \NC\NR
+%D \NC Blank \NC This page carries a header and a footer but is
+%D empty for the rest. \NC\NR
+%D \NC Todo \NC A todo-list template is typeset. \NC\NR
+%D \NC Caro \NC A page with full-grid-paper is typeset. \NC\NR
+%D \NC Lines \NC A page with grid lines is typeset. \NC\NR
+%D \NC Contact \NC A form with two sets of preprinted fields
+%D for marking down contact information is typeset. \NC\NR
+%D \stoptabulate
+%D
+%D A basic setup could look as follows:
+
+\setvariables
+ [PocketDiaryLayout]
+ [Page1=Lost-Returnto,
+ Page2=Weekplan,
+ Page3=Dayplan,
+ Page4=Monthcurrentplan,
+ Page5=Blank,
+ Page6=Lines,
+ Page7=Caro,
+ Page8=Contact]
+
+%D \stopsubsubject
+%D
+%D \startsubsubject[title={Variable set \bf PocketDiaryAddress}]
+%D
+%D The third section of variables contains information used for the footer
+%D and the lost-return form.
+%D \stopsubsubject
+
+\setvariables
+ [PocketDiaryAddress]
+ [Familyname=Egger,
+ Forename=Willi,
+ Street={Townstreet 3B},
+ Zipcode=5000,
+ City={New Beach},
+ Country=TEX-world,
+ Phone={+22 444 55 88 66},
+ Mobile={+22 6 19 19 1717},
+ E-mail={info at pocketdiary.org},
+ Web=www.pocketdiary.org]
+
+%D \startsubsubject[title={Variable set \bf PocketDiaryColors}]
+%D
+%D The PocketDiary uses some color. The header and footer separator lines can
+%D be given a color. Standard color is blue.
+%D
+%D For those who want gridlines other than light gray can set a
+%D color for the gridlines too.
+%D \stopsubsubject
+
+\setvariables
+ [PocketDiaryColors]
+ [Separatorline=blue,
+ Gridline={s=.55}]
+
+%D \startsubsubject[title={Variable set \bf PocketDiaryFooter}]
+%D
+%D The footer is filled with three fields. These fields may contain the contents
+%D of variables or \TEX\ commands. The setup of the footer is done with a buffer
+%D in order to be able to call it later on.
+%D \stopsubsubject
+%D \stopsubject
+%D
+%D \startsubject[title={Footer setup}]
+%D \stopsubject
+
+\setvariables
+ [PocketDiaryFooter]
+ [Lefttext=PocketDiary,
+ Centertext=\pagenumber,
+ Righttext={\getvariable{PocketDiaryAddress}{Forename},~\currentdate[year]}] %{\currentdate[year]}
+
+\startbuffer[Footertext]
+ \setupfootertexts[%
+ \tfx
+ \getvariable{PocketDiaryFooter}{Lefttext}
+ \hfill
+ \getvariable{PocketDiaryFooter}{Centertext}
+ \hfill
+ \getvariable{PocketDiaryFooter}{Righttext}]
+\stopbuffer
+
+\getbuffer[Footertext]
+
+%D \startsubject[title={Variable set \bf PocketDiaryGeoPosition}]
+%D
+%D For the sun data calculations you need to know the latitude and longitude of
+%D your location.
+%D
+%D For correct calculations you need also to pass the timezone offset to Lua.
+%D
+%D The dates for the begin and end of the day light saving time (DST)
+%D are calculated based on the continent information. Possible values are
+%D \quote{EU} and \quote{US}. If the field is empty, then no DST is calculated.
+%D
+%D For the US (except for Arizona and Hawaii) currently the DST starts on the
+%D second Sunday of March and ends on the first Sunday of November.
+%D
+%D for Europe currently the DST starts on the last Sunday of March and ends on
+%D the last Sunday of October.
+%D
+%D Sun data are typeset on the \quote{Dayplan} and \quote{Weekendplan} as well
+%D as on Tuesdays in the week-calendar.
+%D \stopsubject
+
+\setvariables %Koziegłowy
+ [PocketDiaryGeoPosition]
+ [lat=52.467860,
+ lon=16.981240,
+ timeoffset=1,
+ continent=EU]
+
+%D \startsubject[title={The various calendar pages}]
+%D
+%D Most of the activities for creating the contents and layout of the
+%D different pages like day, weekend, week, month and year calendars
+%D is delegated to Lua. Those pages are made-up as
+%D \CONTEXT -Lua-documents (cld).
+%D We preload the Lua -file with
+
+\ctxloadluafile{t-pocketdiary}{}
+
+%D \startsubsubject[title={Day plan}]
+%D
+%D \startplacefigure
+%D [location={middle,here},
+%D reference=fig:Singleday,
+%D title={Example Day-calendar}]
+%D {\externalfigure[docu-figures][page=1,width=.4\textwidth,frame=on]}
+%D \stopplacefigure
+%D
+%D The day calendar looks as in \in{figure}[fig:Singleday].
+%D
+%D Next to the day number of the selected month the day name is given. If the
+%D day is a christian feast day, its name is following after the day name.
+%D To the right the week number and the year is typeset.
+%D
+%D The configuration of the page looks as follows:
+
+\startsetups table:topinfo
+ \setupTABLE[each][each][frame=off]
+ \setupTABLE[r][1][offset=0pt,loffset=1pt,roffset=1pt,align=lohi] % Date row
+ \setupTABLE[r][2][height=1.3\bodyfontsize] % Astronomy row
+ \setupTABLE[c][1][style=bold,width=0.25\textwidth,align=lohi] % Day
+ \setupTABLE[c][2][width=0.35\textwidth,align=lohi] % Feastname column
+ \setupTABLE[c][3][width=0.4\textwidth,
+ align={flushright,lohi}] % Month / year column
+\stopsetups
+
+\startsetups table:topweekplan
+ \setupTABLE[each][each][frame=off]
+ \setupTABLE[r][1][offset=0pt,loffset=3pt,roffset=3pt,align=lohi] % Date row
+ \setupTABLE[c][1][style=bold,width=0.5\textwidth,align=lohi] % Name
+ \setupTABLE[c][2][style={\switchtobodyfont[6pt]},width=0.5\textwidth,
+ align={flushright,lohi}] % Week, year
+\stopsetups
+
+%D For the creation of the page a command with 8 parameters is defined:
+
+\define[8]\Dayplan{\ctxlua{thirddata.diary.dayplan(#1,#2,#3,#4,#5,#6,#7,#8)}}
+
+%D The Dayplan-command with the collected parameters is placed in a buffer. This buffer is later called from the user-file \type{PocketDiary.tex} .
+
+\startbuffer[Dayplan]
+ \Dayplan %Weekday,Week,Month,Year,lat,lon,timeoffset,continent
+ {\getvariable{PocketDiary}{WeekDay}}
+ {\getvariable{PocketDiary}{Week}}
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+\stopbuffer
+
+%D \stopsubsubject
+
+%D \startsubsubject[title={Weekend}]
+%D
+%D The weekend calendar shows Saturday and Sunday on one page
+%D (see \in{figure}[fig:Weekend]).
+%D
+%D The typeset data are identical to those of the \quote{Dayplan}
+%D
+%D \startplacefigure
+%D [location={middle,here},
+%D reference=fig:Weekend,
+%D title={Example Weekend-calendar}]
+%D {\externalfigure[docu-figures][page=2,width=.4\textwidth,frame=on]}
+%D \stopplacefigure
+
+%D Comparable to the Dayplan the Weekendplan command is defined with 8 parameters.
+
+\define[8]\Weekendplan{\ctxlua{thirddata.diary.weekendplan(#1,#2,#3,#4,#5,#6,#7,#8)}}
+
+%D Again this command with the collected information of the 8 parameters is placed in a buffer which is called then from the user-file \type{PocketDiary.tex} .
+
+\startbuffer[Weekendplan]
+ \Weekendplan %Weekday,Week,Month,Year,lat,lon,timeoffset,continent
+ {6}
+ {\getvariable{PocketDiary}{Week}}
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+\stopbuffer
+
+%D \stopsubsubject
+
+%D \startsubsubject[title={Week plan and next week plan}]
+%D
+%D The week calendar is a one-column table for working days.
+%D Saturday and Sunday are placed next to each other in the last table row. An
+%D example is given
+%D in \in{figure}[fig:Week].
+%D
+%D In the \quote{Weekplan} header appears \quote{Weeek agenda} or its
+%D correspondent name in the supported languages. To the right the month's
+%D number, weeknumber and year are typeset.
+
+%D \startplacefigure
+%D [location={middle,here},
+%D reference=fig:Week,
+%D title={Example Week-calendar}]
+%D {\externalfigure[docu-figures][page=3,width=.4\textwidth,frame=on]}
+%D \stopplacefigure
+%D By means of a setups-sequence the table is defined as follows:
+
+\startsetups table:week
+ \setupTABLE[r][each][height=.158\textheight,align=flushleft] %.165
+ \setupTABLE[r][even][background=color,backgroundcolor=.5s]
+ \setupTABLE[c][1][width=.5\textwidth]
+ \setupTABLE[c][2][width=.5\textwidth]
+\stopsetups
+
+%D Again the Weekcurrentplan-command is defined with 8 parameters
+
+\define[8]\Weekcurrentplan{\ctxlua{thirddata.diary.weekplan(#1,#2,#3,#4,#5,#6,#7,#8)}}
+
+%D And the command together with the gathered parameters is stored in a buffer, which will be used by the user-file \type{PocketDiary.tex} .
+
+\startbuffer[Weekcurrentplan]
+ \Weekcurrentplan %Weekday,Week,Month,Year,lat,lon,timeoffset,continent
+ {1}
+ {\getvariable{PocketDiary}{Week}}
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+ \page[yes]
+\stopbuffer
+
+%D Similar to the week plan the next week plan is built.
+
+\define[8]\Weeknextplan{\ctxlua{thirddata.diary.weekplan(#1,#2,#3,#4,#5,#6,#7,#8)}}
+
+\startbuffer[Weeknextplan]
+ \Weeknextplan %Weekday,Week,Month,Year,lat,lon,timeoffset,dst_start,dst_stop
+ {1}
+ {\directlua{tex.print{\getvariable{PocketDiary}{Week}+1}}}
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+ \page[yes]
+\stopbuffer
+
+%D \stopsubsubject
+
+%D \startsubsubject[title={Month current and month next}]
+%D
+%D The month calendar looks as in \in{figure}[fig:Month].
+%D
+%D Left in the header appears the month name in the chosen language. To the
+%D right the year is typeset.
+%D
+%D \startplacefigure
+%D [location={middle,here},
+%D reference=fig:Month,
+%D title={Example Month-calendar}]
+%D {\externalfigure[docu-figures][page=4,width=.4\textwidth,frame=on]}
+%D \stopplacefigure
+%D In the same fashion as the previous items also the month and
+%D next month calendars are defined respectively setup:
+
+\startsetups table:month
+ \setupTABLE[column][each][width=.143\textwidth,align=flushright,offset=3pt]
+ \setupTABLE[column][7][style=\red]
+\stopsetups
+
+%D For the Month-calendars we need only two parameters: month and year.
+
+\define[2]\Monthcurrentplan{\ctxlua{thirddata.diary.monthcurrentplan(#1,#2)}}
+
+%D The command is kept together with the gathered parameters in a buffer again.
+%D This will be called from the user-file \type{PocketDiary.tex} .
+
+\startbuffer[Monthcurrentplan]
+ \Monthcurrentplan
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+\stopbuffer
+
+\define[2]\Monthnextplan{\ctxlua{thirddata.diary.monthnextplan(#1,#2)}}
+
+\startbuffer[Monthnextplan]
+ \Monthnextplan
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+\stopbuffer
+
+%D \stopsubsubject
+
+
+%D \startsubsubject[title={Year current and year next}]
+%D
+%D The year calendar looks as in \in{figure}[fig:Year].
+%D
+%D In the header the year only is typeset.
+%D
+%D \startplacefigure
+%D [location=middle,
+%D reference=fig:Year,
+%D title={Example Year-calendar}]
+%D {\externalfigure[docu-figures][page=5,width=.4\textwidth,frame=on]}
+%D \stopplacefigure
+%D The year table(s) are prepared as the week tables with a table-setup
+%D sequence, a custom command which resides with the parameters assigned in a
+%D buffer, which will again be called from the user-file \type{PocketDiary.tex}
+
+\startsetups table:year
+ \setupTABLE[column]
+ [each]
+ [width=.032\textwidth,align=flushright,offset=1pt,frame=off]
+ \setupTABLE[column][1][width=.052\textwidth,align=flushleft]
+ \setupTABLE[row][each][offset=1pt,height=1.5\bodyfontsize]
+\stopsetups
+
+\define[2]\Yearcurrentplan{\ctxlua{thirddata.diary.yearplan(#1,#2)}}
+\define[2]\Yearnextplan{\ctxlua{thirddata.diary.yearplan(#1,#2)}}
+
+\startbuffer[Yearcurrentplan]
+ \Yearcurrentplan
+ {\getvariable{PocketDiary}{Year}}
+ {"no"}
+\stopbuffer
+
+\startbuffer[Yearnextplan]
+ \Yearnextplan
+ {\getvariable{PocketDiary}{Year}}
+ {"\getvariable{PocketDiary}{Nextyear}"}
+\stopbuffer
+
+%D \stopsubsubject
+
+%D \startsubsubject[title= {One week\dots}]
+%D
+%D As mentioned before, the result will be 5 pages with one working day per
+%D page and the weekend on one page i.e. 6 pages. For the pages 7 and 8 the
+%D values defined in the \quote{PocketDiaryLayout} variable set is used.
+%D As for the Dayplan we need a command carrying 8 parameters:
+
+\define[8]\Daybyday{\ctxlua{thirddata.diary.daybydayplan(#1,#2,#3,#4,#5,#6,#7,#8)}}
+
+%D A buffer contains the command just defined with the gathered information for the parameters. The buffer then is called from the user-file \type{PocketDiary.tex} .
+
+\startbuffer[Daybyday]
+ \Daybyday
+ {1} %Weekday
+ {\getvariable{PocketDiary}{Week}}
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+\stopbuffer
+
+%D \stopsubsubject
+
+%D \startsubsubject[title={Templates}]
+%D
+%D The PocketDiary comes with a couple of templates for writing down
+%D information:
+
+%D For the pages with (grid)lines we use an overlay in the background of
+%D the text area which will contain the \METAPOST -graphic.
+%D
+%D \startplacefigure
+%D [location={middle,here},
+%D title={The set of available templates}]
+%D {\startcombination[3*2]
+%D {\externalfigure
+%D [docu-figures]
+%D [page=6,width=.25\textwidth,frame=on]}{The blank page}
+%D {\externalfigure
+%D [docu-figures]
+%D [page=7,width=.25\textwidth,frame=on]}{Caro paper}
+%D {\externalfigure
+%D [docu-figures]
+%D [page=8,width=.25\textwidth,frame=on]}{Lines}
+%D {\externalfigure
+%D [docu-figures]
+%D [page=9,width=.25\textwidth,frame=on]}{Todo}
+%D {\externalfigure
+%D [docu-figures]
+%D [page=10,width=.25\textwidth,frame=on]}{Contact information}
+%D {\externalfigure
+%D [docu-figures]
+%D [page=11,width=.25\textwidth,frame=on]}{Lost-return-to information}
+%D \stopcombination}
+%D \stopplacefigure
+%D \stopsubsubject
+%D The setups for the Contacts page look as follows:
+
+\startsetups table:contacts
+ \setupTABLE[r][each][frame=off,bottomframe=on,height=2\lineheight]
+ \setupTABLE[c][1][width=.3\textwidth]
+ \setupTABLE[c][2][width=.5\textwidth]
+ \setupTABLE[c][3][width=.2\textwidth]
+\stopsetups
+
+%D The setups for the Lost-Returnto page is setup in the following way:
+
+\startsetups table:returnto
+ \setupTABLE[r][each][frame=off]
+ \setupTABLE[c][each][width=\textwidth]
+\stopsetups
+
+%D Another setups covers the reset of the used Background
+
+\startsetups Background:stop
+ \defineoverlay
+ [Textarea]
+ [\resetMPdrawing]
+ \setupbackgrounds[text][text][background=]
+\stopsetups
+
+%D All templates for these pages are contained in buffers in order to call them from the user-file \type{PocketDiary.tex}
+
+\startbuffer[Contact]
+ \setupheadertexts[{\bf \labeltext{contact}\hfill}]
+ \switchtobodyfont[6pt]
+ \dorecurse{2}{\bTABLE[setups=table:contacts]
+ \bTR
+ \bTD \labeltext{name}: \eTD
+ \bTD \eTD
+ \bTD \eTD
+ \eTR
+ \bTR
+ \bTD \labeltext{address}:\eTD
+ \bTD \eTD
+ \bTD \eTD
+ \eTR
+ \bTR
+ \bTD \strut\eTD
+ \bTD \eTD
+ \bTD \eTD
+ \eTR
+ \bTR
+ \bTD \labeltext{zip}:\eTD
+ \bTD \labeltext{place}:\eTD
+ \bTD \labeltext{country}:\eTD
+ \eTR
+ \bTR
+ \bTD \labeltext{phone}:\eTD
+ \bTD \eTD
+ \bTD \eTD
+ \eTR
+ \bTR
+ \bTD \labeltext{mail}:\eTD
+ \bTD \eTD
+ \bTD \eTD
+ \eTR
+ \eTABLE
+ \blank}
+ \page[yes]
+\stopbuffer
+
+\startbuffer[Caro]
+ \setupheadertexts[{\bf \labeltext{notes}\hfill}]
+ \defineoverlay
+ [Textarea]
+ [\useMPgraphic{Caro}]
+ \setupbackgrounds[text][background=Textarea]
+ \strut
+ \page[yes]
+ \setups{Background:stop}
+\stopbuffer
+
+\startbuffer[Lines]
+ \setupheadertexts[{\bf \labeltext{notes}\hfill}]
+ \defineoverlay
+ [Textarea]
+ [\useMPgraphic{Lines}]
+ \setupbackgrounds[text][text][background=Textarea]
+ \strut
+ \page[yes]
+ \setups{Background:stop}
+\stopbuffer
+
+\startbuffer[Todo]
+ \defineoverlay
+ [Textarea]
+ [\useMPgraphic{Todo}]
+ \setupbackgrounds[text][text][background=Textarea]
+ \setupheadertexts[\bf \labeltext{todo}\hfill]
+ \strut
+ \page[yes]
+ \setups{Background:stop}
+\stopbuffer
+
+\startbuffer[Blank]
+ \setupheadertexts[{\bf \labeltext{notes}\hfill}]
+ \strut
+ \page[yes]
+\stopbuffer
+
+\startbuffer[Lost-Returnto]
+ \strut
+ \setupheadertexts[{\bf \labeltext{calendar}}]
+ \setupfooter[state=empty]
+ \setupbackgrounds[footer][text][topframe=off]
+ \setups{Background:stop}
+ \strut
+ \blank[2*line]
+ \framed[width=\textwidth,
+ frame=off,
+ bottomframe=on,
+ align=flushleft,
+ rulethickness=1pt,
+ foregroundcolor=\getvariable{PocketDiaryColors}{Separatorline},
+ framecolor=\getvariable{PocketDiaryColors}{Separatorline}]
+ {\labeltext{found}}
+ \bTABLE[setups=table:returnto]
+ \bTR
+ \bTD \getvariable{PocketDiaryAddress}{Forename}~
+ \getvariable{PocketDiaryAddress}{Familyname} \eTD
+ \eTR
+ \bTR
+ \bTD \getvariable{PocketDiaryAddress}{Street} \eTD
+ \eTR
+ \bTR
+ \bTD \getvariable{PocketDiaryAddress}{Zipcode}
+ {\addff{f:smallcaps}\getvariable{PocketDiaryAddress}{City}}\eTD
+ \eTR
+ \bTR
+ \bTD Tel: \getvariable{PocketDiaryAddress}{Phone}\eTD
+ \eTR
+ \bTR
+ \bTD Mob: \getvariable{PocketDiaryAddress}{Mobile}\eTD
+ \eTR
+ \bTR
+ \bTD E-mail: \getvariable{PocketDiaryAddress}{E-mail} \eTD
+ \eTR
+ \bTR
+ \bTD Web: \getvariable{PocketDiaryAddress}{Web} \eTD
+ \eTR
+ \eTABLE
+ \page[yes]
+ \getbuffer[Footertext]
+ \setupbackgrounds[footer][text][topframe=on]
+\stopbuffer
+
+%D \stopsubject
+%D
+%D \startsubject[title={The setup of the PocketDiary}]
+%D
+%D When filling the 8 pages we can do two things. Either we let \CONTEXT\
+%D typeset the pages as we choose them in the section \quote{PocketDiaryLayout}
+%D or we set the variable \quote{Daybyday} in the variable set
+%D \quote{PocketDiary} to \quote{yes}. This leads to the typesetting of 5 pages
+%D with each a working day and the weekend on one page. The remaining two pages
+%D are typeset according to the values given in \quote{PocketDiaryLayout.}
+
+\startbuffer[Pocketdiary]
+ \definecolor[Grid][\getvariable{PocketDiaryColors}{Gridline}]
+ \definecolor[Separatorline][\getvariable{PocketDiaryColors}{Separatorline}]
+
+ \doifelse{\getvariable{PocketDiary}{Daybyday}}{yes}
+ {\Daybyday %creates 6 pages
+ {1}
+ {\getvariable{PocketDiary}{Week}}
+ {\getvariable{PocketDiary}{Month}}
+ {\getvariable{PocketDiary}{Year}}
+ {\getvariable{PocketDiaryGeoPosition}{lat}}
+ {\getvariable{PocketDiaryGeoPosition}{lon}}
+ {\getvariable{PocketDiaryGeoPosition}{timeoffset}}
+ {"\getvariable{PocketDiaryGeoPosition}{continent}"}
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page7}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page8}]
+ }
+ {\getbuffer[\getvariable{PocketDiaryLayout}{Page1}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page2}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page3}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page4}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page5}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page6}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page7}]
+ \getbuffer[\getvariable{PocketDiaryLayout}{Page8}]
+ }
+\stopbuffer
+
+%D \stopsubject
+
+%D \startsubject[title={Arranging the pages}]
+%D
+%D For the arrangement of the 8 pages on the paper we need a
+%D special arranging scheme, which is included in the distribution.
+%D Invoking the scheme is performed with
+%D
+%D \type{\setuparranging[1*8]}
+%D
+%D The arrangement of the 8 pages is not switched on in this file. For the
+%D purpose of experimenting it is better to keep this command in the user file
+%D \type{\type{PocketDiary.tex} }
+%D
+%D \stopsubject
+
+%D \startsubject[title={How to fold the PocketDiary}]
+%D
+%D The eight printed pages are folded in such a way, that the PocketDiary
+%D presents itself as a small booklet.
+%D There are no empty pages visible.
+%D
+%D \startplacefigure
+%D [location=middle,
+%D reference=fig:schemeA,
+%D title={The basic folding scheme}]
+%D {\externalfigure[docu-figures][page=12,width=.6\textwidth]}
+%D \stopplacefigure
+%D
+%D First make two mountain-folds as indicated with the straight lines in
+%D \in{figure}[fig:schemeA].
+%D Unfold the paper and turn it face up and \unit{90 Degrees} to the left.
+%D Make a valley-fold with the lower part
+%D of the sheet on the previously made mountain-fold. Unfold and turn the
+%D sheet \unit{180 Degrees}.
+%D Make another valley-fold as described before. Unfold the sheet.
+%D
+%D Take a sharp knife and a ruler. Slit the paper open between Cuttingpoint A
+%D and B (see \in{figure}[fig:schemeA]).
+%D
+%D Now we can fold the booklet. First fold the paper again in the length. Then
+%D hold the double folded paper
+%D with the mountain-fold up. Push from both sides towards the center in order
+%D to get a form similar
+%D to \in{figure}[fig:schemeB]. Fold then the upper double-page in direction B,
+%D the lower double-page
+%D in direction C and finally the lefthand double-sided page in direction D.
+%D
+%D \startplacefigure
+%D [location=middle,
+%D reference=fig:schemeB,
+%D title={The basic folding scheme}]
+%D {\externalfigure[docu-figures][page=13,width=.6\textwidth]}
+%D \stopplacefigure
+%D
+%D Before creasing the booklet at the spine it is worthwhile to put the section
+%D on table and adjust
+%D folds where needed. Finally the spine is creased with preference with a
+%D bone-folder.
+%D \stopsubject
+
+\stopmodule \ No newline at end of file
diff --git a/macros/latex/contrib/babel-contrib/greek/Makefile b/macros/latex/contrib/babel-contrib/greek/Makefile
deleted file mode 100644
index c88acae1ef..0000000000
--- a/macros/latex/contrib/babel-contrib/greek/Makefile
+++ /dev/null
@@ -1,145 +0,0 @@
-# This Makefile updates the source and documentation for the
-# babel-greek LateX package
-#
-# © 2019 Günter Milde
-#
-# SRCDIR (and the other variables) can be easily modified as parameters
-# while calling `make', e.g.
-#
-# make install SRCDIR=~/texmf/tex/latex/
-
-# Global variables
-# =================
-
-# for installation into a users local texmf tree
-DESTDIR = ~/texmf/tex/latex/greek/babel-greek
-DOCDIR = ~/texmf/doc/latex/greek/babel-greek
-
-CHDIR = cd
-COPY = cp --update
-SH = sh
-
-# programs
-PYLIT = pylit # text <-> source converter for literal programming
-RST2HTML = rst2html5 # text -> HTML converter, see docutils.sf.net
-RUBBER = rubber --force --pdf # latex-wrapper running until refs are resolved
-LATEX = pdflatex -interaction batchmode # suppress logging to terminal
-
-
-.PHONY: all
-
-all: packages doc test
-
-# LaTeX source files
-# ==================
-
-.PHONY: packages
-
-packages: greek.ldf athnum.sty grmath.sty
-
-greek.ldf: babel-greek.dtx
- tex babel-greek.ins
-
-athnum.sty: athnum.dtx
- tex babel-greek.ins
-
-grmath.sty: athnum.dtx
- tex babel-greek.ins
-
-# Documentation
-# =============
-
-.PHONY: doc html pdf test
-
-doc: html pdf
-
-html: babel-greek-doc.html
-
-babel-greek-doc.html: babel-greek-doc.rst
- $(RST2HTML) babel-greek-doc.rst babel-greek-doc.html
-
-
-pdf: babel-greek.pdf athnum.pdf grmath.pdf usage.pdf
-
-test: test-greek.pdf test-greek-tu.pdf test-greek-8bitcompat.pdf \
- test-greek-ini.pdf \
- test-lgr-fixes.pdf test-case-changing.pdf\
- test-greeknum.pdf test-greeknum-tu.pdf \
- test-athnum.pdf test-athnum-tu.pdf
-
-babel-greek.pdf: babel-greek.dtx
- $(RUBBER) -m hyperref babel-greek.dtx
- makeindex -s gglo.ist -o babel-greek.gls babel-greek.glo
- $(RUBBER) -m hyperref babel-greek.dtx
-
-athnum.pdf: athnum.dtx
- $(RUBBER) athnum.dtx
-
-grmath.pdf: grmath.dtx
- $(RUBBER) grmath.dtx
-
-usage.pdf: usage.tex greek.ldf
- $(RUBBER) usage.tex
-
-test-greek.pdf: test-greek.tex greek.ldf
- $(RUBBER) -m hyperref test-greek.tex
-
-test-greek-tu.pdf: test-greek.tex greek.ldf
- $(RUBBER) -m xelatex --jobname=test-greek-tu test-greek.tex
-
-# requires rubber >= 1.6, otherwise `-m lualatex` is ignored.
-test-greek-8bitcompat.pdf: test-greek-8bitcompat.tex test-greek.tex greek.ldf
- $(RUBBER) -m hyperref -m lualatex test-greek-8bitcompat.tex
-
-test-greek-ini.pdf: test-greek-ini.tex test-greek.tex greek.ldf
- $(RUBBER) -m hyperref -m xelatex test-greek-ini.tex
-
-test-case-changing.pdf: test-case-changing.tex greek.ldf
- $(RUBBER) -m hyperref test-case-changing.tex
-
-test-athnum.pdf: test-athnum.tex greek.ldf athnum.sty
- $(RUBBER) test-athnum.tex
-
-test-athnum-tu.pdf: test-athnum.tex greek.ldf athnum.sty
- $(RUBBER) -m xelatex --jobname=test-athnum-tu test-athnum.tex
-
-test-greeknum.pdf: test-greeknum.tex greek.ldf
- $(RUBBER) test-greeknum.tex
-
-test-greeknum-tu.pdf: test-greeknum.tex greek.ldf
- $(RUBBER) -m xelatex --jobname=test-greeknum-tu test-greeknum.tex
-
-test-lgr-fixes.pdf: test-lgr-fixes.tex greek.ldf
- $(RUBBER) -m hyperref -m index test-lgr-fixes.tex
-
-
-# Installation/Update
-# ===================
-
-update: packages test
- $(COPY) *.ldf $(DESTDIR)
- $(COPY) *.sty $(DESTDIR)
-
-update-package: packages doc test
- $(COPY) README.md $(DOCDIR)
- $(COPY) babel-greek-doc.rst $(DOCDIR)
- $(COPY) babel-greek-doc.html $(DOCDIR)
- # selected PDFs
- $(COPY) [!t]*.pdf $(DOCDIR)
- $(COPY) test-greek.pdf $(DOCDIR)
- $(COPY) test-athnum.pdf $(DOCDIR)
- # also copy all sources
- $(COPY) *.dtx $(DOCDIR)
- $(COPY) *.ins $(DOCDIR)
- $(COPY) *.tex $(DOCDIR)
- $(COPY) Makefile $(DOCDIR)
-
-
-# Cleanup
-# =======
-
-.PHONY: clean
-
-clean:
- rm -f *~ *.aux *.bbl *.bcf *.blg *.run.xml *.glo *.gls \
- *.idx *.ilg *.ind *.log *.out *.rubbercache *.toc
diff --git a/macros/latex/contrib/babel-contrib/greek/README.md b/macros/latex/contrib/babel-contrib/greek/README.md
index c6a10c1292..ce85bc77bd 100644
--- a/macros/latex/contrib/babel-contrib/greek/README.md
+++ b/macros/latex/contrib/babel-contrib/greek/README.md
@@ -4,7 +4,7 @@ babel-greek
Comprehensive support for the Greek language and script with
[Babel](https://ctan.org/pkg/babel).
-**Version**: 1.13
+**Version**: 1.13.1
**Copyright**: © 1997 Apostolos Syropoulos, Claudio Beccari, Johannes Brahms,
© 2013 - 2023 Günter Milde.
@@ -32,4 +32,5 @@ See the **documentation** for options, peculiarities, and other details:
* [babel-greek-doc.rst](https://codeberg.org/milde/greek-tex/src/branch/master/babel-greek/babel-greek-doc.rst)
(🡥codeberg.org)
-or the shell command `texdoc babel-greek` to view local documentation.
+The shell command `texdoc babel-greek` displays documentation from a local
+TeXLive installation.
diff --git a/macros/latex/contrib/babel-contrib/greek/athnum.dtx b/macros/latex/contrib/babel-contrib/greek/athnum.dtx
index 3c1f3f4636..fc199a4896 100644
--- a/macros/latex/contrib/babel-contrib/greek/athnum.dtx
+++ b/macros/latex/contrib/babel-contrib/greek/athnum.dtx
@@ -16,12 +16,12 @@
% The Current Maintainer of this work is Günter Milde <milde@users.sf.net>.
%
% \fi
-%% \CheckSum{150}
+%% \CheckSum{146}
%\iffalse
%
%% This is file `athnum.dtx'
%% (c) 1997-2007 Apostolos Syropoulos.
-%% Changes in version 2.0 © 2022 Günter Milde
+%% Changes in version 2 © 2022, 2023 Günter Milde
%% All rights reserved.
%\fi
%
@@ -29,6 +29,9 @@
% \begin{macrocode}
%<*driver>
\documentclass{ltxdoc}
+\usepackage{hyperref}
+\hypersetup{colorlinks=true,linkcolor=blue,urlcolor=blue,citecolor=black}
+% auxiliary macro to keep the documentation independent of Greek text fonts
\def\PiIt#1{{%
\newdimen\boxW \newdimen\boxH
\settowidth{\boxW}{#1}%
@@ -45,9 +48,8 @@
%</driver>
% \end{macrocode}
% \fi
-%\title{Attic (or Athenian) Numerals}
-% \author{Apostolos Syropoulos\\366, 28th October Str.\\
-% GR-671 00 Xanthi, HELLAS\\ Email:\texttt{apostolo@platon.ee.duth.gr}}
+%%\title{Athenian (Attic) Numerals}
+% \author{Apostolos Syropoulos}
% \date{2003/08/24}
%\maketitle
%
@@ -57,10 +59,12 @@
%
% This \LaTeX\ package implements the macro
% \DescribeMacro{\athnum}
-% |\athnum|. The macro transforms an Arabic numeral, i.e., the kind
-% of numerals we all use (e.g., 1, 5, 789 etc), to the corresponding
-% {\itshape Athenian} (or \emph{Attic} numeral. Athenian numerals were in
-% use mainly in ancient Athens. The package requires a Greek text font and
+% |\athnum|.
+% The macro transforms an Arabic numeral, i.e., the kind of numerals
+% we all use (e.g., 1, 5, 789 etc), to the corresponding
+% \href{https://en.wikipedia.org/wiki/Attic_numerals}{\emph{Athenian} numeral}.
+% It can also be used to display counters.
+% The package requires a Greek text font and
% the |greek-fontenc| package.\footnote{%
% Up to version 1.1, `athnum' required that Babel was loaded with the
% |greek| option. Version 2.0 sets up Greek font support autonomously.}
@@ -93,23 +97,16 @@
%
% \section{The Code}
%
-% \changes{athnum-2.0}{2022/12/08}{%
-% Do not require Babel to be loaded with the |greek| option.\\
-% Use LICR macros instead of the Latin transliteration for Greek letters
-% to fix working with Unicode fonts.\\
-% Drop the backwards compatibility definitions for PiDelta, PiEta,
-% PiChi, and PiMu.}
-%
% Before we do anything further, we have to identify the package.
% \StopEventually
%
% \begin{macrocode}
%<*package>
\NeedsTeXFormat{LaTeX2e}[1996/01/01]
-\ProvidesPackage{athnum}[2022/12/08\space v2.0]
-\typeout{Package: `athnum' v2.0\space <2022/12/08> (A. Syropoulos)}
+\ProvidesPackage{athnum}[2023/03/17 v2.0.1 Athenian numerals]
% \end{macrocode}
-% \section{Font setup}
+%
+% \subsection{Font Setup}
%
% Typesetting Greek texts requires a font with Greek characters:
%
@@ -142,10 +139,9 @@
\InputIfFileExists{\athnum@greek@fontencdef .def}{}{% else
\PackageError{athnum}{Font support for the Greek script missing.\\
can't typeset Greek symbols.\\
- Install the "greek-fontenc" package\\
- or use XeTeX/LuaTeX.}
+ Install the "greek-fontenc" package.}
{I can't find the \athnum@greek@fontencdef .def file
- for the Greek fonts (encoding \greekfontencoding)}
+ for the Greek fonts (encoding \greekfontencoding).}
\@@end
}
}
@@ -160,6 +156,8 @@
% \end{macrocode}
% \end{macro}
%
+% \subsection{Transform Arabic Numeral to Athenian Numeral}
+%
%\begin{macro}{\@@athnum}
% Now, we turn our attention to the definition of the macro
% |\@@athnum|. This macro uses one integer variable (or counter in
@@ -272,20 +270,32 @@
% \end{macrocode}
%\end{macro}
%\begin{macro}{\athnum}
-% The command |\athnum| is a wrapper that declares
-% a new counter in a local scope, assigns to it the argument of the command
-% and calls the macro |\@athnum|. This way the command can process correctly
-% either a number or a counter.
+% The command |\athnum| is a wrapper that declares a new counter
+% in a local scope, assigns to it the argument of the command
+% and calls the macro |\@athnum|.
+% This way the command can process correctly either a number or a counter.
+% It also ensures that the argument is set with a Greek text font.
% \begin{macrocode}
\def\athnum#1{%
- \ensuregreek{%
+ \textrm{\ensuregreek{%
\@ath@num#1\relax
\@athnum{\@ath@num}}%
- }
+ }}
%</package>
% \end{macrocode}
%\end{macro}
%
+% \section{Changes}
+% \begin{description}
+% \item [athnum-2.0 2022/12/08]
+% Do not require Babel.
+% Support Unicode fonts.
+% Drop the backwards compatibility definitions
+% for |\PiDelta|, |\PiEta|, |\PiChi|, and |\PiMu|.
+% \item [athnum-2.0.1 2023/03/17]
+% Fix behaviour in math mode.
+% \end{description}
+%
% \section*{Acknowledgment}
% I would like to thank Claudio Beccari for reading the documentation
% and for his very helpful suggestions. In addition, Antonis Tsolomitis
@@ -294,6 +304,8 @@
% \section*{Dedication}
% I would like to dedicate this piece of work to my son
% \begin{center}Demetrios-Georgios.\end{center}
+%
+%
% \Finale
%
\endinput
diff --git a/macros/latex/contrib/babel-contrib/greek/athnum.pdf b/macros/latex/contrib/babel-contrib/greek/athnum.pdf
index 060d16210b..85ca90ad8b 100644
--- a/macros/latex/contrib/babel-contrib/greek/athnum.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/athnum.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
index 395fe33fd2..26648f07c8 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
@@ -793,7 +793,7 @@ mstyle.mathscr, mi.mathscr {
<p class="subtitle" id="babel-support-for-the-greek-language-and-script">Babel support for the Greek language and script</p>
<dl class="docinfo">
<dt class="version">Version<span class="colon">:</span></dt>
-<dd class="version">1.13 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
+<dd class="version">1.13.1 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
<dt class="copyright">Copyright<span class="colon">:</span></dt>
<dd class="copyright">© 1997 Apostolos Syropoulos, Claudio Beccari, Johannes Brahms,
© 2013 – 2023 Günter Milde.</dd>
@@ -1383,6 +1383,12 @@ Use LICR macros instead of the Latin transliteration.</p></li>
<li><p>Fix links, update documentation.</p></li>
</ul>
</dd>
+<dt>1.13.1 (2023-03-17)</dt>
+<dd><ul class="simple">
+<li><p>Don’t use text command in math mode with “keep-semicolon”.</p></li>
+<li><p><a class="reference external" href="athnum.dtx">athnum.dtx</a> 2.0.1: Fix behaviour in math mode.</p></li>
+</ul>
+</dd>
</dl>
</section>
<section id="references">
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
index 2c65158b9a..08bc93633b 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
@@ -3,7 +3,7 @@ babel-greek
Babel support for the Greek language and script
===============================================
-:Version: 1.13 (changelog_)
+:Version: 1.13.1 (changelog_)
:Copyright: © 1997 Apostolos Syropoulos, Claudio Beccari, Johannes Brahms,
© 2013 -- 2023 Günter Milde.
@@ -398,6 +398,9 @@ Changelog
- New language attribute "keep-semicolon_".
- Rename ``\greek@tilde`` to ``\bbl@greek@tilde``, simplify definition.
- Fix links, update documentation.
+1.13.1 (2023-03-17)
+ - Don't use text command in math mode with "keep-semicolon".
+ - `athnum.dtx`_ 2.0.1: Fix behaviour in math mode.
.. _babel/4303: http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=babel/4303
.. _babel/4305: http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=babel/4305
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx b/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
index 3d75104121..0eb7071284 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
@@ -37,7 +37,7 @@
%<code>\ProvidesLanguage{greek}
%\fi
%\ProvidesFile{babel-greek.dtx}
- [2023/03/15 1.13 Greek support for the babel system]
+ [2023/03/17 1.13.1 Greek support for the babel system]
%\iffalse
%% File `babel-greek.dtx'
%% Greek language Definition File
@@ -600,6 +600,8 @@
%
% \changes{babel-greek-1.13}{2023/03/15}{
% New language attribute \Lopt{keep-semicolon}.}
+% \changes{babel-greek-1.13}{2023/03/15}{
+% Don't use text command in math mode.}
% The LGR font encoding uses the Latin question mark as input for
% the Greek question mark (\emph{erotimatiko}) and maps the semicolon
% to a middle dot (\emph{ano teleia}).
@@ -613,11 +615,11 @@
\def\bbl@tempa{LGR}
\ifx\greekfontencoding\bbl@tempa
\ProvideTextCommandDefault{\textsemicolon}{;}
- \ProvideTextCommand{\textsemicolon}{LGR}{\TextOrMath{\texterotimatiko}{;}}
+ \ProvideTextCommand{\textsemicolon}{LGR}{\texterotimatiko}
\initiate@active@char{;}
\addto\extrasgreek{\bbl@activate{;}}
\addto\noextrasgreek{\bbl@deactivate{;}}
- \declare@shorthand{greek}{;}{\textsemicolon}
+ \declare@shorthand{greek}{;}{\TextOrMath{\textsemicolon}{;}}
\fi
}
% \end{macrocode}
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf b/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
index 8699cde837..3da9b8a926 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf b/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
index 4f1fd57796..f76f2c8e06 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/test-athnum.tex b/macros/latex/contrib/babel-contrib/greek/test-athnum.tex
index 0d8a6bfb6b..4de8a01ff8 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-athnum.tex
+++ b/macros/latex/contrib/babel-contrib/greek/test-athnum.tex
@@ -67,4 +67,6 @@ Largest allowed number: 249999 = \athnum{249999}
Hexadecimal input works, too: \texttt{"10} = \athnum{"10}
+Attic numerals in math mode: $a = \textrm{\athnum{678}}, b = \athnum{2022}$
+
\end{document}
diff --git a/macros/latex/contrib/babel-contrib/greek/test-case-changing-minimal.tex b/macros/latex/contrib/babel-contrib/greek/test-case-changing-minimal.tex
deleted file mode 100644
index f90e2e1e24..0000000000
--- a/macros/latex/contrib/babel-contrib/greek/test-case-changing-minimal.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[a4paper]{article}
-% \usepackage[greek,english]{babel} % babel-greek
-\usepackage[greek,english,provide=*]{babel} % Babel's Greek "ini"
-
-\usepackage{parskip}
-\newcommand{\langGreek}{\foreignlanguage{greek}}
-% \renewcommand{\langGreek}{} % check without language change
-
-
-\ifdefined \UnicodeEncodingName
- \usepackage{fontspec}
- \setmainfont{FreeSerif}
- \newcommand*{\texengine}{Xe/LuaLaTeX}
-\else
- \usepackage{lmodern}
- \newcommand*{\texengine}{pdfLaTeX}
-\fi
-
-
-\begin{document}
-
-Greek question mark:
-\langGreek{; → \MakeUppercase{;}}
-
-Latin accents:
-\langGreek{ᾰ Ᾰ ῐ Ῐ ῠ ᾱ Ᾱ ῑ Ῑ ῡ → \MakeUppercase{ᾰ Ᾰ ῐ Ῐ ῠ ᾱ Ᾱ ῑ Ῑ ῡ}}
-
-hiatus:
-\newcommand*{\hiatest}{άι, άυ, έι, ἄι, ἄυ, ἔι, ἀυ}
-\langGreek{\hiatest{} → \MakeUppercase{\hiatest{}}}
-
-\langGreek{ἀυπνία → \MakeUppercase{ἀυπνία}}
-
-Spacing prosgegrammeni:
-\langGreek{ι → \MakeUppercase{ι}}
-
-Spacing accents:
-\langGreek{῀ ` ´ ῾ ᾽ ᾿ \quad ῍ ῎ ῝ ῞ ῟ ῏ ῭ ΅ ῁ →
- \MakeUppercase{῀ ` ´ ῾ ᾽ ᾿ \quad ῍ ῎ ῝ ῞ ῟ ῏ ῭ ΅ ῁}}
-
-Eta with tonos:
-\langGreek{ή, Ή → \MakeUppercase{ή, Ή}}.
-
-\end{document}
-
-Upcasing/downcasing literal chars of the "Greek and Coptic" and "Greek
-Extended" Unicode block now works without errors.
-
-Problems (in order of urgence):
-
-* Uppercase of character 0x37E GREEK QUESTION MARK is 0x3B SEMICOLON which is
- mapped to a middle dot (0x387 GREEK ANO TELEIA) by LGR:
-
-* The “educational”/“Latin” accents *macron* and *breve* (*vrachy*) should
- be kept (they stay above capital letters similar to the dialytika,
- they are kept by Apostolos Syropoulos' “xgreek” package and in babel-greek
- “since ages”):
-
-* Auto-Hiatus also required after
- 0x1F00 GREEK SMALL LETTER ALPHA WITH PSILI + iota or upsilon.
-
-* Spacing prosgegrammeni turned to capital Iota (kept as prosgegrammeni with
- old MakeUppercase).
-
-* Spacing 0x1FEF GREEK VARIA becomes 0x2018 LEFT SINGLE QUOTATION MARK
- (visible difference with XeTeX and DejaVu),
-
-* Non-uniform handling of spacing diacritics: Single diacritics are kept,
- combining diacritics are mapped to single diacritics.
- (The old implementation handled spacing diacritics similar to
- diacritics in accented letters.)
-
-* How to treat MakeUppercase of a single captial GREEK CAPITAL LETTER ETA
- WITH TONOS? Currently, it is treated differently from the small
- equivalent.
diff --git a/macros/latex/contrib/babel-contrib/greek/test-case-changing-varia-tu.tex b/macros/latex/contrib/babel-contrib/greek/test-case-changing-varia-tu.tex
deleted file mode 100644
index a70e127ffa..0000000000
--- a/macros/latex/contrib/babel-contrib/greek/test-case-changing-varia-tu.tex
+++ /dev/null
@@ -1,41 +0,0 @@
-\documentclass[a4paper]{article}
-\usepackage[greek,english,provide=*]{babel} % Babel's Greek "ini"
-\newcommand{\langGreek}{\foreignlanguage{greek}}
-
-\usepackage{fontspec}
-\setmainfont{FreeSerif}
-% \setmainfont{DejaVu Serif}
-% \setmainfont{Droid Sans}
-% \setmainfont{Linux Libertine O}
-% \setmainfont{Liberation Serif}
-% \setmainfont{cmunrm.otf}
-
-\begin{document}
-
-
-U+1FEF GREEK VARIA and U+1FFD GREEK OXIA
-
-English: ` ´ → \MakeUppercase{` ´}
-
-Greek: \langGreek{` ´ → \MakeUppercase{` ´}}
-
-
-U+0060 GRAVE ACCENT and U+00B4 ACUTE ACCENT
-
-English: ` ´ → \MakeUppercase{` ´}
-
-Greek: \langGreek{` ´ → \MakeUppercase{` ´}}
-
-
-\end{document}
-
-
-* Spacing U+1FEF GREEK VARIA becomes U+2018 LEFT SINGLE QUOTATION MARK
- (visible difference with XeTeX and DejaVu),
-
-With old MakeUppercase: Spacing accents: ῀ ` ´ ῾ ᾽ ᾿ → ῀ ` ´ ῾ ᾽ ᾿
-
-With new MakeUppercase: Spacing accents: ῀ ` ´ ῾ ᾽ ᾿ → ῀ ‘ ´ ῾ ᾽ ᾿
-
-U+0060 GRAVE ACCENT and U+00B4 ACUTE ACCENT
-English: ‘ ´ → ‘ ´
diff --git a/macros/latex/contrib/babel-contrib/greek/test-case-changing.tex b/macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
index 053cfb7330..e5cc0d15e5 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
+++ b/macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
@@ -173,7 +173,12 @@ MakeLowercase:
% Accents dropped with MakeUppercase (not for single letter ή) :)
% TODO: how to treat MakeUppercase of a single captial «΄Η»?
%
-% The "Latin" accents macron and breve should be kept. (minor)
+% Should the “educational”/“Latin” accents *macron* and *breve* (*vrachy*)
+% be kept (they stay above capital letters similar to the dialytika,
+% they are kept by Apostolos Syropoulos' “xgreek” package and in babel-greek
+% “since ages”) or dropped (they are optional even in lowercase or titlecase
+% and dropped for the entry by the English wiktionary).
+% https://en.wiktionary.org/wiki/Wiktionary:About_Ancient_Greek#Diacritics_and_accentuation
%
% Spacing prosgegrammeni (ι) turned to capital Iota. (minor)
%
diff --git a/macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex b/macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex
index 5fba328dc6..2de0e68ed6 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex
+++ b/macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex
@@ -6,6 +6,8 @@
% LGR must be defined before loading "luainputenc" (bug in luainputenc?)
\usepackage[LGR,T1]{fontenc}
\usepackage{lmodern}
+ % \usepackage[largesc]{newtxtext}
+ % \DeclareFontFamilySubstitution{LGR}{ntxtlf}{NimbusSerif}
\usepackage[utf8]{luainputenc}
\newcommand*{\greekfontencoding}{LGR} % force LGR setup¹
diff --git a/macros/latex/contrib/babel-contrib/greek/test-greek.pdf b/macros/latex/contrib/babel-contrib/greek/test-greek.pdf
index 2f1b83bc17..0f4879f944 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-greek.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/test-greek.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/test-tildeshorthand.tex b/macros/latex/contrib/babel-contrib/greek/test-tildeshorthand.tex
deleted file mode 100644
index 47bc628236..0000000000
--- a/macros/latex/contrib/babel-contrib/greek/test-tildeshorthand.tex
+++ /dev/null
@@ -1,106 +0,0 @@
-% Backrolling does not work for \MakeUppercase (cf. LaTeX News 35)
-% \RequirePackage{latexbug}
-%\RequirePackage[2022-05-01]{latexrelease}
-
-\documentclass[a4paper]{article}
-
-\usepackage[LGR,T1]{fontenc}
-\usepackage{lmodern}
-
-\ifdefined \UnicodeEncodingName
- \usepackage{fontspec}
- \setmainfont{FreeSerif}
- \newcommand*{\texengine}{Xe/LuaLaTeX}
-\else
- \usepackage{lmodern}
- \newcommand*{\texengine}{pdfLaTeX}
-\fi
-
-% Load encoding definitions
-\usepackage[normalize-symbols]{textalpha} % "Greek script everywhere"
-
-% With TL22, the special handling of Greek UPPERCASE is only triggered
-% if the text language is set to "greek" with Babel:
-%
-\usepackage[greek,english]{babel} % babel-greek
-% \usepackage[greek,english,provide=*]{babel} % Babel's Greek "ini"
-\languageattribute{greek}{polutoniko} % "modern" polytonic Greek
-
-
-\usepackage[unicode,colorlinks,linkcolor=blue]{hyperref}
-\usepackage{bookmark}
-
-% Auxiliary commands
-
-\newcommand{\langGreek}{\foreignlanguage{greek}}
-
-% print the selected language variant
-\newcommand{\GreekLanguageVariant}{%
- \ifx\captionsgreek\captionspolutonikogreek
- \ifx\captionsgreek\captionsancientgreek
- ancient%
- \else
- polutoniko%
- \fi
- \else
- monotoniko%
- \fi
-}
-
-% test effect of new implementations on compilation time:
-%
-% pdflatex from TL22 is about 7 times slower than the version from TL21
-% (7s vs. 1s for this document with 13 pages).
-% With the dummy definitons,
-% \renewcommand{\MakeUppercase}{}
-% \renewcommand{\MakeLowercase}{}
-% pdflatex from TL22 is a bit faster than before
-% (0.7s vs. 1s for this document),
-
-% -----------------------------------------------------------------------
-
-\begin{document}
-
- \selectlanguage{greek}
-
-
-\raggedright
- % ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ \\
- % \lgrfont{>a <a >`a <`a >'a <'a >~a <~a >A <A >`A <`A >'A <'A >~A <~A } \\
- % ἐ ἑ ἒ ἓ ἔ ἕ ␣ ␣ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ \\
- % \lgrfont{>e <e >`e <`e >'e <'e \: \: >E <E >`E <`E >'E <'E } \\
- % ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ \\
- % \lgrfont{>h <h >`h <`h >'h <'h >~h <~h >H <H >`H <`H >'H <'H >~H <~H } \\
- % ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ \\
- % \lgrfont{>i <i >`i <`i >'i <'i >~i <~i >I <I >`I <`I >'I <'I >~I <~I } \\
- % ὀ ὁ ὂ ὃ ὄ ὅ ␣ ␣ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ \\
- % \lgrfont{>o <o >`o <`o >'o <'o \: \: >O <O >`O <`O >'O <'O } \\
- % ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ ␣ Ὑ ␣ Ὓ ␣ Ὕ ␣ Ὗ \\
- % \lgrfont{>u <u >`u <`u >'u <'u >~u <~u \: <U \: <`U \: <'U \: <~U } \\
- % ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ \\
- % \lgrfont{>w <w >`w <`w >'w <'w >~w <~w >W <W >`W <`W >'W <'W >~W <~W } \\
- % ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ \\
- % \lgrfont{`a 'a `e 'e `h 'h `i 'i `o 'o `u 'u `w 'w } \\
- % ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ \\
- % \lgrfont{>a| <a| >`a| <`a| >'a| <'a| >~a| <~a| >A| <A| >`A| <`A| >'A| <'A| >~A| <~A|} \\
- % ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ \\
- % \lgrfont{>h| <h| >`h| <`h| >'h| <'h| >~h| <~h| >H| <H| >`H| <`H| >'H| <'H| >~H| <~H|} \\
- % ᾠ ᾡ ᾢ ᾣ ᾤ ᾦ ᾧ ᾥ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ \\
- % \lgrfont{>w| <w| >`w| <`w| >'w| <'w| >~w| <~w| >W| <W| >`W| <`W| >'W| <'W| >~W| <~W|} \\
- % ᾰ ᾱ ᾲ ᾳ ᾴ ␣ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ \\
-% \lgrfont{\u{a} \=a `a| a| 'a| \: ~a ~a| \u{A} \=A `A 'A A| > | > } \\
- % ῀ ῁ ῂ ῃ ῄ ␣ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ \\
-\lgrfont{~ "~ `h| h| 'h|
- % \: ~h ~h| `E
- % 'E `H 'H H| >` >' ~>
- } \\
- % ῐ ῑ ῒ ΐ ␣ ␣ ῖ ῗ Ῐ Ῑ Ὶ Ί ␣ ῝ ῞ ῟ \\
-% \lgrfont{\u{i} \=i `"i '"i \: \: ~i ~"i \u{I} \=I `I 'I \: <` <' ~< } \\
- % ῠ ῡ ῢ ΰ ␣ ␣ ῤ ῥ ῦ ῧ Ὺ Ύ Ῥ ῭ ΅ ` \\
-% \lgrfont{\u{u} \=u `"u '"u \: \: >r <r ~u ~"u `U 'U <R `" '" ` } \\
- % ␣ ␣ ῲ ῳ ῴ ␣ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ \\
- % \lgrfont{ \: \: `w| w| 'w| \: ~w ~w| `O 'O `W 'W W| ' < }
-
-
-
-\end{document}
diff --git a/macros/latex/contrib/babel-contrib/greek/unicode-examples.pdf b/macros/latex/contrib/babel-contrib/greek/unicode-examples.pdf
deleted file mode 100644
index d9be7bf69e..0000000000
--- a/macros/latex/contrib/babel-contrib/greek/unicode-examples.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/unicode-examples.tex b/macros/latex/contrib/babel-contrib/greek/unicode-examples.tex
deleted file mode 100644
index 6a466c05dc..0000000000
--- a/macros/latex/contrib/babel-contrib/greek/unicode-examples.tex
+++ /dev/null
@@ -1,57 +0,0 @@
-\documentclass{article}
-
-\ifdefined \UnicodeEncodingName
- \usepackage{fontspec}
- \setmainfont[Scale=0.92]{DejaVu Serif}
-\fi
-
-% Babel is required for hyphenation and the post-2022/06 \MakeUppercase
-% \usepackage[greek]{babel}
-
-\usepackage{xgreek}
-
-\newcommand*\uppercasetest[1]{\noindent#1 →\par\MakeUppercase{#1}\par}
-
-\begin{document}
-
-% examples from https://icu.unicode.org/design/case/greek-upper
-% See there for the expected output
-\uppercasetest{άδικος, κείμενο, ίριδα}
-\uppercasetest{Πατάτα}
-\uppercasetest{Αέρας, Μυστήριο, Ωραίο}
-\uppercasetest{Μαΐου, Πόρος, Ρύθμιση}
-\uppercasetest{ΰ, Τηρώ, Μάιος}
-\uppercasetest{άυλος}
-\uppercasetest{ΑΫΛΟΣ}
-\uppercasetest{Άκλιτα ρήματα ή άκλιτες μετοχές}
-\uppercasetest{Επειδή η αναγνώριση της αξιοπρέπειας}
-\uppercasetest{νομικού ή διεθνούς}
-\uppercasetest{Ἐπειδὴ ἡ ἀναγνώριση}
-\uppercasetest{νομικοῦ ἢ διεθνοῦς} % I need to look at this one
-\uppercasetest{Νέο, Δημιουργία}
-\uppercasetest{Ελάτε να φάτε τα καλύτερα παϊδάκια!}
-\uppercasetest{Μαΐου, τρόλεϊ}
-\uppercasetest{Το ένα ή το άλλο.}
-\uppercasetest{ρωμέικα}
-
-\end{document}
-
-% from http://www.polytoniko.org/kano.php?newlang=en
-% Words with rough breathing
-αἷμα, Αἷμος, αἵρεση,
-εἱρμός, εὑρετήριο
-υἱός
-
-ρολόι → ΡΟΛΟΪ
-
-If a capitalized word begins with a diphthong, the breathing mark is still
-over the second vowel (Αἰτέω). If the word begins with two vowels that do
-not form a diphthong, the breathing mark stands in front of the capital (
-᾽Ιησοῦς).
-
-
-
-
-If placed over a DIPHTHONG, a breathing mark is always above the SECOND
-vowel (e.g. οἱ, εἰ, and Εὐρώπη).
-<https://pressbooks.pub/ancientgreek/chapter/3/>
diff --git a/macros/latex/contrib/babel-contrib/greek/usage.pdf b/macros/latex/contrib/babel-contrib/greek/usage.pdf
index b05188b9d6..83841db067 100644
--- a/macros/latex/contrib/babel-contrib/greek/usage.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/usage.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md b/macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md
index dc1cf2dbca..5db7f997b0 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/CHANGES.md
@@ -1,5 +1,14 @@
# Changelog
+## Version 0.17 (2023-03-18)
+
+See <https://github.com/moewew/biblatex-ext/compare/v0.16...v0.17>
+
+### Changed
+- Synced `\textcite` implementation in `-comp` styles with
+ `biblatex` 3.19.
+- Synced `\printbibtabular` implementation with `biblatex` 3.19.
+
## Version 0.16 (2022-06-18)
See <https://github.com/moewew/biblatex-ext/compare/v0.15...v0.16>
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md b/macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md
index 12adbae3f8..0b521793f2 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md
@@ -91,7 +91,7 @@ installation instructions.
## Licence
-Copyright 2017-2022 Moritz Wemheuer
+Copyright 2017-2023 Moritz Wemheuer
This work consists of the `.bbx`, `.cbx`, `.def`, `.sty` and `.lua`
files mentioned above.
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty
index ead7525d94..3269b0cc0e 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa-doiapi.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{biblatex-ext-oa-doiapi}
- [2022/06/18 v0.16 Obtain open access information from DOI via
+ [2023/03/18 v0.17 Obtain open access information from DOI via
unpaywall.org and doi.org (MW)]
\RequirePackage{etoolbox}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty
index d3ba47fc06..88cf6f39ee 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oa.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{biblatex-ext-oa}
- [2022/06/18 v0.16 mark open access in biblatex bibliographies (MW)]
+ [2023/03/18 v0.17 mark open access in biblatex bibliographies (MW)]
\RequirePackage{etoolbox}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty
index 9258f8bce1..88d996ae60 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-l3draw.sty
@@ -1,7 +1,7 @@
\RequirePackage{expl3}
\ProvidesExplPackage {biblatex-ext-oasymb-l3draw}
- {2022/06/18} {0.16}
+ {2023/03/18} {0.17}
{open access symbols with l3draw (MW)}
\RequirePackage{xparse}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty
index 4cce43762f..071f3be201 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-pict2e.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{biblatex-ext-oasymb-pict2e}
- [2022/06/18 v0.16 open access symbols with pict2e (MW)]
+ [2023/03/18 v0.17 open access symbols with pict2e (MW)]
\RequirePackage{etoolbox}
\RequirePackage{kvoptions}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty
index 598703615b..6a0ad571f9 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-oasymb-tikz.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{biblatex-ext-oasymb-tikz}
- [2022/06/18 v0.16 open access symbols with TikZ (MW)]
+ [2023/03/18 v0.17 open access symbols with TikZ (MW)]
\RequirePackage{etoolbox}
\RequirePackage{kvoptions}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty
index a1a65e638a..b057a9ae79 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext-tabular.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{biblatex-ext-tabular}
- [2022/06/18 v0.16 tabular bibliographies for biblatex (MW)]
+ [2023/03/18 v0.17 tabular bibliographies for biblatex (MW)]
% Code based on Audrey's
% (https://tex.stackexchange.com/users/4483/audrey)
@@ -33,8 +33,8 @@
This is a fatal error. I'm aborting now}%
\endinput}
-\def\extblxtab@requiredbiblatexversion{3.15}
-\def\extblxtab@requiredbiblatexdate{2020/08/19}
+\def\extblxtab@requiredbiblatexversion{3.19}
+\def\extblxtab@requiredbiblatexdate{2023/03/05}
\@ifpackagelater{biblatex}{\extblxtab@requiredbiblatexdate}
{}
@@ -84,6 +84,9 @@
\ifundef\blx@default@thetitle
{\let\blx@thetitle\@empty}
{\let\blx@thetitle\blx@default@thetitle}%
+ \ifundef\blx@default@thefilter
+ {\let\blx@thefilter\@empty}
+ {\let\blx@thefilter\blx@default@thefilter}%
\let\blx@key@env\extblxtab@key@env % redirect the 'env' option
% to tabular envs
% defaults
@@ -117,6 +120,8 @@
% \printbibliography following one with this set will inherit any
% previous "true" value
\togglefalse{blx@omitnumbers}%
+ \expandafter\blx@key@filter\expandafter{\blx@thefilter}%
+ % Can only be defaulted once \blx@tempa is set since it filters on this
\blx@kv@setkeys{blx@bib2}{#1}% ... now we have correct \blx@tempa,
% set rest of options
\blx@rest@actives
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdf
index 825d00e6de..5bd4760f39 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex
index 12ee61f955..c823940c09 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/biblatex-ext.tex
@@ -586,7 +586,7 @@
\newcommand*{\ctan}{\mkbibacro{CTAN}}
\newcommand*{\gitbaseurl}{https://github.com/moewew/biblatex-ext}
-\newcommand*{\extblxversion}{0.16}
+\newcommand*{\extblxversion}{0.17}
\newcommand*{\biber}{Biber}
\newcommand*{\gitissuelink}[1]{%
\href{\gitbaseurl/issues/#1}{issue \##1 on github}}
@@ -659,7 +659,7 @@
author = {Moritz Wemheuer},
email = {mwemheu@posteo.de},%
revision = {\extblxversion},
- date = {\DTMDate{2022-06-18}},
+ date = {\DTMDate{2023-03-18}},
}
\hypersetup{%
@@ -824,7 +824,7 @@ under the terms of the \lppl, version 1.3c%
\fnurl{https://www.latex-project.org/lppl/lppl-1-3c.txt}
or (at your option) any later version%
\fnurl{https://www.latex-project.org/lppl.txt}.
-This bundle is maintained by Moritz Wemheuer (\textcopyright 2017--2022).
+This bundle is maintained by Moritz Wemheuer (\textcopyright 2017--2023).
\subsection{Feedback}\label{sec:feedback}
@@ -3818,7 +3818,7 @@ they are always open access.
}
\makeatother
\begin{bibexample}
-\exampleprintbib{cipriani,meckes,sigfridsson}
+\exampleprintbib{cipriani,meckes,sigfridsson,kastenholz}
\end{bibexample}
If the \opt{openaccess} option is set to one specific field only, only
@@ -4078,6 +4078,12 @@ See also \filename{CHANGES.md}.
The numbers on the right indicate the relevant section of the manual.
\begin{changelog}
+\begin{release}{0.17}{2023-03-18}
+ \item Synced \cmd{textcite} implementation in some styles
+ with \sty{biblatex} 3.19 changes.
+ \item Synced \hypercmd{printbibtabular} implementation
+ with \sty{biblatex} 3.19.\see{sec:tabularbib}
+\end{release}
\begin{release}{0.16}{2022-06-18}
\item Reworked \hyperopt{citexref} implementation\see{sec:opt}
\end{release}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua b/macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua
index 4e13ac2c66..3d6931be6d 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/blxextdoiapi.lua
@@ -2,8 +2,8 @@ blxextdoiapi = blxextdoiapi or {}
local blxextdoiapi_module = {
name = "blxextdoiapi",
- version = "v0.16",
- date = "2022/06/18",
+ version = "v0.17",
+ date = "2023/03/18",
description = "Obtain open access information from DOI via unpaywall.org",
author = "Moritz Wemheuer",
license = "LPPL v1.3c",
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx
index 22657b5deb..873e623a6a 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-alphabetic-verb.bbx}
- [2022/06/18 v0.16 extended biblatex alphabetic-verb
+ [2023/03/18 v0.17 extended biblatex alphabetic-verb
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx
index ddea05768a..ca73cae727 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic-verb.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-alphabetic-verb.cbx}
- [2022/06/18 v0.16 extended biblatex alphabetic-verb citation style
+ [2023/03/18 v0.17 extended biblatex alphabetic-verb citation style
(MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx
index 8c0fcca71d..0897a71103 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-alphabetic.bbx}
- [2022/06/18 v0.16 extended biblatex alphabetic bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex alphabetic bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
\RequireBibliographyStyle{alphabetic}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx
index d9e0d963f7..3b9b17893b 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-alphabetic.cbx}
- [2022/06/18 v0.16 extended biblatex alphabetic citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex alphabetic citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx
index cab62fa538..0b139c0959 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-comp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear bibliography style (MW)]
\RequireBibliographyStyle{ext-authornumber}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx
index 4b600532c9..0785921a02 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-comp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-comp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
@@ -265,7 +265,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx
index cab62fa538..0b139c0959 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-comp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear bibliography style (MW)]
\RequireBibliographyStyle{ext-authornumber}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx
index 1719bc00ff..5c3030fe7b 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-ecomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-ecomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
@@ -375,7 +375,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx
index c0f384ce08..604a9bdb57 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-tcomp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear bibliography style (MW)]
\RequireBibliographyStyle{ext-authornumber-terse}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx
index 6e4fb3b208..59c79bf053 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tcomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-tcomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear citation style (MW)]
\RequireCitationStyle{ext-authornumber-comp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx
index 578592e89b..5c10ac9a88 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-tecomp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear bibliography style (MW)]
\RequireBibliographyStyle{ext-authornumber-terse}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx
index e3df1d844a..a9004aed2b 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-tecomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-tecomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear citation style (MW)]
\RequireCitationStyle{ext-authornumber-ecomp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx
index 31de6eddab..c07caead30 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-terse.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear bibliography style (MW)]
\RequireBibliographyStyle{ext-authornumber}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx
index 6e7e4c5071..c1e679c4e3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber-terse.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber-terse.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear citation style (MW)]
\RequireCitationStyle{ext-authornumber}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx
index cbf5219fad..f2f6fbbfea 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
\RequireBibliographyStyle{ext-authortitle}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx
index b0c3cc231a..1c4bc08b63 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authornumber.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authornumber.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx
index a11dae44ba..fb845abc14 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-common.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-common.bbx}
- [2022/06/18 v0.16 common files for extended biblatex
+ [2023/03/18 v0.17 common files for extended biblatex
authortitle bibliography styles (MW)]
\RequireBibliographyStyle{ext-dashed-common}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx
index cae2bde083..f1711f3717 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-comp.bbx}
- [2022/06/18 v0.16 extended biblatex authortitle-comp
+ [2023/03/18 v0.17 extended biblatex authortitle-comp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx
index b19a3ddc05..4ef136717a 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-comp.cbx}
- [2022/06/18 v0.16 extended biblatex authortitle-comp
+ [2023/03/18 v0.17 extended biblatex authortitle-comp
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx
index f8df7a8dbc..316a55ac3a 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-ibid.bbx}
- [2022/06/18 v0.16 extended biblatex authortitle-ibid
+ [2023/03/18 v0.17 extended biblatex authortitle-ibid
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx
index 7c904f83ae..b42d58a93d 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ibid.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-ibid.cbx}
- [2022/06/18 v0.16 extended biblatex authortitle-ibid
+ [2023/03/18 v0.17 extended biblatex authortitle-ibid
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx
index ba381c0a27..1e313f9447 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-icomp.bbx}
- [2022/06/18 v0.16 extended biblatex authortitle-icomp
+ [2023/03/18 v0.17 extended biblatex authortitle-icomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx
index da400c2739..21ee41c1dd 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-icomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-icomp.cbx}
- [2022/06/18 v0.16 extended biblatex authortitle-icomp
+ [2023/03/18 v0.17 extended biblatex authortitle-icomp
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx
index f9e54a1c08..52cf0c1e41 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-tcomp.bbx}
- [2022/06/18 v0.16 extended biblatex authortitle-tcomp
+ [2023/03/18 v0.17 extended biblatex authortitle-tcomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx
index 5c9abc38c6..f1fc8ef129 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-tcomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-tcomp.cbx}
- [2022/06/18 v0.16 extended biblatex authortitle-tcomp
+ [2023/03/18 v0.17 extended biblatex authortitle-tcomp
citation style (MW)]
\RequireCitationStyle{ext-authortitle-comp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx
index 6c2b172172..ca8c6d6d30 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-terse.bbx}
- [2022/06/18 v0.16 extended biblatex authortitle-terse
+ [2023/03/18 v0.17 extended biblatex authortitle-terse
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx
index 716af58d42..d5526a9925 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-terse.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-terse.cbx}
- [2022/06/18 v0.16 extended biblatex authortitle-terse
+ [2023/03/18 v0.17 extended biblatex authortitle-terse
citation style (MW)]
\RequireCitationStyle{ext-authortitle}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx
index ca3555bd8c..f18bf65b11 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-ticomp.bbx}
- [2022/06/18 v0.16 extended biblatex authortitle-ticomp
+ [2023/03/18 v0.17 extended biblatex authortitle-ticomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx
index 9ed7521061..ca87fa14b6 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-ticomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle-ticomp.cbx}
- [2022/06/18 v0.16 extended biblatex authortitle-ticomp citation style
+ [2023/03/18 v0.17 extended biblatex authortitle-ticomp citation style
(MW)]
\RequireCitationStyle{ext-authortitle-icomp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx
index 541307177f..1b6eb2f6bf 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle.bbx}
- [2022/06/18 v0.16 extended biblatex authortitle
+ [2023/03/18 v0.17 extended biblatex authortitle
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx
index d35a920059..1567ccf834 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authortitle.cbx}
- [2022/06/18 v0.16 extended biblatex authortitle citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authortitle citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx
index 1c1ec212e6..85eb1f2e52 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-common.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-common.bbx}
- [2022/06/18 v0.16 common files for extended biblatex
+ [2023/03/18 v0.17 common files for extended biblatex
authoryear bibliography styles (MW)]
\RequireBibliographyStyle{ext-dashed-common}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx
index 6f086f03ad..5f905d3187 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-comp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-comp
+ [2023/03/18 v0.17 extended biblatex authoryear-comp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx
index dbc22bd4d0..066ea16659 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-comp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-comp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-comp
+ [2023/03/18 v0.17 extended biblatex authoryear-comp
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx
index 12c4bd2257..905e4b7980 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-ecomp.bbx}
- [2022/06/18 v0.16 biblatex authoryear-ecomp
+ [2023/03/18 v0.17 biblatex authoryear-ecomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx
index ecbeb3148b..e41781703b 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ecomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-ecomp.cbx}
- [2022/06/18 v0.16 biblatex authoryear-ecomp
+ [2023/03/18 v0.17 biblatex authoryear-ecomp
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx
index fe1d491941..cad88b1a47 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-ibid.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-ibid
+ [2023/03/18 v0.17 extended biblatex authoryear-ibid
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx
index 74d64aa636..c46cea912c 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-ibid.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-ibid
+ [2023/03/18 v0.17 extended biblatex authoryear-ibid
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx
index c6407a0455..15e25f0f15 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-icomp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-icomp
+ [2023/03/18 v0.17 extended biblatex authoryear-icomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx
index 20f45c5468..f4c29738ad 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-icomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-icomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-icomp
+ [2023/03/18 v0.17 extended biblatex authoryear-icomp
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx
index 537e37699e..a3b50241a3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-iecomp.bbx}
- [2022/06/18 v0.16 biblatex authoryear-iecomp
+ [2023/03/18 v0.17 biblatex authoryear-iecomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx
index 39d3ae90cf..8d77b08a8d 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-iecomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-iecomp.cbx}
- [2022/06/18 v0.16 biblatex authoryear-iecomp
+ [2023/03/18 v0.17 biblatex authoryear-iecomp
citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx
index bca8652c8b..4a138ea8c1 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-tcomp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-tcomp
+ [2023/03/18 v0.17 extended biblatex authoryear-tcomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx
index 282e8c59ea..f263767188 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tcomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-tcomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-tcomp
+ [2023/03/18 v0.17 extended biblatex authoryear-tcomp
citation style (MW)]
\RequireCitationStyle{ext-authoryear-comp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx
index 72c68f6d73..7af3c159d4 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-tecomp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-tecomp
+ [2023/03/18 v0.17 extended biblatex authoryear-tecomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx
index 8ec7615f75..11b95fb345 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tecomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-tecomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-tecomp
+ [2023/03/18 v0.17 extended biblatex authoryear-tecomp
citation style (MW)]
\RequireCitationStyle{ext-authoryear-ecomp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx
index 9953ffe1ee..cd416934e4 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-terse.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-terse
+ [2023/03/18 v0.17 extended biblatex authoryear-terse
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx
index cfc3e8ebf3..9e20e67b7b 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-terse.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-terse.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-terse
+ [2023/03/18 v0.17 extended biblatex authoryear-terse
citation style (MW)]
\RequireCitationStyle{ext-authoryear}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx
index bbed7bff74..21f919201c 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-ticomp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-ticomp
+ [2023/03/18 v0.17 extended biblatex authoryear-ticomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
index e1cfa0ee24..b3c6e83b23 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-ticomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-ticomp citation style
+ [2023/03/18 v0.17 extended biblatex authoryear-ticomp citation style
(MW)]
\RequireCitationStyle{ext-authoryear-icomp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx
index 83f682bb0e..a7eeecf3e1 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-tiecomp.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear-tiecomp
+ [2023/03/18 v0.17 extended biblatex authoryear-tiecomp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx
index 1a2ea80cfb..03cac6f42e 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-tiecomp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear-tiecomp.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear-tiecomp citation style
+ [2023/03/18 v0.17 extended biblatex authoryear-tiecomp citation style
(MW)]
\RequireCitationStyle{ext-authoryear-iecomp}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx
index d7c30aa1ca..03ef7fbc19 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear.bbx}
- [2022/06/18 v0.16 extended biblatex authoryear bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
\RequireBibliographyStyle{authoryear}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx
index 1835e77634..88076192e3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-authoryear.cbx}
- [2022/06/18 v0.16 extended biblatex authoryear citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex authoryear citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def
index f54ad39faf..8029f25833 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-biblatex-aux.def
@@ -1,9 +1,9 @@
\ProvidesFile{ext-biblatex-aux.def}
- [2022/06/18 v0.16 auxiliaries for extended biblatex citation style
+ [2023/03/18 v0.17 auxiliaries for extended biblatex citation style
(MW)]
-\def\extblx@requiredbiblatexversion{3.17}
-\def\extblx@requiredbiblatexdate{2022/02/02}
+\def\extblx@requiredbiblatexversion{3.19}
+\def\extblx@requiredbiblatexdate{2023/03/05}
\protected\def\extblx@info{\PackageInfo{biblatex-ext}}
\protected\def\extblx@warning{\PackageWarning{biblatex-ext}}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx
index 246569a3bb..c6366ff59c 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-dashed-common.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-dashed-common.bbx}
- [2022/06/18 v0.16 common files for extended biblatex
+ [2023/03/18 v0.17 common files for extended biblatex
dashed bibliography styles (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx
index bbeb7faf63..10ccdd770f 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-numeric-comp.bbx}
- [2022/06/18 v0.16 extended biblatex numeric-comp
+ [2023/03/18 v0.17 extended biblatex numeric-comp
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx
index f77af8c920..07d3b86abc 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-numeric-comp.cbx}
- [2022/06/18 v0.16 extended biblatex numeric-comp citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex numeric-comp citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx
index 55eaacbfef..5d61ef9865 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-numeric-verb.bbx}
- [2022/06/18 v0.16 extended biblatex numeric-verb
+ [2023/03/18 v0.17 extended biblatex numeric-verb
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx
index 4efbff9493..42cfbb20ae 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-numeric-verb.cbx}
- [2022/06/18 v0.16 extended biblatex numeric-verb citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex numeric-verb citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx
index 53361a1243..0cf786cf75 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-numeric.bbx}
- [2022/06/18 v0.16 extended biblatex numeric bibliography style (MW)]
+ [2023/03/18 v0.17 extended biblatex numeric bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
\RequireBibliographyStyle{numeric}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx
index 40647f2e4e..fb9783e35f 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-numeric.cbx}
- [2022/06/18 v0.16 extended biblatex numeric citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex numeric citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx
index 215ca654fe..dc624ca2bf 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-standard.bbx
@@ -1,9 +1,9 @@
-% biblatex-ext v0.16 (2022-06-18)
+% biblatex-ext v0.17 (2023-03-18)
% Maintainer: Moritz Wemheuer
% Licence: LaTeX Project Public License v1.3c or later
%
\ProvidesFile{ext-standard.bbx}
- [2022/06/18 v0.16 extended biblatex standard style (MW)]
+ [2023/03/18 v0.17 extended biblatex standard style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
@@ -1321,7 +1321,7 @@
\endinput
-% Copyright 2017-2022 Moritz Wemheuer
+% Copyright 2017-2023 Moritz Wemheuer
%
% This work consists of the `.bbx`, `.cbx`, `.def`, `.sty` and `.lua`
% files
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx
index 3a76030b91..a70ef6f5ae 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-common.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-common.cbx}
- [2022/06/18 v0.16 extended biblatex verbose citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx
index db3df1ce81..887c04b978 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-ibid.bbx}
- [2022/06/18 v0.16 extended biblatex verbose-ibid
+ [2023/03/18 v0.17 extended biblatex verbose-ibid
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx
index 91f4f7685c..a1f3e76b5e 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-ibid.cbx}
- [2022/06/18 v0.16 extended biblatex verbose-ibid citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose-ibid citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx
index e489ac0460..6951edd3cf 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-inote.bbx}
- [2022/06/18 v0.16 extended biblatex verbose-inote
+ [2023/03/18 v0.17 extended biblatex verbose-inote
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx
index 8d58e61675..d7fd8e290f 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-inote.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-inote.cbx}
- [2022/06/18 v0.16 extended biblatex verbose-inote citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose-inote citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx
index 01dc1baac2..6b7c114946 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note-common.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-note-common.cbx}
- [2022/06/18 v0.16 extended biblatex verbose citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx
index d83c21bb8c..7ff143346a 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-note.bbx}
- [2022/06/18 v0.16 extended biblatex verbose-note
+ [2023/03/18 v0.17 extended biblatex verbose-note
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx
index 1d66a439db..ffb9b13cb5 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-note.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-note.cbx}
- [2022/06/18 v0.16 extended biblatex verbose-note citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose-note citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx
index 8e9acd8c27..7e4d7499c4 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-trad1.bbx}
- [2022/06/18 v0.16 extended biblatex verbose-trad1
+ [2023/03/18 v0.17 extended biblatex verbose-trad1
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx
index cbe0e5ca25..44cda15c61 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad1.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-trad1.cbx}
- [2022/06/18 v0.16 extended biblatex verbose-trad1 citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose-trad1 citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx
index 52b19ab055..94812c065a 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-trad2.bbx}
- [2022/06/18 v0.16 extended biblatex verbose-trad2
+ [2023/03/18 v0.17 extended biblatex verbose-trad2
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx
index b752ef7dd0..80c36dc6d8 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad2.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-trad2.cbx}
- [2022/06/18 v0.16 extended biblatex verbose-trad2 citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose-trad2 citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx
index 24c40fb0cf..406d496895 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-trad3.bbx}
- [2022/06/18 v0.16 extended biblatex verbose-trad3
+ [2023/03/18 v0.17 extended biblatex verbose-trad3
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx
index ca0dfa236d..a2245405ab 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-trad3.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose-trad3.cbx}
- [2022/06/18 v0.16 extended biblatex verbose-trad3 citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose-trad3 citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx
index 0847a361af..3317b39d6c 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose.bbx}
- [2022/06/18 v0.16 extended biblatex verbose
+ [2023/03/18 v0.17 extended biblatex verbose
bibliography style (MW)]
\RequireBibliographyStyle{ext-standard}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx
index 4b5af0622a..395a1259d3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.cbx
@@ -1,5 +1,5 @@
\ProvidesFile{ext-verbose.cbx}
- [2022/06/18 v0.16 extended biblatex verbose citation style (MW)]
+ [2023/03/18 v0.17 extended biblatex verbose citation style (MW)]
\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}
{}{}{}{}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/README b/macros/latex/contrib/biblatex-contrib/biblatex-publist/README
index a5c0f0781d..db58cebe33 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/README
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/README
@@ -46,6 +46,10 @@ instructions.
== CHANGES ==
+* V. 2.3 (2023-03-18)
+ - Change of sorting by means of \ExecutePublistOptions (via plsorting
+ or plauthorhandling) now works for all subsequent refsections.
+
* V. 2.2 (2022-03-01)
- Fix plsorting with custom sorting schemes (#44).
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
index e9cc7db2f9..3de8c85aaa 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
index 56d686a6c4..16c7241d6e 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
@@ -113,7 +113,7 @@
\thanks{Please report issues via \protect\url{https://github.com/jspitz/biblatex-publist}.}%
}
-\date{Version 2.2, 2023/03/01}
+\date{Version 2.3, 2023/03/18}
\maketitle
\begin{abstract}
@@ -369,20 +369,9 @@ The executed options apply as of the next bibliography (\jfcsmacro{printbibliogr
Options that \emph{cannot} be changed within a document that way are \joption{plnumbering} and \joption{pubstateextra},
as these options employ features that can only be set once per document.
However, please refer to sec.~\ref{sec:numbers} on how to address some frequently requested numbering changes.
+Also note that with the \joption{plauthor*} options, as opposed to repeated \jcsmacro{plauthorname} calls,
+repeated setting of these name options respectively \emph{overwrite}, and not extend, the previous name settings.
-Also note that
-\begin{itemize}
- \setlength\itemsep{0pt}
- \item with the \joption{plauthor*} options, as opposed to repeated \jcsmacro{plauthorname} calls,
- repeated setting of these name options respectively \emph{overwrite}, and not extend, the previous name
- settings.
- \item With \joption{plauthorhandling}, \bpl\ uses different sorting schemes for \joption{omit} (\texttt{ydt})
- and \joption{highlight} (\texttt{yndt}), considering the names as sorting factor only in the latter case
- (cf. sec.~\ref{sec:sorting}).
- Changing this option within a document, however, does \emph{not} adjust the sorting scheme if you use
- refsections (to make it work, \jfcsmacro{newrefcontext[sorting=<sorting scheme>]} will have to be set
- within each refsection). This is a \bibltx\ limitation which also applies to \joption{plsorting}.
-\end{itemize}
\subsection{Numbers Games}\label{sec:numbers}
@@ -903,13 +892,20 @@ or
\endrefcontext
\end{lstlisting}
%
-Note that if you use refsections, local sorting changes will only apply to the current
-refsection.
+Note that if you use refsections, the third approach will only apply to the current
+refsection (\jcsmacro{ExecutePublistOptions} will apply to all subsequent refsections
+until further change).
\section{Revision Log}
\begin{description}
+ \item [{V. 2.3 (2023/03/18):}]~
+ \begin{itemize}
+ \item Change of sorting by means of \jcsmacro{ExecutePublistOptions} (via \joption{plsorting}
+ or \joption{plauthorhandling}) now works for all subsequent refsections.
+ \end{itemize}
+
\item [{V. 2.2 (2023/03/01):}]~
\begin{itemize}
\item Fix \joption{plsorting} with custom sorting schemes.
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
index f52cbaf12b..cdb4ea966f 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
@@ -25,8 +25,8 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\bpl@version{2.2}
-\def\bpl@rdate{2023/03/01}
+\def\bpl@version{2.3}
+\def\bpl@rdate{2023/03/18}
\ProvidesFile{publist.bbx}[\bpl@rdate\space v.\bpl@version\space
biblatex bibliography style (JSP)]
@@ -499,6 +499,7 @@
\fi
\ifx\@onlypreamble\@notprerr
\newrefcontext[sorting=\bpl@scheme]
+ \AtFollowingRefsections{\newrefcontext[sorting=\bpl@scheme]}
\else
\ExecuteBibliographyOptions{sorting=\bpl@scheme}
\fi
@@ -538,6 +539,15 @@
{}{\PackageWarning{biblatex-publist}{Patching refsection failed!}}
}{}
+% Only provided by biblatex 3.20ff., so we roll our own
+\@ifundefined{AtFollowingRefsections}{%
+ \newrobustcmd*{\AtFollowingRefsections}{\gappto\blx@hook@refsection@following}
+ \patchcmd{\blx@refsection@i}%
+ {\csuse{blx@hook@refsectioninit}}%
+ {\csuse{blx@hook@refsectioninit}\csuse{blx@hook@refsection@following}}
+ {}{\PackageWarning{biblatex-publist}{Patching refsection failed!}}
+}{}
+
%
% Removing braces from names (courtesy of egreg at
% http://tex.stackexchange.com/a/79583/19291)
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
index cdbcc08d90..ee07e698c3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
@@ -26,8 +26,8 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\bpl@version{2.2}
-\def\bpl@rdate{2023/03/01}
+\def\bpl@version{2.3}
+\def\bpl@rdate{2023/03/18}
\ProvidesFile{publist.cbx}[\bpl@rdate\space v.\bpl@version\space
biblatex citation style (JSP)]
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx
index 2e2ba62090..3ebf0da52e 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx
@@ -1,5 +1,5 @@
% publist.dbx, biblatex data model specification for the biblatex-publist
-% package, version 2.2 (2023/03/01).
+% package, version 2.3 (2023/03/18).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
diff --git a/macros/latex/contrib/flexipage/README.txt b/macros/latex/contrib/flexipage/README.txt
index 64936e8a48..4136e52f27 100644
--- a/macros/latex/contrib/flexipage/README.txt
+++ b/macros/latex/contrib/flexipage/README.txt
@@ -2,6 +2,7 @@ LaTeX package flexipage
Copyright (c) Anton Vrba, 2022
-------------------------------------------------------------------
Version:
+ 2023/03/17 1.02 fixd bug with fixed page sizes
2022/10/01 1.01 added the option: extrafirstfoot
2022/07/09 1.00 Initial release
Licence:
diff --git a/macros/latex/contrib/flexipage/flexipage.dtx b/macros/latex/contrib/flexipage/flexipage.dtx
index 0315c1c102..b3f4667854 100644
--- a/macros/latex/contrib/flexipage/flexipage.dtx
+++ b/macros/latex/contrib/flexipage/flexipage.dtx
@@ -27,7 +27,8 @@
%<package>\ProvidesPackage{flexipage}
%<*package>
% [2022/07/09 1.00 Easy page geometry]
- [2022/10/01 1.01 First Page different footer]
+% [2022/10/01 1.01 First Page different footer]
+ [2023/03/17 1.02 Fixed bug re fixed page sizes]
%</package>
%
%<*driver>
@@ -343,7 +344,7 @@
\NewDocumentCommand \flx@setpapersize {o o m}{
\setlength{\flx@paperheight}{#2#3}
-\setlength{\flx@paperwidth}{#2#3}
+\setlength{\flx@paperwidth}{#1#3}
}
diff --git a/macros/latex/contrib/flexipage/flexipage.pdf b/macros/latex/contrib/flexipage/flexipage.pdf
index 290f8f7b16..8076bab7f8 100644
--- a/macros/latex/contrib/flexipage/flexipage.pdf
+++ b/macros/latex/contrib/flexipage/flexipage.pdf
Binary files differ
diff --git a/macros/latex/contrib/fnbreak/ChangeLog b/macros/latex/contrib/fnbreak/ChangeLog
index 301dbe53ed..28fa704ae9 100644
--- a/macros/latex/contrib/fnbreak/ChangeLog
+++ b/macros/latex/contrib/fnbreak/ChangeLog
@@ -1,3 +1,7 @@
+v1.40 2023-03-18:
+ - Using the new LaTeX hook management.
+ - Fixed some typos in the documentation.
+
v1.30 2012/01/01:
- Fix verbose mode for non-numeric labels
- Add options `nonverbose' and `label'
@@ -21,4 +25,4 @@ v1.00 2004/04/01:
- Patch \@footnotetext instead of re-writing it.
v0.10 2003/04/03:
- - Initial version
+ - Initial version \ No newline at end of file
diff --git a/macros/latex/contrib/fnbreak/Makefile b/macros/latex/contrib/fnbreak/Makefile
index 31d0846124..1dd53218e2 100644
--- a/macros/latex/contrib/fnbreak/Makefile
+++ b/macros/latex/contrib/fnbreak/Makefile
@@ -75,5 +75,4 @@ install: all
install -m644 fnbreak.pdf $(DOCDIR)
texhash
-fnbreak.sty: fnbreak.ins fnbreak.dtx
-
+fnbreak.sty: fnbreak.ins fnbreak.dtx \ No newline at end of file
diff --git a/macros/latex/contrib/fnbreak/README b/macros/latex/contrib/fnbreak/README
index b2f0911a84..4e675a703e 100644
--- a/macros/latex/contrib/fnbreak/README
+++ b/macros/latex/contrib/fnbreak/README
@@ -4,20 +4,23 @@ fnbreak.sty
This package detects footnotes that are split over several pages. It
writes a warning into the log file.
-
-Copyright 2003, 2004, 2006, 2010, 2012 Harald Harders
-
-This program can be redistributed and/or modified under the terms
-of the LaTeX Project Public License Distributed from CTAN
-archives in directory macros/latex/base/lppl.txt; either
-version 1 of the License, or any later version.
-
-
+Copyright © 2003, 2004, 2006, 2010, 2012, 2023 Harald Harders (harald.harders@gmx.de; inactive)
+(2023-03-18 update done by H.-Martin Münch, Martin.Muench AT Uni-Bonn.de)
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either
+version 1.3c of this license or (at your option) any later
+version. This version of this license is in
+ https://www.latex-project.org/lppl/lppl-1-3c.txt
+and the latest version of this license is in
+ https://www.latex-project.org/lppl.txt
+and version 1.3c or later is part of all distributions of
+LaTeX version 2005-12-01 or later.
Installation:
automatic: - run make install
- or
+ or
- run make
- copy fnbreak.sty to a place where LaTeX can find it
- run texhash or the corresponding command of your distribution
@@ -27,7 +30,4 @@ by hand: - execute latex on fnbreak.ins
- copy fnbreak.sty to a place LaTeX can find it
- run texhash or the corresponding command of your distribution
-
-2012/01/01
-Harald Harders
-harald.harders@gmx.de
+2023-03-18 \ No newline at end of file
diff --git a/macros/latex/contrib/fnbreak/fnbreak.dtx b/macros/latex/contrib/fnbreak/fnbreak.dtx
index 1cc54cdfda..5306cef84c 100644
--- a/macros/latex/contrib/fnbreak/fnbreak.dtx
+++ b/macros/latex/contrib/fnbreak/fnbreak.dtx
@@ -1,5 +1,9 @@
-% \iffalse meta comment
-% File: fnbreak.dtx Copyright (C) 2003, 2004, 2006, 2010, 2012 Harald Harders
+% \iffalse meta-comment
+%
+% File: fnbreak.dtx
+% Copyright © 2003, 2004, 2006, 2010, 2012, 2023 Harald Harders (inactive)
+% (2023-03-18 update done by H.-Martin Münch, Martin.Muench AT Uni-Bonn.de)
+% Info: Warning for pagebreak in footnote (HH)
% \fi
%
% \iffalse
@@ -7,7 +11,7 @@
%<*driver>
\documentclass{ltxdoc}
\title{The \texttt{fnbreak} package}
-\author{Harald Harders\\\texttt{harald.harders@gmx.de}}
+\author{Harald Harders\\\texttt{harald.harders@gmx.de}\\(inactive)}
\date{Version \fileversion, \filedate, Printed \today}
\EnableCrossrefs
\CodelineIndex
@@ -15,13 +19,12 @@
\DoNotIndex{\setcounter,\space,\ifx,\else,\fi}
\CodelineNumbered
\RecordChanges
-\CheckSum{202}
\IfFileExists{fnbreak-v.tex}{%
\input{fnbreak-v.tex}
\GetFileInfo{fnbreak-v.tex}
}{%
\PackageError{fnbreak}{File fnbreak-v.tex not found,
- please\MessageBreak
+ please\MessageBreak
run `latex fnbreak.ins' first}{No additional help}%
\def\fileversion{\textbf{??}}%
\def\filedate{\textbf{??}}%
@@ -43,12 +46,12 @@
% \tableofcontents
%
% \section*{Copyright}
-% Copyright 2003, 2004, 2006, 2010, 2012 Harald Harders.
+% Copyright 2003, 2004, 2006, 2010, 2012, 2023 Harald Harders.
%
% This program can be redistributed and/or modified under the terms
% of the LaTeX Project Public License Distributed from CTAN
% archives in directory macros/latex/base/lppl.txt; either
-% version 1.3 of the License, or any later version.
+% version 1.3c of the License, or any later version.
%
% \section{The user interface}
%
@@ -68,13 +71,15 @@
%\end{verbatim}
% Sometimes, complicated footnote labels are used (for example, when
% using symbols):
+% \pagebreak
+%
%\begin{verbatim}
%Package fnbreak Warning: Footnote number 1
%(fnbreak) (label `\ensuremath {*}')
%(fnbreak) has been split over different pages:
%(fnbreak) page 1 to page 2.
%\end{verbatim}
-% In some cases may complex footnote labels may prevent |fnbreak| from
+% In some cases complex footnote labels may prevent |fnbreak| from
% functioning.
% \begin{macro}{nolabel}
% \begin{macro}{label}
@@ -84,7 +89,7 @@
%\end{verbatim}
% Then the label is omitted in the warning:
%\begin{verbatim}
-%Package fnbreak Warning: Footnote number 1
+%Package fnbreak Warning: Footnote number 1
%(fnbreak) has been split over different pages:
%(fnbreak) page 1 to page 2.
%\end{verbatim}
@@ -93,7 +98,7 @@
%
% \begin{macro}{\fnbreaknolabel}
% \begin{macro}{\fnbreaklabel}
-% You may switsch on and off printing of the footnote label in the
+% You may switch on and off printing of the footnote label in the
% warnings also by using the macros \cs{fnbreaknolabel} and \cs{fnbreaklabel}.
% \end{macro}
% \end{macro}
@@ -102,13 +107,13 @@
% the footnote spans over a double page or flipsides.
% The result is shown in the warning:
%\begin{verbatim}
-%Package fnbreak Warning: Footnote number 1
+%Package fnbreak Warning: Footnote number 1
%(fnbreak) has been split over different pages (flipsides):
%(fnbreak) page 1 to page 2.
%\end{verbatim}
% or:
%\begin{verbatim}
-%Package fnbreak Warning: Footnote number 1
+%Package fnbreak Warning: Footnote number 1
%(fnbreak) has been split over different pages (double page):
%(fnbreak) page 2 to page 3.
%\end{verbatim}
@@ -124,7 +129,7 @@
% The output looks as follows:
%\begin{verbatim}
%Package fnbreak Note: Footnote number 2
-%(fnbreak) (label `2')
+%(fnbreak) (label `2')
%(fnbreak) completely on page 3.
%\end{verbatim}
% \end{macro}
@@ -132,16 +137,15 @@
%
% \begin{macro}{\fnbreaknonverbose}
% \begin{macro}{\fnbreakverbose}
-% You may switsch on and off printing footnote information for
+% You may switch on and off printing footnote information for
% non-split footnotes using the macros \cs{fnbreaknonverbose} and
% \cs{fnbreakverbose}.
% \end{macro}
% \end{macro}
%
-%
-%
% \StopEventually{\PrintChanges \PrintIndex}
%
+% \pagebreak
% \section{The implementation}
%
% The approach of this package is very simple:
@@ -151,16 +155,19 @@
%
% Heading of the package:
% \begin{macrocode}
+%<package>\NeedsTeXFormat{LaTeX2e}[2017/04/15]
%<package>\ProvidesPackage{fnbreak}
%<version>\ProvidesFile{fnbreak-v.tex}
-%<package|version> [2012/01/01 v1.30 Warning for pagebreak in footnote (HH)]
+%<package|version> [2023-03-18 v1.40 Warning for pagebreak in footnote (HH)]
%<*package>
% \end{macrocode}
% Declare an option to show not only the footnote number but also the
% label.
% \changes{1.11}{2006/05/08}{Allow commands in page number}%
% \begin{macrocode}
+
\RequirePackage{ifthen}
+
% \end{macrocode}
% Declare an option to show not only the footnote number but also the
% label.
@@ -169,12 +176,14 @@
% \begin{macrocode}
\newif\iffnb@showlabel
\newif\iffnb@verbose
+
\DeclareOption{label}{\fnb@showlabeltrue}
\DeclareOption{nolabel}{\fnb@showlabelfalse}
\DeclareOption{verbose}{\fnb@verbosetrue}
\DeclareOption{nonverbose}{\fnb@verbosefalse}
\ExecuteOptions{label,nonverbose}
\ProcessOptions\relax
+
% \end{macrocode}
% \begin{macro}{\fnbreakverbose}
% \begin{macro}{\fnbreaknonverbose}
@@ -191,33 +200,66 @@
% \begin{macrocode}
\newcommand*\fnbreaklabel{\fnb@showlabeltrue}
\newcommand*\fnbreaknolabel{\fnb@showlabelfalse}
+
% \end{macrocode}
% \end{macro}
% \end{macro}
% Define new counter and boolean for determining whether a split
-% footnote spans ofer a double page or flipsides.
+% footnote spans over a double page or flipsides.
% \changes{1.20}{2010/08/09}{Distinguish between split over double
% page or flipsides}%
% \begin{macrocode}
\newcounter{fnb@@numberpages}
+
\newif\iffnb@@isdoublepage
+
% \end{macrocode}
% Define default values in order to avoid possible problems:
% \changes{1.00}{2004/04/01}{Correct some internal macro names}%
% \begin{macrocode}
\xdef\fnb@@footnotestartnum{0}
\xdef\fnb@@footnotestartpage{0}
+\def\fnb@globalwarning{}
% \end{macrocode}
% When the aux file is read the first time (before \cs{begin\{document\}},
% do nothing:
% \begin{macrocode}
\def\fnb@footnotestart#1#2#3{}
\def\fnb@footnoteend#1#2#3{}
+
+% \end{macrocode}
+% Define command that writes the footnote start marker to the aux
+% file:
+% \begin{macrocode}
+\def\fnb@fnstart{\@bsphack
+ \protected@write\@auxout{}{%
+ \string\fnb@footnotestart{\the\c@footnote}{\thefootnote}{\thepage}%
+ }%
+ \@esphack%
+ }
+
+% \end{macrocode}
+% Define command that writes the footnote end marker to the aux file:
+% \begin{macrocode}
+\def\fnb@fnend{\@bsphack
+ \protected@write\@auxout{}{%
+ \string\fnb@footnoteend{\the\c@footnote}{\thefootnote}{\thepage}%
+ }%
+ \@esphack%
+ }
+
+% \end{macrocode}
+% Provide the command \cs{IfFormatAtLeastTF} for old \LaTeX-formats
+% which did not know it yet:
+%
+% \begin{macrocode}
+\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
+
% \end{macrocode}
% Define the working commands at \cs{begin\{document\}} in order to
% activate them when the aux file is read at the end of the document:
% \begin{macrocode}
-\AtBeginDocument{%
+\AtBeginDocument{% = \AddToHook{begindocument}
% \end{macrocode}
% If the start of a footnote has been found, just define commands
% containing the footnote number (only for debugging) and the start page:
@@ -232,8 +274,8 @@
% anymore}%
% \changes{1.00}{2004/04/01}{Use the footnote number instead of the
% label, show both in the warning}%
-% If the end of a footnote has been found, test wheather the footnote
-% numbers fit and wheather the start and end pages are the same. If
+% If the end of a footnote has been found, test whether the footnote
+% numbers fit and whether the start and end pages are the same. If
% one of the tests fails, generate a warning:\footnote{Thanks to
% Bastien Roucaries for pointing at a problem with symbol footnote
% marks.}
@@ -244,7 +286,7 @@
% \end{macrocode}
% Test if start and end refer to the same footnote.
% \begin{macrocode}
- \ifx\fnb@@footnotestartnum\fnb@@footnoteendnum
+ \ifx\fnb@@footnotestartnum\fnb@@footnoteendnum%
% \end{macrocode}
% Test if the footnote ends on the same page it has started.
% \changes{1.11}{2006/05/08}{Allow commands in page number}%
@@ -256,30 +298,31 @@
% Simulate a variant of \cs{PackageInfo} which is also written to the
% output rather than only to the log file.
% \changes{1.30}{2012/01/01}{Fix verbose mode for non-numeric labels}
+% \pagebreak
% \begin{macrocode}
- \iffnb@verbose
- \begingroup
+ \iffnb@verbose%
+ \begingroup%
\def\MessageBreak{^^J(fnbreak)\@spaces\@spaces\@spaces\@spaces}%
- \set@display@protect
+ \set@display@protect%
\immediate\write\@unused{^^JPackage fnbreak Note:%
- \space\space\space\space Footnote number #1
- \iffnb@showlabel\MessageBreak (label `#2') \fi
- \MessageBreak
+ \space\space\space\space Footnote number #1%
+ \iffnb@showlabel\MessageBreak (label `#2') \fi%
+ \MessageBreak%
completely on page #3.^^J}%
- \endgroup
- \fi
+ \endgroup%
+ \fi%
}{%
% \end{macrocode}
% No, the footnote contains a pagebreak.
%
-% If the page labels are plain numbers we can determine whether a
-% footnot spans over a double page or a flipside.\footnote{Thanks to
-% Martin M\"unch for the idea of determining double pages.}
+% If the page labels are plain (arabic) numbers we can determine whether a
+% footnote spans over a double page or a flipside.\footnote{Thanks to
+% H.-Martin Münch for the idea of determining double pages.}
% \changes{1.20}{2010/08/09}{Distinguish between split over double
% page or flipsides}%
% |fnb@@numberpages = 0| is used if the code cannot find out whether a
% footnote spans over a double page (i.\,e., for non-integer page
-% numbers or single-side documents).
+% numbers or single-sided documents).
% \begin{macrocode}
\setcounter{fnb@@numberpages}{0}%
% \end{macrocode}
@@ -288,7 +331,7 @@
% If this is not the case please report to the author including a
% minimal example file.
% \begin{macrocode}
- \if@twoside
+ \if@twoside%
% \end{macrocode}
% We can find double pages only if the start page as well as the end
% page are numbers.
@@ -306,128 +349,105 @@
% If the footnote starts on an odd page, flipside occurs in any case.
% \begin{macrocode}
\ifodd \fnb@@footnotestartpage{}%
- \fnb@@isdoublepagefalse
+ \fnb@@isdoublepagefalse%
% \end{macrocode}
% If the footnote starts on an odd page, a double page is found if the
% number of pages equals two.
% \begin{macrocode}
- \else
+ \else%
\ifnum \thefnb@@numberpages=2{}%
- \fnb@@isdoublepagetrue
+ \fnb@@isdoublepagetrue%
% \end{macrocode}
% If the number of pages is larger, flipside.
% \begin{macrocode}
- \else
- \fnb@@isdoublepagefalse
- \fi
- \fi
- \fi
- \fi
- \fi
+ \else%
+ \fnb@@isdoublepagefalse%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
% \end{macrocode}
% Print a warning.
%
-% If not determined whether a double page occurs:
+% \noindent If not determined whether a double page occurs:
% \begin{macrocode}
- \ifnum\thefnb@@numberpages=0
- \PackageWarningNoLine{fnbreak}{Footnote number #1
- \iffnb@showlabel\MessageBreak (label `#2')\fi
- \MessageBreak
- has been split over different pages:\MessageBreak
+ \ifnum\thefnb@@numberpages=0%
+ \PackageWarningNoLine{fnbreak}{Footnote number #1%
+ \iffnb@showlabel\MessageBreak (label `#2')\fi%
+ \MessageBreak%
+ has been split over different pages:\MessageBreak%
page \fnb@@footnotestartpage\space to page #3}%
% \end{macrocode}
% For a double page:
% \begin{macrocode}
- \else
- \iffnb@@isdoublepage
- \PackageWarningNoLine{fnbreak}{Footnote number #1
- \iffnb@showlabel\MessageBreak (label `#2')\fi
- \MessageBreak
- has been split over different pages (double page):\MessageBreak
+ \else%
+ \iffnb@@isdoublepage%
+ \PackageWarningNoLine{fnbreak}{Footnote number #1%
+ \iffnb@showlabel\MessageBreak (label `#2')\fi%
+ \MessageBreak%
+ has been split over different pages (double page):\MessageBreak%
page \fnb@@footnotestartpage\space to page #3}%
% \end{macrocode}
% For a flipside:
% \begin{macrocode}
- \else
- \PackageWarningNoLine{fnbreak}{Footnote number #1
- \iffnb@showlabel\MessageBreak (label `#2')\fi
- \MessageBreak
- has been split over different pages (flipside):\MessageBreak
+ \else%
+ \PackageWarningNoLine{fnbreak}{Footnote number #1%
+ \iffnb@showlabel\MessageBreak (label `#2')\fi%
+ \MessageBreak%
+ has been split over different pages (flipside):\MessageBreak%
page \fnb@@footnotestartpage\space to page #3}%
- \fi
- \fi
+ \fi%
+ \fi%
% \end{macrocode}
% Redefine the \cs{fnb@globalwarning} to print a warning at the end of
% the log file.
% \begin{macrocode}
\def\fnb@globalwarning{%
- \PackageWarningNoLine{fnbreak}{There are footnotes with a
- pagebreak.\MessageBreak
+ \PackageWarningNoLine{fnbreak}{There are footnotes with a %
+ pagebreak.\MessageBreak%
Check if they are acceptable}%
}%
}%
- \else
+ \else%
% \end{macrocode}
% This macro trys to handle different footnotes.
% This may not happen and is an internal error.
% \begin{macrocode}
- \PackageError{fnbreak}{Internal problem:\MessageBreak
- Start and stop marker of footnote do not fit:\MessageBreak
- start: \fnb@@footnotestartnum, page \fnb@@footnotestartpage,
+ \PackageError{fnbreak}{Internal problem:\MessageBreak%
+ Start and stop marker of footnote do not fit:\MessageBreak%
+ start: \fnb@@footnotestartnum, page \fnb@@footnotestartpage, %
end: #1, page #3}{%
- This error may not happen.
- Please try to make a short example which shows this behaviour
+ This error may not happen. %
+ Please try to make a short example which shows this behaviour %
and send a bug report to harald.harders@gmx.de.}%
- \fi
- }%
- }
-% \end{macrocode}
-% Define command that writes the footnote start marker to the aux
-% file:
-% \begin{macrocode}
- \def\fnb@fnstart{\@bsphack
- \protected@write\@auxout{}{%
- \string\fnb@footnotestart{\the\c@footnote}{\thefootnote}{\thepage}%
- }%
- \@esphack
- }
-% \end{macrocode}
-% Define command that writes the footnote end marker to the aux file:
-% \begin{macrocode}
- \def\fnb@fnend{\@bsphack
- \protected@write\@auxout{}{%
- \string\fnb@footnoteend{\the\c@footnote}{\thefootnote}{\thepage}%
+ \fi%
}%
- \@esphack
- }
% \end{macrocode}
% \changes{1.00}{2004/04/01}{Patch \cs{@footnotetext} instead of
% re-writing it}%
% Redefine \cs{@footnotetext} by patching the calls \cs{fnb@fnstart}
% and \cs{fnb@fnend} after all other packages have been
-% loaded.\footnote{Thanks to Bastien Roucaries for that patch}
+% loaded.\footnote{Thanks to Bastien Roucaries for that patch.}
% \begin{macrocode}
-\AtBeginDocument{%
\newcommand\fnb@orig@footnotetext{}%
- \let\fnb@orig@footnotetext\@footnotetext
+ \let\fnb@orig@footnotetext\@footnotetext%
\long\def\@footnotetext#1{\fnb@orig@footnotetext{\fnb@fnstart#1\fnb@fnend}}%
% \end{macrocode}
-% \changes{1.10}{2004/04/06}{Write a warning at the end of the log
-% file}%
-% Append \cs{fnb@globalwarning} to \cs{@dofilelist} in order to print
-% the global warning \cs{fnb@globalwarning} after all other messages,
-% e.g., the \cs{listfiles} list.
+% \changes{1.10}{2004/04/06}{Write a warning at the end of the log file}%
+% \changes{1.40}{2023-03-18}{Do not mess with \cs{@dofilelist}, use \cs{AddToHook{enddocument/info}}}%
+% Add \cs{fnb@globalwarning} to the info/warning messages
+% printed at the end of the .log file after the \cs{listfiles} list.
% \begin{macrocode}
- \newcommand\fnb@dofilelist{}%
- \let\fnb@dofilelist\@dofilelist
- \def\@dofilelist{\fnb@dofilelist\fnb@globalwarning}%
-}
-% \end{macrocode}
-% Initialise \cs{fnb@globalwarning} to print no warning by default.
-% \begin{macrocode}
-\newcommand\fnb@globalwarning{}%
-\let\fnb@globalwarning\relax
+ \IfFormatAtLeastTF{2021-11-15}{%
+ \AddToHook{enddocument/info}{\fnb@globalwarning}%
+ }{\newcommand\fnb@dofilelist{}%
+ \let\fnb@dofilelist\@dofilelist%
+ \def\@dofilelist{\fnb@dofilelist\fnb@globalwarning}%
+ }%
+ }
%</package>
% \end{macrocode}
%
% \Finale
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/fnbreak/fnbreak.ins b/macros/latex/contrib/fnbreak/fnbreak.ins
index dd3b8bd3dc..279c4b2584 100644
--- a/macros/latex/contrib/fnbreak/fnbreak.ins
+++ b/macros/latex/contrib/fnbreak/fnbreak.ins
@@ -3,14 +3,18 @@
fnbreak package
- Copyright 2003, 2004, 2006, 2010, 2012 Harald Harders
-
- This program can be redistributed and/or modified under the terms
- of the LaTeX Project Public License Distributed from CTAN
- archives in directory macros/latex/base/lppl.txt; either
- version 1.3 of the License, or any later version.
-
- harald.harders@gmx.de
+ Copyright (c) 2003, 2004, 2006, 2010, 2012, 2023 Harald Harders (harald.harders@gmx.de; inactive)
+ (2023-03-18 update done by H.-Martin Muench, Martin.Muench AT Uni-Bonn.de)
+
+ This work may be distributed and/or modified under the
+ conditions of the LaTeX Project Public License, either
+ version 1.3c of this license or (at your option) any later
+ version. This version of this license is in
+ https://www.latex-project.org/lppl/lppl-1-3c.txt
+ and the latest version of this license is in
+ https://www.latex-project.org/lppl.txt
+ and version 1.3c or later is part of all distributions of
+ LaTeX version 2005-12-01 or later.
\endpreamble
diff --git a/macros/latex/contrib/fnbreak/fnbreak.pdf b/macros/latex/contrib/fnbreak/fnbreak.pdf
index 6ae5f00b07..982a38a392 100644
--- a/macros/latex/contrib/fnbreak/fnbreak.pdf
+++ b/macros/latex/contrib/fnbreak/fnbreak.pdf
Binary files differ
diff --git a/macros/latex/contrib/fnbreak/fnbreak.xml b/macros/latex/contrib/fnbreak/fnbreak.xml
index 72d4cfd055..99c0f191c9 100644
--- a/macros/latex/contrib/fnbreak/fnbreak.xml
+++ b/macros/latex/contrib/fnbreak/fnbreak.xml
@@ -1,18 +1,18 @@
<?xml version="1.0"?>
<!DOCTYPE entry SYSTEM "../catalogue.dtd">
<entry id="fnbreak"
- datestamp="2012/01/01"
+ datestamp="2023-03-18"
modifier="harald.harders@gmx.de">
<about>
<name>fnbreak</name>
<caption>Warn for footnotes split over pages.</caption>
<author>
- <name>Harald Harders</name>
+ <name>Harald Harders (inactive)</name>
<email>harald.harders@gmx.de</email>
</author>
<license type="lppl"/>
<version>
- <number>1.30</number>
+ <number>1.40</number>
</version>
</about>
<description>
@@ -25,4 +25,4 @@
<texlive>latex3</texlive>
<ctan>macros/latex/contrib/fnbreak</ctan>
</distribution>
-</entry>
+</entry> \ No newline at end of file
diff --git a/macros/latex/contrib/fnbreak/fnbreaktest.tex b/macros/latex/contrib/fnbreak/fnbreaktest.tex
index 4fdeb31373..53ac082f3d 100644
--- a/macros/latex/contrib/fnbreak/fnbreaktest.tex
+++ b/macros/latex/contrib/fnbreak/fnbreaktest.tex
@@ -8,476 +8,482 @@
\usepackage[symbol]{footmisc}
\def\thepage{\textsc{\roman{page}}}
\begin{document}
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.\footnote{%
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note.}
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.\footnote{Hallo}
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.\footnote{%
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note. Hier ist eine Fu\ss note.
- Hier ist eine Fu\ss note.}
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-Das ist ein langer Text. Das ist ein langer Text.
-\end{document}
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.\footnote{%
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.}
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.\footnote{Hello!}
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.\footnote{%
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote. Here is a footnote.
+ Here is a footnote.}
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+This is a long text. This is a long text.
+\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/jeuxcartes/README.md b/macros/latex/contrib/jeuxcartes/README.md
index f7d63ad098..85921d2e46 100644
--- a/macros/latex/contrib/jeuxcartes/README.md
+++ b/macros/latex/contrib/jeuxcartes/README.md
@@ -10,5 +10,7 @@ Poker v2 cards Image's Licence : Public Domain https://tekeye.uk/playing_card
Poker v3 cards Image's Licence : Public Domain https://www.me.uk/cards/
Poker v4 cards Image's Licence : CC BY-SA 4.0 https://commons.wikimedia.org/wiki/File:Computer_screen_playing_cards_deck.svg
Poker v5 cards Image's Licence : Public Domain https://www.me.uk/cards/
+Poker fr cards Image's Licence.: LGPL-2.1 license https://svg-cards.sourceforge.net/
+Poker bi cards Image's Licence.: LGPL-3 license https://github.com/tfbkny/blackjack
Tarot v1 cards Image's Licence : Public Domain https://freesvg.org/deck-of-french-tarot-playing-cards
Uno v1 cards Image's Licence : MIT License https://eperezcosano.github.io/uno-part1/ \ No newline at end of file
diff --git a/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf b/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf
index c67a9202b5..d4451abc83 100644
--- a/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf
+++ b/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex b/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex
index 3ac8a72802..9f4bb4a337 100644
--- a/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex
+++ b/macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex
@@ -2,8 +2,8 @@
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode}
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
-\documentclass{article}
-\usepackage[french]{babel}
+\documentclass[a4paper]{article}
+\usepackage[svgnames]{xcolor}
\usepackage{iftex,ifpdf,ifxetex,ifluatex}
\ifpdftex
\usepackage[utf8]{inputenc}
@@ -15,17 +15,17 @@
\usepackage{amsmath,amssymb}
\fi
\ifluatex
- \RequirePackage[math-style=french,bold-style=ISO]{fourier-otf}
-\fi
-\ifxetex
- \RequirePackage[math-style=french,bold-style=ISO]{fourier-otf}
+ \usepackage[bold-style=ISO,math-style=french]{fourier-otf}
+ \setsansfont{Fira Sans}[Scale=MatchLowercase]
\fi
\usepackage{fontawesome5}
\usepackage{enumitem}
\usepackage{JeuxCartes}
\usepackage{tabularray}
+\usepackage{textcomp}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
+\usepackage{multicol}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\lfoot{\sffamily \small [JeuxCartes]}
@@ -69,13 +69,15 @@
\setlength{\parindent}{0pt}
\definecolor{LightGray}{gray}{0.9}
-\def\TPversion{0.2.3}
-\def\TPdate{25 Février 2023}
+\def\TPversion{0.2.4}
+\def\TPdate{18 Mars 2023}
\usepackage[most]{tcolorbox}
\usepackage[outputdir=build]{minted}
\tcbuselibrary{minted}
+\usepackage[french]{babel}
+
\tcbset{vignettes/.style={%
nobeforeafter,box align=base,boxsep=0pt,enhanced,sharp corners=all,rounded corners=southeast,%
boxrule=0.75pt,left=7pt,right=1pt,top=0pt,bottom=0.25pt,%
@@ -86,7 +88,16 @@
vignettes,%
colframe=CadetBlue,coltitle=white,colback=CadetBlue!5,%
overlay={\begin{tcbclipinterior}%
- \fill[fill=lightgray!50]($(interior.south west)$) rectangle node[rotate=90]{\tiny \sffamily{\textcolor{CadetBlue}{\scalebox{0.6}[0.75]{\textbf{\LaTeX}}}}} ($(interior.north west)+(5pt,0pt)$);%
+ \fill[fill=lightgray!50]($(interior.south west)$) rectangle node[rotate=90]{\tiny \sffamily{\textcolor{CadetBlue}{\scalebox{0.75}[0.75]{\textbf{\LaTeX}}}}} ($(interior.north west)+(5pt,0pt)$);%
+ \end{tcbclipinterior}}
+ }
+}
+\tcbset{vignetteMaJ/.style={%
+ fontupper={\vphantom{pf}\footnotesize\ttfamily},
+ vignettes,%
+ colframe=ForestGreen!50!black,coltitle=white,colback=ForestGreen!25,%
+ overlay={\begin{tcbclipinterior}%
+ \fill[fill=ForestGreen!75]($(interior.south west)$) rectangle node[rotate=90]{\tiny \sffamily{\textcolor{Black}{\scalebox{0.85}[0.75]{\textbf{MàJ}}}}} ($(interior.north west)+(5pt,0pt)$);%
\end{tcbclipinterior}}
}
}
@@ -110,7 +121,10 @@
colback=white,colframe=ForestGreen!75,title={\small \faPaperclip} Clés et options,fonttitle=\sffamily\bfseries,left=3pt,right=3pt,top=2pt,bottom=2pt,#1}
%petite vignette tex
-\newcommand\ctex[1]{\tcbox[vignettelatex]{#1}}
+\newcommand\ctex[1]{\tcbox[vignettelatex]{#1}\xspace}
+
+%petite vignette màj
+\newcommand\cmaj[1]{\tcbox[vignetteMaJ]{#1}\xspace}
\title{%
\begin{minipage}{0.85\linewidth}
@@ -163,7 +177,7 @@ Une commande pour des cartes en version \og miniatures \fg{} (individuelle, main
\vspace{0.5cm}
\begin{center}
- \MainCartesJeu[Eventail,EspH=0,EspV=0.1]{7K § 8P § DT § AP § 10C § AC § 8T § 2K § VC}\hspace{0.5cm}\MainCartesJeu[TypeJeu=Tarot,EspH=0.85,EspV=0.2]{Exc § 1AT § CC § 8T § 2K § 5AT § 2AT § DP § 7T § 10C § 19AT § VP}
+ \MainCartesJeu[StyleJeu=bicycl,Eventail,EspH=0,EspV=0.1]{7K § 8P § DT § AP § 10C § AC § 8T § 2K § VC}\hspace{0.5cm}\MainCartesJeu[TypeJeu=Tarot,EspH=0.85,EspV=0.2]{Exc § 1AT § CC § 8T § 2K § 5AT § 2AT § DP § 7T § 10C § 19AT § VP}
\end{center}
\hfill{}\textit{Merci aux membres du groupe \faFacebook{} du \og Coin \LaTeX{} \fg{} pour leur aide et leurs idées !}
@@ -195,23 +209,25 @@ Une commande pour des cartes en version \og miniatures \fg{} (individuelle, main
\part{Historique}
-{\small \bverb|v0.2.3 |~:~~~~Ajout d'une clé \textsf{inverse} + dos Uno + style v5 pour le Poker
+{\small \bverb|v0.2.4|~:~~~~Ajout du style carte Poker \textsf{fr} + style Bicycle \textsf{bicycl} + ajout d'une clé \textsf{<StyleJeu>}
+
+{\small \bverb|v0.2.3|~:~~~~Ajout d'une clé \textsf{<inverse>} + dos Uno + style \textsf{v5} pour le Poker
-{\small \bverb|v0.2.2a|~:~~~~Ajout d'un style v4 pour le Poker
+{\small \bverb|v0.2.2|~:~~~~Ajout d'un style \textsf{v4} pour le Poker
-{\small \bverb|v0.2.1 |~:~~~~Correction du nom d'une carte Poker (v1)...
+{\small \bverb|v0.2.1|~:~~~~Correction du nom d'une carte Poker \textsf{v1}
-{\small \bverb|v0.2.0 |~:~~~~Modification du design des cartes (pdf pour Poker/Uno + png pour Tarot) + alternatives pour le Poker
+{\small \bverb|v0.2.0|~:~~~~Modification du design des cartes (pdf pour Poker/Uno + png pour Tarot) + alternatives pour le Poker
-{\small \bverb|v0.1.4 |~:~~~~Réduction de la taille des images \texttt{png}
+{\small \bverb|v0.1.4|~:~~~~Réduction de la taille des images \texttt{png}
-{\small \bverb|v0.1.3 |~:~~~~Ajout de cartes Uno (CC1.0 par AlexDer) + modification des commandes + rami
+{\small \bverb|v0.1.3|~:~~~~Ajout de cartes Uno (CC1.0 par AlexDer) + modification des commandes + rami
-{\small \bverb|v0.1.2 |~:~~~~Modification du nom (et de la source) des images de Tarot (CC0)
+{\small \bverb|v0.1.2|~:~~~~Modification du nom (et de la source) des images de Tarot (CC0)
-{\small \bverb|v0.1.1 |~:~~~~Ajout de commandes pour des mini-cartes
+{\small \bverb|v0.1.1|~:~~~~Ajout de commandes pour des mini-cartes
-{\small \bverb|v0.1 |~:~~~~Version initiale
+{\small \bverb|v0.1 |~:~~~~Version initiale
\vfill~
@@ -229,13 +245,15 @@ L'idée de ce package est de proposer, comme le fait \ctex{pst-poker}, des comma
Les cartes disponibles sont : :
%
\begin{itemize}
- \item les cartes type \textsf{Poker v1} (Licence : LGPL-2.1 license) \url{https://github.com/htdebeer/SVG-cards}
- \item les cartes type \textsf{Poker v2} (Licence : Public Domain) \url{https://tekeye.uk/playing_cards/svg-playing-cards}
- \item les cartes type \textsf{Poker v3} (Licence : Public Domain) \url{https://www.me.uk/cards/}
- \item les cartes type \textsf{Poker v4} (Licence : CC BY-SA 4.0) \url{https://commons.wikimedia.org/wiki/File:Computer_screen_playing_cards_deck.svg}
- \item les cartes type \textsf{Poker v5} (Licence : Public Domain) \url{https://www.me.uk/cards/}
- \item les cartes type \textsf{Tarot} (Licence : Public Domain) \url{https://freesvg.org/deck-of-french-tarot-playing-cards}
- \item les cartes type \textsf{Uno} (Licence : MIT License) \url{https://eperezcosano.github.io/uno-part1/}
+ \item les cartes type \textsf{Poker v1} (LGPL-2.1 license) \url{https://github.com/htdebeer/SVG-cards}
+ \item les cartes type \textsf{Poker v2} (Public Domain) \url{https://tekeye.uk/playing_cards/svg-playing-cards}
+ \item les cartes type \textsf{Poker v3} (Public Domain) \url{https://www.me.uk/cards/}
+ \item les cartes type \textsf{Poker v4} (CC BY-SA 4.0) \url{https://commons.wikimedia.org/wiki/File:Computer_screen_playing_cards_deck.svg}
+ \item les cartes type \textsf{Poker v5} (Public Domain) \url{https://www.me.uk/cards/}
+ \item \cmaj{0.2.4} les cartes type \textsf{Poker fr} (LGPL-2.1 license) \url{https://svg-cards.sourceforge.net/}
+ \item \cmaj{0.2.4} les cartes type \textsf{bicycle} (LGPL-3.0 license) \url{https://github.com/tfbkny/blackjack}
+ \item les cartes type \textsf{Tarot} (Public Domain) \url{https://freesvg.org/deck-of-french-tarot-playing-cards}
+ \item les cartes type \textsf{Uno} (MIT License) \url{https://eperezcosano.github.io/uno-part1/}
\end{itemize}
\end{codeidee}
@@ -243,9 +261,8 @@ Les cartes disponibles sont : :
Le {package} \ctex{JeuxCartes} charge les {packages} :
\begin{itemize}
- \item \ctex{tikz}, \ctex{pifont}, \ctex{xfp}, \ctex{pgffor}, \ctex{xinttools} ;
- \item \ctex{listofitems}, \ctex{xstring} et \ctex{simplekv} ;
- \item \ctex{randomlist}, \ctex{xcolor} avec les options \ctex{[table,svgnames]}.
+ \item \ctex{tikz}, \ctex{pifont}, \ctex{pgffor}, \ctex{xinttools} ;
+ \item \ctex{listofitems}, \ctex{xstring}, \ctex{simplekv} et \ctex{randomlist}.
\end{itemize}
\end{codeinfo}
@@ -323,8 +340,8 @@ Les \textsf{codes} seront présentés dans des \textsf{boîtes} \textcolor{red!7
Les \textit{Jeux} disponibles sont :
\begin{itemize}
- \item \Cle{Poker(vX)}, \Cle{Tarot} et \Cle{Uno} pour l'affichage des cartes ;
- \item \Cle{Poker(vX)}, \Cle{Bataille(vX)}, \Cle{Rami(vX)}, \Cle{Belote(vX)}, \Cle{Tarot} et \Cle{Uno} pour les mains aléatoires ;
+ \item \Cle{Poker}, \Cle{Tarot} et \Cle{Uno} pour l'affichage des cartes ;
+ \item \Cle{Poker}, \Cle{Bataille}, \Cle{Rami}, \Cle{Belote}, \Cle{Tarot} et \Cle{Uno} pour les mains aléatoires ;
\item \Cle{Poker} et \Cle{Tarot} pour les \textit{mini-}cartes.
\end{itemize}
\end{codeinfo}
@@ -361,9 +378,9 @@ Les \textit{Jeux} disponibles sont :
\subsection{Introduction}
\begin{codeinfo}
-La commande \ctex{AffCarteJeu} affiche une carte, avec un système de clés/options.
+La commande \ctex{\textbackslash AffCarteJeu} affiche une carte, avec un système de \textsf{clés/options}.
-La commande \ctex{AffCartesJeu} affiche une liste de cartes en mode \textit{côte à côte}, avec un système de clés/options.
+La commande \ctex{\textbackslash AffCartesJeu} affiche une liste de cartes en mode \textit{côte à côte}, avec un système de \textsf{clés/options}.
\end{codeinfo}
\begin{codetex}[]
@@ -427,7 +444,8 @@ Concernant les \Cle{options} :
\begin{itemize}
\item la clé \Cle{Hauteur} correspond à la hauteur voulue, en cm, de la carte ; \hfill{}défaut \Cle{4.25}
- \item la clé \Cle{TypeJeu} (parmi \Cle{Poker(vX)} ou \Cle{Tarot} ou \Cle{Uno}) pour spécifier les cartes à utiliser ; \hfill{}défaut \Cle{Poker}
+ \item la clé \Cle{TypeJeu} (parmi \Cle{Poker} ou \Cle{Tarot} ou \Cle{Uno}) pour spécifier les cartes à utiliser ; \hfill{}défaut \Cle{Poker}
+ \item \cmaj{0.2.4} la clé \Cle{Stylejeu} (parmi \Cle{v1}, \ldots, \Cle{v5}, \Cle{fr} ou \Cle{bicycl}) pour spécifier le style des cartes \textsf{Poker} ; \hfill{}défaut \Cle{v1}
\item la clé \Cle{Rotation} pour une éventuelle rotation de la carte ; \hfill{}défaut \Cle{0}
\item la clé \Cle{AlignementV} pour l'alignement vertical (lié à \ctex{raisebox} ou à \TikZ) ; \hfill{}défaut \Cle{0.5}
\item le booléen \Cle{Tikz} pour préciser que la carte est \textit{autonome}, dans un environnement \ctex{tikzpicture} ; \hfill{}défaut \Cle{false}
@@ -469,28 +487,29 @@ On obtient la main \AffCartesJeu[Hauteur=2,TypeJeu=Uno]{9B § 8R § P2J § P4 §
\subsection{Designs disponibles pour les cartes classiques (Poker)}
\begin{codeinfo}
-Il existe 5 versions de design des cartes \textit{classiques}, accessibles via les clés :
-
+Il existe 7 versions de design des cartes \textit{classiques}, accessibles via les clés :
+\vspace*{-0.75\baselineskip}
+\begin{multicols}{4}
\begin{itemize}
- \item \Cle{Poker} ;
- \item \Cle{Pokerv2} ;
- \item \Cle{Pokerv3} ;
- \item \Cle{Pokerv4} ;
- \item \Cle{Pokerv5}.
+ \item \Cle{v1} ;
+ \item \Cle{v2} ;
+ \item \Cle{v3} ;
+ \item \Cle{v4} ;
+ \item \Cle{v5} ;
+ \item \Cle{fr} \cmaj{0.2.4} ;
+ \item \Cle{bicycl} \cmaj{0.2.4}.
\end{itemize}
+\end{multicols}
\end{codeinfo}
\begin{codetex}[]
-\textbf{Design v1} :\\
-\AffCartesJeu[Hauteur=2]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
-\textbf{Design v2} :\\
-\AffCartesJeu[Hauteur=2,TypeJeu=Pokerv2]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
-\textbf{Design v3} :\\
-\AffCartesJeu[Hauteur=2,TypeJeu=Pokerv3]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
-\textbf{Design v4} :\\
-\AffCartesJeu[Hauteur=2,TypeJeu=Pokerv4]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
-\textbf{Design v5} :\\
-\AffCartesJeu[Hauteur=2,TypeJeu=Pokerv5]{DK § AP § 10T § VP § 8T § RT § 9C} \\
+\textbf{Design v1} :\\ \AffCartesJeu[Hauteur=2,StyleJeu=v1]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
+\textbf{Design v2} :\\ \AffCartesJeu[Hauteur=2,StyleJeu=v2]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
+\textbf{Design v3} :\\ \AffCartesJeu[Hauteur=2,StyleJeu=v3]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
+\textbf{Design v4} :\\ \AffCartesJeu[Hauteur=2,StyleJeu=v4]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
+\textbf{Design v5} :\\ \AffCartesJeu[Hauteur=2,StyleJeu=v5]{DK § AP § 10T § VP § 8T § RT § 9C} \\ \\
+\textbf{Design fr} :\\ \AffCartesJeu[Hauteur=2,StyleJeu=fr]{DK § AP § 10T § VP § 8T § RT § 9C} \hfill\cmaj{0.2.4}\\ \\
+\textbf{Design bi} :\\ \AffCartesJeu[Hauteur=2,StyleJeu=bicycl]{DK § AP § 10T § VP § 8T § RT § 9C}\hfill\cmaj{0.2.4} \\
\end{codetex}
\pagebreak
@@ -524,7 +543,8 @@ Les \Cle{options} sont les suivantes :
\begin{itemize}
\item la clé \Cle{Hauteur} correspond à la hauteur voulue, en cm, des cartes ; \hfill{}défaut \Cle{4.25}
- \item la clé \Cle{TypeJeu} (parmi \Cle{Poker(vX)} ou \Cle{Tarot} ou \Cle{Uno}) pour spécifier les cartes à utiliser ; \hfill{}défaut \Cle{Poker}
+ \item la clé \Cle{TypeJeu} (parmi \Cle{Poker} ou \Cle{Tarot} ou \Cle{Uno}) pour spécifier les cartes à utiliser ; \hfill{}défaut \Cle{Poker}
+ \item \cmaj{0.2.4} la clé \Cle{Stylejeu} (parmi \Cle{v1}, \ldots, \Cle{v5}, \Cle{fr} ou \Cle{bicycl}) pour spécifier le style des cartes \textsf{Poker} ; \hfill{}défaut \Cle{v1}
\item la clé \Cle{EspH} correspond à coefficient d'espacement horizontal (\textit{proche} du cm en taille réelle) entre les cartes ; \hfill{}défaut \Cle{1}
\item la clé \Cle{EspH} correspond à coefficient d'espacement vertical (\textit{proche} du cm en taille réelle) entre les cartes ; \hfill{}défaut \Cle{0}
\item le booléen \Cle{Eventail} pour une présentation en éventail ; \hfill{}défaut \Cle{false}
@@ -600,7 +620,8 @@ Les \Cle{options} sont les suivantes :
\begin{itemize}
\item la clé \Cle{Hauteur} correspond à la hauteur voulue, en cm, des cartes ; \hfill{}défaut \Cle{4.25}
- \item la clé \Cle{TypeJeu} (parmi \Cle{Poker(vX)} ou \Cle{Belote(vX)} ou \Cle{Bataille(vX)} ou \Cle{Rami(vX)} ou \Cle{Uno} ou \Cle{Tarot}) ; \hfill{}défaut \Cle{Poker}
+ \item la clé \Cle{TypeJeu} (parmi \Cle{Poker} ou \Cle{Belote} ou \Cle{Bataille} ou \Cle{Rami} ou \Cle{Uno} ou \Cle{Tarot}) ; \hfill{}défaut \Cle{Poker}
+ \item \cmaj{0.2.4} la clé \Cle{Stylejeu} (parmi \Cle{v1}, \ldots, \Cle{v5}, \Cle{fr} ou \Cle{bicycl}) pour spécifier le style des cartes type \textsf{Poker/Belote/Rami/Bataille} ; \hfill{}défaut \Cle{v1}
\item la clé \Cle{EspH} correspond à coefficient d'espacement horizontal (\textit{proche} du cm en taille réelle) entre les cartes ; \hfill{}défaut \Cle{1}
\item la clé \Cle{EspH} correspond à coefficient d'espacement vertical (\textit{proche} du cm en taille réelle) entre les cartes ; \hfill{}défaut \Cle{0}
\item le booléen \Cle{Eventail} pour une présentation en éventail ; \hfill{}défaut \Cle{false}
@@ -614,10 +635,10 @@ Les \Cle{options} sont les suivantes :
En ce qui concerne les \textit{jeux} disponibles (non modifiables) :
\begin{itemize}
- \item \Cle{Poker(vX)} : 52 cartes (sans Joker) ;
- \item \Cle{Belote(vX)} : 32 cartes (sans Joker) ;
- \item \Cle{Bataille(vX)} : 54 cartes (avec Jokers) ;
- \item \Cle{Rami(vX)} : 108 cartes (avec Jokers) ;
+ \item \Cle{Poker} : 52 cartes (sans Joker) ;
+ \item \Cle{Belote} : 32 cartes (sans Joker) ;
+ \item \Cle{Bataille} : 54 cartes (avec Jokers) ;
+ \item \Cle{Rami} : 108 cartes (avec Jokers) ;
\item \Cle{Tarot} : 78 cartes ;
\item \Cle{Uno}.
\end{itemize}
@@ -627,19 +648,19 @@ En ce qui concerne les \textit{jeux} disponibles (non modifiables) :
\begin{codetex}[]
\textbf{\large Belote v1 \& Belote v4 \& Belote v5 :} \\ \\
-\MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Belote]{8} ou \MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Belotev4]{8} ou \MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Belotev5]{8}.\\ \\
-\textbf{\large Poker v1 \& Poker v3 :} \\ \\
-\MainCartesJeuAleatoire[Hauteur=2.5,Eventail,EspH=0,EspV=0.1]{5} ou \MainCartesJeuAleatoire[Hauteur=2.5,Eventail,EspH=0,EspV=0.1,TypeJeu=Pokerv3]{5}.\\ \\
+\MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Belote]{8} ou \MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Belote,StyleJeu=v4]{8} ou \MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Belote,StyleJeu=v5]{8}.\\ \\
+\textbf{\large Poker fr \& Poker v3 :} \\ \\
+\MainCartesJeuAleatoire[Hauteur=2.5,Eventail,EspH=0,EspV=0.1]{5} ou \MainCartesJeuAleatoire[Hauteur=2.5,Eventail,EspH=0,EspV=0.1,StyleJeu=v3]{5}.\\ \\
\textbf{\large Bataille v2 :} \\ \\
-\MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Bataillev2]{27}\\ \\
+\MainCartesJeuAleatoire[Hauteur=2.5,TypeJeu=Bataille,StyleJeu=v2]{27}\\ \\
\textbf{\large Tarot :} \\
\MainCartesJeuAleatoire[Hauteur=3.25,TypeJeu=Tarot]{10} ou~
\MainCartesJeuAleatoire[Hauteur=3.25,Eventail,TypeJeu=Tarot,EspH=0,EspV=0.1]{10}.
\end{codetex}
\begin{codetex}[]
-\textbf{\large Rami v2 :} \\ \\
-\MainCartesJeuAleatoire[Hauteur=3.75,TypeJeu=Ramiv2]{15}\\ \\
+\textbf{\large Rami bicycl :} \\ \\
+\MainCartesJeuAleatoire[Hauteur=3.75,TypeJeu=Rami,StyleJeu=bicycl]{15}\\ \\
\textbf{\large Uno :} \\ \\
\MainCartesJeuAleatoire[Hauteur=4,TypeJeu=Uno,Eventail,EspH=-0.1,Rotation=15,EspV=0.1]{7}
\end{codetex}
@@ -694,14 +715,14 @@ Quelques \Cle{options} pour les \textit{mini-}cartes :
\begin{itemize}
\item la clé \Cle{Largeur} pour gérer la largeur des miniatures ; \hfill{}défaut \Cle{0.55cm}
- \item la clé \Cle{FondAtout} pour gérer la couleur de fond pour les atouts. \hfill{}défaut \Cle{PeachPuff}
+ \item la clé \Cle{FondAtout} pour gérer la couleur de fond pour les atouts. \hfill{}défaut \Cle{yellow}
\end{itemize}
\end{codecles}
\begin{codetex}[]
\foreach \EECARTE in {2,3,4,5,6,7,8,9,10,V,C,D,R,A}{\AffMiniCarteJeu[Largeur=0.75cm]{\EECARTE.K}}\\
-\AffMiniCarteJeu[FondAtout=LightSkyBlue,Largeur=0.75cm]{Exc}%
-\foreach \EECARTE in {1,2,...,21}{\AffMiniCarteJeu[FondAtout=LightSkyBlue,Largeur=0.75cm]{\EECARTE.AT}}
+\AffMiniCarteJeu[FondAtout=cyan,Largeur=0.75cm]{Exc}%
+\foreach \EECARTE in {1,2,...,21}{\AffMiniCarteJeu[FondAtout=cyan,Largeur=0.75cm]{\EECARTE.AT}}
\end{codetex}
\subsection{\textit{Mini}-Mains et \textit{mini}-mains aléatoires}
@@ -757,15 +778,15 @@ Dos disponibles : \texttt{Dos}
\medskip
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85]{#1P}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85,StyleJeu=v1]{#1P}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85]{#1C}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85,StyleJeu=v1]{#1C}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85]{#1K}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85,StyleJeu=v1]{#1K}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85]{#1T}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[Hauteur=1.85,StyleJeu=v1]{#1T}}
-\AffCarteJeu[Hauteur=1.85]{JN}\AffCarteJeu[Hauteur=1.85]{JR}\AffCarteJeu[Hauteur=1.85]{Dos}%
+\AffCarteJeu[Hauteur=1.85,StyleJeu=v1]{JN}\AffCarteJeu[Hauteur=1.85,StyleJeu=v1]{JR}\AffCarteJeu[Hauteur=1.85,StyleJeu=v1]{Dos}%
%\xintFor #1 in {Bleu,BleuVert,Fuchsia,Gris,Jaune,Marron,Navy,Noir,Olive,Vert,Violet}\do{\AffCarteJeu[Hauteur=1.75]{Dos#1}}
\subsection{Poker/Bataille/Belote/Rami (v2)}
@@ -774,15 +795,15 @@ Dos disponibles : \texttt{DosBleu} ou \texttt{DosRouge} ou \texttt{DosBleu2} ou
\medskip
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{#1P}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{#1P}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{#1C}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{#1C}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{#1K}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{#1K}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{#1T}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{#1T}}
-\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{JN}\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{JR}\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{DosBleu}\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{DosRouge}\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{DosBleu2}\AffCarteJeu[TypeJeu=Pokerv2,Hauteur=1.85]{DosRouge2}%
+\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{JN}\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{JR}\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{DosBleu}\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{DosRouge}\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{DosBleu2}\AffCarteJeu[StyleJeu=v2,Hauteur=1.85]{DosRouge2}%
%\xintFor #1 in {Bleu,BleuVert,Fuchsia,Gris,Jaune,Marron,Navy,Noir,Olive,Vert,Violet}\do{\AffCarteJeu[Hauteur=1.75]{Dos#1}}
\pagebreak
@@ -793,15 +814,15 @@ Dos disponibles : \texttt{DosNoir} ou \texttt{DosRouge}
\medskip
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{#1P}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{#1P}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{#1C}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{#1C}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{#1K}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{#1K}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{#1T}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{#1T}}
-\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{JN}\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{JR}\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{DosNoir}\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{DosRouge}%
+\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{JN}\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{JR}\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{DosNoir}\AffCarteJeu[StyleJeu=v3,Hauteur=1.85]{DosRouge}%
\subsection{Poker/Bataille/Belote/Rami (v4)}
@@ -809,15 +830,15 @@ Dos disponibles : \texttt{DosBleu} ou \texttt{DosRouge}
\medskip
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{#1P}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{#1P}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{#1C}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{#1C}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{#1K}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{#1K}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{#1T}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{#1T}}
-\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{JN}\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{JR}\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{DosRouge}\AffCarteJeu[TypeJeu=Pokerv4,Hauteur=1.85]{DosBleu}%
+\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{JN}\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{JR}\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{DosRouge}\AffCarteJeu[StyleJeu=v4,Hauteur=1.85]{DosBleu}%
\pagebreak
@@ -827,15 +848,49 @@ Dos disponibles : \texttt{DosNoir} ou \texttt{DosRouge}
\medskip
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv5,Hauteur=1.85]{#1P}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{#1P}}
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{#1C}}
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{#1K}}
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{#1T}}
+
+\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{JN}\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{JR}\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{DosRouge}\AffCarteJeu[StyleJeu=v5,Hauteur=1.85]{DosNoir}%
+
+\subsection{Poker/Bataille/Belote/Rami (fr)}
+
+Dos disponibles : \texttt{DosBleu} ou \texttt{DosRouge}
+
+\medskip
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{#1P}}
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{#1C}}
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{#1K}}
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{#1T}}
+
+\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{JN}\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{JR}\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{DosRouge}\AffCarteJeu[StyleJeu=fr,Hauteur=1.85]{DosBleu}%
+
+\pagebreak
+
+\subsection{Poker/Bataille/Belote/Rami (bic)}
+
+Dos disponibles : \texttt{DosBleu} ou \texttt{DosRouge}
+
+\medskip
+
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{#1P}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv5,Hauteur=1.85]{#1C}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{#1C}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv5,Hauteur=1.85]{#1K}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{#1K}}
-\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[TypeJeu=Pokerv5,Hauteur=1.85]{#1T}}
+\xintFor #1 in {2,3,4,5,6,7,8,9,10,V,D,R,A}\do{\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{#1T}}
-\AffCarteJeu[TypeJeu=Pokerv5,Hauteur=1.85]{JN}\AffCarteJeu[TypeJeu=Pokerv5,Hauteur=1.85]{JR}\AffCarteJeu[TypeJeu=Pokerv3,Hauteur=1.85]{DosRouge}\AffCarteJeu[TypeJeu=Pokerv5,Hauteur=1.85]{DosNoir}%
+\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{JN}\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{JR}\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{DosRouge}\AffCarteJeu[StyleJeu=bicycl,Hauteur=1.85]{DosBleu}%
\subsection{Cartes Tarot}
@@ -903,12 +958,12 @@ L'\textit{origine} des cartes est fixée, au coin bas-gauche, et la \Cle{Rotatio
\begin{tikzpicture}
\draw[thin,lightgray] (-5,-5) grid (5,3) ; %grille rajoutée pour la lisibilité du code
\foreach \ptsupport in {(0,0),(3,-4),(-3,-1),(-2,-3.5),(2,2.75),(-4.5,-4.5),,(1,-2.5)}%
- {\filldraw[Gray] \ptsupport circle[radius=2pt] ;} %poits rajouté pour la lisibilité du code
+ {\filldraw[gray] \ptsupport circle[radius=2pt] ;} %points rajouté pour la lisibilité du code
\foreach \x in {-5,-4,...,5} \draw[lightgray] (\x,-5) node[below,font=\small] {$\x$} ;
\foreach \y in {-5,-4,...,3} \draw[lightgray] (-5,\y) node[left,font=\small] {$\y$} ;
\AffCarteJeu[Hauteur=2,Tikz=true,TikzAutonome=false]%
{10C}
- \AffCarteJeu[TypeJeu=Pokerv2,Hauteur=2.5,Tikz=true,TikzAutonome=false,DecalageX=3,DecalageY=-4]%
+ \AffCarteJeu[StyleJeu=v2,Hauteur=2.5,Tikz=true,TikzAutonome=false,DecalageX=3,DecalageY=-4]%
{JN}
\AffCarteJeu[Hauteur=3,Tikz=true,TikzAutonome=false,DecalageX=-3,DecalageY=-1,Rotation=20]%
{JR}
@@ -920,7 +975,7 @@ L'\textit{origine} des cartes est fixée, au coin bas-gauche, et la \Cle{Rotatio
\AffCarteJeu[TypeJeu=Uno,Hauteur=2,Tikz=true,TikzAutonome=false,DecalageX=-4.5,DecalageY=-4.5]%
{P4}
\AffCarteJeu%
- [TypeJeu=Pokerv4,Hauteur=1.75,Tikz=true,TikzAutonome=false,Rotation=-10,DecalageX=1,DecalageY=-2.5]%
+ [StyleJeu=v4,Hauteur=1.75,Tikz=true,TikzAutonome=false,Rotation=-10,DecalageX=1,DecalageY=-2.5]%
{RP}
\end{tikzpicture}
\end{codetex}
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10C.pdf
new file mode 100644
index 0000000000..4ad326b690
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10K.pdf
new file mode 100644
index 0000000000..9be209cc9e
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10P.pdf
new file mode 100644
index 0000000000..bb56c47cfb
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10T.pdf
new file mode 100644
index 0000000000..975b7e8087
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-10T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2C.pdf
new file mode 100644
index 0000000000..f8e7009274
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2K.pdf
new file mode 100644
index 0000000000..bddec87453
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2P.pdf
new file mode 100644
index 0000000000..f4cc44b58a
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2T.pdf
new file mode 100644
index 0000000000..0d9ef07904
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-2T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3C.pdf
new file mode 100644
index 0000000000..ef67c1132b
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3K.pdf
new file mode 100644
index 0000000000..b46c379c13
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3P.pdf
new file mode 100644
index 0000000000..ff4036f80d
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3T.pdf
new file mode 100644
index 0000000000..d61d8810ae
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-3T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4C.pdf
new file mode 100644
index 0000000000..f27b9f9873
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4K.pdf
new file mode 100644
index 0000000000..b842544514
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4P.pdf
new file mode 100644
index 0000000000..40de7bfa8e
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4T.pdf
new file mode 100644
index 0000000000..c68c98b9a0
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-4T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5C.pdf
new file mode 100644
index 0000000000..17ddda9257
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5K.pdf
new file mode 100644
index 0000000000..a2117ddf38
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5P.pdf
new file mode 100644
index 0000000000..cd55583dae
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5T.pdf
new file mode 100644
index 0000000000..aef4763d9f
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-5T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6C.pdf
new file mode 100644
index 0000000000..e4d20e1f2b
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6K.pdf
new file mode 100644
index 0000000000..adf94585a7
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6P.pdf
new file mode 100644
index 0000000000..66b7a3c3e4
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6T.pdf
new file mode 100644
index 0000000000..3e54d161bc
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-6T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7C.pdf
new file mode 100644
index 0000000000..2b153dde68
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7K.pdf
new file mode 100644
index 0000000000..f786953c4b
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7P.pdf
new file mode 100644
index 0000000000..a2d510e9aa
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7T.pdf
new file mode 100644
index 0000000000..6e38543e32
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-7T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8C.pdf
new file mode 100644
index 0000000000..bb51e314b2
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8K.pdf
new file mode 100644
index 0000000000..320c41ecab
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8P.pdf
new file mode 100644
index 0000000000..94f1383823
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8T.pdf
new file mode 100644
index 0000000000..5716f364bc
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-8T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9C.pdf
new file mode 100644
index 0000000000..04da204df8
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9K.pdf
new file mode 100644
index 0000000000..fa3c156764
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9P.pdf
new file mode 100644
index 0000000000..e04f4318d6
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9T.pdf
new file mode 100644
index 0000000000..67c5185f99
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-9T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AC.pdf
new file mode 100644
index 0000000000..16398e779a
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AK.pdf
new file mode 100644
index 0000000000..cbe3b7b271
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AP.pdf
new file mode 100644
index 0000000000..6f30c87833
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AT.pdf
new file mode 100644
index 0000000000..2c617c3565
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-AT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DC.pdf
new file mode 100644
index 0000000000..9b49ceec16
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DK.pdf
new file mode 100644
index 0000000000..bdeedededb
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DP.pdf
new file mode 100644
index 0000000000..c6f44ca4e1
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DT.pdf
new file mode 100644
index 0000000000..1b3d279c2e
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosBleu.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosBleu.pdf
new file mode 100644
index 0000000000..f569a19858
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosBleu.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosRouge.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosRouge.pdf
new file mode 100644
index 0000000000..09c7b32c22
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-DosRouge.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JN.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JN.pdf
new file mode 100644
index 0000000000..ac36b4c188
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JN.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JR.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JR.pdf
new file mode 100644
index 0000000000..28414290b4
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-JR.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RC.pdf
new file mode 100644
index 0000000000..145d34040f
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RK.pdf
new file mode 100644
index 0000000000..38e448802e
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RP.pdf
new file mode 100644
index 0000000000..7558c9dfaa
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RT.pdf
new file mode 100644
index 0000000000..38cdab31aa
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-RT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VC.pdf
new file mode 100644
index 0000000000..58209aa897
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VK.pdf
new file mode 100644
index 0000000000..a9cc425f17
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VP.pdf
new file mode 100644
index 0000000000..127e34e285
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VT.pdf
new file mode 100644
index 0000000000..856a00e082
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRbic-VT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10C.pdf
new file mode 100644
index 0000000000..d3ea15096c
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10K.pdf
new file mode 100644
index 0000000000..f9064ca98a
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10P.pdf
new file mode 100644
index 0000000000..2f88d2b495
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10T.pdf
new file mode 100644
index 0000000000..53926efa75
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-10T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2C.pdf
new file mode 100644
index 0000000000..8f970c732a
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2K.pdf
new file mode 100644
index 0000000000..36935196da
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2P.pdf
new file mode 100644
index 0000000000..9c9cf1b4c4
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2T.pdf
new file mode 100644
index 0000000000..6531cee845
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-2T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3C.pdf
new file mode 100644
index 0000000000..360a11bace
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3K.pdf
new file mode 100644
index 0000000000..128abdb8da
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3P.pdf
new file mode 100644
index 0000000000..24a2dec75f
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3T.pdf
new file mode 100644
index 0000000000..7bf8c9319f
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-3T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4C.pdf
new file mode 100644
index 0000000000..ab1bf3d22f
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4K.pdf
new file mode 100644
index 0000000000..0e2576c0f2
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4P.pdf
new file mode 100644
index 0000000000..af9bb0f956
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4T.pdf
new file mode 100644
index 0000000000..21037bf381
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-4T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5C.pdf
new file mode 100644
index 0000000000..82bc4a8b16
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5K.pdf
new file mode 100644
index 0000000000..804916da41
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5P.pdf
new file mode 100644
index 0000000000..2b3b227593
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5T.pdf
new file mode 100644
index 0000000000..0bdfc70d09
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-5T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6C.pdf
new file mode 100644
index 0000000000..ec7f91cfce
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6K.pdf
new file mode 100644
index 0000000000..18a15ed861
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6P.pdf
new file mode 100644
index 0000000000..26d4120fed
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6T.pdf
new file mode 100644
index 0000000000..519349a547
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-6T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7C.pdf
new file mode 100644
index 0000000000..28800f4ad3
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7K.pdf
new file mode 100644
index 0000000000..36fb4123d3
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7P.pdf
new file mode 100644
index 0000000000..00454470a4
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7T.pdf
new file mode 100644
index 0000000000..8ce9fd17be
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-7T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8C.pdf
new file mode 100644
index 0000000000..ad92a53df1
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8K.pdf
new file mode 100644
index 0000000000..8bf8ea2d15
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8P.pdf
new file mode 100644
index 0000000000..2abac1f7fd
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8T.pdf
new file mode 100644
index 0000000000..c079d0c4c9
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-8T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9C.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9C.pdf
new file mode 100644
index 0000000000..9901f3574d
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9C.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9K.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9K.pdf
new file mode 100644
index 0000000000..6aac0f9f31
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9K.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9P.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9P.pdf
new file mode 100644
index 0000000000..f0dbb861aa
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9P.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9T.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9T.pdf
new file mode 100644
index 0000000000..b49b71d9e4
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-9T.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AC.pdf
new file mode 100644
index 0000000000..0e86ce2bce
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AK.pdf
new file mode 100644
index 0000000000..6ea1e4d82f
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AP.pdf
new file mode 100644
index 0000000000..8c17ced4af
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AT.pdf
new file mode 100644
index 0000000000..a7621fa99e
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-AT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DC.pdf
new file mode 100644
index 0000000000..d88f1e264a
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DK.pdf
new file mode 100644
index 0000000000..cc1764f7ac
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DP.pdf
new file mode 100644
index 0000000000..97ba07ef05
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DT.pdf
new file mode 100644
index 0000000000..9136fc1377
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosBleu.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosBleu.pdf
new file mode 100644
index 0000000000..b740f37ff1
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosBleu.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosRouge.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosRouge.pdf
new file mode 100644
index 0000000000..3fdcce6e66
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-DosRouge.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JN.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JN.pdf
new file mode 100644
index 0000000000..8803b227d4
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JN.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JR.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JR.pdf
new file mode 100644
index 0000000000..dd458024f2
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-JR.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RC.pdf
new file mode 100644
index 0000000000..d98e0172d0
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RK.pdf
new file mode 100644
index 0000000000..97da1a445e
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RP.pdf
new file mode 100644
index 0000000000..160cd14e00
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RT.pdf
new file mode 100644
index 0000000000..7183bb13d1
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-RT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VC.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VC.pdf
new file mode 100644
index 0000000000..a44243ebeb
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VC.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VK.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VK.pdf
new file mode 100644
index 0000000000..26bf0f2cb7
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VK.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VP.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VP.pdf
new file mode 100644
index 0000000000..18e137c04a
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VP.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VT.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VT.pdf
new file mode 100644
index 0000000000..202c4ec5df
--- /dev/null
+++ b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRfr-VT.pdf
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-JS.pdf b/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-JS.pdf
deleted file mode 100644
index e84827104b..0000000000
--- a/macros/latex/contrib/jeuxcartes/tex/CaJ-PokeRv3-JS.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty b/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty
index b5f2b94ac5..b0579a4086 100644
--- a/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty
+++ b/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty
@@ -1,38 +1,38 @@
-% Author : C. Pierquet
-% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
-% Poker v1 cards Image's Licence : LGPL-2.1 license https://github.com/htdebeer/SVG-cards
-% Poker v2 cards Image's Licence : Public Domain https://tekeye.uk/playing_cards/svg-playing-cards
-% Poker v3 cards Image's Licence : Public Domain https://www.me.uk/cards/
-% Poker v4 cards Image's Licence : CC BY-SA 4.0) https://commons.wikimedia.org/wiki/File:Computer_screen_playing_cards_deck.svg
-% Poker v5 cards Image's Licence : Public Domain https://www.me.uk/cards/
-% Tarot v1 cards Image's Licence : Public Domain https://freesvg.org/deck-of-french-tarot-playing-cards
-% Uno v1 cards Image's Licence : MIT License https://eperezcosano.github.io/uno-part1/
+% Author.........................: C. Pierquet
+% licence........................: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
+% Poker v1 cards Image's Licence.: LGPL-2.1 license https://github.com/htdebeer/SVG-cards
+% Poker v2 cards Image's Licence.: Public Domain https://tekeye.uk/playing_cards/svg-playing-cards
+% Poker v3 cards Image's Licence.: Public Domain https://www.me.uk/cards/
+% Poker v4 cards Image's Licence.: CC BY-SA 4.0 https://commons.wikimedia.org/wiki/File:Computer_screen_playing_cards_deck.svg
+% Poker v5 cards Image's Licence.: Public Domain https://www.me.uk/cards/
+% Poker fr cards Image's Licence.: LGPL-2.1 license https://svg-cards.sourceforge.net/
+% Poker bi cards Image's Licence.: LGPL-3 license https://github.com/tfbkny/blackjack
+% Tarot v1 cards Image's Licence.: Public Domain https://freesvg.org/deck-of-french-tarot-playing-cards
+% Uno v1 cards Image's Licence.: MIT License https://eperezcosano.github.io/uno-part1/
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{JeuxCartes}[2023/02/25 v0.2.3 Jeux de cartes]
-% 0.2.3 Ajout d'une option pour présenter une main "inversée" + style v5
-% 0.2.2a Correction de 2 cartes de pokerv4
-% 0.2.2 Ajout d'un style v4 pour le poker
-% 0.2.1a Correction d'un bug avec une carte de poker...
-% 0.2.0 Modification des images (en mode pdf !) + v3 Poker + réduction taille Tarot
-% 0.1.7 Correction d'un bug avec les noms de Uno
-% 0.1.5 Ajout v2 pour le Poker
-% 0.1.4 Réduction de la taille des images
-% 0.1.3 Ajout de cartes Uno (CC1.0 par AlexDer) + modification des commandes + rami
-% Amélioration de la qualité des cartes de Tarot (sans augmenter la taille)
-% 0.1.2 Modification du nom (et de la source) des images de Tarot (CC0)
-% 0.1.1 Ajout de commandes pour des mini-cartes
-% 0.1 Version initiale
+\ProvidesPackage{JeuxCartes}[2023/03/18 v0.2.4 Jeux de cartes]
+% 0.2.4 Style <fr> avec carte française + <bicycl> + modification des clés avec l'ajout de <StyleJeu> + Suppression xcolor
+% 0.2.3 Ajout d'une option pour présenter une main "inversée" + style <v5>
+% 0.2.2 Correction de 2 cartes de pokerv4
+% 0.2.2 Ajout d'un style <v4> pour le poker
+% 0.2.1 Correction d'un bug avec une carte de poker...
+% 0.2.0 Modification des images (en mode pdf !) + <v3> Poker + réduction taille Tarot
+% 0.1.7 Correction d'un bug avec les noms de Uno
+% 0.1.5 Ajout <v2> pour le Poker
+% 0.1.4 Réduction de la taille des images
+% 0.1.3 Ajout de cartes Uno (CC1.0 par AlexDer) + modification des commandes + rami
+% Amélioration de la qualité des cartes de Tarot (sans augmenter la taille)
+% 0.1.2 Modification du nom (et de la source) des images de Tarot (CC0)
+% 0.1.1 Ajout de commandes pour des mini-cartes
+% 0.1 Version initiale
%------Packages utiles
\RequirePackage{graphicx}
-\RequirePackage[table,svgnames]{xcolor}
\RequirePackage{tikz}
\RequirePackage{pgffor}
-\RequirePackage{xfp}
\RequirePackage{listofitems}
\RequirePackage{xstring}
-\RequirePackage{xparse}
\RequirePackage{simplekv}
\RequirePackage{xinttools}
\RequirePackage{randomlist}
@@ -47,7 +47,8 @@
DecalageY=\def\AffCarteJeuDecalageY{#1},%
Rotation=\def\AffCarteJeuRotation{#1},%
AlignementV=\def\AffCarteJeuAlignementV{#1},%
- TypeJeu=\def\AffCarteJeuType{#1}
+ TypeJeu=\def\AffCarteJeuType{#1},%
+ StyleJeu=\def\AffCarteJeuStyle{#1}
}
\setKVdefault[AffCarteJeu]{%
Hauteur=4.25,%
@@ -57,32 +58,44 @@
DecalageY=0,%
Rotation=0,%
AlignementV=0.5,%
- TypeJeu=Poker
+ TypeJeu=Poker,%
+ StyleJeu=v1
}
-\NewDocumentCommand\AffCarteJeu{ O{} m }{%1=options,2=cartenommée
+\NewDocumentCommand\AffCarteJeu{ O{} m }{%1=options,2=cartenommée (OK)
\useKVdefault[AffCarteJeu]%
\setKV[AffCarteJeu]{#1}%
%cas poker
- \IfStrEq{\AffCarteJeuType}{Poker}%poker
- {\def\CartePrefixe{CaJ-PokeRv1-}}{}%
- %cas pokerv2
- \IfStrEq{\AffCarteJeuType}{Pokerv2}%poker2
- {\def\CartePrefixe{CaJ-PokeRv2-}}{}%
- %cas pokerv3
- \IfStrEq{\AffCarteJeuType}{Pokerv3}%poker3
- {\def\CartePrefixe{CaJ-PokeRv3-}}{}%
- %cas pokerv4
- \IfStrEq{\AffCarteJeuType}{Pokerv4}%poker4
- {\def\CartePrefixe{CaJ-PokeRv4-}}{}%
- %cas pokerv5
- \IfStrEq{\AffCarteJeuType}{Pokerv5}%poker5
- {\def\CartePrefixe{CaJ-PokeRv5-}}{}%
+ \IfStrEq{\AffCarteJeuType}{Poker}%poker et ensuite style
+ {%
+ %cas pokerv1
+ \IfStrEq{\AffCarteJeuStyle}{v1}%pokerv1
+ {\def\CartePrefixe{CaJ-PokeRv1-}}{}%
+ %cas pokerv2
+ \IfStrEq{\AffCarteJeuStyle}{v2}%pokerv2
+ {\def\CartePrefixe{CaJ-PokeRv2-}}{}%
+ %cas pokerv3
+ \IfStrEq{\AffCarteJeuStyle}{v3}%pokerv3
+ {\def\CartePrefixe{CaJ-PokeRv3-}}{}%
+ %cas pokerv4
+ \IfStrEq{\AffCarteJeuStyle}{v4}%pokerv4
+ {\def\CartePrefixe{CaJ-PokeRv4-}}{}%
+ %cas pokerv5
+ \IfStrEq{\AffCarteJeuStyle}{v5}%pokerv5
+ {\def\CartePrefixe{CaJ-PokeRv5-}}{}%
+ %cas pokerfr
+ \IfStrEq{\AffCarteJeuStyle}{fr}%pokerfr
+ {\def\CartePrefixe{CaJ-PokeRfr-}}{}%
+ %cas pokerbicycle
+ \IfStrEq{\AffCarteJeuStyle}{bicycl}%pokerbic
+ {\def\CartePrefixe{CaJ-PokeRbic-}}{}%
+ }%
+ {}%
%cas tarot
- \IfStrEq{\AffCarteJeuType}{Tarot}%tarot
+ \IfStrEq{\AffCarteJeuType}{Tarot}%tarot (un seul style)
{\def\CartePrefixe{CaJ-TaroTv1-}}{}%
%cas uno
- \IfStrEq{\AffCarteJeuType}{Uno}%uno
+ \IfStrEq{\AffCarteJeuType}{Uno}%uno (un seul style)
{\def\CartePrefixe{CaJ-UnOv1-}}{}%
%transformation valign en tikz
\def\OptionTikzCBB{current bounding box.center}%
@@ -111,14 +124,16 @@
%------commande main simple (cartes côte à côte)
\defKV[AffMainSimpleCartes]{%
Hauteur=\def\MainSimpleHauteur{#1},%
- TypeJeu=\def\MainSimpleJeuType{#1}
+ TypeJeu=\def\MainSimpleJeuType{#1},%
+ StyleJeu=\def\MainSimpleJeuStyle{#1}
}
\setKVdefault[AffMainSimpleCartes]{%
Hauteur=4.25,%
- TypeJeu=Poker
+ TypeJeu=Poker,%
+ StyleJeu=v1
}
-\NewDocumentCommand\AffCartesJeu{ O{} m }{%1=options,2=listecartes
+\NewDocumentCommand\AffCartesJeu{ O{} m }{%1=options,2=listecartes (OK)
\useKVdefault[AffMainSimpleCartes]%
\setKV[AffMainSimpleCartes]{#1}%
%calculs et traitement des variables
@@ -128,7 +143,7 @@
%main côte à côte
\foreach \i in {1,2,...,\ListeCartesMainlen}{%
\itemtomacro\ListeCartesMain[\i]\CarteMain%
- \AffCarteJeu[TypeJeu=\MainSimpleJeuType,Hauteur=\MainSimpleHauteur]{\CarteMain}%
+ \AffCarteJeu[TypeJeu=\MainSimpleJeuType,StyleJeu=\MainSimpleJeuStyle,Hauteur=\MainSimpleHauteur]{\CarteMain}%
}%
}
@@ -139,6 +154,7 @@
EspV=\def\MainDecalV{#1},%
Rotation=\def\MainRotation{#1},%
TypeJeu=\def\MainJeuType{#1},%
+ StyleJeu=\def\MainJeuStyle{#1},%
AlignementV=\def\MainAlignementV{#1}
}
@@ -149,11 +165,12 @@
Rotation=10,%
Eventail=false,%
TypeJeu=Poker,%
+ StyleJeu=v1,%
AlignementV=0.5,%
Inverse=false
}
-\NewDocumentCommand\MainCartesJeu{ O{} m }{%1=options,2=listecartes
+\NewDocumentCommand\MainCartesJeu{ O{} m }{%1=options,2=listecartes (OK)
\useKVdefault[AffMainCartes]%
\setKV[AffMainCartes]{#1}%
%calculs et traitement des variables
@@ -161,16 +178,26 @@
\setsepchar{§}%
\readlist*\ListeCartesMain{#2}%
\def\NbCartesMain{\ListeCartesMainlen}%nbcartes
+ %le cas du poker
\IfStrEq{\MainJeuType}{Poker}%poker
- {\def\HauteurGenerique{8.5}\def\CarteMainPrefixe{CaJ-PokeRv1-}}{}%
- \IfStrEq{\MainJeuType}{Pokerv2}%poker2
- {\def\HauteurGenerique{8.5}\def\CarteMainPrefixe{CaJ-PokeRv2-}}{}%
- \IfStrEq{\MainJeuType}{Pokerv3}%poker3
- {\def\HauteurGenerique{8.5}\def\CarteMainPrefixe{CaJ-PokeRv3-}}{}%
- \IfStrEq{\MainJeuType}{Pokerv4}%poker4
- {\def\HauteurGenerique{8.5}\def\CarteMainPrefixe{CaJ-PokeRv4-}}{}%
- \IfStrEq{\MainJeuType}{Pokerv5}%poker5
- {\def\HauteurGenerique{8.5}\def\CarteMainPrefixe{CaJ-PokeRv5-}}{}%
+ {%
+ \def\HauteurGenerique{8.5}%
+ \IfStrEq{\MainJeuStyle}{v1}%pokerv1
+ {\def\CarteMainPrefixe{CaJ-PokeRv1-}}{}%
+ \IfStrEq{\MainJeuStyle}{v2}%poker2
+ {\def\CarteMainPrefixe{CaJ-PokeRv2-}}{}%
+ \IfStrEq{\MainJeuStyle}{v3}%poker3
+ {\def\CarteMainPrefixe{CaJ-PokeRv3-}}{}%
+ \IfStrEq{\MainJeuStyle}{v4}%poker4
+ {\def\CarteMainPrefixe{CaJ-PokeRv4-}}{}%
+ \IfStrEq{\MainJeuStyle}{v5}%poker5
+ {\def\CarteMainPrefixe{CaJ-PokeRv5-}}{}%
+ \IfStrEq{\MainJeuStyle}{fr}%pokerfr
+ {\def\CarteMainPrefixe{CaJ-PokeRfr-}}{}%
+ \IfStrEq{\MainJeuStyle}{bicycl}%pokerbic
+ {\def\CarteMainPrefixe{CaJ-PokeRbic-}}{}%
+ }%
+ {}%
\IfStrEq{\MainJeuType}{Tarot}%tarot
{\def\HauteurGenerique{5.5}\def\CarteMainPrefixe{CaJ-TaroTv1-}}{}%
\IfStrEq{\MainJeuType}{Uno}%uno
@@ -199,12 +226,12 @@
\def\MainOffset{\fpeval{\EchelleCarteDecalage*\MainDecalV*(\i-1)}}%
\def\SecondOffset{\fpeval{\EchelleCarteDecalage*\MainDecalH*(\i-1)}}%
\def\DecAngleMain{\fpeval{0.5*\NbCartesMain*\MainRotation}}%
- \AffCarteJeu[TypeJeu=\MainJeuType,Tikz,TikzAutonome=false,Hauteur=\MainHauteur,DecalageY=\MainOffset,DecalageX=\SecondOffset,Rotation={\DecAngleMain-(\i-1)*\MainRotation}]{\CarteMain}%
+ \AffCarteJeu[TypeJeu=\MainJeuType,StyleJeu=\MainJeuStyle,Tikz,TikzAutonome=false,Hauteur=\MainHauteur,DecalageY=\MainOffset,DecalageX=\SecondOffset,Rotation={\DecAngleMain-(\i-1)*\MainRotation}]{\CarteMain}%
}%
{%
\def\MainOffset{\fpeval{\EchelleCarteDecalage*\MainDecalH*(\i-1)}}%
\def\SecondOffset{\fpeval{\EchelleCarteDecalage*\MainDecalV*(\i-1)}}%
- \AffCarteJeu[TypeJeu=\MainJeuType,Tikz,TikzAutonome=false,Hauteur=\MainHauteur,DecalageX=\MainOffset,DecalageY=\SecondOffset]{\CarteMain}%
+ \AffCarteJeu[TypeJeu=\MainJeuType,StyleJeu=\MainJeuStyle,Tikz,TikzAutonome=false,Hauteur=\MainHauteur,DecalageX=\MainOffset,DecalageY=\SecondOffset]{\CarteMain}%
}%
}%finpour
\end{tikzpicture}%
@@ -212,12 +239,13 @@
%------commande main aléatoire
\defKV[AffMainAleaCartes]{%
- Hauteur=\def\MainHauteur{#1},%
- EspH=\def\MainDecalH{#1},%
- EspV=\def\MainDecalV{#1},%
- Rotation=\def\MainRotation{#1},%
- TypeJeu=\def\MainJeuType{#1},%
- AlignementV=\def\MainAlignementV{#1}
+ Hauteur=\def\MainAleaHauteur{#1},%
+ EspH=\def\MainAleaDecalH{#1},%
+ EspV=\def\MainAleaDecalV{#1},%
+ Rotation=\def\MainAleaRotation{#1},%
+ TypeJeu=\def\MainAleaJeuType{#1},%
+ StyleJeu=\def\MainAleaJeuStyle{#1},%
+ AlignementV=\def\MainAleaAlignementV{#1}
}
\setKVdefault[AffMainAleaCartes]{%
Hauteur=4.25,%
@@ -226,6 +254,7 @@
Rotation=10,%
Eventail=false,%
TypeJeu=Poker,%
+ StyleJeu=v1,%
AlignementV=0.5,%
Inverse=false
}
@@ -238,193 +267,85 @@
\xdef\CartesJeuUno{0B,1B,1B,2B,2B,3B,3B,4B,4B,5B,5B,6B,6B,7B,7B,8B,8B,9B,9B,PTB,PTB,CSB,CSB,P2B,P2B,0V,1V,1V,2V,2V,3V,3V,4V,4V,5V,5V,6V,6V,7V,7V,8V,8V,9V,9V,PTV,PTV,CSV,CSV,P2V,P2V,0J,1J,1J,2J,2J,3J,3J,4J,4J,5J,5J,6J,6J,7J,7J,8J,8J,9J,9J,PTJ,PTJ,CSJ,CSJ,P2J,P2J,0R,1R,1R,2R,2R,3R,3R,4R,4R,5R,5R,6R,6R,7R,7R,8R,8R,9R,9R,PTR,PTR,CSR,CSR,P2R,P2R,P4,P4,P4,P4,Coul,Coul,Coul,Coul}%
\NewList{CartesJeuMelange}
-\NewDocumentCommand\MainCartesJeuAleatoire{ O{} m }{%1=options,2=nbcartes
+\NewDocumentCommand\MainCartesJeuAleatoire{ O{} m }{%1=options,2=nbcartes (OK)
\useKVdefault[AffMainAleaCartes]%
\setKV[AffMainAleaCartes]{#1}%
%calculs et traitement des variables
- \IfStrEq{\MainJeuType}{Poker}%poker
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Poker}\xdef\CarteDebutRand{\fpeval{randint(0,52-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Pokerv2}%pokerv2
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv2}\xdef\CarteDebutRand{\fpeval{randint(0,52-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Pokerv3}%pokerv3
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv3}\xdef\CarteDebutRand{\fpeval{randint(0,52-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Pokerv4}%pokerv4
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv4}\xdef\CarteDebutRand{\fpeval{randint(0,52-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Pokerv5}%pokerv5
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv5}\xdef\CarteDebutRand{\fpeval{randint(0,52-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Uno}%uno
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Uno}\xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Bataille}%bataille
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Poker}\xdef\CarteDebutRand{\fpeval{randint(0,54-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Bataillev2}%bataillev2
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv2}\xdef\CarteDebutRand{\fpeval{randint(0,54-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Bataillev3}%bataillev3
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv3}\xdef\CarteDebutRand{\fpeval{randint(0,54-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Bataillev4}%bataillev4
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv4}\xdef\CarteDebutRand{\fpeval{randint(0,54-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Bataillev5}%bataillev5
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv5}\xdef\CarteDebutRand{\fpeval{randint(0,54-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Belote}%belote
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Poker}\xdef\CarteDebutRand{\fpeval{randint(0,32-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Belotev2}%belotev2
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv2}\xdef\CarteDebutRand{\fpeval{randint(0,32-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Belotev3}%belotev3
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv3}\xdef\CarteDebutRand{\fpeval{randint(0,32-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Belotev4}%belotev4
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv4}\xdef\CarteDebutRand{\fpeval{randint(0,32-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Belotev5}%belotev5
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv5}\xdef\CarteDebutRand{\fpeval{randint(0,32-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Rami}%rami
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Poker}\xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Ramiv2}%ramiv2
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv2}\xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Ramiv3}%ramiv3
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv3}\xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Ramiv4}%ramiv4
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv4}\xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Ramiv5}%ramiv5
- {\def\HauteurGenerique{8.5}\def\CarteMainType{Pokerv5}\xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}}{}%
- \IfStrEq{\MainJeuType}{Tarot}%tarot
- {\def\HauteurGenerique{6.375}\def\CarteMainType{Tarot}\xdef\CarteDebutRand{\fpeval{randint(0,78-#2)}}}{}%
- %échelle relative des cartes
- \def\EchelleCarteDecalage{\fpeval{\MainHauteur/\HauteurGenerique}}%
- %transformation valign en tikz
- \def\OptionTikzCBB{current bounding box.center}%
- \IfStrEq{\MainAlignementV}{0}%
- {\def\OptionTikzCBB{current bounding box.south}}{}%
- \IfStrEq{\MainAlignementV}{1}%
- {\def\OptionTikzCBB{current bounding box.north}}{}%
- %melange du jeu
- \ClearList{CartesJeuMelange}%
- \IfStrEq{\MainJeuType}{Poker}%si c'est le poker
+ \IfStrEq{\MainAleaJeuType}{Poker}%poker
{%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuPoker}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
+ \def\HauteurGenerique{8.5}%hauteur générique
+ \def\CarteMainType{Poker}%on stocke le typejeu poker
+ \xdef\CarteDebutRand{\fpeval{randint(0,52-#2)}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Pokerv2}%si c'est le pokerv2
+ \IfStrEq{\MainAleaJeuType}{Bataille}%bataille
{%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuPoker}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
+ \def\HauteurGenerique{8.5}%hauteur générique
+ \def\CarteMainType{Poker}%on stocke le typejeu Bataille
+ \xdef\CarteDebutRand{\fpeval{randint(0,54-#2)}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Pokerv3}%si c'est le pokerv3
+ \IfStrEq{\MainAleaJeuType}{Belote}%belote
{%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuPoker}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
+ \def\HauteurGenerique{8.5}%hauteur générique
+ \def\CarteMainType{Poker}%on stocke le typejeu poker
+ \xdef\CarteDebutRand{\fpeval{randint(0,32-#2)}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Pokerv4}%si c'est le pokerv4
+ \IfStrEq{\MainAleaJeuType}{Rami}%rami
{%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuPoker}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
+ \def\HauteurGenerique{8.5}%hauteur générique
+ \def\CarteMainType{Poker}%on stocke le typejeu poker
+ \xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Pokerv5}%si c'est le pokerv5
+ \IfStrEq{\MainAleaJeuType}{Uno}%uno
+ {\def\HauteurGenerique{8.5}\def\CarteMainType{Uno}\xdef\CarteDebutRand{\fpeval{randint(0,108-#2)}}}{}%
+ \IfStrEq{\MainAleaJeuType}{Tarot}%tarot
+ {\def\HauteurGenerique{6.375}\def\CarteMainType{Tarot}\xdef\CarteDebutRand{\fpeval{randint(0,78-#2)}}}{}%
+ %échelle relative des cartes
+ \def\EchelleCarteDecalage{\fpeval{\MainAleaHauteur/\HauteurGenerique}}%
+ %transformation valign en tikz
+ \def\OptionTikzCBB{current bounding box.center}%
+ \IfStrEq{\MainAleaAlignementV}{0}%
+ {\def\OptionTikzCBB{current bounding box.south}}{}%
+ \IfStrEq{\MainAleaAlignementV}{1}%
+ {\def\OptionTikzCBB{current bounding box.north}}{}%
+ %melange du jeu
+ \ClearList{CartesJeuMelange}%
+ \IfStrEq{\MainAleaJeuType}{Poker}%si c'est le poker
{%
\xintFor* ##1 in {\xintCSVtoList{\CartesJeuPoker}}%
\do{\InsertRandomItem{CartesJeuMelange}{##1}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Bataille}%si c'est la bataille
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBataille}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Bataillev2}%si c'est la bataillev2
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBataille}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Bataillev3}%si c'est la bataillev3
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBataille}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Bataillev4}%si c'est la bataillev4
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBataille}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Bataillev5}%si c'est la bataillev5
+ \IfStrEq{\MainAleaJeuType}{Bataille}%si c'est la bataille
{%
\xintFor* ##1 in {\xintCSVtoList{\CartesJeuBataille}}%
\do{\InsertRandomItem{CartesJeuMelange}{##1}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Rami}%si c'est le rami
+ \IfStrEq{\MainAleaJeuType}{Rami}%si c'est le rami
{%
\xintFor* ##1 in {\xintCSVtoList{\CartesJeuRami}}%
\do{\InsertRandomItem{CartesJeuMelange}{##1}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Ramiv2}%si c'est le ramiv2
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuRami}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Ramiv3}%si c'est le ramiv3
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuRami}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Ramiv4}%si c'est le ramiv4
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuRami}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Ramiv5}%si c'est le ramiv5
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuRami}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Uno}%si c'est le uno
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuUno}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Belote}%si c'est la belote
+ \IfStrEq{\MainAleaJeuType}{Belote}%si c'est la belote
{%
\xintFor* ##1 in {\xintCSVtoList{\CartesJeuBelote}}%
\do{\InsertRandomItem{CartesJeuMelange}{##1}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Belotev2}%si c'est la belotev2
+ \IfStrEq{\MainAleaJeuType}{Tarot}%si c'est le tarot
{%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBelote}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Belotev3}%si c'est la belotev3
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBelote}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Belotev4}%si c'est la belotev4
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBelote}}%
- \do{\InsertRandomItem{CartesJeuMelange}{##1}}%
- }%
- {}%
- \IfStrEq{\MainJeuType}{Belotev5}%si c'est la belotev5
- {%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuBelote}}%
+ \xintFor* ##1 in {\xintCSVtoList{\CartesJeuTarot}}%
\do{\InsertRandomItem{CartesJeuMelange}{##1}}%
}%
{}%
- \IfStrEq{\MainJeuType}{Tarot}%si c'est le tarot
+ \IfStrEq{\MainAleaJeuType}{Uno}%si c'est le uno
{%
- \xintFor* ##1 in {\xintCSVtoList{\CartesJeuTarot}}%
+ \xintFor* ##1 in {\xintCSVtoList{\CartesJeuUno}}%
\do{\InsertRandomItem{CartesJeuMelange}{##1}}%
}%
{}%
@@ -437,22 +358,21 @@
{%
\foreach \i in {1,2,...,#2}
}%
- {%
- %\foreach \i in {1,2,...,#2}{%
+ {%début du foreach
\GetItem{CartesJeuMelange}{\inteval{\CarteDebutRand+\i-1}}{CarteMainChoisie}%
\ifboolKV[AffMainAleaCartes]{Eventail}%
{%
- \def\MainOffset{\fpeval{\EchelleCarteDecalage*\MainDecalV*(\i-1)}}%
- \def\SecondOffset{\fpeval{\EchelleCarteDecalage*\MainDecalH*(\i-1)}}%
- \def\DecAngleMain{\fpeval{0.5*#2*\MainRotation}}%
- \AffCarteJeu[TypeJeu=\CarteMainType,Tikz,TikzAutonome=false,Hauteur=\MainHauteur,DecalageY=\MainOffset,DecalageX=\SecondOffset,Rotation={\DecAngleMain-(\i-1)*\MainRotation}]{\CarteMainChoisie}%
+ \def\MainOffset{\fpeval{\EchelleCarteDecalage*\MainAleaDecalV*(\i-1)}}%
+ \def\SecondOffset{\fpeval{\EchelleCarteDecalage*\MainAleaDecalH*(\i-1)}}%
+ \def\DecAngleMain{\fpeval{0.5*#2*\MainAleaRotation}}%
+ \AffCarteJeu[TypeJeu=\CarteMainType,StyleJeu=\MainAleaJeuStyle,Tikz,TikzAutonome=false,Hauteur=\MainAleaHauteur,DecalageY=\MainOffset,DecalageX=\SecondOffset,Rotation={\DecAngleMain-(\i-1)*\MainAleaRotation}]{\CarteMainChoisie}%
}%
{%
- \def\MainOffset{\fpeval{\EchelleCarteDecalage*\MainDecalH*(\i-1)}}%
- \def\SecondOffset{\fpeval{\EchelleCarteDecalage*\MainDecalV*(\i-1)}}%
- \AffCarteJeu[TypeJeu=\CarteMainType,Tikz,TikzAutonome=false,Hauteur=\MainHauteur,DecalageX=\MainOffset,DecalageY=\SecondOffset]{\CarteMainChoisie}%
+ \def\MainOffset{\fpeval{\EchelleCarteDecalage*\MainAleaDecalH*(\i-1)}}%
+ \def\SecondOffset{\fpeval{\EchelleCarteDecalage*\MainAleaDecalV*(\i-1)}}%
+ \AffCarteJeu[TypeJeu=\CarteMainType,StyleJeu=\MainAleaJeuStyle,Tikz,TikzAutonome=false,Hauteur=\MainAleaHauteur,DecalageX=\MainOffset,DecalageY=\SecondOffset]{\CarteMainChoisie}%
}%
- }%finpour
+ }%finforeach
\end{tikzpicture}%
}
@@ -463,7 +383,7 @@
}
\setKVdefault[AffMiniCartes]{%
Largeur=0.55cm,%
- FondAtout=PeachPuff
+ FondAtout=yellow
}
\NewDocumentCommand\AffMiniCarteJeu{ O{} m }{%1=options,2=nbcartes
@@ -472,7 +392,7 @@
%découpage de l'argument
\StrCut{#2}{.}\csVal\csCplt%
%couleur de fond
- \def\csFond{White}%
+ \def\csFond{white}%
\def\csCoul{black}%
%le cas du 10.11...21
\IfStrEq{\csVal}{10}{\def\csVal{\scalebox{0.5}[1]{10}}}{}%
@@ -513,7 +433,7 @@
\IfStrEq{\csCplt}{R}%
{\def\csCoul{red}}{}%
%minicarte
- \tikz[baseline=(char.base)]\node[anchor=north west,line width=0.7pt,draw=Gray,rectangle,rounded corners,inner sep=1.6pt,fill=\csFond,text=\csCoul,font=\ttfamily,minimum width=\MiniCarteLargeur](char){\csVal\scalebox{0.75}[0.75]{\csSymb}};%
+ \tikz[baseline=(char.base)]\node[anchor=north west,line width=0.7pt,draw=gray,rectangle,rounded corners,inner sep=1.6pt,fill=\csFond,text=\csCoul,font=\ttfamily,minimum width=\MiniCarteLargeur](char){\csVal\scalebox{0.75}[0.75]{\csSymb}};%
}
%------commande mini-main-cartes
@@ -523,7 +443,7 @@
}
\setKVdefault[AffMiniMainCartes]{%
Largeur=0.55cm,%
- FondAtout=PeachPuff
+ FondAtout=yellow
}
\NewDocumentCommand\MainMiniCartesJeu{ O{} m }{%1=options,2=liste
@@ -546,7 +466,7 @@
\setKVdefault[MiniMainAleaCartes]{%
Largeur=0.55cm,%
TypeJeu=Poker,%
- FondAtout=PeachPuff
+ FondAtout=yellow
}
\xdef\MiniCartesJeuPoker{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K}%
diff --git a/macros/latex/contrib/photobook/DEPENDS.txt b/macros/latex/contrib/photobook/DEPENDS.txt
new file mode 100644
index 0000000000..1b2a77253b
--- /dev/null
+++ b/macros/latex/contrib/photobook/DEPENDS.txt
Binary files differ
diff --git a/macros/latex/contrib/photobook/Makefile b/macros/latex/contrib/photobook/Makefile
index ddbd047536..7bebae3ec8 100644
--- a/macros/latex/contrib/photobook/Makefile
+++ b/macros/latex/contrib/photobook/Makefile
@@ -45,7 +45,6 @@
.EXPORT_ALL_VARIABLES:
-#.ONESHELL:
# NOTE: this makes things run consistently on different systems including
# things like Android...
@@ -60,8 +59,9 @@ MODULE := photobook
VERSION = $(strip $(shell \
cat $(MODULE).cls \
| grep 'VERSION{' \
- | sed 's/.*{\(.*\)}.*/\1/' \
- | sed 's/v//'))
+ | sed \
+ -e 's/.*{\(.*\)}.*/\1/' \
+ -e 's/v//'))
DATE = $(strip $(shell date "+%Y%m%d%H%M"))
COMMIT = $(strip $(shell git rev-parse HEAD))
@@ -125,6 +125,7 @@ DIST_NORMAL_FILES = \
README.md \
LICENSE \
Makefile \
+ DEPENDS.txt \
$(MODULE).cls \
$(MODULE).pdf
DIST_FILES = \
@@ -241,6 +242,16 @@ LN := cp -l
> $@
+# list of dependencies...
+#
+DEPENDS.txt: $(MODULE).cls
+ cat $< \
+ | egrep -zo '\s*\\RequirePackage(\[[^]]*\])?\{[^}]*\}' \
+ | sed 's/.*{\(.*\)}/hard \1\n/' \
+ | grep -a hard \
+ > $@
+
+
#----------------------------------------------------------------------
# Info targets...
@@ -295,6 +306,7 @@ tag:
@echo " v$(VERSION)"
@echo "Last 5 tags:"
@git tag -l 'v[0-9]*'\
+ | sort -V \
| tail -n 5 \
| sed 's/^/ /' \
| tac
@@ -408,7 +420,7 @@ sweep:
.PHONY: clean
clean: sweep
- rm -rf $(DIST_DIR) $(BUILD_DIR) $(MODULE).md *.pdf
+ rm -rf $(DIST_DIR) $(BUILD_DIR) $(MODULE).md DEPENDS.txt *.pdf
diff --git a/macros/latex/contrib/photobook/photobook.cls b/macros/latex/contrib/photobook/photobook.cls
index fc9a349c3a..0ade3c4ac0 100644
--- a/macros/latex/contrib/photobook/photobook.cls
+++ b/macros/latex/contrib/photobook/photobook.cls
@@ -76,8 +76,8 @@
%%% NOTE: \def\<module-name>@[A-Z]+ macros will be visible to both the
%%% code and the generated docs...
-\edef\photobook@FILEVERSION{v0.1.13}
-\edef\photobook@FILEDATE{2023-03-13}
+\edef\photobook@FILEVERSION{v0.1.15}
+\edef\photobook@FILEDATE{2023-03-18}
%% \documentclass{ltxdoc}
diff --git a/macros/latex/contrib/photobook/photobook.pdf b/macros/latex/contrib/photobook/photobook.pdf
index 59b9da74cd..cf3f1d0754 100644
--- a/macros/latex/contrib/photobook/photobook.pdf
+++ b/macros/latex/contrib/photobook/photobook.pdf
Binary files differ
diff --git a/macros/latex/contrib/photobook/scripts/README.md b/macros/latex/contrib/photobook/scripts/README.md
index 223578f7bb..2e00881f70 100644
--- a/macros/latex/contrib/photobook/scripts/README.md
+++ b/macros/latex/contrib/photobook/scripts/README.md
@@ -4,9 +4,9 @@ Support scripts
<!-- TOC depthfrom:2 -->
-- [make-spreads.sh](#make-imagessh)
- - [The process](#the-process)
- - [Automatic template inferenceing](#automatic-template-inferenceing)
+- [make-spreads.sh](#make-spreadssh)
+ - [Theory of operation](#theory-of-operation)
+ - [Automatic template inferencing](#automatic-template-inferencing)
- [Manual template selection](#manual-template-selection)
- [Template tweaking](#template-tweaking)
- [Manual spread layouts](#manual-spread-layouts)
@@ -23,6 +23,8 @@ Support scripts
`make-spreads.sh`
----------------
+<!-- XXX add a TL;DR, "quick start" or "cheat sheet" section... abstract? -->
+
Generate LaTeX block of pages/spreads from a directory tree.
This was initially intended as a means to convert the exported directory
@@ -104,7 +106,7 @@ $ make-spreads.sh --help
```
-### The process
+### Theory of operation
<!-- XXX spreads vs. pages -->
@@ -196,7 +198,18 @@ If only one image/text file is provided then `make-spreads.sh` will set it
on the right page of the spread using the appropriate page template and
leave the left page blank.
-<!-- XXX do we need a `blankpage.tex` template??? -->
+A black page uses `blankpage.tex` template if available, otherwise a
+trivial blank page is used:
+```latex
+\null
+\newpage
+```
+
+<!-- XXX
+Template search order:
+- spread directory
+- template directory
+-->
#### Manual template selection
@@ -250,6 +263,8 @@ If `layout.tex` is present it will be included as the page layout/template.
Any paths in the `layout.tex` should be relative to the location the
built block .tex file will be located, usually to the project root.
+Template field substitution is done as for all other templates.
+
### Templates
@@ -379,6 +394,7 @@ $ cls2tex.sh --help
```
The `--help` says it all:
+<!-- :r !cl2tex.sh --help -->
```
Generate docs from latex package/class
@@ -396,8 +412,8 @@ This will:
- read the INPUT
- keep lines starting with \def\<module-name>@[A-Z]\+
- keep lines starting with '%%'
- - %%%%% Text -> \subsection(Text)
- - %%%% Text -> \section(Text)
+ - %%%%% Text -> \subsection{Text}
+ - %%%% Text -> \section{Text}
- %% >> code -> \begin{verbatim}code\end{verbatim}
- write the result to OUTPUT
diff --git a/macros/latex/contrib/photobook/scripts/cls2tex.sh b/macros/latex/contrib/photobook/scripts/cls2tex.sh
index d7e6c1013e..34cf872b1d 100755
--- a/macros/latex/contrib/photobook/scripts/cls2tex.sh
+++ b/macros/latex/contrib/photobook/scripts/cls2tex.sh
@@ -26,8 +26,8 @@ printhelp(){
echo " - read the INPUT"
echo " - keep lines starting with \\def\\<module-name>@[A-Z]\\+"
echo " - keep lines starting with '%%'"
- echo " - %%%%% Text -> \\subsection(Text)"
- echo " - %%%% Text -> \\section(Text)"
+ echo " - %%%%% Text -> \\subsection{Text}"
+ echo " - %%%% Text -> \\section{Text}"
echo " - %% >> code -> \\begin{verbatim}code\\end{verbatim}"
echo " - write the result to OUTPUT"
echo
diff --git a/macros/latex/contrib/photobook/scripts/make-spreads.sh b/macros/latex/contrib/photobook/scripts/make-spreads.sh
index 05979ae03d..1b10fc56cc 100644
--- a/macros/latex/contrib/photobook/scripts/make-spreads.sh
+++ b/macros/latex/contrib/photobook/scripts/make-spreads.sh
@@ -2,75 +2,15 @@
shopt -s nullglob extglob
#----------------------------------------------------------------------
-#
-# TIP: It is better to think of a visual book as a set of spreads
-# rather than a set of pages, hence the focus on spreads in the
-# code below.
-# The main unit of a "visual" book is a spread, it's the thing
-# you see when you hold the book open, and the main workflow
-# when building a book is creating spreads and ordering them so
-# a single page is almost never treated as an independent unit.
-# TIP: it is not recommended to use too many templates, the layout
-# should be and feel structured and this structure should not be
-# too complex for the average reader to get comfortable in.
-#
+#
+# For docs see README.md
+#
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-#
-# Template structure:
-# $TEMPLATE_DIR/
-# spread.tex
-# imagepage.tex
-# textpage.tex
-# ...
-# $CAPTION_DIR/
-# <image>.txt
-# image caption.
-# this is separated to decouple caption writing from the
-# changes to the layout/sequencing and this drastically
-# simplify the work with writers.
-# For this reason this takes priority over local captions (XXX revise).
-# ...
-# $SPREADS_DIR/
+#
+# XXX DOC:
# $spread/
-# tweaks.tex
-# template tweaks.
-# loaded before the templates are handled.
-# layout.tex
-# manual layout of spread.
-# if given rest of directory contents are
-# ignored.
-# fields:
-# ${IMAGE0}
-# replaced with image path
-# ${CAPTION0}
-# replaced with content of caption file if found
-# and empty otherwise.
-# ${TEXT0}
-# replaced with the content of a text file if
-# found and empty otherwise.
-# ...
-# NOTE: if images are included, hi-res source
-# substitution is not done here.
-# NOTE: fields are ordered and matched according to their
-# position and not their number, e.g. in the following
-# sequence:
-# IMAGE, IMAGE10, IMAGE20, ..,
-# CAPTION2, CAPTION7, CAPTION12, ..
-# IMAGE10 will be filled with the second found image
-# and CAPTION7 will be filled with the second found
-# caption.
-# <spread-template-name>.tpl
-# indicates the spread template to use.
-# if given the rest of the .tex files in
-# directory are ignored.
-# resolves to:
-# templates/<spread-template-name>.tex
-# fields:
-# ${IMAGE0}
-# ${CAPTION0}
-# ${TEXT0}
-# ...
+# ...
# imagepage.tex
# image page template.
# fields:
@@ -87,46 +27,7 @@ shopt -s nullglob extglob
# <spread-template-name>-textpage.tpl
# indicates the image/text page template to use.
# ignored if explicit templates are given.
-# fields:
-# ${IMAGE}
-# ${CAPTION}
-# ${TEXT}
-# ...
-# 00-<image>.png
-# image.
-# if $IMAGE_HIRES_DIR is set then this will
-# resolve to:
-# $IMAGE_HIRES_DIR/<image>
-# supported formats:
-# .jpeg, .png, .pdf, .svg, .eps
-# (see $IMAGE_FORMATS)
-# 00-<image>.txt
-# local image caption text.
-# NOTE: this must be named the same as the image.
-# 01-<text>.txt
-# text.
# ...
-# ...
-#
-#
-# Env variables:
-# ANOTATE_IMAGE_PATHS=
-# TEXT_FORMATS=<ext>|..
-# IMAGE_FORMATS=<ext>|..
-# SPREADS_DIR=<path>
-# IMAGE_HIRES_DIR=<path>
-# sets the path to which the hi-res images are resolved.
-# CAPTION_DIR=<path>
-# TEMPLATE_DIR=<path>
-# EMPTY_PAGE=<name>
-# TEXT_PAGE=<name>
-# IMAGE_PAGE=<name>
-# IMAGE_SPREAD=<array>
-#
-#
-# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-#
-# XXX
#
#
#
@@ -190,7 +91,7 @@ IMAGE_PAGE=${IMAGE_PAGE:=imagepage}
# NOTE: the index here corresponds to the number of images found in a
# spread directory...
if [ ${#IMAGE_SPREAD[@]} = 0 ] ; then
- if ! [ ${#CFG_IMAGE_SPREAD[@]} = 0 ] ; then
+ if [ ${#CFG_IMAGE_SPREAD[@]} != 0 ] ; then
IMAGE_SPREAD=()
for i in ${!CFG_IMAGE_SPREAD[@]} ; do
IMAGE_SPREAD[$i]=${CFG_IMAGE_SPREAD[$i]}
@@ -378,24 +279,44 @@ readCaption(){
# getTemplate SPREAD TYPE
#
getTemplate(){
- local SPREAD=$1
- local TYPE=$2
- local TEMPLATE=($SPREAD/*-$TYPE.tex)
- if [ -z $TEMPLATE ] ; then
- TEMPLATE=($SPREAD/*-$TYPE.tpl)
- if ! [ -z $TEMPLATE ] ; then
- TEMPLATE=${TEMPLATE/$SPREAD\//}
- TEMPLATE=${TEMPLATE/[0-9]-/}
- TEMPLATE="$TEMPLATE_DIR/${TEMPLATE[0]%-${TYPE}.*}.tex"
+ local spread=$1
+ local name=$2
+ local template
+
+ if [[ $name =~ .*\.tex ]] ; then
+ # already an existing template...
+ if [ -e "$name" ] ; then
+ echo $name
+ return
fi
+ # normalize...
+ name=${name%.tex}
+ # normalize template name...
+ elif [[ $name =~ .*\.tpl ]] ; then
+ name=$( echo $name \
+ | sed \
+ -e 's/.tpl$//' \
+ -e "s%$spread/%%" \
+ -e 's/^[0-9]\+-//' )
fi
- if [ -z $TEMPLATE ] ; then
- TEMPLATE="$TEMPLATE_DIR/${TYPE}.tex"
+
+ # local template...
+ template=($spread/*-$name.tex)
+ if [ ${#template[@]} != 0 ] ; then
+ template=${template[0]}
+ else
+ template=($spread/$name.tex)
fi
- if ! [ -e $TEMPLATE ] ; then
- return
+ # global template...
+ if [ -z $template ] \
+ || ! [ -e "$template" ] ; then
+ template="$TEMPLATE_DIR/${name}.tex"
fi
- echo $TEMPLATE
+ # check if the thing exists...
+ if ! [ -e $template ] ; then
+ return 1
+ fi
+ echo $template
}
@@ -459,7 +380,7 @@ populateTemplate(){
local i=0
for var in ${slots[@]} ; do
name=${var//[0-9]/}
- if ! [ ${name} = "IMAGE" ] ; then
+ if [ ${name} != "IMAGE" ] ; then
continue
fi
@@ -479,14 +400,14 @@ populateTemplate(){
i=$(( i + 1 ))
val=${val//\//\\/}
- text=$(echo -e "${text}" | \
+ text=$(echo "${text}" | \
sed "s/\${${var}}/${val%.*}/g")
done
# pass 2: captions...
for var in ${slots[@]} ; do
name=${var//[0-9]/}
- if ! [ ${name} = "CAPTION" ] ; then
+ if [ ${name} != "CAPTION" ] ; then
continue
fi
@@ -502,7 +423,7 @@ populateTemplate(){
val=$(readCaption "${val}")
fi
- text=$(echo -e "${text}" | \
+ text=$(echo "${text}" | \
sed "s/\${${var}}/${val}/g")
done
@@ -523,14 +444,14 @@ populateTemplate(){
done
val=${val//\//\\/}
- text=$(echo -e "${text}" | \
+ text=$(echo "${text}" | \
sed "s/\${${var}}/${val}/g")
done
# print out the filled template...
echo % template: $tpl
- echo -e "${text}"
- return 0
+ echo "${text}"
+ return
}
@@ -671,27 +592,29 @@ handleSpread(){
# ignore the rest of the items when we are done
# creating two pages...
[ $C == 2 ] \
- && return 0
+ && return
done
fi
fi
# formatting done...
[ -z $template ] \
- && return 0
-
- # format template path...
- template=${template/$spread\//}
- template=${template/[0-9]-/}
- # get...
- template="${template[0]%.*}.tex"
- if ! [ -e "$template" ] ; then
- template="$TEMPLATE_DIR/${template[0]%.*}.tex"
+ && return
+
+ # resolve the template path...
+ local p=$template
+ template=$(getTemplate "$spread" "$template")
+
+ # not found...
+ if [ -z $template ] ; then
+ echo "%"
+ echo "% ERROR: could not resolve template: $p" | tee >(cat >&2)
+ echo "%"
fi
fi
populateTemplate "$spread" "$template" "${img[@]}" "${txt[@]}"
- return 0
+ return $?
}
diff --git a/macros/latex/contrib/warning/README b/macros/latex/contrib/warning/README
new file mode 100644
index 0000000000..b80a18f268
--- /dev/null
+++ b/macros/latex/contrib/warning/README
@@ -0,0 +1,77 @@
+README for warning package, 2023-03-18, v0.10
+
+
+TABLE OF CONTENTS
+=================
+
+1 Introduction
+2 Download
+3 Installation
+
+
+1 INTRODUCTION
+==============
+
+Note 1: This package is obsolete. For LaTeX-format 2020-10-01 and newer:
+Instead of \addglobalwarning{ something } use
+\AddToHook{enddocument/info}{ something } and do not load the warning package.
+
+Note 2: The package author, Harald Harders, is inactive.
+
+
+Sometimes a class or package has to make a global warning such as
+"Rerun for this or that reason" or "This is draft, change this
+before the final run". If you are generating them with
+\AtEndDocument{\PackageWarningNoLine{<packagename>}{<warning>}}
+the warning appears very early before the filelist. Then the warning can easily be
+overseen. This package provides a command that surely puts the warning at the end
+near to the global warnings generated by LaTeX itself. You can add a warning to a list
+of user defined warnings using the command \addglobalwarning as it can be seen in
+the example below.
+
+This material is published under the LPPL 1.3c: This work may be
+distributed and/or modified under the conditions of the LaTeX Project
+Public License, either version 1.3c of this license or (at your option)
+any later version. This version of this license is in
+https://www.latex-project.org/lppl/lppl-1-3c.txt
+and the latest version of this license is in
+https://www.latex-project.org/lppl.txt
+and version 1.3c or later is part of all distributions of
+LaTeX version 2005-12-01 or later.
+
+
+2 DOWNLOAD
+==========
+
+"warning" is available on CTAN:
+https://ctan.org/pkg/warning
+
+Also a ZIP file is provided that contains the files:
+the manual (warning-doc.tex and warning-doc.pdf,
+including examples),
+the style file (warning.sty),
+and this README:
+https://mirrors.ctan.org/macros/latex/contrib/warning.zip
+
+
+3 INSTALLATION
+==============
+
+a) Download the warning files from CTAN.
+ If necessary, unpack them.
+b) Install the file "warning.sty" in your TDS tree:
+ cp warning.sty TDS:tex/latex/warning/
+ Replace "TDS:" by the prefix of your TDS tree
+ (texmf directory).
+c) Create the documentation, if necessary, e.g.
+ pdflatex warning.tex
+ pdflatex warning.tex
+d) Update the databases if necessary, e.g. for TeX Live
+ texhash or mktexlsr.
+e) Create the warning-example.pdf, if necessary,
+ by copying the example code from the documentation
+ into (a) separate .tex file(s) and compiling that (those).
+f) Copy the documentation files to
+ "TDS:doc/latex/warning/":
+ README, warning.pdf, warning.tex,
+ and the example(s), if you created any. \ No newline at end of file
diff --git a/macros/latex/contrib/warning/warning-doc.pdf b/macros/latex/contrib/warning/warning-doc.pdf
index 8d12e159cf..b3c6f60b2d 100644
--- a/macros/latex/contrib/warning/warning-doc.pdf
+++ b/macros/latex/contrib/warning/warning-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/warning/warning-doc.tex b/macros/latex/contrib/warning/warning-doc.tex
index d8b78dbdf6..82a93be17e 100644
--- a/macros/latex/contrib/warning/warning-doc.tex
+++ b/macros/latex/contrib/warning/warning-doc.tex
@@ -1,10 +1,6 @@
-\documentclass[pagesize=auto, parskip=half, fontsize=12pt, DIV=11]{scrartcl}
-
-\usepackage{fixltx2e}
-\usepackage{etex}
+\documentclass[parskip=half,fontsize=12pt,DIV=11]{scrartcl}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
-\usepackage{textcomp}
\usepackage[svgnames]{xcolor}
\usepackage{listings}
\usepackage{microtype}
@@ -34,16 +30,19 @@
numberstyle=\scriptsize\color{SlateGray}%
}
-\title{The \pkg{warning} package\thanks{This manual corresponds to \pkg{warning.sty}~v0.01, dated~2001/08/17.}}
+\title{The \pkg{warning} package\thanks{This manual corresponds to \pkg{warning.sty}~v0.10, dated~2023-03-18.}}
\subtitle{Global warnings at the end of the screen output\\and the logfile}
-\author{Harald Harders\thanks{\mail{h.harders@tu-bs.de}}}
-\date{2001/08/17}
-
+\author{Harald Harders\thanks{\mail{harald.harders@gmx.de}}\hspace{0.7em}(inactive)}
+\date{2023-03-18}% (2023-03-18 update done by H.-Martin Münch, <Martin dot Muench at Uni-Bonn dot de>)
\begin{document}
-
\maketitle
+{\large\color{red}
+\textbf{Note: This package is obsolete. For \LaTeX-format \hbox{2020-10-01} and newer:
+Instead of }\verb|\addglobalwarning{ something }|\textbf{ use }
+\verb|\AddToHook{enddocument/info}{ something }|\textbf{ and do not load the warning package.}}
+
Sometimes a class or package has to make a global warning such as
``Rerun for this or that reason'' or ``This is draft, change this
before the final run''. If you are generating them with
@@ -60,6 +59,7 @@ the packages \pkg{changebar.sty} or \pkg{longtable.sty}.
Harald Harders
+\newpage
\minisec{Example:}
@@ -75,4 +75,15 @@ Hello
\end{document}
\end{lstlisting}
+For \LaTeX-format 2020-10-01 and newer use:
+\begin{lstlisting}
+\documentclass{article}
+\AddToHook{enddocument/info}{%
+ \ClassWarningNoLine{testclass}{This is a global warning}}
+\AddToHook{enddocument/info}{%
+ \PackageWarningNoLine{testpackage}{This is another global warning}}
+\begin{document}
+Hello
\end{document}
+\end{lstlisting}
+\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/warning/warning.sty b/macros/latex/contrib/warning/warning.sty
index 67f9746839..0a8e3e5b7d 100644
--- a/macros/latex/contrib/warning/warning.sty
+++ b/macros/latex/contrib/warning/warning.sty
@@ -1,80 +1,72 @@
%%
-%% warning.sty
+%% Project: warning
+%% Version: 2023-03-18 v0.10
+%% Info: Global warnings at the end of the screen output and the logfile
%%
-%% Global warnings at the end of the screen output and the logfile
+%% Copyright © 2001, 2023 Harald Harders (harald.harders@gmx.de; inactive)
+%% (2023-03-18 update done by H.-Martin Münch, <Martin dot Muench at Uni-Bonn dot de>)
%%
-%% Copyright 2001 Harald Harders (h.harders@tu-bs.de)
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. This version of this license is in
+%% https://www.latex-project.org/lppl/lppl-1-3c.txt
+%% and the latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of
+%% LaTeX version 2005-12-01 or later.
%%
-%% License: LPPL
+%% Note: This package is obsolete. For LaTeX-format 2020-10-01 and newer:
+%% Instead of \addglobalwarning{ something } use
+%% \AddToHook{enddocument/info}{ something }
+%% and do not load the warning package.
%%
-%% Sometimes a class or package has to make a global warning such as
-%% ``Rerun for this or that reason'' or ``This is draft, change this
-%% before the final run''. If you are generating them with
-%% \AtEndDocument{\PackageWarningNoLine{packagename}{warning}}
-%% the warning appears very early before the filelist. Then the
-%% warning can easily be overseen. This package provides a command
-%% that surely puts the warning at the end near to the global
-%% warnings generated by LaTeX itself.
-%% You can add a warning to a list of user defined warnings using the
-%% command \addglobalwarning as it can be seen in the example below.
-%%
-%% This package could be useful for the warnings generated e.g. by
-%% the packages changebar.sty or longtable.sty.
-%%
-%% Harald Harders
-%%
-%%
-%% Example:
-%%
-%% \documentclass{article}
-%% \usepackage{warning}
-%% \addglobalwarning{%
-%% \ClassWarningNoLine{testclass}{This is a global warning}}
-%% \addglobalwarning{%
-%% \PackageWarningNoLine{testpackage}{This is another global warning}}
-%% \begin{document}
-%% Hello
-%% \end{document}
-%%
-%%
-\ProvidesPackage{warning}[2001/08/17 v0.01 Global warnings at end of logfile]
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{warning}[2023/03/18 v0.10 Global warnings at end of logfile]
+
+\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
+\IfFormatAtLeastTF{2020/10/01}{
+ \NewDocumentCommand\addglobalwarning{m}{\AddToHook{enddocument/info}{#1}}
+ \addglobalwarning{%
+ \PackageWarningNoLine{warning}{Package warning is obsolete.\MessageBreak%
+ Instead of \string\addglobalwarning{ something } use \MessageBreak%
+ \string\AddToHook{enddocument/info}{ something }\MessageBreak%
+ and do not load the warning package}
+ }
+ \def\wrn@warning{\endinput}
+ }{\let\wrn@warning\relax
+ \AtBeginDocument{\addglobalwarning{\PackageWarningNoLine{warning}{%
+ Used LaTeX-format: \fmtversion, more recent LaTeX-format is available}}}
+ }
+
+\wrn@warning% is \endinput for LaTeX since 2020-10-01 and \relax for older LaTeX.
% Define a command that adds new warnings to the list of warnings.
% Modification of the \addto command provided by babel.def.
\def\addglobalwarning#1{%
- \ifx\wrn@warning\@undefined
- \def\wrn@warning{#1}%
- \else
- \ifx\wrn@warning\relax
- \def\wrn@warning{#1}%
- \else
- {\toks@\expandafter{\wrn@warning#1}%
- \xdef\wrn@warning{\the\toks@}}%
- \fi
- \fi
+ {\toks@\expandafter{\wrn@warning#1}%
+ \xdef\wrn@warning{\the\toks@}}%
}
-% Expand \@@end command. I have the feeling that is not too stable.
-% Thus not used.
-%\let\wrn@end\@@end
-%\def\@@end{\wrn@warning\wrn@end}
-
-% Expand \@refundefined command. This does not work if undefined
-% references appear after the execution of \AtEndDocument which can happen.
-% Thus not used.
-%\AtEndDocument{%
-% \let\wrn@refundefined=\@refundefined
-% \def\@refundefined{\wrn@refundefined\wrn@warning}}
-
% Expand \@dofilelist
-% This works with or without \listfiles because \listfile has to be
-% used in the preamble and therefor is executed before this definition.
\AtBeginDocument{%
- \let\wrn@dofilelist\@dofilelist
+ \let\wrn@dofilelist\@dofilelist%
\def\@dofilelist{\wrn@dofilelist\wrn@warning}%
}
-
-\let\wrn@warning\relax
-
\endinput
+% This works with or without \listfiles because \listfile has to be
+% used in the preamble and therefor is executed before this definition.
+%
+% Expand \@@end command
+% I have the feeling that is not too stable. Thus not used.
+%\let\wrn@end\@@end
+%\def\@@end{\wrn@warning\wrn@end}
+%
+% Expand \@refundefined command
+% This does not work if undefined references appear after the execution
+% of \AtEndDocument which can happen. Thus not used.
+%\AtEndDocument{%
+% \let\wrn@refundefined=\@refundefined
+% \def\@refundefined{\wrn@refundefined\wrn@warning}}
+%
%% EOF \ No newline at end of file
diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf
index 113d469a38..ea99e67782 100644
--- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf
+++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf
Binary files differ
diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex
index 739738cd0f..43d5f7ec15 100644
--- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex
+++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex
@@ -45,8 +45,8 @@
\setlength{\parindent}{0pt}
\definecolor{LightGray}{gray}{0.9}
-\def\TPversion{0.1.2}
-\def\TPdate{30/01/2023}
+\def\TPversion{0.1.3}
+\def\TPdate{18/03/2023}
\usepackage[most]{tcolorbox}
\tcbuselibrary{minted}
@@ -242,7 +242,65 @@ The package \textsf{WriteOnGrid} proposes "shortcuts" for classic colors !
\section{Commands, keys and options}
-\subsection{The environement}
+\subsection{The command}
+
+\begin{PresentationCode}{listing only}
+%command, with keys to prepare the grid
+
+\DispGrid[keys]<color>
+\end{PresentationCode}
+
+The first argument, \textit{optional}, between \texttt{[...]} give the \Cle{keys} :
+
+\begin{itemize}
+ \item \Cle{NumSquares} to specify the size of the grid, under \texttt{(nbCol)x(nbRow)} ; \hfill~default : \Cle{17x5}
+ \item \Cle{Unit} to specify the scale of the grid ; \hfill~default : \Cle{1}
+ \item \Cle{Margin} to specify the global \textcolor{orange}{margin} at the beginning of the lines ; \hfill~default : \Cle{0}
+ \item the boolean \Cle{DispBar} to display or not the bar ; \hfill~défaut : \Cle{true}
+ \item \Cle{Enlarge} to specify the squares-overtakings, globally with \texttt{\textcolor{red}{L}\textcolor{blue}{R}} or side by side with \texttt{\textcolor{red}{L}/\textcolor{blue}{R}} ;\hfill~default : \Cle{0}
+ \item the boolean \Cle{Border} to display the basis border of the grid ;\hfill~default : \Cle{false}
+ \item the key\Cle{Grille}, from \Cle{5x5/Seyes/Ruled}, to specify the grid's type.\hfill~défaut : \Cle{5x5}
+\end{itemize}
+
+The second argument, \textit{optional}, between \texttt{<...>} is the color(s) of the grid :
+
+\begin{itemize}
+ \item by \Cle{Color} (\Cle{lightgray!50} by default) for $5\times5$ ;
+ \item by \Cle{ColorA/ColorB} (\Cle{lightgray!50/lightgray!25} by default) for Seyes or Ruled.
+\end{itemize}
+
+\medskip
+
+\begin{PresentationCode}{listing only}
+%18x4 big squares, w/o overtaking, Seyes colors, w/o margin/bar
+\DispGrid[NumSquares=18x4,Grid=Seyes,DispBar=false]<\ColSeyes>
+
+%36x8 small squares, overtakings 3/3, LightSteelBlue color
+\DispGrid[NumSquares=36x8,Enlarge=3/3]<LightSteelBlue>
+
+%12x3 lines "Ruled", w/o overtakins, Ruled colors, centered, with 2-margin
+\begin{center}
+ \DispGrid[NumSquares=12x3,Grid=Ruled,Margin=2]<\ColRuled>
+\end{center}
+\end{PresentationCode}
+
+\medskip
+
+\DispGrid[NumSquares=18x4,Grid=Seyes,DispBar=false]<\ColSeyes>
+
+\medskip
+
+\DispGrid[NumSquares=36x8,Enlarge=3/3]<LightSteelBlue>
+
+\smallskip
+
+\begin{center}
+ \DispGrid[NumSquares=12x3,Grid=Ruled,Margin=2]<\ColRuled>
+\end{center}
+
+\pagebreak
+
+\subsection{The environment}
\begin{PresentationCode}{listing only}
%environment, with keys to prepare the grid
@@ -258,6 +316,7 @@ The first argument, \textit{optional}, between \texttt{[...]} give the \Cle{keys
\item \Cle{NumSquares} to specify the size of the grid, under \texttt{(nbCol)x(nbRow)} ; \hfill~default : \Cle{17x5}
\item \Cle{Unit} to specify the scale of the grid ; \hfill~default : \Cle{1}
\item \Cle{Margin} to specify the global \textcolor{orange}{margin} at the beginning of the lines ; \hfill~default : \Cle{0}
+ \item the boolean \Cle{DispBar} to display or not the bar ; \hfill~défaut : \Cle{true}
\item \Cle{Enlarge} to specify the squares-overtakings, globally with \texttt{\textcolor{red}{L}\textcolor{blue}{R}} or side by side with \texttt{\textcolor{red}{L}/\textcolor{blue}{R}} ;\hfill~default : \Cle{0}
\item the boolean \Cle{Border} to display the basis border of the grid ;\hfill~default : \Cle{false}
\item the key\Cle{Grille}, from \Cle{5x5/Seyes/Ruled}, to specify the grid's type.\hfill~défaut : \Cle{5x5}
@@ -309,7 +368,7 @@ The second argument, \textit{optional}, between \texttt{<...>} is the color(s) o
\subsection{Write on the lines}
-The idea is to write on the created grid. In order to write \textit{right} on the lines, we can :
+The idea is to write on the created grid (environment !). In order to write \textit{right} on the lines, we can :
\begin{itemize}
\item give the lines one by one ;
@@ -429,6 +488,8 @@ To sum up, they create full paper grid (by preference for \texttt{\textbf{a4pape
\part*{History}
+\verb|v0.1.3|~:~~~~Command to display a grid (w/o writing on it)
+
\verb|v0.1.2|~:~~~~Shortcuts for default colors + small bugfixes
\verb|v0.1.1|~:~~~~Best color choice
diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf
index add8699922..192f3003b0 100644
--- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf
+++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf
Binary files differ
diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex
index 6ed93fa269..9de5e053b8 100644
--- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex
+++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex
@@ -48,8 +48,8 @@
\setlength{\parindent}{0pt}
\definecolor{LightGray}{gray}{0.9}
-\def\TPversion{0.1.2}
-\def\TPdate{30 Janvier 2023}
+\def\TPversion{0.1.3}
+\def\TPdate{18 Mars 2023}
\usepackage[most]{tcolorbox}
\tcbuselibrary{minted}
@@ -254,6 +254,65 @@ Le package \textsf{WriteOnGrid} définit également des couleurs pour une saisie
\section{Grilles individuelles}
+\subsection{La commande}
+
+\begin{PresentationCode}{listing only}
+%commande francisée, avec clés en français pour préparer la grille
+
+\AffQuadrillage[clés]<couleur(s)>
+\end{PresentationCode}
+
+Le premier argument, \textit{optionnel}, entre \texttt{[...]} propose les \Cle{clés} :
+
+\begin{itemize}
+ \item \Cle{NbCarreaux} pour spécifier le nombre de carreaux, sous la forme \texttt{(nbCol)x(nbLig)} ; \hfill~défaut : \Cle{17x5}
+ \item \Cle{Unite} pour spécifier l'échelle de la figure ; \hfill~défaut : \Cle{1}
+ \item \Cle{Marge} pour spécifier la \textcolor{orange}{marge} du début des lignes ; \hfill~défaut : \Cle{0}
+ \item le booléen \Cle{AffBarre} pour afficher ou non la marge ; \hfill~défaut : \Cle{true}
+ \item \Cle{Elargir} pour préciser les carreaux de débordements, sous la forme unique \texttt{\textcolor{red}{G}\textcolor{blue}{D}} ou par côté \texttt{\textcolor{red}{G}/\textcolor{blue}{D}} ;\hfill~défaut : \Cle{0}
+ \item le booléen \Cle{Cadre} pour afficher le cadre de base du quadrillage ;\hfill~défaut : \Cle{false}
+ \item la clé \Cle{Grille}, parmi \Cle{5x5 / Seyes / Ruled}, pour spécifier le type de quadrillage ;\hfill~défaut : \Cle{5x5}
+ \item la clé \Cle{CouleurBarreSeyes} pour rajouter un trait vertical pour le papier Seyes .\hfill~défaut : \Cle{red!75}
+\end{itemize}
+
+Le second argument, \textit{optionnel}, entre \texttt{<...>} correspond quant à lui à la couleur de base du quadrillage :
+
+\begin{itemize}
+ \item sous la forme \Cle{Couleur} (\Cle{lightgray!50} par défaut) pour le quadrillage $5\times5$ ;
+ \item sous la forme \Cle{CouleurP/CouleurS} (\Cle{lightgray!50/lightgray!25} par défaut) pour le Seyes ou le Ruled.
+\end{itemize}
+
+\medskip
+
+\begin{PresentationCode}{listing only}
+%des cadres ont été rajoutés pour la sortie
+
+%18x4 grands carreaux, sans dépassement, couleurs adaptées, sans marge/barre
+\AffQuadrillage[NbCarreaux=18x4,Grille=Seyes,AffBarre=false]<\CoulSeyes>
+
+%36x8 petits carreaux, avec débordements 3/3, couleur LightSteelBlue!50
+\AffQuadrillage[NbCarreaux=36x8,Elargir=3/3]<LightSteelBlue!50>
+
+%12x3 lignes "Ruled", sans débordements, couleur Ruled, centré, avec marge
+\begin{center}
+ \AffQuadrillage[NbCarreaux=12x3,Elargir=2/2,Grille=Ruled,Marge=2]<\CoulRuled>
+\end{center}
+\end{PresentationCode}
+
+\medskip
+
+\AffQuadrillage[NbCarreaux=18x4,Grille=Seyes,AffBarre=false]<\CoulSeyes>
+
+\medskip
+
+\AffQuadrillage[NbCarreaux=36x8,Elargir=3/3]<LightSteelBlue!50>
+
+\begin{center}
+ \AffQuadrillage[NbCarreaux=12x3,Elargir=2/2,Grille=Ruled,Marge=2]<\CoulRuled>
+\end{center}
+
+\pagebreak
+
\subsection{L'environnement}
\begin{PresentationCode}{listing only}
@@ -270,6 +329,7 @@ Le premier argument, \textit{optionnel}, entre \texttt{[...]} propose les \Cle{c
\item \Cle{NbCarreaux} pour spécifier le nombre de carreaux, sous la forme \texttt{(nbCol)x(nbLig)} ; \hfill~défaut : \Cle{17x5}
\item \Cle{Unite} pour spécifier l'échelle de la figure ; \hfill~défaut : \Cle{1}
\item \Cle{Marge} pour spécifier la \textcolor{orange}{marge} du début des lignes ; \hfill~défaut : \Cle{0}
+ \item le booléen \Cle{AffBarre} pour afficher ou non la marge ; \hfill~défaut : \Cle{true}
\item \Cle{Elargir} pour préciser les carreaux de débordements, sous la forme unique \texttt{\textcolor{red}{G}\textcolor{blue}{D}} ou par côté \texttt{\textcolor{red}{G}/\textcolor{blue}{D}} ;\hfill~défaut : \Cle{0}
\item le booléen \Cle{Cadre} pour afficher le cadre de base du quadrillage ;\hfill~défaut : \Cle{false}
\item la clé \Cle{Grille}, parmi \Cle{5x5 / Seyes / Ruled}, pour spécifier le type de quadrillage ;\hfill~défaut : \Cle{5x5}
@@ -322,7 +382,7 @@ Le second argument, \textit{optionnel}, entre \texttt{<...>} correspond quant à
\subsection{Écrire sur les lignes}
-L'idée est maintenant de pouvoir écrire sur les lignes du quadrillage créé, et pour garantir le fait d'écrire \textit{pile} sur le ligne, on applique les recommandations suivantes :
+L'idée est maintenant de pouvoir écrire sur les lignes du quadrillage créé (environnement !), et pour garantir le fait d'écrire \textit{pile} sur le ligne, on applique les recommandations suivantes :
\begin{itemize}
\item les lignes doivent être saisies une par une, du \og haut \fg{} vers le \og bas \fg{} ;
@@ -692,6 +752,8 @@ Les exemples des pages suivantes ont été obtenus de la même manière que celu
\section{Historique}
+\verb|v0.1.3|~:~~~~Ajout d'une commande pour afficher (sans écrire dessus) une grille
+
\verb|v0.1.2|~:~~~~Ajustement au niveau des couleurs + raccourcis couleurs par défaut
\verb|v0.1.1|~:~~~~Meilleure gestion des couleurs du quadrillage + Ajout pages complètes
diff --git a/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty b/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty
index d0b82ea5c1..3936233bff 100644
--- a/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty
+++ b/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty
@@ -2,7 +2,8 @@
% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{WriteOnGrid}[2023/01/30 v0.1.2 package to write on grid lines]
+\ProvidesPackage{WriteOnGrid}[2023/03/18 v0.1.3 package to write on grid lines]
+% 0.1.3 Ajout de commandes simples pour des mini-quadrillages autonomes, sans texte
% 0.1.2 Modification locale des couleurs + raccourcis couleurs Seyes / Ruled
% 0.1.1 Ajout de la couleur + modifications mineures + grille "Ruled" + grilles pleine page !
% 0.1.0 Version initiale [fr] & [en]
@@ -37,12 +38,15 @@
\node[text width=\fpeval{\ValeurCarreau*\QuadNbCol/\QuadEchelle-\ValeurCarreau*\useKV[Quadrill]{Marge}/\QuadEchelle}cm,align=#2,scale=\QuadEchelle,anchor=base west,inner sep={\useKV[LigneQuadrill]{Sep}}] at ($({\ValeurCarreau*\useKV[Quadrill]{Marge}+\ValeurCarreau*\useKV[LigneQuadrill]{DecalH}},{-\ValeurCarreau*\thelgquadri})+(0.025,\useKV[LigneQuadrill]{DecalV})$) {\strut #3} ;
}
+%déf des clés
+
\defKV[Quadrill]{%
Grille=\xdef\QuadType{#1},%
NbCarreaux=\xdef\QuadNbCar{#1},%
Elargir=\xdef\QuadElar{#1},%
CouleurBarreSeyes=\xdef\QuadCoulSeyes{#1}
- }%déf des clés
+}
+
\setKVdefault[Quadrill]{%
NbCarreaux=17x5,%
Unite=1,%
@@ -50,8 +54,62 @@
Elargir=0,%
Cadre=false,%
Grille=5x5,%
+ AffBarre=true,%
CouleurBarreSeyes={red!75}
- }
+}
+
+\NewDocumentCommand\AffQuadrillage{ O{} D<>{lightgray!50/lightgray!25} }{%affichage simple du quadrillage
+ \setcounter{lgquadri}{0}%on réinitialise les lignes
+ \useKVdefault[Quadrill]%on met les clés par défaut
+ \setKV[Quadrill]{#1}%on lit les clés
+ \IfSubStr{#2}{/}%on récupère les couleurs
+ {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}}
+ {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}%
+ \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}%
+ \IfStrEq{\QuadType}{Seyes}%les types de quadrillages
+ {\xdef\ValeurCarreau{0.8}}%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
+ {\xdef\ValeurCarreau{0.5}}%
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {\xdef\ValeurCarreau{0.9}}%
+ {}%
+ \IfSubStr{\QuadElar}{/}%on récupère les élargissements G et D
+ {\StrCut{\QuadElar}{/}{\QuadElarG}{\QuadElarD}}%
+ {\def\QuadElarG{\QuadElar}\def\QuadElarD{\QuadElar}}%
+ \begin{tikzpicture}[xscale={\useKV[Quadrill]{Unite}},yscale={\useKV[Quadrill]{Unite}}]
+ \useasboundingbox (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;%on fixe la grille de base, avant élargissement éventuel
+ \IfStrEq{\QuadType}{Seyes}%
+ {%
+ \draw[xstep=0.8,ystep=0.2,thin,\QuadCoulB] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \draw[xstep=0.8,ystep=0.8,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \ifboolKV[Quadrill]{AffBarre}
+ {
+ \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
+ }{}
+ }%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
+ {%
+ \draw[xstep=0.5,ystep=0.5,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille 5x5
+ }%
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {%
+ \foreach \LLL in {0,1,...,\QuadNbLig} {\draw[,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},{-\LLL*\ValeurCarreau}) -- ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\LLL}) ; }
+ %\draw[xstep={\ValeurCarreau*\QuadNbCol},ystep=0.9,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille college
+ \ifboolKV[Quadrill]{AffBarre}
+ {
+ \draw[thick,\QuadCoulB] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ }{}
+ }%
+ {}%
+ \ifboolKV[Quadrill]{Cadre}%cadre pour visualiser la "marge" (officielle)
+ {\draw[thick] (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;}%
+ {}%
+ \end{tikzpicture}%
+}
\NewDocumentEnvironment{EnvQuadrillage}{ O{} D<>{lightgray!50/lightgray!25} }%créer le quadrillage, couleurs ?
{%
@@ -80,7 +138,10 @@
{%
\draw[xstep=0.8,ystep=0.2,thin,\QuadCoulB] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
\draw[xstep=0.8,ystep=0.8,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
- \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
+ \ifboolKV[Quadrill]{AffBarre}
+ {
+ \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
+ }{}
}%
{}%
\IfStrEq{\QuadType}{5x5}%
@@ -92,7 +153,10 @@
{%
\foreach \LLL in {0,1,...,\QuadNbLig} {\draw[,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},{-\LLL*\ValeurCarreau}) -- ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\LLL}) ; }
%\draw[xstep={\ValeurCarreau*\QuadNbCol},ystep=0.9,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille college
- \draw[thick,\QuadCoulB] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ \ifboolKV[Quadrill]{AffBarre}
+ {
+ \draw[thick,\QuadCoulB] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ }{}
}%
{}%
\ifboolKV[Quadrill]{Cadre}%cadre pour visualiser la "marge" (officielle)
@@ -117,7 +181,60 @@
}
\defKV[Quadril]{Grid=\xdef\QuadType{#1},NumSquares=\xdef\QuadNbCar{#1},Enlarge=\xdef\QuadElar{#1}}%déf des clés
-\setKVdefault[Quadril]{Grid=5x5,NumSquares=17x5,Unit=1,Margin=0,Enlarge=0,Border=false}%valeurs par défaut
+\setKVdefault[Quadril]{Grid=5x5,NumSquares=17x5,Unit=1,Margin=0,Enlarge=0,Border=false,DispBar=true}%valeurs par défaut
+
+\NewDocumentCommand\DispGrid{ O{} D<>{lightgray!50/lightgray!25} }{%créer le quadrillage
+ \setcounter{lgquadri}{0}%on réinitialise les lignes
+ \useKVdefault[Quadril]%on met les clés par défaut
+ \setKV[Quadril]{#1}%on lit les clés
+ \IfSubStr{#2}{/}%on récupère les couleurs
+ {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}}
+ {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}%
+ \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}%
+ \IfStrEq{\QuadType}{Seyes}%les types de quadrillages
+ {\xdef\ValeurCarreau{0.8}}%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
+ {\xdef\ValeurCarreau{0.5}}%
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {\xdef\ValeurCarreau{0.9}}%
+ {}%
+ \IfSubStr{\QuadElar}{/}%on récupère les élargissements G et D
+ {\StrCut{\QuadElar}{/}{\QuadElarG}{\QuadElarD}}%
+ {\def\QuadElarG{\QuadElar}\def\QuadElarD{\QuadElar}}%
+ \begin{tikzpicture}[xscale={\useKV[Quadril]{Unit}},yscale={\useKV[Quadril]{Unit}}]
+ \useasboundingbox (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;%on fixe la grille de base, avant élargissement éventuel
+ \IfStrEq{\QuadType}{Seyes}%
+ {%
+ \draw[xstep=0.8,ystep=0.2,thin,\QuadCoulB] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \draw[xstep=0.8,ystep=0.8,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \ifboolKV[Quadril]{DispBar}
+ {
+ \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
+ }{}
+ }%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
+ {%
+ \draw[xstep=0.5,ystep=0.5,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille 5x5
+ }%
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {%
+ \foreach \LLL in {0,1,...,\QuadNbLig} {\draw[,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},{-\LLL*\ValeurCarreau}) -- ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\LLL}) ; }
+ %\draw[xstep={\ValeurCarreau*\QuadNbCol},ystep=0.9,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille college
+ \ifboolKV[Quadril]{DispBar}
+ {
+ \draw[thick,\QuadCoulB] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ }{}
+ }%
+ {}%
+ \ifboolKV[Quadril]{Border}%cadre pour la "marge"
+ {\draw[thick] (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;}%
+ {}%
+ \end{tikzpicture}%
+}%
\NewDocumentEnvironment{EnvGrid}{ O{} D<>{lightgray!50/lightgray!25} }%créer le quadrillage
{%
@@ -146,7 +263,10 @@
{%
\draw[xstep=0.8,ystep=0.2,thin,\QuadCoulB] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
\draw[xstep=0.8,ystep=0.8,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
- \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
+ \ifboolKV[Quadril]{DispBar}
+ {
+ \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
+ }{}
}%
{}%
\IfStrEq{\QuadType}{5x5}%
@@ -158,7 +278,10 @@
{%
\foreach \LLL in {0,1,...,\QuadNbLig} {\draw[,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},{-\LLL*\ValeurCarreau}) -- ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\LLL}) ; }
%\draw[xstep={\ValeurCarreau*\QuadNbCol},ystep=0.9,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille college
- \draw[thick,\QuadCoulB] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ \ifboolKV[Quadril]{DispBar}
+ {
+ \draw[thick,\QuadCoulB] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ }{}
}%
{}%
\ifboolKV[Quadril]{Border}%cadre pour la "marge"
diff --git a/timestamp b/timestamp
index eb0727c304..161f7e5349 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-03-18-02-02
+2023-03-19-02-02