diff options
124 files changed, 3706 insertions, 7143 deletions
diff --git a/CTAN.sites b/CTAN.sites index fd98e85e73..678640c128 100644 --- a/CTAN.sites +++ b/CTAN.sites @@ -241,9 +241,6 @@ by country): mirror.ibcp.fr (France) URL: https://mirror.ibcp.fr/pub/CTAN/ - mirrors.chevalier.io (France) - URL: https://mirrors.chevalier.io/CTAN/ - mirrors.ircam.fr (France) URL: ftp://mirrors.ircam.fr/pub/CTAN/ URL: https://mirrors.ircam.fr/pub/CTAN/ diff --git a/FILES.byname b/FILES.byname index a54e66678e..586c34a8c4 100644 --- a/FILES.byname +++ b/FILES.byname @@ -5228,7 +5228,7 @@ 1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp 1990/10/02 | 812 | dviware/vutex/vaxvms.ins 1990/10/02 | 127576 | dviware/vutex/vutex.web -2022/03/27 | 70477 | FILES.last07days +2022/03/28 | 68559 | 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 @@ -202675,14 +202675,14 @@ 1998/11/16 | 2386 | macros/latex/contrib/adfathesis/template.tex 2005/04/28 | 151918 | macros/latex/contrib/adfathesis.zip 2020/03/06 | 1081 | macros/latex/contrib/adjmulticol/adjmulticol.bib -2020/03/06 | 18521 | macros/latex/contrib/adjmulticol/adjmulticol.dtx +2022/03/28 | 18804 | macros/latex/contrib/adjmulticol/adjmulticol.dtx 2020/03/06 | 1105 | macros/latex/contrib/adjmulticol/adjmulticol.ins -2020/03/06 | 248294 | macros/latex/contrib/adjmulticol/adjmulticol.pdf +2022/03/28 | 265207 | macros/latex/contrib/adjmulticol/adjmulticol.pdf 2020/03/06 | 1284 | macros/latex/contrib/adjmulticol/Makefile -2020/03/06 | 468 | macros/latex/contrib/adjmulticol/README -2020/03/06 | 51287 | macros/latex/contrib/adjmulticol/sample.pdf +2022/03/28 | 530 | macros/latex/contrib/adjmulticol/README +2022/03/28 | 53058 | macros/latex/contrib/adjmulticol/sample.pdf 2020/03/06 | 715 | macros/latex/contrib/adjmulticol/sample.tex -2020/03/06 | 305825 | macros/latex/contrib/adjmulticol.zip +2022/03/28 | 319120 | macros/latex/contrib/adjmulticol.zip 2020/08/19 | 17094 | macros/latex/contrib/adjustbox/adjcalc.dtx 2020/08/19 | 153058 | macros/latex/contrib/adjustbox/adjcalc.pdf 2020/08/19 | 214595 | macros/latex/contrib/adjustbox/adjustbox.dtx @@ -208476,15 +208476,15 @@ 2016/05/11 | 3227 | macros/latex/contrib/coloring/coloring.sty 2016/05/11 | 452 | macros/latex/contrib/coloring/README 2016/05/11 | 27406 | macros/latex/contrib/coloring.zip -2022/03/19 | 5469 | macros/latex/contrib/colorist/colorart.cls -2022/03/19 | 5466 | macros/latex/contrib/colorist/colorbook.cls -2022/03/19 | 99093 | macros/latex/contrib/colorist/colorist-doc.pdf -2022/03/19 | 24464 | macros/latex/contrib/colorist/colorist-doc.tex -2022/03/19 | 40658 | macros/latex/contrib/colorist/colorist-fancy.sty -2022/03/19 | 4009 | macros/latex/contrib/colorist/colorist.sty -2022/03/19 | 19106 | macros/latex/contrib/colorist/LICENSE -2022/03/19 | 2422 | macros/latex/contrib/colorist/README.md -2022/03/20 | 122779 | macros/latex/contrib/colorist.zip +2022/03/28 | 5828 | macros/latex/contrib/colorist/colorart.cls +2022/03/28 | 5825 | macros/latex/contrib/colorist/colorbook.cls +2022/03/28 | 101019 | macros/latex/contrib/colorist/colorist-doc.pdf +2022/03/28 | 24311 | macros/latex/contrib/colorist/colorist-doc.tex +2022/03/28 | 43224 | macros/latex/contrib/colorist/colorist-fancy.sty +2022/03/28 | 4009 | macros/latex/contrib/colorist/colorist.sty +2022/03/28 | 19106 | macros/latex/contrib/colorist/LICENSE +2022/03/28 | 2422 | macros/latex/contrib/colorist/README.md +2022/03/28 | 124330 | macros/latex/contrib/colorist.zip 2019/03/25 | 99243 | macros/latex/contrib/colorspace/colorspace.pdf 2016/10/04 | 15861 | macros/latex/contrib/colorspace/colorspaceshade.png 2019/03/25 | 21423 | macros/latex/contrib/colorspace/colorspace.sty @@ -219154,16 +219154,16 @@ 2017/04/11 | 187597 | macros/latex/contrib/minidocument/minidocument.pdf 2017/04/11 | 698 | macros/latex/contrib/minidocument/README 2017/04/11 | 190869 | macros/latex/contrib/minidocument.zip -2022/03/19 | 19106 | macros/latex/contrib/minimalist/LICENSE -2022/03/19 | 33201 | macros/latex/contrib/minimalist/minimalist-classical.sty -2022/03/19 | 104579 | macros/latex/contrib/minimalist/minimalist-doc.pdf -2022/03/19 | 24694 | macros/latex/contrib/minimalist/minimalist-doc.tex -2022/03/19 | 30936 | macros/latex/contrib/minimalist/minimalist-plain.sty -2022/03/19 | 4077 | macros/latex/contrib/minimalist/minimalist.sty -2022/03/19 | 6204 | macros/latex/contrib/minimalist/minimart.cls -2022/03/19 | 6201 | macros/latex/contrib/minimalist/minimbook.cls -2022/03/19 | 2537 | macros/latex/contrib/minimalist/README.md -2022/03/20 | 131505 | macros/latex/contrib/minimalist.zip +2022/03/28 | 19106 | macros/latex/contrib/minimalist/LICENSE +2022/03/28 | 35751 | macros/latex/contrib/minimalist/minimalist-classical.sty +2022/03/28 | 103651 | macros/latex/contrib/minimalist/minimalist-doc.pdf +2022/03/28 | 24659 | macros/latex/contrib/minimalist/minimalist-doc.tex +2022/03/28 | 33481 | macros/latex/contrib/minimalist/minimalist-plain.sty +2022/03/28 | 4077 | macros/latex/contrib/minimalist/minimalist.sty +2022/03/28 | 6563 | macros/latex/contrib/minimalist/minimart.cls +2022/03/28 | 6560 | macros/latex/contrib/minimalist/minimbook.cls +2022/03/28 | 2537 | macros/latex/contrib/minimalist/README.md +2022/03/28 | 131379 | macros/latex/contrib/minimalist.zip 2008/04/07 | 14406 | macros/latex/contrib/minipage-marginpar/minipage-marginpar.dtx 2008/04/07 | 2167 | macros/latex/contrib/minipage-marginpar/minipage-marginpar.ins 2008/04/07 | 197917 | macros/latex/contrib/minipage-marginpar/minipage-marginpar.pdf @@ -222998,24 +222998,15 @@ 2003/07/02 | 413 | macros/latex/contrib/progress/README 2006/05/20 | 88703 | macros/latex/contrib/progress.zip 2021/05/06 | 19106 | macros/latex/contrib/projlib/LICENSE -2021/12/16 | 7735 | macros/latex/contrib/projlib/old-modules/PJLauthor.sty -2021/12/16 | 2046 | macros/latex/contrib/projlib/old-modules/PJLdate.sty -2021/12/16 | 3179 | macros/latex/contrib/projlib/old-modules/PJLdraft.sty -2021/12/16 | 15706 | macros/latex/contrib/projlib/old-modules/PJLlang.sty -2021/12/16 | 1931 | macros/latex/contrib/projlib/old-modules/PJLlogo.sty -2021/12/16 | 14017 | macros/latex/contrib/projlib/old-modules/PJLmath.sty -2021/12/16 | 2613 | macros/latex/contrib/projlib/old-modules/PJLpaper.sty -2021/12/16 | 74174 | macros/latex/contrib/projlib/old-modules/PJLthm.sty -2022/03/09 | 4984 | macros/latex/contrib/projlib/old-modules/PJLtoolkit.sty 2021/12/16 | 322407 | macros/latex/contrib/projlib/ProjLib-doc-cn.pdf 2021/12/16 | 98208 | macros/latex/contrib/projlib/ProjLib-doc.dtx 2021/12/16 | 200297 | macros/latex/contrib/projlib/ProjLib-doc-en.pdf 2021/12/16 | 201834 | macros/latex/contrib/projlib/ProjLib-doc-fr.pdf 2021/07/09 | 857 | macros/latex/contrib/projlib/ProjLib-doc.ins -2022/03/21 | 185307 | macros/latex/contrib/projlib/ProjLib.dtx -2022/03/09 | 3082 | macros/latex/contrib/projlib/ProjLib.ins -2022/03/21 | 4896 | macros/latex/contrib/projlib/README.md -2022/03/21 | 799790 | macros/latex/contrib/projlib.zip +2022/03/28 | 190683 | macros/latex/contrib/projlib/ProjLib.dtx +2022/03/28 | 3229 | macros/latex/contrib/projlib/ProjLib.ins +2022/03/28 | 4678 | macros/latex/contrib/projlib/README.md +2022/03/28 | 775938 | macros/latex/contrib/projlib.zip 2022/02/07 | 121559 | macros/latex/contrib/proof-at-the-end/proof-at-the-end_demo.pdf 2022/02/07 | 10484 | macros/latex/contrib/proof-at-the-end/proof-at-the-end_demo.tex 2022/02/07 | 84168 | macros/latex/contrib/proof-at-the-end/proof-at-the-end.dtx @@ -245247,16 +245238,16 @@ 2021/12/09 | 28920 | macros/unicodetex/latex/aalok/LICENSE.md 2021/12/16 | 2370 | macros/unicodetex/latex/aalok/README.txt 2022/01/02 | 188424 | macros/unicodetex/latex/aalok.zip -2022/03/19 | 29538 | macros/unicodetex/latex/beaulivre/beaulivre.cls -2022/03/19 | 311864 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf -2022/03/19 | 19868 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex -2022/03/19 | 202688 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf -2022/03/19 | 21320 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex -2022/03/19 | 207082 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf -2022/03/19 | 23046 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex -2022/03/19 | 19106 | macros/unicodetex/latex/beaulivre/LICENSE -2022/03/19 | 1458 | macros/unicodetex/latex/beaulivre/README.md -2022/03/20 | 733414 | macros/unicodetex/latex/beaulivre.zip +2022/03/28 | 28433 | macros/unicodetex/latex/beaulivre/beaulivre.cls +2022/03/28 | 317958 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf +2022/03/28 | 18986 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex +2022/03/28 | 208707 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf +2022/03/28 | 20436 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex +2022/03/28 | 213506 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf +2022/03/28 | 22162 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex +2022/03/28 | 19106 | macros/unicodetex/latex/beaulivre/LICENSE +2022/03/28 | 1458 | macros/unicodetex/latex/beaulivre/README.md +2022/03/28 | 747769 | macros/unicodetex/latex/beaulivre.zip 2022/02/26 | 128251 | macros/unicodetex/latex/book-of-common-prayer/book-of-common-prayer.pdf 2022/02/26 | 6771 | macros/unicodetex/latex/book-of-common-prayer/book-of-common-prayer.sty 2022/02/26 | 17327 | macros/unicodetex/latex/book-of-common-prayer/book-of-common-prayer.tex @@ -245272,16 +245263,16 @@ 2021/12/09 | 1086 | macros/unicodetex/latex/chhaya/ref.bib 2021/12/09 | 6165 | macros/unicodetex/latex/chhaya/sankshep.tex 2022/01/02 | 134099 | macros/unicodetex/latex/chhaya.zip -2022/03/19 | 30375 | macros/unicodetex/latex/einfart/einfart.cls -2022/03/19 | 241093 | macros/unicodetex/latex/einfart/einfart-doc-cn.pdf -2022/03/19 | 21246 | macros/unicodetex/latex/einfart/einfart-doc-cn.tex -2022/03/19 | 148049 | macros/unicodetex/latex/einfart/einfart-doc-en.pdf -2022/03/19 | 22313 | macros/unicodetex/latex/einfart/einfart-doc-en.tex -2022/03/19 | 154409 | macros/unicodetex/latex/einfart/einfart-doc-fr.pdf -2022/03/19 | 24199 | macros/unicodetex/latex/einfart/einfart-doc-fr.tex -2022/03/19 | 19106 | macros/unicodetex/latex/einfart/LICENSE -2022/03/19 | 1478 | macros/unicodetex/latex/einfart/README.md -2022/03/20 | 567631 | macros/unicodetex/latex/einfart.zip +2022/03/28 | 29270 | macros/unicodetex/latex/einfart/einfart.cls +2022/03/28 | 246732 | macros/unicodetex/latex/einfart/einfart-doc-cn.pdf +2022/03/28 | 21198 | macros/unicodetex/latex/einfart/einfart-doc-cn.tex +2022/03/28 | 154292 | macros/unicodetex/latex/einfart/einfart-doc-en.pdf +2022/03/28 | 22265 | macros/unicodetex/latex/einfart/einfart-doc-en.tex +2022/03/28 | 160763 | macros/unicodetex/latex/einfart/einfart-doc-fr.pdf +2022/03/28 | 24151 | macros/unicodetex/latex/einfart/einfart-doc-fr.tex +2022/03/28 | 19106 | macros/unicodetex/latex/einfart/LICENSE +2022/03/28 | 1478 | macros/unicodetex/latex/einfart/README.md +2022/03/28 | 581574 | macros/unicodetex/latex/einfart.zip 2022/03/06 | 566517 | macros/unicodetex/latex/fontsetup/doc/fontsetup-doc.pdf 2022/03/06 | 19104 | macros/unicodetex/latex/fontsetup/doc/fontsetup-doc.tex 2021/12/09 | 27714 | macros/unicodetex/latex/fontsetup/doc/fspsample-cmr.pdf @@ -245381,16 +245372,16 @@ 2022/01/15 | 19106 | macros/unicodetex/latex/fontspec/LICENSE 2022/01/15 | 2835 | macros/unicodetex/latex/fontspec/README.md 2022/01/15 | 1342043 | macros/unicodetex/latex/fontspec.zip -2022/03/19 | 29534 | macros/unicodetex/latex/lebhart/lebhart.cls -2022/03/19 | 269110 | macros/unicodetex/latex/lebhart/lebhart-doc-cn.pdf -2022/03/19 | 20540 | macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex -2022/03/19 | 154045 | macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf -2022/03/19 | 21987 | macros/unicodetex/latex/lebhart/lebhart-doc-en.tex -2022/03/19 | 160620 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf -2022/03/19 | 23867 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex -2022/03/19 | 19106 | macros/unicodetex/latex/lebhart/LICENSE -2022/03/19 | 1460 | macros/unicodetex/latex/lebhart/README.md -2022/03/20 | 608687 | macros/unicodetex/latex/lebhart.zip +2022/03/28 | 28429 | macros/unicodetex/latex/lebhart/lebhart.cls +2022/03/28 | 264079 | macros/unicodetex/latex/lebhart/lebhart-doc-cn.pdf +2022/03/28 | 20539 | macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex +2022/03/28 | 146177 | macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf +2022/03/28 | 21986 | macros/unicodetex/latex/lebhart/lebhart-doc-en.tex +2022/03/28 | 150569 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf +2022/03/28 | 23866 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex +2022/03/28 | 19106 | macros/unicodetex/latex/lebhart/LICENSE +2022/03/28 | 1460 | macros/unicodetex/latex/lebhart/README.md +2022/03/28 | 582546 | macros/unicodetex/latex/lebhart.zip 2020/09/29 | 6586 | macros/unicodetex/latex/lilyglyphs/CHANGES.md 2020/09/29 | 38525 | macros/unicodetex/latex/lilyglyphs/documentation/lilyglyphs-example-400.png 2020/09/29 | 78141 | macros/unicodetex/latex/lilyglyphs/documentation/lilyglyphs-example-600.png @@ -245643,16 +245634,16 @@ 2016/02/13 | 1755 | macros/unicodetex/latex/realscripts/realscripts.ins 2016/02/13 | 106569 | macros/unicodetex/latex/realscripts/realscripts.pdf 2016/02/13 | 108915 | macros/unicodetex/latex/realscripts.zip -2022/03/19 | 19106 | macros/unicodetex/latex/simplivre/LICENSE -2022/03/19 | 1475 | macros/unicodetex/latex/simplivre/README.md -2022/03/19 | 30379 | macros/unicodetex/latex/simplivre/simplivre.cls -2022/03/19 | 326762 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf -2022/03/19 | 20489 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex -2022/03/19 | 224472 | macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf -2022/03/19 | 21548 | macros/unicodetex/latex/simplivre/simplivre-doc-en.tex -2022/03/19 | 226321 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf -2022/03/19 | 23350 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex -2022/03/20 | 789419 | macros/unicodetex/latex/simplivre.zip +2022/03/28 | 19106 | macros/unicodetex/latex/simplivre/LICENSE +2022/03/28 | 1475 | macros/unicodetex/latex/simplivre/README.md +2022/03/28 | 29274 | macros/unicodetex/latex/simplivre/simplivre.cls +2022/03/28 | 333063 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf +2022/03/28 | 19896 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex +2022/03/28 | 230296 | macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf +2022/03/28 | 20940 | macros/unicodetex/latex/simplivre/simplivre-doc-en.tex +2022/03/28 | 231898 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf +2022/03/28 | 22755 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex +2022/03/28 | 802160 | macros/unicodetex/latex/simplivre.zip 2021/02/09 | 13142 | macros/unicodetex/latex/texnegar/doc-ligature-texnegar.pdf 2021/02/09 | 10117 | macros/unicodetex/latex/texnegar/doc-ligature-xep.pdf 2021/02/09 | 63437 | macros/unicodetex/latex/texnegar/doc-samples-glyph.pdf @@ -273669,64 +273660,12 @@ 2021/11/10 | 1844 | support/lualibs/lua-uca/Makefile 2021/11/10 | 3946 | support/lualibs/lua-uca/README.md 2021/11/10 | 288041 | support/lualibs/lua-uca.zip -2016/01/24 | 237 | support/lug/images/bg.png -2016/01/24 | 1163 | support/lug/images/br.png -2016/01/24 | 529 | support/lug/images/cn.png -2016/01/24 | 412 | support/lug/images/cz.png -2016/01/24 | 231 | support/lug/images/de.png -2016/01/24 | 306 | support/lug/images/dk.png -2016/01/24 | 188 | support/lug/images/ee.png -2016/01/24 | 992 | support/lug/images/esc.png -2016/01/24 | 570 | support/lug/images/es.png -2016/01/24 | 240 | support/lug/images/fr.png -2016/01/24 | 1570 | support/lug/images/gb.png -2016/01/24 | 194 | support/lug/images/hu.png -2016/01/24 | 239 | support/lug/images/ie.png -2016/01/24 | 440 | support/lug/images/in.png -2016/01/24 | 328 | support/lug/images/is.png -2016/01/24 | 241 | support/lug/images/it.png -2016/01/24 | 1183 | support/lug/images/kr.png -2016/01/24 | 236 | support/lug/images/lt.png -2016/01/24 | 597 | support/lug/images/mx.png -2016/01/24 | 242 | support/lug/images/nl.png -2016/01/24 | 413 | support/lug/images/no.png -2016/01/24 | 242 | support/lug/images/pl.png -2016/01/24 | 697 | support/lug/images/pt.png -2016/01/24 | 236 | support/lug/images/ru.png -2016/01/24 | 577 | support/lug/images/si.png -2016/01/24 | 915 | support/lug/images/us.png -2016/01/24 | 556 | support/lug/images/vn.png -2016/01/24 | 1045 | support/lug/images/za.png -2016/01/24 | 41250 | support/lug/lug -2016/01/24 | 51001 | support/lug/lug.pdf -2016/01/24 | 767 | support/lug/lugs/bg -2016/01/24 | 516 | support/lug/lugs/br -2016/01/24 | 834 | support/lug/lugs/cn -2016/01/24 | 1007 | support/lug/lugs/cz -2016/01/24 | 825 | support/lug/lugs/de -2016/01/24 | 698 | support/lug/lugs/dk -2016/01/24 | 454 | support/lug/lugs/ee -2016/01/24 | 724 | support/lug/lugs/es -2016/01/24 | 571 | support/lug/lugs/esc -2016/01/24 | 867 | support/lug/lugs/fr -2016/01/24 | 688 | support/lug/lugs/gb -2016/01/24 | 1046 | support/lug/lugs/hu -2016/01/24 | 586 | support/lug/lugs/ie -2016/01/24 | 490 | support/lug/lugs/is -2016/01/24 | 747 | support/lug/lugs/it -2016/01/24 | 904 | support/lug/lugs/kr -2016/01/24 | 502 | support/lug/lugs/lt -2016/01/24 | 542 | support/lug/lugs/mx -2016/01/24 | 833 | support/lug/lugs/nl -2016/01/24 | 554 | support/lug/lugs/no -2016/01/24 | 1004 | support/lug/lugs/pl -2016/01/24 | 577 | support/lug/lugs/pt -2016/01/24 | 2757 | support/lug/lugs.rb -2016/01/24 | 621 | support/lug/lugs/us -2016/01/24 | 659 | support/lug/lugs/vn -2016/01/24 | 610 | support/lug/lugs/za -2016/01/24 | 558 | support/lug/README -2016/01/24 | 95167 | support/lug.zip +2022/03/28 | 99152 | support/lug/lug +2022/03/28 | 2814 | support/lug/lug.1 +2022/03/28 | 10647 | support/lug/lug.html +2022/03/28 | 59035 | support/lug/lug.pdf +2022/03/28 | 513 | support/lug/README.md +2022/03/28 | 113272 | support/lug.zip 1995/07/07 | 217081 | support/lxmail/lxmail10.exe 1995/07/07 | 987 | support/lxmail/lxmail10.txt 2007/12/25 | 217923 | support/lxmail.zip @@ -298533,7 +298472,7 @@ 2020/10/03 | 318630 | systems/win32/miktex/tm/packages/filehook.tar.lzma 2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma 2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma -2022/03/27 | 648433 | systems/win32/miktex/tm/packages/files.csv.lzma +2022/03/28 | 648433 | systems/win32/miktex/tm/packages/files.csv.lzma 2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma 2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma 2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma @@ -300100,9 +300039,9 @@ 2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma 2022/03/12 | 39680 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma 2022/03/12 | 43633 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma -2022/03/27 | 271521 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2022/03/27 | 1437996 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2022/03/27 | 1327988 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2022/03/28 | 271487 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2022/03/28 | 1438182 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2022/03/28 | 1328550 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma 2022/03/12 | 13516 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma 2022/03/12 | 14387 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma 2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma @@ -300326,191 +300265,191 @@ 2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma 2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma 2021/03/17 | 232249 | systems/win32/miktex/tm/packages/newverbs.tar.lzma -2022/03/27 | 648367 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2022/03/27 | 51558 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2022/03/27 | 57330 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2022/03/27 | 1021845 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2022/03/27 | 1156463 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2022/03/27 | 28799 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2022/03/27 | 31520 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2022/03/27 | 30145 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2022/03/27 | 35242 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2022/03/27 | 56617 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2022/03/27 | 65055 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2022/03/27 | 86759 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2022/03/27 | 95284 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2022/03/27 | 68874 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2022/03/27 | 77067 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2022/03/27 | 27248 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2022/03/27 | 31343 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2022/03/27 | 332413 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2022/03/27 | 394370 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2022/03/27 | 32955 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2022/03/27 | 37080 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2022/03/27 | 51485 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2022/03/27 | 57269 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2022/03/27 | 244959 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2022/03/27 | 270298 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2022/03/27 | 179877 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2022/03/27 | 196117 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2022/03/27 | 92918 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2022/03/27 | 103092 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2022/03/27 | 21313 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2022/03/27 | 24120 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2022/03/27 | 481497 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2022/03/27 | 46066 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2022/03/27 | 52093 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2022/03/27 | 285714 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2022/03/27 | 326661 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2022/03/27 | 41303 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2022/03/27 | 45825 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2022/03/27 | 120616 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2022/03/27 | 135378 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2022/03/27 | 1302484 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2022/03/27 | 1454765 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2022/03/27 | 99817 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2022/03/27 | 113052 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2022/03/27 | 43646 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2022/03/27 | 48825 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2022/03/27 | 25107 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2022/03/27 | 28567 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2022/03/27 | 56992 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2022/03/27 | 63311 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2022/03/27 | 135949 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2022/03/27 | 155496 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2022/03/27 | 73477 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2022/03/27 | 78974 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2022/03/27 | 72013 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2022/03/27 | 81461 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2022/03/27 | 259256 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2022/03/27 | 296038 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2022/03/27 | 22147 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2022/03/27 | 25060 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2022/03/27 | 97202 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2022/03/27 | 112589 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2022/03/27 | 64542 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2022/03/27 | 73148 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2022/03/27 | 96634 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2022/03/27 | 115657 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2022/03/27 | 38427 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2022/03/27 | 43825 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2022/03/27 | 484370 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2022/03/27 | 565929 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2022/03/27 | 203837 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma -2022/03/27 | 247334 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma -2022/03/27 | 152028 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2022/03/27 | 168820 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2022/03/27 | 95433 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2022/03/27 | 109478 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2022/03/27 | 16502 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2022/03/27 | 18369 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2022/03/27 | 28422 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2022/03/27 | 30542 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2022/03/27 | 631280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2022/03/27 | 681939 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2022/03/27 | 532454 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2022/03/27 | 598229 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2022/03/27 | 477847 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2022/03/27 | 528018 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2022/03/27 | 93959 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2022/03/27 | 103338 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2022/03/27 | 1752148 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2022/03/27 | 1982083 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2022/03/27 | 68009 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2022/03/27 | 74069 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2022/03/27 | 27590 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2022/03/27 | 32134 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2022/03/27 | 7752 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2022/03/27 | 8784 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2022/03/27 | 190502 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2022/03/27 | 208808 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2022/03/27 | 251130 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2022/03/27 | 286414 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2022/03/27 | 99256 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2022/03/27 | 104557 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2022/03/27 | 126533 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2022/03/27 | 139103 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2022/03/27 | 288201 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2022/03/27 | 325268 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2022/03/27 | 199832 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2022/03/27 | 181515 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2022/03/27 | 49769 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2022/03/27 | 55568 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2022/03/27 | 31412 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2022/03/27 | 35169 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2022/03/27 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2022/03/27 | 43916 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2022/03/27 | 43359 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2022/03/27 | 47923 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2022/03/27 | 45743 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2022/03/27 | 52327 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2022/03/27 | 197034 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma -2022/03/27 | 213277 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2022/03/27 | 36049 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma -2022/03/27 | 41182 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma -2022/03/27 | 755743 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2022/03/27 | 824370 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2022/03/27 | 200399 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2022/03/27 | 202836 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2022/03/27 | 210276 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2022/03/27 | 245097 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2022/03/27 | 79025 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2022/03/27 | 88151 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2022/03/27 | 1181127 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2022/03/27 | 1322741 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2022/03/27 | 20184 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2022/03/27 | 23942 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2022/03/27 | 31588 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2022/03/27 | 37372 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2022/03/27 | 64708 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2022/03/27 | 72883 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2022/03/27 | 50799 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2022/03/27 | 58662 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2022/03/27 | 693068 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma -2022/03/27 | 758953 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma -2022/03/27 | 1357071 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2022/03/27 | 1501236 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2022/03/27 | 42817 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2022/03/27 | 52478 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2022/03/27 | 57619 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2022/03/27 | 63739 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma -2022/03/27 | 25552 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2022/03/27 | 27636 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2022/03/27 | 16560 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2022/03/27 | 18492 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2022/03/27 | 64489 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2022/03/27 | 71006 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2022/03/27 | 156963 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2022/03/27 | 173006 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2022/03/27 | 58666 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2022/03/27 | 67254 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2022/03/27 | 100486 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2022/03/27 | 107705 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2022/03/27 | 2694875 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2022/03/27 | 2820687 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2022/03/27 | 55285 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2022/03/27 | 62381 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2022/03/27 | 37116 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma -2022/03/27 | 41203 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2022/03/27 | 28691 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2022/03/27 | 34052 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2022/03/27 | 67705 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2022/03/27 | 73529 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2022/03/27 | 316242 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2022/03/27 | 351696 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2022/03/27 | 55758 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma -2022/03/27 | 57525 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma -2022/03/27 | 591569 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2022/03/27 | 629432 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2022/03/27 | 39727 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2022/03/27 | 43223 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2022/03/27 | 271533 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2022/03/27 | 1437693 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2022/03/27 | 1328020 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2022/03/27 | 13513 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2022/03/27 | 14410 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2022/03/28 | 648367 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2022/03/28 | 51559 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2022/03/28 | 57330 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2022/03/28 | 1021845 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2022/03/28 | 1156464 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2022/03/28 | 28797 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2022/03/28 | 31521 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2022/03/28 | 30146 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2022/03/28 | 35243 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2022/03/28 | 56619 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2022/03/28 | 65054 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2022/03/28 | 86759 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2022/03/28 | 95286 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2022/03/28 | 68871 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2022/03/28 | 77067 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2022/03/28 | 27249 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2022/03/28 | 31342 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2022/03/28 | 332415 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2022/03/28 | 394369 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2022/03/28 | 32956 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2022/03/28 | 37080 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2022/03/28 | 51485 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2022/03/28 | 57270 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2022/03/28 | 244962 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2022/03/28 | 270300 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2022/03/28 | 179879 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2022/03/28 | 196117 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2022/03/28 | 92916 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2022/03/28 | 103093 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2022/03/28 | 21313 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2022/03/28 | 24120 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2022/03/28 | 481499 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2022/03/28 | 46067 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2022/03/28 | 52093 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2022/03/28 | 285715 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2022/03/28 | 326662 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2022/03/28 | 41305 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2022/03/28 | 45825 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2022/03/28 | 120617 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2022/03/28 | 135376 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2022/03/28 | 1302485 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2022/03/28 | 1454763 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2022/03/28 | 99816 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2022/03/28 | 113051 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2022/03/28 | 43645 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2022/03/28 | 48825 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2022/03/28 | 25106 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2022/03/28 | 28570 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2022/03/28 | 56994 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2022/03/28 | 63311 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2022/03/28 | 135947 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2022/03/28 | 155497 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2022/03/28 | 73478 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2022/03/28 | 78975 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2022/03/28 | 72015 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2022/03/28 | 81461 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2022/03/28 | 259257 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2022/03/28 | 296040 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2022/03/28 | 22145 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2022/03/28 | 25059 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2022/03/28 | 97199 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2022/03/28 | 112589 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2022/03/28 | 64544 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2022/03/28 | 73149 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2022/03/28 | 96632 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2022/03/28 | 115656 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2022/03/28 | 38426 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2022/03/28 | 43824 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2022/03/28 | 484371 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2022/03/28 | 565929 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2022/03/28 | 203839 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma +2022/03/28 | 247334 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma +2022/03/28 | 152029 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2022/03/28 | 168820 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2022/03/28 | 95432 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2022/03/28 | 109478 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2022/03/28 | 16502 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2022/03/28 | 18368 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2022/03/28 | 28422 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2022/03/28 | 30541 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2022/03/28 | 631280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2022/03/28 | 681938 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2022/03/28 | 532454 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2022/03/28 | 598232 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2022/03/28 | 477846 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2022/03/28 | 528017 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2022/03/28 | 93959 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2022/03/28 | 103337 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2022/03/28 | 1752147 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2022/03/28 | 1982084 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2022/03/28 | 68010 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2022/03/28 | 74068 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2022/03/28 | 27591 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2022/03/28 | 32133 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2022/03/28 | 7752 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2022/03/28 | 8784 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2022/03/28 | 190506 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2022/03/28 | 208808 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2022/03/28 | 251128 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2022/03/28 | 286411 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2022/03/28 | 99258 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2022/03/28 | 104556 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2022/03/28 | 126534 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2022/03/28 | 139104 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2022/03/28 | 288202 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2022/03/28 | 325270 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2022/03/28 | 199831 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2022/03/28 | 181515 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2022/03/28 | 49770 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2022/03/28 | 55568 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2022/03/28 | 31412 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2022/03/28 | 35169 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2022/03/28 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2022/03/28 | 43916 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2022/03/28 | 43361 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2022/03/28 | 47923 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2022/03/28 | 45743 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2022/03/28 | 52326 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2022/03/28 | 197034 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2022/03/28 | 213279 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2022/03/28 | 36048 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2022/03/28 | 41182 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2022/03/28 | 755743 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2022/03/28 | 824370 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2022/03/28 | 200398 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2022/03/28 | 202833 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2022/03/28 | 210274 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2022/03/28 | 245097 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2022/03/28 | 79025 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2022/03/28 | 88152 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2022/03/28 | 1181126 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2022/03/28 | 1322740 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2022/03/28 | 20183 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2022/03/28 | 23945 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2022/03/28 | 31586 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2022/03/28 | 37374 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2022/03/28 | 64709 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2022/03/28 | 72887 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2022/03/28 | 50799 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2022/03/28 | 58662 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2022/03/28 | 693069 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma +2022/03/28 | 758955 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma +2022/03/28 | 1357072 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2022/03/28 | 1501236 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2022/03/28 | 42817 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2022/03/28 | 52479 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2022/03/28 | 57618 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2022/03/28 | 63739 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2022/03/28 | 25549 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2022/03/28 | 27637 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2022/03/28 | 16560 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2022/03/28 | 18492 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2022/03/28 | 64490 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2022/03/28 | 71007 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2022/03/28 | 156963 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2022/03/28 | 173007 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2022/03/28 | 58665 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2022/03/28 | 67252 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2022/03/28 | 100488 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2022/03/28 | 107702 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2022/03/28 | 2694874 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2022/03/28 | 2820688 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2022/03/28 | 55285 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2022/03/28 | 62382 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2022/03/28 | 37116 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2022/03/28 | 41202 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2022/03/28 | 28688 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2022/03/28 | 34052 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2022/03/28 | 67705 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2022/03/28 | 73529 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2022/03/28 | 316241 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2022/03/28 | 351696 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2022/03/28 | 55757 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma +2022/03/28 | 57526 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma +2022/03/28 | 591570 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2022/03/28 | 629428 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2022/03/28 | 39728 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2022/03/28 | 43225 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2022/03/28 | 271548 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2022/03/28 | 1437635 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2022/03/28 | 1328153 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2022/03/28 | 13514 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2022/03/28 | 14411 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma 2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma -2022/03/27 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2022/03/28 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini 2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma 2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma 2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma @@ -300971,7 +300910,7 @@ 2022/02/22 | 6917 | systems/win32/miktex/tm/packages/preview.tar.lzma 2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma 2021/04/23 | 274028 | systems/win32/miktex/tm/packages/principia.tar.lzma -2022/03/27 | 997 | systems/win32/miktex/tm/packages/pr.ini +2022/03/28 | 997 | systems/win32/miktex/tm/packages/pr.ini 2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma 2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma 2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma @@ -302770,7 +302709,7 @@ 2004/06/04 | 404 | tds/tds.sed 2004/06/23 | 65418 | tds/tds.tex 2019/05/29 | 304264 | tds.zip -2022/03/28 | 186 | timestamp +2022/03/29 | 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 Binary files differindex a1c0526886..9be9d4b2bb 100644 --- a/FILES.byname.gz +++ b/FILES.byname.gz diff --git a/FILES.last07days b/FILES.last07days index 722162e0fe..8d076a4782 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,219 +1,293 @@ -2022/03/27 | 99817 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2022/03/27 | 997 | systems/win32/miktex/tm/packages/pr.ini -2022/03/27 | 99256 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2022/03/27 | 97202 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2022/03/27 | 96634 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2022/03/28 | 99816 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2022/03/28 | 997 | systems/win32/miktex/tm/packages/pr.ini +2022/03/28 | 99258 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2022/03/28 | 99152 | support/lug/lug +2022/03/28 | 97199 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2022/03/28 | 96632 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2022/03/28 | 95432 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2022/03/28 | 95286 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2022/03/28 | 93959 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2022/03/28 | 92916 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2022/03/28 | 88152 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2022/03/28 | 8784 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2022/03/28 | 86759 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2022/03/28 | 824370 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2022/03/28 | 81461 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2022/03/28 | 802160 | macros/unicodetex/latex/simplivre.zip +2022/03/28 | 79025 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2022/03/28 | 78975 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2022/03/28 | 775938 | macros/latex/contrib/projlib.zip +2022/03/28 | 7752 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2022/03/28 | 77067 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2022/03/28 | 758955 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma +2022/03/28 | 755743 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2022/03/28 | 747769 | macros/unicodetex/latex/beaulivre.zip +2022/03/28 | 74068 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2022/03/28 | 73529 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2022/03/28 | 73478 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2022/03/28 | 73149 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2022/03/28 | 72887 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2022/03/28 | 72015 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2022/03/28 | 71007 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2022/03/28 | 693069 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma +2022/03/28 | 68871 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2022/03/28 | 681938 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2022/03/28 | 68010 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2022/03/28 | 67705 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2022/03/28 | 67252 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2022/03/28 | 6563 | macros/latex/contrib/minimalist/minimart.cls +2022/03/28 | 6560 | macros/latex/contrib/minimalist/minimbook.cls +2022/03/28 | 65054 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2022/03/28 | 648433 | systems/win32/miktex/tm/packages/files.csv.lzma +2022/03/28 | 648367 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2022/03/28 | 64709 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2022/03/28 | 64544 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2022/03/28 | 64490 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2022/03/28 | 63739 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2022/03/28 | 63311 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2022/03/28 | 631280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2022/03/28 | 629428 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2022/03/28 | 62382 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2022/03/28 | 598232 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2022/03/28 | 591570 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2022/03/28 | 59035 | support/lug/lug.pdf +2022/03/28 | 58665 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2022/03/28 | 58662 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2022/03/28 | 5828 | macros/latex/contrib/colorist/colorart.cls +2022/03/28 | 5825 | macros/latex/contrib/colorist/colorbook.cls +2022/03/28 | 582546 | macros/unicodetex/latex/lebhart.zip +2022/03/28 | 581574 | macros/unicodetex/latex/einfart.zip +2022/03/28 | 57618 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2022/03/28 | 57526 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma +2022/03/28 | 57330 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2022/03/28 | 57270 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2022/03/28 | 56994 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2022/03/28 | 56619 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2022/03/28 | 565929 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2022/03/28 | 55757 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma +2022/03/28 | 55568 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2022/03/28 | 55285 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2022/03/28 | 532454 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2022/03/28 | 530 | macros/latex/contrib/adjmulticol/README +2022/03/28 | 53058 | macros/latex/contrib/adjmulticol/sample.pdf +2022/03/28 | 528017 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2022/03/28 | 52479 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2022/03/28 | 52326 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2022/03/28 | 52093 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2022/03/28 | 51559 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2022/03/28 | 51485 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2022/03/28 | 513 | support/lug/README.md +2022/03/28 | 50799 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2022/03/28 | 49770 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2022/03/28 | 48825 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2022/03/28 | 484371 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2022/03/28 | 481499 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2022/03/28 | 47923 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2022/03/28 | 477846 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2022/03/28 | 4678 | macros/latex/contrib/projlib/README.md +2022/03/28 | 46067 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2022/03/28 | 45825 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2022/03/28 | 45743 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2022/03/28 | 43916 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2022/03/28 | 43824 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2022/03/28 | 43645 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2022/03/28 | 43361 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2022/03/28 | 43225 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2022/03/28 | 43224 | macros/latex/contrib/colorist/colorist-fancy.sty +2022/03/28 | 42817 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2022/03/28 | 41305 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2022/03/28 | 41202 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2022/03/28 | 41182 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2022/03/28 | 4077 | macros/latex/contrib/minimalist/minimalist.sty +2022/03/28 | 4009 | macros/latex/contrib/colorist/colorist.sty +2022/03/28 | 39728 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2022/03/28 | 394369 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2022/03/28 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2022/03/28 | 38426 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2022/03/28 | 37374 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2022/03/28 | 37116 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2022/03/28 | 37080 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2022/03/28 | 36048 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2022/03/28 | 35751 | macros/latex/contrib/minimalist/minimalist-classical.sty +2022/03/28 | 35243 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2022/03/28 | 35169 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2022/03/28 | 351696 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2022/03/28 | 34052 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2022/03/28 | 33481 | macros/latex/contrib/minimalist/minimalist-plain.sty +2022/03/28 | 333063 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf +2022/03/28 | 332415 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2022/03/28 | 32956 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2022/03/28 | 326662 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2022/03/28 | 325270 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2022/03/28 | 3229 | macros/latex/contrib/projlib/ProjLib.ins +2022/03/28 | 32133 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2022/03/28 | 319120 | macros/latex/contrib/adjmulticol.zip +2022/03/28 | 317958 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf +2022/03/28 | 316241 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2022/03/28 | 31586 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2022/03/28 | 31521 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2022/03/28 | 31412 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2022/03/28 | 31342 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2022/03/28 | 30541 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2022/03/28 | 30146 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2022/03/28 | 296040 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2022/03/28 | 29274 | macros/unicodetex/latex/simplivre/simplivre.cls +2022/03/28 | 29270 | macros/unicodetex/latex/einfart/einfart.cls +2022/03/28 | 288202 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2022/03/28 | 28797 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2022/03/28 | 28688 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2022/03/28 | 286411 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2022/03/28 | 285715 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2022/03/28 | 28570 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2022/03/28 | 28433 | macros/unicodetex/latex/beaulivre/beaulivre.cls +2022/03/28 | 28429 | macros/unicodetex/latex/lebhart/lebhart.cls +2022/03/28 | 28422 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2022/03/28 | 2820688 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2022/03/28 | 2814 | support/lug/lug.1 +2022/03/28 | 27637 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2022/03/28 | 27591 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2022/03/28 | 27249 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2022/03/28 | 271548 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2022/03/28 | 271487 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2022/03/28 | 270300 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2022/03/28 | 2694874 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2022/03/28 | 265207 | macros/latex/contrib/adjmulticol/adjmulticol.pdf +2022/03/28 | 264079 | macros/unicodetex/latex/lebhart/lebhart-doc-cn.pdf +2022/03/28 | 259257 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2022/03/28 | 25549 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2022/03/28 | 2537 | macros/latex/contrib/minimalist/README.md +2022/03/28 | 251128 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2022/03/28 | 25106 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2022/03/28 | 25059 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2022/03/28 | 247334 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma +2022/03/28 | 246732 | macros/unicodetex/latex/einfart/einfart-doc-cn.pdf +2022/03/28 | 24659 | macros/latex/contrib/minimalist/minimalist-doc.tex +2022/03/28 | 245097 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2022/03/28 | 244962 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2022/03/28 | 24311 | macros/latex/contrib/colorist/colorist-doc.tex +2022/03/28 | 2422 | macros/latex/contrib/colorist/README.md +2022/03/28 | 24151 | macros/unicodetex/latex/einfart/einfart-doc-fr.tex +2022/03/28 | 24120 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2022/03/28 | 23945 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2022/03/28 | 23866 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex +2022/03/28 | 231898 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf +2022/03/28 | 230296 | macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf +2022/03/28 | 22755 | macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex +2022/03/28 | 22265 | macros/unicodetex/latex/einfart/einfart-doc-en.tex +2022/03/28 | 22162 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex +2022/03/28 | 22145 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2022/03/28 | 21986 | macros/unicodetex/latex/lebhart/lebhart-doc-en.tex +2022/03/28 | 213506 | macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf +2022/03/28 | 213279 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2022/03/28 | 21313 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2022/03/28 | 21198 | macros/unicodetex/latex/einfart/einfart-doc-cn.tex +2022/03/28 | 210274 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2022/03/28 | 20940 | macros/unicodetex/latex/simplivre/simplivre-doc-en.tex +2022/03/28 | 208808 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2022/03/28 | 208707 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf +2022/03/28 | 20539 | macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex +2022/03/28 | 20436 | macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex +2022/03/28 | 203839 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma +2022/03/28 | 202833 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2022/03/28 | 20183 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2022/03/28 | 200398 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2022/03/28 | 199831 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2022/03/28 | 19896 | macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex +2022/03/28 | 1982084 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2022/03/28 | 197034 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2022/03/28 | 196117 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2022/03/28 | 19106 | macros/unicodetex/latex/simplivre/LICENSE +2022/03/28 | 19106 | macros/unicodetex/latex/lebhart/LICENSE +2022/03/28 | 19106 | macros/unicodetex/latex/einfart/LICENSE +2022/03/28 | 19106 | macros/unicodetex/latex/beaulivre/LICENSE +2022/03/28 | 19106 | macros/latex/contrib/minimalist/LICENSE +2022/03/28 | 19106 | macros/latex/contrib/colorist/LICENSE +2022/03/28 | 190683 | macros/latex/contrib/projlib/ProjLib.dtx +2022/03/28 | 190506 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2022/03/28 | 18986 | macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex +2022/03/28 | 18804 | macros/latex/contrib/adjmulticol/adjmulticol.dtx +2022/03/28 | 18492 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2022/03/28 | 18368 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2022/03/28 | 181515 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2022/03/28 | 179879 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2022/03/28 | 1752147 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2022/03/28 | 173007 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2022/03/28 | 168820 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2022/03/28 | 16560 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2022/03/28 | 16502 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2022/03/28 | 160763 | macros/unicodetex/latex/einfart/einfart-doc-fr.pdf +2022/03/28 | 156963 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2022/03/28 | 155497 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2022/03/28 | 154292 | macros/unicodetex/latex/einfart/einfart-doc-en.pdf +2022/03/28 | 152029 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2022/03/28 | 150569 | macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf +2022/03/28 | 1501236 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2022/03/28 | 1478 | macros/unicodetex/latex/einfart/README.md +2022/03/28 | 1475 | macros/unicodetex/latex/simplivre/README.md +2022/03/28 | 146177 | macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf +2022/03/28 | 1460 | macros/unicodetex/latex/lebhart/README.md +2022/03/28 | 1458 | macros/unicodetex/latex/beaulivre/README.md +2022/03/28 | 1454763 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2022/03/28 | 14411 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2022/03/28 | 1438182 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2022/03/28 | 1437635 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2022/03/28 | 139104 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2022/03/28 | 135947 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2022/03/28 | 1357072 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2022/03/28 | 135376 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2022/03/28 | 13514 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2022/03/28 | 1328550 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2022/03/28 | 1328153 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2022/03/28 | 1322740 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2022/03/28 | 131379 | macros/latex/contrib/minimalist.zip +2022/03/28 | 1302485 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2022/03/28 | 126534 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2022/03/28 | 124330 | macros/latex/contrib/colorist.zip +2022/03/28 | 120617 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2022/03/28 | 1181126 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2022/03/28 | 115656 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2022/03/28 | 1156464 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2022/03/28 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2022/03/28 | 113272 | support/lug.zip +2022/03/28 | 113051 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2022/03/28 | 112589 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2022/03/28 | 109478 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2022/03/28 | 107702 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2022/03/28 | 10647 | support/lug/lug.html +2022/03/28 | 104556 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2022/03/28 | 103651 | macros/latex/contrib/minimalist/minimalist-doc.pdf +2022/03/28 | 103337 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2022/03/28 | 103093 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2022/03/28 | 1021845 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2022/03/28 | 101019 | macros/latex/contrib/colorist/colorist-doc.pdf +2022/03/28 | 100488 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma 2022/03/27 | 955941 | macros/unicodetex/latex/polyglossia/polyglossia.dtx -2022/03/27 | 95433 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2022/03/27 | 95284 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2022/03/27 | 93959 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2022/03/27 | 92918 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2022/03/27 | 88151 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2022/03/27 | 8784 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2022/03/27 | 86759 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2022/03/27 | 824370 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2022/03/27 | 81461 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma 2022/03/27 | 795048 | macros/latex/contrib/cooking-units.zip 2022/03/27 | 79140 | graphics/mcf2graph/mcf_exa_code.pdf -2022/03/27 | 79025 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2022/03/27 | 78974 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2022/03/27 | 7752 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2022/03/27 | 77067 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2022/03/27 | 758953 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma -2022/03/27 | 755743 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2022/03/27 | 74069 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma 2022/03/27 | 738814 | macros/latex/contrib/cooking-units/cooking-units.pdf -2022/03/27 | 73529 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2022/03/27 | 73477 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2022/03/27 | 73148 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2022/03/27 | 72883 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2022/03/27 | 72013 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2022/03/27 | 71006 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2022/03/27 | 693068 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma -2022/03/27 | 68874 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2022/03/27 | 681939 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2022/03/27 | 68009 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2022/03/27 | 67705 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2022/03/27 | 67254 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2022/03/27 | 65055 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2022/03/27 | 648433 | systems/win32/miktex/tm/packages/files.csv.lzma -2022/03/27 | 648367 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2022/03/27 | 64708 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2022/03/27 | 64542 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2022/03/27 | 64489 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2022/03/27 | 63739 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma -2022/03/27 | 63311 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2022/03/27 | 631280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2022/03/27 | 629432 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2022/03/27 | 62381 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2022/03/27 | 598229 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2022/03/27 | 591569 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2022/03/27 | 58666 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2022/03/27 | 58662 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2022/03/27 | 57619 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2022/03/27 | 57525 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma 2022/03/27 | 57497 | graphics/mcf2graph/mcf_manual.tex -2022/03/27 | 57330 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2022/03/27 | 57269 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2022/03/27 | 56992 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2022/03/27 | 56617 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2022/03/27 | 565929 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2022/03/27 | 55758 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma 2022/03/27 | 557142 | macros/unicodetex/latex/polyglossia.zip -2022/03/27 | 55568 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2022/03/27 | 55285 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2022/03/27 | 532454 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2022/03/27 | 528018 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2022/03/27 | 52478 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2022/03/27 | 52327 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2022/03/27 | 52093 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2022/03/27 | 51558 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2022/03/27 | 51485 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2022/03/27 | 50799 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2022/03/27 | 49769 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2022/03/27 | 48825 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2022/03/27 | 484370 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2022/03/27 | 481497 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2022/03/27 | 47923 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2022/03/27 | 477847 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2022/03/27 | 46066 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2022/03/27 | 45825 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2022/03/27 | 45743 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2022/03/27 | 43916 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2022/03/27 | 43825 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2022/03/27 | 43646 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2022/03/27 | 43359 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2022/03/27 | 43223 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma 2022/03/27 | 431296 | graphics/mcf2graph/mcf_example.pdf -2022/03/27 | 42817 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2022/03/27 | 41303 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2022/03/27 | 41203 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2022/03/27 | 41182 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma -2022/03/27 | 39727 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2022/03/27 | 394370 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2022/03/27 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2022/03/27 | 38427 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma 2022/03/27 | 3830 | graphics/mcf2graph/mcf_exa_code.tex -2022/03/27 | 37372 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2022/03/27 | 37116 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma -2022/03/27 | 37080 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2022/03/27 | 36049 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma -2022/03/27 | 35242 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2022/03/27 | 35169 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2022/03/27 | 351696 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma 2022/03/27 | 348164 | macros/unicodetex/latex/polyglossia/polyglossia.pdf 2022/03/27 | 345944 | macros/latex/contrib/cooking-units/cooking-units.dtx -2022/03/27 | 34052 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2022/03/27 | 332413 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma 2022/03/27 | 3315 | macros/unicodetex/latex/njuthesis/njuthesis.ins -2022/03/27 | 32955 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2022/03/27 | 326661 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2022/03/27 | 325268 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2022/03/27 | 32134 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2022/03/27 | 316242 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2022/03/27 | 31588 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2022/03/27 | 31520 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2022/03/27 | 31412 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2022/03/27 | 31343 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2022/03/27 | 30542 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2022/03/27 | 30145 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2022/03/27 | 296038 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma 2022/03/27 | 289251 | graphics/mcf2graph/mcf_manual.pdf -2022/03/27 | 288201 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2022/03/27 | 28799 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2022/03/27 | 28691 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2022/03/27 | 286414 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2022/03/27 | 285714 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2022/03/27 | 28567 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2022/03/27 | 28422 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2022/03/27 | 2820687 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2022/03/27 | 27636 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2022/03/27 | 27590 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2022/03/27 | 27248 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2022/03/27 | 271533 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2022/03/27 | 271521 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2022/03/27 | 270298 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2022/03/27 | 2694875 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2022/03/27 | 259256 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2022/03/27 | 25552 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2022/03/27 | 251130 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2022/03/27 | 25107 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2022/03/27 | 25060 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2022/03/27 | 247334 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma -2022/03/27 | 245097 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2022/03/27 | 244959 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2022/03/27 | 24120 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2022/03/27 | 23942 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2022/03/27 | 22147 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2022/03/27 | 213277 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2022/03/27 | 21313 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2022/03/27 | 210276 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma 2022/03/27 | 208888 | macros/unicodetex/latex/njuthesis/njuthesis.dtx -2022/03/27 | 208808 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2022/03/27 | 203837 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma -2022/03/27 | 202836 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2022/03/27 | 20184 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2022/03/27 | 200399 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2022/03/27 | 199832 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2022/03/27 | 1982083 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2022/03/27 | 197034 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma 2022/03/27 | 196130 | graphics/mcf2graph/mcf_mplib_exa.pdf -2022/03/27 | 196117 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma 2022/03/27 | 1942 | macros/unicodetex/latex/polyglossia/README.md 2022/03/27 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE -2022/03/27 | 190502 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2022/03/27 | 18492 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2022/03/27 | 18369 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2022/03/27 | 181515 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2022/03/27 | 179877 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2022/03/27 | 1752148 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2022/03/27 | 173006 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma 2022/03/27 | 172185 | biblio/bibtex/contrib/jieeetran.zip 2022/03/27 | 169749 | biblio/bibtex/contrib/ieejtran.zip -2022/03/27 | 168820 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2022/03/27 | 16560 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma 2022/03/27 | 1655 | macros/latex/contrib/cooking-units/cooking-units.ins -2022/03/27 | 16502 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2022/03/27 | 156963 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2022/03/27 | 155496 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2022/03/27 | 152028 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2022/03/27 | 1501236 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma 2022/03/27 | 1482 | macros/latex/contrib/cooking-units/README.md -2022/03/27 | 1454765 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2022/03/27 | 14410 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma -2022/03/27 | 1437996 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2022/03/27 | 1437693 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2022/03/27 | 139103 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2022/03/27 | 135949 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2022/03/27 | 1357071 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2022/03/27 | 135378 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2022/03/27 | 13513 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2022/03/27 | 1328020 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2022/03/27 | 1327988 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma -2022/03/27 | 1322741 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2022/03/27 | 1302484 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2022/03/27 | 126533 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma 2022/03/27 | 1214583 | macros/unicodetex/latex/njuthesis.zip -2022/03/27 | 120616 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2022/03/27 | 1181127 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma 2022/03/27 | 1159001 | macros/unicodetex/latex/njuthesis/njuthesis.pdf -2022/03/27 | 115657 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2022/03/27 | 1156463 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2022/03/27 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini -2022/03/27 | 113052 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2022/03/27 | 112589 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma 2022/03/27 | 1125239 | install/macros/unicodetex/latex/polyglossia.tds.zip -2022/03/27 | 109478 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2022/03/27 | 107705 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma 2022/03/27 | 1057 | macros/unicodetex/latex/njuthesis/README.md 2022/03/27 | 1046144 | graphics/mcf2graph.zip -2022/03/27 | 104557 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2022/03/27 | 103338 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2022/03/27 | 103092 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2022/03/27 | 1021845 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma 2022/03/27 | 101141 | graphics/mcf2graph/mcf2graph.mp 2022/03/27 | 100595 | graphics/mcf2graph/mcf_library.mcf -2022/03/27 | 100486 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma 2022/03/26 | 83736 | biblio/bibtex/contrib/jieeetran/jIEEEtran.bst 2022/03/26 | 83708 | biblio/bibtex/contrib/ieejtran/IEEJtran.bst 2022/03/26 | 680 | biblio/bibtex/contrib/ieejtran/README @@ -593,252 +667,3 @@ 2022/03/22 | 10332 | systems/texlive/tlnet/archive/lua-widow-control.r62871.tar.xz 2022/03/22 | 1033206 | macros/luatex/latex/letgut.zip 2022/03/22 | 1026 | support/make4ht/domfilters/make4ht-t4htlinks.lua -2022/03/21 | 99083949 | systems/win32/TLW64/tl-win64.zip -2022/03/21 | 9898 | biblio/citation-style-language/american-chemical-society.csl -2022/03/21 | 988 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/german-iso.lbx -2022/03/21 | 9622 | macros/latex/contrib/tuda-ci/tex/tudamecheng.cfg -2022/03/21 | 951 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/polish-iso.lbx -2022/03/21 | 939 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-numeric.bbx -2022/03/21 | 9383 | macros/latex/contrib/tuda-ci/tex/beamerouterthemeTUDa.sty -2022/03/21 | 913 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/english-iso.lbx -2022/03/21 | 8824 | systems/texlive/tlnet/archive/colorist.r62834.tar.xz -2022/03/21 | 8703 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaSciPoster.tex -2022/03/21 | 8579 | macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa.sty -2022/03/21 | 84088 | systems/texlive/tlnet/archive/bxjscls.source.r62826.tar.xz -2022/03/21 | 826 | biblio/citation-style-language/citeproc-node-group.lua -2022/03/21 | 823 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-fullcite.cbx -2022/03/21 | 8128 | biblio/citation-style-language/elsevier-harvard.csl -2022/03/21 | 8052 | biblio/citation-style-language/american-political-science-association.csl -2022/03/21 | 8004 | systems/texlive/tlnet/archive/minimalist.r62834.tar.xz -2022/03/21 | 799790 | macros/latex/contrib/projlib.zip -2022/03/21 | 7978 | support/TeX4ht/source/mktex4ht-cnf.tex -2022/03/21 | 796 | systems/texlive/tlnet/archive/collection-luatex.r62830.tar.xz -2022/03/21 | 7896 | biblio/bibtex/contrib/gbt7714/CHANGELOG.md -2022/03/21 | 7765 | biblio/citation-style-language/csl-core.lua -2022/03/21 | 7336 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaBeamer.tex -2022/03/21 | 7329 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/README.md -2022/03/21 | 7287 | biblio/citation-style-language/citeproc-formats.lua -2022/03/21 | 725 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-authortitle.bbx -2022/03/21 | 699336 | systems/texlive/tlnet/archive/simplivre.doc.r62834.tar.xz -2022/03/21 | 69389 | biblio/citation-style-language/apa.csl -2022/03/21 | 6881 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaLeaflet.tex -2022/03/21 | 6840 | biblio/citation-style-language/citeproc-node-layout.lua -2022/03/21 | 681792 | systems/texlive/tlnet/archive/vntex.doc.r62838.tar.xz -2022/03/21 | 6673 | macros/latex/contrib/tuda-ci/tex/tudabeamer.cls -2022/03/21 | 661927 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaPub.pdf -2022/03/21 | 65 | systems/mac/mactex/mactex-MacTeXtras-20220321.zip.md5 -2022/03/21 | 648676 | systems/texlive/tlnet/archive/beaulivre.doc.r62834.tar.xz -2022/03/21 | 64032 | systems/texlive/tlnet/archive/vntex.source.r62838.tar.xz -2022/03/21 | 6365 | macros/latex/contrib/tuda-ci/tex/tudarules.sty -2022/03/21 | 634217 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaPhD.pdf -2022/03/21 | 627586 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaThesis.pdf -2022/03/21 | 62595 | macros/unicodetex/latex/nwafuthesis/nwafuthesis-doc.dtx -2022/03/21 | 6204 | biblio/citation-style-language/citeproc-node-text.lua -2022/03/21 | 61229 | biblio/citation-style-language/citeproc-bib-data.json -2022/03/21 | 6072 | systems/texlive/tlnet/archive/beamertheme-trigon.r62828.tar.xz -2022/03/21 | 605 | biblio/citation-style-language/citeproc.1 -2022/03/21 | 598742 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaBeamer.pdf -2022/03/21 | 5881406 | macros/latex/contrib/tuda-ci.zip -2022/03/21 | 586468 | systems/texlive/tlnet/archive/beamertheme-trigon.doc.r62828.tar.xz -2022/03/21 | 5859 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaPoster.tex -2022/03/21 | 5817 | macros/latex/contrib/tuda-ci/tex/tudacolors.sty -2022/03/21 | 571482 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaExercise.pdf -2022/03/21 | 567043 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaLetter.pdf -2022/03/21 | 565168 | systems/texlive/tlnet/archive/lebhart.doc.r62834.tar.xz -2022/03/21 | 563531 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaSciPoster.pdf -2022/03/21 | 559357 | install/biblio/citation-style-language.tds.zip -2022/03/21 | 555431 | biblio/citation-style-language.zip -2022/03/21 | 551893 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaAnnouncement.pdf -2022/03/21 | 5433 | macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo -2022/03/21 | 542132 | systems/texlive/tlnet/archive/einfart.doc.r62834.tar.xz -2022/03/21 | 5391 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaLetter.tex -2022/03/21 | 5391636 | systems/texlive/tlnet/archive/vntex.r62838.tar.xz -2022/03/21 | 5381 | macros/latex/contrib/tuda-ci/tex/tudalettersize10pt.clo -2022/03/21 | 536021 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaPoster.pdf -2022/03/21 | 532 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-authoryear.cbx -2022/03/21 | 527033 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaReport.pdf -2022/03/21 | 520798 | biblio/bibtex/contrib/gbt7714.zip -2022/03/21 | 5163 | biblio/citation-style-language/citeproc-node-style.lua -2022/03/21 | 512506508 | systems/mac/mactex/mactex-MacTeXtras-20220321.zip -2022/03/21 | 5080 | biblio/citation-style-language/citeproc-node-sort.lua -2022/03/21 | 49 | systems/mac/mactex/MacTeXtras.zip.md5 -2022/03/21 | 49811 | biblio/bibtex/contrib/gbt7714/gbt7714-2005-author-year.bst -2022/03/21 | 49810 | biblio/bibtex/contrib/gbt7714/gbt7714-author-year.bst -2022/03/21 | 4896 | macros/latex/contrib/projlib/README.md -2022/03/21 | 486968 | biblio/bibtex/contrib/gbt7714/gbt7714.pdf -2022/03/21 | 486588 | systems/texlive/tlnet/archive/seu-ml-assign.doc.r62835.tar.xz -2022/03/21 | 4815 | biblio/citation-style-language/citeproc -2022/03/21 | 47697 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso.bbx -2022/03/21 | 47520 | biblio/citation-style-language/chicago-fullnote-bibliography.csl -2022/03/21 | 46027 | biblio/bibtex/contrib/gbt7714/gbt7714-2005-numerical.bst -2022/03/21 | 46026 | biblio/bibtex/contrib/gbt7714/gbt7714-numerical.bst -2022/03/21 | 45970 | biblio/citation-style-language/chicago-note-bibliography.csl -2022/03/21 | 4534 | biblio/citation-style-language/nature.csl -2022/03/21 | 4508 | systems/texlive/tlnet/archive/einfart.r62834.tar.xz -2022/03/21 | 4480 | systems/texlive/tlnet/archive/simplivre.r62834.tar.xz -2022/03/21 | 4441 | macros/latex/contrib/tuda-ci/tex/tudacolors.def -2022/03/21 | 4388 | systems/texlive/tlnet/archive/lebhart.r62834.tar.xz -2022/03/21 | 4376 | systems/texlive/tlnet/archive/beaulivre.r62834.tar.xz -2022/03/21 | 4328 | macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty -2022/03/21 | 43014 | macros/latex/contrib/tuda-ci/tex/tudapub.cls -2022/03/21 | 4192 | systems/texlive/tlnet/archive/seu-ml-assign.r62835.tar.xz -2022/03/21 | 418 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-numeric.cbx -2022/03/21 | 4156 | systems/texlive/tlnet/archive/luaaddplot.source.r62843.tar.xz -2022/03/21 | 411 | biblio/citation-style-language/citeproc.lua -2022/03/21 | 406 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-authortitle.dbx -2022/03/21 | 4068 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-authoryear.bbx -2022/03/21 | 405 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-authoryear.dbx -2022/03/21 | 405 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-alphabetic.dbx -2022/03/21 | 403 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/ngerman-iso.lbx -2022/03/21 | 402 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-numeric.dbx -2022/03/21 | 3871 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaFromaddress.lco -2022/03/21 | 38162 | systems/mac/mactex/ExtrasFolder.pdf -2022/03/21 | 3815 | macros/latex/contrib/tuda-ci/tex/beamercolorthemeTUDa.sty -2022/03/21 | 377260 | macros/luatex/generic/lua-widow-control.zip -2022/03/21 | 3504 | biblio/citation-style-language/citeproc-node-choose.lua -2022/03/21 | 349852 | systems/texlive/tlnet/archive/luatexko.doc.r62832.tar.xz -2022/03/21 | 3443 | biblio/citation-style-language/csl.lua -2022/03/21 | 33864 | systems/texlive/tlnet/archive/bxjscls.r62826.tar.xz -2022/03/21 | 33745 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/biblatex-iso690.tex -2022/03/21 | 3336913 | macros/unicodetex/latex/nwafuthesis.zip -2022/03/21 | 3287 | macros/latex/contrib/tuda-ci/tex/tudafonts.sty -2022/03/21 | 32571 | macros/latex/contrib/tuda-ci/tex/tudaexercise.cls -2022/03/21 | 3235 | language/japanese/zxjafont/README-ja.md -2022/03/21 | 3183 | biblio/citation-style-language/citeproc-node-locale.lua -2022/03/21 | 31766 | macros/latex/contrib/tuda-ci/tex/tudathesis.cfg -2022/03/21 | 3175 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaAnnouncement.tex -2022/03/21 | 316131 | install/macros/latex/contrib/biblatex-contrib/biblatex-iso690.tds.zip -2022/03/21 | 313367 | macros/latex/contrib/biblatex-contrib/biblatex-iso690.zip -2022/03/21 | 3110 | biblio/citation-style-language/citeproc-node-label.lua -2022/03/21 | 29414 | biblio/citation-style-language/citation-style-language.sty -2022/03/21 | 28899 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaPub.tex -2022/03/21 | 28146 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaThesis.tex -2022/03/21 | 2775 | language/japanese/zxjafont/README.md -2022/03/21 | 277123 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/biblatex-iso690.pdf -2022/03/21 | 27062 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaPhD.tex -2022/03/21 | 2644 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaBibliography.bib -2022/03/21 | 258651 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.dtx -2022/03/21 | 25715 | biblio/citation-style-language/csl-locales-ru-RU.xml -2022/03/21 | 256804 | systems/texlive/tlnet/archive/luaaddplot.doc.r62843.tar.xz -2022/03/21 | 2491 | biblio/citation-style-language/citeproc-node-number.lua -2022/03/21 | 24466 | biblio/citation-style-language/csl-locales-bg-BG.xml -2022/03/21 | 243 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-authortitle.cbx -2022/03/21 | 24380 | language/japanese/zxjafont/zxjafont.tex -2022/03/21 | 24345 | biblio/citation-style-language/csl-locales-hi-IN.xml -2022/03/21 | 23553 | biblio/citation-style-language/csl-locales-lv-LV.xml -2022/03/21 | 2350 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaReport.tex -2022/03/21 | 23467 | biblio/citation-style-language/csl-locales-th-TH.xml -2022/03/21 | 23432 | systems/texlive/tlnet/archive/luatexko.r62832.tar.xz -2022/03/21 | 23360 | biblio/citation-style-language/csl-locales-it-IT.xml -2022/03/21 | 23024 | biblio/citation-style-language/csl-locales-el-GR.xml -2022/03/21 | 2276200 | macros/unicodetex/latex/nwafuthesis/nwafuthesis.pdf -2022/03/21 | 22752 | biblio/citation-style-language/csl-locales-lt-LT.xml -2022/03/21 | 22542 | biblio/citation-style-language/csl-locales-pt-BR.xml -2022/03/21 | 22510 | biblio/citation-style-language/csl-locales-en-US.xml -2022/03/21 | 22454 | biblio/citation-style-language/csl-locales-pt-PT.xml -2022/03/21 | 22434 | biblio/citation-style-language/csl-locales-es-MX.xml -2022/03/21 | 22358 | biblio/citation-style-language/csl-locales-nl-NL.xml -2022/03/21 | 22355 | biblio/citation-style-language/csl-locales-en-GB.xml -2022/03/21 | 22337 | biblio/citation-style-language/csl-locales-fa-IR.xml -2022/03/21 | 22218 | biblio/citation-style-language/csl-locales-de-AT.xml -2022/03/21 | 22195 | biblio/citation-style-language/chicago-author-date.csl -2022/03/21 | 22143 | biblio/citation-style-language/csl-locales-de-DE.xml -2022/03/21 | 22122 | biblio/citation-style-language/csl-locales-sr-RS.xml -2022/03/21 | 22101 | biblio/citation-style-language/csl-locales-fr-FR.xml -2022/03/21 | 22098 | biblio/citation-style-language/csl-locales-fr-CA.xml -2022/03/21 | 21966 | biblio/citation-style-language/csl-locales-km-KH.xml -2022/03/21 | 219427 | biblio/citation-style-language/citation-style-language-doc.pdf -2022/03/21 | 21941 | biblio/citation-style-language/csl-locales-mn-MN.xml -2022/03/21 | 21822 | biblio/citation-style-language/csl-locales-he-IL.xml -2022/03/21 | 21812 | biblio/citation-style-language/csl-locales-vi-VN.xml -2022/03/21 | 2180 | macros/latex/contrib/tuda-ci/tex/beamerfontthemeTUDa.sty -2022/03/21 | 2172 | macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa.sty -2022/03/21 | 21715 | biblio/citation-style-language/csl-locales-sv-SE.xml -2022/03/21 | 21681 | biblio/citation-style-language/csl-locales-de-CH.xml -2022/03/21 | 21654 | biblio/citation-style-language/csl-locales-id-ID.xml -2022/03/21 | 21635 | biblio/citation-style-language/csl-locales-tr-TR.xml -2022/03/21 | 21623 | biblio/citation-style-language/csl-locales-fi-FI.xml -2022/03/21 | 21579 | biblio/citation-style-language/csl-locales-cs-CZ.xml -2022/03/21 | 21576 | biblio/citation-style-language/csl-locales-cy-GB.xml -2022/03/21 | 21574 | biblio/citation-style-language/csl-locales-sk-SK.xml -2022/03/21 | 21512 | biblio/citation-style-language/csl-locales-eu.xml -2022/03/21 | 21482 | biblio/citation-style-language/csl-locales-ja-JP.xml -2022/03/21 | 21470 | biblio/citation-style-language/csl-locales-da-DK.xml -2022/03/21 | 21469 | biblio/citation-style-language/csl-locales-is-IS.xml -2022/03/21 | 21466 | biblio/citation-style-language/csl-locales-hu-HU.xml -2022/03/21 | 21462 | biblio/citation-style-language/csl-locales-ro-RO.xml -2022/03/21 | 21446 | biblio/citation-style-language/csl-locales-pl-PL.xml -2022/03/21 | 21433 | biblio/citation-style-language/csl-locales-af-ZA.xml -2022/03/21 | 21414 | biblio/citation-style-language/csl-locales-ko-KR.xml -2022/03/21 | 21406 | biblio/citation-style-language/csl-locales-es-CL.xml -2022/03/21 | 21363 | biblio/citation-style-language/csl-locales-hr-HR.xml -2022/03/21 | 21361 | language/japanese/zxjafont/zxjafont.sty -2022/03/21 | 21330 | biblio/citation-style-language/csl-locales-sl-SI.xml -2022/03/21 | 21327 | biblio/citation-style-language/csl-locales-es-ES.xml -2022/03/21 | 21323 | biblio/citation-style-language/csl-locales-nb-NO.xml -2022/03/21 | 21302 | biblio/citation-style-language/csl-locales-la.xml -2022/03/21 | 21302 | biblio/citation-style-language/csl-locales-ca-AD.xml -2022/03/21 | 21301 | biblio/citation-style-language/csl-locales-nn-NO.xml -2022/03/21 | 21261 | biblio/citation-style-language/csl-locales-et-EE.xml -2022/03/21 | 211170 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt -2022/03/21 | 20747 | biblio/citation-style-language/csl-locales-uk-UA.xml -2022/03/21 | 20541 | biblio/citation-style-language/citeproc-richtext.lua -2022/03/21 | 20062 | biblio/citation-style-language/citeproc-node-names.lua -2022/03/21 | 19817 | biblio/citation-style-language/csl-locales-ar.xml -2022/03/21 | 19585 | macros/latex/contrib/tuda-ci/tex/tudaposter.cls -2022/03/21 | 19423 | biblio/citation-style-language/csl-locales-zh-TW.xml -2022/03/21 | 19056 | biblio/citation-style-language/csl-locales-zh-CN.xml -2022/03/21 | 18915 | macros/latex/contrib/tuda-ci/tex/tudasciposter.cls -2022/03/21 | 186077 | support/TeX4ht/source/ChangeLog -2022/03/21 | 185307 | macros/latex/contrib/projlib/ProjLib.dtx -2022/03/21 | 179738 | macros/latex/contrib/oup-authoring-template/oup-authoring-template.pdf -2022/03/21 | 177482 | language/japanese/zxjafont.zip -2022/03/21 | 17094 | biblio/citation-style-language/citeproc-util.lua -2022/03/21 | 1686 | macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo -2022/03/21 | 1685 | macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo -2022/03/21 | 1684 | macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo -2022/03/21 | 1684 | macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo -2022/03/21 | 1682 | macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo -2022/03/21 | 1680 | macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo -2022/03/21 | 1669 | biblio/citation-style-language/README.md -2022/03/21 | 16690 | macros/latex/contrib/tuda-ci/tex/tudaletter.cls -2022/03/21 | 16658 | macros/latex/contrib/tuda-ci/README.md -2022/03/21 | 16613 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaExercise.tex -2022/03/21 | 164779 | language/japanese/zxjafont/zxjafont.pdf -2022/03/21 | 161 | systems/mac/mactex/mactex-MacTeXtras-20220321.zip.sha512 -2022/03/21 | 1616 | systems/texlive/tlnet/archive/collection-publishers.r62835.tar.xz -2022/03/21 | 1612 | systems/mac/mactex/Licenses.txt -2022/03/21 | 16054 | biblio/citation-style-language/modern-humanities-research-association.csl -2022/03/21 | 1586072 | systems/texlive/tlnet/archive/bxjscls.doc.r62826.tar.xz -2022/03/21 | 15413 | biblio/citation-style-language/ieee.csl -2022/03/21 | 15232 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/biblatex-iso690-examples.bib -2022/03/21 | 15128 | systems/texlive/tlnet/archive/beamertheme-trigon.source.r62828.tar.xz -2022/03/21 | 1476 | biblio/citation-style-language/citeproc-nodes.lua -2022/03/21 | 145 | systems/mac/mactex/MacTeXtras.zip.sha512 -2022/03/21 | 1456 | systems/texlive/tlnet/archive/luaaddplot.r62843.tar.xz -2022/03/21 | 1445 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-alphabetic.bbx -2022/03/21 | 14177 | biblio/citation-style-language/citeproc-bib.lua -2022/03/21 | 13710 | macros/latex/contrib/tuda-ci/tex/tudaleaflet.cls -2022/03/21 | 134 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/iso-alphabetic.cbx -2022/03/21 | 13296 | biblio/citation-style-language/citation-style-language-doc.tex -2022/03/21 | 12163 | systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm -2022/03/21 | 11927 | biblio/citation-style-language/vancouver.csl -2022/03/21 | 1156 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/bulgarian-iso.lbx -2022/03/21 | 114824 | systems/texlive/tlnet/archive/minimalist.doc.r62834.tar.xz -2022/03/21 | 1142 | biblio/citation-style-language/CHANGELOG.md -2022/03/21 | 1141 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/french-iso.lbx -2022/03/21 | 11279 | biblio/citation-style-language/citeproc-engine.lua -2022/03/21 | 11226 | biblio/citation-style-language/modern-language-association.csl -2022/03/21 | 1111005 | support/TeX4ht/source/tex4ht-4ht.tex -2022/03/21 | 110288 | systems/texlive/tlnet/archive/colorist.doc.r62834.tar.xz -2022/03/21 | 1091 | language/japanese/zxjafont/LICENSE -2022/03/21 | 1078 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/czech-iso.lbx -2022/03/21 | 1070 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/spanish-iso.lbx -2022/03/21 | 10684 | biblio/citation-style-language/american-medical-association.csl -2022/03/21 | 10621 | biblio/bibtex/contrib/gbt7714/gbt7714.sty -2022/03/21 | 10619 | biblio/citation-style-language/harvard-cite-them-right.csl -2022/03/21 | 10503 | biblio/citation-style-language/american-sociological-association.csl -2022/03/21 | 10463 | biblio/citation-style-language/citeproc-node-date.lua -2022/03/21 | 10421 | biblio/citation-style-language/citeproc-element.lua -2022/03/21 | 10078 | macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa-mecheng.sty -2022/03/21 | 1006 | macros/latex/contrib/biblatex-contrib/biblatex-iso690/slovak-iso.lbx diff --git a/macros/latex/contrib/adjmulticol/README b/macros/latex/contrib/adjmulticol/README index 62d899f95b..c3c9fcbe51 100644 --- a/macros/latex/contrib/adjmulticol/README +++ b/macros/latex/contrib/adjmulticol/README @@ -11,4 +11,6 @@ Changes: v1.1 Changed calculations for unicolumn layout which might previously lead to loss of text - v1.2 Bug fix: now adjmulticols works inside a box too.
\ No newline at end of file + v1.2 Bug fix: now adjmulticols works inside a box too. + + v1.3 Big fix: disappearing material in one column output
\ No newline at end of file diff --git a/macros/latex/contrib/adjmulticol/adjmulticol.dtx b/macros/latex/contrib/adjmulticol/adjmulticol.dtx index 12c5e4ca73..9ce7012f03 100644 --- a/macros/latex/contrib/adjmulticol/adjmulticol.dtx +++ b/macros/latex/contrib/adjmulticol/adjmulticol.dtx @@ -1,6 +1,6 @@ % \iffalse % -%% Copyright 2020, Boris Veytsman <borisv@lk.net> +%% Copyright 2022, Boris Veytsman <borisv@lk.net> %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3 of this license or (at your option) any @@ -87,7 +87,7 @@ %% %<*gobble> % \fi -% \CheckSum{184} +% \CheckSum{0} % % %% \CharacterTable @@ -126,7 +126,7 @@ % \GetFileInfo{adjmulticol.sty} % % \title{Adjusting Margins for Multicolumn and Unicolumn -% Output\thanks{\copyright Boris Veytsman, 2020} \thanks{Note: This +% Output\thanks{\copyright Boris Veytsman, 2022} \thanks{Note: This % package is released under terms which affect its use in commercial % applications. Please see the details at the top of the source file}} % \author{Boris Veytsman} @@ -308,7 +308,7 @@ %</gobble> %<style>\ProvidesPackage{adjmulticol} %<*style> -[2020/03/06 v1.2 Adjusted margins for multicolumn layout] +[2022/03/27 v1.3 Adjusted margins for multicolumn layout] % \end{macrocode} % % @@ -363,6 +363,7 @@ %\label{sec:start} % % \begin{macro}{\adjmulticols} +% \changes{v1.3}{2022/03/27}{Do not try to balance one-column version} % We have three mandatory arguments instead of one for |multicols|: % the number of columns, the left margin delta and the right margin % delta: @@ -390,6 +391,10 @@ \MessageBreak I therefore use 10 columns instead}% \col@number10 \fi + \ifnum\col@number=\@ne\relax + \let\balance@columns@out + \multi@column@out + \fi % \end{macrocode} % % @@ -466,6 +471,7 @@ % % \begin{macro}{\endadjmulticols} % \changes{v1.2}{2020/03/06}{Redefined macro} +% \changes{v1.3}{2022/03/27}{Added \cs{vfill} for one-column environment} % Here we use the standard environment end. Note that it uses % |\@checkend|, so we need to redefine it to fool the % check. We need to do it globally to work inside a box too. @@ -473,6 +479,7 @@ \def\endadjmulticols{% \global\let\@ADJMC@checkend\@checkend \gdef\@checkend##1{}% + \ifnum\col@number=\@ne\relax\vfill\fi \endmulticols \global\let\@checkend\@ADJMC@checkend} % \end{macrocode} diff --git a/macros/latex/contrib/adjmulticol/adjmulticol.pdf b/macros/latex/contrib/adjmulticol/adjmulticol.pdf Binary files differindex d2709950d5..05999ddfdc 100644 --- a/macros/latex/contrib/adjmulticol/adjmulticol.pdf +++ b/macros/latex/contrib/adjmulticol/adjmulticol.pdf diff --git a/macros/latex/contrib/adjmulticol/sample.pdf b/macros/latex/contrib/adjmulticol/sample.pdf Binary files differindex a55f9bf1c2..af96fd4aa2 100644 --- a/macros/latex/contrib/adjmulticol/sample.pdf +++ b/macros/latex/contrib/adjmulticol/sample.pdf diff --git a/macros/latex/contrib/colorist/colorart.cls b/macros/latex/contrib/colorist/colorart.cls index cbacee3853..fd6bc08f62 100644 --- a/macros/latex/contrib/colorist/colorart.cls +++ b/macros/latex/contrib/colorist/colorart.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {colorart} - {2022/03/19} {} + {2022/03/28} {} {A colorful article style} \tl_const:Nn \l__colorclass_base_class_tl { article } @@ -151,6 +151,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/colorist/colorbook.cls b/macros/latex/contrib/colorist/colorbook.cls index ce2d27ce8b..07389ebc5c 100644 --- a/macros/latex/contrib/colorist/colorbook.cls +++ b/macros/latex/contrib/colorist/colorbook.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {colorbook} - {2022/03/19} {} + {2022/03/28} {} {A colorful book style} \tl_const:Nn \l__colorclass_base_class_tl { book } @@ -151,6 +151,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/colorist/colorist-doc.pdf b/macros/latex/contrib/colorist/colorist-doc.pdf Binary files differindex 6320e9f13e..e187bcbc51 100644 --- a/macros/latex/contrib/colorist/colorist-doc.pdf +++ b/macros/latex/contrib/colorist/colorist-doc.pdf diff --git a/macros/latex/contrib/colorist/colorist-doc.tex b/macros/latex/contrib/colorist/colorist-doc.tex index 98804ad9b3..064648846c 100644 --- a/macros/latex/contrib/colorist/colorist-doc.tex +++ b/macros/latex/contrib/colorist/colorist-doc.tex @@ -1,13 +1,5 @@ \documentclass[English,Chinese,French,use boldface,simple name]{colorart} -\setsansfont{texgyreheros}[ - Scale=MatchUppercase, - UprightFont=*-regular, - BoldFont=*-bold, - ItalicFont=*-italic, - BoldItalicFont=*-bolditalic, -] - %%================================ %% Import toolkit %%================================ @@ -99,7 +91,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{{\normalfont\bfseries\color{main-text}\colorist{}}\\write your articles or books in a colorful way} \author{Jinwen XU} diff --git a/macros/latex/contrib/colorist/colorist-fancy.sty b/macros/latex/contrib/colorist/colorist-fancy.sty index 2161c7065d..cb625ce8ac 100644 --- a/macros/latex/contrib/colorist/colorist-fancy.sty +++ b/macros/latex/contrib/colorist/colorist-fancy.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {colorist-fancy} - {2022/03/19} {} + {2022/03/28} {} {The fancy style of colorist} \@ifpackageloaded { colorist } {} @@ -99,34 +99,82 @@ \fancypagestyle { fancy } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\sffamily\textcolor{main-text!30!paper}{ \small \l_colorist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\textbf{\thepage}}}} - \fancyfoot[LE]{\leavevmode\sffamily\llap{\textcolor{main-text!75!paper}{\textbf{\thepage}} - \nobreakspace\nobreakspace\nobreakspace\nobreakspace} - \textcolor{main-text!30!paper}{ \l_colorist_leftmark_tl }} + \fancyfoot[RO] + { + \sffamily + \textcolor { main-text!30!paper } { \small \l_colorist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \sffamily + \llap + { + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + \textcolor { main-text!30!paper } { \l_colorist_leftmark_tl } + } \else - \fancyfoot[R]{\textcolor{main-text!30!paper}{ \l_colorist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\textbf{\thepage}}}} + \fancyfoot[R] + { + \sffamily + \textcolor { main-text!30!paper } { \small \l_colorist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } -\pagestyle{fancy} +\pagestyle { fancy } \fancypagestyle { plain } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\sffamily - \nobreakspace\rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\textbf{\thepage}}}} - \fancyfoot[LE]{\leavevmode\sffamily\llap{\textcolor{main-text!75!paper}{\textbf{\thepage}} - \nobreakspace\nobreakspace}} + \fancyfoot[RO] + { + \sffamily + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \sffamily + \llap + { + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + } \else - \fancyfoot[R]{\sffamily - \nobreakspace\nobreakspace\nobreakspace\rlap{\textcolor{main-text!75!paper}{\textbf{\thepage}}}} + \fancyfoot[R] + { + \sffamily + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \colorist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } \bool_if:NTF \l__colorist_is_book_bool @@ -220,8 +268,10 @@ } %% Chapter - % Numbered chapter title: \TheChapter{<number>}{<title>} - \newcommand{\TheChapter}[2] + % Numbered chapter title + \cs_new_protected:Nn \colorist_chapter_inner:nn + % #1 = number + % #2 = title { \tcbsidebyside[enhanced,sidebyside~adapt=right,sidebyside~align=bottom, colback=paper,frame~hidden, @@ -232,8 +282,9 @@ -- (segmentation.south);} ]{\filleft#2}{\normalfont\textcolor{maintheme}{\scalebox{4}{#1}}} } - % Numberless chapter title: \TheChapterSingle{<title>} - \newcommand{\TheChapterSingle}[1] + % Numberless chapter title + \cs_new_protected:Nn \colorist_chapter_inner:n + % #1 = title { \begin{tcolorbox}[ enhanced, @@ -254,7 +305,7 @@ { \g_colorist_title_font_chapter_tl \scshape\huge} % Format {} % Label {0mm} % Sep - {\TheChapter{\thechapter}{#1}} % Before-code + { \colorist_chapter_inner:nn { \thechapter } { #1 } } % Before-code \titlespacing*{name=\chapter} {0em}{*2}{0em} % {left}{before-sep}{after-sep} @@ -262,7 +313,7 @@ {\filcenter \g_colorist_title_font_chapter_tl \scshape\huge} {} {0mm} - {\TheChapterSingle{#1}} + { \colorist_chapter_inner:n { #1 } } \titlespacing*{name=\chapter, numberless} {0em}{*2}{0em} @@ -419,7 +470,20 @@ %%================================ %% Blank page %%================================ -\newcommand{\blinkpagetext}{This~page~is~intentionally~left~blank} +\projlib_langauge_define_multilingual_text:Nn \bl@nkpagetext + { + , EN = This~page~is~intentionally~left~blank + , FR = Cette~page~a~été~intentionellement~laissée~vide + , DE = Diese~Seite~wurde~absichtlich~leer~gelassen + , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente + , PT = Esta~página~foi~intencionalmente~deixada~em~branco + , BR = Esta~página~foi~intencionalmente~deixada~em~branco + , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , CN = 此页为有意留为空白 + , TC = 此頁為有意留為空白 + , JP = このページは意図的に空白にしてあります + , RU = Эта~страница~намеренно~оставлена~пустой + } \renewcommand{\cleardoublepage}{ \relax \clearpage @@ -428,7 +492,7 @@ \hook_gput_next_code:nn { shipout/background } { \put(0.5\paperwidth,-0.5\paperheight){ - \makebox[0pt]{\large\color{main-text!10!paper}\blinkpagetext}} + \makebox[0pt]{\large\color{main-text!10!paper}\bl@nkpagetext}} } \null\newpage\fi\fi } @@ -963,55 +1027,79 @@ \theoremstyle{simple} -\bool_if:NF \l__colorist_is_book_bool { - %%================================ %% Title block style %%================================ -\renewcommand{\@maketitle}{ -\begin{center} - \color{maintheme} - {\Large\sffamily\scshape \colorist_bfseries: \@title}\\\bigskip - \color{main-text!80!paper} - {\scshape\@author}\par\smallskip - {\@date} -\end{center} -\ifx\@date\@empty\bigskip\fi -\medskip -} +\bool_if:NTF \l__colorist_is_book_bool + { + \hook_gput_code:nnn { package/projlib-author/after } { colorist } + { + \tl_gset:Nn \g__projlib_author_font_author_tl { \normalfont \scshape } + \tl_gset:Nn \g__projlib_author_font_institute_tl { \large \normalfont } + \tl_gset:Nn \g__projlib_author_font_address_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_curraddr_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_email_tl { \large \normalfont \ttfamily } + } -\hook_gput_code:nnn { cmd/maketitle/after } { colorist } { \thispagestyle{fancy} } + \RequirePackage { projlib-titlepage } + \renewcommand{\maketitle}{ + \LocallyStopLineNumbers + \ProjLibTitlePage + { + , title = \@title + , author = \@author + , date = \@date + } + \ResumeLineNumbers + } + } + { + \renewcommand{\@maketitle} + { + \begin{center} + \color{maintheme} + {\Large\sffamily\scshape \colorist_bfseries: \@title}\\\bigskip + \color{main-text!80!paper} + {\scshape\@author}\par\smallskip + {\@date} + \end{center} + \ifx\@date\@empty\bigskip\fi + \medskip + } + + \hook_gput_code:nnn { cmd/maketitle/after } { colorist } { \thispagestyle{fancy} } %%================================ %% Abstract style %%================================ -\renewenvironment{abstract} -{\small{\centerline{\textsc{ \colorist_bfseries: \sffamily\abstractname}}\vspace{-0.3\baselineskip}} - \color{main-text!80!paper}\begin{quotation}} -{\end{quotation}\medskip} + \renewenvironment{abstract} + {\small{\centerline{\textsc{ \colorist_bfseries: \sffamily\abstractname}}\vspace{-0.3\baselineskip}} + \color{main-text!80!paper}\begin{quotation}} + {\end{quotation}\medskip} %%================================ %% Keyword environment %%================================ -\DefineMultilingualText { \keywordname } - { - EN = Keywords , - FR = Mots~clés , - DE = Schlüsselwörter , - IT = Parole~chiave , - PT = Palavras~chave , - BR = Palavras~chave , - ES = Palabras~clave , - CN = 关键词 , - TC = 關鍵詞 , - JP = キーワード , - RU = Ключевые~слова , - } + \DefineMultilingualText { \keywordname } + { + EN = Keywords , + FR = Mots~clés , + DE = Schlüsselwörter , + IT = Parole~chiave , + PT = Palavras~chave , + BR = Palavras~chave , + ES = Palabras~clave , + CN = 关键词 , + TC = 關鍵詞 , + JP = キーワード , + RU = Ключевые~слова , + } -\newenvironment{keyword} -{\small\centerline{{ \colorist_bfseries: \keywordname}}\vspace{-0.3\baselineskip} - \color{main-text!80!paper}\begin{center}} -{\end{center}\medskip} + \newenvironment{keyword} + {\small\centerline{{ \colorist_bfseries: \keywordname}}\vspace{-0.3\baselineskip} + \color{main-text!80!paper}\begin{center}} + {\end{center}\medskip} + } % end of \bool_if:NTF \l__colorist_is_book_bool %%================================ %% Simulate features of amsart @@ -1019,8 +1107,6 @@ \PassOptionsToPackage { amsfashion } { projlib-author } \RequirePackage { projlib-author } -} - \endinput %% %% End of file `colorist/colorist-fancy.sty'. diff --git a/macros/latex/contrib/colorist/colorist.sty b/macros/latex/contrib/colorist/colorist.sty index 6da2938455..ad936a1081 100644 --- a/macros/latex/contrib/colorist/colorist.sty +++ b/macros/latex/contrib/colorist/colorist.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {colorist} - {2022/03/19} {} + {2022/03/28} {} {A colorful style for articles and books} \keys_define:nn { colorist } diff --git a/macros/latex/contrib/minimalist/minimalist-classical.sty b/macros/latex/contrib/minimalist/minimalist-classical.sty index beef4ed857..11b9b94ad3 100644 --- a/macros/latex/contrib/minimalist/minimalist-classical.sty +++ b/macros/latex/contrib/minimalist/minimalist-classical.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {minimalist-classical} - {2022/03/19} {} + {2022/03/28} {} {The classical style of minimalist} \@ifpackageloaded { minimalist } {} @@ -113,34 +113,91 @@ \fancypagestyle { fancy } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\small\textcolor{main-text!30!paper}{ \l_minimalist_rightmark_tl } - \nobreakspace\nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} - \fancyfoot[LE]{\small\leavevmode\llap{\thepage - \nobreakspace\nobreakspace\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }} - \nobreakspace\nobreakspace\textcolor{main-text!30!paper}{ \l_minimalist_leftmark_tl }} + \fancyfoot[RO] + { + \small + \textcolor { main-text!30!paper } { \l_minimalist_rightmark_tl } + \nobreakspace \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } + \fancyfoot[LE] + { + \small + \leavevmode + \llap + { + \thepage + \nobreakspace \nobreakspace + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + } + \nobreakspace \nobreakspace + \textcolor { main-text!30!paper } { \l_minimalist_leftmark_tl } + } \else - \fancyfoot[R]{\small\textcolor{main-text!30!paper}{ \l_minimalist_rightmark_tl } - \nobreakspace\nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} + \fancyfoot[R] + { + \small + \textcolor { main-text!30!paper } { \l_minimalist_rightmark_tl } + \nobreakspace \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } -\pagestyle{fancy} +\pagestyle { fancy } \fancypagestyle { plain } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\small - \nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} - \fancyfoot[LE]{\small\leavevmode\llap{\thepage - \nobreakspace\nobreakspace\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }}} + \fancyfoot[RO] + { + \small + \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } + \fancyfoot[LE] + { + \small + \leavevmode + \llap + { + \thepage + \nobreakspace \nobreakspace + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + } + } \else - \fancyfoot[R]{\small - \nobreakspace\rlap{\textcolor{main-text!27!paper}{ \l_minimalist_sep_bar }\nobreakspace\nobreakspace\thepage}} + \fancyfoot[R] + { + \small + \nobreakspace + \rlap + { + \textcolor { main-text!27!paper } { \l_minimalist_sep_bar } + \nobreakspace \nobreakspace + \thepage + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } \bool_if:NTF \l__minimalist_is_book_bool @@ -150,35 +207,31 @@ \newcommand{ \minimalist_draw_help_line: }{} } { - \newcommand{ \minimalist_draw_help_line: }{ + \newcommand{ \minimalist_draw_help_line: } + { \begin{tikzpicture}[remember~picture,overlay] - \foreach\i in {0,1,...,5}{ - \fill[opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,2pt)$) - rectangle ($(current~page~text~area.north~east) - +(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); - \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] - ($(current~page~text~area.south~east) - +(-\i*0.5em-.025em,-2pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - } + \foreach\i in {0,1,...,5}{ + \fill[opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,2pt)$) + rectangle ($(current~page~text~area.north~east)+(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); + \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] + ($(current~page~text~area.south~east)+(-\i*0.5em-.025em,-2pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + } \end{tikzpicture} - } + } } - \fancypagestyle{part}{ - \fancyhf{} - \renewcommand{\headrulewidth}{0pt} - \fancyhead[C]{ \minimalist_draw_help_line: } - } - \addtolength{\headheight}{20pt} - \addtolength{\topmargin}{-20pt} + \fancypagestyle { part } + { + \fancyhf { } + \renewcommand { \headrulewidth } { 0pt } + \fancyhead[C] { \minimalist_draw_help_line: } + } + \addtolength { \headheight } { 20pt } + \addtolength { \topmargin } { -20pt } \if@twoside \renewcommand{\chaptermark}[1]{\markboth{\textsc{#1}}{}} \else @@ -234,11 +287,11 @@ } \AddLanguageSetting [ schinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ tchinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ japanese ] { @@ -406,7 +459,7 @@ \titlecontents{part} [0em] {\addvspace{1.5pc}\filcenter\normalfont} - {\thecontentslabel\nopagebreak\\\nopagebreak\uppercase} + { \minimalist_apply_title_numbering_style:N { \thecontentslabel } \nopagebreak\\\nopagebreak\uppercase} {} {} % without page number [\addvspace{.5pc}] @@ -487,7 +540,20 @@ %%================================ %% Blank page %%================================ -\newcommand{\blinkpagetext}{This~page~is~intentionally~left~blank} +\projlib_langauge_define_multilingual_text:Nn \bl@nkpagetext + { + , EN = This~page~is~intentionally~left~blank + , FR = Cette~page~a~été~intentionellement~laissée~vide + , DE = Diese~Seite~wurde~absichtlich~leer~gelassen + , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente + , PT = Esta~página~foi~intencionalmente~deixada~em~branco + , BR = Esta~página~foi~intencionalmente~deixada~em~branco + , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , CN = 此页为有意留为空白 + , TC = 此頁為有意留為空白 + , JP = このページは意図的に空白にしてあります + , RU = Эта~страница~намеренно~оставлена~пустой + } \renewcommand{\cleardoublepage}{ \relax \clearpage @@ -496,7 +562,7 @@ \hook_gput_next_code:nn { shipout/background } { \put(0.5\paperwidth,-0.5\paperheight){ - \makebox[0pt]{\large\color{main-text!10!paper}\blinkpagetext}} + \makebox[0pt]{\large\color{main-text!10!paper}\bl@nkpagetext}} } \null\newpage\fi\fi } @@ -741,104 +807,128 @@ %% Index %%================================ \hook_gput_code:nnn { begindocument/before } { minimalist } -{ - \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } - \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } -} - -\bool_if:NF \l__minimalist_is_book_bool { + { + \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } + \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } + } %%================================ %% Title block style %%================================ -\renewcommand{\@maketitle}{ - \LocallyStopLineNumbers - \noindent - {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}} - % \vspace{-\parskip} - \vspace{-.5\baselineskip} - \begin{flushright} - \let\footnote\thanks - {\minimalist_bfseries:\@title}\\\medskip - \color{main-text!80!paper} - {\small\scshape\@author} - \par\vspace{-\parskip}\vspace{2pt} - {\small\@date} - \end{flushright} - % \vspace{-\parskip} - \vspace{-.5\baselineskip} - \ifx\@date\@empty - \vspace{\baselineskip} - \vspace{1.2\parskip} - \else - \vspace{-.5\baselineskip} - \fi - {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}\par} - \ResumeLineNumbers -} +\bool_if:NTF \l__minimalist_is_book_bool + { + \hook_gput_code:nnn { package/projlib-author/after } { minimalist } + { + \tl_gset:Nn \g__projlib_author_font_author_tl { \normalfont \scshape } + \tl_gset:Nn \g__projlib_author_font_institute_tl { \large \normalfont } + \tl_gset:Nn \g__projlib_author_font_address_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_curraddr_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_email_tl { \large \normalfont \ttfamily } + } + + \RequirePackage { projlib-titlepage } + \renewcommand{\maketitle}{ + \LocallyStopLineNumbers + \ProjLibTitlePage [ style = simple ] + { + , title = \@title + , author = \@author + , date = \@date + } + \ResumeLineNumbers + } + } + { + \renewcommand{\@maketitle} + { + \LocallyStopLineNumbers + \noindent + {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}} + % \vspace{-\parskip} + \vspace{-.5\baselineskip} + \begin{flushright} + \let\footnote\thanks + {\minimalist_bfseries:\@title}\\\medskip + \color{main-text!80!paper} + {\small\scshape\@author} + \par\vspace{-\parskip}\vspace{2pt} + {\small\@date} + \end{flushright} + % \vspace{-\parskip} + \vspace{-.5\baselineskip} + \ifx\@date\@empty + \vspace{\baselineskip} + \vspace{1.2\parskip} + \else + \vspace{-.5\baselineskip} + \fi + {\textcolor{main-text!27!paper}{\rule{\textwidth}{0.75pt}}\par} + \ResumeLineNumbers + } -\hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } + \hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } %%================================ %% Abstract style %%================================ -\renewenvironment{abstract} - { - \LocallyStopLineNumbers - \begin{flushright} - { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\par - \vspace{-\parskip} - \vspace{-.25\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em - } - { - \end{minipage} - \end{flushright} - \bigskip - \ResumeLineNumbers - } + \renewenvironment{abstract} + { + \LocallyStopLineNumbers + \begin{flushright} + { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\par + \vspace{-\parskip} + \vspace{-.25\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + } + { + \end{minipage} + \end{flushright} + \bigskip + \ResumeLineNumbers + } %%================================ %% Keyword environment %%================================ -\DefineMultilingualText { \keywordname } - { - EN = Keywords , - FR = Mots~clés , - DE = Schlüsselwörter , - IT = Parole~chiave , - PT = Palavras~chave , - BR = Palavras~chave , - ES = Palabras~clave , - CN = 关键词 , - TC = 關鍵詞 , - JP = キーワード , - RU = Ключевые~слова , - } - -\newenvironment{keyword}{ - \LocallyStopLineNumbers - \vspace{-.5\baselineskip} - \begin{flushright} - {\minimalist_bfseries:\scshape\small\keywordname}\par - \vspace{-\parskip} - \vspace{-.30\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em - \raggedleft -}{ - \end{minipage} - \end{flushright} - \bigskip - \ResumeLineNumbers -} + \DefineMultilingualText { \keywordname } + { + EN = Keywords , + FR = Mots~clés , + DE = Schlüsselwörter , + IT = Parole~chiave , + PT = Palavras~chave , + BR = Palavras~chave , + ES = Palabras~clave , + CN = 关键词 , + TC = 關鍵詞 , + JP = キーワード , + RU = Ключевые~слова , + } + + \newenvironment{keyword}{ + \LocallyStopLineNumbers + \vspace{-.5\baselineskip} + \begin{flushright} + {\minimalist_bfseries:\scshape\small\keywordname}\par + \vspace{-\parskip} + \vspace{-.30\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + \raggedleft + }{ + \end{minipage} + \end{flushright} + \bigskip + \ResumeLineNumbers + } + } % end of \bool_if:NTF \l__minimalist_is_book_bool %%================================ %% Simulate features of amsart @@ -846,8 +936,6 @@ \PassOptionsToPackage { amsfashion } { projlib-author } \RequirePackage { projlib-author } -} - \endinput %% %% End of file `minimalist/minimalist-classical.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist-doc.pdf b/macros/latex/contrib/minimalist/minimalist-doc.pdf Binary files differindex d8557ff023..4a834618d8 100644 --- a/macros/latex/contrib/minimalist/minimalist-doc.pdf +++ b/macros/latex/contrib/minimalist/minimalist-doc.pdf diff --git a/macros/latex/contrib/minimalist/minimalist-doc.tex b/macros/latex/contrib/minimalist/minimalist-doc.tex index 925ce47eeb..5ff51c62cc 100644 --- a/macros/latex/contrib/minimalist/minimalist-doc.tex +++ b/macros/latex/contrib/minimalist/minimalist-doc.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,7 +95,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{\minimalist{}, write your articles or books in a simple and clear way} \author{Jinwen XU} @@ -512,7 +511,6 @@ You can use \lstinline|\dnf| to mark the unfinished part. For example: \item \lstinline|\dnf| or \lstinline|\dnf<...>|. The effect is: \dnf~ or \dnf<...>. \\The prompt text changes according to the current language. For example, it will be displayed as \UseOtherLanguage{French}{\dnf} in French mode. \end{itemize} -% \clearpage \LevelTwoTitle{Title, abstract and keywords} \minimart{} has both the features of standard classes and that of the \AmS{} classes. diff --git a/macros/latex/contrib/minimalist/minimalist-plain.sty b/macros/latex/contrib/minimalist/minimalist-plain.sty index 9c7cd650d2..3481c630dc 100644 --- a/macros/latex/contrib/minimalist/minimalist-plain.sty +++ b/macros/latex/contrib/minimalist/minimalist-plain.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {minimalist-plain} - {2022/03/19} {} + {2022/03/28} {} {The plain style of minimalist} \@ifpackageloaded { minimalist } {} @@ -54,7 +54,7 @@ \tl_new:N \g_minimalist_title_font_paragraph_tl \tl_gset:Nn \g_minimalist_title_font_part_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl } -\tl_gset:Nn \g_minimalist_title_font_chapter_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl } +\tl_gset:Nn \g_minimalist_title_font_chapter_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl \scshape } \tl_gset:Nn \g_minimalist_title_font_section_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl \scshape } \tl_gset:Nn \g_minimalist_title_font_subsection_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl \scshape } \tl_gset:Nn \g_minimalist_title_font_subsubsection_tl { \minimalist_bfseries: \g_minimalist_title_font_common_tl } @@ -113,34 +113,77 @@ \fancypagestyle { fancy } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{\textcolor{main-text!30!paper}{ \small \l_minimalist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} - \fancyfoot[LE]{\leavevmode\llap{\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage} - \nobreakspace\nobreakspace\nobreakspace\nobreakspace} - \textcolor{main-text!30!paper}{ \l_minimalist_leftmark_tl }} + \fancyfoot[RO] + { + \textcolor { main-text!30!paper } { \small \l_minimalist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \llap + { + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + \textcolor { main-text!30!paper } { \small \l_minimalist_leftmark_tl } + } \else - \fancyfoot[R]{\textcolor{main-text!30!paper}{ \l_minimalist_rightmark_tl } - \rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} + \fancyfoot[R] + { + \textcolor { main-text!30!paper } { \small \l_minimalist_rightmark_tl } + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } -\pagestyle{fancy} +\pagestyle { fancy } \fancypagestyle { plain } { - \fancyhf{} + \fancyhf { } \if@twoside - \fancyfoot[RO]{ - \nobreakspace\rlap{\nobreakspace\nobreakspace\nobreakspace\nobreakspace\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} - \fancyfoot[LE]{\leavevmode\llap{\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage} - \nobreakspace\nobreakspace}} + \fancyfoot[RO] + { + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } + \fancyfoot[LE] + { + \leavevmode + \llap + { + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + } + \nobreakspace + } \else - \fancyfoot[R]{ - \nobreakspace\nobreakspace\nobreakspace\rlap{\textcolor{main-text!75!paper}{\minimalist_bfseries: \thepage}}} + \fancyfoot[R] + { + \nobreakspace + \rlap + { + \nobreakspace \nobreakspace \nobreakspace \nobreakspace + \textcolor { main-text!75!paper } { \minimalist_bfseries: \thepage } + } + } \fi - \renewcommand{\headrulewidth}{0pt} + \renewcommand { \headrulewidth } { 0pt } } \bool_if:NTF \l__minimalist_is_book_bool @@ -150,35 +193,31 @@ \newcommand{ \minimalist_draw_help_line: }{} } { - \newcommand{ \minimalist_draw_help_line: }{ + \newcommand{ \minimalist_draw_help_line: } + { \begin{tikzpicture}[remember~picture,overlay] - \foreach\i in {0,1,...,5}{ - \fill[opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] - ($(current~page~text~area.north~east) - +(-\i*0.5em-.025em,2pt)$) - rectangle ($(current~page~text~area.north~east) - +(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); - \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] - ($(current~page~text~area.south~east) - +(-\i*0.5em-.025em,-2pt)$) - rectangle ($(current~page~text~area.south~east) - +(-\i*0.5em+.025em,10pt-\i*1.1pt)$); - } + \foreach\i in {0,1,...,5}{ + \fill[opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,-10pt+\i*1.1pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + \shade[top~color=paper,bottom~color=main-text,opacity=0.12-0.02*\i] + ($(current~page~text~area.north~east)+(-\i*0.5em-.025em,2pt)$) + rectangle ($(current~page~text~area.north~east)+(-\i*0.5em+.025em,-10pt+\i*1.1pt)$); + \shade[top~color=main-text,bottom~color=paper,opacity=0.12-0.02*\i] + ($(current~page~text~area.south~east)+(-\i*0.5em-.025em,-2pt)$) + rectangle ($(current~page~text~area.south~east)+(-\i*0.5em+.025em,10pt-\i*1.1pt)$); + } \end{tikzpicture} - } + } } - \fancypagestyle{part}{ - \fancyhf{} - \renewcommand{\headrulewidth}{0pt} - \fancyhead[C]{ \minimalist_draw_help_line: } - } - \addtolength{\headheight}{20pt} - \addtolength{\topmargin}{-20pt} + \fancypagestyle { part } + { + \fancyhf { } + \renewcommand { \headrulewidth } { 0pt } + \fancyhead[C] { \minimalist_draw_help_line: } + } + \addtolength { \headheight } { 20pt } + \addtolength { \topmargin } { -20pt } \if@twoside \renewcommand{\chaptermark}[1]{\markboth{\textsc{#1}}{}} \else @@ -236,11 +275,11 @@ } \AddLanguageSetting [ schinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ tchinese ] { - \renewcommand{\partstring}{第 \nobreakspace\thepart\nobreakspace 部分} + \renewcommand{\partstring}{第 \zhnumber{\arabic{part}} 部分} } \AddLanguageSetting [ japanese ] { @@ -290,16 +329,29 @@ {\thispagestyle{fancy} \LocallyStopLineNumbers \color{main-text!80!paper}\g_minimalist_title_font_chapter_tl\fontsize{16}{0}\selectfont}{}{0em} - {\rlap{\hspace*{-.5em}{\color{main-text!12!paper} - \fontsize{80}{0}\selectfont\raisebox{-7pt}{\thechapter}}}#1} + { + \rlap + { + \hspace*{-.5em} + \color{main-text!10!paper} + \fontsize{90}{0}\selectfont\raisebox{-10pt}{ \usefont{U}{zeur}{b}{n} \thechapter } + } + #1 + } [\ResumeLineNumbers] \titleformat{name=\chapter,numberless} {\thispagestyle{fancy} \LocallyStopLineNumbers % \phantomsection\addcontentsline{toc}{chapter}{#1} - \color{main-text!80!paper}\g_minimalist_title_font_chapter_tl\fontsize{16}{0}\selectfont}{}{0em} - {\rlap{\hspace*{-.5em}{\color{main-text!12!paper} - \fontsize{80}{0}\selectfont\normalfont\raisebox{-7pt}{\phantom{*}}}}#1} + \color{main-text!90!paper}\g_minimalist_title_font_chapter_tl\fontsize{16}{0}\selectfont}{}{0em} + { + \rlap + { + \hspace*{-.5em} + \fontsize{80}{0}\selectfont\raisebox{-10pt}{ \phantom{*} } + } + #1 + } [\ResumeLineNumbers] } { @@ -380,7 +432,7 @@ \titlecontents{part} [0em] {\addvspace{1.5pc}\filcenter\normalfont} - {\thecontentslabel\nopagebreak\\\nopagebreak\uppercase} + { \minimalist_apply_title_numbering_style:N { \thecontentslabel } \nopagebreak\\\nopagebreak\uppercase} {} {} % without page number [\addvspace{.5pc}] @@ -456,7 +508,20 @@ %%================================ %% Blank page %%================================ -\newcommand{\blinkpagetext}{This~page~is~intentionally~left~blank} +\projlib_langauge_define_multilingual_text:Nn \bl@nkpagetext + { + , EN = This~page~is~intentionally~left~blank + , FR = Cette~page~a~été~intentionellement~laissée~vide + , DE = Diese~Seite~wurde~absichtlich~leer~gelassen + , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente + , PT = Esta~página~foi~intencionalmente~deixada~em~branco + , BR = Esta~página~foi~intencionalmente~deixada~em~branco + , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , CN = 此页为有意留为空白 + , TC = 此頁為有意留為空白 + , JP = このページは意図的に空白にしてあります + , RU = Эта~страница~намеренно~оставлена~пустой + } \renewcommand{\cleardoublepage}{ \relax \clearpage @@ -465,7 +530,7 @@ \hook_gput_next_code:nn { shipout/background } { \put(0.5\paperwidth,-0.5\paperheight){ - \makebox[0pt]{\large\color{main-text!10!paper}\blinkpagetext}} + \makebox[0pt]{\large\color{main-text!10!paper}\bl@nkpagetext}} } \null\newpage\fi\fi } @@ -697,93 +762,117 @@ %% Index %%================================ \hook_gput_code:nnn { begindocument/before } { minimalist } -{ - \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } - \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } -} - -\bool_if:NF \l__minimalist_is_book_bool { + { + \hook_gput_code:nnn { cmd/printindex/before } { minimalist } { \LocallyStopLineNumbers } + \hook_gput_code:nnn { cmd/printindex/after } { minimalist } { \ResumeLineNumbers } + } %%================================ %% Title block style %%================================ -\renewcommand{\@maketitle}{ - \LocallyStopLineNumbers - \begin{center} - \let\footnote\thanks - {\minimalist_bfseries:\sffamily\scshape\Large\@title}\\\bigskip - \color{main-text!80!paper} - {\small\scshape\@author} - \par\smallskip\vspace{-\parskip} - {\small\@date} - \end{center} - \ifx\@date\@empty\medskip\fi - \medskip\par - \ResumeLineNumbers -} +\bool_if:NTF \l__minimalist_is_book_bool + { + \hook_gput_code:nnn { package/projlib-author/after } { minimalist } + { + \tl_gset:Nn \g__projlib_author_font_author_tl { \normalfont \scshape } + \tl_gset:Nn \g__projlib_author_font_institute_tl { \large \normalfont } + \tl_gset:Nn \g__projlib_author_font_address_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_curraddr_tl { \large \normalfont \itshape } + \tl_gset:Nn \g__projlib_author_font_email_tl { \large \normalfont \ttfamily } + } -\hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } + \RequirePackage { projlib-titlepage } + \renewcommand{\maketitle}{ + \LocallyStopLineNumbers + \ProjLibTitlePage [ style = simple ] + { + , title = \@title + , author = \@author + , date = \@date + } + \ResumeLineNumbers + } + } + { + \renewcommand{\@maketitle} + { + \LocallyStopLineNumbers + \begin{center} + \let\footnote\thanks + {\minimalist_bfseries:\sffamily\scshape\Large\@title}\\\bigskip + \color{main-text!80!paper} + {\small\scshape\@author} + \par\smallskip\vspace{-\parskip} + {\small\@date} + \end{center} + \ifx\@date\@empty\medskip\fi + \medskip\par + \ResumeLineNumbers + } + + \hook_gput_code:nnn { cmd/maketitle/after } { minimalist } { \thispagestyle{fancy} } %%================================ %% Abstract style %%================================ -\renewenvironment{abstract} - { - \LocallyStopLineNumbers - \vspace{-.5\baselineskip} - \begin{center} - { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\\ - \vspace{-.3\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em - } - { - \end{minipage} - \end{center} - \medskip - \ResumeLineNumbers - } + \renewenvironment{abstract} + { + \LocallyStopLineNumbers + \vspace{-.5\baselineskip} + \begin{center} + { \g_minimalist_title_font_section_tl \scshape \small\abstractname}\\ + \vspace{-.3\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + } + { + \end{minipage} + \end{center} + \medskip + \ResumeLineNumbers + } %%================================ %% Keyword environment %%================================ -\DefineMultilingualText { \keywordname } - { - EN = Keywords , - FR = Mots~clés , - DE = Schlüsselwörter , - IT = Parole~chiave , - PT = Palavras~chave , - BR = Palavras~chave , - ES = Palabras~clave , - CN = 关键词 , - TC = 關鍵詞 , - JP = キーワード , - RU = Ключевые~слова , - } - -\newenvironment{keyword}{ - \LocallyStopLineNumbers - \vspace{-.75\baselineskip} - \begin{center} - {\minimalist_bfseries:\scshape\small\keywordname}\\ - \vspace{-.3\baselineskip} - \begin{minipage}[t]{.833\textwidth} - \vspace{0pt} - \color{main-text!80!paper} - \footnotesize - \parindent=2em + \DefineMultilingualText { \keywordname } + { + EN = Keywords , + FR = Mots~clés , + DE = Schlüsselwörter , + IT = Parole~chiave , + PT = Palavras~chave , + BR = Palavras~chave , + ES = Palabras~clave , + CN = 关键词 , + TC = 關鍵詞 , + JP = キーワード , + RU = Ключевые~слова , + } + + \newenvironment{keyword}{ + \LocallyStopLineNumbers + \vspace{-.75\baselineskip} \begin{center} -}{ + {\minimalist_bfseries:\scshape\small\keywordname}\\ + \vspace{-.3\baselineskip} + \begin{minipage}[t]{.833\textwidth} + \vspace{0pt} + \color{main-text!80!paper} + \footnotesize + \parindent=2em + \begin{center} + }{ + \end{center} + \end{minipage} \end{center} - \end{minipage} - \end{center} - \medskip - \ResumeLineNumbers -} + \medskip + \ResumeLineNumbers + } + } % end of \bool_if:NTF \l__minimalist_is_book_bool %%================================ %% Simulate features of amsart @@ -791,8 +880,6 @@ \PassOptionsToPackage { amsfashion } { projlib-author } \RequirePackage { projlib-author } -} - \endinput %% %% End of file `minimalist/minimalist-plain.sty'. diff --git a/macros/latex/contrib/minimalist/minimalist.sty b/macros/latex/contrib/minimalist/minimalist.sty index 50148e29fd..9a7a7fbd06 100644 --- a/macros/latex/contrib/minimalist/minimalist.sty +++ b/macros/latex/contrib/minimalist/minimalist.sty @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplPackage {minimalist} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear style for articles and books} \keys_define:nn { minimalist } diff --git a/macros/latex/contrib/minimalist/minimart.cls b/macros/latex/contrib/minimalist/minimart.cls index 1340e14853..b9b2a86689 100644 --- a/macros/latex/contrib/minimalist/minimart.cls +++ b/macros/latex/contrib/minimalist/minimart.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {minimart} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear article style} \tl_const:Nn \l__minimclass_base_class_tl { article } @@ -169,6 +169,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/minimalist/minimbook.cls b/macros/latex/contrib/minimalist/minimbook.cls index 995334db6c..65c08a2fdc 100644 --- a/macros/latex/contrib/minimalist/minimbook.cls +++ b/macros/latex/contrib/minimalist/minimbook.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {minimbook} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear book style} \tl_const:Nn \l__minimclass_base_class_tl { book } @@ -169,6 +169,17 @@ \RequirePackage { mathpazo } \RequirePackage { newpxtext } \RequirePackage { amssymb } + \sys_if_engine_pdftex:F + { + \setsansfont { texgyreheros } + [ + Scale = MatchUppercase , + UprightFont = *-regular , + BoldFont = *-bold , + ItalicFont = *-italic , + BoldItalicFont = *-bolditalic , + ] + } } } diff --git a/macros/latex/contrib/projlib/ProjLib.dtx b/macros/latex/contrib/projlib/ProjLib.dtx index 32903be29b..dd0b2e393f 100644 --- a/macros/latex/contrib/projlib/ProjLib.dtx +++ b/macros/latex/contrib/projlib/ProjLib.dtx @@ -20,72 +20,79 @@ %<*ProjLib> \ProvidesExplPackage {ProjLib} - {2022/03/21} {} + {2022/03/28} {} {Collective interface of the ProjLib toolkit} %</ProjLib> % %<*projlib-author> \ProvidesExplPackage {projlib-author} - {2022/03/21} {} + {2022/03/28} {} {Enhanced author information block} %</projlib-author> % %<*projlib-datetime> \ProvidesExplPackage {projlib-datetime} - {2022/03/21} {} + {2022/03/28} {} {Convert numeric date-time string to natural language} %</projlib-datetime> % %<*projlib-draft> \ProvidesExplPackage {projlib-draft} - {2022/03/21} {} + {2022/03/28} {} {Useful commands during draft stage} %</projlib-draft> % %<*projlib-font> \ProvidesExplPackage {projlib-font} - {2022/03/21} {} + {2022/03/28} {} {Font selection and configuration} %</projlib-font> % %<*projlib-language> \ProvidesExplPackage {projlib-language} - {2022/03/21} {} + {2022/03/28} {} {Multi-language configuration} %</projlib-language> % %<*projlib-logo> \ProvidesExplPackage {projlib-logo} - {2022/03/21} {} + {2022/03/28} {} {The ProjLib logo} %</projlib-logo> % %<*projlib-math> \ProvidesExplPackage {projlib-math} - {2022/03/21} {} + {2022/03/28} {} {Efficient math setup} %</projlib-math> % %<*projlib-paper> \ProvidesExplPackage {projlib-paper} - {2022/03/21} {} + {2022/03/28} {} {Configuration of the paper style} %</projlib-paper> % %<*projlib-theorem> \ProvidesExplPackage {projlib-theorem} - {2022/03/21} {} + {2022/03/28} {} {Configuration of theorem-like environments} %</projlib-theorem> +% +%<*projlib-titlepage> +\ProvidesExplPackage + {projlib-titlepage} + {2022/03/28} {} + {Commands for rendering the title page} +%</projlib-titlepage> %<*ProjLib> \keys_define:nn { ProjLib } @@ -99,6 +106,10 @@ , ams-fashion .initial:n = { false } , ams~fashion .bool_set:N = \l__projlib_main_amsfashion_bool , ams fashion .bool_set:N = \l__projlib_main_amsfashion_bool + , title-page .bool_set:N = \l__projlib_main_titlepage_bool + , title-page .initial:n = { false } + , title~page .bool_set:N = \l__projlib_main_titlepage_bool + , title page .bool_set:N = \l__projlib_main_titlepage_bool , unknown .code:n = { \PassOptionsToPackage { \CurrentOption } { projlib-language } \PassOptionsToPackage { \CurrentOption } { projlib-author } @@ -132,6 +143,11 @@ \RequirePackage { projlib-math } \RequirePackage { projlib-paper } +\bool_if:NT \l__projlib_main_titlepage_bool + { + \RequirePackage { projlib-titlepage } + } + \RequirePackage { projlib-theorem } %</ProjLib> % @@ -2240,7 +2256,7 @@ $\rangle$ \nobreakspace \IfNoValueF { #1 } { : ~ } - #1 \\ + #1 \newline } } @@ -4750,5 +4766,96 @@ } } %</projlib-theorem> +% +%<*projlib-titlepage> +\keys_define:nn { projlib-titlepage } + { + , unknown .code:n = {} + } +\ProcessKeysOptions { projlib-titlepage } + +\RequirePackage { projlib-paper } + +\RequirePackage { tikz } +\ExplSyntaxOff +\usetikzlibrary { calc } +\ExplSyntaxOn + +\tl_new:N \l_projlib_titlepage_logo_tl +\tl_new:N \l_projlib_titlepage_title_tl +\tl_new:N \l_projlib_titlepage_subtitle_tl +\tl_new:N \l_projlib_titlepage_author_tl +\tl_new:N \l_projlib_titlepage_date_tl +\tl_new:N \l_projlib_titlepage_style_tl + +\NewDocumentCommand \ProjLibTitlePage { O{} m } + { + \keys_set:nn { projlib-titlepage-config } { #1 } + \projlib_titlepage_render:n { #2 } + } +\ProvideDocumentCommand \TitlePage { O{} m } + { + \ProjLibTitlePage [ #1 ] { #2 } + } + +\cs_new_protected:Nn \projlib_titlepage_set_color:nn + { + \colorlet { titlepage- #1 } { #2 } + } + +\keys_define:nn { projlib-titlepage-config } + { + , logo .tl_set:N = \l_projlib_titlepage_logo_tl + , logo .initial:n = { \scalebox { 2 } { \ProjLib } } + , title .tl_set:N = \l_projlib_titlepage_title_tl + , subtitle .tl_set:N = \l_projlib_titlepage_subtitle_tl + , author .tl_set:N = \l_projlib_titlepage_author_tl + , date .tl_set:N = \l_projlib_titlepage_date_tl + , style .tl_set:N = \l_projlib_titlepage_style_tl + , style .initial:n = { default } + , color .code:n = { + \keyval_parse:nnn + { \use_none:n } + { \projlib_titlepage_set_color:nn } + { #1 } + } + , unknown .code:n = {} + } + +\colorlet { titlepage-main } { blue!50!cyan!50!black } +\colorlet { titlepage-back } { blue!50!cyan!10!yellow!30 } + +\cs_new_protected:Nn \projlib_titlepage_render:n + { + \keys_set:nn { projlib-titlepage-config } { #1 } + \begin { titlepage } + \cs_if_exist_use:c { projlib_titlepage_render_with_style_ \l_projlib_titlepage_style_tl : } + \end { titlepage } + \setcounter { page } { 0 } + } + +\cs_new_protected:Nn \projlib_titlepage_render_with_style_default: + { + \begin{tikzpicture}[overlay,remember~picture] + \fill [color=titlepage-main] ($(current~page.south~west)$) rectangle ($(current~page.north~east)+(0,-.3\paperheight)$); + \fill [color=titlepage-back] ($(current~page.south~west)$) rectangle ($(current~page.north~west)+(.125\paperwidth,-.3\paperheight)$); + \fill [color=titlepage-main] ($(current~page.north~west)$) rectangle ($(current~page.north~west)+(.125\paperwidth,-.3\paperheight)$); + \fill [color=titlepage-back] ($(current~page.north~east)$) rectangle ($(current~page.north~west)+(.125\paperwidth,-.3\paperheight)$); + \node[text~width=.3\paperwidth,text~height=.2\paperheight] at ($(current~page.north~west)+(.32\paperwidth,-.17\paperheight)$) { \l_projlib_titlepage_logo_tl }; + \node[text~width=.4\paperwidth,text~height=.3\paperheight,scale=2.5] at ($(current~page.north~west)+(.67\paperwidth,-.15\paperheight)$) {\textcolor{titlepage-back}{\sffamily\textsc{ \l_projlib_titlepage_title_tl }\\[.5em]\footnotesize{ \l_projlib_titlepage_subtitle_tl }}}; + \node[text~width=.3\paperwidth,text~height=.3\paperheight] at ($(current~page.south)+(.2\paperwidth,.3\paperheight)$) {\color{titlepage-back}\begin{flushright}\fontsize{16pt}{0pt}\selectfont\textsc{ \l_projlib_titlepage_author_tl }\\[1em]\fontsize{12pt}{0pt}\selectfont \l_projlib_titlepage_date_tl \end{flushright} }; + \end{tikzpicture} + } + +\cs_new_protected:Nn \projlib_titlepage_render_with_style_simple: + { + \begin{tikzpicture}[overlay,remember~picture] + \fill[color=titlepage-main] ($(current~page.south~west)$) rectangle ($(current~page.north~east)+(0,-.3\paperheight)$); + \node[text~width=.3\paperwidth,text~height=.2\paperheight] at ($(current~page.north~west)+(.28\paperwidth,-.15\paperheight)$) { \l_projlib_titlepage_logo_tl }; + \node[text~width=.4\paperwidth,text~height=.3\paperheight,scale=2.5] at ($(current~page.north~west)+(.63\paperwidth,-.15\paperheight)$) {\textcolor{paper}{\sffamily\textsc{ \l_projlib_titlepage_title_tl }\\[.5em]\footnotesize{ \l_projlib_titlepage_subtitle_tl }}}; + \node[text~width=.3\paperwidth,text~height=.3\paperheight] at ($(current~page.south)+(.2\paperwidth,.3\paperheight)$) {\color{paper}\begin{flushright}\fontsize{16pt}{0pt}\selectfont\textsc{ \l_projlib_titlepage_author_tl }\\[1em]\fontsize{12pt}{0pt}\selectfont \l_projlib_titlepage_date_tl \end{flushright} }; + \end{tikzpicture} + } +%</projlib-titlepage> \endinput
\ No newline at end of file diff --git a/macros/latex/contrib/projlib/ProjLib.ins b/macros/latex/contrib/projlib/ProjLib.ins index ca73cff446..6aac97bf77 100644 --- a/macros/latex/contrib/projlib/ProjLib.ins +++ b/macros/latex/contrib/projlib/ProjLib.ins @@ -49,6 +49,7 @@ and version 1.3c or later is part of all distributions of LaTeX version \generate{\file{projlib-math.sty}{\from{ProjLib.dtx}{projlib-math}}} \generate{\file{projlib-paper.sty}{\from{ProjLib.dtx}{projlib-paper}}} \generate{\file{projlib-theorem.sty}{\from{ProjLib.dtx}{projlib-theorem}}} +\generate{\file{projlib-titlepage.sty}{\from{ProjLib.dtx}{projlib-titlepage}}} \obeyspaces \Msg{*************************************************************} @@ -66,6 +67,7 @@ and version 1.3c or later is part of all distributions of LaTeX version \Msg{* projlib-math.sty *} \Msg{* projlib-paper.sty *} \Msg{* projlib-theorem.sty *} +\Msg{* projlib-titlepage.sty *} \Msg{* *} \Msg{* Happy TeXing! *} \Msg{* *} diff --git a/macros/latex/contrib/projlib/README.md b/macros/latex/contrib/projlib/README.md index cfac379f40..3e927c0fb5 100644 --- a/macros/latex/contrib/projlib/README.md +++ b/macros/latex/contrib/projlib/README.md @@ -4,32 +4,13 @@ # The `ProjLib` Toolkit -The bundle is dated 2022/03/21 +This bundle is dated 2022/03/28. Please note that the documentations are not yet up-to-date. -## **Important note** - -The whole project is being rewritten with `expl3`. The new modules are basically finished but are **not yet documented**. They have filenames with the prefix `projlib-`, and they are in many ways better and more powerful than their predecessors. - -The new modules are: -- projlib-author -- projlib-datetime -- projlib-draft -- projlib-font -- projlib-language -- projlib-logo -- projlib-math -- projlib-paper -- projlib-theorem - -Below is the old README. - ---- - -> **ProjLib** can be interpreted as "***Proj**ect **Lib**rary*" (in English), or as "***Proj**et **Lib**re*" (in French). +> **ProjLib** can be interpreted as "***Proj**ect **Lib**rary*" (in English), or as "***Proj**et **Lib**re*" (in French, meaning "*Free Project*"). ## Introduction -`ProjLib` is a collection of tools that help you write LaTeX document. With the package `ProjLib` loaded (note that it is case-sensitive), you no longer need to set up the theorem-like environments nor to manually configure the appropriate multilingual settings. In addition, a series of auxiliary functionalities are introduced. +`ProjLib` is a collection of tools that help you write LaTeX document. With the main package `ProjLib` loaded (note that it is *case-sensitive*), you no longer need to manually configure the appropriate multilingual settings nor to set up the theorem-like environments. In addition, a series of auxiliary functionalities are introduced. To get started, simply put this line in your preamble: ```latex @@ -37,38 +18,44 @@ To get started, simply put this line in your preamble: ``` > For the options and detailed usage, please refer to the documentation. -## The components -The components include: -1. `PJLauthor.sty` - - Enhanced author information block - - Offers `\address`, `\curraddr` and `\email` - - Write in the AMS fashion (with option `amsfashion`): + +## The modules + +> Each module correspond to a separate package, for example, the module `theorem` is `projlib-theorem.sty`. + +The modules include: +1. module `author` - *Enhanced author information block* + - Offering `\address`, `\curraddr` and `\email`. + - Write in the AMS fashion (with option `ams-fashion`): - Support `\dedicatory`, `\keywords` and `\subjclass` - `\thanks` can be written outside `\author`; - The `abstract` environment can be placed before `\maketitle`. -1. `PJLdate.sty` - - Offers a macro `\PLdate` (or `\PJLdate`) to convert `yyyy-mm-dd` to normal datetime format, with multi-language support -1. `PJLdraft.sty` - - Useful macros during the draft stage: `\dnf` and `\needgraph`, with multi-language support -1. `PJLlang.sty` - - Multi-language configuration based on `babel` or `polyglossia` - - Offers `\UseLanguage`, `\UseOtherLanguage` and `\AddLanguageSetting` - - Currently support Chinese (simplified and traditional), English, French, German, Italien, Japanese, Portuguese (European and Brazilian), Russian and Spanish -1. `PJLlogo.sty` - - Draw the ProjLib logo -1. `PJLmath.sty` - - Useful math macros and shortcuts -1. `PJLpaper.sty` - - Paper style configuration: yellow theme, dark theme and nord theme -1. `PJLthm.sty` - - Theorem setup and configuration - - Offers a macro `\CreateTheorem` for creating theorem-like environments with multi-language support - - Preset environments include: `assumption`, `axiom`, `conjecture`, `convention`, `corollary`, `definition`, `definition-proposition`, `definition-theorem`, `example`, `exercise`, `fact`, `hypothesis`, `lemma`, `notation`, `observation`, `problem`, `property`, `proposition`, `question`, `remark`, `theorem`, and the corresponding unnumbered version with an asterisk `*` in the name. -1. `PJLtoolkit.sty` (this is the internal name of the `ProjLib` package) - - A collective interface of ProjLib Toolkit, loading all the packages above - - Provide some pre-defined font configuration - -> Since `PJLthm.sty` (and thus `ProjLib.sty`) uses `cleveref`, it should be loaded after `varioref` and `hyperref`. +1. module `datetime` - *Convert numeric date-time string to natural language* + - Offering `\TheDate` and `\Thedate` to convert numeric date-time string to normal datetime format, with multi-language support (if the command names `\TheDate` or `\Thedate` are occupied, then one can switch to the longer version `\ProjLibDate` and `\ProjLibdate`). + - Offering `\ProjLibToday` and `\ProjLibToday` (with the module `language` enabled, `\today` is redefined into `\ProjLibToday`, and thus supports the arguments like `only-year-month`). + - Multiple input and output format available. +1. module `draft` - *Useful commands during draft stage* + - Offering `\dnf` for marking unfinished part. In addition, a report of all unfinished places shall be printed at the last of your document. +1. module `font` - *Font selection and configuration* + - Supporting Palatino, Times, Garamond, Biolinum, Noto, etc. +1. module `language` - *Multi-language configuration* + - Offering `\UseLanguage`, `\UseOtherLanguage` for selecting languages, and `\AddLanguageSetting` for adding language-specific settings. + - Define multilingual text string with `\DefineMultilingualText`. + - Currently support Chinese (simplified and traditional), English, French, German, Italien, Japanese, Portuguese (European and Brazilian), Russian and Spanish. +1. module `logo` - *The ProjLib logo* + - Draw the `ProjLib` logo in colorful or colorless fashion. +1. module `math` - *Efficient math setup* + - Offering `\DefineOperator` and `\DefineShortcut` for setting up math macros efficiently +1. module `paper` - *Configuration of the paper style* + - Paper style configuration, with the themes `yellow`, `green`, `light gray`, `gray`, `dark`, etc. +1. module `theorem` - *Configuration of theorem-like environments* + - Set up theorem-like environments based on the package `create-theorem`, and in particular, support options `name as is` and `name as context` for referencing names + - Support options `simple name` and `complex name` for referencing names + - Preset environments include: `assertion`, `assumption`, `axiom`, `conclusion`, `conjecture`, `convention`, `corollary`, `definition`, `definition-proposition`, `definition-theorem`, `example`, `exercise`, `fact`, `hypothesis`, `lemma`, `notation`, `observation`, `postulate`, `problem`, `property`, `proposition`, `question`, `remark`, `theorem`, and the corresponding unnumbered version with an asterisk `*` in the name. +1. module `titlepage` - *Commands for rendering the title page* + - Currently support two title page styles: `default` and `simple`. + +> Since module `theorem.sty` (and thus `ProjLib`) uses `cleveref`, it should be loaded after `varioref` and `hyperref`. ## How to get these files You can get the `.sty` files mentioned above simply by compiling `ProjLib.ins`: @@ -88,51 +75,6 @@ It is recommended to use `latexmk` with option `-xelatex`: latexmk -xelatex ProjLib-doc-**.tex ``` -## An example -```latex -\documentclass{amsart} -\usepackage[a4paper,margin=.75in]{geometry} -\usepackage[hidelinks]{hyperref} -\usepackage[palatino]{ProjLib} - -%% You can also comment the above lines and try the following (require xelatex or lualatex): -% \documentclass[a4paper,allowbf]{lebhart} -% \usepackage[amsfashion]{ProjLib} - -%% Using \UseLanguage to select language, by default "English" is selected -\UseLanguage{French} % Use French from here - -\begin{document} - -\title{Le Titre} -\author{Auteur 1} -\address{Adresse 1} -\email{\href{Courriel 1}{Courriel 1}} -\author{Auteur 1} -\address{Adresse 1} -\email{\href{Courriel 2}{Courriel 2}} -\date{\PLdate{2022-04-01}} -\subjclass{*****} -\keywords{...} - -\begin{abstract} - Ceci est un résumé. \dnf<Some hint> -\end{abstract} - -\maketitle - -\section{Un théorème} - -%% Theorem-like environments can be used directly -\begin{theorem}\label{thm:abc} - Ceci est un théorème. -\end{theorem} - -Référence du théorème: \cref{thm:abc} % It is recommended to use clever reference - -\end{document} -``` - # License This work is released under the LaTeX Project Public License, v1.3c or later. diff --git a/macros/latex/contrib/projlib/old-modules/PJLauthor.sty b/macros/latex/contrib/projlib/old-modules/PJLauthor.sty deleted file mode 100644 index 67e1dbd76b..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLauthor.sty +++ /dev/null @@ -1,245 +0,0 @@ -%% -%% This is file `PJLauthor.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLauthor} - [2021/12/16 Enhanced author information block] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLauthor, - prefix = @PJLauthor@, -} -\DeclareBoolOption[false]{amsfashion} -\ProcessKeyvalOptions*\relax - -\ifdefined\subjclass\endinput\fi - -%%================================ -%% Font and style -%%================================ -\def\PJLauthor@font@author{\normalsize\normalfont\scshape} -\def\PJLauthor@font@address{\small\normalfont\itshape} -\def\PJLauthor@font@curraddr{\small\normalfont\itshape} -\def\PJLauthor@font@email{\small\normalfont\ttfamily} - -%%================================ -%% Lengths -%%================================ -\newlength{\PJLauthor@length@innersep} -\setlength{\PJLauthor@length@innersep}{.3\baselineskip} -\newlength{\PJLauthor@length@sep} -\setlength{\PJLauthor@length@sep}{.5\baselineskip} -\newlength{\PJLauthor@length@aftersep} -\setlength{\PJLauthor@length@aftersep}{.3\baselineskip} - -%%================================ -%% The macros -%%================================ -\newif\if@PJLauthor@affilon -\renewcommand*{\author}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \vspace{\PJLauthor@length@sep}% - \PJLauthor@font@author{#1}\\\phantom{} - \@PJLauthor@affilonfalse}} -\providecommand*{\address}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \if@PJLauthor@affilon\else% - \vspace{\PJLauthor@length@innersep}% - \fi% - \@PJLauthor@affilontrue% - \PJLauthor@font@address{#1}\\\phantom{}}% -} -\providecommand*{\curraddr}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \if@PJLauthor@affilon\else% - \vspace{\PJLauthor@length@innersep}% - \fi% - \@PJLauthor@affilontrue% - \PJLauthor@font@curraddr{#1}\\\phantom{}}% -} -\providecommand*{\email}[1]{% - \gappto\@author{\phantom{A}\\[-\baselineskip]% - \if@PJLauthor@affilon\else% - \vspace{\PJLauthor@length@innersep}% - \fi% - \@PJLauthor@affilontrue% - \PJLauthor@font@email{#1}\\\phantom{}}% -} - -%%================================ -%% Adjustment -%%================================ -\patchcmd{\@maketitle}{\begin{tabular}[t]{c}}{}{}{} -\patchcmd{\@maketitle}{\end{tabular}}{}{}{} -\def\@author{} -\pretocmd{\@maketitle}{% - \pretocmd{\@author}{\vspace{-\PJLauthor@length@sep}}{}{\FAIL}% - \apptocmd{\@author}{% - \vspace{-\baselineskip}% - \if@PJLauthor@affilon% - \vspace{\PJLauthor@length@aftersep}% - \fi% - }{}{\FAIL}% -}{}{\FAIL} - -\ifbool{@PJLauthor@amsfashion}{ - -\RequirePackage{PJLlang} -\RequirePackage{calc} - -\providecommand{\conditionalbfseries}{\bfseries} - -\def\keywordsnameEN{\textsc{Key words and phrases}} -\def\keywordsnameFR{\textsc{Mots et phrases clés}} -\def\keywordsnameDE{\textsc{Schlüsselwörter und Phrasen}} -\def\keywordsnameIT{\textsc{Parole e frasi chiave}} -\def\keywordsnamePT{\textsc{Palavras e frases chave}} -\def\keywordsnameBR{\textsc{Palavras e frases chave}} -\def\keywordsnameES{\textsc{Palabras y frases clave}} -\def\keywordsnameCN{关键词} -\def\keywordsnameTC{關鍵詞} -\def\keywordsnameJP{キーワード} -\def\keywordsnameRU{Ключевые слова и фразы} - -\def\PJL@keywords{} -\providecommand*{\keywords}[1]{\def\PJL@keywords{#1}} - -\def\PJL@dedicatory{} -\providecommand*{\dedicatory}[1]{\def\PJL@dedicatory{#1}} - -\AtEndPreamble{ -\let\footnotemark@PJLoriginal\footnotemark% -\let\footnotemark\relax% -\let\thanks@PJLoriginal\thanks% -\newlength\PJL@starlength -\setlength{\PJL@starlength}{\widthof{*}} -\newcommand*{\PJL@prethanks}[1]{\thanks@PJLoriginal{\hspace*{-\PJL@starlength}#1}} -\renewcommand*{\thanks}[1]{% - \ifx#1\@empty\else% - \apptocmd{\@title}{% - \thanks@PJLoriginal{\hspace*{-\PJL@starlength}#1}% - }{}{\FAIL}% - \fi} -\let\author@PJLoriginal\author -\renewcommand{\author}[1]{% - \author@PJLoriginal{% - \let\footnotemark\footnotemark@PJLoriginal% - \let\thanks\thanks@PJLoriginal% - #1% - \let\footnotemark\relax% - }% -} -} - -\let\abstract@PJLoriginal\abstract% -\let\endabstract@PJLoriginal\endabstract% -\newif\if@PJLauthor@maketitle\@PJLauthor@maketitlefalse -\newif\if@PJLauthor@absbefore\@PJLauthor@absbeforefalse -\RequirePackage{fancyvrb} -\providecommand*\protected@iwrite[3]{% - \begingroup - \let\thepage\relax - #2% - \let\protect\@unexpandable@protect - \edef\reserved@a{\immediate\write#1{#3}}\reserved@a - \endgroup - \if@nobreak\ifvmode\nobreak\fi\fi -} -\patchcmd{\FVB@VerbatimOut} - {\immediate\write\FV@OutFile} - {\protected@iwrite\FV@OutFile{}} - {}{} -\renewenvironment{abstract}{% - \VerbatimOut{\jobname.pjlabs}% -}{ - \endVerbatimOut% - \if@PJLauthor@maketitle% - \begin{abstract@PJLoriginal}% - \input{\jobname.pjlabs}% - \end{abstract@PJLoriginal}% - % \ifx\PJL@keywords\@empty\else% - % \par\smallskip\noindent{\conditionalbfseries\csname keywordsname\csname\languagename ABBR\endcsname\endcsname.}~\PJL@keywords% - % \fi% - \else% - \global\@PJLauthor@absbeforetrue% - \fi% -} - -\AtEndPreamble{% -\patchcmd{\@maketitle}{\@date}{% - \ifx\@date\@empty\vspace{-2\baselineskip}% - \else\@date\fi% - \ifx\PJL@dedicatory\@empty\else% - \ifx\@date\@empty\vspace{2\baselineskip}\fi% - \par\vspace{-\parskip}\bigskip% - {\itshape\PJL@dedicatory}% - \ifx\@date\@empty% - \vspace{-1.7\baselineskip}% - \vspace{-\parskip}% - \fi% - \fi% -}{}{\FAIL} -\pretocmd{\maketitle}{% - \ifx\PJL@keywords\@empty\else% - \PJL@prethanks{{\protect\conditionalbfseries% - \csname keywordsname\csname\languagename ABBR\endcsname\endcsname.}% - ~\PJL@keywords}% - \fi}{}{\FAIL} -\apptocmd{\maketitle}{% - \if@PJLauthor@absbefore% - \begin{abstract@PJLoriginal}% - \input{\jobname.pjlabs}% - % \ifx\PJL@keywords\@empty\else% - % \par\smallskip\noindent{\conditionalbfseries\csname keywordsname\csname\languagename ABBR\endcsname\endcsname.}~\PJL@keywords% - % \fi% - \end{abstract@PJLoriginal}% - \fi% - \global\let\address\relax - \global\let\curraddr\relax - \global\let\email\relax - \global\let\dedicatory\relax - \global\let\keywords\relax - \global\@PJLauthor@maketitletrue -}{}{\FAIL} -} - -\newcommand*\subjclass[2][2020]{% - \def\@subjclass{#2}% - \@ifundefined{subjclassname@#1}{% - \ClassWarning{\@currname}{Unknown edition (#1) of Mathematics - Subject Classification; using '2020'}% - \expandafter\let\expandafter\subjclassname\csname subjclassname@2020\endcsname - }{% - \expandafter\let\expandafter\subjclassname\csname subjclassname@#1\endcsname - }% - \PJL@prethanks{{\itshape\subjclassname.}\enspace\@subjclass{}.} -} -\@namedef{subjclassname@1991}{% - \textup{1991} Mathematics Subject Classification} -\@namedef{subjclassname@2000}{% - \textup{2000} Mathematics Subject Classification} -\@namedef{subjclassname@2010}{% - \textup{2010} Mathematics Subject Classification} -\@namedef{subjclassname@2020}{% - \textup{2020} Mathematics Subject Classification} - -} - -\endinput -%% -%% End of file `PJLauthor.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLdate.sty b/macros/latex/contrib/projlib/old-modules/PJLdate.sty deleted file mode 100644 index 783f164e7a..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLdate.sty +++ /dev/null @@ -1,74 +0,0 @@ -%% -%% This is file `PJLdate.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLdate} - [2021/12/16 Convert yyyy-mm-dd to normal datetime format] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLdate, - prefix = @PJLdate@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\ProcessKeyvalOptions*\relax -\if@PJLdate@draft - \@PJLdate@fasttrue -\fi -\DeclareDocumentCommand{\TheDate}{}{\PJLdate} -\DeclareDocumentCommand{\PLdate}{}{\PJLdate} -\if@PJLdate@fast\let\PJLdate\relax\endinput\fi - -\RequirePackage{PJLlang} - -\robustify\@latex@warning@no@line - -\RequirePackage{silence} -\WarningFilter*{datetime2}{Date-Time Language Module} -\PassOptionsToPackage{fr-FR,en-US}{datetime2} -\RequirePackage{datetime2} -\RequirePackage{zhnumber} - -\let\@DTMdate@PJLoriginal\@DTMdate -\gappto{\PJLlang@langconfig@common}{% - \let\@DTMdate\@DTMdate@PJLoriginal% -} -\gappto{\PJLlang@langconfig@CN}{% - \renewcommand*{\@DTMdate}[1]{% - \expandafter\@dtm@parsedate#1\@dtm@endparsedate% - \zhdate{\@dtm@year/\@dtm@month/\@dtm@day}% - }% -} -\gappto{\PJLlang@langconfig@TC}{% - \renewcommand*{\@DTMdate}[1]{% - \expandafter\@dtm@parsedate#1\@dtm@endparsedate% - \zhdate{\@dtm@year/\@dtm@month/\@dtm@day}% - }% -} -\gappto{\PJLlang@langconfig@JP}{% - \renewcommand*{\@DTMdate}[1]{% - \expandafter\@dtm@parsedate#1\@dtm@endparsedate% - \zhdate{\@dtm@year/\@dtm@month/\@dtm@day}% - }% -} - -\providecommand*{\PJLdate}[1]{\DTMdate{#1}} - -\endinput -%% -%% End of file `PJLdate.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLdraft.sty b/macros/latex/contrib/projlib/old-modules/PJLdraft.sty deleted file mode 100644 index 8657326842..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLdraft.sty +++ /dev/null @@ -1,104 +0,0 @@ -%% -%% This is file `PJLdraft.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLdraft} - [2021/12/16 Some useful macros for the draft stage] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLdraft, - prefix = @PJLdraft@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\ProcessKeyvalOptions*\relax -\if@PJLdraft@draft - \@PJLdraft@fasttrue -\fi - -\RequirePackage{PJLlang} -\RequirePackage{xcolor} - -\def\dnfFont{\ttfamily} -\def\needgraphFont{\ttfamily} - -\def\dnfTextEN{To be finished} -\def\needgraphTextEN{A graph is needed here} -\def\dnfTextFR{Pas encore fini} -\def\needgraphTextFR{Il manque une image ici} -\def\dnfTextDE{Nicht beendet} -\def\needgraphTextDE{Benötigen Sie ein Bild} -\def\dnfTextIT{Per essere finito} -\def\needgraphTextIT{Manca un'immagine qui} -\def\dnfTextPT{Não terminou} -\def\needgraphTextPT{Precisa de uma foto aqui} -\def\dnfTextBR{Não terminou} -\def\needgraphTextBR{Precisa de uma foto aqui} -\def\dnfTextES{Estar terminado} -\def\needgraphTextES{Falta una imagen aquí} -\def\dnfTextCN{这里尚未完成} -\def\needgraphTextCN{这里需要一张图片} -\def\dnfTextTC{這裡尚未完成} -\def\needgraphTextTC{這裡需要一張圖片} -\def\dnfTextJP{終わってない} -\def\needgraphTextJP{まだ画像が必要です} -\def\dnfTextRU{Не закончен} -\def\needgraphTextRU{Еще нужна картинка} - -\definecolor{dnfColor}{RGB}{21,122,20} -\definecolor{needgraphColor}{RGB}{70,130,180} - -\if@PJLdraft@fast - \newcommand{\plainBox}[2][-paper]{\textcolor{#1}{% - \setlength{\fboxsep}{1.5pt}% - \setlength{\fboxrule}{1.2pt}% - \fbox{#2}}} -\else - \PassOptionsToPackage{many}{tcolorbox} - \RequirePackage{tcolorbox} - \newtcbox{\plainBox}[1][-paper]{enhanced jigsaw,% - on line, arc = 1.2pt, outer arc = 1pt,breakable,% - colframe = #1,colupper=#1,opacityback=0,% - boxsep = 1pt,boxrule = 1.2pt,% - left = 1pt, right = 1pt, top = 0pt, bottom = 0pt,% - } -\fi - -\newcounter{dnfcnt} -\newcounter{needgraphcnt} - -\NewDocumentCommand{\dnf}{d<>}{% - \noindent\plainBox[dnfColor]% - {\normalfont\dnfFont\bfseries\small% - \csname dnfText\csname\languagename ABBR\endcsname\endcsname% - \stepcounter{dnfcnt}~\#\thednfcnt% - \IfNoValueF{#1}{\,: #1}}% -} -\NewDocumentCommand{\needgraph}{d<>}{% - \begin{center}% - \plainBox[needgraphColor]% - {\normalfont\needgraphFont\bfseries\small% - \csname needgraphText\csname\languagename ABBR\endcsname\endcsname% - \stepcounter{needgraphcnt}~\#\theneedgraphcnt% - \IfNoValueF{#1}{\,: #1}}% - \end{center}% -} - -\endinput -%% -%% End of file `PJLdraft.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLlang.sty b/macros/latex/contrib/projlib/old-modules/PJLlang.sty deleted file mode 100644 index 9470226adb..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLlang.sty +++ /dev/null @@ -1,358 +0,0 @@ -%% -%% This is file `PJLlang.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLlang} - [2021/12/16 Multi-language configuration] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{% - family = @PJLlang, - prefix = @PJLlang@ -} -\DeclareBoolOption[false]{polyglossia} - -\newif\if@PJLlang@enable@all\@PJLlang@enable@alltrue -\newif\if@PJLlang@enable@EN\@PJLlang@enable@ENfalse -\newif\if@PJLlang@enable@FR\@PJLlang@enable@FRfalse -\newif\if@PJLlang@enable@DE\@PJLlang@enable@DEfalse -\newif\if@PJLlang@enable@IT\@PJLlang@enable@ITfalse -\newif\if@PJLlang@enable@PT\@PJLlang@enable@PTfalse -\newif\if@PJLlang@enable@BR\@PJLlang@enable@BRfalse -\newif\if@PJLlang@enable@ES\@PJLlang@enable@ESfalse -\newif\if@PJLlang@enable@CN\@PJLlang@enable@CNfalse -\newif\if@PJLlang@enable@TC\@PJLlang@enable@TCfalse -\newif\if@PJLlang@enable@JP\@PJLlang@enable@JPfalse -\newif\if@PJLlang@enable@RU\@PJLlang@enable@RUfalse -\def\PJLlang@babeloptions{} -\DeclareVoidOption{EN}{\@PJLlang@enable@allfalse\@PJLlang@enable@ENtrue\providecommand{\PJLlang@mainlang}{EN}\gpreto{\PJLlang@babeloptions}{,english}} -\DeclareVoidOption{english}{\@PJLlang@enable@allfalse\@PJLlang@enable@ENtrue\providecommand{\PJLlang@mainlang}{EN}\gpreto{\PJLlang@babeloptions}{,english}} -\DeclareVoidOption{English}{\@PJLlang@enable@allfalse\@PJLlang@enable@ENtrue\providecommand{\PJLlang@mainlang}{EN}\gpreto{\PJLlang@babeloptions}{,english}} -\DeclareVoidOption{FR}{\@PJLlang@enable@allfalse\@PJLlang@enable@FRtrue\providecommand{\PJLlang@mainlang}{FR}\gpreto{\PJLlang@babeloptions}{,french}} -\DeclareVoidOption{french}{\@PJLlang@enable@allfalse\@PJLlang@enable@FRtrue\providecommand{\PJLlang@mainlang}{FR}\gpreto{\PJLlang@babeloptions}{,french}} -\DeclareVoidOption{French}{\@PJLlang@enable@allfalse\@PJLlang@enable@FRtrue\providecommand{\PJLlang@mainlang}{FR}\gpreto{\PJLlang@babeloptions}{,french}} -\DeclareVoidOption{DE}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{german}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{ngerman}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{German}{\@PJLlang@enable@allfalse\@PJLlang@enable@DEtrue\providecommand{\PJLlang@mainlang}{DE}\gpreto{\PJLlang@babeloptions}{,ngerman}} -\DeclareVoidOption{IT}{\@PJLlang@enable@allfalse\@PJLlang@enable@ITtrue\providecommand{\PJLlang@mainlang}{IT}\gpreto{\PJLlang@babeloptions}{,italian}} -\DeclareVoidOption{italian}{\@PJLlang@enable@allfalse\@PJLlang@enable@ITtrue\providecommand{\PJLlang@mainlang}{IT}\gpreto{\PJLlang@babeloptions}{,italian}} -\DeclareVoidOption{Italian}{\@PJLlang@enable@allfalse\@PJLlang@enable@ITtrue\providecommand{\PJLlang@mainlang}{IT}\gpreto{\PJLlang@babeloptions}{,italian}} -\DeclareVoidOption{PT}{\@PJLlang@enable@allfalse\@PJLlang@enable@PTtrue\providecommand{\PJLlang@mainlang}{PT}\gpreto{\PJLlang@babeloptions}{,portuguese}} -\DeclareVoidOption{portuguese}{\@PJLlang@enable@allfalse\@PJLlang@enable@PTtrue\providecommand{\PJLlang@mainlang}{PT}\gpreto{\PJLlang@babeloptions}{,portuguese}} -\DeclareVoidOption{Portuguese}{\@PJLlang@enable@allfalse\@PJLlang@enable@PTtrue\providecommand{\PJLlang@mainlang}{PT}\gpreto{\PJLlang@babeloptions}{,portuguese}} -\DeclareVoidOption{BR}{\@PJLlang@enable@allfalse\@PJLlang@enable@BRtrue\providecommand{\PJLlang@mainlang}{BR}\gpreto{\PJLlang@babeloptions}{,brazilian}} -\DeclareVoidOption{brazilian}{\@PJLlang@enable@allfalse\@PJLlang@enable@BRtrue\providecommand{\PJLlang@mainlang}{BR}\gpreto{\PJLlang@babeloptions}{,brazilian}} -\DeclareVoidOption{Brazilian}{\@PJLlang@enable@allfalse\@PJLlang@enable@BRtrue\providecommand{\PJLlang@mainlang}{BR}\gpreto{\PJLlang@babeloptions}{,brazilian}} -\DeclareVoidOption{ES}{\@PJLlang@enable@allfalse\@PJLlang@enable@EStrue\providecommand{\PJLlang@mainlang}{ES}\gpreto{\PJLlang@babeloptions}{,spanish}} -\DeclareVoidOption{spanish}{\@PJLlang@enable@allfalse\@PJLlang@enable@EStrue\providecommand{\PJLlang@mainlang}{ES}\gpreto{\PJLlang@babeloptions}{,spanish}} -\DeclareVoidOption{Spanish}{\@PJLlang@enable@allfalse\@PJLlang@enable@EStrue\providecommand{\PJLlang@mainlang}{ES}\gpreto{\PJLlang@babeloptions}{,spanish}} -\DeclareVoidOption{CN}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{chinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{Chinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{schinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{SChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{simplifiedchinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{SimplifiedChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@CNtrue\providecommand{\PJLlang@mainlang}{CN}} -\DeclareVoidOption{TC}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{tchinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{TChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{traditionalchinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{TraditionalChinese}{\@PJLlang@enable@allfalse\@PJLlang@enable@TCtrue\providecommand{\PJLlang@mainlang}{TC}} -\DeclareVoidOption{JP}{\@PJLlang@enable@allfalse\@PJLlang@enable@JPtrue\providecommand{\PJLlang@mainlang}{JP}\gpreto{\PJLlang@babeloptions}{,japanese}} -\DeclareVoidOption{japanese}{\@PJLlang@enable@allfalse\@PJLlang@enable@JPtrue\providecommand{\PJLlang@mainlang}{JP}\gpreto{\PJLlang@babeloptions}{,japanese}} -\DeclareVoidOption{Japanese}{\@PJLlang@enable@allfalse\@PJLlang@enable@JPtrue\providecommand{\PJLlang@mainlang}{JP}\gpreto{\PJLlang@babeloptions}{,japanese}} -\DeclareVoidOption{RU}{\@PJLlang@enable@allfalse\@PJLlang@enable@RUtrue\providecommand{\PJLlang@mainlang}{RU}\gpreto{\PJLlang@babeloptions}{,russian}} -\DeclareVoidOption{russian}{\@PJLlang@enable@allfalse\@PJLlang@enable@RUtrue\providecommand{\PJLlang@mainlang}{RU}\gpreto{\PJLlang@babeloptions}{,russian}} -\DeclareVoidOption{Russian}{\@PJLlang@enable@allfalse\@PJLlang@enable@RUtrue\providecommand{\PJLlang@mainlang}{RU}\gpreto{\PJLlang@babeloptions}{,russian}} -\ProcessKeyvalOptions*\relax - -\ExplSyntaxOn -\cs_new_protected:cpn { @clearglobaloption } #1 - { - \clist_remove_all:cn { @classoptionslist } { #1 } - } -\ExplSyntaxOff - -\@clearglobaloption{chinese} -\@clearglobaloption{Chinese} - -\providecommand{\PJLlang@mainlang}{EN} - -\if@PJLlang@enable@all - \@PJLlang@enable@ENtrue - \@PJLlang@enable@FRtrue - \@PJLlang@enable@DEtrue - \@PJLlang@enable@ITtrue - \@PJLlang@enable@PTtrue - \@PJLlang@enable@BRtrue - \@PJLlang@enable@EStrue - \@PJLlang@enable@CNtrue - \@PJLlang@enable@TCtrue - \@PJLlang@enable@JPtrue - \@PJLlang@enable@RUtrue -\fi - -\newcommand\englishABBR{EN} -\newcommand\frenchABBR{FR} -\newcommand\ngermanABBR{DE} -\newcommand\italianABBR{IT} -\newcommand\portugueseABBR{PT} -\newcommand\brazilianABBR{BR} -\newcommand\spanishABBR{ES} -\newcommand\schineseABBR{CN} -\newcommand\tchineseABBR{TC} -\newcommand\japaneseABBR{JP} -\newcommand\russianABBR{RU} - -\ExplSyntaxOn -\NewExpandableDocumentCommand{\StrToABBR}{m} - { - \str_case_e:nn { \str_foldcase:n { #1 } } - { - {cn} {CN} - {chinese} {CN} - {schinese} {CN} - {simplifiedchinese} {CN} - {tc} {TC} - {tchinese} {TC} - {traditionalchinese} {TC} - {jp} {JP} - {japanese} {JP} - {en} {EN} - {english} {EN} - {fr} {FR} - {french} {FR} - {de} {DE} - {ngerman} {DE} - {it} {IT} - {italian} {IT} - {pt} {PT} - {portuguese} {PT} - {br} {BR} - {brazilian} {BR} - {es} {ES} - {spanish} {ES} - {german} {DE} - {ru} {RU} - {russian} {RU} - } - } - -\NewExpandableDocumentCommand{\StrToTYPE}{m} - { - \str_case_e:nn { \str_foldcase:n { #1 } } - { - {cn} {CJK} - {chinese} {CJK} - {schinese} {CJK} - {simplifiedchinese} {CJK} - {tc} {CJK} - {tchinese} {CJK} - {traditionalchinese} {CJK} - {jp} {CJK} - {japanese} {CJK} - {en} {Latin} - {english} {Latin} - {fr} {Latin} - {french} {Latin} - {de} {Latin} - {ngerman} {Latin} - {it} {Latin} - {italian} {Latin} - {pt} {Latin} - {portuguese} {Latin} - {br} {Latin} - {brazilian} {Latin} - {es} {Latin} - {spanish} {Latin} - {german} {Latin} - {ru} {Latin} - {russian} {Latin} - } - } -\ExplSyntaxOff - -\RequirePackage{iftex} -\ifPDFTeX -\RequirePackage[T1]{fontenc} -\RequirePackage{inputenc} -\fi - -\if@PJLlang@polyglossia - \RequirePackage{polyglossia} - \setdefaultlanguage{english} - \setotherlanguage[frenchpart=false]{french} - \setotherlanguage{ngerman} - \setotherlanguage{spanish} - \setotherlanguage{portuguese} - \setotherlanguage[variant=brazilian]{portuguese} - \setotherlanguage{italian} - \ifPDFTeX\else - \setotherlanguage{russian} - \setotherlanguage{japanese} - \RequirePackage{silence} - \WarningFilter{polyglossia}{Asking to add empty feature to latin font(Script="CJK" to scripttag "")} - \fi -\else - \if@PJLlang@enable@all - \ifPDFTeX\else - \PassOptionsToPackage{japanese,russian}{babel} - \fi - \PassOptionsToPackage{italian,portuguese,brazilian,spanish,es-notilde,es-noquoting,ngerman,french,english,shorthands=off}{babel} - \else - \PassOptionsToPackage{\PJLlang@babeloptions}{babel} - \fi - \PassOptionsToPackage{italian,brazilian,spanish,ngerman,french,english}{cleveref} - \RequirePackage{babel} - \if@PJLlang@enable@FR - \frenchsetup{PartNameFull=false} - \fi - \if@PJLlang@enable@PT - \let\PJL@babelord\ord - \let\ord\relax - \AtBeginDocument{ - \@ifundefined{ord}{} - { - \let\PJL@userord\ord - \let\ord\relax - \newcommand{\ord}{% - \ifmmode\expandafter\PJL@userord\else\expandafter\PJL@babelord\fi% - } - } - } - \fi - - \babelprovide{schinese} - \babelprovide{tchinese} -\fi - -\let\today@PJLoriginal\today -\newcommand{\PJLlang@langconfig@common}{% - \ifdefined\DTMtoday% - \let\today\DTMtoday% - \else% - \let\today\today@PJLoriginal% - \fi% -} - -\newcommand{\PJLlang@langconfig@CN}{% - \def\abstractname{摘要}% - \def\proofname{证明}% - \def\contentsname{目录}% - \def\listfigurename{插图}% - \def\listtablename{表格}% - \def\figurename{图}% - \def\tablename{表}% - \def\indexname{索引}% - \def\appendixname{附录}% - \def\refname{参考文献}% - \def\bibname{参考文献}% - \let\today\zhtoday% - \renewcommand{\languagename}{schinese}% -} -\newcommand{\PJLlang@langconfig@TC}{% - \def\abstractname{摘要}% - \def\proofname{證明}% - \def\contentsname{目錄}% - \def\listfigurename{插圖}% - \def\listtablename{表格}% - \def\figurename{圖}% - \def\tablename{表}% - \def\indexname{索引}% - \def\appendixname{附錄}% - \def\refname{參考文獻}% - \def\bibname{參考文獻}% - \let\today\zhtoday% - \renewcommand{\languagename}{tchinese}% -} -\newcommand{\PJLlang@langconfig@JP}{% - \selectlanguage{japanese}% -} -\newcommand{\PJLlang@langconfig@EN}{% - \selectlanguage{english}% -} -\newcommand{\PJLlang@langconfig@FR}{% - \selectlanguage{french}% - \def\frenchpartname{Partie}% -} -\newcommand{\PJLlang@langconfig@DE}{% - \selectlanguage{ngerman}% -} -\newcommand{\PJLlang@langconfig@IT}{% - \selectlanguage{italian}% -} -\newcommand{\PJLlang@langconfig@PT}{% - \selectlanguage{portuguese}% -} -\newcommand{\PJLlang@langconfig@BR}{% - \selectlanguage{brazilian}% -} -\newcommand{\PJLlang@langconfig@ES}{% - \selectlanguage{spanish}% -} -\newcommand{\PJLlang@langconfig@RU}{% - \selectlanguage{russian}% -} - -\NewDocumentCommand\AddLanguageSetting{d()m}{% -\IfNoValueTF{#1}% - {\gappto{\PJLlang@langconfig@common}{#2}}% - {\expandafter\gappto\expandafter{\csname PJLlang@langconfig@\StrToABBR{#1}\endcsname}{#2}}% -} - -\RequirePackage{setspace} -\def\PJL@config@linespacing{\setstretch{1.00}} -\def\PJL@config@CJKlinespacing{\onehalfspacing} -\newcommand{\PJLsetlinespacing}[1]{\renewcommand{\PJL@config@linespacing}{#1}} -\newcommand{\PJLsetCJKlinespacing}[1]{\renewcommand{\PJL@config@CJKlinespacing}{#1}} -\@ifclassloaded{beamer}{ - \def\PJL@config@parindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{0em}}} - \def\PJL@config@CJKparindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{0em}}} -}{ - \def\PJL@config@parindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{1.5em}}} - \def\PJL@config@CJKparindent{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{2em}}} -} -\newcommand{\PJLsetparindent}[1]{\renewcommand{\PJL@config@parindent}{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{#1}}}} -\newcommand{\PJLsetCJKparindent}[1]{\renewcommand{\PJL@config@CJKparindent}{\ltx@ifpackageloaded{parskip}{}{\setlength{\parindent}{#1}}}} -\def\PJL@config@CJK{\PJL@config@CJKlinespacing\PJL@config@CJKparindent} -\def\PJL@config@Latin{\PJL@config@linespacing\PJL@config@parindent} -\NewDocumentCommand{\UseLanguageCORE}{m}{% - \PJLlang@langconfig@common% - \csname PJL@config@\StrToTYPE{#1}\endcsname% - \csname PJLlang@langconfig@\StrToABBR{#1}\endcsname% -} -\NewDocumentCommand{\UseLanguage}{m}{% - \ifx\@onlypreamble\@notprerr% - \UseLanguageCORE{#1}% - \else% - \AfterEndPreamble{\UseLanguageCORE{#1}}% - \fi% -} -\NewDocumentCommand{\UseOtherLanguage}{mm}{% -\begingroup\begingroup% - \PJLlang@langconfig@common% - \csname PJLlang@langconfig@\StrToABBR{#1}\endcsname% - #2% -\endgroup\endgroup% -} - -\expandafter\UseLanguage\expandafter{\PJLlang@mainlang} - -\endinput -%% -%% End of file `PJLlang.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLlogo.sty b/macros/latex/contrib/projlib/old-modules/PJLlogo.sty deleted file mode 100644 index 7d24239fdc..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLlogo.sty +++ /dev/null @@ -1,72 +0,0 @@ -%% -%% This is file `PJLlogo.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLlogo} - [2021/12/16 The ProjLib logo] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @PJLlogo, - prefix = @PJLlogo@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\ProcessKeyvalOptions*\relax -\if@PJLlogo@draft - \@PJLlogo@fasttrue -\fi -\if@PJLlogo@fast\def\ProjLib{{\normalfont ProjLib}}\endinput\fi - -\RequirePackage{xcolor} -\RequirePackage{graphicx} -\ifdefined\fontspec - \newfontface{\PJLlogo@font}{LinBiolinum_R.otf} -\else - \RequirePackage[T1]{fontenc} - \newcommand{\PJLlogo@font}{\fontfamily{LinuxBiolinumT-TLF}\selectfont} -\fi - -\newcommand{\PJLSigmaJ}{% - \vbox{\offinterlineskip - \ialign{% - \hfil##\hfil\cr - \hidewidth\hskip0.15ex\scalebox{0.4}{\rotatebox{-10}{\usefont{U}{zeur}{b}{n}\symbol{"06}}}\hidewidth\cr - \noalign{\kern0.15ex} - \j\cr - }% - }% -} - -\newcommand{\ProjLib@generic}[1]{% - \begingroup - \normalfont\PJLlogo@font - \textcolor{blue!60!cyan}{P}% - \textcolor{blue!45!cyan}{r}% - \textcolor{blue!30!cyan}{o}% - \textcolor{green!70!black}{#1}% - \textcolor{red!20!yellow}{L}% - \textcolor{red!40!yellow}{i}% - \textcolor{red!60!yellow}{b}% - \endgroup -} -\DeclareRobustCommand*{\ProjLib}{\ProjLib@generic{\PJLSigmaJ}} -\DeclareRobustCommand*{\ProjLibText}{\ProjLib@generic{j}} - -\endinput -%% -%% End of file `PJLlogo.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLmath.sty b/macros/latex/contrib/projlib/old-modules/PJLmath.sty deleted file mode 100644 index 3bd389ef50..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLmath.sty +++ /dev/null @@ -1,315 +0,0 @@ -%% -%% This is file `PJLmath.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLmath} - [2021/12/16 Useful math macros and shortcuts] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\RequirePackage{mathtools} -\RequirePackage{mathrsfs} -\@ifpackageloaded{unicode-math}{}{\RequirePackage{amssymb}} - -%%================================ -%% Shorthands -%%================================ -\providecommand{\N}{\ensuremath{\mathbb{N}}} -\providecommand{\Z}{\ensuremath{\mathbb{Z}}} -\providecommand{\Q}{\ensuremath{\mathbb{Q}}} -\providecommand{\R}{\ensuremath{\mathbb{R}}} -\providecommand{\C}{\ensuremath{\mathbb{C}}} -\providecommand{\F}{\ensuremath{\mathbb{F}}} -\providecommand{\A}{\ensuremath{\mathbb{A}}} - -\providecommand{\bb}[1]{\ensuremath{\mathbb{#1}}} -\providecommand{\bbA}{\ensuremath{\mathbb{A}}} -\providecommand{\bbB}{\ensuremath{\mathbb{B}}} -\providecommand{\bbC}{\ensuremath{\mathbb{C}}} -\providecommand{\bbD}{\ensuremath{\mathbb{D}}} -\providecommand{\bbE}{\ensuremath{\mathbb{E}}} -\providecommand{\bbF}{\ensuremath{\mathbb{F}}} -\providecommand{\bbG}{\ensuremath{\mathbb{G}}} -\providecommand{\bbH}{\ensuremath{\mathbb{H}}} -\providecommand{\bbI}{\ensuremath{\mathbb{I}}} -\providecommand{\bbJ}{\ensuremath{\mathbb{J}}} -\providecommand{\bbK}{\ensuremath{\mathbb{K}}} -\providecommand{\bbL}{\ensuremath{\mathbb{L}}} -\providecommand{\bbM}{\ensuremath{\mathbb{M}}} -\providecommand{\bbN}{\ensuremath{\mathbb{N}}} -\providecommand{\bbO}{\ensuremath{\mathbb{O}}} -\providecommand{\bbP}{\ensuremath{\mathbb{P}}} -\providecommand{\bbQ}{\ensuremath{\mathbb{Q}}} -\providecommand{\bbR}{\ensuremath{\mathbb{R}}} -\providecommand{\bbS}{\ensuremath{\mathbb{S}}} -\providecommand{\bbT}{\ensuremath{\mathbb{T}}} -\providecommand{\bbU}{\ensuremath{\mathbb{U}}} -\providecommand{\bbV}{\ensuremath{\mathbb{V}}} -\providecommand{\bbW}{\ensuremath{\mathbb{W}}} -\providecommand{\bbX}{\ensuremath{\mathbb{X}}} -\providecommand{\bbY}{\ensuremath{\mathbb{Y}}} -\providecommand{\bbZ}{\ensuremath{\mathbb{Z}}} - -\providecommand{\mc}[1]{\ensuremath{\mathcal{#1}}} -\providecommand{\mcA}{\ensuremath{\mathcal{A}}} -\providecommand{\mcB}{\ensuremath{\mathcal{B}}} -\providecommand{\mcC}{\ensuremath{\mathcal{C}}} -\providecommand{\mcD}{\ensuremath{\mathcal{D}}} -\providecommand{\mcE}{\ensuremath{\mathcal{E}}} -\providecommand{\mcF}{\ensuremath{\mathcal{F}}} -\providecommand{\mcG}{\ensuremath{\mathcal{G}}} -\providecommand{\mcH}{\ensuremath{\mathcal{H}}} -\providecommand{\mcI}{\ensuremath{\mathcal{I}}} -\providecommand{\mcJ}{\ensuremath{\mathcal{J}}} -\providecommand{\mcK}{\ensuremath{\mathcal{K}}} -\providecommand{\mcL}{\ensuremath{\mathcal{L}}} -\providecommand{\mcM}{\ensuremath{\mathcal{M}}} -\providecommand{\mcN}{\ensuremath{\mathcal{N}}} -\providecommand{\mcO}{\ensuremath{\mathcal{O}}} -\providecommand{\mcP}{\ensuremath{\mathcal{P}}} -\providecommand{\mcQ}{\ensuremath{\mathcal{Q}}} -\providecommand{\mcR}{\ensuremath{\mathcal{R}}} -\providecommand{\mcS}{\ensuremath{\mathcal{S}}} -\providecommand{\mcT}{\ensuremath{\mathcal{T}}} -\providecommand{\mcU}{\ensuremath{\mathcal{U}}} -\providecommand{\mcV}{\ensuremath{\mathcal{V}}} -\providecommand{\mcW}{\ensuremath{\mathcal{W}}} -\providecommand{\mcX}{\ensuremath{\mathcal{X}}} -\providecommand{\mcY}{\ensuremath{\mathcal{Y}}} -\providecommand{\mcZ}{\ensuremath{\mathcal{Z}}} - -\providecommand{\cal}[1]{\ensuremath{\mathcal{#1}}} -\providecommand{\calA}{\ensuremath{\mathcal{A}}} -\providecommand{\calB}{\ensuremath{\mathcal{B}}} -\providecommand{\calC}{\ensuremath{\mathcal{C}}} -\providecommand{\calD}{\ensuremath{\mathcal{D}}} -\providecommand{\calE}{\ensuremath{\mathcal{E}}} -\providecommand{\calF}{\ensuremath{\mathcal{F}}} -\providecommand{\calG}{\ensuremath{\mathcal{G}}} -\providecommand{\calH}{\ensuremath{\mathcal{H}}} -\providecommand{\calI}{\ensuremath{\mathcal{I}}} -\providecommand{\calJ}{\ensuremath{\mathcal{J}}} -\providecommand{\calK}{\ensuremath{\mathcal{K}}} -\providecommand{\calL}{\ensuremath{\mathcal{L}}} -\providecommand{\calM}{\ensuremath{\mathcal{M}}} -\providecommand{\calN}{\ensuremath{\mathcal{N}}} -\providecommand{\calO}{\ensuremath{\mathcal{O}}} -\providecommand{\calP}{\ensuremath{\mathcal{P}}} -\providecommand{\calQ}{\ensuremath{\mathcal{Q}}} -\providecommand{\calR}{\ensuremath{\mathcal{R}}} -\providecommand{\calS}{\ensuremath{\mathcal{S}}} -\providecommand{\calT}{\ensuremath{\mathcal{T}}} -\providecommand{\calU}{\ensuremath{\mathcal{U}}} -\providecommand{\calV}{\ensuremath{\mathcal{V}}} -\providecommand{\calW}{\ensuremath{\mathcal{W}}} -\providecommand{\calX}{\ensuremath{\mathcal{X}}} -\providecommand{\calY}{\ensuremath{\mathcal{Y}}} -\providecommand{\calZ}{\ensuremath{\mathcal{Z}}} - -\providecommand{\mf}[1]{\ensuremath{\mathfrak{#1}}} -\providecommand{\mfa}{\ensuremath{\mathfrak{a}}} -\providecommand{\mfb}{\ensuremath{\mathfrak{b}}} -\providecommand{\mfc}{\ensuremath{\mathfrak{c}}} -\providecommand{\mfd}{\ensuremath{\mathfrak{d}}} -\providecommand{\mfe}{\ensuremath{\mathfrak{e}}} -\providecommand{\mff}{\ensuremath{\mathfrak{f}}} -\providecommand{\mfg}{\ensuremath{\mathfrak{g}}} -\providecommand{\mfh}{\ensuremath{\mathfrak{h}}} -\providecommand{\mfi}{\ensuremath{\mathfrak{i}}} -\providecommand{\mfj}{\ensuremath{\mathfrak{j}}} -\providecommand{\mfk}{\ensuremath{\mathfrak{k}}} -\providecommand{\mfl}{\ensuremath{\mathfrak{l}}} -\providecommand{\mfm}{\ensuremath{\mathfrak{m}}} -\providecommand{\mfn}{\ensuremath{\mathfrak{n}}} -\providecommand{\mfo}{\ensuremath{\mathfrak{o}}} -\providecommand{\mfp}{\ensuremath{\mathfrak{p}}} -\providecommand{\mfq}{\ensuremath{\mathfrak{q}}} -\providecommand{\mfr}{\ensuremath{\mathfrak{r}}} -\providecommand{\mfs}{\ensuremath{\mathfrak{s}}} -\providecommand{\mft}{\ensuremath{\mathfrak{t}}} -\providecommand{\mfu}{\ensuremath{\mathfrak{u}}} -\providecommand{\mfv}{\ensuremath{\mathfrak{v}}} -\providecommand{\mfw}{\ensuremath{\mathfrak{w}}} -\providecommand{\mfx}{\ensuremath{\mathfrak{x}}} -\providecommand{\mfy}{\ensuremath{\mathfrak{y}}} -\providecommand{\mfz}{\ensuremath{\mathfrak{z}}} -\providecommand{\mfA}{\ensuremath{\mathfrak{A}}} -\providecommand{\mfB}{\ensuremath{\mathfrak{B}}} -\providecommand{\mfC}{\ensuremath{\mathfrak{C}}} -\providecommand{\mfD}{\ensuremath{\mathfrak{D}}} -\providecommand{\mfE}{\ensuremath{\mathfrak{E}}} -\providecommand{\mfF}{\ensuremath{\mathfrak{F}}} -\providecommand{\mfG}{\ensuremath{\mathfrak{G}}} -\providecommand{\mfH}{\ensuremath{\mathfrak{H}}} -\providecommand{\mfI}{\ensuremath{\mathfrak{I}}} -\providecommand{\mfJ}{\ensuremath{\mathfrak{J}}} -\providecommand{\mfK}{\ensuremath{\mathfrak{K}}} -\providecommand{\mfL}{\ensuremath{\mathfrak{L}}} -\providecommand{\mfM}{\ensuremath{\mathfrak{M}}} -\providecommand{\mfN}{\ensuremath{\mathfrak{N}}} -\providecommand{\mfO}{\ensuremath{\mathfrak{O}}} -\providecommand{\mfP}{\ensuremath{\mathfrak{P}}} -\providecommand{\mfQ}{\ensuremath{\mathfrak{Q}}} -\providecommand{\mfR}{\ensuremath{\mathfrak{R}}} -\providecommand{\mfS}{\ensuremath{\mathfrak{S}}} -\providecommand{\mfT}{\ensuremath{\mathfrak{T}}} -\providecommand{\mfU}{\ensuremath{\mathfrak{U}}} -\providecommand{\mfV}{\ensuremath{\mathfrak{V}}} -\providecommand{\mfW}{\ensuremath{\mathfrak{W}}} -\providecommand{\mfX}{\ensuremath{\mathfrak{X}}} -\providecommand{\mfY}{\ensuremath{\mathfrak{Y}}} -\providecommand{\mfZ}{\ensuremath{\mathfrak{Z}}} - -\providecommand{\frak}[1]{\ensuremath{\mathfrak{#1}}} -\providecommand{\fraka}{\ensuremath{\mathfrak{a}}} -\providecommand{\frakb}{\ensuremath{\mathfrak{b}}} -\providecommand{\frakc}{\ensuremath{\mathfrak{c}}} -\providecommand{\frakd}{\ensuremath{\mathfrak{d}}} -\providecommand{\frake}{\ensuremath{\mathfrak{e}}} -\providecommand{\frakf}{\ensuremath{\mathfrak{f}}} -\providecommand{\frakg}{\ensuremath{\mathfrak{g}}} -\providecommand{\frakh}{\ensuremath{\mathfrak{h}}} -\providecommand{\fraki}{\ensuremath{\mathfrak{i}}} -\providecommand{\frakj}{\ensuremath{\mathfrak{j}}} -\providecommand{\frakk}{\ensuremath{\mathfrak{k}}} -\providecommand{\frakl}{\ensuremath{\mathfrak{l}}} -\providecommand{\frakm}{\ensuremath{\mathfrak{m}}} -\providecommand{\frakn}{\ensuremath{\mathfrak{n}}} -\providecommand{\frako}{\ensuremath{\mathfrak{o}}} -\providecommand{\frakp}{\ensuremath{\mathfrak{p}}} -\providecommand{\frakq}{\ensuremath{\mathfrak{q}}} -\providecommand{\frakr}{\ensuremath{\mathfrak{r}}} -\providecommand{\fraks}{\ensuremath{\mathfrak{s}}} -\providecommand{\frakt}{\ensuremath{\mathfrak{t}}} -\providecommand{\fraku}{\ensuremath{\mathfrak{u}}} -\providecommand{\frakv}{\ensuremath{\mathfrak{v}}} -\providecommand{\frakw}{\ensuremath{\mathfrak{w}}} -\providecommand{\frakx}{\ensuremath{\mathfrak{x}}} -\providecommand{\fraky}{\ensuremath{\mathfrak{y}}} -\providecommand{\frakz}{\ensuremath{\mathfrak{z}}} -\providecommand{\frakA}{\ensuremath{\mathfrak{A}}} -\providecommand{\frakB}{\ensuremath{\mathfrak{B}}} -\providecommand{\frakC}{\ensuremath{\mathfrak{C}}} -\providecommand{\frakD}{\ensuremath{\mathfrak{D}}} -\providecommand{\frakE}{\ensuremath{\mathfrak{E}}} -\providecommand{\frakF}{\ensuremath{\mathfrak{F}}} -\providecommand{\frakG}{\ensuremath{\mathfrak{G}}} -\providecommand{\frakH}{\ensuremath{\mathfrak{H}}} -\providecommand{\frakI}{\ensuremath{\mathfrak{I}}} -\providecommand{\frakJ}{\ensuremath{\mathfrak{J}}} -\providecommand{\frakK}{\ensuremath{\mathfrak{K}}} -\providecommand{\frakL}{\ensuremath{\mathfrak{L}}} -\providecommand{\frakM}{\ensuremath{\mathfrak{M}}} -\providecommand{\frakN}{\ensuremath{\mathfrak{N}}} -\providecommand{\frakO}{\ensuremath{\mathfrak{O}}} -\providecommand{\frakP}{\ensuremath{\mathfrak{P}}} -\providecommand{\frakQ}{\ensuremath{\mathfrak{Q}}} -\providecommand{\frakR}{\ensuremath{\mathfrak{R}}} -\providecommand{\frakS}{\ensuremath{\mathfrak{S}}} -\providecommand{\frakT}{\ensuremath{\mathfrak{T}}} -\providecommand{\frakU}{\ensuremath{\mathfrak{U}}} -\providecommand{\frakV}{\ensuremath{\mathfrak{V}}} -\providecommand{\frakW}{\ensuremath{\mathfrak{W}}} -\providecommand{\frakX}{\ensuremath{\mathfrak{X}}} -\providecommand{\frakY}{\ensuremath{\mathfrak{Y}}} -\providecommand{\frakZ}{\ensuremath{\mathfrak{Z}}} - -\providecommand{\ms}[1]{\ensuremath{\mathscr{#1}}} -\providecommand{\msA}{\ensuremath{\mathscr{A}}} -\providecommand{\msB}{\ensuremath{\mathscr{B}}} -\providecommand{\msC}{\ensuremath{\mathscr{C}}} -\providecommand{\msD}{\ensuremath{\mathscr{D}}} -\providecommand{\msE}{\ensuremath{\mathscr{E}}} -\providecommand{\msF}{\ensuremath{\mathscr{F}}} -\providecommand{\msG}{\ensuremath{\mathscr{G}}} -\providecommand{\msH}{\ensuremath{\mathscr{H}}} -\providecommand{\msI}{\ensuremath{\mathscr{I}}} -\providecommand{\msJ}{\ensuremath{\mathscr{J}}} -\providecommand{\msK}{\ensuremath{\mathscr{K}}} -\providecommand{\msL}{\ensuremath{\mathscr{L}}} -\providecommand{\msM}{\ensuremath{\mathscr{M}}} -\providecommand{\msN}{\ensuremath{\mathscr{N}}} -\providecommand{\msO}{\ensuremath{\mathscr{O}}} -\providecommand{\msP}{\ensuremath{\mathscr{P}}} -\providecommand{\msQ}{\ensuremath{\mathscr{Q}}} -\providecommand{\msR}{\ensuremath{\mathscr{R}}} -\providecommand{\msS}{\ensuremath{\mathscr{S}}} -\providecommand{\msT}{\ensuremath{\mathscr{T}}} -\providecommand{\msU}{\ensuremath{\mathscr{U}}} -\providecommand{\msV}{\ensuremath{\mathscr{V}}} -\providecommand{\msW}{\ensuremath{\mathscr{W}}} -\providecommand{\msX}{\ensuremath{\mathscr{X}}} -\providecommand{\msY}{\ensuremath{\mathscr{Y}}} -\providecommand{\msZ}{\ensuremath{\mathscr{Z}}} - -\providecommand{\scr}[1]{\ensuremath{\mathscr{#1}}} -\providecommand{\scrA}{\ensuremath{\mathscr{A}}} -\providecommand{\scrB}{\ensuremath{\mathscr{B}}} -\providecommand{\scrC}{\ensuremath{\mathscr{C}}} -\providecommand{\scrD}{\ensuremath{\mathscr{D}}} -\providecommand{\scrE}{\ensuremath{\mathscr{E}}} -\providecommand{\scrF}{\ensuremath{\mathscr{F}}} -\providecommand{\scrG}{\ensuremath{\mathscr{G}}} -\providecommand{\scrH}{\ensuremath{\mathscr{H}}} -\providecommand{\scrI}{\ensuremath{\mathscr{I}}} -\providecommand{\scrJ}{\ensuremath{\mathscr{J}}} -\providecommand{\scrK}{\ensuremath{\mathscr{K}}} -\providecommand{\scrL}{\ensuremath{\mathscr{L}}} -\providecommand{\scrM}{\ensuremath{\mathscr{M}}} -\providecommand{\scrN}{\ensuremath{\mathscr{N}}} -\providecommand{\scrO}{\ensuremath{\mathscr{O}}} -\providecommand{\scrP}{\ensuremath{\mathscr{P}}} -\providecommand{\scrQ}{\ensuremath{\mathscr{Q}}} -\providecommand{\scrR}{\ensuremath{\mathscr{R}}} -\providecommand{\scrS}{\ensuremath{\mathscr{S}}} -\providecommand{\scrT}{\ensuremath{\mathscr{T}}} -\providecommand{\scrU}{\ensuremath{\mathscr{U}}} -\providecommand{\scrV}{\ensuremath{\mathscr{V}}} -\providecommand{\scrW}{\ensuremath{\mathscr{W}}} -\providecommand{\scrX}{\ensuremath{\mathscr{X}}} -\providecommand{\scrY}{\ensuremath{\mathscr{Y}}} -\providecommand{\scrZ}{\ensuremath{\mathscr{Z}}} - -%%================================ -%% General symbols -%%================================ -\providecommand{\abs}[1]{\lvert#1\rvert} -\providecommand{\norm}[1]{\lVert#1\rVert} - -\providecommand*{\injection}{\ensuremath{\hookrightarrow}} -\providecommand*{\surjection}{\ensuremath{\twoheadrightarrow}} -\providecommand*{\bijection}{\ensuremath{\xrightarrow{\sim}}} - -%%================================ -%% Symbols for number theory -%%================================ -\ifdefined\@@pmod\else -\let\@@pmod\pmod -\DeclareRobustCommand{\pmod}{\@ifstar\@pmods\@@pmod} -\def\@pmods#1{\mkern4mu({\operator@font mod}\mkern 6mu#1)} -\fi - -\providecommand{\genlegendre}[4]{% - \genfrac{(}{)}{}{#1}{#3}{#4}% - \if\relax\detokenize{#2}\relax\else_{\!#2}\fi% -} -\providecommand{\legendre}[3][]{\genlegendre{}{#1}{#2}{#3}} -\providecommand{\dlegendre}[3][]{\genlegendre{0}{#1}{#2}{#3}} -\providecommand{\tlegendre}[3][]{\genlegendre{1}{#1}{#2}{#3}} - -\endinput -%% -%% End of file `PJLmath.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLpaper.sty b/macros/latex/contrib/projlib/old-modules/PJLpaper.sty deleted file mode 100644 index 4b963c069a..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLpaper.sty +++ /dev/null @@ -1,96 +0,0 @@ -%% -%% This is file `PJLpaper.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLpaper} - [2021/12/16 Paper style configuration] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\RequirePackage{ifthen} - -\SetupKeyvalOptions{% - family = @PJLpaper, - prefix = @PJLpaper@, - setkeys=\kvsetkeys -} - -\DeclareStringOption[normal]{paperstyle} -\DeclareVoidOption{yellowpaper}{\kvsetkeys{@PJLpaper}{paperstyle=yellow}} -\DeclareVoidOption{darkpaper}{\kvsetkeys{@PJLpaper}{paperstyle=dark}} -\DeclareVoidOption{nordpaper}{\kvsetkeys{@PJLpaper}{paperstyle=nord}} -\DeclareBoolOption[false]{preview} -\ProcessKeyvalOptions*\relax - -%%================================ -%% Preview mode -%%================================ -\ifdefined\PJLnoPreview\else% - \if@PJLpaper@preview% - \RequirePackage{calc} - \AtEndPreamble{% - \setlength{\paperwidth}{\textwidth*\real{1.05}}% - \setlength{\paperheight}{% - (\textheight+\headheight+\headsep+\footskip)*\real{1.05}}% - \setlength{\oddsidemargin}{(\paperwidth-\textwidth)/2-1in}% - \setlength{\evensidemargin}{(\paperwidth-\textwidth)/2-1in}% - \setlength{\topmargin}{(\paperheight-\textheight-\headheight-\headsep-\footskip)/2- 1in}% - } - \fi -\fi - -%%================================ -%% Paper color -%%================================ -\RequirePackage{xcolor} -\definecolor{paper}{RGB}{255,255,255} -\definecolor{maintext}{RGB}{0,0,0} - -\ifthenelse{\equal{\@PJLpaper@paperstyle}{yellow}} -{ - \definecolor{paper}{RGB}{247,246,233} -} -{\relax} - -\ifthenelse{\equal{\@PJLpaper@paperstyle}{dark}} -{ - \definecolor{paper}{RGB}{30,30,30} - \definecolor{maintext}{RGB}{207,207,207} -} -{\relax} - -\ifthenelse{\equal{\@PJLpaper@paperstyle}{nord}} -{ - \definecolor{paper}{RGB}{46,52,64} - \definecolor{maintext}{RGB}{214,220,230} -} -{\relax} - -\newcommand{\PJLglobalcolor}[1]{% - \color{#1}\global\let\default@color\current@color -} - -\pagecolor{paper} -\PJLglobalcolor{maintext} -\AtEndPreamble{ -\ifdefined\tcbset% - \tcbset{colupper=maintext,collower=maintext} -\fi -} - -\endinput -%% -%% End of file `PJLpaper.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLthm.sty b/macros/latex/contrib/projlib/old-modules/PJLthm.sty deleted file mode 100644 index 4e6d00d4d2..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLthm.sty +++ /dev/null @@ -1,2019 +0,0 @@ -%% -%% This is file `PJLthm.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLthm} - [2021/12/16 Theorem setup and configuration] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{% - family = @PJLthm, - prefix = @PJLthm@ -} -\DeclareBoolOption[false]{nothms} -\DeclareBoolOption[false]{delaythms} -\DeclareBoolOption[false]{nothmnum} -\DeclareStringOption{thmnum}[PJL@thmnum@default] -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\DeclareBoolOption[true]{regionalref} -\DeclareBoolOption[false]{originalref} -\DeclareBoolOption[true]{complexname} -\DeclareBoolOption[false]{simplename} -\ProcessKeyvalOptions*\relax -\if@PJLthm@originalref - \@PJLthm@regionalreffalse -\fi -\if@PJLthm@simplename - \@PJLthm@complexnamefalse -\fi -\if@PJLthm@draft - \@PJLthm@fasttrue -\fi -\if@PJLthm@fast - \@PJLthm@regionalreftrue -\fi - -\@ifclassloaded{beamer}{% - \RequirePackage{silence} - \WarningFilter{cleveref}{hyperref package loaded with implicit=false option} - \@PJLthm@nothmnumtrue% - \if@PJLthm@nothms\else% - \let\theorem\relax - \let\lemma\relax - \let\corollary\relax - \let\definition\relax - \let\fact\relax - \let\example\relax - \let\problem\relax - \fi -}{} - -\RequirePackage{PJLlang} -\RequirePackage{amsmath,amsthm} -\RequirePackage{aliascnt} -\PassOptionsToPackage{nameinlink}{cleveref} -\RequirePackage{crefthe} - -\RequirePackage{xparse} -\RequirePackage{xstring} -\NewDocumentCommand{\NameTheorem}{omm}{% - \protected@edef\PJLthm@temp{#2}% - \expandafter\IfEndWith\expandafter{\PJLthm@temp}{*}{% - \expandafter\StrGobbleRight\expandafter{\PJLthm@temp}{1}[\PJLthm@temp]% - }{}% - \IfSubStr{\detokenize{#3}}{=}{% key-value mode - \IfValueTF{#1}{% - \CreateTheoremSetKeys{\PJLthm@temp}{#1={#3}}% - }{% - \CreateTheoremSetKeys{\PJLthm@temp}{#3}% - }% - }{% simple mode - \IfValueTF{#1}{% - \expandafter\def\csname\PJLthm@temp name\StrToABBR{#1}\endcsname{#3}% - }{% - \expandafter\def\csname\PJLthm@temp nameEN\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameFR\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameDE\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameIT\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp namePT\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameBR\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameES\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameCN\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameTC\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameJP\endcsname{#3}% - \expandafter\def\csname\PJLthm@temp nameRU\endcsname{#3}% - }% - }% -} - -\newcommand\PassFirstToSecond[2]{#2{#1}}% -\NewDocumentCommand{\CreateTheorem}{sm}{% - \begingroup - \protected@edef\PJLthm@temp{#2}% - \expandafter\IfEndWith\expandafter{\PJLthm@temp}{*}{% - \expandafter\StrGobbleRight\expandafter{\PJLthm@temp}{1}[\PJLthm@temp]% - \PassFirstToSecond{*}% - }{% - \PassFirstToSecond{}% - }% - {\expandafter\PassFirstToSecond% - \expandafter{\PJLthm@temp}{\endgroup\InnerCreateTheorem{#1}}}% -}% -\if@PJLthm@regionalref -\NewDocumentCommand{\InnerCreateTheorem}{mmmod<>d()g}{% - \IfBooleanTF{#1}{% - \IfValueTF{#4} - {\@firstoftwo} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}% - }{% - \IfValueTF{#4} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}{ - \@secondoftwo} - }% - {% - \GenericError{}% - {\string\CreateTheorem\space syntax error\on@line}{% - You cannot call the starred variant with optional argument,\MessageBreak - nor call the unstarred variant with several optional arguments.}% - {}% - }{% - \IfValueTF{#6}{% - \IfBooleanTF{#1}{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - {\newenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - }{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - {\newenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - } - }{% - \IfBooleanTF{#1}{% - \newtheorem*{#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname} - }{% - \IfValueTF{#5}{% - \newtheorem{PJL#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname}[#5]% - \newaliascnt{#2#3}{PJL#2#3}% - }{% - \IfValueTF{#4}{% - \newtheorem{PJL#2#3}[#4]{\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - }{% - \newtheorem{PJL#2#3}{\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - \newaliascnt{#2#3}{PJL#2#3}% - }% - }% - \ifcsname cref@PJL#2#3@name\endcsname\else% - \crefname{PJL#2#3}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - \fi% - \ifcsname Cref@PJL#2#3@name\endcsname\else% - \Crefname{PJL#2#3}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - {\csname#2name\csname\languagename ABBR\endcsname\endcsname}% - \fi% - \NewDocumentEnvironment{#2#3}{} - {\begin{PJL#2#3}} - {\end{PJL#2#3}} - }% - }% - }% - \IfValueTF{#7}{% - \NameTheorem{#2}{#7}% - }{}% -}% -\else -\NewDocumentCommand{\InnerCreateTheorem}{mmmod<>d()g}{% - \IfBooleanTF{#1}{% - \IfValueTF{#4} - {\@firstoftwo} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}% - }{% - \IfValueTF{#4} - {\IfValueTF{#5}{\@firstoftwo}{\@secondoftwo}}{ - \@secondoftwo} - }% - {% - \GenericError{}% - {\string\CreateTheorem\space syntax error\on@line}{% - You cannot call the starred variant with optional argument,\MessageBreak - nor call the unstarred variant with several optional arguments.}% - {% - Allowed usage:\MessageBreak\MessageBreak - \CreateTheorem*{(name of environment)}\MessageBreak - \CreateTheorem{(name of environment)}\MessageBreak - \CreateTheorem{(name of environment)}[(numbered like)]\MessageBreak - \CreateTheorem{(name of environment)}<(numbered within)>\MessageBreak - \CreateTheorem{(name of environment)}((existed environment))\MessageBreak - }% - }{% - \IfValueTF{#6}{% - \IfBooleanTF{#1}{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - {\newenvironment{#2#3}{\begin{#6*}}{\end{#6*}}}% - }{% - \ifcsmacro{#2#3}% - {\renewenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - {\newenvironment{#2#3}{\begin{#6}}{\end{#6}}}% - } - }{% - \IfBooleanTF{#1}{% - \if@PJLlang@enable@EN\expandafter\PassFirstToSecond\expandafter{\csname#2nameEN\endcsname}{\newtheorem*{#2EN#3}}\fi% - \if@PJLlang@enable@FR\expandafter\PassFirstToSecond\expandafter{\csname#2nameFR\endcsname}{\newtheorem*{#2FR#3}}\fi% - \if@PJLlang@enable@DE\expandafter\PassFirstToSecond\expandafter{\csname#2nameDE\endcsname}{\newtheorem*{#2DE#3}}\fi% - \if@PJLlang@enable@IT\expandafter\PassFirstToSecond\expandafter{\csname#2nameIT\endcsname}{\newtheorem*{#2IT#3}}\fi% - \if@PJLlang@enable@PT\expandafter\PassFirstToSecond\expandafter{\csname#2namePT\endcsname}{\newtheorem*{#2PT#3}}\fi% - \if@PJLlang@enable@BR\expandafter\PassFirstToSecond\expandafter{\csname#2nameBR\endcsname}{\newtheorem*{#2BR#3}}\fi% - \if@PJLlang@enable@ES\expandafter\PassFirstToSecond\expandafter{\csname#2nameES\endcsname}{\newtheorem*{#2ES#3}}\fi% - \if@PJLlang@enable@CN\expandafter\PassFirstToSecond\expandafter{\csname#2nameCN\endcsname}{\newtheorem*{#2CN#3}}\fi% - \if@PJLlang@enable@TC\expandafter\PassFirstToSecond\expandafter{\csname#2nameTC\endcsname}{\newtheorem*{#2TC#3}}\fi% - \if@PJLlang@enable@JP\expandafter\PassFirstToSecond\expandafter{\csname#2nameJP\endcsname}{\newtheorem*{#2JP#3}}\fi% - \if@PJLlang@enable@RU\expandafter\PassFirstToSecond\expandafter{\csname#2nameRU\endcsname}{\newtheorem*{#2RU#3}}\fi% - }{% - \IfValueTF{#5}{% - \newcounter{#2#3}[{#5}]% - \expandafter\renewcommand\expandafter*% - \csname the#2#3\expandafter\endcsname% - \expandafter{\csname the#5\endcsname.\arabic{#2#3}}% - }{% - \IfValueTF{#4} - {\newaliascnt{#2#3}{#4}} - {\newcounter{#2#3}}% - }% - %--------------------------------------------------------------- - \if@PJLlang@enable@EN\CreateTheoremNumberedLikeAliasCounter{#2}{EN}{#3}\fi% - \if@PJLlang@enable@FR\CreateTheoremNumberedLikeAliasCounter{#2}{FR}{#3}\fi% - \if@PJLlang@enable@DE\CreateTheoremNumberedLikeAliasCounter{#2}{DE}{#3}\fi% - \if@PJLlang@enable@IT\CreateTheoremNumberedLikeAliasCounter{#2}{IT}{#3}\fi% - \if@PJLlang@enable@PT\CreateTheoremNumberedLikeAliasCounter{#2}{PT}{#3}\fi% - \if@PJLlang@enable@BR\CreateTheoremNumberedLikeAliasCounter{#2}{BR}{#3}\fi% - \if@PJLlang@enable@ES\CreateTheoremNumberedLikeAliasCounter{#2}{ES}{#3}\fi% - \if@PJLlang@enable@CN\CreateTheoremNumberedLikeAliasCounter{#2}{CN}{#3}\fi% - \if@PJLlang@enable@TC\CreateTheoremNumberedLikeAliasCounter{#2}{TC}{#3}\fi% - \if@PJLlang@enable@JP\CreateTheoremNumberedLikeAliasCounter{#2}{JP}{#3}\fi% - \if@PJLlang@enable@RU\CreateTheoremNumberedLikeAliasCounter{#2}{RU}{#3}\fi% - %--------------------------------------------------------------- - }% - \NewDocumentEnvironment{#2#3}{} - {\csname#2\csname\languagename ABBR\endcsname#3\endcsname}% - {\csname end#2\csname\languagename ABBR\endcsname#3\endcsname}% - }% - }% - \IfValueTF{#7}{% - \NameTheorem{#2}{#7}% - }{}% -}% -\NewDocumentCommand{\CreateTheoremNumberedLikeAliasCounter}{mmm}{% - \newaliascnt{#1#2#3}{#1#3}% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}{\newtheorem{#1#2#3}[{#1#2#3}]}% - \aliascntresetthe{#1#2#3}% - \ifcsname cref@#1#2#3@name\endcsname\else% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {\crefname{#1#2#3}}% - }% - \fi% - \ifcsname Cref@#1#2#3@name\endcsname\else% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {% - \expandafter\PassFirstToSecond\expandafter{\csname#1name#2\endcsname}% - {\Crefname{#1#2#3}}% - }% - \fi% -}% -\fi - -\ExplSyntaxOn - -\cs_new:Nn \PJLthm_exchange_i_iii_ii:nnn { #1 {#3} {#2} } -\cs_new:Nn \__PJLthm_languageprefix: {} -\cs_new:Nn \__PJLthm_countername: {} - -\msg_new:nnnn {PJLthm} - {Undefined Language Dependent Specification Class} - {\token_to_str:N \CreateTheorem :\ Value\ `\tl_to_str:n{#2}'\ for\ invalid\ key\ `#1'.} - {Providing\ Language-dependent\ specifications\ for\ element\ `#1'\ is\ currently\ not\ implemented.} - - -\NewDocumentCommand \CreateTheoremSetKeys { mm } { - \cs_set:Nn \__PJLthm_countername: {#1} - \keyval_parse:nnn { \PJLthm_exchange_i_iii_ii:nnn { \PJLthm_setlanguagespecificparameters:nn } {} } - { \PJLthm_setlanguagespecificparameters:nn } - { #2 } -} - -\cs_new_protected:Nn \PJLthm_setlanguagespecificparameters:nn { - \cs_set:Nx \__PJLthm_languageprefix: {\StrToABBR{#1}} - \exp_args:No \tl_if_empty:nTF {\__PJLthm_languageprefix:} - { \msg_error:nn { PJLthm } - { No~language~"\exp_not:n{#1}"~defined } - }% - {% - \keys_set:nn { PJLthm } { #2 } - }% -}% - -\keys_define:nn { PJLthm } { - crefname.code:n = \cs_if_exist:NTF \crefname { - \ifbool{@PJLthm@regionalref}{ - \exp_args:Nx \PJLthm@setcrefinnername{PJL\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - \exp_args:Nx \PJLthm@setcrefname{PJL\__PJLthm_countername: } - }{ - \exp_args:Nx \crefname {\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - } - }{}, - crefname.value_required:n = true, - Crefname.code:n = \cs_if_exist:NTF \Crefname { - \ifbool{@PJLthm@regionalref}{ - \exp_args:Nx \PJLthm@setCrefinnername{PJL\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - \exp_args:Nx \PJLthm@setCrefname{PJL\__PJLthm_countername: } - }{ - \exp_args:Nx \Crefname {\__PJLthm_countername: \__PJLthm_languageprefix: }#1 - } - }{}, - Crefname.value_required:n = true, - name.code:n = \exp_args:Nx \cs_set:cpn {\__PJLthm_countername: name \__PJLthm_languageprefix:} {#1}, - name.value_required:n = true, - autorefname.code:n = \exp_args:Nx \cs_set:cpn {\__PJLthm_countername: \__PJLthm_languageprefix: autorefname} {#1}, - autorefname.value_required:n = true, - theoremheading.code:n= \exp_args:Nx \cs_set:cpn {\__PJLthm_countername: \__PJLthm_languageprefix: heading} {#1}, - theoremheading.value_required:n = true, - the.code:n= \exp_args:Nx \cs_set:cpn {the \__PJLthm_countername: \__PJLthm_languageprefix: } {#1}, - the.value_required:n = true, - % - % Define keys for more Language Dependent Specification Classes. - % - unknown.code:n = \msg_error:nnxx {PJLthm} - {Undefined Language Dependent Specification Class} - {\exp_args:No \exp_not:n \l_keys_key_str} - {\exp_not:n{#1}}, -} - -\ExplSyntaxOff - -\newcommand{\PJLthm@setcrefinnername}[3]{% - \expandafter\def\csname PJLthm@cref@#1@name\endcsname{#2}% - \expandafter\def\csname PJLthm@cref@#1@name@plural\endcsname{#3}% -} -\newcommand{\PJLthm@setCrefinnername}[3]{% - \expandafter\def\csname PJLthm@Cref@#1@name\endcsname{#2}% - \expandafter\def\csname PJLthm@Cref@#1@name@plural\endcsname{#3}% -} - -\newcommand{\PJLthm@setcrefname}[1]{% - \crefname{#1}% - {\csname PJLthm@cref@#1\csname\languagename ABBR\endcsname @name\endcsname}% - {\csname PJLthm@cref@#1\csname\languagename ABBR\endcsname @name@plural\endcsname}% -} -\newcommand{\PJLthm@setCrefname}[1]{% - \Crefname{#1}% - {\csname PJLthm@Cref@#1\csname\languagename ABBR\endcsname @name\endcsname}% - {\csname PJLthm@Cref@#1\csname\languagename ABBR\endcsname @name@plural\endcsname}% -} - -\ifbool{@PJLthm@complexname}{ - \NameTheorem{theorem}{ - EN = { - name = {Theorem}, - crefname = {theorem}{theorems}, - Crefname = {Theorem}{Theorems}, - }, - FR = { - name = {Théorème}, - crefname = {\crefthemark{le} théorème}{\crefthemark{les} théorèmes}, - Crefname = {Le théorème}{Les théorèmes}, - }, - DE = { - name = {Satz}, - crefname = {Satz}{Sätze}, - Crefname = {Satz}{Sätze}, - }, - IT = { - name = {Teorema}, - crefname = {\crefthemark{il} teorema}{\crefthemark{i} teoremi}, - Crefname = {Il teorema}{I teoremi}, - }, - PT = { - name = {Teorema}, - crefname = {\crefthemark{o} teorema}{\crefthemark{os} teoremas}, - Crefname = {O teorema}{Os teoremas}, - }, - BR = { - name = {Teorema}, - crefname = {\crefthemark{o} teorema}{\crefthemark{os} teoremas}, - Crefname = {O teorema}{Os teoremas}, - }, - ES = { - name = {Teorema}, - crefname = {\crefthemark{el} teorema}{los teoremas}, - Crefname = {El teorema}{Los teoremas}, - }, - CN = { - name = {定理}, - crefname = {定理}{定理}, - Crefname = {定理}{定理}, - }, - TC = { - name = {定理}, - crefname = {定理}{定理}, - Crefname = {定理}{定理}, - }, - JP = { - name = {定理}, - crefname = {定理}{定理}, - Crefname = {定理}{定理}, - }, - RU = { - name = {Теорема}, - crefname = {теорема}{теоремы}, - Crefname = {Теорема}{Теоремы}, - }, - } - \NameTheorem{lemma}{ - EN = { - name = {Lemma}, - crefname = {lemma}{Lemmas}, - Crefname = {Lemma}{Lemmas}, - }, - FR = { - name = {Lemme}, - crefname = {\crefthemark{le} lemme}{\crefthemark{les} lemmes}, - Crefname = {Le lemme}{Les lemmes}, - }, - DE = { - name = {Lemma}, - crefname = {Lemma}{Lemmata}, - Crefname = {Lemma}{Lemmata}, - }, - IT = { - name = {Lemma}, - crefname = {\crefthemark{il} lemma}{\crefthemark{i} lemmi}, - Crefname = {Il lemma}{I lemmi}, - }, - PT = { - name = {Lema}, - crefname = {\crefthemark{o} lema}{\crefthemark{os} lemas}, - Crefname = {O lema}{Os lemas}, - }, - BR = { - name = {Lema}, - crefname = {\crefthemark{o} lema}{\crefthemark{os} lemas}, - Crefname = {O lema}{Os lemas}, - }, - ES = { - name = {Lema}, - crefname = {\crefthemark{el} lema}{las lemas}, - Crefname = {El lema}{Las lemas}, - }, - CN = { - name = {引理}, - crefname = {引理}{引理}, - Crefname = {引理}{引理}, - }, - TC = { - name = {引理}, - crefname = {引理}{引理}, - Crefname = {引理}{引理}, - }, - JP = { - name = {補題}, - crefname = {補題}{補題}, - Crefname = {補題}{補題}, - }, - RU = { - name = {Лемма}, - crefname = {лемма}{леммы}, - Crefname = {Лемма}{Леммы}, - }, - } - \NameTheorem{proposition}{ - EN = { - name = {Proposition}, - crefname = {proposition}{propositions}, - Crefname = {Proposition}{Propositions}, - }, - FR = { - name = {Proposition}, - crefname = {\crefthemark{la} proposition}{\crefthemark{les} propositions}, - Crefname = {La proposition}{Les propositions}, - }, - DE = { - name = {Proposition}, - crefname = {Proposition}{Propositionen}, - Crefname = {Proposition}{Propositionen}, - }, - IT = { - name = {Proposizione}, - crefname = {\crefthemark{la} proposizione}{\crefthemark{le} proposte}, - Crefname = {La proposizione}{Le proposte}, - }, - PT = { - name = {Proposição}, - crefname = {\crefthemark{a} proposição}{\crefthemark{as} proposições}, - Crefname = {A proposição}{As proposições}, - }, - BR = { - name = {Proposição}, - crefname = {\crefthemark{a} proposição}{\crefthemark{as} proposições}, - Crefname = {A proposição}{As proposições}, - }, - ES = { - name = {Proposición}, - crefname = {la proposición}{las proposiciones}, - Crefname = {La proposición}{Las proposiciones}, - }, - CN = { - name = {命题}, - crefname = {命题}{命题}, - Crefname = {命题}{命题}, - }, - TC = { - name = {命題}, - crefname = {命題}{命題}, - Crefname = {命題}{命題}, - }, - JP = { - name = {命題}, - crefname = {命題}{命題}, - Crefname = {命題}{命題}, - }, - RU = { - name = {Предложение}, - crefname = {предложение}{предложения}, - Crefname = {Предложение}{Предложения}, - }, - } - \NameTheorem{corollary}{ - EN = { - name = {Corollary}, - crefname = {corollary}{corollaries}, - Crefname = {Corollary}{Corollaries}, - }, - FR = { - name = {Corollaire}, - crefname = {\crefthemark{le} corollaire}{\crefthemark{les} corollaires}, - Crefname = {Le corollaire}{Les corollaires}, - }, - DE = { - name = {Korollar}, - crefname = {Korollar}{Korollare}, - Crefname = {Korollar}{Korollare}, - }, - IT = { - name = {Corollario}, - crefname = {\crefthemark{il} corollario}{\crefthemark{i} corollari}, - Crefname = {Il corollario}{I corollari}, - }, - PT = { - name = {Corolário}, - crefname = {\crefthemark{o} corolário}{\crefthemark{os} corolários}, - Crefname = {O corolário}{Os corolários}, - }, - BR = { - name = {Corolário}, - crefname = {\crefthemark{o} corolário}{\crefthemark{os} corolários}, - Crefname = {O corolário}{Os corolários}, - }, - ES = { - name = {Corolario}, - crefname = {\crefthemark{el} corolario}{los corolarios}, - Crefname = {El corolario}{Los corolarios}, - }, - CN = { - name = {推论}, - crefname = {推论}{推论}, - Crefname = {推论}{推论}, - }, - TC = { - name = {推論}, - crefname = {推論}{推論}, - Crefname = {推論}{推論}, - }, - JP = { - name = {系}, - crefname = {系}{系}, - Crefname = {系}{系}, - }, - RU = { - name = {Следствие}, - crefname = {следствие}{следствия}, - Crefname = {Следствие}{Следствия}, - }, - } - \NameTheorem{property}{ - EN = { - name = {Property}, - crefname = {property}{properties}, - Crefname = {Property}{Properties}, - }, - FR = { - name = {Propriété}, - crefname = {\crefthemark{la} propriété}{\crefthemark{les} propriétés}, - Crefname = {La propriété}{Les propriétés}, - }, - DE = { - name = {Eigenschaft}, - crefname = {Eigenschaft}{Eigenschaften}, - Crefname = {Eigenschaft}{Eigenschaften}, - }, - IT = { - name = {Proprietà}, - crefname = {\crefthemark{la} proprietà}{\crefthemark{le} proprietà}, - Crefname = {La proprietà}{Le proprietà}, - }, - PT = { - name = {Propriedade}, - crefname = {\crefthemark{a} propriedade}{\crefthemark{as} propriedades}, - Crefname = {A propriedade}{As propriedades}, - }, - BR = { - name = {Propriedade}, - crefname = {\crefthemark{a} propriedade}{\crefthemark{as} propriedades}, - Crefname = {A propriedade}{As propriedades}, - }, - ES = { - name = {Propiedad}, - crefname = {la propiedad}{las propiedades}, - Crefname = {La propiedad}{Las propiedades}, - }, - CN = { - name = {性质}, - crefname = {性质}{性质}, - Crefname = {性质}{性质}, - }, - TC = { - name = {性質}, - crefname = {性質}{性質}, - Crefname = {性質}{性質}, - }, - JP = { - name = {性質}, - crefname = {性質}{性質}, - Crefname = {性質}{性質}, - }, - RU = { - name = {Имущество}, - crefname = {имущество}{имущества}, - Crefname = {Имущество}{Имущества}, - }, - } - \NameTheorem{fact}{ - EN = { - name = {Fact}, - crefname = {fact}{facts}, - Crefname = {Fact}{Facts}, - }, - FR = { - name = {Fait}, - crefname = {\crefthemark{le} fait}{\crefthemark{les} faits}, - Crefname = {Le fait}{Les faits}, - }, - DE = { - name = {Fakt}, - crefname = {Fakt}{Fakten}, - Crefname = {Fakt}{Fakten}, - }, - IT = { - name = {Fatto}, - crefname = {\crefthemark{il} fatto}{\crefthemark{i} fatti}, - Crefname = {Il fatto}{I fatti}, - }, - PT = { - name = {Facto}, - crefname = {\crefthemark{o} facto}{\crefthemark{os} factos}, - Crefname = {O facto}{Os factos}, - }, - BR = { - name = {Fato}, - crefname = {\crefthemark{o} fato}{\crefthemark{os} fatos}, - Crefname = {O fato}{Os fatos}, - }, - ES = { - name = {Hecho}, - crefname = {\crefthemark{el} hecho}{los hechos}, - Crefname = {El hecho}{Los hechos}, - }, - CN = { - name = {事实}, - crefname = {事实}{事实}, - Crefname = {事实}{事实}, - }, - TC = { - name = {事實}, - crefname = {事實}{事實}, - Crefname = {事實}{事實}, - }, - JP = { - name = {事実}, - crefname = {事実}{事実}, - Crefname = {事実}{事実}, - }, - RU = { - name = {Факт}, - crefname = {факт}{факты}, - Crefname = {Факт}{Факты}, - }, - } - \NameTheorem{conjecture}{ - EN = { - name = {Conjecture}, - crefname = {conjecture}{conjectures}, - Crefname = {Conjecture}{Conjectures}, - }, - FR = { - name = {Conjecture}, - crefname = {\crefthemark{la} conjecture}{\crefthemark{les} conjectures}, - Crefname = {La conjecture}{Les conjectures}, - }, - DE = { - name = {Vermutung}, - crefname = {Vermutung}{Vermutungen}, - Crefname = {Vermutung}{Vermutungen}, - }, - IT = { - name = {Congettura}, - crefname = {\crefthemark{la} congettura}{\crefthemark{le} congetture}, - Crefname = {La congettura}{Le congetture}, - }, - PT = { - name = {Conjetura}, - crefname = {\crefthemark{a} conjetura}{\crefthemark{as} conjeturas}, - Crefname = {A conjetura}{As conjeturas}, - }, - BR = { - name = {Conjectura}, - crefname = {\crefthemark{a} conjectura}{\crefthemark{as} conjecturas}, - Crefname = {A conjectura}{As conjecturas}, - }, - ES = { - name = {Conjetura}, - crefname = {la conjetura}{las conjeturas}, - Crefname = {La conjetura}{Las conjeturas}, - }, - CN = { - name = {猜想}, - crefname = {猜想}{猜想}, - Crefname = {猜想}{猜想}, - }, - TC = { - name = {猜想}, - crefname = {猜想}{猜想}, - Crefname = {猜想}{猜想}, - }, - JP = { - name = {予想}, - crefname = {予想}{予想}, - Crefname = {予想}{予想}, - }, - RU = { - name = {Гипотеза}, - crefname = {гипотеза}{гипотезы}, - Crefname = {Гипотеза}{Гипотезы}, - }, - } - \NameTheorem{definition}{ - EN = { - name = {Definition}, - crefname = {definition}{definitions}, - Crefname = {Definition}{Definitions}, - }, - FR = { - name = {Définition}, - crefname = {\crefthemark{la} définition}{\crefthemark{les} définitions}, - Crefname = {La définition}{Les définitions}, - }, - DE = { - name = {Definition}, - crefname = {Definition}{Definitionen}, - Crefname = {Definition}{Definitionen}, - }, - IT = { - name = {Definizione}, - crefname = {\crefthemark{la} definizione}{\crefthemark{le} definizioni}, - Crefname = {La definizione}{Le definizioni}, - }, - PT = { - name = {Definição}, - crefname = {\crefthemark{a} definição}{\crefthemark{as} definições}, - Crefname = {A definição}{As definições}, - }, - BR = { - name = {Definição}, - crefname = {\crefthemark{a} definição}{\crefthemark{as} definições}, - Crefname = {A definição}{As definições}, - }, - ES = { - name = {Definición}, - crefname = {la definición}{las definiciones}, - Crefname = {La definición}{Las definiciones}, - }, - CN = { - name = {定义}, - crefname = {定义}{定义}, - Crefname = {定义}{定义}, - }, - TC = { - name = {定義}, - crefname = {定義}{定義}, - Crefname = {定義}{定義}, - }, - JP = { - name = {定義}, - crefname = {定義}{定義}, - Crefname = {定義}{定義}, - }, - RU = { - name = {Определение}, - crefname = {определение}{определения}, - Crefname = {Определение}{Определения}, - }, - } - \NameTheorem{axiom}{ - EN = { - name = {Axiom}, - crefname = {axiom}{axioms}, - Crefname = {Axiom}{Axioms}, - }, - FR = { - name = {Axiome}, - crefname = {\crefthemark{l'}axiome}{\crefthemark{les} axiomes}, - Crefname = {L'axiome}{Les axiomes}, - }, - DE = { - name = {Axiom}, - crefname = {Axiom}{Axiome}, - Crefname = {Axiom}{Axiome}, - }, - IT = { - name = {Assioma}, - crefname = {\crefthemark{l'}assioma}{\crefthemark{gli} assiomi}, - Crefname = {L'assioma}{Gli assiomi}, - }, - PT = { - name = {Axioma}, - crefname = {\crefthemark{o} axioma}{\crefthemark{os} axiomas}, - Crefname = {O axioma}{Os axiomas}, - }, - BR = { - name = {Axioma}, - crefname = {\crefthemark{o} axioma}{\crefthemark{os} axiomas}, - Crefname = {O axioma}{Os axiomas}, - }, - ES = { - name = {Axioma}, - crefname = {\crefthemark{el} axioma}{los axiomas}, - Crefname = {El axioma}{Los axiomas}, - }, - CN = { - name = {公理}, - crefname = {公理}{公理}, - Crefname = {公理}{公理}, - }, - TC = { - name = {公理}, - crefname = {公理}{公理}, - Crefname = {公理}{公理}, - }, - JP = { - name = {公理}, - crefname = {公理}{公理}, - Crefname = {公理}{公理}, - }, - RU = { - name = {Аксиома}, - crefname = {аксиома}{аксиомы}, - Crefname = {Аксиома}{Аксиомы}, - }, - } - \NameTheorem{assumption}{ - EN = { - name = {Assumption}, - crefname = {assumption}{assumptions}, - Crefname = {Assumption}{Assumptions}, - }, - FR = { - name = {Supposition}, - crefname = {\crefthemark{la} supposition}{\crefthemark{les} suppositions}, - Crefname = {La supposition}{Les suppositions}, - }, - DE = { - name = {Annahme}, - crefname = {Annahme}{Annahmen}, - Crefname = {Annahme}{Annahmen}, - }, - IT = { - name = {Supposizione}, - crefname = {\crefthemark{la} supposizione}{\crefthemark{le} supposizioni}, - Crefname = {La supposizione}{Le supposizioni}, - }, - PT = { - name = {Suposição}, - crefname = {\crefthemark{a} suposição}{\crefthemark{as} suposições}, - Crefname = {A suposição}{As suposições}, - }, - BR = { - name = {Suposição}, - crefname = {\crefthemark{a} suposição}{\crefthemark{as} suposições}, - Crefname = {A suposição}{As suposições}, - }, - ES = { - name = {Suposición}, - crefname = {la suposición}{las suposiciones}, - Crefname = {La suposición}{Las suposiciones}, - }, - CN = { - name = {假定}, - crefname = {假定}{假定}, - Crefname = {假定}{假定}, - }, - TC = { - name = {假定}, - crefname = {假定}{假定}, - Crefname = {假定}{假定}, - }, - JP = { - name = {仮定}, - crefname = {仮定}{仮定}, - Crefname = {仮定}{仮定}, - }, - RU = { - name = {Предположение}, - crefname = {предположение}{предположения}, - Crefname = {Предположение}{Предположения}, - }, - } - \NameTheorem{convention}{ - EN = { - name = {Convention}, - crefname = {convention}{conventions}, - Crefname = {Convention}{Conventions}, - }, - FR = { - name = {Convention}, - crefname = {\crefthemark{la} convention}{\crefthemark{les} conventions}, - Crefname = {La convention}{Les conventions}, - }, - DE = { - name = {Konvention}, - crefname = {Konvention}{Konventionen}, - Crefname = {Konvention}{Konventionen}, - }, - IT = { - name = {Convenzione}, - crefname = {\crefthemark{la} convenzione}{\crefthemark{le} convenzioni}, - Crefname = {La convenzione}{Le convenzioni}, - }, - PT = { - name = {Convenção}, - crefname = {\crefthemark{a} convenção}{\crefthemark{as} convenções}, - Crefname = {A convenção}{As convenções}, - }, - BR = { - name = {Convenção}, - crefname = {\crefthemark{a} convenção}{\crefthemark{as} convenções}, - Crefname = {A convenção}{As convenções}, - }, - ES = { - name = {Convención}, - crefname = {la convención}{las convenciones}, - Crefname = {La convención}{Las convenciones}, - }, - CN = { - name = {约定}, - crefname = {约定}{约定}, - Crefname = {约定}{约定}, - }, - TC = { - name = {約定}, - crefname = {約定}{約定}, - Crefname = {約定}{約定}, - }, - JP = { - name = {慣例}, - crefname = {慣例}{慣例}, - Crefname = {慣例}{慣例}, - }, - RU = { - name = {Конвенция}, - crefname = {конвенция}{конвенции}, - Crefname = {Конвенция}{Конвенции}, - }, - } - \NameTheorem{hypothesis}{ - EN = { - name = {Hypothesis}, - crefname = {hypothesis}{hypotheses}, - Crefname = {Hypothesis}{Hypotheses}, - }, - FR = { - name = {Hypothèse}, - crefname = {\crefthemark{l'}hypothèse}{\crefthemark{les} hypothèses}, - Crefname = {L'hypothèse}{Les hypothèses}, - }, - DE = { - name = {Hypothese}, - crefname = {Hypothese}{Hypothesen}, - Crefname = {Hypothese}{Hypothesen}, - }, - IT = { - name = {Ipotesi}, - crefname = {\crefthemark{l'}ipotesi}{\crefthemark{le} ipotesi}, - Crefname = {L'ipotesi}{Le ipotesi}, - }, - PT = { - name = {Hipótese}, - crefname = {\crefthemark{a} hipótese}{\crefthemark{as} hipóteses}, - Crefname = {A hipótese}{As hipóteses}, - }, - BR = { - name = {Hipótese}, - crefname = {\crefthemark{a} hipótese}{\crefthemark{as} hipóteses}, - Crefname = {A hipótese}{As hipóteses}, - }, - ES = { - name = {Hipótesis}, - crefname = {la hipótesis}{las hipótesis}, - Crefname = {La hipótesis}{Las hipótesis}, - }, - CN = { - name = {假设}, - crefname = {假设}{假设}, - Crefname = {假设}{假设}, - }, - TC = { - name = {假設}, - crefname = {假設}{假設}, - Crefname = {假設}{假設}, - }, - JP = { - name = {仮設}, - crefname = {仮設}{仮設}, - Crefname = {仮設}{仮設}, - }, - RU = { - name = {Гипотеза}, - crefname = {гипотеза}{гипотезы}, - Crefname = {Гипотеза}{Гипотезы}, - }, - } - \NameTheorem{notation}{ - EN = { - name = {Notation}, - crefname = {notation}{notations}, - Crefname = {Notation}{Notations}, - }, - FR = { - name = {Notation}, - crefname = {\crefthemark{la} notation}{\crefthemark{les} notations}, - Crefname = {La notation}{Les notations}, - }, - DE = { - name = {Notation}, - crefname = {Notation}{Notationen}, - Crefname = {Notation}{Notationen}, - }, - IT = { - name = {Notazione}, - crefname = {\crefthemark{la} notazione}{\crefthemark{le} notazioni}, - Crefname = {La notazione}{Le notazioni}, - }, - PT = { - name = {Notação}, - crefname = {\crefthemark{a} notação}{\crefthemark{as} notações}, - Crefname = {A notação}{As notações}, - }, - BR = { - name = {Notação}, - crefname = {\crefthemark{a} notação}{\crefthemark{as} notações}, - Crefname = {A notação}{As notações}, - }, - ES = { - name = {Notación}, - crefname = {la notación}{las notaciones}, - Crefname = {La notación}{Las notaciones}, - }, - CN = { - name = {记号}, - crefname = {记号}{记号}, - Crefname = {记号}{记号}, - }, - TC = { - name = {記號}, - crefname = {記號}{記號}, - Crefname = {記號}{記號}, - }, - JP = { - name = {記法}, - crefname = {記法}{記法}, - Crefname = {記法}{記法}, - }, - RU = { - name = {Нотация}, - crefname = {нотация}{нотации}, - Crefname = {Нотация}{Нотации}, - }, - } - \NameTheorem{example}{ - EN = { - name = {Example}, - crefname = {example}{examples}, - Crefname = {Example}{Examples}, - }, - FR = { - name = {Exemple}, - crefname = {\crefthemark{l'}example}{\crefthemark{les} examples}, - Crefname = {L'example}{Les examples}, - }, - DE = { - name = {Beispiel}, - crefname = {Beispiel}{Beispiele}, - Crefname = {Beispiel}{Beispiele}, - }, - IT = { - name = {Esempio}, - crefname = {\crefthemark{l'}esempio}{\crefthemark{gli} esempi}, - Crefname = {L'esempio}{Gli esempi}, - }, - PT = { - name = {Exemplo}, - crefname = {\crefthemark{o} exemplo}{\crefthemark{os} exemplos}, - Crefname = {O exemplo}{Os exemplos}, - }, - BR = { - name = {Exemplo}, - crefname = {\crefthemark{o} exemplo}{\crefthemark{os} exemplos}, - Crefname = {O exemplo}{Os exemplos}, - }, - ES = { - name = {Ejemplo}, - crefname = {\crefthemark{el} ejemplo}{los ejemplos}, - Crefname = {El ejemplo}{Los ejemplos}, - }, - CN = { - name = {例}, - crefname = {例}{例}, - Crefname = {例}{例}, - }, - TC = { - name = {例}, - crefname = {例}{例}, - Crefname = {例}{例}, - }, - JP = { - name = {例}, - crefname = {例}{例}, - Crefname = {例}{例}, - }, - RU = { - name = {Пример}, - crefname = {пример}{примеры}, - Crefname = {Пример}{Примеры}, - }, - } - \NameTheorem{problem}{ - EN = { - name = {Problem}, - crefname = {problem}{problems}, - Crefname = {Problem}{Problems}, - }, - FR = { - name = {Problème}, - crefname = {\crefthemark{le} problème}{\crefthemark{les} problèmes}, - Crefname = {Le problème}{Les problèmes}, - }, - DE = { - name = {Problem}, - crefname = {Problem}{Probleme}, - Crefname = {Problem}{Probleme}, - }, - IT = { - name = {Problema}, - crefname = {\crefthemark{il} problema}{\crefthemark{i} problemi}, - Crefname = {Il problema}{I problemi}, - }, - PT = { - name = {Problema}, - crefname = {\crefthemark{o} problema}{\crefthemark{os} problemas}, - Crefname = {O problema}{Os problemas}, - }, - BR = { - name = {Problema}, - crefname = {\crefthemark{o} problema}{\crefthemark{os} problemas}, - Crefname = {O problema}{Os problemas}, - }, - ES = { - name = {Problema}, - crefname = {\crefthemark{el} problema}{los problemas}, - Crefname = {El problema}{Los problemas}, - }, - CN = { - name = {问题}, - crefname = {问题}{问题}, - Crefname = {问题}{问题}, - }, - TC = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - JP = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - RU = { - name = {Проблема}, - crefname = {проблема}{проблемы}, - Crefname = {Проблема}{Проблемы}, - }, - } - \NameTheorem{question}{ - EN = { - name = {Question}, - crefname = {question}{questions}, - Crefname = {Question}{Questions}, - }, - FR = { - name = {Question}, - crefname = {\crefthemark{la} question}{\crefthemark{les} questions}, - Crefname = {La question}{Les questions}, - }, - DE = { - name = {Frage}, - crefname = {Frage}{Fragen}, - Crefname = {Frage}{Fragen}, - }, - IT = { - name = {Domanda}, - crefname = {\crefthemark{la} domanda}{\crefthemark{le} domande}, - Crefname = {La domanda}{Le domande}, - }, - PT = { - name = {Pergunta}, - crefname = {\crefthemark{a} pergunta}{\crefthemark{as} perguntas}, - Crefname = {A pergunta}{As perguntas}, - }, - BR = { - name = {Pergunta}, - crefname = {\crefthemark{a} pergunta}{\crefthemark{as} perguntas}, - Crefname = {A pergunta}{As perguntas}, - }, - ES = { - name = {Pregunta}, - crefname = {la pregunta}{las preguntas}, - Crefname = {La pregunta}{Las preguntas}, - }, - CN = { - name = {问题}, - crefname = {问题}{问题}, - Crefname = {问题}{问题}, - }, - TC = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - JP = { - name = {問題}, - crefname = {問題}{問題}, - Crefname = {問題}{問題}, - }, - RU = { - name = {Вопрос}, - crefname = {вопрос}{вопросы}, - Crefname = {Вопрос}{Вопросы}, - }, - } - \NameTheorem{exercise}{ - EN = { - name = {Exercise}, - crefname = {exercise}{exercises}, - Crefname = {Exercise}{Exercises}, - }, - FR = { - name = {Exercice}, - crefname = {\crefthemark{l'}exercice}{\crefthemark{les} exercices}, - Crefname = {L'exercice}{Les exercices}, - }, - DE = { - name = {Übung}, - crefname = {Übung}{Übungen}, - Crefname = {Übung}{Übungen}, - }, - IT = { - name = {Esercizio}, - crefname = {\crefthemark{l'}esercizio}{\crefthemark{gli} esercizi}, - Crefname = {L'esercizio}{Gli esercizi}, - }, - PT = { - name = {Exercício}, - crefname = {\crefthemark{o} exercício}{\crefthemark{os} exercícios}, - Crefname = {O exercício}{Os exercícios}, - }, - BR = { - name = {Exercício}, - crefname = {\crefthemark{o} exercício}{\crefthemark{os} exercícios}, - Crefname = {O exercício}{Os exercícios}, - }, - ES = { - name = {Ejercicio}, - crefname = {\crefthemark{el} ejercicio}{los ejercicios}, - Crefname = {El ejercicio}{Los ejercicios}, - }, - CN = { - name = {练习}, - crefname = {练习}{练习}, - Crefname = {练习}{练习}, - }, - TC = { - name = {練習}, - crefname = {練習}{練習}, - Crefname = {練習}{練習}, - }, - JP = { - name = {練習}, - crefname = {練習}{練習}, - Crefname = {練習}{練習}, - }, - RU = { - name = {Упражнение}, - crefname = {упражнение}{упражнения}, - Crefname = {Упражнение}{Упражнения}, - }, - } - \NameTheorem{remark}{ - EN = { - name = {Remark}, - crefname = {remark}{remarks}, - Crefname = {Remark}{Remarks}, - }, - FR = { - name = {Remarque}, - crefname = {\crefthemark{la} remarque}{\crefthemark{les} remarques}, - Crefname = {La remarque}{Les remarques}, - }, - DE = { - name = {Bemerkung}, - crefname = {Bemerkung}{Bemerkungen}, - Crefname = {Bemerkung}{Bemerkungen}, - }, - IT = { - name = {Commento}, - crefname = {\crefthemark{il} commento}{\crefthemark{i} commenti}, - Crefname = {Il commento}{I commenti}, - }, - PT = { - name = {Comentário}, - crefname = {\crefthemark{o} comentário}{\crefthemark{os} comentários}, - Crefname = {O comentário}{Os comentários}, - }, - BR = { - name = {Comentário}, - crefname = {\crefthemark{o} comentário}{\crefthemark{os} comentários}, - Crefname = {O comentário}{Os comentários}, - }, - ES = { - name = {Comentario}, - crefname = {\crefthemark{el} comentario}{los comentarios}, - Crefname = {El comentario}{Los comentarios}, - }, - CN = { - name = {备注}, - crefname = {备注}{备注}, - Crefname = {备注}{备注}, - }, - TC = { - name = {備註}, - crefname = {備註}{備註}, - Crefname = {備註}{備註}, - }, - JP = { - name = {注釈}, - crefname = {注釈}{注釈}, - Crefname = {注釈}{注釈}, - }, - RU = { - name = {Замечание}, - crefname = {замечание}{замечания}, - Crefname = {Замечание}{Замечания}, - }, - } - \NameTheorem{observation}{ - EN = { - name = {Observation}, - crefname = {observation}{observations}, - Crefname = {Observation}{Observations}, - }, - FR = { - name = {Observation}, - crefname = {\crefthemark{la} observation}{\crefthemark{les} observations}, - Crefname = {La observation}{Les observations}, - }, - DE = { - name = {Beobachtung}, - crefname = {Beobachtung}{Beobachtungen}, - Crefname = {Beobachtung}{Beobachtungen}, - }, - IT = { - name = {Osservazione}, - crefname = {\crefthemark{l'}osservazione}{\crefthemark{le} osservazioni}, - Crefname = {L'osservazione}{Le osservazioni}, - }, - PT = { - name = {Observação}, - crefname = {\crefthemark{a} observação}{\crefthemark{as} observações}, - Crefname = {A observação}{As observações}, - }, - BR = { - name = {Observação}, - crefname = {\crefthemark{a} observação}{\crefthemark{as} observações}, - Crefname = {A observação}{As observações}, - }, - ES = { - name = {Observación}, - crefname = {la observación}{las observaciones}, - Crefname = {La observación}{Las observaciones}, - }, - CN = { - name = {观察}, - crefname = {观察}{观察}, - Crefname = {观察}{观察}, - }, - TC = { - name = {觀察}, - crefname = {觀察}{觀察}, - Crefname = {觀察}{觀察}, - }, - JP = { - name = {観察}, - crefname = {観察}{観察}, - Crefname = {観察}{観察}, - }, - RU = { - name = {Наблюдение}, - crefname = {наблюдение}{наблюдения}, - Crefname = {Наблюдение}{Наблюдения}, - }, - } - \NameTheorem{definition-proposition}{ - EN = { - name = {\definitionnameEN-\propositionnameEN}, - crefname = {definition-proposition}{definitions-propositions}, - Crefname = {Definition-proposition}{Definitions-propositions}, - }, - FR = { - name = {\definitionnameFR-\propositionnameFR}, - crefname = {\crefthemark{la} définition-proposition}{\crefthemark{les} définitions-propositions}, - Crefname = {La définition-proposition}{Les définitions-propositions}, - }, - DE = { - name = {\definitionnameDE-\propositionnameDE}, - crefname = {Definition-Proposition}{Definitionen-Propositionen}, - Crefname = {Definition-Proposition}{Definitionen-Propositionen}, - }, - IT = { - name = {\definitionnameIT-\propositionnameIT}, - crefname = {\crefthemark{la} definizione-proposizione}{\crefthemark{le} definizioni-proposte}, - Crefname = {La definizione-proposizione}{Le definizioni-proposte}, - }, - PT = { - name = {\definitionnamePT-\propositionnamePT}, - crefname = {\crefthemark{a} definição-proposição}{\crefthemark{as} definições-proposições}, - Crefname = {A definição-proposição}{As definições-proposições}, - }, - BR = { - name = {\definitionnameBR-\propositionnameBR}, - crefname = {\crefthemark{a} definição-proposição}{\crefthemark{as} definições-proposições}, - Crefname = {A definição-proposição}{As definições-proposições}, - }, - ES = { - name = {\definitionnameES-\propositionnameES}, - crefname = {la definición-proposición}{las definiciones-proposiciones}, - Crefname = {La definición-proposición}{Las definiciones-proposiciones}, - }, - CN = { - name = {\definitionnameCN-\propositionnameCN}, - crefname = {\definitionnameCN-\propositionnameCN}{\definitionnameCN-\propositionnameCN}, - Crefname = {\definitionnameCN-\propositionnameCN}{\definitionnameCN-\propositionnameCN}, - }, - TC = { - name = {\definitionnameTC-\propositionnameTC}, - crefname = {\definitionnameTC-\propositionnameTC}{\definitionnameTC-\propositionnameTC}, - Crefname = {\definitionnameTC-\propositionnameTC}{\definitionnameTC-\propositionnameTC}, - }, - JP = { - name = {\definitionnameJP-\propositionnameJP}, - crefname = {\definitionnameJP-\propositionnameJP}{\definitionnameJP-\propositionnameJP}, - Crefname = {\definitionnameJP-\propositionnameJP}{\definitionnameJP-\propositionnameJP}, - }, - RU = { - name = {\definitionnameRU-\propositionnameRU}, - crefname = {определение-предложение}{определения-предложения}, - Crefname = {Определение-предложение}{Определения-предложение}, - }, - } - \NameTheorem{definition-theorem}{ - EN = { - name = {\definitionnameEN-\theoremnameEN}, - crefname = {definition-theorem}{definitions-theorems}, - Crefname = {Definition-theorem}{Definitions-theorems}, - }, - FR = { - name = {\definitionnameFR-\theoremnameFR}, - crefname = {\crefthemark{la} définition-théorème}{\crefthemark{les} définitions-théorèmes}, - Crefname = {La définition-théorème}{Les définitions-théorèmes}, - }, - DE = { - name = {\definitionnameDE-\theoremnameDE}, - crefname = {Definition-Satz}{Definitionen-Sätze}, - Crefname = {Definition-Satz}{Definitionen-Sätze}, - }, - IT = { - name = {\definitionnameIT-\theoremnameIT}, - crefname = {\crefthemark{la} definizione-teorema}{\crefthemark{le} definizioni-teoremi}, - Crefname = {La definizione-teorema}{Le definizioni-teoremi}, - }, - PT = { - name = {\definitionnamePT-\theoremnamePT}, - crefname = {\crefthemark{a} definição-teorema}{\crefthemark{as} definições-teoremas}, - Crefname = {A definição-teorema}{As definições-teoremas}, - }, - BR = { - name = {\definitionnameBR-\theoremnameBR}, - crefname = {\crefthemark{a} definição-teorema}{\crefthemark{as} definições-teoremas}, - Crefname = {A definição-teorema}{As definições-teoremas}, - }, - ES = { - name = {\definitionnameES-\theoremnameES}, - crefname = {la definición-teorema}{las definiciones-teoremas}, - Crefname = {La definición-teorema}{Las definiciones-teoremas}, - }, - CN = { - name = {\definitionnameCN-\theoremnameCN}, - crefname = {\definitionnameCN-\theoremnameCN}{\definitionnameCN-\theoremnameCN}, - Crefname = {\definitionnameCN-\theoremnameCN}{\definitionnameCN-\theoremnameCN}, - }, - TC = { - name = {\definitionnameTC-\theoremnameTC}, - crefname = {\definitionnameTC-\theoremnameTC}{\definitionnameTC-\theoremnameTC}, - Crefname = {\definitionnameTC-\theoremnameTC}{\definitionnameTC-\theoremnameTC}, - }, - JP = { - name = {\definitionnameJP-\theoremnameJP}, - crefname = {\definitionnameJP-\theoremnameJP}{\definitionnameJP-\theoremnameJP}, - Crefname = {\definitionnameJP-\theoremnameJP}{\definitionnameJP-\theoremnameJP}, - }, - RU = { - name = {\definitionnameRU-\theoremnameRU}, - crefname = {определение-теорема}{определения-теоремы}, - Crefname = {Определение-теорема}{Определения-теорема}, - }, - } -}{ - \def\theoremnameEN{{Theorem}} - \def\lemmanameEN{{Lemma}} - \def\propositionnameEN{{Proposition}} - \def\corollarynameEN{{Corollary}} - \def\propertynameEN{{Property}} - \def\factnameEN{{Fact}} - \def\conjecturenameEN{{Conjecture}} - \def\definitionnameEN{{Definition}} - \def\axiomnameEN{{Axiom}} - \def\assumptionnameEN{{Assumption}} - \def\conventionnameEN{{Convention}} - \def\hypothesisnameEN{{Hypothesis}} - \def\notationnameEN{{Notation}} - \def\examplenameEN{{Example}} - \def\problemnameEN{{Problem}} - \def\questionnameEN{{Question}} - \def\exercisenameEN{{Exercise}} - \def\remarknameEN{{Remark}} - \def\observationnameEN{{Observation}} - \expandafter\def\csname definition-propositionnameEN\endcsname{\definitionnameEN-\propositionnameEN} - \expandafter\def\csname definition-theoremnameEN\endcsname{\definitionnameEN-\theoremnameEN} - - \def\theoremnameFR{{Théorème}} - \def\lemmanameFR{{Lemme}} - \def\propositionnameFR{{Proposition}} - \def\corollarynameFR{{Corollaire}} - \def\propertynameFR{{Propriété}} - \def\factnameFR{{Fait}} - \def\conjecturenameFR{{Conjecture}} - \def\definitionnameFR{{Définition}} - \def\axiomnameFR{{Axiome}} - \def\assumptionnameFR{{Supposition}} - \def\conventionnameFR{{Convention}} - \def\hypothesisnameFR{{Hypothèse}} - \def\notationnameFR{{Notation}} - \def\examplenameFR{{Exemple}} - \def\problemnameFR{{Problème}} - \def\questionnameFR{{Question}} - \def\exercisenameFR{{Exercice}} - \def\remarknameFR{{Remarque}} - \def\observationnameFR{{Observation}} - \expandafter\def\csname definition-propositionnameFR\endcsname{\definitionnameFR-\propositionnameFR} - \expandafter\def\csname definition-theoremnameFR\endcsname{\definitionnameFR-\theoremnameFR} - - \def\theoremnameDE{{Satz}} - \def\lemmanameDE{{Lemma}} - \def\propositionnameDE{{Proposition}} - \def\corollarynameDE{{Korollar}} - \def\propertynameDE{{Eigenschaft}} - \def\factnameDE{{Fakt}} - \def\conjecturenameDE{{Vermutung}} - \def\definitionnameDE{{Definition}} - \def\axiomnameDE{{Axiom}} - \def\assumptionnameDE{{Annahme}} - \def\conventionnameDE{{Konvention}} - \def\hypothesisnameDE{{Hypothese}} - \def\notationnameDE{{Notation}} - \def\examplenameDE{{Beispiel}} - \def\problemnameDE{{Problem}} - \def\questionnameDE{{Frage}} - \def\exercisenameDE{{Übung}} - \def\remarknameDE{{Bemerkung}} - \def\observationnameDE{{Beobachtung}} - \expandafter\def\csname definition-propositionnameDE\endcsname{\definitionnameDE-\propositionnameDE} - \expandafter\def\csname definition-theoremnameDE\endcsname{\definitionnameDE-\theoremnameDE} - - \def\theoremnameIT{{Teorema}} - \def\lemmanameIT{{Lemma}} - \def\propositionnameIT{{Proposizione}} - \def\corollarynameIT{{Corollario}} - \def\propertynameIT{{Proprietà}} - \def\factnameIT{{Fatto}} - \def\conjecturenameIT{{Congettura}} - \def\definitionnameIT{{Definizione}} - \def\axiomnameIT{{Assioma}} - \def\assumptionnameIT{{Supposizione}} - \def\conventionnameIT{{Convenzione}} - \def\hypothesisnameIT{{Ipotesi}} - \def\notationnameIT{{Notazione}} - \def\examplenameIT{{Esempio}} - \def\problemnameIT{{Problema}} - \def\questionnameIT{{Domanda}} - \def\exercisenameIT{{Esercizio}} - \def\remarknameIT{{Commento}} - \def\observationnameIT{{Osservazione}} - \expandafter\def\csname definition-propositionnameIT\endcsname{\definitionnameIT-\propositionnameIT} - \expandafter\def\csname definition-theoremnameIT\endcsname{\definitionnameIT-\theoremnameIT} - - \def\theoremnamePT{{Teorema}} - \def\lemmanamePT{{Lema}} - \def\propositionnamePT{{Proposição}} - \def\corollarynamePT{{Corolário}} - \def\propertynamePT{{Propriedade}} - \def\factnamePT{{Facto}} - \def\conjecturenamePT{{Conjetura}} - \def\definitionnamePT{{Definição}} - \def\axiomnamePT{{Axioma}} - \def\assumptionnamePT{{Suposição}} - \def\conventionnamePT{{Convenção}} - \def\hypothesisnamePT{{Hipótese}} - \def\notationnamePT{{Notação}} - \def\examplenamePT{{Exemplo}} - \def\problemnamePT{{Problema}} - \def\questionnamePT{{Pergunta}} - \def\exercisenamePT{{Exercício}} - \def\remarknamePT{{Comentário}} - \def\observationnamePT{{Observação}} - \expandafter\def\csname definition-propositionnamePT\endcsname{\definitionnamePT-\propositionnamePT} - \expandafter\def\csname definition-theoremnamePT\endcsname{\definitionnamePT-\theoremnamePT} - - \def\theoremnameBR{{Teorema}} - \def\lemmanameBR{{Lema}} - \def\propositionnameBR{{Proposição}} - \def\corollarynameBR{{Corolário}} - \def\propertynameBR{{Propriedade}} - \def\factnameBR{{Fato}} - \def\conjecturenameBR{{Conjectura}} - \def\definitionnameBR{{Definição}} - \def\axiomnameBR{{Axioma}} - \def\assumptionnameBR{{Suposição}} - \def\conventionnameBR{{Convenção}} - \def\hypothesisnameBR{{Hipótese}} - \def\notationnameBR{{Notação}} - \def\examplenameBR{{Exemplo}} - \def\problemnameBR{{Problema}} - \def\questionnameBR{{Pergunta}} - \def\exercisenameBR{{Exercício}} - \def\remarknameBR{{Comentário}} - \def\observationnameBR{{Observação}} - \expandafter\def\csname definition-propositionnameBR\endcsname{\definitionnameBR-\propositionnameBR} - \expandafter\def\csname definition-theoremnameBR\endcsname{\definitionnameBR-\theoremnameBR} - - \def\theoremnameES{{Teorema}} - \def\lemmanameES{{Lema}} - \def\propositionnameES{{Proposición}} - \def\corollarynameES{{Corolario}} - \def\propertynameES{{Propiedad}} - \def\factnameES{{Hecho}} - \def\conjecturenameES{{Conjetura}} - \def\definitionnameES{{Definición}} - \def\axiomnameES{{Axioma}} - \def\assumptionnameES{{Suposición}} - \def\conventionnameES{{Convención}} - \def\hypothesisnameES{{Hipótesis}} - \def\notationnameES{{Notación}} - \def\examplenameES{{Ejemplo}} - \def\problemnameES{{Problema}} - \def\questionnameES{{Pregunta}} - \def\exercisenameES{{Ejercicio}} - \def\remarknameES{{Comentario}} - \def\observationnameES{{Observación}} - \expandafter\def\csname definition-propositionnameES\endcsname{\definitionnameES-\propositionnameES} - \expandafter\def\csname definition-theoremnameES\endcsname{\definitionnameES-\theoremnameES} - - \def\theoremnameCN{{定理}} - \def\lemmanameCN{{引理}} - \def\propositionnameCN{{命题}} - \def\corollarynameCN{{推论}} - \def\propertynameCN{{性质}} - \def\factnameCN{{事实}} - \def\conjecturenameCN{{猜想}} - \def\definitionnameCN{{定义}} - \def\axiomnameCN{{公理}} - \def\assumptionnameCN{{假定}} - \def\conventionnameCN{{约定}} - \def\hypothesisnameCN{{假设}} - \def\notationnameCN{{记号}} - \def\examplenameCN{{例}} - \def\problemnameCN{{问题}} - \def\questionnameCN{{问题}} - \def\exercisenameCN{{练习}} - \def\remarknameCN{{备注}} - \def\observationnameCN{{观察}} - \expandafter\def\csname definition-propositionnameCN\endcsname{\definitionnameCN-\propositionnameCN} - \expandafter\def\csname definition-theoremnameCN\endcsname{\definitionnameCN-\theoremnameCN} - - \def\theoremnameTC{{定理}} - \def\lemmanameTC{{引理}} - \def\propositionnameTC{{命題}} - \def\corollarynameTC{{推論}} - \def\propertynameTC{{性質}} - \def\factnameTC{{事實}} - \def\conjecturenameTC{{猜想}} - \def\definitionnameTC{{定義}} - \def\axiomnameTC{{公理}} - \def\assumptionnameTC{{假定}} - \def\conventionnameTC{{約定}} - \def\hypothesisnameTC{{假設}} - \def\notationnameTC{{記號}} - \def\examplenameTC{{例}} - \def\problemnameTC{{問題}} - \def\questionnameTC{{問題}} - \def\exercisenameTC{{練習}} - \def\remarknameTC{{備註}} - \def\observationnameTC{{觀察}} - \expandafter\def\csname definition-propositionnameTC\endcsname{\definitionnameTC-\propositionnameTC} - \expandafter\def\csname definition-theoremnameTC\endcsname{\definitionnameTC-\theoremnameTC} - - \def\theoremnameJP{{定理}} - \def\lemmanameJP{{補題}} - \def\propositionnameJP{{命題}} - \def\corollarynameJP{{系}} - \def\propertynameJP{{性質}} - \def\factnameJP{{事実}} - \def\conjecturenameJP{{予想}} - \def\definitionnameJP{{定義}} - \def\axiomnameJP{{公理}} - \def\assumptionnameJP{{仮定}} - \def\conventionnameJP{{慣例}} - \def\hypothesisnameJP{{仮設}} - \def\notationnameJP{{記法}} - \def\examplenameJP{{例}} - \def\problemnameJP{{問題}} - \def\questionnameJP{{問題}} - \def\exercisenameJP{{練習}} - \def\remarknameJP{{注釈}} - \def\observationnameJP{{観察}} - \expandafter\def\csname definition-propositionnameJP\endcsname{\definitionnameJP-\propositionnameJP} - \expandafter\def\csname definition-theoremnameJP\endcsname{\definitionnameJP-\theoremnameJP} - - \def\theoremnameRU{{Теорема}} % Теоре́ма - \def\lemmanameRU{{Лемма}} % Ле́мма - \def\propositionnameRU{{Предложение}} % Предложе́ние - \def\corollarynameRU{{Следствие}} % Сле́дствие - \def\propertynameRU{{Имущество}} % Иму́щество - \def\factnameRU{{Факт}} - \def\conjecturenameRU{{Гипотеза}} % Гипо́теза % Конъектура Конъекту́ра - \def\definitionnameRU{{Определение}} % Определе́ние - \def\axiomnameRU{{Аксиома}} % Аксио́ма - \def\assumptionnameRU{{Предположение}} % Предположе́ние - \def\conventionnameRU{{Конвенция}} % Конве́нция - \def\hypothesisnameRU{{Гипотеза}} % Гипо́теза - \def\notationnameRU{{Нотация}} % Нота́ция - \def\examplenameRU{{Пример}} % Приме́р - \def\problemnameRU{{Проблема}} % Пробле́ма - \def\questionnameRU{{Вопрос}} % Вопро́с - \def\exercisenameRU{{Упражнение}} % Упражне́ние - \def\remarknameRU{{Замечание}} % Замеча́ние - \def\observationnameRU{{Наблюдение}} % Наблюде́ние - \expandafter\def\csname definition-propositionnameRU\endcsname{\definitionnameRU-\propositionnameRU} - \expandafter\def\csname definition-theoremnameRU\endcsname{\definitionnameRU-\theoremnameRU} -} - -\newif\ifPJLthm@IsBook -\ifdefined\c@chapter\PJLthm@IsBooktrue\else\PJLthm@IsBookfalse\fi -\ifbool{PJLthm@IsBook}{ - \newaliascnt{PJLthm@highest}{chapter} -}{ - \newaliascnt{PJLthm@highest}{section} -} -\NewDocumentCommand{\CreateTheorem@thmnum}{m}{ - \expandafter\ifstrempty\expandafter{\@PJLthm@thmnum}{ - \CreateTheorem{#1}<PJLthm@highest> - }{ - \expandafter\ifstrequal\expandafter{\@PJLthm@thmnum}{PJL@thmnum@default}{ - \CreateTheorem{#1} - }{ - \CreateTheorem{#1}<\@PJLthm@thmnum> - } - } -} - -\def\PJLthm@definethms{ -\if@PJLthm@nothms\else -\if@PJLthm@nothmnum -\CreateTheorem*{theorem} -\CreateTheorem*{lemma} -\CreateTheorem*{proposition} -\CreateTheorem*{corollary} -\CreateTheorem*{definition-proposition} -\CreateTheorem*{definition-theorem} -\CreateTheorem*{property} -\CreateTheorem*{fact} -\CreateTheorem*{conjecture} -\else -\CreateTheorem@thmnum{theorem} -\CreateTheorem{lemma}[theorem] -\CreateTheorem{proposition}[theorem] -\CreateTheorem{corollary}[theorem] -\CreateTheorem{definition-proposition}[theorem] -\CreateTheorem{definition-theorem}[theorem] -\CreateTheorem{property}[theorem] -\CreateTheorem{fact}[theorem] -\CreateTheorem{conjecture}[theorem] -\fi -\CreateTheorem*{theorem*} -\CreateTheorem*{lemma*} -\CreateTheorem*{proposition*} -\CreateTheorem*{corollary*} -\CreateTheorem*{definition-proposition*} -\CreateTheorem*{definition-theorem*} -\CreateTheorem*{property*} -\CreateTheorem*{fact*} -\CreateTheorem*{conjecture*} - -\theoremstyle{definition} -\if@PJLthm@nothmnum -\CreateTheorem*{definition} -\CreateTheorem*{axiom} -\CreateTheorem*{assumption} -\CreateTheorem*{convention} -\CreateTheorem*{hypothesis} -\CreateTheorem*{notation} -\CreateTheorem*{example} -\CreateTheorem*{problem} -\CreateTheorem*{question} -\CreateTheorem*{exercise} -\else -\CreateTheorem{definition}[theorem] -\CreateTheorem{axiom}[theorem] -\CreateTheorem{assumption}[theorem] -\CreateTheorem{convention}[theorem] -\CreateTheorem{hypothesis}[theorem] -\CreateTheorem{notation}[theorem] -\CreateTheorem{example}[theorem] -\CreateTheorem{problem}[theorem] -\CreateTheorem{question}[theorem] -\CreateTheorem{exercise}[theorem] -\fi -\CreateTheorem*{definition*} -\CreateTheorem*{axiom*} -\CreateTheorem*{assumption*} -\CreateTheorem*{convention*} -\CreateTheorem*{hypothesis*} -\CreateTheorem*{notation*} -\CreateTheorem*{example*} -\CreateTheorem*{problem*} -\CreateTheorem*{question*} -\CreateTheorem*{exercise*} - -\theoremstyle{remark} -\if@PJLthm@nothmnum -\CreateTheorem*{remark} -\CreateTheorem*{observation} -\else -\CreateTheorem@thmnum{remark} -\CreateTheorem@thmnum{observation} -\fi -\CreateTheorem*{remark*} -\CreateTheorem*{observation*} - -\theoremstyle{definition} -\fi - -\expandafter\ifstrempty\expandafter{\@PJLthm@thmnum}{ - \numberwithin{equation}{PJLthm@highest} -}{ - \expandafter\ifstrequal\expandafter{\@PJLthm@thmnum}{PJL@thmnum@default}{ - }{ - \numberwithin{equation}{\@PJLthm@thmnum} - } -} - -} % End of \PJLthm@definethms - -\if@PJLthm@delaythms - \AtEndPreamble{\PJLthm@definethms} -\else - \PJLthm@definethms -\fi - -\gappto{\PJLlang@langconfig@CN}{% - \crefname{equation}{式}{式}% - \crefname{figure}{图}{图}% - \crefname{table}{表}{表}% - \crefname{appendix}{附录}{附录}% - \Crefname{equation}{式}{式}% - \Crefname{figure}{图}{图}% - \Crefname{table}{表}{表}% - \Crefname{appendix}{附录}{附录}% - \def\crefpairconjunction{、}% - \def\crefmiddleconjunction{、}% - \def\creflastconjunction{~和~}% - \def\crefpairgroupconjunction{~和~}% - \def\crefmiddlegroupconjunction{、}% - \def\creflastgroupconjunction{~以及~}% - \def\crefrangeconjunction{~}% -} -\gappto{\PJLlang@langconfig@TC}{% - \crefname{equation}{式}{式}% - \crefname{figure}{圖}{圖}% - \crefname{table}{表}{表}% - \crefname{appendix}{附錄}{附錄}% - \Crefname{equation}{式}{式}% - \Crefname{figure}{圖}{圖}% - \Crefname{table}{表}{表}% - \Crefname{appendix}{附錄}{附錄}% - \def\crefpairconjunction{、}% - \def\crefmiddleconjunction{、}% - \def\creflastconjunction{~與~}% - \def\crefpairgroupconjunction{~與~}% - \def\crefmiddlegroupconjunction{、}% - \def\creflastgroupconjunction{~以及~}% - \def\crefrangeconjunction{~}% -} -\gappto{\PJLlang@langconfig@JP}{% - \crefname{equation}{式}{式}% - \crefname{figure}{図}{図}% - \crefname{table}{表}{表}% - \Crefname{appendix}{付録}{付録}% - \Crefname{equation}{式}{式}% - \Crefname{figure}{図}{図}% - \Crefname{table}{表}{表}% - \Crefname{appendix}{付録}{付録}% - \def\crefpairconjunction{~と~}% - \def\crefmiddleconjunction{~と~}% - \def\creflastconjunction{~と~}% - \def\crefpairgroupconjunction{~と~}% - \def\crefmiddlegroupconjunction{~と~}% - \def\creflastgroupconjunction{~及び~}% - \def\crefrangeconjunction{~}% -} -\gappto{\PJLlang@langconfig@RU}{% - \crefname{equation}{уравнение}{уравнения}% - \crefname{figure}{рис.}{рис.}% - \crefname{table}{таблица}{таблицы}% - \crefname{appendix}{приложение}{приложения}% - \Crefname{equation}{Уравнение}{Уравнения}% - \Crefname{figure}{Рис.}{Рис.}% - \Crefname{table}{Таблица}{Таблицы}% - \Crefname{appendix}{Приложение}{Приложения}% - \def\crefpairconjunction{~и~}% - \def\crefmiddleconjunction{,~}% - \def\creflastconjunction{~и~}% - \def\crefpairgroupconjunction{~и~}% - \def\crefmiddlegroupconjunction{,~}% - \def\creflastgroupconjunction{~и~}% - \def\crefrangeconjunction{~\textasciitilde~}% -} -\gappto{\PJLlang@langconfig@PT}{% - \crefname{equation}{eq.}{eqs.}% - \crefname{figure}{fig.}{figs.}% - \crefname{table}{tabela}{tabelas}% - \crefname{appendix}{apêndice}{apêndices}% - \Crefname{equation}{Eq.}{Eqs.}% - \Crefname{figure}{Fig.}{Figs.}% - \Crefname{table}{Tabela}{Tabelas}% - \Crefname{appendix}{Apêndice}{Apêndices}% - \def\crefpairconjunction{ e\nobreakspace}% - \def\crefmiddleconjunction{, }% - \def\creflastconjunction{ e\nobreakspace}% - \def\crefpairgroupconjunction{ e\nobreakspace}% - \def\crefmiddlegroupconjunction{, }% - \def\creflastgroupconjunction{ e\nobreakspace}% - \def\crefrangeconjunction{ a\nobreakspace}% -} - -\endinput -%% -%% End of file `PJLthm.sty'. diff --git a/macros/latex/contrib/projlib/old-modules/PJLtoolkit.sty b/macros/latex/contrib/projlib/old-modules/PJLtoolkit.sty deleted file mode 100644 index b11b34a2a7..0000000000 --- a/macros/latex/contrib/projlib/old-modules/PJLtoolkit.sty +++ /dev/null @@ -1,184 +0,0 @@ -%% -%% This is file `ProjLib.sty', -%% generated with the docstrip utility. - -%% Copyright (C) 2021 by Jinwen XU -%% -%% This is part of the ProjLib Toolkit. -%% -%% 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. The latest version of this license is in -%% -%% http://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. -%% -\NeedsTeXFormat{LaTeX2e}[2020-10-01] -\ProvidesPackage{PJLtoolkit} - [2021/12/16 The collective interface of ProjLib toolkit] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{ - family = @ProjLib, - prefix = @ProjLib@, -} -\DeclareBoolOption[false]{draft} -\DeclareBoolOption[false]{fast} -\DeclareBoolOption[false]{author} -\DeclareBoolOption[false]{amsfashion} -\DeclareBoolOption[false]{nothms} -\DeclareBoolOption[false]{delaythms} -\DeclareBoolOption[false]{nothmnum} -\DeclareStringOption{thmnum}[PJL@thmnum@default] -\DeclareBoolOption[true]{regionalref} -\DeclareBoolOption[false]{originalref} -\DeclareBoolOption[true]{complexname} -\DeclareBoolOption[false]{simplename} -\DeclareBoolOption[false]{useosf} -\DeclareBoolOption[false]{lmodern} -\DeclareBoolOption[false]{palatino} -\DeclareBoolOption[false]{times} -\DeclareBoolOption[false]{garamond} -\DeclareBoolOption[false]{noto} -\DeclareBoolOption[false]{biolinum} -\ProcessKeyvalOptions*\relax - -\if@ProjLib@originalref - \@ProjLib@regionalreffalse -\fi -\if@ProjLib@simplename - \@ProjLib@complexnamefalse -\fi -\if@ProjLib@draft - \@ProjLib@fasttrue -\fi - -\if@ProjLib@fast - \PassOptionsToPackage{fast}{PJLdate} - \PassOptionsToPackage{fast}{PJLdraft} - \PassOptionsToPackage{fast}{PJLlogo} - \PassOptionsToPackage{fast}{PJLthm} -\fi -\if@ProjLib@nothms - \PassOptionsToPackage{nothms}{PJLthm} -\fi -\if@ProjLib@delaythms - \PassOptionsToPackage{delaythms}{PJLthm} -\fi -\if@ProjLib@nothmnum - \PassOptionsToPackage{nothmnum}{PJLthm} -\fi -\expandafter\ifstrempty\expandafter{\@ProjLib@thmnum}{}{ - \expandafter\ifstrequal\expandafter{\@ProjLib@thmnum}{PJL@thmnum@default}{ - \PassOptionsToPackage{thmnum}{PJLthm} - }{ - \PassOptionsToPackage{thmnum=\@ProjLib@thmnum}{PJLthm} - } -} -\if@ProjLib@regionalref\else - \PassOptionsToPackage{originalref}{PJLthm} -\fi -\if@ProjLib@complexname\else - \PassOptionsToPackage{simplename}{PJLthm} -\fi - -\if@ProjLib@amsfashion - \PassOptionsToPackage{amsfashion}{PJLauthor} - \RequirePackage{PJLauthor} -\fi -\if@ProjLib@author - \RequirePackage{PJLauthor} -\fi -\RequirePackage{PJLdate} -\RequirePackage{PJLdraft} -\RequirePackage{PJLlogo} -\RequirePackage{PJLmath} -\RequirePackage{PJLpaper} -\RequirePackage{PJLthm} - -\ifdefined\PJL@font@alreadyset\else - -\if@ProjLib@lmodern - \RequirePackage{amssymb} - \if@ProjLib@useosf - \RequirePackage{cfr-lm} - \else - \RequirePackage{lmodern} - \fi - \PJLsetlinespacing{\setstretch{1.00}} -\fi - -\if@ProjLib@palatino - % \RequirePackage{amssymb} - \RequirePackage{mathpazo} - \PassOptionsToPackage{defaultsups}{newpxtext} - \RequirePackage{newpxtext} - % \RequirePackage{newpxmath} - \let\openbox\relax - \PJLsetlinespacing{\setstretch{1.07}} - \if@ProjLib@useosf\useosf\fi -\fi - -\if@ProjLib@times - % \RequirePackage{amssymb} - \PassOptionsToPackage{defaultsups}{newtxtext} - \RequirePackage{newtxtext} - \RequirePackage{newtxmath} - \let\openbox\relax - \PJLsetlinespacing{\setstretch{1.00}} - \if@ProjLib@useosf\useosf\fi -\fi - -\if@ProjLib@garamond - % \RequirePackage{amssymb} - \if@ProjLib@useosf\else - \PassOptionsToPackage{lining}{ebgaramond} - \fi - \RequirePackage{ebgaramond-maths} - \RequirePackage{ebgaramond} - % \RequirePackage{garamondlibre} - \PJLsetlinespacing{\setstretch{1.00}} -\fi - -\if@ProjLib@noto - \if@ProjLib@useosf - \PassOptionsToPackage{oldstyle}{notomath} - \fi - \RequirePackage{anyfontsize} - \RequirePackage{notomath} - \PJLsetlinespacing{\setstretch{1.00}} -\fi - -\if@ProjLib@biolinum - % \RequirePackage{amssymb} - % \RequirePackage{mathpazo} - % \RequirePackage[sansmath]{libertinust1math} - \ifPDFTeX - \if@ProjLib@useosf - \PassOptionsToPackage{osf}{biolinum} - \fi - \RequirePackage{biolinum} - \renewcommand*\familydefault{\biolinum@family} - \else - \PassOptionsToPackage{no-math}{fontspec} - \RequirePackage{fontspec} - \setmainfont{LinBiolinum_R.otf}[ - BoldFont = LinBiolinum_RB.otf , - ItalicFont = LinBiolinum_RI.otf , - BoldItalicFont = LinBiolinum_RBO.otf, - \if@ProjLib@useosf Numbers = OldStyle\fi ] - \fi - \PJLsetlinespacing{\setstretch{1.05}} - \RequirePackage[italic,defaultmathsizes]{mathastext} -\fi - -\fi - -\WarningFilter{microtype}{Unable} -\RequirePackage{microtype} - -\endinput -%% -%% End of file `ProjLib.sty'. diff --git a/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf b/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf Binary files differindex bba3284dd7..e5c6359089 100644 --- a/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf +++ b/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.pdf diff --git a/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex b/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex index 04a0e75adf..39819feb11 100644 --- a/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex +++ b/macros/unicodetex/latex/beaulivre/beaulivre-doc-cn.tex @@ -1,6 +1,5 @@ \documentclass[English,Chinese,French,JP,TC,use boldface,simple name]{beaulivre} - %%================================ %% Import toolkit %%================================ @@ -92,23 +91,20 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \frontmatter -\begin{titlepage} % Suppresses displaying the page number on the title page and the subsequent page counts as page 1 -\begin{tikzpicture}[overlay,remember picture] - \fill [forestgreen!75!black] ($(current page.south west)$) rectangle ($(current page.north east)+(0,-7)$); - \fill [forestgreen!10!yellow!30] ($(current page.south west)$) rectangle ($(current page.north west)+(2.5,-7)$); - \fill [forestgreen!75!black] ($(current page.north west)$) rectangle ($(current page.north west)+(2.5,-7)$); - \fill [forestgreen!10!yellow!30] ($(current page.north east)$) rectangle ($(current page.north west)+(2.5,-7)$); - \node[text width=10cm] at ($(current page.north west)+(8.5,-6)$) {\huge\ProjLib}; - \node[text width=6cm,text height=3.5cm,scale=2.5] at ($(current page.north west)+(11,-9)$) {\textcolor{forestgreen!10!yellow!30}{\sffamily\beaulivre{}\\[5pt]\footnotesize\hspace*{-.05em}以多彩的方式排版你的图书\\[10pt]\tiny 对应版本. \texttt{\beaulivre{} \PackageVersion}}}; - \node[text width=15em] at ($(current page.south)+(5,4)$) {\color{forestgreen!10!yellow!30}\hfill\fontsize{16pt}{0pt}\selectfont{许锦文}\\[1em]\hfill\fontsize{12pt}{0pt}\selectfont\TheDate{\PackageVersion}[only-year-month],巴黎}; -\end{tikzpicture}% -\end{titlepage}% - -\setcounter{page}{0} +\TitlePage [ color = { main = forestgreen!75!black, back = forestgreen!10!yellow!30 } ] + { + , title = \beaulivre{} + , subtitle = { + \textsc{以多彩的方式排版你的图书}\\[10pt] + \tiny 对应版本. \texttt{\beaulivre{} \PackageVersion} + } + , author = 许锦文 + , date = {\TheDate{\PackageVersion}[only-year-month],巴黎} + } \chapter{前言} diff --git a/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf b/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf Binary files differindex fed476e1db..50a11df329 100644 --- a/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf +++ b/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.pdf diff --git a/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex b/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex index 32892aba4a..790879cf5d 100644 --- a/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex +++ b/macros/unicodetex/latex/beaulivre/beaulivre-doc-en.tex @@ -1,6 +1,5 @@ \documentclass[English,Chinese,French,JP,TC,use boldface,simple name]{beaulivre} - %%================================ %% Import toolkit %%================================ @@ -92,23 +91,20 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \frontmatter -\begin{titlepage} % Suppresses displaying the page number on the title page and the subsequent page counts as page 1 -\begin{tikzpicture}[overlay,remember picture] - \fill [forestgreen!75!black] ($(current page.south west)$) rectangle ($(current page.north east)+(0,-7)$); - \fill [forestgreen!10!yellow!30] ($(current page.south west)$) rectangle ($(current page.north west)+(2.5,-7)$); - \fill [forestgreen!75!black] ($(current page.north west)$) rectangle ($(current page.north west)+(2.5,-7)$); - \fill [forestgreen!10!yellow!30] ($(current page.north east)$) rectangle ($(current page.north west)+(2.5,-7)$); - \node[text width=10cm] at ($(current page.north west)+(8.5,-6)$) {\huge\ProjLib}; - \node[text width=6cm,text height=3.5cm,scale=2.5] at ($(current page.north west)+(11,-9)$) {\textcolor{forestgreen!10!yellow!30}{\sffamily\beaulivre{}\\[5pt]\footnotesize\textsc{Write your books in \\a colorful way}\\[10pt]\tiny Corresponding to: \texttt{\beaulivre{} \PackageVersion}}}; - \node[text width=15em] at ($(current page.south)+(5,4)$) {\color{forestgreen!10!yellow!30}\hfill\fontsize{16pt}{0pt}\selectfont{\scshape Jinwen XU}\\[1em]\hfill\fontsize{12pt}{0pt}\selectfont\TheDate{\PackageVersion}[only-year-month], in Paris}; -\end{tikzpicture}% -\end{titlepage}% - -\setcounter{page}{0} +\TitlePage [ color = { main = forestgreen!75!black, back = forestgreen!10!yellow!30 } ] + { + , title = \beaulivre{} + , subtitle = { + \textsc{Write your books in \\a colorful way}\\[10pt] + \tiny Corresponding to: \texttt{\beaulivre{} \PackageVersion} + } + , author = Jinwen XU + , date = {\TheDate{\PackageVersion}[only-year-month], in Paris} + } \chapter{Preface} diff --git a/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf b/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf Binary files differindex a28199bffc..c57f8cebc8 100644 --- a/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf +++ b/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.pdf diff --git a/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex b/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex index 320e0d72f4..0c8439d562 100644 --- a/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex +++ b/macros/unicodetex/latex/beaulivre/beaulivre-doc-fr.tex @@ -1,6 +1,5 @@ \documentclass[English,Chinese,French,JP,TC,use boldface,simple name]{beaulivre} - %%================================ %% Import toolkit %%================================ @@ -92,23 +91,20 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \frontmatter -\begin{titlepage} % Suppresses displaying the page number on the title page and the subsequent page counts as page 1 -\begin{tikzpicture}[overlay,remember picture] - \fill [forestgreen!75!black] ($(current page.south west)$) rectangle ($(current page.north east)+(0,-7)$); - \fill [forestgreen!10!yellow!30] ($(current page.south west)$) rectangle ($(current page.north west)+(2.5,-7)$); - \fill [forestgreen!75!black] ($(current page.north west)$) rectangle ($(current page.north west)+(2.5,-7)$); - \fill [forestgreen!10!yellow!30] ($(current page.north east)$) rectangle ($(current page.north west)+(2.5,-7)$); - \node[text width=10cm] at ($(current page.north west)+(8.5,-6)$) {\huge\ProjLib}; - \node[text width=6cm,text height=3.5cm,scale=2.5] at ($(current page.north west)+(11,-9)$) {\textcolor{forestgreen!10!yellow!30}{\sffamily\beaulivre{}\\[5pt]\footnotesize\textsc{Écrivez vos livres \\de manière colorée}\\[10pt]\tiny Correspondant à : \texttt{\beaulivre{} \PackageVersion}}}; - \node[text width=15em] at ($(current page.south)+(5,4)$) {\color{forestgreen!10!yellow!30}\hfill\fontsize{16pt}{0pt}\selectfont{\scshape Jinwen XU}\\[1em]\hfill\fontsize{12pt}{0pt}\selectfont\TheDate{\PackageVersion}[only-year-month], à Paris}; -\end{tikzpicture}% -\end{titlepage}% - -\setcounter{page}{0} +\TitlePage [ color = { main = forestgreen!75!black, back = forestgreen!10!yellow!30 } ] + { + , title = \beaulivre{} + , subtitle = { + \textsc{Écrivez vos livres \\de manière colorée}\\[10pt] + \tiny Correspondant à : \texttt{\beaulivre{} \PackageVersion} + } + , author = Jinwen XU + , date = {\TheDate{\PackageVersion}[only-year-month], à Paris} + } \chapter{Préface} diff --git a/macros/unicodetex/latex/beaulivre/beaulivre.cls b/macros/unicodetex/latex/beaulivre/beaulivre.cls index d90f081dca..b56b03e2b9 100644 --- a/macros/unicodetex/latex/beaulivre/beaulivre.cls +++ b/macros/unicodetex/latex/beaulivre/beaulivre.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {beaulivre} - {2022/03/19} {} + {2022/03/28} {} {A colorful book style} \tl_const:Nn \l__colorclass_base_class_tl { book } @@ -548,51 +548,39 @@ \PassOptionsToPackage { warnings-off = { mathtools-colon, mathtools-overbracket } } { unicode-math } \RequirePackage { unicode-math } \unimathsetup { math-style = ISO, partial = upright, nabla = upright } - \setmathfont { Asana-Math.otf } + \setmathfont { KpMath-Regular.otf } + \setmathfont { KpMath-Sans.otf } + [ + range = { \sum, \prod, \coprod } + ] \__colorclass_if_font_exist:nnn { Neo~Euler } { \setmathfont { Neo~Euler } [ range = { up / { Latin, latin, Greek, greek }, bfup / { Latin, latin, Greek, greek }, - cal, bfcal, frak, bffrak, - `(, `), `[, `], `\{, `\}, `:, `=, \ne, \equiv, `/, \backslash, - \in, \notin, \ni, \subset, \supset, \subseteq, \supseteq, - \rightarrow, \leftarrow, \leftrightarrow, - \longleftarrow, \longrightarrow, \longleftrightarrow, - \Leftarrow, \Rightarrow, \Leftrightarrow, - \Longleftarrow, \Longrightarrow, \Longleftrightarrow, - \nrightarrow, \nleftarrow, \nleftrightarrow, - \nLeftarrow, \nRightarrow, \nLeftrightarrow, - \mapsto, \hookrightarrow, \hookleftarrow, - \leftharpoonup, \rightharpoonup, \leftharpoondown, \rightharpoondown, - \rightleftharpoons, \leftrightharpoons, - \sum, \prod, \coprod, - \sqrt, \int, \iint, \iiint, \oint + `(, `), `[, `], `\{, `\} }, - script-features = {}, - sscript-features = {}, Scale = 1.05, ] }{} \setmathfont { latinmodern-math.otf } [ - range = { \leq, \geq, \ll, \gg, \lll, \ggg, \leqslant, \geqslant }, - Scale = 0.95, + range = { cal, bfcal, frak, bffrak } ] \setmathfont { texgyrepagella-math.otf } [ - range = { up / num, bfup / num } + range = { it / { Latin, latin }, bfit / { Latin, latin }, up / num, bfup / num } ] \hook_gput_code:nnn { begindocument } { colorclass } { \NewCommandCopy \colorclass_backup_mid: \mid \RenewDocumentCommand \mid {} - { \skip_horizontal:n {-.15em} \colorclass_backup_mid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \colorclass_backup_mid: \skip_horizontal:n {-.1em} } \NewCommandCopy \colorclass_backup_nmid: \nmid \RenewDocumentCommand \nmid {} - { \skip_horizontal:n {-.15em} \colorclass_backup_nmid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \colorclass_backup_nmid: \skip_horizontal:n {-.1em} } } \RequirePackage { tikz-cd } @@ -607,10 +595,10 @@ \hbox_set:Nn \l__colorclass_xarrows_below_box { \ensuremath { \scriptstyle #1 } } \hbox_set:Nn \l__colorclass_xarrows_above_box { \ensuremath { \scriptstyle #2 } } \dim_set:Nn \l__colorclass_xarrows_length_dim - { \dim_eval:n { \dim_max:nn { \box_wd:N \l__colorclass_xarrows_below_box } { \box_wd:N \l__colorclass_xarrows_above_box } + .8em } } + { \dim_eval:n { \dim_max:nn { \box_wd:N \l__colorclass_xarrows_below_box } { \box_wd:N \l__colorclass_xarrows_above_box } + 1em } } \mathrel { - \tikz [ #3, baseline = -.55ex, every~node/.style = { inner~sep = 0pt } ] + \tikz [ #3, line~width = .6pt, baseline = -.5ex, every~node/.style = { inner~sep = 0pt }, >={Stealth[round,length=3.4pt,width=6.15pt,inset=2.25pt]} ] \draw (0,0) #4 node [ below = 3pt ] { \box_use:N \l__colorclass_xarrows_below_box } node [ above = 2pt ] { \box_use:N \l__colorclass_xarrows_above_box } diff --git a/macros/unicodetex/latex/einfart/einfart-doc-cn.pdf b/macros/unicodetex/latex/einfart/einfart-doc-cn.pdf Binary files differindex bbd317afb0..9496bb9c42 100644 --- a/macros/unicodetex/latex/einfart/einfart-doc-cn.pdf +++ b/macros/unicodetex/latex/einfart/einfart-doc-cn.pdf diff --git a/macros/unicodetex/latex/einfart/einfart-doc-cn.tex b/macros/unicodetex/latex/einfart/einfart-doc-cn.tex index d84fda88a6..eac43ce78a 100644 --- a/macros/unicodetex/latex/einfart/einfart-doc-cn.tex +++ b/macros/unicodetex/latex/einfart/einfart-doc-cn.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,7 +95,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{\einfart{},以极简主义风格排版你的文章} \author{许锦文} @@ -339,7 +338,6 @@ Référence du théorème: \cref{thm:abc} \begin{itemize} \item 允许加粗。启用这一选项时,题目、各级标题、定理类环境名称会被加粗。 \end{itemize} -% \clearpage \item \texttt{classical} \begin{itemize} \item 经典模式。使用这一选项时,将会启用较为古色古香的风格,如同当前的这篇说明文档一样。 @@ -522,7 +520,6 @@ Référence du théorème: \cref{thm:abc} \LevelThreeTitle{关于QED符号} 由于定理类环境中的字体和正文字体是一样的,为了方便看出定理类环境在哪里结束,在其结尾处放置了一个空心的QED符号。然而,如果你的定理是由公式或者列表结尾的,这个符号就无法自动地放在正确的位置。这时,你需要手动在公式或列表最后一个条目的后面加上 \lstinline|\qedhere|,以让QED符号显示到这一行的最后。 -% \clearpage \LevelOneTitle{目前存在的问题} \begin{itemize}[itemsep=.6em] diff --git a/macros/unicodetex/latex/einfart/einfart-doc-en.pdf b/macros/unicodetex/latex/einfart/einfart-doc-en.pdf Binary files differindex 730b210a87..64be68fff9 100644 --- a/macros/unicodetex/latex/einfart/einfart-doc-en.pdf +++ b/macros/unicodetex/latex/einfart/einfart-doc-en.pdf diff --git a/macros/unicodetex/latex/einfart/einfart-doc-en.tex b/macros/unicodetex/latex/einfart/einfart-doc-en.tex index 357dba6cf1..03e6b6056f 100644 --- a/macros/unicodetex/latex/einfart/einfart-doc-en.tex +++ b/macros/unicodetex/latex/einfart/einfart-doc-en.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,7 +95,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{\einfart{}, write your articles in a simple and clear way} \author{Jinwen XU} @@ -340,7 +339,6 @@ In addition, Source Code Pro is used as the English sans serif font, New Compute \begin{itemize} \item Allow boldface. When this option is enabled, the main title, the titles of all levels and the names of theorem-like environments will be bolded. \end{itemize} -% \clearpage \item \texttt{classical} \begin{itemize} \item Classic mode. An antique-looking style will be used when this option is enabled, like in the current documentation. @@ -517,7 +515,6 @@ In \lstinline|\section| or \lstinline|\subsection| , if you wish to add footnote This is a disadvantage brought about by the underline decoration of the title. -% \clearpage \LevelOneTitle{Known issues} \begin{itemize}[itemsep=.6em] diff --git a/macros/unicodetex/latex/einfart/einfart-doc-fr.pdf b/macros/unicodetex/latex/einfart/einfart-doc-fr.pdf Binary files differindex 2e8d62530d..16dc2c0b41 100644 --- a/macros/unicodetex/latex/einfart/einfart-doc-fr.pdf +++ b/macros/unicodetex/latex/einfart/einfart-doc-fr.pdf diff --git a/macros/unicodetex/latex/einfart/einfart-doc-fr.tex b/macros/unicodetex/latex/einfart/einfart-doc-fr.tex index 33fa9c30c1..126ad83f68 100644 --- a/macros/unicodetex/latex/einfart/einfart-doc-fr.tex +++ b/macros/unicodetex/latex/einfart/einfart-doc-fr.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,7 +95,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{\einfart{}, écrivez vos articles de manière simple et claire} \author{Jinwen XU} @@ -366,7 +365,6 @@ De plus, Source Code Pro est utilisé comme police anglaise sans empattement, Ne \end{itemize} \end{itemize} -% \clearpage \LevelOneTitle{Instructions par sujet} \LevelTwoTitle{Configurer la langue} @@ -500,7 +498,6 @@ Les informations sur l'auteur peuvent contenir plusieurs groupes, écrits comme Parmi eux, l'ordre mutuel de \lstinline|\address|, \lstinline|\curraddr|, \lstinline|\email| n'est pas important. -% \clearpage \LevelTwoTitle{Divers} \LevelThreeTitle{Les numéros de ligne} diff --git a/macros/unicodetex/latex/einfart/einfart.cls b/macros/unicodetex/latex/einfart/einfart.cls index 1700e3a245..c56165e6b9 100644 --- a/macros/unicodetex/latex/einfart/einfart.cls +++ b/macros/unicodetex/latex/einfart/einfart.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {einfart} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear article style} \tl_const:Nn \l__minimclass_base_class_tl { article } @@ -568,51 +568,39 @@ \PassOptionsToPackage { warnings-off = { mathtools-colon, mathtools-overbracket } } { unicode-math } \RequirePackage { unicode-math } \unimathsetup { math-style = ISO, partial = upright, nabla = upright } - \setmathfont { Asana-Math.otf } + \setmathfont { KpMath-Regular.otf } + \setmathfont { KpMath-Sans.otf } + [ + range = { \sum, \prod, \coprod } + ] \__minimclass_if_font_exist:nnn { Neo~Euler } { \setmathfont { Neo~Euler } [ range = { up / { Latin, latin, Greek, greek }, bfup / { Latin, latin, Greek, greek }, - cal, bfcal, frak, bffrak, - `(, `), `[, `], `\{, `\}, `:, `=, \ne, \equiv, `/, \backslash, - \in, \notin, \ni, \subset, \supset, \subseteq, \supseteq, - \rightarrow, \leftarrow, \leftrightarrow, - \longleftarrow, \longrightarrow, \longleftrightarrow, - \Leftarrow, \Rightarrow, \Leftrightarrow, - \Longleftarrow, \Longrightarrow, \Longleftrightarrow, - \nrightarrow, \nleftarrow, \nleftrightarrow, - \nLeftarrow, \nRightarrow, \nLeftrightarrow, - \mapsto, \hookrightarrow, \hookleftarrow, - \leftharpoonup, \rightharpoonup, \leftharpoondown, \rightharpoondown, - \rightleftharpoons, \leftrightharpoons, - \sum, \prod, \coprod, - \sqrt, \int, \iint, \iiint, \oint + `(, `), `[, `], `\{, `\} }, - script-features = {}, - sscript-features = {}, Scale = 1.05, ] }{} \setmathfont { latinmodern-math.otf } [ - range = { \leq, \geq, \ll, \gg, \lll, \ggg, \leqslant, \geqslant }, - Scale = 0.95, + range = { cal, bfcal, frak, bffrak } ] \setmathfont { texgyrepagella-math.otf } [ - range = { up / num, bfup / num } + range = { it / { Latin, latin }, bfit / { Latin, latin }, up / num, bfup / num } ] \hook_gput_code:nnn { begindocument } { minimclass } { \NewCommandCopy \minimclass_backup_mid: \mid \RenewDocumentCommand \mid {} - { \skip_horizontal:n {-.15em} \minimclass_backup_mid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \minimclass_backup_mid: \skip_horizontal:n {-.1em} } \NewCommandCopy \minimclass_backup_nmid: \nmid \RenewDocumentCommand \nmid {} - { \skip_horizontal:n {-.15em} \minimclass_backup_nmid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \minimclass_backup_nmid: \skip_horizontal:n {-.1em} } } \RequirePackage { tikz-cd } @@ -627,10 +615,10 @@ \hbox_set:Nn \l__minimclass_xarrows_below_box { \ensuremath { \scriptstyle #1 } } \hbox_set:Nn \l__minimclass_xarrows_above_box { \ensuremath { \scriptstyle #2 } } \dim_set:Nn \l__minimclass_xarrows_length_dim - { \dim_eval:n { \dim_max:nn { \box_wd:N \l__minimclass_xarrows_below_box } { \box_wd:N \l__minimclass_xarrows_above_box } + .8em } } + { \dim_eval:n { \dim_max:nn { \box_wd:N \l__minimclass_xarrows_below_box } { \box_wd:N \l__minimclass_xarrows_above_box } + 1em } } \mathrel { - \tikz [ #3, baseline = -.55ex, every~node/.style = { inner~sep = 0pt } ] + \tikz [ #3, line~width = .6pt, baseline = -.5ex, every~node/.style = { inner~sep = 0pt }, >={Stealth[round,length=3.4pt,width=6.15pt,inset=2.25pt]} ] \draw (0,0) #4 node [ below = 3pt ] { \box_use:N \l__minimclass_xarrows_below_box } node [ above = 2pt ] { \box_use:N \l__minimclass_xarrows_above_box } diff --git a/macros/unicodetex/latex/lebhart/lebhart-doc-cn.pdf b/macros/unicodetex/latex/lebhart/lebhart-doc-cn.pdf Binary files differindex 004a24d9c4..fb99a6d618 100644 --- a/macros/unicodetex/latex/lebhart/lebhart-doc-cn.pdf +++ b/macros/unicodetex/latex/lebhart/lebhart-doc-cn.pdf diff --git a/macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex b/macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex index 48c6aef26f..9b80d1283e 100644 --- a/macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex +++ b/macros/unicodetex/latex/lebhart/lebhart-doc-cn.tex @@ -1,6 +1,5 @@ \documentclass[English,Chinese,French,use boldface,simple name]{lebhart} - %%================================ %% Import toolkit %%================================ @@ -92,7 +91,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{{\normalfont\bfseries\color{main-text}\lebhart{}}\\以多彩的方式排版你的文章} \author{许锦文} diff --git a/macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf b/macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf Binary files differindex e00a100d4a..41a71f9dea 100644 --- a/macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf +++ b/macros/unicodetex/latex/lebhart/lebhart-doc-en.pdf diff --git a/macros/unicodetex/latex/lebhart/lebhart-doc-en.tex b/macros/unicodetex/latex/lebhart/lebhart-doc-en.tex index d0f713ce91..540f300b0c 100644 --- a/macros/unicodetex/latex/lebhart/lebhart-doc-en.tex +++ b/macros/unicodetex/latex/lebhart/lebhart-doc-en.tex @@ -1,6 +1,5 @@ \documentclass[English,Chinese,French,use boldface,simple name]{lebhart} - %%================================ %% Import toolkit %%================================ @@ -92,7 +91,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{{\normalfont\bfseries\color{main-text}\lebhart{}}\\write your articles in a colorful way} \author{Jinwen XU} diff --git a/macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf b/macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf Binary files differindex 2a8fc86453..8f5006b150 100644 --- a/macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf +++ b/macros/unicodetex/latex/lebhart/lebhart-doc-fr.pdf diff --git a/macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex b/macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex index ffb3295012..402d05b32c 100644 --- a/macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex +++ b/macros/unicodetex/latex/lebhart/lebhart-doc-fr.tex @@ -1,6 +1,5 @@ \documentclass[English,Chinese,French,use boldface,simple name]{lebhart} - %%================================ %% Import toolkit %%================================ @@ -92,7 +91,7 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \title{{\normalfont\bfseries\color{main-text}\lebhart{}}\\écrivez vos articles de manière colorée} \author{Jinwen XU} diff --git a/macros/unicodetex/latex/lebhart/lebhart.cls b/macros/unicodetex/latex/lebhart/lebhart.cls index 4c033e6512..956a4a9c43 100644 --- a/macros/unicodetex/latex/lebhart/lebhart.cls +++ b/macros/unicodetex/latex/lebhart/lebhart.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {lebhart} - {2022/03/19} {} + {2022/03/28} {} {A colorful article style} \tl_const:Nn \l__colorclass_base_class_tl { article } @@ -548,51 +548,39 @@ \PassOptionsToPackage { warnings-off = { mathtools-colon, mathtools-overbracket } } { unicode-math } \RequirePackage { unicode-math } \unimathsetup { math-style = ISO, partial = upright, nabla = upright } - \setmathfont { Asana-Math.otf } + \setmathfont { KpMath-Regular.otf } + \setmathfont { KpMath-Sans.otf } + [ + range = { \sum, \prod, \coprod } + ] \__colorclass_if_font_exist:nnn { Neo~Euler } { \setmathfont { Neo~Euler } [ range = { up / { Latin, latin, Greek, greek }, bfup / { Latin, latin, Greek, greek }, - cal, bfcal, frak, bffrak, - `(, `), `[, `], `\{, `\}, `:, `=, \ne, \equiv, `/, \backslash, - \in, \notin, \ni, \subset, \supset, \subseteq, \supseteq, - \rightarrow, \leftarrow, \leftrightarrow, - \longleftarrow, \longrightarrow, \longleftrightarrow, - \Leftarrow, \Rightarrow, \Leftrightarrow, - \Longleftarrow, \Longrightarrow, \Longleftrightarrow, - \nrightarrow, \nleftarrow, \nleftrightarrow, - \nLeftarrow, \nRightarrow, \nLeftrightarrow, - \mapsto, \hookrightarrow, \hookleftarrow, - \leftharpoonup, \rightharpoonup, \leftharpoondown, \rightharpoondown, - \rightleftharpoons, \leftrightharpoons, - \sum, \prod, \coprod, - \sqrt, \int, \iint, \iiint, \oint + `(, `), `[, `], `\{, `\} }, - script-features = {}, - sscript-features = {}, Scale = 1.05, ] }{} \setmathfont { latinmodern-math.otf } [ - range = { \leq, \geq, \ll, \gg, \lll, \ggg, \leqslant, \geqslant }, - Scale = 0.95, + range = { cal, bfcal, frak, bffrak } ] \setmathfont { texgyrepagella-math.otf } [ - range = { up / num, bfup / num } + range = { it / { Latin, latin }, bfit / { Latin, latin }, up / num, bfup / num } ] \hook_gput_code:nnn { begindocument } { colorclass } { \NewCommandCopy \colorclass_backup_mid: \mid \RenewDocumentCommand \mid {} - { \skip_horizontal:n {-.15em} \colorclass_backup_mid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \colorclass_backup_mid: \skip_horizontal:n {-.1em} } \NewCommandCopy \colorclass_backup_nmid: \nmid \RenewDocumentCommand \nmid {} - { \skip_horizontal:n {-.15em} \colorclass_backup_nmid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \colorclass_backup_nmid: \skip_horizontal:n {-.1em} } } \RequirePackage { tikz-cd } @@ -607,10 +595,10 @@ \hbox_set:Nn \l__colorclass_xarrows_below_box { \ensuremath { \scriptstyle #1 } } \hbox_set:Nn \l__colorclass_xarrows_above_box { \ensuremath { \scriptstyle #2 } } \dim_set:Nn \l__colorclass_xarrows_length_dim - { \dim_eval:n { \dim_max:nn { \box_wd:N \l__colorclass_xarrows_below_box } { \box_wd:N \l__colorclass_xarrows_above_box } + .8em } } + { \dim_eval:n { \dim_max:nn { \box_wd:N \l__colorclass_xarrows_below_box } { \box_wd:N \l__colorclass_xarrows_above_box } + 1em } } \mathrel { - \tikz [ #3, baseline = -.55ex, every~node/.style = { inner~sep = 0pt } ] + \tikz [ #3, line~width = .6pt, baseline = -.5ex, every~node/.style = { inner~sep = 0pt }, >={Stealth[round,length=3.4pt,width=6.15pt,inset=2.25pt]} ] \draw (0,0) #4 node [ below = 3pt ] { \box_use:N \l__colorclass_xarrows_below_box } node [ above = 2pt ] { \box_use:N \l__colorclass_xarrows_above_box } diff --git a/macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf b/macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf Binary files differindex da3b855706..0ffa265fed 100644 --- a/macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf +++ b/macros/unicodetex/latex/simplivre/simplivre-doc-cn.pdf diff --git a/macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex b/macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex index ae245f756c..c3fece3e59 100644 --- a/macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex +++ b/macros/unicodetex/latex/simplivre/simplivre-doc-cn.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,21 +95,21 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \frontmatter \LocallyStopLineNumbers -\begin{titlepage} % Suppresses displaying the page number on the title page and the subsequent page counts as page 1 -\begin{tikzpicture}[overlay,remember picture] - \fill [blue!50!cyan!50!black] ($(current page.south west)$) rectangle ($(current page.north west)+(21,-7)$); - \node[text width=10cm] at ($(current page.north west)+(8.5,-6)$) {\huge\ProjLib}; - \node[text width=6cm,text height=3.5cm,scale=2.5] at ($(current page.north west)+(11,-9)$) {\textcolor{white}{\sffamily\simplivre{}\\[5pt]\footnotesize\hspace*{-.05em}以极简主义风格排版你的图书\\[10pt]\tiny 对应版本. \texttt{\simplivre{} \PackageVersion}}}; - \node[text width=15em] at ($(current page.south)+(3.5,3)$) {\color{white}\hfill\fontsize{16pt}{0pt}\selectfont{许锦文}\\[1em]\hfill\fontsize{12pt}{0pt}\selectfont\TheDate{\PackageVersion}[only-year-month],巴黎}; -\end{tikzpicture}% -\end{titlepage}% - -\setcounter{page}{0} +\TitlePage [ style = simple ] + { + , title = \simplivre{} + , subtitle = { + \textsc{以极简主义风格排版你的图书}\\[10pt] + \tiny 对应版本. \texttt{\simplivre{} \PackageVersion} + } + , author = 许锦文 + , date = {\TheDate{\PackageVersion}[only-year-month],巴黎} + } \ResumeLineNumbers @@ -313,7 +312,6 @@ Référence du théorème: \cref{thm:abc} \begin{itemize} \item 采用段首缩进而不是段间间距。 \end{itemize} -% \clearpage \item \texttt{runin} \begin{itemize} \item \lstinline|\subsubsection| 采用 ``runin'' 风格。 diff --git a/macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf b/macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf Binary files differindex 63f4596643..ff4ee07f77 100644 --- a/macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf +++ b/macros/unicodetex/latex/simplivre/simplivre-doc-en.pdf diff --git a/macros/unicodetex/latex/simplivre/simplivre-doc-en.tex b/macros/unicodetex/latex/simplivre/simplivre-doc-en.tex index f46490fde7..997cdc3e54 100644 --- a/macros/unicodetex/latex/simplivre/simplivre-doc-en.tex +++ b/macros/unicodetex/latex/simplivre/simplivre-doc-en.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,22 +95,22 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \LocallyStopLineNumbers \frontmatter -\begin{titlepage} % Suppresses displaying the page number on the title page and the subsequent page counts as page 1 -\begin{tikzpicture}[overlay,remember picture] - \fill [blue!50!cyan!50!black] ($(current page.south west)$) rectangle ($(current page.north west)+(21,-7)$); - \node[text width=10cm] at ($(current page.north west)+(8.5,-6)$) {\huge\ProjLib}; - \node[text width=6cm,text height=3.5cm,scale=2.5] at ($(current page.north west)+(11,-9)$) {\textcolor{white}{\sffamily\simplivre{}\\[5pt]\footnotesize\textsc{Write your books in \\a simple and clear way}\\[10pt]\tiny Corresponding to: \texttt{\simplivre{} \PackageVersion}}}; - \node[text width=15em] at ($(current page.south)+(3.5,3)$) {\color{white}\hfill\fontsize{16pt}{0pt}\selectfont{\scshape Jinwen XU}\\[1em]\hfill\fontsize{12pt}{0pt}\selectfont\TheDate{\PackageVersion}[only-year-month], in Paris}; -\end{tikzpicture}% -\end{titlepage}% - -\setcounter{page}{0} +\TitlePage [ style = simple ] + { + , title = \simplivre{} + , subtitle = { + \textsc{Write your books in \\a simple and clear way}\\[10pt] + \tiny Corresponding to: \texttt{\simplivre{} \PackageVersion} + } + , author = Jinwen XU + , date = {\TheDate{\PackageVersion}[only-year-month], in Paris} + } \ResumeLineNumbers @@ -319,7 +318,6 @@ In addition, Source Code Pro is used as the English sans serif font, New Compute \begin{itemize} \item Use the ``runin'' style for \lstinline|\subsubsection| \end{itemize} -% \clearpage \item \texttt{nothms} \begin{itemize} \item Pure text mode. Do not load theorem-like environments. @@ -415,7 +413,6 @@ By default, when referenced, the name of the theorem matches the current context Please refer to the documentation of the package \textsf{create-theorem} to see how to declare new theorem-like environments. \end{tip} -% \clearpage \LevelTwoTitle{Draft mark} You can use \lstinline|\dnf| to mark the unfinished part. For example: diff --git a/macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf b/macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf Binary files differindex 082fae5283..c0cb64b901 100644 --- a/macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf +++ b/macros/unicodetex/latex/simplivre/simplivre-doc-fr.pdf diff --git a/macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex b/macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex index d61803acde..94407ff1fa 100644 --- a/macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex +++ b/macros/unicodetex/latex/simplivre/simplivre-doc-fr.tex @@ -8,7 +8,6 @@ \usepackage{ProjLib} \usepackage{longtable} % breakable tables \usepackage{hologo} % more TeX logo -\usetikzlibrary{calc} \usepackage{blindtext} @@ -96,21 +95,21 @@ %%================================ \begin{document} -\def\PackageVersion{2022/03/19} +\def\PackageVersion{2022/03/28} \frontmatter \LocallyStopLineNumbers -\begin{titlepage} % Suppresses displaying the page number on the title page and the subsequent page counts as page 1 -\begin{tikzpicture}[overlay,remember picture] - \fill [blue!50!cyan!50!black] ($(current page.south west)$) rectangle ($(current page.north west)+(21,-7)$); - \node[text width=10cm] at ($(current page.north west)+(8.5,-6)$) {\huge\ProjLib}; - \node[text width=6cm,text height=3.5cm,scale=2.5] at ($(current page.north west)+(11,-9)$) {\textcolor{white}{\sffamily\simplivre{}\\[5pt]\footnotesize\textsc{Écrivez vos livres \\de manière simple et claire}\\[10pt]\tiny Correspondant à : \texttt{\simplivre{} \PackageVersion}}}; - \node[text width=15em] at ($(current page.south)+(3.5,3)$) {\color{white}\hfill\fontsize{16pt}{0pt}\selectfont{\scshape Jinwen XU}\\[1em]\hfill\fontsize{12pt}{0pt}\selectfont\TheDate{\PackageVersion}[only-year-month], à Paris}; -\end{tikzpicture}% -\end{titlepage}% - -\setcounter{page}{0} +\TitlePage [ style = simple ] + { + , title = \simplivre{} + , subtitle = { + \textsc{Écrivez vos livres \\de manière simple et claire}\\[10pt] + \tiny Correspondant à : \texttt{\simplivre{} \PackageVersion} + } + , author = Jinwen XU + , date = {\TheDate{\PackageVersion}[only-year-month], à Paris} + } \ResumeLineNumbers @@ -313,7 +312,6 @@ De plus, Source Code Pro est utilisé comme police anglaise sans empattement, Ne \begin{itemize} \item Utilisez l'indentation des paragraphes au lieu de l'espacement entre les paragraphes. \end{itemize} -% \clearpage \item \texttt{runin} \begin{itemize} \item Utilisez le style «~runin~» pour \lstinline|\subsubsection| diff --git a/macros/unicodetex/latex/simplivre/simplivre.cls b/macros/unicodetex/latex/simplivre/simplivre.cls index ad95aba1e0..7056e45b17 100644 --- a/macros/unicodetex/latex/simplivre/simplivre.cls +++ b/macros/unicodetex/latex/simplivre/simplivre.cls @@ -19,7 +19,7 @@ \RequirePackage{l3keys2e} \ProvidesExplClass {simplivre} - {2022/03/19} {} + {2022/03/28} {} {A simple and clear book style} \tl_const:Nn \l__minimclass_base_class_tl { book } @@ -568,51 +568,39 @@ \PassOptionsToPackage { warnings-off = { mathtools-colon, mathtools-overbracket } } { unicode-math } \RequirePackage { unicode-math } \unimathsetup { math-style = ISO, partial = upright, nabla = upright } - \setmathfont { Asana-Math.otf } + \setmathfont { KpMath-Regular.otf } + \setmathfont { KpMath-Sans.otf } + [ + range = { \sum, \prod, \coprod } + ] \__minimclass_if_font_exist:nnn { Neo~Euler } { \setmathfont { Neo~Euler } [ range = { up / { Latin, latin, Greek, greek }, bfup / { Latin, latin, Greek, greek }, - cal, bfcal, frak, bffrak, - `(, `), `[, `], `\{, `\}, `:, `=, \ne, \equiv, `/, \backslash, - \in, \notin, \ni, \subset, \supset, \subseteq, \supseteq, - \rightarrow, \leftarrow, \leftrightarrow, - \longleftarrow, \longrightarrow, \longleftrightarrow, - \Leftarrow, \Rightarrow, \Leftrightarrow, - \Longleftarrow, \Longrightarrow, \Longleftrightarrow, - \nrightarrow, \nleftarrow, \nleftrightarrow, - \nLeftarrow, \nRightarrow, \nLeftrightarrow, - \mapsto, \hookrightarrow, \hookleftarrow, - \leftharpoonup, \rightharpoonup, \leftharpoondown, \rightharpoondown, - \rightleftharpoons, \leftrightharpoons, - \sum, \prod, \coprod, - \sqrt, \int, \iint, \iiint, \oint + `(, `), `[, `], `\{, `\} }, - script-features = {}, - sscript-features = {}, Scale = 1.05, ] }{} \setmathfont { latinmodern-math.otf } [ - range = { \leq, \geq, \ll, \gg, \lll, \ggg, \leqslant, \geqslant }, - Scale = 0.95, + range = { cal, bfcal, frak, bffrak } ] \setmathfont { texgyrepagella-math.otf } [ - range = { up / num, bfup / num } + range = { it / { Latin, latin }, bfit / { Latin, latin }, up / num, bfup / num } ] \hook_gput_code:nnn { begindocument } { minimclass } { \NewCommandCopy \minimclass_backup_mid: \mid \RenewDocumentCommand \mid {} - { \skip_horizontal:n {-.15em} \minimclass_backup_mid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \minimclass_backup_mid: \skip_horizontal:n {-.1em} } \NewCommandCopy \minimclass_backup_nmid: \nmid \RenewDocumentCommand \nmid {} - { \skip_horizontal:n {-.15em} \minimclass_backup_nmid: \skip_horizontal:n {-.15em} } + { \skip_horizontal:n {-.1em} \minimclass_backup_nmid: \skip_horizontal:n {-.1em} } } \RequirePackage { tikz-cd } @@ -627,10 +615,10 @@ \hbox_set:Nn \l__minimclass_xarrows_below_box { \ensuremath { \scriptstyle #1 } } \hbox_set:Nn \l__minimclass_xarrows_above_box { \ensuremath { \scriptstyle #2 } } \dim_set:Nn \l__minimclass_xarrows_length_dim - { \dim_eval:n { \dim_max:nn { \box_wd:N \l__minimclass_xarrows_below_box } { \box_wd:N \l__minimclass_xarrows_above_box } + .8em } } + { \dim_eval:n { \dim_max:nn { \box_wd:N \l__minimclass_xarrows_below_box } { \box_wd:N \l__minimclass_xarrows_above_box } + 1em } } \mathrel { - \tikz [ #3, baseline = -.55ex, every~node/.style = { inner~sep = 0pt } ] + \tikz [ #3, line~width = .6pt, baseline = -.5ex, every~node/.style = { inner~sep = 0pt }, >={Stealth[round,length=3.4pt,width=6.15pt,inset=2.25pt]} ] \draw (0,0) #4 node [ below = 3pt ] { \box_use:N \l__minimclass_xarrows_below_box } node [ above = 2pt ] { \box_use:N \l__minimclass_xarrows_above_box } diff --git a/support/lug/README b/support/lug/README deleted file mode 100644 index 704454f5a6..0000000000 --- a/support/lug/README +++ /dev/null @@ -1,12 +0,0 @@ - script: lug - create and edit TeX Local User Group web pages - type: bash - author: Wybo Dekker - email: wybo@dekkerdocumenten.nl -version: 2.02 -license: Released under the GNU General Public License --------------------------------------------------------------------------------- -lug can be used to to (re-)create the web pages of the LUG database. -This script must be executed in its own directory. After the script has -been executed, this directory will contain the web site for the Electronic -LUG Database, currently: U{www.ntg.nl/lug}{www.ntg.nl/lug}. - diff --git a/support/lug/README.md b/support/lug/README.md new file mode 100644 index 0000000000..05112b02e1 --- /dev/null +++ b/support/lug/README.md @@ -0,0 +1,15 @@ +# lug +| key | description +| ---:|:--- +| script | lug - manage TeX Local User Group web pages +| type | bash +| author | Wybo Dekker +| email | wybo@ntg.nl +| version | 3.00 +| license | GNU General Public License + +lug(1) can be used to to (re-)create the web pages of the LUG database. +This script must be executed in its own, otherwise empty, directory. +After the script has been executed with the -f option, this directory will +contain the web site for the [Electronic LUG Database](www.ntg.nl/lug). + diff --git a/support/lug/images/bg.png b/support/lug/images/bg.png Binary files differdeleted file mode 100644 index 2cf4b55118..0000000000 --- a/support/lug/images/bg.png +++ /dev/null diff --git a/support/lug/images/br.png b/support/lug/images/br.png Binary files differdeleted file mode 100644 index d6b9d62dd2..0000000000 --- a/support/lug/images/br.png +++ /dev/null diff --git a/support/lug/images/cn.png b/support/lug/images/cn.png Binary files differdeleted file mode 100644 index c47a2dc100..0000000000 --- a/support/lug/images/cn.png +++ /dev/null diff --git a/support/lug/images/cz.png b/support/lug/images/cz.png Binary files differdeleted file mode 100644 index 0b9083da67..0000000000 --- a/support/lug/images/cz.png +++ /dev/null diff --git a/support/lug/images/de.png b/support/lug/images/de.png Binary files differdeleted file mode 100644 index 8671ca659f..0000000000 --- a/support/lug/images/de.png +++ /dev/null diff --git a/support/lug/images/dk.png b/support/lug/images/dk.png Binary files differdeleted file mode 100644 index 8a4e1295e7..0000000000 --- a/support/lug/images/dk.png +++ /dev/null diff --git a/support/lug/images/ee.png b/support/lug/images/ee.png Binary files differdeleted file mode 100644 index e566845f54..0000000000 --- a/support/lug/images/ee.png +++ /dev/null diff --git a/support/lug/images/es.png b/support/lug/images/es.png Binary files differdeleted file mode 100644 index 7301563cd9..0000000000 --- a/support/lug/images/es.png +++ /dev/null diff --git a/support/lug/images/esc.png b/support/lug/images/esc.png Binary files differdeleted file mode 100644 index ad9639a19c..0000000000 --- a/support/lug/images/esc.png +++ /dev/null diff --git a/support/lug/images/fr.png b/support/lug/images/fr.png Binary files differdeleted file mode 100644 index cb7597c9e9..0000000000 --- a/support/lug/images/fr.png +++ /dev/null diff --git a/support/lug/images/gb.png b/support/lug/images/gb.png Binary files differdeleted file mode 100644 index 7e6569780d..0000000000 --- a/support/lug/images/gb.png +++ /dev/null diff --git a/support/lug/images/hu.png b/support/lug/images/hu.png Binary files differdeleted file mode 100644 index 29ff7f06f8..0000000000 --- a/support/lug/images/hu.png +++ /dev/null diff --git a/support/lug/images/ie.png b/support/lug/images/ie.png Binary files differdeleted file mode 100644 index 66fcecc2e5..0000000000 --- a/support/lug/images/ie.png +++ /dev/null diff --git a/support/lug/images/in.png b/support/lug/images/in.png Binary files differdeleted file mode 100644 index f1b1dffffb..0000000000 --- a/support/lug/images/in.png +++ /dev/null diff --git a/support/lug/images/is.png b/support/lug/images/is.png Binary files differdeleted file mode 100644 index 624c4363bb..0000000000 --- a/support/lug/images/is.png +++ /dev/null diff --git a/support/lug/images/it.png b/support/lug/images/it.png Binary files differdeleted file mode 100644 index f1d46d2ffb..0000000000 --- a/support/lug/images/it.png +++ /dev/null diff --git a/support/lug/images/kr.png b/support/lug/images/kr.png Binary files differdeleted file mode 100644 index 398dcfd7b8..0000000000 --- a/support/lug/images/kr.png +++ /dev/null diff --git a/support/lug/images/lt.png b/support/lug/images/lt.png Binary files differdeleted file mode 100644 index 7cd1c3074c..0000000000 --- a/support/lug/images/lt.png +++ /dev/null diff --git a/support/lug/images/mx.png b/support/lug/images/mx.png Binary files differdeleted file mode 100644 index 2dda6bd6a8..0000000000 --- a/support/lug/images/mx.png +++ /dev/null diff --git a/support/lug/images/nl.png b/support/lug/images/nl.png Binary files differdeleted file mode 100644 index 859d07fc6d..0000000000 --- a/support/lug/images/nl.png +++ /dev/null diff --git a/support/lug/images/no.png b/support/lug/images/no.png Binary files differdeleted file mode 100644 index 4b2b9b5cd3..0000000000 --- a/support/lug/images/no.png +++ /dev/null diff --git a/support/lug/images/pl.png b/support/lug/images/pl.png Binary files differdeleted file mode 100644 index f041b30050..0000000000 --- a/support/lug/images/pl.png +++ /dev/null diff --git a/support/lug/images/pt.png b/support/lug/images/pt.png Binary files differdeleted file mode 100644 index 4f9f05036f..0000000000 --- a/support/lug/images/pt.png +++ /dev/null diff --git a/support/lug/images/ru.png b/support/lug/images/ru.png Binary files differdeleted file mode 100644 index fd85c27c37..0000000000 --- a/support/lug/images/ru.png +++ /dev/null diff --git a/support/lug/images/si.png b/support/lug/images/si.png Binary files differdeleted file mode 100644 index 2fe404ff41..0000000000 --- a/support/lug/images/si.png +++ /dev/null diff --git a/support/lug/images/us.png b/support/lug/images/us.png Binary files differdeleted file mode 100644 index 8c5cbe575e..0000000000 --- a/support/lug/images/us.png +++ /dev/null diff --git a/support/lug/images/vn.png b/support/lug/images/vn.png Binary files differdeleted file mode 100644 index 14e4fa054c..0000000000 --- a/support/lug/images/vn.png +++ /dev/null diff --git a/support/lug/images/za.png b/support/lug/images/za.png Binary files differdeleted file mode 100644 index f314d6088e..0000000000 --- a/support/lug/images/za.png +++ /dev/null diff --git a/support/lug/lug b/support/lug/lug index bd1e2c4950..49ff03c86b 100755 --- a/support/lug/lug +++ b/support/lug/lug @@ -1,208 +1,321 @@ #!/bin/bash -version=2.02 -myname=$(basename $0) +Version=3.00 + Myname="${0##*/}" -<<'DOC' -= lug - create and edit TeX Local User Group web pages +:<<'DOC' += lug - manage TeX Local User Group web pages = Synopsis -lug [options] [lug-code] - -lug can be used to maintain the TeX Local User Group web pages, currently -located at www.ntg.nl/lug. -Without options, reads key=value pairs, possibly embedded in the body of a -mail as sent by a web form like U{www.ntg.nl/lug/nl.html}{here}. -You can feed the complete email (after saving it) to lug, or you can paste -its content to standard input. - -For testing, you may want to make a copy and run it from there: - - $ cp -a /var/www/html/lug /var/www/html/lugtest - $ cd /var/www/html/lugtest - $ ./lug --help - $ (more lug calls) - -Finally look at the results in http://www.ntg.nl/lugtest - -Options: --h,--help Print this help and exit --H,--Help Print full documentation via less and exit --V,--version Print version and exit --f,--full Re-create all files --e,--extras=STR Re-create STR, where STR can be: - labels.pdf - lugs.pdf - lugs.html - index.html - links.inc --s,--sync[=STR] Synchronize the lug page at |www.ntg.nl/STR| with the current directory - The default for |STR| is |lug| --c,--clean Remove all files that can be re-created +lug [options] [lug-code] + +== Options +-h,--help print short help and exit +-H,--Help print full documentation via less and exit +-V,--version print version and exit +-c,--clean remove all files that can be re-created +-f,--full re-create all files +-s,--sync[=STR] synchronize the lug page at |www.ntg.nl/STR| + with the current directory; + the default for |STR| is |lug| = Description -lug can be used to to (re-)create the web pages of the LUG database. -This script must be executed in its own directory. After the script has -been executed, this directory will contain the web site for the Electronic -LUG Database, currently: U{www.ntg.nl/lug}{www.ntg.nl/lug}. +lug can be used to to (re-)create the web pages of the LUG +database. This script must be executed in its own directory. +After the script has been executed, this directory will +contain the web site for the [Electronic LUG +Database](www.ntg.nl/lug). -Before execution, the directory must contain at least" -- the script (as said) -- a subdirectory containing one text file for each LUG -The HTML files depend 4 files in the parent directory: -|ntg.css|, |1blok1e.inc|, |1blok2e.inc|, and |1blok4e.inc|. +If you run lug for the first time, do so in a directory +containging the script only; it wil then create all needed +files and directories in it. -The |lugs.rb| script must be moved to the |cgi-bin| directory. +Recreate all files: -When people send new data by using the forms of the site, they do so by + $ lug --full + +Apply corrections sent by email: + + $ lug + < paste the email contents to standard input > + ^D + +When people send new data by using the forms of the site, they do so by submitting the form, which causes an email with raw data to be sent to -the administrator(s). +the administrator(s). An administrator should verify the password reported in the email and then cd to this directory, or to a copy of it on his own computer, and he should then run: - $ ./lug + $ ./lug lug waits for data, which it can be given by cut (from the email) and paste (to standard input). By ending the input with |^D|, lug corrects the data in the directory `lugs' -It is of course also possible to save the contents of the email into a file +It is of course also possible to save the contents of the email into a file and then run: - $ ./lug <file + $ ./lug <file The administrator can make small correction to one country by giving the necessary input on the command line. For example, to change the email address of the treasurer of The Netherlands he can run: - $ ./lug - code=nl - femail=wybo@dekkerdocumenten.nl - ^D + $ ./lug + code=nl + femail=treasurer@ntg.nl + ^D Synchronize the website (|www.ntg.nl/lug|) with the current directory: - ./lug --sync + $ ./lug --sync + +Of course, this action makes no sense if you are operating in the web +directory itself. Or, for testing purposes, synchronize |www.ntg.nl/lugtest|: - ./lug --sync=lugtest + $ ./lug --sync=lugtest or, shorter: - ./lug -slugtest + $ ./lug -slugtest Remove everything that can be regenerated: - lug --clean + $ ./lug --clean + +This stores any changes made in the |README.md| file, the |lugs.rb| script, +and the |images| en |lugs| directories in the script. After this operation +only the script will be there, and you can simply restore everything by +running it with the |--full| option. -Regenerate everything: +Regenerate everything: + $ ./lug --full - lug --full += Author +[Wybo Dekker](wybo@ntg.nl) -= Author and copyright -Author Wybo Dekker -Email U{wybo@dekkerdocumenten.nl}{wybo@dekkerdocumenten.nl} -License Released under the U{www.gnu.org/copyleft/gpl.html}{GNU General Public License} += Copyright +Released under the [GNU General Public License](www.gnu.org/copyleft/gpl.html) DOC - die() { echo -e "$myname: $Err$@$Nor" 1>&2; exit 1; } - Warn() { echo -e "$myname: $War$@$Nor" 1>&2; } - warn() { $verbose && Warn $@; } - help() { sed -n '/^= Synopsis/,/^= /p' $0|sed '1s/.*/Usage:/;/^= /d'; exit; } -helpall() { sed -n '/^<<.DOC.$/,/^DOC$/p' $0|sed -n '1d;$d;p'|less; exit; } -version() { echo $version; exit; } -install() { which instscript>&/dev/null && instscript -zp $myname - cd .. - zip -Drqq lug/lug-$version.zip lug/{images,lugs,lugs.rb} - exit - } +Red='\e[38;5;1m' Mag='\e[38;5;5m' Nor='\e[0m' + die() { local i; for i; do echo -e "$Myname: $Red$i$Nor"; done 1>&2; exit 1; } + Warn() { local i; for i; do echo -e "$Myname: $Mag$i$Nor"; done 1>&2; } +helpsrt() { sed -n '/^= Synopsis/,/^= /p' "$0"|sed '1d;$d'; exit; } +helpall() { sed -n "/^:<<'DOC'$/,/^DOC/p" "$0"|sed '1d;$d'| + less -P"$Myname-${Version/./·} (press h for help, q to quit)";exit; } + +:<<'DOC' #--------------------------------------------------------------------- += excheck +synopsis: excheck executable1 [executable2...] +description: check if all needed execs are there and getopt is GNU +DOC +#------------------------------------------------------------------------------- +excheck() { + local ok=true i + for i; do + command -v "$i" > /dev/null && continue + Warn "Missing executable: $i" + ok=false + done + $ok || die + getopt -T + [[ $? -ne 4 ]] && die "Your getopt is not GNU" +} -Nor='\e[0m' # reset color ] -Err='\e[31;1m' # light red ] -War='\e[35;1m' # light magenta ] +:<<'DOC' #--------------------------------------------------------------------- += syncwww +synopsis: syncwww [dir] +description: synchronize web page (|lug| by default) with current dir +globals user: webdir +DOC +#------------------------------------------------------------------------------- +syncwww() { + local n dir yn + n=$(find . -name .git -prune -o -type f|wc -l) + (( n<90 )) && die "Only $n files here, can not sync" + dir=${1:-lug} + read -rp "syncing $n files with www.ntg.nl/$dir - are you sure? " yn + if [[ $yn =~ ^[Yy] ]]; then + rsync -ia --delete --exclude='.git*,lugs.rb' ./ "$webdir/$dir/" + # if dir is lug, don't copy lugs.rb, as we're just testing: + [[ $dir == lug ]] && rsync -ia lugs.rb "$webdir/../cgi-bin/lugs.rb" + else + die "nothing done..." + fi +} +:<<'DOC' #---------------------------------------------------------------------- += handle_options +synopsis: handle_options "$@" +description: Handle the options +globals used: Myname Version webdir +DOC +#------------------------------------------------------------------------------- +handle_options() { + local options + options=$(getopt \ + -n "$Myname" \ + -o 'hHVicfe:s::I' \ + -l 'help,Help,version,install,clean,full,extras:,sync::' \ + -- "$@" + ) || exit 1 + eval set -- "$options" + while true; do + case "$1" in + (-h|--help) # print short help and exit + helpsrt + ;; + + (-H|--Help) # print full documentation via less and exit + helpall + ;; + + (-V|--version) # print version and exit + echo $Version + exit + ;; + + (-c|--clean) # remove all files that can be re-created + Clean + exit + ;; + + (-f|--full) # re-create all files + rm -f -- Makefile *.html labels.* lugs.{html,pdf,tex} links.inc lugs.inc + makeMakefile + make --quiet || die "errors running make" + clean + exit + ;; + + (-e|--extras) # re-create ARG, where ARG can be one of: + # labels.pdf lugs.pdf lugs.html index.html links.inc + # (not needed by users, Makefile uses it) + eval "make$2" + exit + ;; + + (-s|--sync) # with optional argument (ARG) + # synchronize the lug page at |www.ntg.nl/ARG| with the + # current directory; the default for |ARG| is |lug| + # Catch the error of using -s lugtest instead of -slugtest: + [[ -n $4 ]] && + die "I don't expect argument $4; did you mean -s$4?" + syncwww "$2" + exit + ;; + + (-I) gendoc ./lug + mkdir -p $PREFIX/man/man1 || + die "-I option is for developer only" + cp ../man/man1/lug.1 $PREFIX/man/man1/lug.1 + cp ../pdf/lug.pdf $PREFIX/pdf/lug.pdf + cp ../html/lug.html $PREFIX/html/lug.html + zip -j lug-$Version.zip lug README.md ../{man/man1,pdf,html}/lug.* + exit + ;; + + (--) shift + break + ;; + + (*) die "option $1 not recognized" + ;; + esac + done + args=("$@") +} -<<'DOC' #------ function setkeys ----------------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = setkeys -parameters: 1: country code +synopsis: country_codea ;-replacement &-replacement description: Set the |keys| hash to the values taken from the file |lugs/$1|. globals set: keys -globals used: - -returns: 0 DOC #------------------------------------------------------------------------------- setkeys() { # code semicolonreplacement ampersandreplacement local k v - while IFS=$'\t' read -r k v; do + while IFS=$'\t' read -r k v; do [[ $k = '' || $k =~ ^# ]] && continue [[ $k =~ addr$ ]] && v=${v//;/$2} keys["$k"]="${v//&/$3}" - done <lugs/$1 + done <lugs/"$1" } -<<'DOC' #------ function clean ------------------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = clean -parameters: - -description: Remove files created but not needed for the web site or for +synopsis: clean +description: Remove files created but not needed for the web site or for lug functioning. -globals set: - -globals used: - -returns: 0 DOC #------------------------------------------------------------------------------- clean() { - rm -f utf82html.c Makefile + rm -f Makefile } -<<'DOC' #------ function Clean ------------------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = Clean -parameters: - -description: Remove all files that can be re-created. -globals set: - -globals used: - -returns: 0 +synopsis: Clean +description: Remove all files that can be re-created and store them back in lug. DOC #------------------------------------------------------------------------------- Clean() { + local i clean - rm -f *.html labels.* lugs.{html,pdf,tex} \ - links.inc utf82html + rm -f -- *.html labels.* lugs.{html,pdf,tex} links.inc lugs.inc + + # test if the expected files are there: + test -e README.md || die 'Missing README,md' + test -e lugs.rb || die 'Missing lugs.rb' + for i in images lugs; do + test -d $i || die "Missing $i" + test "$(find $i -type f | wc -l)" -lt 30 && die "less than 30 files in $i" + done + + cp -a ./lug ./lug.backup + sed -i '/^begin-base64/,/^auxfiles/d' ./lug && + zip -Drmq - README.md images/ lugs/ lugs.rb | uuencode -m - >> ./lug && + echo auxfiles >> ./lug && + rmdir images lugs + rm ./lug.backup } -<<'DOC' #------ function makeMakefile ------------------------------------------ +:<<'DOC' #---------------------------------------------------------------------- = makeMakefile -parameters: - +synopsis: makeMakefile description: Create the file |Makefile| -globals set: - -globals used: db -returns: 0 +globals used: db DOC #------------------------------------------------------------------------------- makeMakefile() { - local i - cat<<EOF |sed 's/\t//' > Makefile - BASEFILES = $(for i in ${db[@]}; do echo -n lugs/$i' '; done) + function dep { + local i + for i in $db; do + echo "$i.html:lugs/$i; ./lug $i" + done + } + cat<<EOD |sed 's/\t//' > Makefile + BASEFILES = lugs/${db// / lugs\/} .SUFFIXES: .tex .pdf .tex.pdf: - PDFLATEX='xelatex -recorder -interaction=batchmode' texi2dvi -p -q \$< 2>/tmp/\$\$ || cat /tmp/\$\$ - PDFLATEX='xelatex -interaction=batchmode' texi2dvi -p -q --mostly-clean \$< 2>/tmp/\$\$ || cat /tmp/\$\$ - all: $(echo -n ${db[@]} |sed 's/ /.html /g').html \ - utf82html index.html lugs.html \ - links.inc \ - lugs.pdf labels.pdf - $(for i in ${db[@]}; do echo "$i.html: lugs/$i utf82html; ./lug $i"; done) + PDFLATEX='lualatex -interaction=batchmode' texi2dvi -p -q \$< 2>/tmp/\$\$ || cat /tmp/\$\$ + PDFLATEX='lualatex -interaction=batchmode' texi2dvi -p -q --mostly-clean \$< 2>/tmp/\$\$ || cat /tmp/\$\$ + all: ${db// /.html }.html index.html lugs.html links.inc lugs.pdf labels.pdf + $(dep) labels.pdf: \$(BASEFILES) ./lug --extras=labels.pdf lugs.pdf: \$(BASEFILES) ./lug --extras=lugs.pdf - lugs.html: \$(BASEFILES) + lugs.html: \$(BASEFILES) images/${db// /.png images\/}.png ./lug --extras=lugs.html index.html: \$(BASEFILES) @@ -212,589 +325,447 @@ makeMakefile() { ./lug --extras=links.inc clean: - rm -rf *.html labels.* lugs.* links.inc utf82html Makefile - - utf82html: utf82html.c - cc -o utf82html utf82html.c - -EOF -} - -<<'DOC' #------ function makeutf82html.c -------------------------------------- -= makeutf82html.c -parameters: - -description: Create the file |utf82html.c|; - it will be compiled /via/ |Makefile| -globals set: - -globals used: - -returns: 0 -DOC -#------------------------------------------------------------------------------- -makeutf82html.c() { - cat <<-'EOF' >utf82html.c - // utf82html.c: convert UTF-8 byte sequences to numeric html entities - // Written in 2004 by Peter Samuelson <peter@p12n.org> - // Copyright abandoned by the author - - #include <stdio.h> - #include <string.h> - #include <ctype.h> - - void from_utf8 (FILE *in, FILE *out) - { - char buf[4096 + 17]; - size_t len = 0; - - while (!feof(in)) { - size_t usable, i; - - len += fread(buf+len, 1, 4096, in); - buf[len] = 0; - if (feof(in) || len < 16) - usable = len; - else - usable = len - 16; - - for (i=0; i<usable; i++) { - int t; - unsigned ch, len; - - /* properties of UTF-8 chars */ - static struct { unsigned minval; int len; char b0, b0mask; } - uprop[] = { - { 1<<7, 2, 0xc0, 0xe0 }, - { 1<<11, 3, 0xe0, 0xf0 }, - { 1<<16, 4, 0xf0, 0xf8 }, - { 1<<21, 5, 0xf8, 0xfc }, - { 1<<26, 6, 0xfc, 0xfe }, - { 0, } - }; - - if (!(buf[i] & 0x80)) { - putc(buf[i], out); - continue; - } - for (t = 0; uprop[t].minval; t++) - if ((buf[i] & uprop[t].b0mask) == uprop[t].b0) - break; - if (!uprop[t].minval) - goto invalid; - - ch = buf[i] & ~uprop[t].b0mask; - for (len = uprop[t].len - 1; len; len--,i++) { - if ((buf[i+1] & 0xc0) != 0x80) - goto invalid; - - ch = (ch << 6) | (buf[i+1] & 0x3f); - } - if (ch < uprop[t].minval) - goto invalid; - - fprintf(out, (ch > 255) ? "&#x%04x;" : "&#x%02x;", ch); - continue; - - invalid: - fprintf(stderr, "illegal UTF-8 sequence\n"); - fprintf(out, "�"); /* "REPLACEMENT CHARACTER" */ - } - if (i < len) - memcpy(buf, buf+i, len-i); - len -= i; - } - } - - int main (int argc, char *argv[]) - { - if (argc == 1) { - from_utf8(stdin, stdout); - return 0; - } - while (argc > 1) { - FILE *fp = fopen(argv[1], "r"); - if (fp) - from_utf8(fp, stdout); - else - perror("fopen"); - - fclose(fp); - argc--; argv++; - } - return 0; - } - EOF + rm -rf *.html labels.* lugs.* links.inc Makefile +EOD } -<<'DOC' #------ function makelinks.inc ----------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = makelinks.inc -parameters: - +synopsis: makelinks.inc description: Create the file |links.inc| -globals set: - -globals used: - -returns: 0 DOC #------------------------------------------------------------------------------- makelinks.inc() { local i - for i in lugs/*; do + for i in lugs/*; do i=${i#lugs/} echo "<a href=\"$i.html\">$i</a>" done echo '<a href="index.html">home</a>' } >links.inc -<<'DOC' #------ function makexx.html ------------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = makexx.html -parameters: 1: country code +synopsis: makexx country_code description: Create the file |lugs/$1| globals set: (/via/ setkeys): |keys| globals used: db keys adminemail -returns: DOC #------------------------------------------------------------------------------- -makexx.html() { - [[ -n ${db[$1]} ]] || die "Unknown country code $1" - setkeys $1 "\n" '&' +makexx.html() { # countrycode local www - [[ -n ${keys[www]} ]] && www='<a href="http://'${keys[www]}'">(Here is this lug'"'"'s website)</a>' - cat <<-EOF |./utf82html >$1.html - <!--#include virtual="../1blok1e.inc" --> - <title>${keys[full]}</title> - <!--#include virtual="../1blok2e.inc" --> - <h1>TeX user groups around the world</h1> - <h2>${keys[full]}</h2> - <ul> - <li>Changes won't be instant, but are mailed to the maintainer</li> - <li>Use either TeX notation or accented characters for accents.</li> - <li>Enter phone numbers starting with +, then the country code et cetera,<br> - no whitespace, hyphens or other punctuation.</li> - </ul> - <form id="lugform" name="reaction" method="post" action="/cgi-bin/lugs.rb"> - <input size="23" type="hidden" value="${keys[code]}" name="code"> - Links to other User Group correction forms:<p> - <!--#include virtual="links.inc" --><p> - <table id="luginfo" border="0" cellspacing="3" summary="form"> - <tr class="mainhead"> - <th colspan="4" align="center">${keys[code]} - ${keys[country]} $www</th> - </tr> - <tr> - <td align="right">full name</td> - <td> - <textarea cols="21" rows="2" name="full"> - ${keys[full]} - </textarea></td> - <td align="right">periodical</td> - <td> - <textarea cols="21" rows="2" name="publ"> - ${keys[publ]} - </textarea></td> - </tr> - <tr> - <td align="right">short name</td> - <td><input size="23" value="${keys[short]}" name="short"></td> - <td align="right">editor</td> - <td><input size="23" value="${keys[editor]}" name="editor"></td> - </tr> - <tr> - <td align="right"><a href="http://www.lingoes.net/en/translator/langcode.htm">language(s)</a></td> - <td><input size="23" value="${keys[lang]}" name="lang"></td> - <td align="right">editor email</td> - <td><input size="23" value="${keys[eemail]}" name="eemail"></td> - </tr> - <tr> - <td align="right">members</td> - <td><input size="23" value="${keys[members]}" name="members"></td> - </tr> - <tr> - <td align="right">email</td> - <td><input size="23" value="${keys[email]}" name="email"></td> - <td align="right">bank</td> - <td><input size="23" value="${keys[bank]}" name="bank"></td> - </tr> - <tr> - <td align="right">web site</td> - <td><input size="23" value="${keys[www]}" name="www"></td> - <td align="right">bank account</td> - <td><input size="23" value="${keys[bacc]}" name="bacc"></td> - </tr> - <tr> - <td align="right">mailing list</td> - <td><input size="23" value="${keys[list]}" name="list"></td> - <td align="right">swift code</td> - <td><input size="23" value="${keys[bcode]}" name="bcode"></td> - </tr> - <tr> - <td align="right">subscribe at</td> - <td><input size="23" value="${keys[subscr]}" name="subscr"></td> - <td align="right">routing no/BIC</td> - <td><input size="23" value="${keys[brout]}" name="brout"></td> - </tr> - <tr> - <td align="right">address</td> - <td> - <textarea cols="21" rows="6" name="addr"> - $(echo -e ${keys[addr]}) - </textarea></td> - <td align="right">bank address</td> - <td> - <textarea cols="21" rows="6" name="baddr"> - $(echo -e ${keys[baddr]}) - </textarea></td> - </tr> - <tr class="mainhead"> - <th colspan="4" align="center">contact addresses</th> - </tr> - <tr> - <td> </td> - <th>policy matters</th> - <th>general matters</th> - <th>finance / member admin</th> - </tr> - <tr> - <td align="right">position</td> - <td><input size="23" value="${keys[ppos]}" name="ppos"></td> - <td><input size="23" value="${keys[gpos]}" name="gpos"></td> - <td><input size="23" value="${keys[fpos]}" name="fpos"></td> - </tr> - <tr> - <td align="right">name</td> - <td><input size="23" value="${keys[pname]}" name="pname"></td> - <td><input size="23" value="${keys[gname]}" name="gname"></td> - <td><input size="23" value="${keys[fname]}" name="fname"></td> - </tr> - <tr> - <td align="right">address</td> - <td> - <textarea cols="21" rows="6" name="paddr"> - $(echo -e ${keys[paddr]}) - </textarea></td> - <td> - <textarea cols="21" rows="6" name="gaddr"> - $(echo -e ${keys[gaddr]}) - </textarea></td> - <td> - <textarea cols="21" rows="6" name="faddr"> - $(echo -e ${keys[faddr]}) - </textarea></td> - </tr> - <tr> - <td align="right">email</td> - <td><input size="23" value="${keys[pemail]}" name="pemail"></td> - <td><input size="23" value="${keys[gemail]}" name="gemail"></td> - <td><input size="23" value="${keys[femail]}" name="femail"></td> - </tr> - <tr> - <td align="right">phone</td> - <td><input size="23" value="${keys[pphone]}" name="pphone"></td> - <td><input size="23" value="${keys[gphone]}" name="gphone"></td> - <td><input size="23" value="${keys[fphone]}" name="fphone"></td> - </tr> - <tr> - <td align="right">fax</td> - <td><input size="23" value="${keys[pfax]}" name="pfax"></td> - <td><input size="23" value="${keys[gfax]}" name="gfax"></td> - <td><input size="23" value="${keys[ffax]}" name="ffax"></td> - </tr> - <tr> - <td></td> - <th align="left"><a href="lugs/${keys[code]}">download data</a></th> - </tr> - <tr class="mainhead"> - <th colspan="4" align="center">submission of corrected data; enter your email address and password first!</th> - </tr> - <!-- - <tr><td></td><td align="center" colspan="2" ><font color="red"><b>Currently no changes can be submitted</font></b></td><td></td></tr> - <tr><td></td><td align="center" colspan="2" ><font color="red"><b>due to technical problems</font></b></td><td></td></tr> - <tr><td></td><td align="center" colspan="2" ><font color="red"><b>Please try again later.</font></b></td><td></td></tr> - --> - <tr> - <td></td> - <td align="right">password</td> - <td><input size="23" name="password"></td> - <td><font size="1">obtain from wybo@dekkerdocumenten.nl</font></td> - </tr> - <tr> - <td></td> - <td align="right">your email address</td> - <td><input size="23" name="submitemail"></td> - <td><font size="1">needed in case we have questions</font></td> - </tr> - <tr> - <td></td> - <td></td> - <td align="left"><input type="submit" value="submit corrected data"></td> - </tr> - </table><p> - Links to other User Group correction forms:<p> - <!--#include virtual="links.inc" --> - </form> - <!--#include virtual="../1blok4e.inc" --> - <!--#config timefmt="%Y-%m-%d %H:%M" --> - <!--#echo var="LAST_MODIFIED" --> - by <a href="mailto:$adminemail">$adminemail</a> - </p> </div> </body> </html> - EOF + [[ " $db " =~ \ $1\ ]] || die "Unknown country code $1" + setkeys "$1" "\n" '&' + [[ -n ${keys[www]} ]] && + www='<a class="lug" href="http://'${keys[www]}'">(Here is this lug'"'"'s website)</a>' + cat <<-EOD >"$1".html + <!--#set var="title" value="TeX User Groups around the world" --> + <!--#include virtual="/ssi/header-en.html" --> + <h2>${keys[full]}</h2> + <ul> + <li>Changes won't be instant, but are mailed to the maintainer when you click the submit button at the bottom + <li>Use either TeX notation or accented characters for accents. + <li>Enter phone numbers starting with +, then the country code et + cetera,<br> + no whitespace, hyphens or other punctuation. + </ul> + <form id="lugform" method="post" action="/cgi-bin/lugs.rb" name="lugform"> + <div> + <input type="hidden" value="${keys[code]}" name="code"> Links to other + User Group correction forms:<br> + <!--#include virtual="links.inc" --> + <table id="luginfo"> + <tr> + <th colspan="4" class="lug">${keys[code]} - ${keys[country]} + $www + <tr> + <td class="r">full name + <td> + <textarea class="lug" cols="20" rows="2" name="full">${keys[full]} + </textarea> + <td class="r">periodical + <td> + <textarea class="lug" cols="20" rows="2" name="publ">${keys[publ]} + </textarea> + <tr> + <td class="r">short name + <td><input class="lug" value="${keys[short]}" name="short"> + <td class="r">editor + <td><input class="lug" value="${keys[editor]}" name="editor"> + <tr> + <td class="r"> + <a href= + "http://www.lingoes.net/en/translator/langcode.htm">language(s)</a> + <td><input class="lug" value="${keys[lang]}" name="lang"> + <td class="r">editor email + <td><input class="lug" value="${keys[eemail]}" name="eemail"> + <tr> + <td class="r">members + <td><input class="lug" value="${keys[members]}" name="members"> + <td> + <td> + <tr> + <td class="r">email + <td><input class="lug" value="${keys[email]}" name="email"> + <td class="r">bank + <td><input class="lug" value="${keys[bank]}" name="bank"> + <tr> + <td class="r">web site + <td><input class="lug" value="${keys[www]}" name="www"> + <td class="r">bank account + <td><input class="lug" value="${keys[bacc]}" name="bacc"> + <tr> + <td class="r">mailing list + <td><input class="lug" value="${keys[list]}" name="list"> + <td class="r">swift code + <td><input class="lug" value="${keys[bcode]}" name="bcode"> + <tr> + <td class="r">subscribe at + <td><input class="lug" value="${keys[subscr]}" name="subscr"> + <td class="r">routing no/BIC + <td><input class="lug" value="${keys[brout]}" name="brout"> + <tr> + <td class="tr">address + <td> + <textarea class="lug" cols="20" rows="6" name= + "addr">$(echo -e "${keys[addr]}") + </textarea> + <td class="tr">bank address + <td> + <textarea class="lug" cols="20" rows="6" name= + "baddr">$(echo -e "${keys[baddr]}") + </textarea> + <tr> + <td> + <th colspan="3" class="lug">contact addresses + <tr> + <td> + <th>policy matters + <th>general matters + <th>finance / member admin + <tr> + <td class="r">position + <td><input class="lug" value="${keys[ppos]}" name="ppos"> + <td><input class="lug" value="${keys[gpos]}" name="gpos"> + <td><input class="lug" value="${keys[fpos]}" name="fpos"> + <tr> + <td class="r">name + <td><input class="lug" value="${keys[pname]}" name="pname"> + <td><input class="lug" value="${keys[gname]}" name="gname"> + <td><input class="lug" value="${keys[fname]}" name="fname"> + <tr> + <td class="tr">address + <td> + <textarea class="lug" cols="20" rows="6" name= + "paddr">$(echo -e "${keys[paddr]}") + </textarea> + <td> + <textarea class="lug" cols="20" rows="6" name= + "gaddr">$(echo -e "${keys[gaddr]}") + </textarea> + <td> + <textarea class="lug" cols="20" rows="6" name= + "faddr">$(echo -e "${keys[faddr]}") + </textarea> + <tr> + <td class="r">email + <td><input class="lug" value="${keys[pemail]}" name="pemail"> + <td><input class="lug" value="${keys[gemail]}" name="gemail"> + <td><input class="lug" value="${keys[femail]}" name="femail"> + <tr> + <td class="r">phone + <td><input class="lug" value="${keys[pphone]}" name="pphone"> + <td><input class="lug" value="${keys[gphone]}" name="gphone"> + <td><input class="lug" value="${keys[fphone]}" name="fphone"> + <tr> + <td class="r">fax + <td><input class="lug" value="${keys[pfax]}" name="pfax"> + <td><input class="lug" value="${keys[gfax]}" name="gfax"> + <td><input class="lug" value="${keys[ffax]}" name="ffax"> + <tr> + <th> + <th> + <th class="r"> + <a href="lugs/${keys[code]}">download data</a> + <th> + <tr> + <td> + <th colspan="3" class="lug">submission of corrected data; enter your + email address and password first! + <tr> + <td> + <td class="r">password + <td><input class="lug" name="password"> + <td><small>obtain from $adminemail</small> + <tr> + <td> + <td class="r">your email address + <td><input class="lug" name="submitemail"> + <td><small>needed in case we have questions</small> + <tr> + <td> + <td> + <td colspan="2"><div id="html_element"></div> + <tr> + <td> + <td> + <td><input class="lug" type="submit" value="submit corrected data"> + </table> + <p>Links to other User Group correction forms:<br> + <!--#include virtual="links.inc" --> + </div> + </form> + <script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" async defer></script> + <!--#include virtual="/ssi/footer-en.html" --> + EOD } -<<'DOC' #------ function makeindex.html ---------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = makeindex.html -parameters: - +synopsis: makeindex.html description: Create the file |index.html| -globals set: - globals used: db fullname adminemail -returns: 0 DOC #------------------------------------------------------------------------------- makeindex.html() { - local content=$(for i in ${db[@]}; do echo "<tr><td>$i</td><td><a href=\"$i.html\">${fullname[$i]}</a></td></tr>"; done) - cat <<-EOF |./utf82html >index.html - <!--#include virtual="../1blok1e.inc" --> - <title>Nederlandstalige TeX Gebruikersgroep</title> - <!--#include virtual="../1blok2e.inc" --> - <h1>TeX user groups around the world</h1> - <table border="0" cellspacing="0" cellpadding="10"> - <tr valign="top"><td width="67%"> - This page presents electronic information about TeX User Groups around - the world, with an automated mechanism for updating this information and - a download facility with which the primary database can be extracted. + content() { + local i + for i in $db; do + echo "<tr><td>$i<td><a href=\"$i.html\">${fullname[$i]}</a>" + done + } + cat <<-EOD >index.html + <!--#set var="title" value="TeX User Groups around the world" --> + <!--#include virtual="/ssi/header-en.html" --> + <div class="lugcountries"> + <table> + $(content) + </table> + </div>This page presents electronic information about TeX User Groups around + the world, with an automated mechanism for updating this information and a + download facility with which the primary database can be extracted. + <p> + The data for each user group is generated in a separate table. + To access it, simply click on the name of the country. + <p> + A user group representative (the secretary, usually) can send a + corrected version of his group data by editing the data on-line + and then hitting the Send button. This will mail the changed + data to the maintainer of this page. <p> - The data for each user group is generated in a separate table. To access it, - simply click on the name of the country. - <p> - A user group representative (the secretary, usually) can send a corrected version of his - group data by editing the data on-line and then hitting the Send - button. This will mail the changed data to the maintainer of this page. - <p><b>New</b> user groups can request an entry by sending an - email to wybodekker@dekkerdocumenten.nl + <b>New</b> user groups can + request an entry by sending an email to + $adminemail <ul> - <li>Please enter ASCII characters (decimal 32-126) only - <li>use TeX for accents - <li>Enter phone numbers starting with +, then the country code - et cetera, no whitespace, hyphens or other punctuation. + <li>Please enter ASCII characters (decimal 32-126) only + <li>use TeX for accents + <li>Enter phone numbers starting with +, then the country code et cetera, + no whitespace, hyphens or other punctuation. </ul> - Anybody can obtain user group information by downloading the data from - the green cell in a table. - This will generate a key=value line for each cell in the table, starting with - a key for that cell, followed by the contents of the cell. <p> - <table border="1" cellspacing="0" cellpadding="10"> - <tr class="mainhead"><th colspan="3"> - How to obtain information about all lugs at once: - </th> - </tr> - <tr><td>Obtain a LaTeX file presenting all lug information - for publication in two-column format: - </td> - <td><a href="lugs.tex">LaTeX source</a> - </td> - <td><table> - <tr><td><a href="lugs.pdf">PDF</a></td></tr> - <tr><td><a href="lugs.html">HTML</a></td></tr> - </table> - </td> - </tr> - <tr><td>Obtain a LaTeX file containing labels with addresses - of all lugs, where you can send your publication: - </td> - <td><a href="labels.tex">LaTeX source</a> - </td> - <td><a href="labels.pdf">PDF</a> - </td> - </tr> + Anybody can obtain user group information by downloading the data from + the green cell in a table. This will generate a key=value line for each cell + in the table, starting with a key for that cell, followed by the contents of + the cell. + <table> + <tr> + <th colspan="3" class="lug">How to obtain information about all lugs at + once: + <th> + <tr> + <td>Obtain a LaTeX file presenting all lug information for publication in + two-column format: + <td> + <a href="lugs.tex">LaTeX source</a> + <td> + <table> + <tr> + <td> + <a href="lugs.pdf">PDF</a> + <tr> + <td> + <a href="lugs.html">HTML</a> + </table> + <td> + <tr> + <td>Obtain a LaTeX file containing labels with addresses of all lugs, + where you can send your publication: + <td> + <a href="labels.tex">LaTeX source</a> + <td> + <a href="labels.pdf">PDF</a> + <td> </table> - </td> - <td><table> - $content - </table></td></tr></table> - <!--#include virtual="../1blok4e.inc" --> - <!--#config timefmt="%Y-%m-%d %H:%M" --> - <!--#echo var="LAST_MODIFIED" --> - by <a href="mailto:$adminemail">$adminemail</a> - </p></div></body></html> - EOF + <!--#include virtual="/ssi/footer-en.html" --> + EOD } -<<'DOC' #------ function makelugs.html ----------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = makelugs.html -parameters: - +synopsis: makelugs.html description: Create the file |lugs.html| globals set: (/via/ setkeys) |keys| globals used: db keys fullname -returns: 0 DOC #------------------------------------------------------------------------------- makelugs.html() { - local linkline=$(for l in ${db[@]}; do echo "<a href=\"#$l\">$l</a>"; done) - local i l lug www - { cat <<-EOF - <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - <html> - <head> - <script language="Javascript" type="text/javascript"> - <!-- - if (top.location != location) top.location.href = location.href; - --> - </script> - <title>All TeX User Groups</title> - <style type="text/css"> - <!-- - body { - margin-top: 8pt; - margin-left: 8pt; - color: #777; - background: white; - font-family: Cambria, sans-serif; - font-size:110%; - } - H1, H2, H3, H4 { color: navy; } - a:link { color: navy; } - a:visited { color: green; } - a:active { color: red; } - td.label { - text-align: right; - } - td.addr { - text-align: right; - vertical-align:top; - } - .nounderline A {text-decoration:none; font-weight:bold} - th.kop { - background-color:#aaa; - color:black; - vertical-align:middle; - text-align:left; - font-size:150%; - line-height:200%; - } - th.sub { - color:navy; - text-align:left; - font-size:120%; - } - --> - </style> - </head> - <body> - <h1>TeX user groups around the world</h1> - The TeX Users Group (contact info below) serves as the local user - group (LUG) of TeX users in North America and any other area or - language not appearing in the following list. TUG is always - interested in fostering the formation of local TeX users groups; - please contact the TUG board (board at tug.org) for assistance, - such as forwarding information about others who might be - interested, publicity, arranging joint memberships and so on. + local i + # create lugs.inc + echo '<p>' >lugs.inc + for i in $db; do echo "<a href=\"#$i\">$i</a>"; done >>lugs.inc + # create lugs.html: + { cat <<-EOD + <!--#set var="title" value="TeX User Groups around the world" --> + <!--#include virtual="/ssi/header-en.html" --> <p> - See also: + The TeX Users Group (contact info + below) serves as the local user group (LUG) of TeX users in North America + and any other area or language not appearing in the following list. TUG is + always interested in fostering the formation of local TeX users groups; + please contact the TUG board (board at tug.org) for assistance, such as + forwarding information about others who might be interested, publicity, + arranging joint memberships and so on. See also: <ul> - <li>The TeX calendar ( - <a href="http://texcalendar.dante.de/month.php">month view</a>, - <a href="http://texcalendar.dante.de/year.php">year view</a> - ) for user group activities. - <li>The <a href="http://www.tug.org/calendar.html">TUG Calendar</a> for general TeX and other typographic activities. - <li>The list of <a href="http://www.tug.org/pubs.html">user group publications and journals</a>. - <li>This same information in <a href="lugs.pdf">PDF</a> and in <a href="lugs.tex">LaTeX</a>. - </ul> + <li>The TeX calendar ( + <a href="http://texcalendar.dante.de/month.php">month view</a>, + <a href="http://texcalenmakelugs.htmldar.dante.de/year.php">year view</a> + ) for user group activities. + <li>The <a href="http://www.tug.org/calendar.html">TUG Calendar</a> for + general TeX and other typographic activities. + <li>The list of <a href="http://www.tug.org/pubs.html">user group + publications and journals</a>. + <li>This same information in <a href="lugs.pdf">PDF</a> and in <a href= + "lugs.tex">LaTeX</a>. + </ul>This information comes from the <a href= + "http://www.ntg.nl/lug/index.html">Electronic LUG Database</a>: you can + correct or add information there.<br /> + The following links bring you straight to the individual user group + correction forms: <p> - This information comes from the - <a href="http://www.ntg.nl/lug/index.html">Electronic LUG Database</a>: - you can correct or add information there.<br>The following links - bring you straight to the individual user group correction forms:<p> - <strong> - EOF - for i in ${db[@]}; do - echo " <a href=\"http://www.ntg.nl/lug/$i.html\">$i</a>" + EOD + for i in $db; do + echo " <a href=\"http://www.ntg.nl/lug/$i.html\">$i</a>" done - cat <<-EOF - </strong> + cat <<-EOD <p> Below, a similar line of links just above - every LUG header can be used to wander between the LUG info records in this document.<hr> - <table summary="lugs"> - EOF - for lug in ${db[@]}; do - setkeys $lug '<br>' '&' - www=${keys[www]} - [[ -n $www ]] && www="<a href=\"http://$www\">$www</a>" - cat <<-EOF - <tr><td colspan="2"><br>$linkline</td></tr> - - <tr><th class="kop" colspan="2"> <img src="./images/$lug.png"/> <a name="$lug">$lug - ${fullname[$lug]}</a></th></tr> - <tr><td class="label">short name: </td><td>${keys[short]}</td></tr> - <tr><td class="label">full name: </td><td>${keys[full]}</td></tr> - <tr><td class="label">language: </td><td>${keys[lang]}</td></tr> - <tr><td class="label">members: </td><td>${keys[members]}</td></tr> - <tr><td class="label">email: </td><td>${keys[email]}</td></tr> - <tr><td class="label">web site: </td><td>$www</td></tr> - <tr><td class="label">discussion list:</td><td>${keys[list]}</td></tr> - <tr><td class="label">subscribe at: </td><td>${keys[subscr]}</td></tr> - <tr><td class="addr" >address:</td><td>${keys[addr]}</td></tr> - - <tr><th class="sub" colspan="2">Periodical</th></tr> - <tr><td class="label">title: </td><td>${keys[publ]}</td></tr> - <tr><td class="label">editor: </td><td>${keys[editor]}</td></tr> - <tr><td class="label">editor email: </td><td>${keys[eemail]}</td></tr> - - <tr><th class="sub" colspan="2">Banking</th></tr> - <tr><td class="label">name: </td><td>${keys[bank]}</td></tr> - <tr><td class="label">account: </td><td>${keys[bacc]}</td></tr> - <tr><td class="label">(swift) code: </td><td>${keys[bcode]}</td></tr> - <tr><td class="label">routing no.: </td><td>${keys[brout]}</td></tr> - <tr><td class="addr" >address:</td><td>${keys[baddr]}</td></tr> - - <tr><th class="sub" colspan="2">${keys[ppos]:-President}</th></tr> - <tr><td class="label">name: </td><td>${keys[pname]}</td></tr> - <tr><td class="addr" >address:</td><td>${keys[paddr]}</td></tr> - <tr><td class="label">email: </td><td>${keys[pemail]}</td></tr> - <tr><td class="label">phone: </td><td>${keys[pphone]}</td></tr> - <tr><td class="label">fax: </td><td>${keys[pfax]}</td></tr> - - <tr><th class="sub" colspan="2">${keys[gpos]:-Secretary}</th></tr> - <tr><td class="label">name: </td><td>${keys[gname]}</td></tr> - <tr><td class="addr" >address:</td><td>${keys[gaddr]}</td></tr> - <tr><td class="label">email: </td><td>${keys[gemail]}</td></tr> - <tr><td class="label">phone: </td><td>${keys[gphone]}</td></tr> - <tr><td class="label">fax: </td><td>${keys[gfax]}</td></tr> - - <tr><th class="sub" colspan="2">${keys[fpos]:-Treasurer}</th></tr> - <tr><td class="label">name: </td><td>${keys[fname]}</td></tr> - <tr><td class="addr" >address:</td><td>${keys[faddr]}</td></tr> - <tr><td class="label">email: </td><td>${keys[femail]}</td></tr> - <tr><td class="label">phone: </td><td>${keys[fphone]}</td></tr> - <tr><td class="label">fax: </td><td>${keys[ffax]}</td></tr> - EOF + every LUG header can be used to wander between the LUG info records + in this document. + <hr> + <table> + EOD + for i in $db; do + setkeys "$i" '<br/>' '&' + w=${keys[www]} + [[ -n $w ]] && w="<a href=\"http://$w\">$w</a>" + cat <<-EOD + <tr><td colspan="2"><!--#include virtual="lugs.inc" --> + <tr><th class="kop"><img src="images/$i.png" width="48" alt="flag"><th class="kop" id="$i">$i - ${fullname[$i]} + <tr><td class="r">short name: <td>${keys[short]} + <tr><td class="r">full name: <td>${keys[full]} + <tr><td class="r">language: <td>${keys[lang]} + <tr><td class="r">members: <td>${keys[members]} + <tr><td class="r">email: <td>${keys[email]} + <tr><td class="r">web site: <td>$w + <tr><td class="r">discussion list:<td>${keys[list]} + <tr><td class="r">subscribe at: <td>${keys[subscr]} + <tr><td class="tr">address: <td>${keys[addr]} + <tr><td class="h3" colspan="2">Periodical + <tr><td class="r">title: <td>${keys[publ]} + <tr><td class="r">editor: <td>${keys[editor]} + <tr><td class="r">editor email:<td>${keys[eemail]} + <tr><td class="h3" colspan="2">Banking + <tr><td class="r">name: <td>${keys[bank]} + <tr><td class="r">account: <td>${keys[bacc]} + <tr><td class="r">(swift) code:<td>${keys[bcode]} + <tr><td class="r">routing no.: <td>${keys[brout]} + <tr><td class="tr">address: <td>${keys[baddr]} + <tr><td class="h3" colspan="2">${keys[ppos]:-President} + <tr><td class="r">name: <td>${keys[pname]} + <tr><td class="tr" >address: <td>${keys[paddr]} + <tr><td class="r">email: <td>${keys[pemail]} + <tr><td class="r">phone: <td>${keys[pphone]} + <tr><td class="r">fax: <td>${keys[pfax]} + <tr><td class="h3" colspan="2">${keys[gpos]:-Secretary} + <tr><td class="r">name: <td>${keys[gname]} + <tr><td class="tr">address: <td>${keys[gaddr]} + <tr><td class="r">email: <td>${keys[gemail]} + <tr><td class="r">phone: <td>${keys[gphone]} + <tr><td class="r">fax: <td>${keys[gfax]} + <tr><td class="h3" colspan="2">${keys[fpos]:-Treasurer} + <tr><td class="r">name: <td>${keys[fname]} + <tr><td class="tr">address: <td>${keys[faddr]} + <tr><td class="r">email: <td>${keys[femail]} + <tr><td class="r">phone: <td>${keys[fphone]} + <tr><td class="r">fax: <td>${keys[ffax]} + EOD done - echo "</table></body></html>" - } | sed '/^$/d;/<\/td><td><\/td><\/tr>$/d' | - tac | # reverse and go looking for <h3> headers with no content - while read -r l; do - if [[ $l =~ :\ *\</td\> ]]; then # content line? - keep=true # yes, keep <h3> header - elif [[ $l =~ class=\"sub\" ]]; then # sub header? - $keep || continue # keep it if keep was set true, skip otherwise - keep=false # not a content line, so set keep false + cat <<-EOD + </table> + <!--#include virtual="/ssi/footer-en.html" --> + EOD + } | sed '/^$/d;/<td>$/d' | + tac | # reverse and go looking for headers with no content + while read -r i; do + local keep + if [[ $i =~ :\ *\<td\> ]]; then # content line? + keep=true # yes, keep header + elif [[ $i =~ (\<img|span=) ]]; then # header? + $keep || continue # keep it if keep was set true, skip otherwise + keep=false # not a content line, so set keep false else - keep=false # not a content line, so set keep false + keep=false # not a content line, so set keep false fi - echo "$l" + echo "$i" done | - tac | - utf82html >lugs.html + tac >lugs.html } -<<'DOC' #------ function makelugs.pdf ------------------------------------------ + +:<<'DOC' #---------------------------------------------------------------------- += urlit +synopsis: urlit string +description: if argument is not empty, print it surrounded with |\url{...}|, +DOC +#------------------------------------------------------------------------------- +urlit () { + if [[ -n $1 ]]; then + printf '\\url{%s}' "$1" + fi +} + +:<<'DOC' #---------------------------------------------------------------------- += stackit +synopsis: stackit string +description: if argument is empty, print newline, + if not, replace semicolons with double backslashes and print it + surrounded with |\Longunderstack[l]{...}\strut| +DOC +#------------------------------------------------------------------------------- +stackit () { + if [[ -z $1 ]]; then + echo + else + printf '\\Longunderstack[l]{%s\\strut}' "${1//;/\\\\}" + fi +} + + +:<<'DOC' #---------------------------------------------------------------------- = makelugs.pdf -parameters: - -description: Create the files |lug.tex| and |lugs.pdf| +synopsis: makelugs.pdf +description: Create the files |lugs.tex| and |lugs.pdf| globals set: (/via/ setkeys) |keys| globals used: keys db fullname -returns: 0 DOC #------------------------------------------------------------------------------- makelugs.pdf() { - local l lug - { cat <<-'EOF' - %!xelatex + local i + { cat <<-'EOD' + %!lualatex \documentclass[10pt]{article} \usepackage[a4paper,margin=25mm]{geometry} + \usepackage{textcomp} \usepackage{fontspec} \usepackage{url} @@ -811,403 +782,1412 @@ makelugs.pdf() { #2}\nopagebreak} \def\subhead#1{\\{\bfseries\upshape #1:}} \begin{document}\fontspec{FreeSans} - EOF - for lug in ${db[@]}; do - setkeys $lug '\\' '\&' - cat <<-EOF + EOD + for i in $db; do + setkeys "$i" "\\\\" '\&' + cat <<-EOD \begin{mylist} - \head{$lug}{${fullname[$lug]}} + \head{$i}{${fullname[$i]}} \item[short name] ${keys[short]} \item[full name] ${keys[full]} \item[language] ${keys[lang]} - \item[members] ${keys[members]} - \item[email] ${keys[email]:+$(echo "\\url{${keys[email]}}")} - \item[web site] ${keys[www]:+$(echo "\\url{${keys[www]}}")} + \item[members] ${keys[members]} + \item[email] $(urlit "${keys[email]}") + \item[web site] $(urlit "${keys[www]}") \item[discussion list]${keys[list]} \item[subscribe at] ${keys[subscr]} - \item[address] ${keys[addr]:+$(echo "\\Longunderstack[l]{${keys[addr]//;/\\\\}\\strut}")} + \item[address] $(stackit "${keys[addr]}") \subhead{Periodical} - \item[title] ${keys[publ]} - \item[editor] ${keys[editor]} - \item[editor email] ${keys[eemail]:+$(echo "\\url{${keys[eemail]}}")} + \item[title] ${keys[publ]} + \item[editor] ${keys[editor]} + \item[editor email] $(urlit "${keys[eemail]}") \subhead{Banking} - \item[name] ${keys[bank]} - \item[account] ${keys[bacc]} + \item[name] ${keys[bank]} + \item[account] ${keys[bacc]} \item[(swift) code] ${keys[bcode]} \item[routing no.] ${keys[brout]} - \item[address] ${keys[baddr]:+$(echo "\\Longunderstack[l]{${keys[baddr]//;/\\\\}\\strut}")} + \item[address] $(stackit "${keys[baddr]}") \subhead{${keys[ppos]:-President}} - \item[name] ${keys[pname]} - \item[address] ${keys[paddr]:+$(echo "\\Longunderstack[l]{${keys[paddr]//;/\\\\}\\strut}")} - \item[email] ${keys[pemail]:+$(echo "\\url{${keys[pemail]}}")} - \item[phone] ${keys[pphone]} - \item[fax] ${keys[pfax]} + \item[name] ${keys[pname]} + \item[address] $(stackit "${keys[paddr]}") + \item[email] $(urlit "${keys[pemail]}") + \item[phone] ${keys[pphone]} + \item[fax] ${keys[pfax]} \subhead{${keys[gpos]:-Secretary}} - \item[name] ${keys[gname]} - \item[address] ${keys[gaddr]:+$(echo "\\Longunderstack[l]{${keys[gaddr]//;/\\\\}\\strut}")} - \item[email] ${keys[gemail]:+$(echo "\\url{${keys[gemail]}}")} - \item[phone] ${keys[gphone]} - \item[fax] ${keys[gfax]} + \item[name] ${keys[gname]} + \item[address] $(stackit "${keys[gaddr]}") + \item[email] ${keys[gemail]} + \item[phone] ${keys[gphone]} + \item[fax] ${keys[gfax]} \subhead{${keys[fpos]:-Treasurer}} - \item[name] ${keys[fname]} - \item[address] ${keys[faddr]:+$(echo "\\Longunderstack[l]{${keys[faddr]//;/\\\\}\\strut}")} - \item[email] ${keys[femail]:+$(echo "\\url{${keys[femail]}}")} - \item[phone] ${keys[fphone]} - \item[fax] ${keys[ffax]} + \item[name] ${keys[fname]} + \item[address] $(stackit "${keys[faddr]}") + \item[email] $(urlit "${keys[femail]}") + \item[phone] ${keys[fphone]} + \item[fax] ${keys[ffax]} \end{mylist} - EOF + EOD done echo '\end{document}' } | - sed '/^\\item\[.*\] *$/d;/^$/d' | + sed '/^\\item\[.*\]\s*$/d;/^$/d' | tac | # reverse and go looking for \subhead headers with no content - while read -r l; do - if [[ $l =~ ^\\item ]]; then # content line? - keep=true # yes, keep <h3> header - elif [[ $l =~ ^\\subhead ]]; then # \subhead header? - $keep || continue # keep it if keep was set true, skip otherwise - keep=false # not a content line, so set keep false + while read -r i; do + local keep + if [[ $i =~ ^\\item ]]; then # content line? + keep=true # yes, keep header + elif [[ $i =~ ^\\subhead ]]; then # header? + $keep || continue # keep it if keep was set true, skip otherwise + keep=false # not a content line, so set keep false else - keep=false # not a content line, so set keep false + keep=false # not a content line, so set keep false fi - echo "$l" + echo "$i" done | tac >lugs.tex - mk --noprint --noview lugs.tex && - mk -c lugs.tex || + if lualatex lugs.tex >/dev/null; then + rm lugs.{aux,log} + else die "Problems compiling lugs.tex" + fi } -<<'DOC' #------ function makelabels.pdf ---------------------------------------- +:<<'DOC' #---------------------------------------------------------------------- = makelabels.pdf -parameters: - -description: Create the file |labels.tex| and |labels.pdf| +synopsis: makelabels.pdf +description: Create the files |labels.tex| and |labels.pdf| globals set: (/via/ setkeys) |keys| globals used: keys db -returns: 0 DOC #------------------------------------------------------------------------------- makelabels.pdf() { - local a i lug - { cat <<-'EOF' - %!xelatex + local a i j + { cat <<-'EOD' + %!lualatex \documentclass{article} \usepackage{labels,fontspec} \LabelRows=8\LabelCols=3 \TopBorder=0mm\BottomBorder=0mm \LeftBorder=7mm\RightBorder=7mm \begin{document}\fontspec{FreeSans}\begin{labels} - EOF - for lug in ${db[@]}; do - setkeys $lug "\n" '\&' - a= - for i in addr gaddr paddr faddr; do - if [[ -n ${keys[$i]} ]]; then - a=${keys[$i]} - break - fi - done - [[ -n $a ]] || continue - echo -e "${keys[short]:-${keys[full]}}\n$a\n" + EOD + for i in $db; do + setkeys "$i" "\n" '\&' + a= + for j in addr gaddr paddr faddr; do + if [[ -n ${keys[$j]} ]]; then + a=${keys[$j]} + break + fi + done + [[ -n $a ]] || continue + echo -e "${keys[short]:-${keys[full]}}\n$a\n" done - echo '\end{labels}\end{document}' + echo '\end{labels}\end{document}' } >labels.tex - mk --noprint --noview labels.tex && - mk -c labels.tex || + if lualatex labels.tex >/dev/null; then + rm labels.{aux,log} + else die "Problems compiling labels.tex" + fi } -<<'DOC' #----------- fullname ----------------------------- +:<<'DOC' #---------------------------------------------------------------------- = fullname (hash) Links the country codes to the full name of countries. Also used to test the validity of country codes. DOC -#---------------------------------------------------------- +#------------------------------------------------------------------------------- declare -A fullname=( - [ad]='Andorra' [ky]='Cayman Islands' + [ad]='Andorra' [ky]='Cayman Islands' [ae]='United Arab Emirates' [kz]='Kazakhstan' - [af]='Afghanistan' [la]='Laos' + [af]='Afghanistan' [la]='Laos' [ag]='Antigua and Barbuda' [lb]='Lebanon' - [ai]='Anguilla' [li]='Liechtenstein' - [al]='Albania' [lk]='Sri Lanka' - [am]='Armenia' [lr]='Liberia' + [ai]='Anguilla' [li]='Liechtenstein' + [al]='Albania' [lk]='Sri Lanka' + [am]='Armenia' [lr]='Liberia' [an]='Netherlands Antilles' [ls]='Lesotho' - [ao]='Angola' [lt]='Lithuania' - [ar]='Argentina' [lu]='Luxembourg' - [as]='American Samoa' [lv]='Latvia' - [at]='Austria' [ly]='Libya' - [au]='Australia' [ma]='Morocco' - [aw]='Aruba' [mc]='Monaco' - [az]='Azerbaijan' [md]='Moldova' + [ao]='Angola' [lt]='Lithuania' + [ar]='Argentina' [lu]='Luxembourg' + [as]='American Samoa' [lv]='Latvia' + [at]='Austria' [ly]='Libya' + [au]='Australia' [ma]='Morocco' + [aw]='Aruba' [mc]='Monaco' + [az]='Azerbaijan' [md]='Moldova' [ba]='Bosnia and Herzegovina' [mg]='Madagascar' - [bb]='Barbados' [mh]='Marshall Islands' - [bd]='Bangladesh' [mk]='Macedonia' - [be]='Belgium' [ml]='Mali' - [bf]='Burkina Faso' [mm]='Myanmar' - [bg]='Bulgaria' [mn]='Mongolia' - [bh]='Bahrain' [mo]='Macau' - [bi]='Burundi' [mp]='Northern Marianas Islands' - [bj]='Benin' [mq]='Martinique' - [bm]='Bermuda' [mr]='Mauritania' - [bn]='Brunei' [ms]='Montserrat' - [bo]='Bolivia' [mt]='Malta' - [br]='Brazil' [mu]='Mauritius' - [bs]='Bahamas' [mv]='Maldives' - [bt]='Bhutan' [mw]='Malawi' - [bw]='Botswana' [mx]='Mexico' - [by]='Belarus' [my]='Malaysia' - [bz]='Belize' [mz]='Mozambique' - [ca]='Canada' [na]='Namibia' + [bb]='Barbados' [mh]='Marshall Islands' + [bd]='Bangladesh' [mk]='Macedonia' + [be]='Belgium' [ml]='Mali' + [bf]='Burkina Faso' [mm]='Myanmar' + [bg]='Bulgaria' [mn]='Mongolia' + [bh]='Bahrain' [mo]='Macau' + [bi]='Burundi' [mp]='Northern Marianas Islands' + [bj]='Benin' [mq]='Martinique' + [bm]='Bermuda' [mr]='Mauritania' + [bn]='Brunei' [ms]='Montserrat' + [bo]='Bolivia' [mt]='Malta' + [br]='Brazil' [mu]='Mauritius' + [bs]='Bahamas' [mv]='Maldives' + [bt]='Bhutan' [mw]='Malawi' + [bw]='Botswana' [mx]='Mexico' + [by]='Belarus' [my]='Malaysia' + [bz]='Belize' [mz]='Mozambique' + [ca]='Canada' [na]='Namibia' [cf]='Central African Republic' [nc]='New Caledonia' - [cg]='Congo' [ne]='Niger' - [ch]='Switzerland' [nf]='Norfolk Island' - [ci]='Ivory Coast' [ng]='Nigeria' - [ck]='Cook Islands' [ni]='Nicaragua' - [cl]='Chile' [nl]='Netherlands' - [cm]='Cameroon' [no]='Norway' - [cn]='China' [nr]='Nauru' - [co]='Colombia' [nu]='Niue' - [cr]='Costa Rica' [nz]='New Zealand' - [cu]='Cuba' [om]='Oman' + [cg]='Congo' [ne]='Niger' + [ch]='Switzerland' [nf]='Norfolk Island' + [ci]='Ivory Coast' [ng]='Nigeria' + [ck]='Cook Islands' [ni]='Nicaragua' + [cl]='Chile' [nl]='Netherlands' + [cm]='Cameroon' [no]='Norway' + [cn]='China' [nr]='Nauru' + [co]='Colombia' [nu]='Niue' + [cr]='Costa Rica' [nz]='New Zealand' + [cu]='Cuba' [om]='Oman' [cv]='Cape Verde Islands' [pa]='Panama' - [cy]='Cyprus' [pe]='Peru' - [cz]='Czech Republic' [pf]='French Polynesia' - [de]='Germany' [pg]='Papua New Guinea' - [dj]='Djibouti' [ph]='Philippines' - [dk]='Denmark' [pk]='Pakistan' - [dm]='Dominica' [pl]='Poland' + [cy]='Cyprus' [pe]='Peru' + [cz]='Czech Republic' [pf]='French Polynesia' + [de]='Germany' [pg]='Papua New Guinea' + [dj]='Djibouti' [ph]='Philippines' + [dk]='Denmark' [pk]='Pakistan' + [dm]='Dominica' [pl]='Poland' [do]='Dominican Republic' [pm]='St Pierre and Miquelon' - [dz]='Algeria' [pr]='Puerto Rico' - [ec]='Ecuador' [pt]='Portugal' - [ee]='Estonia' [pw]='Palau' - [eg]='Egypt' [py]='Paraguay' - [eh]='Western Samoa' [qa]='Qatar' - [er]='Eritrea' [re]='Reunion' - [es]='Spain' [ro]='Romania' - [esc]='Spain (Catalan)' [ru]='Russia' - [et]='Ethiopia' [rw]='Rwanda' - [fi]='Finland' [sa]='Saudi Arabia' - [fj]='Fiji Islands' [sb]='Solomon Islands' - [fk]='Falkland Islands' [sc]='Seychelles Islands' - [fm]='Micronesia' [sd]='Sudan' - [fo]='Faroe Islands' [se]='Sweden' - [fr]='France' [sg]='Singapore' - [ga]='Gabon' [si]='Slovenia' - [gb]='United Kingdom' [sk]='Slovak Republic' - [gd]='Grenada' [sl]='Sierra Leone' - [ge]='Georgia' [sm]='San Marino' - [gf]='French Guiana' [sn]='Senegal' - [gh]='Ghana' [so]='Somalia' - [gi]='Gibraltar' [sr]='Suriname' - [gl]='Greenland' [sv]='El Salvador' - [gm]='Gambia' [sy]='Syria' - [gn]='Guinea' [sz]='Swaziland' - [gp]='Guadeloupe' [tc]='Turks and Caicos Islands' - [gq]='Equatorial Guinea' [td]='Chad' - [gr]='Greece' [tg]='Togo' - [gt]='Guatemala' [th]='Thailand' - [gu]='Guam' [tj]='Tajikistan' - [gw]='Guinea-Bissau' [tk]='Tokelau' - [gy]='Guyana' [tm]='Turkmenistan' - [hk]='Hong Kong' [tn]='Tunisia' - [hn]='Honduras' [to]='Tonga Islands' - [hr]='Croatia' [tp]='East Timor' - [ht]='Haiti' [tr]='Turkey' - [hu]='Hungary' [tt]='Trinidad and Tobago' - [id]='Indonesia' [tv]='Tuvalu' - [ie]='Ireland' [tw]='Taiwan' - [il]='Israel' [tz]='Tanzania' - [in]='India' [ua]='Ukraine' - [iq]='Iraq' [ug]='Uganda' - [ir]='Iran' [us]='TeX User Group (International)' - [is]='Iceland' [uy]='Uruguay' - [it]='Italy' [uz]='Uzbekistan' - [jm]='Jamaica' [ve]='Venezuela' - [jo]='Jordan' [vg]='Virgin Islands (GB)' - [jp]='Japan' [vi]='Virgin Islands (US)' - [ke]='Kenya' [vn]='Vietnam' - [kg]='Kyrgyzstan' [vu]='Vanuatu' - [kh]='Cambodia' [wf]='Wallis and Futuna Islands' - [ki]='Kiribati' [ye]='Yemen' - [km]='Comoros' [yt]='Mayotte Island' + [dz]='Algeria' [pr]='Puerto Rico' + [ec]='Ecuador' [pt]='Portugal' + [ee]='Estonia' [pw]='Palau' + [eg]='Egypt' [py]='Paraguay' + [eh]='Western Samoa' [qa]='Qatar' + [er]='Eritrea' [re]='Reunion' + [es]='Spain' [ro]='Romania' + [esc]='Spain (Catalan)' [ru]='Russia' + [et]='Ethiopia' [rw]='Rwanda' + [fi]='Finland' [sa]='Saudi Arabia' + [fj]='Fiji Islands' [sb]='Solomon Islands' + [fk]='Falkland Islands' [sc]='Seychelles Islands' + [fm]='Micronesia' [sd]='Sudan' + [fo]='Faroe Islands' [se]='Sweden' + [fr]='France' [sg]='Singapore' + [ga]='Gabon' [si]='Slovenia' + [gb]='United Kingdom' [sk]='Slovak Republic' + [gd]='Grenada' [sl]='Sierra Leone' + [ge]='Georgia' [sm]='San Marino' + [gf]='French Guiana' [sn]='Senegal' + [gh]='Ghana' [so]='Somalia' + [gi]='Gibraltar' [sr]='Suriname' + [gl]='Greenland' [sv]='El Salvador' + [gm]='Gambia' [sy]='Syria' + [gn]='Guinea' [sz]='Swaziland' + [gp]='Guadeloupe' [tc]='Turks and Caicos Islands' + [gq]='Equatorial Guinea' [td]='Chad' + [gr]='Greece' [tg]='Togo' + [gt]='Guatemala' [th]='Thailand' + [gu]='Guam' [tj]='Tajikistan' + [gw]='Guinea-Bissau' [tk]='Tokelau' + [gy]='Guyana' [tm]='Turkmenistan' + [hk]='Hong Kong' [tn]='Tunisia' + [hn]='Honduras' [to]='Tonga Islands' + [hr]='Croatia' [tp]='East Timor' + [ht]='Haiti' [tr]='Turkey' + [hu]='Hungary' [tt]='Trinidad and Tobago' + [id]='Indonesia' [tv]='Tuvalu' + [ie]='Ireland' [tw]='Taiwan' + [il]='Israel' [tz]='Tanzania' + [in]='India' [ua]='Ukraine' + [iq]='Iraq' [ug]='Uganda' + [ir]='Iran' [us]='TeX Users Group (International)' + [is]='Iceland' [uy]='Uruguay' + [it]='Italy' [uz]='Uzbekistan' + [jm]='Jamaica' [ve]='Venezuela' + [jo]='Jordan' [vg]='Virgin Islands (GB)' + [jp]='Japan' [vi]='Virgin Islands (US)' + [ke]='Kenya' [vn]='Vietnam' + [kg]='Kyrgyzstan' [vu]='Vanuatu' + [kh]='Cambodia' [wf]='Wallis and Futuna Islands' + [ki]='Kiribati' [ye]='Yemen' + [km]='Comoros' [yt]='Mayotte Island' [kn]='St Kitts and Nevis' [yu]='Yugoslavia' - [kp]='Korea (North)' [za]='South Africa' - [kr]='Korea (South)' [zm]='Zambia' - [kw]='Kuwait' [zw]='Zimbabwe' + [kp]='Korea (North)' [za]='South Africa' + [kr]='Korea (South)' [zm]='Zambia' + [kw]='Kuwait' [zw]='Zimbabwe' ) -<<'DOC' #----------- keys, inp ---------------------------- -= keys, inp (hashes) -Depending on which lug is handled, |keys| will contain the -key and values defined in the files in |lugs/|. -In an edit operation, |inp| will be filled with similar -keys and values that will replace those in keys. -DOC -#---------------------------------------------------------- +# =============== Program starts here ============= + +# Are all executables there? +excheck getopt uudecode uuencode lualatex rsync sed tac mktemp + +# Depending on which lug is handled, |keys| will contain the +# key and values defined in the files in |lugs/|. +# In an edit operation, |inp| will be filled with similar +# keys and values that will replace those in keys. declare -A keys inp -<<'DOC' #------------- db --------------------------------- -= db (string) -Contains the space-separated country codes for which data -are available in the |lugs/| directory. -DOC -#---------------------------------------------------------- -db=$(test -d lugs && cd lugs && ls | tr "\n" " ") +# webdirectory where the --sync option places the new data: +webdir=www.ntg.nl:/var/www/ntg.nl/www/htdocs/ + +# Contains the email address that should receive corrections +# from the web site. +adminemail=wybo@ntg.nl + +# This lug-script must be in either an empty directory +# (where a lug web page will be generated), or in an +# existing web page directory: +i=$(realpath "$0") +i=${i%/lug} +cd "$i" || die "could not cd to $i}" +if [[ $1 =~ --?[HhV] ]]; then + : # go on +elif [[ $(ls) == 'lug' ]]; then + # if we got in a directory containing only the lug script, then we + # setup from scratch: + Warn 'This looks like your first run of the lug script' \ + 'so I will set up auxilliary files and then quit' \ + '(this will take some time...)' + tmp=$(mktemp) + uudecode lug > "$tmp" + unzip -qq "$tmp" + rm "$tmp" + db="$(cd lugs && echo [a-z]*)" # db='bg br ca...' + makeMakefile + make --quiet || die "errors running make" + clean +elif [ -d lugs ] && [ -d images ] && [ -e lug ] && [ -e lugs.rb ]; then + : # go on +else + die 'The lug script must run in an otherwise empty directory, or' \ + ' in a directory containing all LUG data. You must run it in' \ + ' that directory, or you must make a link to the lug script' \ + ' in your PATH.' \ + ' If this is the first time you run lug, move it to an empty' \ + ' directory and run it from there; it will create everything' \ + ' in that directory to make it a copy of the remote web site.' +fi -<<'DOC' #------------- admin ------------------------------ -= admin (string) -Contains the user name of the lug administrator at www.ntg.nl -DOC -#---------------------------------------------------------- -admin=wybo +# for the help and version options, the lugs dir may be absent: +test -d ./lugs && db="$(cd lugs && echo [a-z]*)" # db='bg br ca...' -<<'DOC' #------------- adminemail ------------------------- -= adminemail (string) -Contains the email address that should receive corrections -from the web site. -DOC -#---------------------------------------------------------- -adminemail=wybo@dekkerdocumenten.nl +handle_options "$@" +set -- "${args[@]}" -# =============== Program starts here ============= -source=$(readlink $0 || echo ./lug) -cd ${source%/lug} -test -d lugs -a -e lug || - die "The lug script is part of a directory containing all LUG data;\n" \ - " You must run (an exact copy of) it in that directory,\n" \ - " or you must make a link to the lug script in your PATH" -diff ./lug $0 >/dev/null || die "You are running a copy of the lug script that differs from its source" - -if ! options=$(getopt \ - -n $myname \ - -o hHVIcfe:s:: \ - -l help,Help,version,clean,full,extras:,sync:: \ - -- "$@" -); then exit 1; fi -eval set -- "$options" -while [ $# -gt 0 ]; do - case $1 in - (-h|--help) help;; - (-H|--Help) helpall;; - (-V|--version) version;; - (-I) install;; - (-c|--clean) Clean - exit;; - (-f|--full) Clean - makeutf82html.c - makeMakefile - make --quiet - clean - exit;; - (-e|--extras) eval "make$2" - exit;; - (-s|--sync) i=${2:-lug} - n=$(ls -R|wc -l) - test $n -lt 70 && die "Only $n files here, can't sync" - echo syncing with www.ntg.nl/$i - rsync -ia --delete --exclude='.hg*' ./ $admin@www.ntg.nl:html/$i/ - exit;; - (--) shift; break;; - (*) break;; - esac +# any arguments are country codes for which an html files are created: +for i; do + makexx.html "$i" done - -if [ -n "$1" ]; then - for i in "$@"; do - makexx.html $i - done - exit -fi +[ $# -gt 0 ] && exit in=false echo waiting for input... -while IFS='' read line; do +while IFS='' read -r line; do + line=$(sed -e 's/^\s\+//;s/\s\+$//' <<<"$line") # trim [[ -z $line ]] && continue # skip empty lines - if [[ $line =~ ^code= ]]; then # we get here only with manual input + if [[ $line =~ ^code= ]]; then # we get here only with manual input in=true # of a few lines; those must start with code= inp[code]=${line#*=} fi [[ $line == 'password=kjwb' ]] && { in=true; continue; } $in || continue # look only after "password=kjwb" - [[ $line =~ =$ ]] && continue if [[ $line =~ = ]]; then - IFS='=' read k v <<<$line + IFS='=' read -r k v <<<"$line" inp[$k]="$v" - else + else inp[$k]+=";$line" fi done + code=${inp[code]} [[ -n $code ]] || die "No code was specified" -[[ $(echo ${db[@]}) =~ $code ]] || die "Unrecognized code: $code" - -setkeys $code ';' '&' # make copy of old data in keys -for i in ${!inp[@]}; do keys[$i]=${inp[$i]}; done # overwrite with new data +[[ $db =~ $code ]] || die "Unrecognized code: $code" + +setkeys "$code" ';' '&' # make copy of old data in keys + +changed=false +for i in "${!keys[@]}"; do + old=${keys[$i]} + new=${inp[$i]} + if [[ $old != "$new" ]]; then + $changed || echo "The following changes were found:" + printf "%-7s: '%s'\n%9s'%s'\n" "$i" "$old" ">" "$new" + changed=true + fi +done +$changed || die "no changes" -cat <<-EOF >new +while true; do + read -r -p "Save [Yn]? " r + case $r in + ([yY]|'') + cat <<-EOD >"lugs/$code" # General: - code ${keys[code]} - short ${keys[short]} - full ${keys[full]} - lang ${keys[lang]} - members ${keys[members]} - email ${keys[email]} - www ${keys[www]} - list ${keys[list]} - subscr ${keys[subscr]} - addr ${keys[addr]} + code ${inp[code]} + short ${inp[short]} + full ${inp[full]} + lang ${inp[lang]} + members ${inp[members]} + email ${inp[email]} + www ${inp[www]} + list ${inp[list]} + subscr ${inp[subscr]} + addr ${inp[addr]} # Periodical: - publ ${keys[publ]} - editor ${keys[editor]} - eemail ${keys[eemail]} + publ ${inp[publ]} + editor ${inp[editor]} + eemail ${inp[eemail]} # Banking: - bank ${keys[bank]} - bacc ${keys[bacc]} - bcode ${keys[bcode]} - brout ${keys[brout]} - baddr ${keys[baddr]} + bank ${inp[bank]} + bacc ${inp[bacc]} + bcode ${inp[bcode]} + brout ${inp[brout]} + baddr ${inp[baddr]} # Policy matters: - ppos ${keys[ppos]} - pname ${keys[pname]} - paddr ${keys[paddr]} - pemail ${keys[pemail]} - pphone ${keys[pphone]} - pfax ${keys[pfax]} + ppos ${inp[ppos]} + pname ${inp[pname]} + paddr ${inp[paddr]} + pemail ${inp[pemail]} + pphone ${inp[pphone]} + pfax ${inp[pfax]} # General matters: - gpos ${keys[gpos]} - gname ${keys[gname]} - gaddr ${keys[gaddr]} - gemail ${keys[gemail]} - gphone ${keys[gphone]} - gfax ${keys[gfax]} + gpos ${inp[gpos]} + gname ${inp[gname]} + gaddr ${inp[gaddr]} + gemail ${inp[gemail]} + gphone ${inp[gphone]} + gfax ${inp[gfax]} # Finance matters: - fpos ${keys[fpos]} - fname ${keys[fname]} - faddr ${keys[faddr]} - femail ${keys[femail]} - fphone ${keys[fphone]} - ffax ${keys[ffax]} - EOF -diff -y --left-column --report-identical-files lugs/$code new && die "No changes" -while true; do - echo -n "Save [Yn]? " - read r - case $r in - ([yY]|'') mv -f new lugs/$code && Warn Saved || die "Could not save" - exit - ;; - (n|N) die "Not saved, result left in file new" - ;; - esac + fpos ${inp[fpos]} + fname ${inp[fname]} + faddr ${inp[faddr]} + femail ${inp[femail]} + fphone ${inp[fphone]} + ffax ${inp[ffax]} + EOD + Warn Saved + exit + ;; + (n|N) + die "Not saved, result left in file new" + ;; + esac done + +:<<'auxfiles' +begin-base64 644 - +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 +Xl6ul5mXXZycWJCql1+UPvudjRQDA6Okp4tjiEfn3otnvZgCJdo/smfe9/oi +dy43RVtQUN1FQH8hd0ZkN+PuZo3MGQKOAoLTvdZ2dy3qD317JTGAvbjLzHe2 +GkvgnxmV/3eXF/74WHBhy6b028L+VQf2iffKVWy9tVdDhnHDW86bOTNj3s05 +eMA1aeLLxVF7nTXnVv11FGPbsIbfaKbxp8rmhx+C+b6Fr7yzaIrf4o8a3Mxf +fidfehnMxTr5osaNX60b7C/vcdScm/bZU4ztxddjS4LURbrFLc5Nl3lz3mBd +oNfyq1X3OO5FPb/ov717sk/SRz329x8PKYbnfN5rtktI5vjTGWbW0iHreNhD +d5rIHF/qMtvFYar3wcQQvZbk+npJt6cxEY+nKus5r57TmLxjyosNp6NfPLDX +ibTcGx8U69Sdu7FdGhiSDJ6ufi7rnBKaAFBLBwjuxNmhnwEAAJwBAABQSwME +FAAIAAgAlbp7VAAAAAAAAAAAUQIAAA0AHABpbWFnZXMvZ3IucG5nVVQJAAMq +1UBiKtVAYnV4CwABBOgDAAAE6AMAAOsM8HPn5ZLiYmBg4PX0cAkC0gpALMrB +DCQFhGVuACmWdEdfRwaGjf3cfxJZgXzG4iB3J4Z152ReglQnewT5MjBUqTEw +NLQwMPwCCjW8YGAoNWBgeJXAwGA1g4FBvGDOrkAboMTSAJ8QV6A8A0Odn9/S +P3/+vn//TV9/GgNDPSNjAzNzg4rKxEWLzq5efYmBocbXd7G+/hRT0xmfPv34 +//9/fPya2NjV/f1H/v799+XLz5qa3XFxa/LztyxffuH06Sf8/K2MjPUPH757 +8ODdq1efnz37+Pjxh507b2pqTpCV7ZGT65GS6kpKWvvx43cPjwXS0t0yMt3u +7guuX3/56NE7BoZaP78l+vpTTU1nioh0RkevSkhYu3baqykgnyZ5u7sIPtpq +uwvI4SzwiCwG0h5g7HYy2w7ImOXp4hiicb71/HG+QwYCLBciZeY4+HQqlkyT +s2r59X8+m7iKt9kt9be5JrcYGVatWLHq4319AXVGP4frr1byu6RIaWVJGa0t +e9a8ddvls9V/G2V53BeyqdvM80nmn1Fpdv4T6+eirfdE5Grydwf/PrzRYq5+ ++DeH7Nh7ISXqvv0PJp878/x1ru05Hy3fBmNjnpkMOg6KDjoOWhPmi0gLMarI +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 +==== +auxfiles diff --git a/support/lug/lug.1 b/support/lug/lug.1 new file mode 100644 index 0000000000..00db798c1d --- /dev/null +++ b/support/lug/lug.1 @@ -0,0 +1,99 @@ +.TH lug 1 "March 28, 2022" "lug version 3.00" "DekDoc scripts" +.SH NAME + +lug - manage TeX Local User Group web pages + +.SH Synopsis +lug [options] [lug-code] + +.SS Options + +.B -h,--help +.RS +print short help and exit +.RE +.B -H,--Help +.RS +print full documentation via less and exit +.RE +.B -V,--version +.RS +print version and exit +.RE +.B -c,--clean +.RS +remove all files that can be re-created +.RE +.B -f,--full +.RS +re-create all files +.RE +.B -s,--sync[=STR] +.RS +synchronize the lug page at www.ntg.nl/STR +.RE +.RS +with the current directory; the default for STR is lug +.RE + +.SH Description +lug can be used to to (re-)create the web pages of the LUG database. This script must be executed in its own directory. After the script has been executed, this directory will contain the web site for the [Electronic LUG Database](www.ntg.nl/lug). + +If you run lug for the first time, do so in a directory containging the script only; it wil then create all needed files and directories in it. + +Recreate all files: + + $ lug --full + +Apply corrections sent by email: + + $ lug + < paste the email contents to standard input > + ^D + +When people send new data by using the forms of the site, they do so by submitting the form, which causes an email with raw data to be sent to the administrator(s). + +An administrator should verify the password reported in the email and then cd to this directory, or to a copy of it on his own computer, and he should then run: + + $ ./lug + +lug waits for data, which it can be given by cut (from the email) and paste (to standard input). By ending the input with ^D, lug corrects the data in the directory `lugs' + +It is of course also possible to save the contents of the email into a file and then run: + + $ ./lug <file + +The administrator can make small correction to one country by giving the necessary input on the command line. For example, to change the email address of the treasurer of The Netherlands he can run: + + $ ./lug + code=nl + femail=treasurer@ntg.nl + ^D + +Synchronize the website (www.ntg.nl/lug) with the current directory: + + $ ./lug --sync + +Of course, this action makes no sense if you are operating in the web directory itself. + +Or, for testing purposes, synchronize www.ntg.nl/lugtest: + + $ ./lug --sync=lugtest + +or, shorter: + + $ ./lug -slugtest + +Remove everything that can be regenerated: + + $ ./lug --clean + +This stores any changes made in the README.md file, the lugs.rb script, and the images en lugs directories in the script. After this operation only the script will be there, and you can simply restore everything by running it with the --full option. + +Regenerate everything: $ ./lug --full + +.SH Author +Wybo Dekker (wybo@ntg.nl) + +.SH Copyright +Released under the GNU General Public License (www.gnu.org\fIcopyleft\fRgpl.html)
\ No newline at end of file diff --git a/support/lug/lug.html b/support/lug/lug.html new file mode 100644 index 0000000000..e3c8a37100 --- /dev/null +++ b/support/lug/lug.html @@ -0,0 +1,196 @@ +<!DOCTYPE html> +<html Lang="en"> +<head> + <meta name="generator" content="gendoc" /> + <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> + <title>lug documentation</title> + <style media="screen"> + tr { vertical-align:baseline; } + p { margin-top:10px; } + * { padding: 0; margin: 0; } + body { + font-family:Fontin,serif; + font-size:small; + color:#444; + margin-left: 30px; + max-width: 40em; + } + .top { + margin-top:10px; + margin-bottom:5px; + } + .bot { + margin-top:10px; + margin-bottom:0px; + } + h1 { + font-size: 120%; + color:#a00; + text-shadow: rgba(135,145,135,0.65) 3px 3px 4px; + margin-top: 30px; + padding-bottom: 0.4em; + } + h4 { + margin-top:15px; + margin-bottom:0px; + } + :link, + :visited { + color: #aa0000; + text-decoration: none; + } + :link:hover, + :visited:hover { + border-bottom: 1px dotted #6C8C22; + } + ul { list-style-type: circle; } + li { margin-left: 1.5em; } + pre,code { + font-family:monospace; + font-size: medium; + color: #023aaa; + } + td { padding-right: 1em; } + .red { color:#f00; } + .green { color:#0f0; } + .blue { color:#00f; } + .big { + font-size:xx-large; + font-weight:900; + color:#a00; + text-shadow: rgba(135,145,135,0.65) 3px 3px 4px; + padding-right: .4em; + } + .kop { + font-size:large; + font-weight:900; + color:#a00; + text-shadow: rgba(135,145,135,0.65) 3px 3px 4px; + } + .left { + font-size:xx-small; + font-family:sans-serif; + margin-top:0px; + float: left; + width: 53%; + } + .right { + font-size:xx-small; + font-family:sans-serif; + text-align:right; + margin-top:0px; + float: right; + width: 45%; + } + img { vertical-align:top; } + h1.sub { color:#770; margin-top:2px; } + </style> + </head> + <body class="file"> + <div> +<hr class="top"/> +<span class="big">lug</span> +<span class="kop">manage TeX Local User Group web pages</span> +<hr class="bot"/> +<div class="left">doc generated from the script with <a href="http://www.dekkerdocumenten.nl/unix/doc/gendoc.html">gendoc</a></div> +<div class="right">bash script, version=3.00</div><div><br/> +<p> +<h1>Synopsis</h1> +<b><a href="../lug">lug</a></b> [options] [lug-code] <p> +<h4>Options</h4> +<table><tr><td><pre>-h,--help</pre></td><td>print short help and exit</td></tr><tr><td><pre>-H,--Help</pre></td><td>print full documentation via less and exit</td></tr><tr><td><pre>-V,--version</pre></td><td>print version and exit</td></tr><tr><td><pre>-c,--clean</pre></td><td>remove all files that can be re-created</td></tr><tr><td><pre>-f,--full</pre></td><td>re-create all files</td></tr><tr><td><pre>-s,--sync[=STR]</pre></td><td>synchronize the <b><a href="../lug">lug</a></b> page at <code>www.ntg.nl/STR</code></td></tr><tr><td></td><td>with the current directory; the default for <code>STR</code> is <code>lug</code></td></tr></table><p> +<h1>Description</h1> +<b><a href="../lug">lug</a></b> can be used to to (re-)create the web pages of the LUG database. This script must be executed in its own directory. After the script has been executed, this directory will contain the web site for the [Electronic LUG Database](www.ntg.nl/lug). <p> +If you run <b><a href="../lug">lug</a></b> for the first time, do so in a directory containging the script only; it wil then create all needed files and directories in it. <p> +Recreate all files: <p> +<pre> $ lug --full +</pre> +<p> +Apply corrections sent by email: <p> +<pre> $ lug + < paste the email contents to standard input > + ^D +</pre> +<p> +When people send new data by using the forms of the site, they do so by submitting the form, which causes an email with raw data to be sent to the administrator(s). <p> +An administrator should verify the password reported in the email and then cd to this directory, or to a copy of it on his own computer, and he should then run: <p> +<pre> $ ./lug +</pre> +<p> +<b><a href="../lug">lug</a></b> waits for data, which it can be given by cut (from the email) and paste (to standard input). By ending the input with <code>^D</code>, <b><a href="../lug">lug</a></b> corrects the data in the directory `lugs' <p> +It is of course also possible to save the contents of the email into a file and then run: <p> +<pre> $ ./lug <file +</pre> +<p> +The administrator can make small correction to one country by giving the necessary input on the command line. For example, to change the email address of the treasurer of The Netherlands he can run: <p> +<pre> $ ./lug + code=nl + femail=treasurer@ntg.nl + ^D +</pre> +<p> +Synchronize the website (<code>www.ntg.nl/lug</code>) with the current directory: <p> +<pre> $ ./lug --sync +</pre> +<p> +Of course, this action makes no sense if you are operating in the web directory itself. <p> +Or, for testing purposes, synchronize <code>www.ntg.nl/lugtest</code>: <p> +<pre> $ ./lug --sync=lugtest +</pre> +<p> +or, shorter: <p> +<pre> $ ./lug -slugtest +</pre> +<p> +Remove everything that can be regenerated: <p> +<pre> $ ./lug --clean +</pre> +<p> +This stores any changes made in the <code>README.md</code> file, the <code>lugs.rb</code> script, and the <code>images</code> en <code>lugs</code> directories in the script. After this operation only the script will be there, and you can simply restore everything by running it with the <code>--full</code> option. <p> +Regenerate everything: <pre> $ ./lug --full +</pre> +<p> +<h1>Author</h1> +<a href="mailto:wybo@ntg.nl">Wybo Dekker</a> <p> +<h1>Copyright</h1> +Released under the <a href="http://www.gnu.org/copyleft/gpl.html">GNU General Public License</a> <h1>Functions used:</h1><hr/><h1 class="sub">excheck</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>excheck executable1 [executable2...]</pre> +</td></tr><tr><td><pre>description:</pre></td><td>check if all needed execs are there and getopt is GNU</td></tr></table><hr/><h1 class="sub">syncwww</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>syncwww [dir]</pre> +</td></tr><tr><td><pre>description:</pre></td><td>synchronize web page (<code>lug</code> by default) with current dir</td></tr><tr><td><pre>globals user:</pre></td><td><pre>webdir</pre> +</td></tr></table><hr/><h1 class="sub">handle_options</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>handle_options "$@"</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Handle the options</td></tr><tr><td><pre>globals used:</pre></td><td><pre>Myname Version webdir</pre> +</td></tr></table><hr/><h1 class="sub">setkeys</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>country_codea ;-replacement &-replacement</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Set the <code>keys</code> hash to the values taken from the file <code>lugs/$1</code>.</td></tr><tr><td><pre>globals set:</pre></td><td><pre>keys</pre> +</td></tr></table><hr/><h1 class="sub">clean</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>clean</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Remove files created but not needed for the web site or for</td></tr><tr><td></td><td><b><a href="../lug">lug</a></b> functioning.</td></tr></table><hr/><h1 class="sub">Clean</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>Clean</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Remove all files that can be re-created and store them back in lug.</td></tr></table><hr/><h1 class="sub">makeMakefile</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>makeMakefile</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Create the file <code>Makefile</code></td></tr><tr><td><pre>globals used:</pre></td><td><pre>db</pre> +</td></tr></table><hr/><h1 class="sub">makelinks.inc</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>makelinks.inc</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Create the file <code>links.inc</code></td></tr></table><hr/><h1 class="sub">makexx.html</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>makexx country_code</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Create the file <code>lugs/$1</code></td></tr><tr><td><pre>globals set:</pre></td><td>(<i>via</i> setkeys): <code>keys</code></td></tr><tr><td><pre>globals used:</pre></td><td><pre>db keys adminemail</pre> +</td></tr></table><hr/><h1 class="sub">makeindex.html</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>makeindex.html</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Create the file <code>index.html</code></td></tr><tr><td><pre>globals used:</pre></td><td><pre>db fullname adminemail</pre> +</td></tr></table><hr/><h1 class="sub">makelugs.html</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>makelugs.html</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Create the file <code>lugs.html</code></td></tr><tr><td><pre>globals set:</pre></td><td>(<i>via</i> setkeys) <code>keys</code></td></tr><tr><td><pre>globals used:</pre></td><td><pre>db keys fullname</pre> +</td></tr></table><hr/><h1 class="sub">urlit</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>urlit string</pre> +</td></tr><tr><td><pre>description:</pre></td><td>if argument is not empty, print it surrounded with <code>\url{...}</code>,</td></tr></table><hr/><h1 class="sub">stackit</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>stackit string</pre> +</td></tr><tr><td><pre>description:</pre></td><td>if argument is empty, print newline,</td></tr><tr><td></td><td>if not, replace semicolons with double backslashes and print it surrounded with <code>\Longunderstack[l]{...}\strut</code></td></tr></table><hr/><h1 class="sub">makelugs.pdf</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>makelugs.pdf</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Create the files <code>lugs.tex</code> and <code>lugs.pdf</code></td></tr><tr><td><pre>globals set:</pre></td><td>(<i>via</i> setkeys) <code>keys</code></td></tr><tr><td><pre>globals used:</pre></td><td><pre>keys db fullname</pre> +</td></tr></table><hr/><h1 class="sub">makelabels.pdf</h1> +<table><tr><td><pre>synopsis:</pre></td><td><pre>makelabels.pdf</pre> +</td></tr><tr><td><pre>description:</pre></td><td>Create the files <code>labels.tex</code> and <code>labels.pdf</code></td></tr><tr><td><pre>globals set:</pre></td><td>(<i>via</i> setkeys) <code>keys</code></td></tr><tr><td><pre>globals used:</pre></td><td><pre>keys db</pre> +</td></tr></table><hr/><h1 class="sub">fullname (hash)</h1> +Links the country codes to the full name of countries. Also used to test the validity of country codes. </div></div></body></html> diff --git a/support/lug/lug.pdf b/support/lug/lug.pdf Binary files differindex b97bb5d257..b865e9bfb3 100644 --- a/support/lug/lug.pdf +++ b/support/lug/lug.pdf diff --git a/support/lug/lugs.rb b/support/lug/lugs.rb deleted file mode 100755 index 06b4370097..0000000000 --- a/support/lug/lugs.rb +++ /dev/null @@ -1,110 +0,0 @@ -#!/usr/bin/env ruby -# encoding: UTF-8 -require 'cgi' -require 'erb' -require 'open-uri' -require 'date' -require 'resolv' - - -# admins to be informed, one per line: -ADMINS = %w{ - wybo@dekkerdocumenten.nl -} - -RESPONSE = <<EOF -Content-type: text/html - -<%= open(CALLERDIR+"../1blok1e.inc") { |f| f.read } %> -<%= open(CALLERDIR+"../1blok2e.inc") { |f| f.read } %> -<h1>TeX user groups around the world</h1> -<% if errmess.empty? %> - <h2>Thank you for your support of the LUG database</h2> - Your corrections will be sent to <%= ADMINS[0] %> for handling. -<% else %> - <h3>Sorry, you did not correctly enter the required fields:</h3><br> - <font color="red"> - <%= errmess.join("<br>") %> - </font><p> - <form>Please try again by going - <input type="button" value="Back" onClick="history.go(-1);return true;"> - </form> -<% end %> -<hr noshade> -</td></tr></table></td></tr></table> -<%= open(CALLERDIR+"../1blok4e.inc") { |f| f.read } %> <%= DateTime.now %> -</p></div></body></html> -EOF - -MESS = <<EOF -password=<%= q['password'] %> -submitemail=<%= q['submitemail'] %> -addr=<%= q['addr'] %> -bacc=<%= q['bacc'] %> -baddr=<%= q['baddr'] %> -bank=<%= q['bank'] %> -bcode=<%= q['bcode'] %> -brout=<%= q['brout'] %> -code=<%= q['code'] %> -editor=<%= q['editor'] %> -eemail=<%= q['eemail'] %> -email=<%= q['email'] %> -faddr=<%= q['faddr'] %> -femail=<%= q['femail'] %> -ffax=<%= q['ffax'] %> -fname=<%= q['fname'] %> -fphone=<%= q['fphone'] %> -fpos=<%= q['fpos'] %> -full=<%= q['full'] %> -gaddr=<%= q['gaddr'] %> -gemail=<%= q['gemail'] %> -gfax=<%= q['gfax'] %> -gname=<%= q['gname'] %> -gphone=<%= q['gphone'] %> -gpos=<%= q['gpos'] %> -lang=<%= q['lang'] %> -list=<%= q['list'] %> -members=<%= q['members'] %> -paddr=<%= q['paddr'] %> -pemail=<%= q['pemail'] %> -pfax=<%= q['pfax'] %> -pname=<%= q['pname'] %> -pphone=<%= q['pphone'] %> -ppos=<%= q['ppos'] %> -publ=<%= q['publ'] %> -short=<%= q['short'] %> -subscr=<%= q['subscr'] %> -www=<%= q['www'] %> -country=<%= q['country'] %> -EOF - -def validate_email_domain(email) - return false unless email =~ /\@(.*)/ - Resolv::DNS.open do |dns| - @mx = dns.getresources($1, Resolv::DNS::Resource::IN::MX) - end - @mx.size > 0 ? true : false -end - -def mail(message,to,code) - m = open("|/usr/bin/mail -s '===LUG correction for #{code}===' #{to}",'w') - m.puts message - m.close -end - -q = CGI.new - -CALLERDIR=ENV['HTTP_REFERER'].sub(/[^\/]*$/,'') - -errmess = [] -q['password'] == 'kjwb' || - errmess.push("You typed the wrong (or no) password") -validate_email_domain(q['submitemail']) || - errmess.push("You must enter a valid email addres") - -message = ERB.new(RESPONSE).result -print message - -exit unless errmess.empty? -message = ERB.new(MESS).result.gsub(/\r\n/,"\n ").strip -ADMINS.each { |m| mail(message,m,q['code']) } diff --git a/support/lug/lugs/bg b/support/lug/lugs/bg deleted file mode 100644 index e419fadca3..0000000000 --- a/support/lug/lugs/bg +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code bg -short bgTeX -full Bulgarian LaTeX Users Group -lang bg -members 234 -email bulgarian-latex-users-group@googlegroups.com -www groups.google.com/forum/?hl=bg&fromgroups#!forum/bulgarian-latex-users-group -list -subscr -addr Dept. of Applied Mathematics and Statistics;University of Ruse;8 Studentska str.;Ruse,7017;Bulgaria - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos -pname -paddr -pemail -pphone -pfax - -# General matters: -gpos Coordinator -gname Stefka R. Karakoleva -gaddr Dept. of Applied Mathematics and Statistics;University of Ruse;8 Studentska str.;Ruse,7017;Bulgaria -gemail skarakoleva@uni-ruse.bg -gphone +35982888606 -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/br b/support/lug/lugs/br deleted file mode 100644 index 80f1d73770..0000000000 --- a/support/lug/lugs/br +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code br -short latex-br -full Grupo de Usuários latex-br -lang pt -members 386 -email -www groups.google.com/group/latex-br -list latex-br@googlegroups.com -subscr latex-br+subscribe@googlegroups.com -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos Manager -pname Lauro Cesar -paddr -pemail laurocesar@gmail.com -pphone -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/cn b/support/lug/lugs/cn deleted file mode 100644 index e24fb37891..0000000000 --- a/support/lug/lugs/cn +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code cn -short CTeX -full Chinese TeX Society -lang zh -members 20000 -email info@ctex.org -www www.ctex.org -list -subscr -addr No. 55, Zhongguancun East Road;Haidian;Beijing 100080;China - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Lingyun Wu -paddr No. 55, Zhongguancun East Road;Haidian;Beijing 100080;China -pemail lywu@amt.ac.cn -pphone +861062651362 -pfax - -# General matters: -gpos Vice President -gname Helin Gai -gaddr Few HH025, Duke University;Box 96332;Durham, NC 27708;USA -gemail hg9@duke.edu -gphone +19199436302 -gfax - -# Finance matters: -fpos Vice President -fname Zhichu Chen -faddr Shanghai Institute of Applied Physics;Chinese Academy;No. 2019, Jialuo Road;Jiading;Shanghai, 200000;China -femail zhichu.chen@gmail.com -fphone +862159553405 -ffax diff --git a/support/lug/lugs/cz b/support/lug/lugs/cz deleted file mode 100644 index d7f1257a4e..0000000000 --- a/support/lug/lugs/cz +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code cz -short CSTUG -full Československé sdružení uživatelů TeXu -lang cs -members 300 -email cstug@cstug.cz -www www.cstug.cz -list cstex@cs.felk.cvut.cz -subscr -addr CSTUG c/o FEL ČVUT;Technická 2;166 27 Praha;Czech Republic - -# Periodical: -publ Zpravodaj CSTUGu -editor Zdeněk Wagner -eemail bulletin@cstug.cz - -# Banking: -bank Fio banka, a.s. -bacc 2700058974 / 2010 -bcode FIOBCZPPXXX -brout CZ5620100000002700058974 -baddr V Celnici 1028/10;114 07 Praha 1;Czech Republic - -# Policy matters: -ppos President -pname Petr Sojka -paddr Masaryk University;Faculty of Informatics;Botanicka 68a;602 00 Brno;Czech Republic -pemail president@cstug.cz -pphone +420 549 496 966 -pfax +420 549 491 820 - -# General matters: -gpos Secretary -gname Dana Čurdová -gaddr K Babě 19;621 00 Brno;Czech Republic -gemail secretary@cstug.cz -gphone +420 775 165 299 -gfax - -# Finance matters: -fpos Treasurer -fname Dana Čurdová -faddr K Babě 19;621 00 Brno;Czech Republic -femail treasurer@cstug.cz -fphone +420 775 165 299 -ffax diff --git a/support/lug/lugs/de b/support/lug/lugs/de deleted file mode 100644 index 631d6eb743..0000000000 --- a/support/lug/lugs/de +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code de -short DANTE e.V. -full Deutschsprachige Anwendervereinigung TeX e.V. -lang de -members 2150 -email dante@dante.de -www www.dante.de -list dante-ev@dante.de -subscr https://lists.dante.de/mailman/listinfo/dante-ev -addr Bergheimer Straße 110a;69115 Heidelberg - -# Periodical: -publ Die TeXnische Komödie -editor Herbert Voß -eemail dtk-redaktion@dante.de - -# Banking: -bank VR Bank Rhein-Neckar e.G -bacc 23 100 07 -bcode GENODE61MA2 -brout -baddr - -# Policy matters: -ppos President -pname Martin Sievers -paddr Postfach 101840;D-69008 Heidelberg;Germany -pemail vorstand@dante.de -pphone +49622129766 -pfax +496221167906 - -# General matters: -gpos Secretary -gname Manfred Lotz -gaddr -gemail secretary@dante.de -gphone -gfax - -# Finance matters: -fpos Treasurer -fname Klaus Höppner -faddr -femail treasurer@dante.de -fphone -ffax diff --git a/support/lug/lugs/dk b/support/lug/lugs/dk deleted file mode 100644 index 9f38c897e0..0000000000 --- a/support/lug/lugs/dk +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code dk -short DK-TUG -full Danish TeX Users Group -lang da -members 96 -email board@tug.dk -www www.tug.dk -list dk-tug@tug.dk -subscr dk-tug-subscribe@tug.dk -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Lars Madsen -paddr Department of Mathematical Sciences;Ny Munkegade 118, Bdg. 1530;DK-8000 Aarhus C;Denmark -pemail president@tug.dk -pphone +45893170 -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos Treasurer -fname Rasmus Villemoes -faddr Department of Mathematical Sciences;Ny Munkegade 118, Bdg. 1530;DK-8000 Aarhus C;Denmark -femail treasurer@tug.dk -fphone -ffax diff --git a/support/lug/lugs/ee b/support/lug/lugs/ee deleted file mode 100644 index 20b11e4cfc..0000000000 --- a/support/lug/lugs/ee +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code ee -short -full Estonian User Group -lang et -members -email -www -list -subscr -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname -paddr Astrophysical Observatory, Toravere;Enn Saar, Tartu;EE 2444 Estonia -pemail saar@aai.ee -pphone -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/es b/support/lug/lugs/es deleted file mode 100644 index 8f80f9dfc9..0000000000 --- a/support/lug/lugs/es +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code es -short CervanTeX -full Grupo de Usuarios de TeX Hispanohablantes -lang es -members 45 -email secretario@cervantex.es -www www.cervantex.es -list es-tex@listserv.rediris.es -subscr www.cervantex.es/listas.php -addr - -# Periodical: -publ TeXemplares -editor Enrique Meléndez -eemail texemplares@cervantex.es - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos Presidente -pname Juan L. Varona -paddr University of La Rioja;26004 Logroño;Spain -pemail presidente@cervantex.es -pphone -pfax - -# General matters: -gpos Secretario -gname Luis Seidel -gaddr -gemail secretario@cervantex.es -gphone -gfax - -# Finance matters: -fpos Tesorero -fname Enrique Meléndez -faddr -femail tesorero@cervantex.es -fphone -ffax diff --git a/support/lug/lugs/esc b/support/lug/lugs/esc deleted file mode 100644 index 9ab205e302..0000000000 --- a/support/lug/lugs/esc +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code esc -short Tirant lo TeX -full Catalan TeX Users Group -lang ca -members -email -www www.lsi.upc.edu/~valiente/tug-catalan.html -list catala-tex@ldist.upc.edu -subscr -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Gabriel Valiente -paddr Technical University of Catalonia;Jordi Girona, 1-3;E-08034 Barcelona;Spain -pemail valiente@lsi.upc.edu -pphone -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/fr b/support/lug/lugs/fr deleted file mode 100644 index 81945a7965..0000000000 --- a/support/lug/lugs/fr +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code fr -short GUTenberg -full Groupe francophone des utilisateurs de TeX -lang fr -members 400 -email secretariat@gutenberg.eu.org -www www.gutenberg.eu.org -list gut@ens.fr -subscr gut-request@ens.fr -addr Association GUTenberg;Cellule MathDoc;BP 74;F-38402 Saint-Martin-d’Hères;FRANCE - -# Periodical: -publ Cahiers GUTenberg, Lettre GUTenberg -editor Thierry Bouche -eemail secretariat@gutenberg.eu.org - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Jérémy Just -paddr -pemail president@gutenberg.eu.org -pphone -pfax - -# General matters: -gpos Secretary -gname Philippe Michel -gaddr Association GUTenberg;Cellule MathDoc;BP 74;F-38402 Saint-Martin-d’Hères;FRANCE -gemail secretariat@gutenberg.eu.org -gphone -gfax - -# Finance matters: -fpos Treasurer -fname Maxime Chupin -faddr -femail tresorier@gutenberg.eu.org -fphone -ffax diff --git a/support/lug/lugs/gb b/support/lug/lugs/gb deleted file mode 100644 index ae0eb87b60..0000000000 --- a/support/lug/lugs/gb +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code gb -short UK-TUG -full UK TeX Users Group -lang en-GB -members 100 -email committee@uk.tug.org -www uk.tug.org -list uktug-announce@tug.org -subscr uk.tug.org/membership/ -addr 2 Dowthorpe End;Earls Barton;Northampton;NN6 0NH - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos Chairman -pname Kaveh Barzagan -paddr -pemail chairman@uk.tug.org -pphone -pfax - -# General matters: -gpos Secretary -gname Joseph Wright -gaddr UK-TUG Secretary;2 Dowthorpe End;Earls Barton;Northampton;NN6 0NH -gemail secretary@uk.tug.org -gphone -gfax - -# Finance matters: -fpos Treasurer -fname John Peters -faddr -femail treasurer@uk.tug.org -fphone -ffax diff --git a/support/lug/lugs/hu b/support/lug/lugs/hu deleted file mode 100644 index 199fdb6360..0000000000 --- a/support/lug/lugs/hu +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code hu -short MaTeX -full Magyar TeX Egyesület -lang hu -members 15 -email matex@math.klte.hu -www www.matexhu.org -list tex-l@tigris.klte.hu -subscr www.math.klte.hu/~matex/LevLista.html -addr Inst of Mathematics and Informatics;University of Debrecen;H-4010 Debrecen;P.O. Box 12;Hungary - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Ferenc Wettl -paddr Department of Algebra;Institute of Mathematics;Budapest University of Technology and Economics;Budapest, Műegyetem rakpart 1--3, H. ép. V. 5.;Hungary -pemail wettl@math.bme.hu -pphone -pfax - -# General matters: -gpos Secretary -gname Gyöngyi Bujdosó -gaddr Faculty of Computer Science;University of Debrecen;H-4010 Debrecen;P.O. Box 12;Hungary -gemail bujdoso@inf.unideb.hu -gphone +36304280403 -gfax +3652416857 - -# Finance matters: -fpos Board member -fname Tamás Mihálydeák -faddr Faculty of Computer Science;University of Debrecen;H-4010 Debrecen;P.O. Box 12;Hungary -femail mihalydeak@inf.unideb.hu -fphone -ffax diff --git a/support/lug/lugs/ie b/support/lug/lugs/ie deleted file mode 100644 index b044436212..0000000000 --- a/support/lug/lugs/ie +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code ie -short ITALIC -full Irish TeX and LaTeX In-print Community -lang en-GB en-IE -members -email italic-l-request@listserv.heanet.ie -www -list ITALIC-L@listserv.heanet.ie -subscr listserv.heanet.ie/italic-l.html -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos -pname -paddr -pemail -pphone -pfax - -# General matters: -gpos -gname Peter Flynn -gaddr Computer Centre;University College;Cork;Ireland -gemail peter@silmaril.ie -gphone +353 21 490 2609 -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/is b/support/lug/lugs/is deleted file mode 100644 index ede9b8e7e8..0000000000 --- a/support/lug/lugs/is +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code is -short ÍsTeX -full Vefur íslenskra TeX notenda -lang is -members 90 -email -www istex.hafro.is -list -subscr -addr - -# Periodical: -publ SamanTeXt -editor Árni Magnússon -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos -pname Árni Magnússon -paddr Öldugötu 28;101 Reykjavík;Iceland -pemail arnima@hafro.is -pphone -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/it b/support/lug/lugs/it deleted file mode 100644 index 817673a8dc..0000000000 --- a/support/lug/lugs/it +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code it -short GuIT -full Gruppo Utilizzatori Italiani di TeX -lang it -members 111 -email guit@sssup.it -www www.guit.sssup.it -list -subscr -addr c/o Ufficio Statistica;Sant'Anna School of Advanced Studies;Piazza Martiri della Libertà, 33;56127 Pisa;Italy - -# Periodical: -publ Ars TeXnica -editor Gianluca Pignalberi -eemail arstexnica@sssup.it - -# Banking: -bank Banco Posta -bacc 74922279 -bcode -brout -baddr - -# Policy matters: -ppos President -pname Massimiliano Dominici -paddr -pemail mlgdominici@interfree.it -pphone +39 050 44538 -pfax - -# General matters: -gpos Vice-president -gname Lapo Filippo Mori -gaddr -gemail lapo.mori@gmail.com -gphone -gfax - -# Finance matters: -fpos -fname Maurizio Himmelmann -faddr -femail guit@sssup.it -fphone -ffax diff --git a/support/lug/lugs/kr b/support/lug/lugs/kr deleted file mode 100644 index 770674ad59..0000000000 --- a/support/lug/lugs/kr +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code kr -short KTS or KTUG -full Korean TeX Society -lang ko -members 200 -email info@mail.ktug.or.kr -www www.ktug.org/xe -list -subscr -addr Department of Law;Dongguk University;26, 3-ga, Pil-dong;Chung-gu;Seoul 100-715;Republic of Korea - -# Periodical: -publ The Asian Journal of TeX -editor Jin-Hwan Cho -eemail chofchof@ktug.or.kr - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos president -pname In-Sung Cho -paddr Dept. of Economics;Kongju National University;182 Shinkwan Dong;Gongju 314-701;Korea -pemail ischo@ktug.or.kr -pphone +82-41-850-8439 -pfax +82-41-850-8440 - -# General matters: -gpos vice-president -gname Kangsoo Kim -gaddr -gemail karnes@ktug.or.kr -gphone -gfax - -# Finance matters: -fpos treasurer -fname Dohyun Kim -faddr Department of Law;Dongguk University;26, 3-ga, Pil-dong;Chung-gu;Seoul 100-715;Republic of Korea -femail nomos@ktug.or.kr -fphone +82-2-2260-3257 -ffax diff --git a/support/lug/lugs/lt b/support/lug/lugs/lt deleted file mode 100644 index 7898a45ce8..0000000000 --- a/support/lug/lugs/lt +++ /dev/null @@ -1,47 +0,0 @@ - General: -code lt -short -full Lietuvos TeX'o Vartotojų Grupė -lang lt -members 8 -email -www www.vtex.lt/tex/ -list -subscr -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Vytas Statulevičius -paddr Akademijos 4;LT-2600 Vilnius;Lithuania -pemail vytass@ktl.mii.lt -pphone +3702359609 -pfax +3702359804 - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/mx b/support/lug/lugs/mx deleted file mode 100644 index 9f888e8b89..0000000000 --- a/support/lug/lugs/mx +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code mx -short -full TeX México -lang es -members -email tex@linuxopensource.mx -www -list -subscr -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos Coordinator -pname Cuauhtémoc Pacheco Díaz -paddr Privada Junta de Zitacuaro No. 20;Col. Isaac Arriaga;58210 Morelia, Michoacan;Mexico -pemail temo@ibiblio.org -pphone +524431323263 -pfax +52143173945 - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/nl b/support/lug/lugs/nl deleted file mode 100644 index 21f5fe7407..0000000000 --- a/support/lug/lugs/nl +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code nl -short NTG -full Nederlandstalige TeX Gebruikersgroep -lang nl -members 195 -email info@ntg.nl -www www.ntg.nl -list tex-nl@ntg.nl -subscr www.ntg.nl/mailman/listinfo/tex-nl -addr - -# Periodical: -publ MAPS -editor Michael Guravage -eemail maps@ntg.nl - -# Banking: -bank ING -bacc 1306238 -bcode INGBNL2A -brout NL53INGB0001306238 -baddr - -# Policy matters: -ppos President -pname Hans Hagen -paddr Pragma;Ridderstraat 27;8061 GH Hasselt;The Netherlands -pemail ntg-president@ntg.nl -pphone +31384775369 -pfax - -# General matters: -gpos Secretary -gname Sietse Brouwer -gaddr Korte Langestraat 2;2312 SK Leiden;The Netherlands -gemail ntg-secretary@ntg.nl -gphone +31613456848 -gfax - -# Finance matters: -fpos Treasurer -fname Ferdy Hanssen -faddr Helmondstraat 212;6843 SL Arnhem;The Netherlands -femail treasurer@ntg.nl -fphone +31263890579 -ffax diff --git a/support/lug/lugs/no b/support/lug/lugs/no deleted file mode 100644 index 3691ff9c0b..0000000000 --- a/support/lug/lugs/no +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code no -short -full Nordic TeX Users Group -lang da et fi fo is nb nn sv -members 78 -email -www heim.ifi.uio.no/~dag/ntug/ -list nordictex@ifi.uio.no -subscr -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Dag Langmyhr -paddr University of Oslo;PO Box 1080 Blindern;N-0316 Oslo;Norway -pemail dag@ifi.uio.no -pphone +4722852450 -pfax +4722852401 - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/pl b/support/lug/lugs/pl deleted file mode 100644 index fb21763b04..0000000000 --- a/support/lug/lugs/pl +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code pl -short GUST -full Polska Grupa Użytkowników Systemu TeX -lang pl -members 276 -email sekretariat@gust.org.pl -www www.GUST.org.pl -list gust-l@man.torun.pl -subscr -addr Pl. Rapackiego 1;PL-87-100 Toruń;Poland - -# Periodical: -publ Biuletyn GUST -editor Tomasz Przechlewski -eemail ekotp@univ.gda.pl - -# Banking: -bank BIG Bank Gdański SA, Oddział Millenium, Toruń -bacc 80 11602202 0000 0000 5530 4981 -bcode -brout -baddr - -# Policy matters: -ppos President -pname Jerzy Ludwichowski -paddr Information & Communication Technology Centre;Nicolaus Copernicus University;Pl. Rapackiego 1;PL-87-100 Toruń;Poland -pemail prezes@gust.org.pl -pphone +48 56 6112742 -pfax +48 56 6221850 - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos Treasurer -fname Jolanta Szelatyńska -faddr Information & Communication Technology Centre;Nicolaus Copernicus University;Pl. Rapackiego 1;PL-87-100 Toruń;Poland -femail secretary@gust.org.pl -fphone +48 56 6112741 -ffax +48 56 6221850 diff --git a/support/lug/lugs/pt b/support/lug/lugs/pt deleted file mode 100644 index e47f40dfcc..0000000000 --- a/support/lug/lugs/pt +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code pt -short GUTpt -full Grupo de Utilizadores de TeX -lang pt -members -email -www gentzen.mat.uc.pt/~gutpt/ -list gutpt@gentzen.mat.uc.pt -subscr -addr - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Pedro Quaresma de Almeida -paddr Coimbra Univ., Dep. Matemática;Largo D. Dinis;Apartado 3008;3001-454 COIMBRA;Portugal -pemail pedro@mat.uc.pt -pphone +351239791181 -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/us b/support/lug/lugs/us deleted file mode 100644 index 52c3a50ed4..0000000000 --- a/support/lug/lugs/us +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code us -short TUG -full TeX Users Group -lang -members 1400 -email office@tug.org -www www.tug.org -list texhax@tug.org -subscr -addr - -# Periodical: -publ TUGboat -editor Barbara Beeton -eemail TUGboat@tug.org - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Kaveh Bazargan -paddr P.O. Box 2311;Portland, OR 97208;USA -pemail president@tug.org -pphone +15032239994 -pfax +18153013568 - -# General matters: -gpos Secretary -gname Sue DeMeritt -gaddr -gemail secretary@tug.org -gphone -gfax - -# Finance matters: -fpos Treasurer -fname Klaus Hoeppner -faddr -femail treasurer@tug.org -fphone -ffax diff --git a/support/lug/lugs/vn b/support/lug/lugs/vn deleted file mode 100644 index fdede23266..0000000000 --- a/support/lug/lugs/vn +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code vn -short VietTUG -full Vietnamese TeX Users Group -lang vi -members 450 -email viettug@gmail.com -www viettug.org -list -subscr -addr 102 Hùng Vương Street;Tam Kỳ City;Quảng Nam Province;Việt Nam - -# Periodical: -publ -editor -eemail - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos manager -pname Huỳnh Kỳ Anh -paddr Dept of Maths and Informatics;University of Quảng Nam;102 Hùng Vương Street;Tam Kỳ City;Quảng Nam Province;Việt Nam -pemail xkyanh@gmail.com -pphone 840979460150 -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/support/lug/lugs/za b/support/lug/lugs/za deleted file mode 100644 index d7dfe1bb0a..0000000000 --- a/support/lug/lugs/za +++ /dev/null @@ -1,47 +0,0 @@ -# General: -code za -short LUGSA -full LaTeX User Group - South Africa -lang en -members -email -www -list latex@mailman.compudoc.co.za -subscr mailman.compudoc.co.za/mailman/listinfo/latex -addr - -# Periodical: -publ LaTeX2e presentation -editor Stefan Scriba -eemail scribas@gmail.com - -# Banking: -bank -bacc -bcode -brout -baddr - -# Policy matters: -ppos President -pname Stefan Scriba -paddr 257 Loveday St;Muckleneuk;Pretoria 0002;South Africa -pemail scribas@gmail.com -pphone +27727061494 -pfax - -# General matters: -gpos -gname -gaddr -gemail -gphone -gfax - -# Finance matters: -fpos -fname -faddr -femail -fphone -ffax diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini index 11aa21bf5c..d610c11898 100644 --- a/systems/win32/miktex/tm/packages/next/pr.ini +++ b/systems/win32/miktex/tm/packages/next/pr.ini @@ -1,13 +1,13 @@ [repository]
-date=1648412278
+date=1648498725
lastupd=miktex-arctrl-bin-2.9 miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-2.9 miktex-chktex-bin-x64-2.9
-lstdigest=360f852029301e5e08eaae9b75d7ff5b
+lstdigest=fc346558abeb527371fa784b8f9a8a73
numpkg=5465
relstate=next
-version=8121
+version=8122
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: krycG7kk0BMZAQYeuM9+/untzWB0Vxe69UjmkgWwOGNTAL1kiEhIZq36YRbbg64xmy9zCJ+ut0PQg7o17Hko4WNbw0j5TEPG8UyfJDgRwwzYHXJ2fQgv6CwXNoAcKfps6ZcG/yyTuTYze1vtOiRs79PytaZ1SCkoPXt1IhmV3yE3QepLkGF9BElfD/d4Nlas5Wq0B/V71dzQb/N8GLxciHMDl/CGUuBQk5IlqIOaZNsTn9LSk0AAQnsVQ/0Tla2SZHfKQwwZIWf+fYFp6TJG8P0QHqJOLow7yBOVt0VM65rJO61sBwXTFA1tbXHJMmBBkSsrihh/WsUSYtPsgBUYow==
+;;;; signature/miktex: QuMDHff5wGuWAlQQbTZ/L4Ya8hpwaDlfTYls/umuEzpKgdQ8SBS7QkOFZkNCsyga8JigSRJDGfGXI+4Pj6ATL9D9wIXTGsTE5cpWg9DgKuWFBgncsq3tB9Zl9dFb5wJfPxl7yRiagIU9FP+3Ad+JvfV4WHqLUO5Tdsic2pU6Y2O6Nd0QAE1KX+XzlZTLSsHS+OoB10HGS+EzevbhlFhBS/Hyq3qNStUPMRHOMx1XmqNIYAcgEFoZu3jgA4pSUZ/zd1yE2Bl69nqDjGDTBvQ8NzlF0DdIRCHZDFYKgyflL6RG9VfwW4FqGZacwbhVuQHdxNt62kQ9pX7rBexwvN6cHw==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini index c7f6292740..66c86cf12c 100644 --- a/systems/win32/miktex/tm/packages/pr.ini +++ b/systems/win32/miktex/tm/packages/pr.ini @@ -1,13 +1,13 @@ [repository]
-date=1648411868
+date=1648498320
lastupd=altsubsup altsubsup__doc altsubsup__source asmeconf asmeconf__doc asmeconf__source babel-polish babel-polish__doc babel-polish__source biblatex-gb7714-2015 biblatex-gb7714-2015__doc biblatex-gb7714-2015__source bxorigcapt bxorigcapt__doc chemmacros chemmacros__doc chemmacros__source dehyph-exptl dehyph-exptl__doc dehyph-exptl__source
-lstdigest=3b25d1dec293b0adbac8f53e6bb2ad84
+lstdigest=95df26a46ac569de5d0616901292004b
numpkg=5465
relstate=stable
-version=8121
+version=8122
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: KBPlYR9Mp8dExO9lnN0cW9wewwl6CU9b5xGr/7VKDg/TBl5LhUzjB3SUAnJO3ULbjEEGaJihRSEFY5PEqiixLUyUj5EcT07HpfqpJHSDOj6EfGEADkcfUNby3Kux2bb2K0LVFP/UbrRABGkSYSG0YyjU+PdFog2YS/Td/0L7zSfoPJNkQxxMFLge4XWOojWRjNYM8cz6xVBALlX7PwKqCNWIi3ODLCd0t64I5euSKnN/UAlXzQwxevbkqxj45OjsbECI+Fu7J8YQ5kQEpbKwybyAZu0C3UYy/3m55nOx2OVsLZOt0IUBTS4w0NU44RRWJWBBoESiq8FLxN4tk358kw==
+;;;; signature/miktex: d9q4xTJ5fhiQXxUQn40KjHJLcZp07JRZ68SbJtNcyckqyojpwheI+62FaBVrzv8/90L/21ghRaZY/ytDQgoC6euAkcPNFTe5/A+BfnimaNVpv9Mb0i7iZ2g/sw4ldcZcWSwC5B9yLuMphpwG/KAIM2n01NPAg4duD6VJ/WoLoeBKfezmeSAyf2YoCXPeztOMl/Ddw/ClsGuW2/sJ0mwrGc2/cZv51JSD1YfSTSH8TX9cLDkTlVKR7nCAK4FdiXr5NfkBVE2OZDhS3YlPsiqRhPbmnPqIo3ERMGXjd53DfKoPxlQN7FFwjAmvoFlPMox5B8z5z39B08iCdTmDDF7yBg==
;;;;-----END MIKTEX SIGNATURE-----
@@ -2,4 +2,4 @@ # The source CTAN of this site's material: dante.ctan.org # The year-month-day-hour-minute of this site's material: -2022-03-28-02-02 +2022-03-29-02-02 |